/* roulang page: index */
:root{
      --bg-base:#f5f3ee;
      --bg-elevated:#fffefa;
      --ink:#1e2922;
      --ink-muted:#657068;
      --forest:#365c49;
      --forest-dark:#244333;
      --moss:#92a87d;
      --clay:#b96a4d;
      --clay-dark:#9f523b;
      --sand:#d9d1bf;
      --line:rgba(30,41,34,.14);
      --line-strong:rgba(30,41,34,.25);
      --radius:20px;
      --radius-lg:28px;
      --shadow:0 18px 50px rgba(39,47,38,.10);
      --shadow-hover:0 22px 46px rgba(30,41,34,.16);
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;background:var(--bg-base);color:var(--ink);
      font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",Arial,sans-serif;
      font-size:16px;line-height:1.78;letter-spacing:.01em;
    }
    body:before{
      content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.34;
      background-image:radial-gradient(circle at 15% 10%,rgba(146,168,125,.18) 0 1px,transparent 1.5px),radial-gradient(circle at 85% 73%,rgba(185,106,77,.13) 0 1px,transparent 1.5px);
      background-size:32px 32px,46px 46px;
    }
    a{color:inherit;text-decoration:none;transition:color .22s ease}
    a:hover{color:var(--forest)}
    img{max-width:100%;display:block}
    button,input,select,textarea{font:inherit}
    button{border:0}
    :focus-visible{outline:3px solid rgba(54,92,73,.42);outline-offset:3px}
    .site-container{max-width:1240px;margin:0 auto;padding:0 24px}
    .age-strip{
      min-height:39px;background:var(--forest-dark);color:#e9eee6;
      font-size:13px;letter-spacing:.02em;
    }
    .age-strip .inner{min-height:39px;display:flex;align-items:center;justify-content:center;gap:12px;text-align:center}
    .age-strip button{background:none;color:#e9eee6;text-decoration:underline;text-underline-offset:3px;padding:4px 8px}
    header{padding-top:18px;position:relative;z-index:20}
    .floating-nav{
      min-height:66px;padding:9px 12px 9px 19px;border:1px solid rgba(30,41,34,.12);
      border-radius:999px;background:rgba(255,254,250,.88);backdrop-filter:blur(14px);
      box-shadow:0 10px 30px rgba(34,48,38,.08);
    }
    .brand{
      color:var(--ink)!important;font-size:16px;font-weight:800;letter-spacing:-.03em;
      white-space:nowrap;display:flex;align-items:center;gap:9px;
    }
    .brand-mark{width:18px;height:18px;border:5px solid var(--forest);border-radius:50%;display:inline-block;box-shadow:inset 0 0 0 2px var(--bg-elevated)}
    .nav-link{
      color:var(--ink-muted)!important;font-size:14px;font-weight:650;padding:10px 12px!important;
      position:relative;
    }
    .nav-link:after{content:"";position:absolute;left:12px;right:12px;bottom:4px;height:2px;border-radius:99px;background:var(--forest);transform:scaleX(0);transition:transform .2s ease}
    .nav-link:hover:after,.nav-link.active:after{transform:scaleX(1)}
    .nav-link.active{color:var(--forest)!important}
    .nav-quiet{border:1px solid var(--line);border-radius:999px;background:var(--bg-elevated);color:var(--forest);font-size:13px;font-weight:700;min-height:42px;padding:0 16px}
    .navbar-toggler{border:1px solid var(--line)!important;border-radius:14px;padding:8px 10px;background:var(--bg-elevated)}
    .navbar-toggler:focus{box-shadow:none}
    .navbar-toggler-icon{width:1.2em;height:1.2em}
    .offcanvas{background:var(--bg-elevated);color:var(--ink)}
    .offcanvas-header{border-bottom:1px solid var(--line)}
    .offcanvas .nav-link{font-size:17px;padding:15px 0!important;border-bottom:1px solid var(--line)}
    main{overflow:hidden}
    .hero{padding:58px 0 42px;position:relative}
    .hero:after{
      content:"";position:absolute;width:540px;height:540px;right:-180px;top:-100px;border:1px solid rgba(54,92,73,.12);
      border-radius:46% 54% 43% 57% / 52% 38% 62% 48%;box-shadow:0 0 0 38px rgba(54,92,73,.025),0 0 0 76px rgba(54,92,73,.02);pointer-events:none;
    }
    .eyebrow{display:flex;align-items:center;gap:9px;color:var(--forest);font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:18px}
    .eyebrow i{width:30px;height:1px;background:var(--forest);display:block}
    h1,h2,h3,p{margin-top:0}
    h1{font-size:clamp(40px,5.25vw,66px);line-height:1.12;letter-spacing:-.065em;font-weight:850;max-width:800px;margin-bottom:23px}
    h2{font-size:clamp(31px,3.8vw,46px);line-height:1.18;letter-spacing:-.055em;font-weight:800;margin-bottom:16px}
    h3{font-size:20px;line-height:1.35;font-weight:800;letter-spacing:-.025em}
    .lead-copy{max-width:710px;color:var(--ink-muted);font-size:17px;line-height:1.9;margin-bottom:27px}
    .btn-clay,.btn-outline-forest{
      min-height:48px;border-radius:999px;padding:12px 20px;font-weight:800;font-size:14px;display:inline-flex;align-items:center;gap:10px;transition:all .24s ease;
    }
    .btn-clay{color:white;background:var(--clay);box-shadow:0 10px 22px rgba(185,106,77,.22)}
    .btn-clay:hover{color:#fff;background:var(--clay-dark);transform:translateY(-2px)}
    .btn-outline-forest{color:var(--forest);background:transparent}
    .btn-outline-forest:hover{color:var(--forest-dark);gap:15px}
    .arrow{font-size:18px;line-height:1}
    .hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:36px}
    .hero-points{display:flex;flex-wrap:wrap;gap:10px}
    .hero-points span{color:var(--ink-muted);font-size:13px;padding:7px 11px;border-radius:999px;border:1px solid var(--line);background:rgba(255,254,250,.55)}
    .dashboard{position:relative;z-index:1;padding:11px}
    .data-board{
      background:var(--bg-elevated);border:1px solid var(--line);border-radius:var(--radius-lg);
      padding:20px;box-shadow:var(--shadow);position:relative;overflow:hidden;
    }
    .data-board:before{content:"";position:absolute;inset:12px;border:1px dashed rgba(54,92,73,.16);border-radius:20px;pointer-events:none}
    .board-label{position:relative;color:var(--ink-muted);font-size:12px;font-weight:800;letter-spacing:.1em}
    .data-grid{position:relative;display:grid;grid-template-columns:1.3fr .8fr;gap:12px;margin-top:14px}
    .data-main{grid-row:span 2;background:var(--forest);border-radius:20px;color:#f3f6ec;padding:26px;min-height:227px;display:flex;flex-direction:column;justify-content:space-between}
    .data-main small{font-size:12px;color:#d9e4d2;letter-spacing:.08em}
    .data-main strong{font-size:48px;line-height:1;font-weight:850;letter-spacing:-.07em}
    .data-main span{font-size:14px}
    .data-cell{background:#f0eee7;border-radius:18px;padding:16px;min-height:108px;display:flex;flex-direction:column;justify-content:space-between}
    .data-cell b{font-size:25px;line-height:1;color:var(--forest);letter-spacing:-.05em}
    .data-cell small{font-size:12px;color:var(--ink-muted);line-height:1.4}
    .board-note{position:relative;font-size:12px;color:var(--ink-muted);margin:14px 4px 0}
    section{padding:76px 0}
    .section-kicker{color:var(--forest);font-size:13px;font-weight:850;letter-spacing:.13em;margin-bottom:13px}
    .section-intro{color:var(--ink-muted);max-width:620px;font-size:16px;margin-bottom:0}
    .news-panel{border-top:1px solid var(--line);margin-top:28px}
    .news-row{display:grid;grid-template-columns:105px 1fr auto;align-items:center;gap:20px;padding:19px 2px;border-bottom:1px solid var(--line);transition:all .2s ease}
    .news-row:hover{padding-left:10px;background:rgba(255,254,250,.48)}
    .news-date{font-size:13px;font-weight:800;color:var(--forest)}
    .news-row h3{font-size:17px;margin:0}
    .news-row p{font-size:14px;color:var(--ink-muted);margin:2px 0 0}
    .news-arrow{color:var(--clay);font-size:22px}
    .notice-card{background:#e7ede1;border:1px solid rgba(54,92,73,.16);border-radius:var(--radius-lg);padding:27px;height:100%;position:relative;overflow:hidden}
    .notice-card:after{content:"";position:absolute;width:180px;height:180px;border:1px solid rgba(54,92,73,.16);border-radius:50%;right:-68px;bottom:-80px}
    .notice-card h3{font-size:24px;max-width:260px}
    .notice-card p{color:var(--ink-muted);font-size:14px;max-width:290px}
    .notice-card a{font-weight:800;color:var(--forest);font-size:14px;text-decoration:underline;text-underline-offset:4px}
    .matrix-wrap{margin-top:35px;display:grid;grid-template-columns:220px 1fr;gap:24px}
    .matrix-index{padding:21px 0;border-top:1px solid var(--line)}
    .matrix-index b{display:block;font-size:58px;line-height:1;color:var(--sand);letter-spacing:-.08em;margin-bottom:16px}
    .matrix-index p{font-size:14px;color:var(--ink-muted);margin-bottom:18px}
    .index-link{display:block;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px;font-weight:750}
    .matrix-grid{display:grid;grid-template-columns:1.2fr .9fr .8fr;gap:14px}
    .feature-card{background:var(--bg-elevated);border:1px solid var(--line);border-radius:var(--radius);padding:22px;min-height:180px;position:relative;overflow:hidden;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
    .feature-card:hover{transform:translateY(-5px);border-color:rgba(54,92,73,.45);box-shadow:var(--shadow-hover)}
    .feature-card.large{grid-column:span 2;min-height:210px;background:#e9eee3}
    .feature-card.tall{grid-row:span 2;min-height:394px;background:#f0ece2}
    .feature-card .num{display:block;color:var(--moss);font-size:13px;font-weight:850;letter-spacing:.13em;margin-bottom:29px}
    .feature-card h3{margin-bottom:7px}
    .feature-card p{font-size:14px;line-height:1.65;color:var(--ink-muted);margin-bottom:13px}
    .tag{display:inline-flex;align-items:center;min-height:27px;border-radius:999px;padding:4px 10px;background:rgba(54,92,73,.10);color:var(--forest);font-size:12px;font-weight:750}
    .feature-card .mini-arrow{position:absolute;right:19px;bottom:15px;color:var(--clay);font-size:20px}
    .compare-section{background:#ebe8df;position:relative}
    .compare-section:before{content:"";position:absolute;left:50%;top:100px;bottom:85px;border-left:1px dashed rgba(54,92,73,.32)}
    .compare-card{height:100%;background:var(--bg-elevated);border:1px solid var(--line);border-radius:var(--radius-lg);padding:29px}
    .compare-card.enhanced{background:var(--forest);color:#f4f6ee;border-color:var(--forest)}
    .compare-card .route-no{font-size:13px;letter-spacing:.12em;font-weight:850;color:var(--moss)}
    .compare-card.enhanced .route-no{color:#cfe0bc}
    .compare-card h3{font-size:27px;margin:13px 0}
    .compare-card p{font-size:14px;color:var(--ink-muted)}
    .compare-card.enhanced p{color:#d7e0d2}
    .route-list{list-style:none;padding:0;margin:22px 0 0}
    .route-list li{padding:13px 0 13px 28px;border-top:1px solid var(--line);font-size:14px;position:relative}
    .route-list li:before{content:"";position:absolute;left:1px;top:19px;width:10px;height:10px;border:2px solid var(--moss);border-radius:50%;background:var(--bg-elevated)}
    .enhanced .route-list li{border-color:rgba(255,255,255,.16)}
    .enhanced .route-list li:before{background:var(--forest);border-color:#c8d9b5}
    .mini-status{display:inline-block;border-radius:999px;padding:5px 10px;background:rgba(185,106,77,.12);color:var(--clay);font-size:12px;font-weight:800}
    .app-stage{padding-top:83px}
    .stage-shell{background:var(--ink);color:#f6f4ee;border-radius:var(--radius-lg);padding:38px;overflow:hidden;position:relative}
    .stage-shell:after{content:"";position:absolute;width:460px;height:460px;border:1px solid rgba(146,168,125,.26);border-radius:50%;right:-160px;top:-150px}
    .stage-shell h2{color:#fff;position:relative;z-index:1}
    .stage-shell p{color:#c7d0c5;max-width:470px;position:relative;z-index:1}
    .interface{position:relative;z-index:1;background:#f0eee7;color:var(--ink);border-radius:18px;padding:16px;transform:rotate(-2deg);box-shadow:0 25px 45px rgba(0,0,0,.26)}
    .interface-bar{height:10px;width:74px;border-radius:99px;background:var(--sand);margin-bottom:16px}
    .interface-row{display:grid;grid-template-columns:30px 1fr 54px;gap:10px;align-items:center;padding:11px 0;border-top:1px solid var(--line);font-size:12px}
    .interface-dot{width:26px;height:26px;border-radius:50%;background:var(--moss)}
    .interface-line{height:8px;border-radius:99px;background:#d9d4c8}
    .interface-row:nth-child(3) .interface-dot{background:var(--clay)}
    .faq-grid{display:grid;grid-template-columns:.76fr 1.24fr;gap:74px;align-items:start}
    .faq-aside{position:sticky;top:100px}
    .faq-aside p{color:var(--ink-muted);font-size:15px;max-width:340px}
    .terrain-line{height:70px;width:100%;margin-top:25px;background:repeating-radial-gradient(ellipse at 25% 100%,transparent 0 11px,rgba(54,92,73,.16) 12px 13px,transparent 14px 22px);opacity:.7}
    .accordion{--bs-accordion-bg:transparent;--bs-accordion-border-color:var(--line);--bs-accordion-btn-focus-box-shadow:none;--bs-accordion-active-bg:#edf1e8;--bs-accordion-active-color:var(--ink)}
    .accordion-item{border-left:0!important;border-right:0!important;background:transparent}
    .accordion-button{background:transparent!important;color:var(--ink)!important;font-weight:800;font-size:16px;padding:20px 5px}
    .accordion-button:not(.collapsed){box-shadow:none}
    .accordion-button:before{content:"+";margin-right:15px;color:var(--clay);font-size:22px;font-weight:400;line-height:1}
    .accordion-button:not(.collapsed):before{content:"−"}
    .accordion-button:after{display:none}
    .accordion-body{padding:0 17px 20px 40px;color:var(--ink-muted);font-size:14px;line-height:1.8}
    .contact-section{padding-top:24px;padding-bottom:88px}
    .contact-shell{background:#dfe7d8;border:1px solid rgba(54,92,73,.20);border-radius:var(--radius-lg);padding:42px;position:relative;overflow:hidden}
    .contact-shell:after{content:"";position:absolute;right:-70px;bottom:-95px;width:300px;height:300px;border:1px solid rgba(54,92,73,.18);border-radius:42% 58% 65% 35%}
    .contact-shell p{color:var(--ink-muted);font-size:15px;max-width:420px}
    .form-label{font-size:13px;font-weight:800;margin-bottom:7px}
    .form-control,.form-select{background:rgba(255,254,250,.86);border:1px solid rgba(30,41,34,.18);border-radius:12px;min-height:48px;color:var(--ink);padding:10px 13px}
    textarea.form-control{min-height:112px;resize:vertical}
    .form-control:focus,.form-select:focus{border-color:var(--forest);box-shadow:0 0 0 4px rgba(54,92,73,.12);background:#fffefa}
    .form-check-input{border-color:var(--forest)}
    .form-check-input:checked{background-color:var(--forest);border-color:var(--forest)}
    .form-check-label{font-size:13px;color:var(--ink-muted)}
    .form-help{font-size:12px;color:var(--ink-muted);margin-top:10px}
    footer{background:var(--forest-dark);color:#e5eadf;padding:55px 0 24px}
    .footer-brand{font-size:21px;font-weight:850;letter-spacing:-.04em;margin-bottom:11px}
    .footer-copy{color:#bdc8bb;font-size:13px;max-width:380px}
    .footer-title{color:#fff;font-size:13px;letter-spacing:.09em;font-weight:850;margin-bottom:12px}
    .footer-links{list-style:none;padding:0;margin:0}
    .footer-links li{margin:7px 0}
    .footer-links a{color:#c9d2c5;font-size:14px;text-decoration:none}
    .footer-links a:hover{text-decoration:underline;text-underline-offset:4px;color:#fff}
    .footer-bottom{border-top:1px solid rgba(255,255,255,.15);margin-top:33px;padding-top:20px;font-size:12px;color:#aebbaa}
    .modal-content{border:0;border-radius:22px;background:var(--bg-elevated);box-shadow:var(--shadow)}
    .modal-header{border-bottom:1px solid var(--line)}
    .modal-footer{border-top:1px solid var(--line)}
    @media (max-width:991.98px){
      .floating-nav{border-radius:20px}.hero{padding-top:42px}.dashboard{margin-top:25px}
      .matrix-wrap,.faq-grid{grid-template-columns:1fr;gap:28px}.matrix-index{display:none}
      .faq-aside{position:static}.compare-section:before{display:none}
      .stage-shell{padding:29px}.contact-shell{padding:30px}
    }
    @media (max-width:767.98px){
      .site-container{padding:0 17px}.age-strip .inner{font-size:11px;line-height:1.35;padding:7px 12px}
      header{padding-top:11px}.floating-nav{min-height:58px;padding:7px 10px 7px 14px}.brand{font-size:14px}
      .hero{padding:37px 0 28px}section{padding:56px 0}h1{font-size:39px}.lead-copy{font-size:15px}
      .data-grid{grid-template-columns:1.1fr .9fr}.data-main{padding:20px;min-height:194px}.data-main strong{font-size:40px}
      .matrix-grid{grid-template-columns:1fr 1fr}.feature-card.large{grid-column:span 2}.feature-card.tall{grid-row:auto;min-height:180px}
      .news-row{grid-template-columns:80px 1fr;gap:12px}.news-arrow{display:none}.news-row p{display:none}
      .app-stage{padding-top:56px}.stage-shell{padding:25px}.interface{margin-top:24px;transform:none}
      .contact-shell{padding:25px}.hero-actions{margin-bottom:25px}
    }
    @media (max-width:520px){
      h1{font-size:35px}.data-board{padding:13px}.data-grid{gap:8px}.data-cell{padding:12px;min-height:88px}.data-cell b{font-size:21px}
      .data-main{min-height:184px}.data-main strong{font-size:35px}.matrix-grid{grid-template-columns:1fr}.feature-card.large{grid-column:auto}.feature-card{min-height:167px}
      .compare-card{padding:23px}.contact-shell{padding:21px}.btn-clay,.btn-outline-forest{width:100%;justify-content:center}
    }
    @media (prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* roulang page: category1 */
:root{
 --bg-base:#f5f3ee;--bg-elevated:#fffefa;--ink:#1e2922;--ink-muted:#657068;
 --forest:#365c49;--forest-dark:#244333;--moss:#92a87d;--clay:#b96a4d;
 --clay-dark:#9f523b;--sand:#d9d1bf;--line:rgba(30,41,34,.14);
 --line-strong:rgba(30,41,34,.25);--radius:20px;--radius-lg:28px;
 --shadow:0 18px 50px rgba(39,47,38,.10);--shadow-hover:0 22px 46px rgba(30,41,34,.16);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
 margin:0;background:var(--bg-base);color:var(--ink);font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",Arial,sans-serif;
 font-size:16px;line-height:1.78;letter-spacing:.01em;
}
body:before{
 content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.38;
 background-image:radial-gradient(circle at 16% 12%,rgba(146,168,125,.2) 0 1px,transparent 1.5px),radial-gradient(circle at 86% 72%,rgba(185,106,77,.14) 0 1px,transparent 1.5px);
 background-size:33px 33px,49px 49px;
}
a{color:inherit;text-decoration:none;transition:color .22s ease}
a:hover{color:var(--forest)}
img{display:block;max-width:100%}
button,input,select,textarea{font:inherit}
button{border:0}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
 outline:3px solid rgba(54,92,73,.32);outline-offset:3px;
}
.site-container{max-width:1240px;margin:0 auto;padding:0 24px}
header{padding-top:18px;position:relative;z-index:20}
.floating-nav{
 min-height:66px;padding:9px 12px 9px 19px;border:1px solid rgba(30,41,34,.12);border-radius:999px;
 background:rgba(255,254,250,.9);backdrop-filter:blur(14px);box-shadow:0 10px 30px rgba(34,48,38,.08);
}
.brand{color:var(--ink)!important;font-size:16px;font-weight:800;letter-spacing:-.03em;white-space:nowrap;display:flex;align-items:center;gap:9px}
.brand-mark{width:18px;height:18px;border:5px solid var(--forest);border-radius:50%;display:inline-block;box-shadow:inset 0 0 0 2px var(--bg-elevated)}
.nav-link{color:var(--ink-muted)!important;font-size:14px;font-weight:650;padding:10px 12px!important;position:relative}
.nav-link:after{content:"";position:absolute;left:12px;right:12px;bottom:4px;height:2px;border-radius:99px;background:var(--forest);transform:scaleX(0);transition:transform .2s ease}
.nav-link:hover:after,.nav-link.active:after{transform:scaleX(1)}
.nav-link.active{color:var(--forest)!important}
.nav-quiet{border:1px solid var(--line);border-radius:999px;background:var(--bg-elevated);color:var(--forest);font-size:13px;font-weight:700;min-height:42px;padding:0 16px}
.navbar-toggler{border:1px solid var(--line)!important;border-radius:14px;padding:8px 10px;background:var(--bg-elevated)}
.navbar-toggler:focus{box-shadow:none}
.offcanvas{background:var(--bg-elevated);color:var(--ink)}
.offcanvas-header{border-bottom:1px solid var(--line)}
.offcanvas .nav-link{font-size:17px;padding:15px 0!important;border-bottom:1px solid var(--line)}
.age-strip{font-size:12px;color:var(--ink-muted);padding:8px 0 1px;text-align:center}
.age-strip button{background:none;color:var(--forest);text-decoration:underline;text-underline-offset:3px;padding:2px 5px}
main{overflow:hidden}
.page-head{padding:54px 0 35px;position:relative}
.page-head:after{
 content:"";position:absolute;width:470px;height:270px;right:-130px;top:6px;border:1px solid rgba(54,92,73,.13);
 border-radius:52% 48% 65% 35% / 42% 58% 42% 58%;box-shadow:0 0 0 34px rgba(54,92,73,.024),0 0 0 70px rgba(54,92,73,.018);pointer-events:none;
}
.breadcrumb{margin:0 0 20px;padding:0;background:none;font-size:13px;position:relative;z-index:1}
.breadcrumb-item+.breadcrumb-item:before{color:var(--moss)}
.breadcrumb-item a{color:var(--ink-muted)}
.breadcrumb-item.active{color:var(--forest);font-weight:700}
.editorial-no{color:var(--clay);font-size:13px;font-weight:850;letter-spacing:.15em;margin-bottom:12px}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(38px,5vw,61px);line-height:1.12;letter-spacing:-.055em;font-weight:850;max-width:800px;margin-bottom:18px;position:relative;z-index:1}
.lead-copy{max-width:725px;color:var(--ink-muted);font-size:16px;line-height:1.9;margin-bottom:0;position:relative;z-index:1}
.result-meta{margin-top:27px;display:flex;flex-wrap:wrap;gap:9px;position:relative;z-index:1}
.meta-pill,.tag{
 display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;
 padding:6px 10px;background:rgba(255,254,250,.72);font-size:12px;color:var(--ink-muted);font-weight:700;
}
.meta-pill strong{color:var(--forest)}
.content-zone{padding:18px 0 76px}
.filter-panel{
 position:sticky;top:20px;background:var(--bg-elevated);border:1px solid var(--line);border-radius:var(--radius-lg);padding:22px;box-shadow:0 12px 32px rgba(39,47,38,.06);
}
.filter-title{display:flex;justify-content:space-between;align-items:center;font-size:17px;font-weight:850;padding-bottom:14px;border-bottom:1px solid var(--line)}
.filter-block{padding:18px 0;border-bottom:1px solid var(--line)}
.filter-block:last-child{border-bottom:0;padding-bottom:4px}
.filter-label{display:block;font-size:13px;font-weight:850;color:var(--forest);margin-bottom:10px}
.filter-option{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:34px;color:var(--ink-muted);font-size:14px;cursor:pointer}
.filter-option input{accent-color:var(--forest);width:16px;height:16px}
.filter-option small{font-size:11px;color:var(--moss)}
.rule-mini{background:#edf1e8;border-radius:15px;padding:13px;font-size:12px;line-height:1.65;color:var(--forest-dark);margin-top:18px}
.toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;padding-bottom:15px;border-bottom:1px solid var(--line)}
.toolbar-left{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.toolbar-title{font-size:15px;font-weight:850}
.active-chip{background:#e4ebdc;border-color:rgba(54,92,73,.25);color:var(--forest);cursor:pointer}
.active-chip:hover{background:#d9e4d0}
.sort-select{min-height:42px;border:1px solid var(--line);border-radius:999px;background:var(--bg-elevated);padding:0 14px;color:var(--forest);font-size:13px;font-weight:700;box-shadow:none}
.sort-select:focus{border-color:var(--forest);box-shadow:0 0 0 .22rem rgba(54,92,73,.12)}
.filter-mobile{display:none}
.index-card{
 position:relative;overflow:hidden;background:var(--bg-elevated);border:1px solid var(--line);border-radius:var(--radius);
 min-height:100%;padding:18px;box-shadow:0 10px 25px rgba(39,47,38,.055);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;
}
.index-card:hover{transform:translateY(-5px);border-color:rgba(54,92,73,.5);box-shadow:var(--shadow-hover)}
.card-cover{height:156px;border-radius:15px;margin-bottom:16px;position:relative;overflow:hidden;background:#d8dfcf}
.card-cover:before,.card-cover:after{content:"";position:absolute;border:1px solid rgba(255,254,250,.68);border-radius:48% 52% 40% 60% / 58% 38% 62% 42%}
.card-cover:before{width:210px;height:120px;left:-38px;bottom:-46px}
.card-cover:after{width:180px;height:155px;right:-48px;top:-66px}
.cover-a{background:linear-gradient(135deg,#315440,#91a77c 60%,#d2c4aa)}
.cover-b{background:linear-gradient(135deg,#d7c9ae,#a96249 52%,#3c5947)}
.cover-c{background:linear-gradient(135deg,#4b6655,#c4d0b6 56%,#eee6d7)}
.cover-d{background:linear-gradient(135deg,#d4c5ac,#839b76 45%,#506557)}
.cover-e{background:linear-gradient(135deg,#334d3d,#a8b99b 48%,#c27b5c)}
.cover-mark{position:absolute;left:15px;bottom:14px;color:#fffefa;font-size:12px;font-weight:850;letter-spacing:.1em}
.card-kicker{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:9px}
.card-number{font-size:12px;color:var(--clay);font-weight:850;letter-spacing:.1em}
.card-status{font-size:11px;border-radius:999px;padding:4px 8px;background:#edf1e8;color:var(--forest);font-weight:750}
.index-card h3{font-size:20px;line-height:1.38;letter-spacing:-.02em;font-weight:850;margin-bottom:8px}
.index-card p{font-size:14px;color:var(--ink-muted);line-height:1.72;margin-bottom:14px}
.card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:12px;border-top:1px solid var(--line)}
.card-footer span{font-size:12px;color:var(--ink-muted)}
.card-arrow{color:var(--clay);font-size:20px;transition:transform .2s ease}
.index-card:hover .card-arrow{transform:translateX(4px)}
.feature-card{background:var(--forest);color:#f6f7ef;padding:25px;min-height:265px}
.feature-card:before{content:"";position:absolute;inset:13px;border:1px dashed rgba(240,245,232,.28);border-radius:16px;pointer-events:none}
.feature-card .card-number{color:#d6e3ca}.feature-card .card-status{background:rgba(255,255,255,.12);color:#f1f3e9}
.feature-card h3{font-size:25px;color:#fffefa;max-width:400px;position:relative}
.feature-card p{color:#dce7d5;max-width:590px;position:relative}
.feature-card .card-footer{border-color:rgba(255,255,255,.18);position:relative}.feature-card .card-footer span{color:#dce7d5}.feature-card .card-arrow{color:#f2d2c5}
.text-card{background:#e7ede1;display:flex;flex-direction:column;justify-content:space-between;min-height:220px}
.text-card h3{font-size:22px;color:var(--forest)}
.text-card .tag{background:rgba(255,254,250,.62)}
.section-note{margin-top:48px;background:#ede7da;border:1px solid rgba(185,106,77,.2);border-radius:var(--radius-lg);padding:28px}
.section-note h2{font-size:28px;font-weight:850;letter-spacing:-.035em;margin-bottom:9px}
.section-note p{color:var(--ink-muted);max-width:750px;margin-bottom:17px}
.btn-clay,.btn-outline-forest{
 min-height:48px;border-radius:999px;padding:12px 20px;font-weight:800;font-size:14px;display:inline-flex;align-items:center;gap:10px;transition:all .24s ease;
}
.btn-clay{color:#fff;background:var(--clay);box-shadow:0 10px 22px rgba(185,106,77,.22)}
.btn-clay:hover{color:#fff;background:var(--clay-dark);transform:translateY(-2px)}
.btn-outline-forest{color:var(--forest);background:transparent}
.btn-outline-forest:hover{color:var(--forest-dark);gap:15px}
.arrow{font-size:18px;line-height:1}
.mini-faq{padding:0 0 78px}
.mini-faq-wrap{border-top:1px solid var(--line);padding-top:54px}
.section-kicker{font-size:13px;color:var(--forest);font-weight:850;letter-spacing:.13em;margin-bottom:12px}
.mini-faq h2{font-size:clamp(29px,4vw,41px);font-weight:850;letter-spacing:-.05em;line-height:1.2}
.accordion-item{border:1px solid var(--line)!important;border-radius:15px!important;overflow:hidden;background:var(--bg-elevated);margin-bottom:10px}
.accordion-button{font-size:15px;font-weight:800;color:var(--ink);background:var(--bg-elevated);box-shadow:none!important;padding:17px 18px}
.accordion-button:not(.collapsed){background:#e9efe2;color:var(--forest)}
.accordion-button:after{background-image:none;content:"＋";font-size:22px;width:auto;height:auto;color:var(--clay);transform:none}
.accordion-button:not(.collapsed):after{content:"－";transform:none}
.accordion-body{color:var(--ink-muted);font-size:14px;line-height:1.8;padding:0 18px 18px}
.pagination{gap:7px;margin:37px 0 0}
.page-link{border:1px solid var(--line);border-radius:12px!important;background:var(--bg-elevated);color:var(--forest);font-weight:800;min-width:42px;text-align:center;padding:8px 10px}
.page-link:hover{background:#e5ecdd;color:var(--forest);border-color:rgba(54,92,73,.35)}
.page-item.active .page-link{background:var(--forest);border-color:var(--forest);color:#fffefa}
.page-item.disabled .page-link{color:#9fa59d;background:#ebe9e1}
footer{background:var(--forest-dark);color:#edf1e9;padding:58px 0 24px}
.footer-brand{font-size:21px;font-weight:850;letter-spacing:-.04em;margin-bottom:12px}
.footer-copy{color:#c9d4c6;font-size:14px;line-height:1.8;max-width:420px;margin:0}
.footer-title{font-size:13px;color:#dce8d4;font-weight:850;letter-spacing:.1em;margin-bottom:14px}
.footer-links{list-style:none;padding:0;margin:0}
.footer-links li{margin-bottom:9px}
.footer-links a{font-size:14px;color:#c7d2c3;display:inline-block}
.footer-links a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.footer-bottom{border-top:1px solid rgba(235,241,229,.18);margin-top:38px;padding-top:18px;color:#b5c2b2;font-size:12px}
.modal-content{border:0;border-radius:var(--radius-lg);background:var(--bg-elevated);box-shadow:var(--shadow)}
.modal-header{border-bottom:1px solid var(--line)}.modal-footer{border-top:1px solid var(--line)}
.modal-title{font-weight:850}
@media(max-width:991.98px){
 .floating-nav{padding-left:15px}.nav-desktop,.nav-quiet{display:none!important}.filter-panel{display:none}.filter-mobile{display:inline-flex}
 .page-head{padding-top:42px}.content-zone{padding-top:5px}.toolbar{align-items:flex-start;flex-direction:column}.sort-select{width:100%}
}
@media(max-width:767.98px){
 .site-container{padding:0 18px}header{padding-top:12px}.floating-nav{min-height:59px}.brand{font-size:14px}.brand-mark{width:16px;height:16px}
 .page-head{padding:37px 0 24px}h1{font-size:38px}.lead-copy{font-size:15px}.content-zone{padding-bottom:57px}
 .card-cover{height:172px}.feature-card{min-height:235px}.section-note{padding:22px}.mini-faq{padding-bottom:57px}.mini-faq-wrap{padding-top:42px}
 footer{padding-top:45px}.footer-bottom{margin-top:28px}
}
@media(max-width:520px){
 .meta-pill{font-size:11px}.index-card{padding:15px}.index-card h3{font-size:19px}.feature-card h3{font-size:23px}
 .breadcrumb{font-size:12px}.page-head:after{right:-280px}.btn-clay,.btn-outline-forest{width:100%;justify-content:center}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* roulang page: category2 */
:root{
 --bg-base:#f5f3ee;
 --bg-elevated:#fffefa;
 --ink:#1e2922;
 --ink-muted:#657068;
 --forest:#365c49;
 --forest-dark:#244333;
 --moss:#92a87d;
 --clay:#b96a4d;
 --clay-dark:#9f523b;
 --sand:#d9d1bf;
 --line:rgba(30,41,34,.14);
 --line-strong:rgba(30,41,34,.25);
 --radius:20px;
 --radius-lg:28px;
 --shadow:0 18px 50px rgba(39,47,38,.10);
 --shadow-hover:0 22px 46px rgba(30,41,34,.16);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
 margin:0;background:var(--bg-base);color:var(--ink);
 font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",Arial,sans-serif;
 font-size:16px;line-height:1.78;letter-spacing:.01em;
}
body:before{
 content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.38;
 background-image:radial-gradient(circle at 14% 12%,rgba(146,168,125,.2) 0 1px,transparent 1.6px),radial-gradient(circle at 88% 72%,rgba(185,106,77,.15) 0 1px,transparent 1.6px);
 background-size:32px 32px,48px 48px;
}
a{color:inherit;text-decoration:none;transition:color .22s ease,opacity .22s ease}
a:hover{color:var(--forest)}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
button{border:0}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
 outline:3px solid rgba(54,92,73,.32);outline-offset:3px;
}
.site-container{max-width:1240px;margin:0 auto;padding:0 24px}
.age-strip{
 background:var(--forest-dark);color:#edf1e9;font-size:12px;line-height:1.4;
 padding:8px 0;text-align:center;
}
.age-strip button{background:none;color:#e9eee6;text-decoration:underline;text-underline-offset:3px;padding:2px 6px}
header{padding-top:18px;position:relative;z-index:30}
.floating-nav{
 min-height:66px;padding:9px 12px 9px 19px;border:1px solid rgba(30,41,34,.12);
 border-radius:999px;background:rgba(255,254,250,.9);backdrop-filter:blur(14px);
 box-shadow:0 10px 30px rgba(34,48,38,.08);
}
.brand{
 color:var(--ink)!important;font-size:16px;font-weight:800;letter-spacing:-.03em;
 white-space:nowrap;display:flex;align-items:center;gap:9px;
}
.brand-mark{width:18px;height:18px;border:5px solid var(--forest);border-radius:50%;display:inline-block;box-shadow:inset 0 0 0 2px var(--bg-elevated)}
.nav-link{
 color:var(--ink-muted)!important;font-size:14px;font-weight:650;padding:10px 12px!important;
 position:relative;
}
.nav-link:after{content:"";position:absolute;left:12px;right:12px;bottom:4px;height:2px;border-radius:99px;background:var(--forest);transform:scaleX(0);transition:transform .2s ease}
.nav-link:hover:after,.nav-link.active:after{transform:scaleX(1)}
.nav-link.active{color:var(--forest)!important}
.nav-quiet{border:1px solid var(--line);border-radius:999px;background:var(--bg-elevated);color:var(--forest);font-size:13px;font-weight:700;min-height:42px;padding:0 16px}
.nav-quiet:hover{background:#edf1e8;color:var(--forest-dark)}
.navbar-toggler{border:1px solid var(--line)!important;border-radius:14px;padding:8px 10px;background:var(--bg-elevated)}
.navbar-toggler:focus{box-shadow:none}
.navbar-toggler-icon{width:1.2em;height:1.2em}
.offcanvas{background:var(--bg-elevated);color:var(--ink)}
.offcanvas-header{border-bottom:1px solid var(--line)}
.offcanvas .nav-link{font-size:17px;padding:15px 0!important;border-bottom:1px solid var(--line)}
main{overflow:hidden}
.page-head{padding:54px 0 34px;position:relative}
.page-head:before{
 content:"";position:absolute;width:520px;height:520px;right:-190px;top:-190px;border:1px solid rgba(54,92,73,.14);
 border-radius:48% 52% 61% 39% / 38% 54% 46% 62%;
 box-shadow:0 0 0 38px rgba(54,92,73,.022),0 0 0 78px rgba(54,92,73,.018);
}
.breadcrumbs{font-size:13px;color:var(--ink-muted);display:flex;gap:8px;align-items:center;margin-bottom:26px}
.breadcrumbs span{color:var(--moss)}
.eyebrow{display:flex;align-items:center;gap:9px;color:var(--forest);font-size:13px;font-weight:800;letter-spacing:.12em;margin-bottom:14px}
.eyebrow i{width:30px;height:1px;background:var(--forest);display:block}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(38px,5.1vw,64px);line-height:1.14;letter-spacing:-.06em;font-weight:850;max-width:690px;margin-bottom:18px}
h2{font-size:clamp(29px,3.5vw,43px);line-height:1.2;letter-spacing:-.045em;font-weight:850}
h3{font-size:20px;line-height:1.38;font-weight:800;letter-spacing:-.025em}
.lead-copy{max-width:680px;color:var(--ink-muted);font-size:16px;line-height:1.9;margin-bottom:0}
.archive-card{
 position:relative;background:var(--bg-elevated);border:1px solid var(--line);border-radius:var(--radius-lg);
 box-shadow:var(--shadow);padding:20px;overflow:hidden;min-height:248px;
}
.archive-card:after{
 content:"";position:absolute;width:210px;height:210px;right:-58px;bottom:-86px;border-radius:50%;
 border:32px solid rgba(146,168,125,.24);box-shadow:0 0 0 1px rgba(54,92,73,.09);
}
.archive-top{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:13px}
.archive-code{font-size:12px;letter-spacing:.12em;color:var(--forest);font-weight:800}
.archive-dot{width:10px;height:10px;background:var(--clay);border-radius:50%;box-shadow:0 0 0 5px rgba(185,106,77,.12)}
.archive-count{position:relative;z-index:1;margin:25px 0 3px;font-size:53px;line-height:1;font-weight:850;letter-spacing:-.07em;color:var(--forest)}
.archive-label{position:relative;z-index:1;color:var(--ink-muted);font-size:14px}
.archive-meta{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:7px;margin-top:25px}
.tag,.state-tag,.filter-chip{
 display:inline-flex;align-items:center;min-height:29px;padding:4px 10px;border-radius:999px;
 border:1px solid var(--line);background:rgba(255,254,250,.75);font-size:12px;font-weight:700;color:var(--ink-muted);
}
.tag-forest{color:var(--forest);background:#e7ede1;border-color:rgba(54,92,73,.16)}
.tag-clay{color:#914a35;background:#f4e6df;border-color:rgba(185,106,77,.18)}
section{padding:42px 0}
.filter-zone{
 border-top:1px solid var(--line);border-bottom:1px solid var(--line);
 background:rgba(255,254,250,.47);padding:18px 0;
}
.filter-label{font-size:13px;font-weight:850;color:var(--forest);letter-spacing:.1em;white-space:nowrap}
.filter-scroll{display:flex;gap:9px;overflow-x:auto;padding:3px 1px 8px;scrollbar-width:thin}
.filter-chip{white-space:nowrap;cursor:pointer;transition:all .2s ease}
.filter-chip:hover,.filter-chip.active{color:#fff;background:var(--forest);border-color:var(--forest);transform:translateY(-1px)}
.filter-chip.active:after{content:"×";margin-left:8px;font-size:14px;line-height:1}
.filter-toggle{
 min-height:43px;padding:8px 14px;border-radius:999px;color:var(--forest);font-weight:800;font-size:13px;
 border:1px solid var(--line);background:var(--bg-elevated);white-space:nowrap;
}
.filter-toggle:hover{background:#e7ede1}
.filter-panel{
 margin-top:15px;background:var(--bg-elevated);border:1px solid var(--line);border-radius:20px;padding:20px;
}
.filter-panel label{font-size:13px;font-weight:800;color:var(--ink-muted);display:block;margin-bottom:7px}
.form-select{
 border:1px solid var(--line);border-radius:12px;background-color:#fffefa;color:var(--ink);padding:10px 34px 10px 12px;min-height:44px;
}
.form-select:focus{border-color:var(--forest);box-shadow:0 0 0 .22rem rgba(54,92,73,.13)}
.section-title-row{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:23px}
.section-kicker{color:var(--forest);font-size:13px;font-weight:850;letter-spacing:.13em;margin-bottom:11px}
.section-intro{color:var(--ink-muted);max-width:650px;font-size:15px;margin-bottom:0}
.track-wrap{position:relative}
.topic-track{display:flex;gap:13px;overflow-x:auto;padding:8px 2px 18px;scroll-snap-type:x proximity;scrollbar-color:var(--moss) transparent}
.topic-node{
 flex:0 0 222px;min-height:157px;padding:18px;border-radius:20px;border:1px solid var(--line);
 background:rgba(255,254,250,.72);display:flex;flex-direction:column;justify-content:space-between;
 transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease;scroll-snap-align:start;
}
.topic-node:hover{transform:translateY(-5px);border-color:rgba(54,92,73,.42);box-shadow:var(--shadow)}
.topic-node.current{background:var(--forest);border-color:var(--forest);color:#f5f7f0}
.topic-num{font-size:12px;font-weight:850;letter-spacing:.1em;color:var(--moss)}
.topic-node.current .topic-num,.topic-node.current p{color:#dbe6d3}
.topic-node h3{font-size:18px;margin:10px 0 4px}
.topic-node p{font-size:13px;color:var(--ink-muted);line-height:1.55;margin:0}
.topic-arrow{font-size:20px;color:var(--clay)}
.topic-node.current .topic-arrow{color:#f1c9b8}
.index-list{position:relative}
.index-list:before{content:"";position:absolute;left:31px;top:26px;bottom:32px;width:1px;background:linear-gradient(var(--moss),rgba(146,168,125,.08))}
.index-item{
 position:relative;display:grid;grid-template-columns:64px minmax(150px,238px) 1fr 148px;gap:22px;align-items:center;
 padding:22px 0;border-bottom:1px solid var(--line);transition:padding .25s ease,background .25s ease;
}
.index-item:hover{padding-left:8px;background:rgba(255,254,250,.43)}
.index-num{
 position:relative;z-index:1;width:62px;height:62px;border:1px solid var(--line-strong);border-radius:50%;
 background:var(--bg-base);display:flex;align-items:center;justify-content:center;color:var(--forest);font-weight:850;font-size:14px;
}
.thumb{
 height:137px;position:relative;overflow:hidden;border-radius:16px;border:1px solid rgba(30,41,34,.1);
 background:#dfe6d6;
}
.thumb:before,.thumb:after{content:"";position:absolute;pointer-events:none}
.thumb:before{inset:0;background:linear-gradient(135deg,rgba(54,92,73,.77),rgba(54,92,73,.08) 58%),repeating-linear-gradient(143deg,transparent 0 15px,rgba(255,254,250,.12) 16px 17px)}
.thumb:after{width:85px;height:85px;border:1px solid rgba(255,255,255,.45);border-radius:50%;right:-19px;top:-23px;box-shadow:0 0 0 18px rgba(255,255,255,.08)}
.thumb.t2{background:#d8d2c1}.thumb.t2:before{background:linear-gradient(120deg,rgba(185,106,77,.74),rgba(54,92,73,.18)),repeating-linear-gradient(35deg,transparent 0 19px,rgba(255,255,255,.14) 20px 21px)}
.thumb.t3{background:#dce4dc}.thumb.t3:before{background:linear-gradient(155deg,rgba(36,67,51,.79),rgba(146,168,125,.26)),radial-gradient(circle at 68% 24%,rgba(255,255,255,.54) 0 2px,transparent 3px)}
.thumb.t4{background:#e8d9ce}.thumb.t4:before{background:linear-gradient(30deg,rgba(185,106,77,.68),rgba(54,92,73,.31)),repeating-linear-gradient(90deg,transparent 0 22px,rgba(255,254,250,.2) 23px 24px)}
.thumb-label{position:absolute;left:12px;bottom:10px;z-index:2;color:#fff;font-size:11px;font-weight:800;letter-spacing:.08em}
.index-copy h3{margin:0 0 6px;font-size:19px}
.index-copy p{color:var(--ink-muted);font-size:14px;line-height:1.7;margin:0 0 10px;max-width:540px}
.index-tags{display:flex;gap:7px;flex-wrap:wrap}
.index-status{text-align:right;align-self:stretch;display:flex;flex-direction:column;justify-content:center;gap:7px;border-left:1px solid var(--line);padding-left:18px}
.index-status small{font-size:12px;color:var(--ink-muted);line-height:1.5}
.state-tag{align-self:flex-end;color:var(--forest);background:#e7ede1;border-color:rgba(54,92,73,.16)}
.guide-band{
 margin:21px 0;padding:22px 25px;border:1px solid rgba(54,92,73,.2);border-radius:22px;
 background:#e7ede1;display:flex;align-items:center;justify-content:space-between;gap:20px;
}
.guide-band h3{margin:0 0 4px;font-size:19px}
.guide-band p{margin:0;color:var(--ink-muted);font-size:14px}
.btn-outline-forest,.btn-clay{
 min-height:47px;border-radius:999px;padding:11px 18px;font-weight:800;font-size:14px;display:inline-flex;align-items:center;justify-content:center;gap:9px;transition:all .24s ease;white-space:nowrap;
}
.btn-outline-forest{border:1px solid var(--line);color:var(--forest);background:var(--bg-elevated)}
.btn-outline-forest:hover{color:var(--forest-dark);background:#edf1e8;gap:14px}
.btn-clay{background:var(--clay);color:#fff;box-shadow:0 10px 22px rgba(185,106,77,.18)}
.btn-clay:hover{background:var(--clay-dark);color:#fff;transform:translateY(-2px)}
.path-panel{background:var(--bg-elevated);border:1px solid var(--line);border-radius:var(--radius-lg);padding:31px;box-shadow:var(--shadow)}
.path-grid{display:grid;grid-template-columns:1fr 48px 1fr 48px 1fr;align-items:center;margin-top:23px}
.path-step{min-height:145px;padding:19px;border:1px solid var(--line);border-radius:18px;background:#fbfaf5}
.path-step.current{background:var(--forest);color:#f4f7f0;border-color:var(--forest)}
.path-step small{display:block;color:var(--moss);font-weight:850;letter-spacing:.1em;font-size:11px;margin-bottom:8px}
.path-step.current small{color:#d5e2cc}
.path-step h3{font-size:18px;margin:0 0 6px}
.path-step p{font-size:13px;line-height:1.6;color:var(--ink-muted);margin:0}
.path-step.current p{color:#dce7d5}
.path-arrow{text-align:center;color:var(--clay);font-size:25px}
.compact-faq{padding-top:68px}
.accordion{--bs-accordion-bg:transparent;--bs-accordion-border-color:var(--line);--bs-accordion-btn-focus-box-shadow:none;--bs-accordion-active-bg:#e7ede1;--bs-accordion-active-color:var(--forest)}
.accordion-item{border:1px solid var(--line)!important;border-radius:15px!important;overflow:hidden;background:rgba(255,254,250,.72);margin-bottom:9px}
.accordion-button{font-weight:800;font-size:15px;background:transparent!important;color:var(--ink)!important;padding:17px 19px}
.accordion-button:not(.collapsed){color:var(--forest)!important;box-shadow:none}
.accordion-button:after{background-image:none;content:"＋";font-size:22px;width:auto;height:auto;color:var(--forest);transform:none}
.accordion-button:not(.collapsed):after{content:"－";transform:none}
.accordion-body{padding:0 19px 18px;color:var(--ink-muted);font-size:14px;line-height:1.8}
.feedback-cta{
 margin-top:55px;background:var(--forest-dark);border-radius:var(--radius-lg);padding:34px 37px;color:#f4f7f0;position:relative;overflow:hidden;
}
.feedback-cta:after{content:"";position:absolute;width:340px;height:340px;border:1px solid rgba(255,255,255,.18);border-radius:50%;right:-120px;top:-200px;box-shadow:0 0 0 32px rgba(255,255,255,.035)}
.feedback-cta h2{font-size:31px;margin-bottom:10px;position:relative;z-index:1}
.feedback-cta p{color:#d9e4d2;max-width:670px;margin:0;position:relative;z-index:1}
.feedback-cta .btn-clay{position:relative;z-index:1}
footer{margin-top:76px;background:var(--forest-dark);color:#edf1e9;padding:53px 0 20px}
.footer-brand{font-size:21px;font-weight:850;letter-spacing:-.04em;margin-bottom:10px}
.footer-copy{font-size:14px;line-height:1.8;color:#cdd8c8;max-width:440px;margin:0}
.footer-title{font-size:13px;color:#aebfa5;font-weight:800;letter-spacing:.1em;margin-bottom:12px}
.footer-links{list-style:none;padding:0;margin:0}
.footer-links li{margin:8px 0}
.footer-links a{font-size:14px;color:#edf1e9;text-decoration:none;border-bottom:1px solid transparent}
.footer-links a:hover{color:#fff;border-color:#b8cab1}
.footer-bottom{border-top:1px solid rgba(255,255,255,.15);margin-top:35px;padding-top:18px;color:#b8c5b2;font-size:12px}
.reveal{animation:rise .55s ease both}
@keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media (max-width:991.98px){
 .floating-nav{padding-left:16px}
 .page-head{padding-top:42px}
 .index-item{grid-template-columns:58px 180px 1fr;gap:16px}
 .index-status{grid-column:3;border-left:0;padding-left:0;text-align:left;flex-direction:row;align-items:center}
 .state-tag{align-self:auto}
 .path-grid{grid-template-columns:1fr;gap:11px}
 .path-arrow{transform:rotate(90deg);height:24px}
}
@media (max-width:767.98px){
 .site-container{padding:0 18px}
 header{padding-top:12px}
 .age-strip{font-size:11px;padding:7px 14px}
 .brand{font-size:14px}
 .page-head{padding:35px 0 27px}
 h1{font-size:39px}
 section{padding:33px 0}
 .archive-card{margin-top:10px;min-height:210px}
 .archive-count{font-size:44px;margin-top:18px}
 .section-title-row{display:block;margin-bottom:18px}
 .section-title-row h2{margin-bottom:10px}
 .filter-zone{padding:13px 0}
 .index-list:before{left:23px}
 .index-item{grid-template-columns:47px 1fr;gap:12px;padding:19px 0}
 .index-item:hover{padding-left:0}
 .index-num{width:47px;height:47px;font-size:12px}
 .thumb{grid-column:2;height:164px}
 .index-copy{grid-column:2}
 .index-copy h3{font-size:18px}
 .index-status{grid-column:2;grid-row:auto;display:flex;border-left:0;padding-left:0;text-align:left;align-items:center}
 .guide-band{display:block;padding:21px}
 .guide-band .btn-outline-forest{margin-top:16px}
 .path-panel{padding:22px 18px}
 .feedback-cta{padding:28px 22px;margin-top:39px}
 .feedback-cta h2{font-size:27px}
 footer{margin-top:53px;padding-top:40px}
}
@media (max-width:420px){
 .site-container{padding:0 15px}
 h1{font-size:34px}
 .floating-nav{min-height:58px;padding:7px 9px 7px 14px}
 .archive-card{padding:17px}
 .topic-node{flex-basis:196px}
 .filter-label{display:none}
 .index-copy p{font-size:13px}
}
