:root{--ink:#202824;--forest:#173e3a;--teal:#1e625c;--teal-light:#d9e7e1;--cream:#f8f4ed;--paper:#fffdf9;--blush:#dba7aa;--blush-light:#f2dfdd;--gold:#b99050;--line:#2028242e;--serif:"Iowan Old Style", "Baskerville", "Times New Roman", serif;--sans:"Avenir Next", "Avenir", "Helvetica Neue", Arial, sans-serif;--shadow:0 24px 70px #1a3a3424}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.65}body:before{z-index:-1;content:"";pointer-events:none;background-image:radial-gradient(#1e625c0b .7px,#0000 .7px);background-size:9px 9px;position:fixed;inset:0}img{max-width:100%;display:block}a{color:inherit}button,input,select,textarea{font:inherit}.skip-link{z-index:100;background:var(--paper);border:1px solid var(--ink);padding:.7rem 1rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:50;backdrop-filter:blur(16px);background:#f8f4edeb;border-bottom:1px solid #2028241f;position:sticky;top:0}.nav-shell{grid-template-columns:auto 1fr auto;align-items:center;gap:2rem;width:min(1320px,100% - 3rem);min-height:82px;margin:0 auto;display:grid}.brand{color:var(--forest);align-items:center;text-decoration:none;display:inline-flex}.brand-logo{width:225px;height:auto;display:block}nav{justify-content:center;gap:clamp(1.2rem,2.5vw,2.5rem);display:flex}nav a,.social-links a{letter-spacing:.13em;text-transform:uppercase;font-size:.76rem;font-weight:700;text-decoration:none;position:relative}nav a:after{transform-origin:100%;background:var(--teal);content:"";height:1px;transition:transform .18s;position:absolute;bottom:-.35rem;left:0;right:0;transform:scaleX(0)}nav a:hover:after,nav a:focus-visible:after{transform-origin:0;transform:scaleX(1)}.button{border:1px solid var(--forest);background:var(--forest);color:#fff;cursor:pointer;letter-spacing:.1em;text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;gap:1rem;min-height:54px;padding:.95rem 1.55rem;font-size:.76rem;font-weight:750;line-height:1.2;text-decoration:none;transition:transform .18s,background .18s,color .18s;display:inline-flex}.button:hover,.button:focus-visible{color:var(--forest);background:0 0;transform:translateY(-2px)}.button:disabled{cursor:wait;opacity:.65}.button-small{min-height:44px;padding:.75rem 1.25rem;font-size:.66rem}.text-link{color:var(--forest);letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid;align-items:center;gap:.4rem;padding-bottom:.18rem;font-size:.77rem;font-weight:750;text-decoration:none;display:inline-flex}.text-link:hover,.text-link:focus-visible{color:var(--teal)}:focus-visible{outline-offset:4px;outline:3px solid #dba7aad9}.hero{grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);align-items:center;gap:clamp(3rem,7vw,7rem);width:min(1320px,100% - 3rem);min-height:calc(100svh - 82px);margin:0 auto;padding:clamp(4rem,8vw,7.5rem) 0;display:grid;overflow:hidden}.eyebrow{color:var(--teal);letter-spacing:.2em;text-transform:uppercase;align-items:center;gap:.8rem;margin:0 0 1.15rem;font-size:.72rem;font-weight:800;line-height:1.3;display:flex}.eyebrow:before{content:"";background:currentColor;width:31px;height:1px}h1,h2,h3,blockquote{font-family:var(--serif);margin:0;font-weight:400}h1{letter-spacing:-.06em;max-width:800px;font-size:clamp(4rem,7.25vw,7.7rem);line-height:.86}h1 em,h2 em{color:var(--teal);font-weight:400}.hero-intro{color:#202824c7;max-width:580px;font-family:var(--serif);margin:2rem 0 0;font-size:clamp(1.15rem,1.7vw,1.45rem);line-height:1.55}.hero-actions{flex-wrap:wrap;align-items:center;gap:1.5rem;margin-top:2.3rem;display:flex}.availability{color:#202824a8;letter-spacing:.12em;text-transform:uppercase;margin:1.3rem 0 0 .25rem;font-size:.73rem;font-weight:650}.hero-visual{align-self:center;position:relative}.photo-frame{box-shadow:var(--shadow);overflow:hidden}.photo-team{position:relative}.photo-team img{width:100%;height:auto;display:block}.trust-strip{border-block:1px solid var(--line);grid-template-columns:repeat(3,1fr);width:min(1320px,100% - 3rem);margin:0 auto;display:grid}.trust-strip>div{border-right:1px solid var(--line);align-items:flex-start;gap:1rem;padding:1.8rem clamp(1rem,3vw,2.6rem);display:flex}.trust-strip>div:last-child{border-right:0}.trust-strip p{color:#2028249e;margin:0;font-size:.83rem;line-height:1.5}.trust-strip strong{color:var(--ink);font-family:var(--serif);font-size:1.08rem;font-weight:600}.trust-number{color:var(--blush);font-family:var(--serif);font-size:.8rem}.section{width:min(1220px,100% - 3rem);margin:0 auto;padding:clamp(6rem,10vw,10rem) 0}.about{grid-template-columns:minmax(360px,1.03fr) minmax(360px,.97fr);align-items:center;gap:clamp(4rem,9vw,9rem);display:grid}.about-images{min-height:650px;position:relative}.about-main-image{object-fit:cover;width:84%;height:91%;box-shadow:var(--shadow);border-radius:240px 240px 10px 10px;position:absolute;inset:0 16% 9% 0}.about-detail-image{z-index:2;aspect-ratio:1;border:8px solid var(--cream);object-fit:cover;width:40%;position:absolute;bottom:0;right:0;box-shadow:0 16px 45px #20282429}.image-stamp{z-index:2;aspect-ratio:1;border:1px solid var(--teal);background:var(--teal-light);width:126px;color:var(--teal);letter-spacing:.1em;text-align:center;text-transform:uppercase;border-radius:50%;place-items:center;font-size:.67rem;font-weight:800;line-height:1.5;display:grid;position:absolute;top:3%;right:1%;transform:rotate(8deg)}.about-copy .lead{color:var(--forest);font-family:var(--serif);margin:2.1rem 0 1.2rem;font-size:clamp(1.25rem,1.8vw,1.65rem);line-height:1.5}.about-copy>p:not(.eyebrow,.lead){color:#202824b3;max-width:570px}.arrow-link{margin-top:1.3rem}.services{width:min(1320px,100% - 3rem);padding-top:2rem}.section-heading{grid-template-columns:1fr minmax(270px,.42fr);align-items:end;gap:3rem;padding-bottom:3rem;display:grid}.section-heading>p{color:#202824b3;max-width:440px;margin:0 0 .6rem}.service-grid{border-top:1px solid var(--ink)}.service-card{border-bottom:1px solid var(--line);grid-template-columns:1fr;align-items:center;gap:clamp(1.5rem,3vw,3rem);padding:clamp(2rem,4vw,3.5rem) 0;transition:padding .2s;display:grid;position:relative}.service-card:hover{padding-inline:1rem}.service-card h3{letter-spacing:-.04em;font-size:clamp(2.2rem,3.4vw,3.7rem);line-height:1}.service-card p{color:#202824a8;max-width:610px;margin:.8rem 0 0}.service-number{color:var(--teal);font-family:var(--serif)}.gallery-section{background:var(--forest);color:#fff;padding:clamp(6rem,10vw,10rem) max(1.5rem,50vw - 660px)}.gallery-section .eyebrow,.gallery-section h2 em,.gallery-section .text-link{color:#bcd6ce}.gallery-heading{grid-template-columns:1fr auto;align-items:end;gap:2rem;margin-bottom:3.5rem;display:grid}.gallery-heading .eyebrow{grid-column:1/-1;margin-bottom:-.6rem}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.gallery-item{min-width:0;margin:0;overflow:hidden}.gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.gallery-wide img{object-position:50% 48%}.gallery-item:hover img{transform:scale(1.025)}.testimonial{width:min(1180px,100% - 3rem);margin:0 auto;padding:clamp(7rem,12vw,12rem) 0}.testimonial .eyebrow{justify-content:center}.testimonial-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin-top:3rem;display:grid}.testimonial-card{border:1px solid var(--line);background:var(--paper);flex-direction:column;min-height:320px;padding:clamp(1.8rem,3vw,2.5rem);display:flex;box-shadow:0 18px 50px #173e3a14}.testimonial-card blockquote{color:var(--forest);letter-spacing:-.035em;flex:1;margin:0;font-size:clamp(1.65rem,2.4vw,2.35rem);line-height:1.15}.testimonial-credit{color:#202824a3;letter-spacing:.1em;text-transform:uppercase;gap:.7rem;margin:2rem 0 0;font-size:.65rem;font-weight:700;display:grid}.testimonial-credit a{color:var(--teal);text-decoration:none}.visit{width:min(1180px,100% - 3rem);padding-top:0}.visit-card{background:var(--paper);box-shadow:var(--shadow);padding:clamp(2.8rem,6vw,6rem)}.visit-card dl{grid-template-columns:1fr 1fr;gap:2rem 3rem;margin:3rem 0;display:grid}.visit-card dl div{border-top:1px solid var(--line);padding-top:1rem}.visit-card dt{color:var(--teal);letter-spacing:.15em;text-transform:uppercase;margin-bottom:.55rem;font-size:.68rem;font-weight:800}.visit-card dd{color:#202824c7;margin:0;line-height:1.55}.visit-card dd a{text-underline-offset:3px;text-decoration-thickness:1px}.visit-actions{flex-wrap:wrap;align-items:center;gap:1.5rem;display:flex}.contact-section{background:var(--teal-light);grid-template-columns:minmax(320px,.7fr) minmax(480px,1.3fr);gap:clamp(4rem,8vw,8rem);padding:clamp(6rem,10vw,10rem) max(1.5rem,50vw - 610px);display:grid}.contact-intro>p:not(.eyebrow){color:#202824ad;max-width:480px}.contact-aside{border-top:1px solid #1e625c3d;margin-top:2rem;padding-top:1.5rem}.contact-aside p{margin:0;font-size:.85rem;line-height:1.6}.contact-aside a{color:var(--forest);font-weight:800}.form-wrap{background:var(--paper);padding:clamp(2rem,4vw,3.5rem);box-shadow:0 28px 80px #173e3a21}.form-grid{grid-template-columns:1fr 1fr;gap:1.4rem 1.2rem;display:grid}.form-grid label{gap:.45rem;display:grid}.form-grid label>span{color:var(--forest);letter-spacing:.12em;text-transform:uppercase;font-size:.68rem;font-weight:800}.form-grid input,.form-grid select,.form-grid textarea{width:100%;min-height:52px;color:var(--ink);background:0 0;border:0;border-bottom:1px solid #20282459;border-radius:0;outline:none;padding:.8rem .1rem}.form-grid textarea{resize:vertical;min-height:125px}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-bottom-color:var(--teal);box-shadow:0 1px 0 var(--teal)}.form-grid input::placeholder,.form-grid textarea::placeholder{color:#20282466}.form-full{grid-column:1/-1}.honeypot{clip:rect(0 0 0 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.form-footer{grid-template-columns:auto 1fr;align-items:center;gap:1.4rem;margin-top:2rem;display:grid}.form-footer p{color:#2028248c;margin:0;font-size:.72rem;line-height:1.5}.form-status{margin:1.25rem 0 0;padding:0;font-weight:650}.form-status:empty{display:none}.form-success{background:var(--teal-light);color:var(--forest);padding:.9rem 1rem}.form-error{background:var(--blush-light);color:#712e36;padding:.9rem 1rem}footer{background:var(--forest);color:#fff;padding:4.5rem max(1.5rem,50vw - 660px) 6rem}.footer-top{border-bottom:1px solid #ffffff2e;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:3rem;padding-bottom:3rem;display:grid}.brand-footer{color:#fff}.social-links{flex-wrap:wrap;justify-content:center;gap:1.4rem;display:flex}.social-links a{font-size:.65rem}.footer-phone{color:#fff;letter-spacing:.08em;justify-self:end;font-size:.67rem;font-weight:700}.footer-bottom{color:#fff;letter-spacing:.08em;text-transform:uppercase;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:baseline;gap:2rem;padding-top:1.5rem;font-size:.67rem;font-weight:800;line-height:1.4;display:grid}.footer-bottom p{margin:0}.site-credit{flex-wrap:wrap;align-items:baseline;gap:.4rem;display:flex}.footer-bottom a{color:#fff;font-weight:800}.mobile-cta{display:none}@media (width<=1050px){.nav-shell nav{display:none}.nav-shell{grid-template-columns:1fr auto}.hero{grid-template-columns:1fr .95fr;gap:2rem}.about{gap:4rem}.about-images{min-height:560px}.contact-section{grid-template-columns:1fr 1.35fr;gap:3rem}}@media (width<=780px){body{padding-bottom:62px}.nav-shell{width:min(100% - 2rem,1320px);min-height:70px}.nav-shell>.button{display:none}.brand-logo{width:195px}.hero,.about,.contact-section{grid-template-columns:1fr}.hero{width:min(100% - 2rem,1320px);min-height:auto;padding-top:4.5rem}h1{font-size:clamp(3.8rem,16.4vw,6rem)}.hero-visual{margin-top:1.5rem}.trust-strip{grid-template-columns:1fr;width:calc(100% - 2rem)}.trust-strip>div{border-right:0;border-bottom:1px solid var(--line)}.trust-strip>div:last-child{border-bottom:0}.section{width:min(100% - 2rem,1220px)}.about-images{min-height:540px}.about-main-image{width:90%;inset:0 10% 8% 0}.image-stamp{width:106px;right:-1%}.section-heading,.gallery-heading{grid-template-columns:1fr}.section-heading>p{margin:0}.service-card{grid-template-columns:1fr}.gallery-heading .eyebrow{grid-column:auto;margin-bottom:0}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-item:not(.gallery-wide){aspect-ratio:auto;height:260px}.gallery-wide{aspect-ratio:auto;grid-column:1/-1;height:440px}.testimonial-grid{grid-template-columns:1fr}.testimonial-card,.testimonial-card:last-child{grid-column:auto;min-height:0}.visit{width:min(100% - 2rem,1180px)}.contact-section{padding-inline:1rem}.footer-top{grid-template-columns:1fr}.social-links{justify-content:flex-start}.footer-phone{justify-self:start}.footer-bottom{grid-template-columns:1fr;gap:.6rem}.mobile-cta{z-index:60;border-top:1px solid #fff3;grid-template-columns:.72fr 1.28fr;min-height:62px;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -10px 28px #173e3a2e}.mobile-cta a{background:var(--paper);color:var(--forest);letter-spacing:.1em;text-transform:uppercase;place-items:center;font-size:.7rem;font-weight:800;text-decoration:none;display:grid}.mobile-cta a:last-child{background:var(--forest);color:#fff}}@media (width<=520px){h2{font-size:clamp(3rem,15vw,4.3rem)}.about-images{min-height:420px}.about-detail-image{width:44%}.image-stamp{width:88px;font-size:.56rem}.service-card{grid-template-columns:1fr;gap:.9rem}.service-card h3{font-size:2.35rem}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-item:not(.gallery-wide){height:210px}.gallery-wide{grid-column:1/-1;height:340px}.visit-card{padding:2rem 1.4rem}.visit-card dl{grid-template-columns:1fr}.form-wrap{padding:1.6rem 1.2rem}.form-grid{grid-template-columns:1fr}.form-full{grid-column:auto}.form-footer{grid-template-columns:1fr}.form-footer .button{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}:root{--ink:#18201d;--forest:#103b37;--teal:#17645d;--teal-light:#d5e4de;--cream:#f3eee5;--paper:#fbf8f2;--blush:#d9a2a5;--blush-light:#f0dcda;--line:#18201d29;--shadow:0 34px 100px #0a2a272e;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-soft:cubic-bezier(.22, 1, .36, 1)}body{background:var(--cream);overflow-x:clip}body:before{z-index:0;opacity:.7;background-image:linear-gradient(90deg,#0000 49.9%,#17645d08 50%,#0000 50.1%),radial-gradient(#103b370d .6px,#0000 .6px);background-size:min(25vw,360px) 100%,11px 11px}main,footer{z-index:1;position:relative}section[id]{scroll-margin-top:88px}.site-header{color:#fff;backdrop-filter:none;transition:min-height .5s var(--ease-out), color .4s ease, background .4s ease, border-color .4s ease, box-shadow .4s ease;background:linear-gradient(#0a232073,#0000);border-bottom-color:#fff3;position:fixed;top:0;left:0;right:0}.site-header.is-scrolled{color:var(--ink);backdrop-filter:blur(18px)saturate(130%);background:#f3eee5e8;border-bottom-color:#18201d1a;box-shadow:0 12px 35px #103b3712}.scroll-progress{transform-origin:0;background:var(--blush);pointer-events:none;height:2px;position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0)}.nav-shell{min-height:92px;transition:min-height .4s var(--ease-out)}.site-header.is-scrolled .nav-shell{min-height:74px}.site-header .brand-logo{filter:brightness(0)invert();transition:width .4s var(--ease-out), filter .4s ease}.site-header.is-scrolled .brand-logo{filter:none;width:205px}.site-header nav a:after{background:currentColor}.site-header .button-small{border-color:var(--paper);background:var(--paper);color:var(--forest)}.site-header .button-small:hover,.site-header .button-small:focus-visible{color:#fff;background:0 0}.site-header.is-scrolled .button-small{border-color:var(--forest);background:var(--forest);color:#fff}.site-header.is-scrolled .button-small:hover,.site-header.is-scrolled .button-small:focus-visible{color:var(--forest);background:0 0}.button{transition:transform .4s var(--ease-out), background-color .3s ease, color .3s ease, border-color .3s ease;position:relative;overflow:hidden}.button span[aria-hidden=true]{transition:transform .4s var(--ease-out)}.button:hover span[aria-hidden=true],.button:focus-visible span[aria-hidden=true]{transform:translate(5px)}.hero{isolation:isolate;background:var(--forest);color:#fff;grid-template-columns:minmax(0,1fr);align-items:center;width:100%;max-width:none;min-height:max(760px,100svh);margin:0;padding:clamp(9rem,15vh,12rem) max(1.5rem,50vw - 660px) clamp(6rem,10vh,8rem);display:grid;position:relative}.hero:before{z-index:-1;content:"";pointer-events:none;background:linear-gradient(90deg,#072320fa 0%,#072320e8 35%,#07232047 64%,#07232014 100%),linear-gradient(#0000 60%,#07232073);position:absolute;inset:0}.hero:after{z-index:2;content:"";background:#ffffff73;width:1px;height:15%;position:absolute;bottom:0;right:max(1.5rem,50vw - 660px)}.hero-copy{z-index:3;width:min(64vw,870px);padding-top:2rem;position:relative}.hero .eyebrow{color:var(--blush-light)}.hero h1{color:var(--paper);letter-spacing:-.068em;font-size:clamp(4.8rem,8.8vw,9rem);line-height:.78}.hero h1 span{width:max-content;max-width:100%;display:block}.hero h1 span:nth-child(2){margin-left:clamp(1rem,6vw,6rem)}.hero h1 span:nth-child(3){margin-left:clamp(2rem,12vw,12rem)}.hero h1 em{color:var(--blush)}.hero-intro{color:#ffffffc7;max-width:500px;margin-left:clamp(0rem,5vw,5rem)}.hero-actions,.availability{margin-left:clamp(0rem,5vw,5rem)}.hero .button{border-color:var(--blush-light);background:var(--blush-light);color:var(--forest)}.hero .button:hover,.hero .button:focus-visible{color:#fff;background:0 0}.hero .text-link{color:#fff}.hero .availability{color:#ffffff94}.hero-visual{z-index:-2;transform:translate3d(0, var(--parallax-y,0), 0) scale(1.08);position:absolute;inset:0 0 0 42%;overflow:hidden}.photo-team,.photo-team img{width:100%;height:100%;box-shadow:none}.photo-team img{object-fit:cover;object-position:50% 35%;filter:saturate(.82)contrast(1.04)}.hero-scroll{z-index:4;color:#ffffffbd;letter-spacing:.18em;text-transform:uppercase;writing-mode:vertical-rl;align-items:center;gap:.8rem;font-size:.62rem;font-weight:750;text-decoration:none;display:flex;position:absolute;bottom:2.3rem;right:max(2.4rem,50vw - 660px + 1.5rem)}.hero-scroll i{background:#ffffff47;width:1px;height:52px;display:block;overflow:hidden}.hero-scroll i:after{content:"";width:100%;height:55%;animation:scroll-line 2.1s var(--ease-out) infinite;background:#fff;display:block;transform:translateY(-110%)}.trust-strip{z-index:3;background:var(--blush-light);border:0;width:100%;max-width:none;position:relative}.trust-strip>div{border-right-color:#103b3726;min-height:150px;padding:2.4rem clamp(2rem,5vw,5rem)}.trust-strip p{color:#103b37a3}.trust-strip strong{color:var(--forest);font-size:1.2rem}.trust-number{color:var(--teal);font-size:1.3rem;font-style:italic}.about{grid-template-columns:minmax(420px,1.02fr) minmax(360px,.82fr);gap:clamp(5rem,10vw,11rem);width:min(1320px,100% - 3rem);min-height:100svh;padding-block:clamp(8rem,14vw,14rem)}.about-images{min-height:720px;transform:translate3d(0, var(--parallax-y,0), 0)}.about-main-image{filter:saturate(.88)contrast(1.03);border-radius:48% 48% 3px 3px;width:92%;height:93%;inset:0 8% 7% 0}.about-detail-image{border:10px solid var(--cream);width:38%;bottom:0;right:-5%}.image-stamp{background:var(--paper);border-color:#103b3759;width:142px;top:3%;right:-7%;box-shadow:0 15px 45px #103b371f}.about-copy{position:sticky;top:18vh}h2{letter-spacing:-.065em;font-size:clamp(3.7rem,6vw,6.4rem);line-height:.88}.services{color:#ffffffd1;background:var(--forest);width:min(1320px,100% - 3rem);box-shadow:0 0 0 100vmax var(--forest);clip-path:inset(0 -100vmax);padding-block:clamp(8rem,13vw,13rem)}.services .eyebrow,.services h2 em,.services .service-number{color:var(--blush)}.services h2,.services .service-card h3{color:var(--paper)}.services .section-heading{padding-bottom:clamp(4rem,8vw,7rem)}.services .section-heading>p{color:#ffffff94}.service-grid{border-color:#ffffff8c}.service-card{isolation:isolate;min-height:210px;transition:padding .6s var(--ease-out), color .3s ease;border-color:#ffffff2e;grid-template-columns:1fr}.service-card:before{z-index:-1;transform-origin:bottom;background:var(--paper);content:"";transition:transform .6s var(--ease-out);position:absolute;inset:0 -100vmax;transform:scaleY(0)}.service-card:after{display:none}.service-card:hover,.service-card:focus-within{padding-inline:clamp(.5rem,2vw,2rem)}.service-card:hover:before,.service-card:focus-within:before{transform-origin:top;transform:scaleY(1)}.service-card:hover:after,.service-card:focus-within:after{opacity:1;transform:translate(0)}.service-card h3{font-size:clamp(3rem,5.3vw,6rem);transition:color .35s}.service-card p{color:#ffffff94;font-size:.95rem;transition:color .35s}.gallery-section{background:#0b2f2c;padding-block:clamp(8rem,13vw,13rem)}.gallery-heading{margin-bottom:clamp(4rem,8vw,8rem)}.gallery-grid{grid-template-rows:minmax(300px,58vh) minmax(380px,80vh);grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:clamp(1rem,2.5vw,2.5rem)}.gallery-item:not(.gallery-wide){aspect-ratio:auto}.gallery-item:first-child{align-self:end;height:76%}.gallery-item:nth-child(2){height:100%}.gallery-wide{aspect-ratio:auto;grid-column:1/-1}.gallery-item img{transition:transform 1.2s var(--ease-out), filter .7s ease;filter:saturate(.84);transform:scale(1.035)}.gallery-item:hover img{filter:saturate();transform:scale(1)}.testimonial{width:min(1280px,100% - 3rem);padding-block:clamp(9rem,14vw,15rem)}.testimonial .eyebrow{justify-content:flex-start;margin-left:5%}.testimonial-grid{grid-template-columns:repeat(12,1fr);gap:0;margin-top:clamp(3rem,6vw,6rem)}.testimonial-card{background:var(--paper);border-color:#103b3733;grid-column:1/span 6;min-height:390px;padding:clamp(2.2rem,4vw,4rem);position:relative;box-shadow:0 30px 90px #103b371a}.testimonial-card:nth-child(2){grid-column:7/span 6;margin-top:7rem}.testimonial-card:nth-child(3){z-index:2;grid-column:4/span 6;margin-top:-1px}.testimonial-card:before{color:var(--blush);content:"“";font-family:var(--serif);margin-bottom:1.2rem;font-size:4rem;line-height:.7;display:block}.testimonial-card blockquote{font-size:clamp(1.8rem,3vw,3.1rem)}.visit{width:min(1180px,100% - 3rem);padding-bottom:clamp(8rem,12vw,12rem)}.visit-card{background:var(--forest);color:#fff;padding:clamp(3rem,7vw,7rem);position:relative;overflow:hidden;box-shadow:0 45px 120px #103b3733}.visit-card:after{aspect-ratio:1;content:"";pointer-events:none;border:1px solid #ffffff1f;border-radius:50%;width:min(42vw,540px);position:absolute;top:-30%;right:-10%;box-shadow:0 0 0 4rem #ffffff05,0 0 0 8rem #ffffff03}.visit-card h2,.visit-card .button:hover,.visit-card .button:focus-visible{color:#fff}.visit-card h2 em,.visit-card .eyebrow,.visit-card dt{color:var(--blush)}.visit-card dl{z-index:1;position:relative}.visit-card dl div{border-color:#ffffff38}.visit-card dd{color:#ffffffc2}.visit-card .button{border-color:var(--blush-light);background:var(--blush-light);color:var(--forest)}.visit-card .text-link{color:#fff}.contact-section{background:var(--blush-light);gap:clamp(3rem,8vw,9rem);padding-block:clamp(8rem,13vw,13rem)}.contact-intro{align-self:start;position:sticky;top:18vh}.form-wrap{padding:clamp(2.3rem,5vw,5rem);box-shadow:0 36px 100px #4d34351f}.form-grid input,.form-grid select,.form-grid textarea{transition:border-color .25s,box-shadow .25s,background-color .25s}footer{background:#092a27;padding-top:clamp(5rem,10vw,9rem)}.brand-footer .brand-logo{width:min(360px,100%)}.has-js [data-reveal]{opacity:0;transition:opacity .85s var(--ease-soft), transform .95s var(--ease-soft);transform:translateY(42px)}.has-js [data-reveal=image]{opacity:0;clip-path:none;transition:opacity .9s var(--ease-soft), transform 1.15s var(--ease-soft);transform:translateY(50px)}.has-js [data-reveal].is-visible,.has-js [data-reveal=image].is-visible{opacity:1;transform:translate3d(0, var(--parallax-y,0), 0)}.has-js .service-card:nth-child(2),.has-js .testimonial-card:nth-child(2){transition-delay:.1s}.has-js .service-card:nth-child(3),.has-js .testimonial-card:nth-child(3){transition-delay:.2s}.has-js .hero .eyebrow,.has-js .hero-intro,.has-js .hero-actions,.has-js .availability{opacity:0;animation:hero-fade .9s var(--ease-soft) forwards}.has-js .hero .eyebrow{animation-delay:.18s}.has-js .hero-intro{animation-delay:.72s}.has-js .hero-actions{animation-delay:.85s}.has-js .availability{animation-delay:.93s}.has-js .hero h1 span{opacity:0;animation:hero-line 1.1s var(--ease-soft) forwards;transform:translateY(105%)}.has-js .hero h1 span:first-child{animation-delay:.26s}.has-js .hero h1 span:nth-child(2){animation-delay:.39s}.has-js .hero h1 span:nth-child(3){animation-delay:.52s}.has-js .hero h1{padding-bottom:.2em;overflow:visible}.has-js .hero-visual{clip-path:inset(0 0 100%);animation:hero-image 1.45s var(--ease-soft) 80ms forwards}@keyframes hero-line{to{opacity:1;transform:translateY(0)}}@keyframes hero-fade{to{opacity:1}}@keyframes hero-image{to{clip-path:inset(0)}}@keyframes scroll-line{0%{transform:translateY(-110%)}55%,to{transform:translateY(200%)}}@media (width<=1050px){.hero h1{font-size:clamp(4.7rem,10.5vw,7rem)}.hero-copy{width:min(76vw,760px)}.hero-visual{left:35%}.about{grid-template-columns:minmax(330px,1fr) minmax(330px,.9fr);gap:5rem}.about-images{min-height:600px}.contact-section{grid-template-columns:minmax(280px,.7fr) minmax(420px,1.3fr)}}@media (width<=780px){body{padding-bottom:calc(62px + env(safe-area-inset-bottom))}.site-header,.site-header.is-scrolled{color:var(--ink);backdrop-filter:blur(16px);background:#f3eee5f0}.site-header .brand-logo,.site-header.is-scrolled .brand-logo{filter:none;width:182px}.nav-shell,.site-header.is-scrolled .nav-shell{min-height:70px}.nav-shell nav{grid-area:auto;justify-content:flex-end;padding:0;display:flex;overflow:visible}.nav-shell nav a{display:none}.nav-shell nav a[href="/stylists/"]{color:var(--forest);font-size:.62rem;display:block}.hero{width:100%;min-height:max(700px,100svh);padding:8.5rem 1rem 5.5rem}.hero:before{background:linear-gradient(#07232059 0%,#072320cc 46%,#072320fa 100%),linear-gradient(90deg,#0723207a,#0000)}.hero:after,.hero-scroll{display:none}.hero-copy{align-self:end;width:100%}.hero h1{font-size:clamp(4rem,17vw,6.4rem)}.hero h1 span:nth-child(2){margin-left:.4rem}.hero h1 span:nth-child(3){margin-left:clamp(1rem,10vw,5rem)}.hero-intro,.hero-actions,.availability{margin-left:0}.hero-intro{max-width:35rem;font-size:1.08rem}.hero-visual{transform:translate3d(0, var(--parallax-y,0), 0) scale(1.12);margin:0;inset:0}.photo-team img{object-position:60% 30%}.trust-strip{width:100%}.trust-strip>div{min-height:0;padding:1.8rem 1.2rem}.about{gap:5rem;width:min(100% - 2rem,1320px);min-height:0;padding-block:8rem}.about-copy,.contact-intro{position:static}.about-images{min-height:min(145vw,660px)}.image-stamp{right:-1%}.services{width:min(100% - 2rem,1320px);padding-block:7rem}.service-card{grid-template-columns:1fr;min-height:180px}.service-card:after{display:none}.service-card h3{font-size:clamp(2.7rem,11vw,4rem)}.gallery-section{padding-block:7rem}.gallery-grid{grid-template-rows:300px 440px;grid-template-columns:1fr 1fr}.gallery-item:first-child,.gallery-item:nth-child(2),.gallery-wide{height:100%}.testimonial{width:min(100% - 2rem,1280px);padding-block:8rem}.testimonial .eyebrow{margin-left:0}.testimonial-grid{grid-template-columns:1fr;gap:1rem;display:grid}.testimonial-card,.testimonial-card:nth-child(2),.testimonial-card:nth-child(3){grid-column:auto;min-height:0;margin-top:0}.visit{width:min(100% - 2rem,1180px);padding-bottom:8rem}.contact-section{grid-template-columns:1fr;padding-block:7rem}.mobile-cta{padding-bottom:env(safe-area-inset-bottom);background:var(--forest)}}@media (width<=520px){.hero h1{font-size:clamp(3.6rem,16vw,5.1rem);line-height:.82}.hero-actions{align-items:flex-start}.hero-actions .button{width:100%}.about-detail-image{border-width:6px;right:0}.image-stamp{width:92px}h2{font-size:clamp(3rem,15vw,4.4rem)}.gallery-grid{grid-template-rows:230px 350px;grid-template-columns:1fr 1fr;gap:.6rem}.testimonial-card{padding:2rem 1.5rem}.visit-card{padding:2.6rem 1.4rem}}@media (hover:none){.service-card:hover,.service-card:focus-within{padding-inline:0}.service-card:hover:before,.service-card:focus-within:before{transform:scaleY(0)}.service-card:hover h3,.service-card:focus-within h3{color:var(--paper)}.service-card:hover p,.service-card:focus-within p{color:#ffffff94}}@media (prefers-reduced-motion:reduce){.has-js [data-reveal],.has-js [data-reveal=image],.has-js .hero .eyebrow,.has-js .hero-intro,.has-js .hero-actions,.has-js .availability,.has-js .hero h1 span,.has-js .hero-visual{opacity:1;clip-path:none;transition:none;animation:none;transform:none}.hero-scroll i:after{animation:none}}body:before,.visit-card:after,.service-card:before{display:none}.services .service-card{gap:0;grid-template-columns:minmax(0,1fr)!important}.services .service-card>div{grid-column:1/-1;width:100%;min-width:0}.services .service-card:after{content:none!important;display:none!important}.service-card:hover h3,.service-card:focus-within h3{color:var(--paper)}.service-card:hover p,.service-card:focus-within p{color:#ffffff94}@media (width<=780px){html,body{width:100%;max-width:100%;overflow-x:hidden}.about{gap:3rem;width:min(100% - 2rem,1320px);grid-template-columns:minmax(0,1fr)!important}.about>*{min-width:0}.about-images,.about-copy{width:100%}}
