/* roulang page: index */
:root{
            --plum:#6D214F;
            --plum-deep:#4D1838;
            --coral:#E86A5A;
            --coral-soft:#FBE2DD;
            --ink:#241F22;
            --muted:#71676D;
            --cream:#F7F1EB;
            --paper:#FFFDFC;
            --rose:#F2E5E8;
            --line:#E4D7D8;
            --green:#557563;
            --amber:#AA7339;
            --danger:#A94C43;
            --radius:16px;
            --shadow:0 10px 30px rgba(55,31,43,.07);
            --shadow-lg:0 18px 46px rgba(55,31,43,.13);
            --container:1220px;
        }
        *,*:before,*:after{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{margin:0;background:var(--cream);color:var(--ink);font-family:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;font-size:16px;line-height:1.75}
        body,button,input,select,textarea{font-family:inherit}
        img,svg{display:block;max-width:100%}
        a{color:inherit;text-decoration:none}
        button,input,select,textarea{font-size:inherit}
        button{cursor:pointer;border:0}
        :focus-visible{outline:2px solid var(--plum);outline-offset:3px}
        .container{width:min(var(--container),calc(100% - 48px));margin-inline:auto}
        .eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--plum);font-size:13px;font-weight:800;letter-spacing:.08em}
        .eyebrow:before{content:"";width:24px;height:2px;background:var(--coral)}
        .section{padding:96px 0}
        .section-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:38px}
        .section-head h2{max-width:620px;margin:8px 0 0;font-size:34px;line-height:1.3;letter-spacing:-.03em}
        .section-head p{max-width:560px;margin:0;color:var(--muted)}
        .site-header{position:sticky;top:0;z-index:20;background:rgba(247,241,235,.96);border-bottom:1px solid var(--line);transition:box-shadow .2s}
        .site-header.scrolled{box-shadow:0 8px 24px rgba(55,31,43,.08)}
        .nav-wrap{min-height:76px;display:flex;align-items:center;gap:28px}
        .brand{display:flex;align-items:center;gap:10px;min-width:230px;color:var(--plum);font-weight:900;line-height:1.15}
        .brand-mark{width:40px;height:40px;flex:none;border-radius:13px;background:var(--plum);padding:8px}
        .brand-name{font-size:17px;letter-spacing:.01em}
        .main-nav{display:flex;align-items:center;gap:6px;flex:1}
        .nav-link,.menu-trigger{position:relative;min-height:44px;padding:9px 14px;border-radius:10px;color:var(--muted);font-weight:700;background:transparent;transition:.2s}
        .nav-link:hover,.nav-link:focus-visible,.menu-trigger:hover,.menu-trigger:focus-visible{color:var(--plum);background:var(--rose)}
        .nav-link.active{color:var(--plum);background:var(--rose)}
        .nav-link.active:after{content:"";position:absolute;bottom:3px;left:14px;right:14px;height:2px;background:var(--coral)}
        .menu-box{position:relative}
        .menu-panel{position:absolute;right:0;top:52px;width:620px;padding:20px;background:var(--paper);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-lg);display:none;grid-template-columns:1fr 1fr;gap:20px}
        .menu-box.open .menu-panel{display:grid}
        .menu-panel h3{margin:0 0 10px;font-size:14px;color:var(--muted)}
        .menu-item{display:block;padding:12px;border-radius:12px;transition:.2s}
        .menu-item:hover{background:var(--rose);color:var(--plum)}
        .menu-item strong{display:block;font-size:15px}
        .menu-item small{display:block;color:var(--muted);line-height:1.5}
        .menu-note{padding:16px;border-radius:12px;background:var(--rose);font-size:14px;color:var(--plum-deep)}
        .age-badge{display:inline-flex;align-items:center;gap:7px;padding:9px 13px;border:1px solid #DDB5AF;border-radius:999px;color:var(--danger);font-size:13px;font-weight:800;white-space:nowrap}
        .mobile-toggle{display:none;width:44px;height:44px;border-radius:10px;background:var(--rose);color:var(--plum);font-size:22px}
        .hero{padding:62px 0 54px;position:relative;overflow:hidden}
        .hero:after{content:"";position:absolute;right:-150px;top:-180px;width:520px;height:520px;border:1px solid rgba(109,33,79,.12);border-radius:50%;box-shadow:0 0 0 34px rgba(109,33,79,.035),0 0 0 70px rgba(109,33,79,.025);pointer-events:none}
        .hero-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(390px,.98fr);gap:70px;align-items:center}
        .hero h1{font-size:clamp(38px,5vw,58px);line-height:1.16;letter-spacing:-.055em;margin:16px 0 20px;max-width:650px}
        .hero-copy{font-size:18px;color:var(--muted);max-width:650px;margin:0 0 28px}
        .hero-actions{display:flex;gap:12px;flex-wrap:wrap}
        .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:11px 20px;border-radius:11px;font-weight:800;transition:transform .2s,box-shadow .2s,background .2s}
        .btn-primary{background:var(--coral);color:#fff;box-shadow:0 8px 18px rgba(232,106,90,.2)}
        .btn-primary:hover{background:#D8584C;transform:translateY(-2px);box-shadow:0 12px 22px rgba(232,106,90,.28)}
        .btn-outline{border:1px solid var(--plum);color:var(--plum);background:transparent}
        .btn-outline:hover{background:var(--plum);color:#fff;transform:translateY(-2px)}
        .hero-meta{display:flex;gap:22px;flex-wrap:wrap;margin-top:28px;color:var(--muted);font-size:13px}
        .hero-meta b{display:block;color:var(--plum);font-size:22px;line-height:1.2}
        .cover-panel{position:relative;min-height:390px;padding:28px;background:var(--plum);border-radius:24px;overflow:hidden;color:#fff;box-shadow:var(--shadow-lg);transform:rotate(1.5deg)}
        .cover-panel:before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.2);border-radius:16px}
        .cover-top,.cover-bottom{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center}
        .cover-index{font-size:12px;letter-spacing:.14em;color:#EECAD8}
        .cover-age{padding:5px 9px;border:1px solid rgba(255,255,255,.35);border-radius:999px;font-size:12px}
        .cover-title{position:relative;z-index:1;margin-top:72px;max-width:370px;font-size:36px;line-height:1.25;letter-spacing:-.04em}
        .wave{position:absolute;left:28px;right:28px;bottom:105px;height:70px;opacity:.75}
        .wave path{fill:none;stroke:var(--coral);stroke-width:2}
        .cover-bottom{position:absolute;left:28px;right:28px;bottom:28px;color:#EECAD8;font-size:13px}
        .ticks{display:flex;gap:8px;align-items:end}
        .ticks i{display:block;width:3px;background:#EECAD8;border-radius:4px}
        .ticks i:nth-child(1){height:12px}.ticks i:nth-child(2){height:24px}.ticks i:nth-child(3){height:38px}.ticks i:nth-child(4){height:18px}.ticks i:nth-child(5){height:30px}.ticks i:nth-child(6){height:14px}
        .dashboard{background:var(--paper);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:24px}
        .metrics{display:grid;grid-template-columns:repeat(4,1fr)}
        .metric{padding:4px 24px;border-right:1px solid var(--line)}
        .metric:first-child{padding-left:8px}.metric:last-child{border-right:0}
        .metric-value{font-size:31px;color:var(--plum);font-weight:900;line-height:1.1}
        .metric-value.coral{color:var(--coral)}
        .metric-label{margin-top:8px;font-weight:800}
        .metric-desc{font-size:13px;color:var(--muted);line-height:1.5;margin-top:2px}
        .mini-line{height:4px;background:var(--rose);margin-top:12px;position:relative;overflow:hidden}
        .mini-line:after{content:"";position:absolute;left:0;top:0;bottom:0;width:68%;background:var(--plum)}
        .matrix{display:grid;grid-template-columns:1.25fr .85fr .85fr;grid-template-rows:auto auto;gap:18px}
        .matrix-card{position:relative;min-height:190px;padding:24px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);transition:.2s;overflow:hidden}
        .matrix-card:hover{transform:translateY(-3px);border-color:rgba(109,33,79,.45);box-shadow:var(--shadow-lg)}
        .matrix-card.primary{grid-row:span 2;background:var(--rose);min-height:398px}
        .matrix-card.wide{grid-column:span 2}
        .matrix-num{font-size:54px;line-height:1;color:rgba(109,33,79,.18);font-weight:900;float:right}
        .tag{display:inline-flex;padding:4px 9px;border-radius:999px;background:var(--rose);color:var(--plum);font-size:12px;font-weight:800}
        .tag.coral{background:var(--coral-soft);color:#A33E35}
        .tag.neutral{background:#F0EBE7;color:var(--muted)}
        .matrix-card h3{clear:both;margin:28px 0 8px;font-size:22px;line-height:1.35}
        .matrix-card p{color:var(--muted);font-size:14px;line-height:1.65;margin:0 0 18px}
        .text-link{color:var(--plum);font-weight:800;font-size:14px}
        .text-link:hover{text-decoration:underline;text-underline-offset:4px}
        .compare-wrap{display:grid;grid-template-columns:1fr 54px 1fr;gap:22px;align-items:stretch}
        .compare-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:25px}
        .compare-card.accent{background:var(--plum);color:#fff}
        .compare-card.accent .compare-note,.compare-card.accent .compare-row span{color:#EECAD8}
        .compare-card h3{margin:0 0 6px;font-size:23px}
        .compare-note{color:var(--muted);font-size:14px;margin-bottom:20px}
        .compare-row{display:flex;justify-content:space-between;gap:18px;padding:13px 0;border-top:1px solid var(--line);font-size:14px}
        .compare-card.accent .compare-row{border-color:rgba(255,255,255,.18)}
        .compare-row span{color:var(--muted)}.compare-row b{font-weight:800;text-align:right}
        .compare-rail{display:flex;align-items:center;justify-content:center;position:relative}
        .compare-rail:before{content:"";height:100%;border-left:1px dashed var(--coral)}
        .compare-rail span{position:absolute;padding:8px;background:var(--cream);color:var(--coral);font-weight:900;font-size:13px}
        .compare-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
        .faq-list{max-width:860px;margin:0 auto}
        .faq-item{border-bottom:1px solid var(--line)}
        .faq-button{display:grid;grid-template-columns:48px 1fr 32px;align-items:center;width:100%;min-height:70px;text-align:left;background:transparent;color:var(--ink);font-weight:800;padding:12px 0}
        .faq-no{color:var(--coral);font-variant-numeric:tabular-nums}
        .faq-icon{width:28px;height:28px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;color:var(--plum);font-size:20px;transition:.2s}
        .faq-button[aria-expanded="true"] .faq-icon{background:var(--plum);color:#fff;transform:rotate(45deg)}
        .faq-answer{display:none;margin:0 48px 20px;padding:18px 20px;border-left:3px solid var(--plum);background:var(--paper);color:var(--muted);border-radius:0 10px 10px 0}
        .faq-answer.open{display:block}
        .form-section{background:var(--rose)}
        .form-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}
        .form-copy h2{font-size:36px;line-height:1.3;margin:10px 0 16px}
        .form-copy p{color:var(--muted);margin:0 0 20px}
        .notice{padding:15px 17px;border:1px solid #DABCC2;background:rgba(255,253,252,.65);border-radius:12px;color:var(--plum-deep);font-size:14px}
        .form-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:28px;box-shadow:var(--shadow)}
        .field{margin-bottom:17px}.field label{display:block;margin-bottom:7px;font-weight:800;font-size:14px}
        .field input,.field select,.field textarea{width:100%;border:1px solid var(--line);background:#fff;border-radius:10px;padding:12px 14px;color:var(--ink);transition:.2s}
        .field textarea{min-height:100px;resize:vertical}.field input::placeholder,.field textarea::placeholder{color:#A79B9B}
        .field input:hover,.field select:hover,.field textarea:hover{border-color:#C49BAB}
        .field input:focus,.field select:focus,.field textarea:focus{border-color:var(--plum);box-shadow:0 0 0 3px rgba(109,33,79,.1);outline:0}
        .check{display:flex;gap:10px;align-items:flex-start;color:var(--muted);font-size:13px;line-height:1.55;margin:18px 0}
        .check input{width:18px;height:18px;accent-color:var(--plum);margin-top:3px}
        .form-status{min-height:25px;margin-top:12px;color:var(--green);font-size:14px}
        .footer{background:var(--ink);color:#F7EDEB;padding:54px 0 24px;position:relative}
        .footer:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--coral)}
        .footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:38px;padding-bottom:42px}
        .footer .brand{color:#fff;margin-bottom:14px}.footer .brand-mark{background:var(--coral)}
        .footer p{color:#BDAEB2;font-size:14px;max-width:330px}
        .footer h3{font-size:14px;color:#E7C5D2;margin:0 0 12px}
        .footer a{display:block;color:#CBBEC1;font-size:14px;margin:7px 0;transition:.2s}
        .footer a:hover{color:#fff;transform:translateX(2px)}
        .footer-bottom{border-top:1px solid rgba(255,255,255,.14);padding-top:18px;color:#AFA1A5;font-size:13px;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}
        .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
        @media(max-width:991px){
            .nav-wrap{position:relative}.mobile-toggle{display:block;margin-left:auto}.main-nav{display:none;position:absolute;left:0;right:0;top:76px;padding:12px;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-lg);border-radius:0 0 16px 16px;flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.nav-link,.menu-trigger{text-align:left;width:100%}.menu-box{order:3}.menu-panel{position:static;width:auto;margin-top:5px;box-shadow:none;grid-template-columns:1fr}.age-badge{display:none}.hero-grid{grid-template-columns:1fr;gap:42px}.cover-panel{max-width:650px;width:100%;margin:auto}.matrix{grid-template-columns:1fr 1fr}.matrix-card.primary{grid-row:auto;grid-column:span 2;min-height:280px}.matrix-card.wide{grid-column:span 2}.form-grid{grid-template-columns:1fr;gap:35px}.footer-grid{grid-template-columns:1.4fr 1fr 1fr}
        }
        @media(max-width:767px){
            .container{width:min(100% - 32px,var(--container))}.section{padding:68px 0}.section-head{display:block;margin-bottom:26px}.section-head h2{font-size:29px}.section-head p{margin-top:12px}.hero{padding:42px 0 35px}.hero h1{font-size:38px}.hero-copy{font-size:16px}.cover-panel{min-height:330px;padding:22px}.cover-title{margin-top:55px;font-size:30px}.metrics{grid-template-columns:1fr 1fr;gap:20px}.metric{padding:4px 12px;border-right:0;border-bottom:1px solid var(--line);padding-bottom:16px}.metric:nth-child(odd){padding-left:0}.metric:nth-child(even){padding-right:0}.metric:nth-last-child(-n+2){border-bottom:0;padding-bottom:4px}.dashboard{padding:20px 16px}.matrix{display:block}.matrix-card,.matrix-card.primary,.matrix-card.wide{min-height:0;margin-bottom:14px}.compare-wrap{display:block}.compare-rail{height:40px}.compare-rail:before{height:100%}.faq-button{grid-template-columns:38px 1fr 30px;font-size:15px}.faq-answer{margin-left:38px}.form-copy h2{font-size:30px}.footer-grid{grid-template-columns:1fr 1fr;gap:28px}.footer-grid>div:first-child{grid-column:span 2}
        }
        @media(max-width:479px){
            .brand{min-width:0;max-width:220px}.brand-name{font-size:14px}.brand-mark{width:36px;height:36px}.hero-actions .btn{width:100%}.hero h1{font-size:34px}.cover-title{font-size:27px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}
        }
        @media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

/* roulang page: category1 */
:root{
 --plum:#6D214F;--plum-deep:#4D1838;--coral:#E86A5A;--coral-soft:#FBE2DD;
 --ink:#241F22;--muted:#71676D;--cream:#F7F1EB;--paper:#FFFDFC;--rose:#F2E5E8;
 --line:#E4D7D8;--green:#557563;--amber:#AA7339;--danger:#A94C43;
 --radius:16px;--shadow:0 10px 30px rgba(55,31,43,.07);--shadow-lg:0 18px 46px rgba(55,31,43,.13);
 --container:1220px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;font-size:16px;line-height:1.75}
body,button,input,select,textarea{font-family:inherit}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font-size:inherit}
button{cursor:pointer;border:0}
:focus-visible{outline:2px solid var(--plum);outline-offset:3px}
.container{width:min(var(--container),calc(100% - 48px));margin-inline:auto}
.site-header{position:sticky;top:0;z-index:20;background:rgba(247,241,235,.97);border-bottom:1px solid var(--line);transition:box-shadow .2s}
.site-header.scrolled{box-shadow:0 8px 24px rgba(55,31,43,.08)}
.nav-wrap{min-height:76px;display:flex;align-items:center;gap:28px}
.brand{display:flex;align-items:center;gap:10px;min-width:230px;color:var(--plum);font-weight:900;line-height:1.15}
.brand-mark{width:40px;height:40px;flex:none;border-radius:13px;background:var(--plum);padding:8px}
.brand-name{font-size:17px;letter-spacing:.01em}
.main-nav{display:flex;align-items:center;gap:6px;flex:1}
.nav-link,.menu-trigger{position:relative;min-height:44px;padding:9px 14px;border-radius:10px;color:var(--muted);font-weight:700;background:transparent;transition:.2s}
.nav-link:hover,.nav-link:focus-visible,.menu-trigger:hover,.menu-trigger:focus-visible{color:var(--plum);background:var(--rose)}
.nav-link.active{color:var(--plum);background:var(--rose)}
.nav-link.active:after{content:"";position:absolute;bottom:3px;left:14px;right:14px;height:2px;background:var(--coral)}
.menu-box{position:relative}
.menu-panel{position:absolute;right:0;top:52px;width:620px;padding:20px;background:var(--paper);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-lg);display:none;grid-template-columns:1fr 1fr;gap:20px}
.menu-box.open .menu-panel{display:grid}
.menu-panel h3{margin:0 0 10px;font-size:14px;color:var(--muted)}
.menu-item{display:block;padding:12px;border-radius:12px;transition:.2s}
.menu-item:hover{background:var(--rose);color:var(--plum)}
.menu-item strong{display:block;font-size:15px}
.menu-item small{display:block;color:var(--muted);line-height:1.5}
.menu-note{padding:16px;border-radius:12px;background:var(--rose);font-size:14px;color:var(--plum-deep)}
.age-badge{display:inline-flex;align-items:center;gap:7px;padding:9px 13px;border:1px solid #DDB5AF;border-radius:999px;color:var(--danger);font-size:13px;font-weight:800;white-space:nowrap}
.mobile-toggle{display:none;width:44px;height:44px;border-radius:10px;background:var(--rose);color:var(--plum);font-size:22px}
.hero{padding:70px 0 60px;position:relative;overflow:hidden}
.hero:after{content:"";position:absolute;right:-160px;top:-200px;width:560px;height:560px;border:1px solid rgba(109,33,79,.12);border-radius:50%;box-shadow:0 0 0 34px rgba(109,33,79,.035),0 0 0 70px rgba(109,33,79,.025);pointer-events:none}
.breadcrumb{display:flex;gap:9px;align-items:center;color:var(--muted);font-size:14px;margin-bottom:25px}
.breadcrumb a:hover{color:var(--plum);text-decoration:underline;text-underline-offset:4px}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(310px,.9fr);gap:70px;align-items:center}
.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--plum);font-size:13px;font-weight:800;letter-spacing:.08em}
.eyebrow:before{content:"";width:24px;height:2px;background:var(--coral)}
h1{font-size:clamp(38px,5vw,58px);line-height:1.16;letter-spacing:-.055em;margin:16px 0 20px;max-width:700px}
.hero-copy{font-size:18px;color:var(--muted);max-width:690px;margin:0 0 25px}
.tags,.hero-actions{display:flex;gap:10px;flex-wrap:wrap}
.tag{display:inline-flex;padding:4px 10px;border-radius:999px;background:var(--rose);color:var(--plum);font-size:12px;font-weight:800}
.tag.coral{background:var(--coral-soft);color:#A33E35}
.tag.neutral{background:#F0EBE7;color:var(--muted)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:11px 20px;border-radius:11px;font-weight:800;transition:transform .2s,box-shadow .2s,background .2s}
.btn-primary{background:var(--coral);color:#fff;box-shadow:0 8px 18px rgba(232,106,90,.2)}
.btn-primary:hover{background:#D8584C;transform:translateY(-2px);box-shadow:0 12px 22px rgba(232,106,90,.28)}
.btn-outline{border:1px solid var(--plum);color:var(--plum);background:transparent}
.btn-outline:hover{background:var(--plum);color:#fff;transform:translateY(-2px)}
.cover-panel{position:relative;min-height:340px;padding:30px;border-radius:22px;background:var(--plum);color:#fff;overflow:hidden;box-shadow:var(--shadow-lg)}
.cover-panel:before,.cover-panel:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.22);border-radius:50%;width:310px;height:310px;right:-100px;top:15px}
.cover-panel:after{width:210px;height:210px;right:-45px;top:65px}
.cover-number{font-size:92px;line-height:1;font-weight:900;color:#E8B8CD;opacity:.8}
.cover-panel h2{position:relative;z-index:1;font-size:32px;line-height:1.3;max-width:300px;margin:50px 0 16px}
.cover-panel p{position:relative;z-index:1;color:#F0DCE5;font-size:14px;max-width:300px}
.wave{position:absolute;right:28px;bottom:35px;width:145px;height:55px;opacity:.8}
.section{padding:88px 0}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:34px}
.section-head h2{max-width:650px;margin:8px 0 0;font-size:34px;line-height:1.3;letter-spacing:-.03em}
.section-head p{max-width:550px;margin:0;color:var(--muted)}
.catalog-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:38px;align-items:start}
.filter-panel{position:sticky;top:105px;padding:23px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.filter-panel h2{font-size:18px;margin:0 0 17px}
.filter-group{padding:17px 0;border-top:1px solid var(--line)}
.filter-group:first-of-type{border-top:0;padding-top:0}
.filter-group h3{font-size:14px;margin:0 0 9px;color:var(--plum)}
.filter-group p{font-size:14px;color:var(--muted);margin:0}
.status-line{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--green);font-weight:800}
.status-dot{width:8px;height:8px;background:var(--green);border-radius:50%;box-shadow:0 0 0 4px #E1EDE6}
.entry-list{display:grid;gap:15px}
.entry{display:grid;grid-template-columns:116px 1fr 32px;gap:20px;align-items:center;padding:17px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);transition:.2s}
.entry:hover{transform:translateY(-3px);border-color:rgba(109,33,79,.45);box-shadow:var(--shadow-lg)}
.entry.featured{grid-template-columns:180px 1fr 38px;padding:20px;background:var(--rose)}
.entry-art{aspect-ratio:1/1;border-radius:12px;background:linear-gradient(135deg,var(--plum),#9B557A);position:relative;overflow:hidden;display:flex;align-items:end;padding:13px;color:#fff;font-size:12px;font-weight:800}
.entry-art:after{content:"";position:absolute;inset:18% -20% auto auto;width:120px;height:120px;border:1px solid rgba(255,255,255,.45);border-radius:50%;box-shadow:0 0 0 18px rgba(255,255,255,.08)}
.entry-art.coral{background:linear-gradient(135deg,#A84E55,var(--coral))}
.entry-art.soft{background:linear-gradient(135deg,#B47B91,#E7B6B7);color:var(--plum-deep)}
.entry-copy h3{margin:4px 0 6px;font-size:21px;line-height:1.4}
.entry:not(.featured) .entry-copy h3{font-size:18px}
.entry-copy p{margin:0 0 9px;color:var(--muted);font-size:14px;line-height:1.65}
.entry-meta{display:flex;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:12px}
.entry-arrow{width:32px;height:32px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;color:var(--plum);font-size:19px;transition:.2s}
.entry:hover .entry-arrow{background:var(--plum);color:#fff}
.notice{margin-top:22px;padding:16px 18px;border-left:3px solid var(--amber);background:#FBF0DF;color:#73502B;border-radius:0 12px 12px 0;font-size:14px}
.faq-wrap{max-width:860px;margin:auto}
.faq-item{border:1px solid var(--line);border-radius:13px;background:var(--paper);margin-bottom:10px;overflow:hidden}
.faq-question{width:100%;display:grid;grid-template-columns:46px 1fr 28px;text-align:left;align-items:center;padding:18px 20px;background:transparent;color:var(--ink);font-weight:800}
.faq-num{color:var(--coral);font-variant-numeric:tabular-nums}
.faq-icon{font-size:24px;color:var(--plum);transition:.2s}
.faq-answer{display:none;padding:0 60px 20px 66px;color:var(--muted);font-size:15px}
.faq-item.open{border-left:3px solid var(--plum)}
.faq-item.open .faq-answer{display:block}
.faq-item.open .faq-icon{transform:rotate(45deg)}
.cta{padding:55px 0;background:var(--rose)}
.cta-box{display:flex;justify-content:space-between;align-items:center;gap:30px}
.cta h2{font-size:30px;line-height:1.3;margin:0 0 8px}
.cta p{margin:0;color:var(--muted);max-width:680px}
.footer{background:#241F22;color:#F7F1EB;padding:58px 0 20px;position:relative}
.footer:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--coral)}
.footer-grid{display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr;gap:35px}
.footer .brand{color:#fff}
.footer-grid p{color:#C8BFC2;max-width:330px;font-size:14px}
.footer h3{font-size:14px;margin:5px 0 13px;color:#EECAD8}
.footer-grid>div:not(:first-child) a{display:block;color:#C8BFC2;font-size:14px;margin:7px 0}
.footer-grid a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.footer .age-badge{margin-top:12px;color:#F2B5A9;border-color:#84544E}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #51484B;margin-top:38px;padding-top:18px;color:#AAA0A4;font-size:12px}
@media(max-width:991px){
 .nav-wrap{justify-content:space-between}.mobile-toggle{display:block}.main-nav{display:none;position:absolute;top:76px;left:0;right:0;padding:15px 24px;background:var(--cream);border-bottom:1px solid var(--line);box-shadow:var(--shadow-lg);flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.nav-link,.menu-trigger{text-align:left}.menu-panel{position:static;width:auto;margin-top:7px;grid-template-columns:1fr}.nav-wrap>.age-badge{display:none}.hero-grid{grid-template-columns:1fr;gap:35px}.catalog-layout{grid-template-columns:1fr}.filter-panel{position:static}.footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
 .container{width:min(var(--container),calc(100% - 32px))}.brand{min-width:0}.brand-name{font-size:14px}.hero{padding:46px 0 40px}h1{font-size:38px}.hero-copy{font-size:16px}.cover-panel{min-height:300px}.section{padding:62px 0}.section-head,.cta-box{display:block}.section-head p{margin-top:12px}.entry,.entry.featured{grid-template-columns:76px 1fr 28px;gap:13px;padding:13px}.entry.featured{background:var(--paper)}.entry-copy h3,.entry:not(.featured) .entry-copy h3{font-size:16px}.entry-copy p{font-size:13px}.entry-art{padding:8px;font-size:10px}.footer-grid{grid-template-columns:1fr 1fr;gap:24px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:6px}.faq-question{grid-template-columns:36px 1fr 24px;padding:15px}.faq-answer{padding:0 20px 18px 51px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* roulang page: category2 */
:root{
 --plum:#6D214F;
 --plum-deep:#4D1838;
 --coral:#E86A5A;
 --coral-soft:#FBE2DD;
 --ink:#241F22;
 --muted:#71676D;
 --cream:#F7F1EB;
 --paper:#FFFDFC;
 --rose:#F2E5E8;
 --line:#E4D7D8;
 --green:#557563;
 --amber:#AA7339;
 --danger:#A94C43;
 --radius:16px;
 --radius-sm:11px;
 --shadow:0 10px 30px rgba(55,31,43,.07);
 --shadow-lg:0 18px 46px rgba(55,31,43,.13);
 --container:1220px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;font-size:16px;line-height:1.75;overflow-wrap:anywhere}
body,button,input,select,textarea{font-family:inherit}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font-size:inherit}
button{cursor:pointer;border:0}
button:disabled{cursor:not-allowed;opacity:.55}
:focus-visible{outline:2px solid var(--plum);outline-offset:3px}
::selection{background:var(--coral-soft);color:var(--plum-deep)}
.container{width:min(var(--container),calc(100% - 48px));margin-inline:auto}
.skip-link{position:fixed;left:18px;top:-80px;z-index:100;padding:10px 16px;border-radius:10px;background:var(--plum);color:#fff;font-weight:800}
.skip-link:focus{top:16px}
.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--plum);font-size:13px;font-weight:800;letter-spacing:.08em}
.eyebrow:before{content:"";width:24px;height:2px;background:var(--coral)}
.tag-row{display:flex;flex-wrap:wrap;gap:8px}
.tag{display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border-radius:999px;background:var(--rose);color:var(--plum);font-size:12px;font-weight:800}
.tag.coral{background:var(--coral-soft);color:#963E36}
.tag.neutral{background:#F0EBE7;color:var(--muted)}
.tag.safe{background:#E7EFEA;color:var(--green)}
.section{padding:92px 0}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:38px}
.section-head h2{max-width:650px;margin:8px 0 0;font-size:clamp(29px,3.2vw,36px);line-height:1.3;letter-spacing:-.035em}
.section-head p{max-width:570px;margin:0;color:var(--muted)}
.site-header{position:sticky;top:0;z-index:30;background:rgba(247,241,235,.96);border-bottom:1px solid var(--line);transition:box-shadow .2s}
.site-header.scrolled{box-shadow:0 8px 24px rgba(55,31,43,.08)}
.nav-wrap{min-height:76px;display:flex;align-items:center;gap:28px}
.brand{display:flex;align-items:center;gap:10px;min-width:230px;color:var(--plum);font-weight:900;line-height:1.15}
.brand-mark{width:40px;height:40px;flex:none;border-radius:13px;background:var(--plum);padding:8px}
.brand-name{font-size:17px;letter-spacing:.01em}
.main-nav{display:flex;align-items:center;gap:6px;flex:1}
.nav-link,.menu-trigger{position:relative;display:inline-flex;align-items:center;min-height:44px;padding:9px 14px;border-radius:10px;color:var(--muted);font-weight:700;background:transparent;transition:color .2s,background .2s}
.nav-link:hover,.nav-link:focus-visible,.menu-trigger:hover,.menu-trigger:focus-visible{color:var(--plum);background:var(--rose)}
.nav-link:active,.menu-trigger:active{background:#EAD9DE}
.nav-link.active{color:var(--plum);background:var(--rose)}
.nav-link.active:after{content:"";position:absolute;bottom:3px;left:14px;right:14px;height:2px;background:var(--coral)}
.menu-box{position:relative}
.menu-panel{position:absolute;right:0;top:52px;width:620px;padding:20px;background:var(--paper);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-lg);display:none;grid-template-columns:1fr 1fr;gap:20px}
.menu-box.open .menu-panel{display:grid}
.menu-panel h3{margin:0 0 10px;font-size:14px;color:var(--muted)}
.menu-item{display:block;padding:12px;border-radius:12px;transition:background .2s,color .2s}
.menu-item:hover,.menu-item:focus-visible{background:var(--rose);color:var(--plum)}
.menu-item strong{display:block;font-size:15px}
.menu-item small{display:block;color:var(--muted);line-height:1.5}
.menu-note{padding:16px;border-radius:12px;background:var(--rose);font-size:14px;color:var(--plum-deep)}
.menu-note p{margin:7px 0 0}
.age-badge{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:9px 13px;border:1px solid #DDB5AF;border-radius:999px;color:var(--danger);font-size:13px;font-weight:800;white-space:nowrap}
.header-age{margin-left:auto}
.mobile-toggle{display:none;width:44px;height:44px;border-radius:10px;background:var(--rose);color:var(--plum);font-size:0}
.mobile-toggle span,.mobile-toggle:before,.mobile-toggle:after{content:"";display:block;width:20px;height:2px;margin:5px auto;background:currentColor;transition:.2s}
.mobile-toggle.open span{opacity:0}
.mobile-toggle.open:before{transform:translateY(7px) rotate(45deg)}
.mobile-toggle.open:after{transform:translateY(-7px) rotate(-45deg)}
.breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:24px 0 0;color:var(--muted);font-size:13px}
.breadcrumb a:hover{color:var(--plum);text-decoration:underline;text-underline-offset:4px}
.breadcrumb i{font-style:normal;color:#AA9EA3}
.hero{position:relative;padding:52px 0 68px;overflow:hidden}
.hero:before{content:"";position:absolute;inset:45px 0 auto;height:180px;opacity:.38;background:repeating-linear-gradient(90deg,transparent 0 38px,rgba(109,33,79,.08) 39px 40px);pointer-events:none}
.hero:after{content:"";position:absolute;right:-150px;top:-190px;width:520px;height:520px;border:1px solid rgba(109,33,79,.12);border-radius:50%;box-shadow:0 0 0 34px rgba(109,33,79,.035),0 0 0 70px rgba(109,33,79,.025);pointer-events:none}
.hero-layout{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:54px;align-items:end}
.hero-copy{padding:34px 0 12px}
.hero h1{max-width:820px;margin:16px 0 20px;font-size:clamp(38px,5vw,56px);line-height:1.16;letter-spacing:-.055em}
.hero-lead{max-width:760px;margin:0;color:var(--muted);font-size:18px}
.hero-tags{margin-top:26px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:11px 20px;border:1px solid transparent;border-radius:var(--radius-sm);font-weight:800;transition:transform .2s,box-shadow .2s,background .2s,color .2s,border-color .2s}
.btn-primary{background:var(--coral);color:#fff;box-shadow:0 8px 18px rgba(232,106,90,.2)}
.btn-primary:hover{background:#D8584C;transform:translateY(-2px);box-shadow:0 12px 22px rgba(232,106,90,.28)}
.btn-outline{border-color:var(--plum);color:var(--plum);background:transparent}
.btn-outline:hover{background:var(--plum);color:#fff;transform:translateY(-2px)}
.btn-soft{background:var(--rose);color:var(--plum)}
.btn-soft:hover{background:#E9D6DC;transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.chapter-cover{position:relative;min-height:360px;padding:28px;border:1px solid rgba(109,33,79,.18);border-radius:22px;background:var(--rose);box-shadow:var(--shadow-lg);overflow:hidden}
.chapter-cover:before{content:"";position:absolute;inset:0;background:linear-gradient(145deg,rgba(255,255,255,.55),transparent 44%);pointer-events:none}
.cover-number{position:relative;font-size:104px;line-height:1;font-weight:900;color:rgba(109,33,79,.13);font-variant-numeric:tabular-nums}
.cover-label{position:absolute;left:28px;bottom:27px;right:100px}
.cover-label strong{display:block;color:var(--plum);font-size:24px}
.cover-label span{color:var(--muted);font-size:13px}
.wave-column{position:absolute;right:28px;top:30px;bottom:30px;width:54px;display:flex;flex-direction:column;justify-content:space-around;align-items:center}
.wave-column i{display:block;height:2px;border-radius:2px;background:var(--coral)}
.wave-column i:nth-child(3n+1){width:24px}
.wave-column i:nth-child(3n+2){width:46px}
.wave-column i:nth-child(3n){width:34px}
.cover-age{position:absolute;right:24px;bottom:22px;display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:var(--plum);color:#fff;font-weight:900}
.quick-index{position:relative;z-index:2;margin-top:-20px}
.index-shell{display:flex;align-items:center;gap:12px;padding:15px;background:var(--paper);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}
.index-title{padding:0 14px;color:var(--muted);font-size:13px;font-weight:800;white-space:nowrap}
.index-links{display:flex;flex:1;gap:8px}
.index-links a{flex:1;display:flex;align-items:center;justify-content:center;min-height:46px;padding:9px 13px;border-radius:10px;background:#F4EEEA;color:var(--plum);font-size:14px;font-weight:800;transition:.2s}
.index-links a:hover,.index-links a:focus-visible{background:var(--rose);transform:translateY(-2px)}
.timeline-section{padding:100px 0 88px}
.timeline{position:relative}
.timeline:before{content:"";position:absolute;left:32px;top:8px;bottom:0;width:1px;background:var(--line)}
.timeline-chapter{position:relative;display:grid;grid-template-columns:66px 1fr;gap:30px;margin-bottom:86px;scroll-margin-top:110px}
.timeline-chapter:last-child{margin-bottom:0}
.timeline-marker{position:sticky;top:105px;align-self:start;z-index:2;display:grid;place-items:center;width:66px;height:66px;border-radius:16px;background:var(--plum);color:#fff;font-size:18px;font-weight:900;box-shadow:0 9px 22px rgba(109,33,79,.2)}
.chapter-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:24px}
.chapter-head h2{margin:6px 0 0;font-size:clamp(27px,3vw,34px);line-height:1.28}
.chapter-head p{max-width:500px;margin:0;color:var(--muted)}
.collage{display:grid;grid-template-columns:1.22fr .78fr;grid-template-rows:auto auto;gap:18px}
.content-card{position:relative;display:flex;flex-direction:column;min-height:220px;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow);overflow:hidden;transition:transform .2s,border-color .2s,box-shadow .2s}
.content-card:hover{transform:translateY(-3px);border-color:rgba(109,33,79,.45);box-shadow:var(--shadow-lg)}
.content-card.feature{grid-row:span 2;min-height:482px;background:var(--rose)}
.content-card.horizontal{min-height:232px}
.content-card.dark{background:var(--plum-deep);color:#fff;border-color:transparent}
.content-card.dark p,.content-card.dark .card-meta{color:#E5CBD7}
.content-card.coral-card{background:var(--coral-soft)}
.card-visual{position:relative;min-height:178px;margin:-8px -8px 22px;border-radius:13px;background:#E7D6DC;overflow:hidden}
.feature .card-visual{min-height:245px}
.card-visual:before,.card-visual:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(109,33,79,.22)}
.card-visual:before{width:240px;height:240px;right:-70px;top:-70px;box-shadow:0 0 0 28px rgba(109,33,79,.04),0 0 0 58px rgba(109,33,79,.03)}
.card-visual:after{width:90px;height:90px;left:25px;bottom:-35px;background:rgba(232,106,90,.23);border-color:rgba(232,106,90,.36)}
.visual-lines{position:absolute;left:28px;right:28px;top:50%;display:flex;align-items:center;gap:7px}
.visual-lines i{flex:1;height:2px;background:var(--plum);opacity:.65}
.visual-lines i:nth-child(2n){transform:translateY(-12px)}
.visual-lines i:nth-child(3n){transform:translateY(9px);background:var(--coral)}
.card-number{position:absolute;right:20px;bottom:8px;color:rgba(109,33,79,.2);font-size:70px;line-height:1;font-weight:900}
.content-card h3{margin:18px 0 8px;font-size:22px;line-height:1.4}
.content-card p{margin:0 0 20px;color:var(--muted);font-size:15px}
.card-meta{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:auto;padding-top:15px;border-top:1px solid rgba(113,103,109,.18);color:var(--muted);font-size:13px}
.card-link{color:var(--plum);font-weight:800}
.card-link:hover{text-decoration:underline;text-underline-offset:4px}
.dark .card-link{color:#FFD5CD}
.compact-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:18px}
.text-card{min-height:195px}
.notice-list{display:grid;gap:12px;margin:20px 0 0;padding:0;list-style:none}
.notice-list li{display:flex;gap:11px;align-items:flex-start}
.notice-list i{display:grid;place-items:center;width:24px;height:24px;flex:none;border-radius:50%;background:var(--rose);color:var(--plum);font-style:normal;font-size:12px;font-weight:900}
.dark .notice-list i{background:rgba(255,255,255,.12);color:#fff}
.compare-section{padding:86px 0;background:var(--rose)}
.compare-shell{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:54px;align-items:start}
.compare-intro h2{margin:10px 0 16px;font-size:clamp(29px,3.2vw,36px);line-height:1.3}
.compare-intro p{margin:0 0 24px;color:var(--muted)}
.compare-panel{padding:28px;border:1px solid var(--line);border-radius:18px;background:var(--paper);box-shadow:var(--shadow)}
.compare-row{display:grid;grid-template-columns:120px 1fr 1fr;gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}
.compare-row:first-child{padding-top:0}
.compare-row:last-child{padding-bottom:0;border-bottom:0}
.compare-label{color:var(--muted);font-size:13px;font-weight:800}
.compare-value{padding-left:15px;border-left:3px solid var(--line);font-size:14px}
.compare-value.current{border-color:var(--coral)}
.compare-value strong{display:block;margin-bottom:3px;color:var(--plum)}
.faq-section{padding:92px 0}
.faq-wrap{max-width:900px;margin:0 auto}
.faq-list{display:grid;gap:12px;margin-top:34px}
.faq-item{border:1px solid var(--line);border-radius:14px;background:var(--paper);overflow:hidden;transition:border-color .2s,box-shadow .2s}
.faq-item.open{border-color:rgba(109,33,79,.42);box-shadow:var(--shadow)}
.faq-question{display:grid;grid-template-columns:46px 1fr 28px;align-items:center;gap:14px;width:100%;min-height:72px;padding:14px 20px;background:transparent;color:var(--ink);text-align:left;font-weight:800}
.faq-question:hover{color:var(--plum);background:#FFFAF7}
.faq-no{color:var(--coral);font-variant-numeric:tabular-nums}
.faq-icon{position:relative;width:20px;height:20px}
.faq-icon:before,.faq-icon:after{content:"";position:absolute;left:3px;right:3px;top:9px;height:2px;background:var(--plum);transition:transform .2s}
.faq-icon:after{transform:rotate(90deg)}
.faq-item.open .faq-icon:after{transform:rotate(0)}
.faq-answer{display:none;padding:0 20px 20px 80px;border-left:4px solid var(--plum);color:var(--muted)}
.faq-item.open .faq-answer{display:block}
.faq-answer p{margin:0}
.preference{padding:0 0 96px;scroll-margin-top:110px}
.preference-shell{position:relative;display:grid;grid-template-columns:1fr auto;gap:34px;align-items:center;padding:42px;border-radius:20px;background:var(--plum);color:#fff;overflow:hidden}
.preference-shell:after{content:"";position:absolute;right:22%;top:-100px;width:250px;height:250px;border:1px solid rgba(255,255,255,.12);border-radius:50%;box-shadow:0 0 0 32px rgba(255,255,255,.03)}
.preference-copy{position:relative;z-index:1}
.preference-copy h2{margin:7px 0 10px;font-size:clamp(28px,3.2vw,36px);line-height:1.3}
.preference-copy p{max-width:700px;margin:0;color:#E9CDD9}
.preference-actions{position:relative;z-index:1;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}
.preference .btn-outline{border-color:#EBC4D4;color:#fff}
.preference .btn-outline:hover{background:#fff;color:var(--plum)}
.footer{position:relative;padding:68px 0 24px;background:#241F22;color:#E8DFE2}
.footer:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:repeating-linear-gradient(90deg,var(--coral) 0 24px,transparent 24px 35px,var(--coral) 35px 43px,transparent 43px 58px)}
.footer .brand{color:#fff;margin-bottom:18px}
.footer-grid{display:grid;grid-template-columns:1.65fr .75fr .75fr .75fr;gap:44px}
.footer-grid p{max-width:420px;margin:0;color:#BFB4B8;font-size:14px}
.footer-grid h3{margin:2px 0 14px;color:#fff;font-size:15px}
.footer-grid>div>a:not(.brand),.footer-grid>div>span{display:block;width:max-content;max-width:100%;margin:8px 0;color:#BFB4B8;font-size:14px}
.footer-grid>div>a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.footer .age-badge{margin-top:15px!important;color:#FFB5AA;border-color:#794C4C}
.footer-bottom{display:flex;justify-content:space-between;gap:24px;margin-top:46px;padding-top:20px;border-top:1px solid #40383C;color:#958A8F;font-size:12px}
@media (max-width:1100px){
 .nav-wrap{gap:16px}
 .brand{min-width:205px}
 .brand-name{font-size:15px}
 .nav-link,.menu-trigger{padding-inline:10px}
 .header-age{display:none}
 .hero-layout{grid-template-columns:1.15fr .85fr;gap:34px}
 .footer-grid{grid-template-columns:1.3fr repeat(3,.7fr);gap:28px}
}
@media (max-width:991px){
 .container{width:min(100% - 36px,var(--container))}
 .site-header{position:sticky}
 .nav-wrap{min-height:70px;flex-wrap:wrap;padding:12px 0}
 .brand{margin-right:auto}
 .mobile-toggle{display:block}
 .main-nav{display:none;order:3;flex-basis:100%;align-items:stretch;flex-direction:column;padding:12px 0 5px;border-top:1px solid var(--line)}
 .main-nav.open{display:flex}
 .nav-link,.menu-trigger{width:100%;justify-content:flex-start}
 .nav-link.active:after{left:10px;right:auto;width:32px}
 .menu-box{width:100%}
 .menu-panel{position:static;width:100%;margin-top:6px;box-shadow:none;grid-template-columns:1fr}
 .hero-layout{grid-template-columns:1fr}
 .hero-copy{padding-top:18px}
 .chapter-cover{min-height:285px}
 .cover-number{font-size:88px}
 .section,.faq-section{padding:76px 0}
 .timeline-section{padding:82px 0}
 .chapter-head{display:block}
 .chapter-head p{margin-top:12px}
 .compare-shell{grid-template-columns:1fr;gap:30px}
 .footer-grid{grid-template-columns:1.4fr 1fr 1fr}
 .footer-grid>div:first-child{grid-column:1/-1}
}
@media (max-width:767px){
 .container{width:min(100% - 28px,var(--container))}
 .hero{padding:36px 0 55px}
 .hero h1{font-size:clamp(34px,10vw,43px)}
 .hero-lead{font-size:16px}
 .chapter-cover{min-height:250px}
 .cover-label strong{font-size:21px}
 .quick-index{margin-top:-10px}
 .index-shell{align-items:flex-start;flex-direction:column}
 .index-title{padding:0 4px}
 .index-links{width:100%;flex-wrap:wrap}
 .index-links a{flex:1 1 calc(50% - 8px)}
 .section-head{display:block}
 .section-head p{margin-top:14px}
 .timeline:before{left:22px}
 .timeline-chapter{grid-template-columns:46px 1fr;gap:16px;margin-bottom:66px}
 .timeline-marker{top:90px;width:46px;height:46px;border-radius:12px;font-size:14px}
 .collage,.compact-grid{grid-template-columns:1fr}
 .content-card.feature{grid-row:auto;min-height:430px}
 .content-card{min-height:210px}
 .feature .card-visual{min-height:210px}
 .compare-row{grid-template-columns:90px 1fr;gap:12px}
 .compare-label{grid-row:span 2}
 .compare-value{padding-bottom:8px}
 .faq-question{grid-template-columns:35px 1fr 24px;padding-inline:14px}
 .faq-answer{padding:0 16px 18px 49px}
 .preference-shell{grid-template-columns:1fr;padding:30px 24px}
 .preference-actions{justify-content:flex-start}
 .footer{padding-top:56px}
 .footer-grid{grid-template-columns:1fr 1fr;gap:32px 24px}
 .footer-grid>div:first-child{grid-column:1/-1}
 .footer-bottom{flex-direction:column;margin-top:34px}
}
@media (max-width:520px){
 .container{width:min(100% - 22px,var(--container))}
 .brand{min-width:0;max-width:245px}
 .brand-mark{width:38px;height:38px}
 .brand-name{font-size:14px}
 .breadcrumb{padding-top:16px}
 .hero h1{font-size:34px;letter-spacing:-.045em}
 .hero-actions,.preference-actions{display:grid;grid-template-columns:1fr;width:100%}
 .btn{width:100%}
 .chapter-cover{min-height:225px;padding:20px}
 .cover-number{font-size:70px}
 .cover-label{left:20px;bottom:20px;right:78px}
 .wave-column{right:18px}
 .cover-age{right:16px;bottom:16px;width:48px;height:48px}
 .index-links a{flex-basis:100%}
 .timeline-section{padding-top:68px}
 .timeline-chapter{display:block;padding-left:38px}
 .timeline:before{left:16px}
 .timeline-marker{position:absolute;left:-6px;top:0;width:44px;height:44px}
 .chapter-head{padding-top:4px}
 .content-card{padding:19px}
 .content-card h3{font-size:20px}
 .card-meta{align-items:flex-start;flex-direction:column}
 .compare-panel{padding:20px}
 .compare-row{grid-template-columns:1fr}
 .compare-label{grid-row:auto}
 .compare-value{border-left:0;border-top:3px solid var(--line);padding:9px 0 0}
 .compare-value.current{border-color:var(--coral)}
 .preference{padding-bottom:70px}
 .footer-grid{grid-template-columns:1fr}
 .footer-grid>div:first-child{grid-column:auto}
}
@media (prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 *,*:before,*:after{transition:none!important;animation:none!important}
 .btn:hover,.content-card:hover,.index-links a:hover{transform:none}
}
