/* roulang page: index */
:root{
      --ink:#252321;--ink-soft:#4e4945;--muted:#817974;--paper:#fbf8f4;
      --cream:#f3ece5;--rose:#d99a9d;--coral:#e78268;--sage:#a7b9a9;
      --line:rgba(54,44,39,.13);--dark:#292625;--shadow:0 18px 50px rgba(71,54,47,.11);
      --radius-lg:28px;--radius-md:18px;--grad:linear-gradient(125deg,#d79ca0 0%,#efb18a 52%,#e88369 100%);
    }
    *{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",sans-serif;line-height:1.7;padding-bottom:96px}
    a{text-decoration:none;color:inherit}button{font:inherit;cursor:pointer}img{max-width:100%;display:block}
    .container{width:min(1180px,calc(100% - 40px));margin:auto}.section{padding:92px 0}.eyebrow{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--coral);font-weight:700}.section-title{font-size:clamp(28px,4vw,42px);line-height:1.25;letter-spacing:-.04em;font-weight:800;margin:10px 0 14px}.section-copy{max-width:660px;color:var(--muted);font-size:16px}
    .site-header{position:sticky;top:0;z-index:30;background:rgba(251,248,244,.95);border-bottom:1px solid transparent;transition:.25s}.site-header.scrolled{border-color:var(--line);box-shadow:0 8px 24px rgba(55,43,38,.07)}
    .nav-wrap{height:76px;display:flex;align-items:center;gap:32px}.logo{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:800;white-space:nowrap}.logo-mark{width:32px;height:32px;border-radius:11px;background:var(--grad);display:grid;place-items:center;color:#fff;font-weight:800;font-size:12px;box-shadow:0 6px 16px rgba(226,130,104,.25)}
    .nav-links{display:flex;align-items:center;gap:26px;margin-left:auto}.nav-links a,.nav-rule{font-size:14px;color:var(--ink-soft);transition:.2s}.nav-links a:hover,.nav-links a.active{color:var(--coral)}.nav-cta,.btn-primary{background:var(--grad);color:#fff;border:0;box-shadow:0 9px 20px rgba(224,128,103,.2)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:999px;font-size:14px;font-weight:700;transition:.22s;border:1px solid var(--line)}.btn:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(74,54,46,.13)}.btn:focus-visible,.nav-links a:focus-visible,button:focus-visible{outline:3px solid rgba(231,130,104,.45);outline-offset:3px}.btn-outline{background:transparent;color:var(--ink)}.menu-btn{display:none;border:0;background:transparent;padding:8px}
    .steps{border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow-x:auto}.step-track{display:flex;min-width:650px;justify-content:space-between;position:relative;padding:15px 0}.step-track:before{content:"";position:absolute;top:31px;left:30px;right:30px;height:1px;background:var(--line)}.step{position:relative;z-index:1;display:flex;align-items:center;gap:9px;background:var(--paper);padding-right:18px;font-size:13px;color:var(--muted)}.step b{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:#e9e1db;color:var(--ink-soft);font-size:11px}.step.active{color:var(--ink);font-weight:700}.step.active b{background:var(--grad);color:#fff}
    .hero{padding:72px 0 82px;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;width:500px;height:500px;border:1px solid rgba(217,154,157,.22);border-radius:50%;right:-110px;top:-180px;box-shadow:0 0 0 34px rgba(217,154,157,.05),0 0 0 80px rgba(217,154,157,.035)}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:66px;align-items:center}.hero h1{font-size:clamp(38px,5.2vw,62px);line-height:1.14;letter-spacing:-.07em;margin:14px 0 22px;font-weight:900}.hero h1 span{background:var(--grad);background-clip:text;color:transparent}.hero-desc{font-size:17px;color:var(--ink-soft);max-width:590px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0 18px}.notice{font-size:12px;color:var(--muted)}.dashboard{background:var(--dark);border-radius:32px;padding:25px;box-shadow:var(--shadow);transform:rotate(1deg);position:relative}.dash-head{display:flex;justify-content:space-between;color:#e9ddd8;font-size:13px;margin-bottom:20px}.index-card{background:#f9f3ee;border-radius:20px;padding:19px;margin:12px 0;display:flex;gap:15px;align-items:center;transition:.22s}.index-card:hover{transform:translateX(5px)}.index-num{font-family:monospace;color:var(--coral);font-weight:800}.index-card h3{font-size:16px;margin:0 0 3px}.index-card p{font-size:12px;color:var(--muted);margin:0}.bar{height:5px;border-radius:5px;background:var(--grad);margin-top:10px}.dash-label{font-size:11px;color:#cbbdb7;letter-spacing:.1em}.badges{display:flex;gap:10px;flex-wrap:wrap;margin-top:34px}.badge{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:999px;background:#f1e7df;color:var(--ink-soft);font-size:12px}.badge i{width:6px;height:6px;border-radius:50%;background:var(--coral);display:inline-block}.badge.sage i{background:#77957f}
    .section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:34px}.section-link{color:var(--coral);font-size:14px;font-weight:700}.content-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:20px}.feature-card,.small-card{border:1px solid var(--line);border-radius:var(--radius-lg);padding:29px;position:relative;overflow:hidden;transition:.24s}.feature-card{background:linear-gradient(135deg,#f2ddd2,#f9efe7)}.small-stack{display:grid;gap:20px}.small-card{background:#fffdf9}.small-card.sage-card{background:#e9f0e9}.feature-card:hover,.small-card:hover,.quote:hover{transform:translateY(-4px);border-color:var(--rose);box-shadow:var(--shadow)}.card-top{display:flex;justify-content:space-between;align-items:center}.number{font-family:monospace;font-size:24px;font-weight:800;color:var(--coral)}.abstract-cover{height:150px;margin:25px 0;border-radius:20px;background:linear-gradient(135deg,rgba(37,35,33,.92),rgba(129,103,96,.82));position:relative;overflow:hidden}.abstract-cover:after{content:"";position:absolute;width:190px;height:190px;border:1px solid rgba(255,255,255,.25);border-radius:50%;right:-30px;top:-55px}.cover-line{position:absolute;left:22px;bottom:25px;height:2px;width:55%;background:var(--grad)}.card-title{font-size:22px;font-weight:800;margin:0 0 8px}.small-card .card-title{font-size:19px}.card-copy{color:var(--muted);font-size:14px;margin:0 0 18px}.tags{display:flex;gap:7px;flex-wrap:wrap}.tag{padding:4px 9px;border-radius:7px;background:rgba(255,255,255,.64);font-size:11px;color:var(--ink-soft)}.arrow{position:absolute;right:25px;bottom:25px;color:var(--coral);font-size:22px}
    .dark-stage{background:var(--dark);border-radius:32px;padding:48px;color:#f8f0eb}.stage-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:48px;align-items:center}.stage-copy{color:#c8bbb5;font-size:15px}.stage-step{display:flex;gap:14px;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.12)}.stage-step strong{color:#fff}.stage-step.active strong{color:#f2a17f}.stage-step span{font-family:monospace;color:#f2a17f}.preview{background:#f9f4ee;border-radius:22px;padding:20px;color:var(--ink)}.preview-top{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:14px;font-size:13px}.preview-grid{display:grid;grid-template-columns:1.3fr .8fr .8fr;gap:10px;margin-top:16px}.preview-tile{min-height:88px;border-radius:13px;background:linear-gradient(145deg,#dca5a4,#f0c6a0);padding:10px;font-size:11px;color:#5b423c}.preview-tile:nth-child(2){background:#dbe6dc}.preview-tile:nth-child(3){background:#eee0d6}.preview-tile:nth-child(4){background:#35302e;color:#fff;grid-column:span 2}.preview-tile:nth-child(5){background:#e8cac5}.preview-tile:nth-child(6){background:#ded5cf}
    .metric-row{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:28px}.metric{padding:20px;border-right:1px solid var(--line)}.metric:last-child{border:0}.metric b{display:block;font-size:22px}.metric span{font-size:12px;color:var(--muted)}.quotes{display:grid;grid-template-columns:1fr 1.2fr .9fr;gap:18px}.quote{background:#fffdf9;border:1px solid var(--line);border-radius:20px;padding:23px;transition:.22s}.quote:nth-child(2){background:#f3e3e2}.quote:nth-child(3){background:#e8f0e8}.quote p{font-size:15px;margin:0 0 20px}.quote small{color:var(--muted)}.rules{margin-top:20px;border:1px solid var(--line);border-radius:20px;padding:22px;background:#fffdf9}.rules li{list-style:none;margin:8px 0;color:var(--ink-soft);font-size:13px}.rules li:before{content:"✓";color:#71927a;font-weight:bold;margin-right:8px}
    .theme-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.theme{min-height:170px;padding:22px;border-radius:20px;border:1px solid var(--line);background:#fffdf9;display:flex;flex-direction:column;justify-content:space-between;transition:.22s}.theme:hover{background:#f4ded8;transform:translateY(-3px)}.theme b{font-size:17px}.theme span{font-size:12px;color:var(--muted)}.news-wrap{display:grid;grid-template-columns:1.2fr .8fr;gap:35px}.news-list{border-top:1px solid var(--line)}.news-item{display:flex;justify-content:space-between;gap:18px;padding:19px 0;border-bottom:1px solid var(--line);font-size:15px}.news-item span{color:var(--muted);font-size:12px;white-space:nowrap}.news-note{background:#eee6df;border-radius:24px;padding:28px}.news-note p{font-size:14px;color:var(--ink-soft)}.faq-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:70px}.faq-item{border-bottom:1px solid var(--line)}.faq-q{width:100%;background:none;border:0;text-align:left;padding:20px 0;display:flex;justify-content:space-between;font-weight:700;color:var(--ink)}.faq-q span{font-size:22px;color:var(--coral);transition:.2s}.faq-a{max-height:0;overflow:hidden;color:var(--muted);font-size:14px;transition:max-height .25s,padding .25s}.faq-item.open .faq-a{max-height:150px;padding:0 35px 19px 0}.faq-item.open .faq-q span{transform:rotate(45deg)}.cta-band{background:var(--grad);border-radius:30px;padding:40px 48px;display:flex;justify-content:space-between;align-items:center;gap:25px;color:#fff}.cta-band p{margin:6px 0 0;color:rgba(255,255,255,.84);font-size:14px}.cta-band .btn{background:#fff;color:var(--ink);border:0}.site-footer{background:#292625;color:#eee3de;padding:52px 0 30px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:45px}.footer-title{font-weight:800;font-size:16px}.footer-copy,.footer-links a{font-size:13px;color:#bcaea8}.footer-links{display:grid;gap:9px;margin-top:14px}.footer-links a:hover{color:#f1a184}.copyright{border-top:1px solid rgba(255,255,255,.12);margin-top:40px;padding-top:20px;color:#9c8d87;font-size:12px}.floating{position:fixed;z-index:40;bottom:18px;left:50%;transform:translateX(-50%);width:min(900px,calc(100% - 32px));background:#292625;color:#fff;border-radius:18px;padding:12px 16px 12px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;box-shadow:0 14px 40px rgba(34,25,22,.3)}.floating small{color:#cdbdb7}.floating .btn{padding:9px 16px}.float-close{background:none;border:0;color:#bba9a2;font-size:18px}.reopen{display:none;position:fixed;right:18px;bottom:18px;z-index:39;border:0;border-radius:50%;width:46px;height:46px;background:var(--grad);color:#fff}
    @media(max-width:1023px){.hero-grid,.stage-grid,.news-wrap,.faq-grid{grid-template-columns:1fr;gap:35px}.hero{padding-top:55px}.theme-grid{grid-template-columns:repeat(2,1fr)}.stage-grid{gap:25px}}
    @media(max-width:767px){body{padding-bottom:82px}.container{width:min(100% - 28px,620px)}.nav-wrap{height:65px}.nav-links{display:none;position:absolute;top:73px;left:14px;right:14px;background:#fffdf9;border:1px solid var(--line);border-radius:20px;padding:18px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:3px}.nav-links.open{display:flex}.nav-links a{padding:10px}.nav-rule{display:none}.menu-btn{display:block;margin-left:auto}.nav-cta{display:none}.step-track{padding-left:4px}.hero{padding:48px 0 58px}.hero h1{font-size:39px}.hero-desc{font-size:15px}.hero-actions .btn{width:100%}.dashboard{transform:none;padding:18px}.section{padding:64px 0}.section-head{display:block}.section-link{display:inline-block;margin-top:12px}.content-grid,.quotes{grid-template-columns:1fr}.feature-card{min-height:0}.dark-stage{padding:28px 20px;border-radius:24px}.preview{overflow:hidden}.preview-grid{min-width:470px}.metric-row{grid-template-columns:repeat(2,1fr)}.metric:nth-child(2){border-right:0}.metric:nth-child(-n+2){border-bottom:1px solid var(--line)}.theme-grid{grid-template-columns:1fr 1fr;gap:10px}.theme{min-height:145px;padding:17px}.footer-grid{grid-template-columns:1fr;gap:25px}.cta-band{padding:29px 24px;display:block}.cta-band .btn{margin-top:20px}.floating{bottom:0;width:100%;border-radius:18px 18px 0 0}.floating small{display:none}.floating .btn{margin-left:auto}.floating .float-close{font-size:15px}}
    @media(max-width:380px){.logo{font-size:13px}.theme-grid{grid-template-columns:1fr}.hero h1{font-size:34px}}
    @media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* roulang page: category1 */
:root{
      --ink:#252321;
      --ink-soft:#4e4945;
      --muted:#817974;
      --paper:#fbf8f4;
      --cream:#f3ece5;
      --rose:#d99a9d;
      --coral:#e78268;
      --sage:#a7b9a9;
      --line:rgba(54,44,39,.13);
      --dark:#292625;
      --shadow:0 18px 50px rgba(71,54,47,.11);
      --radius-lg:28px;
      --radius-md:18px;
      --grad:linear-gradient(125deg,#d79ca0 0%,#efb18a 52%,#e88369 100%);
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      background:var(--paper);
      color:var(--ink);
      font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",sans-serif;
      line-height:1.7;
      padding-bottom:96px;
    }
    a{text-decoration:none;color:inherit}
    button,input{font:inherit}
    button{cursor:pointer}
    img{display:block;max-width:100%}
    .container{width:min(1180px,calc(100% - 40px));margin:auto}
    .site-header{position:sticky;top:0;z-index:40;background:rgba(251,248,244,.96);border-bottom:1px solid transparent;transition:.25s}
    .site-header.scrolled{border-color:var(--line);box-shadow:0 8px 24px rgba(55,43,38,.07)}
    .nav-wrap{height:76px;display:flex;align-items:center;gap:32px}
    .logo{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:800;white-space:nowrap}
    .logo-mark{width:32px;height:32px;border-radius:11px;background:var(--grad);display:grid;place-items:center;color:#fff;font-weight:800;font-size:12px;box-shadow:0 6px 16px rgba(226,130,104,.25)}
    .nav-links{display:flex;align-items:center;gap:26px;margin-left:auto}
    .nav-links a,.nav-rule{font-size:14px;color:var(--ink-soft);transition:.2s}
    .nav-links a:hover,.nav-links a.active{color:var(--coral)}
    .nav-cta,.btn-primary{background:var(--grad);color:#fff;border:0;box-shadow:0 9px 20px rgba(224,128,103,.2)}
    .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:999px;font-size:14px;font-weight:700;transition:.22s;border:1px solid var(--line)}
    .btn:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(74,54,46,.13)}
    .btn:focus-visible,.nav-links a:focus-visible,button:focus-visible,.filter-chip:focus-visible,.content-card:focus-visible{outline:3px solid rgba(231,130,104,.45);outline-offset:3px}
    .menu-btn{display:none;border:0;background:transparent;padding:8px}
    .steps{border-top:1px solid rgba(54,44,39,.06);border-bottom:1px solid var(--line)}
    .step-track{display:flex;align-items:center;gap:0;overflow-x:auto}
    .step{position:relative;display:flex;align-items:center;gap:9px;padding:13px 35px 13px 0;margin-right:35px;color:var(--muted);font-size:13px;white-space:nowrap}
    .step:after{content:"";position:absolute;right:0;width:28px;height:1px;background:var(--line)}
    .step:last-child:after{display:none}
    .step b{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#eee6df;color:var(--muted);font-size:10px}
    .step.active{color:var(--ink);font-weight:700}
    .step.active b{background:var(--grad);color:white}
    .page-head{padding:64px 0 50px}
    .head-grid{display:grid;grid-template-columns:1fr 390px;gap:70px;align-items:center}
    .eyebrow{font-size:12px;letter-spacing:.16em;color:var(--coral);font-weight:700}
    h1{font-size:clamp(34px,5vw,56px);line-height:1.18;letter-spacing:-.06em;margin:14px 0 18px;font-weight:900}
    .head-copy{max-width:650px;color:var(--ink-soft);font-size:16px}
    .crumbs{display:flex;gap:9px;align-items:center;color:var(--muted);font-size:13px;margin-bottom:20px}
    .crumbs a:hover{color:var(--coral)}
    .directory-cover{min-height:260px;border-radius:var(--radius-lg);background:var(--dark);padding:25px;position:relative;overflow:hidden;box-shadow:var(--shadow)}
    .directory-cover:before{content:"";position:absolute;width:260px;height:260px;border:1px solid rgba(239,177,138,.35);border-radius:50%;right:-65px;top:-90px;box-shadow:0 0 0 25px rgba(217,154,157,.08),0 0 0 60px rgba(217,154,157,.05)}
    .cover-panel{position:relative;height:52px;margin:10px 0;border-radius:15px;padding:13px 16px;background:linear-gradient(110deg,rgba(255,255,255,.15),rgba(255,255,255,.05));border:1px solid rgba(255,255,255,.15);color:#fff}
    .cover-panel:nth-child(2){margin-left:25px;background:linear-gradient(110deg,rgba(217,154,157,.62),rgba(239,177,138,.36))}
    .cover-panel:nth-child(3){margin-left:50px;background:linear-gradient(110deg,rgba(167,185,169,.42),rgba(255,255,255,.08))}
    .cover-panel small{color:#e9d9d1;font-size:10px;margin-right:15px}
    .cover-panel strong{font-size:14px}
    .head-badges{display:flex;gap:9px;flex-wrap:wrap;margin-top:25px}
    .badge{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:999px;background:#f1e7df;color:var(--ink-soft);font-size:12px}
    .badge i{width:6px;height:6px;border-radius:50%;background:var(--coral);display:inline-block}
    .badge.sage i{background:#77957f}
    .filter-section{padding:0 0 55px}
    .filter-panel{padding:22px 25px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fffdf9;box-shadow:0 10px 30px rgba(71,54,47,.05)}
    .filter-row{display:flex;align-items:center;gap:13px;flex-wrap:wrap}
    .filter-row+.filter-row{border-top:1px solid var(--line);margin-top:16px;padding-top:16px}
    .filter-label{width:70px;color:var(--muted);font-size:13px;flex:none}
    .filter-chip{border:1px solid var(--line);border-radius:999px;background:#fffdf9;padding:8px 15px;color:var(--ink-soft);font-size:13px;transition:.2s}
    .filter-chip:hover,.filter-chip.active{background:var(--grad);border-color:transparent;color:#fff}
    .index-section{padding:25px 0 90px}
    .section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}
    .section-title{font-size:clamp(28px,4vw,40px);line-height:1.25;letter-spacing:-.04em;font-weight:800;margin:8px 0}
    .section-copy{max-width:650px;color:var(--muted);font-size:15px}
    .content-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
    .content-card{border:1px solid var(--line);border-radius:22px;background:#fffdf9;padding:14px;transition:.25s;display:block}
    .content-card:hover{transform:translateY(-5px);border-color:var(--rose);box-shadow:var(--shadow)}
    .content-card.featured{grid-column:span 2;display:grid;grid-template-columns:1.05fr .95fr;gap:23px;padding:17px}
    .cover-art{height:170px;border-radius:16px;position:relative;overflow:hidden;background:linear-gradient(135deg,#4d403d,#d99a9d)}
    .cover-art:before{content:"";position:absolute;width:150px;height:220px;border:1px solid rgba(255,255,255,.35);transform:rotate(28deg);right:22px;top:-38px}
    .cover-art:after{content:"";position:absolute;width:90px;height:90px;border-radius:25px;background:rgba(255,255,255,.17);left:20px;bottom:18px}
    .art-two{background:linear-gradient(135deg,#35413b,#a7b9a9)}
    .art-three{background:linear-gradient(135deg,#6b4a43,#efb18a)}
    .art-four{background:linear-gradient(135deg,#3c383b,#d79ca0)}
    .art-five{background:linear-gradient(135deg,#534b43,#e8c4aa)}
    .art-six{background:linear-gradient(135deg,#35403b,#c2d0c1)}
    .art-code{position:absolute;left:15px;top:13px;color:#fff;font:700 12px monospace;letter-spacing:.08em}
    .art-line{position:absolute;right:15px;bottom:15px;width:65px;height:4px;border-radius:4px;background:rgba(255,255,255,.75)}
    .card-body{padding:15px 3px 5px}
    .featured .card-body{padding:10px 10px 10px 0}
    .card-meta{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:11px;margin-bottom:8px}
    .tag{display:inline-flex;padding:4px 9px;border-radius:7px;background:#f1e7df;color:var(--ink-soft);font-size:11px;margin:0 4px 7px 0}
    .card-title{font-size:18px;font-weight:800;margin:4px 0 7px;line-height:1.4}
    .card-desc{font-size:13px;color:var(--muted);margin:0 0 16px}
    .card-foot{display:flex;justify-content:space-between;align-items:center;color:var(--coral);font-size:13px;font-weight:700}
    .card-arrow{font-size:21px;transition:.2s}
    .content-card:hover .card-arrow{transform:translateX(5px)}
    .pagination{display:flex;justify-content:center;gap:9px;margin-top:35px}
    .page-number{width:38px;height:38px;border-radius:12px;border:1px solid var(--line);display:grid;place-items:center;color:var(--ink-soft);font-size:13px}
    .page-number.active{background:var(--grad);color:#fff;border-color:transparent}
    .guide-band{padding:44px;border-radius:var(--radius-lg);background:var(--dark);color:#fff;display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;align-items:center}
    .guide-band p{color:#c8bbb5;font-size:15px}
    .guide-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
    .guide-step{padding:20px 16px;border:1px solid rgba(255,255,255,.13);border-radius:17px;background:rgba(255,255,255,.04)}
    .guide-step b{display:block;color:#f2a17f;font:700 13px monospace;margin-bottom:15px}
    .guide-step strong{font-size:15px}
    .guide-step span{display:block;color:#c8bbb5;font-size:12px;margin-top:6px}
    .notice-section{padding:85px 0}
    .notice-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
    .notice-card{padding:28px;border-radius:22px;border:1px solid var(--line);background:#f5ebe7}
    .notice-card.sage{background:#e9f0e9}
    .notice-card h2{font-size:23px;margin:0 0 10px}
    .notice-card p{color:var(--muted);font-size:14px}
    .notice-list{list-style:none;padding:0;margin:18px 0 0}
    .notice-list li{display:flex;gap:10px;padding:8px 0;color:var(--ink-soft);font-size:14px}
    .notice-list svg{flex:none;color:#78937d;margin-top:4px}
    .cta-band{background:var(--grad);border-radius:30px;padding:38px 45px;display:flex;justify-content:space-between;align-items:center;gap:25px;color:#fff}
    .cta-band h2{margin:0;font-size:28px;line-height:1.3}
    .cta-band p{margin:7px 0 0;color:rgba(255,255,255,.86);font-size:14px}
    .cta-band .btn{background:#fff;color:var(--ink);border:0}
    .site-footer{background:#eee7e1;padding:56px 0 22px}
    .footer-grid{display:grid;grid-template-columns:1.5fr .7fr .8fr;gap:50px}
    .footer-copy{color:var(--muted);font-size:14px}
    .footer-title{font-weight:800;margin-bottom:13px}
    .footer-links{display:grid;gap:8px;color:var(--muted);font-size:13px}
    .footer-links a:hover{color:var(--coral)}
    .copyright{border-top:1px solid var(--line);margin-top:40px;padding-top:18px;color:var(--muted);font-size:12px}
    .fixed-cta{position:fixed;z-index:50;left:50%;bottom:18px;transform:translateX(-50%);width:min(680px,calc(100% - 32px));background:var(--dark);color:#fff;border-radius:999px;padding:10px 12px 10px 18px;display:flex;align-items:center;justify-content:space-between;gap:15px;box-shadow:0 15px 40px rgba(41,38,37,.25)}
    .fixed-cta small{color:#c8bbb5;font-size:11px}
    .fixed-cta strong{font-size:13px;display:block}
    .fixed-cta .btn{padding:9px 16px}
    .close-cta{background:none;border:0;color:#c8bbb5;font-size:18px;padding:5px}
    .reopen{display:none;position:fixed;right:16px;bottom:16px;z-index:49;background:var(--dark);color:#fff;border:0;border-radius:50%;width:44px;height:44px}
    @media(max-width:1023px){
      .nav-links{gap:16px}.head-grid{gap:35px}.content-grid{grid-template-columns:repeat(2,1fr)}
      .content-card.featured{grid-column:span 2}
    }
    @media(max-width:767px){
      body{padding-bottom:75px}.container{width:min(100% - 28px,620px)}
      .nav-wrap{height:66px;justify-content:space-between}.menu-btn{display:block}
      .nav-links{display:none;position:absolute;top:73px;left:14px;right:14px;margin:0;padding:20px;background:#fffdf9;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:4px}
      .nav-links.open{display:flex}.nav-links a{padding:10px 8px}.nav-rule{padding:8px;color:var(--coral)}.nav-cta{text-align:center;margin-top:6px}
      .steps{overflow:hidden}.step-track{width:max-content;min-width:100%;padding-left:4px}.step{margin-right:22px;padding-right:22px}
      .page-head{padding:42px 0 35px}.head-grid{grid-template-columns:1fr;gap:28px}h1{font-size:37px}
      .directory-cover{min-height:220px}.filter-section{padding-bottom:35px}.filter-panel{padding:18px}
      .filter-row{flex-wrap:nowrap;overflow-x:auto;padding-bottom:3px}.filter-label{width:58px}.filter-chip{white-space:nowrap}
      .index-section{padding:15px 0 65px}.section-head{display:block}.section-head .section-copy{margin-top:8px}
      .content-grid{grid-template-columns:1fr}.content-card.featured{grid-column:auto;display:block}.featured .card-body{padding:15px 3px 5px}
      .guide-band{padding:28px 22px;grid-template-columns:1fr;gap:25px}.guide-steps{grid-template-columns:1fr}
      .notice-section{padding:60px 0}.notice-grid{grid-template-columns:1fr}
      .cta-band{padding:29px 23px;display:block}.cta-band .btn{margin-top:20px}
      .footer-grid{grid-template-columns:1fr;gap:28px}.copyright{margin-top:28px}
      .fixed-cta{bottom:0;width:100%;border-radius:20px 20px 0 0;padding:10px 13px}.fixed-cta small{display:none}
    }
    @media(max-width:380px){.logo{font-size:14px}.logo-mark{width:29px;height:29px}.fixed-cta strong{font-size:12px}.fixed-cta .btn{padding:8px 12px}}
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;transform:none!important}}
