:root{
  --bg:#07111f;--bg2:#0a1626;--card:#0e1d2f;--text:#f6f8fc;--muted:#9ba9bc;
  --border:#23354b;--primary:#ffe055;--primary2:#83ceff;--success:#9ee8b5;--danger:#ffb5b5;
  --shadow:0 28px 80px rgba(0,0,0,.30);--radius:22px;--max:1180px
}

/* Account progress uses the same restrained cards as the rest of the dashboard. */
.account-progress-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.account-progress-grid .card{display:flex;min-height:142px;flex-direction:column;align-items:flex-start;justify-content:flex-end}
.account-progress-grid .card span,.account-progress-grid .card small{color:var(--muted)}
.account-progress-grid .card strong{margin:8px 0 2px;font-size:3rem;line-height:1}
.account-sync-line{display:flex;align-items:center;gap:10px;margin-top:18px;padding:14px 16px;border:1px solid var(--border);border-radius:14px;background:rgba(255,255,255,.035)}
.account-sync-line strong{margin-left:auto}
.account-sync-dot{width:10px;height:10px;border-radius:50%;background:#72d6b1;box-shadow:0 0 0 5px rgba(114,214,177,.12)}
@media(max-width:760px){.account-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.account-progress-grid .card strong{font-size:2.4rem}.account-sync-line{align-items:flex-start;flex-wrap:wrap}.account-sync-line strong{width:100%;margin-left:20px}}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;overflow-x:hidden}
a{color:inherit;text-decoration:none}button,input{font:inherit}button{color:inherit}.container{width:min(var(--max),calc(100% - 40px));margin:auto}.section{padding:92px 0;scroll-margin-top:84px}.alt{background:var(--bg2)}
.site-header{position:sticky;top:0;z-index:50;background:rgba(7,17,31,.86);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.06)}
.header-inner{height:72px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:10px;font-weight:850;font-size:1.1rem}.brand-mark{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(135deg,var(--primary),#6878ff);color:#06101e}
.main-nav{display:flex;align-items:center;gap:22px;color:#c5cfdd;font-size:.93rem}.main-nav a:hover{color:#fff}.menu-button{display:none;border:0;background:none;width:44px;height:44px;padding:10px;cursor:pointer}.menu-button span{display:block;height:2px;background:#fff;margin:5px 0;border-radius:2px}
.hero{padding-top:84px}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center}.eyebrow{display:inline-block;color:var(--primary2);font-size:.78rem;font-weight:850;text-transform:uppercase;letter-spacing:.12em;margin-bottom:14px}.hero h1,.section-head h2,.parent-grid h2,.newsletter-card h2{margin:0;line-height:1.02;letter-spacing:-.045em}.hero h1{font-size:clamp(3rem,7vw,5.8rem);max-width:760px}.lead{font-size:clamp(1.06rem,2vw,1.24rem);color:var(--muted);max-width:680px;margin:24px 0}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.btn{min-height:48px;padding:0 18px;border-radius:14px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;font-weight:800;cursor:pointer;transition:.18s ease}.btn:hover{transform:translateY(-1px)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.primary{background:var(--primary);color:#06101e}.secondary{background:rgba(255,255,255,.04);border-color:var(--border);color:var(--text)}.full{width:100%}.trust{display:flex;gap:16px;flex-wrap:wrap;margin-top:28px;color:#8998ad;font-size:.87rem}
.hero-preview{display:flex;justify-content:center}.phone{width:min(100%,390px);aspect-ratio:9/15.2;border:1px solid #31445e;border-radius:42px;padding:14px;background:#06101b;box-shadow:var(--shadow)}.phone-top{display:flex;justify-content:space-between;padding:10px 14px;color:#b8c4d5;font-size:.85rem}.phone-body{height:calc(100% - 45px);background:linear-gradient(180deg,#111f32,#0c1928);border-radius:30px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:26px}.phone-body strong{font-size:clamp(2.4rem,5vw,4.2rem);margin:34px 0 10px}.small{font-size:.77rem;text-transform:uppercase;letter-spacing:.1em;color:#91a0b6}.translation{font-size:1.4rem;color:var(--primary2)}.phone-btns{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;margin-top:50px}.phone-btns button{border:1px solid var(--border);background:#13243a;color:#fff;padding:12px;border-radius:12px}
.section-head{max-width:720px;margin-bottom:34px}.section-head h2,.parent-grid h2,.newsletter-card h2{font-size:clamp(2.2rem,5vw,4rem)}.section-head p,.newsletter-card p{color:var(--muted);font-size:1.03rem}
.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:24px}.demo-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:24px;align-items:stretch}.flashcard{width:100%;min-height:360px;border:1px solid #314660;border-radius:28px;background:linear-gradient(160deg,#12243a,#0b1726);padding:28px;cursor:pointer;box-shadow:var(--shadow)}.flashcard>span{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}.flashcard>[hidden]{display:none!important}.flashcard small{font-size:.77rem;text-transform:uppercase;letter-spacing:.1em;color:#91a0b6}.flashcard strong{font-size:clamp(2.8rem,8vw,5.5rem);letter-spacing:-.04em}.flashcard em{font-style:normal;color:var(--muted)}.demo-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.demo-stats{display:flex;flex-direction:column;justify-content:center}.stat{display:flex;justify-content:space-between;align-items:end}.stat span{color:var(--muted)}.stat strong{font-size:1.5rem}.progress{height:10px;background:#17273a;border-radius:99px;margin:14px 0 28px;overflow:hidden}.progress span{display:block;height:100%;width:12.5%;background:var(--primary);border-radius:inherit;transition:width .2s}.stat-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.stat-pair div{padding:16px;border-radius:14px;background:#0a1726}.stat-pair span{display:block;color:var(--muted);font-size:.85rem}.stat-pair strong{font-size:1.8rem}.demo-stats p{color:var(--muted);margin:20px 0 0}
.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.feature-grid b{color:var(--primary2)}.feature-grid h3{font-size:1.22rem}.feature-grid p{color:var(--muted);margin-bottom:0}
.class-buttons{display:flex;gap:10px;flex-wrap:wrap}.class-buttons button{border:1px solid var(--border);background:var(--card);padding:12px 17px;border-radius:12px;cursor:pointer}.class-buttons button.active{background:var(--primary);color:#06101e;border-color:transparent}.class-result{margin-top:16px;color:#cbd5e3}
.parent-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:26px;align-items:center}.weekly{display:grid;gap:8px}.weekly>strong{font-size:4.5rem;line-height:1}.weekly>span,.weekly p{color:var(--muted)}
.pricing-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:860px}.price-card{display:flex;flex-direction:column}.price-card.featured{border-color:#5f70da}.tag{color:var(--primary2);font-weight:850;font-size:.82rem;text-transform:uppercase}.price{font-size:2.1rem;font-weight:850;margin:10px 0 18px}.price-card ul{padding-left:20px;color:#c9d2df;flex:1}
.newsletter-card{display:grid;grid-template-columns:.85fr 1.15fr;gap:30px;align-items:start;border:1px solid var(--border);border-radius:28px;background:linear-gradient(135deg,rgba(139,152,255,.10),rgba(255,255,255,.03));padding:30px}.newsletter-form{display:grid;gap:12px}.newsletter-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.newsletter-form input[type=email]{width:100%;min-height:50px;border:1px solid var(--border);border-radius:13px;background:#081522;color:#fff;padding:0 14px;outline:none}.newsletter-form input[type=email]:focus{border-color:var(--primary)}.check{display:flex;gap:10px;align-items:flex-start;color:#b9c5d5;font-size:.91rem}.check input{width:18px;height:18px;margin-top:3px;accent-color:var(--primary)}.check a,.note a{color:var(--primary2);text-decoration:underline}.note{font-size:.86rem!important;margin:0}.form-status{min-height:24px;font-weight:700}.form-status.success{color:var(--success)}.form-status.error{color:var(--danger)}.honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.social-links{display:flex;gap:10px;flex-wrap:wrap}.social-links a{border:1px solid var(--border);border-radius:12px;padding:10px 14px;background:#0a1726}
.site-footer{border-top:1px solid var(--border);padding:32px 0;background:#06101b}.footer-inner{display:flex;justify-content:space-between;gap:24px}.footer-inner>div:first-child{display:grid;gap:4px}.footer-inner span{color:var(--muted);font-size:.87rem}.footer-links{display:flex;gap:16px;flex-wrap:wrap;color:#b9c4d4}.link-button{border:0;background:none;color:inherit;text-decoration:underline;cursor:pointer;padding:0}
.consent-layer{position:fixed;inset:0;z-index:1000;display:grid;place-items:end center;padding:18px}.consent-layer[hidden]{display:none!important}.consent-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.62);backdrop-filter:blur(5px)}.consent-dialog{position:relative;width:min(860px,100%);background:#0c1a2b;border:1px solid #2c4059;border-radius:24px;padding:26px;box-shadow:0 35px 90px rgba(0,0,0,.5)}.consent-dialog h2{font-size:clamp(1.55rem,4vw,2.3rem);margin:0 0 10px}.consent-dialog>p{color:var(--muted)}.consent-options{display:grid;gap:10px;margin:18px 0}.consent-options label{display:flex;justify-content:space-between;align-items:center;gap:18px;border:1px solid var(--border);border-radius:14px;padding:14px;background:#091727}.consent-options label span{display:grid;gap:2px}.consent-options small{color:var(--muted)}.consent-options input{width:21px;height:21px;accent-color:var(--primary)}.consent-actions{display:flex;gap:10px;flex-wrap:wrap}
@media(max-width:1024px){
  .container{width:min(var(--max),calc(100% - 48px))}.hero-grid{grid-template-columns:1fr 1fr;gap:34px}.hero h1{font-size:clamp(3rem,7vw,4.6rem)}
  .feature-grid{grid-template-columns:1fr 1fr}.demo-grid{grid-template-columns:1fr}.flashcard{min-height:320px}.newsletter-card{grid-template-columns:1fr}.section{padding:76px 0}
}
@media(max-width:820px){
  .menu-button{display:block}.main-nav{position:absolute;top:72px;left:20px;right:20px;display:none;flex-direction:column;align-items:stretch;gap:0;background:#0b1929;border:1px solid var(--border);border-radius:18px;padding:10px;box-shadow:var(--shadow)}.main-nav.open{display:flex}.main-nav a{padding:12px 14px;border-radius:10px}
  .hero-grid,.parent-grid{grid-template-columns:1fr}.hero-preview{margin-top:14px}.phone{max-width:440px}.contact-grid{grid-template-columns:1fr}.footer-inner{flex-direction:column}
}
@media(max-width:620px){
  .container{width:min(100% - 28px,var(--max))}.section{padding:62px 0}.hero{padding-top:54px}.hero h1{font-size:clamp(2.7rem,13vw,4.4rem)}.lead{font-size:1rem}
  .feature-grid,.pricing-grid{grid-template-columns:1fr}.newsletter-card{padding:22px}.newsletter-row{grid-template-columns:1fr}.newsletter-row .btn{width:100%}.flashcard{min-height:290px}.flashcard strong{font-size:clamp(2.8rem,15vw,4.8rem)}.consent-layer{padding:10px}.consent-dialog{max-height:90vh;overflow:auto;padding:20px}.consent-actions{display:grid}.consent-actions .btn{width:100%}
}
@supports(padding:max(0px)){body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}}


/* Benutzerkonto / Auth */
.account-controls{display:flex;align-items:center;gap:10px}.account-email{max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#9eacc0;font-size:.82rem}.account-controls form{margin:0}.logout-button{border:1px solid var(--border);background:#0a1726;color:#fff;border-radius:11px;padding:9px 12px;font-weight:800;cursor:pointer}.logout-button:hover{border-color:#5f70da}
.auth-page{min-height:100vh;background:radial-gradient(circle at 50% -10%,rgba(139,152,255,.14),transparent 38%),var(--bg);padding:0}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:32px 16px}.auth-card{width:min(470px,100%);background:rgba(14,29,47,.96);border:1px solid var(--border);border-radius:28px;padding:30px;box-shadow:var(--shadow)}.auth-card.wide{width:min(680px,100%)}.auth-brand{width:max-content;margin-bottom:34px}.auth-card h1{font-size:clamp(2.2rem,8vw,3.6rem);letter-spacing:-.045em;line-height:1.02;margin:0}.auth-lead{color:var(--muted);line-height:1.6;margin:14px 0 24px}.auth-form{display:grid;gap:16px}.auth-form label{display:grid;gap:7px;font-weight:800;color:#e5eaf2}.auth-form input{width:100%;min-height:52px;border:1px solid var(--border);border-radius:13px;background:#081522;color:#fff;padding:0 14px;outline:none;font:inherit}.auth-form input:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(139,152,255,.1)}.auth-form input:disabled{opacity:.55}.field-help{color:var(--muted);font-size:.82rem;margin:-8px 0 0;line-height:1.45}.auth-alert{padding:13px 14px;border-radius:13px;margin:0 0 18px;line-height:1.5}.auth-alert.error{background:rgba(255,138,138,.09);border:1px solid rgba(255,138,138,.25);color:#ffc2c2}.auth-alert.success{background:rgba(112,216,151,.1);border:1px solid rgba(112,216,151,.25);color:#b9efca}.auth-link{display:inline-block;margin-top:18px;color:var(--primary2);font-weight:800}.auth-divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:.85rem;margin:24px 0 14px}.auth-divider:before,.auth-divider:after{content:"";height:1px;background:var(--border);flex:1}.auth-footnote{color:var(--muted);font-size:.8rem;line-height:1.5;margin:20px 0 0}.auth-footnote code{color:#d8defe}.auth-card .actions{margin-top:18px}
@media(max-width:820px){.account-controls{align-items:stretch;flex-direction:column;margin:10px}.account-email{max-width:none;padding:7px 4px}.logout-button{width:100%;min-height:44px}}
@media(max-width:520px){.auth-shell{padding:18px 12px}.auth-card{padding:24px 20px;border-radius:22px}.auth-brand{margin-bottom:28px}}


/* Public account CTA */
.header-inner{position:relative}
.main-nav{margin-left:auto}
.header-right{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.header-account-button{min-height:42px;padding:0 15px;border-radius:12px;white-space:nowrap;font-size:.9rem}
@media(max-width:820px){
  .header-inner{gap:10px}
  .header-right{margin-left:auto}
  .main-nav{margin-left:0}
  .header-account-button{min-height:40px;padding:0 12px;font-size:.82rem}
}
@media(max-width:430px){
  .brand{font-size:1rem;gap:8px}
  .brand-mark{width:32px;height:32px}
  .header-account-button{padding:0 10px;font-size:.76rem}
  .menu-button{width:40px;height:40px;padding:8px}
}


/* Auth layout hardening */
.auth-page .auth-shell{width:100%;min-height:100svh}
.auth-page .auth-card{display:block;max-width:470px;margin:0 auto}
.auth-page .auth-form{width:100%}
.auth-page .auth-form label{width:100%;min-width:0}
.auth-page .auth-form input{display:block;width:100%;max-width:100%}
@media(max-width:520px){
  .auth-page .auth-shell{place-items:start center;padding:24px 14px 40px}
  .auth-page .auth-card{width:100%;max-width:470px;padding:24px 18px}
  .auth-page .auth-card h1{font-size:clamp(2.1rem,12vw,3rem)}
}


/* ==========================================================
   VocalHero 2026 Landing Page — product-led / editorial style
   ========================================================== */
.landing-been{background:#07111f;color:#f7f8fc;overflow-x:hidden}
.landing-been .container{width:min(1180px,calc(100% - 40px))}
.landing-been .been-header{background:rgba(7,17,31,.78);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.landing-been .been-header .header-inner{min-height:76px}
.landing-been .been-header .main-nav a{color:#aeb9ca}
.landing-been .been-header .main-nav a:hover{color:#fff}

.been-hero{padding:118px 0 80px;position:relative;overflow:hidden}
.been-hero:before{content:"";position:absolute;left:50%;top:180px;width:760px;height:760px;transform:translateX(-50%);background:radial-gradient(circle,rgba(127,140,255,.18),rgba(127,140,255,0) 68%);pointer-events:none}
.been-hero-copy{text-align:center;position:relative;z-index:2;max-width:940px}
.been-kicker,.landing-been .eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:.78rem;font-weight:850;letter-spacing:.16em;text-transform:uppercase;color:#aeb9ff}
.been-hero h1{margin:18px auto 24px;font-size:clamp(3.7rem,9.5vw,8.6rem);line-height:.88;letter-spacing:-.065em;max-width:1100px}
.been-hero h1 span{color:#8996ff}
.been-hero-copy>p{margin:0 auto;max-width:690px;font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.65;color:#aab5c5}
.been-actions{justify-content:center;margin-top:30px}
.big-cta{min-height:54px;padding:0 22px;border-radius:16px}

.product-stage{height:760px;position:relative;margin-top:55px;display:grid;place-items:center}
.hero-phone{width:min(330px,76vw);height:690px;padding:12px;border-radius:54px;background:#03070d;border:1px solid #334865;box-shadow:0 60px 120px rgba(0,0,0,.42);position:relative;z-index:3;transform:rotate(-1.3deg)}
.device-island{position:absolute;top:18px;left:50%;transform:translateX(-50%);width:108px;height:28px;border-radius:20px;background:#020306;z-index:5}
.device-screen{height:100%;border-radius:43px;background:linear-gradient(165deg,#101e31,#081522 60%,#0a1725);padding:56px 19px 18px;display:flex;flex-direction:column;overflow:hidden}
.app-top,.app-progress-label,.bento-head,.report-head,.exam-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.app-top{font-weight:850}.mini-pill{display:inline-flex;align-items:center;border:1px solid #2b4058;background:#122339;padding:6px 9px;border-radius:999px;font-size:.72rem}
.app-progress-label{margin-top:34px;color:#91a1b6;font-size:.78rem}
.app-progress-label strong{color:#fff}
.app-progress-track,.exam-track,.tiny-progress{height:7px;border-radius:99px;background:#1b2a3c;overflow:hidden;margin-top:9px}
.app-progress-track span{display:block;width:70%;height:100%;border-radius:inherit;background:#8996ff}
.app-word-card{min-height:285px;margin-top:22px;border-radius:28px;border:1px solid #314761;background:linear-gradient(160deg,rgba(28,48,71,.92),rgba(12,28,44,.9));display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px}
.app-word-card small{letter-spacing:.17em;color:#8391a5}
.app-word-card strong{font-size:3rem;margin:24px 0 16px}
.app-hint{font-size:.83rem;color:#8d9cb0}
.app-answer-row{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:16px}
.app-answer-row button{border:1px solid #31445d;background:#142336;color:#eef2f8;padding:13px 7px;border-radius:15px;font-weight:750}
.app-answer-row button:last-child{background:#8996ff;color:#07111f;border-color:#8996ff}
.app-bottom-nav{margin-top:auto;padding-top:18px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #24364a}
.app-bottom-nav span{text-align:center;color:#8898aa;font-size:1rem}.app-bottom-nav small{display:block;font-size:.58rem;margin-top:4px}

.float-card{position:absolute;z-index:4;background:rgba(15,30,47,.88);border:1px solid #31465f;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:20px;padding:15px 17px;box-shadow:0 22px 50px rgba(0,0,0,.25)}
.float-card small,.float-card span{color:#92a1b4}.float-card strong{display:block;font-size:1.15rem;margin-top:3px}
.float-streak{left:10%;top:16%;display:flex;align-items:center;gap:11px}.float-icon{font-size:1.55rem}
.float-progress{right:8%;top:24%;min-width:130px}.float-progress strong{font-size:1.8rem;color:#a7b0ff}
.float-words{left:12%;bottom:19%;min-width:130px}.float-words strong{font-size:2rem}
.float-ready{right:7%;bottom:16%;display:flex;align-items:center;gap:11px}.status-dot{width:10px;height:10px;border-radius:50%;background:#7ee2a8;box-shadow:0 0 0 6px rgba(126,226,168,.1)}

.been-feature-section{padding:130px 0}
.alt-soft{background:#0a1523}
.been-split{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:80px;align-items:center}
.been-split.reverse{grid-template-columns:minmax(0,1.14fr) minmax(0,.86fr)}
.been-copy h2,.been-centered-copy h2{font-size:clamp(2.8rem,6vw,5.8rem);line-height:.98;letter-spacing:-.055em;margin:14px 0 24px}
.been-copy p,.been-centered-copy p{font-size:1.08rem;line-height:1.75;color:#a5b0c0;max-width:600px}
.been-centered-copy{text-align:center;max-width:820px;margin:0 auto 56px}.been-centered-copy p{margin-left:auto;margin-right:auto}
.mini-points{display:flex;flex-direction:column;gap:11px;margin-top:30px;color:#d7ddeb;font-weight:700}

.feature-visual{min-height:570px;position:relative;border-radius:44px;background:radial-gradient(circle at 50% 25%,#1b2e48,#0c1725 63%);border:1px solid #20344d;overflow:hidden}
.learning-visual{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:20px;padding:55px}
.mini-phone{background:#07101b;border:1px solid #334964;border-radius:38px;padding:28px 18px 18px;min-height:455px;box-shadow:0 35px 70px rgba(0,0,0,.28)}
.mini-phone-head{display:flex;justify-content:space-between;color:#8898ad;font-size:.82rem}
.mini-flashcard{height:290px;margin-top:22px;border:1px solid #32465e;border-radius:28px;background:linear-gradient(145deg,#14263b,#0b1928);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.mini-flashcard small{letter-spacing:.16em;color:#8c9aaf}.mini-flashcard strong{font-size:2.8rem;margin:24px 0 12px}.mini-flashcard span{color:#a6b1c1}
.confidence-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.confidence-row span{text-align:center;background:#142437;border:1px solid #2a3f57;padding:12px;border-radius:14px;font-size:.82rem;font-weight:750}.confidence-row span:last-child{background:#8996ff;color:#07111f;border-color:#8996ff}
.side-stack{display:flex;flex-direction:column;gap:16px}.side-card{background:rgba(12,25,40,.86);border:1px solid #30455e;border-radius:22px;padding:22px}.side-card p{margin:8px 0 0;color:#a8b4c4;line-height:1.5}.side-number{font-size:2.2rem;font-weight:900;color:#aab3ff}.side-symbol{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#1a2c44;color:#aab3ff;font-size:1.4rem}

.bento-grid{display:grid;grid-template-columns:1.55fr .75fr .75fr;grid-template-rows:220px 220px;gap:16px}
.bento-card{background:#0f1e30;border:1px solid #263b54;border-radius:28px;padding:24px;overflow:hidden}
.bento-large{grid-row:span 2}.bento-head{color:#9caabc;font-weight:750}
.chart-bars{height:330px;margin-top:25px;display:flex;align-items:end;gap:10px;padding-top:24px}
.chart-bars>span{height:var(--h);flex:1;min-width:0;border-radius:10px 10px 4px 4px;background:linear-gradient(#8996ff,#5362ca);position:relative}
.chart-bars small{position:absolute;top:calc(100% + 10px);left:50%;transform:translateX(-50%);font-size:.68rem;color:#7f8fa3}
.metric-card{display:flex;flex-direction:column;justify-content:center}.metric-card .metric-icon{font-size:1.7rem}.metric-card strong{font-size:2.5rem;margin:14px 0 4px}.metric-card>span:last-child{color:#91a0b3}
.learned-card{display:flex;flex-direction:column;justify-content:center}.learned-card>span{color:#8fa0b5}.learned-card strong{font-size:2rem;margin:10px 0}.tiny-progress i{display:block;height:100%;border-radius:inherit;background:#8996ff}.learned-card small{margin-top:9px;color:#8393a7}
.test-card{grid-column:span 2;display:flex;align-items:center;gap:20px}.test-ring{width:100px;height:100px;flex:0 0 100px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#8996ff 0 86%,#223349 86%);position:relative}.test-ring:after{content:"";position:absolute;inset:9px;border-radius:50%;background:#0f1e30}.test-ring span,.test-ring small{position:relative;z-index:1}.test-ring span{font-size:1.8rem;font-weight:900}.test-ring small{margin-left:-34px;margin-top:35px;color:#9ca9ba}.test-card p{color:#8fa0b4;margin:5px 0 0}

.test-visual{min-height:620px;display:grid;place-items:center}
.exam-phone{width:min(330px,72%);background:#091522;border:1px solid #344a64;border-radius:40px;padding:35px 22px 24px;box-shadow:0 35px 70px rgba(0,0,0,.3)}
.exam-head small{color:#8fa0b5}.exam-score{margin-top:42px}.exam-score>span{color:#8fa0b5}.exam-score>strong{font-size:4.3rem;display:block;margin-top:10px}.exam-track i{display:block;height:100%;width:86%;background:#8996ff;border-radius:inherit}
.exam-list{margin:35px 0 22px}.exam-list div{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid #22354a}.exam-list span{color:#9aa8b9}.exam-phone button{width:100%;border:0;border-radius:15px;padding:15px;background:#8996ff;color:#07111f;font-weight:850}


.text-link{display:inline-flex;align-items:center;gap:10px;margin-top:25px;color:#b4bcff;font-weight:850;text-decoration:none}.text-link span{transition:.2s}.text-link:hover span{transform:translateX(4px)}

.demo-modern{padding-top:110px;padding-bottom:120px}.modern-demo{max-width:920px;margin:auto}
.demo-modern .flashcard{box-shadow:0 30px 70px rgba(0,0,0,.22)}
.class-modern{padding:110px 0}.class-modern .class-buttons{max-width:760px;margin:0 auto}.class-modern .class-result{max-width:760px;margin:14px auto 0}
.parent-modern{padding:130px 0}
.parent-report{background:#101f31;border:1px solid #2c425c;border-radius:32px;padding:30px}.report-head{color:#8fa0b5}.report-main{display:flex;align-items:baseline;gap:12px;padding:35px 0 25px}.report-main strong{font-size:5rem;letter-spacing:-.06em}.report-main span{color:#9ba9bb}.report-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.report-grid div{background:#0b1725;border-radius:18px;padding:16px}.report-grid strong{display:block;font-size:1.4rem}.report-grid span{font-size:.76rem;color:#8fa0b5}
.pricing-modern{padding:130px 0}.newsletter-modern{padding:110px 0 130px}.newsletter-modern .newsletter-card{border-radius:34px}.contact-modern{padding:100px 0 120px}

.final-cta{padding:150px 0;background:radial-gradient(circle at 50% 100%,rgba(137,150,255,.17),transparent 55%)}
.final-cta-inner{text-align:center}.final-cta h2{font-size:clamp(3rem,7vw,6.7rem);line-height:.95;letter-spacing:-.06em;max-width:980px;margin:15px auto 35px}

[data-reveal]{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
[data-reveal].is-visible{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transform:none;transition:none}}

@media(max-width:980px){
  .product-stage{height:680px}.hero-phone{height:620px;width:300px}
  .float-streak{left:2%}.float-progress{right:1%}.float-words{left:3%}.float-ready{right:1%}
  .been-split,.been-split.reverse{grid-template-columns:1fr;gap:48px}.been-split.reverse .been-copy{order:-1}
  .feature-visual{min-height:520px}
  .bento-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}.bento-large{grid-column:span 2;grid-row:auto;min-height:420px}.test-card{grid-column:span 2}
}
@media(max-width:820px){
  .been-hero{padding-top:90px}
  .been-header .main-nav{top:68px}
  .been-header .main-nav.open{display:flex}
  .product-stage{height:630px}
  .hero-phone{height:590px;width:280px}
  .float-card{transform:scale(.9)}
  .float-streak{left:-2%;top:12%}.float-progress{right:-3%;top:23%}.float-words{left:-4%;bottom:16%}.float-ready{right:-5%;bottom:13%}
  .been-feature-section{padding:95px 0}
  .learning-visual{padding:35px;grid-template-columns:1fr}.side-stack{display:grid;grid-template-columns:1fr 1fr}.mini-phone{max-width:370px;margin:auto;width:100%}
}
@media(max-width:620px){
  .landing-been .container{width:min(100% - 24px,1180px)}
  .been-hero{padding:72px 0 52px}
  .been-hero h1{font-size:clamp(3.25rem,16vw,5.4rem)}
  .been-hero-copy>p{font-size:1rem}
  .been-actions{display:grid;grid-template-columns:1fr;width:100%;max-width:390px;margin:25px auto 0}
  .been-actions .btn{width:100%}
  .product-stage{height:595px;margin-top:32px}
  .hero-phone{height:560px;width:265px;border-radius:46px}
  .device-screen{border-radius:37px}
  .float-card{font-size:.8rem;padding:11px 12px;border-radius:16px}
  .float-streak{left:-8%;top:8%}.float-progress{right:-10%;top:21%}.float-words{left:-8%;bottom:11%}.float-ready{right:-12%;bottom:8%}
  .float-ready strong{font-size:.9rem}
  .been-copy h2,.been-centered-copy h2{font-size:clamp(2.6rem,13vw,4rem)}
  .been-centered-copy{margin-bottom:38px}
  .feature-visual{border-radius:28px}
  .learning-visual{padding:20px}.mini-phone{min-height:425px}.mini-flashcard{height:270px}.side-stack{grid-template-columns:1fr}
  .bento-grid{grid-template-columns:1fr}.bento-large,.test-card{grid-column:auto}.bento-large{min-height:390px}.chart-bars{height:280px}.test-card{align-items:flex-start}
  .test-visual{min-height:520px}.exam-phone{width:86%;padding:30px 18px 20px}.exam-score>strong{font-size:3.8rem}
  .report-grid{grid-template-columns:1fr}.report-main strong{font-size:4rem}
  .final-cta{padding:110px 0}
}
@media(max-width:430px){
  .product-stage{height:545px}
  .hero-phone{width:246px;height:525px}
  .app-word-card{min-height:245px}.app-word-card strong{font-size:2.6rem}
  .float-progress{right:-15%}.float-ready{right:-17%}.float-streak{left:-12%}.float-words{left:-12%}
}


/* ==========================================================
   Mobile polish – hero, metrics and test readiness
   ========================================================== */

/* Cleaner test-readiness ring */
.test-ring{
  display:grid;
  place-items:center;
  position:relative;
}
.test-ring .ring-value{
  position:relative;
  z-index:2;
  display:flex;
  align-items:baseline;
  justify-content:center;
  gap:2px;
}
.test-ring .ring-value span{
  font-size:1.8rem;
  line-height:1;
  font-weight:900;
}
.test-ring .ring-value small{
  margin:0;
  font-size:.78rem;
  line-height:1;
  color:#9ca9ba;
}
.test-ring>span,
.test-ring>small{
  margin:0;
}

/* Give metric tiles a more deliberate composition on all breakpoints */
.metric-card{
  min-height:180px;
  justify-content:flex-start;
  gap:6px;
}
.metric-card .metric-icon{
  line-height:1;
  margin-bottom:auto;
}
.metric-card strong{
  line-height:1;
}
.metric-card>span:last-child{
  line-height:1.3;
}

/* Product preview remains fully inside the mobile viewport */
@media(max-width:620px){
  .product-stage{
    height:575px;
    width:100%;
    max-width:420px;
    margin:34px auto 0;
  }

  .hero-phone{
    width:252px;
    height:540px;
    transform:none;
  }

  .float-card{
    transform:none;
    font-size:.73rem;
    padding:10px 11px;
    border-radius:15px;
    max-width:128px;
    box-shadow:0 14px 30px rgba(0,0,0,.22);
  }

  .float-card strong{
    font-size:.94rem;
  }

  .float-streak{
    left:0;
    top:10%;
  }

  .float-progress{
    right:0;
    top:21%;
    min-width:112px;
  }

  .float-progress strong{
    font-size:1.35rem;
  }

  .float-words{
    left:0;
    bottom:14%;
    min-width:110px;
  }

  .float-words strong{
    font-size:1.45rem;
  }

  .float-ready{
    right:0;
    bottom:10%;
    max-width:135px;
  }

  .float-ready strong{
    font-size:.78rem;
    line-height:1.2;
  }

  /* Compact metric cards instead of tall empty tiles */
  .bento-grid{
    gap:12px;
  }

  .metric-card{
    min-height:128px;
    display:grid;
    grid-template-columns:auto 1fr;
    grid-template-rows:auto auto;
    column-gap:14px;
    row-gap:4px;
    align-items:center;
    padding:18px 20px;
  }

  .metric-card .metric-icon{
    grid-row:1 / 3;
    width:44px;
    height:44px;
    display:grid;
    place-items:center;
    margin:0;
    border-radius:14px;
    background:#14253a;
    font-size:1.45rem;
  }

  .metric-card strong{
    margin:0;
    font-size:2rem;
    align-self:end;
  }

  .metric-card>span:last-child{
    align-self:start;
    font-size:.9rem;
  }

  /* Test readiness becomes a clean horizontal card */
  .test-card{
    min-height:142px;
    display:grid;
    grid-template-columns:88px minmax(0,1fr);
    align-items:center;
    gap:18px;
    padding:20px;
  }

  .test-ring{
    width:88px;
    height:88px;
    flex:0 0 88px;
  }

  .test-ring:after{
    inset:8px;
  }

  .test-ring .ring-value span{
    font-size:1.55rem;
  }

  .test-ring .ring-value small{
    font-size:.68rem;
  }

  .test-card>div:last-child{
    min-width:0;
  }

  .test-card>div:last-child>strong{
    display:block;
    font-size:1.12rem;
    margin-bottom:6px;
  }

  .test-card p{
    font-size:.9rem;
    line-height:1.45;
  }
}

@media(max-width:430px){
  .product-stage{
    height:540px;
    max-width:360px;
  }

  .hero-phone{
    width:236px;
    height:515px;
  }

  .float-streak{
    left:2px;
    top:8%;
  }

  .float-progress{
    right:2px;
    top:20%;
  }

  /* On very narrow phones, keep only the two most useful floating badges */
  .float-words,
  .float-ready{
    display:none;
  }

  .app-word-card{
    min-height:235px;
  }

  .metric-card{
    min-height:118px;
  }

  .test-card{
    grid-template-columns:78px minmax(0,1fr);
    gap:14px;
  }

  .test-ring{
    width:78px;
    height:78px;
  }
}


/* ==========================================================
   Scroll-in animation – slower + reversible
   ========================================================== */

.scroll-phone-scene.phone-anim-ready .hero-phone,
.scroll-phone-scene.phone-anim-ready .float-card,
.scroll-phone-scene.phone-anim-ready .app-top,
.scroll-phone-scene.phone-anim-ready .app-progress-label,
.scroll-phone-scene.phone-anim-ready .app-progress-track,
.scroll-phone-scene.phone-anim-ready .app-word-card,
.scroll-phone-scene.phone-anim-ready .app-answer-row,
.scroll-phone-scene.phone-anim-ready .app-bottom-nav{
  opacity:0;
  will-change:translate,opacity;
}

/* Initial / exit positions */
.scroll-phone-scene.phone-anim-ready .hero-phone{
  translate:0 92px;
  transition:
    opacity .95s ease,
    translate 1.28s cubic-bezier(.16,.82,.18,1);
}

.scroll-phone-scene.phone-anim-ready .float-streak,
.scroll-phone-scene.phone-anim-ready .float-words{
  translate:-112px 18px;
}
.scroll-phone-scene.phone-anim-ready .float-progress,
.scroll-phone-scene.phone-anim-ready .float-ready{
  translate:112px 18px;
}
.scroll-phone-scene.phone-anim-ready .float-card{
  transition:
    opacity .82s ease,
    translate 1.08s cubic-bezier(.16,.82,.18,1);
}

.scroll-phone-scene.phone-anim-ready .app-top,
.scroll-phone-scene.phone-anim-ready .app-progress-label,
.scroll-phone-scene.phone-anim-ready .app-progress-track,
.scroll-phone-scene.phone-anim-ready .app-word-card,
.scroll-phone-scene.phone-anim-ready .app-answer-row,
.scroll-phone-scene.phone-anim-ready .app-bottom-nav{
  translate:0 30px;
  transition:
    opacity .68s ease,
    translate .92s cubic-bezier(.18,.78,.2,1);
}

/* Entered state */
.scroll-phone-scene.phone-anim-ready.phone-anim-in .hero-phone,
.scroll-phone-scene.phone-anim-ready.phone-anim-in .float-card,
.scroll-phone-scene.phone-anim-ready.phone-anim-in .app-top,
.scroll-phone-scene.phone-anim-ready.phone-anim-in .app-progress-label,
.scroll-phone-scene.phone-anim-ready.phone-anim-in .app-progress-track,
.scroll-phone-scene.phone-anim-ready.phone-anim-in .app-word-card,
.scroll-phone-scene.phone-anim-ready.phone-anim-in .app-answer-row,
.scroll-phone-scene.phone-anim-ready.phone-anim-in .app-bottom-nav{
  opacity:1;
  translate:0 0;
}

/* Slow staged entrance */
.scroll-phone-scene.phone-anim-in .hero-phone{transition-delay:.10s}
.scroll-phone-scene.phone-anim-in .app-top{transition-delay:.42s}
.scroll-phone-scene.phone-anim-in .app-progress-label{transition-delay:.55s}
.scroll-phone-scene.phone-anim-in .app-progress-track{transition-delay:.68s}
.scroll-phone-scene.phone-anim-in .app-word-card{transition-delay:.82s}
.scroll-phone-scene.phone-anim-in .app-answer-row{transition-delay:.98s}
.scroll-phone-scene.phone-anim-in .app-bottom-nav{transition-delay:1.14s}

.scroll-phone-scene.phone-anim-in .float-streak{transition-delay:.54s}
.scroll-phone-scene.phone-anim-in .float-progress{transition-delay:.72s}
.scroll-phone-scene.phone-anim-in .float-words{transition-delay:.92s}
.scroll-phone-scene.phone-anim-in .float-ready{transition-delay:1.10s}

/* Reverse motion when scrolling back up */
.scroll-phone-scene.phone-anim-ready.phone-anim-out .hero-phone{transition-delay:.36s}
.scroll-phone-scene.phone-anim-ready.phone-anim-out .app-top{transition-delay:.28s}
.scroll-phone-scene.phone-anim-ready.phone-anim-out .app-progress-label{transition-delay:.22s}
.scroll-phone-scene.phone-anim-ready.phone-anim-out .app-progress-track{transition-delay:.18s}
.scroll-phone-scene.phone-anim-ready.phone-anim-out .app-word-card{transition-delay:.12s}
.scroll-phone-scene.phone-anim-ready.phone-anim-out .app-answer-row{transition-delay:.06s}
.scroll-phone-scene.phone-anim-ready.phone-anim-out .app-bottom-nav{transition-delay:0s}
.scroll-phone-scene.phone-anim-ready.phone-anim-out .float-streak{transition-delay:.22s}
.scroll-phone-scene.phone-anim-ready.phone-anim-out .float-progress{transition-delay:.16s}
.scroll-phone-scene.phone-anim-ready.phone-anim-out .float-words{transition-delay:.10s}
.scroll-phone-scene.phone-anim-ready.phone-anim-out .float-ready{transition-delay:.04s}

/* Preserve correct phone content layout */
@media(max-width:620px){
  .product-stage.scroll-phone-scene{
    height:566px;
    width:100%;
    max-width:390px;
    margin:36px auto 0;
    overflow:visible;
  }

  .scroll-phone-scene .hero-phone{
    width:242px;
    height:536px;
    transform:none;
  }

  .scroll-phone-scene .device-screen{
    padding:50px 14px 13px;
  }

  .scroll-phone-scene .app-progress-label{
    margin-top:18px;
    font-size:.72rem;
  }

  .scroll-phone-scene .app-progress-track{
    height:6px;
    margin-top:7px;
  }

  .scroll-phone-scene .app-word-card{
    min-height:216px;
    margin-top:14px;
    padding:20px 16px;
    border-radius:24px;
  }

  .scroll-phone-scene .app-word-card strong{
    margin:17px 0 12px;
    font-size:2.55rem;
  }

  .scroll-phone-scene .app-hint{
    font-size:.76rem;
  }

  .scroll-phone-scene .app-answer-row{
    margin-top:11px;
    gap:7px;
  }

  .scroll-phone-scene .app-answer-row button{
    min-height:42px;
    padding:9px 6px;
    border-radius:13px;
    font-size:.8rem;
  }

  .scroll-phone-scene .app-bottom-nav{
    padding-top:10px;
  }

  .scroll-phone-scene .app-bottom-nav span{
    font-size:.88rem;
  }

  .scroll-phone-scene .app-bottom-nav small{
    font-size:.52rem;
    margin-top:2px;
  }

  .scroll-phone-scene .float-card{
    max-width:118px;
    padding:9px 10px;
    font-size:.68rem;
    border-radius:14px;
  }

  .scroll-phone-scene .float-card strong{
    font-size:.88rem;
    line-height:1.16;
  }

  .scroll-phone-scene .float-streak{left:0;top:11%}
  .scroll-phone-scene .float-progress{right:0;top:23%;min-width:102px}
  .scroll-phone-scene .float-progress strong{font-size:1.18rem}
  .scroll-phone-scene .float-words{display:block;left:0;bottom:14%;min-width:96px}
  .scroll-phone-scene .float-words strong{font-size:1.28rem}
  .scroll-phone-scene .float-ready{display:flex;right:0;bottom:9%;max-width:118px}
  .scroll-phone-scene .float-ready strong{font-size:.72rem}

  .scroll-phone-scene.phone-anim-ready .hero-phone{
    translate:0 68px;
  }
  .scroll-phone-scene.phone-anim-ready .float-streak,
  .scroll-phone-scene.phone-anim-ready .float-words{
    translate:-72px 12px;
  }
  .scroll-phone-scene.phone-anim-ready .float-progress,
  .scroll-phone-scene.phone-anim-ready .float-ready{
    translate:72px 12px;
  }
}

@media(max-width:430px){
  .product-stage.scroll-phone-scene{
    height:545px;
    max-width:352px;
  }

  .scroll-phone-scene .hero-phone{
    width:228px;
    height:515px;
  }

  .scroll-phone-scene .device-screen{
    padding:48px 12px 12px;
  }

  .scroll-phone-scene .app-word-card{
    min-height:204px;
  }

  .scroll-phone-scene .app-word-card strong{
    font-size:2.35rem;
  }

  .scroll-phone-scene .float-card{
    max-width:108px;
    padding:8px 9px;
  }

  .scroll-phone-scene .float-streak{left:0;top:10%}
  .scroll-phone-scene .float-progress{right:0;top:22%}
  .scroll-phone-scene .float-words{left:0;bottom:13%}
  .scroll-phone-scene .float-ready{right:0;bottom:8%;max-width:108px}
}

@media(prefers-reduced-motion:reduce){
  .scroll-phone-scene.phone-anim-ready .hero-phone,
  .scroll-phone-scene.phone-anim-ready .float-card,
  .scroll-phone-scene.phone-anim-ready .app-top,
  .scroll-phone-scene.phone-anim-ready .app-progress-label,
  .scroll-phone-scene.phone-anim-ready .app-progress-track,
  .scroll-phone-scene.phone-anim-ready .app-word-card,
  .scroll-phone-scene.phone-anim-ready .app-answer-row,
  .scroll-phone-scene.phone-anim-ready .app-bottom-nav{
    opacity:1!important;
    translate:0 0!important;
    transition:none!important;
  }
}


/* ==========================================================
   Social Media Spotlight
   ========================================================== */
.social-spotlight{
  position:relative;
  padding:130px 0;
  background:
    radial-gradient(circle at 10% 10%,rgba(37,244,238,.08),transparent 28%),
    radial-gradient(circle at 90% 20%,rgba(255,47,101,.08),transparent 30%),
    #07111f;
  overflow:hidden;
}
.social-spotlight-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:32px;
  align-items:end;
  margin-bottom:38px;
}
.social-spotlight-head h2{
  margin:14px 0 18px;
  max-width:850px;
  font-size:clamp(3rem,6.5vw,6.2rem);
  line-height:.96;
  letter-spacing:-.055em;
}
.social-spotlight-head p{
  max-width:680px;
  margin:0;
  color:#9facbf;
  font-size:1.05rem;
  line-height:1.7;
}
.social-handle{
  padding:12px 16px;
  border:1px solid #31465f;
  border-radius:999px;
  background:#0e1d2f;
  color:#dbe2ee;
  font-weight:850;
  white-space:nowrap;
}
.social-spotlight-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.social-platform-card{
  min-height:230px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:22px;
  padding:32px;
  border:1px solid #2b425c;
  border-radius:32px;
  text-decoration:none;
  color:#fff;
  overflow:hidden;
  position:relative;
  isolation:isolate;
  transition:transform .25s ease,border-color .25s ease,background .25s ease;
}
.social-platform-card:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  opacity:.72;
}
.social-platform-card:hover{
  transform:translateY(-4px);
}
.social-tiktok{
  background:#0b1725;
}
.social-tiktok:before{
  background:
    radial-gradient(circle at 18% 20%,rgba(37,244,238,.17),transparent 32%),
    radial-gradient(circle at 88% 80%,rgba(255,47,101,.14),transparent 34%);
}
.social-instagram{
  background:#0c1726;
}
.social-instagram:before{
  background:
    radial-gradient(circle at 12% 90%,rgba(255,196,0,.15),transparent 30%),
    radial-gradient(circle at 50% 40%,rgba(197,48,216,.18),transparent 40%),
    radial-gradient(circle at 92% 5%,rgba(88,81,219,.18),transparent 36%);
}
.social-tiktok:hover{border-color:rgba(37,244,238,.6)}
.social-instagram:hover{border-color:rgba(214,82,255,.55)}
.social-platform-icon{
  width:76px;
  height:76px;
  display:grid;
  place-items:center;
  flex:0 0 76px;
  border-radius:23px;
  background:#101f31;
  border:1px solid #344b66;
  font-size:2.8rem;
  font-weight:900;
}
.social-tiktok .social-platform-icon{
  text-shadow:-3px -1px 0 rgba(37,244,238,.75),3px 1px 0 rgba(255,47,101,.65);
}
.instagram-camera{
  position:relative;
}
.instagram-camera:before{
  content:"";
  position:absolute;
  width:34px;
  height:34px;
  border:4px solid #fff;
  border-radius:11px;
}
.instagram-camera i{
  width:12px;
  height:12px;
  border:4px solid #fff;
  border-radius:50%;
  display:block;
}
.instagram-camera b{
  width:5px;
  height:5px;
  border-radius:50%;
  background:#fff;
  position:absolute;
  right:20px;
  top:19px;
}
.social-platform-copy{
  min-width:0;
  display:flex;
  flex-direction:column;
}
.social-platform-copy small{
  color:#8f9db0;
  font-size:.82rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.social-platform-copy strong{
  margin:6px 0 8px;
  font-size:clamp(1.55rem,3vw,2.35rem);
  letter-spacing:-.035em;
}
.social-platform-copy>span{
  color:#9eabbd;
  line-height:1.45;
}
.social-follow-cta{
  min-height:46px;
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:0 16px;
  border-radius:14px;
  background:#f7f8fc;
  color:#07111f;
  font-weight:900;
  white-space:nowrap;
}
.social-follow-cta b{
  transition:transform .2s ease;
}
.social-platform-card:hover .social-follow-cta b{
  transform:translateX(3px);
}
.social-callout{
  margin-top:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:11px;
  padding:17px 20px;
  border:1px solid #243a53;
  border-radius:18px;
  background:#0b1827;
  text-align:center;
}
.social-callout p{
  margin:0;
  color:#a2afc0;
  line-height:1.5;
}
.social-callout p strong{
  color:#eef2f8;
}
.social-callout-dot{
  width:9px;
  height:9px;
  flex:0 0 9px;
  border-radius:50%;
  background:#74ddb0;
  box-shadow:0 0 0 6px rgba(116,221,176,.09);
}

.contact-social-card{
  position:relative;
  overflow:hidden;
}
.contact-social-handle{
  color:#aeb9ca;
  font-weight:800;
  margin:4px 0 18px;
}
.prominent-contact-social{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.prominent-contact-social a{
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  border:1px solid #324760;
  border-radius:14px;
  background:#0b1827;
  color:#fff;
  font-weight:850;
  text-decoration:none;
}
.prominent-contact-social a:hover{
  border-color:#8996ff;
  background:#112238;
}
.prominent-contact-social a span{
  font-size:1.15rem;
}
.footer-social-link{
  color:#c5ccff!important;
  font-weight:850;
}

@media(max-width:820px){
  .social-spotlight{
    padding:100px 0;
  }
  .social-spotlight-head{
    grid-template-columns:1fr;
    align-items:start;
  }
  .social-handle{
    width:max-content;
  }
  .social-spotlight-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:620px){
  .social-spotlight{
    padding:86px 0;
  }
  .social-spotlight-head h2{
    font-size:clamp(2.8rem,13vw,4.2rem);
  }
  .social-platform-card{
    min-height:0;
    grid-template-columns:58px minmax(0,1fr);
    gap:15px;
    padding:21px 18px;
    border-radius:24px;
  }
  .social-platform-icon{
    width:58px;
    height:58px;
    border-radius:18px;
    font-size:2.15rem;
  }
  .social-platform-copy strong{
    font-size:1.35rem;
  }
  .social-platform-copy>span{
    font-size:.88rem;
  }
  .social-follow-cta{
    grid-column:1 / -1;
    width:100%;
    justify-content:center;
    margin-top:4px;
  }
  .social-callout{
    align-items:flex-start;
    text-align:left;
  }
  .prominent-contact-social{
    grid-template-columns:1fr;
  }
}


/* ==========================================================
   Uploaded social brand images
   ========================================================== */
.social-platform-image{
  padding:0;
  overflow:hidden;
  background:#fff;
}
.social-platform-image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:inherit;
}
.prominent-contact-social a img{
  width:22px;
  height:22px;
  object-fit:cover;
  border-radius:6px;
  flex:0 0 22px;
}
.prominent-contact-social a{
  gap:10px;
}


/* ==========================================================
   SEO / launch pages, tooltips, comparison and resources
   ========================================================== */
.has-rich-tooltip{position:relative;outline:none}
.has-rich-tooltip:after{
  content:attr(data-tooltip);
  position:absolute;
  left:50%;
  bottom:calc(100% + 12px);
  z-index:30;
  width:min(270px,72vw);
  padding:11px 13px;
  border:1px solid #405571;
  border-radius:13px;
  background:#07111f;
  color:#e8edf5;
  font-size:.76rem;
  line-height:1.4;
  font-weight:650;
  text-align:left;
  box-shadow:0 16px 38px rgba(0,0,0,.3);
  opacity:0;
  pointer-events:none;
  translate:-50% 8px;
  transition:opacity .18s ease,translate .18s ease;
}
.has-rich-tooltip:hover:after,.has-rich-tooltip:focus-visible:after{opacity:1;translate:-50% 0}
.compact-feature-link{margin-top:22px}
.feature-link-row{display:flex;flex-wrap:wrap;gap:24px}

.before-after-section{padding:125px 0;background:#07111f}
.before-after-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:stretch}
.before-card,.after-card{padding:34px;border-radius:30px;border:1px solid #2c415a;background:#0c1928}
.after-card{background:linear-gradient(145deg,#111e39,#0c1928);border-color:#5361a6}
.ba-label{display:inline-flex;padding:7px 10px;border-radius:999px;background:#142439;color:#9fadc0;font-size:.76rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}
.after-card .ba-label{background:#222e5a;color:#bec5ff}
.before-after-grid h3{font-size:clamp(1.7rem,3vw,2.6rem);margin:20px 0}
.before-after-grid ul{padding-left:20px;color:#aab6c6;line-height:1.75}
.ba-arrow{display:grid;place-items:center;font-size:2.4rem;color:#8b98ff}

.service-link-section{padding:120px 0}
.service-link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.service-link-grid a{display:flex;flex-direction:column;min-height:190px;padding:26px;border:1px solid #2a4059;border-radius:25px;background:#0d1b2b;color:#fff;text-decoration:none;transition:.2s}
.service-link-grid a:hover{translate:0 -3px;border-color:#6270c3}
.service-link-grid small{color:#8d9daf;text-transform:uppercase;letter-spacing:.1em;font-weight:800}
.service-link-grid strong{font-size:1.55rem;margin:13px 0 auto}
.service-link-grid span{color:#aab4ff;margin-top:18px;font-weight:800}
.promise-section{padding:95px 0}
.promise-card{max-width:940px;padding:44px;border:1px solid #2d435c;border-radius:32px;background:#0e1d2f}
.promise-card h2{font-size:clamp(2.5rem,5vw,4.8rem);letter-spacing:-.05em;line-height:1;margin:15px 0 20px}
.promise-card p{max-width:760px;color:#a5b1c1;line-height:1.7}

.contact-hours-card strong{display:block;font-size:1.4rem;margin:10px 0}
.contact-hours-card p{color:#9aa8ba;line-height:1.55}
.contact-hours-card a{color:#c4cbff}

.seo-page{background:#07111f}
.simple-page-nav{display:flex;gap:22px;margin-left:auto}
.simple-page-nav a{color:#aab5c5;text-decoration:none;font-weight:750}
.simple-page-nav a:hover{color:#fff}
.seo-hero{padding:125px 0 55px;background:radial-gradient(circle at 50% 0,rgba(139,152,255,.13),transparent 55%)}
.seo-content{max-width:900px}
.seo-hero h1{font-size:clamp(3rem,7vw,6.6rem);line-height:.96;letter-spacing:-.06em;margin:15px 0 24px}
.seo-lead{font-size:clamp(1.05rem,2vw,1.28rem);color:#a8b3c3;line-height:1.7;max-width:760px}
.seo-body{padding:45px 0 110px}
.seo-body h2{font-size:clamp(2rem,4vw,3.3rem);letter-spacing:-.04em;margin:54px 0 16px}
.seo-body h3{font-size:1.45rem}
.seo-body p,.seo-body li{color:#aeb8c7;line-height:1.75}
.seo-body a{color:#b5bdff}
.story-grid,.seo-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.story-grid article,.seo-feature-grid article,.seo-callout{padding:26px;border-radius:24px;border:1px solid #2b415a;background:#0d1a2a}
.seo-feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin:28px 0}
.seo-feature-grid strong{display:block;font-size:1.25rem;color:#fff}
.seo-callout{margin:34px 0;border-color:#4a578a;background:#111d36}
.seo-callout strong{font-size:1.25rem;color:#fff}
.seo-checklist{display:grid;gap:8px}
.seo-steps{list-style:none;padding:0;counter-reset:steps;display:grid;gap:12px}
.seo-steps li{display:grid;grid-template-columns:auto 1fr;column-gap:14px;padding:20px;border:1px solid #293f57;border-radius:20px;background:#0d1a2a}
.seo-steps li:before{counter-increment:steps;content:counter(steps);display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:#8996ff;color:#07111f;font-weight:900;grid-row:1/3}
.seo-steps strong{color:#fff}.seo-steps span{grid-column:2;color:#9ca9ba}
.blog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.blog-card{display:flex;flex-direction:column;min-height:270px;padding:28px;border:1px solid #2a4059;border-radius:26px;background:#0d1a2a;text-decoration:none!important;transition:.2s}
.blog-card:hover{translate:0 -3px;border-color:#6270c3}
.blog-card small{color:#9ba9bc;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
.blog-card strong{font-size:1.55rem;color:#fff;margin:14px 0}
.blog-card span{color:#9eabbb;line-height:1.55}
.blog-card b{margin-top:auto;padding-top:22px;color:#b7beff}

@media(max-width:820px){
  .simple-page-nav{display:none}
  .before-after-grid{grid-template-columns:1fr}
  .ba-arrow{rotate:90deg}
  .service-link-grid,.story-grid,.seo-feature-grid,.blog-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  .seo-hero{padding:90px 0 35px}
  .seo-body{padding:30px 0 80px}
  .promise-card{padding:28px 22px}
  .service-link-section,.before-after-section{padding:90px 0}
  .has-rich-tooltip:after{left:0;translate:0 8px}
  .has-rich-tooltip:hover:after,.has-rich-tooltip:focus-visible:after{translate:0 0}
}


@media(max-width:620px){
  .motion-demo-section{padding:88px 0}
  .motion-video-shell{padding:6px;border-radius:24px}
  .motion-video{border-radius:19px}
  .motion-video-badge{right:14px;bottom:14px;font-size:.68rem;padding:7px 9px}
  .motion-video-actions{flex-direction:column;gap:14px}
  .motion-video-actions .btn{width:100%;max-width:360px}
}


/* ==========================================================
   Responsive Motion Graphics Demo
   ========================================================== */
.motion-demo-section{padding:120px 0}
.motion-video-shell{
  width:min(100%,1040px);
  margin:0 auto;
  position:relative;
  padding:10px;
  border:1px solid #2b4059;
  border-radius:34px;
  background:#0a1625;
  box-shadow:0 34px 90px rgba(0,0,0,.28);
  overflow:hidden;
}
.motion-video{
  display:block;
  width:100%;
  background:#07111f;
}
.motion-video-desktop .motion-video{
  aspect-ratio:16/9;
  object-fit:cover;
  border-radius:26px;
}
.motion-video-mobile{
  display:none;
  width:min(100%,420px);
}
.motion-video-mobile .motion-video{
  aspect-ratio:9/16;
  object-fit:cover;
  border-radius:26px;
}
.motion-video-badge{
  position:absolute;
  right:24px;
  bottom:24px;
  padding:9px 12px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:999px;
  background:rgba(7,17,31,.78);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  color:#dbe2ec;
  font-size:.76rem;
  font-weight:800;
}
.motion-video-actions{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:24px;
  margin-top:28px;
}
@media(max-width:820px){
  .motion-video-desktop{display:none}
  .motion-video-mobile{display:block}
}
@media(max-width:620px){
  .motion-demo-section{padding:88px 0}
  .motion-video-shell{padding:6px;border-radius:24px}
  .motion-video-desktop .motion-video,
  .motion-video-mobile .motion-video{border-radius:19px}
  .motion-video-badge{right:14px;bottom:14px;font-size:.68rem;padding:7px 9px}
  .motion-video-actions{flex-direction:column;gap:14px}
  .motion-video-actions .btn{width:100%;max-width:360px}
}


/* Motion Graphics V2 */
.motion-demo-section{padding:120px 0}
.motion-video-shell{width:min(100%,1040px);margin:0 auto;position:relative;padding:10px;border:1px solid #2b4059;border-radius:34px;background:#0a1625;box-shadow:0 34px 90px rgba(0,0,0,.28);overflow:hidden}
.motion-video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:26px;background:#07111f}
.motion-video-badge{position:absolute;right:24px;bottom:24px;padding:9px 12px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(7,17,31,.82);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#dbe2ec;font-size:.76rem;font-weight:800}
.motion-video-actions{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:28px}
@media(max-width:820px){.motion-video-shell{width:min(100%,430px)}.motion-video{aspect-ratio:9/16}}
@media(max-width:620px){.motion-demo-section{padding:88px 0}.motion-video-shell{padding:6px;border-radius:24px}.motion-video{border-radius:19px}.motion-video-badge{right:14px;bottom:14px;font-size:.68rem;padding:7px 9px}.motion-video-actions{flex-direction:column;gap:14px}.motion-video-actions .btn{width:100%;max-width:360px}}


/* ==========================================================
   Motion video playback hardening
   ========================================================== */
.motion-video-shell{isolation:isolate}
.motion-video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.motion-play-fallback{
  position:absolute;
  inset:50% auto auto 50%;
  translate:-50% -50%;
  z-index:8;
  min-height:52px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:0 19px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:16px;
  background:rgba(7,17,31,.9);
  color:#fff;
  font:inherit;
  font-weight:850;
  cursor:pointer;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  box-shadow:0 18px 45px rgba(0,0,0,.28);
}
.motion-play-fallback[hidden]{display:none!important}
.motion-play-fallback span{font-size:1.05rem}
.motion-video-status{
  position:absolute;
  left:18px;
  bottom:18px;
  z-index:7;
  max-width:70%;
  color:#d9e1eb;
  font-size:.76rem;
  line-height:1.35;
}
.motion-video-status:empty{display:none}
@media(max-width:820px){
  .motion-video{aspect-ratio:9/16}
}
@media(max-width:620px){
  .motion-play-fallback{min-height:48px;padding:0 16px;border-radius:14px}
  .motion-video-status{left:12px;bottom:12px;font-size:.7rem}
}


/* ==========================================================
   Motion video mobile portrait fit fix
   Ensures the full 9:16 video stays visible on phones.
   ========================================================== */
.motion-video-shell{
  display:flex;
  justify-content:center;
  align-items:center;
}
.motion-video{
  max-width:100%;
  margin:0 auto;
}

/* Regular mobile */
@media (max-width: 820px){
  .motion-video-shell{
    width:min(100%, 430px);
    margin-inline:auto;
  }
  .motion-video{
    aspect-ratio:9/16;
  }
}

/* Phone portrait: keep the full video visible inside the viewport */
@media (max-width: 820px) and (orientation: portrait){
  .motion-video-shell{
    width:min(100%, 390px, calc((100dvh - 260px) * 9 / 16 + 12px));
    max-width:100%;
    margin-inline:auto;
  }
  .motion-video{
    width:100%;
    max-height:calc(100dvh - 260px);
    aspect-ratio:9/16;
    object-fit:contain;
    display:block;
    margin-inline:auto;
  }
}

/* Small phones */
@media (max-width: 480px) and (orientation: portrait){
  .motion-video-shell{
    width:min(100%, calc((100dvh - 235px) * 9 / 16 + 12px));
    padding:6px;
    border-radius:22px;
  }
  .motion-video{
    max-height:calc(100dvh - 235px);
    border-radius:18px;
  }
  .motion-video-badge{
    right:10px;
    bottom:10px;
    font-size:.64rem;
    padding:6px 8px;
  }
}


/* Autostart fallback */
.motion-play-fallback{
  z-index:12;
}
.motion-play-fallback[hidden]{
  display:none!important;
}


/* ==========================================================
   Motion video orientation fix
   ========================================================== */
.motion-video-shell{
  display:flex;
  justify-content:center;
  align-items:center;
}

.motion-video{
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
  object-fit:contain!important;
  background:#07111f;
}

/* Portrait phone/tablet */
@media (orientation: portrait){
  .motion-video-shell{
    width:min(100%,430px);
    margin-inline:auto;
  }

  .motion-video{
    aspect-ratio:9/16!important;
    object-fit:contain!important;
  }
}

/* Landscape phone/tablet/desktop */
@media (orientation: landscape){
  .motion-video-shell{
    width:min(100%,1040px);
    margin-inline:auto;
  }

  .motion-video{
    aspect-ratio:16/9!important;
    object-fit:contain!important;
  }
}


/* ==========================================================
   Mobile navigation redesign
   ========================================================== */
.brand-mark-image{
  overflow:hidden;
  padding:0!important;
  background:#0d1929!important;
}
.brand-mark-image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:inherit;
}

.mobile-nav-heading,
.mobile-nav-icon,
.mobile-nav-copy,
.mobile-nav-arrow{
  display:none;
}

@media (max-width:820px){
  body.menu-open{
    overflow:hidden;
  }

  body.menu-open::before{
    content:"";
    position:fixed;
    inset:76px 0 0;
    z-index:80;
    background:rgba(3,9,17,.58);
    backdrop-filter:blur(5px);
    -webkit-backdrop-filter:blur(5px);
    animation:vhMenuBackdrop .18s ease both;
  }

  .been-header{
    z-index:100;
  }

  .been-header .main-nav{
    position:fixed;
    top:88px;
    left:12px;
    right:12px;
    z-index:110;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    width:auto;
    max-height:calc(100dvh - 104px);
    margin:0;
    padding:14px;
    overflow:auto;
    overscroll-behavior:contain;
    border:1px solid rgba(124,142,175,.24);
    border-radius:26px;
    background:
      linear-gradient(145deg,rgba(16,32,50,.98),rgba(8,20,34,.98));
    box-shadow:
      0 28px 80px rgba(0,0,0,.46),
      inset 0 1px 0 rgba(255,255,255,.04);
    transform-origin:top right;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(-10px) scale(.985);
    transition:
      opacity .2s ease,
      transform .24s cubic-bezier(.2,.8,.2,1),
      visibility .2s;
  }

  .been-header .main-nav.open{
    display:grid;
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:none;
  }

  .mobile-nav-heading{
    display:flex;
    flex-direction:column;
    grid-column:1/-1;
    gap:2px;
    padding:5px 4px 7px;
  }

  .mobile-nav-heading span{
    color:#f5f7fb;
    font-size:.88rem;
    font-weight:850;
    letter-spacing:.01em;
  }

  .mobile-nav-heading small{
    color:#8292a7;
    font-size:.7rem;
  }

  .been-header .main-nav>a{
    position:relative;
    display:grid;
    grid-template-columns:42px minmax(0,1fr) 12px;
    align-items:center;
    gap:10px;
    min-height:82px;
    padding:12px;
    border:1px solid rgba(108,130,160,.16);
    border-radius:18px;
    background:rgba(19,38,58,.7);
    color:#fff;
    text-decoration:none;
    overflow:hidden;
    transition:
      transform .16s ease,
      background .16s ease,
      border-color .16s ease;
  }

  .been-header .main-nav>a::before{
    content:"";
    position:absolute;
    inset:auto -20px -38px auto;
    width:76px;
    height:76px;
    border-radius:50%;
    background:rgba(139,152,255,.08);
    pointer-events:none;
  }

  .been-header .main-nav>a:active{
    transform:scale(.975);
    background:rgba(26,48,72,.9);
    border-color:rgba(139,152,255,.35);
  }

  .mobile-nav-icon{
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border:1px solid rgba(139,152,255,.22);
    border-radius:13px;
    background:linear-gradient(145deg,rgba(139,152,255,.17),rgba(89,103,196,.08));
    color:#bfc6ff;
    font-size:.93rem;
    font-weight:900;
    letter-spacing:-.03em;
  }

  .mobile-nav-copy{
    display:flex;
    min-width:0;
    flex-direction:column;
    gap:3px;
  }

  .mobile-nav-copy strong{
    color:#f6f8fb;
    font-size:.88rem;
    line-height:1.12;
  }

  .mobile-nav-copy small{
    color:#8d9caf;
    font-size:.66rem;
    line-height:1.25;
  }

  .mobile-nav-arrow{
    display:block;
    color:#65768d;
    font-size:1.2rem;
    line-height:1;
  }

  .menu-button{
    position:relative;
    z-index:120;
    border-radius:13px;
    transition:background .18s ease;
  }

  .menu-button[aria-expanded="true"]{
    background:rgba(139,152,255,.12);
  }

  .menu-button span{
    transform-origin:center;
    transition:transform .22s ease,opacity .18s ease,width .18s ease;
  }

  .menu-button[aria-expanded="true"] span:nth-child(1){
    transform:translateY(7px) rotate(45deg);
  }

  .menu-button[aria-expanded="true"] span:nth-child(2){
    opacity:0;
    transform:scaleX(.4);
  }

  .menu-button[aria-expanded="true"] span:nth-child(3){
    transform:translateY(-7px) rotate(-45deg);
  }

  @keyframes vhMenuBackdrop{
    from{opacity:0}
    to{opacity:1}
  }
}

@media (max-width:430px){
  .been-header .main-nav{
    top:82px;
    left:10px;
    right:10px;
    gap:8px;
    padding:11px;
    border-radius:22px;
  }

  .been-header .main-nav>a{
    grid-template-columns:38px minmax(0,1fr);
    min-height:76px;
    padding:10px;
    gap:8px;
    border-radius:16px;
  }

  .mobile-nav-icon{
    width:38px;
    height:38px;
    border-radius:12px;
    font-size:.86rem;
  }

  .mobile-nav-copy strong{
    font-size:.82rem;
  }

  .mobile-nav-copy small{
    font-size:.61rem;
  }

  .mobile-nav-arrow{
    display:none;
  }
}


/* ==========================================================
   Hero phone example image + two stat cards side by side
   ========================================================== */
.hero-photo-stage{
  height:790px;
  max-width:760px;
  margin-top:48px;
  overflow:visible;
}

.hero-photo-stage .hero-stat-row{
  position:absolute;
  top:14px;
  left:50%;
  z-index:5;
  display:flex;
  align-items:stretch;
  justify-content:center;
  gap:14px;
  width:min(100%,430px);
  transform:translateX(-50%);
}

.hero-photo-stage .hero-stat-row .float-card{
  position:relative;
  inset:auto;
  flex:1 1 0;
  min-width:0;
  max-width:none;
  transform:none;
  margin:0;
  padding:14px 16px;
  border-radius:19px;
}

.hero-photo-stage .hero-stat-row .float-streak{
  display:flex;
  align-items:center;
  gap:10px;
}

.hero-photo-stage .hero-stat-row .float-progress{
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.hero-photo-stage .hero-stat-row .float-progress strong{
  font-size:1.55rem;
}

.hero-phone-photo{
  position:absolute;
  top:112px;
  left:50%;
  width:min(365px,72vw);
  height:auto;
  padding:0;
  overflow:hidden;
  transform:translateX(-50%);
  border:1px solid #334865;
  border-radius:54px 54px 24px 24px;
  background:#07111f;
  box-shadow:0 55px 115px rgba(0,0,0,.42);
}

.hero-phone-photo img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
  background:#07111f;
}

/* Die alten vier frei positionierten Karten werden für diese neue Variante
   nicht mehr verwendet. */
.hero-photo-stage > .float-words,
.hero-photo-stage > .float-ready{
  display:none!important;
}

/* Die Scroll-Animation soll die Boxen weiterhin von links/rechts einfliegen lassen. */
.scroll-phone-scene.phone-anim-ready .hero-stat-row .float-streak{
  translate:-72px 12px;
}
.scroll-phone-scene.phone-anim-ready .hero-stat-row .float-progress{
  translate:72px 12px;
}
.scroll-phone-scene.phone-anim-ready.phone-anim-in .hero-stat-row .float-card{
  opacity:1;
  translate:0 0;
}

@media(max-width:620px){
  .product-stage.scroll-phone-scene.hero-photo-stage{
    height:640px;
    width:100%;
    max-width:390px;
    margin:34px auto 0;
  }

  .hero-photo-stage .hero-stat-row{
    top:0;
    width:100%;
    max-width:344px;
    gap:8px;
    padding:0 2px;
  }

  .hero-photo-stage .hero-stat-row .float-card{
    display:flex;
    min-height:76px;
    max-width:none;
    padding:10px 11px;
    border-radius:15px;
    font-size:.68rem;
  }

  .hero-photo-stage .hero-stat-row .float-streak{
    align-items:center;
  }

  .hero-photo-stage .hero-stat-row .float-progress{
    align-items:flex-start;
    justify-content:center;
  }

  .hero-photo-stage .hero-stat-row .float-card strong{
    font-size:.92rem;
    line-height:1.1;
  }

  .hero-photo-stage .hero-stat-row .float-progress strong{
    font-size:1.22rem;
  }

  .hero-photo-stage .hero-stat-row .float-icon{
    font-size:1.4rem;
  }

  .scroll-phone-scene .hero-phone.hero-phone-photo{
    top:92px;
    left:50%;
    width:min(288px,78vw);
    height:auto;
    transform:translateX(-50%);
    border-radius:42px 42px 20px 20px;
  }
}

@media(max-width:430px){
  .product-stage.scroll-phone-scene.hero-photo-stage{
    height:610px;
    max-width:352px;
  }

  .hero-photo-stage .hero-stat-row{
    max-width:326px;
  }

  .hero-photo-stage .hero-stat-row .float-card{
    min-height:72px;
    padding:9px 10px;
  }

  .scroll-phone-scene .hero-phone.hero-phone-photo{
    top:88px;
    width:min(274px,80vw);
  }
}


/* ==========================================================
   Full phone frame fix
   ========================================================== */
.hero-photo-stage{
  height:900px!important;
  overflow:visible!important;
}

.hero-phone-photo{
  top:112px!important;
  width:min(365px,72vw)!important;
  height:auto!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

.hero-phone-photo img{
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  border-radius:0!important;
}

@media(max-width:620px){
  .product-stage.scroll-phone-scene.hero-photo-stage{
    height:720px!important;
    overflow:visible!important;
  }

  .scroll-phone-scene .hero-phone.hero-phone-photo{
    top:92px!important;
    width:min(288px,78vw)!important;
    height:auto!important;
  }
}

@media(max-width:430px){
  .product-stage.scroll-phone-scene.hero-photo-stage{
    height:690px!important;
  }

  .scroll-phone-scene .hero-phone.hero-phone-photo{
    top:88px!important;
    width:min(274px,80vw)!important;
  }
}


/* ==========================================================
   Final phone visibility fix
   The phone now stays in normal document flow so the complete
   top and bottom frame can never be clipped by a fixed stage.
   ========================================================== */
.been-hero{
  overflow:visible!important;
}

.hero-photo-stage,
.product-stage.scroll-phone-scene.hero-photo-stage{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:18px!important;
  width:min(100%,760px)!important;
  max-width:760px!important;
  height:auto!important;
  min-height:0!important;
  margin:48px auto 0!important;
  padding:0 0 34px!important;
  overflow:visible!important;
}

.hero-photo-stage .hero-stat-row{
  position:relative!important;
  inset:auto!important;
  top:auto!important;
  left:auto!important;
  display:flex!important;
  align-items:stretch!important;
  justify-content:center!important;
  gap:12px!important;
  width:min(100%,430px)!important;
  max-width:430px!important;
  transform:none!important;
  margin:0 auto!important;
  z-index:5!important;
}

.scroll-phone-scene .hero-phone.hero-phone-photo,
.hero-phone.hero-phone-photo,
.hero-phone-photo{
  position:relative!important;
  inset:auto!important;
  top:auto!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  display:block!important;
  width:min(365px,72vw)!important;
  height:auto!important;
  min-height:0!important;
  margin:0 auto!important;
  padding:0!important;
  overflow:visible!important;
  transform:none!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

.hero-phone-photo img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-width:100%!important;
  max-height:none!important;
  margin:0 auto!important;
  object-fit:contain!important;
  object-position:center!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
}

/* Preserve the scroll entrance without moving the phone outside its container. */
.scroll-phone-scene.phone-anim-ready .hero-phone.hero-phone-photo{
  translate:0 38px;
}
.scroll-phone-scene.phone-anim-ready.phone-anim-in .hero-phone.hero-phone-photo{
  opacity:1!important;
  translate:0 0!important;
}

@media(max-width:620px){
  .hero-photo-stage,
  .product-stage.scroll-phone-scene.hero-photo-stage{
    width:100%!important;
    max-width:390px!important;
    height:auto!important;
    margin:34px auto 0!important;
    padding-bottom:24px!important;
    gap:10px!important;
  }

  .hero-photo-stage .hero-stat-row{
    width:min(100%,344px)!important;
    max-width:344px!important;
    gap:8px!important;
  }

  .scroll-phone-scene .hero-phone.hero-phone-photo,
  .hero-phone.hero-phone-photo{
    width:min(300px,82vw)!important;
    height:auto!important;
  }
}

@media(max-width:430px){
  .hero-photo-stage,
  .product-stage.scroll-phone-scene.hero-photo-stage{
    max-width:352px!important;
  }

  .hero-photo-stage .hero-stat-row{
    width:min(100%,326px)!important;
  }

  .scroll-phone-scene .hero-phone.hero-phone-photo,
  .hero-phone.hero-phone-photo{
    width:min(286px,84vw)!important;
  }
}

.brand-mark:not(.brand-mark-image){
  background:#43b7f5 url("vocalhero-app-icon.png") center/cover no-repeat;
  color:transparent;
  font-size:0;
  border-radius:8px;
}
