
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
--bg:#FBF6EF;
--bg2:#F4EBDF;
--bg3:#FFFDF9;
--surf:rgba(58,46,35,.035);
--surf2:rgba(58,46,35,.065);
--t1:#33291F;
--t2:#645749;
--t3:#9A8C7B;
--t4:rgba(58,46,35,.14);
--line:rgba(58,46,35,.11);
--line2:rgba(58,46,35,.22);
--acc:#C0704A;
--acc2:#A65937;
--acc-dim:rgba(192,112,74,.11);
--sage:#7E9683;
--sage-soft:#E4EBE3;
--deep:#3A2E23;
--deep2:#2C221A;
--onDeep:#FBF6EF;
--onDeep2:rgba(251,246,239,.72);
--onDeep3:rgba(251,246,239,.44);
--lineDeep:rgba(251,246,239,.16);
--warm:#B4673A;
--blush:#F7EAE0;
--shadow:0 1px 2px rgba(58,46,35,.04),0 10px 30px -12px rgba(58,46,35,.12);
--shadow2:0 2px 4px rgba(58,46,35,.04),0 18px 44px -16px rgba(58,46,35,.16);
--maxw:1320px;
--pad:clamp(20px,4.4vw,64px);
--ease:cubic-bezier(.16,1,.3,1);
--ease2:cubic-bezier(.65,.05,.36,1);
}
html{-webkit-text-size-adjust:100%}
body{
font-family:'Figtree',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
background:var(--bg);color:var(--t2);
font-size:16.5px;line-height:1.68;font-weight:400;
-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
overflow-x:hidden;
}
body.lock{overflow:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
h1,h2,h3,h4{font-family:'Fraunces','Iowan Old Style',Georgia,serif;font-weight:400;letter-spacing:-.018em;line-height:1.1;color:var(--t1);font-variation-settings:'SOFT' 50,'WONK' 1}
em.s{font-style:italic;font-weight:300;letter-spacing:-.01em;color:var(--acc)}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad);position:relative}
.lbl{font-size:10.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--acc);display:flex;align-items:center;gap:10px;flex-wrap:wrap}

/* ---------- PRELOADER ---------- */
#pre{position:fixed;inset:0;z-index:9999;background:var(--bg);display:flex;align-items:flex-end;justify-content:space-between;padding:var(--pad);transition:opacity .6s var(--ease),visibility .6s}
#pre.gone{opacity:0;visibility:hidden}
#pre .pw{font-family:'Instrument Serif',serif;font-size:clamp(38px,7vw,84px);line-height:.94;letter-spacing:-.03em;color:var(--t1);overflow:hidden}
#pre .pw span{display:block;transform:translateY(105%);transition:transform 1s var(--ease)}
#pre.go .pw span{transform:none}
#pre .pw span:nth-child(2){transition-delay:.08s}
#pre .pct{font-size:clamp(38px,7vw,84px);font-weight:300;letter-spacing:-.05em;font-variant-numeric:tabular-nums;color:var(--t3)}
#pre .bar{position:absolute;left:var(--pad);right:var(--pad);bottom:calc(var(--pad) + clamp(84px,13vw,150px));height:1px;background:var(--line)}
#pre .bar i{display:block;height:100%;width:0;background:var(--acc);transition:width .18s linear}

/* ---------- CURSOR ---------- */
#cur,#curd{position:fixed;top:0;left:0;z-index:9998;pointer-events:none;border-radius:50%;will-change:transform}
#cur{width:34px;height:34px;border:1.5px solid rgba(192,112,74,.5);margin:-17px 0 0 -17px;transition:width .3s var(--ease),height .3s var(--ease),margin .3s var(--ease),opacity .3s,background .3s}
#curd{width:5px;height:5px;background:var(--acc);margin:-2.5px 0 0 -2.5px}
#cur.big{width:74px;height:74px;margin:-37px 0 0 -37px;background:rgba(192,112,74,.1);border-color:rgba(192,112,74,.28)}
body.notouch a,body.notouch button,body.notouch summary{cursor:none}
body.notouch{cursor:none}
@media (hover:none),(pointer:coarse){#cur,#curd{display:none}}

/* ---------- SCROLL RAIL ---------- */
#rail{position:fixed;top:0;left:0;height:2px;width:100%;z-index:300;background:transparent;pointer-events:none}
#rail i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--acc2),var(--acc));transform-origin:0 50%}

/* ---------- NAV ---------- */
header{position:fixed;top:0;left:0;right:0;z-index:250;transition:transform .5s var(--ease),background .4s,border-color .4s}
header.hid{transform:translateY(-101%)}
header.solid{background:rgba(251,246,239,.86);backdrop-filter:saturate(150%) blur(18px);-webkit-backdrop-filter:saturate(150%) blur(18px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:76px;gap:24px}
.brand{display:flex;align-items:center;gap:11px;font-size:14.5px;letter-spacing:-.015em}
.brand .bm{width:30px;height:30px;border-radius:50%;border:1px solid var(--line2);display:grid;place-items:center;font-size:10.5px;letter-spacing:.06em;position:relative;overflow:hidden;flex-shrink:0}
.brand .bm{background:var(--blush);color:var(--acc);border-color:rgba(192,112,74,.28)}
.brand .bm::after{content:'';position:absolute;inset:0;background:var(--acc);transform:scale(0);border-radius:50%;transition:transform .5s var(--ease);z-index:-1}
.brand:hover .bm::after{transform:scale(1)}
.brand i{font-style:normal;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--t3)}
.nl{display:flex;gap:2px}
.nl a{font-size:13px;color:var(--t2);padding:8px 14px;border-radius:100px;position:relative;transition:color .3s}
.nl a::before{content:'';position:absolute;inset:0;border-radius:100px;background:var(--surf2);transform:scale(.85);opacity:0;transition:transform .4s var(--ease),opacity .3s}
.nl a:hover{color:var(--t1)}
.nl a:hover::before{transform:scale(1);opacity:1}
.nl a.act{color:var(--acc)}
.nl a.hl{color:var(--acc)}
.nl a.hl::after{content:'';width:4px;height:4px;border-radius:50%;background:var(--acc);display:inline-block;margin-left:7px;vertical-align:middle}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;height:44px;padding:0 22px;border-radius:100px;font-size:13.5px;font-weight:500;letter-spacing:-.005em;border:1px solid transparent;position:relative;overflow:hidden;transition:color .35s var(--ease),border-color .35s;white-space:nowrap;will-change:transform}
.btn span{position:relative;z-index:2;display:inline-flex;align-items:center;gap:9px}
.btn::before{content:'';position:absolute;inset:0;border-radius:100px;transform:translateY(101%);transition:transform .5s var(--ease)}
.btn:hover::before{transform:none}
.btn svg{transition:transform .4s var(--ease)}
.btn:hover svg{transform:translateX(4px)}
.b-fill{background:var(--acc);color:#fff;box-shadow:0 2px 10px -4px rgba(192,112,74,.5)}
.b-fill::before{background:var(--acc2)}
.b-fill:hover{color:#fff}
.b-line{border-color:var(--line2);color:var(--t1);background:rgba(255,253,249,.5)}
.b-line::before{background:var(--deep)}
.b-line:hover{color:var(--onDeep);border-color:var(--deep)}
.b-lg{height:54px;padding:0 28px;font-size:14.5px}
.burger{display:none;width:42px;height:42px;border:1px solid var(--line2);border-radius:100px;align-items:center;justify-content:center;flex-direction:column;gap:5px}
.burger i{width:16px;height:1.5px;border-radius:2px;background:var(--t1);transition:transform .4s var(--ease),opacity .3s}
.burger.x i:nth-child(1){transform:translateY(3px) rotate(45deg)}
.burger.x i:nth-child(2){transform:translateY(-3px) rotate(-45deg)}
#ov{position:fixed;inset:0;z-index:240;background:var(--bg2);display:flex;flex-direction:column;justify-content:center;padding:84px var(--pad) 120px;clip-path:inset(0 0 100% 0);transition:clip-path .8s var(--ease);visibility:hidden;overflow-x:hidden;overflow-y:auto}
#ov.open{clip-path:inset(0);visibility:visible}
#ov a{font-family:'Fraunces',Georgia,serif;font-size:clamp(21px,5.6vw,34px);letter-spacing:-.015em;padding:7px 0;color:var(--t1);display:block;overflow:hidden;max-width:100%}
#ov a em{display:block;transform:translateY(105%);transition:transform .7s var(--ease)}
#ov.open a em{transform:none}
#ov.open a:nth-child(1) em{transition-delay:.1s}#ov.open a:nth-child(2) em{transition-delay:.16s}
#ov.open a:nth-child(3) em{transition-delay:.22s}#ov.open a:nth-child(4) em{transition-delay:.28s}
#ov.open a:nth-child(5) em{transition-delay:.34s}#ov.open a:nth-child(6) em{transition-delay:.4s}
#ov .ovf{position:fixed;left:var(--pad);right:var(--pad);bottom:28px;background:var(--bg2);display:flex;flex-wrap:wrap;gap:14px 26px;font-size:14px;color:var(--t2);border-top:1px solid var(--line);padding-top:22px}

/* ---------- HERO ---------- */
.hero{position:relative;display:flex;flex-direction:column;justify-content:flex-end;padding:84px 0 0;overflow:hidden}
#wave{position:absolute;inset:0;width:100%;height:100%;z-index:0}
.hero::before{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;
background:radial-gradient(ellipse 70% 60% at 82% 6%,rgba(247,234,224,.95),rgba(247,234,224,0) 62%),
radial-gradient(ellipse 60% 55% at 6% 88%,rgba(228,235,227,.8),rgba(228,235,227,0) 64%)}
.hero::after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;
background:linear-gradient(90deg,rgba(251,246,239,.9) 0%,rgba(251,246,239,.72) 32%,rgba(251,246,239,.18) 60%,rgba(251,246,239,0) 80%),
linear-gradient(180deg,rgba(251,246,239,.7) 0%,rgba(251,246,239,0) 24%,rgba(251,246,239,0) 68%,rgba(251,246,239,.85) 100%)}
.hero .wrap{z-index:3;width:100%}
.hero h1{font-size:clamp(30px,3.7vw,52px);letter-spacing:-.018em;line-height:1.14;margin:13px 0 0;font-weight:400}
.ln{display:block;overflow:hidden;padding-bottom:.06em}
.ln > i{display:inline-block;font-style:normal;transform:translateY(112%);transition:transform 1.1s var(--ease)}
.hero.rd .ln > i{transform:none}
.hero.rd .ln:nth-child(2) > i{transition-delay:.09s}
.hero.rd .ln:nth-child(3) > i{transition-delay:.18s}
.hero-b{display:grid;grid-template-columns:1fr;gap:15px;align-items:start;margin-top:0;padding-bottom:clamp(20px,2.2vw,28px)}
.hero-b p{font-size:clamp(15.5px,1.35vw,18.5px);color:var(--t2);max-width:48ch;line-height:1.6}
.hcta{display:flex;gap:11px;flex-wrap:wrap}
.hmeta{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);z-index:3;position:relative}
.hmeta > div{padding:20px 24px 22px 0;border-right:1px solid var(--line);position:relative;overflow:hidden}
.hmeta > div:last-child{border-right:0}
.hmeta > div::after{content:'';position:absolute;top:0;left:0;height:2px;border-radius:2px;width:0;background:var(--acc);opacity:.6;transition:width .9s var(--ease)}
.hmeta.on > div::after{width:100%}
.hmeta.on > div:nth-child(2)::after{transition-delay:.12s}
.hmeta.on > div:nth-child(3)::after{transition-delay:.24s}
.hmeta.on > div:nth-child(4)::after{transition-delay:.36s}
.hmeta .k{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--t3);margin-bottom:10px}
.hmeta .v{font-size:15px;letter-spacing:-.005em;line-height:1.4;color:var(--t1);font-weight:500}
.sd{position:absolute;right:var(--pad);bottom:clamp(122px,15vw,168px);writing-mode:vertical-rl;font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--t3);display:flex;align-items:center;gap:12px;z-index:3}
.sd::after{content:'';width:1px;height:52px;background:linear-gradient(180deg,var(--acc),transparent);animation:sdp 2.4s var(--ease2) infinite}
@keyframes sdp{0%{transform:scaleY(0);transform-origin:0 0}50%{transform:scaleY(1);transform-origin:0 0}51%{transform:scaleY(1);transform-origin:0 100%}100%{transform:scaleY(0);transform-origin:0 100%}}

/* ---------- MARQUEE ---------- */
.mq{border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;padding:22px 0;background:var(--blush);position:relative}
.mq-r{display:flex;white-space:nowrap;will-change:transform}
.mq-r > span{font-family:'Fraunces',Georgia,serif;display:flex;align-items:center;gap:44px;padding-right:44px;font-size:clamp(15px,1.7vw,22px);color:var(--t2);letter-spacing:-.01em;font-weight:300}
.mq-r > span::after{content:'';width:5px;height:5px;border-radius:50%;background:var(--acc);flex-shrink:0;opacity:.6}

/* ---------- SECTIONS ---------- */
section{padding:clamp(84px,11vw,168px) 0;position:relative}
.split{display:grid;grid-template-columns:minmax(0,340px) 1fr;gap:clamp(34px,7vw,104px);align-items:start}
.stick{position:sticky;top:120px}
.stick h2{font-size:clamp(31px,4.6vw,58px);margin:20px 0 20px;letter-spacing:-.048em;font-weight:300}
.stick p{font-size:16px;color:var(--t2);max-width:35ch}
.stick .btn{margin-top:30px}
.rv{opacity:0;transform:translateY(24px);transition:opacity 1s var(--ease),transform 1s var(--ease)}
.rv.in{opacity:1;transform:none}
.mask{overflow:hidden;display:block}
.mask > i{display:block;font-style:normal;transform:translateY(108%);transition:transform 1s var(--ease)}
.in .mask > i,.mask.in > i{transform:none}
@media (prefers-reduced-motion:reduce){
.rv,.mask > i,.ln > i,#pre .pw span,#ov a em{opacity:1!important;transform:none!important;transition:none!important}
.sd::after{animation:none}
}

/* ---------- INDEX ROWS ---------- */
.rows{border-top:1px solid var(--line)}
.r{display:grid;grid-template-columns:64px 1fr;gap:clamp(16px,3vw,44px);padding:34px 0;border-bottom:1px solid var(--line);position:relative;transition:padding-left .5s var(--ease)}
.r::before{content:'';position:absolute;left:0;top:-1px;height:2px;border-radius:2px;width:0;background:var(--acc);opacity:.55;transition:width .7s var(--ease)}
.r:hover::before{width:100%}
.r:hover{padding-left:14px}
.r .n{font-size:11.5px;color:var(--t3);letter-spacing:.1em;padding-top:8px;font-variant-numeric:tabular-nums;transition:color .4s}
.r:hover .n{color:var(--acc)}
.r h3{font-size:clamp(21px,2.6vw,30px);margin-bottom:12px;letter-spacing:-.038em;font-weight:400}
.r p{font-size:15.5px;color:var(--t2);max-width:64ch;line-height:1.66}
.note{margin-top:40px;font-size:16.5px;color:var(--t2);max-width:72ch;line-height:1.72;padding:22px 26px;background:var(--blush);border-radius:16px;border-left:3px solid var(--acc)}
.note b{color:var(--t1);font-weight:400}

/* ---------- STACKED SERVICE CARDS ---------- */
.stack{display:flex;flex-direction:column;gap:20px}
.card{position:sticky;background:var(--bg3);box-shadow:var(--shadow);border:1px solid var(--line);border-radius:22px;padding:clamp(28px,3.6vw,52px);overflow:hidden;isolation:isolate}
.card::before{content:'';position:absolute;inset:0;z-index:-1;opacity:0;transition:opacity .6s var(--ease);
background:radial-gradient(680px circle at var(--mx,50%) var(--my,0%),rgba(192,112,74,.07),rgba(192,112,74,0) 62%)}
.card:hover::before{opacity:1}
.card-t{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:26px;border-bottom:1px solid var(--line)}
.card-t .ix{font-size:10.5px;letter-spacing:.22em;color:var(--t3);padding-top:7px;font-variant-numeric:tabular-nums}
.card h3{font-size:clamp(25px,3.2vw,40px);letter-spacing:-.02em;font-weight:400;max-width:16ch}
.card-b{display:grid;grid-template-columns:1.35fr .65fr;gap:clamp(22px,4vw,64px);padding-top:26px;align-items:start}
.card-b p{font-size:15.5px;color:var(--t2);line-height:1.68;max-width:52ch}
.card .prices{display:flex;flex-direction:column;gap:14px}
.pr{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding-bottom:13px;border-bottom:1px solid var(--line)}
.pr:last-child{border-bottom:0;padding-bottom:0}
.pr b{font-size:clamp(24px,3vw,34px);font-weight:300;letter-spacing:-.045em;font-variant-numeric:tabular-nums}
.pr span{font-size:12.5px;color:var(--t3);letter-spacing:.02em;text-align:right}

/* ---------- BREATH TOOL ---------- */
.bx{overflow:hidden;position:relative}
.bx::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 70% at 78% 50%,rgba(228,235,227,.7),rgba(228,235,227,0) 64%);pointer-events:none}
.bwrap{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:clamp(30px,4vw,54px) clamp(38px,6vw,90px);align-items:center;position:relative;z-index:2}
.bcopy{grid-column:1;grid-row:1}
.bctrl{grid-column:1;grid-row:2;align-self:start}
.bring{grid-column:2;grid-row:1/3;justify-self:center;align-self:center}
.bx h2{font-size:clamp(28px,4.2vw,52px);letter-spacing:-.048em;font-weight:300;margin:20px 0 20px;max-width:17ch}
.bx p.l{font-size:16px;color:var(--t2);max-width:44ch;margin-bottom:0}
.bstat{display:flex;gap:34px;margin-top:30px;padding-top:24px;border-top:1px solid var(--line)}
.bstat div .k{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--t3);margin-bottom:7px}
.bstat div .v{font-family:'Fraunces',Georgia,serif;font-size:23px;font-weight:400;letter-spacing:-.01em;color:var(--t1);font-variant-numeric:tabular-nums}
.bring{position:relative;width:clamp(238px,29vw,330px);height:clamp(238px,29vw,330px);flex-shrink:0;display:grid;place-items:center}
.bring svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.bring .trk{fill:none;stroke:rgba(58,46,35,.13);stroke-width:2}
.bring .arc{fill:none;stroke:var(--acc);stroke-width:3;stroke-linecap:round;transition:stroke-dashoffset .1s linear}
.borb{width:44%;height:44%;border-radius:50%;background:radial-gradient(circle at 34% 28%,#EFCBB2,#D89065 55%,#B05F37 100%);
box-shadow:0 14px 38px -14px rgba(176,95,55,.55);transition:transform 4s cubic-bezier(.4,0,.3,1);will-change:transform}
.bph{position:absolute;text-align:center;pointer-events:none;background:rgba(255,253,249,.94);border:1px solid rgba(58,46,35,.07);box-shadow:0 6px 20px -8px rgba(58,46,35,.22);border-radius:100px;padding:13px 24px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.bph .p{font-family:'Fraunces',Georgia,serif;font-size:clamp(18px,2vw,23px);font-weight:400;letter-spacing:-.01em;color:var(--t1);white-space:nowrap;transition:opacity .3s}
.bph .c{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--acc);margin-top:6px;white-space:nowrap;font-variant-numeric:tabular-nums}
.bbtn{display:flex;gap:11px;flex-wrap:wrap;align-items:center}
.bnote{font-size:12.5px;color:var(--t3);margin-top:18px;max-width:40ch;line-height:1.55}

/* ---------- APPROACH ---------- */
.g2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.g2c{background:var(--bg3);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:clamp(26px,3.2vw,40px);position:relative;transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.g2c:hover{transform:translateY(-3px);box-shadow:var(--shadow2)}
.g2c .bg{font-family:'Fraunces',Georgia,serif;font-style:italic;font-size:clamp(34px,4vw,50px);line-height:1;color:var(--acc);opacity:.55;margin-bottom:22px;display:block}
.g2c h3{font-size:clamp(20px,2.3vw,26px);margin-bottom:13px;letter-spacing:-.038em;font-weight:400}
.g2c p{font-size:14.5px;color:var(--t2);line-height:1.66}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}
.chip{display:inline-flex;align-items:center;gap:10px;background:var(--sage-soft);border:1px solid rgba(126,150,131,.3);border-radius:100px;padding:11px 19px;font-size:13.5px;color:#4E6353;transition:border-color .4s,color .4s,background .4s}
.chip:hover{border-color:var(--sage);color:#3C4E41}
.chip svg{color:var(--sage);flex-shrink:0}

/* ---------- ABOUT ---------- */
.abb h2{font-size:clamp(29px,4.4vw,56px);margin:20px 0 28px;letter-spacing:-.048em;max-width:19ch;font-weight:300}
.abb p{font-size:16.5px;color:var(--t2);margin-bottom:18px;line-height:1.7;max-width:60ch}
.abb p b{color:var(--t1);font-weight:400}
.facts{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);margin-top:36px}
.fct{padding:24px 22px 0 0;border-right:1px solid var(--line)}
.fct:last-child{border-right:0;padding-right:0}
.fct b{display:block;font-size:19px;font-weight:400;letter-spacing:-.032em;margin-bottom:6px}
.fct span{font-size:12.5px;color:var(--t3);line-height:1.5;display:block}

/* ---------- FORMATS ---------- */
.f3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:52px}
.f3c{background:var(--bg3);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:clamp(28px,3.4vw,42px) clamp(22px,2.6vw,32px);position:relative;transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.f3c:hover{transform:translateY(-3px);box-shadow:var(--shadow2)}
.f3c .ic{width:46px;height:46px;border-radius:50%;background:var(--blush);border:1px solid rgba(192,112,74,.2);display:grid;place-items:center;color:var(--acc);margin-bottom:26px;transition:border-color .4s,background .4s}
.f3c:hover .ic{border-color:var(--acc);background:var(--acc);color:#fff}
.f3c h3{font-size:clamp(19px,2.2vw,25px);margin-bottom:12px;letter-spacing:-.038em;font-weight:400}
.f3c p{font-size:14.5px;color:var(--t2);line-height:1.66}

/* ---------- FAQ ---------- */
.acc{border-top:1px solid var(--line)}
.q{border-bottom:1px solid var(--line)}
.qh{font-family:'Fraunces',Georgia,serif;width:100%;text-align:left;padding:26px 0;display:flex;gap:24px;align-items:center;justify-content:space-between;font-size:clamp(17px,1.8vw,21px);letter-spacing:-.012em;font-weight:400;color:var(--t1);transition:color .35s}
.qh:hover{color:var(--acc)}
.q.o{background:var(--blush);border-radius:14px;padding:0 20px;margin:6px 0;border-bottom-color:transparent}
.pl{width:24px;height:24px;flex-shrink:0;position:relative}
.pl::before,.pl::after{content:'';position:absolute;background:var(--t3);transition:transform .5s var(--ease),background .35s}
.pl::before{top:11.5px;left:2px;width:20px;height:1px}
.pl::after{left:11.5px;top:2px;height:20px;width:1px}
.q.o .pl::after{transform:rotate(90deg)}
.q.o .pl::before,.q.o .pl::after{background:var(--acc)}
.qb{height:0;overflow:hidden;transition:height .6s var(--ease)}
.qb p{padding:0 70px 30px 0;font-size:15.5px;color:var(--t2);line-height:1.72;max-width:78ch}

/* ---------- CTA ---------- */
.cta{position:relative;overflow:hidden;background:var(--deep);color:var(--onDeep2);border-radius:32px;margin:clamp(40px,6vw,80px) var(--pad);padding:clamp(56px,7vw,110px) 0}
.cta::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 70% 80% at 80% 20%,rgba(192,112,74,.3),rgba(192,112,74,0) 62%);pointer-events:none}
.cta .wrap{z-index:2}
.cta .lbl{color:#E8A87C}
.cta .b-fill{background:var(--onDeep);color:var(--deep);box-shadow:none}
.cta .b-fill::before{background:#F2C7A8}
.cta .b-fill:hover{color:var(--deep)}
.cta .b-line{border-color:var(--lineDeep);color:var(--onDeep);background:transparent}
.cta .b-line::before{background:var(--onDeep)}
.cta .b-line:hover{color:var(--deep);border-color:var(--onDeep)}
.cta h2{font-size:clamp(38px,7vw,96px);letter-spacing:-.022em;line-height:1.04;margin:24px 0 28px;font-weight:300;max-width:14ch;color:var(--onDeep)}
.cta .l{font-size:clamp(16px,1.5vw,19px);color:var(--onDeep2);max-width:46ch;margin-bottom:40px}
.ctab{display:flex;gap:11px;flex-wrap:wrap;margin-bottom:64px}
.cg4{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--lineDeep)}
.cg4 > *{padding:28px 26px 0 0;border-right:1px solid var(--lineDeep);display:block;position:relative;overflow:hidden}
.cg4 > *:last-child{border-right:0}
.cg4 > *::after{content:'';position:absolute;top:0;left:0;width:0;height:1px;background:var(--acc);transition:width .6s var(--ease)}
.cg4 a:hover::after{width:100%}
.cg4 .k{font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--onDeep3);margin-bottom:11px}
.cg4 .v{font-size:15.5px;letter-spacing:-.005em;line-height:1.4;color:var(--onDeep);overflow-wrap:break-word;transition:color .35s}
.cg4 .v.em{font-size:14px}
.cg4 a:hover .v{color:#F2C7A8}
.cg4 small{display:block;font-size:12.5px;color:var(--onDeep3);margin-top:6px}

/* ---------- CRISIS ---------- */
.cr{background:var(--blush);border-top:1px solid rgba(180,103,58,.22);border-bottom:1px solid rgba(180,103,58,.22);padding:32px 0}
.cr .in{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:22px}
.cr .k{font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--warm);margin-bottom:9px;display:flex;align-items:center;gap:10px}
.cr .k::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--warm);animation:pl 2s ease-in-out infinite}
@keyframes pl{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(180,103,58,.45)}50%{opacity:.6;box-shadow:0 0 0 7px rgba(180,103,58,0)}}
.cr p{font-size:14.5px;color:var(--t2);max-width:68ch;line-height:1.65}
.cr .btn{border-color:rgba(180,103,58,.4);color:var(--warm);background:rgba(255,255,255,.5)}
.cr .btn::before{background:var(--warm)}
.cr .btn:hover{color:#fff;border-color:var(--warm)}

/* ---------- FOOTER ---------- */
footer{background:var(--deep2);color:var(--onDeep2);padding:clamp(64px,8vw,104px) 0 34px;font-size:14px;overflow:hidden}
.fg{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:clamp(28px,4vw,60px);padding-bottom:60px}
.fg p{color:var(--onDeep2);max-width:34ch;line-height:1.7;font-size:14.5px}
.fb{font-family:'Fraunces',Georgia,serif;font-size:clamp(22px,2.4vw,29px);letter-spacing:-.018em;font-weight:400;margin-bottom:18px;display:block;line-height:1.2;color:var(--onDeep)}
footer h5{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--onDeep3);font-weight:600;margin-bottom:18px}
footer ul{list-style:none}
footer li{margin-bottom:11px;color:var(--onDeep2)}
footer li a{position:relative;transition:color .3s}
footer li a::after{content:'';position:absolute;left:0;bottom:-2px;width:0;height:1px;background:#E8A87C;transition:width .4s var(--ease)}
footer li a:hover{color:var(--onDeep)}
footer li a:hover::after{width:100%}
.bigmark{font-family:'Fraunces',Georgia,serif;font-size:clamp(52px,14vw,210px);line-height:.85;letter-spacing:-.03em;font-weight:300;color:rgba(251,246,239,.08);white-space:nowrap;margin:20px 0 34px;user-select:none}
.fbot{border-top:1px solid var(--lineDeep);padding-top:26px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:14px;font-size:12.5px;color:var(--onDeep3)}


/* ---------- HERO PORTRAIT ---------- */
.hgrid{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;justify-items:center;text-align:center}
.hhead{grid-row:1;width:100%}
.hbody{grid-row:3;width:100%}
.hero .lbl{justify-content:center}
.hero h1{margin-left:auto;margin-right:auto;max-width:17ch}
.hero-b p{margin-left:auto;margin-right:auto}
.pillars,.hcta{justify-content:center}
.hmeta > div{text-align:center;padding:17px 14px 19px}
.hpf{grid-row:2;justify-self:center;margin:clamp(16px,2vw,22px) auto clamp(18px,2.2vw,26px)}
.hpf{position:relative;aspect-ratio:3/4;width:clamp(178px,16vw,212px);border-radius:24px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow2);background:#E8D3C2}
.hpf img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:44% 26%;z-index:0;
filter:saturate(1.02) contrast(1.02) brightness(1.02);transition:filter 1s var(--ease)}
.hpf:hover img{filter:saturate(1.08) contrast(1.04) brightness(1.04)}
.hpf .grade{position:absolute;inset:0;z-index:1;pointer-events:none;
background:linear-gradient(0deg,rgba(58,38,24,.94) 0%,rgba(58,38,24,.84) 14%,rgba(58,38,24,.56) 28%,rgba(58,38,24,.24) 42%,rgba(58,38,24,0) 60%),
linear-gradient(0deg,rgba(150,80,44,.16),rgba(150,80,44,0) 62%)}

.hpf .cap{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:22px;color:#fff;text-shadow:0 1px 16px rgba(48,30,18,.6)}
.hpf .cap h3{font-size:20px;letter-spacing:-.012em;font-weight:400;margin-bottom:5px;color:#fff}
.hpf .cap .reg{font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#F2C7A8}
.hpf .cap .loc{font-size:12.5px;color:rgba(255,255,255,.82);margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.25)}
.hpf .cap .loc .wide{display:none}

/* ---------- SECTION PANELS ---------- */
.tools{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 0 6px;flex-wrap:wrap}
.tools .c{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--t3)}
.tools .acts{display:flex;gap:8px}
.tools button{font-size:12.5px;font-weight:500;letter-spacing:.02em;color:var(--t2);background:var(--bg3);border:1px solid var(--line);border-radius:100px;padding:10px 18px;transition:color .3s,border-color .3s,background .3s}
.tools button:hover{color:var(--acc);border-color:rgba(192,112,74,.4);background:var(--blush)}
.pnl{padding:0;border-top:1px solid var(--line);transition:background .5s var(--ease)}
.pnl.o{background:var(--bg3)}
.pnl:last-of-type{border-bottom:1px solid var(--line)}
.ph{width:100%;display:grid;grid-template-columns:58px minmax(0,1fr) minmax(0,auto) 26px;gap:clamp(16px,3vw,36px);align-items:center;
padding:30px 0;text-align:left;position:relative;transition:padding-left .5s var(--ease)}
.ph::before{content:'';position:absolute;left:0;top:-1px;height:2px;border-radius:2px;width:0;background:var(--acc);opacity:.6;transition:width .7s var(--ease)}
.ph:hover::before{width:100%}
.ph:hover{padding-left:14px}
.ph .n{font-size:11.5px;color:var(--t3);letter-spacing:.1em;font-variant-numeric:tabular-nums;transition:color .4s}
.ph:hover .n,.pnl.o .ph .n{color:var(--acc)}
.ph .t{font-size:clamp(21px,2.8vw,34px);letter-spacing:-.018em;font-weight:400;line-height:1.14}
.ph .d{font-size:13.5px;color:var(--t3);text-align:right;line-height:1.5;max-width:34ch;justify-self:end}
.pb{height:0;overflow:hidden;transition:height .7s var(--ease)}
.pnl.o .pb{overflow:visible}
.pbi{display:grid;grid-template-columns:58px minmax(0,1fr);gap:clamp(16px,3vw,36px);padding:4px 0 clamp(48px,6vw,76px)}
.pbi > .col{grid-column:2}
.pbi .lede{font-size:16.5px;color:var(--t2);max-width:62ch;margin-bottom:36px;line-height:1.66}
.pnl .pl::before,.pnl .pl::after{background:var(--t3)}
.pnl.o .pl::after{transform:rotate(90deg)}
.pnl.o .pl::before,.pnl.o .pl::after{background:var(--acc)}

@media (max-width:900px){
.hpf{width:52%;max-width:196px;border-radius:20px}
.hpf .cap{padding:15px}
.hpf .cap h3{font-size:16px}
.hpf .cap .loc{font-size:11.5px;margin-top:9px;padding-top:9px}
.ph{grid-template-columns:44px minmax(0,1fr) 24px;gap:14px;padding:24px 0}
.ph .d{display:none}
.pbi{grid-template-columns:1fr;gap:0}
.pbi > .col{grid-column:1}
}

@media (max-width:1080px){
.split,.bwrap{grid-template-columns:1fr;grid-template-rows:auto auto auto}
.bcopy{grid-column:1;grid-row:1}
.bring{grid-column:1;grid-row:2;justify-self:center}
.bctrl{grid-column:1;grid-row:3}
.stick{position:static}
.stick p{max-width:56ch}
.hmeta,.cg4{grid-template-columns:repeat(2,1fr)}
.hmeta > div:nth-child(2),.cg4 > *:nth-child(2){border-right:0}
.hmeta > div:nth-child(1),.hmeta > div:nth-child(2),.cg4 > *:nth-child(1),.cg4 > *:nth-child(2){border-bottom:1px solid var(--line);padding-bottom:24px}
.fg{grid-template-columns:1fr 1fr}
.bring{margin:0 auto}
.card{position:relative!important;top:auto!important}
}
@media (max-width:860px){
.nl{display:none}
.nav > .btn{display:none}
.burger{display:flex}
.g2,.f3{grid-template-columns:1fr}
.card-b{grid-template-columns:1fr}
.fn3{grid-template-columns:1fr;gap:0}
.fn3 div+div{margin-top:20px}
.facts{grid-template-columns:1fr}
.fct{border-right:0;border-bottom:1px solid var(--line);padding:20px 0}
.fct:last-child{border-bottom:0}
.sd{display:none}
}
@media (max-width:620px){
.hero-b{grid-template-columns:1fr;align-items:start;gap:30px}
.cg4{grid-template-columns:1fr}
.cg4 > *{border-right:0;border-bottom:1px solid var(--line);padding:22px 0}
.cg4 > *:last-child{border-bottom:0}
.hmeta{grid-template-columns:repeat(2,1fr)}
.hmeta > div{padding:18px 16px 20px 0}
.hmeta > div:nth-child(2n){border-right:0}
.hmeta > div:nth-child(-n+2){border-bottom:1px solid var(--line)}
.hpf .cap .loc .wide{display:none}
.hpf{margin:20px auto 26px}
.r{grid-template-columns:1fr}
.r .n{padding-top:0;margin-bottom:8px}
.qb p{padding-right:0}
.fg{grid-template-columns:1fr;gap:36px}
.bstat{gap:26px;flex-wrap:wrap}
}

/* ---------- PILLARS ---------- */
.pillars{display:flex;flex-wrap:wrap;gap:8px;margin-top:0}
.pillars a{font-size:13px;font-weight:500;letter-spacing:.01em;color:var(--acc);background:var(--blush);border:1px solid rgba(192,112,74,.2);border-radius:100px;padding:9px 18px;transition:.3s}
.pillars a:hover{color:#fff;border-color:var(--acc);background:var(--acc)}

/* ---------- SERVICE PILLAR CARDS ---------- */
.svc4{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.svc4 article{background:var(--bg3);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);padding:clamp(26px,3.2vw,42px);display:flex;flex-direction:column;transition:transform .5s var(--ease),box-shadow .5s var(--ease);position:relative}
.svc4 article:hover{transform:translateY(-3px);box-shadow:var(--shadow2)}
.svc4 .ix{font-size:10.5px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--acc);margin-bottom:20px;align-self:flex-start;background:var(--blush);padding:7px 14px;border-radius:100px}
.svc4 h3{font-size:clamp(23px,2.6vw,30px);letter-spacing:-.018em;font-weight:400;margin-bottom:14px}
.svc4 p{font-size:15px;color:var(--t2);line-height:1.66;margin-bottom:14px}
.svc4 p:last-of-type{margin-bottom:0}
.svc4 .go{margin-top:auto;padding-top:24px;font-size:13.5px;color:var(--acc);display:inline-flex;align-items:center;gap:9px;align-self:flex-start}
.svc4 .go svg{transition:transform .4s var(--ease)}
.svc4 article:hover .go svg{transform:translateX(4px)}

/* ---------- AREA TAGS ---------- */
.areas{display:flex;flex-wrap:wrap;gap:9px;margin:30px 0 8px}
.areas span{font-size:14px;color:var(--t2);background:var(--bg3);border:1px solid var(--line);border-radius:100px;padding:11px 19px;transition:border-color .35s,color .35s,background .35s,transform .35s}
.areas span:hover{border-color:rgba(192,112,74,.35);color:var(--acc);background:var(--blush);transform:translateY(-2px)}

/* ---------- VIEW ROUTER ---------- */

/* ---------- RESOURCES ---------- */
.rhero{padding:clamp(120px,14vw,190px) 0 clamp(40px,5vw,64px);position:relative;overflow:hidden;border-bottom:1px solid var(--line)}
.rhero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 66% 70% at 80% 12%,rgba(247,234,224,.95),rgba(247,234,224,0) 62%),radial-gradient(ellipse 50% 50% at 4% 92%,rgba(228,235,227,.7),rgba(228,235,227,0) 66%);pointer-events:none}
.rhero .wrap{z-index:2}
.rhero h1{font-size:clamp(33px,5.6vw,72px);letter-spacing:-.022em;line-height:1.08;font-weight:300;margin:22px 0 24px;max-width:17ch}
.rhero p{font-size:clamp(16px,1.5vw,19px);color:var(--t2);max-width:56ch;margin-bottom:16px;line-height:1.62}
.rhero .dis{font-size:13.5px;color:var(--t2);max-width:56ch;background:var(--sage-soft);border-radius:14px;padding:16px 20px;margin-top:26px}
.jump{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}
.jump a{font-size:12.5px;font-weight:500;color:var(--t2);background:var(--bg3);border:1px solid var(--line);border-radius:100px;padding:10px 18px;transition:.3s}
.jump a:hover{color:var(--acc);border-color:rgba(192,112,74,.4);background:var(--blush)}

.rsec{padding:clamp(60px,8vw,110px) 0;border-bottom:1px solid var(--line)}
.rsec:nth-of-type(even){background:var(--bg2)}
.rsec h2{font-size:clamp(26px,3.6vw,44px);letter-spacing:-.02em;line-height:1.14;font-weight:400;margin:20px 0 22px;max-width:20ch}
.rsec .intro{font-size:16.5px;color:var(--t2);max-width:64ch;line-height:1.7;margin-bottom:16px}
.rsec .intro b{color:var(--t1);font-weight:400}

.symp{display:flex;flex-wrap:wrap;gap:8px;margin:26px 0 6px}
.symp span{font-size:13.5px;color:var(--t2);background:var(--bg3);border:1px solid var(--line);border-radius:100px;padding:10px 17px}

.r4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:34px}
.r4 div{background:var(--bg3);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:26px 24px;transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.r4 div:hover{transform:translateY(-3px);box-shadow:var(--shadow2)}
.r4 h4{font-family:'Fraunces',Georgia,serif;font-size:19px;font-weight:400;letter-spacing:-.012em;margin-bottom:10px;color:var(--acc)}
.r4 p{font-size:14px;color:var(--t2);line-height:1.62}

.toolgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:40px}
.tool{background:var(--bg3);box-shadow:var(--shadow);border:1px solid var(--line);border-radius:22px;padding:clamp(24px,2.8vw,36px);display:flex;flex-direction:column;position:relative;overflow:hidden;isolation:isolate}
.tool::before{content:'';position:absolute;inset:0;z-index:-1;opacity:0;transition:opacity .6s var(--ease);background:radial-gradient(520px circle at var(--mx,50%) var(--my,0%),rgba(192,112,74,.07),rgba(192,112,74,0) 62%)}
.tool:hover::before{opacity:1}
.tool.wide{grid-column:1/-1}
.tool .th{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}
.tool .tn{font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--acc);background:var(--blush);padding:7px 13px;border-radius:100px;flex-shrink:0}
.tool h3{font-size:clamp(21px,2.3vw,27px);letter-spacing:-.015em;font-weight:400}
.tool p{font-size:14.5px;color:var(--t2);line-height:1.66;margin-bottom:12px}
.tool ol,.tool ul{margin:4px 0 14px 0;padding-left:18px}
.tool li{font-size:14.5px;color:var(--t2);line-height:1.7;margin-bottom:4px}
.tool li b{color:var(--t1);font-weight:400}
.tool .dur{margin-top:auto;padding-top:20px;border-top:1px solid var(--line);font-size:12.5px;color:var(--t3);letter-spacing:.06em;text-transform:uppercase}

/* interactive tool shell */
.tbox{display:grid;grid-template-columns:1fr auto;gap:clamp(24px,4vw,52px);align-items:center;margin-top:8px}
.tbox .tctl{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.tstat{display:flex;gap:28px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}
.tstat .k{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--t3);margin-bottom:6px}
.tstat .v{font-family:'Fraunces',Georgia,serif;font-size:21px;font-weight:400;letter-spacing:-.01em;color:var(--t1);font-variant-numeric:tabular-nums}

/* 5-4-3-2-1 grounding stepper */
.gsteps{display:flex;flex-direction:column;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:16px;overflow:hidden;margin-top:6px}
.gstep{background:var(--bg3);padding:16px 20px;display:grid;grid-template-columns:34px 1fr auto;gap:16px;align-items:center;transition:background .4s,opacity .4s}
.gstep .gn{font-family:'Fraunces',Georgia,serif;font-size:26px;line-height:1;color:var(--t3);transition:color .4s}
.gstep .gt{font-size:15px;color:var(--t2)}
.gstep .gd{width:18px;height:18px;border-radius:50%;border:1px solid var(--line2);transition:.4s}
.gstep.act{background:var(--blush)}
.gstep.act .gn{color:var(--acc)}
.gstep.act .gt{color:var(--t1)}
.gstep.done .gd{background:var(--acc);border-color:var(--acc)}
.gstep.done .gn{color:var(--acc);opacity:.6}

.note-s{background:var(--blush);border:1px solid rgba(192,112,74,.18);border-radius:24px;padding:clamp(28px,3.4vw,48px);margin-top:12px}
.note-s .qm{font-family:'Fraunces',Georgia,serif;font-size:56px;line-height:.6;color:var(--acc);opacity:.5;display:block;margin-bottom:24px}
.note-s p{font-size:clamp(16px,1.7vw,19.5px);color:var(--t2);line-height:1.72;margin-bottom:16px;max-width:64ch}
.note-s p b{color:var(--t1);font-weight:400}
.note-s .sig{font-size:12px;font-weight:600;color:var(--acc);letter-spacing:.16em;text-transform:uppercase;margin-top:26px;padding-top:20px;border-top:1px solid rgba(192,112,74,.2)}
.rcta{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}

@media (max-width:1080px){
.svc4,.toolgrid{grid-template-columns:1fr}
.r4{grid-template-columns:repeat(2,1fr)}
.tbox{grid-template-columns:1fr;gap:28px}
.tbox .bring{margin:0 auto}
}
@media (max-width:620px){
.r4{grid-template-columns:1fr}
.tstat{gap:20px;flex-wrap:wrap}
.gstep{grid-template-columns:28px 1fr auto;gap:12px;padding:14px 16px}
}



/* ---------- MULTI PAGE ADDITIONS ---------- */
.nl a.on{color:var(--acc)}
.nl a.on::after{content:'';position:absolute;left:14px;right:14px;bottom:2px;height:2px;border-radius:2px;background:var(--acc);opacity:.5}
.nl{flex-wrap:wrap;justify-content:center}
.nl a{padding:8px 11px;font-size:12.5px}
@media (max-width:1180px){.nl a{padding:7px 8px;font-size:12px}}

/* page hero */
.phero{padding:clamp(104px,12vw,150px) 0 clamp(36px,4.6vw,60px);position:relative;overflow:hidden;border-bottom:1px solid var(--line)}
.phero::before{content:'';position:absolute;inset:0;pointer-events:none;
background:radial-gradient(ellipse 64% 62% at 84% 8%,rgba(247,234,224,.95),rgba(247,234,224,0) 62%),
radial-gradient(ellipse 52% 52% at 4% 94%,rgba(228,235,227,.72),rgba(228,235,227,0) 66%)}
.phero .wrap{position:relative;z-index:2;text-align:center}
.phero h1{font-size:clamp(30px,3.9vw,54px);letter-spacing:-.02em;line-height:1.14;font-weight:400;margin:14px auto 20px;max-width:20ch}
.phero .sub{font-size:clamp(16.5px,1.6vw,20px);color:var(--t2);max-width:60ch;margin:0 auto 14px;line-height:1.65}
.phero .sub.em{color:var(--t1)}
.phero .pcta{display:flex;flex-wrap:wrap;gap:11px;justify-content:center;margin-top:28px}

/* generic content section */
.sec{padding:clamp(56px,7vw,100px) 0;border-bottom:1px solid var(--line)}
.sec:last-of-type{border-bottom:0}
.sec.tint{background:var(--bg2)}
.sec h2{font-size:clamp(25px,3.4vw,42px);letter-spacing:-.02em;line-height:1.16;font-weight:400;margin:16px 0 22px;max-width:22ch}
.sec h3{font-size:clamp(20px,2.3vw,27px);letter-spacing:-.015em;font-weight:400;margin:0 0 12px}
.sec p{font-size:16.5px;color:var(--t2);line-height:1.72;margin-bottom:16px;max-width:66ch}
.sec p.lead{font-size:clamp(17px,1.8vw,21px);color:var(--t1);line-height:1.6;max-width:56ch}
.sec p b{color:var(--t1);font-weight:500}
.sec .quiet{font-size:14.5px;color:var(--t3)}
.sec .center{text-align:center;margin-left:auto;margin-right:auto}
.sec .center h2,.sec .center p{margin-left:auto;margin-right:auto}
.sec ul.plain{list-style:none;margin:6px 0 18px;padding:0;max-width:66ch}
.sec ul.plain li{font-size:16.5px;color:var(--t2);line-height:1.7;padding:9px 0 9px 26px;position:relative;border-bottom:1px solid var(--line)}
.sec ul.plain li:last-child{border-bottom:0}
.sec ul.plain li::before{content:'';position:absolute;left:4px;top:19px;width:7px;height:7px;border-radius:50%;background:var(--acc);opacity:.5}
.pull{background:var(--blush);border-radius:20px;border-left:3px solid var(--acc);padding:clamp(22px,2.8vw,32px);margin:26px 0;max-width:64ch}
.pull p{margin:0;font-size:clamp(17px,1.8vw,20px);color:var(--t1);line-height:1.6}
.qmark{font-family:'Fraunces',Georgia,serif;font-size:clamp(19px,2.1vw,24px);color:var(--t1);line-height:1.5;margin:0 0 10px;max-width:56ch}

/* card grids */
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:34px}
.gx{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:34px}
.cardy{background:var(--bg3);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:clamp(24px,2.8vw,34px);transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.cardy:hover{transform:translateY(-3px);box-shadow:var(--shadow2)}
.cardy h3{font-size:clamp(19px,2.1vw,23px);margin-bottom:11px}
.cardy p{font-size:15px;line-height:1.68;margin:0}
.cardy .tag{display:inline-block;font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--acc);background:var(--blush);padding:7px 13px;border-radius:100px;margin-bottom:16px}
.fmt{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}
.fmt span{font-size:13.5px;color:var(--t2);background:var(--bg3);border:1px solid var(--line);border-radius:100px;padding:10px 18px}

.endcta{text-align:center;padding:clamp(52px,7vw,92px) 0}
.endcta h2{margin-left:auto;margin-right:auto}
.endcta p{margin-left:auto;margin-right:auto}
.endcta .row{display:flex;flex-wrap:wrap;gap:11px;justify-content:center;margin-top:26px}
.locline{font-size:13.5px;color:var(--t3);margin-top:22px}

@media (max-width:980px){.g3,.gx{grid-template-columns:1fr}}

@media (max-width:620px){
.btn{white-space:normal;text-align:center;height:auto;min-height:46px;padding:12px 20px;line-height:1.35}
.btn.b-lg{height:auto;min-height:52px;padding:14px 24px}
.btn span{justify-content:center;flex-wrap:wrap}
.hcta .btn,.pcta .btn,.row .btn,.rcta .btn,.tctl .btn{width:100%}
}

/* ---------- HOLD / PENDING NOTICE ---------- */
.hold{background:var(--sage-soft);border:1px dashed rgba(126,150,131,.55);border-radius:16px;padding:18px 22px;margin:26px 0;max-width:64ch;font-size:14.5px;color:#46594B;line-height:1.6}
.hold b{display:block;font-weight:600;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:#5E7566;margin-bottom:7px}

/* ---------- FEE TABLE ---------- */
.fees2{margin-top:30px;border-top:1px solid var(--line)}
.fee2{display:grid;grid-template-columns:1fr auto;gap:14px 30px;align-items:baseline;padding:24px 0;border-bottom:1px solid var(--line)}
.fee2 .nm{font-family:'Fraunces',Georgia,serif;font-size:clamp(19px,2.1vw,23px);letter-spacing:-.012em;color:var(--t1)}
.fee2 .nm small{display:block;font-family:'Figtree',sans-serif;font-size:14.5px;color:var(--t2);margin-top:7px;line-height:1.6;max-width:56ch}
.fee2 .amt{font-family:'Fraunces',Georgia,serif;font-size:clamp(22px,2.6vw,30px);color:var(--acc);white-space:nowrap}
.fee2 .amt.q{font-size:clamp(14px,1.5vw,16px);font-family:'Figtree',sans-serif;color:var(--t3);max-width:20ch;white-space:normal;text-align:right}
@media (max-width:620px){.fee2{grid-template-columns:1fr}.fee2 .amt,.fee2 .amt.q{text-align:left}}

/* ---------- LOOKING FOR LIST ---------- */
.lookfor{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 6px}
.lookfor a{font-size:14.5px;color:var(--t1);background:var(--bg3);border:1px solid var(--line);border-radius:100px;padding:12px 20px;transition:.3s}
.lookfor a:hover{color:var(--acc);border-color:rgba(192,112,74,.4);background:var(--blush)}

/* policy blocks (fees page) */
.pol{margin-top:34px;display:grid;gap:16px;max-width:70ch}
.polc{background:var(--bg3);border:1px solid var(--line);border-radius:18px;padding:clamp(22px,2.4vw,28px)}
.polc h3{font-family:'Fraunces',Georgia,serif;font-size:clamp(18px,2vw,22px);letter-spacing:-.012em;font-weight:400;margin:0 0 10px;color:var(--t1)}
.polc p{font-size:15.5px;color:var(--t2);line-height:1.7;margin:0;max-width:none}
.polc p+p{margin-top:13px}

/* direct contact lines and service disclaimers */
.dir{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 30px;margin:26px 0 4px}
.dir a{font-family:'Fraunces',Georgia,serif;font-size:clamp(17px,1.9vw,21px);color:var(--acc);text-decoration:none;border-bottom:1px solid rgba(192,112,74,.3);padding-bottom:2px;transition:border-color .35s var(--ease)}
.dir a:hover{border-bottom-color:var(--acc)}
.disc{margin:28px auto 0;max-width:62ch;font-size:13.5px;line-height:1.65;color:var(--t3)}
.sec .dir{justify-content:flex-start}
.endcta .dir{justify-content:center}
.endcta .disc{text-align:center}
@media (max-width:620px){.dir{flex-direction:column;align-items:center;gap:12px}.sec .dir{align-items:flex-start}}
