:root{--ink:#31272c;--muted:#695d60;--cream:#f8f4ee;--rose:#f4e9e7;--line:#ded4cf;--accent:#875663;--white:#fffdfa;--serif:Georgia,'Times New Roman',serif;--sans:'Segoe UI',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--ink);font:16px/1.65 var(--sans)}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.08;letter-spacing:-.035em}h1{font-size:clamp(3.2rem,7.3vw,7.7rem)}h2{font-size:clamp(2.5rem,4.7vw,5rem)}h3{font-size:clamp(1.5rem,2.5vw,2.4rem)}p{color:var(--muted)}:focus-visible{outline:3px solid #9b5d72;outline-offset:4px}.container{width:min(100% - 40px,1300px);margin-inline:auto}.narrow{max-width:780px}.skip-link{position:absolute;top:-100px;left:20px;z-index:100;background:#fff;padding:12px}.skip-link:focus{top:15px}.eyebrow{display:block;margin-bottom:24px;text-transform:uppercase;letter-spacing:.18em;font-size:.69rem;font-weight:700;color:var(--accent)}.lead{font-size:clamp(1.1rem,1.6vw,1.4rem);line-height:1.65;max-width:640px}.section{padding:clamp(76px,9vw,150px) 0}.section-cream{background:var(--cream)}.section-rose{background:var(--rose)}.section-heading{max-width:850px;margin-bottom:55px}.section-heading h2{margin-bottom:18px}.section-heading p{max-width:660px}.button,.button-small,.nav-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid var(--ink);background:var(--ink);color:#fff;padding:16px 25px;min-height:54px;font-size:.88rem;font-weight:600;letter-spacing:.02em;transition:background .2s,color .2s,transform .2s}.button:hover,.button-small:hover,.nav-cta:hover{background:var(--accent);border-color:var(--accent);transform:translateY(-2px)}.button-small{min-height:42px;padding:10px 16px}.button-quiet{background:transparent;border:1px solid #a28e91;color:var(--ink);padding:10px 16px;min-height:42px}.button-quiet:hover{background:var(--cream)}.link-arrow{display:inline-flex;align-items:center;gap:28px;border-bottom:1px solid var(--ink);padding:10px 0;font-weight:600;font-size:.9rem}.link-arrow span{font-size:1.3rem}.link-arrow:hover{color:var(--accent);border-color:var(--accent)}.text-button{padding:0;border:0;background:none;color:var(--accent);text-decoration:underline;text-underline-offset:4px}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,253,250,.97);border-bottom:1px solid var(--line)}.header-inner{min-height:86px;display:flex;justify-content:space-between;align-items:center;gap:24px}.brand{position:relative;display:flex;align-items:center;min-width:220px;min-height:54px}.brand-wordmark{font:italic 1.15rem/1.05 var(--serif);max-width:210px}.brand-wordmark strong{display:block;font-style:normal;font-size:1.32rem;font-weight:400}.brand-logo{display:none;max-width:180px;max-height:68px;object-fit:contain}.brand.has-logo .brand-wordmark{display:none}.brand.has-logo .brand-logo{display:block}.site-nav{display:flex;align-items:center;gap:clamp(12px,1.7vw,28px)}.site-nav>a:not(.nav-cta){font-size:.81rem;white-space:nowrap}.site-nav>a[aria-current]{color:var(--accent);text-decoration:underline;text-underline-offset:8px}.nav-cta{min-height:40px;padding:8px 16px;font-size:.78rem}.menu-toggle{display:none}.home-hero{background:var(--cream)}.home-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:6%;align-items:center;min-height:calc(100svh - 86px);padding-top:50px;padding-bottom:50px}.home-hero h1{max-width:750px;margin-bottom:30px}.home-hero em{color:var(--accent);font-weight:400}.hero-copy .lead{margin-bottom:33px}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:26px}.hero-caption{display:block;margin-top:clamp(40px,7vw,110px);font:italic 1rem var(--serif);color:var(--accent)}.hero-visual{position:relative;max-width:570px;width:100%;justify-self:end}.visual-caption{position:absolute;bottom:26px;left:-35px;background:var(--white);padding:14px 20px;font:italic .9rem var(--serif);box-shadow:0 9px 25px #54372d15}.media{position:relative;overflow:hidden;background:linear-gradient(145deg,#e6d5cc,#f9f2eb 54%,#d9c3be);isolation:isolate}.media:after{content:'';position:absolute;inset:0;border:1px solid #76514b22;pointer-events:none}.media:before{content:'';position:absolute;width:57%;height:120%;top:-10%;right:14%;border-radius:50%;background:#fff7;filter:blur(45px);transform:rotate(22deg)}.media img{display:none;position:relative;z-index:1;width:100%;height:100%;object-fit:cover}.media.loaded img{display:block}.media.portrait{aspect-ratio:4/5}.media.image{aspect-ratio:4/3}.zone-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.zone-card{display:block;border:1px solid var(--line);background:#fff;transition:transform .25s,box-shadow .25s}.zone-card:hover{transform:translateY(-5px);box-shadow:0 16px 30px #5a41301a}.zone-card .media{aspect-ratio:4/4.25}.zone-info{display:grid;position:relative;padding:25px 26px 30px;gap:7px}.zone-info small{color:var(--accent);font-size:.67rem;letter-spacing:.16em;font-weight:700}.zone-info strong{font:normal clamp(1.5rem,2.4vw,2.5rem)/1.1 var(--serif);max-width:270px}.zone-info span{font-size:.8rem;color:var(--muted)}.zone-info b{position:absolute;bottom:24px;right:25px;font-weight:400;font-size:1.4rem}.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(36px,8vw,130px)}.steps{list-style:none;padding:0;margin:0}.steps li{display:grid;grid-template-columns:55px 1fr;border-bottom:1px solid var(--line);padding:19px 0;gap:18px}.steps li:first-child{border-top:1px solid var(--line)}.steps li>span{color:var(--accent);font:italic 1.3rem var(--serif)}.steps h3{font-size:1.6rem;margin:0 0 4px}.steps p{margin:0;font-size:.9rem}.result-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:27px}.result-preview .media{aspect-ratio:4/5}.quiz{padding:clamp(25px,4vw,55px);background:var(--white);min-height:395px;box-shadow:0 14px 48px #5f3b3e0a}.quiz h3{margin-bottom:34px}.quiz-options{display:grid;gap:10px}.quiz-options button{display:flex;justify-content:space-between;align-items:center;background:var(--cream);border:1px solid var(--line);text-align:left;padding:14px 18px;min-height:55px}.quiz-options button:hover{background:var(--rose);border-color:var(--accent)}.quiz .text-button{margin-top:24px}.quiz-note{font:italic 1rem var(--serif);color:var(--accent)}.faq-columns{display:grid;grid-template-columns:.82fr 1.18fr;gap:10%}.faq-list details{border-top:1px solid var(--line)}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;padding:22px 0;font-weight:600}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:1.4rem;font-weight:300;line-height:1}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{padding-right:30px;padding-bottom:17px;margin:0}.endcap{padding:clamp(90px,10vw,155px) 0;background:#e9dcd5;text-align:center}.endcap h2{max-width:850px;margin:0 auto 20px}.endcap p{margin:0 auto 28px;max-width:550px}.endcap .eyebrow{margin-bottom:20px}.interior-hero{background:var(--cream)}.interior-grid{display:grid;grid-template-columns:1.05fr .7fr;align-items:center;gap:10%;min-height:550px;padding-block:65px}.interior-grid h1{font-size:clamp(3rem,6vw,6.5rem)}.interior-grid .portrait{max-height:560px}.breadcrumbs{padding-block:20px;display:flex;gap:12px;color:var(--muted);font-size:.78rem}.breadcrumbs a:last-child{color:var(--accent)}.service-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:50px 1fr auto 30px;align-items:center;gap:30px;border-bottom:1px solid var(--line);padding:36px 0}.service-row:hover h2,.service-row:hover b{color:var(--accent)}.service-row>span{font:italic 1.2rem var(--serif);color:var(--accent)}.service-row h2{font-size:clamp(2rem,3vw,3.4rem);margin:0 0 9px}.service-row p{margin:0;max-width:560px}.service-row strong{white-space:nowrap}.service-row b{font-size:1.5rem;font-weight:400}.two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.price-card{display:flex;flex-direction:column;justify-content:space-between;gap:45px;padding:clamp(28px,4vw,52px);border:1px solid var(--line);background:var(--white);min-height:330px}.price-card p{max-width:450px}.price-row{display:flex;justify-content:space-between;align-items:center;gap:22px;flex-wrap:wrap}.price-row strong{font:normal 1.6rem var(--serif);white-space:nowrap}.price-row .button{font-size:.78rem;padding:12px 15px}.gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.gallery-card{padding:0;border:0;background:transparent;text-align:left}.gallery-card .media{aspect-ratio:4/5}.gallery-card:hover{opacity:.85}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}.filters button{border:1px solid var(--line);background:transparent;padding:9px 19px}.filters button.active,.filters button:hover{background:var(--ink);color:#fff}.gallery-fallback{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery-fallback div{aspect-ratio:4/5;background:linear-gradient(145deg,#e6d5cc,#f9f2eb 54%,#d9c3be);border:1px solid var(--line)}.before-after{min-width:0}.comparison{position:relative;aspect-ratio:1;background:#e6d5cc;overflow:hidden}.comparison img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.before-wrap{position:absolute;inset:0;clip-path:inset(0 50% 0 0)}.compare-line{position:absolute;z-index:2;top:0;bottom:0;left:50%;border-left:2px solid #fff}.comparison input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;z-index:3}.compare-labels{display:flex;justify-content:space-between}.lightbox{position:fixed;inset:0;z-index:200;background:#181317ed;color:#fff;display:flex;align-items:center;justify-content:center;gap:20px;padding:50px 15px}.lightbox[hidden],[hidden]{display:none!important}.lightbox figure{margin:0;max-width:min(80vw,900px)}.lightbox figure img{max-height:78vh;width:auto;margin:auto;object-fit:contain}.lightbox figcaption{text-align:center;padding:12px}.lightbox button{border:1px solid #fff8;color:#fff;background:#ffffff16;font-size:2rem;width:48px;height:48px}.lightbox-close{position:absolute;top:20px;right:20px}.callout,.contact-card{margin-top:45px;background:var(--rose);padding:36px}.callout .button{display:flex;margin-top:22px;width:max-content}.contact-card{margin-top:0}.contact-card h3{font-size:2.6rem}address{font-style:normal;font-size:1.25rem;line-height:1.8}.privacy-page h1{font-size:clamp(3.3rem,6vw,6rem)}.privacy-page h2{font-size:2rem;margin-top:45px}.privacy-page a:not(.button){color:var(--accent);text-decoration:underline}.not-found{min-height:60vh}.not-found h1{font-size:clamp(3rem,6vw,6rem)}.site-footer{padding:75px 0 25px;background:#2f282b;color:#f9f3f0}.site-footer p{color:#d9cbca}.footer-grid{display:grid;grid-template-columns:1.5fr .8fr 1fr;gap:55px}.footer-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.footer-brand{font:italic 1.8rem var(--serif)}.footer-grid strong{text-transform:uppercase;letter-spacing:.15em;font-size:.7rem;color:#d9b5b3}.footer-grid a:not(.footer-brand){font-size:.85rem}.footer-bottom{border-top:1px solid #ffffff38;margin-top:70px;padding-top:25px;display:flex;justify-content:space-between;gap:25px;font-size:.78rem;color:#d9cbca}.footer-bottom>div{display:flex;gap:25px}.footer-bottom .text-button{color:#f4d6d2}.floating-wa{position:fixed;right:24px;bottom:24px;z-index:45;background:#fff;color:var(--ink);padding:12px 18px;border:1px solid var(--line);box-shadow:0 8px 32px #31272c2c;font-size:.82rem;font-weight:700}.floating-wa span{color:var(--accent)}.consent{position:fixed;z-index:90;bottom:15px;left:15px;width:min(470px,calc(100% - 30px));padding:20px;background:#fff;border:1px solid var(--line);box-shadow:0 15px 45px #24151635}.consent p{margin:0 0 14px;font-size:.8rem}.consent a{text-decoration:underline}.consent>div{display:flex;gap:10px;justify-content:flex-end}
@media(max-width:1090px){.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;border:0;background:transparent}.menu-toggle span{width:25px;border-top:2px solid var(--ink)}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;padding:20px;background:var(--white);border-bottom:1px solid var(--line);box-shadow:0 10px 20px #30212710;flex-direction:column;align-items:stretch;gap:0}.site-nav.open{display:flex}.site-nav a:not(.nav-cta){padding:12px 20px}.site-nav .nav-cta{margin:10px 20px;justify-content:center}.header-inner{min-height:72px}.home-hero-grid{min-height:auto}.hero-caption{margin-top:50px}}
@media(max-width:760px){.container{width:min(100% - 32px,1300px)}.home-hero-grid,.interior-grid,.split,.faq-columns{grid-template-columns:1fr}.home-hero-grid{padding:75px 0 28px;gap:45px}.home-hero h1{font-size:clamp(3.2rem,13vw,5.5rem)}.hero-visual{justify-self:center;width:min(100%,490px)}.hero-visual .portrait{aspect-ratio:5/4}.visual-caption{left:8px;bottom:8px}.interior-grid{min-height:auto;padding-block:65px;gap:35px}.interior-grid .portrait{aspect-ratio:5/3;max-height:380px}.zone-grid{grid-template-columns:1fr;gap:14px}.zone-card{display:grid;grid-template-columns:40% 60%}.zone-card .media{height:100%;aspect-ratio:1}.zone-info{padding:22px}.zone-info strong{font-size:1.8rem}.result-preview{gap:8px}.service-row{grid-template-columns:35px 1fr 22px;gap:12px}.service-row strong{grid-column:2;grid-row:2}.service-row b{grid-column:3;grid-row:1}.service-row p{font-size:.9rem}.two-col{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr;gap:45px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;margin-top:45px}.section{padding:75px 0}.section-heading{margin-bottom:35px}.faq-columns{gap:35px}}
@media(max-width:420px){.brand{min-width:0}.brand-wordmark{font-size:1rem}.brand-wordmark strong{font-size:1.15rem}.zone-card{grid-template-columns:1fr}.zone-card .media{aspect-ratio:16/10}.zone-info strong{font-size:1.7rem}.actions{align-items:flex-start;flex-direction:column}.price-row .button{width:100%}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.footer-bottom>div{flex-wrap:wrap}.consent>div{justify-content:stretch}.consent button{flex:1}.lightbox{gap:5px;padding-inline:5px}.lightbox button{width:35px;height:44px}.lightbox figure{max-width:calc(100vw - 90px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
