:root {

            --bg: #050608;

            --card: rgba(255, 255, 255, 0.03);

            --border: rgba(255, 255, 255, 0.08);

            /* Samaninis akcentas – ikonos, checkmark’ai, subtilūs UI (ne CTA) */

            --accent: #A5B68D;

            --accent-dim: rgba(165, 182, 141, 0.14);

            --accent-border: rgba(165, 182, 141, 0.28);

            --accent-border-soft: rgba(165, 182, 141, 0.18);

            /* CTA – „liūto“ energija (oranžinė), išlieka tamsus fonas */

            --cta: #f97316;

            --cta-hover: #fb923c;

            --cta-text: #0c0a09;

            --calm-sky: #38bdf8;

            --calm-sky-rgb: 56, 189, 248;

            --calm-sky-dim: rgba(56, 189, 248, 0.14);

            /* Švelnios „popieriaus“ / kreminės – mažiau „akį rėžiančio“ baltumo */

            --text: #E4E1DA;

            --text-heading: #F2EFE8;

            --text-muted: rgba(228, 225, 218, 0.78);

            --text-soft: rgba(228, 225, 218, 0.58);

            --glass-blur: blur(12px);

            --glass-radius: 16px;

            /* CTA RGB – apvadams / šviesai */

            --cta-rgb: 249, 115, 22;

            --cta-hover-rgb: 251, 146, 60;

            /* JS (visualViewport): papildoma vieta virš virtualios klaviatūros atidarytuose modaluose */

            --gl-modal-keyboard-inset: 0px;

            /* Plūduriuojantys kontaktų / DI burbulai: žemiau modalų (~1e6), virš įprasto turinio (~4k). */
            --gl-floating-actions-z: 8000;

            /* Sektorių ir bento tarpai – vienas šaltinis (8vw buvo per didelis → dvigubi „tušti“ tarpai) */
            --section-gap: clamp(24px, 4vw, 56px);
            --section-gap-tight: clamp(14px, 2.2vw, 28px);
            --bento-gap: clamp(16px, 2vw, 24px);

        }

        *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

        html {

            scroll-behavior: smooth;

            /* iOS Safari "bounce" / safe-area apačioje rodo HTML foną.
               Laikom tamsų foną čia, o video lieka atskiru sluoksniu (z-index: -1). */

            background: var(--bg);
            background-color: var(--bg);

            /* In-app / WebView (Google App ir kt.): slinktis ant document – overflow-x ant body kartais nutraukia vertikalų scroll */

            overflow-x: hidden;

            overflow-y: auto;

            -webkit-overflow-scrolling: touch;

            min-height: 100vh;

            min-height: 100dvh;

            min-height: -webkit-fill-available;

        }

        body {

            margin: 0;

            padding: 0;

            font-family: "Zilla Slab", Georgia, "Times New Roman", Times, serif;

            color: var(--text);

            line-height: 1.6;

            letter-spacing: -0.01em;

            font-weight: 400;

            min-height: 100vh;

            min-height: 100dvh;

            min-height: -webkit-fill-available;

            position: relative;

            /* Tamsą duoda .page-ambient-mesh + .video-readability-overlay (video matomas kaip savitarnoje) */

            background-color: transparent;

        }

        h1, h2, h3 {

            font-weight: 700;

            letter-spacing: -0.01em;

            color: var(--text-heading);

            text-shadow: 0 2px 12px rgba(0,0,0,0.5), 0 1px 2px rgba(0,0,0,0.35);

        }

        h1 { font-size: clamp(1.625rem, 2.2vw + 1rem, 2.75rem); line-height: 1.15; }

        h2 { font-size: clamp(1.375rem, 1.5vw + 0.85rem, 2rem); line-height: 1.2; }

        h3 { font-size: clamp(1.125rem, 0.8vw + 0.85rem, 1.375rem); line-height: 1.25; }



        /* Tekstas virš video – skaitomumas */

        .wrap section p,

        .wrap section li,

        .wrap .hero-sub,

        .wrap .hero-contract-small,

        .wrap .pricing-sub,

        .wrap .plans-bottom,

        .wrap .plan-desc,

        .wrap .plan-pitch,

        .wrap .plan-mood,

        .wrap .contract-micro,

        .wrap .contract-line,

        .wrap .benefit-card p {

            text-shadow: 0 2px 12px rgba(0,0,0,0.62), 0 1px 4px rgba(0,0,0,0.45);

        }



        .video-backdrop {

            /* iOS Safari sometimes fails to render <video> in negative z-index stacking contexts.
               Keep backdrop at 0 and layer UI above it. */
            position: fixed; inset: 0; z-index: 0; overflow: hidden;

        }

        .video-backdrop video {

            position: absolute; top: 50%; left: 50%;

            width: 100vw; height: 56.25vw; min-height: 100vh; min-height: 100dvh; min-width: 177.78vh;

            transform: translate(-50%, -50%); object-fit: cover;

            pointer-events: none;

            user-select: none;

        }

        /* Jei naudosi YouTube iframe: nutildyti, be valdiklių, pilnas ekranas (cover) */

        .video-backdrop iframe {

            position: absolute; top: 50%; left: 50%;

            width: 100vw; height: 56.25vw; min-height: 100vh; min-height: 100dvh; min-width: 177.78vh;

            max-width: none;

            transform: translate(-50%, -50%);

            pointer-events: none;

            border: 0;

            object-fit: cover;

            filter: brightness(0.48);

        }

        /* file://: YouTube embed dažnai meta klaidą – slepiame iframe, paliekame gradientą */

        .video-backdrop.video-backdrop--file iframe {

            display: none !important;

        }

        .video-backdrop.video-backdrop--file {

            background: transparent;

        }

        /* Tarp video (-1) ir skaitomumo (1): matomas „gyvas“ mesh – body fonas po video beveik nematomas */

        .page-ambient-mesh {

            position: fixed;

            inset: 0;

            z-index: 1;

            pointer-events: none;

            background-image:

                linear-gradient(

                    -52deg,

                    rgba(var(--cta-rgb), 0.32),

                    rgba(124, 58, 237, 0.22),

                    rgba(56, 189, 248, 0.26),

                    rgba(165, 182, 141, 0.16),

                    rgba(var(--cta-rgb), 0.28),

                    rgba(15, 23, 42, 0.38)

                ),

                radial-gradient(ellipse 95% 85% at 12% 18%, rgba(var(--cta-rgb), 0.38) 0%, transparent 52%),

                radial-gradient(ellipse 90% 80% at 88% 82%, rgba(56, 189, 248, 0.3) 0%, transparent 50%),

                radial-gradient(circle at 48% 52%, rgba(165, 182, 141, 0.14) 0%, transparent 55%);

            background-size: 450% 450%, 210% 210%, 210% 210%, 190% 190%;

            background-position: 0% 50%, 0% 0%, 100% 100%, 50% 50%;

            background-repeat: no-repeat;

            animation: pageAmbientMeshShift 8.5s ease-in-out infinite alternate, pageAmbientMeshHue 10.5s ease-in-out infinite;

        }

        @keyframes pageAmbientMeshShift {

            0% { background-position: 0% 40%, 0% 0%, 100% 100%, 50% 50%; }

            50% { background-position: 72% 58%, 85% 25%, 18% 78%, 42% 62%; }

            100% { background-position: 100% 55%, 100% 90%, 0% 12%, 55% 38%; }

        }

        @keyframes pageAmbientMeshHue {

            0% { filter: hue-rotate(0deg) saturate(1.58); }

            20% { filter: hue-rotate(48deg) saturate(1.95); }

            40% { filter: hue-rotate(-32deg) saturate(1.82); }

            60% { filter: hue-rotate(62deg) saturate(2.05); }

            80% { filter: hue-rotate(-24deg) saturate(1.88); }

            100% { filter: hue-rotate(0deg) saturate(1.58); }

        }

        @media (prefers-reduced-motion: reduce) {

            .page-ambient-mesh {

                animation: none;

                filter: none;

            }

        }

        /* Virš mesh: tamsinimas – šiek tiek lengvesnis, kad permainingos spalvos būtų aiškiai matomos */

        .video-readability-overlay {

            position: fixed;

            inset: 0;

            z-index: 2;

            pointer-events: none;

            background: none;

        }

        .video-readability-overlay::after {

            content: '';

            position: absolute;

            inset: 0;

            pointer-events: none;

            background: linear-gradient(

                165deg,

                rgba(5, 6, 8, 0.52) 0%,

                rgba(5, 8, 12, 0.64) 45%,

                rgba(4, 6, 9, 0.76) 100%

            );

        }

        @media (max-width: 767px) {

            .video-readability-overlay::after {

                background: linear-gradient(

                    180deg,

                    rgba(5, 8, 12, 0.64) 0%,

                    rgba(4, 6, 9, 0.8) 100%

                );

            }

            /* Mobilus: tekstas lygiuojamas į centrą, išskyrus hero elementus */

            .wrap section,

            .wrap section p,

            .wrap section li,

            .wrap section h2,

            .wrap section h3,

            .wrap .pricing-sub,

            .wrap .plans-bottom,

            .wrap .plan-desc,

            .wrap .plan-pitch,

            .wrap .plan-mood,

            .wrap .contract-micro,

            .wrap .contract-line,

            .wrap .benefit-card p,

            .wrap .sec-title {

                text-align: center;

            }

            /* Hero tekstas ir CTA lieka kairėje mobiliojoje versijoje */

            .wrap .hero-sub,

            .wrap .hero-contract-small,

            .wrap .hero-cta {

                text-align: left;

            }

        }



        .lang-bar {

            position: fixed; top: 16px; right: 16px; z-index: 101;

            display: flex; gap: 6px; background: rgba(255,255,255,0.06); backdrop-filter: blur(14px);

            -webkit-backdrop-filter: blur(14px);

            padding: 6px; border-radius: 999px; border: 1px solid rgba(255,255,255,0.12);

        }

        @media (max-width: 480px) {

            .lang-bar { top: 12px; right: 12px; padding: 5px; gap: 4px; }

            .lang-bar button { padding: 6px 10px; font-size: 0.8rem; }

        }

        .lang-bar button {

            padding: 8px 14px; border: none; border-radius: 999px; background: transparent;

            color: var(--text-muted); font-size: 0.85rem; font-weight: 600; cursor: pointer; font-family: inherit;

        }

        .lang-bar button:hover { color: var(--text); }

        .lang-bar button.active {

            background: rgba(165, 182, 141, 0.22);

            color: var(--text-heading);

            border: 1px solid var(--accent-border);

            box-shadow: 0 0 0 1px rgba(0,0,0,0.2) inset;

        }



        .wrap { position: relative; z-index: 3; max-width: 1200px; margin: 0 auto; padding: 0 20px; }

        section { padding-block: var(--section-gap); padding-inline: 0; }

        /* Po hero / tarp gretimų juostų – mažesni tarpai (ne 2× didelis section-gap) */
        section.hero-benefits-strip,
        section.gl-network-pulse-section,
        section.gl-ai-trust-strip {
            padding-block: var(--section-gap-tight);
        }

        section.gl-brand-strip,
        section#benefits,
        section#network,
        section#how {
            padding-block: clamp(20px, 3.2vw, 40px);
        }

        /* Turinys virš video + mesh + overlay */

        main { position: relative; z-index: 4; }

        /* Vientisas body fonas: pagrindinio turinio sekcijos be savo background (ne .wrap – kortelės/modalai lieka su fonais) */

        main > section { background: transparent; }



        /* Hero */

        .hero {

            min-height: 100vh;

            min-height: 100dvh;

            min-height: -webkit-fill-available;

            display: flex;

            flex-direction: column;

            justify-content: flex-start;

            align-items: stretch;

            /* Mažesnis top padding – turinys aukščiau (po lang bar ir safe-area) */

            padding: clamp(56px, 9vh, 100px) 0 clamp(20px, 3.5vw, 36px);

            box-sizing: border-box;

            background: transparent;

        }

        /* Desktop: visa ekrano aukštis; turinys – vertikaliai subalansuotas, bet kortelės lieka natūralaus (kompaktiško) aukščio */

        @media (min-width: 980px) {

            .hero {

                min-height: max(100vh, 100dvh, 100svh);

                justify-content: center;

                padding: clamp(48px, 5vh, 72px) 0 clamp(20px, 3vw, 32px);

            }

        }

        .hero-inner {

            width: 100%;

            display: grid;

            grid-template-columns: 1fr;

            gap: 28px;

            align-items: start;

        }

        @media (min-width: 980px) {

            .hero-inner {

                grid-template-columns: 1fr 1fr;

                gap: clamp(28px, 3.2vw, 48px);

                align-items: start;

            }

        }

        .hero-left {

            display: flex;

            flex-direction: column;

            align-items: flex-start;

        }

        /* Tik .hero-left (logo + tekstas + CTA) – pakelta aukščiau; dešinė kolona centre */

        @media (max-width: 979px) {

            .hero-left {

                transform: none;

            }

        }

        @media (min-width: 980px) {

            .hero-left {

                transform: translateY(clamp(-32px, -4vh, -72px));

            }

        }

        .hero-right { display: none; }

        @media (min-width: 980px) {

            .hero-right {

                display: grid;

                grid-template-columns: 1fr 1fr;

                gap: clamp(10px, 1.1vw, 16px);

                align-content: start;

                margin-top: 0;

                /* 2×2 kortelės – vertikaliai centre priešais kairį tekstų bloką (eilės aukštis = kairysis stulpelis) */

                align-self: center;

            }

            /* Kainų konstruktorius – viršus lygiuojamas su H1 (žr. hero-layout-senas.css + gl-plan-builder.js) */

            .hero-right.hero-plan-shell {

                display: flex;

                flex-direction: column;

                align-self: start;

            }

        }

        .hero-side-card {

            background: rgba(255,255,255,0.03);

            border: 1px solid rgba(255,255,255,0.1);

            border-radius: var(--glass-radius);

            padding: 22px;

            min-height: 128px;

            box-shadow: 0 20px 60px rgba(0,0,0,0.35);

            backdrop-filter: var(--glass-blur);

            -webkit-backdrop-filter: var(--glass-blur);

        }

        @media (min-width: 980px) {

            .hero .hero-side-card {

                min-height: 0;

                padding: clamp(14px, 1.4vw, 20px);

            }

            .hero .hero-side-card .mini-icon {

                width: clamp(32px, 2.5vw, 40px);

                height: clamp(32px, 2.5vw, 40px);

                margin-bottom: 8px;

            }

            .hero .hero-side-card h3 {

                font-size: clamp(0.88rem, calc(0.8rem + 0.25vw), 0.98rem);

            }

            .hero .hero-side-card p {

                font-size: clamp(0.8rem, calc(0.76rem + 0.2vw), 0.88rem);

            }

        }

        .hero-side-card .mini-icon {

            width: 40px; height: 40px; border-radius: 14px;

            background: var(--calm-sky-dim);

            color: var(--calm-sky);

            display: flex; align-items: center; justify-content: center;

            font-size: 1.05rem;

            margin-bottom: 10px;

        }

        .hero-side-card h3 { font-size: 0.98rem; font-weight: 700; margin-bottom: 4px; color: var(--text-heading); }

        .hero-side-card p { font-size: 0.88rem; color: var(--text-soft); line-height: 1.35; }

        /* Nemokamas pristatymas: pulsuoja blokas ir mėlynas remelis (calm-sky) */

        .hero-side-card--pulse {

            transform-origin: center center;

            animation: heroDeliveryCardPulse 2.4s ease-in-out infinite;

        }

        @keyframes heroDeliveryCardPulse {

            0%, 100% {

                transform: translateY(0) scale(1);

                border-color: rgba(56, 189, 248, 0.25);

                box-shadow: 0 18px 52px rgba(0,0,0,0.32), 0 0 18px rgba(56, 189, 248, 0.12), inset 0 0 0 1px rgba(56, 189, 248, 0.1);

            }

            50% {

                transform: translateY(-4px) scale(1.025);

                border-color: rgba(56, 189, 248, 0.55);

                box-shadow: 0 22px 64px rgba(0,0,0,0.38), 0 0 40px rgba(56, 189, 248, 0.35), inset 0 0 0 1px rgba(56, 189, 248, 0.25);

            }

        }

        @media (prefers-reduced-motion: reduce) {

            .hero-side-card--pulse {

                animation: none;

                transform: none;

            }

        }

        .hero-badge {

            display: inline-block;

            padding: 6px 16px;

            border-radius: 999px;

            background: rgba(var(--cta-rgb), 0.1);

            color: var(--cta);

            border: 1px solid rgba(var(--cta-rgb), 0.22);

            font-size: 0.8125rem;

            font-weight: 600;

            letter-spacing: 0.02em;

            margin-bottom: 1.25rem;

        }

        .hero-badge--muted {

            background: rgba(255,255,255,0.06);

            color: var(--text-muted);

            border: 1px solid rgba(255,255,255,0.08);

            font-size: 0.72rem;

            text-transform: uppercase;

            letter-spacing: 0.4px;

        }

        .hero h1 { font-size: clamp(1.85rem, 5vw + 0.45rem, 3.15rem); font-weight: 800; line-height: 1.16; margin-bottom: clamp(0.65rem, 1.8vw, 1.05rem); color: var(--text-heading); letter-spacing: -0.02em; }

        .hero h1 .hl {

            background: linear-gradient(90deg, var(--text-heading) 0%, var(--text-heading) 30%, var(--calm-sky) 50%, var(--text-heading) 70%, var(--text-heading) 100%);

            background-size: 200% 100%;

            background-position: 0% 50%;

            -webkit-background-clip: text;

            -webkit-text-fill-color: transparent;

            background-clip: text;

            animation: hero-gradient-pulse 6s ease-in-out infinite;

            filter: drop-shadow(0 2px 14px rgba(0,0,0,0.65));

        }

        .running-color {
            background: linear-gradient(90deg, var(--calm-sky) 0%, rgba(251, 191, 36, 0.95) 22%, var(--accent) 40%, var(--calm-sky) 58%, rgba(249, 115, 22, 0.9) 78%, var(--calm-sky) 100%);
            background-size: 200% 100%;
            background-position: 0% 50%;
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
            animation: running-color-animation 6s ease-in-out infinite;
            filter: drop-shadow(0 2px 14px rgba(0,0,0,0.65));
        }

        /* KAM antraštės „ribotos vietos“ CTA tag: pulsuojantis + bėgantis rėmelis */
        .cta-slot-pill {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            padding: 2px 10px;
            margin-left: 10px;
            border-radius: 999px;
            position: relative;
            color: rgba(236, 248, 255, 0.96);
            background: rgba(255,255,255,0.04);
            border: 1px solid rgba(var(--cta-rgb), 0.55);
            box-shadow: 0 10px 28px rgba(0,0,0,0.35);
            white-space: nowrap;
            vertical-align: middle;
        }

        .cta-slot-pill::before {
            content: none;
        }

        .cta-slot-pill::after {
            content: none;
        }

        @keyframes cta-slot-spin {
            0% { transform: rotate(0deg); }
            100% { transform: rotate(360deg); }
        }

        @keyframes cta-slot-pulse {
            0%, 100% { box-shadow: 0 0 0 0 rgba(var(--cta-rgb), 0.0); }
            50% { box-shadow: 0 0 0 6px rgba(var(--cta-rgb), 0.14); }
        }

        @keyframes running-color-animation {
            0% { background-position: 100% 50%; }
            100% { background-position: 0% 50%; }
        }

        @keyframes hero-gradient-pulse {

            0% { background-position: 100% 50%; }

            100% { background-position: 0% 50%; }

        }

        .hero-sub { font-size: clamp(1rem, 2vw, 1.2rem); color: var(--text-muted); max-width: 520px; margin-bottom: 0.75rem; line-height: 1.45; }

        .hero-sub--lead { font-weight: 700; margin-bottom: 0; }

        .hero-sub--pain {
            font-weight: 600;
            color: rgba(230, 240, 245, 0.95);
            margin-top: clamp(0.35rem, 1.2vw, 0.75rem);
            margin-bottom: 0.1rem;
            line-height: 1.3;
            max-width: 560px;
        }

        .hero-sub-pair[hidden],
        .hero-sub-pair.hero-sub-pair--price-hidden {
            display: none !important;
        }

        @media (max-width: 979px) {
            .hero-sub-pair .hero-sub--pain,
            .hero-sub-pair .hero-sub--offer {
                margin-top: 0;
                margin-bottom: 0;
            }

            .hero-sub-pair .hero-sub--pain {
                margin-top: 0.15rem;
            }

            .hero-sub-pair .hero-sub--offer {
                margin-bottom: 0.35rem;
            }
        }

        .hero-sub--honest {
            font-size: 0.92em;
            line-height: 1.5;
            max-width: 560px;
            opacity: 0.93;
            margin-top: 0.15rem;
            margin-bottom: 1.05rem;
        }

        .hero-sub--return { margin-bottom: 0.8rem; font-size: 0.95em; opacity: 0.9; }

        .hero-trust {

            display: flex; flex-wrap: wrap;

            gap: 8px; align-items: center;

            color: var(--text-muted);

            font-weight: 600;

            margin-bottom: 8px;

        }

        /* Kompaktiškesnės juostelės tik hero – ne liečia noriu/lt puslapius */

        .hero-trust .trust-pill {

            padding: 7px 12px;

            font-size: 0.88rem;

            border-radius: 14px;

        }

        .hero-trust .trust-pill--soft-wrap {

            white-space: normal;

            text-align: left;

            max-width: 100%;

            line-height: 1.35;

        }

        .trust-pill {

            display: inline-flex;

            align-items: center;

            justify-content: center;

            padding: 10px 14px;

            border-radius: 16px;

            border: 1px solid rgba(255,255,255,0.1);

            background: rgba(255,255,255,0.04);

            color: var(--text-muted);

            white-space: nowrap;

            box-shadow: 0 0 0 rgba(56,189,248,0);

            backdrop-filter: blur(10px);

            -webkit-backdrop-filter: blur(10px);

            text-shadow: 0 1px 6px rgba(0,0,0,0.45);

        }

        .trust-pill--pulse {

            border-color: rgba(56, 189, 248, 0.45);

            box-shadow: 0 0 0 rgba(56,189,248,0);

            animation: trustPulse 1.9s infinite ease-in-out;

        }

        @keyframes trustPulse {

            0% { transform: translateY(0); box-shadow: 0 0 0 rgba(56,189,248,0); background: rgba(0,0,0,0.25); }

            50% { transform: translateY(-1px); box-shadow: 0 0 28px rgba(56, 189, 248, 0.22); background: rgba(0,0,0,0.35); }

            100% { transform: translateY(0); box-shadow: 0 0 0 rgba(56,189,248,0); background: rgba(0,0,0,0.25); }

        }

        @media (prefers-reduced-motion: reduce) {

            .trust-pill--pulse { animation: none !important; }

            .running-color { animation: none !important; }

            .pricing-return-pulse { animation: none !important; }

            .btn-primary:hover, .btn-ghost:hover { transform: none; }

        }

        .gl-brand-strip { position: relative; z-index: 1; margin: 0; }

        .gl-brand-card {

            position: relative;

            display: grid;

            grid-template-columns: auto 1fr;

            gap: 18px 24px;

            align-items: start;

            width: 100%;

            max-width: 100%;

            margin: 0 auto;

            padding: 24px 22px;

            border-radius: var(--glass-radius);

            /* Tas pats stiklas kaip .hero-side-card */

            background: rgba(255, 255, 255, 0.03);

            border: 1px solid rgba(255, 255, 255, 0.1);

            box-shadow: 0 20px 60px rgba(0, 0, 0, 0.35);

            backdrop-filter: var(--glass-blur);

            -webkit-backdrop-filter: var(--glass-blur);

        }

        .gl-brand-icon {

            position: relative;

            z-index: 1;

            width: 40px;

            height: 40px;

            display: flex;

            align-items: center;

            justify-content: center;

            border-radius: 14px;

            background: var(--calm-sky-dim);

            color: var(--calm-sky);

        }

        .gl-brand-icon .gl-ico { width: 26px; height: 26px; }

        .gl-brand-copy { position: relative; z-index: 1; min-width: 0; }

        .gl-brand-title { margin-bottom: 10px; }

        .gl-brand-lead { color: var(--text-muted); margin: 0 0 14px; line-height: 1.5; }

        .gl-brand-hitlist {
            list-style: none;
            margin: 0 0 12px 0;
            padding: 0;
            max-width: none;
        }

        .gl-brand-hitlist li {
            position: relative;
            padding: 0.08rem 0 0.08rem 1.3em;
            margin-bottom: 0;
            color: var(--text);
            line-height: 1.32;
            font-weight: 600;
        }

        .gl-brand-hitlist li::before {
            content: "✓";
            position: absolute;
            left: 0;
            top: 0.18em;
            color: #34d399;
            font-size: 0.95em;
        }

        .gl-brand-closing {
            margin: 0 0 0 0;
            font-size: 1.02rem;
            font-weight: 700;
            color: var(--text-heading);
            line-height: 1.4;
        }

        .gl-brand-divider {
            height: 0;
            margin: 1.05rem 0;
            border: none;
            border-top: 1px solid rgba(255, 255, 255, 0.1);
        }

        .gl-brand-subh {
            font-size: 1.05rem;
            font-weight: 700;
            margin: 0 0 0.3rem 0;
            color: var(--text-heading);
        }

        .gl-brand-splain {
            margin: 0 0 0.15rem 0;
            color: var(--text-muted);
            line-height: 1.32;
            font-size: 0.92rem;
        }

        .gl-brand-row {
            margin: 0 0 0.08rem 0;
            line-height: 1.3;
            font-size: 0.9rem;
        }

        .gl-brand-row--no { color: rgba(248, 180, 180, 0.92); }

        .gl-brand-row--yes { color: rgba(200, 245, 220, 0.95); }

        .gl-brand-short {
            color: var(--text-muted);
            line-height: 1.3;
            font-size: 0.92rem;
        }

        .gl-brand-title,

        .gl-brand-lead,

        .gl-brand-hitlist li,

        .gl-brand-closing,

        .gl-brand-subh,

        .gl-brand-splain,

        .gl-brand-row,

        .gl-brand-short { text-shadow: 0 2px 10px rgba(0,0,0,0.5); }

        @media (max-width: 600px) {

            .gl-brand-card { grid-template-columns: 1fr; padding: 20px 16px; }

        }

        .hero-extra-pills {

            display: flex;

            flex-wrap: wrap;

            gap: 10px;

            margin-bottom: 18px;

        }

        .hero-fastline {

            color: var(--text-muted);

            font-weight: 700;

            margin-bottom: 18px;

        }

        .hero-contract-small {

            color: var(--text-muted);

            font-size: 0.95rem;

            font-weight: 600;

            margin-bottom: 2px;

        }

        .hero-cta { margin-top: 0; margin-bottom: 0; }

        .hero-cta--main {
            margin-top: clamp(1rem, 2.4vw, 1.5rem);
            margin-bottom: clamp(0.65rem, 2vw, 1.05rem);
        }

        .btn-cta-loud {
            font-size: clamp(0.9rem, 1.1vw, 1.05rem);
            padding: 15px 22px;
            min-height: 50px;
            text-transform: uppercase;
            letter-spacing: 0.06em;
            box-shadow: 0 10px 32px rgba(14, 165, 233, 0.3);
        }

        @media (prefers-reduced-motion: reduce) {
            .btn-cta-loud { box-shadow: 0 2px 12px rgba(0, 0, 0, 0.35); }
        }

        .hero-sub--offer {
            font-weight: 600;
            color: rgba(230, 240, 245, 0.95);
            margin-top: 0;
            margin-bottom: 0.5rem;
            line-height: 1.3;
            max-width: 520px;
        }

        .hero-hitlist {
            list-style: none;
            margin: 0 0 clamp(0.25rem, 0.5vw, 0.4rem) 0;
            padding: 0;
            max-width: 420px;
        }

        .hero-hitlist li {
            position: relative;
            padding: 0.08rem 0 0.08rem 1.35em;
            margin: 0;
            font-size: clamp(0.95rem, 1.5vw, 1.05rem);
            font-weight: 600;
            color: var(--text-muted);
            line-height: 1.3;
        }

        .hero-hitlist li::before {
            content: "✓";
            position: absolute;
            left: 0;
            top: 0.1em;
            color: #34d399;
            font-size: 0.95em;
        }

        .hero-trust--micro {
            margin-top: clamp(0.15rem, 0.6vw, 0.35rem);
            margin-bottom: 6px;
            gap: 7px;
            row-gap: 8px;
            align-items: flex-start;
        }

        .hero-trust--micro .trust-pill {
            font-size: 0.72rem;
            padding: 6px 11px;
            font-weight: 500;
            border-radius: 10px;
            opacity: 0.88;
            line-height: 1.35;
        }

        .hero-trust--micro .trust-pill--soft-wrap {
            white-space: normal;
            text-align: left;
            line-height: 1.38;
            max-width: min(100%, 20rem);
        }

        .btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px;

            padding: 14px 26px; border-radius: 14px; font-size: 1rem; font-weight: 600; font-family: inherit;

            text-decoration: none; cursor: pointer; border: none;

            transition: transform 0.3s ease, box-shadow 0.3s ease, background 0.25s ease, border-color 0.25s ease, filter 0.25s ease;

            touch-action: manipulation;

        }

        .btn-primary {

            background: var(--cta);

            color: var(--cta-text);

            font-weight: 700;

            padding: 15px 26px;

            border-radius: 12px;

            border: 1px solid rgba(255,255,255,0.12);

            transition: background 0.25s ease, transform 0.3s ease, box-shadow 0.3s ease;

            box-shadow: 0 4px 20px rgba(var(--cta-rgb), 0.28);

        }

        .btn-primary:hover {

            background: var(--cta-hover);

            transform: translateY(-2px);

            box-shadow: 0 10px 32px rgba(var(--cta-rgb), 0.38);

        }

        .btn-ghost { background: rgba(255,255,255,0.04); border: 1px solid rgba(56, 189, 248, 0.45); color: var(--calm-sky); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }

        .btn-ghost:hover { background: rgba(56, 189, 248, 0.12); border-color: var(--calm-sky); color: var(--text-heading); }

        /* Tekstinėms nuorodoms – vienodas, matomas temos stilius */

        p a:not(.btn),

        li a:not(.btn),

        .info-modal-body a:not(.btn),

        .contact-email-modal-body a:not(.btn),

        .call-modal-copy a:not(.btn),

        .faq-answer a:not(.btn) {

            color: var(--calm-sky) !important;

            text-decoration: underline;

            text-underline-offset: 2px;

            text-decoration-thickness: 1.5px;

            transition: color .18s ease, text-decoration-color .18s ease;

        }

        p a:not(.btn):visited,

        li a:not(.btn):visited,

        .info-modal-body a:not(.btn):visited,

        .contact-email-modal-body a:not(.btn):visited,

        .call-modal-copy a:not(.btn):visited,

        .faq-answer a:not(.btn):visited {

            color: var(--calm-sky) !important;

        }

        p a:not(.btn):hover,

        li a:not(.btn):hover,

        .info-modal-body a:not(.btn):hover,

        .contact-email-modal-body a:not(.btn):hover,

        .call-modal-copy a:not(.btn):hover,

        .faq-answer a:not(.btn):hover {

            color: #7dd3fc !important;

            text-decoration-color: #7dd3fc;

        }

        p a:not(.btn):focus-visible,

        li a:not(.btn):focus-visible,

        .info-modal-body a:not(.btn):focus-visible,

        .contact-email-modal-body a:not(.btn):focus-visible,

        .call-modal-copy a:not(.btn):focus-visible,

        .faq-answer a:not(.btn):focus-visible {

            outline: 2px solid rgba(56, 189, 248, 0.45);

            outline-offset: 2px;

            border-radius: 4px;

        }

        .scroll-hint {

            text-align: center;

            margin-top: 2rem;

            padding-top: 0;

            width: 100%;

        }

        .scroll-hint span { font-size: 0.8rem; color: var(--text-muted); }

        .scroll-hint .mouse { color: var(--calm-sky); font-size: 1.5rem; display: block; margin-bottom: 6px; }



        /* Scroll hint – fiksuotas ekrano apačioje centre (bet kokiam ekranui) */

        .scroll-hint-fixed {

            position: fixed;

            bottom: 24px;

            left: 50%;

            transform: translateX(-50%);

            z-index: 9998;

            display: flex;

            flex-direction: column;

            align-items: center;

            gap: 6px;

            pointer-events: none;

            transition: opacity 0.35s ease, visibility 0.35s ease;

        }

        .scroll-hint-fixed.is-hidden {

            opacity: 0;

            visibility: hidden;

        }

        .scroll-hint-fixed .mouse { color: var(--calm-sky); font-size: 1.5rem; }

        .scroll-hint-fixed .mouse svg.gl-ico { animation: mousePulse 1.6s infinite ease-in-out; }

        .scroll-hint-fixed span:last-child { font-size: 0.8rem; color: var(--text-muted); animation: scrollHintLabelPulse 1.6s infinite ease-in-out; }

        @media (max-width: 480px) { .scroll-hint-fixed { bottom: 16px; } }



        @keyframes mousePulse {

            0% { transform: translateY(0) scale(1); filter: drop-shadow(0 0 0 rgba(56,189,248,0)); opacity: 0.88; }

            50% { transform: translateY(5px) scale(1.06); filter: drop-shadow(0 0 12px rgba(56, 189, 248, 0.42)); opacity: 1; }

            100% { transform: translateY(0) scale(1); filter: drop-shadow(0 0 0 rgba(56,189,248,0)); opacity: 0.88; }

        }

        @keyframes scrollHintLabelPulse {

            0%, 100% { opacity: 0.72; }

            50% { opacity: 1; }

        }

        .scroll-hint .mouse svg.gl-ico { animation: mousePulse 1.6s infinite ease-in-out; }

        @media (prefers-reduced-motion: reduce) {

            .scroll-hint-fixed .mouse svg.gl-ico,

            .scroll-hint .mouse svg.gl-ico {

                animation: none;

                transform: none;

                filter: none;

                opacity: 1;

            }

            .scroll-hint-fixed span:last-child {

                animation: none;

                opacity: 1;

            }

        }



        /* Benefits */

        .sec-title { font-size: clamp(1.375rem, 2.5vw, 2rem); font-weight: 700; text-align: center; margin-bottom: clamp(1rem, 2.2vw, 1.5rem); color: var(--text-heading); }

        .sec-title .hl { color: var(--calm-sky); }

        .kam-title-pulse {

            animation: kamTitlePulse 2.25s ease-in-out infinite;

            transform-origin: center;

            will-change: transform, opacity, text-shadow;

        }

        /* Desktop: visa „Kam skirta“ (.wrap > h2 + .kam-grid) – tik kai viewport apačia praeina #hero pabaigą (JS: #kam.kam-section--past-hero) */

        @media (min-width: 980px) {

            #kam:not(.kam-section--past-hero) {

                padding-top: 0;

                padding-bottom: 0;

            }

            #kam:not(.kam-section--past-hero) .wrap > h2.kam-title--gate-hero,

            #kam:not(.kam-section--past-hero) .wrap > .kam-grid {

                opacity: 0;

                visibility: hidden;

                max-height: 0;

                margin-top: 0;

                margin-bottom: 0;

                padding-top: 0;

                padding-bottom: 0;

                overflow: hidden;

                pointer-events: none;

                transition: opacity 0.35s ease, max-height 0.5s ease, margin 0.45s ease, visibility 0s linear 0.35s;

            }

            #kam:not(.kam-section--past-hero) .wrap > h2.kam-title--gate-hero {

                animation: none;

            }

            #kam.kam-section--past-hero .wrap > h2.kam-title--gate-hero,

            #kam.kam-section--past-hero .wrap > .kam-grid {

                opacity: 1;

                visibility: visible;

                max-height: none;

                pointer-events: auto;

                transition: opacity 0.45s ease, max-height 0.55s ease, margin 0.45s ease, visibility 0s linear 0s;

            }

            #kam.kam-section--past-hero .wrap > h2.kam-title--gate-hero {

                margin-bottom: 40px;

                animation: kamTitlePulse 2.25s ease-in-out infinite;

            }

        }

        @keyframes kamTitlePulse {

            0%, 100% {

                transform: scale(1);

                opacity: 1;

                text-shadow: 0 0 0 rgba(56, 189, 248, 0);

            }

            50% {

                transform: scale(1.04);

                opacity: 0.97;

                text-shadow: 0 0 16px rgba(56, 189, 248, 0.22);

            }

        }

        @media (prefers-reduced-motion: reduce) {

            .kam-title-pulse,

            #kam.kam-section--past-hero .wrap > h2.kam-title--gate-hero { animation: none !important; }

            .how-title-pulse { animation: none !important; }

            .final-cta .final-title-pulse { animation: none !important; }

            .final-mini-faq .contact-line.phone-pulse { animation: none !important; }

            .track-logo-pulse { animation: none !important; }

            .savitarna-pulse { animation: none !important; }

            .lp-express-pulse { animation: none !important; }

            .smartposti-free-delivery-pulse,

            .smartposti-free-delivery-pulse__logo-wrap { animation: none !important; }

            .fast-order-smartposti-brand,

            .fast-order-smartposti-brand-logo { animation: none !important; }

        }

        .pricing-sub {

            text-align: center;

            color: var(--text-muted);

            margin-top: -18px;

            margin-bottom: 10px;

            max-width: 720px;

            margin-left: auto;

            margin-right: auto;

            font-size: 1.02rem;

        }

        .pricing-sub--lead { font-weight: 700; margin-bottom: 6px; }

        .pricing-sub--return { margin-bottom: 26px; }

        .pricing-sub-hl {

            background: linear-gradient(90deg, var(--text-heading) 0%, var(--text-heading) 35%, var(--accent) 50%, var(--text-heading) 65%, var(--text-heading) 100%);

            background-size: 200% 100%;

            background-position: 0% 50%;

            -webkit-background-clip: text;

            -webkit-text-fill-color: transparent;

            background-clip: text;

            animation: hero-gradient-pulse 6s ease-in-out infinite;

        }

        .pricing-return-pulse { animation: pricingReturnPulse 2.5s ease-in-out infinite; }

        @keyframes pricingReturnPulse {

            0%, 100% { opacity: 0.85; }

            50% { opacity: 1; }

        }

        .benefits-grid { display: grid; grid-template-columns: 1fr; gap: 16px; }

        @media (min-width: 640px) { .benefits-grid { grid-template-columns: repeat(2, 1fr); } }

        @media (min-width: 900px) { .benefits-grid { grid-template-columns: repeat(4, 1fr); } }

        .benefit-card {

            background: rgba(255,255,255,0.03);

            border: 1px solid rgba(255,255,255,0.1);

            border-radius: var(--glass-radius);

            padding: 24px;

            transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;

            backdrop-filter: var(--glass-blur);

            -webkit-backdrop-filter: var(--glass-blur);

        }

        .benefit-card:hover {

            border-color: rgba(249, 115, 22, 0.35);

            box-shadow: 0 18px 52px rgba(0,0,0,0.38), 0 0 0 1px rgba(var(--cta-rgb), 0.12);

            transform: translateY(-6px);

        }

        .benefit-card .icon { width: 48px; height: 48px; border-radius: 14px; background: rgba(var(--cta-rgb), 0.14); color: var(--cta);

            display: flex; align-items: center; justify-content: center; margin-bottom: 14px; }

        .benefit-card h3 { font-size: 1.1rem; font-weight: 700; margin-bottom: 6px; color: var(--text-heading); }

        .benefit-card p { font-size: 0.9rem; color: var(--text-muted); }



        /* Kainos: be lokalaus fono – matomas tas pats body + overlay sluoksnis kaip visame puslapyje */

        #pricing {

            position: relative;

            overflow: hidden;

            text-align: center;

            background: transparent;

            padding-top: 0;

            padding-bottom: 0;

        }

        /* Juodraščio .plans-grid elgsena – čia lieka CSS grid (3 stulpeliai desktop), greitesnis išdėstymas nei flex */

        .pricing-grid { display: grid; grid-template-columns: 1fr; gap: 20px; align-items: stretch; grid-auto-rows: 1fr; margin-top: 0; }

        @media (min-width: 768px) { .pricing-grid { grid-template-columns: repeat(3, 1fr); gap: 22px; } }

        .price-card {

            background: rgba(255, 255, 255, 0.03);

            border: 1px solid rgba(255, 255, 255, 0.08);

            border-radius: 28px;

            padding: clamp(28px, 5vw, 45px) clamp(22px, 3.5vw, 30px);

            display: flex;

            flex-direction: column;

            position: relative;

            height: 100%;

            backdrop-filter: blur(12px);

            -webkit-backdrop-filter: blur(12px);

            text-align: center;

            overflow: visible;

        }

        .price-card:not(.featured) {

            transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1), box-shadow 0.4s ease, border-color 0.4s ease, background 0.4s ease;

        }

        /* „Populiariausias“ – dešinysis ženkliukas (kaip .featured-badge juodraštyje) */

        .price-card.featured .price-popular-ribbon {

            position: absolute;

            top: 20px;

            right: 20px;

            left: auto;

            transform: none;

            z-index: 4;

            padding: 4px 12px;

            border-radius: 12px;

            font-size: 0.6875rem;

            font-weight: 800;

            letter-spacing: 0.08em;

            text-transform: uppercase;

            color: var(--cta-text);

            background: var(--cta);

            border: 1px solid rgba(0, 0, 0, 0.12);

            box-shadow: 0 6px 18px rgba(var(--cta-rgb), 0.35);

            pointer-events: none;

            white-space: nowrap;

        }

        @media (max-width: 767px) {

            .price-card.featured .price-popular-ribbon { top: 14px; right: 12px; font-size: 0.62rem; padding: 4px 10px; }

        }

        .price-card:not(.featured):hover {

            transform: translateY(-12px);

            border-color: rgba(var(--cta-rgb), 0.4);

            background: rgba(255, 255, 255, 0.05);

            box-shadow: 0 40px 80px rgba(0, 0, 0, 0.6);

        }

        /* Išskirtas planas – stiklas + silpnas CTA tonas (kaip .plan-item.featured juodraštyje) */

        .price-card.featured {

            border: 1px solid rgba(var(--cta-rgb), 0.3);

            background: rgba(var(--cta-rgb), 0.03);

            box-shadow:

                0 0 40px rgba(var(--cta-rgb), 0.05),

                0 0 0 1px rgba(var(--cta-rgb), 0.1),

                0 16px 48px rgba(0, 0, 0, 0.34);

            transform-origin: center center;

            animation: featuredCardBlockPulse 2.4s ease-in-out infinite;

        }

        @keyframes featuredCardBlockPulse {

            0%, 100% {

                transform: translateY(0) scale(1);

                box-shadow:

                    0 0 40px rgba(var(--cta-rgb), 0.05),

                    0 0 0 1px rgba(var(--cta-rgb), 0.1),

                    0 0 26px rgba(var(--cta-rgb), 0.08),

                    0 14px 44px rgba(0, 0, 0, 0.34);

            }

            50% {

                transform: translateY(-4px) scale(1.025);

                box-shadow:

                    0 0 48px rgba(var(--cta-rgb), 0.1),

                    0 0 0 1px rgba(var(--cta-rgb), 0.16),

                    0 0 48px rgba(var(--cta-rgb), 0.18),

                    0 22px 56px rgba(0, 0, 0, 0.42);

            }

        }

        @media (prefers-reduced-motion: reduce) {

            .price-card.featured {

                animation: none;

                transform: none;

            }

            .price-card:not(.featured):hover {

                transform: none;

            }

            .plan-sim-flip__inner {
                animation: none !important;
                transform: none !important;
            }

            .plan-sim-flip__face--back {
                display: none !important;
            }

        }

        .price-card .badge {

            position: absolute; top: -10px; left: 50%; transform: translateX(-50%); z-index: 3;

            padding: 6px 14px; border-radius: 999px; font-size: 0.75rem; font-weight: 700;

            background: rgba(255,255,255,0.08); color: var(--accent);

            border: 1px solid transparent;

        }

        /* Tik SIM ir Namų ženkliukai: CTA spalvos apvadas (ne visa kortelė) */

        .price-card .badge.badge--cta-ring {

            border: 2px solid rgba(var(--cta-rgb), 0.72);

            box-shadow: 0 0 0 1px rgba(var(--cta-rgb), 0.15), 0 4px 16px rgba(var(--cta-rgb), 0.1);

            color: var(--text-heading);

        }

        .price-card h3 { font-size: clamp(1.125rem, 1.2vw + 0.85rem, 1.375rem); margin-bottom: 8px; color: var(--text-heading); font-weight: 600; }

        .price-card .price { font-size: clamp(1.85rem, 4vw + 0.35rem, 3.1rem); font-weight: 800; color: var(--text-heading); margin-bottom: 4px; text-shadow: 0 2px 10px rgba(0,0,0,0.45); line-height: 1.05; letter-spacing: -0.02em; }

        .price-card.featured .price { color: var(--cta); }

        .price-card .price-sub { font-size: 0.85rem; color: var(--text-muted); margin-bottom: 12px; font-weight: 400; }

        .price-card ul { list-style: none; margin-bottom: 16px; flex: 1; padding-left: 0; }

        .price-card.featured > ul:first-of-type { flex: 0 0 auto; }

        .price-card ul li { padding: 2px 0; font-size: clamp(0.9375rem, 0.9vw, 1rem); line-height: 1.25; display: flex; align-items: center; justify-content: center; gap: 8px; }

        .price-card ul li::before { content: '✓'; flex-shrink: 0; color: var(--cta); font-weight: 700; }

        .plan-li-tarptinklinis { font-size: 0.88rem; color: var(--text-soft); }

        .plan-li-note { font-size: 0.88rem; color: var(--text-soft); }

        .price-card .btn { width: 100%; margin-top: auto; min-height: 48px; }

        /* SIM kortelė: periodinis 3D apsisukimas – 5G žinutė (nugarėlė) */
        .plan-sim-card {
            transform-style: preserve-3d;
            -webkit-transform-style: preserve-3d;
        }

        .plan-sim-flip {
            flex: 1;
            display: flex;
            flex-direction: column;
            width: 100%;
            min-height: 0;
            perspective: 1100px;
            -webkit-perspective: 1100px;
        }

        .plan-sim-flip__inner {
            flex: 1;
            position: relative;
            width: 100%;
            transform-style: preserve-3d;
            -webkit-transform-style: preserve-3d;
            animation: planSimFlipCycle 20s ease-in-out infinite;
            will-change: transform;
        }

        @keyframes planSimFlipCycle {
            0%, 68% { transform: rotateY(0deg); }
            74% { transform: rotateY(180deg); }
            86% { transform: rotateY(180deg); }
            92% { transform: rotateY(360deg); }
            100% { transform: rotateY(360deg); }
        }

        .plan-sim-flip__face--front {
            position: relative;
            display: flex;
            flex-direction: column;
            flex: 1;
            width: 100%;
            min-height: 100%;
            backface-visibility: hidden;
            -webkit-backface-visibility: hidden;
            transform: rotateY(0deg);
        }

        .plan-sim-flip__face--back {
            position: absolute;
            inset: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: clamp(18px, 4vw, 32px);
            box-sizing: border-box;
            backface-visibility: hidden;
            -webkit-backface-visibility: hidden;
            transform: rotateY(180deg);
            border-radius: 22px;
            background: rgba(255, 255, 255, 0.03);
            border: 1px solid rgba(255, 255, 255, 0.08);
            backdrop-filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
            box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
        }

        .plan-sim-flip__back-inner {
            max-width: 22em;
            margin: 0 auto;
            text-align: center;
        }

        .plan-sim-flip__msg {
            margin: 0;
            font-size: clamp(0.95rem, 1.1vw + 0.75rem, 1.12rem);
            line-height: 1.45;
            font-weight: 600;
            color: var(--text-heading);
            letter-spacing: 0.01em;
        }

        .plan-sim-flip__msg strong {
            color: var(--cta);
            font-weight: 800;
        }

        .price-card.featured .plan-device-title {
            font-size: clamp(0.95rem, 1.05vw, 1.08rem);
            font-weight: 700;
            margin: 0 0 6px;
            color: var(--text-heading);
            letter-spacing: 0.02em;
        }

        .price-card.featured .plan-device-lead {
            margin: 0;
            font-size: 0.84rem;
            line-height: 1.45;
            color: var(--text-soft);
        }

        .price-card.featured .btn-primary { box-shadow: 0 10px 28px rgba(var(--cta-rgb), 0.22); }

        @media (max-width: 400px) {

            .price-card { padding: clamp(20px, 5vw, 28px) clamp(16px, 4vw, 22px); }

        }

        .plan-pitch { font-size: 0.86rem; color: var(--text-muted); margin-bottom: 6px; text-align: center; font-weight: 600; }

        .plan-icon-row { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin-bottom: 6px; min-height: 44px; align-content: flex-start; }

        .plan-icon-row span { display: inline-flex; align-items: center; gap: 6px; padding: 4px 8px; border-radius: 999px; background: rgba(165,182,141,0.08); border: 1px solid var(--accent-border-soft); color: var(--text-muted); }

        .plan-icon-row span.plan-icon-pill--cta { background: rgba(56, 189, 248, 0.16); border-color: rgba(56, 189, 248, 0.45); color: rgba(236, 248, 255, 0.96); }

        .plan-icon-row span.plan-icon-pill--cta svg.gl-ico,

        .plan-icon-row span.plan-icon-pill--cta i { color: rgba(236, 248, 255, 0.96); }

        .plan-icon-row svg.gl-ico,

        .plan-icon-row i { color: var(--accent); }

        .plan-icon-row em { font-style: normal; font-size: 0.78rem; font-weight: 700; }

        .plan-mood { margin: 0 0 8px 0; font-size: 0.9rem; color: var(--text-muted); text-align: center; font-weight: 700; min-height: 32px; display: flex; align-items: center; justify-content: center; }

        .plan-tech { list-style: none; margin: 4px 0 8px 0; padding: 0; border-top: 1px dashed rgba(255,255,255,0.08); border-bottom: 1px dashed rgba(255,255,255,0.08); }

        .plan-tech li { padding: 3px 0 !important; font-size: 0.82rem !important; line-height: 1.25; color: var(--text-muted); display: flex; align-items: center; justify-content: center; gap: 6px; }

        .plan-tech li::before { content: '•' !important; flex-shrink: 0; color: rgba(165,182,141,0.95) !important; font-weight: 800 !important; }

        .plan-tech .plan-tech-note {

            font-size: 0.78rem !important;

            color: rgba(255,255,255,0.58) !important;

            border-top: 1px dashed rgba(255,255,255,0.08);

            margin-top: 2px;

            padding-top: 4px !important;

        }

        .plan-tech-note .info-tip {

            display: inline-flex;

            align-items: center;

            justify-content: center;

            width: 16px;

            height: 16px;

            border-radius: 999px;

            margin-left: 6px;

            font-size: 10px;

            font-weight: 800;

            color: var(--cta-text);

            background: var(--calm-sky);

            cursor: help;

            vertical-align: middle;

        }

        .plan-fit, .plan-box { background: rgba(255,255,255,0.03); border: 1px solid var(--accent-border-soft); border-radius: 12px; padding: 6px 10px; margin: 0 0 8px 0; }

        .plan-fit { min-height: 104px; }

        .plan-fit-title { font-size: 0.78rem; font-weight: 800; color: var(--accent); margin-bottom: 4px; text-transform: uppercase; letter-spacing: 0.02em; }

        .plan-fit ul, .plan-box ul { list-style: none; margin: 0; padding: 0; }

        .plan-fit ul li { padding: 2px 0 !important; font-size: 0.82rem !important; line-height: 1.25; color: var(--text-muted); display: flex; align-items: center; justify-content: center; gap: 6px; }

        .plan-fit ul li::before { content: '✓' !important; flex-shrink: 0; color: var(--accent) !important; font-weight: 800 !important; }

        .plan-box ul li { padding: 2px 0 !important; font-size: 0.82rem !important; line-height: 1.25; color: var(--text-muted); display: flex; align-items: center; justify-content: center; gap: 7px; }

        .plan-box ul li::before { content: none !important; }

        .plan-box ul li i { color: var(--accent); width: 14px; text-align: center; font-size: 0.78rem; }

        .plan-tech-fold { margin: 4px 0 8px 0; background: rgba(255,255,255,0.02); border: 1px dashed var(--accent-border-soft); border-radius: 10px; padding: 6px 8px; }

        .plan-tech-fold summary { list-style: none; cursor: pointer; color: var(--text-muted); font-size: 0.82rem; font-weight: 700; text-align: center; }

        .plan-tech-fold summary::-webkit-details-marker { display: none; }

        .plan-tech-fold summary::after { content: ' ▾'; color: var(--accent); }

        .plan-tech-fold[open] summary::after { content: ' ▴'; }

        .plan-tech-fold .plan-tech { margin-bottom: 0; }

        .price-card.featured .plan-portable-insight {
            margin: 2px 0 8px;
            padding: 8px 8px 7px;
            border-radius: 12px;
            background: rgba(255, 255, 255, 0.03);
            border: 1px solid rgba(255, 255, 255, 0.08);
            text-align: center;
        }

        .price-card.featured .plan-portable-insight__lead {
            margin: 0 0 6px;
            font-size: 0.8rem;
            line-height: 1.35;
            color: var(--text-soft);
        }

        .price-card.featured .plan-portable-insight__explain {
            margin: 0 0 6px;
            font-size: 0.78rem;
            line-height: 1.4;
            color: var(--text-muted);
        }

        .price-card.featured .plan-net-viz {
            display: flex;
            flex-direction: row;
            justify-content: space-between;
            align-items: flex-end;
            gap: 4px;
            margin: 4px 0 8px;
            padding: 6px 4px 2px;
            min-height: 58px;
        }

        .price-card.featured .plan-net-viz__col {
            flex: 1;
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 4px;
            min-width: 0;
        }

        .price-card.featured .plan-net-viz__lab {
            font-size: 0.58rem;
            font-weight: 800;
            letter-spacing: 0.04em;
            color: var(--text-muted);
            line-height: 1.1;
        }

        .price-card.featured .plan-net-viz__bars {
            display: flex;
            flex-direction: row;
            align-items: flex-end;
            justify-content: center;
            gap: 3px;
            height: 44px;
        }

        .price-card.featured .plan-net-viz__bar {
            display: block;
            width: 5px;
            min-height: 4px;
            border-radius: 2px;
            background: rgba(148, 163, 184, 0.38);
            align-self: flex-end;
        }

        .price-card.featured .plan-net-viz__col--win .plan-net-viz__bar {
            background: linear-gradient(180deg, #fb923c, var(--cta));
            box-shadow: 0 0 5px rgba(249, 115, 22, 0.45);
        }

        .price-card.featured .plan-net-viz__col--a .plan-net-viz__bar:nth-child(1) { height: 22%; }
        .price-card.featured .plan-net-viz__col--a .plan-net-viz__bar:nth-child(2) { height: 38%; }
        .price-card.featured .plan-net-viz__col--a .plan-net-viz__bar:nth-child(3) { height: 28%; }
        .price-card.featured .plan-net-viz__col--a .plan-net-viz__bar:nth-child(4) { height: 45%; }
        .price-card.featured .plan-net-viz__col--a .plan-net-viz__bar:nth-child(5) { height: 33%; }

        .price-card.featured .plan-net-viz__col--b .plan-net-viz__bar:nth-child(1) { height: 52%; }
        .price-card.featured .plan-net-viz__col--b .plan-net-viz__bar:nth-child(2) { height: 78%; }
        .price-card.featured .plan-net-viz__col--b .plan-net-viz__bar:nth-child(3) { height: 64%; }
        .price-card.featured .plan-net-viz__col--b .plan-net-viz__bar:nth-child(4) { height: 92%; }
        .price-card.featured .plan-net-viz__col--b .plan-net-viz__bar:nth-child(5) { height: 70%; }

        .price-card.featured .plan-net-viz__col--c .plan-net-viz__bar:nth-child(1) { height: 18%; }
        .price-card.featured .plan-net-viz__col--c .plan-net-viz__bar:nth-child(2) { height: 30%; }
        .price-card.featured .plan-net-viz__col--c .plan-net-viz__bar:nth-child(3) { height: 24%; }
        .price-card.featured .plan-net-viz__col--c .plan-net-viz__bar:nth-child(4) { height: 34%; }
        .price-card.featured .plan-net-viz__col--c .plan-net-viz__bar:nth-child(5) { height: 26%; }

        .price-card.featured .plan-net-viz__pick {
            font-size: 0.58rem;
            font-weight: 800;
            text-transform: uppercase;
            letter-spacing: 0.06em;
            color: var(--cta);
            line-height: 1;
            margin-top: 1px;
        }

        @keyframes plan-net-pulse {
            0%, 100% { opacity: 1; filter: brightness(1); }
            50% { opacity: 0.88; filter: brightness(1.08); }
        }

        .price-card.featured .plan-net-viz__col--win .plan-net-viz__bar {
            animation: plan-net-pulse 2.4s ease-in-out infinite;
        }

        @media (prefers-reduced-motion: reduce) {
            .price-card.featured .plan-net-viz__col--win .plan-net-viz__bar {
                animation: none;
            }
        }

        .price-card.featured .plan-mifi-block {
            margin: 0;
            padding-top: 2px;
            border-top: 1px solid rgba(255, 255, 255, 0.06);
        }

        .price-card.featured .plan-mifi-block__title {
            margin-bottom: 3px;
        }

        .price-card.featured .plan-mifi-list {
            list-style: none;
            margin: 0;
            padding: 0;
        }

        .price-card.featured .plan-mifi-list li {
            display: flex;
            justify-content: center;
            padding: 2px 0;
            font-size: 0.78rem;
            line-height: 1.32;
            color: var(--text-muted);
        }

        .price-card.featured .plan-mifi-list__inner {
            position: relative;
            display: inline-block;
            max-width: 100%;
            padding-left: 0;
            text-align: left;
            box-sizing: border-box;
            vertical-align: top;
        }

        /* Tik ilgas 2-as punktas: siauresnis stulpelis, kad tekstas „neužimtų“ visos kortelės ir liktų vizualiai centre */
        .price-card.featured .plan-mifi-list li:nth-child(2) .plan-mifi-list__inner {
            width: -moz-fit-content;
            width: fit-content;
            max-width: min(100%, 26em);
        }



        .phone-note {

            color: rgba(248,113,113,0.95);

            font-size: 0.92rem;

            font-weight: 800;

            margin-top: 10px;

            margin-bottom: 6px;

        }

        .plan-contract {

            color: var(--text-muted);

            font-size: 0.82rem;

            line-height: 1.35;

            margin-top: 8px;

            margin-bottom: 6px;

            text-align: center;

        }

        .plans-bottom {

            text-align: center;

            color: var(--text-muted);

            margin-top: 20px;

            font-size: 1rem;

            max-width: 900px;

            margin-left: auto;

            margin-right: auto;

        }

        .plans-bottom b { color: var(--text-heading); }



        /* Contract microcopy (below price) */

        .contract-micro { margin-top: 10px; margin-bottom: 16px; }

        .contract-line { display: flex; gap: 10px; align-items: center; font-size: 0.92rem; color: var(--text-muted); margin: 6px 0; }

        .contract-line .mark { width: 22px; height: 22px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-weight: 900; font-size: 0.95rem; flex-shrink: 0; }

        .contract-line .x { background: rgba(248,113,113,0.15); color: #fb7185; }

        .contract-line .ok { background: rgba(52,211,153,0.15); color: #34d399; }



        /* 4G+ / 5G speed block */

        .speed-upgrade {

            margin-top: 10px;

            margin-bottom: 8px;

            background: rgba(255,255,255,0.02);

            border: 1px solid var(--accent-border-soft);

            border-radius: 18px;

            padding: 12px 14px;

            text-align: center;

        }

        .speed-row {

            display: flex;

            align-items: center;

            justify-content: center;

            padding: 4px 0;

        }

        .speed-row + .speed-row { border-top: 1px dashed rgba(255,255,255,0.08); }

        .speed-desc { color: var(--text-muted); font-weight: 700; font-size: 0.95rem; }

        .speed-micro {

            margin-top: 10px;

            color: var(--text-muted);

            font-size: 0.94rem;

            font-weight: 700;

            text-align: center;

        }



        /* Senior order card (after pricing grid) */

        .iptv-card {

            margin-top: 32px;

            max-width: 420px;

            margin-left: auto;

            margin-right: auto;

            background: rgba(255,255,255,0.03);

            border: 1px solid rgba(255,255,255,0.1);

            border-radius: var(--glass-radius);

            padding: 28px;

            display: flex;

            flex-direction: column;

            align-items: center;

            text-align: center;

            backdrop-filter: var(--glass-blur);

            -webkit-backdrop-filter: var(--glass-blur);

        }

        .iptv-card h3 { font-size: 1.25rem; margin-bottom: 4px; color: var(--text-heading); }

        .iptv-card .iptv-price { margin-bottom: 8px; }

        .iptv-card .iptv-price .price { font-size: 1.75rem; font-weight: 700; color: var(--text-heading); text-shadow: 0 2px 10px rgba(0,0,0,0.45); }

        .iptv-card .iptv-price span:last-child { font-size: 0.9rem; color: var(--text-muted); }

        .iptv-card ul { list-style: none; margin: 0 0 12px 0; padding: 0; text-align: left; width: 100%; }

        .iptv-card ul li { padding: 3px 0 3px 22px; position: relative; font-size: 0.95rem; color: var(--text-muted); }

        .iptv-card ul li::before { content: '✓'; position: absolute; left: 0; color: var(--accent); font-weight: 700; }

        .iptv-card .btn { width: 100%; max-width: 240px; }

        .senior-order-copy {

            text-align: center;

            width: 100%;

            max-width: 520px;

            margin-left: auto;

            margin-right: auto;

            color: var(--text-muted);

            line-height: 1.5;

            font-size: 0.95rem;

            margin: 10px 0 0;

        }

        .senior-order-copy + .senior-order-copy { margin-top: 10px; }

        .senior-order-field {

            width: 100%;

            margin-top: 44px;

            text-align: center;

        }

        .senior-order-field label {

            display: block;

            font-size: 0.9rem;

            color: var(--text-heading);

            margin-bottom: 6px;

            font-weight: 700;

        }

        .senior-order-field input {

            width: 100%;

            border-radius: 12px;

            border: 1px solid rgba(255,255,255,0.2);

            background: rgba(255,255,255,0.04);

            color: var(--text-heading);

            padding: 12px 14px;

            outline: none;

            font-size: 1rem;

        }

        .senior-order-field input:focus {

            border-color: var(--calm-sky);

            box-shadow: 0 0 0 2px rgba(56,189,248,0.2);

        }

        .senior-order-hint {

            margin-top: 6px;

            color: var(--text-muted);

            font-size: 0.82rem;

            text-align: center;

        }

        .senior-order-status {

            width: 100%;

            margin-top: 10px;

            font-size: 0.88rem;

            min-height: 1.25em;

            color: var(--text-muted);

            text-align: center;

        }

        .senior-order-status.is-error { color: #ef9a9a; }

        .senior-order-status.is-ok { color: #9ad0a8; }

        .gl-smartposti-banner {
            margin-top: 14px;
            margin-bottom: 4px;
            border-radius: 14px;
            border: 1px solid rgba(255, 255, 255, 0.1);
            background: linear-gradient(145deg, rgba(249, 115, 22, 0.05) 0%, rgba(56, 189, 248, 0.06) 45%, rgba(8, 12, 20, 0.1) 100%);
            backdrop-filter: blur(18px) saturate(1.15);
            -webkit-backdrop-filter: blur(18px) saturate(1.15);
            padding: 14px 18px;
            display: flex;
            align-items: center;
            gap: 14px;
            text-align: left;
            box-shadow:
                0 0 0 1px rgba(255, 255, 255, 0.04),
                0 0 28px -8px rgba(249, 115, 22, 0.35),
                0 0 40px -12px rgba(56, 189, 248, 0.22),
                inset 0 1px 0 rgba(255, 255, 255, 0.07);
            animation: glSmartpostiBorderPulse 4s ease-in-out infinite;
            transition: transform 0.3s ease;
            cursor: default;
            position: relative;
            overflow: hidden;
        }

        .gl-smartposti-banner::before {
            content: '';
            position: absolute;
            top: 0;
            left: -100%;
            width: 100%;
            height: 100%;
            background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.06), transparent);
            animation: glSmartpostiSweep 3.5s ease-in-out infinite;
            pointer-events: none;
        }

        .gl-smartposti-banner:hover {
            transform: scale(1.02);
        }

        .gl-smartposti-banner__logo-wrap {
            width: clamp(90px, 12vw, 120px);
            min-height: 40px;
            border-radius: 12px;
            background: rgba(0, 0, 0, 0.3);
            border: 1px solid rgba(255, 255, 255, 0.1);
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 6px 10px;
            flex-shrink: 0;
            position: relative;
            z-index: 1;
        }

        .gl-smartposti-banner__logo {
            display: block;
            max-width: 100%;
            width: auto;
            max-height: 34px;
            height: auto;
            object-fit: contain;
            filter: brightness(0) invert(1);
            position: relative;
            z-index: 1;
        }

        .gl-smartposti-banner__text {
            display: flex;
            flex-direction: column;
            align-items: center;
            text-align: center;
            gap: 3px;
            position: relative;
            z-index: 1;
            flex: 1;
        }

        .gl-smartposti-banner__title {
            color: #f8fafc;
            font-size: clamp(0.95rem, 1vw + 0.5rem, 1.1rem);
            line-height: 1.25;
            letter-spacing: 0.02em;
            text-align: center;
            background: linear-gradient(90deg, #f8fafc, #f97316, #f8fafc);
            background-size: 200% auto;
            -webkit-background-clip: text;
            background-clip: text;
            -webkit-text-fill-color: transparent;
            animation: glSmartpostiTextSweep 3s linear infinite;
        }

        .gl-smartposti-banner__desc {
            color: rgba(241, 245, 249, 0.9);
            font-size: 0.85rem;
            line-height: 1.35;
            text-align: center;
        }

        @keyframes glSmartpostiBorderPulse {
            0% { border-color: rgba(255, 255, 255, 0.1); box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.04), 0 0 28px -8px rgba(249, 115, 22, 0.35), 0 0 40px -12px rgba(56, 189, 248, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.07); }
            50% { border-color: rgba(249, 115, 22, 0.4); box-shadow: 0 0 0 1px rgba(249, 115, 22, 0.15), 0 0 32px -6px rgba(249, 115, 22, 0.35), 0 0 44px -10px rgba(56, 189, 248, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.12); }
            100% { border-color: rgba(255, 255, 255, 0.1); box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.04), 0 0 28px -8px rgba(249, 115, 22, 0.35), 0 0 40px -12px rgba(56, 189, 248, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.07); }
        }

        @keyframes glSmartpostiSweep {
            0% { left: -100%; }
            50% { left: 100%; }
            100% { left: 100%; }
        }

        @keyframes glSmartpostiTextSweep {
            0% { background-position: 0% center; }
            50% { background-position: 100% center; }
            100% { background-position: 0% center; }
        }

        @media (max-width: 700px) {
            .gl-smartposti-banner {
                flex-direction: column;
                text-align: center;
                padding: 14px;
                gap: 8px;
            }
            .gl-smartposti-banner__logo-wrap {
                width: clamp(80px, 20vw, 100px);
            }
            .gl-smartposti-banner__text {
                flex: none;
                width: 100%;
                align-items: center;
            }
        }

        @media (prefers-reduced-motion: reduce) {
            .gl-smartposti-banner,
            .gl-smartposti-banner::before,
            .gl-smartposti-banner__title {
                animation: none !important;
            }
            .gl-smartposti-banner {
                border-color: rgba(255, 255, 255, 0.1);
            }
            .gl-smartposti-banner__title {
                -webkit-text-fill-color: #f8fafc;
                background: none;
                color: #f8fafc;
            }
        }

        .fast-order-shipping-method-row {
            margin-bottom: 14px;
            padding: 12px 14px;
            border-radius: 14px;
            border: 1px solid rgba(148, 163, 184, 0.35);
            background: rgba(15, 23, 42, 0.45);
        }

        .fast-order-shipping-option {
            display: flex;
            align-items: flex-start;
            gap: 8px;
            margin: 8px 0 0 0;
            font-size: 0.92rem;
            line-height: 1.35;
            cursor: pointer;
        }

        .fast-order-shipping-option input {
            margin-top: 3px;
        }

        .fast-order-shipping-fee {
            opacity: 0.85;
            font-size: 0.88rem;
        }

        .fast-order-shipping-hint {
            margin: 10px 0 0 0;
            font-size: 0.82rem;
            opacity: 0.88;
        }

        /* Po Smartposti juostos: eSIM horizontalus blokas + senjorų 3 skiltys */

        .pricing-addons--stack {

            display: flex;

            flex-direction: column;

            gap: var(--bento-gap, clamp(16px, 2vw, 24px));

            margin-top: clamp(12px, 2vw, 20px);

            width: 100%;

            align-items: stretch;

        }

        .pricing-addon-sr-only {

            position: absolute;

            width: 1px;

            height: 1px;

            padding: 0;

            margin: -1px;

            overflow: hidden;

            clip: rect(0, 0, 0, 0);

            white-space: nowrap;

            border: 0;

        }

        /* eSIM blokas — tas pats neutralus „stiklas“ kaip senjorų forma (be gradientų / violetinės) */

        .addon-banner {

            border-radius: var(--glass-radius);

            border: 1px solid rgba(255, 255, 255, 0.12);

            background: rgba(255, 255, 255, 0.03);

            backdrop-filter: var(--glass-blur);

            -webkit-backdrop-filter: var(--glass-blur);

            padding: 18px 20px;

            display: flex;

            align-items: stretch;

            gap: 16px;

            box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);

        }

        .addon-banner__mark {

            flex-shrink: 0;

            width: clamp(72px, 11vw, 100px);

            min-height: 56px;

            border-radius: 14px;

            background: rgba(0, 0, 0, 0.22);

            border: 1px solid rgba(255, 255, 255, 0.18);

            display: flex;

            align-items: center;

            justify-content: center;

            color: rgba(248, 250, 252, 0.94);

        }

        .addon-banner__mark .gl-ico {

            width: 2.1rem;

            height: 2.1rem;

        }

        .addon-banner.esim-addon-banner {

            align-items: center;

        }

        .esim-addon-banner__grid {

            display: grid;

            grid-template-columns: 1fr;

            gap: 16px;

            flex: 1;

            min-width: 0;

            align-items: center;

        }

        @media (min-width: 900px) {

            .esim-addon-banner__grid {

                grid-template-columns: minmax(200px, 1.15fr) minmax(260px, 0.95fr);

                gap: 22px;

            }

        }

        .esim-addon-banner__copy {

            text-align: center;

        }

        @media (min-width: 900px) {

            .esim-addon-banner__copy {

                text-align: left;

            }

        }

        .esim-addon-banner__title {

            margin: 0 0 8px 0;

            font-size: clamp(1.05rem, 0.9vw + 0.85rem, 1.22rem);

            font-weight: 700;

            color: var(--text-heading);

            line-height: 1.25;

        }

        .esim-addon-banner__lead {

            margin: 0 0 8px 0;

            font-size: 0.92rem;

            line-height: 1.42;

            color: var(--text-muted);

        }

        .esim-addon-banner__lead strong {

            color: var(--text-heading);

            font-weight: 700;

        }

        .esim-addon-banner__price {

            margin: 0;

            font-size: 0.9rem;

        }

        .esim-addon-banner__actions {

            display: grid;

            grid-template-columns: repeat(2, minmax(0, 1fr));

            gap: 10px;

            justify-content: center;

            align-items: stretch;

        }

        @media (min-width: 900px) {

            .esim-addon-banner__actions {

                grid-template-columns: repeat(4, minmax(0, 1fr));

                justify-content: end;

            }

        }

        @media (min-width: 1180px) {

            .esim-bubble-btn {

                min-height: 72px;

                font-size: 0.78rem;

            }

        }

        .esim-bubble-btn {

            width: 100%;

            max-width: none;

            min-height: 66px;

            padding: 9px 12px;

            border-radius: 999px;

            border: 1px solid rgba(255, 255, 255, 0.22);

            background: rgba(0, 0, 0, 0.22);

            color: var(--text-heading);

            cursor: pointer;

            display: flex;

            flex-direction: column;

            align-items: center;

            justify-content: center;

            gap: 6px;

            text-align: center;

            font-weight: 600;

            font-size: 0.76rem;

            line-height: 1.22;

            transition: border-color 0.15s ease, background 0.15s ease;

            box-sizing: border-box;

            box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);

        }

        .esim-bubble-btn:hover {

            border-color: rgba(255, 255, 255, 0.34);

            background: rgba(0, 0, 0, 0.32);

        }

        .esim-bubble-btn__ico .gl-ico {

            width: 1.36rem;

            height: 1.36rem;

            opacity: 0.88;

            color: rgba(226, 232, 240, 0.92);

        }

        .esim-bubble-btn--primary,

        .esim-bubble-btn--accent {

            border-color: rgba(255, 255, 255, 0.22);

            background: rgba(0, 0, 0, 0.22);

            color: var(--text-heading);

            box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);

        }

        .esim-bubble-btn--primary:hover,

        .esim-bubble-btn--accent:hover {

            border-color: rgba(255, 255, 255, 0.34);

            background: rgba(0, 0, 0, 0.32);

        }

        /* Senjorų blokas — skyriai viduje atskirti vertikaliais pusiau ovaliais kraštinėmis (ne bangos viršuje) */

        .senior-addon-banner {

            border-radius: var(--glass-radius);

            border: 1px solid rgba(255, 255, 255, 0.12);

            background: rgba(255, 255, 255, 0.03);

            backdrop-filter: var(--glass-blur);

            -webkit-backdrop-filter: var(--glass-blur);

            padding: 26px 20px;

            margin-top: 10px;

            position: relative;

            overflow: hidden;

            box-shadow:

                0 20px 44px rgba(0, 0, 0, 0.35),

                inset 0 1px 0 rgba(255, 255, 255, 0.06);

        }

        .senior-addon-banner__title {

            margin: 0 0 16px 0;

            text-align: center;

            font-size: 1.22rem;

            font-weight: 700;

            color: var(--text-heading);

        }

        .senior-addon-banner__grid {

            display: grid;

            grid-template-columns: 1fr;

            gap: 18px;

            align-items: start;

        }

        @media (min-width: 900px) {

            .senior-addon-banner__grid {

                grid-template-columns: minmax(200px, 1fr) minmax(220px, 1.1fr) minmax(200px, 1fr);

                gap: 26px;

                align-items: baseline;

            }

            .senior-addon-banner__col {

                position: relative;

            }

            /* Vertikalus „pusmenulis“: išgaubta kraštinė tarp stulpelių (pusiau stadiono forma į kaimyną) */

            .senior-addon-banner__col--phone::after,

            .senior-addon-banner__col--rules::after {

                content: '';

                position: absolute;

                top: 50%;

                right: -13px;

                transform: translateY(-50%);

                width: 18px;

                height: min(78%, 232px);

                min-height: 148px;

                border-right: 1px solid rgba(255, 255, 255, 0.14);

                border-radius: 0 999px 999px 0;

                pointer-events: none;

                z-index: 1;

            }

            .senior-addon-banner__col--phone {

                padding-right: 12px;

            }

            .senior-addon-banner__col--rules {

                padding-left: 12px;

                padding-right: 12px;

            }

            .senior-addon-banner__col--regular {

                padding-left: 12px;

            }

        }

        .senior-addon-banner__col {

            min-width: 0;

        }

        .senior-addon-banner__text,

        .senior-regular-cta__text {

            margin: 0;

            font-size: 0.94rem;

            line-height: 1.45;

            color: var(--text-muted);

            text-align: center;

        }

        @media (min-width: 900px) {

            .senior-addon-banner__col--rules .senior-addon-banner__text,

            .senior-addon-banner__col--regular .senior-regular-cta__text {

                text-align: left;

            }

        }

        .senior-addon-banner__text a,

        .senior-regular-cta__text a {

            color: var(--accent);

            font-weight: 600;

            text-decoration: underline;

            text-underline-offset: 2px;

        }

        .senior-phone-label {

            display: block;

            font-size: 0.88rem;

            font-weight: 700;

            color: var(--text-heading);

            margin-bottom: 8px;

            text-align: center;

        }

        @media (min-width: 900px) {

            .senior-phone-label {

                text-align: left;

            }

        }

        .senior-phone-combo {

            display: flex;

            align-items: stretch;

            border-radius: 14px;

            border: 1px solid rgba(255, 255, 255, 0.22);

            background: rgba(0, 0, 0, 0.22);

            overflow: hidden;

            max-width: 400px;

            margin-left: auto;

            margin-right: auto;

        }

        @media (min-width: 900px) {

            .senior-phone-combo {

                margin-left: 0;

                margin-right: 0;

                max-width: none;

            }

        }

        .senior-phone-combo input {

            flex: 1;

            min-width: 0;

            border: none;

            background: transparent;

            color: var(--text-heading);

            padding: 14px 12px 14px 16px;

            font-size: 1rem;

            outline: none;

        }

        .senior-phone-combo input::placeholder {

            color: rgba(148, 163, 184, 0.85);

        }

        .senior-phone-combo__btn {

            position: relative;

            flex-shrink: 0;

            width: 54px;

            border: none;

            border-left: 1px solid rgba(255, 255, 255, 0.14);

            background: rgba(249, 115, 22, 0.35);

            color: #fff;

            cursor: pointer;

            display: flex;

            align-items: center;

            justify-content: center;

            transition: background 0.15s ease;

        }

        .senior-phone-combo__btn:hover:not(:disabled) {

            background: rgba(249, 115, 22, 0.52);

        }

        .senior-phone-combo__btn:disabled {

            opacity: 0.55;

            cursor: not-allowed;

        }

        .senior-phone-combo__btn .gl-ico {

            width: 1.35rem;

            height: 1.35rem;

        }

        .senior-addon-banner__col--phone .senior-order-hint {

            margin-top: 8px;

            text-align: center;

        }

        @media (min-width: 900px) {

            .senior-addon-banner__col--phone .senior-order-hint {

                text-align: left;

            }

        }

        .senior-addon-banner__col--phone .senior-order-status {

            margin-top: 10px;

            text-align: center;

        }

        @media (min-width: 900px) {

            .senior-addon-banner__col--phone .senior-order-status {

                text-align: left;

            }

        }

        .senior-regular-cta {

            display: block;

            margin: 0;

        }

        @media (max-width: 899px) {

            .senior-regular-cta {

                text-align: center;

            }

            .addon-banner {

                flex-direction: column;

                align-items: center;

                text-align: center;

            }

            .addon-banner__mark {

                width: 100%;

                max-width: 120px;

                min-height: 52px;

            }

        }

        .esim-card { background: rgba(255,255,255,0.03); border: 1px solid rgba(255,255,255,0.1); border-radius: var(--glass-radius); padding: 24px; display: flex; flex-direction: column; align-items: center; text-align: center; backdrop-filter: var(--glass-blur); -webkit-backdrop-filter: var(--glass-blur); }

        .esim-card .esim-heading-block {

            display: flex;

            flex-direction: column;

            align-items: center;

            text-align: center;

            margin-bottom: 4px;

        }

        .esim-card .esim-heading-icon {

            color: #fff;

            font-size: 2.5rem;

            line-height: 1;

            margin-bottom: 12px;

            filter: drop-shadow(0 2px 10px rgba(0, 0, 0, 0.35));

        }

        .esim-card .esim-heading-icon i {

            display: block;

        }

        .esim-card .esim-heading-title {

            font-weight: 700;

            font-size: 1.2rem;

            color: var(--text-heading);

            margin: 0 0 6px;

            line-height: 1.3;

        }

        .esim-card .esim-heading-price {

            font-size: 0.95rem;

            font-weight: 400;

            color: var(--text-muted);

            margin: 0;

            line-height: 1.35;

        }

        .esim-card ul { list-style: none; margin: 10px 0 8px 0; padding: 0; text-align: center; width: 100%; }

        .esim-card ul li { padding: 2px 0; position: relative; font-size: 0.9rem; line-height: 1.25; color: var(--text-muted); }

        .esim-card ul li::before { content: none; }

        .esim-card .btn { width: 100%; max-width: 240px; }

        .esim-stripe-row {

            display: flex;

            gap: 10px;

            width: 100%;

            justify-content: center;

            align-items: stretch;

            margin-top: 14px;

            padding-top: 0;

            flex-wrap: nowrap;

        }

        .esim-stripe-row .btn {

            flex: 1;

            max-width: none;

            display: inline-flex;

            align-items: center;

            justify-content: center;

            margin: 0;

            height: 52px;

            min-height: 52px;

            padding: 0 12px;

            line-height: 1.2;

            font-size: 0.95rem;

            white-space: nowrap;

            box-sizing: border-box;

            border-radius: 14px;

        }

        .esim-stripe-row #esimAppsTrigger {

            max-width: none;

            font-size: 0.95rem;

        }

        .iptv-card::after,
        .esim-card::after {
            content: '';
            position: absolute;
            bottom: 10px;
            width: 44px;
            height: 44px;
            opacity: 0.22;
            pointer-events: none;
            background-repeat: no-repeat;
            background-size: contain;
        }

        .iptv-card::after {
            right: 14px;
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23A5B68D' d='M6.6 10.8c1.5 3 3.6 5.1 6.6 6.6l2.2-2.2c.3-.3.7-.4 1.1-.3 1.2.4 2.5.6 3.8.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1C11.4 21 3 12.6 3 2c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.6.6 3.8.1.4 0 .8-.3 1.1L6.6 10.8z'/%3E%3C/svg%3E");
        }

        .esim-card::after {
            left: 14px;
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23A5B68D' d='M7 3h10a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2zm0 2v14h10V5H7zm2 2h6v2H9V7zm0 4h6v2H9v-2zm0 4h4v2H9v-2z'/%3E%3C/svg%3E");
        }

        @media (max-width: 640px) {

            .esim-stripe-row {

                gap: 8px;

                flex-wrap: wrap;

            }

            .esim-stripe-row #esimAppsTrigger {

                flex: 1 1 100%;

            }

            .esim-stripe-row .btn {

                flex: 1 1 calc(50% - 4px);

                min-width: 0;

                font-size: 0.88rem;

                padding: 0 8px;

            }

        }



        /* eSIM apps modal (from root) */

        .esim-apps-modal-overlay { display: none; position: fixed; inset: 0; background: var(--modal-overlay-bg); z-index: 99999; align-items: center; justify-content: center; padding: 20px; backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); }

        .esim-apps-modal-overlay.active { display: flex; }

        .esim-apps-modal-box { position: relative; max-width: 560px; width: 100%; max-height: 88vh; overflow: hidden; display: flex; flex-direction: column; background: var(--modal-box-bg); border: 1px solid var(--modal-box-border); border-radius: var(--glass-radius); box-shadow: var(--modal-box-shadow); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); }

        .esim-apps-modal-box h4 { color: var(--calm-sky); margin: 0; padding: 22px 50px 14px 22px; font-size: 1.2rem; font-weight: 700; flex-shrink: 0; }

        .esim-apps-modal-content { flex: 1; overflow-y: auto; padding: 0 22px 20px; color: var(--text-muted); font-size: 0.95rem; }

        .esim-apps-modal-content p { margin-bottom: 12px; }

        .esim-apps-search-wrap { margin-bottom: 16px; position: relative; }

        .esim-apps-search { width: 100%; padding: 12px 16px 12px 44px; font-size: 1rem; border-radius: 12px; border: 1px solid rgba(255,255,255,0.2); background: rgba(0,0,0,0.4); color: var(--text-heading); }

        .esim-apps-search-wrap::before { content: '\f002'; font-family: 'Font Awesome 5 Free'; font-weight: 900; position: absolute; left: 16px; top: 50%; transform: translateY(-50%); color: var(--accent); font-size: 1rem; pointer-events: none; }

        .esim-apps-category { margin: 16px 0 8px; font-weight: 700; color: var(--accent); font-size: 1.05rem; }

        .esim-apps-category.esim-apps-hidden { display: none !important; }

        .esim-apps-category.esim-apps-hidden + .esim-apps-list { display: none !important; }

        .esim-apps-list { list-style: none; padding-left: 0; margin: 0 0 12px; }

        .esim-apps-list li { position: relative; padding-left: 24px; margin-bottom: 6px; color: var(--text-muted); font-size: 0.95rem; }

        .esim-apps-list li.esim-apps-hidden { display: none !important; }

        .esim-apps-list li::before { content: '✓'; position: absolute; left: 0; color: #34d399; font-weight: 700; }

        .esim-apps-modal-close { position: absolute; top: 14px; right: 14px; width: 38px; height: 38px; border-radius: 50%; border: 1px solid rgba(255,255,255,0.3); background: rgba(0,0,0,0.5); color: var(--text-heading); font-size: 1.4rem; cursor: pointer; display: flex; align-items: center; justify-content: center; }

        .esim-apps-modal-close:hover { color: var(--calm-sky); border-color: var(--calm-sky); background: rgba(56, 189, 248, 0.12); }

        .esim-apps-modal-btn-close { flex-shrink: 0; margin: 0 22px 22px; padding: 12px 22px; font-size: 1rem; font-weight: 600; color: var(--text-heading); background: rgba(255,255,255,0.08); border: 1px solid rgba(255,255,255,0.2); border-radius: 12px; cursor: pointer; }

        .esim-apps-modal-btn-close:hover { background: rgba(165, 182, 141, 0.18); border-color: var(--accent-border); transform: scale(1.02); }

        .esim-countries-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
        .esim-country-item { display: grid; grid-template-columns: 30px 1fr auto; align-items: center; gap: 10px; padding: 8px 10px; border: 1px solid rgba(255,255,255,0.08); border-radius: 10px; background: rgba(255,255,255,0.02); }
        .esim-country-flag { font-size: 1.08rem; line-height: 1; }
        .esim-country-name { color: var(--text-heading); font-size: 0.92rem; }
        .esim-country-state { display: inline-flex; align-items: center; gap: 6px; font-size: 0.82rem; font-weight: 700; white-space: nowrap; }
        .esim-country-state--on { color: #34d399; }
        .esim-country-state--off { color: #f87171; }
        .esim-country-state-mark { font-size: 0.95rem; line-height: 1; }
        .esim-country-item.esim-apps-hidden { display: none !important; }
        .esim-countries-empty { margin-top: 12px; color: var(--text-muted); font-size: 0.9rem; }



        /* Mini info block */

        .speed-info-card {

            margin-top: 18px;

            background: rgba(255,255,255,0.03);

            border: 1px solid rgba(255,255,255,0.1);

            border-radius: var(--glass-radius);

            padding: 22px 18px;

            text-align: center;

            position: relative;

            overflow: hidden;

            backdrop-filter: var(--glass-blur);

            -webkit-backdrop-filter: var(--glass-blur);

        }

        .speed-info-card h3 { color: var(--text-heading); font-size: 1.25rem; margin-bottom: 8px; }

        .speed-info-card p { color: var(--text-muted); line-height: 1.35; margin-bottom: 4px; }

        .speed-info-list {

            list-style: none;

            padding: 0;

            margin: 6px 0 0 0;

            display: flex;

            flex-direction: column;

            gap: 2px;

            align-items: center;

        }

        .speed-info-list li {

            color: var(--text-muted);

            font-weight: 700;

            line-height: 1.25;

        }

        .speed-info-list li::before {

            content: '✓';

            color: var(--accent);

            margin-right: 8px;

            font-weight: 900;

        }

        .speed-info-card::after {

            content: '\f012';

            position: absolute;

            right: 14px;

            bottom: 10px;

            font-family: 'Font Awesome 5 Free';

            font-weight: 900;

            font-size: 34px;

            color: rgba(165,182,141,0.2);

            pointer-events: none;

        }



        /* Network info block */

        .network-box {

            background: rgba(255,255,255,0.03);

            border: 1px solid rgba(255,255,255,0.1);

            border-radius: var(--glass-radius);

            padding: 26px 20px;

            backdrop-filter: var(--glass-blur);

            -webkit-backdrop-filter: var(--glass-blur);

        }

        .network-box .row { display: flex; gap: 14px; align-items: center; }

        .network-box .row > div:last-child { text-align: center; width: 100%; }

        .network-box .icon {

            width: 48px; height: 48px; border-radius: 16px;

            background: var(--calm-sky-dim);

            color: var(--calm-sky);

            display: flex; align-items: center; justify-content: center;

            flex-shrink: 0;

            font-size: 1.4rem;

            border: 1px solid rgba(56, 189, 248, 0.25);

        }

        .network-box p { color: var(--text-muted); margin: 0 0 0.2em 0; line-height: 1.6; }

        .network-box p.network-lead { font-weight: 700; color: var(--text-heading); }

        .network-box p:last-child { margin-bottom: 0; }



        /* Brand cards */

        .brand-grid { display: grid; grid-template-columns: 1fr; gap: 16px; }

        @media (min-width: 900px) { .brand-grid { grid-template-columns: repeat(3, 1fr); } }

        .brand-card {

            background: rgba(255,255,255,0.03);

            border: 1px solid rgba(255,255,255,0.1);

            border-radius: var(--glass-radius);

            padding: 22px 18px;

            min-height: 220px;

            display: flex;

            flex-direction: column;

            backdrop-filter: var(--glass-blur);

            -webkit-backdrop-filter: var(--glass-blur);

        }

        .brand-card .brand-icon {

            width: 44px; height: 44px; border-radius: 14px;

            background: var(--calm-sky-dim);

            color: var(--calm-sky);

            display: flex; align-items: center; justify-content: center;

            font-size: 1.2rem;

            margin-bottom: 14px;

            border: 1px solid rgba(56, 189, 248, 0.2);

        }

        .brand-card h4 { font-size: 1.05rem; margin-bottom: 10px; color: var(--text-heading); font-weight: 700; }

        .brand-card p { color: var(--text-muted); font-size: 0.98rem; line-height: 1.42; margin-top: auto; }



        /* Demo TV section */

        .demo-tv-box {

            background: rgba(255,255,255,0.03);

            border: 1px solid rgba(255,255,255,0.1);

            border-radius: var(--glass-radius);

            padding: 18px;

            backdrop-filter: var(--glass-blur);

            -webkit-backdrop-filter: var(--glass-blur);

        }

        .demo-tv-head {

            display: flex;

            align-items: center;

            gap: 12px;

            margin-bottom: 12px;

        }

        .demo-tv-icon {

            width: 44px;

            height: 44px;

            border-radius: 14px;

            background: var(--calm-sky-dim);

            color: var(--calm-sky);

            display: inline-flex;

            align-items: center;

            justify-content: center;

            border: 1px solid rgba(56, 189, 248, 0.25);

            flex-shrink: 0;

        }

        .demo-tv-title {

            margin: 0;

            color: var(--text-heading);

            font-weight: 700;

            font-size: 1.08rem;

        }

        .demo-tv-sub {

            margin: 0 0 12px 0;

            color: var(--text-muted);

            line-height: 1.45;

            font-size: 0.95rem;

        }

        .demo-tv-sub .demo-tv-capacity-note {

            font-weight: 600;

        }

        .demo-tv-player-wrap {

            position: relative;

            width: 100%;

            aspect-ratio: 16 / 9;

            border-radius: 14px;

            overflow: hidden;

            background: rgba(255, 255, 255, 0.06);

            border: 1px solid var(--accent-border);

            backdrop-filter: var(--glass-blur);

            -webkit-backdrop-filter: var(--glass-blur);

        }

        /* Tuščias <video> piešia juodą sluoksnį – blur matomas tik paslėpus jį laukiant Play */

        .demo-tv-player-wrap--awaiting-play #demoTvVideo {

            opacity: 0;

            pointer-events: none;

            background: transparent !important;

        }

        #demoTvVideo {

            width: 100%;

            height: 100%;

            object-fit: contain;

            display: block;

            background: var(--bg);

            transition: opacity 0.25s ease;

        }

        .demo-tv-overlay {

            position: absolute;

            inset: 0;

            background: rgba(0,0,0,0.84);

            color: var(--text-heading);

            display: flex;

            flex-direction: column;

            align-items: center;

            justify-content: center;

            text-align: center;

            gap: 10px;

            padding: 16px;

            z-index: 2;

        }

        .demo-tv-overlay.is-hidden { display: none; }

        .demo-tv-overlay--idle {

            background: rgba(5, 6, 8, 0.36);

            backdrop-filter: blur(28px) saturate(1.15);

            -webkit-backdrop-filter: blur(28px) saturate(1.15);

            gap: 0;

        }

        @supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {

            .demo-tv-player-wrap {

                background: rgba(5, 6, 8, 0.92);

                backdrop-filter: none;

                -webkit-backdrop-filter: none;

            }

            .demo-tv-overlay--idle {

                background: var(--bg);

                backdrop-filter: none;

                -webkit-backdrop-filter: none;

            }

        }

        .demo-tv-overlay--idle #demoTvOverlayText:empty { display: none; }

        @keyframes demoTvPlayPulse {

            0%, 100% {

                transform: scale(1);

                box-shadow:

                    0 0 0 1px rgba(255, 255, 255, 0.12) inset,

                    0 10px 36px rgba(14, 165, 233, 0.3),

                    0 4px 16px rgba(0, 0, 0, 0.4),

                    0 0 0 0 rgba(56, 189, 248, 0);

            }

            50% {

                transform: scale(1.07);

                box-shadow:

                    0 0 0 1px rgba(255, 255, 255, 0.18) inset,

                    0 18px 56px rgba(14, 165, 233, 0.55),

                    0 6px 22px rgba(0, 0, 0, 0.42),

                    0 0 32px 8px rgba(56, 189, 248, 0.28);

            }

        }

        #demoTvStartBtn.demo-tv-play-gate {

            display: inline-flex !important;

            align-items: center;

            justify-content: center;

            width: 88px;

            height: 88px;

            min-width: 88px;

            padding: 0;

            border: none;

            border-radius: 50%;

            cursor: pointer;

            background: linear-gradient(135deg, var(--calm-sky) 0%, #0ea5e9 45%, var(--cta) 100%);

            color: #0b1220;

            font-size: 2rem;

            box-shadow:

                0 0 0 1px rgba(255, 255, 255, 0.12) inset,

                0 12px 40px rgba(14, 165, 233, 0.35),

                0 4px 16px rgba(0, 0, 0, 0.4);

            animation: demoTvPlayPulse 2.5s ease-in-out infinite;

            transition: filter 0.2s ease;

        }

        #demoTvStartBtn.demo-tv-play-gate:hover {

            animation: none;

            transform: scale(1.1);

            filter: brightness(1.06);

            box-shadow:

                0 0 0 1px rgba(255, 255, 255, 0.2) inset,

                0 18px 52px rgba(14, 165, 233, 0.5),

                0 6px 20px rgba(0, 0, 0, 0.45);

        }

        #demoTvStartBtn.demo-tv-play-gate:focus-visible {

            outline: 2px solid var(--calm-sky);

            outline-offset: 4px;

            animation: none;

            transform: scale(1.08);

        }

        #demoTvStartBtn.demo-tv-play-gate i { margin-left: 4px; }

        @media (prefers-reduced-motion: reduce) {

            #demoTvStartBtn.demo-tv-play-gate {

                animation: none;

            }

        }

        .demo-tv-status {

            margin-top: 10px;

            display: flex;

            align-items: center;

            justify-content: space-between;

            gap: 10px;

            flex-wrap: wrap;

        }

        .demo-tv-countdown {

            color: var(--cta);

            font-weight: 700;

            font-size: 0.9rem;

        }

        .demo-tv-actions { display: inline-flex; gap: 8px; align-items: center; }

        .demo-tv-action-btn {

            width: 38px;

            height: 38px;

            border-radius: 10px;

            border: 1px solid rgba(56, 189, 248, 0.35);

            background: rgba(255,255,255,0.04);

            color: var(--calm-sky);

            display: inline-flex;

            align-items: center;

            justify-content: center;

            cursor: pointer;

        }

        .demo-tv-volume {

            width: 110px;

            accent-color: var(--calm-sky);

            cursor: pointer;

        }

        /* Kanalai: fixed viewport – ne po grotuvo backdrop-filter (kitu atveju „fixed“ lieka player viduje) */

        .demo-tv-ch-overlay {

            display: none;

            position: fixed;

            inset: 0;

            z-index: 1001000;

            align-items: center;

            justify-content: center;

            padding: max(12px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));

            box-sizing: border-box;

            background: rgba(0, 0, 0, 0.72);

            backdrop-filter: blur(10px);

            -webkit-backdrop-filter: blur(10px);

            -webkit-overflow-scrolling: touch;

        }

        .demo-tv-ch-overlay.open {

            display: flex !important;

        }

        .demo-tv-ch-box {

            width: min(100%, 520px);

            max-width: min(520px, 100%);

            max-height: min(78vh, 640px);

            border: 1px solid var(--accent-border);

            border-radius: 16px;

            background: rgba(10, 14, 20, 0.97);

            display: flex;

            flex-direction: column;

            overflow: hidden;

            box-shadow: 0 24px 64px rgba(0, 0, 0, 0.45);

            flex: 0 1 auto;

            min-height: 0;

        }

        .demo-tv-ch-head {

            display: flex;

            justify-content: space-between;

            align-items: center;

            padding: 8px 10px;

            border-bottom: 1px solid rgba(255,255,255,0.08);

            color: var(--text-heading);

            font-weight: 700;

        }

        .demo-tv-ch-close {

            border: 1px solid rgba(56, 189, 248, 0.35);

            background: rgba(255,255,255,0.04);

            color: var(--calm-sky);

            border-radius: 8px;

            padding: 4px 8px;

            cursor: pointer;

        }

        .demo-tv-ch-cats {

            display: flex;

            flex-wrap: wrap;

            gap: 6px;

            padding: 8px;

            border-bottom: 1px solid rgba(255,255,255,0.08);

        }

        .demo-tv-cat-btn {

            flex: 1 1 auto;

            min-width: fit-content;

            border: 1px solid rgba(255,255,255,0.16);

            background: rgba(255,255,255,0.04);

            color: var(--text-muted);

            border-radius: 8px;

            padding: 4px 8px;

            cursor: pointer;

            font-size: 0.8rem;

        }

        .demo-tv-cat-btn.active { color: var(--text-heading); border-color: var(--calm-sky); }

        .demo-tv-ch-grid {

            flex: 1;

            overflow: auto;

            display: grid;

            grid-template-columns: repeat(auto-fill, minmax(min(110px, 30vw), 1fr));

            gap: 8px;

            padding: 8px;

        }

        .demo-tv-ch-item {

            border: 1px solid rgba(255,255,255,0.12);

            background: rgba(255,255,255,0.03);

            border-radius: 10px;

            padding: 10px;

            cursor: pointer;

            min-height: 86px;

            display: flex;

            align-items: center;

            justify-content: center;

        }

        .demo-tv-ch-item:hover { border-color: var(--calm-sky); }

        .demo-tv-ch-logo {

            width: 68px;

            height: 68px;

            object-fit: contain;

            display: block;

        }

        .demo-tv-ch-logo-ph {

            width: 68px;

            height: 68px;

            border-radius: 12px;

            background: rgba(56,189,248,0.1);

            color: var(--calm-sky);

            display: flex;

            align-items: center;

            justify-content: center;

            font-size: 1.6rem;

        }



        @media (max-width: 767px) {

            .demo-tv-ch-box {

                width: min(100%, 100vw - 24px);

                max-height: min(82vh, 680px);

                border-radius: 14px;

            }

            .demo-tv-ch-grid {

                grid-template-columns: repeat(auto-fill, minmax(min(85px, 26vw), 1fr));

                gap: 10px;

                padding: 12px;

            }

            .demo-tv-ch-head {

                padding: 14px 16px;

                font-size: 1.05rem;

            }

            .demo-tv-ch-close {

                padding: 10px 16px;

                font-size: 1rem;

                min-height: 44px;

            }

            .demo-tv-ch-cats {

                padding: 10px 12px;

            }

            .demo-tv-cat-btn {

                padding: 8px 14px;

                font-size: 0.9rem;

                min-height: 40px;

            }

            .demo-tv-ch-item {

                min-height: 100px;

                padding: 12px;

            }

            .demo-tv-ch-logo, .demo-tv-ch-logo-ph {

                width: 56px;

                height: 56px;

            }

        }

        @media (max-width: 380px) {

            .demo-tv-ch-grid {

                grid-template-columns: repeat(2, 1fr);

            }

        }



        /* Kam skirta */

        .kam-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }

        @media (min-width: 600px) { .kam-grid { grid-template-columns: repeat(4, 1fr); } }

        .kam-card {

            background: rgba(255,255,255,0.03); border: 1px solid rgba(255,255,255,0.1); border-radius: var(--glass-radius);

            padding: 20px; text-align: center; text-decoration: none; color: inherit; display: block;

            transition: border-color 0.25s ease, background 0.25s ease, box-shadow 0.25s ease;

            backdrop-filter: var(--glass-blur);

            -webkit-backdrop-filter: var(--glass-blur);

        }

        .kam-card:hover { border-color: rgba(56, 189, 248, 0.45); background: rgba(56, 189, 248, 0.08); box-shadow: 0 8px 28px rgba(0,0,0,0.2); }

        .kam-card .icon { font-size: 1.8rem; color: var(--calm-sky); margin-bottom: 10px; }

        .kam-card span { font-size: 0.95rem; font-weight: 600; }



        /* Testimonials */

        .testi-grid { display: grid; grid-template-columns: 1fr; gap: 20px; }

        @media (min-width: 768px) { .testi-grid { grid-template-columns: repeat(3, 1fr); } }

        .testi-card {

            background: rgba(255,255,255,0.03); border: 1px solid rgba(255,255,255,0.1); border-radius: var(--glass-radius); padding: 24px;

            backdrop-filter: var(--glass-blur);

            -webkit-backdrop-filter: var(--glass-blur);

        }

        .testi-card .stars { color: var(--calm-sky); margin-bottom: 12px; font-size: 1rem; text-shadow: 0 1px 6px rgba(0,0,0,0.45); }

        .testi-card p { font-size: 0.95rem; color: var(--text-muted); margin-bottom: 8px; font-style: italic; line-height: 1.35; }

        .testi-card .name { font-weight: 600; font-size: 0.9rem; }



        /* Kaip veikia */

        .how-title-pulse {

            animation: howTitlePulse 2.2s ease-in-out infinite;

            transform-origin: center;

            will-change: transform, opacity, text-shadow;

        }

        @media (max-width: 767px) {

            #how .sec-title { text-align: center; }

        }

        @keyframes howTitlePulse {

            0%, 100% {

                transform: scale(1);

                opacity: 1;

                text-shadow: 0 0 0 rgba(56, 189, 248, 0);

            }

            50% {

                transform: scale(1.04);

                opacity: 0.97;

                text-shadow: 0 0 16px rgba(56, 189, 248, 0.24);

            }

        }

        .steps { display: grid; grid-template-columns: 1fr; gap: 24px; counter-reset: step; }

        @media (min-width: 640px) { .steps { grid-template-columns: repeat(3, 1fr); } }

        .step { text-align: center; position: relative; }

        .step::before { counter-increment: step; content: counter(step); display: block; width: 56px; height: 56px; margin: 0 auto 16px;

            background: var(--calm-sky-dim); color: var(--calm-sky); border: 1px solid rgba(56, 189, 248, 0.35); border-radius: 50%; font-size: 1.5rem; font-weight: 700; line-height: 56px; }

        .step h3 { font-size: 1.15rem; margin-bottom: 8px; color: var(--text-heading); }

        .step p { font-size: 0.9rem; color: var(--text-muted); }



        /* SEO blokas – tas pats „premium“ stiklas kaip .price-card (fono mesh matosi per blur) */

        .seo-block {

            background: rgba(255, 255, 255, 0.03);

            border: 1px solid rgba(255, 255, 255, 0.08);

            border-radius: 28px;

            padding: clamp(28px, 5vw, 45px) clamp(22px, 3.5vw, 32px);

            backdrop-filter: blur(12px);

            -webkit-backdrop-filter: blur(12px);

        }

        .seo-block h2 { font-size: 1.5rem; margin-bottom: 20px; color: var(--calm-sky); font-weight: 700; }

        .gl-seo-brand-line {
            margin: 0 0 1rem;
            font-size: 0.92rem;
            letter-spacing: 0.04em;
            color: rgba(236, 242, 248, 0.88);
        }

        .gl-seo-brand-line span {
            color: rgba(255, 255, 255, 0.96);
            font-weight: 600;
        }

        .seo-block p, .seo-block li { margin-bottom: 8px; color: var(--text-muted); font-size: 1rem; line-height: 1.42; }

        .seo-block ul { padding-left: 24px; margin-bottom: 10px; }

        /* DUK numeruoti sąrašai: pakankamas įtraukimas, kad 10–12 (ir ilgesni) markeriai neišlįstų už bloko (body overflow-x: hidden). */
        .seo-block ol,
        .faq-answer ol {
            margin: 0 0 10px;
            padding-left: 2.75em;
            list-style-position: outside;
        }

        .seo-block ol li,
        .faq-answer ol li {
            padding-left: 0.2em;
        }

        .seo-block .hidden { display: none; }

        .faq-intro {

            color: var(--calm-sky);

            font-weight: 700;

            margin-bottom: 18px;

            font-size: 1.02rem;

        }

        .seo-block .faq-section-title {

            font-size: 1.1rem;

            font-weight: 700;

            color: var(--calm-sky);

            margin: 1.5em 0 12px;

            padding-bottom: 6px;

            border-bottom: 1px solid rgba(255, 255, 255, 0.1);

        }

        .seo-block h2 + .faq-intro + .faq-section-title { margin-top: 0.75em; }

        /* DUK temos – viršutinis accordion (viena tema atidaryta) */
        details.faq-section {
            border: 1px solid rgba(125, 211, 252, 0.22);
            background: rgba(255, 255, 255, 0.04);
            border-radius: var(--glass-radius);
            margin-bottom: 12px;
            backdrop-filter: var(--glass-blur);
            -webkit-backdrop-filter: var(--glass-blur);
        }

        details.faq-section > summary.faq-section-summary {
            cursor: pointer;
            font-weight: 700;
            font-size: 1.1rem;
            color: var(--calm-sky);
            list-style: none;
            padding: 14px 16px;
            border-bottom: 1px solid transparent;
        }

        details.faq-section > summary.faq-section-summary::-webkit-details-marker { display: none; }

        details.faq-section[open] > summary.faq-section-summary {
            border-bottom-color: rgba(255, 255, 255, 0.1);
        }

        details.faq-section .faq-section-body {
            padding: 4px 12px 12px;
        }

        details.faq-section .faq-section-body details.faq-item {
            margin-bottom: 10px;
        }

        details.faq-section .faq-section-body details.faq-item:last-child {
            margin-bottom: 0;
        }

        details.faq-item {

            border: 1px solid rgba(255,255,255,0.1);

            background: rgba(255,255,255,0.03);

            border-radius: var(--glass-radius);

            padding: 14px 16px;

            margin-bottom: 14px;

            backdrop-filter: var(--glass-blur);

            -webkit-backdrop-filter: var(--glass-blur);

        }

        details.faq-item summary {

            cursor: pointer;

            font-weight: 700;

            color: var(--text-heading);

            font-size: 1rem;

            list-style: none;

        }

        details.faq-item summary::-webkit-details-marker { display: none; }

        details.faq-item[open] summary { color: var(--calm-sky); }

        .faq-answer { margin-top: 8px; color: var(--text-muted); font-size: 1rem; line-height: 1.42; }

        .faq-answer p { margin-bottom: 8px; }

        .faq-answer ul {
            margin: 0 0 10px;
            padding-left: 1.5em;
        }



        /* Final CTA */

        .final-cta { text-align: center; padding: 44px 24px; }

        .final-cta h2 { font-size: clamp(1.5rem, 3vw, 2rem); margin-bottom: 12px; }

        .final-cta .final-title-pulse {

            animation: finalTitlePulse 2.1s ease-in-out infinite;

            transform-origin: center;

            will-change: transform, opacity, text-shadow;

        }

        @keyframes finalTitlePulse {

            0%, 100% {

                transform: scale(1);

                opacity: 1;

                text-shadow: 0 0 0 rgba(110, 168, 255, 0);

            }

            50% {

                transform: scale(1.045);

                opacity: 0.96;

                text-shadow: 0 0 18px rgba(110, 168, 255, 0.26);

            }

        }

        .final-cta p { color: var(--text-muted); margin-bottom: 14px; max-width: 480px; margin-left: auto; margin-right: auto; line-height: 1.4; }

        .final-cta .btn { font-size: 1.1rem; padding: 16px 32px; }

        .final-cta .btn-primary { padding: 14px 22px; font-size: 1rem; border-radius: 10px; }



        .final-mini-faq {

            margin: 18px auto 18px;

            max-width: 760px;

            background: rgba(255,255,255,0.03);

            border: 1px solid rgba(255,255,255,0.1);

            border-radius: var(--glass-radius);

            padding: 16px 14px;

            text-align: left;

            backdrop-filter: var(--glass-blur);

            -webkit-backdrop-filter: var(--glass-blur);

        }

        .final-mini-faq .mini-q {

            color: var(--calm-sky);

            font-weight: 900;

            margin-bottom: 6px;

            font-size: 1.02rem;

        }

        .final-mini-faq .mini-a {

            color: var(--text-muted);

            line-height: 1.4;

            font-size: 0.98rem;

        }

        .final-mini-faq .contacts-block {

            display: grid;

            gap: 4px;

        }

        .final-mini-faq .contact-legal-tight {

            display: flex;

            flex-direction: column;

            align-items: center;

            gap: 0;

            line-height: 1.2;

        }

        .final-mini-faq .contact-legal-tight .contact-line {

            margin: 0;

            padding: 0;

            line-height: 1.2;

        }

        .final-mini-faq .contact-legal-tight .contact-line strong {

            font-weight: 700;

        }

        .final-mini-faq .contact-line { color: var(--text-heading); opacity: 0.92; }

        .final-mini-faq .contact-line.muted { color: var(--text-muted); }

        .final-mini-faq .contact-line.phone-pulse {

            display: inline-flex;

            align-items: center;

            justify-content: center;

            animation: finalPhonePulse 1.9s ease-in-out infinite;

            transform-origin: center;

            will-change: transform, text-shadow, opacity;

        }

        .final-mini-faq .contact-icon-row {

            display: inline-flex;

            align-items: center;

            justify-content: center;

            gap: 10px;

        }

        .final-mini-faq .contact-call-trigger {

            width: 42px;

            height: 42px;

            border-radius: 999px;

            border: 1px solid rgba(255, 255, 255, 0.46);

            background: radial-gradient(circle at 30% 30%, rgba(255,255,255,0.12), rgba(0,0,0,0.42) 65%);

            color: #ffffff;

            cursor: pointer;

            font-size: 18px;

            text-shadow: 0 2px 10px rgba(0,0,0,0.48), 0 0 10px rgba(255,255,255,0.16);

            box-shadow: 0 6px 18px rgba(0,0,0,0.38), inset 0 0 0 1px rgba(255,255,255,0.06);

        }

        .final-mini-faq .contact-email-trigger {

            width: 42px;

            height: 42px;

            border-radius: 999px;

            border: 1px solid rgba(255, 255, 255, 0.46);

            background: radial-gradient(circle at 30% 30%, rgba(255,255,255,0.12), rgba(0,0,0,0.42) 65%);

            color: #ffffff;

            cursor: pointer;

            font-size: 17px;

            text-shadow: 0 2px 10px rgba(0,0,0,0.48), 0 0 10px rgba(255,255,255,0.16);

            box-shadow: 0 6px 18px rgba(0,0,0,0.38), inset 0 0 0 1px rgba(255,255,255,0.06);

        }

        .final-mini-faq .contact-call-trigger:hover {

            border-color: rgba(255,255,255,0.72);

            box-shadow: 0 0 0 2px rgba(255,255,255,0.14), 0 8px 24px rgba(0,0,0,0.48);

        }

        .final-mini-faq .contact-email-trigger:hover {

            border-color: rgba(255,255,255,0.72);

            box-shadow: 0 0 0 2px rgba(255,255,255,0.14), 0 8px 24px rgba(0,0,0,0.48);

        }

        @keyframes finalPhonePulse {

            0%, 100% {

                transform: scale(1);

                opacity: 0.96;

                text-shadow: 0 0 0 rgba(255, 255, 255, 0);

            }

            50% {

                transform: scale(1.06);

                opacity: 1;

                text-shadow: 0 0 14px rgba(255, 255, 255, 0.36);

            }

        }

        .final-mini-faq .contact-gap { height: 4px; }

        .final-mini-faq .contact-address-stack {

            display: flex;

            flex-direction: column;

            gap: 2px;

        }

        @media (min-width: 768px) {

            .final-mini-faq,

            .final-mini-faq .mini-q,

            .final-mini-faq .contacts-block,

            .final-mini-faq .contact-line { text-align: center; }

        }

        @media (max-width: 767px) {

            .final-mini-faq,

            .final-mini-faq .mini-q,

            .final-mini-faq .contacts-block,

            .final-mini-faq .contact-line { text-align: center; }

        }



        /* Hero logo */

        .hero-logo {

            margin: 0 0 clamp(16px, 3vw, 30px);

            align-self: flex-start;

        }

        .hero-logo-mark {

            position: relative;

            display: inline-block;

            line-height: 0;

        }

        .hero-logo-mark img {

            width: 148px;

            height: 148px;

            display: block;

            animation: logoPulse 2.4s infinite ease-in-out;

            filter: drop-shadow(0 0 18px rgba(56, 189, 248, 0.25));

        }

        .hero-logo-tagline {

            position: absolute;

            left: 68%;

            top: 74%;

            transform: translateY(-38%);

            margin: 0;

            padding: 0;

            min-width: 0;

            font-family: var(--gl-ui-font-display, "Outfit", system-ui, sans-serif);

            font-size: clamp(0.82rem, 1.6vw, 1rem);

            font-weight: 600;

            letter-spacing: 0.02em;

            line-height: 1;

            color: rgba(255, 255, 255, 0.96);

            text-shadow: 0 1px 10px rgba(0, 0, 0, 0.45);

            pointer-events: none;

        }

        .hero-logo-tagline .gl-brand-tagline-br {

            display: block;

            margin: 0;

            padding: 0;

            line-height: 0;

            height: 0;

            font-size: 0;

        }

        .gl-brand-tagline-type.is-typing::after {

            content: '';

            display: inline-block;

            width: 2px;

            height: 0.92em;

            margin-left: 2px;

            vertical-align: -0.06em;

            background: rgba(255, 255, 255, 0.92);

            animation: glBrandTaglineCaret 0.85s step-end infinite;

        }

        @keyframes glBrandTaglineCaret {

            0%, 49% { opacity: 1; }

            50%, 100% { opacity: 0; }

        }

        @keyframes logoPulse {

            0% { transform: scale(1); filter: drop-shadow(0 0 12px rgba(56, 189, 248, 0.2)); }

            50% { transform: scale(1.08); filter: drop-shadow(0 0 28px rgba(165, 182, 141, 0.35)); }

            100% { transform: scale(1); filter: drop-shadow(0 0 12px rgba(56, 189, 248, 0.2)); }

        }



        @media (max-width: 420px) {

            .hero-logo-mark img { width: 110px; height: 110px; }

            .hero-logo-tagline {

                left: 66%;

                top: 72%;

                transform: translateY(-38%);

                font-size: 0.78rem;

            }

        }

        /* iPhone SE, senesni 320–375px – tekstas dešinėn/žemiau, kad neužliptų ant karčių */
        @media (max-width: 380px) {

            .hero-logo-tagline {

                left: 72%;

                top: 76%;

                transform: translateY(-32%);

                font-size: 0.72rem;

                letter-spacing: 0.01em;

            }

        }



        /* Floating chat + email bubbles */

        .contact-icons-floating {

            position: fixed;

            top: 50%;

            right: 20px;

            transform: translateY(-50%);

            display: flex;

            flex-direction: column;

            gap: 10px;

            z-index: var(--gl-floating-actions-z, 8000);

            transition: opacity 0.35s ease, visibility 0.35s ease;

            touch-action: manipulation;

        }

        /* Slėpti burbulus skrolinant (mobilus arba siauresnis desktop, kai kertasi su hero CTA / konstruktoriumi) */

        .contact-icons-floating.contact-icons-floating--scroll-hidden,

        #chatMenu.contact-icons-floating--scroll-hidden {

            opacity: 0;

            visibility: hidden;

            pointer-events: none;

        }

        @media (max-width: 767px) {

            /* Thumb zone: burbulai apačioje-dešinėje, ne per vidurį ekrano */
            .contact-icons-floating {
                top: auto;
                bottom: calc(1.15rem + env(safe-area-inset-bottom, 0px));
                right: 12px;
                transform: none;
            }

            html.gl-mobile-sticky-cta-visible .contact-icons-floating {
                bottom: calc(4.85rem + env(safe-area-inset-bottom, 0px));
            }

            .chat-menu {
                top: auto;
                bottom: calc(1.15rem + env(safe-area-inset-bottom, 0px));
                right: 4.75rem;
                transform: none;
            }

            html.gl-mobile-sticky-cta-visible .chat-menu {
                bottom: calc(4.85rem + env(safe-area-inset-bottom, 0px));
            }

        }

        /* Plūduriuojantys burbulai: sukantis conic-gradient žiedas + tamsus vidus (premium, kaip mesh) */

        .email-bubble,

        .chat-bubble {

            position: relative;

            isolation: isolate;

            overflow: visible;

            width: 55px;

            height: 55px;

            border-radius: 50%;

            display: flex;

            justify-content: center;

            align-items: center;

            font-size: 22px;

            cursor: pointer;

            border: none;

            background: transparent;

            color: var(--calm-sky);

            box-shadow: 0 6px 22px rgba(0,0,0,0.45);

            transition: transform 0.2s ease, box-shadow 0.2s ease;

        }

        .email-bubble::before,

        .chat-bubble::before,

        .bubble-link::before {

            content: '';

            position: absolute;

            inset: -2px;

            border-radius: 50%;

            z-index: 0;

            background: conic-gradient(from 0deg, var(--cta), var(--calm-sky), var(--accent), rgba(167, 139, 250, 0.9), var(--cta));

            animation: glBubbleRingSpin 9.5s linear infinite;

        }

        .email-bubble::after,

        .chat-bubble::after,

        .bubble-link::after {

            content: '';

            position: absolute;

            inset: 2px;

            border-radius: 50%;

            z-index: 1;

            background: rgba(10, 11, 14, 0.96);

            box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.06);

        }

        .email-bubble > svg,

        .chat-bubble > svg,

        .bubble-link > svg,

        .bubble-link .ai-bubble-flip-inner > svg {

            position: relative;

            z-index: 2;

        }

        .email-bubble:hover,

        .chat-bubble:hover,

        .bubble-link:hover {

            transform: scale(1.08);

            box-shadow: 0 8px 28px rgba(0,0,0,0.5), 0 0 20px rgba(var(--cta-rgb), 0.15);

        }

        .email-bubble:hover::before,

        .chat-bubble:hover::before,

        .bubble-link:hover::before {

            filter: brightness(1.12);

        }

        .bubble-link {

            position: relative;

            isolation: isolate;

            overflow: visible;

            width: 55px;

            height: 55px;

            border-radius: 50%;

            display: flex;

            justify-content: center;

            align-items: center;

            font-size: 22px;

            text-decoration: none;

            border: none;

            background: transparent;

            color: var(--calm-sky);

            box-shadow: 0 6px 22px rgba(0,0,0,0.45);

            transition: transform 0.2s ease, box-shadow 0.2s ease;

        }

        @keyframes glBubbleRingSpin {

            to { transform: rotate(360deg); }

        }

        @media (prefers-reduced-motion: reduce) {

            .email-bubble::before,

            .chat-bubble::before,

            .bubble-link::before {

                animation: none;

                transform: none;

                background: linear-gradient(135deg, var(--cta), var(--calm-sky), var(--accent));

            }

        }

        .bubble-link-btn {

            appearance: none;

            -webkit-appearance: none;

            cursor: pointer;

            padding: 0;

            margin: 0;

            line-height: 0;

        }

        .savitarna-pulse {

            animation: savitarnaBubblePulse 2s ease-in-out infinite;

            will-change: transform, box-shadow;

        }

        @keyframes savitarnaBubblePulse {

            0%, 100% {

                transform: scale(1);

                box-shadow: 0 6px 22px rgba(0,0,0,0.45);

            }

            50% {

                transform: scale(1.09);

                box-shadow: 0 0 0 2px rgba(56, 189, 248, 0.45), 0 10px 30px rgba(0,0,0,0.5);

            }

        }

        :root {

            --modal-overlay-bg: transparent;

            --modal-box-bg: rgba(255, 255, 255, 0.04);

            --modal-box-border: rgba(255, 255, 255, 0.1);

            --modal-box-shadow: 0 24px 56px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255, 255, 255, 0.04) inset;

        }

        @keyframes glModalMeshShift {

            0% { background-position: 0% 40%, 0% 0%, 100% 100%, 50% 50%; }

            50% { background-position: 72% 58%, 85% 25%, 18% 78%, 42% 62%; }

            100% { background-position: 100% 55%, 100% 90%, 0% 12%, 55% 38%; }

        }

        @keyframes glModalMeshHue {

            0% { filter: hue-rotate(0deg) saturate(1.52); }

            20% { filter: hue-rotate(44deg) saturate(1.88); }

            40% { filter: hue-rotate(-28deg) saturate(1.75); }

            60% { filter: hue-rotate(58deg) saturate(1.98); }

            80% { filter: hue-rotate(-22deg) saturate(1.8); }

            100% { filter: hue-rotate(0deg) saturate(1.52); }

        }

        .savitarna-modal-overlay {

            display: none;

            position: fixed;

            inset: 0;

            z-index: 1000003;

            background: var(--modal-overlay-bg);

            backdrop-filter: blur(14px);

            -webkit-backdrop-filter: blur(14px);

            align-items: center;

            justify-content: center;

            padding: 14px;

        }

        .savitarna-modal-overlay.is-open { display: flex; }

        .portal-login-modal-shell {

            position: relative;

            width: min(480px, 100%);

            max-height: calc(100vh - 28px);

            overflow-x: hidden;

            overflow-y: auto;

            border-radius: 24px;

            border: 1px solid rgba(56, 189, 248, 0.28);

            background: var(--modal-box-bg);

            box-shadow: var(--modal-box-shadow);

            padding: 22px 18px 18px;

            color: #f4f4f5;

        }

        .savitarna-modal-box:not(.portal-login-modal-shell) {

            position: relative;

            width: min(1120px, 100%);

            max-height: calc(100vh - 28px);

            overflow: auto;

            border-radius: 24px;

            border: 1px solid rgba(56, 189, 248, 0.25);

            background: var(--modal-box-bg);

            box-shadow: var(--modal-box-shadow);

            padding: 20px 18px;

            color: #f4f4f5;

        }

        .savitarna-close.portal-login-close {

            position: absolute;

            top: 10px;

            right: 10px;

            width: 34px;

            height: 34px;

            border-radius: 999px;

            border: 1px solid rgba(255, 255, 255, 0.18);

            background: rgba(0,0,0,0.45);

            color: #fff;

            font-size: 1.1rem;

            cursor: pointer;

            transition: border-color 0.2s, color 0.2s;

        }

        .savitarna-close.portal-login-close:hover {

            border-color: var(--calm-sky);

            color: var(--calm-sky);

        }

        .savitarna-title {

            margin: 0;

            font-size: 1.2rem;

            font-weight: 700;

            color: var(--calm-sky);

        }

        .portal-login-hero {

            margin-bottom: 14px;

            padding-right: 40px;

        }

        .portal-modal-head {

            display: flex;

            flex-direction: column;

            align-items: center;

            text-align: center;

            gap: clamp(12px, 3vw, 16px);

            margin: 0 0 0 0;

        }

        @media (min-width: 400px) {

            .portal-modal-head {

                flex-direction: row;

                text-align: left;

                align-items: center;

            }

            .portal-login-hero { padding-right: 44px; }

        }

        .portal-login-hero-text { min-width: 0; }

        .portal-modal-head-icon.portal-login-hero-dial {

            width: 44px;

            height: 44px;

            border-radius: 50%;

            display: flex;

            align-items: center;

            justify-content: center;

            flex-shrink: 0;

            background: rgba(56, 189, 248, 0.12);

            border: 1px solid rgba(56, 189, 248, 0.35);

            color: var(--calm-sky);

            font-size: 1.35rem;

        }

        .portal-modal-head-icon.portal-login-hero-dial svg.gl-ico {

            width: 1.35rem;

            height: 1.35rem;

            flex-shrink: 0;

            display: block;

        }

        .portal-modal-sub {

            margin: 6px 0 0 0;

            font-size: clamp(0.84rem, 2.8vw, 0.92rem);

            color: rgba(232, 240, 250, 0.72);

            line-height: 1.5;

            max-width: 36rem;

        }

        .sav-embedded-host {

            position: relative;

            min-height: 0;

            border-radius: 0;

        }

        .portal-login-methods {

            display: flex;

            flex-direction: column;

            gap: clamp(8px, 2vw, 10px);

            margin-bottom: clamp(10px, 2.5vw, 14px);

        }

        .portal-method-card {

            position: relative;

            display: flex;

            flex-direction: row;

            align-items: center;

            justify-content: flex-start;

            gap: clamp(12px, 3vw, 16px);

            width: 100%;

            box-sizing: border-box;

            min-height: 0;

            padding: clamp(10px, 2.4vw, 14px) clamp(14px, 3vw, 18px);

            border-radius: clamp(14px, 3.5vw, 18px);

            border: 1.5px solid rgba(255, 255, 255, 0.1);

            background: rgba(255, 255, 255, 0.04);

            color: rgba(244, 250, 255, 0.88);

            font-size: clamp(0.82rem, 2.2vw, 0.92rem);

            font-weight: 600;

            line-height: 1.25;

            text-align: left;

            cursor: pointer;

            transition:

                transform 0.2s ease,

                border-color 0.2s,

                background 0.2s,

                box-shadow 0.2s;

            -webkit-tap-highlight-color: transparent;

        }

        .portal-method-card:hover {

            border-color: rgba(125, 211, 252, 0.42);

            background: rgba(56, 189, 248, 0.1);

            box-shadow: 0 8px 28px rgba(0, 0, 0, 0.25);

        }

        .portal-method-card:active { transform: scale(0.97); }

        .portal-method-card.is-active {

            border-color: rgba(125, 211, 252, 0.75);

            background: linear-gradient(165deg, rgba(30, 90, 120, 0.55), rgba(20, 55, 85, 0.45));

            box-shadow:

                0 0 0 1px rgba(125, 211, 252, 0.35),

                0 12px 36px rgba(14, 80, 120, 0.35);

            color: #f0fbff;

        }

        .portal-method-card:focus-visible {

            outline: none;

            box-shadow: 0 0 0 3px rgba(56, 189, 248, 0.55);

        }

        .portal-method-card-icon {

            display: flex;

            flex-shrink: 0;

            align-items: center;

            justify-content: center;

            width: clamp(40px, 10vw, 46px);

            height: clamp(40px, 10vw, 46px);

            border-radius: 50%;

            font-size: clamp(1.05rem, 3.2vw, 1.25rem);

            background: rgba(0, 0, 0, 0.22);

            border: 1px solid rgba(255, 255, 255, 0.12);

            color: #a5e9ff;

            transition: transform 0.2s ease, background 0.2s;

        }

        .portal-method-card.is-active .portal-method-card-icon {

            background: rgba(0, 0, 0, 0.35);

            border-color: rgba(125, 211, 252, 0.4);

            color: #dff6ff;

            transform: scale(1.03);

        }

        .portal-method-card-icon svg.gl-ico {

            width: 1.2em;

            height: 1.2em;

            display: block;

            flex-shrink: 0;

        }

        .portal-method-card-label {

            flex: 1;

            display: flex;

            align-items: center;

            justify-content: flex-start;

            min-height: 0;

            padding: 0;

            word-break: break-word;

        }

        /* Index „fast login“ modalas: aiškus juostelių išdėstymas (per-specifiškumas > senesnis cache / bendri button stiliai) */

        .portal-login-modal-shell .portal-login-methods {

            display: flex;

            flex-direction: column;

            flex-wrap: nowrap;

            align-items: stretch;

            justify-content: flex-start;

            width: 100%;

            max-width: 100%;

            gap: clamp(8px, 2vw, 10px);

        }

        .portal-login-modal-shell .portal-method-card {

            display: flex;

            flex-direction: row;

            flex-wrap: nowrap;

            align-items: center;

            justify-content: flex-start;

            width: 100%;

            max-width: 100%;

            flex: 0 0 auto;

            min-width: 0;

            box-sizing: border-box;

        }

        .portal-login-divider {

            display: flex;

            align-items: center;

            gap: 12px;

            margin: 2px 0 12px;

        }

        .portal-login-divider-line {

            flex: 1;

            height: 1px;

            background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.14), transparent);

        }

        .portal-login-divider-text {

            font-size: clamp(0.72rem, 2.4vw, 0.78rem);

            font-weight: 700;

            letter-spacing: 0.12em;

            text-transform: uppercase;

            color: rgba(186, 210, 235, 0.45);

            white-space: nowrap;

        }

        .portal-oauth-row {

            display: flex;

            flex-direction: column;

            flex-wrap: nowrap;

            align-items: stretch;

            gap: clamp(8px, 2vw, 10px);

            margin-bottom: 12px;

        }

        .portal-oauth-btn {

            flex: 0 0 auto;

            width: 100%;

            max-width: 100%;

            min-height: clamp(48px, 12vw, 56px);

            border-radius: clamp(14px, 3vw, 16px);

            border: 1px solid rgba(255, 255, 255, 0.1);

            background: rgba(255, 255, 255, 0.04);

            color: rgba(244, 250, 255, 0.92);

            font-size: clamp(0.82rem, 2.4vw, 0.92rem);

            font-weight: 600;

            line-height: 1.25;

            text-align: left;

            padding: clamp(10px, 2.4vw, 12px) clamp(14px, 3vw, 16px);

            cursor: pointer;

            display: flex;

            align-items: center;

            justify-content: flex-start;

            box-sizing: border-box;

            transition: transform 0.2s ease, border-color 0.2s, background 0.2s, box-shadow 0.2s;

            -webkit-tap-highlight-color: transparent;

        }

        .portal-oauth-inner {

            display: flex;

            flex-direction: row;

            flex-wrap: nowrap;

            align-items: center;

            justify-content: flex-start;

            gap: clamp(12px, 3vw, 14px);

            width: 100%;

            color: rgba(244, 250, 255, 0.92);

        }

        .portal-oauth-inner > .fab {

            font-size: clamp(1.05rem, 3vw, 1.2rem);

            line-height: 1;

            flex-shrink: 0;

            width: 1.5em;

            display: flex;

            align-items: center;

            justify-content: center;

            color: rgba(194, 233, 255, 0.95);

        }

        .portal-oauth-inner svg.gl-ico {

            width: clamp(1.05rem, 3vw, 1.2rem);

            height: clamp(1.05rem, 3vw, 1.2rem);

            flex-shrink: 0;

            display: block;

            color: rgba(194, 233, 255, 0.95);

        }

        .portal-oauth-inner svg.gl-ico.portal-gl-spin {

            animation: portalGlSpin 0.85s linear infinite;

        }

        @keyframes portalGlSpin {

            to { transform: rotate(360deg); }

        }

        @media (prefers-reduced-motion: reduce) {

            .portal-oauth-inner svg.gl-ico.portal-gl-spin {

                animation: none;

            }

        }

        .portal-oauth-brand {

            font-size: clamp(0.82rem, 2.4vw, 0.92rem);

            font-weight: 600;

            opacity: 0.95;

            padding: 0;

            word-break: break-word;

            line-height: 1.2;

        }

        .portal-oauth-btn:hover {

            border-color: rgba(255, 255, 255, 0.09);

            background: rgba(255, 255, 255, 0.04);

            box-shadow: none;

        }

        .portal-oauth-btn:active { transform: scale(0.97); }

        .portal-oauth-btn:disabled { opacity: 0.55; cursor: not-allowed; transform: none; }

        .portal-login-demo-link {

            display: flex;

            align-items: center;

            justify-content: center;

            width: 100%;

            min-height: clamp(44px, 12vw, 52px);

            border-radius: clamp(12px, 3vw, 14px);

            border: 1px solid rgba(255, 255, 255, 0.05);

            background: rgba(255, 255, 255, 0.015);

            text-decoration: none;

            margin: 2px 0 10px 0;

            transition: transform 0.2s ease, border-color 0.2s, background 0.2s, box-shadow 0.2s;

        }

        .portal-login-demo-link:hover {

            border-color: rgba(255, 255, 255, 0.08);

            background: rgba(255, 255, 255, 0.03);

            box-shadow: none;

        }

        .portal-login-demo-link:active { transform: scale(0.985); }

        .portal-demo-inner {

            display: flex;

            flex-direction: row;

            align-items: center;

            justify-content: center;

            gap: 6px;

            color: rgba(222, 236, 247, 0.8);

        }

        .portal-demo-inner > .fa-solid {

            font-size: clamp(0.76rem, 2.2vw, 0.86rem);

            display: flex;

            align-items: center;

            justify-content: center;

            color: rgba(176, 215, 236, 0.82);

        }

        .portal-demo-inner svg.gl-ico {

            width: clamp(0.76rem, 2.2vw, 0.86rem);

            height: clamp(0.76rem, 2.2vw, 0.86rem);

            flex-shrink: 0;

            display: block;

            color: rgba(176, 215, 236, 0.82);

        }

        .portal-demo-label {

            font-size: clamp(0.58rem, 1.8vw, 0.64rem);

            font-weight: 600;

            letter-spacing: 0.06em;

            opacity: 0.85;

        }

        .portal-login-form-panel {

            margin-top: 4px;

            padding-top: clamp(14px, 3vw, 18px);

            border-top: 1px solid rgba(255, 255, 255, 0.08);

        }

        .portal-login-input {

            width: 100%;

            min-height: 48px;

            padding: 14px 16px;

            border-radius: clamp(14px, 3vw, 18px);

            border: 1.5px solid rgba(255, 255, 255, 0.12);

            background: rgba(0, 0, 0, 0.35);

            color: #f4f4f5;

            font-size: clamp(0.95rem, 3vw, 1.05rem);

            box-sizing: border-box;

            transition: border-color 0.2s, box-shadow 0.2s;

        }

        .portal-login-input:focus {

            outline: none;

            border-color: rgba(56, 189, 248, 0.65);

            box-shadow: 0 0 0 3px rgba(56, 189, 248, 0.2);

        }

        @keyframes portal-login-input-pulse-blue {

            0%, 100% {

                border-color: rgba(56, 189, 248, 0.55);

                box-shadow:

                    0 0 0 3px rgba(56, 189, 248, 0.28),

                    0 0 22px rgba(56, 189, 248, 0.2);

            }

            50% {

                border-color: rgba(56, 189, 248, 0.98);

                box-shadow:

                    0 0 0 6px rgba(56, 189, 248, 0.42),

                    0 0 36px rgba(56, 189, 248, 0.38);

            }

        }

        .portal-login-input.portal-login-input--pulse {

            animation: portal-login-input-pulse-blue 1.25s ease-in-out infinite;

            border-color: rgba(56, 189, 248, 0.65);

            will-change: box-shadow;

            transition: color 0.2s, background 0.2s;

        }

        .portal-login-input.portal-login-input--pulse:focus {

            animation: none;

            border-color: rgba(56, 189, 248, 0.85);

            box-shadow: 0 0 0 3px rgba(56, 189, 248, 0.32);

        }

        @media (prefers-reduced-motion: reduce) {

            .portal-login-input.portal-login-input--pulse {

                animation: none;

                border-color: rgba(56, 189, 248, 0.65);

                box-shadow: 0 0 0 2px rgba(56, 189, 248, 0.28);

            }

        }

        .portal-login-btn {

            width: 100%;

            margin-top: 14px;

            min-height: 50px;

            padding: 14px 18px;

            border-radius: clamp(14px, 3vw, 18px);

            border: none;

            background: linear-gradient(135deg, #1c6a8c, #154a6b);

            color: #f0fbff;

            font-weight: 700;

            font-size: clamp(0.9rem, 3vw, 0.98rem);

            letter-spacing: 0.02em;

            cursor: pointer;

            display: inline-flex;

            align-items: center;

            justify-content: center;

            gap: 10px;

            box-shadow: 0 8px 28px rgba(14, 80, 120, 0.4);

            transition: filter 0.2s, transform 0.15s ease;

            -webkit-tap-highlight-color: transparent;

        }

        .portal-login-btn:hover { filter: brightness(1.08); }

        .portal-login-btn:active { transform: scale(0.99); }

        .portal-login-btn:disabled { opacity: 0.55; cursor: not-allowed; transform: none; }

        .portal-login-btn svg.gl-ico {

            width: 1.15em;

            height: 1.15em;

            flex-shrink: 0;

            display: block;

        }

        .portal-login-status {

            min-height: 24px;

            font-size: clamp(0.82rem, 2.8vw, 0.88rem);

            line-height: 1.45;

            margin-bottom: 10px;

            color: rgba(230, 240, 250, 0.82);

        }

        .portal-login-status-err { color: #fecaca !important; }

        .portal-login-status-ok { color: #86efac !important; }

        .portal-login-phone-hint {

            font-size: clamp(0.75rem, 2.5vw, 0.82rem);

            color: rgba(200, 220, 240, 0.55);

            margin: 0 0 10px 0;

            line-height: 1.4;

        }

        @media (prefers-reduced-motion: reduce) {

            .portal-method-card,

            .portal-oauth-btn,

            .portal-login-btn,

            .savitarna-close.portal-login-close {

                transition: none;

            }

            .portal-method-card:active,

            .portal-oauth-btn:active { transform: none; }

        }

        .track-modal-overlay {

            display: none;

            position: fixed;

            inset: 0;

            z-index: 1000004;

            background: var(--modal-overlay-bg);

            backdrop-filter: blur(14px);

            -webkit-backdrop-filter: blur(14px);

            align-items: center;

            justify-content: center;

            padding: 14px;

        }

        .track-modal-overlay.is-open { display: flex; }

        .track-modal-box {

            position: relative;

            width: min(480px, 100%);

            max-height: calc(100vh - 28px);

            overflow-y: auto;

            border-radius: 24px;

            border: 1px solid rgba(56, 189, 248, 0.28);

            background: var(--modal-box-bg);

            box-shadow: var(--modal-box-shadow);

            padding: 22px 18px 18px;

            color: #f4f4f5;

            display: flex;

            flex-direction: column;

            align-items: center;

        }

        .track-modal-close {

            position: absolute;

            top: 10px;

            right: 10px;

            width: 34px;

            height: 34px;

            border-radius: 999px;

            border: 1px solid rgba(255,255,255,0.24);

            background: rgba(0,0,0,0.45);

            color: #fff;

            font-size: 1.1rem;

            cursor: pointer;

        }

        .track-logo-pulse {

            width: 72px;

            height: 72px;

            border-radius: 999px;

            margin: 2px auto 10px;

            display: flex;

            align-items: center;

            justify-content: center;

            border: 1px solid rgba(56, 189, 248, 0.45);

            background: rgba(56, 189, 248, 0.08);

            box-shadow: 0 0 0 0 rgba(56, 189, 248, 0.45);

            animation: trackPulse 1.8s ease-out infinite;

        }

        .track-logo-pulse img {

            width: 62%;

            height: 62%;

            object-fit: contain;

        }

        @keyframes trackPulse {

            0% { box-shadow: 0 0 0 0 rgba(56, 189, 248, 0.45); }

            70% { box-shadow: 0 0 0 16px rgba(56, 189, 248, 0); }

            100% { box-shadow: 0 0 0 0 rgba(56, 189, 248, 0); }

        }

        .track-modal-title {

            margin: 0 0 6px 0;

            font-size: 1.2rem;

            font-weight: 700;

            color: var(--calm-sky);

            text-align: center;

        }

        .track-modal-sub {

            margin: 0 0 12px 0;

            color: #b9e8ff;

            text-align: center;

            font-size: 0.9rem;

        }

        .track-modal-form { width: 100%; }

        .track-modal-input {

            width: 100%;

            border: 1px solid rgba(56, 189, 248, 0.26);

            border-radius: 14px;

            background: rgba(0,0,0,0.45);

            color: #fff;

            padding: 12px 14px;

            font-size: 0.95rem;

            margin-bottom: 10px;

        }

        .track-modal-btn {

            width: 100%;

            border: 1px solid rgba(56, 189, 248, 0.35);

            border-radius: 20px;

            padding: 11px 14px;

            background: linear-gradient(135deg, #173249, #1d4863);

            color: #ecf8ff;

            font-weight: 700;

            cursor: pointer;

        }

        .track-modal-status {

            min-height: 18px;

            margin-top: 8px;

            font-size: 0.8rem;

            text-align: center;

            color: #ff9a9a;

        }

        .call-modal-overlay {

            position: fixed;

            inset: 0;

            display: none;

            align-items: center;

            justify-content: center;

            padding: 16px;

            background: var(--modal-overlay-bg);

            z-index: 100001;

            backdrop-filter: blur(14px);

            -webkit-backdrop-filter: blur(14px);

        }

        .call-modal-overlay.is-open { display: flex; }

        .call-modal-box {

            width: min(680px, 100%);

            background: var(--modal-box-bg);

            border: 1px solid var(--modal-box-border);

            border-radius: 22px;

            box-shadow: var(--modal-box-shadow);

            overflow: hidden;

            padding: 16px;

            color: var(--text-heading);

            position: relative;

            max-height: calc(100dvh - 32px);

            overflow-y: auto;

            -webkit-overflow-scrolling: touch;

        }

        .call-modal-close {

            position: absolute;

            top: 10px;

            right: 10px;

            width: 34px;

            height: 34px;

            border-radius: 999px;

            border: 1px solid rgba(255,255,255,0.24);

            background: rgba(0,0,0,0.35);

            color: #fff;

            font-size: 18px;

            cursor: pointer;

        }

        .call-modal-close:hover { border-color: var(--calm-sky); color: var(--calm-sky); }

        .call-modal-title { margin: 2px 40px 8px 0; font-size: 1.2rem; color: var(--calm-sky); }

        .call-modal-copy { margin: 0 0 12px 0; color: var(--text-muted); font-size: 0.95rem; line-height: 1.45; }

        .call-modal-copy strong { color: var(--text-heading); }

        .call-modal-form { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }

        .call-modal-field-full { grid-column: 1 / -1; }

        .call-modal-label { display: block; font-size: 0.85rem; margin: 0 0 4px; color: var(--text-muted); }

        .call-modal-time-now {

            display: block;

            margin: 2px 0 2px;

            font-size: 0.78rem;

            color: #9fd9ff;

            letter-spacing: 0.01em;

        }

        .call-modal-input,

        .call-modal-textarea,

        .call-modal-select {

            width: 100%;

            border-radius: 12px;

            border: 1px solid rgba(255,255,255,0.15);

            background: rgba(0,0,0,0.35);

            color: var(--text-heading);

            padding: 11px 12px;

            outline: none;

            font-size: 0.95rem;

        }

        .call-modal-input[type="date"] {

            color-scheme: dark;

            accent-color: #38bdf8;

            background: rgba(2, 8, 14, 0.88);

        }

        /* Laiko pasirinkimas – stiklinis custom dropdown (ne native <select>) */

        .call-time-glass-wrap {

            position: relative;

        }

        .call-time-trigger {

            width: 100%;

            display: flex;

            align-items: center;

            justify-content: space-between;

            gap: 10px;

            text-align: left;

            cursor: pointer;

            border-radius: 12px;

            border: 1px solid rgba(255, 255, 255, 0.15);

            background: rgba(0, 0, 0, 0.35);

            color: var(--text-heading);

            padding: 11px 12px;

            font-size: 0.95rem;

            font-family: inherit;

            outline: none;

        }

        .call-time-trigger:hover {

            border-color: rgba(56, 189, 248, 0.35);

        }

        .call-time-glass-wrap.is-open .call-time-trigger {

            border-color: var(--calm-sky);

            box-shadow: 0 0 0 2px rgba(56, 189, 248, 0.16);

        }

        .call-time-display.is-placeholder {

            color: rgba(228, 225, 218, 0.55);

        }

        .call-time-chevron {

            flex-shrink: 0;

            display: flex;

            color: rgba(56, 189, 248, 0.85);

            transform: rotate(90deg);

            transition: transform 0.2s ease;

        }

        .call-time-chevron svg { display: block; }

        .call-time-glass-wrap.is-open .call-time-chevron { transform: rotate(-90deg); }

        .call-time-dropdown {

            position: fixed;

            z-index: 1000025;

            margin: 0;

            padding: 6px;

            list-style: none;

            border-radius: 14px;

            border: 1px solid rgba(56, 189, 248, 0.35);

            background: rgba(8, 14, 22, 0.82);

            backdrop-filter: blur(22px) saturate(1.15);

            -webkit-backdrop-filter: blur(22px) saturate(1.15);

            box-shadow: 0 24px 48px rgba(0, 0, 0, 0.48), 0 0 0 1px rgba(255, 255, 255, 0.05) inset;

            overflow-y: auto;

            -webkit-overflow-scrolling: touch;

        }

        .call-time-dropdown:focus { outline: none; }

        .call-time-option {

            display: block;

            width: 100%;

            border: none;

            border-radius: 10px;

            padding: 10px 12px;

            margin: 2px 0;

            text-align: left;

            font-size: 0.95rem;

            font-family: inherit;

            color: #eaf6ff;

            background: transparent;

            cursor: pointer;

        }

        .call-time-option:hover,

        .call-time-option:focus-visible {

            background: rgba(56, 189, 248, 0.16);

            outline: none;

            box-shadow: inset 0 0 0 1px rgba(56, 189, 248, 0.35);

        }

        .call-time-option--empty {

            cursor: default;

            color: rgba(228, 225, 218, 0.65);

            font-size: 0.88rem;

            line-height: 1.35;

        }

        .call-time-option--empty:hover,

        .call-time-option--empty:focus-visible {

            background: transparent;

            box-shadow: none;

        }

        .call-modal-select,

        .call-modal-select option,

        .call-modal-select optgroup {

            background: #06111a;

            color: #eaf6ff;

        }

        .call-modal-select option[disabled] {

            color: #9fb3c5;

        }

        .call-modal-input:focus,

        .call-modal-textarea:focus,

        .call-modal-select:focus {

            border-color: var(--calm-sky);

            box-shadow: 0 0 0 2px rgba(56,189,248,0.16);

        }

        .call-modal-textarea { min-height: 96px; resize: vertical; }

        .call-modal-actions { margin-top: 10px; display: flex; justify-content: flex-end; gap: 10px; }

        .call-modal-status { min-height: 20px; margin-top: 8px; color: #fca5a5; font-size: 0.9rem; }

        .call-modal-status.ok { color: #86efac; }

        @media (max-width: 640px) {

            .call-modal-overlay {

                align-items: flex-start;

                padding: calc(env(safe-area-inset-top) + 8px) 8px calc(env(safe-area-inset-bottom) + 8px);

            }

            .call-modal-box {

                width: 100%;

                border-radius: 16px;

                padding: 12px;

                max-height: calc(100dvh - 16px);

            }

            .call-modal-form { grid-template-columns: 1fr; }

            .call-modal-actions .btn { width: 100%; }

        }

        .sav-login-tabs {

            display: flex;

            gap: 8px;

            margin-bottom: 10px;

        }

        .sav-login-tab {

            flex: 1;

            border: 1px solid rgba(255,255,255,0.16);

            border-radius: 12px;

            background: rgba(0,0,0,0.35);

            color: #aaa;

            padding: 10px 8px;

            font-size: 0.82rem;

            cursor: pointer;

        }

        .sav-login-tab.is-active {

            border-color: rgba(56, 189, 248, 0.6);

            color: var(--calm-sky);

            background: rgba(56, 189, 248, 0.1);

        }

        .sav-input {

            width: 100%;

            border: 1px solid rgba(255,255,255,0.16);

            border-radius: 12px;

            background: rgba(0,0,0,0.45);

            color: #fff;

            padding: 11px 12px;

            font-size: 0.92rem;

            margin-bottom: 10px;

        }

        .sav-hint {

            font-size: 0.78rem;

            color: #a1a1aa;

            margin-bottom: 10px;

        }

        .sav-btn {

            width: 100%;

            border: 1px solid rgba(56, 189, 248, 0.35);

            border-radius: 20px;

            padding: 11px 14px;

            background: rgba(56, 189, 248, 0.08);

            color: var(--calm-sky);

            font-weight: 700;

            cursor: pointer;

            margin-top: 4px;

        }

        .sav-btn.solid {

            background: linear-gradient(135deg, #a5b68d, #b8c79f);

            color: #000;

            border: none;

        }

        .sav-status {

            min-height: 18px;

            margin-top: 8px;

            font-size: 0.8rem;

            color: #a1a1aa;

        }

        .sav-status.error { color: #ff8080; }

        .sav-status.success { color: #80e080; }

        .sav-dash {

            border: 1px solid rgba(56, 189, 248, 0.2);

            border-radius: 16px;

            padding: 12px;

            background: rgba(56, 189, 248, 0.06);

            display: none;

            margin-top: 8px;

        }

        .sav-dash-row {

            display: flex;

            justify-content: space-between;

            gap: 10px;

            font-size: 0.86rem;

            padding: 4px 0;

        }

        .sav-dash-row span:first-child { color: #a1a1aa; }

        .sav-dash-row span:last-child { color: #fff; text-align: right; }

        .sav-actions {

            display: flex;

            gap: 8px;

            margin-top: 12px;

        }

        .sav-actions .sav-btn { margin-top: 0; font-size: 0.84rem; }



        .contact-email-modal-overlay {

            display: none;

            position: fixed;

            inset: 0;

            background: var(--modal-overlay-bg);

            backdrop-filter: blur(10px);

            -webkit-backdrop-filter: blur(10px);

            z-index: 1000000;

            justify-content: center;

            align-items: center;

            padding: 20px;

            overflow-y: auto;

        }

        @media (max-width: 480px) {

            .contact-email-modal-overlay { padding: 12px 10px; align-items: flex-start; }

            .contact-email-modal-box { max-width: 100%; border-radius: 20px; }

            .contact-email-modal-header, .contact-email-modal-body { padding: 16px; }

        }

        .contact-email-modal-overlay.is-open { display: flex; }



        /* AI chat modalas – prisitaiko prie bet kokio dydžio (įskaitą labai mažus) ekranus */

        .ai-chat-modal-overlay {

            display: none;

            position: fixed;

            inset: 0;

            background: var(--modal-overlay-bg);

            backdrop-filter: blur(12px);

            -webkit-backdrop-filter: blur(12px);

            z-index: 1000005;

            justify-content: center;

            align-items: center;

            padding: max(12px, env(safe-area-inset-top, 12px)) max(12px, env(safe-area-inset-right, 12px)) max(12px, env(safe-area-inset-bottom, 12px)) max(12px, env(safe-area-inset-left, 12px));

            overflow: hidden;

            box-sizing: border-box;

        }

        .ai-chat-modal-overlay.is-open { display: flex; }

        .ai-chat-modal-box {

            background: var(--modal-box-bg);

            border: 1px solid var(--modal-box-border);

            border-radius: 22px;

            width: 100%;

            max-width: 520px;

            max-height: min(88vh, 640px);

            max-height: min(92dvh, 640px);

            display: flex;

            flex-direction: column;

            min-height: 0;

            min-width: 0;

            box-shadow: var(--modal-box-shadow);

            overflow: hidden;

        }

        .ai-chat-modal-body {

            flex: 1 1 0%;

            min-height: 0;

            overflow-x: hidden;

            overflow-y: auto;

            -webkit-overflow-scrolling: touch;

            overscroll-behavior: contain;

            display: flex;

            flex-direction: column;

            gap: 0;

            padding-bottom: 12px;

        }

        .ai-chat-modal-footer {

            flex-shrink: 0;

            min-width: 0;

            border-top: 1px solid rgba(255, 255, 255, 0.1);

            padding-bottom: max(10px, env(safe-area-inset-bottom, 0px));

            background: var(--modal-box-bg);

        }

        .ai-chat-modal-header {

            display: flex;

            justify-content: space-between;

            align-items: center;

            padding: 16px 18px;

            border-bottom: 1px solid rgba(255,255,255,0.1);

            gap: 10px;

            flex-shrink: 0;

            min-width: 0;

            background: var(--modal-box-bg);

            position: relative;

            z-index: 1;

        }

        .ai-chat-modal-title {

            margin: 0;

            font-size: 1.15rem;

            font-weight: 700;

            color: var(--text-heading);

            line-height: 1.25;

            overflow: hidden;

            text-overflow: ellipsis;

        }

        .ai-chat-modal-close {

            border: none;

            background: transparent;

            color: var(--text-muted);

            font-size: 1.6rem;

            line-height: 1;

            cursor: pointer;

            padding: 8px;

            min-width: 44px;

            min-height: 44px;

            box-sizing: border-box;

            border-radius: 8px;

            flex-shrink: 0;

        }

        .ai-chat-modal-close:hover { color: var(--text-heading); }

        .ai-chat-log {

            flex: 0 0 auto;

            min-height: 72px;

            overflow-x: hidden;

            overflow-y: visible;

            padding: 12px 16px;

            font-size: 0.92rem;

            line-height: 1.45;

            color: var(--text);

        }

        .ai-chat-payer-row,

        .ai-chat-fault-details,

        .ai-chat-file-chips {

            flex-shrink: 0;

            min-width: 0;

        }

        .ai-chat-modal-footer .ai-chat-input-row,

        .ai-chat-modal-footer .ai-chat-speak-row {

            flex-shrink: 0;

            min-width: 0;

        }

        .ai-chat-msg { margin: 0 0 10px 0; padding: 10px 12px; border-radius: 12px; }

        .ai-chat-msg--user {

            margin-left: 18px;

            background: rgba(56, 189, 248, 0.12);

            border: 1px solid rgba(56, 189, 248, 0.22);

            text-align: right;

        }

        .ai-chat-msg--bot {

            margin-right: 18px;

            background: rgba(255,255,255,0.04);

            border: 1px solid rgba(255,255,255,0.08);

        }

        .ai-chat-msg--thinking { opacity: 0.82; font-style: italic; }

        .ai-chat-msg--intro {

            background: rgba(255, 193, 7, 0.12);

            border: 1px solid rgba(255, 193, 7, 0.35);

            font-size: 0.95rem;

            line-height: 1.45;

        }

        .ai-chat-intro-line {

            display: block;

            min-height: 1.35em;

            margin: 0;

        }

        .ai-chat-intro-cursor {

            display: inline-block;

            margin-left: 1px;

            color: rgba(255, 193, 7, 0.9);

            font-weight: 300;

            animation: aiIntroCursorBlink 0.85s step-end infinite;

        }

        @keyframes aiIntroCursorBlink {

            50% { opacity: 0; }

        }

        .ai-chat-disclaimer {

            flex-shrink: 0;

            padding: 4px 16px 10px;

            font-size: 0.9rem;

            line-height: 1.5;

            color: var(--text-muted);

            min-width: 0;

            overflow-wrap: anywhere;

            word-break: break-word;

        }

        .ai-chat-disclaimer .ai-chat-open-email {

            color: #7dd3fc;

            text-decoration: underline;

            text-underline-offset: 2px;

            cursor: pointer;

        }

        .ai-chat-disclaimer .ai-chat-open-email:hover {

            color: #bae6fd;

        }

        .ai-chat-payer-row {

            padding: 0 16px 8px;

            border-top: 1px solid rgba(255,255,255,0.06);

        }

        .ai-chat-payer-row label {

            display: block;

            font-size: 0.78rem;

            color: var(--text-muted);

            margin-bottom: 4px;

        }

        .ai-chat-payer-row input {

            width: 100%;

            box-sizing: border-box;

            padding: 8px 12px;

            border-radius: 10px;

            border: 1px solid rgba(255,255,255,0.12);

            background: rgba(0,0,0,0.2);

            color: var(--text);

            font-family: inherit;

            font-size: 0.88rem;

        }

        .ai-chat-payer-row input::placeholder { color: rgba(255,255,255,0.3); }

        .ai-chat-fault-details {

            margin: 0 16px 10px;

            border: 1px solid rgba(255, 255, 255, 0.12);

            border-radius: 14px;

            padding: 10px 14px;

            background: rgba(0, 0, 0, 0.18);

        }

        .ai-chat-fault-details summary {

            cursor: pointer;

            font-size: 0.86rem;

            color: var(--text-muted);

            list-style-position: outside;

        }

        .ai-chat-fault-details summary::-webkit-details-marker { color: var(--text-muted); }

        .ai-chat-fault-inner {

            padding-top: 12px;

            display: flex;

            flex-direction: column;

            gap: 6px;

        }

        .ai-chat-fault-inner label {

            font-size: 0.76rem;

            color: var(--text-muted);

            margin-top: 4px;

        }

        .ai-chat-fault-inner input,

        .ai-chat-fault-inner select,

        .ai-chat-fault-inner textarea {

            width: 100%;

            box-sizing: border-box;

            padding: 8px 12px;

            border-radius: 10px;

            border: 1px solid rgba(255, 255, 255, 0.12);

            background: rgba(0, 0, 0, 0.22);

            color: var(--text);

            font-family: inherit;

            font-size: 0.88rem;

        }

        .ai-chat-fault-inner select {

            color-scheme: dark;

            background: #06111a;

            color: #eaf6ff;

        }

        .ai-chat-fault-inner select option,

        .ai-chat-fault-inner select optgroup {

            background: #06111a;

            color: #eaf6ff;

        }

        .ai-chat-fault-inner select:focus {

            border-color: var(--calm-sky);

            box-shadow: 0 0 0 2px rgba(56, 189, 248, 0.16);

        }

        .ai-chat-modal-box,

        .ai-chat-fault-details {

            color-scheme: dark;

        }

        .ai-chat-fault-inner textarea { resize: vertical; min-height: 64px; }

        .ai-chat-fault-send {

            margin-top: 8px;

            padding: 10px 16px;

            border-radius: 12px;

            border: none;

            background: rgba(251, 191, 36, 0.25);

            color: #fef3c7;

            font-weight: 700;

            cursor: pointer;

            font-family: inherit;

            font-size: 0.9rem;

        }

        .ai-chat-fault-send:hover { background: rgba(251, 191, 36, 0.38); }

        .ai-chat-fault-send:disabled { opacity: 0.5; cursor: not-allowed; }

        .ai-chat-fault-msg { font-size: 0.8rem; color: var(--text-muted); min-height: 1.2em; }

        .ai-chat-input-row {

            display: flex;

            flex-wrap: wrap;

            align-items: flex-end;

            gap: 8px;

            padding: 12px 16px 16px;

            border-top: 1px solid rgba(255,255,255,0.08);

        }

        .ai-chat-modal-footer .ai-chat-input-row {

            border-top: none;

            padding-top: 12px;

            padding-bottom: 10px;

        }

        .ai-chat-input-row input[type="text"] {

            flex: 1 1 140px;

            min-width: 0;

            padding: 10px 14px;

            border-radius: 999px;

            border: 1px solid rgba(255,255,255,0.15);

            background: rgba(0,0,0,0.25);

            color: var(--text);

            font-family: inherit;

            font-size: 0.95rem;

        }

        .ai-chat-input-row textarea#aiChatInput,

        .ai-chat-input-row textarea {

            flex: 1 1 140px;

            min-width: 0;

            padding: 10px 14px;

            border-radius: 16px;

            border: 1px solid rgba(255,255,255,0.15);

            background: rgba(0,0,0,0.25);

            color: var(--text);

            font-family: inherit;

            font-size: 0.95rem;

            line-height: 1.45;

            resize: none;

            /* Viena eilutė iš pradžių – aukštį didina JS pagal tekstą */

            min-height: 2.55rem;

            max-height: min(50vh, 320px);

            overflow-y: hidden;

            box-sizing: border-box;

            /* Ilgi įklijavimai: slinktis lieka prieinama, bet juosta paslėpta */

            scrollbar-width: none;

            -ms-overflow-style: none;

        }

        .ai-chat-input-row textarea#aiChatInput::-webkit-scrollbar,

        .ai-chat-input-row textarea::-webkit-scrollbar {

            width: 0;

            height: 0;

            display: none;

        }

        .ai-chat-input-row textarea#aiChatInput.scrollable-ai-input,

        .ai-chat-input-row textarea.scrollable-ai-input {

            overflow-y: auto;

        }

        .ai-chat-input-row input::placeholder { color: rgba(255,255,255,0.35); }

        .ai-chat-input-row textarea::placeholder { color: rgba(255,255,255,0.35); }

        .ai-chat-visually-hidden {

            position: absolute;

            width: 1px;

            height: 1px;

            padding: 0;

            margin: -1px;

            overflow: hidden;

            clip: rect(0, 0, 0, 0);

            white-space: nowrap;

            border: 0;

        }

        .ai-chat-file-chips {

            display: flex;

            flex-wrap: wrap;

            gap: 6px;

            padding: 0 16px 8px;

            min-height: 0;

        }

        .ai-chat-file-chip {

            font-size: 0.78rem;

            padding: 4px 10px;

            border-radius: 999px;

            background: rgba(255, 255, 255, 0.08);

            border: 1px solid rgba(255, 255, 255, 0.12);

            display: inline-flex;

            align-items: center;

            gap: 6px;

            max-width: 100%;

        }

        .ai-chat-file-chip button {

            border: none;

            background: transparent;

            color: var(--text-muted);

            cursor: pointer;

            padding: 0 4px;

            font-size: 1rem;

            line-height: 1;

        }

        label.ai-chat-icon-btn {

            cursor: pointer;

        }

        .ai-chat-icon-btn {

            flex-shrink: 0;

            display: inline-flex;

            align-items: center;

            justify-content: center;

            width: 44px;

            height: 44px;

            border-radius: 999px;

            border: 1px solid rgba(255, 255, 255, 0.15);

            background: rgba(0, 0, 0, 0.25);

            color: var(--text);

            cursor: pointer;

            font-family: inherit;

        }

        .ai-chat-icon-btn:hover {

            border-color: rgba(255, 255, 255, 0.28);

        }

        .ai-chat-icon-btn:disabled {

            opacity: 0.4;

            cursor: not-allowed;

        }

        .ai-chat-icon-btn.is-recording {

            border-color: #f87171;

            color: #fecaca;

            box-shadow: 0 0 0 2px rgba(248, 113, 113, 0.35);

        }

        .ai-chat-speak-row {

            display: flex;

            align-items: center;

            padding: 6px 16px 0;

            gap: 8px;

        }

        .ai-chat-speak-row label {

            font-size: 0.82rem;

            color: var(--text-muted);

            cursor: pointer;

            display: flex;

            align-items: center;

            gap: 8px;

            user-select: none;

        }

        .ai-chat-speak-row input[type="checkbox"] {

            width: 16px;

            height: 16px;

            accent-color: var(--cta);

        }

        .ai-chat-msg-body { white-space: pre-wrap; word-break: break-word; }

        .ai-chat-msg-actions { margin-top: 8px; display: flex; gap: 8px; flex-wrap: wrap; }

        .ai-chat-msg-speak {

            font-size: 0.75rem;

            padding: 4px 10px;

            border-radius: 8px;

            border: 1px solid rgba(255, 255, 255, 0.15);

            background: rgba(0, 0, 0, 0.15);

            color: var(--text-muted);

            cursor: pointer;

            font-family: inherit;

        }

        .ai-chat-msg-speak:hover { color: var(--text); }

        .ai-chat-send {

            padding: 10px 18px;

            border-radius: 999px;

            border: none;

            background: var(--cta);

            color: var(--cta-text);

            font-weight: 700;

            cursor: pointer;

            font-family: inherit;

            font-size: 0.9rem;

        }

        .ai-chat-send:hover { background: var(--cta-hover); }

        .ai-chat-send:disabled { opacity: 0.55; cursor: not-allowed; }

        .ai-chat-order-form {

            margin: 8px 0 0;

            padding: 10px;

            border: 1px solid rgba(255,255,255,0.12);

            border-radius: 12px;

            background: rgba(255,255,255,0.03);

            display: none;

        }

        .ai-chat-order-form.is-open { display: block; }

        .ai-chat-order-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }

        .ai-chat-order-grid .full { grid-column: 1 / -1; }

        .ai-chat-order-personal-code-nudge {

            display: block;

            margin: 0 0 6px 0;

            font-size: 0.78rem;

            line-height: 1.35;

            color: rgba(255, 255, 255, 0.55);

            font-weight: 400;

        }

        .ai-chat-order-form input, .ai-chat-order-form select {

            width: 100%;

            border-radius: 10px;

            border: 1px solid rgba(255,255,255,0.16);

            background: rgba(0,0,0,0.26);

            color: var(--text);

            padding: 8px 10px;

            font: inherit;

        }

        .ai-chat-order-form select option {

            background: #0b1220;

            color: #e5e7eb;

        }

        .ai-chat-order-form select:focus {

            outline: none;

            border-color: rgba(14, 165, 233, 0.55);

            box-shadow: 0 0 0 2px rgba(14, 165, 233, 0.18);

        }

        .ai-chat-order-actions { margin-top: 8px; display: flex; gap: 8px; }

        .ai-chat-term-suggest {

            grid-column: 1 / -1;

            border: 1px solid rgba(255,255,255,0.14);

            border-radius: 10px;

            background: rgba(7, 12, 20, 0.96);

            max-height: 180px;

            overflow: auto;

            display: none;

        }

        .ai-chat-term-suggest.is-open { display: block; }

        .ai-chat-term-suggest-btn {

            width: 100%;

            text-align: left;

            padding: 8px 10px;

            background: transparent;

            color: var(--text);

            border: 0;

            border-bottom: 1px solid rgba(255,255,255,0.08);

            cursor: pointer;

            font: inherit;

        }

        .ai-chat-term-suggest-btn:last-child { border-bottom: 0; }

        .ai-chat-term-suggest-btn:hover { background: rgba(14, 165, 233, 0.12); }

        .ai-chat-order-submit {

            border: 0;

            border-radius: 10px;

            background: var(--cta);

            color: var(--cta-text);

            padding: 8px 12px;

            font-weight: 700;

            cursor: pointer;

        }

        .ai-chat-order-cancel {

            border: 1px solid rgba(255,255,255,0.2);

            border-radius: 10px;

            background: transparent;

            color: var(--text);

            padding: 8px 12px;

            cursor: pointer;

        }



        @media (max-width: 520px) {

            .ai-chat-modal-overlay.is-open {

                align-items: stretch;

                justify-content: stretch;

                padding: max(6px, env(safe-area-inset-top, 6px)) max(6px, env(safe-area-inset-right, 6px)) max(6px, env(safe-area-inset-bottom, 6px)) max(6px, env(safe-area-inset-left, 6px));

            }

            .ai-chat-modal-box {

                max-width: none;

                width: 100%;

                max-height: none;

                height: calc(100vh - 12px);

                height: calc(100dvh - 12px);

                border-radius: 16px;

            }

            .ai-chat-modal-header {

                padding: 12px 14px;

            }

            .ai-chat-modal-title {

                font-size: 1.05rem;

            }

            .ai-chat-modal-body {

                flex: 1 1 0%;

                min-height: 0;

            }

            .ai-chat-log {

                padding: 10px 12px;

                font-size: 0.88rem;

                flex: 0 0 auto;

                min-height: 56px;

            }

            .ai-chat-msg--user { margin-left: 10px; }

            .ai-chat-msg--bot { margin-right: 10px; }

            .ai-chat-disclaimer {

                padding: 4px 12px 8px;

                font-size: 0.82rem;

            }

            .ai-chat-payer-row,

            .ai-chat-fault-details {

                padding-left: 12px;

                padding-right: 12px;

            }

            .ai-chat-fault-details {

                margin-left: 12px;

                margin-right: 12px;

            }

            .ai-chat-file-chips {

                padding-left: 12px;

                padding-right: 12px;

            }

            .ai-chat-input-row {

                padding: 10px 12px 12px;

            }

            .ai-chat-modal-footer .ai-chat-speak-row {

                padding-left: 12px;

                padding-right: 12px;

                padding-bottom: 0;

            }

        }



        @media (max-width: 360px) {

            .ai-chat-modal-box {

                border-radius: 12px;

            }

            .ai-chat-msg--intro {

                font-size: 0.86rem;

            }

            .ai-chat-input-row input[type="text"] {

                font-size: 16px;

            }

            .ai-chat-input-row textarea#aiChatInput,

            .ai-chat-input-row textarea {

                font-size: 16px;

            }

        }



        @media (max-height: 520px) {

            .ai-chat-modal-box {

                max-height: calc(100vh - 8px);

                max-height: calc(100dvh - 8px);

                height: calc(100vh - 8px);

                height: calc(100dvh - 8px);

                min-height: 0;

            }

            .ai-chat-modal-header {

                padding: 8px 12px;

            }

            .ai-chat-modal-title {

                font-size: 1rem;

            }

            .ai-chat-disclaimer {

                font-size: 0.78rem;

                padding-top: 2px;

                padding-bottom: 6px;

            }

            .ai-chat-modal-body {

                flex: 1 1 0%;

                min-height: 0;

            }

            .ai-chat-log {

                font-size: 0.85rem;

                padding: 8px 12px;

                flex: 0 0 auto;

                min-height: 48px;

            }

        }



        /* Svarbi informacija – pop-up (pagrindinė tema) */

        .info-modal-overlay {

            display: none;

            position: fixed;

            inset: 0;

            z-index: 999999;

            background: var(--modal-overlay-bg);

            backdrop-filter: blur(12px);

            -webkit-backdrop-filter: blur(12px);

            align-items: center;

            justify-content: center;

            padding: 20px;

        }

        .info-modal-overlay.is-open { display: flex; }

        .info-modal-box {

            max-width: 520px;

            width: 100%;

            background: var(--modal-box-bg);

            backdrop-filter: blur(12px);

            -webkit-backdrop-filter: blur(12px);

            border: 1px solid var(--accent-border);

            border-radius: var(--glass-radius);

            padding: 28px 24px;

            box-shadow: var(--modal-box-shadow), 0 0 0 1px rgba(255,255,255,0.06) inset;

        }

        .info-modal-langs {

            display: flex;

            justify-content: center;

            gap: 0;

            margin-bottom: 20px;

        }

        .info-modal-langs .info-lang-btn {

            padding: 8px 20px;

            border: 1px solid var(--accent-border);

            background: transparent;

            color: var(--text-muted);

            font-weight: 600;

            cursor: pointer;

            font-size: 0.95rem;

            font-family: inherit;

        }

        .info-modal-langs .info-lang-btn:hover { color: var(--text); }

        .info-modal-langs .info-lang-btn:first-child { border-radius: 10px 0 0 10px; }

        .info-modal-langs .info-lang-btn:last-child { border-radius: 0 10px 10px 0; }

        .info-modal-langs .info-lang-btn.active { background: var(--accent-dim); color: var(--text-heading); border-color: var(--accent-border); }

        .info-modal-title { font-size: 1.25rem; font-weight: 700; color: var(--text-heading); margin-bottom: 16px; text-align: center; }

        .info-modal-body { color: var(--text); font-size: 0.98rem; line-height: 1.55; margin-bottom: 20px; text-align: center; }

        .info-modal-body p { margin: 0 0 12px 0; }

        .info-modal-body a { color: var(--calm-sky); text-decoration: underline; display: inline-block; }

        .info-modal-body a:hover { color: var(--text-heading); }

        .info-modal-check { display: flex; align-items: center; justify-content: center; gap: 10px; margin-bottom: 20px; cursor: pointer; }

        .info-modal-check input { width: 20px; height: 20px; accent-color: var(--accent); cursor: pointer; }

        .info-modal-check span { color: var(--text); font-size: 0.9rem; }

        .info-modal-btn { display: block; width: 100%; padding: 14px 24px; background: var(--cta); color: var(--cta-text); border: none; border-radius: 999px; font-weight: 700; font-size: 1rem; cursor: pointer; font-family: inherit; }

        .info-modal-btn:hover { background: var(--cta-hover); }



        .contact-email-modal-box {

            background: var(--modal-box-bg);

            backdrop-filter: blur(12px);

            -webkit-backdrop-filter: blur(12px);

            border: 1px solid var(--modal-box-border);

            border-radius: 28px;

            max-width: 480px;

            width: 100%;

            max-height: 90vh;

            overflow-y: auto;

            box-shadow: var(--modal-box-shadow);

        }

        .contact-email-modal-header {

            display: flex;

            justify-content: space-between;

            align-items: center;

            padding: 20px 24px;

            border-bottom: 1px solid rgba(255,255,255,0.1);

        }

        .contact-email-modal-title { font-size: 1.5rem; color: var(--text-heading); text-shadow: 0 2px 10px rgba(0,0,0,0.55); }

        .contact-email-modal-close {

            background: none;

            border: none;

            color: #ccc;

            font-size: 1.75rem;

            cursor: pointer;

            padding: 0 4px;

        }

        .contact-email-modal-close:hover { color: var(--text-heading); }



        .contact-email-modal-body { padding: 24px; }

        .contact-email-modal-body label {

            display: block;

            margin-top: 18px;

            margin-bottom: 8px;

            color: #ddd;

            font-size: 1.1rem;

        }

        .contact-email-modal-body label:first-child { margin-top: 0; }

        .contact-email-modal-body input,

        .contact-email-modal-body textarea {

            width: 100%;

            padding: 14px 16px;

            border: 1px solid rgba(255,255,255,0.2);

            border-radius: 8px;

            background: rgba(0,0,0,0.4);

            color: var(--text-heading);

            font-size: 1.1rem;

        }

        .contact-email-modal-body textarea { min-height: 140px; resize: vertical; }

        .contact-email-form-footer {

            margin-top: 24px;

            display: flex;

            justify-content: flex-end;

        }

        .contact-email-form-footer button[type="submit"] {

            padding: 14px 22px;

            background: rgba(165, 182, 141, 0.2);

            color: var(--text-heading);

            border: 1px solid var(--accent-border);

            border-radius: 10px;

            font-weight: 600;

            font-size: 1.1rem;

            cursor: pointer;

            transition: transform 0.2s ease, background 0.2s ease, border-color 0.2s ease;

        }

        .contact-email-form-footer button[type="submit"]:hover:not(:disabled) {

            transform: scale(1.02);

            background: rgba(165, 182, 141, 0.28);

            border-color: var(--accent);

        }

        .contact-email-form-footer button[type="submit"]:disabled { opacity: 0.6; cursor: not-allowed; }

        .contact-email-error { color: #e74c3c; font-size: 1.05rem; margin-top: 10px; }



        .contact-captcha-wrap { margin-top: 20px; }

        .contact-captcha-display {

            display: block;

            margin-bottom: 10px;

            letter-spacing: 0.25em;

            font-size: 1.6rem;

            font-weight: 700;

            color: var(--calm-sky);

            font-family: ui-monospace, monospace;

        }

        .contact-captcha-wrap label { margin-top: 10px; margin-bottom: 6px; }

        .contact-captcha-wrap input { max-width: 180px; }



        .speedtest-modal-overlay {

            display: none;

            position: fixed;

            inset: 0;

            z-index: 1000002;

            background: var(--modal-overlay-bg);

            backdrop-filter: blur(14px);

            -webkit-backdrop-filter: blur(14px);

            align-items: center;

            justify-content: center;

            padding: 14px;

        }

        .speedtest-modal-overlay.is-open { display: flex; }

        .speedtest-modal-box {

            width: min(980px, 100%);

            max-height: calc(100vh - 28px);

            overflow: auto;

            border-radius: 18px;

            border: 1px solid var(--modal-box-border);

            background: var(--modal-box-bg);

            box-shadow: var(--modal-box-shadow);

            padding: 14px;

            position: relative;

        }

        .speedtest-modal-close {

            position: absolute;

            top: 10px;

            right: 10px;

            width: 34px;

            height: 34px;

            border-radius: 999px;

            border: 1px solid rgba(255,255,255,0.24);

            background: rgba(0,0,0,0.45);

            color: var(--text-heading);

            font-size: 1.1rem;

            line-height: 1;

            cursor: pointer;

        }

        .speedtest-modal-close:hover { background: rgba(56, 189, 248, 0.12); border-color: var(--calm-sky); }

        .speedtest-modal-title {

            margin: 0 34px 10px 0;

            color: var(--text-heading);

            font-size: 1.15rem;

            font-weight: 700;

        }

        .speedtest-layout {

            display: grid;

            grid-template-columns: 1fr 1fr;

            gap: 14px;

        }

        .speedtest-panel {

            border: 1px solid rgba(255,255,255,0.1);

            border-radius: 14px;

            background: rgba(255,255,255,0.04);

            padding: 12px;

        }

        .speedtest-kicker {

            font-size: 10px;

            letter-spacing: 1.5px;

            text-transform: uppercase;

            color: var(--calm-sky);

            opacity: .9;

            margin-bottom: 6px;

        }

        .speedtest-client {

            font-size: 0.86rem;

            color: var(--text-muted);

            line-height: 1.62;

        }

        .speedtest-client b { color: var(--text-heading); }

        .speedtest-via {

            font-size: 0.78rem;

            color: var(--calm-sky);

            margin-top: 3px;

            display: inline-block;

        }

        .speedtest-isp { color: var(--calm-sky); font-size: 0.95rem; }

        .speedtest-explain {

            margin-top: 10px;

            border: 1px solid rgba(56,189,248,.24);

            border-radius: 10px;

            background: rgba(56,189,248,.08);

            padding: 8px 10px;

            font-size: 0.77rem;

            line-height: 1.45;

            color: var(--text-soft);

            text-align: center;

        }

        .speedtest-server {

            margin-top: 10px;

            border: 1px solid rgba(255,255,255,0.1);

            border-radius: 10px;

            background: rgba(255,255,255,0.02);

            padding: 10px;

            font-size: 0.82rem;

            color: var(--text-muted);

            line-height: 1.5;

        }

        .speedtest-server strong { color: var(--text-heading); }

        .speedtest-tabs {

            display: flex;

            max-width: 260px;

            margin: 0 auto 10px;

            border: 1px solid rgba(255,255,255,.22);

            border-radius: 10px;

            overflow: hidden;

        }

        .speedtest-tab {

            flex: 1;

            border: 0;

            background: transparent;

            color: var(--text-muted);

            padding: 8px 6px;

            font-size: 12px;

            cursor: pointer;

        }

        .speedtest-tab.is-active {

            background: #b8c79f;

            color: #050608;

            font-weight: 700;

        }

        #stGauge {

            width: 100%;

            max-width: 300px;

            display: block;

            margin: 0 auto;

        }

        .speedtest-mode-label {

            margin-top: 4px;

            font-size: 10px;

            letter-spacing: 1px;

            text-transform: uppercase;

            color: var(--text-soft);

            text-align: center;

        }

        .speedtest-speed {

            margin-top: 2px;

            text-align: center;

            line-height: 1;

        }

        .speedtest-speed-val {

            font-size: clamp(30px, 7vw, 52px);

            font-weight: 700;

            color: var(--text-heading);

        }

        .speedtest-speed-unit {

            margin-top: 2px;

            font-size: 13px;

            color: var(--text-muted);

        }

        .speedtest-ping {

            margin-top: 10px;

            display: flex;

            gap: 12px;

            justify-content: center;

            color: var(--text-muted);

            font-size: 12px;

        }

        .speedtest-ping b { color: var(--calm-sky); }

        .speedtest-btn {

            margin-top: 12px;

            width: 100%;

            border: 1px solid rgba(255,255,255,0.14);

            border-radius: 10px;

            padding: 12px 16px;

            background: #b8c79f;

            color: #050608;

            font-size: 0.95rem;

            font-weight: 700;

            cursor: pointer;

        }

        .speedtest-btn:disabled { opacity: .45; cursor: default; }

        .speedtest-status {

            margin-top: 6px;

            min-height: 16px;

            text-align: center;

            color: var(--text-soft);

            font-size: 0.78rem;

        }

        @media (max-width: 860px) {

            .speedtest-layout { grid-template-columns: 1fr; }

        }



        .fast-order-modal-overlay {

            display: none;

            position: fixed;

            inset: 0;

            z-index: 10021;

            background: var(--modal-overlay-bg);

            backdrop-filter: blur(14px);

            -webkit-backdrop-filter: blur(14px);

            align-items: center;

            justify-content: center;

            padding: 18px;

        }

        .fast-order-modal-overlay.is-open { display: flex; }

        .fast-order-modal-box {

            position: relative;

            width: min(1080px, 100%);

            max-height: calc(100vh - 24px);

            overflow-y: auto;

            border-radius: var(--glass-radius);

            border: 1px solid var(--modal-box-border);

            background: var(--modal-box-bg);

            backdrop-filter: blur(14px);

            -webkit-backdrop-filter: blur(14px);

            box-shadow: var(--modal-box-shadow);

            padding: 16px;

        }

        @media (max-width: 480px) {

            .fast-order-modal-overlay { padding: 10px 8px; align-items: flex-start; }

            .fast-order-modal-box { padding: 12px; max-height: calc(100vh - 20px); }

            .fast-order-close { top: 8px; right: 8px; width: 32px; height: 32px; font-size: 1rem; }

        }

        /* Prieš užsakymą: DUK (SIM / modemai) – stiklas kaip „Sek siuntą“ */

        .plan-order-disclaimer-overlay {

            display: none;

            position: fixed;

            inset: 0;

            z-index: 10025;

            align-items: center;

            justify-content: center;

            padding: max(12px, env(safe-area-inset-top, 0px)) max(12px, env(safe-area-inset-right, 0px)) max(12px, env(safe-area-inset-bottom, 0px)) max(12px, env(safe-area-inset-left, 0px));

            box-sizing: border-box;

            isolation: isolate;

        }

        .plan-order-disclaimer-overlay.active { display: flex; }

        .plan-order-disclaimer-box {

            position: relative;

            display: flex;

            flex-direction: column;

            width: min(520px, calc(100vw - 24px));

            max-height: min(calc(100dvh - 24px), calc(100vh - 24px));

            min-height: 0;

            overflow: hidden;

            border-radius: 24px;

            border: 1px solid rgba(56, 189, 248, 0.28);

            background: var(--modal-box-bg);

            backdrop-filter: blur(16px);

            -webkit-backdrop-filter: blur(16px);

            box-shadow: var(--modal-box-shadow), 0 0 0 1px rgba(255, 255, 255, 0.04) inset;

            padding: 18px 18px 14px;

            color: var(--text-heading, #f4f4f5);

        }

        .plan-order-disclaimer-close {

            position: absolute;

            top: 10px;

            right: 10px;

            width: 36px;

            height: 36px;

            border-radius: 999px;

            border: 1px solid rgba(255, 255, 255, 0.24);

            background: rgba(0, 0, 0, 0.45);

            color: #fff;

            font-size: 1.35rem;

            line-height: 1;

            cursor: pointer;

            display: flex;

            align-items: center;

            justify-content: center;

            z-index: 3;

        }

        .plan-order-disclaimer-close:hover {

            border-color: rgba(56, 189, 248, 0.55);

            color: var(--calm-sky, #38bdf8);

        }

        .plan-order-disclaimer-badge {

            flex-shrink: 0;

            width: clamp(44px, 10vw, 52px);

            height: clamp(44px, 10vw, 52px);

            margin: 0 auto 8px;

            border-radius: 999px;

            display: flex;

            align-items: center;

            justify-content: center;

            background: linear-gradient(145deg, rgba(56, 189, 248, 0.22), rgba(124, 58, 237, 0.18));

            border: 1px solid rgba(255, 255, 255, 0.2);

            box-shadow: 0 8px 28px rgba(0, 0, 0, 0.25);

            color: var(--calm-sky, #7dd3fc);

        }

        .plan-order-disclaimer-title {

            flex-shrink: 0;

            margin: 0 40px 10px 0;

            font-size: clamp(1rem, 2.8vw, 1.2rem);

            font-weight: 700;

            text-align: center;

            color: var(--text-heading, #f8fafc);

        }

        .plan-order-disclaimer-body {

            flex: 1 1 auto;

            min-height: 0;

            overflow-y: auto;

            overflow-x: hidden;

            -webkit-overflow-scrolling: touch;

            scrollbar-width: none;

            -ms-overflow-style: none;

            font-size: clamp(0.82rem, 2.4vw, 0.94rem);

            line-height: 1.5;

            color: var(--text-muted, #cbd5e1);

        }

        .plan-order-disclaimer-body::-webkit-scrollbar {

            width: 0;

            height: 0;

        }

        .plan-order-disclaimer-body p { margin: 0 0 10px; }

        .plan-order-disclaimer-body .plan-disclaimer-emph {

            margin-top: 10px;

            padding: 10px 12px;

            border-radius: 12px;

            background: rgba(56, 189, 248, 0.08);

            border: 1px solid rgba(56, 189, 248, 0.22);

            color: var(--text-heading, #e2e8f0);

        }

        .plan-order-disclaimer-body .plan-disclaimer-more { margin-bottom: 0; font-size: 0.85rem; opacity: 0.92; }

        .plan-order-disclaimer-body a { color: var(--calm-sky, #38bdf8); text-decoration: none; border-bottom: 1px solid rgba(56, 189, 248, 0.35); }

        .plan-order-disclaimer-body a:hover { color: var(--text-heading, #fff); border-bottom-color: rgba(56, 189, 248, 0.65); }

        .plan-order-disclaimer-ack {

            flex-shrink: 0;

            display: flex;

            align-items: flex-start;

            gap: 10px;

            margin: 12px 0 4px;

            padding: 8px 10px;

            border-radius: 12px;

            font-size: clamp(0.84rem, 2.2vw, 0.92rem);

            line-height: 1.4;

            color: var(--text-heading, #e2e8f0);

            cursor: pointer;

            transition: background-color 0.2s ease, box-shadow 0.2s ease;

        }

        .plan-order-disclaimer-ack input { margin-top: 3px; flex-shrink: 0; width: 18px; height: 18px; accent-color: var(--calm-sky, #38bdf8); }

        @keyframes plan-order-disclaimer-ack-warn {

            0%, 100% { box-shadow: 0 0 0 0 rgba(251, 146, 60, 0); background-color: transparent; }

            40% { box-shadow: 0 0 0 3px rgba(251, 146, 60, 0.65); background-color: rgba(251, 146, 60, 0.12); }

            70% { box-shadow: 0 0 0 6px rgba(251, 146, 60, 0.2); background-color: rgba(251, 146, 60, 0.08); }

        }

        .plan-order-disclaimer-ack.plan-order-disclaimer-ack--warn {

            animation: plan-order-disclaimer-ack-warn 0.45s ease-in-out 3;

        }

        @media (prefers-reduced-motion: reduce) {

            .plan-order-disclaimer-ack.plan-order-disclaimer-ack--warn {

                animation: none;

                box-shadow: 0 0 0 3px rgba(251, 146, 60, 0.55);

                background-color: rgba(251, 146, 60, 0.1);

            }

        }

        .plan-order-disclaimer-actions {

            flex-shrink: 0;

            display: flex;

            flex-wrap: wrap;

            gap: 10px;

            justify-content: flex-end;

            margin-top: 10px;

        }

        .plan-order-disclaimer-actions .btn { min-width: 120px; }

        @media (max-width: 480px) {

            .plan-order-disclaimer-box { padding: 14px 12px 12px; border-radius: 20px; }

            .plan-order-disclaimer-title { margin-right: 36px; }

            .plan-order-disclaimer-actions { flex-direction: column-reverse; }

            .plan-order-disclaimer-actions .btn { width: 100%; }

        }

        @media (max-height: 700px) {

            .plan-order-disclaimer-box { padding: 14px 14px 12px; border-radius: 18px; }

            .plan-order-disclaimer-body p { margin-bottom: 7px; }

            .plan-order-disclaimer-body .plan-disclaimer-emph { margin-top: 8px; padding: 8px 10px; }

        }

        /* Fast order modal links: nuosekli "calm" spalva (ne default mėlyna) */

        #fastOrderModal .fast-order-modal-box a:not(.btn),

        #fastOrderModal a:not(.btn) {

            color: var(--calm-sky) !important;

            text-decoration: none !important;

            border-bottom: 1px solid rgba(56, 189, 248, 0.32) !important;

        }

        #fastOrderModal .fast-order-modal-box a:not(.btn):hover,

        #fastOrderModal a:not(.btn):hover {

            color: var(--text-heading) !important;

            border-bottom-color: rgba(56, 189, 248, 0.65) !important;

            text-decoration: underline !important;

            text-underline-offset: 3px;

        }

        #fastOrderModal .fast-order-modal-box a:not(.btn):visited,

        #fastOrderModal a:not(.btn):visited {

            color: var(--calm-sky) !important;

        }

        #fastOrderWelcomeSavitarna,

        #fastOrderWelcomeSavitarna:visited,

        #fastOrderWelcomeSavitarna:hover,

        #fastOrderWelcomeSavitarna:focus {

            color: #1f2937 !important;

            text-decoration: none !important;

            border-bottom: none !important;

            box-shadow: none !important;

            outline: none !important;

        }

        .fast-order-close {

            position: absolute;

            top: 10px;

            right: 10px;

            width: 34px;

            height: 34px;

            border-radius: 999px;

            border: 1px solid rgba(255,255,255,0.22);

            background: rgba(0,0,0,0.45);

            color: var(--text-heading);

            font-size: 1.1rem;

            line-height: 1;

            cursor: pointer;

            display: inline-flex;

            align-items: center;

            justify-content: center;

        }

        .fast-order-close:hover { background: rgba(56, 189, 248, 0.12); border-color: var(--calm-sky); }

        .fast-order-modal-box.expanded { width: min(1080px, 100%); }

        .fast-order-modal-title {

            font-size: 1.2rem;

            font-weight: 700;

            margin-bottom: 4px;

            color: #7dd3fc;

            text-shadow: 0 0 10px rgba(56, 189, 248, 0.38);

        }

        #fastOrderModeQtyWrap.fast-order-sim-card {

            border-color: rgba(56,189,248,.9) !important;

            background: rgba(56,189,248,.12) !important;

            animation: fastModemPulse 1.5s ease-in-out infinite;

        }

        @keyframes fastModemPulse {

            0%, 100% {

                box-shadow: 0 0 0 0 rgba(56,189,248,0.18), inset 0 0 0 0 rgba(56,189,248,0.12);

            }

            50% {

                box-shadow: 0 0 0 7px rgba(56,189,248,0), 0 0 18px rgba(56,189,248,0.35), inset 0 0 18px rgba(56,189,248,0.08);

            }

        }

        .fast-order-terminal-item {

            display: flex;

            align-items: center;

            gap: 10px;

            padding: 10px 12px;

            margin-bottom: 8px;

            border-radius: 12px;

            border: 1px solid rgba(255,255,255,.12);

            background: rgba(255,255,255,.03);

            cursor: pointer;

            text-align: left;

            width: 100%;

            transition: border-color .15s, background .15s;

        }

        .fast-order-terminal-item:hover,

        .fast-order-terminal-item:focus {

            border-color: rgba(56,189,248,.6);

            background: rgba(56,189,248,.10);

        }

        .fast-order-terminal-item.is-selected {

            border-color: rgba(56,189,248,.95);

            background: rgba(56,189,248,.18);

        }

        .fast-order-terminal-item .term-icon {

            flex-shrink: 0;

            width: 36px;

            height: 36px;

            border-radius: 50%;

            background: rgba(56,189,248,.95);

            color: #06111a;

            display: flex;

            align-items: center;

            justify-content: center;

            font-size: 0.9rem;

        }

        .fast-order-terminal-item .term-body {

            flex: 1;

            min-width: 0;

            display: flex;

            flex-direction: column;

        }

        .fast-order-terminal-item .term-name,

        .fast-order-terminal-item .term-addr {

            display: block;

        }

        .fast-order-terminal-item .term-name {

            font-weight: 700;

            color: var(--text-heading);

            font-size: 0.9rem;

        }

        .fast-order-terminal-item .term-addr {

            font-size: 0.8rem;

            color: var(--text-muted);

            margin-top: 2px;

        }

        .fast-order-terminal-item .term-chevron {

            flex-shrink: 0;

            color: var(--text-muted);

            font-size: 0.8rem;

        }

        .fast-order-terminal-item:focus-visible {

            outline: 2px solid rgba(56,189,248,.75);

            outline-offset: 2px;

        }

        .fast-order-modal-sub { color: var(--text-muted); font-size: 0.92rem; margin-bottom: 5px; }

        /* Fast order copy: denser spacing than generic modals */
        #fastOrderModal .fast-order-modal-sub { line-height: 1.06; }

        .fast-order-personal-code-nudge {

            display: block;

            margin: 2px 0 8px 0;

            font-size: 0.8rem;

            line-height: 1.38;

            color: var(--text-muted, rgba(255, 255, 255, 0.58));

            font-weight: 400;

        }

        .fast-order-form { display: grid; gap: 10px; }

        .fast-order-form label { font-size: 0.88rem; color: var(--text-muted); }

        .fast-order-phone-row {

            display: flex; align-items: center; gap: 8px; flex-wrap: wrap;

        }

        .fast-order-phone-prefix {

            padding: 8px 10px; border: 1px solid rgba(255,255,255,0.2); border-radius: 12px;

            background: rgba(0,0,0,0.45); color: var(--text-heading); font-size: 0.92rem;

            min-width: 64px; text-align: center; flex-shrink: 0;

        }

        .fast-order-phone-row input { flex: 1; min-width: 120px; }

        @media (max-width: 360px) {

            .fast-order-phone-prefix { min-width: 52px; padding: 8px 6px; font-size: 0.88rem; }

            .fast-order-phone-row input { min-width: 0; }

        }

        .fast-order-form input {

            width: 100%;

            border: 1px solid rgba(255,255,255,0.2);

            border-radius: 12px;

            background: rgba(0,0,0,0.45);

            color: var(--text-heading);

            padding: 8px 10px;

            font: inherit;

            min-height: 38px;

        }

        /* Radijo mygtukai formoje – ne „width: 100%“ (kitaip etiketė ir tekstas išsiskaido per visą plotį). */
        .fast-order-form input[type="radio"] {

            width: auto;

            min-width: 0;

            max-width: none;

            min-height: 0;

            height: auto;

            padding: 0;

            margin: 0;

            border: none;

            border-radius: 0;

            background: transparent;

            box-shadow: none;

            flex-shrink: 0;

            accent-color: #38bdf8;

            align-self: flex-start;

        }

        .fast-order-form input[type="number"]::-webkit-outer-spin-button,

        .fast-order-form input[type="number"]::-webkit-inner-spin-button {

            opacity: 1;

            background: rgba(56,189,248,.12);

            border-left: 1px solid rgba(56,189,248,.35);

            filter: saturate(.9) brightness(.95);

        }

        .fast-order-terms {

            margin: 0 0 10px 0;

            padding: 10px 12px;

            border: 1px solid rgba(255,255,255,0.12);

            border-radius: 12px;

            background: rgba(255,255,255,0.03);

            max-height: 180px;

            overflow: auto;

        }

        .fast-order-terms {

            scrollbar-width: thin;

            scrollbar-color: #A5B68D #050505;

        }

        .fast-order-terms::-webkit-scrollbar { width: 10px; }

        .fast-order-terms::-webkit-scrollbar-track { background: #050505; }

        .fast-order-terms::-webkit-scrollbar-thumb {

            background: linear-gradient(180deg, #A5B68D, rgba(165,182,141,0.65));

            border-radius: 999px;

            border: 2px solid #050505;

        }

        .fast-order-terms p { margin: 0 0 6px 0; color: #f0f0f0; font-size: 0.9rem; font-weight: 700; }

        .fast-order-signature-wrap {

            margin: 10px 0;

            border: 1px solid rgba(255, 255, 255, 0.12);

            border-radius: var(--glass-radius);

            background: rgba(255, 255, 255, 0.04);

            backdrop-filter: blur(16px) saturate(1.12);

            -webkit-backdrop-filter: blur(16px) saturate(1.12);

            padding: 12px;

            box-shadow: 0 10px 32px rgba(0, 0, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.06);

        }

        @supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {

            .fast-order-signature-wrap {

                background: rgba(18, 20, 26, 0.92);

                backdrop-filter: none;

                -webkit-backdrop-filter: none;

            }

        }

        .fast-order-signature-wrap label { display: block; font-size: 0.84rem; color: var(--text-muted); margin-bottom: 8px; }

        .fast-order-signature-pad {

            max-width: 320px;

            border-radius: 12px;

            overflow: hidden;

            border: 1px solid rgba(255, 255, 255, 0.14);

            background: rgba(12, 14, 18, 0.45);

            backdrop-filter: blur(20px) saturate(1.15);

            -webkit-backdrop-filter: blur(20px) saturate(1.15);

            box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);

            line-height: 0;

        }

        @supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {

            .fast-order-signature-pad {

                background: rgba(22, 24, 30, 0.95);

                backdrop-filter: none;

                -webkit-backdrop-filter: none;

            }

        }

        #fastOrderSignatureCanvas {

            display: block;

            width: 100%;

            max-width: 320px;

            height: 80px;

            border: none;

            border-radius: 0;

            background: transparent;

            cursor: crosshair;

            touch-action: none;

            vertical-align: top;

        }

        #fastOrderSignatureClear { margin-top: 6px; font-size: 0.8rem; }

        .fast-order-terms ul { margin: 0; padding-left: 18px; }

        .fast-order-terms li { color: var(--text-muted); font-size: 0.86rem; line-height: 1.35; margin-bottom: 4px; }

        .fast-order-terms .contract-body p { margin: 0 0 8px 0; font-size: 0.82rem; font-weight: 500; color: var(--text-muted); line-height: 1.34; }

        .fast-order-contract-meta {

            display: grid;

            grid-template-columns: repeat(2, minmax(0, 1fr));

            gap: 8px;

            margin-bottom: 8px;

        }

        .fast-order-contract-meta .meta-box {

            border: 1px dashed var(--accent-border-soft);

            border-radius: 10px;

            padding: 8px;

            background: rgba(255,255,255,0.02);

        }

        .fast-order-contract-meta .meta-label { font-size: 0.76rem; color: rgba(255,255,255,0.62); margin-bottom: 3px; display: block; }

        .fast-order-contract-meta .meta-value { font-size: 0.9rem; color: var(--text-heading); font-weight: 800; }

        .fast-order-consent {

            display: flex;

            align-items: center;

            gap: 10px;

            margin-bottom: 8px;

            border: 1px solid rgba(255,255,255,0.2);

            border-radius: 999px;

            background: rgba(0,0,0,0.42);

            padding: 8px 12px;

        }

        .fast-order-consent input { margin-top: 0; width: 18px; height: 18px; min-height: 18px; flex: 0 0 auto; accent-color: #A5B68D; }

        .fast-order-consent label { font-size: 0.84rem; color: var(--text-muted); line-height: 1.25; }

        /* Fast order: fizinis / juridinis – visas eilutės plotis paspaudimui (ne 18px burbuliukas) */
        .fast-order-choice-list {
            display: flex;
            flex-direction: column;
            gap: 8px;
            margin: 0 0 10px;
        }

        .fast-order-choice {
            display: flex;
            align-items: center;
            gap: 14px;
            min-height: 52px;
            margin: 0;
            padding: 12px 16px;
            border: 1px solid rgba(255, 255, 255, 0.22);
            border-radius: 12px;
            background: rgba(0, 0, 0, 0.42);
            cursor: pointer;
            user-select: none;
            -webkit-tap-highlight-color: transparent;
            box-sizing: border-box;
            transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
        }

        .fast-order-choice:hover {
            border-color: rgba(125, 211, 252, 0.45);
        }

        .fast-order-choice:has(.fast-order-choice__input:checked),
        .fast-order-choice.is-checked {
            border-color: rgba(56, 189, 248, 0.55);
            background: rgba(56, 189, 248, 0.12);
            box-shadow: 0 0 0 1px rgba(56, 189, 248, 0.2);
        }

        .fast-order-choice__input {
            -webkit-appearance: none;
            appearance: none;
            flex: 0 0 28px;
            width: 28px;
            height: 28px;
            min-width: 28px;
            min-height: 28px;
            margin: 0;
            border-radius: 50%;
            border: 3px solid rgba(255, 255, 255, 0.48);
            background: rgba(0, 0, 0, 0.4);
            cursor: pointer;
            accent-color: transparent;
            transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
        }

        .fast-order-choice__input:hover {
            border-color: rgba(125, 211, 252, 0.65);
        }

        .fast-order-choice__input:checked {
            border-color: #0ea5e9;
            background-color: #0ea5e9;
            box-shadow: inset 0 0 0 4px rgba(0, 0, 0, 0.35);
        }

        .fast-order-choice__input:focus-visible {
            outline: 2px solid rgba(56, 189, 248, 0.85);
            outline-offset: 2px;
        }

        .fast-order-choice__text {
            flex: 1;
            min-width: 0;
            font-size: 0.92rem;
            font-weight: 650;
            line-height: 1.3;
            color: var(--text-heading, #f2efe8);
        }

        @media (max-width: 420px) {
            .fast-order-choice {
                min-height: 56px;
                padding: 14px 16px;
            }

            .fast-order-choice__input {
                flex: 0 0 30px;
                width: 30px;
                height: 30px;
                min-width: 30px;
                min-height: 30px;
            }
        }

        /* MakeCommerce tapatybės sutikimas: platesnis „pill“, storesnis apvalus žymėjimas */

        .fast-order-consent--mc {

            align-items: flex-start;

            width: 100%;

            box-sizing: border-box;

            gap: 14px;

            padding: 14px 18px 14px 16px;

            margin-bottom: 12px;

        }

        .fast-order-consent--mc input[type="checkbox"] {

            -webkit-appearance: none;

            appearance: none;

            width: 28px;

            height: 28px;

            min-width: 28px;

            min-height: 28px;

            flex: 0 0 28px;

            margin-top: 2px;

            border-radius: 50%;

            border: 3px solid rgba(255,255,255,0.48);

            background: rgba(0,0,0,0.4);

            cursor: pointer;

            accent-color: transparent;

            transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;

        }

        .fast-order-consent--mc input[type="checkbox"]:hover {

            border-color: rgba(125,211,252,0.65);

        }

        .fast-order-consent--mc input[type="checkbox"]:checked {

            background-color: #0ea5e9;

            border-color: #7dd3fc;

            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");

            background-size: 16px 16px;

            background-position: center;

            background-repeat: no-repeat;

        }

        .fast-order-consent--mc input[type="checkbox"]:focus-visible {

            outline: 2px solid rgba(56,189,248,0.85);

            outline-offset: 3px;

        }

        .fast-order-consent--mc label {

            flex: 1;

            font-size: 0.9rem;

            line-height: 1.38;

        }

        #fastOrderNetFixOptions .fast-order-consent { align-items: center; border-radius: 12px !important; }

        #fastOrderNetFixOptions .fast-order-consent span small { display:block; margin-top:2px; font-size:0.76rem; opacity:.95; }

        #fastOrderNetFixOptions .net-tele2 { border: 2px solid rgba(56,189,248,.95) !important; background: rgba(56,189,248,.08); box-shadow: inset 0 0 0 1px rgba(56,189,248,.22); }

        #fastOrderNetFixOptions .net-telia { border: 2px solid rgba(168,85,247,.92) !important; background: rgba(168,85,247,.08); box-shadow: inset 0 0 0 1px rgba(168,85,247,.22); }

        #fastOrderNetFixOptions .net-bite { border: 2px solid rgba(74,222,128,.95) !important; background: rgba(74,222,128,.08); box-shadow: inset 0 0 0 1px rgba(74,222,128,.22); }

        #fastOrderNetFixOptions .net-tele2 span small { color:#7dd3fc; }

        #fastOrderNetFixOptions .net-telia span small { color:#c4b5fd; }

        #fastOrderNetFixOptions .net-bite span small { color:#86efac; }

        .fast-order-net-addon {

            margin-top: 10px;

            border: 1px solid rgba(255,255,255,0.14);

            border-radius: 12px;

            padding: 10px;

            background: rgba(0,0,0,0.26);

        }

        .fast-order-net-addon-title {

            margin: 0 0 8px 0;

            font-size: 0.85rem;

            color: var(--text-heading);

            font-weight: 700;

        }

        .fast-order-net-addon .fast-order-consent { margin-bottom: 6px; }

        .fast-order-net-addon .fast-order-consent:last-child { margin-bottom: 0; }

        .fast-order-sim-cards-wrap {

            margin-top: 10px;

            border: 1px solid rgba(255,255,255,0.14);

            border-radius: 12px;

            padding: 10px;

            background: rgba(0,0,0,0.22);

        }

        .fast-order-sim-cards-title {

            margin: 0 0 8px 0;

            font-size: 0.84rem;

            font-weight: 700;

            color: var(--text-heading);

        }

        .fast-order-sim-cards {

            display: grid;

            grid-template-columns: 1fr;

            gap: 12px;

        }

        @media(min-width: 640px) {

            .fast-order-sim-cards {

                grid-template-columns: repeat(2, 1fr);

            }

        }

        @media(min-width: 900px) {

            .fast-order-sim-cards {

                grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));

            }

        }

        .fast-order-sim-card {

            min-height: 128px;

            position: relative;

            border-radius: 12px;

            border: 2px solid rgba(148,163,184,.7);

            background: rgba(148,163,184,.12);

            padding: 8px;

            display: flex;

            flex-direction: column;

            justify-content: space-between;

            text-align: center;

        }

        /* Disabled state for fastorder cards (e.g. Auto card when fixed network selected) */
        .fast-order-sim-card.is-disabled {

            opacity: 0.55;

            filter: saturate(0.35);

            pointer-events: none;

        }

        /* When a different card is selected, dim the others but keep them clickable */
        .fast-order-sim-card.is-unselected {
            opacity: 0.55;
            filter: saturate(0.5);
        }

        .fast-order-card-check {
            position: absolute;
            top: 10px;
            right: 10px;
            width: 22px;
            height: 22px;
            border-radius: 999px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            background: rgba(255, 255, 255, 0.08);
            border: 1px solid rgba(255, 255, 255, 0.14);
            color: rgba(255, 255, 255, 0.55);
            opacity: 0.25;
            pointer-events: none;
        }

        .fast-order-sim-card.is-selected .fast-order-card-check {
            opacity: 1;
            background: rgba(245, 158, 11, 0.18);
            border-color: rgba(245, 158, 11, 0.55);
            color: rgba(245, 158, 11, 0.95);
            box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.12);
        }

        /* Selected state (AUTO vs TELIA etc.) */
        .fast-order-sim-card.is-selected {
            border-color: rgba(245, 158, 11, 0.95) !important;
            box-shadow:
                inset 0 0 0 1px rgba(245, 158, 11, 0.22),
                0 0 0 4px rgba(245, 158, 11, 0.10),
                0 18px 46px rgba(0, 0, 0, 0.35) !important;
            transform: translateY(-1px);
        }

        .fast-order-sim-card i {

            font-size: 1.3rem;

            opacity: .95;

        }

        .fast-order-sim-card .sim-top {

            font-size: 0.74rem;

            font-weight: 700;

            color: var(--text-heading);

        }

        .fast-order-sim-card .sim-mid {

            font-size: 0.95rem;

            font-weight: 800;

            color: #fff;

            line-height: 1.2;

        }

        .fast-order-sim-card .sim-bottom {

            font-size: 0.66rem;

            color: rgba(255,255,255,.7);

            word-break: break-word;

            line-height: 1.2;

        }

        /* IPTV kiekis krepšelyje – tas pats „stiklo“ akcentas kaip TELE2 / modalai (keičiasi su --calm-sky) */

        .fast-order-sim-card.fast-order-iptv-qty-card {

            text-align: center;

            padding: 24px;

            margin-bottom: 20px;

            border-color: rgba(var(--calm-sky-rgb), 0.88) !important;

            background: rgba(var(--calm-sky-rgb), 0.11) !important;

            box-shadow:

                inset 0 0 0 1px rgba(var(--calm-sky-rgb), 0.22),

                0 0 32px rgba(var(--calm-sky-rgb), 0.1);

        }

        .fast-order-iptv-qty-card .fast-order-iptv-qty-icon {

            font-size: 2.5rem;

            color: var(--calm-sky);

            margin-bottom: 12px;

            filter: drop-shadow(0 0 14px rgba(var(--calm-sky-rgb), 0.4));

        }

        .fast-order-iptv-qty-card .fast-order-iptv-qty-title {

            font-size: 1.1rem;

            margin-bottom: 8px;

            color: var(--calm-sky);

            font-weight: 700;

            text-shadow: 0 0 24px rgba(var(--calm-sky-rgb), 0.25);

        }

        .fast-order-iptv-qty-card .fast-order-qty-input {

            margin: 12px auto;

            font-size: 1.2rem;

            padding: 12px;

            width: 100px;

            max-width: 100%;

            text-align: center;

            border-color: rgba(var(--calm-sky-rgb), 0.45);

        }

        .fast-order-iptv-qty-card .fast-order-qty-input:focus {

            border-color: var(--calm-sky);

            box-shadow: 0 0 0 2px rgba(var(--calm-sky-rgb), 0.2);

            outline: none;

        }

        /* IPTV užsakymai sustabdyti – pilka zona + mirgantis tekstas */

        .gl-iptv-order-disabled-wrap {

            position: relative;

        }

        .gl-iptv-order-disabled {

            pointer-events: none;

            opacity: 0.48;

            filter: grayscale(0.35);

        }

        .gl-iptv-soldout-banner {

            margin: 0 0 14px;

            font-size: 0.95rem;

            line-height: 1.45;

            font-weight: 700;

            text-align: center;

        }

        .gl-iptv-soldout-banner--compact {

            margin: 0 0 8px;

            font-size: 0.82rem;

            text-align: left;

        }

        .gl-iptv-soldout-banner--modal {

            margin: 0 0 14px;

            text-align: left;

        }

        .gl-iptv-existing-row {

            flex-direction: column;

            align-items: stretch;

        }

        .gl-iptv-fieldset-disabled {

            border: none;

            margin: 0;

            padding: 0;

            min-width: 0;

            opacity: 0.55;

        }

        .gl-shimmer-text {

            background: linear-gradient(90deg, #6b7280 0%, #9ca3af 22%, #e5e7eb 50%, #9ca3af 78%, #6b7280 100%);

            background-size: 220% auto;

            -webkit-background-clip: text;

            background-clip: text;

            color: #6b7280;

            -webkit-text-fill-color: transparent;

            animation: gl-shimmer-text-move 2.8s linear infinite;

        }

        .gl-shimmer-text--on-dark {

            background: linear-gradient(90deg, #94a3b8 0%, #cbd5e1 25%, #f1f5f9 50%, #cbd5e1 75%, #94a3b8 100%);

            background-size: 220% auto;

            -webkit-background-clip: text;

            background-clip: text;

            -webkit-text-fill-color: transparent;

            color: #cbd5e1;

        }

        @keyframes gl-shimmer-text-move {

            to {

                background-position: 220% center;

            }

        }

        @media (prefers-reduced-motion: reduce) {

            .gl-shimmer-text,

            .gl-shimmer-text--on-dark {

                animation: none;

                -webkit-text-fill-color: unset;

                background: none;

                color: #9ca3af;

            }

            .gl-shimmer-text--on-dark {

                color: #cbd5e1;

            }

        }

        .fast-order-sim-cards[data-net="auto"] .fast-order-sim-card {

            border-color: rgba(148,163,184,.72);

            background: rgba(148,163,184,.12);

            box-shadow: inset 0 0 0 1px rgba(148,163,184,.2);

        }

        .fast-order-sim-cards[data-net="telia"] .fast-order-sim-card {

            border-color: rgba(168,85,247,.88);

            background: rgba(168,85,247,.13);

            box-shadow: inset 0 0 0 1px rgba(168,85,247,.25);

        }

        .fast-order-sim-cards[data-net="tele2"] .fast-order-sim-card {

            border-color: rgba(56,189,248,.9);

            background: rgba(56,189,248,.12);

            box-shadow: inset 0 0 0 1px rgba(56,189,248,.24);

        }

        .fast-order-sim-cards[data-net="bite"] .fast-order-sim-card {

            border-color: rgba(74,222,128,.9);

            background: rgba(74,222,128,.12);

            box-shadow: inset 0 0 0 1px rgba(74,222,128,.24);

        }

        .fast-order-qty-input {

            width: 92px;

            padding: 4px;

            border: 1px solid rgba(255,255,255,0.2);

            border-radius: 6px;

            background: rgba(0,0,0,0.3);

            color: #fff;

            text-align: center;

            appearance: textfield;

            -moz-appearance: textfield;

        }

        .fast-order-qty-input::-webkit-outer-spin-button,

        .fast-order-qty-input::-webkit-inner-spin-button {

            -webkit-appearance: none;

            margin: 0;

        }

        .fast-order-contact-fields.is-locked { opacity: 1; pointer-events: auto; }

        .fast-order-phase-wizard { display: none; }

        .fast-order-phase-wizard.is-visible { display: block; }

        .fast-order-wizard-heading {

            font-size: 0.95rem;

            font-weight: 700;

            color: var(--text-heading);

            margin: 0 0 10px 0;

            line-height: 1.35;

        }

        .fast-step { display: none !important; }

        .fast-step.is-active { display: block !important; }

        .fast-step-card {

            border: 1px solid rgba(255,255,255,0.1);

            border-radius: 12px;

            background: rgba(255,255,255,0.04);

            backdrop-filter: blur(10px);

            -webkit-backdrop-filter: blur(10px);

            padding: 12px;

            margin-bottom: 0;

        }

        .fast-order-actions { display: flex; gap: 8px; margin-top: 6px; }

        .fast-order-actions .btn { flex: 1; }

        .fast-order-form .btn {

            min-height: 38px;

            padding: 7px 10px;

            border-radius: 12px;

            font-size: 0.84rem;

            font-weight: 600;

            border-width: 1px;

            box-shadow: none;

        }

        .fast-order-form .btn.btn-primary {

            border: 1px solid rgba(255,255,255,0.15);

            border-radius: 10px;

        }

        .fast-order-status {
            margin-top: 6px;
            font-size: 0.84rem;
            line-height: 1.38;
            color: rgba(226, 232, 240, 0.88);
            min-height: 16px;
            transition: color 0.25s ease, background 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
        }

        #fastOrderModal .fast-order-status.is-warn,
        #fastOrderModal .fast-order-status.error {
            display: block;
            margin-top: 8px;
            padding: 8px 12px;
            font-weight: 650;
            color: #fecaca;
            background: rgba(239, 68, 68, 0.2);
            border: 1px solid rgba(248, 113, 113, 0.55);
            border-left: 4px solid #f87171;
            border-radius: 10px;
            box-shadow: 0 0 14px rgba(239, 68, 68, 0.12);
            animation: glFastStatusWarnPulse 1.5s ease-in-out infinite;
        }

        #fastOrderModal .fast-order-status.is-ok {
            display: block;
            margin-top: 8px;
            padding: 8px 12px;
            font-weight: 650;
            color: #bbf7d0;
            background: rgba(34, 197, 94, 0.16);
            border: 1px solid rgba(74, 222, 128, 0.55);
            border-left: 4px solid #4ade80;
            border-radius: 10px;
            box-shadow: 0 0 12px rgba(74, 222, 128, 0.14);
            animation: glFastStatusOkPulse 2.2s ease-in-out infinite;
        }

        #fastOrderModal .fast-order-status.is-info {
            display: block;
            padding: 6px 10px;
            color: #bae6fd;
            background: rgba(56, 189, 248, 0.1);
            border: 1px solid rgba(56, 189, 248, 0.35);
            border-left: 3px solid rgba(56, 189, 248, 0.75);
            border-radius: 10px;
        }

        #fastOrderModal .fast-order-status.is-loading {
            color: #7dd3fc;
            font-weight: 600;
        }

        @keyframes glFastStatusWarnPulse {
            0%, 100% {
                color: #fecaca;
                border-color: rgba(248, 113, 113, 0.55);
                background: rgba(239, 68, 68, 0.18);
                box-shadow: 0 0 10px rgba(239, 68, 68, 0.1);
            }
            50% {
                color: #fde68a;
                border-color: rgba(251, 191, 36, 0.85);
                background: rgba(251, 191, 36, 0.14);
                box-shadow: 0 0 16px rgba(251, 191, 36, 0.22);
            }
        }

        @keyframes glFastStatusOkPulse {
            0%, 100% {
                box-shadow: 0 0 8px rgba(74, 222, 128, 0.1);
            }
            50% {
                box-shadow: 0 0 18px rgba(74, 222, 128, 0.28);
            }
        }

        @media (prefers-reduced-motion: reduce) {
            #fastOrderModal .fast-order-status.is-warn,
            #fastOrderModal .fast-order-status.error,
            #fastOrderModal .fast-order-status.is-ok {
                animation: none;
            }
        }

        /* Fast order: glass warning/info box (e.g. "do not close window") */
        .fast-order-status.fast-order-warn {
            padding: 8px 12px;
            border-radius: 12px;
            background: rgba(0,0,0,0.32);
            border: 1px solid rgba(255,255,255,0.16);
            border-left: 4px solid rgba(var(--cta-rgb), 0.95);
            color: var(--text);
            line-height: 1.28;
            -webkit-backdrop-filter: var(--glass-blur);
            backdrop-filter: var(--glass-blur);
        }

        .fast-order-status.fast-order-warn strong { color: var(--text-heading); }

        /* Fallback: even if JS uppercase binding fails, display company name uppercase. */
        #fastOrderCompanyName { text-transform: uppercase; }

        /* Fast order: missing required field attention (terminal/locker pick) */
        @keyframes glFastReqPulse {
            0% { box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.0); border-color: rgba(255,255,255,0.16); }
            25% { box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.18); border-color: rgba(239, 68, 68, 0.85); }
            60% { box-shadow: 0 0 0 6px rgba(249, 115, 22, 0.16); border-color: rgba(249, 115, 22, 0.85); }
            100% { box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.0); border-color: rgba(255,255,255,0.16); }
        }

        /* Ryškesnis, spalvotas dėmesys: pristatymo būdas arba paštomatas */
        @keyframes glFastReqWarnPulse {
            0%, 100% {
                box-shadow:
                    0 0 0 0 rgba(34, 211, 238, 0),
                    0 0 18px rgba(251, 191, 36, 0.12);
                border-color: rgba(251, 191, 36, 0.55) !important;
                background: rgba(15, 23, 42, 0.5) !important;
            }
            35% {
                box-shadow:
                    0 0 0 5px rgba(244, 63, 94, 0.32),
                    0 0 28px rgba(244, 63, 94, 0.22);
                border-color: rgba(244, 63, 94, 0.95) !important;
                background: rgba(244, 63, 94, 0.1) !important;
            }
            70% {
                box-shadow:
                    0 0 0 5px rgba(56, 189, 248, 0.32),
                    0 0 28px rgba(56, 189, 248, 0.22);
                border-color: rgba(56, 189, 248, 0.95) !important;
                background: rgba(56, 189, 248, 0.09) !important;
            }
        }

        #fastOrderModal .gl-fast-req-missing {
            animation: glFastReqPulse 0.95s ease-in-out 0s 4;
        }

        #fastOrderModal #fastOrderShippingMethodRow.gl-fast-req-missing,
        #fastOrderModal #fastOrderLockerBlock.gl-fast-req-missing {
            animation: glFastReqWarnPulse 1.05s ease-in-out infinite;
            border-width: 2px !important;
            border-style: solid !important;
            border-radius: 14px;
        }

        #fastOrderModal #fastOrderSmartpostiBrand.gl-fast-req-missing {
            animation: glFastReqWarnPulse 1.05s ease-in-out infinite;
            border-radius: 12px;
            padding: 6px 8px;
            border: 2px solid rgba(251, 191, 36, 0.45) !important;
            box-sizing: border-box;
        }

        @media (prefers-reduced-motion: reduce) {
            #fastOrderModal #fastOrderShippingMethodRow.gl-fast-req-missing,
            #fastOrderModal #fastOrderLockerBlock.gl-fast-req-missing,
            #fastOrderModal #fastOrderSmartpostiBrand.gl-fast-req-missing {
                animation: none !important;
                outline: 3px solid rgba(244, 63, 94, 0.75) !important;
                outline-offset: 2px;
            }
        }

        /* Make the whole address step visibly highlight */
        #fastOrderModal #fastOrderStepAddrDetail.gl-fast-req-missing {
            border-color: rgba(249, 115, 22, 0.55) !important;
            box-shadow: 0 0 0 4px rgba(249, 115, 22, 0.12) !important;
            outline: 2px solid rgba(239, 68, 68, 0.45) !important;
            outline-offset: 2px;
            background: rgba(239, 68, 68, 0.06) !important;
        }

        #fastOrderModal #fastOrderLockerFilterLabel.gl-fast-req-missing {
            color: rgba(255, 255, 255, 0.95) !important;
        }

        /* Make inputs visibly pulse too */
        #fastOrderModal input.gl-fast-req-missing {
            border-color: rgba(239, 68, 68, 0.85) !important;
            box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.18) !important;
        }

        #fastOrderModal #fastOrderTerminalLockerFilter.gl-fast-req-missing {
            outline: none;
        }

        #fastOrderModal #fastOrderTerminalsList.gl-fast-req-missing {
            border-radius: 12px;
            border: 1px solid rgba(255,255,255,0.16);
            background: rgba(0,0,0,0.18);
            padding: 6px;
        }

        /* Fast order: reduce "letter spacing" (tracking) in modal copy */
        #fastOrderModal .fast-order-modal-box,
        #fastOrderModal .fast-order-modal-box p,
        #fastOrderModal .fast-order-modal-box label,
        #fastOrderModal .fast-order-modal-box button,
        #fastOrderModal .fast-order-modal-box input,
        #fastOrderModal .fast-order-modal-box textarea {
            letter-spacing: normal;
        }

        .fast-order-pay-net-box {

            margin-top: 10px;

            padding: 10px 12px;

            border-radius: 10px;

            border: 1px solid rgba(255,255,255,0.14);

            background: rgba(0,0,0,0.28);

        }

        .fast-order-pay-net-box strong { color: var(--text-heading); }

        .fast-order-pay-totals {

            margin-top: 8px;

            padding: 10px 12px;

            border-radius: 10px;

            border: 1px solid rgba(255,255,255,0.14);

            background: rgba(0,0,0,0.26);

            font-size: 0.84rem;

            color: var(--text-muted);

            line-height: 1.5;

        }

        .fast-order-pay-totals b { color: var(--text-heading); }

        .fast-order-monthly-strong {
            display: block;
            margin-top: 4px;
            font-size: 1.12rem;
            font-weight: 900;
            color: var(--text-heading);
            text-shadow: 0 0 18px rgba(56,189,248,0.22), 0 0 28px rgba(56,189,248,0.12);
            animation: fastOrderPulseMonthly 1.35s ease-in-out infinite;
        }

        .fast-order-monthly-strong b {
            font-weight: 900;
            color: var(--text-heading);
        }

        @keyframes fastOrderPulseMonthly {
            0%   { transform: scale(1);    opacity: 1;   }
            50%  { transform: scale(1.03); opacity: 0.92;}
            100% { transform: scale(1);    opacity: 1;   }
        }

        @media (prefers-reduced-motion: reduce) {
            .fast-order-monthly-strong { animation: none; }
        }

        .fast-order-pay-receipt {

            margin-top: 10px;

            border: 1px solid rgba(255,255,255,0.16);

            border-radius: 12px;

            background: rgba(0,0,0,0.3);

            overflow: hidden;

        }

        .fast-order-pay-receipt-head {

            display: flex;

            align-items: center;

            gap: 10px;

            padding: 10px 12px;

            border-bottom: 1px solid rgba(255,255,255,0.12);

            background: rgba(56,189,248,.1);

            color: var(--text-heading);

            font-weight: 800;

        }

        .fast-order-pay-receipt-head i {

            font-size: 1.4rem;

            color: #38bdf8;

        }

        .fast-order-pay-receipt-body {

            padding: 10px 12px;

            font-size: 0.82rem;

            color: var(--text-muted);

            line-height: 1.45;

        }

        .fast-order-pay-receipt-body .row {

            display: flex;

            justify-content: space-between;

            gap: 10px;

            margin-bottom: 6px;

        }

        .fast-order-pay-receipt-body .row:last-child { margin-bottom: 0; }

        .fast-order-pay-receipt-body .row b { color: var(--text-heading); font-weight: 700; }

        .fast-order-pay-receipt-body .total {

            margin-top: 8px;

            padding-top: 8px;

            border-top: 1px dashed rgba(255,255,255,0.25);

        }

        .fast-order-pay-layout {

            display: grid;

            grid-template-columns: 1fr 1fr;

            gap: 10px;

            align-items: start;

            margin-top: 8px;

        }

        /* Vienas stulpelis: kvitas per visą plotį (kortelė jau patvirtinta ankstesniame žingsnyje) */
        .fast-order-pay-layout--receipt-only {
            grid-template-columns: 1fr;
            gap: 0;
        }

        .fast-order-pay-layout--receipt-only .fast-order-pay-receipt {
            margin-top: 0;
        }

        .fast-order-pay-col { min-width: 0; }

        @media (max-width: 880px) {

            .fast-order-pay-layout { grid-template-columns: 1fr; }

        }

        /* Address + terminal two-column layout (like payment: card left, receipt right) */

        .fast-order-addr-layout {

            display: grid;

            grid-template-columns: 1fr 1fr;

            gap: 16px;

            align-items: start;

            margin-top: 8px;

        }

        .fast-order-addr-col { min-width: 0; }

        .fast-order-addr-block,

        .fast-order-terminal-search {

            padding: 14px;

            border-radius: 12px;

            border: 1px solid rgba(255,255,255,.12);

            background: rgba(0,0,0,.25);

        }

        .fast-order-smartposti-brand {
            margin: 0 0 12px;
            display: flex;
            justify-content: center;
            align-items: center;
            animation: smartpostiModalGlow 2.8s ease-in-out infinite;
        }

        .fast-order-smartposti-brand-logo {
            display: block;
            width: clamp(150px, 42vw, 230px);
            max-width: 100%;
            height: auto;
            object-fit: contain;
            filter: drop-shadow(0 6px 14px rgba(0, 0, 0, 0.32));
            animation: smartpostiModalLogoPulse 2.2s ease-in-out infinite;
        }

        /* Greitas užsakymas: kompaktiškas logotipas, be blėkimo (ne konkuruoja su pasirinkimais). */
        #fastOrderModal .fast-order-smartposti-brand {
            margin: 2px 0 10px;
            animation: none;
        }

        #fastOrderModal .fast-order-smartposti-brand-logo {
            width: clamp(88px, 36vw, 132px);
            max-height: 26px;
            animation: none;
            filter: drop-shadow(0 2px 10px rgba(0, 0, 0, 0.35));
        }

        #fastOrderModal .fast-order-shipping-method-row {
            display: flex;
            flex-direction: column;
            align-items: stretch;
            text-align: left;
        }

        #fastOrderModal .fast-order-shipping-option {
            display: flex;
            flex-direction: row;
            flex-wrap: nowrap;
            align-items: flex-start;
            justify-content: flex-start;
            gap: 10px;
            width: 100%;
            box-sizing: border-box;
            text-align: left;
            color: var(--text-heading);
        }

        #fastOrderModal .fast-order-shipping-option > input[type="radio"] {
            margin-top: 4px;
        }

        #fastOrderModal .fast-order-shipping-option > span {
            flex: 1 1 auto;
            min-width: 0;
            text-align: left;
            line-height: 1.38;
        }

        @keyframes smartpostiModalLogoPulse {
            0% {
                transform: scale(1);
                filter: drop-shadow(0 6px 14px rgba(0, 0, 0, 0.34)) hue-rotate(0deg) saturate(1);
                opacity: 0.96;
            }
            50% {
                transform: scale(1.045);
                filter: drop-shadow(0 8px 18px rgba(56, 189, 248, 0.52)) hue-rotate(28deg) saturate(1.35);
                opacity: 1;
            }
            100% {
                transform: scale(1);
                filter: drop-shadow(0 6px 14px rgba(0, 0, 0, 0.34)) hue-rotate(0deg) saturate(1);
                opacity: 0.96;
            }
        }

        @keyframes smartpostiModalGlow {
            0% {
                text-shadow: 0 0 0 rgba(56, 189, 248, 0);
            }
            50% {
                text-shadow: 0 0 16px rgba(56, 189, 248, 0.2);
            }
            100% {
                text-shadow: 0 0 0 rgba(56, 189, 248, 0);
            }
        }

        .fast-order-addr-block-head {

            display: flex;

            align-items: center;

            gap: 10px;

            margin-bottom: 12px;

            padding-bottom: 10px;

            border-bottom: 1px solid rgba(255,255,255,.12);

            color: var(--text-heading);

            font-weight: 700;

        }

        .fast-order-addr-block-head i {

            font-size: 1.2rem;

            color: #7dd3fc;

        }

        .fast-order-terminal-search .fast-order-addr-block-head i { color: #4ade80; }

        .lp-express-pulse {
            display: inline-block;
            font-weight: 900;
            color: #fbbf24 !important;
            animation: lpPulseGlow 1.3s ease-in-out infinite !important;
            text-shadow: 0 0 0 rgba(251, 191, 36, 0.0);
        }

        .lp-express-pulse strong {
            font-weight: inherit !important;
            color: inherit !important;
            animation: inherit !important;
        }

        @keyframes lpPulseGlow {
            0% { color: #fbbf24; text-shadow: 0 0 0 rgba(251, 191, 36, 0.0); filter: drop-shadow(0 0 0 rgba(251,191,36,0)); }
            50% { color: #fde68a; text-shadow: 0 0 16px rgba(251, 191, 36, 0.55); filter: drop-shadow(0 0 10px rgba(251,191,36,0.45)); }
            100% { color: #fbbf24; text-shadow: 0 0 0 rgba(251, 191, 36, 0.0); filter: drop-shadow(0 0 0 rgba(251,191,36,0)); }
        }

        @media (max-width: 880px) {

            .fast-order-addr-layout { grid-template-columns: 1fr; }

        }

        .fast-order-card-cta {

            margin-top: 10px;

            margin-bottom: 6px;

            font-size: 0.86rem;

            font-weight: 700;

            color: #38bdf8;

        }

        .fast-order-welcome {

            text-align: left;

            padding: 12px 8px 6px;

        }

        @media (max-width: 767px) {

            .fast-order-welcome {

                text-align: center;

            }

            .fast-order-welcome-notices .fast-order-welcome-equipment-notice {

                text-align: left;

            }

            .fast-order-welcome-notices .fast-order-welcome-equipment-notice__title {

                font-size: 0.78rem;

            }

            .fast-order-welcome-notices .fast-order-welcome-equipment-notice__text {

                font-size: 0.74rem;

                line-height: 1.38;

            }

        }

        .fast-order-welcome-head {

            text-align: center;

            margin-bottom: 12px;

            overflow: hidden;

        }

        .fast-order-welcome-icon {

            margin: 18px auto 10px;

            color: #fbbf24;

            font-size: 96px;

            line-height: 1;

            display: block;

            text-align: center;

        }

        .fast-order-welcome-icon svg {

            display: block;

            margin: 0 auto;

            overflow: visible;

            vertical-align: middle;

            animation: fastWelcomeHeartPulse 1.35s ease-in-out infinite;

            will-change: transform, filter;

        }

        @keyframes fastWelcomeHeartPulse {

            0%, 100% {

                transform: scale(1);

                filter:
                    drop-shadow(0 3px 12px rgba(251, 191, 36, 0.55))
                    drop-shadow(0 0 18px rgba(251, 191, 36, 0.4));

            }

            50% {

                transform: scale(1.12);

                filter:
                    drop-shadow(0 8px 28px rgba(251, 191, 36, 0.85))
                    drop-shadow(0 0 36px rgba(251, 191, 36, 0.55));

            }

        }

        @media (prefers-reduced-motion: reduce) {

            .fast-order-welcome-icon svg {

                animation: none;

                filter: drop-shadow(0 4px 16px rgba(251, 191, 36, 0.5));

            }

        }

        .fast-order-welcome-title {

            margin: 0 0 6px;

            text-align: center;

            color: #f8fafc;

        }

        .fast-order-welcome-subtitle {

            margin: 0 auto;

            max-width: 680px;

            text-align: center;

            color: #e2e8f0;

            font-size: 0.96rem;

            line-height: 1.45;

        }

        .fast-order-welcome-notices {

            display: grid;

            grid-template-columns: 1fr;

            gap: 8px;

            margin: 10px 0 0;

            width: 100%;

        }

        .fast-order-welcome-notices:empty,
        .fast-order-welcome-notices[hidden] {

            display: none !important;

        }

        .fast-order-welcome-notices .fast-order-welcome-equipment-notice {

            margin: 0;

            max-width: none;

            min-width: 0;

            padding: 8px 9px;

            border-radius: 10px;

            border-left-width: 3px;

            box-shadow: 0 2px 10px rgba(0, 0, 0, 0.18);

        }

        .fast-order-welcome-notices .fast-order-welcome-equipment-notice__title {

            margin: 0 0 4px;

            font-size: 0.72rem;

            line-height: 1.25;

        }

        .fast-order-welcome-notices .fast-order-welcome-equipment-notice__text {

            font-size: 0.68rem;

            line-height: 1.32;

        }

        .fast-order-welcome-equipment-notice {

            margin: 14px auto 0;

            max-width: 640px;

            padding: 12px 14px;

            text-align: left;

            background: linear-gradient(135deg, rgba(254, 243, 199, 0.14) 0%, rgba(251, 191, 36, 0.08) 100%);

            border: 1px solid rgba(245, 158, 11, 0.55);

            border-left: 4px solid rgba(251, 191, 36, 0.95);

            border-radius: 12px;

            color: #fef3c7;

            box-shadow: 0 4px 18px rgba(0, 0, 0, 0.22);

        }

        .fast-order-welcome-equipment-notice__title {

            margin: 0 0 6px;

            font-weight: 800;

            font-size: 0.95rem;

            letter-spacing: 0.02em;

            color: #fde68a;

        }

        .fast-order-welcome-equipment-notice__text {

            margin: 0;

            font-size: 0.88rem;

            line-height: 1.48;

            color: rgba(254, 243, 199, 0.96);

        }

        .fast-order-welcome-grid {

            display: grid;

            grid-template-columns: 1fr;

            gap: 12px;

            margin-top: 14px;

        }

        .fast-order-welcome-card {

            background: rgba(14, 18, 28, 0.38);

            border: 1px solid rgba(125, 211, 252, 0.22);

            backdrop-filter: blur(6px);

            -webkit-backdrop-filter: blur(6px);

            border-radius: 14px;

            padding: 12px;

            color: #e2e8f0;

        }

        #fastOrderWelcomeShipmentCard {

            border: 2px solid rgba(56, 189, 248, 0.60);

            box-shadow: 0 0 0 0 rgba(56, 189, 248, 0.42);

            animation: fastWelcomeShipmentPulse 1.9s ease-in-out infinite;

        }

        @keyframes fastWelcomeShipmentPulse {

            0%, 100% {

                transform: scale(1);

                border-color: rgba(56, 189, 248, 0.78);

                box-shadow: 0 0 0 0 rgba(56, 189, 248, 0.28), 0 0 14px rgba(56, 189, 248, 0.22);

            }

            50% {

                transform: scale(1.012);

                border-color: rgba(56, 189, 248, 0.88);

                box-shadow: 0 0 0 4px rgba(56, 189, 248, 0.16), 0 0 22px rgba(56, 189, 248, 0.42);

            }

        }

        .fast-order-welcome-card-title {

            margin: 0 0 8px;

            font-size: 0.86rem;

            font-weight: 800;

            letter-spacing: 0.02em;

            text-transform: uppercase;

            color: #cbd5e1;

        }

        .fast-order-welcome-list {

            display: grid;

            gap: 8px;

        }

        .fast-order-welcome-item {

            display: grid;

            grid-template-columns: 20px 1fr;

            gap: 8px;

            align-items: start;

        }

        .fast-order-welcome-item i {

            color: #0ea5e9;

            font-size: 0.95rem;

            margin-top: 2px;

        }

        .fast-order-welcome-item strong {

            color: #f8fafc;

        }

        .fast-order-welcome-item span {

            color: #cbd5e1;

            font-size: 0.95rem;

            line-height: 1.35;

            word-break: break-word;

        }

        .fast-order-welcome-note {

            margin: 0;

            color: #cbd5e1;

            font-size: 0.9rem;

            line-height: 1.32;

        }

        .fast-order-welcome-actions + .fast-order-welcome-note {

            margin-top: 10px;

        }

        .fast-order-welcome-note + .fast-order-welcome-note {

            margin-top: 4px;

        }

        .fast-order-welcome-actions {

            display: grid;

            grid-template-columns: 1fr;

            gap: 10px;

            margin-top: 14px;

        }

        .fast-order-welcome .btn {

            min-height: 44px;

            border-radius: 12px;

            font-weight: 700;

        }

        .fast-order-welcome .btn i {

            font-size: 0.92rem;

        }

        .fast-order-welcome .btn.btn-primary {

            background: linear-gradient(180deg, #f8fafc 0%, #e2e8f0 100%);

            color: #0f172a;

            border: 1px solid rgba(100, 116, 139, 0.35);

            box-shadow: none;

            text-decoration: none;

        }

        .fast-order-welcome .btn.btn-primary:hover {

            background: linear-gradient(180deg, #ffffff 0%, #e2e8f0 100%);

            color: #020617;

            border-color: rgba(51, 65, 85, 0.45);

        }

        .fast-order-welcome .btn.btn-ghost {

            background: linear-gradient(180deg, #dbeafe 0%, #bfdbfe 100%);

            color: #0f172a;

            border: 1px solid rgba(59, 130, 246, 0.45);

            text-decoration: none;

        }

        .fast-order-welcome .btn.btn-ghost:hover {

            background: linear-gradient(180deg, #eff6ff 0%, #dbeafe 100%);

            color: #020617;

            border-color: rgba(37, 99, 235, 0.55);

        }

        .fast-order-welcome-help {

            background: rgba(14, 18, 28, 0.36);

            border: 1px solid rgba(125, 211, 252, 0.22);

            backdrop-filter: blur(6px);

            -webkit-backdrop-filter: blur(6px);

            border-radius: 14px;

            padding: 12px;

            color: #e2e8f0;

            margin-top: 12px;

        }

        .fast-order-welcome-help p {

            margin: 0 0 8px;

            color: #e2e8f0;

        }

        .fast-order-welcome-help .line {

            display: grid;

            grid-template-columns: 20px 1fr;

            gap: 8px;

            align-items: center;

            margin: 6px 0;

            color: #cbd5e1;

            font-weight: 600;

        }

        .fast-order-welcome-help .line i { color: #0284c7; }

        @media (min-width: 768px) {

            .fast-order-welcome-notices {

                grid-template-columns: repeat(3, minmax(0, 1fr));

                gap: 8px;

            }

            .fast-order-welcome-notices[data-visible-count='2'] {

                grid-template-columns: repeat(2, minmax(0, 1fr));

            }

            .fast-order-welcome-notices[data-visible-count='1'] {

                grid-template-columns: 1fr;

                max-width: 360px;

                margin-left: auto;

                margin-right: auto;

            }

            .fast-order-welcome-icon {

                font-size: 52px;

                margin: 6px auto 4px;

            }

            .fast-order-welcome-subtitle {

                font-size: 0.82rem;

                line-height: 1.32;

                max-width: none;

            }

            .fast-order-welcome-head {

                margin-bottom: 8px;

            }

            .fast-order-welcome {

                padding: 8px 4px 4px;

            }

            .fast-order-welcome-grid {

                margin-top: 10px;

                gap: 10px;

            }

            .fast-order-welcome-card {

                padding: 10px;

            }

            #fastOrderStepWelcome.fast-step-card {

                padding: 10px;

            }

        }

        @media (min-width: 820px) {

            .fast-order-welcome-grid {

                grid-template-columns: 1fr 1fr;

            }

            .fast-order-welcome-actions {

                grid-template-columns: 1fr 1fr;

            }

        }

        .fast-welcome-preview-badge {

            right: 10px;

            background: #b45309;

        }

        .fast-order-modal-box.is-welcome-preview #fastOrderWizardHeading {

            display: none !important;

        }

        .fast-test-badge {

            position: absolute;

            top: 10px;

            right: 52px;

            z-index: 1002;

            background: #dc2626;

            color: #fff;

            border: 1px solid rgba(255,255,255,0.3);

            border-radius: 6px;

            padding: 2px 8px;

            font-size: 11px;

            font-weight: 800;

            letter-spacing: .02em;

            pointer-events: none;

            box-shadow: 0 2px 8px rgba(0,0,0,.35);

        }

        .gl-credit-card-mockup {

            border-radius: 16px;

            background: linear-gradient(135deg, rgba(30,41,59,0.9), rgba(15,23,42,0.95));

            border: 2px solid rgba(56,189,248,0.5);

            box-shadow: 0 10px 25px rgba(0,0,0,0.5), inset 0 1px 0 rgba(255,255,255,0.1);

            padding: 20px;

            position: relative;

            overflow: hidden;

        }

        .gl-credit-card-mockup::before {

            content: '';

            position: absolute;

            top: 20px;

            right: 20px;

            width: 40px;

            height: 25px;

            background: rgba(255,255,255,0.1);

            border-radius: 4px;

            border: 1px solid rgba(255,255,255,0.2);

        }

        .gl-credit-card-mockup .cc-row {

            margin-bottom: 16px;

        }

        .gl-credit-card-mockup .cc-row:last-child {

            margin-bottom: 0;

        }

        .gl-credit-card-mockup .cc-row-split {

            display: grid;

            grid-template-columns: 1fr 1fr;

            gap: 16px;

        }

        .gl-credit-card-mockup label {

            display: block;

            font-size: 0.7rem;

            text-transform: uppercase;

            letter-spacing: 1px;

            color: rgba(255,255,255,0.6);

            margin-bottom: 6px;

        }

        .gl-credit-card-mockup .cc-stripe-element {

            background: rgba(0,0,0,0.3);

            border: 1px solid rgba(255,255,255,0.15);

            border-radius: 8px;

            padding: 12px;

            min-height: 42px;

        }

        .gl-credit-card-mockup .cc-stripe-element.StripeElement--focus {

            border-color: #38bdf8;

            box-shadow: 0 0 0 1px #38bdf8;

        }

        .gl-credit-card-mockup .cc-name-display {

            font-size: 1.1rem;

            color: #fff;

            text-transform: uppercase;

            letter-spacing: 2px;

            font-family: monospace;

            padding: 4px 12px;

            min-height: 28px;

            text-shadow: 1px 1px 2px rgba(0,0,0,0.8);

        }

        #fastOrderModal .fast-order-modal-box,

        #fastOrderModal .fast-order-terms,

        #fastOrderModal .fast-order-mc-banks-grid {

            scrollbar-width: thin;

            scrollbar-color: rgba(56, 189, 248, 0.75) #061521;

        }

        #fastOrderModal .fast-order-modal-box::-webkit-scrollbar,

        #fastOrderModal .fast-order-terms::-webkit-scrollbar,

        #fastOrderModal .fast-order-mc-banks-grid::-webkit-scrollbar {

            width: 10px;

            height: 10px;

        }

        #fastOrderModal .fast-order-modal-box::-webkit-scrollbar-track,

        #fastOrderModal .fast-order-terms::-webkit-scrollbar-track,

        #fastOrderModal .fast-order-mc-banks-grid::-webkit-scrollbar-track {

            background: #061521;

        }

        #fastOrderModal .fast-order-modal-box::-webkit-scrollbar-thumb,

        #fastOrderModal .fast-order-terms::-webkit-scrollbar-thumb,

        #fastOrderModal .fast-order-mc-banks-grid::-webkit-scrollbar-thumb {

            background: linear-gradient(180deg, #38bdf8, #1d4863);

            border: 2px solid #061521;

            border-radius: 999px;

        }

        .fast-order-mc-bank-list { display: none; margin-top: 12px; }

        .fast-order-mc-bank-list.is-open { display: block; }

        .fast-order-mc-sections {

            display: grid;

            grid-template-columns: 1fr;

            gap: 12px;

            margin-top: 8px;

            align-items: start;

        }

        .fast-order-mc-section {

            border: 1px solid rgba(255,255,255,0.08);

            border-radius: 12px;

            padding: 10px;

            background: rgba(0,0,0,0.25);

        }

        .fast-order-mc-banks-grid {

            display: grid;

            grid-template-columns: repeat(3, minmax(0, 1fr));

            gap: 8px;

            max-height: min(34vh, 280px);

            overflow-y: auto;

            padding: 4px 2px 8px;

            margin-top: 6px;

        }

        @media (min-width: 520px) {

            .fast-order-mc-banks-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }

        }

        @media (max-width: 860px) {

            .fast-order-modal-box { width: min(640px, 100%); }

            .fast-order-modal-box.expanded { width: min(640px, 100%); }

            .fast-order-mc-sections { grid-template-columns: 1fr; }

            .fast-order-mc-banks-grid {

                grid-template-columns: repeat(2, minmax(0, 1fr));

                max-height: min(40vh, 320px);

            }

        }

        .fast-order-mc-bank-btn {

            display: flex;

            align-items: center;

            justify-content: center;

            min-height: 62px;

            padding: 10px 8px;

            border-radius: 12px;

            border: 1px solid rgba(255,255,255,0.16);

            background: rgba(0,0,0,0.35);

            font-family: inherit;

            cursor: pointer;

            transition: border-color 0.15s, background 0.15s;

            font-size: 0 !important;

            color: transparent !important;

            line-height: 0 !important;

            text-indent: -9999px;

            overflow: hidden;

            white-space: nowrap;

        }

        .fast-order-mc-bank-btn:hover {

            border-color: var(--calm-sky);

            background: rgba(56, 189, 248, 0.08);

        }

        .fast-order-mc-bank-btn img {

            max-width: 62px;

            max-height: 34px;

            width: auto;

            height: auto;

            object-fit: contain;

            filter: brightness(0.78) saturate(0.8) contrast(1.05);

            opacity: 0.92;

            transform: scale(1);

            transform-origin: center;

            transition: filter 0.15s ease, opacity 0.15s ease, transform 0.18s ease;

        }

        .fast-order-mc-bank-btn:hover img {

            filter: brightness(0.9) saturate(0.92) contrast(1.08);

            opacity: 1;

            transform: scale(1.28);

        }

        .fast-order-mc-bank-other {

            margin-top: 10px;

            display: flex;

            flex-direction: column;

            gap: 8px;

        }

        .fast-order-status.is-loading::before {

            content: "";

            display: inline-block;

            width: 11px;

            height: 11px;

            border: 2px solid rgba(56, 189, 248, 0.25);

            border-top-color: var(--calm-sky);

            border-radius: 999px;

            margin-right: 6px;

            vertical-align: -1px;

            animation: fastSpin .75s linear infinite;

        }

        @keyframes fastSpin { to { transform: rotate(360deg); } }

        .fast-order-existing-box {

            display: none;

            margin-top: 12px;

            border: 1px solid rgba(255,255,255,0.12);

            border-radius: 12px;

            padding: 14px 16px;

            background: rgba(255,255,255,0.04);

        }

        .fast-order-existing-box.is-open { display: block; }

        .fast-order-existing-intro { margin: 0 0 12px 0; font-size: 0.92rem; color: var(--text-muted); line-height: 1.4; }

        .fast-order-existing-email-row { margin: 0 0 12px 0; padding: 8px 12px; background: rgba(56,189,248,.08); border-radius: 10px; border: 1px solid rgba(56,189,248,.2); font-size: 0.9rem; color: var(--text-heading); }

        .fast-order-existing-email-row strong { color: #7dd3fc; }

        .fast-order-existing-form { display: flex; flex-direction: column; gap: 10px; }

        .fast-order-existing-form > label { font-size: 0.88rem; color: var(--text-muted); }

        .fast-order-existing-form .fast-order-input {

            width: 100%;

            border: 1px solid rgba(255,255,255,0.2);

            border-radius: 12px;

            background: rgba(0,0,0,0.45);

            color: var(--text-heading);

            padding: 10px 14px;

            font: inherit;

            min-height: 40px;

            box-sizing: border-box;

        }

        .fast-order-existing-form .fast-order-input:focus { outline: none; border-color: rgba(56,189,248,.5); }

        .fast-order-existing-services-title { margin: 10px 0 6px 0; font-size: 0.9rem; font-weight: 700; color: var(--text-heading); }

        .fast-order-existing-services { display: flex; flex-direction: column; gap: 8px; }

        .existing-service-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; }

        .existing-service-label { font-size: 0.88rem; color: var(--text-muted); margin: 0; flex: 1; }

        .existing-service-price { color: #7dd3fc; font-weight: 600; font-size: 0.85rem; margin-left: 4px; }

        .existing-service-row .existing-qty { width: 72px; min-width: 72px; text-align: center; padding: 8px 6px; }

        /* Conn step: checked address in the same blue accent */
        #fastOrderConnAddress { color: #7dd3fc; }
        #fastOrderConnAddress strong { color: inherit; }

        @media (max-width: 400px) {

            .existing-service-row { flex-wrap: wrap; gap: 8px; }

            .existing-service-row .existing-service-label { flex: 1 1 100%; }

            .existing-service-row .existing-qty { width: 64px; min-width: 64px; flex-shrink: 0; margin-left: auto; }

        }

        .existing-qty::-webkit-outer-spin-button,

        .existing-qty::-webkit-inner-spin-button,

        .fast-order-existing-form input[type="number"]::-webkit-outer-spin-button,

        .fast-order-existing-form input[type="number"]::-webkit-inner-spin-button {

            -webkit-appearance: none;

            margin: 0;

        }

        .existing-qty,

        .fast-order-existing-form input[type="number"] {

            -moz-appearance: textfield;

        }

        .fast-order-existing-grid { display: flex; flex-direction: column; gap: 10px; }

        .fast-order-existing-grid label { font-size: 0.88rem; color: var(--text-muted); }

        .fast-order-existing-grid input[type="text"] { padding: 10px 14px; border-radius: 12px; border: 1px solid rgba(255,255,255,0.2); background: rgba(0,0,0,0.45); color: var(--text-heading); width: 100%; box-sizing: border-box; }

        .fast-order-next-box {

            display: none;

            margin-top: 10px;

            border: 1px solid rgba(255,255,255,0.12);

            border-radius: 12px;

            padding: 10px;

            background: rgba(255,255,255,0.03);

        }

        .fast-order-next-box.is-open { display: block; }



        .chat-menu {

            position: fixed;

            top: 50%;

            right: 90px;

            transform: translateY(-50%);

            padding: 12px;

            border-radius: var(--glass-radius);

            display: none;

            flex-direction: column;

            gap: 10px;

            z-index: 999999;

            background: rgba(12, 14, 18, 0.45);

            border: 1px solid rgba(255, 255, 255, 0.12);

            box-shadow: 0 16px 48px rgba(0, 0, 0, 0.45), 0 0 0 1px rgba(255, 255, 255, 0.04) inset;

            backdrop-filter: blur(22px) saturate(1.2);

            -webkit-backdrop-filter: blur(22px) saturate(1.2);

            transition: opacity 0.35s ease, visibility 0.35s ease;

        }

        @supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {

            .chat-menu {

                background: rgba(18, 20, 26, 0.94);

                backdrop-filter: none;

                -webkit-backdrop-filter: none;

            }

        }

        .chat-menu a {

            background: rgba(255, 255, 255, 0.06);

            border: 1px solid rgba(255, 255, 255, 0.1);

            color: var(--text-heading);

            padding: 9px 12px;

            border-radius: 12px;

            text-decoration: none;

            font-size: 14px;

            display: flex;

            align-items: center;

            gap: 8px;

            transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;

        }

        .chat-menu a:hover {

            background: rgba(255, 255, 255, 0.1);

            border-color: rgba(56, 189, 248, 0.28);

            box-shadow: 0 0 0 1px rgba(56, 189, 248, 0.12);

        }

        .chat-menu a:active {

            background: rgba(255, 255, 255, 0.08);

        }

        .chat-menu i { font-size: 18px; flex-shrink: 0; }



        @media (max-width: 420px) {

            .contact-icons-floating { right: 8px; }

            .chat-menu { right: 66px; }

            .email-bubble, .chat-bubble, .bubble-link { width: 46px; height: 46px; font-size: 18px; }

        }

        /* Modalai: tas pats „premium“ mesh + veil kaip puslapyje; kortelės – stiklas (blur 12px, 28px kampai) */

        .savitarna-modal-overlay,

        .track-modal-overlay,

        .call-modal-overlay,

        .contact-email-modal-overlay,

        .ai-chat-modal-overlay,

        .speedtest-modal-overlay,

        .fast-order-modal-overlay,

        .info-modal-overlay,

        .esim-apps-modal-overlay,

        .plan-order-disclaimer-overlay {

            background: transparent !important;

            backdrop-filter: blur(12px);

            -webkit-backdrop-filter: blur(12px);

            isolation: isolate;

        }

        .savitarna-modal-overlay::before,

        .track-modal-overlay::before,

        .call-modal-overlay::before,

        .contact-email-modal-overlay::before,

        .ai-chat-modal-overlay::before,

        .speedtest-modal-overlay::before,

        .fast-order-modal-overlay::before,

        .info-modal-overlay::before,

        .esim-apps-modal-overlay::before,

        .plan-order-disclaimer-overlay::before {

            content: '';

            position: absolute;

            inset: 0;

            z-index: 0;

            pointer-events: none;

            background-image:

                linear-gradient(

                    -52deg,

                    rgba(var(--cta-rgb), 0.28),

                    rgba(124, 58, 237, 0.18),

                    rgba(56, 189, 248, 0.22),

                    rgba(165, 182, 141, 0.13),

                    rgba(var(--cta-rgb), 0.24),

                    rgba(15, 23, 42, 0.36)

                ),

                radial-gradient(ellipse 95% 85% at 12% 18%, rgba(var(--cta-rgb), 0.34) 0%, transparent 52%),

                radial-gradient(ellipse 90% 80% at 88% 82%, rgba(56, 189, 248, 0.26) 0%, transparent 50%),

                radial-gradient(circle at 48% 52%, rgba(165, 182, 141, 0.12) 0%, transparent 55%);

            background-size: 450% 450%, 210% 210%, 210% 210%, 190% 190%;

            background-position: 0% 50%, 0% 0%, 100% 100%, 50% 50%;

            background-repeat: no-repeat;

            animation: glModalMeshShift 8.5s ease-in-out infinite alternate, glModalMeshHue 10.5s ease-in-out infinite;

        }

        .savitarna-modal-overlay::after,

        .track-modal-overlay::after,

        .call-modal-overlay::after,

        .contact-email-modal-overlay::after,

        .ai-chat-modal-overlay::after,

        .speedtest-modal-overlay::after,

        .fast-order-modal-overlay::after,

        .info-modal-overlay::after,

        .esim-apps-modal-overlay::after,

        .plan-order-disclaimer-overlay::after {

            content: '';

            position: absolute;

            inset: 0;

            z-index: 1;

            pointer-events: none;

            background: linear-gradient(

                165deg,

                rgba(5, 6, 8, 0.3) 0%,

                rgba(5, 8, 12, 0.42) 45%,

                rgba(4, 6, 9, 0.5) 100%

            );

        }

        .savitarna-modal-overlay > *,

        .track-modal-overlay > *,

        .call-modal-overlay > *,

        .contact-email-modal-overlay > *,

        .ai-chat-modal-overlay > *,

        .speedtest-modal-overlay > *,

        .fast-order-modal-overlay > *,

        .info-modal-overlay > *,

        .esim-apps-modal-overlay > *,

        .plan-order-disclaimer-overlay > * {

            position: relative;

            z-index: 2;

        }

        @media (max-width: 767px) {

            .savitarna-modal-overlay::after,

            .track-modal-overlay::after,

            .call-modal-overlay::after,

            .contact-email-modal-overlay::after,

            .ai-chat-modal-overlay::after,

            .speedtest-modal-overlay::after,

            .fast-order-modal-overlay::after,

            .info-modal-overlay::after,

            .esim-apps-modal-overlay::after,

            .plan-order-disclaimer-overlay::after {

                background: linear-gradient(

                    180deg,

                    rgba(5, 8, 12, 0.4) 0%,

                    rgba(4, 6, 9, 0.55) 100%

                );

            }

        }

        @media (prefers-reduced-motion: reduce) {

            .savitarna-modal-overlay::before,

            .track-modal-overlay::before,

            .call-modal-overlay::before,

            .contact-email-modal-overlay::before,

            .ai-chat-modal-overlay::before,

            .speedtest-modal-overlay::before,

            .fast-order-modal-overlay::before,

            .info-modal-overlay::before,

            .esim-apps-modal-overlay::before {

                animation: none;

                filter: none;

            }

        }

        .portal-login-modal-shell,

        .track-modal-box,

        .call-modal-box,

        .contact-email-modal-box,

        .ai-chat-modal-box,

        .speedtest-modal-box,

        .fast-order-modal-box,

        .info-modal-box,

        .esim-apps-modal-box {

            background: var(--modal-box-bg);

            border: 1px solid var(--modal-box-border);

            box-shadow: var(--modal-box-shadow);

            border-radius: 28px;

            backdrop-filter: blur(12px);

            -webkit-backdrop-filter: blur(12px);

            color: var(--text-heading);

        }

        .portal-login-modal-shell,

        .savitarna-modal-box:not(.portal-login-modal-shell) {

            border-color: rgba(56, 189, 248, 0.26);

        }

        .savitarna-close.portal-login-close,

        .track-modal-close,

        .call-modal-close,

        .contact-email-modal-close,

        .ai-chat-modal-close,

        .speedtest-modal-close,

        .fast-order-close,

        .esim-apps-modal-close {

            width: 34px;

            height: 34px;

            border-radius: 999px;

            border: 1px solid rgba(255,255,255,0.24);

            background: rgba(0,0,0,0.45);

            color: #fff;

            font-size: 1.1rem;

            line-height: 1;

            cursor: pointer;

            display: inline-flex;

            align-items: center;

            justify-content: center;

        }

        .savitarna-close.portal-login-close:hover,

        .track-modal-close:hover,

        .call-modal-close:hover,

        .contact-email-modal-close:hover,

        .ai-chat-modal-close:hover,

        .speedtest-modal-close:hover,

        .fast-order-close:hover,

        .esim-apps-modal-close:hover {

            border-color: var(--calm-sky);

            color: var(--calm-sky);

        }

        .savitarna-title,

        .track-modal-title,

        .call-modal-title,

        .contact-email-modal-title,

        .ai-chat-modal-title,

        .speedtest-modal-title,

        .fast-order-modal-title,

        .info-modal-title,

        .esim-apps-modal-box h4 {

            font-size: 1.2rem;

            font-weight: 700;

            color: var(--calm-sky);

            text-shadow: none;

        }

        .portal-modal-sub,

        .track-modal-sub,

        .call-modal-copy,

        .fast-order-modal-sub,

        .info-modal-body,

        .ai-chat-disclaimer {

            font-size: 0.95rem;

            line-height: 1.45;

            color: var(--text-muted);

        }

        .contact-email-modal-body label,

        .call-modal-label {

            font-size: 0.85rem;

            color: var(--text-muted);

        }

        .contact-email-modal-body input,

        .contact-email-modal-body textarea,

        .call-modal-input,

        .call-modal-textarea,

        .call-modal-select,

        .call-time-trigger {

            font-size: 0.95rem;

            font-family: inherit;

        }



        /* Mobilus: modalai ne „įstringa“ po klaviatūra – flex-start + slinkimas + --gl-modal-keyboard-inset */

        @media (max-width: 767px) {

            .contact-email-modal-overlay.is-open,

            .call-modal-overlay.is-open,

            .track-modal-overlay.is-open,

            .savitarna-modal-overlay.is-open,

            .speedtest-modal-overlay.is-open,

            .fast-order-modal-overlay.is-open,

            .info-modal-overlay.is-open,

            .esim-apps-modal-overlay.active,

            .plan-order-disclaimer-overlay.active {

                align-items: flex-start !important;

                align-content: flex-start;

                overflow-y: auto !important;

                overflow-x: hidden;

                -webkit-overflow-scrolling: touch;

                overscroll-behavior-y: contain;

                padding-top: max(10px, env(safe-area-inset-top, 0px));

                padding-bottom: calc(max(12px, env(safe-area-inset-bottom, 0px)) + var(--gl-modal-keyboard-inset, 0px));

                max-height: 100dvh;

            }

            .ai-chat-modal-overlay.is-open {

                align-items: flex-start !important;

                padding-bottom: calc(max(8px, env(safe-area-inset-bottom, 8px)) + var(--gl-modal-keyboard-inset, 0px));

            }

            .contact-email-modal-box {

                max-height: min(92dvh, calc(100dvh - 24px - var(--gl-modal-keyboard-inset, 0px))) !important;

            }

            .call-modal-box {

                max-height: min(92dvh, calc(100dvh - 32px - var(--gl-modal-keyboard-inset, 0px))) !important;

            }

            .info-modal-box {

                max-height: min(88dvh, calc(100dvh - 40px - var(--gl-modal-keyboard-inset, 0px)));

                overflow-y: auto;

            }

            .track-modal-box,

            .speedtest-modal-box {

                max-height: min(92dvh, calc(100dvh - 28px - var(--gl-modal-keyboard-inset, 0px))) !important;

            }

            .fast-order-modal-box {

                max-height: min(92dvh, calc(100dvh - 24px - var(--gl-modal-keyboard-inset, 0px))) !important;

            }

            .savitarna-modal-box:not(.portal-login-modal-shell),

            .portal-login-modal-shell {

                max-height: min(92dvh, calc(100dvh - 28px - var(--gl-modal-keyboard-inset, 0px))) !important;

            }

            .contact-email-modal-body input,

            .contact-email-modal-body textarea,

            .track-modal-input,

            .call-modal-input,

            .call-modal-textarea,

            .fast-order-modal-box input,

            .fast-order-modal-box textarea,

            .fast-order-modal-box select {

                scroll-margin-bottom: 100px;

            }

        }

        @media (max-width: 520px) {

            .ai-chat-modal-overlay.is-open .ai-chat-modal-box {

                height: calc(100dvh - 12px - var(--gl-modal-keyboard-inset, 0px)) !important;

                max-height: calc(100dvh - 12px - var(--gl-modal-keyboard-inset, 0px)) !important;

            }

        }

        /* Slėpti floating ikonas, kai bet kuris modalis atidarytas – kad neperdengtų formų */

        body:has(.fast-order-modal-overlay.is-open) .contact-icons-floating,

        body:has(.savitarna-modal-overlay.is-open) .contact-icons-floating,

        body:has(.call-modal-overlay.is-open) .contact-icons-floating,

        body:has(.track-modal-overlay.is-open) .contact-icons-floating,

        body:has(.contact-email-modal-overlay.is-open) .contact-icons-floating,

        body:has(.ai-chat-modal-overlay.is-open) .contact-icons-floating,

        body:has(.speedtest-modal-overlay.is-open) .contact-icons-floating,

        body:has(.esim-apps-modal-overlay.active) .contact-icons-floating,

        body:has(.plan-order-disclaimer-overlay.active) .contact-icons-floating,

        body:has(.info-modal-overlay.is-open) .contact-icons-floating {

            opacity: 0 !important;

            visibility: hidden !important;

            pointer-events: none !important;

        }

        @media (max-width: 767px) {

            .contact-icons-floating { right: 12px; }

            .wrap { padding-left: 16px; padding-right: 16px; }

        }

        @media (max-width: 480px) {

            .wrap { padding-left: 12px; padding-right: 12px; }

        }

        /* Hero: plūduriuojančios ikonos – overlay; hero-inner naudoja įprastą .wrap padding (be 92px rezervo) */



        /* Hide duplicate benefits section (we show cards in hero right) */

        @media (min-width: 980px) {

            #benefits { display: none; }

        }
