/* Credible Life site theme (taken from credible-life.com): teal top bar, navy header with orange "Book Consultation",
   white menu box, navy hero, white / pale-blue sections, navy footer. Single light theme, same as the live site.
   On the live site "GT Walsheim Pro" loads from the theme; Figtree is only the preview fallback. */
:root{
  --navy:#083D59;        /* header, footer, headings */
  --navy-deep:#053148;   /* hero */
  --teal:#137797;        /* top bar, menu links, accents */
  --orange:#FFA84B;      /* buttons */
  --orange-hover:#F2952F;
  --pale:#F0F6F9;        /* alternate sections */
  --white:#FFFFFF;
  --text:#777777;        /* body copy */
  --muted-on-navy:#A0AFB7;
  --footer-link:#99B2BF;
  --line:#DDE7EC;
  --note-bg:#FFF4D6; --note-fg:#5A4200; --note-line:#E7C766;
  --walsheim:"GT Walsheim Pro","Figtree",system-ui,-apple-system,"Segoe UI",sans-serif;
  --roboto:"Roboto",system-ui,-apple-system,"Segoe UI",sans-serif;
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}
body{background:var(--white);color:var(--text);font-family:var(--walsheim);font-size:16px;line-height:1.7;margin:0}
.wrap{max-width:1200px;margin:0 auto;padding-inline:clamp(16px,3vw,24px)}
h1,h2,h3{color:var(--navy);margin:0;text-wrap:balance}
h2{font-family:var(--roboto);font-weight:600;font-size:clamp(26px,3vw,32px);line-height:1.25}
h3{font-family:var(--walsheim);font-weight:700;font-size:19px;line-height:1.35}
p{margin:0}
a{color:inherit}
:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
.sub{font-family:var(--roboto);font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--teal)}
.section{padding-block:clamp(56px,7vw,90px)}
.pale{background:var(--pale)}
.head{display:grid;gap:10px;max-width:760px;margin-bottom:40px}
.ph{background:#FFF4D6;color:#5A4200;border:1px dashed #E7C766;padding:0 .35em;font-size:.92em} /* placeholder: replace text before launch */
.btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;font:700 15px/1 var(--walsheim);background:var(--orange);color:var(--white);border:0;border-radius:0;padding:18px 28px;cursor:pointer;text-decoration:none;transition:background .15s}
.btn:hover{background:var(--orange-hover)}

/* ---------- Header: unchanged from the live site ---------- */
.topbar{background:var(--teal);color:var(--white);font-size:14px}
.topbar .wrap{display:flex;align-items:center;gap:8px;min-height:32px}
.topbar svg{width:14px;height:14px}
.topbar a{text-decoration:none}
.mainhead{background:var(--navy)}
.mainhead .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:20px}
.mainhead img{height:46px;width:auto;display:block}
.mh-right{display:flex;align-items:center;gap:32px}
.hours{display:flex;align-items:center;gap:10px;color:var(--muted-on-navy)}
.hours .ic{width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.08);display:grid;place-items:center}
.hours svg{width:16px;height:16px}
.mainhead .btn{padding:15px 26px}
@media (max-width:900px){.hours{display:none}}
@media (max-width:560px){.mainhead .btn{display:none}.mainhead img{height:38px}}
.navwrap{background:var(--navy);position:relative;z-index:5}
.navbox{background:var(--white);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 20px;margin-bottom:-52px;box-shadow:0 10px 30px -18px rgba(8,61,89,.4)}
.menu{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap}
.menu li{display:flex;align-items:center}
.menu li+li::before{content:"";width:1px;height:12px;background:var(--line);margin-inline:6px}
.menu a{display:block;padding:24px 22px;color:var(--teal);font:600 13px/1 var(--walsheim);text-decoration:none}
.menu a:hover{color:var(--navy)}
.navbox .search,.navbox .burger{background:none;border:0;color:var(--navy);cursor:pointer;padding:8px}
.navbox svg{width:20px;height:20px;display:block}
.burger{display:none}
@media (max-width:1024px){
  .navbox{padding:10px 16px}
  .burger{display:block}
  .menu{display:none;width:100%;flex-direction:column}
  .navbox.open{flex-wrap:wrap}
  .navbox.open .menu{display:flex;order:3}
  .menu li+li::before{display:none}
  .menu a{padding:12px 4px;border-top:1px solid var(--line)}
}

/* ---------- Hero (page content starts here) ---------- */
.hero{background:linear-gradient(180deg,rgba(5,49,72,.96),rgba(5,49,72,.92)),var(--navy-deep);color:var(--white);padding-block:110px 80px}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(32px,5vw,60px);align-items:start}
.hero-grid>*{min-width:0}
@media (max-width:960px){.hero-grid{grid-template-columns:1fr}}
.crumb{font-size:15px;color:var(--white)}
.crumb span{color:var(--teal);filter:brightness(1.35)}
.hero h1{color:var(--white);font-family:var(--walsheim);font-weight:700;font-size:clamp(32px,4.4vw,52px);line-height:1.12;margin-block:18px 20px}
.hero h1 b{color:var(--orange);font-weight:700}
.lede{font-size:18px;color:#D3DEE5;max-width:600px}
.ticks{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:12px;color:var(--white)}
.ticks li{display:grid;grid-template-columns:24px 1fr;gap:10px}
.ticks svg{width:20px;height:20px;margin-top:4px;color:var(--orange)}
.hero-trust{display:flex;flex-wrap:wrap;gap:10px 28px;margin-top:30px;padding-top:24px;border-top:1px solid rgba(255,255,255,.15);font-size:15px;color:var(--muted-on-navy)}
.hero-trust strong{color:var(--white)}

/* Form card */
.card{background:var(--white);color:var(--text);padding:clamp(24px,3vw,34px);border-top:5px solid var(--orange);scroll-margin-top:24px}
.guide{display:grid;grid-template-columns:70px 1fr;gap:16px;align-items:center;padding-bottom:18px;margin-bottom:20px;border-bottom:1px solid var(--line)}
.cover{aspect-ratio:3/4;width:70px;max-width:100%;background:var(--navy);color:var(--white);display:flex;flex-direction:column;justify-content:space-between;padding:8px 6px;font:700 9px/1.2 var(--walsheim);border-left:4px solid var(--teal)}
.cover i{font-style:normal;color:var(--orange);font-size:8px;letter-spacing:.06em}
.cover span{font-weight:400;color:var(--muted-on-navy);font-size:7px}
.guide h2{font-size:24px}
.guide p{font-size:14px;margin-top:2px}
form{display:grid;gap:14px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:480px){.row2{grid-template-columns:1fr}}
.field{display:grid;gap:6px}
label{font:600 14px/1.3 var(--walsheim);color:var(--navy)}
input[type=text],input[type=email],input[type=tel],select{width:100%;font:inherit;font-size:16px;color:var(--navy);background:var(--pale);border:1px solid var(--line);border-radius:0;padding:12px 14px}
input:focus,select:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px rgba(19,119,151,.18)}
.check{display:grid;grid-template-columns:20px 1fr;gap:10px;align-items:start;font-weight:600;color:var(--navy);background:var(--pale);border-left:3px solid var(--teal);padding:12px 14px}
.check input{width:18px;height:18px;margin-top:2px;accent-color:var(--teal)}
.check small{display:block;color:var(--text);font-weight:400;font-size:13px}
.btn-block{width:100%}
.fine{font-size:12.5px;line-height:1.55}
.fine a{color:var(--teal)}
.err{color:#B3261E;font-size:14px}
.done{display:grid;gap:14px}
.done .tick{width:48px;height:48px;border-radius:50%;background:var(--pale);color:var(--teal);display:grid;place-items:center}

/* Trust strip */
.strip{background:var(--teal);color:var(--white)}
.strip ul{list-style:none;margin:0;padding-block:30px;padding-inline:0;display:grid;grid-template-columns:repeat(5,1fr);gap:20px}
@media (max-width:900px){.strip ul{grid-template-columns:repeat(2,1fr)}}
.strip li{display:grid;gap:2px}
.strip b{font:700 30px/1.1 var(--walsheim);font-variant-numeric:tabular-nums}
.strip span{font-size:14px;color:#D5EAF1}

/* Timeline */
.timeline{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);border-top:3px solid var(--navy)}
@media (max-width:900px){.timeline{grid-template-columns:1fr 1fr}}
@media (max-width:540px){.timeline{grid-template-columns:1fr}}
.timeline li{position:relative;padding:24px 22px 26px 0;display:grid;gap:8px;align-content:start}
.timeline li::before{content:"";position:absolute;top:-9px;left:0;width:14px;height:14px;border-radius:50%;background:var(--white);border:3px solid var(--navy)}
.timeline li.next::before{background:var(--orange);border-color:var(--orange)}
.date{font:700 13px/1 var(--roboto);letter-spacing:.08em;text-transform:uppercase;color:var(--teal);font-variant-numeric:tabular-nums}
.timeline li.next .date{color:#C76A07}
.timeline p{font-size:15px}

/* Topics */
.topics{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media (max-width:900px){.topics{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.topics{grid-template-columns:1fr}}
.topic{background:var(--white);padding:30px;display:grid;gap:10px;align-content:start;border-bottom:3px solid var(--teal);min-width:0}
.topic .ic{width:48px;height:48px;background:var(--pale);color:var(--teal);display:grid;place-items:center}
.topic .ic svg{width:24px;height:24px}
.topic p{font-size:15px}
.topic .q{font-size:14px;color:var(--navy);font-weight:600;font-style:italic;border-top:1px solid var(--line);padding-top:10px;margin-top:4px}

/* Steps */
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:30px;counter-reset:s}
@media (max-width:800px){.steps{grid-template-columns:1fr}}
.steps li{counter-increment:s;display:grid;grid-template-columns:56px 1fr;gap:16px;align-items:start}
.steps li::before{content:counter(s);width:56px;height:56px;background:var(--navy);color:var(--white);display:grid;place-items:center;font:700 22px/1 var(--walsheim)}
.steps div{display:grid;gap:6px}

/* Adviser */
.adviser{max-width:860px}
.adviser blockquote{margin:14px 0 0;font:500 clamp(19px,2.2vw,23px)/1.5 var(--walsheim);color:var(--navy);border-left:4px solid var(--orange);padding-left:20px}
.who{margin-top:16px}
.who strong{color:var(--navy)}
.facts{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.facts span{font-size:13px;font-weight:600;color:var(--teal);background:var(--white);border:1px solid var(--line);padding:6px 12px}

/* Calculators */
.calc-sec{background:var(--navy-deep)}
.calc-sec .head h2{color:var(--white)}
.calc-sec .head p{color:#C9D6DE}
.calc-sec .sub{color:var(--orange)}
.tabs{display:flex;flex-wrap:wrap;gap:4px}
.tabs button{font:700 14px/1.2 var(--walsheim);background:rgba(255,255,255,.08);color:#C9D6DE;border:0;border-radius:0;padding:15px 20px;cursor:pointer;display:flex;align-items:center;gap:8px}
.tabs button svg{width:18px;height:18px}
.tabs button[aria-selected="true"]{background:var(--white);color:var(--navy)}
.tabs button:hover:not([aria-selected="true"]){background:rgba(255,255,255,.14);color:var(--white)}
.calc{display:grid;grid-template-columns:1fr 1fr;background:var(--white)}
@media (max-width:900px){.calc{grid-template-columns:1fr}}
.calc>*{min-width:0}
.calc-in{padding:clamp(22px,3vw,36px);display:grid;gap:20px;align-content:start}
.calc-in h3{font-size:20px}
.calc-in>p{font-size:15px;margin-top:-12px}
.rng{display:grid;gap:8px}
.rng .top{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.rng output,.rng .val{font:700 18px/1 var(--walsheim);color:var(--teal);font-variant-numeric:tabular-nums;white-space:nowrap}
.rng small{font-size:13px;line-height:1.45}
input[type=range]{width:100%;accent-color:var(--teal);height:24px;margin:0}
.money{display:flex;align-items:stretch;border:1px solid var(--line);background:var(--pale)}
.money span{display:grid;place-items:center;padding:0 12px;font-weight:700;color:var(--navy);border-right:1px solid var(--line)}
.money input{border:0!important;background:transparent!important;box-shadow:none!important;font-variant-numeric:tabular-nums}
.money:focus-within{border-color:var(--teal);box-shadow:0 0 0 3px rgba(19,119,151,.18)}
.seg{display:flex;flex-wrap:wrap;gap:6px}
.seg label{font-weight:600;font-size:14px;color:var(--navy);border:1px solid var(--line);padding:9px 14px;cursor:pointer;background:var(--white)}
.seg input{position:absolute;opacity:0;pointer-events:none}
.seg input:checked+span{color:var(--white)}
.seg label:has(input:checked){background:var(--teal);border-color:var(--teal);color:var(--white)}
.seg label:has(input:focus-visible){outline:3px solid var(--orange);outline-offset:2px}
.tog{display:grid;grid-template-columns:20px 1fr;gap:10px;align-items:start;font-size:15px;color:var(--navy);font-weight:600}
.tog input{width:18px;height:18px;margin-top:3px;accent-color:var(--teal)}
.tog small{display:block;font-weight:400;color:var(--text);font-size:13px}
.calc-out{background:var(--pale);padding:clamp(22px,3vw,36px);display:grid;gap:18px;align-content:start;border-left:1px solid var(--line)}
@media (max-width:900px){.calc-out{border-left:0;border-top:1px solid var(--line)}}
.big{display:grid;gap:2px}
.big .lbl{font:700 12px/1.3 var(--roboto);letter-spacing:.08em;text-transform:uppercase;color:var(--teal)}
.big .num{font:700 clamp(34px,4vw,44px)/1.1 var(--walsheim);color:var(--navy);font-variant-numeric:tabular-nums}
.big .num.warn{color:#B3261E}
.big .alt{font-size:15px}
.kv{display:grid;gap:0;border-top:1px solid var(--line)}
.kv div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--line);font-size:15px}
.kv b{color:var(--navy);font-variant-numeric:tabular-nums;white-space:nowrap}
.bars{display:grid;gap:10px}
.bar{display:grid;gap:4px;font-size:13px}
.bar .track{height:14px;background:var(--white);border:1px solid var(--line)}
.bar .fill{height:100%;background:var(--teal);width:0;transition:width .35s}
.bar.hi .fill{background:var(--orange)}
@media (prefers-reduced-motion: reduce){.bar .fill{transition:none}}
.calc-out .btn{justify-self:start}
.assume{font-size:12.5px;line-height:1.55;color:var(--text)}
.assume summary{cursor:pointer;color:var(--teal);font-weight:600}
.fx{display:flex;align-items:center;gap:8px;font-size:14px;color:#C9D6DE;margin-top:14px}
.fx input{width:84px;font:inherit;font-size:14px;padding:6px 8px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.08);color:var(--white);border-radius:0;font-variant-numeric:tabular-nums}

/* FAQ */
.faq{display:grid;gap:12px;max-width:900px}
.faq details{background:var(--white);border:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;padding:18px 56px 18px 22px;position:relative;font:700 17px/1.4 var(--walsheim);color:var(--navy)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:0;top:0;bottom:0;width:52px;display:grid;place-items:center;background:var(--teal);color:var(--white);font-size:22px;font-weight:400}
.faq details[open] summary::after{content:"–";background:var(--navy)}
.faq .a{padding:0 22px 20px;display:grid;gap:10px}
.faq .a strong{color:var(--navy)}

/* CTA band (same teal band style as the live page) */
.band{background:var(--teal);color:var(--white)}
.band .wrap{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;padding-block:48px}
@media (max-width:760px){.band .wrap{grid-template-columns:1fr}}
.band h2{color:var(--white)}
.band p{color:#D5EAF1;margin-top:8px}

.risk{padding-block:28px;font-size:13px;line-height:1.6;border-top:1px solid var(--line)}
.risk .wrap{display:grid;gap:8px}

/* ---------- Footer: unchanged from the live site ---------- */
.site-footer{background:var(--navy);color:var(--footer-link);font-size:15px}
.fgrid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px;padding-block:70px 50px}
@media (max-width:800px){.fgrid{grid-template-columns:1fr}}
.fgrid>*{min-width:0}
.fgrid h4{margin:0 0 30px;color:var(--white);font:700 14px/1.3 var(--walsheim);position:relative}
.fgrid h4::after{content:"";position:absolute;left:0;bottom:-14px;width:16px;height:2px;background:var(--teal)}
.fgrid ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.fgrid a{text-decoration:none;color:var(--footer-link)}
.fgrid a:hover{color:var(--white)}
.fgrid p{color:#DDE7EC;line-height:1.6}
.social{display:flex;gap:8px;margin-block:22px}
.social a{width:34px;height:34px;display:grid;place-items:center;background:rgba(255,255,255,.08);color:var(--white)}
.social svg{width:14px;height:14px}
.mail{display:flex;align-items:center;gap:12px}
.mail svg{width:16px;height:16px;color:var(--white)}
.copy{border-top:1px solid rgba(255,255,255,.08);padding-block:22px 100px;text-align:center;font-size:14px}
@media (min-width:961px){.copy{padding-bottom:22px}}

/* Mobile sticky CTA */
.sticky{position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--navy);padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));display:none;gap:10px;transition:transform .2s}
.sticky .btn{flex:1;padding:14px}
.sticky .wa{flex:none;background:var(--teal)}
@media (max-width:960px){.sticky{display:flex}}
.sticky.away{transform:translateY(110%)}
