/* roulang page: index */
:root{
      --ink:#171512;
      --ink-soft:#211e19;
      --panel:#29251f;
      --panel-2:#343027;
      --paper:#eee5d5;
      --paper-deep:#d8c9b4;
      --text:#f8f1e5;
      --muted:#b9ad9b;
      --muted-dark:#72695c;
      --line:rgba(238,229,213,.16);
      --line-light:rgba(47,40,31,.14);
      --red:#d8583f;
      --red-bright:#ee7454;
      --green:#77a685;
      --green-dark:#3f7252;
      --shadow:0 18px 50px rgba(0,0,0,.24);
      --shadow-soft:0 10px 26px rgba(0,0,0,.13);
      --radius-lg:20px;
      --radius-md:14px;
      --radius-sm:10px;
      --content:1240px;
      --ease:180ms ease;
    }

    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      color:var(--text);
      background:var(--ink);
      font-family:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",Arial,sans-serif;
      font-size:16px;
      line-height:1.85;
      overflow-x:hidden;
    }
    body.modal-open{overflow:hidden}
    a{color:inherit;text-decoration:none}
    button,input,select,textarea{font:inherit}
    button{cursor:pointer}
    img{max-width:100%;display:block}
    ::selection{background:rgba(216,88,63,.44);color:#fff}
    :focus-visible{outline:3px solid var(--paper);outline-offset:3px}

    .site-shell{
      position:relative;
      overflow:hidden;
      background:
        linear-gradient(rgba(238,229,213,.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(238,229,213,.025) 1px, transparent 1px),
        var(--ink);
      background-size:32px 32px;
    }
    .site-shell:before{
      content:"";
      position:absolute;
      top:120px;
      right:-120px;
      width:440px;
      height:440px;
      border:1px solid rgba(216,88,63,.18);
      border-radius:50%;
      box-shadow:0 0 0 46px rgba(216,88,63,.025),0 0 0 92px rgba(216,88,63,.018);
      pointer-events:none;
    }
    .container{width:min(calc(100% - 40px),var(--content));margin:0 auto;position:relative;z-index:1}
    .section{padding:92px 0}
    .section-heading{max-width:710px;margin-bottom:34px}
    .eyebrow{
      display:inline-flex;
      align-items:center;
      gap:8px;
      color:var(--paper-deep);
      font-size:12px;
      font-weight:700;
      line-height:1;
      letter-spacing:.08em;
      text-transform:uppercase;
    }
    .eyebrow:before{content:"";width:24px;height:1px;background:var(--red)}
    h1,h2,h3,p{margin-top:0}
    h1{
      font-size:clamp(34px,5vw,64px);
      line-height:1.22;
      letter-spacing:0;
      font-weight:800;
      margin:15px 0 20px;
    }
    h2{
      font-size:clamp(26px,3vw,39px);
      line-height:1.3;
      font-weight:750;
      letter-spacing:0;
      margin:12px 0 14px;
    }
    h3{font-size:19px;line-height:1.45;font-weight:750;letter-spacing:0;margin-bottom:9px}
    .section-copy{margin:0;color:var(--muted);max-width:680px}
    .muted{color:var(--muted)}

    .site-header{padding:20px 0 0;position:relative;z-index:20}
    .nav-capsule{
      min-height:66px;
      display:flex;
      align-items:center;
      gap:20px;
      padding:8px 10px 8px 18px;
      border:1px solid var(--line);
      border-radius:999px;
      background:rgba(26,23,19,.9);
      box-shadow:0 8px 30px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.04);
      backdrop-filter:blur(12px);
    }
    .brand{
      display:flex;
      align-items:center;
      gap:10px;
      min-width:235px;
      font-size:15px;
      line-height:1.25;
      font-weight:800;
      color:var(--paper);
    }
    .brand-mark{
      display:grid;
      place-items:center;
      flex:0 0 28px;
      height:28px;
      border-radius:50%;
      color:#fff;
      background:var(--red);
      font-size:11px;
      box-shadow:0 0 0 4px rgba(216,88,63,.13);
    }
    .main-nav{display:flex;align-items:center;gap:6px;margin-left:auto}
    .main-nav a{
      padding:9px 14px;
      color:var(--muted);
      border-radius:999px;
      font-size:14px;
      font-weight:700;
      transition:color var(--ease),background var(--ease),transform var(--ease);
    }
    .main-nav a:hover{color:var(--text);background:rgba(238,229,213,.08)}
    .main-nav a.active{color:#fff;background:var(--red)}
    .nav-feedback{
      display:inline-flex;
      align-items:center;
      min-height:42px;
      padding:0 16px;
      border:1px solid rgba(216,88,63,.7);
      border-radius:999px;
      color:#fff;
      background:rgba(216,88,63,.08);
      font-size:13px;
      font-weight:800;
      transition:background var(--ease),transform var(--ease);
    }
    .nav-feedback:hover{background:var(--red);transform:translateY(-1px)}
    .menu-toggle{display:none}

    .hero{padding:76px 0 58px}
    .hero-grid{display:grid;grid-template-columns:1.18fr .82fr;gap:34px;align-items:stretch}
    .hero-main{
      position:relative;
      min-height:515px;
      padding:52px;
      overflow:hidden;
      border:1px solid rgba(238,229,213,.16);
      border-radius:var(--radius-lg);
      background:
        linear-gradient(115deg,rgba(40,34,27,.98),rgba(25,22,18,.92)),
        var(--ink-soft);
      box-shadow:var(--shadow);
    }
    .hero-main:after{
      content:"";
      position:absolute;
      width:440px;
      height:180px;
      right:-86px;
      bottom:-72px;
      border-top:1px solid rgba(238,229,213,.16);
      border-radius:50%;
      transform:rotate(-16deg);
      box-shadow:0 -28px 0 -27px rgba(216,88,63,.38),0 -56px 0 -55px rgba(238,229,213,.11);
      pointer-events:none;
    }
    .hero-content{position:relative;z-index:1;max-width:720px}
    .hero-copy{max-width:650px;margin:0;color:#d9cebe;font-size:17px;line-height:2}
    .hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
    .button-custom{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      min-height:48px;
      padding:0 21px;
      border:1px solid transparent;
      border-radius:999px;
      font-size:14px;
      font-weight:800;
      line-height:1;
      transition:transform var(--ease),background var(--ease),border-color var(--ease),box-shadow var(--ease);
    }
    .button-custom:hover{transform:translateY(-2px)}
    .button-custom:active{transform:translateY(0)}
    .button-primary{color:#fff;background:var(--red);box-shadow:0 10px 22px rgba(216,88,63,.23)}
    .button-primary:hover{background:var(--red-bright);box-shadow:0 14px 28px rgba(216,88,63,.32)}
    .button-secondary{color:var(--paper);border-color:rgba(238,229,213,.28);background:rgba(238,229,213,.06)}
    .button-secondary:hover{border-color:var(--paper);background:rgba(238,229,213,.12)}
    .button-green{color:#e9f4eb;background:var(--green-dark)}
    .button-green:hover{background:var(--green)}
    .hero-footnotes{display:flex;flex-wrap:wrap;gap:18px;margin-top:37px;color:#aa9e8d;font-size:12px}
    .hero-footnotes span{display:flex;align-items:center;gap:7px}
    .hero-footnotes i{display:block;width:7px;height:7px;border-radius:50%;background:var(--green)}

    .route-panel{
      position:relative;
      display:flex;
      flex-direction:column;
      padding:26px;
      border:1px solid rgba(238,229,213,.18);
      border-radius:var(--radius-lg);
      color:var(--ink);
      background:var(--paper);
      box-shadow:var(--shadow);
    }
    .panel-kicker{display:flex;justify-content:space-between;align-items:center;color:var(--muted-dark);font-size:12px;font-weight:800}
    .status-dot{display:inline-flex;align-items:center;gap:6px;color:var(--green-dark)}
    .status-dot:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--green)}
    .route-title{margin:23px 0 6px;font-size:27px;line-height:1.35;font-weight:800}
    .route-note{margin:0;color:#62594d;font-size:14px;line-height:1.75}
    .route-list{position:relative;margin:25px 0 18px;padding:0;list-style:none}
    .route-list:before{content:"";position:absolute;top:17px;bottom:17px;left:8px;width:1px;background:#c6b7a2}
    .route-list li{position:relative;display:flex;gap:13px;padding:0 0 18px}
    .route-list li:last-child{padding-bottom:0}
    .route-node{position:relative;z-index:1;flex:0 0 17px;height:17px;margin-top:4px;border:4px solid var(--paper);border-radius:50%;background:#a79a89}
    .route-list li.active .route-node{background:var(--red);box-shadow:0 0 0 3px rgba(216,88,63,.17)}
    .route-list strong{display:block;font-size:14px;line-height:1.45}
    .route-list small{display:block;margin-top:2px;color:#746959;font-size:12px;line-height:1.5}
    .route-bottom{margin-top:auto;padding-top:17px;border-top:1px solid var(--line-light)}
    .route-bottom span{display:block;color:#766c5d;font-size:12px}
    .route-bottom b{display:block;margin-top:2px;font-size:17px}

    .metrics{padding:30px 0 85px}
    .metrics-board{
      display:grid;
      grid-template-columns:1.6fr 1fr 1fr 1fr;
      overflow:hidden;
      border:1px solid var(--line);
      border-radius:var(--radius-lg);
      background:#211e19;
      box-shadow:var(--shadow-soft);
    }
    .metric{min-height:152px;padding:26px;border-right:1px solid var(--line);position:relative}
    .metric:last-child{border-right:0}
    .metric:first-child{background:linear-gradient(135deg,rgba(216,88,63,.15),transparent 58%)}
    .metric-no{display:block;color:var(--red-bright);font-size:11px;font-weight:800;letter-spacing:.09em}
    .metric-value{display:block;margin-top:10px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:32px;font-weight:800;line-height:1.1}
    .metric:first-child .metric-value{font-size:24px;line-height:1.35}
    .metric-label{display:block;margin-top:7px;color:var(--muted);font-size:13px;line-height:1.55}

    .matrix-section{background:#201d18;border-top:1px solid rgba(238,229,213,.07);border-bottom:1px solid rgba(238,229,213,.07)}
    .matrix-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}
    .featured-entry{
      position:relative;
      min-height:408px;
      display:flex;
      flex-direction:column;
      justify-content:flex-end;
      overflow:hidden;
      padding:34px;
      border:1px solid rgba(238,229,213,.17);
      border-radius:var(--radius-lg);
      background:#312b23;
      box-shadow:var(--shadow-soft);
    }
    .media-placeholder{
      position:absolute;
      inset:0;
      overflow:hidden;
      background:
        linear-gradient(0deg,rgba(23,21,18,.93) 3%,rgba(23,21,18,.16) 80%),
        linear-gradient(125deg,#645342 0%,#382e25 43%,#1b1916 100%);
    }
    .media-placeholder:before,.media-placeholder:after{
      content:"";
      position:absolute;
      border:1px solid rgba(238,229,213,.19);
      border-radius:50%;
    }
    .media-placeholder:before{width:280px;height:280px;top:-70px;right:-36px}
    .media-placeholder:after{width:400px;height:400px;top:-128px;right:-95px}
    .media-grid{
      position:absolute;
      inset:0;
      opacity:.28;
      background-image:linear-gradient(rgba(238,229,213,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(238,229,213,.14) 1px,transparent 1px);
      background-size:33px 33px;
    }
    .featured-entry > *:not(.media-placeholder):not(.media-grid){position:relative;z-index:1}
    .badge{
      display:inline-flex;
      align-items:center;
      width:max-content;
      min-height:25px;
      padding:0 10px;
      border:1px solid rgba(238,229,213,.22);
      border-radius:999px;
      color:#f6eade;
      background:rgba(23,21,18,.38);
      font-size:11px;
      font-weight:800;
      line-height:1;
    }
    .badge.green{color:#dff3e5;border-color:rgba(119,166,133,.6);background:rgba(63,114,82,.34)}
    .featured-entry h3{max-width:490px;margin:14px 0 8px;font-size:27px}
    .featured-entry p{max-width:530px;margin:0;color:#d6c8b7;font-size:14px}
    .entry-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:23px}
    .entry-meta{color:#b8aa98;font-size:12px}
    .play-button{
      display:inline-grid;
      place-items:center;
      width:46px;
      height:46px;
      padding-left:2px;
      border:1px solid rgba(255,255,255,.4);
      border-radius:50%;
      color:#fff;
      background:var(--red);
      box-shadow:0 7px 17px rgba(0,0,0,.24);
      transition:transform var(--ease),background var(--ease);
    }
    .play-button:hover{background:var(--red-bright);transform:scale(1.06)}
    .entry-stack{display:grid;grid-template-rows:1fr 1fr;gap:18px}
    .mini-entry{
      position:relative;
      display:flex;
      flex-direction:column;
      justify-content:center;
      min-height:195px;
      padding:27px;
      overflow:hidden;
      border:1px solid var(--line);
      border-radius:var(--radius-md);
      background:var(--panel);
      transition:border-color var(--ease),transform var(--ease),background var(--ease);
    }
    .mini-entry:hover{border-color:rgba(216,88,63,.72);background:#302a22;transform:translateY(-2px)}
    .mini-entry:before{
      content:"";
      position:absolute;
      top:21px;
      right:22px;
      width:64px;
      height:64px;
      border:1px solid rgba(238,229,213,.12);
      border-radius:50%;
      box-shadow:0 0 0 15px rgba(238,229,213,.018);
    }
    .mini-entry h3,.mini-entry p,.mini-entry .badge{position:relative;z-index:1}
    .mini-entry h3{margin:11px 0 5px}
    .mini-entry p{max-width:270px;margin:0;color:var(--muted);font-size:13px;line-height:1.75}
    .entry-link{display:inline-flex;align-items:center;gap:7px;margin-top:13px;color:#f4cebe;font-size:13px;font-weight:800}
    .entry-link:after{content:"→";font-size:17px;line-height:1}

    .comparison-wrap{display:grid;grid-template-columns:.84fr 1.16fr;gap:34px;align-items:start}
    .compare-intro{padding:12px 0}
    .compare-options{display:grid;gap:10px;margin-top:26px}
    .compare-option{
      width:100%;
      display:flex;
      align-items:flex-start;
      gap:13px;
      padding:16px;
      border:1px solid var(--line);
      border-radius:var(--radius-sm);
      color:var(--text);
      text-align:left;
      background:transparent;
      transition:border-color var(--ease),background var(--ease);
    }
    .compare-option:hover,.compare-option.active{border-color:rgba(216,88,63,.75);background:rgba(216,88,63,.09)}
    .compare-option b{display:block;font-size:14px}
    .compare-option span{display:block;margin-top:2px;color:var(--muted);font-size:12px;line-height:1.55}
    .compare-key{display:grid;place-items:center;flex:0 0 25px;height:25px;border-radius:50%;color:#fce6dc;background:rgba(216,88,63,.24);font-size:11px;font-weight:800}
    .result-panel{padding:28px;border:1px solid var(--line-light);border-radius:var(--radius-lg);color:var(--ink);background:var(--paper);box-shadow:var(--shadow-soft)}
    .result-top{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-bottom:17px;border-bottom:1px solid var(--line-light)}
    .result-top h3{margin:0;font-size:20px}
    .result-top span{color:var(--green-dark);font-size:12px;font-weight:800}
    .result-row{
      display:grid;
      grid-template-columns:58px 1fr auto;
      align-items:center;
      gap:15px;
      padding:17px 0;
      border-bottom:1px solid var(--line-light);
    }
    .result-row:last-child{border-bottom:0}
    .result-thumb{height:45px;border-radius:8px;background:linear-gradient(135deg,#856a53,#3c352c);position:relative;overflow:hidden}
    .result-thumb:after{content:"";position:absolute;left:8px;bottom:7px;width:25px;height:2px;background:rgba(255,255,255,.6)}
    .result-row b{display:block;font-size:14px;line-height:1.45}
    .result-row small{display:block;margin-top:2px;color:#766c5d;font-size:12px}
    .result-row em{color:#6a6257;font-size:12px;font-style:normal;white-space:nowrap}

    .trust-band{padding:0 0 88px}
    .trust-panel{
      display:grid;
      grid-template-columns:.72fr 1.28fr;
      gap:34px;
      align-items:center;
      padding:34px 38px;
      border:1px solid rgba(119,166,133,.33);
      border-radius:var(--radius-lg);
      background:linear-gradient(120deg,rgba(63,114,82,.3),rgba(42,38,31,.78));
    }
    .trust-panel h2{margin-bottom:8px;font-size:29px}
    .trust-panel p{margin:0;color:#d1c8b9;font-size:14px}
    .trust-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
    .trust-item{padding-left:14px;border-left:2px solid var(--green)}
    .trust-item b{display:block;color:#e8f2eb;font-size:14px}
    .trust-item span{display:block;margin-top:3px;color:#b7c8b9;font-size:12px;line-height:1.6}

    .faq-section{background:#eee5d5;color:var(--ink)}
    .faq-section .eyebrow{color:#72695c}
    .faq-section .section-copy{color:#665d50}
    .faq-layout{display:grid;grid-template-columns:.73fr 1.27fr;gap:50px;align-items:start}
    .faq-side{position:sticky;top:25px}
    .faq-side .button-custom{margin-top:25px}
    .faq-list{border-top:1px solid var(--line-light)}
    .faq-item{border-bottom:1px solid var(--line-light)}
    .faq-question{
      width:100%;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:18px;
      padding:20px 0;
      border:0;
      color:var(--ink);
      text-align:left;
      background:transparent;
      font-weight:800;
      font-size:16px;
      line-height:1.55;
    }
    .faq-icon{
      display:grid;
      place-items:center;
      flex:0 0 28px;
      width:28px;
      height:28px;
      border:1px solid #b8a993;
      border-radius:50%;
      color:#655a4b;
      font-size:19px;
      font-weight:400;
      transition:background var(--ease),color var(--ease),transform var(--ease);
    }
    .faq-item.open .faq-icon{color:#fff;background:var(--red);border-color:var(--red);transform:rotate(45deg)}
    .faq-answer{display:none;padding:0 48px 22px 0;color:#5e5549;font-size:14px;line-height:1.9}
    .faq-item.open .faq-answer{display:block}
    .faq-answer p{margin:0}

    .feedback-section{background:#1d1a16}
    .feedback-panel{
      display:grid;
      grid-template-columns:.74fr 1.26fr;
      gap:42px;
      padding:43px;
      border:1px solid var(--line);
      border-radius:var(--radius-lg);
      background:var(--panel);
      box-shadow:var(--shadow);
    }
    .feedback-copy h2{margin-top:10px}
    .feedback-copy p{color:var(--muted);font-size:14px}
    .feedback-steps{display:grid;gap:13px;margin-top:27px}
    .feedback-step{display:flex;gap:12px;align-items:flex-start}
    .step-no{
      display:grid;
      place-items:center;
      flex:0 0 28px;
      height:28px;
      border-radius:50%;
      color:#f7d8cb;
      background:rgba(216,88,63,.2);
      font-size:11px;
      font-weight:800;
    }
    .feedback-step b{display:block;font-size:14px}
    .feedback-step span{display:block;margin-top:1px;color:var(--muted);font-size:12px;line-height:1.55}
    .feedback-form{display:grid;grid-template-columns:1fr 1fr;gap:15px}
    .field.full{grid-column:1/-1}
    label{display:block;margin-bottom:6px;color:#dfd2c1;font-size:13px;font-weight:700}
    input,select,textarea{
      width:100%;
      min-height:47px;
      padding:11px 13px;
      border:1px solid rgba(238,229,213,.2);
      border-radius:9px;
      outline:0;
      color:var(--text);
      background:#201d18;
      transition:border-color var(--ease),box-shadow var(--ease),background var(--ease);
    }
    select{appearance:auto}
    textarea{min-height:112px;resize:vertical}
    input::placeholder,textarea::placeholder{color:#817769}
    input:focus,select:focus,textarea:focus{border-color:var(--red-bright);background:#26221d;box-shadow:0 0 0 3px rgba(216,88,63,.14)}
    .check-row{display:flex;align-items:flex-start;gap:9px;color:#bcae9a;font-size:12px;line-height:1.65}
    .check-row input{width:17px;min-height:17px;height:17px;margin:3px 0 0;accent-color:var(--red)}
    .form-status{display:none;margin:0;color:#b9dfc2;font-size:13px}
    .form-status.show{display:block}

    .site-footer{padding:61px 0 24px;background:#12110f}
    .footer-top{display:grid;grid-template-columns:1.25fr .75fr .75fr;gap:38px;padding-bottom:38px;border-bottom:1px solid var(--line)}
    .footer-brand p{max-width:400px;margin:15px 0 0;color:#9e9281;font-size:13px;line-height:1.8}
    .footer-title{margin:0 0 12px;color:#e6d9c7;font-size:13px;font-weight:800}
    .footer-links{display:grid;gap:8px}
    .footer-links a{color:#a99d8c;font-size:13px;transition:color var(--ease),padding-left var(--ease)}
    .footer-links a:hover{padding-left:4px;color:var(--red-bright)}
    .footer-bottom{display:flex;justify-content:space-between;gap:18px;padding-top:22px;color:#786f63;font-size:12px;line-height:1.65}
    .footer-bottom p{margin:0}
    .footer-bottom a{color:#aa9d8c}
    .footer-bottom a:hover{color:var(--paper)}

    .age-modal{
      position:fixed;
      inset:0;
      z-index:100;
      display:flex;
      align-items:center;
      justify-content:center;
      padding:20px;
      background:rgba(12,11,9,.82);
      backdrop-filter:blur(5px);
    }
    .age-modal[hidden]{display:none}
    .age-dialog{
      width:min(100%,520px);
      padding:34px;
      border:1px solid rgba(238,229,213,.22);
      border-radius:var(--radius-lg);
      background:#29251f;
      box-shadow:0 25px 70px rgba(0,0,0,.56);
    }
    .age-dialog h2{margin:10px 0 12px;font-size:28px}
    .age-dialog p{margin:0;color:#c5b9a8;font-size:14px;line-height:1.85}
    .age-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:25px}
    .age-note{margin-top:17px!important;color:#918576!important;font-size:12px!important}
    .age-exit{border:0;background:none;color:#c4b6a2;font-size:13px;text-decoration:underline}
    .age-exit:hover{color:#fff}

    @media (max-width:1024px){
      .hero-grid,.comparison-wrap,.faq-layout,.feedback-panel{grid-template-columns:1fr}
      .hero-main{min-height:auto}
      .route-panel{min-height:390px}
      .matrix-grid{grid-template-columns:1fr}
      .entry-stack{grid-template-columns:1fr 1fr;grid-template-rows:auto}
      .trust-panel{grid-template-columns:1fr}
      .faq-side{position:static}
      .metrics-board{grid-template-columns:repeat(2,1fr)}
      .metric:nth-child(2){border-right:0}
      .metric:nth-child(-n+2){border-bottom:1px solid var(--line)}
      .footer-top{grid-template-columns:1fr 1fr}
      .footer-brand{grid-column:1/-1}
    }
    @media (max-width:767px){
      .container{width:min(calc(100% - 28px),var(--content))}
      .section{padding:68px 0}
      .site-header{padding-top:14px}
      .nav-capsule{min-height:58px;padding:7px 8px 7px 14px}
      .brand{min-width:0;font-size:12px}
      .brand-mark{flex-basis:25px;height:25px}
      .main-nav,.nav-feedback{display:none}
      .menu-toggle{
        display:grid;
        place-items:center;
        width:42px;
        height:42px;
        margin-left:auto;
        border:1px solid var(--line);
        border-radius:50%;
        color:var(--paper);
        background:rgba(238,229,213,.06);
        font-size:18px;
      }
      .main-nav.mobile-open{
        position:absolute;
        top:66px;
        right:0;
        left:0;
        display:grid;
        gap:5px;
        padding:12px;
        border:1px solid var(--line);
        border-radius:16px;
        background:#28231e;
        box-shadow:var(--shadow);
      }
      .main-nav.mobile-open a{padding:12px 14px}
      .hero{padding:38px 0 42px}
      .hero-main{padding:32px 24px;border-radius:16px}
      h1{font-size:35px}
      .hero-copy{font-size:15px;line-height:1.9}
      .hero-actions{display:grid;grid-template-columns:1fr}
      .button-custom{width:100%;min-height:48px}
      .hero-footnotes{gap:9px 16px;margin-top:27px}
      .route-panel{min-height:0;padding:23px;border-radius:16px}
      .metrics{padding:18px 0 62px}
      .metrics-board{grid-template-columns:1fr;border-radius:15px}
      .metric,.metric:nth-child(2){border-right:0;border-bottom:1px solid var(--line)}
      .metric:last-child{border-bottom:0}
      .metric{min-height:124px;padding:21px}
      .matrix-grid,.entry-stack{grid-template-columns:1fr}
      .featured-entry{min-height:340px;padding:25px;border-radius:16px}
      .featured-entry h3{font-size:23px}
      .mini-entry{min-height:170px}
      .comparison-wrap{gap:22px}
      .result-panel{padding:20px;border-radius:15px}
      .result-row{grid-template-columns:50px 1fr;gap:11px}
      .result-row em{grid-column:2;justify-self:start}
      .trust-band{padding-bottom:65px}
      .trust-panel{padding:27px 23px;border-radius:16px}
      .trust-list{grid-template-columns:1fr;gap:16px}
      .faq-layout{gap:22px}
      .faq-answer{padding-right:8px}
      .feedback-panel{gap:25px;padding:27px 20px;border-radius:16px}
      .feedback-form{grid-template-columns:1fr}
      .field.full{grid-column:auto}
      .footer-top{grid-template-columns:1fr;gap:27px}
      .footer-brand{grid-column:auto}
      .footer-bottom{display:block}
      .footer-bottom p+p{margin-top:8px}
      .age-dialog{padding:28px 22px;border-radius:16px}
    }
    @media (max-width:520px){
      .brand span{max-width:205px}
      .section-heading{margin-bottom:25px}
      .entry-footer{align-items:flex-end}
      .entry-footer .button-custom{width:auto;padding:0 15px}
      .result-top{align-items:flex-start;flex-direction:column}
      .age-actions{display:grid;grid-template-columns:1fr}
      .age-exit{padding:11px 0}
    }
    @media (prefers-reduced-motion:reduce){
      *,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}
    }

/* roulang page: category1 */
:root{
 --ink:#171512;
 --ink-soft:#211e19;
 --panel:#29251f;
 --panel-2:#343027;
 --paper:#eee5d5;
 --paper-deep:#d8c9b4;
 --text:#f8f1e5;
 --muted:#b9ad9b;
 --muted-dark:#72695c;
 --line:rgba(238,229,213,.16);
 --line-light:rgba(47,40,31,.14);
 --red:#d8583f;
 --red-bright:#ee7454;
 --green:#77a685;
 --green-dark:#3f7252;
 --shadow:0 18px 50px rgba(0,0,0,.24);
 --shadow-soft:0 10px 26px rgba(0,0,0,.13);
 --radius-lg:20px;
 --radius-md:14px;
 --radius-sm:10px;
 --content:1240px;
 --ease:180ms ease;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
 margin:0;color:var(--text);background:var(--ink);
 font-family:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",Arial,sans-serif;
 font-size:16px;line-height:1.85;overflow-x:hidden;
}
body.modal-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
img{max-width:100%;display:block}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
 outline:3px solid rgba(238,116,84,.8);outline-offset:3px;
}
.container{width:min(calc(100% - 40px),var(--content));margin:0 auto;position:relative;z-index:1}
.section{padding:86px 0}
.section-heading{max-width:760px;margin-bottom:32px}
.eyebrow{
 display:inline-flex;align-items:center;gap:8px;color:var(--paper-deep);
 font-size:12px;font-weight:800;line-height:1;letter-spacing:.08em;
}
.eyebrow:before{content:"";width:24px;height:1px;background:var(--red)}
.section-heading h2{margin:14px 0 10px;font-size:34px;line-height:1.35;letter-spacing:-.02em}
.section-copy{margin:0;color:var(--muted);max-width:720px}
.muted{color:var(--muted)}
.site-header{padding:20px 0 0;position:relative;z-index:30}
.nav-capsule{
 min-height:66px;display:flex;align-items:center;gap:20px;padding:8px 10px 8px 18px;
 border:1px solid var(--line);border-radius:999px;background:rgba(26,23,19,.92);
 box-shadow:0 8px 30px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.04);
 backdrop-filter:blur(12px);
}
.brand{
 display:flex;align-items:center;gap:10px;min-width:235px;font-size:15px;
 line-height:1.25;font-weight:800;color:var(--paper);
}
.brand-mark{
 display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:50%;
 color:#fff;background:var(--red);font-size:11px;box-shadow:0 0 0 4px rgba(216,88,63,.13);
}
.main-nav{display:flex;align-items:center;gap:6px;margin-left:auto}
.main-nav a{
 padding:9px 14px;color:var(--muted);border-radius:999px;font-size:14px;
 font-weight:700;transition:color var(--ease),background var(--ease),transform var(--ease);
}
.main-nav a:hover{color:var(--text);background:rgba(238,229,213,.08)}
.main-nav a.active{color:#fff;background:var(--red)}
.nav-feedback{
 display:inline-flex;align-items:center;min-height:42px;padding:0 16px;
 border:1px solid rgba(216,88,63,.7);border-radius:999px;color:#fff;
 background:rgba(216,88,63,.08);font-size:13px;font-weight:800;
 transition:background var(--ease),transform var(--ease);
}
.nav-feedback:hover{background:var(--red);transform:translateY(-1px)}
.menu-toggle{
 display:none;align-items:center;justify-content:center;width:44px;height:44px;
 border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--paper);
 font-size:18px;
}
.button-custom{
 display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;
 padding:0 21px;border:1px solid transparent;border-radius:999px;font-size:14px;
 font-weight:800;line-height:1;transition:transform var(--ease),background var(--ease),border-color var(--ease),box-shadow var(--ease);
}
.button-custom:hover{transform:translateY(-2px)}
.button-custom:active{transform:translateY(0)}
.button-primary{color:#fff;background:var(--red);box-shadow:0 10px 22px rgba(216,88,63,.23)}
.button-primary:hover{background:var(--red-bright);box-shadow:0 14px 28px rgba(216,88,63,.32)}
.button-secondary{color:var(--paper);border-color:rgba(238,229,213,.28);background:rgba(238,229,213,.06)}
.button-secondary:hover{border-color:var(--paper);background:rgba(238,229,213,.12)}
.button-green{color:#e9f4eb;background:var(--green-dark)}
.button-green:hover{background:var(--green)}

.category-hero{
 position:relative;padding:62px 0 40px;overflow:hidden;
}
.category-hero:before{
 content:"";position:absolute;inset:0;
 background:
 radial-gradient(circle at 77% 14%,rgba(216,88,63,.2),transparent 25%),
 linear-gradient(180deg,rgba(52,48,39,.45),transparent 75%);
 pointer-events:none;
}
.category-panel{
 position:relative;overflow:hidden;padding:42px 46px;border:1px solid var(--line);
 border-radius:var(--radius-lg);background:linear-gradient(125deg,#302b23,#211e19 70%);
 box-shadow:var(--shadow);
}
.category-panel:after{
 content:"";position:absolute;right:-66px;bottom:-130px;width:410px;height:410px;
 border:1px solid rgba(238,229,213,.13);border-radius:50%;
 box-shadow:0 0 0 30px rgba(238,229,213,.025),0 0 0 61px rgba(238,229,213,.025);
 pointer-events:none;
}
.breadcrumb{display:flex;flex-wrap:wrap;gap:8px;position:relative;z-index:1;color:var(--muted);font-size:13px}
.breadcrumb span{color:var(--red-bright)}
.category-head-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:end;margin-top:28px}
.category-head-grid h1{max-width:760px;margin:0 0 16px;font-size:48px;line-height:1.22;letter-spacing:-.035em}
.category-intro{margin:0;max-width:700px;color:#d8cebe;font-size:16px;line-height:2}
.status-box{
 padding:20px;border:1px solid rgba(238,229,213,.13);border-radius:var(--radius-md);
 background:rgba(16,14,12,.28);
}
.status-box p{margin:0}
.status-label{display:flex;align-items:center;gap:8px;color:var(--paper-deep);font-size:12px;font-weight:800}
.status-dot{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(119,166,133,.12)}
.status-value{margin-top:8px!important;font-size:20px;font-weight:800;line-height:1.35}
.status-note{margin-top:5px!important;color:var(--muted);font-size:13px;line-height:1.6}
.search-track{position:relative;z-index:1;display:flex;gap:10px;margin-top:34px;max-width:760px}
.search-track input{
 flex:1;min-width:0;height:52px;padding:0 18px;border:1px solid rgba(238,229,213,.22);
 border-radius:999px;color:var(--text);background:rgba(15,13,11,.43);
}
.search-track input::placeholder{color:#9f9484}
.search-track input:focus{border-color:var(--red-bright);background:rgba(15,13,11,.64)}

.index-section{padding:42px 0 86px}
.index-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:28px;align-items:start}
.filter-panel{
 position:sticky;top:18px;padding:22px;border:1px solid var(--line);
 border-radius:var(--radius-md);background:var(--panel);box-shadow:var(--shadow-soft);
}
.panel-kicker{margin:0 0 4px;color:var(--paper-deep);font-size:12px;font-weight:800;letter-spacing:.08em}
.filter-panel h2{margin:0 0 18px;font-size:22px;line-height:1.4}
.filter-group{padding:17px 0;border-top:1px solid var(--line)}
.filter-group:first-of-type{border-top:0}
.filter-group label{display:block;margin-bottom:8px;color:var(--paper);font-size:13px;font-weight:700}
.filter-group select,.filter-group input{
 width:100%;height:44px;padding:0 12px;border:1px solid rgba(238,229,213,.16);
 border-radius:var(--radius-sm);color:var(--paper);background:#211e19;
}
.filter-group select option{background:#211e19}
.filter-checks{display:grid;gap:8px}
.filter-check{
 display:flex!important;align-items:center;gap:9px;margin:0!important;color:var(--muted)!important;
 font-size:13px!important;font-weight:500!important;cursor:pointer;
}
.filter-check input{width:16px;height:16px;accent-color:var(--red)}
.filter-actions{display:flex;gap:9px;margin-top:8px}
.filter-actions .button-custom{min-height:42px;padding:0 14px;font-size:13px}
.content-area{min-width:0}
.result-bar{
 display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;padding:0 3px;
}
.result-bar p{margin:0;color:var(--muted);font-size:13px}
.result-bar strong{color:var(--paper)}
.view-label{display:flex;align-items:center;gap:7px;color:var(--green);font-size:12px;font-weight:800}
.view-label:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--green)}
.featured-item{
 display:grid;grid-template-columns:42% 58%;overflow:hidden;margin-bottom:18px;border:1px solid rgba(238,229,213,.17);
 border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-soft);
 transition:border-color var(--ease),transform var(--ease),box-shadow var(--ease);
}
.featured-item:hover{border-color:rgba(238,116,84,.78);transform:translateY(-2px);box-shadow:var(--shadow)}
.cover{
 position:relative;min-height:230px;overflow:hidden;background:
 linear-gradient(135deg,rgba(216,88,63,.42),transparent 46%),
 linear-gradient(40deg,#68604d,#302b23 65%);
}
.cover:before{
 content:"";position:absolute;inset:0;opacity:.65;
 background-image:radial-gradient(rgba(238,229,213,.52) 1px,transparent 1px);
 background-size:18px 18px;
}
.cover:after{
 content:"";position:absolute;left:17px;right:17px;bottom:19px;height:1px;
 background:rgba(238,229,213,.56);box-shadow:35px -20px 0 -0.2px rgba(238,229,213,.27),70px -37px 0 -0.2px rgba(238,229,213,.18);
 transform:rotate(-8deg);
}
.cover-small{min-height:155px}
.cover-coral{background:linear-gradient(135deg,rgba(216,88,63,.56),transparent 50%),linear-gradient(40deg,#6a5442,#2e2a22 65%)}
.cover-green{background:linear-gradient(135deg,rgba(119,166,133,.48),transparent 50%),linear-gradient(40deg,#485344,#27251e 65%)}
.cover-paper{background:linear-gradient(135deg,rgba(238,229,213,.28),transparent 50%),linear-gradient(40deg,#5a5145,#2b2821 65%)}
.cover-lines{position:absolute;inset:0;z-index:1;background:linear-gradient(125deg,transparent 48%,rgba(238,229,213,.25) 48.3%,transparent 48.7%),linear-gradient(30deg,transparent 65%,rgba(216,88,63,.48) 65.3%,transparent 65.8%)}
.play-button{
 position:absolute;z-index:3;left:50%;top:50%;display:grid;place-items:center;width:58px;height:58px;
 border:1px solid rgba(255,255,255,.7);border-radius:50%;color:white;background:rgba(216,88,63,.9);
 box-shadow:0 8px 22px rgba(0,0,0,.25);transform:translate(-50%,-50%);
 transition:transform var(--ease),background var(--ease);
}
.play-button:hover{background:var(--red-bright);transform:translate(-50%,-50%) scale(1.08)}
.play-button span{margin-left:3px;font-size:17px}
.cover-index{
 position:absolute;z-index:3;top:14px;left:14px;padding:4px 9px;border:1px solid rgba(255,255,255,.3);
 border-radius:999px;color:#fff;background:rgba(19,17,14,.5);font-size:11px;font-weight:800;
}
.item-info{display:flex;flex-direction:column;justify-content:center;padding:28px}
.item-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.badge{
 display:inline-flex;align-items:center;min-height:24px;padding:3px 9px;border-radius:999px;
 font-size:11px;font-weight:800;line-height:1.2;
}
.badge-red{color:#ffe5df;background:rgba(216,88,63,.18);border:1px solid rgba(216,88,63,.35)}
.badge-green{color:#d8eddd;background:rgba(119,166,133,.16);border:1px solid rgba(119,166,133,.32)}
.badge-soft{color:var(--paper-deep);background:rgba(238,229,213,.08);border:1px solid rgba(238,229,213,.12)}
.item-info h3{margin:0;font-size:25px;line-height:1.45}
.item-info p{margin:10px 0 17px;color:var(--muted);font-size:14px;line-height:1.8}
.item-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#a99f90;font-size:12px}
.item-footer a{color:var(--paper);font-weight:800}
.item-footer a:hover{color:var(--red-bright)}
.content-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.video-card{
 overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-md);
 background:var(--panel);box-shadow:0 8px 20px rgba(0,0,0,.12);
 transition:border-color var(--ease),transform var(--ease),box-shadow var(--ease);
}
.video-card:hover{border-color:rgba(238,116,84,.8);transform:translateY(-3px);box-shadow:var(--shadow-soft)}
.video-card:hover .play-button{transform:translate(-50%,-50%) scale(1.08)}
.card-body{padding:17px 18px 18px}
.card-body h3{margin:9px 0 7px;font-size:17px;line-height:1.55}
.card-body p{margin:0;color:var(--muted);font-size:13px;line-height:1.7}
.card-meta{display:flex;justify-content:space-between;gap:10px;margin-top:14px;color:#a99f90;font-size:12px}
.compact-index{
 margin-top:18px;padding:4px 20px;border:1px solid var(--line);border-radius:var(--radius-md);background:#211e19;
}
.compact-row{
 display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:14px;align-items:center;
 padding:15px 0;border-bottom:1px solid var(--line);
}
.compact-row:last-child{border-bottom:0}
.row-number{color:var(--red-bright);font-size:13px;font-weight:800}
.compact-row strong{display:block;font-size:14px;line-height:1.5}
.compact-row small{display:block;margin-top:2px;color:var(--muted);font-size:12px}
.compact-row a{color:var(--paper-deep);font-size:13px;font-weight:800}
.compact-row a:hover{color:var(--red-bright)}
.pagination-wrap{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:28px}
.page-btn{
 display:grid;place-items:center;min-width:42px;height:42px;padding:0 12px;border:1px solid var(--line);
 border-radius:10px;color:var(--muted);background:var(--panel);font-size:13px;font-weight:800;
 transition:background var(--ease),border-color var(--ease),color var(--ease),transform var(--ease);
}
.page-btn:hover{border-color:var(--red);color:#fff;background:var(--red);transform:translateY(-1px)}
.page-btn.active{color:#fff;border-color:var(--red);background:var(--red)}

.guide-section{background:#201d18;border-top:1px solid rgba(238,229,213,.08);border-bottom:1px solid rgba(238,229,213,.08)}
.guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.guide-card{padding:27px;border:1px solid var(--line);border-radius:var(--radius-md);background:rgba(52,48,39,.55)}
.guide-card h2{margin:8px 0 12px;font-size:24px;line-height:1.4}
.guide-card p{margin:0;color:var(--muted);font-size:14px}
.path-list{display:grid;gap:13px;margin:20px 0 0;padding:0;list-style:none}
.path-list li{display:flex;gap:12px;align-items:flex-start}
.path-step{display:grid;place-items:center;flex:0 0 27px;height:27px;border-radius:50%;color:#fff;background:var(--red);font-size:11px;font-weight:800}
.path-list strong{display:block;color:var(--paper);font-size:14px}
.path-list span{display:block;color:var(--muted);font-size:13px;line-height:1.65}

.faq-section{padding-bottom:82px}
.faq-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:46px;align-items:start}
.faq-side{padding:27px;border-left:2px solid var(--red);background:linear-gradient(90deg,rgba(216,88,63,.09),transparent)}
.faq-side h2{margin:10px 0;font-size:32px;line-height:1.35}
.faq-side p{margin:0;color:var(--muted);font-size:14px}
.accordion{margin:0;background:transparent}
.accordion-item{margin-bottom:10px;border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden;background:var(--panel)}
.accordion-title{
 position:relative;padding:18px 52px 18px 20px;border:0!important;color:var(--paper)!important;
 background:transparent!important;font-size:15px;font-weight:800;line-height:1.55;
}
.accordion-title:before{right:20px;color:var(--red-bright)!important;font-size:22px!important}
.accordion-title:hover,.accordion-title:focus{background:rgba(238,229,213,.04)!important;color:#fff!important}
.accordion-content{padding:0 20px 19px;border:0!important;color:var(--muted);background:transparent;font-size:14px;line-height:1.9}
.accordion-item.is-active{border-color:rgba(216,88,63,.58)}
.accordion-item.is-active .accordion-title{color:#fff!important}

.feedback-section{padding-top:0}
.feedback-panel{
 display:grid;grid-template-columns:.78fr 1.22fr;gap:38px;padding:38px;
 border:1px solid rgba(238,229,213,.18);border-radius:var(--radius-lg);
 background:linear-gradient(120deg,#393328,#28241e);box-shadow:var(--shadow);
}
.feedback-copy h2{margin:10px 0 12px;font-size:31px;line-height:1.35}
.feedback-copy p{margin:0;color:var(--muted);font-size:14px}
.feedback-steps{display:grid;gap:12px;margin:25px 0 0}
.feedback-step{display:flex;align-items:center;gap:11px;color:var(--paper-deep);font-size:13px;font-weight:700}
.feedback-step b{display:grid;place-items:center;width:25px;height:25px;border:1px solid rgba(119,166,133,.45);border-radius:50%;color:#dceddf;background:rgba(119,166,133,.13);font-size:11px}
.feedback-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.field-full{grid-column:1/-1}
.feedback-form label{display:block;margin-bottom:6px;color:var(--paper-deep);font-size:13px;font-weight:700}
.feedback-form input,.feedback-form select,.feedback-form textarea{
 width:100%;padding:11px 13px;border:1px solid rgba(238,229,213,.18);
 border-radius:var(--radius-sm);color:var(--paper);background:rgba(18,16,13,.55);
 transition:border-color var(--ease),background var(--ease);
}
.feedback-form input,.feedback-form select{height:46px}
.feedback-form textarea{min-height:105px;resize:vertical}
.feedback-form select option{background:#211e19}
.feedback-form input::placeholder,.feedback-form textarea::placeholder{color:#918675}
.feedback-form input:focus,.feedback-form select:focus,.feedback-form textarea:focus{border-color:var(--red-bright);background:rgba(18,16,13,.78);outline:none}
.terms-check{display:flex;align-items:flex-start;gap:9px;color:var(--muted);font-size:12px;line-height:1.7}
.terms-check input{width:16px;height:16px;margin-top:4px;accent-color:var(--red)}
.form-message{display:none;grid-column:1/-1;margin:0;padding:10px 13px;border-radius:var(--radius-sm);color:#dceddf;background:rgba(119,166,133,.14);font-size:13px}
.form-message.show{display:block}

.site-footer{padding:58px 0 22px;border-top:1px solid rgba(238,229,213,.1);background:#12110f}
.footer-top{display:grid;grid-template-columns:1.35fr .8fr .9fr;gap:46px;padding-bottom:36px}
.footer-brand .brand{margin-bottom:16px}
.footer-brand p{max-width:470px;margin:0;color:var(--muted);font-size:13px;line-height:1.85}
.footer-title{margin:0 0 13px;color:var(--paper);font-size:13px;font-weight:800}
.footer-links{display:grid;gap:8px}
.footer-links a{color:var(--muted);font-size:13px;transition:color var(--ease),padding-left var(--ease)}
.footer-links a:hover{padding-left:4px;color:var(--red-bright)}
.footer-bottom{
 display:flex;justify-content:space-between;gap:20px;padding-top:20px;border-top:1px solid var(--line);
 color:#908676;font-size:12px;
}
.footer-bottom p{margin:0}
.footer-bottom a{color:var(--paper-deep)}
.footer-bottom a:hover{color:var(--red-bright)}

.age-modal{
 position:fixed;z-index:100;inset:0;display:flex;align-items:center;justify-content:center;
 padding:20px;background:rgba(10,9,7,.79);backdrop-filter:blur(6px);
}
.age-modal[hidden]{display:none}
.age-dialog{
 width:min(100%,510px);padding:32px;border:1px solid rgba(238,229,213,.22);border-radius:var(--radius-lg);
 background:#29251f;box-shadow:0 28px 80px rgba(0,0,0,.5);
}
.age-dialog h2{margin:12px 0 10px;font-size:27px;line-height:1.35}
.age-dialog p{margin:0;color:var(--muted);font-size:14px;line-height:1.85}
.age-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.age-close{
 margin-top:15px;padding:0;border:0;color:var(--muted);background:transparent;font-size:13px;text-decoration:underline;
}
.age-close:hover{color:var(--paper)}
@media (max-width:1024px){
 .category-head-grid,.feedback-panel,.faq-grid{grid-template-columns:1fr}
 .index-layout{grid-template-columns:250px minmax(0,1fr)}
 .featured-item{grid-template-columns:38% 62%}
 .footer-top{gap:28px}
}
@media (max-width:767px){
 .container{width:min(calc(100% - 28px),var(--content))}
 .site-header{padding-top:13px}
 .nav-capsule{min-height:58px;padding:7px 8px 7px 13px;gap:10px}
 .brand{min-width:0;font-size:13px}
 .brand-mark{flex-basis:26px;height:26px}
 .menu-toggle{display:inline-flex;margin-left:auto}
 .nav-feedback{display:none}
 .main-nav{
 display:none;position:absolute;top:66px;left:0;right:0;z-index:40;flex-direction:column;
 align-items:stretch;padding:10px;border:1px solid var(--line);border-radius:16px;background:#29251f;box-shadow:var(--shadow);
 }
 .main-nav.open{display:flex}
 .main-nav a{padding:12px 14px}
 .category-hero{padding:34px 0 28px}
 .category-panel{padding:27px 22px}
 .category-head-grid{margin-top:21px}
 .category-head-grid h1{font-size:34px;word-break:break-word}
 .search-track{flex-direction:column}
 .search-track .button-custom{width:100%}
 .index-section{padding:28px 0 60px}
 .index-layout{display:block}
 .filter-panel{position:static;margin-bottom:18px}
 .filter-panel.collapsed .filter-group,.filter-panel.collapsed .filter-actions{display:none}
 .featured-item{grid-template-columns:1fr}
 .cover{min-height:190px}
 .item-info{padding:21px}
 .item-info h3{font-size:21px}
 .content-grid{grid-template-columns:1fr}
 .guide-grid{grid-template-columns:1fr}
 .section{padding:65px 0}
 .section-heading h2,.faq-side h2,.feedback-copy h2{font-size:27px}
 .faq-grid{gap:24px}
 .feedback-panel{padding:24px 20px;gap:25px}
 .feedback-form{grid-template-columns:1fr}
 .field-full{grid-column:auto}
 .footer-top{grid-template-columns:1fr;gap:28px}
 .footer-bottom{flex-direction:column;gap:7px}
 .compact-index{padding:4px 14px}
 .compact-row{grid-template-columns:32px minmax(0,1fr) auto;gap:9px}
 .compact-row a{font-size:12px}
}
@media (max-width:520px){
 body{font-size:15px}
 .brand span:last-child{max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 .category-head-grid h1{font-size:30px}
 .category-intro{font-size:14px}
 .result-bar{align-items:flex-start;flex-direction:column;gap:4px}
 .pagination-wrap{gap:5px}
 .page-btn{min-width:37px;height:39px;padding:0 9px}
 .age-dialog{padding:25px 21px}
 .age-actions .button-custom{width:100%}
}
@media (prefers-reduced-motion:reduce){
 *,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}
}
