@font-face { font-display:swap; font-family:'DynaPuff'; font-style:normal; font-weight:400 700; src:url('/media/dynapuff-latin.woff2') format('woff2'); }
@font-face { font-display:swap; font-family:'Nunito'; font-style:normal; font-weight:400 800; src:url('/media/nunito-latin.woff2') format('woff2'); }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; } a { color:inherit; text-decoration:none; } button,input,select,textarea { font:inherit; } img { height:auto; max-width:100%; } h1,h2,h3,p { margin-top:0; } a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible { outline:3px solid var(--deep-blue); outline-offset:3px; }

.nav { align-items:center; border-bottom:2px solid var(--line); display:flex; justify-content:space-between; margin:auto; z-index:10; }.brand { align-items:center; display:inline-flex; font-family:'Trebuchet MS',Arial,sans-serif; gap:9px; }.social-links,.nav-links { align-items:center; display:flex; }.nav-links { letter-spacing:0; }.nav-links > a:not(.nav-report) { border-bottom:2px solid transparent; }.nav-links > a:not(.nav-report):hover { border-color:var(--ink); }.nav-report { align-items:center; display:flex; gap:6px; }.mobile-cta { display:none; }

.hero { display:grid; margin:auto; }.hero-copy { align-self:center; position:relative; z-index:2; }.eyebrow { align-items:center; display:flex; margin:0 0 19px; }.eyebrow svg { color:var(--deep-blue); } h1,h2,h3 { font-family:'Trebuchet MS',Arial,sans-serif; } h1 { max-width:790px; } h1 em,h2 em { font-family:inherit; font-style:normal; font-weight:700; letter-spacing:inherit; } h1 em { font-size:1em; }.lead { margin-bottom:31px; }.hero-actions { align-items:center; display:flex; flex-wrap:wrap; gap:20px; }.button { align-items:center; cursor:pointer; display:inline-flex; gap:8px; letter-spacing:0; transition:box-shadow .18s,transform .18s; }.primary-cta { background:var(--deep-blue); }.under-link,.profile-link,.text-action { align-items:center; border-bottom:2px solid currentColor; display:inline-flex; gap:6px; padding-bottom:3px; }.under-link:hover,.profile-link:hover,.text-action:hover { color:var(--deep-blue); }.profile-link { color:var(--deep-blue); }

.hero-visual { align-self:center; justify-self:center; position:relative; }.marble-hero { object-fit:contain; position:absolute; z-index:3; }

.section,.page-wrap { margin:auto; }.section-kicker { display:flex; justify-content:space-between; } h2 { margin-bottom:25px; }.section-lead { font-size:16px; line-height:1.62; max-width:500px; }
.pack-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin:52px 0 34px; }.pack-card { overflow:hidden; position:relative; transition:box-shadow .2s,transform .2s; }.cottage { background:var(--green); transform:rotate(-1.15deg); }.shadowfall { background:#34335f; color:#fff; transform:rotate(1.15deg); }.pack-number,.project-count { font-weight:900; letter-spacing:.1em; }.pack-icon { object-fit:cover; position:absolute; }.pack-copy { position:absolute; z-index:2; }.pack-copy p,.project-row p { font-size:10px; font-weight:900; margin-bottom:9px; }.pack-copy h3 { margin-bottom:14px; }.pack-copy small { display:block; font-weight:500; margin-top:4px; }.pack-description { display:block; max-width:390px; }.pack-page-link,.project-details { align-items:center; display:inline-flex; font-weight:700; gap:5px; margin-top:13px; min-height:32px; padding:5px 0; text-decoration:underline; text-underline-offset:3px; }.icon-link { align-items:center; border-radius:50%; color:var(--ink); display:flex; height:44px; justify-content:center; position:absolute; right:18px; top:18px; width:44px; z-index:3; }

.channel-section { border-bottom:2px solid var(--ink); border-top:2px solid var(--ink); padding-left:max(5vw,calc((100% - 1540px)/2 + 5vw)); padding-right:max(5vw,calc((100% - 1540px)/2 + 5vw)); }.channel-heading { display:grid; }.channel-heading h2 { margin-bottom:0; }.channel-intro { padding-bottom:7px; }.channel-intro p { line-height:1.65; margin-bottom:22px; max-width:460px; }.video-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }.video-card { overflow:hidden; }.video-frame { aspect-ratio:16/9; background:#0d1022; border-bottom:2px solid var(--ink); }.video-frame iframe { border:0; display:block; height:100%; width:100%; }.video-details p { color:var(--muted); font-size:10px; font-weight:700; margin-bottom:8px; }.video-details h3 { line-height:1.05; margin-bottom:15px; }.video-details a { align-items:center; display:inline-flex; font-size:11px; font-weight:700; gap:6px; text-decoration:underline; text-underline-offset:3px; }.quick-links { display:grid; gap:26px; grid-template-columns:repeat(2,1fr); padding-bottom:90px; padding-top:90px; }.quick-links a { align-items:center; background:var(--paper); border:2px solid var(--ink); box-shadow:5px 5px 0 var(--ink); display:flex; font-size:16px; font-weight:900; gap:14px; justify-content:flex-start; padding:26px; transition:transform .18s,box-shadow .18s; }.quick-links a:first-child { background:var(--peach); }.quick-links a:hover { box-shadow:9px 9px 0 var(--ink); transform:translate(-3px,-3px); }.quick-links a svg:last-child { margin-left:auto; }
.video-consent-placeholder { align-items:center; color:#fff; display:flex; flex-direction:column; gap:12px; height:100%; justify-content:center; padding:24px; text-align:center; }.video-consent-placeholder > svg { color:var(--butter); }.video-consent-placeholder p { align-items:center; display:flex; font-size:11px; gap:7px; line-height:1.45; margin:0; max-width:300px; }.video-consent-placeholder button { color:var(--ink); cursor:pointer; font-size:11px; font-weight:900; }

.breadcrumbs { align-items:center; display:flex; font-weight:800; gap:7px; }.breadcrumbs span { align-items:center; display:flex; gap:7px; }.breadcrumbs a { align-items:center; display:inline-flex; min-height:32px; }.breadcrumbs a:hover { color:var(--deep-blue); }.page-heading > p:not(.eyebrow) { font-size:17px; line-height:1.55; max-width:520px; }.project-list { display:grid; margin:58px 0 34px; }.project-row { align-items:center; display:grid; }.project-row.shadowfall { color:#fff; }.project-row h2 { margin:0 0 10px; }.project-row > div > span { max-width:630px; }.project-row .icon-link { position:static; }.modrinth-button { margin-right:25px; }.text-action { margin-top:26px; min-height:32px; padding-top:5px; }.pack-page-hero { align-items:center; display:grid; gap:38px; overflow:hidden; padding:clamp(27px,5vw,72px); position:relative; }.pack-page-hero::after { content:''; opacity:.32; pointer-events:none; position:absolute; }.pack-page-hero.shadowfall::after { border-color:#fff; }.pack-page-copy,.pack-page-icon { position:relative; z-index:2; }.pack-page-copy { max-width:650px; }.pack-page-copy h1 { margin-bottom:20px; }.pack-page-copy > p:not(.eyebrow):not(.pack-status) { font-size:17px; line-height:1.6; max-width:550px; }.pack-status { align-items:center; display:flex; font-size:12px; font-weight:700; gap:7px; margin-bottom:18px; }.pack-page-icon { width:100%; }.creation-info { border-bottom:2px solid var(--ink); display:grid; grid-template-columns:repeat(3,1fr); margin:72px 0; }.creation-info div { border-right:2px solid var(--ink); padding:19px 24px 22px; }.creation-info div:last-child { border-right:0; }.creation-info span { display:block; font-size:10px; font-weight:700; margin-bottom:8px; }.creation-info strong { font-family:'Trebuchet MS',Arial,sans-serif; }.creation-next { max-width:720px; }.creation-next h2 { margin-bottom:30px; }.next-pack { align-items:center; border-bottom:2px solid var(--ink); display:flex; gap:18px; }.next-pack:hover { color:var(--deep-blue); }.next-pack img { height:64px; width:64px; }.next-pack span { display:grid; gap:5px; }.next-pack small { font-size:10px; }.next-pack b { font-family:'Trebuchet MS',Arial,sans-serif; font-size:24px; }.next-pack > svg { margin-left:auto; }.full-field { grid-column:1/-1; }
.policy-page { max-width:1000px; }.policy-heading { margin-bottom:62px; }.policy-copy { max-width:760px; }.policy-copy h2 { letter-spacing:-.05em; margin:37px 0 10px; }.policy-copy p { font-size:16px; line-height:1.62; }.not-found { align-items:center; display:flex; flex-direction:column; padding:12vh 6vw; text-align:center; }.not-found h1 { font-size:clamp(53px,8vw,110px); }.not-found > p:not(.eyebrow) { font-size:16px; line-height:1.5; max-width:360px; }.not-found-icon { align-items:center; color:var(--deep-blue); display:flex; height:104px; justify-content:center; margin-bottom:30px; width:104px; }
footer { align-items:center; border-top:2px solid var(--ink); display:flex; font-size:11px; font-weight:800; justify-content:space-between; } footer .brand { font-size:16px; } footer .brand img { border-color:#fff; height:29px; width:29px; } footer p { margin:0; }.footer-links { align-items:center; display:flex; }.footer-links a,.footer-cookie-button { align-items:center; background:transparent; border:0; border-bottom:1px solid #c8d0e7; cursor:pointer; display:inline-flex; font-size:inherit; font-weight:inherit; min-height:32px; padding:0 0 2px; }
.cookie-prompt { align-items:start; display:grid; gap:18px; grid-template-columns:auto minmax(0,1fr); max-width:650px; padding:20px; position:fixed; z-index:100; }.cookie-prompt-icon { align-items:center; display:flex; height:48px; justify-content:center; width:48px; }.cookie-kicker { align-items:center; color:var(--deep-blue); display:flex; font-size:10px; font-weight:900; gap:6px; margin-bottom:8px; text-transform:uppercase; }.cookie-prompt h2 { font-size:31px; letter-spacing:-.05em; margin-bottom:8px; }.cookie-prompt-copy > p:not(.cookie-kicker) { font-size:12px; line-height:1.5; margin-bottom:9px; }.cookie-prompt-copy > a { border-bottom:1px solid currentColor; color:var(--deep-blue); font-size:11px; font-weight:800; }.privacy-choice-buttons { display:flex; gap:12px; grid-column:1/-1; }.privacy-choice-button { color:#fff; cursor:pointer; flex:1; font-size:11px; font-weight:900; min-height:44px; padding:11px 14px; }
@media (max-width:720px) { .has-mobile-cta { padding-bottom:67px; }.nav-links > a:not(.nav-report) { display:none; }.nav-report { box-shadow:2px 2px 0 var(--ink); font-size:10px; padding:9px 10px; }.mobile-cta { align-items:center; border-top:2px solid var(--ink); bottom:0; color:#fff; display:flex; font-weight:900; gap:9px; justify-content:center; left:0; padding:16px; position:fixed; right:0; z-index:50; }.hero { display:block; }.hero-copy h1 { font-size:clamp(56px,16vw,77px); }.hero-visual { aspect-ratio:1; margin:64px auto 0; }.section,.page-wrap { padding:76px 6vw; }.section-kicker { gap:7px; }.pack-grid,.quick-links { grid-template-columns:1fr; }.pack-icon { right:8%; }.quick-links { gap:22px; padding-bottom:67px; padding-top:67px; }.quick-links a { padding:21px; }.breadcrumbs { margin-bottom:31px; }.page-heading h1 { font-size:clamp(53px,15vw,76px); }.project-list { margin-top:40px; }.project-row h2 { font-size:33px; }.project-row .icon-link { grid-row:1; }.project-row > div > span { font-size:13px; }.modrinth-button { margin-bottom:10px; }.policy-heading { margin-bottom:42px; }.policy-copy h2 { font-size:25px; }.not-found { min-height:58vh; }.not-found h1 { font-size:clamp(52px,15vw,76px); } footer { padding:24px 6vw; }.footer-links { flex-wrap:wrap; }.cookie-prompt { gap:13px; grid-template-columns:40px minmax(0,1fr); padding:16px; }.cookie-prompt-icon { height:40px; width:40px; }.cookie-prompt h2 { font-size:26px; }.privacy-choice-buttons { flex-direction:column; gap:9px; } }
@media (max-width:720px) { .pack-page { padding-top:48px; }.pack-page-hero { padding:31px 24px 35px; }.pack-page-icon { justify-self:center; }.creation-info { margin:48px 0; }.creation-info div:last-child { border-bottom:0; }.next-pack b { font-size:21px; } }

.quick-links.single { grid-template-columns:1fr; max-width:900px; }
@media (max-width:720px) { .channel-section { padding:76px 6vw; }.channel-heading { align-items:start; margin-bottom:35px; }.channel-heading h2 { font-size:clamp(48px,14vw,70px); }.video-card { box-shadow:5px 5px 0 var(--ink); } }
@media (max-width:720px) {.full-field { grid-column:auto; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; }.button,.pack-card,.quick-links a { transition:none; } }.account-error,.control-error { color:#a41e2b!important; }

.brand img { border:0; border-radius:0; object-fit:contain; }
.mobile-menu { display:none; position:relative; }
.pagination { align-items:center; border-top:1px solid #c5cad7; display:grid; gap:16px; grid-template-columns:1fr auto 1fr; padding:17px 22px; }
.pagination > a { align-items:center; color:var(--deep-blue); display:inline-flex; font-size:10px; font-weight:900; gap:5px; min-height:34px; text-decoration:underline; text-underline-offset:3px; }
.pagination > a:last-child { justify-self:end; }
.pagination > span { color:var(--muted); font-size:9px; font-weight:900; text-align:center; text-transform:uppercase; }
.cookie-prompt h2:focus { outline:0; }

@media (max-width:720px) {
  .nav-links { display:none; }
  .mobile-menu { display:block; }
  .mobile-menu > button { align-items:center; cursor:pointer; display:flex; font-size:10px; font-weight:900; gap:6px; min-height:38px; padding:8px 10px; }
  .mobile-menu > nav { min-width:210px; padding:7px; position:absolute; right:0; top:calc(100% + 12px); }
  .mobile-menu > nav[hidden] { display:none; }
  .mobile-menu > nav a { align-items:center; border-bottom:1px solid #c5cad7; display:flex; font-size:12px; font-weight:800; gap:10px; min-height:48px; padding:10px 12px; }
  .mobile-menu > nav a:last-child { border-bottom:0; }
  .pagination { padding:14px; }
}

/* RobinEclipse sky redesign */
:root { --ink:#273154; --paper:#f8fcff; --blue:#78c6f5; --deep-blue:#4166c9; --butter:#fff2ad; --peach:#ffaaa0; --green:#d8f2dc; --muted:#64708f; --line:#91b9db; --lavender:#eeeaff; --cloud:#ffffff; }
html { background:#dff3ff; }
body { background-color:#f7fcff; color:var(--ink); font-family:'Nunito',Arial,sans-serif; }
h1,h2,h3,.brand,.account-gate aside strong,.creation-info strong,.next-pack b,.tracker-stats strong,.admin-stats strong,.comment-form > label:first-child { font-family:'DynaPuff','Arial Rounded MT Bold',sans-serif; }
h1,h2,h3 { letter-spacing:-.035em; }
.nav { border:1px solid rgba(110,164,207,.35); border-radius:0 0 24px 24px; box-shadow:0 10px 35px rgba(76,120,165,.1); max-width:1440px; padding:13px clamp(20px,4.5vw,68px); position:sticky; top:0; }
.brand { color:#2c4d93; font-size:21px; font-weight:600; letter-spacing:-.04em; }
.brand img { height:42px; width:42px; }
.social-links { gap:7px; margin-left:auto; margin-right:clamp(13px,2.2vw,28px); }
.social-links a { align-items:center; background:rgba(119,196,244,.14); border:1px solid rgba(94,139,186,.18); border-radius:50%; color:#3d5bb8; display:flex; height:36px; justify-content:center; transition:background .18s,transform .18s; width:36px; }
.social-links a:hover { background:#e9e5ff; transform:translateY(-2px); }
.nav-links { font-size:14px; font-weight:800; gap:clamp(16px,2.5vw,32px); }
.nav-links > a:not(.nav-report) { border:0; border-radius:999px; padding:9px 13px; }
.nav-links > a:not(.nav-report):hover { background:rgba(119,196,244,.18); }
.nav-report { background:var(--lavender); border:1px solid #c8c1f6; border-radius:999px; box-shadow:none; padding:10px 15px; }
.hero { gap:clamp(28px,5vw,80px); grid-template-columns:minmax(0,1.02fr) minmax(390px,.98fr); max-width:1440px; min-height:710px; padding:clamp(60px,7vw,100px) clamp(20px,4.5vw,68px) 115px; position:relative; }
.hero-copy { max-width:720px; }
.eyebrow { color:#49609a; font-size:13px; font-weight:800; gap:9px; letter-spacing:.01em; }
h1 { font-size:clamp(50px,6.3vw,93px); font-weight:650; letter-spacing:-.055em; line-height:.98; margin-bottom:28px; }
h1 em,h2 em { color:#4f72d4; }
.lead { color:#465477; font-size:18px; line-height:1.65; max-width:570px; }
.button { background:#4f72d4; border:0; border-radius:999px; box-shadow:0 10px 24px rgba(62,92,178,.24); color:#fff; font-size:14px; font-weight:800; padding:15px 21px; }
.button:hover { box-shadow:0 14px 28px rgba(62,92,178,.3); transform:translateY(-2px); }
.under-link,.profile-link,.text-action { border:0; color:#3d5bb8; font-size:13px; font-weight:800; padding:10px 2px; text-decoration:underline; text-decoration-color:rgba(61,91,184,.35); text-underline-offset:5px; }
.hero-visual { background:radial-gradient(circle at 56% 40%,rgba(255,255,255,.92) 0 25%,rgba(255,255,255,.58) 26% 47%,transparent 48%),linear-gradient(155deg,#90d4fb,#6db8ee 62%,#a8ddfa); border:1px solid rgba(74,112,180,.2); border-radius:46% 54% 48% 52% / 45% 43% 57% 55%; box-shadow:0 16px 36px rgba(56,107,164,.17),inset 0 0 0 10px rgba(255,255,255,.2); height:min(43vw,610px); overflow:hidden; transform:rotate(1.5deg); width:min(43vw,610px); }
.marble-hero { bottom:-42%; height:auto; max-width:none; right:-28%; transform:scale(1.05); width:150%; }
.hero-moon { color:#fff; position:absolute; right:10%; top:10%; z-index:4; }
@media (max-width:900px) { .hero { grid-template-columns:minmax(0,1fr) minmax(330px,.85fr); }.hero-visual { height:min(46vw,520px); width:min(46vw,520px); } }
@media (max-width:720px) {.nav { border-radius:0 0 18px 18px; padding:11px 5vw; }.brand { font-size:18px; }.brand img { height:38px; width:38px; }.hero { grid-template-columns:1fr; min-height:0; padding:54px 6vw 90px; }.hero-copy { text-align:left; }.hero-copy .eyebrow { justify-content:flex-start; }.hero h1 { font-size:clamp(43px,13vw,65px); line-height:1.02; }.lead { font-size:16px; }.hero-actions { align-items:flex-start; flex-direction:column; gap:8px; }.hero-visual { height:88vw; max-height:520px; max-width:520px; order:-1; width:88vw; }.marble-hero { bottom:-39%; right:-30%; width:154%; } }

/* The shared visual language comes directly from RobinEclipse's banner artwork. */
:root { --soft-shadow:0 10px 28px rgba(74,106,157,.13); }
main { overflow:clip; }
.nav { backdrop-filter:none; background:rgba(247,252,255,.98); }
.marble-hero { filter:none; }
.hero-moon { filter:none; }
.hero-visual,.pack-card,.video-card,.quick-links.single > a,.project-row,.pack-page-hero,.tracker-start,.issue-board,.report-form,.write-gate,.comment-form,.policy-copy { contain:paint; }
footer { contain:paint; }
.section,.page-wrap { max-width:1440px; padding:clamp(80px,8vw,120px) clamp(20px,4.5vw,68px); position:relative; }
.section:not(.channel-section):not(.quick-links) { background:rgba(255,255,255,.38); border:1px solid rgba(133,184,220,.22); border-radius:48px; margin-bottom:34px; margin-top:34px; }
.section-kicker { align-items:center; gap:24px; }
.section-kicker .eyebrow { margin-bottom:20px; }
h2 { font-size:clamp(42px,5.4vw,76px); font-weight:600; letter-spacing:-.04em; line-height:1.02; }
.section-lead,.page-heading > p:not(.eyebrow),.tracker-heading > div:first-child > p:not(.eyebrow) { color:#53617e; font-size:17px; line-height:1.7; }

/* Modpack cards */
.pack-grid { gap:clamp(20px,2.7vw,38px); margin-top:46px; }
.pack-card { border:1px solid rgba(70,100,145,.14); border-radius:34px; box-shadow:var(--soft-shadow); min-height:430px; padding:25px; transform:none; }
.pack-card:hover { box-shadow:0 12px 30px rgba(63,97,146,.16); transform:translateY(-3px); }
.pack-card.cottage { background:linear-gradient(145deg,#f6fff4 0,#dff3d7 58%,#cae9d3 100%); }
.pack-card.shadowfall { background:linear-gradient(145deg,#34365d 0,#282946 56%,#1e203a 100%); }
.pack-number,.project-count { color:rgba(62,81,122,.55); font-size:12px; }
.shadowfall .pack-number { color:rgba(255,255,255,.52); }
.pack-icon { border:5px solid rgba(255,255,255,.82); border-radius:28px; box-shadow:0 15px 30px rgba(37,56,91,.19); height:clamp(100px,12vw,150px); right:9%; top:11%; transform:rotate(4deg); width:clamp(100px,12vw,150px); }
.shadowfall .pack-icon { box-shadow:0 15px 30px rgba(5,7,22,.32); }
.pack-copy { bottom:28px; left:28px; max-width:72%; }
.pack-copy p,.project-row p { letter-spacing:.06em; text-transform:none; }
.pack-copy h3 { font-size:clamp(32px,3.8vw,52px); letter-spacing:-.04em; line-height:1.02; }
.pack-copy small { font-family:'Nunito',Arial,sans-serif; font-size:.38em; letter-spacing:0; }
.pack-description { font-size:13px; line-height:1.55; }
.pack-page-link,.project-details { font-size:12px; text-decoration-color:rgba(43,73,147,.4); }
.icon-link { background:rgba(255,255,255,.9); border:0; box-shadow:0 8px 22px rgba(39,54,91,.16); }
.icon-link:hover { background:#fff2ad; }

/* YouTube */
.channel-section { background:linear-gradient(145deg,rgba(239,236,255,.95),rgba(220,239,255,.94)); border:1px solid rgba(132,156,217,.22); border-radius:48px; margin:34px auto; max-width:1440px; padding:clamp(80px,8vw,120px) clamp(20px,4.5vw,68px); }
.channel-heading { align-items:center; gap:clamp(24px,4vw,60px); grid-template-columns:minmax(0,1.05fr) minmax(250px,.75fr) minmax(190px,.42fr); margin-bottom:40px; }
.channel-intro p { color:#53617e; font-size:16px; }
.channel-persona { align-self:end; isolation:isolate; margin-top:0; min-height:360px; overflow:visible; position:relative; }
.channel-persona span { background:rgba(255,255,255,.92); border-radius:999px; bottom:22px; color:#3d5bb8; font-family:'DynaPuff',sans-serif; font-size:12px; font-weight:600; left:18px; padding:8px 12px; position:absolute; z-index:2; }
.channel-persona img { bottom:0; left:50%; max-width:none; position:absolute; transform:translateX(-50%); width:min(100%,220px); z-index:1; }
.video-grid { gap:clamp(20px,2.6vw,34px); }
.video-card { background:rgba(255,255,255,.88); border:1px solid rgba(91,124,175,.17); border-radius:28px; box-shadow:0 8px 22px rgba(64,91,139,.12); }
.video-frame { border:0; }
.video-details { padding:22px 24px 26px; }
.video-details h3 { font-size:clamp(22px,2.2vw,30px); letter-spacing:-.025em; }
.video-consent-placeholder { background:linear-gradient(145deg,#333c6a,#4d64a5); }
.video-consent-placeholder button { background:#fff; border:0; border-radius:999px; box-shadow:0 8px 20px rgba(8,16,49,.24); padding:11px 15px; }
.video-preview { appearance:none; background:#101735; border:0; color:#fff; cursor:pointer; display:block; height:100%; overflow:hidden; padding:0; position:relative; width:100%; }
.video-preview::after { background:linear-gradient(180deg,transparent 52%,rgba(8,15,42,.72)); content:''; inset:0; pointer-events:none; position:absolute; }
.video-preview img { display:block; height:100%; object-fit:cover; transition:transform .22s ease; width:100%; }
.video-play { align-items:center; background:rgba(255,255,255,.94); border-radius:50%; box-shadow:0 10px 28px rgba(8,15,42,.32); color:#4f72d4; display:flex; height:68px; justify-content:center; left:50%; padding-left:4px; position:absolute; top:50%; transform:translate(-50%,-50%); transition:transform .18s ease; width:68px; z-index:2; }
.video-load-label { bottom:17px; font-size:12px; font-weight:900; left:18px; position:absolute; text-shadow:0 2px 8px rgba(0,0,0,.6); z-index:2; }
.video-preview:hover img { transform:scale(1.025); }
.video-preview:hover .video-play { transform:translate(-50%,-50%) scale(1.06); }
.video-preview:focus-visible { box-shadow:inset 0 0 0 4px #fff; outline:4px solid #4f72d4; outline-offset:2px; }

/* Support card */
.quick-links.single { display:block; padding-bottom:90px; padding-top:56px; }
.quick-links.single > a { background:linear-gradient(135deg,#fff0b9 0,#ffe1d9 52%,#e9e5ff 100%); border:1px solid rgba(98,105,159,.16); border-radius:38px; box-shadow:var(--soft-shadow); min-height:210px; overflow:hidden; padding:42px clamp(24px,4vw,52px); position:relative; }
.quick-links.single > a:hover { box-shadow:0 12px 30px rgba(74,96,143,.16); transform:translateY(-3px); }
.quick-links.single > a > span { display:grid; font-family:'DynaPuff',sans-serif; font-size:clamp(24px,3vw,40px); font-weight:600; gap:8px; line-height:1.14; max-width:min(670px,calc(100% - 260px)); position:relative; z-index:2; }
.quick-links.single > a small { color:#596685; font-family:'Nunito',sans-serif; font-size:13px; font-weight:800; }
.quick-links.single > a > .support-character { bottom:-300px; height:auto; max-width:none; position:absolute; right:2%; width:min(25vw,285px); }
.quick-links.single > a > svg:last-of-type { margin-left:auto; position:relative; z-index:2; }

/* Inner page headings and navigation */
.breadcrumbs { color:#5d6e91; font-size:12px; margin-bottom:42px; }
.breadcrumbs a { background:rgba(255,255,255,.58); border-radius:999px; padding:5px 9px; }
.page-heading { max-width:800px; padding:32px 0 20px; position:relative; }
.page-heading h1 { font-size:clamp(48px,6.3vw,86px); line-height:1.02; }
.page-heading .page-mascot { bottom:-24px; height:auto; max-width:none; position:absolute; right:-72%; width:470px; }
.modpacks-mascot { clip-path:inset(0 0 32% 0); transform:translateY(31%); }
.project-list { gap:24px; margin-top:70px; }
.project-row { border:1px solid rgba(70,100,145,.14); border-radius:30px; box-shadow:var(--soft-shadow); gap:26px; grid-template-columns:38px 118px minmax(0,1fr) 48px; padding:28px; transform:none; }
.project-row.cottage { background:linear-gradient(135deg,#f5fff0,#dcefd4); }
.project-row.shadowfall { background:linear-gradient(135deg,#35395f,#232641); }
.project-row > img { border:5px solid rgba(255,255,255,.82); border-radius:26px; box-shadow:0 12px 26px rgba(33,49,81,.2); height:118px; width:118px; }
.project-row h2 { font-size:clamp(31px,3.6vw,48px); letter-spacing:-.035em; }
.project-row > div > span { font-size:14px; line-height:1.6; }
.modrinth-button { margin-top:8px; }

/* Modpack detail pages */
.pack-page { padding-top:64px; }
.pack-page-hero { border:1px solid rgba(68,94,135,.15); border-radius:40px; box-shadow:var(--soft-shadow); grid-template-columns:minmax(0,1fr) 250px; min-height:450px; }
.pack-page-hero::after { border:2px dashed rgba(74,101,147,.2); border-radius:30px; inset:18px; }
.pack-page-hero.cottage { background:linear-gradient(145deg,#f5fff1 0,#dff3d8 100%); }
.pack-page-hero.shadowfall { background:linear-gradient(145deg,#3c3f69 0,#242641 100%); }
.pack-page-copy h1 { font-size:clamp(50px,6.8vw,92px); line-height:1.02; }
.pack-page-icon { border:7px solid rgba(255,255,255,.84); border-radius:34px; box-shadow:0 20px 40px rgba(30,47,80,.24); transform:rotate(3deg); }
.creation-info { background:rgba(255,255,255,.56); border:1px solid rgba(99,137,184,.18); border-radius:24px; overflow:hidden; }
.creation-info div { border-color:rgba(99,137,184,.2); }
.creation-info strong { font-size:19px; }
.next-pack { background:rgba(255,255,255,.52); border:1px solid rgba(104,143,187,.18); border-radius:22px; margin-bottom:12px; padding:14px 18px; }
.next-pack img { border:0; border-radius:17px; }

/* Bug tracker */

/* Forms, report details, and discussion */
.pagination { border-color:#d6e1ec; }

/* Account and admin */

/* Privacy, 404, footer, and consent */
.policy-copy { background:rgba(255,255,255,.82); border:1px solid rgba(91,124,175,.17); border-radius:32px; box-shadow:var(--soft-shadow); padding:clamp(28px,5vw,58px); }
.policy-copy h2 { color:#3f5ba8; font-size:clamp(25px,3vw,38px); line-height:1.15; }
.not-found { min-height:690px; overflow:hidden; padding-bottom:200px; position:relative; }
.not-found-icon { background:rgba(255,255,255,.74); border:0; border-radius:50%; box-shadow:var(--soft-shadow); }
.not-found-mascot { bottom:-48%; height:auto; max-width:none; position:absolute; right:4%; width:min(46vw,590px); }
footer { background:linear-gradient(180deg,#e7f6ff,#d6efff); border:1px solid rgba(98,147,188,.22); border-radius:40px 40px 0 0; color:#3d4b6f; max-width:none; padding:32px clamp(20px,4.5vw,68px); width:100%; }
footer p { color:#5c6b8c; }
.footer-links a,.footer-cookie-button { border-color:rgba(61,75,111,.38); color:#3d4b6f; }
.footer-links { gap:18px; }
.footer-cookie-button { color:inherit; }
.footer-mascot { align-self:flex-end; height:58px; margin:-32px 4px -32px -15px; overflow:hidden; position:relative; width:72px; }
.footer-mascot img { left:-35px; max-width:none; position:absolute; top:-26px; width:145px; }
.cookie-prompt { background:rgba(255,255,255,.96); border:1px solid rgba(91,124,175,.22); border-radius:28px; bottom:18px; box-shadow:0 22px 70px rgba(48,78,130,.25); left:18px; right:18px; }
.cookie-prompt-icon { background:#e8f6ff; border:0; border-radius:50%; }
.privacy-choice-button { border:0; border-radius:999px; }
.privacy-choice-button.decline { background:#edf4ff; border:2px solid #4f72d4; color:#3d5bb8; }.privacy-choice-button.accept { background:#edf4ff; border:2px solid #4f72d4; color:#3d5bb8; }

/* Mobile refinements */
@media (max-width:900px) {
  .page-heading .page-mascot { right:-54%; width:390px; }
  .channel-heading { grid-template-columns:minmax(0,1fr) minmax(200px,.55fr); }
  .channel-heading > div:first-child { grid-column:1/-1; }
  .channel-persona { margin-top:0; min-height:340px; }
  .channel-persona img { bottom:0; width:min(100%,210px); }
  .quick-links.single > a > .support-character { right:2%; width:250px; }
}

@media (max-width:720px) {
  :root { --soft-shadow:0 7px 20px rgba(74,106,157,.11); }
  .section,.page-wrap,.channel-section { padding-left:6vw; padding-right:6vw; }
  .section:not(.channel-section):not(.quick-links),.channel-section { border-radius:30px; margin:18px 3vw; }
  .section-kicker { align-items:flex-start; flex-direction:column; }
  h2 { font-size:clamp(38px,12vw,58px); }
  .pack-grid { grid-template-columns:1fr; }
  .pack-card { border-radius:26px; min-height:450px; }
  .pack-card.cottage,.pack-card.shadowfall { transform:none; }
  .pack-icon { height:112px; top:18px; width:112px; }
  .pack-copy { bottom:25px; left:24px; max-width:82%; }
  .pack-copy h3 { font-size:39px; }
  .channel-heading,.video-grid { grid-template-columns:1fr; }
  .channel-heading > div:first-child { grid-column:auto; }
  .channel-persona { margin-top:0; min-height:350px; }
  .channel-persona img { bottom:0; width:215px; }
  .video-card { border-radius:22px; }
  .quick-links.single { margin:0; }
  .quick-links.single > a { min-height:330px; padding:28px 25px 170px; }
  .quick-links.single > a > span { max-width:100%; }
  .quick-links.single > a > .support-character { bottom:-145px; right:-2%; width:180px; }
  .quick-links.single > a > svg:last-of-type { position:absolute; right:25px; top:35px; }
  .page-heading { padding-bottom:180px; }
  .page-heading .page-mascot { bottom:-92px; left:50%; right:auto; transform:translateX(-50%) translateY(31%); width:330px; }
  .project-row { gap:17px; grid-template-columns:30px 86px minmax(0,1fr); padding:20px; }
  .project-row > img { height:86px; width:86px; }
  .project-row .icon-link { grid-column:3; justify-self:start; }
  .project-row > div { grid-column:1/-1; }
  .pack-page-hero { border-radius:28px; grid-template-columns:1fr; }
  .pack-page-icon { max-width:220px; order:-1; width:58%; }
  .creation-info { grid-template-columns:1fr; }
  .creation-info div { border-bottom:1px solid rgba(99,137,184,.2); border-right:0; }
  .tracker-start,.report-form,.write-gate,.comment-form,.policy-copy { border-radius:24px; }
  .not-found { padding-bottom:300px; }
  .not-found-mascot { bottom:-22%; left:50%; right:auto; transform:translateX(-50%); width:430px; }
  footer { align-items:flex-start; border-radius:30px 30px 0 0; flex-direction:column; gap:18px; }
  .footer-mascot { align-self:flex-start; margin:-31px 0 -14px; }
  .cookie-prompt { border-radius:22px; bottom:10px; left:10px; right:10px; }
  .mobile-menu > button { background:#eef0ff; border:0; border-radius:999px; box-shadow:none; color:#3f559d; text-transform:none; }
  .mobile-menu > nav { background:rgba(255,255,255,.97); border:1px solid rgba(91,124,175,.2); border-radius:18px; box-shadow:0 16px 40px rgba(54,81,126,.19); overflow:hidden; }
  .mobile-menu > nav a { border-color:#dbe7f2; }
  .mobile-cta { background:#4f72d4; border:0; box-shadow:0 -8px 28px rgba(48,75,137,.18); font-size:13px; }
  .social-links { gap:5px; margin-left:auto; margin-right:10px; }
  .social-links a { height:34px; width:34px; }
}

@media (max-width:520px) {
  .nav .brand span { display:none; }
  .social-links { gap:3px; margin-right:6px; }
  .social-links a { height:32px; width:32px; }
}

@media (hover:none),(pointer:coarse) {
  .button,.pack-card,.quick-links.single > a,.video-preview img,.video-play { transition:none; }
  .button:hover,.pack-card:hover,.quick-links.single > a:hover { transform:none; }
  .video-preview:hover img { transform:none; }
  .video-preview:hover .video-play { transform:translate(-50%,-50%); }
  .hero-visual { box-shadow:0 14px 34px rgba(56,107,164,.15),inset 0 0 0 8px rgba(255,255,255,.2); }
}

@media (prefers-reduced-motion:reduce) {
  .hero-visual { transform:none; }
}

/* Privacy, legal, and community safeguards */
.policy-copy a { color:var(--deep-blue); font-weight:800; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px; }
.policy-copy ul { display:grid; gap:10px; margin:12px 0 24px; padding-left:22px; }
.policy-copy li { font-size:15px; line-height:1.62; }
.policy-callout { align-items:flex-start; background:linear-gradient(135deg,#edf8ff,#f1edff); border:1px solid rgba(91,124,175,.22); border-radius:20px; display:flex; gap:13px; margin-top:24px; padding:18px; }
.policy-callout svg { color:var(--deep-blue); flex:none; }
.policy-callout p { margin:0; }
.cookie-prompt { max-height:calc(100vh - 36px); overflow:auto; }
.cookie-options { display:grid; gap:8px; margin:13px 0; }
.cookie-options label { align-items:start; background:#f3f8ff; border:1px solid rgba(91,124,175,.2); border-radius:14px; cursor:pointer; display:grid; gap:10px; grid-template-columns:auto 1fr; padding:11px; }
.cookie-options input { accent-color:var(--deep-blue); height:18px; margin:2px 0 0; width:18px; }
.cookie-options span { display:grid; gap:3px; }
.cookie-options strong { color:var(--ink); font-size:11px; }
.cookie-options small { color:var(--muted); font-size:10px; line-height:1.4; }
footer { flex-wrap:wrap; gap:10px 24px; }
.minecraft-disclaimer { color:#61708c; flex-basis:100%; font-size:8px; font-weight:700; line-height:1.45; text-align:center; }
.footer-links { justify-content:flex-end; }
@media (max-width:720px) {
  .cookie-prompt { max-height:calc(100vh - 20px); }
  .policy-copy ul { padding-left:18px; }
  footer { align-items:flex-start; }
  .footer-links { justify-content:flex-start; }
}

/* A moonlit companion to the sky theme. The saved choice is applied before paint. */
.theme-toggle {
  align-items:center;
  background:rgba(119,196,244,.14);
  border:1px solid rgba(94,139,186,.22);
  border-radius:50%;
  color:#3d5bb8;
  cursor:pointer;
  display:flex;
  flex:none;
  height:38px;
  justify-content:center;
  margin-left:12px;
  padding:0;
  transition:background-color .18s ease,color .18s ease,transform .18s ease;
  width:38px;
}
.theme-toggle:hover { background:#e9e5ff; transform:translateY(-2px); }

html[data-theme='dark'] {
  --ink:#edf5ff;
  --paper:#182239;
  --blue:#77c8f6;
  --deep-blue:#9ebaff;
  --butter:#ead783;
  --peach:#f49a9b;
  --green:#2b4b40;
  --muted:#abb9d2;
  --line:#3d5877;
  --lavender:#2d3155;
  --cloud:#dff3ff;
  --soft-shadow:0 13px 34px rgba(0,0,0,.3);
  background:#0c1222;
  color-scheme:dark;
}
html[data-theme='dark'] body { background-color:#10172a; color:var(--ink); }
html[data-theme='dark'] .nav {
  background:rgba(14,22,40,.98);
  border-color:rgba(121,168,211,.28);
  box-shadow:0 10px 35px rgba(0,0,0,.3);
}
html[data-theme='dark'] .brand { color:#cae5ff; }
html[data-theme='dark'] .social-links a,
html[data-theme='dark'] .theme-toggle {
  background:rgba(118,190,240,.1);
  border-color:rgba(137,194,238,.2);
  color:#a9ccff;
}
html[data-theme='dark'] .social-links a:hover,
html[data-theme='dark'] .theme-toggle:hover,
html[data-theme='dark'] .nav-links > a:not(.nav-report):hover { background:rgba(128,182,230,.18); }
html[data-theme='dark'] .nav-report { background:#2d3155; border-color:#4d568b; }
html[data-theme='dark'] .eyebrow,
html[data-theme='dark'] .lead,
html[data-theme='dark'] .section-lead,
html[data-theme='dark'] .page-heading > p:not(.eyebrow),
html[data-theme='dark'] .tracker-heading > div:first-child > p:not(.eyebrow),
html[data-theme='dark'] .channel-intro p { color:#b4c3dd; }
html[data-theme='dark'] h1 em,
html[data-theme='dark'] h2 em { color:#98b7ff; }
html[data-theme='dark'] .hero-visual {
  background:radial-gradient(circle at 56% 40%,rgba(225,243,255,.9) 0 25%,rgba(174,214,243,.4) 26% 47%,transparent 48%),linear-gradient(155deg,#4d9ed2,#347db5 62%,#7ebfe7);
  border-color:rgba(145,197,236,.28);
  box-shadow:0 18px 42px rgba(0,0,0,.3),inset 0 0 0 10px rgba(211,238,255,.1);
}
html[data-theme='dark'] .section:not(.channel-section):not(.quick-links) {
  background:rgba(23,33,56,.72);
  border-color:rgba(116,164,206,.2);
}
html[data-theme='dark'] .pack-card.cottage,
html[data-theme='dark'] .project-row.cottage,
html[data-theme='dark'] .pack-page-hero.cottage {
  background:linear-gradient(145deg,#29463d 0,#203a35 58%,#1a302e 100%);
  color:#eefbf3;
}
html[data-theme='dark'] .pack-card.shadowfall,
html[data-theme='dark'] .project-row.shadowfall,
html[data-theme='dark'] .pack-page-hero.shadowfall { background:linear-gradient(145deg,#34375f 0,#242743 58%,#191c33 100%); }
html[data-theme='dark'] .pack-card,
html[data-theme='dark'] .project-row,
html[data-theme='dark'] .pack-page-hero { border-color:rgba(137,181,218,.22); }
html[data-theme='dark'] .pack-card.cottage .icon-link,
html[data-theme='dark'] .project-row.cottage .icon-link { color:#16241f; }
html[data-theme='dark'] .icon-link { background:rgba(239,247,255,.9); color:#253257; }
html[data-theme='dark'] .channel-section {
  background:linear-gradient(145deg,rgba(35,35,67,.97),rgba(24,45,69,.97));
  border-color:rgba(132,166,217,.24);
}
html[data-theme='dark'] .channel-persona span { background:rgba(21,29,49,.94); color:#b7ceff; }
html[data-theme='dark'] .video-card {
  background:rgba(22,31,53,.94);
  border-color:rgba(126,166,205,.22);
  box-shadow:0 10px 28px rgba(0,0,0,.24);
}
html[data-theme='dark'] .quick-links.single > a {
  background:linear-gradient(135deg,#463d2a 0,#493038 52%,#292b4c 100%);
  border-color:rgba(158,178,215,.2);
}
html[data-theme='dark'] .quick-links.single > a small { color:#c0cae0; }
html[data-theme='dark'] .breadcrumbs a { background:rgba(31,45,73,.82); }
html[data-theme='dark'] .creation-info,
html[data-theme='dark'] .next-pack {
  background:rgba(23,34,57,.82);
  border-color:rgba(116,164,206,.22);
}
html[data-theme='dark'] .creation-info div { border-color:rgba(116,164,206,.22); }
html[data-theme='dark'] .policy-copy,
html[data-theme='dark'] .not-found-icon {
  background:rgba(22,32,54,.94);
  border-color:rgba(123,167,207,.22);
}
html[data-theme='dark'] .policy-copy h2 { color:#a7c2ff; }
html[data-theme='dark'] .policy-callout {
  background:linear-gradient(135deg,#172e42,#292947);
  border-color:rgba(126,169,207,.24);
}
html[data-theme='dark'] footer {
  background:linear-gradient(180deg,#17283d,#101d31);
  border-color:rgba(110,163,207,.24);
  color:#c2d1e7;
}
html[data-theme='dark'] .footer-links a,
html[data-theme='dark'] .footer-cookie-button { border-color:rgba(166,193,219,.32); color:#c2d1e7; }
html[data-theme='dark'] .minecraft-disclaimer { color:#91a3bd; }
html[data-theme='dark'] .cookie-prompt {
  background:rgba(19,28,48,.98);
  border-color:rgba(127,174,215,.28);
  box-shadow:0 22px 70px rgba(0,0,0,.48);
}
html[data-theme='dark'] .cookie-prompt-icon { background:#203c55; }
html[data-theme='dark'] .cookie-options label { background:#17243b; border-color:rgba(126,171,209,.24); }
html[data-theme='dark'] .privacy-choice-button.decline,
html[data-theme='dark'] .privacy-choice-button.accept { background:#1d2a45; border-color:#89afff; color:#bbd0ff; }
html[data-theme='dark'] input,
html[data-theme='dark'] select,
html[data-theme='dark'] textarea { color-scheme:dark; }
html[data-theme='dark'] ::placeholder { color:#8292ad; opacity:1; }

@media (max-width:720px) {
  .theme-toggle { height:36px; margin-left:6px; width:36px; }
  html[data-theme='dark'] .mobile-menu > button { background:#292f50; color:#b9cdff; }
  html[data-theme='dark'] .mobile-menu > nav {
    background:rgba(17,25,43,.99);
    border-color:rgba(125,169,208,.26);
    box-shadow:0 16px 40px rgba(0,0,0,.42);
  }
  html[data-theme='dark'] .mobile-menu > nav a { border-color:#31435d; }
}

@media (max-width:520px) {
  .theme-toggle { height:32px; margin-left:3px; width:32px; }
}

@media (hover:none),(pointer:coarse) {
  .theme-toggle { transition:none; }
  .theme-toggle:hover { transform:none; }
}

@media (prefers-reduced-motion:reduce) {
  .theme-toggle { transition:none; }
}

/* Personal editorial pass: fewer containers, less symmetry, more of the actual work. */
.hand-note {
  color:#49609a;
  font-family:'DynaPuff','Arial Rounded MT Bold',sans-serif;
  font-size:12px;
  font-weight:600;
  letter-spacing:.01em;
  margin:0 0 14px;
}
.nav {
  border-left:0;
  border-radius:0;
  border-right:0;
  box-shadow:0 4px 18px rgba(76,120,165,.08);
  max-width:none;
  padding:11px clamp(20px,4.5vw,68px);
}
.social-links { gap:16px; margin-right:clamp(16px,2vw,26px); }
.social-links a {
  background:transparent;
  border:0;
  border-radius:0;
  color:#425a94;
  font-size:11px;
  font-weight:800;
  gap:5px;
  height:auto;
  padding:6px 0;
  width:auto;
}
.social-links a:hover { background:transparent; color:#1d3979; transform:none; }
.nav-links { gap:clamp(11px,1.6vw,22px); }
.nav-links > a:not(.nav-report),.nav-report {
  background:transparent;
  border:0;
  border-bottom:2px solid transparent;
  border-radius:0;
  box-shadow:none;
  padding:8px 2px 5px;
}
.nav-links > a:not(.nav-report):hover,.nav-report:hover { background:transparent; border-color:currentColor; }
.theme-toggle { margin-left:16px; }
.button {
  border-radius:7px;
  box-shadow:4px 4px 0 rgba(39,49,84,.2);
  padding:14px 19px;
}
.button:hover { box-shadow:6px 6px 0 rgba(39,49,84,.2); }
.section:not(.channel-section):not(.quick-links) {
  background:transparent;
  border:0;
  border-radius:0;
  margin-bottom:0;
  margin-top:0;
}
.personal-hero {
  gap:clamp(35px,6vw,94px);
  min-height:650px;
  padding-bottom:95px;
}
.personal-hero .hero-copy { max-width:760px; }
.personal-hero h1 {
  font-size:clamp(49px,5.7vw,82px);
  letter-spacing:-.048em;
  line-height:1.02;
  max-width:760px;
}
.personal-hero .lead { font-size:18px; max-width:680px; }
.personal-hero-visual {
  background:#75bdec;
  border:2px solid rgba(40,73,128,.22);
  border-radius:18px 72px 18px 72px;
  box-shadow:14px 16px 0 rgba(73,105,164,.14);
  transform:rotate(1deg);
}
.personal-hero-visual::before {
  background:rgba(235,249,255,.72);
  border-radius:50%;
  content:'';
  height:47%;
  position:absolute;
  right:8%;
  top:8%;
  width:47%;
}
.personal-hero-visual .moon-mark {
  color:#fff;
  font-family:Georgia,serif;
  font-size:68px;
  left:9%;
  line-height:1;
  position:absolute;
  top:8%;
  z-index:4;
}
.desk-note {
  align-items:center;
  background:#fff3bd;
  border-left:7px solid #5575c8;
  box-shadow:8px 9px 0 rgba(54,70,110,.14);
  display:grid;
  gap:28px;
  grid-template-columns:minmax(0,1fr) 210px;
  margin:0 auto 55px;
  max-width:1240px;
  min-height:275px;
  overflow:hidden;
  padding:36px 42px;
  position:relative;
  transform:rotate(-.35deg);
}
.desk-note > div { max-width:850px; }
.desk-note h2 { font-size:clamp(30px,3.3vw,48px); margin-bottom:13px; }
.desk-note p:not(.hand-note) { font-size:15px; line-height:1.65; margin-bottom:17px; }
.desk-note img { align-self:end; bottom:-190px; max-width:none; position:absolute; right:10px; width:240px; }
.desk-links,.pack-links,.project-actions,.modpack-page-links { align-items:center; display:flex; flex-wrap:wrap; gap:13px 22px; }
.desk-links a,.pack-links a,.project-actions > a:not(.button),.modpack-page-links a,.support-note a {
  align-items:center;
  color:#3455a3;
  display:inline-flex;
  font-size:12px;
  font-weight:900;
  gap:6px;
  text-decoration:underline;
  text-underline-offset:4px;
}
.home-packs { padding-bottom:115px; padding-top:90px; }
.editorial-heading {
  align-items:end;
  border-bottom:1px solid rgba(76,106,153,.35);
  display:grid;
  gap:clamp(30px,7vw,120px);
  grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);
  margin-bottom:48px;
  padding-bottom:32px;
}
.editorial-heading h2 { font-size:clamp(42px,5vw,68px); margin:0; max-width:760px; }
.editorial-heading > p { color:#53617e; font-size:15px; line-height:1.7; margin:0; }
.home-pack-list { display:grid; gap:34px; grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr); }
.home-pack {
  align-content:start;
  background:transparent;
  border-top:5px solid currentColor;
  display:grid;
  min-width:0;
  transform:none;
}
.home-pack:nth-child(2) { margin-top:84px; }
.home-pack figure,.project-scene,.pack-hero-scene,.pack-gallery figure { margin:0; overflow:hidden; position:relative; }
.home-pack figure > img,.project-scene > img,.pack-hero-scene > img,.pack-gallery figure > img { display:block; height:100%; object-fit:cover; width:100%; }
.home-pack figure { aspect-ratio:16/9; }
.home-pack figcaption,.project-scene figcaption,.pack-hero-scene figcaption,.pack-gallery figcaption {
  background:#1c2743;
  color:#f5f8ff;
  font-size:10px;
  line-height:1.45;
  padding:9px 12px;
}
.home-pack-copy { padding:27px 25px 30px; position:relative; }
.home-pack.cottage .home-pack-copy { background:#e7f2e1; }
.home-pack.shadowfall .home-pack-copy { background:#292b4c; color:#fff; }
.pack-index { font-family:'DynaPuff',sans-serif; font-size:12px; font-weight:600; position:absolute; right:24px; top:30px; }
.home-pack-icon { float:left; height:68px; margin:0 17px 10px 0; object-fit:cover; width:68px; }
.pack-meta { font-size:10px; font-weight:900; margin-bottom:5px; text-transform:uppercase; }
.home-pack h3 { font-size:clamp(31px,4vw,51px); margin:0 0 16px; }
.home-pack-copy > p:last-of-type { clear:both; font-size:14px; line-height:1.65; }
.pack-links { clear:both; margin-top:20px; }
.home-pack.shadowfall .pack-links a { color:#cbd8ff; }
.margin-note {
  color:#5d6781;
  font-family:'DynaPuff',sans-serif;
  font-size:12px;
  margin:35px 0 0 auto;
  max-width:470px;
  transform:rotate(-1deg);
}
.personal-channel {
  background:#e4e0ff;
  border-left:0;
  border-radius:0;
  border-right:0;
  margin:0;
  max-width:none;
  padding-left:max(5vw,calc((100% - 1440px)/2 + 68px));
  padding-right:max(5vw,calc((100% - 1440px)/2 + 68px));
}
.personal-channel .channel-heading h2 { font-size:clamp(40px,4.7vw,66px); line-height:1.04; }
.personal-channel .channel-heading { grid-template-columns:minmax(0,1.1fr) minmax(260px,.65fr) minmax(190px,.4fr); }
.personal-channel .video-grid { grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr); }
.personal-channel .video-card { border-radius:2px; box-shadow:7px 8px 0 rgba(60,69,113,.15); }
.personal-channel .video-card:nth-child(2) { margin-top:46px; }
.support-note {
  align-items:center;
  border-bottom:1px solid rgba(73,105,154,.35)!important;
  border-top:1px solid rgba(73,105,154,.35)!important;
  display:grid;
  gap:40px;
  grid-template-columns:minmax(0,1fr) 240px;
  margin-bottom:80px!important;
  margin-top:80px!important;
  min-height:320px;
  overflow:hidden;
}
.support-note > div { max-width:780px; }
.support-note h2 { font-size:clamp(37px,4.3vw,61px); line-height:1.06; margin-bottom:18px; }
.support-note p:not(.hand-note) { font-size:15px; line-height:1.65; max-width:690px; }
.support-note img { align-self:end; margin-bottom:-240px; width:260px; }
.page-heading h1,.colophon-page h1 { font-size:clamp(47px,5.7vw,80px); line-height:1.03; }
.modpacks-heading { max-width:920px; padding-bottom:70px; position:relative; }
.modpacks-heading > p:not(.hand-note) { color:#53617e; font-size:17px; line-height:1.7; max-width:720px; }
.project-feature-list { display:grid; gap:105px; margin:35px 0 100px; }
.project-feature {
  align-items:center;
  background:transparent;
  border-top:4px solid currentColor;
  display:grid;
  gap:clamp(34px,6vw,90px);
  grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr);
  padding-top:28px;
  transform:none;
}
.project-feature:nth-child(even) .project-scene { grid-column:2; }
.project-feature:nth-child(even) .project-feature-copy { grid-column:1; grid-row:1; }
.project-scene { aspect-ratio:4/3; }
.project-scene figcaption { position:relative; }
.project-title-line { align-items:center; display:flex; gap:18px; margin-bottom:20px; }
.project-title-line img { height:76px; object-fit:cover; width:76px; }
.project-title-line span { font-size:10px; font-weight:900; text-transform:uppercase; }
.project-title-line h2 { font-size:clamp(38px,4.4vw,60px); margin:3px 0 0; }
.project-type { font-size:11px; font-weight:900; text-transform:uppercase; }
.project-feature-copy > p:not(.project-type) { font-size:15px; line-height:1.7; max-width:690px; }
.project-facts {
  border-bottom:1px solid rgba(75,105,150,.32);
  border-top:1px solid rgba(75,105,150,.32);
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin:28px 0;
}
.project-facts div { padding:13px 14px 13px 0; }
.project-facts dt { color:#68728d; font-size:9px; font-weight:900; text-transform:uppercase; }
.project-facts dd { font-size:12px; font-weight:800; margin:5px 0 0; }
.project-feature.shadowfall { color:#303554; }
.unfinished-note {
  background:#fff1bd;
  border:1px solid rgba(121,100,37,.24);
  border-radius:2px;
  margin:30px 0 55px auto;
  max-width:850px;
  padding:32px 38px;
  transform:rotate(.4deg);
}
.unfinished-note h2 { font-size:clamp(29px,3.3vw,44px); margin-bottom:14px; }
.unfinished-note p:not(.hand-note) { font-size:14px; line-height:1.65; }
.unfinished-note a { align-items:center; color:#3455a3; display:inline-flex; font-size:12px; font-weight:900; gap:6px; text-decoration:underline; text-underline-offset:4px; }
.modpack-page-links { border-top:1px solid rgba(75,105,150,.32); justify-content:space-between; padding-top:22px; }
.pack-detail.cottage,.pack-detail.shadowfall { background:transparent; color:var(--ink); transform:none; }
.pack-editorial-hero {
  align-items:center;
  display:grid;
  gap:clamp(40px,7vw,105px);
  grid-template-columns:minmax(0,1fr) minmax(330px,.8fr);
  min-height:570px;
  padding:55px 0 70px;
}
.pack-editorial-hero h1 { font-size:clamp(57px,7vw,98px); margin-bottom:22px; }
.pack-editorial-hero .pack-page-copy > p:not(.hand-note) { font-size:17px; line-height:1.7; max-width:660px; }
.pack-hero-scene { aspect-ratio:4/3; border:2px solid rgba(42,63,102,.28); box-shadow:12px 13px 0 rgba(60,82,125,.15); overflow:visible; }
.pack-hero-scene > img:first-child { overflow:hidden; }
.pack-hero-scene figcaption { bottom:0; left:0; position:absolute; right:0; }
.pack-hero-scene .pack-page-icon {
  border:7px solid #f8fcff;
  box-shadow:5px 6px 0 rgba(39,49,84,.24);
  height:118px;
  object-fit:cover;
  position:absolute;
  right:-28px;
  top:-34px;
  width:118px;
}
.pack-fact-line {
  border-bottom:1px solid rgba(74,105,151,.36);
  border-top:1px solid rgba(74,105,151,.36);
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin:0 0 100px;
}
.pack-fact-line div { padding:19px 24px 19px 0; }
.pack-fact-line dt { color:#66728f; font-size:9px; font-weight:900; text-transform:uppercase; }
.pack-fact-line dd { font-family:'DynaPuff',sans-serif; font-size:17px; margin:6px 0 0; }
.pack-story {
  align-items:start;
  display:grid;
  gap:clamp(40px,8vw,130px);
  grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);
  margin-bottom:115px;
}
.pack-story h2 { font-size:clamp(40px,5vw,67px); line-height:1.04; }
.pack-story > div > p:not(.hand-note) { font-size:17px; line-height:1.75; max-width:700px; }
.pack-story aside {
  background:#fff1bd;
  border-left:5px solid #5575c8;
  box-shadow:7px 8px 0 rgba(60,75,111,.13);
  padding:29px 31px;
  transform:rotate(.7deg);
}
.pack-story aside strong { font-family:'DynaPuff',sans-serif; font-size:19px; }
.pack-story aside ul { display:grid; font-size:13px; gap:12px; line-height:1.55; margin:19px 0 0; padding-left:20px; }
.pack-gallery { margin-bottom:110px; }
.pack-gallery > header { align-items:end; display:flex; gap:30px; justify-content:space-between; margin-bottom:28px; }
.pack-gallery h2 { font-size:clamp(36px,4.5vw,60px); margin:0; }
.pack-gallery > div { display:grid; gap:13px; grid-template-columns:1.2fr .8fr; }
.pack-gallery figure:first-child { grid-row:span 2; }
.pack-gallery figure:first-child img { min-height:100%; }
.pack-gallery figure { border:1px solid rgba(62,88,130,.24); }
.pack-gallery figure img { aspect-ratio:16/9; }
.pack-gallery figcaption { min-height:43px; }
.pack-gallery figcaption small { display:block; margin-top:3px; opacity:.75; }
.creation-next { margin-bottom:70px; }
.creation-next .next-pack { border-radius:0; }
.colophon-page { max-width:1180px; overflow:hidden; }
.colophon-page > header { margin:70px 0 90px; max-width:880px; }
.colophon-page > header > p:not(.hand-note) { color:#53617e; font-size:17px; line-height:1.7; max-width:710px; }
.colophon-page { min-height:850px; position:relative; }
.colophon-copy { max-width:760px; padding-bottom:170px; position:relative; z-index:2; }
.colophon-copy dl { margin:0; }
.colophon-copy dl > div {
  border-top:1px solid rgba(72,104,151,.34);
  display:grid;
  gap:25px;
  grid-template-columns:180px minmax(0,1fr);
  padding:22px 0;
}
.colophon-copy dt { font-family:'DynaPuff',sans-serif; font-size:13px; }
.colophon-copy dd { font-size:14px; line-height:1.65; margin:0; }
.colophon-copy a { color:#3455a3; font-weight:900; text-decoration:underline; text-underline-offset:3px; }
.colophon-marble { bottom:-230px; position:absolute; right:-190px; width:560px; }
.policy-page { max-width:1120px; }
.policy-heading { max-width:850px; }
.policy-copy { border-radius:6px; max-width:850px; }
.plain-summary {
  background:#e7f3ff;
  border-left:5px solid #5575c8;
  margin:-12px -12px 42px;
  padding:23px 28px;
}
.plain-summary h2 { margin-top:0; }
.plain-summary ul { margin-bottom:0; }

@media (max-width:1050px) {
  .social-links a span { display:none; }
  .social-links { gap:8px; }
  .social-links a { padding:7px 2px; }
  .personal-channel .channel-heading { grid-template-columns:minmax(0,1fr) minmax(190px,.4fr); }
  .personal-channel .channel-intro { grid-column:1; }
  .project-feature { gap:45px; }
}

@media (max-width:720px) {
  .nav { border-radius:0; }
  .theme-toggle { margin-left:4px; }
  .personal-hero { padding-top:45px; }
  .personal-hero h1 { font-size:clamp(43px,13vw,63px); }
  .personal-hero-visual { border-radius:12px 46px 12px 46px; box-shadow:8px 9px 0 rgba(73,105,164,.14); }
  .desk-note { display:block; margin:0 5vw 35px; min-height:430px; padding:28px 25px; transform:none; }
  .desk-note img { bottom:-205px; right:-10px; width:230px; }
  .desk-links { align-items:flex-start; flex-direction:column; }
  .editorial-heading,.home-pack-list,.project-feature,.pack-editorial-hero,.pack-story { grid-template-columns:1fr; }
  .editorial-heading { align-items:start; gap:20px; }
  .home-pack:nth-child(2) { margin-top:10px; }
  .margin-note { margin-top:28px; }
  .personal-channel { margin:0; padding-left:6vw; padding-right:6vw; }
  .personal-channel .channel-heading,.personal-channel .video-grid { grid-template-columns:1fr; }
  .personal-channel .channel-intro { grid-column:auto; }
  .personal-channel .video-card:nth-child(2) { margin-top:0; }
  .support-note { grid-template-columns:1fr; margin:45px 6vw!important; min-height:540px; padding-bottom:0; }
  .support-note img { justify-self:end; margin-bottom:-230px; width:230px; }
  .modpacks-heading { padding-bottom:180px; }
  .project-feature-list { gap:70px; }
  .project-feature:nth-child(even) .project-scene,.project-feature:nth-child(even) .project-feature-copy { grid-column:auto; grid-row:auto; }
  .project-feature:nth-child(even) .project-scene { order:0; }
  .project-feature:nth-child(even) .project-feature-copy { order:1; }
  .project-facts,.pack-fact-line { grid-template-columns:1fr; }
  .project-facts div,.pack-fact-line div { border-bottom:1px solid rgba(75,105,150,.22); }
  .project-facts div:last-child,.pack-fact-line div:last-child { border-bottom:0; }
  .unfinished-note { margin-left:0; padding:27px 24px; transform:none; }
  .modpack-page-links { align-items:flex-start; flex-direction:column; }
  .pack-editorial-hero { min-height:0; padding-top:45px; }
  .pack-hero-scene { margin-right:20px; order:-1; }
  .pack-hero-scene .pack-page-icon { height:90px; right:-20px; top:-25px; width:90px; }
  .pack-fact-line { margin-bottom:70px; }
  .pack-story { gap:30px; margin-bottom:80px; }
  .pack-story aside { transform:none; }
  .pack-gallery > header { align-items:flex-start; flex-direction:column; gap:5px; }
  .pack-gallery > div { grid-template-columns:1fr; }
  .pack-gallery figure:first-child { grid-row:auto; }
  .colophon-page > header { margin:48px 0 65px; }
  .colophon-copy dl > div { gap:8px; grid-template-columns:1fr; }
  .colophon-marble { bottom:-185px; right:-155px; width:440px; }
  .plain-summary { margin:-8px -8px 35px; padding:20px; }
}

@media (max-width:520px) {
  .social-links { gap:5px; }
  .social-links a { height:30px; width:24px; }
}

html[data-theme='dark'] .hand-note { color:#a9c1fb; }
html[data-theme='dark'] .social-links a { background:transparent; border:0; color:#adc9f1; }
html[data-theme='dark'] .social-links a:hover { background:transparent; color:#fff; }
html[data-theme='dark'] .nav-links > a:not(.nav-report):hover,
html[data-theme='dark'] .nav-report:hover { background:transparent; }
html[data-theme='dark'] .section:not(.channel-section):not(.quick-links) { background:transparent; border-color:rgba(131,172,210,.28); }
html[data-theme='dark'] .personal-hero-visual {
  background:#356f9c;
  border-color:rgba(169,208,238,.24);
  box-shadow:14px 16px 0 rgba(0,0,0,.22);
}
html[data-theme='dark'] .personal-hero-visual::before { background:rgba(209,237,255,.46); }
html[data-theme='dark'] .desk-note,
html[data-theme='dark'] .unfinished-note,
html[data-theme='dark'] .pack-story aside,
html[data-theme='dark'] .desk-links a,
html[data-theme='dark'] .pack-links a,
html[data-theme='dark'] .project-actions > a:not(.button),
html[data-theme='dark'] .modpack-page-links a,
html[data-theme='dark'] .support-note a,
html[data-theme='dark'] .unfinished-note a,
html[data-theme='dark'] .colophon-copy a { color:#b7ccff; }
html[data-theme='dark'] .desk-note { background:#342f21; border-left-color:#8ca7ff; box-shadow:8px 9px 0 rgba(0,0,0,.24); }
html[data-theme='dark'] .desk-note h2 { color:#fff0b6; }
html[data-theme='dark'] .desk-note .hand-note { color:#adc4ff; }
html[data-theme='dark'] .desk-note p:not(.hand-note) { color:#dce5f5; }
html[data-theme='dark'] .editorial-heading > p,
html[data-theme='dark'] .modpacks-heading > p:not(.hand-note),
html[data-theme='dark'] .colophon-page > header > p:not(.hand-note) { color:#b2bfd7; }
html[data-theme='dark'] .home-pack.cottage .home-pack-copy { background:#243d35; color:#f1fbf5; }
html[data-theme='dark'] .home-pack.shadowfall .home-pack-copy { background:#242642; }
html[data-theme='dark'] .personal-channel { background:#252642; border-color:rgba(142,170,213,.24); }
html[data-theme='dark'] .margin-note { color:#a7b4cc; }
html[data-theme='dark'] .project-feature.shadowfall { color:var(--ink); }
html[data-theme='dark'] .project-facts dt,
html[data-theme='dark'] .pack-fact-line dt { color:#a7b4cd; }
html[data-theme='dark'] .pack-hero-scene .pack-page-icon { border-color:#172138; }
html[data-theme='dark'] .plain-summary { background:#172c41; border-color:#7f9de2; }

/* Charm repair: Robin's own sky artwork, clearer type, and fewer visual glitches. */
body {
  background-image:url('/media/cloud-band-1600.webp'),linear-gradient(180deg,#e5f6ff 0,#f8fcff 720px,#fbfdff 100%);
  background-position:center 470px,center;
  background-repeat:no-repeat,no-repeat;
  background-size:max(1600px,100vw) auto,100% 100%;
  font-size:16px;
}
.personal-hero-visual {
  background:#70c2f5 url('/media/star-field-sky-1600.webp') center/cover no-repeat;
  border:3px solid rgba(255,255,255,.9);
  border-radius:30px;
  box-shadow:0 0 0 2px rgba(64,111,181,.25),14px 16px 0 rgba(73,105,164,.14);
  transform:rotate(.45deg);
}
.personal-hero-visual::before {
  background:url('/media/cloud-band-1600.webp') center bottom/auto 100% no-repeat;
  border-radius:0;
  bottom:-2px;
  height:43%;
  left:-12%;
  opacity:.96;
  right:-12%;
  top:auto;
  width:auto;
  z-index:2;
}
.personal-hero-visual .moon-mark {
  filter:drop-shadow(0 3px 5px rgba(49,95,151,.25));
  font-size:62px;
  left:auto;
  right:8%;
  top:6%;
}
.personal-hero-visual .marble-hero { bottom:-26%; right:-14%; width:132%; }
.channel-persona { min-height:390px; }
.channel-persona img { bottom:0; width:min(100%,235px); }
.channel-persona span { bottom:25px; left:calc(50% - 104px); }
.nav-report {
  background:var(--lavender);
  border:1px solid #c8c1f6;
  border-radius:999px;
  box-shadow:none;
  padding:10px 15px;
}
.nav-report:hover { background:#e3e0ff; border-color:#aaa3e9; }
.home-pack.cottage,.project-feature.cottage { border-top-color:#77b694; }
.home-pack.shadowfall,.project-feature.shadowfall { border-top-color:#7773b8; }
footer { min-height:108px; padding-left:max(116px,4.5vw); position:relative; }
.footer-mascot { bottom:0; height:68px; left:0; margin:0; position:absolute; width:86px; }
.footer-mascot img { left:-35px; top:-26px; }

/* Reading text stays comfortable at normal browser zoom on every public page. */
.hand-note,.eyebrow,.breadcrumbs { font-size:14px; }
.social-links a { font-size:13px; }
.nav-links,.mobile-menu > nav a { font-size:15px; }
.button,.mobile-cta { font-size:15px; }
.under-link,.profile-link,.text-action,
.desk-links a,.pack-links a,.project-actions > a:not(.button),.modpack-page-links a,.support-note a,.unfinished-note a { font-size:15px; }
.desk-note p:not(.hand-note),.editorial-heading > p,.home-pack-copy > p:last-of-type,.project-feature-copy > p:not(.project-type),.unfinished-note p:not(.hand-note),.colophon-copy dd { font-size:16px; }
.home-pack figcaption,.project-scene figcaption,.pack-hero-scene figcaption,.pack-gallery figcaption { font-size:14px; }
.pack-index,.pack-meta,.project-title-line span,.project-type,.project-facts dt,.pack-fact-line dt,.colophon-copy dt { font-size:13px; }
.project-facts dd { font-size:15px; }
.pack-story aside ul { font-size:15px; }
.video-details p,.video-details a,.video-load-label { font-size:14px; }
.video-consent-placeholder p,.video-consent-placeholder button { font-size:14px; }
footer { font-size:14px; }
.minecraft-disclaimer { font-size:11px; }
.cookie-kicker { font-size:13px; }
.cookie-prompt-copy > p:not(.cookie-kicker),.cookie-prompt-copy > a,.privacy-choice-button,.cookie-options strong,.cookie-options small { font-size:14px; }
.pack-copy p,.pack-number,.project-count,.pack-status,.creation-info span,.next-pack small,.pagination > a,.pagination > span,.mobile-menu > button,.channel-persona span,.quick-links.single > a small { font-size:14px; }
.pack-description,.pack-page-link,.project-details { font-size:15px; }

html[data-theme='dark'] body {
  background-color:#10172a;
  background-image:linear-gradient(180deg,#0b1224 0,#151f38 34rem,#0f1628 100%);
}
html[data-theme='dark'] .personal-hero-visual {
  background-image:linear-gradient(rgba(5,18,42,.34),rgba(11,31,59,.46)),url('/media/star-field-sky-1600.webp');
  background-position:center;
  background-size:cover;
  border-color:rgba(202,232,255,.72);
}
html[data-theme='dark'] .personal-hero-visual::before { background:url('/media/cloud-band-1600.webp') center bottom/auto 100% no-repeat; opacity:.72; }
html[data-theme='dark'] .nav-report { background:#2d3155; border-color:#59649c; }
html[data-theme='dark'] .nav-report:hover { background:#373d67; border-color:#8292d2; }

@media (max-width:900px) {
  .channel-persona { min-height:370px; }
  .channel-persona img { width:min(100%,225px); }
}

@media (max-width:720px) {
  body { background-position:center 620px,center; }
  .personal-hero-visual { border-radius:26px; }
  .personal-hero-visual .marble-hero { bottom:-24%; right:-14%; width:132%; }
  .channel-persona { min-height:390px; }
  .channel-persona img { width:235px; }
  .quick-links.single > a small { font-size:15px; }
  footer { padding-left:105px; }
  .footer-mascot { height:72px; width:90px; }
}

/* Blog and footer credits */
footer > .brand,footer > .footer-links { order:1; }
.minecraft-disclaimer { order:2; }
.footer-corner { flex-basis:100%; order:3; text-align:center; width:100%; }
.footer-credit { color:#61708c; flex-basis:100%; font-size:12px; font-weight:700; order:4; text-align:center; width:100%; }
.footer-credit a { color:inherit; font-weight:900; text-decoration:underline; text-underline-offset:3px; }
.footer-links a { gap:5px; }

.blog-page,.blog-post-page { max-width:1180px; }
.blog-heading { margin:70px 0 78px; max-width:900px; }
.blog-heading h1,.blog-post h1 { font-size:clamp(47px,5.7vw,80px); line-height:1.03; }
.blog-heading > p:not(.hand-note) { color:#53617e; font-size:17px; line-height:1.7; max-width:720px; }
.blog-list { list-style:none; margin:0; padding:0; }
.blog-list > li { border-top:1px solid rgba(72,104,151,.36); padding:34px 0 43px; }
.blog-list article { max-width:850px; }
.blog-card-date { align-items:center; color:#5b6784; display:flex; flex-wrap:wrap; font-size:13px; font-weight:900; gap:8px 13px; text-transform:uppercase; }
.blog-card-date span { color:#3455a3; }
.blog-list h2 { font-size:clamp(29px,3.5vw,46px); line-height:1.15; margin:15px 0 12px; }
.blog-list h2 a:hover { color:#3455a3; }
.blog-list article > p { font-size:16px; line-height:1.72; margin:0 0 18px; max-width:720px; }
.blog-read-link,.blog-post-footer a { align-items:center; color:#3455a3; display:inline-flex; font-size:15px; font-weight:900; gap:7px; text-decoration:underline; text-underline-offset:4px; }
.blog-empty { border-top:1px solid rgba(72,104,151,.36); max-width:760px; padding:38px 0; }
.blog-empty h2 { font-size:34px; margin:13px 0 8px; }
.blog-empty p { font-size:16px; }
.blog-post { margin:65px auto 30px; max-width:860px; }
.blog-post > header { border-bottom:1px solid rgba(72,104,151,.36); padding-bottom:38px; }
.blog-post h1 { margin:13px 0 20px; }
.blog-post-excerpt { color:#53617e; font-size:19px; line-height:1.65; max-width:750px; }
.blog-updated { align-items:center; background:#fff1bd; border-left:4px solid #5575c8; display:flex; font-size:14px; gap:8px; line-height:1.5; margin:24px 0 0; padding:12px 14px; }
.blog-post-body { padding:38px 0 22px; }
.blog-post-body p { font-size:17px; line-height:1.78; margin:0 0 24px; white-space:pre-wrap; }
.blog-post-footer { border-top:1px solid rgba(72,104,151,.36); margin-top:18px; padding-top:25px; }
html[data-theme='dark'] .blog-heading > p:not(.hand-note),html[data-theme='dark'] .blog-post-excerpt { color:#b2bfd7; }
html[data-theme='dark'] .blog-card-date { color:#a7b4cc; }
html[data-theme='dark'] .blog-card-date span,html[data-theme='dark'] .blog-read-link,html[data-theme='dark'] .blog-post-footer a { color:#b7ccff; }
html[data-theme='dark'] .blog-updated { background:#3b3421; border-color:#82a6ff; }
html[data-theme='dark'] .footer-credit { color:#aebbd1; }

@media (max-width:720px) {
  .blog-heading { margin:48px 0 60px; }
  .blog-list > li { padding:28px 0 34px; }
  .blog-post { margin-top:45px; }
  .blog-post-body p { font-size:16px; }
  .footer-corner,.footer-credit,.minecraft-disclaimer { text-align:center; }
}

/* Route skeletons keep navigation responsive while the real page is assembled. */
.sr-only {
  clip:rect(0,0,0,0);
  clip-path:inset(50%);
  height:1px;
  overflow:hidden;
  position:absolute;
  white-space:nowrap;
  width:1px;
}
.loading-page {
  --skeleton-fill:#dceaf5;
  --skeleton-soft:#eaf3fa;
  min-height:100vh;
}
.skeleton-chrome-header { border-bottom:1px solid var(--line); min-height:76px; }
.skeleton-chrome-inner { align-items:center; display:flex; gap:14px; margin:0 auto; max-width:1500px; min-height:76px; padding:0 clamp(20px,5vw,78px); }
.skeleton-brand-mark { border-radius:50%; height:42px; width:42px; }
.skeleton-brand-name { height:16px; width:118px; }
.skeleton-chrome-nav { align-items:center; display:flex; gap:22px; margin-left:auto; width:330px; }
.skeleton-chrome-nav .skeleton-line { flex:1; }
.skeleton-chrome-footer { background:var(--skeleton-soft); border-top:1px solid var(--line); margin-top:28px; min-height:118px; }
.skeleton-chrome-footer .skeleton-chrome-inner { min-height:118px; }
.skeleton-chrome-footer .skeleton-line { margin-left:auto; max-width:420px; }
.skeleton-page { min-height:72vh; padding-top:64px; }
.skeleton-block {
  animation:skeleton-pulse 1.05s ease-in-out infinite alternate;
  background:var(--skeleton-fill);
  border-radius:9px;
  display:block;
}
.skeleton-stack,.skeleton-copy { display:grid; gap:14px; }
.skeleton-line { height:15px; width:100%; }
.skeleton-tiny { width:18%; }
.skeleton-short { width:34%; }
.skeleton-medium { width:68%; }
.skeleton-title { border-radius:14px; height:72px; width:88%; }
.skeleton-title-short { width:61%; }
.skeleton-subtitle { height:38px; width:58%; }
.skeleton-subtitle-short { width:41%; }
.skeleton-button { height:49px; margin-top:8px; width:205px; }
.skeleton-hero {
  align-items:center;
  display:grid;
  gap:clamp(40px,7vw,105px);
  grid-template-columns:minmax(0,1.1fr) minmax(330px,.9fr);
  min-height:610px;
}
.skeleton-hero .skeleton-copy,.skeleton-page-heading .skeleton-copy { margin-top:12px; max-width:650px; }
.skeleton-art { aspect-ratio:1; border-radius:30px; justify-self:end; max-width:520px; width:100%; }
.skeleton-wide-card { background:var(--skeleton-soft); border-radius:22px; display:grid; gap:18px; margin:0 auto 70px; padding:38px; }
.skeleton-page-heading { display:grid; gap:18px; margin:38px 0 75px; max-width:880px; }
.skeleton-page-heading .skeleton-title { height:64px; }
.skeleton-heading-with-art { align-items:end; grid-template-columns:minmax(0,1fr) 280px; max-width:none; }
.skeleton-heading-with-art > div { display:grid; gap:18px; }
.skeleton-mascot { aspect-ratio:1; border-radius:50% 50% 44% 56%; justify-self:end; width:260px; }
.skeleton-list { border-top:1px solid var(--line); margin-bottom:80px; }
.skeleton-list-row { border-bottom:1px solid var(--line); display:grid; gap:15px; padding:34px 0 40px; }
.skeleton-list-row .skeleton-copy { max-width:720px; }
.skeleton-article { display:grid; gap:22px; margin:0 auto 80px; max-width:860px; }
.skeleton-article-rule { background:var(--line); height:1px; width:100%; }
.skeleton-article > .skeleton-copy { max-width:770px; }
.skeleton-form-panel { background:var(--skeleton-soft); border:1px solid var(--line); border-radius:20px; display:grid; gap:24px; margin:0 auto 80px; max-width:860px; padding:30px; }
.skeleton-form-grid { display:grid; gap:20px; grid-template-columns:repeat(2,minmax(0,1fr)); }
.skeleton-textarea { height:180px; }
.skeleton-project-list { display:grid; gap:76px; margin-bottom:80px; }
.skeleton-project { align-items:center; display:grid; gap:clamp(35px,6vw,88px); grid-template-columns:minmax(320px,1fr) minmax(300px,.9fr); }
.skeleton-project:nth-child(even) .skeleton-project-image { grid-column:2; grid-row:1; }
.skeleton-project-image { aspect-ratio:16/10; border-radius:24px; }
.skeleton-project-hero { align-items:center; display:grid; gap:clamp(35px,6vw,88px); grid-template-columns:minmax(0,1fr) minmax(320px,.9fr); margin:48px 0 45px; }
.skeleton-project-hero .skeleton-project-image { justify-self:end; max-width:540px; width:100%; }
.skeleton-fact-row { display:grid; gap:1px; grid-template-columns:repeat(3,1fr); margin:0 0 70px; }
.skeleton-fact { border-radius:0; height:72px; }
.skeleton-story { display:grid; gap:40px; grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr); margin:0 0 80px; }
.skeleton-aside { border-radius:18px; min-height:245px; }
.skeleton-gallery { display:grid; gap:16px; grid-template-columns:repeat(3,1fr); margin-bottom:80px; }
.skeleton-stat-row,.skeleton-admin-stats { display:grid; gap:14px; grid-template-columns:repeat(3,1fr); margin:0 0 30px; }
.skeleton-stat { height:94px; }
.skeleton-board,.skeleton-panel { background:var(--skeleton-soft); border:1px solid var(--line); border-radius:20px; display:grid; gap:18px; padding:28px; }
.skeleton-filter-row { display:grid; gap:14px; grid-template-columns:1.4fr repeat(2,1fr); }
.skeleton-field { height:58px; }
.skeleton-table-row { height:68px; }
.skeleton-issue-heading { margin-bottom:34px; }
.skeleton-issue-facts { grid-template-columns:repeat(5,1fr); margin-bottom:36px; }
.skeleton-issue-grid { align-items:start; display:grid; gap:30px; grid-template-columns:minmax(0,1.25fr) minmax(250px,.75fr); margin-bottom:45px; }
.skeleton-comment { height:116px; }
.skeleton-account-head { align-items:center; background:var(--skeleton-soft); border-radius:24px; display:grid; gap:24px; grid-template-columns:auto 1fr auto; margin:42px 0 36px; padding:30px; }
.skeleton-avatar { border-radius:50%; height:96px; width:96px; }
.skeleton-account-grid { display:grid; gap:25px; grid-template-columns:repeat(2,minmax(0,1fr)); margin-bottom:80px; }
.skeleton-account-row { height:76px; }
.skeleton-admin-nav { border-bottom:1px solid var(--line); border-top:1px solid var(--line); display:flex; gap:30px; margin-bottom:30px; padding:18px 0; }
.skeleton-admin-nav .skeleton-line { flex:1; max-width:130px; }
.skeleton-admin-stats { grid-template-columns:repeat(5,1fr); }

html[data-theme='dark'] .loading-page {
  --skeleton-fill:#293954;
  --skeleton-soft:#1a2941;
}

@keyframes skeleton-pulse {
  from { opacity:.58; }
  to { opacity:1; }
}

@media (max-width:720px) {
  .skeleton-chrome-header,.skeleton-chrome-inner { min-height:64px; }
  .skeleton-chrome-inner { padding:0 20px; }
  .skeleton-brand-name { width:92px; }
  .skeleton-chrome-nav { gap:9px; width:94px; }
  .skeleton-chrome-nav .skeleton-line { height:38px; width:38px; }
  .skeleton-chrome-nav .skeleton-line:nth-child(n+2) { display:none; }
  .skeleton-chrome-footer .skeleton-chrome-inner { min-height:104px; }
  .skeleton-chrome-footer .skeleton-line { max-width:190px; }
  .skeleton-page { padding-top:42px; }
  .skeleton-hero { display:flex; flex-direction:column-reverse; min-height:0; }
  .skeleton-art { align-self:center; width:88vw; }
  .skeleton-title { height:48px; width:100%; }
  .skeleton-title-short { width:70%; }
  .skeleton-page-heading { margin:25px 0 48px; }
  .skeleton-page-heading .skeleton-title { height:48px; }
  .skeleton-heading-with-art { display:flex; flex-direction:column-reverse; }
  .skeleton-mascot { align-self:center; width:230px; }
  .skeleton-project { grid-template-columns:1fr; gap:25px; }
  .skeleton-project:nth-child(even) .skeleton-project-image { grid-column:auto; grid-row:auto; }
  .skeleton-form-grid,.skeleton-project-hero,.skeleton-story,.skeleton-issue-grid { grid-template-columns:1fr; }
  .skeleton-project-hero { margin-top:25px; }
  .skeleton-project-hero .skeleton-project-image { justify-self:stretch; }
  .skeleton-fact-row { grid-template-columns:1fr; gap:10px; margin-bottom:48px; }
  .skeleton-fact { border-radius:9px; height:60px; }
  .skeleton-gallery { grid-template-columns:1fr; }
  .skeleton-form-panel { padding:22px; }
  .skeleton-stat-row { grid-template-columns:repeat(3,1fr); }
  .skeleton-stat { height:76px; }
  .skeleton-filter-row,.skeleton-account-grid { grid-template-columns:1fr; }
  .skeleton-account-head { align-items:start; grid-template-columns:auto 1fr; }
  .skeleton-account-head > .skeleton-button { grid-column:1/-1; }
  .skeleton-admin-nav { gap:14px; overflow:hidden; }
  .skeleton-admin-nav .skeleton-line { flex:0 0 95px; }
  .skeleton-admin-stats { grid-template-columns:repeat(2,1fr); }
  .skeleton-admin-stats .skeleton-stat:last-child { display:none; }
}

@media (prefers-reduced-motion:reduce) {
  .skeleton-block { animation:none; opacity:.78; }
}

/* The moon belongs with Robin's introduction, not inside Marble's picture. */
.hero-intro { align-items:center; display:flex; font-size:16px; gap:8px; }
.hero-intro svg { color:#4f72d4; flex:none; }

/* Blog artwork */
.blog-card-image { aspect-ratio:16/9; border:1px solid rgba(72,104,151,.28); border-radius:18px; display:block; margin-bottom:24px; max-width:820px; overflow:hidden; }
.blog-card-image img,.blog-post-image img { height:100%; object-fit:cover; width:100%; }
.blog-post-image { margin:38px 0 0; }
.blog-post-image img { aspect-ratio:16/9; border:1px solid rgba(72,104,151,.28); border-radius:20px; display:block; }
.blog-post-image figcaption { color:var(--muted); font-size:14px; line-height:1.55; padding:10px 3px 0; }

/* Consent is a compact, ordinary dialog. Its three choices follow the privacy link. */
.cookie-prompt { -webkit-overflow-scrolling:touch; align-items:start; display:grid; gap:18px; grid-template-columns:auto minmax(0,1fr); max-height:calc(100vh - 36px); max-height:calc(100dvh - 36px); overflow-x:hidden; overflow-y:auto; overscroll-behavior:contain; padding:20px; scrollbar-gutter:stable; width:min(650px,calc(100vw - 36px)); }
.cookie-prompt-scroll { display:contents; }
.privacy-choice-buttons { background:transparent; display:flex; gap:12px; margin:18px 0 0; padding:0; position:static; width:100%; }
.privacy-choice-button.allow { background:#4f72d4; border:2px solid #4f72d4; color:#fff; }
html[data-theme='dark'] .privacy-choice-button.allow { background:#89afff; border-color:#89afff; color:#10182a; }

@media (max-width:720px) {
  .cookie-prompt { bottom:auto; left:8px; max-height:calc(100vh - 16px - env(safe-area-inset-top)); max-height:calc(100dvh - 16px - env(safe-area-inset-top)); right:8px; top:max(8px,env(safe-area-inset-top)); width:auto; }
  .privacy-choice-buttons { flex-direction:column; gap:8px; margin-top:16px; }
  .privacy-choice-button { flex:none; min-height:48px; width:100%; }
  .blog-card-image { border-radius:14px; }
  .blog-post-image { margin-top:28px; }
  .blog-post-image img { border-radius:14px; }
}

