:root {
  --yellow: #ffc928;
  --orange: #f28a18;
  --green: #2f6b2f;
  --teal: #1198a7;
  --brown: #3a210c;
  --cream: #fff5d8;
  --paper: #fffaf0;
  --ink: #17213a;
  --shadow: 0 18px 45px rgba(58, 33, 12, .16);
  --radius: 28px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ink);
  background: linear-gradient(#fff8e8, #fffdf7);
}
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  display: grid;
  grid-template-columns: 240px 1fr auto;
  align-items: center;
  gap: 24px;
  padding: 16px clamp(18px, 4vw, 56px);
  background: rgba(255, 250, 240, .93);
  backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(58, 33, 12, .08);
  box-shadow: 0 6px 22px rgba(58, 33, 12, .06);
}
.logo img { width: 210px; height: auto; }
.main-nav {
  display: flex;
  justify-content: center;
  gap: clamp(16px, 2vw, 34px);
}
.main-nav a {
  display: grid;
  justify-items: center;
  align-items: center;
  gap: 5px;
  font-weight: 800;
  font-size: 15px;
  color: var(--brown);
  transition: transform .16s ease, color .16s ease;
}
.main-nav a:hover { transform: translateY(-2px); color: var(--orange); }
.main-nav img { width: 76px; height: 76px; object-fit: contain; }
.main-nav .active { color: var(--orange); }
.header-cta,
.btn,
.signup button {
  border: 0;
  border-radius: 999px;
  background: linear-gradient(#ffd84b, #ffb515);
  color: #2b1908;
  font-weight: 900;
  box-shadow: 0 8px 0 #d98108, var(--shadow);
  cursor: pointer;
}
.header-cta { padding: 17px 24px; text-align: center; white-space: nowrap; }
.menu-toggle { display: none; }

.hero {
  min-height: 760px;
  display: grid;
  align-items: center;
  padding: 96px clamp(22px, 6vw, 94px);
  background-image:
    linear-gradient(90deg, rgba(255, 250, 238, .98) 0%, rgba(255, 250, 238, .88) 29%, rgba(255, 250, 238, .20) 55%, rgba(255, 250, 238, .02) 74%),
    url("assets/hero/hero-alt.webp");
  background-image: image-set(url("assets/hero/hero-alt.avif") type("image/avif"), url("assets/hero/hero-alt.webp") type("image/webp"));
  background-size: cover;
  background-position: center right;
  border-bottom-left-radius: 50% 7%;
  border-bottom-right-radius: 50% 7%;
  overflow: hidden;
}
.hero-copy { max-width: 620px; }
.eyebrow, .small-label {
  margin: 0 0 10px;
  color: var(--green);
  font-weight: 900;
  letter-spacing: .02em;
}
h1, h2 {
  margin: 0;
  color: var(--brown);
  line-height: .98;
  letter-spacing: -.04em;
}
h1 { font-size: clamp(48px, 8vw, 104px); }
h1 span { color: var(--green); font-size: .72em; }
h2 { font-size: clamp(34px, 5vw, 64px); }
.hero-text, .section-heading p, .text-card p, .club p {
  font-size: clamp(18px, 2vw, 23px);
  line-height: 1.45;
}
.hero-actions { display: flex; gap: 18px; flex-wrap: wrap; margin-top: 32px; }
.btn { display: inline-flex; align-items: center; gap: 12px; padding: 20px 28px; font-size: 20px; }
.btn img { width: 36px; height: 36px; object-fit: contain; }
.btn-secondary { background: linear-gradient(#fffdf6, #fff1d3); box-shadow: 0 8px 0 #d7c5a5, var(--shadow); }

.section { padding: 74px clamp(22px, 6vw, 94px); }
.section-cream { background: var(--cream); }
.section-heading { max-width: 840px; margin: 0 auto 36px; text-align: center; }
.banner-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; max-width: 1320px; margin: auto; }
.banner-card img, .mini-banner-grid img { width: 100%; border-radius: 22px; box-shadow: var(--shadow); transition: transform .18s ease, box-shadow .18s ease; }
.banner-card:hover img, .mini-banner-grid a:hover img { transform: translateY(-5px); box-shadow: 0 22px 55px rgba(58, 33, 12, .22); }

.split { display: grid; grid-template-columns: minmax(0, 1fr) minmax(340px, 520px); gap: 40px; align-items: center; max-width: 1280px; margin: auto; }
.text-card, .book-panel, .club {
  background: var(--paper);
  border: 1px solid rgba(58, 33, 12, .1);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
}
.text-card { padding: clamp(28px, 4vw, 52px); }
.check-list { display: grid; gap: 12px; margin: 24px 0; padding: 0; list-style: none; font-weight: 800; }
.check-list li::before { content: '⭐ '; }
.book-panel { padding: 36px; min-height: 420px; display: grid; place-items: center; background: linear-gradient(135deg, #fff8e5, #eaf7f4); }
.book-placeholder { display: grid; justify-items: center; gap: 14px; text-align: center; color: var(--brown); }
.book-placeholder img { width: 160px; }
.book-placeholder strong { font-size: 28px; }

.mini-banner-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; max-width: 1320px; margin: auto; }
.parents { background: #fff; }
.benefits { max-width: 1120px; margin: auto; display: grid; grid-template-columns: repeat(5, 1fr); gap: 18px; }
.benefits div { background: var(--paper); border-radius: 22px; padding: 24px 16px; display: grid; justify-items: center; gap: 10px; text-align: center; box-shadow: var(--shadow); }
.benefits img { width: 70px; height: 70px; object-fit: contain; }

.club { display: grid; grid-template-columns: 1.2fr 1fr; gap: 24px; align-items: center; max-width: 1160px; margin: 70px auto; padding: clamp(28px, 4vw, 52px); }
.signup { display: flex; gap: 12px; background: white; padding: 10px; border-radius: 999px; box-shadow: inset 0 0 0 1px rgba(58, 33, 12, .08); }
.signup input { min-width: 0; flex: 1; border: 0; font-size: 16px; padding: 14px 18px; outline: none; background: transparent; }
.signup button { padding: 16px 22px; box-shadow: none; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }
.site-footer { padding: 36px clamp(22px, 6vw, 94px); display: grid; gap: 20px; justify-items: center; background: #e8f6ef; color: var(--green); font-weight: 700; }
.site-footer img { width: 160px; }
.site-footer nav { display: flex; flex-wrap: wrap; gap: 18px; justify-content: center; }

@media (max-width: 1220px) {
  .site-header { grid-template-columns: 200px 1fr auto; }
  .logo img { width: 185px; }
  .main-nav img { width: 62px; height: 62px; }
  .main-nav { gap: 14px; }
  .main-nav a { font-size: 13px; }
  .header-cta { padding: 15px 18px; font-size: 14px; }
}

@media (max-width: 980px) {
  .site-header {
    grid-template-columns: 160px 1fr auto;
    gap: 12px;
    padding: 12px 18px;
  }
  .logo img { width: 155px; }
  .menu-toggle {
    display: block;
    justify-self: end;
    border: 0;
    background: #fff0bd;
    color: var(--brown);
    border-radius: 16px;
    padding: 11px 15px;
    font-size: 24px;
    font-weight: 900;
    box-shadow: 0 4px 0 #e1c679;
  }
  .header-cta { display: none; }
  .main-nav {
    display: none;
    position: absolute;
    left: 14px;
    right: 14px;
    top: calc(100% + 8px);
    background: rgba(255, 250, 240, .98);
    border: 1px solid rgba(58, 33, 12, .10);
    border-radius: 22px;
    padding: 18px;
    box-shadow: var(--shadow);
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
  }
  body.nav-open .main-nav { display: grid; }
  .main-nav img { width: 56px; height: 56px; }
  .main-nav a { font-size: 12px; }

  .hero {
    min-height: unset;
    display: block;
    padding: min(112vw, 535px) 18px 42px;
    background-image:
      linear-gradient(180deg, rgba(255,250,238,.00) 0%, rgba(255,250,238,.04) 45%, rgba(255,250,238,.94) 72%, rgba(255,250,238,1) 100%),
      url("assets/hero/hero-desktop.webp");
    background-image: image-set(url("assets/hero/hero-desktop.avif") type("image/avif"), url("assets/hero/hero-desktop.webp") type("image/webp"));
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center top;
    border-bottom-left-radius: 38% 4%;
    border-bottom-right-radius: 38% 4%;
  }
  .hero-copy {
    max-width: 690px;
    margin: 0 auto;
    padding: 24px;
    background: rgba(255, 250, 240, .92);
    border: 1px solid rgba(58, 33, 12, .08);
    border-radius: 28px;
    box-shadow: var(--shadow);
    text-align: center;
  }
  .hero-actions { justify-content: center; }
  .banner-grid, .split, .club { grid-template-columns: 1fr; }
  .mini-banner-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .benefits { grid-template-columns: repeat(2, 1fr); }
  .book-panel { min-height: 300px; }
}

@media (max-width: 560px) {
  .site-header { grid-template-columns: 138px 1fr auto; padding: 9px 12px; }
  .logo img { width: 132px; }
  .menu-toggle { padding: 9px 12px; font-size: 22px; }
  .main-nav { grid-template-columns: repeat(2, 1fr); top: calc(100% + 6px); }
  .main-nav img { width: 50px; height: 50px; }
  h1 { font-size: 42px; }
  h2 { font-size: 34px; }
  .hero { padding-top: min(122vw, 500px); padding-left: 12px; padding-right: 12px; }
  .hero-copy { padding: 20px 16px; border-radius: 24px; }
  .hero-text, .section-heading p, .text-card p, .club p { font-size: 17px; }
  .btn { width: 100%; justify-content: center; padding: 17px 20px; font-size: 18px; }
  .section { padding: 52px 16px; }
  .banner-grid, .mini-banner-grid, .benefits { grid-template-columns: 1fr; }
  .book-placeholder img { width: 120px; }
  .book-placeholder strong { font-size: 23px; }
  .signup { border-radius: 24px; flex-direction: column; }
  .signup button { border-radius: 18px; }
  .site-footer img { width: 135px; }
}

/* v5 additions */
.button-row { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 28px; }
.real-cover-panel { background: linear-gradient(135deg, #fff8e5, #dff6ff); }
.book-cover { width: min(100%, 420px); border-radius: 22px; box-shadow: 0 22px 55px rgba(58, 33, 12, .25); }
.activity-cards { max-width: 1240px; margin: 0 auto; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; }
.activity-card { background: var(--paper); border-radius: 26px; padding: 26px 20px; text-align: center; box-shadow: var(--shadow); border: 1px solid rgba(58, 33, 12, .08); }
.activity-card img { width: 82px; height: 82px; object-fit: contain; margin: 0 auto 12px; }
.activity-card h3 { margin: 0 0 8px; color: var(--brown); font-size: 24px; }
.activity-card p { margin: 0; line-height: 1.35; font-size: 17px; }
.after-cards { margin-top: 34px; }
.meet { background: linear-gradient(135deg, #e9f8ef, #fff7dd); }
.meet-card { max-width: 1180px; margin: auto; display: grid; grid-template-columns: 1.3fr .9fr; gap: 34px; align-items: center; background: rgba(255,250,240,.78); border: 1px solid rgba(58, 33, 12, .08); border-radius: 32px; padding: clamp(28px, 5vw, 58px); box-shadow: var(--shadow); }
.meet-card p { font-size: clamp(18px, 2vw, 23px); line-height: 1.45; }
.trait-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.trait-grid span { display: grid; place-items: center; min-height: 72px; background: white; border-radius: 999px; color: var(--green); font-weight: 900; font-size: 20px; box-shadow: 0 10px 24px rgba(58, 33, 12, .10); }
.trait-grid span:last-child { grid-column: 1 / -1; background: linear-gradient(#ffd84b, #ffb515); color: #2b1908; }

@media (max-width: 980px) {
  .activity-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .meet-card { grid-template-columns: 1fr; text-align: center; }
}

@media (max-width: 560px) {
  .button-row .btn { width: 100%; }
  .activity-cards { grid-template-columns: 1fr; }
  .activity-card img { width: 72px; height: 72px; }
  .trait-grid { grid-template-columns: 1fr; }
  .trait-grid span:last-child { grid-column: auto; }
}


/* v6 subpages */
.subhero {
  min-height: 460px;
  display: grid;
  align-items: center;
  padding: 90px clamp(22px, 6vw, 94px);
  background-image:
    linear-gradient(90deg, rgba(255,250,238,.98) 0%, rgba(255,250,238,.88) 34%, rgba(255,250,238,.18) 64%, rgba(255,250,238,.02) 100%),
    url("assets/hero/hero-alt.webp");
  background-image: image-set(url("assets/hero/hero-alt.avif") type("image/avif"), url("assets/hero/hero-alt.webp") type("image/webp"));
  background-size: cover;
  background-position: center right;
  border-bottom-left-radius: 45% 6%;
  border-bottom-right-radius: 45% 6%;
}
.subhero-copy { max-width: 720px; }
.subhero-copy h1 { font-size: clamp(44px, 7vw, 92px); }
.subhero-copy p { font-size: clamp(18px, 2vw, 24px); line-height: 1.45; }
.world-grid {
  max-width: 1320px;
  margin: auto;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
}
.world-card, .contact-card {
  background: var(--paper);
  border: 1px solid rgba(58,33,12,.1);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  padding: 28px;
}
.world-card img { border-radius: 22px; margin-bottom: 22px; box-shadow: 0 12px 30px rgba(58,33,12,.12); }
.world-card h2 { font-size: clamp(30px, 4vw, 46px); margin-bottom: 12px; }
.world-card p { font-size: 18px; line-height: 1.45; }
.world-card .btn { margin-top: 12px; }
.page-cards { margin-top: 10px; }
.small-link { display: inline-block; margin-top: 14px; font-weight: 900; color: var(--orange); }
.contact-card { max-width: 880px; margin: auto; }
.contact-form { display: grid; gap: 18px; margin-top: 24px; }
.contact-form label { display: grid; gap: 8px; font-weight: 900; color: var(--brown); }
.contact-form input, .contact-form textarea {
  width: 100%;
  border: 1px solid rgba(58,33,12,.18);
  border-radius: 18px;
  padding: 16px 18px;
  font: inherit;
  background: #fff;
}
.contact-form textarea { resize: vertical; }
@media (max-width: 980px) {
  .subhero {
    min-height: unset;
    padding: min(80vw, 420px) 18px 42px;
    background-image:
      linear-gradient(180deg, rgba(255,250,238,.00) 0%, rgba(255,250,238,.08) 48%, rgba(255,250,238,.96) 76%, rgba(255,250,238,1) 100%),
      url("assets/hero/hero-desktop.webp");
    background-image: image-set(url("assets/hero/hero-desktop.avif") type("image/avif"), url("assets/hero/hero-desktop.webp") type("image/webp"));
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center top;
  }
  .subhero-copy {
    background: rgba(255,250,240,.92);
    border: 1px solid rgba(58,33,12,.08);
    border-radius: 28px;
    padding: 24px;
    box-shadow: var(--shadow);
    text-align: center;
    margin: 0 auto;
  }
  .world-grid, .activity-cards { grid-template-columns: 1fr; }
}


/* v7 polish and SEO additions */
.lead-copy { font-size: clamp(20px, 2.2vw, 26px) !important; font-weight: 650; color: #2f2a1f; }
.note-copy { margin-top: 18px; padding: 14px 16px; border-radius: 16px; background: #fff4cc; font-size: 15px !important; color: #5c3b08; }
.pill { display: inline-flex; margin-top: 12px; padding: 10px 16px; border-radius: 999px; background: linear-gradient(#ffd84b,#ffb515); color: #2b1908; font-weight: 900; }
.compact-world-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 1120px; }
.download-panel { max-width: 1120px; margin: 38px auto 0; display: grid; grid-template-columns: 1fr auto; gap: 24px; align-items: center; background: var(--paper); border: 1px solid rgba(58,33,12,.1); border-radius: var(--radius); padding: clamp(26px, 4vw, 44px); box-shadow: var(--shadow); }
.download-panel h2 { font-size: clamp(32px, 4vw, 54px); }
.download-panel p { font-size: 18px; line-height: 1.45; }
@media (max-width: 780px) { .download-panel, .compact-world-grid { grid-template-columns: 1fr; } .download-panel { text-align: center; } }

/* v8 Explore + Meet Morfu polish */
.adventure-worlds {
  max-width: 1240px;
  margin: 0 auto;
  display: grid;
  gap: 26px;
}
.adventure-world {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(22px, 4vw, 44px);
  align-items: center;
  background: var(--paper);
  border: 1px solid rgba(58,33,12,.10);
  border-radius: 34px;
  padding: clamp(20px, 3vw, 34px);
  box-shadow: var(--shadow);
}
.adventure-world:nth-child(even) img { order: 2; }
.adventure-world img {
  width: 100%;
  border-radius: 26px;
  box-shadow: 0 16px 34px rgba(58,33,12,.16);
}
.adventure-world h2 { font-size: clamp(34px, 4vw, 58px); margin: 10px 0 10px; }
.adventure-world p { font-size: clamp(17px, 1.7vw, 22px); line-height: 1.45; }
.status-pill {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 9px 14px;
  font-weight: 950;
  font-size: 14px;
  letter-spacing: .01em;
}
.status-pill.available { background: linear-gradient(#bdf57a,#64c83a); color: #173810; }
.status-pill.coming { background: #fff1bf; color: #7c4b00; }
.small-gap { gap: 12px; }
.map-note { background: linear-gradient(180deg, #fffaf0, #eaf8f0); }
.map-panel { max-width: 1180px; }
.story-section { background: linear-gradient(135deg, #e9f8ef, #fff7dd); }
.story-layout {
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: .9fr 1.25fr;
  gap: clamp(24px, 4vw, 50px);
  align-items: center;
}
.character-card {
  background: rgba(255,250,240,.86);
  border: 1px solid rgba(58,33,12,.08);
  border-radius: 34px;
  padding: clamp(26px, 4vw, 44px);
  text-align: center;
  box-shadow: var(--shadow);
}
.big-character-card img {
  width: min(240px, 70%);
  margin: 0 auto 18px;
  filter: drop-shadow(0 16px 26px rgba(58,33,12,.18));
}
.character-card h2, .story-copy h2 { font-size: clamp(34px, 4vw, 58px); }
.character-card p, .story-copy p { font-size: clamp(18px, 1.8vw, 23px); line-height: 1.48; }
.story-copy {
  background: rgba(255,255,255,.62);
  border-radius: 34px;
  padding: clamp(26px, 4vw, 44px);
  border: 1px solid rgba(58,33,12,.08);
}
.trait-grid-wide { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 24px; }
.trait-grid-wide span:last-child { grid-column: auto; }
.kit-grid {
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 22px;
}
.kit-grid article {
  background: var(--paper);
  border: 1px solid rgba(58,33,12,.10);
  border-radius: 28px;
  padding: 24px 18px;
  text-align: center;
  box-shadow: var(--shadow);
}
.kit-grid img { width: 94px; height: 94px; object-fit: contain; margin: 0 auto 14px; }
.kit-grid h3 { font-size: 24px; margin: 0 0 8px; color: var(--brown); }
.kit-grid p { font-size: 16px; line-height: 1.4; margin: 0; }
@media (max-width: 900px) {
  .adventure-world, .story-layout { grid-template-columns: 1fr; }
  .adventure-world:nth-child(even) img { order: initial; }
  .kit-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .trait-grid-wide { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .adventure-world { padding: 16px; border-radius: 24px; }
  .kit-grid { grid-template-columns: 1fr; }
  .trait-grid-wide { grid-template-columns: 1fr; }
}

/* v9 For Parents + Explorer Club */
.trust-section { background: linear-gradient(180deg, #fffaf0, #eef9f0); }
.parent-grid {
  max-width: 1220px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}
.parent-card {
  background: var(--paper);
  border: 1px solid rgba(58,33,12,.10);
  border-radius: 28px;
  padding: 26px 22px;
  text-align: center;
  box-shadow: var(--shadow);
}
.parent-card img { width: 82px; height: 82px; object-fit: contain; margin: 0 auto 12px; }
.parent-card h3 { color: var(--brown); font-size: 26px; margin: 0 0 8px; }
.parent-card p { margin: 0; font-size: 17px; line-height: 1.45; }
.parent-split {
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.35fr .8fr;
  gap: clamp(22px, 4vw, 44px);
  align-items: center;
}
.parent-note-card {
  background: linear-gradient(180deg, #fff9df, #e7f7e9);
  border: 1px solid rgba(58,33,12,.10);
  border-radius: 34px;
  padding: clamp(28px, 4vw, 46px);
  text-align: center;
  box-shadow: var(--shadow);
}
.parent-note-card img { width: min(170px, 70%); margin: 0 auto 18px; filter: drop-shadow(0 14px 22px rgba(58,33,12,.18)); }
.parent-note-card h3 { font-size: clamp(30px, 4vw, 44px); color: var(--brown); margin: 0 0 12px; }
.parent-note-card p { font-size: 19px; line-height: 1.45; }
.faq-section { background: #fffaf0; }
.faq-grid {
  max-width: 1120px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}
.faq-grid article {
  background: var(--paper);
  border-radius: 24px;
  padding: 24px;
  border: 1px solid rgba(58,33,12,.10);
  box-shadow: 0 12px 30px rgba(58,33,12,.08);
}
.faq-grid h3 { font-size: 23px; color: var(--green); margin: 0 0 10px; }
.faq-grid p { margin: 0; font-size: 17px; line-height: 1.45; }
.club-hero-section { background: linear-gradient(135deg, #e8f7ff, #fff4cc); }
.club-join-card {
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: clamp(24px, 4vw, 48px);
  align-items: center;
  background: rgba(255,250,240,.86);
  border: 1px solid rgba(58,33,12,.10);
  border-radius: 36px;
  padding: clamp(28px, 5vw, 58px);
  box-shadow: var(--shadow);
}
.club-join-card h2 { font-size: clamp(36px, 5vw, 64px); }
.club-perks {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 24px;
}
.club-perks span {
  display: flex;
  align-items: center;
  gap: 10px;
  background: white;
  border-radius: 18px;
  padding: 12px 14px;
  font-weight: 900;
  color: var(--brown);
  box-shadow: 0 10px 22px rgba(58,33,12,.08);
}
.club-perks img { width: 44px; height: 44px; object-fit: contain; }
.club-signup {
  display: grid;
  gap: 12px;
  background: white;
  border-radius: 28px;
  padding: 24px;
  box-shadow: 0 18px 40px rgba(58,33,12,.12);
  border: 1px solid rgba(58,33,12,.10);
}
.club-signup label { font-weight: 900; color: var(--brown); }
.club-signup label span { font-weight: 700; color: #7a6a58; }
.club-signup input {
  border: 1px solid rgba(58,33,12,.18);
  border-radius: 16px;
  padding: 15px 16px;
  font: inherit;
}
.club-signup button {
  border: 0;
  border-radius: 18px;
  padding: 16px 20px;
  font-weight: 950;
  font-size: 18px;
  color: #2b1908;
  background: linear-gradient(#ffd84b,#ffb515);
  box-shadow: 0 12px 26px rgba(242,149,0,.28);
  cursor: pointer;
}
.form-note { margin: 4px 0 0; font-size: 14px; color: #6b5b48; line-height: 1.35; }
.hidden { display: none; }
.backpack-grid {
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 22px;
}
.backpack-grid article {
  background: var(--paper);
  border-radius: 28px;
  padding: 25px 18px;
  text-align: center;
  box-shadow: var(--shadow);
  border: 1px solid rgba(58,33,12,.10);
}
.backpack-grid img { width: 88px; height: 88px; object-fit: contain; margin: 0 auto 12px; }
.backpack-grid h3 { font-size: 24px; margin: 0 0 8px; color: var(--brown); }
.backpack-grid p { margin: 0; font-size: 16px; line-height: 1.4; }
@media (max-width: 980px) {
  .parent-grid, .backpack-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .parent-split, .club-join-card { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
  .parent-grid, .faq-grid, .club-perks, .backpack-grid { grid-template-columns: 1fr; }
  .club-join-card { padding: 20px; border-radius: 26px; }
}


/* v10 final polish */
.contact-layout {
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.25fr .75fr;
  gap: clamp(24px, 4vw, 44px);
  align-items: start;
}
.contact-side-card, .legal-card, .thank-card {
  background: var(--paper);
  border: 1px solid rgba(58,33,12,.10);
  border-radius: 34px;
  padding: clamp(26px, 4vw, 46px);
  box-shadow: var(--shadow);
}
.contact-side-card { text-align: center; }
.contact-side-card img { width: min(160px, 70%); margin: 0 auto 16px; filter: drop-shadow(0 14px 22px rgba(58,33,12,.18)); }
.contact-side-card h2 { font-size: clamp(30px, 4vw, 46px); margin-bottom: 12px; }
.legal-card { max-width: 980px; margin: 0 auto; }
.legal-card h2 { margin-bottom: 18px; }
.legal-card h3 { color: var(--green); font-size: 26px; margin: 30px 0 8px; }
.legal-card p { font-size: 18px; line-height: 1.62; }
.text-link { color: var(--teal); font-weight: 900; text-decoration: underline; text-underline-offset: 3px; }
.thank-section { min-height: 72vh; display: grid; align-items: center; }
.thank-card { max-width: 840px; margin: 0 auto; text-align: center; }
.thank-card img { width: 150px; margin: 0 auto 18px; filter: drop-shadow(0 14px 22px rgba(58,33,12,.18)); }
.thank-card h1 { font-size: clamp(46px, 7vw, 88px); margin-bottom: 16px; }
.thank-card p { font-size: clamp(18px, 2vw, 23px); line-height: 1.45; }
.centered { justify-content: center; }
.site-footer nav a:last-child { color: var(--teal); }
@media (max-width: 900px) { .contact-layout { grid-template-columns: 1fr; } }

/* v17 improved Books page */
.book-hero-v17 {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, .8fr);
  gap: clamp(28px, 5vw, 70px);
  align-items: center;
  padding: clamp(54px, 7vw, 96px) clamp(22px, 6vw, 94px);
  background-image:
    radial-gradient(circle at 72% 20%, rgba(255, 219, 91, .34), transparent 34%),
    radial-gradient(circle at 15% 82%, rgba(17, 152, 167, .16), transparent 34%),
    linear-gradient(135deg, #fff8e7 0%, #e9fbff 52%, #fff4cd 100%);
  border-bottom-left-radius: 45% 5%;
  border-bottom-right-radius: 45% 5%;
}
.book-hero-copy-v17 { max-width: 790px; }
.book-hero-copy-v17 h1 { font-size: clamp(48px, 7vw, 96px); }
.book-badges-v17 {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: 26px 0 4px;
}
.book-badges-v17 span {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 10px 15px;
  background: rgba(255,255,255,.82);
  border: 1px solid rgba(58,33,12,.10);
  color: var(--green);
  font-weight: 950;
  box-shadow: 0 10px 24px rgba(58,33,12,.08);
}
.book-cover-showcase-v17 {
  display: grid;
  justify-items: center;
  gap: 14px;
  padding: clamp(24px, 4vw, 42px);
  background: rgba(255,250,240,.78);
  border: 1px solid rgba(58,33,12,.10);
  border-radius: 36px;
  box-shadow: var(--shadow);
}
.book-cover-showcase-v17 .book-cover { width: min(100%, 390px); }
.book-cover-showcase-v17 p {
  margin: 0;
  color: var(--green);
  font-weight: 950;
  text-align: center;
}
.book-feature-grid-v17 {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 22px;
}
.book-feature-grid-v17 article,
.book-story-steps-v17 article {
  background: var(--paper);
  border: 1px solid rgba(58,33,12,.10);
  border-radius: 28px;
  padding: 26px 20px;
  text-align: center;
  box-shadow: var(--shadow);
}
.book-feature-grid-v17 img {
  width: 82px;
  height: 82px;
  object-fit: contain;
  margin: 0 auto 12px;
}
.book-feature-grid-v17 h3,
.book-story-steps-v17 h3 {
  margin: 0 0 8px;
  color: var(--brown);
  font-size: 24px;
}
.book-feature-grid-v17 p,
.book-story-steps-v17 p {
  margin: 0;
  font-size: 17px;
  line-height: 1.42;
}
.book-parent-section-v17 { background: linear-gradient(180deg, #fffdf7, #eef9f0); }
.book-parent-card-v17 {
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.2fr .8fr;
  gap: clamp(24px, 4vw, 48px);
  align-items: center;
  background: rgba(255,250,240,.86);
  border: 1px solid rgba(58,33,12,.10);
  border-radius: 36px;
  padding: clamp(28px, 5vw, 58px);
  box-shadow: var(--shadow);
}
.book-note-mini-v17 { align-self: stretch; display: grid; align-content: center; }
.book-story-steps-v17 {
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}
.book-story-steps-v17 span {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  margin: 0 auto 14px;
  border-radius: 50%;
  background: linear-gradient(#ffd84b,#ffb515);
  color: #2b1908;
  font-weight: 950;
  font-size: 24px;
  box-shadow: 0 8px 0 #d98108;
}
.book-amazon-section-v17 { background: #fffaf0; }
.book-amazon-panel-v17 { margin-top: 0; }
@media (max-width: 980px) {
  .book-hero-v17,
  .book-parent-card-v17 { grid-template-columns: 1fr; text-align: center; }
  .book-badges-v17,
  .book-hero-v17 .button-row { justify-content: center; }
  .book-feature-grid-v17,
  .book-story-steps-v17 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .book-hero-v17 { padding: 44px 16px; border-bottom-left-radius: 28% 3%; border-bottom-right-radius: 28% 3%; }
  .book-feature-grid-v17,
  .book-story-steps-v17 { grid-template-columns: 1fr; }
  .book-parent-card-v17 { padding: 22px; border-radius: 28px; }
}

.pack-download-panel { grid-template-columns: 160px 1fr auto; }
.pack-cover-preview { width: 160px; border-radius: 22px; box-shadow: 0 18px 35px rgba(58,33,12,.18); border: 6px solid rgba(255,255,255,.85); transform: rotate(-2deg); }
@media (max-width: 900px) { .pack-download-panel { grid-template-columns: 120px 1fr; } .pack-download-panel .btn { grid-column: 1 / -1; justify-self: center; } .pack-cover-preview { width: 120px; } }
@media (max-width: 620px) { .pack-download-panel { grid-template-columns: 1fr; text-align: center; } .pack-cover-preview { width: 170px; margin: 0 auto; } }


/* v19 — stronger homepage, Amazon linking, SEO/parents polish */
.hero-actions-v19 { display:flex; flex-wrap:wrap; gap:16px; align-items:center; }
.btn-soft { background: rgba(255,255,255,.86); color: var(--green); box-shadow: 0 8px 0 rgba(47,107,47,.20), var(--shadow); border: 2px solid rgba(47,107,47,.18); }
.home-amazon-strip-v19 { background: linear-gradient(180deg, #fffaf0, #eff9f0); padding-top: 56px; padding-bottom: 56px; }
.home-amazon-card-v19 { max-width: 1160px; margin: 0 auto; display:grid; grid-template-columns: 260px 1fr; gap: clamp(24px,4vw,50px); align-items:center; background: rgba(255,255,255,.82); border:1px solid rgba(58,33,12,.10); border-radius: 38px; padding: clamp(24px,4vw,48px); box-shadow: var(--shadow); }
.home-amazon-card-v19 h2 { margin: 0 0 12px; font-size: clamp(32px,4vw,54px); line-height:1.02; color: var(--brown); }
.home-amazon-card-v19 p { font-size: 19px; line-height:1.48; }
.home-amazon-cover-v19 { width: 250px; border-radius: 20px; box-shadow: 0 22px 45px rgba(58,33,12,.20); border: 8px solid rgba(255,255,255,.88); transform: rotate(-2deg); }
.subhero-buttons-v19 { margin-top: 24px; }
.parent-amazon-section-v19 { background: linear-gradient(180deg, #fffdf7, #fff5d8); }
.parent-amazon-card-v19 { grid-template-columns: 230px 1fr; }
.final-amazon-cta-v19 { background: linear-gradient(180deg, #eef9f0, #fffaf0); }
.final-amazon-inner-v19 { max-width: 1080px; margin: 0 auto; display:grid; grid-template-columns: 170px 1fr; gap: 28px; align-items:center; background: rgba(255,255,255,.84); border: 1px solid rgba(58,33,12,.10); border-radius: 32px; padding: 26px; box-shadow: var(--shadow); }
.final-amazon-inner-v19 img { width: 160px; border-radius: 16px; box-shadow: 0 16px 32px rgba(58,33,12,.18); }
.final-amazon-inner-v19 h2 { margin: 0 0 8px; color: var(--brown); font-size: clamp(28px,3vw,42px); }
.final-amazon-inner-v19 p { margin-top: 0; font-size: 18px; }
@media (max-width: 800px) {
  .home-amazon-card-v19, .parent-amazon-card-v19, .final-amazon-inner-v19 { grid-template-columns: 1fr; text-align:center; justify-items:center; }
  .home-amazon-cover-v19 { width: min(240px, 80vw); }
  .final-amazon-inner-v19 img { width: min(160px, 70vw); }
  .hero-actions-v19, .subhero-buttons-v19, .home-amazon-card-v19 .button-row, .final-amazon-inner-v19 .button-row { justify-content:center; }
}


/* v20 — prepared upgrade: stronger free pack, homepage FAQ and parent guidance */
.home-pack-section-v20 { background: linear-gradient(180deg, #fffaf0 0%, #eaf8f0 100%); }
.home-pack-card-v20 {
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 250px 1fr;
  gap: clamp(24px, 4vw, 52px);
  align-items: center;
  background: rgba(255,255,255,.86);
  border: 1px solid rgba(58,33,12,.10);
  border-radius: 38px;
  padding: clamp(24px, 4vw, 50px);
  box-shadow: var(--shadow);
}
.home-pack-cover-v20 {
  width: 240px;
  border-radius: 22px;
  box-shadow: 0 22px 45px rgba(58,33,12,.20);
  border: 8px solid rgba(255,255,255,.92);
  transform: rotate(2deg);
}
.home-pack-card-v20 h2 { font-size: clamp(34px, 4.8vw, 62px); margin-bottom: 12px; }
.home-pack-card-v20 p { font-size: 19px; line-height: 1.48; }
.pack-mini-grid-v20 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 20px 0 4px;
}
.pack-mini-grid-v20 span {
  display: flex;
  align-items: center;
  gap: 8px;
  background: #fffaf0;
  border: 1px solid rgba(58,33,12,.08);
  border-radius: 16px;
  padding: 10px 12px;
  font-weight: 900;
  color: var(--brown);
}
.pack-mini-grid-v20 img { width: 34px; height: 34px; object-fit: contain; }
.how-it-works-v20 { background: #fffdf7; }
.steps-v20 {
  max-width: 1160px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 22px;
}
.step-v20 {
  background: var(--paper);
  border: 1px solid rgba(58,33,12,.10);
  border-radius: 28px;
  padding: 28px 22px;
  text-align: center;
  box-shadow: var(--shadow);
}
.step-number-v20 {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  margin: 0 auto 14px;
  border-radius: 50%;
  background: linear-gradient(#ffd84b, #ffb515);
  box-shadow: 0 8px 0 #d98108;
  font-size: 26px;
  font-weight: 950;
  color: #2b1908;
}
.step-v20 h3 { margin: 0 0 10px; color: var(--brown); font-size: 26px; }
.step-v20 p { margin: 0; font-size: 17px; line-height: 1.45; }
.home-faq-v20 { background: linear-gradient(180deg, #eaf8f0, #fffaf0); }
.parent-guide-v20 { background: linear-gradient(180deg, #fffaf0, #eef9f0); }
.parent-guide-grid-v20 {
  max-width: 1120px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 20px;
}
.parent-guide-grid-v20 article {
  background: rgba(255,255,255,.84);
  border: 1px solid rgba(58,33,12,.10);
  border-radius: 28px;
  padding: 26px 22px;
  box-shadow: var(--shadow);
}
.parent-guide-grid-v20 h3 { margin: 0 0 10px; color: var(--green); font-size: 25px; }
.parent-guide-grid-v20 p { margin: 0; font-size: 17px; line-height: 1.45; }
.footer-cta-v20 {
  max-width: 1080px;
  margin: 0 auto 34px;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 18px;
  align-items: center;
  background: rgba(255,255,255,.86);
  border: 1px solid rgba(58,33,12,.10);
  border-radius: 28px;
  padding: 24px;
  box-shadow: var(--shadow);
}
.footer-cta-v20 h2 { font-size: clamp(28px, 3vw, 42px); margin-bottom: 8px; }
.footer-cta-v20 p { margin: 0; font-size: 18px; line-height: 1.4; }
@media (max-width: 900px) {
  .home-pack-card-v20, .footer-cta-v20 { grid-template-columns: 1fr; text-align: center; justify-items: center; }
  .pack-mini-grid-v20, .steps-v20, .parent-guide-grid-v20 { grid-template-columns: 1fr; }
  .home-pack-cover-v20 { width: min(240px, 75vw); }
  .home-pack-card-v20 .button-row, .footer-cta-v20 .button-row { justify-content: center; }
}

/* v22 home content + premium microinteractions */
.hero { position: relative; }
.hero-copy { position: relative; z-index: 2; }
.hero-amazon-note {
  margin: 22px 0 0;
  font-size: 16px;
  line-height: 1.4;
  color: #6b4b2a;
  font-weight: 800;
}
.hero-amazon-note a { color: var(--orange); text-decoration: underline; text-underline-offset: 4px; }
.btn, .banner-card img, .activity-card, .step-v20, .home-amazon-card-v19, .home-pack-card-v20 {
  will-change: transform;
}
.btn { transition: transform .18s ease, filter .18s ease, box-shadow .18s ease; }
.btn:hover { transform: translateY(-4px); filter: saturate(1.04); }
.btn:active { transform: translateY(2px); box-shadow: 0 4px 0 rgba(129,77,8,.45), 0 12px 28px rgba(58, 33, 12, .12); }
.banner-card { position: relative; display: block; border-radius: 24px; }
.banner-card::after {
  content: "Let's go!";
  position: absolute;
  right: 20px;
  bottom: 18px;
  padding: 10px 16px;
  border-radius: 999px;
  background: linear-gradient(#ffd84b, #ffb515);
  color: #2b1908;
  font-weight: 950;
  box-shadow: 0 8px 20px rgba(58, 33, 12, .20);
  opacity: 0;
  transform: translateY(8px) scale(.96);
  transition: opacity .2s ease, transform .2s ease;
}
.banner-card:hover::after { opacity: 1; transform: translateY(0) scale(1); }
.meet-card p + p { margin-top: 10px; }
.home-amazon-card-v19, .home-pack-card-v20 {
  transition: transform .22s ease, box-shadow .22s ease;
}
.home-amazon-card-v19:hover, .home-pack-card-v20:hover {
  transform: translateY(-4px);
  box-shadow: 0 24px 60px rgba(58, 33, 12, .18);
}
.activity-card, .step-v20 { transition: transform .18s ease, box-shadow .18s ease; }
.activity-card:hover, .step-v20:hover { transform: translateY(-5px); box-shadow: 0 20px 45px rgba(58,33,12,.16); }
@media (prefers-reduced-motion: no-preference) {
  .hero-copy { animation: morfuHeroIn .55s ease both; }
  .hero::before, .hero::after {
    content: "";
    position: absolute;
    pointer-events: none;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(255,216,75,.82) 0 28%, rgba(255,216,75,.26) 30% 48%, rgba(255,216,75,0) 70%);
    filter: blur(.2px);
    opacity: .7;
    z-index: 1;
  }
  .hero::before { width: 28px; height: 28px; left: 56%; top: 22%; animation: featherFloatOne 7s ease-in-out infinite; }
  .hero::after { width: 20px; height: 20px; left: 78%; top: 34%; animation: featherFloatTwo 8.5s ease-in-out infinite; }
  @keyframes morfuHeroIn { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }
  @keyframes featherFloatOne { 0%,100% { transform: translateY(0) rotate(-8deg); } 50% { transform: translateY(-16px) rotate(10deg); } }
  @keyframes featherFloatTwo { 0%,100% { transform: translateY(0) rotate(8deg); } 50% { transform: translateY(14px) rotate(-12deg); } }
}
@media (max-width: 560px) {
  .banner-card::after { opacity: 1; transform: none; right: 14px; bottom: 14px; font-size: 14px; padding: 8px 12px; }
  .hero-amazon-note { font-size: 15px; }
}

/* v23 — Choose Your Adventure premium mission cards */
.adventure-choice-grid {
  align-items: stretch;
}
.adventure-choice-card {
  position: relative;
  display: grid;
  grid-template-rows: auto 1fr;
  overflow: hidden;
  border-radius: 28px;
  background: rgba(255, 250, 240, .92);
  border: 1px solid rgba(58, 33, 12, .10);
  box-shadow: var(--shadow);
  transform: translateZ(0);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.adventure-choice-card::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle at 78% 18%, rgba(255, 216, 75, .28), transparent 28%);
  opacity: 0;
  transition: opacity .22s ease;
}
.adventure-choice-card img {
  width: 100%;
  border-radius: 0;
  box-shadow: none;
  transition: transform .35s ease;
}
.adventure-choice-card:hover,
.adventure-choice-card:focus-visible {
  transform: translateY(-7px) scale(1.012);
  box-shadow: 0 28px 70px rgba(58, 33, 12, .24);
  border-color: rgba(242, 138, 24, .38);
  outline: none;
}
.adventure-choice-card:hover::after,
.adventure-choice-card:focus-visible::after { opacity: 1; }
.adventure-choice-card:hover img,
.adventure-choice-card:focus-visible img { transform: scale(1.035); }
.choice-copy {
  position: relative;
  z-index: 1;
  padding: 22px 24px 24px;
  display: grid;
  gap: 9px;
}
.choice-kicker {
  display: inline-flex;
  width: fit-content;
  padding: 7px 12px;
  border-radius: 999px;
  background: #fff1bf;
  color: #7c4b00;
  font-weight: 950;
  font-size: 13px;
  letter-spacing: .02em;
}
.choice-copy h3 {
  margin: 0;
  color: var(--brown);
  font-size: clamp(24px, 2.5vw, 34px);
  line-height: 1.02;
  letter-spacing: -.02em;
}
.choice-copy p {
  margin: 0;
  color: #3b3b31;
  font-size: 17px;
  line-height: 1.38;
}
.choice-copy strong {
  margin-top: 8px;
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 8px;
  color: var(--green);
  font-size: 18px;
  font-weight: 950;
}
.choice-copy strong::after {
  content: '→';
  display: inline-block;
  transition: transform .18s ease;
}
.adventure-choice-card:hover .choice-copy strong::after,
.adventure-choice-card:focus-visible .choice-copy strong::after { transform: translateX(5px); }

@media (max-width: 980px) {
  .adventure-choice-card:hover,
  .adventure-choice-card:focus-visible { transform: translateY(-4px); }
}
@media (max-width: 560px) {
  .choice-copy { padding: 18px 18px 20px; }
  .choice-copy p { font-size: 16px; }
}


/* v24 Meet Morfu premium section */
.meet-premium-v24 {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 12% 18%, rgba(255, 214, 75, .30), transparent 26%),
    radial-gradient(circle at 88% 8%, rgba(17, 152, 167, .16), transparent 24%),
    linear-gradient(135deg, #e9f8ef, #fff7dd 68%, #fffaf0);
}
.meet-premium-v24::before,
.meet-premium-v24::after {
  content: "⭐";
  position: absolute;
  font-size: 34px;
  opacity: .22;
  animation: featherFloatV24 7s ease-in-out infinite;
}
.meet-premium-v24::before { left: 7%; top: 18%; }
.meet-premium-v24::after { right: 8%; bottom: 16%; animation-delay: -2.5s; }
.meet-card-v24 {
  max-width: 1240px;
  grid-template-columns: .72fr 1.05fr .78fr;
  gap: clamp(22px, 3vw, 38px);
  align-items: center;
  position: relative;
}
.morfu-portrait-v24 {
  position: relative;
  display: grid;
  justify-items: center;
  align-content: center;
  min-height: 360px;
  border-radius: 30px;
  background: linear-gradient(180deg, rgba(255,255,255,.72), rgba(255,244,204,.58));
  border: 1px solid rgba(58,33,12,.08);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.42);
}
.morfu-portrait-v24 img {
  width: min(260px, 78%);
  filter: drop-shadow(0 20px 28px rgba(58,33,12,.20));
  animation: morfuGentleFloatV24 4.8s ease-in-out infinite;
}
.speech-bubble-v24 {
  position: relative;
  z-index: 2;
  margin-bottom: 14px;
  padding: 13px 18px;
  border-radius: 22px 22px 22px 6px;
  background: #fff;
  color: var(--green);
  font-weight: 950;
  box-shadow: 0 12px 28px rgba(58,33,12,.13);
  border: 1px solid rgba(58,33,12,.08);
}
.mini-feathers-v24 {
  display: flex;
  gap: 10px;
  margin-top: 18px;
}
.mini-feathers-v24 span {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 999px;
  background: linear-gradient(#ffd84b, #ffb515);
  box-shadow: 0 8px 18px rgba(242,149,0,.22);
  animation: featherFloatV24 5.2s ease-in-out infinite;
}
.mini-feathers-v24 span:nth-child(2) { animation-delay: -1.2s; }
.mini-feathers-v24 span:nth-child(3) { animation-delay: -2.1s; }
.meet-copy-v24 h2 { font-size: clamp(36px, 4.7vw, 66px); }
.meet-copy-v24 p { font-size: clamp(18px, 1.8vw, 22px); line-height: 1.48; }
.morfu-quote-v24 {
  margin: 22px 0 0;
  padding: 18px 20px;
  border-radius: 22px;
  background: #fff8db;
  border-left: 7px solid var(--yellow);
  color: var(--brown);
  font-weight: 950;
  font-size: clamp(18px, 1.8vw, 23px);
  box-shadow: 0 12px 28px rgba(58,33,12,.08);
}
.trait-grid-v24 {
  grid-template-columns: 1fr;
  align-content: center;
}
.trait-grid-v24 span,
.trait-grid-v24 span:last-child {
  grid-column: auto;
  min-height: 78px;
  display: grid;
  place-items: center;
  gap: 3px;
  padding: 12px 16px;
  background: #fff;
  color: var(--brown);
  border-radius: 24px;
  transition: transform .18s ease, box-shadow .18s ease;
}
.trait-grid-v24 span:hover {
  transform: translateY(-4px) rotate(-1deg);
  box-shadow: 0 18px 34px rgba(58, 33, 12, .14);
}
.trait-grid-v24 strong { color: var(--green); font-size: 20px; }
.trait-grid-v24 em { font-style: normal; font-size: 14px; color: #7b6342; font-weight: 800; }
@keyframes morfuGentleFloatV24 {
  0%, 100% { transform: translateY(0) rotate(-1deg); }
  50% { transform: translateY(-10px) rotate(1deg); }
}
@keyframes featherFloatV24 {
  0%, 100% { transform: translateY(0) rotate(-7deg); }
  50% { transform: translateY(-12px) rotate(8deg); }
}
@media (max-width: 980px) {
  .meet-card-v24 { grid-template-columns: 1fr; text-align: center; }
  .morfu-portrait-v24 { min-height: 300px; }
  .trait-grid-v24 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .morfu-quote-v24 { text-align: left; }
}
@media (max-width: 560px) {
  .morfu-portrait-v24 { min-height: 260px; }
  .morfu-portrait-v24 img { width: min(220px, 82%); }
  .trait-grid-v24 { grid-template-columns: 1fr; }
}


/* v25 — Amazon/KDP conversion without breaking the magical world */
.amazon-premium-v25 {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 12% 22%, rgba(255, 216, 75, .28), transparent 26%),
    radial-gradient(circle at 92% 12%, rgba(17, 152, 167, .16), transparent 25%),
    linear-gradient(180deg, #fffaf0 0%, #eff9f0 100%);
}
.amazon-card-v25 {
  grid-template-columns: 300px 1fr;
  position: relative;
  overflow: hidden;
}
.amazon-card-v25::after {
  content: "";
  position: absolute;
  width: 230px;
  height: 230px;
  right: -70px;
  top: -80px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255,216,75,.34), rgba(255,216,75,0) 68%);
  pointer-events: none;
}
.amazon-cover-wrap-v25 {
  position: relative;
  justify-self: center;
}
.golden-feather-badge-v25 {
  position: absolute;
  left: 50%;
  bottom: -12px;
  transform: translateX(-50%) rotate(-2deg);
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  border-radius: 999px;
  background: linear-gradient(#ffd84b, #ffb515);
  color: #2b1908;
  font-size: 15px;
  font-weight: 950;
  box-shadow: 0 12px 26px rgba(58,33,12,.20);
  border: 2px solid rgba(255,255,255,.70);
}
.amazon-copy-v25 { position: relative; z-index: 1; }
.amazon-copy-v25 h2 { max-width: 850px; }
.book-badges-v25 {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 22px 0 16px;
}
.book-badges-v25 span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 13px;
  border-radius: 999px;
  background: #fff8df;
  border: 1px solid rgba(58,33,12,.09);
  color: var(--brown);
  font-weight: 950;
  box-shadow: 0 8px 18px rgba(58,33,12,.07);
}
.book-badges-v25 img { width: 28px; height: 28px; object-fit: contain; }
.amazon-path-v25 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 9px;
  margin: 18px 0 4px;
  padding: 14px 16px;
  width: fit-content;
  max-width: 100%;
  border-radius: 22px;
  background: rgba(234, 248, 240, .88);
  border: 1px solid rgba(47,107,47,.12);
  color: var(--green);
}
.amazon-path-v25 strong { font-weight: 950; }
.amazon-path-v25 span { color: var(--orange); font-weight: 950; }
.story-preview-v25 {
  background:
    radial-gradient(circle at 88% 18%, rgba(255,216,75,.22), transparent 23%),
    linear-gradient(180deg, #fffdf7, #fff5d8);
}
.story-moment-grid-v25 {
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 22px;
}
.story-moment-grid-v25 article {
  background: rgba(255,255,255,.86);
  border: 1px solid rgba(58,33,12,.10);
  border-radius: 30px;
  padding: 30px 24px;
  text-align: center;
  box-shadow: var(--shadow);
  transition: transform .18s ease, box-shadow .18s ease;
}
.story-moment-grid-v25 article:hover {
  transform: translateY(-5px);
  box-shadow: 0 24px 58px rgba(58,33,12,.17);
}
.story-moment-grid-v25 img {
  width: 86px;
  height: 86px;
  object-fit: contain;
  margin: 0 auto 14px;
}
.story-moment-grid-v25 h3 {
  margin: 0 0 10px;
  color: var(--brown);
  font-size: clamp(23px, 2.2vw, 31px);
  line-height: 1.05;
}
.story-moment-grid-v25 p {
  margin: 0;
  color: #453525;
  font-size: 17px;
  line-height: 1.45;
}
.story-preview-actions-v25 { justify-content: center; margin-top: 34px; }
@media (max-width: 900px) {
  .amazon-card-v25 { grid-template-columns: 1fr; }
  .book-badges-v25, .amazon-path-v25, .amazon-card-v25 .button-row { justify-content: center; }
  .amazon-path-v25 { width: auto; }
  .story-moment-grid-v25 { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
  .golden-feather-badge-v25 { font-size: 13px; padding: 9px 13px; }
  .book-badges-v25 span { width: 100%; justify-content: center; }
  .amazon-path-v25 { display: grid; justify-items: center; text-align: center; }
  .amazon-path-v25 span { transform: rotate(90deg); }
}

/* v26 — Explorer Backpack as a branded return loop */
.backpack-premium-v26 {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 18% 20%, rgba(255,216,75,.22), transparent 28%),
    linear-gradient(180deg, #fffaf0 0%, #eaf8f0 100%);
}
.backpack-premium-v26::before,
.backpack-premium-v26::after {
  content: "";
  position: absolute;
  pointer-events: none;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(255,216,75,.78) 0 28%, rgba(255,216,75,.22) 34% 52%, rgba(255,216,75,0) 72%);
  opacity: .65;
}
.backpack-premium-v26::before { width: 34px; height: 34px; left: 8%; top: 18%; }
.backpack-premium-v26::after { width: 22px; height: 22px; right: 11%; bottom: 24%; }
.backpack-card-v26 {
  grid-template-columns: 310px 1fr;
  position: relative;
  z-index: 1;
  background: rgba(255,255,255,.90);
}
.backpack-visual-v26 {
  position: relative;
  display: grid;
  place-items: center;
  min-height: 300px;
  border-radius: 30px;
  background:
    radial-gradient(circle at 50% 42%, rgba(255,216,75,.30), transparent 40%),
    linear-gradient(160deg, rgba(238,249,240,.92), rgba(255,250,240,.92));
  border: 1px solid rgba(58,33,12,.08);
}
.backpack-visual-v26 .home-pack-cover-v20 { transform: rotate(-3deg); }
.backpack-spark-v26 {
  position: absolute;
  right: 28px;
  top: 24px;
  font-size: 30px;
  filter: drop-shadow(0 10px 14px rgba(242,149,0,.25));
}
.spark-two-v26 {
  left: 32px;
  right: auto;
  top: auto;
  bottom: 38px;
  font-size: 24px;
}
.backpack-label-v26 {
  position: absolute;
  left: 24px;
  top: 22px;
  background: linear-gradient(#ffd84b, #ffb515);
  color: #2b1908;
  font-weight: 950;
  padding: 10px 14px;
  border-radius: 999px;
  box-shadow: 0 10px 22px rgba(58,33,12,.18);
}
.backpack-copy-v26 h2 { max-width: 880px; }
.backpack-items-v26 {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 22px 0 18px;
}
.backpack-items-v26 span {
  display: grid;
  grid-template-columns: 42px 1fr;
  grid-template-rows: auto auto;
  column-gap: 10px;
  align-items: center;
  background: #fffaf0;
  border: 1px solid rgba(58,33,12,.08);
  border-radius: 18px;
  padding: 12px;
}
.backpack-items-v26 img { width: 42px; height: 42px; grid-row: 1 / 3; object-fit: contain; }
.backpack-items-v26 strong { color: var(--brown); font-size: 16px; line-height: 1; }
.backpack-items-v26 em { color: #6b5b48; font-style: normal; font-size: 13px; font-weight: 800; }
.backpack-flow-v26 {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin: 4px 0 22px;
  padding: 10px 12px;
  border-radius: 999px;
  background: rgba(238,249,240,.86);
  border: 1px solid rgba(47,107,47,.14);
  color: var(--green);
  font-weight: 950;
}
.backpack-flow-v26 b { color: var(--orange); }
.backpack-missions-v26 { background: linear-gradient(180deg, #fffaf0, #eef9f0); }
.activity-cards-v26 { align-items: stretch; }
.mission-card-v26 {
  position: relative;
  overflow: hidden;
  padding-top: 34px;
}
.mission-card-v26::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 8px;
  background: linear-gradient(90deg, #ffd84b, #7bd7c8, #ffb515);
}
.mission-number-v26 {
  position: absolute;
  left: 16px;
  top: 16px;
  color: rgba(58,33,12,.20);
  font-weight: 950;
  font-size: 30px;
  line-height: 1;
}
.backpack-cta-v26 {
  max-width: 1100px;
  margin: 28px auto 0;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 20px;
  align-items: center;
  background: rgba(255,255,255,.86);
  border: 1px solid rgba(58,33,12,.10);
  border-radius: 30px;
  padding: 24px;
  box-shadow: var(--shadow);
}
.backpack-cta-v26 h3 { margin: 0 0 6px; color: var(--brown); font-size: clamp(26px,3vw,38px); }
.backpack-cta-v26 p { margin: 0; font-size: 18px; line-height: 1.4; }
.pack-download-panel-v26 {
  margin-bottom: 56px;
  background:
    radial-gradient(circle at 92% 10%, rgba(255,216,75,.24), transparent 30%),
    rgba(255,255,255,.88);
}
.backpack-page-hero-v26 h1 { max-width: 760px; }
@media (prefers-reduced-motion: no-preference) {
  .backpack-spark-v26 { animation: backpackSparkFloat 4.8s ease-in-out infinite; }
  .spark-two-v26 { animation-delay: -1.4s; }
  .backpack-premium-v26::before { animation: featherFloatOne 7s ease-in-out infinite; }
  .backpack-premium-v26::after { animation: featherFloatTwo 8s ease-in-out infinite; }
  @keyframes backpackSparkFloat { 0%,100% { transform: translateY(0) rotate(-6deg); } 50% { transform: translateY(-10px) rotate(8deg); } }
}
@media (max-width: 980px) {
  .backpack-card-v26 { grid-template-columns: 1fr; }
  .backpack-items-v26 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .backpack-cta-v26 { grid-template-columns: 1fr; text-align: center; justify-items: center; }
  .backpack-cta-v26 .button-row { justify-content: center; }
}
@media (max-width: 560px) {
  .backpack-items-v26 { grid-template-columns: 1fr; }
  .backpack-flow-v26 { border-radius: 20px; justify-content: center; }
  .backpack-visual-v26 { min-height: 240px; }
}


/* v27 — Parents Premium: trust + shared reading + KDP conversion */
.parents-premium-v27 {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 8% 12%, rgba(255,216,75,.28), transparent 30%),
    radial-gradient(circle at 90% 8%, rgba(123,215,200,.24), transparent 28%),
    linear-gradient(180deg, #fffaf0 0%, #ffffff 48%, #eef9f0 100%);
}
.parents-premium-v27::before,
.parents-premium-v27::after {
  content: "";
  position: absolute;
  pointer-events: none;
  border-radius: 999px;
  opacity: .55;
  background: radial-gradient(circle, rgba(255,216,75,.8) 0 25%, rgba(255,216,75,.22) 34% 55%, rgba(255,216,75,0) 72%);
}
.parents-premium-v27::before { width: 34px; height: 34px; left: 6%; top: 20%; }
.parents-premium-v27::after { width: 24px; height: 24px; right: 8%; bottom: 18%; }
.parents-hero-v27 {
  position: relative;
  z-index: 1;
  max-width: 1220px;
  margin: 0 auto 34px;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr);
  gap: clamp(24px, 4vw, 54px);
  align-items: center;
}
.parents-copy-v27 {
  background: rgba(255,255,255,.74);
  border: 1px solid rgba(58,33,12,.08);
  border-radius: 34px;
  padding: clamp(28px, 4vw, 52px);
  box-shadow: var(--shadow);
  backdrop-filter: blur(8px);
}
.parents-copy-v27 h2 { margin: 0 0 18px; color: var(--brown); font-size: clamp(38px, 5.4vw, 72px); line-height: .95; letter-spacing: -0.04em; }
.parents-copy-v27 h2 span { color: var(--green); }
.parents-copy-v27 p { font-size: clamp(18px, 2vw, 22px); line-height: 1.55; color: #5e4936; }
.parents-actions-v27 { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 24px; }
.parents-scene-v27 {
  position: relative;
  min-height: 440px;
  border-radius: 40px;
  display: grid;
  place-items: center;
  background:
    radial-gradient(circle at 50% 38%, rgba(255,216,75,.32), transparent 34%),
    linear-gradient(140deg, rgba(238,249,240,.96), rgba(255,250,240,.96));
  border: 1px solid rgba(58,33,12,.10);
  box-shadow: var(--shadow);
  overflow: hidden;
}
.parents-book-v27 {
  width: min(250px, 58%);
  transform: rotate(-5deg);
  filter: drop-shadow(0 24px 28px rgba(58,33,12,.22));
}
.parents-book-v27 img { width: 100%; border-radius: 18px; display: block; }
.parents-morfu-v27 {
  position: absolute;
  right: 8%;
  bottom: 22%;
  width: 126px;
  height: 126px;
  border-radius: 50%;
  background: #fff;
  display: grid;
  place-items: center;
  box-shadow: 0 18px 38px rgba(58,33,12,.16);
}
.parents-morfu-v27 img { width: 88px; height: 88px; object-fit: contain; }
.parents-glow-v27 { position: absolute; left: 12%; top: 16%; font-size: 38px; filter: drop-shadow(0 10px 12px rgba(242,149,0,.25)); }
.parents-note-v27 {
  position: absolute;
  left: 7%;
  right: 7%;
  bottom: 28px;
  background: rgba(255,255,255,.86);
  border: 1px solid rgba(58,33,12,.08);
  border-radius: 999px;
  padding: 14px 18px;
  text-align: center;
  color: var(--green);
  font-weight: 950;
  box-shadow: 0 12px 28px rgba(58,33,12,.10);
}
.parent-pillars-v27 {
  position: relative;
  z-index: 1;
  max-width: 1220px;
  margin: 26px auto;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}
.parent-pillars-v27 article {
  background: rgba(255,255,255,.88);
  border: 1px solid rgba(58,33,12,.08);
  border-radius: 28px;
  padding: 24px;
  box-shadow: var(--shadow);
  transition: transform .25s ease, box-shadow .25s ease;
}
.parent-pillars-v27 article:hover { transform: translateY(-6px); box-shadow: 0 22px 44px rgba(58,33,12,.16); }
.parent-pillars-v27 img { width: 62px; height: 62px; object-fit: contain; margin-bottom: 10px; }
.parent-pillars-v27 h3 { margin: 0 0 8px; color: var(--brown); font-size: 23px; }
.parent-pillars-v27 p { margin: 0; color: #6b5b48; line-height: 1.45; font-weight: 700; }
.parents-special-v27,
.parents-letter-v27,
.parents-kdp-v27 {
  position: relative;
  z-index: 1;
  max-width: 1120px;
  margin: 26px auto 0;
  background: rgba(255,255,255,.88);
  border: 1px solid rgba(58,33,12,.09);
  border-radius: 34px;
  box-shadow: var(--shadow);
  padding: clamp(24px, 4vw, 42px);
}
.parents-special-v27 { display: grid; grid-template-columns: .78fr 1.22fr; gap: 26px; align-items: center; }
.parents-special-v27 h3,
.parents-letter-v27 h3,
.parents-kdp-v27 h3 { margin: 0 0 8px; color: var(--brown); font-size: clamp(28px, 3.2vw, 44px); line-height: 1.02; }
.parents-special-v27 ul { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.parents-special-v27 li,
.parents-inside-v27 span {
  background: #fffaf0;
  border: 1px solid rgba(58,33,12,.08);
  border-radius: 18px;
  padding: 13px 15px;
  color: var(--green);
  font-weight: 950;
}
.parents-letter-v27 { text-align: center; max-width: 920px; background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,250,240,.92)); }
.parents-letter-v27 p { max-width: 720px; margin: 12px auto; color: #5e4936; font-size: 19px; line-height: 1.55; }
.parents-signature-v27 { color: var(--orange) !important; font-weight: 900; }
.parents-kdp-v27 { display: grid; grid-template-columns: 1fr; gap: 18px; background: linear-gradient(135deg, rgba(238,249,240,.94), rgba(255,255,255,.92)); }
.parents-kdp-v27 p { font-size: 18px; color: #5e4936; line-height: 1.5; }
.parents-inside-v27 { display: flex; flex-wrap: wrap; gap: 10px; }
.parents-page-hero-v27 { background: linear-gradient(135deg, #fffaf0, #eaf8f0); }
.parents-page-v27 { padding-top: clamp(42px, 6vw, 82px); }
@media (prefers-reduced-motion: no-preference) {
  .parents-glow-v27 { animation: backpackSparkFloat 4.8s ease-in-out infinite; }
  .parents-book-v27 { animation: parentBookFloat 6s ease-in-out infinite; }
  .parents-premium-v27::before { animation: featherFloatOne 7s ease-in-out infinite; }
  .parents-premium-v27::after { animation: featherFloatTwo 8s ease-in-out infinite; }
  @keyframes parentBookFloat { 0%,100% { transform: translateY(0) rotate(-5deg); } 50% { transform: translateY(-10px) rotate(-3deg); } }
}
@media (max-width: 980px) {
  .parents-hero-v27 { grid-template-columns: 1fr; }
  .parent-pillars-v27 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .parents-special-v27 { grid-template-columns: 1fr; }
  .parents-scene-v27 { min-height: 360px; }
}
@media (max-width: 560px) {
  .parents-copy-v27 h2 { font-size: 38px; }
  .parent-pillars-v27 { grid-template-columns: 1fr; }
  .parents-special-v27 ul { grid-template-columns: 1fr; }
  .parents-actions-v27 .btn, .parents-kdp-v27 .btn { width: 100%; justify-content: center; }
  .parents-note-v27 { border-radius: 22px; }
  .parents-morfu-v27 { width: 96px; height: 96px; }
  .parents-morfu-v27 img { width: 70px; height: 70px; }
}

/* v28 — Explorer Club Premium: return loop + passport + KDP support */
.explorer-club-premium-v28 {
  position: relative;
  overflow: hidden;
  max-width: 1180px;
  margin: 80px auto;
  display: grid;
  grid-template-columns: 1.02fr .98fr;
  gap: clamp(24px, 4vw, 52px);
  align-items: center;
  padding: clamp(28px, 5vw, 64px);
  border-radius: 42px;
  background:
    radial-gradient(circle at 14% 18%, rgba(255, 210, 71, .34), transparent 24%),
    radial-gradient(circle at 88% 14%, rgba(44, 176, 126, .18), transparent 28%),
    linear-gradient(135deg, #fff8df, #e9f8ff 58%, #fff);
  border: 1px solid rgba(107, 76, 34, .12);
  box-shadow: 0 30px 80px rgba(82, 48, 17, .16);
}
.club-world-v28 { position: absolute; inset: 0; pointer-events: none; }
.club-feather-v28 { position: absolute; filter: drop-shadow(0 12px 18px rgba(242,149,0,.28)); opacity: .9; }
.feather-a-v28 { left: 5%; top: 15%; font-size: 36px; }
.feather-b-v28 { right: 9%; top: 22%; font-size: 28px; }
.feather-c-v28 { left: 47%; bottom: 10%; font-size: 26px; }
.club-copy-v28 { position: relative; z-index: 1; }
.club-copy-v28 h2 { margin: 0 0 18px; font-size: clamp(38px, 5vw, 70px); line-height: .94; letter-spacing: -0.045em; color: var(--brown); }
.club-copy-v28 p { font-size: clamp(18px, 2vw, 22px); line-height: 1.55; color: #5e4936; }
.club-loop-v28 { display: flex; flex-wrap: wrap; gap: 10px; margin: 24px 0; }
.club-loop-v28 span,
.passport-stamps-v28 span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(255,255,255,.74);
  border: 1px solid rgba(107,76,34,.12);
  color: var(--brown);
  font-weight: 900;
  box-shadow: 0 10px 24px rgba(58,33,12,.08);
}
.club-actions-v28 { display: flex; gap: 14px; flex-wrap: wrap; }
.club-card-v28 { position: relative; z-index: 1; display: grid; gap: 16px; }
.club-passport-v28 {
  position: relative;
  padding: 28px;
  border-radius: 34px;
  background: linear-gradient(180deg, rgba(255,255,255,.94), rgba(255,248,222,.9));
  border: 2px dashed rgba(242,149,0,.33);
  box-shadow: 0 24px 54px rgba(58,33,12,.14);
  transform: rotate(1.2deg);
}
.club-passport-v28 img { width: 92px; height: 92px; object-fit: contain; display: block; margin-bottom: 12px; }
.passport-label-v28,
.passport-badge-v28 {
  display: inline-flex;
  margin-bottom: 12px;
  padding: 8px 13px;
  border-radius: 999px;
  background: #fff2b8;
  color: #7a4b00;
  font-weight: 1000;
  letter-spacing: .02em;
  text-transform: uppercase;
  font-size: 12px;
}
.club-passport-v28 h3 { margin: 0 0 8px; color: var(--brown); font-size: 30px; }
.club-passport-v28 p { margin: 0 0 16px; color: #6b5b48; line-height: 1.45; font-weight: 800; }
.club-signup-v28 { background: rgba(255,255,255,.78); border: 1px solid rgba(107,76,34,.12); border-radius: 28px; padding: 18px; box-shadow: 0 18px 42px rgba(58,33,12,.11); }
.club-signup-v28 input { width: 100%; border: 2px solid rgba(107,76,34,.18); border-radius: 18px; padding: 15px 16px; font: inherit; font-weight: 800; }
.club-signup-v28 button { width: 100%; margin-top: 10px; border: 0; border-radius: 999px; padding: 15px 18px; background: var(--orange); color: white; font-weight: 1000; box-shadow: 0 14px 26px rgba(242,149,0,.28); cursor: pointer; }
.form-note-v28 { margin: 10px 0 0 !important; font-size: 13px !important; color: #7a6a58 !important; font-weight: 800; }
.club-subhero-v28 { background: linear-gradient(135deg, #fff3bf, #e9f8ff 60%, #eef9f0); }
.club-adventure-v28 { max-width: 1180px; margin: 0 auto; }
.club-path-v28 { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.club-path-v28 article { background: rgba(255,255,255,.88); border: 1px solid rgba(107,76,34,.12); border-radius: 28px; padding: 24px; box-shadow: 0 18px 38px rgba(58,33,12,.1); transition: transform .22s ease, box-shadow .22s ease; }
.club-path-v28 article:hover { transform: translateY(-6px); box-shadow: 0 24px 48px rgba(58,33,12,.15); }
.club-path-v28 span { width: 42px; height: 42px; display: inline-grid; place-items: center; border-radius: 50%; background: var(--orange); color: white; font-weight: 1000; margin-bottom: 12px; }
.club-path-v28 h3 { color: var(--brown); margin: 0 0 8px; font-size: 24px; }
.club-path-v28 p { margin: 0; color: #6b5b48; line-height: 1.45; font-weight: 750; }
.club-join-premium-v28 { background: linear-gradient(135deg, #e8f7ff, #fff4cc); }
.club-join-card-v28 { border-radius: 42px; }
.club-signup-premium-v28 { border: 1px solid rgba(107,76,34,.12); }
.explorer-passport-section-v28 { background: linear-gradient(180deg, #fffaf0, #eef9f0); }
.passport-panel-v28 { max-width: 1120px; margin: 0 auto; display: grid; grid-template-columns: .78fr 1.22fr; gap: 28px; align-items: center; padding: clamp(28px, 5vw, 56px); border-radius: 42px; background: rgba(255,255,255,.86); box-shadow: 0 28px 70px rgba(58,33,12,.12); border: 1px solid rgba(107,76,34,.12); }
.passport-visual-v28 { border-radius: 34px; padding: 28px; min-height: 280px; background: linear-gradient(180deg, #fff3c4, #fff); border: 2px dashed rgba(242,149,0,.32); box-shadow: inset 0 0 0 8px rgba(255,255,255,.45); }
.passport-visual-v28 img { width: 112px; height: 112px; object-fit: contain; display: block; margin: 8px 0 22px; }
.passport-panel-v28 h2 { margin: 0 0 12px; color: var(--brown); font-size: clamp(34px, 4vw, 58px); line-height: .98; letter-spacing: -0.035em; }
.passport-panel-v28 p { color: #5e4936; font-size: 19px; line-height: 1.55; font-weight: 750; }
@media (prefers-reduced-motion: no-preference) {
  .feather-a-v28 { animation: featherFloatOne 7s ease-in-out infinite; }
  .feather-b-v28 { animation: featherFloatTwo 8s ease-in-out infinite; }
  .feather-c-v28 { animation: backpackSparkFloat 6.5s ease-in-out infinite; }
  .club-passport-v28 { animation: parentBookFloat 6.4s ease-in-out infinite; }
}
@media (max-width: 900px) {
  .explorer-club-premium-v28,
  .passport-panel-v28 { grid-template-columns: 1fr; }
  .club-path-v28 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 620px) {
  .explorer-club-premium-v28 { padding: 24px; border-radius: 30px; }
  .club-copy-v28 h2 { font-size: 38px; }
  .club-actions-v28 .btn { width: 100%; justify-content: center; }
  .club-path-v28 { grid-template-columns: 1fr; }
  .passport-panel-v28 { padding: 22px; border-radius: 30px; }
}

/* v29 — Interactive World of Morfu Map */
.world-map-premium-v29 {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 16% 16%, rgba(255, 211, 93, .28), transparent 22%),
    radial-gradient(circle at 88% 20%, rgba(80, 203, 196, .24), transparent 24%),
    linear-gradient(180deg, #fff7dc 0%, #f0f9e8 100%);
}
.world-map-premium-v29::before,
.world-map-premium-v29::after {
  content: "";
  position: absolute;
  border-radius: 999px;
  background: rgba(255,255,255,.42);
  filter: blur(2px);
  pointer-events: none;
}
.world-map-premium-v29::before { width: 180px; height: 70px; left: 4%; top: 7%; }
.world-map-premium-v29::after { width: 240px; height: 90px; right: 5%; bottom: 9%; }
.world-map-heading-v29 { position: relative; z-index: 2; }
.map-shell-v29 {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  gap: 28px;
  align-items: stretch;
  max-width: 1180px;
  margin: 34px auto 0;
}
.map-paper-v29 {
  position: relative;
  min-height: 640px;
  border-radius: 42px;
  padding: 34px;
  overflow: hidden;
  background:
    linear-gradient(135deg, rgba(126, 84, 38, .10), transparent 18%),
    radial-gradient(circle at 18% 72%, rgba(86, 173, 95, .17), transparent 24%),
    radial-gradient(circle at 76% 34%, rgba(63, 178, 210, .18), transparent 24%),
    repeating-linear-gradient(45deg, rgba(110, 76, 34, .035) 0 8px, rgba(255,255,255,.035) 8px 16px),
    #fff2c9;
  border: 8px solid rgba(117, 82, 39, .18);
  box-shadow: 0 26px 70px rgba(55, 83, 50, .18), inset 0 0 0 2px rgba(255,255,255,.55);
}
.map-paper-v29::before {
  content: "";
  position: absolute;
  inset: 20px;
  border: 2px dashed rgba(113, 80, 45, .24);
  border-radius: 32px;
  pointer-events: none;
}
.map-corner-v29 {
  position: absolute;
  z-index: 3;
  width: 54px;
  height: 54px;
  display: grid;
  place-items: center;
  border-radius: 18px;
  background: rgba(255,255,255,.68);
  box-shadow: 0 10px 22px rgba(76, 63, 35, .12);
  font-size: 28px;
}
.corner-one-v29 { left: 30px; top: 30px; }
.corner-two-v29 { right: 30px; top: 30px; }
.corner-three-v29 { left: 30px; bottom: 30px; }
.corner-four-v29 { right: 30px; bottom: 30px; }
.map-center-v29 {
  position: absolute;
  z-index: 6;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 138px;
  height: 138px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  text-align: center;
  color: #315a36;
  font-weight: 900;
  background: linear-gradient(180deg, #fff 0%, #fff1b5 100%);
  box-shadow: 0 18px 42px rgba(80, 76, 38, .18);
  border: 5px solid rgba(255, 211, 93, .55);
}
.map-center-v29 img { width: 66px; margin-bottom: -3px; animation: morfuTinyWaveV29 3.6s ease-in-out infinite; }
.map-center-v29 span { font-size: 13px; line-height: 1.05; }
.map-path-v29 {
  position: absolute;
  z-index: 1;
  left: 50%;
  top: 50%;
  width: 250px;
  height: 4px;
  background: repeating-linear-gradient(90deg, rgba(125,88,45,.38) 0 9px, transparent 9px 18px);
  transform-origin: left center;
  border-radius: 999px;
}
.path-one-v29 { transform: rotate(-142deg); width: 260px; }
.path-two-v29 { transform: rotate(-36deg); width: 270px; }
.path-three-v29 { transform: rotate(142deg); width: 250px; }
.path-four-v29 { transform: rotate(34deg); width: 250px; }
.map-land-v29 {
  position: absolute;
  z-index: 5;
  width: 190px;
  min-height: 132px;
  display: grid;
  gap: 4px;
  justify-items: center;
  align-content: center;
  text-align: center;
  padding: 18px 16px;
  border-radius: 30px;
  text-decoration: none;
  color: #265036;
  background: rgba(255,255,255,.73);
  box-shadow: 0 16px 34px rgba(56, 84, 45, .13);
  border: 2px solid rgba(255,255,255,.7);
  transition: transform .28s ease, box-shadow .28s ease, filter .28s ease;
}
.map-land-v29 strong { font-size: 17px; line-height: 1.08; }
.map-land-v29 em { font-style: normal; font-size: 12px; color: rgba(38, 80, 54, .72); font-weight: 800; }
.map-land-v29 b {
  margin-top: 6px;
  padding: 7px 12px;
  border-radius: 999px;
  background: rgba(255, 211, 93, .35);
  font-size: 12px;
  color: #6e4d14;
}
.land-icon-v29 { font-size: 36px; filter: drop-shadow(0 7px 8px rgba(0,0,0,.10)); }
.active-land-v29 { border-color: rgba(255, 211, 93, .72); }
.locked-land-v29 { opacity: .88; filter: saturate(.82); }
.locked-land-v29 b { background: rgba(159, 184, 171, .25); color: #587066; }
.map-land-v29:hover { transform: translateY(-8px) scale(1.03); box-shadow: 0 24px 46px rgba(56, 84, 45, .19); }
.active-land-v29:hover .land-icon-v29 { animation: landBounceV29 .65s ease both; }
.land-amazon-v29 { left: 9%; top: 17%; background: linear-gradient(180deg, rgba(255,255,255,.88), rgba(224, 255, 207, .82)); }
.land-ocean-v29 { right: 10%; top: 19%; background: linear-gradient(180deg, rgba(255,255,255,.9), rgba(205, 245, 255, .82)); }
.land-safari-v29 { left: 11%; bottom: 18%; background: linear-gradient(180deg, rgba(255,255,255,.85), rgba(255, 228, 165, .74)); }
.land-arctic-v29 { right: 13%; bottom: 18%; background: linear-gradient(180deg, rgba(255,255,255,.88), rgba(225, 246, 255, .78)); }
.land-dino-v29 { left: 39%; top: 7%; background: linear-gradient(180deg, rgba(255,255,255,.86), rgba(227, 245, 206, .74)); }
.land-space-v29 { left: 39%; bottom: 6%; background: linear-gradient(180deg, rgba(255,255,255,.86), rgba(223, 219, 255, .74)); }
.map-feather-v29 {
  position: absolute;
  z-index: 7;
  color: #f7b71d;
  text-shadow: 0 0 14px rgba(255, 211, 93, .75);
  font-size: 24px;
  animation: featherFloatV29 4.8s ease-in-out infinite;
}
.feather-one-v29 { left: 31%; top: 31%; }
.feather-two-v29 { right: 32%; top: 58%; animation-delay: .8s; }
.feather-three-v29 { left: 56%; bottom: 26%; animation-delay: 1.5s; }
.passport-card-v29 {
  border-radius: 36px;
  padding: 28px;
  background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,247,218,.92));
  box-shadow: 0 22px 54px rgba(55, 83, 50, .16);
  border: 1px solid rgba(255,255,255,.7);
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.passport-card-v29 h3 { font-size: 30px; line-height: 1.05; margin: 7px 0 10px; color: #23563e; }
.passport-card-v29 p { color: #5e725f; line-height: 1.55; }
.passport-list-v29 { display: grid; gap: 10px; margin: 16px 0 22px; }
.passport-list-v29 span {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  padding: 12px 13px;
  border-radius: 18px;
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(51, 102, 70, .08);
}
.passport-list-v29 strong { color: #2e5f42; font-size: 14px; }
.passport-list-v29 em { font-style: normal; font-weight: 800; color: #d18b00; font-size: 12px; white-space: nowrap; }
@keyframes morfuTinyWaveV29 { 0%,100% { transform: rotate(-3deg) translateY(0); } 50% { transform: rotate(4deg) translateY(-4px); } }
@keyframes landBounceV29 { 0% { transform: translateY(0); } 50% { transform: translateY(-7px) rotate(-5deg); } 100% { transform: translateY(0); } }
@keyframes featherFloatV29 { 0%,100% { transform: translateY(0) rotate(-8deg); } 50% { transform: translateY(-12px) rotate(10deg); } }
@media (max-width: 980px) {
  .map-shell-v29 { grid-template-columns: 1fr; }
  .map-paper-v29 { min-height: 760px; }
  .land-amazon-v29 { left: 7%; top: 13%; }
  .land-ocean-v29 { right: 7%; top: 15%; }
  .land-dino-v29 { left: 34%; top: 35%; }
  .land-space-v29 { left: 34%; bottom: 34%; }
  .land-safari-v29 { left: 7%; bottom: 11%; }
  .land-arctic-v29 { right: 7%; bottom: 11%; }
}
@media (max-width: 680px) {
  .map-paper-v29 { min-height: auto; padding: 20px; display: grid; gap: 14px; }
  .map-paper-v29::before, .map-center-v29, .map-path-v29, .map-corner-v29, .map-feather-v29 { display: none; }
  .map-land-v29 { position: static; width: auto; min-height: 112px; }
  .passport-card-v29 { padding: 22px; border-radius: 28px; }
  .passport-list-v29 span { display: grid; }
}

/* v30 — Premium animated World Map */
.world-map-premium-v30 {
  isolation: isolate;
}
.world-map-premium-v30::before {
  animation: mapCloudDriftV30 18s ease-in-out infinite;
}
.world-map-premium-v30::after {
  animation: mapCloudDriftV30 22s ease-in-out infinite reverse;
}
.map-paper-v30 {
  transform-style: preserve-3d;
  background:
    radial-gradient(circle at 19% 21%, rgba(124, 205, 119, .22), transparent 18%),
    radial-gradient(circle at 80% 23%, rgba(78, 198, 224, .24), transparent 18%),
    radial-gradient(circle at 21% 78%, rgba(255, 188, 83, .18), transparent 18%),
    radial-gradient(circle at 79% 78%, rgba(210, 235, 255, .24), transparent 18%),
    linear-gradient(135deg, rgba(126, 84, 38, .10), transparent 18%),
    repeating-linear-gradient(45deg, rgba(110, 76, 34, .035) 0 8px, rgba(255,255,255,.035) 8px 16px),
    #fff2c9;
}
.map-paper-v30::after {
  content: "";
  position: absolute;
  inset: -40%;
  background: linear-gradient(110deg, transparent 38%, rgba(255,255,255,.18) 48%, transparent 58%);
  transform: translateX(-45%) rotate(6deg);
  animation: mapPaperShimmerV30 9s ease-in-out infinite;
  pointer-events: none;
  z-index: 2;
}
.map-ambient-v30 {
  position: absolute;
  z-index: 4;
  pointer-events: none;
  user-select: none;
}
.map-cloud-a-v30,
.map-cloud-b-v30 {
  width: 122px;
  height: 42px;
  border-radius: 999px;
  background: rgba(255,255,255,.66);
  box-shadow: 32px 4px 0 rgba(255,255,255,.46), -18px 8px 0 rgba(255,255,255,.38);
  filter: blur(.2px);
}
.map-cloud-a-v30 { left: 18%; top: 9%; animation: mapCloudDriftV30 15s ease-in-out infinite; }
.map-cloud-b-v30 { right: 18%; bottom: 13%; transform: scale(.78); animation: mapCloudDriftV30 19s ease-in-out infinite reverse; }
.map-bird-v30 { left: 13%; top: 33%; font-size: 28px; animation: mapBirdFlyV30 8s ease-in-out infinite; }
.map-fish-v30 { right: 23%; top: 42%; font-size: 27px; animation: mapFishSwimV30 6.8s ease-in-out infinite; }
.map-sparkle-a-v30 { left: 48%; top: 18%; color: #f7b71d; text-shadow: 0 0 14px rgba(255, 211, 93, .9); animation: mapSparkleV30 3.4s ease-in-out infinite; }
.map-sparkle-b-v30 { right: 28%; bottom: 30%; color: #f7b71d; text-shadow: 0 0 14px rgba(255, 211, 93, .9); animation: mapSparkleV30 4.2s ease-in-out infinite .6s; }
.map-center-v30 {
  animation: mapBasePulseV30 4.6s ease-in-out infinite;
}
.map-center-v30 small {
  display: block;
  margin-top: -2px;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: rgba(49, 90, 54, .62);
}
.map-path-v30 {
  background: repeating-linear-gradient(90deg, rgba(125,88,45,.48) 0 9px, transparent 9px 18px);
  animation: mapPathPulseV30 3.8s ease-in-out infinite;
}
.path-two-v29 { animation-delay: .45s; }
.path-three-v29 { animation-delay: .9s; }
.path-four-v29 { animation-delay: 1.25s; }
.path-five-v30 { transform: rotate(-90deg); width: 210px; animation-delay: 1.55s; }
.path-six-v30 { transform: rotate(90deg); width: 210px; animation-delay: 1.9s; }
.map-land-v30 {
  border: 0;
  font-family: inherit;
  cursor: pointer;
  overflow: hidden;
  will-change: transform;
}
.map-land-v30 .land-glow-v30 {
  position: absolute;
  inset: -40%;
  background: radial-gradient(circle, rgba(255, 224, 111, .34), transparent 42%);
  opacity: 0;
  transform: scale(.74);
  transition: opacity .25s ease, transform .25s ease;
  pointer-events: none;
}
.map-land-v30:hover .land-glow-v30,
.map-land-v30:focus-visible .land-glow-v30 {
  opacity: 1;
  transform: scale(1);
}
.map-land-v30:hover,
.map-land-v30:focus-visible {
  outline: none;
  transform: translateY(-10px) scale(1.045) rotate(-.5deg);
}
.map-land-v30:hover strong,
.map-land-v30:focus-visible strong { color: #18472d; }
.active-land-v29.map-land-v30::after {
  content: "";
  position: absolute;
  inset: 8px;
  border-radius: 24px;
  border: 2px solid rgba(255, 211, 93, .28);
  animation: activeLandRingV30 3.2s ease-in-out infinite;
  pointer-events: none;
}
.locked-land-v29.map-land-v30:hover,
.locked-land-v29.map-land-v30:focus-visible {
  filter: saturate(.96);
}
.map-paper-v30[data-active-world="amazon"] .map-bird-v30 { animation-duration: 4.4s; }
.map-paper-v30[data-active-world="ocean"] .map-fish-v30 { animation-duration: 3.8s; }
.map-paper-v30[data-active-world="space"] { background-blend-mode: normal; }
.map-feather-v30 {
  cursor: default;
  filter: drop-shadow(0 0 8px rgba(255, 211, 93, .7));
}
.map-toast-v30 {
  position: absolute;
  left: 50%;
  bottom: 24px;
  z-index: 20;
  transform: translate(-50%, 18px) scale(.96);
  opacity: 0;
  padding: 12px 18px;
  border-radius: 999px;
  color: #5d3c05;
  background: rgba(255, 244, 191, .96);
  box-shadow: 0 18px 36px rgba(89, 55, 7, .16);
  border: 1px solid rgba(255, 211, 93, .62);
  font-weight: 900;
  pointer-events: none;
  transition: opacity .22s ease, transform .22s ease;
}
.map-toast-v30.is-visible {
  opacity: 1;
  transform: translate(-50%, 0) scale(1);
}
.passport-card-v30 {
  position: relative;
  overflow: hidden;
}
.passport-card-v30::before {
  content: "";
  position: absolute;
  width: 190px;
  height: 190px;
  right: -64px;
  top: -60px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255,211,93,.25), transparent 62%);
  animation: passportGlowV30 6s ease-in-out infinite;
}
.passport-stamp-v30 {
  width: 124px;
  height: 124px;
  display: grid;
  place-items: center;
  margin: 2px 0 14px;
  border-radius: 50%;
  color: rgba(139, 72, 10, .72);
  border: 4px solid rgba(198, 107, 18, .35);
  transform: rotate(-9deg);
  font-weight: 1000;
  text-align: center;
  line-height: 1.05;
  letter-spacing: .08em;
  font-size: 13px;
  background: rgba(255, 246, 213, .58);
  box-shadow: inset 0 0 0 3px rgba(198, 107, 18, .12);
}
.passport-open-v30 {
  box-shadow: inset 4px 0 0 rgba(255, 211, 93, .9);
}
@keyframes mapPaperShimmerV30 { 0%, 55% { transform: translateX(-48%) rotate(6deg); opacity: 0; } 70% { opacity: 1; } 100% { transform: translateX(48%) rotate(6deg); opacity: 0; } }
@keyframes mapCloudDriftV30 { 0%,100% { transform: translateX(0); } 50% { transform: translateX(18px); } }
@keyframes mapBirdFlyV30 { 0%,100% { transform: translate(0,0) rotate(-7deg); } 50% { transform: translate(24px,-12px) rotate(8deg); } }
@keyframes mapFishSwimV30 { 0%,100% { transform: translate(0,0) scaleX(1); } 50% { transform: translate(-22px, 10px) scaleX(1); } }
@keyframes mapSparkleV30 { 0%,100% { transform: scale(.8) rotate(0deg); opacity: .45; } 50% { transform: scale(1.22) rotate(18deg); opacity: 1; } }
@keyframes mapBasePulseV30 { 0%,100% { box-shadow: 0 18px 42px rgba(80, 76, 38, .18), 0 0 0 0 rgba(255,211,93,.28); } 50% { box-shadow: 0 22px 48px rgba(80, 76, 38, .22), 0 0 0 12px rgba(255,211,93,0); } }
@keyframes mapPathPulseV30 { 0%,100% { opacity: .46; filter: saturate(1); } 50% { opacity: .86; filter: saturate(1.35); } }
@keyframes activeLandRingV30 { 0%,100% { transform: scale(.96); opacity: .32; } 50% { transform: scale(1.02); opacity: .72; } }
@keyframes passportGlowV30 { 0%,100% { transform: scale(1); opacity: .75; } 50% { transform: scale(1.18); opacity: 1; } }
@media (prefers-reduced-motion: reduce) {
  .world-map-premium-v30::before,
  .world-map-premium-v30::after,
  .map-paper-v30::after,
  .map-cloud-a-v30,
  .map-cloud-b-v30,
  .map-bird-v30,
  .map-fish-v30,
  .map-sparkle-a-v30,
  .map-sparkle-b-v30,
  .map-center-v30,
  .map-path-v30,
  .active-land-v29.map-land-v30::after,
  .passport-card-v30::before {
    animation: none !important;
  }
}
@media (max-width: 680px) {
  .map-paper-v30::after,
  .map-ambient-v30,
  .path-five-v30,
  .path-six-v30,
  .map-toast-v30 { display: none; }
  .map-land-v30 { text-align: left; justify-items: start; align-content: center; }
  .map-land-v30 b { justify-self: start; }
  .passport-stamp-v30 { width: 104px; height: 104px; font-size: 12px; }
}

/* v31 — Hidden Golden Feather Hunt */
.golden-feather-hunt-v31 .map-paper-v30 { overflow: hidden; }
.hidden-feather-v31 {
  position: absolute;
  z-index: 9;
  width: 42px;
  height: 42px;
  border: 0;
  border-radius: 999px;
  background: radial-gradient(circle at 35% 35%, #fff8bd, #f6b51d 42%, #d98500 100%);
  box-shadow: 0 12px 24px rgba(170, 91, 0, .22), 0 0 0 8px rgba(255, 217, 96, .16);
  cursor: pointer;
  display: grid;
  place-items: center;
  font-size: 22px;
  transform-origin: center;
  animation: hiddenFeatherFloatV31 5.6s ease-in-out infinite;
  transition: transform .25s ease, opacity .25s ease, filter .25s ease;
}
.hidden-feather-v31:hover,
.hidden-feather-v31:focus-visible {
  transform: translateY(-7px) scale(1.14) rotate(8deg);
  filter: drop-shadow(0 0 14px rgba(255, 209, 65, .9));
  outline: none;
}
.hidden-feather-v31.is-found {
  opacity: .22;
  pointer-events: none;
  filter: grayscale(.3);
  transform: scale(.75) rotate(22deg);
}
.hidden-feather-one-v31 { left: 27%; top: 26%; }
.hidden-feather-two-v31 { right: 30%; top: 57%; animation-delay: -.8s; }
.hidden-feather-three-v31 { left: 55%; bottom: 24%; animation-delay: -1.5s; }
.hidden-feather-four-v31 { left: 13%; bottom: 22%; animation-delay: -2.1s; }
.hidden-feather-five-v31 { right: 13%; top: 21%; animation-delay: -3s; }
.feather-toast-v31 {
  position: absolute;
  left: 50%;
  bottom: 26px;
  z-index: 20;
  transform: translateX(-50%) translateY(18px) scale(.96);
  opacity: 0;
  pointer-events: none;
  background: linear-gradient(135deg, #fff9db, #ffffff);
  color: #7a4a00;
  border: 2px solid rgba(247, 183, 29, .42);
  border-radius: 999px;
  padding: 12px 18px;
  font-weight: 900;
  box-shadow: 0 18px 34px rgba(67, 47, 8, .18);
  transition: opacity .22s ease, transform .22s ease;
}
.feather-toast-v31.is-visible {
  opacity: 1;
  transform: translateX(-50%) translateY(0) scale(1);
}
.feather-counter-card-v31 {
  margin: 16px 0;
  padding: 15px;
  border-radius: 22px;
  background: linear-gradient(135deg, #fff6c8, #fdfdf4 70%);
  border: 1px solid rgba(247, 183, 29, .35);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.55);
}
.feather-counter-card-v31 strong,
.feather-counter-card-v31 span,
.feather-counter-card-v31 small { display: block; }
.feather-counter-card-v31 strong { color: #6e4300; font-size: 14px; text-transform: uppercase; letter-spacing: .08em; }
.feather-counter-card-v31 span { font-size: 26px; font-weight: 1000; color: #15442b; margin: 4px 0; }
.feather-counter-card-v31 small { color: rgba(38, 80, 54, .72); font-weight: 700; line-height: 1.35; }
.map-paper-v30.feather-complete-v31 {
  animation: mapCompleteGlowV31 1.2s ease-in-out 1;
}
@keyframes hiddenFeatherFloatV31 {
  0%,100% { transform: translateY(0) rotate(-7deg); }
  50% { transform: translateY(-11px) rotate(10deg); }
}
@keyframes mapCompleteGlowV31 {
  0%,100% { box-shadow: 0 30px 70px rgba(70, 65, 30, .18); }
  45% { box-shadow: 0 30px 70px rgba(70, 65, 30, .18), 0 0 0 18px rgba(255, 213, 77, .2); }
}
@media (max-width: 760px) {
  .hidden-feather-v31 { position: static; width: 100%; height: 48px; margin: 2px 0; border-radius: 18px; justify-content: start; padding-left: 16px; }
  .hidden-feather-v31::after { content: ' Find a Golden Feather'; font-size: 13px; font-weight: 900; color: #744900; margin-left: 8px; }
  .feather-toast-v31 { position: fixed; left: 50%; bottom: 18px; width: calc(100% - 40px); text-align: center; }
}
@media (prefers-reduced-motion: reduce) {
  .hidden-feather-v31 { animation: none; }
}


/* v32 — Premium Morfu Footer */
.site-footer-premium-v32 {
  position: relative;
  overflow: hidden;
  padding: clamp(42px, 7vw, 96px) clamp(20px, 6vw, 94px) 36px;
  display: grid;
  gap: 30px;
  justify-items: center;
  background:
    radial-gradient(circle at 20% 10%, rgba(255, 221, 102, .35), transparent 25%),
    radial-gradient(circle at 80% 20%, rgba(102, 214, 199, .22), transparent 30%),
    linear-gradient(180deg, #e8f6ef 0%, #d6f1ec 48%, #fff7d7 100%);
  color: #17472d;
  font-weight: 800;
}
.footer-sky-v32 { position: absolute; inset: 0; pointer-events: none; overflow: hidden; }
.footer-cloud-v32 {
  position: absolute;
  width: 180px;
  height: 64px;
  border-radius: 999px;
  background: rgba(255,255,255,.52);
  box-shadow: 42px 8px 0 rgba(255,255,255,.36), -34px 12px 0 rgba(255,255,255,.32);
  filter: blur(.2px);
  animation: footerCloudDriftV32 12s ease-in-out infinite;
}
.footer-cloud-one-v32 { top: 34px; left: 7%; }
.footer-cloud-two-v32 { top: 95px; right: 9%; transform: scale(.76); animation-delay: -4s; }
.footer-feather-v32 {
  position: absolute;
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 999px;
  background: radial-gradient(circle at 35% 35%, #fff8bd, #f6b51d 42%, #d98500 100%);
  box-shadow: 0 12px 24px rgba(170, 91, 0, .14), 0 0 0 8px rgba(255, 217, 96, .12);
  animation: footerFeatherFloatV32 7s ease-in-out infinite;
}
.footer-feather-one-v32 { top: 44px; right: 24%; }
.footer-feather-two-v32 { bottom: 92px; left: 18%; animation-delay: -2.4s; transform: scale(.82) rotate(-8deg); }
.footer-card-v32 {
  position: relative;
  z-index: 1;
  width: min(1120px, 100%);
  display: grid;
  grid-template-columns: 260px 1fr;
  align-items: center;
  gap: clamp(24px, 5vw, 60px);
  padding: clamp(24px, 5vw, 48px);
  border-radius: 42px;
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(255,255,255,.78);
  box-shadow: 0 28px 68px rgba(31, 96, 73, .16), inset 0 0 0 1px rgba(255,255,255,.5);
  backdrop-filter: blur(8px);
}
.footer-morfu-v32 {
  width: clamp(170px, 20vw, 240px);
  aspect-ratio: 1;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: radial-gradient(circle at 40% 35%, #fff6a2, #ffd84e 56%, #f0a91c 100%);
  box-shadow: 0 24px 40px rgba(188, 117, 10, .22), 0 0 0 14px rgba(255,255,255,.42);
  justify-self: center;
  animation: footerMorfuWaveV32 5.8s ease-in-out infinite;
}
.footer-morfu-v32 img { width: 74%; filter: drop-shadow(0 12px 18px rgba(106, 72, 0, .18)); }
.footer-message-v32 { text-align: left; max-width: 720px; }
.footer-message-v32 h2 {
  margin: 6px 0 10px;
  font-size: clamp(30px, 4vw, 52px);
  line-height: 1.02;
  color: #123f29;
}
.footer-message-v32 p { margin: 0 0 14px; font-size: clamp(16px, 1.8vw, 19px); line-height: 1.55; color: rgba(23, 71, 45, .82); }
.footer-signature-v32 { font-size: 20px !important; color: #15442b !important; }
.footer-actions-v32 { margin-top: 18px; }
.footer-links-v32 {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 18px;
  justify-items: center;
  text-align: center;
}
.footer-links-v32 img { width: 160px; }
.footer-links-v32 nav { display: flex; flex-wrap: wrap; gap: 10px 18px; justify-content: center; }
.footer-links-v32 nav a {
  color: #17472d;
  text-decoration: none;
  font-weight: 900;
  transition: transform .2s ease, color .2s ease;
}
.footer-links-v32 nav a:hover,
.footer-links-v32 nav a:focus-visible { color: #0c8a78; transform: translateY(-2px); }
.footer-links-v32 p { margin: 0; color: rgba(23, 71, 45, .72); font-size: 14px; }
@keyframes footerCloudDriftV32 { 0%,100% { transform: translateX(0); } 50% { transform: translateX(26px); } }
@keyframes footerFeatherFloatV32 { 0%,100% { transform: translateY(0) rotate(-8deg); } 50% { transform: translateY(-18px) rotate(12deg); } }
@keyframes footerMorfuWaveV32 { 0%,100% { transform: translateY(0) rotate(-1deg); } 50% { transform: translateY(-8px) rotate(2deg); } }
@media (max-width: 760px) {
  .site-footer-premium-v32 { padding-top: 44px; }
  .footer-card-v32 { grid-template-columns: 1fr; text-align: center; border-radius: 30px; padding: 26px 20px; }
  .footer-message-v32 { text-align: center; }
  .footer-actions-v32 { justify-content: center; }
  .footer-morfu-v32 { width: 168px; }
  .footer-cloud-v32, .footer-feather-two-v32 { display: none; }
  .footer-links-v32 nav { gap: 8px 14px; }
}
@media (prefers-reduced-motion: reduce) {
  .footer-cloud-v32,
  .footer-feather-v32,
  .footer-morfu-v32 { animation: none !important; }
}

/* v33 — Mobile + Performance polish */
:root { --tap: 44px; }
html { text-size-adjust: 100%; -webkit-text-size-adjust: 100%; }
body { overflow-x: hidden; }
.btn, .header-cta, .main-nav a, .map-land-v30, .hidden-feather-v31 { min-height: var(--tap); }
img { height: auto; }

/* smoother but lighter interactions */
.btn, .header-cta, .adventure-choice-card, .map-land-v30, .footer-links-v32 nav a {
  will-change: transform;
}

/* keep sticky navigation compact on mid-sized screens */
@media (max-width: 1180px) {
  .site-header { grid-template-columns: 190px 1fr auto; gap: 14px; }
  .logo img { width: 178px; }
  .main-nav { gap: 12px; }
  .main-nav img { width: 58px; height: 58px; }
  .main-nav a { font-size: 13px; }
  .header-cta { padding: 14px 18px; }
}

@media (max-width: 980px) {
  .site-header { position: sticky; }
  .hero-copy { backdrop-filter: blur(6px); }
  .hero-amazon-note { margin-left: auto; margin-right: auto; max-width: 520px; }
  .adventure-choice-card .choice-copy { padding: 18px; }
  .parents-trust-grid-v27, .parents-special-grid-v27, .club-pillars-v28, .club-step-grid-v28 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .site-header { grid-template-columns: 142px 1fr auto; }
  .header-cta { display: none; }
  .hero { padding-bottom: 34px; }
  .hero-copy { margin-top: 10px; }
  .hero-actions { gap: 12px; }
  .hero-actions .btn { font-size: 17px; }
  .section-heading { margin-bottom: 24px; }
  .section-heading p { max-width: 620px; margin-left: auto; margin-right: auto; }
  .banner-grid { gap: 18px; }
  .adventure-choice-card { border-radius: 26px; }
  .adventure-choice-card img { border-radius: 20px; }
  .choice-copy h3 { font-size: 22px; }
  .choice-copy p { font-size: 15px; }
  .map-paper-v30 { padding: 18px; border-radius: 30px; }
  .map-grid-v29 { gap: 12px; }
  .map-land-v30 { padding: 16px; }
  .map-land-v30 strong { font-size: 18px; }
  .passport-card-v30 { border-radius: 24px; }
  .parents-trust-grid-v27, .parents-special-grid-v27, .club-pillars-v28, .club-step-grid-v28 { grid-template-columns: 1fr; }
  .footer-card-v32 .btn { width: 100%; justify-content: center; }
}

@media (max-width: 480px) {
  h1 { font-size: clamp(38px, 11vw, 46px); line-height: 1.02; }
  h2 { font-size: clamp(30px, 9vw, 38px); line-height: 1.05; }
  .eyebrow, .small-label { font-size: 14px; }
  .hero { padding-top: min(128vw, 465px); }
  .hero-copy { padding: 18px 14px; }
  .hero-text { font-size: 16px; }
  .hero-amazon-note { font-size: 14px; line-height: 1.45; }
  .btn img { width: 28px; height: 28px; }
  .main-nav { left: 10px; right: 10px; grid-template-columns: repeat(2, 1fr); padding: 12px; }
  .main-nav a { padding: 8px 4px; border-radius: 16px; background: rgba(255,255,255,.5); }
  .main-nav img { width: 42px; height: 42px; }
  .section { padding-left: 14px; padding-right: 14px; }
  .choice-copy { padding: 16px !important; }
  .book-flow-steps-v25, .inside-adventure-grid-v25, .backpack-mission-grid-v26, .parents-inside-grid-v27 { grid-template-columns: 1fr !important; }
  .footer-links-v32 img { width: 132px; }
  .footer-links-v32 nav { font-size: 14px; }
}

/* reduce rendering work for below-fold sections where supported */
@supports (content-visibility: auto) {
  .section:not(:first-child), .site-footer-premium-v32 {
    content-visibility: auto;
    contain-intrinsic-size: 800px;
  }
}

@media print {
  .site-header, .hero-actions, .hidden-feather-v31, .footer-actions-v32 { display: none !important; }
  body { background: #fff; color: #000; }
  .section, .hero { padding: 24px !important; }
}


/* v35 — launch candidate polish */
.skip-link {
  position: fixed;
  left: 16px;
  top: 12px;
  z-index: 9999;
  transform: translateY(-140%);
  background: #2f6f45;
  color: #fff;
  padding: 12px 18px;
  border-radius: 999px;
  font-weight: 900;
  box-shadow: 0 12px 30px rgba(0,0,0,.18);
}
.skip-link:focus { transform: translateY(0); outline: 3px solid #ffd24a; }
.launch-form-status-v35 {
  margin-top: 14px;
  padding: 14px 16px;
  border-radius: 18px;
  background: #fff8da;
  border: 1px solid rgba(87, 55, 12, .14);
  color: var(--brown);
  font-weight: 800;
  line-height: 1.35;
}
.btn:focus-visible, .main-nav a:focus-visible, .header-cta:focus-visible, .map-land-v30:focus-visible, .hidden-feather-v31:focus-visible {
  outline: 4px solid rgba(255, 210, 74, .95);
  outline-offset: 4px;
}
.hidden-feather-v31.is-found { pointer-events: none; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

/* v39 — Morfu Knowledge Hub */
.knowledge-hero-v39{min-height:520px;display:grid;place-items:center;padding:130px 24px 80px;text-align:center;background:radial-gradient(circle at 50% 20%,rgba(255,255,255,.95),rgba(255,246,205,.88) 42%,rgba(205,241,223,.9));}
.knowledge-hero-v39>div{max-width:850px}.knowledge-hero-v39 h1{font-size:clamp(44px,7vw,82px);margin:.15em 0}.knowledge-hero-v39 p{font-size:clamp(18px,2vw,23px);line-height:1.6}.knowledge-hero-v39 .button-row{justify-content:center}
.knowledge-grid-v39{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:1180px;margin:0 auto}.knowledge-card-v39 a{display:block;height:100%;padding:30px;border-radius:30px;background:rgba(255,255,255,.92);box-shadow:0 18px 45px rgba(66,77,45,.12);border:1px solid rgba(81,111,74,.12);text-decoration:none;color:inherit;transition:.25s ease}.knowledge-card-v39 a:hover{transform:translateY(-6px);box-shadow:0 25px 60px rgba(66,77,45,.18)}.knowledge-card-v39 h2{font-size:clamp(25px,3vw,36px);margin:12px 0}.knowledge-card-v39 p{line-height:1.7}.knowledge-card-v39 strong{color:#28704c}.knowledge-tag-v39{display:inline-block;padding:8px 13px;border-radius:999px;background:#fff4b4;color:#6a5110;font-weight:900;font-size:13px;text-transform:uppercase;letter-spacing:.08em}
.knowledge-principles-v39{background:linear-gradient(180deg,#effaf4,#fff)}.knowledge-principle-grid-v39,.knowledge-mini-grid-v39{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;max-width:1100px;margin:0 auto}.knowledge-principle-grid-v39>div,.knowledge-mini-grid-v39>a{padding:24px;border-radius:26px;background:#fff;box-shadow:0 15px 35px rgba(51,80,59,.1)}.knowledge-principle-grid-v39 strong,.knowledge-mini-grid-v39 strong{display:block;font-size:21px;margin-bottom:8px}.knowledge-mini-grid-v39>a{text-decoration:none;color:inherit;display:flex;flex-direction:column;gap:8px;transition:.2s ease}.knowledge-mini-grid-v39>a:hover{transform:translateY(-4px)}.knowledge-teaser-v39{background:linear-gradient(135deg,#fff5cb,#e8f8ef)}.center-actions-v39{justify-content:center;margin-top:28px}
.article-shell-v39{max-width:940px;margin:0 auto;padding:130px 24px 80px}.breadcrumbs-v39{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-weight:800;font-size:14px;margin-bottom:34px}.breadcrumbs-v39 a{color:#28704c}.article-header-v39{text-align:center;margin-bottom:45px}.article-header-v39 h1{font-size:clamp(40px,6vw,72px);margin:.2em 0}.article-deck-v39{font-size:clamp(19px,2.2vw,24px);line-height:1.65}.article-meta-v39{font-size:14px;font-weight:800;opacity:.72}.article-content-v39{display:grid;gap:18px}.fact-block-v39{padding:27px 30px;border-radius:26px;background:#fffdf4;border:1px solid rgba(95,81,39,.12);box-shadow:0 12px 30px rgba(73,67,37,.07)}.fact-block-v39 h2{font-size:clamp(24px,3vw,34px);margin:0 0 10px}.fact-block-v39 p{font-size:18px;line-height:1.75;margin:0}.explorer-prompt-v39{margin:44px 0;padding:34px;border-radius:30px;background:linear-gradient(135deg,#e9f8ef,#fff4bc);text-align:center}.explorer-prompt-v39 .button-row{justify-content:center}.related-discoveries-v39{padding-top:20px}.related-discoveries-v39>div{display:flex;flex-wrap:wrap;gap:12px}.related-discoveries-v39 a{padding:12px 18px;border-radius:999px;background:#fff2aa;font-weight:900;color:#5e4a0a;text-decoration:none}.knowledge-crosslink-v39{text-align:center;background:#f0f9f4}.knowledge-crosslink-v39 .btn{margin-top:15px}
@media(max-width:760px){.knowledge-grid-v39,.knowledge-principle-grid-v39,.knowledge-mini-grid-v39{grid-template-columns:1fr}.knowledge-hero-v39{padding-top:110px}.article-shell-v39{padding:110px 15px 60px}.fact-block-v39{padding:22px}.article-content-v39 p{font-size:17px}}


/* v40 — Core Web Vitals and motion-safe rendering */
@supports (content-visibility: auto) {
  main > section:not(.hero),
  .site-footer {
    content-visibility: auto;
    contain-intrinsic-size: 900px;
  }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
}

/* v42 Pinterest discovery */
.pinterest-save-v42{display:flex;justify-content:center;margin:2rem auto 3rem;padding:0 1rem}.pinterest-save-v42 a{display:inline-flex;align-items:center;gap:.6rem;padding:.9rem 1.25rem;border-radius:999px;background:#bd081c;color:#fff;font-weight:800;text-decoration:none;box-shadow:0 10px 24px rgba(189,8,28,.22);transition:transform .2s ease,box-shadow .2s ease}.pinterest-save-v42 a:before{content:"P";display:grid;place-items:center;width:1.8rem;height:1.8rem;border-radius:50%;background:#fff;color:#bd081c;font-family:Georgia,serif;font-weight:900}.pinterest-save-v42 a:hover,.pinterest-save-v42 a:focus-visible{transform:translateY(-2px);box-shadow:0 14px 30px rgba(189,8,28,.3)}@media(max-width:600px){.pinterest-save-v42 a{width:100%;max-width:360px;justify-content:center}}


/* v43 — Animal Powers integrated across Morfu.club */
.animal-power-status-v43{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center;margin:1rem 0 1.2rem;padding:.65rem .9rem;border-radius:999px;background:rgba(255,255,255,.86);box-shadow:0 8px 24px rgba(47,73,77,.12);width:max-content;max-width:100%;font-size:.9rem}.animal-power-status-v43 span{font-weight:800}.animal-power-status-v43 strong{color:#147c73}.animal-power-status-v43 em{font-style:normal;color:#6849a8}.current-power-v43,.book-power-card-v43{display:flex;gap:1rem;align-items:center;margin:1.25rem 0;padding:1rem 1.15rem;border-radius:22px;background:linear-gradient(135deg,#f3edff,#e5fbff);border:1px solid rgba(83,72,151,.14);box-shadow:0 12px 28px rgba(59,56,112,.12)}.current-power-v43 h3,.book-power-card-v43 h2{margin:.12rem 0 .35rem}.current-power-v43 small{font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#6d55a9}.power-orb-v43{display:grid;place-items:center;flex:0 0 70px;width:70px;height:70px;border-radius:50%;font-size:2.2rem;background:radial-gradient(circle at 35% 30%,#fff,#bcecf1 58%,#8d78d1);box-shadow:inset 0 0 0 5px rgba(255,255,255,.65),0 8px 22px rgba(71,67,139,.22)}.animal-power-explainer-v43,.power-training-v43,.parent-power-v43,.club-powers-v43,.map-power-legend-v43,.book-power-v43{position:relative}.power-steps-v43,.parent-power-points-v43{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin:1.5rem 0}.parent-power-points-v43{grid-template-columns:repeat(3,minmax(0,1fr))}.power-steps-v43 article,.parent-power-points-v43 article{padding:1.05rem;border-radius:20px;background:#fff;box-shadow:0 10px 24px rgba(35,61,65,.09)}.power-steps-v43 b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#f7c84b;color:#3d3313}.power-collection-v43{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem;margin-top:1.25rem}.power-collection-v43 span{display:flex;flex-direction:column;gap:.2rem;align-items:center;text-align:center;padding:1rem;border-radius:18px;background:#f5f1e8;filter:saturate(.7);opacity:.78}.power-collection-v43 .unlocked-v43{background:linear-gradient(135deg,#e4fbf7,#eee8ff);filter:none;opacity:1;box-shadow:0 10px 24px rgba(41,113,109,.13)}.power-collection-v43 em{font-size:.78rem;font-style:normal;color:#6f6b65}.footer-power-v43{text-align:center;margin:.65rem auto 0;font-weight:700;color:#6d55a9}.book-power-card-v43{max-width:900px;margin-inline:auto}.book-power-card-v43 ul{margin:.7rem 0 0;padding-left:1.2rem}.map-status-v29.available-v29{max-width:16rem;text-align:center}
@media(max-width:820px){.power-steps-v43,.parent-power-points-v43,.power-collection-v43{grid-template-columns:1fr 1fr}.current-power-v43,.book-power-card-v43{align-items:flex-start}.animal-power-status-v43{width:auto}}
@media(max-width:520px){.power-steps-v43,.parent-power-points-v43,.power-collection-v43{grid-template-columns:1fr}.current-power-v43,.book-power-card-v43{flex-direction:column}.power-orb-v43{width:60px;height:60px;flex-basis:60px}}


/* v44 — Morfu Design System */
:root{--morfu-gold:#ffd84d;--morfu-gold-deep:#b87a10;--morfu-teal:#5dc5c9;--morfu-teal-deep:#2b7074;--morfu-brown:#6d3e24;--morfu-cream:#fff8da;--morfu-card-radius:28px;--morfu-card-shadow:0 18px 45px rgba(49,72,65,.12);}
.morfu-icon-v44{object-fit:contain;filter:drop-shadow(0 5px 7px rgba(65,55,27,.12));}
.main-nav .morfu-icon-v44{width:46px;height:46px;transition:transform .22s ease,filter .22s ease}.main-nav a:hover .morfu-icon-v44,.main-nav a:focus-visible .morfu-icon-v44{transform:translateY(-3px) rotate(-3deg) scale(1.06);filter:drop-shadow(0 8px 10px rgba(65,55,27,.18))}.btn .morfu-icon-v44{width:27px;height:27px}.btn:hover .morfu-icon-v44{transform:rotate(-7deg) scale(1.08)}
.page-badge-v44{display:inline-flex;align-items:center;gap:.65rem;margin:0 auto 1rem;padding:.55rem 1rem .55rem .65rem;border-radius:999px;background:rgba(255,255,255,.9);border:1px solid rgba(89,70,24,.12);box-shadow:0 10px 25px rgba(63,75,58,.1);font-size:.78rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#5d4a15}.page-badge-v44 img{width:34px;height:34px;object-fit:contain}.article-shell-v39 .page-badge-v44,.knowledge-hero-v39 .page-badge-v44{margin-inline:auto}
:is(.activity-card,.mission-card-v26,.knowledge-card-v39 a,.parents-pillars-v27 article,.trait-card,.inside-adventure-grid-v25 article,.book-flow-steps-v25 article,.step-v20,.map-land-v30,.power-steps-v43 article,.parent-power-points-v43 article){border-radius:var(--morfu-card-radius)!important;border:1px solid rgba(65,86,75,.1)!important;box-shadow:var(--morfu-card-shadow)!important;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important}
:is(.activity-card,.mission-card-v26,.knowledge-card-v39 a,.parents-pillars-v27 article,.trait-card,.inside-adventure-grid-v25 article,.book-flow-steps-v25 article,.step-v20,.map-land-v30,.power-steps-v43 article,.parent-power-points-v43 article):hover{transform:translateY(-6px);box-shadow:0 25px 60px rgba(49,72,65,.17)!important;border-color:rgba(93,197,201,.35)!important}
.hidden-feather-v31{font-size:0!important;background:url('assets/icons/morfu/feather.svg') center/contain no-repeat!important;width:48px!important;height:48px!important;filter:drop-shadow(0 6px 8px rgba(164,112,12,.28));animation:morfuFeatherFloat 4.5s ease-in-out infinite}.hidden-feather-v31::after{content:''}.hidden-feather-v31:hover{transform:scale(1.13) rotate(-6deg)!important}
@keyframes morfuFeatherFloat{0%,100%{translate:0 0;rotate:-2deg}50%{translate:0 -8px;rotate:4deg}}
.power-orb-v43{font-size:0;background:radial-gradient(circle at 35% 30%,#fff,#bcecf1 58%,#8d78d1)}.power-orb-v43::before{content:'';width:72%;height:72%;background:url('assets/icons/morfu/badge-dolphin.svg') center/contain no-repeat}.backpack-visual-v26::after{content:'';display:block;width:min(190px,48vw);aspect-ratio:1;background:url('assets/icons/morfu/backpack.svg') center/contain no-repeat;margin:auto;filter:drop-shadow(0 18px 18px rgba(70,49,27,.2))}.backpack-visual-v26 img{display:none!important}
.btn{position:relative;overflow:hidden}.btn::after{content:'';position:absolute;inset:-45% auto -45% -35%;width:22%;transform:rotate(18deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.72),transparent);transition:left .55s ease}.btn:hover::after{left:120%}.btn:focus-visible{outline:4px solid rgba(255,216,77,.8);outline-offset:4px}
@media(max-width:600px){.page-badge-v44{font-size:.68rem}.page-badge-v44 img{width:30px;height:30px}.main-nav .morfu-icon-v44{width:40px;height:40px}}
@media(prefers-reduced-motion:reduce){.hidden-feather-v31{animation:none}.btn::after{display:none}}


/* v45 UX & Conversion */
.visually-hidden-v45{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.journey-strip-v45{background:linear-gradient(90deg,#fff8df,#eef8dd);border-top:1px solid rgba(84,110,53,.16);border-bottom:1px solid rgba(84,110,53,.16)}
.journey-inner-v45{max-width:1180px;margin:auto;padding:14px 24px;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;font-weight:700;color:#345522}
.journey-label-v45{color:#70431c;margin-right:8px}.journey-step-v45{background:#fff;border:1px solid #dce7c8;border-radius:999px;padding:8px 13px;box-shadow:0 5px 14px rgba(58,86,39,.08)}
.journey-step-v45 b{display:inline-grid;place-items:center;width:23px;height:23px;margin-right:6px;border-radius:50%;background:#e8eddc}.journey-step-v45.is-open b{background:#ffd34e}.journey-arrow-v45{opacity:.45}
.kit-contents-v45{max-width:760px;margin:26px auto 0;padding:24px;border-radius:24px;background:#fffaf0;border:1px solid #eadbb7;text-align:left}.kit-contents-v45 h3{margin-top:0}.kit-contents-v45 ul{columns:2;column-gap:28px;padding-left:22px}.kit-contents-v45 li{break-inside:avoid;margin:8px 0}.kit-note-v45{font-weight:700;color:#4c6c31}
.kit-preview-v45{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin:20px auto;max-width:900px}.kit-preview-v45 span{min-height:88px;display:grid;place-items:center;border-radius:18px;background:linear-gradient(145deg,#fff,#f7efd8);border:1px solid #eadbb7;font-weight:800;color:#684521;box-shadow:0 8px 20px rgba(97,70,28,.08)}
.club-status-grid-v45{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:30px auto 0;max-width:960px;text-align:left}.club-status-grid-v45 article{padding:25px;border-radius:24px;background:#fff;border:1px solid #dce7c8;box-shadow:0 10px 28px rgba(57,80,36,.08)}.club-status-grid-v45 ul{padding-left:22px}.club-status-grid-v45 li{margin:8px 0}
.book-facts-v45{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:28px 0 0}.book-facts-v45 div{padding:14px;border-radius:16px;background:rgba(255,255,255,.88);border:1px solid rgba(94,104,63,.14)}.book-facts-v45 dt{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:#697458}.book-facts-v45 dd{margin:4px 0 0;font-weight:800;color:#3f2f1f}
.footer-status-v45{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:14px 0 6px}.footer-status-v45 span{background:rgba(255,255,255,.82);border:1px solid rgba(106,77,35,.15);padding:10px 16px;border-radius:18px;min-width:180px}.footer-status-v45 small{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:.68rem;opacity:.7}.footer-status-v45 strong{display:block;margin-top:3px}
@media(max-width:760px){.kit-contents-v45 ul{columns:1}.kit-preview-v45{grid-template-columns:repeat(2,1fr)}.club-status-grid-v45{grid-template-columns:1fr}.book-facts-v45{grid-template-columns:repeat(2,1fr)}.journey-arrow-v45{display:none}.journey-inner-v45{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap}.journey-step-v45{white-space:nowrap}}

/* v46 Explorer Mission launch cards */
.mission-launch-v46{display:flex;align-items:center;justify-content:space-between;gap:28px;margin:36px auto;padding:clamp(24px,4vw,40px);max-width:1050px;border-radius:30px;background:linear-gradient(135deg,#dffaff,#fff4be);border:3px solid #9fdce4;box-shadow:0 18px 40px rgba(8,86,112,.13)}.mission-launch-copy-v46{max-width:720px}.mission-launch-v46>img{filter:drop-shadow(0 10px 12px rgba(191,128,17,.2));animation:morfuFeatherShimmer 3s ease-in-out infinite}.mission-teaser-v46{text-align:center}.hero-mission-note-v46{margin:12px 0 0}.hero-mission-note-v46 a{display:inline-block;padding:7px 13px;border-radius:999px;background:#eefcff;color:#076f92;font-weight:900;text-decoration:none;border:2px solid #a7dce6}@media(max-width:720px){.mission-launch-v46{flex-direction:column;text-align:center}.mission-launch-v46>img{width:115px;height:115px}}


/* v47 — Explorer Missions integrated into their worlds */
.world-with-missions-v47 {
  scroll-margin-top: 110px;
}
.world-power-v47 {
  display: inline-flex;
  align-items: center;
  gap: .7rem;
  margin: .35rem 0 1rem;
  padding: .55rem .85rem;
  border: 2px solid rgba(43, 113, 143, .18);
  border-radius: 999px;
  background: rgba(231, 250, 255, .82);
}
.world-power-v47 img {
  width: 42px;
  height: 42px;
}
.world-power-v47 small,
.world-power-v47 strong {
  display: block;
}
.world-power-v47 small {
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .08em;
  opacity: .72;
}
.world-missions-v47 {
  margin: 1rem 0 1.15rem;
  padding: 1.15rem;
  border: 2px solid rgba(224, 168, 37, .24);
  border-radius: 24px;
  background: linear-gradient(145deg, rgba(255, 250, 224, .95), rgba(232, 249, 255, .94));
  box-shadow: 0 14px 34px rgba(67, 91, 105, .10);
}
.world-missions-v47 h3 {
  margin: .1rem 0 .85rem;
}
.world-mission-card-v47 {
  display: grid;
  grid-template-columns: 60px minmax(0, 1fr) auto;
  align-items: center;
  gap: .9rem;
}
.world-mission-card-v47 img {
  width: 54px;
  height: 54px;
  filter: drop-shadow(0 8px 10px rgba(203, 147, 25, .18));
}
.world-mission-card-v47 strong,
.world-mission-card-v47 span {
  display: block;
}
.world-mission-card-v47 span {
  margin-top: .2rem;
  line-height: 1.4;
  opacity: .82;
}
.world-missions-coming-v47 {
  margin: .85rem 0 0;
  font-size: .9rem;
  font-weight: 700;
  opacity: .7;
}
.book-world-mission-v47 {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr) auto;
  align-items: center;
  gap: 1rem;
  margin-top: 1.25rem;
  padding: 1rem 1.15rem;
  border-radius: 26px;
  border: 2px solid rgba(224, 168, 37, .25);
  background: linear-gradient(135deg, #fff9db, #e8f8ff);
}
.book-world-mission-v47 > img {
  width: 66px;
  height: 66px;
}
.book-world-mission-v47 h2,
.book-world-mission-v47 p {
  margin: .12rem 0;
}
.mission-world-nav-v47 {
  width: min(960px, calc(100% - 24px));
  margin: 14px auto 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: .75rem;
  padding: .7rem .95rem;
  border-radius: 999px;
  background: rgba(255,255,255,.9);
  box-shadow: 0 8px 24px rgba(28,75,94,.12);
  font-weight: 800;
}
.mission-world-nav-v47 a {
  color: inherit;
  text-decoration: none;
}
.mission-world-nav-v47 a:hover {
  text-decoration: underline;
}
@media (max-width: 760px) {
  .world-mission-card-v47,
  .book-world-mission-v47 {
    grid-template-columns: 52px minmax(0, 1fr);
  }
  .world-mission-card-v47 .btn,
  .book-world-mission-v47 .btn {
    grid-column: 1 / -1;
    width: 100%;
    text-align: center;
  }
  .mission-world-nav-v47 {
    border-radius: 20px;
    font-size: .82rem;
  }
}


/* v48 — Coral Ocean Hub */
.coral-ocean-page-v48 {
  background: #f3fbfd;
}
.coral-hero-v48 {
  position: relative;
  min-height: 68vh;
  display: grid;
  place-items: end start;
  overflow: hidden;
  background: url('/assets/banners/banner_dive_into_adventure.webp?v=56') center/cover no-repeat;
}
.coral-hero-overlay-v48 {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(4,49,71,.86) 0%, rgba(4,49,71,.48) 48%, rgba(4,49,71,.08) 100%);
}
.coral-hero-content-v48 {
  position: relative;
  z-index: 1;
  width: min(740px, calc(100% - 32px));
  margin: 0 auto 7vh max(6vw, 18px);
  color: white;
}
.coral-hero-content-v48 h1 {
  margin: .35rem 0 .6rem;
  font-size: clamp(2.5rem, 6vw, 5.7rem);
  line-height: .98;
}
.coral-hero-content-v48 p {
  max-width: 630px;
  font-size: clamp(1rem, 2.2vw, 1.35rem);
}
.hero-badge-v48 {
  display: inline-flex;
  padding: .5rem .85rem;
  border-radius: 999px;
  background: rgba(255,255,255,.18);
  border: 1px solid rgba(255,255,255,.4);
  backdrop-filter: blur(8px);
  font-weight: 800;
}
.world-nav-v48 {
  position: sticky;
  top: 0;
  z-index: 20;
  display: flex;
  gap: .35rem;
  overflow-x: auto;
  padding: .72rem max(18px, 4vw);
  background: rgba(255,255,255,.94);
  border-bottom: 1px solid rgba(23,105,132,.14);
  box-shadow: 0 8px 26px rgba(25,81,99,.08);
}
.world-nav-v48 a {
  flex: 0 0 auto;
  text-decoration: none;
  color: #174e63;
  font-weight: 800;
  padding: .55rem .8rem;
  border-radius: 999px;
}
.world-nav-v48 a:hover {
  background: #e8f9fd;
}
.progress-grid-v48,
.hub-card-grid-v48,
.character-grid-v48 {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
}
.progress-card-v48,
.hub-action-card-v48,
.character-card-v48 {
  border: 2px solid rgba(20,113,143,.12);
  border-radius: 26px;
  background: white;
  padding: 1.15rem;
  box-shadow: 0 14px 36px rgba(43,89,108,.09);
}
.progress-card-v48 {
  text-align: center;
}
.progress-card-v48 img,
.progress-icon-v48 {
  display: block;
  width: 72px;
  height: 72px;
  margin: 0 auto .55rem;
  font-size: 3.3rem;
  line-height: 72px;
}
.progress-card-v48 strong,
.progress-card-v48 b {
  display: block;
}
.progress-bar-v48 {
  height: 12px;
  margin: .7rem 0 .3rem;
  border-radius: 999px;
  overflow: hidden;
  background: #dfeff3;
}
.progress-bar-v48 span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg,#29b7cf,#f2bd3d);
  transition: width .6s ease;
}
.hub-two-col-v48 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: clamp(1.3rem,4vw,3rem);
}
.hub-feature-image-v48 {
  width: 100%;
  height: auto;
  border-radius: 30px;
  box-shadow: 0 18px 48px rgba(22,75,94,.16);
}
.mission-hub-grid-v48 {
  display: grid;
  grid-template-columns: repeat(5, minmax(0,1fr));
  gap: 1rem;
}
.mission-hub-card-v48 {
  position: relative;
  min-height: 330px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  border-radius: 28px;
  padding: 1.05rem;
  border: 2px solid rgba(20,113,143,.12);
  background: white;
  box-shadow: 0 15px 35px rgba(43,89,108,.09);
}
.mission-hub-card-v48 img,
.mission-emoji-v48 {
  width: 82px;
  height: 82px;
  margin: .5rem auto .8rem;
  align-self: center;
}
.mission-emoji-v48 {
  display: grid;
  place-items: center;
  font-size: 3.5rem;
}
.mission-number-v48 {
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .12em;
  color: #27718b;
}
.mission-hub-card-v48 h3 {
  margin: .2rem 0 .4rem;
}
.mission-hub-card-v48 .btn {
  margin-top: auto;
  width: 100%;
  text-align: center;
}
.mission-locked-v48 {
  opacity: .7;
  filter: saturate(.7);
}
.hub-action-card-v48 {
  color: inherit;
  text-decoration: none;
  text-align: center;
  transition: transform .2s ease, box-shadow .2s ease;
}
.hub-action-card-v48:hover {
  transform: translateY(-5px);
  box-shadow: 0 22px 46px rgba(43,89,108,.14);
}
.hub-action-card-v48 img,
.hub-emoji-v48 {
  display: block;
  width: 84px;
  height: 84px;
  margin: 0 auto .55rem;
}
.hub-emoji-v48 {
  font-size: 3.5rem;
  line-height: 84px;
}
.character-grid-v48 {
  grid-template-columns: repeat(3, minmax(0,1fr));
}
.character-card-v48 {
  text-align: center;
}
.character-card-v48 img {
  width: min(210px, 78%);
  height: auto;
  margin: 0 auto .6rem;
}
.character-placeholder-v48 {
  width: 150px;
  height: 150px;
  display: grid;
  place-items: center;
  margin: 0 auto .6rem;
  border-radius: 50%;
  background: linear-gradient(145deg,#ffe3f2,#e7f9ff);
  font-size: 5rem;
}
.journal-card-v48,
.passport-card-v48,
.next-world-v48 {
  display: grid;
  grid-template-columns: 110px minmax(0,1fr);
  align-items: center;
  gap: 1.25rem;
  padding: clamp(1.2rem,3vw,2rem);
  border-radius: 30px;
  background: white;
  box-shadow: 0 16px 40px rgba(43,89,108,.1);
}
.journal-card-v48 img {
  width: 96px;
  height: 96px;
}
.passport-card-v48 {
  grid-template-columns: 1fr 1fr;
}
.passport-list-v48 {
  margin: 0;
  padding: 0;
  list-style: none;
}
.passport-list-v48 li {
  display: flex;
  justify-content: space-between;
  margin: .45rem 0;
  padding: .65rem .8rem;
  border-radius: 14px;
  background: #eef6f8;
  font-weight: 800;
}
.passport-list-v48 .complete-v48 {
  background: #e4f7e9;
  color: #20663a;
}
.next-world-v48 {
  grid-template-columns: 1fr auto;
  background: linear-gradient(135deg,#e8fbf0,#fff4ce);
}
.next-world-emoji-v48 {
  font-size: clamp(5rem,12vw,9rem);
}
@media (max-width: 1050px) {
  .mission-hub-grid-v48 { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .progress-grid-v48 { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .hub-card-grid-v48 { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .coral-hero-v48 { min-height: 76vh; background-position: 58% center; }
  .coral-hero-overlay-v48 { background: linear-gradient(0deg,rgba(4,49,71,.88),rgba(4,49,71,.18)); }
  .coral-hero-content-v48 { margin: 0 16px 4vh; width: calc(100% - 32px); }
  .hub-two-col-v48,
  .passport-card-v48,
  .next-world-v48,
  .journal-card-v48 { grid-template-columns: 1fr; }
  .mission-hub-grid-v48,
  .progress-grid-v48,
  .hub-card-grid-v48,
  .character-grid-v48 { grid-template-columns: 1fr; }
  .mission-hub-card-v48 { min-height: 0; }
  .next-world-emoji-v48 { text-align: center; }
}


/* v49 — Shared World Engine */
.world-engine-v49 {
  --world-accent: #22a9c3;
  --world-deep: #164d61;
  --world-soft: #eaf9fc;
  --world-warm: #f5bd44;
  background: var(--world-soft);
}
.world-engine-v49 .world-theme-card-v49 {
  border-color: color-mix(in srgb, var(--world-accent) 25%, transparent);
}
.world-engine-v49 .progress-bar-v48 span {
  background: linear-gradient(90deg, var(--world-accent), var(--world-warm));
}
.world-engine-v49 .world-nav-v48 a:hover {
  background: color-mix(in srgb, var(--world-accent) 14%, white);
}
.world-engine-v49 .mission-complete-v49 {
  outline: 3px solid color-mix(in srgb, var(--world-accent) 45%, white);
  opacity: 1;
}
.world-engine-v49 .mission-complete-v49::after {
  content: "✓";
  position: absolute;
  top: 12px;
  right: 12px;
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #2f9c5b;
  color: white;
  font-weight: 900;
}
.rainforest-world-v49 {
  --world-accent: #3e9a51;
  --world-deep: #204f2f;
  --world-soft: #f0f8e8;
  --world-warm: #e8a52f;
}
.rainforest-hero-v49 {
  position: relative;
  min-height: 70vh;
  display: grid;
  place-items: end start;
  overflow: hidden;
  background:
    linear-gradient(90deg, rgba(20,63,35,.88), rgba(20,63,35,.30)),
    url('/assets/banners/banner_explore_amazing_worlds.webp?v=56') center/cover no-repeat;
}
.rainforest-hero-v49 .coral-hero-content-v48 {
  color: white;
}
.rainforest-world-v49 .hub-action-card-v48,
.rainforest-world-v49 .progress-card-v48,
.rainforest-world-v49 .character-card-v48,
.rainforest-world-v49 .mission-hub-card-v48 {
  border-color: rgba(62,154,81,.18);
}
.world-status-grid-v49 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 1rem;
}
.world-status-card-v49 {
  padding: 1.2rem;
  border-radius: 24px;
  background: white;
  box-shadow: 0 14px 36px rgba(43,89,108,.09);
}
.world-status-card-v49 strong,
.world-status-card-v49 span {
  display: block;
}
.world-status-card-v49 span {
  margin-top: .25rem;
  opacity: .75;
}
.qr-ready-note-v49 {
  margin-top: 1rem;
  padding: .8rem 1rem;
  border-radius: 16px;
  background: rgba(255,255,255,.82);
  border: 1px solid rgba(255,255,255,.5);
  font-weight: 800;
}
@media (max-width: 760px) {
  .rainforest-hero-v49 {
    min-height: 76vh;
    background-position: 58% center;
  }
  .world-status-grid-v49 {
    grid-template-columns: 1fr;
  }
}

/* Home v50 — focused seven-section homepage */
.home-v50 .section{padding-top:88px;padding-bottom:88px}
.hero-v50 .hero-actions{max-width:640px}
.home-book-v50{background:linear-gradient(180deg,#fffdf7 0%,#fff7df 100%)}
.home-book-grid-v50{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:minmax(300px,.85fr) minmax(360px,1.15fr);gap:72px;align-items:center}
.home-book-visual-v50{text-align:center}
.home-book-visual-v50 img{width:min(100%,480px);height:auto;border-radius:24px;box-shadow:0 24px 60px rgba(64,52,28,.2);transform:rotate(-1deg)}
.home-book-copy-v50 h2{font-size:clamp(2.2rem,4vw,4.2rem);margin:.2em 0}
.home-book-copy-v50>p{font-size:1.15rem;line-height:1.7}
.home-checks-v50{list-style:none;padding:0;margin:28px 0;display:grid;gap:12px}
.home-checks-v50 li{position:relative;padding-left:34px;font-weight:700}
.home-checks-v50 li:before{content:'✓';position:absolute;left:0;color:#e18b19;font-weight:900}
.journey-cards-v50{max-width:1180px;margin:44px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.journey-cards-v50 article{position:relative;background:#fff;border:1px solid rgba(57,88,66,.12);border-radius:28px;padding:34px 30px;box-shadow:0 14px 38px rgba(55,70,54,.09)}
.journey-cards-v50 img{width:64px;height:64px}.journey-cards-v50 article>span{position:absolute;right:24px;top:24px;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#ffdc73;font-weight:900}
.journey-cards-v50 h3{font-size:1.5rem;margin:18px 0 8px}.journey-cards-v50 p{line-height:1.65}.journey-cards-v50 a{display:inline-block;margin-top:10px;font-weight:900;color:#145a54}
.home-map-v50 .home-map-shell-v50{max-width:1050px;margin-left:auto;margin-right:auto}
.home-map-v50 .map-paper-v29{min-height:590px}
.home-map-v50 .home-more-worlds-v50{left:50%;right:auto;bottom:8%;top:auto;transform:translateX(-50%)}
.home-map-v50 .path-three-v29,.home-map-v50 .path-four-v29,.home-map-v50 .path-five-v30,.home-map-v50 .path-six-v30{display:none}
.home-parents-v50 .parents-layout-v27{align-items:center}.home-parent-benefits-v50{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:28px 0}
.home-parent-benefits-v50 span{background:#fff;border-radius:16px;padding:14px 16px;font-weight:800;box-shadow:0 8px 24px rgba(43,63,47,.08)}
.home-club-v50{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center}
.home-club-card-v50{display:grid;grid-template-columns:170px 1fr;gap:24px;align-items:center}
.home-kit-preview-v50{width:100%;height:auto;border-radius:16px;box-shadow:0 12px 30px rgba(42,43,53,.18)}
.site-footer-premium-v32 .footer-links-v32{padding-top:46px}
@media(max-width:900px){.home-book-grid-v50,.home-club-v50{grid-template-columns:1fr}.journey-cards-v50{grid-template-columns:1fr}.home-book-grid-v50{gap:36px}.home-club-card-v50{grid-template-columns:130px 1fr}.home-map-v50 .map-paper-v29{min-height:680px}.home-parent-benefits-v50{grid-template-columns:1fr}}
@media(max-width:620px){.home-v50 .section{padding-top:62px;padding-bottom:62px}.home-club-card-v50{grid-template-columns:1fr}.home-kit-preview-v50{max-width:180px;margin:0 auto}.home-map-v50 .home-more-worlds-v50{left:50%;bottom:4%}.home-book-copy-v50 .button-row{align-items:stretch}.home-book-copy-v50 .btn{width:100%}}

/* v52 — conversion-focused Books page */
.book-sales-hero-v52{position:relative;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:clamp(2rem,6vw,6rem);align-items:center;padding:clamp(3rem,7vw,7rem) max(5vw,24px);overflow:hidden;background:radial-gradient(circle at 80% 30%,rgba(83,206,225,.28),transparent 34%),linear-gradient(135deg,#fff8df 0%,#fff 50%,#e7faff 100%)}
.book-sales-hero-v52:after{content:"";position:absolute;inset:auto -8% -130px 35%;height:250px;background:rgba(255,201,77,.16);border-radius:50%;filter:blur(10px)}
.book-sales-copy-v52{position:relative;z-index:2;max-width:760px}.book-sales-copy-v52 h1{font-size:clamp(2.7rem,6vw,5.6rem);line-height:.96;margin:.35rem 0 1rem}.book-sales-subtitle-v52{font-size:clamp(1.2rem,2vw,1.65rem);font-weight:800;color:#663d83;margin:0 0 1rem}.book-sales-proof-v52{display:flex;flex-wrap:wrap;gap:.65rem;margin:1.5rem 0}.book-sales-proof-v52 span{background:#fff;border:2px solid rgba(35,85,104,.12);border-radius:999px;padding:.62rem .9rem;font-weight:800;box-shadow:0 8px 25px rgba(35,85,104,.08)}.book-sales-note-v52{font-size:.92rem;opacity:.72;margin-top:1rem}.book-sales-cover-v52{position:relative;z-index:2;display:grid;place-items:center}.book-sales-cover-v52 .book-cover{position:relative;z-index:2;width:min(100%,480px);height:auto;filter:drop-shadow(0 28px 34px rgba(34,53,66,.24));transform:rotate(1.5deg)}.book-cover-glow-v52{position:absolute;width:90%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#ffdb76 0%,rgba(80,211,229,.32) 45%,transparent 72%);filter:blur(16px)}.book-cover-ribbon-v52{position:absolute;z-index:3;right:2%;top:7%;background:#713f91;color:#fff;padding:.7rem 1rem;border-radius:999px;font-weight:900;box-shadow:0 10px 25px rgba(65,29,89,.24)}
.book-value-strip-v52{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;padding-top:1.25rem;padding-bottom:1.25rem;background:#173d55;color:#fff}.book-value-strip-v52 article{display:grid;gap:.25rem;text-align:center;padding:1rem 1.5rem;border-right:1px solid rgba(255,255,255,.18)}.book-value-strip-v52 article:last-child{border-right:0}.book-value-strip-v52 strong{font-size:1.2rem}.book-value-strip-v52 span{opacity:.84}
.book-journey-v52{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;max-width:1200px;margin:2rem auto 0}.book-journey-v52 article{position:relative;background:#fff;border-radius:28px;padding:1.6rem;box-shadow:0 16px 38px rgba(31,70,86,.1);border:2px solid rgba(32,122,149,.08)}.book-journey-v52 article>span{position:absolute;top:1rem;right:1rem;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#ffd25f;color:#3d3150;font-weight:950}.book-journey-v52 img{width:58px;height:58px}.book-journey-v52 h3{margin:.8rem 0 .45rem}
.book-story-promise-v52{background:linear-gradient(135deg,#eafcff,#fff6db)}.book-story-card-v52{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:2rem;max-width:1150px;margin:auto;background:rgba(255,255,255,.86);border-radius:34px;padding:clamp(1.6rem,4vw,3.4rem);box-shadow:0 24px 60px rgba(32,84,100,.12)}.book-power-mini-v52{align-self:center;background:#fff7d6;border:2px solid #f6d56a;border-radius:26px;padding:1.7rem;text-align:center}.book-power-mini-v52 img{width:76px;height:76px}.book-power-mini-v52 h3{font-size:1.65rem;margin:.3rem 0 .6rem}
.book-parent-buy-grid-v52{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:clamp(2rem,5vw,5rem);align-items:center;max-width:1150px;margin:auto}.book-specs-v52{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:1.6rem}.book-specs-v52 div{background:#fff;border-radius:18px;padding:1rem 1.15rem;border:1px solid rgba(30,88,106,.1)}.book-specs-v52 dt{font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;color:#6f6f77;font-weight:900}.book-specs-v52 dd{margin:.3rem 0 0;font-weight:900;color:#1c4b61}.book-buy-card-v52{background:#fff;border-radius:30px;padding:1.5rem;text-align:center;box-shadow:0 20px 50px rgba(35,73,89,.13)}.book-buy-card-v52 img{width:min(100%,250px);height:auto;filter:drop-shadow(0 16px 20px rgba(36,47,55,.2))}.book-buy-card-v52 .btn{width:100%;margin:.6rem 0 .8rem}.book-buy-card-v52 .small-link{display:inline-block}
.book-after-reading-v52{background:#fff}.book-after-grid-v52{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;max-width:1100px;margin:2rem auto 0}.book-after-grid-v52 a{display:block;color:inherit;text-decoration:none;background:#f5fbfc;border:2px solid rgba(25,110,135,.1);border-radius:28px;padding:1.7rem;transition:.2s ease}.book-after-grid-v52 a:hover{transform:translateY(-6px);box-shadow:0 18px 36px rgba(35,80,98,.13);border-color:#63bed0}.book-after-grid-v52 img{width:64px;height:64px}.book-after-grid-v52 h3{margin:.7rem 0 .4rem}.book-after-grid-v52 span{font-weight:900;color:#6d438c}
.book-next-world-v52{display:flex;align-items:center;justify-content:space-between;gap:2rem;background:linear-gradient(120deg,#174f47,#307660);color:#fff}.book-next-world-v52>div{max-width:760px}.book-next-world-v52 h2{color:#fff}.book-next-world-v52 .small-label{color:#ffe083}.book-next-world-v52 .btn-secondary{background:#fff;color:#265b4e;white-space:nowrap}.book-final-cta-v52{background:#fff7de}.book-final-panel-v52{max-width:1100px;margin:auto}.book-final-panel-v52 h2{margin:.25rem 0}.book-sales-actions-v52 .btn{min-width:190px}
@media(max-width:900px){.book-sales-hero-v52,.book-story-card-v52,.book-parent-buy-grid-v52{grid-template-columns:1fr}.book-sales-cover-v52{order:-1}.book-sales-cover-v52 .book-cover{width:min(75vw,390px)}.book-journey-v52{grid-template-columns:repeat(2,1fr)}.book-value-strip-v52{grid-template-columns:1fr}.book-value-strip-v52 article{border-right:0;border-bottom:1px solid rgba(255,255,255,.18)}.book-after-grid-v52{grid-template-columns:1fr}.book-next-world-v52{flex-direction:column;align-items:flex-start}.book-specs-v52{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.book-sales-hero-v52{padding-top:2rem}.book-sales-copy-v52 h1{font-size:2.7rem}.book-journey-v52,.book-specs-v52{grid-template-columns:1fr}.book-sales-actions-v52{display:grid}.book-sales-actions-v52 .btn{width:100%}}


/* v56 nav and banner refresh */
.main-nav img,.main-nav .morfu-icon-v44,.main-nav .nav-icon-v56{width:46px;height:46px;object-fit:contain;filter:drop-shadow(0 5px 7px rgba(65,55,27,.12));}
.main-nav a{gap:7px;}
.main-nav a:hover .nav-icon-v56,.main-nav a:focus-visible .nav-icon-v56{transform:translateY(-3px) rotate(-3deg) scale(1.06);filter:drop-shadow(0 8px 10px rgba(65,55,27,.18));}
.logo img{image-rendering:auto;}
@media (min-width:1100px){.main-nav img,.main-nav .morfu-icon-v44,.main-nav .nav-icon-v56{width:50px;height:50px;}}
@media (max-width:900px){.main-nav img,.main-nav .morfu-icon-v44,.main-nav .nav-icon-v56{width:42px;height:42px;}.main-nav a{gap:6px;}}
@media (max-width:600px){.main-nav img,.main-nav .morfu-icon-v44,.main-nav .nav-icon-v56{width:38px;height:38px;}}


/* v60 precise navigation alignment */
.main-nav{align-items:start;}
.main-nav a{display:grid!important;grid-template-rows:58px auto!important;justify-items:center!important;align-items:start!important;gap:5px!important;line-height:1.05!important;}
.main-nav a img{width:50px!important;height:50px!important;object-fit:contain!important;object-position:center!important;margin:0!important;align-self:center!important;justify-self:center!important;transform:none!important;}
.main-nav a[href="index.html"] img,.main-nav a[href="meet-morfu.html"] img{width:54px!important;height:54px!important;transform:translateY(-2px)!important;}
.main-nav a span,.main-nav a{vertical-align:top;}
@media(max-width:900px){.main-nav a{grid-template-rows:50px auto!important}.main-nav a img{width:44px!important;height:44px!important}.main-nav a[href="index.html"] img,.main-nav a[href="meet-morfu.html"] img{width:47px!important;height:47px!important;transform:translateY(-1px)!important}}
@media(max-width:600px){.main-nav a{grid-template-rows:45px auto!important}.main-nav a img{width:40px!important;height:40px!important}.main-nav a[href="index.html"] img,.main-nav a[href="meet-morfu.html"] img{width:42px!important;height:42px!important}}

/* v61 forced nav alignment */
.main-nav a{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px;min-width:78px}.main-nav img{width:48px!important;height:48px!important;object-fit:contain!important;object-position:center!important;margin:0 auto!important;transform:none!important}.main-nav a:nth-child(1) img,.main-nav a[href="meet-morfu.html"] img{width:50px!important;height:50px!important}


/* v63 exact Morfu head + strict nav baseline */
.site-header .main-nav{align-items:start!important;gap:12px!important;}
.site-header .main-nav a{
  display:grid!important;
  grid-template-rows:60px 28px!important;
  place-items:center!important;
  align-content:start!important;
  width:104px!important;
  min-width:104px!important;
  padding:0!important;
  margin:0!important;
  line-height:1!important;
  text-align:center!important;
  white-space:nowrap!important;
}
.site-header .main-nav a[href="meet-morfu.html"]{width:118px!important;min-width:118px!important;}
.site-header .main-nav a img{
  grid-row:1!important;
  width:50px!important;
  height:50px!important;
  max-width:50px!important;
  max-height:50px!important;
  object-fit:contain!important;
  object-position:center center!important;
  align-self:center!important;
  justify-self:center!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
}
.site-header .main-nav a[href="index.html"] img,
.site-header .main-nav a[href="meet-morfu.html"] img{
  width:56px!important;
  height:56px!important;
  max-width:56px!important;
  max-height:56px!important;
}
@media(max-width:1100px){
  .site-header .main-nav{gap:6px!important;}
  .site-header .main-nav a{width:88px!important;min-width:88px!important;font-size:12px!important;}
  .site-header .main-nav a[href="meet-morfu.html"]{width:104px!important;min-width:104px!important;}
}
@media(max-width:900px){
  .site-header .main-nav a{display:flex!important;flex-direction:column!important;width:auto!important;min-width:0!important;white-space:normal!important;gap:5px!important;}
}
.books-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 32px;
  margin-top: 32px;
}

.book-card {
  background: white;
  border-radius: 24px;
  padding: 24px;
  text-align: center;
}

.book-card img {
  width: 100%;
  max-width: 280px;
  margin: 0 auto 20px;
}

@media (max-width: 800px) {
  .books-grid {
    grid-template-columns: 1fr;
  }
}
