/* roulang page: index */
:root {
      --ink:#211b2b;
      --plum:#35243f;
      --deep:#19141f;
      --lime:#c9f34b;
      --coral:#ff765d;
      --mist:#f4f1f6;
      --paper:#fffdfb;
      --muted:#766d7d;
      --line:#e5dfe8;
      --radius:14px;
      --shadow:0 12px 30px rgba(42,27,49,.08);
      --max:1240px;
    }
    * { box-sizing:border-box; }
    html { scroll-behavior:smooth; }
    body {
      margin:0;
      color:var(--ink);
      background:var(--paper);
      font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",Arial,sans-serif;
      line-height:1.7;
      -webkit-font-smoothing:antialiased;
    }
    a { color:inherit; text-decoration:none; transition:.22s ease; }
    button,input { font:inherit; }
    button { cursor:pointer; }
    .container { width:min(var(--max),calc(100% - 40px)); margin:0 auto; }
    .topline { height:4px; background:linear-gradient(90deg,var(--lime) 0 38%,var(--coral) 38% 61%,var(--plum) 61%); }
    .site-header { position:sticky; top:0; z-index:30; background:rgba(255,253,251,.94); border-bottom:1px solid var(--line); backdrop-filter:blur(14px); }
    .nav-wrap { min-height:76px; display:flex; align-items:center; gap:28px; }
    .brand { display:flex; align-items:center; gap:11px; min-width:260px; font-weight:900; letter-spacing:-.04em; }
    .brand-mark { width:32px; height:32px; display:grid; place-items:center; color:var(--deep); background:var(--lime); clip-path:polygon(0 0,100% 0,82% 100%,0 100%); font-size:14px; }
    .brand-text { font-size:16px; line-height:1.2; }
    .main-nav { display:flex; align-items:center; gap:7px; flex:1; }
    .nav-link { position:relative; padding:10px 13px; color:#756b7b; font-size:14px; font-weight:700; }
    .nav-link:hover,.nav-link.active { color:var(--ink); }
    .nav-link.active:after { content:""; position:absolute; height:3px; width:22px; left:13px; bottom:1px; background:var(--lime); }
    .stage-track { display:flex; align-items:center; gap:5px; padding:5px; border:1px solid var(--line); background:var(--mist); }
    .stage { padding:5px 9px; color:#918697; font-size:11px; font-weight:800; }
    .stage.current { color:var(--deep); background:var(--lime); }
    .nav-cta,.btn-primary { display:inline-flex; justify-content:center; align-items:center; gap:8px; background:var(--lime); color:var(--deep); border:1px solid var(--lime); padding:12px 18px; font-size:14px; font-weight:900; clip-path:polygon(7px 0,100% 0,calc(100% - 7px) 100%,0 100%); }
    .nav-cta:hover,.btn-primary:hover { background:#d9fb68; transform:translateY(-2px); box-shadow:0 8px 18px rgba(153,187,42,.2); }
    .btn-secondary { display:inline-flex; justify-content:center; align-items:center; padding:11px 17px; color:var(--plum); border:1px solid #bdb1c4; font-weight:800; font-size:14px; }
    .btn-secondary:hover { color:var(--deep); border-color:var(--coral); background:#fff4f0; }
    :focus-visible { outline:3px solid var(--coral); outline-offset:3px; }
    .hero { padding:74px 0 68px; background:var(--mist); position:relative; overflow:hidden; }
    .hero:before { content:""; position:absolute; inset:0; opacity:.28; background-image:linear-gradient(rgba(53,36,63,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(53,36,63,.08) 1px,transparent 1px); background-size:32px 32px; mask-image:linear-gradient(90deg,#000,transparent 75%); }
    .hero-grid { position:relative; display:grid; grid-template-columns:1.08fr .92fr; gap:58px; align-items:center; }
    .eyebrow,.section-kicker { display:inline-flex; align-items:center; gap:8px; color:var(--plum); font-size:12px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
    .eyebrow:before,.section-kicker:before { content:""; width:25px; height:3px; background:var(--coral); }
    h1,h2,h3,p { margin-top:0; }
    h1 { max-width:720px; margin:18px 0 20px; font-size:clamp(38px,5.4vw,72px); line-height:1.08; letter-spacing:-.075em; font-weight:950; }
    .hero-copy { max-width:650px; color:#62586b; font-size:17px; }
    .hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin:30px 0 28px; }
    .hero-stats { display:flex; flex-wrap:wrap; gap:24px; }
    .stat strong { display:block; font-size:26px; line-height:1; letter-spacing:-.06em; }
    .stat span { display:block; margin-top:7px; color:var(--muted); font-size:12px; }
    .hero-board { padding:22px; color:#fff; background:var(--deep); box-shadow:var(--shadow); border:1px solid #4b3a55; clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,0 100%); }
    .board-head { display:flex; justify-content:space-between; align-items:center; padding-bottom:18px; border-bottom:1px solid #493b50; }
    .board-title { font-size:13px; font-weight:900; }
    .live-dot { display:inline-flex; align-items:center; gap:6px; color:var(--lime); font-size:11px; font-weight:800; }
    .live-dot:before { content:""; width:7px; height:7px; border-radius:50%; background:var(--lime); }
    .search-box { display:flex; gap:8px; margin:19px 0; }
    .search-box input { flex:1; min-width:0; padding:12px 13px; color:#fff; background:#2a2131; border:1px solid #55445b; }
    .search-box button { padding:0 14px; border:0; background:var(--lime); color:var(--deep); font-weight:900; }
    .index-row { display:grid; grid-template-columns:34px 1fr auto; align-items:center; gap:12px; padding:13px 0; border-bottom:1px solid #3b3042; }
    .index-no { color:var(--coral); font-size:12px; font-weight:900; }
    .index-row b { font-size:14px; }
    .index-row small { color:#a99eae; font-size:11px; }
    .bar { height:5px; margin-top:7px; background:#493b50; }
    .bar i { display:block; height:100%; background:var(--lime); }
    .section { padding:86px 0; }
    .section.alt { background:var(--mist); }
    .section-heading { display:flex; justify-content:space-between; align-items:end; gap:28px; margin-bottom:34px; }
    h2 { margin:10px 0 0; font-size:clamp(28px,3.4vw,46px); line-height:1.15; letter-spacing:-.06em; font-weight:950; }
    .section-lead { max-width:510px; color:var(--muted); margin:0; }
    .split-intro { display:grid; grid-template-columns:.7fr 1.3fr; gap:60px; align-items:start; }
    .pain-list { display:grid; grid-template-columns:repeat(2,1fr); gap:14px; }
    .pain-card { min-height:170px; padding:22px; background:#fff; border:1px solid var(--line); border-top:4px solid var(--plum); box-shadow:var(--shadow); }
    .pain-card:nth-child(2) { border-top-color:var(--coral); transform:translateY(20px); }
    .pain-card:nth-child(3) { border-top-color:var(--lime); }
    .pain-card:nth-child(4) { border-top-color:#a889bb; transform:translateY(20px); }
    .num { color:var(--coral); font-size:12px; font-weight:950; }
    .pain-card h3 { margin:14px 0 8px; font-size:18px; }
    .pain-card p { color:var(--muted); font-size:13px; margin:0; }
    .steps { display:grid; grid-template-columns:1.15fr 1fr 1fr; gap:0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
    .step { position:relative; padding:28px 30px 28px 0; margin-right:28px; border-right:1px solid var(--line); }
    .step:last-child { border:0; margin:0; }
    .step-no { display:block; margin-bottom:22px; color:var(--coral); font-size:40px; font-weight:950; line-height:1; }
    .step h3 { margin-bottom:8px; font-size:19px; }
    .step p { margin:0; color:var(--muted); font-size:14px; }
    .news-grid { display:grid; grid-template-columns:1.3fr .7fr; gap:20px; }
    .news-list { border-top:1px solid var(--line); }
    .news-item { display:grid; grid-template-columns:75px 1fr auto; align-items:center; gap:18px; padding:19px 0; border-bottom:1px solid var(--line); }
    .news-date { color:var(--coral); font-size:12px; font-weight:900; }
    .news-item strong { font-size:15px; }
    .news-item small { display:block; color:var(--muted); font-size:12px; margin-top:3px; }
    .arrow { color:var(--plum); font-size:20px; }
    .feature-note { padding:28px; color:#fff; background:var(--plum); clip-path:polygon(0 0,100% 0,100% calc(100% - 16px),calc(100% - 16px) 100%,0 100%); }
    .feature-note h3 { font-size:23px; margin-bottom:13px; }
    .feature-note p { color:#d5cbd9; font-size:14px; }
    .mini-tag { display:inline-block; padding:4px 8px; margin-bottom:19px; color:var(--deep); background:var(--lime); font-size:11px; font-weight:900; }
    .vertical-flow { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; overflow:hidden; }
    .vertical-card { min-height:225px; padding:20px; color:#fff; background:var(--deep); border:1px solid #47374e; position:relative; }
    .vertical-card:nth-child(2) { background:#4a3049; }
    .vertical-card:nth-child(3) { background:#6a3c43; }
    .vertical-card:nth-child(4) { background:#312538; }
    .vertical-card:after { content:""; position:absolute; width:58px; height:4px; left:20px; bottom:20px; background:var(--lime); }
    .vertical-card h3 { margin:42px 0 9px; font-size:17px; }
    .vertical-card p { color:#d7cbd9; font-size:13px; margin:0; }
    .vertical-card .mark { color:var(--lime); font-size:12px; font-weight:900; }
    .collections { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
    .collection { padding:24px; border:1px solid var(--line); background:#fff; box-shadow:var(--shadow); }
    .collection-top { display:flex; justify-content:space-between; align-items:center; }
    .collection h3 { margin:22px 0 8px; font-size:20px; }
    .collection p { color:var(--muted); font-size:13px; margin-bottom:20px; }
    .count { color:var(--plum); font-size:25px; font-weight:950; }
    .faq-grid { display:grid; grid-template-columns:.75fr 1.25fr; gap:60px; }
    .faq-list { border-top:1px solid var(--line); }
    details { border-bottom:1px solid var(--line); padding:18px 0; }
    summary { cursor:pointer; list-style:none; font-size:16px; font-weight:850; display:flex; justify-content:space-between; gap:15px; }
    summary::-webkit-details-marker { display:none; }
    summary:after { content:"＋"; color:var(--coral); font-size:20px; }
    details[open] summary:after { content:"−"; }
    details p { margin:12px 28px 0 0; color:var(--muted); font-size:14px; }
    .cta { padding:58px 0; background:var(--coral); }
    .cta-inner { display:flex; align-items:center; justify-content:space-between; gap:30px; }
    .cta h2 { color:var(--deep); max-width:650px; }
    .cta p { max-width:570px; margin:13px 0 0; color:#552c32; }
    .cta .btn-primary { background:var(--deep); border-color:var(--deep); color:#fff; }
    .cta .btn-primary:hover { background:var(--plum); }
    .site-footer { padding:52px 0 24px; color:#d8ccdc; background:var(--deep); }
    .footer-grid { display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:35px; padding-bottom:42px; }
    .footer-brand { color:#fff; font-weight:950; font-size:18px; }
    .footer-copy { max-width:300px; color:#a99eae; font-size:13px; margin-top:14px; }
    .footer-title { color:var(--lime); font-size:12px; font-weight:900; letter-spacing:.1em; margin-bottom:13px; }
    .footer-link { display:block; color:#c3b7c8; font-size:13px; margin:8px 0; }
    .footer-link:hover { color:var(--lime); }
    .footer-bottom { display:flex; justify-content:space-between; gap:20px; padding-top:20px; border-top:1px solid #3c3043; color:#938695; font-size:12px; }
    @media (max-width:1024px) {
      .brand { min-width:220px; }
      .nav-wrap { gap:14px; }
      .main-nav { overflow-x:auto; white-space:nowrap; }
      .hero-grid,.split-intro,.faq-grid { grid-template-columns:1fr; gap:36px; }
      .steps { grid-template-columns:repeat(3,1fr); }
      .vertical-flow { grid-template-columns:repeat(2,1fr); }
    }
    @media (max-width:768px) {
      .container { width:min(var(--max),calc(100% - 28px)); }
      .nav-wrap { min-height:68px; flex-wrap:wrap; padding:10px 0; }
      .brand { min-width:0; flex:1; }
      .brand-text { font-size:14px; }
      .main-nav { order:3; flex-basis:100%; padding-bottom:3px; }
      .nav-cta { display:none; }
      .stage-track { margin-left:auto; }
      .hero { padding:52px 0; }
      h1 { font-size:42px; }
      .section { padding:62px 0; }
      .section-heading,.cta-inner { display:block; }
      .section-lead { margin-top:16px; }
      .pain-list,.news-grid,.collections { grid-template-columns:1fr; }
      .pain-card:nth-child(2),.pain-card:nth-child(4) { transform:none; }
      .steps { display:block; }
      .step { margin:0; padding:24px 0; border-right:0; border-bottom:1px solid var(--line); }
      .step:last-child { border-bottom:0; }
      .news-item { grid-template-columns:58px 1fr auto; gap:10px; }
      .footer-grid { grid-template-columns:1fr 1fr; }
      .cta .btn-primary { margin-top:22px; }
    }
    @media (max-width:520px) {
      .stage { padding:4px 6px; font-size:10px; }
      .hero-grid { gap:28px; }
      h1 { font-size:35px; }
      .hero-copy { font-size:15px; }
      .hero-actions { display:grid; grid-template-columns:1fr; }
      .hero-actions a { width:100%; }
      .hero-stats { gap:15px; }
      .vertical-flow { grid-template-columns:1fr; }
      .footer-grid { grid-template-columns:1fr; gap:24px; }
      .footer-bottom { display:block; }
      .footer-bottom span { display:block; margin-top:8px; }
    }

/* roulang page: category1 */
:root {
      --ink:#211b2b;
      --plum:#35243f;
      --deep:#19141f;
      --lime:#c9f34b;
      --coral:#ff765d;
      --mist:#f4f1f6;
      --paper:#fffdfb;
      --muted:#766d7d;
      --line:#e5dfe8;
      --radius:14px;
      --shadow:0 12px 30px rgba(42,27,49,.08);
      --max:1240px;
    }
    * { box-sizing:border-box; }
    html { scroll-behavior:smooth; }
    body {
      margin:0;
      color:var(--ink);
      background:var(--paper);
      font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",Arial,sans-serif;
      line-height:1.7;
      -webkit-font-smoothing:antialiased;
    }
    a { color:inherit; text-decoration:none; transition:.22s ease; }
    button,input,select { font:inherit; }
    button { cursor:pointer; }
    .container { width:min(var(--max),calc(100% - 40px)); margin:0 auto; }
    .site-header { position:sticky; top:0; z-index:30; background:rgba(255,253,251,.94); border-bottom:1px solid var(--line); backdrop-filter:blur(14px); }
    .nav-wrap { min-height:76px; display:flex; align-items:center; gap:28px; }
    .brand { display:flex; align-items:center; gap:11px; min-width:260px; font-weight:900; letter-spacing:-.04em; }
    .brand-mark { width:32px; height:32px; display:grid; place-items:center; color:var(--deep); background:var(--lime); clip-path:polygon(0 0,100% 0,82% 100%,0 100%); font-size:14px; }
    .brand-text { font-size:16px; line-height:1.2; }
    .main-nav { display:flex; align-items:center; gap:7px; flex:1; }
    .nav-link { position:relative; padding:10px 13px; color:#756b7b; font-size:14px; font-weight:700; }
    .nav-link:hover,.nav-link.active { color:var(--ink); }
    .nav-link.active:after { content:""; position:absolute; height:3px; width:22px; left:13px; bottom:1px; background:var(--lime); }
    .stage-track { display:flex; align-items:center; gap:5px; padding:5px; border:1px solid var(--line); background:var(--mist); }
    .stage { padding:5px 9px; color:#918697; font-size:11px; font-weight:800; }
    .stage.current { color:var(--deep); background:var(--lime); }
    .nav-cta,.btn-primary { display:inline-flex; justify-content:center; align-items:center; gap:8px; background:var(--lime); color:var(--deep); border:1px solid var(--lime); padding:12px 18px; font-size:14px; font-weight:900; clip-path:polygon(7px 0,100% 0,calc(100% - 7px) 100%,0 100%); }
    .nav-cta:hover,.btn-primary:hover { background:#d9fb68; transform:translateY(-2px); box-shadow:0 8px 18px rgba(153,187,42,.2); }
    .btn-secondary { display:inline-flex; justify-content:center; align-items:center; padding:11px 17px; color:var(--plum); border:1px solid #bdb1c4; font-weight:800; font-size:14px; }
    .btn-secondary:hover { color:var(--deep); border-color:var(--coral); background:#fff4f0; }
    .page-head { padding:48px 0 42px; background:var(--mist); border-bottom:1px solid var(--line); }
    .crumbs { display:flex; gap:9px; align-items:center; color:var(--muted); font-size:13px; margin-bottom:25px; }
    .crumbs a:hover { color:var(--plum); }
    .head-grid { display:grid; grid-template-columns:1fr 330px; gap:40px; align-items:end; }
    .eyebrow,.section-kicker { display:inline-flex; align-items:center; gap:8px; color:var(--plum); font-size:12px; font-weight:900; letter-spacing:.12em; }
    .eyebrow:before,.section-kicker:before { content:""; width:25px; height:3px; background:var(--coral); }
    h1,h2,h3,p { margin-top:0; }
    h1 { max-width:780px; margin:14px 0 13px; font-size:clamp(32px,5vw,58px); line-height:1.13; letter-spacing:-.06em; }
    .head-summary { max-width:720px; color:var(--muted); font-size:16px; margin:0; }
    .status-panel { padding:20px; color:#fff; background:var(--deep); border:1px solid #4b3a55; clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,0 100%); }
    .status-panel strong { display:block; color:var(--lime); font-size:31px; line-height:1.1; }
    .status-panel span { color:#cfc3d3; font-size:13px; }
    .status-line { height:5px; margin-top:17px; background:linear-gradient(90deg,var(--lime) 68%,#44364a 68%); }
    .section { padding:72px 0; }
    .section.alt { background:var(--mist); }
    .section-heading { display:flex; justify-content:space-between; align-items:end; gap:28px; margin-bottom:27px; }
    .section-heading h2 { margin:10px 0 0; font-size:30px; letter-spacing:-.04em; line-height:1.2; }
    .section-lead { max-width:500px; color:var(--muted); margin:0; font-size:14px; }
    .filter-panel { padding:20px; background:#fff; border:1px solid var(--line); box-shadow:var(--shadow); }
    .filter-row { display:grid; grid-template-columns:1.5fr .75fr .75fr auto; gap:10px; }
    .field { min-width:0; padding:12px 13px; color:var(--ink); background:#fff; border:1px solid #cfc6d3; outline:none; }
    .field:focus { border-color:var(--plum); box-shadow:0 0 0 3px rgba(53,36,63,.12); }
    .filter-note { margin:13px 0 0; color:var(--muted); font-size:12px; }
    .directory-layout { display:grid; grid-template-columns:minmax(0,1fr) 290px; gap:25px; align-items:start; margin-top:27px; }
    .entry-list { border-top:2px solid var(--deep); }
    .entry { display:grid; grid-template-columns:52px minmax(0,1fr) 115px 105px; gap:17px; align-items:center; padding:22px 0; border-bottom:1px solid var(--line); }
    .entry:hover { background:#fff8f5; }
    .entry-no { color:var(--coral); font-weight:900; font-size:14px; }
    .entry h3 { margin:0 0 5px; font-size:17px; letter-spacing:-.02em; }
    .entry p { margin:0; color:var(--muted); font-size:13px; line-height:1.55; }
    .tags { display:flex; flex-wrap:wrap; gap:5px; margin-bottom:7px; }
    .tag { display:inline-block; padding:3px 7px; color:var(--plum); background:#eee8f0; font-size:11px; font-weight:800; }
    .tag.hot { color:#8a2919; background:#ffe3dc; }
    .tag.live { color:#344900; background:#e8f8b8; }
    .entry-time { color:var(--muted); font-size:12px; }
    .entry-btn { justify-self:end; padding:9px 12px; color:var(--plum); border:1px solid #c7bdca; font-size:12px; font-weight:900; }
    .entry-btn:hover { color:var(--deep); border-color:var(--coral); background:#fff1ec; }
    .side-stack { display:grid; gap:16px; }
    .side-card { padding:20px; border:1px solid var(--line); background:#fff; }
    .side-card.dark { color:#fff; background:var(--plum); border-color:var(--plum); }
    .side-card h3 { margin:0 0 13px; font-size:18px; }
    .side-card p { color:var(--muted); font-size:13px; margin:0; }
    .side-card.dark p { color:#d7cbd9; }
    .side-link { display:flex; justify-content:space-between; padding:11px 0; border-bottom:1px solid var(--line); color:var(--plum); font-size:13px; font-weight:800; }
    .side-link:last-child { border-bottom:0; }
    .side-link:hover { color:var(--coral); padding-left:4px; }
    .side-card.dark .side-link { color:var(--lime); border-color:#5a4661; }
    .pagination { display:flex; justify-content:center; gap:8px; margin-top:27px; }
    .page-number { width:34px; height:34px; display:grid; place-items:center; border:1px solid var(--line); color:var(--muted); font-size:13px; }
    .page-number.active { color:var(--deep); background:var(--lime); border-color:var(--lime); font-weight:900; }
    .guide-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; }
    .guide-card { padding:23px; background:var(--paper); border:1px solid var(--line); position:relative; }
    .guide-card:before { content:""; display:block; width:35px; height:4px; background:var(--coral); margin-bottom:24px; }
    .guide-card:nth-child(2):before { background:var(--lime); }
    .guide-card:nth-child(3):before { background:var(--plum); }
    .guide-card b { color:var(--muted); font-size:12px; }
    .guide-card h3 { margin:8px 0; font-size:18px; }
    .guide-card p { color:var(--muted); font-size:13px; margin:0; }
    .faq-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:45px; }
    .faq-list { border-top:1px solid var(--line); }
    details { padding:17px 0; border-bottom:1px solid var(--line); }
    summary { cursor:pointer; list-style:none; display:flex; justify-content:space-between; gap:20px; font-weight:900; }
    summary::-webkit-details-marker { display:none; }
    summary:after { content:"+"; color:var(--coral); font-size:22px; line-height:1; }
    details[open] summary:after { content:"−"; }
    details p { margin:10px 25px 0 0; color:var(--muted); font-size:14px; }
    .cta { padding:50px 0; color:#fff; background:var(--deep); }
    .cta-inner { display:flex; align-items:center; justify-content:space-between; gap:30px; }
    .cta h2 { margin:0 0 8px; font-size:32px; letter-spacing:-.04em; }
    .cta p { margin:0; color:#cfc3d3; font-size:14px; }
    .site-footer { padding:48px 0 20px; color:#fff; background:var(--deep); border-top:1px solid #403247; }
    .footer-grid { display:grid; grid-template-columns:1.5fr repeat(3,1fr); gap:35px; }
    .footer-brand { display:inline-block; color:var(--lime); font-size:18px; font-weight:900; }
    .footer-copy { max-width:280px; color:#bfb2c4; font-size:13px; margin:15px 0 0; }
    .footer-title { margin-bottom:13px; color:var(--coral); font-size:12px; font-weight:900; }
    .footer-link { display:block; width:max-content; max-width:100%; margin:7px 0; color:#d1c6d4; font-size:13px; }
    .footer-link:hover { color:var(--lime); transform:translateX(3px); }
    .footer-bottom { display:flex; justify-content:space-between; gap:20px; margin-top:42px; padding-top:18px; color:#8f8295; border-top:1px solid #3a2e40; font-size:12px; }
    @media (max-width:1024px) {
      .brand { min-width:220px; }
      .nav-wrap { gap:15px; }
      .directory-layout { grid-template-columns:1fr; }
      .side-stack { grid-template-columns:repeat(2,1fr); }
    }
    @media (max-width:768px) {
      .container { width:min(var(--max),calc(100% - 28px)); }
      .nav-wrap { min-height:68px; flex-wrap:wrap; padding:10px 0; }
      .brand { min-width:0; flex:1; }
      .main-nav { order:3; width:100%; overflow-x:auto; flex:none; }
      .stage-track { display:none; }
      .nav-cta { padding:9px 12px; }
      .head-grid,.faq-grid { grid-template-columns:1fr; gap:24px; }
      .page-head { padding:34px 0; }
      .section { padding:54px 0; }
      .filter-row { grid-template-columns:1fr 1fr; }
      .filter-row .field:first-child { grid-column:1 / -1; }
      .entry { grid-template-columns:35px minmax(0,1fr) 88px; gap:10px; }
      .entry-time { grid-column:2; }
      .entry-btn { grid-column:3; grid-row:1 / span 2; }
      .guide-grid,.footer-grid { grid-template-columns:1fr 1fr; }
      .cta-inner { align-items:flex-start; flex-direction:column; }
    }
    @media (max-width:520px) {
      h1 { font-size:35px; }
      .filter-row { grid-template-columns:1fr; }
      .filter-row .field:first-child { grid-column:auto; }
      .entry { grid-template-columns:30px 1fr; }
      .entry-btn { grid-column:2; grid-row:auto; justify-self:start; margin-top:8px; }
      .entry-time { grid-column:2; }
      .side-stack,.guide-grid,.footer-grid { grid-template-columns:1fr; }
      .section-heading { display:block; }
      .section-lead { margin-top:13px; }
      .footer-bottom { display:block; }
      .footer-bottom span { display:block; margin-top:6px; }
    }
