
@font-face{font-family:Italiana;src:url(./assets/italiana.ttf) format("truetype");font-display:swap}@font-face{font-family:DM;src:url(./assets/dm-sans.ttf) format("truetype");font-display:swap}
:root{--c:#211e1b;--c2:#312922;--milk:#f0e9df;--paper:#e4d9ca;--sand:#cbb79f;--moss:#67675b;--soft:#766b60;--line:rgba(51,41,31,.2);--white:#faf7f1;--e:cubic-bezier(.22,1,.36,1);--serif:Italiana,Georgia,serif;--sans:DM,Arial,sans-serif}
*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:78px}body{margin:0;background:var(--milk);color:var(--c);font-family:var(--sans);-webkit-font-smoothing:antialiased}body.menu-open,body.modal-open{overflow:hidden}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0}button{color:inherit}button:disabled{opacity:.35;cursor:not-allowed}*:focus-visible{outline:2px solid #b59573;outline-offset:4px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.skip{position:fixed;top:-90px;left:20px;z-index:120;background:white;padding:18px}.skip:focus{top:20px}.progress{position:fixed;top:0;left:0;height:2px;width:0;background:#b9987d;z-index:90;pointer-events:none}
.intro{position:fixed;inset:0;z-index:100;background:#29231f;color:#f1e7dc;display:flex;flex-direction:column;justify-content:space-between;padding:34px 5vw;overflow:hidden;transition:transform .95s cubic-bezier(.76,0,.24,1)}.intro:before{content:"";position:absolute;width:65vw;height:65vw;left:50%;top:50%;border:1px solid rgba(245,226,204,.07);border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}.intro:after{content:"";position:absolute;width:32vw;height:32vw;left:50%;top:50%;border:1px solid rgba(245,226,204,.08);border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}.intro__top,.intro__bottom{display:flex;justify-content:space-between;align-items:center;position:relative;z-index:2;font-size:10px;letter-spacing:.2em}.intro__top button{font-size:10px;letter-spacing:.14em;background:none;border:0;color:inherit;padding:12px}.intro__top button span{margin-left:12px}.intro__field{position:relative;z-index:2;text-align:center;display:flex;flex-direction:column;align-items:center}.intro__fine,.intro__motto{font-size:10px;letter-spacing:.29em;opacity:0;transform:translateY(15px);transition:opacity .65s,transform .65s}.intro__fine{margin-bottom:20px}.intro__motto{margin-top:23px}.intro__word{display:flex;align-items:flex-start;font:clamp(70px,17vw,260px)/.95 var(--serif);letter-spacing:-.062em;margin-left:-.025em;overflow:hidden}.intro__word span,.intro__word sup{display:inline-block;transform:translateY(112%);opacity:0;transition:transform 1.1s var(--e),opacity .8s}.intro__word span:nth-child(2){transition-delay:.06s}.intro__word span:nth-child(3){transition-delay:.12s}.intro__word span:nth-child(4){transition-delay:.18s}.intro__word span:nth-child(5){transition-delay:.24s}.intro__word span:nth-child(6){transition-delay:.30s}.intro__word sup{font-size:.22em;letter-spacing:0;margin-left:.1em;transition-delay:.38s}.intro__rule{background:#c3a282;width:0;height:1px;display:block;transition:width 1.2s var(--e);margin-top:17px}.intro.is-playing .intro__word span,.intro.is-playing .intro__word sup{transform:none;opacity:1}.intro.is-playing .intro__fine,.intro.is-playing .intro__motto{opacity:.9;transform:none}.intro.is-playing .intro__rule{width:min(36vw,440px)}.intro.is-out{transform:translateY(-102%);pointer-events:none}
.demo-strip{height:28px;background:#191918;color:#dacbbb;padding:0 5.5vw;display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:.19em}
.header{position:fixed;z-index:60;top:28px;left:0;right:0;height:90px;padding:0 5.5vw;display:flex;align-items:center;justify-content:space-between;color:#fff7ee;transition:background .35s,color .35s,top .35s,height .35s,border-color .35s}.header.solid,.menu-open .header{background:rgba(239,233,224,.97);color:#211d1a;top:0;height:75px;border-bottom:1px solid #cfc5b8;backdrop-filter:blur(16px)}.logo{font:39px var(--serif);letter-spacing:-.06em}.logo sup{font-size:.4em;vertical-align:top;letter-spacing:0;margin-left:2px}.nav{display:flex;gap:34px;align-items:center}.nav a{font-size:10px;letter-spacing:.12em;text-transform:uppercase;position:relative;padding:10px 0;transition:color .3s}.nav a.active:after,.nav a:hover:after{content:"";height:1px;background:currentColor;position:absolute;bottom:3px;left:0;right:0}.head-actions{display:flex;align-items:center;gap:17px}.head-search{background:transparent;border:0;display:flex;align-items:center;gap:6px;font-size:9px;letter-spacing:.14em}.search-glyph{font:26px/1 var(--serif)}.head-book{border:1px solid currentColor;background:transparent;padding:16px 19px;font-size:9px;letter-spacing:.14em;transition:background .25s,color .25s}.head-book:hover{background:#b5a08a;color:#201d1a}.head-book span{font-size:17px;margin-left:14px}.menu-btn{display:none;border:0;background:transparent;width:45px;height:42px;position:relative}.menu-btn i{position:absolute;height:1px;width:26px;background:currentColor;left:8px;top:16px;transition:transform .3s,top .3s}.menu-btn i+i{top:25px}.menu-open .menu-btn i{top:22px;transform:rotate(45deg)}.menu-open .menu-btn i+i{transform:rotate(-45deg)}.mobile-nav{visibility:hidden;opacity:0;pointer-events:none;position:fixed;inset:0;z-index:55;background:#ece2d5;padding:115px 6vw 40px;display:flex;flex-direction:column;overflow-y:auto;transition:opacity .3s}.menu-open .mobile-nav{visibility:visible;opacity:1;pointer-events:auto}.mobile-nav a{font:clamp(33px,7vw,70px)/1 var(--serif);padding:10px 0;border-bottom:1px solid #c9bdad;display:flex;align-items:center;gap:18px}.mobile-nav small{font:10px var(--sans)}.mobile-nav .kicker{margin-bottom:20px}.nav-bottom{margin-top:32px;font-size:9px;letter-spacing:.14em}
.hero{position:relative;min-height:700px;height:100svh;max-height:1050px;background:#43372f;color:#f7eee3;overflow:hidden}.hero__media,.hero__veil{position:absolute;inset:0}.hero__media img{width:100%;height:100%;object-fit:cover;object-position:68% 35%;filter:saturate(.67) contrast(1.05);transform:scale(1.11);transition:transform 2.7s var(--e)}.hero.ready .hero__media img{transform:scale(1)}.hero__veil{background:linear-gradient(90deg,rgba(24,21,18,.93) 0%,rgba(29,24,21,.67) 40%,rgba(29,23,19,.22) 82%),linear-gradient(0deg,rgba(20,19,17,.45),transparent 30%)}.hero__edition{position:absolute;z-index:2;top:150px;left:5.5vw;font-size:10px;letter-spacing:.2em}.hero__edition span{color:#d2c4b5}.hero__body{position:absolute;z-index:2;top:50%;left:11vw;transform:translateY(-43%);max-width:900px}.kicker{font-size:10px;letter-spacing:.2em;text-transform:uppercase}.hero__kicker{display:flex;align-items:center;gap:12px;margin-bottom:34px}.dot{display:inline-block;background:#d5b397;width:6px;height:6px;border-radius:50%}.hero h1{font:clamp(82px,10.4vw,172px)/.9 var(--serif);letter-spacing:-.058em;font-weight:400}.hero h1 em,.hero h1 span{font-style:normal;color:#d6baa0}.hero h1 span{margin-left:10vw;color:#fff9ef}.hero__text{font-size:15px;line-height:1.9;color:#e4d8cb;max-width:365px;margin:32px 0 27px 2px}.circle-link{display:inline-flex;align-items:center;gap:25px;font-size:10px;letter-spacing:.17em}.circle-link__orb{display:grid;place-items:center;width:52px;height:52px;border:1px solid #e3d8ca;border-radius:50%;font-size:23px;transition:transform .3s,background .3s,color .3s}.circle-link:hover .circle-link__orb{background:#e3d8ca;color:#211e1b;transform:rotate(45deg)}.hero__side{position:absolute;z-index:2;right:4vw;top:50%;transform:translateY(-50%);writing-mode:vertical-rl;font-size:9px;letter-spacing:.24em}.hero__foot{display:flex;justify-content:space-between;position:absolute;bottom:38px;left:5.5vw;right:5.5vw;z-index:2;font-size:9px;letter-spacing:.16em}.hero__foot a span{font-size:19px;margin-left:12px}.hero__body>*{opacity:0;transform:translateY(22px);transition:opacity .9s,transform .9s var(--e)}.hero.ready .hero__body>*{opacity:1;transform:none}.hero.ready .hero__body>:nth-child(2){transition-delay:.12s}.hero.ready .hero__body>:nth-child(3){transition-delay:.22s}.hero.ready .hero__body>:nth-child(4){transition-delay:.32s}
.ticker{height:75px;overflow:hidden;background:#bfa98f;color:#251f1c;display:flex;align-items:center}.ticker>div{white-space:nowrap;flex:0 0 auto;animation:marquee 30s linear infinite;font-size:13px;letter-spacing:.23em}.ticker span{font-size:20px;margin:0 34px}@keyframes marquee{to{transform:translateX(-50%)}}
.section-pad{padding:105px 5.5vw}.section-bar{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:17px;gap:25px;margin-bottom:80px;font-size:9px;letter-spacing:.16em}.section-bar.light{border-color:rgba(250,246,241,.3);color:#cec1b2}.section-pad h2,.story h2,.closing h2{font-family:var(--serif);font-weight:400;letter-spacing:-.052em;line-height:.97}.section-pad h2 em,.section-pad h2 i,.closing h2 em{font-style:normal;color:#a88e76}.reveal{opacity:0;transform:translateY(28px);transition:opacity 1s var(--e),transform 1s var(--e)}.reveal.visible{opacity:1;transform:none}
.philosophy{background:#f0e9df}.philosophy__headline{display:flex;gap:8vw;align-items:start;margin-bottom:95px}.philosophy__headline .side-note{font-size:10px;letter-spacing:.14em;line-height:1.9;margin-top:26px;min-width:170px}.philosophy__headline h2{font-size:clamp(78px,9vw,147px)}.philosophy__grid{display:grid;grid-template-columns:1fr 1fr;gap:11vw;align-items:center}.philosophy__photo img{width:100%;height:min(61vw,770px);object-fit:cover;filter:saturate(.7)}.philosophy__photo figcaption{border-bottom:1px solid #bfb2a3;padding:17px 0;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.16em}.philosophy__right{max-width:550px}.mark{font-size:44px;color:#a88e76}.philosophy__right h3{font:clamp(38px,4.2vw,67px)/1.13 var(--serif);letter-spacing:-.04em;margin:42px 0}.philosophy__right h3 em{font-style:normal;color:#ad9176}.philosophy__right p{line-height:2;color:#625950;font-size:15px;max-width:390px}.values{display:grid;margin:65px 0 30px}.values span{border-bottom:1px solid #c4b8a9;padding:20px 0;font-size:10px;letter-spacing:.13em}.values span:first-child{border-top:1px solid #c4b8a9}.underline-link{border:0;border-bottom:1px solid currentColor;background:transparent;display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:0 0 12px;font-size:10px;letter-spacing:.16em}.underline-link span{font-size:20px}
.story{height:220vh;position:relative;color:#f6eee3;background:#2c2926}.story__sticky{position:sticky;top:0;height:100svh;min-height:600px;overflow:hidden;--p:0}.story__pane,.story__shade{position:absolute;inset:0}.story__pane img{width:100%;height:100%;object-fit:cover;filter:saturate(.6)}.story__pane--a{transform:scale(calc(1.05 + var(--p)*.1));opacity:calc(1 - var(--p)*.85)}.story__pane--b{clip-path:inset(calc((1 - var(--p)) * 38%) calc((1 - var(--p)) * 27%) round 2px);transform:scale(calc(1.1 - var(--p)*.1))}.story__shade{background:linear-gradient(0deg,rgba(20,17,15,.8) 0%,rgba(26,22,20,.4) 55%,rgba(23,21,19,.25))}.story__label,.story__number,.story__progress{position:absolute;z-index:2}.story__label{top:50px;left:5.5vw;font-size:10px;letter-spacing:.17em}.story__text{position:absolute;z-index:2;left:10vw;bottom:13%;width:80%}.story__tiny{font-size:10px;letter-spacing:.2em}.story__text p{font:clamp(60px,8.4vw,136px)/.96 var(--serif);letter-spacing:-.05em;margin:30px 0}.story__text p em{font-style:normal;color:#e3c7aa}.story__text>span:last-child{font-size:10px;letter-spacing:.2em}.story__progress{right:5.5vw;bottom:65px;width:170px;height:1px;background:#ae9884}.story__progress span{display:block;height:3px;background:#f9eee2;width:0}.story__number{right:5.5vw;top:50px;font-size:10px;letter-spacing:.18em}.story__number b{font:28px var(--serif)}
.rituals{background:#28221d;color:#f1e7dc}.rituals__top{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:70px}.rituals__top h2{font-size:clamp(80px,9vw,145px)}.rituals__top h2 em{color:#d2b496}.rituals__top p{max-width:290px;line-height:1.8;font-size:14px;color:#bbac9c;padding-bottom:8px}.catalogue-controls{display:flex;justify-content:space-between;gap:35px;align-items:end;border-bottom:1px solid #5f5348;padding-bottom:23px}.catalogue-search,.faq-search{display:flex;align-items:center;gap:10px;border-bottom:1px solid #aa9682;max-width:340px;width:100%;padding-bottom:12px}.catalogue-search span,.faq-search span{font-size:26px}.catalogue-search input,.faq-search input,.quick-search input{background:transparent;border:0;outline:none;color:inherit;min-width:0;flex:1;font-size:14px}.catalogue-search input::placeholder{color:#b2a395}.filters{display:flex;gap:9px;flex-wrap:wrap}.filters button,.faq-cats button{border:1px solid #776b60;color:#c5b7a8;background:none;padding:12px 16px;font-size:9px;letter-spacing:.1em;transition:.25s}.filters button[aria-pressed=true],.filters button:hover{background:#e7d9ca;color:#211f1c;border-color:#e7d9ca}.catalogue-result{display:flex;justify-content:space-between;align-items:center;margin:25px 0;font-size:10px;letter-spacing:.15em;color:#b8aa99}.subtle-btn{border:0;background:transparent;color:#dcc9b4;font-size:10px;letter-spacing:.11em}.catalogue-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.treatment-card{border:1px solid rgba(239,222,205,.18);background:#302820;min-width:0;position:relative;overflow:hidden;transition:transform .4s var(--e),background .35s}.treatment-card:hover{transform:translateY(-6px);background:#393025}.treatment-card__img{height:330px;overflow:hidden;position:relative;background:#40362b}.treatment-card__img img{width:100%;height:100%;object-fit:cover;filter:saturate(.75);transition:transform 1s var(--e)}.treatment-card:hover img{transform:scale(1.07)}.treatment-card__img:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(24,20,18,.35),transparent 55%)}.treatment-card__tag{position:absolute;top:20px;left:20px;z-index:1;background:#efe6da;color:#29231e;padding:9px 10px;font-size:9px;letter-spacing:.11em}.treatment-card__save{position:absolute;top:18px;right:18px;z-index:2;border:1px solid rgba(255,255,255,.65);color:#fff;background:rgba(31,28,24,.22);border-radius:50%;width:37px;height:37px;font-size:19px}.treatment-card__save[aria-pressed=true]{background:#dbc4aa;color:#2e261f}.treatment-card__content{padding:28px}.treatment-card__num{font-size:9px;letter-spacing:.17em;color:#b2a28f}.treatment-card h3{font:clamp(34px,3vw,52px)/1.08 var(--serif);letter-spacing:-.035em;margin:14px 0 17px;min-height:90px}.treatment-card__desc{color:#c0b1a1;font-size:13px;line-height:1.75;min-height:70px}.treatment-card__meta{display:flex;justify-content:space-between;gap:8px;font-size:9px;letter-spacing:.12em;margin:28px 0 20px;color:#b09f8b}.treatment-card__actions{display:flex;gap:10px}.treatment-card__actions button{flex:1;border:1px solid #837363;background:transparent;color:#f3e6d8;padding:15px 7px;font-size:9px;letter-spacing:.07em}.treatment-card__actions button:last-child{background:#deccb6;color:#27211c;border-color:#deccb6}.treatment-card__actions button:hover{filter:brightness(1.2)}.catalogue-empty{text-align:center;padding:60px 10px}.catalogue-empty p{font:38px var(--serif);margin-bottom:17px}.catalogue-empty button{color:var(--milk);background:transparent;border-bottom:1px solid #dbc1a5;border-top:0;border-left:0;border-right:0;padding:12px}.catalogue-foot{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:34px;color:#bdae9b;font-size:9px;letter-spacing:.13em}
.discovery{background:#ded4c6}.discovery__layout{display:grid;grid-template-columns:.9fr 1fr;gap:11vw}.discovery__symbol{font-size:60px;color:#a38b72}.discovery__left h2{font-size:clamp(74px,8vw,128px);margin:40px 0}.discovery__left p{max-width:370px;line-height:1.95;font-size:15px;color:#665a4e}.discovery__fine{display:block;font-size:10px;letter-spacing:.15em;margin-top:55px}.quiz{background:#f5f0e8;padding:clamp(25px,4vw,60px);min-height:600px;display:flex;flex-direction:column;box-shadow:0 15px 60px rgba(30,20,14,.06)}.quiz__top,.booking__top{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:9px;letter-spacing:.17em}.quiz__top button,.booking__top button{background:transparent;border:0;font-size:9px;letter-spacing:.13em}.quiz__progress,.booking__meter{width:100%;height:2px;background:#cfc2b4;margin:22px 0 45px}.quiz__progress span,.booking__meter span{display:block;width:0;height:100%;background:#826c57;transition:width .35s}.quiz__question,.book-title{font:clamp(36px,4vw,62px)/1.1 var(--serif);margin-bottom:31px;letter-spacing:-.03em}.quiz__hint,.book-hint{font-size:12px;line-height:1.7;color:#7c6b5a;margin-bottom:26px}.quiz__options{display:grid;gap:11px}.quiz__option{width:100%;display:flex;justify-content:space-between;text-align:left;gap:13px;padding:20px;border:1px solid #d0c3b3;background:transparent;align-items:center;font-size:15px}.quiz__option[aria-pressed=true],.book-choice[aria-pressed=true]{border-color:#7e6149;background:#e5d6c5}.quiz__option span+span{font-size:20px}.quiz__actions,.booking__actions{display:flex;gap:15px;justify-content:space-between;align-items:center;margin-top:auto;padding-top:40px}.quiz__actions>button:first-child,.booking__actions>button:first-child{background:transparent;border:0;font-size:10px;letter-spacing:.11em}.action-btn{display:flex;align-items:center;justify-content:space-between;gap:35px;background:#2a241f;color:#f9f0e4;border:1px solid #2a241f;padding:18px 20px;font-size:10px;letter-spacing:.13em;min-width:195px}.action-btn span{font-size:18px}.action-btn:hover{background:#78604b}.quiz__result h3{font:clamp(44px,5vw,68px)/1 var(--serif);margin:10px 0 22px}.quiz__result p{font-size:14px;line-height:1.8}.quiz__suggestion{display:flex;gap:17px;padding:15px 0;border-top:1px solid #d1c2b1;margin-top:17px;align-items:center}.quiz__suggestion img{width:92px;height:90px;object-fit:cover}.quiz__suggestion div{flex:1}.quiz__suggestion strong{font:25px var(--serif);font-weight:400;display:block}.quiz__suggestion small{font-size:9px;letter-spacing:.1em;color:#79695a}.quiz__suggestion button{border:1px solid #a99783;background:transparent;padding:10px 13px;font-size:10px}
.gallery-section{background:#efe9df}.gallery__heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:68px}.gallery__heading h2{font-size:clamp(80px,9vw,145px)}.gallery__heading>div{width:260px}.gallery__heading p{font-size:14px;color:#73675b;line-height:1.85}.gallery__nav{display:flex;align-items:center;gap:22px;margin-top:40px;font-size:10px;letter-spacing:.13em}.gallery__nav button{background:transparent;border:1px solid #9c8d7f;width:44px;height:44px;border-radius:50%;font-size:20px}.gallery-rail{overflow-x:auto;scrollbar-width:none;scroll-snap-type:x mandatory;cursor:grab;touch-action:pan-x;overscroll-behavior-inline:contain;margin-right:-5.5vw;padding-right:5.5vw}.gallery-rail::-webkit-scrollbar{display:none}.gallery-rail.dragging{cursor:grabbing;scroll-snap-type:none}.gallery-track{display:flex;gap:17px;width:max-content}.gallery-frame{width:clamp(280px,40vw,610px);scroll-snap-align:start}.gallery-frame:nth-child(even){width:clamp(230px,29vw,440px);padding-top:65px}.gallery-frame button{border:0;background:transparent;display:block;padding:0;width:100%;text-align:left}.gallery-frame__image{height:550px;overflow:hidden;position:relative;background:#a69a88}.gallery-frame:nth-child(even) .gallery-frame__image{height:460px}.gallery-frame img{width:100%;height:100%;object-fit:cover;filter:saturate(.72);transition:transform 1s var(--e)}.gallery-frame button:hover img{transform:scale(1.06)}.gallery-frame__open{position:absolute;right:15px;bottom:15px;display:grid;place-items:center;background:#e8ddce;color:#251f1b;width:49px;height:49px;border-radius:50%;font-size:21px}.gallery-frame__caption{display:flex;justify-content:space-between;border-top:1px solid #c2b5a5;margin-top:17px;padding-top:14px;font-size:9px;letter-spacing:.13em}.gallery-guide{display:flex;justify-content:space-between;margin-top:27px;font-size:9px;letter-spacing:.14em}
.compare{background:#312923;color:#efe5d8}.compare__title{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:72px}.compare__title h2{font-size:clamp(80px,9vw,145px)}.compare__title em{color:#c5a689!important}.compare__title p{max-width:300px;line-height:1.85;font-size:14px;color:#c4b6a6}.compare__selectors{display:grid;grid-template-columns:1fr 60px 1fr;gap:20px;align-items:end}.compare__selectors label{font-size:10px;letter-spacing:.16em}.compare__selectors select{display:block;width:100%;margin-top:16px;padding:20px 42px 20px 15px;background:#40362f;color:#f6e9db;border:1px solid #7a6858;min-width:0;font-size:17px;letter-spacing:0}.compare-symbol{text-align:center;font-size:27px;color:#c5a689;padding-bottom:18px}.compare-results{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:38px}.comparison-card{border:1px solid rgba(241,219,197,.26);padding:25px}.comparison-card img{width:100%;height:280px;object-fit:cover;filter:saturate(.75)}.comparison-card h3{font:clamp(37px,4vw,58px) var(--serif);font-weight:400;margin:25px 0 18px}.comparison-card dl{margin:0}.comparison-card dl div{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #706256;padding:14px 0;font-size:12px;line-height:1.5}.comparison-card dt{color:#b7a798;flex:0 0 36%}.comparison-card dd{margin:0;text-align:right}.comparison-card button{width:100%;padding:20px;background:#d7bf9f;border:0;margin-top:28px;font-size:10px;letter-spacing:.15em;color:#201b18}
.booking{background:#d9cbb9}.booking__heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:80px}.booking__heading h2{font-size:clamp(72px,8vw,135px)}.booking__star{font-size:43px;color:#a78b72}.booking__heading p{font-size:14px;line-height:1.9;max-width:310px;color:#625547}.booking__shell{display:grid;grid-template-columns:.77fr 1.23fr;background:#f2eae0;box-shadow:0 30px 80px rgba(50,35,20,.07);min-height:660px}.booking__sidebar{background:#3b3028;color:#f0e4d8;padding:54px 45px;display:flex;flex-direction:column}.book-side-label,.book-side-foot{font-size:10px;letter-spacing:.17em;line-height:1.7}.booking__sidebar h3{font:clamp(40px,4vw,65px)/1.04 var(--serif);font-weight:400;max-width:360px;margin:36px 0}.book-side-preview{flex:1;min-height:270px;overflow:hidden}.book-side-preview img{width:100%;height:100%;max-height:330px;object-fit:cover;filter:saturate(.7)}.book-side-service{font:24px var(--serif);padding:22px 0}.book-side-foot{opacity:.75;margin-top:auto}.booking__main{padding:55px clamp(25px,5vw,85px);display:flex;flex-direction:column}.book-title{font-size:clamp(35px,4vw,59px);margin-bottom:25px}.booking__content{flex:1}.book-choices{display:grid;grid-template-columns:1fr 1fr;gap:11px}.book-choice{border:1px solid #cbb9a4;background:transparent;padding:15px 13px;text-align:left;min-height:110px;display:flex;flex-direction:column;justify-content:space-between}.book-choice strong{font:25px var(--serif);font-weight:400}.book-choice small{font-size:9px;letter-spacing:.1em}.book-select-label,.book-field-label{display:block;font-size:10px;letter-spacing:.16em;margin:21px 0 11px}.book-select,.book-text{width:100%;padding:16px;border:1px solid #bdad9b;background:transparent;color:#302921;font-size:15px;min-width:0}.book-textarea{resize:vertical;min-height:88px}.calendar-head{display:flex;justify-content:space-between;align-items:center;margin:23px 0;font-size:16px}.calendar-head button{border:1px solid #baaa98;background:transparent;width:40px;height:40px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.calendar-grid .weekday{text-align:center;font-size:9px;color:#8c7c6b;padding:8px 0}.calendar-grid button{height:41px;min-width:0;border:1px solid transparent;background:transparent;font-size:12px}.calendar-grid button:hover:not(:disabled){border-color:#998067}.calendar-grid button[aria-pressed=true]{background:#302821;color:#f5e9dd}.calendar-grid button:disabled{opacity:.2}.time-slots{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin-top:20px}.time-slots button{padding:14px 2px;border:1px solid #b7a590;background:transparent;font-size:12px}.time-slots button[aria-pressed=true]{background:#302821;color:#fff}.book-choice-note{font-size:10px;color:#736354;line-height:1.7;margin:17px 0}.book-check{display:flex;gap:12px;align-items:flex-start;font-size:12px;line-height:1.7;margin-top:25px}.book-check input{margin-top:5px;accent-color:#7d6047}.review-list{margin:25px 0;border-top:1px solid #bfaf9e}.review-list div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #bfaf9e;padding:14px 0;font-size:13px}.review-list span{color:#79695b}.review-list strong{text-align:right;font-weight:500}.booking__actions{padding-top:27px}.book-error{color:#8b342e;font-size:12px;background:#f4dfd9;padding:12px;margin-top:18px}.book-legal{color:#847567;font-size:10px;line-height:1.6;margin-top:30px}.booking-confirm{text-align:center}.booking-confirm__star{font-size:70px;color:#97775d}.booking-confirm h3{font:58px/1 var(--serif);margin:16px 0}.booking-confirm p{font-size:14px;line-height:1.8}.booking-confirm__id{border:1px solid #a89682;margin:25px 0;padding:16px;font-size:11px;letter-spacing:.1em}
.faq{background:#f1ebe1}.faq__layout{display:grid;grid-template-columns:.85fr 1fr;gap:11vw}.faq__intro h2{font-size:clamp(65px,7vw,112px)}.faq__intro p{font-size:14px;line-height:1.8;color:#71665a;margin:35px 0;max-width:370px}.faq-search{border-color:#b4a18d;margin-bottom:28px;max-width:100%}.faq-search input::placeholder{color:#948879}.faq-cats{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:25px}.faq-cats button{color:#54493e;border-color:#c9b9a8}.faq-cats button[aria-pressed=true]{background:#2d2722;color:#f2e8dc}.faq-list{border-top:1px solid #bcae9e}.faq-item{border-bottom:1px solid #bcae9e}.faq-item summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;padding:24px 0;align-items:center;font:clamp(19px,2vw,30px) var(--serif)}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";font:24px var(--serif)}.faq-item[open] summary:after{content:"−"}.faq-item p{color:#6c5e50;font-size:13px;line-height:1.85;padding:0 45px 25px 0;max-width:590px}.faq-item a{text-decoration:underline;text-underline-offset:3px}.empty{padding:40px 0;color:#79695b}
.closing{background:#211d1a;color:#f4eae0;text-align:center;min-height:760px;padding:100px 20px;position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center}.closing__small{font-size:10px;letter-spacing:.23em}.closing__circle{position:absolute;width:600px;height:600px;max-width:90vw;max-height:90vw;border:1px solid #483c32;border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center}.closing__circle span{font-size:150px;color:#403227;opacity:.4}.closing h2{position:relative;font-size:clamp(75px,10vw,160px);margin:45px 0 32px}.closing h2 em{color:#cbab8a}.closing>p{font-size:10px;letter-spacing:.2em;z-index:1}.closing>button{border:1px solid #bca088;color:#f2e9df;background:transparent;padding:20px 25px;margin-top:40px;position:relative;font-size:10px;letter-spacing:.17em}.closing>button span{font-size:18px;margin-left:20px}.closing>button:hover{background:#bca088;color:#211d1a}
.footer{background:#141412;color:#e9ded2;padding:43px 5.5vw 35px}.footer__head,.footer__base{display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.14em}.footer__word{font:clamp(155px,23vw,480px)/.92 var(--serif);letter-spacing:-.07em;text-align:center;margin:70px 0 60px;white-space:nowrap}.footer__word sup{font-size:.24em;vertical-align:top;letter-spacing:0}.footer__base{border-top:1px solid #514940;padding-top:25px;color:#aea094}.footer__base b{color:#e4d6c7;font-weight:500}.mobile-dock{display:none}
dialog{border:0;padding:0;color:var(--c)}dialog::backdrop{background:rgba(14,13,12,.83);backdrop-filter:blur(8px)}.dialog-x{position:absolute;right:22px;top:20px;border:1px solid #9e8c79;background:transparent;color:inherit;width:43px;height:43px;border-radius:50%;font-size:27px;z-index:2}.details-dialog{width:min(1000px,calc(100% - 28px));max-height:92vh;overflow:auto;background:#efe8df}.detail-grid{display:grid;grid-template-columns:.9fr 1.1fr}.detail-photo{height:100%;min-height:660px;object-fit:cover;width:100%;filter:saturate(.75)}.detail-copy{padding:65px clamp(25px,5vw,70px)}.detail-copy>span{font-size:10px;letter-spacing:.15em}.detail-copy h2{font:clamp(56px,6vw,100px)/.96 var(--serif);margin:26px 0;letter-spacing:-.04em}.detail-copy p{font-size:14px;line-height:1.8;color:#67594c}.detail-points{display:grid;gap:9px;margin:30px 0}.detail-points span{padding:14px 0;border-bottom:1px solid #cabcaa;font-size:11px;letter-spacing:.1em}.detail-actions{display:flex;gap:9px;flex-wrap:wrap}.detail-actions button{border:1px solid #a8937d;background:transparent;padding:16px;font-size:10px;letter-spacing:.1em}.detail-actions button:first-child{background:#29231e;color:#fff0e0}.detail-switch{display:flex;justify-content:space-between;margin-top:35px}.detail-switch button{border:0;background:transparent;font-size:11px;letter-spacing:.1em}.detail-disclaimer{font-size:10px!important;margin-top:30px}
.lightbox{background:#191715;color:#f4eae0;width:100vw;max-width:none;height:100dvh;max-height:none;overflow:hidden}.lightbox__top,.lightbox__bottom{position:absolute;left:5vw;right:5vw;z-index:2;display:flex;align-items:center;gap:20px;justify-content:space-between;font-size:10px;letter-spacing:.14em}.lightbox__top{top:28px}.lightbox__top button{border:1px solid #a39a8c;padding:12px;background:transparent;color:#fff;font-size:10px}.lightbox img{position:absolute;inset:10vh 15vw;width:70vw;height:78vh;object-fit:contain}.lightbox__bottom{bottom:23px}.lightbox__bottom button{width:47px;height:47px;border:1px solid #857c72;background:transparent;color:#fff;font-size:21px;border-radius:50%}.lightbox__bottom span{font-size:10px;text-align:center}.quick-dialog{width:min(780px,calc(100% - 20px));max-height:90vh;overflow:auto;background:#e9ded1;padding:clamp(30px,6vw,70px);position:relative}.quick-dialog h2{font:clamp(56px,8vw,95px)/.96 var(--serif);margin:20px 0 35px}.quick-dialog h2 em{font-style:normal;color:#ac8f74}.quick-search{display:block;border-bottom:1px solid #a7917d;padding:15px 0}.quick-search input{width:100%;font-size:17px}.quick-results{margin:27px 0;display:grid;gap:10px}.quick-results button{background:transparent;border:0;border-bottom:1px solid #c0ad9b;text-align:left;padding:14px 0;display:flex;justify-content:space-between;align-items:center;gap:20px}.quick-results strong{font:25px var(--serif);font-weight:400}.quick-results small{font-size:10px;letter-spacing:.1em}.quick-shortcuts{display:flex;flex-wrap:wrap;gap:10px}.quick-shortcuts a{border:1px solid #baa48f;padding:13px;font-size:10px;letter-spacing:.12em}
@media(max-width:1160px){.nav{gap:17px}.head-book{display:none}.hero__body{left:7vw}.philosophy__grid{gap:6vw}.discovery__layout{gap:5vw}.booking__sidebar{padding:35px}.gallery-frame__image{height:460px}.gallery-frame:nth-child(even) .gallery-frame__image{height:370px}}
@media(max-width:780px){html{scroll-padding-top:72px}.demo-strip{height:26px;justify-content:center;font-size:7px}.demo-strip span+span{display:none}.header{top:26px;height:72px;padding:0 6vw}.header.solid,.menu-open .header{height:66px}.logo{font-size:34px}.nav{display:none}.head-search span+span{display:none}.head-book{display:none}.menu-btn{display:block}.intro{padding:28px 7vw}.intro__word{font-size:18vw}.intro__fine,.intro__motto{font-size:8px}.intro__bottom{font-size:8px}.intro__bottom span+span{display:none}.hero{min-height:660px;height:calc(100svh - 26px);max-height:920px}.hero__media img{object-position:61% 25%}.hero__veil{background:linear-gradient(0deg,rgba(22,19,17,.98) 0%,rgba(22,19,17,.75) 40%,rgba(24,21,19,.16) 100%)}.hero__edition{top:113px;left:7vw;font-size:8px}.hero__edition span{display:none}.hero__body{top:auto;bottom:105px;left:7vw;right:6vw;transform:none}.hero h1{font-size:clamp(78px,15.3vw,119px)}.hero__kicker{font-size:9px;margin-bottom:23px}.hero h1 span{margin-left:5vw}.hero__text{margin:22px 0;font-size:13px;max-width:325px}.circle-link{font-size:9px}.circle-link__orb{height:45px;width:45px}.hero__side{display:none}.hero__foot{left:7vw;right:7vw;bottom:25px;font-size:8px}.hero__foot span:first-child{display:none}.ticker{height:58px}.ticker>div{font-size:10px}.ticker span{margin:0 22px}.section-pad{padding:73px 7vw}.section-bar{font-size:8px;margin-bottom:55px}.section-bar span+span{display:none}.philosophy__headline{display:block;margin-bottom:55px}.philosophy__headline .side-note{display:block;font-size:9px;margin:0 0 23px}.philosophy__headline h2{font-size:clamp(65px,13.6vw,100px)}.philosophy__grid{display:block}.philosophy__photo img{height:460px}.philosophy__right{padding-top:45px}.philosophy__right h3{font-size:45px;margin:20px 0}.philosophy__right p{font-size:14px}.values{margin:35px 0}.story{height:150vh}.story__sticky{height:100svh;min-height:570px}.story__text{left:7vw;bottom:16%;width:86%}.story__text p{font-size:clamp(65px,12vw,100px)}.story__number{right:7vw;top:28px}.story__label{left:7vw;top:28px;font-size:8px}.story__progress{right:7vw;bottom:33px}.rituals__top{display:block;margin-bottom:45px}.rituals__top h2{font-size:clamp(76px,14vw,110px)}.rituals__top p{font-size:13px;margin-top:26px}.catalogue-controls{display:block}.catalogue-search{max-width:100%;margin-bottom:23px}.filters{gap:7px}.filters button{font-size:8px;padding:10px 12px}.catalogue-result{font-size:9px}.catalogue-grid{grid-template-columns:1fr;gap:19px}.treatment-card__img{height:320px}.treatment-card h3{font-size:48px;min-height:0}.treatment-card__desc{min-height:0}.catalogue-foot{display:block;line-height:1.6}.catalogue-foot .underline-link{margin-top:23px}.discovery__layout{display:block}.discovery__left h2{font-size:clamp(75px,14vw,110px);margin:23px 0}.discovery__left p{font-size:13px}.discovery__fine{margin-top:25px}.quiz{margin-top:45px;min-height:550px;padding:28px 24px}.quiz__progress{margin-bottom:40px}.quiz__question{font-size:42px}.quiz__option{font-size:13px}.quiz__suggestion img{width:70px;height:76px}.quiz__suggestion strong{font-size:23px}.quiz__suggestion{gap:10px}.action-btn{min-width:145px;padding:16px;gap:10px;font-size:9px}.gallery__heading{display:block}.gallery__heading h2{font-size:clamp(77px,13.5vw,105px)}.gallery__heading>div{width:auto}.gallery__heading p{font-size:13px;margin-top:25px}.gallery__nav{margin-top:23px}.gallery-rail{margin-right:-7vw;padding-right:7vw}.gallery-frame{width:79vw}.gallery-frame:nth-child(even){width:68vw;padding-top:40px}.gallery-frame__image{height:430px}.gallery-frame:nth-child(even) .gallery-frame__image{height:380px}.gallery-guide{font-size:8px;line-height:1.6}.gallery-guide span+span{display:none}.compare__title{display:block}.compare__title h2{font-size:clamp(76px,14vw,110px)}.compare__title p{margin-top:25px;font-size:13px}.compare__selectors{grid-template-columns:1fr;gap:15px}.compare-symbol{display:none}.compare-results{gap:14px}.comparison-card{padding:12px}.comparison-card img{height:190px}.comparison-card h3{font-size:32px}.comparison-card dl div{display:block;font-size:11px}.comparison-card dd{text-align:left;margin-top:6px}.comparison-card button{padding:17px 8px;font-size:9px}.booking__heading{display:block;margin-bottom:45px}.booking__heading h2{font-size:clamp(70px,13vw,106px)}.booking__heading p{margin-top:25px;font-size:13px}.booking__shell{display:block}.booking__sidebar{display:grid;grid-template-columns:1fr 95px;gap:10px;padding:23px}.book-side-label{grid-column:1/3;font-size:8px}.booking__sidebar h3{font-size:29px;margin:0}.book-side-preview{min-height:90px;grid-column:2;grid-row:2/4}.book-side-preview img{height:95px}.book-side-service{font-size:19px;padding:0}.book-side-foot{grid-column:1/3;font-size:8px}.booking__main{padding:31px 22px}.booking__meter{margin:22px 0 38px}.book-title{font-size:42px}.book-choices{gap:8px}.book-choice{padding:10px;min-height:98px}.book-choice strong{font-size:23px}.book-choice small{font-size:8px}.calendar-grid button{height:38px;font-size:12px}.time-slots{grid-template-columns:repeat(3,1fr)}.booking__actions{gap:9px}.book-legal{font-size:9px}.faq__layout{display:block}.faq__intro h2{font-size:clamp(67px,12vw,90px)}.faq__body{margin-top:50px}.faq-item summary{font-size:24px}.closing{min-height:650px}.closing h2{font-size:clamp(75px,13vw,115px)}.footer{padding:40px 7vw 115px}.footer__head{font-size:8px}.footer__head span{max-width:200px}.footer__word{font-size:21.5vw;margin:60px 0}.footer__base{flex-wrap:wrap;gap:16px;font-size:8px;line-height:1.6}.footer__base span:nth-child(2){order:3;width:100%}.mobile-dock{position:fixed;bottom:0;left:0;right:0;z-index:52;display:flex;padding:12px 6vw calc(12px + env(safe-area-inset-bottom));background:#eae0d4;box-shadow:0 -8px 30px #241d181a;gap:9px;transform:translateY(110%);transition:transform .4s}.mobile-dock.visible{transform:none}.mobile-dock button{border:0;background:#28211b;color:#f9ede1;padding:16px 13px;font-size:9px;letter-spacing:.08em;flex:1}.mobile-dock button:first-child{flex:0 0 95px;background:transparent;color:#2b241d;border:1px solid #9e8a76}.menu-open .mobile-dock,body.modal-open .mobile-dock{display:none}.detail-grid{display:block}.detail-photo{min-height:0;height:265px}.detail-copy{padding:35px 26px}.detail-copy h2{font-size:60px}.details-dialog{max-height:88vh}.lightbox img{inset:13vh 4vw;width:92vw;height:70vh}.lightbox__bottom{gap:10px}.lightbox__bottom #lightbox-caption{font-size:8px}.lightbox__bottom button{flex:0 0 43px}.quick-dialog{max-height:90vh}}
@media(max-width:380px){.hero h1{font-size:68px}.hero__body{bottom:100px}.story__text p{font-size:58px}.philosophy__headline h2{font-size:59px}.booking__heading h2{font-size:62px}.gallery-frame__image{height:370px}.gallery-frame:nth-child(even) .gallery-frame__image{height:320px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}.intro{display:none!important}.reveal,.hero__body>*{opacity:1!important;transform:none!important}.hero__media img{transform:none!important}.story__pane{transform:none!important}.story__pane--a{opacity:1!important}.story__pane--b{clip-path:inset(100%)!important}}

/* Accessibility validation adjustments */
.book-hint,.book-legal{color:#544638}.quiz__error{color:#8b342e;font-weight:500}

/* Explicitly respect hidden states across display-based components */
[hidden]{display:none!important}
.compare-notice{grid-column:1/-1;padding:36px 20px;border:1px solid #8b7966;color:#efe5d8;text-align:center;font-size:14px;line-height:1.7}

/* Contrast corrections validated against WCAG AA during interaction */
.gallery__heading h2 em{color:#82664e}.gallery__heading p{color:#514940}

/* ─── LÍVORA° / CHAPTER 2: BESPOKE ART DIRECTION ─── */
:root{--gallery-shadow:#090807}
.intro__film{position:absolute;inset:-7%;pointer-events:none;overflow:hidden;opacity:.32;filter:saturate(.26) sepia(.34);animation:introFilm 3.5s var(--e) both}.intro__film:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,#26201966 15%,#211b18 78%)}.intro__film img{width:100%;height:100%;object-fit:cover;transform:scale(1.13)}.intro__crest{position:absolute;top:50%;left:50%;font:clamp(260px,42vw,790px)/1 var(--serif);color:#fff4e8;opacity:.047;transform:translate(-50%,-54%);pointer-events:none;white-space:nowrap}.intro__crest span{font-size:.22em;vertical-align:top}
.intro__field{filter:drop-shadow(0 8px 30px #120b0988)}.intro__word{letter-spacing:-.057em}.intro__motto{color:#dbc3a6}.intro:before,.intro:after{border-color:#cfb69e18}
@keyframes introFilm{from{transform:scale(1.1);opacity:.08}to{transform:scale(1);opacity:.32}}
.hero__halo{position:absolute;right:9%;bottom:12%;z-index:3;display:flex;align-items:center;justify-content:center;width:clamp(120px,14vw,215px);aspect-ratio:1;border:1px solid #e7d7c36e;border-radius:50%;flex-direction:column;gap:9px;transform:rotate(-12deg);background:linear-gradient(150deg,#e5c5a915,#e5c5a900);backdrop-filter:blur(2px);pointer-events:none}.hero__halo:before{content:"";position:absolute;inset:10px;border:1px solid #e7d7c32a;border-radius:50%}.hero__halo>span{font:clamp(48px,6vw,91px)/1 var(--serif);color:#f2e2ce}.hero__halo small{font:8px var(--sans);letter-spacing:.16em;color:#f2e0cc}.hero__media{will-change:transform}.hero__media:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 45%,#231b1644 100%);pointer-events:none}
.atelier-bridge{position:relative;min-height:295px;padding:42px 5.5vw;display:grid;grid-template-columns:190px 1fr 250px;align-items:center;gap:4vw;background:#c3b29c;color:#2b221d;overflow:hidden}.atelier-bridge:before{content:"";position:absolute;left:-8%;bottom:-180%;width:75vw;height:75vw;border:1px solid #74645133;border-radius:50%;pointer-events:none}.atelier-bridge__seal{width:124px;height:124px;border:1px solid #77665088;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;transform:rotate(-12deg)}.atelier-bridge__seal>span{font:65px var(--serif)}.atelier-bridge__seal small{font-size:8px;letter-spacing:.17em}.atelier-bridge__message>span{font-size:9px;letter-spacing:.2em}.atelier-bridge__message p{font:clamp(45px,5.4vw,87px)/.94 var(--serif);letter-spacing:-.04em;margin:18px 0}.atelier-bridge__message p em{font-style:normal;color:#765943}.atelier-bridge__end{align-self:end;display:flex;align-items:end;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.16em;line-height:1.8}.atelier-bridge__end>a{font:34px var(--serif);width:62px;height:62px;display:grid;place-items:center;border:1px solid #645443;border-radius:50%;flex:0 0 auto;transition:transform .4s var(--e),background .4s}.atelier-bridge__end>a:hover{transform:rotate(45deg);background:#e9d9c5}
.philosophy__photo{position:relative}.philosophy__edition{position:absolute;width:clamp(110px,22%,210px);right:-10%;bottom:13%;z-index:2;padding:10px;background:#ece2d4;box-shadow:0 25px 70px #211a142b;transform:rotate(5deg)}.philosophy__edition span{display:block;font-size:8px;letter-spacing:.12em;margin-bottom:8px}.philosophy__edition img{width:100%;aspect-ratio:4/5;object-fit:cover;filter:saturate(.6)}.philosophy__photo>img{clip-path:inset(0 round 0 0 110px 0)}
.story__sticky{--first:0;--second:0}.story__pane--b{clip-path:inset(calc((1 - var(--first))*50%) calc((1 - var(--first))*50%));transform:scale(calc(1.11 - var(--first)*.1));opacity:1}.story__pane--c{clip-path:inset(calc((1 - var(--second))*50%) calc((1 - var(--second))*50%));transform:scale(calc(1.14 - var(--second)*.14));opacity:1}.story__pane--c img{object-position:60% 30%}.story__sticky:after{content:"";position:absolute;inset:18px;z-index:1;border:1px solid #f3e5d01f;pointer-events:none}
.catalogue-grid{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);gap:clamp(28px,5vw,90px);align-items:start}.catalogue-stage{position:sticky;top:90px;min-width:0;transition:opacity .15s}.catalogue-stage.is-swapping{opacity:.26}.catalogue-stage__photo{position:relative;height:clamp(430px,42vw,635px);overflow:hidden;background:#554537}.catalogue-stage__photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#241c19b8,transparent 45%)}.catalogue-stage__photo img{height:100%;width:100%;object-fit:cover;filter:saturate(.67)}.catalogue-stage__index{position:absolute;top:25px;left:26px;z-index:2;font-size:9px;letter-spacing:.2em}.catalogue-stage__watermark{position:absolute;right:23px;bottom:8px;z-index:2;font:140px var(--serif);letter-spacing:-.09em;color:#f7eadc32}.catalogue-stage__text{padding:30px 0}.catalogue-stage__category{font-size:9px;letter-spacing:.16em;color:#bda88f}.catalogue-stage h3{font:clamp(52px,6vw,95px)/1 var(--serif);letter-spacing:-.04em;margin:16px 0}.catalogue-stage p{font-size:14px;line-height:1.8;max-width:500px;color:#d4c3b1}.catalogue-stage__actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:27px}.catalogue-stage__actions button{background:transparent;border:1px solid #8c7865;padding:17px 18px;color:#f1e4d4;font-size:9px;letter-spacing:.12em;display:flex;align-items:center;justify-content:space-between;gap:20px;transition:background .25s,color .25s}.catalogue-stage__actions button:nth-child(2){background:#d9c5aa;color:#241e18;border-color:#d9c5aa}.catalogue-stage__actions button:hover{background:#f3e3cd;color:#2c2118}.catalogue-list{border-top:1px solid #786858}.ritual-line{display:flex;align-items:center;gap:6px;border-bottom:1px solid #695949;min-height:126px;position:relative}.ritual-line__main{flex:1;display:flex;text-align:left;align-items:center;gap:17px;border:0;background:transparent;color:#bba996;padding:21px 0;transition:color .3s;min-width:0}.ritual-line__main:hover,.ritual-line__main[aria-pressed=true]{color:#fff5e7}.ritual-line__main[aria-pressed=true]:before{content:"";position:absolute;left:-25px;top:22px;bottom:22px;width:2px;background:#dabd96}.ritual-line__number{font-size:10px;letter-spacing:.08em;align-self:flex-start;flex:0 0 30px;margin-top:12px}.ritual-line__title{display:flex;flex-direction:column;gap:10px;min-width:0;flex:1}.ritual-line__title strong{font:clamp(33px,3.6vw,59px)/1.04 var(--serif);letter-spacing:-.025em;font-weight:400}.ritual-line__title small{font-size:9px;letter-spacing:.11em;color:#b3a18d}.ritual-line__arrow{font:26px var(--serif);align-self:flex-start;margin-top:8px;transform:rotate(-40deg);transition:transform .3s}.ritual-line__main[aria-pressed=true] .ritual-line__arrow,.ritual-line__main:hover .ritual-line__arrow{transform:none}.ritual-line__save{flex:0 0 39px;border:1px solid #6d5c4a;background:transparent;border-radius:50%;height:39px;color:#e4d1bc;font-size:19px;transition:background .25s}.ritual-line__save[aria-pressed=true]{background:#ddc5a6;color:#30261d}
@media(max-width:1080px){.atelier-bridge{grid-template-columns:125px 1fr 165px;gap:20px}.atelier-bridge__end{flex-wrap:wrap}.catalogue-grid{gap:35px}.ritual-line__title strong{font-size:clamp(34px,4vw,50px)}.ritual-line__number{flex-basis:22px}.hero__halo{right:5%;bottom:10%}}
@media(max-width:780px){.intro__crest{font-size:70vw}.intro__film{inset:-15%}.hero__halo{width:96px;height:96px;right:7%;top:110px;bottom:auto}.hero__halo:before{inset:7px}.hero__halo>span{font-size:38px}.hero__halo small{font-size:5px;letter-spacing:.05em}.atelier-bridge{min-height:240px;padding:32px 7vw;grid-template-columns:65px 1fr;gap:20px}.atelier-bridge__seal{width:60px;height:60px}.atelier-bridge__seal>span{font-size:31px}.atelier-bridge__seal small{font-size:6px}.atelier-bridge__message>span{font-size:8px}.atelier-bridge__message p{font-size:clamp(45px,8.6vw,67px);line-height:1}.atelier-bridge__end{grid-column:1/-1;display:flex;align-items:center;font-size:8px}.atelier-bridge__end>a{width:38px;height:38px;font-size:25px}.philosophy__edition{right:-3%;bottom:12%;width:125px}.philosophy__edition span{font-size:6px}.philosophy__photo>img{clip-path:inset(0 round 0 0 58px 0)}.story__pane--c img{object-position:65%}.catalogue-grid{grid-template-columns:1fr;gap:33px}.catalogue-stage{position:relative;top:auto}.catalogue-stage__photo{height:390px}.catalogue-stage__text{padding:22px 0 0}.catalogue-stage h3{font-size:60px}.catalogue-stage p{font-size:13px}.catalogue-stage__actions{margin-top:24px}.catalogue-stage__actions button{padding:14px 12px;font-size:8px}.ritual-line{min-height:107px}.ritual-line__main[aria-pressed=true]:before{left:-9px}.ritual-line__title strong{font-size:39px}.ritual-line__title small{font-size:8px}.ritual-line__number{margin-top:6px}.ritual-line__arrow{font-size:21px;margin-top:4px}.ritual-line__save{flex-basis:34px;height:34px;font-size:16px}}
@media(max-width:380px){.atelier-bridge__message p{font-size:43px}.catalogue-stage__photo{height:335px}.catalogue-stage h3{font-size:54px}.ritual-line__title strong{font-size:34px}.ritual-line__main{gap:9px}.ritual-line__number{flex-basis:18px}.ritual-line__save{flex-basis:32px;height:32px}.catalogue-stage__actions{flex-direction:column}.catalogue-stage__actions button{width:100%}}
@media(prefers-reduced-motion:reduce){.intro__film{animation:none}.story__pane--b,.story__pane--c{clip-path:inset(100%)!important}.catalogue-stage{transition:none!important}}

/* Refinement QA / no horizontal leak at mobile photo overlay */
@media(max-width:780px){.philosophy__edition{right:0}}
/* Premium contrast, readable editorial statements on warm papers */
.philosophy__headline h2 i,.philosophy__right h3 em,.discovery__left h2 em,.booking__heading h2 em,.faq__intro h2 em{color:#765b44}
.gallery__heading h2 em{color:#66503c}
.gallery__heading p{color:#3c342c}
.gallery__nav #gallery-count{color:#29221e}
/* Movement comes from composition, rather than transient low-contrast typography */
.reveal{transition-property:opacity,transform;transition-duration:.95s,.85s}

/* LÍVORA — AUTHORIAL PHOTOGRAPHY CHAPTER */
.hero__media img{object-position:62% 35%;filter:saturate(.83) contrast(1.04)}
.hero__veil{background:linear-gradient(90deg,rgba(24,21,18,.92) 0%,rgba(29,24,21,.67) 39%,rgba(29,23,19,.22) 84%),linear-gradient(0deg,rgba(20,19,17,.47),transparent 31%)}
.philosophy__photo>img{object-position:center 31%}
.philosophy__edition img{aspect-ratio:4/5;object-position:56% 50%}
.story__pane--a img{object-position:center 62%}
.story__pane--b img{object-position:center 42%}
.story__pane--c img{object-position:48% 29%}
.discovery__visual{position:relative;margin:42px 0 0;max-width:315px}
.discovery__visual img{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:50% 60%;filter:saturate(.73)}
.discovery__visual figcaption{border-bottom:1px solid rgba(48,37,25,.4);padding:13px 0;font-size:9px;letter-spacing:.13em}
.image-essay{background:#e8ddd0;color:#2d251f;padding:70px 5.5vw 76px;overflow:hidden}
.image-essay__heading,.image-essay__footer{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #a9947f;padding-top:17px;font-size:9px;letter-spacing:.17em}
.image-essay__heading{margin-bottom:55px}
.image-essay__grid{display:grid;grid-template-columns:1.35fr .7fr .82fr;gap:clamp(12px,1.8vw,28px);align-items:start}
.image-essay figure{margin:0;min-width:0}
.image-essay figure img{width:100%;height:100%;object-fit:cover;filter:saturate(.77);transition:transform .8s cubic-bezier(.22,1,.36,1)}
.image-essay figure:hover img{transform:scale(1.025)}
.image-essay__large{height:clamp(460px,52vw,790px);overflow:hidden;position:relative}
.image-essay__large img{object-position:55% 50%}
.image-essay__column{display:flex;flex-direction:column;gap:45px;padding-top:80px}
.image-essay__copy>span{font-size:9px;letter-spacing:.17em}
.image-essay__copy p{font:clamp(37px,4.2vw,70px)/1.02 var(--serif);letter-spacing:-.045em;margin:22px 0}
.image-essay__copy p em{font-style:normal;color:#80624a}
.image-essay__line{width:85px;height:1px;background:#89735d;display:block;margin-top:24px}
.image-essay__small{height:clamp(210px,24vw,370px);position:relative;overflow:hidden}
.image-essay__third{height:clamp(400px,43vw,675px);overflow:hidden;position:relative;padding-top:0;margin-top:125px!important}
.image-essay__third img{object-position:58% 25%}
.image-essay figure figcaption{position:absolute;left:16px;bottom:14px;color:#fff8ef;background:#241e1b99;padding:10px 13px;letter-spacing:.13em;font-size:9px;z-index:1}
.image-essay__footer{margin-top:50px;font-size:9px;line-height:1.5}
.image-essay__footer a{white-space:nowrap;border-bottom:1px solid #9f8066;padding:0 0 9px}
.image-essay__footer a span{margin-left:12px}
@media(max-width:1050px){
 .image-essay__grid{grid-template-columns:1.1fr .9fr}
 .image-essay__third{grid-column:2;grid-row:1;margin-top:0!important;height:460px}
 .image-essay__column{grid-column:1/-1;grid-row:2;flex-direction:row;align-items:center;padding-top:12px;gap:30px}
 .image-essay__column>*{flex:1}
 .image-essay__small{height:300px}
 .image-essay__large{height:460px}
}
@media(max-width:780px){
 .hero__media img{object-position:49% 27%}
 .hero__veil{background:linear-gradient(0deg,rgba(22,19,17,.97) 0%,rgba(22,19,17,.75) 40%,rgba(24,21,19,.13) 100%)}
 .discovery__visual{margin-top:30px;max-width:none;width:55%}
 .image-essay{padding:62px 7vw 57px}
 .image-essay__heading{font-size:8px;margin-bottom:35px}
 .image-essay__heading span:last-child{display:none}
 .image-essay__grid{display:grid;grid-template-columns:1fr 0.72fr;gap:10px}
 .image-essay__large{height:410px}
 .image-essay__third{height:345px;grid-column:2;grid-row:1}
 .image-essay__column{grid-column:1/-1;grid-row:2;gap:16px;align-items:center}
 .image-essay__copy p{font-size:clamp(37px,9vw,62px)}
 .image-essay__small{height:230px}
 .image-essay__footer{font-size:8px;display:block;margin-top:36px}
 .image-essay__footer a{display:inline-block;margin-top:18px}
}
@media(max-width:380px){
 .image-essay__large{height:350px}
 .image-essay__third{height:295px}
 .image-essay__small{height:190px}
 .image-essay__copy p{font-size:33px}
}
@media(prefers-reduced-motion:reduce){.image-essay figure img{transition:none}}

/* LIVORA / Visual chapter III — architecture, gesture, stillness */
.space-story{min-height:690px;height:min(850px,84svh);position:relative;color:#faf1e7;background:#3e332c;overflow:hidden}
.space-story__media,.space-story__shade{position:absolute;inset:0;pointer-events:none}
.space-story__media img{width:100%;height:100%;object-fit:cover;object-position:50% 52%;filter:saturate(.68) sepia(.05)}
.space-story__shade{background:linear-gradient(90deg,rgba(24,22,20,.9),rgba(28,24,21,.5) 48%,rgba(24,22,20,.11) 100%),linear-gradient(0deg,rgba(22,20,19,.65),transparent 27%)}
.space-story__content{position:absolute;z-index:2;left:11vw;right:5.5vw;top:50%;transform:translateY(-44%);max-width:950px}
.space-story__eyebrow{font-size:10px;letter-spacing:.2em;opacity:.85}
.space-story h2{font:clamp(76px,9vw,145px)/.94 var(--serif);letter-spacing:-.055em;font-weight:400;margin:35px 0}
.space-story h2 em{font-style:normal;color:#ebc7a2}
.space-story__content>p:not(.space-story__eyebrow){max-width:385px;font-size:14px;line-height:1.95;color:#e3d6c9}
.space-story__link{display:inline-flex;gap:36px;align-items:center;border-bottom:1px solid #e6d3c0;padding:0 0 12px;margin-top:34px;font-size:9px;letter-spacing:.17em}
.space-story__link span{font-size:18px}
.space-story__footer{position:absolute;z-index:2;bottom:36px;left:5.5vw;right:5.5vw;display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.13em;color:#e8d6c5}
.compare__aside{width:300px;max-width:32%;display:flex;flex-direction:column;gap:14px}
.compare__aside figure{margin:0;width:180px;height:220px;overflow:hidden;align-self:flex-end;position:relative}
.compare__aside img{width:100%;height:100%;object-fit:cover;object-position:center 45%;filter:saturate(.65)}
.compare__aside p{font-size:14px;line-height:1.85;color:#d4c4b4}
.compare__aside>span{font-size:8px;letter-spacing:.16em;color:#c9b8a8;align-self:flex-end}
.faq__editorial{margin:50px 0 0;position:relative;width:min(100%,360px);height:295px;overflow:hidden}
.faq__editorial img{width:100%;height:100%;object-fit:cover;object-position:center 43%;filter:saturate(.6)}
.faq__editorial figcaption{position:absolute;bottom:13px;left:13px;font-size:8px;letter-spacing:.14em;background:#f3e9daee;color:#3a2c21;padding:10px 12px}
.footer__credits{color:#a89b8b;font-size:10px;line-height:1.85;letter-spacing:.02em;margin-top:30px;max-width:900px}
.footer__credits a{text-decoration:underline;text-underline-offset:3px;color:#d7c2ab}
@media(max-width:1080px){
 .space-story__content{left:7vw}
 .space-story h2{font-size:clamp(65px,9vw,110px)}
 .compare__aside{max-width:35%}
}
@media(max-width:780px){
 .space-story{min-height:570px;height:72svh}
 .space-story__media img{object-position:58%}
 .space-story__shade{background:linear-gradient(0deg,#191715dd,#19171585 62%,#19171515)}
 .space-story__content{left:7vw;right:7vw;top:auto;bottom:105px;transform:none}
 .space-story__eyebrow{font-size:8px}
 .space-story h2{font-size:clamp(61px,12vw,95px);margin:24px 0}
 .space-story__content>p:not(.space-story__eyebrow){font-size:12px;max-width:330px;line-height:1.75}
 .space-story__link{margin-top:22px;font-size:9px}
 .space-story__footer{left:7vw;right:7vw;bottom:25px;font-size:8px;line-height:1.5}
 .space-story__footer span:last-child{display:none}
 .compare__aside{width:100%;max-width:none;display:grid;grid-template-columns:115px 1fr;gap:15px;align-items:center;margin-top:30px}
 .compare__aside figure{height:145px;width:115px;grid-row:span 2}
 .compare__aside p{font-size:12px;max-width:300px;margin:0}
 .compare__aside>span{align-self:end;font-size:8px}
 .faq__editorial{width:100%;max-width:350px;height:210px;margin-top:36px}
 .footer__credits{font-size:9px;margin-top:25px}
}
@media(max-width:380px){.space-story h2{font-size:54px}.space-story__content{bottom:90px}.space-story{min-height:550px}.faq__editorial{height:180px}}
@media(prefers-reduced-motion:reduce){.space-story__media img{transform:none}}

/* Chapter III motion pacing: keep first-visit introduction under ~2.2s */
.intro{transition-duration:.7s}
.intro__film{animation-duration:1.8s}

/* LÍVORA MOBILE — natural scrolling, no pinned chapters or touch trap */
.story-mobile{display:none}
@media(max-width:780px){
 .story{height:auto;min-height:0;position:relative;background:#302821;overflow:visible;contain:none}
 .story__sticky{display:none!important}
 .story-mobile{display:block;padding:0 7vw 76px;background:#302821;color:#f5eadc}
 .story-mobile__lead{padding:72px 0 47px;border-top:1px solid #b39d8852}
 .story-mobile__lead>span{font-size:9px;letter-spacing:.18em;color:#d6c3af}
 .story-mobile__lead h2{font:clamp(58px,12vw,94px)/.98 var(--serif);letter-spacing:-.052em;font-weight:400;margin:22px 0}
 .story-mobile em{font-style:normal;color:#dabca0}
 .story-mobile__lead p{max-width:360px;font-size:13px;color:#d0bdad;line-height:1.8}
 .story-mobile__chapter{position:relative;display:grid;grid-template-columns:1fr;gap:0;margin:0 0 26px;background:#42362e;border:1px solid #f4e8d81b;overflow:hidden}
 .story-mobile__chapter figure{width:100%;height:auto;aspect-ratio:1.12;overflow:hidden;position:relative}
 .story-mobile__chapter figure img{width:100%;height:100%;object-fit:cover;filter:saturate(.74);display:block;transform:none!important;clip-path:none!important}
 .story-mobile__chapter--one img{object-position:51% 50%}
 .story-mobile__chapter--two img{object-position:48% 35%}
 .story-mobile__chapter--three img{object-position:49% 26%}
 .story-mobile__chapter--two{background:#e0d2c1;color:#2c241f}
 .story-mobile__chapter--two em{color:#7e5a42}
 .story-mobile__chapter--two .story-mobile__caption>span,.story-mobile__chapter--two .story-mobile__caption p{color:#51483f}
 .story-mobile__chapter--three figure{aspect-ratio:1.05}
 .story-mobile__caption{position:relative;padding:27px 25px 30px}
 .story-mobile__caption>span{font-size:9px;letter-spacing:.18em;color:#d8bea5}
 .story-mobile__caption h3{font:clamp(48px,10.5vw,72px)/.99 var(--serif);letter-spacing:-.045em;font-weight:400;margin:18px 0}
 .story-mobile__caption p{font-size:13px;color:#dfcfc0;line-height:1.75;max-width:310px}
 .story-mobile__next{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #aa94825b;border-bottom:1px solid #aa94825b;padding:21px 3px;font-size:10px;letter-spacing:.16em}
 .story-mobile__next span{font-size:23px}
 .gallery-rail{touch-action:auto!important;overscroll-behavior-x:auto;overscroll-behavior-y:auto}
 .gallery-track{user-select:none}
 .gallery-frame button{touch-action:manipulation}
 .rituals__top{margin-bottom:37px}
 .ritual-line__main{min-height:83px}
 .catalogue-stage__photo{height:clamp(295px,88vw,400px)}
 .section-pad{padding-top:68px;padding-bottom:68px}
 .faq-item summary{min-height:62px}
 .mobile-dock{box-shadow:0 -4px 22px #241d1817;transform:translateY(120%)}
 .header.solid{backdrop-filter:blur(12px)}
}
@media(min-width:650px) and (max-width:780px){
 .story-mobile__chapter{grid-template-columns:1.06fr .94fr}
 .story-mobile__chapter figure{aspect-ratio:auto;height:350px}
 .story-mobile__caption{align-self:center;padding:30px}
 .story-mobile__chapter--three figure{aspect-ratio:auto}
 .story-mobile__caption h3{font-size:clamp(43px,6.7vw,62px)}
}
@media(max-width:380px){
 .story-mobile__lead h2{font-size:56px}
 .story-mobile__caption h3{font-size:46px}
 .story-mobile__chapter figure{aspect-ratio:1.08}
}
@media(prefers-reduced-motion:reduce){
 .story-mobile__chapter *{animation:none!important;transition:none!important}
}

/* LÍVORA SIGNATURE REFINEMENT — progressive enhancement; original art direction intact */
.footer__links{display:flex;align-items:center;gap:clamp(14px,2.5vw,36px)}
.footer__replay,.footer__links button{appearance:none;background:none;border:0;padding:10px 0;color:inherit;cursor:pointer;font:inherit;font-size:inherit;letter-spacing:inherit;text-transform:uppercase}
.footer__links button{opacity:.72;transition:opacity .25s ease,color .25s ease}
.footer__links button:hover,.footer__links button:focus-visible{opacity:1}
:where(button,a,[role="button"]){touch-action:manipulation}
@media(max-width:780px){
 .footer__head{align-items:flex-start;gap:15px}
 .footer__links{flex-direction:column;align-items:flex-end;gap:5px}
 .footer__links button{font-size:9px;letter-spacing:.10em}
 .mobile-dock button{min-height:48px}
 .mobile-nav a{min-height:52px}
 .motion-ready .story-mobile__chapter{opacity:0;transform:translate3d(0,22px,0);transition:opacity .85s var(--e),transform .85s var(--e)}
 .motion-ready .story-mobile__chapter.visible{opacity:1;transform:translate3d(0,0,0)}
}
@media(prefers-reduced-motion:reduce){
 .motion-ready .story-mobile__chapter{opacity:1!important;transform:none!important}
 .footer__links button{transition:none!important}
}

/* Replay is not offered when motion is explicitly reduced */
@media(prefers-reduced-motion:reduce){#intro-replay{display:none!important}}


/* LÍVORA / mobile discovery composition — photo and quiz in proper editorial rhythm */
@media (max-width:780px) {
  .discovery__visual {
    width:100%;
    max-width:none;
    margin:24px 0 0;
    display:block;
    overflow:visible;
  }
  .discovery__visual img {
    display:block;
    width:100%;
    height:clamp(224px,64vw,308px);
    max-height:308px;
    aspect-ratio:auto;
    object-fit:cover;
    object-position:50% 61%;
    filter:saturate(.78) contrast(1.02);
  }
  .discovery__visual figcaption {
    font-size:9px;
    letter-spacing:.12em;
    line-height:1.5;
    padding:14px 0;
    border-bottom:1px solid rgba(48,37,25,.32);
  }
  .discovery__fine {margin-top:31px;letter-spacing:.13em;line-height:1.6}
  .discovery__layout .quiz {margin-top:35px}
  .mobile-dock {
    padding:7px 5vw calc(7px + env(safe-area-inset-bottom));
    gap:8px;
  }
  .mobile-dock button {
    padding:11px 10px;
    min-height:44px;
    line-height:1.35;
  }
  .mobile-dock button:first-child {flex:0 0 96px}
}
@media(max-width:380px) {
  .discovery__visual img {height:228px}
  .mobile-dock button {font-size:8px}
  .mobile-dock button:first-child {flex:0 0 88px}
}

/* LÍVORA° / ATELIER EDITORIAL — ISSUE 01.
   Deliberate creative system for the body. Existing intro untouched. */
:root{--atelier-ink:#241f1a;--atelier-paper:#f0e9e0;--atelier-clay:#d8c7b5;--atelier-dark:#27221d}
html{scroll-padding-top:84px}
main{overflow:clip}
.section-pad{padding:clamp(94px,10vw,155px) 6.5vw}
.section-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid currentColor;padding-top:16px;margin-bottom:clamp(53px,6vw,95px);font-size:9px;letter-spacing:.17em;line-height:1.6;opacity:.78}
.section-bar>span:first-child{display:flex;align-items:center;gap:13px}
.section-bar>span:first-child:before{content:"";display:block;width:18px;height:1px;background:currentColor}
.section-bar>span:last-child{text-align:right;font-size:8px}
.reveal{transition-property:opacity,transform;transition-duration:1s,.95s;transition-timing-function:var(--e)}
.header.solid,.menu-open .header{background:rgba(239,233,223,.97);border-bottom:1px solid #baad9c;backdrop-filter:blur(12px)}
.logo{letter-spacing:-.067em}
.nav{gap:clamp(18px,2vw,34px)}
.nav a{letter-spacing:.16em}
/* Hero editorial cover */
.hero{background:#241f1b}
.hero__media img{filter:saturate(.74) contrast(1.04)}
.hero__veil{background:linear-gradient(90deg,rgba(24,20,18,.95),rgba(24,20,18,.75) 42%,rgba(24,20,18,.15) 94%),linear-gradient(0deg,rgba(20,17,14,.46),transparent 42%)}
.hero h1{letter-spacing:-.064em;line-height:.92}
.hero__text{font-size:14px;line-height:1.9;max-width:345px;letter-spacing:.01em}
.hero__halo{opacity:.42}
.circle-link__orb{border-radius:0;width:48px;height:48px}
.circle-link:hover .circle-link__orb{transform:translate(4px,-3px)}
@media(min-width:781px){
 .hero__media{inset:0 0 0 26%}
 .hero__media img{object-position:50% 36%}
 .hero__veil{background:linear-gradient(90deg,#241f1b 0%,rgba(36,31,27,.95) 22%,rgba(36,31,27,.35) 64%,rgba(36,31,27,.05) 100%),linear-gradient(0deg,#18161355,transparent 32%)}
 .hero__body{left:8vw;top:52%;transform:translateY(-45%);max-width:850px}
 .hero h1{font-size:clamp(82px,10.2vw,170px)}
 .hero__edition,.hero__foot{left:8vw}
}
/* Manifesto: typographic chapter rather than a template statement band */
.atelier-bridge{display:grid;grid-template-columns:minmax(75px,.2fr) minmax(0,1fr) minmax(160px,.3fr);align-items:start;gap:clamp(22px,4vw,90px);min-height:0;padding:clamp(70px,8.3vw,135px) 6.5vw;background:#dfd1c0;color:#29231e;border-bottom:1px solid #b6a18b}
.atelier-bridge__seal{width:auto;height:auto;display:flex;align-items:flex-start;justify-content:flex-start;gap:3px;border:0;border-radius:0;transform:none;opacity:1;color:#745f4c}
.atelier-bridge__seal>span{font:clamp(40px,4vw,64px)/1 var(--serif)}
.atelier-bridge__seal small{font-size:8px;letter-spacing:.1em;margin-top:11px}
.atelier-bridge__message>span{letter-spacing:.17em;font-size:9px}
.atelier-bridge__message p{font:clamp(70px,7.25vw,122px)/.93 var(--serif);letter-spacing:-.06em;margin:28px 0 26px}
.atelier-bridge__message p em{color:#856a55}
.manifesto__caption{display:block;font-size:9px;letter-spacing:.17em;line-height:1.8;color:#5d4d3e}
.atelier-bridge__end{align-self:end;display:flex;flex-direction:column;gap:28px;line-height:1.75;font-size:9px;letter-spacing:.14em;color:#645345}
.atelier-bridge__end>a{align-self:start;border-radius:0;border:1px solid #9c8068;width:47px;height:47px;display:grid;place-items:center;font-size:23px}
.atelier-bridge__end>a:hover{background:#241f1a;color:#f1e8de}
/* The essence, composed like a photographic spread */
.philosophy{background:#f3ede5}
.philosophy__headline{display:grid;grid-template-columns:minmax(105px,.2fr) minmax(0,1fr);gap:clamp(35px,5vw,90px);margin-bottom:clamp(60px,8vw,120px);align-items:start}
.philosophy__headline .side-note{font-size:9px;letter-spacing:.14em;line-height:1.9;margin-top:17px}
.philosophy__headline h2{font-size:clamp(77px,9vw,150px);line-height:.92;letter-spacing:-.058em;max-width:1040px}
.philosophy__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.82fr);gap:clamp(50px,8vw,145px);align-items:center}
.philosophy__photo{width:100%;max-width:735px}
.philosophy__photo>img{width:100%;height:clamp(540px,57vw,815px);object-fit:cover;object-position:50% 27%;clip-path:none;filter:saturate(.8)}
.philosophy__edition{width:clamp(120px,24%,195px);right:-6%;bottom:13%;padding:5px;border:5px solid #f3ede5;transform:none;box-shadow:none;background:#f3ede5}
.philosophy__right{max-width:440px}
.philosophy__right .mark{display:none}
.philosophy__right h3{font-size:clamp(47px,4.1vw,71px);line-height:1.07;margin:0 0 32px}
.philosophy__right p{font-size:15px;line-height:2.05;max-width:390px}
.philosophy__right .values{margin-top:42px}
.philosophy__right .values span{font-size:9px;letter-spacing:.15em}
/* The story keeps the sticky desktop cinematography */
.story{background:#292420}
.story-mobile__chapter{border:0}
.story-mobile__caption h3{letter-spacing:-.052em}
/* Interactive lookbook, not a box grid */
.rituals{background:#27221e}
.rituals__top{gap:62px;margin-bottom:clamp(50px,6vw,90px)}
.rituals__top h2{font-size:clamp(84px,9.3vw,158px);letter-spacing:-.057em;line-height:.94}
.rituals__top p{max-width:320px;line-height:1.9}
.catalogue-controls{border-color:#79675b;align-items:center}
.catalogue-grid{gap:clamp(34px,6vw,96px);align-items:start}
.catalogue-stage{top:96px}
.catalogue-stage__photo{height:clamp(425px,45vw,700px)}
.catalogue-stage h3{font-size:clamp(57px,5.8vw,96px);letter-spacing:-.062em}
.ritual-line{border-color:#c1ab9754}
.ritual-line__title strong{letter-spacing:-.05em}
.ritual-line__main{transition:color .35s,transform .4s var(--e)}
.ritual-line__main:hover{transform:translateX(5px)}
/* Quiz: concierge-like typography and cropped supporting photography */
.discovery{background:#e5dace}
.discovery__layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:clamp(60px,8vw,155px);align-items:start}
.discovery__symbol{font:25px/1 var(--serif);color:#8c6f55;letter-spacing:-.04em}
.discovery__symbol span{font:8px var(--sans);letter-spacing:.17em}
.discovery__left h2{font-size:clamp(71px,7.4vw,130px);line-height:.93;margin:31px 0 35px;letter-spacing:-.06em}
.discovery__left p{font-size:14px;line-height:1.95;max-width:380px;color:#54483e}
.discovery__fine{border-top:1px solid #ab9681;margin-top:36px;padding-top:18px;font-size:9px;letter-spacing:.16em}
.discovery__visual{width:100%;max-width:420px;margin:23px 0 0}
.discovery__visual img{width:100%;height:265px;aspect-ratio:auto;object-fit:cover;object-position:50% 58%;filter:saturate(.75)}
.discovery__visual figcaption{font-size:8px;letter-spacing:.14em}
.quiz{background:#f5eee6;min-height:610px;padding:clamp(30px,4.5vw,68px);box-shadow:none;border:1px solid #b6a28f66}
/* Photo essay */
.image-essay{background:#ded2c3;padding:clamp(78px,8vw,135px) 6.5vw}
.image-essay__heading{margin-bottom:clamp(40px,5vw,80px)}
.image-essay__grid{grid-template-columns:1.25fr .72fr .88fr;gap:clamp(15px,2.4vw,34px)}
.image-essay__large{height:clamp(520px,55vw,835px)}
.image-essay__column{padding-top:110px;gap:55px}
.image-essay__third{height:clamp(450px,46vw,705px);margin-top:95px!important}
.image-essay figure img{filter:saturate(.78) contrast(1.035)}
.image-essay figure figcaption{background:rgba(37,31,25,.55);font-size:9px;letter-spacing:.15em}
.image-essay__copy p{font-size:clamp(43px,4.5vw,77px)}
.gallery-section{background:#f2ece4}
.gallery__heading{margin-bottom:65px}
.gallery__heading h2{font-size:clamp(79px,8.7vw,149px);line-height:.92;letter-spacing:-.056em}
.gallery__heading>div{max-width:335px}
.gallery__heading p{line-height:1.95}
.gallery-frame__image img{filter:saturate(.81)}
.gallery-frame:nth-child(even){transform:translateY(28px)}
.gallery-rail{padding-bottom:36px}
.space-story__shade{background:linear-gradient(90deg,rgba(26,23,20,.82),rgba(26,23,20,.25) 70%,transparent),linear-gradient(0deg,rgba(27,24,22,.52),transparent 38%)}
.space-story__content{left:8.5vw}
.space-story h2{max-width:900px;letter-spacing:-.053em}
/* Functional pages made editorial rather than widget-like */
.compare{background:#302923}
.compare__title{gap:70px}
.compare__title h2{font-size:clamp(75px,8vw,135px);line-height:.94;letter-spacing:-.057em}
.compare__aside{max-width:290px}
.compare-symbol{font:38px var(--serif);opacity:.5}
.compare-results{gap:1px;background:#bca89344;border:1px solid #bca89344}
.compare-results>*{background:#302923}
.booking{background:#e3d6c5}
.booking__heading{margin-bottom:70px}
.booking__heading h2{font-size:clamp(77px,8.5vw,145px);letter-spacing:-.06em;line-height:.94}
.booking__star{font:9px var(--sans);letter-spacing:.18em}
.booking__shell{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);background:#f0e8dd;box-shadow:none;border:1px solid #b5a28d}
.booking__sidebar{background:#3b3028}
.booking__main{background:#f0e8dd}
.faq{background:#f2ebe2}
.faq__layout{grid-template-columns:minmax(0,.74fr) minmax(0,1fr);gap:clamp(60px,9vw,150px)}
.faq__intro h2{font-size:clamp(66px,6.7vw,115px);line-height:.99}
.faq-item summary{font-size:clamp(22px,2.2vw,34px);line-height:1.15;padding:28px 0}
.faq__editorial{height:240px}
/* Epilogue: an entirely new split photographic layout */
.closing{background:#211c18;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.78fr);text-align:left;min-height:750px;padding:0;align-items:stretch;overflow:hidden}
.closing__body{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;padding:clamp(70px,8vw,135px) clamp(34px,7vw,130px);position:relative;z-index:2}
.closing__small{font-size:9px;letter-spacing:.23em;color:#cab69e}
.closing__rule{display:block;width:92px;height:1px;background:#a98d70;margin-top:32px}
.closing h2{font:clamp(77px,8.7vw,145px)/.9 var(--serif);letter-spacing:-.06em;margin:clamp(39px,5.4vw,90px) 0 35px;text-align:left}
.closing h2 em{color:#caac8e}
.closing p{max-width:340px;font-size:10px;line-height:1.9;letter-spacing:.16em;text-align:left;color:#d6c6b4}
.closing button{margin-top:45px;padding:19px 25px;background:transparent;color:#f3e9da;border:1px solid #c9b29b;text-align:left;border-radius:0;letter-spacing:.15em;font-size:10px}
.closing button:hover{background:#e6d9c9;color:#241d18}
.closing__folio{margin-top:auto;padding-top:65px;font-size:8px;letter-spacing:.15em;color:#a88f76}
.closing__portrait{margin:0;position:relative;overflow:hidden;min-width:0}
.closing__portrait img{width:100%;height:100%;min-height:750px;object-fit:cover;object-position:50% 45%;filter:saturate(.7) sepia(.09) contrast(1.06)}
.closing__portrait:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(33,28,24,.28),transparent 32%),linear-gradient(0deg,rgba(33,28,24,.32),transparent 50%);pointer-events:none}
.closing__portrait figcaption{position:absolute;bottom:36px;right:6%;z-index:2;font-size:8px;letter-spacing:.2em;color:#eee0d2}
.closing__circle{display:none}
@media(min-width:781px) and (max-width:1140px){
 .atelier-bridge{grid-template-columns:72px 1fr;gap:30px}
 .atelier-bridge__end{grid-column:2;flex-direction:row;align-items:center}
 .philosophy__grid{gap:5vw}
 .philosophy__headline h2{font-size:clamp(74px,9vw,112px)}
 .image-essay__column{padding-top:55px}
 .closing__body{padding:75px 6vw}
 .closing h2{font-size:clamp(75px,8vw,110px)}
}
@media(max-width:780px){
 html{scroll-padding-top:76px}
 .section-pad{padding:77px 7vw 86px}
 .section-bar{display:flex;align-items:flex-start;flex-direction:column;gap:7px;margin-bottom:47px;font-size:8px;line-height:1.65}
 .section-bar>span:last-child{text-align:left;padding-left:33px;font-size:8px;opacity:.78}
 .section-bar>span:first-child:before{width:16px}
 .hero{min-height:645px;height:calc(100svh - 26px);max-height:910px}
 .hero__media{inset:0}
 .hero__media img{object-position:52% 26%}
 .hero__veil{background:linear-gradient(0deg,rgba(26,22,19,.97) 0%,rgba(26,22,19,.84) 33%,rgba(26,22,19,.11) 91%)}
 .hero__body{top:auto;bottom:105px;left:7vw;right:7vw;transform:none}
 .hero h1{font-size:clamp(67px,14.8vw,104px);line-height:.92}
 .hero h1 span{margin-left:4vw}
 .hero__kicker{font-size:9px;letter-spacing:.14em}
 .hero__text{font-size:13px;line-height:1.75;max-width:330px;margin:23px 0}
 .hero__halo{opacity:.29}
 .atelier-bridge{display:block;padding:56px 7vw 59px}
 .atelier-bridge__seal{flex-direction:row;align-items:baseline;margin-bottom:29px}
 .atelier-bridge__seal>span{font-size:43px}
 .atelier-bridge__seal small{margin-left:8px;margin-top:0}
 .atelier-bridge__message>span{font-size:8px}
 .atelier-bridge__message p{font-size:clamp(56px,12.3vw,93px);line-height:.95;letter-spacing:-.055em;margin:20px 0}
 .manifesto__caption{font-size:8px;line-height:1.7}
 .atelier-bridge__end{margin-top:34px;display:grid;grid-template-columns:minmax(0,1fr) 48px;gap:22px;align-items:end}
 .atelier-bridge__end span{font-size:8px}
 .atelier-bridge__end a{width:45px;height:45px}
 .philosophy__headline{display:block;margin-bottom:57px}
 .philosophy__headline .side-note{display:block;margin:0 0 29px;line-height:1.8}
 .philosophy__headline h2{font-size:clamp(59px,12.6vw,101px);line-height:.93}
 .philosophy__grid{display:flex;flex-direction:column;gap:53px;align-items:stretch}
 .philosophy__photo{width:94%;margin:0}
 .philosophy__photo>img{height:clamp(445px,123vw,650px);object-position:50% 24%;clip-path:none}
 .philosophy__edition{width:31%;right:-8%;bottom:12%;padding:3px;border-width:5px}
 .philosophy__right{padding:0;max-width:500px}
 .philosophy__right h3{font-size:clamp(47px,10.3vw,72px);margin:0 0 30px}
 .philosophy__right p{font-size:14px;line-height:1.85}
 .philosophy__right .values{margin-top:31px}
 .story-mobile{padding:0 7vw 72px}
 .story-mobile__lead{padding-top:65px}
 .story-mobile__chapter{margin:0 0 23px;border:0}
 .story-mobile__chapter--one{margin-right:6vw}
 .story-mobile__chapter--two{margin-left:6vw}
 .story-mobile__chapter--three{margin-right:6vw}
 .story-mobile__chapter figure{aspect-ratio:1.1}
 .story-mobile__caption{padding:25px 25px 30px}
 .story-mobile__caption h3{font-size:clamp(44px,10.2vw,68px)}
 .rituals__top{display:block;margin-bottom:50px}
 .rituals__top h2{font-size:clamp(65px,13.2vw,105px);line-height:.94}
 .rituals__top p{max-width:390px;font-size:13px;margin-top:28px}
 .catalogue-grid{display:grid;grid-template-columns:1fr;gap:34px}
 .catalogue-stage{position:relative;top:auto}
 .catalogue-stage__photo{height:clamp(320px,87vw,470px)}
 .catalogue-stage h3{font-size:clamp(55px,12.1vw,82px)}
 .ritual-line__main:hover{transform:none}
 .discovery__layout{display:flex;flex-direction:column;gap:0}
 .discovery__left{width:100%}
 .discovery__symbol{font-size:25px}
 .discovery__left h2{font-size:clamp(65px,13.5vw,105px);margin:29px 0 27px}
 .discovery__left p{font-size:13px;line-height:1.85}
 .discovery__fine{margin-top:33px;font-size:9px}
 .discovery__visual{max-width:none;margin-top:23px;width:100%}
 .discovery__visual img{height:clamp(235px,65vw,315px);object-position:50% 62%}
 .discovery__layout .quiz{margin-top:35px;width:100%;min-height:520px;padding:30px 23px}
 .image-essay{padding:73px 7vw 78px}
 .image-essay__heading{margin-bottom:33px}
 .image-essay__grid{display:grid;grid-template-columns:1fr .84fr;gap:12px}
 .image-essay__large{grid-column:1/-1;grid-row:1;height:clamp(360px,95vw,530px)}
 .image-essay__column{grid-column:1;grid-row:2;display:flex;flex-direction:column;align-items:stretch;gap:19px;padding:10px 0 0}
 .image-essay__third{grid-column:2;grid-row:2;min-height:340px;height:100%;margin-top:0!important}
 .image-essay__copy p{font-size:clamp(34px,8vw,59px)}
 .image-essay__small{height:clamp(175px,48vw,265px);width:100%}
 .image-essay__footer{margin-top:35px}
 .gallery__heading{margin-bottom:43px}
 .gallery__heading h2{font-size:clamp(66px,13vw,102px)}
 .gallery__heading>div{max-width:420px}
 .gallery-frame:nth-child(even){transform:none}
 .gallery-rail{padding-bottom:7px}
 .space-story{min-height:565px;height:74svh}
 .space-story__content{left:7vw;right:7vw;bottom:105px;top:auto;transform:none}
 .space-story h2{font-size:clamp(62px,12.6vw,98px)}
 .compare__title h2{font-size:clamp(68px,13.2vw,103px)}
 .compare-results{gap:1px}
 .booking__heading h2{font-size:clamp(65px,12.8vw,101px)}
 .booking__shell{display:block}
 .booking__sidebar{padding:27px}
 .booking__main{padding:30px 23px}
 .faq__layout{display:block}
 .faq__intro h2{font-size:clamp(60px,11.8vw,97px)}
 .faq-item summary{font-size:24px}
 .faq__editorial{height:210px}
 .closing{display:flex;flex-direction:column;min-height:0}
 .closing__portrait{order:1;height:clamp(350px,100vw,510px)}
 .closing__portrait img{height:100%;min-height:0;object-position:50% 44%}
 .closing__portrait figcaption{bottom:20px}
 .closing__body{order:2;padding:65px 7vw 70px}
 .closing__rule{margin-top:25px}
 .closing h2{font-size:clamp(80px,15.4vw,122px);margin:37px 0 29px}
 .closing p{font-size:9px;max-width:300px}
 .closing button{margin-top:34px}
 .closing__folio{padding-top:64px}
 .mobile-dock{left:5vw;right:5vw;bottom:calc(7px + env(safe-area-inset-bottom));padding:5px;gap:6px;background:#e9dfd4;border:1px solid #b3a08b;box-shadow:0 10px 35px #201a1542;transform:translateY(calc(120% + 28px))}
 .mobile-dock.visible{transform:none}
 .mobile-dock button{padding:10px 8px;min-height:45px;font-size:9px}
 .mobile-dock button:first-child{flex:0 0 87px}
 .footer{padding-bottom:97px}
}
@media(max-width:380px){
 .hero h1{font-size:clamp(63px,15.5vw,73px)}
 .philosophy__headline h2{font-size:clamp(58px,12.3vw,75px)}
 .atelier-bridge__message p{font-size:clamp(53px,12.2vw,72px)}
 .discovery__left h2{font-size:clamp(61px,13.3vw,78px)}
 .image-essay__third{min-height:310px}
 .image-essay__copy p{font-size:34px}
 .mobile-dock button{font-size:8px}
 .mobile-dock button:first-child{flex:0 0 79px}
}
@media(prefers-reduced-motion:reduce){.ritual-line__main,.gallery-frame{transition:none!important}}

/* Final QA — mobile editorial integrity and touch targets */
@media(max-width:780px){
  .discovery__layout .quiz{scroll-margin-top:88px}
  .closing__body button{min-height:48px}
  .mobile-nav a{min-height:51px}
  .faq-item summary{min-height:60px}
  .gallery-frame:nth-child(even){transform:none}
}
@media(max-width:350px){
  .hero h1{font-size:clamp(61px,15.1vw,70px)}
  .atelier-bridge__message p{font-size:50px}
  .philosophy__headline h2{font-size:55px}
  .closing h2{font-size:clamp(67px,15vw,80px)}
}
