/* roulang page: index */
:root{
      --bg:#f5f3ee;
      --paper:#fffdfa;
      --ink:#202326;
      --muted:#6d716f;
      --line:#d9d7d0;
      --accent:#c46245;
      --accent-dark:#8e3e2c;
      --sage:#aab8a5;
      --soft:#ece8df;
      --dark:#242a29;
      --radius:24px;
      --small-radius:14px;
      --shadow:0 18px 48px rgba(38,39,35,.08);
      --ease:cubic-bezier(.2,.7,.2,1);
    }
    *,*:before,*:after{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;background:var(--bg);color:var(--ink);
      font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;
      font-size:16px;line-height:1.75;
      -webkit-font-smoothing:antialiased;
    }
    a{color:inherit;text-decoration:none;transition:color .25s var(--ease),background .25s var(--ease),border .25s var(--ease),transform .25s var(--ease)}
    a:hover{color:var(--accent-dark)}
    img{display:block;max-width:100%;height:auto}
    button,input{font:inherit}
    button{cursor:pointer}
    :focus-visible{outline:3px solid rgba(196,98,69,.35);outline-offset:4px}
    .container{width:min(1160px,calc(100% - 48px));margin:0 auto}
    .eyebrow{display:inline-flex;align-items:center;gap:9px;color:var(--accent-dark);font-size:12px;letter-spacing:.14em;font-weight:800}
    .eyebrow:before{content:"";width:26px;height:1px;background:var(--accent)}
    .section{padding:108px 0}
    .section-head{max-width:680px;margin-bottom:48px}
    .section-head h2{font-size:clamp(30px,4vw,52px);line-height:1.15;letter-spacing:-.045em;margin:14px 0 18px;font-weight:800}
    .section-head p{color:var(--muted);margin:0;max-width:620px}
    .site-header{
      position:sticky;top:0;z-index:20;background:rgba(245,243,238,.94);
      border-bottom:1px solid rgba(217,215,208,.9);backdrop-filter:blur(12px)
    }
    .nav-shell{height:78px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}
    .nav-side{display:flex;align-items:center;gap:28px}
    .nav-side.right{justify-content:flex-end}
    .nav-link{position:relative;font-size:14px;color:#555b58;padding:8px 0}
    .nav-link:after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:2px;background:var(--accent);transition:right .25s var(--ease)}
    .nav-link:hover:after,.nav-link.active:after{right:0}
    .nav-link.active{color:var(--ink);font-weight:700}
    .brand{font-weight:900;letter-spacing:-.06em;font-size:19px;white-space:nowrap}
    .brand em{font-style:normal;color:var(--accent)}
    .menu-toggle{display:none;background:none;border:1px solid var(--line);border-radius:10px;width:42px;height:40px;color:var(--ink)}
    .hero{padding:78px 0 70px}
    .hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:22px;align-items:stretch}
    .hero-main,.hero-tile,.hero-bar{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow)}
    .hero-main{padding:56px 54px;min-height:470px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative}
    .hero-main:after{content:"";position:absolute;width:220px;height:220px;border:1px solid rgba(196,98,69,.18);border-radius:50%;right:-75px;bottom:-75px}
    .hero h1{font-size:clamp(42px,6.2vw,78px);line-height:1.04;letter-spacing:-.07em;margin:23px 0 25px;max-width:670px;position:relative;z-index:1}
    .hero h1 span{color:var(--accent)}
    .hero-intro{font-size:17px;color:var(--muted);max-width:590px;margin:0}
    .hero-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:36px}
    .button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:999px;border:1px solid transparent;font-weight:750;font-size:14px;transition:all .25s var(--ease)}
    .button.primary{background:var(--accent);color:#fff}
    .button.primary:hover{background:var(--accent-dark);transform:translateY(-2px);box-shadow:0 10px 20px rgba(142,62,44,.18)}
    .button.secondary{background:transparent;border-color:var(--line);color:var(--ink)}
    .button.secondary:hover{background:var(--soft);border-color:#c9c5bb;transform:translateY(-2px)}
    .button:active{transform:translateY(0)}
    .hero-side{display:grid;grid-template-rows:1fr 1fr;gap:22px}
    .hero-tile{padding:30px;position:relative;overflow:hidden}
    .hero-tile.dark{background:var(--dark);color:#f7f3eb;border-color:var(--dark)}
    .tile-number{font-size:12px;letter-spacing:.16em;color:var(--accent);font-weight:800}
    .hero-tile h3{font-size:25px;line-height:1.25;margin:32px 0 9px;letter-spacing:-.04em}
    .hero-tile p{font-size:14px;color:var(--muted);margin:0}
    .dark p{color:#b8c0ba}
    .index-list{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
    .index-list span,.tag{display:inline-flex;padding:5px 10px;border:1px solid var(--line);border-radius:999px;font-size:12px;color:var(--muted)}
    .dark .index-list span{border-color:#55605b;color:#dce2db}
    .hero-bar{grid-column:1/-1;padding:18px 25px;display:flex;justify-content:space-between;align-items:center;background:var(--soft);box-shadow:none}
    .hero-bar strong{font-size:14px}.hero-bar small{color:var(--muted)}
    .hero-bar a{font-size:13px;font-weight:800;color:var(--accent-dark)}
    .matrix{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
    .matrix-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr 1fr;gap:0}
    .matrix-item{padding:30px 25px;border-left:1px solid var(--line);min-height:210px}
    .matrix-item:first-child{border-left:0}
    .matrix-item .num{font-size:28px;color:var(--accent);font-weight:800}
    .matrix-item h3{font-size:20px;line-height:1.3;margin:24px 0 9px}
    .matrix-item p{font-size:14px;color:var(--muted);margin:0}
    .matrix-item a{display:inline-block;margin-top:18px;font-size:13px;font-weight:800;color:var(--accent-dark)}
    .scenes{background:#e9ede6}
    .scene-track{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
    .scene-card{padding:30px;background:rgba(255,253,250,.78);border:1px solid rgba(174,181,169,.65);border-radius:var(--radius);transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
    .scene-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
    .scene-card h3{font-size:23px;line-height:1.3;margin:18px 0 12px}
    .scene-card p{color:var(--muted);font-size:14px;margin:0 0 22px}
    .scene-card .route{border-top:1px solid var(--line);padding-top:15px;color:var(--accent-dark);font-size:13px;font-weight:700}
    .cases-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:22px}
    .case-feature,.case-list{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
    .case-feature{padding:38px}
    .case-feature h3{font-size:31px;line-height:1.25;letter-spacing:-.04em;margin:20px 0 12px}
    .case-feature p{color:var(--muted);max-width:610px}
    .case-meta{display:flex;gap:9px;flex-wrap:wrap;margin:20px 0}
    .case-list{padding:18px 25px;box-shadow:none}
    .case-row{padding:22px 0;border-bottom:1px solid var(--line)}
    .case-row:last-child{border-bottom:0}
    .case-row strong{display:block;font-size:16px;margin-bottom:6px}
    .case-row span{font-size:13px;color:var(--muted)}
    .updates{padding-top:35px}
    .update-panel{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:stretch}
    .update-list,.update-feature{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}
    .update-list{padding:11px 28px}
    .update-row{display:flex;justify-content:space-between;gap:18px;align-items:center;border-bottom:1px solid var(--line);padding:21px 0}
    .update-row:last-child{border-bottom:0}
    .update-row strong{font-size:15px}.update-row small{color:var(--muted);white-space:nowrap}
    .update-feature{padding:34px;background:var(--dark);color:#fff}
    .update-feature h3{font-size:27px;line-height:1.25;margin:22px 0 13px}
    .update-feature p{color:#c0c7c1;font-size:14px;margin-bottom:24px}
    .plans{background:var(--dark);color:#fff}
    .plans .section-head p{color:#bfc6c0}
    .plan-wrap{display:grid;grid-template-columns:1.25fr .75fr;gap:20px}
    .plan-main,.plan-side{border:1px solid #4c5651;border-radius:var(--radius);padding:34px}
    .plan-main{background:#303834}
    .plan-main h3{font-size:30px;margin:13px 0 8px}
    .plan-main p,.plan-side p{color:#bac2bc;font-size:14px}
    .plan-points{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:28px 0}
    .plan-point{border-top:1px solid #52605a;padding-top:13px;font-size:13px;color:#d8ded8}
    .plan-side{display:flex;flex-direction:column;justify-content:space-between}
    .plan-side h3{font-size:20px;margin:0 0 12px}
    .plan-side ul{list-style:none;margin:20px 0;padding:0}
    .plan-side li{padding:10px 0;border-bottom:1px solid #46514c;color:#d5dcd5;font-size:14px}
    .plan-side li:before{content:"＋";color:var(--accent);margin-right:8px}
    .faq-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:70px}
    .faq-grid h2{font-size:38px;line-height:1.15;letter-spacing:-.05em;margin:15px 0}
    .faq-grid > div:first-child p{color:var(--muted)}
    .accordion{background:none;margin:0}
    .accordion-item{border:0;border-bottom:1px solid var(--line);background:transparent}
    .accordion-title{padding:20px 35px 20px 0;background:none!important;color:var(--ink);font-size:16px;font-weight:750}
    .accordion-title:hover{color:var(--accent-dark)}
    .accordion-title:before{right:4px;color:var(--accent)}
    .accordion-content{background:transparent;border:0;padding:0 35px 20px 0;color:var(--muted);font-size:14px}
    .cta{padding:34px 0 110px}
    .cta-box{background:var(--accent);color:#fff;border-radius:var(--radius);padding:45px 52px;display:flex;align-items:center;justify-content:space-between;gap:30px}
    .cta-box h2{font-size:clamp(27px,4vw,43px);line-height:1.15;margin:0 0 10px;letter-spacing:-.05em}
    .cta-box p{margin:0;color:#fae9e2;max-width:610px}
    .cta-box .button{background:#fff;color:var(--accent-dark);flex:none}
    .cta-box .button:hover{background:#f5e4dc}
    footer{background:#1f2523;color:#dce1db;padding:48px 0 24px}
    .footer-top{display:flex;justify-content:space-between;gap:30px;padding-bottom:40px;border-bottom:1px solid #3d4641}
    .footer-brand{font-size:20px;font-weight:850;letter-spacing:-.05em}
    .footer-brand em{color:#e38b70;font-style:normal}
    .footer-note{color:#9da8a0;font-size:13px;max-width:370px;margin-top:13px}
    .footer-nav{display:flex;gap:25px;align-items:flex-start}
    .footer-nav a{font-size:13px;color:#c6cec6}.footer-nav a:hover{color:#f0a18a}
    .copyright{padding-top:20px;color:#859188;font-size:12px;display:flex;justify-content:space-between;gap:15px}
    @media(max-width:1024px){
      .hero-main{padding:42px 38px}.matrix-grid{grid-template-columns:repeat(2,1fr)}
      .matrix-item:nth-child(3){border-left:0;border-top:1px solid var(--line)}
      .matrix-item:nth-child(4){border-top:1px solid var(--line)}
    }
    @media(max-width:768px){
      .container{width:min(100% - 32px,620px)}.section{padding:76px 0}
      .nav-shell{height:68px;display:flex;justify-content:space-between}.menu-toggle{display:block;order:-1}
      .brand{font-size:16px}.nav-side{display:none}.nav-shell.menu-open .nav-side{display:flex;position:absolute;left:16px;right:16px;top:76px;background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:14px 20px;box-shadow:var(--shadow);flex-direction:column;align-items:flex-start;gap:4px}
      .nav-shell.menu-open .nav-side.right{top:156px}.hero{padding-top:42px}.hero-grid,.cases-grid,.update-panel,.plan-wrap,.faq-grid{grid-template-columns:1fr;gap:16px}
      .hero-main{min-height:0;padding:36px 27px}.hero-side{grid-template-rows:auto auto}.hero-bar{align-items:flex-start;flex-direction:column;gap:9px}
      .hero h1{font-size:clamp(40px,12vw,62px)}.matrix-grid,.scene-track{grid-template-columns:1fr}
      .matrix-item{border-left:0!important;border-top:1px solid var(--line)}.matrix-item:first-child{border-top:0}
      .plan-points{grid-template-columns:1fr}.cta-box{padding:32px 27px;display:block}.cta-box .button{margin-top:25px}
      .footer-top,.copyright{display:block}.footer-nav{margin-top:25px;flex-wrap:wrap}.copyright span{display:block;margin-top:8px}
    }
    @media(max-width:520px){
      .hero-actions{display:grid}.hero-actions .button{width:100%}.section-head{margin-bottom:31px}
      .case-feature,.case-list,.update-list,.update-feature,.plan-main,.plan-side{padding:25px}.section-head h2{font-size:34px}
    }
    @media(prefers-reduced-motion:reduce){
      *,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
    }

/* roulang page: category1 */
:root{
      --bg:#f5f3ee;
      --paper:#fffdfa;
      --ink:#202326;
      --muted:#6d716f;
      --line:#d9d7d0;
      --accent:#c46245;
      --accent-dark:#8e3e2c;
      --sage:#aab8a5;
      --soft:#ece8df;
      --dark:#242a29;
      --radius:24px;
      --small-radius:14px;
      --shadow:0 18px 48px rgba(38,39,35,.08);
      --ease:cubic-bezier(.2,.7,.2,1);
    }
    *,*::before,*::after{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;background:var(--bg);color:var(--ink);
      font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;
      font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased
    }
    a{color:inherit;text-decoration:none;transition:color .25s var(--ease),background .25s var(--ease),border .25s var(--ease),transform .25s var(--ease)}
    a:hover{color:var(--accent-dark)}
    img{display:block;max-width:100%;height:auto}
    button,input{font:inherit}
    button{cursor:pointer}
    .container{width:min(1160px,calc(100% - 48px));margin:0 auto}
    .eyebrow{display:inline-flex;align-items:center;gap:9px;color:var(--accent-dark);font-size:12px;letter-spacing:.14em;font-weight:800}
    .eyebrow:before{content:"";width:26px;height:1px;background:var(--accent)}
    .section{padding:105px 0}
    .section-head{max-width:700px;margin-bottom:46px}
    .section-head h2{font-size:clamp(31px,4vw,52px);line-height:1.15;letter-spacing:-.045em;margin:14px 0 17px;font-weight:800}
    .section-head p{color:var(--muted);margin:0;max-width:640px}
    .site-header{position:sticky;top:0;z-index:20;background:rgba(245,243,238,.94);border-bottom:1px solid rgba(217,215,208,.9);backdrop-filter:blur(12px)}
    .nav-shell{height:78px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}
    .nav-side{display:flex;align-items:center;gap:28px}
    .nav-side.right{justify-content:flex-end}
    .nav-link{position:relative;font-size:14px;color:#555b58;padding:8px 0}
    .nav-link:after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:2px;background:var(--accent);transition:right .25s var(--ease)}
    .nav-link:hover:after,.nav-link.active:after{right:0}
    .nav-link.active{color:var(--ink);font-weight:700}
    .brand,.footer-brand{font-weight:900;letter-spacing:-.06em;font-size:19px;white-space:nowrap}
    .brand span,.footer-brand span{color:var(--accent)}
    .menu-toggle{display:none;background:none;border:1px solid var(--line);border-radius:10px;width:42px;height:40px;color:var(--ink)}
    .intro{padding:82px 0 55px}
    .intro-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:28px;align-items:end}
    .intro h1{font-size:clamp(42px,6vw,76px);line-height:1.04;letter-spacing:-.075em;margin:20px 0 23px;max-width:720px}
    .intro h1 span{color:var(--accent)}
    .intro-copy{font-size:17px;color:var(--muted);max-width:650px;margin:0}
    .index-panel{background:var(--dark);color:#f8f4ec;border-radius:var(--radius);padding:32px;min-height:250px;position:relative;overflow:hidden}
    .index-panel:after{content:"01";position:absolute;right:22px;bottom:-22px;font-size:150px;line-height:1;font-weight:900;color:rgba(255,255,255,.06)}
    .panel-label{font-size:12px;letter-spacing:.12em;color:#cbd4ca;font-weight:800}
    .index-panel h2{font-size:28px;line-height:1.25;margin:39px 0 20px;letter-spacing:-.04em;position:relative;z-index:1}
    .panel-meta{display:flex;gap:9px;flex-wrap:wrap;position:relative;z-index:1}
    .panel-meta span,.tag{display:inline-flex;padding:5px 11px;border:1px solid var(--line);border-radius:999px;font-size:12px;color:var(--muted)}
    .panel-meta span{border-color:#59635d;color:#dfe5dc}
    .filter-bar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;display:flex;justify-content:space-between;align-items:center;gap:20px}
    .filter-title{font-size:13px;font-weight:800}
    .filter-list{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}
    .filter-list a{border:1px solid var(--line);border-radius:999px;padding:6px 13px;font-size:12px;color:var(--muted)}
    .filter-list a:hover,.filter-list a.active{background:var(--accent);border-color:var(--accent);color:#fff}
    .content-area{padding:85px 0}
    .content-grid{display:grid;grid-template-columns:1.28fr .72fr;gap:24px;align-items:start}
    .feature-card,.mini-card,.side-note,.route-card,.faq-wrap,.cta-box{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius)}
    .feature-card{padding:40px;min-height:430px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:var(--shadow)}
    .feature-card h2{font-size:34px;line-height:1.2;letter-spacing:-.05em;margin:22px 0 14px}
    .feature-card p,.mini-card p,.side-note p,.route-card p{color:var(--muted);margin:0}
    .card-top{display:flex;justify-content:space-between;gap:20px;align-items:center}
    .number{color:var(--accent);font-size:25px;font-weight:900;letter-spacing:-.04em}
    .card-footer{border-top:1px solid var(--line);padding-top:20px;margin-top:30px;display:flex;justify-content:space-between;align-items:center;gap:18px}
    .card-footer small,.mini-card small{font-size:12px;color:var(--muted)}
    .text-link{color:var(--accent-dark);font-size:13px;font-weight:800}
    .mini-stack{display:grid;gap:14px}
    .mini-card{padding:25px;min-height:160px;transition:transform .3s var(--ease),box-shadow .3s var(--ease),border .3s var(--ease)}
    .mini-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#c4bfb4}
    .mini-card h3{font-size:20px;line-height:1.3;margin:15px 0 7px}
    .side-note{margin-top:24px;padding:28px;background:var(--soft);border-color:transparent}
    .side-note h3{font-size:20px;margin:0 0 10px}
    .route-section{background:var(--dark);color:#f8f4ec}
    .route-section .eyebrow{color:#e4b7a8}
    .route-section .eyebrow:before{background:#d8876d}
    .route-section .section-head p{color:#b8c0ba}
    .route-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid #4a5350;border-bottom:1px solid #4a5350}
    .route-card{background:transparent;border:0;border-left:1px solid #4a5350;border-radius:0;padding:28px 24px;min-height:235px}
    .route-card:first-child{border-left:0}
    .route-card .number{color:#dd8b72}
    .route-card h3{font-size:21px;line-height:1.3;margin:28px 0 10px}
    .route-card p{color:#b8c0ba;font-size:14px}
    .faq-section{padding-top:95px}
    .faq-wrap{padding:12px 28px}
    .accordion{background:transparent;margin:0}
    .accordion-title{border-bottom:1px solid var(--line);padding:22px 36px 22px 0;color:var(--ink);font-size:16px;font-weight:750}
    .accordion-title:hover{background:transparent;color:var(--accent-dark)}
    .accordion-title:before{color:var(--accent);font-weight:900}
    .accordion-item:last-child .accordion-title{border-bottom:0}
    .accordion-content{border:0;background:var(--paper);padding:0 36px 23px 0;color:var(--muted);font-size:14px}
    .cta-section{padding:35px 0 108px}
    .cta-box{padding:38px 42px;display:flex;justify-content:space-between;align-items:center;gap:28px;background:var(--soft)}
    .cta-box h2{font-size:clamp(26px,3vw,40px);line-height:1.2;letter-spacing:-.05em;margin:0 0 10px}
    .cta-box p{color:var(--muted);margin:0;max-width:650px}
    .button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:999px;border:1px solid transparent;font-weight:750;font-size:14px;transition:all .25s var(--ease);white-space:nowrap}
    .button.primary{background:var(--accent);color:#fff}
    .button.primary:hover{background:var(--accent-dark);transform:translateY(-2px);box-shadow:0 10px 20px rgba(142,62,44,.18)}
    .button.secondary{background:transparent;border-color:var(--line);color:var(--ink)}
    .button.secondary:hover{background:var(--soft);border-color:#c9c5bb;transform:translateY(-2px)}
    .button:focus,.nav-link:focus,.filter-list a:focus,.text-link:focus,.menu-toggle:focus{outline:3px solid rgba(196,98,69,.28);outline-offset:4px}
    .button:active{transform:translateY(0)}
    footer{border-top:1px solid var(--line);padding:38px 0 24px;background:#efede7}
    .footer-top{display:flex;justify-content:space-between;gap:30px;align-items:flex-start}
    .footer-note{color:var(--muted);font-size:13px;max-width:430px;margin:12px 0 0}
    .footer-nav{display:flex;gap:23px;flex-wrap:wrap;font-size:13px;color:var(--muted)}
    .footer-nav a:hover{color:var(--accent-dark)}
    .copyright{border-top:1px solid var(--line);margin-top:32px;padding-top:18px;display:flex;justify-content:space-between;gap:16px;color:#858782;font-size:12px}
    @media(max-width:1024px){
      .intro-grid,.content-grid{grid-template-columns:1fr}
      .index-panel{min-height:210px}
      .route-grid{grid-template-columns:repeat(2,1fr)}
      .route-card:nth-child(3){border-left:0;border-top:1px solid #4a5350}
      .route-card:nth-child(4){border-top:1px solid #4a5350}
    }
    @media(max-width:768px){
      .container{width:min(100% - 32px,600px)}
      .nav-shell{height:68px;grid-template-columns:42px 1fr 42px;gap:10px}
      .brand{text-align:center;font-size:16px;overflow:hidden;text-overflow:ellipsis}
      .menu-toggle{display:block}
      .nav-side{display:none}
      .nav-shell:after{content:"";width:42px;height:40px}
      .menu-toggle[aria-expanded="true"] + .nav-side{display:flex;position:absolute;top:68px;left:16px;right:16px;flex-direction:column;align-items:stretch;gap:0;padding:12px 18px;background:var(--paper);border:1px solid var(--line);border-radius:0 0 16px 16px;box-shadow:var(--shadow)}
      .menu-toggle[aria-expanded="true"] + .nav-side .nav-link{padding:12px 0}
      .intro{padding:62px 0 42px}
      .section,.content-area{padding:72px 0}
      .intro h1{font-size:clamp(40px,12vw,64px)}
      .filter-bar{display:block}
      .filter-list{justify-content:flex-start;margin-top:13px;overflow:auto;flex-wrap:nowrap;padding-bottom:3px}
      .filter-list a{white-space:nowrap}
      .feature-card{padding:28px;min-height:390px}
      .route-grid{grid-template-columns:1fr}
      .route-card,.route-card:nth-child(3),.route-card:nth-child(4){border-left:0;border-top:1px solid #4a5350}
      .route-card:first-child{border-top:0}
      .cta-box,.footer-top,.copyright{display:block}
      .cta-box .button{margin-top:24px}
      .footer-nav{margin-top:25px}
      .copyright span{display:block;margin-top:8px}
    }
    @media(max-width:520px){
      .card-top{align-items:flex-start;flex-direction:column;gap:8px}
      .card-footer{align-items:flex-start;flex-direction:column}
      .cta-box{padding:28px 24px}
      .faq-wrap{padding:8px 20px}
      .accordion-title{font-size:15px}
    }
    @media(prefers-reduced-motion:reduce){
      *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}
    }
