@font-face{font-family:"Fredoka";font-style:normal;font-weight:300 700;font-display:swap;src:url("/site/fonts/Fredoka-Variable.eb5a4024f5bcb206.woff2") format("woff2")}
@font-face{font-family:"Nunito";font-style:normal;font-weight:200 1000;font-display:swap;src:url("/site/fonts/Nunito-Variable.d38f65e00e6faca6.woff2") format("woff2")}
/* NariYume public pages (profiles, games, FAQ). Same candy system as
 * nariyume-website/public/landing.css: cream paper, cocoa ink, chunky
 * offset shadows, gold "play" buttons, Fredoka display + Nunito body. */
:root {
  --cream: #FFF7EC; --paper: #FFFBF3; --pink: #FFD5DD; --pink-soft: #FFE8EE; --pink-deep: #FF7FA6;
  --gold: #FFE17A; --gold-edge: #BA7B24; --mint: #B7E4C9; --lavender: #D9C8F0; --butter: #FFE48A;
  --cocoa: #4A3626; --cocoa-soft: #795F4A; --line: rgba(74, 54, 38, .14);
  --nari: #F4A7BB; --yume: #E8434A;
  --accent: var(--nari); --ink: #A94A73;
  --pink-ink: #C23E74; /* text-safe pink: ≥ 4.5:1 on cream and paper */
  --chunk: 0 5px 0 rgba(74, 54, 38, .16);
  --r-lg: 28px; --r-md: 18px;
}
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0; background: var(--cream); color: var(--cocoa);
  font: 500 17px/1.55 "Nunito", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  -webkit-font-smoothing: antialiased; overflow-x: clip;
  background-image: radial-gradient(circle at 12% 8%, rgba(255, 213, 221, .55), transparent 34%), radial-gradient(circle at 88% 22%, rgba(217, 200, 240, .45), transparent 30%);
  background-attachment: fixed;
}
h1, h2, h3, .btn, .topnav, .eyebrow, .ig-name, .ig-stats b { font-family: "Fredoka", "Nunito", system-ui, sans-serif; }
h1 { font-size: clamp(2rem, 5.4vw, 3.2rem); line-height: 1.08; font-weight: 700; margin: 0 0 12px; letter-spacing: -.01em; }
h2 { font-size: clamp(1.4rem, 3.4vw, 1.9rem); font-weight: 650; margin: 0 0 12px; }
a { color: var(--ink); }
img { max-width: 100%; height: auto; display: block; }
main { padding: 96px 16px 64px; max-width: 1080px; margin: 0 auto; }
:focus-visible { outline: 3px solid var(--cocoa); outline-offset: 3px; border-radius: 10px; }

/* ── nav (mirrors landing .topnav) ── */
.topnav {
  position: fixed; top: 12px; left: 50%; transform: translateX(-50%); z-index: 50;
  display: flex; align-items: center; gap: 18px; white-space: nowrap;
  background: rgba(255, 255, 255, .92); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
  border: 2px solid var(--cocoa); border-radius: 999px; padding: 6px 8px 6px 18px; box-shadow: var(--chunk);
}
.topnav-brand { font-weight: 700; color: var(--cocoa); text-decoration: none; }
.topnav-links { display: flex; align-items: center; gap: 14px; }
.topnav-links a { color: var(--cocoa); text-decoration: none; font-weight: 600; font-size: .95rem; }
.topnav-links a[aria-current] { color: var(--pink-ink); }
.topnav-links a:hover { color: var(--pink-deep); }
.topnav-cta {
  display: inline-flex; align-items: center; min-height: 40px; padding: 6px 15px; border-radius: 999px;
  background: var(--gold); color: var(--cocoa) !important; border: 2px solid var(--cocoa); box-shadow: 0 3px 0 var(--gold-edge);
}
@media (max-width: 560px) {
  .topnav { gap: 10px; padding-left: 14px; max-width: calc(100vw - 16px); }
  .topnav-brand { display: none; }
  .topnav-links { gap: 11px; }
  .topnav-links a { font-size: .9rem; }
}

/* ── buttons ── */
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 46px;
  padding: 10px 20px; border-radius: 999px; border: 3px solid var(--cocoa);
  font-weight: 700; font-size: 1rem; text-decoration: none; color: var(--cocoa); cursor: pointer;
  transition: transform .18s cubic-bezier(.2, .9, .3, 1.4), box-shadow .18s;
}
.btn-gold { background: linear-gradient(180deg, #FFF0AD 0%, var(--gold) 58%, #FFD365 100%); box-shadow: inset 0 2px 0 rgba(255, 255, 255, .85), 0 5px 0 var(--gold-edge), 0 7px 0 var(--cocoa); }
.btn-gold:active { transform: translateY(5px); box-shadow: inset 0 2px 0 rgba(255, 255, 255, .6), 0 1px 0 var(--gold-edge), 0 2px 0 var(--cocoa); }
.btn-soft { background: var(--paper); box-shadow: 0 4px 0 rgba(74, 54, 38, .18); border-width: 2px; }
.btn-big { min-height: 56px; padding: 12px 30px; font-size: 1.2rem; }
@media (hover: hover) and (pointer: fine) {
  .btn-gold:hover { transform: translateY(-3px); box-shadow: inset 0 2px 0 rgba(255, 255, 255, .85), 0 8px 0 var(--gold-edge), 0 10px 0 var(--cocoa); }
  .btn-soft:hover { transform: translateY(-2px); }
}

/* ── shared bits ── */
.eyebrow { display: inline-block; font-weight: 600; font-size: .85rem; letter-spacing: .12em; text-transform: uppercase; color: var(--pink-ink); background: var(--paper); border: 2px solid var(--cocoa); border-radius: 999px; padding: 3px 12px; margin: 0 0 14px; box-shadow: 0 3px 0 rgba(74, 54, 38, .12); }
.lede { font-size: 1.12rem; color: var(--cocoa-soft); max-width: 60ch; margin: 0 0 22px; }
.fine { font-size: .92rem; color: var(--cocoa-soft); margin: 18px 0 0; }
.crumbs { font-size: .9rem; color: var(--cocoa-soft); margin: 0 0 16px; }
.crumbs a { color: var(--cocoa-soft); text-decoration: none; font-weight: 700; }
.chips { list-style: none; display: flex; flex-wrap: wrap; gap: 8px; padding: 0; margin: 0 0 22px; }
.chips li { background: var(--paper); border: 2px solid var(--line); border-radius: 999px; padding: 4px 12px; font-weight: 700; font-size: .9rem; }
.text-link { font-weight: 800; text-decoration: none; }
.tag { color: var(--ink); font-weight: 800; }
.badge { display: inline-block; font-style: normal; font-size: .75rem; font-weight: 800; color: #fff; background: #8E3A5E; border-radius: 999px; padding: 1px 9px; margin-top: 6px; width: fit-content; }
.card { background: var(--paper); border: 3px solid var(--cocoa); border-radius: var(--r-lg); box-shadow: var(--chunk); }

/* ── Instagram-style profile ── */
.ig { max-width: 720px; margin: 0 auto; }
.ig-head { display: flex; align-items: center; gap: clamp(16px, 5vw, 44px); margin-bottom: 14px; }
.ig-avatar {
  flex: 0 0 auto; width: clamp(96px, 26vw, 150px); aspect-ratio: 1; border-radius: 50%; padding: 5px; border: 0; cursor: pointer;
  background: conic-gradient(from 210deg, var(--accent), var(--gold), var(--pink-deep), var(--lavender), var(--accent));
  box-shadow: 0 5px 0 rgba(74, 54, 38, .16); transition: transform .2s cubic-bezier(.2, .9, .3, 1.4);
}
.ig-avatar img { width: 100%; height: 100%; object-fit: cover; border-radius: 50%; border: 4px solid var(--paper); }
.ig-avatar:hover { transform: rotate(-3deg) scale(1.03); }
.ig-handle { margin: 0 0 2px; font-weight: 800; color: var(--cocoa-soft); font-size: .95rem; }
.ig-badge { font-size: .72rem; font-weight: 800; background: var(--pink-soft); border: 1.5px solid var(--line); color: #8E3A5E; border-radius: 999px; padding: 1px 8px; vertical-align: 2px; }
.ig-name { font-size: clamp(1.7rem, 5vw, 2.4rem); margin: 0 0 10px; }
.ig-stats { list-style: none; display: flex; gap: clamp(14px, 4vw, 28px); padding: 0; margin: 0; }
.ig-stats li { color: var(--cocoa-soft); font-size: .95rem; }
.ig-stats b { display: block; color: var(--cocoa); font-size: 1.25rem; font-weight: 700; line-height: 1.1; }
.ig-stats a { color: inherit; text-decoration: none; }
.ig-bio { margin: 0 0 16px; }
.ig-bio p { margin: 0 0 4px; }
.ig-role { font-weight: 800; color: var(--ink); }
.ig-quote { font-style: italic; color: var(--cocoa-soft); }
.ig-actions { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 10px; margin-bottom: 20px; }
.ig-highlights { display: flex; gap: 16px; overflow-x: auto; padding: 4px 2px 14px; margin: 0 -2px 8px; scrollbar-width: none; }
.ig-highlights::-webkit-scrollbar { display: none; }
.ig-hl { flex: 0 0 auto; display: grid; justify-items: center; gap: 6px; background: none; border: 0; padding: 0; cursor: pointer; color: var(--cocoa); font: inherit; }
.ig-hl-ring { width: 74px; height: 74px; border-radius: 50%; padding: 3px; background: linear-gradient(135deg, var(--accent), var(--gold)); box-shadow: 0 3px 0 rgba(74, 54, 38, .14); transition: transform .2s cubic-bezier(.2, .9, .3, 1.4); }
.ig-hl-ring img { width: 100%; height: 100%; object-fit: cover; border-radius: 50%; border: 3px solid var(--paper); }
.ig-hl:hover .ig-hl-ring { transform: translateY(-3px) rotate(-4deg); }
.ig-hl-label { font-size: .82rem; font-weight: 800; }
.ig-tabs { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 2px solid var(--line); margin-bottom: 12px; }
.ig-tabs button { background: none; border: 0; border-top: 3px solid transparent; margin-top: -2px; padding: 12px 4px; font: 800 .92rem "Nunito", sans-serif; color: var(--cocoa-soft); cursor: pointer; letter-spacing: .04em; }
.ig-tabs button[aria-selected="true"] { color: var(--cocoa); border-top-color: var(--cocoa); }
.ig-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 4px; }
.ig-tile { position: relative; display: block; aspect-ratio: 4 / 5; overflow: hidden; border-radius: 6px; background: var(--pink-soft); }
.ig-tile img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease, filter .35s ease; }
.ig-tile:hover img { transform: scale(1.04); filter: saturate(1.08); }
.ig-tile-mark { position: absolute; top: 8px; right: 8px; color: #fff; font-size: 1rem; text-shadow: 0 1px 3px rgba(0, 0, 0, .45); }
.ig-grid--small { grid-template-columns: repeat(6, 1fr); }
@media (max-width: 640px) { .ig-grid--small { grid-template-columns: repeat(3, 1fr); } }
.ig-empty { text-align: center; color: var(--cocoa-soft); padding: 40px 0; }
.ig-about p { max-width: 62ch; }
.mini-games { list-style: none; padding: 0; margin: 0; display: grid; gap: 10px; }
.mini-games a { display: flex; align-items: center; gap: 14px; padding: 10px 14px; border: 2px solid var(--cocoa); border-radius: var(--r-md); background: var(--paper); text-decoration: none; color: var(--cocoa); box-shadow: 0 4px 0 rgba(74, 54, 38, .14); }
.mini-games img { width: 52px; height: 52px; border-radius: 14px; background: var(--tile); padding: 4px; }
.mini-games b { display: block; font-family: "Fredoka", sans-serif; font-weight: 600; }
.mini-games small { color: var(--cocoa-soft); }

/* ── post viewer + post page ── */
.viewer, .story { border: 0; padding: 0; background: transparent; max-width: none; max-height: none; width: 100%; height: 100%; }
.viewer::backdrop { background: rgba(58, 38, 28, .72); backdrop-filter: blur(4px); }
.story::backdrop { background: #1f1510; }
.viewer-inner { position: relative; margin: auto; top: 50%; transform: translateY(-50%); width: min(960px, calc(100% - 24px)); max-height: calc(100% - 24px); display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); overflow: hidden; background: var(--paper); border: 3px solid var(--cocoa); border-radius: var(--r-lg); box-shadow: 0 8px 0 rgba(0, 0, 0, .25); animation: pop .28s cubic-bezier(.2, .9, .3, 1.3); }
@keyframes pop { from { transform: translateY(-46%) scale(.94); opacity: 0; } }
.viewer-close { position: absolute; top: 10px; right: 10px; z-index: 3; width: 40px; height: 40px; border-radius: 50%; border: 2px solid var(--cocoa); background: var(--paper); font: 800 1.1rem sans-serif; cursor: pointer; color: var(--cocoa); }
.viewer-side, .post-side { padding: 22px; display: flex; flex-direction: column; gap: 12px; min-height: 0; overflow: auto; }
.viewer-nav { display: flex; justify-content: space-between; margin-top: auto; }
.viewer-nav button { background: none; border: 0; font: 800 .95rem "Nunito", sans-serif; color: var(--ink); cursor: pointer; padding: 6px 0; }
.viewer-nav button[disabled] { visibility: hidden; }
@media (max-width: 760px) { .viewer-inner { grid-template-columns: 1fr; overflow: auto; } }
.post-author { display: flex; align-items: center; gap: 10px; text-decoration: none; color: var(--cocoa); }
.post-author img { width: 44px; height: 44px; border-radius: 50%; border: 2px solid var(--accent); object-fit: cover; }
.post-author small { display: block; color: var(--cocoa-soft); font-weight: 600; }
.post-caption { font: 600 1.2rem/1.45 "Nunito", sans-serif; margin: 4px 0 0; letter-spacing: 0; }
.post-date { margin: 0; color: var(--cocoa-soft); font-size: .88rem; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; }
.post-actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.post-also { margin: 0; font-size: .92rem; color: var(--cocoa-soft); }
.post-also a { font-weight: 800; text-decoration: none; }
.post-nav { display: flex; justify-content: space-between; font-weight: 800; margin-top: auto; }
.post-nav a { text-decoration: none; }
.post-card { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); overflow: hidden; background: var(--paper); border: 3px solid var(--cocoa); border-radius: var(--r-lg); box-shadow: var(--chunk); margin-bottom: 32px; }
@media (max-width: 760px) { .post-card { grid-template-columns: 1fr; } }
.more-title { font-size: 1.2rem; }
.carousel { position: relative; overflow: hidden; background: var(--pink-soft); aspect-ratio: 4 / 5; }
.carousel-track { display: flex; height: 100%; transition: transform .38s cubic-bezier(.2, .8, .2, 1); touch-action: pan-y; }
.carousel .slide { flex: 0 0 100%; width: 100%; height: 100%; object-fit: cover; }
.carousel-btn { position: absolute; top: 50%; transform: translateY(-50%); width: 36px; height: 36px; border-radius: 50%; border: 2px solid var(--cocoa); background: rgba(255, 251, 243, .92); font: 800 1.3rem/1 sans-serif; color: var(--cocoa); cursor: pointer; }
.carousel-btn.prev { left: 10px; } .carousel-btn.next { right: 10px; }
.carousel-btn[disabled] { opacity: 0; pointer-events: none; }
.carousel-dots { position: absolute; bottom: 12px; left: 0; right: 0; display: flex; justify-content: center; gap: 6px; }
.carousel-dots span { width: 7px; height: 7px; border-radius: 50%; background: rgba(255, 255, 255, .6); box-shadow: 0 0 0 1px rgba(74, 54, 38, .2); transition: transform .2s; }
.carousel-dots span.on { background: #fff; transform: scale(1.3); }
.react { display: inline-flex; align-items: center; gap: 6px; min-height: 46px; padding: 8px 16px; border-radius: 999px; border: 2px solid var(--cocoa); background: var(--paper); font: 800 .95rem "Nunito", sans-serif; color: var(--cocoa); cursor: pointer; box-shadow: 0 4px 0 rgba(74, 54, 38, .16); }
.react span:first-child { font-size: 1.25rem; transition: transform .3s cubic-bezier(.2, .9, .3, 1.6); color: var(--accent); }
.react[aria-pressed="true"] { background: var(--pink-soft); }
.react[aria-pressed="true"] span:first-child { transform: rotate(72deg) scale(1.25); color: var(--pink-deep); }
.petal-burst { position: absolute; inset: 0; pointer-events: none; z-index: 2; }
.petal { position: absolute; font-size: 22px; color: var(--pink-deep); animation: petal 1.1s cubic-bezier(.2, .7, .3, 1) forwards; text-shadow: 0 2px 0 rgba(255, 255, 255, .8); }
@keyframes petal { 0% { transform: translate(0, 0) scale(.3) rotate(0); opacity: 0; } 15% { opacity: 1; } 100% { transform: translate(var(--dx), var(--dy)) scale(1.1) rotate(var(--rot)); opacity: 0; } }

/* story viewer (highlights) */
.story-inner { position: relative; margin: auto; height: 100%; max-width: 480px; display: flex; flex-direction: column; justify-content: center; }
.story-bars { position: absolute; top: 12px; left: 12px; right: 12px; display: flex; gap: 4px; z-index: 2; }
.story-bars span { flex: 1; height: 3px; border-radius: 3px; background: rgba(255, 255, 255, .3); overflow: hidden; }
.story-bars i { display: block; height: 100%; width: 0; background: #fff; }
.story-bars .done i { width: 100%; }
.story-bars .now i { animation: bar 4.5s linear forwards; }
@keyframes bar { to { width: 100%; } }
.story-img { width: 100%; max-height: 82vh; object-fit: contain; border-radius: 18px; }
.story-cap { color: #fff; text-align: center; font: 700 1.05rem "Nunito", sans-serif; margin: 14px 12px 0; }
.story-hit { position: absolute; top: 0; bottom: 0; width: 40%; background: none; border: 0; cursor: pointer; z-index: 1; }
.story-hit.prev { left: 0; } .story-hit.next { right: 0; }
.story .viewer-close { top: 26px; }
@media (prefers-reduced-motion: reduce) { .story-bars .now i { animation: none; width: 100%; } .carousel-track { transition: none; } }

/* ── hero band + games ── */
.hero-band { position: relative; text-align: center; padding: 18px 0 36px; }
.hero-band .lede { margin-left: auto; margin-right: auto; }
.hero-band--short { padding-bottom: 20px; }
.hero-shots { display: flex; justify-content: center; margin-top: 34px; }
.hero-shots img { width: min(28vw, 190px); border: 3px solid var(--cocoa); border-radius: 26px; box-shadow: var(--chunk); background: var(--paper); }
.hero-shots img:nth-child(1) { transform: rotate(-7deg) translate(18px, 14px); }
.hero-shots img:nth-child(2) { z-index: 1; }
.hero-shots img:nth-child(3) { transform: rotate(7deg) translate(-18px, 14px); }
.game-section { margin: 40px 0; }
.section-blurb { color: var(--cocoa-soft); margin: -6px 0 16px; }
.game-grid { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 14px; }
.game-grid--compact { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); }
.game-card { height: 100%; display: flex; gap: 14px; align-items: center; padding: 14px; background: var(--paper); border: 3px solid var(--cocoa); border-radius: var(--r-md); box-shadow: var(--chunk); color: var(--cocoa); text-decoration: none; transition: transform .2s cubic-bezier(.2, .9, .3, 1.4), box-shadow .2s; }
.game-card:hover { transform: translateY(-3px) rotate(-.6deg); box-shadow: 0 8px 0 rgba(74, 54, 38, .16); }
.game-card-icon { flex: 0 0 72px; height: 72px; border-radius: 20px; background: var(--tile); border: 2px solid var(--cocoa); display: grid; place-items: center; box-shadow: inset 0 -4px 0 rgba(74, 54, 38, .12); }
.game-card-icon img { width: 56px; height: 56px; object-fit: contain; }
.game-card-copy { display: flex; flex-direction: column; }
.game-card-copy b { font-family: "Fredoka", sans-serif; font-weight: 600; font-size: 1.12rem; }
.game-card-copy small { color: var(--cocoa-soft); font-size: .9rem; line-height: 1.35; }
.game-page section { margin: 34px 0; }
.game-hero { display: grid; grid-template-columns: minmax(220px, 340px) 1fr; gap: clamp(22px, 5vw, 56px); align-items: center; }
.phone { margin: 0; padding: 10px; background: var(--cocoa); border-radius: 44px; box-shadow: 0 10px 0 rgba(74, 54, 38, .2), 0 24px 50px rgba(74, 54, 38, .18); transform: rotate(-2deg); }
.phone img { border-radius: 34px; width: 100%; }
.game-hero-icon { display: inline-grid; place-items: center; width: 88px; height: 88px; border-radius: 26px; background: var(--tile); border: 3px solid var(--cocoa); box-shadow: var(--chunk); margin-bottom: 14px; }
.game-hero-icon img { width: 68px; height: 68px; }
.h1-sub { display: block; font-size: .5em; font-weight: 600; color: var(--pink-ink); margin-top: 6px; }
@media (max-width: 720px) { .game-hero { grid-template-columns: 1fr; } .phone { max-width: 280px; margin: 0 auto; order: 2; } }
.steps { counter-reset: step; list-style: none; padding: 0; margin: 0; display: grid; gap: 10px; }
.steps li { counter-increment: step; position: relative; padding: 12px 16px 12px 58px; background: var(--paper); border: 2px solid var(--line); border-radius: var(--r-md); }
.steps li::before { content: counter(step); position: absolute; left: 12px; top: 50%; transform: translateY(-50%); width: 32px; height: 32px; display: grid; place-items: center; border-radius: 50%; background: var(--tile); border: 2px solid var(--cocoa); font: 700 1rem "Fredoka", sans-serif; }
.ticks { list-style: none; padding: 0; margin: 0; display: grid; gap: 8px; }
.ticks li::before { content: "✦"; color: var(--pink-deep); margin-right: 10px; }
.who { display: flex; flex-wrap: wrap; gap: 14px; }
.who-card { display: flex; align-items: center; gap: 14px; padding: 12px 20px 12px 12px; background: var(--paper); border: 3px solid var(--cocoa); border-radius: 999px; box-shadow: var(--chunk); color: var(--cocoa); text-decoration: none; }
.who-card img { width: 64px; height: 64px; border-radius: 50%; border: 3px solid var(--accent); object-fit: cover; }
.who-card b { display: block; font-family: "Fredoka", sans-serif; font-weight: 600; }
.who-card small { color: var(--cocoa-soft); }
details { background: var(--paper); border: 2px solid var(--line); border-radius: var(--r-md); padding: 0 18px; margin-bottom: 10px; }
details[open] { border-color: var(--cocoa); box-shadow: 0 4px 0 rgba(74, 54, 38, .12); }
summary { cursor: pointer; font-weight: 800; padding: 14px 0; list-style: none; display: flex; justify-content: space-between; gap: 12px; }
summary::-webkit-details-marker { display: none; }
summary::after { content: "+"; font: 700 1.3rem/1 "Fredoka", sans-serif; color: var(--pink-deep); transition: transform .2s; }
details[open] summary::after { transform: rotate(45deg); }
details p { margin: 0 0 16px; color: var(--cocoa-soft); }
.faq { max-width: 760px; margin: 0 auto; }
.cta-band { text-align: center; margin: 48px auto 0; padding: 32px 20px; max-width: 760px; background: var(--pink-soft); border: 3px solid var(--cocoa); border-radius: var(--r-lg); box-shadow: var(--chunk); }

/* ── footer (mirrors landing) ── */
.footer { text-align: center; padding: 40px 24px 56px; background: var(--pink-soft); border-top: 3px solid var(--cocoa); }
.footer-brand { font: 700 1.3rem "Fredoka", sans-serif; margin: 0 0 8px; }
.footer p, .footer nav { margin: 6px 0; font-size: .92rem; color: var(--cocoa-soft); }
.footer a { color: var(--cocoa); font-weight: 700; text-decoration: none; }
.footer a:hover { color: var(--pink-deep); }
.footer-copy { font-size: .85rem; margin-top: 12px !important; }

/* ── alternatives ── */
.compare section { margin: 34px 0; }
.compare .hero-band { padding-top: 0; }
.who--center { justify-content: center; }
.points { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 12px; }
.points li { background: var(--paper); border: 3px solid var(--cocoa); border-radius: var(--r-md); box-shadow: var(--chunk); padding: 16px 18px; }
.points b { display: block; font: 600 1.12rem "Fredoka", sans-serif; margin-bottom: 4px; }
.points span { color: var(--cocoa-soft); }
