:root{--p:#B0466C;--p-dark:#7E2B4C;--p2:#E98FAE;--p2-text:#C2557F;--a:#E0A43A;--a-text:#A86F0E;--tint:#FCEFF4;--soft:#FFF8FA;--ink:#33222A;--muted:#6C5862;--line:#F0DDE5;--line-strong:#E2C3D0}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:120px}
body{margin:0;font-family:'Nunito Sans',system-ui,sans-serif;font-size:17px;line-height:1.65;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,video,iframe{max-width:100%;display:block}
img{height:auto}
a{color:inherit}
h1,h2,h3,h4{font-family:'Fraunces',Georgia,serif;font-weight:600;line-height:1.12;color:var(--p-dark);margin:0 0 .5em;letter-spacing:-.01em;text-wrap:balance}
p{margin:0 0 1em;text-wrap:pretty}
ul{margin:0;padding:0}
.wrap{max-width:1240px;margin:0 auto;padding:0 32px}
.narrow{max-width:820px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:8px;background:var(--p);color:#fff;padding:10px 16px;border-radius:8px;z-index:100}.skip:focus{left:12px}
.ic{flex:none}
:focus-visible{outline:3px solid var(--a);outline-offset:3px;border-radius:6px}
/* util bar */
.util{background:var(--p-dark);color:#fff;font-size:14px}
.util .wrap{display:flex;justify-content:space-between;align-items:center;min-height:42px;gap:18px}
.util span,.util a{display:inline-flex;align-items:center;gap:8px;text-decoration:none;opacity:.95}
.util .ic{color:var(--a)}
/* header */
.hdr{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--line);transition:box-shadow .2s}
.hdr.scrolled{box-shadow:0 8px 30px rgba(20,30,50,.08)}
.hdr .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;height:104px}
.brand{display:flex;align-items:center;gap:14px;text-decoration:none;flex:none}
.brand .wm1{font-family:'Fraunces',serif;font-weight:700;font-size:34px;line-height:.95;color:var(--p-dark);letter-spacing:-.01em}
.brand .wm2{font-size:12.5px;font-weight:800;letter-spacing:.24em;text-transform:uppercase;color:var(--a-text);margin-top:7px;white-space:nowrap}
.nav{display:flex;align-items:center;gap:6px}
.nav>a,.nav .dd>button{font:inherit;font-weight:700;font-size:15.5px;color:var(--ink);text-decoration:none;background:none;border:0;padding:10px 12px;border-radius:10px;cursor:pointer;display:inline-flex;align-items:center;gap:4px;white-space:nowrap}
.nav>a:hover,.nav .dd>button:hover,.nav a[aria-current=page]{color:var(--p);background:var(--tint)}
.dd{position:relative}
.dd .menu{position:absolute;top:calc(100% + 8px);left:-10px;min-width:280px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 20px 50px rgba(20,30,50,.14);padding:10px;display:none}
.dd:hover .menu,.dd:focus-within .menu,.dd.open .menu{display:block}
.dd .menu a{display:block;padding:10px 14px;border-radius:10px;text-decoration:none;font-weight:700;font-size:15px}
.dd .menu a small{display:block;font-weight:500;color:var(--muted);font-size:13px}
.dd .menu a:hover{background:var(--tint);color:var(--p)}
.hdr-r{display:flex;align-items:center;gap:16px}
.tel{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--p-dark);text-decoration:none;white-space:nowrap;font-size:17px}
.tel small{display:block;font-size:11.5px;font-weight:700;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}
.tel .ic{color:var(--p)}
.burger{display:none;width:48px;height:48px;border-radius:14px;border:0;background:var(--tint);color:var(--p-dark);cursor:pointer;align-items:center;justify-content:center}
/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 26px;border-radius:999px;font-weight:800;font-size:16px;line-height:1.2;text-decoration:none;border:2px solid transparent;cursor:pointer;white-space:nowrap;transition:transform .15s,box-shadow .15s,background .15s;font-family:inherit}
.btn:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(20,30,50,.14)}
.btn-a{background:var(--a);color:var(--ink)}
.btn-p{background:var(--p);color:#fff}
.btn-o{border-color:currentColor;color:var(--p-dark);background:transparent}
.btn-w{background:#fff;color:var(--p-dark)}
.btn-ow{border-color:rgba(255,255,255,.85);color:#fff}
.btn-sm{padding:11px 18px;font-size:14.5px}
/* type helpers */
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--p)}
.eyebrow::before{content:"";width:28px;height:2px;background:var(--a)}
.script{font-family:'Caveat',cursive;font-weight:700;color:var(--p2-text);font-size:36px;line-height:1;display:block;margin-bottom:6px}
.lead{font-size:19.5px;color:var(--muted)}
.muted{color:var(--muted)}
.sec{padding:100px 0}
.sec-sm{padding:64px 0}
.sec-h{max-width:760px;margin:0 0 48px}
.sec-h h2{font-size:clamp(32px,3.6vw,46px);margin:14px 0}
.sec-h p{color:var(--muted);font-size:18.5px}
.center{text-align:center;margin-left:auto;margin-right:auto}
.center .eyebrow::after{content:"";width:28px;height:2px;background:var(--a)}
.bg-tint{background:var(--tint)}
.bg-soft{background:var(--soft)}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
/* page hero (inner pages) */
.phero{background:linear-gradient(180deg,var(--tint),#fff);padding:56px 0 64px}
.phero .grid-2{gap:56px}
.phero h1{font-size:clamp(38px,4.4vw,58px);margin:14px 0 18px}
.phero .ph{border-radius:200px 200px 28px 28px;overflow:hidden;aspect-ratio:4/4.2;box-shadow:0 30px 60px rgba(20,30,50,.12)}
.phero .ph img{width:100%;height:100%;object-fit:cover}
.crumbs{font-size:14px;color:var(--muted);display:flex;gap:8px;flex-wrap:wrap;margin-bottom:6px}
.crumbs a{text-decoration:none;color:var(--p);font-weight:700}
.ctas{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
/* cards */
.card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:30px 28px;box-shadow:0 12px 32px rgba(20,30,50,.05);display:flex;flex-direction:column;text-decoration:none;color:inherit;transition:transform .2s,box-shadow .2s}
a.card:hover{transform:translateY(-4px);box-shadow:0 22px 44px rgba(20,30,50,.10)}
.card .icb{width:58px;height:58px;border-radius:18px;background:linear-gradient(135deg,var(--p),var(--p-dark));color:#fff;display:grid;place-items:center;margin-bottom:20px;box-shadow:0 10px 22px -8px var(--p)}
.card h3{font-size:22px;margin-bottom:10px}
.card p{color:var(--muted);font-size:15.5px;flex:1;margin:0}
.card .more{margin-top:18px;font-weight:800;color:var(--p);display:flex;align-items:center;gap:8px;font-size:15px}
.ticks{list-style:none;display:grid;gap:12px;margin:18px 0}
.ticks li{display:flex;gap:12px;align-items:flex-start}
.ticks li .ic{color:#fff;background:var(--p);border-radius:50%;padding:4px;width:24px;height:24px;margin-top:2px}
.ticks.two{grid-template-columns:1fr 1fr}
.photo{border-radius:28px;overflow:hidden;box-shadow:0 24px 50px rgba(20,30,50,.10)}
.photo img{width:100%;height:100%;object-fit:cover}
/* steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.step{background:#fff;border-radius:24px;padding:34px 30px;border:1px solid var(--line)}
.step .n{width:48px;height:48px;border-radius:50%;background:var(--a);color:var(--ink);display:grid;place-items:center;font-weight:900;font-size:18px;margin-bottom:18px}
.step h3{font-size:22px}
.step p{color:var(--muted);margin:0}
/* quotes */
.tq{background:#fff;border-radius:24px;padding:34px 30px;border:1px solid var(--line);box-shadow:0 12px 32px rgba(20,30,50,.05);display:flex;flex-direction:column}
.tq .ic{color:var(--a)}
.tq p{font-size:16.5px;margin:16px 0 20px;flex:1}
.tq b{color:var(--p-dark)}
/* chips */
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chips a,.chips span{padding:9px 16px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:14.5px;font-weight:700;text-decoration:none;color:var(--ink)}
.chips a:hover{border-color:var(--p);color:var(--p)}
/* faq */
.faq details{border-bottom:1px solid var(--line);padding:4px 0}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:18px 0;font-weight:800;font-size:18px;color:var(--p-dark)}
.faq summary::-webkit-details-marker{display:none}
.faq summary .ic{transition:transform .2s;color:var(--p)}
.faq details[open] summary .ic{transform:rotate(180deg)}
.faq details p{color:var(--muted);margin:0 0 18px;max-width:72ch}
/* CTA band */
.cta{background:linear-gradient(120deg,var(--p-dark),var(--p) 60%,var(--p2));border-radius:32px;color:#fff;padding:60px;display:flex;justify-content:space-between;align-items:center;gap:30px;position:relative;overflow:hidden}
.cta::after{content:"";position:absolute;right:-60px;top:-60px;width:240px;height:240px;border-radius:50%;background:var(--a);opacity:.25}
.cta h2{color:#fff;font-size:clamp(28px,3vw,40px);margin-bottom:8px}
.cta p{opacity:.9;margin:0;font-size:17.5px}
.cta .ctas{margin:0;position:relative;z-index:1}
/* forms */
.form{background:#fff;border:1px solid var(--line);border-radius:28px;padding:38px;box-shadow:0 24px 60px rgba(20,30,50,.08)}
.form h2,.form h3{font-size:30px;margin-bottom:6px}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}
.fgrid .full{grid-column:1/-1}
label.f{display:flex;flex-direction:column;gap:6px;font-weight:700;font-size:14.5px;color:var(--ink)}
label.f span.opt{font-weight:500;color:var(--muted)}
.f input,.f select,.f textarea{font:inherit;font-size:16px;padding:14px 16px;border:1.5px solid var(--line-strong);border-radius:14px;background:#fff;color:var(--ink);width:100%}
.f textarea{min-height:120px;resize:vertical}
.f input:focus,.f select:focus,.f textarea:focus{outline:none;border-color:var(--p);box-shadow:0 0 0 4px var(--tint)}
fieldset.f{border:0;padding:0;margin:0}
.pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}
.pills label{position:relative}
.pills input{position:absolute;opacity:0;pointer-events:none}
.pills span{display:inline-block;padding:10px 16px;border-radius:999px;border:1.5px solid var(--line-strong);font-weight:700;font-size:14.5px;cursor:pointer;background:#fff}
.pills input:checked+span{background:var(--p);border-color:var(--p);color:#fff}
.pills input:focus-visible+span{outline:3px solid var(--a);outline-offset:2px}
.consent{display:flex;gap:10px;font-size:14px;color:var(--muted);align-items:flex-start;margin-top:6px}
.consent input{margin-top:4px;width:18px;height:18px;accent-color:var(--p)}
.form .btn{margin-top:20px;width:100%}
.fmsg{margin-top:14px;padding:14px 16px;border-radius:14px;font-weight:700;display:none}
.fmsg.ok{display:block;background:#E8F6EC;color:#1F6B3A}
.fmsg.err{display:block;background:#FDECEC;color:#9B1C1C}
.hp{position:absolute;left:-5000px}
.steps-ind{display:flex;gap:8px;margin:16px 0 4px}
.steps-ind i{flex:1;height:6px;border-radius:6px;background:var(--line)}
.steps-ind i.on{background:var(--p)}
.fstep{display:none}.fstep.on{display:block}
.frow{display:flex;gap:12px;margin-top:20px}.frow .btn{margin-top:0}
/* video */
.vid{position:relative;border-radius:28px;overflow:hidden;background:#000;aspect-ratio:16/9;box-shadow:0 30px 60px rgba(20,30,50,.18)}
.vid img,.vid video,.vid iframe{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border:0}
.vid button.play{position:absolute;inset:0;margin:auto;width:96px;height:96px;border-radius:50%;border:0;background:#fff;color:var(--p);cursor:pointer;display:grid;place-items:center;box-shadow:0 18px 40px rgba(0,0,0,.3);transition:transform .2s}
.vid button.play:hover{transform:scale(1.07)}
.vid button.play .ic{margin-left:5px}
.vid .vlab{position:absolute;left:20px;bottom:18px;background:rgba(255,255,255,.95);color:var(--p-dark);padding:8px 14px;border-radius:999px;font-weight:800;font-size:14px;display:flex;gap:8px;align-items:center}
.vid.playing .vlab,.vid.playing button.play{display:none}
/* gallery */
.gfilters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:26px}
.gfilters button{font:inherit;font-weight:800;font-size:14.5px;padding:10px 18px;border-radius:999px;border:1.5px solid var(--line-strong);background:#fff;color:var(--ink);cursor:pointer}
.gfilters button[aria-pressed=true]{background:var(--p);border-color:var(--p);color:#fff}
.gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:220px;grid-auto-flow:dense;gap:14px}
.gallery a{position:relative;border-radius:18px;overflow:hidden;display:block;background:var(--tint)}
.gallery a img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.gallery a:hover img{transform:scale(1.05)}
.gallery a.big{grid-column:span 2;grid-row:span 2}
.gallery a.wide{grid-column:span 2}
.gallery a .cap{position:absolute;left:12px;bottom:12px;background:rgba(255,255,255,.95);color:var(--p-dark);font-weight:800;font-size:13px;padding:6px 12px;border-radius:999px;opacity:0;transform:translateY(6px);transition:.25s}
.gallery a:hover .cap,.gallery a:focus .cap{opacity:1;transform:none}
.gallery a.hide{display:none}
.lb{position:fixed;inset:0;z-index:200;background:rgba(10,12,18,.94);display:none;align-items:center;justify-content:center;flex-direction:column}
.lb.open{display:flex}
.lb img{max-width:min(1400px,92vw);max-height:78vh;object-fit:contain;border-radius:12px}
.lb .lbcap{color:#fff;margin-top:16px;font-weight:700;display:flex;gap:16px;align-items:center}
.lb .lbcap span{opacity:.7;font-weight:600}
.lb button{position:absolute;background:rgba(255,255,255,.12);color:#fff;border:0;width:56px;height:56px;border-radius:50%;cursor:pointer;display:grid;place-items:center}
.lb button:hover{background:rgba(255,255,255,.25)}
.lb .lbx{top:20px;right:20px}.lb .lbp{left:20px;top:50%;margin-top:-28px}.lb .lbn{right:20px;top:50%;margin-top:-28px}
.lb .thumbs{display:flex;gap:8px;margin-top:16px;max-width:92vw;overflow-x:auto;padding:4px}
.lb .thumbs img{width:76px;height:54px;object-fit:cover;border-radius:8px;opacity:.5;cursor:pointer;border:2px solid transparent}
.lb .thumbs img.on{opacity:1;border-color:#fff}
/* footer */
.ftr{background:var(--ink);color:rgba(255,255,255,.82);padding:80px 0 30px;font-size:15.5px}
.ftr .cols{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.3fr;gap:48px}
.ftr h4{font-family:'Nunito Sans',sans-serif;color:#fff;font-size:13.5px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:16px;font-weight:800}
.ftr ul{list-style:none}.ftr li{margin:9px 0}
.ftr a{text-decoration:none}.ftr a:hover{color:#fff;text-decoration:underline}
.ftr .brand .wm1{color:#fff}
.ftr .legal{border-top:1px solid rgba(255,255,255,.14);margin-top:56px;padding-top:24px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13.5px;opacity:.8}
.soc{display:flex;gap:12px;margin-top:20px}.soc a{width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.3);display:grid;place-items:center}
.ftr .emerg{margin-top:16px;font-size:13.5px;opacity:.75}
/* mobile action bar */
.mbar{display:none}
/* reveal */
@media (prefers-reduced-motion:no-preference){.rv{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.rv.in{opacity:1;transform:none}}
/* responsive */
@media(max-width:1180px){.nav>a,.nav .dd>button{padding:10px 8px;font-size:15px}.tel small{display:none}}
@media(max-width:1060px){
 .nav,.hdr-r .tel{display:none}
 .burger{display:inline-flex}
 .nav.open{display:flex;position:fixed;inset:0 0 0 0;top:var(--hh,104px);background:#fff;flex-direction:column;align-items:stretch;padding:20px 24px 120px;overflow:auto;gap:2px;z-index:60}
 .nav.open>a,.nav.open .dd>button{font-size:19px;padding:15px 8px;border-bottom:1px solid var(--line);border-radius:0;justify-content:space-between;width:100%}
 .nav.open .dd .menu{position:static;box-shadow:none;border:0;padding:0 0 10px 10px;display:none}
 .nav.open .dd.open .menu{display:block}
 .nav.open .mcta{display:flex!important;flex-direction:column;gap:12px;margin-top:20px}
 .grid-4{grid-template-columns:repeat(2,1fr)}
 .gallery{grid-template-columns:repeat(3,1fr)}
}
.nav .mcta{display:none}
.card,.step,.tq{min-width:0}
.card{position:relative;overflow:hidden}.card::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--p),var(--a));transform:scaleX(0);transform-origin:left;transition:transform .35s}
@media(hover:hover){.card:hover::before{transform:scaleX(1)}}
.sec.deep{background:radial-gradient(circle at 85% 10%,rgba(255,255,255,.10),transparent 40%),linear-gradient(135deg,var(--p-dark),var(--p));color:#fff}
.sec.deep .sec-h h2,.sec.deep h2,.sec.deep h3{color:#fff}.sec.deep .eyebrow{color:#fff}.sec.deep .sec-h p{color:rgba(255,255,255,.88)}
.sec.deep .step{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18);backdrop-filter:none}.sec.deep .step p{color:rgba(255,255,255,.86)}
.tq{border-top:4px solid var(--a)}
.hl{color:var(--p2-text)}
.card h3{overflow-wrap:anywhere}
@media(max-width:820px){
 body{font-size:16.5px;padding-bottom:76px}
 .wrap{padding:0 20px}
 .util .hide-m{display:none}.util .wrap{justify-content:center;font-size:13px}
 .hdr .wrap{height:84px}
 .brand .wm1{font-size:27px}.brand .wm2{font-size:10.5px;letter-spacing:.2em}
 .brand svg{width:54px;height:54px}
 .hdr-r .btn{display:none}
 .sec{padding:68px 0}.sec-sm{padding:48px 0}
 .grid-2,.grid-3,.steps{grid-template-columns:1fr;gap:28px}
 .grid-4{grid-template-columns:1fr 1fr;gap:14px}
 .ticks.two{grid-template-columns:1fr}
 .phero{padding:32px 0 48px}
 .phero .ph{aspect-ratio:4/3.4;border-radius:120px 120px 24px 24px}
 .cta{flex-direction:column;align-items:flex-start;padding:38px 26px}
 .form{padding:26px 20px}
 .fgrid{grid-template-columns:1fr}
 .ftr .cols{grid-template-columns:1fr;gap:34px}
 .gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:150px;gap:10px}
 .gallery a.big{grid-column:span 2;grid-row:span 2}
 .lb button.lbp,.lb button.lbn{top:auto;bottom:90px}
 .mbar{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:70;background:#fff;padding:10px 14px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--line);box-shadow:0 -10px 30px rgba(20,30,50,.08)}
 .mbar .btn{padding:14px 10px;font-size:15.5px}
}
@media(max-width:420px){.brand .wm1{font-size:24px}.brand svg{width:48px;height:48px}.brand{gap:10px}.grid-4{grid-template-columns:1fr}}

.ncb .wm1.nc{letter-spacing:-.01em;font-size:37px}
.ncb .wm2{color:var(--p);letter-spacing:.26em}
.ftr .ncb .wm2{color:#F4A9C2}
.ncb svg{width:74px;height:auto}
@media(max-width:1180px){.ncb .wm1.nc{font-size:31px}.ncb svg{width:64px}}
@media(max-width:420px){.ncb .wm1.nc{font-size:27px;letter-spacing:-.01em}.ncb svg{width:54px}}

@media(max-width:1380px){.hdr-r .tel{display:none}}
@media(min-width:1061px){.nav>a.hm{display:none}}
@media(max-width:1500px){.nav>a,.nav .dd>button{padding:10px 9px;font-size:15px}.hdr .wrap{gap:14px}}
.brand .wm1.nc{font-family:'Fraunces',serif;font-weight:700;letter-spacing:.06em;font-size:31px}
.hero{position:relative;min-height:760px;color:#fff;overflow:hidden;display:flex;align-items:center}
.hero img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(40,14,26,.82) 0%,rgba(60,20,38,.55) 45%,rgba(60,20,38,.05) 80%)}
.hero-in{position:relative;z-index:2;padding-top:80px;padding-bottom:140px;width:100%}
.hero .script{color:var(--a)}
.hero .hlw{color:#F9C3D5}
.hero h1{color:#fff;font-size:clamp(46px,6vw,80px);max-width:760px;margin:8px 0 22px;letter-spacing:-.01em}
.hero .lead{color:rgba(255,255,255,.94);max-width:580px;font-size:20px}
.face{position:absolute;right:max(32px,calc(50% - 600px));bottom:130px;z-index:3;width:260px;height:260px;border-radius:50%;overflow:hidden;border:8px solid #fff;box-shadow:0 24px 60px rgba(0,0,0,.3)}
.face img{width:100%;height:100%;object-fit:cover}
.facecap{position:absolute;right:max(32px,calc(50% - 600px));bottom:104px;z-index:4;background:var(--a);color:var(--ink);font-family:'Caveat',cursive;font-weight:700;font-size:28px;padding:4px 20px;border-radius:999px;transform:translateX(-36px)}
.locbar{position:relative;z-index:5;margin-top:-72px}
.locbar .in{background:#fff;border-radius:24px;box-shadow:0 30px 70px rgba(60,20,40,.16);display:grid;grid-template-columns:1fr 1fr 1fr;overflow:hidden}
.locbar .c{padding:28px 30px;display:flex;gap:16px;align-items:center;border-right:1px solid var(--line);text-decoration:none;color:var(--ink);transition:background .2s}
.locbar .c:hover{background:var(--soft)}
.locbar .c>span{flex:1}
.locbar .c .ic{color:var(--p)}
.locbar b{display:block;font-size:19px;color:var(--p-dark);font-family:'Fraunces',serif}.locbar .c span span{font-size:14px;color:var(--muted)}
.locbar .t{background:var(--p);color:#fff;border:0}.locbar .t:hover{background:var(--p-dark)}
.locbar .t b{color:#fff;font-family:'Nunito Sans';font-weight:900;font-size:22px}.locbar .t span span{color:rgba(255,255,255,.85)}.locbar .t .ic{color:#fff}
.collage{position:relative;height:560px}
.collage img{position:absolute;object-fit:cover;border-radius:24px;box-shadow:0 24px 56px rgba(60,20,40,.14)}
.collage .i1{left:0;top:0;width:76%;height:70%}
.collage .i2{right:0;bottom:0;width:58%;height:52%;border:8px solid #fff}
.collage .bdg{position:absolute;left:22px;bottom:30px;background:var(--a);color:var(--ink);border-radius:18px;padding:18px 22px;max-width:230px;font-weight:800;line-height:1.35}
.hcards{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.hc{background:#fff;border-radius:28px;overflow:hidden;box-shadow:0 14px 40px rgba(60,20,40,.07);border:1px solid var(--line)}
.hc .im{height:340px;position:relative;display:block;overflow:hidden}.hc .im img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.hc .im:hover img{transform:scale(1.04)}
.hc .tag{position:absolute;left:20px;top:20px;background:rgba(255,255,255,.96);color:var(--p-dark);font-weight:800;font-size:13.5px;padding:8px 14px;border-radius:999px;display:flex;gap:6px;align-items:center}
.hc .vt{position:absolute;right:20px;bottom:20px;background:var(--p);color:#fff;font-weight:800;font-size:13.5px;padding:10px 16px;border-radius:999px;display:flex;gap:8px;align-items:center}
.hc .bd{padding:30px 32px}.hc h3{font-size:30px}.hc p{color:var(--muted)}
.hc .row{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}
.life{background:linear-gradient(135deg,var(--p-dark),var(--p));color:#fff}
.life h2{color:#fff;font-size:clamp(32px,3.6vw,48px);margin:14px 0 18px}
.life p{color:rgba(255,255,255,.9);font-size:17.5px}
.eyebrow.light{color:#fff}
.lifeimgs{position:relative;height:520px}
.lifeimgs img{position:absolute;object-fit:cover;border-radius:24px;box-shadow:0 30px 60px rgba(0,0,0,.25)}
.lifeimgs .l1{left:0;top:0;width:72%;height:64%;border-radius:200px 200px 24px 24px}
.lifeimgs .l2{right:0;bottom:0;width:58%;height:50%;border:8px solid rgba(255,255,255,.95)}
.lhero{position:relative;min-height:600px;display:flex;align-items:flex-end;color:#fff;overflow:hidden}
.lhero img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.lhero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(40,14,26,0) 0%,rgba(40,14,26,.12) 30%,rgba(40,14,26,.6) 62%,rgba(40,14,26,.88) 100%),linear-gradient(90deg,rgba(40,14,26,.45),rgba(40,14,26,0) 60%)}
.lhero h1,.lhero .lead{text-shadow:0 2px 18px rgba(0,0,0,.35)}
.lhero .wrap{position:relative;z-index:2;padding-top:120px;padding-bottom:70px;width:100%}
.lhero h1{color:#fff;font-size:clamp(40px,5vw,66px);margin:6px 0 16px}
.lhero .lead{color:rgba(255,255,255,.94);max-width:680px}
.lhero .script{color:var(--a)}
.crumbs.light,.crumbs.light a{color:rgba(255,255,255,.9)}
.lhero .crumbs{margin-bottom:14px}
.facts{background:#fff;border-bottom:1px solid var(--line)}
.facts .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding-top:28px;padding-bottom:28px}
.facts div{display:flex;gap:14px;align-items:center}
.facts .ic{color:var(--p);background:var(--tint);border-radius:16px;padding:12px;width:54px;height:54px}
.facts b{display:block;color:var(--p-dark);font-size:16.5px}.facts span{font-size:14.5px;color:var(--muted);line-height:1.4}
.other{display:grid;grid-template-columns:320px 1fr;gap:28px;align-items:center;background:var(--soft);border-radius:28px;overflow:hidden;text-decoration:none;color:inherit;border:1px solid var(--line)}
.other img{width:100%;height:220px;object-fit:cover}
.other small{display:block;text-transform:uppercase;letter-spacing:.14em;font-weight:800;color:var(--p);font-size:12.5px}
.other b{font-family:'Fraunces',serif;font-size:30px;color:var(--p-dark);display:block;margin:6px 0}
.other .more{font-weight:800;color:var(--p);display:flex;gap:8px;align-items:center}
.prose h2{font-size:28px;margin-top:36px}
@media(max-width:1060px){.face,.facecap{display:none}.locbar .in{grid-template-columns:1fr}.locbar .c{border-right:0;border-bottom:1px solid var(--line)}.facts .wrap{grid-template-columns:1fr 1fr}}
@media(max-width:820px){.hero{min-height:640px}.hero::after{background:linear-gradient(180deg,rgba(40,14,26,.35),rgba(40,14,26,.85))}.hero-in{padding-top:60px;padding-bottom:110px}.hero .lead{font-size:17.5px}
@media(max-width:1380px){.hdr-r .tel{display:none}}
@media(min-width:1061px){.nav>a.hm{display:none}}
@media(max-width:1500px){.nav>a,.nav .dd>button{padding:10px 9px;font-size:15px}.hdr .wrap{gap:14px}}
.brand .wm1.nc{font-size:24px}
.locbar{margin-top:-50px}.locbar .c{padding:20px 22px}
.collage{height:420px}.hcards{grid-template-columns:1fr}.hc .im{height:250px}.hc .bd{padding:24px}
.lifeimgs{height:400px}.lhero{min-height:540px}.lhero .wrap{padding-bottom:44px}
.facts .wrap{grid-template-columns:1fr;gap:14px}
.other{grid-template-columns:1fr}.other>span{padding:0 22px 24px}}
@media(max-width:420px){@media(max-width:1380px){.hdr-r .tel{display:none}}
@media(min-width:1061px){.nav>a.hm{display:none}}
@media(max-width:1500px){.nav>a,.nav .dd>button{padding:10px 9px;font-size:15px}.hdr .wrap{gap:14px}}
.brand .wm1.nc{font-size:21px;letter-spacing:.04em}}
