/* roulang page: index */
:root {
            --primary: #d92d73;
            --primary-dark: #b71f5d;
            --primary-soft: #fff0f6;
            --lime: #b8d936;
            --lime-dark: #6f8610;
            --teal: #168e8a;
            --teal-dark: #0e6f6c;
            --charcoal: #202126;
            --dark: #29272f;
            --dark-soft: #37343e;
            --bg: #f5f6f8;
            --surface: #ffffff;
            --surface-alt: #eef1f3;
            --text: #202126;
            --muted: #666a73;
            --border: #dfe2e7;
            --border-strong: #c8ccd3;
            --danger: #c6284d;
            --success: #197252;
            --radius-sm: 4px;
            --radius: 7px;
            --shadow-sm: 0 5px 16px rgba(32, 33, 38, .06);
            --shadow: 0 14px 34px rgba(32, 33, 38, .10);
            --container: 1240px;
            --transition: 180ms ease;
        }

        *, *::before, *::after {
            box-sizing: border-box;
        }

        html {
            scroll-behavior: smooth;
            scroll-padding-top: 128px;
        }

        body {
            margin: 0;
            min-width: 320px;
            overflow-x: hidden;
            color: var(--text);
            background: var(--bg);
            font-family: "Microsoft YaHei", "PingFang SC", "Noto Sans SC", Arial, sans-serif;
            font-size: 16px;
            line-height: 1.75;
            letter-spacing: 0;
            -webkit-font-smoothing: antialiased;
        }

        body.menu-open {
            overflow: hidden;
        }

        h1, h2, h3, p, ul, ol, dl, dd {
            margin-top: 0;
        }

        h1, h2, h3 {
            color: var(--charcoal);
            line-height: 1.28;
            letter-spacing: 0;
            overflow-wrap: anywhere;
        }

        h1 {
            margin-bottom: 22px;
            font-size: 50px;
            font-weight: 800;
        }

        h2 {
            margin-bottom: 16px;
            font-size: 34px;
            font-weight: 800;
        }

        h3 {
            margin-bottom: 10px;
            font-size: 21px;
            font-weight: 750;
        }

        p {
            margin-bottom: 18px;
        }

        a {
            color: var(--teal-dark);
            text-decoration: none;
            transition: color var(--transition), background-color var(--transition), border-color var(--transition), transform var(--transition);
        }

        a:hover {
            color: var(--primary-dark);
        }

        button, input, select, textarea {
            margin: 0;
            color: inherit;
            font: inherit;
            letter-spacing: 0;
        }

        button {
            border: 0;
            cursor: pointer;
        }

        button:disabled, .btn:disabled {
            cursor: not-allowed;
            opacity: .55;
            transform: none;
        }

        img {
            display: block;
            max-width: 100%;
        }

        :focus-visible {
            outline: 3px solid var(--lime);
            outline-offset: 3px;
            box-shadow: 0 0 0 5px rgba(217, 45, 115, .22);
        }

        .skip-link {
            position: fixed;
            z-index: 9999;
            top: 8px;
            left: 8px;
            padding: 10px 16px;
            color: #fff;
            background: var(--charcoal);
            border-radius: var(--radius);
            transform: translateY(-160%);
        }

        .skip-link:focus {
            transform: translateY(0);
        }

        .container {
            width: min(calc(100% - 64px), var(--container));
            margin-inline: auto;
        }

        .section {
            padding: 92px 0;
        }

        .section-head {
            display: grid;
            grid-template-columns: minmax(0, 7fr) minmax(280px, 4fr);
            gap: 56px;
            align-items: end;
            margin-bottom: 42px;
        }

        .section-head p {
            margin-bottom: 3px;
            color: var(--muted);
            font-size: 17px;
        }

        .section-kicker {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            margin-bottom: 12px;
            color: var(--primary-dark);
            font-size: 14px;
            font-weight: 800;
        }

        .section-kicker::before {
            width: 30px;
            height: 3px;
            background: var(--primary);
            content: "";
        }

        .badge {
            display: inline-flex;
            align-items: center;
            gap: 7px;
            width: fit-content;
            padding: 5px 9px;
            border: 1px solid var(--border-strong);
            border-radius: var(--radius-sm);
            color: var(--muted);
            background: #fff;
            font-size: 13px;
            font-weight: 700;
            line-height: 1.4;
        }

        .badge::before {
            width: 7px;
            height: 7px;
            border-radius: 50%;
            background: var(--lime);
            content: "";
        }

        .badge--pink {
            color: var(--primary-dark);
            border-color: #f2b8d0;
            background: var(--primary-soft);
        }

        .btn {
            display: inline-flex;
            min-height: 48px;
            align-items: center;
            justify-content: center;
            gap: 9px;
            padding: 11px 20px;
            border: 1px solid transparent;
            border-radius: var(--radius);
            font-size: 15px;
            font-weight: 800;
            line-height: 1.4;
            text-align: center;
            transition: transform var(--transition), box-shadow var(--transition), background-color var(--transition), border-color var(--transition), color var(--transition);
        }

        .btn:hover {
            transform: translateY(-2px);
        }

        .btn:active {
            transform: translateY(0);
        }

        .btn-primary {
            color: #fff;
            background: var(--primary);
            box-shadow: 0 8px 20px rgba(217, 45, 115, .22);
        }

        .btn-primary:hover {
            color: #fff;
            background: var(--primary-dark);
            box-shadow: 0 11px 24px rgba(183, 31, 93, .28);
        }

        .btn-secondary {
            color: var(--charcoal);
            border-color: var(--charcoal);
            background: transparent;
        }

        .btn-secondary:hover {
            color: #fff;
            background: var(--charcoal);
        }

        .btn-light {
            color: var(--charcoal);
            background: #fff;
            border-color: #fff;
        }

        .btn-light:hover {
            color: var(--primary-dark);
            background: var(--primary-soft);
        }

        .icon {
            width: 20px;
            height: 20px;
            flex: 0 0 auto;
            fill: none;
            stroke: currentColor;
            stroke-linecap: round;
            stroke-linejoin: round;
            stroke-width: 2;
        }

        .site-header {
            position: sticky;
            z-index: 1000;
            top: 0;
            background: rgba(255, 255, 255, .98);
            box-shadow: 0 1px 0 var(--border);
        }

        .brand-row {
            border-bottom: 1px solid var(--border);
        }

        .brand-row__inner {
            display: flex;
            min-height: 70px;
            align-items: center;
            justify-content: space-between;
            gap: 24px;
            transition: min-height var(--transition);
        }

        .site-header.is-compact .brand-row__inner {
            min-height: 58px;
        }

        .brand-logo {
            display: inline-flex;
            min-width: 0;
            align-items: center;
            gap: 12px;
            color: var(--charcoal);
            font-size: 19px;
            font-weight: 900;
            line-height: 1.25;
            overflow-wrap: anywhere;
        }

        .brand-logo:hover {
            color: var(--primary-dark);
        }

        .brand-mark {
            display: grid;
            width: 38px;
            height: 38px;
            flex: 0 0 auto;
            place-items: center;
            color: #fff;
            background: var(--primary);
            border: 3px solid var(--charcoal);
            border-radius: var(--radius);
            box-shadow: 4px 4px 0 var(--lime);
            font-size: 15px;
            font-weight: 900;
        }

        .brand-actions {
            display: flex;
            align-items: center;
            gap: 10px;
        }

        .search-trigger, .menu-trigger {
            display: inline-grid;
            width: 44px;
            height: 44px;
            place-items: center;
            color: var(--charcoal);
            border: 1px solid var(--border);
            border-radius: var(--radius);
            background: #fff;
            transition: color var(--transition), border-color var(--transition), background-color var(--transition);
        }

        .search-trigger:hover, .menu-trigger:hover {
            color: var(--primary-dark);
            border-color: var(--primary);
            background: var(--primary-soft);
        }

        .menu-trigger {
            display: none;
        }

        .channel-row {
            background: #fff;
        }

        .channel-nav {
            display: flex;
            min-height: 50px;
            align-items: stretch;
            gap: 4px;
            overflow-x: auto;
            scrollbar-width: none;
        }

        .channel-nav::-webkit-scrollbar {
            display: none;
        }

        .channel-nav a {
            position: relative;
            display: inline-flex;
            flex: 0 0 auto;
            align-items: center;
            padding: 0 17px;
            color: var(--charcoal);
            font-size: 15px;
            font-weight: 750;
            white-space: nowrap;
        }

        .channel-nav a:hover {
            color: var(--primary-dark);
            background: var(--primary-soft);
        }

        .channel-nav a.active {
            color: #fff;
            background: var(--primary);
        }

        .channel-nav a.active::after {
            position: absolute;
            right: 13px;
            bottom: 0;
            left: 13px;
            height: 3px;
            background: var(--lime);
            content: "";
        }

        .mobile-panel {
            display: none;
            padding: 0 16px 16px;
            border-top: 1px solid var(--border);
            background: #fff;
        }

        .mobile-search {
            display: flex;
            gap: 8px;
            padding-top: 14px;
        }

        .mobile-search input {
            min-width: 0;
            flex: 1;
            height: 44px;
            padding: 0 13px;
            border: 1px solid var(--border-strong);
            border-radius: var(--radius);
            background: var(--bg);
        }

        .hero {
            position: relative;
            min-height: 590px;
            display: flex;
            align-items: center;
            overflow: hidden;
            color: #fff;
            background-color: var(--dark);
            background-image:
                linear-gradient(90deg, rgba(32, 33, 38, .98) 0%, rgba(32, 33, 38, .90) 44%, rgba(32, 33, 38, .38) 72%, rgba(32, 33, 38, .64) 100%),
                url("/assets/safe-access-workspace.jpg");
            background-position: center;
            background-size: cover;
        }

        .hero::after {
            position: absolute;
            right: 0;
            bottom: 0;
            width: 44%;
            height: 7px;
            background: var(--lime);
            content: "";
        }

        .hero__inner {
            position: relative;
            z-index: 1;
            display: grid;
            grid-template-columns: minmax(0, 7fr) minmax(310px, 4fr);
            gap: 72px;
            align-items: center;
            width: 100%;
            padding: 70px 0 76px;
        }

        .hero h1 {
            max-width: 760px;
            color: #fff;
        }

        .hero__lead {
            max-width: 720px;
            margin-bottom: 30px;
            color: #e6e5e9;
            font-size: 18px;
            line-height: 1.85;
        }

        .hero__actions {
            display: flex;
            flex-wrap: wrap;
            gap: 12px;
            margin-bottom: 30px;
        }

        .hero__notes {
            display: flex;
            flex-wrap: wrap;
            gap: 10px 22px;
            color: #d7d6dc;
            font-size: 14px;
        }

        .hero__notes span {
            display: inline-flex;
            align-items: center;
            gap: 8px;
        }

        .hero__notes span::before {
            width: 8px;
            height: 8px;
            border-radius: 2px;
            background: var(--lime);
            content: "";
        }

        .guide-cover {
            position: relative;
            min-height: 382px;
            padding: 36px 30px;
            color: var(--charcoal);
            background: #fff;
            border: 1px solid rgba(255, 255, 255, .55);
            border-radius: var(--radius);
            box-shadow: 14px 16px 0 rgba(184, 217, 54, .90), 0 22px 44px rgba(0, 0, 0, .22);
            transform: rotate(1.2deg);
        }

        .guide-cover::before, .guide-cover::after {
            position: absolute;
            width: 28px;
            height: 28px;
            content: "";
        }

        .guide-cover::before {
            top: 14px;
            left: 14px;
            border-top: 3px solid var(--primary);
            border-left: 3px solid var(--primary);
        }

        .guide-cover::after {
            right: 14px;
            bottom: 14px;
            border-right: 3px solid var(--teal);
            border-bottom: 3px solid var(--teal);
        }

        .cover-code {
            color: var(--primary-dark);
            font-size: 13px;
            font-weight: 900;
        }

        .cover-title {
            margin: 32px 0 16px;
            font-size: 29px;
            font-weight: 900;
            line-height: 1.35;
        }

        .cover-rule {
            width: 64px;
            height: 5px;
            margin-bottom: 24px;
            background: var(--primary);
        }

        .cover-list {
            margin: 0;
            padding: 0;
            list-style: none;
        }

        .cover-list li {
            display: flex;
            gap: 11px;
            padding: 10px 0;
            border-bottom: 1px solid var(--border);
            color: var(--muted);
            font-size: 14px;
        }

        .cover-list strong {
            color: var(--charcoal);
        }

        .cover-age {
            position: absolute;
            right: 28px;
            bottom: 25px;
            display: grid;
            width: 48px;
            height: 48px;
            place-items: center;
            color: #fff;
            background: var(--charcoal);
            border-radius: 50%;
            font-size: 15px;
            font-weight: 900;
        }

        .metrics {
            padding: 50px 0 78px;
            background: #fff;
            border-bottom: 1px solid var(--border);
        }

        .metric-layout {
            display: grid;
            grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
            gap: 18px;
        }

        .metric-feature {
            position: relative;
            min-height: 280px;
            padding: 34px;
            overflow: hidden;
            color: #fff;
            background: var(--dark);
            border-radius: var(--radius);
        }

        .metric-feature::after {
            position: absolute;
            right: -35px;
            bottom: -48px;
            width: 180px;
            height: 180px;
            border: 32px solid var(--primary);
            border-radius: 50%;
            content: "";
            opacity: .82;
        }

        .metric-feature .badge {
            color: #fff;
            border-color: #5c5964;
            background: #383640;
        }

        .metric-number {
            margin: 28px 0 6px;
            color: #fff;
            font-size: 64px;
            font-weight: 900;
            line-height: 1;
        }

        .metric-feature p {
            position: relative;
            z-index: 1;
            max-width: 530px;
            color: #d8d6dc;
        }

        .metric-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 18px;
        }

        .metric-card {
            min-height: 131px;
            padding: 20px;
            border: 1px solid var(--border);
            border-radius: var(--radius);
            background: var(--bg);
        }

        .metric-card__value {
            display: block;
            margin-bottom: 4px;
            color: var(--primary-dark);
            font-size: 29px;
            font-weight: 900;
        }

        .metric-card__label {
            display: block;
            color: var(--charcoal);
            font-size: 14px;
            font-weight: 800;
        }

        .progress {
            height: 6px;
            margin-top: 17px;
            overflow: hidden;
            background: #dfe2e7;
            border-radius: 2px;
        }

        .progress span {
            display: block;
            height: 100%;
            background: var(--teal);
        }

        .metric-updated {
            margin: 18px 0 0;
            color: var(--muted);
            font-size: 13px;
            text-align: right;
        }

        .news {
            background: var(--bg);
        }

        .news-layout {
            display: grid;
            grid-template-columns: minmax(0, 8fr) minmax(290px, 4fr);
            gap: 42px;
        }

        .news-list {
            border-top: 2px solid var(--charcoal);
        }

        .news-item {
            display: grid;
            grid-template-columns: 92px minmax(0, 1fr) auto;
            gap: 22px;
            align-items: center;
            padding: 24px 4px;
            border-bottom: 1px solid var(--border);
        }

        .news-code {
            color: var(--primary-dark);
            font-size: 13px;
            font-weight: 900;
        }

        .news-item h3 {
            margin-bottom: 5px;
            font-size: 19px;
        }

        .news-item p {
            margin: 0;
            color: var(--muted);
            font-size: 14px;
        }

        .text-link {
            display: inline-flex;
            align-items: center;
            gap: 7px;
            color: var(--teal-dark);
            font-size: 14px;
            font-weight: 800;
            white-space: nowrap;
        }

        .text-link:hover {
            gap: 11px;
        }

        .recommended {
            padding-left: 30px;
            border-left: 1px solid var(--border-strong);
        }

        .recommended h3 {
            margin-bottom: 22px;
        }

        .recommended-item {
            padding: 18px 0;
            border-bottom: 1px solid var(--border);
        }

        .recommended-item:first-of-type {
            padding-top: 0;
        }

        .recommended-item strong {
            display: block;
            margin: 8px 0 5px;
            font-size: 17px;
        }

        .recommended-item p {
            margin: 0;
            color: var(--muted);
            font-size: 14px;
        }

        .services {
            color: #fff;
            background: var(--dark);
        }

        .services h2, .services h3 {
            color: #fff;
        }

        .services .section-head p {
            color: #c9c7cf;
        }

        .services .section-kicker {
            color: var(--lime);
        }

        .service-matrix {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            grid-auto-rows: minmax(205px, auto);
            gap: 16px;
        }

        .service-card {
            position: relative;
            display: flex;
            min-width: 0;
            flex-direction: column;
            padding: 24px;
            overflow: hidden;
            border: 1px solid #4b4853;
            border-radius: var(--radius);
            background: var(--dark-soft);
            transition: transform var(--transition), border-color var(--transition), box-shadow var(--transition);
        }

        .service-card:hover {
            transform: translateY(-2px);
            border-color: var(--lime);
            box-shadow: 0 16px 28px rgba(0, 0, 0, .18);
        }

        .service-card--wide {
            grid-column: span 2;
        }

        .service-card--feature {
            grid-column: span 2;
            grid-row: span 2;
            justify-content: flex-end;
            min-height: 426px;
            background-color: #34313a;
            background-image:
                linear-gradient(0deg, rgba(41, 39, 47, .98), rgba(41, 39, 47, .28)),
                url("/assets/privacy-check.jpg");
            background-position: center;
            background-size: cover;
        }

        .service-index {
            position: absolute;
            top: 18px;
            right: 20px;
            color: #8f8b97;
            font-size: 13px;
            font-weight: 900;
        }

        .service-card h3 {
            margin-top: 26px;
        }

        .service-card p {
            color: #c9c7cf;
            font-size: 15px;
        }

        .service-card .text-link {
            margin-top: auto;
            color: #79d8d3;
        }

        .service-meter {
            display: flex;
            gap: 5px;
            margin-top: 14px;
        }

        .service-meter i {
            display: block;
            width: 28px;
            height: 5px;
            background: #55515d;
        }

        .service-meter i.on {
            background: var(--lime);
        }

        .comparison {
            background: #fff;
        }

        .compare-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 24px;
        }

        .compare-panel {
            border: 1px solid var(--border);
            border-radius: var(--radius);
            background: var(--bg);
        }

        .compare-panel--recommended {
            border: 2px solid var(--primary);
            background: #fff;
            box-shadow: var(--shadow);
        }

        .compare-head {
            position: relative;
            padding: 26px 28px 20px;
            border-bottom: 1px solid var(--border);
        }

        .compare-panel--recommended .compare-head::after {
            position: absolute;
            top: 22px;
            right: 24px;
            padding: 4px 8px;
            color: var(--primary-dark);
            background: var(--primary-soft);
            border: 1px solid #efb7cf;
            border-radius: var(--radius-sm);
            content: "推荐";
            font-size: 12px;
            font-weight: 900;
        }

        .compare-head p {
            margin: 0;
            color: var(--muted);
            font-size: 14px;
        }

        .compare-list {
            margin: 0;
            padding: 8px 28px 22px;
            list-style: none;
        }

        .compare-item {
            padding: 18px 0;
            border-bottom: 1px solid var(--border);
        }

        .compare-item:last-child {
            border-bottom: 0;
        }

        .compare-label {
            display: flex;
            justify-content: space-between;
            gap: 18px;
            margin-bottom: 9px;
            font-size: 14px;
        }

        .compare-label strong {
            color: var(--charcoal);
        }

        .compare-label span {
            color: var(--muted);
            text-align: right;
        }

        .compare-bar {
            height: 7px;
            overflow: hidden;
            background: #dfe2e7;
            border-radius: 2px;
        }

        .compare-bar span {
            display: block;
            height: 100%;
            background: #777b84;
        }

        .compare-panel--recommended .compare-bar span {
            background: var(--primary);
        }

        .multi-device {
            padding: 74px 0;
            color: #fff;
            background: var(--teal-dark);
        }

        .device-layout {
            display: grid;
            grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
            gap: 70px;
            align-items: center;
        }

        .multi-device h2 {
            color: #fff;
        }

        .multi-device p {
            color: #d5f1ef;
        }

        .device-points {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 14px;
        }

        .device-point {
            min-height: 158px;
            padding: 22px;
            border: 1px solid rgba(255, 255, 255, .34);
            border-radius: var(--radius);
            background: rgba(0, 0, 0, .10);
        }

        .device-point svg {
            width: 28px;
            height: 28px;
            margin-bottom: 23px;
            color: var(--lime);
        }

        .device-point strong {
            display: block;
            margin-bottom: 6px;
            font-size: 17px;
        }

        .device-point span {
            color: #d5f1ef;
            font-size: 13px;
        }

        .catalog {
            background: var(--bg);
        }

        .catalog-grid {
            display: grid;
            grid-template-columns: repeat(12, minmax(0, 1fr));
            gap: 18px;
        }

        .catalog-card {
            position: relative;
            grid-column: span 4;
            min-height: 260px;
            padding: 26px;
            border: 1px solid var(--border);
            border-radius: var(--radius);
            background: #fff;
            box-shadow: var(--shadow-sm);
            transition: transform var(--transition), border-color var(--transition), box-shadow var(--transition);
        }

        .catalog-card:first-child {
            grid-column: span 5;
        }

        .catalog-card:nth-child(2) {
            grid-column: span 7;
        }

        .catalog-card:hover {
            transform: translateY(-2px);
            border-color: var(--primary);
            box-shadow: var(--shadow);
        }

        .catalog-count {
            display: block;
            margin: 22px 0 12px;
            color: var(--primary-dark);
            font-size: 32px;
            font-weight: 900;
        }

        .catalog-card p {
            color: var(--muted);
            font-size: 15px;
        }

        .catalog-card .text-link {
            position: absolute;
            bottom: 24px;
            left: 26px;
        }

        .faq {
            background: #fff;
        }

        .faq-layout {
            display: grid;
            grid-template-columns: minmax(250px, 4fr) minmax(0, 8fr);
            gap: 72px;
            align-items: start;
        }

        .faq-intro {
            position: sticky;
            top: 145px;
        }

        .faq-intro p {
            color: var(--muted);
        }

        .faq-list {
            border-top: 2px solid var(--charcoal);
        }

        .faq-item {
            border-bottom: 1px solid var(--border);
        }

        .faq-question {
            display: grid;
            width: 100%;
            min-height: 78px;
            grid-template-columns: minmax(0, 1fr) 32px;
            gap: 22px;
            align-items: center;
            padding: 17px 0;
            color: var(--charcoal);
            background: transparent;
            text-align: left;
            font-size: 17px;
            font-weight: 800;
        }

        .faq-question:hover {
            color: var(--primary-dark);
        }

        .faq-symbol {
            position: relative;
            display: grid;
            width: 30px;
            height: 30px;
            place-items: center;
            border: 1px solid var(--border-strong);
            border-radius: var(--radius-sm);
        }

        .faq-symbol::before, .faq-symbol::after {
            position: absolute;
            width: 12px;
            height: 2px;
            background: currentColor;
            content: "";
            transition: transform var(--transition);
        }

        .faq-symbol::after {
            transform: rotate(90deg);
        }

        .faq-item.is-open .faq-symbol {
            color: #fff;
            border-color: var(--primary);
            background: var(--primary);
        }

        .faq-item.is-open .faq-symbol::after {
            transform: rotate(0);
        }

        .faq-answer {
            display: grid;
            grid-template-rows: 0fr;
            transition: grid-template-rows 240ms ease;
        }

        .faq-answer__inner {
            overflow: hidden;
        }

        .faq-answer p {
            padding: 0 46px 24px 0;
            margin: 0;
            color: var(--muted);
            line-height: 1.85;
        }

        .faq-item.is-open .faq-answer {
            grid-template-rows: 1fr;
        }

        .lead-section {
            padding: 86px 0;
            color: #fff;
            background: var(--dark);
            border-bottom: 1px solid #484550;
        }

        .lead-layout {
            display: grid;
            grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
            gap: 74px;
            align-items: start;
        }

        .lead-section h2 {
            color: #fff;
        }

        .lead-section .section-kicker {
            color: var(--lime);
        }

        .lead-copy > p {
            color: #cfccd5;
            font-size: 17px;
        }

        .promise-list {
            margin: 27px 0 0;
            padding: 0;
            list-style: none;
        }

        .promise-list li {
            position: relative;
            padding: 12px 0 12px 28px;
            border-bottom: 1px solid #47444f;
            color: #e0dee5;
        }

        .promise-list li::before {
            position: absolute;
            top: 21px;
            left: 3px;
            width: 9px;
            height: 9px;
            background: var(--lime);
            border-radius: 2px;
            content: "";
        }

        .lead-form {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 19px 18px;
        }

        .field {
            min-width: 0;
        }

        .field--full {
            grid-column: 1 / -1;
        }

        .field label {
            display: block;
            margin-bottom: 7px;
            color: #efedf2;
            font-size: 14px;
            font-weight: 750;
        }

        .field input, .field select, .field textarea {
            width: 100%;
            border: 1px solid #5a5662;
            border-radius: var(--radius);
            color: #fff;
            background: #35323b;
            transition: border-color var(--transition), background-color var(--transition), box-shadow var(--transition);
        }

        .field input, .field select {
            height: 49px;
            padding: 0 14px;
        }

        .field textarea {
            min-height: 112px;
            padding: 12px 14px;
            resize: vertical;
        }

        .field input::placeholder, .field textarea::placeholder {
            color: #a9a5af;
        }

        .field input:hover, .field select:hover, .field textarea:hover {
            border-color: #8c8793;
        }

        .field input:focus, .field select:focus, .field textarea:focus {
            outline: 0;
            border-color: var(--lime);
            background: #3b3842;
            box-shadow: 0 0 0 3px rgba(184, 217, 54, .16);
        }

        .field-error {
            display: none;
            margin: 5px 0 0;
            color: #ff9abb;
            font-size: 12px;
        }

        .field.invalid .field-error {
            display: block;
        }

        .field.invalid input, .field.invalid select, .field.invalid textarea {
            border-color: #ff7ca8;
        }

        .consent {
            display: flex;
            grid-column: 1 / -1;
            gap: 10px;
            align-items: flex-start;
            color: #c9c6cf;
            font-size: 13px;
        }

        .consent input {
            width: 18px;
            height: 18px;
            flex: 0 0 auto;
            margin-top: 3px;
            accent-color: var(--primary);
        }

        .form-actions {
            display: flex;
            grid-column: 1 / -1;
            flex-wrap: wrap;
            align-items: center;
            gap: 15px;
        }

        .form-message {
            min-height: 24px;
            margin: 0;
            color: var(--lime);
            font-size: 14px;
        }

        .form-note {
            grid-column: 1 / -1;
            margin: -4px 0 0;
            color: #9f9ba6;
            font-size: 12px;
        }

        .site-footer {
            padding: 58px 0 24px;
            color: #c8c5ce;
            background: var(--dark);
        }

        .footer-grid {
            display: grid;
            grid-template-columns: minmax(0, 6fr) repeat(2, minmax(160px, 2fr));
            gap: 60px;
            padding-bottom: 42px;
        }

        .footer-brand .brand-logo {
            max-width: 540px;
            color: #fff;
        }

        .footer-brand p {
            max-width: 590px;
            margin: 22px 0 0;
            color: #aaa6b1;
            font-size: 14px;
        }

        .footer-group h3 {
            margin-bottom: 14px;
            color: #fff;
            font-size: 16px;
        }

        .footer-group ul {
            margin: 0;
            padding: 0;
            list-style: none;
        }

        .footer-group li {
            margin-bottom: 9px;
        }

        .footer-group a {
            color: #c8c5ce;
            font-size: 14px;
        }

        .footer-group a:hover {
            color: var(--lime);
        }

        .footer-bottom {
            display: flex;
            justify-content: space-between;
            gap: 24px;
            padding-top: 22px;
            border-top: 1px solid #484550;
            color: #96929d;
            font-size: 13px;
        }

        .footer-bottom p {
            margin: 0;
        }

        .age-modal {
            position: fixed;
            z-index: 2000;
            inset: 0;
            display: none;
            place-items: center;
            padding: 20px;
            background: rgba(32, 33, 38, .88);
        }

        .age-modal.is-visible {
            display: grid;
        }

        .age-dialog {
            width: min(100%, 510px);
            padding: 34px;
            border: 1px solid #5a5662;
            border-radius: var(--radius);
            background: #fff;
            box-shadow: 0 24px 70px rgba(0, 0, 0, .34);
        }

        .age-dialog h2 {
            font-size: 27px;
        }

        .age-dialog p {
            color: var(--muted);
        }

        .age-actions {
            display: flex;
            flex-wrap: wrap;
            gap: 10px;
            margin-top: 24px;
        }

        @media (max-width: 1200px) {
            .container {
                width: min(calc(100% - 48px), var(--container));
            }

            .hero__inner {
                gap: 48px;
            }

            .service-matrix {
                grid-template-columns: repeat(3, minmax(0, 1fr));
            }

            .service-card--feature {
                grid-column: span 2;
            }

            .service-card--wide {
                grid-column: span 1;
            }
        }

        @media (max-width: 992px) {
            h1 {
                font-size: 43px;
            }

            h2 {
                font-size: 31px;
            }

            .section {
                padding: 76px 0;
            }

            .hero {
                min-height: 560px;
            }

            .hero__inner {
                grid-template-columns: minmax(0, 6fr) minmax(270px, 4fr);
                gap: 34px;
            }

            .guide-cover {
                min-height: 350px;
                padding: 28px 24px;
            }

            .cover-title {
                font-size: 24px;
            }

            .metric-layout, .news-layout, .faq-layout, .lead-layout {
                grid-template-columns: 1fr;
            }

            .recommended {
                padding: 28px 0 0;
                border-top: 1px solid var(--border-strong);
                border-left: 0;
            }

            .service-matrix {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            .service-card--wide, .service-card--feature {
                grid-column: span 1;
            }

            .service-card--feature {
                grid-row: span 1;
                min-height: 300px;
            }

            .device-layout {
                grid-template-columns: 1fr;
                gap: 36px;
            }

            .catalog-card, .catalog-card:first-child, .catalog-card:nth-child(2) {
                grid-column: span 6;
            }

            .faq-intro {
                position: static;
            }

            .footer-grid {
                grid-template-columns: minmax(0, 5fr) repeat(2, minmax(140px, 2fr));
                gap: 34px;
            }
        }

        @media (max-width: 768px) {
            html {
                scroll-padding-top: 110px;
            }

            .container {
                width: min(calc(100% - 32px), var(--container));
            }

            h1 {
                font-size: 36px;
            }

            h2 {
                font-size: 28px;
            }

            .section {
                padding: 58px 0;
            }

            .section-head {
                grid-template-columns: 1fr;
                gap: 8px;
                margin-bottom: 30px;
            }

            .brand-row__inner {
                min-height: 62px;
            }

            .brand-logo {
                max-width: calc(100% - 58px);
                font-size: 15px;
            }

            .brand-mark {
                width: 34px;
                height: 34px;
                font-size: 13px;
            }

            .brand-actions .btn, .search-trigger {
                display: none;
            }

            .menu-trigger {
                display: inline-grid;
            }

            .mobile-panel.is-open {
                display: block;
            }

            .channel-nav {
                min-height: 46px;
            }

            .channel-nav a {
                padding: 0 14px;
                font-size: 14px;
            }

            .hero {
                min-height: auto;
                background-position: 66% center;
            }

            .hero__inner {
                grid-template-columns: 1fr;
                gap: 38px;
                padding: 48px 0 64px;
            }

            .hero__content {
                padding-right: 0;
            }

            .hero__lead {
                font-size: 16px;
            }

            .guide-cover {
                max-width: 430px;
                min-height: 315px;
                transform: none;
            }

            .cover-list li:nth-child(n+4) {
                display: none;
            }

            .metrics {
                padding: 44px 0 58px;
            }

            .metric-layout {
                display: block;
            }

            .metric-feature {
                min-height: 248px;
                margin-bottom: 16px;
                padding: 27px;
            }

            .metric-number {
                font-size: 52px;
            }

            .metric-grid {
                display: flex;
                margin-right: -16px;
                padding-right: 16px;
                gap: 12px;
                overflow-x: auto;
                scroll-snap-type: x mandatory;
                scrollbar-width: none;
            }

            .metric-grid::-webkit-scrollbar {
                display: none;
            }

            .metric-card {
                min-width: 205px;
                scroll-snap-align: start;
            }

            .news-item {
                grid-template-columns: 72px minmax(0, 1fr);
                gap: 14px;
            }

            .news-item .text-link {
                grid-column: 2;
            }

            .service-matrix {
                grid-template-columns: 1fr;
            }

            .service-card--feature {
                min-height: 290px;
            }

            .compare-grid {
                grid-template-columns: 1fr;
            }

            .device-points {
                grid-template-columns: 1fr;
            }

            .device-point {
                min-height: auto;
            }

            .catalog-card, .catalog-card:first-child, .catalog-card:nth-child(2) {
                grid-column: 1 / -1;
            }

            .lead-form {
                grid-template-columns: 1fr;
            }

            .field--full, .consent, .form-actions, .form-note {
                grid-column: auto;
            }

            .footer-grid {
                grid-template-columns: 1fr 1fr;
            }

            .footer-brand {
                grid-column: 1 / -1;
            }

            .footer-bottom {
                flex-direction: column;
                gap: 8px;
            }
        }

        @media (max-width: 576px) {
            .container {
                width: min(calc(100% - 32px), var(--container));
            }

            h1 {
                font-size: 32px;
            }

            h2 {
                font-size: 26px;
            }

            h3 {
                font-size: 19px;
            }

            .hero__actions, .age-actions {
                align-items: stretch;
                flex-direction: column;
            }

            .hero__actions .btn, .age-actions .btn {
                width: 100%;
            }

            .guide-cover {
                min-height: 300px;
                padding: 26px 21px;
                box-shadow: 8px 9px 0 var(--lime);
            }

            .cover-title {
                margin-top: 23px;
                font-size: 22px;
            }

            .metric-feature {
                padding: 23px;
            }

            .metric-number {
                font-size: 46px;
            }

            .news-item {
                grid-template-columns: 1fr;
            }

            .news-item .text-link {
                grid-column: auto;
            }

            .service-card {
                padding: 22px;
            }

            .compare-head, .compare-list {
                padding-right: 20px;
                padding-left: 20px;
            }

            .compare-panel--recommended .compare-head {
                padding-right: 92px;
            }

            .compare-label {
                align-items: flex-start;
                flex-direction: column;
                gap: 2px;
            }

            .compare-label span {
                text-align: left;
            }

            .faq-question {
                font-size: 16px;
            }

            .faq-answer p {
                padding-right: 0;
            }

            .lead-section {
                padding: 60px 0;
            }

            .footer-grid {
                grid-template-columns: 1fr;
            }

            .footer-brand {
                grid-column: auto;
            }

            .age-dialog {
                padding: 26px 21px;
            }
        }

        @media (prefers-reduced-motion: reduce) {
            html {
                scroll-behavior: auto;
            }

            *, *::before, *::after {
                transition-duration: .01ms !important;
                animation-duration: .01ms !important;
                animation-iteration-count: 1 !important;
            }
        }

/* roulang page: category1 */
:root{
      --primary:#d92d73;
      --primary-dark:#b71f5d;
      --primary-soft:#fff0f6;
      --lime:#b8d936;
      --lime-dark:#6f8610;
      --teal:#168e8a;
      --teal-dark:#0e6f6c;
      --charcoal:#202126;
      --dark:#29272f;
      --dark-soft:#37343e;
      --bg:#f5f6f8;
      --surface:#fff;
      --surface-alt:#eef1f3;
      --text:#202126;
      --muted:#666a73;
      --border:#dfe2e7;
      --border-strong:#c8ccd3;
      --danger:#c6284d;
      --success:#197252;
      --radius-sm:4px;
      --radius:7px;
      --shadow-sm:0 5px 16px rgba(32,33,38,.06);
      --shadow:0 14px 34px rgba(32,33,38,.1);
      --container:1240px;
      --transition:180ms ease;
    }
    *,*:before,*:after{box-sizing:border-box}
    html{scroll-behavior:smooth;scroll-padding-top:128px}
    body{margin:0;min-width:320px;overflow-x:hidden;color:var(--text);background:var(--bg);font-family:"Microsoft YaHei","PingFang SC","Noto Sans SC",Arial,sans-serif;font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased}
    body.menu-open{overflow:hidden}
    a{color:var(--teal-dark);text-decoration:none;transition:color var(--transition),background-color var(--transition),border-color var(--transition),transform var(--transition)}
    a:hover{color:var(--primary-dark)}
    button,input,select,textarea{margin:0;color:inherit;font:inherit;letter-spacing:0}
    button{border:0;cursor:pointer}
    button:disabled{cursor:not-allowed;opacity:.55}
    img{display:block;max-width:100%}
    .container{width:min(calc(100% - 64px),var(--container));margin-inline:auto}
    .site-header{position:sticky;z-index:1000;top:0;background:rgba(255,255,255,.98);box-shadow:0 1px 0 var(--border)}
    .brand-row{border-bottom:1px solid var(--border)}
    .brand-row__inner{display:flex;min-height:70px;align-items:center;justify-content:space-between;gap:24px;transition:min-height var(--transition)}
    .site-header.is-compact .brand-row__inner{min-height:58px}
    .brand-logo{display:inline-flex;min-width:0;align-items:center;gap:12px;color:var(--charcoal);font-size:19px;font-weight:800;line-height:1.3}
    .brand-logo:hover{color:var(--primary-dark)}
    .brand-mark{display:grid;width:36px;height:36px;place-items:center;border-radius:6px;color:#fff;background:var(--primary);font-size:18px;font-weight:900}
    .brand-tools{display:flex;align-items:center;gap:10px}
    .tool-link{display:inline-flex;align-items:center;gap:7px;padding:8px 10px;color:var(--muted);font-size:14px;font-weight:700}
    .tool-link:hover{color:var(--primary-dark);background:var(--primary-soft)}
    .menu-toggle{display:none;padding:9px 11px;border:1px solid var(--border);border-radius:var(--radius);background:#fff;font-weight:800}
    .channel-nav{display:flex;align-items:center;gap:8px;min-height:52px;overflow-x:auto;scrollbar-width:none}
    .channel-nav::-webkit-scrollbar{display:none}
    .channel-nav a{flex:0 0 auto;padding:8px 15px;border-bottom:3px solid transparent;color:var(--charcoal);font-size:14px;font-weight:800;white-space:nowrap}
    .channel-nav a:hover{color:var(--primary-dark);background:var(--primary-soft)}
    .channel-nav a.active{border-bottom-color:var(--primary);color:#fff;background:var(--primary)}
    .btn{display:inline-flex;min-height:46px;align-items:center;justify-content:center;gap:9px;padding:10px 19px;border:1px solid transparent;border-radius:var(--radius);font-size:15px;font-weight:800;line-height:1.4;text-align:center;transition:transform var(--transition),box-shadow var(--transition),background-color var(--transition),border-color var(--transition),color var(--transition)}
    .btn:hover{transform:translateY(-2px)}
    .btn:active{transform:translateY(0)}
    .btn-primary{color:#fff;background:var(--primary);box-shadow:0 8px 20px rgba(217,45,115,.22)}
    .btn-primary:hover{color:#fff;background:var(--primary-dark);box-shadow:0 11px 24px rgba(183,31,93,.28)}
    .btn-secondary{color:var(--charcoal);border-color:var(--charcoal);background:transparent}
    .btn-secondary:hover{color:#fff;background:var(--charcoal)}
    .btn-light{color:var(--charcoal);background:#fff;border-color:#fff}
    .btn-light:hover{color:var(--primary-dark);background:var(--primary-soft)}
    :focus-visible{outline:3px solid var(--lime);outline-offset:3px}
    .section{padding:84px 0}
    .section-head{display:grid;grid-template-columns:minmax(0,7fr) minmax(280px,4fr);gap:56px;align-items:end;margin-bottom:38px}
    .section-head p{margin:0 0 3px;color:var(--muted);font-size:17px}
    .section-kicker{display:inline-flex;align-items:center;gap:8px;margin-bottom:12px;color:var(--primary-dark);font-size:14px;font-weight:800}
    .section-kicker:before{width:30px;height:3px;background:var(--primary);content:""}
    h1,h2,h3,p{margin-top:0}
    h1{max-width:820px;margin-bottom:19px;font-size:clamp(36px,5vw,54px);font-weight:900;line-height:1.2;letter-spacing:-1px}
    h2{margin-bottom:12px;font-size:clamp(28px,3.3vw,38px);font-weight:850;line-height:1.25}
    h3{margin-bottom:8px;font-size:21px;line-height:1.35}
    .eyebrow,.badge,.status{display:inline-flex;align-items:center;gap:7px;width:fit-content;padding:5px 9px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--muted);background:#fff;font-size:13px;font-weight:800;line-height:1.4}
    .eyebrow:before,.badge:before,.status:before{width:7px;height:7px;border-radius:50%;background:var(--lime);content:""}
    .badge--pink{color:var(--primary-dark);border-color:#f2b8d0;background:var(--primary-soft)}
    .badge--teal{color:var(--teal-dark);border-color:#a9d8d6;background:#effafa}
    .page-cover{padding:68px 0 58px;background:var(--dark);color:#fff;border-bottom:6px solid var(--primary)}
    .cover-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:58px;align-items:center}
    .page-cover h1{margin-top:14px;color:#fff}
    .page-cover .lead{max-width:730px;margin-bottom:25px;color:#d9d7dd;font-size:18px}
    .cover-meta{display:flex;flex-wrap:wrap;gap:10px}
    .cover-meta span{padding:8px 12px;border-left:3px solid var(--lime);color:#f4f3f5;background:var(--dark-soft);font-size:14px}
    .cover-visual{position:relative;min-height:280px;padding:12px;border:1px solid #514d59;background:#211f25}
    .cover-visual img{width:100%;height:255px;object-fit:cover;aspect-ratio:4/3;filter:saturate(.85)}
    .visual-label{position:absolute;right:25px;bottom:25px;padding:10px 13px;color:var(--charcoal);background:var(--lime);font-size:13px;font-weight:900}
    .filter-bar{padding:22px 0;border-bottom:1px solid var(--border);background:#fff}
    .filter-inner{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
    .filter-label{color:var(--muted);font-size:14px;font-weight:800}
    .filter-tabs{display:flex;gap:7px;flex-wrap:wrap}
    .filter-tab{padding:8px 13px;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--charcoal);background:#fff;font-size:14px;font-weight:800}
    .filter-tab:hover,.filter-tab.active{border-color:var(--primary);color:var(--primary-dark);background:var(--primary-soft)}
    .sort-select,.search-box{height:42px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:#fff}
    .sort-select{margin-left:auto;padding:0 12px}
    .search-box{display:flex;align-items:center;gap:8px;padding:0 11px}
    .search-box input{width:150px;border:0;outline:0;font-size:14px}
    .filter-note{width:100%;margin:4px 0 0;color:var(--success);font-size:13px}
    .content-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:54px}
    .featured{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:28px;margin-bottom:35px;padding-bottom:35px;border-bottom:1px solid var(--border)}
    .featured-media{position:relative}
    .featured-media img{width:100%;height:310px;object-fit:cover;aspect-ratio:4/3}
    .index-tag{position:absolute;top:14px;left:14px;padding:5px 9px;color:#fff;background:var(--primary);font-size:13px;font-weight:900}
    .featured-copy{padding:8px 0}
    .featured-copy .badge{margin-bottom:17px}
    .featured-copy h2{margin-bottom:14px;font-size:30px}
    .featured-copy p{margin-bottom:18px;color:var(--muted);font-size:16px}
    .meta-line{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:22px;color:var(--muted);font-size:13px}
    .meta-line strong{color:var(--charcoal)}
    .entry-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
    .entry{display:grid;grid-template-columns:82px minmax(0,1fr);gap:17px;padding:18px 0;border-top:1px solid var(--border)}
    .entry-thumb{position:relative}
    .entry-thumb img{width:82px;height:82px;object-fit:cover;aspect-ratio:1}
    .entry-num{position:absolute;top:0;left:0;padding:3px 6px;color:#fff;background:var(--teal);font-size:11px;font-weight:900}
    .entry h3{margin-bottom:6px;font-size:18px}
    .entry p{display:-webkit-box;margin-bottom:8px;overflow:hidden;color:var(--muted);font-size:14px;line-height:1.6;-webkit-box-orient:vertical;-webkit-line-clamp:2}
    .entry-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px}
    .entry-foot .status{padding:3px 6px;font-size:11px}
    .entry-foot a{font-weight:800}
    .side-panel{padding-left:26px;border-left:1px solid var(--border)}
    .side-panel h2{font-size:23px}
    .side-intro{margin-bottom:20px;color:var(--muted);font-size:14px}
    .side-list{margin:0;padding:0;list-style:none}
    .side-list li{padding:15px 0;border-top:1px solid var(--border)}
    .side-list a{display:flex;justify-content:space-between;gap:12px;color:var(--charcoal);font-weight:800}
    .side-list a:hover{color:var(--primary-dark)}
    .side-list small{display:block;margin-top:4px;color:var(--muted);font-size:12px}
    .side-note{margin-top:30px;padding:18px;border-left:4px solid var(--lime);background:#fff;color:var(--muted);font-size:14px}
    .process-band{background:var(--surface-alt)}
    .process-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:start}
    .process-copy p{max-width:570px;color:var(--muted);font-size:17px}
    .process-steps{display:grid;gap:0}
    .step{display:grid;grid-template-columns:44px 1fr;gap:16px;padding:18px 0;border-top:1px solid var(--border-strong)}
    .step-number{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;color:#fff;background:var(--primary);font-weight:900}
    .step h3{font-size:18px}
    .step p{margin:0;color:var(--muted);font-size:14px}
    .faq-list{max-width:900px;border-top:1px solid var(--border)}
    .faq-item{border-bottom:1px solid var(--border)}
    .faq-question{display:flex;width:100%;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;color:var(--charcoal);background:transparent;text-align:left;font-weight:850}
    .faq-question:hover{color:var(--primary-dark)}
    .faq-icon{position:relative;width:22px;height:22px;flex:0 0 22px;border:1px solid var(--border-strong);border-radius:50%}
    .faq-icon:before,.faq-icon:after{position:absolute;top:9px;left:5px;width:10px;height:2px;background:var(--primary);content:""}
    .faq-icon:after{transform:rotate(90deg);transition:transform var(--transition)}
    .faq-item.open .faq-icon:after{transform:rotate(0)}
    .faq-answer{display:none;padding:0 52px 20px 0;color:var(--muted);font-size:15px}
    .faq-item.open .faq-answer{display:block}
    .cta-section{padding:72px 0;background:var(--dark);color:#fff}
    .cta-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:60px;align-items:start}
    .cta-section h2{color:#fff}
    .cta-section p{color:#d9d7dd}
    .request-form{display:grid;grid-template-columns:1fr 1fr;gap:15px}
    .field{display:grid;gap:6px}
    .field.full{grid-column:1/-1}
    .field label{color:#fff;font-size:14px;font-weight:800}
    .field input,.field select,.field textarea{width:100%;border:1px solid #5e5a67;border-radius:var(--radius-sm);padding:11px 12px;color:#fff;background:#37343e;outline:0}
    .field textarea{min-height:100px;resize:vertical}
    .field input:focus,.field select:focus,.field textarea:focus{border-color:var(--lime);box-shadow:0 0 0 3px rgba(184,217,54,.18)}
    .consent{display:flex;align-items:flex-start;gap:8px;grid-column:1/-1;color:#bbb8c1;font-size:12px}
    .consent input{margin-top:5px;accent-color:var(--primary)}
    .form-feedback{grid-column:1/-1;min-height:24px;color:var(--lime);font-size:14px}
    .site-footer{padding:52px 0 22px;color:#c9c6cf;background:var(--dark);border-top:1px solid #4a4653}
    .footer-grid{display:grid;grid-template-columns:1.5fr .8fr .8fr;gap:60px}
    .footer-brand .brand-logo{color:#fff}
    .footer-brand p{max-width:480px;margin:17px 0 0;color:#aaa6b1;font-size:14px}
    .footer-group h3{margin-bottom:12px;color:#fff;font-size:16px}
    .footer-group ul{margin:0;padding:0;list-style:none}
    .footer-group li{margin:7px 0}
    .footer-group a{color:#c9c6cf;font-size:14px}
    .footer-group a:hover{color:var(--lime)}
    .footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:38px;padding-top:18px;border-top:1px solid #4a4653;color:#96919e;font-size:12px}
    @media(max-width:992px){
      .container{width:min(calc(100% - 48px),var(--container))}
      .cover-grid,.process-grid{grid-template-columns:1fr}
      .cover-visual{max-width:560px}
      .content-layout{gap:32px}
      .side-panel{padding-left:20px}
      .footer-grid{gap:30px}
    }
    @media(max-width:768px){
      .brand-row__inner{min-height:64px}
      .brand-logo{font-size:16px}
      .brand-mark{width:32px;height:32px;font-size:16px}
      .brand-tools .tool-link{display:none}
      .menu-toggle{display:block}
      .channel-nav{min-height:48px}
      .section{padding:60px 0}
      .page-cover{padding:52px 0 42px}
      .page-cover h1{font-size:38px}
      .page-cover .lead{font-size:16px}
      .content-layout{grid-template-columns:1fr}
      .side-panel{padding:30px 0 0;border-top:1px solid var(--border);border-left:0}
      .featured{grid-template-columns:1fr}
      .featured-media img{height:260px}
      .entry-list{grid-template-columns:1fr}
      .section-head{display:block}
      .section-head p{margin-top:12px}
      .cta-grid{grid-template-columns:1fr;gap:30px}
      .footer-grid{grid-template-columns:1fr 1fr}
      .footer-brand{grid-column:1/-1}
    }
    @media(max-width:576px){
      .container{width:calc(100% - 32px)}
      h1{font-size:34px}
      h2{font-size:29px}
      .cover-meta{display:grid;grid-template-columns:1fr 1fr}
      .cover-meta span{font-size:12px}
      .filter-inner{align-items:stretch}
      .filter-label{width:100%}
      .filter-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:3px}
      .sort-select,.search-box{width:100%;margin-left:0}
      .search-box input{width:100%}
      .featured-copy h2{font-size:26px}
      .request-form{grid-template-columns:1fr}
      .field.full,.consent,.form-feedback{grid-column:auto}
      .footer-grid{grid-template-columns:1fr}
      .footer-bottom{display:block}
      .footer-bottom p{margin:7px 0}
    }
