/* SOULULAB /demo/ — Product Journey */
html[data-theme="base"] body.home-demo-page {
    --hd-ink: #16191f;
    --hd-muted: rgba(22, 25, 31, .62);
    --hd-line: rgba(64, 75, 89, .14);
    --hd-glass: rgba(255, 255, 255, .54);
    --hd-glass-strong: rgba(255, 255, 255, .72);
    --hd-shadow: 0 28px 70px rgba(68, 82, 99, .12), inset 0 1px 0 rgba(255,255,255,.9);
    --hd-accent: 145, 174, 197;
    background:
        radial-gradient(circle at 13% 18%, rgba(207, 226, 241, .72), transparent 32%),
        radial-gradient(circle at 82% 20%, rgba(244, 214, 240, .32), transparent 28%),
        linear-gradient(180deg, #eef7fb 0%, #fbfdfe 32%, #ffffff 65%, #edf1f4 100%) !important;
}

.home-demo-page::after { display:none !important; }
.home-demo-page .soul-header { z-index: 10020 !important; }
.home-demo-page .soul-footer { position:relative; z-index:3; }
.home-demo-page .soulu-callback { z-index: 11000; }

.hd-main { position:relative; z-index:1; overflow:clip; }
.hd-story { position:relative; min-height:100vh; }
.hd-stage {
    position:sticky;
    top:0;
    height:100vh;
    min-height:680px;
    overflow:hidden;
    isolation:isolate;
    background:
        radial-gradient(circle at 82% 18%, rgba(var(--hd-accent), .12), transparent 34%),
        radial-gradient(circle at 10% 88%, rgba(255,255,255,.84), transparent 40%);
    transition:background 800ms ease;
}
.hd-stage::before {
    content:"";
    position:absolute;
    inset:0;
    z-index:-3;
    background:
        linear-gradient(115deg, rgba(255,255,255,.72), rgba(255,255,255,.2) 34%, transparent 58%),
        linear-gradient(180deg, rgba(225,239,247,.66) 0%, rgba(255,255,255,.78) 48%, rgba(223,229,235,.52) 100%);
}
.hd-stage::after {
    content:"";
    position:absolute;
    inset:0;
    z-index:-2;
    opacity:.55;
    background-image:linear-gradient(rgba(50,65,82,.035) 1px, transparent 1px),linear-gradient(90deg, rgba(50,65,82,.035) 1px, transparent 1px);
    background-size:76px 76px;
    mask-image:linear-gradient(to bottom, transparent, #000 22%, #000 80%, transparent);
}

.hd-ambient { position:absolute; inset:0; z-index:-1; pointer-events:none; }
.hd-ambient__orb { position:absolute; border-radius:50%; filter:blur(1px); opacity:.72; transition:transform 1.2s ease, background 1.2s ease; }
.hd-ambient__orb--one { width:430px; height:430px; right:-110px; top:-130px; background:radial-gradient(circle, rgba(var(--hd-accent),.18), transparent 68%); }
.hd-ambient__orb--two { width:360px; height:360px; left:23%; bottom:-210px; background:radial-gradient(circle, rgba(255,255,255,.94), transparent 70%); }
.hd-ambient__orb--three { width:260px; height:260px; right:27%; top:32%; background:radial-gradient(circle, rgba(221,226,232,.32), transparent 70%); }
.hd-ambient__line { position:absolute; height:1px; width:45vw; background:linear-gradient(90deg, transparent, rgba(var(--hd-accent),.28), transparent); transform-origin:left center; }
.hd-ambient__line--one { left:48%; top:26%; transform:rotate(-17deg); }
.hd-ambient__line--two { left:52%; top:67%; transform:rotate(13deg); }

.hd-stage[data-accent="spectrum"] { --hd-accent: 177, 89, 194; }
.hd-stage[data-accent="web"] { --hd-accent: 83, 178, 231; }
.hd-stage[data-accent="flow"] { --hd-accent: 153, 77, 188; }
.hd-stage[data-accent="nko"] { --hd-accent: 205, 37, 146; }
.hd-stage[data-accent="mvp"] { --hd-accent: 34, 184, 193; }
.hd-stage[data-accent="club"] { --hd-accent: 110, 91, 169; }
.hd-stage[data-accent="contact"] { --hd-accent: 87, 161, 185; }

.hd-stage__layout {
    width:min(1720px, calc(100% - 56px));
    height:100%;
    margin:0 auto;
    padding:92px 0 22px;
    display:grid;
    grid-template-columns:220px minmax(0,1fr);
    gap:34px;
}

/* Route */
.hd-route {
    position:relative;
    z-index:4;
    align-self:center;
    height:min(760px, calc(100vh - 118px));
    padding:22px 12px 22px 0;
    display:flex;
    flex-direction:column;
    justify-content:center;
}
.hd-route__head { margin:0 0 18px 34px; display:grid; gap:4px; }
.hd-route__head span { font-size:10px; letter-spacing:.18em; font-weight:800; color:rgba(26,30,38,.38); }
.hd-route__head strong { font-size:13px; letter-spacing:-.02em; color:rgba(26,30,38,.68); }
.hd-route__rail { position:absolute; left:9px; top:104px; bottom:43px; width:1px; background:rgba(55,65,78,.13); overflow:hidden; }
.hd-route__rail i { display:block; width:100%; height:0%; background:linear-gradient(180deg,#d731b6,#ff9b3d,#78bb4b,#4da9e5); box-shadow:0 0 13px rgba(var(--hd-accent),.46); transition:height 550ms cubic-bezier(.2,.8,.2,1); }
.hd-route__list { list-style:none; padding:0; margin:0; display:grid; gap:6px; }
.hd-route__item {
    width:100%;
    border:0;
    background:none;
    display:grid;
    grid-template-columns:20px 1fr;
    align-items:center;
    gap:14px;
    min-height:54px;
    padding:5px 0;
    text-align:left;
    color:rgba(27,31,38,.38);
    transition:color 420ms ease, transform 420ms ease;
}
.hd-route__dot {
    width:8px; height:8px; border-radius:999px; margin-left:5px;
    background:#c9d0d6; border:1px solid rgba(255,255,255,.85);
    box-shadow:0 0 0 0 rgba(var(--hd-accent),0);
    transition:transform 420ms ease, background 420ms ease, box-shadow 420ms ease;
}
.hd-route__label { font-size:12px; font-weight:700; line-height:1.25; }
.hd-route__item.is-past { color:rgba(27,31,38,.28); }
.hd-route__item.is-next { color:rgba(27,31,38,.56); }
.hd-route__item.is-active { color:#15191f; transform:translateX(3px); }
.hd-route__item.is-active .hd-route__dot { transform:scale(1.75); background:rgb(var(--hd-accent)); box-shadow:0 0 0 6px rgba(var(--hd-accent),.09),0 0 18px rgba(var(--hd-accent),.34); }
.hd-route__item.is-next .hd-route__dot { box-shadow:0 0 0 4px rgba(var(--hd-accent),.05); }

/* Panels */
.hd-panels { position:relative; min-width:0; height:100%; }
.hd-panel {
    position:absolute;
    inset:0;
    display:grid;
    grid-template-columns:minmax(420px,.84fr) minmax(560px,1.16fr);
    gap:clamp(34px, 4vw, 88px);
    align-items:center;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(22px) scale(.992);
    filter:blur(7px);
    transition:opacity 560ms ease, transform 680ms cubic-bezier(.2,.8,.2,1), filter 560ms ease, visibility 0s linear 680ms;
}
.hd-panel.is-active { opacity:1; visibility:visible; pointer-events:auto; transform:none; filter:none; transition-delay:0s; }


@media (min-width: 821px) {
    .hd-reveal {
        opacity: 0;
        transform: translate3d(0, 30px, 0) scale(.985);
        filter: blur(8px);
        transition:
            opacity 620ms ease,
            transform 820ms cubic-bezier(.18,.8,.2,1),
            filter 620ms ease;
        will-change: opacity, transform, filter;
    }
    .hd-reveal.is-visible {
        opacity: 1;
        transform: none;
        filter: none;
    }
    .hd-visual.hd-reveal {
        transform: translate3d(22px, 0, 0) scale(.98);
    }
    .hd-brandline.hd-reveal.is-visible { transition-delay: 0ms; }
    .hd-eyebrow.hd-reveal.is-visible { transition-delay: 40ms; }
    .hd-title.hd-reveal.is-visible { transition-delay: 80ms; }
    .hd-offer.hd-reveal.is-visible { transition-delay: 120ms; }
    .hd-description.hd-reveal.is-visible,
    .hd-mvp-economics.hd-reveal.is-visible { transition-delay: 170ms; }
    .hd-tags.hd-reveal.is-visible { transition-delay: 220ms; }
    .hd-launch-mini.hd-reveal.is-visible { transition-delay: 260ms; }
    .hd-actions.hd-reveal.is-visible { transition-delay: 320ms; }
    .hd-visual.hd-reveal.is-visible { transition-delay: 160ms; }

    .hd-visual .hd-browser,
    .hd-visual .hd-screen-card,
    .hd-visual .hd-flow-chain,
    .hd-visual .hd-cofund,
    .hd-visual .hd-mvp-card,
    .hd-visual .hd-mvp-other,
    .hd-visual .hd-club-grid article,
    .hd-visual .hd-form,
    .hd-visual .hd-visual-caption,
    .hd-visual .hd-brand-orbit {
        opacity: 0;
        transform: translate3d(0, 24px, 0) scale(.975);
        filter: blur(10px);
        transition:
            opacity 680ms ease,
            transform 920ms cubic-bezier(.18,.8,.2,1),
            filter 680ms ease;
    }
    .hd-visual.is-visible .hd-browser,
    .hd-visual.is-visible .hd-screen-card,
    .hd-visual.is-visible .hd-flow-chain,
    .hd-visual.is-visible .hd-cofund,
    .hd-visual.is-visible .hd-mvp-card,
    .hd-visual.is-visible .hd-mvp-other,
    .hd-visual.is-visible .hd-club-grid article,
    .hd-visual.is-visible .hd-form,
    .hd-visual.is-visible .hd-visual-caption,
    .hd-visual.is-visible .hd-brand-orbit {
        opacity: 1;
        transform: none;
        filter: none;
    }
    .hd-visual.is-visible .hd-browser--1,
    .hd-visual.is-visible .hd-screen-card--1,
    .hd-visual.is-visible .hd-mvp-card:nth-child(1),
    .hd-visual.is-visible .hd-club-grid article:nth-child(1) { transition-delay: 80ms; }
    .hd-visual.is-visible .hd-browser--2,
    .hd-visual.is-visible .hd-screen-card--2,
    .hd-visual.is-visible .hd-mvp-card:nth-child(2),
    .hd-visual.is-visible .hd-club-grid article:nth-child(2) { transition-delay: 180ms; }
    .hd-visual.is-visible .hd-browser--3,
    .hd-visual.is-visible .hd-screen-card--3,
    .hd-visual.is-visible .hd-mvp-card:nth-child(3),
    .hd-visual.is-visible .hd-club-grid article:nth-child(3),
    .hd-visual.is-visible .hd-flow-chain,
    .hd-visual.is-visible .hd-visual-caption,
    .hd-visual.is-visible .hd-mvp-other,
    .hd-visual.is-visible .hd-form { transition-delay: 300ms; }
    .hd-visual.is-visible .hd-brand-orbit,
    .hd-visual.is-visible .hd-cofund { transition-delay: 120ms; }
}
.hd-copy { min-width:0; max-width:780px; padding-bottom:18px; }
.hd-brandline { display:flex; align-items:center; gap:11px; margin-bottom:20px; }
.hd-brandline img { width:30px; height:auto; filter:drop-shadow(0 9px 14px rgba(46,55,68,.13)); }
.hd-brandline__word { font-size:16px; letter-spacing:-.035em; font-weight:900; color:#424851; }
.hd-brandline__word b { font-weight:900; color:#50565e; background:linear-gradient(180deg,#737b84,#30343a 45%,#7d858e 74%,#373b41); -webkit-background-clip:text; background-clip:text; color:transparent; }
.hd-brandline__word em, .hm-card strong em, .hd-brand-map__card strong em, .hd-brand-map__stack em { font-style:normal; font-weight:800; }
.hm-card strong b, .hd-brand-map__card strong b, .hd-brand-map__stack b, .hm-title__brand { background:linear-gradient(180deg,#f7f7f8 0%,#bfc3c9 24%,#eef1f4 42%,#888f99 58%,#e8eaed 74%,#7d838c 100%); -webkit-background-clip:text; background-clip:text; color:transparent; text-shadow:0 1px 1px rgba(255,255,255,.06); }
.hd-word-web { background:linear-gradient(110deg,#2f7fae,#73c7f0 42%,#e6f8ff 58%,#6ab8e5 75%,#2a719a); -webkit-background-clip:text; background-clip:text; color:transparent; }
.hd-word-flow { background:linear-gradient(90deg,#bc2da9 4%,#ef7c3d 36%,#77b94b 66%,#4fabe0 95%); -webkit-background-clip:text; background-clip:text; color:transparent; }
.hd-word-nko { color:#cc2f92; }
.hd-word-b2b { color:#e57e35; }
.hd-word-b2c { color:#7fb84a; }
.hd-word-b2g { color:#4aa6dc; }
.hd-word-ai { background:linear-gradient(90deg,#8c66ff 0%,#ff43ba 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
.hd-word-studio { background:linear-gradient(90deg,#8c66ff 0%,#ff43ba 34%,#43d5f2 68%,#2857ff 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
.hd-word-club { background:linear-gradient(90deg,#8c66ff 0%,#ff43ba 34%,#43d5f2 68%,#2857ff 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
.hd-eyebrow { margin:0 0 12px; text-transform:uppercase; letter-spacing:.16em; font-size:11px; font-weight:800; color:rgb(var(--hd-accent)); }
.hd-title { margin:0; max-width:760px; font-size:clamp(2.9rem,4.85vw,6rem); line-height:.94; letter-spacing:-.07em; font-weight:850; text-wrap:balance; color:var(--hd-ink); }
.hd-panel--brand .hd-title { font-size:clamp(3.1rem,5vw,6.2rem); }
.hd-offer { margin:26px 0 0; max-width:700px; font-size:clamp(1.15rem,1.7vw,1.56rem); line-height:1.42; letter-spacing:-.025em; font-weight:650; color:rgba(21,25,31,.84); }
.hd-description { margin:16px 0 0; max-width:700px; font-size:15px; line-height:1.76; color:var(--hd-muted); }
.hd-tags { display:flex; flex-wrap:wrap; gap:8px; margin-top:24px; }
.hd-tags span { padding:9px 12px; border:1px solid rgba(var(--hd-accent),.16); border-radius:999px; background:rgba(255,255,255,.48); color:rgba(25,29,35,.68); font-size:11.5px; font-weight:650; backdrop-filter:blur(12px); }
.hd-actions { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin-top:28px; }
.hd-btn { min-height:52px; padding:0 20px; border-radius:18px; display:inline-flex; align-items:center; justify-content:center; gap:12px; border:1px solid transparent; font-size:13.5px; font-weight:800; transition:transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease, background 220ms ease; }
.hd-btn:hover { transform:translateY(-2px); }
.hd-btn--primary { color:white; background:linear-gradient(135deg, rgba(var(--hd-accent),.98), rgba(var(--hd-accent),.72)); box-shadow:0 16px 34px rgba(var(--hd-accent),.2),inset 0 1px 0 rgba(255,255,255,.32); }
.hd-btn--secondary { color:#2d333b; background:rgba(255,255,255,.5); border-color:rgba(53,64,77,.12); box-shadow:inset 0 1px 0 rgba(255,255,255,.75); backdrop-filter:blur(16px); }
.hd-btn--secondary:hover { background:rgba(255,255,255,.78); border-color:rgba(var(--hd-accent),.23); }

/* Visual frame */
.hd-visual { position:relative; min-width:0; height:min(780px, calc(100vh - 118px)); display:grid; place-items:center; align-self:center; }
.hd-visual::before { content:""; position:absolute; inset:4% 0 1%; border-radius:52px; background:linear-gradient(145deg, rgba(255,255,255,.72), rgba(255,255,255,.24)); border:1px solid rgba(255,255,255,.64); box-shadow:var(--hd-shadow); backdrop-filter:blur(28px); z-index:-1; }
.hd-visual-caption { position:absolute; bottom:20px; left:50%; transform:translateX(-50%); margin:0; white-space:nowrap; font-size:10px; letter-spacing:.08em; text-transform:uppercase; color:rgba(31,36,43,.38); }

/* Brand orbit */
.hd-brand-orbit { position:relative; width:min(560px,90%); aspect-ratio:1/1; display:grid; place-items:center; }
.hd-brand-orbit::before,.hd-brand-orbit::after { content:""; position:absolute; border-radius:50%; border:1px solid rgba(87,100,116,.11); }
.hd-brand-orbit::before { inset:8%; }
.hd-brand-orbit::after { inset:23%; border-style:dashed; }
.hd-brand-orbit__core { width:42%; aspect-ratio:1/1.08; display:grid; place-items:center; border-radius:42%; background:linear-gradient(145deg, rgba(255,255,255,.88), rgba(238,244,248,.36)); border:1px solid rgba(255,255,255,.9); box-shadow:0 28px 60px rgba(61,72,86,.13), inset 0 1px 0 #fff; backdrop-filter:blur(24px); }
.hd-brand-orbit__core img { width:56%; height:auto; animation:hd-float 7s ease-in-out infinite; }
.hd-brand-orbit__glass { position:absolute; border-radius:46% 54% 53% 47%; border:1px solid rgba(255,255,255,.72); background:linear-gradient(135deg,rgba(218,236,247,.26),rgba(255,255,255,.05)); backdrop-filter:blur(12px); }
.hd-brand-orbit__glass--one { width:64%; height:20%; transform:rotate(-28deg); }
.hd-brand-orbit__glass--two { width:20%; height:68%; transform:rotate(22deg); }
.hd-orbit-chip { position:absolute; padding:9px 12px; border-radius:999px; font-size:10px; font-weight:800; letter-spacing:.02em; background:rgba(255,255,255,.65); border:1px solid rgba(255,255,255,.82); box-shadow:0 12px 30px rgba(74,89,106,.1); backdrop-filter:blur(18px); }
.hd-orbit-chip--web { left:2%; top:25%; color:#317da8; }
.hd-orbit-chip--flow { right:0; top:21%; color:#8e3b9f; }
.hd-orbit-chip--nko { right:2%; bottom:24%; color:#b01d77; }
.hd-orbit-chip--ai { left:5%; bottom:21%; color:#5871a1; }
.hd-orbit-chip--club { left:39%; bottom:3%; color:#6f5c9a; }

/* Web stack */
.hd-web-stack { position:relative; width:92%; height:82%; }
.hd-browser { position:absolute; margin:0; border-radius:20px; overflow:hidden; border:1px solid rgba(255,255,255,.82); background:#fff; box-shadow:0 26px 55px rgba(49,61,75,.17),inset 0 1px 0 #fff; transition:transform .7s cubic-bezier(.2,.8,.2,1); }
.hd-browser__bar { height:26px; display:flex; gap:5px; align-items:center; padding:0 11px; background:linear-gradient(180deg,#fbfcfd,#eef2f5); border-bottom:1px solid #e6ebef; }
.hd-browser__bar i { width:6px; height:6px; border-radius:50%; background:#c8d0d6; }
.hd-browser__viewport { overflow:hidden; background:#f7f9fa; }
.hd-browser__viewport img { width:100%; height:auto; min-height:100%; object-fit:cover; object-position:top; }
.hd-browser--1 { width:43%; left:2%; top:4%; transform:rotate(-4deg); z-index:1; }
.hd-browser--1 .hd-browser__viewport { height:430px; }
.hd-browser--2 { width:43%; right:2%; top:1%; transform:rotate(4.5deg); z-index:2; }
.hd-browser--2 .hd-browser__viewport { height:400px; }
.hd-browser--3 { width:44%; left:29%; bottom:0; transform:rotate(.5deg); z-index:4; }
.hd-browser--3 .hd-browser__viewport { height:345px; }
.hd-panel.is-active .hd-browser--1 { transform:rotate(-3deg) translateY(-4px); }
.hd-panel.is-active .hd-browser--2 { transform:rotate(3.3deg) translateY(4px); }
.hd-panel.is-active .hd-browser--3 { transform:rotate(.5deg) translateY(-8px); }

/* Product screens */
.hd-product-screens { position:relative; width:94%; height:82%; }
.hd-screen-card { position:absolute; margin:0; overflow:hidden; border-radius:22px; background:#f8fafb; border:1px solid rgba(255,255,255,.88); box-shadow:0 28px 66px rgba(56,67,81,.15); }
.hd-screen-card img { width:100%; height:auto; display:block; }
.hd-screen-card figcaption { position:absolute; left:12px; bottom:10px; padding:7px 10px; border-radius:10px; background:rgba(18,23,29,.74); color:#fff; font-size:9px; font-weight:700; backdrop-filter:blur(14px); }
.hd-screen-card__bar { display:flex; align-items:center; gap:5px; height:23px; padding:0 10px; background:linear-gradient(180deg,#fcfdfe,#edf1f4); border-bottom:1px solid #e2e7eb; }
.hd-screen-card__bar i { width:5px; height:5px; border-radius:50%; background:#c4ccd2; }
.hd-screen-card--1 { width:72%; left:1%; top:8%; z-index:3; transform:rotate(-1.7deg); }
.hd-screen-card--2 { width:61%; right:0; bottom:3%; z-index:4; transform:rotate(2.2deg); }
.hd-screen-card--3 { width:28%; right:3%; top:3%; z-index:5; transform:rotate(3deg); }
.hd-panel--flow .hd-screen-card--3 { width:24%; }
.hd-panel--flow .hd-screen-card--3 img { aspect-ratio:390/844; object-fit:cover; }
.hd-flow-chain { position:absolute; left:7%; bottom:18px; right:7%; display:flex; justify-content:center; gap:8px; align-items:center; flex-wrap:wrap; }
.hd-flow-chain span { padding:7px 9px; background:rgba(255,255,255,.68); border:1px solid rgba(var(--hd-accent),.15); border-radius:999px; font-size:9px; font-weight:800; }
.hd-flow-chain i { font-style:normal; color:rgba(var(--hd-accent),.7); font-size:10px; }
.hd-flow-chain--nko span { border-color:rgba(205,37,146,.16); }

/* MVP */
.hd-panel--mvp { grid-template-columns:minmax(340px,.82fr) minmax(520px,1.18fr); }
.hd-panel--mvp .hd-title { font-size:clamp(2.2rem,3.45vw,4rem); }
.hd-panel--mvp .hd-offer { font-size:clamp(1rem,1.28vw,1.24rem); }
.hd-panel--mvp .hd-description { line-height:1.55; }
.hd-mvp-economics { margin-top:17px; padding:13px 15px; border-radius:17px; border:1px solid rgba(var(--hd-accent),.13); background:rgba(255,255,255,.46); box-shadow:inset 0 1px 0 rgba(255,255,255,.8); }
.hd-mvp-economics strong { font-size:11px; letter-spacing:.03em; }
.hd-mvp-economics p { margin:6px 0 5px; font-size:11px; line-height:1.48; color:rgba(30,34,40,.65); }
.hd-mvp-economics span { font-size:10px; font-weight:750; color:rgb(var(--hd-accent)); }
.hd-panel--mvp .hd-tags { margin-top:13px; }
.hd-launch-mini { display:grid; grid-template-columns:repeat(3,1fr); gap:6px; margin-top:13px; }
.hd-launch-mini span { display:flex; align-items:center; gap:7px; font-size:9px; line-height:1.2; color:rgba(28,32,39,.55); }
.hd-launch-mini i { flex:0 0 20px; width:20px; height:20px; border-radius:50%; display:grid; place-items:center; font-style:normal; font-weight:800; font-size:8px; background:rgba(var(--hd-accent),.09); color:rgb(var(--hd-accent)); border:1px solid rgba(var(--hd-accent),.14); }
.hd-panel--mvp .hd-actions { margin-top:15px; }
.hd-mvp-visual { width:94%; display:grid; gap:10px; }
.hd-cofund { position:relative; display:grid; grid-template-columns:1fr 54px 1.45fr; gap:8px; align-items:center; padding:15px; border-radius:23px; border:1px solid rgba(255,255,255,.72); background:rgba(255,255,255,.47); box-shadow:inset 0 1px 0 #fff; }
.hd-cofund__companies { display:grid; gap:6px; }
.hd-cofund__companies span { padding:8px 9px; border-radius:10px; background:#fff; border:1px solid rgba(48,58,70,.09); font-size:9px; font-weight:800; }
.hd-cofund__join { display:grid; height:70px; align-items:center; }
.hd-cofund__join i { display:block; height:1px; background:linear-gradient(90deg,rgba(var(--hd-accent),.22),rgb(var(--hd-accent))); position:relative; }
.hd-cofund__join i::after { content:""; position:absolute; right:-2px; top:-3px; width:6px; height:6px; border-radius:50%; background:rgb(var(--hd-accent)); }
.hd-cofund__product { min-height:100px; display:flex; flex-direction:column; justify-content:center; padding:13px 15px; border-radius:18px; background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(var(--hd-accent),.07)); border:1px solid rgba(var(--hd-accent),.14); }
.hd-cofund__product small { font-size:8px; text-transform:uppercase; letter-spacing:.12em; color:rgba(31,35,42,.42); }
.hd-cofund__product strong { margin-top:5px; font-size:14px; line-height:1.1; letter-spacing:-.03em; }
.hd-cofund__product span { margin-top:7px; font-size:9px; color:rgba(31,35,42,.54); }
.hd-mvp-cards { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.hd-mvp-card { padding:13px; min-height:176px; display:flex; flex-direction:column; border-radius:19px; background:rgba(255,255,255,.62); border:1px solid rgba(255,255,255,.76); box-shadow:0 14px 34px rgba(55,66,79,.09),inset 0 1px 0 #fff; }
.hd-mvp-card div { display:grid; gap:4px; }
.hd-mvp-card b { font-size:11px; letter-spacing:-.02em; }
.hd-mvp-card div span { font-size:8px; text-transform:uppercase; letter-spacing:.08em; opacity:.56; }
.hd-mvp-card p { margin:12px 0; font-size:9px; line-height:1.5; color:rgba(27,31,37,.58); }
.hd-mvp-card button { margin-top:auto; border:0; border-radius:11px; min-height:35px; padding:7px 8px; color:white; font-size:8.5px; font-weight:800; }
.hd-mvp-card--b2b { box-shadow:inset 0 3px 0 #ee8b3e, 0 14px 34px rgba(55,66,79,.09); }
.hd-mvp-card--b2b button { background:#d97c37; }
.hd-mvp-card--b2c { box-shadow:inset 0 3px 0 #78b94d, 0 14px 34px rgba(55,66,79,.09); }
.hd-mvp-card--b2c button { background:#6ba945; }
.hd-mvp-card--b2g { box-shadow:inset 0 3px 0 #50a9df, 0 14px 34px rgba(55,66,79,.09); }
.hd-mvp-card--b2g button { background:#418fbe; }
.hd-mvp-other { border:0; padding:12px 14px; border-radius:15px; background:rgba(255,255,255,.58); border:1px solid rgba(56,67,80,.09); text-align:left; font-size:10px; color:rgba(26,30,36,.55); }
.hd-mvp-other b { color:rgb(var(--hd-accent)); }

/* Club */
.hd-panel--club .hd-title { font-size:clamp(2.2rem,3.5vw,4.2rem); }
.hd-club-grid { width:92%; display:grid; grid-template-columns:repeat(3,1fr); gap:8px; align-self:start; margin-top:56px; }
.hd-club-grid article { min-height:250px; display:flex; flex-direction:column; padding:18px; border-radius:23px; background:rgba(255,255,255,.62); border:1px solid rgba(255,255,255,.8); box-shadow:0 18px 44px rgba(54,65,80,.1),inset 0 1px 0 #fff; }
.hd-club-grid article>span { font-size:9px; letter-spacing:.12em; color:rgba(35,40,47,.35); }
.hd-club-grid h3 { margin:22px 0 9px; font-size:16px; line-height:1.05; letter-spacing:-.04em; }
.hd-club-grid p { margin:0; font-size:10px; line-height:1.6; color:rgba(30,35,42,.58); }
.hd-club-grid a { margin-top:auto; padding-top:14px; font-size:10px; font-weight:800; color:rgb(var(--hd-accent)); }
.hd-club-visual { position:absolute; width:44%; right:5%; bottom:28px; opacity:.1; filter:saturate(.7); pointer-events:none; }
.hd-club-visual img { width:100%; border-radius:26px; }

/* Contact form */
.hd-panel--contact { grid-template-columns:minmax(400px,.76fr) minmax(620px,1.24fr); }
.hd-panel--contact .hd-title { font-size:clamp(2.25rem,3.7vw,4.4rem); }
.hd-panel--contact .hd-visual { align-items:center; }
.hd-form { width:96%; max-height:calc(100vh - 122px); overflow:auto; padding:24px; border-radius:28px; background:rgba(255,255,255,.64); border:1px solid rgba(255,255,255,.84); box-shadow:0 28px 70px rgba(59,73,88,.13),inset 0 1px 0 #fff; backdrop-filter:blur(26px); scrollbar-width:thin; }
.hd-form__head { display:grid; gap:5px; margin-bottom:15px; }
.hd-form__head span { font-size:9px; text-transform:uppercase; letter-spacing:.14em; color:rgb(var(--hd-accent)); font-weight:800; }
.hd-form__head strong { font-size:17px; letter-spacing:-.035em; }
.hd-form__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.hd-form label { display:grid; gap:6px; }
.hd-form label>span { font-size:9px; font-weight:750; color:rgba(26,31,37,.58); }
.hd-form input,.hd-form select,.hd-form textarea { width:100%; border:1px solid rgba(55,67,80,.12); border-radius:13px; background:rgba(250,252,253,.8); color:#20252b; outline:none; padding:11px 12px; font-size:11px; transition:border-color .2s ease,box-shadow .2s ease,background .2s ease; }
.hd-form input,.hd-form select { min-height:41px; }
.hd-form textarea { resize:vertical; min-height:64px; line-height:1.45; }
.hd-form input:focus,.hd-form select:focus,.hd-form textarea:focus { border-color:rgba(var(--hd-accent),.52); box-shadow:0 0 0 3px rgba(var(--hd-accent),.08); background:#fff; }
.hd-form__wide { grid-column:1/-1; }
.hd-form__consent { margin-top:12px; grid-template-columns:18px 1fr !important; align-items:start; gap:7px !important; }
.hd-form__consent input { width:16px; min-height:16px; margin:1px 0 0; padding:0; }
.hd-form__consent span { font-size:9px !important; line-height:1.45; font-weight:500 !important; }
.hd-form__consent a { text-decoration:underline; }
.hd-form__actions { display:flex; align-items:center; gap:12px; margin-top:14px; }
.hd-form__actions .hd-btn { border:0; }
.hd-form__actions>span { font-size:8px; color:rgba(30,35,42,.42); }
.hd-form .soulu-smartcaptcha { margin:12px 0 0; }
.hd-form__status { margin-top:10px; }

/* Story mechanics */
.hd-triggers { position:relative; z-index:-1; pointer-events:none; }
.hd-trigger { height:112vh; min-height:760px; }
.hd-trigger:first-child { height:74vh; min-height:520px; }
.hd-mobile-progress { display:none; }
.hd-scroll-hint { position:absolute; right:34px; bottom:22px; display:flex; align-items:center; gap:8px; font-size:9px; text-transform:uppercase; letter-spacing:.12em; color:rgba(24,29,35,.32); }
.hd-scroll-hint i { font-style:normal; animation:hd-arrow 1.8s ease-in-out infinite; }

.hd-after-story { position:relative; z-index:2; padding:70px 24px 90px; background:linear-gradient(180deg,rgba(236,241,245,.35),rgba(216,224,231,.72)); }
.hd-after-story__inner { width:min(1020px,100%); margin:0 auto; padding:34px 38px; border-radius:28px; display:flex; align-items:center; justify-content:space-between; gap:28px; background:rgba(255,255,255,.54); border:1px solid rgba(255,255,255,.74); box-shadow:0 18px 48px rgba(55,67,80,.08),inset 0 1px 0 #fff; backdrop-filter:blur(20px); }
.hd-after-story p { margin:0; max-width:760px; font-size:19px; line-height:1.42; letter-spacing:-.025em; font-weight:650; color:rgba(24,29,35,.78); }
.hd-after-story a { flex:0 0 auto; font-size:12px; font-weight:800; color:#4f6f80; }


/* Dark AI-style ecosystem hero */
.hm-hero { position:relative; min-height:340svh; background:#090b0f; color:#f2f4f7; overflow:clip; }
.hm-hero__stage { position:sticky; top:0; height:100svh; overflow:hidden; background:linear-gradient(135deg,#08090c 0%,#0d1015 34%,#07080b 100%); }
.hm-hero__stage::before { content:""; position:absolute; inset:0; background:linear-gradient(115deg, rgba(255,255,255,.018) 0%, transparent 18%, transparent 34%, rgba(255,255,255,.024) 48%, transparent 60%, transparent 78%, rgba(255,255,255,.016) 100%), linear-gradient(180deg, rgba(255,255,255,.012), transparent 18%, transparent 82%, rgba(255,255,255,.014)); opacity:.9; transform:translate3d(calc(var(--hero-progress,0) * -0.5%), 0, 0); pointer-events:none; }
.hm-hero__stage::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(255,255,255,.028), transparent 22%, transparent 78%, rgba(255,255,255,.03)); pointer-events:none; }
.hm-hero__layout { width:min(1880px, calc(100% - 64px)); height:100%; margin:0 auto; display:grid; grid-template-columns:minmax(420px,.38fr) minmax(900px,.62fr); gap:clamp(42px, 5vw, 98px); align-items:center; padding:114px 0 58px; position:relative; z-index:2; }
.hm-hero__ambient { position:absolute; inset:0; pointer-events:none; }
.hm-glow { position:absolute; background:linear-gradient(90deg, transparent, rgba(255,255,255,.08), transparent); height:1px; filter:blur(.2px); opacity:.12; transform:rotate(-18deg); }
.hm-glow--one { width:46vw; min-width:560px; left:-7vw; top:20%; }
.hm-glow--two { width:38vw; min-width:440px; right:-8vw; bottom:22%; }
.hm-grid { display:none; }
.hm-noise { position:absolute; inset:0; background:linear-gradient(90deg, transparent, rgba(255,255,255,.012) 42%, transparent 58%); opacity:.12; }
.hm-copy { max-width:640px; position:relative; z-index:3; padding-left:clamp(4px, 1vw, 18px); }
.hm-eyebrow { margin:0; font-size:12px; text-transform:uppercase; letter-spacing:.18em; color:rgba(225,230,240,.62); font-weight:700; }
.hm-title { margin:16px 0 0; font-size:clamp(3.35rem,5.85vw,6.65rem); line-height:.9; letter-spacing:-.07em; font-weight:840; color:#f4f7ff; text-wrap:balance; }
.hm-title__brand, .hm-title__rest { display:block; }
.hm-description { margin:24px 0 0; font-size:17px; line-height:1.8; color:rgba(220,226,236,.74); max-width:560px; }
.hm-badges { display:flex; flex-wrap:wrap; gap:11px; margin-top:24px; }
.hm-badges span { padding:9px 13px; border-radius:999px; border:1px solid rgba(255,255,255,.08); background:rgba(255,255,255,.03); box-shadow:inset 0 1px 0 rgba(255,255,255,.08); font-size:11px; color:rgba(235,239,245,.76); backdrop-filter:none; -webkit-backdrop-filter:none; }
.hm-actions { display:flex; align-items:center; flex-wrap:wrap; gap:16px; margin-top:30px; }
.hm-actions span { font-size:12px; color:rgba(213,220,233,.45); }
.hm-btn { min-height:52px; padding:0 20px; display:inline-flex; align-items:center; justify-content:center; border-radius:17px; font-size:13px; font-weight:800; border:1px solid rgba(255,255,255,.12); transition:transform .24s ease, box-shadow .24s ease, background .24s ease; }
.hm-btn:hover { transform:translateY(-1px); }
.hm-btn--primary { color:#ffffff; background:linear-gradient(90deg,#8d63ff 0%,#ff46b9 34%,#43d5f2 68%,#2857ff 100%); box-shadow:0 16px 34px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.24); }
.hm-map { position:relative; min-height:min(860px, calc(100svh - 170px)); overflow:visible; }
.hm-map > *:not(.hm-links) { position:relative; z-index:2; }
.hm-map .hm-links { z-index:1; }
.hm-label { position:absolute; padding:10px 14px; z-index:3; border-radius:999px; background:rgba(255,255,255,.028); border:1px solid rgba(255,255,255,.06); font-size:10px; text-transform:uppercase; letter-spacing:.14em; color:rgba(230,236,244,.56); box-shadow:inset 0 1px 0 rgba(255,255,255,.05); }
.hm-label--left { left:2%; top:186px; }
.hm-label--right { right:4%; top:186px; }
.hm-card { --hm-card-w: clamp(300px, 19vw, 340px); position:absolute; display:flex; align-items:center; gap:14px; width:var(--hm-card-w); min-height:92px; padding:16px 18px; border-radius:24px; background:linear-gradient(145deg, rgba(16,19,26,.84), rgba(8,11,16,.86)); border:1px solid rgba(255,255,255,.085); box-shadow:0 20px 44px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.04); backdrop-filter:blur(10px); z-index:2; }
.hm-card img { flex:0 0 auto; width:42px; height:42px; object-fit:contain; }
.hm-card strong { display:block; font-size:16px; line-height:1.04; letter-spacing:-.04em; color:#f9fbff; font-weight:800; }
.hm-card span { display:block; margin-top:5px; font-size:12px; line-height:1.42; color:rgba(212,220,236,.56); }
.hm-card small { position:absolute; top:10px; right:10px; padding:2px 7px; border-radius:999px; background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.07); font-size:8px; letter-spacing:.08em; text-transform:uppercase; color:rgba(241,245,255,.58); }
.hm-card--lab { top:24px; left:50%; transform:translateX(-50%); }
.hm-card--studio { top:250px; left:4%; }
.hm-card--club { top:458px; left:10%; }
.hm-card--ai { top:292px; left:45%; }
.hm-card--web { top:468px; left:33%; }
.hm-card--flow { top:430px; right:2%; }
.hm-stack { position:absolute; right:2%; top:604px; width:clamp(330px, 21vw, 370px); display:grid; gap:14px; }
.hm-card--stack { position:relative; inset:auto; width:100%; padding-right:74px; }
.hm-links { position:absolute; inset:0; width:100%; height:100%; overflow:visible; pointer-events:none; z-index:1; }
.hm-link { fill:none; stroke:url(#hm-link-gradient-lab); stroke-width:0.625px !important; stroke-linecap:round !important; stroke-linejoin:round; stroke-dasharray:none !important; stroke-dashoffset:0 !important; opacity:0; filter:none; transition:opacity .35s ease; }
.hm-link.is-visible { opacity:1; }
.hm-link--lab { stroke:url(#hm-link-gradient-lab); }
.hm-link--studio { stroke:url(#hm-link-gradient-studio); }
.hm-link--ai { stroke:url(#hm-link-gradient-ai); }
.hm-link--flow-nko { stroke:#d82e96; }
.hm-link--flow-b2g { stroke:#4fa9df; }
.hm-link--flow-b2b { stroke:#ed8739; }
.hm-link--flow-b2c { stroke:#79b94b; }
.hm-link--dotted { stroke-width:0.625px !important; stroke-dasharray:none !important; stroke-dashoffset:0 !important; stroke-linecap:round !important; }
.hm-link--ai-neon { filter:drop-shadow(0 0 3px rgba(126,66,255,.72)) drop-shadow(0 0 7px rgba(47,93,255,.42)); }
.hm-link-point { fill:#eff7ff; opacity:0; filter:drop-shadow(0 0 8px rgba(146,205,255,.35)); transition:opacity .35s ease; }
.hm-link-point.is-visible { opacity:1; }
.hm-line { position:absolute; opacity:0; transition:opacity .35s ease; pointer-events:none; display:none; }
.hm-line.is-visible { opacity:1; }
.hm-line::before { content:""; position:absolute; inset:0; border-radius:999px; background:linear-gradient(90deg, rgba(255,76,180,.92), rgba(255,164,70,.95) 28%, rgba(122,188,82,.95) 58%, rgba(75,175,244,.96)); box-shadow:0 0 14px rgba(92,170,246,.22); transform:scaleX(var(--line-progress,0)); transform-origin:left center; }
.hm-line::after { content:""; position:absolute; top:50%; left:calc(var(--line-progress,0) * 100%); width:8px; height:8px; border-radius:50%; background:#fff; transform:translate(-50%,-50%); box-shadow:0 0 0 3px rgba(255,255,255,.08), 0 0 16px rgba(116,190,255,.55); opacity:clamp(0, var(--line-progress,0), 1); }
.hm-line--root-left,.hm-line--root-right,.hm-line--ai-web,.hm-line--ai-flow,.hm-line--flow-stack,.hm-line--left-bridge,.hm-line--web-flow { height:2px; }
.hm-line--left-down,.hm-line--studio-down,.hm-line--ai-down,.hm-line--flow-down,.hm-line--lab-down { width:2px; }
.hm-line--left-down::before,.hm-line--studio-down::before,.hm-line--ai-down::before,.hm-line--flow-down::before,.hm-line--lab-down::before { transform:scaleY(var(--line-progress,0)); transform-origin:center top; }
.hm-line--left-down::after,.hm-line--studio-down::after,.hm-line--ai-down::after,.hm-line--flow-down::after,.hm-line--lab-down::after { top:calc(var(--line-progress,0) * 100%); left:50%; }
.hm-line--lab-down { top:116px; left:50%; height:42px; }
.hm-line--root-left { top:156px; left:18.2%; width:31.8%; }
.hm-line--root-right { top:156px; left:50%; width:31%; }
.hm-line--left-down { top:156px; left:18.2%; height:140px; }
.hm-line--studio-down { top:346px; left:17.8%; height:132px; }
.hm-line--left-bridge { top:502px; left:17.8%; width:18%; }
.hm-line--ai-down { top:384px; left:59%; height:96px; }
.hm-line--ai-web { top:478px; left:49.2%; width:9.8%; }
.hm-line--ai-flow { top:452px; left:59%; width:24.2%; }
.hm-line--web-flow { top:514px; left:51.4%; width:28%; }
.hm-line--flow-down { top:522px; left:83.2%; height:112px; }
.hm-line--flow-stack { top:632px; left:83.2%; width:11.8%; }
.hm-reveal {
    opacity:0;
    transform:translate3d(0,18px,0) scale(.988);
    filter:none;
    transition:none;
    will-change:opacity, transform;
}
.hm-reveal.is-visible { filter:none; }
.hm-scroll-hint { position:absolute; left:50%; bottom:18px; transform:translateX(-50%); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; font-size:16.5px; line-height:1.1; text-align:center; text-transform:uppercase; letter-spacing:.12em; color:rgba(213,222,245,.42); z-index:3; }
.hm-scroll-hint i { display:block; font-style:normal; font-size:22px; line-height:1; animation:hd-arrow 1.8s ease-in-out infinite; }
/* mini map inside first light section */
.hd-brand-map { position:relative; width:min(100%, 880px); height:min(100%, 720px); min-height:620px; border-radius:42px; border:1px solid rgba(255,255,255,.74); background:linear-gradient(145deg, rgba(255,255,255,.74), rgba(242,247,250,.36)); box-shadow:0 28px 70px rgba(52,65,80,.12), inset 0 1px 0 rgba(255,255,255,.95); backdrop-filter:blur(26px); }
.hd-brand-map__card { position:absolute; display:flex; align-items:center; gap:10px; padding:12px 14px; border-radius:19px; background:rgba(255,255,255,.64); border:1px solid rgba(255,255,255,.78); box-shadow:0 16px 38px rgba(57,68,80,.1), inset 0 1px 0 #fff; min-width:180px; }
.hd-brand-map__card strong { display:block; font-size:13px; line-height:1.05; letter-spacing:-.03em; color:#222830; }
.hd-brand-map__card span { display:block; margin-top:4px; font-size:10px; color:rgba(31,36,43,.54); }
.hd-brand-map__card--lab { top:38px; left:50%; transform:translateX(-50%); min-width:240px; }
.hd-brand-map__card--studio { top:198px; left:28px; }
.hd-brand-map__card--club { top:330px; left:28px; }
.hd-brand-map__card--ai { top:214px; right:180px; }
.hd-brand-map__card--web { top:366px; left:48%; transform:translateX(-42%); }
.hd-brand-map__card--flow { top:366px; right:26px; }
.hd-brand-map__line { position:absolute; background:linear-gradient(90deg,#d94eb2 0%,#ef8a41 32%,#82b64e 62%,#57afe2 100%); box-shadow:0 0 14px rgba(92,160,220,.26); opacity:.92; }
.hd-brand-map__line--left { top:126px; left:162px; width:40%; height:2px; }
.hd-brand-map__line--right { top:126px; left:50%; width:34%; height:2px; }
.hd-brand-map__stack { position:absolute; right:24px; top:500px; width:290px; padding:12px; display:grid; gap:8px; border-radius:20px; border:1px dashed rgba(80,159,223,.42); background:rgba(255,255,255,.46); }
.hd-brand-map__stack span { display:flex; align-items:center; min-height:42px; padding:10px 12px; border-radius:15px; background:rgba(255,255,255,.74); border:1px solid rgba(255,255,255,.88); font-size:12px; box-shadow:0 10px 24px rgba(58,70,82,.06), inset 0 1px 0 #fff; }

.hm-hero-outro {
    --outro-progress:0;
    position:absolute;
    left:50%;
    bottom:42px;
    z-index:6;
    min-width:360px;
    max-width:min(560px, calc(100vw - 48px));
    padding:14px 18px 12px;
    display:grid;
    grid-template-columns:1fr;
    grid-template-areas:"eyebrow" "title" "arrow";
    gap:4px 0;
    align-items:center;
    justify-items:center;
    text-align:center;
    border-radius:20px;
    border:1px solid rgba(255,255,255,.09);
    background:linear-gradient(155deg, rgba(30,33,39,.82), rgba(13,16,21,.9));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    opacity:var(--outro-progress);
    transform:translate3d(-50%, calc((1 - var(--outro-progress)) * 24px), 0) scale(calc(.97 + var(--outro-progress) * .03));
    filter:blur(calc((1 - var(--outro-progress)) * 4px));
    pointer-events:none;
    will-change:opacity, transform, filter;
}
.hm-hero-outro__eyebrow {
    grid-area:eyebrow;
    font-size:9px;
    text-transform:uppercase;
    letter-spacing:.16em;
    color:rgba(221,226,235,.5);
    font-weight:700;
    text-align:center;
}
.hm-hero-outro strong {
    grid-area:title;
    font-size:15px;
    line-height:1.25;
    color:rgba(248,249,251,.92);
    letter-spacing:-.02em;
    text-align:center;
}
.hm-hero-outro__arrow {
    grid-area:arrow;
    font-size:18px;
    line-height:1;
    color:rgba(232,236,242,.56);
    margin-top:4px;
    justify-self:center;
    transform:translateY(calc((1 - var(--outro-progress)) * -4px));
}
.hm-hero[data-outro-visible="true"] .hm-scroll-hint { opacity:0; }

@keyframes hd-float { 0%,100%{transform:translateY(0) rotate(0deg)} 50%{transform:translateY(-12px) rotate(2deg)} }
@keyframes hd-arrow { 0%,100%{transform:translateY(0)} 50%{transform:translateY(5px)} }

@media (max-width: 1260px) {
    .hd-stage__layout { width:min(1320px,calc(100% - 36px)); grid-template-columns:180px minmax(0,1fr); gap:24px; }
    .hd-route__label { font-size:10px; }
    .hd-panel { grid-template-columns:minmax(340px,.84fr) minmax(440px,1.16fr); gap:32px; }
    .hd-title { font-size:clamp(2.4rem,4vw,4.7rem); }
    .hd-description { font-size:12px; }
    .hd-visual { height:min(700px,calc(100vh - 126px)); }
    .hd-panel--mvp,.hd-panel--contact { grid-template-columns:minmax(330px,.8fr) minmax(480px,1.2fr); }
    .hd-mvp-card { min-height:160px; padding:11px; }
    .hd-club-grid article { min-height:225px; padding:15px; }
}

@media (max-width: 1024px) and (min-width: 821px) {
    .hd-stage__layout { width:calc(100% - 24px); grid-template-columns:138px minmax(0,1fr); gap:16px; padding-top:88px; }
    .hd-route__head { margin-left:29px; }
    .hd-route__head strong { font-size:11px; }
    .hd-route__item { grid-template-columns:18px 1fr; gap:9px; min-height:49px; }
    .hd-route__label { font-size:9px; }
    .hd-panel { grid-template-columns:minmax(320px,.9fr) minmax(390px,1.1fr); gap:20px; }
    .hd-title { font-size:clamp(2.2rem,4vw,3.55rem); }
    .hd-offer { margin-top:16px; font-size:14px; }
    .hd-description { margin-top:10px; font-size:10px; line-height:1.55; }
    .hd-tags { margin-top:13px; gap:5px; }
    .hd-tags span { padding:6px 8px; font-size:8px; }
    .hd-actions { margin-top:16px; }
    .hd-btn { min-height:42px; padding:0 13px; border-radius:13px; font-size:10px; }
    .hd-visual { height:min(620px,calc(100vh - 120px)); }
    .hd-panel--mvp,.hd-panel--contact { grid-template-columns:minmax(300px,.82fr) minmax(420px,1.18fr); }
    .hd-mvp-economics { padding:10px 11px; }
    .hd-launch-mini { display:none; }
    .hd-mvp-cards { grid-template-columns:1fr; }
    .hd-mvp-card { min-height:92px; }
    .hd-mvp-card p { margin:7px 0; }
    .hd-mvp-card button { min-height:29px; }
    .hd-club-grid { grid-template-columns:1fr; margin-top:20px; }
    .hd-club-grid article { min-height:118px; }
    .hd-club-grid h3 { margin:8px 0 5px; }
}



/* Hero copy shares the same typography system as the light product story. */
.hm-hero .hd-eyebrow { color:rgba(225,230,240,.62); }
.hm-hero .hd-title { color:#f4f7ff; }
.hm-hero .hd-description { color:rgba(220,226,236,.74); }
.hm-hero .hd-tags span {
    border-color:rgba(255,255,255,.08);
    background:rgba(255,255,255,.03);
    color:rgba(235,239,245,.76);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
    backdrop-filter:blur(6px);
}
.hm-hero .hd-actions { align-items:center; }

/* Hero layout pass: card placement first, connection geometry intentionally deferred. */
@media (min-width: 1025px) {
    .hm-hero__layout {
        width:min(1880px, calc(100% - 44px));
        max-width:1880px;
        grid-template-columns:minmax(640px, 760px) minmax(0, 1fr);
        gap:clamp(12px, 1.1vw, 22px);
        padding:88px 0 48px;
    }
    .hm-copy {
        width:100%;
        max-width:760px;
        min-height:calc(100svh - 136px);
        padding:0 12px 18px 0;
        margin-left:-222px;
        align-self:stretch;
        justify-self:start;
        display:flex;
        flex-direction:column;
        justify-content:center;
        box-sizing:border-box;
    }
    .hm-title { max-width:920px; }
    .hm-description { max-width:860px; }
    .hm-badges { gap:12px; }
    .hm-badges span { padding:10px 14px; font-size:11px; }
    .hm-actions { margin-top:36px; gap:18px; }
    .hm-btn--primary {
        color:#f7f8f9;
        background:linear-gradient(180deg,#767d86 0%,#434951 22%,#868e98 48%,#343a42 73%,#6a727b 100%);
        border-color:rgba(255,255,255,.16);
        box-shadow:0 14px 32px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.18);
    }
    .hm-btn--primary:hover {
        background:linear-gradient(180deg,#858e98 0%,#4b525b 22%,#949da8 48%,#3c434c 73%,#778089 100%);
    }
    .hm-map {
        min-height:0;
        height:min(920px, calc(100svh - 120px));
        width:min(980px, 100%);
        margin:0 auto;
        display:grid;
        justify-content:center;
        align-content:start;
        grid-template-columns:repeat(4, minmax(0, 198px));
        grid-template-rows:auto 60px auto 45px auto 24px auto;
        grid-template-areas:
            ". lab lab ."
            ". . . ."
            "studio web ai flow"
            ". . . ."
            "club . nko b2g"
            ". . . ."
            ". . b2b b2c";
        column-gap:47px;
        row-gap:0;
        padding:8px 18px 20px;
        box-sizing:border-box;
        overflow:visible;
    }
    .hm-links { display:block !important; }
    .hm-label { display:none !important; }
    .hm-branch,.hm-stack { display:contents; }
    .hm-card {
        position:relative;
        inset:auto;
        left:-10px;
        transform:none !important;
        width:calc(100% + 20px);
        min-width:0;
        max-width:none;
        min-height:88px;
        padding:14px 15px;
        gap:12px;
        border-radius:21px;
        align-self:center;
    }
    .hm-card img { width:38px; height:38px; object-fit:contain; }
    .hm-card strong { font-size:14px; }
    .hm-card span { font-size:10px; line-height:1.38; }
    .hm-card--lab { grid-area:lab; }
    .hm-card--studio { grid-area:studio; }
    .hm-card--web { grid-area:web; }
    .hm-card--ai { grid-area:ai; }
    .hm-card--flow { grid-area:flow; }
    .hm-card--club { grid-area:club; }
    .hm-card--nko { grid-area:nko; }
    .hm-card--b2b { grid-area:b2b; }
    .hm-card--b2c { grid-area:b2c; }
    .hm-card--b2g { grid-area:b2g; }
    .hm-card--lab,
    .hm-card--studio,
    .hm-card--web,
    .hm-card--ai,
    .hm-card--flow {
        left:0;
        width:220px;
        min-height:88px;
        height:88px;
        justify-self:center;
    }
    .hm-card--lab {
        margin-top:0;
        margin-bottom:10px;
    }
    .hm-card--stack {
        min-height:96px;
        padding-top:19px;
        padding-bottom:19px;
        padding-right:58px;
    }
    .hm-card--studio,
    .hm-card--web,
    .hm-card--ai,
    .hm-card--flow {
        margin-top:14px;
    }
    .hm-card--club,
    .hm-card--nko,
    .hm-card--b2g {
        margin-top:10px;
    }
    .hm-card--nko,
    .hm-card--b2g,
    .hm-card--b2b,
    .hm-card--b2c {
        margin-left:135px;
    }
    .hm-card small {
        top:8px;
        right:8px;
        padding:2px 6px;
        font-size:7px;
        line-height:1.1;
        letter-spacing:.07em;
    }

    /* Product cards: self-contained 3D surface, no external glow. */
    .hm-card {
        --hm-edge: linear-gradient(120deg, rgba(168,174,184,.9), rgba(68,74,84,.95) 34%, rgba(214,218,224,.72) 58%, rgba(82,88,98,.95));
        border:1px solid transparent;
        background:
            linear-gradient(155deg, rgba(24,27,34,.96) 0%, rgba(13,16,22,.98) 46%, rgba(7,10,15,.99) 100%) padding-box,
            var(--hm-edge) border-box;
        box-shadow:
            inset 0 1px 0 rgba(255,255,255,.075),
            inset 0 -12px 28px rgba(0,0,0,.22),
            inset 12px 0 26px rgba(255,255,255,.012);
        backdrop-filter:none;
        -webkit-backdrop-filter:none;
    }
    .hm-card::before {
        content:"";
        position:absolute;
        inset:1px 1px auto 1px;
        height:42%;
        border-radius:19px 19px 45% 45%;
        background:linear-gradient(180deg, rgba(255,255,255,.045), transparent);
        pointer-events:none;
        opacity:.65;
    }
    .hm-card--lab {
        --hm-edge:linear-gradient(115deg,#747b84 0%,#d8dce1 24%,#525862 48%,#abb1b8 70%,#3f454d 100%);
    }
    .hm-card--studio,
    .hm-card--club {
        --hm-edge:linear-gradient(110deg,#7f42ff 0%,#ff3dbd 34%,#2457ff 68%,#24d9ee 100%);
    }
    .hm-card--ai {
        --hm-edge:linear-gradient(110deg,#7f42ff 0%,#ff3dbd 34%,#ff7b3e 66%,#2f5dff 100%);
    }
    .hm-card--web {
        --hm-edge:linear-gradient(110deg,#367ea5 0%,#7fd4fb 28%,#e4f8ff 48%,#66bee9 70%,#2d7195 100%);
    }
    .hm-card--flow {
        --hm-edge:linear-gradient(110deg,#b72fad 0%,#ef7c3e 32%,#7cba4b 64%,#4faee2 100%);
        width:230px;
        justify-self:center;
    }
    .hm-card--nko { --hm-edge:linear-gradient(110deg,#8f1c69 0%,#d82e96 48%,#ff69c7 100%); }
    .hm-card--b2b { --hm-edge:linear-gradient(110deg,#9d4b13 0%,#ed8739 48%,#ffb064 100%); }
    .hm-card--b2c { --hm-edge:linear-gradient(110deg,#437823 0%,#79b94b 48%,#a6d66e 100%); }
    .hm-card--b2g { --hm-edge:linear-gradient(110deg,#286f9d 0%,#4fa9df 48%,#82d1ff 100%); }

    .hm-card--nko,
    .hm-card--b2b,
    .hm-card--b2c,
    .hm-card--b2g {
        width:100%;
        justify-self:stretch;
    }
    .hm-card--b2b > div,
    .hm-card--b2c > div,
    .hm-card--b2g > div {
        transform:translateY(6px);
    }
    .hm-card--nko strong,
    .hm-card--b2b strong,
    .hm-card--b2c strong,
    .hm-card--b2g strong {
        white-space:nowrap;
        font-size:13px;
    }

    /* Inactive FLOW verticals: keep the project badge fully readable. */
    .hm-card--b2b.hm-reveal.is-visible,
    .hm-card--b2c.hm-reveal.is-visible,
    .hm-card--b2g.hm-reveal.is-visible {
        opacity:1;
        filter:none;
    }
    .hm-card--b2b.hm-reveal.is-visible > img,
    .hm-card--b2b.hm-reveal.is-visible > div,
    .hm-card--b2c.hm-reveal.is-visible > img,
    .hm-card--b2c.hm-reveal.is-visible > div,
    .hm-card--b2g.hm-reveal.is-visible > img,
    .hm-card--b2g.hm-reveal.is-visible > div {
        opacity:.9;
        filter:blur(2.0px) saturate(.72) contrast(.92);
    }
    .hm-project-badge {
        opacity:1 !important;
        filter:none !important;
        visibility:visible;
    }
}
@media (min-width:1025px) and (max-width:1320px) {
    .hm-hero__layout {
        width:min(1540px, calc(100% - 30px));
        grid-template-columns:minmax(540px, 620px) minmax(0, 1fr);
        gap:12px;
    }
    .hm-copy { max-width:620px; min-height:calc(100svh - 132px); margin-left:-212px; padding-left:0; }
    .hm-title { max-width:920px; }
    .hm-description { max-width:860px; }
    .hm-map {
        width:min(1220px,100%);
        grid-template-columns:222px 222px 222px 252px;
        column-gap:12px;
        row-gap:12px;
        padding-inline:30px;
        box-sizing:border-box;
    }
    .hm-card { min-height:82px; padding:12px 13px; gap:11px; border-radius:19px; }
    .hm-card img { width:34px; height:34px; }
    .hm-card strong { font-size:13px; }
    .hm-card span { font-size:9px; }
    .hm-card--lab { left:0; width:calc(100% + 10px); max-width:232px; }
    .hm-card--flow { width:232px; }
    .hm-card--nko,
    .hm-card--b2b,
    .hm-card--b2c,
    .hm-card--b2g { width:262px; }
    .hm-card--nko strong,
    .hm-card--b2b strong,
    .hm-card--b2c strong,
    .hm-card--b2g strong { font-size:12px; }
    .hm-card--stack { padding-right:56px; }
}
@media (max-width: 1024px) {
    .hm-hero { min-height:0; }
    .hm-hero-outro { position:relative; left:auto; bottom:auto; margin:8px auto 28px; opacity:1; transform:none; filter:none; min-width:0; width:min(100% - 28px, 560px); justify-items:center; text-align:center; }
    .hm-hero__stage { position:relative; height:auto; min-height:0; padding-top:92px; }
    .hm-hero__layout { width:min(100% - 28px, 780px); height:auto; grid-template-columns:1fr; gap:26px; padding:0 0 36px; }
    .hm-copy { max-width:none; padding-left:0; }
    .hm-title { font-size:clamp(2.6rem, 9vw, 4.2rem); }
    .hm-map { min-height:0; height:auto; padding:18px 0 0; display:grid; gap:12px; }
    .hm-label { position:relative; top:auto; left:auto; right:auto; width:max-content; }
    .hm-card,.hm-stack { position:relative; top:auto; left:auto; right:auto; transform:none !important; width:100%; min-width:0; }
    .hm-stack { padding:0; border:0; background:none; box-shadow:none; width:100%; }
    .hm-card--stack { padding-right:16px; }
    .hm-links, .hm-line,.hm-scroll-hint { display:none; }
    .hm-reveal { opacity:1; transform:none; filter:none; }
    .hd-brand-map { min-height:0; height:auto; padding:18px; display:grid; gap:10px; }
    .hd-brand-map__card,.hd-brand-map__stack { position:relative; top:auto; left:auto; right:auto; transform:none !important; width:100%; min-width:0; }
    .hd-brand-map__line { display:none; }
}
/* Mobile: no desktop sticky story. Each stage is its own vertical screen. */
@media (max-width: 820px) {
    .hd-main { overflow:visible; }
    .hd-story { min-height:0; }
    .hd-stage { position:relative; top:auto; height:auto; min-height:0; overflow:visible; padding-top:84px; background:transparent; }
    .hd-stage::before { position:fixed; opacity:.75; }
    .hd-stage::after { display:none; }
    .hd-stage__layout { width:min(100% - 28px,680px); height:auto; padding:0; display:block; }
    .hd-route { display:none; }
    .hd-panels { height:auto; }
    .hd-panel { position:relative; inset:auto; display:flex; flex-direction:column; gap:22px; min-height:calc(100svh - 84px); padding:36px 0 48px; opacity:1; visibility:visible; pointer-events:auto; transform:none; filter:none; border-bottom:1px solid rgba(55,67,80,.09); }
    .hd-panel[aria-hidden="true"] { visibility:visible; }
    .hd-copy { width:100%; max-width:none; }
    .hd-brandline { margin-bottom:15px; }
    .hd-brandline img { width:27px; }
    .hd-eyebrow { font-size:9px; }
    .hd-title,.hd-panel--brand .hd-title,.hd-panel--mvp .hd-title,.hd-panel--club .hd-title,.hd-panel--contact .hd-title { max-width:none; font-size:clamp(2rem,10vw,3.35rem); line-height:1.01; letter-spacing:-.055em; }
    .hd-offer { margin-top:17px; font-size:16px; line-height:1.45; }
    .hd-description { font-size:12px; line-height:1.65; }
    .hd-tags { margin-top:16px; }
    .hd-tags span { font-size:9px; padding:7px 9px; }
    .hd-actions { margin-top:20px; }
    .hd-btn { min-height:45px; padding:0 14px; border-radius:14px; font-size:10.5px; }
    .hd-visual { width:100%; height:auto; min-height:0; padding:18px; border-radius:28px; background:linear-gradient(145deg,rgba(255,255,255,.68),rgba(255,255,255,.28)); border:1px solid rgba(255,255,255,.7); box-shadow:0 18px 50px rgba(56,68,82,.09),inset 0 1px 0 #fff; }
    .hd-visual::before { display:none; }
    .hd-visual-caption { position:static; transform:none; margin:15px auto 0; white-space:normal; text-align:center; }
    .hd-brand-orbit { width:min(410px,100%); }
    .hd-web-stack { position:relative; width:100%; height:420px; }
    .hd-browser--1 { width:48%; }
    .hd-browser--2 { width:48%; }
    .hd-browser--3 { width:52%; left:24%; }
    .hd-browser--1 .hd-browser__viewport,.hd-browser--2 .hd-browser__viewport { height:290px; }
    .hd-browser--3 .hd-browser__viewport { height:250px; }
    .hd-product-screens { width:100%; height:430px; }
    .hd-screen-card--1 { width:78%; }
    .hd-screen-card--2 { width:70%; }
    .hd-screen-card--3 { width:30%; }
    .hd-flow-chain { position:static; margin-top:14px; }
    .hd-panel--mvp .hd-visual { padding:15px; }
    .hd-mvp-economics { margin-top:14px; }
    .hd-launch-mini { grid-template-columns:repeat(2,1fr); }
    .hd-mvp-visual { width:100%; }
    .hd-cofund { grid-template-columns:1fr 36px 1.35fr; padding:11px; }
    .hd-mvp-cards { grid-template-columns:1fr; }
    .hd-mvp-card { min-height:128px; }
    .hd-club-grid { width:100%; margin:0; grid-template-columns:1fr; }
    .hd-club-grid article { min-height:150px; }
    .hd-club-visual { display:none; }
    .hd-form { width:100%; max-height:none; overflow:visible; padding:18px; }
    .hd-form__grid { grid-template-columns:1fr; }
    .hd-form__wide { grid-column:auto; }
    .hd-form__actions { align-items:flex-start; flex-direction:column; }
    .hd-triggers { display:none; }
    .hd-scroll-hint { display:none; }
    .hd-mobile-progress { display:block; position:sticky; top:80px; z-index:30; width:calc(100% - 30px); height:3px; margin:0 auto; border-radius:999px; background:rgba(61,72,85,.09); overflow:hidden; }
    .hd-mobile-progress i { display:block; width:14.28%; height:100%; border-radius:999px; background:linear-gradient(90deg,#ca2ab0,#ee8840,#79b94e,#4ba8df); transition:width .38s ease; }
    .hd-after-story { padding:45px 14px 62px; }
    .hd-after-story__inner { padding:24px; display:grid; }
    .hd-after-story p { font-size:16px; }
}

@media (max-width: 520px) {
    .hd-stage { padding-top:76px; }
    .hd-stage__layout { width:calc(100% - 22px); }
    .hd-panel { padding:30px 0 42px; min-height:calc(100svh - 76px); }
    .hd-title,.hd-panel--brand .hd-title,.hd-panel--mvp .hd-title,.hd-panel--club .hd-title,.hd-panel--contact .hd-title { font-size:clamp(1.92rem,10.5vw,2.85rem); }
    .hd-offer { font-size:14px; }
    .hd-description { font-size:11px; }
    .hd-actions { display:grid; grid-template-columns:1fr; }
    .hd-btn { width:100%; }
    .hd-brand-orbit { width:100%; }
    .hd-orbit-chip { padding:7px 8px; font-size:8px; }
    .hd-web-stack { height:355px; }
    .hd-browser { border-radius:14px; }
    .hd-browser__bar { height:19px; }
    .hd-browser--1 .hd-browser__viewport,.hd-browser--2 .hd-browser__viewport { height:245px; }
    .hd-browser--3 .hd-browser__viewport { height:210px; }
    .hd-product-screens { height:345px; }
    .hd-screen-card { border-radius:14px; }
    .hd-screen-card figcaption { display:none; }
    .hd-cofund { grid-template-columns:1fr; }
    .hd-cofund__join { display:none; }
    .hd-mvp-card { min-height:116px; }
    .hd-launch-mini { grid-template-columns:1fr; }
    .hd-form { padding:15px; border-radius:22px; }
    .hd-form__grid { gap:8px; }
    .hd-mobile-progress { top:72px; }
}



/* PATCH 011 — real fullscreen desktop composition */
@media (min-width: 821px) {
    .hd-stage { min-height:100svh; height:100svh; }
    .hd-stage__layout {
        width:calc(100% - clamp(28px, 4vw, 96px));
        max-width:none;
        height:100svh;
        padding:clamp(78px, 8.2vh, 112px) 0 clamp(18px, 2.4vh, 34px);
        grid-template-columns:clamp(190px, 12vw, 280px) minmax(0,1fr);
        gap:clamp(24px, 2.6vw, 64px);
    }
    .hd-route {
        height:calc(100svh - clamp(112px, 12vh, 160px));
        max-height:none;
        padding-block:clamp(16px,2vh,28px);
    }
    .hd-route__head { margin-left:40px; margin-bottom:clamp(18px,2.2vh,28px); }
    .hd-route__head span { font-size:clamp(10px,.52vw,13px); }
    .hd-route__head strong { font-size:clamp(13px,.72vw,17px); }
    .hd-route__item { min-height:clamp(54px,6vh,76px); grid-template-columns:24px 1fr; gap:15px; }
    .hd-route__label { font-size:clamp(11px,.72vw,16px); }
    .hd-route__dot { width:9px; height:9px; }
    .hd-route__rail { top:clamp(112px,13vh,154px); bottom:clamp(40px,5vh,64px); }

    .hd-panels { height:100%; }
    .hd-panel,
    .hd-panel--mvp,
    .hd-panel--contact {
        grid-template-columns:minmax(430px, .78fr) minmax(620px, 1.22fr);
        gap:clamp(38px, 4vw, 96px);
        height:100%;
        align-items:center;
    }
    .hd-copy {
        width:100%;
        max-width:min(920px, 44vw);
        padding-bottom:0;
    }
    .hd-brandline { margin-bottom:clamp(18px,2.1vh,28px); gap:14px; }
    .hd-brandline img { width:clamp(30px,1.7vw,44px); }
    .hd-brandline__word { font-size:clamp(16px,.92vw,22px); }
    .hd-eyebrow { margin-bottom:clamp(12px,1.5vh,20px); font-size:clamp(11px,.62vw,15px); }
    .hd-title,
    .hd-panel--brand .hd-title,
    .hd-panel--mvp .hd-title,
    .hd-panel--club .hd-title,
    .hd-panel--contact .hd-title {
        max-width:900px;
        font-size:clamp(2.8rem, 4.1vw, 6.6rem);
        line-height:.95;
        letter-spacing:-.066em;
    }
    .hd-panel--mvp .hd-title { font-size:clamp(2.7rem,3.6vw,5.8rem); }
    .hd-panel--club .hd-title,
    .hd-panel--contact .hd-title { font-size:clamp(2.75rem,3.75vw,6rem); }
    .hd-offer,
    .hd-panel--mvp .hd-offer {
        max-width:820px;
        margin-top:clamp(16px,1.8vh,24px);
        font-size:clamp(1.05rem,1.12vw,1.75rem);
        line-height:1.36;
    }
    .hd-description,
    .hd-panel--mvp .hd-description {
        max-width:820px;
        margin-top:clamp(10px,1.3vh,17px);
        font-size:clamp(13px,.72vw,17px);
        line-height:1.58;
    }
    .hd-tags { margin-top:clamp(14px,1.7vh,22px); gap:clamp(6px,.45vw,9px); }
    .hd-tags span { padding:clamp(6px,.55vh,8px) clamp(9px,.62vw,12px); font-size:clamp(9px,.52vw,12px); }
    .hd-actions { margin-top:clamp(16px,2vh,26px); gap:12px; }
    .hd-btn { min-height:clamp(44px,4.6vh,56px); padding-inline:clamp(16px,1.1vw,24px); font-size:clamp(11px,.62vw,14px); }

    .hd-visual {
        width:100%;
        height:calc(100svh - clamp(118px, 12vh, 164px));
        max-height:none;
        min-height:0;
        align-self:center;
    }
    .hd-visual::before { inset:1.5% 0 1%; border-radius:clamp(34px,2.6vw,58px); }
    .hd-brand-orbit { width:min(88%, 72vh); max-width:none; }
    .hd-web-stack { width:96%; height:90%; }
    .hd-product-screens { width:97%; height:90%; }
    .hd-browser--1 .hd-browser__viewport { height:min(58vh, 72%); }
    .hd-browser--2 .hd-browser__viewport { height:min(55vh, 69%); }
    .hd-browser--3 .hd-browser__viewport { height:min(48vh, 61%); }
    .hd-screen-card--1 { width:76%; top:5%; }
    .hd-screen-card--2 { width:65%; bottom:2%; }
    .hd-screen-card--3 { width:30%; top:1%; }
    .hd-panel--flow .hd-screen-card--3 { width:26%; }
    .hd-flow-chain { bottom:clamp(14px,2vh,28px); }
    .hd-visual-caption { bottom:clamp(14px,1.8vh,24px); font-size:clamp(9px,.52vw,12px); }

    .hd-mvp-economics { max-width:860px; }
    .hd-launch-mini { max-width:860px; }
    .hd-mvp-visual { width:96%; }
    .hd-club-grid { width:96%; margin-top:0; align-self:center; }
    .hd-club-grid article { min-height:clamp(230px,30vh,390px); padding:clamp(18px,1.5vw,30px); }
    .hd-club-grid h3 { font-size:clamp(16px,1.1vw,25px); }
    .hd-club-grid p { font-size:clamp(10px,.7vw,15px); }
    .hd-form { width:98%; max-height:calc(100svh - clamp(116px, 11vh, 150px)); padding:clamp(22px,1.6vw,34px); }

    .hd-triggers { margin-top:0; }
    .hd-trigger,
    .hd-trigger:first-child { height:115svh; min-height:760px; }
}

@media (prefers-reduced-motion: reduce) {
    .hd-brand-orbit__core img,.hd-scroll-hint i { animation:none !important; }
    .hd-panel,.hd-ambient__orb,.hd-route__item,.hd-route__dot,.hd-route__rail i,.hd-reveal,.hd-visual .hd-browser,.hd-visual .hd-screen-card,.hd-visual .hd-flow-chain,.hd-visual .hd-cofund,.hd-visual .hd-mvp-card,.hd-visual .hd-mvp-other,.hd-visual .hd-club-grid article,.hd-visual .hd-form,.hd-visual .hd-visual-caption,.hd-visual .hd-brand-orbit { transition:none !important; }
    .hd-panel,.hd-reveal,.hd-visual .hd-browser,.hd-visual .hd-screen-card,.hd-visual .hd-flow-chain,.hd-visual .hd-cofund,.hd-visual .hd-mvp-card,.hd-visual .hd-mvp-other,.hd-visual .hd-club-grid article,.hd-visual .hd-form,.hd-visual .hd-visual-caption,.hd-visual .hd-brand-orbit { filter:none !important; transform:none !important; opacity:1 !important; }
}


/* 0.4.1.049 — DEMO header: keep liquid glass, remove only outer glow/shadow. */
.home-demo-page .soul-header__inner {
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.80),
        inset 0 2px 8px rgba(255,255,255,.20),
        inset 0 -1px 0 rgba(66,82,100,.16),
        inset 0 -12px 28px rgba(74,92,112,.08) !important;
}


/* 0.4.1.050 — DEMO header: disable the diagonal ::after glare confirmed in DevTools. */
.home-demo-page .soul-header__inner::after {
    display:none !important;
}


/* 0.4.1.083 — approved desktop Hero composition after cross-browser check. */
@media (min-width:1025px) {
    body.home-demo-page .hm-title {
        font-size:114.96px !important;
        line-height:107.62px !important;
    }

    body.home-demo-page .hm-description {
        margin-top:12px !important;
    }

    body.home-demo-page .hm-badges {
        gap:7px 8px !important;
        margin-top:14px !important;
    }

    body.home-demo-page .hm-badges span {
        padding:6px 10px !important;
        font-size:10px !important;
        line-height:1.1 !important;
        min-height:0 !important;
    }

    body.home-demo-page .hm-actions {
        margin-top:22px !important;
    }

    body.home-demo-page .hm-map {
        transform:translateY(160px) scale(1.1) !important;
        transform-origin:55% 45% !important;
    }
}


/* 0.4.1.085 — Product Journey synchronized to Hero reference scale. */
@media (min-width:821px) {
    /* One exact viewport of scroll per product. This keeps route, reveal and panel state in sync. */
    body.home-demo-page .hd-trigger,
    body.home-demo-page .hd-trigger:first-child {
        height:100svh !important;
        min-height:100svh !important;
    }

    /* First Hero is the dimensional reference for all following product screens. */
    body.home-demo-page .hd-brandline {
        margin-bottom:20px !important;
        gap:11px !important;
    }
    body.home-demo-page .hd-brandline img {
        width:30px !important;
    }
    body.home-demo-page .hd-brandline__word {
        font-size:16px !important;
    }
    body.home-demo-page .hd-eyebrow {
        margin-bottom:12px !important;
        font-size:12px !important;
        letter-spacing:.18em !important;
    }
    body.home-demo-page .hd-title,
    body.home-demo-page .hd-panel--brand .hd-title,
    body.home-demo-page .hd-panel--mvp .hd-title,
    body.home-demo-page .hd-panel--club .hd-title,
    body.home-demo-page .hd-panel--contact .hd-title {
        max-width:920px !important;
        letter-spacing:-.07em !important;
    }
    body.home-demo-page .hd-offer,
    body.home-demo-page .hd-panel--mvp .hd-offer {
        max-width:760px !important;
        margin-top:18px !important;
        font-size:20px !important;
        line-height:1.42 !important;
    }
    body.home-demo-page .hd-description,
    body.home-demo-page .hd-panel--mvp .hd-description {
        max-width:760px !important;
        margin-top:12px !important;
        font-size:15px !important;
        line-height:1.7 !important;
    }
    body.home-demo-page .hd-tags {
        margin-top:14px !important;
        gap:7px 8px !important;
    }
    body.home-demo-page .hd-tags span {
        padding:6px 10px !important;
        min-height:0 !important;
        font-size:10px !important;
        line-height:1.1 !important;
    }
    body.home-demo-page .hd-actions {
        margin-top:22px !important;
        gap:16px !important;
    }
    body.home-demo-page .hd-btn {
        min-height:52px !important;
        padding:0 20px !important;
        border-radius:17px !important;
        gap:12px !important;
        font-size:13px !important;
    }
}


/* 0.4.1.086 — exact Journey rail geometry + SOULU WEB titanium actions. */
@media (min-width:821px) {
    /* JS positions the rail exactly between the first and last route dots. */
    body.home-demo-page .hd-route__rail {
        bottom:auto !important;
        overflow:hidden;
    }
    body.home-demo-page .hd-route__rail i {
        transition:height 120ms linear !important;
    }

    /* Keep product tags metrically identical to the approved Hero tags. */
    body.home-demo-page .hd-tags {
        margin-top:14px !important;
        gap:7px 8px !important;
    }
    body.home-demo-page .hd-tags span {
        padding:6px 10px !important;
        min-height:0 !important;
        font-size:10px !important;
        line-height:1.1 !important;
    }

    /* SOULU WEB — sky titanium derived from the WEB wordmark palette. */
    body.home-demo-page #soulu-web .hd-btn--primary {
        color:#103647 !important;
        border:1px solid rgba(255,255,255,.76) !important;
        background:
            linear-gradient(145deg,
                #2f7198 0%,
                #73c7f0 24%,
                #e6f8ff 46%,
                #61afd8 60%,
                #9bdcf8 76%,
                #2a719a 100%) !important;
        box-shadow:
            0 14px 30px rgba(56,145,194,.18),
            inset 0 1px 0 rgba(255,255,255,.82),
            inset 0 -8px 18px rgba(38,105,142,.10) !important;
        text-shadow:0 1px 0 rgba(255,255,255,.48);
    }
    body.home-demo-page #soulu-web .hd-btn--primary:hover {
        box-shadow:
            0 17px 34px rgba(56,145,194,.23),
            inset 0 1px 0 rgba(255,255,255,.88),
            inset 0 -8px 18px rgba(38,105,142,.12) !important;
    }

    body.home-demo-page #soulu-web .hd-btn--secondary {
        color:#11151a !important;
        border:1px solid transparent !important;
        background:
            linear-gradient(135deg, rgba(255,255,255,.94), rgba(229,245,252,.82)) padding-box,
            linear-gradient(110deg,
                #367ea5 0%,
                #7fd4fb 28%,
                #e4f8ff 48%,
                #66bee9 70%,
                #2d7195 100%) border-box !important;
        box-shadow:
            inset 0 1px 0 rgba(255,255,255,.95),
            0 8px 22px rgba(73,170,220,.10) !important;
        backdrop-filter:blur(12px);
        -webkit-backdrop-filter:blur(12px);
    }
    body.home-demo-page #soulu-web .hd-btn--secondary:hover {
        color:#11151a !important;
        background:
            linear-gradient(135deg, rgba(255,255,255,.98), rgba(218,241,252,.9)) padding-box,
            linear-gradient(110deg,
                #367ea5 0%,
                #7fd4fb 28%,
                #e4f8ff 48%,
                #66bee9 70%,
                #2d7195 100%) border-box !important;
        box-shadow:
            inset 0 1px 0 rgba(255,255,255,.98),
            0 10px 24px rgba(73,170,220,.14) !important;
    }
}


    /* SOULU WEB segmented tags */
    body.home-demo-page #soulu-web .hd-tags span.hd-tag--web-neutral {
        border-color: rgba(89, 176, 224, .28) !important;
        background: rgba(255,255,255,.58) !important;
        color: rgba(29,44,54,.82) !important;
        box-shadow: inset 0 1px 0 rgba(255,255,255,.72) !important;
    }
    body.home-demo-page #soulu-web .hd-tags span.hd-tag--nko {
        border-color: rgba(255, 70, 185, .52) !important;
        color: #8d285f !important;
        background: rgba(255,255,255,.64) !important;
    }
    body.home-demo-page #soulu-web .hd-tags span.hd-tag--b2b {
        border-color: rgba(255, 156, 82, .56) !important;
        color: #8f5429 !important;
        background: rgba(255,255,255,.64) !important;
    }
    body.home-demo-page #soulu-web .hd-tags span.hd-tag--b2c {
        border-color: rgba(85, 207, 137, .58) !important;
        color: #2d724b !important;
        background: rgba(255,255,255,.64) !important;
    }
    body.home-demo-page #soulu-web .hd-tags span.hd-tag--b2g {
        border-color: rgba(67, 213, 242, .58) !important;
        color: #2e6d83 !important;
        background: rgba(255,255,255,.64) !important;
    }


/* 0.4.1.089 — SOULU FLOW block unification, custom showcase, CTA styling */
@media (min-width:821px) {
    body.home-demo-page #soulu-flow .hd-eyebrow {
        background: linear-gradient(90deg, #c72bad 4%, #ef8843 34%, #78b94c 66%, #4da9df 96%) !important;
        -webkit-background-clip: text !important;
        background-clip: text !important;
        color: transparent !important;
    }

    body.home-demo-page #soulu-flow .hd-tags {
        margin-top: 14px !important;
        gap: 7px 8px !important;
    }
    body.home-demo-page #soulu-flow .hd-tags span {
        padding: 6px 10px !important;
        min-height: 0 !important;
        font-size: 10px !important;
        line-height: 1.1 !important;
        color: rgba(26,34,42,.80) !important;
        border-color: rgba(112, 159, 192, .22) !important;
        background: rgba(255,255,255,.62) !important;
        box-shadow: inset 0 1px 0 rgba(255,255,255,.82) !important;
    }

    body.home-demo-page #soulu-flow .hd-btn--primary {
        color: #15181d !important;
        border: 1px solid rgba(255,255,255,.78) !important;
        background:
            linear-gradient(140deg,
                #bf2daa 0%,
                #ef8740 26%,
                #eaf4ee 43%,
                #79b84d 63%,
                #68c2e7 82%,
                #4c9fd7 100%) !important;
        box-shadow:
            0 15px 34px rgba(99, 129, 162, .16),
            inset 0 1px 0 rgba(255,255,255,.88),
            inset 0 -10px 20px rgba(56,101,138,.10) !important;
        text-shadow: 0 1px 0 rgba(255,255,255,.42);
    }
    body.home-demo-page #soulu-flow .hd-btn--primary:hover {
        box-shadow:
            0 18px 38px rgba(99, 129, 162, .19),
            inset 0 1px 0 rgba(255,255,255,.94),
            inset 0 -10px 20px rgba(56,101,138,.13) !important;
    }

    body.home-demo-page #soulu-flow .hd-btn--secondary {
        color: #11151a !important;
        border: 1px solid transparent !important;
        background:
            linear-gradient(135deg, rgba(255,255,255,.96), rgba(244,248,250,.88)) padding-box,
            linear-gradient(110deg,
                #c72bad 0%,
                #ef8742 30%,
                #79b84d 66%,
                #4ca9df 100%) border-box !important;
        box-shadow:
            inset 0 1px 0 rgba(255,255,255,.96),
            0 10px 24px rgba(112,145,174,.10) !important;
        backdrop-filter: blur(12px);
        -webkit-backdrop-filter: blur(12px);
    }
    body.home-demo-page #soulu-flow .hd-btn--secondary:hover {
        background:
            linear-gradient(135deg, rgba(255,255,255,.98), rgba(238,244,247,.94)) padding-box,
            linear-gradient(110deg,
                #c72bad 0%,
                #ef8742 30%,
                #79b84d 66%,
                #4ca9df 100%) border-box !important;
        box-shadow:
            inset 0 1px 0 rgba(255,255,255,.98),
            0 12px 28px rgba(112,145,174,.14) !important;
    }

    body.home-demo-page #soulu-flow .hd-visual {
        padding: 0 0 12px !important;
        background: none !important;
        border: 0 !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }
    body.home-demo-page #soulu-flow .hd-visual::before {
        display: none !important;
    }

    body.home-demo-page #soulu-flow .hd-flow-showcase {
        position: relative;
        width: 100%;
        height: min(84vh, 760px);
        min-height: 620px;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot {
        position: absolute;
        margin: 0;
        overflow: hidden;
        border-radius: 24px;
        background: linear-gradient(145deg, rgba(255,255,255,.95), rgba(244,248,251,.92));
        border: 1px solid rgba(255,255,255,.9);
        box-shadow: 0 24px 60px rgba(76,88,101,.14), inset 0 1px 0 rgba(255,255,255,.95);
        color: #1b222b;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__window {
        display: flex;
        align-items: center;
        gap: 5px;
        height: 24px;
        padding: 0 12px;
        background: linear-gradient(180deg, rgba(252,253,254,.96), rgba(238,242,245,.96));
        border-bottom: 1px solid rgba(215,223,230,.95);
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__window i {
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: #c4ccd3;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot figcaption {
        position: absolute;
        left: 14px;
        bottom: 12px;
        padding: 7px 10px;
        border-radius: 12px;
        background: rgba(16,20,28,.76);
        color: #fff;
        font-size: 9px;
        font-weight: 700;
        backdrop-filter: blur(14px);
        -webkit-backdrop-filter: blur(14px);
    }

    body.home-demo-page #soulu-flow .hd-flow-shot--ops {
        width: 72%;
        left: 1%;
        top: 3%;
        z-index: 3;
        transform: rotate(-1.6deg);
    }
    body.home-demo-page #soulu-flow .hd-flow-shot--portal {
        width: 62%;
        right: 3%;
        bottom: 4%;
        z-index: 4;
        transform: rotate(2.2deg);
    }
    body.home-demo-page #soulu-flow .hd-flow-shot--mobile {
        width: 27%;
        right: 1%;
        top: 2%;
        z-index: 5;
        transform: rotate(2.8deg);
    }

    body.home-demo-page #soulu-flow .hd-flow-shot__shell {
        display: grid;
        grid-template-columns: 120px minmax(0, 1fr);
        min-height: 380px;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__sidebar {
        display: flex;
        flex-direction: column;
        gap: 9px;
        padding: 18px 14px;
        background: linear-gradient(180deg, #14171d, #1e232b);
        color: rgba(255,255,255,.92);
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__sidebar strong {
        margin-bottom: 6px;
        font-size: 13px;
        letter-spacing: .02em;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__sidebar span {
        font-size: 11px;
        color: rgba(236,241,247,.72);
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__main {
        padding: 18px 18px 48px;
        background: linear-gradient(180deg, rgba(250,252,254,.98), rgba(245,248,251,.98));
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__topline b,
    body.home-demo-page #soulu-flow .hd-flow-shot__portal-head b,
    body.home-demo-page #soulu-flow .hd-flow-shot__phone-head b {
        display: block;
        font-size: 16px;
        line-height: 1.15;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__topline small,
    body.home-demo-page #soulu-flow .hd-flow-shot__portal-head small,
    body.home-demo-page #soulu-flow .hd-flow-shot__phone-head span {
        display: block;
        margin-top: 4px;
        color: #6d7985;
        font-size: 10px;
        line-height: 1.35;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__stats {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 10px;
        margin-top: 14px;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__stats span,
    body.home-demo-page #soulu-flow .hd-flow-shot__table span,
    body.home-demo-page #soulu-flow .hd-card-soft {
        border-radius: 16px;
        border: 1px solid rgba(224,231,236,.9);
        background: rgba(255,255,255,.88);
        box-shadow: inset 0 1px 0 rgba(255,255,255,.94);
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__stats span {
        padding: 12px 12px 10px;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__stats b {
        display: block;
        font-size: 18px;
        line-height: 1;
        color: #1a2027;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__stats small {
        display: block;
        margin-top: 5px;
        font-size: 10px;
        color: #70808f;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__grid {
        display: grid;
        grid-template-columns: 1.15fr .85fr;
        gap: 12px;
        margin-top: 12px;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__grid article,
    body.home-demo-page #soulu-flow .hd-flow-shot__portal-chat {
        padding: 14px;
        border-radius: 18px;
        border: 1px solid rgba(224,231,236,.92);
        background: rgba(255,255,255,.9);
        box-shadow: inset 0 1px 0 rgba(255,255,255,.95);
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__grid h4,
    body.home-demo-page #soulu-flow .hd-flow-shot__portal-chat b {
        margin: 0 0 8px;
        font-size: 12px;
        line-height: 1.2;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__grid ul,
    body.home-demo-page #soulu-flow .hd-flow-shot__portal-chat ul {
        margin: 0;
        padding-left: 15px;
        color: #5a6773;
        font-size: 10px;
        line-height: 1.45;
    }
    body.home-demo-page #soulu-flow .hd-bars {
        display: flex;
        flex-direction: column;
        gap: 8px;
        margin-top: 2px;
    }
    body.home-demo-page #soulu-flow .hd-bars i {
        display: block;
        width: var(--w);
        height: 10px;
        border-radius: 999px;
        background: linear-gradient(90deg, #ca2bb0 0%, #ee8a42 35%, #7ab94d 68%, #4ca9df 100%);
        opacity: .92;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__table {
        display: grid;
        gap: 8px;
        margin-top: 12px;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__table span {
        padding: 10px 12px;
        font-size: 10px;
        color: #54606c;
    }

    body.home-demo-page #soulu-flow .hd-flow-shot--portal {
        padding-bottom: 48px;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__portal-head {
        padding: 18px 18px 10px;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__portal-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
        padding: 0 18px;
    }
    body.home-demo-page #soulu-flow .hd-card-soft {
        display: grid;
        gap: 4px;
        min-height: 80px;
        padding: 14px;
    }
    body.home-demo-page #soulu-flow .hd-card-soft strong {
        font-size: 12px;
        line-height: 1.2;
    }
    body.home-demo-page #soulu-flow .hd-card-soft span,
    body.home-demo-page #soulu-flow .hd-flow-shot__portal-chat span {
        color: #6b7885;
        font-size: 10px;
        line-height: 1.35;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__portal-chat {
        margin: 12px 18px 0;
    }

    body.home-demo-page #soulu-flow .hd-flow-shot--mobile {
        padding-bottom: 46px;
        background: linear-gradient(180deg, rgba(251,252,254,.98), rgba(247,249,252,.96));
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__phone-head {
        padding: 14px 14px 8px;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__phone-card {
        margin: 0 14px 12px;
        padding: 12px 12px 11px;
        border-radius: 18px;
        border: 1px solid rgba(224,231,236,.92);
        background: rgba(255,255,255,.88);
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__phone-card--accent {
        background: linear-gradient(135deg, rgba(255,255,255,.92), rgba(243,247,251,.9));
        box-shadow: inset 0 1px 0 rgba(255,255,255,.96), 0 10px 18px rgba(107,132,160,.08);
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__phone-card small {
        display: block;
        font-size: 9px;
        color: #6b7680;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__phone-card strong {
        display: block;
        margin-top: 4px;
        font-size: 13px;
        line-height: 1.2;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__phone-card span {
        display: block;
        margin-top: 4px;
        font-size: 9px;
        color: #65707b;
        line-height: 1.3;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__phone-list {
        display: grid;
        gap: 9px;
        padding: 0 14px;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__phone-list article {
        padding: 11px 12px;
        border-radius: 16px;
        border: 1px solid rgba(224,231,236,.92);
        background: rgba(255,255,255,.9);
        box-shadow: inset 0 1px 0 rgba(255,255,255,.94);
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__phone-list b {
        display: block;
        font-size: 11px;
        line-height: 1.2;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__phone-list span {
        display: block;
        margin-top: 3px;
        color: #697683;
        font-size: 9px;
        line-height: 1.32;
    }

    body.home-demo-page #soulu-flow .hd-visual-caption--flow {
        position:absolute;
        left:50% !important;
        right:auto !important;
        bottom:4px !important;
        transform:translateX(-50%) !important;
        width:82% !important;
        max-width:760px !important;
        margin:0 !important;
        white-space:normal !important;
        text-align:center !important;
        line-height:1.35 !important;
        font-size:10px !important;
    }
}

@media (max-width:820px) {
    body.home-demo-page #soulu-flow .hd-eyebrow {
        background: linear-gradient(90deg, #c72bad 4%, #ef8843 34%, #78b94c 66%, #4da9df 96%);
        -webkit-background-clip: text;
        background-clip: text;
        color: transparent;
    }
    body.home-demo-page #soulu-flow .hd-visual {
        padding: 0 !important;
        background: none !important;
        border: 0 !important;
        box-shadow: none !important;
    }
    body.home-demo-page #soulu-flow .hd-visual::before {
        display:none !important;
    }
    body.home-demo-page #soulu-flow .hd-flow-showcase {
        position: relative;
        display: grid;
        gap: 14px;
        min-height: 0;
        height: auto;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot {
        position: relative;
        width: 100% !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        transform: none !important;
        border-radius: 18px;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__shell {
        grid-template-columns: 90px minmax(0, 1fr);
        min-height: 0;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__sidebar {
        padding: 12px 10px;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__main,
    body.home-demo-page #soulu-flow .hd-flow-shot__portal-head,
    body.home-demo-page #soulu-flow .hd-flow-shot__portal-grid,
    body.home-demo-page #soulu-flow .hd-flow-shot__portal-chat,
    body.home-demo-page #soulu-flow .hd-flow-shot__phone-head,
    body.home-demo-page #soulu-flow .hd-flow-shot__phone-list,
    body.home-demo-page #soulu-flow .hd-flow-shot__phone-card {
        padding-left: 12px;
        padding-right: 12px;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot__stats,
    body.home-demo-page #soulu-flow .hd-flow-shot__grid,
    body.home-demo-page #soulu-flow .hd-flow-shot__portal-grid {
        grid-template-columns: 1fr;
    }
    body.home-demo-page #soulu-flow .hd-flow-shot figcaption { display:none; }
}


/* 0.4.1.090 — FLOW eyebrow gradient spans the text itself, not the full column. */
body.home-demo-page #soulu-flow .hd-eyebrow {
    display:inline-block !important;
    width:max-content !important;
    max-width:100% !important;
    background:linear-gradient(90deg,
        #c72bad 0%,
        #ef8742 33%,
        #79b84d 66%,
        #4ca9df 100%) !important;
    background-size:100% 100% !important;
    background-repeat:no-repeat !important;
    -webkit-background-clip:text !important;
    background-clip:text !important;
    -webkit-text-fill-color:transparent !important;
    color:transparent !important;
}


/* 0.4.1.093 — SOULU FLOW NKO content and visual cleanup */
@media (min-width:821px) {
    body.home-demo-page #soulu-flow-nko .hd-title-flow {
        display:inline;
        font-style:normal;
        background:linear-gradient(90deg,#c72bad 0%,#ef8742 33%,#79b84d 66%,#4ca9df 100%);
        -webkit-background-clip:text;
        background-clip:text;
        color:transparent;
        -webkit-text-fill-color:transparent;
    }

    body.home-demo-page #soulu-flow-nko .hd-btn--secondary {
        color:#11151a !important;
        border:1px solid transparent !important;
        background:
            linear-gradient(135deg,rgba(255,255,255,.96),rgba(253,239,249,.88)) padding-box,
            linear-gradient(110deg,#8d0e59 0%,#d82e96 28%,#ff91cf 50%,#df3b9f 72%,#831051 100%) border-box !important;
        box-shadow:
            inset 0 1px 0 rgba(255,255,255,.96),
            0 8px 22px rgba(216,46,150,.10) !important;
        backdrop-filter:blur(12px) !important;
        -webkit-backdrop-filter:blur(12px) !important;
    }
    body.home-demo-page #soulu-flow-nko .hd-btn--secondary:hover {
        background:
            linear-gradient(135deg,rgba(255,255,255,.99),rgba(252,232,246,.94)) padding-box,
            linear-gradient(110deg,#8d0e59 0%,#d82e96 28%,#ff91cf 50%,#df3b9f 72%,#831051 100%) border-box !important;
        box-shadow:
            inset 0 1px 0 rgba(255,255,255,.98),
            0 10px 25px rgba(216,46,150,.14) !important;
    }

    body.home-demo-page #soulu-flow-nko .hd-visual {
        background:none !important;
        border:0 !important;
        box-shadow:none !important;
        backdrop-filter:none !important;
        -webkit-backdrop-filter:none !important;
    }
    body.home-demo-page #soulu-flow-nko .hd-visual::before {
        display:none !important;
    }
    body.home-demo-page #soulu-flow-nko .hd-flow-chain--nko {
        display:none !important;
    }
}

@media (max-width:820px) {
    body.home-demo-page #soulu-flow-nko .hd-title-flow {
        display:inline;
        font-style:normal;
        background:linear-gradient(90deg,#c72bad 0%,#ef8742 33%,#79b84d 66%,#4ca9df 100%);
        -webkit-background-clip:text;
        background-clip:text;
        color:transparent;
        -webkit-text-fill-color:transparent;
    }
    body.home-demo-page #soulu-flow-nko .hd-visual {
        background:none !important;
        border:0 !important;
        box-shadow:none !important;
        backdrop-filter:none !important;
        -webkit-backdrop-filter:none !important;
    }
    body.home-demo-page #soulu-flow-nko .hd-visual::before,
    body.home-demo-page #soulu-flow-nko .hd-flow-chain--nko {
        display:none !important;
    }
}


/* 0.4.1.095 — MVP premium co-funded platform scene + turquoise accent */
body.home-demo-page #soulu-flow-nko .hd-title-nko {
    color:#d82e96 !important;
    -webkit-text-fill-color:#d82e96 !important;
}

body.home-demo-page #create-flow {
    --mvp-turq-dark:#117983;
    --mvp-turq:#22b8c1;
    --mvp-turq-light:#72e0df;
}

body.home-demo-page #create-flow .hd-eyebrow,
body.home-demo-page #create-flow .hd-mvp-economics span {
    color:var(--mvp-turq-dark) !important;
}

body.home-demo-page #create-flow .hd-mvp-economics {
    border-color:rgba(34,184,193,.24) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 10px 28px rgba(34,184,193,.06) !important;
}

body.home-demo-page #create-flow .hd-tags span {
    border-color:rgba(34,184,193,.28) !important;
}

body.home-demo-page #create-flow .hd-launch-mini i {
    color:var(--mvp-turq-dark) !important;
    background:rgba(34,184,193,.08) !important;
    border-color:rgba(34,184,193,.30) !important;
}

body.home-demo-page #create-flow .hd-btn--primary {
    color:#fff !important;
    border:0 !important;
    background:linear-gradient(110deg,#117983 0%,#22b8c1 30%,#72e0df 52%,#22b8c1 74%,#168f98 100%) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.32),0 10px 28px rgba(34,184,193,.20) !important;
}

body.home-demo-page #create-flow .hd-btn--secondary {
    color:#173237 !important;
    border:1px solid transparent !important;
    background:
        linear-gradient(135deg,rgba(255,255,255,.98),rgba(231,250,250,.90)) padding-box,
        linear-gradient(110deg,#117983 0%,#22b8c1 32%,#72e0df 52%,#22b8c1 74%,#168f98 100%) border-box !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.98),0 8px 24px rgba(34,184,193,.13) !important;
}

body.home-demo-page #create-flow .hd-visual {
    background:none !important;
    border:0 !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    padding:0 !important;
    overflow:visible !important;
}
body.home-demo-page #create-flow .hd-visual::before { display:none !important; }

body.home-demo-page #create-flow .mvp-premium {
    position:relative;
    width:100%;
    min-height:905px;
}

body.home-demo-page #create-flow .mvp-ui {
    position:absolute;
    border:1px solid rgba(211,218,225,.9);
    background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(246,248,250,.96));
    box-shadow:0 22px 55px rgba(58,68,80,.11),inset 0 1px 0 rgba(255,255,255,.96);
    border-radius:24px;
    overflow:hidden;
    color:#171c22;
}

body.home-demo-page #create-flow .mvp-bar {
    height:24px;
    border-bottom:1px solid rgba(218,224,230,.9);
    background:rgba(246,248,250,.94);
    display:flex;
    align-items:center;
    gap:5px;
    padding:0 11px;
}
body.home-demo-page #create-flow .mvp-bar i {
    width:5px;
    height:5px;
    border-radius:50%;
    background:#c3cbd3;
}

body.home-demo-page #create-flow .mvp-main {
    left:0;
    top:30px;
    width:61%;
    min-height:390px;
    transform:rotate(-.6deg);
    z-index:2;
}
body.home-demo-page #create-flow .mvp-main-body { padding:19px 20px 20px; }
body.home-demo-page #create-flow .mvp-title-row {
    display:flex;
    justify-content:space-between;
    gap:16px;
    align-items:flex-start;
}
body.home-demo-page #create-flow .mvp-ui h4 {
    margin:0;
    font-size:17px;
    line-height:1.2;
    color:#161b21;
}
body.home-demo-page #create-flow .mvp-ui p {
    margin:6px 0 0;
    font-size:10.5px;
    line-height:1.45;
    color:#66717d;
}
body.home-demo-page #create-flow .mvp-badge,
body.home-demo-page #create-flow .mvp-economy-badge {
    flex:0 0 auto;
    border-radius:999px;
    padding:8px 11px;
    font-size:9px;
    font-weight:700;
    color:#117983;
    background:
        linear-gradient(135deg,#fff,rgba(233,250,250,.94)) padding-box,
        linear-gradient(110deg,#117983,#22b8c1,#72e0df,#117983) border-box;
    border:1px solid transparent;
}
body.home-demo-page #create-flow .mvp-cols {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:14px;
}
body.home-demo-page #create-flow .mvp-panel {
    padding:12px 13px;
    border-radius:16px;
    background:rgba(255,255,255,.94);
    border:1px solid #e2e7eb;
}
body.home-demo-page #create-flow .mvp-panel strong { font-size:11px; }
body.home-demo-page #create-flow .mvp-panel ul {
    margin:7px 0 0;
    padding-left:14px;
    font-size:9px;
    line-height:1.55;
    color:#68737e;
}
body.home-demo-page #create-flow .mvp-steps {
    display:grid;
    gap:7px;
    margin-top:12px;
}
body.home-demo-page #create-flow .mvp-step {
    border:1px solid #e3e8ec;
    background:#fff;
    border-radius:13px;
    padding:9px 11px;
}
body.home-demo-page #create-flow .mvp-step b {
    display:block;
    font-size:10px;
    line-height:1.35;
}
body.home-demo-page #create-flow .mvp-step span {
    display:block;
    margin-top:2px;
    font-size:8.5px;
    color:#75808a;
}

body.home-demo-page #create-flow .mvp-member {
    right:0;
    top:18px;
    width:34%;
    min-height:350px;
    transform:rotate(1.4deg);
    z-index:3;
}
body.home-demo-page #create-flow .mvp-member-body { padding:17px; }
body.home-demo-page #create-flow .mvp-highlight {
    margin-top:12px;
    padding:12px;
    border-radius:15px;
    background:
        linear-gradient(135deg,#fff,rgba(233,250,250,.94)) padding-box,
        linear-gradient(110deg,#117983,#22b8c1,#72e0df,#117983) border-box;
    border:1px solid transparent;
}
body.home-demo-page #create-flow .mvp-highlight b {
    display:block;
    font-size:10px;
}
body.home-demo-page #create-flow .mvp-highlight span {
    display:block;
    margin-top:4px;
    font-size:8.5px;
    line-height:1.4;
    color:#6b7680;
}
body.home-demo-page #create-flow .mvp-member-list {
    display:grid;
    gap:7px;
    margin-top:10px;
}
body.home-demo-page #create-flow .mvp-member-list div {
    padding:9px 10px;
    border:1px solid #e3e8ec;
    background:#fff;
    border-radius:13px;
}
body.home-demo-page #create-flow .mvp-member-list b {
    display:block;
    font-size:9.5px;
}
body.home-demo-page #create-flow .mvp-member-list span {
    display:block;
    margin-top:2px;
    font-size:8px;
    color:#74808a;
}

body.home-demo-page #create-flow .mvp-economy {
    left:15%;
    top:535px;
    width:70%;
    min-height:245px;
    transform:rotate(.5deg);
    z-index:4;
}
body.home-demo-page #create-flow .mvp-economy-body--dash { padding:16px 17px 18px; }
body.home-demo-page #create-flow .mvp-economy-head {
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:16px;
}
body.home-demo-page #create-flow .mvp-economy-top {
    display:grid;
    grid-template-columns:1.2fr 1fr 1fr 1.1fr;
    gap:10px;
    margin-top:12px;
}
body.home-demo-page #create-flow .mvp-econ-card {
    padding:12px;
    border-radius:16px;
    background:#fff;
    border:1px solid #e3e8ec;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.96);
}
body.home-demo-page #create-flow .mvp-econ-card--hero,
body.home-demo-page #create-flow .mvp-econ-card--save {
    background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(246,248,250,.96));
}
body.home-demo-page #create-flow .mvp-econ-card--save {
    border-color:rgba(34,184,193,.52);
    background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(231,250,250,.88));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.98),0 8px 24px rgba(34,184,193,.08);
}
body.home-demo-page #create-flow .mvp-econ-card small {
    display:block;
    font-size:9px;
    color:#77828d;
}
body.home-demo-page #create-flow .mvp-econ-card b {
    display:block;
    margin-top:6px;
    font-size:20px;
    line-height:1.05;
    color:#161b21;
}
body.home-demo-page #create-flow .mvp-econ-card span {
    display:block;
    margin-top:5px;
    font-size:8.5px;
    line-height:1.35;
    color:#6f7b86;
}
body.home-demo-page #create-flow .mvp-economy-grid {
    display:grid;
    grid-template-columns:1.1fr .9fr;
    gap:10px;
    margin-top:10px;
}
body.home-demo-page #create-flow .mvp-econ-panel {
    padding:12px;
    border-radius:16px;
    background:#fff;
    border:1px solid #e3e8ec;
}
body.home-demo-page #create-flow .mvp-econ-panel strong {
    display:block;
    font-size:11px;
    line-height:1.2;
    color:#161b21;
    margin-bottom:9px;
}
body.home-demo-page #create-flow .mvp-bars-compare {
    display:grid;
    gap:8px;
}
body.home-demo-page #create-flow .mvp-bar-row {
    display:grid;
    grid-template-columns:74px 1fr 78px;
    gap:8px;
    align-items:center;
}
body.home-demo-page #create-flow .mvp-bar-row span {
    font-size:8.5px;
    color:#6f7b86;
}
body.home-demo-page #create-flow .mvp-bar-row i {
    display:block;
    height:10px;
    width:100%;
    border-radius:999px;
    background:rgba(221,229,235,.8);
    position:relative;
    overflow:hidden;
}
body.home-demo-page #create-flow .mvp-bar-row i::before {
    content:'';
    display:block;
    width:var(--w);
    height:100%;
    border-radius:999px;
    background:linear-gradient(90deg,#117983 0%,#22b8c1 50%,#72e0df 100%);
}
body.home-demo-page #create-flow .mvp-bar-row b {
    font-size:9px;
    color:#182028;
    text-align:right;
}
body.home-demo-page #create-flow .mvp-econ-panel ul {
    margin:0;
    padding-left:15px;
    font-size:9px;
    line-height:1.5;
    color:#66727d;
}
body.home-demo-page #create-flow .mvp-caption {
    position:absolute;
    left:50%;
    top:830px;
    bottom:auto;
    transform:translateX(-50%);
    width:88%;
    text-align:center;
    color:#7c858f;
    font-size:11px;
    line-height:1.45;
    font-weight:500;
    letter-spacing:.01em;
    text-transform:none;
}

@media (max-width:820px) {
    body.home-demo-page #create-flow .mvp-premium {
        min-height:0;
        display:grid;
        gap:14px;
    }
    body.home-demo-page #create-flow .mvp-ui {
        position:relative;
        inset:auto;
        width:100%;
        min-height:0;
        transform:none;
    }
    body.home-demo-page #create-flow .mvp-economy-top,
    body.home-demo-page #create-flow .mvp-economy-grid,
    body.home-demo-page #create-flow .mvp-cols {
        grid-template-columns:1fr;
    }
    body.home-demo-page #create-flow .mvp-caption {
        position:relative;
        left:auto;
        top:auto;
        bottom:auto;
        transform:none;
        width:100%;
        margin-top:4px;
    }
}


/* 0.4.1.098 — SOULU CLUB final composition */
body.home-demo-page #soulu-club {
    --club-violet:#7B2FF7;
    --club-fuchsia:#E83EAD;
    --club-blue:#3478F6;
    --club-cyan:#23C9D8;
    --club-gradient:linear-gradient(90deg,
        var(--club-violet) 0%,
        var(--club-fuchsia) 34%,
        var(--club-blue) 68%,
        var(--club-cyan) 100%);
}

body.home-demo-page #soulu-club .hd-word-club,
body.home-demo-page #soulu-club .hd-title-club,
body.home-demo-page #soulu-club .club-stage-gradient,
body.home-demo-page #soulu-club .hd-eyebrow,
body.home-demo-page #soulu-club .club-stage-title {
    display:inline-block;
    width:max-content;
    background:var(--club-gradient) !important;
    -webkit-background-clip:text !important;
    background-clip:text !important;
    -webkit-text-fill-color:transparent !important;
    color:transparent !important;
    opacity:1 !important;
    filter:none !important;
}

body.home-demo-page #soulu-club .hd-brandline img {
    opacity:1 !important;
    filter:drop-shadow(0 9px 14px rgba(46,55,68,.13)) !important;
}

body.home-demo-page #soulu-club .hd-tags span {
    background:rgba(255,255,255,.64) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.9) !important;
}
body.home-demo-page #soulu-club .hd-tags span.hd-tag--club-violet {
    border-color:rgba(123,47,247,.24) !important;
}
body.home-demo-page #soulu-club .hd-tags span.hd-tag--club-fuchsia {
    border-color:rgba(232,62,173,.24) !important;
}
body.home-demo-page #soulu-club .hd-tags span.hd-tag--club-cyan {
    border-color:rgba(35,201,216,.26) !important;
}

body.home-demo-page #soulu-club .hd-btn--primary {
    color:#fff !important;
    border:0 !important;
    background:var(--club-gradient) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.28),
        0 10px 28px rgba(82,88,210,.16) !important;
}

body.home-demo-page #soulu-club .hd-btn--secondary {
    color:#15181d !important;
    border:1px solid transparent !important;
    background:
        linear-gradient(135deg,rgba(255,255,255,.98),rgba(247,248,252,.94)) padding-box,
        var(--club-gradient) border-box !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.96),0 8px 22px rgba(82,88,210,.08) !important;
}

body.home-demo-page #soulu-club .hd-visual {
    background:none !important;
    border:0 !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    overflow:visible !important;
}

body.home-demo-page #soulu-club .hd-visual::before {
    display:none !important;
}

@media (min-width:821px) {
    body.home-demo-page #soulu-club {
        grid-template-columns:minmax(0,1.16fr) minmax(0,.84fr) !important;
        column-gap:26px !important;
    }

    body.home-demo-page #soulu-club .hd-copy {
        width:100% !important;
        max-width:none !important;
    }

    body.home-demo-page #soulu-club .hd-title {
        width:850px !important;
        max-width:850px !important;
    }

    body.home-demo-page #soulu-club .club-right-stage {
        width:max-content;
        max-width:none;
        transform:translateX(-180px);
    }

    body.home-demo-page #soulu-club .club-stage-title {
        margin:0 0 10px;
        font-size:12px;
        line-height:1.2;
        font-weight:800;
        letter-spacing:.16em;
        text-transform:uppercase;
    }

    body.home-demo-page #soulu-club .club-stage-heading {
        margin:0 0 22px;
        color:#141a22;
        font-size:44px;
        line-height:1.02;
        font-weight:800;
        letter-spacing:-.04em;
    }

    body.home-demo-page #soulu-club .club-dark-grid {
        display:grid;
        grid-template-columns:repeat(3,324px);
        width:max-content;
        max-width:none;
        gap:18px;
        align-items:stretch;
    }

    body.home-demo-page #soulu-club .club-dark-card {
        position:relative;
        width:324px;
        min-width:324px;
        max-width:324px;
        min-height:456px;
        box-sizing:border-box;
        display:flex;
        flex-direction:column;
        padding:24px 24px 20px;
        border-radius:36px;
        overflow:hidden;
        background:
            radial-gradient(120% 120% at 0% 0%,rgba(255,255,255,.07),transparent 38%),
            radial-gradient(90% 90% at 100% 100%,rgba(44,69,255,.07),transparent 45%),
            linear-gradient(160deg,rgba(11,17,30,.80),rgba(16,22,36,.80) 45%,rgba(8,12,22,.80));
        box-shadow:
            inset 0 1px 0 rgba(255,255,255,.10),
            0 22px 46px rgba(6,10,18,.15);
        transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;
    }

    body.home-demo-page #soulu-club .club-dark-card--violet {
        border:1px solid rgba(123,47,247,.72);
    }
    body.home-demo-page #soulu-club .club-dark-card--fuchsia {
        border:1px solid rgba(232,62,173,.72);
    }
    body.home-demo-page #soulu-club .club-dark-card--cyan {
        border:1px solid rgba(35,201,216,.76);
    }

    body.home-demo-page #soulu-club .club-dark-card:hover {
        transform:translateY(-4px);
        box-shadow:
            inset 0 1px 0 rgba(255,255,255,.12),
            0 28px 58px rgba(6,10,18,.22);
    }

    body.home-demo-page #soulu-club .club-card-tags {
        display:flex;
        flex-wrap:wrap;
        gap:7px;
        margin-bottom:15px;
    }

    body.home-demo-page #soulu-club .club-card-tags span {
        min-height:24px;
        display:inline-flex;
        align-items:center;
        padding:0 9px;
        border-radius:999px;
        font-size:10px;
        line-height:1;
        color:rgba(255,255,255,.92);
        background:linear-gradient(180deg,rgba(255,255,255,.30),rgba(255,255,255,.14));
        border:1px solid rgba(255,255,255,.30);
        box-shadow:inset 0 1px 0 rgba(255,255,255,.22);
    }

    body.home-demo-page #soulu-club .club-dark-card h3 {
        margin:0 0 17px;
        color:#f7f9fc;
        font-size:23px;
        line-height:1.08;
        font-weight:800;
        letter-spacing:-.03em;
    }

    body.home-demo-page #soulu-club .club-dark-card p {
        margin:0;
        color:rgba(233,238,245,.78);
        font-size:13.2px;
        line-height:1.5;
    }

    body.home-demo-page #soulu-club .club-dark-card ul {
        margin:18px 0 14px;
        padding:0;
        list-style:none;
        display:grid;
        gap:11px;
    }

    body.home-demo-page #soulu-club .club-dark-card li {
        position:relative;
        padding-left:24px;
        color:rgba(239,243,249,.88);
        font-size:13.2px;
        line-height:1.45;
    }

    body.home-demo-page #soulu-club .club-dark-card li::before {
        content:"";
        position:absolute;
        left:0;
        top:.48em;
        width:8px;
        height:8px;
        border-radius:50%;
    }

    body.home-demo-page #soulu-club .club-dark-card--violet li::before { background:var(--club-violet); }
    body.home-demo-page #soulu-club .club-dark-card--fuchsia li::before { background:var(--club-fuchsia); }
    body.home-demo-page #soulu-club .club-dark-card--cyan li::before { background:var(--club-cyan); }

    body.home-demo-page #soulu-club .club-card-btn {
        margin-top:auto;
        min-height:58px;
        display:flex;
        align-items:center;
        justify-content:center;
        border-radius:18px;
        text-decoration:none;
        font-size:14.4px;
        font-weight:700;
        color:rgba(255,255,255,.94);
        background:linear-gradient(145deg,rgba(40,45,57,.98),rgba(17,22,32,.98));
        border:1px solid transparent;
        box-shadow:
            inset 0 1px 0 rgba(255,255,255,.10),
            0 8px 18px rgba(0,0,0,.22);
        transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
    }

    body.home-demo-page #soulu-club .club-card-btn:hover {
        transform:translateY(-1px);
    }

    body.home-demo-page #soulu-club .club-dark-card--violet .club-card-btn:hover {
        border-color:var(--club-violet);
        box-shadow:0 8px 18px rgba(0,0,0,.22),0 0 18px rgba(123,47,247,.22);
    }

    body.home-demo-page #soulu-club .club-dark-card--fuchsia .club-card-btn:hover {
        border-color:var(--club-fuchsia);
        box-shadow:0 8px 18px rgba(0,0,0,.22),0 0 18px rgba(232,62,173,.22);
    }

    body.home-demo-page #soulu-club .club-dark-card--cyan .club-card-btn:hover {
        border-color:var(--club-cyan);
        box-shadow:0 8px 18px rgba(0,0,0,.22),0 0 18px rgba(35,201,216,.20);
    }
}

@media (max-width:820px) {
    body.home-demo-page #soulu-club .club-right-stage {
        width:100%;
        max-width:100%;
        transform:none;
    }

    body.home-demo-page #soulu-club .club-stage-title {
        margin:0 0 8px;
        font-size:10px;
        line-height:1.2;
        font-weight:800;
        letter-spacing:.14em;
        text-transform:uppercase;
    }

    body.home-demo-page #soulu-club .club-stage-heading {
        margin:0 0 16px;
        color:#141a22;
        font-size:28px;
        line-height:1.04;
        font-weight:800;
        letter-spacing:-.04em;
    }

    body.home-demo-page #soulu-club .club-dark-grid {
        display:grid;
        grid-template-columns:1fr;
        gap:12px;
    }

    body.home-demo-page #soulu-club .club-dark-card {
        width:100%;
        min-width:0;
        max-width:none;
        min-height:0;
        padding:20px;
        border-radius:26px;
        background:linear-gradient(160deg,rgba(11,17,30,.86),rgba(16,22,36,.84) 45%,rgba(8,12,22,.88));
    }

    body.home-demo-page #soulu-club .club-dark-card--violet { border:1px solid rgba(123,47,247,.72); }
    body.home-demo-page #soulu-club .club-dark-card--fuchsia { border:1px solid rgba(232,62,173,.72); }
    body.home-demo-page #soulu-club .club-dark-card--cyan { border:1px solid rgba(35,201,216,.76); }

    body.home-demo-page #soulu-club .club-card-tags {
        display:flex;
        flex-wrap:wrap;
        gap:6px;
        margin-bottom:12px;
    }

    body.home-demo-page #soulu-club .club-card-tags span {
        min-height:22px;
        display:inline-flex;
        align-items:center;
        padding:0 8px;
        border-radius:999px;
        font-size:9px;
        color:rgba(255,255,255,.92);
        background:rgba(255,255,255,.14);
        border:1px solid rgba(255,255,255,.22);
    }

    body.home-demo-page #soulu-club .club-dark-card h3 {
        margin:0 0 10px;
        color:#f7f9fc;
        font-size:19px;
        line-height:1.1;
    }

    body.home-demo-page #soulu-club .club-dark-card p,
    body.home-demo-page #soulu-club .club-dark-card li {
        color:rgba(239,243,249,.82);
        font-size:12px;
        line-height:1.5;
    }

    body.home-demo-page #soulu-club .club-dark-card ul {
        margin:14px 0 12px;
        padding-left:18px;
    }

    body.home-demo-page #soulu-club .club-card-btn {
        margin-top:12px;
        min-height:48px;
        display:flex;
        align-items:center;
        justify-content:center;
        border-radius:16px;
        color:#fff;
        text-decoration:none;
        font-size:12px;
        font-weight:700;
        background:linear-gradient(145deg,rgba(40,45,57,.98),rgba(17,22,32,.98));
        border:1px solid rgba(255,255,255,.10);
    }
}


/* ==========================================================
   SOULULAB HOME DEMO — CONTACT FORM FINAL (0.4.1.099)
   ========================================================== */
body.home-demo-page #contact .hd-visual {
    align-items:center !important;
    justify-content:center !important;
    background:none !important;
    border:0 !important;
    box-shadow:none !important;
    overflow:visible !important;
}
body.home-demo-page #contact .hd-visual::before,
body.home-demo-page #contact .hd-visual::after {
    content:none !important;
    display:none !important;
}
body.home-demo-page #contact .hd-form {
    width:min(980px,96%) !important;
    max-height:none !important;
    height:auto !important;
    overflow:visible !important;
    margin:0 auto !important;
    padding:28px 30px 26px !important;
    border-radius:26px !important;
    background:rgba(248,250,252,.58) !important;
    border:1px solid rgba(255,255,255,.72) !important;
    box-shadow:0 16px 38px rgba(45,57,72,.08) !important;
    backdrop-filter:blur(22px) saturate(1.05) !important;
    -webkit-backdrop-filter:blur(22px) saturate(1.05) !important;
    font-family:Montserrat,sans-serif !important;
}
body.home-demo-page #contact .hd-form::before,
body.home-demo-page #contact .hd-form::after { content:none !important; display:none !important; }
body.home-demo-page #contact .hd-form__head { gap:6px !important; margin-bottom:20px !important; }
body.home-demo-page #contact .hd-form__head span { font-size:10px !important; }
body.home-demo-page #contact .hd-form__head strong { font-size:22px !important; line-height:1.12 !important; }
body.home-demo-page #contact .hd-form__grid {
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:14px 12px !important;
}
body.home-demo-page #contact .hd-form__grid > label,
body.home-demo-page #contact .hd-contact-channel-fields > label {
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
}
body.home-demo-page #contact .hd-form label > span,
body.home-demo-page #contact .hd-contact-channels__label {
    display:block !important;
    margin:0 !important;
    color:#697584 !important;
    font-size:10px !important;
    line-height:1.2 !important;
    font-weight:700 !important;
    letter-spacing:.055em !important;
    text-transform:uppercase !important;
}
body.home-demo-page #contact .hd-contact-channels__label small {
    margin-left:6px;
    color:#9aa4af;
    font-size:9px;
    font-weight:500;
    letter-spacing:0;
    text-transform:none;
}
body.home-demo-page #contact .hd-form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
body.home-demo-page #contact .hd-form select,
body.home-demo-page #contact .hd-form textarea {
    box-sizing:border-box !important;
    width:100% !important;
    min-height:48px !important;
    padding:0 15px !important;
    border-radius:14px !important;
    border:1px solid rgba(126,143,162,.23) !important;
    background:rgba(255,255,255,.46) !important;
    color:#1a2430 !important;
    box-shadow:none !important;
    font-family:Montserrat,sans-serif !important;
    font-size:13px !important;
    font-weight:500 !important;
    backdrop-filter:blur(10px) !important;
    -webkit-backdrop-filter:blur(10px) !important;
}
body.home-demo-page #contact .hd-form textarea {
    min-height:82px !important;
    padding:13px 15px !important;
    line-height:1.45 !important;
}
body.home-demo-page #contact .hd-form input:focus,
body.home-demo-page #contact .hd-form select:focus,
body.home-demo-page #contact .hd-form textarea:focus {
    outline:0 !important;
    background:rgba(255,255,255,.70) !important;
    border-color:rgba(70,181,218,.48) !important;
    box-shadow:0 0 0 3px rgba(70,181,218,.07) !important;
}
body.home-demo-page #contact .hd-form select {
    appearance:none !important;
    -webkit-appearance:none !important;
    padding-right:42px !important;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M4.5 6.25L8 9.75l3.5-3.5' stroke='%23657282' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
    background-repeat:no-repeat !important;
    background-position:calc(100% - 15px) center !important;
}
body.home-demo-page #contact .hd-contact-channels {
    min-width:0;
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    align-self:end;
}
body.home-demo-page #contact .hd-contact-channels__choices {
    min-height:48px;
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:7px;
    padding:7px 8px;
    border-radius:14px;
    border:1px solid rgba(126,143,162,.23);
    background:rgba(255,255,255,.46);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
}
body.home-demo-page #contact .hd-contact-channel {
    margin:0 !important;
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    cursor:pointer;
}
body.home-demo-page #contact .hd-contact-channel > input { display:none !important; }
body.home-demo-page #contact .hd-contact-channel > span,
body.home-demo-page #contact span.hd-contact-channel {
    min-height:30px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 11px;
    border-radius:999px;
    border:1px solid rgba(104,120,138,.14);
    background:rgba(255,255,255,.50);
    color:#596574;
    font-size:10px;
    line-height:1;
    font-weight:600;
    text-transform:none;
    letter-spacing:0;
    transition:.18s ease;
}
body.home-demo-page #contact .hd-contact-channel input:checked + span,
body.home-demo-page #contact .hd-contact-channel.is-active {
    color:#18232e !important;
    border-color:rgba(70,181,218,.38) !important;
    background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(226,247,251,.76)) !important;
    box-shadow:0 0 0 3px rgba(70,181,218,.05) !important;
}
body.home-demo-page #contact .hd-contact-channel-fields {
    grid-column:1/-1;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px 12px;
}
body.home-demo-page #contact .hd-contact-channel-fields > label[hidden] { display:none !important; }
body.home-demo-page #contact .hd-contact-channel-fields > label.is-active { display:grid !important; }
body.home-demo-page #contact .hd-form__consent {
    display:flex !important;
    grid-template-columns:none !important;
    align-items:center !important;
    gap:9px !important;
    min-height:24px !important;
    margin:13px 0 0 !important;
    padding:0 !important;
}
body.home-demo-page #contact .hd-form__consent input[type="checkbox"] {
    flex:0 0 16px !important;
    width:16px !important;
    height:16px !important;
    min-height:16px !important;
    margin:0 !important;
    padding:0 !important;
    position:static !important;
    vertical-align:middle !important;
}
body.home-demo-page #contact .hd-form__consent > span {
    margin:0 !important;
    padding:0 !important;
    font-size:9px !important;
    line-height:16px !important;
    font-weight:500 !important;
}
body.home-demo-page #contact .hd-form .soulu-smartcaptcha { margin:14px 0 0 !important; }
body.home-demo-page #contact .hd-form__actions {
    display:flex !important;
    align-items:center !important;
    gap:16px !important;
    margin-top:16px !important;
}
body.home-demo-page #contact .hd-form__actions .hd-btn {
    width:235px !important;
    min-width:235px !important;
    min-height:56px !important;
    padding:0 30px !important;
    border:0 !important;
    outline:0 !important;
    border-radius:17px !important;
    background:linear-gradient(110deg,#d9c7ff 0%,#f6bee1 31%,#ffd1a3 65%,#b7d7ff 100%) !important;
    color:#202631 !important;
    font-size:14px !important;
    line-height:1 !important;
    font-weight:800 !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.72),0 10px 24px rgba(65,77,105,.10) !important;
}
body.home-demo-page #contact .hd-form__actions .hd-btn:hover {
    border:0 !important;
    outline:0 !important;
    transform:translateY(-1px) !important;
    filter:brightness(1.025) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.78),0 12px 26px rgba(65,77,105,.13) !important;
}
@media (max-width:820px) {
    body.home-demo-page #contact .hd-form {
        width:100% !important;
        padding:22px 18px 20px !important;
        border-radius:22px !important;
    }
    body.home-demo-page #contact .hd-form__grid,
    body.home-demo-page #contact .hd-contact-channel-fields {
        grid-template-columns:1fr !important;
    }
    body.home-demo-page #contact .hd-contact-channel-fields { grid-column:auto; }
    body.home-demo-page #contact .hd-form__actions .hd-btn {
        width:100% !important;
        min-width:100% !important;
    }
}

/* =========================================================
   CONTACT FINAL — 0.4.1.100
   ========================================================= */
body.home-demo-page #contact .hd-form {
    width:min(1040px,99%) !important;
    max-width:1040px !important;
}

body.home-demo-page #contact .hd-contact-channels__choices {
    flex-wrap:nowrap !important;
    justify-content:center !important;
    gap:6px !important;
    padding:7px 8px !important;
}
body.home-demo-page #contact .hd-contact-channel,
body.home-demo-page #contact .hd-contact-channel > span,
body.home-demo-page #contact span.hd-contact-channel {
    flex:0 0 auto !important;
}

/* Обязательные поля — тонкий кант в цвете экрана «Связаться». */
body.home-demo-page #contact .hd-form input[name="name"],
body.home-demo-page #contact .hd-form input[name="phone"],
body.home-demo-page #contact .hd-form select[name="interest"] {
    border:.75px solid rgba(87,161,185,.62) !important;
    outline:none !important;
    box-shadow:none !important;
}
body.home-demo-page #contact .hd-form input[name="name"]:focus,
body.home-demo-page #contact .hd-form input[name="phone"]:focus,
body.home-demo-page #contact .hd-form select[name="interest"]:focus {
    border:.75px solid rgba(87,161,185,.82) !important;
    outline:none !important;
    box-shadow:0 0 0 2px rgba(87,161,185,.045) !important;
}
body.home-demo-page #contact .hd-form textarea[name="what_to_create"] {
    border:1px solid rgba(126,143,162,.23) !important;
    box-shadow:none !important;
}

/* =========================================================
   FINAL GLASS CARD / LEGAL
   ========================================================= */
body.home-demo-page .hd-after-story {
    position:relative !important;
    z-index:5 !important;
    padding:0 24px 20px !important;
    margin:0 !important;
    transform:translateY(-155px) !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
}
body.home-demo-page .hd-after-story__inner {
    position:relative !important;
    overflow:hidden !important;
    width:min(1220px,calc(100% - 48px)) !important;
    max-width:1220px !important;
    margin:0 auto !important;
    padding:20px 30px 16px !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:18px !important;
    border-radius:20px !important;
    background:linear-gradient(180deg,rgba(255,255,255,.72) 0%,rgba(244,248,251,.58) 52%,rgba(226,233,239,.52) 100%) !important;
    border:1px solid rgba(255,255,255,.88) !important;
    box-shadow:
        inset 0 2px 0 rgba(255,255,255,.95),
        inset 0 -2px 0 rgba(112,128,145,.10),
        inset 12px 0 24px rgba(255,255,255,.18),
        inset -12px 0 24px rgba(102,120,138,.05),
        0 4px 10px rgba(39,51,65,.07),
        0 18px 38px rgba(39,51,65,.13),
        0 34px 70px rgba(39,51,65,.08) !important;
    backdrop-filter:blur(24px) saturate(1.12) !important;
    -webkit-backdrop-filter:blur(24px) saturate(1.12) !important;
}
body.home-demo-page .hd-after-story__inner::before {
    content:"" !important;
    display:block !important;
    position:absolute !important;
    left:22px !important;
    right:22px !important;
    top:1px !important;
    height:42% !important;
    border-radius:inherit !important;
    background:linear-gradient(180deg,rgba(255,255,255,.52),rgba(255,255,255,0)) !important;
    pointer-events:none !important;
}
body.home-demo-page .hd-after-story__inner::after {
    content:"" !important;
    display:block !important;
    position:absolute !important;
    left:9% !important;
    right:9% !important;
    bottom:-18px !important;
    height:30px !important;
    border-radius:50% !important;
    background:rgba(35,48,62,.12) !important;
    filter:blur(18px) !important;
    pointer-events:none !important;
    z-index:-1 !important;
}
body.home-demo-page .hd-after-story__inner > * {
    position:relative !important;
    z-index:1 !important;
}
body.home-demo-page .hd-after-story__inner > p {
    max-width:none !important;
    margin:0 !important;
    white-space:nowrap !important;
    color:rgba(24,29,35,.74) !important;
    font-family:Montserrat,sans-serif !important;
    font-size:16px !important;
    line-height:1.48 !important;
    font-weight:650 !important;
    letter-spacing:-.02em !important;
}
body.home-demo-page .hd-after-story__legal {
    padding-top:14px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    flex-wrap:nowrap !important;
    gap:18px !important;
    border-top:1px solid rgba(94,108,123,.10) !important;
}
body.home-demo-page .hd-after-story__copyright {
    flex:0 0 auto !important;
    white-space:nowrap !important;
    color:rgba(43,52,62,.38) !important;
    font-family:Montserrat,sans-serif !important;
    font-size:8.5px !important;
    line-height:1.3 !important;
    font-weight:500 !important;
}
body.home-demo-page .hd-after-story__legal-links {
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    flex-wrap:nowrap !important;
    gap:18px !important;
    white-space:nowrap !important;
}
body.home-demo-page .hd-after-story__legal-links a {
    white-space:nowrap !important;
    color:rgba(43,52,62,.40) !important;
    font-family:Montserrat,sans-serif !important;
    font-size:8.5px !important;
    line-height:1.3 !important;
    font-weight:500 !important;
    text-decoration:none !important;
}
body.home-demo-page .hd-after-story__legal-links a:hover {
    color:rgba(43,52,62,.72) !important;
}

/* На DEMO отдельный футер больше не показываем: юридические ссылки уже в финальной карточке. */
body.home-demo-page .soul-footer {
    display:none !important;
}

@media (max-width:1220px) {
    body.home-demo-page .hd-after-story__inner {
        width:calc(100% - 32px) !important;
    }
    body.home-demo-page .hd-after-story__inner > p {
        white-space:normal !important;
    }
}
@media (max-width:820px) {
    body.home-demo-page #contact .hd-form {
        width:100% !important;
        max-width:none !important;
    }
    body.home-demo-page #contact .hd-contact-channels__choices {
        justify-content:flex-start !important;
        flex-wrap:wrap !important;
    }
    body.home-demo-page .hd-after-story {
        transform:translateY(-80px) !important;
        padding:0 12px 18px !important;
    }
    body.home-demo-page .hd-after-story__inner {
        width:100% !important;
        padding:20px 18px 16px !important;
    }
    body.home-demo-page .hd-after-story__legal {
        align-items:flex-start !important;
        flex-direction:column !important;
        flex-wrap:wrap !important;
        gap:10px !important;
    }
    body.home-demo-page .hd-after-story__legal-links {
        justify-content:flex-start !important;
        flex-wrap:wrap !important;
        gap:8px 14px !important;
        white-space:normal !important;
    }
}

/* =========================================================
   CONTACT FINAL — 0.4.1.101
   Approved control state after 0.4.1.100
   ========================================================= */
body.home-demo-page #contact .hd-form {
    width:min(1040px,99%) !important;
    max-width:1040px !important;
    margin:0 auto !important;
}

/* Required fields: thin contact-theme border. */
body.home-demo-page #contact #demo-form input[name="name"],
body.home-demo-page #contact #demo-form input[name="phone"],
body.home-demo-page #contact #demo-form select[name="interest"] {
    border:.75px solid rgba(87,161,185,.62) !important;
    outline:none !important;
    box-shadow:none !important;
}
body.home-demo-page #contact #demo-form input[name="name"]:focus,
body.home-demo-page #contact #demo-form input[name="phone"]:focus,
body.home-demo-page #contact #demo-form select[name="interest"]:focus {
    border-color:rgba(87,161,185,.86) !important;
    box-shadow:0 0 0 2px rgba(87,161,185,.04) !important;
}
body.home-demo-page #contact #demo-form textarea[name="what_to_create"] {
    border:1px solid rgba(126,143,162,.20) !important;
    box-shadow:none !important;
}

/* Contact channels: one centered row on desktop. */
body.home-demo-page #contact .hd-contact-channels {
    width:100% !important;
    min-width:0 !important;
    align-self:end !important;
}
body.home-demo-page #contact .hd-contact-channels__choices {
    box-sizing:border-box !important;
    width:100% !important;
    height:48px !important;
    min-height:48px !important;
    padding:0 7px !important;
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:center !important;
    gap:6px !important;
    line-height:1 !important;
}
body.home-demo-page #contact .hd-contact-channels__choices > span.hd-contact-channel {
    flex:0 0 auto !important;
    box-sizing:border-box !important;
    height:30px !important;
    min-height:30px !important;
    margin:0 !important;
    padding:0 10px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    align-self:center !important;
    line-height:1 !important;
    position:static !important;
    top:auto !important;
    transform:none !important;
}
body.home-demo-page #contact .hd-contact-channels__choices > label.hd-contact-channel {
    flex:0 0 auto !important;
    display:inline-flex !important;
    grid-template-columns:none !important;
    grid-template-rows:none !important;
    align-items:center !important;
    justify-content:center !important;
    align-self:center !important;
    gap:0 !important;
    width:auto !important;
    height:30px !important;
    min-height:30px !important;
    margin:0 !important;
    padding:0 !important;
    position:static !important;
    top:auto !important;
    transform:none !important;
    line-height:1 !important;
}
body.home-demo-page #contact .hd-contact-channels__choices > label.hd-contact-channel > input {
    position:absolute !important;
    width:1px !important;
    height:1px !important;
    margin:-1px !important;
    padding:0 !important;
    overflow:hidden !important;
    clip:rect(0 0 0 0) !important;
    clip-path:inset(50%) !important;
    white-space:nowrap !important;
}
body.home-demo-page #contact .hd-contact-channels__choices > label.hd-contact-channel > span {
    box-sizing:border-box !important;
    height:30px !important;
    min-height:30px !important;
    margin:0 !important;
    padding:0 10px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    line-height:1 !important;
    position:static !important;
    top:auto !important;
    transform:none !important;
    white-space:nowrap !important;
}

/* Consent: checkbox and text on one baseline. */
body.home-demo-page #contact .hd-form__consent {
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:9px !important;
    margin:13px 0 0 !important;
    padding:0 !important;
}
body.home-demo-page #contact .hd-form__consent input[type="checkbox"] {
    appearance:none !important;
    -webkit-appearance:none !important;
    flex:0 0 16px !important;
    box-sizing:border-box !important;
    width:16px !important;
    height:16px !important;
    min-height:16px !important;
    margin:0 !important;
    padding:0 !important;
    position:relative !important;
    top:0 !important;
    border:1px solid rgba(87,161,185,.60) !important;
    border-radius:5px !important;
    background:rgba(255,255,255,.50) !important;
    box-shadow:none !important;
}
body.home-demo-page #contact .hd-form__consent input[type="checkbox"]:checked {
    background:rgb(87,161,185) !important;
    border-color:rgb(87,161,185) !important;
}
body.home-demo-page #contact .hd-form__consent input[type="checkbox"]:checked::after {
    content:"" !important;
    position:absolute !important;
    left:5px !important;
    top:2px !important;
    width:4px !important;
    height:8px !important;
    border:solid #fff !important;
    border-width:0 2px 2px 0 !important;
    transform:rotate(45deg) !important;
}
body.home-demo-page #contact .hd-form__consent > span {
    margin:0 !important;
    padding:0 !important;
    line-height:16px !important;
    transform:none !important;
}

/* Submit: light SOULU AI gradient with no purple outline/border. */
body.home-demo-page #contact #demo-form .hd-form__actions button[type="submit"] {
    appearance:none !important;
    -webkit-appearance:none !important;
    border:0 !important;
    border-width:0 !important;
    border-style:none !important;
    border-color:transparent !important;
    outline:0 !important;
    outline-offset:0 !important;
    -webkit-mask:none !important;
    mask:none !important;
    background:linear-gradient(110deg,#ded0ff 0%,#f8c9e5 31%,#ffd7ae 65%,#c4ddff 100%) !important;
    background-image:linear-gradient(110deg,#ded0ff 0%,#f8c9e5 31%,#ffd7ae 65%,#c4ddff 100%) !important;
    background-origin:border-box !important;
    background-clip:border-box !important;
    box-shadow:0 10px 24px rgba(65,77,105,.10) !important;
    filter:none !important;
}
body.home-demo-page #contact #demo-form .hd-form__actions button[type="submit"]::before,
body.home-demo-page #contact #demo-form .hd-form__actions button[type="submit"]::after {
    content:none !important;
    display:none !important;
    border:0 !important;
    outline:0 !important;
    background:none !important;
    box-shadow:none !important;
}
body.home-demo-page #contact #demo-form .hd-form__actions button[type="submit"]:hover,
body.home-demo-page #contact #demo-form .hd-form__actions button[type="submit"]:focus,
body.home-demo-page #contact #demo-form .hd-form__actions button[type="submit"]:focus-visible,
body.home-demo-page #contact #demo-form .hd-form__actions button[type="submit"]:active {
    border:0 !important;
    outline:0 !important;
    box-shadow:0 12px 26px rgba(65,77,105,.13) !important;
}

/* Final glass card stays inside the last screen flow, with no empty tail. */
body.home-demo-page .hd-after-story {
    position:relative !important;
    z-index:5 !important;
    transform:none !important;
    margin-top:-155px !important;
    margin-bottom:0 !important;
    padding:0 24px 20px !important;
    min-height:0 !important;
    height:auto !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
}
body.home-demo-page .hd-after-story__inner {
    position:relative !important;
    box-sizing:border-box !important;
    width:min(1220px,calc(100% - 48px)) !important;
    max-width:1220px !important;
    margin:0 auto !important;
    padding:20px 30px 16px !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:18px !important;
    overflow:hidden !important;
    border-radius:20px !important;
    background:linear-gradient(180deg,rgba(255,255,255,.74) 0%,rgba(244,248,251,.60) 52%,rgba(226,233,239,.54) 100%) !important;
    border:1px solid rgba(255,255,255,.90) !important;
    box-shadow:
        inset 0 2px 0 rgba(255,255,255,.96),
        inset 0 -2px 0 rgba(112,128,145,.10),
        inset 12px 0 24px rgba(255,255,255,.18),
        inset -12px 0 24px rgba(102,120,138,.05),
        0 4px 10px rgba(39,51,65,.07),
        0 18px 38px rgba(39,51,65,.13),
        0 34px 70px rgba(39,51,65,.08) !important;
    backdrop-filter:blur(24px) saturate(1.12) !important;
    -webkit-backdrop-filter:blur(24px) saturate(1.12) !important;
}
body.home-demo-page .hd-after-story__inner::before {
    content:"" !important;
    display:block !important;
    position:absolute !important;
    left:22px !important;
    right:22px !important;
    top:1px !important;
    height:42% !important;
    border-radius:inherit !important;
    background:linear-gradient(180deg,rgba(255,255,255,.54),rgba(255,255,255,0)) !important;
    pointer-events:none !important;
}
body.home-demo-page .hd-after-story__inner > p {
    position:relative !important;
    z-index:1 !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    white-space:nowrap !important;
    font-size:16px !important;
    line-height:1.48 !important;
    font-weight:650 !important;
    letter-spacing:-.02em !important;
}
body.home-demo-page .hd-after-story__legal {
    position:relative !important;
    z-index:1 !important;
    width:100% !important;
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:18px !important;
    padding-top:14px !important;
    border-top:1px solid rgba(94,108,123,.10) !important;
}
body.home-demo-page .hd-after-story__copyright {
    flex:0 0 auto !important;
    white-space:nowrap !important;
    font-size:8.5px !important;
}
body.home-demo-page .hd-after-story__legal-links {
    flex:0 0 auto !important;
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:18px !important;
    white-space:nowrap !important;
}
body.home-demo-page .hd-after-story__legal-links a {
    white-space:nowrap !important;
    font-size:8.5px !important;
}
body.home-demo-page .soul-footer {
    display:none !important;
}

@media (max-width:820px) {
    body.home-demo-page #contact .hd-form {
        width:100% !important;
    }
    body.home-demo-page #contact .hd-contact-channels__choices {
        height:auto !important;
        min-height:48px !important;
        flex-wrap:wrap !important;
        justify-content:flex-start !important;
        padding:7px !important;
    }
    body.home-demo-page .hd-after-story {
        margin-top:-80px !important;
        padding:0 12px 18px !important;
    }
    body.home-demo-page .hd-after-story__inner {
        width:100% !important;
        padding:20px 18px 16px !important;
    }
    body.home-demo-page .hd-after-story__inner > p {
        white-space:normal !important;
    }
    body.home-demo-page .hd-after-story__legal {
        flex-direction:column !important;
        align-items:flex-start !important;
        gap:10px !important;
    }
    body.home-demo-page .hd-after-story__legal-links {
        flex-wrap:wrap !important;
        justify-content:flex-start !important;
        gap:8px 14px !important;
    }
}



/* =========================================================
   0.4.1.131 — SOULU WEB: кейсы и примеры в hero-витрине
   ========================================================= */

.hd-web-showcase {
    position:relative;
    width:100%;
    height:100%;
    display:grid;
    place-items:center;
}
.hd-web-showcase .hd-web-stack {
    width:92%;
    height:78%;
    margin-top:-1%;
}
.hd-web-mobile-strip {
    display:none;
}
.hd-browser[data-hd-web-slot] {
    isolation:isolate;
    cursor:pointer;
    transition:
        transform .48s cubic-bezier(.2,.8,.2,1),
        box-shadow .28s ease,
        filter .28s ease,
        opacity .22s ease;
}
.hd-browser[data-hd-web-slot]::after,
.hd-web-mobile-card::after {
    content:"";
    position:absolute;
    inset:0;
    z-index:8;
    border:1px solid transparent;
    border-radius:inherit;
    padding:1px;
    background:
        linear-gradient(115deg,
            rgba(164,224,255,.24) 0%,
            rgba(75,170,224,.92) 30%,
            rgba(224,245,255,.88) 52%,
            rgba(74,153,207,.78) 74%,
            rgba(173,228,255,.30) 100%) border-box;
    -webkit-mask:
        linear-gradient(#000 0 0) content-box,
        linear-gradient(#000 0 0);
    -webkit-mask-composite:xor;
    mask-composite:exclude;
    opacity:0;
    pointer-events:none;
    transition:opacity .24s ease;
}
.hd-browser[data-hd-web-slot]:hover::after,
.hd-browser[data-hd-web-slot]:focus-within::after,
.hd-web-mobile-card:focus-within::after {
    opacity:1;
}
.hd-browser[data-hd-web-slot]:hover,
.hd-browser[data-hd-web-slot]:focus-within {
    box-shadow:
        0 30px 64px rgba(49,61,75,.18),
        0 0 24px rgba(80,174,228,.14),
        inset 0 1px 0 #fff;
    filter:saturate(1.035) contrast(1.018);
}
.hd-panel.is-active .hd-browser--1[data-hd-web-slot]:hover,
.hd-panel.is-active .hd-browser--1[data-hd-web-slot]:focus-within {
    transform:rotate(-3deg) translateY(-10px) scale(1.012);
}
.hd-panel.is-active .hd-browser--2[data-hd-web-slot]:hover,
.hd-panel.is-active .hd-browser--2[data-hd-web-slot]:focus-within {
    transform:rotate(3.3deg) translateY(-2px) scale(1.012);
}
.hd-panel.is-active .hd-browser--3[data-hd-web-slot]:hover,
.hd-panel.is-active .hd-browser--3[data-hd-web-slot]:focus-within {
    transform:rotate(.5deg) translateY(-14px) scale(1.012);
}
.hd-browser[data-hd-web-slot].is-changing {
    opacity:.22 !important;
    filter:blur(4px) saturate(.9);
}
.hd-web-card__open {
    position:absolute;
    top:38px;
    right:12px;
    z-index:10;
    min-height:31px;
    padding:0 12px;
    border:1px solid rgba(255,255,255,.66);
    border-radius:11px;
    background:rgba(22,31,42,.48);
    color:#fff;
    font:inherit;
    font-size:9px;
    line-height:1;
    font-weight:700;
    letter-spacing:.01em;
    box-shadow:0 10px 24px rgba(20,31,44,.14),inset 0 1px 0 rgba(255,255,255,.20);
    -webkit-backdrop-filter:blur(16px) saturate(1.1);
    backdrop-filter:blur(16px) saturate(1.1);
    opacity:0;
    transform:translateY(-4px);
    pointer-events:none;
    transition:opacity .22s ease,transform .22s ease,background .22s ease,border-color .22s ease;
}
.hd-browser:hover .hd-web-card__open,
.hd-browser:focus-within .hd-web-card__open,
.hd-web-card__open:focus-visible {
    opacity:1;
    transform:none;
    pointer-events:auto;
}
.hd-web-card__open:hover {
    background:rgba(32,98,136,.62);
    border-color:rgba(151,221,255,.78);
}
.hd-web-card__open:focus-visible {
    outline:2px solid rgba(76,171,226,.76);
    outline-offset:2px;
}
.hd-web-showcase__footer {
    position:absolute;
    left:50%;
    bottom:10px;
    z-index:12;
    width:min(72%,520px);
    transform:translateX(-50%);
    display:grid;
    gap:8px;
}
.hd-web-showcase__caption {
    margin:0;
    text-align:center;
    white-space:nowrap;
    font-size:9px;
    line-height:1.2;
    font-weight:650;
    letter-spacing:.10em;
    text-transform:uppercase;
    color:rgba(31,36,43,.38);
}
.hd-web-showcase__progress {
    --hd-progress-thumb:25%;
    --hd-progress-left:0%;
    position:relative;
    width:100%;
    height:12px;
    display:flex;
    align-items:center;
    cursor:ew-resize;
    touch-action:none;
    outline:none;
}
.hd-web-showcase__progress::before {
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:50%;
    height:2px;
    border-radius:999px;
    transform:translateY(-50%);
    background:rgba(76,101,120,.12);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.76);
}
.hd-web-showcase__progress-fill {
    position:absolute;
    left:0;
    top:50%;
    height:2px;
    width:25%;
    border-radius:999px;
    transform:translateY(-50%);
    background:linear-gradient(90deg,rgba(92,184,235,.38),rgba(66,157,211,.82),rgba(194,232,251,.76));
    transition:width .35s cubic-bezier(.2,.8,.2,1);
}
.hd-web-showcase__progress-thumb {
    position:absolute;
    top:50%;
    left:var(--hd-progress-left);
    width:var(--hd-progress-thumb);
    height:4px;
    border-radius:999px;
    transform:translateY(-50%);
    background:linear-gradient(90deg,#a6dffc 0%,#4da8db 38%,#d3f0ff 62%,#5aaedc 100%);
    box-shadow:0 0 14px rgba(79,170,220,.28),inset 0 1px 0 rgba(255,255,255,.92);
    transition:left .35s cubic-bezier(.2,.8,.2,1),width .25s ease;
}
.hd-web-showcase__progress:focus-visible .hd-web-showcase__progress-thumb {
    box-shadow:0 0 0 3px rgba(78,168,219,.12),0 0 16px rgba(79,170,220,.34);
}

/* Popup: тот же принцип, что на странице кейсов, без перехода со страницы. */
body.hd-web-lightbox-is-open {
    overflow:hidden;
}
.hd-web-lightbox {
    position:fixed;
    inset:0;
    z-index:10050;
    display:grid;
    place-items:center;
    padding:28px;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .2s ease,visibility 0s linear .2s;
}
.hd-web-lightbox.is-open {
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transition-delay:0s;
}
.hd-web-lightbox__backdrop {
    position:absolute;
    inset:0;
    background:rgba(16,22,29,.58);
    -webkit-backdrop-filter:blur(16px);
    backdrop-filter:blur(16px);
}
.hd-web-lightbox__dialog {
    position:relative;
    z-index:1;
    width:min(1180px,calc(100vw - 44px));
    max-height:calc(100svh - 44px);
    overflow:hidden;
    display:grid;
    grid-template-rows:auto minmax(0,1fr);
    border:1px solid rgba(255,255,255,.68);
    border-radius:28px;
    background:linear-gradient(145deg,rgba(250,252,254,.96),rgba(239,245,249,.92));
    box-shadow:0 34px 90px rgba(20,31,45,.28),inset 0 1px 0 #fff;
}
.hd-web-lightbox__topbar {
    min-height:82px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding:18px 22px;
    border-bottom:1px solid rgba(54,70,84,.09);
}
.hd-web-lightbox__eyebrow {
    display:block;
    margin-bottom:4px;
    font-size:9px;
    font-weight:800;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:#4ba8df;
}
.hd-web-lightbox__topbar h2 {
    margin:0;
    font-size:clamp(20px,2vw,30px);
    line-height:1.08;
    letter-spacing:-.035em;
    color:#20262d;
}
.hd-web-lightbox__meta {
    margin:5px 0 0;
    font-size:11px;
    color:rgba(34,42,50,.54);
}
.hd-web-lightbox__close {
    flex:0 0 42px;
    width:42px;
    height:42px;
    border:1px solid rgba(54,70,84,.12);
    border-radius:50%;
    background:rgba(255,255,255,.66);
    color:#303942;
    font-size:25px;
    line-height:1;
    cursor:pointer;
}
.hd-web-lightbox__content {
    min-height:0;
    display:grid;
    grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);
}
.hd-web-lightbox__details {
    min-height:0;
    overflow:auto;
    padding:22px;
    border-right:1px solid rgba(54,70,84,.09);
}
.hd-web-lightbox__detail-section + .hd-web-lightbox__detail-section {
    margin-top:20px;
    padding-top:18px;
    border-top:1px solid rgba(54,70,84,.08);
}
.hd-web-lightbox__detail-section h3 {
    margin:0 0 8px;
    font-size:11px;
    line-height:1.25;
    font-weight:800;
    letter-spacing:.025em;
    color:#2b333c;
}
.hd-web-lightbox__detail-section p,
.hd-web-lightbox__detail-section li {
    font-size:11px;
    line-height:1.58;
    color:rgba(34,42,50,.66);
}
.hd-web-lightbox__detail-section p {
    margin:0 0 8px;
}
.hd-web-lightbox__detail-section ul {
    margin:0;
    padding-left:18px;
}
.hd-web-lightbox__detail-section li + li {
    margin-top:5px;
}
.hd-web-lightbox__gallery {
    min-width:0;
    min-height:0;
    display:grid;
    grid-template-rows:minmax(0,1fr) auto;
}
.hd-web-lightbox__stage {
    position:relative;
    min-height:0;
    overflow:auto;
    padding:20px 58px;
    display:flex;
    align-items:flex-start;
    justify-content:center;
}
.hd-web-lightbox__image-wrap {
    width:100%;
    display:flex;
    justify-content:center;
}
.hd-web-lightbox__image {
    display:block;
    width:auto;
    max-width:100%;
    height:auto;
    max-height:none;
    border-radius:18px;
    box-shadow:0 18px 48px rgba(35,48,62,.12);
}
.hd-web-lightbox__nav {
    position:sticky;
    top:50%;
    z-index:4;
    flex:0 0 38px;
    width:38px;
    height:38px;
    border:1px solid rgba(255,255,255,.68);
    border-radius:50%;
    background:rgba(21,31,42,.52);
    color:white;
    font-size:24px;
    cursor:pointer;
    -webkit-backdrop-filter:blur(14px);
    backdrop-filter:blur(14px);
}
.hd-web-lightbox__nav--prev { left:10px; margin-left:-46px; }
.hd-web-lightbox__nav--next { right:10px; margin-right:-46px; }
.hd-web-lightbox__nav[hidden] { display:none; }
.hd-web-lightbox__footer {
    min-height:52px;
    padding:10px 18px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    border-top:1px solid rgba(54,70,84,.09);
    font-size:10px;
    color:rgba(34,42,50,.5);
}
.hd-web-lightbox__case-link {
    min-height:34px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 13px;
    border:1px solid rgba(75,168,223,.26);
    border-radius:11px;
    background:rgba(255,255,255,.72);
    color:#2d6f96;
    font-size:10px;
    font-weight:750;
    text-decoration:none;
}
.hd-web-lightbox__case-link:hover {
    border-color:rgba(75,168,223,.55);
    background:#fff;
}

@media (max-width:820px) {
    .hd-web-showcase {
        display:block;
        height:auto;
        width:100%;
    }
    .hd-web-showcase .hd-web-stack {
        display:none;
    }
    .hd-web-mobile-strip {
        display:flex;
        width:100%;
        gap:12px;
        overflow-x:auto;
        scroll-snap-type:x mandatory;
        scrollbar-width:none;
        overscroll-behavior-x:contain;
        padding:4px 12% 15px 0;
        touch-action:pan-x;
    }
    .hd-web-mobile-strip::-webkit-scrollbar {
        display:none;
    }
    .hd-web-mobile-card {
        position:relative;
        flex:0 0 86%;
        margin:0;
        overflow:hidden;
        scroll-snap-align:start;
        border:1px solid rgba(255,255,255,.82);
        border-radius:18px;
        background:#fff;
        box-shadow:0 18px 42px rgba(49,61,75,.14),inset 0 1px 0 #fff;
    }
    .hd-web-mobile-card::after {
        opacity:.78;
    }
    .hd-web-mobile-card__viewport {
        height:clamp(250px,70vw,360px);
        overflow:hidden;
        background:#f7f9fa;
    }
    .hd-web-mobile-card__viewport img {
        display:block;
        width:100%;
        height:auto;
        min-height:100%;
        object-fit:cover;
        object-position:top;
    }
    .hd-web-mobile-card .hd-web-card__open {
        top:31px;
        right:10px;
        min-height:30px;
        opacity:1;
        transform:none;
        pointer-events:auto;
        font-size:8.5px;
    }
    .hd-web-showcase__footer {
        position:static;
        width:100%;
        transform:none;
        margin-top:6px;
        padding:0 2px;
        gap:7px;
    }
    .hd-web-showcase__caption {
        white-space:normal;
        font-size:8.5px;
    }
    .hd-web-showcase__progress {
        height:14px;
    }

    .hd-web-lightbox {
        padding:10px;
    }
    .hd-web-lightbox__dialog {
        width:100%;
        max-height:calc(100svh - 20px);
        border-radius:22px;
    }
    .hd-web-lightbox__topbar {
        min-height:70px;
        padding:14px 15px;
    }
    .hd-web-lightbox__content {
        overflow:auto;
        display:flex;
        flex-direction:column;
    }
    .hd-web-lightbox__details {
        flex:0 0 auto;
        overflow:visible;
        border-right:0;
        border-bottom:1px solid rgba(54,70,84,.09);
        padding:16px;
    }
    .hd-web-lightbox__gallery {
        flex:0 0 auto;
        min-height:360px;
    }
    .hd-web-lightbox__stage {
        padding:14px 42px;
    }
    .hd-web-lightbox__nav {
        width:34px;
        height:34px;
        flex-basis:34px;
    }
    .hd-web-lightbox__nav--prev { margin-left:-38px; }
    .hd-web-lightbox__nav--next { margin-right:-38px; }
}

@media (prefers-reduced-motion:reduce) {
    .hd-browser[data-hd-web-slot],
    .hd-web-card__open,
    .hd-web-showcase__progress-fill,
    .hd-web-showcase__progress-thumb,
    .hd-web-lightbox {
        transition:none !important;
    }
}

/* =========================================================
   0.4.1.132 — SOULU WEB showcase polish
   ========================================================= */
.hd-web-showcase .hd-web-stack {
    cursor:grab;
    touch-action:pan-y;
    user-select:none;
    -webkit-user-select:none;
}
.hd-web-showcase .hd-web-stack.is-dragging {
    cursor:grabbing;
}
.hd-browser[data-hd-web-slot] {
    overflow:hidden;
}
.hd-browser[data-hd-web-slot]:hover,
.hd-browser[data-hd-web-slot]:focus-within {
    z-index:40 !important;
}
.hd-browser[data-hd-web-slot] .hd-browser__viewport {
    background:#f7f9fa;
}
.hd-browser[data-hd-web-slot] .hd-browser__viewport img,
.hd-web-mobile-card__viewport img {
    display:block;
    width:100%;
    height:auto;
    min-height:0;
    object-fit:contain;
    object-position:top center;
}

/* CTA = тот же тип кнопки, что .soul-case-card__link на странице кейсов. */
.hd-web-card__open.soul-case-card__link {
    --card-rgb:75,168,223;
    --card-dark:#2d6f96;
    position:absolute;
    top:50%;
    left:50%;
    right:auto;
    z-index:80;
    min-height:48px;
    margin:0;
    padding:0 18px;
    border-radius:15px;
    color:#fff;
    background:rgba(24,42,57,.50);
    border:1px solid rgba(176,228,255,.64);
    font-family:inherit;
    font-size:14px;
    line-height:1;
    font-weight:650;
    letter-spacing:0;
    text-decoration:none;
    white-space:nowrap;
    cursor:pointer;
    box-shadow:0 14px 34px rgba(31,64,84,.18),inset 0 1px 0 rgba(255,255,255,.28);
    -webkit-backdrop-filter:blur(16px) saturate(1.15);
    backdrop-filter:blur(16px) saturate(1.15);
    opacity:0;
    transform:translate(-50%,-50%) scale(.975);
    pointer-events:none;
    transition:opacity .2s ease,transform .2s ease,background .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.hd-browser:hover .hd-web-card__open.soul-case-card__link,
.hd-browser:focus-within .hd-web-card__open.soul-case-card__link,
.hd-web-card__open.soul-case-card__link:focus-visible {
    opacity:1;
    transform:translate(-50%,-50%) scale(1);
    pointer-events:auto;
}
.hd-web-card__open.soul-case-card__link:hover {
    color:#fff;
    background:rgb(var(--card-rgb));
    border-color:rgba(205,241,255,.88);
    box-shadow:0 14px 28px rgba(var(--card-rgb),.20),0 0 26px rgba(91,184,235,.16);
    transform:translate(-50%,calc(-50% - 1px));
}
.hd-web-card__open.soul-case-card__link:focus-visible {
    outline:2px solid rgba(76,171,226,.76);
    outline-offset:3px;
}

.hd-web-showcase__footer {
    gap:5px;
}
.hd-web-showcase__hint {
    margin:0;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    text-align:center;
    font-size:8px;
    line-height:1.25;
    font-weight:600;
    letter-spacing:.04em;
    color:rgba(31,44,54,.42);
}
.hd-web-showcase__hint b {
    font-size:10px;
    font-weight:650;
    letter-spacing:.08em;
    color:rgba(62,143,191,.58);
}
.hd-web-showcase__hint-mobile {
    display:none;
}

@media (max-width:820px) {
    .hd-web-mobile-card__viewport img {
        width:100%;
        height:auto;
        min-height:0;
        object-fit:contain;
        object-position:top center;
    }
    .hd-web-mobile-card .hd-web-card__open.soul-case-card__link {
        top:50%;
        left:50%;
        right:auto;
        min-height:44px;
        padding:0 16px;
        font-size:13px;
        opacity:1;
        transform:translate(-50%,-50%);
        pointer-events:auto;
    }
    .hd-web-showcase__hint-desktop {
        display:none;
    }
    .hd-web-showcase__hint-mobile {
        display:inline;
    }
}

/* =========================================================
   0.4.1.133 — SOULU WEB showcase hover + CTA + slider hint
   ========================================================= */
.hd-web-showcase .hd-web-stack {
    overflow:visible;
}
.hd-browser[data-hd-web-slot] {
    will-change:transform,box-shadow,filter;
}
.hd-browser[data-hd-web-slot]:hover,
.hd-browser[data-hd-web-slot]:focus-within {
    z-index:999 !important;
}
.hd-panel.is-active .hd-browser--1[data-hd-web-slot]:hover,
.hd-panel.is-active .hd-browser--1[data-hd-web-slot]:focus-within {
    transform:rotate(-3deg) translateY(-12px) scale(1.026);
}
.hd-panel.is-active .hd-browser--2[data-hd-web-slot]:hover,
.hd-panel.is-active .hd-browser--2[data-hd-web-slot]:focus-within {
    transform:rotate(3.3deg) translateY(-8px) scale(1.026);
}
.hd-panel.is-active .hd-browser--3[data-hd-web-slot]:hover,
.hd-panel.is-active .hd-browser--3[data-hd-web-slot]:focus-within {
    transform:rotate(.5deg) translateY(-16px) scale(1.026);
}
.hd-web-card__open.soul-case-card__link {
    z-index:1200;
    min-width:164px;
    min-height:56px;
    padding:0 24px;
    border:1px solid rgba(186,233,255,.78);
    border-radius:17px;
    font-size:14px;
    font-weight:680;
    box-shadow:
        0 18px 40px rgba(26,62,84,.22),
        0 0 0 1px rgba(86,181,233,.10),
        inset 0 1px 0 rgba(255,255,255,.34);
}
.hd-browser:hover .hd-web-card__open.soul-case-card__link,
.hd-browser:focus-within .hd-web-card__open.soul-case-card__link,
.hd-web-card__open.soul-case-card__link:focus-visible {
    transform:translate(-50%,-50%) scale(1.015);
}
.hd-web-card__open.soul-case-card__link:hover {
    transform:translate(-50%,calc(-50% - 1px)) scale(1.025);
}
.hd-web-showcase__hint {
    gap:8px;
    font-size:8.5px;
    letter-spacing:.035em;
}
.hd-web-showcase__progress {
    cursor:ew-resize;
}
@media (max-width:820px) {
    .hd-web-mobile-card .hd-web-card__open.soul-case-card__link {
        min-width:150px;
        min-height:50px;
        padding:0 20px;
        font-size:13px;
    }
}


/* =========================================================
   0.4.1.135 — SOULU WEB showcase pagination dots
   ========================================================= */
.hd-web-showcase__footer {
    gap: 9px;
}

.hd-web-showcase__dots {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-height: 20px;
}

.hd-web-showcase__dot {
    appearance: none;
    width: 10px;
    height: 10px;
    padding: 0;
    border-radius: 50%;
    border: 1px solid rgba(23, 31, 39, .78);
    background: rgba(255, 255, 255, .94);
    box-shadow: 0 1px 4px rgba(22, 30, 38, .09);
    cursor: pointer;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
}

.hd-web-showcase__dot:hover,
.hd-web-showcase__dot:focus-visible {
    transform: scale(1.22);
    outline: none;
}

.hd-web-showcase__dot.is-active {
    width: 12px;
    height: 12px;
    border-color: rgba(108, 202, 244, .82);
    background: linear-gradient(135deg, #eefbff 0%, #a9e2fb 32%, #6fc4ef 56%, #d7f4ff 78%, #8bd2f2 100%);
    box-shadow: 0 0 0 2px rgba(111, 196, 239, .10), 0 3px 12px rgba(75, 168, 223, .26);
}

.hd-web-showcase__progress,
.hd-web-showcase__hint {
    display: none !important;
}

/* ============================================================
   0.4.1.143 - FLOW shared typography / CLUB 1436 center / WEB hover parity
   Geometry changes are isolated to 1400-1479 x 820-899.
   Hover parity is desktop-wide. SOULU CLUB hover is intentionally untouched.
   ============================================================ */

/* 1436x864: SOULU FLOW uses the SAME shared typography metrics as WEB/NKO.
   This neutralizes the legacy FLOW-only 114.96px title override without
   introducing a separate FLOW geometry system. */
@media (min-width:1400px) and (max-width:1479px) and (min-height:820px) and (max-height:899px) {
  body.home-demo-page #soulu-flow .hd-copy {
    width:auto !important;
    max-width:min(590px,40vw) !important;
    transform:none !important;
    scale:1 !important;
  }
  body.home-demo-page #soulu-flow .hd-title {
    width:auto !important;
    max-width:none !important;
    font-size:clamp(2rem,3.35vw,3.85rem) !important;
    line-height:.96 !important;
    letter-spacing:-.055em !important;
    margin-bottom:0 !important;
  }
  body.home-demo-page #soulu-flow .hd-offer {
    margin-top:9px !important;
    font-size:clamp(.92rem,1.05vw,1.22rem) !important;
    line-height:1.3 !important;
  }
  body.home-demo-page #soulu-flow .hd-description {
    margin-top:7px !important;
    font-size:clamp(11px,.72vw,14px) !important;
    line-height:1.42 !important;
  }
  body.home-demo-page #soulu-flow .hd-tags {
    margin-top:8px !important;
    gap:5px !important;
  }
  body.home-demo-page #soulu-flow .hd-tags span {
    padding:5px 8px !important;
    font-size:clamp(8px,.55vw,10px) !important;
  }
  body.home-demo-page #soulu-flow .hd-actions {
    margin-top:10px !important;
    gap:8px !important;
  }
  body.home-demo-page #soulu-flow .hd-btn {
    min-height:40px !important;
    padding-inline:14px !important;
    font-size:10px !important;
  }

  /* CLUB: only recenter the complete right stage inside its visual column. */
  body.home-demo-page #soulu-club .club-right-stage {
    width:618px !important;
    max-width:618px !important;
    position:absolute !important;
    left:50% !important;
    right:auto !important;
    top:50% !important;
    transform:translate(-50%,-50%) !important;
    transform-origin:center center !important;
    margin:0 !important;
  }
}

/* Desktop-wide WEB hover mechanism for FLOW / FLOW NKO / Create FLOW.
   SOULU CLUB is deliberately absent. */
@media (min-width:821px) {
  body.home-demo-page :is(
    #soulu-flow .hd-flow-shot,
    #soulu-flow-nko .hd-screen-card,
    #create-flow .mvp-ui
  ) {
    isolation:isolate;
    cursor:pointer;
    transition:
      transform .48s cubic-bezier(.2,.8,.2,1),
      box-shadow .28s ease,
      filter .28s ease,
      opacity .22s ease;
  }

  body.home-demo-page :is(
    #soulu-flow .hd-flow-shot,
    #soulu-flow-nko .hd-screen-card,
    #create-flow .mvp-ui
  )::after {
    content:"";
    position:absolute;
    inset:0;
    z-index:8;
    border:1px solid transparent;
    border-radius:inherit;
    padding:1px;
    -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
    -webkit-mask-composite:xor;
    mask-composite:exclude;
    opacity:0;
    pointer-events:none;
    transition:opacity .24s ease;
  }

  /* FLOW - native four-color FLOW spectrum. */
  body.home-demo-page #soulu-flow .hd-flow-shot::after {
    background:linear-gradient(110deg,
      #c72bad 0%,
      #ef8742 30%,
      #79b84d 66%,
      #4ca9df 100%) border-box;
  }

  /* FLOW NKO - native NKO fuchsia. */
  body.home-demo-page #soulu-flow-nko .hd-screen-card::after {
    background:linear-gradient(115deg,
      rgba(216,46,150,.24) 0%,
      rgba(216,46,150,.92) 30%,
      rgba(255,226,244,.88) 52%,
      rgba(205,37,146,.78) 74%,
      rgba(216,46,150,.30) 100%) border-box;
  }

  /* Create FLOW - native turquoise palette from its CTA. */
  body.home-demo-page #create-flow .mvp-ui::after {
    background:linear-gradient(110deg,
      #117983 0%,
      #22b8c1 30%,
      #72e0df 52%,
      #22b8c1 74%,
      #168f98 100%) border-box;
  }

  body.home-demo-page :is(
    #soulu-flow .hd-flow-shot,
    #soulu-flow-nko .hd-screen-card,
    #create-flow .mvp-ui
  ):is(:hover,:focus-within)::after { opacity:1; }

  body.home-demo-page :is(
    #soulu-flow .hd-flow-shot,
    #soulu-flow-nko .hd-screen-card,
    #create-flow .mvp-ui
  ):is(:hover,:focus-within) {
    z-index:999 !important;
    box-shadow:0 30px 64px rgba(49,61,75,.18),inset 0 1px 0 #fff;
    filter:saturate(1.035) contrast(1.018);
  }

  body.home-demo-page #soulu-flow .hd-flow-shot--ops:is(:hover,:focus-within) {
    transform:rotate(-1.6deg) translateY(-10px) scale(1.012) !important;
  }
  body.home-demo-page #soulu-flow .hd-flow-shot--portal:is(:hover,:focus-within) {
    transform:rotate(2.2deg) translateY(-2px) scale(1.012) !important;
  }
  body.home-demo-page #soulu-flow .hd-flow-shot--mobile:is(:hover,:focus-within) {
    transform:rotate(2.8deg) translateY(-14px) scale(1.012) !important;
  }
  body.home-demo-page #soulu-flow-nko .hd-screen-card--1:is(:hover,:focus-within) {
    transform:rotate(-1.7deg) translateY(-10px) scale(1.012) !important;
  }
  body.home-demo-page #soulu-flow-nko .hd-screen-card--2:is(:hover,:focus-within) {
    transform:rotate(2.2deg) translateY(-2px) scale(1.012) !important;
  }
  body.home-demo-page #soulu-flow-nko .hd-screen-card--3:is(:hover,:focus-within) {
    transform:rotate(3deg) translateY(-14px) scale(1.012) !important;
  }
  body.home-demo-page #create-flow .mvp-ui:is(:hover,:focus-within) {
    translate:0 -10px !important;
    scale:1.012 !important;
  }
}


/* =========================================================
   0.4.1.132 — Desktop adaptive master: 1366×768 approved
   Hero is intentionally untouched.
   ========================================================= */
@media (width:1366px) and (height:768px) {

  body.home-demo-page .hd-story,
  body.home-demo-page .hd-story * {
    box-sizing:border-box;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow,
    #soulu-club,
    #contact
  ) .hd-copy {
    padding-bottom:0 !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow,
    #soulu-club,
    #contact
  ) .hd-brandline {
    margin-bottom:8px !important;
    gap:9px !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow,
    #soulu-club,
    #contact
  ) .hd-brandline img {
    width:27px !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow,
    #soulu-club,
    #contact
  ) .hd-brandline__word {
    font-size:14px !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow,
    #soulu-club,
    #contact
  ) .hd-eyebrow {
    margin-bottom:7px !important;
    font-size:9.5px !important;
    line-height:1.2 !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow
  ) .hd-title {
    width:auto !important;
    max-width:100% !important;
    margin-bottom:0 !important;
    font-size:44px !important;
    line-height:42px !important;
    letter-spacing:-2.4px !important;
    transform:none !important;
  }

  body.home-demo-page #soulu-club .hd-title {
    width:100% !important;
    max-width:500px !important;
    margin-bottom:0 !important;
    font-size:43px !important;
    line-height:41px !important;
    letter-spacing:-2.3px !important;
    transform:none !important;
  }

  body.home-demo-page #contact .hd-title {
    width:100% !important;
    max-width:420px !important;
    margin-bottom:0 !important;
    font-size:38px !important;
    line-height:36px !important;
    letter-spacing:-2.1px !important;
    transform:none !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow,
    #soulu-club,
    #contact
  ) .hd-offer {
    margin-top:9px !important;
    font-size:14px !important;
    line-height:1.3 !important;
    transform:none !important;
  }

  body.home-demo-page #contact .hd-offer {
    margin-top:8px !important;
    font-size:13px !important;
    line-height:1.24 !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow,
    #soulu-club,
    #contact
  ) .hd-description {
    margin-top:7px !important;
    font-size:10.5px !important;
    line-height:1.45 !important;
    transform:none !important;
  }

  body.home-demo-page #contact .hd-description {
    font-size:10px !important;
    line-height:1.4 !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow,
    #soulu-club,
    #contact
  ) .hd-tags {
    margin-top:8px !important;
    gap:5px !important;
    transform:none !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow,
    #soulu-club,
    #contact
  ) .hd-tags span {
    padding:5px 7px !important;
    font-size:8px !important;
    line-height:1.1 !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow,
    #soulu-club,
    #contact
  ) .hd-actions {
    margin-top:10px !important;
    gap:8px !important;
    transform:none !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow,
    #soulu-club,
    #contact
  ) .hd-btn {
    min-height:38px !important;
    height:38px !important;
    padding-inline:13px !important;
    font-size:9.5px !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow,
    #soulu-club,
    #contact
  ) .hd-visual {
    min-height:0 !important;
    height:calc(100svh - 104px) !important;
  }

  body.home-demo-page .hd-scroll-hint {
    left:auto !important;
    right:18px !important;
    bottom:10px !important;
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    gap:4px !important;
    transform:none !important;
    font-size:7px !important;
    line-height:1 !important;
    letter-spacing:.12em !important;
    color:rgba(24,29,35,.22) !important;
    z-index:1 !important;
    pointer-events:none !important;
  }

  body.home-demo-page .hd-scroll-hint i {
    font-size:10px !important;
    line-height:1 !important;
  }

  body.home-demo-page #soulu-web .hd-web-showcase {
    width:100% !important;
    height:100% !important;
  }

  body.home-demo-page #soulu-flow .hd-flow-showcase {
    position:relative !important;
    left:-18px !important;
    min-height:0 !important;
    height:96% !important;
    transform:scale(.91) !important;
    transform-origin:center center !important;
  }

  body.home-demo-page #soulu-flow-nko .hd-product-screens {
    width:96% !important;
    height:86% !important;
  }

  body.home-demo-page #create-flow .hd-visual {
    overflow:visible !important;
  }

  body.home-demo-page #create-flow .mvp-premium {
    position:relative !important;
    left:-8% !important;
    width:132% !important;
    min-height:905px !important;
    transform:translateY(-4px) scale(.72) !important;
    transform-origin:center top !important;
  }

  body.home-demo-page #create-flow .mvp-economy {
    top:532px !important;
    left:4% !important;
    width:92% !important;
    max-width:none !important;
    transform:rotate(.35deg) scale(.90) !important;
    transform-origin:center top !important;
  }

  body.home-demo-page #create-flow .mvp-economy-top {
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:10px !important;
  }

  body.home-demo-page #create-flow .mvp-economy-grid {
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
    width:100% !important;
  }

  body.home-demo-page #soulu-club {
    grid-template-columns:minmax(0,44%) minmax(0,56%) !important;
    column-gap:18px !important;
  }

  body.home-demo-page #soulu-club .hd-copy {
    width:100% !important;
    max-width:500px !important;
    position:relative !important;
    z-index:5 !important;
  }

  body.home-demo-page #soulu-club .hd-visual {
    overflow:visible !important;
  }

  body.home-demo-page #soulu-club .club-right-stage {
    position:absolute !important;
    width:584px !important;
    max-width:584px !important;
    left:50% !important;
    right:auto !important;
    top:50% !important;
    margin:0 !important;
    transform:translate(-50%,-50%) !important;
    transform-origin:center center !important;
  }

  body.home-demo-page #soulu-club .club-stage-title {
    margin-bottom:7px !important;
    font-size:9px !important;
  }

  body.home-demo-page #soulu-club .club-stage-heading {
    margin-bottom:12px !important;
    font-size:30px !important;
    line-height:1 !important;
  }

  body.home-demo-page #soulu-club .club-dark-grid {
    grid-template-columns:repeat(3,188px) !important;
    gap:10px !important;
    width:584px !important;
    max-width:584px !important;
  }

  body.home-demo-page #soulu-club .club-dark-card {
    width:188px !important;
    min-width:188px !important;
    max-width:188px !important;
    min-height:295px !important;
    padding:14px 13px 12px !important;
    border-radius:24px !important;
  }

  body.home-demo-page #soulu-club .club-card-tags {
    gap:4px !important;
    margin-bottom:8px !important;
  }

  body.home-demo-page #soulu-club .club-card-tags span {
    min-height:16px !important;
    padding:0 5px !important;
    font-size:6.5px !important;
  }

  body.home-demo-page #soulu-club .club-dark-card h3 {
    margin-bottom:8px !important;
    font-size:15px !important;
    line-height:1.05 !important;
  }

  body.home-demo-page #soulu-club .club-dark-card p,
  body.home-demo-page #soulu-club .club-dark-card li {
    font-size:8.5px !important;
    line-height:1.35 !important;
  }

  body.home-demo-page #soulu-club .club-dark-card ul {
    margin:8px 0 7px !important;
    gap:4px !important;
  }

  body.home-demo-page #soulu-club .club-dark-card li {
    padding-left:13px !important;
  }

  body.home-demo-page #soulu-club .club-dark-card li::before {
    width:5px !important;
    height:5px !important;
  }

  body.home-demo-page #soulu-club .club-card-btn {
    min-height:35px !important;
    border-radius:11px !important;
    font-size:9px !important;
  }

  body.home-demo-page #contact {
    grid-template-columns:minmax(0,39%) minmax(0,61%) !important;
    column-gap:24px !important;
  }

  body.home-demo-page #contact .hd-copy {
    max-width:420px !important;
    position:relative !important;
    z-index:3 !important;
  }

  body.home-demo-page #contact .hd-visual {
    overflow:visible !important;
  }

  body.home-demo-page #contact .hd-form {
    width:129% !important;
    max-width:none !important;
    padding:16px 18px 14px !important;
    transform:translate(0,20px) scale(.61) !important;
    transform-origin:left top !important;
  }

  body.home-demo-page #contact .hd-form__head {
    margin-bottom:9px !important;
  }

  body.home-demo-page #contact .hd-form__head strong {
    font-size:18px !important;
  }

  body.home-demo-page #contact .hd-form__grid {
    gap:7px 9px !important;
  }

  body.home-demo-page #contact .hd-form input:not([type="checkbox"]):not([type="radio"]),
  body.home-demo-page #contact .hd-form select,
  body.home-demo-page #contact .hd-contact-channels__choices {
    min-height:38px !important;
  }

  body.home-demo-page #contact .hd-form textarea {
    min-height:46px !important;
  }

  body.home-demo-page #contact .hd-form textarea[name="comment"] {
    min-height:40px !important;
  }

  body.home-demo-page #contact .hd-form__consent {
    margin-top:4px !important;
  }

  body.home-demo-page #contact .hd-form__actions {
    margin-top:6px !important;
  }

  body.home-demo-page #contact .hd-form__actions .hd-btn {
    min-height:42px !important;
    height:42px !important;
  }

  body.home-demo-page .hd-after-story {
    margin-top:-128px !important;
    padding:0 24px 14px !important;
  }

  body.home-demo-page .hd-after-story__inner {
    width:min(1040px,calc(100% - 72px)) !important;
    max-width:1040px !important;
    padding:14px 20px 12px !important;
    border-radius:18px !important;
    gap:12px !important;
  }

  body.home-demo-page .hd-after-story__inner::before {
    left:16px !important;
    right:16px !important;
  }

  body.home-demo-page .hd-after-story__inner > p {
    white-space:normal !important;
    font-size:12px !important;
    line-height:1.35 !important;
    letter-spacing:-.01em !important;
  }

  body.home-demo-page .hd-after-story__legal {
    gap:12px !important;
    padding-top:10px !important;
  }

  body.home-demo-page .hd-after-story__copyright {
    font-size:7.5px !important;
  }

  body.home-demo-page .hd-after-story__legal-links {
    gap:12px !important;
  }

  body.home-demo-page .hd-after-story__legal-links a {
    font-size:7.5px !important;
  }
}

/* =========================================================
   0.4.1.133 — Desktop adaptive master: 1280×720 approved
   Hero is intentionally untouched.
   ========================================================= */
@media (width:1280px) and (height:720px) {

  body.home-demo-page .hd-story,
  body.home-demo-page .hd-story * {
    box-sizing:border-box;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow,
    #soulu-club,
    #contact
  ) .hd-copy {
    padding-bottom:0 !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow,
    #soulu-club,
    #contact
  ) .hd-brandline {
    margin-bottom:7px !important;
    gap:8px !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow,
    #soulu-club,
    #contact
  ) .hd-brandline img {
    width:25px !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow,
    #soulu-club,
    #contact
  ) .hd-brandline__word {
    font-size:13px !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow,
    #soulu-club,
    #contact
  ) .hd-eyebrow {
    margin-bottom:6px !important;
    font-size:9px !important;
    line-height:1.2 !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow
  ) .hd-title {
    width:auto !important;
    max-width:100% !important;
    margin-bottom:0 !important;
    font-size:41px !important;
    line-height:39px !important;
    letter-spacing:-2.2px !important;
    transform:none !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow
  ) .hd-offer {
    margin-top:8px !important;
    font-size:13px !important;
    line-height:1.28 !important;
    transform:none !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow
  ) .hd-description {
    margin-top:6px !important;
    font-size:10px !important;
    line-height:1.42 !important;
    transform:none !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow
  ) .hd-tags {
    margin-top:7px !important;
    gap:4px !important;
    transform:none !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow
  ) .hd-tags span {
    padding:4px 7px !important;
    font-size:7.5px !important;
    line-height:1.1 !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow
  ) .hd-actions {
    margin-top:8px !important;
    gap:7px !important;
    transform:none !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow
  ) .hd-btn {
    min-height:35px !important;
    height:35px !important;
    padding-inline:12px !important;
    font-size:8.5px !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow,
    #soulu-club,
    #contact
  ) .hd-visual {
    min-height:0 !important;
    height:calc(100svh - 98px) !important;
  }

  body.home-demo-page #soulu-web .hd-web-showcase {
    position:relative !important;
    left:-80px !important;
    width:100% !important;
    height:100% !important;
    transform:scale(.86) !important;
    transform-origin:center center !important;
  }

  body.home-demo-page #soulu-flow .hd-flow-showcase {
    position:relative !important;
    left:-70px !important;
    min-height:0 !important;
    height:94% !important;
    transform:scale(.84) !important;
    transform-origin:center center !important;
  }

  body.home-demo-page #soulu-flow-nko .hd-product-screens {
    position:relative !important;
    left:-70px !important;
    width:94% !important;
    height:84% !important;
    transform:scale(.87) !important;
    transform-origin:center center !important;
  }

  body.home-demo-page #create-flow .hd-visual {
    overflow:visible !important;
  }

  body.home-demo-page #create-flow .mvp-premium {
    position:relative !important;
    left:-10% !important;
    width:132% !important;
    min-height:850px !important;
    transform:translateY(-2px) scale(.67) !important;
    transform-origin:center top !important;
  }

  body.home-demo-page #create-flow .mvp-economy {
    top:500px !important;
    left:4% !important;
    width:92% !important;
    max-width:none !important;
    transform:rotate(.35deg) scale(.88) !important;
    transform-origin:center top !important;
  }

  body.home-demo-page #create-flow .mvp-economy-top {
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:9px !important;
  }

  body.home-demo-page #create-flow .mvp-economy-grid {
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:9px !important;
    width:100% !important;
  }

  body.home-demo-page #soulu-club {
    grid-template-columns:minmax(0,44%) minmax(0,56%) !important;
    column-gap:16px !important;
  }

  body.home-demo-page #soulu-club .hd-copy {
    width:100% !important;
    max-width:460px !important;
    position:relative !important;
    z-index:5 !important;
  }

  body.home-demo-page #soulu-club .hd-title {
    width:100% !important;
    max-width:460px !important;
    margin-bottom:0 !important;
    font-size:40px !important;
    line-height:38px !important;
    letter-spacing:-2.1px !important;
    transform:none !important;
  }

  body.home-demo-page #soulu-club .hd-offer {
    margin-top:8px !important;
    font-size:12.5px !important;
    line-height:1.28 !important;
    transform:none !important;
  }

  body.home-demo-page #soulu-club .hd-description {
    margin-top:6px !important;
    font-size:9.5px !important;
    line-height:1.4 !important;
    transform:none !important;
  }

  body.home-demo-page #soulu-club .hd-tags {
    margin-top:7px !important;
    gap:4px !important;
    transform:none !important;
  }

  body.home-demo-page #soulu-club .hd-tags span {
    padding:4px 7px !important;
    font-size:7.5px !important;
  }

  body.home-demo-page #soulu-club .hd-actions {
    margin-top:8px !important;
    gap:7px !important;
    transform:none !important;
  }

  body.home-demo-page #soulu-club .hd-btn {
    min-height:35px !important;
    height:35px !important;
    padding-inline:12px !important;
    font-size:8.5px !important;
  }

  body.home-demo-page #soulu-club .hd-visual {
    overflow:visible !important;
  }

  body.home-demo-page #soulu-club .club-right-stage {
    position:absolute !important;
    width:548px !important;
    max-width:548px !important;
    left:50% !important;
    right:auto !important;
    top:50% !important;
    margin:0 !important;
    transform:translate(-50%,-50%) !important;
    transform-origin:center center !important;
  }

  body.home-demo-page #soulu-club .club-stage-title {
    margin-bottom:6px !important;
    font-size:8px !important;
  }

  body.home-demo-page #soulu-club .club-stage-heading {
    margin-bottom:10px !important;
    font-size:28px !important;
    line-height:1 !important;
  }

  body.home-demo-page #soulu-club .club-dark-grid {
    grid-template-columns:repeat(3,176px) !important;
    gap:10px !important;
    width:548px !important;
    max-width:548px !important;
  }

  body.home-demo-page #soulu-club .club-dark-card {
    width:176px !important;
    min-width:176px !important;
    max-width:176px !important;
    min-height:276px !important;
    padding:13px 12px 11px !important;
    border-radius:22px !important;
  }

  body.home-demo-page #soulu-club .club-card-tags {
    gap:3px !important;
    margin-bottom:7px !important;
  }

  body.home-demo-page #soulu-club .club-card-tags span {
    min-height:15px !important;
    padding:0 5px !important;
    font-size:6px !important;
  }

  body.home-demo-page #soulu-club .club-dark-card h3 {
    margin-bottom:7px !important;
    font-size:14px !important;
    line-height:1.05 !important;
  }

  body.home-demo-page #soulu-club .club-dark-card p,
  body.home-demo-page #soulu-club .club-dark-card li {
    font-size:8px !important;
    line-height:1.32 !important;
  }

  body.home-demo-page #soulu-club .club-dark-card ul {
    margin:7px 0 6px !important;
    gap:3px !important;
  }

  body.home-demo-page #soulu-club .club-dark-card li {
    padding-left:12px !important;
  }

  body.home-demo-page #soulu-club .club-dark-card li::before {
    width:4px !important;
    height:4px !important;
  }

  body.home-demo-page #soulu-club .club-card-btn {
    min-height:32px !important;
    border-radius:10px !important;
    font-size:8px !important;
  }

  body.home-demo-page #contact {
    grid-template-columns:minmax(0,40%) minmax(0,60%) !important;
    column-gap:20px !important;
  }

  body.home-demo-page #contact .hd-copy {
    width:100% !important;
    max-width:395px !important;
    position:relative !important;
    z-index:3 !important;
  }

  body.home-demo-page #contact .hd-title {
    width:100% !important;
    max-width:395px !important;
    margin-bottom:0 !important;
    font-size:36px !important;
    line-height:34px !important;
    letter-spacing:-2px !important;
    transform:none !important;
  }

  body.home-demo-page #contact .hd-offer {
    margin-top:8px !important;
    font-size:12px !important;
    line-height:1.25 !important;
    transform:none !important;
  }

  body.home-demo-page #contact .hd-description {
    margin-top:6px !important;
    font-size:9.5px !important;
    line-height:1.4 !important;
    transform:none !important;
  }

  body.home-demo-page #contact .hd-tags {
    margin-top:7px !important;
    gap:4px !important;
    transform:none !important;
  }

  body.home-demo-page #contact .hd-tags span {
    padding:4px 7px !important;
    font-size:7.5px !important;
  }

  body.home-demo-page #contact .hd-actions {
    margin-top:8px !important;
    gap:7px !important;
    transform:none !important;
  }

  body.home-demo-page #contact .hd-actions .hd-btn {
    min-height:35px !important;
    height:35px !important;
    padding-inline:12px !important;
    font-size:8.5px !important;
  }

  body.home-demo-page #contact .hd-visual {
    overflow:visible !important;
  }

  body.home-demo-page #contact .hd-form {
    width:148% !important;
    max-width:none !important;
    padding:15px 17px 13px !important;
    transform:translate(0,36px) scale(.56) !important;
    transform-origin:left top !important;
  }


  body.home-demo-page #contact .hd-contact-channels__choices {
    width:calc(100% - 15px) !important;
    max-width:calc(100% - 15px) !important;
  }

  body.home-demo-page #contact .hd-form__head {
    margin-bottom:8px !important;
  }

  body.home-demo-page #contact .hd-form__head strong {
    font-size:17px !important;
  }

  body.home-demo-page #contact .hd-form__grid {
    gap:6px 8px !important;
  }

  body.home-demo-page #contact .hd-form input:not([type="checkbox"]):not([type="radio"]),
  body.home-demo-page #contact .hd-form select,
  body.home-demo-page #contact .hd-contact-channels__choices {
    min-height:36px !important;
  }

  body.home-demo-page #contact .hd-form textarea {
    min-height:44px !important;
  }

  body.home-demo-page #contact .hd-form textarea[name="comment"] {
    min-height:38px !important;
  }

  body.home-demo-page #contact .hd-form__consent {
    margin-top:4px !important;
  }

  body.home-demo-page #contact .hd-form__actions {
    margin-top:5px !important;
  }

  body.home-demo-page #contact .hd-form__actions .hd-btn {
    min-height:40px !important;
    height:40px !important;
  }

  body.home-demo-page .hd-after-story {
    margin-top:-94px !important;
    margin-bottom:0 !important;
    padding:0 20px 12px !important;
    transform:none !important;
  }

  body.home-demo-page .hd-after-story__inner {
    width:min(975px,calc(100% - 64px)) !important;
    max-width:975px !important;
    padding:12px 18px 10px !important;
    border-radius:17px !important;
    gap:10px !important;
  }

  body.home-demo-page .hd-after-story__inner::before {
    left:15px !important;
    right:15px !important;
  }

  body.home-demo-page .hd-after-story__inner > p {
    white-space:normal !important;
    font-size:11px !important;
    line-height:1.32 !important;
    letter-spacing:-.01em !important;
  }

  body.home-demo-page .hd-after-story__legal {
    gap:10px !important;
    padding-top:8px !important;
  }

  body.home-demo-page .hd-after-story__copyright {
    font-size:7px !important;
  }

  body.home-demo-page .hd-after-story__legal-links {
    gap:10px !important;
  }

  body.home-demo-page .hd-after-story__legal-links a {
    font-size:7px !important;
  }

  body.home-demo-page .hd-scroll-hint {
    left:auto !important;
    right:14px !important;
    bottom:8px !important;
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    gap:3px !important;
    transform:none !important;
    font-size:6.5px !important;
    line-height:1 !important;
    letter-spacing:.11em !important;
    color:rgba(24,29,35,.20) !important;
    z-index:1 !important;
    pointer-events:none !important;
  }

  body.home-demo-page .hd-scroll-hint i {
    font-size:9px !important;
  }
}

/* =========================================================
   0.4.1.134 — Desktop adaptive master: 1280×800 approved
   Hero is intentionally untouched.
   ========================================================= */
@media (width:1280px) and (height:800px) {
  body.home-demo-page .hd-story,
  body.home-demo-page .hd-story * { box-sizing:border-box; }

  body.home-demo-page :is(#soulu-web,#soulu-flow,#soulu-flow-nko,#create-flow,#soulu-club,#contact) .hd-copy { padding-bottom:0 !important; }
  body.home-demo-page :is(#soulu-web,#soulu-flow,#soulu-flow-nko,#create-flow,#soulu-club,#contact) .hd-brandline { margin-bottom:8px !important; gap:8px !important; }
  body.home-demo-page :is(#soulu-web,#soulu-flow,#soulu-flow-nko,#create-flow,#soulu-club,#contact) .hd-brandline img { width:26px !important; }
  body.home-demo-page :is(#soulu-web,#soulu-flow,#soulu-flow-nko,#create-flow,#soulu-club,#contact) .hd-brandline__word { font-size:13px !important; }
  body.home-demo-page :is(#soulu-web,#soulu-flow,#soulu-flow-nko,#create-flow,#soulu-club,#contact) .hd-eyebrow { margin-bottom:7px !important; font-size:9px !important; line-height:1.2 !important; }

  body.home-demo-page :is(#soulu-web,#soulu-flow,#soulu-flow-nko,#create-flow) .hd-title {
    width:auto !important; max-width:100% !important; margin-bottom:0 !important;
    font-size:43px !important; line-height:41px !important; letter-spacing:-2.3px !important; transform:none !important;
  }
  body.home-demo-page :is(#soulu-web,#soulu-flow,#soulu-flow-nko,#create-flow) .hd-offer {
    margin-top:9px !important; font-size:13.5px !important; line-height:1.3 !important; transform:none !important;
  }
  body.home-demo-page :is(#soulu-web,#soulu-flow,#soulu-flow-nko,#create-flow) .hd-description {
    margin-top:7px !important; font-size:10.5px !important; line-height:1.45 !important; transform:none !important;
  }
  body.home-demo-page :is(#soulu-web,#soulu-flow,#soulu-flow-nko,#create-flow) .hd-tags { margin-top:8px !important; gap:5px !important; transform:none !important; }
  body.home-demo-page :is(#soulu-web,#soulu-flow,#soulu-flow-nko,#create-flow) .hd-tags span { padding:5px 7px !important; font-size:8px !important; line-height:1.1 !important; }
  body.home-demo-page :is(#soulu-web,#soulu-flow,#soulu-flow-nko,#create-flow) .hd-actions { margin-top:9px !important; gap:7px !important; transform:none !important; }
  body.home-demo-page :is(#soulu-web,#soulu-flow,#soulu-flow-nko,#create-flow) .hd-btn { min-height:36px !important; height:36px !important; padding-inline:12px !important; font-size:9px !important; }

  body.home-demo-page :is(#soulu-web,#soulu-flow,#soulu-flow-nko,#create-flow,#soulu-club,#contact) .hd-visual {
    min-height:0 !important; height:calc(100svh - 108px) !important;
  }

  body.home-demo-page #soulu-web .hd-web-showcase {
    position:relative !important; left:-80px !important; width:100% !important; height:100% !important;
    transform:scale(.88) !important; transform-origin:center center !important;
  }

  body.home-demo-page #soulu-flow .hd-flow-showcase {
    position:relative !important; left:-70px !important; min-height:0 !important; height:96% !important;
    transform:scale(.86) !important; transform-origin:center center !important;
  }

  body.home-demo-page #soulu-flow-nko .hd-product-screens {
    position:relative !important; left:-70px !important; width:95% !important; height:86% !important;
    transform:scale(.89) !important; transform-origin:center center !important;
  }

  body.home-demo-page #create-flow .hd-visual { overflow:visible !important; }
  body.home-demo-page #create-flow .mvp-premium {
    position:relative !important; left:-10% !important; width:132% !important; min-height:890px !important;
    transform:translateY(-2px) scale(.70) !important; transform-origin:center top !important;
  }
  body.home-demo-page #create-flow .mvp-economy {
    top:525px !important; left:4% !important; width:92% !important; max-width:none !important;
    transform:rotate(.35deg) scale(.90) !important; transform-origin:center top !important;
  }
  body.home-demo-page #create-flow .mvp-economy-top { grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:9px !important; }
  body.home-demo-page #create-flow .mvp-economy-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:9px !important; width:100% !important; }

  body.home-demo-page #soulu-club { grid-template-columns:minmax(0,44%) minmax(0,56%) !important; column-gap:16px !important; }
  body.home-demo-page #soulu-club .hd-copy { width:100% !important; max-width:470px !important; position:relative !important; z-index:5 !important; }
  body.home-demo-page #soulu-club .hd-title {
    width:100% !important; max-width:470px !important; margin-bottom:0 !important;
    font-size:42px !important; line-height:40px !important; letter-spacing:-2.2px !important; transform:none !important;
  }
  body.home-demo-page #soulu-club .hd-offer { margin-top:9px !important; font-size:13px !important; line-height:1.3 !important; transform:none !important; }
  body.home-demo-page #soulu-club .hd-description { margin-top:7px !important; font-size:10px !important; line-height:1.42 !important; transform:none !important; }
  body.home-demo-page #soulu-club .hd-tags { margin-top:8px !important; gap:5px !important; transform:none !important; }
  body.home-demo-page #soulu-club .hd-tags span { padding:5px 7px !important; font-size:8px !important; }
  body.home-demo-page #soulu-club .hd-actions { margin-top:9px !important; gap:7px !important; transform:none !important; }
  body.home-demo-page #soulu-club .hd-btn { min-height:36px !important; height:36px !important; padding-inline:12px !important; font-size:9px !important; }
  body.home-demo-page #soulu-club .hd-visual { overflow:visible !important; }
  body.home-demo-page #soulu-club .club-right-stage {
    position:absolute !important; width:558px !important; max-width:558px !important; left:50% !important; right:auto !important; top:50% !important;
    margin:0 !important; transform:translate(-50%,-50%) !important; transform-origin:center center !important;
  }
  body.home-demo-page #soulu-club .club-stage-title { margin-bottom:6px !important; font-size:8px !important; }
  body.home-demo-page #soulu-club .club-stage-heading { margin-bottom:11px !important; font-size:29px !important; line-height:1 !important; }
  body.home-demo-page #soulu-club .club-dark-grid { grid-template-columns:repeat(3,179px) !important; gap:10px !important; width:558px !important; max-width:558px !important; }
  body.home-demo-page #soulu-club .club-dark-card { width:179px !important; min-width:179px !important; max-width:179px !important; min-height:286px !important; padding:13px 12px 11px !important; border-radius:23px !important; }
  body.home-demo-page #soulu-club .club-card-tags span { font-size:6px !important; }
  body.home-demo-page #soulu-club .club-dark-card h3 { font-size:14px !important; }
  body.home-demo-page #soulu-club .club-dark-card p,
  body.home-demo-page #soulu-club .club-dark-card li { font-size:8px !important; line-height:1.34 !important; }
  body.home-demo-page #soulu-club .club-card-btn { min-height:33px !important; font-size:8px !important; }

  body.home-demo-page #contact { grid-template-columns:minmax(0,40%) minmax(0,60%) !important; column-gap:20px !important; }
  body.home-demo-page #contact .hd-copy { width:100% !important; max-width:405px !important; position:relative !important; z-index:3 !important; }
  body.home-demo-page #contact .hd-title {
    width:100% !important; max-width:405px !important; margin-bottom:0 !important;
    font-size:38px !important; line-height:36px !important; letter-spacing:-2px !important; transform:none !important;
  }
  body.home-demo-page #contact .hd-offer { margin-top:8px !important; font-size:12.5px !important; line-height:1.25 !important; transform:none !important; }
  body.home-demo-page #contact .hd-description { margin-top:7px !important; font-size:10px !important; line-height:1.4 !important; transform:none !important; }
  body.home-demo-page #contact .hd-tags { margin-top:8px !important; gap:4px !important; transform:none !important; }
  body.home-demo-page #contact .hd-tags span { padding:4px 7px !important; font-size:7.5px !important; }
  body.home-demo-page #contact .hd-actions { margin-top:9px !important; gap:7px !important; transform:none !important; }
  body.home-demo-page #contact .hd-actions .hd-btn { min-height:36px !important; height:36px !important; padding-inline:12px !important; font-size:9px !important; }
  body.home-demo-page #contact .hd-visual { overflow:visible !important; }
  body.home-demo-page #contact .hd-form {
    width:148% !important; max-width:none !important; padding:15px 17px 13px !important;
    transform:translate(0,34px) scale(.58) !important; transform-origin:left top !important;
  }
  body.home-demo-page #contact .hd-contact-channels__choices { width:calc(100% - 15px) !important; max-width:calc(100% - 15px) !important; }

  body.home-demo-page .hd-after-story { margin-top:-96px !important; margin-bottom:0 !important; padding:0 20px 12px !important; transform:none !important; }
  body.home-demo-page .hd-after-story__inner {
    width:min(985px,calc(100% - 64px)) !important; max-width:985px !important;
    padding:12px 18px 10px !important; border-radius:17px !important; gap:10px !important;
  }
  body.home-demo-page .hd-after-story__inner > p { white-space:normal !important; font-size:11px !important; line-height:1.32 !important; }

  body.home-demo-page .hd-scroll-hint {
    left:auto !important; right:14px !important; bottom:8px !important; transform:none !important;
    font-size:6.5px !important; line-height:1 !important; z-index:1 !important; pointer-events:none !important;
  }
}

/* =========================================================
   0.4.1.135 — Desktop adaptive master: 1280×768 approved
   Includes final SOULU CLUB correction. Hero untouched.
   ========================================================= */
@media (width:1280px) and (height:768px) {
  body.home-demo-page .hd-story,
  body.home-demo-page .hd-story * { box-sizing:border-box; }

  body.home-demo-page :is(#soulu-web,#soulu-flow,#soulu-flow-nko,#create-flow,#soulu-club,#contact) .hd-copy { padding-bottom:0 !important; }
  body.home-demo-page :is(#soulu-web,#soulu-flow,#soulu-flow-nko,#create-flow,#soulu-club,#contact) .hd-brandline { margin-bottom:7px !important; gap:8px !important; }
  body.home-demo-page :is(#soulu-web,#soulu-flow,#soulu-flow-nko,#create-flow,#soulu-club,#contact) .hd-brandline img { width:25px !important; }
  body.home-demo-page :is(#soulu-web,#soulu-flow,#soulu-flow-nko,#create-flow,#soulu-club,#contact) .hd-brandline__word { font-size:13px !important; }
  body.home-demo-page :is(#soulu-web,#soulu-flow,#soulu-flow-nko,#create-flow,#soulu-club,#contact) .hd-eyebrow { margin-bottom:6px !important; font-size:9px !important; line-height:1.2 !important; }

  body.home-demo-page :is(#soulu-web,#soulu-flow,#soulu-flow-nko,#create-flow) .hd-title {
    width:auto !important; max-width:100% !important; margin-bottom:0 !important;
    font-size:42px !important; line-height:40px !important; letter-spacing:-2.2px !important; transform:none !important;
  }
  body.home-demo-page :is(#soulu-web,#soulu-flow,#soulu-flow-nko,#create-flow) .hd-offer { margin-top:8px !important; font-size:13px !important; line-height:1.3 !important; transform:none !important; }
  body.home-demo-page :is(#soulu-web,#soulu-flow,#soulu-flow-nko,#create-flow) .hd-description { margin-top:7px !important; font-size:10px !important; line-height:1.43 !important; transform:none !important; }
  body.home-demo-page :is(#soulu-web,#soulu-flow,#soulu-flow-nko,#create-flow) .hd-tags { margin-top:7px !important; gap:4px !important; transform:none !important; }
  body.home-demo-page :is(#soulu-web,#soulu-flow,#soulu-flow-nko,#create-flow) .hd-tags span { padding:4px 7px !important; font-size:7.5px !important; }
  body.home-demo-page :is(#soulu-web,#soulu-flow,#soulu-flow-nko,#create-flow) .hd-actions { margin-top:8px !important; gap:7px !important; transform:none !important; }
  body.home-demo-page :is(#soulu-web,#soulu-flow,#soulu-flow-nko,#create-flow) .hd-btn { min-height:35px !important; height:35px !important; padding-inline:12px !important; font-size:8.5px !important; }

  body.home-demo-page :is(#soulu-web,#soulu-flow,#soulu-flow-nko,#create-flow,#soulu-club,#contact) .hd-visual {
    min-height:0 !important; height:calc(100svh - 102px) !important;
  }

  body.home-demo-page #soulu-web .hd-web-showcase {
    position:relative !important; left:-80px !important; width:100% !important; height:100% !important;
    transform:scale(.87) !important; transform-origin:center center !important;
  }
  body.home-demo-page #soulu-flow .hd-flow-showcase {
    position:relative !important; left:-70px !important; min-height:0 !important; height:95% !important;
    transform:scale(.85) !important; transform-origin:center center !important;
  }
  body.home-demo-page #soulu-flow-nko .hd-product-screens {
    position:relative !important; left:-70px !important; width:94% !important; height:85% !important;
    transform:scale(.88) !important; transform-origin:center center !important;
  }

  body.home-demo-page #create-flow .hd-visual { overflow:visible !important; }
  body.home-demo-page #create-flow .mvp-premium {
    position:relative !important; left:-10% !important; width:132% !important; min-height:870px !important;
    transform:translateY(-2px) scale(.685) !important; transform-origin:center top !important;
  }
  body.home-demo-page #create-flow .mvp-economy {
    top:512px !important; left:4% !important; width:92% !important; max-width:none !important;
    transform:rotate(.35deg) scale(.89) !important; transform-origin:center top !important;
  }

  body.home-demo-page #soulu-club { grid-template-columns:minmax(0,44%) minmax(0,56%) !important; column-gap:16px !important; }
  body.home-demo-page #soulu-club .hd-copy { width:100% !important; max-width:465px !important; position:relative !important; z-index:5 !important; }
  body.home-demo-page #soulu-club .hd-title {
    width:100% !important; max-width:465px !important; font-size:41px !important; line-height:39px !important;
    letter-spacing:-2.1px !important; transform:none !important;
  }
  body.home-demo-page #soulu-club .hd-offer { margin-top:8px !important; font-size:12.5px !important; line-height:1.3 !important; transform:none !important; }
  body.home-demo-page #soulu-club .hd-description { margin-top:6px !important; font-size:9.5px !important; line-height:1.4 !important; transform:none !important; }
  body.home-demo-page #soulu-club .hd-tags { margin-top:7px !important; gap:4px !important; transform:none !important; }
  body.home-demo-page #soulu-club .hd-actions { margin-top:8px !important; gap:7px !important; transform:none !important; }
  body.home-demo-page #soulu-club .hd-btn { min-height:35px !important; height:35px !important; font-size:8.5px !important; }
  body.home-demo-page #soulu-club .hd-visual { overflow:visible !important; }

  body.home-demo-page #soulu-club .club-right-stage {
    position:absolute !important; width:553px !important; max-width:553px !important;
    left:50% !important; top:50% !important; right:auto !important; margin:0 !important;
    transform:translate(-50%,-50%) !important; transform-origin:center center !important;
  }
  body.home-demo-page #soulu-club .club-stage-title { margin-bottom:6px !important; font-size:8px !important; }
  body.home-demo-page #soulu-club .club-stage-heading { margin-bottom:10px !important; font-size:28px !important; line-height:1 !important; }
  body.home-demo-page #soulu-club .club-dark-grid { grid-template-columns:repeat(3,177px) !important; gap:10px !important; width:551px !important; max-width:551px !important; }
  body.home-demo-page #soulu-club .club-dark-card {
    width:177px !important; min-width:177px !important; max-width:177px !important; min-height:278px !important;
    padding:13px 12px 11px !important; border-radius:22px !important;
  }
  body.home-demo-page #soulu-club .club-card-tags { gap:3px !important; margin-bottom:7px !important; }
  body.home-demo-page #soulu-club .club-card-tags span { min-height:15px !important; padding:0 5px !important; font-size:6px !important; }
  body.home-demo-page #soulu-club .club-dark-card h3 { margin-bottom:7px !important; font-size:14px !important; line-height:1.05 !important; }
  body.home-demo-page #soulu-club .club-dark-card p,
  body.home-demo-page #soulu-club .club-dark-card li { font-size:8px !important; line-height:1.32 !important; }
  body.home-demo-page #soulu-club .club-dark-card ul { margin:7px 0 6px !important; gap:3px !important; }
  body.home-demo-page #soulu-club .club-dark-card li { padding-left:12px !important; }
  body.home-demo-page #soulu-club .club-dark-card li::before { width:4px !important; height:4px !important; }
  body.home-demo-page #soulu-club .club-card-btn { min-height:32px !important; border-radius:10px !important; font-size:8px !important; }

  body.home-demo-page #contact { grid-template-columns:minmax(0,40%) minmax(0,60%) !important; column-gap:20px !important; }
  body.home-demo-page #contact .hd-copy { max-width:400px !important; position:relative !important; z-index:3 !important; }
  body.home-demo-page #contact .hd-title { max-width:400px !important; font-size:37px !important; line-height:35px !important; letter-spacing:-2px !important; transform:none !important; }
  body.home-demo-page #contact .hd-offer { margin-top:8px !important; font-size:12px !important; line-height:1.25 !important; transform:none !important; }
  body.home-demo-page #contact .hd-description { margin-top:6px !important; font-size:9.5px !important; line-height:1.4 !important; transform:none !important; }
  body.home-demo-page #contact .hd-actions .hd-btn { min-height:35px !important; height:35px !important; padding-inline:12px !important; font-size:8.5px !important; }
  body.home-demo-page #contact .hd-visual { overflow:visible !important; }
  body.home-demo-page #contact .hd-form {
    width:148% !important; max-width:none !important;
    transform:translate(0,35px) scale(.57) !important; transform-origin:left top !important;
  }
  body.home-demo-page #contact .hd-contact-channels__choices { width:calc(100% - 15px) !important; max-width:calc(100% - 15px) !important; }

  body.home-demo-page .hd-after-story { margin-top:-95px !important; padding:0 20px 12px !important; }
  body.home-demo-page .hd-after-story__inner {
    width:min(980px,calc(100% - 64px)) !important; max-width:980px !important;
    padding:12px 18px 10px !important; border-radius:17px !important;
  }

  body.home-demo-page .hd-scroll-hint {
    left:auto !important; right:14px !important; bottom:8px !important; transform:none !important;
    font-size:6.5px !important; z-index:1 !important; pointer-events:none !important;
  }
}

/* =========================================================
   0.4.1.136 — Bridge correction around 1440×820.
   Intentionally capped below 840px height so approved 1436×864
   remains untouched.
   ========================================================= */
@media (min-width:1400px) and (max-width:1479px)
       and (min-height:800px) and (max-height:839px) {

  body.home-demo-page #create-flow .mvp-premium {
    top:-40px !important;
  }

  body.home-demo-page #soulu-club {
    grid-template-columns:minmax(0,44%) minmax(0,56%) !important;
    column-gap:18px !important;
  }

  body.home-demo-page #soulu-club .hd-visual {
    overflow:visible !important;
  }

  body.home-demo-page #soulu-club .club-right-stage {
    position:absolute !important;
    width:584px !important;
    max-width:584px !important;
    left:calc(50% - 170px) !important;
    right:auto !important;
    top:calc(50% - 170px) !important;
    margin:0 !important;
    transform:translate(-50%,-50%) !important;
    transform-origin:center center !important;
  }

  body.home-demo-page #soulu-club .club-stage-title {
    margin-bottom:7px !important;
    font-size:9px !important;
  }

  body.home-demo-page #soulu-club .club-stage-heading {
    margin-bottom:12px !important;
    font-size:30px !important;
    line-height:1 !important;
  }

  body.home-demo-page #soulu-club .club-dark-grid {
    grid-template-columns:repeat(3,188px) !important;
    gap:10px !important;
    width:584px !important;
    max-width:584px !important;
  }

  body.home-demo-page #soulu-club .club-dark-card {
    width:188px !important;
    min-width:188px !important;
    max-width:188px !important;
    min-height:295px !important;
    padding:14px 13px 12px !important;
    border-radius:24px !important;
  }

  body.home-demo-page #soulu-club .club-card-tags span {
    font-size:6.5px !important;
  }

  body.home-demo-page #soulu-club .club-dark-card h3 {
    font-size:15px !important;
    line-height:1.05 !important;
  }

  body.home-demo-page #soulu-club .club-dark-card p,
  body.home-demo-page #soulu-club .club-dark-card li {
    font-size:8.5px !important;
    line-height:1.35 !important;
  }

  body.home-demo-page #soulu-club .club-card-btn {
    min-height:35px !important;
    font-size:9px !important;
  }
}

/* =========================================================
   0.4.1.137 — 1500×850 / nearby bridge master.
   Tested at 1500×850. Does not overlap approved 1536×864.
   ========================================================= */
@media (min-width:1480px) and (max-width:1520px)
       and (min-height:835px) and (max-height:870px) {

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow,
    #soulu-club,
    #contact
  ) .hd-copy {
    padding-bottom:0 !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow,
    #soulu-club,
    #contact
  ) .hd-brandline {
    margin-bottom:7px !important;
    gap:8px !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow,
    #soulu-club,
    #contact
  ) .hd-brandline img {
    width:26px !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow,
    #soulu-club,
    #contact
  ) .hd-brandline__word {
    font-size:13.5px !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow,
    #soulu-club,
    #contact
  ) .hd-eyebrow {
    margin-bottom:7px !important;
    font-size:9px !important;
    line-height:1.2 !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow
  ) .hd-title {
    width:auto !important;
    max-width:100% !important;
    margin-bottom:0 !important;
    font-size:46px !important;
    line-height:43px !important;
    letter-spacing:-2.45px !important;
    transform:none !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow
  ) .hd-offer {
    margin-top:8px !important;
    font-size:13.5px !important;
    line-height:1.27 !important;
    transform:none !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow
  ) .hd-description {
    margin-top:6px !important;
    font-size:10px !important;
    line-height:1.4 !important;
    transform:none !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow
  ) .hd-tags {
    margin-top:7px !important;
    gap:4px 5px !important;
    transform:none !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow
  ) .hd-tags span {
    padding:4px 7px !important;
    font-size:7.5px !important;
    line-height:1.1 !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow
  ) .hd-actions {
    margin-top:8px !important;
    gap:7px !important;
    transform:none !important;
  }

  body.home-demo-page :is(
    #soulu-web,
    #soulu-flow,
    #soulu-flow-nko,
    #create-flow
  ) .hd-btn {
    min-height:36px !important;
    height:36px !important;
    padding-inline:12px !important;
    font-size:9px !important;
  }

  body.home-demo-page #soulu-club .hd-copy {
    width:100% !important;
    max-width:500px !important;
    position:relative !important;
    z-index:5 !important;
  }

  body.home-demo-page #soulu-club .hd-title {
    width:100% !important;
    max-width:500px !important;
    margin-bottom:0 !important;
    font-size:44px !important;
    line-height:41px !important;
    letter-spacing:-2.3px !important;
    transform:none !important;
  }

  body.home-demo-page #soulu-club .hd-offer {
    margin-top:8px !important;
    font-size:13px !important;
    line-height:1.27 !important;
    transform:none !important;
  }

  body.home-demo-page #soulu-club .hd-description {
    margin-top:6px !important;
    font-size:9.5px !important;
    line-height:1.38 !important;
    transform:none !important;
  }

  body.home-demo-page #soulu-club .hd-tags {
    margin-top:7px !important;
    gap:4px !important;
    transform:none !important;
  }

  body.home-demo-page #soulu-club .hd-tags span {
    padding:4px 7px !important;
    font-size:7.5px !important;
  }

  body.home-demo-page #soulu-club .hd-actions {
    margin-top:8px !important;
    gap:7px !important;
    transform:none !important;
  }

  body.home-demo-page #soulu-club .hd-btn {
    min-height:36px !important;
    height:36px !important;
    padding-inline:12px !important;
    font-size:9px !important;
  }

  body.home-demo-page #contact .hd-copy {
    width:100% !important;
    max-width:420px !important;
    position:relative !important;
    z-index:5 !important;
  }

  body.home-demo-page #contact .hd-title {
    width:100% !important;
    max-width:420px !important;
    margin-bottom:0 !important;
    font-size:40px !important;
    line-height:38px !important;
    letter-spacing:-2.1px !important;
    transform:none !important;
  }

  body.home-demo-page #contact .hd-offer {
    margin-top:8px !important;
    font-size:12.5px !important;
    line-height:1.25 !important;
    transform:none !important;
  }

  body.home-demo-page #contact .hd-description {
    margin-top:6px !important;
    font-size:9.5px !important;
    line-height:1.38 !important;
    transform:none !important;
  }

  body.home-demo-page #contact .hd-tags {
    margin-top:7px !important;
    gap:4px !important;
    transform:none !important;
  }

  body.home-demo-page #contact .hd-tags span {
    padding:4px 7px !important;
    font-size:7.5px !important;
  }

  body.home-demo-page #contact .hd-actions {
    margin-top:8px !important;
    gap:7px !important;
    transform:none !important;
  }

  body.home-demo-page #contact .hd-actions .hd-btn {
    min-height:36px !important;
    height:36px !important;
    padding-inline:12px !important;
    font-size:9px !important;
  }

  /* CREATE FLOW final geometry */
  body.home-demo-page #create-flow .hd-visual {
    overflow:visible !important;
  }

  body.home-demo-page #create-flow .mvp-premium {
    position:relative !important;
    left:-3% !important;
    width:124% !important;
    min-height:820px !important;
    transform:translateY(8px) scale(.76) !important;
    transform-origin:center top !important;
  }

  body.home-demo-page #create-flow .mvp-economy {
    top:540px !important;
    left:5% !important;
    width:90% !important;
    max-width:none !important;
    transform:rotate(.35deg) scale(.86) !important;
    transform-origin:center top !important;
  }

  /* CLUB final geometry */
  body.home-demo-page #soulu-club {
    grid-template-columns:minmax(0,44%) minmax(0,56%) !important;
    column-gap:18px !important;
  }

  body.home-demo-page #soulu-club .hd-visual {
    overflow:visible !important;
  }

  body.home-demo-page #soulu-club .club-right-stage {
    position:absolute !important;
    width:570px !important;
    max-width:570px !important;
    left:calc(50% - 25px) !important;
    right:auto !important;
    top:50% !important;
    margin:0 !important;
    transform:translate(-50%,-50%) !important;
    transform-origin:center center !important;
  }

  body.home-demo-page #soulu-club .club-stage-title {
    margin-bottom:6px !important;
    font-size:8px !important;
  }

  body.home-demo-page #soulu-club .club-stage-heading {
    margin-bottom:10px !important;
    font-size:28px !important;
    line-height:1 !important;
  }

  body.home-demo-page #soulu-club .club-dark-grid {
    grid-template-columns:repeat(3,183px) !important;
    gap:10px !important;
    width:569px !important;
    max-width:569px !important;
  }

  body.home-demo-page #soulu-club .club-dark-card {
    width:183px !important;
    min-width:183px !important;
    max-width:183px !important;
    min-height:282px !important;
    padding:13px 12px 11px !important;
    border-radius:22px !important;
  }

  body.home-demo-page #soulu-club .club-card-tags {
    gap:3px !important;
    margin-bottom:7px !important;
  }

  body.home-demo-page #soulu-club .club-card-tags span {
    min-height:15px !important;
    padding:0 5px !important;
    font-size:6px !important;
  }

  body.home-demo-page #soulu-club .club-dark-card h3 {
    margin-bottom:7px !important;
    font-size:14px !important;
    line-height:1.05 !important;
  }

  body.home-demo-page #soulu-club .club-dark-card p,
  body.home-demo-page #soulu-club .club-dark-card li {
    font-size:8px !important;
    line-height:1.32 !important;
  }

  body.home-demo-page #soulu-club .club-dark-card ul {
    margin:7px 0 6px !important;
    gap:3px !important;
  }

  body.home-demo-page #soulu-club .club-card-btn {
    min-height:33px !important;
    border-radius:10px !important;
    font-size:8px !important;
  }

  /* CONTACT final geometry */
  body.home-demo-page #contact .hd-form {
    width:129% !important;
    max-width:none !important;
    transform:translate(0,18px) scale(.57) !important;
    transform-origin:left top !important;
  }

  body.home-demo-page #contact .hd-contact-channels__choices {
    width:calc(100% - 15px) !important;
    max-width:calc(100% - 15px) !important;
  }

  body.home-demo-page .hd-after-story {
    margin-top:-145px !important;
    margin-bottom:0 !important;
  }
}
