/* roulang page: index */
:root{
            --berry:#762f3e;
            --berry-dark:#52212d;
            --berry-soft:#a96770;
            --cream:#fbf7f0;
            --sand:#efe5d8;
            --rose:#ead8d5;
            --ink:#2e2422;
            --muted:#776b65;
            --line:#dfd1c5;
            --white:#fffdf9;
            --shadow:0 16px 40px rgba(74,43,39,.09);
            --shadow-soft:0 8px 24px rgba(74,43,39,.07);
            --radius:16px;
            --radius-sm:10px;
            --max:1200px;
            --ease:220ms ease;
        }
        *,*::before,*::after{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{
            margin:0;
            color:var(--ink);
            background:var(--cream);
            font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;
            font-size:16px;
            line-height:1.75;
        }
        a{color:var(--berry);text-decoration:none;transition:color var(--ease),background var(--ease),transform var(--ease)}
        a:hover{color:var(--berry-dark)}
        img{display:block;max-width:100%;height:auto}
        button,input{font:inherit}
        button{cursor:pointer}
        :focus-visible{outline:3px solid #d79b91;outline-offset:3px}
        .container{width:min(var(--max),calc(100% - 40px));margin:0 auto}
        .section{padding:92px 0}
        .section-head{max-width:700px;margin-bottom:42px}
        .eyebrow{
            display:inline-flex;align-items:center;gap:8px;
            color:var(--berry);font-size:13px;font-weight:800;letter-spacing:.12em;
            text-transform:uppercase;margin-bottom:12px
        }
        .eyebrow::before{content:"";width:26px;height:2px;background:var(--berry)}
        h1,h2,h3,p{margin-top:0}
        h1,h2,h3{line-height:1.2;letter-spacing:-.035em}
        h1{font-size:clamp(40px,5vw,66px);margin-bottom:22px}
        h2{font-size:clamp(30px,4vw,44px);margin-bottom:15px}
        h3{font-size:21px;margin-bottom:10px}
        .lead{font-size:18px;color:var(--muted);max-width:650px}
        .topbar{
            background:var(--berry-dark);color:#f9eee7;font-size:13px;
            text-align:center;padding:8px 20px;letter-spacing:.02em
        }
        .site-header{
            position:sticky;top:0;z-index:20;background:rgba(251,247,240,.97);
            border-bottom:1px solid var(--line)
        }
        .nav-shell{min-height:78px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}
        .nav-group{display:flex;align-items:center;gap:26px}
        .nav-group.right{justify-content:flex-end}
        .nav-link{
            color:var(--ink);font-size:14px;font-weight:700;padding:9px 0;position:relative
        }
        .nav-link::after{
            content:"";position:absolute;left:0;right:100%;bottom:2px;height:2px;background:var(--berry);
            transition:right var(--ease)
        }
        .nav-link:hover::after,.nav-link.active::after{right:0}
        .brand{color:var(--berry-dark);font-weight:900;font-size:18px;white-space:nowrap;letter-spacing:-.04em}
        .brand span{color:var(--berry);font-weight:700}
        .menu-toggle{display:none;border:1px solid var(--line);background:var(--white);color:var(--berry);border-radius:8px;padding:7px 11px}
        .hero{padding:72px 0 58px;background:var(--sand);border-bottom:1px solid var(--line)}
        .hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:70px;align-items:center}
        .hero-copy h1 strong{color:var(--berry);font-weight:900}
        .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0 32px}
        .button{
            display:inline-flex;align-items:center;justify-content:center;gap:8px;
            min-height:48px;padding:0 20px;border-radius:11px;border:1px solid transparent;
            font-weight:800;font-size:15px;transition:all var(--ease)
        }
        .button.primary{color:#fffaf5;background:var(--berry);box-shadow:0 7px 16px rgba(118,47,62,.18)}
        .button.primary:hover{background:var(--berry-dark);transform:translateY(-2px);box-shadow:0 10px 20px rgba(118,47,62,.24)}
        .button.secondary{color:var(--berry);background:var(--white);border-color:var(--berry)}
        .button.secondary:hover{background:#f3e6df;transform:translateY(-2px)}
        .button.light{color:var(--berry-dark);background:#fff8ef;border-color:#fff8ef}
        .button.light:hover{background:#fff}
        .hero-points{display:flex;gap:28px;flex-wrap:wrap}
        .hero-point strong{display:block;color:var(--berry-dark);font-size:20px}
        .hero-point span{display:block;color:var(--muted);font-size:13px}
        .display-board{position:relative;min-height:360px}
        .cover{
            position:absolute;border:1px solid rgba(118,47,62,.18);border-radius:var(--radius);
            overflow:hidden;box-shadow:var(--shadow);background:var(--white)
        }
        .cover.main{width:66%;height:300px;left:17%;top:18px;z-index:3}
        .cover.small-one{width:34%;height:170px;left:0;bottom:12px;z-index:4}
        .cover.small-two{width:34%;height:170px;right:0;top:0;z-index:2}
        .cover-art{height:65%;background:linear-gradient(135deg,#c58e8a,#7a3344 55%,#4d202d);position:relative}
        .cover.small-one .cover-art{background:linear-gradient(135deg,#d8b19e,#95616a)}
        .cover.small-two .cover-art{background:linear-gradient(135deg,#b97982,#52212d)}
        .cover-art::after{content:"";position:absolute;width:46%;height:70%;right:14%;top:16%;border:1px solid rgba(255,255,255,.48);border-radius:50% 50% 18% 18%;transform:rotate(12deg)}
        .cover-meta{padding:13px 15px;background:var(--white)}
        .cover-meta small{color:var(--berry);font-weight:800;font-size:11px}
        .cover-meta b{display:block;margin-top:3px;font-size:15px}
        .info-strip{border-top:1px solid var(--line);margin-top:58px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;color:var(--muted);font-size:13px}
        .info-strip b{color:var(--ink);margin-right:6px}
        .pain{background:var(--white)}
        .pain-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px}
        .section-index{font-size:76px;line-height:1;color:var(--rose);font-weight:900}
        .issue-list{border-top:1px solid var(--line)}
        .issue{display:grid;grid-template-columns:58px 1fr;gap:20px;padding:23px 0;border-bottom:1px solid var(--line)}
        .issue-number{color:var(--berry);font-weight:900;font-size:14px;padding-top:3px}
        .issue h3{margin-bottom:5px}
        .issue p{color:var(--muted);margin-bottom:0;font-size:15px}
        .solution{background:#f4ede6}
        .directory-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:22px}
        .directory-main,.directory-side{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);box-shadow:var(--shadow-soft)}
        .directory-main{padding:28px}
        .feature-row{display:grid;grid-template-columns:42% 1fr;gap:28px;align-items:center}
        .feature-art{min-height:260px;border-radius:13px;background:linear-gradient(145deg,#8d4c59,#d3a39b 52%,#f0d9c5);position:relative;overflow:hidden}
        .feature-art:before{content:"精选主题";position:absolute;left:22px;top:20px;color:#fff8ef;border:1px solid rgba(255,255,255,.55);padding:5px 10px;border-radius:5px;font-size:12px}
        .feature-art:after{content:"";position:absolute;width:58%;height:72%;right:8%;bottom:-8%;border:2px solid rgba(255,248,239,.7);border-radius:52% 52% 12% 12%;transform:rotate(-15deg)}
        .tag{display:inline-block;padding:4px 9px;border-radius:5px;background:#f1dfd8;color:var(--berry);font-size:12px;font-weight:800;margin-bottom:12px}
        .feature-copy p{color:var(--muted);font-size:15px}
        .directory-side{padding:25px}
        .directory-side h3{font-size:19px}
        .topic-list{list-style:none;padding:0;margin:18px 0}
        .topic-list li{border-top:1px solid var(--line);padding:13px 0}
        .topic-list a{display:flex;justify-content:space-between;color:var(--ink);font-weight:700}
        .topic-list a::after{content:"→";color:var(--berry)}
        .value{background:var(--berry-dark);color:#fff7f0}
        .value .eyebrow,.value h2{color:#fff7f0}
        .value .eyebrow::before{background:#e4aaa2}
        .value .lead{color:#e3cfca}
        .value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:36px}
        .value-card{padding:25px;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius);background:rgba(255,255,255,.07)}
        .value-card b{font-size:30px;color:#f3c8bb;display:block;margin-bottom:14px}
        .value-card p{color:#e7d6d1;font-size:14px;margin-bottom:0}
        .latest{background:var(--cream)}
        .latest-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:34px}
        .latest-feature{padding:28px;border-radius:var(--radius);background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow-soft)}
        .latest-visual{height:190px;border-radius:12px;background:linear-gradient(120deg,#b57878,#e5c6b5 48%,#7d3948);margin-bottom:22px;position:relative}
        .latest-visual span{position:absolute;left:20px;bottom:18px;color:#fff8f1;font-size:22px;font-weight:900}
        .latest-feature p,.news-item p{color:var(--muted);font-size:14px}
        .news-list{border-top:1px solid var(--line)}
        .news-item{display:flex;gap:18px;padding:18px 0;border-bottom:1px solid var(--line)}
        .news-date{min-width:58px;color:var(--berry);font-weight:900;font-size:13px}
        .news-item h3{font-size:18px;margin-bottom:4px}
        .news-item p{margin-bottom:0}
        .quote{background:var(--rose)}
        .quote-box{max-width:900px;margin:auto;text-align:center}
        blockquote{font-size:clamp(23px,3vw,34px);line-height:1.5;font-weight:800;margin:20px 0 18px;color:var(--berry-dark)}
        .quote-note{color:var(--muted);font-size:14px}
        .faq{background:var(--white)}
        .accordion{margin:0;border:0;background:transparent}
        .accordion-item{border:0;border-top:1px solid var(--line);background:transparent}
        .accordion-title{color:var(--ink);font-size:17px;font-weight:800;padding:20px 42px 20px 0;border:0;background:transparent}
        .accordion-title:hover,.accordion-title:focus{color:var(--berry);background:transparent}
        .accordion-content{border:0;background:#fbf5ef;color:var(--muted);padding:17px 22px;font-size:15px}
        .cta{padding:68px 0;background:var(--berry);color:#fff8f2}
        .cta-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}
        .cta h2{margin-bottom:10px}
        .cta p{color:#f1dcd5;margin-bottom:0;max-width:650px}
        .footer{background:#2f2423;color:#d9c4bc;padding:48px 0 26px}
        .footer-grid{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap}
        .footer-brand{color:#fff7f0;font-weight:900;font-size:18px;margin-bottom:12px}
        .footer small{color:#a9958e}
        .footer-links{display:flex;gap:22px;flex-wrap:wrap}
        .footer-links a{color:#e5d3cc;font-size:14px}
        .footer-links a:hover{color:#fff}
        .copyright{border-top:1px solid rgba(255,255,255,.13);margin-top:35px;padding-top:18px;font-size:12px;color:#a9958e}
        .age-overlay{position:fixed;inset:0;background:rgba(42,26,25,.7);z-index:50;display:flex;align-items:center;justify-content:center;padding:20px}
        .age-dialog{width:min(480px,100%);background:var(--white);border-radius:18px;padding:34px;box-shadow:0 24px 70px rgba(20,10,10,.3)}
        .age-dialog h2{font-size:28px;color:var(--berry-dark)}
        .age-dialog p{color:var(--muted);font-size:14px}
        .age-actions{display:flex;gap:10px;margin-top:22px}
        .age-actions .button{flex:1}
        .backtop{position:fixed;right:22px;bottom:22px;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:var(--white);color:var(--berry);display:none;z-index:15}
        .backtop.show{display:block}
        @media(max-width:1023px){
            .nav-shell{grid-template-columns:1fr auto}
            .brand{order:0}
            .nav-group{display:none}
            .menu-toggle{display:block;justify-self:end}
            .nav-shell.menu-open .nav-group{display:flex;position:absolute;left:20px;right:20px;top:78px;padding:18px;flex-direction:column;align-items:stretch;gap:6px;background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:0 0 13px 13px}
            .nav-shell.menu-open .nav-group.right{justify-content:flex-start}
            .hero-grid,.pain-grid,.latest-grid{grid-template-columns:1fr;gap:38px}
            .hero{padding-top:58px}
            .directory-grid{grid-template-columns:1fr}
            .value-grid{grid-template-columns:1fr 1fr}
        }
        @media(max-width:639px){
            .container{width:min(100% - 28px,var(--max))}
            .section{padding:62px 0}
            .topbar{font-size:12px}
            .nav-shell{min-height:66px}
            .brand{font-size:15px}
            .nav-shell.menu-open .nav-group{top:66px;left:14px;right:14px}
            h1{font-size:40px}
            .lead{font-size:16px}
            .hero-actions .button{width:100%}
            .display-board{min-height:290px}
            .cover.main{height:235px}
            .cover.small-one,.cover.small-two{height:135px}
            .cover-meta{padding:8px 10px}
            .cover-meta b{font-size:12px}
            .info-strip{margin-top:35px;display:block}
            .info-strip span{display:block;margin:5px 0}
            .pain-grid{gap:24px}
            .section-index{font-size:58px}
            .feature-row{grid-template-columns:1fr;gap:20px}
            .feature-art{min-height:190px}
            .directory-main{padding:19px}
            .directory-side{padding:20px}
            .value-grid{grid-template-columns:1fr}
            .latest-feature{padding:19px}
            .latest-visual{height:155px}
            .news-item{gap:10px}
            .news-date{min-width:49px}
            blockquote{font-size:23px}
            .cta-inner{display:block}
            .cta .button{margin-top:24px;width:100%}
            .age-dialog{padding:25px}
            .age-actions{flex-direction:column}
        }

/* roulang page: category1 */
:root{
 --berry:#762f3e;
 --berry-dark:#52212d;
 --berry-soft:#a96770;
 --cream:#fbf7f0;
 --sand:#efe5d8;
 --rose:#ead8d5;
 --ink:#2e2422;
 --muted:#776b65;
 --line:#dfd1c5;
 --white:#fffdf9;
 --shadow:0 16px 40px rgba(74,43,39,.09);
 --shadow-soft:0 8px 24px rgba(74,43,39,.07);
 --radius:16px;
 --radius-sm:10px;
 --max:1200px;
 --ease:220ms ease;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--cream);font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;font-size:16px;line-height:1.75}
a{color:var(--berry);text-decoration:none;transition:color var(--ease),background var(--ease),transform var(--ease)}
a:hover{color:var(--berry-dark)}
img{display:block;max-width:100%;height:auto}
button,input{font:inherit}
button{cursor:pointer}
:focus-visible{outline:3px solid rgba(169,103,112,.5);outline-offset:3px}
.container{width:min(var(--max),calc(100% - 40px));margin:0 auto}
.section{padding:88px 0}
.topbar{background:var(--berry-dark);color:#f9eee7;text-align:center;padding:8px 20px;font-size:13px;letter-spacing:.02em}
.site-header{position:sticky;top:0;z-index:20;background:rgba(251,247,240,.98);border-bottom:1px solid var(--line)}
.nav-shell{min-height:78px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}
.nav-group{display:flex;align-items:center;gap:26px}
.nav-group.right{justify-content:flex-end}
.nav-link{color:var(--ink);font-size:14px;font-weight:700;padding:9px 0;position:relative}
.nav-link::after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:2px;background:var(--berry);transition:right var(--ease)}
.nav-link:hover::after,.nav-link.active::after{right:0}
.brand{color:var(--berry-dark);font-weight:900;font-size:18px;white-space:nowrap;letter-spacing:-.04em}
.brand span{color:var(--berry);font-weight:700}
.nav-note{font-size:13px;color:var(--muted)}
.menu-toggle{display:none;border:1px solid var(--line);background:var(--white);color:var(--berry);border-radius:8px;padding:7px 11px}
.page-hero{background:var(--sand);border-bottom:1px solid var(--line);padding:62px 0 58px}
.breadcrumb{font-size:13px;color:var(--muted);margin-bottom:22px}
.breadcrumb a{color:var(--berry)}
.page-hero-grid{display:grid;grid-template-columns:1fr 310px;gap:60px;align-items:end}
.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--berry);font-size:13px;font-weight:800;letter-spacing:.12em;margin-bottom:12px}
.eyebrow:before{content:"";width:26px;height:2px;background:var(--berry)}
h1,h2,h3{line-height:1.25;letter-spacing:-.035em;margin-top:0}
h1{font-size:clamp(38px,5vw,58px);margin-bottom:18px;color:var(--berry-dark)}
h1 strong{color:var(--berry)}
h2{font-size:clamp(28px,3.2vw,40px);color:var(--berry-dark);margin-bottom:15px}
h3{font-size:21px;margin-bottom:8px}
.lead{font-size:18px;color:var(--muted);max-width:700px}
.hero-stat{border-left:3px solid var(--berry);padding:6px 0 6px 24px}
.hero-stat b{font-size:42px;line-height:1;color:var(--berry);display:block}
.hero-stat span{color:var(--muted);font-size:14px}
.section-head{max-width:720px;margin-bottom:36px}
.filter-panel{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow-soft);margin-bottom:34px}
.filter-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.search-box{flex:1 1 260px;position:relative}
.search-box input{width:100%;height:48px;border:1px solid var(--line);border-radius:10px;background:#fffaf5;color:var(--ink);padding:0 16px}
.search-box input:focus{border-color:var(--berry);box-shadow:0 0 0 3px rgba(118,47,62,.1)}
.filter-label{font-size:13px;color:var(--muted);font-weight:800}
.filter-tag{border:1px solid var(--line);background:var(--cream);color:var(--ink);border-radius:7px;padding:8px 13px;font-size:13px;transition:all var(--ease)}
.filter-tag:hover,.filter-tag.selected{background:var(--berry);border-color:var(--berry);color:#fffaf5}
.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:28px}
.content-list{display:grid;gap:18px}
.content-card{display:grid;grid-template-columns:220px 1fr;gap:24px;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow-soft);transition:transform var(--ease),box-shadow var(--ease),border-color var(--ease)}
.content-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#c9a8a2}
.cover-art{min-height:158px;border-radius:11px;background:linear-gradient(145deg,#7b3545,#bd8584 55%,#ead1c0);position:relative;overflow:hidden}
.cover-art:before{content:"主题精选";position:absolute;left:14px;top:13px;border:1px solid rgba(255,255,255,.65);color:#fff8f0;padding:3px 8px;border-radius:5px;font-size:11px}
.cover-art:after{content:"";position:absolute;width:55%;height:95%;right:13%;bottom:-42%;border:2px solid rgba(255,248,239,.6);border-radius:50% 50% 8% 8%;transform:rotate(-14deg)}
.cover-art.alt{background:linear-gradient(145deg,#65434a,#b98686 58%,#edd8c5)}
.cover-art.soft{background:linear-gradient(145deg,#8a5960,#d1a49b 55%,#f0dfd0)}
.card-top{display:flex;justify-content:space-between;gap:12px;align-items:start}
.tag{display:inline-block;padding:4px 9px;border-radius:5px;background:#f1dfd8;color:var(--berry);font-size:12px;font-weight:800}
.status{font-size:12px;color:var(--muted);white-space:nowrap}
.content-card p{color:var(--muted);font-size:14px;margin:10px 0 14px}
.card-meta{display:flex;gap:18px;color:var(--muted);font-size:12px;border-top:1px solid var(--line);padding-top:12px}
.card-link{font-weight:800;font-size:14px;margin-top:15px;display:inline-block}
.feature-panel{margin:4px 0 2px;background:var(--berry-dark);color:#fff7f0;border-radius:var(--radius);padding:28px;display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center}
.feature-panel h3{color:#fff7f0;margin-bottom:6px}
.feature-panel p{color:#e8d8d3;margin:0;font-size:14px}
.badge-light{display:inline-block;color:var(--berry-dark);background:#f4d4c9;border-radius:5px;padding:4px 8px;font-size:11px;font-weight:800;margin-bottom:10px}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 19px;border-radius:11px;border:1px solid transparent;font-weight:800;font-size:14px;transition:all var(--ease)}
.button.primary{color:#fffaf5;background:var(--berry);box-shadow:0 7px 16px rgba(118,47,62,.18)}
.button.primary:hover{background:var(--berry-dark);transform:translateY(-2px)}
.button.secondary{color:var(--berry);background:var(--white);border-color:var(--berry)}
.button.secondary:hover{background:#f3e6df;transform:translateY(-2px)}
.sidebar{display:grid;gap:18px;align-content:start}
.side-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:22px}
.side-card h3{font-size:18px;color:var(--berry-dark);border-bottom:1px solid var(--line);padding-bottom:12px}
.side-list{list-style:none;padding:0;margin:0}
.side-list li{border-bottom:1px solid var(--line);padding:10px 0}
.side-list li:last-child{border-bottom:0}
.side-list a{display:flex;justify-content:space-between;color:var(--ink);font-size:14px;font-weight:700}
.side-list a:after{content:"→";color:var(--berry)}
.notice{font-size:13px;color:var(--muted);margin:0}
.empty-state{display:none;text-align:center;border:1px dashed var(--line);border-radius:var(--radius);padding:46px 20px;color:var(--muted);background:rgba(255,253,249,.55)}
.pagination{display:flex;justify-content:center;gap:8px;margin-top:34px}
.page-number{width:38px;height:38px;border:1px solid var(--line);border-radius:8px;background:var(--white);color:var(--ink);display:grid;place-items:center;font-size:13px}
.page-number.active,.page-number:hover{background:var(--berry);border-color:var(--berry);color:#fff}
.faq-section{background:var(--sand);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.accordion{background:transparent;margin:0}
.accordion-item{border:0;border-top:1px solid var(--line);background:transparent}
.accordion-title{color:var(--ink);font-size:16px;font-weight:800;padding:20px 42px 20px 0;background:transparent}
.accordion-title:hover,.accordion-title:focus{background:transparent;color:var(--berry)}
.accordion-content{background:transparent;color:var(--muted);padding:0 30px 20px 0;font-size:14px}
.cta{background:var(--berry);color:#fff8f0;padding:62px 0}
.cta-grid{display:flex;align-items:center;justify-content:space-between;gap:28px}
.cta h2{color:#fff8f0;margin-bottom:10px}
.cta p{color:#ead8d5;max-width:650px;margin:0}
.footer{background:#2d2221;color:#eadbd4;padding:38px 0 22px}
.footer-grid{display:flex;justify-content:space-between;gap:30px;align-items:start}
.footer-brand{font-weight:900;font-size:18px;color:#fff8f0;margin-bottom:6px}
.footer small{color:#cdbbb5}
.footer-links{display:flex;gap:22px;flex-wrap:wrap}
.footer-links a{color:#eadbd4;font-size:13px}
.footer-links a:hover{color:#fff}
.copyright{border-top:1px solid rgba(255,255,255,.14);margin-top:28px;padding-top:17px;color:#bca9a3;font-size:12px}
.age-overlay{position:fixed;inset:0;background:rgba(46,36,34,.72);z-index:80;display:flex;align-items:center;justify-content:center;padding:20px}
.age-dialog{width:min(480px,100%);background:var(--white);border-radius:18px;padding:32px;box-shadow:0 25px 80px rgba(20,10,10,.3);text-align:center}
.age-dialog h2{font-size:28px;margin-bottom:12px}
.age-dialog p{color:var(--muted);font-size:14px}
.age-actions{display:flex;gap:10px;justify-content:center;margin-top:22px}
.age-overlay.is-hidden{display:none}
@media screen and (max-width:1023px){
 .container{width:min(var(--max),calc(100% - 32px))}
 .nav-shell{gap:14px}
 .nav-group{gap:17px}
 .brand{font-size:16px}
 .page-hero-grid{grid-template-columns:1fr 220px;gap:30px}
 .content-layout{grid-template-columns:1fr}
 .sidebar{grid-template-columns:repeat(2,1fr)}
}
@media screen and (max-width:767px){
 .section{padding:62px 0}
 .nav-shell{display:flex;justify-content:space-between;min-height:66px}
 .nav-group{display:none}
 .brand{font-size:15px;max-width:245px}
 .menu-toggle{display:block}
 .nav-shell.open .nav-group{display:flex;position:absolute;left:0;right:0;top:66px;background:var(--cream);border-bottom:1px solid var(--line);padding:18px 20px;flex-direction:column;align-items:stretch;gap:4px;box-shadow:var(--shadow-soft)}
 .nav-shell.open .nav-group.right{justify-content:flex-start}
 .nav-shell.open .nav-link{padding:10px 0}
 .page-hero{padding:42px 0}
 .page-hero-grid{display:block}
 .hero-stat{margin-top:28px}
 .content-card{grid-template-columns:130px 1fr;gap:15px;padding:13px}
 .cover-art{min-height:145px}
 .content-card p{font-size:13px;margin:7px 0}
 .card-meta{gap:10px;flex-wrap:wrap}
 .feature-panel{display:block}
 .feature-panel .button{margin-top:18px}
 .sidebar{grid-template-columns:1fr}
 .cta-grid{display:block}
 .cta .button{margin-top:22px}
 .footer-grid{display:block}
 .footer-links{margin-top:22px;gap:14px}
}
@media screen and (max-width:520px){
 h1{font-size:35px}
 .lead{font-size:16px}
 .filter-panel{padding:16px}
 .filter-row{display:block}
 .filter-label{display:block;margin:12px 0 7px}
 .filter-tag{margin:0 5px 6px 0}
 .content-card{grid-template-columns:1fr}
 .cover-art{min-height:170px}
 .card-top{display:block}
 .status{display:block;margin-top:7px}
 .age-dialog{padding:25px 20px}
 .age-actions{flex-direction:column}
 .age-actions .button{width:100%}
}
