
:root{
  --navy:#0B1A2E;
  --navy-deep:#06101E;
  --navy-soft:#16283F;
  --mint:#7FD8C0;
  --peach:#F5C9A9;
  --orange:#E4703B;
  --paper:#FBFAF7;
  --paper-warm:#F3EFE8;
  --slate:#46586E;--charcoal:#1F262B;--green:#00C08B;
  --line:#DFD9CF;
  --display:"Bricolage Grotesque",system-ui,sans-serif;
  --body:"Public Sans",system-ui,-apple-system,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,monospace;
  --logo:"Montserrat",system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--body);color:var(--navy);background:var(--paper);line-height:1.65;-webkit-font-smoothing:antialiased}
.wrap{max-width:1180px;margin:0 auto;padding:0 28px}
a{color:inherit}
h1,h2,h3,h4,h5{font-family:var(--display);line-height:1.1;font-weight:600;letter-spacing:-0.02em}
.eyebrow{font-family:var(--mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--orange)}

/* ---------- nav ---------- */
header{position:sticky;top:0;z-index:60;background:rgba(251,250,247,.88);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:74px}



.navlinks{display:flex;align-items:center;gap:34px}
.navlinks button,.navlinks a:not(.btn){background:none;border:0;font-family:var(--body);font-size:.94rem;font-weight:500;color:var(--slate);cursor:pointer;padding:6px 0;border-bottom:2px solid transparent;transition:.2s;text-decoration:none}
.navlinks button:hover,.navlinks button.on,.navlinks a:not(.btn):hover,.navlinks a:not(.btn).on{color:var(--navy);border-bottom-color:var(--orange)}
.btn{display:inline-block;font-family:var(--body);font-weight:600;font-size:.95rem;padding:13px 24px;border-radius:100px;text-decoration:none;cursor:pointer;border:0;transition:.22s}
.btn-primary{background:var(--orange);color:#fff}
.btn-primary:hover{background:#cf5f2c;transform:translateY(-1px)}
.btn-ghost{background:transparent;color:var(--navy);border:1.5px solid var(--navy)}
.btn-ghost:hover{background:var(--navy);color:var(--paper)}
.burger{display:none;background:none;border:0;cursor:pointer;font-size:1.5rem;color:var(--navy)}


.dd{position:relative}
.dd>button .cv,.dd>a .cv{font-size:.7em;opacity:.55;margin-left:3px}
.ddm{position:absolute;top:100%;left:-18px;margin-top:10px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 20px 50px rgba(11,26,46,.14);padding:22px 24px;display:none;gap:30px;min-width:740px;z-index:70}
.dd:hover .ddm,.dd:focus-within .ddm{display:flex}
.ddm:before{content:"";position:absolute;top:-12px;left:0;right:0;height:12px}
.ddcol{display:flex;flex-direction:column;gap:2px;min-width:210px}
.ddcol h6{font-family:var(--mono);font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:var(--orange);margin-bottom:10px;font-weight:500}
.ddcol button,.ddcol a{background:none;border:0;text-align:left;padding:7px 8px;margin-left:-8px;border-radius:7px;font-family:var(--body);font-size:.9rem;color:var(--slate);cursor:pointer;text-decoration:none;transition:.16s;display:block;border-bottom:0!important}
.ddcol button:hover,.ddcol a:hover{background:var(--paper-warm);color:var(--navy)}
@media(max-width:680px){
  .ddm{position:static;display:flex!important;flex-direction:column;box-shadow:none;border:0;padding:4px 0 12px;min-width:0;gap:14px;margin:0}
  .dd{width:100%}
  .dd>button .cv,.dd>a .cv{display:none}
  .ddcol h6{margin-top:8px}
}
/* ---------- pages ---------- */
.page{display:none;animation:fade .45s ease}
.page.on{display:block}
@keyframes fade{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

/* ---------- hero ---------- */
.hero{background:var(--navy);color:var(--paper);position:relative;overflow:hidden;padding:96px 0 0}
.hero:before,.hero:after{content:"";position:absolute;border-radius:50%;filter:blur(90px);opacity:.4;pointer-events:none}
.hero:before{width:520px;height:520px;background:var(--mint);top:-200px;right:-120px}
.hero:after{width:440px;height:440px;background:var(--peach);bottom:-180px;left:-140px;opacity:.28}
.hero .wrap{position:relative;z-index:2}
.pill{display:inline-flex;align-items:center;gap:9px;font-family:var(--mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mint);border:1px solid rgba(127,216,192,.35);padding:7px 15px;border-radius:100px}
.dot{width:6px;height:6px;border-radius:50%;background:var(--mint);animation:pulse 2.4s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.25}}
.hero h1{font-size:clamp(2.6rem,6.2vw,4.5rem);font-weight:800;margin:26px 0 22px;max-width:16ch}
.hero h1 i{font-style:italic;font-weight:400;color:var(--peach)}
.hero p.lede{font-size:1.16rem;color:rgba(251,250,247,.76);max-width:56ch}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin:34px 0 12px}
.hero .micro{font-family:var(--mono);font-size:.76rem;color:rgba(251,250,247,.45)}

/* ---------- lifecycle rail (signature) ---------- */
.rail{position:relative;z-index:2;margin-top:74px;padding-bottom:70px}
.rail-head{font-family:var(--mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(251,250,247,.4);margin-bottom:26px}
.rail-track{display:grid;grid-template-columns:repeat(5,1fr);gap:0;border-top:1px solid rgba(251,250,247,.16)}
.stage{padding:24px 20px 0 0;position:relative;cursor:default}
.stage:before{content:"";position:absolute;top:-5px;left:0;width:9px;height:9px;border-radius:50%;background:var(--navy);border:1.5px solid rgba(251,250,247,.35);transition:.25s}
.stage:hover:before{background:var(--orange);border-color:var(--orange);transform:scale(1.35)}
.stage h4{font-family:var(--mono);font-size:.74rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--mint);margin-bottom:10px}
.stage .lose{font-size:.9rem;color:rgba(251,250,247,.58);margin-bottom:10px}
.stage .fix{font-size:.92rem;color:var(--paper);font-weight:500;border-left:2px solid var(--peach);padding-left:11px}
.rail-foot{margin-top:30px;font-size:.92rem;color:rgba(251,250,247,.55)}
.rail-foot a{color:var(--peach)}

/* ---------- ticker ---------- */
.ticker{background:var(--navy-deep);color:rgba(251,250,247,.55);border-top:1px solid rgba(251,250,247,.08);overflow:hidden;padding:15px 0;position:relative;z-index:2}
.ticker-in{display:flex;gap:52px;white-space:nowrap;animation:slide 28s linear infinite;font-family:var(--mono);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase}
.ticker-in b{color:var(--mint);font-weight:500}
@keyframes slide{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ---------- sections ---------- */
section{padding:92px 0}
.sec-head{max-width:64ch;margin-bottom:52px}
.sec-head h2{font-size:clamp(1.9rem,3.6vw,2.8rem);margin:14px 0 16px}
.sec-head p{color:var(--slate);font-size:1.06rem}

.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:30px;transition:.25s;cursor:pointer;display:flex;flex-direction:column}
.card:hover{transform:translateY(-4px);border-color:var(--navy);box-shadow:0 14px 40px rgba(11,26,46,.09)}
.card .ic{font-size:1.5rem;margin-bottom:16px}
.card h3{font-size:1.24rem;margin-bottom:11px}
.card p{color:var(--slate);font-size:.95rem;flex:1}
.card .go{font-family:var(--mono);font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;color:var(--orange);margin-top:18px}

/* ---------- audience tabs ---------- */
.aud{background:var(--paper-warm)}
.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:38px}
.tabs button{background:#fff;border:1px solid var(--line);border-radius:100px;padding:10px 20px;font-family:var(--body);font-size:.92rem;font-weight:500;color:var(--slate);cursor:pointer;transition:.2s}
.tabs button.on{background:var(--navy);color:var(--paper);border-color:var(--navy)}
.panel{display:none;grid-template-columns:1.45fr 1fr;gap:44px;align-items:start}
.panel.on{display:grid}
.panel h3{font-size:1.6rem;margin-bottom:18px;max-width:22ch}
.ticks{list-style:none;margin-top:20px}
.ticks li{padding:11px 0 11px 30px;position:relative;border-bottom:1px solid var(--line);font-size:.97rem;color:var(--slate)}
.ticks li:before{content:"";position:absolute;left:4px;top:19px;width:11px;height:2px;background:var(--orange)}
.side{display:flex;flex-direction:column;gap:16px}
.side-card{background:#fff;border:1px solid var(--line);border-left:3px solid var(--mint);border-radius:10px;padding:22px}
.side-card h4{font-size:1rem;margin-bottom:8px}
.side-card p{font-size:.9rem;color:var(--slate)}


/* ---------- homepage articles ---------- */
.arts{padding:92px 0;background:var(--paper-warm)}
.lead-art{display:grid;grid-template-columns:1.15fr 1fr;gap:0;background:var(--navy);border-radius:18px;overflow:hidden;cursor:pointer;transition:.25s;margin-bottom:22px}
.lead-art:hover{transform:translateY(-4px);box-shadow:0 22px 60px rgba(11,26,46,.18)}
.lead-txt{padding:44px}
.lead-txt .tag{display:inline-block;font-family:var(--mono);font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:var(--navy);background:var(--peach);padding:5px 12px;border-radius:100px;margin-bottom:18px}
.lead-txt h3{font-size:clamp(1.5rem,2.8vw,2.1rem);color:var(--paper);margin-bottom:14px;max-width:18ch;letter-spacing:-.03em}
.lead-txt p{color:rgba(251,250,247,.72);font-size:1.02rem;margin-bottom:22px;max-width:44ch}
.lead-txt .go{font-family:var(--mono);font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;color:var(--peach)}
.lead-vis{background:var(--navy-soft);display:flex;align-items:center;justify-content:center;padding:32px;position:relative;overflow:hidden}
.lead-vis:before{content:"";position:absolute;width:320px;height:320px;border-radius:50%;background:var(--green);filter:blur(80px);opacity:.32;top:-90px;right:-70px}
.lead-vis svg{width:100%;height:auto;position:relative;z-index:2;max-width:340px}
.art-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.art{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px;cursor:pointer;transition:.25s;display:flex;flex-direction:column}
.art:hover{transform:translateY(-4px);border-color:var(--navy);box-shadow:0 14px 40px rgba(11,26,46,.09)}
.art .tag{font-family:var(--mono);font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:var(--orange);margin-bottom:12px}
.art h4{font-size:1.14rem;margin-bottom:9px;letter-spacing:-.02em}
.art p{color:var(--slate);font-size:.93rem;flex:1}
.art .go{font-family:var(--mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--orange);margin-top:16px}
.art-more{margin-top:26px;text-align:center}
@media(max-width:900px){.lead-art{grid-template-columns:1fr}.lead-vis{order:-1;padding:26px}.art-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.art-grid{grid-template-columns:1fr}.lead-txt{padding:28px}}

/* ---------- testimonials ---------- */
.testi .qmark{font-family:var(--display);font-size:2.4rem;color:var(--orange);line-height:1;margin-bottom:2px}
.testi .quote{color:var(--navy);font-size:.98rem;flex:1;margin-bottom:20px}
.testi .who{border-top:1px solid var(--line);padding-top:14px}
.testi .name{font-weight:600;font-size:.94rem}
.testi .role{font-family:var(--mono);font-size:.72rem;letter-spacing:.05em;color:var(--slate);margin-top:3px}

/* ---------- cta band ---------- */
.band{background:var(--navy);color:var(--paper);text-align:center;padding:86px 0}
.band h2{font-size:clamp(1.8rem,3.4vw,2.6rem);margin-bottom:16px}
.band p{color:rgba(251,250,247,.7);max-width:52ch;margin:0 auto 30px}

/* ---------- service detail ---------- */
.svc-hero{background:var(--navy);color:var(--paper);padding:64px 0 74px}
.back{background:none;border:0;font-family:var(--mono);font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;color:var(--mint);cursor:pointer;margin-bottom:26px;padding:0}
.svc-hero h1{font-size:clamp(2.1rem,4.6vw,3.3rem);margin-bottom:18px}
.svc-hero p{color:rgba(251,250,247,.74);max-width:62ch;font-size:1.06rem}
.svc-body{display:grid;grid-template-columns:1.7fr 1fr;gap:52px;align-items:start}
.svc-main h2{font-size:1.5rem;margin:0 0 20px}
.svc-main h2+p,.note p{color:var(--slate)}
.note{background:var(--paper-warm);border-radius:12px;padding:26px;margin-top:36px}
.note h2{font-size:1.14rem;margin-bottom:10px}

/* ---------- faq ---------- */
.faq{margin-top:52px}
.faq h2{font-size:1.5rem;margin-bottom:6px}
.faq>p{color:var(--slate);margin-bottom:22px}
.q{border-top:1px solid var(--line)}
.q:last-child{border-bottom:1px solid var(--line)}
.q button{width:100%;background:none;border:0;text-align:left;padding:20px 40px 20px 0;font-family:var(--display);font-size:1.04rem;font-weight:600;color:var(--navy);cursor:pointer;position:relative;letter-spacing:-.01em}
.q button:after{content:"+";position:absolute;right:6px;top:18px;font-family:var(--mono);font-size:1.3rem;color:var(--orange);transition:.25s}
.q.open button:after{transform:rotate(45deg)}
.q .a{max-height:0;overflow:hidden;transition:max-height .38s ease}
.q .a p{padding:0 44px 24px 0;color:var(--slate);font-size:.97rem}

/* ---------- calendly band ---------- */
.call{background:var(--peach);border-radius:16px;padding:38px;margin-top:52px}
.call .eyebrow{color:#9a4c1e}
.call h3{font-size:1.5rem;margin:12px 0 12px;max-width:26ch}
.call p{color:#5c3a22;max-width:58ch;margin-bottom:24px}
.call .micro{font-family:var(--mono);font-size:.74rem;color:#8a5834;margin-top:14px}
.call-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px;border-top:1px solid rgba(154,76,30,.22);padding-top:22px}
.call-facts div{font-size:.9rem;color:#5c3a22}
.call-facts b{display:block;font-family:var(--mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:#9a4c1e;margin-bottom:5px;font-weight:500}

/* ---------- about ---------- */
.vals{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:46px}
.val{border-top:2px solid var(--navy);padding-top:18px}
.val h4{font-size:1.02rem;margin-bottom:7px}
.val p{font-size:.9rem;color:var(--slate)}
.bio{display:grid;grid-template-columns:300px 1fr;gap:48px;align-items:start}
.shot{width:100%;max-width:270px;aspect-ratio:1;border-radius:50%;overflow:hidden;background:var(--paper-warm)}
.shot img{width:100%;height:100%;object-fit:cover;display:block;border-radius:50%}
.cred{font-family:var(--mono);font-size:.76rem;letter-spacing:.08em;color:var(--slate);margin:14px 0 0;text-transform:uppercase}
.pull{border-left:3px solid var(--orange);padding-left:20px;font-size:1.14rem;color:var(--navy);margin:0 0 22px}
.bio p{color:var(--slate);margin-bottom:16px}
.practice{margin-top:44px}
.practice .row{border-top:1px solid var(--line);padding:22px 0;display:grid;grid-template-columns:230px 1fr;gap:28px}
.practice .row h5{font-size:1.02rem;color:var(--navy)}
.practice .row p{font-size:.94rem;color:var(--slate);margin:0}

/* ---------- contact ---------- */
.contact{display:grid;grid-template-columns:1.3fr 1fr;gap:48px;align-items:start}
.form{background:#fff;border:1px solid var(--line);border-radius:14px;padding:32px}
.field{margin-bottom:18px}
.field label{display:block;font-family:var(--mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--slate);margin-bottom:7px}
.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:9px;padding:12px 14px;font-family:var(--body);font-size:.96rem;color:var(--navy);background:var(--paper)}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--orange);outline-offset:1px;border-color:transparent}
.field textarea{min-height:130px;resize:vertical}
.cinfo div{border-top:1px solid var(--line);padding:18px 0}
.cinfo b{display:block;font-family:var(--mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--slate);margin-bottom:5px;font-weight:500}

/* ---------- footer ---------- */
footer{background:var(--navy-deep);color:rgba(251,250,247,.6);padding:66px 0 30px;font-size:.92rem}
.fgrid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:36px;padding-bottom:38px}
footer h5{font-family:var(--mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mint);margin-bottom:16px;font-weight:500}
footer ul{list-style:none}
footer li{margin-bottom:10px}
footer button,footer a{background:none;border:0;color:rgba(251,250,247,.6);cursor:pointer;font-family:var(--body);font-size:.92rem;padding:0;text-decoration:none;transition:.2s}
footer button:hover,footer a:hover{color:var(--paper)}
.fbot{border-top:1px solid rgba(251,250,247,.1);padding-top:26px;font-family:var(--mono);font-size:.74rem;color:rgba(251,250,247,.35)}


.logo{display:inline-flex;align-items:center;text-decoration:none;background:none;border:0;padding:0;cursor:pointer}
.logo-img{height:42px;width:auto;display:block}
footer .logo-img,.logo--light .logo-img{height:46px}
@media(max-width:640px){.logo-img{height:36px}}

/* ===== ldpage ===== */

:root{
  --navy:#0B1A2E;--navy-deep:#06101E;--navy-soft:#16283F;
  --mint:#7FD8C0;--peach:#F5C9A9;--orange:#E4703B;
  --paper:#FBFAF7;--paper-warm:#F3EFE8;--slate:#46586E;--charcoal:#1F262B;--green:#00C08B;--line:#DFD9CF;--red:#B4472E;
  --display:"Bricolage Grotesque",system-ui,sans-serif;
  --body:"Public Sans",system-ui,-apple-system,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,monospace;
  --logo:"Montserrat",system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
.ldpage{font-family:var(--body);color:var(--navy);background:var(--paper);line-height:1.66;-webkit-font-smoothing:antialiased}
.ldpage .wrap{max-width:1120px;margin:0 auto;padding:0 26px}
.ldpage .narrow{max-width:760px;margin:0 auto;padding:0 26px}
.ldpage h1, .ldpage h2, .ldpage h3, .ldpage h4, .ldpage h5{font-family:var(--display);line-height:1.1;font-weight:600;letter-spacing:-.02em}
.ldpage .eyebrow{font-family:var(--mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--orange)}
.ldpage a{color:var(--orange)}


.ldpage .logo{display:inline-flex;align-items:center;text-decoration:none;background:none;border:0;padding:0;cursor:pointer}
.ldpage .logo-img{height:42px;width:auto;display:block}
.ldpage footer .logo-img, .ldpage .logo--light .logo-img{height:46px}
@media(max-width:640px){.ldpage .logo-img{height:36px}}

.ldpage /* header */
header{position:sticky;top:0;z-index:80;background:rgba(251,250,247,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.ldpage .nav{display:flex;align-items:center;justify-content:space-between;height:70px;gap:16px}



.ldpage .nav-right{display:flex;align-items:center;gap:18px}
.ldpage .nav-right .mail{font-family:var(--mono);font-size:.8rem;color:var(--slate);text-decoration:none}
.ldpage .btn{display:inline-block;font-family:var(--body);font-weight:600;font-size:.95rem;padding:13px 26px;border-radius:100px;text-decoration:none;cursor:pointer;border:0;transition:.22s;text-align:center}
.ldpage .btn-primary{background:var(--orange);color:#fff}
.ldpage .btn-primary:hover{background:#cf5f2c;transform:translateY(-1px)}
.ldpage .btn-lg{padding:16px 34px;font-size:1.03rem}
.ldpage .btn-ghost{background:transparent;color:var(--paper);border:1.5px solid rgba(251,250,247,.4)}
.ldpage .btn-ghost:hover{background:var(--paper);color:var(--navy)}

.ldpage /* hero */
.hero{background:var(--navy);color:var(--paper);position:relative;overflow:hidden;padding:78px 0 70px}
.ldpage .hero:before, .ldpage .hero:after{content:"";position:absolute;border-radius:50%;filter:blur(90px);pointer-events:none}
.ldpage .hero:before{width:520px;height:520px;background:var(--mint);opacity:.34;top:-210px;right:-130px}
.ldpage .hero:after{width:420px;height:420px;background:var(--peach);opacity:.22;bottom:-190px;left:-150px}
.ldpage .hero .wrap{position:relative;z-index:2}
.ldpage .pill{display:inline-flex;align-items:center;gap:9px;font-family:var(--mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mint);border:1px solid rgba(127,216,192,.35);padding:7px 15px;border-radius:100px}
.ldpage .dot{width:6px;height:6px;border-radius:50%;background:var(--mint);animation:pulse 2.4s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.25}}
.ldpage .hero h1{font-size:clamp(2.5rem,6.4vw,4.6rem);font-weight:800;margin:24px 0 0;max-width:15ch;letter-spacing:-.035em}
.ldpage .hero h1 .hl{position:relative;display:inline-block;color:var(--navy);padding:0 .12em}
.ldpage .hero h1 .hl:before{content:"";position:absolute;inset:.08em -.02em .06em;background:var(--peach);transform:rotate(-.8deg);z-index:-1;border-radius:3px}
.ldpage .hero .lede{font-size:1.2rem;color:rgba(251,250,247,.8);max-width:54ch;margin-top:22px}
.ldpage .hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin:32px 0 14px}
.ldpage .micro{font-family:var(--mono);font-size:.76rem;color:rgba(251,250,247,.48)}
.ldpage .trust{display:flex;gap:34px;flex-wrap:wrap;margin-top:44px;padding-top:26px;border-top:1px solid rgba(251,250,247,.14)}
.ldpage .trust div{font-size:.9rem;color:rgba(251,250,247,.72)}
.ldpage .trust b{display:block;font-family:var(--mono);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--mint);margin-bottom:5px;font-weight:500}

.ldpage /* alert */
.alert{background:var(--paper-warm);border-top:3px solid var(--red);padding:40px 0}
.ldpage .alert .narrow{display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:start;max-width:900px}
.ldpage .alert .mark{font-family:var(--display);font-size:2.4rem;font-weight:800;color:var(--red);line-height:1}
.ldpage .alert h2{font-size:1.4rem;margin-bottom:10px}
.ldpage .alert p{color:var(--slate);font-size:1.02rem}

.ldpage section{padding:82px 0}
.ldpage .sec-head{max-width:62ch;margin-bottom:44px}
.ldpage .sec-head h2{font-size:clamp(1.8rem,3.6vw,2.6rem);margin:12px 0 14px}
.ldpage .sec-head p{color:var(--slate);font-size:1.05rem}

.ldpage /* svg figure */
figure{margin:42px 0}
.ldpage figure svg{width:100%;height:auto;display:block}
.ldpage figcaption{font-family:var(--mono);font-size:.74rem;letter-spacing:.06em;color:var(--slate);margin-top:14px;padding-left:14px;border-left:2px solid var(--orange)}

.ldpage /* checklist grid */
.docs{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ldpage .doc{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px;position:relative}
.ldpage .doc .n{font-family:var(--mono);font-size:.7rem;letter-spacing:.1em;color:var(--orange);margin-bottom:12px}
.ldpage .doc h4{font-size:1.04rem;margin-bottom:8px}
.ldpage .doc p{font-size:.91rem;color:var(--slate)}

.ldpage /* article body */
.article h2{font-size:1.75rem;margin:52px 0 16px}
.ldpage .article h3{font-size:1.2rem;margin:32px 0 10px}
.ldpage .article p{margin-bottom:16px;color:var(--slate);font-size:1.03rem}
.ldpage .article strong{color:var(--navy);font-weight:600}
.ldpage .article ul{margin:0 0 20px;list-style:none}
.ldpage .article li{padding:10px 0 10px 28px;position:relative;border-bottom:1px solid var(--line);color:var(--slate);font-size:.99rem}
.ldpage .article li:before{content:"";position:absolute;left:2px;top:20px;width:12px;height:2px;background:var(--orange)}
.ldpage .lead-para{font-size:1.2rem;color:var(--navy);border-left:3px solid var(--orange);padding-left:22px;margin-bottom:26px}
.ldpage .callout{background:var(--navy);color:var(--paper);border-radius:14px;padding:28px;margin:34px 0}
.ldpage .callout h4{font-size:1.1rem;color:var(--mint);margin-bottom:10px}
.ldpage .callout p{color:rgba(251,250,247,.82);margin:0;font-size:.99rem}

.ldpage /* table */
.tbl-scroll{overflow-x:auto;margin:34px 0}
.ldpage table{width:100%;border-collapse:collapse;min-width:600px;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.ldpage th, .ldpage td{text-align:left;padding:15px 18px;border-bottom:1px solid var(--line);font-size:.93rem;vertical-align:top}
.ldpage thead th{background:var(--navy);color:var(--paper);font-family:var(--mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;font-weight:500}
.ldpage tbody th{font-weight:600;color:var(--navy);width:26%}
.ldpage td{color:var(--slate)}
.ldpage tbody tr:last-child th, .ldpage tbody tr:last-child td{border-bottom:0}

.ldpage /* faq */
.q{border-top:1px solid var(--line)}
.ldpage .q:last-of-type{border-bottom:1px solid var(--line)}
.ldpage .q button{width:100%;background:none;border:0;text-align:left;padding:20px 40px 20px 0;font-family:var(--display);font-size:1.06rem;font-weight:600;color:var(--navy);cursor:pointer;position:relative}
.ldpage .q button:after{content:"+";position:absolute;right:6px;top:17px;font-family:var(--mono);font-size:1.35rem;color:var(--orange);transition:.25s}
.ldpage .q.open button:after{transform:rotate(45deg)}
.ldpage .q .a{max-height:0;overflow:hidden;transition:max-height .38s ease}
.ldpage .q .a p{padding:0 40px 22px 0;color:var(--slate);font-size:.98rem}

.ldpage /* call band */
.call{background:var(--peach);padding:74px 0}
.ldpage .call .eyebrow{color:#9a4c1e}
.ldpage .call h2{font-size:clamp(1.8rem,3.6vw,2.5rem);margin:14px 0 14px;max-width:22ch}
.ldpage .call p{color:#5c3a22;max-width:56ch;font-size:1.05rem;margin-bottom:26px}
.ldpage .call .micro{color:#8a5834;margin-top:14px}
.ldpage .call-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:34px;border-top:1px solid rgba(154,76,30,.24);padding-top:24px}
.ldpage .call-facts div{font-size:.93rem;color:#5c3a22}
.ldpage .call-facts b{display:block;font-family:var(--mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:#9a4c1e;margin-bottom:5px;font-weight:500}

.ldpage /* form */
.formsec{background:var(--paper-warm)}
.ldpage .fgrid{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start}
.ldpage .form{background:#fff;border:1px solid var(--line);border-radius:16px;padding:32px}
.ldpage .field{margin-bottom:16px}
.ldpage .field label{display:block;font-family:var(--mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--slate);margin-bottom:6px}
.ldpage .field input, .ldpage .field select, .ldpage .field textarea{width:100%;border:1px solid var(--line);border-radius:9px;padding:12px 14px;font-family:var(--body);font-size:.96rem;color:var(--navy);background:var(--paper)}
.ldpage .field input:focus, .ldpage .field select:focus, .ldpage .field textarea:focus{outline:2px solid var(--orange);outline-offset:1px;border-color:transparent}
.ldpage .field textarea{min-height:104px;resize:vertical}
.ldpage .consent{font-size:.82rem;color:var(--slate);margin-top:12px}
.ldpage .steps li{list-style:none;padding:16px 0 16px 44px;position:relative;border-bottom:1px solid var(--line);color:var(--slate);font-size:.97rem}
.ldpage .steps li b{display:block;color:var(--navy);font-family:var(--display);font-size:1.04rem;margin-bottom:3px}
.ldpage .steps li:before{content:counter(s);counter-increment:s;position:absolute;left:0;top:17px;width:27px;height:27px;border-radius:50%;background:var(--navy);color:var(--paper);font-family:var(--mono);font-size:.76rem;display:flex;align-items:center;justify-content:center}
.ldpage .steps{counter-reset:s}

.ldpage footer{background:var(--navy-deep);color:rgba(251,250,247,.55);padding:52px 0 28px;font-size:.9rem}
.ldpage footer a{color:rgba(251,250,247,.72)}
.ldpage .fbot{border-top:1px solid rgba(251,250,247,.1);padding-top:22px;margin-top:28px;font-family:var(--mono);font-size:.72rem;color:rgba(251,250,247,.34)}


.ldpage .stickybar{position:fixed;left:0;right:0;bottom:0;z-index:90;display:none;gap:10px;padding:10px 14px;background:rgba(11,26,46,.97);backdrop-filter:blur(10px);border-top:1px solid rgba(251,250,247,.14)}
.ldpage .stickybar a{flex:1;padding:14px 8px;border-radius:100px;font-family:var(--body);font-weight:600;font-size:.94rem;text-align:center;text-decoration:none}
.ldpage .stickybar .call-a{background:var(--orange);color:#fff}
.ldpage .stickybar .tel-a{background:transparent;color:var(--paper);border:1.5px solid rgba(251,250,247,.42)}
@media(max-width:760px){.ldpage .stickybar{display:flex}.ldpage{padding-bottom:74px}}

.ldpage .skip{position:absolute;left:-9999px;top:0;background:var(--navy);color:var(--paper);padding:12px 18px;z-index:200;border-radius:0 0 8px 0}
.ldpage .skip:focus{left:0}
.ldpage .ckb{position:fixed;left:14px;right:14px;bottom:14px;z-index:120;background:var(--navy);color:var(--paper);border:1px solid rgba(251,250,247,.18);border-radius:14px;padding:20px 22px;display:none;box-shadow:0 18px 50px rgba(6,16,30,.35);max-width:560px}
.ldpage .ckb.show{display:block}
.ldpage .ckb p{font-size:.9rem;color:rgba(251,250,247,.78);margin-bottom:14px}
.ldpage .ckb p a{color:var(--mint)}
.ldpage .ckb .row{display:flex;gap:10px;flex-wrap:wrap}
.ldpage .ckb button{flex:1;min-width:130px;padding:11px 16px;border-radius:100px;font-family:var(--body);font-weight:600;font-size:.9rem;cursor:pointer;border:0}
.ldpage .ckb .yes{background:var(--orange);color:#fff}
.ldpage .ckb .no{background:transparent;color:var(--paper);border:1.5px solid rgba(251,250,247,.4)}
@media(max-width:760px){.ldpage .ckb{bottom:84px}}
.ldpage .rv{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}
.ldpage .rv.in{opacity:1;transform:none}

@media(max-width:900px){
  .ldpage .docs{grid-template-columns:1fr 1fr}
  .ldpage .fgrid{grid-template-columns:1fr}
  .ldpage .nav-right .mail{display:none}
}
@media(max-width:640px){
  .ldpage .docs, .ldpage .call-facts{grid-template-columns:1fr}
  .ldpage section{padding:56px 0}
  .ldpage .trust{gap:20px}
  .ldpage .alert .narrow{grid-template-columns:1fr}
  .ldpage .hero h1{font-size:2.5rem}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.ldpage .rv{opacity:1;transform:none}}

/* ===== artpage ===== */

:root{
  --navy:#0B1A2E;--navy-deep:#06101E;--navy-soft:#16283F;
  --mint:#7FD8C0;--green:#00C08B;--peach:#F5C9A9;--orange:#E4703B;--red:#B4472E;--amber:#D89B2C;
  --paper:#FBFAF7;--paper-warm:#F3EFE8;--slate:#46586E;--line:#DFD9CF;--charcoal:#1F262B;
  --display:"Bricolage Grotesque",system-ui,sans-serif;
  --body:"Public Sans",system-ui,-apple-system,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
.artpage{font-family:var(--body);color:var(--navy);background:var(--paper);line-height:1.7;-webkit-font-smoothing:antialiased}
.artpage .wrap{max-width:1120px;margin:0 auto;padding:0 26px}
.artpage .narrow{max-width:700px;margin:0 auto;padding:0 26px}
.artpage h1, .artpage h2, .artpage h3, .artpage h4{font-family:var(--display);line-height:1.12;letter-spacing:-.025em;font-weight:600}
.artpage a{color:var(--orange)}
.artpage .eyebrow{font-family:var(--mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--orange)}

.artpage header{position:sticky;top:0;z-index:60;background:rgba(251,250,247,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.artpage .nav{display:flex;align-items:center;justify-content:space-between;height:70px;gap:18px}
.artpage .logo-img{height:40px;width:auto;display:block}
.artpage .btn{display:inline-block;font-weight:600;font-size:.94rem;padding:12px 24px;border-radius:100px;text-decoration:none;border:0;cursor:pointer;transition:.22s;font-family:var(--body);text-align:center}
.artpage .btn-primary{background:var(--orange);color:#fff}
.artpage .btn-primary:hover{background:#cf5f2c;transform:translateY(-1px)}
.artpage .btn-lg{padding:16px 34px;font-size:1.02rem}

.artpage /* hero */
.hero{background:var(--navy);color:var(--paper);position:relative;overflow:hidden;padding:74px 0 66px}
.artpage .hero:before, .artpage .hero:after{content:"";position:absolute;border-radius:50%;filter:blur(90px);pointer-events:none}
.artpage .hero:before{width:520px;height:520px;background:var(--green);opacity:.3;top:-220px;right:-140px}
.artpage .hero:after{width:420px;height:420px;background:var(--peach);opacity:.2;bottom:-190px;left:-160px}
.artpage .hero .narrow{position:relative;z-index:2}
.artpage .hero h1{font-size:clamp(2.6rem,7vw,4.4rem);font-weight:800;letter-spacing:-.04em;margin:20px 0 20px}
.artpage .hero h1 .hl{position:relative;display:inline-block;color:var(--navy);padding:0 .1em}
.artpage .hero h1 .hl:before{content:"";position:absolute;inset:.1em -.02em .08em;background:var(--peach);transform:rotate(-1deg);z-index:-1;border-radius:3px}
.artpage .hero .stand{font-size:1.2rem;color:rgba(251,250,247,.8);max-width:50ch}
.artpage .meta{display:flex;gap:22px;flex-wrap:wrap;margin-top:32px;padding-top:20px;border-top:1px solid rgba(251,250,247,.16);font-family:var(--mono);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(251,250,247,.5)}

.artpage /* article */
article{padding:64px 0 20px}
.artpage article p{margin-bottom:20px;color:var(--slate);font-size:1.08rem}
.artpage article strong{color:var(--navy);font-weight:600}
.artpage .opener p:first-child{font-size:1.42rem;line-height:1.5;color:var(--navy);font-family:var(--display);font-weight:400;letter-spacing:-.015em}
.artpage article h2{font-size:1.85rem;margin:56px 0 18px;position:relative;padding-left:20px}
.artpage article h2:before{content:"";position:absolute;left:0;top:.18em;bottom:.18em;width:4px;border-radius:4px;background:var(--green)}
.artpage article ul{list-style:none;margin:0 0 24px}
.artpage article li{padding:11px 0 11px 30px;position:relative;color:var(--slate);font-size:1.02rem;border-bottom:1px solid var(--line)}
.artpage article li:before{content:"";position:absolute;left:3px;top:22px;width:13px;height:2px;background:var(--orange);border-radius:2px}
.artpage .kicker{font-family:var(--display);font-size:1.5rem;color:var(--navy);border-left:3px solid var(--orange);padding-left:22px;margin:0 0 26px;letter-spacing:-.02em;line-height:1.35}

.artpage /* figure */
figure{margin:44px 0}
.artpage figure svg{width:100%;height:auto;display:block}
.artpage figcaption{font-family:var(--mono);font-size:.74rem;letter-spacing:.05em;color:var(--slate);margin-top:14px;padding-left:14px;border-left:2px solid var(--orange);line-height:1.6}

.artpage /* verdict cards */
.cases{display:grid;gap:14px;margin:30px 0 36px}
.artpage .case{background:#fff;border:1px solid var(--line);border-left:4px solid var(--line);border-radius:12px;padding:22px 24px}
.artpage .case.yes{border-left-color:var(--green)}
.artpage .case.no{border-left-color:var(--red)}
.artpage .case.gone{border-left-color:var(--amber)}
.artpage .case .dates{font-family:var(--mono);font-size:.78rem;letter-spacing:.05em;color:var(--slate);margin-bottom:8px}
.artpage .case h4{font-size:1.12rem;margin-bottom:6px}
.artpage .case.yes h4{color:#12795C}
.artpage .case.no h4{color:var(--red)}
.artpage .case.gone h4{color:#8A6015}
.artpage .case p{margin:0;font-size:.98rem}

.artpage /* callout */
.warn{background:#FDF1EC;border:1px solid #F0D3C7;border-radius:14px;padding:26px 28px;margin:34px 0}
.artpage .warn .eyebrow{color:var(--red)}
.artpage .warn h3{font-size:1.25rem;margin:10px 0 10px}
.artpage .warn p{color:#7A3D2B;margin-bottom:0;font-size:1.01rem}
.artpage .warn p+p{margin-top:12px}

.artpage .traps{display:grid;gap:14px;margin:30px 0}
.artpage .trap{background:var(--paper-warm);border-radius:12px;padding:22px 24px}
.artpage .trap h4{font-size:1.06rem;margin-bottom:7px}
.artpage .trap p{margin:0;font-size:.98rem}

.artpage /* cta */
.cta{background:var(--peach);border-radius:18px;padding:40px;margin:56px 0 0}
.artpage .cta .eyebrow{color:#9A4C1E}
.artpage .cta h3{font-size:1.7rem;margin:12px 0 14px;max-width:22ch}
.artpage .cta p{color:#5C3A22;margin-bottom:24px;max-width:52ch}
.artpage .cta .micro{font-family:var(--mono);font-size:.74rem;color:#8A5834;margin:14px 0 0}
.artpage .checks{list-style:none;margin:0 0 26px}
.artpage .checks li{padding:10px 0 10px 30px;position:relative;color:#5C3A22;border-bottom:1px solid rgba(154,76,30,.18);font-size:1rem}
.artpage .checks li:before{content:"";position:absolute;left:4px;top:20px;width:12px;height:2px;background:#9A4C1E;border-radius:2px}

.artpage .disc{margin-top:44px;padding-top:24px;border-top:1px solid var(--line);font-size:.88rem;color:var(--slate);font-style:italic}
.artpage footer{background:var(--navy-deep);color:rgba(251,250,247,.55);padding:52px 0 28px;font-size:.9rem;margin-top:70px}
.artpage footer a{color:rgba(251,250,247,.75)}
.artpage .fbot{border-top:1px solid rgba(251,250,247,.1);padding-top:22px;margin-top:26px;font-family:var(--mono);font-size:.72rem;color:rgba(251,250,247,.34)}

@media(max-width:640px){
  .artpage article h2{font-size:1.5rem;margin-top:42px}
  .artpage .opener p:first-child{font-size:1.2rem}
  .artpage .cta{padding:26px}
  .artpage .nav .btn{padding:10px 18px;font-size:.86rem}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ===== pvpage ===== */

:root{--navy:#0B1A2E;--navy-deep:#06101E;--orange:#E4703B;--paper:#FBFAF7;--slate:#46586E;--line:#DFD9CF;
--display:"Bricolage Grotesque",system-ui,sans-serif;--body:"Public Sans",system-ui,sans-serif;--mono:"IBM Plex Mono",monospace;}
*{box-sizing:border-box;margin:0;padding:0}
.pvpage{font-family:var(--body);color:var(--navy);background:var(--paper);line-height:1.66}
.pvpage .wrap{max-width:760px;margin:0 auto;padding:0 26px}
.pvpage h1, .pvpage h2{font-family:var(--display);letter-spacing:-.02em;line-height:1.15}
.pvpage header{border-bottom:1px solid var(--line);padding:18px 0}
.pvpage header .wrap{max-width:1120px;display:flex;justify-content:space-between;align-items:center}
.pvpage .logo-img{height:38px;width:auto;display:block}
.pvpage a{color:var(--orange)}
.pvpage .hero{background:var(--navy);color:var(--paper);padding:56px 0}
.pvpage .hero h1{font-size:clamp(2rem,4.4vw,2.9rem)}
.pvpage .hero p{color:rgba(251,250,247,.72);margin-top:12px;font-family:var(--mono);font-size:.8rem;letter-spacing:.06em}
.pvpage main{padding:56px 0 80px}
.pvpage h2{font-size:1.3rem;margin:38px 0 12px}
.pvpage p{margin-bottom:14px;color:var(--slate)}
.pvpage ul{margin:0 0 18px;list-style:none}
.pvpage li{padding:9px 0 9px 26px;position:relative;border-bottom:1px solid var(--line);color:var(--slate);font-size:.97rem}
.pvpage li:before{content:"";position:absolute;left:2px;top:19px;width:11px;height:2px;background:var(--orange)}
.pvpage footer{background:var(--navy-deep);color:rgba(251,250,247,.5);padding:34px 0;font-size:.85rem;font-family:var(--mono)}

.pvpage .ckb{position:fixed;left:14px;right:14px;bottom:14px;z-index:120;background:var(--navy);color:var(--paper);border:1px solid rgba(251,250,247,.18);border-radius:14px;padding:20px 22px;display:none;box-shadow:0 18px 50px rgba(6,16,30,.35);max-width:560px}
.pvpage .ckb.show{display:block}
.pvpage .ckb p{font-size:.9rem;color:rgba(251,250,247,.78);margin-bottom:14px}
.pvpage .ckb p a{color:var(--mint)}
.pvpage .ckb .row{display:flex;gap:10px;flex-wrap:wrap}
.pvpage .ckb button{flex:1;min-width:130px;padding:11px 16px;border-radius:100px;font-family:var(--body);font-weight:600;font-size:.9rem;cursor:pointer;border:0}
.pvpage .ckb .yes{background:var(--orange);color:#fff}
.pvpage .ckb .no{background:transparent;color:var(--paper);border:1.5px solid rgba(251,250,247,.4)}
@media(max-width:760px){.pvpage .ckb{bottom:84px}}

/* ===== tkpage ===== */

:root{--navy:#0B1A2E;--navy-deep:#06101E;--mint:#7FD8C0;--green:#00C08B;--peach:#F5C9A9;--orange:#E4703B;
--paper:#FBFAF7;--paper-warm:#F3EFE8;--slate:#46586E;--line:#DFD9CF;
--display:"Bricolage Grotesque",system-ui,sans-serif;--body:"Public Sans",system-ui,sans-serif;--mono:"IBM Plex Mono",monospace;}
*{box-sizing:border-box;margin:0;padding:0}
.tkpage{font-family:var(--body);color:var(--navy);background:var(--paper);line-height:1.66}
.tkpage .wrap{max-width:720px;margin:0 auto;padding:0 26px}
.tkpage h1, .tkpage h2, .tkpage h3{font-family:var(--display);letter-spacing:-.025em;line-height:1.12}
.tkpage a{color:var(--orange)}
.tkpage header{border-bottom:1px solid var(--line);padding:16px 0}
.tkpage header .wrap{max-width:1120px}
.tkpage .logo-img{height:38px;width:auto;display:block}
.tkpage .hero{background:var(--navy);color:var(--paper);padding:70px 0;text-align:center;position:relative;overflow:hidden}
.tkpage .hero:before{content:"";position:absolute;width:460px;height:460px;border-radius:50%;background:var(--mint);filter:blur(90px);opacity:.3;top:-200px;right:-120px}
.tkpage .hero .wrap{position:relative;z-index:2}
.tkpage .tick{width:58px;height:58px;border-radius:50%;background:var(--green);display:flex;align-items:center;justify-content:center;margin:0 auto 22px}
.tkpage .tick svg{width:28px;height:28px}
.tkpage .hero h1{font-size:clamp(2rem,4.6vw,2.9rem);margin-bottom:14px}
.tkpage .hero p{color:rgba(251,250,247,.78);max-width:44ch;margin:0 auto}
.tkpage main{padding:56px 0 70px}
.tkpage .next{list-style:none;counter-reset:s}
.tkpage .next li{padding:18px 0 18px 46px;position:relative;border-bottom:1px solid var(--line);color:var(--slate);font-size:.99rem}
.tkpage .next li b{display:block;color:var(--navy);font-family:var(--display);font-size:1.06rem;margin-bottom:3px}
.tkpage .next li:before{content:counter(s);counter-increment:s;position:absolute;left:0;top:19px;width:28px;height:28px;border-radius:50%;background:var(--navy);color:var(--paper);font-family:var(--mono);font-size:.78rem;display:flex;align-items:center;justify-content:center}
.tkpage .box{background:var(--peach);border-radius:14px;padding:28px;margin-top:38px}
.tkpage .box h3{font-size:1.25rem;margin-bottom:10px}
.tkpage .box p{color:#5c3a22;margin-bottom:18px}
.tkpage .btn{display:inline-block;background:var(--orange);color:#fff;font-weight:600;padding:14px 28px;border-radius:100px;text-decoration:none}
.tkpage footer{background:var(--navy-deep);color:rgba(251,250,247,.5);padding:34px 0;font-size:.85rem;font-family:var(--mono)}
.tkpage footer a{color:rgba(251,250,247,.72)}

.tkpage .ckb{position:fixed;left:14px;right:14px;bottom:14px;z-index:120;background:var(--navy);color:var(--paper);border:1px solid rgba(251,250,247,.18);border-radius:14px;padding:20px 22px;display:none;box-shadow:0 18px 50px rgba(6,16,30,.35);max-width:560px}
.tkpage .ckb.show{display:block}
.tkpage .ckb p{font-size:.9rem;color:rgba(251,250,247,.78);margin-bottom:14px}
.tkpage .ckb p a{color:var(--mint)}
.tkpage .ckb .row{display:flex;gap:10px;flex-wrap:wrap}
.tkpage .ckb button{flex:1;min-width:130px;padding:11px 16px;border-radius:100px;font-family:var(--body);font-weight:600;font-size:.9rem;cursor:pointer;border:0}
.tkpage .ckb .yes{background:var(--orange);color:#fff}
.tkpage .ckb .no{background:transparent;color:var(--paper);border:1.5px solid rgba(251,250,247,.4)}
@media(max-width:760px){.tkpage .ckb{bottom:84px}}


/* ---------- service pricing ---------- */
.prices{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:22px}
.price{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px;display:flex;flex-direction:column}
.price.lead{border-left:3px solid var(--orange)}
.price .n{font-family:var(--mono);font-size:.66rem;letter-spacing:.13em;text-transform:uppercase;color:var(--orange);margin-bottom:12px}
.price h4{font-size:1.22rem;margin-bottom:9px;letter-spacing:-.02em}
.price p{font-size:.92rem;color:var(--slate);flex:1;margin:0}
.price-note{margin-top:18px;font-size:.93rem;color:var(--slate)}
@media(max-width:820px){.prices{grid-template-columns:1fr}}

/* ---------- calculators ---------- */
.calcpage .hero{background:var(--navy);color:var(--paper)}
.ctabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:30px}
.ctabs button{background:#fff;border:1px solid var(--line);border-radius:100px;padding:11px 22px;font-family:var(--body);font-size:.94rem;font-weight:500;color:var(--slate);cursor:pointer;transition:.2s}
.ctabs button.on{background:var(--navy);color:var(--paper);border-color:var(--navy)}
.cpanel{display:none}
.cpanel.on{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}
.cbox{background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px}
.cbox h3{font-size:1.2rem;margin-bottom:6px}
.cbox .sub{font-size:.92rem;color:var(--slate);margin-bottom:20px}
.cf{margin-bottom:16px}
.cf label{display:block;font-family:var(--mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--slate);margin-bottom:6px}
.cf .wrapin{position:relative}
.cf .pre{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--slate);font-size:.96rem;pointer-events:none}
.cf input,.cf select{width:100%;border:1px solid var(--line);border-radius:9px;padding:12px 14px;font-family:var(--body);font-size:1rem;color:var(--navy);background:var(--paper)}
.cf input.money{padding-left:26px}
.cf input:focus,.cf select:focus{outline:2px solid var(--orange);outline-offset:1px;border-color:transparent}
.cf .hint{font-size:.8rem;color:var(--slate);margin-top:5px}
.cout{background:var(--navy);color:var(--paper);border-radius:16px;padding:28px;position:sticky;top:92px}
.cout h3{font-size:1.2rem;color:var(--paper);margin-bottom:20px}
.cline{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:13px 0;border-bottom:1px solid rgba(251,250,247,.14)}
.cline:last-of-type{border-bottom:0}
.cline span{font-size:.93rem;color:rgba(251,250,247,.7)}
.cline b{font-family:var(--display);font-size:1.16rem;font-weight:600;color:var(--paper);white-space:nowrap}
.cline.big{padding:18px 0}
.cline.big b{font-size:1.7rem;color:var(--mint)}
.cline.warnline b{color:var(--peach)}
.cnote{margin-top:18px;padding-top:16px;border-top:1px solid rgba(251,250,247,.14);font-size:.86rem;color:rgba(251,250,247,.6)}
.cflag{background:#FDF1EC;border:1px solid #F0D3C7;border-radius:10px;padding:14px 16px;margin-top:16px;font-size:.88rem;color:#7A3D2B;display:none}
.cflag.on{display:block}
.cdisc{margin-top:30px;font-size:.86rem;color:var(--slate);font-style:italic}
@media(max-width:860px){.cpanel.on{grid-template-columns:1fr}.cout{position:static}}
/* ---------- reveal ---------- */

.ckb{position:fixed;left:14px;right:14px;bottom:14px;z-index:120;background:var(--navy);color:var(--paper);border:1px solid rgba(251,250,247,.18);border-radius:14px;padding:20px 22px;display:none;box-shadow:0 18px 50px rgba(6,16,30,.35);max-width:560px}
.ckb.show{display:block}
.ckb p{font-size:.9rem;color:rgba(251,250,247,.78);margin-bottom:14px}
.ckb p a{color:var(--mint)}
.ckb .row{display:flex;gap:10px;flex-wrap:wrap}
.ckb button{flex:1;min-width:130px;padding:11px 16px;border-radius:100px;font-family:var(--body);font-weight:600;font-size:.9rem;cursor:pointer;border:0}
.ckb .yes{background:var(--orange);color:#fff}
.ckb .no{background:transparent;color:var(--paper);border:1.5px solid rgba(251,250,247,.4)}
@media(max-width:760px){.ckb{bottom:84px}}
.rv{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}
.rv.in{opacity:1;transform:none}

/* ---------- responsive ---------- */
@media(max-width:960px){
  .rail-track{grid-template-columns:1fr 1fr}
  .stage{border-top:1px solid rgba(251,250,247,.12);padding:22px 16px 22px 0}
  .grid3{grid-template-columns:1fr 1fr}
  .panel.on,.svc-body,.bio,.contact{grid-template-columns:1fr}
  .vals{grid-template-columns:1fr 1fr}
  .fgrid{grid-template-columns:1fr 1fr}
  .practice .row{grid-template-columns:1fr;gap:8px}
}
@media(max-width:680px){
  .navlinks{display:none}
  .navlinks.open{display:flex;position:absolute;top:74px;left:0;right:0;background:var(--paper);flex-direction:column;align-items:flex-start;gap:0;padding:16px 28px 24px;border-bottom:1px solid var(--line)}
  .navlinks.open button,.navlinks.open a:not(.btn){padding:12px 0;width:100%}
  .burger{display:block}
  .rail-track{grid-template-columns:1fr}
  .grid3,.vals,.call-facts{grid-template-columns:1fr}
  .fgrid{grid-template-columns:1fr}
  section{padding:64px 0}
  .call{padding:28px}
}
@media(prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
  .rv{opacity:1;transform:none}
}

/* ===== book-a-call ===== */
.calendly-wrap{max-width:820px;margin:0 auto;overflow-x:auto}
.booking-confirmed{padding:60px 0 20px}
.booking-msg{max-width:520px;margin:0 auto;text-align:center}
.booking-msg .tick{width:58px;height:58px;border-radius:50%;background:var(--green);display:flex;align-items:center;justify-content:center;margin:0 auto 22px}
.booking-msg .tick svg{width:28px;height:28px}
.booking-msg h2{font-size:1.6rem;margin-bottom:10px}
.booking-msg p{color:var(--slate)}
