:root{--md-sys-color-primary:#de9843;--md-sys-color-on-primary:#000000;--md-sys-color-secondary:#de9843;--md-sys-color-on-secondary:#000000;--md-sys-color-primary-container:#f7f4e5;--md-sys-color-on-primary-container:#163525;--md-sys-color-secondary-container:#de9843;--md-sys-color-on-secondary-container:#000000;--md-sys-color-surface:#d3d4b5;--md-sys-color-on-surface:#163525;--md-sys-color-surface-variant:#f7f4e5;--md-sys-color-on-surface-variant:#444746;--md-sys-color-surface-container-lowest:#fffef6;--md-sys-color-surface-container-high:#f7f4e5;--md-sys-color-surface-container:#f8f2eb;--md-sys-color-surface-container-low:#e3ded9;--md-sys-color-outline:#c7883c;--md-sys-color-overlay:rgb(23 29 26 / 74%);--md-sys-color-error:#b00020;--md-ref-typeface-brand:"Google Sans", sans-serif;--md-ref-typeface-plain:"Google Sans Text", sans-serif;--md-ref-typeface-accent:"Playfair Display", serif;--md-filled-tonal-button-container-color:var(--md-sys-color-secondary-container)}:root{--micro-heading-font:var(--md-ref-typeface-brand);--micro-body-font:var(--md-ref-typeface-plain);--micro-accent-font:var(--md-ref-typeface-accent);--micro-font-color:#000;--micro-font-color-light:#fff;--micro-font-color-toned:#707070;--micro-inverse-color:#000;--micro-heading-color:#000;--micro-nav-background-color:var(--micro-background-light);--micro-nav-font-color:var(--micro-font-color);--micro-footer-background-color:var(--sl-color-primary-950);--micro-footer-font-color:var(--micro-font-color-light);--micro-background-light:#fff;--micro-background-dark:#000;--micro-panel-color:#fcfcfc;--micro-font-size-xsmall:0.8rem;--micro-font-size-small:1rem;--micro-font-size-medium:1.5rem;--micro-font-size-larger:2.25rem;--micro-font-size-xlarge:4.5rem;--micro-padding-small:0.5rem;--micro-padding-medium:1rem;--micro-padding-medium-large:1.5rem;--micro-padding-large:2rem;--micro-padding-xlarge:2.5rem;--micro-text-max-width:36rem;--micro-gutter-size:0.75rem;--micro-hero-min-height:480px;--micro-navbar-height:72px;--micro-navbar-padding:var(--micro-padding-medium);--micro-panel-opacity:0.8;--micro-transition-duration:0.3s;--micro-transition-timing:ease-in-out;--micro-box-shadow:0 2px 4px rgba(0, 0, 0, 0.1);--micro-box-shadow-hover:0 4px 8px rgba(0, 0, 0, 0.2);--micro-border-radius:0.25rem}body{margin:0;padding:0;font-family:var(--micro-body-font);color:var(--md-sys-color-on-surface);background-color:var(--md-sys-color-surface)}a{color:var(--md-sys-color-primary);text-decoration:none}a:hover{text-decoration:underline}.accent{font-family:var(--micro-accent-font);font-style:italic;font-weight:500}.page-section{padding-block:3.5rem}body{display:grid;grid-template-columns:[fullbleed-start] minmax(var(--micro-gutter-size),auto) [main-start] calc(min(80rem,90%)) [main-end] minmax(var(--micro-gutter-size),auto) [fullbleed-end];align-content:start;min-height:100dvh}body>main{display:grid;grid-template-columns:subgrid;grid-row:main;grid-column:fullbleed}body>main .page>*{grid-column:main}section.page-section{display:grid;grid-template-columns:subgrid}section.page-section>.page-section-content{grid-column:main}.page{display:contents}.fullbleed{grid-column:fullbleed!important}*,::after,::before,::backdrop,::file-selector-button{box-sizing:border-box}ul{margin:0;padding:0;list-style:none}h1,h2,h3,h4,h5,h6{margin:0;padding:0;font-weight:400}.hero-container{position:relative;min-height:var(--micro-hero-min-height);overflow:hidden;display:grid;.hero-image{position:absolute;inset:0;margin:0;img{width:100%;height:100%;object-fit:cover}}.hero-citation{position:absolute;bottom:0;right:0;padding:var(--micro-padding-small).75rem;border-top-left-radius:var(--micro-border-radius);color:var(--micro-font-color-light);background-color:var(--micro-background-dark);font-size:var(--micro-font-size-xsmall);z-index:2;cite{font-style:normal}}.hero-overlay{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:5rem var(--micro-padding-medium-large)var(--micro-padding-xlarge);text-align:center;background-color:var(--md-sys-color-overlay)}.hero-title{color:var(--md-sys-color-primary)}.hero-tagline{margin:var(--micro-padding-medium-large)0 0;max-width:var(--micro-text-max-width);color:var(--md-sys-color-surface)}.hero-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--micro-padding-medium);margin-top:var(--micro-padding-xlarge);--md-outlined-button-container-height:48px;--md-outlined-button-outline-color:var(--md-sys-color-outline);--md-outlined-button-label-text-color:var(--md-sys-color-primary);--md-outlined-button-hover-label-text-color:var(--md-sys-color-primary);--md-outlined-button-focus-label-text-color:var(--md-sys-color-primary);--md-outlined-button-pressed-label-text-color:var(--md-sys-color-primary);--md-filled-tonal-button-container-height:48px}.hero-stats{display:flex;flex-wrap:wrap;justify-content:center;column-gap:5rem;row-gap:var(--micro-padding-medium);margin:var(--micro-padding-xlarge)0 0;color:var(--md-sys-color-surface-container-high)}.hero-stat{display:flex;flex-direction:column-reverse;dd{margin:0;font-size:var(--micro-font-size-larger);line-height:4rem}}}.section-heading{margin-inline:auto;max-width:var(--micro-text-max-width);text-align:center}.section-lead{margin:var(--micro-padding-medium-large)auto 0;max-width:var(--micro-text-max-width);text-align:center}.how-it-works-section{background-color:var(--md-sys-color-surface-container-high);.steps{--step-width:11.25rem;--step-icon-size:20px;display:grid;grid-template-columns:repeat(3,var(--step-width));justify-content:center;margin-top:var(--micro-padding-large);@media(max-width:36em){grid-template-columns: repeat(3,1fr);}li{position:relative;display:flex;flex-direction:column;align-items:center;gap:var(--micro-padding-medium);text-align:center;&:not(:last-child)::after{content:"";position:absolute;top:calc((var(--step-icon-size) - 3px)/2);left:calc(50% + var(--step-icon-size));width:calc(100% - 2 * var(--step-icon-size));border-top:3px dashed rgb(from var(--md-sys-color-outline) r g b/16%)}}md-icon{--md-icon-size:var(--step-icon-size);color:var(--md-sys-color-outline)}}}.map-intro{scroll-margin-top:var(--micro-padding-large);.map-frame{max-width:60rem;margin:var(--micro-padding-large)auto 0;padding:var(--micro-padding-medium);border-radius:16px;background-color:var(--md-sys-color-surface-container-high);@media(max-width:36em){max-width: none; width: 100vw; margin-inline: calc(50% - 50vw); padding: 0; border-radius: 0;}}.map{--map-min-height:min(40rem, 65vw);--map-min-height-mobile:min(20rem, 80vw)}.map-onboarding-callout{display:none}.map-leader-line{stroke:var(--md-sys-color-surface);stroke-width:2;stroke-dasharray:8 8}.map-callout{width:14rem;padding:var(--micro-padding-medium);color:var(--micro-font-color);border:1px solid var(--md-sys-color-surface);border-radius:12px;background:var(--md-sys-color-surface-container-lowest);box-shadow:none;@media(max-width:48em){&:not(.map-onboarding-callout){width:14rem}}}.map-callout-close{top:1.25rem;right:1.125rem;display:grid;place-items:center;width:1.5rem;height:1.5rem;color:var(--micro-font-color-light);border-radius:50%;background:var(--md-sys-color-overlay);font-size:var(--micro-font-size-small)}.site-callout-title{margin-top:var(--micro-padding-small);font-weight:700;a{color:inherit}}.site-callout-image{display:block;width:100%;height:127px;object-fit:cover}.site-callout-location{display:flex;align-items:center;gap:.125rem;margin:0;md-icon{--md-icon-size:18px;color:var(--md-sys-color-on-surface-variant)}}.site-callout-spectrogram{--min-height:1.5rem;display:block;width:100%;height:1.5rem;margin-top:.375rem;mix-blend-mode:hard-light;&::part(canvas){width:100%;height:100%}}.site-callout-player{display:flex;align-items:center;justify-content:space-between;margin-top:var(--micro-padding-medium);oe-media-controls{--oe-background-color:transparent;--oe-box-shadow:none}}.site-callout-action{display:inline-flex;vertical-align:top;align-items:center;gap:var(--micro-padding-small);color:var(--micro-font-color)}}.showcase{scroll-margin-top:var(--micro-padding-large);.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,17.5rem),17.5rem));justify-content:center;gap:1.75rem;max-width:56rem;margin:2.125rem auto 0}.project-card{display:flex;flex-direction:column;min-height:420px;padding:1.25rem var(--micro-padding-medium)var(--micro-padding-xlarge);border-radius:16px;background-color:var(--md-sys-color-surface-container);h3{margin-top:var(--micro-padding-medium);font-weight:700}p{margin:var(--micro-padding-small)0 0;a{color:inherit;font-weight:700;text-decoration:underline}}}.project-card-media{display:block;height:170px;overflow:hidden;img{width:100%;height:100%;object-fit:cover}}.project-card-add{display:grid;place-items:center;color:var(--md-sys-color-on-surface);background-color:var(--md-sys-color-surface-container-low)}.project-card-action{align-self:flex-end;margin-top:auto;--md-filled-tonal-button-container-height:36px;--md-filled-tonal-button-leading-space:12px;--md-filled-tonal-button-trailing-space:12px}}.site-footer{background-color:var(--md-sys-color-surface-container-high)}.contact-home{position:absolute;top:var(--micro-padding-large);left:clamp(var(--micro-padding-medium),4vw,3rem);padding:var(--micro-padding-small)var(--micro-padding-medium);color:var(--micro-font-color-light);background:color-mix(in srgb,var(--micro-background-dark) 45%,transparent);border-radius:999px;font-weight:500;backdrop-filter:blur(4px);z-index:3;&:hover{background:color-mix(in srgb,var(--micro-background-dark) 65%,transparent);text-decoration:none}}.contact-content{min-height:calc(100dvh - var(--micro-hero-min-height));padding-block:clamp(3rem,7vw,6rem);color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface)}.contact-layout{display:grid;width:min(72rem,90%);margin:0 auto;grid-template-columns:4fr 6fr;gap:clamp(var(--micro-padding-large),8vw,7rem);align-items:start}.contact-intro{padding-top:var(--micro-padding-medium);& h2{margin-bottom:var(--micro-padding-large);line-height:1.2}& > p:last-child{max-width:54rem;font-size:var(--md-sys-typescale-body-medium-size);line-height:var(--md-sys-typescale-body-medium-line-height)}}.section-label{margin-bottom:var(--micro-padding-medium);color:var(--md-sys-color-primary);font-size:var(--micro-font-size-xsmall);font-weight:700;letter-spacing:.12em;text-transform:uppercase}.contact-form{padding:clamp(var(--micro-padding-medium-large),4vw,3rem);background:var(--md-sys-color-surface-container);border:1px solid var(--md-sys-color-outline);border-radius:12px;& .form-field{margin-bottom:var(--micro-padding-large);& label{display:block;margin-bottom:var(--micro-padding-small);font-size:var(--micro-font-size-small);font-weight:700;& span{font-weight:400;opacity:.7}}& input, & textarea{display:block;width:100%;padding:var(--micro-padding-small)var(--micro-padding-medium);color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface-container-high);border:1px solid var(--md-sys-color-outline);border-radius:.4rem;font-family:inherit;font-size:1.1rem;line-height:1.4;transition:border-color var(--micro-transition-duration)var(--micro-transition-timing),box-shadow var(--micro-transition-duration)var(--micro-transition-timing);&:focus{border-color:var(--md-sys-color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--md-sys-color-primary) 20%,transparent);outline:none}}& textarea{min-height:10rem}}& .contact-submit{min-height:3rem;padding:.75rem var(--micro-padding-medium-large);color:var(--md-sys-color-on-primary);background:var(--md-sys-color-primary);border:0;border-radius:999px;font-weight:700;cursor:pointer;&:hover{filter:brightness(.92)}&:focus-visible{outline:3px solid var(--md-sys-color-on-surface-variant);outline-offset:3px}&:disabled{cursor:wait;opacity:.7}}& .form-alert{margin-top:var(--micro-padding-large);padding:var(--micro-padding-medium)1.25rem;border:1px solid;border-radius:.4rem;font-weight:500;line-height:1.5;&.form-alert-success{background:color-mix(in srgb,var(--md-sys-color-primary) 16%,transparent);border-color:var(--md-sys-color-primary)}&.form-alert-failure{background:color-mix(in srgb,var(--md-sys-color-error) 20%,transparent);border-color:var(--md-sys-color-error)}}& .form-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}}@media(max-width:1024px){.contact-layout{grid-template-columns:1fr;gap:var(--micro-padding-large)}}.map{--map-min-height:36rem;--map-min-height-mobile:30rem;--map-border:#c8d4d2;--map-accent:#c7623d;--map-line:#d9784f;position:relative;color:var(--micro-theme-color,#243238);grid-column:fullbleed;margin:0}.map-stage,.map-shell{position:relative;min-height:var(--map-min-height)}.map-shell{overflow:hidden;border:1px solid var(--map-border);background:#a9c6d2}.map-element{position:absolute;inset:0}.map-message{display:grid;place-items:center;height:100%;padding:2rem;background:#edf3f1;text-align:center}.map-leader-lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:3}.map-leader-line{stroke:var(--map-line);stroke-width:3;stroke-dasharray:.45rem .35rem;vector-effect:non-scaling-stroke}.map-callout{position:absolute;width:calc(100% - 3rem);max-width:22rem;padding:1rem;border:1px solid var(--map-border);background:rgba(255,255,255,.97);box-shadow:0 .5rem 1.5rem rgba(36,50,56,.28);z-index:4}.map-callout-close{position:absolute;top:.5rem;right:.5rem;z-index:5;border:0;background:0 0;cursor:pointer;font:inherit;font-size:1.5rem}.map-callout-title{margin:0;font-size:1.35rem}.map-callout-text{color:var(--map-muted,#65757a);line-height:1.35}.map-marker-button{display:grid;place-items:center;width:2.8rem;height:2.8rem;padding:0;border:2px solid #fff;border-radius:50%;background:rgba(36,50,56,.78);cursor:pointer}.map-marker-dot{display:block;width:.95rem;height:.95rem;border-radius:50%;background:var(--map-accent)}.map-onboarding-callout{top:1.5rem;right:1.5rem;bottom:auto;left:auto}@media(max-width:768px){.map-stage,.map-shell{min-height:var(--map-min-height-mobile)}.map-onboarding-callout{top:auto;right:1rem;bottom:1rem;left:1rem;width:auto}.map-shell{overflow:visible}.map-callout:not(.map-onboarding-callout){right:auto;bottom:auto;left:auto;width:calc(min((100vw - 2rem),22rem))}}