:root {
    --bg: #050907;
    --bg-soft: #0b1310;
    --panel: rgba(10, 19, 15, 0.86);
    --panel-strong: rgba(11, 19, 15, 0.95);
    --panel-alt: rgba(18, 28, 22, 0.92);
    --line: rgba(113, 151, 100, 0.18);
    --line-strong: rgba(193, 160, 83, 0.26);
    --text: #e7eee9;
    --muted: #b0bdb4;
    --green: #769a67;
    --green-bright: #9fc28e;
    --gold: #c1a053;
    --gold-soft: #d3b370;
    --shadow: 0 20px 56px rgba(0, 0, 0, 0.36);
    --radius-xl: 30px;
    --radius-lg: 24px;
    --radius-md: 18px;
    --radius-sm: 12px;
    --max-width: 1380px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    font-family: 'Inter', system-ui, sans-serif;
    color: var(--text);
    background:
        radial-gradient(circle at top right, rgba(111, 152, 97, 0.12), transparent 28%),
        radial-gradient(circle at bottom left, rgba(193, 160, 83, 0.08), transparent 30%),
        linear-gradient(180deg, #040806 0%, #09100d 100%);
    min-height: 100vh;
}
body::before {
    content: '';
    position: fixed;
    inset: 0;
    pointer-events: none;
    background-image:
        linear-gradient(rgba(255,255,255,0.02) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,0.02) 1px, transparent 1px);
    background-size: 36px 36px;
    mask-image: linear-gradient(to bottom, rgba(0,0,0,0.6), rgba(0,0,0,0.12));
}

a { color: inherit; text-decoration: none; }
p { line-height: 1.75; }
img { max-width: 100%; display: block; }

.site-shell {
    width: min(calc(100% - 2rem), var(--max-width));
    margin: 0 auto;
    padding-bottom: 3rem;
}

.site-header {
    position: sticky;
    top: 0;
    z-index: 30;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1.5rem;
    padding: 1.1rem 0 1rem;
    backdrop-filter: blur(16px);
    background: linear-gradient(180deg, rgba(4, 8, 6, 0.9), rgba(4, 8, 6, 0.6));
    border-bottom: 1px solid rgba(193, 160, 83, 0.12);
}

.brand-lockup {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.brand-mark {
    width: 54px;
    height: 54px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 16px;
    color: var(--gold-soft);
    font-family: 'Cinzel', serif;
    font-weight: 700;
    letter-spacing: 0.08em;
    background: linear-gradient(145deg, rgba(18, 31, 25, 0.96), rgba(8, 14, 11, 0.98));
    border: 1px solid rgba(193, 160, 83, 0.3);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.03), var(--shadow);
}

.brand-name {
    display: inline-block;
    font-family: 'Cinzel', serif;
    font-size: 1.3rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.brand-tagline {
    margin: 0.25rem 0 0;
    color: var(--muted);
    font-size: 0.92rem;
}

.site-nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.55rem;
}

.site-nav a,
.footer-links a {
    padding: 0.75rem 0.95rem;
    border-radius: 999px;
    color: var(--muted);
    border: 1px solid transparent;
    transition: 0.2s ease;
}

.site-nav a:hover,
.site-nav a:focus-visible,
.footer-links a:hover,
.footer-links a:focus-visible {
    color: var(--text);
    background: rgba(11, 19, 15, 0.88);
    border-color: rgba(113, 151, 100, 0.2);
}

.card-panel,
.info-card,
.hobby-card,
.site-footer {
    background: linear-gradient(180deg, rgba(12, 21, 17, 0.9), rgba(9, 15, 12, 0.96));
    border: 1px solid var(--line);
    border-radius: var(--radius-xl);
    box-shadow: var(--shadow);
}

.home-hero {
    display: grid;
    grid-template-columns: 1.15fr 0.9fr 0.78fr;
    gap: 1.35rem;
    align-items: stretch;
    padding: 2.2rem 0 1.25rem;
}

.hero-copy,
.section-hero-copy,
.kanji-scroll-frame,
.scroll-menu-widget,
.hero-portrait,
.section-hero-media,
.info-card,
.credit-card {
    padding: 1.55rem;
}

.eyebrow,
.card-overline {
    margin: 0 0 0.95rem;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    color: var(--gold-soft);
    font-size: 0.76rem;
}

.hero-copy h1,
.section-hero h1,
.section-heading h2,
.large-panel h2 {
    margin: 0;
    font-family: 'Cinzel', serif;
    line-height: 1.08;
}

.hero-copy h1 { font-size: clamp(2.4rem, 4.6vw, 4.3rem); }
.section-hero h1 { font-size: clamp(2rem, 4vw, 3.3rem); }
.section-heading h2,
.large-panel h2 { font-size: clamp(1.85rem, 3.8vw, 2.8rem); }

.hero-lead,
.section-lead,
.section-heading p,
.info-card p,
.credit-card p,
.media-content p { color: var(--muted); }
.hero-lead, .section-lead { font-size: 1.05rem; }

.hero-link-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.85rem;
    margin: 1.9rem 0 1.5rem;
}

.button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0.85rem 1.15rem;
    border-radius: 999px;
    border: 1px solid transparent;
    font-weight: 600;
    cursor: pointer;
    transition: transform 0.2s ease, border-color 0.2s ease, background 0.2s ease;
}
.button:hover,
.button:focus-visible { transform: translateY(-1px); }
.button-primary {
    color: var(--text);
    background: linear-gradient(135deg, rgba(113, 151, 100, 0.26), rgba(193, 160, 83, 0.18));
    border-color: rgba(113, 151, 100, 0.28);
}
.button-secondary,
.button-scroll {
    color: var(--text);
    background: rgba(8, 15, 12, 0.55);
    border-color: rgba(193, 160, 83, 0.3);
}

.hero-pill-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
}

.hero-pill-list li {
    padding: 0.55rem 0.82rem;
    border-radius: 999px;
    color: var(--muted);
    font-size: 0.9rem;
    border: 1px solid rgba(113, 151, 100, 0.16);
    background: rgba(113, 151, 100, 0.07);
}

.hero-portrait {
    overflow: hidden;
    min-height: 100%;
}
.hero-portrait img,
.section-hero-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 22px;
}

.scroll-column {
    display: grid;
    grid-template-rows: auto auto;
    gap: 1.35rem;
}

.kanji-scroll-frame {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 0;
}
.kanji-scroll-frame img {
    max-height: 640px;
    width: auto;
    margin: 0 auto;
}

.scroll-menu-widget {
    align-self: start;
}

.scroll-menu-panel {
    margin-top: 1rem;
    overflow: hidden;
    transform-origin: top center;
    opacity: 0;
    max-height: 0;
    transition: max-height 0.5s ease, opacity 0.35s ease;
}

.scroll-menu-panel.is-open {
    opacity: 1;
    max-height: 800px;
}

.scroll-rod {
    height: 18px;
    border-radius: 999px;
    background: linear-gradient(90deg, #5a441f, #8f7136, #5a441f);
    box-shadow: inset 0 1px 1px rgba(255,255,255,0.15), inset 0 -2px 4px rgba(0,0,0,0.2);
}

.scroll-paper {
    margin: -2px 0;
    display: grid;
    gap: 0.35rem;
    padding: 1.15rem 1rem;
    background:
        linear-gradient(180deg, rgba(231, 221, 196, 0.98), rgba(213, 196, 163, 0.98)),
        radial-gradient(circle at top, rgba(255,255,255,0.3), transparent 36%);
    border-left: 8px solid rgba(93, 72, 36, 0.25);
    border-right: 8px solid rgba(93, 72, 36, 0.25);
    border-radius: 10px;
}

.scroll-paper a {
    color: #312515;
    font-family: 'Cinzel', serif;
    font-weight: 600;
    padding: 0.55rem 0.35rem;
    border-bottom: 1px solid rgba(49, 37, 21, 0.09);
}
.scroll-paper a:last-child { border-bottom: 0; }
.scroll-paper a:hover,
.scroll-paper a:focus-visible { color: #5b4522; }

.content-section { padding: 1.75rem 0; }
.section-heading { max-width: 48rem; margin-bottom: 1.4rem; }
.section-heading h2 { margin: 0 0 0.6rem; }

.hobby-grid {
    display: grid;
    gap: 1.2rem;
}
.hobby-grid-seven {
    grid-template-columns: repeat(12, 1fr);
}
.hobby-grid-seven .hobby-card:nth-child(1),
.hobby-grid-seven .hobby-card:nth-child(2),
.hobby-grid-seven .hobby-card:nth-child(3) {
    grid-column: span 4;
}
.hobby-grid-seven .hobby-card:nth-child(n+4) {
    grid-column: span 3;
}

.media-card {
    overflow: hidden;
    padding: 0;
    min-height: 340px;
}
.media-link {
    position: relative;
    display: block;
    height: 100%;
    min-height: 340px;
}
.media-link img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.media-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(2, 6, 5, 0.1), rgba(5, 10, 8, 0.84));
}
.media-content {
    position: absolute;
    inset: auto 0 0 0;
    padding: 1.25rem;
    z-index: 2;
}
.media-content h3,
.info-card h3,
.credit-card h2 {
    margin: 0 0 0.65rem;
    font-family: 'Cinzel', serif;
}
.media-content p,
.info-card p,
.credit-card p { margin: 0 0 0.85rem; }
.text-link {
    color: var(--green-bright);
    font-weight: 700;
}
.media-link:hover .text-link,
.media-link:focus-visible .text-link { color: var(--gold-soft); }

.split-highlight,
.feature-card-grid,
.credits-grid,
.media-hero {
    display: grid;
    gap: 1.25rem;
}
.split-highlight,
.media-hero { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.feature-card-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.credits-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }

.large-panel,
.alt-panel {
    min-height: 100%;
}
.alt-panel {
    background: linear-gradient(180deg, rgba(17, 27, 21, 0.92), rgba(11, 18, 15, 0.98));
}

.feature-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 0.85rem;
    color: var(--muted);
}
.feature-list li {
    position: relative;
    padding-left: 1.15rem;
}
.feature-list li::before {
    content: '•';
    position: absolute;
    left: 0;
    color: var(--gold-soft);
}
.feature-list-tight { gap: 0.75rem; }

.section-hero,
.single-column {
    padding: 2.1rem 0 1rem;
}
.section-hero-copy,
.section-hero-media { min-height: 100%; }
.single-column {
    display: block;
}

.credit-card {
    background: linear-gradient(180deg, rgba(13, 22, 18, 0.88), rgba(10, 16, 13, 0.96));
    border: 1px solid var(--line);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow);
}
.credit-card a {
    color: var(--green-bright);
}
.credit-card a:hover,
.credit-card a:focus-visible { color: var(--gold-soft); }

.site-footer {
    margin-top: 1.25rem;
    padding: 1.25rem 1.45rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
}
.footer-title {
    margin: 0 0 0.35rem;
    font-family: 'Cinzel', serif;
}
.footer-copy {
    margin: 0;
    color: var(--muted);
}
.footer-links {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
}

@media (max-width: 1180px) {
    .home-hero,
    .media-hero,
    .split-highlight,
    .feature-card-grid,
    .credits-grid {
        grid-template-columns: 1fr;
    }

    .home-hero {
        grid-template-columns: 1fr 1fr;
    }
    .hero-copy { grid-column: 1 / -1; }
    .scroll-column { grid-column: span 1; }

    .hobby-grid-seven .hobby-card:nth-child(n) { grid-column: span 6; }
}

@media (max-width: 860px) {
    .site-header {
        position: static;
        flex-direction: column;
        align-items: flex-start;
    }
    .site-nav { justify-content: flex-start; }
    .home-hero { grid-template-columns: 1fr; }
    .scroll-column { grid-template-columns: 1fr; }
    .hobby-grid-seven { grid-template-columns: 1fr; }
    .hobby-grid-seven .hobby-card:nth-child(n) { grid-column: span 1; }
    .feature-card-grid { grid-template-columns: 1fr; }
    .site-footer {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 640px) {
    .site-shell { width: min(calc(100% - 1rem), var(--max-width)); }
    .hero-copy,
    .section-hero-copy,
    .kanji-scroll-frame,
    .scroll-menu-widget,
    .hero-portrait,
    .section-hero-media,
    .info-card,
    .credit-card,
    .site-footer {
        padding: 1.15rem;
    }
    .media-content { padding: 1rem; }
    .kanji-scroll-frame img { max-height: 540px; }
}

/* Seven independent hobby visual systems */
.unique-page{padding:1.6rem 0 3rem}.unique-page h1,.unique-page h2,.unique-page h3{line-height:1.12}.unique-page figure{margin:0}.unique-page img{display:block;width:100%;height:100%;object-fit:cover}.unique-page p{line-height:1.7}.unique-action{display:inline-flex;gap:2rem;padding:.9rem 1.25rem;background:#d4b56c;color:#142016;font-weight:700;border-radius:6px;margin-top:1rem}.unique-action span{font-size:1.2rem}
/* LEGO: playful modern construction layout */
.lego-page{--lego-yellow:#f2bc39;--lego-red:#c34b39}.lego-hero{display:grid;grid-template-columns:1fr 1.03fr;gap:1.4rem;min-height:560px}.lego-intro{padding:3.5rem;position:relative;background:linear-gradient(145deg,#142b23,#0a1712);border:1px solid #325b43;border-radius:14px;overflow:hidden}.lego-intro h1{font:700 clamp(5rem,10vw,9.4rem)/.95 Inter,sans-serif;letter-spacing:-.09em;color:#f2f4eb;margin:3rem 0 1rem}.lego-dot{color:var(--lego-yellow)}.lego-intro>p:not(.eyebrow){max-width:30rem;font-size:1.1rem;color:#d0dcd2}.lego-studs{position:absolute;top:22px;right:20px;display:flex;gap:13px}.lego-studs i{display:block;width:27px;height:27px;border-radius:50%;background:linear-gradient(135deg,#b4d09f,#497b58);box-shadow:inset -3px -4px 0 #183b28,0 2px 5px #050b07}.lego-hero-image{position:relative;overflow:hidden;border-radius:14px;background:#314f3b}.lego-hero-image img{filter:saturate(1.1)}.lego-hero-image figcaption{position:absolute;right:20px;bottom:20px;background:#12241ddd;padding:.6rem 1rem;border:1px solid #bca062;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase}.lego-tiles{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:1rem;margin-top:1rem}.lego-tile{min-height:220px;padding:2rem;border-radius:10px;background:#182e23;border-top:8px solid #e7b63b;position:relative}.lego-tile::before{content:'';position:absolute;right:24px;top:20px;width:45px;height:16px;border-radius:100%;background:#ffffff16;box-shadow:0 0 0 5px #ffffff08}.lego-tile-two{border-color:#c45c48;background:#29211c}.lego-tile-three{border-color:#80b5a1}.lego-tile>span{color:#ddca8d;font-size:.8rem}.lego-tile h2{font:700 1.7rem Inter,sans-serif}.lego-tile p{color:#b9c8be}.lego-bottom{display:flex;justify-content:space-between;align-items:center;padding:2rem;color:#a9baac}.lego-pattern{color:#dabb66;letter-spacing:1rem}
/* Warhammer: ceremonial, dramatic, textured */
.warhammer-page{font-family:Georgia,serif}.warhammer-hero{position:relative;min-height:660px;display:grid;place-items:center;overflow:hidden;border:1px solid #6e5332}.warhammer-hero>img{position:absolute;inset:0;filter:saturate(.55) contrast(1.15)}.warhammer-shade{position:absolute;inset:0;background:linear-gradient(0deg,#090b0aed,#09100d60),linear-gradient(90deg,#090b0ab5,#090b0a30)}.warhammer-hero-copy{position:relative;text-align:center;padding:2rem;max-width:950px}.warhammer-sigil{font-size:4rem;color:#c8a668}.warhammer-hero h1{font:700 clamp(3rem,8vw,8rem)/1 Cinzel,serif;letter-spacing:.035em;text-shadow:0 7px 15px #000}.warhammer-hero-copy>p:last-child{font-size:1.3rem;color:#e6d6bb}.warhammer-rule{max-width:450px;height:2px;background:linear-gradient(90deg,transparent,#c4a06b,transparent);margin:2rem auto}.warhammer-chapters{background:linear-gradient(145deg,#171714,#101412);padding:3rem 4rem;border:1px solid #534632}.warhammer-lede{display:grid;grid-template-columns:180px 1fr 1fr;gap:2rem;align-items:start;margin-bottom:2.7rem}.warhammer-lede span,.warhammer-chapter-grid .chapter-index{color:#c19b5a;letter-spacing:.15em}.warhammer-lede h2{font:600 clamp(2rem,3vw,3rem) Cinzel,serif;margin:0}.warhammer-lede p{margin:0;color:#b7b3a9}.warhammer-chapter-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.warhammer-chapter-grid article{border-top:1px solid #967a48;padding:1.5rem 0}.warhammer-chapter-grid h3{font:600 1.35rem Cinzel,serif}.warhammer-chapter-grid p{color:#bdb6a8}
/* Wargaming: tactical field briefing */
.wargame-page{--field:#bcc8ad}.battlefield-hero{display:grid;grid-template-columns:.9fr 1.1fr;min-height:540px;border:1px solid #66715d;background:repeating-linear-gradient(90deg,#17251c 0 1px,#142018 1px 45px)}.battlefield-title{padding:3.5rem}.battlefield-title h1{font:800 clamp(3rem,5vw,6rem)/1 Inter,sans-serif;letter-spacing:-.06em}.battlefield-title p:last-child{max-width:34rem;color:var(--field)}.battlefield-hero>img{filter:sepia(.2) saturate(.78)}.wargame-brief{padding:3rem;background:#d0cfb5;color:#263228;border:10px solid #26372c}.wargame-brief header{display:flex;align-items:baseline;justify-content:space-between;border-bottom:2px solid #596958;padding-bottom:1rem;gap:1rem}.brief-kicker{font:bold .78rem monospace;letter-spacing:.08em}.wargame-brief h2{font:800 clamp(2rem,3.5vw,3.2rem) Inter,sans-serif;margin:0}.wargame-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-top:2.5rem}.wargame-grid article{padding:1.5rem;background:#e0dfc7;box-shadow:5px 5px 0 #89927c}.brief-no{font:bold .75rem monospace;color:#596752}.wargame-grid h3{font:800 1.45rem Inter,sans-serif}.wargame-grid p{color:#4b5548}.wargame-coordinates{font:700 .8rem monospace;letter-spacing:.15em;text-align:center;padding:1.8rem;color:#abc29d}
/* Board games: warm collector shelf */
.board-page{background:radial-gradient(circle at 50% 30%,#3d2b1c66,transparent 45%);padding:1.5rem}.board-hero{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;background:#211c16;border:1px solid #846d45;padding:3rem;border-radius:20px}.board-copy h1{font:600 clamp(4rem,7vw,7rem)/.95 Georgia,serif;margin:.8rem 0 1.6rem}.board-copy h1 em{color:#d3ae70;font-weight:normal}.board-copy p:not(.eyebrow){max-width:34rem;color:#d0c2ad;font-size:1.15rem}.board-photo-frame{height:440px;position:relative;padding:12px;background:#7a5b37;border:8px ridge #aa824e;box-shadow:0 24px 45px #0009}.board-photo-frame img{filter:saturate(.85)}.board-corner{position:absolute;right:20px;bottom:20px;background:#251b14dc;padding:.4rem 1rem;font-size:2rem}.board-shelf{padding:3rem 0}.board-shelf-header{display:flex;align-items:start;gap:2rem}.board-shelf-header span{color:#caad77;font-size:.8rem;letter-spacing:.15em;min-width:200px}.board-shelf-header h2{font:500 clamp(2rem,3vw,3.1rem) Georgia,serif;margin:0}.board-shelf-items{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem;margin-top:2rem}.board-shelf-items article{background:#30261b;border:1px solid #715735;box-shadow:inset 0 -8px 0 #634728;padding:2rem;min-height:210px}.board-shelf-items b{color:#c7a86b}.board-shelf-items h3{font:500 1.7rem Georgia,serif}.board-shelf-items p{color:#d2be9e}.board-closing{text-align:center;color:#c9b489;padding:1.5rem;border-top:1px solid #886c42;display:flex;justify-content:space-evenly}
/* Video gaming: neon pixel-inspired interface */
.videogame-page{font-family:Inter,sans-serif}.videogame-hero{border:1px solid #324e55;background:linear-gradient(145deg,#070d18,#0a1722);padding:2rem;box-shadow:inset 0 0 80px #082834}.videogame-topline,.game-index{font:700 .78rem monospace;letter-spacing:.16em;color:#75d6c4}.live-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#72e6c0;box-shadow:0 0 14px #48ca9c;margin-right:9px}.videogame-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:2.5rem;align-items:center;margin-top:2rem}.videogame-copy h1{font:900 clamp(3rem,7vw,7.3rem)/.95 Inter,sans-serif;letter-spacing:-.07em;margin:.4rem 0 1.3rem;color:#f2f6ff}.videogame-copy h1 span{color:#72d5cb;text-shadow:0 0 24px #4399a25e}.videogame-copy>p:not(.eyebrow){color:#abbcc9}.videogame-stat{display:grid;grid-template-columns:40px 1fr 25px;border-top:1px solid #28444d;padding:1rem 0;font:600 .9rem monospace}.videogame-stat span:first-child{color:#6fd2c6}.videogame-bottom{display:flex;justify-content:space-between;align-items:end;gap:3rem;padding:3rem 1rem}.videogame-bottom h2{font:800 clamp(2rem,3vw,3.2rem) Inter,sans-serif;margin:.7rem 0}.videogame-bottom>p{max-width:30rem;color:#aebdc5}
/* Programming: terminal, grid */
.programming-page{font-family:monospace;background:linear-gradient(transparent 95%,#15332333 95%),linear-gradient(90deg,transparent 95%,#15332333 95%);background-size:28px 28px}.dev-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:1rem}.dev-window{border:1px solid #36664b;background:#080f0c;min-height:510px;box-shadow:0 24px 48px #0007}.dev-windowbar{display:flex;justify-content:space-between;background:#1b2c22;border-bottom:1px solid #416b4f;padding:1rem;color:#a4baa8;font-size:.8rem}.dev-lights{color:#c4a26b;letter-spacing:5px}.dev-terminal{padding:2rem}.dev-terminal p{color:#c0d4c2}.dev-prompt,.dev-list{color:#82cf96!important}.dev-terminal h1{font:800 clamp(2.7rem,5vw,5.5rem)/1.1 monospace;letter-spacing:-.07em;margin:1rem 0;color:#c9f6d2;overflow-wrap:anywhere}.dev-comment{color:#7d9c88!important}.cursor{animation:cursorBlink 1.1s steps(1) infinite;color:#88eba3}@keyframes cursorBlink{50%{opacity:0}}.dev-modules{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1rem}.dev-modules article{border:1px solid #315a43;background:#0b1a12;padding:1.8rem}.dev-modules article span{color:#83ca99;font-size:.8rem}.dev-modules h2{font:700 1.6rem monospace}.dev-modules p{color:#a9c6b0}.dev-footer-line{display:flex;justify-content:space-between;font-size:.8rem;letter-spacing:.1em;color:#81ce9a;padding:1.5rem}
/* Racing: bold speed graphics */
.racing-page{font-family:Inter,sans-serif}.race-hero{position:relative;background:#121916;border:1px solid #707d6a;overflow:hidden}.race-top{display:flex;justify-content:space-between;padding:1.1rem 2rem;background:#c3a359;color:#152018;font-size:.8rem;font-weight:800;letter-spacing:.15em}.race-heading{position:relative;z-index:2;padding:3rem;max-width:700px}.race-heading h1{font:900 italic clamp(3.6rem,8vw,8rem)/.9 Inter,sans-serif;letter-spacing:-.08em;margin:.8rem 0 1.5rem}.race-heading h1 span{color:#d2a63b}.race-heading>p:last-child{font-size:1.1rem;max-width:30rem;color:#d6e0d6}.race-photo{height:310px;position:relative;z-index:1;margin:0 3rem 3rem;clip-path:polygon(0 0,100% 0,96% 100%,0 100%)}.race-photo img{filter:contrast(1.08) saturate(.75)}.race-stripe{position:absolute;top:0;right:10%;height:100%;width:80px;background:repeating-linear-gradient(180deg,#eee 0 25px,#16201a 25px 50px);opacity:.12;transform:skew(-18deg)}.race-pitlane{padding:3rem 1rem;display:grid;grid-template-columns:1.1fr repeat(3,1fr);gap:1rem}.race-pit-title>span{color:#c4a65d;font-size:.8rem;letter-spacing:.15em}.race-pit-title h2{font:800 italic 2.4rem Inter,sans-serif}.race-pitlane article{background:#1d2b22;border-top:6px solid #bda25e;padding:1.5rem}.race-pitlane article strong{color:#c6ac65}.race-pitlane h3{font:800 1.25rem Inter,sans-serif}.race-pitlane p{color:#b9cabe}
@media(max-width:1050px){.lego-hero,.battlefield-hero,.board-hero,.videogame-layout,.dev-hero{grid-template-columns:1fr}.warhammer-lede{grid-template-columns:1fr}.warhammer-chapter-grid,.wargame-grid,.race-pitlane{grid-template-columns:repeat(2,1fr)}.lego-hero-image,.board-photo-frame,.videogame-photo,.dev-photo{height:420px;min-height:0}.battlefield-hero>img{height:420px}}@media(max-width:700px){.lego-tiles,.board-shelf-items,.dev-modules,.warhammer-chapter-grid,.wargame-grid,.race-pitlane{grid-template-columns:1fr}.lego-intro,.battlefield-title,.warhammer-chapters,.board-hero,.videogame-hero,.race-heading{padding:1.4rem}.lego-intro h1{font-size:5rem}.warhammer-hero{min-height:480px}.board-shelf-header,.videogame-bottom{display:block}.board-shelf-header h2{margin-top:1rem}.race-top{gap:1rem;font-size:.62rem;padding:1rem}.race-photo{margin:0 1rem 1rem}.dev-terminal{padding:1rem}.dev-window{min-height:0}.dev-terminal h1{font-size:2.8rem}.board-page{padding:0}.board-hero{gap:1.5rem}.board-photo-frame{height:320px}}
@media(prefers-reduced-motion:reduce){.cursor{animation:none}}

/* Favorite Games and editorial news */
.warhammer-favorites,.bb-news,.video-crossover{margin:2rem 0;padding:clamp(1.4rem,3vw,2.6rem);border:1px solid rgba(193,160,83,.35);border-radius:24px;background:linear-gradient(125deg,#102016,#0a100d);color:#e7eee9}
.warhammer-favorites h2,.bb-news h2,.video-crossover h2{font-family:Cinzel,serif;font-size:clamp(1.75rem,3vw,2.8rem);margin:.3rem 0 1rem}.warhammer-favorites>p,.bb-news-head>p,.video-crossover>p{color:#b0bdb4;max-width:76ch}
.warhammer-focus-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin-top:1.5rem}.warhammer-focus-grid article{border-radius:18px;padding:2rem;min-height:340px;background:radial-gradient(circle at top right,#42512d 0%,transparent 55%),#111a12;border:1px solid #4d593c}.warhammer-focus-grid .focus-nec{background:radial-gradient(circle at top right,#4a3225,transparent 55%),#151512;border-color:#695037}.focus-kicker{font-size:.75rem;letter-spacing:.16em;color:#d3b370}.warhammer-focus-grid h3{font-family:Cinzel,serif;font-size:2rem;margin:.6rem 0}.warhammer-focus-grid p{color:#c8d2c9}.warhammer-focus-grid a,.video-crossover a{display:block;color:#dbbf7c;margin-top:.8rem;text-decoration:underline;text-underline-offset:4px}
.bb-news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1.3rem}.news-item{padding:1.3rem;background:#09120e;border:1px solid #304632;border-radius:16px}.news-item time{color:#c8ae77;font-size:.8rem;letter-spacing:.08em}.news-item h3{font-size:1.17rem;margin:.8rem 0}.news-item p{color:#b9c7bd;line-height:1.65}.news-item a{display:inline-block;color:#d3b370;text-decoration:underline;text-underline-offset:3px}.bb-news-foot{color:#879b8d;font-size:.8rem;margin-top:1.1rem}.video-crossover{background:linear-gradient(110deg,#08221f,#101610);border-color:#267565}
@media(max-width:850px){.warhammer-focus-grid,.bb-news-grid{grid-template-columns:1fr}}

/* Homepage refinements and new sections */
.hero-copy-enhanced {
    position: relative;
    overflow: hidden;
    min-height: 100%;
}
.hero-dragon-accent {
    position: absolute;
    right: -1.2rem;
    bottom: -1.2rem;
    width: clamp(180px, 28vw, 260px);
    opacity: 0.17;
    pointer-events: none;
    filter: saturate(0.9) contrast(1.05);
}
.hero-dragon-accent img {
    width: 100%;
    height: auto;
}
.kanji-scroll-tall img {
    max-height: 760px;
    width: auto;
}
.hobby-grid-eight {
    grid-template-columns: repeat(12, 1fr);
}
.hobby-grid-eight .hobby-card {
    grid-column: span 3;
}
.scroll-menu-widget {
    position: relative;
}
.scroll-toggle {
    width: 100%;
    border: 0;
    background: transparent;
    padding: 0;
    cursor: pointer;
}
.scroll-toggle:focus-visible {
    outline: 2px solid var(--gold-soft);
    outline-offset: 6px;
    border-radius: 18px;
}
.scroll-toggle-rod,
.scroll-rod {
    display: block;
    height: 18px;
    border-radius: 999px;
    background: linear-gradient(90deg, #5a441f, #8f7136, #5a441f);
    box-shadow: inset 0 1px 1px rgba(255,255,255,0.15), inset 0 -2px 4px rgba(0,0,0,0.2);
}
.scroll-toggle-paper {
    display: block;
    margin: -2px 0;
    padding: 0.95rem 1rem 0.9rem;
    background: linear-gradient(180deg, rgba(231,221,196,0.98), rgba(213,196,163,0.98));
    border-left: 8px solid rgba(93, 72, 36, 0.25);
    border-right: 8px solid rgba(93, 72, 36, 0.25);
    border-radius: 10px;
    text-align: center;
}
.scroll-toggle-title {
    display: block;
    color: #312515;
    font-family: 'Cinzel', serif;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}
.scroll-toggle-caption {
    display: block;
    margin-top: 0.3rem;
    color: #5b4522;
    font-size: 0.82rem;
}
[data-scroll-widget].is-open .scroll-toggle-caption::before {
    content: 'Open — click to roll up';
}
[data-scroll-widget].is-open .scroll-toggle-caption {
    font-size: 0;
}
.scroll-menu-panel {
    margin-top: 0.8rem;
    overflow: hidden;
    transform-origin: top center;
    opacity: 0;
    max-height: 0;
    transition: max-height 0.55s ease, opacity 0.35s ease, transform 0.35s ease;
    transform: scaleY(0.96);
}
.scroll-menu-panel.is-open {
    opacity: 1;
    max-height: 900px;
    transform: scaleY(1);
}
.scroll-paper {
    gap: 0.15rem;
}
.section-gallery-grid,
.board-gallery-grid {
    display: grid;
    gap: 1.2rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.board-gallery-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 2rem 0 1.4rem;
}
.gallery-card {
    overflow: hidden;
    padding: 0;
}
.gallery-card img {
    width: 100%;
    height: 100%;
    min-height: 320px;
    object-fit: cover;
}
.gallery-card figcaption {
    padding: 0.95rem 1rem 1.1rem;
    color: var(--muted);
    font-size: 0.95rem;
    background: linear-gradient(180deg, rgba(13,22,18,0.88), rgba(10,16,13,0.96));
}
.hobby-time-page .section-hero-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

@media (max-width: 1180px) {
    .hobby-grid-eight .hobby-card {
        grid-column: span 6;
    }
}

@media (max-width: 860px) {
    .hobby-grid-eight {
        grid-template-columns: 1fr;
    }
    .hobby-grid-eight .hobby-card {
        grid-column: span 1;
    }
    .hero-dragon-accent {
        width: 180px;
        opacity: 0.13;
    }
    .section-gallery-grid,
    .board-gallery-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .hero-dragon-accent {
        display: none;
    }
}
/* Compact layouts and responsive safeguards. */
:root{--max-width:1180px;--radius-xl:18px;--radius-lg:16px}
body{font-size:16px}p,.unique-page p{line-height:1.6}figure{margin:0}main,section,article,aside,nav,div{min-width:0}h1,h2,h3,p,a,span{overflow-wrap:break-word}img{height:auto}
.site-header{position:relative;display:block;padding:.75rem 0}.brand-mark{width:42px;height:42px}.brand-name{font-size:1.1rem}.brand-tagline{font-size:.8rem}.site-nav{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;gap:.15rem;margin-top:.5rem;padding-bottom:.25rem;max-width:100%}.site-nav a{flex:0 0 auto;padding:.65rem .7rem;font-size:.88rem;min-height:44px}
.home-hero{grid-template-columns:1.25fr .8fr .65fr;gap:1rem;padding:1.25rem 0 .75rem}.hero-copy,.section-hero-copy,.kanji-scroll-frame,.scroll-menu-widget,.hero-portrait,.section-hero-media,.info-card,.credit-card{padding:1.15rem}.hero-copy h1{font-size:clamp(1.9rem,3vw,2.8rem)}.section-hero h1{font-size:clamp(1.8rem,3vw,2.6rem)}.section-heading h2,.large-panel h2,.warhammer-favorites h2,.bb-news h2,.video-crossover h2{font-size:clamp(1.4rem,2.2vw,2rem)}.hero-lead,.section-lead{font-size:1rem}.hero-link-row{margin:1rem 0;gap:.5rem}.button{padding:.65rem .9rem;min-height:44px}.hero-pill-list{gap:.35rem}.hero-pill-list li{padding:.35rem .55rem;font-size:.8rem}.hero-portrait img{height:auto;max-height:380px;object-fit:contain}.kanji-scroll-tall img{max-height:280px}.scroll-column{gap:.75rem}.content-section{padding:1rem 0}.unique-page{padding:1.1rem 0 1.5rem}.section-heading{margin-bottom:1rem}
.hobby-grid-eight{grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}.hobby-grid-eight .hobby-card{grid-column:auto}.media-card,.media-link{min-height:0;height:auto}.media-content{position:relative;padding:1rem}.media-overlay{display:none}.media-content h3{font-size:1.1rem}.media-content p{font-size:.9rem}
.lego-hero,.battlefield-hero{min-height:0}.lego-intro,.board-hero,.wargame-brief,.race-heading,.videogame-hero{padding:1.5rem}.lego-intro h1{font-size:clamp(3rem,6vw,5rem);margin:1.5rem 0 1rem}.lego-hero-image{max-height:380px}.lego-hero-image img{height:100%;object-fit:contain}.lego-tile,.board-shelf-items article{min-height:0;padding:1.2rem}.lego-tile h2{font-size:1.4rem}.board-copy h1{font-size:clamp(2.6rem,5vw,4rem)}.board-copy p:not(.eyebrow){font-size:1rem}.board-hero{gap:1.5rem}.board-photo-frame{height:320px}.board-shelf{padding:1.5rem 0}.board-shelf-header span{min-width:0}.board-shelf-header h2{font-size:2rem}.board-closing{gap:.75rem;flex-wrap:wrap}.board-shelf-items h3{font-size:1.4rem}
.warhammer-hero{min-height:0}.warhammer-hero-copy{padding:1.5rem;max-width:800px}.warhammer-hero h1{font-size:clamp(2.3rem,5vw,4rem)}.warhammer-sigil{font-size:2rem}.warhammer-hero-copy>p:last-child{font-size:1.05rem}.warhammer-rule{margin:1rem auto}.warhammer-focus-grid article{padding:1.25rem;min-height:0}.warhammer-focus-grid h3{font-size:1.5rem}
.videogame-layout,.dev-hero{grid-template-columns:1fr;margin-top:1rem}.videogame-copy h1{font-size:clamp(2.8rem,5vw,4.5rem)}.videogame-bottom{padding:1.5rem 0;gap:1.5rem}.videogame-bottom h2{font-size:2rem}.dev-window{min-height:0}.dev-terminal{padding:1.25rem}.dev-terminal h1{font-size:clamp(1.7rem,4vw,3.3rem)}.dev-windowbar{gap:.5rem;flex-wrap:wrap}.dev-modules article{padding:1.2rem}.dev-footer-line{gap:.75rem;flex-wrap:wrap}
.race-heading h1{font-size:clamp(2.8rem,6vw,4.5rem)}.race-photo{height:auto;margin:0 1.5rem 1.5rem;clip-path:none}.race-photo img{height:auto;max-height:360px;object-fit:contain}.race-pitlane{padding:1.5rem 0}.race-pit-title h2{font-size:1.8rem}.race-top{gap:1rem;flex-wrap:wrap;letter-spacing:.08em}.wargame-brief h1{font-size:clamp(1.8rem,3vw,2.5rem);margin:1rem 0}.wargame-brief h2{font-size:1.6rem}.battlefield-hero>img{height:auto;align-self:center;object-fit:contain}.wargame-grid{margin-top:1.5rem;gap:1rem}.wargame-grid article{padding:1.1rem}.wargame-grid h3{font-size:1.25rem}.wargame-coordinates{letter-spacing:.05em;padding:1.2rem .5rem}
.section-hero-media{min-height:0}.section-hero-media img{height:auto;max-height:360px;object-fit:contain}.gallery-card img,.unique-page .gallery-card img{height:auto;min-height:0;aspect-ratio:4/3;object-fit:contain}.gallery-card figcaption{padding:.65rem .8rem;font-size:.85rem}.site-footer{padding:1.2rem}.scroll-menu-panel.is-open{max-height:min(70vh,700px);overflow-y:auto}.scroll-paper a{min-height:44px;padding:.65rem .35rem}.scroll-toggle{min-height:44px}a:focus-visible,button:focus-visible{outline:2px solid var(--gold-soft);outline-offset:3px}
@media(max-width:1000px){.home-hero{grid-template-columns:1.4fr 1fr}.scroll-column{grid-column:1/-1;grid-template-columns:1fr 1fr;align-items:start}.kanji-scroll-tall img{max-height:180px}.hobby-grid-eight{grid-template-columns:repeat(2,minmax(0,1fr))}.lego-hero,.board-hero,.battlefield-hero{grid-template-columns:repeat(2,minmax(0,1fr))}.wargame-grid,.race-pitlane{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.site-shell{width:calc(100% - 1.25rem)}.home-hero,.scroll-column,.lego-hero,.board-hero,.battlefield-hero,.media-hero,.split-highlight,.feature-card-grid,.credits-grid,.lego-tiles,.board-shelf-items,.dev-modules,.wargame-grid,.race-pitlane,.section-gallery-grid,.board-gallery-grid{grid-template-columns:minmax(0,1fr)}.scroll-column{grid-column:auto}.home-hero{gap:.75rem}.hero-portrait img{max-height:260px}.kanji-scroll-tall img{max-height:200px}.hero-copy,.lego-intro,.board-hero,.wargame-brief,.race-heading,.videogame-hero{padding:1.1rem}.lego-hero-image{height:auto}.lego-hero-image img{height:auto}.board-photo-frame{height:auto}.board-photo-frame img{height:auto}.board-shelf-header,.videogame-bottom{display:block}.board-shelf-header h2{margin-top:.75rem}.board-page{padding:0}.race-top{padding:.8rem}.battlefield-hero>img{height:auto}.wargame-brief header{flex-wrap:wrap}.dev-windowbar{font-size:.75rem}.warhammer-hero-copy{padding:1.1rem}.unique-page h1{letter-spacing:normal}.hero-pill-list{display:none}}
@media(max-width:460px){.hobby-grid-eight{grid-template-columns:minmax(0,1fr)}.media-content{padding:.9rem}.brand-name{letter-spacing:.06em}.hero-copy h1{font-size:1.85rem}.lego-intro h1{font-size:3.5rem}.dev-terminal h1{font-size:1.65rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Programming and video gaming are intentionally text-only. */
.programming-page img,.videogame-page img:not(.clan-logo):not(.official-game-image):not(.clan-highlight-image){display:none!important}
.programming-page,.programming-page *,.videogame-page,.videogame-page *{background-image:none!important}
/* Live navigation, matching scrolls, and page structure. */
.site-nav{align-items:flex-start;gap:.1rem;flex-wrap:nowrap;overflow-x:auto;overflow-y:visible;padding:.35rem 0}.site-nav>a,.nav-disclosure>summary{display:block;white-space:nowrap;font-size:.82rem;padding:.65rem .65rem;min-height:44px;color:var(--muted);cursor:pointer;border-radius:8px}.nav-item{flex:0 0 auto}.nav-disclosure>summary::marker{color:var(--gold-soft)}.nav-disclosure[open]>summary{color:var(--gold-soft);background:#18241b}.nav-submenu{position:fixed;z-index:100;top:var(--menu-top,130px);left:var(--menu-left,16px);width:min(290px,calc(100vw - 24px));max-height:min(70vh,540px);overflow-y:auto;background:#0c1711;border:1px solid #796139;border-radius:12px;padding:.5rem;box-shadow:0 12px 30px #0008}.nav-submenu a{display:block;white-space:normal;font-size:.88rem;min-height:44px;padding:.65rem .75rem}.nav-submenu .nav-parent{color:var(--gold-soft);border-top:1px solid var(--line);margin-top:.3rem}.nav-submenu .nav-child{padding-left:1.5rem;font-size:.82rem}.nav-submenu a:hover{background:#1c2b20}.breadcrumbs{display:flex;gap:.65rem;flex-wrap:wrap;color:var(--muted);padding:1rem 0 .25rem;font-size:.85rem}.breadcrumbs a{color:var(--gold-soft)}.about-page,.game-placeholder{margin-top:1.25rem;padding:1.5rem}.about-page p,.game-placeholder p{max-width:70ch}.about-page a{text-decoration:underline;text-underline-offset:3px}.tabletop-sections .feature-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.warhammer-focus-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.warhammer-shade{pointer-events:none}.brand-notice{font-size:.8rem;color:var(--muted)}
.home-hero.home-scroll-layout{display:grid;grid-template-columns:minmax(190px,250px) minmax(0,1fr) minmax(190px,250px);align-items:start;gap:1.15rem;padding:1.25rem 0}.matching-scroll{position:relative;width:100%;margin:0;padding:0;background:none;border:none;box-shadow:none}.matching-scroll .scroll-art{width:100%;height:auto;max-height:none;display:block}.home-center{display:grid;gap:1rem;align-content:start}.home-center .hero-copy{padding:1.4rem}.home-center .hero-copy h1{font-size:clamp(1.8rem,2.7vw,2.65rem);line-height:1.15}.home-center .hero-lead{font-size:1rem;line-height:1.65;margin-bottom:0}.home-center .hero-portrait{padding:.85rem}.home-center .hero-portrait img{width:100%;height:auto;max-height:300px;object-fit:contain;border-radius:12px}.menu-scroll-content{position:absolute;top:17%;bottom:9%;left:20%;right:20%;display:flex;flex-direction:column;min-height:0;color:#302516}.menu-scroll-content h2{font:600 1rem Cinzel,Georgia,serif;text-align:center;margin:0 0 .4rem;padding:0 0 .4rem;border-bottom:1px solid #6d542c55;flex:0 0 auto}.parchment-navigation{overflow-y:auto;overflow-x:hidden;min-height:0;scrollbar-width:thin;scrollbar-color:#9a783e transparent;overscroll-behavior:contain;padding:0 .15rem}.parchment-navigation a,.scroll-subgroup>summary{font-family:Inter,system-ui,sans-serif;display:flex;align-items:center;min-height:44px;padding:.35rem .25rem;color:#302516;font-size:.81rem;font-weight:600;line-height:1.3;border-bottom:1px solid #6d542c30;cursor:pointer}.parchment-navigation a:hover,.scroll-subgroup>summary:hover{color:#5f3c12;background:#99743a20}.parchment-navigation .nav-child{font-size:.76rem;padding-left:.7rem;font-weight:500}.scroll-subgroup>summary{display:list-item;list-style-position:inside;margin-left:.5rem;font-size:.79rem}.scroll-subnav{border-left:1px solid #8c693f60;margin-left:.6rem;padding-left:.3rem}.scroll-subnav a{font-size:.74rem;font-weight:500}.text-only-page .page-content img,.text-only-page .page-content picture,.text-only-page .page-content svg{display:none!important}.text-only-page .page-content *{background-image:none!important}.lego-intro h1{font-family:'Arial Rounded MT Bold','Trebuchet MS',Arial,sans-serif;font-size:clamp(2.8rem,5vw,4.2rem);font-weight:900;letter-spacing:-.045em;line-height:1.05;margin:1.7rem 0 1rem}.lego-intro .lego-dot{display:none}
@media(max-width:1000px){.home-hero.home-scroll-layout{grid-template-columns:minmax(170px,205px) minmax(0,1fr) minmax(170px,205px);gap:.8rem}.home-center .hero-copy{padding:1rem}.home-center .hero-copy h1{font-size:1.8rem}.home-center .hero-lead{font-size:.95rem}.home-center .hero-portrait img{max-height:250px}.menu-scroll-content{left:19%;right:19%}.menu-scroll-content h2{font-size:.9rem}.parchment-navigation a,.scroll-subgroup>summary{font-size:.76rem}}
@media(max-width:760px){.home-hero.home-scroll-layout{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;max-width:600px;margin:0 auto}.home-center{grid-column:1/-1;grid-row:1}.menu-scroll{grid-column:1;grid-row:2}.identity-scroll{grid-column:2;grid-row:2}.home-center .hero-portrait img{max-height:260px}.menu-scroll-content h2{font-size:.9rem}.parchment-navigation a,.scroll-subgroup>summary{font-size:.8rem}.tabletop-sections .feature-card-grid,.warhammer-focus-grid{grid-template-columns:1fr}.site-footer{flex-wrap:wrap}.site-nav{scrollbar-width:thin}}
@media(max-width:400px){.home-hero.home-scroll-layout{gap:.4rem}.menu-scroll-content{left:19%;right:19%;top:17%}.menu-scroll-content h2{font-size:.72rem}.parchment-navigation a,.scroll-subgroup>summary{font-size:.72rem}.parchment-navigation .nav-child,.scroll-subnav a{font-size:.68rem}.home-center .hero-copy h1{font-size:1.7rem}}
.garage-section{margin-top:1rem;padding:1.5rem;background:linear-gradient(160deg,#17231b,#070e0a);border:1px solid #56623c;border-radius:18px}.garage-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.garage-heading h2{font-family:Cinzel,Georgia,serif;font-size:clamp(1.8rem,3vw,2.5rem);margin:0}.garage-heading .eyebrow{margin-bottom:.4rem}.garage-total{padding:.55rem .85rem;border:1px solid #786238;border-radius:999px;font-size:.85rem;color:var(--gold-soft)}.garage-intro,.garage-caption{color:var(--muted)}.garage-caption{font-size:.8rem}.garage-filters{display:flex;gap:.5rem;flex-wrap:wrap;margin:1rem 0}.garage-filters button{font:inherit;font-size:.85rem;color:var(--text);background:#111c15;border:1px solid #3f503c;border-radius:8px;min-height:44px;padding:.5rem .75rem;cursor:pointer}.garage-filters button[aria-pressed=true]{background:#34432b;border-color:#c1a053;color:#e8d9ad}.garage-bays{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.8rem}.garage-bay{background:repeating-linear-gradient(0deg,#111b16 0 22px,#152119 23px 24px);border:1px solid #3b493b;border-top:5px solid var(--car-color);padding:1rem;border-radius:8px;position:relative}.garage-bay[hidden]{display:none}.bay-label{display:flex;justify-content:space-between;gap:.5rem;font:600 .75rem monospace;color:#aab59e;letter-spacing:.08em}.bay-art{height:130px;margin:.7rem 0;border-left:2px solid #87734360;border-right:2px solid #87734360;display:grid;place-items:center;position:relative}.bay-art::after{content:'';position:absolute;bottom:1rem;left:15%;right:15%;height:4px;border-radius:100%;background:var(--car-color);box-shadow:0 0 16px var(--car-color);opacity:.55}.bay-art img{width:100%;height:100%;object-fit:contain}.bay-art.silhouette{background:var(--car-color);mask:url('/assets/images/car-silhouette.svg') center/contain no-repeat;-webkit-mask:url('/assets/images/car-silhouette.svg') center/contain no-repeat;border:none}.bay-art.silhouette img{opacity:0}.garage-bay h3{font-size:1.1rem;margin:.5rem 0}.garage-bay p{font-size:.85rem;margin:.25rem 0;color:var(--muted)}.bay-scale{font-size:.75rem;color:#b7b38f}.garage-models{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:1.25rem}.garage-models .info-card{padding:1rem}.garage-models h3{font-size:1.1rem}.garage-models p{font-size:.9rem}.model-number{font-family:monospace}.garage-specs{margin-top:.75rem}.garage-specs p{max-width:90ch;font-size:.9rem}.inventory-table-wrap{border:1px solid var(--line);border-radius:12px;overflow:hidden}.track-inventory table{width:100%;border-collapse:collapse;background:#101b14}.track-inventory th,.track-inventory td{text-align:left;padding:.9rem 1rem;border-bottom:1px solid var(--line);font-size:.95rem}.track-inventory thead{background:#233020;color:var(--gold-soft)}.track-inventory tbody th{font-weight:500}.track-inventory td{color:var(--muted)}.track-inventory tr:last-child th,.track-inventory tr:last-child td{border-bottom:0}
@media(max-width:700px){.garage-section{padding:1rem}.garage-bays{grid-template-columns:repeat(2,minmax(0,1fr))}.garage-bay{padding:.7rem}.bay-art{height:100px}.garage-models{grid-template-columns:1fr}.garage-bay h3{font-size:1rem}.garage-bay p{font-size:.8rem}.track-inventory th,.track-inventory td{padding:.75rem;font-size:.85rem}}
@media(max-width:360px){.garage-bays{grid-template-columns:1fr}}

.bay-art.silhouette{background:none;mask:none;-webkit-mask:none;color:var(--car-color);border-left:2px solid #87734360;border-right:2px solid #87734360}.bay-art.silhouette svg{width:100%;height:100%;max-height:130px}.bay-art.silhouette::after{display:none}

.nav-disclosure>summary::after{content:" ▾";color:var(--gold-soft)}.nav-disclosure[open]>summary::after{content:" ▴"}.scroll-menu-hint{display:none;flex:0 0 auto;font:600 .66rem Inter,system-ui,sans-serif;text-align:center;padding:.25rem 0;color:#61471e}.menu-scroll-content.has-more .scroll-menu-hint{display:block}

/* Shared scroll framework — compact edition. */
:root{--max-width:1440px;--radius-xl:14px;--radius-lg:12px;--radius-md:10px;--shadow:0 10px 28px #0004}
body{font-size:15.5px}.site-shell{width:min(calc(100% - 2rem),var(--max-width));padding-bottom:1.5rem}.site-header{padding:.65rem 0 .45rem;position:relative}.brand-mark{width:36px;height:36px;border-radius:11px;font-size:.85rem}.brand-lockup{gap:.7rem}.brand-name{font-size:1rem;letter-spacing:.08em}.brand-tagline{font-size:.77rem;margin-top:.15rem}.site-nav{margin-top:.25rem;padding:0;gap:0}.site-nav>a,.nav-disclosure>summary{font-size:.78rem;padding:.5rem .6rem;min-height:40px}.site-page-layout{display:grid;grid-template-columns:210px minmax(0,1fr) 210px;gap:1rem;align-items:start;padding-top:1rem}.page-content{min-width:0}.site-scroll-menu,.site-identity-scroll{position:sticky;top:.75rem;align-self:start}.site-identity-scroll{margin:0}.site-scroll-menu .scroll-art,.site-identity-scroll .scroll-art{height:auto;width:100%;max-height:none}.menu-scroll-content{left:19%;right:19%}.menu-scroll-content h2{font-size:.9rem;margin-bottom:.25rem;padding-bottom:.25rem}.parchment-navigation a,.scroll-subgroup>summary{font-size:.76rem;min-height:40px;padding:.3rem .2rem}.parchment-navigation .nav-child,.scroll-subnav a{font-size:.71rem}.parchment-navigation a[aria-current=page]{color:#161d11;font-weight:800;background:#9a783e25;border-left:2px solid #765525;padding-left:.35rem}.home-introduction{display:grid;gap:.8rem}.home-introduction .hero-copy{padding:1.15rem}.home-introduction .hero-copy h1{font-size:clamp(1.7rem,2.4vw,2.2rem);line-height:1.18;max-width:24ch}.home-introduction .hero-lead{font-size:1rem;line-height:1.6;max-width:70ch;margin-bottom:0}.home-introduction .hero-portrait{padding:.7rem}.home-introduction .hero-portrait img{max-height:245px;object-fit:contain;width:100%;height:auto}.hero-copy,.section-hero-copy,.section-hero-media,.info-card,.credit-card{padding:1rem}.unique-page{padding:.2rem 0 .8rem}.content-section{padding:.75rem 0}.section-hero,.single-column{padding:1rem 0 .6rem}.single-column.card-panel,.about-page,.game-placeholder{padding:1.15rem;margin-top:.2rem}.eyebrow,.card-overline{font-size:.69rem;letter-spacing:.13em;margin-bottom:.65rem}.section-hero h1,.unique-page h1{font-size:clamp(1.8rem,3.2vw,2.8rem)}.section-heading h2,.large-panel h2,.warhammer-favorites h2,.bb-news h2,.video-crossover h2{font-size:clamp(1.35rem,2vw,1.75rem)}.section-heading{margin-bottom:.8rem}.section-lead,.hero-lead{font-size:1rem}.feature-list{gap:.6rem}.split-highlight,.feature-card-grid,.credits-grid,.media-hero,.section-gallery-grid{gap:.8rem}.breadcrumbs{padding:.2rem 0 .5rem;font-size:.78rem}.section-hero-media img{max-height:280px}.gallery-card img,.unique-page .gallery-card img{max-height:240px;aspect-ratio:4/3}.gallery-card figcaption{padding:.5rem .65rem;font-size:.8rem}.lego-intro,.board-hero,.wargame-brief,.race-heading,.videogame-hero{padding:1.1rem}.lego-intro h1{font-size:3.2rem;margin:1.1rem 0 .8rem}.lego-hero-image{max-height:300px}.lego-tile{padding:1rem;min-height:0}.lego-tile h2{font-size:1.25rem}.lego-tile p{font-size:.92rem}.lego-bottom{padding:1rem}.board-page{padding:0}.board-hero{gap:1rem}.board-copy h1{font-size:2.8rem;margin:.6rem 0 1rem}.board-copy p:not(.eyebrow){font-size:1rem}.board-photo-frame{height:280px}.board-shelf{padding:1.1rem 0}.board-shelf-header{gap:1rem}.board-shelf-header h2{font-size:1.7rem}.board-shelf-items{gap:.8rem;margin-top:1rem}.board-shelf-items article{padding:1rem;min-height:0}.board-shelf-items h3{font-size:1.3rem}.board-closing{padding:1rem;font-size:.85rem}.warhammer-hero-copy{padding:1.2rem}.warhammer-hero h1{font-size:2.8rem}.warhammer-sigil{font-size:1.6rem}.warhammer-hero-copy>p:last-child{font-size:1rem}.warhammer-rule{margin:.75rem auto}.warhammer-favorites,.bb-news,.video-crossover{padding:1.1rem;margin-top:1rem}.warhammer-focus-grid{gap:.8rem;margin-top:1rem}.warhammer-focus-grid article{padding:1rem}.warhammer-focus-grid h3{font-size:1.3rem}.wargame-brief{border-width:6px}.wargame-brief h1{font-size:1.9rem}.wargame-brief h2{font-size:1.4rem}.wargame-grid{gap:.8rem;margin-top:1rem}.wargame-grid article{padding:1rem}.wargame-grid h3{font-size:1.15rem}.wargame-coordinates{font-size:.7rem;padding:.9rem .4rem}.race-top{padding:.75rem 1rem;font-size:.69rem;letter-spacing:.08em}.race-heading h1{font-size:clamp(2.2rem,3.7vw,3.1rem);margin:.6rem 0 1rem}.race-heading>p:last-child{font-size:1rem}.race-photo{margin:0 1rem 1rem}.race-photo img{max-height:280px}.race-pitlane{padding:1rem 0;gap:.8rem}.race-pitlane article{padding:1rem}.race-pit-title h2{font-size:1.5rem}.race-pitlane h3{font-size:1.1rem}.garage-section{padding:1.1rem;margin-top:.5rem}.garage-heading h2{font-size:1.9rem}.garage-bays{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:.6rem}.garage-bay{padding:.75rem}.bay-art{height:95px}.garage-bay h3{font-size:1rem}.garage-models{gap:.6rem}.garage-specs{padding:1rem}.garage-total{font-size:.78rem}.track-inventory th,.track-inventory td{padding:.75rem .85rem}.videogame-copy h1{font-size:3rem}.videogame-layout{margin-top:.8rem}.videogame-stat{padding:.75rem 0;font-size:.8rem}.videogame-bottom{padding:1rem 0}.videogame-bottom h2{font-size:1.6rem}.dev-terminal{padding:1rem}.dev-terminal h1{font-size:2.5rem}.dev-windowbar{padding:.7rem}.dev-modules{gap:.7rem}.dev-modules article{padding:1rem}.dev-modules h2{font-size:1.3rem}.news-item{padding:1rem}.news-item h3{font-size:1.05rem}.site-footer{padding:.85rem 1rem;margin-top:1rem;font-size:.87rem}.footer-links a{padding:.55rem .65rem}.site-menu-toggle,.scroll-close,.menu-backdrop{display:none}
@media(min-width:1101px) and (max-width:1280px){.site-page-layout{grid-template-columns:190px minmax(0,1fr) 190px;gap:.8rem}.parchment-navigation a,.scroll-subgroup>summary{font-size:.72rem}.menu-scroll-content h2{font-size:.82rem}.feature-card-grid,.dev-modules{grid-template-columns:1fr}.race-pitlane,.board-shelf-items,.wargame-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1100px){.site-page-layout{grid-template-columns:minmax(0,1fr);padding-top:.8rem;max-width:940px;margin:0 auto}.site-identity-scroll{display:none}.site-scroll-menu{position:relative;width:min(250px,85vw);margin:0 auto}.site-header{padding-right:115px}.site-nav{display:none}html.js .site-menu-toggle{display:flex;align-items:center;justify-content:center;gap:.65rem;position:absolute;right:0;top:.7rem;border:1px solid #94753c;background:linear-gradient(135deg,#26382a,#101b14);color:var(--gold-soft);border-radius:8px;padding:.6rem .7rem;min-height:44px;font:600 .8rem Inter,system-ui,sans-serif;cursor:pointer}html.js .site-scroll-menu{position:fixed;z-index:70;left:max(10px,calc((100vw - 390px)/2));top:1vh;width:min(290px,calc(98vh * .4),calc(100vw - 24px));max-height:98vh;margin:0;transform:translateX(-150vw);visibility:hidden;transition:transform .22s ease,visibility .22s}html.js .menu-open .site-scroll-menu{transform:translateX(0);visibility:visible}html.js .menu-open .menu-backdrop{display:block;position:fixed;inset:0;z-index:65;border:0;background:#020705c9;backdrop-filter:blur(3px);cursor:pointer}.scroll-close{display:block;position:absolute;right:5%;top:10%;z-index:5;width:44px;height:44px;border-radius:50%;border:1px solid #bd9a51;background:#101b13;color:#e0c784;font-size:1.7rem;cursor:pointer}.menu-open{overflow:hidden}.site-scroll-menu .menu-scroll-content{left:19%;right:19%}.site-scroll-menu .parchment-navigation a,.site-scroll-menu .scroll-subgroup>summary{min-height:44px;font-size:.82rem}.site-scroll-menu .scroll-subnav a{font-size:.76rem}.home-introduction .hero-portrait img{max-height:245px}.text-only-page .site-scroll-menu img{display:block!important}}
@media(max-width:700px){body{font-size:16px}.site-shell{width:calc(100% - 1.25rem)}.brand-name{font-size:.92rem}.brand-tagline{max-width:170px;font-size:.72rem}.site-header{padding-right:105px}.site-menu-toggle{font-size:.76rem!important;padding:.5rem!important}.home-introduction .hero-copy h1{font-size:1.75rem}.home-introduction .hero-copy{padding:1rem}.hero-portrait img{max-height:230px}.section-hero h1,.unique-page h1{font-size:2rem}.lego-intro h1{font-size:3rem}.warhammer-hero h1{font-size:2.3rem}.videogame-copy h1{font-size:2.5rem}.dev-terminal h1{font-size:1.8rem}.race-heading h1{font-size:2.35rem}.race-pitlane,.board-shelf-items,.wargame-grid,.garage-models,.feature-card-grid,.dev-modules{grid-template-columns:1fr}.garage-bays{grid-template-columns:repeat(2,minmax(0,1fr))}.garage-bay{padding:.65rem}.bay-art{height:90px}.garage-section{padding:.85rem}.board-photo-frame{height:auto}.board-photo-frame img{height:auto;max-height:250px;object-fit:contain}.board-hero{padding:1rem}.site-footer{font-size:.85rem}.about-page{padding:1rem}}
@media(prefers-reduced-motion:reduce){html.js .site-scroll-menu{transition:none}}

.brand-mark.kanji-mark{width:auto;min-width:38px;height:44px;padding:0;border:0;border-radius:0;box-shadow:none;font-family:'Yu Mincho','MS Mincho','Noto Serif CJK JP',serif;font-weight:700;font-size:2.5rem;line-height:1;letter-spacing:0;background:repeating-linear-gradient(137deg,transparent 0 9px,#9db8a378 9.5px 10px,transparent 11px 28px),radial-gradient(ellipse at 25% 20%,#537b5e,transparent 55%),linear-gradient(135deg,#234b36 5%,#6a8c6d 35%,#274d38 55%,#79977c 72%,#244c37 90%);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}.brand-mark.kanji-mark:hover{filter:brightness(1.15)}
/* Expandable tabletop branch and growing tabletop collections. */
.scroll-tabletop>summary{margin-left:0;font-weight:700;min-height:40px}.tabletop-subnav{margin-left:.15rem;padding-left:.2rem}.tabletop-subnav>.scroll-subgroup>summary{margin-left:.2rem}.glory-introduction{padding:1rem!important}.glory-era-links{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.85rem}.glory-era-links a{font-size:.8rem;color:var(--gold-soft);border:1px solid #6c603c;border-radius:7px;padding:.6rem .7rem;min-height:40px;display:flex;align-items:center}.glory-collection{margin:1rem 0;padding:1.1rem;border:1px solid #52614b;border-radius:14px;background:linear-gradient(155deg,#1a281d,#0a120d)}.glory-intro{font-size:.95rem;color:var(--muted)}.collection-bays{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:.7rem;margin-top:1rem}.collection-bay{padding:.8rem;border:1px solid #465346;border-top:4px solid #9aa77a;border-radius:8px;background:repeating-linear-gradient(0deg,#101c14 0 22px,#16251b 23px 24px)}.collection-bay[hidden]{display:none}.collection-art{display:grid;place-items:center;height:120px;padding:.5rem;margin:.4rem 0;color:#a7bba1;position:relative;border-left:1px solid #a9985840;border-right:1px solid #a9985840}.collection-art svg,.collection-art img{display:block;width:100%;height:100%;object-fit:contain;max-width:260px}.collection-bay h3{font-size:1rem;line-height:1.3;margin:.7rem 0 .4rem}.collection-bay p{font-size:.8rem;line-height:1.5;color:var(--muted);margin:.4rem 0}.collection-set-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.collection-set-grid h3{font-size:1.05rem}.collection-set-grid p{font-size:.9rem}.collection-growth{font-size:.9rem;color:var(--gold-soft);border-top:1px solid var(--line);padding-top:.8rem;margin-bottom:.2rem}.collection-references{font-size:.85rem}.collection-references h2{font-size:1.25rem}.collection-references a{display:block;padding:.4rem 0;color:var(--gold-soft);text-decoration:underline;text-underline-offset:3px}.port-collection{background:linear-gradient(150deg,#12282b,#0a1719);border-color:#496469}.port-collection .collection-bay{background:repeating-linear-gradient(175deg,#102229 0 21px,#173239 22px 24px);border-color:#3e6268;border-top-color:#ad9360}.port-collection .collection-art{color:#d1b57b}.port-collection .collection-art::after{content:'';position:absolute;bottom:0;left:0;right:0;height:5px;background:repeating-linear-gradient(90deg,#779c9a90 0 10px,transparent 11px 16px)}.civilization-section{padding:1.15rem;margin:1rem 0;border-color:#77643b;background:radial-gradient(ellipse at top right,#5d4f2e35,transparent 65%),#131c16}.civilization-section h2{font:600 1.8rem Cinzel,Georgia,serif;margin:.4rem 0 .8rem;color:#d4bc80}.civilization-section>p{max-width:80ch;color:var(--muted)}.civilization-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;border-top:1px solid #77643b70;margin-top:1rem;padding-top:.5rem}.civilization-notes h3{font-size:1rem;color:#e1d4b4}.civilization-notes p{font-size:.9rem;color:var(--muted)}
@media(max-width:700px){.collection-bays{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.collection-bay{padding:.65rem}.collection-bay h3{font-size:.95rem}.collection-bay .bay-label{font-size:.63rem;letter-spacing:.02em}.collection-art{height:100px}.collection-set-grid,.civilization-notes{grid-template-columns:1fr}.glory-collection{padding:.85rem}.glory-collection .garage-heading h2{font-size:1.6rem}.glory-collection .garage-total{font-size:.75rem}.civilization-section{padding:1rem}.civilization-section h2{font-size:1.6rem}}
@media(max-width:360px){.collection-bays{grid-template-columns:1fr}}

.clan-legacy{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:1.3rem;align-items:center;margin:1.4rem 0}.clan-logo{display:block;width:100%;height:auto;object-fit:contain;border-radius:8px}.clan-handle{font-family:monospace;color:var(--gold-soft);overflow-wrap:anywhere;font-size:.9rem}@media(max-width:600px){.clan-legacy{grid-template-columns:minmax(0,1fr)}.clan-logo{max-width:220px;margin:auto}}

/* Home: portrait between the scrolls, introduction beneath the complete row. */
.home-page .page-content{display:contents}
.home-page .site-scroll-menu{grid-column:1;grid-row:1;position:relative;top:auto}
.home-page .site-identity-scroll{grid-column:3;grid-row:1;position:relative;top:auto}
.home-page .home-portrait{grid-column:2;grid-row:1;margin:0;padding:0;align-self:start;background:none;border:0;box-shadow:none}
.home-page .home-portrait img{display:block;width:100%;height:auto;max-height:510px;object-fit:contain;border-radius:10px}
.home-page .home-introduction{grid-column:1/-1;grid-row:2;margin:0;padding:1.15rem;display:block}
.home-page .home-introduction h1{max-width:none;margin:0 0 .65rem;font-size:clamp(1.6rem,2.3vw,2.1rem)}
.home-page .home-introduction .hero-lead{max-width:85ch}
@media(max-width:1100px){.home-page .home-portrait{grid-column:1;grid-row:1}.home-page .home-portrait img{max-height:350px}.home-page .site-scroll-menu{position:fixed;top:1vh}.home-page .home-introduction{grid-column:1;grid-row:2}}
@media(max-width:700px){.home-page .home-portrait img{max-height:280px}.home-page .home-introduction{padding:1rem}}

.brand-name{text-transform:none;font-family:Inter,system-ui,sans-serif;letter-spacing:.025em}
.clan-legacy{grid-template-columns:minmax(0,260px) minmax(0,1fr);padding:1.1rem}
.videogame-page .clan-logo{display:block!important;width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;border-radius:0}
.official-game-art{margin:1rem 0;max-width:460px}.official-game-art a{display:block}.videogame-page .official-game-image{display:block!important;width:100%!important;height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;max-height:none!important}.official-game-art figcaption{font-size:.75rem;margin-top:.4rem;color:var(--muted)}
.dod-official-media{grid-column:1/-1;min-width:0}.dod-official-media iframe{display:block;width:100%;max-width:646px;height:230px;border:0}.dod-official-media p{font-size:.8rem;margin:.4rem 0 0}
@media(max-width:600px){.clan-legacy{grid-template-columns:minmax(0,1fr)}.videogame-page .clan-logo{max-width:260px;margin:auto}.dod-official-media iframe{height:300px}}

.clan-archive-intro{padding:1.1rem}.clan-archive-intro h1{font-size:clamp(1.8rem,3vw,2.7rem)}.archive-banner{display:block;width:100%;max-width:800px;height:auto;margin:1rem auto;object-fit:contain}.archive-leaders{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.archive-leaders article{padding:1rem}.archive-rank{display:block;width:auto;height:auto;max-width:100%;max-height:104px;object-fit:contain;margin:0 0 1rem}.archive-gsr,.archive-video{padding:1.1rem;margin:1rem 0}.archive-jump{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}.archive-jump a{font-size:.8rem;border:1px solid #74653c;border-radius:6px;padding:.55rem .7rem;min-height:44px}.archive-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.archive-item{margin:0;padding:.8rem;border:1px solid #344735;border-radius:8px;background:#0b140f;min-width:0}.archive-item>a{display:flex;align-items:center;justify-content:center;min-height:100px}.archive-item img{display:block;width:auto;height:auto;max-width:100%;max-height:520px;object-fit:contain;aspect-ratio:auto;border-radius:0}.archive-item figcaption{font-size:.8rem;color:#c7d2c6;margin-top:.7rem;line-height:1.5}.archive-small-art{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.archive-small-art .archive-item img{max-height:110px}.archive-video-frame{aspect-ratio:16/9;max-width:760px}.archive-video-frame iframe{display:block;width:100%;height:100%;border:0}@media(max-width:600px){.archive-leaders,.archive-gallery:not(.archive-small-art){grid-template-columns:minmax(0,1fr)}.archive-small-art{grid-template-columns:repeat(2,minmax(0,1fr))}.archive-item{padding:.65rem}}

.martial-intro{padding:1.15rem}.martial-intro h1{font-size:clamp(1.8rem,3vw,2.7rem);margin:.5rem 0 1rem}.martial-arts-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}.martial-art{padding:1rem;min-width:0}.martial-art>a{display:block;max-width:220px;margin:0 auto 1rem}.martial-art img{display:block;width:100%;height:auto;object-fit:contain;border-radius:0;aspect-ratio:auto}.martial-art h2{font-size:1.35rem;margin:.5rem 0}.martial-art p{font-size:.93rem;margin-bottom:0}@media(max-width:700px){.martial-arts-grid{grid-template-columns:minmax(0,1fr)}.martial-art>a{max-width:190px}}

.clan-showcase{border:1px solid #778e51;background:linear-gradient(145deg,#18271a,#080e0a);padding:1.2rem;box-shadow:inset 0 3px 0 #a68a4f}.clan-showcase h2{font-size:clamp(1.5rem,2.5vw,2rem);margin:.5rem 0 1rem}.clan-showcase-highlights{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.clan-showcase-highlights figure{margin:0;padding:.65rem;background:#060b08;border:1px solid #344a32;border-radius:8px;min-width:0}.clan-showcase-highlights a{display:flex;align-items:center;justify-content:center;height:220px}.videogame-page .clan-highlight-image{display:block!important;width:auto!important;height:auto!important;max-width:100%;max-height:220px;object-fit:contain!important;aspect-ratio:auto!important;border-radius:0}.clan-showcase-highlights figcaption{font-size:.78rem;line-height:1.4;margin-top:.6rem;color:#d2d9ca}.clan-showcase .dod-official-media{border-top:1px solid #344a32;padding-top:1rem}@media(max-width:700px){.clan-showcase-highlights{grid-template-columns:minmax(0,1fr)}.clan-showcase-highlights a{height:auto;min-height:90px}.clan-showcase-highlights .clan-highlight-image{max-height:280px}}

.community-showcase{overflow:hidden;border:1px solid #647c45;border-radius:12px;background:radial-gradient(ellipse at 15% 25%,#304b2650,transparent 55%),linear-gradient(140deg,#101e14,#050a07);padding:1.15rem;margin-bottom:1.3rem;box-shadow:inset 0 3px 0 #a38a4a}.community-topline{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem;font-size:.65rem;letter-spacing:.13em;color:#c3cba6;padding-bottom:.8rem;border-bottom:1px solid #51633c}.community-hero-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.4rem;align-items:center;padding:1rem 0}.community-emblem{width:100%!important;max-width:340px;margin:auto}.community-hero-copy h1{font:900 clamp(3rem,6vw,5rem)/1 Inter,system-ui,sans-serif;letter-spacing:-.035em;margin:.35rem 0 1rem;color:#e5e8ca}.community-tagline{font-size:clamp(1.05rem,1.5vw,1.3rem);line-height:1.4;color:#c8d6b7}.community-hero-copy>p:last-of-type{font-size:.93rem;color:#c1cbbf}.community-hero-copy>a{font-size:.85rem;color:#dfc57e}.community-enlistment{display:grid;grid-template-columns:minmax(0,1fr) minmax(170px,.55fr);gap:1rem;align-items:center;padding:1rem;background:#1c2d1d;border:1px solid #768452;border-radius:8px}.community-enlistment h2{font-size:clamp(1.25rem,2vw,1.7rem);margin:.3rem 0 .65rem}.community-enlistment p:last-child{font-size:.9rem;margin:0;max-width:50ch}.enlistment-status{display:flex;flex-direction:column;gap:.4rem;text-align:center;padding:.9rem;border-left:1px solid #768452;color:#dfd7ab}.enlistment-label{font-size:.67rem;letter-spacing:.18em}.enlistment-status strong{font-size:1.35rem;color:#e1cf8c}.enlistment-status>span:last-child{font-size:.74rem;line-height:1.4}.community-legacy-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.6rem;padding:1rem 0 .7rem}.community-legacy-heading h2{font-size:1.15rem;margin:0}.community-legacy-heading a{font-size:.8rem}.community-showcase .clan-showcase-highlights a{height:180px}.community-showcase .clan-highlight-image{max-height:180px!important}@media(max-width:700px){.community-showcase{padding:.85rem}.community-hero-layout{grid-template-columns:minmax(0,1fr);gap:.8rem}.community-emblem{max-width:250px}.community-hero-copy{text-align:center}.community-hero-copy h1{font-size:3.5rem}.community-enlistment{grid-template-columns:minmax(0,1fr)}.enlistment-status{border-left:0;border-top:1px solid #768452}.community-showcase .clan-showcase-highlights{grid-template-columns:repeat(2,minmax(0,1fr))}.community-showcase .clan-showcase-highlights figure:first-child{grid-column:1/-1}.community-showcase .clan-showcase-highlights a{height:150px}.community-showcase .clan-highlight-image{max-height:150px!important}}

.rank-table-wrap{max-width:100%;border:1px solid #52603c;border-radius:8px;overflow:hidden}.rank-roster{width:100%;border-collapse:collapse;table-layout:fixed;font-size:.88rem}.rank-roster caption{text-align:left;padding:.8rem;background:#1a291b;color:#e1cf8c}.rank-roster th,.rank-roster td{padding:.75rem;text-align:left;vertical-align:middle;border-bottom:1px solid #344735;overflow-wrap:anywhere}.rank-roster thead{background:#142016}.rank-roster th:first-child{width:22%}.rank-roster th:nth-child(2){width:28%}.rank-roster td img{display:block;max-width:100%;width:auto;height:auto;max-height:85px;object-fit:contain}.rank-roster tbody tr:nth-child(even){background:#14201666}.roster-members{list-style:none;padding:0;margin:0;display:grid;gap:.8rem}.roster-members small{display:block;color:#b8c5b3;margin-top:.3rem}.roster-handle{font-family:monospace;color:#dfcb89}.roster-vacant{color:#9aa694;font-size:.8rem}@media(max-width:600px){.rank-roster{font-size:.77rem}.rank-roster th,.rank-roster td{padding:.55rem .4rem}.rank-roster th:first-child{width:19%}.rank-roster th:nth-child(2){width:27%}.rank-roster td img{max-height:65px}}

/* Compact typography and a three-part community showcase. */
body{font-size:14px}
.page-content p,.page-content li,.section-lead,.hero-lead{font-size:.9rem;line-height:1.6}
.page-content h1,.unique-page h1,.section-hero h1,.martial-intro h1,.clan-archive-intro h1{font-size:clamp(1.5rem,2.5vw,2.1rem)}
.page-content h2,.section-heading h2,.civilization-section h2,.video-crossover h2,.bb-news h2,.garage-heading h2,.community-enlistment h2{font-size:clamp(1.15rem,1.8vw,1.5rem)}
.page-content h3,.info-card h3,.martial-art h2{font-size:1.05rem}
.home-page .home-introduction h1{font-size:clamp(1.4rem,2vw,1.8rem)}
.home-page .home-introduction .hero-lead{font-size:.9rem}
.brand-name{font-size:.9rem}.brand-tagline{font-size:.7rem}.site-nav>a,.nav-disclosure>summary{font-size:.72rem}
.community-hero-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr) minmax(0,1fr);gap:1rem;align-items:center}
.community-hero-copy h1{font-family:monospace;font-size:clamp(1.45rem,2.6vw,2.2rem);letter-spacing:-.06em;white-space:nowrap;line-height:1.2}
.community-hero-copy .community-tagline{font-size:1rem;line-height:1.5}.community-hero-copy>p:last-of-type{font-size:.85rem}
.community-anniversary{margin:0;min-width:0}.community-anniversary a{display:block}.videogame-page .community-anniversary-image{width:100%!important;height:auto!important;max-width:100%;max-height:none!important;object-fit:contain!important}.community-anniversary figcaption{font-size:.72rem;text-align:center;margin-top:.4rem;color:#bdcbb4}
.community-showcase .clan-showcase-highlights{grid-template-columns:repeat(2,minmax(0,1fr))}.community-showcase .clan-showcase-highlights figure:first-child{grid-column:auto}
.community-enlistment h2{font-family:monospace;letter-spacing:0;white-space:nowrap;font-size:clamp(1.15rem,2vw,1.6rem)}.enlistment-status strong{font-size:1.15rem}
@media(max-width:1100px){.site-scroll-menu .parchment-navigation a,.site-scroll-menu .scroll-subgroup>summary{font-size:.76rem}}
@media(max-width:700px){body{font-size:14px}.community-hero-layout{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.community-hero-copy{grid-column:1/-1;grid-row:2}.community-emblem{grid-column:1;grid-row:1}.community-anniversary{grid-column:2;grid-row:1}.community-hero-copy h1{font-size:1.9rem}.page-content h1{font-size:1.65rem}.page-content h2{font-size:1.3rem}.page-content p,.page-content li{font-size:.88rem}.community-anniversary figcaption{font-size:.65rem}.community-showcase .clan-showcase-highlights figcaption{font-size:.7rem}}

.roster-grade{display:block;font-size:.72rem;font-weight:400;color:#aabc9e;margin-top:.25rem}.page-content .roster-source{font-size:.75rem;margin-top:.65rem}

.member-profile{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(0,1.3fr);gap:1.3rem;padding:1.3rem;align-items:center}.member-avatar-frame{margin:0;padding:1.5rem .8rem;background:radial-gradient(ellipse,#2a4228,#080f0a);border:1px solid #61794b;border-radius:10px;min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.2rem}.member-avatar{display:block;width:auto;height:auto;max-width:100%;max-height:280px;object-fit:contain}.member-avatar[src$=".svg"]{width:240px}.member-avatar-frame figcaption{font-size:.7rem;color:#bfceb8}.member-profile-copy h1{font-family:monospace;font-size:clamp(1.2rem,2vw,1.65rem);overflow-wrap:anywhere;line-height:1.4}.member-profile-rank{display:flex;align-items:center;gap:1rem;margin:1rem 0}.member-profile-rank img{width:auto;height:auto;max-width:110px;max-height:80px;object-fit:contain}.member-profile-rank p{color:#dfc988}.roster-handle{display:inline-block;text-decoration:underline;text-underline-offset:3px}@media(max-width:600px){.member-profile{grid-template-columns:minmax(0,1fr);padding:1rem}.member-avatar-frame{min-height:220px}.member-avatar[src$=".svg"]{width:200px}}
.favorite-collection{padding:1.2rem;margin-block:1.5rem}.collection-photo{margin:1rem 0}.collection-photo img{display:block;width:100%;height:auto;max-width:100%;border-radius:8px}.collection-photo figcaption{font-size:.75rem;margin-top:.5rem}.reference-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.reference-item{padding:1rem;min-width:0}.reference-item h3{font-size:1rem;margin:0 0 .4rem;overflow-wrap:anywhere}.reference-domain{font-size:.7rem;color:#bbcbad}.reference-item p{margin-bottom:0}@media(max-width:650px){.reference-list{grid-template-columns:minmax(0,1fr)}}

/* Keep the final content clear of mobile browser controls and device safe areas. */
.mobile-bottom-space{display:none}
@media(max-width:1100px){.mobile-bottom-space{display:block;height:calc(clamp(240px,30vh,360px) + env(safe-area-inset-bottom,0px));height:calc(clamp(240px,30svh,360px) + env(safe-area-inset-bottom,0px));width:100%;flex-shrink:0}}

.library-intro{padding:1.2rem}.library-filters{display:flex;align-items:end;gap:.8rem;flex-wrap:wrap;margin-top:1rem}.library-filters>div{flex:1;min-width:180px}.library-filters label{display:block;margin-bottom:.4rem;font-size:.8rem}.library-filters input,.library-filters select{width:100%;box-sizing:border-box;background:#0c160e;color:#edf2e9;border:1px solid #64794f;border-radius:6px;padding:.65rem;font:inherit}.library-filters button{padding:.65rem 1rem;background:#d1b46d;color:#10180d;border:0;border-radius:6px;font:inherit;cursor:pointer}.library-filters>a{padding:.65rem 0}.library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.library-game{padding:.9rem;min-width:0}.library-game h2{font-size:1rem;line-height:1.45;overflow-wrap:anywhere;margin:.35rem 0}.library-game .eyebrow{font-size:.65rem;letter-spacing:.08em}.library-game-details,.library-source-note{font-size:.75rem!important;color:#bac9b0}@media(max-width:900px){.library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:550px){.library-grid{grid-template-columns:minmax(0,1fr)}.library-filters>div{min-width:100%}}

.library-grid[data-columns='1']{grid-template-columns:minmax(0,1fr)}.library-grid[data-columns='2']{grid-template-columns:repeat(2,minmax(0,1fr))}.library-grid[data-columns='3']{grid-template-columns:repeat(3,minmax(0,1fr))}.library-game a{overflow-wrap:anywhere}@media(max-width:550px){.library-grid[data-columns='3']{gap:.35rem}.library-grid[data-columns='3'] .library-game{padding:.5rem}.library-grid[data-columns='3'] .library-game h2{font-size:.85rem}}

/* Compact directories for interests that are still being filled in. */
.interest-directory{margin:1.5rem 0;border-top:1px solid #536344}.directory-heading{padding:1rem 0}.directory-heading h2{margin:.25rem 0}.interest-entry{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr) auto;gap:1.1rem;align-items:center;padding:1.1rem .25rem;border-top:1px solid #34452e;scroll-margin-top:1rem}.interest-label{display:flex;align-items:baseline;gap:.8rem;min-width:0}.interest-label>span{font-size:.7rem;color:#d1b46d;font-family:monospace}.interest-entry h2,.interest-entry h3{font-size:1rem!important;margin:0;line-height:1.4}.interest-entry p{margin:0!important;font-size:.85rem!important;color:#c8d3bf}.interest-entry>a{font-size:.8rem;white-space:nowrap}.directory-status{display:block;font-size:.7rem;color:#a0b293;margin-top:.3rem}.directory-links{display:flex;gap:1rem;flex-wrap:wrap;margin-top:.4rem;font-size:.75rem}.community-destination{display:flex;align-items:center;gap:1rem;border-top:1px solid #586d40;margin-top:1rem;padding-top:.9rem}.community-destination strong{font-family:monospace;color:#d6bf7c;white-space:nowrap}.community-destination p{margin:0!important;font-size:.8rem!important;flex:1}.community-destination>a{white-space:nowrap;font-size:.85rem}.community-home-notice{border-left:3px solid #b9a063;padding:.5rem .8rem}@media(max-width:700px){.interest-entry{grid-template-columns:minmax(0,1fr) auto;gap:.5rem .8rem}.interest-entry>div:nth-child(2){grid-column:1/-1;grid-row:2}.interest-label{gap:.5rem}.interest-entry>a{font-size:.75rem}.community-destination{flex-wrap:wrap}.community-destination p{flex-basis:100%;order:3}}

.consulting-intro{padding:1rem 0}.service-availability{display:grid;grid-template-columns:1fr 1fr;gap:1rem;border-top:1px solid #536344;margin-top:1rem;padding-top:1rem}.service-availability h3{font-size:1rem}.service-availability p{font-size:.85rem}.service-cta{display:inline-block;margin-top:.8rem;color:#e1c67d}.service-inquiry{padding:1.2rem;margin-top:1.5rem}.service-form fieldset{border:0;padding:0;margin:0;min-width:0}.service-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.service-form label{display:block;margin:.7rem 0 .35rem;font-size:.85rem}.service-form input:not([type=hidden]),.service-form select,.service-form textarea{width:100%;box-sizing:border-box;background:#0c160e;color:#edf2e9;border:1px solid #64794f;border-radius:6px;padding:.65rem;font:inherit}.service-form textarea{resize:vertical;min-height:150px}.service-form button{margin-top:1rem;padding:.75rem 1.1rem;background:#d1b46d;color:#10180d;border:0;border-radius:6px;font:inherit;cursor:pointer}.service-form fieldset:disabled{opacity:.65}.service-form fieldset:disabled button{cursor:not-allowed}.inquiry-trap{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}.inquiry-privacy{font-size:.75rem!important;color:#bac9b0}.form-notice{padding:.8rem;border:1px solid #7c915f;border-radius:6px}.form-error{border-color:#c68c75}.service-form :focus-visible{outline:2px solid #e1c67d;outline-offset:3px}@media(max-width:600px){.service-availability,.service-form-grid{grid-template-columns:minmax(0,1fr)}.service-inquiry{padding:1rem}}
.service-form .visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.about-secret-door{appearance:none;display:inline;background:transparent!important;border:0!important;border-radius:0;padding:0!important;margin:0;min-width:0;min-height:0;color:inherit!important;font:inherit;line-height:inherit;box-shadow:none!important;cursor:text;transition:none}.about-secret-door:focus-visible{outline:1px dotted currentColor;outline-offset:3px}
.about-page .about-secret-door{display:block;margin:.8rem 0 0 auto;width:32px;height:32px;cursor:pointer;opacity:.65}.about-secret-door img{display:block;width:32px;height:32px}
.steam-game{overflow:hidden;min-width:0}.steam-art{display:block;margin-bottom:.8rem}.steam-art img{display:block;width:100%;max-width:460px;height:auto;aspect-ratio:460/215;object-fit:contain;border-radius:8px}.steam-description{font-size:.9rem;line-height:1.55}.steam-personal-stats{font-size:.85rem}.steam-achievement-progress{width:100%;height:.5rem;accent-color:var(--gold-soft);margin-bottom:.8rem}.steam-details{font-size:.85rem;overflow-wrap:anywhere}.steam-details summary{cursor:pointer;color:var(--gold-soft);padding:.45rem 0}.steam-details p{margin:.55rem 0}.steam-summary{font-weight:600}@media(max-width:600px){.library-grid[data-columns="3"] .steam-game h2{font-size:1rem}.library-grid[data-columns="3"] .steam-personal-stats,.library-grid[data-columns="3"] .steam-details{font-size:.75rem}}
.site-header{backdrop-filter:none;-webkit-backdrop-filter:none}.site-nav .nav-submenu a,.site-nav .nav-submenu .nav-child{font-size:inherit}
.nav-submenu{-webkit-text-size-adjust:none;text-size-adjust:none}
.site-nav{--upper-menu-font:.72rem}.site-nav>a,.site-nav .nav-disclosure>summary,.site-nav .nav-submenu a,.site-nav .nav-submenu .nav-child{font-size:var(--upper-menu-font)!important}
.member-avatar-frame,.member-avatar{background:transparent!important}.avatar-sharing{margin-top:.7rem;font-size:.75rem;overflow-wrap:anywhere}.avatar-sharing label{display:block;margin:.6rem 0 .2rem}.avatar-sharing input{width:100%;box-sizing:border-box;padding:.4rem;font:inherit;background:#101812;color:var(--text);border:1px solid var(--line)}

/* Subject-specific game showcases, rather than empty project panels. */
.game-showcase{border-top:3px solid var(--gold);padding:28px;background:linear-gradient(125deg,#152117,#07110b)}.game-showcase.blood-bowl{border-color:#ad6842;background:repeating-linear-gradient(90deg,transparent 0 90px,#bccb9410 90px 92px),linear-gradient(110deg,#283c1c,#0c180c)}.game-showcase.necromunda{border-color:#c49b45;background:repeating-linear-gradient(135deg,#34302044 0 8px,transparent 8px 16px),#0e1710}.game-showcase.kill-team{border-color:#bd7148;background:linear-gradient(90deg,#32231b,#111914)}.game-showcase.warhammer-40000{border-color:#6e8799;background:linear-gradient(135deg,#192330,#0b1215)}.game-showcase.age-of-sigmar{border-color:#c5ab68;background:linear-gradient(135deg,#2b2919,#11170f)}.game-showcase .section-lead{font-size:1.2rem;max-width:650px}

/* All site links remain unadorned unless an underline is explicitly requested. */
a,a:link,a:visited,a:hover,a:focus,a:active{text-decoration:none!important}a.text-link{border-bottom:0!important}
