:root{--ink:#f7f5ff;--muted:#b7b3ca;--bg:#080816;--surface:#151528;--line:rgba(255,255,255,.11);--accent:#8c68ff;--accent2:#59e0b5;--warm:#ff963d;--max:1240px;--radius:32px;--head:'Bricolage Grotesque',sans-serif;--body:'DM Sans',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--bg);font-family:var(--body);overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}.site-shell{min-height:100vh}.container{width:min(calc(100% - 40px),var(--max));margin:auto}.nav{height:88px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:5}.brand{font-family:var(--head);font-size:29px;font-weight:700;letter-spacing:-1.5px}.brand span{color:var(--accent2)}.nav-links{display:flex;align-items:center;gap:28px;color:var(--muted);font-weight:600}.nav-links a:hover{color:var(--ink)}.store-mini{padding:12px 18px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.05);color:var(--ink)!important}.hero{min-height:820px;position:relative;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:56px;padding:78px 0 100px}.eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--accent2);font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-bottom:24px}.eyebrow:before{content:'';width:28px;height:2px;background:currentColor}.hero h1{font-family:var(--head);font-size:clamp(58px,7vw,108px);line-height:.91;letter-spacing:-.065em;margin:0 0 28px;max-width:780px}.hero-copy>p{font-size:clamp(18px,2vw,23px);line-height:1.55;color:var(--muted);max-width:630px;margin:0 0 34px}.cta-row{display:flex;gap:13px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:58px;padding:0 26px;border-radius:999px;font-weight:700;border:1px solid transparent;transition:.25s transform,.25s background}.button:hover{transform:translateY(-3px)}.button.primary{background:var(--accent);color:white}.button.secondary{border-color:var(--line);background:rgba(255,255,255,.045)}.micro{display:flex;gap:24px;margin-top:26px;color:var(--muted);font-size:14px}.micro span:before{content:'✓';color:var(--accent2);margin-right:7px}.device-stage{height:650px;position:relative;display:grid;place-items:center}.device-glow{position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,var(--accent) 0,transparent 66%);opacity:.25;filter:blur(40px)}.device{position:absolute;border-radius:42px;padding:8px;background:linear-gradient(145deg,rgba(255,255,255,.55),rgba(255,255,255,.05) 28%,rgba(255,255,255,.22));box-shadow:0 40px 90px rgba(0,0,0,.45);overflow:hidden}.device:before{content:'';position:absolute;z-index:2;top:16px;left:50%;transform:translateX(-50%);width:92px;height:24px;background:#05050a;border-radius:999px}.device img{width:100%;height:100%;object-fit:cover;border-radius:35px;background:#090916}.device.main{width:330px;height:660px;right:11%;transform:rotate(3deg)}.device.side{width:245px;height:500px;left:4%;bottom:32px;transform:rotate(-7deg);z-index:2}.device.side:before{width:70px;height:19px}.floating-pill{position:absolute;z-index:4;padding:15px 19px;border-radius:18px;background:rgba(18,18,38,.78);border:1px solid var(--line);backdrop-filter:blur(18px);box-shadow:0 16px 50px rgba(0,0,0,.25);font-weight:700}.pill-one{right:0;top:110px}.pill-two{left:0;top:170px;color:var(--accent2)}.trust-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px 0;color:var(--muted)}.trust-row{display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap}.trust-row strong{color:var(--ink);font-family:var(--head);font-size:20px}.section{padding:130px 0}.section-head{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:end;margin-bottom:70px}.section-head h2{font-family:var(--head);font-size:clamp(44px,5vw,78px);line-height:.98;letter-spacing:-.05em;margin:0}.section-head p{font-size:20px;line-height:1.65;color:var(--muted);margin:0;max-width:600px}.bento{display:grid;grid-template-columns:1.1fr .9fr .9fr;grid-auto-rows:280px;gap:18px}.card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:30px}.card.large{grid-row:span 2}.card.wide{grid-column:span 2}.card h3{font-family:var(--head);font-size:28px;letter-spacing:-.03em;margin:0 0 12px}.card p{color:var(--muted);line-height:1.55;margin:0;max-width:390px}.card-number{position:absolute;right:24px;bottom:8px;font-family:var(--head);font-size:110px;color:rgba(255,255,255,.045);font-weight:700}.ring-visual{width:270px;height:270px;border-radius:50%;border:24px solid rgba(255,255,255,.08);border-right-color:var(--accent2);border-bottom-color:var(--accent2);position:absolute;bottom:-80px;right:-25px;transform:rotate(-30deg)}.goal-bars{position:absolute;left:30px;right:30px;bottom:34px;display:flex;align-items:end;gap:12px;height:110px}.goal-bars i{flex:1;border-radius:9px 9px 3px 3px;background:linear-gradient(var(--accent2),var(--accent));opacity:.85}.goal-bars i:nth-child(1){height:30%}.goal-bars i:nth-child(2){height:52%}.goal-bars i:nth-child(3){height:72%}.goal-bars i:nth-child(4){height:100%}.kids-section{position:relative}.kids-panel{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center;border-radius:48px;padding:72px;background:linear-gradient(135deg,var(--surface),rgba(255,255,255,.03));border:1px solid var(--line);overflow:hidden}.kids-copy h2{font-family:var(--head);font-size:clamp(48px,5vw,82px);line-height:.95;letter-spacing:-.055em;margin:14px 0 24px}.kids-copy p{font-size:19px;line-height:1.6;color:var(--muted)}.feature-list{display:grid;gap:16px;margin-top:34px}.feature-list div{padding:18px 20px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.035);font-weight:600}.feature-list b{color:var(--accent2);margin-right:10px}.kids-art{min-height:590px;position:relative}.kids-art .device{inset:0 10% 0 auto;width:315px;height:620px;transform:rotate(2deg)}.ellow-orb{position:absolute;width:220px;height:220px;border-radius:47% 53% 55% 45%;background:radial-gradient(circle at 35% 30%,#b995ff,var(--accent) 42%,#4820b6);left:0;bottom:55px;display:grid;place-items:center;font-family:var(--head);font-size:72px;font-weight:700;box-shadow:0 35px 90px color-mix(in srgb,var(--accent) 45%,transparent);transform:rotate(-8deg)}.pricing{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}.price-card{padding:48px;border-radius:42px;border:1px solid var(--line);background:var(--surface);position:relative}.price{font-family:var(--head);font-size:88px;letter-spacing:-.07em;margin:8px 0}.price small{font-family:var(--body);font-size:19px;letter-spacing:0;color:var(--muted)}.price-card ul{padding:0;list-style:none;display:grid;gap:16px;color:var(--muted)}.price-card li:before{content:'✓';color:var(--accent2);margin-right:10px}.closing{padding:110px 0;text-align:center}.closing h2{font-family:var(--head);font-size:clamp(52px,7vw,100px);line-height:.95;letter-spacing:-.06em;margin:0 auto 32px;max-width:900px}.footer{border-top:1px solid var(--line);padding:38px 0;color:var(--muted)}.footer-row{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.concept-nav{position:fixed;z-index:20;left:50%;bottom:18px;transform:translateX(-50%);display:flex;gap:5px;padding:7px;background:rgba(8,8,20,.84);border:1px solid rgba(255,255,255,.14);border-radius:999px;backdrop-filter:blur(18px);box-shadow:0 15px 50px rgba(0,0,0,.25)}.concept-nav a{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;font-size:12px;color:#c9c6d5}.concept-nav a.active{background:var(--accent);color:#fff}.reveal{opacity:0;transform:translateY(24px);transition:.8s cubic-bezier(.2,.7,.2,1)}.reveal.visible{opacity:1;transform:none}

/* Apple Glass */
.theme-apple{--bg:#050609;--surface:#101216;--ink:#f4f6f8;--muted:#9ca3ad;--line:rgba(255,255,255,.12);--accent:#3478f6;--accent2:#64e0bd;--head:'Manrope',sans-serif;--body:'DM Sans',sans-serif;background:radial-gradient(circle at 65% 15%,#162449 0,transparent 30%),#050609}.theme-apple .nav{border-bottom:1px solid rgba(255,255,255,.06)}.theme-apple .hero h1{font-weight:500;letter-spacing:-.072em}.theme-apple .hero h1 em{font-style:normal;background:linear-gradient(90deg,#fff,#769cff,#64e0bd);-webkit-background-clip:text;color:transparent}.theme-apple .card{background:linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.025));backdrop-filter:blur(22px)}

/* Nordic Family */
.theme-nordic{--bg:#f1eadf;--surface:#fffaf1;--ink:#172d2b;--muted:#657773;--line:rgba(23,45,43,.14);--accent:#e96542;--accent2:#168b78;--warm:#f4bd57;--head:'Fraunces',serif;--body:'DM Sans',sans-serif;background:radial-gradient(circle at 80% 5%,#f5c9ab 0,transparent 25%),var(--bg)}.theme-nordic .nav-links,.theme-nordic .hero-copy>p,.theme-nordic .section-head p,.theme-nordic .card p,.theme-nordic .kids-copy p,.theme-nordic .price-card ul,.theme-nordic .footer{color:var(--muted)}.theme-nordic .hero{min-height:780px}.theme-nordic .hero h1{letter-spacing:-.045em}.theme-nordic .hero h1 em{font-style:italic;color:var(--accent)}.theme-nordic .device-glow{background:radial-gradient(circle,#ef8f64 0,transparent 65%);opacity:.35}.theme-nordic .card{box-shadow:0 12px 0 rgba(23,45,43,.08)}.theme-nordic .kids-panel{background:#173e3a;color:#fff}.theme-nordic .kids-panel .kids-copy p{color:#bcd2ce}.theme-nordic .concept-nav{background:rgba(255,250,241,.9);border-color:rgba(23,45,43,.15)}.theme-nordic .concept-nav a{color:#52635f}

/* Cinematic Orbit */
.theme-orbit{--bg:#08061a;--surface:#14112d;--ink:#fbf7ff;--muted:#aaa1c5;--line:rgba(184,158,255,.18);--accent:#a869ff;--accent2:#ff9b52;--head:'Space Grotesk',sans-serif;--body:'DM Sans',sans-serif;background:radial-gradient(ellipse at 30% 10%,#25115b 0,transparent 35%),radial-gradient(ellipse at 95% 35%,#40204c 0,transparent 33%),#08061a}.theme-orbit .hero{min-height:900px}.theme-orbit .hero h1{text-transform:uppercase;font-size:clamp(56px,6.6vw,100px)}.theme-orbit .hero h1 em{font-style:normal;color:var(--accent2)}.theme-orbit .device-stage:after{content:'';position:absolute;width:680px;height:340px;border:1px solid var(--line);border-radius:50%;transform:rotate(-18deg);box-shadow:0 0 80px rgba(168,105,255,.25)}.theme-orbit .card{background:linear-gradient(145deg,#1a1538,#0e0c21)}

/* Ellow Play */
.theme-play{--bg:#f7f2df;--surface:#fffdf3;--ink:#10255e;--muted:#5c6b86;--line:rgba(16,37,94,.14);--accent:#ff713c;--accent2:#03aa87;--warm:#ffd534;--head:'Bricolage Grotesque',sans-serif;--body:'DM Sans',sans-serif;background:radial-gradient(circle at 12% 20%,#ffd534 0 8%,transparent 8.3%),radial-gradient(circle at 90% 8%,#65d9f1 0,transparent 25%),var(--bg)}.theme-play .hero h1{font-weight:700}.theme-play .hero h1 em{font-style:normal;color:var(--accent);text-decoration:underline;text-decoration-thickness:10px;text-decoration-color:var(--warm)}.theme-play .button{border-radius:18px}.theme-play .card{border:3px solid var(--ink);box-shadow:8px 8px 0 var(--ink)}.theme-play .kids-panel{background:#10255e;color:white;border:0;box-shadow:12px 12px 0 var(--warm)}.theme-play .kids-panel .kids-copy p{color:#c8d1e8}.theme-play .concept-nav{background:rgba(255,253,243,.94);border-color:rgba(16,37,94,.18)}.theme-play .concept-nav a{color:#52618a}

/* Editorial Trust */
.theme-editorial{--bg:#f0eee7;--surface:#faf8f2;--ink:#16221f;--muted:#5c6965;--line:rgba(22,34,31,.18);--accent:#b74b35;--accent2:#227562;--head:'Fraunces',serif;--body:'Manrope',sans-serif;background:linear-gradient(90deg,rgba(34,117,98,.05) 1px,transparent 1px),var(--bg);background-size:8.33% 100%}.theme-editorial .nav{border-bottom:1px solid var(--line)}.theme-editorial .hero{grid-template-columns:1.2fr .8fr}.theme-editorial .hero h1{font-size:clamp(64px,8vw,122px);font-weight:500}.theme-editorial .hero h1 em{font-style:italic;color:var(--accent)}.theme-editorial .button{border-radius:3px}.theme-editorial .bento{grid-template-columns:1fr 1fr}.theme-editorial .card{border-radius:3px}.theme-editorial .card.large{grid-row:span 1}.theme-editorial .card.wide{grid-column:auto}.theme-editorial .kids-panel,.theme-editorial .price-card{border-radius:4px}.theme-editorial .concept-nav{background:rgba(250,248,242,.94)}.theme-editorial .concept-nav a{color:#52605c}

/* Fintech Signal */
.theme-signal{--bg:#04110f;--surface:#0a211d;--ink:#ecfff7;--muted:#83a99e;--line:rgba(103,244,187,.19);--accent:#67f4bb;--accent2:#bfff42;--head:'Space Grotesk',sans-serif;--body:'Manrope',sans-serif;background:linear-gradient(rgba(103,244,187,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(103,244,187,.035) 1px,transparent 1px),#04110f;background-size:48px 48px}.theme-signal .hero h1{font-size:clamp(60px,7vw,108px)}.theme-signal .hero h1 em{font-style:normal;color:var(--accent2)}.theme-signal .button.primary{color:#04110f}.theme-signal .card{border-radius:14px;background:rgba(10,33,29,.82)}.theme-signal .kids-panel,.theme-signal .price-card{border-radius:16px}.theme-signal .device{box-shadow:0 0 0 1px var(--accent),0 40px 100px rgba(103,244,187,.18)}

/* Gallery */
.gallery{min-height:100vh;padding:70px 0 100px;background:radial-gradient(circle at 50% 0,#2e2558 0,transparent 32%),#080816}.gallery-head{text-align:center;max-width:900px;margin:0 auto 60px}.gallery-head .brand{margin-bottom:30px}.gallery-head h1{font-family:'Bricolage Grotesque';font-size:clamp(50px,7vw,90px);letter-spacing:-.06em;line-height:.95;margin:0 0 22px}.gallery-head p{color:#aaa6ba;font-size:19px;line-height:1.6}.concept-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.concept-card{min-height:420px;border-radius:32px;position:relative;overflow:hidden;padding:34px;border:1px solid rgba(255,255,255,.12);transition:.35s transform}.concept-card:hover{transform:translateY(-7px)}.concept-card h2{font-family:'Bricolage Grotesque';font-size:38px;letter-spacing:-.04em;margin:8px 0}.concept-card p{max-width:400px;line-height:1.55}.concept-card .tag{font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:700}.concept-card .mini-phone{position:absolute;width:170px;height:330px;border-radius:28px;right:35px;bottom:-70px;background:#090912;border:5px solid rgba(255,255,255,.35);padding:7px;box-shadow:0 25px 45px rgba(0,0,0,.35)}.concept-card .mini-phone img{width:100%;height:100%;object-fit:cover;border-radius:19px}.c1{background:radial-gradient(circle at 85% 20%,#20427e,transparent 35%),#080a0d;color:#f5f7fb}.c2{background:#f1eadf;color:#173330}.c3{background:radial-gradient(circle at 80% 35%,#7e3568,transparent 35%),#100927;color:#fff}.c4{background:#ffd534;color:#10255e}.c5{background:#f1efe8;color:#1b2925}.c6{background:linear-gradient(rgba(103,244,187,.06) 1px,transparent 1px),#061713;color:#edfff8;background-size:30px 30px}

@media(max-width:900px){.nav-links a:not(.store-mini){display:none}.hero,.section-head,.kids-panel,.pricing{grid-template-columns:1fr}.hero{padding-top:40px;min-height:auto}.hero h1{font-size:clamp(54px,14vw,80px)}.device-stage{height:650px}.device.main{right:8%}.bento{grid-template-columns:1fr 1fr}.card.large{grid-row:auto}.card.wide{grid-column:span 2}.kids-panel{padding:42px 28px}.kids-art{min-height:620px}.concept-grid{grid-template-columns:1fr}}@media(max-width:600px){.container{width:min(calc(100% - 26px),var(--max))}.nav{height:72px}.brand{font-size:24px}.hero{gap:10px;padding-bottom:60px}.hero-copy>p{font-size:17px}.micro{display:grid;gap:8px}.device-stage{height:540px}.device.main{width:250px;height:500px;right:2%}.device.side{width:180px;height:365px;left:0}.floating-pill{font-size:12px;padding:11px 13px}.pill-one{right:-5px}.section{padding:84px 0}.section-head{gap:20px;margin-bottom:38px}.section-head p{font-size:17px}.bento{grid-template-columns:1fr;grid-auto-rows:250px}.card.wide{grid-column:auto}.kids-panel{border-radius:30px}.kids-art .device{right:0;width:280px;height:560px}.ellow-orb{width:150px;height:150px;font-size:52px}.price-card{padding:30px}.concept-grid{gap:14px}.concept-card{min-height:360px;padding:26px}.concept-card .mini-phone{right:20px;width:145px;height:280px}.concept-nav{bottom:10px}.theme-editorial .hero{grid-template-columns:1fr}}


/* Flusii type and corrected device presentation for Cinematic Orbit. */
@font-face{font-family:'Flusii Nunito';src:url('../fonts/nunito-regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Flusii Nunito';src:url('../fonts/nunito-semibold.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'Flusii Nunito';src:url('../fonts/nunito-bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Flusii Nunito';src:url('../fonts/nunito-extrabold.ttf') format('truetype');font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:'Flusii Nunito';src:url('../fonts/nunito-black.ttf') format('truetype');font-weight:900;font-style:normal;font-display:swap}
.theme-orbit{--head:'Flusii Nunito',sans-serif;--body:'Flusii Nunito',sans-serif}
.theme-orbit .device-stage{height:720px;isolation:isolate}
.theme-orbit .device-stage:after{z-index:0;pointer-events:none}
.theme-orbit .device{padding:5px;border:1px solid rgba(230,234,255,.72);border-radius:49px;background:linear-gradient(145deg,#d9dce6 0%,#5e6374 19%,#eef0f5 48%,#555b6d 77%,#d8dbe5 100%);box-shadow:0 34px 90px rgba(0,0,0,.58),0 0 0 1px rgba(255,255,255,.12) inset;overflow:visible;z-index:2}
.theme-orbit .device img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center;border-radius:43px;background:#070817}
.theme-orbit .device.main{width:310px;height:674px;right:3%;bottom:0;transform:rotate(1.5deg);z-index:2}
.theme-orbit .device.side{width:272px;height:592px;left:1%;bottom:20px;transform:rotate(-2.5deg);z-index:3}
.theme-orbit .device.main:before{display:none}
.theme-orbit .device.side:before{display:block;width:92px;height:25px;top:13px;left:50%;transform:translateX(-50%);border-radius:18px;background:#03040a;box-shadow:none;z-index:4}
@media(max-width:980px){.theme-orbit .device-stage{height:590px;max-width:560px;margin-inline:auto}.theme-orbit .device.main{width:248px;height:539px;right:2%}.theme-orbit .device.side{width:218px;height:474px;left:2%;bottom:18px}.theme-orbit .device{border-radius:40px;padding:4px}.theme-orbit .device img{border-radius:35px}.theme-orbit .device.side:before{width:74px;height:20px;top:10px}}
@media(max-width:560px){.theme-orbit .device-stage{height:505px}.theme-orbit .device.main{width:202px;height:439px;right:0}.theme-orbit .device.side{width:180px;height:392px;left:0;bottom:16px}}


/* Apple-polished motion layer for Cinematic Orbit. */
.theme-orbit{scroll-behavior:smooth;overflow-x:hidden}
.theme-orbit:before,.theme-orbit:after{content:'';position:fixed;z-index:-1;pointer-events:none;border-radius:50%;filter:blur(90px);opacity:.24;will-change:transform}
.theme-orbit:before{width:42vw;height:42vw;min-width:420px;min-height:420px;left:-13vw;top:8vh;background:#6637ff;animation:orbitAmbientOne 18s ease-in-out infinite alternate}
.theme-orbit:after{width:38vw;height:38vw;min-width:380px;min-height:380px;right:-12vw;top:34vh;background:#ff774d;animation:orbitAmbientTwo 22s ease-in-out infinite alternate}
@keyframes orbitAmbientOne{to{transform:translate3d(11vw,12vh,0) scale(1.12)}}
@keyframes orbitAmbientTwo{to{transform:translate3d(-9vw,-14vh,0) scale(.9)}}
.theme-orbit nav{transition:background-color .55s cubic-bezier(.2,.8,.2,1),border-color .55s cubic-bezier(.2,.8,.2,1),box-shadow .55s cubic-bezier(.2,.8,.2,1),backdrop-filter .55s cubic-bezier(.2,.8,.2,1)}
.theme-orbit nav.is-scrolled{background:rgba(8,6,26,.72);border-color:rgba(255,255,255,.1);box-shadow:0 18px 55px rgba(0,0,0,.24);backdrop-filter:blur(24px) saturate(150%);-webkit-backdrop-filter:blur(24px) saturate(150%)}
.theme-orbit.motion-js .hero-copy>*{opacity:0;transform:translate3d(0,28px,0);filter:blur(8px);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform 1.05s cubic-bezier(.16,1,.3,1),filter 1s cubic-bezier(.16,1,.3,1)}
.theme-orbit.motion-ready .hero-copy>*{opacity:1;transform:none;filter:none}
.theme-orbit.motion-ready .hero-copy>*:nth-child(1){transition-delay:.05s}.theme-orbit.motion-ready .hero-copy>*:nth-child(2){transition-delay:.13s}.theme-orbit.motion-ready .hero-copy>*:nth-child(3){transition-delay:.22s}.theme-orbit.motion-ready .hero-copy>*:nth-child(4){transition-delay:.31s}.theme-orbit.motion-ready .hero-copy>*:nth-child(5){transition-delay:.39s}
.theme-orbit.motion-js .device-stage .device{opacity:0;filter:blur(12px) saturate(.7);transition:opacity 1s cubic-bezier(.16,1,.3,1),filter 1.15s cubic-bezier(.16,1,.3,1),transform 1.2s cubic-bezier(.16,1,.3,1),box-shadow .8s cubic-bezier(.16,1,.3,1)}
.theme-orbit.motion-ready .device-stage .device{opacity:1;filter:none}
.theme-orbit .device-stage{--pointer-x:0px;--pointer-y:0px;--glow-x:50%;--glow-y:50%}
.theme-orbit .device-stage:before{content:'';position:absolute;inset:8% 0 4%;z-index:0;pointer-events:none;background:radial-gradient(circle at var(--glow-x) var(--glow-y),rgba(168,105,255,.34),transparent 42%);filter:blur(24px);transition:background-position .35s ease}
.theme-orbit .device.main{transform:translate3d(var(--pointer-x),var(--pointer-y),0) rotate(1.5deg) scale(var(--main-scale,1));transition-delay:.12s!important}
.theme-orbit .device.side{transform:translate3d(calc(var(--pointer-x) * -.62),calc(var(--pointer-y) * -.7),0) rotate(-2.5deg) scale(var(--side-scale,1));transition-delay:.27s!important}
.theme-orbit .device-stage.is-kids-focus{--main-scale:.965;--side-scale:1.035}
.theme-orbit .device-stage.is-kids-focus .device.main{filter:brightness(.76) saturate(.78)}
.theme-orbit .device-stage:not(.is-kids-focus) .device.side{filter:brightness(.8) saturate(.82)}
.theme-orbit .device:hover{box-shadow:0 42px 110px rgba(0,0,0,.68),0 0 0 1px rgba(255,255,255,.18) inset}
.theme-orbit.motion-js .motion-reveal{opacity:0;transform:translate3d(0,34px,0) scale(.985);filter:blur(7px);transition:opacity .85s cubic-bezier(.16,1,.3,1) var(--motion-delay,0ms),transform 1s cubic-bezier(.16,1,.3,1) var(--motion-delay,0ms),filter .9s cubic-bezier(.16,1,.3,1) var(--motion-delay,0ms)}
.theme-orbit.motion-js .motion-reveal.is-visible{opacity:1;transform:none;filter:none}
.theme-orbit .card{position:relative;overflow:hidden;transition:transform .55s cubic-bezier(.16,1,.3,1),border-color .55s ease,box-shadow .55s ease;background-image:radial-gradient(420px circle at var(--spot-x,-200px) var(--spot-y,-200px),rgba(168,105,255,.18),transparent 42%),linear-gradient(145deg,#1a1538,#0e0c21)}
.theme-orbit .card:hover{transform:translateY(-7px);border-color:rgba(168,105,255,.38);box-shadow:0 26px 70px rgba(0,0,0,.28)}
.theme-orbit .button{position:relative;overflow:hidden;transform:translate3d(var(--button-x,0),var(--button-y,0),0);transition:transform .38s cubic-bezier(.16,1,.3,1),box-shadow .38s ease,background-color .38s ease}
.theme-orbit .button:after{content:'';position:absolute;inset:-100% -35%;pointer-events:none;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.24) 50%,transparent 65%);transform:translateX(-45%) rotate(8deg);transition:transform .8s cubic-bezier(.16,1,.3,1)}
.theme-orbit .button:hover:after{transform:translateX(45%) rotate(8deg)}
.theme-orbit .button.primary:hover{box-shadow:0 18px 44px rgba(168,105,255,.36),0 0 0 1px rgba(255,255,255,.16) inset}
.theme-orbit .trust-row span{animation:orbitTrustBreath 5.5s ease-in-out infinite;animation-delay:calc(var(--i,0) * .4s)}
.theme-orbit .trust-row span:nth-child(2){--i:1}.theme-orbit .trust-row span:nth-child(3){--i:2}.theme-orbit .trust-row span:nth-child(4){--i:3}.theme-orbit .trust-row span:nth-child(5){--i:4}
@keyframes orbitTrustBreath{0%,100%{opacity:.62;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}}
.theme-orbit .floating-pill{transition:transform .75s cubic-bezier(.16,1,.3,1),opacity .5s ease,background-color .5s ease;animation:orbitPillFloat 5s ease-in-out infinite}
.theme-orbit .pill-two{animation-delay:-2.2s}
@keyframes orbitPillFloat{0%,100%{translate:0 0}50%{translate:0 -8px}}
@media(hover:none){.theme-orbit .card:hover{transform:none}.theme-orbit .button{transform:none}}
@media(prefers-reduced-motion:reduce){.theme-orbit,.theme-orbit *{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.theme-orbit.motion-js .hero-copy>*,.theme-orbit.motion-js .device-stage .device,.theme-orbit.motion-js .motion-reveal{opacity:1!important;transform:none!important;filter:none!important}}

/* Orbit hero: complete device screens, compact captions and the real Ellow. */
.theme-orbit .device-stage{height:790px}
.theme-orbit .device-stage .device img{object-fit:contain;object-position:top center}
.theme-orbit .device-stage .device.main{bottom:72px}
.theme-orbit .device-stage .device.side{bottom:92px}
.theme-orbit .hero-badge-row{position:absolute;left:50%;bottom:9px;z-index:6;display:flex;align-items:center;justify-content:center;gap:10px;transform:translateX(-50%)}
.theme-orbit .hero-badge-row .floating-pill{position:static;width:max-content;max-width:none;padding:11px 16px;border-radius:999px;white-space:nowrap;font-size:13px;line-height:1;letter-spacing:.01em}
.theme-orbit .hero-badge-row .pill-one{color:#f8f4ff}
.theme-orbit .hero-badge-row .pill-two{color:var(--accent2)}
.theme-orbit .ellow-orb{width:280px;height:280px;left:-48px;bottom:34px;display:block;border-radius:0;background:none;box-shadow:none;transform:none;animation:ellowHover 4.8s ease-in-out infinite}
.theme-orbit .ellow-orb img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 28px 38px rgba(75,32,176,.42));transform-origin:36% 48%;animation:ellowWave 2.7s ease-in-out infinite}
@keyframes ellowHover{0%,100%{translate:0 0}50%{translate:0 -12px}}
@keyframes ellowWave{0%,100%{rotate:-1.5deg}45%{rotate:2.5deg}65%{rotate:-.5deg}}
@media(max-width:980px){.theme-orbit .device-stage{height:660px}.theme-orbit .device-stage .device.main{bottom:70px}.theme-orbit .device-stage .device.side{bottom:84px}.theme-orbit .hero-badge-row .floating-pill{font-size:12px;padding:10px 14px}.theme-orbit .ellow-orb{width:230px;height:230px;left:-24px}}
@media(max-width:560px){.theme-orbit .device-stage{height:560px}.theme-orbit .device-stage .device.main{bottom:70px}.theme-orbit .device-stage .device.side{bottom:78px}.theme-orbit .hero-badge-row{gap:7px}.theme-orbit .hero-badge-row .floating-pill{font-size:10px;padding:9px 10px}.theme-orbit .ellow-orb{width:170px;height:170px;left:-16px;bottom:70px}}

/* Footer legal links and privacy-first cookie information. */
.footer-links{display:flex;align-items:center;justify-content:flex-end;gap:10px 22px;flex-wrap:wrap}
.footer-links a,.footer-links button{color:var(--muted);font:inherit;background:none;border:0;padding:0;cursor:pointer;transition:color .2s ease}
.footer-links a:hover,.footer-links button:hover{color:var(--ink)}
.cookie-open{overflow:hidden}
.cookie-layer[hidden],.cookie-layer [hidden]{display:none!important}
.cookie-layer{position:fixed;inset:0;z-index:1000;display:grid;align-items:end;padding:22px;background:rgba(3,3,12,.5);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.cookie-notice,.cookie-preferences{width:min(1120px,100%);margin:0 auto;border:1px solid rgba(255,255,255,.16);background:linear-gradient(145deg,rgba(27,23,57,.97),rgba(10,9,27,.98));box-shadow:0 28px 100px rgba(0,0,0,.55);color:#fbf7ff}
.cookie-notice{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;padding:25px 28px;border-radius:28px}
.cookie-icon{width:50px;height:50px;display:grid;place-items:center;border-radius:17px;color:#59e0b5;background:rgba(89,224,181,.12);box-shadow:0 0 32px rgba(89,224,181,.16)}
.cookie-copy h2,.cookie-preferences h2{font-family:var(--head);letter-spacing:-.035em;margin:2px 0 7px}
.cookie-copy h2{font-size:24px}.cookie-copy p,.cookie-preferences>p{margin:0;color:#b7b3ca;line-height:1.5}
.cookie-kicker{margin:0!important;color:#59e0b5!important;font-size:11px!important;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.cookie-links{display:flex;gap:18px;flex-wrap:wrap;margin-top:10px;font-size:13px;font-weight:700}
.cookie-links a{color:#c9b9ff;text-decoration:underline;text-underline-offset:3px}
.cookie-actions{display:flex;gap:10px;align-items:center}.cookie-actions .button{min-height:48px;padding:0 18px;white-space:nowrap}
.cookie-preferences{position:relative;max-width:650px;padding:34px;border-radius:30px}
.cookie-preferences h2{font-size:32px}.cookie-close{position:absolute;top:18px;right:18px;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);color:white;font-size:25px;cursor:pointer}
.cookie-category{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:16px;padding:18px;border:1px solid rgba(255,255,255,.11);border-radius:18px;background:rgba(255,255,255,.035)}
.cookie-category div{display:grid;gap:4px}.cookie-category span{color:#aaa1c5;font-size:13px}.cookie-category.is-disabled{opacity:.65}.cookie-status{flex:0 0 auto;padding:7px 10px;border-radius:999px;background:rgba(89,224,181,.1);color:#59e0b5!important;font-weight:800}
.cookie-save{width:100%;margin-top:20px}
@media(max-width:760px){.footer-row{display:grid}.footer-links{justify-content:flex-start}.cookie-layer{padding:12px}.cookie-notice{grid-template-columns:1fr;padding:24px;border-radius:24px}.cookie-icon{display:none}.cookie-actions{display:grid;grid-template-columns:1fr}.cookie-actions .button{width:100%}.cookie-preferences{padding:28px 20px}.cookie-category{align-items:flex-start;flex-direction:column}.cookie-status{align-self:flex-start}}
/* Equal-weight App Store and Google Play calls to action. */
.flusii-store-choices {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.65rem;
  max-width: 100%;
}

.flusii-store-link,
.flusii-store-link:link,
.flusii-store-link:visited {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 3.1rem !important;
  padding: 0.78rem 1.25rem !important;
  border: 1px solid rgba(255, 255, 255, 0.22) !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.1) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1) !important;
  color: #fff !important;
  font: inherit !important;
  font-weight: 760 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  transform: none;
  transition: background 180ms ease, border-color 180ms ease, transform 180ms ease !important;
}

.flusii-store-link:hover,
.flusii-store-link:focus-visible {
  border-color: rgba(125, 255, 213, 0.62) !important;
  background: rgba(125, 255, 213, 0.14) !important;
  transform: translateY(-2px) !important;
}

.flusii-store-link--compact {
  min-width: 8.5rem;
}

@media (max-width: 430px) {
  .flusii-store-choices {
    width: 100%;
    gap: 0.5rem;
  }

  .flusii-store-link--compact {
    flex: 1 1 0;
    min-width: 0;
    padding-inline: 0.8rem !important;
  }
}
.hero-phone-caption--adult {
  color: #ff9a48 !important;
  border-color: rgba(255, 154, 72, 0.34) !important;
  background: rgba(255, 154, 72, 0.08) !important;
}

.hero-phone-caption--kids {
  color: #f8f6ff !important;
  border-color: rgba(255, 255, 255, 0.18) !important;
  background: rgba(255, 255, 255, 0.045) !important;
}
/* Prevent secondary detail links from inheriting the browser's black link color. */
a:is([href], [role="button"]):has(> span:only-child),
a:is([href], [role="button"]):has(> strong:only-child) {
  color: inherit;
}

a:is(:link, :visited, :hover, :active)[aria-label*="detaljer" i],
a:is(:link, :visited, :hover, :active)[title*="detaljer" i],
.details-link,
.details-link:link,
.details-link:visited,
.details-link:hover,
.details-link:active,
.details-button,
.details-button:link,
.details-button:visited,
.details-button:hover,
.details-button:active {
  color: #f8f6ff !important;
}
.flusii-store-link--plain::before,
.flusii-store-link--plain::after,
.flusii-store-link::before,
.flusii-store-link::after {
  display: none !important;
  content: none !important;
  background: none !important;
}

.flusii-store-link--plain > svg,
.flusii-store-link--plain > img,
.flusii-store-link--plain > [aria-hidden="true"] {
  display: none !important;
}
.feature-card--generated {
  min-width: 0;
}

.feature-card--generated p {
  max-width: 34rem;
}

/* Show the complete current Kids screen, including dock and home indicator. */
.hero-kids-clean-screen {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
}

.hero-kids-clean-screen-bg {
  background-size: contain !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

/* Equal storefront choices: no recommendation star or visual preference. */
.store-platform-button,
.store-platform-button:link,
.store-platform-button:visited {
  background: rgba(35, 29, 67, 0.9) !important;
  border: 1px solid rgba(180, 161, 235, 0.45) !important;
  color: #f8f6ff !important;
  box-shadow: none !important;
}

.store-platform-button::before,
.store-platform-button::after {
  content: none !important;
  display: none !important;
}

/* Savings is positive, so the complete label uses the mint palette. */
.hero-savings-pill {
  color: #caffee !important;
  background: linear-gradient(135deg, rgba(19, 104, 79, 0.96), rgba(10, 71, 57, 0.96)) !important;
  border: 1px solid rgba(89, 229, 180, 0.72) !important;
  box-shadow: 0 14px 38px rgba(20, 163, 118, 0.2) !important;
}

.hero-savings-pill * {
  color: inherit !important;
}

/* Complete feature overview. */
.more-features-section {
  width: min(1180px, calc(100% - 40px));
  margin: clamp(88px, 12vw, 168px) auto;
}

.more-features-heading {
  max-width: 820px;
  margin-bottom: clamp(38px, 6vw, 72px);
}

.more-features-eyebrow {
  margin: 0 0 14px;
  color: #59e5b4 !important;
  font-size: 0.8rem;
  font-weight: 800;
  letter-spacing: 0.16em;
}

.more-features-heading h2 {
  max-width: 760px;
  margin: 0 0 20px;
  color: #f8f6ff;
  font-size: clamp(2.35rem, 5vw, 5rem);
  line-height: 0.98;
  letter-spacing: -0.045em;
}

.more-features-heading > p:last-child {
  max-width: 680px;
  margin: 0;
  color: #b7aecf;
  font-size: clamp(1rem, 1.8vw, 1.3rem);
  line-height: 1.65;
}

.more-features-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.more-feature-card {
  position: relative;
  min-height: 255px;
  padding: clamp(28px, 3vw, 42px);
  overflow: hidden;
  border: 1px solid rgba(156, 128, 233, 0.28);
  border-radius: 34px;
  background:
    radial-gradient(circle at 100% 100%, rgba(91, 229, 180, 0.1), transparent 42%),
    linear-gradient(145deg, rgba(28, 23, 57, 0.96), rgba(14, 12, 35, 0.96));
}

.more-feature-card::after {
  content: "";
  position: absolute;
  width: 150px;
  height: 150px;
  right: -60px;
  bottom: -70px;
  border: 26px solid rgba(132, 91, 245, 0.08);
  border-radius: 50%;
}

.more-feature-number {
  display: inline-flex;
  margin-bottom: 42px;
  color: #59e5b4;
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.12em;
}

.more-feature-card h3 {
  position: relative;
  z-index: 1;
  margin: 0 0 14px;
  color: #f8f6ff;
  font-size: clamp(1.35rem, 2.1vw, 2rem);
  line-height: 1.08;
}

.more-feature-card p {
  position: relative;
  z-index: 1;
  margin: 0;
  color: #b7aecf;
  font-size: 1rem;
  line-height: 1.55;
}

@media (max-width: 900px) {
  .more-features-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  .more-features-section {
    width: min(100% - 24px, 1180px);
  }

  .more-features-grid {
    grid-template-columns: 1fr;
  }

  .more-feature-card {
    min-height: 220px;
  }
}

/* Full-quality Flusii wordmark from the app identity. */
.flusii-wordmark-host {
  display: inline-flex !important;
  align-items: center;
  width: min(100%, 360px);
  line-height: 0 !important;
}

.flusii-wordmark-image {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}

nav .flusii-wordmark-host,
header .flusii-wordmark-host {
  width: clamp(120px, 14vw, 190px);
}

@media (max-width: 620px) {
  .flusii-wordmark-host {
    width: min(76vw, 300px);
  }

  nav .flusii-wordmark-host,
  header .flusii-wordmark-host {
    width: 132px;
  }
}

.flusii-wordmark-legacy-replaced::before,
.flusii-wordmark-legacy-replaced::after,
.flusii-wordmark-legacy-replaced .dot,
.flusii-wordmark-legacy-replaced [class*="dot"] {
  content: none !important;
  display: none !important;
}

.flusii-wordmark-legacy-replaced {
  color: transparent !important;
  text-decoration: none !important;
}

/* Exact Flusii app wordmark geometry and 1.8 s dot choreography. */
.flusii-app-wordmark {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
}

.flusii-app-wordmark__text {
  fill: #f7f4ff;
  font-family: "Nunito", "Nunito Sans", sans-serif;
  font-size: 180px;
  font-weight: 800;
}

.flusii-app-wordmark__stem {
  fill: #f7f4ff;
}

.flusii-app-wordmark__dot {
  fill: #8b5cf6;
  transform-box: fill-box;
  transform-origin: center;
  animation: flusii-app-dot-bounce 1800ms linear infinite;
  will-change: transform;
}

.flusii-app-wordmark__dot--two {
  animation-delay: 130ms;
}

@keyframes flusii-app-dot-bounce {
  0%,
  11.111% {
    transform: translateY(0);
  }

  11.111% {
    animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
  }

  25.556% {
    transform: translateY(-72px);
    animation-timing-function: cubic-bezier(0.4, 0, 1, 1);
  }

  37.778% {
    transform: translateY(0);
    animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
  }

  45% {
    transform: translateY(-12.96px);
    animation-timing-function: cubic-bezier(0.4, 0, 1, 1);
  }

  52.222%,
  100% {
    transform: translateY(0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .flusii-app-wordmark__dot {
    animation: none;
  }
}

/* App-bundled Nunito 800 and Android wordmark proportions, copied 1:1 from FlusiiWordmark.kt. */
@font-face {
  font-family: "Flusii App Wordmark";
  src: url("../fonts/nunito-app.ttf") format("truetype");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}

.flusii-app-wordmark--native {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
}

.flusii-app-wordmark__native-text {
  fill: #f7f4ff;
  font-family: "Flusii App Wordmark", "Nunito", sans-serif;
  font-size: 180px;
  font-weight: 800;
}

.flusii-app-wordmark__native-stem {
  fill: #f7f4ff;
}

.flusii-app-wordmark__native-dot {
  fill: #8c68ff;
}

[data-clean-store="true"]::before,
[data-clean-store="true"]::after {
  content: none !important;
  display: none !important;
}
/* Final hero device composition: adult left, Kids right. */
.theme-orbit .device-stage .device {
  height: auto;
  padding: 3px;
  background: linear-gradient(145deg, #f7f8ff 0%, #8f98ac 48%, #eef1f8 100%);
  box-shadow: none;
  filter: drop-shadow(0 30px 34px rgba(2, 2, 12, .52));
  overflow: hidden;
}

.theme-orbit .device-stage .device::before {
  display: none;
}

.theme-orbit .device-stage .device img {
  display: block;
  width: 100%;
  height: auto;
  margin-bottom: -1px;
  object-fit: contain;
  object-position: center top;
  border-radius: 38px;
  background: #090916;
}

.theme-orbit .device-stage .device.main {
  width: 300px;
  height: auto;
  left: 1%;
  right: auto;
  bottom: 0;
  z-index: 2;
  transform: rotate(-3deg);
}

.theme-orbit .device-stage .device.side {
  width: 270px;
  height: auto;
  left: auto;
  right: 0;
  bottom: 30px;
  z-index: 3;
  transform: rotate(4deg);
}

@media (max-width: 720px) {
  .theme-orbit .device-stage .device.main {
    width: min(61vw, 280px);
    left: -3%;
    bottom: 8px;
  }

  .theme-orbit .device-stage .device.side {
    width: min(56vw, 255px);
    right: -2%;
    bottom: 34px;
  }
}

/* Polished hero spacing: balanced devices with an unobstructed label row. */
.theme-orbit .device-stage {
  height: 650px;
  padding-bottom: 76px;
}

.theme-orbit .device-stage .device.main {
  width: 250px;
  left: 4%;
  right: auto;
  bottom: 82px;
  z-index: 2;
  transform: rotate(-1.5deg);
}

.theme-orbit .device-stage .device.side {
  width: 245px;
  left: auto;
  right: 4%;
  bottom: 82px;
  z-index: 2;
  transform: rotate(1.5deg);
}

.theme-orbit .device-stage .hero-badge-row {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 4px;
  z-index: 5;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 22px;
  width: 100%;
  padding: 0 3%;
  align-items: center;
}

.theme-orbit .device-stage .hero-badge-row .floating-pill {
  position: static;
  width: max-content;
  max-width: 100%;
  margin: 0 auto;
  transform: none;
  white-space: nowrap;
}

@media (max-width: 720px) {
  .theme-orbit .device-stage {
    height: 560px;
    padding-bottom: 70px;
  }

  .theme-orbit .device-stage .device.main {
    width: min(48vw, 230px);
    left: 0;
    bottom: 76px;
    transform: rotate(-1deg);
  }

  .theme-orbit .device-stage .device.side {
    width: min(47vw, 225px);
    right: 0;
    bottom: 76px;
    transform: rotate(1deg);
  }

  .theme-orbit .device-stage .hero-badge-row {
    gap: 8px;
    padding: 0;
  }

  .theme-orbit .device-stage .hero-badge-row .floating-pill {
    font-size: clamp(.68rem, 2.7vw, .9rem);
    padding-inline: 12px;
  }
}

/* Official Apple iPhone 17 Pro bezel composites. */
.theme-orbit .device-stage .device,
.theme-orbit .device-stage .device.main,
.theme-orbit .device-stage .device.side {
  height: auto;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
  filter: drop-shadow(0 30px 34px rgba(2, 2, 12, .48));
}
.theme-orbit .device-stage .device img {
  width: 100%;
  height: auto;
  margin: 0;
  border-radius: 0;
  background: transparent;
  object-fit: contain;
}
.theme-orbit .device-stage .device.main {
  width: 258px;
  left: 3%;
  right: auto;
  bottom: 92px;
  transform: rotate(-1.25deg);
}
.theme-orbit .device-stage .device.side {
  width: 258px;
  left: auto;
  right: 3%;
  bottom: 92px;
  transform: rotate(1.25deg);
}
.theme-orbit .device-stage .device::after {
  position: absolute;
  top: calc(100% + 15px);
  left: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  width: max-content;
  min-height: 48px;
  padding: 10px 20px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 999px;
  color: #fff;
  font: 700 1rem/1.1 var(--font-display, sans-serif);
  white-space: nowrap;
  transform: translateX(-50%);
  filter: none;
}
.theme-orbit .device-stage .device.main::after {
  content: "Til rådighed i dag · 76 kr.";
  border-color: rgba(94, 226, 169, .7);
  background: linear-gradient(135deg, rgba(5, 112, 78, .96), rgba(4, 76, 58, .96));
  color: #d9fff0;
}
.theme-orbit .device-stage .device.side::after {
  content: "Lær. Tjen. Spar.";
  background: rgba(24, 21, 49, .96);
}
.theme-orbit .hero-badge-row { display: none !important; }
@media (max-width: 720px) {
  .theme-orbit .device-stage .device.main,
  .theme-orbit .device-stage .device.side {
    width: min(46vw, 228px);
    bottom: 86px;
  }
  .theme-orbit .device-stage .device.main { left: 0; }
  .theme-orbit .device-stage .device.side { right: 0; }
  .theme-orbit .device-stage .device::after {
    min-height: 40px;
    padding: 8px 11px;
    font-size: clamp(.65rem, 2.6vw, .82rem);
  }
}
/* Final visual polish: app-accurate ring, clean Ellow device and subtle hero chips. */
.theme-orbit .ring-visual {
  border-color: rgba(72, 65, 103, .46) !important;
  border-right-color: #62d2b1 !important;
  border-bottom-color: #62d2b1 !important;
  filter: drop-shadow(0 12px 24px rgba(98, 210, 177, .08));
}

/* The Ellow panel owns its frame, so show the clean current screen inside it. */
.theme-orbit .kids-art .device img {
  content: url("../orbit-kids-tasks-angelo-v2.webp");
}

.theme-orbit .device-stage .device::after {
  top: calc(100% + 9px) !important;
  width: max-content !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-height: 34px !important;
  padding: 7px 12px !important;
  border-radius: 999px !important;
  font-size: .72rem !important;
  line-height: 1 !important;
  letter-spacing: .005em !important;
  box-shadow: 0 8px 22px rgba(0, 0, 0, .22) !important;
  transform: translateX(-50%) !important;
}

.theme-orbit .device-stage .device.main::after {
  border-color: rgba(98, 210, 177, .48) !important;
  background: rgba(8, 73, 57, .9) !important;
  color: #cffff0 !important;
}

.theme-orbit .device-stage .device.side::after {
  border-color: rgba(255, 255, 255, .14) !important;
  background: rgba(20, 17, 43, .9) !important;
  color: #f7f4ff !important;
}

/* Transparent PNG silhouettes must never receive a rectangular hover frame. */
.theme-orbit .device-stage .device:hover,
.theme-orbit .device-stage .device:focus,
.theme-orbit .device-stage .device:focus-visible {
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  filter: drop-shadow(0 34px 38px rgba(2, 2, 12, .52)) !important;
}

.theme-orbit .device-stage .device.main:hover,
.theme-orbit .device-stage .device.main:focus-visible {
  transform: translateY(-5px) rotate(-1.25deg) !important;
}

.theme-orbit .device-stage .device.side:hover,
.theme-orbit .device-stage .device.side:focus-visible {
  transform: translateY(-5px) rotate(1.25deg) !important;
}

@media (max-width: 720px) {
  .theme-orbit .device-stage .device::after {
    top: calc(100% + 7px) !important;
    max-height: 30px !important;
    padding: 6px 9px !important;
    font-size: clamp(.58rem, 2.35vw, .7rem) !important;
  }
}
/* Ellow panel: use the same official iPhone 17 Pro mockup as the hero. */
.theme-orbit .kids-art .device {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
  filter: drop-shadow(0 30px 34px rgba(2, 2, 12, .46));
}

.theme-orbit .kids-art .device::before,
.theme-orbit .kids-art .device::after {
  content: none !important;
  display: none !important;
}

.theme-orbit .kids-art .device img {
  content: url("../orbit-kids-tasks-angelo-v2.webp");
  width: 100% !important;
  height: auto !important;
  border: 0 !important;
  border-radius: 0 !important;
  object-fit: contain !important;
  box-shadow: none !important;
}

.theme-orbit .kids-art .device:hover {
  box-shadow: none !important;
  filter: drop-shadow(0 34px 38px rgba(2, 2, 12, .5));
}
/* App-native Flusii wordmark: copied from FlusiiWordmark in the iOS app. */
.flusii-final-wordmark {
  --flusii-logo-size: clamp(4.35rem, 6.4vw, 7.4rem);
  --flusii-stem-width: calc(var(--flusii-logo-size) * .173);
  --flusii-stem-height: calc(var(--flusii-logo-size) * .532);
  --flusii-dot-size: calc(var(--flusii-logo-size) * .205);
  --flusii-dot-gap: calc(var(--flusii-logo-size) * .07);
  --flusii-lead-gap: calc(var(--flusii-logo-size) * .06);
  --flusii-inter-gap: calc(var(--flusii-logo-size) * .105);
  --flusii-hop: calc(var(--flusii-logo-size) * .40);
  display: inline-flex;
  align-items: flex-end;
  direction: ltr;
  color: #f9f7ff;
  font-family: ui-rounded, "SF Pro Rounded", "SF Pro Display", sans-serif;
  font-size: var(--flusii-logo-size);
  font-weight: 800;
  font-variation-settings: "wght" 800;
  line-height: .72;
  letter-spacing: -.055em;
  white-space: nowrap;
  overflow: visible;
}

.flusii-final-wordmark__letters {
  display: block;
}

.flusii-final-wordmark__i {
  position: relative;
  display: block;
  flex: 0 0 var(--flusii-stem-width);
  width: var(--flusii-stem-width);
  height: var(--flusii-stem-height);
  margin-left: var(--flusii-lead-gap);
  overflow: visible;
}

.flusii-final-wordmark__i + .flusii-final-wordmark__i {
  margin-left: var(--flusii-inter-gap);
}

.flusii-final-wordmark__stem {
  position: absolute;
  inset: 0;
  display: block;
  border-radius: 999px;
  background: currentColor;
}

.flusii-final-wordmark__dot {
  position: absolute;
  z-index: 2;
  left: 50%;
  bottom: calc(100% + var(--flusii-dot-gap));
  width: var(--flusii-dot-size);
  height: var(--flusii-dot-size);
  margin-left: calc(var(--flusii-dot-size) / -2);
  border-radius: 50%;
  background: #8758f5;
  will-change: transform;
  transform: translate3d(0, 0, 0);
}

.flusii-final-wordmark__dot--one {
  animation: flusii-app-dot-one 1.8s linear infinite !important;
}

.flusii-final-wordmark__dot--two {
  animation: flusii-app-dot-two 1.8s linear infinite !important;
}

@keyframes flusii-app-dot-one {
  0%, 11.11% { transform: translate3d(0, 0, 0); animation-timing-function: cubic-bezier(.17,.67,.27,1); }
  25.56% { transform: translate3d(0, calc(var(--flusii-hop) * -1), 0); animation-timing-function: cubic-bezier(.33,0,.67,1); }
  37.78% { transform: translate3d(0, 0, 0); animation-timing-function: cubic-bezier(.2,.72,.32,1); }
  45% { transform: translate3d(0, calc(var(--flusii-hop) * -.18), 0); animation-timing-function: cubic-bezier(.33,0,.67,1); }
  52.22%, 100% { transform: translate3d(0, 0, 0); }
}

@keyframes flusii-app-dot-two {
  0%, 18.33% { transform: translate3d(0, 0, 0); animation-timing-function: cubic-bezier(.17,.67,.27,1); }
  32.78% { transform: translate3d(0, calc(var(--flusii-hop) * -1), 0); animation-timing-function: cubic-bezier(.33,0,.67,1); }
  45% { transform: translate3d(0, 0, 0); animation-timing-function: cubic-bezier(.2,.72,.32,1); }
  52.22% { transform: translate3d(0, calc(var(--flusii-hop) * -.18), 0); animation-timing-function: cubic-bezier(.33,0,.67,1); }
  59.44%, 100% { transform: translate3d(0, 0, 0); }
}

a.brand .flusii-final-wordmark {
  --flusii-logo-size: 2.05rem;
  letter-spacing: -.045em;
}

.flusii-wordmark-host {
  overflow: visible !important;
}

.flusii-wordmark-host > :not(.flusii-final-wordmark),
a.brand > :not(.flusii-final-wordmark) {
  display: none !important;
}

/* Daily availability card: same mint ring and white amount as the app. */
.flusii-availability-feature {
  position: relative !important;
  isolation: isolate;
  overflow: hidden !important;
}

.flusii-availability-visual {
  position: absolute;
  z-index: 8;
  right: clamp(1.4rem, 4vw, 4rem);
  bottom: clamp(-3.9rem, -4vw, -1.8rem);
  width: min(48%, 25rem);
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #15122d;
  pointer-events: none;
}

.flusii-availability-ring {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
  transform: rotate(-90deg);
}

.flusii-availability-ring__track,
.flusii-availability-ring__value {
  fill: none;
  stroke-width: 22;
}

.flusii-availability-ring__track {
  stroke: #292440;
}

.flusii-availability-ring__value {
  stroke: #5fd4b1;
  stroke-linecap: round;
  stroke-dasharray: 68 32;
  filter: drop-shadow(0 0 12px rgba(95, 212, 177, .16));
}

.flusii-availability-amount {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: baseline;
  gap: .32rem;
  color: #fff;
  font-family: ui-rounded, "SF Pro Rounded", "Nunito", sans-serif;
  font-variant-numeric: tabular-nums;
  line-height: 1;
  text-shadow: 0 4px 24px rgba(0, 0, 0, .22);
}

.flusii-availability-amount strong {
  color: #fff;
  font-size: clamp(4.1rem, 7vw, 7rem);
  font-weight: 700;
  letter-spacing: -.065em;
}

.flusii-availability-amount span {
  color: #fff;
  font-size: clamp(1.35rem, 2vw, 2rem);
  font-weight: 700;
}

.flusii-availability-caption {
  position: absolute;
  top: 61%;
  color: #aaa3bd;
  font-family: ui-rounded, "SF Pro Rounded", "Nunito", sans-serif;
  font-size: clamp(.65rem, .8vw, .82rem);
  font-weight: 700;
  letter-spacing: .19em;
}

/* Final availability-card alignment: one centered app-accurate ring. */
.flusii-availability-feature > .ring-visual,
.flusii-availability-feature > .card-number {
  display: none !important;
}

.flusii-availability-visual {
  left: 50% !important;
  right: auto !important;
  top: 59% !important;
  bottom: auto !important;
  width: min(46%, 17rem) !important;
  transform: translate(-50%, -50%) !important;
  background: transparent !important;
}

.flusii-availability-amount strong {
  color: #ffffff !important;
  font-size: clamp(3rem, 5vw, 4.8rem) !important;
}

.flusii-availability-amount span {
  color: #ffffff !important;
  font-size: clamp(1rem, 1.5vw, 1.35rem) !important;
}

.flusii-availability-caption {
  top: 63% !important;
}

@media (max-width: 760px) {
  .flusii-availability-visual {
    left: 50% !important;
    right: auto !important;
    top: 62% !important;
    bottom: auto !important;
    width: min(58%, 14rem) !important;
    transform: translate(-50%, -50%) !important;
  }
}

@media (max-width: 760px) {
  .flusii-availability-visual {
    right: -2.2rem;
    bottom: -2.8rem;
    width: 58%;
    opacity: .96;
  }
}

/* Enforce the app's white wordmark and animated purple ii dots in every logo variant. */
.flusii-final-wordmark,
.flusii-wordmark-host,
a.brand {
  color: #f9f7ff !important;
}

.flusii-wordmark-host .flusii-app-wordmark__text,
.flusii-wordmark-host .flusii-app-wordmark__stem,
.flusii-wordmark-host [class*="wordmark"] text,
.flusii-wordmark-host [class*="wordmark"] rect:not([class*="dot"]) {
  color: #f9f7ff !important;
  fill: #f9f7ff !important;
  background: #f9f7ff !important;
}

/* Final logo color lock: brand span styles must never recolor the letters. */
.theme-orbit .brand .flusii-final-wordmark,
.theme-orbit .brand .flusii-final-wordmark *:not(.flusii-final-wordmark__dot),
.theme-orbit .flusii-wordmark-host .flusii-final-wordmark,
.theme-orbit .flusii-wordmark-host .flusii-final-wordmark *:not(.flusii-final-wordmark__dot),
.theme-orbit .flusii-logo-force-white,
.theme-orbit .flusii-logo-force-white *:not(.logo-dot):not(.flusii-dot):not([class*="dot"]) {
  color: #ffffff !important;
  fill: #ffffff !important;
}

.theme-orbit .flusii-final-wordmark__dot,
.theme-orbit .flusii-logo-force-white .logo-dot,
.theme-orbit .flusii-logo-force-white .flusii-dot,
.theme-orbit .flusii-logo-force-white [class*="dot"] {
  color: #8758f5 !important;
  fill: #8758f5 !important;
  background-color: #8758f5 !important;
}

.flusii-wordmark-host .flusii-app-wordmark__dot,
.flusii-wordmark-host [class*="wordmark"] circle,
.flusii-final-wordmark__dot {
  fill: #8758f5 !important;
  background: #8758f5 !important;
  transform-box: fill-box;
  transform-origin: center;
  will-change: transform;
}

.flusii-wordmark-host .flusii-app-wordmark__dot--one,
.flusii-wordmark-host [class*="wordmark"] circle:nth-of-type(1) {
  animation: flusii-svg-dot-one 1.8s linear infinite !important;
}

.flusii-wordmark-host .flusii-app-wordmark__dot--two,
.flusii-wordmark-host [class*="wordmark"] circle:nth-of-type(2) {
  animation: flusii-svg-dot-two 1.8s linear infinite !important;
}

@keyframes flusii-svg-dot-one {
  0%, 11.11% { transform: translateY(0); animation-timing-function: cubic-bezier(.17,.67,.27,1); }
  25.56% { transform: translateY(-195%); animation-timing-function: cubic-bezier(.33,0,.67,1); }
  37.78% { transform: translateY(0); animation-timing-function: cubic-bezier(.2,.72,.32,1); }
  45% { transform: translateY(-35%); animation-timing-function: cubic-bezier(.33,0,.67,1); }
  52.22%, 100% { transform: translateY(0); }
}

@keyframes flusii-svg-dot-two {
  0%, 18.33% { transform: translateY(0); animation-timing-function: cubic-bezier(.17,.67,.27,1); }
  32.78% { transform: translateY(-195%); animation-timing-function: cubic-bezier(.33,0,.67,1); }
  45% { transform: translateY(0); animation-timing-function: cubic-bezier(.2,.72,.32,1); }
  52.22% { transform: translateY(-35%); animation-timing-function: cubic-bezier(.33,0,.67,1); }
  59.44%, 100% { transform: translateY(0); }
}

/* Keep the primary Flusii slogan on one clean line. */
.single-line-slogan {
  width: 100%;
  max-width: none;
  white-space: nowrap;
  font-size: clamp(16px, 4vw, 78px) !important;
  line-height: 1.05 !important;
  letter-spacing: -0.035em;
}

/* Kids showcase: keep the transparent iPhone mockup free of rectangular device chrome. */
.kids-art .device,
.kids-art .device:hover,
.kids-art .device:focus,
.kids-art .device:focus-visible {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  overflow: visible !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.kids-art .device::before,
.kids-art .device::after {
  content: none !important;
  display: none !important;
}

.kids-art .device img,
.kids-art .device img.hero-kids-clean-screen {
  display: block;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  filter: drop-shadow(0 30px 44px rgba(2, 2, 18, 0.34));
}
/* Daily availability card: keep the app-style value and caption on separate lines. */
.flusii-availability-visual {
  top: 63% !important;
  width: min(62%, 23rem) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: clamp(.8rem, 1.2vw, 1.1rem) !important;
}

.flusii-availability-amount {
  position: relative !important;
  display: flex !important;
  align-items: baseline !important;
  justify-content: center !important;
  gap: .38rem !important;
  margin: 0 !important;
  transform: none !important;
}

.flusii-availability-amount strong {
  font-size: clamp(4.2rem, 6vw, 6.2rem) !important;
  line-height: .88 !important;
}

.flusii-availability-amount span {
  font-size: clamp(1.3rem, 1.8vw, 1.75rem) !important;
  line-height: 1 !important;
}

.flusii-availability-caption {
  position: relative !important;
  inset: auto !important;
  margin: 0 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

@media (max-width: 760px) {
  .flusii-availability-visual {
    top: 64% !important;
    width: min(72%, 18rem) !important;
    gap: .7rem !important;
  }

  .flusii-availability-amount strong {
    font-size: clamp(3.7rem, 17vw, 5.25rem) !important;
  }
}
/* Match the availability ring to 76 of 140 kr. and center the numeric value optically. */
.flusii-availability-ring__value {
  stroke-dasharray: 54 46 !important;
}

.flusii-availability-visual {
  gap: clamp(1rem, 1.4vw, 1.3rem) !important;
}

.flusii-availability-amount {
  display: block !important;
  width: max-content !important;
  padding: 0 !important;
}

.flusii-availability-amount strong {
  display: block !important;
  font-size: clamp(3.8rem, 5.4vw, 5.5rem) !important;
  letter-spacing: -.055em !important;
  line-height: .9 !important;
}

.flusii-availability-amount span {
  position: absolute !important;
  left: calc(100% + .38rem) !important;
  bottom: .08em !important;
  font-size: clamp(1.2rem, 1.65vw, 1.6rem) !important;
  white-space: nowrap !important;
}

.flusii-availability-caption {
  font-size: clamp(.62rem, .78vw, .8rem) !important;
  letter-spacing: .18em !important;
}
/* Center the complete amount inside the ring and reduce the supporting caption. */
.flusii-availability-amount {
  position: relative !important;
  display: flex !important;
  width: auto !important;
  align-items: baseline !important;
  justify-content: center !important;
  gap: .3rem !important;
}

.flusii-availability-amount strong {
  display: block !important;
  font-size: clamp(3.7rem, 5.15vw, 5.25rem) !important;
}

.flusii-availability-amount span {
  position: static !important;
  font-size: clamp(1.05rem, 1.45vw, 1.4rem) !important;
  line-height: 1 !important;
}

.flusii-availability-caption {
  font-size: clamp(.56rem, .66vw, .68rem) !important;
  letter-spacing: .16em !important;
}

/* Featuresektionen skal følge indholdets faktiske højde. */
.theme-orbit #features,
.theme-orbit .features-section,
.theme-orbit .feature-section,
.theme-orbit .section:has(.bento) {
  height: auto !important;
  min-height: 0 !important;
  padding-bottom: clamp(72px, 8vw, 120px) !important;
}

.theme-orbit #features .bento,
.theme-orbit .features-section .bento,
.theme-orbit .feature-section .bento,
.theme-orbit .section:has(.bento) .bento {
  height: auto !important;
  min-height: 0 !important;
  align-content: start !important;
  margin-bottom: 0 !important;
}

/* Fjern den kunstige scroll-runway omkring præsentationen med trin 1-6. */
.theme-orbit .compact-story-section {
  height: auto !important;
  min-height: 0 !important;
  padding-bottom: clamp(56px, 6vw, 96px) !important;
}

.theme-orbit .compact-story-section .compact-story-stage {
  height: auto !important;
  min-height: 0 !important;
  position: relative !important;
  top: auto !important;
}

/* ==========================================================================
   FLUSII · RETTELSESLAG  (2026-08-18)
   Ligger sidst, så det vinder over de mange lag af tidligere overskrivninger.
   Erstatter de JavaScript-hacks, der før rettede layoutet efter indlæsning.
   ========================================================================== */

/* --- 1. Skrift: samme Nunito som appen, overalt -------------------------- */
/* Filerne er byte-identiske med appens (nunito-bold/extrabold matcher 1:1).
   Aliaset "Nunito" findes, fordi ældre regler i denne fil beder om det navn. */
@font-face{font-family:'Nunito';src:url('../fonts/nunito-regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Nunito';src:url('../fonts/nunito-semibold.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'Nunito';src:url('../fonts/nunito-bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Nunito';src:url('../fonts/nunito-extrabold.ttf') format('truetype');font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:'Nunito';src:url('../fonts/nunito-black.ttf') format('truetype');font-weight:900;font-style:normal;font-display:swap}

/* Ét skriftsnit for hele sitet. De fem gamle demo-temaer satte Bricolage
   Grotesque, Fraunces, Manrope, Space Grotesk og DM Sans — ingen af dem er
   Flusiis. Nu peger alle temaer på appens Nunito. */
:root,
.theme-apple,.theme-nordic,.theme-orbit,
.theme-play,.theme-editorial,.theme-signal{
  --head:'Flusii Nunito','Nunito',ui-rounded,'SF Pro Rounded',sans-serif;
  --body:'Flusii Nunito','Nunito',ui-rounded,'SF Pro Rounded',sans-serif;
}
body{font-family:var(--body)}

/* Nunito er rundere og bredere end den grotesk, layoutet blev tegnet til.
   Overskrifterne får derfor en anelse mindre negativ tracking, så bogstaverne
   ikke klumper, og en linjehøjde der ikke klipper danske Ø/Å. */
.section-head h2,.hero h1,h1,h2{letter-spacing:-.028em}
.hero h1{line-height:1.02}
.section-head h2{line-height:1.06}

/* --- 2. Mellemrummet i midten ------------------------------------------- */
/* Kernen i problemet: bento-gitteret havde FASTE rækkehøjder (280px, 250px på
   mobil). Kort med kort tekst efterlod derfor dødt rum, og et kort der brød om
   til en ny række skabte et helt tomt felt. Rækkerne følger nu indholdet og har
   kun en MINIMUMShøjde. Det er dette, de fire JS-scripts forsøgte at rette op
   på bagefter — nu er det rigtigt fra start. */
.bento{grid-auto-rows:minmax(250px,auto);align-content:start}
.card.large{grid-row:span 2}

/* Sektionernes luft: 130px foroven + 130px forneden gav 260px mellem hver
   sektion. Skaleret ned og gjort responsiv. */
.section{padding:clamp(64px,6.5vw,104px) 0}
.section-head{margin-bottom:clamp(30px,3.6vw,50px)}
.closing{padding-bottom:clamp(48px,5vw,76px)}

/* Det STORE tomme bånd midt på siden: den fulde funktionsoversigt havde
   `margin: clamp(88px,12vw,168px) auto`. Oveni den forudgående sektions egen
   bundpadding (~115px) blev der 280px helt tomt mellem to kortgitre. Afsnittet
   er en FORTSÆTTELSE af funktionerne, ikke et nyt kapitel — sektionens padding
   er separationen nok. Målt før: 258px hul. Efter: ~150px. */
.more-features-section{margin-block:clamp(16px,2vw,32px)}

/* Sektionerne må aldrig tvinges højere end deres indhold. */
main>section{height:auto;min-height:0}

/* --- 3. Blødere bevægelse ------------------------------------------------ */
/* Kun transform/opacity animeres, og de elementer der faktisk bevæger sig
   får deres eget lag, så browseren slipper for at gentegne under musen. */
.theme-orbit .device-stage,
.theme-orbit .device-stage .device{will-change:transform}
.card{transition:transform .35s cubic-bezier(.22,.61,.36,1),border-color .35s ease,box-shadow .35s ease}

/* Sikkerhedsnet: hvis IntersectionObserver aldrig når at fyre (skjult fane,
   udskrift, en JS-fejl i et andet script), må indholdet ALDRIG blive stående
   usynligt. `motion-fallback` sættes af orbit-motion.js efter 1,2 s. */
.theme-orbit.motion-fallback .motion-reveal{opacity:1;transform:none;filter:none}

@media (prefers-reduced-motion:reduce){
  .theme-orbit .motion-reveal{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}
  .theme-orbit .device-stage,.theme-orbit .device-stage .device{will-change:auto}
  *{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
}

/* --- 4. Accentfarver på ALLE kort --------------------------------------- */
/* Før havde kun 6 ud af 23 kort en farvet kant; resten stod grå. Nu har hvert
   kort sin egen farve, og det samme begreb bærer samme farve begge steder på
   siden - "Sparemål" er orange både i bento-gitteret og i funktionsoversigten,
   så farven betyder noget i stedet for at være pynt. */
.flusii-feature-accent-mint{border-color:rgba(91,224,186,.92);box-shadow:inset 0 0 0 1px rgba(91,224,186,.10),0 24px 64px rgba(91,224,186,.09)}
.flusii-feature-accent-purple{border-color:rgba(139,92,246,.92);box-shadow:inset 0 0 0 1px rgba(139,92,246,.10),0 24px 64px rgba(139,92,246,.09)}
.flusii-feature-accent-orange{border-color:rgba(255,150,63,.92);box-shadow:inset 0 0 0 1px rgba(255,150,63,.10),0 24px 64px rgba(255,150,63,.09)}
.flusii-feature-accent-blue{border-color:rgba(79,140,255,.92);box-shadow:inset 0 0 0 1px rgba(79,140,255,.10),0 24px 64px rgba(79,140,255,.09)}
.flusii-feature-accent-lavender{border-color:rgba(183,156,255,.92);box-shadow:inset 0 0 0 1px rgba(183,156,255,.10),0 24px 64px rgba(183,156,255,.09)}
.flusii-feature-accent-pink{border-color:rgba(255,111,181,.92);box-shadow:inset 0 0 0 1px rgba(255,111,181,.10),0 24px 64px rgba(255,111,181,.09)}
.flusii-feature-accent-amber{border-color:rgba(255,197,61,.92);box-shadow:inset 0 0 0 1px rgba(255,197,61,.10),0 24px 64px rgba(255,197,61,.09)}
.flusii-feature-accent-cyan{border-color:rgba(62,208,240,.92);box-shadow:inset 0 0 0 1px rgba(62,208,240,.10),0 24px 64px rgba(62,208,240,.09)}
.flusii-feature-accent-lime{border-color:rgba(163,230,53,.92);box-shadow:inset 0 0 0 1px rgba(163,230,53,.10),0 24px 64px rgba(163,230,53,.09)}
.flusii-feature-accent-coral{border-color:rgba(255,122,107,.92);box-shadow:inset 0 0 0 1px rgba(255,122,107,.10),0 24px 64px rgba(255,122,107,.09)}

/* Kanten lyser op, når man peger på kortet. */
.card[data-flusii-accent],
.more-feature-card[data-flusii-accent]{transition:border-color .3s ease,box-shadow .3s ease,transform .3s cubic-bezier(.22,.61,.36,1)}
.flusii-feature-accent-mint:hover{border-color:rgba(91,224,186,1);box-shadow:inset 0 0 0 1px rgba(91,224,186,.18),0 28px 74px rgba(91,224,186,.16)}
.flusii-feature-accent-purple:hover{border-color:rgba(139,92,246,1);box-shadow:inset 0 0 0 1px rgba(139,92,246,.18),0 28px 74px rgba(139,92,246,.16)}
.flusii-feature-accent-orange:hover{border-color:rgba(255,150,63,1);box-shadow:inset 0 0 0 1px rgba(255,150,63,.18),0 28px 74px rgba(255,150,63,.16)}
.flusii-feature-accent-blue:hover{border-color:rgba(79,140,255,1);box-shadow:inset 0 0 0 1px rgba(79,140,255,.18),0 28px 74px rgba(79,140,255,.16)}
.flusii-feature-accent-lavender:hover{border-color:rgba(183,156,255,1);box-shadow:inset 0 0 0 1px rgba(183,156,255,.18),0 28px 74px rgba(183,156,255,.16)}
.flusii-feature-accent-pink:hover{border-color:rgba(255,111,181,1);box-shadow:inset 0 0 0 1px rgba(255,111,181,.18),0 28px 74px rgba(255,111,181,.16)}
.flusii-feature-accent-amber:hover{border-color:rgba(255,197,61,1);box-shadow:inset 0 0 0 1px rgba(255,197,61,.18),0 28px 74px rgba(255,197,61,.16)}
.flusii-feature-accent-cyan:hover{border-color:rgba(62,208,240,1);box-shadow:inset 0 0 0 1px rgba(62,208,240,.18),0 28px 74px rgba(62,208,240,.16)}
.flusii-feature-accent-lime:hover{border-color:rgba(163,230,53,1);box-shadow:inset 0 0 0 1px rgba(163,230,53,.18),0 28px 74px rgba(163,230,53,.16)}
.flusii-feature-accent-coral:hover{border-color:rgba(255,122,107,1);box-shadow:inset 0 0 0 1px rgba(255,122,107,.18),0 28px 74px rgba(255,122,107,.16)}

/* --- 5. Demo-rester der ikke hører i et produktionstema ------------------ */
/* `.concept-nav` er en designvælger fra det oprindelige koncept-galleri: seks
   runde 1-6-knapper, fastgjort nederst på skærmen, der linker til
   apple-glass.html, nordic-family.html osv. Sider som ikke findes i temaet —
   altså seks 404-links i besøgendes ansigt. Skjules her og fjernes helt fra
   DOM'en af orbit-accents.js, så hverken skærmlæsere eller søgemaskiner
   møder dem. */
.concept-nav{display:none!important}

/* --- 6. Den hårde kant i toppen ----------------------------------------- */
/* Årsag: `body{overflow-x:hidden}` gør body til en SCROLL-CONTAINER. En
   scroll-container klipper sine `position:fixed` efterkommere — og de to
   ambiente lyskugler (`.theme-orbit::before/::after`) er netop fixed, 605px
   store og sløret med `blur(90px)`. Deres bløde glød blev derfor skåret af
   langs bodys kant i en knivskarp, lige linje: den kant, der ses i toppen og
   ude i højre side.
   Rettelsen: den vandrette spærre flyttes til <html>, hvor den forplanter sig
   til selve viewporten. Så holder siden op med at kunne scrolles sidelæns
   (målt: dokumentbredde 1443px -> 1440px = ingen vandret scroll), men body er
   ikke længere en klippende container, og gløden får lov at tone blødt ud. */
/* Første forsøg var at flytte `overflow-x` til <html>, så body holdt op med at
   klippe. Browseren beholdt dog body som scroll-container (målt: overflowY
   forblev `auto`), og kanten var der stadig. Derfor fjernes ÅRSAGEN i stedet
   for symptomet:

   En ensfarvet cirkel med `filter: blur(90px)` har en hård kant i sig selv —
   sløret er bare malet uden om den. Bliver laget klippet, ses snittet med det
   samme. En `radial-gradient` derimod toner ud til HELT gennemsigtig af sig
   selv: den kan klippes hvor som helst uden at efterlade en synlig kant.

   Sidegevinst: `filter: blur(90px)` på to 600px store, fastgjorte lag skal
   males om ved hver eneste frame af den 18-22 sekunders drift-animation. Det
   er et af de dyreste ting, man kan bede en browser om. Gradienten koster
   næsten ingenting, så bevægelsen på siden bliver samtidig lettere. */
.theme-orbit:before,
.theme-orbit:after{
  filter:none;
  opacity:.42;
  border-radius:0;
}
.theme-orbit:before{
  /* Negativt top: kuglens farve når allerede y=0. Med top:6vh (som før) var
     der et fladt, ulyst bånd fra y=0 til y=6vh, FØR gløden overhovedet
     startede — det var den mørke bjælke i toppen af siden. */
  top:-10vh;left:-14vw;width:56vw;height:56vw;min-width:520px;min-height:520px;
  background:radial-gradient(closest-side,rgba(102,55,255,.62),rgba(102,55,255,.28) 46%,rgba(102,55,255,0) 78%);
}
.theme-orbit:after{
  top:20vh;right:-13vw;width:52vw;height:52vw;min-width:480px;min-height:480px;
  background:radial-gradient(closest-side,rgba(255,119,77,.50),rgba(255,119,77,.22) 46%,rgba(255,119,77,0) 78%);
}
/* Ekstra sikring helt i toppen: Safari (uden en <meta name="theme-color">)
   sampler selv sidens allerøverste pixelrække til statusbjælkens farve. Denne
   tynde stribe garanterer, at der ALTID er farve dér — uafhængigt af hvor
   kuglerne præcis lander på forskellige skærmstørrelser. */
.theme-orbit .site-shell{
  background:linear-gradient(180deg,rgba(102,55,255,.22),rgba(102,55,255,0) 260px);
}

/* --- 7. Vandret scroll på mobil -------------------------------------------- */
/* To rent dekorative elementer bag telefonerne i helten havde en FAST
   pixelbredde, der aldrig blev mindre på mobil:
     .device-glow        520×520px, cirkel
     .device-stage:after 680×340px, roteret -18° (den drejning gør den
                          effektive bredde endnu større end de 680px)
   Ingen forælder klippede dem, så på en smal skærm stak de langt ud til
   begge sider og gjorde HELE siden vandret scrollbar - det var derfor
   kortene kunne skubbes til siden. Nu skalerer begge med skærmen i stedet
   for at have en fast størrelse, og topniveauet får en ekstra sikring. */
html{overflow-x:hidden}
.device-glow{width:clamp(220px,58vw,520px);height:clamp(220px,58vw,520px)}
.theme-orbit .device-stage:after{width:clamp(280px,68vw,680px);height:clamp(140px,34vw,340px)}

/* --- 8. Ellow skal stå FORAN telefonen på mobil/tablet ------------------- */
/* I "Gode pengevaner"-afsnittet ligger Ellow (.ellow-orb) FØR telefonen
   (.kids-art .device) i markup'en, og ingen af dem har z-index. Uden
   z-index afgøres stakkeordenen af DOM-rækkefølgen - telefonen (nummer to)
   lægger sig derfor altid ØVERST, uanset skærmstørrelse.
   På desktop er der god plads, så de sjældent overlapper, og udseendet skal
   blive ved det. Under 900px - hvor .kids-panel går fra to kolonner til én
   (se `.hero,.section-head,.kids-panel,.pricing{grid-template-columns:1fr}`
   ved samme grænse) - rykker Ellow og telefonen tættere sammen, og Ellow
   forsvinder bag telefonens kant. Derfor kun rettet under 900px. */
@media(max-width:900px){
  .theme-orbit .kids-art .ellow-orb{z-index:3}
  .theme-orbit .kids-art .device{z-index:1}
}

/* --- 9. Byt om på telefonerne i helten: Kids venstre, Voksen højre ------- */
/* `.device.main` (Flusii voksen) og `.device.side` (Flusii Kids) har hver
   sin brik `left`/`right`-regel spredt ud over adskillige ældre lag i denne
   fil - målt live på skærmen viste det sig, at KUN to mønstre reelt vinder:
     ≥900px (desktop):  main venstre (left:3%), side højre (right:3%)
   <900px (mobil/tablet): main venstre (left:0), side højre (right:0)
   Voksen (main) har altså ALTID stået i venstre side, Kids (side) altid i
   højre - modsat rækkefølgen på reference-billedet. Denne blok bytter kun
   VENSTRE/HØJRE om, med de samme mål som allerede vandt kapløbet, så bredde,
   rotation og lag-orden (z-index) er urørt. !important, fordi filen har for
   mange ældre generationer af denne regel til at være sikker på at vinde
   uden. */
/* Byttet TILBAGE 2026-08-19 efter ønske: Flusii voksen skal stå i venstre
   side, Flusii Kids i højre - modsat den forrige version af denne regel. */
.theme-orbit .device-stage .device.main{left:3%!important;right:auto!important}
.theme-orbit .device-stage .device.side{right:3%!important;left:auto!important}
@media(max-width:900px){
  .theme-orbit .device-stage .device.main{left:0!important;right:auto!important}
  .theme-orbit .device-stage .device.side{right:0!important;left:auto!important}
  /* .device-stage er selv display:grid, og ALLE dens børn (main, side, glow,
     hero-badge-row) er position:absolute - de bidrager derfor ikke til dens
     egen bredde. Skulle den nogensinde miste stræk-bredden fra .hero's
     gitter (målt i visse automatiserede test-visninger, ikke bekræftet i
     rigtig Safari), er dette et billigt sikkerhedsnet: en eksplicit bredde
     kan aldrig blive tvetydig. */
  .theme-orbit .device-stage{width:100%}
}

/* --- 10. "Kommer snart!" ved Ellow --------------------------------------- */
/* Badge oven på Ellow-figuren i "Gode pengevaner"-afsnittet. Samme
   glas-pille-stil som .floating-pill i helten, så den ikke ser løsrevet ud
   fra resten af siden. Placeret øverst til højre for Ellow, let vippet, så
   den læses som et rigtigt "badge" og ikke en tilfældig tekstklat. */
/* "Kommer snart!" sad først oven på Ellow-figuren, men det kunne læses som
   om det var ELLOW der kom snart, ikke Flusii Kids-appen. Flyttet ind i selve
   "FLUSII KIDS"-mærket øverst i afsnittet, hvor det umuligt kan misforstås.
   Rolig, statisk pille (ingen rotation/puls) - det sidder ved siden af almin-
   delig tekst nu, ikke svævende over et billede, så et "sticker"-udtryk ville
   virke malplaceret her. */
.theme-orbit .eyebrow{flex-wrap:wrap;row-gap:8px}
.theme-orbit .kids-coming-soon{
  display:inline-flex;
  align-items:center;
  padding:5px 12px;
  border-radius:999px;
  background:linear-gradient(135deg,rgba(255,150,63,.95),rgba(255,110,60,.95));
  color:#1a0e04;
  font-family:var(--head);
  font-size:11px;
  font-weight:800;
  letter-spacing:.01em;
  text-transform:none;
  white-space:nowrap;
  box-shadow:0 8px 18px rgba(255,119,77,.32);
}

/* --- 11. Closing-overskriften blev 16px på mobil ------------------------- */
/* `.single-line-slogan` blev sat på "Appen, der gør privatøkonomi sjov igen."
   for at tvinge den ned på ÉN linje: `white-space:nowrap` + en skrifttørrelse
   der krymper med skærmbredden (4vw), så teksten aldrig knækker. Men på
   mobil (4vw ved 390px = 15,6px) ramte klampen sin egen BUND på 16px - hele
   sidens afsluttende opfordring endte som den mindste tekst på siden i
   stedet for den største. Under 700px er der ikke plads til at holde den på
   én linje uden at ofre læsbarheden, så dér lader vi den knække over to
   linjer i stedet, med den oprindelige, langt mere læselige skriftstørrelse
   (samme klampe som `.closing h2` havde, før nowrap-tricket blev lagt oveni). */
@media(max-width:699px){
  .closing .single-line-slogan{
    white-space:normal!important;
    font-size:clamp(52px,10vw,78px)!important;
    line-height:.98!important;
    letter-spacing:-.045em!important;
  }
}

/* --- 12. Hamburger-menu på mobil ------------------------------------------ */
/* Under 900px forsvandt "Funktioner", "Flusii Kids" og "Pris" fra nav'en
   uden erstatning - der var ingen måde at nå dem fra mobil-menuen. Knappen
   er skjult på desktop (≥900px), hvor de almindelige nav-links allerede er
   synlige og ikke skal dubleres. */
.theme-orbit .nav-burger{
  display:none;
  width:44px;height:44px;
  padding:0;
  border:1px solid var(--line);
  border-radius:14px;
  background:rgba(255,255,255,.05);
  cursor:pointer;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
}
.theme-orbit .nav-burger span{
  display:block;width:20px;height:2px;border-radius:2px;
  background:var(--ink);
  transition:transform .25s ease,opacity .25s ease;
}
.theme-orbit .nav-burger.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.theme-orbit .nav-burger.is-open span:nth-child(2){opacity:0}
.theme-orbit .nav-burger.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

@media(max-width:900px){
  .theme-orbit .nav-burger{display:flex}
  /* Rækkefølgen i markup'et er brand -> burger -> nav-links. Med
     justify-content:space-between på .nav ville et tomt rum stå mellem
     brand og burger; nav-links går derfor helt om på siden som en dropdown,
     og burger'en rykker til at være nav'ens sidste synlige element. */
  .theme-orbit .nav-links{
    display:none;
    position:absolute;
    top:calc(100% + 10px);
    right:0;
    left:0;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    padding:10px;
    border-radius:20px;
    background:rgba(8,6,26,.96);
    border:1px solid var(--line);
    backdrop-filter:blur(20px);
    box-shadow:0 24px 60px rgba(0,0,0,.45);
  }
  .theme-orbit .nav-links.is-open{display:flex}
  .theme-orbit .nav-links a:not(.store-mini){
    display:block!important;
    padding:14px 16px;
    border-radius:14px;
    font-size:16px;
  }
  .theme-orbit .nav-links a:not(.store-mini):active{background:rgba(255,255,255,.06)}
  .theme-orbit .nav-links .store-mini{
    margin-top:6px;
    text-align:center;
  }
}

/* --- 13. E-mailen i bunden strandede alene på sin egen linje ------------- */
/* .footer-links er flex-wrap - på mobil er der ikke plads til alle fem
   punkter på én linje, så "Info@flusii.dk" knækkede ned for sig selv, klods
   op ad linjen ovenover, uden luft. Den får nu sin egen fulde bredde med
   lidt luft til resten, så det ser ud som et bevidst valg - en kontakt-linje
   for sig selv - i stedet for et tilfældigt afknæk. */
@media(max-width:760px){
  .footer-links a[href^="mailto"]{
    flex-basis:100%;
    margin-top:8px;
  }
}

/* --- 14. Værktøjs-kortene: 2 pr. række også på telefon -------------------- */
/* Ved 900px går gitteret fra 3 til 2 kolonner (det er iPad-visningen, som
   allerede er rigtig). Men ved 620px faldt det videre ned til ÉN kolonne, så
   alle ti kort blev stablet fuld bredde under hinanden - deraf den lange
   rulning. Nu holder telefonen samme 2-kolonners layout som iPad, bare med
   mindre padding/skrift, så to smalle kort stadig har luft. */
@media(max-width:620px){
  .theme-orbit .more-features-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .theme-orbit .more-feature-card{
    min-height:0;
    padding:18px 16px 20px!important;
  }
  .theme-orbit .more-feature-card h3{font-size:1.05rem!important;line-height:1.18;margin-bottom:8px}
  .theme-orbit .more-feature-card p{font-size:13px;line-height:1.42}
  .theme-orbit .more-feature-card::after{width:90px;height:90px;right:-36px;bottom:-42px}
}

/* --- 15. Tryk på et værktøjs-kort for at folde det ud --------------------- */
.theme-orbit .more-feature-card{
  cursor:pointer;
  user-select:none;
  -webkit-tap-highlight-color:transparent;
}
.theme-orbit .more-feature-card:focus-visible{
  outline:2px solid var(--accent2);
  outline-offset:3px;
}
/* Lille chevron øverst til højre, der drejer 180° når kortet er åbnet. */
.theme-orbit .more-feature-chevron{
  position:absolute;
  z-index:2;
  top:20px;right:20px;
  width:26px;height:26px;
  border-radius:50%;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
  transition:transform .3s ease,background .3s ease;
}
.theme-orbit .more-feature-chevron:before{
  content:'';
  position:absolute;
  left:50%;top:50%;
  width:8px;height:8px;
  margin:-5px 0 0 -5px;
  border-right:2px solid var(--accent2);
  border-bottom:2px solid var(--accent2);
  transform:rotate(45deg);
}
.theme-orbit .more-feature-card.is-expanded .more-feature-chevron{
  transform:rotate(180deg);
  background:rgba(255,255,255,.1);
}
/* Selve udfoldningen: grid-template-rows fra 0fr til 1fr giver en blød
   højde-animation uden at JavaScript skal måle indholdets højde på forhånd. */
.theme-orbit .more-feature-detail-wrap{
  display:grid;
  grid-template-rows:0fr;
  transition:grid-template-rows .35s cubic-bezier(.2,.7,.2,1);
}
.theme-orbit .more-feature-detail-wrap>div{overflow:hidden}
.theme-orbit .more-feature-card.is-expanded .more-feature-detail-wrap{
  grid-template-rows:1fr;
}
.theme-orbit .more-feature-detail{
  margin:14px 0 0;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.1);
  color:#cfc8e4;
  font-size:.95rem;
  line-height:1.55;
}
@media(max-width:620px){
  .theme-orbit .more-feature-chevron{top:14px;right:14px;width:22px;height:22px}
  .theme-orbit .more-feature-detail{font-size:12.5px;line-height:1.48;margin-top:10px;padding-top:10px}
}
@media(prefers-reduced-motion:reduce){
  .theme-orbit .more-feature-detail-wrap{transition:none}
  .theme-orbit .more-feature-chevron{transition:none}
}

/* --- 17. Final responsive quality pass ----------------------------------- */
/* One final cascade for spacing, touch ergonomics and stable phone layouts.
   It keeps the existing visual language and only normalises presentation. */
.theme-orbit{
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
  text-rendering:optimizeLegibility;
  font-synthesis:none;
}
.theme-orbit .site-shell{
  padding-left:env(safe-area-inset-left,0px);
  padding-right:env(safe-area-inset-right,0px);
}
.theme-orbit :where(a,button,[role="button"]){
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}
.theme-orbit :where(.button,.store-mini,.nav-burger){min-height:44px}
.theme-orbit :where(.button,.store-mini,.nav-burger,.more-feature-card):focus-visible{
  outline:2px solid rgba(255,155,82,.95);
  outline-offset:3px;
}
.theme-orbit .nav{height:80px}
.theme-orbit .brand{display:inline-flex;align-items:center;min-height:44px}
.theme-orbit .nav-links a{display:inline-flex;align-items:center;min-height:44px}
.theme-orbit .hero{
  min-height:clamp(720px,calc(100svh - 80px),900px);
  padding:clamp(54px,6vw,78px) 0 clamp(76px,8vw,104px);
  gap:clamp(34px,5vw,62px);
}
.theme-orbit .section{padding:clamp(88px,9vw,120px) 0}
.theme-orbit .section-head{gap:clamp(36px,6vw,70px);margin-bottom:clamp(46px,6vw,70px)}
.theme-orbit .card,
.theme-orbit .more-feature-card,
.theme-orbit .kids-panel,
.theme-orbit .price-card{
  box-shadow:0 22px 70px rgba(2,2,15,.18);
}
.theme-orbit #features{padding-bottom:clamp(32px,4vw,52px)!important}
.theme-orbit .more-features-section{margin:clamp(48px,6vw,76px) auto clamp(72px,9vw,108px)}
.theme-orbit .more-features-grid{align-items:stretch}
.theme-orbit .more-feature-card{height:100%}
.theme-orbit .footer-links :where(a,button){
  display:inline-flex;
  align-items:center;
  min-height:44px;
  padding:8px 2px;
}

@media(max-width:900px){
  .theme-orbit .container{width:min(calc(100% - 36px),var(--max))}
  .theme-orbit .nav{height:76px}
  .theme-orbit .hero{
    min-height:0;
    grid-template-columns:1fr;
    gap:24px;
    padding:clamp(28px,6vw,48px) 0 clamp(60px,8vw,78px);
  }
  .theme-orbit .hero-copy{max-width:760px}
  .theme-orbit .hero h1{
    max-width:12ch;
    font-size:clamp(52px,10vw,76px);
    line-height:.96;
    letter-spacing:-.055em;
    margin-bottom:22px;
  }
  .theme-orbit .hero-copy>p{max-width:34em;font-size:clamp(17px,2.8vw,20px);margin-bottom:28px}
  .theme-orbit .device-stage{
    width:100%;
    height:clamp(520px,76vw,620px);
    max-width:620px;
    margin:0 auto;
  }
  .theme-orbit .section{padding:clamp(66px,9vw,86px) 0}
  .theme-orbit .section-head{grid-template-columns:1fr;gap:18px;margin-bottom:36px}
  .theme-orbit .section-head h2{font-size:clamp(40px,7vw,58px);line-height:1}
  .theme-orbit .section-head p{max-width:38em;font-size:18px;line-height:1.58}
  .theme-orbit #features{padding-top:clamp(58px,8vw,76px)!important;padding-bottom:36px!important}
  .theme-orbit #features .bento{
    height:auto!important;
    min-height:0!important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-auto-rows:auto!important;
    align-items:stretch;
    padding-bottom:0!important;
  }
  .theme-orbit #features .card{min-height:230px;padding:26px}
  .theme-orbit #features .card.large{grid-row:auto}
  .theme-orbit #features .card.wide{grid-column:span 2}
  .theme-orbit .more-features-section{margin:36px auto clamp(72px,10vw,96px)}
  .theme-orbit .more-features-heading{margin-bottom:34px}
  .theme-orbit .more-features-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .theme-orbit .kids-panel{gap:34px;padding:clamp(34px,6vw,48px) clamp(24px,5vw,40px);border-radius:36px}
  .theme-orbit .kids-copy h2{font-size:clamp(44px,8vw,62px);line-height:.98}
  .theme-orbit .kids-art{min-height:520px}
  .theme-orbit .pricing{gap:38px}
  .theme-orbit .price-card{padding:clamp(32px,6vw,46px)}
  .theme-orbit .closing{padding:70px 0 58px}
  .theme-orbit .footer{padding:30px 0 max(30px,env(safe-area-inset-bottom,0px))}
}

@media(max-width:600px){
  .theme-orbit .container{width:min(calc(100% - 28px),var(--max))}
  .theme-orbit .nav{height:68px}
  .theme-orbit .brand{font-size:23px}
  .theme-orbit .nav-burger{width:44px;height:44px;border-radius:13px}
  .theme-orbit .nav-links{
    top:calc(100% + 7px);
    max-height:calc(100svh - 88px - env(safe-area-inset-bottom,0px));
    overflow:auto;
    border-radius:18px;
  }
  .theme-orbit .hero{gap:12px;padding:26px 0 54px}
  .theme-orbit .hero h1{
    max-width:11ch;
    font-size:clamp(43px,13vw,58px);
    line-height:.97;
    letter-spacing:-.05em;
    margin-bottom:20px;
  }
  .theme-orbit .hero-copy>p{font-size:17px;line-height:1.52;margin-bottom:24px}
  .theme-orbit .cta-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .theme-orbit .button{width:100%;min-height:50px;padding:0 16px;font-size:14px}
  .theme-orbit .micro{grid-template-columns:1fr 1fr;gap:8px 14px;margin-top:20px;font-size:12px}
  .theme-orbit .micro span:last-child{grid-column:1/-1}
  .theme-orbit .device-stage{height:clamp(430px,123vw,520px);padding-bottom:58px}
  .theme-orbit .device-stage .device.main,
  .theme-orbit .device-stage .device.side{width:min(46vw,218px);bottom:72px}
  .theme-orbit .device-stage .device.main{left:-1%}
  .theme-orbit .device-stage .device.side{right:-1%}
  .theme-orbit .device-stage .device::after{
    min-height:36px;
    padding:7px 9px;
    font-size:clamp(.58rem,2.55vw,.74rem);
  }
  .theme-orbit .trust-strip{padding:20px 0}
  .theme-orbit .trust-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;font-size:13px}
  .theme-orbit .trust-row strong{grid-column:1/-1;font-size:17px;margin-bottom:4px}
  .theme-orbit .section{padding:60px 0}
  .theme-orbit .section-head{gap:14px;margin-bottom:28px}
  .theme-orbit .section-head h2{font-size:clamp(36px,10vw,48px);line-height:1.02;letter-spacing:-.04em}
  .theme-orbit .section-head p{font-size:16px;line-height:1.55}
  .theme-orbit #features{padding-top:56px!important;padding-bottom:24px!important;margin-bottom:0!important}
  .theme-orbit #features .bento{
    grid-template-columns:1fr!important;
    grid-template-rows:none!important;
    grid-auto-rows:auto!important;
    gap:12px;
    margin-bottom:0!important;
  }
  .theme-orbit #features .card,
  .theme-orbit #features .card.large,
  .theme-orbit #features .card.wide{
    grid-column:auto!important;
    grid-row:auto!important;
    min-height:220px;
    height:auto!important;
    padding:24px;
    border-radius:26px;
  }
  .theme-orbit #features .card h3{font-size:24px}
  .theme-orbit .goal-bars{height:86px;bottom:26px}
  .theme-orbit .more-features-section{
    width:calc(100% - 24px);
    margin:24px auto 64px!important;
    padding:0!important;
  }
  .theme-orbit .more-features-heading{margin-bottom:26px}
  .theme-orbit .more-features-heading h2{font-size:clamp(34px,9.5vw,46px);line-height:1.02}
  .theme-orbit .more-features-heading>p:last-child{font-size:15px;line-height:1.55}
  .theme-orbit .more-features-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px}
  .theme-orbit .more-feature-card{min-height:190px;padding:18px 14px 20px!important;border-radius:22px}
  .theme-orbit .more-feature-number{font-size:12px}
  .theme-orbit .more-feature-card h3{padding-right:22px;font-size:clamp(1rem,4.7vw,1.25rem)!important;line-height:1.15}
  .theme-orbit .more-feature-card>p{font-size:12.5px;line-height:1.42}
  .theme-orbit .more-feature-detail{font-size:12px;line-height:1.45}
  .theme-orbit #kids{padding:58px 0}
  .theme-orbit .kids-panel{gap:24px;padding:28px 20px 22px;border-radius:28px}
  .theme-orbit .kids-copy h2{font-size:clamp(38px,10vw,48px);line-height:1;margin:12px 0 20px}
  .theme-orbit .kids-copy p{font-size:16px;line-height:1.55}
  .theme-orbit .feature-list{gap:10px;margin-top:24px}
  .theme-orbit .feature-list div{padding:14px 15px;border-radius:15px;font-size:14px;line-height:1.4}
  .theme-orbit .kids-art{min-height:430px}
  .theme-orbit .kids-art .device{width:min(68vw,270px);right:-4%;height:auto}
  .theme-orbit .ellow-orb{width:155px;height:155px;left:-10px;bottom:44px}
  .theme-orbit #price{padding:58px 0}
  .theme-orbit .pricing{gap:28px}
  .theme-orbit .price-card{padding:28px 22px;border-radius:28px}
  .theme-orbit .price{font-size:clamp(60px,18vw,76px)}
  .theme-orbit .price small{font-size:16px}
  .theme-orbit .price-card ul{gap:13px;font-size:15px;line-height:1.45}
  .theme-orbit .closing{padding:54px 0 46px}
  .theme-orbit .closing .single-line-slogan{font-size:clamp(38px,10vw,50px)!important;line-height:1!important}
  .theme-orbit .footer-row{gap:16px}
  .theme-orbit .footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 14px;width:100%}
  .theme-orbit .footer-links :where(a,button){min-height:44px;padding:9px 0}
  .theme-orbit .footer-links a[href^="mailto"]{grid-column:1/-1;margin-top:2px}
  .theme-orbit .cookie-layer{padding:10px max(10px,env(safe-area-inset-right,0px)) max(10px,env(safe-area-inset-bottom,0px)) max(10px,env(safe-area-inset-left,0px))}
}

/* --- 23. Integrated legal pages ----------------------------------------- */
.flusii-legal-page{
  min-height:100vh;
  color:#f9f7ff;
  background:
    radial-gradient(circle at 12% 8%,rgba(101,55,255,.25),transparent 30rem),
    radial-gradient(circle at 88% 28%,rgba(255,114,78,.16),transparent 34rem),
    #080617;
}
.flusii-legal-page:before,.flusii-legal-page:after{opacity:.13}
.legal-shell{min-height:100vh;overflow:hidden}
.legal-header{position:sticky;top:0;z-index:30;border-bottom:1px solid rgba(255,255,255,.08);background:rgba(8,6,23,.72);backdrop-filter:blur(24px) saturate(145%);-webkit-backdrop-filter:blur(24px) saturate(145%)}
.legal-nav{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.legal-brand{display:inline-flex;align-items:center;min-height:52px}
.legal-brand .flusii-final-wordmark{--flusii-logo-size:2.15rem;letter-spacing:-.045em;color:#f9f7ff}
.legal-nav-links{display:flex;align-items:center;justify-content:flex-end;gap:9px}
.legal-nav-links>a,.legal-nav-links>button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;padding:0 14px;border-radius:999px;color:#b9b3d0;font-weight:750;font-size:14px;transition:color .2s ease,background .2s ease,border-color .2s ease}
.legal-nav-links>a:hover{color:#fff;background:rgba(255,255,255,.07)}
.legal-nav-links>a[aria-current="page"]{color:#fff;background:rgba(128,87,244,.16);box-shadow:inset 0 0 0 1px rgba(151,118,255,.25)}
.legal-nav-links .language-toggle{margin-left:5px}
.legal-main{position:relative;width:min(calc(100% - 40px),980px);padding:clamp(64px,8vw,112px) 0 90px}
.legal-orbit{position:absolute;z-index:-1;border:1px solid rgba(147,112,255,.22);border-radius:50%;pointer-events:none}
.legal-orbit--one{width:680px;height:680px;right:-510px;top:80px;box-shadow:0 0 120px rgba(143,77,255,.08) inset}
.legal-orbit--two{width:420px;height:420px;left:-330px;top:760px;border-color:rgba(255,148,79,.17)}
.legal-document[hidden],.legal-copy[hidden]{display:none!important}
.legal-document{width:100%}
.legal-copy{opacity:0;transform:translateY(16px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}
.legal-ready .legal-copy:not([hidden]){opacity:1;transform:none}
.legal-hero{padding:clamp(18px,3vw,36px) 0 clamp(34px,5vw,58px);border-bottom:1px solid rgba(255,255,255,.1)}
.legal-kicker{margin:0 0 18px;color:#60e1b5;font-size:12px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.legal-kicker:before{content:'';display:inline-block;width:30px;height:2px;margin:0 11px 3px 0;background:linear-gradient(90deg,#8c60ff,#ff9a4c)}
.legal-hero h1{max-width:900px;margin:0;font-size:clamp(54px,8vw,96px);font-weight:850;line-height:.92;letter-spacing:-.06em;text-wrap:balance}
.legal-updated{margin:24px 0 0;color:#948cab;font-size:14px}
.legal-summary,.legal-callout{position:relative;margin:clamp(34px,5vw,60px) 0;padding:clamp(24px,4vw,38px);overflow:hidden;border:1px solid rgba(126,94,244,.45);border-radius:30px;background:linear-gradient(145deg,rgba(32,25,68,.9),rgba(14,12,35,.88));box-shadow:0 26px 80px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.06)}
.legal-summary:after{content:'';position:absolute;width:180px;height:180px;right:-80px;bottom:-105px;border:22px solid rgba(100,222,184,.12);border-radius:50%}
.legal-summary>span,.legal-callout>span{display:inline-flex;margin-bottom:11px;padding:7px 12px;border-radius:999px;background:rgba(96,225,181,.1);color:#60e1b5;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.legal-summary p,.legal-callout p{max-width:790px;margin:0;color:#d1cbe1;font-size:clamp(17px,2vw,20px);line-height:1.65}
.legal-callout--warning{margin:22px 0;border-color:rgba(255,155,77,.42)}
.legal-callout--warning>span{background:rgba(255,155,77,.11);color:#ff9b4d}
.legal-copy>section{padding:clamp(28px,4vw,45px) 0;border-bottom:1px solid rgba(255,255,255,.085)}
.legal-copy>section:last-child{border-bottom:0}
.legal-copy h2{margin:0 0 16px;color:#fbf9ff;font-size:clamp(25px,3.2vw,35px);line-height:1.12;letter-spacing:-.035em}
.legal-copy p,.legal-copy li{color:#bcb5d0;font-size:clamp(16px,1.7vw,18px);line-height:1.78}
.legal-copy p{margin:0 0 15px}.legal-copy p:last-child{margin-bottom:0}
.legal-copy ul,.legal-copy ol{display:grid;gap:10px;margin:12px 0 0;padding-left:24px}
.legal-copy li::marker{color:#8057f4;font-weight:900}
.legal-copy strong{color:#f8f6ff}
.legal-copy a{color:#a98bff;text-decoration:underline;text-decoration-color:rgba(169,139,255,.45);text-underline-offset:4px}
.legal-copy a:hover{color:#c8b7ff;text-decoration-color:currentColor}
.legal-footer{min-height:110px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid rgba(255,255,255,.09);color:#8f87a5;font-size:14px}
@media(max-width:760px){
  .legal-nav{min-height:76px;gap:14px}
  .legal-brand .flusii-final-wordmark{--flusii-logo-size:1.85rem}
  .legal-nav-links>a{display:none}
  .legal-nav-links .language-toggle{margin:0;min-width:76px}
  .legal-main{width:min(calc(100% - 28px),980px);padding-top:54px;padding-bottom:64px}
  .legal-hero{padding-top:8px}
  .legal-hero h1{
    max-width:100%;
    font-size:clamp(40px,12vw,54px);
    letter-spacing:-.065em;
    overflow-wrap:anywhere;
    word-break:normal;
    hyphens:auto;
  }
  .legal-summary,.legal-callout{border-radius:24px;padding:24px 21px}
  .legal-copy>section{padding:31px 4px}
  .legal-copy p,.legal-copy li{font-size:16px;line-height:1.72}
  .legal-footer{min-height:130px;align-items:flex-start;justify-content:center;flex-direction:column;padding-block:32px}
}
@media(prefers-reduced-motion:reduce){.legal-copy{opacity:1!important;transform:none!important}.flusii-legal-page .flusii-final-wordmark__dot{animation:none!important}}

@media(max-width:370px){
  .theme-orbit .hero h1{font-size:41px}
  .theme-orbit .device-stage{height:420px}
  .theme-orbit .more-feature-card{padding-inline:12px!important}
  .theme-orbit .more-feature-card h3{font-size:.96rem!important}
  .theme-orbit .more-feature-card>p{font-size:11.5px}
}

/* --- 16. Herotitlen skubbede sin egen spalte for bred ---------------------- */
/* Grid-kolonner har som standard `min-width:auto`, hvilket for en tekst-
   blok betyder bredden af det LÆNGSTE ubrudte ord ved den aktuelle skrift-
   størrelse. Den gamle titel ("Gør drømme til retning.") ramte aldrig dette,
   men det nye slogan indeholder "privatøkonomi" - ét langt ord, der ved
   56-108px skrift kræver ca. 450px alene. Grid-sporet voksede sig derfor
   bredere end selve skærmen (målt: 450px kolonne på en 375px telefon), og
   overskriften løb ud over kanten og blev usynligt klippet af den vandrette
   overløbs-spærre. `min-width:0` er standardrettelsen: den tillader spalten
   at krympe under sit eget indholds naturlige minimumsbredde, så teksten
   ombryder normalt i stedet for at presse layoutet ud af facon. */
.theme-orbit .hero-copy{min-width:0}

/* --- 17. "privatøkonomi" var for bredt til at fitte urørt --------------- */
/* min-width:0 (§16) rettede selve GITTER-SPALTEN. Men ordet "privatøkonomi"
   alene er stadig bredere end en telefons brede ved skriftstørrelsens
   nuværende bund (54px) - og uden `overflow-wrap` bryder browseren aldrig
   MIDT i et ord, den lader det bare løbe ud over kanten i stedet.
   To ting løser det sammen: en lavere skriftstørrelse-bund under 480px, så
   ordet oftest er helt uden brud, OG `overflow-wrap` som et ubetinget
   sikkerhedsnet - hvis en fremtidig tekst indeholder et endnu længere ord,
   knækker den i stedet for at forsvinde ud over kanten. */
.theme-orbit .hero h1{overflow-wrap:break-word}
@media(max-width:480px){
  .theme-orbit .hero h1{font-size:clamp(38px,11vw,54px)!important}
}

/* --- 18. Mobile interaction and composition fixes ----------------------- */
.theme-orbit :is(#features,#kids,#price){scroll-margin-top:clamp(76px,10vw,96px)}

@media(max-width:900px){
  .theme-orbit .kids-art{
    min-height:640px!important;
    overflow:visible;
  }
  .theme-orbit .kids-art .device{
    top:8px!important;
    right:clamp(-16px,-2vw,0px)!important;
    bottom:auto!important;
    left:auto!important;
    width:min(48vw,300px)!important;
    height:auto!important;
  }
  .theme-orbit .kids-art .device img{
    width:100%;
    height:auto!important;
  }
}

@media(max-width:600px){
  .theme-orbit .kids-panel{padding-bottom:24px!important}
  .theme-orbit .kids-art{min-height:610px!important}
  .theme-orbit .kids-art .device{
    top:8px!important;
    right:-10px!important;
    width:min(72vw,280px)!important;
  }
  .theme-orbit .ellow-orb{
    width:150px!important;
    height:150px!important;
    left:-8px!important;
    bottom:78px!important;
    z-index:3!important;
  }

  .theme-orbit .flusii-availability-feature{
    min-height:0!important;
    padding-bottom:22px!important;
  }
  .theme-orbit .flusii-availability-feature>h3,
  .theme-orbit .flusii-availability-feature>p{
    position:relative;
    z-index:2;
  }
  .theme-orbit .flusii-availability-visual{
    position:relative!important;
    inset:auto!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    transform:none!important;
    width:min(78%,250px)!important;
    margin:18px auto -12px!important;
  }
  .theme-orbit .flusii-availability-amount strong{
    font-size:clamp(3.4rem,16vw,4.5rem)!important;
  }
  .theme-orbit .flusii-availability-caption{
    font-size:clamp(.5rem,2.35vw,.64rem)!important;
    letter-spacing:.22em!important;
  }
}

/* --- 19. Faster paint and Apple-like motion ------------------------------ */
.theme-orbit.motion-js .hero-copy>*,
.theme-orbit.motion-js .device-stage .device,
.theme-orbit.motion-js .motion-reveal{
  filter:none!important;
}

.theme-orbit :is(#kids,#price,.more-features-section,.closing,.footer){
  content-visibility:auto;
}
.theme-orbit #kids{contain-intrinsic-size:auto 980px}
.theme-orbit #price{contain-intrinsic-size:auto 760px}
.theme-orbit .more-features-section{contain-intrinsic-size:auto 1900px}
.theme-orbit :is(.closing,.footer){contain-intrinsic-size:auto 420px}

.flusii-scroll-progress{
  position:fixed;
  z-index:100;
  top:0;
  left:0;
  width:100%;
  height:3px;
  pointer-events:none;
  transform:scaleX(0);
  transform-origin:left center;
  background:linear-gradient(90deg,#8f63ff,#62d2b1,#ff9b52);
  box-shadow:0 0 18px rgba(143,99,255,.5);
  will-change:transform;
}

.theme-orbit .goal-bars i{
  transform:scaleY(.08);
  transform-origin:center bottom;
  transition:transform .95s cubic-bezier(.16,1,.3,1);
}
.theme-orbit .goal-bars.is-motion-active i{transform:scaleY(1)}
.theme-orbit .goal-bars i:nth-child(2){transition-delay:80ms}
.theme-orbit .goal-bars i:nth-child(3){transition-delay:160ms}
.theme-orbit .goal-bars i:nth-child(4){transition-delay:240ms}

.theme-orbit .flusii-availability-ring__value{
  stroke-dashoffset:54;
  transition:stroke-dashoffset 1.45s cubic-bezier(.16,1,.3,1);
}
.theme-orbit .flusii-availability-visual.is-motion-active .flusii-availability-ring__value{
  stroke-dashoffset:0;
}

.theme-orbit .kids-art.is-motion-active .device{
  animation:flusiiKidsPhoneFloat 6.4s ease-in-out infinite;
}
@keyframes flusiiKidsPhoneFloat{
  0%,100%{transform:translate3d(0,0,0) rotate(1.35deg)}
  50%{transform:translate3d(0,-10px,0) rotate(.35deg)}
}

.theme-orbit .price-card::after{
  content:"";
  position:absolute;
  inset:-45% -75%;
  pointer-events:none;
  background:linear-gradient(112deg,transparent 38%,rgba(255,255,255,.11) 49%,transparent 60%);
  transform:translateX(-40%) rotate(7deg);
  opacity:0;
}
.theme-orbit .price-card.is-motion-active::after{
  animation:flusiiPriceSheen 1.35s cubic-bezier(.16,1,.3,1) .15s both;
}
@keyframes flusiiPriceSheen{
  0%{opacity:0;transform:translateX(-42%) rotate(7deg)}
  18%{opacity:1}
  100%{opacity:0;transform:translateX(42%) rotate(7deg)}
}

/* The updated Angelo screen is framed by CSS, avoiding a second heavy PNG. */
.theme-orbit .kids-art{min-height:700px!important}
.theme-orbit .kids-art .device{
  top:0!important;
  right:10%!important;
  bottom:auto!important;
  left:auto!important;
  height:auto!important;
  padding:5px!important;
  border:1px solid rgba(230,234,255,.74)!important;
  border-radius:49px!important;
  background:linear-gradient(145deg,#d9dce6 0%,#5e6374 19%,#eef0f5 48%,#555b6d 77%,#d8dbe5 100%)!important;
  box-shadow:0 34px 90px rgba(0,0,0,.48),0 0 0 1px rgba(255,255,255,.12) inset!important;
  overflow:hidden!important;
}
.theme-orbit .kids-art .device::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  z-index:4!important;
  top:13px!important;
  left:50%!important;
  width:92px!important;
  height:25px!important;
  transform:translateX(-50%)!important;
  border-radius:18px!important;
  background:#03040a!important;
}
.theme-orbit .kids-art .device::after{content:none!important;display:none!important}
.theme-orbit .kids-art .device img{
  content:url("../orbit-kids-tasks-angelo-v2.webp")!important;
  width:100%!important;
  height:auto!important;
  border-radius:43px!important;
  object-fit:cover!important;
  object-position:top center!important;
  filter:none!important;
}

@media(max-width:900px){
  .theme-orbit .kids-art{min-height:680px!important}
  .theme-orbit .kids-art .device{top:8px!important;right:clamp(-16px,-2vw,0px)!important}
}
@media(max-width:600px){
  .theme-orbit .kids-art{min-height:640px!important}
  .theme-orbit .kids-art .device{right:-10px!important;border-radius:40px!important;padding:4px!important}
  .theme-orbit .kids-art .device img{border-radius:35px!important}
  .theme-orbit .kids-art .device::before{width:74px!important;height:20px!important;top:10px!important}
  .flusii-scroll-progress{height:2px}
}

@media(prefers-reduced-motion:reduce){
  .flusii-scroll-progress{display:none}
  .theme-orbit .goal-bars i{transform:scaleY(1)!important}
  .theme-orbit .flusii-availability-ring__value{stroke-dashoffset:0!important}
  .theme-orbit .kids-art .device,.theme-orbit .price-card::after{animation:none!important}
}

/* The hero Kids screen now uses the light WebP screen, so recreate its bezel
   without clipping the caption that lives outside the device wrapper. */
.theme-orbit .device-stage .device.side img{
  border:3px solid rgba(230,234,255,.78)!important;
  border-radius:44px!important;
  background:#090916!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.12) inset!important;
}
.theme-orbit .device-stage .device.side::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  z-index:4!important;
  top:13px!important;
  left:50%!important;
  width:82px!important;
  height:22px!important;
  transform:translateX(-50%)!important;
  border-radius:18px!important;
  background:#03040a!important;
}
@media(max-width:600px){
  .theme-orbit .device-stage .device.side img{border-width:2px!important;border-radius:34px!important}
  .theme-orbit .device-stage .device.side::before{top:9px!important;width:62px!important;height:17px!important}
}

/* --- 20. Danish / English language control ------------------------------- */
.theme-orbit .language-toggle{
  min-width:72px;
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:0 13px;
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(255,255,255,.045);
  color:var(--muted);
  font:inherit;
  font-size:13px;
  font-weight:800;
  letter-spacing:.04em;
  cursor:pointer;
  transition:transform .3s cubic-bezier(.16,1,.3,1),border-color .3s ease,background .3s ease,color .3s ease;
}
.theme-orbit .language-toggle [data-language-current]{color:var(--ink)}
.theme-orbit .language-toggle__divider{opacity:.42}
.theme-orbit .language-toggle:hover{
  color:var(--ink);
  border-color:rgba(168,105,255,.52);
  background:rgba(168,105,255,.12);
  transform:translateY(-2px);
}
.theme-orbit .language-toggle:focus-visible{
  outline:2px solid var(--accent2);
  outline-offset:3px;
}
@media(max-width:900px){
  .theme-orbit .nav-links .language-toggle{
    width:100%;
    min-height:48px;
    margin-top:4px;
    border-radius:14px;
  }
}
@media(hover:none){.theme-orbit .language-toggle:hover{transform:none}}

/* --- 21. English closing slogan fit -------------------------------------- */
@media(min-width:700px){
  html[lang="en"] .theme-orbit .closing h2{
    max-width:none!important;
    white-space:nowrap!important;
    font-size:clamp(40px,3.2vw,63px)!important;
    letter-spacing:-.052em!important;
  }
}
@media(max-width:699px){
  html[lang="en"] .theme-orbit .closing h2{
    max-width:100%!important;
    white-space:normal!important;
    font-size:clamp(40px,10vw,52px)!important;
    line-height:1!important;
    text-wrap:balance;
  }
}

/* --- 22. Mobile Kids composition: centered phone, Ellow foreground ------- */
@media(max-width:600px){
  .theme-orbit .kids-art .device{
    left:50%!important;
    right:auto!important;
    translate:-50% 0;
    z-index:3!important;
  }
  .theme-orbit .kids-art .ellow-orb{
    width:150px!important;
    height:150px!important;
    left:calc(50% - 195px)!important;
    bottom:96px!important;
    z-index:4!important;
    filter:drop-shadow(0 18px 28px rgba(5,3,22,.42));
  }
}
