/* ==========================================================
   RS Funding — site styles
   Bright white / ice-blue body with deep-navy anchors (hero, repayment band, footer),
   one sky band (requirements) and one royal moment (contact).
   Energy: the logo's royal-to-sky gradient and its swoosh.
   Type: Montserrat (display) + Inter (text)
   ========================================================== */

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;background:#071128}
[hidden]{display:none!important}

:root{
  --navy:#071128;
  --navy-2:#0B1A3C;
  --panel:#0E1C3B;
  --ink:#0A1A3F;
  --body:#45546F;
  --muted:#5A6986;
  --royal:#3D7DE8;
  --royal-ink:#2256CC;
  --royal-deep:#173FA8;
  --sky:#85BFFF;
  --sky-2:#B5D8FF;
  --tip:#8FC2F7;
  --ice:#F4F8FF;
  --ice-2:#E8F0FE;
  --line:#DCE7F8;
  --line-2:#C6D7F3;
  --on-navy:#F3F7FF;
  --on-navy-muted:#B2C1DD;
  --grad:linear-gradient(100deg,#3D7DE8,#B5D8FF);
  --grad-ink:linear-gradient(100deg,#173FA8 0%,#3D7DE8 100%);
  --grad-sky:linear-gradient(100deg,#6FA8FF 0%,#B5D8FF 100%);
  --grad-btn:linear-gradient(135deg,#1C49BB 0%,#3470E0 100%);
  --shadow-sm:0 1px 2px rgba(13,38,94,.05),0 10px 24px -14px rgba(30,79,196,.28);
  --shadow:0 1px 2px rgba(13,38,94,.05),0 22px 46px -24px rgba(30,79,196,.36);
  --shadow-lg:0 2px 4px rgba(13,38,94,.06),0 40px 80px -32px rgba(16,48,130,.5);
  --font:"Montserrat",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --text:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --wrap:1240px;
  --sweep:clamp(48px,8.4vw,120px);
}

body{margin:0;background:#071128;color:var(--body);font-family:var(--text);font-size:17px;line-height:1.62;-webkit-font-smoothing:antialiased}
main{display:block;background:#fff}
img,svg{display:block;max-width:100%}
a{color:inherit}
h1,h2,h3{font-family:var(--font);color:var(--ink);font-weight:800;letter-spacing:-.03em;line-height:1.06;margin:0 0 .5em;text-wrap:balance}
h1{font-size:clamp(2.6rem,7vw,5rem);letter-spacing:-.04em;line-height:1}
h2{font-size:clamp(1.95rem,3.5vw,3rem)}
h3{font-size:1.22rem;font-weight:700;letter-spacing:-.015em;line-height:1.2}
p{margin:0 0 1em}
:focus-visible{outline:3px solid var(--royal-ink);outline-offset:3px;border-radius:6px}
.hero :focus-visible,.band :focus-visible,.foot :focus-visible,.final__box :focus-visible,.legal__head :focus-visible{outline-color:var(--sky-2)}
.hero .quiz :focus-visible{outline-color:var(--royal-ink)}
section[id]{scroll-margin-top:92px}
#quiz{scroll-margin-top:220px}
::selection{background:var(--royal);color:#fff}

.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;left:16px;top:-80px;z-index:100;background:var(--royal-ink);color:#fff;padding:10px 16px;border-radius:10px;text-decoration:none;font-weight:700}
.skip:focus{top:12px}
.fine{font-size:.84rem;color:var(--muted);margin:26px 0 0}

/* Gradient phrase inside headlines: sky on navy, royal on light */
.hl{color:var(--sky);background:var(--grad-sky);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.hl-ink{color:var(--royal-ink);background:linear-gradient(100deg,#173FA8 0%,#3475E4 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}

/* Section label */
.kicker{display:inline-flex;align-items:center;gap:9px;font:700 .8rem/1 var(--font);letter-spacing:.01em;color:var(--royal-ink);background:var(--ice-2);padding:9px 14px 9px 11px;border-radius:9px;margin:0 0 22px}
.kicker::before{content:"";width:11px;height:11px;flex:none;background:var(--grad-ink);clip-path:polygon(100% 0,0 30%,47% 53%,70% 100%)}
.sec--ice .kicker,.sec--qualify .kicker{background:#fff;box-shadow:0 0 0 1px var(--line)}
.sec--qualify .kicker{box-shadow:0 8px 18px -10px rgba(16,48,130,.4)}
.band .kicker{background:rgba(133,191,255,.13);color:var(--sky-2)}
.band .kicker::before,.kicker--on-dark::before,.legal__head .kicker::before{background:var(--sky-2)}
.kicker--on-dark,.legal__head .kicker{background:rgba(255,255,255,.14);color:#fff}

/* ---------- Buttons ----------
   One primary everywhere: the royal gradient. On the royal contact card it inverts to white. */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font:700 .98rem/1 var(--font);padding:15px 24px;border-radius:14px;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:background-color .15s,color .15s,border-color .15s,transform .15s,box-shadow .15s,filter .15s;white-space:nowrap}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn--primary{background:var(--grad-btn);color:#fff;box-shadow:0 1px 0 rgba(255,255,255,.25) inset,0 14px 26px -12px rgba(28,73,187,.75)}
.btn--primary:hover{box-shadow:0 1px 0 rgba(255,255,255,.25) inset,0 0 0 1px rgba(181,216,255,.5),0 20px 34px -12px rgba(28,73,187,.95)}
.hero .hero__actions .btn--primary{box-shadow:0 1px 0 rgba(255,255,255,.3) inset,0 0 0 1px rgba(181,216,255,.34),0 18px 44px -10px rgba(61,125,232,.95)}
.btn--ghost{border-color:rgba(181,216,255,.38);color:#fff;background:rgba(255,255,255,.05)}
.btn--ghost:hover{border-color:#fff;background:rgba(255,255,255,.1)}
.btn--white{background:#fff;color:var(--ink);box-shadow:0 18px 34px -16px rgba(4,14,44,.6)}
.btn--white:hover{background:var(--ice)}
.btn--line{background:#fff;color:var(--royal-ink);border-color:var(--line-2);box-shadow:var(--shadow-sm)}
.btn--line:hover{border-color:var(--royal-ink);color:var(--royal-deep)}
.btn--sm{padding:12px 18px;font-size:.9rem;border-radius:12px}
.btn--lg{padding:19px 28px;font-size:1.04rem;border-radius:16px}
.arrow{transition:transform .15s}
.btn:hover .arrow{transform:translateX(3px)}

/* ---------- Logo (recreated from the brand mark) ---------- */
.logo{display:inline-flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);line-height:1;flex:none;font-family:var(--font)}
.logo .logo__mark{width:86px;height:50px;overflow:visible;flex:none}
.logo__cut{stroke:#fff;stroke-width:3;paint-order:stroke}
.logo__word{font-weight:500;letter-spacing:.14em;font-size:1.2rem;color:var(--ink)}
.logo--light,.logo--light .logo__word{color:#fff}
.logo--light .logo__cut{stroke:var(--navy)}

/* ---------- Navigation bar ---------- */
.nav-shell{position:fixed;top:12px;left:0;right:0;z-index:60;padding:0 16px}
.navbar{max-width:var(--wrap);height:68px;margin:0 auto;display:flex;align-items:center;gap:12px;padding:0 10px 0 20px;border-radius:20px;background:#fff;box-shadow:0 0 0 1px rgba(13,38,94,.06),0 14px 32px -20px rgba(7,17,40,.5);position:relative}
.navbar__links{display:flex;gap:2px;margin-left:auto}
.navbar__links a{padding:10px 13px;border-radius:10px;text-decoration:none;color:#33435F;font-size:.94rem;font-weight:500;transition:color .15s,background-color .15s}
.navbar__links a:hover{color:var(--royal-ink);background:var(--ice-2)}
.navbar__mail{font-size:.9rem;font-weight:600;color:var(--royal-ink);text-decoration:none;padding:6px 14px;margin-left:6px;border-left:1px solid var(--line)}
.navbar__mail:hover{text-decoration:underline;text-underline-offset:3px}
.navbar--legal .navbar__links{display:flex;position:static;flex-direction:row;background:none;box-shadow:none;padding:0;max-height:none;overflow:visible}
.burger{display:none;width:44px;height:44px;border-radius:12px;border:1px solid var(--line-2);background:var(--ice);cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:0}
.burger span{display:block;width:17px;height:2px;border-radius:2px;background:var(--ink);transition:transform .2s,opacity .2s}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

/* ---------- Hero ---------- */
.hero{position:relative;isolation:isolate;padding:132px 0 0;color:var(--on-navy)}
.hero__art{position:absolute;inset:0 0 66px 0;z-index:-1;overflow:hidden;background:
  radial-gradient(24% 30% at 94% 15%,rgba(156,203,250,.36),transparent 72%),
  radial-gradient(60% 74% at 92% 2%,rgba(61,125,232,.6),transparent 64%),
  radial-gradient(46% 54% at 58% 106%,rgba(61,125,232,.46),transparent 68%),
  radial-gradient(34% 46% at 0% 100%,rgba(28,73,187,.42),transparent 70%),
  linear-gradient(180deg,#071128 0%,#0A1840 100%)}
/* The swoosh is anchored to the quiz card: its arrow tip always lands at the card's top-right corner. */
.hero__sweep{--m:max(24px,calc(50vw - 596px));position:absolute;top:146px;bottom:0;left:0;right:calc(var(--m) - clamp(-30px,calc(var(--m) * .9 - 60px),60px))}
.hero__swoosh{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.hero__tip{position:absolute;left:100%;top:0;width:38px;height:46px;margin:-44px 0 0 -19px;transform-origin:50% 96%;transform:rotate(17deg);filter:drop-shadow(0 0 14px rgba(133,191,255,.7))}
.hero__mini{display:none}
.hero__grid{display:grid;grid-template-columns:minmax(0,1fr) 462px;gap:64px;align-items:start}
.tag{display:inline-flex;align-items:center;gap:10px;font:600 .84rem/1.2 var(--text);color:#D5E4FB;border:1px solid rgba(181,216,255,.26);border-radius:10px;padding:8px 14px 8px 11px;margin:0 0 26px;background:rgba(61,125,232,.16)}
.dot{width:8px;height:8px;border-radius:50%;flex:none;background:var(--sky);box-shadow:0 0 0 0 rgba(133,191,255,.5);animation:pulse 2.2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(133,191,255,.5)}70%{box-shadow:0 0 0 9px rgba(133,191,255,0)}100%{box-shadow:0 0 0 0 rgba(133,191,255,0)}}
.hero h1{color:#fff;max-width:7.3em;margin-bottom:26px;text-wrap:wrap}
.hero h1 .hl{white-space:nowrap}
.hero__sub{font-size:1.2rem;line-height:1.55;color:var(--on-navy-muted);max-width:30em;margin-bottom:30px}
.hero__sub strong{color:#fff;font-weight:600}
.hero__actions{display:flex;flex-wrap:wrap;gap:12px}
.hero__proof{display:flex;flex-wrap:wrap;gap:10px 26px;margin:28px 0 0;padding:0;list-style:none}
.hero__proof li{display:flex;align-items:center;gap:9px;font-size:.93rem;font-weight:500;color:#D5E4FB}
.hero__proof li::before{content:"";width:18px;height:18px;flex:none;border-radius:50%;background:var(--sky) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23071128' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-8.5'/%3E%3C/svg%3E") center/12px no-repeat}

/* Quiz */
.quiz{background:#fff;color:var(--body);border-radius:26px;padding:26px 28px 24px;margin-top:60px;box-shadow:0 0 0 1px rgba(181,216,255,.35),0 50px 90px -36px rgba(1,6,24,.9),0 0 90px -20px rgba(61,125,232,.55);position:relative}
.quiz__top{display:flex;justify-content:space-between;align-items:center;gap:12px}
.quiz__title{font:700 .86rem/1.2 var(--font);letter-spacing:0;color:var(--royal-ink);margin:0}
.quiz__count{font:600 .82rem/1.2 var(--text);color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}
/* three-segment progress: one bar, cut into thirds, with a named read-out under each */
.quiz__bar{height:6px;background:var(--ice-2);border-radius:6px;margin:14px 0 0;overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,#000 calc(33.333% - 3px),transparent 0,transparent calc(33.333% + 3px),#000 0,#000 calc(66.666% - 3px),transparent 0,transparent calc(66.666% + 3px),#000 0);
  mask-image:linear-gradient(90deg,#000 calc(33.333% - 3px),transparent 0,transparent calc(33.333% + 3px),#000 0,#000 calc(66.666% - 3px),transparent 0,transparent calc(66.666% + 3px),#000 0)}
.quiz__bar span{display:block;height:100%;width:33.33%;background:linear-gradient(90deg,#1C49BB,#3D7DE8 60%,#85BFFF);transition:width .4s cubic-bezier(.2,.7,.2,1)}
.quiz__segs{list-style:none;margin:9px 0 22px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.quiz__segs li{display:grid;gap:3px;min-width:0}
.quiz__segs span{font:600 .75rem/1.2 var(--font);color:var(--muted)}
.quiz__segs b{font:600 .8rem/1.25 var(--text);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.quiz__segs .is-current span{color:var(--royal-ink)}
.quiz__segs .is-done span{color:var(--ink)}
.quiz__segs .is-done b{color:var(--royal-ink)}
.quiz__step{display:none}
.quiz__step.is-active{display:block;animation:fadeUp .35s ease}
@keyframes fadeUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.quiz h3{font-size:1.5rem;font-weight:800;letter-spacing:-.025em;margin-bottom:18px;outline:none}
.chips{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.chip{font:600 .96rem/1.25 var(--font);text-align:left;padding:16px;border-radius:14px;border:1px solid var(--line);background:var(--ice);color:var(--ink);cursor:pointer;transition:border-color .15s,background-color .15s,transform .15s,box-shadow .15s;display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:58px}
.chip::after{content:"→";color:var(--royal-ink);opacity:.55;transition:transform .15s,opacity .15s;flex:none}
.chip:hover{border-color:var(--royal);background:#fff;transform:translateY(-1px);box-shadow:var(--shadow-sm)}
.chip:hover::after{opacity:1;transform:translateX(3px)}
.chip[aria-pressed="true"]{background:var(--grad-btn);color:#fff;border-color:transparent}
.chip[aria-pressed="true"]::after{color:#fff;opacity:1}
.quiz__foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-top:18px;min-height:24px}
.linkbtn{white-space:nowrap;background:none;border:0;padding:5px 2px;margin:-5px -2px;color:var(--royal-ink);font:600 .9rem var(--font);cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.linkbtn:hover{color:var(--ink)}
.quiz__secure{white-space:nowrap;display:inline-flex;align-items:center;gap:7px;font-size:.84rem;font-weight:500;color:var(--muted);margin-left:auto}
.quiz__secure svg{width:15px;height:15px;fill:none;stroke:var(--royal-ink);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.linkbtn + .quiz__secure,.quiz__foot .linkbtn:not([hidden]) ~ .quiz__secure{margin-left:0}
.quiz__label{font:700 .86rem/1.2 var(--font);color:var(--muted);margin:0}
.quiz__amount{font-family:var(--font);font-size:clamp(2.4rem,4.6vw,3.3rem);font-weight:800;line-height:1.05;margin:8px 0 16px;letter-spacing:-.04em;color:var(--royal-ink);background:var(--grad-ink);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;outline:none}
.quiz__amount.is-soft{background:none;-webkit-text-fill-color:currentColor;color:var(--ink);font-size:clamp(2rem,4vw,2.5rem)}
.quiz__msg{color:var(--body);margin-bottom:22px}
.quiz .btn{width:100%}
.quiz__nojs{margin:16px 0 0;padding:12px 14px;border-radius:12px;background:var(--ice-2);color:var(--ink);font-size:.92rem;line-height:1.5}
.quiz__nojs a{color:var(--royal-ink);font-weight:600;text-underline-offset:3px}

/* ---------- Stats card (overlaps the hero edge) ---------- */
.stats{display:grid;grid-template-columns:repeat(4,1fr);margin:66px 0 0;padding:8px 0;background:#fff;border-radius:24px;box-shadow:0 0 0 1px rgba(13,38,94,.05),var(--shadow-lg);position:relative}
.stats > div{padding:22px 30px;position:relative;display:flex;flex-direction:column}
.stats > div + div::before{content:"";position:absolute;left:0;top:22px;bottom:22px;width:1px;background:var(--line)}
.stats dt{font-size:.86rem;font-weight:600;color:var(--muted);margin-bottom:6px;line-height:1.35}
.stats dd{margin:auto 0 0;font-family:var(--font);font-size:clamp(1.7rem,3vw,2.5rem);font-weight:800;letter-spacing:-.035em;line-height:1.08;color:var(--royal-ink);background:var(--grad-ink);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;white-space:nowrap}

/* ---------- Industries ticker ---------- */
.industries{padding:54px 0 0;background:#fff}
.industries__label{text-align:center;font:600 .86rem/1 var(--font);color:var(--muted);margin:0 0 14px}
.ticker{overflow:hidden;padding:8px 0 10px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent);mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent)}
.ticker__track{display:flex;width:max-content;animation:marquee 48s linear infinite}
.ticker:hover .ticker__track{animation-play-state:paused}
.ticker__group{display:flex;flex:none}
.ticker__group span{font-family:var(--font);font-weight:700;font-size:1.3rem;letter-spacing:-.015em;padding:0 22px;display:flex;align-items:center;gap:44px;white-space:nowrap;color:var(--ink)}
.ticker__group span::after{content:"";width:13px;height:13px;flex:none;background:var(--grad);clip-path:polygon(100% 0,0 30%,47% 53%,70% 100%)}
@keyframes marquee{to{transform:translateX(-50%)}}

/* ---------- Sections ---------- */
.sec{padding:112px 0;position:relative}
.sec--ice{background:var(--ice)}
.sec__head{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:56px;align-items:end;margin-bottom:56px}
.sec__head h2{margin:0}
.sec__head p:not(.kicker){font-size:1.12rem;margin:0;max-width:30em}
.sec__head:not(.sec__head--stack) > p:not(.kicker){padding-left:22px;border-left:3px solid var(--line-2)}
.sec__head--stack{display:block;max-width:52%;margin-bottom:0;position:relative;z-index:1}
.sec__head--stack h2{margin:0 0 20px}
.sec__head--stack > p:not(.kicker){max-width:26em}

/* Speed — the swoosh carries the timeline.
   The curve SVG and the card offsets both scale with the row width, so the four nodes always sit on the curve. */
.sec--speed{padding-top:100px;overflow:hidden;background:radial-gradient(36% 44% at 100% 6%,rgba(133,191,255,.24),transparent 72%),#fff}
.tl{position:relative;margin-top:calc(55px - 24.8%)}
.tl__curve{position:absolute;left:35px;top:0;width:calc(100% + 20px);max-width:none;height:auto;overflow:visible;pointer-events:none;filter:drop-shadow(0 12px 16px rgba(36,89,207,.3))}
.timeline{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:stretch;position:relative;counter-reset:step}
.timeline li{counter-increment:step;position:relative;margin-top:calc(var(--y) * (400% + 80px));display:flex;flex-direction:column;background:linear-gradient(180deg,#EDF3FF 0,#fff 120px);border:1px solid var(--line);border-radius:22px;padding:40px 26px 26px;box-shadow:var(--shadow)}
.timeline li::before{content:counter(step);position:absolute;left:15px;top:-21px;width:40px;height:40px;border-radius:50%;background:#fff;border:3px solid var(--royal);box-shadow:0 0 0 6px rgba(61,125,232,.16);display:grid;place-items:center;font:800 .98rem/1 var(--font);color:var(--royal-ink)}
.t-time{display:block;font-family:var(--font);font-weight:800;font-size:1.9rem;letter-spacing:-.035em;line-height:1.1;color:var(--royal-ink);background:var(--grad-ink);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-variant-numeric:tabular-nums;align-self:flex-start}
.t-body{margin-top:auto;padding-top:20px}
.timeline h3{font-size:1.3rem;margin-bottom:8px}
.timeline p{margin:0;font-size:.97rem;line-height:1.55;min-height:calc(1.55em * 4)}
.timeline li:last-child{background:radial-gradient(120% 70% at 100% 0%,rgba(61,125,232,.55),transparent 62%),linear-gradient(170deg,#0E2254 0%,#071128 100%);background-origin:border-box;border-color:transparent;box-shadow:var(--shadow-lg)}
.timeline li:last-child::before{background:var(--grad-btn);border-color:#fff;color:#fff}
.timeline li:last-child::after{content:"";position:absolute;right:24px;top:46%;width:56%;aspect-ratio:96/56;transform:translateY(-50%);opacity:.36;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 96 56'%3E%3Cpath d='M3 51 C33 48 62 39 85 17 C67 40 38 51 3 51 Z' fill='%2385BFFF'/%3E%3Cpath d='M78.5 10.5 L95 3 L88.5 20 Z' fill='%23B5D8FF'/%3E%3C/svg%3E") center/contain no-repeat}
.timeline li:last-child h3{color:#fff}
.timeline li:last-child p{color:var(--on-navy-muted)}
.timeline li:last-child .t-time{font-size:2.8rem;color:var(--sky);background:var(--grad-sky);-webkit-background-clip:text;background-clip:text}
/* scroll-in: a pulse that travels up the swoosh. Every frame keeps all content visible. */
.tl.is-in .timeline li::before{animation:nodePop .75s cubic-bezier(.2,.8,.3,1) both;animation-delay:calc(var(--i) * .22s + .15s)}
.tl.is-in .tl__tip{transform-box:fill-box;transform-origin:20% 80%;animation:tipGo .8s cubic-bezier(.2,.8,.3,1) 1s both}
@keyframes nodePop{0%{transform:scale(1)}45%{transform:scale(1.28);box-shadow:0 0 0 13px rgba(61,125,232,.2)}100%{transform:scale(1)}}
@keyframes tipGo{0%{transform:none}45%{transform:translate(7px,-6px) scale(1.18)}100%{transform:none}}

/* Why — bento */
.sec--why{padding-bottom:calc(104px + var(--sweep));background:radial-gradient(40% 36% at 0% 0%,rgba(133,191,255,.22),transparent 70%),var(--ice)}
.bento{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.b{min-height:236px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:28px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden;box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s}
.b:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}
.b h3{margin-bottom:8px}
.b p{margin:0;font-size:.97rem;line-height:1.55}
.b--big{grid-column:span 2;grid-row:span 2;padding:30px 34px 34px;border-color:transparent;background:radial-gradient(90% 70% at 100% 0%,rgba(61,125,232,.55),transparent 62%),linear-gradient(170deg,#0C1E4A 0%,#071128 100%);background-origin:border-box;box-shadow:var(--shadow-lg)}
.b--big h3{color:#fff;font-size:clamp(1.6rem,2.5vw,2.15rem);font-weight:800;letter-spacing:-.03em;line-height:1.08;max-width:15ch;margin-bottom:12px}
.b--big p{color:var(--on-navy-muted);font-size:1.02rem;max-width:32em}
.b__tag{align-self:flex-start;font:600 .76rem/1 var(--font);color:#D5E4FB;background:rgba(133,191,255,.14);border:1px solid rgba(181,216,255,.2);padding:7px 10px;border-radius:8px;margin-bottom:22px}
.b--wide{grid-column:span 2}
.b--row{min-height:0;flex-direction:row;justify-content:flex-start;align-items:center;gap:28px;padding:28px 30px}
/* the one bright card: the logo gradient with navy type */
.b--royal{border-color:transparent;background:radial-gradient(60% 90% at 100% 0%,rgba(255,255,255,.5),transparent 60%),linear-gradient(115deg,#4D8BEF 0%,#86BBFF 58%,#BBDBFF 100%);background-origin:border-box;box-shadow:0 26px 50px -26px rgba(28,73,187,.7)}
.b--royal h3{color:var(--navy);font-size:1.5rem;font-weight:800;letter-spacing:-.025em}
.b--royal p{color:#0B1B40;max-width:34em}
.b__sw{position:absolute;right:18px;top:14px;width:clamp(150px,40%,250px);height:auto;opacity:.7;pointer-events:none}
.b--royal > :not(.b__sw){position:relative}
.b__num{font-family:var(--font);font-size:clamp(2.8rem,4.4vw,3.7rem);font-weight:800;line-height:1;margin-bottom:auto;letter-spacing:-.045em;color:var(--royal-ink);background:var(--grad-ink);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;padding-bottom:18px}
.b__label{align-self:flex-start;font:700 .8rem/1 var(--font);color:#fff;background:var(--navy);padding:8px 12px;border-radius:8px;margin-bottom:auto;position:relative}
.b__viz{width:100%;height:auto;margin-bottom:auto;padding-bottom:30px;overflow:visible}
.b__icon{width:48px;height:48px;flex:none;border-radius:14px;background:var(--grad-btn);box-shadow:0 12px 20px -10px rgba(28,73,187,.7);display:grid;place-items:center;margin-bottom:auto}
.b__icon svg{width:23px;height:23px;stroke:#fff;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.b:not(.b--row) > .b__icon + h3{margin-top:22px}
/* mini graphics for the two lower cards */
.offer{flex:none;width:204px;display:grid;gap:8px}
.offer__row{display:block;background:var(--ice);border:1px solid var(--line);border-radius:12px;padding:10px 12px 11px}
.offer__row b{display:block;font:700 .76rem/1 var(--font);color:var(--ink);margin-bottom:8px;white-space:nowrap}
.offer__row i{display:block;height:5px;border-radius:5px;width:var(--w);background:linear-gradient(90deg,#1C49BB,#5E9BF2)}
.grow{flex:none;width:172px;height:auto;overflow:visible}

/* Swoosh dividers around the navy band */
.sweep{position:absolute;left:0;width:100%;height:var(--sweep);pointer-events:none}
.sweep--top{bottom:calc(100% - 1px)}
.sweep--bottom{top:calc(100% - 1px)}

/* Repayment — navy band */
.band{z-index:1;background:
  radial-gradient(40% 54% at 80% 48%,rgba(61,125,232,.44),transparent 70%),
  radial-gradient(22% 30% at 97% 30%,rgba(133,191,255,.16),transparent 70%),
  radial-gradient(30% 40% at 4% 56%,rgba(28,73,187,.32),transparent 70%),
  var(--navy);color:var(--on-navy-muted);padding:84px 0 96px}
.band h2,.band h3{color:#fff}
.repay{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:72px;align-items:center}
.repay__copy > p:not(.kicker){font-size:1.08rem}
.toggle{display:inline-flex;padding:5px;border:1px solid rgba(181,216,255,.22);border-radius:16px;background:rgba(255,255,255,.05);margin:12px 0 22px}
.toggle button{font:700 .93rem var(--font);border:0;background:transparent;color:#D5E4FB;padding:12px 20px;border-radius:12px;cursor:pointer;transition:background-color .2s,color .2s}
.toggle button:hover{color:#fff}
.toggle button[aria-selected="true"]{background:linear-gradient(135deg,#C4E0FF,#7FB8FF);color:var(--navy);box-shadow:0 10px 24px -10px rgba(98,165,255,.7)}
.repay__desc{position:relative;padding:20px 22px 20px 26px;border-radius:16px;background:rgba(255,255,255,.05);border:1px solid rgba(181,216,255,.14);overflow:hidden}
.repay__desc::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,#B5D8FF,#3D7DE8)}
.repay__desc h3{margin-bottom:8px}
.repay__desc p{margin:0}
.chart{--g:14px;margin:0;background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,.03));border:1px solid rgba(181,216,255,.22);border-radius:26px;padding:30px 30px 24px;box-shadow:0 50px 90px -40px rgba(0,4,20,.9),0 0 120px -30px rgba(61,125,232,.5),inset 0 1px 0 rgba(255,255,255,.14)}
.chart__head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.chart__title{font:700 1rem/1.2 var(--font);color:#fff}
.chart__legend{display:flex;gap:18px}
.lg{display:flex;align-items:center;gap:8px;font-size:.84rem;font-weight:500;color:#D5E4FB}
.lg::before{content:"";width:12px;height:12px;border-radius:4px}
.lg--sales::before{border:1px solid rgba(181,216,255,.5);background:repeating-linear-gradient(135deg,rgba(133,191,255,.55) 0 1.5px,rgba(133,191,255,.12) 1.5px 4px)}
.lg--pay::before{background:linear-gradient(180deg,#C4E0FF,#5E9BF2)}
.chart__bars{position:relative;height:300px;padding-top:40px;display:grid;grid-template-columns:repeat(7,1fr);gap:var(--g);align-items:end;border-bottom:1px solid rgba(181,216,255,.34);background:repeating-linear-gradient(0deg,transparent 0 64px,rgba(181,216,255,.1) 64px 65px)}
.bar{height:var(--s);border:1px solid rgba(181,216,255,.3);border-bottom:0;background:repeating-linear-gradient(135deg,rgba(133,191,255,.24) 0 2px,rgba(133,191,255,.07) 2px 8px);border-radius:9px 9px 0 0;position:relative;display:flex;align-items:flex-end}
.bar__pay{display:block;width:100%;height:var(--p,20%);background:linear-gradient(180deg,#C4E0FF 0%,#5E9BF2 100%);border-radius:5px 5px 0 0;transition:height .55s cubic-bezier(.2,.7,.2,1)}
.bar::after{content:"";position:absolute;left:50%;bottom:var(--p,20%);width:12px;height:12px;margin:0 0 -6px -6px;border-radius:50%;background:#fff;border:3px solid #0C1E4A;box-shadow:0 0 0 1px rgba(181,216,255,.5);z-index:2;transition:bottom .55s cubic-bezier(.2,.7,.2,1)}
.bar__tag{position:absolute;left:50%;bottom:calc(100% + 9px);transform:translateX(-50%);white-space:nowrap;font:700 .75rem/1 var(--font);padding:6px 9px;border-radius:7px;background:#DCEBFF;color:var(--navy);z-index:3}
.bar__tag--slow{background:#1A3470;color:#DCEBFF;box-shadow:0 0 0 1px rgba(181,216,255,.35)}
.chart__line{position:absolute;left:calc((100% - 6 * var(--g)) / 14);bottom:0;width:calc(100% - (100% - 6 * var(--g)) / 7);max-width:none;height:calc(100% - 40px);overflow:visible;pointer-events:none;z-index:1}
.chart__line polyline{fill:none;stroke:#fff;stroke-width:1.6;stroke-dasharray:2 5;stroke-linecap:round;opacity:.85}
.chart__days{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--g);margin-top:12px;text-align:center;font-size:.82rem;font-weight:500;color:var(--on-navy-muted)}
.chart figcaption{font-size:.84rem;color:var(--on-navy-muted);margin-top:18px}

/* Without the script: show both structures, hide the toggle that cannot work */
html:not(.js) .toggle{display:none}
html:not(.js) .repay__desc[hidden]{display:block!important}
html:not(.js) .repay__desc + .repay__desc{margin-top:12px}

/* Requirements — the sky band */
.sec--qualify{padding:calc(var(--sweep) + 76px) 0 108px;overflow:hidden;background:radial-gradient(46% 60% at 84% 40%,rgba(255,255,255,.6),transparent 72%),linear-gradient(180deg,#B3D5FF 0%,#D4E7FF 100%)}
.qualify__sw{position:absolute;left:0;bottom:0;width:100%;height:82%;max-width:none;pointer-events:none}
.qualify__tip{position:absolute;left:97.22%;top:calc(18% + 82% * .1129);width:34px;height:41px;margin:-39px 0 0 -17px;transform-origin:50% 96%;transform:rotate(14deg);pointer-events:none}
/* narrower desktops: the gutter cannot hold the tip, so the swoosh ends behind the card */
@media (max-width:1340px){.qualify__tip{display:none}.qualify__sw{width:92%}}
.req{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:72px;align-items:center;position:relative}
.req__copy > p:not(.kicker){font-size:1.1rem;margin-bottom:30px;max-width:27em;color:#22335A}
.req__panel{background:#fff;border-radius:26px;padding:6px 30px 8px;box-shadow:0 0 0 1px rgba(255,255,255,.8),0 44px 80px -36px rgba(16,48,130,.6)}
.req__meter{display:flex;align-items:center;gap:18px;padding:20px 0 18px;border-bottom:1px solid var(--line);font:700 .8rem/1 var(--font);color:var(--royal-ink);white-space:nowrap}
.req__segs{flex:1;display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.req__segs i{height:6px;border-radius:6px;background:#1C49BB;transform-origin:0 50%}
.req__segs i:nth-child(2){background:#2B5FD4}
.req__segs i:nth-child(3){background:#3D7DE8}
.req__segs i:nth-child(4){background:#6FAEF5}
.req__list{list-style:none;margin:0;padding:0}
.req__list li{display:grid;grid-template-columns:62px 1fr auto;gap:18px;align-items:center;padding:21px 0}
.req__list li + li{border-top:1px solid var(--line)}
.req__n{font-family:var(--font);font-weight:800;font-size:2.1rem;letter-spacing:-.04em;line-height:1;color:var(--royal-ink);background:var(--grad-ink);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.req__list h3{font-size:1.26rem;margin:0 0 3px}
.req__list p{margin:0;font-size:.96rem}
.req__check{width:40px;height:40px;border-radius:50%;background:var(--grad-btn);box-shadow:0 10px 18px -8px rgba(28,73,187,.7);display:grid;place-items:center}
.req__check svg{width:19px;height:19px;stroke:#fff;fill:none;stroke-width:2.8;stroke-linecap:round;stroke-linejoin:round}
/* scroll-in: a pulse runs down the four checks. Every frame keeps all content visible. */
.req__panel.is-in .req__segs i{animation:segIn .6s cubic-bezier(.2,.8,.3,1) both;animation-delay:calc(var(--n,0) * .2s + .1s)}
.req__segs i:nth-child(2){--n:1}.req__segs i:nth-child(3){--n:2}.req__segs i:nth-child(4){--n:3}
.req__panel.is-in .req__check{animation:checkPop .7s cubic-bezier(.2,.8,.3,1) both;animation-delay:calc(var(--i) * .2s + .15s)}
@keyframes segIn{0%{transform:none}45%{transform:scaleY(2.2)}100%{transform:none}}
@keyframes checkPop{0%{transform:scale(1)}45%{transform:scale(1.26);box-shadow:0 0 0 9px rgba(61,125,232,.2)}100%{transform:scale(1)}}

/* FAQ */
.sec--faq{padding-bottom:96px;overflow:clip}
.faq__sw{position:absolute;left:max(24px,calc(50vw - 596px));bottom:72px;width:min(34%,440px);height:auto;fill:#E3ECFC;pointer-events:none}
.faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:72px;align-items:start;position:relative}
.faq__copy h2{margin-bottom:0}
.ask{margin-top:32px;max-width:420px;display:grid;grid-template-columns:auto 1fr;gap:2px 16px;align-items:start;background:linear-gradient(140deg,#fff 30%,#EAF2FF 100%);border:1px solid var(--line-2);border-radius:22px;padding:24px;box-shadow:var(--shadow)}
.ask__icon{grid-row:span 2;width:46px;height:46px;border-radius:14px;background:var(--grad-btn);box-shadow:0 12px 20px -10px rgba(28,73,187,.7);display:grid;place-items:center}
.ask__icon svg{width:22px;height:22px;stroke:#fff;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.ask h3{font-size:1.14rem;margin:1px 0 4px}
.ask p{margin:0;font-size:.98rem;line-height:1.55}
.ask p a{color:var(--royal-ink);font-weight:600;text-underline-offset:3px;white-space:nowrap}
.ask .btn{grid-column:1/-1;justify-self:start;margin-top:20px}
.faq{display:grid;gap:12px}
.faq details{background:#fff;border:1px solid var(--line);border-radius:18px;transition:border-color .2s,box-shadow .2s}
.faq details[open]{border-color:var(--line-2);box-shadow:var(--shadow)}
.faq summary{list-style:none;cursor:pointer;padding:22px 24px;display:flex;justify-content:space-between;align-items:center;gap:18px;font-family:var(--font);font-weight:700;font-size:1.08rem;letter-spacing:-.01em;line-height:1.3;color:var(--ink);border-radius:18px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";width:34px;height:34px;flex:none;border-radius:50%;background:var(--ice-2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232256CC' stroke-width='2.6' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center/16px no-repeat;transition:transform .25s,background-color .2s}
.faq summary:hover::after{background-color:var(--line)}
.faq details[open] summary::after{transform:rotate(45deg);background-color:var(--royal-ink);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.6' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E")}
.faq details p{padding:0 70px 24px 24px;margin:0}

/* Contact card (straddles the footer edge) */
.final{background:linear-gradient(180deg,var(--ice) calc(100% - 120px),var(--navy) calc(100% - 120px));padding:0;position:relative}
.final__box{position:relative;overflow:hidden;border-radius:32px;padding:68px clamp(64px,9vw,130px) 68px 64px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px;align-items:end;color:#E8F1FF;background:radial-gradient(42% 70% at 100% 0%,rgba(133,191,255,.4),transparent 62%),linear-gradient(120deg,#12338C 0%,#1B49B8 55%,#2459CF 100%);box-shadow:0 50px 90px -40px rgba(10,34,110,.85)}
.final__sw{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.final__tip{position:absolute;left:calc(98% - 14px);top:calc(16% - 30px);width:34px;height:34px;pointer-events:none}
.final__lead,.final__body{position:relative}
.final h2{color:#fff;font-size:clamp(2.4rem,5.2vw,4.4rem);letter-spacing:-.04em;line-height:1;margin:0}
.final__body p{font-size:1.12rem;color:#E8F1FF;margin-bottom:22px;max-width:25em}
.final__email{display:inline-block;font-family:var(--font);font-weight:800;font-size:clamp(1.25rem,2.4vw,1.85rem);line-height:1.2;letter-spacing:-.02em;color:#fff;text-decoration:none;border-bottom:2px solid rgba(255,255,255,.45);padding-bottom:3px;margin:0 0 28px;overflow-wrap:anywhere;transition:border-color .15s}
.final__email:hover{border-color:#fff}
.final__actions{display:flex;flex-wrap:wrap;gap:12px}

/* ---------- Footer ---------- */
.foot{background:var(--navy);color:var(--on-navy-muted);padding:84px 0 22px;overflow:hidden;position:relative}
.foot::before{content:"";position:absolute;inset:0;background:radial-gradient(46% 50% at 84% 50%,rgba(61,125,232,.28),transparent 96%),radial-gradient(30% 40% at 0% 100%,rgba(28,73,187,.3),transparent 80%);pointer-events:none}
.foot > .wrap{position:relative}
.foot__grid{display:grid;grid-template-columns:1.2fr .65fr 1.05fr 1.65fr;gap:44px}
.foot__grid .logo{margin-bottom:20px}
.foot .logo .logo__mark{width:92px;height:54px}
.foot .logo__word{font-size:1.3rem}
.foot__brand > p{font-size:.98rem;max-width:20em}
.foot__label{font:700 .84rem/1 var(--font);color:var(--sky-2);margin:8px 0 18px}
.foot ul{list-style:none;padding:0;margin:0;display:grid;gap:11px;font-size:.96rem}
.foot a{color:#fff;text-decoration:none}
.foot a[href^="mailto:"]{white-space:nowrap}
.foot a:hover{color:var(--sky-2);text-decoration:underline;text-underline-offset:3px}
.foot__legal{font-size:.83rem;line-height:1.7}
.foot__legal p:not(.foot__label){margin:0 0 10px}
.foot__bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:26px 0;margin-top:56px;border-top:1px solid rgba(181,216,255,.18);font-size:.86rem}
.foot__mega{font-family:var(--font);font-weight:900;font-size:clamp(2rem,11.6vw,10.6rem);line-height:.86;letter-spacing:-.045em;text-align:center;white-space:nowrap;user-select:none;margin:6px 0 0;padding-bottom:.08em;color:transparent;background:linear-gradient(180deg,rgba(133,191,255,.4) 6%,rgba(61,125,232,.1) 92%);-webkit-background-clip:text;background-clip:text}
.foot--slim{padding-top:56px;padding-bottom:30px}
.foot--slim .foot__bottom{margin-top:36px;padding-bottom:0}
.foot--slim .logo{margin-bottom:0}

/* ---------- Legal ---------- */
.legal__head{position:relative;isolation:isolate;overflow:hidden;padding:146px 0 72px;color:var(--on-navy-muted);background:radial-gradient(24% 40% at 88% 30%,rgba(156,203,250,.3),transparent 72%),radial-gradient(50% 90% at 90% 0%,rgba(61,125,232,.55),transparent 66%),linear-gradient(180deg,#071128,#0A1840)}
.legal__head .wrap,.legal__body{max-width:860px}
.legal__head h1{color:#fff;font-size:clamp(2.4rem,5vw,3.8rem);margin-bottom:14px}
.legal__date{margin:0;font-weight:500}
.legal__sw{position:absolute;z-index:-1;right:max(24px,calc(50vw - 596px));bottom:34px;width:min(30%,330px);height:auto;overflow:visible;pointer-events:none}
.legal__body{padding-top:64px;padding-bottom:110px}
.legal__body > p:first-child{font-size:1.15rem;color:var(--ink)}
.legal__body h2{font-size:1.45rem;letter-spacing:-.02em;margin:2.2em 0 .6em;display:flex;align-items:center;gap:12px}
.legal__body h2::before{content:"";width:12px;height:12px;flex:none;background:var(--grad-ink);clip-path:polygon(100% 0,0 30%,47% 53%,70% 100%)}
.legal__body strong{color:var(--ink)}
.legal__body ul{padding-left:22px}
.legal__body li{margin-bottom:.5em}
.legal__body li::marker{color:var(--royal)}
.legal__body a{color:var(--royal-ink);font-weight:600;text-underline-offset:3px}

/* ---------- Responsive ---------- */
@media (min-width:1021px) and (max-height:800px){
  /* short laptop screens: tighten the hero so the stats card starts inside the first screen */
  .hero{padding-top:116px}
  .hero__sweep{top:130px}
  .tag{margin-bottom:20px}
  .hero h1{font-size:clamp(2.6rem,5.6vw,4.3rem);margin-bottom:20px}
  .hero__sub{font-size:1.12rem;margin-bottom:24px}
  .hero__proof{margin-top:22px}
  .quiz{margin-top:54px}
  .stats{margin-top:44px}
}
@media (max-width:1180px){
  .navbar__mail{display:none}
  .hero__grid{grid-template-columns:minmax(0,1fr) 430px;gap:44px}
  .chip{padding:14px;font-size:.92rem}
  .repay,.req,.faq-grid{gap:52px}
  .timeline li{padding:38px 22px 24px}
  .timeline p{min-height:calc(1.55em * 5)}
  .timeline li:last-child .t-time{font-size:2.15rem}
  .b--row{gap:22px;padding:26px}
  .offer{width:176px}
  .grow{width:140px}
}
@media (max-width:1020px){
  .navbar__links{position:absolute;top:calc(100% + 8px);left:0;right:0;flex-direction:column;gap:0;background:#fff;border-radius:20px;padding:8px;display:none;margin:0;box-shadow:0 0 0 1px rgba(13,38,94,.08),0 30px 60px -24px rgba(7,17,40,.55);max-height:calc(100vh - 100px);max-height:calc(100dvh - 100px);overflow-y:auto}
  .navbar__links.is-open{display:flex}
  .navbar__links a{padding:14px 16px;border-radius:12px;font-size:1.02rem;font-weight:600;color:var(--ink)}
  .navbar--legal .navbar__links a{padding:10px 13px;font-size:.94rem;font-weight:500;color:#33435F}
  .burger{display:inline-flex}
  .navbar .btn{margin-left:auto}
  .navbar--legal .navbar__links{margin-left:auto}
  .navbar--legal .btn{margin-left:0}
  .hero__grid{grid-template-columns:1fr;gap:20px}
  /* phone and tablet: a compact, complete swoosh sits between the proof points and the quiz */
  .hero__sweep{display:none}
  .hero__art{background:
    radial-gradient(120% 36% at 100% 0%,rgba(61,125,232,.6),transparent 70%),
    radial-gradient(110% 32% at 0% 66%,rgba(28,73,187,.5),transparent 72%),
    linear-gradient(180deg,#071128 0%,#0A1840 100%)}
  .hero__copy{position:relative}
  .hero__mini{display:block;position:absolute;right:0;top:66px;width:clamp(210px,34vw,340px);height:auto;overflow:visible}
  .hero__grid{gap:44px}
  .quiz{margin-top:0}
  #quiz{scroll-margin-top:92px}
  .sec__head,.repay,.req,.faq-grid{grid-template-columns:minmax(0,1fr);gap:26px}
  .sec__head{margin-bottom:44px}
  .sec__head:not(.sec__head--stack) > p:not(.kicker){padding-left:18px}
  .sec__head--stack{max-width:none}
  .sec__head--stack > p:not(.kicker){max-width:30em}
  .repay,.req,.faq-grid{gap:44px}
  .ask{max-width:520px}
  .faq__sw{display:none}
  /* timeline goes vertical */
  .tl{margin-top:44px}
  .tl__curve{display:none}
  .timeline{grid-template-columns:1fr;gap:16px;padding-left:58px}
  .timeline::before{content:"";position:absolute;left:17px;top:24px;bottom:24px;width:4px;border-radius:4px;background:linear-gradient(180deg,#1C49BB,#3D7DE8 55%,#85BFFF)}
  .timeline li{margin-top:0;padding:24px 26px 24px;display:block;background:#fff}
  .timeline li::before{left:-60px;top:22px}
  .timeline li:last-child::after{top:26px;right:22px;width:120px;transform:none}
  .t-body{margin-top:8px;padding-top:0}
  .timeline p{min-height:0}
  .timeline li:last-child .t-time{font-size:2.15rem}
  .bento{grid-template-columns:1fr 1fr}
  .b--big{grid-row:span 1}
  .b--row{gap:30px;padding:30px}
  .offer{width:220px}
  .grow{width:170px}
  .band{background:radial-gradient(130% 34% at 100% 66%,rgba(61,125,232,.42),transparent 72%),radial-gradient(110% 26% at 0% 22%,rgba(28,73,187,.3),transparent 72%),var(--navy)}
  .foot::before{background:radial-gradient(120% 40% at 100% 60%,rgba(61,125,232,.26),transparent 80%)}
  .qualify__sw{height:60%}
  .qualify__tip{display:none}
  .final__box{grid-template-columns:1fr;padding:56px 44px;gap:26px;align-items:start}
  .final__sw{inset:auto auto 0 0;width:92%;height:210px;opacity:.7}
  .final__tip{left:calc(90.2% - 14px);top:auto;bottom:164px}
  .foot__grid{grid-template-columns:1fr 1fr}
  .foot__legal,.foot__brand{grid-column:1/-1}
}
@media (max-width:820px){
  .sec{padding:84px 0}
  .sec--why{padding-bottom:calc(76px + var(--sweep))}
  .band{padding:64px 0 76px}
  .sec--qualify{padding:calc(var(--sweep) + 64px) 0 84px}
  .stats{grid-template-columns:1fr 1fr}
  .stats > div:nth-child(3)::before{display:none}
  .stats > div:nth-child(n+3)::after{content:"";position:absolute;left:22px;right:22px;top:0;height:1px;background:var(--line)}
  .hero__art{bottom:120px}
}
@media (max-width:600px){
  .wrap{padding:0 16px}
  body{font-size:16px}
  .nav-shell{padding:0 10px;top:10px}
  .navbar{height:60px;padding:0 8px 0 14px;gap:8px;border-radius:18px}
  .logo{gap:9px}
  .logo .logo__mark{width:62px;height:36px}
  .logo__word{font-size:.98rem;letter-spacing:.12em}
  .burger{width:42px;height:42px}
  .hero{padding-top:108px}
  .hero h1{font-size:clamp(2.2rem,11.2vw,2.9rem)}
  .tag{font-size:.78rem;margin-bottom:22px}
  .hero__sub{font-size:1.06rem}
  .hero__actions .btn{flex:1 1 100%}
  .hero__proof{gap:10px 20px;margin-top:26px}
  .hero__grid{gap:20px}
  .hero__mini{position:static;width:min(100%,460px);margin:14px 0 0 auto}
  .quiz{padding:22px 20px;border-radius:22px}
  .quiz h3{font-size:1.3rem}
  .quiz__segs span[data-short]{font-size:0}
  .quiz__segs span[data-short]::before{content:attr(data-short);font-size:.75rem}
  .quiz__segs b{font-size:.76rem}
  .chips{grid-template-columns:1fr}
  .chip{min-height:54px;padding:14px 16px}
  .stats{margin-top:44px;border-radius:20px;padding:4px 0}
  .stats > div{padding:18px 20px}
  .stats > div + div::before{top:18px;bottom:18px}
  .stats dt{font-size:.8rem}
  .stats dd{font-size:1.55rem}
  .industries{padding-top:40px}
  .ticker__group span{font-size:1.08rem;gap:32px;padding:0 16px}
  .sec{padding:68px 0}
  .sec--speed{padding-top:64px}
  .sec--why{padding-bottom:calc(60px + var(--sweep))}
  .band{padding:52px 0 64px}
  .sec--qualify{padding:calc(var(--sweep) + 52px) 0 68px}
  .sec__head{margin-bottom:34px}
  .timeline{padding-left:50px;gap:14px}
  .timeline::before{left:15px}
  .timeline li{padding:22px 20px 20px;border-radius:18px}
  .timeline li::before{left:-52px;top:18px;width:36px;height:36px;box-shadow:0 0 0 5px rgba(61,125,232,.16)}
  .timeline li:last-child::after{width:96px;top:22px;right:16px}
  .t-time{font-size:1.5rem}
  .timeline li:last-child .t-time{font-size:1.8rem}
  .bento{grid-template-columns:1fr;grid-auto-rows:auto;gap:14px}
  .b--big,.b--wide{grid-column:span 1}
  .b{padding:24px;border-radius:20px}
  .b--big{padding:24px 24px 26px}
  .b--row{flex-direction:column;align-items:flex-start;padding:24px;gap:20px}
  .offer{width:100%;max-width:260px}
  .grow{width:150px}
  .b:not(.b--row) > .b__icon + h3{margin-top:26px}
  .b__num{padding-bottom:22px}
  .b__label{margin-bottom:34px}
  .b__sw{width:170px;top:12px;right:14px}
  .chart{--g:8px;padding:22px 16px 18px;border-radius:22px}
  .chart__bars{height:236px;padding-top:36px;background:repeating-linear-gradient(0deg,transparent 0 49px,rgba(181,216,255,.1) 49px 50px)}
  .chart__line{height:calc(100% - 36px)}
  .bar{border-radius:7px 7px 0 0}
  .bar::after{width:10px;height:10px;margin:0 0 -5px -5px;border-width:2.5px}
  .bar__tag{padding:5px 6px;letter-spacing:-.01em}
  .toggle button{padding:11px 16px}
  .req__panel{padding:2px 18px 4px;border-radius:22px}
  .req__meter{gap:12px;padding:18px 0 16px}
  .req__list li{grid-template-columns:40px 1fr auto;gap:12px;padding:18px 0}
  .req__n{font-size:1.5rem}
  .req__list h3{font-size:1.1rem}
  .req__list p{font-size:.93rem}
  .req__check{width:32px;height:32px}
  .req__check svg{width:16px;height:16px}
  .ask{padding:20px;border-radius:20px;margin-top:26px}
  .ask .btn{justify-self:stretch}
  .faq summary{padding:18px;font-size:1.02rem}
  .faq details p{padding:0 18px 20px}
  .final__box{padding:40px 24px 36px;border-radius:26px}
  .final__actions .btn{flex:1 1 100%}
  .foot{padding-top:60px;padding-bottom:16px}
  .foot__grid{grid-template-columns:1fr;gap:32px}
  .foot--slim{padding-top:44px;padding-bottom:26px}
  .navbar--legal .btn{display:none}
  .navbar--legal .navbar__links a{padding:10px 9px}
  .legal__head{padding:112px 0 96px}
  .legal__sw{width:150px;bottom:18px;right:16px}
  .legal__body{padding-top:44px;padding-bottom:76px}
}
@media (max-width:380px){
  .btn--lg{padding-left:20px;padding-right:20px}
  .final__email{font-size:1.1rem}
  .navbar .btn{display:none}
  .burger{margin-left:auto}
  .stats dd{font-size:1.35rem}
  .stats > div{padding:16px 14px}
  .quiz{padding:20px 16px}
  .req__meter{font-size:.75rem;gap:10px}
  .req__list li{grid-template-columns:1fr auto}
  .req__n{display:none}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  /* no marquee: the industries become a static, wrapped list so every one stays readable */
  .ticker{-webkit-mask-image:none;mask-image:none;overflow:visible;max-width:var(--wrap);margin:0 auto;padding:8px 12px 10px}
  .ticker__track{display:block;width:auto;transform:none}
  .ticker__group{flex-wrap:wrap;justify-content:center;row-gap:14px}
  .ticker__group[aria-hidden="true"]{display:none}
  .ticker__group span{gap:24px;padding:0 12px}
  .ticker__group span:last-child::after{display:none}
}
@media (forced-colors:active){
  /* gradient-filled text falls back to plain text when the system replaces colours */
  .hl,.hl-ink,.stats dd,.t-time,.b__num,.req__n,.quiz__amount{background:none!important;-webkit-text-fill-color:currentColor!important}
  .foot__mega{display:none}
}
