:root{font-family:DM Sans,Arial,sans-serif;color:#20231f;background:#fff;font-synthesis:none;--teal:#8ccfcb;--peach:#fbcc99;--lime:#d5e79e;--rose:#db9198}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #257b76;outline-offset:5px}button{cursor:pointer}h1,h2,h3,p{margin:0}img{display:block;max-width:100%;object-fit:cover}.header{height:110px;padding:0 5%;display:flex;justify-content:space-between;align-items:center;background:#fff}.brand{display:flex;align-items:center;gap:8px;font-size:24px;font-weight:700;letter-spacing:-1px}.brand img{object-fit:contain;width:64px;height:54px}.brand-light{font-weight:400}.brand small{display:block;font-size:8px;letter-spacing:2.7px;margin-top:5px;font-weight:500}.header nav{display:flex;gap:35px;align-items:center;font-size:14px}.header nav>a:hover,.active{color:#287b75}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;padding:17px 23px;border-radius:7px;font-size:14px;font-weight:500;border:0;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.dark{background:#242721;color:#fff}.dark:hover{background:#3e4940}.light{background:#fff;color:#222}.button span{font-size:21px}.menu-toggle{display:none}.skip{position:absolute;top:-100px;left:15px;background:#fff;padding:12px;z-index:10}.skip:focus{top:15px}.hero{margin:0 2%;background:#f5f6f2;border-radius:20px;overflow:hidden;display:grid;grid-template-columns:1fr 1.1fr;position:relative;min-height:650px}.hero-copy{padding:70px 0 60px 7%;position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:600;display:flex;gap:10px;align-items:center}.dot{width:8px;height:8px;background:#4b9991;border-radius:50%;display:inline-block;flex-shrink:0}h1{font-size:clamp(56px,6.5vw,108px);font-weight:500;letter-spacing:-5px;line-height:1.02;margin:35px 0}h1 .serif{white-space:nowrap}.serif{font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-weight:400}.spark{font-size:67px;color:#6ba89f;display:inline-block;margin-left:15px;vertical-align:top}.hero-bottom{display:flex;align-items:flex-end;gap:35px;margin-top:22px}.hero-bottom p{font-size:14px;color:#697067;line-height:1.7}.hero-visual{position:relative;min-width:0;margin:16px 16px 16px 30px;border-radius:14px;overflow:hidden}.hero-visual>img{width:100%;height:100%;position:absolute;inset:0}.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 40%,#0009)}.hero-overlay{position:absolute;bottom:65px;left:35px;right:35px;color:#fff;z-index:1}.hero-overlay>span{font-size:10px;letter-spacing:2px}.hero-overlay a{display:flex;justify-content:space-between;font-size:21px;margin-top:13px}.visual-note{position:absolute;bottom:0;width:100%;background:var(--lime);padding:16px 25px;font-size:11px;display:flex;align-items:center;gap:9px;z-index:2}.discipline-strip{padding:36px 8%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e7e8e3;font-size:14px;color:#62665e}.discipline-strip i{font-style:normal;color:#83bcb4;font-size:22px}.section{padding:100px 6%}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:45px}h2{font-size:clamp(36px,4.2vw,65px);letter-spacing:-2.8px;line-height:1.1;font-weight:500;margin-top:24px}.muted{color:#979b91}.text-link{font-size:13px;display:inline-flex;align-items:center;gap:30px}.text-link span{font-size:23px;background:#f3f4ef;border-radius:5px;padding:8px 14px}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.work-image{position:relative;overflow:hidden;border-radius:12px;height:380px;background:#eff0ea}.work-image img{width:100%;height:100%;transition:transform .6s}.work-card:hover img{transform:scale(1.04)}.image-chip{position:absolute;left:18px;top:18px;background:#fff;padding:9px 13px;border-radius:4px;font-size:10px}.image-arrow{position:absolute;bottom:20px;right:20px;background:#fff;width:40px;height:40px;display:grid;place-items:center;border-radius:50%;font-size:22px}.work-caption{display:flex;justify-content:space-between;gap:15px;align-items:center;padding-top:19px}.work-caption h3{font-size:17px;font-weight:500;letter-spacing:-.4px}.work-caption>span{font-size:11px;color:#888}.services-section{background:#f7f8f4}.section-description{max-width:320px;font-size:14px;color:#6d7268;line-height:1.7}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.service-card{border:1px solid #dfe3d9;padding:26px;border-radius:12px;background:#fff;transition:transform .2s}.service-card:hover{transform:translateY(-5px)}.service-number{display:flex;justify-content:space-between;align-items:center;font-size:11px}.service-number span{font-size:25px}.service-card h3{font-size:23px;letter-spacing:-.7px;font-weight:500;margin:60px 0 16px}.service-card p{font-size:12px;line-height:1.8;color:#4d534a}.peach{background:#fff1e1}.teal{background:#e4f2f0}.lime{background:#eff5de}.rose{background:#f8e9eb}.feature{position:relative;margin:60px 2%;height:620px;overflow:hidden;border-radius:20px;background:#222}.feature>img{width:100%;height:100%}.feature:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent,#000b)}.feature>div{position:absolute;bottom:65px;left:7%;color:#fff;z-index:1}.feature h2{font-size:68px}.feature p:not(.eyebrow){font-size:14px;line-height:1.7;margin:25px 0}.about{display:grid;grid-template-columns:1fr 1fr;gap:100px}.about-lead{font-size:30px;letter-spacing:-1px;margin-bottom:25px}.about>div>p:not(.eyebrow):not(.about-lead){font-size:15px;line-height:1.9;color:#73796e;margin-bottom:20px}.about .text-link{margin-top:10px}footer{background:#20251f;color:#fff;padding:75px 6% 25px}.footer-top{display:flex;justify-content:space-between;gap:60px}.footer-title{font-size:clamp(40px,5vw,75px);letter-spacing:-3px;line-height:1.1;display:block;margin-top:30px}.footer-title em{font-family:"Instrument Serif",Georgia,serif;color:var(--lime);font-weight:400}.footer-contact{padding-top:55px;max-width:300px;font-size:14px;line-height:2}.footer-contact>a{display:block}.footer-contact p{color:#b4baaf;font-size:12px;margin:18px 0}.socials{display:flex;gap:17px;font-size:11px}.footer-bottom{margin-top:70px;padding-top:25px;border-top:1px solid #ffffff25;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#b4baaf}.page-title{font-size:clamp(48px,6vw,90px);max-width:1100px}.intro{font-size:16px;line-height:1.8;color:#73796e;max-width:600px;margin:25px 0 45px}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:50px}.gallery img{width:100%;height:auto;border-radius:12px}.gallery img:first-child{grid-column:1/-1}.project-label{margin-top:55px}.service-cover{width:100%;max-height:650px;border-radius:16px}.service-cta{margin-top:50px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact form{padding:40px;background:#f5f6f2;border-radius:16px}label{display:block;font-size:12px;margin-bottom:23px}input,textarea,select{display:block;width:100%;background:#fff;border:1px solid #dce0d6;border-radius:5px;padding:14px;margin-top:10px;font-size:14px;color:#333}input:focus,textarea:focus,select:focus{outline:2px solid #4b9991}.form-note{font-size:12px;color:#687061;line-height:1.7;margin-top:20px}@media(min-width:1500px){.hero{min-height:760px}.hero-copy{padding-left:12%}}@media(max-width:1100px){.hero{min-height:570px}.hero-bottom{align-items:flex-start;flex-direction:column;gap:20px}h1{letter-spacing:-3px}.spark{display:none}.service-grid{grid-template-columns:1fr 1fr}.work-image{height:290px}.about{gap:50px}.header nav{gap:22px}}@media(max-width:700px){.header{height:85px;padding:0 5%}.brand{font-size:20px}.brand img{width:48px;height:43px}.brand small{font-size:7px;letter-spacing:2px}.menu-toggle{display:flex;gap:12px;border:0;background:transparent;font-size:13px}.header nav{display:none;position:absolute;top:85px;left:0;right:0;background:#fff;padding:25px;z-index:5;box-shadow:0 15px 20px #0001;align-items:stretch}.header nav.open{display:flex;flex-direction:column}.hero{display:flex;flex-direction:column;min-height:auto;margin:0 3%;border-radius:14px}.hero-copy{padding:40px 7%}.eyebrow{font-size:8px;letter-spacing:1.3px}h1{font-size:57px;letter-spacing:-2.8px;margin:25px 0}.hero-bottom{margin-top:0;flex-direction:row;align-items:center;justify-content:space-between;gap:15px}.hero-bottom p{font-size:11px}.button{font-size:11px;padding:14px 16px;gap:14px}.hero-visual{margin:0 12px 12px;height:370px}.hero-overlay{left:20px;right:20px}.hero-overlay a{font-size:17px}.visual-note{font-size:9px;padding:15px}.discipline-strip{padding:25px 5%;font-size:9px}.discipline-strip i{font-size:14px}.section{padding:65px 6%}.section-head{gap:20px;margin-bottom:30px;align-items:flex-end}h2{font-size:40px;letter-spacing:-1.8px}.text-link{font-size:11px;gap:10px}.text-link span{padding:6px 10px;font-size:18px}.work-grid{grid-template-columns:1fr;gap:35px}.work-image{height:380px}.work-caption h3{font-size:18px}.services-section .section-head{align-items:flex-start;flex-direction:column}.service-grid{gap:12px}.service-card{padding:19px}.service-card h3{font-size:19px;margin-top:35px}.service-card p{font-size:11px}.feature{height:500px;margin:30px 3%;border-radius:14px}.feature>div{bottom:40px;left:7%}.feature h2{font-size:52px}.about{grid-template-columns:1fr;gap:35px}.footer-top{flex-direction:column;gap:25px}.footer-contact{padding-top:0}.footer-bottom{flex-wrap:wrap;line-height:1.8}.footer-bottom>span:nth-child(2){display:none}.footer-title{letter-spacing:-1.8px}.gallery{grid-template-columns:1fr;gap:15px}.gallery img:first-child{grid-column:auto}.contact{grid-template-columns:1fr;gap:10px}.contact form{padding:25px}.page-title{font-size:52px;letter-spacing:-2px}.service-cta{align-items:flex-start;flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}.header{position:sticky;top:0;z-index:20;height:96px;transition:box-shadow .35s,background .35s}.header.scrolled{background:#fffffff5;box-shadow:0 5px 25px #20251f0d;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.cinematic-hero{position:relative;isolation:isolate;margin:0 1.4% 24px;height:calc(100svh - 112px);min-height:620px;max-height:1100px;border-radius:24px;overflow:hidden;background:#343c32;color:#fff}.cinematic-image,.cinematic-shade{position:absolute;inset:0;z-index:-1}.cinematic-image{transform:translate3d(0,calc(var(--hero-progress,0) * -65px),0) scale(calc(1.04 + var(--hero-progress,0) * .08));will-change:transform}.cinematic-image img{width:100%;height:100%;object-position:50% 46%}.cinematic-shade{background:linear-gradient(180deg,#111a1525,#10170d50 35%,#10170dba)}.cinematic-content{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:25px 24px 80px;transform:translate3d(0,calc(var(--hero-progress,0) * -100px),0);opacity:calc(1 - var(--hero-progress,0) * .95);will-change:transform,opacity}.hero-logo{background:#ffffffed;border-radius:50%;width:clamp(110px,11vw,170px);height:clamp(110px,11vw,170px);display:grid;place-items:center;margin-bottom:25px;box-shadow:0 8px 40px #0001;animation:hero-arrive 1s both}.hero-logo img{width:90%;height:90%;object-fit:contain;mix-blend-mode:multiply}.cinematic-content .eyebrow{font-size:10px;letter-spacing:2.5px;animation:hero-arrive 1s .12s both}.cinematic-content h1{font-size:clamp(48px,5.7vw,90px);letter-spacing:-3px;line-height:1.06;margin:25px 0 20px;animation:hero-arrive 1s .2s both}.cinematic-content h1 .serif{white-space:normal;color:#e1eebc}.cinematic-description{font-size:15px;line-height:1.7;color:#ffffffd9;margin-bottom:28px;animation:hero-arrive 1s .3s both}.cinematic-content>.button{animation:hero-arrive 1s .4s both}.hero-foot{position:absolute;bottom:26px;left:36px;right:36px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:9px;letter-spacing:1.4px}.scroll-cue{display:flex;align-items:center;gap:14px;font-size:11px;letter-spacing:.5px}.scroll-cue span{font-size:21px;animation:scroll-nudge 2s ease-in-out infinite}.reveal-ready{opacity:0;transform:translateY(32px);transition:opacity .8s var(--reveal-delay,0ms),transform .8s var(--reveal-delay,0ms)}.reveal-ready.revealed{opacity:1;transform:translateY(0)}.reveal-ready:focus-within,.reveal-ready:focus{opacity:1;transform:none}@keyframes hero-arrive{0%{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}@keyframes scroll-nudge{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}@media(max-width:700px){.header{height:85px}.cinematic-hero{margin:0 3% 12px;border-radius:16px;height:calc(100svh - 97px);min-height:600px}.cinematic-content{padding:30px 20px 85px}.cinematic-content h1{font-size:47px;letter-spacing:-2px}.cinematic-content .eyebrow{font-size:8px;letter-spacing:1.6px}.cinematic-description{font-size:13px}.hero-foot{left:20px;right:20px;bottom:22px;flex-direction:column;gap:14px;font-size:8px}.hero-foot>span:last-child{display:none}.hero-logo{margin-bottom:20px}.cinematic-image img{object-position:38% center}}@media(prefers-reduced-motion:reduce){.cinematic-image,.cinematic-content{transform:none;will-change:auto}.cinematic-content{opacity:1}.hero-logo,.cinematic-content .eyebrow,.cinematic-content h1,.cinematic-description,.cinematic-content>.button,.scroll-cue span{animation:none}.reveal-ready{opacity:1;transform:none}}.feature>div{left:5%;right:5%;text-align:center;display:flex;flex-direction:column;align-items:center}.feature h2{font-size:clamp(44px,5vw,72px)}.header.home-header{position:fixed;left:0;right:0;background:transparent;color:#fff;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.header.home-header:not(.scrolled) .brand img{background:transparent}.header.home-header:not(.scrolled) nav>a:hover{color:var(--lime)}.header.home-header:not(.scrolled) .menu-toggle{color:#fff}.header.home-header.scrolled{background:#fffffff5;color:#20231f;box-shadow:0 5px 25px #20251f0d;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.header.home-header nav.open{color:#20231f}.hero-stage{height:145svh;position:relative}.hero-stage .cinematic-hero{position:sticky;top:0;margin:0;height:100svh;min-height:0;max-height:none;border-radius:0;clip-path:inset(calc(var(--frame-progress,0) * 112px) calc(var(--frame-progress,0) * 1.4%) calc(var(--frame-progress,0) * 24px) round calc(var(--frame-progress,0) * 24px));will-change:clip-path}.hero-stage .cinematic-content{padding-top:112px;padding-bottom:80px}.hero-stage .hero-foot{bottom:calc(26px + var(--frame-progress,0) * 24px)}@media(max-width:700px){.hero-stage .cinematic-hero{clip-path:inset(calc(var(--frame-progress,0) * 97px) calc(var(--frame-progress,0) * 3%) calc(var(--frame-progress,0) * 12px) round calc(var(--frame-progress,0) * 16px))}.hero-stage .cinematic-content{padding-top:100px;padding-bottom:80px}.hero-stage .hero-foot{bottom:calc(22px + var(--frame-progress,0) * 12px)}.hero-stage .cinematic-content h1{font-size:clamp(32px,7vw,47px)}.hero-stage .hero-logo{width:clamp(75px,14svh,110px);height:clamp(75px,14svh,110px)}}@media(max-height:700px){.hero-stage .hero-logo{width:80px;height:80px;margin-bottom:12px}.hero-stage .cinematic-content h1{font-size:clamp(32px,5vw,54px);margin:16px 0 12px}.hero-stage .cinematic-description{font-size:12px;margin-bottom:16px}}@media(prefers-reduced-motion:reduce){.hero-stage{height:100svh}.hero-stage .cinematic-hero{will-change:auto;clip-path:none}}.header{top:16px;height:80px;margin:16px 3%;padding:0 28px;border-radius:22px;border:1px solid rgba(255,255,255,.55);background:#ffffffad;backdrop-filter:blur(24px) saturate(140%);-webkit-backdrop-filter:blur(24px) saturate(140%);box-shadow:0 8px 32px #20251f12;transition:opacity .35s,transform .35s,visibility .35s}.header.scrolled,.header.home-header.scrolled{background:#ffffffad;backdrop-filter:blur(24px) saturate(140%);-webkit-backdrop-filter:blur(24px) saturate(140%);box-shadow:0 8px 32px #20251f12}.header.home-header{top:16px;left:3%;right:3%;margin:0;color:#20231f}.header.home-header:not(.scrolled){opacity:1;visibility:visible;pointer-events:auto;transform:none;color:#fff;background:transparent;border-color:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.header.home-header.scrolled{opacity:1;visibility:visible;transform:translateY(0)}.header .button{border-radius:14px;padding:12px 20px}.hero-stage .cinematic-content{padding:40px 24px}.hero-stage .hero-logo{margin-bottom:28px}.hero-stage .cinematic-content h1{margin:0}.skip{z-index:30}@media(max-width:700px){.header{top:12px;height:70px;margin:12px 3%;padding:0 16px;border-radius:18px}.header.home-header{top:12px}.header nav.open{top:80px;border:1px solid #ffffff80;border-radius:18px;background:#ffffffd9;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.hero-stage .cinematic-content{padding:30px 20px}}.cinematic-content h1.animated-headline{animation:none}.headline-phrase{display:inline-block;animation:headline-reveal 1.1s cubic-bezier(.16,1,.3,1) both}.headline-first{animation-delay:.3s}.headline-second{animation-delay:.65s}.headline-last{animation-delay:.95s}@keyframes headline-reveal{0%{opacity:0;transform:translateY(35px);filter:blur(8px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@media(prefers-reduced-motion:reduce){.headline-phrase{animation:none;opacity:1;transform:none;filter:none}}.cinematic-image .slideshow-image{position:absolute;inset:0;opacity:0;transition:opacity 1.25s ease}.cinematic-image .slideshow-image.current{opacity:1}.slideshow-controls{position:absolute;bottom:calc(24px + var(--frame-progress,0) * 24px);left:50%;transform:translate(-50%);display:flex;align-items:center;gap:2px;z-index:2}.slide-dot,.slide-pause{display:grid;place-items:center;width:36px;height:36px;padding:0;border:0;background:transparent;color:#fff;border-radius:50%}.slide-dot span{height:6px;width:6px;border-radius:6px;background:#ffffff65;transition:width .3s,background .3s}.slide-dot.selected span{width:20px;background:#fff}.slide-dot:disabled{cursor:default;opacity:.4}.slide-pause{font-size:12px;margin-left:8px;background:#ffffff15;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.slide-pause:hover{background:#ffffff30}@media(max-width:700px){.slideshow-controls{bottom:calc(18px + var(--frame-progress,0) * 12px)}}@media(prefers-reduced-motion:reduce){.cinematic-image .slideshow-image{transition:none}}.header.home-header:not(.scrolled) nav:not(.open) .button{background:transparent;color:#fff;box-shadow:none}.header.home-header:not(.scrolled) nav:not(.open)>a{text-shadow:0 1px 8px #0005}.header.home-header:not(.scrolled) .brand{text-shadow:0 1px 8px #0005}.brand-logo,.hero-stage .hero-logo{background:transparent;border:0;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none;border-radius:0}.brand-logo{display:grid;place-items:center;width:64px;height:64px;flex-shrink:0}.brand .brand-logo img{width:90%;height:90%;object-fit:contain;background:transparent}.hero-stage .hero-logo{width:clamp(180px,15vw,220px);height:clamp(180px,15vw,220px);margin-bottom:32px}.hero-logo img{mix-blend-mode:normal}@media(max-width:700px){.brand-logo{width:48px;height:48px}.hero-stage .hero-logo{width:150px;height:150px;margin-bottom:26px}}@media(max-height:700px){.hero-stage .hero-logo{width:140px;height:140px;margin-bottom:22px}}.header .nav-contact{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:44px;padding:11px 20px;border-radius:999px;border:1px solid rgba(70,95,83,.18);background:#ffffff3d;color:#283c33;font-size:14px;font-weight:500;box-shadow:inset 0 1px #ffffff65;transition:background .25s,border-color .25s}.header .nav-contact span{font-size:18px;line-height:1;transition:transform .25s}.header .nav-contact:hover{background:#8ccfcb33;border-color:#465f5359;color:#283c33}.header .nav-contact:hover span{transform:translate(2px,-2px)}.header.home-header:not(.scrolled) nav:not(.open) .nav-contact{background:transparent;border-color:#ffffff45;color:#fff;box-shadow:none}.header.home-header:not(.scrolled) nav:not(.open) .nav-contact:hover{background:#ffffff12;border-color:#ffffff80;color:#fff}@media(max-width:700px){.header .nav-contact{font-size:13px}}.hero-explore{position:absolute;right:calc(32px + var(--frame-progress,0) * 1.4%);bottom:calc(24px + var(--frame-progress,0) * 24px);min-height:36px;display:inline-flex;align-items:center;gap:12px;z-index:2;color:#ffffffe6;font-size:11px;letter-spacing:.7px;text-shadow:0 1px 8px #0004}.hero-explore span{font-size:20px;animation:scroll-nudge 2s ease-in-out infinite}.hero-explore:hover{color:var(--lime)}@media(max-width:700px){.hero-explore{right:calc(16px + var(--frame-progress,0) * 3%);bottom:calc(18px + var(--frame-progress,0) * 12px);font-size:9px;letter-spacing:.2px;gap:7px}.hero-explore span{font-size:16px}.slideshow-controls{left:calc(16px + var(--frame-progress,0) * 3%);transform:none}}@media(prefers-reduced-motion:reduce){.hero-explore span{animation:none}}.discipline-strip{display:block;overflow:hidden;padding:34px 0;margin:0 1.4%;border-bottom:1px solid #e7e8e3;mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent)}.discipline-track{display:flex;width:max-content;animation:discipline-drift 38s linear infinite}.discipline-group{display:flex;flex-shrink:0;align-items:center;gap:clamp(28px,4vw,64px);padding-right:clamp(28px,4vw,64px)}.discipline-group span{font-size:clamp(40px,5.5vw,88px);font-weight:500;letter-spacing:-.045em;line-height:1.2;color:#9b9e96;white-space:nowrap}.discipline-group i{font-size:clamp(25px,3vw,45px);font-style:normal;color:#8fbfb8}.discipline-strip:hover .discipline-track{animation-play-state:paused}@keyframes discipline-drift{to{transform:translate(-50%)}}@media(max-width:700px){.discipline-strip{padding:28px 0;margin:0 3%}}@media(prefers-reduced-motion:reduce){.discipline-track{animation:none;width:auto}.discipline-group{flex-wrap:wrap;justify-content:center;gap:15px;padding:0 12px}.discipline-group span{font-size:clamp(24px,4vw,48px)}.discipline-group:nth-child(2){display:none}}footer{overflow:hidden}.footer-marquee{margin:65px -6.82% 0;overflow:hidden;padding:12px 0 25px}.footer-marquee-track{display:flex;width:max-content;animation:footer-drift 48s linear infinite}.footer-marquee-group{display:flex;flex-shrink:0;align-items:center;gap:clamp(35px,5vw,85px);padding-right:clamp(35px,5vw,85px)}.footer-marquee-group span{font-size:clamp(85px,14vw,230px);font-weight:500;letter-spacing:-.065em;line-height:1.15;white-space:nowrap;color:#f5f6f2}.footer-marquee-group span.serif{font-weight:400;letter-spacing:-.035em;color:var(--lime)}.footer-marquee-group i{font-size:clamp(35px,5vw,80px);color:var(--teal);font-style:normal}.footer-marquee:hover .footer-marquee-track{animation-play-state:paused}footer .footer-bottom{margin-top:25px}@keyframes footer-drift{to{transform:translate(-50%)}}@media(max-width:700px){.footer-marquee{margin-top:40px;padding-bottom:15px}}@media(prefers-reduced-motion:reduce){.footer-marquee-track{animation:none;width:auto}.footer-marquee-group{flex-wrap:wrap;justify-content:center;gap:20px;padding:0 7%}.footer-marquee-group span{font-size:clamp(42px,8vw,110px);white-space:normal}.footer-marquee-group:nth-child(2){display:none}}.studio-stats{margin:0 6% 85px;padding:38px 0 44px;border-top:1px solid #e7e8e3;border-bottom:1px solid #e7e8e3}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:35px}.stat-item{display:flex;flex-direction:column;gap:10px;padding:0 32px;border-left:1px solid #e7e8e3}.stat-item:first-child{padding-left:0;border-left:0}.stat-number{font-size:clamp(50px,6vw,92px);letter-spacing:-.065em;font-weight:500;line-height:1.1;font-variant-numeric:tabular-nums}.stat-suffix{color:#79aaa3}.stat-label{font-size:13px;color:#81877b;letter-spacing:.4px}@media(max-width:700px){.studio-stats{margin-bottom:60px;padding:30px 0}.stats-grid{grid-template-columns:repeat(2,1fr);gap:30px 0}.stat-item{padding:0 20px}.stat-item:nth-child(3){padding-left:0;border-left:0}.stat-number{font-size:58px}.stat-label{font-size:12px}}.about-studio{display:grid;grid-template-columns:1fr 1.65fr;gap:70px;padding-top:110px;padding-bottom:130px}.about-studio h2{font-size:clamp(34px,3.5vw,54px)}.about-scroll-copy p{font-size:clamp(24px,2.4vw,38px);line-height:1.5;letter-spacing:-.8px;margin-bottom:35px}.fill-word{color:#20231f;display:inline-block;background-image:linear-gradient(to right,#20231f 0% 50%,#b5b9b0 50% 100%);background-size:200% 100%;background-position-x:calc(100% - (clamp(0,calc(var(--text-progress,1) * var(--word-count) - var(--word-index)),1)*100%));background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}strong.fill-word{font-weight:700;background-image:linear-gradient(to right,#367b73 0% 50%,#b5b9b0 50% 100%)}.about-scroll-copy .text-link{margin-top:8px}@media(max-width:700px){.about-studio{grid-template-columns:1fr;gap:30px;padding-top:65px;padding-bottom:75px}.about-scroll-copy p{font-size:25px;line-height:1.6;letter-spacing:-.5px;margin-bottom:25px}}@media(prefers-reduced-motion:reduce){.fill-word{background-position-x:0%}}@media(forced-colors:active){.fill-word{background:none;-webkit-text-fill-color:CanvasText}}.booking-section{background:#f7f8f4}.booking-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:28px}.booking-calendar{padding:36px;background:#fff;border:1px solid #e2e6dc;border-radius:22px}.calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.calendar-heading h3{font-size:24px;font-weight:500;letter-spacing:-.6px}.calendar-heading>span{font-size:8px;letter-spacing:1.2px;color:#8b9286}.calendar-month{display:flex;align-items:center;justify-content:space-between;margin:32px 0 18px}.calendar-month h4{font-weight:500;font-size:16px;margin:0}.calendar-month button{border:1px solid #e3e7de;border-radius:50%;width:36px;height:36px;background:#f7f8f4}.calendar-month button:disabled{opacity:.35;cursor:default}.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.calendar-weekday{text-align:center;padding:10px 0;font-size:10px;color:#8b9286}.calendar-day{aspect-ratio:1;max-height:54px;min-height:36px;background:transparent;border:1px solid transparent;border-radius:12px;font-size:13px;color:#465042}.calendar-day:hover:not(:disabled){background:#e4f2f0}.calendar-day.today{border-color:#a3c8c1}.calendar-day.chosen{background:#d8e9e4;border-color:#82b2a8;color:#244c43}.calendar-day:disabled{color:#c6cbc1;cursor:default}.booking-selection{border-top:1px solid #e7e8e3;margin-top:24px;padding-top:22px}.booking-selection p{font-size:12px;min-height:20px;color:#6b7465;margin-bottom:16px}.booking-enquire{width:100%;background:#e5efea;color:#2e5146;border:1px solid #cbded4;border-radius:999px}.booking-enquire:disabled{opacity:.5;cursor:default;transform:none}.booking-selection small{display:block;text-align:center;font-size:10px;line-height:1.6;color:#8b9286;margin-top:14px}.booking-gallery{position:relative;overflow:hidden;border-radius:22px;min-height:540px;background:#293329;isolation:isolate}.booking-gallery>img{position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity 1.2s}.booking-gallery>img.visible{opacity:1}.booking-gallery-shade{position:absolute;inset:0;background:linear-gradient(transparent 40%,#101a15c9)}.booking-gallery-caption{position:absolute;bottom:28px;left:30px;right:30px;color:#fff}.booking-gallery-caption h3{font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-size:38px;font-weight:400;margin:14px 0 24px}.booking-gallery-controls{display:flex;justify-content:space-between;align-items:center}.booking-gallery-controls>div{display:flex;gap:9px}.booking-gallery-controls>div button{width:26px;height:26px;border:0;background:transparent;position:relative}.booking-gallery-controls>div button:after{content:"";position:absolute;inset:10px 5px;border-radius:10px;background:#ffffff65}.booking-gallery-controls>div button.chosen:after{background:#fff;inset:10px 0}.booking-gallery-pause{width:36px;height:36px;border:1px solid #ffffff35;border-radius:50%;background:#ffffff15;color:#fff}@media(max-width:1100px){.header nav{gap:16px;font-size:12px}.booking-calendar{padding:26px}.calendar-heading>span{display:none}}@media(max-width:700px){.booking-grid{grid-template-columns:1fr;gap:20px}.booking-section .section-head{align-items:flex-start;flex-direction:column}.booking-calendar{padding:24px}.booking-gallery{min-height:420px}.booking-gallery-caption h3{font-size:32px}.calendar-day{max-height:none}}@media(prefers-reduced-motion:reduce){.booking-gallery>img{transition:none}}.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-size:11px;color:#81877b;margin-bottom:30px}.breadcrumbs a:hover{color:#367b73}.breadcrumbs [aria-current]{color:#465042}.footer-links{display:flex;flex-wrap:wrap;gap:25px;margin-top:45px;font-size:12px;color:#b4baaf}.footer-links a:hover{color:var(--lime)}.work-intro{max-width:480px;margin-top:20px;font-size:14px;line-height:1.8;color:#73796e}.service-tagline{font-size:22px;color:#73796e}.contact-breadcrumb{grid-column:1/-1;margin-bottom:-50px}.header.home-header:not(.scrolled) nav:not(.open)>a.active{color:var(--lime)}@media(max-width:700px){.contact-breadcrumb{margin-bottom:15px}.footer-links{gap:20px}.work-intro{font-size:12px;max-width:260px}}.feature .showreel-video{display:block;width:100%;height:100%;object-fit:cover}.showreel-toggle{position:absolute;top:24px;right:24px;z-index:3;display:flex;align-items:center;gap:10px;padding:12px 16px;border:1px solid #ffffff40;border-radius:999px;background:#ffffff15;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;font-size:12px}.showreel-toggle:hover{background:#ffffff25}@media(max-width:700px){.showreel-toggle{top:18px;right:18px;font-size:11px}}.showreel-controls{position:absolute;top:24px;right:24px;z-index:3;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;max-width:calc(100% - 48px)}.showreel-controls .showreel-toggle{position:static;min-height:44px}@media(max-width:700px){.showreel-controls{top:18px;right:18px;gap:8px;max-width:calc(100% - 36px)}.showreel-controls .showreel-toggle{padding:10px 12px}}.page-intro{position:fixed;inset:0;z-index:100;background:#f6f7f2;display:grid;place-items:center;overflow:hidden;pointer-events:none;clip-path:inset(0 0 0 0);transition:clip-path .75s cubic-bezier(.76,0,.24,1)}.page-intro.leaving{clip-path:inset(0 0 100% 0)}.intro-glow{position:absolute;width:55vmax;height:55vmax;border-radius:50%;filter:blur(70px);opacity:.35;animation:intro-light 3s ease-in-out both}.intro-glow-teal{background:radial-gradient(circle,#8ccfcb,transparent 65%);top:-35%;right:-15%}.intro-glow-peach{background:radial-gradient(circle,#fbcc99,transparent 65%);bottom:-35%;left:-15%}.intro-brand{position:relative;text-align:center;animation:intro-brand-arrive .8s cubic-bezier(.16,1,.3,1) both}.intro-logo{position:relative;width:160px;height:160px;margin:0 auto 28px;display:grid;place-items:center}.intro-logo img{width:90%;height:90%;object-fit:contain}.intro-orbit{position:absolute;inset:-12px;border:1px solid #7faf9f30;border-radius:50%;border-top:2px solid #8ccfcb;border-right:2px solid #fbcc99;border-bottom:2px solid #d5e79e;animation:intro-orbit 1.8s cubic-bezier(.45,0,.55,1) infinite}.intro-wordmark{font-size:clamp(32px,4vw,54px);font-weight:700;letter-spacing:-2px}.intro-wordmark>span{font-weight:400}.intro-wordmark>i{display:inline-block;font-size:.5em;font-style:normal;vertical-align:middle;margin-left:12px;color:#79aaa3;animation:intro-orbit 7s linear infinite}.intro-caption{font-size:8px;font-weight:500;letter-spacing:2.8px;color:#7b8574;margin-top:18px}.intro-line{width:150px;height:2px;background:#dce3d7;margin:30px auto 0;overflow:hidden;border-radius:5px}.intro-line>span{display:block;width:100%;height:100%;background:linear-gradient(90deg,#8ccfcb,#d5e79e,#fbcc99);transform-origin:left;animation:intro-line 1.2s cubic-bezier(.16,1,.3,1) both}.intro-corner{position:absolute;bottom:30px;left:5%;font-size:8px;letter-spacing:1.8px;color:#87917f}.site-intro-active .headline-phrase,.site-intro-active .hero-logo{animation-play-state:paused}.route-loader{position:fixed;top:0;left:0;right:0;height:3px;z-index:100;overflow:hidden;background:#8ccfcb20;pointer-events:none}.route-loader>span{display:block;width:35%;height:100%;background:linear-gradient(90deg,var(--teal),var(--lime),var(--peach));animation:route-loading 1.1s ease-in-out infinite}@keyframes intro-brand-arrive{0%{opacity:0;transform:translateY(20px);filter:blur(6px)}to{opacity:1;transform:none;filter:blur(0)}}@keyframes intro-orbit{to{transform:rotate(360deg)}}@keyframes intro-line{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes intro-light{0%{transform:scale(.8);opacity:.1}to{transform:scale(1);opacity:.35}}@keyframes route-loading{0%{transform:translate(-100%)}to{transform:translate(390%)}}@media(max-width:700px){.intro-logo{width:130px;height:130px}.intro-corner{font-size:7px}}@media(prefers-reduced-motion:reduce){.page-intro,.route-loader{display:none}}:root{color-scheme:light;--page-bg:#fff;--page-ink:#20231f;--panel:#f7f8f4;--card:#fff;--line:#e2e6dc;--muted-ink:#73796e;--fill-muted:#b5b9b0;--fill-accent:#367b73}:root[data-theme=dark]{color-scheme:dark;--page-bg:#151b18;--page-ink:#eef2e9;--panel:#1c2420;--card:#222c26;--line:#354238;--muted-ink:#a6b3a6;--fill-muted:#58665a;--fill-accent:#8ccfcb;background:var(--page-bg);color:var(--page-ink)}body{background:var(--page-bg);color:var(--page-ink)}.theme-control{display:flex;justify-content:flex-end;align-items:center;gap:16px;margin-top:28px}.theme-label{font-size:10px;color:#b4baaf;letter-spacing:.8px}.theme-options{display:flex;gap:3px;padding:4px;border:1px solid #ffffff25;border-radius:999px;background:#ffffff06}.theme-options button{display:flex;align-items:center;gap:7px;border:0;border-radius:999px;padding:9px 13px;background:transparent;color:#b4baaf;font-size:11px}.theme-options button[aria-pressed=true]{background:#d5e79e20;color:var(--lime)}.theme-options button:hover{background:#ffffff12;color:#fff}:root[data-theme=dark] .header:not(.home-header),:root[data-theme=dark] .header.home-header.scrolled{background:#1b241ec2;color:var(--page-ink);border-color:#ffffff20;box-shadow:0 8px 32px #0003}:root[data-theme=dark] .header nav.open{background:#1b241ef0;color:var(--page-ink);border-color:#ffffff20}:root[data-theme=dark] .header .nav-contact{color:#dbece2;border-color:#adcab32b;background:#c6e0cf0c;box-shadow:inset 0 1px #ffffff10}:root[data-theme=dark] .header .nav-contact:hover{background:#8ccfcb20;color:var(--teal)}:root[data-theme=dark] .header nav>a:hover,:root[data-theme=dark] .active{color:var(--teal)}:root[data-theme=dark] .menu-toggle{color:var(--page-ink)}:root[data-theme=dark] .services-section,:root[data-theme=dark] .booking-section,:root[data-theme=dark] .contact form{background:var(--panel)}:root[data-theme=dark] .service-card,:root[data-theme=dark] .booking-calendar{border-color:var(--line);background:var(--card)}:root[data-theme=dark] .peach{background:#322b23}:root[data-theme=dark] .teal{background:#203331}:root[data-theme=dark] .lime{background:#2b3322}:root[data-theme=dark] .rose{background:#34272b}:root[data-theme=dark] .service-card p,:root[data-theme=dark] .intro,:root[data-theme=dark] .section-description,:root[data-theme=dark] .work-intro,:root[data-theme=dark] .service-tagline,:root[data-theme=dark] .form-note{color:var(--muted-ink)}:root[data-theme=dark] .muted,:root[data-theme=dark] .stat-label,:root[data-theme=dark] .work-caption>span,:root[data-theme=dark] .breadcrumbs,:root[data-theme=dark] .calendar-heading>span,:root[data-theme=dark] .calendar-weekday,:root[data-theme=dark] .booking-selection p,:root[data-theme=dark] .booking-selection small{color:var(--muted-ink)}:root[data-theme=dark] .breadcrumbs [aria-current]{color:var(--page-ink)}:root[data-theme=dark] .text-link span,:root[data-theme=dark] .calendar-month button{background:#2b372e;color:var(--page-ink);border-color:var(--line)}:root[data-theme=dark] .studio-stats,:root[data-theme=dark] .stat-item,:root[data-theme=dark] .booking-selection,:root[data-theme=dark] .discipline-strip{border-color:var(--line)}:root[data-theme=dark] .stat-suffix{color:var(--teal)}:root[data-theme=dark] .fill-word{background-image:linear-gradient(to right,var(--page-ink) 0%,var(--page-ink) 50%,var(--fill-muted) 50%,var(--fill-muted) 100%)}:root[data-theme=dark] strong.fill-word{background-image:linear-gradient(to right,var(--fill-accent) 0%,var(--fill-accent) 50%,var(--fill-muted) 50%,var(--fill-muted) 100%)}:root[data-theme=dark] .calendar-day{color:var(--page-ink)}:root[data-theme=dark] .calendar-day:hover:not(:disabled){background:#8ccfcb20}:root[data-theme=dark] .calendar-day.chosen{background:#36564c;border-color:#8ccfcb;color:#eff9f0}:root[data-theme=dark] .calendar-day:disabled{color:#607064}:root[data-theme=dark] .booking-enquire{background:#2e4439;border-color:#4c6958;color:#d9eee1}:root[data-theme=dark] input,:root[data-theme=dark] textarea,:root[data-theme=dark] select{background:#17201a;color:var(--page-ink);border-color:var(--line)}:root[data-theme=dark] input::placeholder,:root[data-theme=dark] textarea::placeholder{color:#94a18f}:root[data-theme=dark] .dark{background:#d5e79e;color:#202b20}:root[data-theme=dark] .dark:hover{background:#e1efbc}:root[data-theme=dark] .work-image{background:var(--card)}:root[data-theme=dark] .image-chip,:root[data-theme=dark] .image-arrow{background:#243127ed;color:var(--page-ink)}:root[data-theme=dark] .page-intro{background:#151b18;color:var(--page-ink)}:root[data-theme=dark] .intro-caption,:root[data-theme=dark] .intro-corner{color:var(--muted-ink)}:root[data-theme=dark] .intro-line{background:var(--line)}:root[data-theme=dark] .skip{background:var(--card);color:var(--page-ink)}:root[data-theme=dark] footer{background:#101612}@media(max-width:700px){.theme-control{justify-content:flex-start;flex-wrap:wrap;gap:12px}}.contact-now{position:fixed;right:max(24px,env(safe-area-inset-right));bottom:calc(24px + env(safe-area-inset-bottom));z-index:40;display:flex;align-items:center;gap:12px;min-height:54px;padding:8px 18px 8px 8px;border:1px solid #91b8a65c;border-radius:999px;background:#ebf5eee6;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);color:#2a4c3f;box-shadow:0 8px 30px #162d201a;font-size:12px;font-weight:500;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(12px);transition:opacity .3s,transform .3s,visibility .3s,background .2s}.contact-now.visible{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.contact-now-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#8ccfcb35}.contact-now-arrow{font-size:18px;margin-left:4px}.contact-now:hover{background:#dcefe4}:root[data-theme=dark] .contact-now{background:#1f3027e6;color:#d8efe1;border-color:#8ccfcb40;box-shadow:0 8px 30px #0003}:root[data-theme=dark] .contact-now:hover{background:#2d493b}footer{padding-bottom:100px}@media(max-width:700px){.contact-now{right:16px;bottom:calc(16px + env(safe-area-inset-bottom));font-size:11px;min-height:48px;gap:9px}.contact-now-icon{width:32px;height:32px}}html,body{scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar,body::-webkit-scrollbar{display:none;width:0;height:0}.seo-content{max-width:900px;margin:3rem auto;line-height:1.8}.seo-content h2{font-size:clamp(1.6rem,3vw,2.5rem);margin:2.5rem 0 1rem}.seo-content h3{font-size:1.3rem;margin:1.8rem 0 .6rem}.seo-content p{margin:.8rem 0 1.3rem}.seo-content a{text-decoration:underline;text-underline-offset:4px}.seo-content details{border-bottom:1px solid currentColor;padding:1rem 0}.seo-content summary{cursor:pointer;font-weight:600}.seo-content li{margin:.7rem 0}.page-title .serif{white-space:normal}
