/* roulang page: index */
:root{
            --promo-red:#E9362E;
            --promo-red-dark:#C82722;
            --warm-orange:#FF8A1F;
            --orange-soft:#FFE3C2;
            --cream:#FFF7EF;
            --cream-2:#FFF3E7;
            --ink:#1F1715;
            --muted:#7A6259;
            --light-muted:#A58A80;
            --line:#F1D8C9;
            --line-2:#EAD5C8;
            --white:#FFFFFF;
            --deep:#2A1712;
            --shadow:0 18px 48px rgba(233,54,46,.12);
            --shadow-hover:0 26px 60px rgba(233,54,46,.18);
            --radius-xl:28px;
            --radius-lg:22px;
            --radius-md:16px;
            --radius-sm:12px;
            --container:1200px;
            --focus:0 0 0 .22rem rgba(233,54,46,.18);
        }
        *{
            box-sizing:border-box;
        }
        html{
            scroll-behavior:smooth;
        }
        body{
            margin:0;
            font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",Arial,sans-serif;
            color:var(--ink);
            background:
                radial-gradient(circle at 8% 0%, rgba(255,138,31,.16), transparent 26%),
                radial-gradient(circle at 92% 12%, rgba(233,54,46,.12), transparent 28%),
                linear-gradient(180deg,var(--cream) 0%,#fff 42%,var(--cream-2) 100%);
            line-height:1.75;
            font-size:16px;
            overflow-x:hidden;
        }
        a{
            color:inherit;
            text-decoration:none;
            transition:color .22s ease, background .22s ease, transform .22s ease, box-shadow .22s ease;
        }
        a:hover{
            color:var(--promo-red);
        }
        img,svg{
            max-width:100%;
            display:block;
        }
        button,input,select,textarea{
            font:inherit;
        }
        button:focus-visible,
        a:focus-visible,
        input:focus,
        select:focus,
        textarea:focus{
            outline:none;
            box-shadow:var(--focus)!important;
            border-color:rgba(233,54,46,.65)!important;
        }
        .site-container{
            width:min(100% - 32px,var(--container));
            margin-inline:auto;
        }
        .section-space{
            padding:76px 0;
        }
        .section-tight{
            padding:54px 0;
        }
        .eyebrow{
            display:inline-flex;
            align-items:center;
            gap:8px;
            padding:7px 13px;
            border-radius:999px;
            background:rgba(233,54,46,.08);
            color:var(--promo-red-dark);
            font-size:13px;
            font-weight:800;
            border:1px solid rgba(233,54,46,.16);
        }
        .section-head{
            display:flex;
            align-items:flex-end;
            justify-content:space-between;
            gap:24px;
            margin-bottom:28px;
        }
        .section-head .copy{
            max-width:720px;
        }
        h1,h2,h3,h4,p{
            margin-top:0;
        }
        h1{
            font-size:clamp(30px,4.2vw,48px);
            line-height:1.16;
            font-weight:900;
            letter-spacing:-.04em;
            margin-bottom:18px;
        }
        h2{
            font-size:clamp(25px,3vw,36px);
            line-height:1.22;
            font-weight:900;
            letter-spacing:-.03em;
            margin-bottom:12px;
        }
        h3{
            font-size:21px;
            line-height:1.35;
            font-weight:800;
            margin-bottom:10px;
        }
        .lead{
            color:var(--muted);
            font-size:17px;
            line-height:1.85;
        }
        .text-muted-warm{
            color:var(--muted);
        }
        .btn{
            border:0;
            border-radius:999px;
            min-height:44px;
            padding:11px 20px;
            font-weight:800;
            letter-spacing:.01em;
            transition:transform .22s ease, box-shadow .22s ease, background .22s ease, color .22s ease, border .22s ease;
        }
        .btn:active{
            transform:translateY(1px) scale(.99);
        }
        .btn-promo{
            color:#fff;
            background:linear-gradient(135deg,var(--promo-red),var(--warm-orange));
            box-shadow:0 12px 26px rgba(233,54,46,.24);
        }
        .btn-promo:hover{
            color:#fff;
            transform:translateY(-2px);
            box-shadow:0 18px 34px rgba(233,54,46,.32);
        }
        .btn-soft{
            color:var(--promo-red-dark);
            background:#fff1e2;
            border:1px solid rgba(233,54,46,.18);
        }
        .btn-soft:hover{
            background:#ffe5d8;
            color:var(--promo-red);
            transform:translateY(-2px);
        }
        .btn-outline-warm{
            color:var(--promo-red-dark);
            background:#fff;
            border:1px solid rgba(233,54,46,.32);
        }
        .btn-outline-warm:hover{
            background:rgba(233,54,46,.08);
            color:var(--promo-red);
            transform:translateY(-2px);
        }
        .site-header{
            position:sticky;
            top:0;
            z-index:1040;
            background:rgba(255,247,239,.92);
            backdrop-filter:blur(18px);
            border-bottom:1px solid rgba(241,216,201,.85);
            box-shadow:0 10px 28px rgba(42,23,18,.05);
        }
        .header-inner{
            display:grid;
            grid-template-columns:auto minmax(0,1fr) auto;
            align-items:center;
            gap:18px;
            min-height:72px;
        }
        .brand-logo{
            display:flex;
            align-items:center;
            gap:10px;
            font-weight:900;
            color:var(--ink);
            white-space:nowrap;
            letter-spacing:-.03em;
        }
        .brand-mark{
            width:40px;
            height:40px;
            border-radius:14px;
            display:grid;
            place-items:center;
            color:#fff;
            background:linear-gradient(135deg,var(--promo-red),var(--warm-orange));
            box-shadow:0 10px 22px rgba(233,54,46,.25);
            flex:0 0 auto;
        }
        .brand-text{
            font-size:17px;
        }
        .chip-nav{
            display:flex;
            justify-content:center;
            gap:10px;
            overflow-x:auto;
            padding:8px 4px;
            scrollbar-width:none;
        }
        .chip-nav::-webkit-scrollbar{
            display:none;
        }
        .nav-chip{
            display:inline-flex;
            align-items:center;
            justify-content:center;
            gap:7px;
            white-space:nowrap;
            border-radius:999px;
            padding:10px 17px;
            font-size:14px;
            font-weight:800;
            color:var(--muted);
            background:#fff0df;
            border:1px solid rgba(241,216,201,.9);
        }
        .nav-chip:hover{
            color:var(--promo-red);
            background:#ffe7d2;
            transform:translateY(-1px);
        }
        .nav-chip.active{
            color:#fff;
            background:linear-gradient(135deg,var(--promo-red),var(--warm-orange));
            border-color:transparent;
            box-shadow:0 12px 24px rgba(233,54,46,.22);
        }
        .header-cta{
            display:flex;
            align-items:center;
            gap:10px;
        }
        .promo-strip{
            border-top:1px solid rgba(255,255,255,.65);
            background:linear-gradient(90deg,rgba(233,54,46,.08),rgba(255,138,31,.12),rgba(233,54,46,.06));
            color:var(--promo-red-dark);
            font-size:14px;
            font-weight:800;
        }
        .promo-strip .site-container{
            min-height:38px;
            display:flex;
            align-items:center;
            justify-content:center;
            gap:10px;
            text-align:center;
        }
        .hero{
            padding:30px 0 38px;
        }
        .hero-band{
            position:relative;
            overflow:hidden;
            border-radius:var(--radius-xl);
            background:
                linear-gradient(135deg,rgba(255,255,255,.92),rgba(255,238,216,.92)),
                repeating-linear-gradient(45deg,rgba(233,54,46,.04) 0 1px,transparent 1px 12px);
            border:1px solid rgba(241,216,201,.95);
            box-shadow:var(--shadow);
            padding:34px;
        }
        .hero-band:before{
            content:"";
            position:absolute;
            width:280px;
            height:280px;
            right:-90px;
            top:-120px;
            background:radial-gradient(circle,rgba(233,54,46,.17),transparent 68%);
            pointer-events:none;
        }
        .hero-band:after{
            content:"权益";
            position:absolute;
            right:28px;
            bottom:20px;
            color:rgba(233,54,46,.08);
            font-size:96px;
            line-height:1;
            font-weight:900;
            letter-spacing:-.06em;
            pointer-events:none;
        }
        .hero-content{
            position:relative;
            z-index:1;
            display:grid;
            grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);
            gap:28px;
            align-items:center;
        }
        .hero-actions{
            display:flex;
            flex-wrap:wrap;
            gap:12px;
            margin-top:22px;
        }
        .hero-points{
            display:grid;
            grid-template-columns:repeat(3,1fr);
            gap:10px;
            margin-top:22px;
            max-width:680px;
        }
        .point-pill{
            border-radius:16px;
            padding:12px 13px;
            background:#fff;
            border:1px solid var(--line);
            color:var(--muted);
            font-weight:800;
            box-shadow:0 10px 22px rgba(42,23,18,.04);
        }
        .point-pill strong{
            color:var(--promo-red);
            font-size:19px;
            margin-right:3px;
        }
        .hero-summary{
            border-radius:24px;
            background:#fff;
            border:1px solid var(--line);
            padding:18px;
            box-shadow:0 16px 38px rgba(233,54,46,.1);
        }
        .summary-top{
            display:flex;
            align-items:center;
            justify-content:space-between;
            gap:10px;
            margin-bottom:14px;
        }
        .price-tag{
            display:inline-flex;
            align-items:baseline;
            gap:5px;
            color:var(--promo-red);
            font-weight:900;
        }
        .price-tag .num{
            font-size:34px;
            line-height:1;
            letter-spacing:-.04em;
        }
        .coupon-row{
            display:grid;
            gap:10px;
        }
        .coupon{
            position:relative;
            border-radius:18px;
            padding:13px 14px;
            background:linear-gradient(90deg,#fff6ed,#ffe3cf);
            border:1px dashed rgba(233,54,46,.34);
            display:flex;
            align-items:center;
            justify-content:space-between;
            gap:12px;
        }
        .coupon b{
            color:var(--ink);
        }
        .coupon span{
            color:var(--muted);
            font-size:13px;
        }
        .table-wrap{
            overflow-x:auto;
            border-radius:var(--radius-lg);
            box-shadow:var(--shadow);
            background:#fff;
            border:1px solid var(--line);
        }
        .rights-table{
            min-width:820px;
            margin:0;
            border-collapse:separate;
            border-spacing:0;
            overflow:hidden;
        }
        .rights-table thead th{
            background:#fff1e2;
            color:var(--ink);
            font-size:15px;
            padding:18px;
            border-bottom:1px solid var(--line);
            vertical-align:middle;
        }
        .rights-table tbody td,
        .rights-table tbody th{
            padding:17px 18px;
            border-bottom:1px solid rgba(241,216,201,.75);
            vertical-align:middle;
            color:var(--muted);
        }
        .rights-table tbody tr:last-child td,
        .rights-table tbody tr:last-child th{
            border-bottom:0;
        }
        .rights-table tbody th{
            color:var(--ink);
            font-weight:800;
            width:24%;
        }
        .rights-table .recommend-col{
            background:linear-gradient(180deg,rgba(233,54,46,.08),rgba(255,138,31,.07));
            color:var(--ink);
            font-weight:800;
        }
        .check{
            display:inline-grid;
            place-items:center;
            width:24px;
            height:24px;
            border-radius:50%;
            color:#fff;
            background:linear-gradient(135deg,var(--promo-red),var(--warm-orange));
            font-size:13px;
            margin-right:7px;
            vertical-align:middle;
        }
        .dash{
            color:var(--light-muted);
            font-weight:700;
        }
        .badge-hot{
            display:inline-flex;
            align-items:center;
            gap:5px;
            border-radius:999px;
            padding:6px 10px;
            font-size:12px;
            font-weight:900;
            color:#fff;
            background:linear-gradient(135deg,var(--promo-red),var(--warm-orange));
            box-shadow:0 8px 16px rgba(233,54,46,.22);
        }
        .level-grid{
            display:grid;
            grid-template-columns:repeat(3,1fr);
            gap:20px;
        }
        .level-card{
            position:relative;
            border-radius:var(--radius-xl);
            background:#fff;
            border:1px solid var(--line);
            padding:24px;
            box-shadow:0 16px 38px rgba(42,23,18,.06);
            transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
            overflow:hidden;
        }
        .level-card:hover{
            transform:translateY(-5px);
            box-shadow:var(--shadow-hover);
            border-color:rgba(233,54,46,.3);
        }
        .level-card.featured{
            border:2px solid rgba(233,54,46,.45);
            background:linear-gradient(180deg,#fff,#fff4ea);
        }
        .level-card.featured:before{
            content:"推荐";
            position:absolute;
            right:18px;
            top:18px;
            border-radius:999px;
            padding:5px 10px;
            color:#fff;
            font-size:12px;
            font-weight:900;
            background:linear-gradient(135deg,var(--promo-red),var(--warm-orange));
        }
        .level-badge{
            display:inline-flex;
            align-items:center;
            border-radius:999px;
            padding:7px 12px;
            color:var(--promo-red-dark);
            background:#fff0df;
            font-size:13px;
            font-weight:900;
            margin-bottom:16px;
        }
        .level-price{
            color:var(--promo-red);
            font-weight:900;
            margin:12px 0 14px;
        }
        .level-price .big{
            font-size:40px;
            line-height:1;
            letter-spacing:-.06em;
        }
        .feature-list{
            list-style:none;
            padding:0;
            margin:0 0 20px;
            display:grid;
            gap:11px;
        }
        .feature-list li{
            display:flex;
            gap:9px;
            color:var(--muted);
            align-items:flex-start;
        }
        .feature-list i{
            color:var(--promo-red);
            margin-top:4px;
        }
        .qualify-box{
            border-radius:var(--radius-xl);
            background:linear-gradient(135deg,#fff,#fff0df);
            border:1px solid var(--line);
            box-shadow:var(--shadow);
            padding:30px;
        }
        .step-grid{
            display:grid;
            grid-template-columns:repeat(4,1fr);
            gap:14px;
        }
        .step-item{
            border-radius:20px;
            background:#fff;
            border:1px solid var(--line);
            padding:18px;
            min-height:150px;
        }
        .step-num{
            width:34px;
            height:34px;
            border-radius:12px;
            display:grid;
            place-items:center;
            color:#fff;
            font-weight:900;
            background:linear-gradient(135deg,var(--promo-red),var(--warm-orange));
            margin-bottom:12px;
        }
        .preview-grid{
            display:grid;
            grid-template-columns:1.25fr .75fr 1fr;
            gap:18px;
            align-items:stretch;
        }
        .preview-card{
            position:relative;
            overflow:hidden;
            border-radius:var(--radius-xl);
            min-height:224px;
            background:#fff;
            border:1px solid var(--line);
            box-shadow:0 16px 38px rgba(42,23,18,.06);
            padding:20px;
            display:flex;
            flex-direction:column;
            justify-content:space-between;
            transition:transform .22s ease, box-shadow .22s ease;
        }
        .preview-card:hover{
            transform:translateY(-4px);
            box-shadow:var(--shadow-hover);
        }
        .preview-card.wide{
            grid-row:span 2;
            min-height:468px;
        }
        .abstract-cover{
            position:absolute;
            inset:0;
            background:
                radial-gradient(circle at 25% 18%,rgba(233,54,46,.18),transparent 30%),
                radial-gradient(circle at 72% 70%,rgba(255,138,31,.22),transparent 32%),
                linear-gradient(135deg,#fff8ef,#ffe2ca);
            opacity:.85;
        }
        .preview-card .inner{
            position:relative;
            z-index:1;
        }
        .tag-row{
            display:flex;
            flex-wrap:wrap;
            gap:8px;
            margin-bottom:14px;
        }
        .mini-tag{
            display:inline-flex;
            align-items:center;
            gap:5px;
            border-radius:999px;
            padding:6px 10px;
            background:rgba(255,255,255,.82);
            color:var(--promo-red-dark);
            border:1px solid rgba(233,54,46,.14);
            font-size:12px;
            font-weight:900;
        }
        .preview-foot{
            position:relative;
            z-index:1;
            display:flex;
            align-items:center;
            justify-content:space-between;
            gap:12px;
            color:var(--muted);
            font-size:13px;
            margin-top:18px;
        }
        .data-panel{
            border-radius:var(--radius-xl);
            background:#fff;
            border:1px solid var(--line);
            box-shadow:var(--shadow);
            padding:26px;
        }
        .kpi-grid{
            display:grid;
            grid-template-columns:repeat(4,1fr);
            gap:14px;
        }
        .kpi{
            border-radius:20px;
            background:linear-gradient(180deg,#fff7ef,#fff);
            border:1px solid var(--line);
            padding:18px;
        }
        .kpi strong{
            display:block;
            color:var(--promo-red);
            font-size:30px;
            line-height:1.1;
            letter-spacing:-.04em;
            font-weight:900;
        }
        .bar-chart{
            margin-top:20px;
            display:grid;
            gap:12px;
        }
        .bar-line{
            display:grid;
            grid-template-columns:110px 1fr 54px;
            gap:12px;
            align-items:center;
            color:var(--muted);
            font-size:14px;
            font-weight:800;
        }
        .bar-track{
            height:12px;
            border-radius:999px;
            background:#fff0df;
            overflow:hidden;
        }
        .bar-fill{
            height:100%;
            border-radius:inherit;
            background:linear-gradient(90deg,var(--promo-red),var(--warm-orange));
        }
        .news-layout{
            display:grid;
            grid-template-columns:minmax(0,1.1fr) 360px;
            gap:22px;
            align-items:start;
        }
        .news-list{
            border-radius:var(--radius-xl);
            background:#fff;
            border:1px solid var(--line);
            box-shadow:0 16px 38px rgba(42,23,18,.06);
            overflow:hidden;
        }
        .news-row{
            display:grid;
            grid-template-columns:120px 1fr auto;
            gap:16px;
            align-items:center;
            padding:18px 20px;
            border-bottom:1px solid rgba(241,216,201,.72);
        }
        .news-row:last-child{
            border-bottom:0;
        }
        .news-row:hover{
            background:#fff7ef;
        }
        .news-time{
            color:var(--promo-red-dark);
            font-weight:900;
            font-size:13px;
        }
        .news-title{
            font-weight:850;
            color:var(--ink);
        }
        .news-row p{
            margin:3px 0 0;
            color:var(--muted);
            font-size:14px;
            line-height:1.6;
        }
        .recommend-box{
            position:sticky;
            top:98px;
            border-radius:var(--radius-xl);
            padding:24px;
            color:#fff;
            background:
                radial-gradient(circle at 80% 10%,rgba(255,255,255,.22),transparent 28%),
                linear-gradient(135deg,var(--promo-red),#f66d24);
            box-shadow:0 22px 48px rgba(233,54,46,.22);
        }
        .recommend-box .small{
            color:rgba(255,255,255,.82);
        }
        .trust-strip{
            display:grid;
            grid-template-columns:repeat(4,1fr);
            gap:14px;
            padding:18px;
            border-radius:var(--radius-xl);
            background:#fff;
            border:1px solid var(--line);
            box-shadow:var(--shadow);
        }
        .trust-item{
            display:flex;
            gap:12px;
            align-items:center;
            padding:12px;
            border-radius:18px;
            background:#fff8f1;
        }
        .trust-icon{
            width:42px;
            height:42px;
            border-radius:15px;
            display:grid;
            place-items:center;
            color:#fff;
            flex:0 0 auto;
            background:linear-gradient(135deg,var(--promo-red),var(--warm-orange));
            box-shadow:0 10px 20px rgba(233,54,46,.18);
        }
        .trust-item b{
            display:block;
            line-height:1.25;
        }
        .trust-item span{
            color:var(--muted);
            font-size:13px;
        }
        .accordion{
            display:grid;
            gap:12px;
        }
        .accordion-item{
            border:1px solid var(--line)!important;
            border-radius:20px!important;
            overflow:hidden;
            background:#fff;
            box-shadow:0 12px 30px rgba(42,23,18,.04);
        }
        .accordion-button{
            border:0;
            color:var(--ink);
            background:#fff;
            font-weight:850;
            padding:18px 20px;
            box-shadow:none!important;
        }
        .accordion-button:before{
            content:"?";
            width:26px;
            height:26px;
            border-radius:50%;
            display:inline-grid;
            place-items:center;
            background:#fff0df;
            color:var(--promo-red);
            margin-right:10px;
            font-weight:900;
            flex:0 0 auto;
        }
        .accordion-button:not(.collapsed){
            color:var(--promo-red-dark);
            background:#fff5eb;
        }
        .accordion-button:not(.collapsed):before{
            color:#fff;
            background:linear-gradient(135deg,var(--promo-red),var(--warm-orange));
        }
        .accordion-body{
            color:var(--muted);
            padding:0 22px 20px 56px;
            background:#fff5eb;
            line-height:1.85;
        }
        .apply-wrap{
            border-radius:32px;
            background:
                radial-gradient(circle at 10% 10%,rgba(255,255,255,.24),transparent 26%),
                linear-gradient(135deg,#2A1712,#4d2117 55%,#8f261d);
            color:#fff;
            padding:30px;
            box-shadow:0 30px 70px rgba(42,23,18,.24);
            overflow:hidden;
        }
        .apply-grid{
            display:grid;
            grid-template-columns:1fr 430px;
            gap:26px;
            align-items:stretch;
        }
        .apply-wrap .lead,
        .apply-wrap .text-muted-warm{
            color:rgba(255,255,255,.76);
        }
        .apply-highlights{
            display:grid;
            grid-template-columns:repeat(2,1fr);
            gap:12px;
            margin-top:24px;
        }
        .apply-highlights .item{
            border-radius:18px;
            padding:16px;
            background:rgba(255,255,255,.08);
            border:1px solid rgba(255,255,255,.14);
        }
        .apply-highlights i{
            color:#ffcf91;
            margin-right:6px;
        }
        .form-card{
            border-radius:26px;
            background:#fff;
            color:var(--ink);
            padding:22px;
            border:1px solid rgba(255,255,255,.2);
        }
        .form-label{
            color:var(--ink);
            font-weight:850;
            margin-bottom:7px;
            font-size:14px;
        }
        .form-control,
        .form-select{
            border-radius:16px;
            min-height:48px;
            border:1px solid var(--line-2);
            background:#fffaf5;
            color:var(--ink);
            box-shadow:none;
        }
        textarea.form-control{
            min-height:92px;
            resize:vertical;
        }
        .form-text{
            color:var(--muted);
            font-size:13px;
        }
        .age-note{
            margin-top:16px;
            border-radius:18px;
            padding:14px;
            background:#fff7ef;
            border:1px solid var(--line);
            color:var(--muted);
            font-size:13px;
            line-height:1.65;
        }
        .site-footer{
            background:var(--deep);
            color:rgba(255,255,255,.78);
            padding:46px 0 22px;
        }
        .footer-grid{
            display:grid;
            grid-template-columns:1.1fr .9fr .9fr;
            gap:28px;
            align-items:start;
            margin-bottom:26px;
        }
        .footer-brand{
            display:flex;
            align-items:center;
            gap:10px;
            color:#fff;
            font-size:18px;
            font-weight:900;
            margin-bottom:12px;
        }
        .footer-title{
            color:#fff;
            font-weight:900;
            margin-bottom:12px;
        }
        .footer-chips{
            display:flex;
            flex-wrap:wrap;
            gap:8px;
        }
        .footer-chip{
            border-radius:999px;
            padding:8px 12px;
            background:rgba(255,255,255,.08);
            border:1px solid rgba(255,255,255,.12);
            color:rgba(255,255,255,.78);
            font-size:13px;
            font-weight:800;
        }
        .footer-chip:hover{
            background:rgba(255,138,31,.2);
            color:#fff;
        }
        .footer-bottom{
            border-top:1px solid rgba(255,255,255,.1);
            padding-top:18px;
            display:flex;
            justify-content:space-between;
            gap:16px;
            flex-wrap:wrap;
            font-size:13px;
            color:rgba(255,255,255,.56);
        }
        .backtop{
            display:inline-flex;
            align-items:center;
            gap:6px;
            color:#ffd0a4;
            font-weight:800;
        }
        .mobile-sticky{
            display:none;
        }
        @media (max-width: 1100px){
            .header-inner{
                grid-template-columns:auto auto;
                gap:12px;
            }
            .chip-nav{
                grid-column:1 / -1;
                justify-content:flex-start;
                order:3;
                padding:0 0 12px;
            }
            .hero-content,
            .apply-grid{
                grid-template-columns:1fr;
            }
            .hero-band:after{
                font-size:72px;
                opacity:.75;
            }
            .level-grid,
            .preview-grid{
                grid-template-columns:1fr 1fr;
            }
            .preview-card.wide{
                grid-row:auto;
                grid-column:span 2;
                min-height:300px;
            }
            .news-layout{
                grid-template-columns:1fr;
            }
            .recommend-box{
                position:relative;
                top:auto;
            }
        }
        @media (max-width: 900px){
            .section-space{
                padding:58px 0;
            }
            .section-head{
                display:block;
            }
            .step-grid,
            .kpi-grid,
            .trust-strip{
                grid-template-columns:repeat(2,1fr);
            }
            .footer-grid{
                grid-template-columns:1fr;
            }
        }
        @media (max-width: 700px){
            body{
                font-size:15px;
            }
            .site-container{
                width:min(100% - 24px,var(--container));
            }
            .site-header{
                padding-top:4px;
            }
            .header-inner{
                min-height:62px;
            }
            .brand-mark{
                width:36px;
                height:36px;
                border-radius:13px;
            }
            .brand-text{
                font-size:14px;
                max-width:150px;
                overflow:hidden;
                text-overflow:ellipsis;
            }
            .header-cta .btn{
                padding:9px 13px;
                min-height:42px;
                font-size:13px;
            }
            .hero{
                padding:20px 0 28px;
            }
            .hero-band{
                padding:24px 18px;
                border-radius:24px;
            }
            .hero-content{
                gap:18px;
            }
            .hero-actions{
                flex-direction:column;
            }
            .hero-actions .btn{
                width:100%;
            }
            .hero-points,
            .level-grid,
            .preview-grid,
            .apply-highlights{
                grid-template-columns:1fr;
            }
            .preview-card.wide{
                grid-column:auto;
                min-height:260px;
            }
            .step-grid,
            .kpi-grid,
            .trust-strip{
                grid-template-columns:1fr;
            }
            .news-row{
                grid-template-columns:1fr;
                gap:6px;
                padding:17px;
            }
            .bar-line{
                grid-template-columns:88px 1fr 42px;
                gap:8px;
            }
            .qualify-box,
            .apply-wrap{
                padding:20px;
                border-radius:24px;
            }
            .form-card{
                padding:18px;
            }
            .accordion-body{
                padding:0 18px 18px 18px;
            }
            .footer-bottom{
                display:block;
            }
            .mobile-sticky{
                position:fixed;
                z-index:1050;
                left:12px;
                right:12px;
                bottom:12px;
                display:flex;
                align-items:center;
                justify-content:space-between;
                gap:10px;
                padding:10px 12px;
                border-radius:20px;
                background:linear-gradient(135deg,var(--promo-red),var(--warm-orange));
                color:#fff;
                box-shadow:0 18px 42px rgba(233,54,46,.35);
            }
            .mobile-sticky span{
                font-weight:900;
                font-size:14px;
                line-height:1.25;
            }
            .mobile-sticky .btn{
                background:#fff;
                color:var(--promo-red);
                padding:8px 13px;
                min-height:40px;
                font-size:13px;
                white-space:nowrap;
            }
            body{
                padding-bottom:78px;
            }
        }
        @media (max-width: 420px){
            h1{
                font-size:29px;
            }
            .nav-chip{
                padding:9px 13px;
                font-size:13px;
            }
            .price-tag .num,
            .level-price .big{
                font-size:32px;
            }
            .hero-band:after{
                display:none;
            }
        }

/* roulang page: category1 */
:root {
      --promo-red: #E9362E;
      --promo-red-dark: #C9231E;
      --warm-orange: #FF8A1F;
      --warm-orange-soft: #FFE2C0;
      --cream: #FFF7EF;
      --cream-2: #FFF3E7;
      --paper: #FFFFFF;
      --ink: #1F1715;
      --muted: #77615A;
      --light-muted: #A58B7E;
      --line: #F1D8C9;
      --line-2: #EAD5C8;
      --success-warm: #E95B2D;
      --shadow: 0 18px 45px rgba(233, 54, 46, .12);
      --shadow-hover: 0 24px 60px rgba(233, 54, 46, .18);
      --radius-xl: 28px;
      --radius-lg: 22px;
      --radius-md: 16px;
      --radius-pill: 999px;
      --container: 1200px;
      --header-h: 74px;
    }

    * {
      box-sizing: border-box;
    }

    html {
      scroll-behavior: smooth;
      scroll-padding-top: 110px;
    }

    body {
      margin: 0;
      font-family: "PingFang SC", "Microsoft YaHei", "Noto Sans SC", Arial, sans-serif;
      font-size: 16px;
      line-height: 1.75;
      color: var(--ink);
      background:
        radial-gradient(circle at 12% 2%, rgba(255, 138, 31, .16), transparent 32%),
        radial-gradient(circle at 92% 12%, rgba(233, 54, 46, .10), transparent 30%),
        linear-gradient(180deg, var(--cream), #fff 42%, var(--cream-2));
      overflow-x: hidden;
    }

    a {
      color: inherit;
      text-decoration: none;
      transition: color .2s ease, background .2s ease, transform .2s ease, box-shadow .2s ease, border-color .2s ease;
    }

    a:hover {
      color: var(--promo-red);
    }

    img, svg {
      max-width: 100%;
      height: auto;
    }

    button,
    input,
    textarea,
    select {
      font: inherit;
    }

    ::selection {
      background: rgba(233, 54, 46, .18);
      color: var(--ink);
    }

    .site-container {
      width: min(100% - 32px, var(--container));
      margin-inline: auto;
    }

    .section {
      padding: 72px 0;
    }

    .section-tight {
      padding: 50px 0;
    }

    .section-kicker {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 8px 13px;
      border-radius: var(--radius-pill);
      background: rgba(233, 54, 46, .08);
      color: var(--promo-red);
      font-weight: 800;
      font-size: 13px;
      letter-spacing: .02em;
      border: 1px solid rgba(233, 54, 46, .14);
      margin-bottom: 14px;
    }

    .section-title {
      font-size: clamp(26px, 3vw, 36px);
      line-height: 1.2;
      font-weight: 900;
      margin: 0 0 14px;
      letter-spacing: -.02em;
    }

    .section-subtitle {
      color: var(--muted);
      max-width: 760px;
      margin: 0;
      font-size: 16px;
    }

    .site-header {
      position: sticky;
      top: 0;
      z-index: 1030;
      background: rgba(255, 247, 239, .94);
      backdrop-filter: blur(18px);
      border-bottom: 1px solid rgba(241, 216, 201, .82);
      box-shadow: 0 10px 26px rgba(90, 36, 18, .06);
    }

    .header-inner {
      min-height: var(--header-h);
      display: grid;
      grid-template-columns: auto minmax(0, 1fr) auto;
      align-items: center;
      gap: 18px;
    }

    .brand-logo,
    .footer-brand {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      font-weight: 900;
      color: var(--ink);
      min-width: 0;
    }

    .brand-mark {
      width: 40px;
      height: 40px;
      border-radius: 14px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      flex: 0 0 auto;
      color: #fff;
      background: linear-gradient(135deg, var(--promo-red), var(--warm-orange));
      box-shadow: 0 12px 28px rgba(233, 54, 46, .22);
    }

    .brand-text {
      font-size: 18px;
      white-space: nowrap;
      letter-spacing: -.02em;
    }

    .chip-nav {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      overflow-x: auto;
      scrollbar-width: none;
      -webkit-overflow-scrolling: touch;
      padding: 8px 2px;
    }

    .chip-nav::-webkit-scrollbar {
      display: none;
    }

    .nav-chip {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 7px;
      min-height: 42px;
      padding: 10px 17px;
      border-radius: var(--radius-pill);
      background: #fff;
      color: #6F554B;
      border: 1px solid var(--line);
      font-weight: 800;
      font-size: 14px;
      white-space: nowrap;
      box-shadow: 0 8px 22px rgba(116, 56, 25, .06);
    }

    .nav-chip:hover,
    .nav-chip:focus-visible {
      color: var(--promo-red);
      border-color: rgba(233, 54, 46, .32);
      background: #FFF2E5;
      outline: none;
      transform: translateY(-1px);
    }

    .nav-chip.active {
      color: #fff;
      background: linear-gradient(135deg, var(--promo-red), var(--warm-orange));
      border-color: transparent;
      box-shadow: 0 14px 34px rgba(233, 54, 46, .22);
    }

    .header-cta {
      display: flex;
      align-items: center;
      justify-content: flex-end;
    }

    .btn {
      border: 0;
      font-weight: 900;
      border-radius: var(--radius-pill);
      min-height: 44px;
      padding: 11px 20px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      transition: transform .22s ease, box-shadow .22s ease, background .22s ease, border-color .22s ease, color .22s ease;
    }

    .btn:focus-visible,
    .form-control:focus,
    .form-select:focus,
    .form-check-input:focus {
      outline: 3px solid rgba(255, 138, 31, .24);
      box-shadow: 0 0 0 4px rgba(233, 54, 46, .10);
      border-color: rgba(233, 54, 46, .55);
    }

    .btn-promo {
      color: #fff !important;
      background: linear-gradient(135deg, var(--promo-red), var(--warm-orange));
      box-shadow: 0 14px 32px rgba(233, 54, 46, .25);
    }

    .btn-promo:hover,
    .btn-promo:active {
      color: #fff;
      transform: translateY(-2px);
      box-shadow: 0 18px 42px rgba(233, 54, 46, .33);
      background: linear-gradient(135deg, var(--promo-red-dark), var(--warm-orange));
    }

    .btn-soft {
      color: var(--promo-red) !important;
      background: #FFF0E2;
      border: 1px solid rgba(233, 54, 46, .18);
    }

    .btn-soft:hover {
      color: #fff !important;
      background: linear-gradient(135deg, var(--promo-red), var(--warm-orange));
      transform: translateY(-2px);
      box-shadow: var(--shadow);
    }

    .btn-outline-warm {
      background: #fff;
      color: var(--promo-red) !important;
      border: 1px solid rgba(233, 54, 46, .35);
    }

    .btn-outline-warm:hover {
      background: #FFF1E4;
      border-color: var(--promo-red);
      transform: translateY(-2px);
    }

    .promo-strip {
      background: linear-gradient(90deg, rgba(233, 54, 46, .10), rgba(255, 138, 31, .16), rgba(233, 54, 46, .08));
      border-top: 1px solid rgba(241, 216, 201, .7);
      color: #6B3B2D;
      font-size: 14px;
      font-weight: 700;
    }

    .promo-strip .site-container {
      min-height: 38px;
      display: flex;
      align-items: center;
      gap: 8px;
    }

    .promo-strip i {
      color: var(--promo-red);
    }

    .breadcrumb-wrap {
      padding: 22px 0 0;
    }

    .breadcrumb {
      --bs-breadcrumb-divider-color: #AD9083;
      margin: 0;
      font-size: 14px;
      color: var(--muted);
    }

    .breadcrumb a {
      color: #8B6B5F;
      font-weight: 700;
    }

    .breadcrumb .active {
      color: var(--promo-red);
      font-weight: 900;
    }

    .category-hero {
      padding: 36px 0 72px;
      position: relative;
    }

    .hero-shell {
      display: grid;
      grid-template-columns: minmax(0, 1.02fr) minmax(360px, .78fr);
      gap: 30px;
      align-items: stretch;
    }

    .hero-copy {
      background:
        linear-gradient(135deg, rgba(255, 255, 255, .94), rgba(255, 245, 235, .94)),
        repeating-linear-gradient(45deg, rgba(233, 54, 46, .05) 0 1px, transparent 1px 16px);
      border: 1px solid var(--line);
      border-radius: var(--radius-xl);
      padding: clamp(28px, 4vw, 46px);
      box-shadow: var(--shadow);
      position: relative;
      overflow: hidden;
    }

    .hero-copy::after {
      content: "";
      position: absolute;
      right: -54px;
      top: -54px;
      width: 170px;
      height: 170px;
      background: radial-gradient(circle, rgba(255, 138, 31, .25), transparent 70%);
      pointer-events: none;
    }

    .hero-tags {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin-bottom: 18px;
    }

    .tag {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      border-radius: var(--radius-pill);
      padding: 7px 12px;
      background: #fff;
      border: 1px solid var(--line);
      color: #7A5143;
      font-size: 13px;
      font-weight: 800;
      box-shadow: 0 8px 18px rgba(116, 56, 25, .05);
    }

    .tag.hot {
      color: #fff;
      border-color: transparent;
      background: linear-gradient(135deg, var(--promo-red), var(--warm-orange));
    }

    h1 {
      font-size: clamp(30px, 4.2vw, 48px);
      line-height: 1.12;
      font-weight: 900;
      letter-spacing: -.035em;
      margin: 0 0 18px;
    }

    .hero-lead {
      color: var(--muted);
      font-size: 17px;
      max-width: 760px;
      margin: 0 0 24px;
    }

    .hero-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 12px;
      align-items: center;
      margin: 24px 0;
    }

    .hero-note {
      display: flex;
      align-items: flex-start;
      gap: 10px;
      border: 1px dashed rgba(233, 54, 46, .28);
      background: rgba(255, 244, 232, .76);
      border-radius: 18px;
      padding: 14px 16px;
      color: #6F554B;
      font-size: 14px;
      font-weight: 700;
    }

    .hero-note i {
      color: var(--promo-red);
      margin-top: 2px;
      flex: 0 0 auto;
    }

    .lead-card {
      border-radius: var(--radius-xl);
      background: #fff;
      border: 1px solid var(--line);
      box-shadow: var(--shadow);
      padding: 22px;
      position: relative;
      overflow: hidden;
    }

    .lead-card::before {
      content: "会员资料";
      position: absolute;
      top: 20px;
      right: -38px;
      transform: rotate(35deg);
      background: linear-gradient(135deg, var(--promo-red), var(--warm-orange));
      color: #fff;
      font-size: 12px;
      font-weight: 900;
      padding: 7px 44px;
      box-shadow: 0 10px 20px rgba(233, 54, 46, .20);
    }

    .doc-cover {
      border-radius: 24px;
      min-height: 184px;
      background:
        radial-gradient(circle at 18% 18%, rgba(255,255,255,.45), transparent 26%),
        linear-gradient(135deg, #E9362E, #FF8A1F);
      color: #fff;
      padding: 24px;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      box-shadow: inset 0 -30px 70px rgba(93, 31, 10, .16);
      margin-bottom: 18px;
    }

    .doc-cover .doc-badge {
      align-self: flex-start;
      border-radius: var(--radius-pill);
      background: rgba(255,255,255,.18);
      border: 1px solid rgba(255,255,255,.32);
      padding: 6px 11px;
      font-size: 12px;
      font-weight: 900;
    }

    .doc-cover strong {
      display: block;
      font-size: 25px;
      line-height: 1.2;
      letter-spacing: -.02em;
      margin-top: 26px;
    }

    .doc-cover span:last-child {
      font-size: 13px;
      opacity: .92;
      font-weight: 700;
    }

    .toc-list {
      display: grid;
      gap: 10px;
      margin: 0 0 18px;
      padding: 0;
      list-style: none;
    }

    .toc-list li {
      display: flex;
      gap: 10px;
      align-items: flex-start;
      padding: 12px;
      border-radius: 16px;
      background: var(--cream);
      border: 1px solid rgba(241, 216, 201, .82);
      color: #654D45;
      font-weight: 700;
      font-size: 14px;
    }

    .toc-list i {
      color: var(--promo-red);
    }

    .mini-form {
      display: grid;
      gap: 10px;
    }

    .form-control,
    .form-select,
    textarea.form-control {
      border-radius: 16px;
      border: 1px solid var(--line-2);
      background-color: #FFFCF8;
      min-height: 46px;
      color: var(--ink);
      box-shadow: none;
    }

    .form-control::placeholder {
      color: #B39A8E;
    }

    .filter-panel {
      border-radius: var(--radius-xl);
      border: 1px solid var(--line);
      background: rgba(255,255,255,.82);
      box-shadow: var(--shadow);
      padding: 22px;
    }

    .segmented-row {
      display: flex;
      flex-wrap: wrap;
      gap: 12px;
      align-items: center;
      margin-top: 18px;
    }

    .filter-label {
      font-weight: 900;
      color: #5F443B;
      margin-right: 4px;
      display: inline-flex;
      align-items: center;
      gap: 7px;
    }

    .filter-chip {
      border: 1px solid var(--line);
      background: #fff;
      color: #775A4F;
      border-radius: var(--radius-pill);
      min-height: 40px;
      padding: 8px 15px;
      font-weight: 900;
      font-size: 14px;
      cursor: pointer;
      transition: all .2s ease;
    }

    .filter-chip:hover,
    .filter-chip:focus-visible {
      color: var(--promo-red);
      border-color: rgba(233, 54, 46, .34);
      background: #FFF1E4;
      transform: translateY(-1px);
      outline: none;
    }

    .filter-chip.active {
      color: #fff;
      border-color: transparent;
      background: linear-gradient(135deg, var(--promo-red), var(--warm-orange));
      box-shadow: 0 12px 26px rgba(233, 54, 46, .20);
    }

    .feature-strip {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 14px;
      margin-top: 24px;
    }

    .promise-item {
      display: flex;
      align-items: center;
      gap: 12px;
      border: 1px solid var(--line);
      background: #fff;
      border-radius: 20px;
      padding: 14px;
      box-shadow: 0 12px 28px rgba(116, 56, 25, .06);
    }

    .promise-icon {
      width: 42px;
      height: 42px;
      border-radius: 15px;
      background: linear-gradient(135deg, rgba(233,54,46,.14), rgba(255,138,31,.20));
      color: var(--promo-red);
      display: grid;
      place-items: center;
      flex: 0 0 auto;
      font-size: 20px;
    }

    .promise-item strong {
      display: block;
      line-height: 1.25;
      font-size: 14px;
    }

    .promise-item span {
      display: block;
      color: var(--muted);
      font-size: 12px;
      line-height: 1.4;
      margin-top: 2px;
    }

    .access-grid {
      display: grid;
      grid-template-columns: 1.1fr repeat(2, minmax(0, 1fr));
      gap: 18px;
      margin-top: 28px;
    }

    .access-card {
      min-height: 260px;
      border-radius: var(--radius-lg);
      background: #fff;
      border: 1px solid var(--line);
      box-shadow: 0 16px 40px rgba(116, 56, 25, .08);
      padding: 20px;
      position: relative;
      overflow: hidden;
      display: flex;
      flex-direction: column;
      transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
    }

    .access-card:hover {
      transform: translateY(-4px);
      box-shadow: var(--shadow-hover);
      border-color: rgba(233, 54, 46, .28);
    }

    .access-card.featured {
      grid-row: span 2;
      background:
        linear-gradient(180deg, rgba(255,255,255,.93), rgba(255,242,230,.93)),
        radial-gradient(circle at 90% 0, rgba(233, 54, 46, .20), transparent 32%);
      border: 2px solid rgba(233, 54, 46, .24);
    }

    .abstract-cover {
      height: 94px;
      border-radius: 18px;
      background:
        radial-gradient(circle at 25% 25%, rgba(255,255,255,.70), transparent 24%),
        linear-gradient(135deg, rgba(233,54,46,.92), rgba(255,138,31,.86));
      margin-bottom: 16px;
      position: relative;
      overflow: hidden;
    }

    .abstract-cover::after {
      content: "";
      position: absolute;
      inset: 16px -20px auto auto;
      width: 120px;
      height: 120px;
      border-radius: 50%;
      border: 18px solid rgba(255,255,255,.18);
    }

    .access-card.featured .abstract-cover {
      height: 160px;
    }

    .card-topline {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      margin-bottom: 10px;
    }

    .badge-warm {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      border-radius: var(--radius-pill);
      padding: 6px 10px;
      color: var(--promo-red);
      background: rgba(233,54,46,.08);
      border: 1px solid rgba(233,54,46,.14);
      font-size: 12px;
      font-weight: 900;
    }

    .update-time {
      color: var(--light-muted);
      font-size: 12px;
      font-weight: 800;
      white-space: nowrap;
    }

    .access-card h3 {
      font-size: 22px;
      line-height: 1.28;
      font-weight: 900;
      margin: 0 0 10px;
      letter-spacing: -.02em;
    }

    .access-card p {
      margin: 0;
      color: var(--muted);
      font-size: 15px;
    }

    .rights-list {
      list-style: none;
      padding: 0;
      margin: 18px 0 20px;
      display: grid;
      gap: 10px;
    }

    .rights-list li {
      display: flex;
      align-items: flex-start;
      gap: 9px;
      color: #5D4740;
      font-weight: 700;
      font-size: 14px;
    }

    .rights-list i {
      color: var(--promo-red);
      margin-top: 2px;
    }

    .card-bottom {
      margin-top: auto;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      padding-top: 16px;
    }

    .price-note {
      display: inline-flex;
      align-items: baseline;
      gap: 4px;
      color: var(--promo-red);
      font-weight: 900;
    }

    .price-note b {
      font-size: 28px;
      line-height: 1;
    }

    .steps-wrap {
      display: grid;
      grid-template-columns: .9fr 1.1fr;
      gap: 24px;
      align-items: start;
    }

    .coupon-card {
      border-radius: var(--radius-xl);
      background:
        linear-gradient(135deg, #2A1712, #5C2418 52%, #E9362E);
      color: #fff;
      padding: 28px;
      min-height: 320px;
      box-shadow: 0 24px 60px rgba(76, 25, 12, .22);
      position: relative;
      overflow: hidden;
    }

    .coupon-card::before,
    .coupon-card::after {
      content: "";
      position: absolute;
      width: 44px;
      height: 44px;
      border-radius: 50%;
      background: var(--cream);
      top: 50%;
      transform: translateY(-50%);
    }

    .coupon-card::before {
      left: -22px;
    }

    .coupon-card::after {
      right: -22px;
    }

    .coupon-card .big {
      font-size: 42px;
      font-weight: 900;
      line-height: 1;
      margin: 18px 0 8px;
      letter-spacing: -.04em;
    }

    .coupon-card p {
      opacity: .86;
      margin: 0;
    }

    .step-list {
      display: grid;
      gap: 14px;
    }

    .step-item {
      display: grid;
      grid-template-columns: auto minmax(0, 1fr);
      gap: 14px;
      align-items: start;
      padding: 18px;
      border: 1px solid var(--line);
      border-radius: 20px;
      background: #fff;
      box-shadow: 0 14px 34px rgba(116, 56, 25, .07);
    }

    .step-num {
      width: 40px;
      height: 40px;
      border-radius: 14px;
      display: grid;
      place-items: center;
      color: #fff;
      background: linear-gradient(135deg, var(--promo-red), var(--warm-orange));
      font-weight: 900;
      box-shadow: 0 10px 22px rgba(233, 54, 46, .20);
    }

    .step-item h3 {
      font-size: 18px;
      margin: 0 0 5px;
      font-weight: 900;
    }

    .step-item p {
      margin: 0;
      color: var(--muted);
      font-size: 14px;
    }

    .rights-table-card {
      border-radius: var(--radius-xl);
      overflow: hidden;
      border: 1px solid var(--line);
      background: #fff;
      box-shadow: var(--shadow);
      margin-top: 28px;
    }

    .table {
      margin: 0;
      --bs-table-bg: transparent;
      --bs-table-border-color: var(--line);
      color: var(--ink);
      min-width: 760px;
    }

    .table thead th {
      background: linear-gradient(180deg, #FFF1E4, #FFE2C0);
      color: #5C3227;
      font-weight: 900;
      padding: 18px;
      border-bottom: 1px solid var(--line);
    }

    .table tbody td,
    .table tbody th {
      padding: 17px 18px;
      vertical-align: middle;
      font-size: 15px;
      color: #5E4740;
    }

    .table tbody th {
      font-weight: 900;
      color: var(--ink);
    }

    .table .recommend-col {
      background: linear-gradient(180deg, rgba(233,54,46,.07), rgba(255,138,31,.06));
      color: #4A2119;
      font-weight: 900;
    }

    .check-dot {
      width: 24px;
      height: 24px;
      border-radius: 50%;
      display: inline-grid;
      place-items: center;
      color: #fff;
      background: linear-gradient(135deg, var(--promo-red), var(--warm-orange));
      font-size: 14px;
      margin-right: 7px;
    }

    .faq-section {
      background:
        linear-gradient(180deg, rgba(255, 243, 231, .68), rgba(255,255,255,.66));
      border-block: 1px solid rgba(241, 216, 201, .66);
    }

    .accordion {
      margin-top: 26px;
      display: grid;
      gap: 12px;
    }

    .accordion-item {
      border: 1px solid var(--line) !important;
      border-radius: 18px !important;
      overflow: hidden;
      background: #fff;
      box-shadow: 0 12px 28px rgba(116, 56, 25, .06);
    }

    .accordion-button {
      border-radius: 18px !important;
      box-shadow: none !important;
      background: #fff;
      color: var(--ink);
      font-weight: 900;
      padding: 18px 20px;
      gap: 10px;
    }

    .accordion-button::before {
      content: "?";
      width: 26px;
      height: 26px;
      border-radius: 50%;
      display: inline-grid;
      place-items: center;
      flex: 0 0 auto;
      color: var(--promo-red);
      background: rgba(233,54,46,.09);
      font-weight: 900;
    }

    .accordion-button:not(.collapsed) {
      color: var(--promo-red);
      background: #FFF2E5;
      border-bottom: 1px solid rgba(233,54,46,.12);
    }

    .accordion-button:not(.collapsed)::after {
      filter: invert(32%) sepia(88%) saturate(2318%) hue-rotate(345deg) brightness(96%) contrast(91%);
    }

    .accordion-body {
      color: var(--muted);
      padding: 18px 22px 22px 56px;
      background: #fff;
    }

    .apply-section {
      padding: 72px 0 84px;
    }

    .apply-card {
      border-radius: var(--radius-xl);
      background:
        radial-gradient(circle at 12% 12%, rgba(255, 255, 255, .42), transparent 25%),
        linear-gradient(135deg, var(--promo-red), var(--warm-orange));
      color: #fff;
      box-shadow: 0 28px 70px rgba(233, 54, 46, .25);
      overflow: hidden;
      position: relative;
    }

    .apply-card::after {
      content: "";
      position: absolute;
      width: 280px;
      height: 280px;
      border-radius: 50%;
      border: 36px solid rgba(255,255,255,.14);
      right: -90px;
      top: -110px;
      pointer-events: none;
    }

    .apply-inner {
      display: grid;
      grid-template-columns: minmax(0, 1fr) 420px;
      gap: 28px;
      padding: clamp(26px, 4vw, 42px);
      align-items: center;
      position: relative;
      z-index: 1;
    }

    .apply-title {
      font-size: clamp(26px, 3.2vw, 38px);
      font-weight: 900;
      line-height: 1.18;
      letter-spacing: -.025em;
      margin-bottom: 12px;
    }

    .apply-card p {
      opacity: .92;
      margin-bottom: 22px;
    }

    .assurance-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 12px;
    }

    .assurance {
      border: 1px solid rgba(255,255,255,.28);
      background: rgba(255,255,255,.14);
      border-radius: 18px;
      padding: 13px;
      display: flex;
      align-items: center;
      gap: 10px;
      font-weight: 900;
      backdrop-filter: blur(6px);
    }

    .assurance i {
      width: 32px;
      height: 32px;
      border-radius: 12px;
      display: grid;
      place-items: center;
      background: rgba(255,255,255,.22);
      flex: 0 0 auto;
    }

    .apply-form-card {
      background: #fff;
      color: var(--ink);
      border-radius: 24px;
      padding: 22px;
      box-shadow: 0 18px 45px rgba(90, 31, 12, .18);
    }

    .apply-form-card h3 {
      font-size: 20px;
      font-weight: 900;
      margin: 0 0 12px;
    }

    .small-hint {
      color: var(--muted);
      font-size: 13px;
      margin-top: 10px;
      line-height: 1.55;
    }

    .form-check-input:checked {
      background-color: var(--promo-red);
      border-color: var(--promo-red);
    }

    .site-footer {
      background: #2A1712;
      color: rgba(255,255,255,.82);
      padding: 54px 0 26px;
    }

    .footer-grid {
      display: grid;
      grid-template-columns: 1.08fr .92fr .9fr;
      gap: 34px;
      align-items: start;
    }

    .footer-brand {
      color: #fff;
      font-size: 18px;
      margin-bottom: 14px;
    }

    .site-footer p {
      margin: 0;
      color: rgba(255,255,255,.68);
      font-size: 14px;
    }

    .footer-title {
      color: #fff;
      font-weight: 900;
      margin-bottom: 13px;
    }

    .footer-chips {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
    }

    .footer-chip {
      display: inline-flex;
      align-items: center;
      min-height: 38px;
      padding: 8px 13px;
      border-radius: var(--radius-pill);
      background: rgba(255,255,255,.08);
      border: 1px solid rgba(255,255,255,.12);
      color: rgba(255,255,255,.78);
      font-size: 13px;
      font-weight: 800;
    }

    .footer-chip:hover {
      color: #fff;
      background: rgba(255,138,31,.18);
      border-color: rgba(255,138,31,.42);
      transform: translateY(-1px);
    }

    .footer-bottom {
      margin-top: 34px;
      padding-top: 22px;
      border-top: 1px solid rgba(255,255,255,.10);
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 18px;
      color: rgba(255,255,255,.58);
      font-size: 13px;
    }

    .backtop {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      color: rgba(255,255,255,.74);
      white-space: nowrap;
      font-weight: 800;
    }

    .backtop:hover {
      color: #fff;
    }

    .mobile-sticky-cta {
      display: none;
    }

    @media (max-width: 1100px) {
      .header-inner {
        grid-template-columns: auto minmax(280px, 1fr) auto;
        gap: 12px;
      }

      .brand-text {
        font-size: 16px;
      }

      .hero-shell,
      .steps-wrap,
      .apply-inner {
        grid-template-columns: 1fr;
      }

      .lead-card {
        max-width: 720px;
      }

      .access-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .access-card.featured {
        grid-row: auto;
        grid-column: span 2;
      }

      .feature-strip {
        grid-template-columns: repeat(2, 1fr);
      }
    }

    @media (max-width: 768px) {
      :root {
        --header-h: 66px;
      }

      body {
        font-size: 15px;
        padding-bottom: 68px;
      }

      .site-container {
        width: min(100% - 24px, var(--container));
      }

      .section,
      .apply-section {
        padding: 50px 0;
      }

      .section-tight {
        padding: 38px 0;
      }

      .header-inner {
        display: flex;
        min-height: 64px;
        gap: 10px;
      }

      .brand-logo {
        flex: 0 0 auto;
        max-width: 46%;
      }

      .brand-mark {
        width: 36px;
        height: 36px;
        border-radius: 13px;
      }

      .brand-text {
        font-size: 14px;
        overflow: hidden;
        text-overflow: ellipsis;
      }

      .chip-nav {
        justify-content: flex-start;
        flex: 1 1 auto;
        min-width: 0;
      }

      .nav-chip {
        min-height: 38px;
        padding: 8px 13px;
        font-size: 13px;
      }

      .header-cta .btn {
        min-height: 38px;
        padding: 8px 12px;
        font-size: 13px;
      }

      .promo-strip .site-container {
        min-height: auto;
        padding: 8px 0;
        align-items: flex-start;
        font-size: 12px;
        line-height: 1.55;
      }

      .category-hero {
        padding: 26px 0 48px;
      }

      .hero-copy,
      .lead-card,
      .filter-panel,
      .coupon-card,
      .apply-form-card {
        border-radius: 22px;
      }

      .hero-actions {
        align-items: stretch;
      }

      .hero-actions .btn {
        flex: 1 1 100%;
      }

      .segmented-row {
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-bottom: 6px;
        scrollbar-width: none;
      }

      .segmented-row::-webkit-scrollbar {
        display: none;
      }

      .filter-label {
        flex: 0 0 auto;
      }

      .filter-chip {
        flex: 0 0 auto;
      }

      .feature-strip {
        grid-template-columns: 1fr 1fr;
        gap: 10px;
      }

      .promise-item {
        padding: 12px;
        border-radius: 16px;
      }

      .promise-icon {
        width: 36px;
        height: 36px;
        border-radius: 13px;
      }

      .access-grid {
        grid-template-columns: 1fr;
      }

      .access-card.featured {
        grid-column: auto;
      }

      .access-card.featured .abstract-cover,
      .abstract-cover {
        height: 112px;
      }

      .table-responsive {
        overflow-x: auto;
      }

      .accordion-body {
        padding-left: 22px;
      }

      .apply-inner {
        padding: 22px;
      }

      .assurance-grid {
        grid-template-columns: 1fr;
      }

      .footer-grid {
        grid-template-columns: 1fr;
        gap: 26px;
      }

      .footer-bottom {
        flex-direction: column;
        align-items: flex-start;
      }

      .mobile-sticky-cta {
        position: fixed;
        left: 12px;
        right: 12px;
        bottom: 10px;
        z-index: 1040;
        min-height: 56px;
        border-radius: 18px;
        background: linear-gradient(135deg, var(--promo-red), var(--warm-orange));
        color: #fff;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        padding: 10px 12px 10px 16px;
        box-shadow: 0 20px 44px rgba(233, 54, 46, .34);
      }

      .mobile-sticky-cta span {
        font-weight: 900;
        font-size: 14px;
        line-height: 1.3;
      }

      .mobile-sticky-cta .btn {
        min-height: 40px;
        background: #fff;
        color: var(--promo-red) !important;
        padding: 8px 14px;
        font-size: 13px;
        box-shadow: none;
        white-space: nowrap;
      }
    }

    @media (max-width: 520px) {
      h1 {
        font-size: 30px;
      }

      .section-title {
        font-size: 25px;
      }

      .brand-logo {
        max-width: 40%;
      }

      .header-cta {
        display: none;
      }

      .feature-strip {
        grid-template-columns: 1fr;
      }

      .hero-copy,
      .lead-card,
      .filter-panel,
      .coupon-card,
      .apply-card {
        border-radius: 20px;
      }

      .card-bottom {
        align-items: stretch;
        flex-direction: column;
      }

      .card-bottom .btn {
        width: 100%;
      }

      .coupon-card .big {
        font-size: 34px;
      }
    }
