
  *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

  :root {
    --muted: #c8c1b8;
    --soft: #d4cfc8;
    --footer-muted: #a8a19a;
    --subtle: #a8a19a;
    --black: #080808;
    --deep: #0f0f0f;
    --panel: #141414;
    --panel-soft: #191919;
    --border: #2a2a2a;
    --charcoal: #1a1a1a;
    --iron: #2a2a2a;
    --steel: #a8a19a;
    --ash: #c8c1b8;
    --light: #d4cfc8;
    --body: #d8d2c8;
    --cream: #f5f2ed;
    --white: #f5f2ed;
    --gold: #b07242;
    --bronze: #b07242;
    --bronze-bright: #c47a3c;
    --bronze-dark: #7a4e2a;
    --bronze-soft: #d49a63;
    --warm-panel: #1d1813;
    --soft-panel: #221b15;
    --parchment: #f1e8dc;
    --parchment-soft: #e7d9c8;
    --parchment-text: #17120d;
    --gold-dim: #7a4e2a;
    --red: #b03a2e;
    --ember: #e05c3a;
  }

  html { scroll-behavior: smooth; overflow-x: hidden; }
  body { overflow-x: hidden; }

  body {
    background: var(--cream-bg);
    color: var(--ink);
    font-family: 'Barlow', sans-serif;
    font-weight: 400;
    line-height: 1.65;
    overflow-x: hidden;
    cursor: default;
  }

  /* NOISE TEXTURE OVERLAY */
  body::before {
    content: '';
    position: fixed;
    inset: 0;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='1'/%3E%3C/svg%3E");
    opacity: 0.025;
    pointer-events: none;
    z-index: 9999;
  }

  /* NAV */
  .btmf-topline {
    position: fixed;
    top: 0; left: 0; right: 0;
    z-index: 200;
    background: linear-gradient(90deg, #120a02, #1a0f04 50%, #120a02);
    border-bottom: 1px solid rgba(176,114,66,0.45);
    color: var(--white);
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 600;
    font-size: 0.76rem;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    text-align: center;
    padding: 9px 14px;
    line-height: 1.5;
  }
  .ab-short { display: none; }
  .btmf-topline a {
    color: var(--gold);
    font-weight: 700;
    text-decoration: none;
    border-bottom: 1px solid rgba(176,114,66,0.5);
    margin-left: 8px;
    white-space: nowrap;
  }
  .btmf-topline a:hover { color: var(--white); border-color: var(--white); }
  @media (max-width: 640px) {
    .btmf-topline { font-size: 0.72rem; letter-spacing: 0.08em; padding: 8px 10px; }
    .btmf-topline .ab-long { display: none; }
    .btmf-topline .ab-short { display: inline; }
  }
  nav {
    position: fixed;
    top: 37px;
    width: 100%;
    box-sizing: border-box;
    z-index: 100;
    padding: 20px 48px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: linear-gradient(to bottom, rgba(8,8,8,0.95), transparent);
    overflow: hidden;
  }

  .nav-logo {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 1.4rem;
    letter-spacing: 0.15em;
    color: var(--gold);
    text-decoration: none;
  }

  .social-muted { opacity: 0.35; pointer-events: none; display: flex; align-items: center; color: var(--ash); }

  .nav-links {
    display: flex;
    gap: 36px;
    list-style: none;
  }

  .nav-links a { color: #dddddd;
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 600;
    font-size: 0.74rem;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: #b8b0a8;
    text-decoration: none;
    transition: color 0.2s;
  }

  .nav-links a:hover { color: var(--white); }

  /* HERO — three-zone desktop layout */
  .hero {
    min-height: 100vh;
    display: grid;
    grid-template-columns: 1fr minmax(0, 660px) 1fr;
    gap: 56px;
    align-items: center;
    position: relative;
    background: var(--black);
    padding: 156px 48px 80px;
    box-sizing: border-box;
  }
  .hero::before {
    content: '';
    position: absolute; inset: 0;
    background-image: repeating-linear-gradient(90deg, transparent, transparent 120px, rgba(176,114,66,0.035) 120px, rgba(176,114,66,0.035) 121px);
    pointer-events: none;
  }
  .visually-hidden {
    position: absolute !important;
    width: 1px; height: 1px;
    margin: -1px; padding: 0; border: 0;
    clip: rect(0 0 0 0); clip-path: inset(50%);
    overflow: hidden; white-space: nowrap;
  }
  .hero-bgwords {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    padding: 150px 0 60px;
    z-index: 0;
    pointer-events: none;
    overflow: hidden;
  }
  .hero-bgwords span {
    font-family: 'Bebas Neue', sans-serif;
    font-size: clamp(5rem, 10vw, 10rem);
    letter-spacing: 0.22em;
    line-height: 0.9;
    color: rgba(176,114,66,0.045);
    white-space: nowrap;
  }
  @media (max-width: 1180px) { .hero-bgwords { display: none; } }

  .hero-rail {
    display: flex;
    flex-direction: column;
    gap: 30px;
    position: relative;
    z-index: 2;
    max-width: 300px;
  }
  .hero-rail-left {
    justify-self: end;
    align-items: flex-end;
    text-align: right;
    border-right: 2px solid rgba(176,114,66,0.45);
    padding-right: 44px;
  }
  .hero-rail-right {
    justify-self: start;
    border-left: 2px solid rgba(176,114,66,0.45);
    padding-left: 44px;
    max-width: 340px;
  }
  .rail-scripture .scripture-verse {
    font-family: 'Barlow', sans-serif;
    font-style: italic;
    font-weight: 400;
    font-size: 0.92rem;
    line-height: 1.75;
    color: #b9b4ac;
  }
  .rail-scripture .scripture-ref {
    margin-top: 10px;
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 700;
    font-size: 0.72rem;
    letter-spacing: 0.25em;
    text-transform: uppercase;
    color: var(--gold);
  }
  .proof-stack { display: flex; flex-direction: column; gap: 18px; }
  .proof-point {
    font-family: 'Bebas Neue', 'Barlow Condensed', sans-serif;
    text-transform: uppercase;
    font-size: 1.55rem;
    letter-spacing: 0.06em;
    color: var(--white);
    line-height: 1;
    padding-bottom: 16px;
    border-bottom: 1px solid #1c1c1c;
  }
  .proof-point:last-child { border-bottom: none; padding-bottom: 0; }
  .proof-point span {
    display: block;
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 600;
    font-size: 0.72rem;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    color: var(--gold);
    margin-bottom: 7px;
  }
  .fw-card {
    background: linear-gradient(180deg, #111111, #0b0b0b);
    border: 1px solid #222;
    border-top: 3px solid var(--gold);
    padding: 30px 28px 26px;
    box-shadow: 0 18px 50px rgba(0,0,0,0.55);
  }
  .fw-card-label {
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 700;
    font-size: 0.72rem;
    letter-spacing: 0.3em;
    text-transform: uppercase;
    color: var(--gold);
    margin-bottom: 18px;
  }
  .fw-row {
    display: flex;
    align-items: baseline;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid #1c1c1c;
  }
  .fw-row:last-of-type { border-bottom: none; }
  .fw-num {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 0.85rem;
    color: #3a3a3a;
    min-width: 14px;
  }
  .fw-name {
    font-family: 'Bebas Neue', 'Barlow Condensed', sans-serif;
    font-size: 0.92rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--white);
    min-width: 106px;
    flex-shrink: 0;
  }
  .fw-desc {
    font-family: 'Barlow', sans-serif;
    font-weight: 400;
    font-size: 0.78rem;
    line-height: 1.45;
    color: #b8b0a8;
  }
  .fw-card-cta {
    display: inline-block;
    margin-top: 16px;
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 700;
    font-size: 0.72rem;
    letter-spacing: 0.25em;
    text-transform: uppercase;
    color: var(--gold);
    text-decoration: none;
    border-bottom: 1px solid rgba(176,114,66,0.4);
    padding-bottom: 4px;
    transition: color 0.2s, border-color 0.2s;
  }
  .fw-card-cta:hover { color: var(--white); border-color: var(--white); }
  @media (max-width: 1180px) {
    .hero { display: flex; flex-direction: column; justify-content: center; padding: 132px 20px 60px; }
    .hero-rail { display: none; }
  }
  @media (max-width: 700px) {
    .hero .hero-eyebrow { font-size: 0.74rem; letter-spacing: 0.04em; line-height: 1.9; white-space: normal; }
  }
  @media (min-width: 1181px) {
    .hero .hero-top-row { display: none !important; }
    .hero .hero-eyebrow { font-size: 1.05rem !important; letter-spacing: 0.34em; margin-bottom: 26px; }
  }

  .hero-left {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 700px;
    position: relative;
    z-index: 2;
  }

  .hero-right {
    position: relative;
    overflow: hidden;
  }

  .hero-right::before {
    content: '';
    position: absolute;
    inset: 0;
    background: 
      linear-gradient(to right, var(--black) 0%, rgba(8,8,8,0.7) 50%, rgba(8,8,8,0.5) 100%),
      linear-gradient(135deg, #120a00 0%, #0a0a0a 60%, #000 100%);
    z-index: 1;
  }

  /* Vertical lines pattern */
  .hero-right::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: repeating-linear-gradient(
      90deg,
      transparent,
      transparent 60px,
      rgba(176,114,66,0.04) 60px,
      rgba(176,114,66,0.04) 61px
    );
    z-index: 2;
  }

  .hero-cross {
    position: absolute;
    right: 15%;
    top: 50%;
    transform: translateY(-50%);
    z-index: 3;
    opacity: 0.07;
  }

  .hero-cross svg {
    width: 320px;
    height: 480px;
  }

  .hero-eyebrow {
    font-family: 'Bebas Neue', sans-serif;
    font-size: clamp(1rem, 4vw, 2rem);
    letter-spacing: 0.3em;
    text-transform: uppercase;
    color: var(--white);
    margin-bottom: 20px;
    text-align: center;
    width: 100%;
  }

  .hero-eyebrow span {
    color: var(--gold);
  }

  .hero-eyebrow::before {
    display: none;
  }

  h1 {
    font-family: 'Bebas Neue', sans-serif;
    font-size: clamp(96px, 11vw, 160px);
    line-height: 0.88;
    letter-spacing: 0.02em;
    color: var(--white);
    margin-bottom: 32px;
  }

  h1 span {
    display: block;
    color: var(--white);
    line-height: 0.88;
  }

  h1 span.h1-gold {
    color: var(--gold);
  }

  h1 span br {
    display: block;
  }

  .hero-sub { text-align: center;
    font-size: 1.05rem;
    line-height: 1.7;
    color: #d4cfc8;
    max-width: 440px;
    margin-bottom: 52px;
    font-weight: 400;
  }

  .hero-cta-row { justify-content: center;
    display: flex;
    gap: 16px;
    align-items: center;
  }

  .btn-primary {
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 800;
    font-size: 0.72rem;
    letter-spacing: 0.25em;
    text-transform: uppercase;
    color: #080808;
    background: #c47a3c;
    padding: 16px 36px;
    text-decoration: none;
    display: inline-block;
    transition: all 0.2s;
    clip-path: polygon(0 0, calc(100% - 8px) 0, 100% 8px, 100% 100%, 8px 100%, 0 calc(100% - 8px));
  }

  .btn-primary:hover {
    background: #d68a4a;
    transform: translateY(-1px);
  }

  .btn-ghost {
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 600;
    font-size: 0.76rem;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: #b8b0a8;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 8px;
    transition: color 0.2s;
  }

  .btn-ghost:hover { color: var(--white); }

  .btn-ghost::after {
    content: '→';
    font-size: 1rem;
  }

  /* POWER STATEMENT */
  .power-bar {
    background: var(--gold);
    padding: 22px 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 24px;
    position: relative;
    overflow: hidden;
  }

  .power-bar::before {
    content: '';
    position: absolute;
    inset: 0;
    background: repeating-linear-gradient(
      -45deg,
      transparent,
      transparent 20px,
      rgba(0,0,0,0.04) 20px,
      rgba(0,0,0,0.04) 40px
    );
  }

  .power-bar p {
    font-family: 'Bebas Neue', sans-serif;
    font-size: clamp(1.2rem, 2.5vw, 1.8rem);
    letter-spacing: 0.12em;
    color: var(--white);
    text-align: center;
    position: relative;
  }

  .power-bar p em {
    font-style: normal;
    border-bottom: 2px solid var(--white);
    display: block;
    margin-top: 4px;
  }

  .hero-top-row {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 32px;
    width: 100%;
    margin-bottom: 24px;
  }

  .hero-scripture {
    border-left: 3px solid var(--gold);
    padding-left: 20px;
    max-width: 400px;
    text-align: left;
  }

  .scripture-verse {
    font-family: 'Barlow', sans-serif;
    font-style: italic;
    font-size: 0.95rem;
    line-height: 1.65;
    color: #d4cfc8;
    margin-bottom: 6px;
    font-weight: 400;
  }

  .scripture-ref {
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 700;
    font-size: 0.72rem;
    letter-spacing: 0.25em;
    text-transform: uppercase;
    color: var(--gold);
  }

  /* SECTION BASE */
  section { max-width: 100%; overflow-x: hidden;
    padding: 120px 64px;
    position: relative;
  }

  .section-label {
    font-family: 'Bebas Neue', sans-serif;
    font-size: clamp(1.6rem, 3vw, 2.4rem);
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--gold);
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    gap: 16px;
  }

  .section-label::before {
    content: '';
    display: block;
    width: 36px;
    height: 2px;
    background: var(--gold);
    flex-shrink: 0;
  }

  h2 {
    font-family: 'Bebas Neue', sans-serif;
    font-size: clamp(64px, 7vw, 110px);
    letter-spacing: 0.03em;
    line-height: 1;
    color: var(--white);
  }

  /* MISSION SECTION */
  .mission {
    background: var(--cream-bg);
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: center;
  }

  .mission-text h2 {
    margin-bottom: 28px;
  }

  .mission-text p {
    font-size: 1.05rem;
    line-height: 1.85;
    color: var(--soft-ink);
    margin-bottom: 20px;
  }

  .mission-text p strong {
    color: var(--ink);
    font-weight: 500;
  }

  .mission-visual {
    position: relative;
    height: 480px;
  }

  .mission-blocks {
    position: absolute;
    inset: 0;
    display: grid;
    grid-template-rows: 1fr 1fr 1fr;
    gap: 8px;
  }

  .mission-block {
    border: 1px solid var(--border-light);
    padding: 28px 32px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    position: relative;
    overflow: hidden;
    transition: border-color 0.3s;
  }

  .mission-block:hover {
    border-color: var(--gold-dim);
  }

  .mission-block:nth-child(2) {
    margin-left: 40px;
  }

  .mission-block:nth-child(3) {
    margin-left: 80px;
  }

  .mission-block-num {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 4rem;
    color: var(--bronze-soft);
    position: absolute;
    top: 16px;
    right: 24px;
    line-height: 1;
    transition: color 0.3s;
  }

  .mission-block:hover .mission-block-num {
    color: var(--gold-dim);
  }

  .mission-block-title {
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 700;
    font-size: 1.4rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--ink);
    margin-bottom: 4px;
  }

  .mission-block-desc {
    font-size: 0.82rem;
    color: var(--soft-ink);
    letter-spacing: 0.02em;
  }

  /* PILLARS */
  .pillars {
    background: var(--black);
    overflow: hidden;
  }

  .pillars-header {
    margin-bottom: 72px;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
  }

  .pillars-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2px;
  }

  .pillar-card {
    background: var(--charcoal);
    padding: 56px 44px;
    position: relative;
    overflow: hidden;
    transition: background 0.3s;
  }

  .pillar-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: var(--gold);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.4s ease;
  }

  .pillar-card:hover::before {
    transform: scaleX(1);
  }

  .pillar-card:hover {
    background: var(--iron);
  }

  .pillar-num {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 6rem;
    color: var(--iron);
    line-height: 1;
    margin-bottom: 24px;
    transition: color 0.3s;
  }

  .pillar-card:hover .pillar-num {
    color: var(--charcoal);
  }

  .pillar-icon {
    font-size: 1.8rem;
    margin-bottom: 20px;
    display: block;
  }

  .pillar-title {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 2.8rem;
    letter-spacing: 0.05em;
    color: var(--white);
    margin-bottom: 16px;
  }

  .pillar-desc {
    font-size: 0.95rem;
    line-height: 1.75;
    color: #b8b0a8;
  }

  .pillar-line {
    width: 32px;
    height: 1px;
    background: var(--gold);
    margin: 20px 0;
  }

  /* WHO IT'S FOR */
  .audience {
    background: var(--deep);
    display: grid;
    grid-template-columns: 5fr 7fr;
    gap: 80px;
    align-items: start;
  }

  .audience-left h2 {
    margin-bottom: 20px;
  }

  .audience-left p {
    color: #b8b0a8;
    font-size: 0.95rem;
    line-height: 1.8;
  }

  .audience-right {
    padding-top: 8px;
  }

  .for-list {
    list-style: none;
    margin-bottom: 48px;
  }

  .for-list li {
    padding: 20px 0;
    border-bottom: 1px solid var(--iron);
    display: flex;
    align-items: center;
    gap: 20px;
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 600;
    font-size: 1.15rem;
    letter-spacing: 0.05em;
    color: var(--white);
    transition: color 0.2s;
  }

  .for-list li:hover { color: var(--gold); }

  .for-list li::before {
    content: '✓';
    font-family: 'Barlow', sans-serif;
    color: var(--gold);
    font-size: 0.9rem;
    font-weight: 500;
    flex-shrink: 0;
  }

  .not-list {
    background: var(--charcoal);
    padding: 32px 36px;
    border-left: 3px solid var(--red);
  }

  .not-list-title {
    font-family: 'Bebas Neue', sans-serif;
    font-size: clamp(1.4rem, 2.5vw, 2rem);
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: var(--red);
    margin-bottom: 16px;
  }

  .not-list ul {
    list-style: none;
  }

  .not-list ul li {
    font-size: 0.9rem;
    color: #b8b0a8;
    padding: 6px 0;
    display: flex;
    align-items: center;
    gap: 12px;
  }

  .not-list ul li::before {
    content: '✕';
    color: var(--red);
    font-size: 0.75rem;
  }

  /* OFFER SECTION */
  .offers {
    background: var(--black);
  }

  .offers-header {
    margin-bottom: 64px;
    text-align: center;
  }

  .offers-header .section-label {
    justify-content: center;
  }

  .offers-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2px;
    max-width: 1100px;
    margin: 0 auto;
  }

  .offer-card {
    background: var(--charcoal);
    padding: 48px 40px;
    position: relative;
    transition: transform 0.3s;
  }

  .offer-card.featured {
    background: var(--iron);
    transform: none;
  }

  .offer-card.featured::after {
    display: none;
  }

  .offer-price {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 3.5rem;
    color: var(--gold);
    line-height: 1;
    margin-bottom: 4px;
  }

  .offer-price span {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 1rem;
    color: #b8b0a8;
    font-weight: 400;
  }

  .offer-name {
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 700;
    font-size: 1.1rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #ffffff;
    margin-bottom: 24px;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--iron);
  }

  .offer-features {
    list-style: none;
    margin-bottom: 36px;
  }

  .offer-features li {
    font-size: 0.88rem;
    color: #d4cfc8;
    padding: 7px 0;
    display: flex;
    gap: 10px;
    line-height: 1.5;
  }

  .offer-features li::before {
    content: '—';
    color: var(--gold-dim);
    flex-shrink: 0;
  }

  .offer-btn {
    display: block;
    text-align: center;
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 700;
    font-size: 0.72rem;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--white);
    background: var(--gold);
    padding: 14px;
    text-decoration: none;
    transition: all 0.2s;
  }

  .offer-card:not(.featured) .offer-btn {
    background: transparent;
    color: #b8b0a8;
    border: 1px solid var(--iron);
  }

  .offer-card:not(.featured) .offer-btn:hover {
    border-color: #b8b0a8;
    color: var(--white);
  }

  .offer-btn:hover {
    background: var(--white);
  }

  .coming-soon-badge {
    display: inline-block;
    background: var(--gold);
    color: #080808;
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 700;
    font-size: 0.72rem;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    padding: 5px 11px;
    margin-left: 12px;
    vertical-align: middle;
    border-radius: 2px;
  }
  .art-badge {
    position: absolute;
    top: 18px; right: 18px; left: auto;
    z-index: 5;
    background: #080808;
    border: 1px solid var(--gold);
    color: var(--gold);
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 700;
    font-size: 0.72rem;
    letter-spacing: 0.25em;
    text-transform: uppercase;
    padding: 8px 14px;
  }
  .platform-muted { opacity: 0.4; filter: grayscale(0.5); cursor: default; pointer-events: none; }

  /* USE CASES */
  .usecase-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 2px;
  }
  .usecase-card {
    background: #141414;
    border-top: 2px solid var(--gold);
    padding: 32px 26px;
    display: flex;
    flex-direction: column;
  }
  .usecase-title {
    font-family: 'Bebas Neue', 'Barlow Condensed', sans-serif;
    text-transform: uppercase;
    font-size: 1.3rem;
    letter-spacing: 0.06em;
    color: var(--white);
    margin-bottom: 12px;
  }
  .usecase-card p {
    font-size: 0.86rem;
    color: #c8c1b8;
    line-height: 1.75;
    flex: 1;
    margin-bottom: 18px;
  }
  .usecase-cta {
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 700;
    font-size: 0.72rem;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--gold);
    text-decoration: none;
  }
  .usecase-cta:hover { color: var(--white); }
  @media (max-width: 1024px) { .usecase-grid { grid-template-columns: repeat(2, 1fr); } }
  @media (max-width: 600px) { .usecase-grid { grid-template-columns: 1fr; } }

  /* PODCAST TEASER */
  .podcast {
    background: var(--deep);
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: center;
  }

  .podcast-art {
    position: relative;
    aspect-ratio: 1/1;
    overflow: hidden;
    border: 1px solid var(--iron);
  }

  .podcast-art::before { display: none; }

  .podcast-art-text {
    text-align: center;
    position: relative;
    z-index: 1;
    padding: 32px;
  }

  .podcast-art-title {
    font-family: 'Bebas Neue', sans-serif;
    font-size: clamp(2rem, 4vw, 3.2rem);
    letter-spacing: 0.05em;
    line-height: 1;
    color: var(--white);
    margin-bottom: 12px;
  }

  .podcast-art-sub {
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 600;
    font-size: 0.72rem;
    letter-spacing: 0.3em;
    text-transform: uppercase;
    color: var(--gold);
  }

  .podcast-wave {
    width: 100%;
    margin-top: 24px;
    opacity: 0.4;
  }

  .podcast-content h2 {
    margin-bottom: 20px;
  }

  .podcast-content p {
    font-size: 1rem;
    line-height: 1.8;
    color: #b8b0a8;
    margin-bottom: 36px;
  }

  .podcast-platforms {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 36px;
  }

  .platform-tag {
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 600;
    font-size: 0.78rem;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: #b8b0a8;
    border: 1px solid var(--iron);
    padding: 8px 16px;
    transition: all 0.2s;
  }

  .platform-tag:hover {
    border-color: var(--gold-dim);
    color: var(--white);
  }

  /* VISION SECTION */
  .vision {
    background: var(--black);
    text-align: center;
    padding: 160px 64px;
    position: relative;
    overflow: hidden;
  }

  .vision::before {
    content: 'BUILD THE MAN FIRST';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-family: 'Bebas Neue', sans-serif;
    font-size: clamp(80px, 12vw, 180px);
    white-space: nowrap;
    color: transparent;
    -webkit-text-stroke: 1px rgba(176,114,66,0.05);
    pointer-events: none;
    letter-spacing: 0.05em;
  }

  .vision .section-label {
    justify-content: center;
  }

  .vision h2 {
    font-size: clamp(40px, 5vw, 72px);
    max-width: 900px;
    margin: 0 auto 32px;
    line-height: 1.05;
  }

  .vision h2 em {
    font-style: normal;
    color: var(--gold);
  }

  .vision p {
    font-size: 1.05rem;
    line-height: 1.85;
    color: #b8b0a8;
    max-width: 580px;
    margin: 0 auto 52px;
  }

  /* CTA STRIP */
  .cta-strip {
    background: var(--charcoal);
    border-top: 1px solid var(--iron);
    border-bottom: 1px solid var(--iron);
    padding: 80px 64px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 48px;
  }

  .cta-strip h3 {
    font-family: 'Bebas Neue', sans-serif;
    font-size: clamp(2rem, 3.5vw, 3.2rem);
    letter-spacing: 0.05em;
    max-width: 600px;
    line-height: 1.05;
  }

  .cta-strip h3 span {
    color: var(--gold);
  }

  /* FOOTER */
  footer {
    background: var(--deep);
    padding: 56px 64px 40px;
    display: grid;
    grid-template-columns: 1.5fr 1.5fr 1fr 1fr;
    align-items: start;
    gap: 48px;
    border-top: 1px solid var(--iron);
  }

  .footer-brand p {
    font-size: 0.88rem;
    line-height: 1.8;
    color: var(--steel);
    max-width: 320px;
    margin-top: 16px;
  }

  .footer-col h4 {
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 700;
    font-size: 0.72rem;
    letter-spacing: 0.3em;
    text-transform: uppercase;
    color: var(--gold);
    margin-bottom: 20px;
  }

  .footer-col ul {
    list-style: none;
  }

  .footer-col ul li {
    margin-bottom: 8px;
  }

  .footer-col ul li a {
    font-size: 0.88rem;
    color: var(--steel);
    text-decoration: none;
    transition: color 0.2s;
    letter-spacing: 0.02em;
  }

  .footer-col ul li a:hover { color: var(--white); }

  .footer-bottom {
    background: var(--black);
    padding: 20px 64px;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .footer-bottom p {
    font-size: 0.75rem;
    color: var(--steel);
    letter-spacing: 0.05em;
  }

  .footer-logo {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 1.2rem;
    letter-spacing: 0.15em;
    color: var(--gold);
  }

  /* ANIMATIONS */
  @keyframes fadeUp {
    from { opacity: 0; transform: translateY(30px); }
    to { opacity: 1; transform: translateY(0); }
  }

  @keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
  }

  @keyframes slideRight {
    from { transform: scaleX(0); }
    to { transform: scaleX(1); }
  }

  .hero-eyebrow { animation: fadeIn 0.8s ease both; }
  h1 { animation: fadeUp 0.9s 0.1s ease both; }
  .hero-sub { text-align: center; animation: fadeUp 0.9s 0.25s ease both; }
  .hero-cta-row { justify-content: center; animation: fadeUp 0.9s 0.4s ease both; }

  /* SCROLL REVEAL */
  .reveal {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity 0.7s ease, transform 0.7s ease;
  }

  .reveal.visible {
    opacity: 1;
    transform: translateY(0);
  }

  .reveal-delay-1 { transition-delay: 0.1s; }
  .reveal-delay-2 { transition-delay: 0.2s; }
  .reveal-delay-3 { transition-delay: 0.3s; }

  /* SPEAKING SECTION */
  .speaking {
    background: var(--charcoal);
    border-top: 1px solid var(--iron);
  }

  .speaking-inner {
    max-width: 900px;
  }

  .speaking-inner h2 {
    margin-bottom: 20px;
  }

  .speaking-inner p {
    font-size: 1rem;
    line-height: 1.85;
    color: #b8b0a8;
    max-width: 620px;
    margin-bottom: 52px;
  }

  .speaking-formats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2px;
    margin-bottom: 48px;
  }

  .speaking-format {
    background: var(--iron);
    padding: 28px 32px;
    border-top: 2px solid var(--gold-dim);
    transition: border-color 0.2s;
  }

  .speaking-format:hover {
    border-top-color: var(--gold);
  }

  .speaking-format-title {
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 700;
    font-size: 1rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--white);
    margin-bottom: 8px;
  }

  .speaking-format-desc {
    font-size: 0.85rem;
    color: #b8b0a8;
    line-height: 1.6;
  }

  /* CONTACT SECTION */
  .contact-section {
    background: var(--cream-bg);
    border-top: 1px solid var(--border-light);
  }

  .contact-inner {
    max-width: 760px;
  }

  .contact-inner h2 {
    margin-bottom: 16px;
  }

  .contact-inner > p {
    font-size: 1rem;
    line-height: 1.85;
    color: #b8b0a8;
    margin-bottom: 48px;
  }

  .contact-form {
    display: flex;
    flex-direction: column;
    gap: 20px;
  }

  .form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
  }

  .form-group {
    display: flex;
    flex-direction: column;
    gap: 8px;
  }

  .form-group label {
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 700;
    font-size: 0.82rem;
    letter-spacing: 0.25em;
    text-transform: uppercase;
    color: var(--gold);
  }

  .form-group input,
  .form-group select,
  .form-group textarea {
    background: var(--charcoal);
    border: 1px solid var(--iron);
    color: var(--white);
    font-family: 'Barlow', sans-serif;
    font-size: 0.9rem;
    padding: 14px 18px;
    outline: none;
    transition: border-color 0.2s;
    -webkit-appearance: none;
  }

  .form-group input::placeholder,
  .form-group textarea::placeholder {
    color: var(--steel);
  }

  .form-group select option {
    background: var(--charcoal);
    color: var(--white);
  }

  .form-group input:focus,
  .form-group select:focus,
  .form-group textarea:focus {
    border-color: var(--gold-dim);
  }

  .form-group textarea {
    resize: vertical;
    min-height: 140px;
  }


  /* EQUAL HEIGHT BOOK CARDS */
  .offers-grid-equal {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2px;
    max-width: 1100px;
    margin: 0 auto;
    align-items: stretch;
  }

  @media (max-width: 700px) {
    .offers-grid-equal {
      grid-template-columns: 1fr;
    }
  }

  .book-card-equal {
    display: flex;
    flex-direction: column;
  }

  .book-card-equal img {
    width: 100%;
    aspect-ratio: 0.65;
    object-fit: cover;
    display: block;
  }

  .book-card-equal .book-desc {
    flex: 1;
    display: flex;
    flex-direction: column;
    padding: 28px 32px 36px;
  }

  /* BOOK CARD LAYOUT */
  .book-card-layout {
    display: flex;
    flex-direction: row;
    align-items: stretch;
  }

  .book-cover-img {
    flex: 0 0 200px;
    width: 200px;
    height: 100%;
    object-fit: contain;
    object-position: center;
    display: block;
    background: var(--black);
  }

  .book-card-content {
    flex: 1;
    padding: 36px 40px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
  }

  @media (max-width: 700px) {
    .book-card-layout {
      flex-direction: row;
    }
    .book-cover-img {
      flex: 0 0 130px;
      width: 130px;
      height: auto;
      object-fit: contain;
      object-position: center;
      background: var(--black);
    }
    .book-card-content {
      padding: 20px 16px;
    }
  }

  /* MOBILE */
  @media (max-width: 900px) {
    nav { padding: 12px 20px; }
    .nav-links { display: none; }
  
    section { max-width: 100%; overflow-x: hidden; padding: 80px 24px; }
    .hero { grid-template-columns: 1fr; min-height: 90vh; }
    .hero-right { display: none; }
    .hero-left { padding: 120px 24px 60px; }
    .mission, .podcast, .audience, .pressure-grid { grid-template-columns: 1fr !important; gap: 48px; }
    .pillars-grid, .offers-grid, .speaking-formats { grid-template-columns: 1fr; gap: 2px; }
    .offer-card.featured { transform: none; }
    .pillars-header { flex-direction: column; align-items: flex-start; gap: 16px; }
    .cta-strip { flex-direction: column; gap: 32px; padding: 60px 24px; }
    .cta-strip > div { align-items: stretch !important; width: 100%; }
    footer { grid-template-columns: 1fr; gap: 40px; padding: 48px 24px; }
    .footer-bottom { padding: 16px 24px; flex-direction: column; gap: 8px; text-align: center; }
    .vision { padding: 100px 24px; }
    .power-bar { padding: 18px 24px; }
    .form-row { grid-template-columns: 1fr; }
  }
  @media (max-width: 700px) {
    .free-grid { grid-template-columns: 1fr !important; }
    .free-section-inner { padding: 56px 24px !important; }
  }


  .hero-center-block {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    width: auto;
  }

  .hero-center-block .hero-eyebrow {
    width: 100%;
    white-space: nowrap;
    margin-bottom: 16px;
  }

  .hero-center-block img {
    width: 100%;
    height: auto;
    display: block;
  }


  @media (max-width:560px){ #amazon-link .softgate-row { grid-template-columns: 1fr !important; } }

  /* readability pass v3.2 */
  .footer-brand p,
  .footer-col ul li a,
  .footer-bottom,
  .footer-bottom p { color: #b8b0a8; }
  .footer-col ul li a:hover { color: var(--white); }
  body, p { color: #d4cfc8; }
  .fw-desc { color: #b8b0a8; }

  /* SIX MOVE IMAGES (v3.5) */
  .moves-image-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    max-width: 1080px;
    margin: 0 auto;
  }
  .move-image-card {
    background: rgba(255,255,255,0.035);
    border: 1px solid rgba(196,122,60,0.28);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 24px 70px rgba(0,0,0,.35);
  }
  .move-image-card img {
    width: 100%;
    aspect-ratio: 5 / 4;
    object-fit: cover;
    object-position: center;
    display: block;
  }
  .move-image-card-content { padding: 16px 18px; }
  .move-image-card-content .desc {
    font-family: 'Barlow', sans-serif;
    font-size: 0.9rem;
    color: #c8c1b8;
    line-height: 1.6;
    margin: 0;
  }
  .hero-move-image {
    opacity: 0.36;
    border-radius: 18px;
    box-shadow: 0 30px 80px rgba(0,0,0,.45);
    max-width: 320px;
    width: 100%;
    display: block;
    border: 1px solid rgba(196,122,60,0.25);
  }
  @media (max-width: 1180px) { .hero-accent-rail { display: none !important; } }
  @media (max-width: 760px) { .moves-image-grid { grid-template-columns: 1fr; max-width: 420px; } }

  /* MOVE CAPTIONS + WRAPPING QA (v3.6) */
  .move-image-caption {
    padding: 12px 16px 14px;
    border-top: 1px solid rgba(196,122,60,0.18);
    display: flex;
    align-items: center;
    justify-content: flex-start;
  }
  .move-image-caption strong {
    display: block;
    color: var(--bronze-bright);
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 0.82rem;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    margin-bottom: 5px;
  }
  .move-image-caption span {
    display: block;
    color: var(--muted);
    font-family: 'Barlow', sans-serif;
    font-size: 0.95rem;
    line-height: 1.35;
  }
  .move-image-caption .move-card-link {
    display: inline-block;
    margin-top: 0;
    font-style: normal;
    color: var(--bronze-bright);
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 800;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    font-size: 0.72rem;
  }
  h1, h2, h3 { text-wrap: balance; }
  p, .card p, .move-image-caption span, .hero-sub, .fw-desc { overflow-wrap: break-word; }
  .btn-primary, .btn-ghost { white-space: normal; text-align: center; line-height: 1.2; }
  @media (max-width: 760px) {
    .hero-move-image { display: none; }
    .moves-image-grid { grid-template-columns: 1fr; max-width: 340px; margin-left: auto; margin-right: auto; }
    .move-image-card img { aspect-ratio: 5 / 4; max-height: 300px; object-fit: cover; object-position: center; }
  }
  @media (max-width: 480px) {
    .hero, .mission, .pillars, .podcast, .speaking, .contact-section, .footer { padding-left: 18px; padding-right: 18px; }
  }
  /* tiny-label floor: raise sub-0.72rem labels */
  .footer-col h4, .scripture-ref, .rail-scripture .scripture-ref { font-size: 0.72rem; }

  /* wrapping safeguards (v3.6 follow-up) */
  .section-label { flex-wrap: wrap; justify-content: center; }
  .btn-primary, .btn-ghost { max-width: 100%; box-sizing: border-box; }
  @media (max-width: 480px) {
    section { padding-left: 18px !important; padding-right: 18px !important; }
    .moves-image-grid { gap: 14px; }
  }

  /* narrow-screen nav fit (v3.6) */
  @media (max-width: 430px) {
    nav a[href="free.html"]:not(.nav-logo):not(.btn-primary) { display: none; }
    nav .btn-primary { padding: 10px 14px !important; font-size: 0.72rem !important; letter-spacing: 0.1em !important; }
  }

  /* MOBILE HAMBURGER + SCROLL-TOP (v4.0) */
  .nav-toggle { display:none; background:none; border:none; color:#f5f2ed; font-size:1.7rem; line-height:1; cursor:pointer; padding:6px 4px; z-index:101; }
  .mobile-menu { display:none; position:fixed; left:0; right:0; top:0; background:#0a0a0a; border-top:1px solid #1c1c1c; border-bottom:1px solid #1c1c1c; z-index:99; flex-direction:column; padding:8px 26px 18px; box-shadow:0 22px 54px rgba(0,0,0,.55); }
  .mobile-menu.open { display:flex; }
  .mobile-menu a { padding:15px 2px; color:#d4cfc8; text-decoration:none; font-family:'Barlow Condensed',sans-serif; font-weight:600; font-size:0.98rem; letter-spacing:0.14em; text-transform:uppercase; border-bottom:1px solid #181818; }
  .mobile-menu a.cta { color:#c47a3c; font-weight:800; border-bottom:none; margin-top:6px; }
  .scroll-top { position:fixed; right:18px; bottom:18px; width:48px; height:48px; border-radius:50%; background:#c47a3c; color:#080808; border:none; font-size:1.4rem; line-height:1; cursor:pointer; display:none; align-items:center; justify-content:center; z-index:97; box-shadow:0 10px 30px rgba(0,0,0,.5); font-weight:700; }
  .scroll-top.show { display:flex; }
  @media (max-width:768px) {
    .nav-toggle { display:block; }
    nav .nav-links { display:none !important; }
    nav > div { display:none !important; }
  }

  /* CLICKABLE MOVE CARDS (v4.1) */
  a.move-image-card { text-decoration:none; color:inherit; display:block; transition:transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
  a.move-image-card:hover, a.move-image-card:focus-visible { transform:translateY(-4px); border-color:rgba(196,122,60,0.55); box-shadow:0 28px 80px rgba(0,0,0,.45); outline:none; }
  .move-card-link { display:block; text-align:center; padding:12px 10px 14px; color:var(--bronze-bright,#c47a3c); font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:0.12em; text-transform:uppercase; font-size:0.72rem; }

/* ===================================================================== */
/* CREAM-FIRST BRAND OVERRIDE  (logo-led palette correction)             */
/* Loads last so it governs the final look. Dark stays selective.        */
/* ===================================================================== */
:root{
  --cream-bg:#f4efe6; --warm-bg:#ebe0d0; --paper:#fffaf1; --paper-soft:#f8f0e3;
  --ink:#15120f; --charcoal:#24201c; --soft-ink:#51483f;
  --black:#080808; --deep:#0f0f0f; --panel:#17120f; --panel-soft:#221b15;
  --bronze:#b07242; --bronze-dark:#7a4e2a; --bronze-bright:#c47a3c; --bronze-soft:#d49a63;
  --border-light:rgba(122,78,42,0.22); --border-dark:rgba(196,122,60,0.26);
  --muted-light:#6a5d50; --muted-dark:#c8c1b8;
  /* legacy compatibility — light-card tokens now resolve light */
  --cream:#f5f2ed; --white:#f5f2ed; --body:#d8d2c8; --muted:#c8c1b8; --subtle:#a8a19a;
  --warm-panel:#fffaf1; --soft-panel:#f8f0e3;
  --parchment:#fffaf1; --parchment-soft:#f8f0e3; --parchment-text:#15120f;
  --gold:#b07242; --gold-dim:#7a4e2a;
}

/* ---- cream-first foundation ---- */
body{ background:var(--cream-bg); color:var(--ink); }
p{ color:var(--soft-ink); line-height:1.65; }
h1,h2,h3{ color:var(--ink); }
body::before{ opacity:.018; }  /* keep grain subtle on light */

/* ---- reusable section classes ---- */
.dark-section{ background:radial-gradient(circle at top,rgba(176,114,66,.16),transparent 34%),linear-gradient(135deg,var(--black),var(--panel)); color:var(--cream); }
.dark-section h1,.dark-section h2,.dark-section h3{ color:var(--cream); }
.dark-section p,.dark-section li{ color:var(--muted-dark); }
.dark-section .section-label,.dark-section .eyebrow,.dark-section .kicker{ color:var(--bronze-soft); }

.light-section{ background:var(--cream-bg); color:var(--ink); }
.warm-section{ background:var(--warm-bg); color:var(--ink); }
.light-section :is(h1,h2,h3,strong),.warm-section :is(h1,h2,h3,strong){ color:var(--ink) !important; }
.light-section :is(p,li,span),.warm-section :is(p,li,span){ color:var(--soft-ink) !important; }
.light-section .section-label,.warm-section .section-label,
.light-section .move-card-link,.warm-section .move-card-link{ color:var(--bronze-dark) !important; }

.paper-card{ background:var(--paper); color:var(--ink); border:1px solid var(--border-light); border-radius:20px; box-shadow:0 20px 60px rgba(36,32,28,0.12); }
.paper-card :is(h1,h2,h3,strong){ color:var(--ink); }
.paper-card :is(p,li,span){ color:var(--soft-ink); }

/* shared component cards become light */
.warm-panel{ background:var(--paper) !important; border:1px solid var(--border-light) !important; box-shadow:0 20px 60px rgba(36,32,28,.12) !important; color:var(--ink) !important; }
.warm-panel :is(h1,h2,h3,strong){ color:var(--ink) !important; }
.warm-panel :is(p,li){ color:var(--soft-ink) !important; }
.parchment-card{ background:linear-gradient(135deg,var(--paper),var(--paper-soft)) !important; color:var(--ink) !important; border:1px solid var(--border-light) !important; }
.dark-card{ background:rgba(255,255,255,.04) !important; border:1px solid var(--border-dark) !important; color:var(--cream) !important; }

/* ---- buttons ---- */
.btn-primary,.btn-submit{ background:var(--bronze-bright); color:var(--black); border:1px solid var(--bronze-dark); font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.10em; text-transform:uppercase; }
.btn-primary:hover,.btn-submit:hover{ background:var(--bronze); color:var(--black); }
.btn-ghost,.btn-secondary{ color:var(--ink); border:1px solid var(--border-light); background:transparent; font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.10em; text-transform:uppercase; }
.btn-ghost:hover,.btn-secondary:hover{ border-color:var(--bronze); color:var(--bronze-dark); }
.hero .btn-ghost,.dark-section .btn-ghost,#offers .btn-ghost,#amazon-link .btn-ghost{ color:var(--cream); border-color:var(--border-dark); }
.hero .btn-ghost:hover,.dark-section .btn-ghost:hover,#offers .btn-ghost:hover{ color:var(--bronze-soft); border-color:var(--bronze); }

/* ---- six-move image cards (cream-first) ---- */
.move-image-card{ background:var(--paper); border:1px solid var(--border-light); border-radius:22px; overflow:hidden; box-shadow:0 20px 60px rgba(36,32,28,.14); text-decoration:none; color:inherit; }
.move-image-card img{ width:100%; aspect-ratio:3/2; object-fit:cover; object-position:center; display:block; }
.move-image-caption{ padding:10px 14px 12px; border-top:1px solid var(--border-light); display:flex; justify-content:center; align-items:center; }
.move-card-link{ color:var(--bronze-dark); font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.10em; text-transform:uppercase; font-size:.72rem; margin-top:0; }
.dark-section .move-image-card{ background:rgba(255,255,255,.04); border-color:var(--border-dark); }
.dark-section .move-card-link{ color:var(--bronze-soft); }
/* hero brand word-card: framed paper plate so bronze name + ink taglines read on the dark hero */
.hero-move-image{ width:100%; display:block; background:var(--paper); border:1px solid var(--border-dark); border-radius:18px; padding:24px 22px; box-shadow:0 26px 60px rgba(0,0,0,.45); }

/* ===================== PAGE: HOME (index.html) ===================== */
#mission,.mission{ background:var(--cream-bg); color:var(--ink); }
#mission h2,.mission h2{ color:var(--ink); }
#mission p,.mission p{ color:var(--soft-ink); }
.mission .section-label{ color:var(--bronze-dark); }
.mission-block{ background:var(--paper); border:1px solid var(--border-light); }
.mission-block-num{ color:var(--bronze); }
.mission-block-title{ color:var(--ink); }
.mission-block-desc{ color:var(--soft-ink); }

#pillars{ background:var(--warm-bg); border-top:1px solid var(--border-light); border-bottom:1px solid var(--border-light); }
#pillars h2{ color:var(--ink) !important; }
#pillars p{ color:var(--soft-ink) !important; }
#pillars .section-label{ color:var(--bronze-dark) !important; }

.home-free-preview{ color:var(--ink) !important; }
.home-free-preview h2{ color:var(--ink) !important; }
.home-free-preview > div > p,.home-free-preview p{ color:var(--soft-ink) !important; }
.home-free-preview span[style]{ background:var(--paper) !important; border:1px solid var(--border-light) !important; color:var(--bronze-dark) !important; }
.home-free-preview .parchment-card span[style]{ background:transparent !important; border:none !important; }
.home-free-preview .section-label{ color:var(--bronze-dark) !important; }

#speaking{ background:var(--cream-bg); border-top:1px solid var(--border-light); }
#speaking h2{ color:var(--ink) !important; }
#speaking p{ color:var(--soft-ink) !important; }
#speaking .section-label{ color:var(--bronze-dark) !important; }

/* keep dark + readable: hero, book preview, podcast, cta, footer */
#offers h2,#offers p{ /* dark book preview keeps its light inline colors */ }
#podcast p{ color:var(--muted-dark); }
.cta-strip p,.cta-strip h3{ color:var(--cream); }
footer p,footer li,footer a{ color:var(--muted-dark); }

/* ===================== PAGE: FRAMEWORK ===================== */
.framework-move-section{ background:var(--cream-bg); border-top:1px solid var(--border-light); color:var(--ink); }
.framework-move-section.warm-panel-section{ background:var(--warm-bg); }
.framework-move-section h2{ color:var(--ink) !important; }
.framework-move-section p{ color:var(--soft-ink) !important; }
.framework-move-section .section-label{ color:var(--bronze-dark); }
/* neutralize the nested grid + text-column cards (no card-on-card) */
.framework-move-section .fw-page-grid.parchment-card{ background:transparent !important; box-shadow:none !important; border:none !important; padding:0 !important; }
.framework-move-section .fw-page-grid > .parchment-card{ background:transparent !important; box-shadow:none !important; border:none !important; }
/* keep the Scripture / Reflect / Act block as a distinct paper card */
.framework-move-section .fw-page-grid > .parchment-card .parchment-card{ background:linear-gradient(135deg,var(--paper),var(--paper-soft)) !important; border:1px solid var(--border-light) !important; border-left:4px solid var(--bronze-dark) !important; box-shadow:0 14px 40px rgba(36,32,28,.10) !important; }
.framework-move-section .fw-page-grid > .parchment-card .parchment-card p{ color:var(--ink) !important; }
/* move word-card on a clean paper plate */
.framework-move-section .reveal > img{ background:var(--paper) !important; border:1px solid var(--border-light) !important; box-shadow:0 18px 50px rgba(36,32,28,.14) !important; padding:20px !important; border-radius:18px !important; }

/* ===================== PAGE: CONTACT ===================== */
.contact-section{ background:var(--cream-bg); color:var(--ink); }
.contact-section h1,.contact-section h2{ color:var(--ink) !important; }
.contact-section p{ color:var(--soft-ink) !important; }
.contact-section .section-label,.contact-section .eyebrow{ color:var(--bronze-dark) !important; }

/* ---- form fields inside light panels ---- */
.warm-panel input,.warm-panel textarea,.warm-panel select,
.form-panel input,.form-panel textarea,.form-panel select{ background:var(--paper); color:var(--ink); border:1px solid var(--border-light); }
.warm-panel label,.form-panel label{ color:var(--soft-ink) !important; }
.form-group select option{ background:var(--paper) !important; color:var(--ink) !important; }

/* ---- letter-spacing: keep small uppercase tight ---- */
.section-label,.eyebrow,.kicker,.badge,.card-label,.resource-tag,.day-pillar,
.footer h4,.move-card-link,.form-group label,.helper-text,.small-copy,.social-muted{ letter-spacing:.10em !important; }

/* ---- spacing helpers (additive; inline padding still wins where set) ---- */
.wide-container{ width:min(1280px,calc(100% - 44px)); margin-inline:auto; }
@media (max-width:700px){
  .paper-card,.warm-panel,.form-panel,.move-image-card{ padding:22px 20px; }
  .move-image-card{ padding:0; }
}
/* end cream-first override */

/* ===================== PAGE: SPEAKING (chips + audience cards) ===================== */
.light-section [style*="#141414"],.warm-section [style*="#141414"]{ background:var(--paper) !important; border-color:var(--border-light) !important; color:var(--ink) !important; }
.light-section .usecase-card,.warm-section .usecase-card{ background:var(--paper) !important; border:1px solid var(--border-light) !important; }
.light-section .usecase-title,.warm-section .usecase-title{ color:var(--ink) !important; }
.light-section .usecase-card p,.warm-section .usecase-card p{ color:var(--soft-ink) !important; }
/* end speaking */

/* ===== BOOK HERO ghost button on dark (scoped, preserves bronze accents) ===== */
#book-hero .btn-ghost{ color:var(--cream) !important; border-color:var(--border-dark) !important; }
#book-hero .btn-ghost:hover{ color:var(--bronze-soft) !important; border-color:var(--bronze) !important; }
/* end book hero fix */

/* ===================================================================== */
/* SYSTEM UTILITIES (carried forward — fonts, spacing, wrapping)         */
/* ===================================================================== */
/* font system (Bebas Neue / Barlow Condensed / Barlow only) */
h1,h2,.hero-title,.display-title,.section-title{ font-family:'Bebas Neue',sans-serif; }
nav,.nav-links,button,.btn-primary,.btn-secondary,.btn-ghost,.btn-submit,.section-label,.kicker,.eyebrow,.badge,.card-label,.move-card-link{ font-family:'Barlow Condensed',sans-serif; }
body,p,li,input,textarea,select,.form-copy,.card-copy{ font-family:'Barlow',sans-serif; }

/* containers + spacing helpers (additive) */
.container,.section-inner{ width:min(1120px,calc(100% - 44px)); margin-inline:auto; }
.wide-container{ width:min(1280px,calc(100% - 44px)); margin-inline:auto; }
.section-tight{ padding:56px 48px; }
.section-large{ padding:88px 48px; }

/* extra light surfaces from the spec */
.paper-section{ background:var(--paper-soft); color:var(--ink); }
.warm-card{ background:linear-gradient(135deg,var(--paper-soft),var(--warm-bg)); color:var(--ink); border:1px solid var(--border-light); border-radius:20px; box-shadow:0 18px 50px rgba(36,32,28,.10); }
.warm-card :is(h1,h2,h3,strong){ color:var(--ink); }
.warm-card :is(p,li,span){ color:var(--soft-ink); }

/* wrapping + mobile QA safeguards */
h1,h2,h3{ text-wrap:balance; }
p,.card p,.hero-sub,.section-intro,.move-image-caption span{ overflow-wrap:break-word; }
.btn-primary,.btn-secondary,.btn-ghost,.btn-submit{ white-space:normal; text-align:center; line-height:1.2; }
@media (max-width:700px){
  section,.section{ padding:54px 22px !important; }
  .hero{ padding:118px 20px 56px !important; }
  .card,.resource-card,.panel,.paper-card,.warm-card,.warm-panel,.form-panel,.tool{ padding:22px 20px; }
}
/* end system utilities */

/* ===================================================================== */
/* HERO (one-line moves headline -> title reveal)                        */
/* ===================================================================== */
.hero.animated-hero{
  display:flex; align-items:center; justify-content:center; grid-template-columns:none;
  min-height:clamp(600px,88vh,900px);
  padding-top:calc(var(--header-h, 150px) + clamp(28px,4.5vh,60px));
  padding-bottom:clamp(52px,7vh,90px);
  padding-left:24px; padding-right:24px;
  position:relative; overflow:hidden; background:#080808;
}
.hero-bg{
  position:absolute; inset:-2%; z-index:0; pointer-events:none;
  background:
    radial-gradient(circle at 50% 26%, rgba(196,122,60,0.20), transparent 40%),
    linear-gradient(135deg,#080808,#17120f);
  transform-origin:center 30%; animation:heroZoom 22s ease-in-out infinite alternate;
}
@keyframes heroZoom{ from{transform:scale(1);} to{transform:scale(1.045);} }
.hero-animation-wrap{ width:min(980px, calc(100% - 36px)); margin-inline:auto; text-align:center; position:relative; z-index:2; }

/* one-line six-moves headline (single animated unit) */
.hero-moves-headline{
  font-family:'Barlow Condensed',sans-serif; color:var(--bronze-soft); font-weight:800;
  letter-spacing:.14em; text-transform:uppercase; font-size:clamp(.72rem,1.45vw,1.05rem);
  line-height:1.35; margin-bottom:clamp(18px,3vw,32px); text-align:center; white-space:nowrap;
}

/* title word stack (dominant element) */
.hero-word-stack{ display:grid; gap:clamp(6px,1.1vw,13px); justify-items:center; margin-inline:auto; }
.hero-word{ display:block; height:auto; object-fit:contain; filter:drop-shadow(0 20px 42px rgba(0,0,0,.45)); }
.hero-build{ width:min(63%,392px); }
.hero-first{ width:min(63%,392px); }
.hero-man{ width:100%; display:block; position:relative; z-index:2; }
.hero-man-wrap{ position:relative; display:block; width:min(78%,480px); margin-inline:auto; }

/* MAN metallic shimmer (masked) + cross glow (ambient, post-reveal) */
.man-shimmer{
  position:absolute; inset:0; z-index:3; pointer-events:none; opacity:0;
  -webkit-mask:url('images/hero-man.webp') center/contain no-repeat;
          mask:url('images/hero-man.webp') center/contain no-repeat;
  background:linear-gradient(105deg, transparent 40%, rgba(255,247,234,.55) 50%, transparent 60%);
  background-size:260% 100%; background-position:140% 0;
  animation:manShimmer 13s ease-in-out 4.2s infinite;
}
@keyframes manShimmer{ 0%{opacity:0;background-position:140% 0;} 5%{opacity:1;} 17%{opacity:1;background-position:-40% 0;} 23%{opacity:0;} 100%{opacity:0;background-position:-40% 0;} }
.cross-glow{
  position:absolute; left:50%; top:50%; width:32%; height:62%; transform:translate(-50%,-50%);
  z-index:1; pointer-events:none; border-radius:50%; filter:blur(6px); opacity:.16;
  background:radial-gradient(circle, rgba(212,154,99,.45), transparent 66%);
  animation:crossPulse 9s ease-in-out 3.6s infinite;
}
@keyframes crossPulse{ 0%,100%{opacity:.16;} 50%{opacity:.5;} }

/* supporting copy + CTAs */
.hero-subtitle{ margin:clamp(24px,3.2vw,38px) auto 0; max-width:660px; color:var(--muted-dark); font-size:clamp(1rem,1.8vw,1.2rem); line-height:1.6; }
.hero-actions{ display:flex; justify-content:center; gap:14px; flex-wrap:wrap; margin-top:clamp(24px,3vw,32px); }

/* staggered reveal */
.animated-item{ opacity:0; transform:translateY(18px) scale(.985); animation:heroReveal .85s cubic-bezier(.16,1,.3,1) forwards; will-change:transform,opacity; }
.delay-1{ animation-delay:.2s; } .delay-2{ animation-delay:.8s; } .delay-3{ animation-delay:1.25s; }
.delay-4{ animation-delay:1.7s; } .delay-5{ animation-delay:2.15s; } .delay-6{ animation-delay:2.45s; }
@keyframes heroReveal{ to{ opacity:1; transform:translateY(0) scale(1); } }

@media (prefers-reduced-motion: reduce){
  .animated-item{ animation:none; opacity:1; transform:none; }
  .hero-bg,.man-shimmer,.cross-glow{ animation:none; }
}
@media (max-width:760px){
  .hero-moves-headline{ white-space:normal; max-width:360px; margin-inline:auto; font-size:.74rem; letter-spacing:.10em; }
}
@media (max-width:700px){
  .hero.animated-hero{ min-height:auto; padding-top:calc(var(--header-h, 132px) + 24px); padding-bottom:50px; }
  .hero-animation-wrap{ width:100%; }
  .hero-word-stack{ gap:6px; }
  .hero-build,.hero-first{ width:80%; }
  .hero-man-wrap{ width:92%; }
  .hero-actions{ flex-direction:column; align-items:stretch; }
  .hero-actions a{ width:100%; text-align:center; }
}

/* HEADER: fully opaque, no see-through and no gap above it */
.btmf-topline{ box-sizing:border-box; min-height:37px; }
nav{ background:#0b0b0b !important; border-bottom:1px solid #1a1a1a !important; }
/* end hero + header fix */

/* Remove decorative dash before all section labels/headlines */
.section-label::before{ display:none !important; }

/* Homepage: "Start Here Free" featured workbook */
.home-workbook-wrap{ max-width:760px; margin:0 auto; }
.home-workbook-h2{ font-family:'Bebas Neue',sans-serif; text-transform:uppercase; font-size:clamp(34px,4.4vw,52px); letter-spacing:.04em; line-height:1; margin:6px 0 24px; }
.home-workbook{ display:flex; flex-wrap:wrap; gap:34px; align-items:center; justify-content:center; text-align:left; }
.home-workbook-cover{ width:162px; max-width:46vw; height:auto; border-radius:8px; border:1px solid var(--border-light); box-shadow:0 18px 44px rgba(36,32,28,.20); }
.home-workbook-body{ flex:1; min-width:240px; }
.home-workbook-price{ font-size:1.05rem; margin-bottom:10px; }
.home-workbook-price s{ color:var(--muted-light); }
.home-workbook-price .hw-free{ color:var(--bronze-dark) !important; font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.06em; text-transform:uppercase; margin-left:8px; }
.home-workbook-desc{ font-size:.96rem; line-height:1.7; margin-bottom:18px; }
.home-workbook-link{ margin-top:30px; }
.home-workbook-link a{ font-family:'Barlow Condensed',sans-serif; font-weight:700; letter-spacing:.1em; text-transform:uppercase; font-size:.82rem; color:var(--bronze-dark); text-decoration:none; border-bottom:1px solid var(--border-dark); padding-bottom:3px; }
@media (max-width:600px){ .home-workbook{ justify-content:center; text-align:center; } .home-workbook-body{ min-width:0; } }
/* end homepage workbook + dash removal */

/* ===================== LAUNCH POLISH PASS ===================== */
:root{ --announce-height:37px; --nav-height:113px; --header-height:150px; }
@media (max-width:700px){ :root{ --nav-height:96px; --header-height:140px; } }

/* Anchor scrolling clears the fixed header (framework + all pages) */
html{ scroll-padding-top:var(--header-height); }
[id]{ scroll-margin-top:var(--header-height); }

/* Header brightness, bronze border, depth, z-index */
nav{ border-bottom:1px solid rgba(196,122,60,.35) !important; box-shadow:0 10px 30px rgba(0,0,0,.35); z-index:999 !important; }
.btmf-topline{ z-index:1000 !important; }
.nav-links a{ color:#e8dfd4 !important; }
.nav-links a:hover,.nav-links a:focus{ color:#ffffff !important; }
.nav-cta-primary{ background:#c47a3c !important; color:#080808 !important; font-weight:800 !important; border:none !important; }
.nav-cta-secondary{ color:#e8dfd4 !important; border:1px solid rgba(196,122,60,.6) !important; background:transparent !important; }

/* No blue/purple links anywhere: links inherit text color unless they're buttons */
a,a:visited{ color:inherit; }
a.btn-primary,a.btn-secondary,a.btn-ghost,a.btn-submit{ color:inherit; }
.nav-cta-primary,.nav-cta-primary:visited{ color:#080808 !important; }

/* O. B. Levy / publisher on one line */
.nowrap{ white-space:nowrap; }

/* Framework: consistent two-column alignment, clean stacking on mobile */
.framework-move-section .fw-page-grid{ grid-template-columns:minmax(260px,0.85fr) minmax(0,1.15fr) !important; align-items:center; }
@media (max-width:760px){ .framework-move-section .fw-page-grid{ grid-template-columns:1fr !important; gap:30px !important; } }

/* Homepage hero side support panels (desktop only) */
.hero-side{ position:absolute; top:50%; transform:translateY(-50%); width:190px; z-index:2; opacity:0; animation:sideFade .9s ease-out 1.7s forwards; }
.hero-side-left{ left:clamp(24px,4vw,68px); text-align:left; }
.hero-side-right{ right:clamp(24px,4vw,68px); text-align:center; }
.hero-side-eyebrow{ font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.2em; text-transform:uppercase; font-size:.7rem; color:var(--bronze-soft); margin-bottom:12px; }
.hero-side-list{ list-style:none; padding:0; margin:0; }
.hero-side-list li{ font-family:'Barlow Condensed',sans-serif; font-weight:600; letter-spacing:.04em; text-transform:uppercase; font-size:.82rem; color:#d4cfc8; padding:9px 0; border-top:1px solid rgba(196,122,60,.25); }
.hero-side-cover{ width:128px; display:block; margin:0 auto 12px; border:1px solid #222; box-shadow:0 18px 40px rgba(0,0,0,.55); border-radius:3px; }
.hero-side-avail{ font-size:.74rem; color:#c8c1b8; line-height:1.5; margin-bottom:10px; }
.hero-side-link{ font-family:'Barlow Condensed',sans-serif; font-weight:700; letter-spacing:.1em; text-transform:uppercase; font-size:.72rem; color:var(--bronze-soft); text-decoration:none; }
@keyframes sideFade{ to{ opacity:1; } }
@media (max-width:1180px){ .hero-side{ display:none; } }

/* Free tools: gate tool-selector checkboxes */
.tool-selector{ border:1px solid var(--border-light); border-radius:12px; padding:14px 18px 8px; margin:6px 0 18px; text-align:left; }
.tool-selector legend{ font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.12em; text-transform:uppercase; font-size:.74rem; color:var(--bronze-dark); padding:0 6px; }
.tool-selector label{ display:flex; align-items:center; gap:10px; padding:7px 4px; font-size:.95rem; color:var(--soft-ink); cursor:pointer; }
.tool-selector input[type=checkbox]{ width:18px; height:18px; accent-color:var(--bronze); flex-shrink:0; }

/* Contact form alignment */
.contact-section form,.contact-form{ width:min(760px,100%); margin-inline:auto; }
.form-row{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.form-row.full,.form-group.full{ grid-column:1 / -1; }
@media (max-width:720px){ .form-row{ grid-template-columns:1fr; } }
/* ===================== END LAUNCH POLISH PASS ===================== */

/* ===================== FINAL LAUNCH FIXES ===================== */
/* Non-clickable store placeholders (live book URLs pending) */
.store-buttons{ display:flex; flex-wrap:wrap; gap:12px; justify-content:center; }
.store-button{ display:inline-flex; align-items:center; gap:10px; font-family:'Barlow Condensed',sans-serif; font-weight:700; letter-spacing:.1em; text-transform:uppercase; font-size:.74rem; padding:14px 22px; border-radius:3px; }
.store-button.disabled,.store-button[aria-disabled="true"]{ color:#080808; background:#c47a3c; opacity:.85; cursor:not-allowed; pointer-events:none; }
.store-icon-placeholder{ width:18px; height:18px; border-radius:4px; background:rgba(8,8,8,.28); display:inline-block; flex-shrink:0; }

/* Free tools gate: inline error */
.tool-error{ display:none; color:#9a3412; background:#fbeae0; border:1px solid #e0a98a; border-radius:8px; padding:10px 14px; font-size:.9rem; font-weight:600; margin:0 0 14px; }

/* Header fully opaque; reinforce anchor offset */
nav{ background:#080808 !important; }
section[id]{ scroll-margin-top:var(--header-height); }
/* ===================== END FINAL LAUNCH FIXES ===================== */

/* ===================== STORE BADGES (official assets) ===================== */
.store-badges{ display:inline-flex; flex-wrap:wrap; gap:18px; justify-content:center; align-items:center; background:#0b0b0b; border:1px solid rgba(196,122,60,.3); border-radius:12px; padding:16px 24px; }
.store-badge{ display:inline-flex; align-items:center; }
.store-badge img{ width:auto; display:block; }
.badge-amazon{ height:34px; }
.badge-apple{ height:40px; }
.badge-google{ height:48px; }
.store-badges.pending .store-badge{ cursor:not-allowed; opacity:.92; }
.store-badges .store-badge a{ display:inline-flex; }
@media (max-width:520px){ .store-badges{ gap:14px; padding:14px 16px; } .badge-amazon{ height:28px; } .badge-apple{ height:34px; } .badge-google{ height:42px; } }
/* ===================== END STORE BADGES ===================== */

/* ===================== FINAL PADDING / OFFSET POLISH ===================== */
:root{ --section-pad-y:clamp(72px,9vw,120px); --section-pad-x:clamp(22px,5vw,72px); --card-pad:clamp(24px,4vw,42px); --header-offset:var(--header-height,150px); }
/* prevent horizontal scroll / overflow on mobile */
body{ overflow-x:hidden; }
img,svg{ max-width:100%; }
/* consistent CTA / store row rhythm */
.cta-row,.button-row,.store-buttons{ gap:clamp(12px,2vw,18px); flex-wrap:wrap; }
@media (max-width:640px){
  .store-buttons{ gap:12px; }
}
/* ===================== END FINAL PADDING / OFFSET POLISH ===================== */

/* ===================== FRAMEWORK MOVE SECTIONS ===================== */
.framework-move-section{ padding:clamp(64px,9vw,120px) clamp(22px,5vw,48px); border-bottom:1px solid rgba(196,122,60,.16); }
.fw-move-inner{ max-width:1040px; margin:0 auto; }
.move-number{ color:var(--bronze-soft); font-family:'Barlow Condensed',sans-serif; font-weight:800; text-transform:uppercase; letter-spacing:.18em; font-size:.82rem; margin-bottom:22px; }
.framework-card-row{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(20px,3.5vw,40px); align-items:stretch; }
/* Left: image-only card (equal size with scripture card) */
.move-card{ height:100%; padding:clamp(18px,2.6vw,28px); border:1px solid rgba(196,122,60,.4); background:linear-gradient(160deg,#f4ece0,#e7d9c8); border-radius:18px; display:flex; align-items:center; justify-content:center; }
.move-card-img{ width:100%; height:auto; border-radius:12px; border:1px solid rgba(122,78,42,.35); box-shadow:0 16px 38px rgba(0,0,0,.26); display:block; }
/* Right: scripture card */
.scripture-card{ height:100%; padding:clamp(24px,3.6vw,40px); border:1px solid rgba(196,122,60,.4); border-left:4px solid var(--bronze-dark); background:linear-gradient(160deg,#f1e8dc,#e7d9c8); border-radius:18px; display:flex; flex-direction:column; justify-content:center; }
.scripture-card .scripture-label{ font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.16em; text-transform:uppercase; font-size:.72rem; color:var(--bronze-dark); }
.scripture-ref-big{ font-family:'Bebas Neue',sans-serif; font-size:clamp(28px,3.6vw,44px); letter-spacing:.02em; color:#2b2118; line-height:1; margin:8px 0 14px; }
.scripture-paraphrase{ color:#2b2118; font-size:1.05rem; line-height:1.6; font-style:italic; margin:0 0 14px; }
.scripture-note{ color:#5a4a39; font-size:.96rem; line-height:1.55; margin:0 0 16px; padding-top:14px; border-top:1px solid rgba(122,78,42,.25); }
.scripture-reflect{ color:#3a2c20; line-height:1.6; margin:0; font-size:.96rem; }
.scripture-reflect .sr-label{ display:block; font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.12em; text-transform:uppercase; font-size:.7rem; color:var(--bronze-dark); margin-bottom:4px; }
/* Narrative underneath: opens with the former card text, 2 visible + expandable */
.move-compelling-copy{ margin-top:clamp(28px,4vw,48px); max-width:920px; color:#d4cfc8; font-size:clamp(1.02rem,1.4vw,1.16rem); line-height:1.78; }
.move-compelling-copy > p{ margin:0 0 1.1em; }
.move-readmore{ margin-top:6px; }
.move-readmore summary{ cursor:pointer; display:inline-flex; align-items:center; gap:8px; font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.14em; text-transform:uppercase; font-size:.8rem; color:var(--bronze-soft); list-style:none; }
.move-readmore summary::-webkit-details-marker{ display:none; }
.move-readmore summary::after{ content:"+"; font-size:1.25rem; line-height:1; }
.move-readmore[open] summary::after{ content:"\2013"; }
.move-readmore-body{ margin-top:16px; }
.move-readmore-body > p{ margin:0 0 16px; }
.move-act{ background:rgba(196,122,60,.12); border-left:3px solid var(--bronze-bright); border-radius:8px; padding:14px 16px; color:#e8dfd4; font-size:1rem; }
.move-act .sr-label{ display:block; font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.12em; text-transform:uppercase; font-size:.7rem; color:var(--bronze-soft); margin-bottom:4px; }
@media (max-width:820px){ .framework-card-row{ grid-template-columns:1fr; } .framework-move-section{ padding:60px 20px; } }

/* ===================== HEADER CTA PILLS (Fix 7) ===================== */
nav > div:last-of-type, .nav-actions{ display:flex; align-items:center; gap:12px; }
.nav-cta-primary, .nav-cta-secondary{ min-height:42px; display:inline-flex; align-items:center; justify-content:center; padding:0 18px !important; border-radius:999px !important; font-size:.78rem !important; font-weight:800 !important; letter-spacing:.08em !important; text-transform:uppercase; line-height:1; white-space:nowrap; transition:transform .15s ease, box-shadow .15s ease, background .15s ease; }
.nav-cta-primary{ background:linear-gradient(135deg,#d08a45,#b7672f) !important; color:#080808 !important; box-shadow:0 0 0 1px rgba(255,255,255,.08), 0 10px 24px rgba(196,122,60,.22); border:none !important; }
.nav-cta-primary:hover, .nav-cta-primary:focus{ transform:translateY(-1px); box-shadow:0 12px 28px rgba(196,122,60,.32); }
.nav-cta-secondary{ border:1px solid rgba(196,122,60,.75) !important; color:#f5f2ed !important; background:rgba(255,255,255,.03) !important; }
.nav-cta-secondary:hover, .nav-cta-secondary:focus{ background:rgba(196,122,60,.16) !important; color:#ffffff !important; }

/* ===================== CONTACT/FORM ALIGNMENT (Fix 6) ===================== */
.contact-form, .contact-section form, .form-panel form{ width:min(780px,100%); margin-inline:auto; }
.form-row{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.form-row.single, .form-group.full{ grid-column:1 / -1; }
.form-group{ display:flex; flex-direction:column; gap:8px; min-width:0; }
.form-group input, .form-group select, .form-group textarea{ width:100%; box-sizing:border-box; }
.form-group textarea{ min-height:160px; resize:vertical; }
.form-actions{ display:flex; justify-content:flex-start; margin-top:20px; }
.form-actions .btn-primary, .form-actions .btn-submit{ min-width:220px; }
@media (max-width:720px){ .form-row{ grid-template-columns:1fr; } .form-actions .btn-primary, .form-actions .btn-submit{ width:100%; } }
/* ===================== END ===================== */

/* ===================== HERO PRODUCT STACK (book + workbook) ===================== */
.hero-side-right{ width:250px; }
.hero-product-stack{ position:relative; display:flex; align-items:flex-end; justify-content:center; gap:8px; }
.hero-book-cover{ width:128px; z-index:2; border:1px solid #222; box-shadow:0 18px 40px rgba(0,0,0,.55); border-radius:3px; }
.hero-workbook-cover{ width:100px; transform:translateY(16px); z-index:1; opacity:.96; border:1px solid #222; box-shadow:0 14px 32px rgba(0,0,0,.5); border-radius:3px; }
.hero-side-right .hero-side-avail{ margin-top:16px; }
/* ===================== END ===================== */

/* ===================== UNIFIED BUTTON SYSTEM (alignment + polish) ===================== */
.btn-primary:not(.nav-cta-primary), .btn-secondary:not(.nav-cta-secondary), .btn-ghost, .btn-submit{
  display:inline-flex !important; align-items:center; justify-content:center; gap:8px;
  min-height:48px; padding:0 28px !important; border-radius:10px !important;
  font-family:'Barlow Condensed',sans-serif; font-weight:800; font-size:.78rem;
  letter-spacing:.14em; text-transform:uppercase; line-height:1; text-align:center;
  box-sizing:border-box; cursor:pointer; clip-path:none !important; vertical-align:middle;
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease, border-color .15s ease, color .15s ease;
}
.btn-primary:not(.nav-cta-primary), .btn-submit{
  background:linear-gradient(135deg,#d08a45,#b7672f) !important; color:#080808 !important;
  border:1px solid rgba(255,255,255,.10) !important; box-shadow:0 10px 24px rgba(196,122,60,.22);
}
.btn-primary:not(.nav-cta-primary):hover, .btn-submit:hover,
.btn-primary:not(.nav-cta-primary):focus-visible, .btn-submit:focus-visible{
  background:linear-gradient(135deg,#e0a05a,#c47a3c) !important; transform:translateY(-2px);
  box-shadow:0 14px 30px rgba(196,122,60,.34);
}
.btn-secondary:not(.nav-cta-secondary){
  background:rgba(255,255,255,.03) !important; color:#f5f2ed !important;
  border:1px solid rgba(196,122,60,.7) !important;
}
.btn-secondary:not(.nav-cta-secondary):hover, .btn-secondary:not(.nav-cta-secondary):focus-visible{
  background:rgba(196,122,60,.16) !important; border-color:var(--bronze) !important; color:#fff !important; transform:translateY(-2px);
}
.btn-ghost{
  background:transparent !important; color:var(--cream) !important;
  border:1px solid rgba(196,122,60,.45) !important; font-weight:700 !important;
}
.btn-ghost:hover, .btn-ghost:focus-visible{
  border-color:var(--bronze) !important; color:#fff !important; background:rgba(196,122,60,.10) !important; transform:translateY(-2px);
}
/* Ghost on light/cream surfaces -> dark ink for contrast */
.light-section .btn-ghost, .warm-section .btn-ghost, .paper-section .btn-ghost, .warm-panel .btn-ghost, .book-free-callout .btn-ghost{
  color:var(--ink) !important; border-color:rgba(122,78,42,.5) !important;
}
.light-section .btn-ghost:hover, .warm-section .btn-ghost:hover, .paper-section .btn-ghost:hover, .warm-panel .btn-ghost:hover{
  color:var(--bronze-dark) !important; background:rgba(196,122,60,.10) !important;
}
/* Store placeholders: align + match radius */
.store-button{ min-height:48px; padding:0 22px !important; border-radius:10px !important; justify-content:center; }
/* CTA button groups: consistent alignment + wrap */
.sample-cta, .hero-cta, .cta-row, .form-actions{ align-items:center; }
/* ===================== END BUTTON SYSTEM ===================== */

/* ===================== LIVE STORE BUTTONS (clickable) ===================== */
a.store-button{ background:linear-gradient(135deg,#d08a45,#b7672f); color:#080808 !important; box-shadow:0 8px 20px rgba(196,122,60,.25); cursor:pointer; transition:transform .15s ease, box-shadow .15s ease, background .15s ease; }
a.store-button:hover, a.store-button:focus-visible{ transform:translateY(-2px); box-shadow:0 12px 26px rgba(196,122,60,.34); background:linear-gradient(135deg,#e0a05a,#c47a3c); color:#080808 !important; }
a.store-button:visited{ color:#080808 !important; }
/* ===================== END ===================== */

/* ===================== STORE BADGES (icons) ===================== */
.store-badges{ display:flex; flex-wrap:wrap; gap:16px; justify-content:center; align-items:center; }
.store-badge{ display:inline-flex; align-items:center; line-height:0; }
.store-badge img{ height:44px; width:auto; display:block; transition:transform .15s ease, opacity .15s ease; }
.store-badge:not(.disabled):hover img, .store-badge:not(.disabled):focus-visible img{ transform:translateY(-2px); }
.store-badge.disabled{ pointer-events:none; cursor:default; }
.store-badge.disabled img{ opacity:.4; filter:grayscale(.35); }
.hero-store-label{ text-align:center; font-family:'Barlow Condensed',sans-serif; letter-spacing:.18em; text-transform:uppercase; font-size:.76rem; color:var(--bronze-soft); margin:30px 0 14px; }
.hero-store-badges{ margin-bottom:4px; }
@media (max-width:600px){ .store-badge img{ height:40px; } .store-badges{ gap:12px; } }
/* ===================== END ===================== */

/* ===================== FIELD NOTES + ARTICLES ===================== */
.fn-page, .article-page{ background:#0d0b09; }
.page-hero{ padding-top:calc(var(--header-height,150px) + 40px); }
/* Field Notes hero */
.fn-hero{ padding-bottom:clamp(36px,6vw,64px); padding-left:clamp(22px,5vw,48px); padding-right:clamp(22px,5vw,48px); background:radial-gradient(120% 90% at 50% -10%, #221c16 0%, #14110d 48%, #0d0b09 100%); border-bottom:1px solid rgba(196,122,60,.16); text-align:center; }
.fn-hero-inner{ max-width:780px; margin:0 auto; }
.fn-eyebrow, .fn-cta-eyebrow{ display:inline-block; font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.24em; text-transform:uppercase; font-size:.78rem; color:var(--bronze-soft); margin-bottom:14px; }
.fn-hero h1{ font-family:'Bebas Neue',sans-serif; text-transform:uppercase; font-size:clamp(40px,6.5vw,76px); letter-spacing:.02em; line-height:.98; color:#f5f2ed; margin:0 0 18px; }
.fn-lead{ color:#d9d2c8; font-size:clamp(1.04rem,1.6vw,1.22rem); line-height:1.65; margin:0 auto 14px; max-width:660px; }
.fn-sub{ color:var(--bronze-soft); font-family:'Barlow Condensed',sans-serif; letter-spacing:.04em; font-size:1rem; margin:0 auto 26px; max-width:620px; }
.fn-hero-cta, .article-cta .fn-hero-cta{ display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }
/* Move groups */
.field-notes-section{ max-width:1100px; margin:0 auto; padding:clamp(48px,7vw,88px) clamp(22px,5vw,48px); }
.move-group{ margin-bottom:clamp(40px,6vw,72px); }
.move-group-header{ text-align:center; max-width:680px; margin:0 auto clamp(24px,3.5vw,38px); }
.mg-move{ font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.2em; text-transform:uppercase; font-size:.76rem; color:var(--bronze-soft); }
.move-group-header h2{ font-family:'Bebas Neue',sans-serif; text-transform:uppercase; font-size:clamp(34px,4.5vw,52px); letter-spacing:.03em; color:#f5f2ed; line-height:1; margin:6px 0 10px; }
.move-group-header p{ color:#cfc7bc; line-height:1.6; margin:0; }
.article-card-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(18px,3vw,28px); }
.field-note-card{ display:flex; flex-direction:column; padding:clamp(24px,4vw,36px); border:1px solid rgba(196,122,60,.22); background:rgba(16,14,12,.9); border-radius:18px; transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
.field-note-card:hover{ transform:translateY(-3px); border-color:rgba(196,122,60,.5); box-shadow:0 18px 40px rgba(0,0,0,.45); }
.field-note-card .article-category{ font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.16em; text-transform:uppercase; font-size:.7rem; color:var(--bronze-soft); }
.field-note-card h3{ font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:clamp(1.25rem,2vw,1.5rem); line-height:1.18; color:#f5f2ed; margin:10px 0 12px; }
.field-note-card p{ color:#c4bcb1; line-height:1.6; font-size:.98rem; margin:0 0 20px; flex-grow:1; }
.fn-card-foot{ display:flex; align-items:center; justify-content:space-between; gap:12px; border-top:1px solid rgba(196,122,60,.18); padding-top:14px; }
.read-time{ font-family:'Barlow Condensed',sans-serif; letter-spacing:.1em; text-transform:uppercase; font-size:.72rem; color:#9a8f82; }
.fn-card-foot a{ font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.08em; text-transform:uppercase; font-size:.74rem; color:var(--bronze-bright) !important; white-space:nowrap; }
.fn-card-foot a:hover{ color:#e0a05a !important; }
/* CTA blocks */
.fn-cta-block{ text-align:center; max-width:640px; margin:clamp(40px,6vw,72px) auto; padding:clamp(28px,4vw,44px); border:1px solid rgba(196,122,60,.28); background:rgba(16,14,12,.9); border-radius:20px; }
.fn-cta-block p{ color:#d4cfc8; line-height:1.7; margin:8px 0 22px; }
.fn-cta-final{ background:radial-gradient(120% 120% at 50% 0%, #231d16 0%, #14110d 70%); }
/* Article page */
.article-hero{ padding-bottom:clamp(28px,4vw,44px); padding-left:clamp(22px,5vw,48px); padding-right:clamp(22px,5vw,48px); background:radial-gradient(120% 90% at 50% -10%, #221c16 0%, #14110d 50%, #0d0b09 100%); border-bottom:1px solid rgba(196,122,60,.16); }
.article-hero-inner{ max-width:820px; margin:0 auto; }
.article-back{ display:inline-block; font-family:'Barlow Condensed',sans-serif; font-weight:700; letter-spacing:.12em; text-transform:uppercase; font-size:.74rem; color:var(--bronze-soft) !important; margin-bottom:22px; }
.article-back:hover{ color:#e0a05a !important; }
.article-meta{ display:flex; align-items:center; gap:14px; margin-bottom:14px; }
.article-meta .article-category{ font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.18em; text-transform:uppercase; font-size:.74rem; color:#080808; background:var(--bronze-bright); padding:5px 12px; border-radius:999px; }
.article-read-time{ font-family:'Barlow Condensed',sans-serif; letter-spacing:.12em; text-transform:uppercase; font-size:.76rem; color:#9a8f82; }
.article-hero h1{ font-family:'Bebas Neue',sans-serif; text-transform:uppercase; font-size:clamp(38px,6vw,68px); letter-spacing:.02em; line-height:1; color:#f5f2ed; margin:0 0 16px; }
.article-deck{ color:#d9d2c8; font-size:clamp(1.08rem,1.8vw,1.3rem); line-height:1.55; font-style:italic; margin:0; }
.article-body{ max-width:760px; margin:0 auto; padding:clamp(40px,6vw,68px) clamp(22px,5vw,40px); color:#d4cfc8; font-size:clamp(1.04rem,1.4vw,1.18rem); line-height:1.82; }
.article-body p{ margin:0 0 1.3em; }
.article-body h2{ font-family:'Barlow Condensed',sans-serif; font-weight:700; letter-spacing:.02em; color:#f5f2ed; font-size:clamp(1.5rem,2.6vw,2rem); margin:2.2em 0 .7em; }
.article-body a{ color:var(--bronze-bright) !important; text-decoration:underline; text-underline-offset:3px; }
.reflection-box, .action-step{ margin:2.4rem 0; padding:clamp(24px,4vw,40px); border:1px solid rgba(196,122,60,.28); background:rgba(16,14,12,.92); border-radius:18px; }
.action-step{ border-left:4px solid var(--bronze-bright); }
.reflection-box h3, .action-step h3{ font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.14em; text-transform:uppercase; font-size:.92rem; color:var(--bronze-soft); margin:0 0 14px; }
.reflection-box ul{ margin:0; padding-left:1.2em; }
.reflection-box li{ margin:0 0 .8em; color:#d4cfc8; line-height:1.6; }
.action-step p{ margin:0; }
.closing-charge{ font-size:clamp(1.1rem,1.7vw,1.28rem); line-height:1.7; color:#efe7da; font-weight:500; border-top:1px solid rgba(196,122,60,.2); padding-top:1.6em; margin-top:1.6em; }
/* Related */
.article-related{ max-width:900px; margin:0 auto; padding:0 clamp(22px,5vw,40px) clamp(20px,4vw,36px); }
.article-related h3{ font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.14em; text-transform:uppercase; font-size:.86rem; color:var(--bronze-soft); margin:0 0 18px; text-align:center; }
.related-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.related-card{ display:flex; flex-direction:column; gap:6px; padding:20px 22px; border:1px solid rgba(196,122,60,.22); background:rgba(16,14,12,.9); border-radius:14px; transition:transform .15s ease, border-color .15s ease; }
.related-card:hover{ transform:translateY(-2px); border-color:rgba(196,122,60,.5); }
.related-card .article-category{ font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.16em; text-transform:uppercase; font-size:.68rem; color:var(--bronze-soft); }
.related-title{ font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:1.1rem; line-height:1.2; color:#f5f2ed !important; }
.related-read{ font-family:'Barlow Condensed',sans-serif; letter-spacing:.1em; text-transform:uppercase; font-size:.7rem; color:#9a8f82; }
/* Article CTA */
.article-cta{ text-align:center; max-width:700px; margin:clamp(20px,4vw,40px) auto; padding:clamp(36px,5vw,56px) clamp(22px,5vw,40px); border-top:1px solid rgba(196,122,60,.2); }
.article-cta h2{ font-family:'Bebas Neue',sans-serif; text-transform:uppercase; font-size:clamp(30px,4vw,46px); letter-spacing:.03em; color:#f5f2ed; line-height:1; margin:10px 0 12px; }
.article-cta > p{ color:#d4cfc8; line-height:1.7; margin:0 auto 24px; max-width:520px; }
.article-cta-sub{ margin-top:22px; font-family:'Barlow Condensed',sans-serif; letter-spacing:.06em; text-transform:uppercase; font-size:.76rem; color:#9a8f82; }
.article-cta-sub a{ color:var(--bronze-soft) !important; }
@media (max-width:760px){ .article-card-grid, .related-grid{ grid-template-columns:1fr; } }
/* ===================== END FIELD NOTES ===================== */

/* ============ FIELD NOTES HUB + EVERYDAY + RESOURCES ============ */
/* Section heads */
.fn-section-head{ max-width:760px; margin:0 auto clamp(28px,4vw,46px); text-align:center; }
.fn-section-label{ display:inline-block; font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.2em; text-transform:uppercase; font-size:.74rem; color:var(--bronze-soft); margin-bottom:10px; }
.fn-section-title{ font-family:'Bebas Neue',sans-serif; text-transform:uppercase; font-size:clamp(34px,5vw,58px); letter-spacing:.02em; color:#f5f2ed; line-height:1; margin:0 0 14px; }
.fn-section-head p{ color:#cfc7bc; line-height:1.65; margin:0; }
.everyday-head{ padding-top:clamp(20px,4vw,40px); border-top:1px solid rgba(196,122,60,.2); margin-top:clamp(30px,5vw,56px); }
.everyday-head .fn-section-label{ color:var(--bronze-bright); }
/* Everyday cards: visually distinct (bronze rail + tint) */
.article-card-grid.grid-everyday{ grid-template-columns:repeat(auto-fit,minmax(238px,1fr)); }
.everyday-card{ border-left:3px solid var(--bronze-bright); background:rgba(22,17,12,.92); }
.everyday-card .article-category{ color:var(--bronze-bright); }
/* Signup form */
.fn-signup{ max-width:780px; margin:clamp(36px,5vw,60px) auto; padding:0 clamp(22px,5vw,40px); }
.fn-signup-inner{ padding:clamp(28px,4vw,46px); border:1px solid rgba(196,122,60,.3); background:radial-gradient(120% 120% at 50% 0%,#231d16 0%,#14110d 70%); border-radius:20px; }
.fn-signup h3{ font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:clamp(1.5rem,3vw,2rem); color:#f5f2ed; margin:6px 0 8px; }
.fn-signup p{ color:#d4cfc8; line-height:1.6; margin:0 0 22px; }
.hidden-field{ display:none; }
.fn-form .form-row{ display:flex; gap:16px; flex-wrap:wrap; margin-bottom:16px; }
.fn-form .form-group{ flex:1 1 220px; display:flex; flex-direction:column; gap:7px; margin-bottom:16px; }
.fn-form label{ font-family:'Barlow Condensed',sans-serif; font-weight:600; letter-spacing:.08em; text-transform:uppercase; font-size:.78rem; color:var(--bronze-soft); }
.fn-form input, .fn-form select, .fn-form textarea{ width:100%; padding:13px 15px; background:rgba(8,7,6,.85); border:1px solid rgba(196,122,60,.28); border-radius:10px; color:#f1ece4; font-family:'Barlow',sans-serif; font-size:1rem; }
.fn-form input:focus, .fn-form select:focus, .fn-form textarea:focus{ outline:none; border-color:var(--bronze-bright); }
.fn-form textarea{ resize:vertical; }
.fn-interests{ border:none; padding:0; margin:4px 0 22px; }
.fn-interests legend{ font-family:'Barlow Condensed',sans-serif; font-weight:600; letter-spacing:.08em; text-transform:uppercase; font-size:.78rem; color:var(--bronze-soft); margin-bottom:12px; padding:0; }
.fn-check-grid{ display:flex; flex-wrap:wrap; gap:10px 18px; }
.fn-check{ display:inline-flex; align-items:center; gap:8px; color:#d4cfc8; font-size:.95rem; cursor:pointer; }
.fn-check input{ width:auto; accent-color:var(--bronze-bright); }
.fn-form .btn-submit{ margin-top:4px; }
/* Resource cards (field-notes hub) */
.fn-resources-section{ max-width:1100px; margin:0 auto; padding:clamp(40px,6vw,80px) clamp(22px,5vw,48px); border-top:1px solid rgba(196,122,60,.2); }
.resource-card-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:clamp(16px,2.5vw,24px); }
.resource-card{ display:flex; flex-direction:column; padding:clamp(22px,3.5vw,32px); border:1px solid rgba(196,122,60,.24); background:rgba(16,14,12,.9); border-radius:18px; transition:transform .18s ease,border-color .18s ease; }
.resource-card:hover{ transform:translateY(-3px); border-color:rgba(196,122,60,.55); }
.rc-tag{ font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.18em; text-transform:uppercase; font-size:.68rem; color:#080808; background:var(--bronze-bright); align-self:flex-start; padding:4px 11px; border-radius:999px; }
.resource-card h3{ font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:1.32rem; color:#f5f2ed; margin:14px 0 10px; }
.resource-card p{ color:#c4bcb1; line-height:1.55; font-size:.96rem; flex-grow:1; margin:0 0 16px; }
.rc-go{ font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.08em; text-transform:uppercase; font-size:.74rem; color:var(--bronze-bright); }
/* Podcast CTA band */
.fn-podcast-cta{ max-width:1100px; margin:0 auto clamp(40px,6vw,72px); padding:0 clamp(22px,5vw,48px); }
.fn-podcast-inner{ text-align:center; padding:clamp(30px,4vw,48px); border:1px solid rgba(196,122,60,.22); border-radius:20px; background:rgba(16,14,12,.85); }
.fn-podcast-inner h3{ font-family:'Bebas Neue',sans-serif; text-transform:uppercase; font-size:clamp(28px,4vw,42px); letter-spacing:.03em; color:#f5f2ed; line-height:1; margin:8px 0 12px; }
.fn-podcast-inner p{ color:#d4cfc8; line-height:1.65; max-width:560px; margin:0 auto 22px; }
/* article-kind badge (everyday article pages) */
.article-kind{ font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.16em; text-transform:uppercase; font-size:.7rem; color:var(--bronze-bright); border:1px solid rgba(196,122,60,.5); padding:4px 11px; border-radius:999px; }
/* ===== resources.html ===== */
.resource-section{ max-width:980px; margin:0 auto; padding:clamp(44px,6vw,80px) clamp(22px,5vw,44px); border-bottom:1px solid rgba(196,122,60,.14); }
.resource-section.alt{ background:rgba(20,16,12,.55); }
.resource-head{ max-width:680px; margin:0 auto clamp(26px,3.5vw,40px); text-align:center; }
.resource-head h2{ font-family:'Bebas Neue',sans-serif; text-transform:uppercase; font-size:clamp(30px,4.4vw,50px); letter-spacing:.02em; color:#f5f2ed; line-height:1; margin:8px 0 14px; }
.resource-head p{ color:#cfc7bc; line-height:1.7; margin:0; }
.resource-cta{ text-align:center; margin-top:clamp(26px,4vw,40px); }
.resource-note{ text-align:center; color:#9a8f82; font-size:.95rem; margin-top:24px; }
.assess-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:16px; }
.assess-card{ padding:24px; border:1px solid rgba(196,122,60,.22); border-left:3px solid var(--bronze-bright); background:rgba(16,14,12,.9); border-radius:14px; }
.assess-move{ font-family:'Bebas Neue',sans-serif; text-transform:uppercase; letter-spacing:.04em; font-size:1.4rem; color:var(--bronze-soft); }
.assess-card p{ color:#d4cfc8; line-height:1.5; margin:8px 0 0; font-size:1.02rem; }
.challenge-list{ list-style:none; max-width:680px; margin:0 auto; padding:0; display:flex; flex-direction:column; gap:12px; }
.challenge-list li{ display:flex; align-items:flex-start; gap:16px; padding:16px 20px; border:1px solid rgba(196,122,60,.2); background:rgba(16,14,12,.9); border-radius:12px; color:#e6dfd4; line-height:1.5; }
.chal-num{ font-family:'Bebas Neue',sans-serif; font-size:1.3rem; color:var(--bronze-bright); flex-shrink:0; line-height:1.2; }
.group-list{ max-width:560px; margin:0 auto; padding-left:0; list-style:none; display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:12px; }
.group-list li{ padding:14px 18px; border:1px solid rgba(196,122,60,.2); border-radius:10px; background:rgba(16,14,12,.85); color:#e6dfd4; font-family:'Barlow Condensed',sans-serif; font-weight:600; letter-spacing:.02em; }
.ask-form{ max-width:680px; margin:0 auto; }
.tool-card-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:clamp(16px,2.5vw,24px); }
.tool-card{ display:flex; flex-direction:column; padding:clamp(22px,3.5vw,32px); border:1px solid rgba(196,122,60,.22); background:rgba(16,14,12,.9); border-radius:16px; }
.tool-card h3{ font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:1.24rem; color:#f5f2ed; margin:0 0 10px; line-height:1.2; }
.tool-card p{ color:#c4bcb1; line-height:1.55; font-size:.96rem; flex-grow:1; margin:0 0 18px; }
.tool-card .btn-secondary{ align-self:flex-start; }
/* homepage field notes preview */
.home-fn-preview{ padding:clamp(56px,8vw,96px) clamp(22px,5vw,48px); border-top:1px solid var(--border-dark); text-align:center; }
.home-fn-inner{ max-width:1000px; margin:0 auto; }
.home-fn-title{ font-family:'Bebas Neue',sans-serif; text-transform:uppercase; font-size:clamp(32px,4.5vw,54px); letter-spacing:.03em; color:#f5f2ed; line-height:1; margin:6px 0 14px; }
.home-fn-copy{ color:#d4cfc8; line-height:1.7; margin:0 auto 32px; max-width:600px; }
.home-fn-cards{ display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:18px; margin-bottom:34px; text-align:left; }
.home-fn-card{ display:flex; flex-direction:column; gap:12px; padding:24px; border:1px solid rgba(196,122,60,.22); background:rgba(16,14,12,.9); border-radius:16px; transition:transform .18s ease,border-color .18s ease; }
.home-fn-card:hover{ transform:translateY(-3px); border-color:rgba(196,122,60,.5); }
.home-fn-card .article-category{ font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.16em; text-transform:uppercase; font-size:.68rem; color:var(--bronze-soft); }
.home-fn-card h3{ font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:1.2rem; color:#f5f2ed; line-height:1.2; margin:0; flex-grow:1; }
.home-fn-signup{ margin-top:26px; color:#9a8f82; font-size:.96rem; }
.home-fn-signup a{ color:var(--bronze-bright) !important; font-weight:600; }
@media (max-width:600px){ .fn-form .form-row{ flex-direction:column; gap:0; } }
/* ============ END FIELD NOTES HUB ============ */

/* ============ START HERE + BUILDER PATH + QOTW + LEADER KIT + FATHER/SON ============ */
/* Start Here cards */
.sh-cards-section{ max-width:1100px; margin:0 auto; padding:clamp(44px,6vw,80px) clamp(22px,5vw,48px); }
.sh-card-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(290px,1fr)); gap:clamp(16px,2.5vw,26px); }
.sh-card{ display:flex; flex-direction:column; padding:clamp(24px,3.5vw,36px); border:1px solid rgba(196,122,60,.24); border-top:3px solid var(--bronze-bright); background:rgba(16,14,12,.92); border-radius:18px; }
.sh-move{ font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.18em; text-transform:uppercase; font-size:.7rem; color:var(--bronze-soft); }
.sh-card h3{ font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:clamp(1.3rem,2vw,1.55rem); line-height:1.15; color:#f5f2ed; margin:10px 0 12px; }
.sh-card p{ color:#c4bcb1; line-height:1.6; font-size:.98rem; margin:0 0 22px; flex-grow:1; }
.sh-card .btn-primary{ align-self:flex-start; }
.sh-article{ display:inline-block; margin-top:16px; font-family:'Barlow Condensed',sans-serif; font-weight:700; letter-spacing:.06em; text-transform:uppercase; font-size:.76rem; color:var(--bronze-bright) !important; }
.sh-article:hover{ color:#e0a05a !important; }
/* Builder Path */
.builder-path{ max-width:880px; margin:0 auto; padding:clamp(44px,6vw,80px) clamp(22px,5vw,48px); border-top:1px solid rgba(196,122,60,.18); }
.bp-steps{ display:flex; flex-direction:column; gap:14px; position:relative; }
.bp-step{ display:flex; gap:20px; align-items:flex-start; padding:clamp(20px,3vw,28px); border:1px solid rgba(196,122,60,.22); background:rgba(16,14,12,.9); border-radius:16px; }
.bp-num{ font-family:'Bebas Neue',sans-serif; font-size:clamp(1.6rem,3vw,2.1rem); color:var(--bronze-bright); line-height:1; flex-shrink:0; }
.bp-body h3{ font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:1.28rem; color:#f5f2ed; margin:0 0 6px; line-height:1.15; }
.bp-body p{ color:#c4bcb1; line-height:1.55; font-size:.97rem; margin:0 0 12px; }
.bp-link{ font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.08em; text-transform:uppercase; font-size:.74rem; color:var(--bronze-bright) !important; }
.bp-link:hover{ color:#e0a05a !important; }
@media (min-width:860px){ .bp-step{ margin-left:0; } .bp-step:nth-child(even){ margin-left:56px; } }
/* QOTW */
.qotw-box{ max-width:640px; margin:0 auto; text-align:center; padding:clamp(28px,4vw,44px); border:1px solid rgba(196,122,60,.3); background:radial-gradient(120% 120% at 50% 0%,#231d16 0%,#14110d 70%); border-radius:20px; }
.qotw-q{ font-family:'Bebas Neue',sans-serif; text-transform:uppercase; font-size:clamp(26px,3.6vw,38px); letter-spacing:.02em; color:#f5f2ed; line-height:1.08; margin:0 0 14px; }
.qotw-copy{ color:#d4cfc8; line-height:1.7; margin:0 0 24px; }
.qotw-archive{ max-width:640px; margin:clamp(26px,4vw,40px) auto 0; }
.qotw-archive h3{ font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.14em; text-transform:uppercase; font-size:.84rem; color:var(--bronze-soft); margin:0 0 14px; text-align:center; }
.qotw-archive ol{ margin:0; padding-left:1.4em; color:#c4bcb1; line-height:1.6; display:flex; flex-direction:column; gap:10px; }
.qotw-mini{ max-width:560px; margin:clamp(28px,4vw,44px) auto 0; padding:clamp(22px,3vw,32px); border:1px solid rgba(196,122,60,.26); border-radius:16px; background:rgba(16,14,12,.85); }
.qotw-mini .qotw-q{ font-size:clamp(22px,3vw,30px); margin:6px 0 16px; }
/* Leader kit / father-son shared */
.who-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); gap:12px; max-width:820px; margin:0 auto; }
.who-card{ padding:18px 14px; text-align:center; border:1px solid rgba(196,122,60,.22); border-radius:12px; background:rgba(16,14,12,.88); color:#e6dfd4; font-family:'Barlow Condensed',sans-serif; font-weight:600; letter-spacing:.04em; }
.week-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(290px,1fr)); gap:clamp(16px,2.5vw,24px); }
.week-card{ padding:clamp(22px,3vw,30px); border:1px solid rgba(196,122,60,.24); border-left:3px solid var(--bronze-bright); background:rgba(16,14,12,.92); border-radius:16px; }
.week-head{ display:flex; align-items:baseline; gap:14px; margin-bottom:10px; }
.week-head h3{ font-family:'Bebas Neue',sans-serif; text-transform:uppercase; font-size:1.7rem; letter-spacing:.03em; color:#f5f2ed; margin:0; line-height:1; }
.week-focus{ color:#d9d2c8; font-style:italic; line-height:1.55; margin:0 0 16px; }
.week-row{ display:flex; gap:12px; align-items:flex-start; margin-top:12px; }
.week-label{ font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.12em; text-transform:uppercase; font-size:.68rem; color:#080808; background:var(--bronze-soft); padding:3px 9px; border-radius:999px; flex-shrink:0; margin-top:2px; }
.week-row p{ color:#c4bcb1; line-height:1.55; font-size:.96rem; margin:0; }
.fs-followups{ margin:0; padding-left:1.1em; color:#c4bcb1; line-height:1.5; font-size:.95rem; display:flex; flex-direction:column; gap:6px; }
.home-card-copy{ color:#c4bcb1; line-height:1.5; font-size:.93rem; margin:0; }
@media (max-width:600px){ .bp-step{ flex-direction:row; } .week-head{ flex-wrap:wrap; } }
/* ============ END START HERE SYSTEMS ============ */

/* ============ V23 HEADER POLISH ============ */
.nav-links{ gap:clamp(13px,1.5vw,28px) !important; flex-wrap:nowrap; }
.nav-links a{ white-space:nowrap; font-size:clamp(0.66rem,0.74vw,0.74rem) !important; }
nav > div[style*="gap:14px"]{ gap:10px !important; }
.nav-cta-primary,.nav-cta-secondary{ white-space:nowrap; min-height:40px; display:inline-flex; align-items:center; justify-content:center; }
.mobile-menu a{ padding:15px 22px; font-size:1rem; }

/* ============ V23 COMPONENTS ============ */
/* Audio Field Note placeholder */
.audio-field-note{ max-width:760px; margin:clamp(26px,4vw,40px) auto 0; padding:clamp(20px,3vw,30px); display:flex; align-items:center; justify-content:space-between; gap:20px; border:1px dashed rgba(196,122,60,.4); background:rgba(18,15,12,.85); border-radius:16px; }
.afn-label{ display:inline-block; font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.18em; text-transform:uppercase; font-size:.66rem; color:var(--bronze-soft); margin-bottom:6px; }
.audio-field-note h2{ font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:1.2rem; color:#f5f2ed; margin:0 0 8px; line-height:1.15; }
.audio-field-note p{ color:#b8afa3; font-size:.92rem; line-height:1.55; margin:0 0 8px; max-width:480px; }
.afn-sub{ font-style:italic; color:#9a8f82 !important; }
.audio-duration{ display:inline-block; font-family:'Barlow Condensed',sans-serif; letter-spacing:.1em; text-transform:uppercase; font-size:.7rem; color:#9a8f82; border:1px solid rgba(196,122,60,.25); padding:3px 10px; border-radius:999px; }
.audio-status{ flex-shrink:0; font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.1em; text-transform:uppercase; font-size:.74rem; color:#9a8f82; border:1px solid rgba(196,122,60,.3); padding:12px 18px; border-radius:10px; opacity:.75; cursor:default; }
.fn-audio-band{ max-width:980px; }
.fn-audio-band .btn-secondary{ flex-shrink:0; }
@media (max-width:640px){ .audio-field-note{ flex-direction:column; align-items:flex-start; } }
/* Article pages: audio sits between hero and body */
.article-page .audio-field-note{ margin-top:clamp(26px,4vw,40px); }
/* Steps box in expanded articles */
.steps-box{ margin:2.4rem 0; padding:clamp(24px,4vw,40px); border:1px solid rgba(196,122,60,.28); background:rgba(16,14,12,.92); border-radius:18px; }
.steps-box h2{ margin-top:0 !important; font-size:clamp(1.3rem,2.2vw,1.7rem) !important; }
.steps-list{ margin:0; padding-left:1.3em; display:flex; flex-direction:column; gap:14px; color:#d4cfc8; line-height:1.65; }
.steps-list li::marker{ color:var(--bronze-bright); font-weight:700; }
.steps-list strong{ color:#f5f2ed; }
/* Jump links */
.fn-jump{ display:flex; flex-wrap:wrap; gap:10px; justify-content:center; max-width:880px; margin:clamp(24px,4vw,36px) auto 0; padding:0 clamp(22px,5vw,40px); }
.fn-jump a{ font-family:'Barlow Condensed',sans-serif; font-weight:700; letter-spacing:.1em; text-transform:uppercase; font-size:.72rem; color:#d4cfc8 !important; border:1px solid rgba(196,122,60,.3); padding:9px 16px; border-radius:999px; transition:all .15s ease; }
.fn-jump a:hover{ color:#080808 !important; background:var(--bronze-bright); border-color:var(--bronze-bright); }
/* Most read */
.most-read-section{ max-width:1100px; margin:0 auto; padding:clamp(40px,6vw,72px) clamp(22px,5vw,48px) 0; }
.grid-most-read{ grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); }
.most-read-card{ border-top:3px solid var(--bronze-bright); }
/* For Men Who (homepage) */
.fmw-section{ padding:clamp(56px,8vw,96px) clamp(22px,5vw,48px); border-top:1px solid var(--border-dark); text-align:center; }
.fmw-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(270px,1fr)); gap:18px; text-align:left; }
.fmw-card{ display:flex; flex-direction:column; padding:clamp(22px,3vw,30px); border:1px solid rgba(196,122,60,.22); background:rgba(16,14,12,.9); border-radius:16px; }
.fmw-card h3{ font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:1.22rem; color:#f5f2ed; line-height:1.2; margin:0 0 10px; }
.fmw-card p{ color:#c4bcb1; line-height:1.55; font-size:.95rem; margin:0 0 18px; flex-grow:1; }
.fmw-cta{ align-self:flex-start; }
.fmw-read{ display:inline-block; margin-top:14px; font-family:'Barlow Condensed',sans-serif; font-weight:700; letter-spacing:.06em; text-transform:uppercase; font-size:.72rem; color:var(--bronze-bright) !important; }
.fmw-read:hover{ color:#e0a05a !important; }
/* Homepage duo band */
.home-duo{ padding:clamp(40px,6vw,72px) clamp(22px,5vw,48px); border-top:1px solid var(--border-dark); }
.home-duo-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:18px; max-width:900px; margin:0 auto; }
.duo-card{ text-align:center; padding:clamp(26px,4vw,38px); border:1px solid rgba(196,122,60,.26); background:rgba(16,14,12,.9); border-radius:18px; }
.duo-card h3{ font-family:'Bebas Neue',sans-serif; text-transform:uppercase; font-size:clamp(24px,3vw,32px); letter-spacing:.03em; color:#f5f2ed; line-height:1.05; margin:8px 0 10px; }
.duo-card p{ color:#c4bcb1; line-height:1.6; font-size:.95rem; margin:0 0 20px; }
/* Resources hub group labels */
.hub-label{ text-align:center; padding:clamp(30px,5vw,48px) 22px 0; }
.hub-label span{ display:inline-block; font-family:'Bebas Neue',sans-serif; text-transform:uppercase; letter-spacing:.12em; font-size:clamp(15px,1.8vw,19px); color:#080808; background:var(--bronze-bright); padding:7px 22px; border-radius:999px; }
/* Store option labels */
.store-badges{ align-items:flex-start; }
.store-option{ display:flex; flex-direction:column; align-items:center; gap:8px; }
.store-label{ font-family:'Barlow Condensed',sans-serif; font-weight:700; letter-spacing:.1em; text-transform:uppercase; font-size:.68rem; color:var(--bronze-soft); white-space:nowrap; }
.store-option.disabled .store-label{ color:#7a7167; }
/* ============ END V23 ============ */

/* ============ V24 FUTURE-READY AUDIO (BEM) ============
   Future audio convention:
   Store Field Note MP3 files in /assets/audio/
   Use article slug as file name.
   Example: /assets/audio/field-note-a-mans-phone-can-become-his-master.mp3
   When real audio exists, swap .audio-field-note__status for
   <audio class="audio-field-note__player" controls preload="none">. */
.audio-field-note{ margin:clamp(28px,5vw,56px) auto; padding:clamp(24px,4vw,42px); border:1px solid rgba(196,122,60,.26); border-radius:20px; background:rgba(12,12,12,.82); display:flex; align-items:center; justify-content:space-between; gap:clamp(18px,4vw,36px); border-style:solid; }
.audio-field-note__content{ max-width:720px; }
.audio-field-note .section-label{ margin-bottom:6px; }
.audio-field-note__duration, .audio-field-note__status{ display:inline-flex; align-items:center; justify-content:center; min-height:38px; padding:0 16px; border-radius:999px; font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.08em; text-transform:uppercase; font-size:.72rem; }
.audio-field-note__duration{ color:#c47a3c; border:1px solid rgba(196,122,60,.35); margin-top:6px; }
.audio-field-note__status{ color:#080808; background:#c47a3c; white-space:nowrap; opacity:.86; flex-shrink:0; cursor:default; }
.audio-field-note__player{ width:100%; margin-top:18px; }
@media (max-width:720px){
  .audio-field-note{ flex-direction:column; align-items:flex-start; }
  .audio-field-note__status{ width:100%; }
}
/* ============ END V24 AUDIO ============ */

/* ============ V25 LAUNCH POLISH ============ */
/* Anchor offset under fixed header */
html{ scroll-padding-top:var(--header-height,150px); }
[id], section{ scroll-margin-top:var(--header-height,150px); }
/* Header breathing room */
.nav-links{ gap:clamp(10px,1.1vw,22px) !important; }
/* Tablet: hide Podcast/Speaking from nav between 900-1180px (remain in mobile menu + footer) */
@media (min-width:901px) and (max-width:1180px){
  .nav-tablet-hide{ display:none; }
}
/* Google Play text-only disabled button */
.store-option--disabled{ opacity:.9; }
.store-button--disabled, .store-button[aria-disabled="true"]{ pointer-events:none; cursor:not-allowed; opacity:.86; filter:grayscale(.25); }
.store-button--disabled{ display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:0 22px; border:1px solid rgba(196,122,60,.35); border-radius:8px; font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.08em; text-transform:uppercase; font-size:.78rem; color:#9a8f82; background:rgba(20,17,14,.8); white-space:nowrap; }
/* ============ END V25 ============ */
.fmw-more{ margin-top:22px; font-family:'Barlow Condensed',sans-serif; letter-spacing:.06em; text-transform:uppercase; font-size:.78rem; }
.fmw-more a{ color:var(--bronze-bright) !important; font-weight:700; }
/* fn-jump must never behave like the fixed header nav */
.fn-jump{ position:static !important; top:auto !important; width:auto !important; z-index:auto !important; background:none !important; border:none !important; padding:0 clamp(22px,5vw,40px) !important; margin:clamp(24px,4vw,36px) auto 0 !important; }

/* ============ V27 MOBILE FIXES ============ */
/* Fix 1: hamburger gap — nav-links hide at 900px but toggle only appeared at 768px.
   Unify: toggle + mobile behavior for everything ≤900px. */
@media (max-width:900px){
  .nav-toggle{ display:block !important; }
  nav .nav-links{ display:none !important; }
  nav > div{ display:none !important; }
}
/* Fix 2: mobile menu taller than viewport with 10 links — make it scrollable */
.mobile-menu{ max-height:calc(100dvh - 150px); overflow-y:auto; -webkit-overflow-scrolling:touch; }
@supports not (height:100dvh){ .mobile-menu{ max-height:calc(100vh - 150px); } }
/* Fix 3: homepage hero headline hidden under fixed header on mobile
   (hero-left had 120px top padding; header bottom ≈133-140px) */
@media (max-width:900px){
  .hero-left{ padding-top:calc(var(--header-height,140px) + 28px) !important; }
}
/* ============ END V27 MOBILE FIXES ============ */

/* ============ V27 LIGHT EDITORIAL PASS ============
   Direction: black for conviction, cream for clarity, bronze for authority.
   Dark kept: heroes, CTA strips (.fn-cta-block), store band, podcast bands,
   qotw boxes, audio callouts, footer. Everything content-heavy goes cream/paper. */
:root{
  --warm-bg:#ebe0d0;
  --paper:#fffaf1;
  --soft-ink:#3b332b;
  --border-lt:rgba(82,61,43,.18);
  --card-shadow:0 18px 50px rgba(36,32,28,.10);
}

/* ---- Page shells ---- */
.article-page, .fn-page, .resources-page{ background:var(--cream-bg); color:var(--ink); }

/* ---- Section heads on light ---- */
:is(.fn-page,.resources-page,.article-page) .fn-section-title{ color:var(--ink); }
:is(.fn-page,.resources-page,.article-page) .fn-section-head p{ color:var(--soft-ink); }
:is(.fn-page,.resources-page,.article-page) .fn-section-label{ color:var(--bronze-dark); }
.everyday-head{ border-top-color:var(--border-lt); }
.everyday-head .fn-section-label{ color:var(--bronze-dark); }
.move-group-header h2{ color:var(--ink); }
.move-group-header p{ color:var(--soft-ink); }
.mg-move{ color:var(--bronze-dark); }

/* ---- Cards -> paper ---- */
.field-note-card, .most-read-card, .related-card, .resource-card, .tool-card,
.assess-card, .week-card, .who-card, .sh-card, .bp-step,
.challenge-list li, .group-list li{
  background:var(--paper); color:var(--ink);
  border-color:var(--border-lt); box-shadow:var(--card-shadow);
}
.everyday-card{ border-left:3px solid var(--bronze-bright); background:var(--paper); }
.most-read-card{ border-top:3px solid var(--bronze-bright); }
.field-note-card h3, .related-title, .resource-card h3, .tool-card h3,
.sh-card h3, .bp-body h3, .week-head h3, .home-fn-card h3{ color:var(--ink) !important; }
.field-note-card p, .resource-card p, .tool-card p, .assess-card p,
.week-row p, .sh-card p, .bp-body p, .challenge-list li, .group-list li,
.who-card{ color:var(--soft-ink) !important; }
.field-note-card .article-category, .related-card .article-category,
.sh-move, .assess-move{ color:var(--bronze-dark); }
.week-focus{ color:var(--soft-ink); }
.fs-followups, .fs-followups li{ color:var(--soft-ink); }
.fn-card-foot{ border-top-color:var(--border-lt); }
.fn-card-foot a, .rc-go, .sh-article, .bp-link, .fmw-read{ color:var(--bronze-dark) !important; }
.fn-card-foot a:hover, .sh-article:hover, .bp-link:hover, .fmw-read:hover{ color:#b7672f !important; }
.read-time, .related-read{ color:#7a6f60; }
.resource-note{ color:#7a6f60; }
.qotw-archive h3{ color:var(--bronze-dark); }
.qotw-archive ol{ color:var(--soft-ink); }

/* ---- Resources sections: cream / warm alternation ---- */
.resource-section{ background:var(--cream-bg); color:var(--ink); border-bottom-color:var(--border-lt); }
.resource-section.alt{ background:var(--warm-bg); }
.resource-head h2{ color:var(--ink); }
.resource-head p{ color:var(--soft-ink); }
.resource-head .fn-cta-eyebrow{ color:var(--bronze-dark); }
.fn-resources-section{ border-top-color:var(--border-lt); }
.chal-num{ color:var(--bronze-dark); }

/* ---- Article pages: dark hero, light reading body ---- */
.article-body{ background:var(--cream-bg); color:var(--ink); }
.article-body p, .article-body li{ color:var(--soft-ink); }
.article-body h2, .article-body h3{ color:var(--ink) !important; }
.reflection-box, .action-step, .steps-box{
  background:var(--paper); color:var(--ink);
  border:1px solid var(--border-lt); box-shadow:var(--card-shadow);
}
.action-step{ border-left:4px solid var(--bronze-bright); }
.reflection-box h3, .action-step h3{ color:var(--bronze-dark); }
.reflection-box li, .steps-list, .steps-list li{ color:var(--soft-ink); }
.steps-list strong{ color:var(--ink); }
.closing-charge{ color:var(--ink); border-top-color:var(--border-lt); }
.article-body a{ color:var(--bronze-dark) !important; text-decoration-color:rgba(138,77,34,.45); }
.article-related h3{ color:var(--bronze-dark); }
.article-cta{ border-top-color:var(--border-lt); }
.article-cta h2{ color:var(--ink); }
.article-cta > p{ color:var(--soft-ink); }
.article-cta .fn-cta-eyebrow{ color:var(--bronze-dark); }
.article-cta-sub{ color:#7a6f60; }
.article-cta-sub a{ color:var(--bronze-dark) !important; }
.article-meta .article-category{ color:#080808; background:var(--bronze-bright); } /* unchanged in hero */

/* ---- Jump pills on cream ---- */
.fn-jump a{ color:var(--ink) !important; border-color:rgba(138,77,34,.45); }
.fn-jump a:hover{ color:#fffaf1 !important; background:var(--bronze-dark); border-color:var(--bronze-dark); }

/* ---- Signup + Ask forms -> paper panels with light inputs ---- */
.fn-signup-inner{ background:var(--paper); border-color:var(--border-lt); box-shadow:var(--card-shadow); }
.fn-signup h3{ color:var(--ink); }
.fn-signup p{ color:var(--soft-ink); }
.fn-signup .fn-cta-eyebrow{ color:var(--bronze-dark); }
:is(.fn-page,.resources-page,.article-page) .fn-form label,
:is(.fn-page,.resources-page,.article-page) .fn-interests legend{ color:var(--bronze-dark); }
:is(.fn-page,.resources-page,.article-page) .fn-form input,
:is(.fn-page,.resources-page,.article-page) .fn-form select,
:is(.fn-page,.resources-page,.article-page) .fn-form textarea{
  background:#fffdf8; color:var(--ink); border:1px solid rgba(82,61,43,.22);
}
:is(.fn-page,.resources-page,.article-page) .fn-form input:focus,
:is(.fn-page,.resources-page,.article-page) .fn-form select:focus,
:is(.fn-page,.resources-page,.article-page) .fn-form textarea:focus{ border-color:var(--bronze-dark); }
:is(.fn-page,.resources-page,.article-page) .fn-check{ color:var(--soft-ink); }
:is(.fn-page,.resources-page,.article-page) .fn-check input{ accent-color:var(--bronze-dark); }

/* ---- Framework: alternating cream/warm move sections (hero stays dark) ---- */
.framework-move-section.dark-section{ background:var(--cream-bg) !important; color:var(--ink); border-bottom:1px solid var(--border-lt); }
#surrender.framework-move-section, #govern.framework-move-section, #lead.framework-move-section{ background:var(--warm-bg) !important; }
.framework-move-section .move-number{ color:var(--bronze-dark); }
.framework-move-section h2{ color:var(--ink) !important; }
.move-compelling-copy, .move-compelling-copy > p, .move-readmore-body p{ color:var(--soft-ink) !important; }
.move-readmore summary{ color:var(--bronze-dark); }
.move-card, .scripture-card{ box-shadow:var(--card-shadow); }

/* ---- Homepage: restore cream balance ---- */
.fmw-section.dark-section, .home-duo.dark-section{ background:var(--cream-bg) !important; color:var(--ink); border-top:1px solid var(--border-lt); }
.home-fn-preview.dark-section{ background:var(--warm-bg) !important; color:var(--ink); border-top:1px solid var(--border-lt); }
:is(.fmw-section,.home-fn-preview,.home-duo) .home-fn-title{ color:var(--ink); }
:is(.fmw-section,.home-fn-preview,.home-duo) .home-fn-copy{ color:var(--soft-ink); }
:is(.fmw-section,.home-fn-preview,.home-duo) .fn-eyebrow{ color:var(--bronze-dark); }
.fmw-card, .home-fn-card, .duo-card{ background:var(--paper); color:var(--ink); border-color:var(--border-lt); box-shadow:var(--card-shadow); }
.fmw-card h3, .duo-card h3{ color:var(--ink); }
.fmw-card p, .duo-card p, .home-card-copy{ color:var(--soft-ink) !important; }
.duo-card .fn-cta-eyebrow{ color:var(--bronze-dark); }
.home-fn-card .article-category{ color:var(--bronze-dark); }
.home-fn-signup{ color:#7a6f60; }
.home-fn-signup a, .fmw-more a{ color:var(--bronze-dark) !important; }

/* ---- Buttons & links in light contexts ---- */
:is(.article-page,.fn-page,.resources-page,.fmw-section,.home-fn-preview,.home-duo,.framework-move-section) .btn-secondary{
  color:var(--ink) !important; border-color:rgba(138,77,34,.7) !important;
}
/* Dark impact cards inside light pages keep light button text */
:is(.fn-cta-block,.qotw-box,.qotw-mini,.fn-podcast-inner,.audio-field-note,.fn-hero,.article-hero) .btn-secondary{
  color:#f5f2ed !important; border-color:rgba(196,122,60,.6) !important;
}

/* ---- Dark impact elements preserved (explicit, so they read as intentional) ---- */
.fn-cta-block, .fn-cta-final, .qotw-box, .qotw-mini, .fn-podcast-inner, .audio-field-note{
  /* keep existing dark backgrounds; ensure text stays bright */
}
.fn-cta-block p{ color:#d4cfc8; }
.fn-podcast-inner h3, .qotw-q{ color:#f5f2ed; }
.audio-field-note h2{ color:#f5f2ed; }
/* hub label pill keeps bronze fill (works on cream) */
@media (max-width:760px){
  .fn-jump{ gap:8px; }
}
/* ============ END V27 LIGHT PASS ============ */
/* V27 patch: framework Act callout + audio label on light pages */
.framework-move-section .move-act{ color:var(--soft-ink); background:rgba(138,77,34,.10); border-left:3px solid var(--bronze-dark); }
.framework-move-section .move-act .sr-label{ color:var(--bronze-dark); }
.audio-field-note .section-label{ font-family:'Barlow Condensed',sans-serif; font-size:.66rem; font-weight:800; letter-spacing:.18em; text-transform:uppercase; color:var(--bronze-soft); display:inline-block; margin-bottom:6px; }

/* ============ V28 FIXES ============ */
/* :visited links were inheriting body ink via the global `a,a:visited{color:inherit}`
   rule, turning visited mobile-menu and footer links near-invisible on dark. */
.mobile-menu a, .mobile-menu a:visited{ color:#d4cfc8 !important; }
.mobile-menu a.cta, .mobile-menu a.cta:visited{ color:#c47a3c !important; }
footer a, footer a:visited{ color:var(--muted-dark) !important; }
footer a:hover{ color:#f5f2ed !important; }
.btmf-topline a, .btmf-topline a:visited{ color:var(--bronze-bright) !important; }
/* slightly larger mobile header allowance so hero meta never clips */
@media (max-width:700px){ :root{ --header-height:150px; } }
/* Soft gate modal */
.soft-gate{ position:fixed; inset:0; z-index:500; display:flex; align-items:center; justify-content:center; padding:20px; }
.soft-gate[hidden]{ display:none; }
.soft-gate__backdrop{ position:absolute; inset:0; background:rgba(8,7,6,.72); backdrop-filter:blur(2px); }
.soft-gate__panel{ position:relative; max-width:480px; width:100%; background:var(--paper,#fffaf1); color:var(--ink,#15120f); border:1px solid rgba(82,61,43,.25); border-radius:18px; padding:clamp(26px,4vw,38px); box-shadow:0 30px 80px rgba(0,0,0,.5); }
.soft-gate__close{ position:absolute; top:10px; right:14px; background:none; border:none; font-size:1.7rem; line-height:1; color:#7a6f60; cursor:pointer; padding:6px; }
.soft-gate__panel .fn-cta-eyebrow{ color:var(--bronze-dark,#8a4d22); }
.soft-gate__panel h3{ font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:clamp(1.35rem,3vw,1.7rem); line-height:1.15; margin:6px 0 10px; color:var(--ink); }
.soft-gate__panel p{ color:var(--soft-ink,#3b332b); line-height:1.6; font-size:.96rem; margin:0 0 18px; }
.soft-gate__label{ display:block; font-family:'Barlow Condensed',sans-serif; font-weight:700; letter-spacing:.1em; text-transform:uppercase; font-size:.72rem; color:var(--bronze-dark,#8a4d22); margin-bottom:7px; }
.soft-gate__row{ display:flex; gap:10px; flex-wrap:wrap; }
.soft-gate__row input{ flex:1 1 200px; padding:13px 15px; background:#fffdf8; color:var(--ink); border:1px solid rgba(82,61,43,.25); border-radius:10px; font-family:'Barlow',sans-serif; font-size:1rem; }
.soft-gate__row input:focus{ outline:none; border-color:var(--bronze-dark,#8a4d22); }
.soft-gate__row .btn-primary{ flex-shrink:0; }
.soft-gate__skip{ display:inline-block; margin-top:16px; font-family:'Barlow Condensed',sans-serif; font-weight:700; letter-spacing:.06em; text-transform:uppercase; font-size:.76rem; color:var(--bronze-dark,#8a4d22) !important; }
.soft-gate__skip:hover{ color:#b7672f !important; }
@media (max-width:480px){ .soft-gate__row .btn-primary{ width:100%; } }
/* ============ END V28 ============ */

/* ============ V29 FORM + HEADER + SPACING FIXES ============ */

/* --- FIX 1: signup/ask form layout (the huge gap between First Name & Email) ---
   The flex-wrap row let the two fields wrap with stretched heights on mobile.
   Make it a clean responsive grid that stacks predictably with normal spacing. */
.fn-form .form-row{ display:grid !important; grid-template-columns:1fr 1fr; gap:18px; flex-wrap:initial; margin-bottom:18px; align-items:start; }
.fn-form .form-group{ flex:initial !important; display:flex; flex-direction:column; gap:8px; margin-bottom:0; min-width:0; }
@media (max-width:640px){ .fn-form .form-row{ grid-template-columns:1fr; gap:16px; } }
.fn-interests{ margin-top:4px; }

/* --- FIX 2: fixed header height is taller on mobile because the announce bar
   wraps to multiple lines. Raise the offset variable so nothing hides behind it. --- */
@media (max-width:900px){ :root{ --header-height:150px; } }
@media (max-width:560px){ :root{ --header-height:164px; } }
@media (max-width:380px){ :root{ --header-height:176px; } }

/* --- FIX 3: every page's first block must clear the fixed header on load.
   .page-hero already does; give the same guarantee to content pages whose first
   element is a plain section/main, and tighten the generic mobile section pad. --- */
.page-hero{ padding-top:calc(var(--header-height,150px) + 20px) !important; }
.fn-signup{ scroll-margin-top:var(--header-height); }

/* --- FIX 4: consistent vertical rhythm — kill doubled/awkward gaps ---
   fn-signup-inner padding was fine; ensure the eyebrow + heading sit tight. */
.fn-signup .fn-cta-eyebrow{ display:block; margin-bottom:8px; }
.fn-signup h3{ margin-top:0; }

/* --- FIX 5: announce bar shouldn't be so tall it eats the screen on small phones --- */
@media (max-width:560px){
  .btmf-topline{ padding:8px 12px; line-height:1.4; }
}
/* ============ END V29 ============ */

/* V29b: variable header-clearance spacer (was a fixed 96px div that broke on mobile) */
.header-spacer{ height:var(--header-height,150px); width:100%; }
/* homepage hero: clear the (taller on mobile) fixed header instead of a hardcoded 132px */
@media (max-width:900px){ .hero{ padding-top:calc(var(--header-height,150px) + 16px) !important; } }

/* ============ V30 UTILITY PAGE CONSISTENCY ============ */
/* nav anchors below the (measured) announce bar so a wrapping bar never overlaps the logo */
nav{ top:var(--announce-height,37px) !important; }

/* ---- shared utility shell ---- */
.utility-page{ background:var(--cream-bg); color:var(--ink); }
.utility-page form{ width:min(780px,100%); margin-inline:auto; }
.utility-page .form-group label{ color:var(--bronze-dark) !important; }
.utility-page .form-group input,
.utility-page .form-group select,
.utility-page .form-group textarea{ background:#fffdf8 !important; color:var(--ink) !important; border:1px solid rgba(82,61,43,.22) !important; border-radius:10px; }
.utility-page .form-group input::placeholder,
.utility-page .form-group textarea::placeholder{ color:#9a8d7c !important; }
.utility-page .form-group input:focus,
.utility-page .form-group select:focus,
.utility-page .form-group textarea:focus{ border-color:var(--bronze-dark) !important; }
.utility-page .form-actions{ display:flex; margin-top:22px; }
@media (max-width:720px){ .utility-page .form-actions .btn-primary, .utility-page .form-actions .btn-submit{ width:100%; } }

/* ---- thank-you: light, scannable download area ---- */
.thank-you-page .kicker{ color:var(--bronze-dark); }
.thank-you-page .kicker::before, .thank-you-page .kicker::after{ background:var(--bronze-dark); }
.thank-you-page h1{ color:var(--ink) !important; }
.thank-you-page .sub{ color:var(--soft-ink) !important; }
.thank-you-page .tool{ background:var(--paper); border:1px solid var(--border-lt); border-left:3px solid var(--bronze-bright); border-radius:14px; margin-bottom:14px; box-shadow:var(--card-shadow); }
.thank-you-page .tool-num{ color:#c9b29a; }
.thank-you-page .tool-title{ color:var(--ink); }
.thank-you-page .tool-desc{ color:var(--soft-ink); }
.thank-you-page .tool-desc a{ color:var(--bronze-dark) !important; }
.thank-you-page .dl{ color:var(--bronze-dark); border:1px solid rgba(122,78,42,.55); border-radius:8px; }
.thank-you-page .dl:hover{ background:var(--bronze-dark); color:#fffaf1; }
.thank-you-page .tool-featured, .thank-you-page .bonus{ background:var(--paper); border:2px solid rgba(122,78,42,.5); border-radius:18px; box-shadow:var(--card-shadow); }
.thank-you-page .tool-featured .tag, .thank-you-page .bonus .tag{ background:var(--bronze-dark); color:#fffaf1; border-radius:999px; }
/* white store badges need a dark chip on the light page */
.thank-you-page .store-badge{ background:#15110c; border-radius:10px; padding:8px 12px; display:inline-flex; }
.thank-you-page .cta-block{ color:var(--soft-ink); }

/* ---- free: lighten resources band, paper cards, clean checkbox grid ---- */
.free-page .resources{ background:var(--warm-bg); border-top:1px solid var(--border-lt); border-bottom:1px solid var(--border-lt); }
.free-page .resources .section-label{ color:var(--bronze-dark); }
.free-page .resource-card{ background:var(--paper); border:1px solid var(--border-lt); border-radius:16px; box-shadow:var(--card-shadow); }
.free-page .resource-card *{ color:var(--soft-ink); }
.free-page .resource-card h3, .free-page .resource-card strong, .free-page .resource-card .resource-title{ color:var(--ink) !important; }
.free-page .hero{ /* keep dark impact hero */ }
.free-page .signup{ background:var(--warm-bg); max-width:none; padding-left:24px; padding-right:24px; }
.free-page .signup form{ width:min(780px,100%); }
.free-page .signup h2, .free-page .signup .section-label{ color:var(--ink); }
.free-page .tool-selector{ display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:12px; text-align:left; }
.free-page .tool-selector label{ display:flex; align-items:center; gap:10px; background:var(--paper); border:1px solid var(--border-lt); border-radius:10px; padding:12px 14px; color:var(--soft-ink); }
.free-page .tool-selector input{ accent-color:var(--bronze-dark); width:auto !important; }
.free-page .fine-print{ color:#7a6f60; }

/* ---- 7-day reset: cream content, paper day cards ---- */
.reset-page .what{ background:var(--cream-bg); border-top:1px solid var(--border-lt); border-bottom:1px solid var(--border-lt); }
.reset-page .what h2, .reset-page .what-inner h2{ color:var(--ink) !important; }
.reset-page .what p{ color:var(--soft-ink) !important; }
.reset-page .day-item{ background:var(--paper); border:1px solid var(--border-lt); border-left:3px solid var(--bronze-bright); border-radius:14px; box-shadow:var(--card-shadow); }
.reset-page .day-num{ color:var(--bronze-dark); }
.reset-page .day-title{ color:var(--ink); }
.reset-page .day-item p, .reset-page .day-pillar{ color:var(--soft-ink); }
.reset-page .signup{ background:var(--warm-bg); }
.reset-page .signup h2{ color:var(--ink); }
.reset-page .signup p{ color:var(--soft-ink); }

/* ---- sample: stays the premium dark reader (intentional) ---- */
.sample-page{ background:#0b0b0b; color:#e8dfd4; }
.sample-page .sample-cta{ display:flex; flex-wrap:wrap; gap:14px; justify-content:center; }
/* ============ END V30 ============ */
/* V30 patch: thank-you ghost button + divider on light */
.thank-you-page .btn{ color:var(--bronze-dark); border-color:rgba(122,78,42,.55); }
.thank-you-page .btn:hover{ background:var(--bronze-dark); color:#fffaf1; }
.thank-you-page .cta-block{ border-top-color:var(--border-lt); }

/* ============ V32 SAMPLE PAGE EDITORIAL + UTILITY GLOBALS ============ */
/* Sample page: cream page, dark reader shell only */
.sample-page .sample-wrap{ padding-left:clamp(16px,4vw,24px); padding-right:clamp(16px,4vw,24px); }
.sample-reader-shell{ background:#0b0b0b; color:#e8dfd4; border-radius:22px; padding:clamp(28px,5vw,56px) clamp(18px,4vw,44px) clamp(34px,5vw,52px); box-shadow:0 26px 70px rgba(0,0,0,.4); border:1px solid #1c160f; }
.sample-reader-shell .sample-eyebrow{ color:var(--bronze-bright); }
.sample-reader-shell .sample-title{ color:#f5f2ed; }
.sample-reader-shell .sample-sub{ color:#c8c1b8; }

/* Shared utility section scaffolding (used by sample + book updates) */
.utility-section{ padding:clamp(48px,7vw,84px) clamp(20px,5vw,48px); }
.utility-section--cream{ background:var(--cream-bg); color:var(--ink); }
.utility-section--warm{ background:var(--warm-bg); color:var(--ink); }
.utility-section--dark{ background:#0d0b09; color:#e8dfd4; }
.paper-card{ background:var(--paper); color:var(--ink); border:1px solid var(--border-lt); border-radius:18px; box-shadow:var(--card-shadow); }
.paper-card h2, .paper-card h3{ color:var(--ink); }
.paper-card p{ color:var(--soft-ink); }
.utility-cta{ display:flex; flex-wrap:wrap; gap:14px; justify-content:center; margin-top:24px; }

/* Sample editorial + store cards */
.sample-editorial-section, .sample-store-section{ display:flex; justify-content:center; }
.sample-editorial-card, .sample-store-card{ max-width:760px; width:100%; padding:clamp(30px,4.5vw,52px); text-align:center; }
.sample-editorial-card .fn-cta-eyebrow, .sample-store-card .fn-cta-eyebrow{ color:var(--bronze-dark); }
.sample-editorial-card h2, .sample-store-card h2{ font-family:'Bebas Neue',sans-serif; text-transform:uppercase; letter-spacing:.02em; font-size:clamp(30px,4.4vw,46px); line-height:1.02; margin:6px 0 14px; color:var(--ink); }
.sample-editorial-card p{ font-size:1.05rem; line-height:1.7; max-width:560px; margin:0 auto; }
.sample-availability{ color:var(--soft-ink); font-size:.98rem; line-height:1.7; max-width:520px; margin:0 auto 22px; }
.sample-store-card .store-badges{ margin:0 auto; }
.sample-cta--light{ margin-top:24px; }
/* white store badge art on light card -> dark chip for contrast */
.sample-store-card .store-badge{ background:#15110c; border-radius:10px; padding:8px 12px; display:inline-flex; }

/* Book platform updates section (book + thank-you) */
.book-updates-section{ display:flex; justify-content:center; }
.book-updates-card{ max-width:680px; width:100%; padding:clamp(28px,4vw,44px); text-align:center; }
.book-updates-card .fn-cta-eyebrow{ color:var(--bronze-dark); }
.book-updates-card h2{ font-family:'Bebas Neue',sans-serif; text-transform:uppercase; letter-spacing:.02em; font-size:clamp(28px,4vw,42px); margin:6px 0 12px; color:var(--ink); }
.book-updates-card p{ color:var(--soft-ink); max-width:520px; margin:0 auto 22px; line-height:1.65; }
.bu-label{ display:block; font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.1em; text-transform:uppercase; font-size:.72rem; color:var(--bronze-dark); margin-bottom:8px; text-align:left; }
.bu-inline{ display:flex; gap:10px; flex-wrap:wrap; }
.bu-inline input{ flex:1 1 220px; padding:13px 15px; background:#fffdf8; color:var(--ink); border:1px solid rgba(82,61,43,.25); border-radius:10px; font-family:'Barlow',sans-serif; font-size:1rem; }
.bu-inline input:focus{ outline:none; border-color:var(--bronze-dark); }
.book-updates-form{ width:min(520px,100%); margin-inline:auto; }
@media (max-width:520px){ .bu-inline .btn-primary{ width:100%; } }

/* Bronze text-link contrast guarantee on light utility/editorial areas */
.sample-editorial-section a:not(.btn-primary):not(.btn-secondary):not(.store-badge),
.sample-store-section a:not(.btn-primary):not(.btn-secondary):not(.store-badge),
.book-updates-section a:not(.btn-primary):not(.btn-secondary){ color:var(--bronze-dark) !important; font-weight:800; text-decoration-color:rgba(122,78,42,.45); }
/* ============ END V32 ============ */

/* ============ V33 EMAIL CAPTURE SYSTEM ============ */
.optin-section{ display:flex; justify-content:center; padding:clamp(44px,6vw,76px) clamp(20px,5vw,48px); }
.optin-section--cream{ background:var(--cream-bg); color:var(--ink); }
.optin-section--warm{ background:var(--warm-bg); color:var(--ink); }
.optin-panel{ background:var(--paper); color:var(--ink); border:1px solid var(--border-lt); border-radius:18px; box-shadow:var(--card-shadow); padding:clamp(26px,4vw,44px); max-width:720px; width:100%; }
.optin-panel .fn-cta-eyebrow{ color:var(--bronze-dark); display:block; margin-bottom:6px; }
.optin-panel h2{ font-family:'Bebas Neue',sans-serif; text-transform:uppercase; letter-spacing:.02em; font-size:clamp(28px,4vw,42px); line-height:1.04; margin:0 0 12px; color:var(--ink); }
.optin-panel > p{ color:var(--soft-ink); line-height:1.65; margin:0 0 22px; }
.optin-form .form-row{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin-bottom:16px; }
.optin-form .form-group{ display:flex; flex-direction:column; gap:8px; min-width:0; }
.optin-form .optin-full{ grid-column:1 / -1; }
.optin-form label{ font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.1em; text-transform:uppercase; font-size:.72rem; color:var(--bronze-dark); }
.optin-form input, .optin-form select{ width:100%; box-sizing:border-box; padding:13px 15px; background:#fffdf8; color:var(--ink); border:1px solid rgba(82,61,43,.22); border-radius:10px; font-family:'Barlow',sans-serif; font-size:1rem; }
.optin-form input::placeholder{ color:#9a8d7c; }
.optin-form input:focus, .optin-form select:focus{ outline:none; border-color:var(--bronze-dark); }
.optin-checkboxes-wrap{ border:none; padding:0; margin:0 0 18px; }
.optin-checkboxes-wrap legend{ font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.1em; text-transform:uppercase; font-size:.72rem; color:var(--bronze-dark); margin-bottom:12px; padding:0; }
.optin-checkboxes{ display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:10px; }
.optin-check{ display:flex; align-items:center; gap:10px; background:#fffdf8; border:1px solid var(--border-lt); border-radius:10px; padding:11px 13px; font-family:'Barlow',sans-serif; font-size:.92rem; color:var(--soft-ink); cursor:pointer; }
.optin-check input{ width:auto !important; accent-color:var(--bronze-dark); flex-shrink:0; }
.optin-form .form-actions{ display:flex; margin-top:6px; }
@media (max-width:720px){
  .optin-form .form-row{ grid-template-columns:1fr; }
  .optin-form .form-actions .btn-primary, .optin-form button{ width:100%; }
  .optin-checkboxes{ grid-template-columns:1fr; }
}
/* ============ END V33 ============ */
/* Audiobook waitlist CTA inside dark article audio block */
.audio-field-note__cta{ display:inline-block; margin-top:14px; color:#f0d9c2 !important; border:1px solid rgba(196,122,60,.6) !important; }
.audio-field-note__cta:hover{ background:var(--bronze-bright); color:#080808 !important; }
/* thank-you next-step grid */
.ty-step-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:16px; }
.ty-step{ display:block; padding:22px 24px; text-decoration:none; transition:transform .15s ease, box-shadow .15s ease; }
.ty-step:hover{ transform:translateY(-2px); }
.ty-step h3{ font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.04em; text-transform:uppercase; font-size:1.05rem; color:var(--ink); margin:0 0 6px; }
.ty-step p{ color:var(--soft-ink); font-size:.92rem; line-height:1.55; margin:0; }
.ty-step--muted{ opacity:.85; cursor:default; }
.ty-step--muted:hover{ transform:none; }
/* V34: homepage compact Reader Bonus Kit CTA card */
.home-rbk-cta{ padding-top:clamp(40px,5vw,64px); padding-bottom:clamp(40px,5vw,64px); }
.home-rbk-card{ max-width:760px; width:100%; padding:clamp(28px,4vw,46px); text-align:center; }
.home-rbk-card .fn-cta-eyebrow{ color:var(--bronze-dark); display:block; margin-bottom:6px; }
.home-rbk-card h2{ font-family:'Bebas Neue',sans-serif; text-transform:uppercase; letter-spacing:.02em; font-size:clamp(28px,4vw,44px); line-height:1.04; margin:0 0 12px; color:var(--ink); }
.home-rbk-card p{ color:var(--soft-ink); line-height:1.65; max-width:600px; margin:0 auto; }
/* V35: compact Google Play notify link under disabled store label */
.store-notify-link{ display:inline-block; margin-top:8px; font-family:'Barlow Condensed',sans-serif; font-weight:700; letter-spacing:.05em; text-transform:uppercase; font-size:.72rem; color:var(--bronze-dark) !important; text-decoration-color:rgba(122,78,42,.45); }
.store-notify-link:hover{ color:#b7672f !important; }

/* ============ V36 HERO HEIGHT + MOBILE HEADER FIXES ============ */
/* Desktop homepage hero: was min-height clamp(600px,88vh,900px) + ~210px padding,
   pushing it taller than the viewport so the next section's CTA fell below the fold.
   Also the padding referenced an undefined --header-h (always fell back to 150px).
   Fix: use the real measured --header-height and size the hero so hero+header <= 100vh. */
.hero.animated-hero{
  min-height:min(760px, calc(100svh - var(--header-height,150px)));
  padding-top:calc(var(--header-height,150px) + clamp(20px,3vh,40px));
  padding-bottom:clamp(36px,5vh,64px);
}
@supports not (height:100svh){
  .hero.animated-hero{ min-height:min(760px, calc(100vh - var(--header-height,150px))); }
}

/* Mobile: page could scroll content above the fixed header / show a sliver above it.
   Anchor the fixed announce bar + nav hard to the top and lock the body from
   over-scrolling above them. */
.btmf-topline{ top:0 !important; }
@media (max-width:900px){
  .hero.animated-hero{
    min-height:auto;
    padding-top:calc(var(--header-height,150px) + 12px) !important;
    padding-bottom:44px;
  }
  /* prevent the rubber-band reveal of empty space above the fixed header on iOS */
  html, body{ overscroll-behavior-y:none; }
}
/* ============ END V36 ============ */
/* V36b: solid mobile header backdrop so nothing shows between/above announce + nav */
@media (max-width:900px){
  nav{ background:#0b0b0b !important; }
}

/* ============ V37 THE SIXTY-SIX (supporting faith resource) ============ */
.related-faith-tool{ background:var(--warm-bg); color:var(--ink); }
.sixtysix-card{ display:flex; gap:clamp(18px,3vw,30px); align-items:center; max-width:760px; margin:0 auto; padding:clamp(24px,3.5vw,40px); text-align:left; }
.sixtysix-logo{ width:clamp(84px,12vw,120px); height:auto; flex-shrink:0; border-radius:14px; background:#0b0b0b; padding:8px; }
.sixtysix-body{ flex:1; min-width:0; }
.sixtysix-body .fn-cta-eyebrow{ color:var(--bronze-dark); display:block; margin-bottom:6px; }
.sixtysix-body h2{ font-family:'Bebas Neue',sans-serif; text-transform:uppercase; letter-spacing:.02em; font-size:clamp(26px,3.6vw,40px); line-height:1.05; margin:0 0 12px; color:var(--ink); }
.sixtysix-body p{ color:var(--soft-ink); line-height:1.65; margin:0 0 18px; }
.sixtysix-section{ padding-top:clamp(36px,4vw,56px); padding-bottom:clamp(36px,4vw,56px); }
/* article inline related-faith block */
.related-faith-block{ background:var(--paper); border:1px solid var(--border-lt); border-left:4px solid var(--bronze-bright); border-radius:14px; box-shadow:var(--card-shadow); padding:clamp(22px,3vw,30px); margin:clamp(28px,4vw,40px) 0; }
.related-faith-block .fn-cta-eyebrow{ color:var(--bronze-dark); display:block; margin-bottom:8px; }
.related-faith-block p{ color:var(--soft-ink); line-height:1.6; margin:0 0 16px; }
/* footer link — modest, never blue/purple */
.footer-extra-link, .footer-extra-link:visited{ color:var(--muted-dark) !important; text-decoration:none; }
.footer-extra-link:hover{ color:#f5f2ed !important; }
@media (max-width:600px){ .sixtysix-card{ flex-direction:column; text-align:center; } .sixtysix-body{ text-align:center; } }
/* ============ END V37 ============ */

/* ============ V38 ALSO BY O. B. LEVY (secondary book ecosystem) ============ */
.also-by-author{ background:var(--cream-bg); color:var(--ink); }
.also-by-author.optin-section--warm{ background:var(--warm-bg); }
.also-inner{ max-width:920px; margin:0 auto; width:100%; text-align:center; }
.also-by-author .fn-cta-eyebrow{ color:var(--bronze-dark); display:block; margin-bottom:6px; }
.also-by-author h2{ font-family:'Bebas Neue',sans-serif; text-transform:uppercase; letter-spacing:.02em; font-size:clamp(26px,3.8vw,42px); line-height:1.05; margin:0 0 12px; color:var(--ink); }
.also-intro{ color:var(--soft-ink); line-height:1.65; max-width:640px; margin:0 auto 28px; }
.also-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(16px,3vw,28px); margin-top:8px; }
.also-card{ display:flex; gap:18px; align-items:center; text-align:left; padding:clamp(18px,2.6vw,26px); }
.also-cover{ width:clamp(74px,10vw,96px); height:auto; border-radius:8px; border:1px solid var(--border-lt); box-shadow:0 10px 26px rgba(36,32,28,.16); flex-shrink:0; }
.also-body{ flex:1; min-width:0; }
.also-body h3{ font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.02em; text-transform:uppercase; font-size:1.12rem; color:var(--ink); margin:0 0 8px; line-height:1.1; }
.also-body p{ color:var(--soft-ink); line-height:1.55; font-size:.92rem; margin:0 0 14px; }
.also-grid--compact .also-card{ align-items:center; }
@media (max-width:700px){
  .also-grid{ grid-template-columns:1fr; }
}
/* ============ END V38 ============ */

/* ============ V39 HERO FIT-TO-VIEWPORT ============ */
/* The hero's height was driven by its content (the stacked wordmark + subtitle +
   buttons), which on short/laptop viewports overflowed below the fold. Cap the
   wordmark using viewport-HEIGHT so the whole hero fits in one screen. */
.hero.animated-hero{
  min-height:auto;                       /* let content + padding define height, capped below */
  max-height:none;
  padding-top:calc(var(--header-height,150px) + clamp(14px,2.2vh,30px));
  padding-bottom:clamp(24px,3.5vh,52px);
  justify-content:flex-start;
}
.hero-animation-wrap{ width:min(980px, calc(100% - 36px)); }
/* Scale the wordmark by the SMALLER of width-based and height-based limits */
.hero-build, .hero-first{ width:min(58%, 360px, 30vh); }
.hero-man-wrap{ width:min(74%, 460px, 40vh); }
.hero-word-stack{ gap:clamp(4px,0.8vh,11px); }
.hero-moves-headline{ margin-bottom:clamp(12px,2vh,26px); }
.hero-subtitle{ margin-top:clamp(16px,2.4vh,30px); font-size:clamp(.95rem,1.5vw,1.15rem); }
.hero-actions{ margin-top:clamp(18px,2.4vh,28px); }
.hero-store-label{ margin-top:clamp(10px,1.6vh,18px); }

/* Short laptop screens (e.g. 13" MacBook ~800px tall): tighten further so the
   buttons + "now available" line clear the fold. */
@media (min-width:901px) and (max-height:860px){
  .hero-build, .hero-first{ width:min(46%, 300px, 26vh); }
  .hero-man-wrap{ width:min(60%, 380px, 34vh); }
  .hero-moves-headline{ font-size:clamp(.66rem,1.2vw,.92rem); margin-bottom:clamp(8px,1.4vh,16px); }
  .hero-subtitle{ margin-top:clamp(12px,1.8vh,22px); }
}
/* ============ END V39 ============ */
/* V39b: dual store buttons on Also-by book cards */
.also-buttons{ display:flex; flex-wrap:wrap; gap:10px; }
.also-buttons .btn-secondary{ font-size:.72rem; padding:10px 16px; }
.also-grid--compact .also-buttons{ gap:8px; }

/* ============ V40 ALSO-BY STORE BADGES (real Amazon/Apple logos) ============ */
/* White badge art sits on a dark chip so it reads on the cream/paper book cards. */
.also-badges{ display:inline-flex; flex-wrap:wrap; gap:10px; align-items:center; padding:0; background:none; border:none; justify-content:flex-start; }
.also-badges .store-badge{ background:#15110c; border:1px solid rgba(196,122,60,.28); border-radius:10px; padding:8px 14px; display:inline-flex; align-items:center; line-height:0; transition:transform .15s ease, border-color .15s ease; }
.also-badges .store-badge:hover{ transform:translateY(-2px); border-color:rgba(196,122,60,.6); }
.also-badges .store-badge img{ height:30px; width:auto; display:block; }
.also-grid--compact .also-badges{ justify-content:flex-start; }
@media (max-width:520px){ .also-badges .store-badge img{ height:26px; } }
/* ============ END V40 ============ */

/* ============ V41 ALSO-BY CARDS: bigger, image-left, expandable ============ */
.also-grid{ grid-template-columns:1fr; gap:clamp(20px,3vw,32px); max-width:760px; margin:8px auto 0; }
.also-card{ display:grid; grid-template-columns:auto 1fr; gap:clamp(20px,3vw,34px); align-items:start; text-align:left; padding:clamp(24px,3.4vw,38px); }
.also-cover{ width:clamp(130px,18vw,180px); height:auto; border-radius:10px; border:1px solid var(--border-lt); box-shadow:0 14px 36px rgba(36,32,28,.20); }
.also-body{ min-width:0; }
.also-body h3{ font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.02em; text-transform:uppercase; font-size:clamp(1.3rem,2.4vw,1.7rem); color:var(--ink); margin:0 0 10px; line-height:1.08; }
.also-short{ color:var(--soft-ink); line-height:1.6; font-size:.96rem; margin:0 0 18px; }
/* compact variant (resources/thank-you) keeps the short line too now */
.also-badges{ margin-bottom:16px; }
/* expandable description */
.also-desc{ margin-top:14px; }
.also-desc p{ color:var(--soft-ink); line-height:1.66; margin:0 0 12px; font-size:.94rem; }
.also-desc ul{ margin:0 0 12px; padding-left:20px; color:var(--soft-ink); }
.also-desc li{ color:var(--soft-ink); line-height:1.55; margin-bottom:6px; font-size:.92rem; }
@media (max-width:560px){
  .also-card{ grid-template-columns:1fr; justify-items:start; text-align:left; }
  .also-cover{ width:clamp(140px,42vw,180px); justify-self:center; }
  .also-badges{ justify-content:flex-start; }
}
/* ============ END V41 ============ */

/* ============ V43 ALSO-DESC EXPLICIT TOGGLE (guarantee expand works) ============ */
.also-desc{ display:block; }
/* ============ END V43 ============ */
/* V44: always-visible book descriptions */
.also-desc{ border-top:1px solid var(--border-lt); padding-top:16px; margin-top:4px; }
.also-desc p{ color:var(--soft-ink); line-height:1.66; margin:0 0 12px; font-size:.94rem; }
.also-desc p:last-child{ margin-bottom:0; }
.also-desc ul{ margin:0 0 12px; padding-left:20px; }
.also-desc li{ color:var(--soft-ink); line-height:1.55; margin-bottom:6px; font-size:.92rem; }

/* ============ V47 BOOK DESC READ-MORE ============ */
.also-more[hidden]{ display:none; }
.also-more{ margin-top:12px; }
.also-readmore{ margin-top:12px; background:none; border:none; cursor:pointer; padding:4px 0; font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.1em; text-transform:uppercase; font-size:.74rem; color:var(--bronze-dark); display:inline-flex; align-items:center; gap:8px; }
.also-readmore::after{ content:'+'; font-size:1.1rem; line-height:1; }
.also-readmore[aria-expanded="true"]::after{ content:'\2212'; }
.also-readmore:hover{ color:#b7672f; }
/* ============ END V47 ============ */

/* ============ V49 MOBILE ANCHOR/HEADER OVERLAP FIX ============ */
/* The .hub-label pills sit OUTSIDE the section[id] they precede, so anchor jumps
   (and iOS scroll restoration) left them with no header clearance and they slid
   above the fixed header. Give scroll clearance to the pills and section heads. */
.hub-label{ scroll-margin-top:calc(var(--header-height,158px) + 12px); }
.resource-section, .resource-head{ scroll-margin-top:calc(var(--header-height,158px) + 12px); }
/* Global: ensure every anchor jump clears the measured header (belt + suspenders) */
html{ scroll-padding-top:calc(var(--header-height,158px) + 8px); }
:where([id]){ scroll-margin-top:calc(var(--header-height,158px) + 8px); }
/* ============ END V49 ============ */





/* V52: Platform footer column flows into 2 sub-columns to cut footer height */
.footer-col--platform ul{ columns:2; column-gap:32px; }
.footer-col--platform ul li{ break-inside:avoid; }
@media (max-width:560px){ .footer-col--platform ul{ columns:2; column-gap:20px; } }

/* V53: Podcast date badge moved below artwork so it never covers branding */
.art-badge--below{
  position:static; display:inline-flex; margin:14px auto 0;
  top:auto; right:auto; left:auto;
  background:#080808; border:1px solid var(--gold); color:var(--gold);
  align-self:center;
}
.podcast-art{ display:flex; flex-direction:column; align-items:center; }
@media (max-width:768px){
  .art-badge--below{ font-size:0.7rem; letter-spacing:0.2em; padding:7px 12px; }
}

/* ============ V53 MOBILE HEADER SAFE-AREA + SCROLL CLEARANCE ============ */
/* iPhone safe-area: keep the announce bar clear of the notch/status area
   without adding desktop spacing (env() is 0 on non-notched/desktop). */
.btmf-topline{ padding-top:calc(8px + env(safe-area-inset-top, 0px)); }
/* Heroes/sections get scroll clearance so anchor jumps + restoration land below
   the fixed header on mobile. Does NOT alter overflow or page scroll height. */
@media (max-width:768px){
  .page-hero, .fn-hero, .hero, .podcast, section[id]{
    scroll-margin-top:calc(var(--header-height,158px) + 12px);
  }
}
/* ============ END V53 ============ */



/* ============ V55 iPHONE SAFE-AREA HARD FIX ============ */
/* viewport-fit=cover (added to all pages) extends the canvas under the iPhone
   status bar; theme-color meta tells Safari to paint its chrome brand-dark
   instead of sampling hero artwork. The cover below paints the safe-area strip
   itself so NOTHING can show behind the status area. Dedicated element — the
   body::before slot belongs to the grain overlay and must not be reused. */
.safe-top-cover{ display:none; }
@media (max-width:900px){
  .safe-top-cover{
    display:block; position:fixed; top:0; left:0; right:0;
    height:env(safe-area-inset-top, 0px);   /* 0 on non-notched: invisible, covers nothing */
    background:#120a02; z-index:10000; pointer-events:none;
  }
  /* Solid header stack: explicit background-color beneath the announce gradient */
  .btmf-topline{ background-color:#120a02 !important; }
  nav{ background-color:#0b0b0b !important; }
  /* Hero bleed prevention: nothing may pull the first sections upward */
  .hero, .page-hero, .fn-hero, .podcast, main > section:first-of-type{
    margin-top:0 !important;
  }
}
/* ============ END V55 ============ */

/* ============ V57 MOBILE: FIXED HEADER RESTORED (Safari-safe) ============ */
/* position:sticky silently fails in Safari when html/body have overflow-x:hidden
   (long-standing WebKit bug) — so mobile returns to the original position:fixed
   header with padding clearance, which iOS pins reliably. The V55 safe-area trio
   (viewport-fit=cover + painted inset cover + theme-color) remains the cure for
   status-bar bleed. Dark root background keeps the rubber-band area on-brand. */
@media (max-width:900px){
  html{ background:#120a02; }
}
/* ============ END V57 ============ */

/* ============ V58 iOS LAYOUT-VIEWPORT FIX (root cause) ============ */
/* .hero-bg uses inset:-2% for the slow-zoom effect but .hero never clipped it.
   The overflowing layer silently WIDENS iOS Safari's layout viewport (iOS
   ignores root overflow-x:hidden for this), which detaches the fixed header
   during scroll — hero artwork then appears above the header / in the status
   area. Clip at the source + guard all content containers on mobile. */
.hero{ overflow:hidden; }
@media (max-width:900px){
  main, footer, .page-hero, .fn-hero, .podcast{ overflow-x:clip; }
}
/* ============ END V58 ============ */
/* V58b: 96px hero h1 overflowed 390px screens (the other iOS viewport-widener) */
@media (max-width:600px){
  section.hero h1{ font-size:clamp(2.2rem, 11vw, 3.6rem); line-height:1.02; }
}

/* ============ V60 iOS AUTO-ZOOM KILL (measured root cause) ============ */
/* Form fields computed at 14.4px — under iOS Safari's 16px focus-zoom
   threshold. Safari zooms on field focus and often stays zoomed after blur,
   leaving the visual viewport panned/scaled so content renders above the
   fixed header (at rest and during scroll). 16px on all fields is the
   documented threshold that prevents the zoom entirely. */
@media (max-width:900px){
  input:not([type=checkbox]):not([type=radio]), select, textarea{
    font-size:16px !important;
  }
}
/* ============ END V60 ============ */

/* ============ V62a BTN-SECONDARY ON LIGHT SURFACES (visible text) ============ */
/* The unified button system styles .btn-secondary cream (#f5f2ed) for dark
   sections; .btn-ghost received a light-surface override but .btn-secondary
   never did — cream-on-cream text was invisible (e.g. Explore Resources on the
   Reader Bonus Kit card). Mirror the ghost override for all light contexts. */
.light-section .btn-secondary, .warm-section .btn-secondary, .paper-section .btn-secondary,
.warm-panel .btn-secondary, .book-free-callout .btn-secondary,
.optin-section--cream .btn-secondary, .paper-card .btn-secondary,
.home-rbk-card .btn-secondary, .fn-cta-card .btn-secondary, .tool-card .btn-secondary,
.fn-cta-block:not(.fn-cta-final) .btn-secondary, .fn-hero .btn-secondary, .qotw-box .btn-secondary{
  color:var(--ink) !important; border-color:rgba(122,78,42,.55) !important;
  background:rgba(82,61,43,.04) !important;
}
.light-section .btn-secondary:hover, .warm-section .btn-secondary:hover, .paper-section .btn-secondary:hover,
.warm-panel .btn-secondary:hover, .book-free-callout .btn-secondary:hover,
.optin-section--cream .btn-secondary:hover, .paper-card .btn-secondary:hover,
.home-rbk-card .btn-secondary:hover, .fn-cta-card .btn-secondary:hover, .tool-card .btn-secondary:hover,
.fn-cta-block:not(.fn-cta-final) .btn-secondary:hover, .fn-hero .btn-secondary:hover, .qotw-box .btn-secondary:hover{
  color:var(--bronze-dark) !important; border-color:var(--bronze) !important;
  background:rgba(196,122,60,.10) !important;
}
/* ============ END V62a ============ */
/* V62c: explicit utility for buttons on light surfaces in otherwise-dark-classed sections */
.btn-on-light.btn-secondary{ color:var(--ink) !important; border-color:rgba(122,78,42,.55) !important; background:rgba(82,61,43,.04) !important; }
.btn-on-light.btn-secondary:hover{ color:var(--bronze-dark) !important; border-color:var(--bronze) !important; background:rgba(196,122,60,.10) !important; }
/* V62d: measured-contrast utilities (highest specificity, applied per-instance) */
a.btn-secondary.btn-on-light.btn-on-light.btn-on-light, button.btn-secondary.btn-on-light.btn-on-light.btn-on-light{ color:var(--ink) !important; border-color:rgba(122,78,42,.55) !important; background:rgba(82,61,43,.04) !important; }
a.btn-secondary.btn-on-light.btn-on-light.btn-on-light:hover{ color:var(--bronze-dark) !important; border-color:var(--bronze) !important; background:rgba(196,122,60,.10) !important; }
a.btn-secondary.btn-on-dark.btn-on-dark.btn-on-dark, button.btn-secondary.btn-on-dark.btn-on-dark.btn-on-dark{ color:#f5f2ed !important; border-color:rgba(196,122,60,.7) !important; background:rgba(255,255,255,.03) !important; }
a.btn-secondary.btn-on-dark.btn-on-dark.btn-on-dark:hover{ color:#fff !important; border-color:var(--bronze) !important; background:rgba(196,122,60,.16) !important; }

/* V65: live audio Field Note player styling */
.audio-field-note--live .audio-field-note__player{ width:100%; margin-top:18px; height:42px; border-radius:999px; outline:none; }
.audio-field-note--live .audio-field-note__duration{ margin-top:14px; }

/* V66: "Listen" audio badge on Field Note cards that have live audio */
.fn-card-foot{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.audio-badge{ display:inline-flex; align-items:center; gap:5px; font-family:'Barlow Condensed',sans-serif; font-weight:800; letter-spacing:.1em; text-transform:uppercase; font-size:.66rem; color:#c47a3c; border:1px solid rgba(196,122,60,.45); border-radius:999px; padding:3px 9px 3px 8px; line-height:1; }
.audio-badge svg{ display:block; }

/* V67: Listen badge is now a link — add interactive affordance */
a.audio-badge{ text-decoration:none; transition:background .15s ease, color .15s ease, border-color .15s ease; }
a.audio-badge:hover{ background:#c47a3c; color:#0b0b0b; border-color:#c47a3c; }
