:root{
  --cream:#fff8f5;
  --white:#fff;
  --black:#080808;
  --ink:#0a0a0a;
  --cyan:#00e5cc;
  --violet:#9b59ff;
  --blue:#3fb8ff;
  --muted:#8b8989;
  --line:rgba(10,10,10,.16);
  --soft:rgba(255,248,245,.76);
  --font-d:"Barlow Condensed",Impact,sans-serif;
  --font-b:"DM Sans",Arial,sans-serif;
  --grad:linear-gradient(90deg,var(--cyan),var(--blue),var(--violet));
  --ease:cubic-bezier(.23,1,.32,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--font-b);-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
button{cursor:pointer}
.grad{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.site-nav{position:sticky;top:0;z-index:20;background:rgba(255,248,245,.96);border-bottom:2px solid var(--black)}
.nav-inner{width:min(100% - 48px,1260px);height:96px;margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}
.nav-links,.nav-actions{display:flex;align-items:center;gap:28px}
.nav-actions{justify-content:flex-end}
.nav-links a{font-family:var(--font-d);font-size:17px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:#494747}
.brand img{width:230px;height:auto;display:block}
.lang{display:flex;border:2px solid var(--black)}
.lang button{min-width:48px;height:38px;border:0;background:transparent;font-family:var(--font-d);font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.lang button.active{background:var(--black);color:var(--white)}
.nav-cta,.primary-btn,.secondary-btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;border:2px solid var(--black);padding:0 28px;background:var(--grad);font-family:var(--font-d);font-size:18px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--black);transition:transform .2s var(--ease),box-shadow .2s var(--ease),background .2s}
.nav-cta{min-height:46px;font-size:15px}
.nav-inner .nav-cta{justify-self:end}
.primary-btn:hover,.secondary-btn:hover,.nav-cta:hover{transform:translate(-3px,-3px);box-shadow:6px 6px 0 var(--black)}
.secondary-btn{background:transparent;color:inherit}
.hero .secondary-btn{border-color:rgba(255,255,255,.72);color:var(--white)}
.section .secondary-btn{background:var(--white);color:var(--black)}
button.primary-btn:disabled{opacity:.42;cursor:not-allowed;filter:grayscale(.8)}
button.primary-btn:disabled:hover{transform:none;box-shadow:none}
.hero{position:relative;isolation:isolate;display:flex;align-items:center;overflow:hidden;background:radial-gradient(circle at 9% 32%,rgba(0,229,204,.32),transparent 28%),radial-gradient(circle at 88% 56%,rgba(155,89,255,.45),transparent 31%),linear-gradient(90deg,#050706 0%,#090909 55%,#151020 100%);color:var(--white);border-bottom:2px solid var(--black)}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.03),transparent 38%,rgba(0,0,0,.16));z-index:-1}
.hero-grid{width:min(100% - 48px,1260px);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.78fr);align-items:center;gap:72px;padding:64px 0 58px}
.eyebrow{font-family:var(--font-d);font-size:15px;font-weight:800;letter-spacing:.24em;text-transform:uppercase;color:var(--cyan)}
.hero h1{margin:18px 0 22px;font-family:var(--font-d);font-size:clamp(58px,7.6vw,116px);font-weight:800;font-style:italic;letter-spacing:0;line-height:.86;text-transform:uppercase}
.hero h1 .accent{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-copy{max-width:720px}
.hero-lede{max-width:660px;color:rgba(255,255,255,.62);font-size:20px;line-height:1.65;margin:0 0 34px}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:28px}
.proof-strip{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid rgba(255,255,255,.18);max-width:760px}
.proof-strip span{min-height:60px;display:flex;align-items:center;gap:10px;padding:14px 18px;border-right:1px solid rgba(255,255,255,.16);font-family:var(--font-d);font-size:14px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.48)}
.proof-strip span:last-child{border-right:0}
.proof-strip i{display:block;width:8px;height:8px;background:var(--cyan)}
.hero-panel{border:2px solid rgba(255,255,255,.82);padding:38px;background:rgba(255,248,245,.04);backdrop-filter:blur(8px)}
.meter-row{display:grid;grid-template-columns:126px 1fr;align-items:center;gap:18px;margin:22px 0}
.meter-row span{font-family:var(--font-d);font-size:18px;font-weight:800;font-style:italic;text-transform:uppercase}
.meter-track{height:12px;background:rgba(255,255,255,.10);overflow:hidden}
.meter-fill{height:100%;width:var(--w);background:var(--grad)}
.meter-row:nth-child(1) .meter-fill{background:rgba(255,255,255,.18)}
.meter-row:nth-child(2) .meter-fill{background:#7be7dd}
.meter-row:nth-child(3) .meter-fill{background:linear-gradient(90deg,var(--cyan),var(--blue))}
.meter-arrow{color:var(--cyan);font-family:var(--font-d);font-size:22px}
.panel-line{height:1px;background:rgba(255,255,255,.18);margin:30px 0 20px}
.panel-note{font-family:var(--font-d);font-size:17px;font-style:italic;text-transform:uppercase;color:rgba(255,255,255,.42)}
.section{width:min(100% - 48px,1260px);margin:0 auto;padding:64px 0}
.section.dark{background:var(--black);color:var(--white)}
.section.dark{width:100%;padding-left:max(24px,calc((100vw - 1260px) / 2));padding-right:max(24px,calc((100vw - 1260px) / 2))}
.section-head{display:block;margin-bottom:32px}
.section h2,.result-title,.cta-title{font-family:var(--font-d);font-size:clamp(44px,5.6vw,82px);font-weight:800;font-style:italic;line-height:.9;text-transform:uppercase;margin:12px 0 0}
.section-head p:not(.eyebrow),.section-copy{max-width:660px;color:#5d5b5b;font-size:17px;line-height:1.7}
.dark .section-copy{color:rgba(255,255,255,.62)}
.tool-shell{border:2px solid var(--black);background:var(--white);box-shadow:12px 12px 0 var(--black)}
.tool-header{background:var(--black);color:var(--white);padding:24px 30px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.tool-header h3{font-family:var(--font-d);font-size:30px;font-weight:800;font-style:italic;text-transform:uppercase;margin:0}
.tool-header p{margin:6px 0 0;color:rgba(255,255,255,.55);line-height:1.5}
.progress-meta{font-family:var(--font-d);font-size:18px;font-weight:800;color:var(--cyan)}
.progress-track{height:6px;background:#e7e0dc}
.progress-fill{height:100%;width:0;background:var(--grad);transition:width .25s var(--ease)}
.question-list{display:grid;gap:0}
.question-card{display:grid;grid-template-columns:58px 1fr auto;gap:20px;padding:24px 30px;border-top:1px solid var(--line);align-items:center;background:var(--white)}
.question-card:first-child{border-top:0}
.q-number{font-family:var(--font-d);font-size:28px;font-weight:800;font-style:italic;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.q-text{font-size:17px;line-height:1.5;color:#171717}
.q-actions{display:flex;gap:8px}
.q-btn{border:2px solid var(--black);background:transparent;min-width:72px;height:42px;font-family:var(--font-d);font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.q-btn.active{background:var(--black);color:var(--white)}
.question-card.yes{background:linear-gradient(90deg,rgba(0,229,204,.10),#fff)}
.question-card.no{background:#f5efeb}
.tool-footer{padding:28px 30px;border-top:2px solid var(--black);display:flex;align-items:center;justify-content:space-between;gap:20px}
.mini-note{font-size:14px;line-height:1.5;color:#777}
.calculator-grid{display:grid;grid-template-columns:1fr .82fr;border:2px solid var(--black);box-shadow:12px 12px 0 var(--black)}
.calc-form{padding:30px;background:var(--white)}
.calc-results{padding:30px;background:var(--black);color:var(--white)}
.field-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0;border:1px solid var(--line)}
.field{padding:24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.field:nth-child(2n){border-right:0}
.field:nth-last-child(-n+2){border-bottom:0}
.field span{display:block;margin-bottom:12px;font-family:var(--font-d);font-size:15px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.field input{width:100%;height:58px;border:2px solid var(--black);background:var(--cream);padding:0 16px;font-size:18px;outline:none}
.field small{display:block;margin-top:8px;color:#777;line-height:1.45}
.result-grid{display:grid;gap:16px}
.result-box{border:1px solid rgba(255,255,255,.14);padding:20px}
.result-box span{display:block;font-family:var(--font-d);font-size:15px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.46);margin-bottom:8px}
.result-box strong{display:block;font-family:var(--font-d);font-size:clamp(36px,5vw,62px);font-weight:800;font-style:italic;line-height:.9;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.result-box.total{border-color:var(--cyan);background:rgba(0,229,204,.08)}
.result-panel{display:none}
.result-panel.visible{display:block}
.result-card{border:2px solid var(--black);background:var(--black);color:var(--white);padding:46px;margin-bottom:28px;position:relative;overflow:hidden}
.result-card::before{content:"";position:absolute;inset:auto -20% -45% 22%;height:230px;background:radial-gradient(circle,rgba(155,89,255,.42),transparent 68%);pointer-events:none}
.score{font-family:var(--font-d);font-size:clamp(68px,9vw,118px);font-weight:800;font-style:italic;line-height:.85;margin:18px 0}
.result-card h3{font-family:var(--font-d);font-size:clamp(42px,5vw,72px);font-weight:800;font-style:italic;text-transform:uppercase;line-height:.95;margin:0 0 14px}
.result-desc{max-width:760px;color:rgba(255,255,255,.66);font-size:18px;line-height:1.7}
.insight-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:28px 0}
.insight-card{border:2px solid var(--black);background:var(--white);padding:22px}
.insight-card h4{font-family:var(--font-d);font-size:28px;font-weight:800;font-style:italic;text-transform:uppercase;margin:0 0 8px}
.insight-card ul{margin:0;padding-left:20px;color:#5d5b5b;line-height:1.6}
.path-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.path-card{border:2px solid var(--black);background:var(--white);padding:24px;min-height:190px}
.path-card span{display:block;font-family:var(--font-d);font-size:18px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--cyan);margin-bottom:18px}
.path-card strong{display:block;font-family:var(--font-d);font-size:30px;font-weight:800;font-style:italic;text-transform:uppercase;line-height:1}
.path-card.active{background:var(--black);color:var(--white)}
.cross-links{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:36px}
.cross-links a{border:1px solid rgba(255,255,255,.22);padding:12px 20px;color:rgba(255,255,255,.62);font-family:var(--font-d);font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.cross-links a.active,.cross-links a:hover{border-color:var(--cyan);color:var(--cyan)}
.site-footer{display:flex;justify-content:space-between;gap:20px;align-items:center;background:#050505;color:rgba(255,255,255,.5);padding:36px max(24px,calc((100vw - 1260px) / 2));border-top:1px solid rgba(255,255,255,.1);font-size:13px}
@media(max-width:900px){
  .nav-inner{width:min(100% - 28px,720px);height:82px;grid-template-columns:auto 1fr auto}
  .nav-links{display:none}
  .brand img{width:170px}
  .nav-cta{display:none}
  .hero-grid,.calculator-grid,.insight-grid,.path-grid{grid-template-columns:1fr}
  .hero-grid,.section{width:min(100% - 28px,720px)}
  .hero-grid{gap:32px;padding:44px 0}
  .hero h1{font-size:clamp(54px,16vw,90px)}
  .proof-strip{grid-template-columns:1fr}
  .proof-strip span{border-right:0;border-bottom:1px solid rgba(255,255,255,.16)}
  .proof-strip span:last-child{border-bottom:0}
  .section-head{display:block}
  .question-card{grid-template-columns:42px 1fr;align-items:start;padding:20px}
  .q-actions{grid-column:2;justify-content:flex-start}
  .tool-footer{display:block}
  .tool-footer .primary-btn,.tool-footer .secondary-btn{margin-top:18px;width:100%}
  .field-grid{grid-template-columns:1fr}
  .field,.field:nth-child(2n),.field:nth-last-child(-n+2){border-right:0;border-bottom:1px solid var(--line)}
  .field:last-child{border-bottom:0}
  .site-footer{display:block;text-align:center}
  .site-footer span{display:block;margin:8px 0}
}

/* Dark first-step funnel theme */
body.step-one-dark{background:#050505;color:var(--white)}
body.step-one-dark #tfs-nav,
body.step-one-dark #nav{background:rgba(255,248,245,.96);border-bottom:1px solid rgba(10,10,10,.15)}
body.step-one-dark #tfs-nav.tfs-scrolled,
body.step-one-dark #nav.scrolled{background:rgba(255,248,245,.96)}
body.step-one-dark .hero{background:radial-gradient(circle at 8% 25%,rgba(0,229,204,.36),transparent 30%),radial-gradient(circle at 85% 50%,rgba(155,89,255,.54),transparent 34%),radial-gradient(circle at 58% 92%,rgba(63,184,255,.20),transparent 30%),linear-gradient(115deg,#050706 0%,#070707 52%,#150d25 100%)}
body.step-one-dark .hero::after{background:linear-gradient(180deg,rgba(255,255,255,.05),transparent 48%,rgba(0,229,204,.06))}
body.step-one-dark .section{background:transparent;color:var(--white)}
body.step-one-dark .section-head p:not(.eyebrow),body.step-one-dark .section-copy{color:rgba(255,255,255,.64)}
body.step-one-dark .tool-shell,body.step-one-dark .calculator-grid{border-color:rgba(255,255,255,.24);background:#09090d;box-shadow:0 0 0 1px rgba(0,229,204,.22),18px 18px 0 rgba(155,89,255,.22)}
body.step-one-dark .tool-header{background:linear-gradient(105deg,#050505,#101019 54%,rgba(155,89,255,.22));border-bottom:1px solid rgba(255,255,255,.16)}
body.step-one-dark .question-card{background:#0b0b10;color:var(--white);border-top-color:rgba(255,255,255,.13)}
body.step-one-dark .q-text{color:rgba(255,255,255,.86)}
body.step-one-dark .q-btn{border-color:rgba(255,255,255,.52);color:var(--white)}
body.step-one-dark .q-btn.active{background:var(--grad);color:var(--black);border-color:transparent}
body.step-one-dark .question-card.yes{background:linear-gradient(90deg,rgba(0,229,204,.18),rgba(255,255,255,.03))}
body.step-one-dark .question-card.no{background:linear-gradient(90deg,rgba(155,89,255,.12),rgba(255,255,255,.02))}
body.step-one-dark .tool-footer{border-top-color:rgba(255,255,255,.18)}
body.step-one-dark .calc-form{background:#0b0b10;color:var(--white)}
body.step-one-dark .field-grid{border-color:rgba(255,255,255,.15)}
body.step-one-dark .field{border-color:rgba(255,255,255,.15)}
body.step-one-dark .field input{background:#fff8f5;color:var(--black)}
body.step-one-dark .field small{color:rgba(255,255,255,.48)}
body.step-one-dark .calc-results{background:radial-gradient(circle at 88% 18%,rgba(155,89,255,.28),transparent 36%),linear-gradient(180deg,#050505,#0c0c12);border-left:1px solid rgba(255,255,255,.14)}
body.step-one-dark .result-card{border-color:rgba(255,255,255,.22);box-shadow:0 0 0 1px rgba(0,229,204,.26),0 24px 90px rgba(155,89,255,.18)}
body.step-one-dark .insight-card{background:#0b0b10;color:var(--white);border-color:rgba(255,255,255,.2)}
body.step-one-dark .insight-card ul{color:rgba(255,255,255,.62)}
body.step-one-dark .section .secondary-btn{background:transparent;color:var(--white);border-color:rgba(255,255,255,.52)}

.lead-gate{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.45fr);gap:28px;align-items:start;width:100%;padding:34px 30px;border-top:1px solid rgba(255,255,255,.14);background:linear-gradient(100deg,rgba(0,229,204,.08),rgba(155,89,255,.10))}
.lead-copy strong{display:block;font-family:var(--font-d);font-size:26px;font-weight:800;font-style:italic;text-transform:uppercase;line-height:1;margin-bottom:8px;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.lead-copy span{display:block;color:rgba(255,255,255,.58);line-height:1.55}
.lead-fields{display:grid;grid-template-columns:minmax(160px,.85fr) minmax(230px,1.15fr) minmax(180px,.72fr);gap:18px;align-items:start}
.lead-fields label{display:block}
.lead-fields label span{display:block;margin-bottom:8px;font-family:var(--font-d);font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--cyan)}
.lead-fields input,.lead-fields select{width:100%;height:54px;border:2px solid rgba(255,255,255,.62);background:#fff8f5;color:var(--black);padding:0 14px;outline:none}
.lead-fields select{appearance:auto}
.lead-fields input:focus,.lead-fields select:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(0,229,204,.18)}
.lead-fields .primary-btn{width:100%;min-width:0;margin-top:27px}
.gate-status{grid-column:2;margin:0;color:rgba(255,255,255,.58);font-size:13px;line-height:1.45}
.calc-results .lead-gate{display:block;margin-top:22px;padding:22px;border:1px solid rgba(255,255,255,.18)}
.calc-results .lead-fields{grid-template-columns:1fr;margin-top:16px}
.calc-results .primary-btn{width:100%;margin-top:2px}
.tfs-consent-line{color:rgba(255,255,255,.52)!important}

@media(max-width:900px){
  .lead-gate,.lead-fields{grid-template-columns:1fr}
  .gate-status{grid-column:auto}
  .lead-fields .primary-btn{margin-top:0}
}

/* Full-page hero-gradient treatment and interaction polish */
body.step-one-dark{
  background:
    radial-gradient(circle at 8% 18%,rgba(0,229,204,.28),transparent 28%),
    radial-gradient(circle at 92% 24%,rgba(155,89,255,.34),transparent 32%),
    radial-gradient(circle at 36% 78%,rgba(63,184,255,.18),transparent 30%),
    linear-gradient(115deg,#050706 0%,#050505 46%,#150d25 100%);
}
body.step-one-dark main{
  background:
    radial-gradient(circle at 12% 34%,rgba(0,229,204,.18),transparent 26%),
    radial-gradient(circle at 88% 62%,rgba(155,89,255,.26),transparent 32%),
    linear-gradient(180deg,rgba(255,255,255,.02),rgba(0,0,0,.18) 34%,rgba(0,229,204,.04) 100%);
}
body.step-one-dark .section{
  position:relative;
  isolation:isolate;
}
body.step-one-dark .section h2{
  width:fit-content;
  max-width:100%;
  background:linear-gradient(90deg,var(--cyan),#45b8ff 42%,var(--violet),#e040fb);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  -webkit-text-fill-color:transparent;
  text-shadow:0 0 36px rgba(0,229,204,.10);
}
body.step-one-dark .section::before{
  content:"";
  position:absolute;
  inset:18px -4vw;
  z-index:-1;
  border:1px solid rgba(255,255,255,.06);
  background:
    radial-gradient(circle at 12% 18%,rgba(0,229,204,.10),transparent 32%),
    radial-gradient(circle at 90% 30%,rgba(155,89,255,.16),transparent 36%),
    linear-gradient(135deg,rgba(255,255,255,.02),rgba(255,255,255,.005));
  pointer-events:none;
}
body.step-one-dark .hero-panel,
body.step-one-dark .proof-strip,
body.step-one-dark .tool-shell,
body.step-one-dark .calculator-grid,
body.step-one-dark .result-card,
body.step-one-dark .insight-card,
body.step-one-dark .lead-gate{
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
body.step-one-dark .hero-panel{
  background:
    radial-gradient(circle at 85% 20%,rgba(155,89,255,.24),transparent 38%),
    linear-gradient(135deg,rgba(255,255,255,.05),rgba(0,229,204,.04));
  box-shadow:0 0 44px rgba(155,89,255,.16),inset 0 0 0 1px rgba(0,229,204,.12);
}
body.step-one-dark .proof-strip{
  border-color:rgba(255,255,255,.20);
  background:linear-gradient(90deg,rgba(0,229,204,.05),rgba(155,89,255,.07));
}
body.step-one-dark .proof-strip span{
  transition:background .25s var(--ease),color .25s var(--ease),box-shadow .25s var(--ease);
}
body.step-one-dark .proof-strip span:hover{
  color:var(--white);
  background:linear-gradient(90deg,rgba(0,229,204,.18),rgba(155,89,255,.20));
  box-shadow:inset 0 -2px 0 var(--cyan);
}

.hero-actions{
  gap:18px;
  row-gap:18px;
}
.primary-btn,.secondary-btn{
  min-width:190px;
  min-height:56px;
  padding:0 30px;
  gap:10px;
}
body.step-one-dark .primary-btn{
  border-color:transparent;
  background:linear-gradient(95deg,var(--cyan),#45b8ff 48%,var(--violet));
  box-shadow:0 0 0 1px rgba(255,255,255,.12),0 14px 42px rgba(0,229,204,.12);
}
body.step-one-dark .secondary-btn{
  background:rgba(255,255,255,.02);
}
body.step-one-dark .primary-btn:hover,
body.step-one-dark .secondary-btn:hover,
body.step-one-dark .q-btn:hover,
body.step-one-dark .q-btn.active{
  transform:translateY(-3px);
  background:linear-gradient(100deg,var(--cyan),#40b9ff 38%,var(--violet) 72%,#e040fb);
  color:var(--black);
  border-color:transparent;
  box-shadow:0 0 0 1px rgba(255,255,255,.2),0 16px 42px rgba(0,229,204,.22),0 0 54px rgba(155,89,255,.22);
}
body.step-one-dark button.primary-btn:disabled,
body.step-one-dark button.primary-btn:disabled:hover{
  transform:none;
  background:linear-gradient(90deg,#3d4146,#6a6675);
  box-shadow:none;
  color:#111;
}

body.step-one-dark .question-card{
  transition:background .25s var(--ease),box-shadow .25s var(--ease),border-color .25s var(--ease),transform .25s var(--ease);
}
body.step-one-dark .question-card:hover{
  background:
    radial-gradient(circle at 92% 50%,rgba(155,89,255,.18),transparent 28%),
    linear-gradient(90deg,rgba(0,229,204,.11),rgba(255,255,255,.03));
  border-top-color:rgba(0,229,204,.34);
  box-shadow:inset 3px 0 0 var(--cyan);
}
body.step-one-dark .question-card.yes{
  background:
    linear-gradient(90deg,rgba(0,229,204,.28),rgba(64,185,255,.12),rgba(255,255,255,.03));
  box-shadow:inset 4px 0 0 var(--cyan);
}
body.step-one-dark .question-card.no{
  background:
    linear-gradient(90deg,rgba(155,89,255,.23),rgba(224,64,251,.10),rgba(255,255,255,.02));
  box-shadow:inset 4px 0 0 var(--violet);
}
.q-actions{
  gap:12px;
}
.q-btn{
  min-width:82px;
  transition:transform .22s var(--ease),background .22s var(--ease),box-shadow .22s var(--ease),border-color .22s var(--ease),color .22s var(--ease);
}

body.step-one-dark .field,
body.step-one-dark .result-box,
body.step-one-dark .insight-card,
body.step-one-dark .lead-gate{
  transition:background .25s var(--ease),box-shadow .25s var(--ease),border-color .25s var(--ease),transform .25s var(--ease);
}
body.step-one-dark .field:hover,
body.step-one-dark .result-box:hover,
body.step-one-dark .insight-card:hover{
  border-color:rgba(0,229,204,.52);
  background:
    radial-gradient(circle at 88% 18%,rgba(155,89,255,.22),transparent 34%),
    linear-gradient(135deg,rgba(0,229,204,.10),rgba(255,255,255,.025));
  box-shadow:0 14px 42px rgba(0,229,204,.10),0 0 42px rgba(155,89,255,.11);
}
body.step-one-dark .field input,
body.step-one-dark .lead-fields input,
body.step-one-dark .lead-fields select{
  transition:border-color .22s var(--ease),box-shadow .22s var(--ease),background .22s var(--ease);
}
body.step-one-dark .field input:focus,
body.step-one-dark .lead-fields input:focus,
body.step-one-dark .lead-fields select:focus{
  background:#ffffff;
  border-color:var(--cyan);
  box-shadow:0 0 0 3px rgba(0,229,204,.20),0 0 30px rgba(155,89,255,.18);
}
body.step-one-dark .lead-gate{
  border-color:rgba(0,229,204,.26);
  background:
    radial-gradient(circle at 8% 15%,rgba(0,229,204,.16),transparent 34%),
    radial-gradient(circle at 92% 18%,rgba(155,89,255,.22),transparent 36%),
    linear-gradient(100deg,rgba(0,229,204,.07),rgba(155,89,255,.08));
}
body.step-one-dark .tool-shell > .lead-gate{
  margin-top:0;
  border-top:1px solid rgba(0,229,204,.36);
  border-left:0;
  border-right:0;
  border-bottom:0;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 -28px 80px rgba(0,229,204,.08);
}
body.step-one-dark .tool-shell > .lead-gate .lead-copy strong,
body.step-one-dark .calc-results .lead-gate .lead-copy strong{
  color:var(--white);
  text-shadow:0 0 22px rgba(0,229,204,.18);
}
body.step-one-dark .lead-gate:hover{
  border-color:rgba(0,229,204,.62);
  box-shadow:0 18px 58px rgba(0,229,204,.12),0 0 60px rgba(155,89,255,.13);
}
.lead-fields{
  gap:18px;
}
.calc-results .lead-fields{
  gap:14px;
}

.report-card{
  margin:32px 0 0;
  padding:34px;
  border:1px solid rgba(0,229,204,.34);
  background:
    radial-gradient(circle at 8% 12%,rgba(0,229,204,.18),transparent 34%),
    radial-gradient(circle at 92% 16%,rgba(155,89,255,.25),transparent 38%),
    linear-gradient(135deg,rgba(255,255,255,.06),rgba(255,255,255,.018));
  box-shadow:0 24px 90px rgba(0,0,0,.25),0 0 70px rgba(155,89,255,.16);
  color:var(--white);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.report-card[hidden]{display:none}
.report-kicker{
  font-family:var(--font-d);
  font-size:14px;
  font-weight:800;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--cyan);
  margin-bottom:16px;
}
.report-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(220px,.34fr);
  gap:24px;
  align-items:stretch;
}
.report-head h3{
  margin:0 0 12px;
  font-family:var(--font-d);
  font-size:clamp(42px,5.4vw,74px);
  font-weight:800;
  font-style:italic;
  line-height:.88;
  text-transform:uppercase;
  background:linear-gradient(90deg,var(--cyan),#45b8ff 44%,var(--violet));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  -webkit-text-fill-color:transparent;
}
.report-head p,.report-value{
  margin:0;
  color:rgba(255,255,255,.68);
  font-size:17px;
  line-height:1.65;
}
.report-stage{
  border:1px solid rgba(255,255,255,.16);
  padding:20px;
  background:rgba(0,0,0,.24);
}
.report-stage span{
  display:block;
  margin-bottom:12px;
  font-family:var(--font-d);
  font-size:13px;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(255,255,255,.48);
}
.report-stage strong{
  display:block;
  font-family:var(--font-d);
  font-size:28px;
  font-weight:800;
  font-style:italic;
  line-height:.95;
  text-transform:uppercase;
}
.report-value{
  margin-top:24px;
  padding:18px 20px;
  border-left:4px solid var(--cyan);
  background:linear-gradient(90deg,rgba(0,229,204,.12),rgba(155,89,255,.08));
}
.report-section-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  margin-top:22px;
}
.report-section{
  border:1px solid rgba(255,255,255,.14);
  padding:20px;
  background:rgba(5,5,5,.34);
}
.report-section h4{
  margin:0 0 12px;
  font-family:var(--font-d);
  font-size:24px;
  font-weight:800;
  font-style:italic;
  text-transform:uppercase;
}
.report-section ul{
  margin:0;
  padding-left:18px;
  color:rgba(255,255,255,.64);
  line-height:1.58;
}
.report-section li+li{margin-top:8px}

body.step-one-dark .tfs-footer{
  text-align:center;
  background:
    radial-gradient(circle at 50% 0%,rgba(0,229,204,.10),transparent 34%),
    radial-gradient(circle at 72% 30%,rgba(155,89,255,.12),transparent 36%),
    #050505;
}
body.step-one-dark .tfs-footer-inner{
  grid-template-columns:1fr 1fr 1fr;
  align-items:start;
  justify-items:center;
  text-align:center;
}
body.step-one-dark .tfs-footer-logo{
  justify-content:center;
}
body.step-one-dark .tfs-footer-tagline{
  margin:0 auto;
}
body.step-one-dark .tfs-footer-col ul{
  align-items:center;
}
body.step-one-dark .tfs-footer-bottom{
  justify-content:center;
  text-align:center;
}

@media(max-width:900px){
  .hero-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:14px;
  }
  .report-head,.report-section-grid{
    grid-template-columns:1fr;
  }
  .report-card{
    padding:24px;
  }
  .primary-btn,.secondary-btn{
    width:100%;
    min-width:0;
  }
  .q-actions{
    width:100%;
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .q-btn{
    width:100%;
  }
  body.step-one-dark .section::before{
    inset:10px -14px;
  }
  body.step-one-dark .tfs-footer-inner{
    grid-template-columns:1fr;
    gap:34px;
  }
}

/* Responsive alignment pass for report forms */
.primary-btn,.secondary-btn,.nav-cta{
  text-align:center;
  line-height:1;
  white-space:normal;
  overflow-wrap:anywhere;
}
.hero-actions{
  align-items:stretch;
}
.hero-actions .primary-btn,
.hero-actions .secondary-btn{
  flex:0 1 260px;
}
.tool-header{
  align-items:flex-start;
}
.progress-meta{
  min-width:150px;
  text-align:right;
}
.lead-copy{
  max-width:360px;
}
.lead-fields{
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:end;
}
.lead-fields label{
  min-width:0;
}
.lead-fields label span{
  min-height:32px;
  display:flex;
  align-items:flex-end;
}
.lead-fields input,
.lead-fields select{
  min-width:0;
}
.lead-fields .primary-btn{
  height:54px;
  margin-top:0;
  align-self:end;
}
.calc-results .lead-copy{
  max-width:none;
}
.calc-results .lead-fields{
  grid-template-columns:1fr;
}
.calc-results .lead-fields label span{
  min-height:auto;
}
.question-card{
  grid-template-columns:58px minmax(0,1fr) minmax(170px,auto);
}
.q-actions{
  align-items:center;
  justify-content:flex-end;
}
.q-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1;
}
.field input,
.lead-fields input,
.lead-fields select{
  font-size:16px;
}
.report-section{
  min-width:0;
}
.report-stage{
  min-width:0;
}
.report-stage strong,
.report-section h4,
.lead-copy strong,
.tool-header h3{
  overflow-wrap:anywhere;
}

@media(max-width:1180px){
  .hero-grid{
    grid-template-columns:minmax(0,1fr);
    gap:42px;
    padding:54px 0 50px;
  }
  .hero-copy{
    max-width:860px;
  }
  .hero-panel{
    max-width:760px;
  }
  .lead-gate{
    grid-template-columns:1fr;
  }
  .lead-copy{
    max-width:760px;
  }
  .gate-status{
    grid-column:auto;
  }
}

@media(max-width:1024px){
  .section,.hero-grid{
    width:min(100% - 36px,920px);
  }
  .lead-fields{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .report-head{
    grid-template-columns:1fr;
  }
  .report-section-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .calculator-grid{
    grid-template-columns:1fr;
  }
  body.step-one-dark .calc-results{
    border-left:0;
    border-top:1px solid rgba(255,255,255,.14);
  }
}

@media(max-width:760px){
  .section,.hero-grid{
    width:min(100% - 28px,680px);
  }
  .hero h1{
    font-size:clamp(52px,15vw,78px);
    line-height:.88;
  }
  .hero-lede{
    font-size:18px;
    line-height:1.58;
  }
  .tool-header{
    display:grid;
    grid-template-columns:1fr;
    padding:22px;
  }
  .progress-meta{
    min-width:0;
    text-align:left;
  }
  .question-card{
    grid-template-columns:40px minmax(0,1fr);
    gap:14px;
    padding:20px;
  }
  .q-text{
    font-size:16px;
  }
  .q-actions{
    grid-column:1/-1;
    width:100%;
    display:grid;
    grid-template-columns:1fr 1fr;
    justify-content:stretch;
  }
  .lead-gate{
    padding:24px 20px;
  }
  .lead-fields{
    grid-template-columns:1fr;
  }
  .lead-fields label span{
    min-height:auto;
  }
  .primary-btn,.secondary-btn{
    width:100%;
    min-width:0;
    min-height:54px;
    padding:0 18px;
    font-size:17px;
  }
  .proof-strip{
    grid-template-columns:1fr;
  }
  .proof-strip span{
    border-right:0;
    border-bottom:1px solid rgba(255,255,255,.16);
  }
  .proof-strip span:last-child{
    border-bottom:0;
  }
  .meter-row{
    grid-template-columns:112px minmax(0,1fr);
    gap:12px;
  }
  .meter-row span{
    font-size:16px;
  }
  .result-card,.report-card{
    padding:24px 20px;
  }
  .insight-grid,.report-section-grid{
    grid-template-columns:1fr;
  }
  .field{
    padding:20px;
  }
}

@media(max-width:430px){
  .section,.hero-grid{
    width:min(100% - 22px,390px);
  }
  .hero-grid{
    padding:38px 0 42px;
  }
  .hero h1{
    font-size:clamp(46px,14vw,62px);
  }
  .eyebrow{
    font-size:13px;
    letter-spacing:.18em;
  }
  .lead-copy strong{
    font-size:23px;
  }
  .tool-header h3{
    font-size:26px;
  }
  .report-head h3{
    font-size:40px;
  }
  .report-stage strong{
    font-size:24px;
  }
  .q-number{
    font-size:24px;
  }
  .lead-fields input,
  .lead-fields select,
  .field input{
    height:52px;
  }
}

/* Final step-one visual corrections */
.hero h1,
.section h2,
.result-card h3,
.report-head h3,
.lead-copy strong,
.tool-header h3{
  overflow:visible;
  letter-spacing:0;
  padding-block:0.08em;
}
.lead-copy strong,
body.step-one-dark .tool-shell > .lead-gate .lead-copy strong,
body.step-one-dark .calc-results .lead-gate .lead-copy strong{
  background:none;
  color:var(--white);
  -webkit-text-fill-color:var(--white);
  text-shadow:none;
}
.q-number{
  text-shadow:0 0 22px rgba(0,229,204,.18);
}
.lead-fields .primary-btn{
  align-self:start;
  margin-top:40px;
  min-height:54px;
}
.calc-results .lead-fields .primary-btn{
  margin-top:0;
}
.lead-fields label span{
  line-height:1.1;
}
.lead-copy span{
  max-width:520px;
}
@media(max-width:1024px){
  .lead-fields .primary-btn{
    margin-top:40px;
  }
}
@media(max-width:760px){
  .lead-fields .primary-btn{
    margin-top:0;
  }
  .hero h1,
  .section h2,
  .result-card h3,
  .report-head h3{
    line-height:.96;
  }
}

/* Main-gradient panel background */
body.step-one-dark .tool-shell,
body.step-one-dark .calculator-grid{
  background:
    radial-gradient(circle at 6% 18%,rgba(0,229,204,.42),transparent 38%),
    radial-gradient(circle at 92% 18%,rgba(155,89,255,.56),transparent 42%),
    linear-gradient(105deg,#0ecfc0 0%,#3f9fee 43%,#8b50f5 100%);
  border-color:rgba(0,229,204,.70);
  box-shadow:0 0 0 1px rgba(0,229,204,.46),0 22px 86px rgba(0,229,204,.12);
}
body.step-one-dark .lead-gate,
body.step-one-dark .tool-shell > .lead-gate{
  position:relative;
  background:
    radial-gradient(circle at 5% 14%,rgba(0,229,204,.36),transparent 34%),
    radial-gradient(circle at 94% 16%,rgba(155,89,255,.52),transparent 40%),
    linear-gradient(105deg,#11cfc0 0%,#428fe4 44%,#8d52f6 100%);
  border-color:rgba(255,255,255,.20);
}
body.step-one-dark .calc-results .lead-gate{
  background:
    radial-gradient(circle at 8% 12%,rgba(0,229,204,.34),transparent 36%),
    radial-gradient(circle at 92% 14%,rgba(155,89,255,.46),transparent 40%),
    linear-gradient(110deg,#12cdbf 0%,#438fe3 46%,#8d52f6 100%);
}

body.step-one-dark .lead-fields label:nth-of-type(2){
  margin-top:0;
}
body.step-one-dark .lead-fields label:nth-of-type(2) .tfs-consent-line{
  margin-bottom:0;
}

/* Build calculator: numbered worksheet rows with the editable answer on the right. */
#calculator .calculator-grid{
  align-items:stretch;
  grid-template-columns:minmax(0,1fr) minmax(380px,.78fr);
}
#calculator .calc-form{
  display:flex;
  flex-direction:column;
  min-height:100%;
}
#calculator .calc-form .field-grid{
  flex:1;
  display:grid;
  grid-template-columns:1fr;
  gap:0;
  border:1px solid rgba(255,255,255,.16);
  counter-reset:calcQuestion;
}
#calculator .calc-form .field{
  display:grid;
  grid-template-columns:56px minmax(280px,1fr) minmax(200px,280px);
  grid-template-areas:
    "num title input"
    "num help input";
  column-gap:24px;
  row-gap:8px;
  align-items:center;
  min-height:108px;
  padding:20px 26px;
  border-right:0!important;
  border-bottom:1px solid rgba(255,255,255,.14)!important;
  counter-increment:calcQuestion;
}
#calculator .calc-form .field::before{
  grid-area:num;
  content:counter(calcQuestion, decimal-leading-zero);
  font-family:var(--font-d);
  font-size:30px;
  font-weight:900;
  font-style:italic;
  line-height:1;
  background:linear-gradient(135deg,var(--cyan),#43b8ff,var(--violet));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  -webkit-text-fill-color:transparent;
}
#calculator .calc-form .field:last-child{
  border-bottom:0!important;
}
#calculator .calc-form .field span{
  grid-area:title;
  margin:0 0 8px;
  font-size:14px;
}
#calculator .calc-form .field input{
  grid-area:input;
  margin:0;
  width:100%;
  height:58px;
  justify-self:end;
}
#calculator .calc-form .field small{
  grid-area:help;
  min-height:0;
  margin:0;
  max-width:720px;
  line-height:1.45;
}
#calculator .calc-form .field .answer-format{
  display:inline;
  margin-right:8px;
  font:inherit;
  font-weight:800;
  background:linear-gradient(135deg,var(--cyan),#43b8ff,var(--violet));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  -webkit-text-fill-color:transparent;
}
@media(max-width:1024px){
  #calculator .calculator-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:760px){
  #calculator .calc-form .field-grid{
    grid-auto-rows:auto;
  }
  #calculator .calc-form .field{
    grid-template-columns:42px minmax(0,1fr);
    grid-template-areas:
      "num title"
      "num help"
      ". input";
    gap:14px;
    min-height:0;
    padding:20px;
  }
  #calculator .calc-form .field input{
    grid-column:2;
    justify-self:stretch;
    margin-top:8px;
  }
  #calculator .calc-form .field small{
    min-height:0;
  }
}
@media(max-width:430px){
  #calculator .calc-form .field{
    grid-template-columns:1fr;
    grid-template-areas:
      "num"
      "title"
      "help"
      "input";
  }
  #calculator .calc-form .field::before{
    width:34px;
    height:34px;
  }
  #calculator .calc-form .field input{
    grid-column:auto;
  }
}
body.step-one-dark .tool-shell > .lead-gate{
  padding-bottom:118px;
}
body.step-one-dark .tool-shell > .lead-gate .lead-fields label span,
body.step-one-dark .calc-results .lead-gate .lead-fields label span{
  color:var(--black);
  -webkit-text-fill-color:var(--black);
}
body.step-one-dark .tool-shell > .lead-gate .lead-fields label:nth-of-type(2) .tfs-consent-line{
  position:absolute;
  left:50%;
  bottom:34px;
  transform:translateX(-50%);
  width:min(760px,calc(100% - 64px));
  margin:0;
  text-align:center;
  color:rgba(8,8,8,.76)!important;
  line-height:1.35;
  pointer-events:none;
}

@media(max-width:1024px){
  body.step-one-dark .lead-fields label:nth-of-type(2){
    margin-top:0;
  }
  body.step-one-dark .lead-fields label:nth-of-type(2) .tfs-consent-line{
    margin-bottom:0;
  }
}

/* Bottom-centered report intro */
body.step-one-dark .tool-shell > .lead-gate{
  grid-template-columns:1fr;
}
body.step-one-dark .tool-shell > .lead-gate .lead-fields{
  grid-row:1;
}
body.step-one-dark .tool-shell > .lead-gate .lead-copy{
  grid-row:2;
  max-width:720px;
  margin:24px auto 0;
  text-align:center;
}
body.step-one-dark .tool-shell > .lead-gate .lead-copy strong,
body.step-one-dark .tool-shell > .lead-gate .lead-copy span{
  color:var(--black);
  -webkit-text-fill-color:var(--black);
}
body.step-one-dark .tool-shell > .lead-gate .lead-copy strong{
  font-size:30px;
}
body.step-one-dark .tool-shell > .lead-gate .lead-copy span{
  color:rgba(8,8,8,.78);
}
body.step-one-dark .tool-shell > .lead-gate .gate-status{
  grid-row:3;
  grid-column:auto;
  text-align:center;
  color:rgba(8,8,8,.78);
}
body.step-one-dark .tool-shell > .lead-gate .lead-fields .primary-btn{
  margin-top:40px;
}

@media(max-width:1024px){
  body.step-one-dark .tool-shell > .lead-gate .lead-fields .primary-btn{
    margin-top:40px;
  }
}
@media(max-width:760px){
  body.step-one-dark .tool-shell > .lead-gate .lead-fields .primary-btn{
    margin-top:0;
  }
  body.step-one-dark .tool-shell > .lead-gate .lead-copy{
    margin-top:18px;
  }
  body.step-one-dark .tool-shell > .lead-gate{
    padding-bottom:126px;
  }
  body.step-one-dark .tool-shell > .lead-gate .lead-fields label:nth-of-type(2) .tfs-consent-line{
    bottom:24px;
    width:calc(100% - 36px);
  }
}

/* Keep the step-one pages on the exact landing-page header rhythm. */
body.step-one-dark #nav .nav-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:auto;
  max-width:100%;
  height:112px;
  margin:0;
  padding:0 32px;
  gap:20px;
}
body.step-one-dark #nav .nav-links,
body.step-one-dark #nav .nav-actions{
  display:flex;
  align-items:center;
  gap:32px;
}
body.step-one-dark #nav .nav-actions{
  gap:14px;
}
body.step-one-dark #nav .nav-links a,
body.step-one-dark #nav .nav-dropdown-trigger{
  font-weight:700;
  color:var(--black);
}
body.step-one-dark #nav .nav-dropdown-menu a{
  display:block;
  color:var(--white);
  -webkit-text-fill-color:var(--white);
  background:transparent;
  padding:13px 14px;
  border-bottom:1px solid rgba(255,255,255,.1);
  white-space:nowrap;
}
body.step-one-dark #nav .nav-dropdown-menu a:last-child{
  border-bottom:none;
}
body.step-one-dark #nav .nav-dropdown-menu a::after{
  display:none;
}
body.step-one-dark #nav .nav-dropdown-menu a:hover{
  background:var(--grad);
  color:var(--black);
  -webkit-text-fill-color:var(--black);
}
body.step-one-dark #nav .nav-logo img{
  height:130px;
  padding:18px 0;
}

@media(max-width:1100px){
  body.step-one-dark #nav .nav-inner{
    height:96px;
    padding:0 28px;
  }
  body.step-one-dark #nav .nav-links,
  body.step-one-dark #nav .nav-actions{
    display:none;
  }
  body.step-one-dark #nav .nav-logo img{
    height:106px;
    padding:14px 0;
  }
}

@media(max-width:768px){
  body.step-one-dark #nav .nav-inner{
    height:88px;
  }
  body.step-one-dark #nav .nav-logo img{
    height:98px;
    padding:12px 0;
  }
}

@media(max-width:480px){
  body.step-one-dark #nav .nav-inner{
    height:82px;
    padding:0 20px;
  }
  body.step-one-dark #nav .nav-logo img{
    height:88px;
    padding:10px 0;
  }
}
