:root{--dark:#0e0a06;--dark-2:#14100a;--dark-3:#1d1812;--dark-card:#1a160f;--dark-card-2:#221c14;--cream:#f5efe4;--cream-2:#ede5d4;--cream-3:#e3d9c3;--cream-card:#f9f4ea;--cream-ink:#1a140d;--cream-ink-2:#3a2d1f;--cream-ink-3:#6b5944;--ink:#ede4d3;--ink-strong:#ffffff;--ink-dim:#b5a78f;--ink-mute:#786853;--ink-deep:#4a3f30;--rust:#c08a1c;--rust-bright:#e6a52a;--rust-deep:#8a5410;--rust-glow:rgba(230,165,42,0.4);--gold:#e6a52a;--gold-bright:#f0b840;--gold-soft:rgba(230,165,42,0.15);--amber:#c87f1a;--amber-deep:#8a5410;--line-dark:#2c2418;--line-dark-bright:#3d321f;--line-cream:#d6c8a8;--line-cream-2:#c4b48f;--max:1280px;--max-narrow:1100px;--max-prose:720px;--r-sm:6px;--r:10px;--r-lg:16px;--r-xl:22px;--font-display:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-body:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,"SF Mono",monospace;--space-section:clamp(64px,10vw,160px)}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}*::selection{background:var(--rust);color:var(--cream)}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--dark);color:var(--ink);font-family:var(--font-body);font-size:16px;line-height:1.6;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;letter-spacing:-0.005em;position:relative}body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:1;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' /><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.4 0' /></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='0.10'/></svg>");mix-blend-mode:overlay}img,video,svg{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--rust);outline-offset:3px}h1,h2,h3,h4,h5{font-family:var(--font-display);font-weight:700;line-height:0.95;letter-spacing:-0.025em;color:var(--ink-strong)}h1{font-size:clamp(3.5rem,11vw,9rem);font-weight:700;letter-spacing:-0.04em;line-height:0.92}h2{font-size:clamp(2.5rem,6vw,5rem);font-weight:700;letter-spacing:-0.03em;line-height:0.96}h3{font-size:clamp(1.6rem,3vw,2.4rem);font-weight:600;letter-spacing:-0.02em}h4{font-family:var(--font-body);font-size:1rem;font-weight:600;line-height:1.3;letter-spacing:-0.01em}em{font-style:normal;color:var(--rust-bright);font-weight:inherit}.italic{font-style:normal}.rust{color:var(--rust-bright)}.gold{color:var(--gold-bright)}p{color:var(--ink-dim);line-height:1.65;font-weight:400}.container{max-width:var(--max);margin:0 auto;padding:0 32px;position:relative;z-index:2}.container-narrow{max-width:var(--max-narrow);margin:0 auto;padding:0 32px;position:relative;z-index:2}.eyebrow{display:inline-flex;align-items:center;gap:14px;font-family:var(--font-body);font-size:0.74rem;font-weight:600;text-transform:uppercase;letter-spacing:0.22em;color:var(--rust-bright);margin-bottom:28px}.eyebrow::before{content:"";width:32px;height:1px;background:currentColor}.eyebrow.center{justify-content:center}.eyebrow .num{font-family:var(--font-mono);font-size:0.7rem;color:var(--ink-mute);font-weight:500}.skip-link{position:absolute;left:-9999px;top:0;background:var(--rust);color:var(--cream);padding:12px 20px;z-index:9999;font-weight:700}.skip-link:focus{left:16px;top:16px}.site-header{position:relative;z-index:100;background:var(--dark);border-bottom:1px solid var(--line-dark)}.nav{display:flex;align-items:center;justify-content:space-between;padding:18px 32px;max-width:var(--max);margin:0 auto}.nav-brand{font-family:var(--font-display);font-size:1.5rem;font-weight:700;letter-spacing:-0.02em;color:var(--ink-strong);display:flex;align-items:center;gap:12px}.nav-brand-mark{width:42px;height:42px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.nav-brand-mark img{width:100%;height:100%;object-fit:contain;display:block;background:transparent}.nav-brand .ampersand{color:var(--rust-bright);font-style:normal}.nav-links{display:flex;gap:36px;list-style:none;align-items:center}.nav-links a{font-size:0.92rem;color:var(--ink-dim);font-weight:500;position:relative;padding:4px 0;transition:color 0.2s}.nav-links a:hover{color:var(--ink-strong)}.nav-cta{padding:12px 22px !important;background:var(--rust) !important;color:var(--cream) !important;font-weight:600 !important;font-size:0.9rem !important;border-radius:100px;transition:all 0.2s}.nav-cta:hover{background:var(--rust-bright) !important;box-shadow:0 0 32px var(--rust-glow);transform:translateY(-1px)}.nav-toggle{display:none;background:transparent;border:1px solid var(--line-dark-bright);color:var(--ink);padding:8px 14px;cursor:pointer;font-family:inherit;font-size:0.85rem;font-weight:500;border-radius:6px}@media (max-width:900px){.nav-links{display:none}.nav-toggle{display:block}.nav-links.open{display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:var(--dark-2);padding:24px;border-bottom:1px solid var(--line-dark);gap:18px;align-items:flex-start}.nav-links.open a{color:var(--ink)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:16px 32px;font-family:var(--font-body);font-weight:600;font-size:0.95rem;transition:all 0.25s ease;cursor:pointer;border:none;letter-spacing:-0.005em;border-radius:100px;text-align:center;white-space:nowrap}.btn-primary{background:var(--rust);color:var(--cream);box-shadow:0 4px 24px var(--rust-glow),inset 0 1px 0 rgba(255,255,255,0.14);position:relative;overflow:hidden}.btn-primary::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,0.18) 50%,transparent 70%);transform:translateX(-100%);transition:transform 0.7s}.btn-primary:hover{background:var(--rust-bright);color:var(--cream) !important;box-shadow:0 10px 36px var(--rust-glow),inset 0 1px 0 rgba(255,255,255,0.2);transform:translateY(-2px)}.btn-primary:hover::before{transform:translateX(100%)}.btn-secondary{background:transparent;color:var(--ink);border:1px solid var(--line-dark-bright)}.btn-secondary:hover{border-color:var(--rust-bright);color:var(--rust-bright) !important;background:rgba(230,165,42,0.06)}.btn-on-cream{background:var(--cream-ink);color:var(--cream)}.btn-on-cream:hover{background:var(--rust);color:var(--cream) !important}.btn-ghost{background:transparent;color:var(--ink);border:1px solid var(--line-dark-bright)}.btn-ghost:hover{background:rgba(255,255,255,0.05);border-color:var(--rust-bright);color:var(--rust-bright) !important}.btn-block{width:100%}.btn-lg{padding:19px 38px;font-size:1rem}.btn-arrow{transition:transform 0.2s;display:inline-block;font-size:1.05em}.btn:hover .btn-arrow{transform:translateX(4px)}.trust-cluster{display:inline-flex;align-items:center;gap:14px;font-size:0.88rem;color:var(--ink-dim)}.avatars{display:flex;align-items:center}.avatars > *{width:36px;height:36px;border-radius:50%;border:2px solid var(--dark);margin-left:-10px;display:inline-flex;align-items:center;justify-content:center;font-size:0.7rem;font-weight:700;color:var(--cream);font-family:var(--font-body);box-shadow:0 4px 8px rgba(0,0,0,0.4)}.avatars > *:first-child{margin-left:0}.avatars > *:nth-child(1){background:linear-gradient(135deg,#ee4827,#8a5410)}.avatars > *:nth-child(2){background:linear-gradient(135deg,#f0b840,#c87f1a)}.avatars > *:nth-child(3){background:linear-gradient(135deg,#6b9bd1,#2d4f7d)}.avatars > *:nth-child(4){background:linear-gradient(135deg,#c87f1a,#8a5410)}.avatars > *:nth-child(5){background:var(--cream-ink);color:var(--cream)}.stars{color:var(--rust-bright);letter-spacing:2px;font-size:0.95rem}section{padding:var(--space-section) 0;position:relative;overflow:hidden}.section-cream{background:var(--cream);color:var(--cream-ink)}.section-cream h1,.section-cream h2,.section-cream h3{color:var(--cream-ink)}.section-cream p{color:var(--cream-ink-2)}.section-cream em{color:var(--rust)}.section-cream .eyebrow{color:var(--rust)}.section-eyebrow{display:inline-flex;align-items:center;gap:14px;font-family:var(--font-body);font-size:0.74rem;font-weight:600;text-transform:uppercase;letter-spacing:0.22em;color:var(--rust-bright);margin-bottom:28px}.section-eyebrow .num{font-family:var(--font-mono);font-size:0.7rem;color:var(--ink-mute);font-weight:500;padding:3px 8px;border:1px solid var(--line-dark-bright);border-radius:4px}.section-cream .section-eyebrow .num{color:var(--cream-ink-3);border-color:var(--line-cream-2)}.section-eyebrow.center{justify-content:center}.section-title{font-family:var(--font-display);font-size:clamp(2.5rem,6vw,5rem);font-weight:800;letter-spacing:-0.04em;line-height:0.96;margin-bottom:28px;color:var(--ink-strong)}.section-cream .section-title{color:var(--cream-ink)}.section-title em{color:var(--rust-bright);font-style:normal;font-weight:inherit}.section-cream .section-title em{color:var(--rust)}.section-lede{font-size:1.1rem;color:var(--ink-dim);line-height:1.65;max-width:660px;margin-bottom:56px;font-family:var(--font-body)}.section-cream .section-lede{color:var(--cream-ink-2)}.text-center{text-align:center}.text-center .section-lede{margin-left:auto;margin-right:auto}.fade-up{opacity:0;transform:translateY(28px);transition:opacity 0.9s cubic-bezier(0.2,0.8,0.2,1),transform 0.9s cubic-bezier(0.2,0.8,0.2,1)}.fade-up.in-view{opacity:1;transform:translateY(0)}.fade-up-d1{transition-delay:0.1s}.fade-up-d2{transition-delay:0.2s}.fade-up-d3{transition-delay:0.3s}.fade-up-d4{transition-delay:0.4s}.hero{position:relative;min-height:680px;height:calc(100vh - 80px);max-height:920px;overflow:hidden;display:flex;align-items:flex-end;background:var(--dark)}.hero-video-wrap{position:absolute;inset:0;z-index:0;overflow:hidden;background:var(--dark)}.hero-video-wrap video,.hero-video-wrap img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.hero-orb-fallback{position:absolute;inset:0;background:var(--dark)}.hero-orb-fallback::before,.hero-orb-fallback::after{content:"";position:absolute;border-radius:50%;filter:blur(80px)}.hero-orb-fallback::before{width:700px;height:700px;background:radial-gradient(circle,rgba(230,165,42,0.55) 0%,transparent 70%);top:-10%;left:-8%;animation:orb-drift-1 18s ease-in-out infinite alternate}.hero-orb-fallback::after{width:600px;height:600px;background:radial-gradient(circle,rgba(230,165,42,0.32) 0%,transparent 70%);bottom:-15%;right:-10%;animation:orb-drift-2 22s ease-in-out infinite alternate}@keyframes orb-drift-1{0%{transform:translate(0,0) scale(1)}100%{transform:translate(60px,80px) scale(1.1)}}@keyframes orb-drift-2{0%{transform:translate(0,0) scale(1)}100%{transform:translate(-80px,-60px) scale(1.15)}}.hero-overlay{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(14,10,6,0.30) 0%,rgba(14,10,6,0.45) 50%,rgba(14,10,6,0.95) 100%)}.hero-inner{position:relative;z-index:2;width:100%;padding:56px 32px 72px;max-width:var(--max);margin:0 auto}.hero-meta{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:28px;font-family:var(--font-mono);font-size:0.75rem;color:var(--ink-mute);text-transform:uppercase;letter-spacing:0.16em;border-top:1px solid var(--line-dark-bright);padding-top:18px}.hero-meta-l{display:flex;align-items:center;gap:10px}.hero-meta-dot{width:8px;height:8px;border-radius:50%;background:var(--rust-bright);box-shadow:0 0 12px var(--rust-glow);animation:pulse 2s infinite}@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.6;transform:scale(0.85)}}.hero h1{font-family:var(--font-display);font-size:clamp(2.8rem,9vw,8rem);font-weight:800;letter-spacing:-0.05em;line-height:0.95;color:var(--ink-strong);margin-bottom:20px}.hero h1 .it{color:var(--rust-bright);font-weight:inherit}.hero-sub{font-family:var(--font-body);font-size:clamp(1.05rem,1.6vw,1.25rem);line-height:1.55;color:var(--ink-dim);max-width:660px;margin:0 0 40px}.hero-cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:22px}@media (max-width:600px){.hero{min-height:640px}.hero-inner{padding-top:90px}.hero-meta{display:none}}.ticker-strip-wrap{background:var(--cream);color:var(--cream-ink);border-top:1px solid var(--line-cream-2);border-bottom:1px solid var(--line-cream-2);overflow:hidden;position:relative;z-index:5}.ticker-strip{display:flex;white-space:nowrap;animation:scroll-left 38s linear infinite}.ticker-track{display:inline-flex;align-items:center;gap:64px;padding:24px 32px 24px 0;font-family:var(--font-display);font-size:1.4rem;font-weight:700;letter-spacing:-0.015em;white-space:nowrap;flex-shrink:0}.ticker-track .item{display:inline-flex;align-items:center;gap:14px;color:var(--cream-ink)}.ticker-track .item .it{color:var(--rust-bright);font-weight:inherit}.ticker-track .dot{color:var(--rust);font-size:0.8rem;opacity:0.8}@keyframes scroll-left{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}.ticker-strip-wrap.dark{background:var(--dark-2);color:var(--ink);border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark)}.ticker-strip-wrap.dark .ticker-track .item{color:var(--ink)}.ticker-strip-wrap.dark .ticker-track .item .it,.ticker-strip-wrap.dark .ticker-track .item .rust{color:var(--rust-bright)}.ticker-strip-wrap.dark .ticker-track .dot{color:var(--rust-bright);opacity:0.6}.phases{background:var(--dark)}.phases-list{display:flex;flex-direction:column;gap:0}.phase-row{display:grid;grid-template-columns:100px 1fr 1fr;gap:56px;padding:64px 0;border-top:1px solid var(--line-dark-bright);align-items:center}.phase-row:last-child{border-bottom:1px solid var(--line-dark-bright)}.phase-num{font-family:var(--font-display);font-size:clamp(3rem,6vw,5.5rem);font-weight:700;font-style:normal;color:var(--rust-bright);line-height:1;letter-spacing:-0.03em}.phase-content h3{font-family:var(--font-display);font-size:clamp(1.8rem,3.5vw,2.6rem);letter-spacing:-0.025em;margin-bottom:14px;color:var(--ink-strong);font-weight:700}.phase-content p{font-size:1rem;line-height:1.65;color:var(--ink-dim);max-width:460px}.phase-visual{height:240px;border-radius:var(--r-lg);position:relative;overflow:hidden;border:1px solid var(--line-dark)}.phase-visual.v1{background:linear-gradient(135deg,var(--dark-card-2),var(--dark-card))}.phase-visual.v2{background:linear-gradient(135deg,var(--dark-card-2),var(--dark-card))}.phase-visual.v3{background:linear-gradient(135deg,var(--dark-card-2),var(--dark-card))}.phase-visual svg{position:absolute;inset:0;width:100%;height:100%;padding:28px}@media (max-width:880px){.phase-row{grid-template-columns:1fr;gap:24px;padding:40px 0}.phase-num{font-size:3rem}.phase-visual{height:200px}}.quote-break{background:var(--cream);color:var(--cream-ink);text-align:center;padding:clamp(80px,10vw,130px) 0;position:relative}.quote-break .quote{font-family:var(--font-display);font-size:clamp(2rem,5vw,3.6rem);letter-spacing:-0.025em;line-height:1.1;font-weight:700;color:var(--cream-ink);max-width:1000px;margin:0 auto 32px}.quote-break .quote em{color:var(--rust);font-style:normal}.quote-break .quote-attribution{font-family:var(--font-mono);font-size:0.78rem;color:var(--cream-ink-3);text-transform:uppercase;letter-spacing:0.18em}.versus{background:var(--dark)}.versus-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:56px;align-items:start}.versus-bad-col{padding-right:24px;padding-top:64px;opacity:0.85}.versus-bad-col h3{font-family:var(--font-display);font-size:1.8rem;font-weight:700;margin-bottom:28px;color:var(--ink-dim);font-style:normal}.versus-bad-col ul{list-style:none;padding:0}.versus-bad-col li{padding:14px 0;border-top:1px solid var(--line-dark);font-size:0.95rem;color:var(--ink-mute);display:flex;align-items:flex-start;gap:14px}.versus-bad-col li:first-child{border-top:none;padding-top:0}.versus-bad-col li::before{content:"—";color:var(--ink-deep);flex-shrink:0}.versus-good-col{background:linear-gradient(180deg,var(--dark-card) 0%,var(--dark-card-2) 100%);border:1px solid var(--line-dark-bright);border-radius:var(--r-xl);padding:48px 44px;position:relative;overflow:hidden}.versus-good-col::before{content:"";position:absolute;inset:0;background:radial-gradient(at 0% 0%,rgba(230,165,42,0.20) 0px,transparent 50%),radial-gradient(at 100% 100%,rgba(230,165,42,0.15) 0px,transparent 50%);pointer-events:none}.versus-good-col > *{position:relative;z-index:1}.versus-good-col h3{font-family:var(--font-display);font-size:2.4rem;font-weight:700;margin-bottom:28px;color:var(--ink-strong);letter-spacing:-0.025em}.versus-good-col h3 em{color:var(--rust-bright);font-style:normal}.versus-good-col ul{list-style:none;padding:0}.versus-good-col li{padding:14px 0;border-top:1px solid var(--line-dark-bright);font-size:0.97rem;color:var(--ink);display:flex;align-items:flex-start;gap:14px;line-height:1.5}.versus-good-col li:first-child{border-top:none;padding-top:0}.versus-good-col li::before{content:"→";color:var(--rust-bright);font-weight:700;flex-shrink:0}@media (max-width:880px){.versus-grid{grid-template-columns:1fr;gap:40px}.versus-bad-col{padding:0}}.campuses{background:var(--dark)}.bento{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:230px;gap:16px}.bento-card{position:relative;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line-dark-bright);background:linear-gradient(180deg,var(--dark-card) 0%,var(--dark-card-2) 100%);transition:all 0.4s cubic-bezier(0.2,0.8,0.2,1);display:flex;flex-direction:column;cursor:pointer;padding:28px;justify-content:space-between}.bento-card:hover{transform:translateY(-4px);border-color:var(--rust);box-shadow:0 24px 48px rgba(0,0,0,0.6),0 0 80px rgba(230,165,42,0.10)}.bento-card .glow{position:absolute;inset:0;pointer-events:none;z-index:0;opacity:0.7;transition:opacity 0.4s}.bento-card:hover .glow{opacity:1}.bento-card .glow.g1{background:radial-gradient(circle at 80% 20%,rgba(230,165,42,0.30),transparent 60%)}.bento-card .glow.g2{background:radial-gradient(circle at 20% 80%,rgba(230,165,42,0.28),transparent 60%)}.bento-card .glow.g3{background:radial-gradient(circle at 50% 50%,rgba(155,79,209,0.25),transparent 60%)}.bento-card .glow.g4{background:radial-gradient(circle at 70% 30%,rgba(60,144,180,0.28),transparent 60%)}.bento-card .glow.g5{background:radial-gradient(circle at 30% 70%,rgba(220,108,28,0.30),transparent 60%)}.bento-card .glow.g6{background:radial-gradient(circle at 60% 40%,rgba(20,184,166,0.25),transparent 60%)}.bento-card .glow.g7{background:radial-gradient(circle at 80% 80%,rgba(124,58,237,0.25),transparent 60%)}.bento-card .glow.g8{background:radial-gradient(circle at 30% 30%,rgba(244,63,94,0.26),transparent 60%)}.bento-card .glow.g9{background:radial-gradient(circle at 50% 80%,rgba(34,197,94,0.25),transparent 60%)}.bento-card > *{position:relative;z-index:1}.bento-card .bento-num{font-family:var(--font-mono);font-size:0.72rem;color:var(--ink-mute);letter-spacing:0.14em;margin-bottom:8px}.bento-card h3{font-family:var(--font-display);font-size:clamp(1.4rem,2.4vw,1.9rem);letter-spacing:-0.02em;font-weight:700;color:var(--ink-strong);line-height:1.05;margin-bottom:12px}.bento-card p{font-size:0.92rem;line-height:1.55;color:var(--ink-dim);margin-bottom:0}.bento-card .bento-link{font-family:var(--font-body);font-size:0.78rem;font-weight:600;text-transform:uppercase;letter-spacing:0.16em;color:var(--rust-bright);display:inline-flex;align-items:center;gap:8px;margin-top:14px}.bento-card .bento-link::after{content:"→";transition:transform 0.2s}.bento-card:hover .bento-link::after{transform:translateX(4px)}.bento-card .bento-decor{position:absolute;pointer-events:none;z-index:0}.bento-card.b-2x2{grid-column:span 3;grid-row:span 2;padding:42px}.bento-card.b-2x1{grid-column:span 3}.bento-card.b-3x1{grid-column:span 2}.bento-card.b-1x1{grid-column:span 2}.bento-card.b-feature{grid-column:span 6;padding:48px}.bento-card.b-2x2 h3{font-size:clamp(1.8rem,3vw,2.6rem)}.bento-card.b-feature h3{font-size:clamp(2rem,3.5vw,2.8rem)}@media (max-width:1100px){.bento{grid-template-columns:repeat(4,1fr)}.bento-card.b-2x2,.bento-card.b-2x1{grid-column:span 4}.bento-card.b-3x1,.bento-card.b-1x1{grid-column:span 2}}@media (max-width:640px){.bento{grid-template-columns:1fr;grid-auto-rows:auto}.bento-card{grid-column:span 1 !important;min-height:220px}}.showcase{background:var(--dark-2);color:var(--ink);position:relative;border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark)}.showcase-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:80px;align-items:center}.showcase-text h2{color:var(--ink-strong);margin-bottom:24px}.showcase-text h2 em{color:var(--rust-bright)}.showcase-text p{font-size:1.05rem;line-height:1.65;color:var(--ink-dim)}.showcase-features{list-style:none;padding:0;margin-top:36px}.showcase-features li{padding:18px 0;border-top:1px solid var(--line-dark);display:grid;grid-template-columns:32px 1fr;gap:18px;align-items:start}.showcase-features li:first-child{border-top:1px solid var(--line-dark-bright)}.showcase-features li:last-child{border-bottom:1px solid var(--line-dark)}.showcase-features .num{font-family:var(--font-mono);font-size:0.78rem;color:var(--ink-mute);letter-spacing:0.12em;padding-top:4px}.showcase-features strong{font-family:var(--font-display);font-size:1.3rem;font-weight:700;letter-spacing:-0.015em;color:var(--ink-strong);display:block;margin-bottom:4px}.showcase-features p{font-size:0.94rem;color:var(--ink-dim);margin:0;line-height:1.55}.showcase-visual{position:relative;aspect-ratio:1 / 1.05;display:flex;align-items:center;justify-content:center}.showcase-visual::before{content:"";position:absolute;width:70%;height:70%;border-radius:50%;background:radial-gradient(circle,rgba(230,165,42,0.16),transparent 70%);filter:blur(40px);z-index:0;top:15%;left:15%}.showcase-visual svg{position:relative;z-index:1;width:100%;height:100%;filter:drop-shadow(0 30px 60px rgba(26,20,13,0.15))}@media (max-width:880px){.showcase-grid{grid-template-columns:1fr;gap:56px}}.testimonials{background:var(--dark);padding-bottom:calc(var(--space-section) - 40px)}.testimonials-marquee{position:relative;overflow:hidden;margin:0 -32px;padding:0 0 24px}.testimonials-marquee::before,.testimonials-marquee::after{content:"";position:absolute;top:0;bottom:0;width:100px;z-index:3;pointer-events:none}.testimonials-marquee::before{left:0;background:linear-gradient(90deg,var(--dark),transparent)}.testimonials-marquee::after{right:0;background:linear-gradient(-90deg,var(--dark),transparent)}.testimonials-track{display:flex;gap:20px;animation:scroll-left 56s linear infinite}.testimonials-track:hover{animation-play-state:paused}.testimonial-card{flex-shrink:0;width:380px;padding:32px 30px 28px;background:var(--dark-card);border:1px solid var(--line-dark);border-radius:var(--r-lg);display:flex;flex-direction:column;gap:18px}.testimonial-card-stars{color:var(--rust-bright);letter-spacing:2px;font-size:0.95rem}.testimonial-card-text{font-family:var(--font-display);font-size:1.18rem;line-height:1.4;color:var(--ink-strong);flex:1;letter-spacing:-0.012em;font-weight:700}.testimonial-card-meta{display:flex;align-items:center;gap:12px;padding-top:18px;border-top:1px solid var(--line-dark)}.testimonial-card-avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-body);font-weight:700;font-size:0.82rem;color:var(--cream);flex-shrink:0}.testimonial-card-name{font-family:var(--font-body);font-size:0.93rem;font-weight:600;color:var(--ink-strong)}.testimonial-card-detail{font-family:var(--font-mono);font-size:0.74rem;color:var(--ink-mute);letter-spacing:0.06em;margin-top:2px}.choice{background:var(--dark);color:var(--ink);position:relative}.choice-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:40px;align-items:stretch;max-width:1100px;margin:0 auto}.choice-col-bad{padding:48px 8px 0 0;opacity:0.85}.choice-col-bad h3{font-family:var(--font-display);font-size:2rem;font-weight:700;margin-bottom:8px;color:var(--ink-dim);letter-spacing:-0.025em}.choice-col-bad .sub{font-family:var(--font-mono);font-size:0.78rem;color:var(--ink-mute);margin-bottom:28px;letter-spacing:0.12em;text-transform:uppercase}.choice-col-bad ul{list-style:none;padding:0}.choice-col-bad li{padding:13px 0;border-top:1px solid var(--line-dark);font-size:0.94rem;color:var(--ink-mute);display:flex;align-items:flex-start;gap:14px}.choice-col-bad li:first-child{border-top:1px solid var(--line-dark-bright)}.choice-col-bad li::before{content:"—";color:var(--ink-deep);flex-shrink:0}.choice-col-good{padding:48px 44px;background:var(--cream-ink);color:var(--cream);border-radius:var(--r-xl);position:relative;overflow:hidden}.choice-col-good::before{content:"";position:absolute;inset:0;background:radial-gradient(at 100% 0%,rgba(230,165,42,0.22) 0px,transparent 55%),radial-gradient(at 0% 100%,rgba(230,165,42,0.15) 0px,transparent 55%);pointer-events:none}.choice-col-good > *{position:relative;z-index:1}.choice-col-good .badge{display:inline-block;padding:6px 14px;background:var(--rust);border-radius:100px;font-family:var(--font-body);font-size:0.7rem;font-weight:700;text-transform:uppercase;letter-spacing:0.18em;color:var(--cream);margin-bottom:24px}.choice-col-good h3{font-family:var(--font-display);font-size:2.6rem;font-weight:700;letter-spacing:-0.025em;margin-bottom:4px;color:var(--cream)}.choice-col-good h3 em{color:var(--rust-bright);font-style:normal}.choice-col-good .sub{font-family:var(--font-mono);font-size:0.78rem;color:rgba(245,239,228,0.6);margin-bottom:28px;letter-spacing:0.12em;text-transform:uppercase}.choice-price-row{display:flex;align-items:baseline;gap:14px;padding:24px 0;border-top:1px solid rgba(245,239,228,0.2);border-bottom:1px solid rgba(245,239,228,0.2);margin-bottom:28px}.choice-price{font-family:var(--font-display);font-size:4.5rem;font-weight:700;color:var(--cream);letter-spacing:-0.04em;line-height:1}.choice-price em{color:var(--rust-bright);font-style:normal}.choice-price-period{font-family:var(--font-mono);font-size:0.85rem;color:rgba(245,239,228,0.65);letter-spacing:0.08em;text-transform:uppercase}.choice-col-good ul{list-style:none;padding:0;margin-bottom:32px}.choice-col-good li{padding:12px 0;font-size:0.95rem;color:rgba(245,239,228,0.85);display:flex;align-items:flex-start;gap:14px}.choice-col-good li::before{content:"→";color:var(--rust-bright);font-weight:700;flex-shrink:0}@media (max-width:880px){.choice-grid{grid-template-columns:1fr;gap:28px}.choice-col-bad{padding:0}}.faq-list{max-width:920px;margin:0 auto;display:flex;flex-direction:column}details{border-top:1px solid var(--line-dark-bright);transition:all 0.3s}details:last-child{border-bottom:1px solid var(--line-dark-bright)}details[open]{background:rgba(230,165,42,0.03)}summary{padding:26px 12px;cursor:pointer;font-family:var(--font-display);font-weight:700;font-size:1.45rem;letter-spacing:-0.018em;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:24px;color:var(--ink-strong)}summary::-webkit-details-marker{display:none}summary::after{content:"+";color:var(--rust-bright);font-size:1.6rem;font-weight:300;transition:transform 0.3s;flex-shrink:0;line-height:1}details[open] summary::after{transform:rotate(45deg)}.faq-answer{padding:0 12px 28px 12px;color:var(--ink-dim);font-size:1rem;line-height:1.65;max-width:680px;font-family:var(--font-body)}.faq-answer a{color:var(--rust-bright);text-decoration:underline}.faq-support{text-align:center;margin-top:56px;font-size:0.95rem;color:var(--ink-mute);font-family:var(--font-body)}.faq-support a{color:var(--rust-bright);text-decoration:underline;text-underline-offset:4px;font-weight:600}.final-cta{background:var(--dark);text-align:center;position:relative;padding:clamp(120px,16vw,200px) 0 clamp(120px,16vw,180px)}.final-cta::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 30%,rgba(230,165,42,0.25),transparent 60%),radial-gradient(circle at 70% 70%,rgba(230,165,42,0.18),transparent 60%);filter:blur(40px);pointer-events:none}.final-cta-inner{position:relative;max-width:920px;margin:0 auto;z-index:2}.final-cta h2{font-family:var(--font-display);font-size:clamp(3rem,9vw,7.5rem);font-weight:800;letter-spacing:-0.04em;line-height:0.92;margin-bottom:32px;color:var(--ink-strong)}.final-cta h2 em{color:var(--rust-bright);font-style:normal}.final-cta-sub{max-width:540px;margin:0 auto 44px;font-size:1.1rem;line-height:1.6;color:var(--ink-dim)}.page-hero{padding:clamp(140px,14vw,180px) 0 clamp(50px,6vw,70px);background:var(--dark);border-bottom:1px solid var(--line-dark);position:relative;overflow:hidden}.page-hero h1{font-family:var(--font-display);font-size:clamp(2.8rem,7vw,5.5rem);font-weight:700;letter-spacing:-0.035em;line-height:0.95;margin-bottom:28px;color:var(--ink-strong)}.page-hero h1 em{color:var(--rust-bright);font-style:normal}.page-hero-sub{max-width:720px;font-size:1.15rem;line-height:1.55;color:var(--ink-dim);position:relative;z-index:2}.page-hero.center{text-align:center}.page-hero.center .page-hero-sub{margin-left:auto;margin-right:auto}.breadcrumb{display:flex;gap:12px;font-family:var(--font-mono);font-size:0.74rem;text-transform:uppercase;letter-spacing:0.16em;color:var(--ink-mute);margin-bottom:32px;flex-wrap:wrap;position:relative;z-index:2}.breadcrumb a{color:var(--ink-mute);transition:color 0.2s}.breadcrumb a:hover{color:var(--rust-bright)}.breadcrumb span[aria-current]{color:var(--ink-strong)}.page-hero.center .breadcrumb{justify-content:center}.prose{max-width:var(--max-prose);margin:0 auto;padding:0 32px;position:relative;z-index:2}.prose h2{font-family:var(--font-display);font-size:2.2rem;margin:56px 0 18px;color:var(--ink-strong);letter-spacing:-0.025em;font-weight:700}.prose h2:first-child{margin-top:0}.prose h3{font-family:var(--font-display);font-size:1.4rem;font-weight:700;margin:36px 0 14px;color:var(--ink-strong)}.prose p{margin-bottom:20px;font-size:1.02rem;line-height:1.75;color:var(--ink-dim)}.prose ul,.prose ol{margin:0 0 26px 24px;color:var(--ink-dim);line-height:1.75}.prose li{margin-bottom:8px}.prose a{color:var(--rust-bright);text-decoration:underline;text-underline-offset:3px;font-weight:500}.prose a:hover{color:var(--gold-bright)}.prose strong{color:var(--ink-strong);font-weight:600}.prose hr{border:0;border-top:1px solid var(--line-dark);margin:48px 0}.prose .updated{font-family:var(--font-mono);font-size:0.74rem;color:var(--ink-mute);margin-bottom:28px;padding:5px 12px;background:var(--dark-2);border:1px solid var(--line-dark);display:inline-block;text-transform:uppercase;letter-spacing:0.12em;border-radius:4px}.site-footer{background:var(--dark-2);border-top:1px solid var(--line-dark);padding:96px 0 40px;color:var(--ink-dim);position:relative;z-index:2}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:64px;margin-bottom:56px;padding-bottom:56px;border-bottom:1px solid var(--line-dark)}.footer-brand-name{font-family:var(--font-display);font-size:1.7rem;font-weight:700;margin-bottom:18px;color:var(--ink-strong);letter-spacing:-0.02em;display:flex;align-items:center;gap:14px}.footer-brand-mark{width:42px;height:42px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.footer-brand-mark img{width:100%;height:100%;object-fit:contain;display:block;background:transparent}.footer-brand-desc{color:var(--ink-mute);font-size:0.94rem;line-height:1.65;max-width:380px}.footer-col h4{font-family:var(--font-mono);font-size:0.7rem;text-transform:uppercase;letter-spacing:0.18em;color:var(--rust-bright);margin-bottom:22px;font-weight:500}.footer-col ul{list-style:none;padding:0;display:flex;flex-direction:column;gap:10px}.footer-col a{color:var(--ink-mute);font-size:0.9rem;transition:color 0.2s}.footer-col a:hover{color:var(--ink-strong)}.footer-bottom{font-size:0.82rem;color:var(--ink-mute);line-height:1.7}.footer-bottom p{margin-bottom:10px}.footer-bottom a{color:var(--rust-bright);text-decoration:underline}.footer-disclaimer{margin-top:24px;padding-top:24px;border-top:1px solid var(--line-dark);font-size:0.76rem;line-height:1.65;color:var(--ink-deep)}@media (max-width:720px){.footer-grid{grid-template-columns:1fr;gap:36px}}.btn-dark{background:var(--rust);color:var(--cream)}.btn-dark:hover{background:var(--rust-bright);color:var(--cream) !important}.btn-outline{background:transparent;border:1px solid var(--line-dark-bright);color:var(--ink)}.btn-outline:hover{border-color:var(--rust-bright);color:var(--rust-bright) !important}.dark-section{background:var(--dark-2)}.alt-bg{background:var(--dark-2)}.section-header{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-bottom:64px;align-items:end}.section-header.center{grid-template-columns:1fr;text-align:center;max-width:880px;margin-left:auto;margin-right:auto}.section-header .lede{font-size:1.1rem;color:var(--ink-dim);line-height:1.6;max-width:540px}.section-header.center .lede{margin:18px auto 0}@media (max-width:800px){.section-header{grid-template-columns:1fr;gap:22px;align-items:start}}.eyebrow-accent{color:var(--rust-bright)}.stats-row,.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px}.stat-item,.stat-card{padding:32px 28px;background:var(--dark-card);border:1px solid var(--line-dark);border-radius:var(--r-lg);transition:all 0.3s}.stat-item:hover,.stat-card:hover{border-color:var(--rust);transform:translateY(-2px)}.stat-num{font-family:var(--font-display);font-size:clamp(2.4rem,4.5vw,3.6rem);line-height:1;font-weight:700;letter-spacing:-0.03em;margin-bottom:12px;color:var(--ink-strong)}.stat-num em{color:var(--rust-bright);font-style:normal}.stat-label{font-family:var(--font-mono);font-size:0.72rem;text-transform:uppercase;letter-spacing:0.14em;color:var(--ink-mute)}.steps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}.step-item,.step-card{padding:36px 32px;background:var(--dark-card);border:1px solid var(--line-dark);border-radius:var(--r-lg);transition:all 0.3s}.step-item:hover,.step-card:hover{border-color:var(--rust);transform:translateY(-4px)}.step-num{font-family:var(--font-display);font-size:2.8rem;line-height:1;font-weight:700;font-style:normal;color:var(--rust-bright);margin-bottom:24px;letter-spacing:-0.03em}.step-num em{font-style:normal}.step-item h3,.step-card h3{font-family:var(--font-display);font-size:1.4rem;margin-bottom:12px;font-weight:700;letter-spacing:-0.02em;color:var(--ink-strong)}.step-item p,.step-card p{font-size:0.95rem;line-height:1.6}.feature-row,.feature-card-big{display:grid;grid-template-columns:1fr 1fr;gap:0;background:var(--dark-card);border:1px solid var(--line-dark);border-radius:var(--r-xl);margin-bottom:24px;overflow:hidden}.feature-row.reverse,.feature-card-big.reverse{direction:rtl}.feature-row.reverse > *,.feature-card-big.reverse > *{direction:ltr}.feature-row-content,.feature-card-content{padding:48px 44px;display:flex;flex-direction:column;justify-content:center}.feature-row-content h3,.feature-card-content h3{font-family:var(--font-display);font-size:clamp(1.6rem,2.6vw,2.4rem);letter-spacing:-0.025em;margin-bottom:18px;font-weight:700;color:var(--ink-strong)}.feature-row-content h3 em,.feature-card-content h3 em{color:var(--rust-bright);font-style:normal}.feature-row-content p,.feature-card-content p{font-size:1rem;line-height:1.65;margin-bottom:24px}.feature-row-content .btn,.feature-card-content .btn{align-self:flex-start}.feature-row-visual,.feature-card-visual{background:linear-gradient(135deg,var(--dark-card-2) 0%,var(--dark-3) 100%);padding:48px;display:flex;align-items:center;justify-content:center;min-height:380px;position:relative;overflow:hidden}.feature-row-visual::before,.feature-card-visual::before{content:"";position:absolute;inset:0;background:radial-gradient(at 30% 30%,rgba(230,165,42,0.20) 0px,transparent 55%),radial-gradient(at 70% 70%,rgba(230,165,42,0.14) 0px,transparent 55%)}.feature-row-visual img,.feature-row-visual svg,.feature-card-visual img,.feature-card-visual svg{max-width:100%;max-height:100%;position:relative;z-index:1}@media (max-width:900px){.feature-row,.feature-row.reverse,.feature-card-big,.feature-card-big.reverse{grid-template-columns:1fr;direction:ltr}.feature-row-content,.feature-card-content{padding:32px 28px}.feature-row-visual,.feature-card-visual{min-height:280px;padding:32px}}.editorial-row{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center}.editorial-row.reverse{grid-template-columns:1fr 1.05fr}.editorial-text h2{font-family:var(--font-display);margin-bottom:24px;font-weight:700;color:var(--ink-strong)}.editorial-text h2 em{color:var(--rust-bright);font-style:normal}.editorial-text p{font-size:1.05rem;line-height:1.65;margin-bottom:20px}.editorial-text strong{color:var(--ink-strong);font-weight:600}.editorial-image{background:linear-gradient(135deg,var(--dark-card-2) 0%,var(--dark-3) 100%);border:1px solid var(--line-dark);border-radius:var(--r-xl);aspect-ratio:5 / 4;overflow:hidden;position:relative}.editorial-image::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,rgba(230,165,42,0.12),transparent 70%)}.editorial-image img,.editorial-image svg{width:100%;height:100%;object-fit:cover;position:relative;z-index:1}@media (max-width:900px){.editorial-row,.editorial-row.reverse{grid-template-columns:1fr;gap:40px}}.about-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:64px;align-items:start}.about-text-col h2{font-family:var(--font-display);margin-bottom:24px;font-weight:700;color:var(--ink-strong)}.about-text-col p{font-size:1.04rem;line-height:1.7;margin-bottom:18px}.about-text-col strong{color:var(--ink-strong);font-weight:600}.about-text-col .pullquote{font-family:var(--font-display);font-size:1.6rem;font-weight:700;font-style:normal;line-height:1.3;color:var(--ink-strong);border-left:2px solid var(--rust-bright);padding-left:24px;margin:32px 0}.about-image{background:linear-gradient(135deg,var(--dark-card-2) 0%,var(--dark-3) 100%);border:1px solid var(--line-dark);border-radius:var(--r-xl);aspect-ratio:4 / 5;overflow:hidden}.about-image img,.about-image svg{width:100%;height:100%;object-fit:cover}.about-features{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:32px;padding-top:32px;border-top:1px solid var(--line-dark)}.about-feature h3{font-family:var(--font-display);font-size:1.1rem;font-weight:700;margin-bottom:6px;color:var(--ink-strong)}.about-feature p{font-size:0.88rem;line-height:1.55;color:var(--ink-mute)}@media (max-width:900px){.about-grid{grid-template-columns:1fr;gap:40px}.about-features{grid-template-columns:1fr;gap:16px}}.comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:1100px;margin:0 auto}.comparison-col{padding:40px 32px;background:var(--dark-card);border:1px solid var(--line-dark);border-radius:var(--r-lg)}.comparison-col.highlight{background:linear-gradient(135deg,var(--dark-card) 0%,var(--dark-card-2) 100%);border:1.5px solid var(--rust);box-shadow:0 0 60px rgba(230,165,42,0.10)}.comparison-tag{font-family:var(--font-mono);font-size:0.74rem;text-transform:uppercase;letter-spacing:0.16em;color:var(--ink-mute);margin-bottom:16px}.comparison-col.highlight .comparison-tag{color:var(--rust-bright)}.comparison-col h3{font-family:var(--font-display);font-size:1.7rem;margin-bottom:28px;letter-spacing:-0.025em;font-weight:700;color:var(--ink-strong)}.comparison-col h3 em{color:var(--rust-bright);font-style:normal}.comparison-col ul{list-style:none;padding:0;margin:0 0 28px 0}.comparison-col li{padding:11px 0;border-top:1px solid var(--line-dark);font-size:0.95rem;display:flex;align-items:flex-start;gap:12px;line-height:1.5;color:var(--ink-dim)}.comparison-col li:first-child{border-top:none;padding-top:0}.comparison-col li::before{content:"—";color:var(--ink-deep);flex-shrink:0}.comparison-col.highlight li::before{content:"→";color:var(--rust-bright);font-weight:700}.comparison-col.highlight li{color:var(--ink)}@media (max-width:720px){.comparison-grid{grid-template-columns:1fr}}.pricing-card{background:var(--cream-ink);color:var(--cream);border:1px solid var(--line-dark);border-radius:var(--r-xl);padding:48px 40px;max-width:540px;margin:0 auto;position:relative;overflow:hidden}.pricing-card::before{content:"";position:absolute;inset:0;background:radial-gradient(at 100% 0%,rgba(230,165,42,0.20) 0px,transparent 55%),radial-gradient(at 0% 100%,rgba(230,165,42,0.14) 0px,transparent 55%);pointer-events:none}.pricing-card > *{position:relative;z-index:1}.pricing-eyebrow{font-family:var(--font-mono);font-size:0.74rem;text-transform:uppercase;letter-spacing:0.16em;color:var(--rust-bright);margin-bottom:18px}.pricing-card h3{font-family:var(--font-display);font-size:1.8rem;margin-bottom:28px;letter-spacing:-0.025em;font-weight:700;color:var(--cream)}.pricing-amount-row{display:flex;align-items:baseline;gap:12px;margin-bottom:8px;padding-bottom:24px;border-bottom:1px solid rgba(245,239,228,0.2)}.pricing-amount{font-family:var(--font-display);font-size:5rem;font-weight:700;color:var(--cream);line-height:1;letter-spacing:-0.04em}.pricing-amount em{color:var(--rust-bright);font-style:normal}.pricing-period{font-size:0.88rem;color:rgba(245,239,228,0.65);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:0.1em}.pricing-features{list-style:none;padding:24px 0;margin:0 0 32px 0}.pricing-features li{padding:10px 0;font-size:0.94rem;color:rgba(245,239,228,0.85);display:flex;align-items:center;gap:12px}.pricing-features li::before{content:"→";color:var(--rust-bright);font-weight:700}.rust{color:var(--rust-bright);font-weight:inherit}.it{color:var(--rust-bright);font-weight:inherit}@media (max-width:720px){section{padding:56px 0}.hero{min-height:600px;max-height:760px}.hero-inner{padding:80px 24px 48px}.container{padding:0 22px}.section-title{margin-bottom:18px !important}.section-lede{margin-bottom:32px !important;font-size:1rem}.section-eyebrow{margin-bottom:18px}[style*="margin-bottom:64px"],[style*="margin-bottom:64px"]{margin-bottom:32px !important}[style*="margin-bottom:56px"],[style*="margin-bottom:56px"]{margin-bottom:28px !important}[style*="margin-bottom:48px"],[style*="margin-bottom:48px"]{margin-bottom:24px !important}.phase-row{padding:28px 0;gap:18px}.phase-num{font-size:2.2rem}.phase-visual{height:160px}.versus-good-col,.choice-col-good{padding:32px 24px}.bento{gap:12px;grid-auto-rows:auto}.bento-card{padding:24px 22px}.bento-card.b-2x2,.bento-card.b-feature{padding:28px 24px}.testimonial-card{width:280px;padding:22px 20px}.footer-grid{gap:28px;margin-bottom:36px;padding-bottom:36px}.site-footer{padding:56px 0 28px}.final-cta{padding:80px 0 80px}details{}summary{padding:18px 8px;font-size:1.15rem}.faq-answer{padding:0 8px 18px 8px;font-size:0.95rem}}@media (max-width:480px){section{padding:48px 0}.container{padding:0 18px}.hero h1{font-size:clamp(2.6rem,11vw,4rem)}}.bento-card{padding-top:0}.bento-card-img{position:relative;width:calc(100% + 56px);margin:-28px -28px 22px;aspect-ratio:16 / 9;background:linear-gradient(135deg,var(--dark-card-2),var(--dark-3));overflow:hidden;border-bottom:1px solid var(--line-dark-bright)}.bento-card-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0.55;transition:opacity 0.4s,transform 0.6s cubic-bezier(0.2,0.8,0.2,1)}.bento-card:hover .bento-card-img img{opacity:0.75;transform:scale(1.05)}.bento-card-img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(14,10,6,0.7) 100%)}.bento-card.b-2x2 .bento-card-img,.bento-card.b-feature .bento-card-img{aspect-ratio:21 / 9;margin:-42px -42px 24px;width:calc(100% + 84px)}.bento-card.b-2x2{padding:0 42px 42px}.bento-card.b-feature{padding:0 48px 48px}.bento-card.b-2x1 .bento-card-img{aspect-ratio:21 / 7}.bento-card.b-3x1 .bento-card-img{aspect-ratio:16 / 8}@media (max-width:720px){.bento-card-img{margin:-24px -22px 16px;width:calc(100% + 44px);aspect-ratio:16 / 9}.bento-card.b-2x2 .bento-card-img,.bento-card.b-feature .bento-card-img{margin:-28px -24px 18px;width:calc(100% + 48px);aspect-ratio:16 / 9}.bento-card.b-2x2,.bento-card.b-feature{padding:0 24px 28px}}.login-hero-v2{padding:clamp(40px,6vw,72px) 0 clamp(72px,10vw,120px);background:var(--dark);position:relative;overflow:hidden}.login-hero-v2-bg{position:absolute;inset:0;pointer-events:none;z-index:0;overflow:hidden}.login-hero-v2-bg::before,.login-hero-v2-bg::after{content:"";position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none}.login-hero-v2-bg::before{width:500px;height:500px;background:radial-gradient(circle,rgba(230,165,42,0.18) 0%,transparent 70%);top:-10%;left:-8%}.login-hero-v2-bg::after{width:400px;height:400px;background:radial-gradient(circle,rgba(192,138,28,0.15) 0%,transparent 70%);bottom:-10%;right:-10%}.login-hero-v2-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:start;position:relative;z-index:1}.login-h1{font-family:var(--font-display);font-size:clamp(2.6rem,6vw,4.5rem) !important;font-weight:800;letter-spacing:-0.04em;line-height:0.95;margin-bottom:22px;color:var(--ink-strong)}.login-h1 .rust{color:var(--rust-bright);font-weight:inherit}.login-lede{font-size:1.05rem;line-height:1.6;color:var(--ink-dim);margin-bottom:36px;max-width:560px}.login-card{background:linear-gradient(180deg,var(--dark-card) 0%,var(--dark-card-2) 100%);border:1px solid var(--line-dark-bright);border-radius:var(--r-xl);padding:32px 32px 24px;position:relative;overflow:hidden}.login-card::before{content:"";position:absolute;inset:0;background:radial-gradient(at 0% 0%,rgba(230,165,42,0.10) 0px,transparent 50%);pointer-events:none}.login-card > *{position:relative;z-index:1}.login-card-header{margin-bottom:22px;padding-bottom:22px;border-bottom:1px solid var(--line-dark)}.login-card-status{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:0.74rem;font-weight:500;text-transform:uppercase;letter-spacing:0.18em;color:var(--ink-dim)}.login-card-dot{width:8px;height:8px;border-radius:50%;background:var(--rust-bright);box-shadow:0 0 12px var(--rust-glow);animation:pulse 2s infinite}.login-primary-btn{margin-bottom:14px}.login-secondary-btn{margin-bottom:4px}.login-divider{display:flex;align-items:center;gap:14px;margin:14px 0;color:var(--ink-mute);font-family:var(--font-mono);font-size:0.72rem;text-transform:uppercase;letter-spacing:0.18em}.login-divider::before,.login-divider::after{content:"";flex:1;height:1px;background:var(--line-dark)}.login-help-text{margin-top:22px;padding-top:18px;border-top:1px solid var(--line-dark);font-size:0.86rem;color:var(--ink-mute);line-height:1.55;text-align:center}.login-help-text a{color:var(--rust-bright);text-decoration:underline}.login-side-card{background:linear-gradient(180deg,var(--dark-card) 0%,var(--dark-card-2) 100%);border:1px solid var(--line-dark);border-radius:var(--r-xl);padding:32px 30px 28px;position:relative;overflow:hidden}.login-side-card::before{content:"";position:absolute;inset:0;background:radial-gradient(at 100% 100%,rgba(230,165,42,0.08) 0px,transparent 60%);pointer-events:none}.login-side-card > *{position:relative;z-index:1}.login-side-title{font-family:var(--font-display);font-size:clamp(1.5rem,2.5vw,1.85rem);font-weight:800;letter-spacing:-0.025em;line-height:1.05;margin-bottom:24px;color:var(--ink-strong)}.login-side-title .rust{color:var(--rust-bright)}.login-side-list{list-style:none !important;padding:0 !important;margin:0 0 28px 0}.login-side-list li{display:grid;grid-template-columns:24px 1fr;gap:14px;padding:12px 0;border-top:1px solid var(--line-dark);align-items:start;font-size:0.92rem}.login-side-list li:first-child{border-top:none;padding-top:0}.login-side-list .lsl-check{color:var(--rust-bright);font-weight:800;font-size:1rem;line-height:1.4}.login-side-list strong{display:block;color:var(--ink-strong);font-weight:600;font-size:0.95rem;margin-bottom:2px}.login-side-list li > span:not(.lsl-check){color:var(--ink-dim);font-size:0.85rem;line-height:1.45}@media (max-width:880px){.login-hero-v2-grid{grid-template-columns:1fr;gap:24px}}@media (max-width:720px){.login-hero-v2{padding: 32px 0 56px}.login-card{padding:24px 22px 20px}.login-side-card{padding:24px 22px}.login-lede{margin-bottom:28px;font-size:1rem}.login-h1{font-size:clamp(2.2rem,9vw,3rem) !important;margin-bottom:16px}}.seo-content{background:var(--dark-2);border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark)}.seo-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:64px;align-items:start}.seo-grid h2{margin-bottom:24px}.seo-grid h2 strong{color:var(--rust-bright);font-weight:inherit}.seo-grid p{font-size:1rem;line-height:1.7;color:var(--ink-dim);margin-bottom:18px}.seo-grid p strong{color:var(--ink-strong);font-weight:600}.seo-grid p a{color:var(--rust-bright);text-decoration:underline;text-underline-offset:4px;font-weight:500}.seo-grid p a:hover{color:var(--gold-bright)}.seo-aside{background:var(--dark-card);border:1px solid var(--line-dark-bright);border-radius:var(--r-xl);padding:36px 32px;position:sticky;top:24px}.seo-aside h3{font-family:var(--font-display);font-size:1.45rem;font-weight:700;letter-spacing:-0.02em;color:var(--ink-strong);margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--line-dark)}.seo-facts{display:grid;grid-template-columns:1fr 1.6fr;gap:0 18px;margin-bottom:28px}.seo-facts dt{font-family:var(--font-mono);font-size:0.7rem;text-transform:uppercase;letter-spacing:0.14em;color:var(--ink-mute);padding:10px 0;border-bottom:1px solid var(--line-dark)}.seo-facts dd{font-family:var(--font-body);font-size:0.92rem;font-weight:500;color:var(--ink-strong);padding:10px 0;border-bottom:1px solid var(--line-dark);margin:0}.seo-facts dt:last-of-type,.seo-facts dd:last-of-type{border-bottom:none}@media (max-width:880px){.seo-grid{grid-template-columns:1fr;gap:36px}.seo-aside{position:static;padding:28px 24px}}

/* === VERSUS V2 — both columns as cards, stronger visual contrast === */
.versus-bad-col {
  padding: 40px 36px;
  background: rgba(20, 16, 10, 0.5);
  border: 1px solid var(--line-dark);
  border-radius: var(--r-xl);
  opacity: 0.92;
  position: relative;
}
.versus-bad-col::before {
  content: "";
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(45deg, transparent, transparent 8px, rgba(0,0,0,0.08) 8px, rgba(0,0,0,0.08) 9px);
  border-radius: inherit;
  pointer-events: none;
}
.versus-bad-col > * { position: relative; }
.versus-bad-col h3 {
  font-family: var(--font-display);
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 24px;
  color: var(--ink-mute);
  letter-spacing: -0.02em;
  display: flex;
  align-items: center;
  gap: 14px;
}
.versus-bad-col h3::before {
  content: "✕";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px; height: 32px;
  background: rgba(120, 104, 83, 0.15);
  border: 1px solid var(--line-dark-bright);
  border-radius: 8px;
  color: var(--ink-mute);
  font-weight: 700;
  font-size: 0.95rem;
  font-family: var(--font-body);
}
.versus-bad-col li {
  padding: 14px 0;
  border-top: 1px solid var(--line-dark);
  font-size: 0.95rem;
  color: var(--ink-mute);
  display: flex;
  align-items: flex-start;
  gap: 14px;
  line-height: 1.5;
}
.versus-bad-col li::before {
  content: "✕";
  color: var(--ink-deep);
  flex-shrink: 0;
  font-weight: 700;
  font-size: 0.85rem;
  width: 16px;
  text-align: center;
}
.versus-good-col h3 {
  display: flex;
  align-items: center;
  gap: 14px;
}
.versus-good-col h3::before {
  content: "→";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px; height: 32px;
  background: var(--rust-bright);
  color: var(--dark);
  border-radius: 8px;
  font-weight: 800;
  font-size: 1rem;
  flex-shrink: 0;
  box-shadow: 0 4px 12px var(--rust-glow);
}

/* === CHOICE V2 — bad column also gets card treatment === */
.choice-col-bad {
  padding: 40px 32px !important;
  background: rgba(20, 16, 10, 0.5);
  border: 1px solid var(--line-dark);
  border-radius: var(--r-xl);
  opacity: 0.92;
  position: relative;
  overflow: hidden;
}
.choice-col-bad::before {
  content: "";
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(45deg, transparent, transparent 8px, rgba(0,0,0,0.08) 8px, rgba(0,0,0,0.08) 9px);
  border-radius: inherit;
  pointer-events: none;
}
.choice-col-bad > * { position: relative; }
.choice-col-bad h3 {
  display: flex;
  align-items: center;
  gap: 12px;
  font-style: normal !important;
}
.choice-col-bad h3::before {
  content: "✕";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px; height: 32px;
  background: rgba(120, 104, 83, 0.15);
  border: 1px solid var(--line-dark-bright);
  border-radius: 8px;
  color: var(--ink-mute);
  font-weight: 700;
  font-size: 0.95rem;
  font-family: var(--font-body);
}
.choice-col-bad li::before {
  content: "✕" !important;
  color: var(--ink-deep) !important;
}

/* === TESTIMONIAL VIDEO CAROUSEL === */
.testimonials-v2 {
  background: var(--dark);
  padding: var(--space-section) 0;
  border-top: 1px solid var(--line-dark);
  border-bottom: 1px solid var(--line-dark);
  overflow: hidden;
}
.testimonials-v2-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 32px;
  margin-bottom: 48px;
  flex-wrap: wrap;
}
.testimonials-v2-header > div:first-child { max-width: 640px; }
.testimonials-v2-header .section-lede { margin-bottom: 0; }
.testimonials-nav {
  display: flex;
  gap: 10px;
  flex-shrink: 0;
}
.t-nav-btn {
  width: 48px; height: 48px;
  border-radius: 50%;
  border: 1px solid var(--line-dark-bright);
  background: var(--dark-card);
  color: var(--ink);
  font-size: 1.2rem;
  font-family: var(--font-body);
  font-weight: 700;
  cursor: pointer;
  transition: all 0.2s;
  display: flex;
  align-items: center;
  justify-content: center;
}
.t-nav-btn:hover {
  background: var(--rust);
  color: var(--cream);
  border-color: var(--rust);
  transform: translateY(-1px);
}
.t-nav-btn:disabled {
  opacity: 0.4;
  cursor: not-allowed;
  transform: none;
}

.t-carousel-wrap {
  position: relative;
  overflow: hidden;
}
.t-carousel-wrap::before,
.t-carousel-wrap::after {
  content: "";
  position: absolute;
  top: 0; bottom: 0;
  width: 80px;
  z-index: 3;
  pointer-events: none;
}
.t-carousel-wrap::before {
  left: 0;
  background: linear-gradient(90deg, var(--dark) 0%, transparent 100%);
}
.t-carousel-wrap::after {
  right: 0;
  background: linear-gradient(-90deg, var(--dark) 0%, transparent 100%);
}
.t-carousel {
  display: flex;
  gap: 22px;
  padding: 4px 32px 24px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-padding-left: 32px;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
  scrollbar-color: var(--line-dark-bright) transparent;
}
.t-carousel::-webkit-scrollbar { height: 6px; }
.t-carousel::-webkit-scrollbar-thumb { background: var(--line-dark-bright); border-radius: 3px; }
.t-carousel::-webkit-scrollbar-track { background: transparent; }

.t-card {
  flex: 0 0 auto;
  width: 360px;
  scroll-snap-align: start;
  transition: transform 0.3s;
}
.t-card:hover { transform: translateY(-4px); }

.t-video {
  position: relative;
  width: 100%;
  aspect-ratio: 1 / 1;
  border-radius: var(--r-lg);
  overflow: hidden;
  background: var(--dark-card-2);
  border: 1px solid var(--line-dark-bright);
  cursor: pointer;
}
.t-video video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.t-video::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 60%, rgba(14,10,6,0.4) 100%);
  pointer-events: none;
}
.t-video video::-webkit-media-controls-overlay-play-button {
  display: flex !important;
}
/* Hide default play overlay since browsers vary; we rely on poster's built-in play icon */

.t-meta {
  padding: 16px 4px 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.t-meta strong {
  font-family: var(--font-display);
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--ink-strong);
  letter-spacing: -0.015em;
}
.t-meta span {
  font-family: var(--font-mono);
  font-size: 0.74rem;
  color: var(--ink-mute);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

@media (max-width: 720px) {
  .testimonials-v2-header { flex-direction: column; align-items: flex-start; gap: 20px; }
  .testimonials-nav { display: none; }
  .t-carousel { padding: 4px 22px 24px; gap: 14px; }
  .t-card { width: 320px; }
  .t-carousel-wrap::before,
  .t-carousel-wrap::after { width: 40px; }
}

/* ============================================================
   HERO V2 — text + CTA + real video player (not background)
   ============================================================ */
.hero-v2 {
  position: relative;
  background: var(--dark);
  padding: clamp(48px, 8vw, 96px) 0 clamp(64px, 8vw, 96px);
  overflow: hidden;
}
.hero-v2-orbs {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  overflow: hidden;
}
.hero-v2-orbs::before,
.hero-v2-orbs::after {
  content: "";
  position: absolute;
  border-radius: 50%;
  filter: blur(80px);
}
.hero-v2-orbs::before {
  width: 600px; height: 600px;
  background: radial-gradient(circle, rgba(192,138,28,0.30) 0%, transparent 70%);
  top: -10%; left: -8%;
  animation: orb-drift-1 18s ease-in-out infinite alternate;
}
.hero-v2-orbs::after {
  width: 500px; height: 500px;
  background: radial-gradient(circle, rgba(230,165,42,0.22) 0%, transparent 70%);
  bottom: -10%; right: -10%;
  animation: orb-drift-2 22s ease-in-out infinite alternate;
}
.hero-v2 .container { position: relative; z-index: 1; }

.hero-v2-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  margin-bottom: 32px;
  font-family: var(--font-mono);
  font-size: 0.74rem;
  color: var(--ink-mute);
  text-transform: uppercase;
  letter-spacing: 0.16em;
  border-top: 1px solid var(--line-dark-bright);
  padding-top: 18px;
  flex-wrap: wrap;
}
.hero-v2-meta-l {
  display: flex;
  align-items: center;
  gap: 10px;
}
.hero-v2-dot {
  width: 8px; height: 8px;
  border-radius: 50%;
  background: var(--rust-bright);
  box-shadow: 0 0 12px var(--rust-glow);
  animation: pulse 2s infinite;
}

.hero-v2-h1 {
  font-family: var(--font-display);
  font-size: clamp(2.6rem, 9vw, 7.5rem);
  font-weight: 800;
  letter-spacing: -0.05em;
  line-height: 0.92;
  color: var(--ink-strong);
  margin-bottom: 28px;
  max-width: 1100px;
}
.hero-v2-h1 .rust { color: var(--rust-bright); }

.hero-v2-sub {
  font-family: var(--font-body);
  font-size: clamp(1.05rem, 1.6vw, 1.25rem);
  line-height: 1.55;
  color: var(--ink-dim);
  max-width: 720px;
  margin: 0 0 36px;
}

.hero-v2-cta-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 22px;
  margin-bottom: 56px;
}

/* === HERO VIDEO CARD — real player, not background === */
.hero-v2-video-card {
  position: relative;
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
  border-radius: var(--r-xl);
  overflow: hidden;
  background: var(--dark-card-2);
  border: 1px solid var(--line-dark-bright);
  box-shadow: 0 30px 80px rgba(0,0,0,0.6), 0 0 0 1px rgba(230,165,42,0.10), 0 0 100px rgba(230,165,42,0.08);
  aspect-ratio: 16 / 9;
}
.hero-v2-video-card video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.hero-v2-video-tag {
  position: absolute;
  top: 16px; left: 16px;
  z-index: 2;
  background: rgba(14,10,6,0.7);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  color: var(--ink-strong);
  padding: 7px 14px;
  border-radius: 100px;
  font-family: var(--font-body);
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  border: 1px solid rgba(230,165,42,0.2);
  pointer-events: none;
}

@media (max-width: 720px) {
  .hero-v2 { padding: 32px 0 48px; }
  .hero-v2-meta { flex-direction: column; align-items: flex-start; gap: 8px; padding-top: 14px; margin-bottom: 24px; font-size: 0.68rem; }
  .hero-v2-h1 { font-size: clamp(2.4rem, 11vw, 4rem); margin-bottom: 18px; }
  .hero-v2-sub { font-size: 1rem; margin-bottom: 28px; }
  .hero-v2-cta-row { gap: 16px; margin-bottom: 36px; }
  .hero-v2-video-card { border-radius: var(--r-lg); }
}

/* ============================================================
   MOBILE TOP-PADDING FIX — all subpage heroes
   Was sized for fixed header (140-180px). Now that header is
   non-sticky, that's just empty space. Drop dramatically.
   ============================================================ */
.page-hero {
  padding: clamp(32px, 5vw, 72px) 0 clamp(40px, 6vw, 72px);
}
@media (max-width: 720px) {
  .page-hero { padding: 24px 0 40px; }
}

/* ============================================================
   UNIFORM CAMPUS GRID — all cards same size (replaces bento)
   ============================================================ */
.campuses-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
.campus-uniform {
  position: relative;
  background: linear-gradient(180deg, var(--dark-card) 0%, var(--dark-card-2) 100%);
  border: 1px solid var(--line-dark-bright);
  border-radius: var(--r-lg);
  padding: 32px 30px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  transition: all 0.3s cubic-bezier(0.2, 0.8, 0.2, 1);
  overflow: hidden;
  cursor: pointer;
  min-height: 260px;
}
.campus-uniform:hover {
  transform: translateY(-4px);
  border-color: var(--rust);
  box-shadow: 0 24px 48px rgba(0,0,0,0.55), 0 0 60px rgba(230,165,42,0.10);
}
.campus-uniform .cu-glow {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  opacity: 0.55;
  transition: opacity 0.4s;
}
.campus-uniform:hover .cu-glow { opacity: 0.85; }
.campus-uniform .cu-glow.g1 { background: radial-gradient(circle at 80% 20%, rgba(210,62,31,0.30), transparent 60%); }
.campus-uniform .cu-glow.g2 { background: radial-gradient(circle at 20% 80%, rgba(230,165,42,0.28), transparent 60%); }
.campus-uniform .cu-glow.g3 { background: radial-gradient(circle at 50% 50%, rgba(155,79,209,0.25), transparent 60%); }
.campus-uniform .cu-glow.g4 { background: radial-gradient(circle at 70% 30%, rgba(60,144,180,0.28), transparent 60%); }
.campus-uniform .cu-glow.g5 { background: radial-gradient(circle at 30% 70%, rgba(220,108,28,0.30), transparent 60%); }
.campus-uniform .cu-glow.g6 { background: radial-gradient(circle at 60% 40%, rgba(20,184,166,0.25), transparent 60%); }
.campus-uniform .cu-glow.g7 { background: radial-gradient(circle at 80% 80%, rgba(124,58,237,0.25), transparent 60%); }
.campus-uniform .cu-glow.g8 { background: radial-gradient(circle at 30% 30%, rgba(244,63,94,0.26), transparent 60%); }
.campus-uniform .cu-glow.g9 { background: radial-gradient(circle at 50% 80%, rgba(34,197,94,0.25), transparent 60%); }
.campus-uniform > *:not(.cu-glow) { position: relative; z-index: 1; }
.campus-uniform .cu-num {
  font-family: var(--font-mono);
  font-size: 0.72rem;
  color: var(--ink-mute);
  letter-spacing: 0.14em;
}
.campus-uniform h3 {
  font-family: var(--font-display);
  font-size: 1.5rem;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: var(--ink-strong);
  line-height: 1.05;
}
.campus-uniform p {
  font-size: 0.92rem;
  line-height: 1.55;
  color: var(--ink-dim);
  flex: 1;
  margin-bottom: 12px;
}
.campus-uniform .cu-link {
  font-family: var(--font-body);
  font-size: 0.78rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  color: var(--rust-bright);
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.campus-uniform .cu-link::after { content: "→"; transition: transform 0.2s; }
.campus-uniform:hover .cu-link::after { transform: translateX(4px); }

@media (max-width: 1000px) {
  .campuses-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
  .campuses-grid { grid-template-columns: 1fr; gap: 14px; }
  .campus-uniform { padding: 24px 22px; min-height: 200px; }
}

/* ============================================================
   STATS BAND — replaces the ticker marquee
   ============================================================ */
.stats-band {
  background: var(--dark-2);
  border-top: 1px solid var(--line-dark);
  border-bottom: 1px solid var(--line-dark);
  padding: 36px 0;
}
.stats-band-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  align-items: center;
}
.sb-stat {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 8px;
  text-align: center;
  padding: 0 12px;
  border-right: 1px solid var(--line-dark);
  min-height: 80px;
}
.sb-stat:last-child { border-right: none; }
.sb-num {
  font-family: var(--font-display);
  font-size: clamp(1.8rem, 3.2vw, 2.6rem);
  font-weight: 800;
  letter-spacing: -0.03em;
  color: var(--ink-strong);
  line-height: 1;
}
.sb-num .sb-plus, .sb-num .sb-slash {
  color: var(--rust-bright);
  font-weight: 800;
}
.sb-label {
  font-family: var(--font-mono);
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  color: var(--ink-mute);
  font-weight: 500;
}
@media (max-width: 720px) {
  .stats-band-grid { grid-template-columns: repeat(2, 1fr); gap: 28px 8px; }
  .sb-stat { padding: 16px 6px; border-right: none; border-bottom: 1px solid var(--line-dark); min-height: 110px; justify-content: center; }
  .sb-stat:nth-last-child(-n+2) { border-bottom: none; padding-bottom: 12px; }
  .stats-band { padding: 24px 0; }
}


/* Stats band — equalize label heights so bottom borders align */
.sb-label { min-height: 2.4em; display: flex; align-items: center; text-align: center; line-height: 1.2; }


/* Campus card image — placeholder users can replace */
.campus-uniform { padding: 0 0 28px; gap: 0; }
.cu-img {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  background: linear-gradient(135deg, var(--dark-card-2), var(--dark-3));
  overflow: hidden;
  border-bottom: 1px solid var(--line-dark);
  margin-bottom: 24px;
}
.cu-img::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 50%, rgba(14,10,6,0.6) 100%);
  pointer-events: none;
}
.cu-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);
}
.campus-uniform:hover .cu-img img { transform: scale(1.05); }
.campus-uniform .cu-num,
.campus-uniform h3,
.campus-uniform p,
.campus-uniform .cu-link {
  padding-left: 30px;
  padding-right: 30px;
}
.campus-uniform .cu-num { margin-bottom: 12px; }
.campus-uniform h3 { margin-bottom: 12px; }
.campus-uniform p { margin-bottom: 18px; flex: 1; }
@media (max-width: 600px) {
  .campus-uniform .cu-num,
  .campus-uniform h3,
  .campus-uniform p,
  .campus-uniform .cu-link {
    padding-left: 22px;
    padding-right: 22px;
  }
  .cu-img { margin-bottom: 18px; }
  .campus-uniform { padding-bottom: 22px; }
}

/* ============================================================
   DOWNLOAD LAUNCHER — clean 4-button page
   ============================================================ */
.download-launcher {
  padding: clamp(40px, 6vw, 80px) 0 clamp(80px, 10vw, 140px);
  background: var(--dark);
  position: relative;
}
.dl-header {
  margin-bottom: 56px;
}
.dl-h1 {
  font-family: var(--font-display);
  font-size: clamp(2.4rem, 6vw, 4.4rem);
  font-weight: 800;
  letter-spacing: -0.04em;
  line-height: 0.95;
  color: var(--ink-strong);
  margin-bottom: 22px;
}
.dl-h1 .rust { color: var(--rust-bright); }
.dl-sub {
  font-size: 1.05rem;
  line-height: 1.6;
  color: var(--ink-dim);
  max-width: 620px;
}
.dl-section {
  margin-bottom: 40px;
  padding-top: 32px;
  border-top: 1px solid var(--line-dark-bright);
}
.dl-section:first-of-type { border-top: 1px solid var(--line-dark-bright); }
.dl-section-label {
  display: flex;
  align-items: baseline;
  gap: 18px;
  margin-bottom: 24px;
}
.dl-num {
  font-family: var(--font-mono);
  font-size: 0.78rem;
  font-weight: 600;
  color: var(--ink-mute);
  letter-spacing: 0.18em;
  padding: 4px 10px;
  border: 1px solid var(--line-dark-bright);
  border-radius: 4px;
}
.dl-section h2 {
  font-family: var(--font-display);
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--ink-strong);
  margin: 0;
}
.dl-buttons {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
.dl-btn {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-rows: auto auto;
  gap: 4px 18px;
  padding: 28px 32px;
  background: linear-gradient(180deg, var(--dark-card) 0%, var(--dark-card-2) 100%);
  border: 1px solid var(--line-dark-bright);
  border-radius: var(--r-lg);
  color: var(--ink);
  transition: all 0.25s cubic-bezier(0.2, 0.8, 0.2, 1);
  text-decoration: none;
  align-items: start;
  position: relative;
  overflow: hidden;
}
.dl-btn::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(at 100% 0%, rgba(230,165,42,0.10), transparent 60%);
  opacity: 0;
  transition: opacity 0.3s;
}
.dl-btn:hover {
  transform: translateY(-3px);
  border-color: var(--rust);
  box-shadow: 0 18px 40px rgba(0,0,0,0.5), 0 0 0 1px var(--rust);
}
.dl-btn:hover::before { opacity: 1; }
.dl-btn > * { position: relative; z-index: 1; }
.dl-btn-meta {
  font-family: var(--font-mono);
  font-size: 0.74rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  color: var(--rust-bright);
  grid-column: 1;
  grid-row: 1;
}
.dl-btn-title {
  font-family: var(--font-display);
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--ink-strong);
  grid-column: 1;
  grid-row: 2;
}
.dl-btn-arrow {
  grid-column: 2;
  grid-row: 1 / 3;
  align-self: center;
  font-size: 1.6rem;
  color: var(--rust-bright);
  font-weight: 400;
  transition: transform 0.2s;
}
.dl-btn:hover .dl-btn-arrow { transform: translateX(6px); }
.dl-note {
  margin-top: 56px;
  padding-top: 32px;
  border-top: 1px solid var(--line-dark);
  font-size: 0.92rem;
  color: var(--ink-mute);
  text-align: center;
}
.dl-note a { color: var(--rust-bright); text-decoration: underline; }
@media (max-width: 720px) {
  .dl-buttons { grid-template-columns: 1fr; gap: 12px; }
  .dl-btn { padding: 22px 24px; }
  .dl-btn-title { font-size: 1.2rem; }
  .dl-section-label { gap: 12px; }
  .dl-section-label h2 { font-size: 1.3rem; }
  .dl-section { margin-bottom: 32px; padding-top: 24px; }
}


/* === FIX: Buttons inside prose should look like real buttons, not links === */
.prose a.btn,
.prose a.btn-primary,
.prose a.btn-secondary,
.prose a.btn-ghost,
.prose a.btn-dark,
.prose a.btn-outline,
.prose .btn {
  text-decoration: none !important;
  color: var(--cream) !important;
  font-weight: 600;
  border-radius: 100px;
}
.prose a.btn-primary,
.prose .btn-primary {
  background: var(--rust) !important;
  color: var(--cream) !important;
  box-shadow: 0 4px 24px var(--rust-glow), inset 0 1px 0 rgba(255,255,255,0.14);
  padding: 16px 32px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  border: none;
}
.prose a.btn-primary:hover,
.prose .btn-primary:hover {
  background: var(--rust-bright) !important;
  color: var(--cream) !important;
  box-shadow: 0 10px 36px var(--rust-glow);
  transform: translateY(-2px);
}
.prose p:has(> a.btn) {
  margin: 32px 0 !important;
}

/* === CAMPUS PAGE HERO UPGRADE — add gradient orbs like homepage === */
.page-hero {
  background: var(--dark);
  position: relative;
  overflow: hidden;
}
.page-hero::before,
.page-hero::after {
  content: "";
  position: absolute;
  border-radius: 50%;
  filter: blur(80px);
  pointer-events: none;
  z-index: 0;
}
.page-hero::before {
  width: 500px; height: 500px;
  background: radial-gradient(circle, rgba(230,165,42,0.18) 0%, transparent 70%);
  top: -10%; left: -8%;
  animation: orb-drift-1 18s ease-in-out infinite alternate;
}
.page-hero::after {
  width: 400px; height: 400px;
  background: radial-gradient(circle, rgba(192,138,28,0.15) 0%, transparent 70%);
  bottom: -10%; right: -10%;
  animation: orb-drift-2 22s ease-in-out infinite alternate;
}
.page-hero > .container { position: relative; z-index: 1; }
.page-hero h1 .rust { color: var(--rust-bright); }

/* === CAMPUS PAGE PROSE UPGRADE — better hierarchy and visuals === */
.prose ul {
  list-style: none;
  padding: 0;
  margin: 24px 0 32px;
  display: grid;
  gap: 8px;
}
.prose ul li {
  display: grid;
  grid-template-columns: 24px 1fr;
  gap: 14px;
  padding: 14px 18px;
  background: var(--dark-card);
  border: 1px solid var(--line-dark);
  border-radius: var(--r);
  margin-bottom: 0;
  font-size: 0.97rem;
  line-height: 1.5;
  color: var(--ink);
  transition: all 0.2s;
}
.prose ul li:hover {
  border-color: var(--line-dark-bright);
  background: var(--dark-card-2);
}
.prose ul li::before {
  content: "→";
  color: var(--rust-bright);
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.5;
}

/* Campus prose section spacing */
.prose h2 {
  position: relative;
  padding-top: 32px;
  margin-top: 56px;
  border-top: 1px solid var(--line-dark);
}
.prose h2:first-child {
  border-top: none;
  padding-top: 0;
  margin-top: 0;
}
.prose h2::before {
  content: "";
  position: absolute;
  top: -1px;
  left: 0;
  width: 64px;
  height: 2px;
  background: var(--rust-bright);
}
.prose h2:first-child::before { display: none; }

/* === LOGIN NEWMEMBER SECTION FIX — was unstyled/broken === */
.login-newmember {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 56px;
  align-items: center;
  background: linear-gradient(180deg, var(--dark-card) 0%, var(--dark-card-2) 100%);
  border: 1px solid var(--line-dark-bright);
  border-radius: var(--r-xl);
  padding: 48px 44px;
  position: relative;
  overflow: hidden;
}
.login-newmember::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(at 100% 100%, rgba(230,165,42,0.10) 0px, transparent 55%);
  pointer-events: none;
}
.login-newmember > * { position: relative; z-index: 1; }
.login-newmember h2 {
  font-family: var(--font-display);
  font-size: clamp(1.8rem, 3vw, 2.6rem);
  font-weight: 800;
  letter-spacing: -0.025em;
  line-height: 1;
  color: var(--ink-strong);
  margin-bottom: 18px;
}
.login-newmember p {
  font-size: 1rem;
  line-height: 1.65;
  color: var(--ink-dim);
  margin-bottom: 28px;
}
.login-newmember-stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}
.newmember-stat {
  background: var(--dark);
  border: 1px solid var(--line-dark);
  border-radius: var(--r);
  padding: 22px 20px;
  text-align: center;
}
.newmember-stat-num {
  font-family: var(--font-display);
  font-size: clamp(1.6rem, 3vw, 2rem);
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1;
  color: var(--rust-bright);
  margin-bottom: 8px;
}
.newmember-stat-label {
  font-family: var(--font-mono);
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: var(--ink-mute);
  font-weight: 500;
}
@media (max-width: 880px) {
  .login-newmember { grid-template-columns: 1fr; gap: 28px; padding: 32px 24px; }
}

/* === LOGIN FEATURES GRID FIX (the 4 numbered items) === */
.login-features-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}
.login-feature {
  background: linear-gradient(180deg, var(--dark-card) 0%, var(--dark-card-2) 100%);
  border: 1px solid var(--line-dark);
  border-radius: var(--r-lg);
  padding: 32px 30px;
  position: relative;
  overflow: hidden;
  transition: all 0.3s;
}
.login-feature:hover {
  border-color: var(--line-dark-bright);
  transform: translateY(-2px);
}
.login-feature::before {
  content: "";
  position: absolute;
  top: 0; left: 0;
  width: 64px;
  height: 2px;
  background: var(--rust-bright);
}
.login-feature-num {
  font-family: var(--font-mono);
  font-size: 0.78rem;
  color: var(--ink-mute);
  font-weight: 600;
  letter-spacing: 0.18em;
  margin-bottom: 14px;
}
.login-feature h3 {
  font-family: var(--font-display);
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.1;
  color: var(--ink-strong);
  margin-bottom: 12px;
}
.login-feature p {
  font-size: 0.94rem;
  line-height: 1.55;
  color: var(--ink-dim);
  margin: 0;
}
@media (max-width: 720px) {
  .login-features-grid { grid-template-columns: 1fr; }
  .login-feature { padding: 24px 22px; }
}

/* === LOGIN CARD UPGRADE — make the Log In + Sign Up card more premium === */
.login-card {
  background: linear-gradient(180deg, var(--dark-card) 0%, var(--dark-card-2) 100%);
  border: 1px solid var(--line-dark-bright);
  box-shadow: 0 24px 60px rgba(0,0,0,0.55), 0 0 80px rgba(230,165,42,0.08);
}
.login-primary-btn {
  background: var(--rust) !important;
  color: var(--cream) !important;
  font-weight: 700 !important;
  box-shadow: 0 6px 28px var(--rust-glow), inset 0 1px 0 rgba(255,255,255,0.16);
}
.login-primary-btn:hover {
  background: var(--rust-bright) !important;
  box-shadow: 0 12px 40px var(--rust-glow), inset 0 1px 0 rgba(255,255,255,0.22);
  transform: translateY(-2px);
}
.login-secondary-btn {
  background: var(--dark) !important;
  color: var(--ink-strong) !important;
  border: 1px solid var(--line-dark-bright) !important;
  font-weight: 600 !important;
}
.login-secondary-btn:hover {
  border-color: var(--rust-bright) !important;
  color: var(--rust-bright) !important;
  background: var(--dark) !important;
}


/* === Hero CTA centered + better spacing === */
.hero-v2-cta-row {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 22px;
  margin: 36px 0 0 !important;
}
@media (max-width: 720px) {
  .hero-v2-cta-row { margin: 28px 0 0 !important; }
}

/* === Hero video overlay — play button + tag === */
.hero-v2-video-card { cursor: default; }
.hero-video-overlay {
  position: absolute;
  inset: 0;
  z-index: 3;
  border: 0;
  background: transparent;
  cursor: pointer;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font: inherit;
  color: inherit;
  -webkit-tap-highlight-color: transparent;
  transition: opacity 0.4s, backdrop-filter 0.4s;
}
.hero-video-overlay::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(14,10,6,0.20) 0%, rgba(14,10,6,0.45) 100%);
  pointer-events: none;
  transition: opacity 0.3s;
}
.hero-video-overlay.is-hidden {
  opacity: 0;
  pointer-events: none;
}
.hero-play-btn {
  position: relative;
  z-index: 1;
  width: 88px;
  height: 88px;
  border-radius: 50%;
  background: rgba(230,165,42,0.95);
  color: var(--cream);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 12px 40px rgba(230,165,42,0.45), 0 0 0 6px rgba(230,165,42,0.15), inset 0 1px 0 rgba(255,255,255,0.20);
  transition: all 0.25s cubic-bezier(0.2, 0.8, 0.2, 1);
}
.hero-play-btn svg { transform: translateX(2px); }
.hero-video-overlay:hover .hero-play-btn,
.hero-video-overlay:focus-visible .hero-play-btn {
  transform: scale(1.08);
  box-shadow: 0 16px 50px rgba(230,165,42,0.6), 0 0 0 8px rgba(230,165,42,0.20), inset 0 1px 0 rgba(255,255,255,0.25);
  background: rgba(240,184,64,1);
}
.hero-video-overlay .hero-v2-video-tag {
  position: absolute;
  top: 16px; left: 16px;
  z-index: 2;
}
@media (max-width: 720px) {
  .hero-play-btn { width: 64px; height: 64px; }
  .hero-play-btn svg { width: 28px; height: 28px; }
}

/* === Login card — new structure === */
.login-card-welcome {
  font-family: var(--font-display);
  font-size: clamp(1.4rem, 2.4vw, 1.8rem);
  font-weight: 800;
  letter-spacing: -0.025em;
  color: var(--ink-strong);
  line-height: 1;
  margin: 4px 0 8px;
}
.login-card-tagline {
  font-size: 0.92rem;
  color: var(--ink-dim);
  line-height: 1.5;
  margin: 0 0 24px;
}
.login-card-signup {
  text-align: center;
  font-size: 0.88rem;
  color: var(--ink-mute);
  margin: 18px 0 4px;
  font-family: var(--font-body);
}
.login-card-signup a {
  color: var(--rust-bright);
  font-weight: 600;
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: border-color 0.2s;
}
.login-card-signup a:hover {
  border-bottom-color: var(--rust-bright);
}


/* === Skill page final-cta button spacing — was too close to text === */
.final-cta p { margin-bottom: 44px; }
.final-cta .btn { margin-top: 12px; }
@media (max-width: 720px) {
  .final-cta p { margin-bottom: 32px; }
}

/* === Tighten section-eyebrow now that the num chip is gone === */
.section-eyebrow::before {
  content: "";
  width: 32px;
  height: 1px;
  background: currentColor;
  display: inline-block;
}


/* === Hero tagline (the small "Official online learning platform" line) === */
/* Now sits between H1 and description, not above */
.hero-v2-tagline {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 6px 0 24px;
  font-family: var(--font-mono);
  font-size: 0.74rem;
  color: var(--ink-mute);
  text-transform: uppercase;
  letter-spacing: 0.16em;
}
.hero-v2-tagline .hero-v2-dot {
  width: 8px; height: 8px;
  border-radius: 50%;
  background: var(--rust-bright);
  box-shadow: 0 0 12px var(--rust-glow);
  animation: pulse 2s infinite;
  flex-shrink: 0;
}
@media (max-width: 720px) {
  .hero-v2-tagline {
    margin: 4px 0 18px;
    font-size: 0.68rem;
  }
}

/* === Phase row — integrate number with title (instead of stacked above) === */
@media (max-width: 880px) {
  .phase-row {
    grid-template-columns: auto 1fr !important;
    grid-template-areas:
      "num heading"
      "desc desc"
      "vis vis" !important;
    gap: 6px 16px !important;
    align-items: center;
  }
  .phase-row .phase-num {
    grid-area: num;
    font-size: 2.4rem !important;
    line-height: 1;
    margin: 0;
  }
  .phase-row .phase-content {
    display: contents;
  }
  .phase-row .phase-content h3 {
    grid-area: heading;
    margin: 0;
    align-self: center;
    font-size: 1.5rem !important;
    line-height: 1.05;
  }
  .phase-row .phase-content p {
    grid-area: desc;
    margin: 6px 0 0;
  }
  .phase-row .phase-visual {
    grid-area: vis;
    margin-top: 18px;
  }
}

/* === Login layout — login card is now primary visual === */
/* Reduce side panel visual weight + larger login card column */
.login-hero-v2-grid {
  grid-template-columns: 1.2fr 0.95fr !important;
  gap: 48px !important;
  align-items: start !important;
}
.login-hero-v2-left {
  display: flex;
  flex-direction: column;
}
.login-hero-v2-left .breadcrumb { margin-bottom: 24px; }
.login-hero-v2-left .login-card {
  margin-top: 8px;
  /* stronger emphasis: bigger shadow, brighter border */
  box-shadow: 0 30px 80px rgba(0,0,0,0.65), 0 0 100px rgba(230,165,42,0.10), 0 0 0 1px rgba(230,165,42,0.16);
}
.login-hero-v2-left .login-h1 {
  font-size: clamp(2.2rem, 4.5vw, 3.4rem) !important;
  margin-bottom: 16px !important;
}
.login-hero-v2-left .login-lede {
  font-size: 0.96rem;
  margin-bottom: 28px;
  max-width: 560px;
}

/* Side panel — less competing visual weight */
.login-side {
  position: sticky;
  top: 24px;
  align-self: start;
}
.login-side-card {
  background: var(--dark-2) !important;
  border: 1px solid var(--line-dark) !important;
  box-shadow: none !important;
  padding: 28px 26px !important;
}
.login-side-title {
  font-size: 1.4rem !important;
  margin-bottom: 20px !important;
}
.login-side-list li {
  padding: 11px 0 !important;
  font-size: 0.88rem !important;
}
.login-side-list strong {
  font-size: 0.92rem !important;
}

@media (max-width: 880px) {
  .login-hero-v2-grid { grid-template-columns: 1fr !important; }
  .login-side { position: static; }
}


/* === FIX: showcase-features list (was using 32px num column that's now gone) === */
.showcase-features li {
  display: block !important;
  grid-template-columns: none !important;
  padding: 18px 0 !important;
  gap: 0 !important;
}
.showcase-features li > span {
  display: block;
}
.showcase-features li strong {
  display: block;
  font-family: var(--font-display);
  font-size: 1.3rem;
  font-weight: 700;
  letter-spacing: -0.015em;
  color: var(--ink-strong);
  margin-bottom: 6px;
}
.showcase-features li p {
  display: block;
  font-size: 0.94rem;
  color: var(--ink-dim);
  margin: 0;
  line-height: 1.55;
}


/* ============================================================
   HERO TEXT ALIGNMENT WITH VIDEO ON PC
   Video has max-width: 1080px and is centered. Text was at full
   container width (1280px). Now constrain text to match video.
   Mobile: full width as before.
   ============================================================ */
@media (min-width: 880px) {
  .hero-v2 .container > .hero-v2-h1,
  .hero-v2 .container > .hero-v2-tagline,
  .hero-v2 .container > .hero-v2-sub,
  .hero-v2 .container > .hero-v2-cta-row {
    max-width: 1080px;
    margin-left: auto;
    margin-right: auto;
  }
}

/* ============================================================
   FAQ ALIGNMENT — heading constrained to match list width
   ============================================================ */
@media (min-width: 880px) {
  section .faq-list {
    /* it's already max-width: 920px; margin: 0 auto */
  }
  /* Find the FAQ section's heading area and constrain it too */
  .faq-section-header,
  section:has(> .container > .faq-list) > .container > :not(.faq-list) {
    max-width: 920px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* ============================================================
   LOGIN PAGE RESTRUCTURE — login card on RIGHT, benefits BELOW
   ============================================================ */
.login-hero-v2-grid {
  grid-template-columns: 1fr 1fr !important;
  gap: 56px !important;
  align-items: start !important;
}
.login-hero-v2-left {
  display: flex;
  flex-direction: column;
  padding-top: 8px;
}
.login-hero-v2-right {
  /* Login card sits here on PC, prominent */
}
.login-hero-v2-right .login-card {
  margin-top: 0 !important;
  box-shadow: 0 30px 80px rgba(0,0,0,0.65), 0 0 100px rgba(230,165,42,0.10), 0 0 0 1px rgba(230,165,42,0.16) !important;
}
.login-benefits-wrap {
  margin-top: clamp(48px, 8vw, 80px);
  margin-bottom: clamp(40px, 6vw, 64px);
  max-width: 1080px;
}
.login-benefits-wrap .login-side {
  position: static !important;
}
.login-benefits-wrap .login-side-card {
  background: var(--dark-2) !important;
  padding: 36px 36px !important;
}
.login-benefits-wrap .login-side-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 32px;
}
.login-benefits-wrap .login-side-list li {
  border-top: 1px solid var(--line-dark) !important;
}

@media (max-width: 880px) {
  .login-hero-v2-grid { grid-template-columns: 1fr !important; gap: 28px !important; }
  .login-benefits-wrap .login-side-list { grid-template-columns: 1fr; }
}

/* ============================================================
   COURSES "How to Choose" — clean rows, no overlap
   ============================================================ */
.choose-grid {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 28px 0 32px;
}
.choose-row {
  display: grid;
  grid-template-columns: 200px 1fr;
  gap: 24px;
  align-items: center;
  padding: 18px 22px;
  background: var(--dark-card);
  border: 1px solid var(--line-dark);
  border-radius: var(--r);
}
.choose-tag {
  font-family: var(--font-mono);
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: var(--rust-bright);
  font-weight: 600;
}
.choose-text {
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  border: none !important;
  font-size: 0.96rem !important;
  line-height: 1.5 !important;
  color: var(--ink) !important;
}
.choose-text a {
  color: var(--rust-bright) !important;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
}
@media (max-width: 720px) {
  .choose-row {
    grid-template-columns: 1fr;
    gap: 6px;
    padding: 14px 18px;
  }
  .choose-tag { font-size: 0.7rem; }
}

/* === Defang stale .campus-card rules so they don't interfere === */
.campus-card { display: none !important; }


/* === FIX: prose ul li — was breaking on items with mixed text + links === */
/* Old grid layout made each text node a separate grid item; replaced with
   absolute-positioned arrow + normal text flow */
.prose ul li {
  display: block !important;
  grid-template-columns: none !important;
  padding: 14px 18px 14px 44px !important;
  position: relative;
  background: var(--dark-card);
  border: 1px solid var(--line-dark);
  border-radius: var(--r);
  margin-bottom: 8px !important;
  font-size: 0.97rem;
  line-height: 1.55;
  color: var(--ink);
}
.prose ul li::before {
  content: "→";
  position: absolute;
  left: 18px;
  top: 14px;
  color: var(--rust-bright);
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.55;
}


/* === FIX: Hero tagline centering on PC === */
/* tagline is inline-flex (content-width). To align with H1 (which is constrained
   to 1080px and centered via margin:auto), tagline needs to be in a block wrapper
   that's also constrained and centered. */
@media (min-width: 880px) {
  .hero-v2 .container > .hero-v2-tagline {
    display: block;
    max-width: 1080px;
    margin: 6px auto 24px !important;
    text-align: left;
  }
  .hero-v2 .container > .hero-v2-tagline .hero-v2-dot {
    display: inline-block;
    vertical-align: middle;
    margin-right: 10px;
  }
  .hero-v2 .container > .hero-v2-tagline > span:last-child {
    vertical-align: middle;
  }
}
