@import url('https://fonts.googleapis.com/css2?family=Instrument+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Instrument+Serif:ital@0;1&family=Italiana&display=swap');

:root { --pearl:#fffaf8; --blush:#fce4e1; --neon:#f6a49c; --rose:#d9675f; --mulberry:#7a4249; --ink:#25191f; --wine:#4b2632; --gold:#8c5f2c; --line:rgba(140,95,44,.44); --serif:'Italiana',Georgia,serif; --accent:'Instrument Serif',Georgia,serif; --sans:'Instrument Sans',Arial,sans-serif; --page:min(1240px,calc(100vw - 80px)); --ease:cubic-bezier(.2,.76,.28,1); }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; overflow-x:hidden; background:var(--ink); color:var(--mulberry); font-family:var(--sans); font-size:16px; line-height:1.55; } img { display:block; width:100%; height:100%; object-fit:cover; } a { color:inherit; text-decoration:none; } button { color:inherit; font:inherit; }.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }.skip-link { position:fixed; top:-60px; left:20px; z-index:300; padding:10px 14px; background:var(--neon); color:var(--ink); font-weight:700; }.skip-link:focus { top:20px; }.section-shell { width:var(--page); margin-inline:auto; }
.announcement-bar { min-height:33px; display:flex; align-items:center; justify-content:center; gap:10px; padding:5px 20px; border-bottom:1px solid rgba(246,164,156,.24); color:rgba(255,250,248,.66); font-size:9px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; }.announcement-dot { width:3px; height:3px; border-radius:50%; background:var(--neon); }.site-header { position:sticky; top:0; z-index:100; background:rgba(37,25,31,.91); backdrop-filter:blur(16px); color:var(--pearl); }.nav-wrap { width:var(--page); min-height:88px; display:flex; align-items:center; gap:32px; margin:auto; }.brand-logo { display:block; width:165px; flex:0 0 auto; }.brand-logo img { width:100%; height:auto; object-fit:contain; }.primary-nav { display:flex; align-items:center; gap:clamp(18px,3vw,42px); margin-left:auto; }.primary-nav a { position:relative; padding-block:8px; color:rgba(255,250,248,.86); font-size:11px; font-weight:600; letter-spacing:.11em; text-transform:uppercase; }.primary-nav a::after { position:absolute; right:0; bottom:1px; left:auto; width:0; height:1px; background:var(--neon); content:''; transition:width .3s var(--ease); }.primary-nav a:hover::after,.primary-nav a:focus-visible::after { left:0; width:100%; }.nav-cta,.button { display:inline-flex; align-items:center; justify-content:center; gap:12px; min-height:47px; border:1px solid transparent; padding:12px 18px; font-size:10px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; transition:transform .24s var(--ease),background .24s ease,color .24s ease,border-color .24s ease; }.nav-cta { margin-left:8px; border-color:rgba(246,164,156,.76); color:var(--neon); }.nav-cta:hover,.nav-cta:focus-visible { background:var(--neon); color:var(--ink); transform:translateY(-2px); }.nav-toggle { display:none; border:0; padding:8px 0; background:transparent; color:var(--pearl); cursor:pointer; }.nav-toggle span:not(.sr-only) { display:block; width:25px; height:1px; margin:5px 0; background:currentColor; transition:transform .2s ease; }
.eyebrow { display:flex; align-items:center; gap:9px; margin:0 0 18px; color:var(--gold); font-size:9px; font-weight:700; letter-spacing:.16em; line-height:1.35; text-transform:uppercase; }.eyebrow span { width:3px; height:3px; border-radius:50%; background:var(--rose); } h1,h2,h3,p { margin-top:0; } h1,h2 { font-family:var(--serif); font-weight:400; letter-spacing:-.052em; line-height:.9; } h1 em,h2 em { color:var(--rose); font-family:var(--accent); font-weight:400; letter-spacing:-.06em; }.button-primary { border-color:var(--neon); background:var(--neon); color:var(--ink); }.button-primary:hover,.button-primary:focus-visible { border-color:var(--rose); background:var(--rose); color:var(--pearl); transform:translateY(-3px); }.button-ghost { border-color:rgba(246,164,156,.7); color:var(--neon); }.button-ghost:hover,.button-ghost:focus-visible { background:var(--neon); color:var(--ink); transform:translateY(-3px); }.text-link { display:inline-flex; align-items:center; gap:11px; border-bottom:1px solid var(--gold); padding-bottom:5px; color:var(--gold); font-size:10px; font-weight:700; letter-spacing:.11em; text-transform:uppercase; transition:color .2s ease,border-color .2s ease; }.text-link span { font-size:17px; line-height:.7; transition:transform .2s var(--ease); }.text-link:hover,.text-link:focus-visible { border-color:var(--rose); color:var(--rose); }.text-link:hover span,.text-link:focus-visible span { transform:translateX(4px); }
.atelier-hero { position:relative; display:grid; grid-template-columns:minmax(0,.92fr) minmax(440px,1.08fr); min-height:calc(100vh - 121px); overflow:hidden; background:radial-gradient(circle at 76% 15%,rgba(217,103,95,.26),transparent 27%),linear-gradient(125deg,#1e141a 0%,#352029 59%,#4b2632 100%); color:var(--pearl); }.atelier-hero-copy { position:relative; z-index:2; display:flex; justify-content:center; flex-direction:column; max-width:630px; padding:clamp(80px,11vw,150px) 55px clamp(95px,9vw,130px) max(40px,calc((100vw - min(1240px,calc(100vw - 80px)))/2)); }.atelier-hero .eyebrow { color:var(--neon); }.atelier-hero h1 { max-width:640px; margin-bottom:29px; color:var(--pearl); font-size:clamp(75px,9vw,138px); }.atelier-hero h1 em { color:var(--neon); }.hero-intro { max-width:450px; margin-bottom:35px; color:rgba(255,250,248,.82); font-size:18px; line-height:1.67; }.hero-actions { display:flex; align-items:center; gap:29px; flex-wrap:wrap; }.atelier-hero .text-link { border-color:rgba(246,164,156,.7); color:var(--pearl); }.atelier-hero .text-link:hover,.atelier-hero .text-link:focus-visible { color:var(--neon); }.hero-address { display:flex; align-items:flex-start; gap:9px; margin-top:53px; color:rgba(255,250,248,.56); font-size:10px; font-weight:600; letter-spacing:.12em; line-height:1.65; text-transform:uppercase; }.pin { margin-top:4px; color:var(--neon); font-size:9px; }.atelier-hero-image { position:relative; min-height:660px; overflow:hidden; border-left:1px solid rgba(246,164,156,.46); }.atelier-hero-image img { filter:saturate(.75) contrast(1.08); object-position:55% center; }.image-wash { position:absolute; inset:0; background:linear-gradient(90deg,rgba(37,25,31,.48),transparent 38%),linear-gradient(180deg,transparent 58%,rgba(37,25,31,.64)); }.hero-image-note { position:absolute; z-index:1; right:29px; bottom:25px; margin:0; color:var(--neon); font-size:9px; font-weight:700; letter-spacing:.17em; }.hero-seal { position:absolute; z-index:2; right:clamp(23px,5vw,75px); bottom:clamp(80px,10vw,130px); display:flex; width:150px; height:150px; align-items:center; justify-content:center; flex-direction:column; border:1px solid var(--neon); border-radius:50%; background:rgba(37,25,31,.82); color:var(--pearl); font-family:var(--accent); font-size:18px; line-height:1.04; text-align:center; transform:rotate(-8deg); backdrop-filter:blur(8px); }.hero-seal::before { position:absolute; inset:7px; border:1px solid rgba(246,164,156,.38); border-radius:inherit; content:''; }.hero-seal span,.hero-seal i { position:relative; }.hero-seal i { margin-top:8px; color:var(--neon); font-size:20px; font-style:normal; }.hero-orbit { position:absolute; z-index:1; border:1px solid rgba(246,164,156,.16); border-radius:50%; pointer-events:none; }.orbit-one { width:520px; height:520px; left:-350px; bottom:-230px; }.orbit-two { width:260px; height:260px; left:-170px; bottom:-100px; }
.atelier-statement { display:grid; grid-template-columns:.88fr 1.12fr; gap:11%; padding:129px 0 145px; background:var(--pearl); }.statement-count { display:grid; grid-template-columns:55px 1fr; gap:20px; padding-top:10px; border-top:1px solid var(--line); }.statement-count span { color:var(--gold); font-family:var(--serif); font-size:27px; }.statement-count p { max-width:270px; margin:0; color:var(--gold); font-family:var(--accent); font-size:24px; line-height:1.14; }.statement-copy { max-width:680px; }.statement-copy h2 { margin-bottom:31px; font-size:clamp(62px,7.2vw,110px); }.statement-copy > p { max-width:490px; margin-bottom:31px; font-size:18px; line-height:1.65; }
.dark-care { position:relative; overflow:hidden; padding:127px 0 133px; background:radial-gradient(circle at 86% 22%,rgba(217,103,95,.28),transparent 23%),linear-gradient(140deg,var(--wine),var(--ink)); color:var(--pearl); }.dark-care::before { position:absolute; width:620px; height:620px; left:-440px; bottom:-360px; border:1px solid rgba(246,164,156,.18); border-radius:50%; content:''; }.dark-care-head { position:relative; z-index:1; display:grid; grid-template-columns:1fr .56fr; gap:9%; align-items:end; margin-bottom:57px; }.dark-care .eyebrow { color:var(--neon); }.dark-care h2 { font-size:clamp(59px,6.3vw,96px); }.dark-care h2 em { color:var(--neon); }.dark-care-head > p { max-width:350px; margin:0 0 7px; color:rgba(255,250,248,.72); font-size:16px; line-height:1.65; }.care-grid { position:relative; z-index:1; display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }.care-card { position:relative; display:flex; min-height:430px; flex-direction:column; overflow:hidden; padding:25px 26px 24px; border:1px solid rgba(246,164,156,.37); background:rgba(255,250,248,.035); color:var(--pearl); transition:transform .3s var(--ease),background .3s ease; }.care-card::before { position:absolute; width:300px; height:300px; right:-225px; bottom:-210px; border:1px solid rgba(246,164,156,.23); border-radius:50%; content:''; }.care-card:hover { background:rgba(246,164,156,.09); transform:translateY(-7px); }.care-card-rose { border-color:var(--neon); background:var(--neon); color:var(--ink); }.care-card-rose::before { border-color:rgba(75,38,50,.19); }.care-card-rose:hover { background:#f9b4ae; }.care-card-top { position:relative; display:flex; justify-content:space-between; gap:10px; padding-bottom:17px; border-bottom:1px solid currentColor; color:var(--neon); font-size:9px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; opacity:.9; }.care-card-rose .care-card-top { color:var(--wine); }.care-card h3 { position:relative; margin:auto 0 21px; font-family:var(--serif); font-size:clamp(42px,4.4vw,62px); font-weight:400; letter-spacing:-.05em; line-height:.87; }.care-card p { position:relative; max-width:265px; margin:0; font-size:14px; line-height:1.55; }.care-card a { position:absolute; right:22px; bottom:16px; color:var(--neon); font-family:var(--accent); font-size:42px; line-height:1; }.care-card-rose a { color:var(--wine); }
.atelier-story { display:grid; grid-template-columns:minmax(350px,1.05fr) minmax(0,.95fr); align-items:stretch; background:var(--pearl); }.atelier-story-image { position:relative; min-height:720px; overflow:hidden; background:var(--wine); }.atelier-story-image img { filter:saturate(.76) contrast(1.03); object-position:center; }.atelier-story-image::after { position:absolute; inset:0; background:linear-gradient(180deg,transparent 62%,rgba(37,25,31,.63)); content:''; }.story-image-caption { position:absolute; z-index:1; right:29px; bottom:27px; color:var(--neon); font-size:9px; font-weight:700; letter-spacing:.15em; text-align:right; }.atelier-story-copy { align-self:center; max-width:560px; padding:90px clamp(40px,7vw,115px); }.atelier-story-copy h2 { margin-bottom:28px; font-size:clamp(58px,6.5vw,98px); }.atelier-story-copy > p:not(.eyebrow) { max-width:450px; margin-bottom:18px; font-size:17px; line-height:1.65; }.proof-row { display:flex; flex-wrap:wrap; gap:8px; margin:28px 0 5px; }.proof-row span { border:1px solid var(--gold); padding:8px 9px; color:var(--gold); font-size:8px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }.atelier-story-copy .button-ghost { margin-top:21px; border-color:var(--mulberry); color:var(--mulberry); }.atelier-story-copy .button-ghost:hover,.atelier-story-copy .button-ghost:focus-visible { border-color:var(--mulberry); background:var(--mulberry); color:var(--pearl); }
.atelier-results { padding:130px 0 143px; background:radial-gradient(circle at 7% 12%,rgba(217,103,95,.25),transparent 26%),linear-gradient(125deg,#342029,var(--ink)); color:var(--pearl); }.results-shell { display:grid; grid-template-columns:.73fr 1.27fr; gap:clamp(52px,8vw,128px); align-items:center; }.results-intro { max-width:430px; }.atelier-results .eyebrow { color:var(--neon); }.results-intro h2 { margin-bottom:29px; font-size:clamp(58px,6vw,90px); }.results-intro h2 em { color:var(--neon); }.results-intro > p:not(.eyebrow):not(.results-note) { margin-bottom:29px; color:rgba(255,250,248,.75); font-size:17px; line-height:1.65; }.results-note { max-width:320px; margin:20px 0 0; color:var(--neon); font-size:9px; font-weight:700; letter-spacing:.1em; line-height:1.52; text-transform:uppercase; }.results-gallery { display:grid; min-height:500px; gap:28px; }.results-empty { position:relative; display:flex; min-height:500px; align-items:center; justify-content:center; flex-direction:column; overflow:hidden; border:1px solid rgba(246,164,156,.6); background:radial-gradient(circle at 80% 20%,rgba(217,103,95,.3),transparent 28%),rgba(255,250,248,.035); padding:45px; color:var(--pearl); text-align:center; }.results-empty::before { position:absolute; width:470px; height:470px; left:-270px; top:-250px; border:1px solid rgba(246,164,156,.21); border-radius:50%; content:''; }.results-empty>* { position:relative; }.results-empty span { margin-bottom:17px; color:var(--neon); font-size:10px; font-weight:700; letter-spacing:.17em; }.results-empty p { max-width:380px; margin-bottom:14px; font-family:var(--accent); font-size:40px; line-height:1.02; }.results-empty small { max-width:270px; color:rgba(255,250,248,.68); font-size:11px; line-height:1.45; }.result-story { position:relative; }.result-comparison { position:relative; aspect-ratio:4 / 5; min-height:500px; overflow:hidden; border:1px solid rgba(246,164,156,.65); background:var(--ink); box-shadow:0 26px 65px rgba(0,0,0,.27); isolation:isolate; }.result-after,.result-before { position:absolute; inset:0; }.result-after::after { position:absolute; inset:0; background:linear-gradient(180deg,rgba(37,25,31,.22),transparent 25%,transparent 72%,rgba(37,25,31,.36)); content:''; pointer-events:none; }.result-after img,.result-before img { width:100%; height:100%; object-fit:cover; }.result-before { z-index:2; width:var(--comparison-position,50%); overflow:hidden; }.result-before img { width:var(--comparison-image-width,100%); max-width:none; }.comparison-casebar { position:absolute; z-index:4; top:0; right:0; left:0; display:flex; justify-content:space-between; gap:15px; padding:15px 18px; background:linear-gradient(180deg,rgba(37,25,31,.65),transparent); color:rgba(255,250,248,.85); font-size:8px; font-weight:700; letter-spacing:.15em; text-transform:uppercase; pointer-events:none; }.comparison-casebar span:last-child { color:var(--neon); }.comparison-label { position:absolute; z-index:4; top:52px; display:grid; gap:2px; padding:8px 10px; border:1px solid rgba(255,250,248,.68); background:rgba(37,25,31,.73); color:var(--pearl); font-size:9px; font-weight:700; letter-spacing:.13em; line-height:1.1; text-transform:uppercase; backdrop-filter:blur(8px); pointer-events:none; }.comparison-label small { color:var(--neon); font-size:7px; letter-spacing:.1em; }.comparison-label-before { left:18px; }.comparison-label-after { right:18px; text-align:right; }.comparison-divider { position:absolute; z-index:3; top:0; bottom:0; left:calc(var(--comparison-position,50%) - .5px); width:1px; background:var(--pearl); box-shadow:0 0 0 1px rgba(37,25,31,.26); pointer-events:none; }.comparison-range { position:absolute; z-index:5; inset:0; width:100%; height:100%; margin:0; cursor:ew-resize; opacity:0; }.result-comparison:has(.comparison-range:focus-visible) { outline:2px solid var(--neon); outline-offset:4px; }.comparison-handle { position:absolute; z-index:4; left:calc(var(--comparison-position,50%) - 28px); top:calc(50% - 28px); display:grid; width:56px; height:56px; place-items:center; border:1px solid var(--pearl); border-radius:50%; background:var(--mulberry); box-shadow:0 5px 20px rgba(0,0,0,.35),inset 0 0 0 5px rgba(255,250,248,.12); color:var(--neon); font-size:22px; pointer-events:none; }.comparison-handle span { display:grid; width:34px; height:34px; place-items:center; border:1px solid var(--neon); border-radius:inherit; }.comparison-caption { display:flex; align-items:end; justify-content:space-between; gap:20px; border-bottom:1px solid rgba(246,164,156,.45); padding:16px 0 17px; color:var(--neon); }.comparison-caption>div { display:grid; gap:4px; }.caption-kicker { font-size:8px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }.comparison-caption strong { color:var(--pearl); font-family:var(--accent); font-size:23px; font-weight:400; line-height:1; }.comparison-caption p { display:grid; gap:5px; max-width:220px; margin:0; color:var(--pearl); font-size:10px; font-weight:700; letter-spacing:.08em; line-height:1.3; text-align:right; text-transform:uppercase; }.comparison-caption p span { color:var(--neon); font-size:8px; }
.atelier-values { padding:133px 0 143px; background:var(--pearl); }.values-layout { display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(55px,10vw,156px); }.values-intro { max-width:460px; }.values-intro h2 { margin-bottom:27px; font-size:clamp(58px,6vw,88px); }.values-intro>p:not(.eyebrow) { font-size:17px; line-height:1.65; }.values-list { border-top:1px solid var(--line); }.value { display:grid; grid-template-columns:43px 1fr; gap:22px; padding:27px 0; border-bottom:1px solid var(--line); }.value>span { padding-top:8px; color:var(--gold); font-size:10px; font-weight:700; letter-spacing:.12em; }.value h3 { margin-bottom:9px; font-family:var(--accent); font-size:30px; font-weight:400; line-height:1.05; }.value p { max-width:470px; margin:0; font-size:15px; line-height:1.55; }
.atelier-ritual { display:grid; grid-template-columns:.8fr 1.2fr; align-items:center; gap:clamp(60px,9vw,145px); padding:132px 0; background:var(--ink); color:var(--pearl); }.ritual-copy { max-width:440px; }.atelier-ritual .eyebrow { color:var(--neon); }.ritual-copy h2 { margin-bottom:28px; font-size:clamp(59px,6vw,90px); }.ritual-copy h2 em { color:var(--neon); }.ritual-copy>p:not(.eyebrow) { margin-bottom:31px; color:rgba(255,250,248,.74); font-size:17px; line-height:1.68; }.atelier-ritual .text-link { border-color:rgba(246,164,156,.68); color:var(--pearl); }.ritual-image { position:relative; height:min(43vw,540px); min-height:390px; overflow:hidden; border:1px solid rgba(246,164,156,.58); }.ritual-image img { filter:saturate(.76); object-position:60% center; }.ritual-image::after { position:absolute; inset:0; background:linear-gradient(180deg,transparent 60%,rgba(37,25,31,.4)); content:''; }.ritual-image p { position:absolute; z-index:2; right:22px; bottom:18px; margin:0; color:var(--neon); font-size:9px; font-weight:700; letter-spacing:.15em; }.ritual-ring { position:absolute; z-index:1; width:270px; height:270px; top:-130px; left:-110px; border:1px solid rgba(246,164,156,.67); border-radius:50%; }
.atelier-visit { position:relative; overflow:hidden; padding:135px 0; background:radial-gradient(circle at 82% 19%,rgba(217,103,95,.31),transparent 27%),linear-gradient(128deg,var(--wine),#28171f); color:var(--pearl); }.atelier-visit::before { position:absolute; width:700px; height:700px; left:-500px; bottom:-440px; border:1px solid rgba(246,164,156,.16); border-radius:50%; content:''; }.visit-shell { position:relative; display:grid; grid-template-columns:1fr .88fr .65fr; align-items:center; gap:clamp(34px,5vw,78px); }.atelier-visit .eyebrow { color:var(--neon); }.visit-head h2 { font-size:clamp(58px,5.8vw,86px); }.visit-head h2 em { color:var(--neon); }.visit-card { min-height:365px; display:flex; justify-content:space-between; flex-direction:column; border:1px solid rgba(246,164,156,.66); background:rgba(255,250,248,.04); padding:22px; }.visit-card-top { display:flex; justify-content:space-between; color:var(--neon); font-size:9px; font-weight:700; letter-spacing:.14em; }.visit-card address { font-family:var(--serif); font-size:clamp(31px,3.3vw,45px); font-style:normal; letter-spacing:-.045em; line-height:.96; }.visit-card-bottom { border-top:1px solid rgba(246,164,156,.43); padding-top:13px; }.visit-card-bottom p { margin-bottom:5px; color:var(--neon); font-size:9px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }.visit-card-bottom a { font-size:14px; text-decoration:underline; text-underline-offset:3px; }.visit-actions { max-width:240px; }.visit-actions>p { font-family:var(--accent); font-size:26px; line-height:1.12; }.visit-actions .button { width:100%; margin:7px 0 18px; }.atelier-visit .text-link { border-color:rgba(246,164,156,.58); color:var(--neon); }
.site-footer { background:#1b1117; color:var(--pearl); }.footer-inner { display:grid; grid-template-columns:1fr .9fr .7fr; gap:40px; align-items:end; padding:67px 0 58px; }.footer-logo { display:block; width:205px; }.footer-logo img { width:100%; height:auto; object-fit:contain; }.footer-brand>p { margin:23px 0 0; color:var(--gold); font-size:9px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }.footer-brand>p span { color:var(--neon); }.footer-links { display:flex; justify-content:space-between; gap:15px; flex-wrap:wrap; }.footer-links a { color:rgba(255,250,248,.78); font-size:10px; font-weight:700; letter-spacing:.09em; text-transform:uppercase; }.footer-links a:hover,.footer-links a:focus-visible { color:var(--neon); }.footer-meta { justify-self:end; margin:0; color:var(--gold); font-size:10px; line-height:1.55; text-align:right; }.cookie-notice { position:fixed; z-index:200; bottom:24px; left:24px; display:flex; max-width:520px; align-items:center; gap:20px; border:1px solid rgba(246,164,156,.6); background:var(--ink); box-shadow:0 15px 38px rgba(0,0,0,.34); padding:17px 18px; color:var(--pearl); }.cookie-notice[hidden] { display:none!important; }.cookie-notice p { margin:0; font-size:12px; line-height:1.45; }.cookie-notice>div { display:flex; align-items:center; gap:10px; flex:0 0 auto; }.cookie-notice button { border:0; background:transparent; color:var(--neon); font-size:10px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; cursor:pointer; }.cookie-notice .cookie-accept { background:var(--neon); padding:10px 12px; color:var(--ink); }.noscript-message { margin:0; padding:12px 20px; background:var(--blush); color:var(--mulberry); text-align:center; }.reveal { opacity:0; transform:translateY(18px); transition:opacity .65s var(--ease),transform .65s var(--ease); }.reveal.visible { opacity:1; transform:none; }.delay-one { transition-delay:.12s; }.delay-two { transition-delay:.24s; }.delay-three { transition-delay:.36s; } button:focus-visible,a:focus-visible { outline:2px solid var(--neon); outline-offset:4px; }
@media (max-width:950px) { :root { --page:min(100% - 48px,760px); }.nav-wrap { min-height:80px; gap:18px; }.primary-nav { position:absolute; top:100%; right:0; left:0; display:none; align-items:flex-start; flex-direction:column; gap:0; border-bottom:1px solid rgba(246,164,156,.3); background:var(--ink); padding:17px 24px 22px; }.primary-nav.is-open { display:flex; }.primary-nav a { width:100%; padding:12px 0; }.nav-toggle { display:block; margin-left:auto; }.nav-toggle[aria-expanded='true'] span:nth-child(2) { transform:translateY(3px) rotate(45deg); }.nav-toggle[aria-expanded='true'] span:nth-child(3) { transform:translateY(-3px) rotate(-45deg); }.nav-cta { display:none; }.atelier-hero { grid-template-columns:minmax(0,1fr) minmax(310px,.85fr); min-height:auto; }.atelier-hero-copy { padding:90px 24px; }.atelier-hero-image { min-height:580px; }.hero-seal { width:118px; height:118px; right:-22px; bottom:62px; font-size:15px; }.atelier-statement { gap:8%; padding:98px 0 108px; }.dark-care { padding:100px 0; }.dark-care-head { grid-template-columns:1fr .7fr; gap:7%; }.care-card { min-height:390px; padding:22px; }.atelier-story-copy { padding:70px 44px; }.atelier-story-image { min-height:610px; }.results-shell { gap:46px; }.atelier-results { padding:105px 0; }.values-layout { gap:65px; }.atelier-values { padding:108px 0; }.atelier-ritual { gap:55px; padding:100px 0; }.ritual-image { min-height:350px; }.atelier-visit { padding:106px 0; }.visit-shell { grid-template-columns:1fr 1fr; }.visit-actions { grid-column:1/-1; max-width:450px; }.visit-actions .button { width:auto; }.footer-inner { grid-template-columns:1fr 1fr; }.footer-meta { justify-self:start; text-align:left; } }
@media (max-width:640px) { :root { --page:min(100% - 38px,540px); }.announcement-bar { justify-content:flex-start; font-size:8px; }.announcement-bar span:last-child { margin-left:auto; }.announcement-dot { display:none; }.brand-logo { width:138px; }.atelier-hero { grid-template-columns:1fr; }.atelier-hero-copy { min-height:575px; padding:65px 19px 75px; }.atelier-hero h1 { font-size:clamp(66px,18vw,93px); }.hero-intro { font-size:16px; }.hero-address { margin-top:39px; }.atelier-hero-image { min-height:510px; border-top:1px solid rgba(246,164,156,.46); border-left:0; }.hero-seal { right:-13px; bottom:38px; }.hero-image-note { display:none; }.atelier-statement { grid-template-columns:1fr; gap:28px; padding:84px 0; }.statement-count { grid-template-columns:42px 1fr; }.statement-copy h2,.dark-care h2,.atelier-story-copy h2,.results-intro h2,.values-intro h2,.ritual-copy h2,.visit-head h2 { font-size:clamp(55px,14vw,78px); }.statement-copy>p { font-size:16px; }.dark-care-head { grid-template-columns:1fr; gap:22px; margin-bottom:35px; }.care-grid { grid-template-columns:1fr; gap:11px; }.care-card { min-height:300px; }.care-card h3 { font-size:53px; }.atelier-story { grid-template-columns:1fr; }.atelier-story-image { min-height:490px; }.atelier-story-copy { padding:76px 19px 84px; }.atelier-story-copy>p:not(.eyebrow) { font-size:16px; }.atelier-results { padding:84px 0; }.results-shell { grid-template-columns:1fr; gap:42px; }.results-intro>p:not(.eyebrow):not(.results-note) { font-size:16px; }.results-gallery,.results-empty,.result-comparison { min-height:370px; }.result-before img { width:var(--comparison-image-width,calc(100vw - 38px)); }.comparison-caption { gap:12px; }.comparison-caption strong { font-size:19px; }.comparison-caption p { max-width:170px; font-size:9px; }.atelier-values { padding:84px 0; }.values-layout { grid-template-columns:1fr; gap:43px; }.value { gap:15px; }.value h3 { font-size:26px; }.atelier-ritual { grid-template-columns:1fr; gap:45px; padding:84px 0; }.ritual-image { height:75vw; min-height:300px; }.atelier-visit { padding:84px 0; }.visit-shell { grid-template-columns:1fr; gap:36px; }.visit-actions { grid-column:auto; }.visit-actions .button { width:100%; }.footer-inner { grid-template-columns:1fr; gap:32px; padding:54px 0 45px; }.footer-links { justify-content:flex-start; gap:13px 21px; }.cookie-notice { right:15px; bottom:15px; left:15px; display:block; padding:15px; }.cookie-notice>div { justify-content:flex-start; margin-top:12px; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; }.reveal { opacity:1; transform:none; transition:none; }.primary-nav a::after,.button,.nav-cta,.care-card,.text-link span { transition:none; } }
