:root{--esp:#1b110c;--coc:#3a261b;--rose:#7a4a3f;--gold:#c19a5b;--paper:#fbf8f5;--blush:#efe3dc;--ink:#2b1d16;--mute:#6f5e55;--line:#e2d3c9;--hd:68px;--disp:"Marcellus",Georgia,serif;--body:"Roboto",system-ui,sans-serif;--ease:cubic-bezier(.2,.7,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--hd) + 56px)}
body{margin:0;font:400 17px/1.7 var(--body);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}a{color:inherit}
h1,h2,h3,h4{font-family:var(--disp);font-weight:400;margin:0;line-height:1.08;letter-spacing:-.01em}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.skip{position:absolute;left:-999px;top:8px;background:var(--gold);color:#000;padding:8px 14px;z-index:100}.skip:focus{left:8px}
.wrap{max-width:1200px;margin:auto;padding:0 24px}
/* header */
.hd{position:sticky;top:0;z-index:40;height:var(--hd);background:var(--esp);display:flex;align-items:center;justify-content:space-between;padding:0 28px;border-bottom:1px solid #35261c}
.logo img{height:48px;width:auto}
.nav{display:flex;align-items:center;gap:30px}.nav a{text-decoration:none;color:#e8dccd;font-size:15px;font-weight:500;padding:6px 0;background:linear-gradient(var(--gold),var(--gold)) left bottom/0 1px no-repeat;transition:background-size .35s var(--ease),color .2s}
.nav a:hover,.nav a.on{color:#fff;background-size:100% 1px}
.nav .navbook{border:1px solid var(--gold);color:var(--gold);padding:9px 20px;background:none;transition:.25s}.nav .navbook:hover{background:var(--gold);color:#000}
.burger{display:none;background:none;border:0;padding:10px;cursor:pointer}.burger span{display:block;width:26px;height:2px;background:var(--gold);margin:6px 0;transition:.3s}
.burger[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.burger[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}
/* arch motif: the salon mirror */
.arch{position:relative;border-radius:999px 999px 0 0;aspect-ratio:3/4;width:100%}
.arch img{width:100%;height:100%;object-fit:cover;border-radius:inherit}
.arch:after{content:"";position:absolute;inset:-12px;border:1px solid var(--gold);border-radius:999px 999px 0 0;pointer-events:none;opacity:.8}
.arch.big{aspect-ratio:4/5}
/* buttons */
.btn{display:inline-block;background:var(--gold);color:#1b110c!important;border:1px solid var(--gold);padding:14px 30px;font:600 15px var(--body);text-decoration:none;cursor:pointer;transition:.25s;border-radius:2px}
.btn:hover{background:var(--esp);border-color:var(--esp);color:var(--paper)!important}
.btn.ghost{background:transparent;border-color:var(--coc);color:var(--coc)!important}.btn.ghost:hover{background:var(--coc);color:var(--paper)!important}
.tel{font:500 18px var(--body);text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:2px}
.more{color:var(--rose);font-weight:600;text-decoration:none;border-bottom:1px solid currentColor}
/* hero */
.hero{padding:72px 0 96px;overflow:hidden}
.hero-in{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center}
.hero h1{font-size:clamp(46px,7.4vw,98px);line-height:1;letter-spacing:-.025em;color:var(--esp)}
.hero h1 span{display:block;animation:lift 1s var(--ease) both}.hero h1 span:nth-child(2){animation-delay:.14s;color:var(--rose)}
.lead{font-size:20px;color:var(--mute);margin:26px 0 34px;max-width:34ch;animation:lift 1s var(--ease) .3s both}
.cta{display:flex;flex-wrap:wrap;gap:22px;align-items:center;animation:lift 1s var(--ease) .42s both}
.hero-a{max-width:470px;margin-left:auto}.hero-a img{animation:unveil 1.3s var(--ease) .1s both}
@keyframes lift{from{opacity:0;transform:translateY(.45em)}to{opacity:1;transform:none}}
@keyframes unveil{from{clip-path:inset(100% 0 0 0);transform:scale(1.12)}to{clip-path:inset(0);transform:none}}
/* sections */
.sec{padding:96px 0}.tint{background:var(--blush)}.dark{background:var(--esp);color:var(--paper)}.dark h2{color:var(--gold)}
.sh{margin-bottom:44px;max-width:640px}.sh h2{font-size:clamp(34px,4.4vw,56px)}.sh p{margin:12px 0 0;color:var(--mute);font-size:18px}
/* service reel */
.reelsec{padding-top:40px}
.reel{display:flex;gap:12px;height:clamp(440px,64vh,640px)}
.pn{position:relative;flex:1;min-width:0;overflow:hidden;border-radius:240px 240px 0 0;text-decoration:none;color:#fff;transition:flex .7s var(--ease)}
.pn.open{flex:3.4}.pn img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}.pn.open img{transform:scale(1.04)}
.pn:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 40%,rgba(18,10,6,.88))}
.pt{position:absolute;left:0;right:0;bottom:0;padding:28px 24px 30px;z-index:2;white-space:nowrap;overflow:hidden}
.pt h3{font-size:30px}.pt p{margin:8px 0 0;font-size:15px;white-space:normal;max-width:30ch;opacity:0;transform:translateY(8px);transition:.5s var(--ease) .15s}.pn.open .pt p{opacity:1;transform:none}
/* journal */
.bg{display:grid;grid-template-columns:repeat(3,1fr);gap:36px 30px}
.bc{display:block;text-decoration:none}.bimg{overflow:hidden;aspect-ratio:4/3;background:var(--blush)}.bimg img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}.bc:hover .bimg img{transform:scale(1.05)}
.bt{padding-top:18px}.bt h3{font-size:25px;margin-bottom:10px}.bt p{margin:0 0 14px;color:var(--mute);font-size:16px}
.bc.big{grid-column:span 2;display:grid;grid-template-columns:1.2fr 1fr;gap:34px;align-items:center}.bc.big .bimg{aspect-ratio:5/4}.bc.big .bt{padding:0}.bc.big h3{font-size:34px}
/* trending rail */
.rail{display:flex;gap:30px;overflow-x:auto;scroll-snap-type:x mandatory;padding:18px max(24px,calc((100vw - 1200px)/2 + 24px)) 30px;scrollbar-width:thin;scrollbar-color:var(--gold) transparent}
.rc{flex:0 0 min(270px,72vw);scroll-snap-align:start;text-decoration:none}.rc .arch{margin-bottom:26px}.rc h3{font-size:22px}.rc:hover h3{color:var(--rose)}
.rc .arch img{transition:transform .9s var(--ease)}.rc:hover .arch img{transform:scale(1.04)}.rc .arch{overflow:visible}.rc .arch img{clip-path:inset(0 round 999px 999px 0 0)}
/* faq */
.faq{display:grid;grid-template-columns:.8fr 1.4fr;gap:70px;align-items:start}.faq-h{position:sticky;top:calc(var(--hd) + 40px)}.faq-h h2{font-size:clamp(32px,4vw,50px)}.faq-h p{color:var(--mute);margin-top:14px}
details{border-bottom:1px solid #d3bfb2}summary{cursor:pointer;list-style:none;padding:22px 40px 22px 0;font-weight:500;font-size:18px;position:relative}
summary::-webkit-details-marker{display:none}summary:after{content:"+";position:absolute;right:4px;top:18px;font:400 28px var(--disp);color:var(--rose);transition:transform .3s}details[open] summary:after{transform:rotate(45deg)}details p{margin:0 0 24px;max-width:60ch;color:#4b3b32}
/* brands */
.brands{padding:70px 0}.bl{margin:0 0 26px;color:var(--mute);text-align:center}.partners{display:flex;flex-wrap:wrap;gap:44px 60px;justify-content:center;align-items:center}.partners img{height:46px;width:auto;object-fit:contain;filter:grayscale(1) contrast(.9);opacity:.7}
/* page header */
.ph{background:var(--esp);color:var(--paper);padding:84px 0 0;overflow:hidden}.ph.noart{padding:84px 0 76px}
.ph-in{display:grid;grid-template-columns:1.4fr .6fr;gap:50px;align-items:end}.ph.noart .ph-in{grid-template-columns:1fr}
.ph h1{font-size:clamp(40px,6.2vw,80px);line-height:1.02;padding-bottom:70px}.ph.noart h1{padding:0}.ph p{margin:0;color:#cdbcab;font-size:19px;max-width:44ch;padding-bottom:70px}.ph.noart p{padding:14px 0 0}
.ph h1+p{margin-top:-46px}.ph.noart h1+p{margin-top:0}
.ph .arch{max-width:260px;margin:0 0 0 auto}.ph+section{padding-top:84px}.ph.noart+section{padding-top:84px}
.subnav{position:sticky;top:var(--hd);z-index:30;background:var(--paper);display:flex;gap:10px;justify-content:center;padding:14px 20px;border-bottom:1px solid var(--line)}
.subnav a{text-decoration:none;padding:8px 22px;border:1px solid var(--line);border-radius:30px;font-weight:500;font-size:15px;transition:.2s}.subnav a:hover{background:var(--esp);color:var(--paper);border-color:var(--esp)}
.ph+.subnav{margin-top:0}
.cat{padding:80px 0 20px}.cat-h{font-size:clamp(38px,5vw,64px);display:flex;align-items:center;gap:26px;margin-bottom:46px}.cat-h:after{content:"";flex:1;height:1px;background:var(--gold)}
.row{display:grid;grid-template-columns:.7fr 1.3fr;gap:74px;align-items:center;padding:34px 0 52px}.row .arch{max-width:340px}.row.flip{grid-template-columns:1.3fr .7fr}.row.flip .arch{order:2;margin-left:auto}
.row h3{font-size:clamp(30px,3.4vw,44px);margin-bottom:12px}.row p{margin:0 0 24px;max-width:56ch;color:#44342b}
/* content pages */
.two{display:grid;grid-template-columns:1.1fr .9fr;gap:84px;align-items:start}.two.rev{grid-template-columns:.9fr 1.1fr}.two.rev .txt{order:2}
.txt h2{font-size:clamp(30px,3.6vw,46px);margin-bottom:20px}.txt p{max-width:60ch}.kick{color:var(--rose);font-weight:600;margin:-8px 0 18px!important}
.tick{list-style:none;padding:0;margin:0 0 22px}.tick li{padding:5px 0 5px 30px;position:relative}.tick li:before{content:"";position:absolute;left:0;top:19px;width:16px;height:1px;background:var(--gold)}
.stack .arch{max-width:420px;margin:0 auto}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:80px}.duo h2{font-size:clamp(34px,4vw,52px);margin-bottom:18px}.duo p{font:400 22px/1.55 var(--disp);color:#e5d8c8;margin:0}
.read{max-width:740px}.read>*:first-child{margin-top:0}.read p,.read li{font-size:18px;line-height:1.85}.read h2{font-size:34px;margin:46px 0 12px}.read h3{font-size:26px;margin:34px 0 10px}.read a{color:var(--rose)}.read img{width:100%;max-height:480px;object-fit:cover;margin:30px 0}.read ul,.read ol{padding-left:22px}
.read .big{font:400 clamp(24px,3vw,32px)/1.45 var(--disp);color:var(--esp)}.back{margin-top:30px;display:inline-block}
.cd h2{font-size:30px;margin:34px 0 10px}.cd h2:first-child{margin-top:0}.cd a{text-decoration:none;border-bottom:1px solid var(--gold)}
.card{background:#fff;border:1px solid var(--line);padding:36px}.card h3{font-size:30px;margin-bottom:20px}
label{display:block;font-size:14px;margin:0 0 16px;font-weight:500}input,select,textarea{display:block;width:100%;padding:13px 14px;margin-top:6px;border:1px solid #d5c4b8;font:inherit;background:#fff;border-radius:2px}input:focus,select:focus,textarea:focus{outline:2px solid var(--gold);border-color:transparent}
.mapw{margin-top:60px}.mapw iframe{width:100%;height:420px;border:0}.two .mapw{margin:0}
/* footer */
.ft{background:var(--esp);color:#cdbcab;padding-top:84px}
.ftcta{display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap;padding-bottom:64px;border-bottom:1px solid #35261c}.ftcta h2{font-size:clamp(32px,4.4vw,56px);color:var(--paper);max-width:14ch}.ftcta div{display:flex;gap:26px;align-items:center;flex-wrap:wrap}.ftcta .tel{color:var(--paper)}
.ftg{display:grid;grid-template-columns:1.1fr 1.3fr 1.2fr .8fr;gap:40px;padding:56px 0}
.ft h4{font:600 15px var(--body);color:var(--gold);margin:0 0 14px;letter-spacing:0}.ft a,.ft span,.ft address{display:block;text-decoration:none;font-style:normal;font-size:15px;padding:3px 0}.ft a:hover{color:var(--gold)}.ft address{margin-bottom:6px}.flogo{height:76px;width:auto;margin-bottom:14px}.ft p{font-size:15px;margin:0;max-width:30ch}
.copy{padding:22px 0 30px;font-size:13px;border-top:1px solid #35261c;color:#9b8a7a}
/* modal */
.modal{position:fixed;inset:0;background:rgba(18,10,6,.78);z-index:60;display:grid;place-items:center;padding:16px}.modal[hidden]{display:none}
.mbox{background:var(--paper);padding:34px;max-width:470px;width:100%;max-height:92vh;overflow:auto;position:relative;animation:pop .35s var(--ease)}.mbox h3{font-size:32px;margin-bottom:18px}.x{position:absolute;right:14px;top:8px;background:none;border:0;font-size:34px;cursor:pointer;color:var(--coc)}
@keyframes pop{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media(max-width:960px){
.burger{display:block}.nav{position:absolute;top:var(--hd);left:0;right:0;background:var(--esp);flex-direction:column;align-items:stretch;gap:0;padding:8px 28px 24px;display:none;border-top:1px solid #35261c}.nav.open{display:flex}.nav a{padding:14px 0}.nav .navbook{margin-top:12px;text-align:center}
.hero{padding:40px 0 70px}.hero-in{grid-template-columns:1fr;gap:50px}.hero-a{margin:0 auto;max-width:360px}
.reel{flex-wrap:wrap;height:auto}.pn{flex:1 1 calc(50% - 6px);height:320px;border-radius:160px 160px 0 0}.pn.open{flex:1 1 calc(50% - 6px)}.pn .pt p{opacity:1;transform:none;font-size:13px}.pt{padding:20px 16px}.pt h3{font-size:24px}
.bg{grid-template-columns:1fr 1fr}.bc.big{grid-column:span 2}.faq{grid-template-columns:1fr;gap:30px}.faq-h{position:static}
.ph-in{grid-template-columns:1fr;gap:30px}.ph h1{padding-bottom:10px}.ph h1+p{margin-top:0;padding-bottom:30px}.ph .arch{margin:0 auto;max-width:220px}
.row,.row.flip,.two,.two.rev,.duo{grid-template-columns:1fr;gap:34px}.row.flip .arch{order:0;margin-left:0}.two.rev .txt{order:0}.row .arch{max-width:300px}.ftg{grid-template-columns:1fr 1fr}.sec{padding:70px 0}}
@media(max-width:560px){.bg,.bc.big{grid-template-columns:1fr}.bc.big{grid-column:auto}.ftg{grid-template-columns:1fr}.pn{height:280px}.wrap{padding:0 20px}.card{padding:26px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.wafab{position:fixed;right:22px;bottom:22px;z-index:45;display:flex;align-items:center;gap:10px;background:#1fa855;color:#fff;text-decoration:none;font:500 15px var(--body);padding:14px 22px 14px 16px;border-radius:40px;box-shadow:0 8px 24px rgba(0,0,0,.28);transition:transform .25s var(--ease),background .2s}
.wafab:hover{background:#178a45;transform:translateY(-3px)}.wafab svg{flex:none}
.dt{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:560px){.wafab{right:14px;bottom:14px;padding:14px}.wafab span{display:none}.dt{grid-template-columns:1fr}}
