@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-latin.woff2)format("woff2")}:root{--font-geist:"Geist";--background:oklch(97.7% .012 250);--foreground:oklch(20.5% .052 257);--card:oklch(99.4% .004 250);--card-foreground:oklch(20.5% .052 257);--primary:oklch(48% .13 254);--primary-foreground:oklch(99% .005 250);--secondary:oklch(89% .054 243);--secondary-foreground:oklch(20.5% .052 257);--muted:oklch(94% .022 248);--muted-foreground:oklch(45% .045 255);--accent:oklch(54% .17 264);--accent-foreground:oklch(99% .005 250);--border:oklch(84.5% .032 247);--input:oklch(84.5% .032 247);--ring:oklch(54% .17 264);--radius:1rem}.dark{--background:oklch(18% .045 257);--foreground:oklch(96% .014 248);--card:oklch(23% .052 257);--card-foreground:oklch(96% .014 248);--primary:oklch(72% .12 248);--primary-foreground:oklch(17% .045 257);--secondary:oklch(82% .07 241);--secondary-foreground:oklch(17% .045 257);--muted:oklch(27% .045 257);--muted-foreground:oklch(76% .03 248);--accent:oklch(70% .15 263);--accent-foreground:oklch(99% .005 250);--border:oklch(100% 0 0/.16);--input:oklch(100% 0 0/.18);--ring:oklch(72% .12 248)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--background);color:var(--foreground);font-family:var(--font-geist), Arial, sans-serif;margin:0;overflow-x:hidden}img,video{max-width:100%}a{color:inherit;text-decoration:none}h1,h2,h3,p,figure,blockquote{margin-top:0}h1,h2{letter-spacing:-.055em;font-family:Georgia,Times New Roman,serif;font-weight:400}h2{margin-bottom:0;font-size:clamp(2.4rem,4.5vw,4.9rem);line-height:.97}h2 em{color:var(--accent);font-weight:400}.skip-link{z-index:80;background:var(--foreground);color:var(--background);border-radius:999px;padding:.72rem 1rem;font-size:.85rem;font-weight:750;transition:transform .2s;position:fixed;top:.75rem;left:.75rem;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:4px;border-radius:.3rem}.section-index,.eyebrow,.card-kicker,.case-number{color:var(--primary);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:780}.hero-shell{min-height:100svh;padding:0 clamp(1.25rem,5vw,5.5rem) 1.4rem;position:relative;overflow:hidden}.hero-shell:before{content:"";border:1px solid color-mix(in oklch, var(--primary) 20%, transparent);width:58vw;height:58vw;box-shadow:0 0 0 6vw color-mix(in oklch, var(--secondary) 18%, transparent), 0 0 0 12vw color-mix(in oklch, var(--secondary) 10%, transparent);pointer-events:none;border-radius:50%;position:absolute;top:-31vw;right:-24vw}.site-nav{border-bottom:1px solid color-mix(in oklch, var(--foreground) 18%, transparent);z-index:3;justify-content:space-between;align-items:center;height:92px;display:flex;position:relative}.brand{align-items:center;gap:.8rem;display:flex}.brand-symbol{width:48px;height:48px;color:var(--foreground);flex:none;place-items:center;display:grid}.brand-symbol svg{width:100%;height:100%;overflow:visible}.brand-arch{fill:color-mix(in oklch, var(--secondary) 35%, transparent);stroke:currentColor;stroke-width:1.25px}.brand-gem{fill:var(--accent)}.brand-letter{fill:currentColor;font-family:Georgia,Times New Roman,serif;font-size:24px;font-weight:600}.brand-letter-accent{fill:var(--primary);font-style:italic}.brand-rule{fill:none;stroke:var(--accent);stroke-linecap:round;stroke-width:1.5px}.brand-type{grid-template-columns:auto auto;align-items:baseline;column-gap:.4rem;font-family:Georgia,serif;font-size:1.42rem;line-height:1;display:grid}.brand-type strong{font-weight:600}.brand-type em{color:var(--accent);letter-spacing:-.02em;font-weight:400}.nav-links{gap:clamp(.7rem,2.4vw,2rem);font-size:.88rem;font-weight:720;display:flex}.nav-links a{align-items:center;min-height:44px;padding:0 .35rem;transition:color .2s;display:inline-flex}.nav-links a:hover{color:var(--accent)}.hero-grid{z-index:2;grid-template-columns:minmax(0,1.14fr) minmax(320px,.68fr);align-items:center;gap:clamp(2.5rem,6vw,6.5rem);min-height:calc(100svh - 150px);padding:clamp(2.5rem,5vh,4.5rem) 0 2rem;display:grid;position:relative}.hero-copy{padding-top:1rem}.eyebrow{max-width:650px}h1{max-width:900px;margin:1.15rem 0 1.55rem;font-size:clamp(3.6rem,7.2vw,7.4rem);line-height:.87}h1 span{color:var(--accent);font-style:italic;display:block}.hero-intro{max-width:660px;color:color-mix(in oklch, var(--foreground) 76%, transparent);margin-bottom:0;font-size:clamp(1.02rem,1.5vw,1.26rem);line-height:1.66}.hero-actions{align-items:center;gap:1.5rem;margin-top:2rem;display:flex}.primary-cta{background:var(--primary);height:54px;color:var(--primary-foreground);border-radius:999px;padding:0 1.35rem;font-weight:760}.primary-cta:hover{background:color-mix(in oklch, var(--primary) 86%, black);color:#fff}.primary-cta svg{margin-left:.35rem}.text-link{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:1px solid;padding:0 0 .2rem;font-size:.9rem;font-weight:680}.text-link:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.hero-proof{border-top:1px solid var(--border);color:var(--muted-foreground);letter-spacing:.1em;text-transform:uppercase;flex-wrap:wrap;gap:.65rem 1.35rem;margin-top:3rem;padding-top:1.1rem;font-size:.71rem;font-weight:760;display:flex}.hero-proof span:before{content:"•";color:var(--accent);margin-right:.55rem}.hero-card{background:var(--primary);color:#fff;border-radius:18rem 18rem 1.8rem 1.8rem;justify-self:end;width:100%;max-width:480px;min-height:540px;position:relative;overflow:hidden;box-shadow:0 32px 85px oklch(20% .04 250/.18)}.hero-portrait{object-fit:cover;object-position:50% 35%;width:100%;height:100%;position:absolute;inset:0}.portrait-wash{background:linear-gradient(#0000 38%,oklch(26% .08 250/.32) 64%,oklch(15% .055 255/.96));position:absolute;inset:0}.portrait-rings{position:absolute;inset:0;overflow:hidden}.portrait-rings span{border:1px solid #ffffff6b;border-radius:50%;width:290px;height:290px;position:absolute;top:50px;right:-170px}.portrait-rings span:last-child{border-color:color-mix(in oklch, var(--secondary) 70%, transparent);width:210px;height:210px;top:90px;right:-126px}.hero-card-content{position:absolute;inset:auto 2rem 2.15rem}.card-kicker{color:oklch(90% .06 243)}.card-location{align-items:center;gap:.45rem;margin:.5rem 0 0;font-size:.9rem;display:flex}.card-location svg{width:16px}.card-rule{background:#ffffff3d;height:1px;margin:1.3rem 0}.card-quote{max-width:24rem;margin-bottom:0;font-family:Georgia,serif;font-size:1.3rem;line-height:1.35}.scroll-cue{min-height:44px;color:var(--muted-foreground);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:.55rem;font-size:.74rem;font-weight:760;display:inline-flex}.scroll-cue svg{width:16px;color:var(--accent)}.projects-shell{background:var(--foreground);color:var(--background);padding:clamp(4.5rem,8vw,7.5rem) clamp(1.25rem,5vw,5.5rem)}.projects-heading{grid-template-columns:1.25fr .6fr;align-items:end;gap:clamp(3rem,9vw,10rem);display:grid}.projects-heading .section-index,.projects-heading h2 em{color:var(--secondary)}.projects-heading>p{max-width:34rem;color:color-mix(in oklch, var(--background) 72%, transparent);margin:0 0 .65rem;font-size:1.05rem;line-height:1.75}.project-index{border-top:1px solid color-mix(in oklch, var(--background) 25%, transparent);margin-top:clamp(3rem,6vw,5rem)}.project-index a{border-bottom:1px solid color-mix(in oklch, var(--background) 25%, transparent);grid-template-columns:64px 1fr minmax(170px,.42fr) 24px;align-items:center;gap:1.2rem;min-height:78px;transition:padding .25s,color .25s;display:grid}.project-index a:hover{color:var(--secondary);padding-left:.8rem}.project-index span,.project-index small{letter-spacing:.1em;text-transform:uppercase;font-size:.72rem;font-weight:760}.project-index span{color:var(--secondary)}.project-index strong{font-family:Georgia,serif;font-size:clamp(1.35rem,2.4vw,2.2rem);font-weight:400}.project-index small{color:color-mix(in oklch, var(--background) 64%, transparent)}.project-index svg{width:20px}.case-study{min-height:0;display:grid}.case-study-video{background:var(--secondary);grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);align-items:center;gap:clamp(1rem,2vw,2.5rem);padding:clamp(1.25rem,3vw,3rem) clamp(1.25rem,4vw,4.5rem)}.case-media{aspect-ratio:4/3;background:var(--foreground);border-radius:1.5rem;min-height:0;position:relative;overflow:hidden}.case-media video{object-fit:cover;width:100%;height:100%;display:block}.case-media:after{content:"";pointer-events:none;background:linear-gradient(#0000 64%,#0410268c);position:absolute;inset:0}.video-control{z-index:3;color:#fff;backdrop-filter:blur(10px);cursor:pointer;background:#0a2a56c7;border:1px solid #ffffff8c;border-radius:50%;place-items:center;width:5rem;height:5rem;transition:width .25s,height .25s,top .25s,left .25s,background-color .2s,transform .25s;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 1rem 3rem #05193a47}.video-control:hover{background:#144c8aeb}.video-control:focus-visible{outline-offset:4px;outline:3px solid #fff}.video-control svg{fill:currentColor;width:1.65rem;height:1.65rem}.video-control.is-playing{background:#0a2a56ad;width:3rem;height:3rem;top:1.25rem;left:calc(100% - 1.25rem);transform:translate(-100%)}.video-control.is-playing svg{width:1.15rem;height:1.15rem}.media-label{z-index:1;color:#fff;backdrop-filter:blur(10px);letter-spacing:.1em;text-transform:uppercase;background:#071b3c66;border:1px solid #ffffff80;border-radius:999px;padding:.55rem .8rem;font-size:.72rem;font-weight:760;position:absolute;bottom:1.3rem;left:1.3rem}.case-copy{flex-direction:column;justify-content:center;padding:clamp(2.25rem,4vw,4.5rem);display:flex}.case-copy h2{margin:1rem 0 1.35rem}.case-lead{max-width:37rem;color:color-mix(in oklch, var(--foreground) 76%, transparent);margin-bottom:0;font-size:1.08rem;line-height:1.75}.case-contribution{border-top:1px solid color-mix(in oklch, var(--foreground) 22%, transparent);margin-top:2rem;padding-top:1.25rem}.case-contribution>p{color:var(--primary);letter-spacing:.12em;text-transform:uppercase;margin-bottom:1rem;font-size:.7rem;font-weight:780}.case-contribution ul{flex-wrap:wrap;gap:.55rem;margin:0;padding:0;list-style:none;display:flex}.case-contribution li{border:1px solid color-mix(in oklch, var(--foreground) 24%, transparent);border-radius:999px;padding:.55rem .78rem;font-size:.76rem;font-weight:690}.case-study-collage{color:#fff;background:oklch(20.5% .052 257);grid-template-columns:.72fr 1.28fr;padding:clamp(3.5rem,6vw,6.5rem) clamp(1.25rem,5vw,5.5rem)}.light-copy{padding-left:0;padding-right:clamp(3rem,7vw,7rem)}.light-copy .case-number{color:var(--secondary)}.light-copy .case-lead{color:#ffffffbd}.light-copy .case-contribution{border-color:#ffffff38}.light-copy .case-contribution>p{color:var(--secondary)}.light-copy .case-contribution li{border-color:#ffffff47}.collage-grid{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;gap:.8rem;min-height:560px;display:grid}.collage-grid figure{background:#091936;border-radius:1rem;min-height:0;margin:0;position:relative;overflow:hidden}.collage-main{grid-row:1/3}.collage-grid img{object-fit:cover;width:100%;height:100%;transition:transform .6s;display:block}.collage-grid figure:hover img{transform:scale(1.025)}.collage-grid figcaption,.surface-gallery figcaption{color:#fff;backdrop-filter:blur(8px);letter-spacing:.08em;text-transform:uppercase;background:#071630bd;border-radius:999px;padding:.4rem .62rem;font-size:.68rem;font-weight:720;position:absolute;bottom:.8rem;left:.8rem}.case-study-stone{background:var(--background);grid-template-columns:1.05fr .95fr}.stone-visual{background:#d8dde5;min-height:650px;position:relative;overflow:hidden}.stone-visual img{object-fit:cover;object-position:50% 50%;width:100%;height:100%;display:block}.stone-visual:after{content:"";background:linear-gradient(90deg, transparent 78%, var(--background));pointer-events:none;position:absolute;inset:0}.parallax-stone img{height:calc(100% + 5rem);transform:translate3d(0, var(--parallax-y,0px), 0) scale(1.025);will-change:transform;margin-top:-2.5rem}.dark-label{color:var(--foreground);background:#f0f5fcb8;border-color:#14264a42}.stone-copy{padding-left:clamp(3rem,8vw,9rem)}.surfaces-section{background:oklch(93% .034 247);padding:clamp(4.5rem,8vw,7.5rem) clamp(1.25rem,5vw,5.5rem)}.surfaces-copy{grid-template-columns:.8fr 1.1fr .7fr;align-items:end;gap:2.5rem;display:grid}.surfaces-copy .case-number{align-self:start;padding-top:.7rem}.surfaces-copy>p:last-child{color:var(--muted-foreground);margin:0 0 .55rem;font-size:1rem;line-height:1.72}.surface-gallery{grid-template-columns:1.2fr .8fr .8fr 1.2fr;gap:.8rem;margin-top:clamp(2.5rem,5vw,4rem);display:grid}.surface-gallery figure{background:var(--foreground);border-radius:1.25rem;min-height:360px;margin:0;position:relative;overflow:hidden}.surface-gallery img{object-fit:cover;width:100%;height:100%;transition:transform .6s;display:block}.surface-gallery figure:hover img{transform:scale(1.03)}.process-section{grid-template-columns:.82fr 1.18fr;gap:clamp(3rem,8vw,8rem);padding:clamp(4.5rem,8vw,7.5rem) clamp(1.25rem,5vw,5.5rem);display:grid}.process-heading h2{margin-top:1.15rem;font-size:clamp(2.5rem,4vw,4.25rem)}.process-list{border-top:1px solid var(--border)}.process-list article{border-bottom:1px solid var(--border);grid-template-columns:50px minmax(110px,.45fr) 1fr;align-items:baseline;gap:1.2rem;padding:1.35rem 0;display:grid}.process-list span{color:var(--accent);font-size:.72rem;font-weight:780}.process-list h3{margin:0;font-family:Georgia,serif;font-size:1.55rem;font-weight:400}.process-list p{color:var(--muted-foreground);margin:0;font-size:.95rem;line-height:1.65}.profile-story{background:var(--card);grid-template-columns:1fr 1fr;min-height:620px;display:grid}.story-visual{background:var(--primary);min-height:480px;position:relative;overflow:hidden}.story-visual:after{content:"";background:linear-gradient(90deg, transparent, var(--card));pointer-events:none;width:16%;position:absolute;inset:0 0 0 auto}.story-visual img{object-fit:cover;object-position:50% 32%;width:100%;height:100%;display:block}.story-copy{flex-direction:column;justify-content:center;padding:clamp(2.8rem,5vw,5.5rem);display:flex}.story-copy h2{margin-top:1.2rem}.story-copy>p:not(.section-index){max-width:38rem;color:var(--muted-foreground);margin:2rem 0 0;font-size:1.08rem;line-height:1.75}.story-copy blockquote{border-left:3px solid var(--accent);max-width:38rem;margin:2.3rem 0 0;padding-left:1.4rem;font-family:Georgia,serif;font-size:1.35rem;line-height:1.45}.story-stats{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;gap:1rem;margin-top:3rem;padding-top:2rem;display:grid}.story-stats strong{color:var(--accent);font-family:Georgia,serif;font-size:clamp(2.3rem,3.3vw,3.6rem);font-weight:400;display:block}.story-stats span{color:var(--muted-foreground);letter-spacing:.08em;text-transform:uppercase;margin-top:.25rem;font-size:.72rem;font-weight:760;display:block}.experience-section{padding:clamp(4.5rem,8vw,7.5rem) clamp(1.25rem,5vw,5.5rem)}.section-heading-row{grid-template-columns:1fr .65fr;align-items:end;gap:4rem;margin-bottom:clamp(4rem,8vw,7rem);display:grid}.section-heading-row h2{margin-top:1.2rem}.section-note{max-width:34rem;color:var(--muted-foreground);margin:0 0 .55rem;font-size:1.02rem;line-height:1.75}.timeline{border-top:1px solid var(--border)}.timeline-item{border-bottom:1px solid var(--border);grid-template-columns:68px minmax(250px,.75fr) 1.1fr;gap:2rem;padding:2.4rem 0;display:grid}.timeline-marker span{background:var(--primary);color:#fff;border-radius:50%;place-items:center;width:2rem;height:2rem;font-size:.65rem;font-weight:760;display:grid}.timeline-meta p{margin:0}.timeline-meta>p:first-child{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:760}.timeline-meta h3{margin:.65rem 0 .35rem;font-family:Georgia,serif;font-size:clamp(1.35rem,2vw,1.8rem);font-weight:400}.timeline-meta .role{color:var(--muted-foreground);font-size:.93rem;line-height:1.5}.timeline-detail p{max-width:42rem;color:var(--muted-foreground);margin:0;font-size:.98rem;line-height:1.75}.contact-section{background:var(--foreground);color:var(--background);padding:clamp(4.5rem,8vw,7rem) clamp(1.25rem,5vw,5.5rem) 2rem}.contact-eyebrow{color:var(--secondary);letter-spacing:.13em;text-transform:uppercase;font-size:.74rem;font-weight:760}.contact-section>h2{margin-top:1.7rem;font-size:clamp(3.2rem,7.2vw,7rem);line-height:.9}.contact-section>h2 em{color:var(--secondary)}.footer-actions{flex-wrap:wrap;gap:1rem;margin-top:3rem;display:flex}.footer-cta{background:var(--secondary);height:54px;color:var(--secondary-foreground);border-radius:999px;padding:0 1.35rem;font-weight:760}.footer-cta:hover{color:var(--foreground);background:oklch(94% .04 242)}.footer-bottom{border-top:1px solid #ffffff4d;grid-template-columns:repeat(3,auto) 1fr;align-items:end;gap:3rem;margin-top:clamp(5rem,10vw,9rem);padding-top:2rem;font-size:.88rem;display:grid}.footer-bottom p{color:#fff9;letter-spacing:.1em;text-transform:uppercase;margin:0 0 .5rem;font-size:.68rem;font-weight:760}.footer-bottom a{align-items:center;gap:.4rem;display:inline-flex}.footer-bottom svg{width:14px}.back-to-top{border-bottom:1px solid;justify-self:end;padding-bottom:.2rem}.contact-drawer{color:var(--foreground);background:oklch(97.5% .018 247);border-left:0;box-shadow:-24px 0 80px #07183638;width:min(100%,34rem)!important;max-width:34rem!important}.contact-drawer [data-slot=sheet-close]{border:1px solid var(--border);background:#fff;border-radius:50%;width:2.6rem;height:2.6rem;top:1rem;right:1rem}.contact-drawer-inner{flex-direction:column;height:100%;min-height:0;padding:1.35rem clamp(1.5rem,4vw,3rem) 0;display:flex;overflow:hidden}.contact-drawer-header{padding:0}.drawer-kicker{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin:.25rem 3.25rem .7rem 0;font-size:.72rem;font-weight:780}.contact-drawer [data-slot=sheet-title]{max-width:25rem;font-family:Georgia,serif;font-size:clamp(2.15rem,3.4vw,3.2rem);font-weight:400;line-height:.98}.contact-drawer [data-slot=sheet-description]{max-width:28rem;color:var(--muted-foreground);margin-top:.75rem;font-size:.92rem;line-height:1.5}.contact-form{flex-direction:column;flex:1;min-height:0;margin-top:1.5rem;display:flex}.contact-fields{scrollbar-width:thin;gap:1.05rem;padding-right:.25rem;display:grid;overflow-y:auto}.contact-field{gap:.4rem;display:grid}.contact-field label{color:var(--foreground);font-size:.84rem;font-weight:720}.contact-field input,.contact-field textarea{border-color:color-mix(in oklch, var(--foreground) 22%, transparent);color:var(--foreground);background:#fff;border-radius:.85rem;font-size:1rem;box-shadow:0 8px 24px #0a22460a}.contact-field input{height:3rem;padding:0 .9rem}.contact-field textarea{resize:vertical;min-height:7.75rem;padding:.75rem .9rem}.contact-field input:focus-visible,.contact-field textarea:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in oklch, var(--accent) 18%, transparent)}.contact-honeypot{clip:rect(0 0 0 0)!important;white-space:nowrap!important;width:1px!important;height:1px!important;position:absolute!important;overflow:hidden!important}.contact-form-actions{z-index:2;background:linear-gradient(#0000,oklch(97.5% .018 247) 18%);margin-top:auto;padding:1rem 0 .85rem;position:sticky;bottom:0}.contact-submit{background:var(--primary);color:#fff;border-radius:999px;width:100%;height:3rem;font-size:.9rem;font-weight:760}.contact-submit:hover{background:color-mix(in oklch, var(--primary) 86%, black)}.contact-form-note{color:var(--muted-foreground);text-align:center;margin:.55rem .5rem 0;font-size:.76rem;line-height:1.5}.contact-form-note.is-error{color:oklch(50% .18 28)}@media (width<=1040px){.hero-grid{grid-template-columns:1fr minmax(300px,.62fr);gap:3rem}.case-study-collage{grid-template-columns:1fr}.light-copy{max-width:760px;padding:0 0 3rem}.collage-grid{min-height:520px}.surface-gallery{grid-template-columns:1fr 1fr}.surface-gallery figure{min-height:330px}}@media (width<=780px){h1{font-size:clamp(3.35rem,8.8vw,4.8rem)}.hero-grid{grid-template-columns:1fr}.hero-card{justify-self:center;max-width:410px;min-height:440px}.projects-heading,.section-heading-row,.process-section,.profile-story{grid-template-columns:1fr}.project-index a{grid-template-columns:44px 1fr 22px}.project-index small{display:none}.case-study-video,.case-study-stone{grid-template-columns:1fr}.case-study-video{gap:0;padding:1.1rem}.case-study-video .case-copy{order:1;padding:3rem 1.2rem 2.5rem}.case-study-video .case-media{order:2}.case-media{aspect-ratio:4/3}.case-study-collage{padding-top:4rem;padding-bottom:4rem}.stone-visual{min-height:500px}.stone-visual:after{display:none}.parallax-stone img{will-change:auto;height:100%;margin-top:0;transform:none}.stone-copy{padding:4rem 1.25rem 5rem}.surfaces-copy{grid-template-columns:1fr}.surface-gallery{grid-template-columns:1fr 1fr}.process-list article{grid-template-columns:40px 120px 1fr}.story-visual{min-height:440px}.story-visual:after{display:none}.timeline-item{grid-template-columns:46px 1fr;gap:1rem}.timeline-detail{grid-column:2}.footer-bottom{grid-template-columns:1fr 1fr;gap:2rem}.back-to-top{justify-self:start}}@media (prefers-reduced-motion:reduce){.video-control{transition:none}.parallax-stone img{will-change:auto;height:100%;margin-top:0;transform:none}}@media (width<=520px){.site-nav{height:76px}.brand{gap:.55rem}.brand-symbol{width:40px;height:40px}.brand-type{column-gap:.24rem;font-size:.92rem;display:grid}.nav-links{gap:.35rem;font-size:.7rem}.nav-links a:nth-child(2){display:none}.hero-grid{min-height:auto;padding:3rem 0 2rem}.hero-actions{flex-direction:column;align-items:flex-start;gap:1rem}.hero-proof{gap:.6rem 1rem}.hero-card{min-height:440px}.projects-shell{padding-top:5rem}.project-index a{gap:.65rem;min-height:78px}.collage-grid{grid-template-rows:repeat(3,250px);grid-template-columns:1fr;min-height:auto}.collage-main{grid-row:auto}.surface-gallery{grid-template-columns:1fr 1fr}.surface-gallery figure{min-height:250px}.surface-gallery .surface-wide{grid-column:1/-1;min-height:290px}.process-list article{grid-template-columns:36px 1fr}.process-list p{grid-column:2}.story-stats,.footer-bottom{grid-template-columns:1fr}.contact-drawer{width:100%!important;max-width:none!important}.contact-drawer-inner{padding:1.15rem 1.25rem 0}}@media (prefers-reduced-motion:no-preference){.hero-copy{animation:.7s ease-out both rise-in}.hero-card{animation:.8s ease-out .1s both rise-in}@keyframes rise-in{0%{opacity:0;transform:translateY(18px)}}}button,input,textarea{font:inherit}button{border:0}.primary-cta,.footer-cta{cursor:pointer;justify-content:center;align-items:center;display:inline-flex}button:disabled{opacity:.68;cursor:wait}img,video{display:block}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.contact-dialog{width:100%;max-width:none;height:100%;max-height:none;color:var(--foreground);background:0 0;border:0;margin:0 0 0 auto;padding:0}.contact-dialog::backdrop{backdrop-filter:blur(4px);background:#07183694}.contact-drawer{height:100%;margin-left:auto;padding:0}.dialog-close{z-index:3;border:1px solid var(--border);width:2.6rem;height:2.6rem;color:var(--foreground);cursor:pointer;background:#fff;border-radius:50%;place-items:center;font-size:1.55rem;display:grid;position:absolute;top:1rem;right:1rem}.dialog-heading h2{max-width:25rem;font-size:clamp(2.15rem,3.4vw,3.2rem);line-height:.98}.dialog-heading>span{max-width:28rem;color:var(--muted-foreground);margin-top:.75rem;font-size:.92rem;line-height:1.5;display:block}.form-fields{scrollbar-width:thin;gap:1.05rem;padding-right:.25rem;display:grid;overflow-y:auto}.form-fields label{color:var(--foreground);gap:.4rem;font-size:.84rem;font-weight:720;display:grid}.form-fields input,.form-fields textarea{border:1px solid color-mix(in oklch, var(--foreground) 22%, transparent);width:100%;color:var(--foreground);background:#fff;border-radius:.85rem;font-size:1rem;box-shadow:0 8px 24px #0a22460a}.form-fields input{height:3rem;padding:0 .9rem}.form-fields textarea{resize:vertical;min-height:7.75rem;padding:.75rem .9rem}.form-fields input:focus-visible,.form-fields textarea:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in oklch, var(--accent) 18%, transparent);outline:0}.honeypot{clip:rect(0 0 0 0)!important;white-space:nowrap!important;width:1px!important;height:1px!important;position:absolute!important;overflow:hidden!important}.form-actions{z-index:2;background:linear-gradient(#0000,oklch(97.5% .018 247) 18%);margin-top:auto;padding:1rem 0 .85rem;position:sticky;bottom:0}.form-actions .primary-cta{width:100%}.form-status{color:var(--muted-foreground);text-align:center;margin:.55rem .5rem 0;font-size:.76rem;line-height:1.5}.form-status.error{color:oklch(50% .18 28)}@media (width<=520px){.contact-drawer{width:100%!important;max-width:none!important}}
