/* Cacheable below-fold and responsive landing styles. */
/* =========================
           Common Sections
        ========================= */

        .section {
            padding: 84px 0;
        }

        .section-soft {
            background: var(--soft);
        }

        .section-title-wrap {
            max-width: 760px;
            margin: 0 auto 40px;
            text-align: center;
        }

        .section-title-wrap h2 {
            color: var(--title);
            font-size: clamp(28px, 3vw, 42px);
            line-height: 1.18;
            letter-spacing: -.035em;
            margin-bottom: 12px;
            font-weight: 800;
        }

        .section-title-wrap p {
            color: var(--muted);
            font-size: 16px;
            margin-bottom: 0;
        }

        .grid-3 {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 18px;
        }

        .grid-4 {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 18px;
        }

        .card {
            background: #fff;
            border: 1px solid var(--border);
            border-radius: var(--radius);
            box-shadow: var(--shadow-card);
            padding: 24px;
        }

        .card h3 {
            color: var(--title);
            font-size: 19px;
            margin-bottom: 10px;
            font-weight: 800;
        }

        .card p {
            margin-bottom: 0;
            color: #5d6a86;
            font-size: 14px;
        }

        .feature-card {
            position: relative;
            padding: 28px;
            background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
            border: 1px solid var(--border);
            box-shadow: var(--shadow-card);
            transition: box-shadow var(--motion-standard), border-color var(--motion-standard), background var(--motion-standard);
        }

        .feature-card:hover {
            border-color: #dbeafe;
            background: #ffffff;
            box-shadow: var(--shadow-card-hover);
        }

        .feature-top {
            display: flex;
            align-items: center;
            gap: 12px;
            margin-bottom: 22px;
        }

        .feature-index {
            width: 42px;
            height: 42px;
            border-radius: var(--radius-sm);
            display: inline-flex;
            align-items: center;
            justify-content: center;
            background: #f4f7fb;
            border: 1px solid #e8edf7;
            color: var(--primary-dark);
            font-size: 13px;
            font-weight: 800;
            letter-spacing: -.02em;
            flex-shrink: 0;
        }

        .feature-line {
            height: 1px;
            flex: 1;
            background: linear-gradient(90deg, #dbeafe, transparent);
        }

        /* =========================
           Scenarios
        ========================= */

        .scenario-section {
            background: var(--soft);
            color: var(--text);
            padding-top: 72px;
            padding-bottom: 72px;
        }

        .scenario-section .section-title-wrap {
            max-width: 820px;
        }

        .scenario-section .section-title-wrap h2 {
            color: var(--title);
        }

        .scenario-section .section-title-wrap p {
            color: var(--muted);
        }

        .scenario-label,
        .platform-label {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 9px;
            margin-bottom: 14px;
            color: var(--primary-dark);
            font-size: 12px;
            font-weight: 800;
            letter-spacing: .10em;
        }

        .scenario-label:before,
        .platform-label:before {
            content: "";
            width: 22px;
            height: 2px;
            border-radius: 999px;
            background: linear-gradient(90deg, var(--primary), var(--cyan));
        }

        .scenario-grid {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 18px;
        }

        .scenario-card {
            min-height: 188px;
            padding: 28px;
            border-radius: var(--radius-md);
            background: #ffffff;
            border: 1px solid var(--border);
            box-shadow: var(--shadow-card);
            transition: border-color var(--motion-standard), background var(--motion-standard), box-shadow var(--motion-standard);
        }

        .scenario-card:hover {
            background: #fbfdff;
            border-color: #dbeafe;
            box-shadow: var(--shadow-card-hover);
        }

        .scenario-icon {
            width: 44px;
            height: 44px;
            margin-bottom: 18px;
            border-radius: var(--radius-sm);
            display: inline-flex;
            align-items: center;
            justify-content: center;
            background: #eef5ff;
            border: 1px solid #dbeafe;
            color: var(--primary-dark);
        }

        .scenario-icon svg {
            width: 23px;
            height: 23px;
            stroke: currentColor;
            stroke-width: 1.8;
            stroke-linecap: round;
            stroke-linejoin: round;
            fill: none;
        }

        .scenario-card h3 {
            margin: 0 0 9px;
            color: var(--title);
            font-size: 19px;
            line-height: 1.35;
            font-weight: 800;
        }

        .scenario-card p {
            margin: 0;
            color: #5d6a86;
            font-size: 14px;
            line-height: 1.82;
        }

        /* =========================
           Platform Highlights
        ========================= */

        .platform-title-wrap {
            max-width: 820px;
        }

        .platform-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 18px 34px;
            max-width: 1060px;
            margin: 0 auto;
            padding: 30px;
            border-radius: var(--radius-lg);
            background: #ffffff;
            border: 1px solid var(--border);
            box-shadow: var(--shadow-card);
        }

        .platform-item {
            display: grid;
            grid-template-columns: 36px 1fr;
            gap: 12px;
            padding: 16px;
            border-radius: var(--radius-md);
            transition: background var(--motion-standard);
        }

        .platform-item:hover {
            background: #f8fbff;
        }

        .platform-check {
            width: 30px;
            height: 30px;
            border-radius: 999px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            background: #eef5ff;
            border: 1px solid #dbeafe;
            color: var(--primary-dark);
        }

        .platform-check svg {
            width: 17px;
            height: 17px;
            stroke: currentColor;
            stroke-width: 2.3;
            stroke-linecap: round;
            stroke-linejoin: round;
            fill: none;
        }

        .platform-item h3 {
            margin: 0 0 5px;
            color: var(--title);
            font-size: 17px;
            line-height: 1.35;
            font-weight: 800;
        }

        .platform-item p {
            margin: 0;
            color: #5d6a86;
            font-size: 14px;
            line-height: 1.75;
        }

        /* =========================
           Network
        ========================= */

        .network-layout {
            max-width: 1120px;
            margin: 0 auto;
        }

        .network-panel {
            position: relative;
            overflow: hidden;
            border-radius: var(--radius-lg);
            padding: 34px;
            background:
                radial-gradient(circle at 10% 8%, rgba(37, 99, 235, .13), transparent 30%),
                radial-gradient(circle at 90% 10%, rgba(6, 182, 212, .13), transparent 30%),
                linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
            border: 1px solid var(--border);
            box-shadow: var(--shadow-card);
        }

        .network-panel:after {
            content: "";
            position: absolute;
            right: -120px;
            bottom: -120px;
            width: 280px;
            height: 280px;
            border-radius: 999px;
            background: radial-gradient(circle, rgba(37, 99, 235, .10), transparent 68%);
            pointer-events: none;
        }

        .network-panel-wide {
            padding: 38px;
        }

        .network-panel h3 {
            position: relative;
            z-index: 1;
            margin: 0 0 12px;
            color: var(--title);
            font-size: 28px;
            line-height: 1.25;
            letter-spacing: -.035em;
        }

        .network-panel p {
            position: relative;
            z-index: 1;
            margin: 0 0 24px;
            color: #5d6a86;
            font-size: 15px;
        }

        .region-grid {
            position: relative;
            z-index: 1;
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 12px;
        }

        .region-card {
            min-height: 68px;
            display: inline-flex;
            align-items: center;
            gap: 12px;
            padding: 14px 16px;
            border-radius: var(--radius-md);
            border: 1px solid #dbeafe;
            background: rgba(255, 255, 255, .78);
            color: #172554;
            font-weight: 800;
            font-size: 15px;
            box-shadow: 0 10px 22px rgba(37, 99, 235, .05);
            transition: border-color var(--motion-standard), background var(--motion-standard), box-shadow var(--motion-standard);
        }

        .region-card:hover {
            border-color: #b9d5ff;
            background: rgba(255, 255, 255, .94);
            box-shadow: var(--shadow-card-hover);
        }

        .region-flag {
            width: 30px;
            height: 22px;
            display: block;
            object-fit: cover;
            border-radius: 4px;
            background: #ffffff;
            border: 1px solid rgba(15, 42, 95, .12);
            box-shadow: 0 8px 18px rgba(20, 24, 40, .08);
            flex-shrink: 0;
            transition: box-shadow var(--motion-standard);
        }

        .network-note {
            margin-top: 20px;
            color: var(--muted);
            font-size: 13px;
            line-height: 1.8;
        }

        /* =========================
           Use Cases
        ========================= */

        .usecases-section {
            position: relative;
            overflow: hidden;
            background:
                radial-gradient(circle at 10% 0%, rgba(255, 255, 255, .14), transparent 28%),
                radial-gradient(circle at 90% 8%, rgba(6, 182, 212, .26), transparent 30%),
                linear-gradient(135deg, #111827 0%, #172554 58%, #0e7490 100%);
            color: rgba(255, 255, 255, .78);
        }

        .usecases-section:before {
            content: "";
            position: absolute;
            inset: 0;
            z-index: 0;
            background: linear-gradient(180deg, rgba(255,255,255,.035), transparent 52%);
            pointer-events: none;
        }

        .usecases-threads {
            display: none;
            position: absolute;
            inset: 0;
            z-index: 1;
            opacity: .36;
            pointer-events: none;
        }

        .usecases-threads canvas {
            width: 100%;
            height: 100%;
            display: block;
        }

        @media (min-width: 768px) {
            .usecases-threads {
                display: block;
            }
        }

        .usecases-section .container {
            position: relative;
            z-index: 2;
        }

        .usecases-section .section-title-wrap h2 {
            color: #fff;
        }

        .usecases-section .section-title-wrap p {
            color: rgba(255, 255, 255, .72);
        }

        .usecases-label {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            height: 28px;
            padding: 0 11px;
            margin-bottom: 14px;
            border-radius: 999px;
            background: rgba(255, 255, 255, .10);
            border: 1px solid rgba(255, 255, 255, .16);
            color: #bfdbfe;
            font-size: 12px;
            font-weight: 900;
            letter-spacing: .04em;
            backdrop-filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
        }

        .usecase-card {
            position: relative;
            padding: 28px;
            border-radius: var(--radius-md);
            background: rgba(255, 255, 255, .075);
            border: 1px solid rgba(255, 255, 255, .13);
            box-shadow: 0 18px 38px rgba(0, 0, 0, .14);
            backdrop-filter: blur(20px) saturate(108%);
            -webkit-backdrop-filter: blur(20px) saturate(108%);
            overflow: hidden;
            transition: box-shadow var(--motion-standard), border-color var(--motion-standard), background var(--motion-standard);
        }

        .usecase-card:hover {
            background: rgba(255, 255, 255, .115);
            border-color: rgba(191, 211, 255, .40);
            box-shadow:
                inset 0 1px 0 rgba(255, 255, 255, .08),
                0 24px 48px rgba(0, 0, 0, .18);
        }

        .usecase-card:before {
            content: "";
            position: absolute;
            inset: 0;
            z-index: 0;
            border-radius: inherit;
            background:
                linear-gradient(180deg, rgba(255, 255, 255, .045), rgba(255, 255, 255, .015)),
                rgba(9, 24, 58, .18);
            pointer-events: none;
        }

        .usecase-card:after {
            content: none;
        }

        .usecase-head {
            position: relative;
            z-index: 2;
            display: flex;
            align-items: center;
            gap: 14px;
            margin-bottom: 18px;
        }

        .usecase-symbol {
            width: 46px;
            height: 46px;
            border-radius: 16px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            background: rgba(255, 255, 255, .10);
            border: 1px solid rgba(255, 255, 255, .16);
            color: #ffffff;
            font-size: 13px;
            font-weight: 900;
            letter-spacing: .03em;
            flex-shrink: 0;
        }

        .usecase-head h3 {
            margin: 0;
            color: #ffffff;
            font-size: 18px;
            font-weight: 800;
        }

        .usecase-head span {
            display: block;
            margin-top: 2px;
            color: rgba(255, 255, 255, .72);
            font-size: 12px;
            font-weight: 700;
        }

        .usecase-card p {
            position: relative;
            z-index: 2;
            margin: 0;
            color: rgba(255, 255, 255, .82);
            font-size: 14px;
            line-height: 1.85;
        }

        /* =========================
           FAQ
        ========================= */

        .faq-section {
            background: #ffffff;
        }

        .faq-layout {
            display: grid;
            grid-template-columns: minmax(0, .78fr) minmax(0, 1.22fr);
            gap: 64px;
            align-items: start;
            max-width: 1080px;
            margin: 0 auto;
        }

        .faq-intro {
            position: sticky;
            top: 112px;
        }

        .faq-intro h2 {
            margin-bottom: 14px;
            color: var(--title);
            font-size: clamp(28px, 3vw, 40px);
            line-height: 1.2;
            letter-spacing: -.035em;
            font-weight: 800;
        }

        .faq-intro p {
            max-width: 480px;
            margin-bottom: 0;
            color: var(--muted);
            font-size: 15px;
        }

        .faq-list {
            display: grid;
            gap: 12px;
        }

        .faq-item {
            border: 1px solid var(--border);
            border-radius: var(--radius-md);
            background: #ffffff;
            box-shadow: var(--shadow-card);
            overflow: hidden;
            transition: border-color var(--motion-standard), box-shadow var(--motion-standard), background var(--motion-standard);
        }

        .faq-item[open] {
            border-color: #dbeafe;
            background: #fbfdff;
            box-shadow: var(--shadow-card-hover);
        }

        .faq-item summary {
            min-height: 68px;
            padding: 18px 58px 18px 22px;
            display: flex;
            align-items: center;
            position: relative;
            color: var(--title);
            font-size: 16px;
            line-height: 1.45;
            font-weight: 800;
            cursor: pointer;
            list-style: none;
        }

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

        .faq-item summary:focus-visible {
            outline: 3px solid rgba(37, 99, 235, .22);
            outline-offset: -3px;
        }

        .faq-item summary:after {
            content: "";
            position: absolute;
            top: 50%;
            right: 22px;
            width: 20px;
            height: 20px;
            margin-top: -10px;
            border-radius: 999px;
            background:
                linear-gradient(var(--primary-dark), var(--primary-dark)) center / 10px 2px no-repeat,
                linear-gradient(var(--primary-dark), var(--primary-dark)) center / 2px 10px no-repeat,
                #eef5ff;
            transition: transform var(--motion-standard), background var(--motion-standard);
        }

        .faq-item[open] summary:after {
            transform: rotate(45deg);
            background:
                linear-gradient(var(--primary-dark), var(--primary-dark)) center / 10px 2px no-repeat,
                linear-gradient(var(--primary-dark), var(--primary-dark)) center / 2px 10px no-repeat,
                #e1ecff;
        }

        .faq-answer {
            padding: 0 22px 22px;
            color: #5d6a86;
            font-size: 14px;
            line-height: 1.85;
        }

        .faq-answer p {
            margin: 0;
        }

        /* =========================
           Legal Pages
        ========================= */

        .legal-hero {
            position: relative;
            overflow: hidden;
            padding: 92px 0 72px;
            background:
                radial-gradient(circle at 16% 10%, rgba(37, 99, 235, .24), transparent 30%),
                radial-gradient(circle at 86% 12%, rgba(6, 182, 212, .22), transparent 32%),
                linear-gradient(135deg, #111827 0%, #172554 58%, #0e7490 100%);
            color: rgba(255, 255, 255, .78);
        }

        .legal-hero:before {
            content: "";
            position: absolute;
            inset: 0;
            background:
                linear-gradient(180deg, rgba(255, 255, 255, .04), transparent 45%),
                radial-gradient(circle at 50% 100%, rgba(37, 99, 235, .18), transparent 44%);
            pointer-events: none;
        }

        .legal-hero-inner {
            position: relative;
            z-index: 1;
            max-width: 860px;
            margin: 0 auto;
            text-align: center;
        }

        .legal-hero h1 {
            color: #ffffff;
            font-size: clamp(38px, 4.8vw, 64px);
            line-height: 1.08;
            letter-spacing: -.055em;
            margin-bottom: 18px;
            text-shadow: 0 14px 36px rgba(0, 0, 0, .22);
        }

        .legal-hero p {
            max-width: 720px;
            margin: 0 auto;
            font-size: 17px;
            color: rgba(255, 255, 255, .72);
        }

        .legal-tabs-wrap {
            position: relative;
            z-index: 3;
            margin-top: -28px;
        }

        .legal-tabs {
            width: fit-content;
            max-width: 100%;
            margin: 0 auto;
            padding: 7px;
            display: flex;
            align-items: center;
            gap: 6px;
            border-radius: 999px;
            background: rgba(255, 255, 255, .94);
            border: 1px solid rgba(238, 241, 247, .95);
            box-shadow: 0 18px 45px rgba(20, 24, 40, .10);
            overflow-x: auto;
            -webkit-overflow-scrolling: touch;
        }

        .legal-tabs a {
            height: 38px;
            padding: 0 16px;
            border-radius: 999px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            color: #53617e;
            font-size: 13px;
            font-weight: 900;
            white-space: nowrap;
            transition: color .2s ease, background .2s ease, box-shadow .2s ease;
        }

        .legal-tabs a:hover {
            color: var(--primary-dark);
            background: #eff6ff;
        }

        .legal-tabs a.active {
            color: #ffffff;
            background: linear-gradient(135deg, var(--primary), var(--cyan));
            box-shadow: 0 10px 22px rgba(37, 99, 235, .18);
        }

        .legal-section {
            padding: 78px 0 84px;
            background: var(--soft);
        }

        .legal-shell {
            max-width: 1120px;
            margin: 0 auto;
        }

        .legal-updated {
            margin: 0 0 22px;
            padding: 14px 18px;
            border-radius: 18px;
            background: #ffffff;
            border: 1px solid var(--border);
            box-shadow: var(--shadow-sm);
            color: var(--muted);
            font-size: 14px;
            font-weight: 800;
        }

        .legal-row {
            display: grid;
            grid-template-columns: minmax(0, 1fr) 300px;
            gap: 22px;
            align-items: start;
            margin-bottom: 22px;
        }

        .legal-card,
        .legal-simple-card {
            border-radius: 24px;
            background: #ffffff;
            border: 1px solid var(--border);
            box-shadow: var(--shadow-sm);
        }

        .legal-card {
            padding: 30px;
            color: #4b587c;
            font-size: 15px;
        }

        .legal-card h2 {
            margin: 0 0 18px;
            color: var(--title);
            font-size: 26px;
            line-height: 1.25;
            letter-spacing: -.025em;
        }

        .legal-card p {
            color: #4b587c;
            font-size: 15px;
        }

        .legal-card b {
            color: #172554;
            font-weight: 900;
        }

        .legal-card u {
            text-underline-offset: 4px;
        }

        .legal-card a {
            color: var(--primary-dark);
            font-weight: 850;
        }

        .legal-card a:hover {
            text-decoration: underline;
            text-underline-offset: 4px;
        }

        .legal-card ol {
            color: #4b587c;
            font-size: 15px;
        }

        .legal-simple-card {
            position: sticky;
            top: 98px;
            padding: 22px;
            background:
                radial-gradient(circle at 14% 10%, rgba(37, 99, 235, .08), transparent 38%),
                linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
        }

        .legal-simple-card h3 {
            margin: 0 0 12px;
            color: var(--title);
            font-size: 15px;
            font-weight: 950;
        }

        .legal-simple {
            margin: 0;
            color: #6b7690;
            font-size: 14px;
            line-height: 1.8;
        }

        .legal-intro {
            margin-bottom: 22px;
        }

        .standard-ol {
            padding-left: 24px;
        }

        .list-upper-latin {
            list-style-type: upper-latin;
        }

        .policy-shell {
            max-width: 1040px;
            margin: 0 auto;
        }

        .policy-card {
            margin-bottom: 22px;
            padding: 30px;
            border-radius: 24px;
            background: #ffffff;
            border: 1px solid var(--border);
            box-shadow: var(--shadow-sm);
            color: #4b587c;
            font-size: 15px;
        }

        .policy-card h2 {
            margin: 0 0 18px;
            color: var(--title);
            font-size: 26px;
            line-height: 1.25;
            letter-spacing: -.025em;
        }

        .policy-card a {
            color: var(--primary-dark);
            font-weight: 850;
        }

        .policy-intro {
            background:
                radial-gradient(circle at 12% 0%, rgba(37, 99, 235, .08), transparent 34%),
                linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
        }

        .policy-note {
            margin-top: 20px;
            padding: 16px 18px;
            border-radius: 18px;
            background: #eff6ff;
            border: 1px solid #dbeafe;
            color: #365177;
            font-size: 14px;
            line-height: 1.8;
        }

        /* =========================
           CTA
        ========================= */

        .cta-section {
            padding: 0 0 84px;
            background: var(--soft);
        }

        .cta {
            border-radius: 30px;
            padding: 46px;
            background: linear-gradient(135deg, #2563eb, #06b6d4);
            color: #fff;
            display: grid;
            grid-template-columns: 1fr auto;
            gap: 24px;
            align-items: center;
            box-shadow: var(--shadow-blue);
        }

        .cta h2 {
            color: #fff;
            margin-bottom: 8px;
            font-size: 34px;
            line-height: 1.2;
            letter-spacing: -.035em;
        }

        .cta p {
            margin-bottom: 0;
            color: rgba(255,255,255,.84);
        }

        .cta .btn {
            color: #0f3e8a;
            background: linear-gradient(180deg, #ffffff 0%, #edf4ff 100%);
            border-color: rgba(255,255,255,.68);
            box-shadow:
                inset 0 1px 0 rgba(255, 255, 255, .96),
                0 12px 26px rgba(15, 62, 138, .16);
        }

        .cta .btn:hover {
            color: #0b3477;
            border-color: rgba(255,255,255,.84);
            box-shadow:
                inset 0 1px 0 rgba(255, 255, 255, .98),
                0 16px 32px rgba(15, 62, 138, .20);
        }

        /* =========================
           Footer
        ========================= */

        .footer {
            padding: 58px 0 34px;
            background:
                radial-gradient(circle at 12% 0%, rgba(37, 99, 235, .18), transparent 28%),
                radial-gradient(circle at 88% 12%, rgba(6, 182, 212, .16), transparent 30%),
                linear-gradient(135deg, #0f172a 0%, #111827 48%, #172554 100%);
            color: rgba(255, 255, 255, .72);
        }

        .footer-main {
            display: grid;
            grid-template-columns: 1.5fr .7fr .7fr;
            gap: 34px;
            align-items: flex-start;
        }

        .footer .brand {
            color: #fff;
        }

        .footer .brand-mark {
            background: rgba(255, 255, 255, .96);
            border-color: rgba(255, 255, 255, .18);
            box-shadow: 0 12px 28px rgba(0, 0, 0, .18);
        }

        .footer .brand-name {
            color: #fff;
        }

        .footer .brand-subtitle {
            color: rgba(255, 255, 255, .54);
        }

        .footer-desc {
            margin: 18px 0 0;
            max-width: 430px;
            color: rgba(255, 255, 255, .62);
            font-size: 14px;
            line-height: 1.8;
        }

        .footer-col h3 {
            margin: 0 0 14px;
            color: #fff;
            font-size: 14px;
            font-weight: 900;
        }

        .footer-links {
            display: grid;
            gap: 10px;
        }

        .footer-links a {
            color: rgba(255, 255, 255, .64);
            font-size: 13px;
            font-weight: 700;
            transition: color .2s ease, transform .2s ease;
        }

        .footer-links a:hover {
            color: #fff;
            transform: translateX(2px);
        }

        .footer-links a:focus-visible {
            color: #ffffff;
            outline-color: rgba(191, 219, 254, .72);
        }

        .footer-bottom {
            margin-top: 38px;
            padding-top: 22px;
            border-top: 1px solid rgba(255, 255, 255, .10);
            display: flex;
            align-items: center;
            justify-content: flex-start;
            gap: 18px;
            flex-wrap: wrap;
        }

        .legal-note {
            color: rgba(255, 255, 255, .54);
            font-size: 13px;
        }

        .legal-note strong {
            color: rgba(255, 255, 255, .78);
            font-weight: 800;
        }

        /* =========================
           Responsive
        ========================= */

        @media (max-width: 1080px) {
            .nav-links {
                gap: 4px;
            }

            .nav-links a {
                padding: 0 10px;
            }

            .grid-4,
            .scenario-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            .footer-main {
                grid-template-columns: 1.2fr .8fr .8fr;
            }
        }

        @media (max-width: 980px) {
            .nav-center {
                display: none;
            }

            .lang-switch-mobile {
                display: inline-flex;
            }

            .nav-toggle {
                display: inline-flex;
            }

            .faq-layout {
                grid-template-columns: 1fr;
                gap: 30px;
            }

            .faq-intro {
                position: static;
                max-width: 680px;
            }

            .cta,
            .network-layout {
                grid-template-columns: 1fr;
            }

            .grid-3,
            .scenario-grid,
            .region-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            .usecases-section .grid-3 {
                grid-template-columns: repeat(3, minmax(0, 1fr));
            }

            .legal-row {
                grid-template-columns: 1fr;
            }

            .legal-simple-card {
                position: static;
            }
        }

        @media (max-width: 760px) {
            .nav-actions .btn-ghost {
                display: none;
            }

            .hero-notes,
            .usecases-section .grid-3 {
                grid-template-columns: 1fr;
            }

            .footer-main {
                grid-template-columns: 1fr;
                gap: 26px;
            }
        }

        @media (max-width: 640px) {
            .container {
                width: min(100% - 28px, 1180px);
            }

            .nav {
                min-height: auto;
                padding: 14px 0;
                align-items: center;
                gap: 12px;
            }

            .brand {
                gap: 10px;
            }

            .brand-mark {
                width: 38px;
                height: 38px;
                border-radius: 14px;
            }

            .brand-mark img {
                width: 28px;
                height: 28px;
            }

            .brand-name {
                font-size: 17px;
            }

            .brand-subtitle {
                display: none;
            }

            .nav-actions {
                gap: 8px;
            }

            .nav-actions .btn {
                min-height: 38px;
                padding: 0 14px;
                font-size: 13px;
            }

            .lang-switch-mobile {
                height: 38px;
                min-width: 42px;
                padding: 0 11px;
                font-size: 12px;
            }

            .nav-actions .btn-ghost {
                display: none;
            }

            .hero,
            .legal-hero {
                padding: 66px 0 58px;
            }

            .hero h1 {
                font-size: clamp(34px, 11vw, 42px);
                line-height: 1.1;
            }

            .legal-hero h1 {
                font-size: 42px;
            }

            .hero-desc,
            .legal-hero p {
                font-size: 15px;
            }

            .eyebrow {
                max-width: 100%;
                margin-bottom: 16px;
                line-height: 1.45;
            }

            .hero-actions {
                width: 100%;
            }

            .hero-actions .btn,
            .cta .btn {
                width: 100%;
            }

            .hero-notes,
            .scenario-grid,
            .grid-3,
            .grid-4,
            .platform-grid {
                grid-template-columns: 1fr;
            }

            .region-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            .platform-grid {
                padding: 18px;
                gap: 8px;
            }

            .platform-item {
                padding: 14px;
            }

            .scenario-card {
                min-height: 0;
                padding: 22px;
            }

            .scenario-icon {
                margin-bottom: 14px;
            }

            .feature-card,
            .usecase-card {
                padding: 22px;
            }

            .region-card {
                min-height: 58px;
                padding: 12px 14px;
            }

            .network-panel-wide {
                padding: 24px 18px;
                border-radius: 22px;
            }

            .note {
                padding: 16px;
                text-align: left;
            }

            .section,
            .legal-section {
                padding: 58px 0;
            }

            .section-title-wrap {
                margin-bottom: 28px;
            }

            .faq-layout {
                gap: 24px;
            }

            .faq-item summary {
                min-height: 62px;
                padding: 16px 52px 16px 18px;
                font-size: 15px;
            }

            .faq-item summary:after {
                right: 18px;
            }

            .faq-answer {
                padding: 0 18px 18px;
            }

            .legal-tabs {
                width: 100%;
                justify-content: flex-start;
            }

            .legal-card,
            .policy-card {
                padding: 24px 20px;
                border-radius: 22px;
            }

            .legal-card h2,
            .policy-card h2 {
                font-size: 22px;
            }

            .legal-simple-card {
                padding: 20px;
                border-radius: 22px;
            }

            .network-panel {
                padding: 26px 22px;
                border-radius: 24px;
            }

            .network-panel h3 {
                font-size: 24px;
            }

            .cta-section {
                padding-bottom: 58px;
            }

            .cta {
                padding: 30px 22px;
                border-radius: 24px;
            }

            .cta h2 {
                font-size: 26px;
            }

            .footer {
                padding: 44px 0 28px;
            }

            .footer-desc {
                max-width: none;
            }

            .footer-bottom {
                align-items: flex-start;
                flex-direction: column;
            }
        }

        @media (max-width: 420px) {
            .lang-switch-mobile {
                display: none;
            }

            .mobile-menu-links,
            .region-grid {
                grid-template-columns: 1fr;
            }

            .nav-actions {
                gap: 6px;
            }

            .nav-actions .btn {
                padding: 0 12px;
            }
        }

        @media (prefers-reduced-motion: reduce) {
            html {
                scroll-behavior: auto;
            }

            *,
            *::before,
            *::after {
                animation-duration: .01ms !important;
                animation-iteration-count: 1 !important;
                scroll-behavior: auto !important;
                transition-duration: .01ms !important;
            }

            .btn:hover,
            .note:hover,
            .feature-card:hover,
            .scenario-card:hover,
            .platform-item:hover,
            .region-card:hover,
            .usecase-card:hover,
            .footer-links a:hover {
                transform: none;
            }
        }
