:root{--bg:#130F19;--surface:#1C1724;--surface-2:#18131F;--ink:#F3EEF6;--muted:#B2A6BD;--line:#30283A;--line-strong:#54485F;--accent:#FFB547;--accent-ink:#130F19;--accent-text:#FFC266;--field:#0E0B13;--danger:#FF9C8F;--c1:#FF5C8A;--c2:#6CD4C4;--c3:#FFB547;--track:#241C2E;--clip-ink:#130F19;--clip-ink-3:#130F19;--mon-bg:#08060B;--mon-ink:#F3EEF6;--font-display:"Anybody","Arial Black",sans-serif;--font-body:"Onest",system-ui,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,monospace;--radius:6px;--radius-card:12px;--radius-btn:999px;--h-weight:800;--name-weight:800;--h-tracking:-.025em;--use-rule:2px solid var(--line-strong);--step-font:var(--font-mono);color-scheme:dark}
@media (prefers-color-scheme: light){:root:not([data-theme="dark"]){--bg:#F7F4F9;--surface:#FFFFFF;--surface-2:#EEE8F2;--ink:#1C1424;--muted:#5D5168;--line:#E0D8E6;--line-strong:#A99DB4;--accent:#F2A532;--accent-ink:#1C1424;--accent-text:#8A5600;--field:#FFFFFF;--danger:#A8231B;--c1:#CC2F5C;--c2:#167F72;--c3:#C77A0C;--track:#ECE5F1;--clip-ink:#FFFFFF;--clip-ink-3:#1C1424;--mon-bg:#08060B;--mon-ink:#F3EEF6;color-scheme:light}}
:root[data-theme="light"]{--bg:#F7F4F9;--surface:#FFFFFF;--surface-2:#EEE8F2;--ink:#1C1424;--muted:#5D5168;--line:#E0D8E6;--line-strong:#A99DB4;--accent:#F2A532;--accent-ink:#1C1424;--accent-text:#8A5600;--field:#FFFFFF;--danger:#A8231B;--c1:#CC2F5C;--c2:#167F72;--c3:#C77A0C;--track:#ECE5F1;--clip-ink:#FFFFFF;--clip-ink-3:#1C1424;--mon-bg:#08060B;--mon-ink:#F3EEF6;color-scheme:light}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:84px;scrollbar-color:var(--line-strong) var(--bg);accent-color:var(--accent)}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:1.0625rem;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-kerning:normal}
::selection{background:var(--accent);color:var(--accent-ink)}
a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}
a:hover{color:var(--accent-text)}
:focus-visible{outline:2px solid var(--accent-text);outline-offset:3px}
img,svg,canvas{max-width:100%}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.wrap{width:100%;max-width:76rem;margin-inline:auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}

.preview{background:var(--ink);color:var(--bg);font-size:.8125rem;line-height:1.4}
.preview .wrap{display:flex;flex-wrap:wrap;gap:4px 18px;justify-content:space-between;padding-block:9px}
.preview a{color:inherit}
.preview a:hover{color:inherit}

/* Sticky bar: the offer button is one tap away from anywhere on the page. */
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:31;background:var(--bg)}
.bar{position:sticky;top:env(safe-area-inset-top,0px);z-index:30;background:var(--bg);border-bottom:1px solid var(--line)}
.bar .wrap{display:flex;align-items:center;gap:20px;padding-block:12px}
.bar-name{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:var(--name-weight,600);font-size:1.125rem;text-decoration:none;margin-right:auto;letter-spacing:var(--bar-tracking,0);min-width:0}
.bar-name .mark{width:26px;height:26px;flex:none;--mark-acc:var(--accent)}
.bar-status{font-size:.8125rem;color:var(--muted)}
.bar-cta{font-weight:600;font-size:.9375rem;text-decoration:none;padding:.5em 1em;border-radius:var(--radius-btn);white-space:nowrap}
@media (max-width:640px){.bar-status{display:none}}

/* Hero pieces every identity shares: the sale line, the actions and the terms. */
.sale{display:block;font-family:var(--font-body);font-weight:600;font-size:clamp(1.25rem,2.1vw,1.7rem);line-height:1.2;letter-spacing:-.005em;text-transform:none;font-stretch:100%;margin-top:.5em}
.lead{max-width:34rem;font-size:clamp(1.0625rem,1.4vw,1.2rem);margin:0}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55em;font:inherit;font-weight:600;font-size:1rem;line-height:1.2;padding:.95em 1.55em;border-radius:var(--radius-btn);background:var(--accent);color:var(--accent-ink);text-decoration:none;border:0;cursor:pointer;transition:transform .2s cubic-bezier(.2,.8,.2,1),filter .2s ease,box-shadow .2s ease}
.btn:hover{color:var(--accent-ink);filter:brightness(1.07);transform:translateY(-1px)}
.btn:active{transform:translateY(0)}
.btn:disabled{cursor:progress;filter:saturate(.6);transform:none}
.btn svg{width:1.05em;height:1.05em;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s cubic-bezier(.2,.8,.2,1)}
.btn:hover svg{transform:translateX(3px)}
.btn-ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line-strong)}
.btn-ghost:hover{color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink)}
@media (max-width:520px){.actions{align-items:center;gap:10px 20px}.actions .btn.btn-ghost,.actions .btn.btn-ghost:hover{background:transparent;box-shadow:none;padding-inline:2px;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.3em}}
.terms{display:flex;flex-wrap:wrap;gap:6px 0;margin:18px 0 0 -28px;padding:0;list-style:none;font-size:.875rem;color:var(--terms,var(--muted));clip-path:inset(-4px 0 -4px 28px)}
.terms li::before{content:"";display:inline-block;width:4px;height:4px;border-radius:50%;background:currentColor;opacity:.55;margin:0 12px;vertical-align:.2em}

.section{padding-block:clamp(72px,9vw,128px)}
.section-alt{background:var(--surface-2)}
.h2{font-family:var(--font-display);font-weight:var(--h-weight,600);font-size:clamp(2rem,4.2vw,3.4rem);line-height:1.04;letter-spacing:var(--h-tracking,-.015em);margin:0 0 18px;text-wrap:balance;max-width:20ch}
.intro{max-width:38rem;margin:0;color:var(--muted);font-size:1.125rem}
.section:not(.section-alt)+.section:not(.section-alt){border-top:1px solid var(--line)}

/* Uses: an editorial list, one idea per row. */
.uses{list-style:none;margin:clamp(36px,5vw,64px) 0 0;padding:0;border-top:var(--use-rule)}
.use{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:8px clamp(24px,5vw,80px);align-items:baseline;padding-block:clamp(22px,3vw,34px);border-bottom:1px solid var(--line)}
.use h3{font-family:var(--font-display);font-weight:var(--h-weight,600);font-size:clamp(1.5rem,2.6vw,2.15rem);line-height:1.1;letter-spacing:var(--h-tracking,-.01em);margin:0;text-wrap:balance}
.use p{margin:0;color:var(--muted);font-size:1.0625rem;max-width:34rem}
@media (max-width:760px){.use{grid-template-columns:minmax(0,1fr)}}
.facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px 32px;margin:clamp(36px,5vw,56px) 0 0}
.facts div{display:grid;gap:4px;min-width:0;align-content:start}
.facts dt{font-size:.8125rem;color:var(--muted)}
.facts dd{margin:0;font-family:var(--font-display);font-weight:var(--h-weight,600);font-size:clamp(1.15rem,1.8vw,1.45rem);line-height:1.2;font-variant-numeric:tabular-nums}
@media (max-width:760px){.facts{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* How it works: one row, two phases. The rule above each step says who holds the money. */
.steps{list-style:none;margin:clamp(40px,5vw,64px) 0 0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0 clamp(14px,1.8vw,26px);counter-reset:step}
.steps li{counter-increment:step;position:relative;display:grid;gap:8px;align-content:start;padding-top:22px;border-top:2px solid var(--line-strong)}
.steps li:nth-child(n+4){border-top:4px solid var(--accent);padding-top:20px}
.steps li::before{content:counter(step);font-family:var(--step-font,var(--font-display));font-weight:var(--h-weight,600);font-size:clamp(2rem,3vw,2.6rem);line-height:1;color:var(--step-ink,var(--accent-text));font-variant-numeric:tabular-nums}
.phase{position:absolute;left:0;bottom:calc(100% + 12px);font-size:.8125rem;font-weight:600;color:var(--muted);white-space:nowrap}
.steps li:nth-child(4) .phase{color:var(--accent-text)}
.steps h3{font-family:var(--font-display);font-weight:var(--h-weight,600);font-size:1.12rem;line-height:1.25;margin:6px 0 0;text-wrap:balance}
.steps p{margin:0;color:var(--muted);font-size:.95rem}
.flow{padding-top:34px}
@media (max-width:1060px){.steps{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:64px}}
@media (max-width:620px){.flow{padding-top:28px}.steps{grid-template-columns:minmax(0,1fr);row-gap:48px}}

.offer-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:start;margin-top:clamp(36px,5vw,56px)}
@media (max-width:920px){.offer-grid{grid-template-columns:minmax(0,1fr)}}
.form,.done{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);padding:clamp(20px,3.5vw,40px);box-shadow:0 24px 48px -32px color-mix(in srgb,var(--ink) 35%,transparent)}
.form{display:grid;gap:20px;position:relative}
.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
@media (max-width:560px){.form-row{grid-template-columns:minmax(0,1fr)}}
.field{display:grid;gap:7px;min-width:0;align-content:start}
.field label{font-weight:600;font-size:.9375rem}
.opt{font-weight:400;color:var(--muted)}
.input{font:inherit;font-size:1rem;line-height:1.4;color:var(--ink);background:var(--field);border:1px solid var(--line-strong);border-radius:var(--radius);padding:.75em .9em;width:100%;min-width:0;caret-color:var(--accent-text);transition:border-color .15s}
.input::placeholder{color:var(--muted);opacity:1}
.input:hover{border-color:var(--ink)}
.input:focus{outline:2px solid var(--accent-text);outline-offset:-1px;border-color:transparent}
select.input{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 20px) 55%,calc(100% - 15px) 55%;background-size:5px 5px;background-repeat:no-repeat;padding-right:2.4em}
textarea.input{min-height:7.5rem;resize:vertical}
.money{display:flex;align-items:stretch;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--field);overflow:hidden}
.money:hover{border-color:var(--ink)}
.money:focus-within{outline:2px solid var(--accent-text);outline-offset:-1px;border-color:transparent}
.money span{display:flex;align-items:center;flex:none;white-space:nowrap;padding:0 .85em;font-size:.875rem;font-weight:600;color:var(--muted);background:var(--surface-2);border-right:1px solid var(--line)}
.money .input{border:0;border-radius:0;font-variant-numeric:tabular-nums;font-size:1.125rem;font-weight:600}
.money .input:focus{outline:0}
.input[aria-invalid="true"],.money:has([aria-invalid="true"]){border-color:var(--danger)}
.hint{font-size:.8125rem;color:var(--muted);margin:0}
.err{font-size:.875rem;color:var(--danger);margin:0;font-weight:500}
.check{display:flex;gap:12px;align-items:flex-start;font-size:.9375rem;line-height:1.5}
.check input{width:18px;height:18px;margin:3px 0 0;flex:none;accent-color:var(--accent)}
.hp{position:absolute!important;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.bot{display:flex;align-items:center;gap:10px;min-height:65px;padding:0 16px;border:1px dashed var(--line-strong);border-radius:var(--radius);font-size:.8125rem;color:var(--muted)}
.submit-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px}
.form-note{font-size:.8125rem;color:var(--muted);margin:0;max-width:24rem}
.done{display:grid;gap:12px;align-content:start}
.done:focus{outline:none}
.done h3{font-family:var(--font-display);font-weight:var(--h-weight,600);font-size:1.6rem;margin:0}
.done p{margin:0}
.done b{overflow-wrap:anywhere}

.safe{display:grid;gap:18px;align-content:start}
.safe h3{font-family:var(--font-display);font-weight:var(--h-weight,600);font-size:1.4rem;line-height:1.2;margin:0}
.safe ul{margin:0;padding:0;list-style:none;display:grid;gap:16px}
.safe li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px}
.safe li svg{width:20px;height:20px;margin-top:3px;color:var(--accent-text);fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.alert{margin:0;padding:18px 20px;background:var(--surface);border:1.5px solid var(--ink);border-radius:var(--radius);font-weight:600;line-height:1.45}

/* Other names: each one carries its own mark and colours. */
.others{list-style:none;margin:clamp(32px,4vw,48px) 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(19rem,1fr));gap:0 40px;border-top:1px solid var(--line)}
.others a{display:grid;grid-template-columns:44px minmax(0,1fr);gap:2px 16px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink)}
.others .tile{grid-row:span 2;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;transition:transform .25s cubic-bezier(.3,1.4,.5,1)}
.others .tile .mark{width:26px;height:26px}
.others b{font-family:var(--font-display);font-weight:var(--h-weight,600);font-size:1.1rem;line-height:1.2;overflow-wrap:anywhere}
.others span{font-size:.875rem;color:var(--muted);line-height:1.35}
.others a:hover b{color:var(--accent-text)}
.others a:hover .tile{transform:rotate(-6deg)}
.more{margin:24px 0 0}

/* Brand concept: a compact brand book. Mock colours are fixed brand values (--p*, --lk-*, --lp-*). */
.bb{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);grid-template-areas:"cover pos" "cover type" "pal pal";gap:clamp(12px,1.6vw,18px);margin-top:clamp(36px,5vw,56px)}
.bb-cover{grid-area:cover;min-height:clamp(240px,30vw,400px);font-size:clamp(1.8rem,4.2vw,3.4rem)}
.bb-pos{grid-area:pos;min-height:clamp(150px,14vw,190px);font-size:clamp(1.3rem,2.2vw,1.8rem)}
.bb-type{grid-area:type;display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:center;padding:clamp(18px,2.4vw,28px);border-radius:var(--radius-card);background:var(--bg);box-shadow:inset 0 0 0 1px var(--line)}
.bb-aa{font-family:var(--font-display);font-weight:var(--name-weight,600);font-size:clamp(3.2rem,5.4vw,4.6rem);line-height:.9;color:var(--accent-text)}
.bb-type b{display:block;font-family:var(--font-display);font-weight:var(--name-weight,600);font-size:1.3rem;line-height:1.15}
.bb-type span{display:block;font-size:.875rem;color:var(--muted);margin-top:4px}
.bb-pal{grid-area:pal;list-style:none;margin:0;padding:0;display:flex;min-height:clamp(120px,12vw,150px);border-radius:var(--radius-card);overflow:hidden;box-shadow:inset 0 0 0 1px var(--line)}
.bb-pal li{flex:var(--w,1) 1 0;min-width:0;display:flex;flex-direction:column;justify-content:flex-end;gap:2px;padding:14px 16px;background:var(--sw);color:var(--sw-ink)}
.bb-pal b{font-size:.875rem;font-weight:600;line-height:1.2}
.bb-pal code{font-family:var(--font-mono);font-size:.75rem;opacity:.85}
@media (max-width:900px){.bb{grid-template-columns:minmax(0,1fr);grid-template-areas:"cover" "pos" "type" "pal"}}
@media (max-width:560px){.bb-pal{flex-direction:column;min-height:0}.bb-pal li{flex:none;min-height:64px;flex-direction:row;justify-content:space-between;align-items:flex-end}}
.lockup{display:flex;align-items:center;justify-content:center;gap:.45em;padding:24px 20px;border-radius:var(--radius-card);overflow:hidden}
.lockup-pos{background:var(--lp-bg);color:var(--lp-ink);box-shadow:inset 0 0 0 1px var(--line);--mark-acc:var(--lp-acc);--wm-acc:var(--lp-wm)}
.lockup-neg{background:var(--lk-bg);color:var(--lk-ink);--mark-acc:var(--lk-acc);--wm-acc:var(--lk-acc)}
.lockup .mark{width:1.5em;height:1.5em;flex:none}
.wordmark{font-family:var(--font-display);font-weight:var(--name-weight,600);line-height:1;white-space:nowrap}
.mocks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,3vw,40px);margin:clamp(12px,1.6vw,18px) 0 0;padding:clamp(28px,4vw,56px);border-radius:var(--radius-card);background:var(--bg);box-shadow:inset 0 0 0 1px var(--line)}
@media (max-width:900px){.mocks{grid-template-columns:minmax(0,1fr)}}
.mock{margin:0;display:grid;grid-template-rows:minmax(240px,1fr) auto;gap:14px;min-width:0;justify-items:center}
.mock-stage{display:grid;place-items:center;width:100%;min-width:0}
.mock figcaption{font-size:.8125rem;color:var(--muted);text-align:center}
.home{display:grid;justify-items:center;gap:10px;font-size:.8rem;color:var(--ink)}
.app-icon{width:104px;height:104px;border-radius:24px;display:grid;place-items:center;background:var(--lk-bg);color:var(--lk-ink);--mark-acc:var(--lk-acc);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--lk-ink) 12%,transparent),0 14px 28px -14px rgba(0,0,0,.55)}
.app-icon.round{border-radius:50%}
.app-icon .mark{width:58px;height:58px}
.app-icon.sm{width:56px;height:56px;border-radius:14px;box-shadow:none}
.app-icon.sm .mark{width:34px;height:34px}
.campaign{position:relative;margin:clamp(12px,1.6vw,18px) 0 0;border-radius:var(--radius-card);overflow:hidden;background:var(--lk-bg)}
.campaign img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;max-height:680px}
.campaign::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.58),rgba(0,0,0,0) 62%);pointer-events:none}
.campaign-right::after{background:linear-gradient(270deg,rgba(0,0,0,.58),rgba(0,0,0,0) 62%)}
.campaign-over{position:absolute;z-index:1;left:clamp(18px,4vw,56px);bottom:clamp(18px,4vw,56px);max-width:min(28rem,70%);color:#FFFFFF;display:grid;gap:14px;--mark-acc:var(--lk-acc);--wm-acc:var(--lk-acc)}
.campaign-right .campaign-over{left:auto;right:clamp(18px,4vw,56px);text-align:right;justify-items:end}
.campaign-top::after{background:linear-gradient(180deg,rgba(0,0,0,.52),rgba(0,0,0,0) 58%)}
.campaign-top .campaign-over{bottom:auto;top:clamp(18px,4vw,56px)}
.campaign-lockup{display:flex;align-items:center;gap:.45em;font-size:clamp(1.4rem,3.2vw,2.5rem)}
.campaign-lockup .mark{width:1.5em;height:1.5em;flex:none}
.campaign-over p{margin:0;font-family:var(--font-display);font-size:clamp(1.05rem,2.3vw,1.6rem);line-height:1.2;text-wrap:balance}
.campaign-light::after{display:none}
.campaign-light .campaign-over{color:var(--lp-ink);--mark-acc:var(--lp-acc);--wm-acc:var(--lp-wm)}
@media (max-width:560px){.campaign img{aspect-ratio:4/5}.campaign-top .campaign-over{top:auto;bottom:18px}.campaign::after,.campaign-right::after,.campaign-top::after{background:linear-gradient(0deg,rgba(0,0,0,.62),rgba(0,0,0,0) 60%)}.campaign-over,.campaign-right .campaign-over{left:18px;right:18px;max-width:none;text-align:left;justify-items:start}}

.foot{border-top:1px solid var(--line);color:var(--muted);font-size:.875rem}
.foot .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:12px 28px;padding-block:32px}
.foot p{margin:0 auto 0 0;max-width:36rem}
.foot a{color:var(--ink)}
.linkbtn{font:inherit;color:var(--ink);background:none;border:0;padding:0;text-decoration:underline;text-underline-offset:.2em;text-decoration-thickness:1px;cursor:pointer}

.legal{max-width:44rem}
.legal h1{font-family:var(--font-display);font-weight:var(--h-weight,600);font-size:clamp(2.2rem,5vw,3.4rem);line-height:1.05;letter-spacing:var(--h-tracking,-.01em);margin:0 0 12px}
.legal .updated{color:var(--muted);font-size:.9375rem;margin:0 0 28px}
.legal h2{font-family:var(--font-display);font-weight:var(--h-weight,600);font-size:1.3rem;margin:40px 0 10px}
.legal p,.legal li{color:var(--ink)}
.legal ul{padding-left:1.2rem;display:grid;gap:6px}
.legal mark{background:var(--surface-2);color:var(--danger);padding:0 .25em;border-radius:3px}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;animation-delay:0s!important;transition:none!important;scroll-behavior:auto!important}}
.next{margin:clamp(32px,4vw,48px) 0 0}
/* The bar's button stays quiet while the hero's own button is on screen, then takes over. */
.bar-cta{background:transparent;color:var(--accent-text);box-shadow:inset 0 0 0 1.5px currentColor;transition:background .25s,color .25s,box-shadow .25s}
.bar-cta:hover{color:var(--accent-text)}
.bar.is-past .bar-cta{background:var(--accent);color:var(--accent-ink);box-shadow:none}
.bar.is-past .bar-cta:hover{color:var(--accent-ink)}


.jv-hero{padding-block:clamp(40px,5vw,76px) clamp(48px,6vw,88px);border-bottom:1px solid var(--line)}
.jv-name{margin:0;font-family:var(--font-display)}
.jv-word{display:block;font-weight:800;font-stretch:150%;font-size:clamp(3.4rem,13.2vw,11.2rem);line-height:.84;letter-spacing:-.035em}
.jv-hero .sale{margin-top:.55em}
.jv-ed{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(20px,3vw,44px);align-items:end;margin-top:clamp(28px,4vw,48px)}
@media (max-width:900px){.jv-ed{grid-template-columns:minmax(0,1fr)}}
.jv-mon{position:relative;margin:0;aspect-ratio:16/9;border-radius:var(--radius-card);overflow:hidden;background:var(--mon-bg);color:var(--mon-ink);font-family:var(--font-mono);font-size:.7rem}
.jv-mon img{display:block;width:100%;height:100%;object-fit:cover}
.jv-mon::before{content:"";position:absolute;inset:6% 5%;border:1px solid color-mix(in srgb,var(--mon-ink) 30%,transparent);border-radius:2px;pointer-events:none}
.jv-chip{position:absolute;padding:3px 7px;border-radius:4px;background:color-mix(in srgb,var(--mon-bg) 70%,transparent)}
.jv-chip.tl{left:12px;top:10px}.jv-chip.br{right:12px;bottom:10px;color:var(--c3);font-variant-numeric:tabular-nums}
.jv-chip.tl::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--c1);margin-right:6px;vertical-align:.05em}
.jv-side .lead{font-size:1.1rem}
.jv-tl{margin-top:clamp(16px,2vw,24px);border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);padding:12px 14px 14px;font-family:var(--font-mono);font-size:.72rem;color:var(--muted)}
.jv-top{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px}
.jv-tc{color:var(--accent-text);font-variant-numeric:tabular-nums}
.jv-body{display:grid;grid-template-columns:24px minmax(0,1fr);gap:8px}
.jv-labels,.jv-area{display:grid;grid-template-rows:10px repeat(3,30px);row-gap:6px;align-items:center}
.jv-area{position:relative;align-items:stretch}
.jv-ruler{background:repeating-linear-gradient(90deg,var(--line-strong) 0 1px,transparent 1px 12.5%),repeating-linear-gradient(90deg,var(--line) 0 1px,transparent 1px 2.5%);background-size:100% 10px,100% 5px;background-repeat:no-repeat;background-position:0 0,0 5px}
.jv-lane{position:relative;border-radius:4px;background:var(--track)}
.jv-clip{position:absolute;top:3px;bottom:3px;border-radius:3px;background:var(--c);color:var(--clip-ink);padding:0 8px;display:flex;align-items:center;white-space:nowrap;overflow:hidden;font-size:.68rem}
.k1{--c:var(--c1)}.k2{--c:var(--c2)}.k3{--c:var(--c3)}.jv-clip.k3{color:var(--clip-ink-3)}
.p1{left:6%;width:22%}.p2{left:52%;width:28%}.p3{left:0;width:34%}.p4{left:35%;width:35%}.p5{left:71%;width:29%}.p6{left:0;width:100%}
.jv-head{position:absolute;inset:0;pointer-events:none}
.jv-move{position:absolute;top:0;bottom:0;left:0;width:0;animation:jv-play 8s linear infinite}
.jv-move::before{content:"";position:absolute;left:0;top:-2px;bottom:0;width:2px;background:var(--accent)}
.jv-move::after{content:"";position:absolute;left:-5px;top:-4px;border:6px solid transparent;border-top-color:var(--accent)}
@keyframes jv-play{from{left:0}to{left:100%}}
@media (prefers-reduced-motion:reduce){.jv-move{animation:none!important;left:38%}}
.uses li:nth-child(1){--use-rule:3px solid var(--c1)}.uses li:nth-child(2){--use-rule:3px solid var(--c2)}.uses li:nth-child(3){--use-rule:3px solid var(--c3)}
.h2,.use h3,.done h3,.safe h3{font-stretch:125%}
.h2{font-size:clamp(2rem,4.2vw,3.4rem)}


.mark{display:block;overflow:visible}
.mark .ln{fill:none;stroke:currentColor}
.mark .fl{fill:currentColor}
.mark .acc{fill:var(--mark-acc,currentColor)}
.mark .acc-ln{fill:none;stroke:var(--mark-acc,currentColor)}
.mark .on{fill:var(--mark-on,currentColor)}
.mark text{font-family:"Zen Maru Gothic","Hiragino Maru Gothic ProN",sans-serif;font-weight:700}
.mk-kimiware{--mark-on:#FFFFFF}
.mk-jamveo{--mark-on:#130F19}
.mk-sparksesl .fl{fill:#1D3A31}
.mk-sparksesl .acc-ln{stroke:#F5B81F}

.tile-drillkit{background:#121517;color:#E6E9EA;--mark-acc:#FF5B14}
.tile-springcedar{background:#1D2A21;color:#EDF0E6;--mark-acc:#D9895B}
.tile-euryko{background:#1E33E0;color:#FFFFFF;--mark-acc:#FF6B3D}
.tile-kimiware{background:#1C1B19;color:#F5F3EE;--mark-acc:#CF3B24}
.tile-anglikos{background:#0F2A44;color:#F4F6F8;--mark-acc:#D8A64C}
.tile-fluentjam{background:#B0144D;color:#FFFFFF;--mark-acc:#FF964F}
.tile-sparksesl{background:#1D3A31;color:#F1EFE5;--mark-acc:#F5B81F}
.tile-jamveo{background:#130F19;color:#F3EEF6;--mark-acc:#FFB547}
:root{--p1:#130F19;--p2:#FFB547;--p3:#FF5C8A;--p4:#6CD4C4;--p5:#F3EEF6;--lk-bg:#130F19;--lk-ink:#F3EEF6;--lk-acc:#FFB547;--lp-bg:#F3EEF6;--lp-ink:#130F19;--lp-acc:#FFB547;--lp-wm:#130F19}
.bb-pal .sw-1{--sw:#130F19;--sw-ink:#FFFFFF;--w:5}.bb-pal .sw-2{--sw:#FFB547;--sw-ink:#141414;--w:3}.bb-pal .sw-3{--sw:#FF5C8A;--sw-ink:#141414;--w:1.7}.bb-pal .sw-4{--sw:#6CD4C4;--sw-ink:#141414;--w:1.2}

.wm-jamveo{font-weight:800;font-stretch:150%;letter-spacing:-.03em}
.lockup .mk-jamveo,.app-icon .mk-jamveo,.jv-thumb .mk-jamveo{--mark-acc:var(--p2)}
.jv-thumb{position:relative;width:100%;max-width:290px;aspect-ratio:16/9;border-radius:10px;overflow:hidden;background:var(--p1);display:grid;place-items:center;color:var(--p5)}
.jv-thumb .mark{width:64px;height:64px;position:relative}
.jv-thumb-bands{position:absolute;inset:auto 0 0 0;display:grid;grid-template-columns:3fr 2fr 4fr;height:5px}
.jv-thumb-bands i:nth-child(1){background:var(--p3)}.jv-thumb-bands i:nth-child(2){background:var(--p2)}.jv-thumb-bands i:nth-child(3){background:var(--p4)}
.jv-thumb-t{position:absolute;left:12px;bottom:14px;font-size:.78rem;font-weight:600}
.jv-thumb-tc{position:absolute;right:10px;top:10px;font-family:var(--font-mono);font-size:.68rem;padding:2px 6px;border-radius:4px;background:color-mix(in srgb,var(--p5) 16%,var(--p1))}
.jv-live{width:100%;max-width:280px;background:var(--surface);border-radius:12px;padding:16px;box-shadow:inset 0 0 0 1px var(--line)}
.jv-live-top{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:.7rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.jv-rec{display:inline-flex;align-items:center;gap:6px;color:var(--c1)}
.jv-rec::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--c1)}
.jv-live-t{font-family:var(--font-display);font-weight:800;font-size:1.25rem;letter-spacing:-.03em;line-height:1.15;margin:12px 0 16px}
.jv-live-foot{display:flex;justify-content:space-between;align-items:center;gap:10px}
.jv-avs{display:flex;padding-left:8px}
.jv-avs i{width:28px;height:28px;border-radius:8px;border:2px solid var(--surface);margin-left:-8px;background:var(--c1)}
.jv-avs i:nth-child(2){background:var(--c2)}.jv-avs i:nth-child(3){background:var(--c3)}
.jv-live-btn{padding:8px 14px;border-radius:999px;background:var(--accent);color:var(--accent-ink);font-weight:600;font-size:.82rem;white-space:nowrap}
