
:root {
  --bg: #f6f3eb;
  --surface: #fbf8f1;
  --surface-2: #f1ebe2;
  --line: #ddd7cc;
  --text: #22252d;
  --muted: #666b73;
  --blue: #244caf;
  --purple: #6f2da8;
  --gold: #d6b23a;
  --green: #2eb85c;
  --red: #c94135;
  --container: 1320px;
  --radius-xl: 34px;
  --radius-lg: 28px;
  --radius-md: 20px;
  --shadow: 0 16px 40px rgba(31, 36, 44, 0.07);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Inter", Arial, sans-serif;
  background:var(--bg);
  color:var(--text);
  line-height:1.55;
}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%;height:auto}
p{margin:0 0 1rem}
.container{width:min(var(--container), calc(100% - 48px));margin:0 auto}
.site-header{
  position:sticky;top:0;z-index:100;
  background:rgba(246,243,235,.94);
  backdrop-filter: blur(12px);
  border-bottom:1px solid var(--line);
}
.nav-wrap{
  min-height:86px; display:flex; align-items:center; justify-content:space-between; gap:24px;
}
.brand{display:flex; align-items:center; gap:16px; color:var(--blue); font-weight:800; min-width:0}
.brand-mark{width:56px;height:56px;border-radius:999px;background:var(--purple);color:#fff;display:grid;place-items:center;font-size:1.5rem;font-weight:900;letter-spacing:-.04em;flex:0 0 auto}
.brand-text{font-size:1.05rem;white-space:nowrap}
.site-nav{display:flex;align-items:center;gap:34px;flex-wrap:wrap}
.site-nav a{color:var(--blue);font-weight:700;font-size:1rem}
.site-nav a:hover,.site-nav a.active{color:var(--purple)}
.page-hero,.section{padding:88px 0;border-top:1px solid rgba(36,76,175,.05)}
.page-hero{padding-top:74px;padding-bottom:46px}
.section.compact{padding-top:72px;padding-bottom:72px}
.anchor-offset{scroll-margin-top:95px}
.eyebrow{margin:0 0 16px;color:var(--purple);font-weight:900;letter-spacing:.14em;text-transform:uppercase;font-size:.95rem}
.small-strap{margin:0 0 18px;color:var(--blue);font-weight:800;font-size:.95rem;letter-spacing:.12em;text-transform:uppercase}
h1,h2,h3,h4{font-family:"Cormorant Garamond", Georgia, serif;font-weight:600;line-height:.96;letter-spacing:-.03em;color:var(--blue);margin:0 0 18px}
h1{font-size:clamp(3.7rem, 8vw, 7.15rem)}
h2{font-size:clamp(2.9rem, 6vw, 5.2rem)}
h3{font-size:clamp(2rem, 4vw, 3.2rem)}
h4{font-family:"Inter", Arial, sans-serif;font-size:1.45rem;line-height:1.15;letter-spacing:-.02em;font-weight:800;margin-bottom:14px}
.lead{font-size:clamp(1.2rem, 2vw, 1.55rem);line-height:1.55;color:var(--text)}
.kicker{color:var(--blue);font-weight:800;margin-bottom:18px}
.muted{color:var(--muted)}
.hero-grid,.split-grid,.page-grid,.book-hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:52px;align-items:center}
.hero-copy p:not(.eyebrow):not(.small-strap):not(.lead), .page-copy p:not(.eyebrow):not(.small-strap):not(.lead){font-size:1.08rem}
.visual-card,.note-box,.simple-item,.feature-card,.part-card,.quote-box,.video-card,.metric-card,.pill-card,.system-card,.cta-band,.contact-card,.diagnostic-card{
  background:var(--surface);
  border:1px solid #dfe3ef;
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow);
}
.visual-card{overflow:hidden}
.visual-card img{width:100%;height:auto}
.video-card,.note-box,.feature-card,.quote-box,.cta-band,.contact-card{padding:28px}
.video-label,.tag{display:inline-flex;align-items:center;min-height:34px;padding:0 14px;border-radius:999px;background:rgba(111,45,168,.1);color:var(--purple);font-weight:800}
.video-shell{position:relative;padding-top:56.25%;overflow:hidden;border-radius:20px;background:#ddd}
.video-shell iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.video-placeholder{min-height:220px;display:grid;place-items:center;text-align:center;padding:24px;border:2px dashed #d9d1e8;border-radius:22px;background:linear-gradient(180deg, rgba(111,45,168,.03), rgba(36,76,175,.03))}
.button-row,.cta-actions,.stack-buttons{display:flex;gap:16px;flex-wrap:wrap;margin-top:30px}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:58px;padding:0 28px;border-radius:999px;font-weight:800;font-size:1rem;border:2px solid transparent;transition:transform .16s ease, box-shadow .16s ease}
.button:hover{transform:translateY(-1px);box-shadow:0 10px 25px rgba(36,76,175,.12)}
.button.primary{background:var(--blue);color:#fff}
.button.secondary{background:transparent;border-color:#d4d7ec;color:var(--blue)}
.button.ghost{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.22);color:#fff}
.simple-list{display:grid;gap:18px}
.simple-item{padding:26px 28px;font-size:1.16rem}
.simple-item strong{display:block;margin-bottom:12px;font-size:1rem}
.mind{color:var(--blue)} .body{color:var(--gold)} .soul{color:var(--green)}
.pill-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.pill{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 20px;border-radius:999px;font-weight:800}
.pill.mind{background:var(--blue);color:#fff}
.pill.body{background:var(--gold);color:#1f232b}
.pill.soul{background:var(--green);color:#fff}
.note-box{background:var(--surface-2)}
.cards-3,.cards-4,.arc-grid{display:grid;gap:22px}
.cards-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.cards-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.arc-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.feature-card,.part-card,.metric-card,.diagnostic-card{padding:26px}
.feature-card h4,.part-card h4,.metric-card h4,.diagnostic-card h4{font-family:"Inter", Arial, sans-serif;color:var(--text);font-size:1.12rem;line-height:1.2;margin:0 0 10px}
.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:28px}
.metric-card strong{display:block;font-size:2rem;color:var(--blue);margin-bottom:8px}
.callout-band{padding:28px;border-radius:28px;background:linear-gradient(135deg, rgba(36,76,175,.12), rgba(111,45,168,.12));border:1px solid #dcd5ec}
.closing-cta{padding:96px 0 110px}
.cta-band{background:linear-gradient(135deg, #284ead 0%, #6933a6 100%);color:#fff;padding:40px 40px 46px}
.cta-band h2,.cta-band p,.cta-band .eyebrow{color:#fff}
.site-footer{padding:28px 0 48px;border-top:1px solid var(--line)}
.footer-wrap{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap}
.footer-links{display:flex;gap:18px;flex-wrap:wrap;color:var(--muted)}
.code-note{font-family:ui-monospace, SFMono-Regular, Menlo, monospace;background:rgba(111,45,168,.08);color:var(--purple);padding:.15rem .45rem;border-radius:.45rem}
.book-mockup{border-radius:26px;overflow:hidden;box-shadow:var(--shadow);background:#fff}
.book-hero-grid{align-items:start}
.page-shell .section:first-of-type{border-top:0}
.section-head{max-width:850px;margin-bottom:34px}
hr.rule{border:0;border-top:1px solid var(--line);margin:24px 0 0}
@media (max-width:1100px){
  .hero-grid,.split-grid,.page-grid,.book-hero-grid{grid-template-columns:1fr;gap:32px}
  .cards-3,.cards-4,.arc-grid,.metric-grid{grid-template-columns:1fr}
}
@media (max-width:760px){
  .container{width:min(var(--container), calc(100% - 28px))}
  .nav-wrap{min-height:74px;align-items:flex-start;flex-direction:column;justify-content:center;padding:14px 0}
  .brand-mark{width:52px;height:52px;font-size:1.35rem}
  .site-nav{gap:18px}
  .section,.page-hero{padding:64px 0}
  h1{font-size:3.2rem}
  h2{font-size:2.7rem}
  .button{width:100%}
}
html, body {
  overflow-x: hidden;
}

img, iframe {
  max-width: 100%;
  display: block;
}

@media (max-width: 900px) {
  .container {
    padding-left: 20px;
    padding-right: 20px;
  }

  .nav-wrap {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 18px;
  }

  .brand {
    gap: 14px;
  }

  .brand-mark {
    width: 56px;
    height: 56px;
    font-size: 1.45rem;
  }

  .site-nav {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 22px;
    justify-items: start;
  }

  .site-nav a {
    font-size: 1.1rem;
  }

  .hero-grid,
  .split-grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .hero-copy h1,
  .page-hero h1,
  .section-intro h1,
  .section-intro h2 {
    font-size: clamp(2.7rem, 11vw, 4.8rem);
    line-height: 0.94;
  }

  .cta-actions,
  .hero-actions {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 14px;
  }

  .button,
  .button.primary,
  .button.ghost {
    width: 100%;
    justify-content: center;
    text-align: center;
  }

  .video-shell iframe {
    width: 100%;
    aspect-ratio: 16 / 9;
    height: auto;
  }

  .card-image,
  .video-card,
  .slide-frame {
    margin-top: 24px;
  }
}
