:root {
    --ink-950: #06111f;
    --ink-900: #0a192b;
    --ink-800: #10243d;
    --blue-600: #2563eb;
    --blue-500: #3b82f6;
    --cyan-400: #22d3ee;
    --surface: #f5f8fc;
    --line: #dce5f1;
    --muted: #5f6f85;
    --success: #16a34a;
}

html { scroll-behavior: smooth; overflow-x: hidden; }
body { color: var(--ink-950); background: var(--surface); overflow-x: hidden; width: 100%; max-width: 100%; }
::selection { background: #bfdbfe; color: var(--ink-950); }

.site-shell { width: min(1180px, calc(100% - 32px)); margin-inline: auto; max-width: 100%; box-sizing: border-box; }
.premium-nav {
    background: rgba(255,255,255,.88);
    border-bottom: 1px solid rgba(220,229,241,.86);
    backdrop-filter: blur(18px);
    box-shadow: 0 8px 30px rgba(6,17,31,.035);
}
.premium-nav-link { color: #475569; font-size: .875rem; font-weight: 650; transition: .2s ease; }
.premium-nav-link:hover, .premium-nav-link.is-active { color: var(--blue-600); }
.premium-nav-link.is-active { position: relative; }
.premium-nav-link.is-active::after {
    content: ""; position: absolute; left: 0; right: 0; bottom: -13px; height: 2px;
    background: var(--blue-600); border-radius: 99px;
}
.auth-home-back { position:fixed;top:18px;left:18px;z-index:60;display:grid;width:44px;height:44px;place-items:center;border:1px solid rgba(203,213,225,.8);border-radius:14px;color:#1d4ed8;background:rgba(255,255,255,.96);box-shadow:0 8px 24px rgba(6,17,31,.16);transition:transform .18s ease,box-shadow .18s ease,background .18s ease; }
.auth-home-back svg { width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round; }
.auth-home-back:hover { transform:translateX(-2px);background:#fff;box-shadow:0 10px 28px rgba(6,17,31,.22); }
.auth-home-back:focus-visible { outline:3px solid #60a5fa;outline-offset:3px; }
.client-portal {
    position: sticky; top: 0; z-index: 40;
    background: rgba(248,250,252,.94); border-bottom: 1px solid rgba(203,213,225,.75);
    backdrop-filter: blur(18px); box-shadow: 0 8px 24px rgba(6,17,31,.035);
}
.client-portal .site-shell { width: min(1280px, calc(100% - 32px)); }
.client-portal-topline { min-height: 72px; display: grid; grid-template-columns: max-content minmax(0,1fr) max-content; align-items: center; gap: 18px; }
.client-portal-identity { display: flex; align-items: center; gap: .7rem; text-decoration: none; }
.client-portal-brand-logo { display:block; width:auto; max-width:150px; max-height:34px; object-fit:contain; }
.client-portal-mark { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 11px; color: white; font-weight: 900; background: linear-gradient(135deg,#2563eb,#7c3aed); box-shadow: 0 6px 15px rgba(79,70,229,.23); }
.client-portal-identity strong, .client-portal-identity small { display: block; }
.client-portal-identity strong { color: #10243d; font-size: .76rem; line-height: 1.2; }
.client-portal-identity small { margin-top: 2px; color: #74839a; font-size: .69rem; }
.client-portal-logout { display: inline-flex; align-items: center; gap: .4rem; color: #64748b; font-size: .75rem; font-weight: 700; transition: color .2s ease; }
.client-portal-logout:hover { color: #dc2626; }
.client-portal-nav { display: flex; min-width: 0; justify-content: center; gap: .25rem; overflow-x: auto; padding: 0; scrollbar-width: none; }
.client-portal-nav::-webkit-scrollbar { display: none; }
.client-portal-link { display: inline-flex; flex: 0 0 auto; align-items: center; gap: .42rem; padding: .56rem .65rem; border: 1px solid transparent; border-radius: 11px; color: #64748b; font-size: .74rem; font-weight: 750; white-space: nowrap; transition: color .2s ease, background .2s ease, border-color .2s ease, transform .2s ease; }
.client-portal-link > span { color: #94a3b8; font-size: .95rem; }
.client-portal-link:hover { color: #1d4ed8; background: white; border-color: #e2e8f0; transform: translateY(-1px); }
.client-portal-link.is-active { color: #1d4ed8; background: white; border-color: #dbeafe; box-shadow: 0 4px 12px rgba(37,99,235,.07); }
.client-portal-link.is-active > span { color: #2563eb; }
.client-portal-content { min-height: calc(100vh - 102px); background: radial-gradient(ellipse at 8% 0%, rgba(219,234,254,.48), transparent 34%), #f5f8fc; }
.client-portal-content > .max-w-7xl { padding-top: 30px; padding-bottom: 62px; }
@media (max-width: 640px) {
    .client-portal-topline { min-height: 64px; grid-template-columns: max-content minmax(0,1fr) max-content; gap: 8px; }
    .client-portal .site-shell { width: calc(100% - 24px); }
    .client-portal-link { padding: .5rem .55rem; font-size: .68rem; }
}
@media (prefers-reduced-motion: reduce) {
    .client-portal-link, .client-portal-logout { transition-duration: .01ms; }
}
.button-primary, .button-secondary, .button-dark {
    display: inline-flex; align-items: center; justify-content: center; gap: .55rem;
    min-height: 48px; padding: .75rem 1.25rem; border-radius: 12px;
    font-weight: 750; transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.button-primary { color: white; background: linear-gradient(135deg, var(--blue-600), #1d4ed8); box-shadow: 0 12px 24px rgba(37,99,235,.22); }
.button-primary:hover { transform: translateY(-2px); box-shadow: 0 16px 30px rgba(37,99,235,.3); }
.button-secondary { color: var(--ink-900); background: white; border: 1px solid var(--line); }
.button-secondary:hover { transform: translateY(-2px); border-color: #b7c7dc; box-shadow: 0 10px 24px rgba(6,17,31,.08); }
.button-dark { color: white; background: var(--ink-950); box-shadow: 0 12px 24px rgba(6,17,31,.18); }
.button-dark:hover { transform: translateY(-2px); background: #0f2847; }

.eyebrow {
    display: inline-flex; align-items: center; gap: .5rem; padding: .45rem .75rem;
    border: 1px solid rgba(59,130,246,.2); border-radius: 999px;
    color: #1d4ed8; background: rgba(239,246,255,.82); font-size: .72rem;
    font-weight: 800; letter-spacing: .09em; text-transform: uppercase;
}
.section-kicker { color: var(--blue-600); font-size: .75rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.section-title { color: var(--ink-950); font-weight: 850; letter-spacing: -.035em; line-height: 1.08; }
.text-balance { text-wrap: balance; }
.soft-card {
    background: rgba(255,255,255,.94); border: 1px solid var(--line); border-radius: 20px;
    box-shadow: 0 20px 60px rgba(6,17,31,.07);
}
.feature-icon {
    width: 44px; height: 44px; border-radius: 13px; display: inline-flex;
    align-items: center; justify-content: center; color: var(--blue-600); background: #eff6ff;
}
.premium-hero {
    position: relative; overflow: hidden; color: white;
    background:
        radial-gradient(circle at 80% 15%, rgba(34,211,238,.18), transparent 29%),
        radial-gradient(circle at 15% 80%, rgba(37,99,235,.24), transparent 34%),
        linear-gradient(135deg, #06111f 0%, #0a192b 56%, #0b2b4b 100%);
}
.premium-hero::before {
    content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .16;
    background-image: linear-gradient(rgba(255,255,255,.14) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.14) 1px, transparent 1px);
    background-size: 44px 44px; mask-image: linear-gradient(to bottom, black, transparent 78%);
}
.premium-hero::after {
    content:"";position:absolute;z-index:0;top:50%;right:-5%;width:min(62vw,760px);aspect-ratio:1;pointer-events:none;border-radius:50%;opacity:.3;
    background:
        radial-gradient(circle at 50% 50%,#02050d 0 8%,rgba(2,5,13,.96) 9% 11%,transparent 12% 15%,rgba(34,211,238,.82) 16% 17%,transparent 18% 21%,rgba(79,70,229,.45) 22% 28%,transparent 29% 100%),
        repeating-conic-gradient(from 4deg at 50% 50%,transparent 0deg 13deg,rgba(34,211,238,.36) 14deg 16deg,transparent 17deg 29deg,rgba(99,102,241,.3) 30deg 33deg,transparent 34deg 45deg);
    -webkit-mask-image:radial-gradient(ellipse at center,transparent 0 7%,#000 9% 47%,transparent 70%);mask-image:radial-gradient(ellipse at center,transparent 0 7%,#000 9% 47%,transparent 70%);
    filter:drop-shadow(0 0 34px rgba(34,211,238,.22));transform-origin:center;animation:premium-vortex-spin 28s linear infinite;
}
@keyframes premium-vortex-spin {
    from { transform:translateY(-50%) perspective(900px) rotateX(58deg) rotateZ(0deg) scale(.94); }
    to { transform:translateY(-50%) perspective(900px) rotateX(58deg) rotateZ(360deg) scale(1.02); }
}
.dashboard-frame {
    position: relative; padding: 10px; border: 1px solid rgba(255,255,255,.18); border-radius: 22px;
    background: rgba(255,255,255,.1); box-shadow: 0 35px 90px rgba(0,0,0,.4); backdrop-filter: blur(14px);
    max-width: 100%; box-sizing: border-box;
}
.dashboard-frame img { display: block; width: 100%; border-radius: 14px; }
.hero-product-carousel { isolation: isolate; max-width: 100%; }
.hero-carousel-stage {
    position: relative; overflow: hidden; width: 100%; max-width: 100%; aspect-ratio: 16 / 10;
    border-radius: 14px; background: #071524;
}
.hero-carousel-slide {
    position: absolute; inset: 0; display: block; color: white; opacity: 0; visibility: hidden;
    transform: scale(1.035); pointer-events: none;
    transition: opacity .65s ease, transform 1s ease, visibility .65s ease;
}
.hero-carousel-slide.is-active { z-index: 1; opacity: 1; visibility: visible; transform: scale(1); pointer-events: auto; }
.dashboard-frame .hero-carousel-slide img { width: 100%; height: 100%; border-radius: 0; object-fit: contain; object-position: center; background: #071524; }
.hero-carousel-shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(6,17,31,.02) 28%, rgba(6,17,31,.94) 100%); }
.hero-carousel-caption { position: absolute; z-index: 2; left: 24px; right: 82px; bottom: 24px; display: flex; flex-direction: column; align-items: flex-start; }
.hero-carousel-caption small { color: #a5f3fc; font-size: .68rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.hero-carousel-caption strong { max-width: 520px; margin-top: .35rem; font-size: clamp(1.15rem, 2.2vw, 1.75rem); line-height: 1.12; letter-spacing: -.025em; }
.hero-carousel-caption > span { margin-top: .65rem; color: #e0f2fe; font-size: .78rem; font-weight: 800; }
.carousel-arrow {
    position: absolute; z-index: 4; top: 50%; display: grid; place-items: center; width: 42px; height: 42px;
    border: 1px solid rgba(255,255,255,.24); border-radius: 50%; color: white; background: rgba(6,17,31,.7);
    box-shadow: 0 10px 26px rgba(0,0,0,.24); backdrop-filter: blur(10px); transform: translateY(-50%);
    transition: background .2s ease, transform .2s ease, border-color .2s ease;
}
.carousel-arrow:hover { background: var(--blue-600); border-color: rgba(255,255,255,.5); transform: translateY(-50%) scale(1.06); }
.carousel-arrow--prev { left: 22px; }
.carousel-arrow--next { right: 22px; }
.carousel-dots { display: flex; align-items: center; justify-content: center; gap: 7px; }
.carousel-dots--hero { position: absolute; z-index: 4; left: 50%; bottom: -28px; transform: translateX(-50%); }
.carousel-dot { width: 7px; height: 7px; border: 0; border-radius: 999px; background: #bdcad9; transition: width .25s ease, background .25s ease, transform .25s ease; }
.carousel-dot:hover { transform: scale(1.25); background: #7c8da3; }
.carousel-dot.is-active { width: 26px; background: var(--blue-600); }
.carousel-dots--hero .carousel-dot { background: rgba(255,255,255,.38); }
.carousel-dots--hero .carousel-dot.is-active { background: var(--cyan-400); }
.float-chip {
    position: absolute; z-index: 2; display: flex; align-items: center; gap: .65rem;
    padding: .75rem .9rem; border: 1px solid rgba(255,255,255,.3); border-radius: 14px;
    color: white; background: rgba(6,17,31,.82); box-shadow: 0 16px 40px rgba(0,0,0,.25); backdrop-filter: blur(12px);
}
.trust-strip { background: white; border-bottom: 1px solid var(--line); }
.trust-item { display: flex; align-items: center; gap: .65rem; color: #40516a; font-size: .82rem; font-weight: 700; }
.trust-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--cyan-400); box-shadow: 0 0 0 5px rgba(34,211,238,.13); }

.product-showcase { background: white; border: 1px solid var(--line); border-radius: 24px; overflow: hidden; box-shadow: 0 25px 70px rgba(6,17,31,.09); }
.product-media { background: linear-gradient(145deg, #eaf2fb, #f8fbff); }
.product-media img { width: 100%; height: 100%; object-fit: contain; }
.showcase-heading-controls { display: inline-flex; align-items: center; gap: .75rem; flex: 0 0 auto; }
.showcase-control {
    display: grid; place-items: center; width: 46px; height: 46px; border: 1px solid #ccdaea; border-radius: 50%;
    color: var(--ink-950); background: white; box-shadow: 0 8px 20px rgba(6,17,31,.06);
    transition: color .2s ease, background .2s ease, border-color .2s ease, transform .2s ease;
}
.showcase-control:hover { color: white; background: var(--ink-950); border-color: var(--ink-950); transform: translateY(-2px); }
.showcase-counter { min-width: 58px; color: #94a3b8; font-size: .78rem; font-weight: 750; text-align: center; }
.showcase-counter strong { color: var(--blue-600); font-size: 1rem; }
.showcase-carousel { position: relative; }
.showcase-carousel-stage { display: grid; }
.showcase-carousel-slide {
    grid-area: 1 / 1; z-index: 0; opacity: 0; visibility: hidden; transform: translateX(24px) scale(.992);
    pointer-events: none; transition: opacity .52s ease, transform .65s ease, visibility .52s ease;
}
.showcase-carousel-slide.is-active { z-index: 1; opacity: 1; visibility: visible; transform: translateX(0) scale(1); pointer-events: auto; }
.carousel-dots--showcase { margin-top: 24px; }
.price-old { color: #94a3b8; text-decoration: line-through; font-size: .875rem; }
.price-current { color: #16a34a; font-size: clamp(2rem, 4vw, 3.25rem); font-weight: 900; letter-spacing: -.045em; }
.price-money, .catalog-card .price-money, .mobile-buybar strong { color: #16a34a !important; }
.check-list li { display: flex; gap: .65rem; align-items: flex-start; color: #40516a; }
.check-list svg { flex: 0 0 auto; margin-top: .18rem; color: var(--blue-600); }

.catalog-card { transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease; }
.catalog-card:hover { transform: translateY(-5px); border-color: #b9c9dc; box-shadow: 0 22px 50px rgba(6,17,31,.11); }
.solution-card-icon {
    width: 64px; height: 64px; display: inline-flex; align-items: center; justify-content: center;
    flex: 0 0 64px; border-radius: 18px; overflow: hidden; border: 1px solid rgba(148,163,184,.18);
    box-shadow: 0 10px 24px rgba(6,17,31,.08);
}
.solution-card-icon img { display: block; width: 43px; height: 43px; object-fit: contain; }
.solution-card-icon--discord { background: #eef0ff; }
.solution-card-icon--discord img { transform-origin:center;filter:drop-shadow(0 0 7px rgba(88,101,242,.28));animation:discord-mark-pulse 2.6s ease-in-out infinite; }
@keyframes discord-mark-pulse { 0%,100% { transform:scale(1);filter:drop-shadow(0 0 4px rgba(88,101,242,.18)); } 50% { transform:scale(1.11);filter:drop-shadow(0 0 11px rgba(88,101,242,.62)); } }
.solution-card-icon--telegram { background: #e6f9fd; }
.solution-card-icon--art { background: linear-gradient(145deg, #edf5ff, #dbeafe); }
.solution-card-icon--art img { width: 60px; height: 60px; }
.solution-card-icon--dark { background: rgba(255,255,255,.07); border-color: rgba(255,255,255,.12); box-shadow: 0 12px 26px rgba(0,0,0,.22); }
.filter-chip { display:inline-flex; align-items:center; padding:.62rem .9rem; border:1px solid var(--line); border-radius:999px; color:#52647c; background:white; font-size:.82rem; font-weight:750; }
.filter-chip:hover, .filter-chip.is-active { color:white; border-color:var(--ink-950); background:var(--ink-950); }

.product-layout { display: grid; gap: 2rem; grid-template-columns: minmax(0, 1.5fr) minmax(320px, .72fr); align-items: start; }
.product-gallery { border-radius: 22px; overflow: hidden; border: 1px solid var(--line); background: white; box-shadow: 0 18px 55px rgba(6,17,31,.07); }
.product-gallery-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:12px; }
.product-gallery-grid.has-thumbnails { grid-template-columns:76px minmax(0,1fr); }
.product-gallery-thumbnails { display:flex; flex-direction:column; gap:9px; max-height:clamp(280px,42vw,560px); overflow-y:auto; }
.product-gallery-thumb { width:76px; height:68px; padding:4px; overflow:hidden; border:1px solid var(--line); border-radius:12px; background:#f1f5f9; cursor:pointer; }
.product-gallery-thumb.is-active { border-color:#315ee8; box-shadow:0 0 0 2px rgba(49,94,232,.12); }
.product-gallery-thumb img { display:block; width:100%; height:100%; object-fit:contain; }
.product-gallery-main { display:flex; align-items:center; justify-content:center; width:100%; min-width:0; aspect-ratio:16/10; overflow:hidden; border-radius:16px; background:#f1f5f9; }
.product-gallery-main>img { display:block; width:100%; height:100%; object-fit:contain; object-position:center; }
.product-gallery-placeholder { display:flex; width:100%; height:100%; flex-direction:column; justify-content:flex-end; padding:clamp(24px,5vw,56px); color:#fff; background:linear-gradient(135deg,#06111f,#0a2540,#1d4ed8); }
.purchase-card { border-radius: 22px; border: 1px solid #d7e2ef; background: white; box-shadow: 0 25px 70px rgba(6,17,31,.12); }
.info-pill { display:inline-flex; align-items:center; gap:.4rem; border-radius:999px; background:#eff6ff; color:#1d4ed8; padding:.42rem .7rem; font-size:.72rem; font-weight:800; }
.product-copy { color: #53657b; line-height: 1.8; }
.product-copy h2, .product-copy h3, .product-copy strong { color: var(--ink-950); }

.mobile-buybar { display: none; }
.premium-footer { color: #c8d3e1; background: var(--ink-950); border-top: 1px solid rgba(255,255,255,.06); }
.footer-link { color: #91a2b8; transition: color .2s ease; }
.footer-link:hover { color: white; }
.footer-payments { display: flex; align-items: center; justify-content: flex-end; gap: .75rem; color: #64748b; font-size: .75rem; }
.footer-payment-marks { display: flex; align-items: center; gap: .45rem; margin: 0; padding: 0; list-style: none; }
.payment-mark {
    display: inline-flex; align-items: center; justify-content: center;
    height: 38px; padding: 7px 10px; border: 1px solid rgba(255,255,255,.12); border-radius: 9px;
    background: #f8fafc; box-shadow: 0 5px 16px rgba(0,0,0,.16);
}
.payment-mark img { display: block; width: auto; max-width: 100%; height: auto; max-height: 23px; object-fit: contain; }
.payment-mark--pix { width: 88px; }
.payment-mark--visa { width: 66px; }
.payment-mark--mastercard { width: 54px; }
.payment-mark--mastercard img { max-height: 27px; }

.discord-float {
    position: fixed; z-index: 70; right: 22px; bottom: 22px;
    display: inline-flex; align-items: center; justify-content: center;
    width: 60px; height: 60px; border-radius: 19px; color: white;
    background: linear-gradient(145deg, #6d78f7, #5865f2 60%, #4752c4);
    border: 1px solid rgba(255,255,255,.25);
    box-shadow: 0 18px 42px rgba(71,82,196,.38), 0 5px 15px rgba(6,17,31,.18);
    transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.discord-float::after {
    content: ""; position: absolute; inset: -5px; border: 1px solid rgba(88,101,242,.2);
    border-radius: 23px; pointer-events: none;
}
.discord-float svg { width: 31px; height: 31px; }
.discord-float:hover, .discord-float:focus-visible {
    color: white; transform: translateY(-4px) scale(1.03); filter: saturate(1.1);
    box-shadow: 0 24px 50px rgba(71,82,196,.46), 0 7px 18px rgba(6,17,31,.2);
}
.discord-float:focus-visible { outline: 3px solid rgba(88,101,242,.28); outline-offset: 5px; }
.discord-float__tooltip {
    position: absolute; right: calc(100% + 12px); top: 50%; transform: translateY(-50%) translateX(6px);
    width: max-content; max-width: 190px; padding: .58rem .75rem; border-radius: 10px;
    color: white; background: var(--ink-950); font-size: .75rem; font-weight: 750;
    box-shadow: 0 10px 28px rgba(6,17,31,.22); opacity: 0; visibility: hidden; pointer-events: none;
    transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}
.discord-float__tooltip::after {
    content: ""; position: absolute; left: 100%; top: 50%; transform: translateY(-50%);
    border: 6px solid transparent; border-left-color: var(--ink-950);
}
.discord-float:hover .discord-float__tooltip,
.discord-float:focus-visible .discord-float__tooltip { opacity: 1; visibility: visible; transform: translateY(-50%) translateX(0); }

.form-control {
    width: 100%; border: 1px solid #cfdbea; border-radius: 12px; background: white;
    padding: .85rem 1rem; color: var(--ink-950); outline: none; transition: .2s ease;
}
.form-control:focus { border-color: var(--blue-500); box-shadow: 0 0 0 4px rgba(59,130,246,.12); }

@media (max-width: 1023px) {
    .product-layout { grid-template-columns: 1fr; }
    .product-offer { order: -1; }
    .product-gallery-wrap { order: 0; }
    .product-gallery-thumbnails { flex-direction:row; max-height:none; overflow-x:auto; overflow-y:hidden; }
    .product-gallery-grid.has-thumbnails { grid-template-columns:minmax(0,1fr); }
}

@media (max-width: 767px) {
    .site-shell { width: min(100% - 24px, 1180px); max-width: 100%; }
    .premium-nav-link.is-active::after { display:none; }
    .premium-hero::after { width:112vw;right:-48%;opacity:.2; }
    .float-chip {
        gap: .35rem; padding: .35rem .5rem; border-radius: 10px;
        box-shadow: 0 8px 20px rgba(0,0,0,.2); transform: none;
        max-width: 48%;
    }
    .float-chip.float-chip--delivery { left: 8px !important; right: auto !important; bottom: 8px !important; top: auto !important; }
    .float-chip.float-chip--license { left: auto !important; right: 8px !important; top: 8px !important; bottom: auto !important; }
    .float-chip > span:first-child { width: 24px !important; height: 24px !important; border-radius: 7px; font-size: .62rem; flex-shrink: 0; }
    .float-chip > span:first-child svg { width: 14px; height: 14px; }
    .float-chip small { display: none !important; }
    .float-chip strong { font-size: .65rem !important; white-space: nowrap; }
    .hero-carousel-stage { width: 100%; max-width: 100%; min-height: 0 !important; aspect-ratio: 16 / 10; }
    .hero-carousel-caption { left: 14px; right: 48px; bottom: 14px; }
    .hero-carousel-caption strong { font-size: 1rem; }
    .carousel-arrow { width: 32px; height: 32px; }
    .carousel-arrow--prev { left: 8px; }
    .carousel-arrow--next { right: 8px; }
    .showcase-heading-controls { align-self: flex-start; }
    .showcase-carousel-slide .product-media { min-height: 240px; }
    .trust-strip .site-shell { gap: .65rem .85rem; }
    .trust-item { font-size: .75rem; gap: .45rem; min-width: 0; word-break: break-word; }
    .trust-dot { flex-shrink: 0; }
    .mobile-buybar {
        display: flex; position: fixed; z-index: 60; left: 10px; right: 10px; bottom: 10px;
        align-items: center; justify-content: space-between; gap: 12px; padding: 10px 12px 10px 16px;
        border: 1px solid rgba(255,255,255,.12); border-radius: 16px; color: white;
        background: rgba(6,17,31,.94); box-shadow: 0 20px 50px rgba(0,0,0,.35); backdrop-filter: blur(16px);
    }
    .mobile-buybar .button-primary { min-height: 42px; padding: .55rem 1rem; border-radius: 10px; }
    body.has-mobile-buybar { padding-bottom: 80px; }
    .discord-float { right: 14px; bottom: 14px; width: 54px; height: 54px; border-radius: 17px; }
    .discord-float svg { width: 28px; height: 28px; }
    .discord-float__tooltip { display: none; }
    body.has-mobile-buybar .discord-float { bottom: 88px; }
    .footer-payments { align-items: flex-start; flex-direction: column; gap: .65rem; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

.account-page-shell { width:min(1280px,calc(100% - 40px)); margin:0 auto; padding:30px 0 64px; }
.account-page-hero { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; padding:30px 34px; border:1px solid #dfe7f2; border-radius:24px; color:#fff; background:radial-gradient(circle at 88% 10%,rgba(34,211,238,.23),transparent 28%),linear-gradient(125deg,#101a38,#302c81 60%,#4f46a5); box-shadow:0 18px 45px rgba(30,41,90,.12); }
.account-page-hero h1 { color:#fff; font-size:clamp(1.6rem,3vw,2.25rem); font-weight:850; letter-spacing:-.04em; line-height:1.1; }
.account-page-hero p { margin-top:8px; color:#dbeafe; font-size:.92rem; line-height:1.6; }
.account-page-panel { overflow:hidden; border:1px solid #e2eaf3; border-radius:20px; background:#fff; box-shadow:0 12px 35px rgba(6,17,31,.055); }
.account-page-panel-heading { padding:20px 23px; border-bottom:1px solid #edf1f6; }
.account-page-panel-heading h2,.account-page-panel-heading h3 { color:#17253b; font-size:1rem; font-weight:850; }
.account-page-panel-heading p { margin-top:4px; color:#8290a4; font-size:.78rem; }
.account-page-eyebrow { display:block; margin-bottom:8px; color:#a5c8ff; font-size:.67rem; font-weight:850; letter-spacing:.14em; }
.account-page-hero-badge { display:inline-flex; align-items:center; gap:9px; flex:0 0 auto; padding:11px 15px; border:1px solid rgba(255,255,255,.2); border-radius:999px; color:#eef4ff; background:rgba(255,255,255,.1); font-size:.76rem; font-weight:750; }
.account-page-status-dot { width:8px; height:8px; border-radius:50%; background:#4ade80; box-shadow:0 0 0 4px rgba(74,222,128,.15); }
.account-support-grid { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(300px,.85fr); align-items:start; gap:22px; margin-top:24px; }
.account-support-main { display:grid; gap:22px; }
.account-support-channels { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding:20px 22px; }
.account-support-channel { min-width:0; display:flex; align-items:center; gap:12px; padding:15px; border:1px solid #e6edf5; border-radius:15px; color:#17253b; background:#fbfdff; transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease; }
.account-support-channel[href]:hover { transform:translateY(-2px); border-color:#c8d6ea; box-shadow:0 12px 24px rgba(15,35,75,.08); }
.account-support-channel > span:nth-child(2) { min-width:0; display:grid; gap:4px; }
.account-support-channel strong { font-size:.82rem; font-weight:800; }
.account-support-channel small { color:#77869a; font-size:.69rem; line-height:1.45; }
.account-support-channel-icon { flex:0 0 42px; width:42px; height:42px; display:grid; place-items:center; border-radius:13px; color:#fff; background:#5865f2; font-size:1.2rem; font-weight:900; }
.account-support-channel-icon svg { width:23px; height:23px; display:block; }
.account-support-email .account-support-channel-icon { color:#245be8; background:#eaf1ff; }
.account-support-arrow { margin-left:auto; color:#7d8ba0; }
.account-support-channel.is-unavailable { background:#f8fafc; }
.account-support-note { margin:0 22px 22px; padding:15px 17px; border:1px solid #dce8ff; border-radius:14px; background:#f5f8ff; }
.account-support-note strong { color:#284a93; font-size:.79rem; }
.account-support-note p { margin-top:4px; color:#6e7e96; font-size:.73rem; line-height:1.55; }
.account-support-form { display:grid; gap:18px; padding:22px; }
.account-support-form label { display:grid; gap:8px; color:#34445b; font-size:.78rem; font-weight:750; }
.account-support-form input,.account-support-form textarea { width:100%; border:1px solid #d7e1ed; border-radius:12px; padding:12px 14px; color:#17253b; background:#fbfdff; font:inherit; font-weight:450; outline:none; transition:border-color .18s ease,box-shadow .18s ease; }
.account-support-form textarea { resize:vertical; min-height:140px; }
.account-support-form input:focus,.account-support-form textarea:focus { border-color:#5c75ed; box-shadow:0 0 0 4px rgba(92,117,237,.12); }
.account-support-form label small { color:#8996a8; font-size:.68rem; font-weight:500; }
.account-support-submit { justify-self:start; display:inline-flex; align-items:center; gap:14px; border:0; border-radius:12px; padding:12px 18px; color:#fff; background:linear-gradient(120deg,#315ee8,#5948d8); box-shadow:0 10px 22px rgba(64,85,220,.2); font-size:.79rem; font-weight:800; cursor:pointer; transition:transform .18s ease,box-shadow .18s ease; }
.account-support-submit:hover { transform:translateY(-2px); box-shadow:0 14px 26px rgba(64,85,220,.28); }
.account-ticket-list { display:grid; gap:0; max-height:760px; overflow:auto; }
.account-ticket-item { padding:17px 20px; border-bottom:1px solid #edf1f6; }
.account-ticket-meta { display:flex; align-items:center; justify-content:space-between; color:#97a2b2; font-size:.68rem; }
.account-ticket-status { padding:4px 8px; border-radius:999px; color:#137b50; background:#e8f8ef; font-size:.65rem; font-weight:800; }
.account-ticket-status.status-closed { color:#677386; background:#eef1f5; }
.account-ticket-status.status-answered { color:#2858c8; background:#eaf1ff; }
.account-ticket-item h3 { overflow:hidden; margin-top:10px; color:#25344a; font-size:.82rem; font-weight:800; text-overflow:ellipsis; white-space:nowrap; }
.account-ticket-item p { display:-webkit-box; overflow:hidden; margin-top:5px; color:#718096; font-size:.72rem; line-height:1.55; -webkit-line-clamp:3; -webkit-box-orient:vertical; }
.account-ticket-item time { display:block; margin-top:10px; color:#9aa5b4; font-size:.66rem; }
.account-page-empty { display:grid; justify-items:center; padding:48px 24px; text-align:center; }
.account-page-empty > span { display:grid; width:46px; height:46px; place-items:center; border-radius:15px; color:#5068e8; background:#eef2ff; font-size:1.25rem; }
.account-page-empty strong { margin-top:14px; color:#29384e; font-size:.8rem; }
.account-page-empty p { margin-top:5px; color:#8290a4; font-size:.72rem; }
.account-page-alert { margin-top:18px; padding:13px 16px; border-radius:12px; font-size:.8rem; font-weight:650; }
.account-page-alert-success { border:1px solid #bcebd0; color:#176342; background:#effcf4; }
.account-page-alert-error { border:1px solid #f2c6c6; color:#9b3030; background:#fff5f5; }
.profile-hero-backdrop { background:radial-gradient(circle at 88% 8%,rgba(34,211,238,.22),transparent 29%),linear-gradient(120deg,#1e40af,#4338ca 58%,#4f46e5); }
.library-hero-backdrop { background:radial-gradient(circle at 88% 8%,rgba(34,211,238,.22),transparent 29%),linear-gradient(120deg,#1e40af,#3730a3 58%,#4f46e5); }
.download-code-screen { display:grid; min-height:calc(100vh - 90px); place-items:center; padding:36px 18px; background:radial-gradient(ellipse at 8% 0%,rgba(219,234,254,.48),transparent 34%),#f5f8fc; }
.download-code-card { width:min(100%,510px); padding:34px; border:1px solid #e1e9f3; border-radius:23px; background:#fff; box-shadow:0 22px 60px rgba(16,36,61,.11); }
.download-code-card-top { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:24px; }
.download-code-card-top img { display:block; max-width:145px; max-height:34px; object-fit:contain; }
.download-code-card-top strong { color:#18345e; font-size:1rem; font-weight:900; }
.download-code-card-top a { color:#6c7a8f; font-size:.7rem; font-weight:750; }
.download-code-card-top a:hover { color:#315ee8; }
.download-code-login-badge { display:inline-flex; align-items:center; gap:6px; margin-bottom:16px; padding:6px 9px; border-radius:999px; color:#176342; background:#effcf4; font-size:.66rem; font-weight:800; }
.download-code-login-badge span { display:grid; width:14px; height:14px; place-items:center; border-radius:50%; color:#fff; background:#20a464; font-size:.58rem; }
.download-code-icon { display:grid; width:50px; height:50px; margin-bottom:20px; place-items:center; border-radius:16px; color:#315ee8; background:#edf3ff; }
.download-code-icon svg { width:25px; height:25px; }
.download-code-card .account-page-eyebrow { color:#526be3; }
.download-code-card h1 { color:#15243b; font-size:clamp(1.55rem,4vw,2rem); font-weight:850; letter-spacing:-.04em; line-height:1.15; }
.download-code-intro { margin-top:10px; color:#6b7b91; font-size:.88rem; line-height:1.65; }
.download-code-warning { display:grid; gap:5px; margin-top:20px; padding:14px 15px; border:1px solid #f4dfa4; border-radius:13px; color:#795515; background:#fffbeb; font-size:.76rem; line-height:1.55; }
.download-code-warning strong { font-size:.79rem; }
.download-code-form { display:grid; gap:14px; margin-top:22px; }
.download-code-form label { display:grid; gap:7px; color:#33445c; font-size:.75rem; font-weight:750; }
.download-code-form input { width:100%; border:1px solid #d6e0ed; border-radius:11px; padding:12px 14px; color:#15243b; background:#fbfdff; font-size:1rem; letter-spacing:.22em; outline:none; }
.download-code-form input.account-password-input { letter-spacing:normal; }
.download-code-form input:focus { border-color:#5272ea; box-shadow:0 0 0 4px rgba(82,114,234,.12); }
.download-code-form button { display:flex; align-items:center; justify-content:center; gap:12px; min-height:46px; margin-top:4px; border:0; border-radius:12px; color:#fff; background:linear-gradient(120deg,#315ee8,#5948d8); font-size:.8rem; font-weight:800; cursor:pointer; }
.download-code-footnote { margin-top:16px; color:#8b97a8; font-size:.69rem; text-align:center; }
.download-code-error { margin-top:16px; padding:11px 13px; border-radius:11px; color:#9b3030; background:#fff1f1; font-size:.77rem; }
.download-code-error-banner { margin:0 0 18px; padding:12px 15px; border:1px solid #f2c6c6; border-radius:12px; color:#9b3030; background:#fff5f5; font-size:.78rem; }
.download-code-success { margin-top:20px; padding:14px 17px; border:1px solid #cbdafa; border-radius:14px; color:#37518f; background:#eff4ff; font-size:.78rem; line-height:1.55; }
.download-code-success strong { color:#243f83; }
.download-confirm-overlay { position:fixed; z-index:100; inset:0; display:none; align-items:center; justify-content:center; padding:18px; background:rgba(8,17,35,.58); backdrop-filter:blur(5px); }
.download-confirm-overlay.is-open { display:flex; }
.download-confirm-dialog { width:min(100%,420px); padding:24px; border:1px solid #e3eaf3; border-radius:20px; background:#fff; box-shadow:0 28px 80px rgba(5,16,38,.3); }
.download-confirm-dialog h2 { color:#17253b; font-size:1.15rem; font-weight:850; }
.download-confirm-dialog p { margin-top:7px; color:#718096; font-size:.78rem; line-height:1.55; }
.download-confirm-dialog label { display:grid; gap:8px; margin-top:18px; color:#33445c; font-size:.75rem; font-weight:750; }
.download-confirm-dialog input { border:1px solid #d6e0ed; border-radius:11px; padding:12px 14px; font-size:1.1rem; letter-spacing:.25em; text-align:center; }
.download-confirm-dialog input:focus { outline:3px solid rgba(82,114,234,.15); border-color:#5272ea; }
.download-confirm-actions { display:flex; gap:9px; margin-top:18px; }
.download-confirm-actions button { flex:1; min-height:42px; border:0; border-radius:10px; font-size:.75rem; font-weight:800; cursor:pointer; }
.download-confirm-cancel { color:#46566e; background:#eef2f7; }
.download-confirm-submit { color:#fff; background:#2563eb; }
.download-confirm-error { display:none; margin-top:12px; color:#b42318 !important; }
.download-confirm-error.is-visible { display:block; }
.download-code-success + .client-main-grid { margin-top:20px; }
.library-products-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; align-items:stretch; }
.library-product-card { min-width:0; display:flex; flex-direction:column; overflow:hidden; border:1px solid #e3eaf2; border-radius:15px; background:#fff; box-shadow:0 5px 16px rgba(16,36,61,.055); transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.library-product-card:hover { transform:translateY(-3px); border-color:#cbd9e8; box-shadow:0 12px 26px rgba(16,36,61,.11); }
.library-product-image { position:relative; width:100%; height:94px; overflow:hidden; background:#edf2f7; }
.library-product-image img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .45s ease; }
.library-product-card:hover .library-product-image img { transform:scale(1.04); }
.library-product-badge { padding:4px 7px; color:#fff; font-size:.57rem; line-height:1.2; }
.library-product-content { display:flex; flex:1; flex-direction:column; min-width:0; padding:11px; }
.library-product-heading { min-height:76px; margin-bottom:8px; }
.library-product-heading h3 { display:-webkit-box; overflow:hidden; margin:0 0 7px; color:#18283e; font-size:.78rem; line-height:1.35; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
.library-product-date { align-items:flex-start; gap:4px; color:#8290a4; font-size:.61rem; line-height:1.35; }
.library-product-date svg { width:12px; height:12px; margin:0; }
.library-product-actions { display:grid; gap:6px; margin-top:auto; padding-top:9px; border-top:1px solid #edf1f5; }
.library-product-button { width:100%; min-height:32px; gap:4px; padding:6px 7px; font-size:.65rem; line-height:1.2; white-space:nowrap; }
.library-product-button svg { width:14px; height:14px; margin:0 3px 0 0; }
.tutorials-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:18px; margin-top:24px; align-items:stretch; }
.tutorial-card { min-width:0; transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.tutorial-card:hover { transform:translateY(-3px); border-color:#cbd9e8; box-shadow:0 12px 26px rgba(16,36,61,.11); }
.tutorial-card-media { width:100%; aspect-ratio:16/9; overflow:hidden; }
.tutorial-card-media iframe { display:block; width:100%; height:100%; border:0; }
.tutorial-card-content { min-width:0; padding:17px; }
.tutorial-card-label { color:#5261d8; font-size:.64rem; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
.tutorial-card-content h2 { display:-webkit-box; overflow:hidden; margin-top:7px; color:#17253b; font-size:1rem; font-weight:850; line-height:1.4; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
.tutorial-card-content p { display:-webkit-box; overflow:hidden; margin-top:8px; color:#718096; font-size:.8rem; line-height:1.55; -webkit-line-clamp:4; -webkit-box-orient:vertical; }
.library-product-heading h3 { transition:color .18s ease; }
.library-product-card:hover .library-product-heading h3 { color:#315ee8; }
.library-product-download { color:#fff; background:linear-gradient(120deg,#315ee8,#5147d9) !important; box-shadow:0 7px 16px rgba(49,94,232,.18) !important; }
.library-product-download:hover { color:#fff; background:linear-gradient(120deg,#2448c8,#4338ca) !important; }
.library-product-tutorial:hover { color:#315ee8 !important; }
@media(min-width:600px){.library-products-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.library-product-image{height:116px}.library-product-content{padding:13px}.library-product-heading{min-height:82px}.library-product-heading h3{font-size:.86rem}.library-product-date{font-size:.66rem}.library-product-button{min-height:35px;font-size:.7rem}}
@media(min-width:960px){.library-products-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.library-product-image{height:126px}}
@media(min-width:560px){.tutorials-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}}
@media(min-width:980px){.tutorials-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}}
@media(min-width:1200px){.library-products-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}}
@media(max-width:360px){.library-products-grid{grid-template-columns:1fr}.library-product-image{height:130px}.library-product-heading{min-height:0}.library-product-content{padding:13px}.library-product-button{min-height:36px;font-size:.73rem}.tutorial-card-content{padding:14px}.tutorial-card-content h2{font-size:.92rem}.tutorial-card-content p{font-size:.76rem}}
@media(max-width:900px){.account-support-grid{grid-template-columns:1fr}.account-support-history{min-height:260px}}
@media(max-width:560px){.account-support-channels{grid-template-columns:1fr;padding:15px}.account-support-form{padding:17px}.account-support-note{margin:0 15px 15px}.account-page-hero-badge{font-size:.69rem}}
@media(max-width:900px){
    .client-portal-topline{display:flex;flex-wrap:wrap;min-height:0;gap:0;padding-block:10px}
    .client-portal-identity{flex:1 1 auto;min-width:0}
    .client-portal-identity small{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
    .client-portal-nav{order:3;flex:0 0 100%;width:100%;min-width:0;flex-wrap:wrap;justify-content:flex-start;gap:4px;margin-top:9px;overflow:visible;padding:0}
    .client-portal-link{padding:.5rem .55rem;font-size:.72rem}
}
@media(max-width:380px){.client-portal-brand-logo{max-width:88px}.client-portal-identity{gap:.4rem}.client-portal-identity strong{font-size:.72rem}.client-portal-identity small{max-width:112px}.client-portal-logout{font-size:.68rem}}
@media(max-width:640px){.account-page-shell{width:calc(100% - 24px);padding:22px 0 48px}.account-page-hero{align-items:flex-start;flex-direction:column;padding:23px 21px;border-radius:20px}.account-page-panel-heading{padding:17px}}

/* Transparent offer details across product cards and product pages. */
.shop-product-card{display:flex;flex-direction:column;min-width:0;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.shop-product-card:hover{transform:translateY(-3px);border-color:#cbd9e8;box-shadow:0 16px 34px rgba(16,36,61,.12)}
.shop-product-card>div:last-child{display:flex;flex:1;flex-direction:column;min-width:0}
.discount-badge{display:inline-flex;align-items:center;width:max-content;border-radius:999px;background:#fff0ed;color:#c2412d;padding:5px 9px;font-size:.68rem;font-weight:850;letter-spacing:.02em;white-space:nowrap}
.shop-product-proof{display:grid;gap:6px;margin:16px 0 18px;color:#53657b;font-size:.75rem;line-height:1.4}
.shop-product-proof span::first-letter{color:#2563eb}
.conversion-price-box{padding-top:13px;border-top:1px solid #edf1f5}
.conversion-original,.product-offer-original{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.conversion-original{justify-content:space-between;color:#7b8798;font-size:.72rem}
.conversion-original s,.product-offer-original .price-old{color:#8b96a7;font-size:.78rem}
.conversion-current{margin-top:3px;color:#16a34a;font-size:1.85rem;font-weight:900;letter-spacing:-.045em;line-height:1.1}
.conversion-savings{margin-top:3px;color:#16834a;font-size:.78rem;font-weight:750}
.product-offer-original{margin-bottom:8px}
.product-offer-original .price-old{margin:0}
@media(max-width:520px){.shop-product-card>div:last-child{padding:18px}.shop-product-card h2{font-size:1.08rem;line-height:1.3}.shop-product-proof{font-size:.72rem}.conversion-current{font-size:1.65rem}.shop-product-card .button-primary,.shop-product-card .button-secondary{padding-inline:10px;font-size:.78rem}}
