.icon{display:inline-block;flex:0 0 auto;vertical-align:middle}
:root{
    --serif:"Iowan Old Style","Palatino Linotype",Palatino,Charter,Georgia,serif;
    --sans:Inter,"Avenir Next",Avenir,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    --muted:#55534d;
    --weight-regular:400;
    --weight-medium:500;
    --weight-semibold:600;
    --weight-bold:700;
}
html{font-size:100%}
body{font-family:var(--sans);font-size:16px;font-weight:var(--weight-regular);line-height:1.65;text-rendering:optimizeLegibility}
.shell{width:min(1240px,calc(100% - 56px))}
h1,h2,h3{text-wrap:balance}
.archive-header h1,.section-heading h2,.post-card h3,.rail-story h2{
    font-family:var(--sans);
    font-weight:800;
    letter-spacing:-.035em;
}
.archive-header{border-top:4px solid var(--yellow);padding-block:48px 42px}
.archive-header h1{font-size:clamp(2.45rem,4.6vw,4.3rem);line-height:1}
.post-card h3{font-size:1.24rem;line-height:1.16}
.post-card-featured h3{font-family:var(--serif);font-weight:650}
.article-header h1{font-family:var(--serif);font-weight:650;letter-spacing:-.045em}
.article-body{font-family:var(--serif);font-size:clamp(1.08rem,1.15vw,1.19rem);line-height:1.78}
.article-body h2,.article-body h3{font-family:var(--sans);line-height:1.18;text-wrap:balance}
.article-body h2{font-size:clamp(1.55rem,2.4vw,1.95rem)}
.article-body h3{font-size:clamp(1.25rem,1.8vw,1.45rem)}
.article-body p{max-width:72ch}
.post-card-image img,.article-image img{background:var(--warm)}
.article-image img{height:auto}
.button-with-icon,.link-with-icon,.post-meta span{align-items:center;display:inline-flex;gap:.42rem}
.button-with-icon{justify-content:center}
.topic-icon{align-items:center;background:#f7e38b;border-radius:50%;color:#332b0d;display:flex;height:42px;justify-content:center;margin:18px 0 12px;width:42px}
.topic-tile strong{margin-top:8px}
.article-image-inside{margin-inline:auto;max-width:720px}
.article-image-inside img{max-height:480px}
.article-affiliate-notice{background:#f7f3e8;border-left:4px solid var(--yellow);color:#4d4b45;font:600 .82rem/1.5 var(--sans);margin:1.2rem auto 0;max-width:720px;padding:.75rem 1rem;text-align:left}
.article-affiliate-notice a{text-decoration:underline;text-underline-offset:3px}
.footer-policy-links{border-top:1px solid #48453e;display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:34px;padding-top:18px}
.footer-policy-links a{color:#d9d4c9;font-size:.78rem;margin:0}
.footer-policy-links+.footer-bottom{margin-top:18px}
.footer-bottom{align-items:center;display:flex;flex-wrap:wrap;gap:5px}
.footer-bottom a{color:#fff;font-weight:var(--weight-semibold);text-decoration:underline;text-decoration-color:#f2c400;text-underline-offset:3px}
.footer-socials{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.site-footer .footer-socials a{align-items:center;border:1px solid #56524a;color:#f8f5ed;display:inline-flex;font-size:.8rem;font-weight:var(--weight-semibold);gap:7px;margin:0;min-height:42px;padding:8px 10px}
.site-footer .footer-socials a:hover{background:#34322d;border-color:#777168;text-decoration:none}
.footer-grid{grid-template-columns:minmax(220px,1.15fr) minmax(165px,.72fr) minmax(130px,.55fr) minmax(260px,1fr)}
.article-layout.article-layout-with-sidebar{max-width:1180px}
.article-grid{align-items:start;display:grid;gap:clamp(34px,4vw,58px);grid-template-columns:minmax(0,820px) minmax(260px,300px);margin-top:26px}
.article-main{min-width:0}
.article-sidebar{display:flex;flex-direction:column;gap:22px;position:sticky;top:20px}
.sidebar-widget{border:1px solid var(--line);background:#fff;padding:20px}
.sidebar-widget h2{font-family:var(--serif);font-size:1.5rem;font-weight:500;line-height:1.12;margin-bottom:14px}
.sidebar-author{text-align:center}
.sidebar-author>img{aspect-ratio:1;border-radius:50%;height:auto;margin:0 auto 16px;object-fit:cover;width:min(180px,72%)}
.sidebar-author>p{color:var(--muted);font-size:.88rem;line-height:1.55}
.sidebar-socials{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.sidebar-socials a{align-items:center;border:1px solid var(--line);display:inline-flex;font-size:.75rem;font-weight:750;gap:5px;min-height:40px;padding:7px 9px}
.sidebar-ad-slot{background:var(--canvas);text-align:center}
.ad-placeholder{align-items:center;border:1px dashed #aaa399;color:var(--muted);display:flex;font-size:.75rem;justify-content:center;min-height:180px;padding:20px}
.sidebar-story-list article{border-top:1px solid var(--line);padding:13px 0}
.sidebar-story-list article:first-child{border-top:0;padding-top:0}
.sidebar-story-list a{display:block;font-family:var(--serif);font-size:1rem;font-weight:600;line-height:1.25}
.sidebar-story-list time{color:var(--muted);display:block;font-size:.72rem;margin-top:5px}
.sidebar-topic-list{list-style:none;margin:0;padding:0}
.sidebar-topic-list li{border-top:1px solid var(--line)}
.sidebar-topic-list li:first-child{border-top:0}
.sidebar-topic-list a{align-items:center;display:flex;font-size:.83rem;font-weight:700;gap:10px;justify-content:space-between;padding:9px 0}
.sidebar-tags{display:flex;flex-wrap:wrap;gap:7px}
.sidebar-tags a{align-items:center;background:var(--canvas);border:1px solid var(--line);display:inline-flex;font-size:.72rem;gap:4px;padding:5px 7px}
.sidebar-page-links{display:grid;gap:8px}
.sidebar-page-links a{font-size:.84rem;font-weight:700}
.sidebar-product{border-top:1px solid var(--line);padding-top:16px}
.sidebar-product+.sidebar-product{margin-top:16px}
.sidebar-product img{aspect-ratio:4/3;height:auto;margin-bottom:12px;object-fit:contain;width:100%}
.sidebar-product-brand{color:#715b00;font-size:.7rem;font-weight:850;letter-spacing:.08em;margin-bottom:5px;text-transform:uppercase}
.sidebar-product h3{font-family:var(--serif);font-size:1.16rem;margin-bottom:8px}
.sidebar-product>p{color:var(--muted);font-size:.8rem}
.sidebar-product-link{align-items:center;background:var(--yellow);border:1px solid var(--yellow-dark);display:inline-flex;font-size:.78rem;font-weight:850;gap:5px;margin-top:4px;min-height:42px;padding:8px 11px}
.sidebar-disclosure{color:var(--muted);font-size:.72rem}
@media (max-width:980px){.article-grid{grid-template-columns:minmax(0,1fr)}.article-sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));position:static}.sidebar-author,.sidebar-products{grid-column:1/-1}}
@media (max-width:620px){.article-sidebar{display:flex}.sidebar-widget{padding:18px}.ad-placeholder{min-height:120px}}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #f2c400;outline-offset:3px}
button,.nav-scroll a,.text-link{min-height:44px}
.post-card-image{aspect-ratio:16/9}
.form-honeypot{height:0!important;left:-10000px!important;overflow:hidden!important;position:absolute!important;width:0!important}
.breadcrumbs{font-family:var(--sans);font-size:.78rem;margin-bottom:22px}
.breadcrumbs ol{align-items:center;display:flex;flex-wrap:wrap;gap:7px;list-style:none;margin:0;padding:0}
.breadcrumbs li{align-items:center;color:var(--muted);display:inline-flex;gap:7px;min-width:0}
.breadcrumbs li:not(:last-child)::after{color:#9d978c;content:"/"}
.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}
.breadcrumbs span[aria-current=page]{max-width:min(65vw,620px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.error-page{max-width:900px;min-height:58vh;padding-block:72px}
.error-page h1{font-size:clamp(2.8rem,7vw,5.6rem);max-width:780px}
.error-page>p:not(.eyebrow){color:var(--muted);font-family:var(--serif);font-size:1.25rem;max-width:680px}
.error-search{margin:30px 0 20px}
.primary-link{align-items:center;background:var(--ink);color:#fff;display:inline-flex;font-weight:800;min-height:46px;padding:11px 17px}
.primary-link:hover{background:#34332e;text-decoration:none}
h1,h2,h3,.post-card a,.article-body{overflow-wrap:anywhere}
.article-body iframe,.article-body video{aspect-ratio:16/9;height:auto;max-width:100%;width:100%}
.article-body pre{background:#25241f;color:#f8f5ed;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.9rem;overflow-x:auto;padding:18px;white-space:pre}
.article-body code{overflow-wrap:normal}
.article-body :target{scroll-margin-top:24px}
.pagination-shell{
    align-items:center;
    border-top:1px solid var(--line);
    display:flex;
    gap:24px;
    justify-content:space-between;
    margin-top:36px;
    padding-top:22px;
}
.pagination-summary{color:var(--muted);font-size:.86rem;margin:0}
.pagination{
    align-items:center;
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    justify-content:flex-end;
    list-style:none;
    margin:0;
    padding:0;
}
.pagination li{display:flex}
.pagination a,.pagination span{
    align-items:center;
    border:1px solid var(--line);
    display:inline-flex;
    font-size:.86rem;
    font-weight:750;
    justify-content:center;
    min-height:44px;
    min-width:44px;
    padding:8px 12px;
}
.pagination a:hover{background:var(--canvas);border-color:#9e978a;text-decoration:none}
.pagination .pagination-current{background:var(--yellow);border-color:var(--yellow-dark)}
.pagination .pagination-disabled{color:#999288;cursor:not-allowed}
.pagination .pagination-ellipsis{border-color:transparent;min-width:28px;padding-inline:4px}
.pagination-shell svg,.pagination svg{height:18px!important;max-height:18px!important;max-width:18px!important;width:18px!important}
.article-body-continuation{margin-top:0}
.affiliate-module{background:#f7f3e8;border:1px solid var(--line,#d8d3c7);margin:3rem 0;padding:clamp(1.25rem,3vw,2rem)}
.affiliate-module>h2{margin:.5rem 0 1.25rem}
.affiliate-disclosure{color:#4d4b45;font:600 .88rem/1.5 var(--sans);margin:0}
.affiliate-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr))}
.affiliate-card{background:#fff;border:1px solid #d8d3c7;display:flex;flex-direction:column;min-width:0}
.affiliate-card-content{display:flex;flex:1;flex-direction:column;padding:1.1rem}
.affiliate-product-image{aspect-ratio:4/3;background:#f1eee6;height:auto;object-fit:contain;width:100%}
.affiliate-card-topline{align-items:center;display:flex;gap:.65rem;justify-content:space-between}
.affiliate-card h3,.affiliate-card p{margin-top:0}
.affiliate-card-label{color:#715b00;font:800 .72rem/1.2 var(--sans);letter-spacing:.08em;text-transform:uppercase}
.affiliate-badge{background:var(--yellow);color:#27230e;font:800 .7rem/1 var(--sans);padding:.35rem .48rem;text-transform:uppercase}
.affiliate-specs{border-block:1px solid var(--line);font:500 .82rem/1.35 var(--sans);margin:.4rem 0 1rem}
.affiliate-specs div{display:grid;gap:.75rem;grid-template-columns:minmax(90px,.7fr) 1fr;padding:.48rem 0}
.affiliate-specs div+div{border-top:1px solid var(--line)}
.affiliate-specs dt{color:var(--muted);font-weight:700}
.affiliate-specs dd{margin:0}
.affiliate-pros-cons{color:#44413b;font-size:.84rem}
.affiliate-pros-cons p{margin-bottom:.45rem}
.affiliate-price,.affiliate-code{font-weight:700}
.affiliate-button{align-items:center;align-self:flex-start;display:inline-flex;gap:.35rem;margin-top:auto;min-height:44px}
.paid-link{font-size:.78em;font-weight:600}
.affiliate-card-disclosure,.affiliate-verified{color:var(--muted);font-size:.72rem;line-height:1.45;margin:.8rem 0 0}
.affiliate-verified{margin-top:.35rem}
@media (max-width:720px){
    .home-hero{padding-top:34px}
    .hero-heading{margin-bottom:26px}
    h1{font-size:clamp(2.45rem,13vw,4rem)}
    .article-header h1{font-size:clamp(2.35rem,12vw,3.8rem)}
    .article-dek{font-size:1.1rem}
    .article-image{margin-block:26px}
    .site-search button{min-width:104px}
    .error-page{padding-block:46px}
    .archive-header{padding-block:36px 32px}
    .pagination-shell{align-items:flex-start;flex-direction:column;gap:14px}
    .pagination{justify-content:flex-start}
}
@media (max-width:440px){
    .shell{width:min(100% - 24px,1180px)}
    .site-notice{padding-inline:12px}
    .header-main{padding-block:14px}
    .brand{width:145px}
    .site-search input{min-width:0}
    .site-search button{min-width:88px;padding-inline:12px}
    .newsletter-panel{padding:23px}
    .post-card-body{padding:15px}
    .breadcrumbs span[aria-current=page]{max-width:58vw}
    .error-page h1{font-size:clamp(2.55rem,13vw,3.7rem)}
    .error-page>p:not(.eyebrow){font-size:1.08rem}
    .pagination a,.pagination span{min-height:44px;min-width:44px;padding-inline:10px}
}
@media (prefers-reduced-motion:reduce){
    html{scroll-behavior:auto}
    *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important}
}

html{scroll-behavior:smooth}
.menu-toggle{
    align-items:center;
    background:var(--ink);
    border:1px solid var(--ink);
    color:#fff;
    display:none;
    font:800 .82rem/1 var(--sans);
    gap:8px;
    justify-content:center;
    min-height:44px;
    padding:10px 14px;
}
.menu-toggle .icon{transition:transform .24s ease}
.menu-toggle[aria-expanded=true] .icon{transform:rotate(90deg)}
.nav-scroll a,.post-card,.sidebar-widget,.topic-tile,.primary-link,.affiliate-card{
    transition:border-color .22s ease,box-shadow .22s ease,color .22s ease,transform .22s ease;
}
.post-card:hover,.topic-tile:hover,.affiliate-card:hover{
    border-color:#aaa292;
    box-shadow:0 14px 34px rgba(32,30,25,.09);
    transform:translateY(-3px);
}
.sidebar-widget{box-shadow:0 5px 18px rgba(32,30,25,.035)}
.article-body h2{
    border-top:1px solid var(--line);
    margin-top:clamp(2.6rem,6vw,4.4rem);
    padding-top:clamp(1.5rem,3vw,2rem);
    scroll-margin-top:24px;
}
.article-body h3{margin-top:2.2rem;scroll-margin-top:24px}
.article-image-inside{
    border-block:1px solid var(--line);
    margin-block:clamp(2.2rem,6vw,4rem);
    padding-block:clamp(1rem,2vw,1.4rem);
}
.article-image-inside figcaption{
    color:var(--muted);
    font:.78rem/1.5 var(--sans);
    margin-top:9px;
}
.section-heading{
    border-top:4px solid var(--ink);
    padding-top:16px;
}
.reveal-item{opacity:1;transform:none}
.reveal-item.is-visible{animation:tutorils-reveal .55s ease var(--reveal-delay,0ms) both}
@keyframes tutorils-reveal{
    from{opacity:.72;transform:translateY(12px)}
    to{opacity:1;transform:none}
}

@media (max-width:900px){
    .header-main{
        align-items:center;
        display:grid;
        gap:14px 18px;
        grid-template-columns:minmax(0,1fr) auto;
        min-height:0;
        padding-block:16px;
    }
    .brand{grid-column:1;grid-row:1;width:170px}
    .menu-toggle{display:inline-flex;grid-column:2;grid-row:1}
    .site-search{grid-column:1/-1;grid-row:2;max-width:none}
    .site-header.menu-ready .topic-nav{
        border-top-color:transparent;
        max-height:0;
        opacity:0;
        overflow:hidden;
        transform:translateY(-8px);
        transition:border-color .22s ease,max-height .32s ease,opacity .22s ease,transform .32s ease;
    }
    .site-header.menu-ready.menu-open .topic-nav{
        border-top-color:var(--line);
        max-height:620px;
        opacity:1;
        transform:none;
    }
    .nav-scroll{
        display:grid;
        gap:0;
        grid-template-columns:repeat(2,minmax(0,1fr));
        margin-inline:0;
        overflow:visible;
        padding-block:10px 16px;
        padding-inline:0;
    }
    .nav-scroll a,.nav-scroll a:first-child{
        border-bottom:1px solid var(--line);
        font-size:.88rem;
        padding:12px 10px;
        white-space:normal;
    }
    .article-grid{gap:34px}
    .article-sidebar{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:620px){
    .header-main{gap:12px}
    .brand{width:150px}
    .nav-scroll{grid-template-columns:1fr}
    .article-sidebar{display:flex}
    .article-body{font-size:1.05rem;line-height:1.72}
    .article-byline{align-items:flex-start;gap:6px 9px}
    .article-image-inside{margin-inline:0}
    .section-heading{align-items:flex-start}
    .post-card:hover,.topic-tile:hover,.affiliate-card:hover{transform:none}
}

@media (max-width:380px){
    .shell{width:calc(100% - 20px)}
    .brand{width:138px}
    .menu-toggle{padding-inline:11px}
    .site-search{align-items:stretch}
    .site-search button{min-width:76px;padding-inline:9px}
    .site-search button span{font-size:.75rem}
}

/* Site-wide typography and contrast rules */
button,.menu-toggle,.primary-link,.affiliate-button,.sidebar-product-link{
    font-weight:var(--weight-bold);
}
.nav-scroll a,.text-link,.sidebar-socials a,.sidebar-topic-list a,.sidebar-page-links a{
    font-weight:var(--weight-semibold);
}
.pagination a,.pagination span{font-weight:var(--weight-semibold)}
.eyebrow,.topic-tile span,.sidebar-product-brand,.affiliate-card-label,.affiliate-badge{
    color:#654f00;
    font-weight:var(--weight-bold);
}
.archive-header h1,.section-heading h2{
    font-family:var(--serif);
    font-weight:var(--weight-semibold);
    letter-spacing:-.04em;
}
.post-card h3,.rail-story h2,.post-card-featured h3{
    font-family:var(--serif);
    font-weight:var(--weight-semibold);
    letter-spacing:-.025em;
}
.article-header h1{font-weight:var(--weight-semibold)}
.article-body h2,.article-body h3{
    font-weight:var(--weight-bold);
    letter-spacing:-.02em;
}
.article-faq summary,.contact-form label,.affiliate-price,.affiliate-code,.affiliate-specs dt{
    font-weight:var(--weight-semibold);
}
.article-byline{color:#53514b;font-size:.9rem}
.article-body a{color:#5f4b00}
.post-card p,.rail-story p,.sidebar-author>p,.sidebar-disclosure,.affiliate-card-disclosure,.affiliate-verified{
    color:#55534d;
}
.site-footer p,.footer-newsletter small{color:#d8d3c8}
.footer-bottom{color:#d2ccc1;font-size:.82rem}
.sidebar-socials a{font-size:.8rem}
.sidebar-topic-list a,.sidebar-page-links a{font-size:.86rem}

@media (prefers-reduced-motion:reduce){
    .reveal-item.is-visible{animation:none}
}

@media (max-width:980px){
    .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:620px){
    .footer-grid{grid-template-columns:1fr}
}

/* Editorial homepage */
.home-hero-editorial{padding-block:42px 34px}
.hero-heading-editorial{
    align-items:end;
    display:grid;
    gap:32px;
    grid-template-columns:minmax(0,1fr) auto;
    margin-bottom:26px;
    max-width:none;
}
.hero-heading-editorial h1{
    font-size:clamp(3rem,5.8vw,5.65rem);
    line-height:.94;
    margin-bottom:18px;
    max-width:930px;
}
.hero-heading-editorial>div>p:last-child{
    color:var(--muted);
    font-size:clamp(1rem,1.45vw,1.17rem);
    line-height:1.55;
    margin:0;
    max-width:720px;
}
.hero-action{
    align-items:center;
    background:var(--ink);
    color:#fff;
    display:inline-flex;
    font-size:.86rem;
    font-weight:var(--weight-bold);
    gap:9px;
    justify-content:center;
    min-height:46px;
    padding:11px 16px;
    white-space:nowrap;
}
.hero-action:hover{background:#34322d;text-decoration:none}
.home-topic-strip{
    align-items:center;
    border-block:1px solid var(--line);
    display:flex;
    gap:6px;
    margin-bottom:30px;
    overflow-x:auto;
    padding-block:10px;
    scrollbar-width:none;
}
.home-topic-strip::-webkit-scrollbar{display:none}
.home-topic-strip>span{
    color:var(--muted);
    flex:0 0 auto;
    font-size:.72rem;
    font-weight:var(--weight-bold);
    letter-spacing:.08em;
    margin-right:5px;
    text-transform:uppercase;
}
.home-topic-strip a{
    border:1px solid transparent;
    flex:0 0 auto;
    font-size:.8rem;
    font-weight:var(--weight-semibold);
    min-height:36px;
    padding:7px 10px;
}
.home-topic-strip a:hover{
    background:var(--canvas);
    border-color:var(--line);
    text-decoration:none;
}
.editorial-lead-grid{
    gap:clamp(28px,3.5vw,46px);
    grid-template-columns:minmax(0,1.72fr) minmax(290px,.78fr);
}
.hero-feature{
    border-bottom:1px solid var(--line);
}
.hero-feature .post-card-body{padding:20px 0 24px}
.post-card h2,.post-card h3{
    font-family:var(--serif);
    font-weight:var(--weight-semibold);
    letter-spacing:-.025em;
}
.post-card-featured h2{
    font-size:clamp(2rem,3.6vw,3.35rem);
    line-height:1.01;
    margin-bottom:12px;
}
.hero-feature .post-card-body>p:not(.post-meta){
    font-size:1rem;
    max-width:66ch;
}
.top-stories-rail{border-left:1px solid var(--line);padding-left:26px}
.rail-heading{
    border-bottom:4px solid var(--ink);
    margin-bottom:2px;
    padding-bottom:14px;
}
.rail-heading h2{
    font-family:var(--serif);
    font-size:clamp(1.65rem,2.4vw,2.15rem);
    font-weight:var(--weight-semibold);
    margin:0;
}
.top-stories-rail .rail-story{
    display:grid;
    gap:13px;
    grid-template-columns:34px minmax(0,1fr);
    padding-block:17px;
}
.top-stories-rail .rail-story+.rail-story{padding-top:17px}
.rail-story-number{
    color:#9a7900;
    font-family:var(--serif);
    font-size:1.18rem;
    line-height:1;
    padding-top:3px;
}
.top-stories-rail .rail-story h3{
    font-family:var(--serif);
    font-size:1.08rem;
    font-weight:var(--weight-semibold);
    line-height:1.2;
    margin:4px 0 8px;
}
.home-latest-grid{
    gap:28px 20px;
    grid-template-columns:repeat(4,minmax(0,1fr));
}
.home-latest-grid .post-card{border:0;border-top:1px solid var(--line);padding-top:12px}
.home-latest-grid .post-card-body{padding:15px 0 0}
.home-latest-grid .post-card-body>p:not(.post-meta){
    display:-webkit-box;
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
}
.home-latest-grid .post-meta{flex-wrap:wrap}
.popular-band{
    background:#22211d;
    color:#f8f5ed;
    margin-block:26px 0;
    padding-block:50px;
}
.popular-layout{
    align-items:start;
    display:grid;
    gap:clamp(36px,6vw,80px);
    grid-template-columns:minmax(250px,.68fr) minmax(0,1.32fr);
}
.popular-intro{
    border-top:4px solid var(--yellow);
    padding-top:16px;
}
.popular-intro .eyebrow{color:#f2d038}
.popular-intro h2{
    font-family:var(--serif);
    font-size:clamp(2.25rem,4vw,3.7rem);
    font-weight:var(--weight-semibold);
    line-height:1;
    margin-bottom:16px;
}
.popular-intro>p:last-child{color:#cfc9be;margin:0;max-width:38ch}
.popular-list{
    counter-reset:none;
    display:grid;
    gap:0 28px;
    grid-template-columns:repeat(2,minmax(0,1fr));
    list-style:none;
    margin:0;
    padding:0;
}
.popular-list li{
    border-top:1px solid #4d4a43;
    display:grid;
    gap:14px;
    grid-template-columns:38px minmax(0,1fr);
    padding-block:18px;
}
.popular-list li>span{
    color:#f2d038;
    font-family:var(--serif);
    font-size:1.25rem;
}
.popular-list .eyebrow{color:#d6b83b}
.popular-list h3{
    font-family:var(--serif);
    font-size:1.12rem;
    font-weight:var(--weight-semibold);
    line-height:1.2;
    margin:4px 0 8px;
}
.popular-list p{color:#bdb7ac;font-size:.76rem;margin:0}
.topic-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.topic-tile{min-height:225px}
.topic-tile small{
    color:var(--muted);
    display:block;
    font-size:.72rem;
    margin-top:16px;
}
.topic-tile .topic-index{display:block}

@media (max-width:1100px){
    .home-latest-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
    .topic-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media (max-width:900px){
    .hero-heading-editorial{align-items:start;display:flex;flex-direction:column;gap:20px}
    .editorial-lead-grid{grid-template-columns:1fr}
    .top-stories-rail{
        border-left:0;
        border-top:1px solid var(--line);
        display:grid;
        gap:0 24px;
        grid-template-columns:repeat(2,minmax(0,1fr));
        padding-left:0;
        padding-top:24px;
    }
    .top-stories-rail .rail-heading{grid-column:1/-1}
    .top-stories-rail .rail-story:nth-child(2),.top-stories-rail .rail-story:nth-child(3){border-top:0}
}

@media (max-width:720px){
    .home-hero-editorial{padding-top:30px}
    .hero-heading-editorial h1{font-size:clamp(2.75rem,13vw,4.2rem)}
    .hero-action{width:100%}
    .top-stories-rail{display:block}
    .top-stories-rail .rail-story:nth-child(3){border-top:1px solid var(--line)}
    .popular-layout{grid-template-columns:1fr}
    .popular-list{grid-template-columns:1fr}
}

@media (max-width:620px){
    .home-latest-grid,.topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .home-topic-strip{margin-inline:-12px;padding-inline:12px}
}

@media (max-width:440px){
    .home-latest-grid,.topic-grid{grid-template-columns:1fr}
    .post-card-featured h2{font-size:2rem}
    .hero-feature .post-card-body{padding-bottom:18px}
    .popular-band{padding-block:38px}
}

/* Homepage story carousel and category directory */
.home-story-hero{
    background:#101a24;
    color:#fffdf8;
    overflow:hidden;
    padding-block:clamp(38px,5vw,68px);
    position:relative;
}
.home-story-hero::before{
    background:radial-gradient(circle at 72% 28%,rgba(34,187,194,.18),transparent 34%);
    content:"";
    inset:0;
    pointer-events:none;
    position:absolute;
}
.home-story-hero-shell{position:relative}
.home-story-intro{
    align-items:end;
    display:grid;
    gap:24px 48px;
    grid-template-columns:minmax(0,1fr) minmax(280px,.52fr);
    margin-bottom:30px;
}
.home-story-intro .eyebrow{color:#f2c400}
.home-story-intro h1{
    font-size:clamp(2.8rem,5.5vw,5.6rem);
    font-weight:600;
    letter-spacing:-.055em;
    line-height:.92;
    margin:0;
    max-width:850px;
}
.home-story-intro>p:last-child{
    color:#c8d0d5;
    font-size:1.02rem;
    line-height:1.6;
    margin:0 0 3px;
    max-width:430px;
}
.story-carousel{
    background:#172532;
    border:1px solid rgba(255,255,255,.14);
    box-shadow:0 22px 60px rgba(0,0,0,.22);
}
.story-carousel-stage{
    min-height:clamp(460px,48vw,590px);
    position:relative;
}
.story-slide{
    display:grid;
    grid-template-columns:minmax(330px,.86fr) minmax(0,1.14fr);
    inset:0;
    opacity:0;
    position:absolute;
    transform:translateX(22px);
    transition:opacity .48s ease,transform .48s ease,visibility .48s;
    visibility:hidden;
}
.story-slide.is-active{
    opacity:1;
    transform:translateX(0);
    visibility:visible;
    z-index:1;
}
.story-slide-copy{
    align-self:center;
    padding:clamp(30px,4.3vw,58px);
}
.story-slide-topic{color:#f2ce31}
.story-slide-copy h2{
    font-family:var(--serif);
    font-size:clamp(2rem,3.7vw,4.15rem);
    font-weight:600;
    letter-spacing:-.04em;
    line-height:.98;
    margin:12px 0 18px;
}
.story-slide-copy h2 a:hover{text-decoration-color:#f2c400}
.story-slide-copy>p{
    color:#c7d0d5;
    display:-webkit-box;
    font-size:.98rem;
    line-height:1.62;
    margin-bottom:24px;
    max-width:55ch;
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
}
.story-slide-footer{
    align-items:center;
    display:flex;
    flex-wrap:wrap;
    gap:16px 20px;
}
.story-slide-button{
    align-items:center;
    background:#f2c400;
    color:#15140e;
    display:inline-flex;
    font-size:.84rem;
    font-weight:800;
    gap:9px;
    min-height:46px;
    padding:11px 16px;
}
.story-slide-button:hover{background:#ffda28;text-decoration:none}
.story-slide-footer>span{color:#aeb9c0;font-size:.78rem}
.story-slide-media{
    background:#0d151d;
    display:block;
    min-height:100%;
    overflow:hidden;
    position:relative;
}
.story-slide-media::after{
    background:linear-gradient(90deg,rgba(23,37,50,.38),transparent 22%);
    content:"";
    inset:0;
    pointer-events:none;
    position:absolute;
}
.story-slide-media img{height:100%;object-fit:cover;width:100%}
.story-slide-placeholder{
    align-items:end;
    background:linear-gradient(135deg,#243a49,#0e171f);
    color:#dce4e7;
    display:flex;
    font-family:var(--serif);
    font-size:1.6rem;
    height:100%;
    padding:32px;
}
.story-carousel-controls{
    align-items:center;
    background:#0d161e;
    border-top:1px solid rgba(255,255,255,.11);
    display:flex;
    gap:18px;
    min-height:68px;
    padding:12px 18px;
}
.story-carousel-buttons{display:flex;gap:8px}
.carousel-arrow{
    align-items:center;
    background:transparent;
    border:1px solid rgba(255,255,255,.28);
    color:#fff;
    display:inline-flex;
    height:40px;
    justify-content:center;
    padding:0;
    width:40px;
}
.carousel-arrow:hover{background:#f2c400;border-color:#f2c400;color:#15140e}
.story-carousel-dots{display:flex;gap:8px;margin-left:auto}
.story-carousel-dots button{
    background:#66727a;
    border:0;
    border-radius:999px;
    height:7px;
    padding:0;
    transition:background .2s ease,width .2s ease;
    width:18px;
}
.story-carousel-dots button.is-active{background:#f2c400;width:42px}
.story-carousel-controls>p{color:#aeb9c0;font-size:.72rem;margin:0;min-width:48px;text-align:right}
.story-carousel-controls>p span{color:#fff;font-weight:800}
.story-carousel.is-static .story-carousel-controls{display:none}

.category-directory-section{background:#f5f1e8;padding-block:clamp(46px,6vw,76px)}
.category-directory-heading{align-items:end}
.category-directory-heading>p{
    color:var(--muted);
    line-height:1.5;
    margin:0;
    max-width:330px;
}
.category-directory{
    border-bottom:1px solid #cfc8bb;
    display:block;
}
.category-directory-item{
    align-items:center;
    border-top:1px solid #cfc8bb;
    display:grid;
    gap:18px;
    grid-template-columns:38px 48px minmax(0,1fr) auto 28px;
    min-height:104px;
    padding:17px 8px;
    transition:background .2s ease,padding .2s ease;
}
.category-directory-item:hover{
    background:#fffdf8;
    padding-inline:18px;
    text-decoration:none;
}
.category-directory-number{color:#8e760c;font-family:var(--serif);font-size:1rem}
.category-directory-icon{
    align-items:center;
    background:#fff;
    border:1px solid #d8d1c4;
    color:#272622;
    display:flex;
    height:46px;
    justify-content:center;
    width:46px;
}
.category-directory-copy{display:block}
.category-directory-copy strong{
    display:block;
    font-family:var(--serif);
    font-size:clamp(1.35rem,2.1vw,1.8rem);
    font-weight:600;
    line-height:1.1;
    margin-bottom:7px;
}
.category-directory-copy small{color:var(--muted);display:block;font-size:.82rem}
.category-directory-count{color:var(--muted);font-size:.75rem;font-weight:700;white-space:nowrap}
.category-directory-arrow{color:#7e6600;display:flex;transition:transform .2s ease}
.category-directory-item:hover .category-directory-arrow{transform:translateX(4px)}

.category-story-section{background:#fff;padding-block:clamp(48px,6vw,78px)}
.category-story-groups{border-top:4px solid var(--ink)}
.category-story-group{border-bottom:1px solid var(--line);padding-block:30px 38px}
.category-story-group>header{
    align-items:end;
    display:flex;
    gap:20px;
    justify-content:space-between;
    margin-bottom:22px;
}
.category-story-group>header h3{
    font-family:var(--serif);
    font-size:clamp(1.9rem,3vw,2.8rem);
    font-weight:600;
    margin:0;
}
.category-story-grid{display:grid;gap:22px;grid-template-columns:repeat(3,minmax(0,1fr))}
.category-story-grid .post-card{border:0}
.category-story-grid .post-card-body{padding:14px 0 0}
.category-story-grid .post-card-body>p:not(.post-meta){
    display:-webkit-box;
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
}

@media (max-width:900px){
    .home-story-intro{display:block}
    .home-story-intro>p:last-child{margin-top:18px}
    .story-carousel-stage{min-height:720px}
    .story-slide{grid-template-columns:1fr;grid-template-rows:auto minmax(320px,1fr)}
    .story-slide-copy{padding:30px}
    .story-slide-copy h2{font-size:clamp(2rem,6vw,3.2rem)}
    .story-slide-media{min-height:320px}
}

@media (max-width:720px){
    .home-story-hero{padding-top:30px}
    .home-story-intro h1{font-size:clamp(2.65rem,12vw,4.3rem)}
    .story-carousel-stage{min-height:650px}
    .story-slide{grid-template-rows:auto minmax(250px,1fr)}
    .story-slide-copy{padding:25px 22px}
    .story-slide-copy>p{-webkit-line-clamp:2}
    .story-slide-media{min-height:250px}
    .category-directory-heading{display:block}
    .category-directory-heading>p{margin-top:12px}
    .category-directory-item{grid-template-columns:34px 44px minmax(0,1fr) 24px}
    .category-directory-count{display:none}
    .category-story-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .category-story-grid .post-card:nth-child(3){display:none}
}

@media (max-width:480px){
    .story-carousel-stage{min-height:620px}
    .story-slide-copy h2{font-size:1.95rem}
    .story-slide-footer>span{display:none}
    .story-carousel-controls{gap:12px;padding-inline:13px}
    .story-carousel-dots{gap:5px}
    .story-carousel-dots button{width:12px}
    .story-carousel-dots button.is-active{width:26px}
    .category-directory-item{
        gap:11px;
        grid-template-columns:29px 40px minmax(0,1fr) 22px;
        min-height:92px;
        padding-inline:2px;
    }
    .category-directory-item:hover{padding-inline:8px}
    .category-directory-icon{height:38px;width:38px}
    .category-directory-copy strong{font-size:1.2rem}
    .category-directory-copy small{
        display:-webkit-box;
        overflow:hidden;
        -webkit-box-orient:vertical;
        -webkit-line-clamp:1;
    }
    .category-story-grid{grid-template-columns:1fr}
    .category-story-grid .post-card:nth-child(2){display:none}
    .category-story-group>header{align-items:start}
}

@media (prefers-reduced-motion:reduce){
    .story-slide,.story-carousel-dots button,.category-directory-item,.category-directory-arrow{transition:none}
}

/* Shared editorial navigation */
.site-header{position:relative;z-index:40}
.topic-nav{position:relative}
.nav-shell{
    align-items:stretch;
    display:flex;
    min-height:50px;
    position:relative;
}
.nav-shell>a,.nav-mega-toggle{
    align-items:center;
    background:transparent;
    border:0;
    color:var(--ink);
    display:inline-flex;
    font-size:.86rem;
    font-weight:var(--weight-semibold);
    gap:7px;
    min-height:50px;
    padding:12px 17px;
    white-space:nowrap;
}
.nav-shell>a:first-child{padding-left:0}
.nav-shell>a:hover,.nav-shell>a.active,.nav-mega-toggle:hover,.nav-mega.is-open .nav-mega-toggle{
    color:#745d00;
    text-decoration:none;
}
.nav-mega{display:flex;position:static}
.nav-mega-toggle .icon{transition:transform .2s ease}
.nav-mega.is-open .nav-mega-toggle .icon{transform:rotate(180deg)}
.mega-panel{
    background:#fffdf8;
    border:1px solid var(--line);
    box-shadow:0 24px 64px rgba(16,26,36,.18);
    left:0;
    opacity:0;
    padding:24px;
    position:absolute;
    right:0;
    top:calc(100% - 1px);
    transform:translateY(-8px);
    transition:opacity .2s ease,transform .2s ease,visibility .2s;
    visibility:hidden;
    z-index:45;
}
.nav-mega.is-open .mega-panel{
    opacity:1;
    transform:none;
    visibility:visible;
}
.mega-panel-heading{
    align-items:end;
    border-bottom:4px solid var(--ink);
    display:flex;
    gap:24px;
    justify-content:space-between;
    margin-bottom:18px;
    padding-bottom:14px;
}
.mega-panel-heading p{margin:0}
.mega-panel-heading>div>p:last-child{color:var(--muted);font-size:.85rem}
.mega-panel-heading .text-link{align-items:center;display:inline-flex;gap:6px}
.mega-topic-grid{
    display:grid;
    gap:0 24px;
    grid-template-columns:repeat(3,minmax(0,1fr));
}
.mega-topic{
    border-top:1px solid var(--line);
    min-width:0;
    padding-block:14px;
}
.mega-topic:nth-child(-n+3){border-top:0}
.mega-topic-title{
    align-items:center;
    display:flex;
    font-family:var(--serif);
    font-size:1.08rem;
    font-weight:var(--weight-semibold);
    gap:10px;
    line-height:1.15;
    margin-bottom:9px;
}
.mega-topic-icon{
    align-items:center;
    background:#f5e6a3;
    color:#2d2916;
    display:inline-flex;
    height:32px;
    justify-content:center;
    width:32px;
}
.mega-story-link{
    color:#55534d;
    display:-webkit-box;
    font-size:.76rem;
    line-height:1.35;
    margin:5px 0 0 42px;
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:1;
}
.mega-story-link:hover{color:#6f5800}
.mega-story-empty{color:#777168;display:block;font-size:.74rem;margin-left:42px}

/* Consistent editorial page surfaces */
.archive-header,.editorial-page-hero{
    background:#101a24;
    border-top:0;
    color:#fffdf8;
    overflow:hidden;
    padding-block:clamp(42px,6vw,70px);
    position:relative;
}
.archive-header::after,.editorial-page-hero::after{
    background:radial-gradient(circle at 82% 20%,rgba(34,187,194,.18),transparent 35%);
    content:"";
    inset:0;
    pointer-events:none;
    position:absolute;
}
.archive-header>*,.editorial-page-hero>*{position:relative;z-index:1}
.archive-header .eyebrow,.editorial-page-hero .eyebrow{color:#f2c400}
.archive-header h1,.editorial-page-hero h1{
    color:#fffdf8;
    font-family:var(--serif);
    font-size:clamp(2.7rem,5.3vw,5rem);
    font-weight:var(--weight-semibold);
    letter-spacing:-.05em;
    line-height:.96;
    max-width:900px;
}
.archive-header>p:last-child,.editorial-page-hero .page-hero-description{
    color:#c8d0d5;
    font-size:1.02rem;
    line-height:1.62;
    max-width:680px;
}
.archive-header .breadcrumbs,.editorial-page-hero .breadcrumbs{color:#c8d0d5}
.archive-header .breadcrumbs li,.editorial-page-hero .breadcrumbs li{color:#c8d0d5}
.archive-section{padding-top:clamp(38px,5vw,58px)}
.static-page{max-width:900px;padding-top:44px}
.static-page-body{padding-bottom:64px}
.static-page .article-body{max-width:760px}
.contact-layout{align-items:start}
.contact-copy>h1{font-family:var(--serif);font-weight:var(--weight-semibold)}
.contact-form{
    background:#f5f1e8;
    border-top:4px solid var(--yellow);
    box-shadow:0 18px 44px rgba(32,30,25,.07);
}
.error-page{background:#101a24;color:#fffdf8;margin-top:0;max-width:none;padding-inline:max(24px,calc((100% - 1180px)/2));width:100%}
.error-page .eyebrow{color:#f2c400}
.error-page>p:not(.eyebrow){color:#c8d0d5}
.error-page .breadcrumbs li{color:#c8d0d5}

/* Article reading experience */
.reading-progress{
    background:linear-gradient(90deg,var(--yellow) var(--reading-progress,0%),transparent 0);
    height:4px;
    left:0;
    pointer-events:none;
    position:fixed;
    right:0;
    top:0;
    z-index:80;
}
.article-layout.article-layout-with-sidebar{padding-top:42px}
.article-layout>.breadcrumbs{margin-inline:auto;max-width:1120px}
.article-header{
    border-top:4px solid var(--ink);
    margin:0;
    max-width:820px;
    padding-top:22px;
    text-align:left;
}
.article-header h1{
    font-size:clamp(2.65rem,5.2vw,4.9rem);
    line-height:.96;
    max-width:820px;
}
.article-dek{font-size:clamp(1.15rem,1.8vw,1.38rem);margin-inline:0;max-width:760px}
.article-byline{justify-content:flex-start}
.article-main>.article-image{
    background:#f5f1e8;
    border:1px solid var(--line);
    margin-top:32px;
    padding:8px;
}
.article-main>.article-image img{max-height:none}
.article-body{
    color:#2d2c28;
    font-size:clamp(1.08rem,1.25vw,1.2rem);
    line-height:1.82;
    max-width:68ch;
}
.article-body p,.article-body li{letter-spacing:.002em}
.article-body ul,.article-body ol{padding-left:1.35em}
.article-body li+li{margin-top:.45em}
.article-body strong{color:#20201d;font-weight:700}
.article-body blockquote{
    background:#f7f3e8;
    border-left-color:var(--yellow);
    font-size:1.12em;
    padding:16px 20px;
}
.article-body table{background:#fff;border:1px solid var(--line);font-size:.88rem}
.article-body th{background:#101a24;color:#fff}
.article-faq{
    background:#f7f3e8;
    border-top:4px solid var(--yellow);
    padding:clamp(22px,4vw,34px);
}
.article-faq details:last-child{border-bottom:0}

/* Publication footer */
.publication-footer{
    background:#0f1923;
    color:#fffdf8;
    margin-top:0;
    padding-top:0;
}
.footer-lead{
    align-items:start;
    border-bottom:1px solid rgba(255,255,255,.14);
    display:grid;
    gap:clamp(38px,7vw,90px);
    grid-template-columns:minmax(0,1fr) minmax(330px,.88fr);
    padding-block:clamp(46px,6vw,74px);
}
.footer-about{max-width:570px}
.footer-about>p{font-family:var(--serif);font-size:clamp(1.15rem,2vw,1.5rem);line-height:1.52}
.footer-brand{width:190px}
.footer-newsletter-featured{
    background:#172633;
    border:1px solid rgba(255,255,255,.14);
    padding:clamp(22px,3vw,32px);
}
.footer-newsletter-featured .eyebrow{color:#f2c400}
.footer-newsletter-featured label{
    font-size:clamp(1.6rem,2.8vw,2.2rem);
    line-height:1.05;
}
.footer-newsletter-featured>p:not(.eyebrow){color:#c7d0d5;line-height:1.55}
.footer-newsletter-featured .inline-form{margin-top:18px}
.footer-newsletter-featured input{background:#fffdf8}
.footer-directory{
    border-bottom:1px solid rgba(255,255,255,.14);
    display:grid;
    gap:36px;
    grid-template-columns:minmax(0,1.35fr) minmax(150px,.55fr) minmax(190px,.72fr);
    padding-block:38px;
}
.footer-directory .eyebrow{color:#f2c400}
.footer-directory a{font-size:.85rem;margin:8px 0}
.footer-category-grid{
    display:grid;
    gap:4px 22px;
    grid-template-columns:repeat(2,minmax(0,1fr));
}
.footer-category-grid a{align-items:center;display:flex;gap:7px}
.footer-category-grid a .icon{color:#f2c400}
.publication-footer .footer-policy-links{border-top:0;margin-top:0;padding-top:22px}
.publication-footer .footer-bottom{margin-top:14px}

/* Mobile quick navigation */
.mobile-dock{display:none}

@media (max-width:900px){
    .site-header.menu-ready.menu-open .topic-nav{max-height:1600px}
    .nav-shell{
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        padding-block:10px 16px;
    }
    .nav-mega{grid-column:1/-1}
    .nav-shell>a,.nav-mega-toggle,.nav-shell>a:first-child{
        border-bottom:1px solid var(--line);
        justify-content:flex-start;
        min-height:48px;
        padding:12px 10px;
        width:100%;
    }
    .nav-mega{display:block;position:relative}
    .mega-panel{
        border:0;
        box-shadow:none;
        grid-column:1/-1;
        left:auto;
        max-height:0;
        opacity:0;
        overflow:hidden;
        padding:0;
        position:static;
        right:auto;
        transform:none;
        transition:max-height .35s ease,opacity .2s ease,padding .25s ease;
        visibility:visible;
    }
    .nav-mega.is-open .mega-panel{max-height:1200px;opacity:1;padding:18px 10px}
    .mega-panel-heading{align-items:start}
    .mega-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .mega-topic:nth-child(-n+3){border-top:1px solid var(--line)}
    .mega-topic:nth-child(-n+2){border-top:0}
    .footer-lead,.footer-directory{grid-template-columns:1fr}
    .footer-directory{grid-template-columns:1.2fr .8fr .8fr}
    .article-layout.article-layout-with-sidebar{padding-top:30px}
}

@media (max-width:620px){
    body{padding-bottom:70px}
    .nav-shell{grid-template-columns:1fr}
    .mega-panel-heading{display:block}
    .mega-panel-heading .text-link{margin-top:12px}
    .mega-topic-grid{grid-template-columns:1fr}
    .mega-topic:nth-child(-n+2){border-top:1px solid var(--line)}
    .mega-topic:first-child{border-top:0}
    .mega-story-link{-webkit-line-clamp:2}
    .archive-header,.editorial-page-hero{padding-block:38px}
    .archive-header h1,.editorial-page-hero h1{font-size:clamp(2.55rem,12vw,4rem)}
    .article-header{padding-top:17px}
    .article-header h1{font-size:clamp(2.35rem,11.5vw,3.7rem)}
    .article-main>.article-image{margin-inline:-4px;padding:4px}
    .article-body{font-size:1.06rem;line-height:1.76}
    .article-body h2{font-size:1.55rem}
    .article-faq{margin-inline:-2px}
    .footer-directory{grid-template-columns:1fr}
    .footer-category-grid{grid-template-columns:1fr}
    .footer-newsletter-featured .inline-form{display:flex;flex-direction:column}
    .footer-newsletter-featured .inline-form button{border-left:1px solid var(--yellow-dark)}
    .mobile-dock{
        align-items:stretch;
        background:#fffdf8;
        border-top:1px solid var(--line);
        bottom:0;
        box-shadow:0 -10px 28px rgba(16,26,36,.12);
        display:grid;
        grid-template-columns:repeat(4,1fr);
        left:0;
        min-height:66px;
        position:fixed;
        right:0;
        z-index:70;
    }
    .mobile-dock a,.mobile-dock button{
        align-items:center;
        background:transparent;
        border:0;
        color:#47453f;
        display:flex;
        flex-direction:column;
        font-size:.66rem;
        font-weight:700;
        gap:4px;
        justify-content:center;
        min-width:0;
        padding:8px 4px 6px;
    }
    .mobile-dock a[aria-current=page],.mobile-dock a:hover,.mobile-dock button:hover{
        background:#f7f1dc;
        color:#604c00;
        text-decoration:none;
    }
    .mobile-dock .icon{height:20px;width:20px}
}

@media (prefers-reduced-motion:reduce){
    .mega-panel,.nav-mega-toggle .icon{transition:none}
}
