@import url('/assets/fonts.css');

:root {
  --red: #E72221;
  --red-dark: #CF1313;
  --cream: #EBE8DF;
  --cream-dark: #D9D6CE;
  --cream-light: #F3F1EC;
  --ink: #292827;
  --forest: #2c3530;
  --sage: #d1dad1;
  --muted: rgba(41, 40, 39, .62);
  --serif: 'Lora', Georgia, serif;
  --sans: 'Nunito', Avenir, sans-serif;
  --body: 18px;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:hidden;max-width:100vw}
body{margin:0;background:var(--cream);color:var(--ink);font:400 var(--body)/1.6 var(--sans);letter-spacing:0;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
img{display:block;max-width:100%;height:auto}
h1,h2,h3,p,figure,blockquote{margin-top:0}
h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:0}
h2{font-size:clamp(44px,3.8vw,56px);line-height:1.16;margin-bottom:24px;color:var(--red)}
p{margin-bottom:20px}a{color:inherit}
.skip-link{position:absolute;left:-9999px;top:0;z-index:100;background:#000;color:#fff;padding:12px 20px}.skip-link:focus{left:0}
:focus-visible{outline:3px solid var(--red-dark);outline-offset:4px}
.review-flag{background:#000;color:#e0dfd9;text-align:center;text-transform:uppercase;letter-spacing:.13em;font-size:11px;font-weight:800;padding:7px 20px}
.site-header{height:80px;padding:0 clamp(20px,3vw,42px);display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--forest)}
.site-header-brand{display:flex;align-items:center}
.abc-logo{height:32px;width:auto;display:block}
.site-header .header-link{color:#fff}
.footer-brand{display:flex;justify-content:center;margin-bottom:22px}
.abc-footer-mark{height:46px;width:auto;display:block;filter:brightness(0) invert(1)}
.hero{position:relative}
.hero .wide-grid{position:relative;z-index:2}
.site-header--overlay{position:absolute;top:0;left:0;right:0;background:var(--forest);z-index:2}
.wordmark{font:500 20px/1.1 var(--serif);text-decoration:none}.header-link,.text-action{font-size:14px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:3px}
.header-link span,.text-action span{margin-left:8px}
.eyebrow{margin:0 0 14px;color:var(--red-dark);font-size:14px;font-weight:800;line-height:1.4;letter-spacing:.12em;text-transform:uppercase}
.wide-grid{width:min(1250px,calc(100% - 40px));margin:auto}
.reading{width:min(750px,calc(100% - 40px));margin-inline:auto}
.centered{text-align:center}
.side-pad{padding:clamp(64px,7vw,100px) clamp(40px,7vw,100px)}
.row-spiral{background-color:var(--cream);background-image:linear-gradient(rgba(235,232,223,.72),rgba(235,232,223,.72)),url('/assets/spiral.webp');background-size:auto,600px;background-position:center,center;background-repeat:repeat,repeat;background-attachment:fixed,fixed}
@media(max-width:900px){.row-spiral{background-attachment:scroll,scroll}}
.hero-photo{--hero-scroll:0;min-height:92vh;display:flex;align-items:center;padding:176px 0 90px;overflow:hidden;color:#fff}
.hero-media{position:absolute;inset:0;z-index:0}
.hero-photo-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:calc(1 - var(--hero-scroll) * 0.85)}
.hero-gradient{position:absolute;inset:0;background:linear-gradient(120deg,transparent calc(2% - var(--hero-scroll) * 2%),rgba(41,40,39,.9) calc(72% - var(--hero-scroll) * 22%))}
.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.hero-photo .hero-copy{grid-column:2/3;justify-self:end;text-align:left;opacity:calc(1 - var(--hero-scroll) * 0.7);transform:translateY(calc(var(--hero-scroll) * -46px))}
.hero-copy{max-width:660px}.hero .eyebrow{color:#161615}.hero-photo .eyebrow{color:#fff}.hero h1{font-size:clamp(66px,7vw,100px);line-height:1;margin:0 0 20px;color:var(--red);font-weight:400}.hero-photo h1{color:#fff}.hero h1 br{display:none}
.subtitle{max-width:620px;margin:0 0 14px;font-size:16px;font-weight:800;line-height:1.45;letter-spacing:.08em;text-transform:uppercase;color:rgba(41,40,39,.58)}
.hero-deck{max-width:610px;margin-bottom:0}.hero-photo .hero-deck{color:#fff}.hero-art{justify-self:center;width:min(100%,640px)}
.actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:28px}
.button{display:inline-flex;align-items:center;gap:7px;border:2px solid var(--red);padding:11px 24px 10px;min-height:50px;background:var(--red);color:#fff;text-decoration:none;font-size:15px;font-weight:800;line-height:1;text-transform:uppercase;letter-spacing:.06em;transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .15s ease,box-shadow .15s ease;will-change:transform}
.button:hover{background:var(--red-dark);border-color:var(--red-dark);color:#fff;transform:translateY(-2px);box-shadow:0 8px 16px rgba(0,0,0,.18)}
.button:active{transform:translateY(0);box-shadow:none}
.button span{font-size:18px}
.button--outline{background:transparent;border-color:#16181e;color:#161615}
.button--outline:hover{background:#16181e;border-color:#16181e;color:#fff}
.row-cream-dark{background:var(--cream-dark)}
.row-cream{background:var(--cream)}
.row-cream-light{background:var(--cream-light)}
.hero-caption{margin:22px 0 0;font-size:13px;color:var(--muted)}.hero-photo .hero-caption{color:rgba(255,255,255,.72)}
.hero-photo .button--outline{background:transparent;border-color:#fff;color:#fff}.hero-photo .button--outline:hover{background:#fff;border-color:#fff;color:var(--forest)}
.eyebrow.centered{text-align:center}
.statement{padding:96px 0 100px}.statement h2 span,.statement h2 em{display:block}.statement h2 em{font-style:normal;color:var(--red-dark)}.statement p{text-align:left}
.row-gradient{background:linear-gradient(160deg,var(--cream-light),var(--cream))}
.split-row{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;min-height:820px}
.split-copy{align-self:center}.split-copy h2{font-size:clamp(40px,3.15vw,45px);line-height:1.2}.split-copy .button{margin-top:12px}
.split-image{min-height:700px;background-position:center;background-size:cover;background-repeat:no-repeat}.book-desk{background-image:url('/assets/book-desk-square.webp');background-position:center}.book-hardwood{background-image:url('/assets/book-hardwood-square.webp')}
.frameworks-row{min-height:1080px}.plain-list{list-style:none;padding:0;margin:24px 0}.plain-list li{position:relative;padding-left:32px;margin-bottom:14px}.list-icon{position:absolute;left:0;top:5px;width:20px;height:20px;background-image:url('data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cpath%20d%3D%22M3.5%208.5L6.5%2011.5L12.5%204.5%22%20fill%3D%22none%22%20stroke%3D%22%23CF1313%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22/%3E%3C/svg%3E');background-repeat:no-repeat;background-position:left center;background-size:20px 20px}
.frameworks-list li{margin-bottom:16px}.row-dark{background:var(--ink);color:#e0dfd9}
.podcast-row{padding:100px 0;background:var(--cream-dark)}.podcast-layout{width:min(1325px,calc(100% - 60px));margin:auto;display:grid;grid-template-columns:1.04fr .96fr;align-items:center}.podcast-art{position:relative;z-index:1}.podcast-art img{width:100%;aspect-ratio:1/1;object-fit:cover}.podcast-panel{position:relative;z-index:2;background:var(--cream-light);color:var(--ink);padding:64px 50px;margin-left:-80px;max-width:690px}.podcast-panel .actions{gap:14px}.podcast-panel .button{font-size:13px;padding-inline:18px}
.bonuses-row{position:relative;min-height:900px;padding:96px 0;display:flex;align-items:center;justify-content:center;background:#191918 url('/assets/book-grass-chapter.webp') center/cover no-repeat;background-attachment:fixed;color:#fff;text-align:center;--ink-fade:.6}.bonuses-overlay{position:absolute;inset:0;background:rgba(41,40,39,var(--ink-fade))}.bonuses-copy{position:relative;z-index:1}.bonuses-copy h2{text-align:center;color:#fff}.bonuses-copy>p{text-align:center;max-width:640px;margin:20px auto 0}.bonuses-actions{margin-top:44px;display:flex;justify-content:center;gap:56px;flex-wrap:wrap}.bonus-cta{display:flex;flex-direction:column;align-items:center;gap:14px}.button-label{margin:0;font-size:13px;letter-spacing:.08em;text-transform:uppercase;opacity:.8}.centered-actions{justify-content:center}.button-light{background:transparent;border-color:#fff;color:#fff}.button-light:hover{background:#fff;border-color:#fff;color:var(--ink)}
.bonus-card{background:var(--red-dark);padding:70px 100px}
@media(min-width:901px){.bonus-card h2{font-size:clamp(30px,2.7vw,42px);white-space:nowrap}}
@media(max-width:620px){.bonus-card{padding:44px 20px;width:100%}.bonuses-row .reading{width:100%}.bonus-card h2{font-size:28px}}
@media(max-width:900px){.bonuses-row{background-attachment:scroll}}
@media(prefers-reduced-motion:reduce){.bonuses-row{--ink-fade:.62!important}}
.button-solid-light{background:#fff;border-color:#fff;color:var(--red-dark)}.button-solid-light:hover{background:var(--cream);border-color:var(--cream);color:var(--red-dark)}
.row-circle{background:var(--cream) url('/assets/circle-grid.webp') center/500px repeat}.testimonials{padding:100px 0 120px}.testimonials-inner{width:min(1060px,calc(100% - 40px));margin:auto}.testimonials h2{text-align:center;color:var(--ink)!important}
.author-row{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;overflow:hidden}.author-copy{display:flex;flex-direction:column;justify-content:center}.author-copy h2{color:#fff!important}.author-copy .button{margin-top:12px;align-self:flex-start}.author-image{padding:30px 3.5vw 30px 0;display:flex;align-items:center}.author-image img{width:100%;max-height:800px;object-fit:cover;object-position:center 25%}
.mission-list{list-style:none;margin:4px 0 20px;padding:0}.mission-list li{margin:6px 0;padding-left:1.4em}
.row-diagonals{background:var(--red-dark) url('/assets/diagonals-red.webp') center/cover no-repeat;background-attachment:fixed}.closing-cta{padding:140px 20px}
@media(max-width:900px){.row-diagonals{background-attachment:scroll}}
.row-abc{background:var(--forest);color:#fff;border-top:4px solid var(--red)}
.inquiry-cta{padding:110px 20px;text-align:center}
.inquiry-card{width:min(760px,100%);margin:0 auto}
.inquiry-cta h2{color:#fff}
.inquiry-cta p{color:#e0e4de}
.inquiry-cta .button-light{margin-top:8px}
.site-footer{background:var(--ink);color:#e0dfd9;text-align:center;padding:52px 20px;font-size:14px}.site-footer p{max-width:650px;margin:0 auto 12px}.copyright{font-size:12px;opacity:.7;padding-top:18px}.copyright a{color:inherit;text-decoration:underline;transition:color .15s ease}.copyright a:hover{color:#fff}.footer-social a{color:inherit;text-decoration:underline}

/* Keep existing claim and confirmation routes usable */
.inner-page{background:var(--cream-light)}
.claim-hero{padding:70px 0 45px}.shell{width:min(1200px,calc(100% - 40px));margin:auto}.claim-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end}.claim-hero h1{font:500 clamp(44px,5vw,65px)/1.08 var(--serif);margin:0}.claim-hero-copy{font-size:18px}.claim-layout{width:min(1200px,calc(100% - 40px));margin:0 auto 90px;display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:start}.claim-aside{background:var(--cream);padding:36px}.claim-aside h2{font-size:28px}.claim-steps{list-style:none;margin:25px 0 0;padding:0}.claim-steps li{position:relative;padding-left:20px;margin:12px 0}.claim-steps li::before{content:'';position:absolute;left:0;top:.65em;width:7px;height:7px;border-radius:50%;background:var(--red)}.form-kicker{display:flex;justify-content:space-between;align-items:end;gap:15px;margin-bottom:25px}.form-kicker h2{font-size:34px;margin:0}.form-kicker span,.optional,.field-help,.form-footer p,.muted{font-size:13px;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 24px}.field{display:flex;flex-direction:column;gap:6px}.field[hidden]{display:none}.field.full{grid-column:1/-1}label{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}input,select,textarea{width:100%;min-height:52px;border:1px solid rgba(41,40,39,.35);border-radius:0;background:#fff;color:var(--ink);padding:10px 14px;font:16px var(--sans)}textarea{resize:vertical;font-family:var(--sans)}select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:44px;background-image:url("data:image/svg+xml;utf8,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2020%2020'%20fill='none'%20stroke='%23292827'%20stroke-width='2'%3E%3Cpath%20d='M5%207l5%206%205-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:16px}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--red-dark);box-shadow:0 0 0 4px rgba(207,19,19,.16)}.form-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:28px}.form-status{color:var(--red-dark);font-weight:800}.thanks{width:min(1200px,calc(100% - 40px));margin:auto;padding:80px 0;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.thanks-copy h1{font:500 clamp(44px,5vw,65px)/1.08 var(--serif)}.thanks-media img{width:100%;height:auto}.closing-inner{width:min(750px,calc(100% - 40px));margin:auto;text-align:center;padding:70px 0}

@media(max-width:900px){
  body{font-size:17px}.site-header{height:68px}.header-link{font-size:12px}
  .hero-photo{display:block;min-height:0;padding:0;background:var(--ink)}.hero-media{position:relative;inset:auto;width:100%;aspect-ratio:1/1;overflow:hidden}.hero-photo-img{object-position:32% 22%}.hero-grid{grid-template-columns:1fr;gap:0;padding:0 20px 56px;margin-top:-30vw;position:relative}.hero h1 br{display:block}.hero-copy{max-width:680px;margin:auto}.hero-photo .hero-copy{grid-column:1/-1;justify-self:stretch;text-align:left;padding-top:26px}.hero-photo .hero-gradient{background:linear-gradient(to bottom,transparent 42%,rgba(41,40,39,.82) 78%,var(--ink) 96%)}.subtitle{font-size:14px}
  .statement{padding:70px 0}
  .split-row{grid-template-columns:1fr;min-height:0}.split-image{min-height:560px}.split-row>.split-image{order:-1}.frameworks-row>.split-image{order:0}.side-pad{padding:64px max(30px,8vw)}
  .podcast-layout{width:min(760px,calc(100% - 40px));grid-template-columns:1fr}.podcast-art{width:88%;margin:auto}.podcast-panel{margin:-55px 0 0 auto;width:92%;max-width:none;padding:50px 42px}
  .bonuses-row{min-height:0;padding:90px 0}
  .author-row{grid-template-columns:1fr}.author-image{order:-1;padding:30px 30px 0}.author-image img{max-height:650px}.author-copy{padding-top:56px}
  .claim-hero-grid,.claim-layout,.thanks{grid-template-columns:1fr}.claim-layout{gap:40px}.claim-hero-copy{max-width:700px}
}

@media(max-width:620px){
  body{font-size:16px}.review-flag{font-size:9px;padding-inline:10px}.site-header{padding-inline:20px}.wordmark{font-size:17px}.header-link{font-size:10px;letter-spacing:.04em}
  h2{font-size:34px;line-height:1.18}.wide-grid{width:calc(100% - 40px)}.reading{width:calc(100% - 40px)}
  .hero-photo{padding:0;min-height:0}.hero-grid{margin-top:-28vw}.hero h1{font-size:50px}.hero-deck{line-height:1.6}.actions{align-items:flex-start;flex-direction:column}.button{width:100%;justify-content:center}.text-action{font-size:12px}.hero-photo .hero-gradient{background:linear-gradient(to bottom,transparent 36%,rgba(41,40,39,.82) 84%,var(--ink) 94%)}
  .statement{padding:54px 0}.statement h2{font-size:38px}
  .split-image{min-height:380px}.side-pad{padding:50px 24px}.split-copy h2{font-size:36px}
  .frameworks-row>.split-image{order:-1}
  .podcast-row{padding:20px 0 60px}.podcast-layout{width:100%}.podcast-art{width:100%}.podcast-panel{width:calc(100% - 40px);margin:-24px auto 0;padding:40px 24px}.podcast-panel .actions{width:100%}
  .bonuses-row{padding:64px 0}
  .testimonials{padding:60px 0 70px}.quotes{grid-template-columns:1fr;gap:58px;margin-top:44px}.quotes blockquote{font-size:19px}
  .author-image{padding:20px 20px 0}.author-image img{max-height:none}.author-copy{padding:45px 24px 55px}
  .closing-cta{padding:60px 0}.closing-card h2{font-size:35px}
  .form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.form-kicker,.form-footer{align-items:flex-start;flex-direction:column}.claim-hero{padding-top:45px}.claim-layout{width:calc(100% - 40px)}.claim-aside{padding:26px}.thanks{padding:55px 0}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Testimonials base: kept for a possible text-quote layout elsewhere; the homepage now uses
   the auto-scrolling quote-graphic carousel defined further down. */
.testimonials.row-circle{background:var(--cream)}

/* Text-quote grid (base rule — mobile override already existed pre-built for this). Used where a
   page needs a couple of plain testimonial quotes rather than the photo-quote carousel. */
.quotes{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:48px}
.quotes figure{margin:0;background:var(--cream-light);padding:36px 40px}
.quotes blockquote{margin:0 0 16px;font:italic 400 20px/1.55 var(--serif);color:var(--ink)}
.quotes figcaption{font:700 14px/1.4 var(--sans);color:var(--muted);letter-spacing:.01em}
.quotes figcaption strong{color:var(--ink);font-weight:800}

/* Statement and offer cards reuse the source page's raised, bounded moments. */
.statement{padding:100px 0;position:relative;overflow:hidden;--reveal:0}
.statement-overlay{position:absolute;inset:0;background:var(--cream-light);z-index:1;pointer-events:none;opacity:calc(1 - var(--reveal))}
.statement-card{position:relative;z-index:2;background:var(--cream-light);padding:70px 100px;box-shadow:0 20px 58px rgba(41,40,39,calc(.12 * var(--reveal)))}
@media(prefers-reduced-motion:reduce){.statement{--reveal:1}}
.statement-card h2{text-align:center;color:var(--ink)}.statement-card h2 span,.statement-card h2 em{display:block}.statement-card h2 em{color:var(--red)}
@media(max-width:620px){.statement{padding:20px}.bonuses-row{padding:64px 20px}.bonuses-actions{gap:32px}.statement-card{width:100%;padding:48px 24px;box-shadow:none}}
.statement-card h2 span,.statement-card h2 em{display:block}
@media(max-width:620px){.statement{padding:0}.statement-card{padding:48px 20px}.statement-card h2{font-size:34px}.statement-card h2 span,.statement-card h2 em{display:block}}


/* Closing: a red, book-toned parallax field (not a boxed card) per direction */
.closing-cta{position:relative}
.closing-cta::before{content:'';position:absolute;inset:0;background:rgba(0,0,0,.2)}
.closing-card{position:relative;z-index:1;width:min(750px,calc(100% - 40px));margin:auto;text-align:center;background:var(--cream);padding:60px 90px;box-shadow:0 0 60px rgba(0,0,0,.2)}
.closing-card h2{color:var(--red);font-size:clamp(30px,3vw,38px)}
.closing-card p{color:var(--ink)}
@media(max-width:620px){.closing-cta{padding:64px 16px}.closing-inner{width:100%;padding:0}.closing-card{width:100%;padding:36px 20px}.closing-card h2{font-size:32px}}

.testimonials{position:relative}
.testimonials-circle-clip{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.testimonials-circle-clip::before{content:'';position:absolute;top:-160px;right:-160px;width:520px;height:520px;border-radius:50%;background:rgba(231,34,33,.09)}
.testimonials-inner{position:relative;z-index:1}

/* Testimonials carousel: auto-scrolling row of the supplied quote graphics, looped seamlessly
   by duplicating the track in JS. Pauses on hover/focus and for prefers-reduced-motion. */
.testimonials--carousel{padding-bottom:100px}
.quote-carousel{position:relative;z-index:1;width:100%;margin-top:56px;overflow:visible}
.quote-track-wrap{display:flex;width:max-content}
.quote-track{display:flex;gap:24px;padding:0 12px}
.quote-carousel.is-animating .quote-track-wrap{animation:quote-scroll 83s linear infinite}
.quote-carousel.is-animating:hover .quote-track-wrap,.quote-carousel.is-animating:focus-within .quote-track-wrap{animation-play-state:paused}
.quote-track figure{margin:0;flex:0 0 auto;width:345px;position:relative;z-index:1}
.quote-track img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;box-shadow:0 12px 30px rgba(0,0,0,.14);transition:transform .35s ease,box-shadow .35s ease;will-change:transform}
.quote-track figure:hover,.quote-track figure:focus-within{z-index:2}
.quote-track figure:hover img,.quote-track figure:focus-within img{transform:scale(1.08);box-shadow:0 24px 48px rgba(0,0,0,.28)}
@keyframes quote-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(max-width:620px){.quote-track figure{width:252px}.quote-track{gap:16px}.quote-carousel{margin-top:40px}.quote-carousel.is-animating .quote-track-wrap{animation-duration:57s}}

/* Section 3 — Two ways in: a co-equal book/podcast diptych, the page's structural signature */
.two-ways{padding:110px 0}
.two-ways-inner{width:min(1160px,calc(100% - 40px));margin:auto}
.two-ways-head{max-width:760px;margin:0 auto 60px;text-align:center}
.two-ways-head h2{color:var(--ink)}
.two-ways-head .eyebrow{text-align:center}
.two-ways-head p{color:var(--muted)}
.two-ways-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:stretch}
.way-card{display:flex;flex-direction:column;background:var(--cream-light);box-shadow:0 20px 50px rgba(41,40,39,.08);opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.way-card.is-visible{opacity:1;transform:translateY(0)}
.way-card:nth-child(2){transition-delay:.12s}
@media(prefers-reduced-motion:reduce){.way-card{opacity:1;transform:none;transition:none}}
.way-image{aspect-ratio:1/1;background-size:cover;background-position:center}
.way-image--book{background-image:url('/assets/book-desk-square.webp')}
.way-image--podcast{background-image:url('/assets/podcast-art.webp')}
.way-body{display:flex;flex-direction:column;flex:1;padding:36px 40px 40px}
.way-body h3{font-family:var(--serif);font-weight:400;font-size:26px;margin:0 0 12px;color:var(--ink)}
.way-body p{flex:1}
.way-body .button{align-self:flex-start;margin-top:auto}
@media(max-width:900px){.two-ways{padding:70px 0}.two-ways-grid{grid-template-columns:1fr;gap:26px}}
@media(max-width:620px){.two-ways-head{margin-bottom:36px}.way-body{padding:28px 24px 32px}}

.claim-below{margin-top:18px;font-size:14px;color:var(--muted)}.claim-below a{color:var(--red-dark);font-weight:800}
.not-found{padding:140px 0}
@media(max-width:620px){.not-found{padding:80px 0}}

/* Closing tagline + footer link row */
.closing-tagline{margin-top:22px;color:rgba(224,223,217,.75);font-size:14px}
.footer-links a{color:inherit;text-decoration:underline;transition:color .15s ease}
.footer-links a:hover{color:#fff}
.disclosure{font-size:12px;opacity:.7}

/* Author photo: a red circle behind the portrait, echoing the brand mark used elsewhere */
.author-image{position:relative}
.author-circle{position:absolute;top:-8%;right:-6%;width:88%;aspect-ratio:1/1;border-radius:50%;background:var(--red);z-index:0}
.author-image img{position:relative;z-index:1}
@media(min-width:901px){.author-copy,.author-image{padding-top:110px;padding-bottom:110px}}
@media(max-width:900px){.author-circle{width:78%;top:-6%;right:-4%}}

/* Small rounded corners on all square (non-circular) elements */
.button,.button--outline,.button-solid-light,.button-light,
input,select,textarea,
.statement-card,.bonus-card,.podcast-panel,.closing-card,
.way-card,.claim-aside,.quotes figure,.quote-track img{
  border-radius:3px;
}
.way-card{overflow:hidden}

/* Parent-brand lockup: drop the divider/logo on very small headers to avoid crowding */
@media(max-width:480px){.abc-logo{height:22px}}

/* Main nav: wordmark, link row, pre-order button. Book now links to /book; Podcast stays
   marked dead (plain text, not a link) until that page exists — no 404 click-throughs. */
.site-header{justify-content:space-between}
.main-nav-right{display:flex;align-items:center;gap:32px;margin-left:auto}
.main-nav-links{display:flex;align-items:center;gap:28px}
.main-nav-links .nav-link{color:#fff;font-size:13px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid transparent;padding-bottom:3px;transition:border-color .15s ease}
.main-nav-links a.nav-link:hover{border-color:currentColor}
.main-nav-links .nav-link--dead{color:rgba(255,255,255,.4);cursor:default}
.button--nav{padding:9px 20px;min-height:0;font-size:12px}
.nav-hamburger{display:none;flex-direction:column;justify-content:center;gap:5px;width:32px;height:32px;padding:0;background:none;border:0;cursor:pointer}
.nav-hamburger span{display:block;width:100%;height:2px;background:#fff}
@media(max-width:900px){
  .main-nav-right{display:none}
  .nav-hamburger{display:flex}
}
.nav-mobile-menu{position:fixed;inset:0;z-index:50;background:var(--forest);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:64px;opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .25s ease,transform .25s ease,visibility 0s linear .25s}
.nav-mobile-menu.is-open{opacity:1;visibility:visible;transform:translateY(0);transition:opacity .25s ease,transform .25s ease}
.nav-mobile-links{display:flex;flex-direction:column;align-items:center;gap:34px}
.nav-mobile-links .nav-link{color:#fff;font-size:20px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;text-decoration:none}
.nav-mobile-links .nav-link--dead{color:rgba(255,255,255,.4)}
.nav-mobile-links .button{margin-top:10px}
.nav-mobile-logo{height:52px;width:auto;filter:brightness(0) invert(1)}
.nav-mobile-close{position:absolute;top:24px;right:clamp(20px,5vw,42px);background:none;border:0;color:#fff;font-size:36px;line-height:1;cursor:pointer;padding:4px}
body.nav-open{overflow:hidden}
@media(min-width:901px){.nav-mobile-menu{display:none}}

/* Section 3 (merged): "Book" and "Podcast" cards reuse the two-ways diptych. */

/* Work together: dark ABC-branded section with an embedded, self-contained inquiry form. */
.work-together{padding:110px 20px}
.work-together-inner{width:min(1200px,calc(100% - 40px));margin:auto;display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:start}
.work-together-copy h2{color:#fff}
.work-together-copy p{color:#e0e4de}
.work-together-inner--single{display:block;max-width:820px}
.work-together-header{text-align:center;margin-bottom:44px}
.work-together-header h2{color:var(--red-dark);margin:0 0 12px}
.work-together-header p{color:var(--ink);opacity:.75;margin:0;font-size:18px}
.work-together-form-wrap{background:var(--cream-light);color:var(--ink);padding:70px 100px;border-radius:0;box-shadow:0 20px 58px rgba(41,40,39,.12)}
.work-together-form-wrap .form-kicker h3{font-family:var(--serif);font-weight:400;font-size:26px;margin:0;color:var(--ink)}
.work-together-form-wrap form{display:flex;flex-direction:column;gap:32px;margin-top:0}
.work-together-form-wrap fieldset{border:0;padding:0;margin:0}
.work-together-form-wrap legend{font-family:var(--serif);font-weight:400;font-size:22px;margin:0 0 18px;padding:0;color:var(--ink)}
.work-together-form-wrap .form-footer{justify-content:flex-start;margin-top:4px}
.work-together-form-wrap .form-status{color:var(--red-dark);font-weight:800;margin-top:4px}
.work-together-form-wrap .coach-row{grid-column:1/-1;display:grid;grid-template-columns:1.35fr 1fr;gap:20px 24px}
@media(max-width:620px){.work-together-form-wrap .coach-row{grid-template-columns:1fr}}
@media(max-width:900px){.work-together-inner{grid-template-columns:1fr;gap:36px;width:100%}}
@media(max-width:620px){.work-together{padding:64px 20px}.work-together-form-wrap{padding:48px 24px;box-shadow:none}}

/* Footer: closing tagline folded in per the v3 restructure (replaces the standalone closing-cta). */
.footer-tagline{font-family:var(--serif);font-weight:400;font-size:clamp(18px,1.6vw,22px);line-height:1.3;color:#fff;opacity:.85;max-width:620px;margin:0 auto 20px}
.footer-social{opacity:.8;display:flex;align-items:center;justify-content:center;gap:20px}
.footer-social a{display:inline-flex;color:inherit;text-decoration:none;transition:opacity .15s ease}
.footer-social a:hover{opacity:.65}
.site-footer .nav-link--dead{color:rgba(224,223,217,.45)}

/* Newsletter opt-in row */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.hp-field{position:absolute;left:-9999px;top:-9999px;width:1px;height:1px;overflow:hidden}
.newsletter-row{background:#242322;color:#fff;padding:56px 20px}
.newsletter-inner{width:min(1040px,calc(100% - 40px));margin:auto;display:flex;align-items:center;gap:48px;text-align:left}
.newsletter-inner p{margin:0;font-size:17px;line-height:1.5;flex:1 1 300px;max-width:320px;color:#e0dfd9}
.newsletter-inner p strong{color:#fff}
.newsletter-form-col{flex:1 1 560px;min-width:560px}
.newsletter-form{display:flex;gap:12px;flex-wrap:nowrap}
.newsletter-form input{width:auto;min-height:52px;background:transparent;border-color:rgba(255,255,255,.4);color:#fff}
.newsletter-form input[name="name"]{flex:1 1 220px;min-width:160px}
.newsletter-form input[name="email"]{flex:1 1 220px;min-width:160px}
.newsletter-form input::placeholder{color:rgba(255,255,255,.6)}
.newsletter-form .button{white-space:nowrap}
.newsletter-row .form-status{margin-top:14px;color:#fff;font-weight:800;text-align:right}
.newsletter-row .form-status.newsletter-confirm-box{text-align:left;border:1px solid rgba(255,255,255,.4);background:transparent;padding:16px 20px;margin-top:0}
.newsletter-inner .newsletter-note{margin:12px 0 0;flex:none;max-width:none;font-size:13px;font-style:italic;color:rgba(224,223,217,.6)}
#newsletter .newsletter-form-col{padding-top:31.5px}#newsletter .form-status:empty{margin-top:0}
@media(max-width:900px){.newsletter-inner{flex-direction:column;text-align:center;width:100%}.newsletter-inner p{flex:none;max-width:none;text-align:center}.newsletter-form-col{flex:none;min-width:0;width:100%}#newsletter .newsletter-form-col{padding-top:0}.newsletter-form{justify-content:center}.newsletter-row .form-status{text-align:center}.newsletter-row .form-status.newsletter-confirm-box{text-align:center}.newsletter-inner .newsletter-note{text-align:center}}
@media(max-width:620px){.newsletter-form{flex-direction:column}.newsletter-form input[name="name"],.newsletter-form input[name="email"]{max-width:none;flex:none;width:100%;min-width:0;min-height:52px}}
