

/* ══════════════════════════════════════════
   DESIGN TOKENS — Official OYM palette
══════════════════════════════════════════ */
:root {
  --page:    #F9F9F9;
  --white:   #FFFFFF;
  --ink:     #1A3E5F;
  --body:    #222222;
  --quiet:   #4D6170;
  --faint:   #8A9BAA;
  --teal:    #1A7A6E;
  --teal-dk: #146158;
  --teal-lt: #EAF4FB;
  --teal-hi: #5ECDC2;  /* brighter teal for dark backgrounds */
  --navy:    #1A3E5F;
  --navy-dk: #0D1F30;  /* hero / dark section background */
  --accent:  #2E6FA3;
  --rule:    #D8E4ED;
  --rule-lt: #E6EFF5;
  --max:     1080px;
  --col:     640px;
}

/* ══════════════════════════════════════════
   RESET
══════════════════════════════════════════ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{
  font-family:'Inter',system-ui,sans-serif;
  background:var(--page);color:var(--body);
  font-size:17px;line-height:1.7;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
a{text-decoration:none;color:inherit;}
img{display:block;max-width:100%;}

/* ══════════════════════════════════════════
   TYPOGRAPHY
══════════════════════════════════════════ */
.eyebrow{
  display:block;
  font-size:11px;font-weight:600;
  letter-spacing:.16em;text-transform:uppercase;
  color:var(--teal);margin-bottom:14px;
}
.eyebrow--center{display:flex;justify-content:center;}
.eyebrow--light{color:rgba(94,205,194,.80);}

/* ══════════════════════════════════════════
   BUTTONS
══════════════════════════════════════════ */
.btn{
  display:inline-flex;align-items:center;gap:8px;
  font-family:'Inter',sans-serif;
  font-size:14.5px;font-weight:600;
  padding:13px 28px;border-radius:6px;
  letter-spacing:.01em;
  transition:background .18s,color .18s,border-color .18s;
  cursor:pointer;white-space:nowrap;
}
.btn--fill{background:var(--teal);color:#fff;}
.btn--fill:hover{background:var(--teal-dk);}
.btn--outline{
  background:transparent;color:var(--body);
  border:1.5px solid var(--rule);
}
.btn--outline:hover{border-color:var(--accent);color:var(--ink);}
.btn--ghost-dark{
  background:transparent;
  color:rgba(200,216,232,.88);
  border:1.5px solid rgba(200,216,232,.32);
}
.btn--ghost-dark:hover{
  border-color:rgba(200,216,232,.56);
  color:#fff;
  background:rgba(255,255,255,.05);
}
.btn--white{
  background:#fff;color:var(--teal);
  font-weight:700;
}
.btn--white:hover{background:rgba(255,255,255,.92);}
.btn--outline-white{
  background:transparent;color:#fff;
  border:1.5px solid rgba(255,255,255,.44);
  font-weight:600;
}
.btn--outline-white:hover{
  border-color:rgba(255,255,255,.68);
  background:rgba(255,255,255,.06);
}
.text-link{
  display:inline-flex;align-items:center;gap:5px;
  font-size:14px;font-weight:600;color:var(--teal);
  border-bottom:1px solid transparent;
  transition:border-color .15s,gap .15s;
}
.text-link:hover{border-color:var(--teal);gap:8px;}
.text-link::after{content:'\2192';}

/* ══════════════════════════════════════════
   ① HEADER — sticky frosted, identical to subpages
══════════════════════════════════════════ */
.site-header{
  position:sticky;top:0;z-index:100;
  background:rgba(249,249,249,.95);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid var(--rule);
}
.header-inner{
  max-width:var(--max);margin:0 auto;padding:0 48px;
  height:64px;
  display:flex;align-items:center;justify-content:space-between;gap:24px;
}
.site-logo{
  font-family:'Playfair Display',serif;
  font-size:17.5px;font-weight:800;
  color:var(--ink);letter-spacing:-.02em;flex-shrink:0;
}
.site-logo em{color:var(--teal);font-style:normal;}
.nav-links{display:flex;align-items:center;gap:2px;list-style:none;}
.nav-links a{
  font-size:13.5px;font-weight:500;color:var(--quiet);
  padding:6px 13px;border-radius:5px;transition:color .15s;
}
.nav-links a:hover{color:var(--ink);}
.nav-links a.cur{color:var(--ink);font-weight:600;}
.header-cta{
  font-size:13px;font-weight:600;padding:9px 22px;border-radius:5px;
  background:var(--teal);color:#fff;
  transition:background .16s;flex-shrink:0;
}
.header-cta:hover{background:var(--teal-dk);}



/* =========================================================================
   PAGE SPECIFIC CSS — HOME
   ========================================================================= */
/* ══════════════════════════════════════════
   ② HERO
 — dark navy, value-proposition first
══════════════════════════════════════════ */
.hero-wrap{background:var(--navy-dk);}
.hero{
  max-width:var(--max);margin:0 auto;padding:96px 48px 88px;
  display:grid;
  grid-template-columns:1fr 460px;
  gap:60px;align-items:center;
}

/* Text column */
.hero-eyebrow{
  font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  color:rgba(94,205,194,.88);display:block;margin-bottom:22px;
}
.hero-headline{
  font-family:'Playfair Display',serif;
  font-size:clamp(38px,4.8vw,62px);
  font-weight:800;color:#fff;
  letter-spacing:-.034em;line-height:1.07;
  margin-bottom:26px;
}
.hero-headline em{
  font-style:italic;color:var(--teal-hi);
}
.hero-sub{
  font-size:17.5px;
  color:rgba(200,216,232,.86);
  line-height:1.76;
  margin-bottom:40px;max-width:460px;
}
.hero-ctas{
  display:flex;align-items:center;gap:14px;flex-wrap:wrap;
}

/* Book visual column — same elaborate CSS as current */
.hero-book-col{
  display:flex;flex-direction:column;
  align-items:center;gap:16px;
  position:relative;
}
.hero-book-col::before{
  content:'';position:absolute;
  top:50%;left:50%;transform:translate(-50%,-46%);
  width:540px;height:540px;border-radius:50%;
  background:radial-gradient(circle,rgba(26,122,110,.10) 0%,rgba(26,122,110,.04) 44%,transparent 70%);
  pointer-events:none;z-index:0;
}
.hero-book-col>*{position:relative;z-index:1;}
.book-ambient{position:relative;width:430px;}
.book-ambient::before{
  content:'';position:absolute;
  bottom:-18px;left:50%;transform:translateX(-50%);
  width:82%;height:36px;
  background:radial-gradient(ellipse,rgba(26,122,110,.26) 0%,transparent 72%);
  filter:blur(14px);border-radius:50%;pointer-events:none;
}
.book-cover{
  width:430px;aspect-ratio:5/7.4;
  border-radius:3px 12px 12px 3px;
  background:linear-gradient(168deg,#1D4A6A 0%,#1A3E5F 50%,#0E2438 100%);
  position:relative;overflow:hidden;
  box-shadow:
    -8px 0 0 0 rgba(0,0,0,.28),
    4px 32px 72px rgba(10,20,38,.42),
    0 6px 18px rgba(10,20,38,.24),
    0 0 0 1px rgba(255,255,255,.04);
}
.book-cover::before{
  content:'';position:absolute;top:0;left:0;width:16px;height:100%;
  background:linear-gradient(to right,rgba(0,0,0,.28) 0%,transparent 100%);
}
.book-cover::after{
  content:'';position:absolute;top:-30%;right:-10%;
  width:60%;height:70%;
  background:radial-gradient(ellipse,rgba(26,122,110,.16) 0%,transparent 65%);
  border-radius:50%;
}
.book-pages{
  position:absolute;top:4px;right:-10px;
  width:10px;height:calc(100% - 8px);
  background:repeating-linear-gradient(
    to right,#EDE7DF,#EDE7DF 1px,#E0D9D0 1px,#E0D9D0 2px
  );
  border-radius:0 2px 2px 0;
}
.book-content{
  position:absolute;inset:0;z-index:2;
  display:flex;flex-direction:column;
  align-items:center;justify-content:space-between;
  padding:28px 22px 24px;
}
.bc-top{text-align:center;width:100%;}
.bc-publisher{
  font-size:8px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;
  color:rgba(255,255,255,.38);margin-bottom:10px;
}
.bc-rule{
  width:28px;height:2px;
  background:linear-gradient(to right,var(--teal),#3AADA0);
  margin:0 auto 14px;border-radius:1px;
}
.bc-main-title{
  font-family:'Playfair Display',serif;
  font-size:34px;font-weight:800;color:#fff;
  line-height:1.06;letter-spacing:-.024em;margin-bottom:12px;
}
.bc-sub-line{
  font-size:9px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  color:rgba(255,255,255,.38);line-height:1.7;
}
.bc-mid{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:12px;flex:1;padding:10px 8px;
}
.bc-mid-rule{width:24px;height:1px;background:rgba(255,255,255,.12);}
.bc-headline-tag{
  font-family:'Playfair Display',serif;
  font-size:13px;font-weight:700;font-style:italic;
  color:rgba(94,205,194,.80);
  text-align:center;line-height:1.45;letter-spacing:.005em;padding:0 4px;
}
.bc-tagline-small{
  font-size:7px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;
  color:rgba(255,255,255,.20);text-align:center;line-height:1.5;
}
.bc-bot{
  text-align:center;width:100%;
  border-top:1px solid rgba(255,255,255,.10);padding-top:11px;
}
.bc-author{
  font-size:10px;letter-spacing:.15em;text-transform:uppercase;font-weight:700;
  color:#3AADA0;
}
.bc-creds{
  font-size:7px;letter-spacing:.07em;color:rgba(255,255,255,.22);
  margin-top:4px;line-height:1.55;
}
.bc-badge{
  position:absolute;top:-18px;right:-22px;
  width:84px;height:84px;border-radius:50%;
  background:linear-gradient(145deg,var(--teal) 0%,#146158 100%);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:2px;z-index:5;
  box-shadow:0 6px 20px rgba(26,122,110,.40),0 2px 6px rgba(26,122,110,.22);
  text-align:center;padding:4px;
}
.bc-badge-top{
  font-size:8px;font-weight:600;color:rgba(255,255,255,.75);
  letter-spacing:.08em;text-transform:uppercase;line-height:1.2;
}
.bc-badge-mid{
  font-family:'Playfair Display',serif;
  font-size:17px;font-weight:800;font-style:italic;color:#fff;line-height:1;
}
.bc-badge-bot{
  font-size:7.5px;font-weight:600;color:rgba(255,255,255,.65);
  letter-spacing:.06em;text-transform:uppercase;line-height:1.3;
}
.book-caption{
  font-size:12px;font-weight:500;
  color:rgba(200,216,232,.60);
  letter-spacing:.02em;text-align:center;
}

/* ══════════════════════════════════════════
   ③ TRUST BAR — credentials strip below hero
══════════════════════════════════════════ */
.trust-bar{
  background:var(--white);
  border-bottom:1px solid var(--rule);
  padding:22px 48px;
}
.trust-bar-inner{
  max-width:var(--max);margin:0 auto;
  display:flex;align-items:center;justify-content:center;
  gap:44px;flex-wrap:wrap;
}
.trust-item{
  display:flex;align-items:center;gap:10px;
  font-size:13px;font-weight:500;
  color:var(--body);letter-spacing:.01em;
  white-space:nowrap;
}
.trust-check{
  width:20px;height:20px;border-radius:50%;
  background:var(--teal-lt);
  border:1px solid rgba(26,122,110,.14);
  display:grid;place-items:center;
  flex-shrink:0;color:var(--teal);
}
.trust-sep{
  width:1px;height:22px;
  background:var(--rule);
  flex-shrink:0;
}

/* ══════════════════════════════════════════
   ④ THE APPROACH — 2-col argument + framework
══════════════════════════════════════════ */
.approach-section{
  background:var(--page);
  padding:88px 0;
  border-bottom:1px solid var(--rule);
}
.approach-inner{
  max-width:var(--max);margin:0 auto;padding:0 48px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:60px;align-items:start;
}
.approach-h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(26px,3vw,38px);
  font-weight:800;color:var(--ink);
  letter-spacing:-.026em;line-height:1.12;
  margin-bottom:22px;
}
.approach-body{
  font-size:16px;color:var(--quiet);
  line-height:1.82;margin-bottom:18px;
}
.approach-pull{
  font-family:'Playfair Display',serif;
  font-size:21px;font-weight:700;font-style:italic;
  color:var(--teal);
  border-left:3px solid var(--teal);
  padding:4px 0 4px 22px;
  margin:28px 0 28px;
  line-height:1.48;
}

/* Framework cards — right column */
.framework-card{
  background:var(--white);
  border:1px solid var(--rule);
  border-radius:10px;
  padding:26px 26px 24px;
  margin-bottom:14px;
  position:relative;
  transition:box-shadow .18s,border-color .18s;
}
.framework-card:last-child{margin-bottom:0;}
.framework-card:hover{
  box-shadow:0 8px 32px rgba(26,62,95,.09);
  border-color:rgba(26,122,110,.22);
}
.framework-card::before{
  content:'';position:absolute;top:0;left:24px;
  width:28px;height:3px;
  background:linear-gradient(to right,var(--teal),#3AADA0);
  border-radius:0 0 3px 3px;
}
.fc-label{
  font-size:9px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  color:var(--teal);display:block;margin-bottom:7px;
}
.fc-title{
  font-family:'Playfair Display',serif;
  font-size:17px;font-weight:800;color:var(--ink);
  letter-spacing:-.014em;margin-bottom:8px;
}
.fc-body{
  font-size:14px;color:var(--quiet);line-height:1.72;
}

/* ══════════════════════════════════════════
   ⑤ INSIDE THE BOOK — clean chapter grid
══════════════════════════════════════════ */
.inside-section{
  background:var(--white);
  padding:88px 0;
  border-bottom:1px solid var(--rule);
}
.inside-inner{
  max-width:var(--max);margin:0 auto;padding:0 48px;
}
.inside-header{max-width:var(--col);margin-bottom:48px;}
.inside-h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(26px,3vw,38px);
  font-weight:800;color:var(--ink);
  letter-spacing:-.026em;line-height:1.12;
  margin-bottom:14px;
}
.inside-lead{
  font-size:16px;color:var(--quiet);line-height:1.74;
}

/* Chapter grid — 3-col, clean gridlines via gap on colored container */
.chapters-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  background:var(--rule);
  border:1px solid var(--rule);
  border-radius:10px;
  overflow:hidden;
  margin-bottom:0;
}
.chapter-cell{
  background:var(--white);
  padding:26px 24px 24px;
  transition:background .14s;
}
.chapter-cell:hover{background:var(--teal-lt);}
.chapter-unit{
  font-size:9.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  color:var(--accent);display:block;margin-bottom:8px;
}
.chapter-film{
  font-family:'Playfair Display',serif;
  font-size:16px;font-weight:800;color:var(--ink);
  letter-spacing:-.012em;line-height:1.18;
  margin-bottom:4px;
}
.chapter-skill{
  font-size:12.5px;color:var(--quiet);line-height:1.64;
}
/* Summary cell */
.chapter-cell--summary{
  background:#EAF4FB;
  display:flex;align-items:center;justify-content:center;
  text-align:center;padding:26px 20px;
  cursor:default;
}
.chapter-cell--summary:hover{background:#DFF0F8;}
.cs-label{
  font-size:12.5px;font-weight:700;color:var(--teal);
  display:block;margin-bottom:6px;
}
.cs-items{
  font-size:11.5px;color:var(--quiet);line-height:1.65;
}

/* ══════════════════════════════════════════
   ⑥ WHO THIS IS FOR — dark navy contrast
══════════════════════════════════════════ */
.audience-section{
  background:var(--navy-dk);
  padding:96px 0;
}
.audience-inner{
  max-width:var(--max);margin:0 auto;padding:0 48px;
}
.audience-header{max-width:var(--col);margin-bottom:56px;}
.audience-h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(26px,3.2vw,42px);
  font-weight:800;color:#fff;
  letter-spacing:-.028em;line-height:1.10;
  margin-bottom:16px;
}
.audience-lead{
  font-size:16.5px;color:rgba(200,216,232,.72);line-height:1.76;
}
.audience-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:28px;
}
.audience-card{
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.10);
  border-top:2px solid rgba(94,205,194,.35);
  border-radius:10px;
  padding:38px 32px 36px;
  transition:background .18s,border-color .18s;
}
.audience-card:hover{
  background:rgba(255,255,255,.07);
  border-color:rgba(255,255,255,.16);
}
.ac-icon{
  width:40px;height:40px;border-radius:8px;
  background:rgba(94,205,194,.10);
  border:1px solid rgba(94,205,194,.18);
  display:grid;place-items:center;
  color:var(--teal-hi);margin-bottom:20px;flex-shrink:0;
}
.ac-title{
  font-family:'Playfair Display',serif;
  font-size:18px;font-weight:800;
  color:var(--teal-hi);
  letter-spacing:-.012em;margin-bottom:12px;
}
.ac-body{
  font-size:14.5px;color:rgba(200,216,232,.80);line-height:1.84;
}

/* ══════════════════════════════════════════
   ⑦ ABOUT — photo left, text right; real photo
══════════════════════════════════════════ */
.about-section{
  background:var(--page);
  padding:92px 0;
  border-bottom:1px solid var(--rule);
}
.about-inner{
  max-width:var(--max);margin:0 auto;padding:0 48px;
  display:grid;
  grid-template-columns:320px 1fr;
  gap:72px;align-items:start;
}

/* Photo container — real photo */
.about-photo-wrap{
  position:relative;
  border-radius:12px;overflow:hidden;
  aspect-ratio:4/5;
  background:#0D1F30;
  box-shadow:
    0 18px 52px rgba(12,20,30,.20),
    0 6px 18px rgba(12,20,30,.12),
    0 0 0 1px rgba(255,255,255,.05);
}
.about-photo-img{
  position:absolute;inset:0;
  width:100%;height:100%;
  object-fit:cover;object-position:center 18%;
  display:block;
}
.about-photo-vignette{
  position:absolute;inset:0;
  background:linear-gradient(to bottom,transparent 50%,rgba(8,18,28,.55) 78%,rgba(8,18,28,.82) 100%);
  pointer-events:none;z-index:1;
}
.about-photo-name{position:absolute;bottom:14px;left:14px;right:14px;z-index:2;}
.about-photo-name span{
  display:block;
  font-size:12px;font-weight:700;letter-spacing:.05em;color:#fff;
  text-shadow:0 1px 6px rgba(0,0,0,.55);
}
.about-photo-name small{
  font-size:10px;color:rgba(94,205,194,.82);letter-spacing:.06em;
  font-weight:500;
}

/* Text column */
.about-text .eyebrow{margin-bottom:14px;}
.about-name{
  font-family:'Playfair Display',serif;
  font-size:clamp(30px,3.4vw,44px);
  font-weight:800;color:var(--ink);
  letter-spacing:-.028em;line-height:1.10;
  margin-bottom:6px;
}
.about-role{
  font-size:11.5px;font-weight:600;
  letter-spacing:.12em;text-transform:uppercase;
  color:var(--teal);margin-bottom:28px;display:block;
}
.about-para{
  font-size:16px;color:var(--body);
  line-height:1.82;margin-bottom:18px;
}
.about-quote{
  margin:26px 0 26px;
  border-left:2.5px solid var(--teal);
  padding:16px 0 16px 22px;
}
.about-quote p{
  font-family:'Playfair Display',serif;
  font-size:17.5px;font-weight:700;font-style:italic;
  color:var(--ink);line-height:1.52;letter-spacing:-.01em;
}
.about-quote cite{
  font-style:normal;font-size:10.5px;font-weight:600;
  letter-spacing:.12em;text-transform:uppercase;
  color:var(--teal);margin-top:9px;display:block;
}
.about-creds{
  list-style:none;margin:0 0 34px;
  display:flex;flex-direction:column;gap:7px;
}
.about-creds li{
  font-size:14px;color:var(--body);
  display:flex;align-items:baseline;gap:10px;
}
.about-creds li::before{
  content:'';display:inline-block;
  width:5px;height:5px;border-radius:50%;
  background:var(--teal);opacity:.65;
  flex-shrink:0;transform:translateY(-1px);
}

/* Tint overlay and bar (missing from original export) */
.about-photo-tint{
  position:absolute;inset:0;
  background:radial-gradient(ellipse at 0% 0%,rgba(26,122,110,.10) 0%,transparent 55%);
  pointer-events:none;z-index:1;
}
.about-photo-bar{
  position:absolute;bottom:0;left:0;
  width:3px;height:50%;
  background:linear-gradient(to bottom,transparent,var(--teal));
  z-index:3;border-radius:0 0 0 12px;
}

/* Single-column variant when no photo */
.about-inner--single{
  grid-template-columns:1fr;
}
.about-inner--single .about-text{
  max-width:680px;
}

/* ══════════════════════════════════════════
   ⑧ TEAL CTA BAND
══════════════════════════════════════════ */
.cta-band{
  background:var(--teal);
  padding:80px 0;
}
.cta-inner{
  max-width:620px;margin:0 auto;padding:0 48px;text-align:center;
}
.cta-eyebrow{
  display:block;font-size:11px;font-weight:600;
  letter-spacing:.16em;text-transform:uppercase;
  color:rgba(255,255,255,.62);margin-bottom:18px;
}
.cta-h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(26px,3.5vw,44px);
  font-weight:800;color:#fff;
  letter-spacing:-.028em;line-height:1.10;
  margin-bottom:16px;
}
.cta-sub{
  font-size:17px;color:rgba(255,255,255,.76);
  line-height:1.70;margin-bottom:38px;
}
.cta-btns{
  display:flex;align-items:center;justify-content:center;
  gap:14px;flex-wrap:wrap;
}
.cta-btns .btn{
  padding:15px 34px;font-size:15px;
}



/* =========================================================================
   PAGE SPECIFIC CSS — BOOK
   ========================================================================= */
/* ══════════════════════════════════════════
   BOOK COVER CSS SYSTEM
 (shared classes)
══════════════════════════════════════════ */
.book-cover{
  aspect-ratio:5/7.4;
  border-radius:3px 12px 12px 3px;
  background:linear-gradient(168deg,#1D4A6A 0%,#1A3E5F 50%,#0E2438 100%);
  position:relative;overflow:hidden;
  box-shadow:
    -6px 0 0 0 rgba(0,0,0,.28),
    4px 24px 56px rgba(10,20,38,.36),
    0 4px 14px rgba(10,20,38,.20),
    0 0 0 1px rgba(255,255,255,.04);
}
.book-cover::before{
  content:'';position:absolute;top:0;left:0;
  width:14px;height:100%;
  background:linear-gradient(to right,rgba(0,0,0,.28) 0%,transparent 100%);
}
.book-cover::after{
  content:'';position:absolute;
  top:-30%;right:-10%;width:60%;height:70%;
  background:radial-gradient(ellipse,rgba(26,122,110,.16) 0%,transparent 65%);
  border-radius:50%;
}
.book-pages{
  position:absolute;top:4px;right:-9px;
  width:9px;height:calc(100% - 8px);
  background:repeating-linear-gradient(
    to right,#EDE7DF,#EDE7DF 1px,#E0D9D0 1px,#E0D9D0 2px
  );
  border-radius:0 2px 2px 0;
}
.book-content{
  position:absolute;inset:0;z-index:2;
  display:flex;flex-direction:column;
  align-items:center;justify-content:space-between;
  padding:22px 18px 20px;
}
.bc-top{text-align:center;width:100%;}
.bc-publisher{
  font-size:7.5px;font-weight:700;
  letter-spacing:.22em;text-transform:uppercase;
  color:rgba(255,255,255,.38);margin-bottom:8px;
}
.bc-rule{
  width:24px;height:2px;
  background:linear-gradient(to right,var(--teal),#3AADA0);
  margin:0 auto 12px;border-radius:1px;
}
.bc-main-title{
  font-family:'Playfair Display',serif;
  font-size:clamp(22px,4.5vw,28px);
  font-weight:800;color:#fff;
  line-height:1.06;letter-spacing:-.024em;margin-bottom:8px;
}
.bc-sub-line{
  font-size:7.5px;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;
  color:rgba(255,255,255,.38);line-height:1.7;
}
.bc-mid{
  display:flex;flex-direction:column;
  align-items:center;justify-content:center;
  gap:10px;flex:1;padding:8px;
}
.bc-mid-rule{width:20px;height:1px;background:rgba(255,255,255,.12);}
.bc-headline-tag{
  font-family:'Playfair Display',serif;
  font-size:11px;font-weight:700;font-style:italic;
  color:rgba(58,173,160,.75);
  text-align:center;line-height:1.45;
}
.bc-tagline-small{
  font-size:6.5px;font-weight:500;
  letter-spacing:.10em;text-transform:uppercase;
  color:rgba(255,255,255,.20);text-align:center;line-height:1.5;
}
.bc-bot{
  text-align:center;width:100%;
  border-top:1px solid rgba(255,255,255,.10);padding-top:9px;
}
.bc-author{font-size:8.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:#3AADA0;}
.bc-creds{font-size:6px;letter-spacing:.06em;color:rgba(255,255,255,.22);margin-top:3px;line-height:1.55;}

/* ══════════════════════════════════════════
   ① BOOK HERO
   Key difference from Home: book on LEFT,
   text on RIGHT. Smaller cover (300px).
   Narrower padding. Product-detail feel.
══════════════════════════════════════════ */
.book-hero{
  background:var(--navy-dk);
  padding:64px 0 72px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.book-hero-inner{
  max-width:var(--max);margin:0 auto;padding:0 48px;
  display:grid;
  grid-template-columns:340px 1fr;
  gap:72px;
  align-items:center;
}
.book-hero .eyebrow{color:rgba(94,205,194,.88);}

/* Visual column */
.bh-visual{
  position:relative;
  display:flex;flex-direction:column;
  align-items:center;gap:14px;
}
.bh-book-wrap{
  position:relative;
  width:340px;
}
.bh-book-wrap::before{
  content:'';position:absolute;
  bottom:-14px;left:50%;transform:translateX(-50%);
  width:80%;height:30px;
  background:radial-gradient(ellipse,rgba(26,122,110,.20) 0%,transparent 72%);
  filter:blur(12px);border-radius:50%;pointer-events:none;
}
.bh-book-wrap .book-cover{width:340px;}
.bh-badge{
  position:absolute;top:-14px;right:-14px;
  width:72px;height:72px;border-radius:50%;
  background:linear-gradient(145deg,var(--teal) 0%,#146158 100%);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:2px;z-index:5;padding:4px;text-align:center;
  box-shadow:0 5px 16px rgba(26,122,110,.35),0 2px 5px rgba(26,122,110,.20);
}
.bh-badge-top{font-size:7.5px;font-weight:600;color:rgba(255,255,255,.72);letter-spacing:.08em;text-transform:uppercase;line-height:1.2;}
.bh-badge-mid{font-family:'Playfair Display',serif;font-size:15px;font-weight:800;font-style:italic;color:#fff;line-height:1;}
.bh-badge-bot{font-size:7px;font-weight:600;color:rgba(255,255,255,.62);letter-spacing:.06em;text-transform:uppercase;line-height:1.3;}
.bh-caption{font-size:11.5px;font-weight:500;color:rgba(200,216,232,.50);text-align:center;}
.bh-formats{
  display:flex;gap:6px;justify-content:center;
}
.bh-format-tag{
  display:inline-flex;align-items:center;gap:5px;
  background:rgba(94,205,194,.10);border:1px solid rgba(94,205,194,.18);
  border-radius:4px;padding:4px 10px;
  font-size:10.5px;font-weight:600;color:var(--teal-hi);
}

/* Text column */
.bh-text{}
.bh-text .eyebrow{margin-bottom:16px;}
.bh-title{
  font-family:'Playfair Display',serif;
  font-size:clamp(36px,4.8vw,58px);
  font-weight:800;color:#fff;
  letter-spacing:-.035em;line-height:1.08;margin-bottom:10px;
}
.bh-title em{font-style:italic;color:var(--teal-hi);}
.bh-author-line{
  font-size:15px;font-weight:500;
  color:rgba(200,216,232,.65);margin-bottom:20px;
}
.bh-sub{
  font-size:17px;color:rgba(200,216,232,.86);
  line-height:1.74;margin-bottom:32px;
  max-width:440px;
}
.bh-ctas{
  display:flex;align-items:center;gap:14px;
  flex-wrap:wrap;margin-bottom:28px;
}
.bh-meta{
  display:flex;align-items:center;gap:18px;
  padding:12px 16px;
  border:1px solid rgba(255,255,255,.12);border-radius:7px;
  background:rgba(255,255,255,.07);width:fit-content;
}
.bh-meta-dot{width:6px;height:6px;border-radius:50%;background:var(--teal);opacity:.55;flex-shrink:0;}
.bh-meta-text{font-size:12px;font-weight:500;color:rgba(200,216,232,.72);}
.bh-meta-sep{width:1px;height:20px;background:rgba(255,255,255,.14);flex-shrink:0;}

/* ══════════════════════════════════════════
   ② BOOK OVERVIEW — centered editorial prose
   Single-column, max-width 760px.
   The core idea of the book in clear prose.
══════════════════════════════════════════ */
.book-overview{
  background:var(--white);
  padding:80px 0;
  border-bottom:1px solid var(--rule);
}
.overview-inner{
  max-width:760px;margin:0 auto;padding:0 48px;
}
.overview-inner .eyebrow{margin-bottom:18px;}
.overview-h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(24px,2.8vw,36px);
  font-weight:800;color:var(--ink);
  letter-spacing:-.022em;line-height:1.18;margin-bottom:32px;
}
.overview-body p{
  font-size:16.5px;color:var(--body);
  line-height:1.84;margin-bottom:22px;
}
.overview-body p:last-child{margin-bottom:0;}
.overview-quote{
  margin:36px 0 0;
  padding-left:24px;
  border-left:2.5px solid var(--teal);
}
.overview-quote p{
  font-family:'Playfair Display',serif;
  font-size:18px;font-weight:700;font-style:italic;
  color:var(--ink);line-height:1.52;margin-bottom:10px;
}
.overview-quote cite{
  font-style:normal;font-size:11px;font-weight:600;
  letter-spacing:.12em;text-transform:uppercase;color:var(--teal);
}

/* ══════════════════════════════════════════
   ③ WHAT YOU WILL LEARN — 2-col editorial blocks
   Left: 6 compact content blocks.
   Right: sticky "At a Glance" summary card
   with Learning Tree chips.
══════════════════════════════════════════ */
.learn-section{
  background:var(--page);
  padding:80px 0;
  border-bottom:1px solid var(--rule);
}
.learn-inner{
  max-width:var(--max);margin:0 auto;padding:0 48px;
}
.learn-intro-block{
  max-width:660px;margin-bottom:48px;
}
.learn-intro-block .eyebrow{margin-bottom:16px;}
.learn-h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(24px,2.8vw,36px);
  font-weight:800;color:var(--ink);
  letter-spacing:-.022em;line-height:1.18;margin-bottom:16px;
}
.learn-intro{
  font-size:16px;color:var(--body);line-height:1.78;
}

/* 2-col layout */
.learn-2col{
  display:grid;
  grid-template-columns:1fr 340px;
  gap:64px;align-items:start;
}

/* Left: content blocks */
.learn-blocks{
  display:flex;flex-direction:column;
  border-top:1px solid var(--rule-lt);
}
.lblock{
  padding:26px 0;
  border-bottom:1px solid var(--rule-lt);
}
.lblock:last-child{border-bottom:none;}
.lblock-title{
  font-size:15.5px;font-weight:600;
  color:var(--ink);line-height:1.28;margin-bottom:7px;
}
.lblock-desc{
  font-size:14.5px;color:var(--quiet);line-height:1.72;
}

/* Right: At a Glance card (sticky) */
.glance-card{
  background:var(--white);
  border:1px solid var(--rule);
  border-radius:14px;
  padding:32px 32px 28px;
  position:sticky;top:88px;
}
.glance-label{
  font-size:10px;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;
  color:var(--teal);display:block;margin-bottom:14px;
}
.glance-title{
  font-family:'Playfair Display',serif;
  font-size:19px;font-weight:800;color:var(--ink);
  letter-spacing:-.018em;line-height:1.18;margin-bottom:18px;
}
.glance-stats{
  display:flex;flex-direction:column;
  margin-bottom:22px;
}
.glance-stat{
  display:flex;align-items:center;gap:12px;
  padding:10px 0;
  border-bottom:1px solid var(--rule-lt);
}
.glance-stat:last-child{border-bottom:none;padding-bottom:0;}
.glance-stat-dot{
  width:5px;height:5px;border-radius:50%;
  background:var(--teal);opacity:.65;flex-shrink:0;
}
.glance-stat-text{
  font-size:13.5px;font-weight:500;
  color:var(--body);line-height:1.5;
}
.glance-divider{border:none;border-top:1px solid var(--rule-lt);margin:0 0 20px;}

/* Shared chip components (used in glance card) */
.lt-group{margin-bottom:14px;}
.lt-group:last-child{margin-bottom:0;}
.lt-group-label{
  font-size:10px;font-weight:700;
  letter-spacing:.12em;text-transform:uppercase;
  color:var(--quiet);margin-bottom:9px;
}
.lt-chips{display:flex;flex-wrap:wrap;gap:5px;}
.lt-chip{
  display:inline-block;
  padding:5px 10px;
  background:var(--teal-lt);
  border:1px solid rgba(26,122,110,.20);
  border-radius:4px;
  font-size:9.5px;font-weight:700;letter-spacing:.10em;text-transform:uppercase;
  color:var(--teal);
}
.lt-chip--root{
  background:rgba(26,62,95,.06);
  border-color:rgba(26,62,95,.14);
  color:var(--navy);
}

/* ══════════════════════════════════════════
   ④ WHAT IS INSIDE — editorial overview
   White background. Short intro + inside list.
══════════════════════════════════════════ */
.inside-section{
  background:var(--white);
  padding:80px 0;
  border-bottom:1px solid var(--rule);
}
.inside-inner--book{
  max-width:var(--max);margin:0 auto;padding:0 48px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:72px;align-items:start;
}
.inside-text .eyebrow{margin-bottom:18px;}
.inside-h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(24px,2.8vw,36px);
  font-weight:800;color:var(--ink);
  letter-spacing:-.022em;line-height:1.18;margin-bottom:20px;
}
.inside-prose p{
  font-size:16px;color:var(--body);
  line-height:1.82;margin-bottom:18px;
}
.inside-prose p:last-child{margin-bottom:0;}

/* Inside list (right column) */
.inside-list-card{
  background:var(--page);
  border:1px solid var(--rule-lt);
  border-radius:14px;padding:32px 32px 28px;
}
.inside-list-label{
  font-size:10px;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;
  color:var(--teal);display:block;margin-bottom:18px;
}
.inside-list{list-style:none;display:flex;flex-direction:column;gap:0;}
.inside-item{
  display:flex;align-items:baseline;gap:14px;
  padding:15px 0;
  border-bottom:1px solid var(--rule-lt);
}
.inside-item:first-child{padding-top:0;}
.inside-item:last-child{border-bottom:none;padding-bottom:0;}
.inside-item-dot{
  width:5px;height:5px;border-radius:50%;
  background:var(--teal);opacity:.65;flex-shrink:0;
  transform:translateY(-1px);
}
.inside-item-text{font-size:15px;color:var(--body);line-height:1.62;}

/* ══════════════════════════════════════════
   ⑤ WHO IS THIS FOR
   Clean 2×2 persona grid. More text-focused
   than Home page cards. No large icons.
══════════════════════════════════════════ */
.for-section{
  background:var(--page);
  padding:88px 0;
  border-bottom:1px solid var(--rule);
}
.for-inner{
  max-width:var(--max);margin:0 auto;padding:0 48px;
}
.for-header{
  max-width:var(--col);
  text-align:center;margin:0 auto 56px;
}
.for-header .eyebrow{margin-bottom:16px;}
.for-h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(24px,2.8vw,36px);
  font-weight:800;color:var(--ink);
  letter-spacing:-.022em;line-height:1.18;margin-bottom:14px;
}
.for-sub{font-size:16px;color:var(--body);line-height:1.70;}
.for-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:1px;
  background:var(--rule);
  border:1px solid var(--rule);
  border-radius:14px;
  overflow:hidden;
}
.for-item{
  background:var(--white);
  padding:36px 40px 34px;
}
.for-item-icon{
  width:40px;height:40px;
  background:var(--teal-lt);
  border-radius:8px;display:grid;place-items:center;
  color:var(--teal);margin-bottom:20px;flex-shrink:0;
}
.for-item-title{
  font-family:'Playfair Display',serif;
  font-size:18px;font-weight:800;color:var(--ink);
  letter-spacing:-.015em;line-height:1.2;margin-bottom:13px;
}
.for-item-desc{
  font-size:14.5px;color:var(--quiet);line-height:1.82;
}

/* ══════════════════════════════════════════
   ⑥ COMPANION RESOURCES — secondary section
   Off-white bg. 3-col cards, lower-key than
   home page resources. Supporting the book.
══════════════════════════════════════════ */
.resources-section{
  background:var(--page);
  padding:80px 0;
  border-bottom:1px solid var(--rule);
}
.resources-inner{
  max-width:var(--max);margin:0 auto;padding:0 48px;
}
.resources-header{
  max-width:var(--col);
  text-align:center;margin:0 auto 48px;
}
.resources-header .eyebrow{margin-bottom:16px;}
.resources-h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(22px,2.5vw,32px);
  font-weight:800;color:var(--ink);
  letter-spacing:-.022em;line-height:1.18;margin-bottom:12px;
}
.resources-sub{font-size:15px;color:var(--body);line-height:1.70;}
.resources-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
}
.resource-card{
  background:var(--white);
  border:1px solid var(--rule);
  border-radius:12px;
  padding:32px 30px 28px;
  position:relative;
  display:flex;flex-direction:column;
  transition:box-shadow .22s,transform .22s;
}
.resource-card:hover{
  box-shadow:0 8px 32px rgba(26,62,95,.10);
}
.resource-accent{
  position:absolute;top:0;left:30px;
  width:30px;height:3px;
  background:linear-gradient(to right,var(--teal),#3AADA0);
  border-radius:0 0 3px 3px;
}
.resource-free-tag{
  position:absolute;top:14px;right:16px;
  background:var(--teal);color:#fff;
  font-size:8.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  padding:3px 9px;border-radius:20px;
}
.resource-icon{
  width:42px;height:42px;
  background:var(--teal-lt);border-radius:9px;
  display:grid;place-items:center;
  color:var(--teal);margin-bottom:16px;margin-top:4px;flex-shrink:0;
}
.resource-label{
  font-size:9.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--teal);display:block;margin-bottom:7px;
}
.resource-title{
  font-family:'Playfair Display',serif;
  font-size:18px;font-weight:800;color:var(--ink);
  letter-spacing:-.015em;line-height:1.2;margin-bottom:10px;
}
.resource-desc{
  font-size:14.5px;color:var(--quiet);
  line-height:1.74;margin-bottom:22px;flex:1;
}

/* ══════════════════════════════════════════
   ⑦ AUTHOR — condensed
   White background. More compact than About.
══════════════════════════════════════════ */
.author-section{
  background:var(--white);
  padding:76px 0;
  border-bottom:1px solid var(--rule);
}
.author-inner{
  max-width:var(--max);margin:0 auto;padding:0 48px;
  display:grid;grid-template-columns:220px 1fr;
  gap:64px;align-items:center;
}
/* Photo placeholder */
.author-photo{
  position:relative;align-self:start;flex-shrink:0;
}
.author-photo-wrap{
  position:relative;
  width:100%;
  aspect-ratio:3/4;
  border-radius:14px;overflow:hidden;
  background:#0D1F30;
  box-shadow:
    0 20px 60px rgba(26,62,95,.20),
    0 6px 18px rgba(26,62,95,.10),
    0 0 0 1px rgba(255,255,255,.05);
}
.author-photo-img{
  position:absolute;inset:0;
  width:100%;height:100%;
  object-fit:cover;
  object-position:center 18%;
  display:block;
}
.author-photo-vignette{
  position:absolute;inset:0;
  background:linear-gradient(to bottom,
    transparent 45%,
    rgba(8,18,28,.55) 75%,
    rgba(8,18,28,.85) 100%);
  pointer-events:none;z-index:1;
}
.author-photo-tint{
  position:absolute;inset:0;
  background:radial-gradient(ellipse at 0% 0%,rgba(26,122,110,.10) 0%,transparent 55%);
  pointer-events:none;z-index:1;
}
.author-photo-name{
  position:absolute;bottom:0;left:0;right:0;
  padding:18px 20px;z-index:2;
}
.author-photo-name span{
  display:block;
  font-family:'Playfair Display',serif;
  font-size:15px;font-weight:800;font-style:italic;
  color:rgba(255,255,255,.90);line-height:1.2;
}
.author-photo-name small{
  display:block;
  font-size:10.5px;font-weight:500;letter-spacing:.07em;
  color:rgba(255,255,255,.48);margin-top:4px;
}
.author-photo-bar{
  position:absolute;bottom:0;left:0;
  width:3px;height:50%;
  background:linear-gradient(to bottom,transparent,var(--teal));
  z-index:3;border-radius:0 0 0 14px;
}
/* Author text */
.author-text .eyebrow{margin-bottom:12px;}
.author-name{
  font-family:'Playfair Display',serif;
  font-size:clamp(26px,2.8vw,36px);
  font-weight:800;color:var(--ink);
  letter-spacing:-.026em;line-height:1.10;margin-bottom:5px;
}
.author-role{
  font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;
  color:var(--teal);margin-bottom:20px;display:block;
}
.author-bio{font-size:15.5px;color:var(--body);line-height:1.80;margin-bottom:16px;}
.author-quote{
  margin:20px 0 24px;
  padding-left:20px;border-left:2.5px solid var(--teal);
}
.author-quote p{
  font-family:'Playfair Display',serif;
  font-size:16px;font-weight:700;font-style:italic;
  color:var(--ink);line-height:1.50;
}
.author-quote cite{
  font-style:normal;font-size:10.5px;font-weight:600;
  letter-spacing:.11em;text-transform:uppercase;
  color:var(--teal);margin-top:7px;display:block;
}
.author-creds{
  list-style:none;margin:0 0 28px;
  display:flex;flex-direction:column;gap:5px;
}
.author-creds li{
  font-size:13.5px;color:var(--body);
  display:flex;align-items:baseline;gap:10px;
}
.author-creds li::before{
  content:'';display:inline-block;
  width:4px;height:4px;border-radius:50%;
  background:var(--teal);opacity:.65;
  flex-shrink:0;transform:translateY(-1px);
}

/* ══════════════════════════════════════════
   ⑧ FINAL CTA — dark strip
   Identical to Home page CTA treatment.
══════════════════════════════════════════ */
.final-cta{background:var(--teal);padding:80px 0;}
.final-cta-inner{
  max-width:620px;margin:0 auto;padding:0 48px;text-align:center;
}
.final-cta-eyebrow{
  display:block;font-size:11px;font-weight:600;
  letter-spacing:.16em;text-transform:uppercase;
  color:rgba(255,255,255,.62);margin-bottom:18px;
}
.final-cta-title{
  font-family:'Playfair Display',serif;
  font-size:clamp(26px,3.2vw,42px);
  font-weight:800;color:#fff;
  letter-spacing:-.026em;line-height:1.12;margin-bottom:16px;
}
.final-cta-sub{
  font-size:15.5px;color:rgba(255,255,255,.76);
  line-height:1.72;margin-bottom:36px;
}
.final-cta-btns{
  display:flex;align-items:center;justify-content:center;
  gap:14px;flex-wrap:wrap;
}



/* =========================================================================
   PAGE SPECIFIC CSS — YOUTUBE
   ========================================================================= */
/* ══════════════════════════════════════════
   ① YOUTUBE HERO

   Text left, compact video card right.
══════════════════════════════════════════ */
.yt-hero{
  background:var(--navy-dk);
  padding:72px 0 80px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.yh-inner{
  max-width:var(--max);margin:0 auto;padding:0 48px;
  display:grid;
  grid-template-columns:1fr 440px;
  gap:64px;align-items:center;
}
.yh-text .eyebrow{margin-bottom:18px;}
.yt-hero .eyebrow{color:rgba(94,205,194,.88);}
.yh-title{
  font-family:'Playfair Display',serif;
  font-size:clamp(36px,4.8vw,58px);
  font-weight:800;color:#fff;
  letter-spacing:-.035em;line-height:1.08;margin-bottom:14px;
}
.yh-title em{font-style:italic;color:var(--teal-hi);}
.yh-sub{
  font-size:17px;color:rgba(200,216,232,.86);
  line-height:1.76;margin-bottom:32px;max-width:440px;
}
.yh-ctas{
  display:flex;align-items:center;gap:14px;
  flex-wrap:wrap;margin-bottom:28px;
}
.yh-meta{
  display:flex;align-items:center;gap:14px;
  padding:11px 16px;
  border:1px solid rgba(255,255,255,.12);border-radius:7px;
  background:rgba(255,255,255,.07);width:fit-content;
}
.yh-meta-item{display:flex;align-items:center;gap:7px;}
.yh-meta-dot{width:5px;height:5px;border-radius:50%;background:var(--teal);opacity:.55;flex-shrink:0;}
.yh-meta-text{font-size:12px;font-weight:500;color:rgba(200,216,232,.72);}
.yh-meta-sep{width:1px;height:18px;background:rgba(255,255,255,.14);flex-shrink:0;}

/* Hero video card — POLISHED */
.yh-card{
  background:var(--white);
  border:1px solid rgba(255,255,255,.10);
  border-top:3px solid var(--teal);
  border-radius:12px;overflow:hidden;
  box-shadow:
    0 24px 72px rgba(0,0,0,.36),
    0 8px 24px rgba(0,0,0,.18),
    0 1px 4px rgba(0,0,0,.10);
  cursor:pointer;
  transition:box-shadow .22s,transform .22s;
}
.yh-card:hover{
  box-shadow:
    0 22px 68px rgba(26,62,95,.18),
    0 7px 18px rgba(26,62,95,.09),
    0 1px 4px rgba(26,62,95,.05);
  transform:translateY(-3px);
}
.yh-thumb{
  position:relative;aspect-ratio:16/9;
  background:linear-gradient(148deg,#10403A 0%,#163255 40%,#0F2844 75%,#091C30 100%);
  cursor:pointer;overflow:hidden;
}
.yh-thumb::after{
  content:'';position:absolute;inset:0;
  background:
    radial-gradient(ellipse at 72% 12%,rgba(26,122,110,.32) 0%,transparent 52%),
    radial-gradient(ellipse at 22% 88%,rgba(46,111,163,.20) 0%,transparent 46%),
    radial-gradient(ellipse at 48% 55%,rgba(26,122,110,.08) 0%,transparent 38%),
    repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(0,0,0,.012) 3px,rgba(0,0,0,.012) 4px);
  pointer-events:none;
  transition:opacity .22s;
}
.yh-thumb:hover::after{opacity:.85;}
.yh-thumb::before{
  content:'';position:absolute;top:0;left:0;right:0;
  height:56px;
  background:linear-gradient(to bottom,rgba(0,0,0,.26),transparent);
}
.yh-channel{
  position:absolute;top:14px;left:14px;z-index:3;
  display:inline-flex;align-items:center;gap:7px;
  background:rgba(0,0,0,.46);backdrop-filter:blur(10px);
  border-radius:20px;padding:4px 10px 4px 6px;
}
.yt-dot{
  width:14px;height:14px;background:#FF0000;
  border-radius:3px;display:grid;place-items:center;flex-shrink:0;
}
.yt-dot::after{
  content:'';width:0;height:0;border-style:solid;
  border-width:2.5px 0 2.5px 5px;
  border-color:transparent transparent transparent white;
  margin-left:1px;
}
.yh-channel span{font-size:10px;font-weight:500;color:rgba(255,255,255,.68);}
.yh-play{
  position:absolute;top:50%;left:50%;
  transform:translate(-50%,-50%);
  width:64px;height:64px;border-radius:50%;
  background:rgba(255,255,255,.97);
  display:grid;place-items:center;
  box-shadow:
    0 6px 28px rgba(0,0,0,.34),
    0 2px 8px rgba(0,0,0,.20),
    0 0 0 10px rgba(255,255,255,.10),
    0 0 0 22px rgba(255,255,255,.045);
  transition:transform .20s,box-shadow .20s;z-index:2;
}
.yh-thumb:hover .yh-play{
  transform:translate(-50%,-50%) scale(1.09);
  box-shadow:
    0 10px 38px rgba(0,0,0,.40),
    0 4px 12px rgba(0,0,0,.24),
    0 0 0 12px rgba(255,255,255,.13),
    0 0 0 28px rgba(255,255,255,.055);
}
.yh-play::after{
  content:'';width:0;height:0;border-style:solid;
  border-width:9px 0 9px 17px;
  border-color:transparent transparent transparent var(--teal);
  margin-left:5px;
}
.yh-caption{
  position:absolute;bottom:0;left:0;right:0;
  padding:36px 20px 14px;
  background:linear-gradient(to top,rgba(6,12,20,.78) 0%,rgba(6,12,20,.40) 55%,transparent 100%);
  z-index:2;
}
.yh-caption-eyebrow{
  display:block;
  font-size:8.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:rgba(58,173,160,.85);margin-bottom:4px;
}
.yh-caption-title{
  font-family:'Playfair Display',serif;
  font-size:14px;font-weight:700;color:#fff;line-height:1.28;
  text-shadow:0 2px 10px rgba(0,0,0,.50);
}
.yh-duration{
  position:absolute;bottom:10px;right:12px;
  background:rgba(0,0,0,.76);color:#fff;
  font-size:10.5px;font-weight:600;
  padding:2px 6px;border-radius:3px;z-index:3;
}
.yh-vib{
  padding:16px 20px 18px;
  background:var(--white);border-top:1px solid var(--rule-lt);
  display:flex;align-items:flex-start;justify-content:space-between;gap:12px;
}
.yh-vib-left{flex:1;}
.yh-vib-label{
  font-size:9.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--teal);display:block;margin-bottom:4px;
}
.yh-vib-title{
  font-family:'Playfair Display',serif;
  font-size:14.5px;font-weight:700;font-style:italic;
  color:var(--ink);line-height:1.32;
}
.yh-vib-right{display:flex;align-items:center;gap:6px;flex-shrink:0;padding-top:2px;}
.yh-yt{width:18px;height:18px;background:#FF0000;border-radius:3px;display:grid;place-items:center;}
.yh-yt::after{
  content:'';width:0;height:0;border-style:solid;
  border-width:3.5px 0 3.5px 6px;
  border-color:transparent transparent transparent white;
  margin-left:1px;
}
.yh-vib-handle{font-size:11px;font-weight:500;color:var(--quiet);}

/* ══════════════════════════════════════════
   ② FEATURED LESSON — POLISHED
══════════════════════════════════════════ */
.feat-section{
  background:var(--white);
  padding:88px 0;
  border-bottom:1px solid var(--rule);
}
.feat-header{
  max-width:var(--col);margin:0 auto;padding:0 48px;
  text-align:center;margin-bottom:52px;
}
.feat-header .eyebrow{margin-bottom:16px;}
.feat-h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(24px,3vw,38px);
  font-weight:800;color:var(--ink);
  letter-spacing:-.022em;line-height:1.18;margin-bottom:14px;
}
.feat-sub{font-size:16px;color:var(--body);line-height:1.74;}
.feat-card-wrap{
  max-width:760px;margin:0 auto;padding:0 48px;
}
.feat-card{
  background:var(--page);
  border:1px solid var(--rule);
  border-top:3px solid var(--teal);
  border-radius:14px;overflow:hidden;
  box-shadow:
    0 22px 68px rgba(26,62,95,.14),
    0 6px 18px rgba(26,62,95,.07),
    0 1px 4px rgba(26,62,95,.04);
}
.feat-thumb{
  position:relative;aspect-ratio:16/9;
  background:linear-gradient(148deg,#0D3833 0%,#14305A 42%,#0D2540 76%,#07192C 100%);
  cursor:pointer;overflow:hidden;
}
.feat-thumb::after{
  content:'';position:absolute;inset:0;
  background:
    radial-gradient(ellipse at 76% 8%,rgba(26,122,110,.36) 0%,transparent 50%),
    radial-gradient(ellipse at 18% 84%,rgba(46,111,163,.22) 0%,transparent 46%),
    radial-gradient(ellipse at 50% 50%,rgba(26,122,110,.06) 0%,transparent 40%),
    repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(0,0,0,.012) 3px,rgba(0,0,0,.012) 4px);
  pointer-events:none;
}
.feat-thumb::before{
  content:'';position:absolute;top:0;left:0;right:0;
  height:64px;
  background:linear-gradient(to bottom,rgba(0,0,0,.28),transparent);
}
.feat-channel{
  position:absolute;top:16px;left:16px;z-index:3;
  display:inline-flex;align-items:center;gap:7px;
  background:rgba(0,0,0,.48);backdrop-filter:blur(10px);
  border-radius:20px;padding:5px 11px 5px 7px;
}
.feat-channel span{font-size:11px;font-weight:500;color:rgba(255,255,255,.68);}
.feat-deco{
  position:absolute;right:30px;top:50%;transform:translateY(-50%);
  color:#fff;opacity:.06;z-index:1;pointer-events:none;
}
.feat-play{
  position:absolute;top:50%;left:50%;
  transform:translate(-50%,-50%);
  width:80px;height:80px;border-radius:50%;
  background:rgba(255,255,255,.97);
  display:grid;place-items:center;
  box-shadow:
    0 8px 36px rgba(0,0,0,.36),
    0 3px 10px rgba(0,0,0,.22),
    0 0 0 14px rgba(255,255,255,.10),
    0 0 0 30px rgba(255,255,255,.045);
  transition:transform .20s,box-shadow .20s;z-index:2;
}
.feat-thumb:hover .feat-play{
  transform:translate(-50%,-50%) scale(1.08);
  box-shadow:
    0 12px 48px rgba(0,0,0,.42),
    0 5px 14px rgba(0,0,0,.26),
    0 0 0 16px rgba(255,255,255,.13),
    0 0 0 36px rgba(255,255,255,.055);
}
.feat-play::after{
  content:'';width:0;height:0;border-style:solid;
  border-width:12px 0 12px 22px;
  border-color:transparent transparent transparent var(--teal);
  margin-left:7px;
}
.feat-thumb-text{
  position:absolute;top:50%;left:30px;
  transform:translateY(-68%);
  max-width:52%;z-index:2;
}
.feat-thumb-eyebrow{
  display:block;
  font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:rgba(58,173,160,.90);margin-bottom:6px;
}
.feat-thumb-title{
  font-family:'Playfair Display',serif;
  font-size:clamp(16px,2.4vw,24px);font-weight:800;color:#fff;line-height:1.18;
  text-shadow:0 2px 18px rgba(0,0,0,.64),0 1px 5px rgba(0,0,0,.44);
}
.feat-caption{
  position:absolute;bottom:0;left:0;right:0;
  padding:52px 30px 16px;
  background:linear-gradient(to top,rgba(6,12,20,.82) 0%,rgba(6,12,20,.44) 52%,transparent 100%);
  z-index:2;
}
.feat-caption p{
  font-family:'Playfair Display',serif;
  font-size:13px;font-weight:600;font-style:italic;
  color:rgba(255,255,255,.54);line-height:1.4;
}
.feat-duration{
  position:absolute;bottom:10px;right:13px;
  background:rgba(0,0,0,.76);color:#fff;
  font-size:11px;font-weight:600;padding:2px 7px;border-radius:3px;z-index:3;
}
.feat-vib{
  padding:20px 26px 22px;
  background:var(--white);border-top:1px solid var(--rule-lt);
  display:flex;align-items:flex-start;justify-content:space-between;gap:16px;
}
.feat-vib-left{flex:1;}
.feat-vib-label{
  font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--teal);display:block;margin-bottom:5px;
}
.feat-vib-title{
  font-family:'Playfair Display',serif;
  font-size:16.5px;font-weight:700;font-style:italic;
  color:var(--ink);line-height:1.35;
}
.feat-vib-right{display:flex;align-items:center;gap:7px;flex-shrink:0;padding-top:2px;}
.feat-yt{width:20px;height:20px;background:#FF0000;border-radius:4px;display:grid;place-items:center;}
.feat-yt::after{
  content:'';width:0;height:0;border-style:solid;
  border-width:4px 0 4px 7px;
  border-color:transparent transparent transparent white;
  margin-left:1px;
}
.feat-vib-handle{font-size:11.5px;font-weight:500;color:var(--quiet);}
.feat-meta{
  max-width:760px;margin:0 auto;padding:18px 48px 0;
  display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;
}
.feat-meta p{font-size:13px;color:var(--quiet);}

/* ══════════════════════════════════════════
   ③ LESSON CATEGORIES — POLISHED
══════════════════════════════════════════ */
.cats-section{
  background:var(--page);
  padding:80px 0;
  border-bottom:1px solid var(--rule);
}
.cats-inner{
  max-width:var(--max);margin:0 auto;padding:0 48px;
}
.cats-header{
  max-width:var(--col);text-align:center;margin:0 auto 52px;
}
.cats-header .eyebrow{margin-bottom:16px;}
.cats-h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(24px,2.8vw,36px);
  font-weight:800;color:var(--ink);
  letter-spacing:-.022em;line-height:1.18;margin-bottom:12px;
}
.cats-sub{font-size:16px;color:var(--body);line-height:1.70;}
.cats-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:1px;
  background:var(--rule);
  border:1px solid var(--rule);
  border-radius:14px;
  overflow:hidden;
}
.cat-item{
  background:var(--white);
  padding:40px 34px 38px;
  transition:background .20s;
}
.cat-item:hover{background:var(--teal-lt);}
.cat-icon{
  width:46px;height:46px;
  background:var(--teal-lt);border-radius:11px;
  display:grid;place-items:center;
  color:var(--teal);margin-bottom:22px;flex-shrink:0;
  transition:background .20s;
}
.cat-item:hover .cat-icon{background:rgba(26,122,110,.14);}
.cat-title{
  font-family:'Playfair Display',serif;
  font-size:17.5px;font-weight:800;color:var(--ink);
  letter-spacing:-.016em;line-height:1.22;margin-bottom:11px;
}
.cat-desc{font-size:14.5px;color:var(--quiet);line-height:1.72;}

/* ══════════════════════════════════════════
   ④ HOW TO USE — POLISHED
══════════════════════════════════════════ */
.howto-section{
  background:var(--white);
  padding:88px 0;
  border-bottom:1px solid var(--rule);
}
.howto-inner{
  max-width:var(--max);margin:0 auto;padding:0 48px;
}
.howto-header{
  max-width:var(--col);text-align:center;margin:0 auto 56px;
}
.howto-header .eyebrow{margin-bottom:16px;}
.howto-h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(24px,2.8vw,36px);
  font-weight:800;color:var(--ink);
  letter-spacing:-.022em;line-height:1.18;margin-bottom:12px;
}
.howto-sub{font-size:16px;color:var(--body);line-height:1.70;}
.howto-steps{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:64px;align-items:start;
  max-width:960px;margin:0 auto;
}
.howto-step{}
.step-num{
  font-family:'Playfair Display',serif;
  font-size:58px;font-weight:800;
  color:var(--ink);opacity:.14;
  line-height:1;margin-bottom:6px;
  letter-spacing:-.04em;
}
.step-rule{
  width:30px;height:2.5px;
  background:linear-gradient(to right,var(--teal),#3AADA0);
  border-radius:1px;margin-bottom:20px;
}
.step-title{
  font-size:17px;font-weight:600;color:var(--ink);
  line-height:1.30;margin-bottom:11px;
}
.step-desc{font-size:14.5px;color:var(--quiet);line-height:1.74;}

/* ══════════════════════════════════════════
   ⑤ RELATED RESOURCES
══════════════════════════════════════════ */
.res-section{
  background:var(--page);
  padding:80px 0;
  border-bottom:1px solid var(--rule);
}
.res-inner{
  max-width:var(--max);margin:0 auto;padding:0 48px;
}
.res-header{
  max-width:var(--col);text-align:center;margin:0 auto 48px;
}
.res-header .eyebrow{margin-bottom:16px;}
.res-h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(22px,2.5vw,32px);
  font-weight:800;color:var(--ink);
  letter-spacing:-.022em;line-height:1.18;margin-bottom:12px;
}
.res-sub{font-size:15px;color:var(--body);line-height:1.70;}
.res-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
}
.res-card{
  background:var(--white);
  border:1px solid var(--rule);
  border-radius:12px;
  padding:32px 30px 30px;
  position:relative;
  display:flex;flex-direction:column;
  transition:box-shadow .22s,border-color .22s;
}
.res-card:hover{
  box-shadow:0 10px 38px rgba(26,62,95,.11);
  border-color:rgba(26,122,110,.22);
}
.res-card-accent{
  position:absolute;top:0;left:30px;
  width:30px;height:3px;
  background:linear-gradient(to right,var(--teal),#3AADA0);
  border-radius:0 0 3px 3px;
}
.res-free-tag{
  position:absolute;top:14px;right:16px;
  background:var(--teal);color:#fff;
  font-size:8.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  padding:3px 9px;border-radius:20px;
}
.res-icon{
  width:42px;height:42px;background:var(--teal-lt);border-radius:9px;
  display:grid;place-items:center;
  color:var(--teal);margin-bottom:16px;margin-top:4px;flex-shrink:0;
}
.res-label{
  font-size:9.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--teal);display:block;margin-bottom:7px;
}
.res-title{
  font-family:'Playfair Display',serif;
  font-size:18px;font-weight:800;color:var(--ink);
  letter-spacing:-.015em;line-height:1.2;margin-bottom:10px;
}
.res-desc{
  font-size:14.5px;color:var(--quiet);
  line-height:1.74;margin-bottom:22px;flex:1;
}

/* ══════════════════════════════════════════
   ⑥ AUTHOR / MISSION NOTE
══════════════════════════════════════════ */
.yt-mission-section{
  background:var(--white);
  padding:80px 0;
  border-bottom:1px solid var(--rule);
}
.yt-mission-inner{
  max-width:780px;margin:0 auto;padding:0 48px;
}
.yt-mission-inner .eyebrow{margin-bottom:20px;}
.mission-h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(22px,2.6vw,32px);
  font-weight:800;color:var(--ink);
  letter-spacing:-.022em;line-height:1.18;margin-bottom:20px;
}
.mission-body{
  font-size:16.5px;color:var(--body);
  line-height:1.82;margin-bottom:20px;
}
.mission-body:last-of-type{margin-bottom:24px;}
.mission-quote{
  border-left:2.5px solid var(--teal);
  padding:16px 0 16px 24px;margin:24px 0 32px;
}
.mission-quote p{
  font-family:'Playfair Display',serif;
  font-size:18px;font-weight:700;font-style:italic;
  color:var(--ink);line-height:1.52;
}
.mission-quote cite{
  font-style:normal;font-size:10.5px;font-weight:600;
  letter-spacing:.11em;text-transform:uppercase;
  color:var(--teal);margin-top:8px;display:block;
}
.mission-tag{
  display:inline-flex;align-items:center;gap:12px;
  background:var(--page);border:1px solid var(--rule-lt);
  border-radius:60px;padding:9px 20px 9px 12px;
}
.mt-avatar{
  width:38px;height:38px;border-radius:50%;
  background:linear-gradient(145deg,#1D4A6A,#1A3E5F);
  display:grid;place-items:center;flex-shrink:0;
}
.mt-avatar span{
  font-family:'Playfair Display',serif;
  font-size:14px;font-weight:800;color:rgba(255,255,255,.85);
}
.mt-name{font-size:13.5px;font-weight:700;color:var(--ink);}
.mt-role{font-size:11px;color:var(--quiet);}

/* ══════════════════════════════════════════
   ⑦ FINAL CTA — dark strip
══════════════════════════════════════════ */
.final-cta{background:var(--teal);padding:80px 0;}
.fct-inner{
  max-width:620px;margin:0 auto;padding:0 48px;text-align:center;
}
.fct-eyebrow{
  display:block;font-size:11px;font-weight:600;
  letter-spacing:.16em;text-transform:uppercase;
  color:rgba(255,255,255,.62);margin-bottom:18px;
}
.fct-title{
  font-family:'Playfair Display',serif;
  font-size:clamp(26px,3.2vw,42px);
  font-weight:800;color:#fff;
  letter-spacing:-.026em;line-height:1.12;margin-bottom:16px;
}
.fct-sub{
  font-size:15.5px;color:rgba(255,255,255,.76);
  line-height:1.72;margin-bottom:36px;
}
.fct-btns{
  display:flex;align-items:center;justify-content:center;
  gap:14px;flex-wrap:wrap;
}



/* =========================================================================
   PAGE SPECIFIC CSS — ABOUT
   ========================================================================= */
/* ══════════════════════════════════════════
   ① ABOUT HERO

   Real author photo left, text right.
   Person-first identity — warm, editorial.
══════════════════════════════════════════ */
.about-hero{
  background:var(--navy-dk);
  padding:72px 0 80px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.ah-inner{
  max-width:var(--max);margin:0 auto;padding:0 48px;
  display:grid;
  grid-template-columns:340px 1fr;
  gap:72px;align-items:center;
}
.about-hero .eyebrow{color:rgba(94,205,194,.88);}

/* Author photo — real portrait */
.ah-photo{
  position:relative;align-self:start;
}
.ah-photo-wrap{
  position:relative;
  width:100%;
  aspect-ratio:3/4;
  border-radius:14px;overflow:hidden;
  background:#0D1F30;
  box-shadow:
    0 24px 72px rgba(26,62,95,.22),
    0 8px 20px rgba(26,62,95,.12),
    0 0 0 1px rgba(255,255,255,.05);
}
/* Real photo */
.ah-photo-img{
  position:absolute;inset:0;
  width:100%;height:100%;
  object-fit:cover;
  object-position:center 18%;
  display:block;
}
/* Gradient vignette — blends photo into name strip */
.ah-photo-vignette{
  position:absolute;inset:0;
  background:linear-gradient(to bottom,
    transparent 45%,
    rgba(8,18,28,.60) 75%,
    rgba(8,18,28,.88) 100%);
  pointer-events:none;
  z-index:1;
}
/* Warm teal tint at top-left — subtle atmosphere */
.ah-photo-tint{
  position:absolute;inset:0;
  background:radial-gradient(ellipse at 0% 0%,rgba(26,122,110,.12) 0%,transparent 55%);
  pointer-events:none;
  z-index:1;
}
/* Name strip overlaid on photo */
.ah-photo-name{
  position:absolute;bottom:0;left:0;right:0;
  padding:20px 22px 20px;
  z-index:2;
}
.ah-photo-name span{
  display:block;
  font-family:'Playfair Display',serif;
  font-size:16.5px;font-weight:800;font-style:italic;
  color:rgba(255,255,255,.90);line-height:1.2;
}
.ah-photo-name small{
  display:block;
  font-size:11px;font-weight:500;letter-spacing:.07em;
  color:rgba(255,255,255,.50);margin-top:5px;
}
/* Teal accent bar */
.ah-photo-bar{
  position:absolute;bottom:0;left:0;
  width:3px;height:52%;
  background:linear-gradient(to bottom,transparent,var(--teal));
  z-index:3;border-radius:0 0 0 14px;
}

/* Text column */
.ah-text .eyebrow{margin-bottom:20px;}
.ah-name{
  font-family:'Playfair Display',serif;
  font-size:clamp(38px,4.8vw,58px);
  font-weight:800;color:#fff;
  letter-spacing:-.035em;line-height:1.06;margin-bottom:14px;
}
.ah-role{
  font-size:14.5px;font-weight:500;color:rgba(200,216,232,.72);
  line-height:1.64;margin-bottom:28px;
  display:block;
  border-left:2px solid rgba(94,205,194,.50);
  padding-left:14px;
}
.ah-intro{
  font-size:17.5px;color:rgba(200,216,232,.86);
  line-height:1.78;margin-bottom:36px;max-width:520px;
}
.ah-ctas{
  display:flex;align-items:center;gap:14px;
  flex-wrap:wrap;margin-bottom:28px;
}
/* Small credential strip */
.ah-cred-strip{
  display:flex;align-items:center;gap:18px;flex-wrap:wrap;
  padding:14px 0 0;border-top:1px solid rgba(255,255,255,.10);
}
.ah-cred-item{
  display:flex;align-items:center;gap:7px;
}
.ah-cred-dot{
  width:4px;height:4px;border-radius:50%;
  background:var(--teal);opacity:.6;flex-shrink:0;
}
.ah-cred-text{
  font-size:12px;font-weight:500;color:rgba(200,216,232,.60);
}

/* ══════════════════════════════════════════
   ② PERSONAL STORY
   Warm editorial prose. No bullets.
   Lead paragraph slightly larger.
══════════════════════════════════════════ */
.story-section{
  background:var(--white);
  padding:88px 0;
  border-bottom:1px solid var(--rule);
}
.st-inner{
  max-width:var(--col);margin:0 auto;padding:0 48px;
}
.st-inner .eyebrow{margin-bottom:20px;}
.st-h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(26px,3.2vw,40px);
  font-weight:800;color:var(--ink);
  letter-spacing:-.028em;line-height:1.14;margin-bottom:32px;
}
/* Lead paragraph — slightly larger, draws reader in */
.st-lead{
  font-size:18.5px;color:var(--body);
  line-height:1.80;margin-bottom:36px;
  font-weight:400;
  text-wrap:pretty;
}
.st-body{
  font-size:17px;color:var(--body);
  line-height:1.86;margin-bottom:36px;
}
.st-body:last-of-type{margin-bottom:0;}

/* Pull quote */
.pull-quote{
  position:relative;
  margin:48px 0;
  padding:28px 0 28px 28px;
  border-left:3px solid var(--teal);
}
.pull-quote p{
  font-family:'Playfair Display',serif;
  font-size:clamp(20px,2.5vw,25px);
  font-weight:700;font-style:italic;
  color:var(--ink);line-height:1.46;
}
.pull-quote cite{
  display:block;margin-top:12px;
  font-style:normal;font-size:11px;
  font-weight:600;letter-spacing:.12em;text-transform:uppercase;
  color:var(--teal);
}

/* ══════════════════════════════════════════
   ③ MISSION
   Text left, OYM Learning Tree graphic right.
══════════════════════════════════════════ */
.mission-section{
  background:var(--page);
  padding:88px 0;
  border-bottom:1px solid var(--rule);
}
.ms-inner{
  max-width:var(--max);margin:0 auto;padding:0 48px;
  display:grid;
  grid-template-columns:1fr 360px;
  gap:72px;align-items:center;
}
.ms-text .eyebrow{margin-bottom:20px;}
.ms-h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(26px,3vw,38px);
  font-weight:800;color:var(--ink);
  letter-spacing:-.026em;line-height:1.14;margin-bottom:26px;
}
.ms-body{
  font-size:16.5px;color:var(--body);
  line-height:1.84;margin-bottom:24px;
}
.ms-body:last-of-type{margin-bottom:32px;}
.ms-note{
  display:inline-flex;align-items:center;gap:9px;
  background:var(--teal-lt);border:1px solid rgba(26,122,110,.18);
  border-radius:6px;padding:11px 18px;
  font-size:13.5px;font-weight:600;color:var(--teal);
}
/* OYM graphic */
.ms-graphic{position:relative;}
.ms-graphic-wrap{
  border-radius:14px;overflow:hidden;
  border:1px solid var(--rule);
  box-shadow:
    0 16px 52px rgba(26,62,95,.10),
    0 4px 12px rgba(26,62,95,.05);
}
.ms-graphic-wrap img{width:100%;height:auto;display:block;}
.ms-graphic-caption{
  margin-top:12px;
  font-size:11.5px;font-weight:500;
  color:var(--quiet);text-align:center;letter-spacing:.02em;
}

/* ══════════════════════════════════════════
   ④ CREDENTIALS — 4-col clean strip
   Flat professional icons, improved readability.
══════════════════════════════════════════ */
.creds-section{
  background:var(--white);
  padding:68px 0;
  border-bottom:1px solid var(--rule);
}
.creds-inner{
  max-width:var(--max);margin:0 auto;padding:0 48px;
}
.creds-header{
  max-width:540px;margin:0 auto 52px;text-align:center;
}
.creds-header .eyebrow{margin-bottom:14px;}
.creds-header p{font-size:15.5px;color:var(--quiet);line-height:1.70;}
.creds-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:1px;
  background:var(--rule);
  border:1px solid var(--rule);
  border-radius:14px;overflow:hidden;
}
.cred-item{
  background:var(--white);
  padding:36px 30px 32px;
  display:flex;flex-direction:column;
}
.cred-icon{
  width:44px;height:44px;border-radius:10px;
  background:var(--teal-lt);
  display:grid;place-items:center;
  color:var(--teal);margin-bottom:20px;flex-shrink:0;
}
.cred-label{
  font-size:9px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  color:var(--teal);display:block;margin-bottom:8px;
}
.cred-title{
  font-family:'Playfair Display',serif;
  font-size:16px;font-weight:800;color:var(--ink);
  line-height:1.24;margin-bottom:8px;
}
.cred-sub{
  font-size:13.5px;color:var(--quiet);line-height:1.70;
  margin-top:auto;padding-top:12px;
}

/* ══════════════════════════════════════════
   ⑤ TEACHING PHILOSOPHY
   Text left, Learning Tree card right.
   Trimmed prose — more scannable.
══════════════════════════════════════════ */
.phil-section{
  background:var(--page);
  padding:88px 0;
  border-bottom:1px solid var(--rule);
}
.ph-inner{
  max-width:var(--max);margin:0 auto;padding:0 48px;
  display:grid;
  grid-template-columns:1fr 340px;
  gap:72px;align-items:start;
}
.ph-text .eyebrow{margin-bottom:20px;}
.ph-h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(24px,2.8vw,36px);
  font-weight:800;color:var(--ink);
  letter-spacing:-.024em;line-height:1.16;margin-bottom:26px;
}
.ph-body{
  font-size:16.5px;color:var(--body);
  line-height:1.84;margin-bottom:24px;
}
.ph-body:last-of-type{margin-bottom:0;}

/* Learning Tree card */
.lt-aside{
  background:var(--white);
  border:1px solid var(--rule);
  border-top:3px solid var(--teal);
  border-radius:12px;padding:30px 28px 26px;
  position:sticky;top:88px;
}
.lt-aside-label{
  font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--teal);display:block;margin-bottom:12px;
}
.lt-aside-title{
  font-family:'Playfair Display',serif;
  font-size:17px;font-weight:800;color:var(--ink);
  letter-spacing:-.016em;line-height:1.22;margin-bottom:22px;
}
.lt-group{margin-bottom:20px;}
.lt-group:last-child{margin-bottom:0;}
.lt-group-label{
  font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  color:var(--quiet);margin-bottom:10px;
}
.lt-chips{display:flex;flex-wrap:wrap;gap:6px;}
.lt-chip{
  display:inline-block;
  padding:5px 11px;
  background:var(--teal-lt);
  border:1px solid rgba(26,122,110,.20);
  border-radius:5px;
  font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  color:var(--teal);
}
.lt-chip--root{
  background:rgba(26,62,95,.06);
  border-color:rgba(26,62,95,.14);
  color:var(--navy);
}
.lt-divider{border:none;border-top:1px solid var(--rule-lt);margin:20px 0;}
.lt-note{
  font-size:13px;color:var(--quiet);line-height:1.65;
}

/* ══════════════════════════════════════════
   ⑥ RELATED RESOURCES — 3-col secondary
══════════════════════════════════════════ */
.res-section{
  background:var(--white);
  padding:80px 0;
  border-bottom:1px solid var(--rule);
}
.res-inner{
  max-width:var(--max);margin:0 auto;padding:0 48px;
}
.res-header{
  max-width:640px;text-align:center;margin:0 auto 48px;
}
.res-header .eyebrow{margin-bottom:16px;}
.res-h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(22px,2.5vw,32px);
  font-weight:800;color:var(--ink);
  letter-spacing:-.022em;line-height:1.18;margin-bottom:12px;
}
.res-sub{font-size:15.5px;color:var(--body);line-height:1.70;}
.res-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
}
.res-card{
  background:var(--page);
  border:1px solid var(--rule);
  border-radius:12px;
  padding:32px 30px 30px;
  position:relative;
  display:flex;flex-direction:column;
  transition:box-shadow .22s,border-color .22s;
}
.res-card:hover{
  box-shadow:0 10px 38px rgba(26,62,95,.11);
  border-color:rgba(26,122,110,.22);
}
.res-card-accent{
  position:absolute;top:0;left:30px;
  width:30px;height:3px;
  background:linear-gradient(to right,var(--teal),#3AADA0);
  border-radius:0 0 3px 3px;
}
.res-free-tag{
  position:absolute;top:14px;right:16px;
  background:var(--teal);color:#fff;
  font-size:8.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  padding:3px 9px;border-radius:20px;
}
.res-icon{
  width:42px;height:42px;background:var(--teal-lt);border-radius:9px;
  display:grid;place-items:center;
  color:var(--teal);margin-bottom:16px;margin-top:4px;flex-shrink:0;
}
.res-label{
  font-size:9.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--teal);display:block;margin-bottom:7px;
}
.res-title{
  font-family:'Playfair Display',serif;
  font-size:18px;font-weight:800;color:var(--ink);
  letter-spacing:-.015em;line-height:1.2;margin-bottom:10px;
}
.res-desc{
  font-size:14.5px;color:var(--quiet);
  line-height:1.74;margin-bottom:22px;flex:1;
}

/* ══════════════════════════════════════════
   ⑦ FINAL CTA — dark strip
══════════════════════════════════════════ */
.final-cta{background:var(--teal);padding:80px 0;}
.fct-inner{
  max-width:640px;margin:0 auto;padding:0 48px;text-align:center;
}
.fct-eyebrow{
  display:block;font-size:11px;font-weight:600;
  letter-spacing:.16em;text-transform:uppercase;
  color:rgba(255,255,255,.62);margin-bottom:18px;
}
.fct-title{
  font-family:'Playfair Display',serif;
  font-size:clamp(26px,3.2vw,42px);
  font-weight:800;color:#fff;
  letter-spacing:-.026em;line-height:1.12;margin-bottom:16px;
}
.fct-sub{
  font-size:15.5px;color:rgba(255,255,255,.76);
  line-height:1.72;margin-bottom:36px;
}
.fct-btns{
  display:flex;align-items:center;justify-content:center;
  gap:12px;flex-wrap:wrap;
}



/* =========================================================================
   PAGE SPECIFIC CSS — CONTACT
   ========================================================================= */
/* ══════════════════════════════════════════
   ① CONTACT HERO

   Centered — editorial, warm, purposeful.
   Distinct from all other pages (no photo,
   no book, no video — just clear intent).
══════════════════════════════════════════ */
.contact-hero{
  background:var(--navy-dk);
  padding:80px 0 72px;
  border-bottom:1px solid rgba(255,255,255,.08);
  text-align:center;
}
.ch-inner{
  max-width:600px;margin:0 auto;padding:0 48px;
}

/* OYM brand mark icon */
.ch-mark{
  display:inline-flex;align-items:center;justify-content:center;
  width:52px;height:52px;border-radius:12px;
  background:rgba(94,205,194,.12);
  border:1px solid rgba(94,205,194,.22);
  margin:0 auto 28px;
  color:var(--teal-hi);
}
.ch-eyebrow{
  display:flex;justify-content:center;
  margin-bottom:18px;
}
.ch-eyebrow span{
  font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  color:rgba(94,205,194,.88);
}
.ch-title{
  font-family:'Playfair Display',serif;
  font-size:clamp(36px,5.2vw,62px);
  font-weight:800;color:#fff;
  letter-spacing:-.038em;line-height:1.04;
  margin-bottom:20px;
}
.ch-sub{
  font-size:17.5px;color:rgba(200,216,232,.84);
  line-height:1.76;
  max-width:480px;margin-left:auto;margin-right:auto;
}
.ch-rule{
  width:36px;height:2px;
  background:rgba(94,205,194,.55);
  border-radius:2px;
  margin:30px auto 0;
}

/* ══════════════════════════════════════════
   ② CONTACT MAIN — 2-col: form left, aside right
══════════════════════════════════════════ */
.contact-main{
  background:var(--page);
  padding:80px 0;
  border-bottom:1px solid var(--rule);
}
.cm-inner{
  max-width:var(--max);margin:0 auto;padding:0 48px;
  display:grid;
  grid-template-columns:1fr 320px;
  gap:48px;align-items:start;
}

/* ── Contact form ── */
.contact-form{
  background:var(--white);
  border:1px solid var(--rule);
  border-radius:14px;
  padding:40px 40px 36px;
}
.cf-header{
  margin-bottom:30px;
  padding-bottom:24px;
  border-bottom:1px solid var(--rule-lt);
}
.cf-header .eyebrow{margin-bottom:10px;}
.cf-header h2{
  font-family:'Playfair Display',serif;
  font-size:24px;font-weight:800;color:var(--ink);
  letter-spacing:-.022em;line-height:1.18;
}

/* Form grid — 2-col for name/email, full-width for rest */
.cf-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
  /* No bottom margin — cf-submit has its own top margin */
}
.cf-group{
  display:flex;flex-direction:column;gap:8px;
}
.cf-group--full{grid-column:1 / -1;}

/* Labels — small, clear, uppercase */
.cf-label{
  font-size:10.5px;font-weight:700;
  letter-spacing:.13em;text-transform:uppercase;
  color:var(--quiet);line-height:1;
}

/* All form controls share the same base */
.cf-input,
.cf-select,
.cf-textarea{
  font-family:'Inter',sans-serif;
  font-size:15.5px;font-weight:400;
  color:var(--body);
  background:var(--page);
  border:1.5px solid var(--rule);
  border-radius:8px;
  padding:14px 16px;
  width:100%;
  transition:border-color .18s,box-shadow .18s,background .18s;
  outline:none;
  -webkit-appearance:none;appearance:none;
  line-height:1.5;
}
.cf-input::placeholder,
.cf-textarea::placeholder{
  color:var(--faint);
}
.cf-input:focus,
.cf-select:focus,
.cf-textarea:focus{
  border-color:var(--teal);
  box-shadow:0 0 0 3px rgba(26,122,110,.10);
  background:var(--white);
}
/* Hover state for unfocused fields */
.cf-input:hover:not(:focus),
.cf-select:hover:not(:focus),
.cf-textarea:hover:not(:focus){
  border-color:#B8CEDF;
}

/* Select wrapper — custom arrow */
.cf-select-wrap{position:relative;}
.cf-select{
  padding-right:40px;cursor:pointer;
}
.cf-select-arrow{
  position:absolute;right:14px;top:50%;transform:translateY(-50%);
  pointer-events:none;color:var(--quiet);
  display:flex;align-items:center;
}

/* Textarea — resizable, comfortable height */
.cf-textarea{
  resize:vertical;
  min-height:148px;
  line-height:1.72;
}

/* Submit row — button + note side by side, wraps on mobile */
.cf-submit{
  margin-top:28px;
  display:flex;align-items:center;
  gap:16px;flex-wrap:wrap;
}
.cf-submit-btn{
  padding:14px 34px;font-size:15px;
  flex-shrink:0;
}
.cf-note{
  font-size:12.5px;color:var(--quiet);
  line-height:1.58;
}

/* ── Contact aside ── */
.contact-aside{
  position:sticky;top:88px;
  display:flex;flex-direction:column;gap:14px;
}

/* Details card */
.ca-card{
  background:var(--white);
  border:1px solid var(--rule);
  border-top:3px solid var(--teal);
  border-radius:12px;
  padding:26px 24px 22px;
}
.ca-label{
  font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--teal);display:block;margin-bottom:10px;
}
.ca-title{
  font-family:'Playfair Display',serif;
  font-size:16px;font-weight:800;color:var(--ink);
  letter-spacing:-.014em;line-height:1.22;margin-bottom:18px;
}
.ca-detail-item{
  display:flex;align-items:flex-start;gap:10px;
  margin-bottom:14px;
}
.ca-detail-item:last-child{margin-bottom:0;}
.ca-icon{
  width:32px;height:32px;border-radius:7px;
  background:var(--teal-lt);
  display:grid;place-items:center;
  color:var(--teal);flex-shrink:0;
  margin-top:2px;
}
.ca-detail-text{
  display:flex;flex-direction:column;gap:3px;
  min-width:0; /* allows text to wrap */
}
.ca-detail-meta{
  font-size:9.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  color:var(--faint);
}
.ca-detail-val{
  font-size:13.5px;font-weight:500;color:var(--body);
  line-height:1.48;
  overflow-wrap:break-word;word-break:break-word;
}
.ca-detail-val a{
  color:var(--body);transition:color .15s;
}
.ca-detail-val a:hover{color:var(--teal);}

/* YouTube handles */
.ca-yt-row{
  display:flex;align-items:center;gap:7px;
  margin-bottom:5px;
}
.ca-yt-row:last-child{margin-bottom:0;}
.ca-yt-badge{
  width:15px;height:15px;background:#FF0000;
  border-radius:3px;display:grid;place-items:center;flex-shrink:0;
}
.ca-yt-badge::after{
  content:'';width:0;height:0;border-style:solid;
  border-width:2.8px 0 2.8px 5px;
  border-color:transparent transparent transparent white;
  margin-left:1px;
}
.ca-yt-handle{
  font-size:12.5px;font-weight:500;color:var(--body);
  overflow-wrap:break-word;word-break:break-all;
}

/* Response-time card */
.ca-note-card{
  background:var(--teal-lt);
  border:1px solid rgba(26,122,110,.16);
  border-radius:10px;
  padding:14px 16px;
  display:flex;align-items:flex-start;gap:10px;
}
.ca-note-icon{color:var(--teal);flex-shrink:0;margin-top:2px;}
.ca-note-text{
  font-size:13px;color:var(--quiet);line-height:1.60;
}
.ca-note-text strong{color:var(--teal);font-weight:600;}

/* ══════════════════════════════════════════
   ③ INQUIRY GUIDANCE — 3-col
   Stays 3-col until 680px. Tablet-friendly.
══════════════════════════════════════════ */
.inquiry-section{
  background:var(--white);
  padding:72px 0;
  border-bottom:1px solid var(--rule);
}
.inq-inner{
  max-width:var(--max);margin:0 auto;padding:0 48px;
}
.inq-header{
  max-width:540px;text-align:center;margin:0 auto 46px;
}
.inq-header .eyebrow{margin-bottom:14px;}
.inq-h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(22px,2.6vw,32px);
  font-weight:800;color:var(--ink);
  letter-spacing:-.022em;line-height:1.18;
}
.inq-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
}
.inq-card{
  background:var(--page);
  border:1px solid var(--rule);
  border-top:3px solid var(--teal);
  border-radius:12px;
  padding:28px 26px 26px;
  display:flex;flex-direction:column;
  transition:box-shadow .20s,border-color .20s;
}
.inq-card:hover{
  box-shadow:0 8px 32px rgba(26,62,95,.09);
  border-color:rgba(26,122,110,.20);
}
.inq-icon{
  width:42px;height:42px;border-radius:9px;
  background:var(--teal-lt);
  display:grid;place-items:center;
  color:var(--teal);margin-bottom:16px;flex-shrink:0;
}
.inq-label{
  font-size:9px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  color:var(--teal);display:block;margin-bottom:7px;
}
.inq-title{
  font-family:'Playfair Display',serif;
  font-size:17px;font-weight:800;color:var(--ink);
  letter-spacing:-.014em;line-height:1.22;margin-bottom:10px;
}
.inq-desc{
  font-size:14.5px;color:var(--quiet);line-height:1.72;
  margin-bottom:20px;flex:1;
}
.inq-link{
  display:inline-flex;align-items:center;gap:6px;
  font-size:13px;font-weight:600;color:var(--teal);
  border-bottom:1px solid transparent;
  transition:border-color .15s,gap .14s;
  width:fit-content;
}
.inq-link:hover{border-color:var(--teal);gap:9px;}
.inq-link::after{content:'\2192';}

/* ══════════════════════════════════════════
   ④ RESOURCE REMINDER — 3-col
   Stays 3-col until 680px. Tablet-friendly.
══════════════════════════════════════════ */
.res-section{
  background:var(--page);
  padding:80px 0;
  border-bottom:1px solid var(--rule);
}
.res-inner{
  max-width:var(--max);margin:0 auto;padding:0 48px;
}
.res-header{
  max-width:640px;text-align:center;margin:0 auto 48px;
}
.res-header .eyebrow{margin-bottom:16px;}
.res-h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(22px,2.5vw,32px);
  font-weight:800;color:var(--ink);
  letter-spacing:-.022em;line-height:1.18;margin-bottom:12px;
}
.res-sub{font-size:15.5px;color:var(--body);line-height:1.70;}
.res-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
}
.res-card{
  background:var(--white);
  border:1px solid var(--rule);
  border-radius:12px;
  padding:32px 30px 30px;
  position:relative;
  display:flex;flex-direction:column;
  transition:box-shadow .22s,border-color .22s;
}
.res-card:hover{
  box-shadow:0 10px 38px rgba(26,62,95,.11);
  border-color:rgba(26,122,110,.22);
}
.res-card-accent{
  position:absolute;top:0;left:30px;
  width:30px;height:3px;
  background:linear-gradient(to right,var(--teal),#3AADA0);
  border-radius:0 0 3px 3px;
}
.res-free-tag{
  position:absolute;top:14px;right:16px;
  background:var(--teal);color:#fff;
  font-size:8.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  padding:3px 9px;border-radius:20px;
}
.res-icon{
  width:42px;height:42px;background:var(--teal-lt);border-radius:9px;
  display:grid;place-items:center;
  color:var(--teal);margin-bottom:16px;margin-top:4px;flex-shrink:0;
}
.res-label{
  font-size:9.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--teal);display:block;margin-bottom:7px;
}
.res-title{
  font-family:'Playfair Display',serif;
  font-size:18px;font-weight:800;color:var(--ink);
  letter-spacing:-.015em;line-height:1.2;margin-bottom:10px;
}
.res-desc{
  font-size:14.5px;color:var(--quiet);
  line-height:1.74;margin-bottom:22px;flex:1;
}

/* ══════════════════════════════════════════
   ⑤ FINAL CTA — dark strip, identical to all pages
══════════════════════════════════════════ */
.final-cta{background:var(--teal);padding:80px 0;}
.fct-inner{
  max-width:620px;margin:0 auto;padding:0 48px;text-align:center;
}
.fct-eyebrow{
  display:block;font-size:11px;font-weight:600;
  letter-spacing:.16em;text-transform:uppercase;
  color:rgba(255,255,255,.62);margin-bottom:18px;
}
.fct-title{
  font-family:'Playfair Display',serif;
  font-size:clamp(26px,3.2vw,42px);
  font-weight:800;color:#fff;
  letter-spacing:-.026em;line-height:1.12;margin-bottom:16px;
}
.fct-sub{
  font-size:15.5px;color:rgba(255,255,255,.76);
  line-height:1.72;margin-bottom:36px;
}
.fct-btns{
  display:flex;align-items:center;justify-content:center;
  gap:12px;flex-wrap:wrap;
}



/* ══════════════════════════════════════════
   ⑨ FOOTER
══════════════════════════════════════════ */
.site-footer{background:#0E2030;}
.footer-strip{
  border-bottom:1px solid rgba(255,255,255,.07);
  padding:42px 48px;max-width:var(--max);margin:0 auto;
  display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;
}
.footer-strip p{
  font-family:'Playfair Display',serif;
  font-size:18px;font-style:italic;font-weight:600;
  color:rgba(255,255,255,.48);letter-spacing:-.01em;line-height:1.4;max-width:420px;
}
.footer-strip-cta{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--teal);color:#fff;
  font-size:13.5px;font-weight:600;
  padding:11px 24px;border-radius:5px;
  transition:background .16s;white-space:nowrap;flex-shrink:0;
}
.footer-strip-cta:hover{background:var(--teal-dk);}
.footer-grid{
  max-width:var(--max);margin:0 auto;
  padding:48px 48px 44px;
  display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:48px;
}
.fg-brand .footer-logo{
  font-family:'Playfair Display',serif;
  font-size:16px;font-weight:800;
  color:rgba(255,255,255,.70);display:block;margin-bottom:12px;
}
.fg-brand .footer-logo em{color:#3AADA0;font-style:normal;}
.fg-brand p{
  font-size:12.5px;color:rgba(255,255,255,.52);
  line-height:1.75;max-width:200px;margin-bottom:22px;
}
.yt-handle{display:flex;align-items:center;gap:8px;margin-bottom:8px;}
.yt-badge{
  width:17px;height:17px;background:#FF0000;
  border-radius:3px;display:grid;place-items:center;flex-shrink:0;
}
.yt-badge::after{
  content:'';width:0;height:0;border-style:solid;
  border-width:3.5px 0 3.5px 6.5px;
  border-color:transparent transparent transparent white;
  margin-left:1px;
}
.yt-handle span{font-size:12px;color:rgba(255,255,255,.56);}
.fg-col h5{
  font-size:9px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  color:#3AADA0;margin-bottom:18px;
}
.fg-col ul{list-style:none;}
.fg-col li{margin-bottom:9px;}
.fg-col li a{font-size:13px;color:rgba(255,255,255,.58);transition:color .15s;}
.fg-col li a:hover{color:rgba(255,255,255,.82);}
.fg-contact-item{
  display:flex;align-items:flex-start;gap:8px;margin-bottom:10px;
}
.fg-contact-item .ico{color:rgba(255,255,255,.44);margin-top:3px;flex-shrink:0;line-height:1;}
.fg-contact-item a{font-size:12.5px;color:rgba(255,255,255,.58);line-height:1.55;transition:color .15s;}
.fg-contact-item a:hover{color:rgba(255,255,255,.82);}
.footer-base{
  border-top:1px solid rgba(255,255,255,.07);
  max-width:var(--max);margin:0 auto;padding:18px 48px;
  display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;
}
.footer-base p{font-size:11.5px;color:rgba(255,255,255,.42);}
.footer-base-links{display:flex;gap:18px;}
.footer-base-links a{font-size:11.5px;color:rgba(255,255,255,.42);transition:color .15s;}
.footer-base-links a:hover{color:rgba(255,255,255,.62);}

/* ══════════════════════════════════════════
   RESPONSIVE — Tablet 900px
══════════════════════════════════════════ */


/* ══════════════════════════════════════════
   RESPONSIVE — Mobile 640px
══════════════════════════════════════════ */


/* ══════════════════════════════════════════
   RESPONSIVE — 430px / 390px fine-tuning
══════════════════════════════════════════ */





/* =========================================================================
   WORDPRESS / ACTIVE NAVIGATION / ACCESSIBILITY ADJUSTMENTS
   ========================================================================= */

/* Skip link accessibility */
.oym-skip-link {
  position: absolute;
  top: -100px;
  left: 20px;
  background: var(--teal);
  color: #fff;
  padding: 10px 20px;
  z-index: 99999;
  border-radius: 4px;
  font-weight: 600;
  transition: top 0.2s;
}
.oym-skip-link:focus {
  top: 10px;
}

/* Admin bar offset when logged in */
body.admin-bar .site-header {
  top: 32px;
}
@media (max-width: 782px) {
  body.admin-bar .site-header {
    top: 46px;
  }
}

/* Active menu item highlighting */
.nav-links a.current-menu-item,
.nav-links a.current_page_item {
  color: var(--ink) !important;
  font-weight: 600 !important;
}

/* Mobile menu additions */
.oym-menu-toggle {
  display: none;
  background: transparent;
  border: none;
  color: var(--ink);
  cursor: pointer;
  padding: 8px;
  z-index: 1000;
}
@media (max-width: 900px) {
  .oym-menu-toggle {
    display: block;
  }
  .nav-links {
    display: none;
  }
  .nav-links.oym-nav__list--open {
    display: flex;
    flex-direction: column;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background: rgba(249, 249, 249, 0.98);
    backdrop-filter: blur(8px);
    border-bottom: 1px solid var(--rule);
    padding: 20px;
    gap: 16px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.05);
  }
  .nav-links.oym-nav__list--open li {
    width: 100%;
    text-align: center;
  }
}

/* Sticky scrolled header class */
.site-header.oym-header--scrolled {
  background: rgba(255, 255, 255, 0.95);
  box-shadow: 0 2px 10px rgba(0,0,0,0.06);
}


/* =========================================================================
   CONSOLIDATED MEDIA QUERIES
   ========================================================================= */

@media (max-width:900px) {

/* --- From OYM_JamesClear_v2.html --- */


  .header-inner{padding:0 28px;}
  .nav-links{display:none;}

  /* Hero */
  .hero{
    grid-template-columns:1fr;
    gap:44px;padding:72px 32px 64px;
  }
  .hero-book-col{order:2;}
  .hero-text{order:1;}
  .hero-sub{max-width:100%;}
  .book-ambient{width:360px;}
  .book-cover{width:360px;}
  .hero-book-col::before{width:420px;height:420px;}

  /* Trust bar */
  .trust-bar{padding:18px 32px;}
  .trust-bar-inner{gap:24px;}
  .trust-sep{display:none;}

  /* Approach */
  .approach-section{padding:72px 0;}
  .approach-inner{
    grid-template-columns:1fr;gap:40px;padding:0 32px;
  }

  /* Inside */
  .inside-section{padding:72px 0;}
  .inside-inner{padding:0 32px;}
  .chapters-grid{grid-template-columns:1fr 1fr;}

  /* Audience */
  .audience-section{padding:72px 0;}
  .audience-inner{padding:0 32px;}
  .audience-grid{grid-template-columns:1fr;gap:14px;}

  /* About */
  .about-section{padding:72px 0;}
  .about-inner{
    grid-template-columns:1fr;gap:40px;padding:0 32px;
  }
  .about-photo-wrap{max-width:300px;}

  /* CTA */
  .cta-band{padding:64px 0;}
  .cta-inner{padding:0 32px;}

  /* Footer */
  .footer-strip{padding:36px 32px;}
  .footer-grid{grid-template-columns:1fr 1fr;padding:40px 32px 36px;gap:32px;}
  .fg-brand{grid-column:1 / -1;}
  .footer-base{padding:16px 32px;}

/* --- From about.html --- */


  .header-inner{padding:0 28px;}
  .nav-links{display:none;}

  /* Hero */
  .about-hero{padding:56px 0 64px;}
  .ah-inner{grid-template-columns:1fr;gap:36px;padding:0 32px;}
  .ah-photo{width:100%;max-width:360px;margin:0 auto;}
  .ah-name{font-size:clamp(36px,6vw,50px);}
  .ah-intro{max-width:100%;}

  /* Story */
  .story-section{padding:64px 0;}
  .st-inner{padding:0 32px;}

  /* Mission */
  .mission-section{padding:64px 0;}
  .ms-inner{grid-template-columns:1fr;gap:40px;padding:0 32px;}
  .ms-graphic{max-width:380px;margin:0 auto;}

  /* Credentials */
  .creds-section{padding:52px 0;}
  .creds-inner{padding:0 32px;}
  .creds-grid{grid-template-columns:repeat(2,1fr);}

  /* Philosophy */
  .phil-section{padding:64px 0;}
  .ph-inner{grid-template-columns:1fr;gap:40px;padding:0 32px;}
  .lt-aside{position:static;}

  /* Resources */
  .res-section{padding:64px 0;}
  .res-inner{padding:0 32px;}
  .res-grid{grid-template-columns:1fr;gap:14px;}

  /* Footer */
  .footer-strip{padding:36px 32px;}
  .footer-grid{grid-template-columns:1fr 1fr;padding:40px 32px 36px;gap:32px;}
  .fg-brand{grid-column:1 / -1;}
  .footer-base{padding:16px 32px;}
  .fct-inner{padding:0 32px;}

/* --- From book.html --- */


  /* Header */
  .header-inner{padding:0 28px;}
  .nav-links{display:none;}

  /* Book hero */
  .book-hero{padding:48px 0 56px;}
  .book-hero-inner{
    grid-template-columns:1fr;gap:36px;padding:0 32px;
  }
  .bh-visual{order:1;}
  .bh-text{order:2;}
  .bh-book-wrap{width:260px;}
  .bh-book-wrap .book-cover{width:260px;}
  .bh-meta{max-width:100%;}
  .bh-sub{max-width:100%;}

  /* Overview */
  .overview-inner{padding:0 32px;}

  /* Learn section */
  .learn-inner{padding:0 32px;}
  .learn-2col{grid-template-columns:1fr;gap:40px;}
  .glance-card{position:static;}

  /* Inside section */
  .inside-inner{grid-template-columns:1fr;gap:40px;padding:0 32px;}

  /* Who for */
  .for-inner{padding:0 32px;}
  .for-header{margin-bottom:36px;}

  /* Resources */
  .resources-inner{padding:0 32px;}
  .resources-grid{grid-template-columns:1fr;gap:14px;}

  /* Author */
  .author-inner{grid-template-columns:1fr;gap:32px;padding:0 32px;}
  .author-photo{width:100%;max-width:260px;margin:0 auto;}

  /* CTA */
  .final-cta-inner{padding:0 32px;}

  /* Footer */
  .footer-strip{padding:36px 32px;}
  .footer-grid{grid-template-columns:1fr 1fr;padding:40px 32px 36px;gap:32px;}
  .fg-brand{grid-column:1 / -1;}
  .footer-base{padding:16px 32px;}

/* --- From contact.html --- */


  .header-inner{padding:0 28px;}
  .nav-links{display:none;}

  /* Hero */
  .contact-hero{padding:64px 0 56px;}
  .ch-inner{padding:0 32px;}

  /* Contact main — stack form above aside */
  .contact-main{padding:64px 0;}
  .cm-inner{
    grid-template-columns:1fr;
    gap:28px;padding:0 32px;
  }
  .contact-aside{position:static;}

  /* Inquiry and resources — stay 3-col on tablet */
  .inquiry-section{padding:56px 0;}
  .inq-inner{padding:0 32px;}

  .res-section{padding:64px 0;}
  .res-inner{padding:0 32px;}

  /* Footer */
  .footer-strip{padding:36px 32px;}
  .footer-grid{grid-template-columns:1fr 1fr;padding:40px 32px 36px;gap:32px;}
  .fg-brand{grid-column:1 / -1;}
  .footer-base{padding:16px 32px;}
  .fct-inner{padding:0 32px;}

/* --- From youtube.html --- */


  .header-inner{padding:0 28px;}
  .nav-links{display:none;}

  .yt-hero{padding:56px 0 64px;}
  .yh-inner{grid-template-columns:1fr;gap:40px;padding:0 32px;}
  .yh-sub{max-width:100%;}
  .yh-meta{max-width:100%;}

  .feat-section{padding:64px 0;}
  .feat-header{padding:0 32px;}
  .feat-card-wrap{padding:0 32px;}
  .feat-meta{padding:14px 32px 0;}

  .cats-section{padding:64px 0;}
  .cats-inner{padding:0 32px;}
  .cats-header{padding:0 32px;margin-bottom:36px;}
  .cats-grid{grid-template-columns:repeat(2,1fr);}

  .howto-section{padding:64px 0;}
  .howto-inner{padding:0 32px;}
  .howto-header{padding:0 32px;}
  .howto-steps{grid-template-columns:1fr;gap:44px;max-width:560px;}

  .res-section{padding:64px 0;}
  .res-inner{padding:0 32px;}
  .res-header{padding:0 32px;}
  .res-grid{grid-template-columns:1fr;gap:14px;}

  .yt-mission-section{padding:64px 0;}
  .yt-mission-inner{padding:0 32px;}

  .fct-inner{padding:0 32px;}

  .footer-strip{padding:36px 32px;}
  .footer-grid{grid-template-columns:1fr 1fr;padding:40px 32px 36px;gap:32px;}
  .fg-brand{grid-column:1 / -1;}
  .footer-base{padding:16px 32px;}

}

@media (max-width:680px) {

/* --- From contact.html --- */


  .inq-grid{grid-template-columns:1fr;gap:14px;}
  .res-grid{grid-template-columns:1fr;gap:14px;}

}

@media (max-width:640px) {

/* --- From OYM_JamesClear_v2.html --- */


  .header-inner{height:56px;padding:0 20px;}
  .header-cta{display:none;}

  /* Hero */
  .hero{padding:52px 20px 56px;gap:36px;}
  .hero-headline{
    font-size:clamp(34px,8.8vw,48px);
    line-height:1.08;letter-spacing:-.030em;margin-bottom:20px;
  }
  .hero-sub{font-size:16px;line-height:1.72;margin-bottom:28px;}
  .hero-ctas{flex-direction:column;align-items:stretch;gap:10px;}
  .btn{width:100%;justify-content:center;padding:14px 22px;}
  .book-ambient{width:min(310px,80vw);}
  .book-cover{width:min(310px,80vw);}
  .hero-book-col::before{width:300px;height:300px;}
  .bc-main-title{font-size:clamp(20px,5.5vw,30px);}
  .bc-badge{width:70px;height:70px;top:-14px;right:-14px;}
  .bc-badge-mid{font-size:14px;}

  /* Trust bar */
  .trust-bar{padding:16px 20px;}
  .trust-bar-inner{gap:14px;justify-content:flex-start;}
  .trust-item{font-size:12px;}

  /* Approach */
  .approach-section{padding:56px 0;}
  .approach-inner{padding:0 20px;gap:32px;}
  .approach-h2{font-size:clamp(22px,6.5vw,34px);}
  .approach-body{font-size:15.5px;}

  /* Inside */
  .inside-section{padding:56px 0;}
  .inside-inner{padding:0 20px;}
  .inside-header{margin-bottom:32px;}
  .inside-h2{font-size:clamp(22px,6.5vw,32px);}
  .chapters-grid{
    grid-template-columns:1fr;
    gap:10px;
    background:transparent;
    border:none;
    border-radius:0;
  }
  .chapter-cell{
    border-radius:9px;
    border:1px solid var(--rule);
    padding:22px 20px 20px;
  }
  .chapter-cell--summary{
    border-radius:9px;
    padding:22px 20px;
  }
  .chapter-film{font-size:16.5px;margin-bottom:6px;}
  .chapter-skill{font-size:13px;line-height:1.60;}

  /* Audience */
  .audience-section{padding:56px 0;}
  .audience-inner{padding:0 20px;}
  .audience-header{margin-bottom:32px;}
  .audience-h2{font-size:clamp(24px,7vw,36px);}
  .audience-grid{gap:12px;}

  /* About */
  .about-section{padding:56px 0;}
  .about-inner{padding:0 20px;gap:28px;}
  .about-photo-wrap{max-width:260px;margin:0 auto;}
  .about-name{font-size:clamp(28px,7.5vw,38px);}
  .about-para{font-size:15.5px;}

  /* CTA */
  .cta-band{padding:56px 0;}
  .cta-inner{padding:0 20px;}
  .cta-h2{font-size:clamp(24px,7vw,34px);}
  .cta-btns{flex-direction:column;align-items:stretch;}
  .cta-btns .btn{width:100%;justify-content:center;}

  /* Footer */
  .footer-strip{padding:32px 20px;flex-direction:column;gap:20px;text-align:center;}
  .footer-strip p{max-width:100%;font-size:16px;}
  .footer-grid{grid-template-columns:1fr;padding:32px 20px 28px;gap:28px;}
  .footer-base{padding:14px 20px;flex-direction:column;align-items:flex-start;gap:8px;}

/* --- From about.html --- */


  .header-inner{height:56px;padding:0 20px;}
  .header-cta{display:none;}

  /* Hero */
  .about-hero{padding:44px 0 52px;}
  .ah-inner{padding:0 20px;gap:28px;}
  .ah-photo{max-width:280px;}
  .ah-name{font-size:clamp(34px,8.5vw,46px);}
  .ah-role{font-size:14px;}
  .ah-intro{font-size:16px;margin-bottom:28px;}
  .ah-ctas{flex-direction:column;align-items:stretch;gap:10px;}
  .btn{width:100%;justify-content:center;padding:14px 20px;}
  .ah-cred-strip{display:none;}

  /* Story */
  .story-section{padding:52px 0;}
  .st-inner{padding:0 20px;}
  .st-h2{font-size:clamp(22px,6vw,30px);}
  .st-lead{font-size:17px;}
  .st-body{font-size:16px;}
  .pull-quote p{font-size:clamp(17px,4.5vw,21px);}

  /* Mission */
  .mission-section{padding:52px 0;}
  .ms-inner{padding:0 20px;}
  .ms-h2{font-size:clamp(22px,6vw,30px);}
  .ms-body{font-size:16px;}

  /* Credentials */
  .creds-section{padding:44px 0;}
  .creds-inner{padding:0 20px;}
  .creds-grid{grid-template-columns:1fr;}
  .cred-item{padding:26px 22px 22px;}

  /* Philosophy */
  .phil-section{padding:52px 0;}
  .ph-inner{padding:0 20px;}
  .ph-h2{font-size:clamp(20px,6vw,28px);}
  .ph-body{font-size:16px;}

  /* Resources */
  .res-section{padding:52px 0;}
  .res-inner{padding:0 20px;}

  /* Final CTA */
  .final-cta{padding:56px 0;}
  .fct-inner{padding:0 20px;}
  .fct-title{font-size:clamp(24px,7vw,34px);}
  .fct-sub{font-size:15px;}
  .fct-btns{flex-direction:column;align-items:stretch;}

  /* Footer */
  .footer-strip{padding:32px 20px;flex-direction:column;gap:20px;text-align:center;}
  .footer-strip p{max-width:100%;font-size:16px;}
  .footer-grid{grid-template-columns:1fr;padding:32px 20px 28px;gap:28px;}
  .footer-base{padding:14px 20px;flex-direction:column;align-items:flex-start;gap:8px;}

/* --- From book.html --- */


  /* Header */
  .header-inner{height:56px;padding:0 20px;}
  .header-cta{display:none;}

  /* Book hero */
  .book-hero{padding:40px 0 48px;}
  .book-hero-inner{padding:0 20px;gap:28px;}
  .bh-book-wrap{width:min(270px,76vw);}
  .bh-book-wrap .book-cover{width:min(270px,76vw);}
  .bc-main-title{font-size:clamp(18px,5.5vw,24px);}
  .bh-title{font-size:clamp(32px,8vw,42px);}
  .bh-sub{font-size:16px;}
  .bh-ctas{flex-direction:column;align-items:stretch;gap:10px;margin-bottom:20px;}
  .btn{width:100%;justify-content:center;padding:14px 20px;}
  .bh-meta{display:none;}

  /* Overview */
  .book-overview{padding:52px 0;}
  .overview-inner{padding:0 20px;}
  .overview-h2{font-size:clamp(20px,6vw,28px);}

  /* Learn section */
  .learn-section{padding:52px 0;}
  .learn-inner{padding:0 20px;}
  .learn-h2{font-size:clamp(20px,6vw,28px);}
  .lblock{padding:20px 0;}

  /* Inside section */
  .inside-section{padding:52px 0;}
  .inside-inner{padding:0 20px;}
  .inside-h2{font-size:clamp(20px,6vw,28px);}

  /* Who for */
  .for-section{padding:52px 0;}
  .for-inner{padding:0 20px;}
  .for-grid{
    grid-template-columns:1fr;
    gap:10px;
    background:transparent;
    border:none;
    border-radius:0;
  }
  .for-item{
    border-radius:10px;
    border:1px solid var(--rule);
    padding:28px 24px 24px;
  }
  .for-h2{font-size:clamp(20px,6vw,28px);}

  /* Resources */
  .resources-section{padding:52px 0;}
  .resources-inner{padding:0 20px;}
  .resources-h2{font-size:clamp(19px,5.5vw,26px);}
  .resource-card{padding:28px 24px 24px;}

  /* Author */
  .author-section{padding:52px 0;}
  .author-inner{padding:0 20px;gap:28px;}
  .author-photo{width:100%;max-width:220px;margin:0 auto;}
  .author-name{font-size:clamp(24px,6.5vw,32px);}
  .author-bio{font-size:15px;}

  /* Final CTA */
  .final-cta{padding:60px 0;}
  .final-cta-inner{padding:0 20px;}
  .final-cta-title{font-size:clamp(24px,7vw,34px);}
  .final-cta-btns{flex-direction:column;align-items:stretch;}
  .final-cta-btns .btn{width:100%;justify-content:center;padding:15px 22px;font-size:15px;}

  /* Footer */
  .footer-strip{padding:28px 20px;flex-direction:column;gap:18px;text-align:center;}
  .footer-strip p{max-width:100%;font-size:15px;}
  .footer-grid{grid-template-columns:1fr;padding:28px 20px 24px;gap:24px;}
  .footer-base{padding:14px 20px;flex-direction:column;align-items:flex-start;gap:8px;}

/* --- From contact.html --- */


  .header-inner{height:56px;padding:0 20px;}
  .header-cta{display:none;}

  /* Hero */
  .contact-hero{padding:52px 0 44px;}
  .ch-inner{padding:0 20px;}
  .ch-title{font-size:clamp(32px,8.5vw,48px);}
  .ch-sub{font-size:16px;}

  /* Contact main */
  .contact-main{padding:48px 0;}
  .cm-inner{padding:0 20px;gap:24px;}
  .contact-form{padding:24px 20px 22px;}
  .cf-header{padding-bottom:18px;margin-bottom:22px;}

  /* Form fields — single column, tap-friendly */
  .cf-grid{grid-template-columns:1fr;gap:18px;}
  .cf-input,
  .cf-select,
  .cf-textarea{
    font-size:16px; /* prevents iOS zoom on focus */
    min-height:48px; /* WCAG minimum tap target */
    padding:13px 14px;
  }
  .cf-textarea{min-height:140px;}

  /* Submit — stacks vertically on mobile */
  .cf-submit{
    flex-direction:column;
    align-items:stretch;
    gap:12px;
    margin-top:24px;
  }
  .cf-submit-btn{
    width:100%;justify-content:center;
    padding:15px 20px;
  }
  .cf-note{text-align:center;}

  /* Inquiry */
  .inquiry-section{padding:48px 0;}
  .inq-inner{padding:0 20px;}
  .inq-header{margin-bottom:32px;}

  /* Resources */
  .res-section{padding:48px 0;}
  .res-inner{padding:0 20px;}
  .res-header{margin-bottom:32px;}

  /* Final CTA */
  .final-cta{padding:56px 0;}
  .fct-inner{padding:0 20px;}
  .fct-title{font-size:clamp(24px,7vw,34px);}
  .fct-sub{font-size:15px;}
  .fct-btns{flex-direction:column;align-items:stretch;}
  .fct-btns .btn{width:100%;justify-content:center;}

  /* Footer */
  .footer-strip{padding:32px 20px;flex-direction:column;gap:20px;text-align:center;}
  .footer-strip p{max-width:100%;font-size:16px;}
  .footer-grid{grid-template-columns:1fr;padding:32px 20px 28px;gap:28px;}
  .footer-base{padding:14px 20px;flex-direction:column;align-items:flex-start;gap:8px;}

/* --- From youtube.html --- */


  .header-inner{height:56px;padding:0 20px;}
  .header-cta{display:none;}

  .yt-hero{padding:44px 0 52px;}
  .yh-inner{padding:0 20px;gap:32px;}
  .yh-title{font-size:clamp(32px,8vw,44px);}
  .yh-sub{font-size:16px;margin-bottom:24px;}
  .yh-ctas{flex-direction:column;align-items:stretch;gap:10px;}
  .btn{width:100%;justify-content:center;padding:14px 20px;}
  .yh-meta{display:none;}

  .feat-section{padding:52px 0;}
  .feat-header{padding:0 20px;margin-bottom:32px;}
  .feat-h2{font-size:clamp(22px,6vw,30px);}
  .feat-sub{font-size:15px;}
  .feat-card-wrap{padding:0 20px;}
  .feat-meta{padding:12px 20px 0;flex-direction:column;gap:8px;}
  .feat-thumb-title{font-size:clamp(13px,3.5vw,18px);}

  .cats-section{padding:52px 0;}
  .cats-inner{padding:0 20px;}
  .cats-header{padding:0 20px;margin-bottom:32px;}
  .cats-h2{font-size:clamp(20px,6vw,28px);}
  .cats-grid{grid-template-columns:1fr;}
  .cat-item{padding:30px 26px 28px;}

  .howto-section{padding:52px 0;}
  .howto-inner{padding:0 20px;}
  .howto-header{padding:0 20px;margin-bottom:36px;}
  .howto-h2{font-size:clamp(20px,6vw,28px);}
  .howto-steps{gap:32px;}
  .step-num{font-size:44px;}

  .res-section{padding:52px 0;}
  .res-inner{padding:0 20px;}
  .res-header{padding:0 20px;}
  .res-h2{font-size:clamp(20px,6vw,28px);}

  .yt-mission-section{padding:52px 0;}
  .yt-mission-inner{padding:0 20px;}
  .mission-h2{font-size:clamp(20px,6vw,28px);}
  .mission-body{font-size:15.5px;}

  .final-cta{padding:56px 0;}
  .fct-inner{padding:0 20px;}
  .fct-title{font-size:clamp(24px,7vw,34px);}
  .fct-sub{font-size:15px;}
  .fct-btns{flex-direction:column;align-items:stretch;}

  .footer-strip{padding:32px 20px;flex-direction:column;gap:20px;text-align:center;}
  .footer-strip p{max-width:100%;font-size:16px;}
  .footer-grid{grid-template-columns:1fr;padding:32px 20px 28px;gap:28px;}
  .footer-base{padding:14px 20px;flex-direction:column;align-items:flex-start;gap:8px;}

}

@media (max-width:430px) {

/* --- From OYM_JamesClear_v2.html --- */


  .hero-headline{font-size:clamp(30px,8vw,40px);}
  .trust-item{font-size:11.5px;}
  .approach-pull{font-size:18px;}

/* --- From contact.html --- */


  .ch-title{font-size:clamp(30px,8vw,44px);}
  .contact-form{padding:22px 18px 20px;}
  .cf-header{margin-bottom:20px;}
  .inq-card{padding:24px 20px 22px;}
  .res-card{padding:26px 22px 24px;}

}

@media (max-width:400px) {

/* --- From about.html --- */


  .ah-name{font-size:30px;}
  .fct-title{font-size:24px;}

/* --- From book.html --- */


  .bh-title{font-size:30px;}
  .bc-main-title{font-size:17px;}
  .bh-book-wrap{width:min(210px,68vw);}
  .bh-book-wrap .book-cover{width:min(210px,68vw);}

/* --- From youtube.html --- */


  .yh-title{font-size:30px;}
  .fct-title{font-size:24px;}

}

@media (max-width:390px) {

/* --- From OYM_JamesClear_v2.html --- */


  .hero-headline{font-size:30px;}
  .audience-h2{font-size:24px;}
  .cta-h2{font-size:24px;}

/* --- From contact.html --- */


  .ch-title{font-size:30px;}
  .fct-title{font-size:24px;}
  .contact-form{padding:20px 16px 18px;}
  .cf-input,
  .cf-select,
  .cf-textarea{padding:12px 13px;}
  .cf-textarea{min-height:130px;}
  .cm-inner{padding:0 16px;}
  .inq-inner{padding:0 16px;}
  .res-inner{padding:0 16px;}
  .fct-inner{padding:0 16px;}
  .inq-card{padding:22px 18px 20px;}
  .res-card{padding:24px 20px 22px;}

}
