
/* Fire-Wolf Media Growth Layer — designed to extend approved V8.1 without changing index.html visuals */
.growth-page, .article-wrap, .detail-hero, .directory-hero{max-width:1220px;margin:0 auto}
.subpage-header{grid-template-columns:1fr auto 1fr}
.subpage-header nav{gap:18px}
.subpage-header nav a{font-size:12px}

.detail-hero,.directory-hero{padding:72px 5vw 42px;display:grid;grid-template-columns:minmax(230px,.55fr) 1.45fr;gap:58px;align-items:center}
.directory-hero{grid-template-columns:1fr;text-align:center;max-width:1050px}
.detail-cover{position:relative;padding:18px;background:#100e0c;border:1px solid var(--line);box-shadow:0 18px 38px #0008}
.detail-cover:before,.detail-cover:after{content:"❦";position:absolute;color:var(--gold-hi);font-size:34px;text-shadow:0 0 7px #9a551f80}
.detail-cover:before{left:-10px;top:-18px}.detail-cover:after{right:-10px;bottom:-18px;transform:rotate(180deg)}
.detail-cover img{width:100%;height:auto;object-fit:contain}
.eyebrow,.book-number{color:var(--gold);font:700 10px Arial,sans-serif;letter-spacing:.18em;text-transform:uppercase}
.detail-copy h1,.directory-hero h1,.article-header h1{font-size:clamp(52px,6vw,86px);line-height:.92;margin:10px 0 18px;font-weight:500;color:var(--cream)}
.detail-copy h1::first-letter,.directory-hero h1::first-letter{color:var(--gold-hi)}
.detail-lead,.article-deck{font-size:21px;line-height:1.55;color:#dbc8b6;max-width:760px}
.status-large{color:var(--gold-hi);font-family:"Romanesco",cursive;font-size:34px;margin:22px 0 8px}
.button{display:inline-block;padding:13px 20px;background:linear-gradient(135deg,#a13c20,#d16a35);border:1px solid #dc8450;color:#fff;text-decoration:none;text-transform:uppercase;font:700 10px Arial;letter-spacing:.08em}
.button.secondary{background:#0d0b0a;border-color:#75502d;color:#e9d7bf}
.detail-copy .actions{display:flex;gap:12px;flex-wrap:wrap}
.share-bar{margin-top:24px;display:flex;gap:10px;align-items:center;flex-wrap:wrap;color:#ab927c;font:700 10px Arial;text-transform:uppercase;letter-spacing:.08em}
.share-bar a,.copy-link{color:#d8b26c;background:#0e0c0a;border:1px solid #5e3d22;padding:7px 10px;text-decoration:none;font:inherit;text-transform:uppercase;cursor:pointer}

.prose-section,.next-section,.content-section,.journal-section{padding:24px 5vw 58px;max-width:1220px;margin:0 auto}
.prose-card,.article-body,.guide-card,.discovery-card,.journal-card{background:linear-gradient(145deg,#12100e,#0b0908);border:1px solid var(--line);padding:30px;box-shadow:0 18px 35px #0005}
.prose-card h2,.article-cta h2,.guide-card h2,.journal-card h2{font-family:"Romanesco",cursive;color:var(--gold-hi);font-size:44px;font-weight:400;margin:0 0 14px}
.prose-card p,.article-body p,.guide-card p,.journal-card p,.prose-card li{color:#ccb9a7;line-height:1.72;font-size:16px}
.feature-list{padding-left:22px}
.feature-list li{margin:9px 0}
.section-heading{text-align:center;margin:0 0 32px}.section-kicker,.script-accent{font-family:"Romanesco",cursive;color:var(--gold-hi);font-size:48px;margin:0}.section-heading h2{font-size:clamp(38px,4.5vw,62px);margin:2px 0 12px;font-weight:500}
.ornamental-divider{height:34px;background:url('/gold-divider.png') center/contain no-repeat;max-width:540px;margin:10px auto 0}.ornamental-divider span{display:none}
.discovery-grid,.guide-grid,.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.discovery-card,.guide-card,.journal-card{display:block;color:inherit;text-decoration:none;position:relative}
.discovery-card:before,.guide-card:before,.journal-card:before{content:"❦";position:absolute;color:var(--gold);left:12px;top:8px;font-size:18px}
.discovery-card h3,.guide-card h3,.journal-card h3{font-size:25px;margin:12px 0;color:var(--cream)}
.discovery-card p,.guide-card p,.journal-card p{margin-bottom:0}

.article-wrap{padding:68px 5vw}.article-header{max-width:930px;margin:0 auto 28px;text-align:center}.article-body{max-width:930px;margin:0 auto;padding:42px 52px;position:relative}
.article-body:before,.article-body:after{content:"";display:block;height:26px;background:url('/gold-divider.png') center/contain no-repeat;margin:0 auto 28px}.article-body:after{margin:28px auto 0;transform:rotate(180deg)}
.article-cta{margin-top:34px;border-top:1px solid #4c321f;padding-top:24px;text-align:center}

.directory-hero .hero-logo-mini{width:min(250px,42vw);margin:0 auto 20px}.directory-hero .hero-logo-mini img{border-radius:50%;box-shadow:0 0 42px #8f401c33}
.directory-hero .lead{margin:0 auto;max-width:800px}

/* Inherit approved support treatment when used on subpages */
.growth-support{max-width:1220px;margin:0 auto 50px;padding:0 5vw}
.growth-support .support-box{grid-template-columns:1fr 1fr}

@media(max-width:1000px){.subpage-header .header-tagline{display:none}.subpage-header{grid-template-columns:1fr auto}.detail-hero{grid-template-columns:.65fr 1.35fr}.discovery-grid,.guide-grid,.journal-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.detail-hero{grid-template-columns:1fr;text-align:center}.detail-cover{max-width:360px;margin:auto}.detail-copy .actions,.share-bar{justify-content:center}.discovery-grid,.guide-grid,.journal-grid{grid-template-columns:1fr}.article-body{padding:28px 24px}.subpage-header nav{display:none}.subpage-header nav.open{display:flex}}


/* Growth pages: comfortable page-edge spacing. Homepage intentionally unaffected. */
.growth-page main,
.growth-page .growth-shell,
.growth-page .growth-header-inner,
.growth-page .growth-footer-inner {
  width: min(1180px, calc(100% - 96px));
  margin-left: auto;
  margin-right: auto;
}

@media (max-width: 900px) {
  .growth-page main,
  .growth-page .growth-shell,
  .growth-page .growth-header-inner,
  .growth-page .growth-footer-inner {
    width: calc(100% - 48px);
  }
}

@media (max-width: 520px) {
  .growth-page main,
  .growth-page .growth-shell,
  .growth-page .growth-header-inner,
  .growth-page .growth-footer-inner {
    width: calc(100% - 32px);
  }
}


/* =========================================================
   Growth-page navigation / section-spacing correction
   Homepage does not load this stylesheet and is unaffected.
   ========================================================= */

.growth-page .site-nav,
.growth-page .growth-nav,
.growth-page nav {
  position: relative !important;
  top: auto !important;
  bottom: auto !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  z-index: 10;
}

.growth-page .site-nav,
.growth-page .growth-nav {
  width: min(1180px, calc(100% - 96px));
  margin: 48px auto 0;
  padding: 18px 0;
  border-top: 1px solid rgba(190, 125, 43, 0.35);
  border-bottom: 1px solid rgba(190, 125, 43, 0.35);
}

.growth-page .site-nav-inner,
.growth-page .growth-nav-inner,
.growth-page nav .nav-inner {
  display: grid !important;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 30px;
  width: 100%;
}

.growth-page .brand,
.growth-page .nav-brand {
  white-space: nowrap;
}

.growth-page .tagline,
.growth-page .nav-tagline {
  text-align: center;
  white-space: normal !important;
  line-height: 1.35;
  margin: 0 !important;
}

.growth-page .nav-links,
.growth-page .menu,
.growth-page nav ul {
  display: flex !important;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 16px 20px;
  margin: 0 !important;
  padding: 0 !important;
}

.growth-page .nav-links a,
.growth-page .menu a,
.growth-page nav li a {
  white-space: nowrap;
}

.growth-page .growth-section,
.growth-page section {
  scroll-margin-top: 24px;
}

.growth-page .site-nav + section,
.growth-page .growth-nav + section,
.growth-page nav + section {
  margin-top: 64px !important;
  padding-top: 0 !important;
}

.growth-page .world-intro,
.growth-page .section-intro,
.growth-page .growth-section:first-of-type {
  position: relative !important;
  z-index: 1;
}

/* Remove excessive empty space in the opening block without crowding it. */
.growth-page main > .hero,
.growth-page main > .growth-hero,
.growth-page .start-hero {
  padding-bottom: 24px !important;
  margin-bottom: 0 !important;
}

/* Tablet */
@media (max-width: 980px) {
  .growth-page .site-nav,
  .growth-page .growth-nav {
    width: calc(100% - 48px);
  }

  .growth-page .site-nav-inner,
  .growth-page .growth-nav-inner,
  .growth-page nav .nav-inner {
    grid-template-columns: 1fr;
    gap: 14px;
    text-align: center;
  }

  .growth-page .brand,
  .growth-page .nav-brand,
  .growth-page .tagline,
  .growth-page .nav-tagline {
    text-align: center;
  }

  .growth-page .nav-links,
  .growth-page .menu,
  .growth-page nav ul {
    justify-content: center;
  }
}

/* Phone */
@media (max-width: 520px) {
  .growth-page .site-nav,
  .growth-page .growth-nav {
    width: calc(100% - 32px);
    margin-top: 36px;
    padding: 16px 0;
  }

  .growth-page .nav-links,
  .growth-page .menu,
  .growth-page nav ul {
    gap: 12px 14px;
  }

  .growth-page .site-nav + section,
  .growth-page .growth-nav + section,
  .growth-page nav + section {
    margin-top: 44px !important;
  }
}

/* =========================================================
   FINAL SUBPAGE HEADER FIX
   Actual HTML has brand, tagline, button and nav as direct
   children of .subpage-header. Give them dedicated rows.
   Homepage does not load growth-v8.css.
   ========================================================= */
.growth-page .subpage-header{
  position:relative !important;
  top:auto !important;
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) !important;
  grid-template-areas:
    "brand tagline"
    "nav nav" !important;
  align-items:center !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  padding:18px 48px 16px !important;
  column-gap:36px !important;
  row-gap:14px !important;
  background:#080706ee !important;
  border-bottom:1px solid #3a2518 !important;
}

.growth-page .subpage-header .brand{
  grid-area:brand !important;
  justify-self:start !important;
  align-self:center !important;
  white-space:nowrap !important;
  margin:0 !important;
}

.growth-page .subpage-header .header-tagline{
  grid-area:tagline !important;
  display:block !important;
  justify-self:end !important;
  align-self:center !important;
  width:auto !important;
  max-width:100% !important;
  padding:0 !important;
  margin:0 !important;
  text-align:right !important;
  white-space:normal !important;
  line-height:1.3 !important;
}

.growth-page .subpage-header nav{
  grid-area:nav !important;
  position:relative !important;
  display:flex !important;
  justify-self:stretch !important;
  justify-content:center !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  width:100% !important;
  gap:10px 26px !important;
  padding:13px 0 0 !important;
  margin:0 !important;
  border-top:1px solid rgba(190,125,43,.24) !important;
  white-space:normal !important;
}

.growth-page .subpage-header nav a{
  white-space:nowrap !important;
  margin:0 !important;
}

.growth-page .subpage-header .menu-button{
  display:none !important;
}

/* Header is in normal document flow: no content can hide behind it. */
.growth-page .subpage-header + main{
  padding-top:0 !important;
  margin-top:0 !important;
}

@media(max-width:760px){
  .growth-page .subpage-header{
    grid-template-columns:1fr auto !important;
    grid-template-areas:
      "brand menu"
      "tagline tagline"
      "nav nav" !important;
    padding:16px 24px !important;
    column-gap:16px !important;
    row-gap:12px !important;
  }
  .growth-page .subpage-header .header-tagline{
    justify-self:center !important;
    text-align:center !important;
    font-size:11px !important;
    letter-spacing:.10em !important;
  }
  .growth-page .subpage-header .menu-button{
    grid-area:menu !important;
    display:block !important;
    justify-self:end !important;
  }
  .growth-page .subpage-header nav{
    display:none !important;
    flex-direction:column !important;
    gap:14px !important;
    padding-top:14px !important;
  }
  .growth-page .subpage-header nav.open{
    display:flex !important;
  }
}


/* Start Here — visual book-cover discovery cards */
.cover-discovery-grid { align-items: stretch; }

.cover-discovery-card {
  padding: 0 !important;
  overflow: hidden;
  display: flex !important;
  flex-direction: column;
  min-height: 100%;
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.cover-discovery-card:before { display: none !important; }

.cover-discovery-card:hover {
  transform: translateY(-4px);
  border-color: #a66c2d;
  box-shadow: 0 22px 42px #0008;
}

.discovery-cover-wrap {
  min-height: 360px;
  padding: 26px 22px 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  background:
    radial-gradient(circle at 50% 30%, rgba(127,72,28,.16), transparent 55%),
    linear-gradient(180deg,#0c0a09,#100d0b);
  border-bottom: 1px solid var(--line);
}

.discovery-cover-wrap img {
  display: block;
  width: auto;
  height: 318px;
  max-width: 100%;
  object-fit: contain;
  box-shadow: 0 14px 28px #0009;
}

.discovery-card-copy {
  padding: 24px 26px 26px;
  display: flex;
  flex-direction: column;
  flex: 1;
}

.discovery-card-copy h3 { margin-top: 0; }
.discovery-card-copy p { flex: 1; }

.card-link {
  display: inline-block;
  margin-top: 18px;
  color: var(--gold-hi);
  font: 700 11px Arial, sans-serif;
  letter-spacing: .08em;
  text-transform: uppercase;
}

@media(max-width:1000px) {
  .discovery-cover-wrap { min-height: 300px; }
  .discovery-cover-wrap img { height: 260px; }
}

@media(max-width:640px) {
  .discovery-cover-wrap { min-height: 260px; }
  .discovery-cover-wrap img { height: 230px; }
}

/* Journal cover-forward cards */
.journal-card-image{margin:-1px -1px 22px;min-height:250px;padding:22px;display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--line);background:radial-gradient(circle at 50% 30%,rgba(127,72,28,.16),transparent 58%),#0c0a09}
.journal-card-image img{display:block;height:220px;width:auto;max-width:100%;object-fit:contain;box-shadow:0 12px 26px #0009}
.journal-card{overflow:hidden}
.article-cover{display:block;width:auto;height:360px;max-width:100%;object-fit:contain;margin:0 auto 32px;box-shadow:0 14px 30px #0009}
@media(max-width:640px){.journal-card-image{min-height:220px}.journal-card-image img{height:190px}.article-cover{height:300px}}

/* Memoir cross-navigation */
.memoir-next-grid .cover-discovery-card .discovery-cover-wrap{min-height:300px}
.memoir-next-grid .cover-discovery-card .discovery-cover-wrap img{height:270px}
@media(max-width:640px){
  .memoir-next-grid .cover-discovery-card .discovery-cover-wrap{min-height:250px}
  .memoir-next-grid .cover-discovery-card .discovery-cover-wrap img{height:220px}
}


/* =========================================================
   FIRE-WOLF ORNATE BORDER STANDARD — GROWTH PAGES
   Border-only override; page structure/content unchanged.
   ========================================================= */
.detail-cover,
.prose-card,
.article-body,
.guide-card,
.discovery-card,
.journal-card {
  position: relative;
  border: 1px solid #9b672d !important;
  outline: 1px solid rgba(215,164,78,.72) !important;
  outline-offset: -7px !important;
  box-shadow:
    inset 0 0 0 2px rgba(215,164,78,.05),
    inset 0 0 22px rgba(174,103,36,.06),
    0 14px 28px rgba(0,0,0,.28) !important;
}

.detail-cover::before,
.prose-card::before,
.article-body::before,
.guide-card::before,
.discovery-card::before,
.journal-card::before,
.detail-cover::after,
.prose-card::after,
.article-body::after,
.guide-card::after,
.discovery-card::after,
.journal-card::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  width: 34% !important;
  min-width: 90px !important;
  max-width: 220px !important;
  height: 24px !important;
  background: url("/gold-divider.png") center / contain no-repeat !important;
  filter: drop-shadow(0 0 3px rgba(213,153,65,.22));
  pointer-events: none !important;
  z-index: 6 !important;
}

.detail-cover::before,
.prose-card::before,
.article-body::before,
.guide-card::before,
.discovery-card::before,
.journal-card::before {
  top: -12px !important;
  transform: translateX(-50%) !important;
}

.detail-cover::after,
.prose-card::after,
.article-body::after,
.guide-card::after,
.discovery-card::after,
.journal-card::after {
  bottom: -12px !important;
  transform: translateX(-50%) rotate(180deg) !important;
}

/* Existing cover-forward cards had a rule suppressing pseudo decoration. Override it. */
.cover-discovery-card::before,
.cover-discovery-card::after {
  display: block !important;
}

/* Artwork itself remains untouched; only surrounding frame changes. */
.detail-cover img,
.discovery-cover-wrap img,
.journal-card-image img,
.article-cover {
  border: 0 !important;
  outline: 0 !important;
}


/* Start Here choice cards — same ornate border standard, content unchanged */
.ornate-choice-card {
  position: relative;
  border: 1px solid #9b672d !important;
  outline: 1px solid rgba(215,164,78,.72) !important;
  outline-offset: -7px !important;
  background: linear-gradient(145deg,#12100e,#0b0908) !important;
  padding: 30px 34px !important;
  box-shadow:
    inset 0 0 0 2px rgba(215,164,78,.05),
    inset 0 0 22px rgba(174,103,36,.06),
    0 14px 28px rgba(0,0,0,.28) !important;
}

.ornate-choice-card::before,
.ornate-choice-card::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  width: 34% !important;
  min-width: 90px !important;
  max-width: 220px !important;
  height: 24px !important;
  background: url("/gold-divider.png") center / contain no-repeat !important;
  filter: drop-shadow(0 0 3px rgba(213,153,65,.22));
  pointer-events: none !important;
  z-index: 6 !important;
}

.ornate-choice-card::before {
  top: -12px !important;
  transform: translateX(-50%) !important;
}

.ornate-choice-card::after {
  bottom: -12px !important;
  transform: translateX(-50%) rotate(180deg) !important;
}

.path-grid {
  gap: 34px !important;
}

@media(max-width:640px){
  .ornate-choice-card { padding: 26px 24px !important; }
  .path-grid { gap: 28px !important; }
}


/* Author page repair — image + biography + framed quote */
.author-page-grid{
  display:grid;
  grid-template-columns:minmax(240px,320px) minmax(0,1fr);
  gap:36px;
  align-items:start;
}

.ornate-author-card{
  position:relative;
  border:1px solid #9b672d !important;
  outline:1px solid rgba(215,164,78,.72) !important;
  outline-offset:-7px !important;
  background:linear-gradient(145deg,#12100e,#0b0908) !important;
  box-shadow:
    inset 0 0 0 2px rgba(215,164,78,.05),
    inset 0 0 22px rgba(174,103,36,.06),
    0 14px 28px rgba(0,0,0,.28) !important;
}

.ornate-author-card::before,
.ornate-author-card::after{
  content:"" !important;
  position:absolute !important;
  left:50% !important;
  width:34% !important;
  min-width:90px !important;
  max-width:220px !important;
  height:24px !important;
  background:url("/gold-divider.png") center / contain no-repeat !important;
  filter:drop-shadow(0 0 3px rgba(213,153,65,.22));
  pointer-events:none !important;
  z-index:6 !important;
}

.ornate-author-card::before{
  top:-12px !important;
  transform:translateX(-50%) !important;
}

.ornate-author-card::after{
  bottom:-12px !important;
  transform:translateX(-50%) rotate(180deg) !important;
}

.author-page-photo{
  padding:18px;
}

.author-page-photo img{
  display:block;
  width:100%;
  height:auto;
  border:0 !important;
  outline:0 !important;
}

.author-page-bio{
  padding:36px 40px;
}

.author-page-bio p{
  margin:0 0 24px;
}

.author-page-bio p:last-child{
  margin-bottom:0;
}

.author-page-quote{
  margin:54px auto 0;
  max-width:760px;
  padding:46px 42px;
  text-align:center;
}

.author-page-quote p{
  margin:0;
  padding:14px 0;
  font-family:"Romanesco",cursive;
  font-size:40px;
  line-height:1.25;
  color:#e8b968;
}

@media(max-width:820px){
  .author-page-grid{
    grid-template-columns:1fr;
  }
  .author-page-photo{
    max-width:320px;
    margin:0 auto;
  }
  .author-page-bio{
    padding:30px 28px;
  }
}

@media(max-width:520px){
  .author-page-quote{
    padding:36px 24px;
  }
  .author-page-quote p{
    font-size:34px;
  }
}


/* Shared navigation rebalance — Start Here left, categories centered, Home right */
.site-header nav.split-nav,
nav.split-nav{
  display:grid !important;
  grid-template-columns:1fr auto 1fr !important;
  align-items:center !important;
  width:100% !important;
  gap:24px !important;
}

nav.split-nav .nav-start{
  justify-self:start !important;
}

nav.split-nav .nav-center{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:30px !important;
}

nav.split-nav .nav-home{
  justify-self:end !important;
}

@media(max-width:760px){
  .site-header nav.split-nav,
  nav.split-nav{
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    gap:14px 20px !important;
  }
  nav.split-nav .nav-center{
    display:contents !important;
  }
  nav.split-nav .nav-start,
  nav.split-nav .nav-home{
    justify-self:auto !important;
  }
}
