/* Stocklife Unified Public Experience v7 - presentation only; calculator maths remains unchanged */
:root{
  --sl-navy-1000:#010611;
  --sl-navy-950:#020b18;
  --sl-navy-900:#04152b;
  --sl-navy-850:#071c37;
  --sl-blue:#087cff;
  --sl-blue-strong:#0068e6;
  --sl-blue-soft:#72bdff;
  --sl-paper:#f7f9fd;
  --sl-white:#fff;
  --sl-ink:#0b192d;
  --sl-muted:#5f6d82;
  --sl-line:#dce5f0;
  --sl-green:#10a84b;
  --sl-shadow:0 18px 50px rgba(2,11,24,.10);
}
html{scroll-behavior:smooth}


/* One Stocklife shell across legacy and new pages */
.utility-bar{background:var(--sl-navy-1000)!important;color:#bcd2ef!important;border-bottom:1px solid rgba(114,189,255,.16)!important}
.utility-bar .utility-inner{min-height:34px!important}
.utility-bar span:first-child{color:var(--sl-blue-soft)!important;font-weight:800!important;letter-spacing:.08em!important;text-transform:uppercase!important}
.site-header .brand small,.sl-tagline{color:#c9d8ed!important}
.site-header .main-nav a,.site-header .menu-btn,.sl-login-nav a{color:#eaf2ff!important}
.site-header .main-nav a:hover,.site-header .main-nav a:focus-visible,.sl-login-nav a:hover,.sl-login-nav a:focus-visible{color:var(--sl-blue-soft)!important}
.site-header .main-nav a.login-link,.site-header .main-nav a.team-login-link{border-color:rgba(114,189,255,.42)!important;background:rgba(8,124,255,.10)!important}
.site-header .main-nav a.login-link:hover,.site-header .main-nav a.team-login-link:hover{background:var(--sl-blue)!important;color:#fff!important;border-color:var(--sl-blue)!important}
.brand-logo{max-height:48px!important}

/* One hero voice */
.page-hero,.decision-hero,.tax-hero,.premium-tools-hero,.terms-hero{
  background:linear-gradient(135deg,var(--sl-navy-1000),var(--sl-navy-900) 65%,#061c38)!important;
  color:#fff!important;
  border:0!important;
}
.page-hero h1,.decision-hero h1,.tax-hero h1,.premium-tools-hero h1,.terms-hero h1{color:#fff!important;font-size:clamp(2.05rem,4vw,3.7rem)!important;line-height:1.02!important;letter-spacing:-.035em!important}
.page-hero p,.decision-hero p,.tax-hero p,.premium-tools-hero p,.terms-hero p{color:#cbd8ea!important}
.eyebrow,.card-kicker{color:var(--sl-blue-soft)!important}
.page-links a{color:var(--sl-blue-soft)!important}
.page-links a:hover,.page-links a:focus-visible{color:#fff!important;text-decoration-color:var(--sl-blue)!important}
.hero-number{color:rgba(114,189,255,.28)!important}
.market-strip{background:#061831!important;color:#d8e6f8!important;border-color:rgba(114,189,255,.18)!important}

/* Consistent content surfaces */
.panel,.calc-panel,.results-panel,.input-card,.output-card,.comparison-shell,.report,.term-search-box,.term-detail,.newspaper-note,.tax-step,.chart-card,.efficiency-panel,.question-card,.supporting-tool-grid>a{
  border-color:var(--sl-line)!important;
  box-shadow:var(--sl-shadow)!important;
}
input,select,textarea{border-color:#cad7e7!important;border-radius:10px!important}
input:focus,select:focus,textarea:focus{outline:3px solid rgba(8,124,255,.17)!important;border-color:var(--sl-blue)!important;box-shadow:0 0 0 1px var(--sl-blue)!important}

/* Exact homepage action blue everywhere */
a,button{transition:background-color .18s ease,color .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease}
.btn-primary,.sl-primary-link,#clear-terms,.term-search-row button,.progress-step.active .progress-dot,.progress-fill{background:var(--sl-blue)!important;border-color:var(--sl-blue)!important;color:#fff!important}
.btn-primary:hover,.btn-primary:focus-visible,.btn-dark:hover,.btn-dark:focus-visible,.sl-primary-link:hover,.sl-primary-link:focus-visible,#clear-terms:hover,#clear-terms:focus-visible{
  background:var(--sl-blue)!important;border-color:var(--sl-blue)!important;color:#fff!important;transform:translateY(-1px);box-shadow:0 12px 26px rgba(8,124,255,.26)!important
}
.btn-dark{background:var(--sl-navy-900)!important;border-color:var(--sl-navy-900)!important}
.btn-light,.subtle-btn{border-color:#b9cce4!important;color:var(--sl-navy-900)!important;background:#fff!important}
.btn-light:hover,.subtle-btn:hover,.btn-light:focus-visible,.subtle-btn:focus-visible{background:var(--sl-blue)!important;color:#fff!important;border-color:var(--sl-blue)!important}
.main-nav a:hover,.terms-browser a:hover,.calculator-boundary a:hover,.question-card-grid a:hover,.supporting-tool-grid a:hover{color:var(--sl-blue)!important}

/* Narrative result treatment */
.sl-efficiency-story{margin:28px 0 4px;padding:24px;border:1px solid #cfe0f5;border-radius:18px;background:linear-gradient(180deg,#fff,#f4f8ff);box-shadow:0 16px 40px rgba(2,11,24,.08);color:var(--sl-ink)}
.sl-efficiency-story__eyebrow{margin:0 0 7px;color:var(--sl-blue-strong);font-size:.74rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.sl-efficiency-story h3{margin:0 0 9px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.45rem,2.4vw,2rem);line-height:1.1;color:var(--sl-navy-900)}
.sl-efficiency-story__lead{margin:0 0 19px;color:#4c5e75;line-height:1.65;max-width:72ch}
.sl-efficiency-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.sl-efficiency-card{padding:15px 16px;border:1px solid #dbe6f3;border-radius:13px;background:#fff}
.sl-efficiency-card strong{display:block;margin-bottom:5px;color:var(--sl-navy-900);font-size:.98rem}
.sl-efficiency-card p{margin:0;color:#5a6b80;font-size:.9rem;line-height:1.48}
.sl-efficiency-status{display:inline-flex;margin-bottom:8px;padding:5px 8px;border-radius:999px;background:#edf5ff;color:var(--sl-blue-strong);font-size:.72rem;font-weight:850;letter-spacing:.03em}
.sl-efficiency-status.scope{background:#e9f3ff;color:var(--sl-blue-strong)}
.sl-efficiency-status.context{background:#f2f4f7;color:#596777}
.sl-efficiency-status.primary{background:var(--sl-blue);color:#fff}
.sl-efficiency-next{margin-top:17px;padding-top:16px;border-top:1px solid #dce6f2;color:#4d6078;line-height:1.55}
.sl-efficiency-next strong{color:var(--sl-navy-900)}

/* Personal WhatsApp continuation */
.sl-wa-trigger{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;background:var(--sl-blue)!important;color:#fff!important;border:0!important;border-radius:10px!important;padding:12px 17px!important;font-weight:850!important;text-decoration:none!important;cursor:pointer!important;box-shadow:0 10px 24px rgba(8,124,255,.22)!important}
.sl-wa-trigger:hover,.sl-wa-trigger:focus-visible{transform:translateY(-2px)!important;background:var(--sl-blue)!important;box-shadow:0 15px 30px rgba(8,124,255,.28)!important}
.sl-wa-backdrop{position:fixed;inset:0;z-index:99998;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(1,6,17,.76);backdrop-filter:blur(5px)}
.sl-wa-backdrop.is-open{display:flex}
.sl-wa-modal{width:min(520px,100%);padding:26px;border-radius:20px;background:#fff;color:var(--sl-ink);box-shadow:0 30px 90px rgba(0,0,0,.34)}
.sl-wa-modal__top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.sl-wa-modal__top h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:1.8rem;line-height:1.1;color:var(--sl-navy-900)}
.sl-wa-close{border:0;background:#edf3f9;color:#334963;width:36px;height:36px;border-radius:50%;font-size:1.2rem;cursor:pointer}
.sl-wa-modal>p{color:#5c6d82;line-height:1.55}
.sl-wa-field{display:block;margin:13px 0;color:#2e435e;font-size:.86rem;font-weight:800}
.sl-wa-field input{display:block;width:100%;margin-top:6px;padding:12px 13px;font:inherit;background:#fff}
.sl-wa-note{font-size:.78rem!important;color:#78879a!important}
.sl-wa-actions{display:flex;gap:9px;justify-content:flex-end;margin-top:18px}
.sl-wa-cancel,.sl-wa-continue{padding:12px 16px;border-radius:10px;font-weight:850;cursor:pointer}
.sl-wa-cancel{background:#fff;border:1px solid #cbd8e6;color:#40546b}
.sl-wa-continue{background:var(--sl-blue);border:1px solid var(--sl-blue);color:#fff}
.sl-wa-context{margin:14px 0;padding:11px 13px;border-radius:10px;background:#f3f8ff;color:#31506f;font-size:.86rem;line-height:1.45}

/* Footer consistency */
.site-footer,.sl-footer{background:var(--sl-navy-1000)!important;color:#c8d7ea!important;border-top:1px solid rgba(114,189,255,.18)!important}
.site-footer a,.sl-footer a{color:#e5efff!important}
.site-footer a:hover,.sl-footer a:hover{color:var(--sl-blue-soft)!important}
.site-footer .legal,.sl-risk{color:#93a9c3!important;border-color:rgba(114,189,255,.14)!important}
.site-footer .footer-reg{color:#bcd0e8!important}

/* Reduce oversized legacy headings and visual noise */
.section-heading h2,.calc-intro h2,.card-title{line-height:1.08!important}
@media (max-width:760px){
  .sl-efficiency-grid{grid-template-columns:1fr}
  .sl-wa-actions{flex-direction:column-reverse}
  .sl-wa-cancel,.sl-wa-continue{width:100%}
  .page-hero h1,.decision-hero h1,.tax-hero h1,.premium-tools-hero h1,.terms-hero h1{font-size:clamp(1.9rem,9vw,2.7rem)!important}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}


/* === v7.1 CURRENT STRUCTURE CORRECTION === */
/* Homepage: restore the original action-led navy canvas and original header geometry. */
body.sl-home-body{
  color:#fff!important;
  background:
    radial-gradient(circle at 82% 22%,rgba(8,124,255,.11),transparent 28rem),
    radial-gradient(circle at 10% 78%,rgba(8,124,255,.06),transparent 30rem),
    linear-gradient(135deg,#010611,#04152b 58%,#020c1c)!important;
}
body.sl-home-body .sl-header{
  width:min(1420px,calc(100% - 64px))!important;
  padding:0!important;
  margin:0 auto!important;
  background:transparent!important;
  box-shadow:none!important;
  border-bottom:1px solid rgba(94,158,231,.24)!important;
}

/* Calculator/glossary header: same structure as the current homepage, with a full-width navy shell. */
.sl-public-header{
  width:100%!important;
  min-height:94px!important;
  margin:0!important;
  padding:0 max(24px,calc((100vw - 1420px)/2))!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:28px!important;
  background:linear-gradient(135deg,#010611,#04152b)!important;
  border-bottom:1px solid rgba(94,158,231,.24)!important;
  box-shadow:0 8px 30px rgba(0,0,0,.16)!important;
}
.sl-public-header .sl-brand{display:inline-flex!important;flex-direction:column!important;gap:5px!important;text-decoration:none!important}
.sl-public-header .sl-brand img{width:clamp(195px,18vw,260px)!important;height:auto!important;max-height:none!important}
.sl-public-header .sl-tagline{font-size:.58rem!important;letter-spacing:.19em!important;text-transform:uppercase!important;color:rgba(255,255,255,.68)!important}
.sl-public-header .sl-login-nav{display:flex!important;align-items:center!important;gap:18px!important;font-weight:760!important}
.sl-public-header .sl-login-nav a{display:inline-flex!important;align-items:center!important;gap:8px!important;text-decoration:none!important;color:rgba(255,255,255,.92)!important;background:transparent!important;border:0!important;padding:0!important}
.sl-public-header .sl-login-nav a:hover,.sl-public-header .sl-login-nav a:focus-visible{color:#087cff!important;outline:none!important}
.sl-public-header .sl-login-nav svg{width:21px!important;height:21px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.sl-public-header .sl-login-divider{width:1px!important;height:26px!important;background:rgba(255,255,255,.35)!important}

/* Exact homepage blue is the only hover/active interaction colour across public pages. */
:root{--sl-action-blue:#087cff}
.sl-internal-page .btn:hover,.sl-internal-page .btn:focus-visible,
.sl-internal-page .subtle-btn:hover,.sl-internal-page .subtle-btn:focus-visible,
.sl-internal-page .question-card:hover,.sl-internal-page .question-card:focus-visible,
.sl-internal-page .supporting-tool-grid a:hover,.sl-internal-page .supporting-tool-grid a:focus-visible,
.sl-internal-page .term-result:hover,.sl-internal-page .term-result:focus-visible,
.sl-internal-page .az-index button:hover,.sl-internal-page .az-index button:focus-visible,
.sl-internal-page .term-related button:hover,.sl-internal-page .term-related button:focus-visible,
.sl-internal-page .quick-prompts button:hover,.sl-internal-page .quick-prompts button:focus-visible,
.sl-internal-page .tool-card:hover,.sl-internal-page .tool-card:focus-within{
  background:#087cff!important;
  border-color:#087cff!important;
  color:#fff!important;
  box-shadow:0 16px 34px rgba(8,124,255,.25)!important;
  transform:translateY(-3px)!important;
  outline:none!important;
}
.sl-internal-page .question-card:hover *, .sl-internal-page .question-card:focus-visible *,
.sl-internal-page .supporting-tool-grid a:hover *, .sl-internal-page .supporting-tool-grid a:focus-visible *,
.sl-internal-page .term-result:hover *, .sl-internal-page .term-result:focus-visible *,
.sl-internal-page .tool-card:hover *, .sl-internal-page .tool-card:focus-within *{
  color:#fff!important;
}
.sl-internal-page .question-card:hover>span,.sl-internal-page .question-card:focus-visible>span{
  background:rgba(255,255,255,.18)!important;color:#fff!important
}
.sl-internal-page .page-links a,.sl-internal-page .text-link{
  transition:background-color .18s ease,color .18s ease,border-color .18s ease!important;
}
.sl-internal-page .page-links a:hover,.sl-internal-page .page-links a:focus-visible,
.sl-internal-page .text-link:hover,.sl-internal-page .text-link:focus-visible{
  background:#087cff!important;color:#fff!important;border-color:#087cff!important;text-decoration:none!important;
}
/* Primary controls are already blue; hover remains the SAME blue, not a second shade. */
.sl-internal-page .btn-primary,.sl-internal-page .btn-primary:hover,.sl-internal-page .btn-primary:focus-visible,
.sl-internal-page #clear-terms,.sl-internal-page #clear-terms:hover,.sl-internal-page #clear-terms:focus-visible,
.sl-wa-trigger,.sl-wa-trigger:hover,.sl-wa-trigger:focus-visible{
  background:#087cff!important;border-color:#087cff!important;color:#fff!important;
}

/* SAVINGZ choices use the same blue cover on hover while retaining selected-state behaviour. */
.sl-savingz-page .sl-choice-button:hover,.sl-savingz-page .sl-choice-button:focus-visible{
  background:#087cff!important;color:#fff!important;outline:none!important
}
.sl-savingz-page .sl-choice-button:hover .sl-choice-copy small,.sl-savingz-page .sl-choice-button:focus-visible .sl-choice-copy small,
.sl-savingz-page .sl-choice-button:hover .sl-choice-number,.sl-savingz-page .sl-choice-button:focus-visible .sl-choice-number,
.sl-savingz-page .sl-choice-button:hover .sl-choice-arrow,.sl-savingz-page .sl-choice-button:focus-visible .sl-choice-arrow{color:#fff!important}

@media(max-width:720px){
  body.sl-home-body .sl-header{width:min(100% - 30px,1420px)!important}
  .sl-public-header{min-height:81px!important;padding:0 15px!important;gap:14px!important}
  .sl-public-header .sl-brand img{width:155px!important}
  .sl-public-header .sl-tagline{font-size:.47rem!important}
  .sl-public-header .sl-login-nav{gap:9px!important;font-size:.76rem!important}
  .sl-public-header .sl-login-nav svg,.sl-public-header .sl-login-divider{display:none!important}
}


/* ============================================================
   Stocklife v7.2 — SAVINGZ-first calculator consistency
   Exact homepage action blue: #087CFF
   ============================================================ */
:root{--sl-action-blue:#087cff!important;--sl-blue:#087cff!important}

/* Primary result highlights use the SAME action blue as homepage hover. */
.sl-internal-page .result-lead,
.sl-internal-page .result-hero,
.sl-internal-page .headline-results .highlight,
.sl-internal-page .headline-result{
  background:#087cff!important;
  color:#fff!important;
  border-color:#087cff!important;
  box-shadow:0 12px 28px rgba(8,124,255,.18)!important;
}
.sl-internal-page .result-lead span,
.sl-internal-page .result-lead strong,
.sl-internal-page .result-hero span,
.sl-internal-page .result-hero strong,
.sl-internal-page .headline-results .highlight span,
.sl-internal-page .headline-results .highlight strong,
.sl-internal-page .headline-result span,
.sl-internal-page .headline-result strong{
  color:#fff!important;
}
.sl-internal-page .headline-result .status-orb{
  border-color:#fff!important;
  background:rgba(255,255,255,.12)!important;
  color:#fff!important;
}

/* Decision-table emphasis and insight rule use the same blue family. */
.sl-internal-page .insight-box,
.sl-internal-page .health-note,
.sl-internal-page .disclaimer-box{
  border-left-color:#087cff!important;
}
.sl-internal-page .decision-table th{background:#087cff!important;color:#fff!important}

/* Every interactive cover/hover uses exactly the homepage blue. */
.sl-internal-page .btn:hover,.sl-internal-page .btn:focus-visible,
.sl-internal-page .subtle-btn:hover,.sl-internal-page .subtle-btn:focus-visible,
.sl-internal-page .page-links a:hover,.sl-internal-page .page-links a:focus-visible,
.sl-internal-page .quick-prompts button:hover,.sl-internal-page .quick-prompts button:focus-visible,
.sl-internal-page .question-card:hover,.sl-internal-page .question-card:focus-visible,
.sl-internal-page .term-result:hover,.sl-internal-page .term-result:focus-visible,
.sl-internal-page .supporting-tool-grid a:hover,.sl-internal-page .supporting-tool-grid a:focus-visible{
  background:#087cff!important;
  border-color:#087cff!important;
  color:#fff!important;
}
.sl-internal-page .page-links a:hover *,
.sl-internal-page .question-card:hover *,
.sl-internal-page .term-result:hover *,
.sl-internal-page .supporting-tool-grid a:hover *{color:#fff!important}

/* No legacy market strip on calculator screens. */
.sl-internal-page .market-strip{display:none!important}

/* SAVINGZ is the only public gateway to planning tools. */
.sl-internal-page .page-links a[href="savingz.html"]{
  display:inline-flex;align-items:center;justify-content:center;
  border:1px solid rgba(114,189,255,.55);border-radius:999px;
  padding:8px 13px;text-decoration:none!important;
}
.sl-internal-page .page-links a[href="savingz.html"]:hover,
.sl-internal-page .page-links a[href="savingz.html"]:focus-visible{
  background:#087cff!important;color:#fff!important;border-color:#087cff!important;
}
