/* Frameland homepage and Services page (v2: dark hero, light inside). Shared header comes from shell.css. */
:root{--ink:var(--fl-ink);--night:var(--fl-night);--night-2:var(--fl-night-2);--night-3:var(--fl-night-3);--muted:var(--fl-muted);--line:var(--fl-line);--soft:var(--fl-soft);--paper:var(--fl-paper);--lilac:var(--fl-accent-lilac);--accent:var(--fl-accent);--accent-soft:var(--fl-accent-soft);--on-dark:#BDB8CF;--on-dark-2:#A29DB8;--green:var(--fl-ok-bright);color-scheme:light}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body.fl-landing{margin:0;background:var(--night);color:var(--ink);font-family:Manrope,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.5}
:where(.fl-landing) img,:where(.fl-landing) video{display:block;max-width:100%}
.fl-landing [hidden]{display:none!important}
:where(.fl-landing) a{color:inherit;text-decoration:none}
:where(.fl-landing) :is(button,input,textarea){font:inherit;color:inherit}
:where(.fl-landing) :is(h1,h2,h3,p){margin:0}
.fl-landing :focus-visible{outline:3px solid #A78BFA;outline-offset:3px}
.fl-landing svg{flex:none}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.wrap{max-width:1320px;margin:0 auto;padding:0 clamp(20px,4vw,48px)}
.sec{padding:clamp(72px,9vw,128px) 0}
.sec.light{background:var(--soft)}.sec.white{background:var(--paper)}.sec.dark{background:var(--night);color:#fff;position:relative;overflow:hidden}
.eyebrow{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}
.dark .eyebrow{color:var(--lilac)}
.badge-soon{padding:3px 8px;border-radius:6px;background:var(--accent-soft);color:#4A2BB8;letter-spacing:.08em}
.dark .badge-soon{background:rgba(255,255,255,.1);color:#E9E6F5}
.h2{margin-top:14px!important;font-size:clamp(34px,4.4vw,60px);line-height:1.02;letter-spacing:-.045em;font-weight:700}
.lead{margin-top:18px!important;font-size:18px;line-height:1.6;color:var(--muted);max-width:580px}
.dark .lead{color:var(--on-dark)}
.sec-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px}
.sec-head>div{max-width:740px}
.sec-head>p{max-width:420px;font-size:17px;line-height:1.6;color:var(--muted)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:var(--fl-btn-lg);padding:0 26px;border-radius:999px;border:1px solid transparent;font-size:16px;font-weight:700;cursor:pointer;white-space:nowrap;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}
.btn:hover{transform:translateY(-2px)}
.btn svg{width:18px;height:18px}
.btn.white{background:#fff;color:var(--ink);box-shadow:0 12px 44px rgba(107,1,248,.38)}
.btn.ghost{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.2);color:#fff;font-weight:600}
.btn.ink{background:var(--ink);color:#fff}
.btn.accent{background:var(--accent);color:#fff}
.btn.outline{background:#fff;border-color:#DCD9E6;color:var(--ink)}
.btn.wa{background:#F0FAF4;border-color:#BFE6CF;color:#17603C}
.btn.sm{height:var(--fl-btn-md);padding:0 20px;font-size:15px}
.btn .play{width:40px;height:40px;margin-left:-18px;border-radius:50%;background:rgba(255,255,255,.16);display:grid;place-items:center}
.btn .play svg{width:14px;height:14px}
.btn-row{display:flex;flex-wrap:wrap;gap:12px}
.chip-link{display:inline-flex;align-items:center;gap:10px;min-height:36px;padding:5px 14px 5px 6px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);font-size:13px;font-weight:600;color:#E9E6F5}
.chip-link b{flex:none;display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;border-radius:999px;background:var(--accent);color:#fff;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.chip-link b.live{background:var(--green);color:var(--night)}
.chip-link svg{width:14px;height:14px}
.pulse{width:6px;height:6px;border-radius:50%;background:#fff;animation:flPulse 1.6s ease-in-out infinite}
.tag{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 11px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}
.tag.live{background:#E3F5EC;color:#1C6B45}.tag.live:before{content:'';width:7px;height:7px;border-radius:50%;background:var(--green)}
.tag.soon{background:#ECEBF1;color:#4A4760}
.tag.now{background:rgba(255,255,255,.12);color:#fff}
@keyframes flFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes flMarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes flPulse{0%,100%{opacity:1}50%{opacity:.3}}
@keyframes flProgress{from{width:0}to{width:100%}}
@keyframes flReveal{0%{transform:translateY(110%)}14%,78%{transform:translateY(0)}92%,100%{transform:translateY(-110%)}}
@keyframes flPlayhead{from{left:0}to{left:100%}}
@keyframes flSpin{from{transform:rotate(0)}to{transform:rotate(360deg)}}
@keyframes flCube{from{transform:rotateX(-24deg) rotateY(0)}to{transform:rotateX(-24deg) rotateY(360deg)}}

/* Hero with model trailers */
.hero{position:relative;margin-top:-80px;padding:calc(80px + clamp(36px,5vw,72px)) 0 clamp(56px,7vw,96px);background:var(--night);color:#fff;overflow:hidden}
.hero:before{content:'';position:absolute;inset:0;background:radial-gradient(60% 50% at 50% 0%,rgba(107,1,248,.28),rgba(13,11,20,0) 70%);pointer-events:none}
.hero .wrap{position:relative}
.hero-copy{display:flex;flex-direction:column;align-items:center;text-align:center}
.hero h1{margin-top:26px;max-width:1120px;font-size:clamp(40px,6.4vw,96px);line-height:.98;letter-spacing:-.052em;font-weight:700}
.hero h1 span,.ads h2 span,.cta h2 span,.svc-hero h1 span{color:var(--lilac)}
.hero-copy>p{margin-top:24px;max-width:700px;font-size:clamp(16px,1.35vw,19px);line-height:1.6;color:var(--on-dark)}
.hero-copy .btn-row{margin-top:32px;justify-content:center}
.stage{position:relative;margin-top:clamp(40px,5vw,64px);min-height:360px;aspect-ratio:21/9;border-radius:28px;overflow:hidden;background:var(--night-2);border:1px solid rgba(255,255,255,.1);box-shadow:0 40px 120px rgba(0,0,0,.55)}
.stage .slide{position:absolute;inset:0;opacity:0;transition:opacity .9s ease}
.stage .slide.on{opacity:1}
.stage video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .6s ease}
.slide.loading video{opacity:0}
.slide.loading .fallback{display:block}
.slide.loading .fallback:after{content:'';position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,rgba(196,181,253,.12) 50%,transparent 70%);background-size:200% 100%;animation:flShimmer 1.4s linear infinite}
@keyframes flShimmer{from{background-position:200% 0}to{background-position:-200% 0}}
.fb-mark{position:absolute;right:6%;top:50%;transform:translateY(-50%);max-width:52%;font-size:clamp(48px,8vw,140px);font-weight:800;letter-spacing:-.06em;line-height:.9;color:rgba(196,181,253,.10);text-align:right}
.slide .fallback{position:absolute;inset:0;display:none;background:radial-gradient(60% 80% at 75% 40%,rgba(107,1,248,.45),rgba(13,11,20,0) 70%),repeating-linear-gradient(90deg,rgba(196,181,253,.06) 0 1px,transparent 1px 48px),repeating-linear-gradient(0deg,rgba(196,181,253,.06) 0 1px,transparent 1px 48px),var(--night-2)}
.slide.no-video .fallback{display:block}.slide.no-video video{display:none}
.stage:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,11,20,.88) 0%,rgba(13,11,20,.55) 38%,rgba(13,11,20,0) 70%),linear-gradient(0deg,rgba(13,11,20,.9) 0%,rgba(13,11,20,0) 60%);pointer-events:none}
.stage-info{position:absolute;z-index:2;left:clamp(20px,4vw,56px);right:clamp(20px,4vw,56px);bottom:clamp(22px,4vw,52px);max-width:560px}
.stage-info .kicker{font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--lilac)}
.stage-info h2{margin-top:10px;font-size:clamp(34px,5vw,68px);line-height:1;letter-spacing:-.045em;font-weight:700}
.stage-info p{margin-top:12px;font-size:clamp(15px,1.3vw,18px);line-height:1.55;color:#D6D2E3}
.stage-info .btn-row{margin-top:22px;gap:10px}
.stage-info .btn{height:var(--fl-btn-md);font-size:15px;padding:0 20px}
.stage-info .btn.white{box-shadow:none;padding-left:8px}
.stage-info .btn.white .play{margin:0;width:34px;height:34px;background:var(--ink);color:#fff}
.stage-info .btn small{font-size:10px;font-weight:800;letter-spacing:.06em;padding:3px 7px;border-radius:6px;background:rgba(255,255,255,.16)}
.stage-credit{position:absolute;z-index:2;top:18px;right:18px;display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border-radius:999px;background:rgba(13,11,20,.62);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(8px);font-size:12px;font-weight:700;color:#E9E6F5}
.stage-credit svg{width:12px;height:12px}
.tabs{margin-top:14px;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(180px,1fr);gap:10px;overflow-x:auto;scrollbar-width:none;padding-bottom:4px}
.tabs::-webkit-scrollbar{display:none}
.tabs button{position:relative;display:flex;align-items:center;gap:12px;padding:12px 14px 14px;border-radius:16px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);color:#fff;text-align:left;cursor:pointer;overflow:hidden;transition:background-color .25s ease,border-color .25s ease}
.tabs button[aria-pressed=true]{background:rgba(255,255,255,.1);border-color:rgba(196,181,253,.55)}
.tabs .mono{flex:none;width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:rgba(196,181,253,.14);color:var(--lilac);font-size:14px;font-weight:800}
.tabs b{display:block;font-size:14px;line-height:1.25}
.tabs small{display:block;font-size:12px;color:#A9A3BF}
.tabs i{position:absolute;left:0;right:0;bottom:0;height:2px;background:rgba(255,255,255,.06)}
.tabs i:after{content:'';display:block;height:100%;width:0;background:var(--lilac)}
.tabs button[aria-pressed=true] i:after{width:100%}
.tabs.auto button[aria-pressed=true] i:after{animation:flProgress 7s linear}

/* Four ways */
.ways{margin-top:48px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:16px}
.way{display:flex;flex-direction:column;gap:18px;min-height:290px;padding:26px;border-radius:26px;background:var(--paper);border:1px solid var(--line);transition:transform .3s ease,box-shadow .3s ease}
.way:hover,.tool:hover,.step-card:hover{transform:translateY(-4px);box-shadow:0 20px 50px rgba(21,19,31,.12)}
.way .top{display:flex;align-items:center;justify-content:space-between}
.way .ico{width:50px;height:50px;border-radius:15px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center}
.way .ico svg{width:22px;height:22px}
.way h3{font-size:23px;font-weight:700;letter-spacing:-.03em;line-height:1.15}
.way p{margin-top:10px;font-size:15px;line-height:1.6;color:var(--muted)}
.more{margin-top:auto;display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:var(--accent)}
.more svg{width:15px;height:15px}
.way.dark-card{background:var(--night-2);border-color:var(--night-2);color:#fff}
.way.dark-card p{color:var(--on-dark)}.way.dark-card .ico{background:var(--accent);color:#fff}.way.dark-card .more{color:var(--lilac)}

/* Studio */
.waitlist-inline{flex:1 1 320px;max-width:440px;min-width:0}
.waitlist-inline label{display:block;font-size:13px;font-weight:700;color:#3B3850;margin-bottom:8px}
.pill-form{display:flex;gap:8px;padding:6px;border-radius:999px;background:var(--soft);border:1px solid var(--line)}
.pill-form input{flex:1;min-width:0;height:44px;padding:0 16px;border:0;background:transparent;font-size:15px;outline:none}
.pill-form button{flex:none;height:44px;padding:0 20px;border-radius:999px;border:0;background:var(--ink);color:#fff;font-size:14px;font-weight:700;cursor:pointer}
.form-ok{display:flex;align-items:center;gap:10px;padding:16px 18px;border-radius:18px;background:#E9F7EF;color:#1C6B45;font-size:15px;font-weight:700}
.form-ok svg{width:18px;height:18px}
.form-err{margin-top:8px!important;font-size:13px;font-weight:600;color:#B42318}
.studio{margin-top:48px;padding:14px;border-radius:30px;background:#110F18;border:1px solid #221F2E;box-shadow:0 40px 100px rgba(21,19,31,.18);display:flex;flex-wrap:wrap;gap:14px;color:#fff}
.studio-panel{flex:1 1 320px;max-width:400px;min-width:0;display:flex;flex-direction:column;gap:14px;padding:18px;border-radius:22px;background:#18151F;border:1px solid #262233}
.seg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;border-radius:14px;background:var(--night)}
.seg button{height:40px;border-radius:11px;border:0;background:transparent;color:#A9A3BF;font-size:14px;font-weight:700;cursor:pointer}
.seg button[aria-pressed=true]{background:#2A2540;color:#fff}
.lbl{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#8E89A3}
.models{display:flex;flex-direction:column;gap:8px}
.model{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 12px;border-radius:12px;background:#1E1B28;border:1px solid #2A2638}
.model.sel{background:rgba(107,1,248,.16);border-color:rgba(196,181,253,.6)}
.model b{display:block;font-size:14px}.model small{display:block;font-size:12px;color:#A9A3BF}
.model i{width:18px;height:18px;border-radius:50%;border:2px solid #4A4560;display:grid;place-items:center}
.model.sel i{border-color:var(--lilac)}.model.sel i:after{content:'';width:8px;height:8px;border-radius:50%;background:var(--lilac)}
.prompt-box{min-height:84px;padding:12px 14px;border-radius:12px;background:var(--night);border:1px solid #2A2638;font-size:14px;line-height:1.55;color:#D6D2E3}
.opts{display:flex;flex-wrap:wrap;gap:6px}
.opts span{display:inline-flex;align-items:center;height:30px;padding:0 11px;border-radius:999px;background:#221F2E;font-size:12px;font-weight:700;color:#E9E6F5}
.gen{margin-top:auto;height:50px;border-radius:14px;border:0;background:var(--accent);color:#fff;font-size:15px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px}
.gen svg{width:17px;height:17px}
.studio-out{flex:2 1 460px;min-width:0;display:flex;flex-direction:column;gap:12px;padding:6px}
.out-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 6px 0}
.out-head b{font-size:15px}.out-head small{font-size:12px;color:#8E89A3}
.out-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px}
.out-grid.img{grid-template-columns:repeat(3,minmax(0,1fr))}
.out-tile{position:relative;aspect-ratio:9/16;border-radius:16px;overflow:hidden;background:#221F2E}
.out-tile img,.out-tile video{width:100%;height:100%;object-fit:cover}
.out-tile span{position:absolute;left:8px;bottom:8px;padding:3px 8px;border-radius:999px;background:rgba(13,11,20,.6);font-size:11px;font-weight:700}
.out-tile.busy{background:#1B1826;border:1px dashed #3A3550;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#A9A3BF;font-size:12px;font-weight:700}
.out-tile .spin{position:static;padding:0;background:transparent;border-radius:50%}
.spin{width:36px;height:36px;border-radius:50%;border:3px solid #3A3550;border-top-color:var(--lilac);animation:flSpin 1s linear infinite}
.spin.s{width:14px;height:14px;border-width:2px}
.out-grid.img img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:16px}
.history{margin-top:4px;padding:14px;border-radius:16px;background:#18151F;border:1px solid #262233;display:flex;flex-direction:column;gap:10px}
.history .row{display:flex;justify-content:space-between;font-size:12px;font-weight:700;color:#A9A3BF}
.history .thumbs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.history img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px}
.mesh-view{position:relative;height:420px;border-radius:18px;overflow:hidden;background:#0F1220;display:flex;align-items:center;justify-content:center;perspective:700px}
.floor{position:absolute;left:-10%;right:-10%;bottom:-30%;height:70%;transform:rotateX(72deg);background-image:linear-gradient(rgba(196,181,253,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(196,181,253,.16) 1px,transparent 1px);background-size:44px 44px}
.cube{--s:150px;position:relative;width:var(--s);height:var(--s);transform-style:preserve-3d;animation:flCube 14s linear infinite}
.cube span{position:absolute;inset:0;border:1.5px solid rgba(196,181,253,.85);background-color:rgba(107,1,248,.14);background-image:linear-gradient(rgba(196,181,253,.25) 1px,transparent 1px),linear-gradient(90deg,rgba(196,181,253,.25) 1px,transparent 1px);background-size:25px 25px}
.cube span:nth-child(1){transform:translateZ(calc(var(--s)/2))}.cube span:nth-child(2){transform:rotateY(180deg) translateZ(calc(var(--s)/2))}.cube span:nth-child(3){transform:rotateY(90deg) translateZ(calc(var(--s)/2))}.cube span:nth-child(4){transform:rotateY(-90deg) translateZ(calc(var(--s)/2))}.cube span:nth-child(5){transform:rotateX(90deg) translateZ(calc(var(--s)/2));background-image:none;background-color:rgba(107,1,248,.22)}.cube span:nth-child(6){transform:rotateX(-90deg) translateZ(calc(var(--s)/2));background-image:none;background-color:rgba(107,1,248,.08)}
.mini-tags{position:absolute;left:14px;top:14px;display:flex;flex-wrap:wrap;gap:6px;color:#E9E6F5}
.mini-tags span,.mesh-credit{padding:4px 9px;border-radius:999px;background:rgba(255,255,255,.08);font-size:11px;font-weight:700}
.mesh-credit{position:absolute;right:14px;bottom:14px;color:var(--lilac)}

/* MCP */
.mcp{display:flex;flex-wrap:wrap;align-items:center;gap:clamp(36px,6vw,80px)}
.dark-glow:before{content:'';position:absolute;inset:0;background:radial-gradient(40% 50% at 85% 50%,rgba(107,1,248,.22),rgba(13,11,20,0) 70%);pointer-events:none}
.mcp>div{flex:1 1 420px;min-width:0;position:relative}
.steps{list-style:none;margin:28px 0 0;padding:0;display:flex;flex-direction:column;gap:14px}
.steps li{display:flex;align-items:center;gap:14px;font-size:16px;font-weight:600;color:#E9E6F5}
.steps li span{flex:none;width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);display:grid;place-items:center;font-size:13px;font-weight:800}
.pills{margin-top:26px;display:flex;flex-wrap:wrap;gap:8px}
.pills span{display:inline-flex;align-items:center;height:34px;padding:0 13px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);font-size:13px;font-weight:600;color:#E9E6F5}
.mcp .btn-row{margin-top:32px}
.mcp .btn{height:var(--fl-btn-md);font-size:15px}
.chat{border-radius:24px;background:#17141F;border:1px solid #2A2638;box-shadow:0 40px 100px rgba(0,0,0,.5);overflow:hidden}
.chat-top{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid #2A2638;font-size:13px}
.dots{display:flex;gap:6px}.dots i{width:10px;height:10px;border-radius:50%;background:#3A3550}
.ok-pill{margin-left:auto;display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:rgba(47,191,113,.14);color:#6EE7A8;font-size:11px;font-weight:700}
.ok-pill:before{content:'';width:6px;height:6px;border-radius:50%;background:var(--green)}
.chat-body{padding:20px;display:flex;flex-direction:column;gap:14px}
.bubble{align-self:flex-end;max-width:86%;padding:12px 15px;border-radius:16px 16px 4px 16px;background:#2A2540;font-size:14px;line-height:1.55;color:#F1EEFA}
.reply{max-width:92%;font-size:14px;line-height:1.55;color:#D6D2E3}
.calls{display:flex;flex-direction:column;gap:8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}
.call{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;background:var(--night);border:1px solid #2A2638;color:#D6D2E3}
.call em{margin-left:auto;font-style:normal;color:#8E89A3}
.call.wait{color:#8E89A3}.call.run{flex-direction:column;align-items:stretch;color:#fff}
.call.run .line{display:flex;align-items:center;gap:10px}
.bar{height:4px;border-radius:999px;background:#221F2E;overflow:hidden}.bar i{display:block;width:64%;height:100%;background:var(--lilac)}
.call svg{width:14px;height:14px}
.ring{width:14px;height:14px;border-radius:50%;border:2px solid #3A3550}
.chat-media{display:flex;gap:10px}
.chat-media img{width:50%;aspect-ratio:16/10;object-fit:cover;border-radius:12px}
.chat-media span{flex:1;border-radius:12px;background:var(--night-3);border:1px dashed #3A3550;display:grid;place-items:center;font-size:12px;font-weight:700;color:#8E89A3;text-align:center;padding:8px}

/* Tools */
.tools{margin-top:48px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:16px}
.tool{display:flex;flex-direction:column;padding:0;border-radius:28px;background:var(--paper);border:1px solid var(--line);overflow:hidden;color:var(--ink);text-align:left;cursor:pointer;transition:transform .3s ease,box-shadow .3s ease}
.tool-art{position:relative;width:100%;height:250px;overflow:hidden}
.tool-body{width:100%;padding:26px 28px 28px;display:flex;flex-direction:column;gap:10px;flex:1}
.tool-body .name{display:flex;align-items:center;justify-content:space-between;gap:10px}
.tool-body h3{font-size:26px;font-weight:700;letter-spacing:-.035em}
.tool-body p{font-size:15px;line-height:1.6;color:var(--muted)}
.tool-body .more{padding-top:8px}
.art-ads{background:var(--night-2);display:flex;align-items:center;justify-content:center}
.art-ads img{position:absolute;width:112px;height:200px;object-fit:cover;border-radius:14px;opacity:.85;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.art-ads img:first-child{transform:translateX(-92px) rotate(-8deg)}.art-ads img:nth-child(2){transform:translateX(92px) rotate(8deg)}
.tool:hover .art-ads img:first-child{transform:translateX(-104px) rotate(-11deg)}.tool:hover .art-ads img:nth-child(2){transform:translateX(104px) rotate(11deg)}
.art-ads video{position:relative;width:124px;height:220px;object-fit:cover;border-radius:16px;border:2px solid var(--night-2);box-shadow:0 20px 50px rgba(0,0,0,.5)}
.art-motion{background:#1A1230}
.art-motion .ring-shape{position:absolute;right:-30px;top:-30px;width:150px;height:150px;border-radius:50%;border:18px solid rgba(196,181,253,.3);animation:flSpin 10s linear infinite}
.art-motion .sq{position:absolute;right:54px;top:90px;width:46px;height:46px;border-radius:10px;background:var(--accent);animation:flSpin 6s linear infinite}
.art-motion .words{position:absolute;left:28px;top:42px;font-size:46px;font-weight:800;letter-spacing:-.05em;line-height:1.05;color:#fff}
.art-motion .words span{display:block;overflow:hidden}
.art-motion .words span i{display:block;font-style:normal;animation:flReveal 4.8s cubic-bezier(.7,0,.2,1) infinite}
.art-motion .words span+span i{color:var(--lilac);animation-delay:.18s}
.timeline{position:absolute;left:24px;right:24px;bottom:24px;height:34px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1)}
.timeline b{position:absolute;top:50%;width:9px;height:9px;background:var(--lilac);transform:translate(-50%,-50%) rotate(45deg)}
.timeline b:nth-child(1){left:12%}.timeline b:nth-child(2){left:38%}.timeline b:nth-child(3){left:66%}.timeline b:nth-child(4){left:88%}
.timeline em{position:absolute;top:-6px;bottom:-6px;width:2px;background:#fff;animation:flPlayhead 4.8s linear infinite}
.art-mesh{background:#0F1220;display:flex;align-items:center;justify-content:center;perspective:600px}
.art-mesh .floor{bottom:-34%;background-size:36px 36px}
.art-mesh .cube{--s:96px;animation-duration:12s}
.art-mesh .cube span{background-image:none;background-color:rgba(107,1,248,.16);border-color:rgba(196,181,253,.9)}
.more-tools{margin-top:16px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;border-radius:22px;border:1px dashed #D3CFE0;background:rgba(255,255,255,.6)}
.more-tools span{font-size:16px;font-weight:600;color:#3B3850}
.more-tools .btn{height:var(--fl-btn-sm);font-size:14px;padding:0 18px}

/* AdsHouse */
.ads{position:relative;padding-top:clamp(80px,9vw,128px);background:var(--night);color:#fff;overflow:hidden}
.ads-bg{position:absolute;inset:0;pointer-events:none}
.ads-bg video{position:absolute;left:50%;top:58%;width:110%;height:110%;object-fit:cover;transform:translate(-50%,-50%) scale(1.25);filter:blur(64px) saturate(1.2);opacity:.2}
.ads-bg:after{content:'';position:absolute;inset:0;background:radial-gradient(52% 46% at 50% 68%,rgba(107,1,248,.42),rgba(13,11,20,0) 72%),linear-gradient(180deg,var(--night) 0%,rgba(13,11,20,.1) 30%,rgba(13,11,20,.1) 70%,var(--night) 100%)}
.ads .wrap{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center}
.ads h2{margin-top:28px;max-width:1120px;font-size:clamp(40px,6.4vw,96px);line-height:.98;letter-spacing:-.052em;font-weight:700}
.ads .wrap>p{margin-top:28px;max-width:640px;font-size:clamp(16px,1.35vw,19px);line-height:1.6;color:var(--on-dark)}
.ads .btn-row{margin-top:36px;justify-content:center}
.meta{margin-top:22px!important;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 16px;font-size:14px;color:var(--on-dark-2)}
.meta i{width:4px;height:4px;border-radius:50%;background:#5B566E}
.meta-2{margin-top:8px!important;font-size:14px;color:var(--on-dark-2)}
.meta-2 a{color:#fff;font-weight:600;text-decoration:underline;text-underline-offset:4px;text-decoration-color:rgba(255,255,255,.4)}
.fan{position:relative;max-width:1320px;height:clamp(390px,40vw,580px);margin:clamp(44px,5vw,64px) auto 0}
.card9{--w:clamp(180px,18.5vw,272px);position:absolute;left:50%;top:50%;width:var(--w);aspect-ratio:9/16}
.card9>div{width:100%;height:100%;border-radius:26px;overflow:hidden;border:1px solid rgba(255,255,255,.14);box-shadow:0 34px 90px rgba(0,0,0,.55);animation:flFloat 9s ease-in-out infinite}
.card9 img,.card9 video{width:100%;height:100%;object-fit:cover}
.card9.far1{transform:translate(-50%,-50%) translateX(-162%) rotate(-9deg) scale(.76);z-index:1}.card9.far1>div{animation-duration:10s;animation-delay:-3s}
.card9.near1{transform:translate(-50%,-50%) translateX(-88%) rotate(-5deg) scale(.88);z-index:2}.card9.near1>div{animation-delay:-1s}
.card9.far2{transform:translate(-50%,-50%) translateX(162%) rotate(9deg) scale(.76);z-index:1}.card9.far2>div{animation-duration:11s;animation-delay:-6s}
.card9.near2{transform:translate(-50%,-50%) translateX(88%) rotate(5deg) scale(.88);z-index:2}.card9.near2>div{animation-duration:9.5s;animation-delay:-5s}
.card9.far1 img,.card9.far2 img{opacity:.82}
.card9.center{transform:translate(-50%,-50%);z-index:4}
.card9.center>div{position:relative;border-radius:30px;border-color:rgba(255,255,255,.24);box-shadow:0 44px 120px rgba(0,0,0,.7),0 0 0 7px rgba(255,255,255,.05);background:var(--night-2);animation-duration:12s}
.rec{position:absolute;top:14px;left:14px;display:inline-flex;align-items:center;gap:7px;height:28px;padding:0 11px;border-radius:999px;background:rgba(13,11,20,.6);backdrop-filter:blur(8px);font-size:12px;font-weight:700}
.rec:before{content:'';width:7px;height:7px;border-radius:50%;background:#FF5A5F;animation:flPulse 1.6s ease-in-out infinite}
.glass{padding:14px;border-radius:18px;background:rgba(22,19,32,.8);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 20px 60px rgba(0,0,0,.45);text-align:left;animation:flFloat 8s ease-in-out infinite}
.fan .strip{position:absolute;right:calc(50% + 92px);top:38%;z-index:6}
.fan .strip .glass{width:214px;animation-delay:-2s}
.fan .review{position:absolute;left:calc(50% + 64px);bottom:7%;width:256px;z-index:6}
.fan .review .glass{animation-duration:9s;animation-delay:-5s}
.glass .lbl{color:#A9A3BF;letter-spacing:.1em}
.prod-steps{margin-top:10px;display:flex;flex-direction:column;gap:9px;font-size:13px;font-weight:600;color:#E9E6F5}
.prod-steps span{display:flex;align-items:center;gap:9px}
.prod-steps i{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;flex:none}
.prod-steps .done i{background:var(--green);color:var(--night)}.prod-steps .done svg{width:11px;height:11px}
.prod-steps .now{color:#fff}.prod-steps .now i{border:2px solid var(--lilac)}.prod-steps .now i:after{content:'';width:6px;height:6px;border-radius:50%;background:var(--lilac);animation:flPulse 1.4s ease-in-out infinite}
.prod-steps .next{color:#8E89A3}.prod-steps .next i{border:2px solid #4A4560}
.review-top{display:flex;align-items:center;justify-content:space-between}
.review b{display:block;margin-top:8px;font-size:15px;color:#fff}
.review .acts{margin-top:12px;display:flex;gap:8px}
.review .acts span{flex:1;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;gap:6px;font-size:13px;font-weight:700;color:#fff;background:var(--accent)}
.review .acts span+span{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);font-weight:600;color:#E9E6F5}
.review .acts svg{width:14px;height:14px}
.marquee{position:relative;margin-top:clamp(40px,5vw,64px);border-top:1px solid rgba(255,255,255,.08);overflow:hidden;padding:24px 0}
.marquee div{display:flex;width:max-content;animation:flMarquee 42s linear infinite}
.marquee span{display:inline-flex;align-items:center;gap:30px;padding-right:30px;font-size:clamp(18px,1.7vw,24px);font-weight:600;letter-spacing:-.02em;color:rgba(255,255,255,.52);white-space:nowrap}
.marquee span:after{content:'';width:6px;height:6px;border-radius:50%;background:var(--accent)}

/* Services teaser */
.svc{display:flex;flex-wrap:wrap;align-items:center;gap:clamp(36px,6vw,80px)}
.svc>div{flex:1 1 440px;min-width:0}
.checks{list-style:none;margin:26px 0 0;padding:0;display:flex;flex-direction:column;gap:12px}
.checks li{display:flex;align-items:center;gap:12px;font-size:16px;font-weight:600}
.checks li:before{content:'';flex:none;width:26px;height:26px;border-radius:50%;background:var(--accent-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236B01F8' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12.5 4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/13px no-repeat}
.svc .btn-row{margin-top:32px;gap:10px}
.svc .btn{height:var(--fl-btn-md);font-size:15px;padding:0 22px}
.collage{position:relative;flex:1 1 480px;min-width:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:150px;gap:10px}
.collage img,.collage video{width:100%;height:100%;object-fit:cover;border-radius:20px;background:#EEEEF1}
.collage .w2{grid-column:span 2}.collage .h2r{grid-row:span 2}
.collage .view{position:absolute;left:14px;bottom:14px;display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border-radius:999px;background:rgba(13,11,20,.78);backdrop-filter:blur(8px);color:#fff;font-size:14px;font-weight:700}
.collage .view svg{width:15px;height:15px}

/* FAQ */
.faq{display:flex;flex-wrap:wrap;gap:clamp(32px,6vw,96px)}
.faq>div:first-child{flex:1 1 300px;max-width:420px}
.faq>div:first-child p{margin-top:18px;font-size:17px;line-height:1.6;color:var(--muted)}
.faq>div:first-child .btn{margin-top:24px;height:var(--fl-btn-md);font-size:15px;padding:0 22px}
.qa{flex:2 1 460px;display:flex;flex-direction:column;gap:10px}
.qa details{border-radius:20px;background:var(--paper);border:1px solid var(--line)}
.qa summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px;font-size:18px;font-weight:700;letter-spacing:-.02em;list-style:none;cursor:pointer}
.qa summary::-webkit-details-marker{display:none}
.qa summary:after{content:'+';flex:none;width:34px;height:34px;border-radius:50%;background:#F2F0F8;display:grid;place-items:center;font-size:20px;font-weight:500;transition:transform .25s ease}
.qa details[open] summary:after{transform:rotate(45deg)}
.qa details p{padding:0 24px 24px;max-width:680px;font-size:16px;line-height:1.65;color:var(--muted)}

/* Closing call to action and footer */
.cta{position:relative;background:var(--night);color:#fff;overflow:hidden;padding:clamp(88px,10vw,140px) 0 clamp(72px,8vw,112px)}
.cta:before{content:'';position:absolute;inset:0;background:radial-gradient(46% 60% at 50% 100%,rgba(107,1,248,.3),rgba(13,11,20,0) 70%);pointer-events:none}
.cta .wrap{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center}
.cta-fan{display:flex;align-items:center;justify-content:center}
.cta-fan img{width:72px;height:128px;object-fit:cover;border-radius:14px;border:2px solid var(--night);box-shadow:0 16px 40px rgba(0,0,0,.5)}
.cta-fan img:first-child{transform:rotate(-8deg) translateX(14px)}.cta-fan img:nth-child(2){position:relative;z-index:2;width:84px;height:150px;border-radius:16px}.cta-fan img:last-child{transform:rotate(8deg) translateX(-14px)}
.cta h2{margin-top:36px;max-width:900px;font-size:clamp(38px,5.6vw,80px);line-height:1;letter-spacing:-.05em;font-weight:700}
.cta p{margin-top:22px;max-width:560px;font-size:18px;line-height:1.6;color:var(--on-dark)}
.cta .btn-row{margin-top:34px;justify-content:center}
.foot{background:var(--night);color:var(--on-dark-2);border-top:1px solid rgba(255,255,255,.08)}
.foot .wrap{padding-top:56px;padding-bottom:28px}
.foot-top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:40px}
.foot-brand{flex:1 1 260px;max-width:320px}
.foot-brand a{display:inline-flex;align-items:center;gap:10px;font-size:21px;font-weight:600;letter-spacing:-.045em;color:#fff}
.foot-brand img{width:30px;height:30px;border-radius:8px}
.foot-brand p{margin-top:14px;font-size:15px;line-height:1.6}
.foot nav{display:flex;flex-wrap:wrap;gap:40px 64px;font-size:15px}
.foot nav div{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.foot nav b{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#fff}
.foot nav a:hover,.foot nav button:hover{color:#fff}
.foot nav button{padding:0;border:0;background:none;font-size:15px;cursor:pointer;color:inherit}
.foot-bottom{margin-top:48px;padding-top:22px;border-top:1px solid rgba(255,255,255,.08);display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:13px}

/* Dialogs */
.fl-modal{width:min(480px,calc(100% - 32px));max-height:calc(100% - 32px);padding:28px;border:0;border-radius:26px;background:#fff;color:var(--ink);box-shadow:0 40px 120px rgba(0,0,0,.45)}
.fl-modal::backdrop{background:rgba(8,7,12,.72);backdrop-filter:blur(6px)}
.fl-modal h2{margin-top:10px;padding-right:44px;font-size:30px;line-height:1.1;letter-spacing:-.04em;font-weight:700}
.fl-modal>p,.fl-modal form>p{margin-top:10px;font-size:15px;line-height:1.6;color:var(--muted)}
.x{position:absolute;top:14px;right:14px;width:44px;height:44px;border-radius:50%;border:0;background:#F2F0F8;display:grid;place-items:center;cursor:pointer}
.x svg{width:16px;height:16px}
.toggles{margin-top:18px;display:flex;flex-wrap:wrap;gap:8px;border:0;padding:0}
.toggles legend{font-size:13px;font-weight:700;color:#3B3850;margin-bottom:9px;padding:0}
.toggle input{position:absolute;opacity:0;pointer-events:none}
.toggle span{display:inline-flex;align-items:center;height:40px;padding:0 14px;border-radius:999px;border:1px solid #DCD9E6;background:#fff;color:#3B3850;font-size:14px;font-weight:700;cursor:pointer}
.toggle input:checked+span{background:var(--ink);border-color:var(--ink);color:#fff}
.toggle input:focus-visible+span{outline:3px solid #A78BFA;outline-offset:3px}
.field{display:flex;flex-direction:column;gap:7px}
.field label{font-size:13px;font-weight:700;color:#3B3850}
.field label small{font-weight:600;color:#6B6880;font-size:13px}
.input{width:100%;height:50px;padding:0 16px;border-radius:14px;border:1px solid #DCD9E6;background:#fff;font-size:15px;color:var(--ink)}
textarea.input{height:auto;padding:14px 16px;line-height:1.5;resize:vertical}
.input::placeholder{color:#8A869C}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.submit{margin-top:14px;width:100%;height:var(--fl-btn-md);border-radius:var(--fl-r-pill);border:0;background:var(--ink);color:#fff;font-size:15px;font-weight:700;cursor:pointer}
.submit:disabled{opacity:.6;cursor:progress}
.done-state{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:12px 0}
.done-state .tick{width:56px;height:56px;border-radius:50%;background:#E3F5EC;color:#1C6B45;display:grid;place-items:center}
.done-state .tick svg{width:26px;height:26px}
.done-state h2{margin:0;padding:0;font-size:26px}
.media-modal{width:min(1120px,calc(100% - 32px));padding:0;border:0;border-radius:20px;background:#000;overflow:hidden}
.media-modal::backdrop{background:rgba(8,7,12,.88);backdrop-filter:blur(6px)}
.media-modal video,.media-modal iframe{display:block;width:100%;aspect-ratio:16/9;border:0;background:#000}
.media-modal .cap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:14px 18px;background:#0D0B14;color:#BDB8CF;font-size:14px}
.media-modal .cap a{color:#fff;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.media-modal .x{background:rgba(255,255,255,.14);color:#fff;z-index:2}

/* Services page */
.svc-hero{position:relative;padding:clamp(56px,7vw,96px) 0 clamp(64px,8vw,104px);margin-top:-80px;padding-top:calc(80px + clamp(56px,7vw,96px));background:var(--night);color:#fff;overflow:hidden}
.svc-hero:before{content:'';position:absolute;inset:0;background:radial-gradient(55% 55% at 50% 100%,rgba(107,1,248,.3),rgba(13,11,20,0) 70%);pointer-events:none}
.svc-hero .wrap{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center}
.svc-hero h1{margin-top:26px;max-width:1000px;font-size:clamp(40px,6.4vw,96px);line-height:.98;letter-spacing:-.052em;font-weight:700}
.svc-hero .wrap>p:not(.chip-link){margin-top:24px;max-width:660px;font-size:clamp(16px,1.35vw,19px);line-height:1.6;color:var(--on-dark)}
.svc-hero .btn-row{margin-top:32px;justify-content:center}
.btn.green{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.2);color:#fff;font-weight:600}.btn.green svg{color:#4ADE80}
.svc-hero .wrap.strip6,.strip6{position:relative;margin:clamp(48px,6vw,72px) auto 0;display:grid;flex-direction:initial;text-align:initial;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(8px,1.2vw,16px);align-items:center}
.strip6>div{aspect-ratio:9/16;border-radius:20px;overflow:hidden;border:1px solid rgba(255,255,255,.12);animation:flFloat 9s ease-in-out infinite}
.strip6>div:nth-child(odd){margin-top:28px}.strip6>div:nth-child(2){animation-delay:-2s}.strip6>div:nth-child(3){animation-delay:-4s}.strip6>div:nth-child(4){animation-delay:-1s}.strip6>div:nth-child(5){animation-delay:-3s}.strip6>div:nth-child(6){animation-delay:-5s}
.strip6 img,.strip6 video{width:100%;height:100%;object-fit:cover}
.filters{display:flex;flex-wrap:wrap;gap:4px;padding:5px;border-radius:999px;background:#fff;border:1px solid var(--line)}
.filters button{height:40px;padding:0 16px;border-radius:999px;border:0;background:transparent;color:var(--muted);font-size:14px;font-weight:700;cursor:pointer}
.filters button[aria-pressed=true]{background:var(--ink);color:#fff}
.work{margin-top:40px;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));grid-auto-rows:330px;grid-auto-flow:dense;gap:16px}
.work figure{position:relative;margin:0;border-radius:22px;overflow:hidden;background:var(--night-3);color:#fff;transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s ease}
.work figure:hover{transform:translateY(-5px);box-shadow:0 24px 56px rgba(21,19,31,.18)}
.work figure.wide{grid-column:span 2}
.work figure[hidden]{display:none}
.work img,.work video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.work figure:hover img,.work figure:hover video{transform:scale(1.06)}
.work figure:after{content:'';position:absolute;left:0;right:0;bottom:0;height:50%;background:linear-gradient(180deg,rgba(13,11,20,0),rgba(13,11,20,.85))}
.work .cat{position:absolute;z-index:2;top:14px;left:14px;display:inline-flex;align-items:center;height:28px;padding:0 11px;border-radius:999px;background:rgba(13,11,20,.58);backdrop-filter:blur(8px);font-size:12px;font-weight:700}
.work figcaption{position:absolute;z-index:2;left:18px;right:18px;bottom:16px;display:flex;flex-direction:column;gap:3px}
.work figcaption b{font-size:18px;letter-spacing:-.02em}.work figcaption span{font-size:13px;color:#DAD6E7}
.offers{margin-top:48px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:16px}
.offers article{display:flex;flex-direction:column;gap:14px;padding:28px;border-radius:26px;background:var(--soft);border:1px solid #ECEAF3}
.offers .n{width:48px;height:48px;border-radius:14px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-size:15px;font-weight:800}
.offers article:last-child .n{background:var(--accent);color:#fff}
.offers h3{font-size:22px;line-height:1.2;letter-spacing:-.03em}
.offers p{font-size:15px;line-height:1.6;color:var(--muted)}
.how{list-style:none;margin:48px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px}
.how li{padding:26px;border-radius:24px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1)}
.how li b{font-size:44px;font-weight:800;letter-spacing:-.05em;color:var(--lilac)}
.how h3{margin-top:12px;font-size:21px;line-height:1.25;letter-spacing:-.03em}
.how p{margin-top:10px;font-size:15px;line-height:1.6;color:var(--on-dark)}
.quote{display:flex;flex-wrap:wrap;align-items:flex-start;gap:clamp(32px,5vw,72px)}
.quote>div:first-child{flex:1 1 380px;min-width:0}
.contacts{margin-top:28px;display:flex;flex-direction:column;gap:12px}
.contacts a{display:flex;align-items:center;gap:16px;padding:18px 20px;border-radius:20px;background:#fff;border:1px solid var(--line);transition:transform .2s ease}
.contacts a:hover{transform:translateY(-2px)}
.contacts .ci{flex:none;width:48px;height:48px;border-radius:14px;display:grid;place-items:center}
.contacts .ci svg{width:22px;height:22px}
.contacts b{display:block;font-size:17px}.contacts small{display:block;font-size:14px;color:var(--muted)}
.quote-card{flex:1.3 1 440px;min-width:0;padding:clamp(22px,3vw,36px);border-radius:28px;background:#fff;border:1px solid var(--line);box-shadow:0 30px 80px rgba(21,19,31,.08)}
.quote-card h3{font-size:24px;letter-spacing:-.03em}
.grid2{margin-top:20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:14px}
.counts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.counts .toggle span{width:100%;justify-content:center;height:44px;border-radius:12px;font-size:15px}
.counts .toggle input:checked+span{background:var(--accent-soft);border-color:var(--accent);color:#3A1F9E}
.quote-card .submit{background:var(--accent);height:var(--fl-btn-lg);font-size:16px;margin-top:20px}
.fine{margin-top:12px!important;font-size:12px;color:#6B6880;text-align:center}

/* Responsive */
@media(max-width:860px){.hero,.svc-hero{margin-top:-70px;padding-top:calc(70px + clamp(36px,5vw,72px))}}
@media(max-width:640px){
  .stage{aspect-ratio:4/5}
  .card9.far1,.card9.far2,.fan .strip{display:none}
  .fan .review{left:50%;transform:translateX(-50%);width:228px;bottom:1%}
  .work figure.wide{grid-column:auto}
  .collage .w2{grid-column:span 3}
  .strip6{grid-template-columns:repeat(3,minmax(0,1fr))}.strip6>div:nth-child(n+4){display:none}
  .btn{height:var(--fl-btn-md);padding:0 22px;font-size:15px}
}
@media(prefers-reduced-motion:reduce){.fl-landing *{animation:none!important;transition:none!important}html{scroll-behavior:auto}}

/* Inner pages: Studio, Tools, MCP, My Account */
.page-hero{position:relative;margin-top:-80px;padding:calc(80px + clamp(48px,6vw,88px)) 0 clamp(56px,7vw,96px);background:var(--night);color:#fff;overflow:hidden}
.page-hero:before{content:'';position:absolute;inset:0;background:radial-gradient(55% 60% at 50% 0%,rgba(107,1,248,.3),rgba(13,11,20,0) 70%);pointer-events:none}
.page-hero .wrap{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center}
.page-hero h1{margin-top:24px;max-width:1040px;font-size:clamp(40px,6vw,88px);line-height:.98;letter-spacing:-.05em;font-weight:700}
.page-hero h1 span{color:var(--lilac)}
.page-hero .wrap>p:not(.chip-link){margin-top:22px;max-width:660px;font-size:clamp(16px,1.35vw,19px);line-height:1.6;color:var(--on-dark)}
.page-hero .btn-row{margin-top:30px;justify-content:center}
.page-hero.short{padding-bottom:clamp(40px,5vw,64px)}
.page-hero .pill-form{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18)}
.page-hero .pill-form input{color:#fff}.page-hero .pill-form input::placeholder{color:#A9A3BF}
.page-hero .pill-form button{background:#fff;color:var(--ink)}
.page-hero .waitlist-inline{margin-top:30px;width:100%;flex:none}
.page-hero .waitlist-inline label{color:#E9E6F5;text-align:left}
.page-hero .form-ok{background:rgba(47,191,113,.14);color:#6EE7A8}
.page-hero .form-err{color:#FCA5A5}
.under-hero{margin-top:-1px}
.cards.four{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
.cards{margin-top:48px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px}
.card-x{display:flex;flex-direction:column;gap:12px;padding:26px;border-radius:24px;background:var(--paper);border:1px solid var(--line)}
.card-x .ico{width:48px;height:48px;border-radius:14px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center}
.card-x .ico svg{width:22px;height:22px}
.card-x h3{font-size:21px;letter-spacing:-.03em;line-height:1.2}
.card-x p{font-size:15px;line-height:1.6;color:var(--muted)}
.card-x .top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.dark .card-x{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.1)}
.dark .card-x p{color:var(--on-dark)}.dark .card-x .ico{background:rgba(196,181,253,.14);color:var(--lilac)}
.model-groups{margin-top:48px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:16px}
.model-group{padding:24px;border-radius:24px;background:var(--paper);border:1px solid var(--line)}
.model-group h3{font-size:14px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.model-group ul{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-direction:column;gap:2px}
.model-group li{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #F0EEF5;font-size:15px}
.model-group li:last-child{border-bottom:0}
.model-group li b{font-weight:700}.model-group li span{color:var(--muted);text-align:right}
.note-line{margin-top:18px!important;font-size:13px;color:#6B6880}
.tool-search{display:flex;align-items:center;gap:10px;width:min(420px,100%);height:52px;padding:0 18px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);margin-top:28px}
.tool-search svg{width:18px;height:18px;color:#A9A3BF}
.tool-search input{flex:1;min-width:0;border:0;background:transparent;color:#fff;font-size:15px;outline:none}
.tool-search input::placeholder{color:#A9A3BF}
.tools.six{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr))}
.tool[hidden]{display:none}
.no-results{margin-top:24px!important;font-size:16px;color:var(--muted)}
.art-studio{background:#110F18;padding:18px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-content:center}
.art-studio img{width:100%;aspect-ratio:9/16;object-fit:cover;border-radius:12px}
.art-mcp{background:#17141F;display:flex;align-items:center;justify-content:center;gap:14px;padding:20px}
.art-mcp .node{display:flex;flex-direction:column;align-items:center;gap:8px;font-size:12px;font-weight:700;color:#E9E6F5}
.art-mcp .node i{width:58px;height:58px;border-radius:16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);display:grid;place-items:center}
.art-mcp .node img{width:34px;height:34px;border-radius:9px}
.art-mcp .node svg{width:24px;height:24px;color:var(--lilac)}
.art-mcp .link{width:46px;height:2px;background:repeating-linear-gradient(90deg,var(--lilac) 0 6px,transparent 6px 12px);background-size:24px 2px;animation:flDash 1s linear infinite}
@keyframes flDash{to{background-position:24px 0}}
.art-continue{background:#FFF4EC;display:flex;align-items:center;justify-content:center}
.art-continue .stack{position:relative;width:200px;height:150px}
.art-continue .stack span{position:absolute;inset:0;border-radius:16px;background:#fff;border:1px solid #F1DCCB;box-shadow:0 12px 30px rgba(180,80,31,.12);padding:14px;font-size:12px;font-weight:700;color:#8A4A22}
.art-continue .stack span:nth-child(1){transform:rotate(-6deg) translate(-14px,6px)}.art-continue .stack span:nth-child(2){transform:rotate(4deg) translate(10px,-4px)}
.art-continue .stack span:nth-child(3){display:flex;flex-direction:column;gap:8px}
.art-continue .stack i{display:block;height:7px;border-radius:4px;background:#F6E3D5}.art-continue .stack i:nth-child(2){width:80%}.art-continue .stack i:nth-child(3){width:60%}
/* My Account */
.acct{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-start}
.acct-side{flex:1 1 260px;max-width:320px;display:flex;flex-direction:column;gap:6px;padding:20px;border-radius:24px;background:var(--paper);border:1px solid var(--line)}
.acct-profile{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:6px 6px 16px;margin-bottom:6px;border-bottom:1px solid #F0EEF5}
.avatar-circle{width:56px;height:56px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;overflow:hidden;font-weight:800;font-size:18px}
.avatar-circle img{width:100%;height:100%;object-fit:cover}
.avatar-circle svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7}
.acct-profile h2{font-size:20px;letter-spacing:-.02em;margin-top:6px!important}
.acct-profile p{font-size:14px;color:var(--muted);word-break:break-all}
.acct-profile .tag{margin-top:6px;border:1px solid #DCD9E6;background:#fff;color:#3B3850}
.account-nav{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:12px;font-size:15px;font-weight:600;color:#3B3850}
.account-nav svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7}
.account-nav:hover,.account-nav.active{background:var(--accent-soft);color:#3A1F9E}
.acct-main{flex:999 1 560px;min-width:0;display:flex;flex-direction:column;gap:20px}
.acct-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:12px}
.acct-stats .stat{padding:20px;border-radius:20px;background:var(--paper);border:1px solid var(--line)}
.stat-label{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#6B6880}
.stat-value{margin-top:8px;font-size:34px;font-weight:700;letter-spacing:-.04em}
.acct-stats p{font-size:14px;color:var(--muted)}
.acct-panel{padding:24px;border-radius:24px;background:var(--paper);border:1px solid var(--line)}
.acct-panel h2{font-size:22px;letter-spacing:-.03em;margin-bottom:14px!important}
.brief-row{display:flex;align-items:center;gap:14px;padding:14px;border-radius:16px;background:var(--soft);border:1px solid #ECEAF3;margin-top:8px}
.brief-row .tool-icon{flex:none;width:44px;height:44px;border-radius:12px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-weight:800}
.brief-row>div:nth-child(2){flex:1;min-width:0}
.brief-row h3{font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.brief-row p{font-size:13px;color:var(--muted)}
.account-empty{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;padding:18px;border-radius:16px;border:1px dashed #D3CFE0;background:var(--soft)}
.account-empty strong{font-size:16px}.account-empty p{margin-top:4px!important;font-size:14px;color:var(--muted)}
.btn.light.small{height:var(--fl-btn-sm);padding:0 16px;font-size:14px;border-radius:999px;background:#fff;border:1px solid #DCD9E6;color:var(--ink)}
.acct-credit{padding:24px;border-radius:24px;background:var(--night-2);color:#fff}
.acct-credit h3{font-size:20px;letter-spacing:-.02em}.acct-credit p{margin-top:8px!important;font-size:15px;line-height:1.6;color:var(--on-dark)}
.form-error{padding:14px 16px;border-radius:14px;background:#FEF3F2;color:#B42318;font-size:14px;font-weight:600}
.muted{color:var(--muted)}
/* My Account v2 */
.acct-hero .wrap{flex-direction:row;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:32px;text-align:left}
.acct-id{display:flex;align-items:center;gap:22px;flex:1 1 420px;min-width:0}
.avatar-circle.big{flex:none;width:88px;height:88px;font-size:30px;background:rgba(196,181,253,.14);color:var(--lilac);border:3px solid rgba(255,255,255,.12)}
.avatar-circle.big svg{width:36px;height:36px}
.acct-id-tx{min-width:0}
.acct-hero h1{margin-top:8px;font-size:clamp(34px,4.6vw,60px);text-align:left;overflow-wrap:anywhere}
.acct-hero #account-email{margin-top:8px;font-size:16px;color:var(--on-dark);overflow-wrap:anywhere}
.acct-hero .btn-row{margin-top:20px;justify-content:flex-start}
.acct-tiles{flex:1 1 420px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:560px}
.acct-tile{display:flex;flex-direction:column;gap:4px;padding:16px 18px;border-radius:20px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);transition:background-color .2s ease}
.acct-tile:hover{background:rgba(255,255,255,.1)}
.acct-tile span{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#A9A3BF}
.acct-tile b{font-size:34px;font-weight:700;letter-spacing:-.04em;color:#fff;line-height:1.1}
.acct-tile small{font-size:12.5px;color:#A9A3BF}
.acct-sec{padding-top:clamp(40px,5vw,64px)}
.acct2{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:20px;align-items:start}
.acct2 .acct-main{display:flex;flex-direction:column;gap:20px;min-width:0}
.acct-aside{display:flex;flex-direction:column;gap:20px;position:sticky;top:100px}
.panel-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:12px}
.panel-head h2{margin:0!important;font-size:22px;letter-spacing:-.03em}
.text-link{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:700;color:var(--accent)}
.text-link svg{width:15px;height:15px}
.small{font-size:13px}
.credit-card{position:relative;overflow:hidden;padding:26px;border-radius:26px;background:var(--night);color:#fff;box-shadow:0 30px 80px rgba(21,19,31,.25)}
.credit-card:before{content:'';position:absolute;inset:0;background:radial-gradient(70% 60% at 100% 0%,rgba(107,1,248,.45),transparent 70%);pointer-events:none}
.credit-card>*{position:relative}
.cc-top{display:flex;align-items:center;justify-content:space-between}
.cc-ico{width:46px;height:46px;border-radius:14px;background:var(--accent);display:grid;place-items:center}
.cc-ico svg{width:22px;height:22px}
.credit-card h2{margin-top:18px!important;font-size:24px;letter-spacing:-.03em}
.cc-bal{margin-top:10px;display:flex;align-items:baseline;gap:12px;padding:16px 18px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1)}
.cc-bal b{font-size:44px;font-weight:700;letter-spacing:-.05em;line-height:1}
.cc-bal span{font-size:13px;color:#A9A3BF}
.credit-card>p{margin-top:16px!important;font-size:14px;color:var(--on-dark)}
.cc-list{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:9px}
.cc-list li{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:#E9E6F5}
.cc-list svg{width:16px;height:16px;flex:none;color:#6EE7A8}
.credit-card .cc-note{margin-top:16px!important;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.05);font-size:13px;line-height:1.55;color:#A9A3BF}
.credit-card .btn{margin-top:18px;width:100%;box-shadow:none}
.quick-list{display:flex;flex-direction:column;gap:8px}
.quick{display:flex;align-items:center;gap:12px;width:100%;padding:12px;border-radius:16px;background:var(--soft);border:1px solid #ECEAF3;text-align:left;cursor:pointer;transition:border-color .2s ease,transform .2s ease}
.quick:hover{border-color:#C9B6FF;transform:translateY(-1px)}
.q-ico{flex:none;width:40px;height:40px;border-radius:12px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-weight:800}
.q-tx{flex:1;min-width:0}.q-tx b{display:block;font-size:15px}.q-tx small{display:block;font-size:12.5px;color:var(--muted)}
.help-card{display:flex;flex-direction:column;gap:6px;padding:22px;border-radius:24px;background:var(--accent-soft);border:1px solid #E3DBFF}
.help-card b{font-size:18px;letter-spacing:-.02em}.help-card span{font-size:14px;color:#4A4760}
.help-card .more{margin-top:6px}
.acct-panel .brief-row{background:#fff}
@media(max-width:1024px){.acct2{grid-template-columns:minmax(0,1fr)}.acct-aside{position:static}}
@media(max-width:640px){.acct-tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.acct-tile{padding:12px}.acct-tile b{font-size:26px}.acct-tile span{font-size:10px}.acct-id{gap:14px}.avatar-circle.big{width:64px;height:64px}}

/* Account v2.1: tools live in the main column; dashes read as "not yet" */
.acct-main .quick-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.acct-tile b.dash,.cc-bal b.dash{font-weight:400;opacity:.55}
@media(max-width:640px){.acct-main .quick-list{grid-template-columns:minmax(0,1fr)}.acct-id{flex-direction:column;align-items:flex-start;gap:16px}}
.slide.no-video[data-poster-bg] .fallback{background-size:cover;background-position:center}
.slide.no-video[data-poster-bg] .fb-mark{display:none}

/* v2.3 White sections, elevated elements.
   Backgrounds stay white; cards get a matte finish (soft top-to-bottom shade plus fine grain), layered neutral shadows
   and a bright top edge. Glass is used where something sits on top of imagery or dark art. */
:root{--matte-grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .034 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");--el-line:rgba(18,14,34,.08);--el-line-2:rgba(18,14,34,.14);--el-shadow:inset 0 1px 0 #fff,0 0 0 1px rgba(18,14,34,.02),0 1px 2px rgba(18,14,34,.05),0 4px 10px -2px rgba(18,14,34,.05),0 18px 40px -16px rgba(18,14,34,.16);--el-shadow-hover:inset 0 1px 0 #fff,0 0 0 1px rgba(18,14,34,.03),0 2px 4px rgba(18,14,34,.05),0 10px 22px -6px rgba(18,14,34,.08),0 34px 70px -24px rgba(18,14,34,.26);--matte:var(--matte-grain),linear-gradient(180deg,#FFFFFF 0%,#FCFCFD 50%,#F6F6F9 100%)}
.sec.light,.sec.white{background:#fff}
.sec.light+.sec.light,.sec.white+.sec.white,.sec.light+.sec.white,.sec.white+.sec.light{border-top:1px solid #F0EFF4}

/* Matte cards with depth */
:is(.sec.light,.sec.white) :is(.way:not(.dark-card),.tool,.qa details,.contacts a,.quote-card,.card-x,.model-group,.acct-panel,.acct-stats .stat,.acct-side,.offers article,.step-card){position:relative;background:var(--matte);border:1px solid var(--el-line);box-shadow:var(--el-shadow)}
:is(.sec.light,.sec.white) :is(.way:not(.dark-card),.tool,.card-x,.contacts a,.step-card,.offers article){transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s ease,border-color .3s ease}
:is(.sec.light,.sec.white) :is(.way:not(.dark-card),.tool,.card-x,.contacts a,.step-card,.offers article):hover{transform:translateY(-6px);box-shadow:var(--el-shadow-hover);border-color:var(--el-line-2)}
:is(.sec.light,.sec.white) .quote-card{box-shadow:inset 0 1px 0 #fff,0 0 0 1px rgba(18,14,34,.03),0 2px 6px rgba(18,14,34,.05),0 30px 80px -28px rgba(18,14,34,.30)}
:is(.sec.light,.sec.white) .qa details[open]{box-shadow:var(--el-shadow-hover)}
:is(.sec.light,.sec.white) .qa summary:after{background:linear-gradient(180deg,#fff,#F1F0F5);box-shadow:inset 0 1px 0 #fff,0 1px 2px rgba(18,14,34,.12);color:var(--ink)}
.way.dark-card{background:var(--matte-grain),linear-gradient(160deg,#211C33 0%,#15131F 55%,#0F0D17 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 2px 6px rgba(18,14,34,.12),0 30px 60px -24px rgba(18,14,34,.55)}
.way.dark-card:hover{transform:translateY(-6px);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 4px 10px rgba(18,14,34,.14),0 40px 80px -28px rgba(18,14,34,.6)}

/* Glossy glass icon tiles */
:is(.sec.light,.sec.white) :is(.way:not(.dark-card),.card-x) .ico,.quick .q-ico,.quick .ico{background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(239,235,254,.9));border:1px solid rgba(107,1,248,.12);box-shadow:inset 0 1px 0 #fff,inset 0 -6px 12px -6px rgba(107,1,248,.18),0 6px 14px -6px rgba(107,1,248,.35)}

/* Matte status pills */
:is(.sec.light,.sec.white) .tag.soon{background:linear-gradient(180deg,#F6F6F9,#ECEBF1);box-shadow:inset 0 1px 0 #fff,0 1px 1px rgba(18,14,34,.06);color:#3F3C55}
:is(.sec.light,.sec.white) .tag.live{background:linear-gradient(180deg,#EEFAF3,#DFF3E8);box-shadow:inset 0 1px 0 #fff,0 1px 1px rgba(28,107,69,.12)}

/* Glass where things sit on imagery or dark art */
.tool-art .mini-tags span,.tool-art .mesh-credit,.work figure .tag,.mini-tags span{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);-webkit-backdrop-filter:blur(12px) saturate(160%);backdrop-filter:blur(12px) saturate(160%);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 4px 12px rgba(0,0,0,.18)}
.tool .tool-art{box-shadow:inset 0 -1px 0 rgba(18,14,34,.08)}

/* Inner rows: recessed matte wells */
:is(.sec.light,.sec.white) :is(.quick,.brief-row){background:linear-gradient(180deg,#FBFBFD,#F5F5F8);border:1px solid var(--el-line);box-shadow:inset 0 1px 0 #fff,0 1px 2px rgba(18,14,34,.04)}
:is(.sec.light,.sec.white) .quick:hover{border-color:var(--el-line-2);box-shadow:inset 0 1px 0 #fff,0 8px 20px -10px rgba(18,14,34,.22)}
:is(.sec.light,.sec.white) .account-empty{background:#FAFAFC;border:1px dashed rgba(18,14,34,.16);box-shadow:inset 0 1px 3px rgba(18,14,34,.04)}

/* Controls */
:is(.sec.light,.sec.white) :is(.input,textarea.input,select.input){background:#F7F7FA;border:1px solid var(--el-line);box-shadow:inset 0 1px 2px rgba(18,14,34,.06)}
:is(.sec.light,.sec.white) :is(.input,textarea.input,select.input):focus{background:#fff;border-color:rgba(107,1,248,.45);box-shadow:0 0 0 4px rgba(107,1,248,.10)}
:is(.sec.light,.sec.white) .toggle span{background:linear-gradient(180deg,#fff,#F6F6F9);border:1px solid var(--el-line);box-shadow:inset 0 1px 0 #fff,0 1px 2px rgba(18,14,34,.06)}
:is(.sec.light,.sec.white) .toggle input:checked+span{background:var(--ink);border-color:var(--ink);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 6px 14px -6px rgba(18,14,34,.5)}
:is(.sec.light,.sec.white) .counts .toggle input:checked+span{background:linear-gradient(180deg,#F6F2FF,#EAE3FF);border-color:var(--accent);color:#3A1F9E;box-shadow:inset 0 1px 0 #fff,0 6px 14px -8px rgba(107,1,248,.5)}
:is(.sec.light,.sec.white) :is(.pill-form,.filters){background:#fff;border:1px solid var(--el-line);box-shadow:var(--el-shadow)}
:is(.sec.light,.sec.white) .filters button[aria-pressed=true]{box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 4px 10px -4px rgba(18,14,34,.45)}
:is(.sec.light,.sec.white) .more-tools{background:var(--matte);border:1px dashed rgba(18,14,34,.16);box-shadow:inset 0 1px 0 #fff,0 1px 2px rgba(18,14,34,.04)}
:is(.sec.light,.sec.white) .btn.outline{background:linear-gradient(180deg,#fff,#F6F6F9);border-color:var(--el-line-2);box-shadow:inset 0 1px 0 #fff,0 1px 2px rgba(18,14,34,.08),0 6px 14px -8px rgba(18,14,34,.25)}
:is(.sec.light,.sec.white) .btn.ink{box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 2px 4px rgba(18,14,34,.2),0 12px 24px -10px rgba(18,14,34,.5)}
:is(.sec.light,.sec.white) .btn.accent,:is(.sec.light,.sec.white) .quote-card button[type=submit]{box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 2px 4px rgba(107,1,248,.25),0 14px 28px -10px rgba(107,1,248,.55)}
.help-card{background:var(--matte-grain),linear-gradient(160deg,#F6F2FF 0%,#EDE7FE 100%);border:1px solid rgba(107,1,248,.12);box-shadow:inset 0 1px 0 #fff,0 1px 2px rgba(18,14,34,.05),0 18px 40px -18px rgba(107,1,248,.30)}
.work figure{box-shadow:0 1px 2px rgba(18,14,34,.08),0 18px 40px -18px rgba(18,14,34,.35)}
.sec .credit-card{box-shadow:0 2px 6px rgba(18,14,34,.12),0 40px 80px -30px rgba(18,14,34,.55)}

/* Slim one-line section (home: services note) */
.sec.slim{padding:clamp(28px,4vw,44px) 0}
.svc-line{margin-top:0}
.svc-line .btn{height:var(--fl-btn-sm);font-size:14px;padding:0 18px}
/* v3 copy: headings are full sentences now, so the display size steps down to keep each line on one line */
.hero h1,.page-hero h1,.svc-hero h1{max-width:1200px;font-size:clamp(34px,4.2vw,64px);line-height:1.02;letter-spacing:-.045em}
.hero h1 span,.page-hero h1 span,.svc-hero h1 span{display:inline-block}

/* v2.3 UX: hero chooser, "how it works", "also in development" */
.choose{margin-top:30px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:min(720px,100%)}
.choice-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:20px 64px 20px 22px;border-radius:22px;text-align:left;cursor:pointer;font:inherit;transition:transform .25s ease,box-shadow .25s ease,background-color .25s ease}
.choice-card b{font-size:20px;letter-spacing:-.02em;line-height:1.2}
.choice-card small{font-size:14px;font-weight:600}
.choice-card .cc-tag{display:inline-flex;align-items:center;gap:6px;margin-bottom:6px;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.choice-card .cc-tag i{width:7px;height:7px;border-radius:50%;background:var(--green)}
.choice-card .cc-go{position:absolute;right:18px;top:50%;width:36px;height:36px;margin-top:-18px;border-radius:50%;display:grid;place-items:center;transition:transform .25s ease}
.choice-card .cc-go svg{width:18px;height:18px}
.choice-card:hover{transform:translateY(-3px)}
.choice-card:hover .cc-go{transform:translateX(3px)}
.choice-card.now{background:#fff;color:var(--ink);border:1px solid #fff;box-shadow:0 18px 50px rgba(107,1,248,.35),inset 0 1px 0 #fff}
.choice-card.now small{color:#5D5A6E}
.choice-card.now .cc-tag{background:#E3F5EC;color:#1C6B45}
.choice-card.now .cc-go{background:var(--accent);color:#fff}
.choice-card.soon{background:rgba(255,255,255,.07);color:#fff;border:1px solid rgba(255,255,255,.18);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.choice-card.soon small{color:var(--on-dark)}
.choice-card.soon .cc-tag{background:rgba(255,255,255,.12);color:#E9E6F5}
.choice-card.soon .cc-go{background:rgba(255,255,255,.12);color:#fff}
@media(max-width:640px){.choose{grid-template-columns:minmax(0,1fr)}.choice-card b{font-size:18px}}
.cards.steps3{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}
.card-x .ico.num{font-size:18px;font-weight:800;color:var(--accent)}
.need-bar{margin-top:18px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;border-radius:22px;background:#F7F5FD;border:1px solid rgba(107,1,248,.12)}
.need-bar p{flex:1 1 380px;font-size:16px;line-height:1.55;color:#3B3850}
.need-bar p b{color:var(--ink)}
.need-links{display:flex;flex-wrap:wrap;gap:10px}
.need-links .btn{height:var(--fl-btn-sm);font-size:14px;padding:0 18px}
.also-next{margin-top:56px}
.also-title{font-size:22px;font-weight:700;letter-spacing:-.03em;margin-bottom:18px!important}
.also-next .tools{margin-top:0}

/* ---------- v4 consistency, 9 November 2026 ---------- */
/* Headings break into even lines, and no section heading is larger than the page headline. */
h1,h2,h3{text-wrap:balance}
.h2{font-size:var(--fl-t-2xl)}
.ads h2,.cta h2{font-size:var(--fl-t-3xl);line-height:1.02;letter-spacing:-.045em}
.stage-info h2{font-size:clamp(30px,3.6vw,52px)}
/* Tablets: the trailer stage stays inside the page instead of running off the right edge. */
/* (21:9 with a 360px minimum height forced the stage to 840px wide.) */
@media(min-width:641px) and (max-width:1024px){.stage{aspect-ratio:16/10;min-height:0;width:100%}}
/* Services hero on phones: equal full-width buttons and all six pictures in two rows. */
@media(max-width:640px){
  .svc-hero .btn-row{flex-direction:column;align-items:stretch;width:100%;max-width:380px}
  .svc-hero .btn-row .btn{width:100%}
  .svc-hero .wrap.strip6,.strip6{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:10px}
  .strip6>div{border-radius:14px}
}
/* 404 page */
.nf-hero{min-height:calc(100vh - 160px);display:flex;align-items:center}.nf-links{margin-top:32px;flex-wrap:wrap;gap:10px;justify-content:center}
@media(max-width:640px){.nf-links{flex-direction:column;align-items:stretch;width:100%;max-width:380px}.nf-links .btn{width:100%}}
/* ---------- v5 MotionHouse is live, 11 November 2026 ---------- */
/* Home hero: three choices (AdsHouse, MotionHouse, Studio). */
.choose.three{grid-template-columns:repeat(3,minmax(0,1fr));width:min(1040px,100%)}
@media(max-width:900px){.choose.three{grid-template-columns:minmax(0,1fr);width:min(520px,100%)}}
/* Home: MotionHouse section with the eight look samples. */
.mh-strip{margin-top:40px;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:12px}
.mh-look-card{display:grid;gap:8px;color:var(--ink);text-decoration:none}
.mh-look-card img{display:block;width:100%;height:auto;aspect-ratio:9/16;object-fit:cover;border-radius:14px;border:1px solid var(--line);transition:transform .25s ease,box-shadow .25s ease}
.mh-look-card:hover img{transform:translateY(-3px);box-shadow:0 14px 30px rgba(18,14,34,.18)}
.mh-look-card span{display:grid;gap:1px;font-size:13px;color:var(--muted);line-height:1.35}
.mh-look-card b{font-size:14px;color:var(--ink)}
.mh-strip-cta{margin-top:28px;align-items:center;gap:16px}
.mh-strip-note{font-size:14px;color:var(--muted)}
@media(max-width:1024px){.mh-strip{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:520px){.mh-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}
/* Home: "More Frameland tools" now has two cards. */
.also-next.two .tools{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:760px){.also-next.two .tools{grid-template-columns:minmax(0,1fr)}}
.account-empty-actions{display:flex;flex-wrap:wrap;gap:8px}
