:root{--deep:#1f3a70;--mid:#2a4a88;--bright:#34599f;--tint:#f5f8fc;--ink:#17243d;--muted:#56647b;--line:#dbe5f2;--gold:#f4d7a5}*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:24px}body{margin:0;background:#fff;color:var(--ink);font:17px/1.8 Inter,Arial,sans-serif}img{max-width:100%;display:block;height:auto}a{color:inherit}a:focus-visible,summary:focus-visible{outline:3px solid var(--bright);outline-offset:5px}.wrap{width:min(1120px,calc(100% - 48px));margin:auto}.preview-strip{text-align:center;background:#142748;color:#dbe5f2;font-size:11px;letter-spacing:.07em;padding:8px 16px}.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 0}.brand{font-family:Poppins,sans-serif;font-weight:800;text-decoration:none;letter-spacing:.1em;font-size:14px}.brand span{display:block;font-size:10px;letter-spacing:.2em;color:var(--mid)}nav{display:flex;gap:26px;font-size:13px}nav a{text-decoration:none}nav a:hover{text-decoration:underline}.hero-art{background:var(--deep)}.hero-art img{width:100%;max-height:600px;object-fit:cover}.hero-copy{padding:60px 0 55px;text-align:center;background:linear-gradient(#fff,#f5f8fc)}h1,h2,h3{font-family:Poppins,Arial,sans-serif;text-align:center;font-weight:800;line-height:1.22;margin:0;letter-spacing:-.035em}h1{font-size:clamp(38px,5.1vw,64px)}h2{font-size:clamp(30px,4vw,48px)}h3{font-size:24px;letter-spacing:-.02em}p{margin:20px 0}.eyebrow{text-align:center;font-family:Poppins,sans-serif;font-size:12px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--mid);margin:0 0 18px}.highlight{background:linear-gradient(transparent 66%,#dbe5f2 66%,#dbe5f2 96%,transparent 96%);box-decoration-break:clone;-webkit-box-decoration-break:clone}.light-highlight{color:#a7bddf}.hero-lead{font-size:clamp(19px,2vw,23px);font-weight:500;line-height:1.6;max-width:840px;margin:30px auto 22px}.narrow{max-width:740px;margin:20px auto}.cta-row{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;margin:30px 0}.button{display:inline-flex;justify-content:center;align-items:center;text-align:center;min-height:58px;padding:16px 26px;font:700 13px/1.5 Poppins,sans-serif;letter-spacing:.035em;text-decoration:none;background:linear-gradient(120deg,var(--mid),var(--bright));color:#fff;border:2px solid transparent;border-radius:9px;box-shadow:0 8px 24px #2a4a881c;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-2px);}.button.outline{background:none;border-color:var(--mid);color:var(--mid);box-shadow:none}.button.light{background:#fff;color:var(--deep)}.button.white{border-color:#dbe5f2;color:#fff}.stats{display:flex;justify-content:center;gap:60px;padding-top:30px;margin-top:34px;border-top:1px solid var(--line)}.stats strong{font:800 27px/1.5 Poppins,sans-serif;color:var(--mid);display:block}.stats span{display:block;font-size:13px;color:var(--muted)}section{padding:76px 0}.tint{background:var(--tint)}.dark{background:linear-gradient(140deg,#142748,#1b2a5e 60%,#1f3a70);color:white}.dark .eyebrow{color:#a7bddf}.section-heading{max-width:940px;margin:0 auto 40px;text-align:center}.section-heading .lead{max-width:780px;margin:25px auto 0;font-size:18px;color:var(--muted)}.dark .lead{color:#dbe5f2}.copy-panel{max-width:820px;margin:30px auto 40px}.copy-panel p:first-child{margin-top:0}.copy-panel p:last-child{margin-bottom:0}.punchline{font-family:Poppins,sans-serif;text-align:center;font-size:30px;font-weight:800;line-height:1.4;padding:24px 0}.punchline span{color:var(--mid)}.art{width:100%;border-radius:15px;box-shadow:0 20px 50px #1f3a701c;aspect-ratio:16/9;object-fit:cover}.video-frame{position:relative;border:8px solid white;border-radius:16px;overflow:hidden;box-shadow:0 18px 60px #1f3a7025}.video-frame img{width:100%}.video-label{position:absolute;bottom:0;left:0;right:0;text-align:center;background:linear-gradient(transparent,#22032fed);color:white;padding:65px 24px 26px}.video-label strong{font:800 19px Poppins,sans-serif;display:block}.video-label span{display:block;font-size:14px;margin-top:8px}.caption{font-size:12px;text-align:center;color:var(--muted);max-width:850px;margin:22px auto 0}.dark .caption{color:#a7bddf}.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:38px}.benefit-grid article{background:#ffffff0b;border:1px solid #ffffff24;border-radius:12px;padding:30px 24px;text-align:center}.benefit-grid article>span{display:block;color:#a7bddf;font:800 28px Poppins;margin-bottom:15px}.benefit-grid p{font-size:15px;line-height:1.75;margin-bottom:0;color:#dbe5f2}.benefit-grid.pale article{background:#fff;border-color:var(--line)}.benefit-grid.pale p{color:var(--muted)}.takeaway{padding:26px 35px;border:2px solid #a7bddf;border-radius:12px;background:#fff;text-align:center;font-size:18px;max-width:900px;margin:30px auto 0}.module-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.module-card{border:1px solid var(--line);border-radius:15px;overflow:hidden;background:#fff;box-shadow:0 12px 32px #1f3a700c}.module-card>img{width:100%;aspect-ratio:16/7;object-fit:cover}.module-body{padding:30px}.module-body .eyebrow{font-size:11px}.module-body h3{font-size:27px}.module-body>p{font-size:15px;text-align:center;color:var(--muted)}.module-body .outcome{font-weight:700;color:var(--mid);margin-bottom:10px}.lesson-list{list-style:none;margin:25px 0 0;padding:0}.lesson-list li{border-top:1px solid #dbe5f2;padding:13px 0 13px 24px;position:relative;font-size:13px;line-height:1.65}.lesson-list li:before{content:'✓';position:absolute;left:0;font-weight:700;color:var(--mid)}.lesson-list strong{display:block;font-size:14px;color:var(--ink);margin-bottom:3px}.lesson-list span{display:block;color:var(--muted)}.screenshot-frame{margin:0;border:1px solid var(--line);background:white;border-radius:14px;overflow:hidden;box-shadow:0 20px 60px #1f3a7022}.window-bar{display:flex;align-items:center;gap:6px;background:#1f3a70;padding:13px 18px;color:#dbe5f2}.window-bar>span{width:8px;height:8px;background:#ffffff70;border-radius:50%}.window-bar b{font:600 10px Poppins;letter-spacing:.15em;margin-left:15px}.screenshot-frame>img{width:100%}.screenshot-frame figcaption{text-align:center;padding:17px 24px;font-size:12px;color:var(--muted)}.tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:32px 0}.tool-card{border:1px solid #ffffff2a;background:#ffffff0d;border-radius:12px;padding:26px 20px}.tool-card h3{font-size:19px;line-height:1.45}.tool-card p{font-size:14px;line-height:1.75;color:#dbe5f2;text-align:center;margin-bottom:0}.subhead{margin:42px auto 25px;font-size:28px}.arsenal-example{max-width:850px;margin:40px auto;background:#ffffff0f;border:2px solid #a7bddf;padding:32px;border-radius:14px}.arsenal-example p{font-size:16px}.mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:38px 0}.mode-grid article{padding:32px;border:1px solid #ffffff40;border-radius:12px;background:#ffffff08}.mode-grid p:last-child{color:#dbe5f2;font-size:15px;text-align:center}.mode-grid .upgrade-mode{background:#34599f25;border:2px solid #a7bddf}.arsenal-footnote{max-width:820px;text-align:center;margin:auto;font-size:13px;color:#dbe5f2}.fit-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.fit-grid article{background:var(--tint);padding:32px;border-radius:12px;border:1px solid var(--line)}.fit-grid article h3{font-size:22px}.fit-grid p{color:var(--muted);font-size:15px;margin-bottom:0}.offer-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:50px}.offer-card{position:relative;background:#fff;border:2px solid var(--line);border-radius:15px;padding:42px 32px;text-align:center;display:flex;flex-direction:column}.offer-card h3{font-size:36px}.offer-tagline{color:var(--mid);font-weight:600}.offer-card ul{list-style:none;padding:0;margin:12px 0 28px;text-align:left;flex:1}.offer-card li{padding:12px 0 12px 26px;border-bottom:1px solid #dbe5f2;font-size:15px;position:relative}.offer-card li:before{content:'✓';position:absolute;left:0;color:var(--mid);font-weight:700}.offer-card.featured{border-color:var(--mid);box-shadow:0 16px 40px #1f3a701a}.ribbon{position:absolute;top:-16px;left:50%;transform:translateX(-50%);background:var(--mid);color:white;font:700 11px Poppins;letter-spacing:.09em;padding:9px 19px;border-radius:20px;white-space:nowrap}.faq{max-width:900px}.faq details{padding:24px 0;border-bottom:1px solid var(--line)}.faq summary{font-family:Poppins,sans-serif;font-weight:600;font-size:17px;cursor:pointer;line-height:1.6}.faq details p{font-size:15px;color:var(--muted);padding-left:20px}.closing{text-align:center}.closing-agent{width:180px;height:180px;object-fit:cover;border-radius:50%;margin:32px auto;border:5px solid #34599f80}.closing .narrow{font-size:19px}footer{background:#142748;color:#a7bddf;text-align:center;padding:30px 0;font-size:12px}footer nav{justify-content:center;flex-wrap:wrap;font-size:12px}footer p{margin-top:0}
@media(max-width:760px){.wrap{width:calc(100% - 30px)}.nav{padding:15px 0;gap:10px}.brand{font-size:11px}.brand span{font-size:8px}nav{font-size:11px;gap:12px}nav a:first-child{display:none}.hero-art img{object-fit:contain;max-height:none}.hero-copy{padding:38px 0}.desktop{display:none}.hero-lead{font-size:19px}.stats{gap:20px}.stats strong{font-size:19px}.stats span{font-size:11px}.button{padding:15px 18px;width:100%;font-size:12px}.cta-row{gap:12px}.section-heading{margin-bottom:28px}section{padding:52px 0}.section-heading .lead{font-size:16px}.copy-panel{margin:24px auto 30px}.copy-panel p{font-size:16px}.punchline{font-size:25px!important}.benefit-grid,.module-grid,.mode-grid,.fit-grid,.offer-grid{grid-template-columns:1fr}.tool-grid{grid-template-columns:1fr 1fr;gap:12px}.tool-card{padding:20px 14px}.tool-card h3{font-size:16px}.tool-card p{font-size:13px}.module-body{padding:26px 23px}.module-body h3{font-size:25px}.video-label{padding:35px 15px 15px}.video-label strong{font-size:12px}.video-label span{font-size:11px}.takeaway{padding:22px;font-size:16px}.subhead{font-size:25px}.arsenal-example{padding:25px}.offer-card{padding:35px 25px}.offer-grid{gap:40px}.faq summary{font-size:15px}.hero-copy .narrow{font-size:16px}.caption{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Editorial page treatment: generous white panels with quiet purple accents. */
:root {
  --tint: #f5f8fc;
  --ink: #17243d;
  --muted: #56647b;
  --line: #dbe5f2;
}
body { background: var(--tint); -webkit-font-smoothing: antialiased; }
header { background: #fff; border-bottom: 1px solid var(--line); }
section { padding: 20px 0; background: transparent; }
section.tint { background: transparent; }
.content-panel {
  background: #fff;
  border: 1px solid #f5f8fc;
  border-radius: 22px;
  padding: 64px 56px;
  box-shadow: 0 5px 24px rgba(36, 25, 43, .035);
}
.hero-copy { padding: 64px 0; background: #fff; margin-bottom: 20px; }
h1, h2, h3 { font-weight: 700; letter-spacing: -.025em; }
h1 { font-size: clamp(36px, 4.9vw, 60px); }
h2 { font-size: clamp(29px, 3.8vw, 44px); }

.light-highlight { color: var(--mid); }
.eyebrow { font-size: 11px; letter-spacing: .14em; }
.section-heading { margin-bottom: 40px; }
.section-heading .lead { line-height: 1.85; font-size: 17px; }
.copy-panel { max-width: 740px; margin: 40px auto; }
.copy-panel p { margin: 24px 0; }
.art { border-radius: 14px; box-shadow: none; }
.button, .button.light {
  background: var(--mid);
  color: #fff;
  box-shadow: none;
  border-radius: 8px;
  transition: background .2s;
}
.button:hover { background: var(--deep); transform: none; }
.button.outline, .button.outline.white { background: #fff; border-color: var(--mid); color: var(--mid); }
.button.outline:hover { background: var(--tint); }
.stats { gap: 54px; }
.stats strong { font-weight: 700; }
.benefit-grid { gap: 0; margin-top: 40px; }
.benefit-grid article, .benefit-grid.pale article {
  border: 0;
  border-right: 1px solid var(--line);
  border-radius: 0;
  background: #fff;
  padding: 16px 24px;
}
.benefit-grid article:last-child { border-right: 0; }
.benefit-grid article > span { color: var(--mid); font-weight: 600; font-size: 23px; }
.benefit-grid p, .benefit-grid.pale p { color: var(--muted); }
.takeaway { border: 0; border-left: 3px solid var(--mid); border-radius: 0; background: #f5f8fc; padding: 26px 32px; }
.module-grid { gap: 28px; align-items: start; }
.module-card { border-radius: 14px; box-shadow: none; }
.module-body { padding: 32px 26px; }
.module-body h3 { font-size: 25px; }
.lesson-list li { padding-top: 17px; padding-bottom: 17px; }
.video-frame, .screenshot-frame { box-shadow: none; border: 1px solid var(--line); }
.window-bar { background: #f5f8fc; color: var(--mid); }
.window-bar > span { background: #a7bddf; }
.tool-grid { grid-template-columns: repeat(2, 1fr); gap: 0 32px; margin: 24px 0 40px; }
.tool-card { background: #fff; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; padding: 26px 6px; }
.tool-card h3 { font-size: 18px; color: var(--mid); }
.tool-card p { color: var(--muted); }
.arsenal-example { background: #f5f8fc; border: 1px solid var(--line); border-radius: 14px; padding: 36px; }
.mode-grid article, .mode-grid .upgrade-mode { background: #fff; border: 1px solid var(--line); border-radius: 14px; }
.mode-grid .upgrade-mode { border-top: 3px solid var(--mid); }
.mode-grid p:last-child, .arsenal-footnote { color: var(--muted); }
.fit-grid { gap: 0 32px; }
.fit-grid article { background: #fff; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; padding: 28px 8px; }
.offer-card { border-width: 1px; box-shadow: none; }
.offer-card.featured { box-shadow: none; border-width: 1px; }
.offer-card h3 { font-size: 30px; }
.faq { max-width: 1120px; }
.faq details { max-width: 820px; margin: auto; padding: 26px 0; }
.closing { margin-bottom: 24px; }
.closing-agent { border: 0; }
footer { background: #fff; color: var(--muted); border-top: 1px solid var(--line); }
@media (max-width: 760px) {
  section { padding: 10px 0; }
  .content-panel { padding: 36px 22px; border-radius: 16px; }
  .hero-copy { padding: 42px 0; margin-bottom: 10px; }
  .section-heading .lead { font-size: 16px; }
  .copy-panel { margin: 28px auto; }
  .benefit-grid article, .benefit-grid.pale article { border-right: 0; border-bottom: 1px solid var(--line); padding: 26px 4px; }
  .benefit-grid article:last-child { border-bottom: 0; }
  .tool-grid, .fit-grid { grid-template-columns: 1fr; }
  .module-body { padding: 27px 20px; }
  .module-body h3 { font-size: 24px; }
  .arsenal-example { padding: 26px 22px; }
  .stats { gap: 18px; }
  .mode-grid article { padding: 26px 22px; }
}

/* Familiar site navigation and original author proof. */
.sales-header { background: #0a0f1c; border: 0; }
.sales-nav { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 64px; }
.sales-brand { color: #fff; font: 800 16px/1.4 Inter, Arial, sans-serif; letter-spacing: 2px; text-decoration: none; white-space: nowrap; }
.sales-links { display: flex; gap: 24px; font: 600 12px/1.4 Inter, Arial, sans-serif; letter-spacing: .7px; text-transform: uppercase; color: #fff; }
.sales-links a:hover { opacity: .75; }
.student-access { background: #fff; color: #0a0f1c; padding: 11px 18px; text-decoration: none; font: 700 12px/1.5 Inter, Arial, sans-serif; letter-spacing: .6px; text-transform: uppercase; white-space: nowrap; }
.student-access:hover { background: #f5f8fc; }
.student-access:focus-visible { outline: 3px solid #a7bddf; outline-offset: 4px; }
.author-intro { display: grid; grid-template-columns: 250px 1fr; gap: 44px; align-items: center; max-width: 900px; margin: 38px auto; }
.author-intro > img { width: 100%; height: auto; border-radius: 14px; }
.author-intro p { font-size: 16px; line-height: 1.85; }
.bestseller-proof { display: grid; grid-template-columns: 1fr 1fr; gap: 26px; align-items: start; margin: 40px 0 0; }
.bestseller-proof figure { margin: 0; border: 1px solid var(--line); border-radius: 12px; overflow: hidden; }
.bestseller-proof img { width: 100%; height: auto; }
.bestseller-proof figcaption { padding: 14px; font: 600 12px/1.6 Inter, Arial, sans-serif; color: var(--mid); text-align: center; border-top: 1px solid var(--line); }
.royalty-table { max-width: 740px; margin: 32px auto; border: 1px solid var(--line); border-radius: 14px; overflow: hidden; }
.royalty-table table { border-collapse: collapse; width: 100%; font-size: 16px; }
.royalty-table caption { text-align: left; padding: 18px 24px; font-weight: 600; background: #f5f8fc; border-bottom: 1px solid var(--line); }
.royalty-table th { text-align: left; font-size: 13px; padding: 16px 24px; color: var(--muted); font-weight: 600; }
.royalty-table td { padding: 18px 24px; border-top: 1px solid var(--line); }
.royalty-table td:last-child { color: var(--mid); font-weight: 700; }
@media(max-width:900px) { .sales-links { gap: 14px; font-size: 10px; } .sales-nav { gap: 14px; } }
@media(max-width:760px) {
 .sales-nav { min-height: 62px; gap: 12px; }
 .sales-links { display: none; }
 .sales-brand { font-size: 12px; letter-spacing: 1.4px; }
 .student-access { font-size: 10px; padding: 10px 12px; }
 .author-intro { grid-template-columns: 1fr; gap: 16px; }
 .author-intro > img { max-width: 230px; margin: auto; }
 .bestseller-proof { grid-template-columns: 1fr; gap: 22px; }
 .royalty-table th, .royalty-table td, .royalty-table caption { padding: 14px 16px; }
 .royalty-table table { font-size: 14px; }
}
.student-stories { max-width: 820px; margin: auto; }
.student-stories figure { margin: 0; padding: 28px 0; border-bottom: 1px solid var(--line); }
.student-stories figure:last-child { border-bottom: 0; }
.student-stories blockquote { margin: 0; font-size: 16px; line-height: 1.9; }
.student-stories figcaption { margin-top: 18px; font: 600 13px Inter, Arial, sans-serif; color: var(--mid); }

/* Beginner-focused funnel: spacious white panels and restrained plum accents. */
.copy-panel { max-width: 890px; font-size: 17px; line-height: 1.9; }
.narrow { max-width: 870px; }
.hero-copy h1 { font-size: clamp(32px,4.4vw,52px); max-width: 1080px; margin: auto; line-height: 1.3; }
.hero-assurances { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px 32px; margin: 30px 0 16px; color: var(--muted); font-size: 12px; }
.hero-assurances span::before { content: '✓'; color: var(--mid); font-weight: 700; margin-right: 8px; }
.author-credit { display: block; width: fit-content; margin: 8px auto 0; font-size: 12px; color: var(--muted); text-decoration: none; }
.author-credit:hover { color: var(--mid); }
.hero-copy .hero-lead { font-size: clamp(18px,1.9vw,22px); font-weight: 500; line-height: 1.65; max-width: 760px; margin: 28px auto 18px; text-wrap: balance; }
.hero-copy .narrow { font-size: 16px; line-height: 1.75; color: var(--muted); max-width: 640px; margin: 0 auto; text-wrap: pretty; }
.accent-line, .highlight { background-image: linear-gradient(#dbe5f2,#dbe5f2); background-position: 0 82%; background-size: 100% .42em; background-repeat: no-repeat; box-decoration-break: clone; -webkit-box-decoration-break: clone; color: var(--deep); padding: 0 .12em; margin: 0 -.12em; }
.accent-line { background-size: 0 .42em; transition: background-size 900ms ease-out; }
.accent-line.revealed { background-size: 100% .42em; }
.testimonial-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin: 36px 0; }
.testimonial-card { margin: 0; padding: 32px; border: 1px solid #dbe5f2; border-radius: 16px; background: #f5f8fc; display: flex; flex-direction: column; }
.testimonial-card.wide { grid-column: 1 / -1; }
.quote-highlight { margin: 0 0 20px; font: 700 23px/1.45 Poppins,sans-serif; color: var(--mid); }
.testimonial-card blockquote { margin: 0 0 26px; font-size: 15px; line-height: 1.85; }
.testimonial-card figcaption { display: flex; gap: 13px; align-items: center; margin-top: auto; font-size: 12px; color: var(--muted); }
.testimonial-card figcaption strong { display: block; font-size: 14px; color: var(--ink); }
.initials { display: grid; place-items: center; width: 42px; height: 42px; flex-shrink: 0; background: var(--deep); border-radius: 50%; color: white; font: 600 13px Inter,sans-serif; }
.genre-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; margin: 36px 0 0; }
.genre-grid article { padding: 26px 22px; border-top: 3px solid #a7bddf; background: #f5f8fc; border-radius: 0 0 12px 12px; display: flex; flex-direction: column; }
.genre-grid .eyebrow { font-size: 9px; line-height: 1.7; }
.genre-grid h3 { font-size: 25px; }
.genre-grid p:not(.eyebrow) { font-size: 14px; line-height: 1.8; }
.source-link { font-size: 11px; color: var(--mid); text-underline-offset: 3px; margin-top: auto; }
.genre-grid small { display: block; font-size: 10px; line-height: 1.7; color: var(--muted); margin-top: 16px; }
.hub-preview-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; align-items: start; }
.hub-preview-grid figure { margin: 0; }
.hub-preview-grid img { width: 100%; }
.hub-preview-grid figcaption { font-size: 12px; text-align: center; padding: 14px; color: var(--muted); }
.agent-support { display: grid; grid-template-columns: 190px 1fr; gap: 44px; align-items: center; max-width: 890px; margin: auto; }
.support-portrait { max-height: 270px; width: 100%; object-fit: contain; object-position: center; }
.agent-support p { font-size: 17px; line-height: 1.9; }
.agent-panel { margin: 32px auto 0; max-width: 890px; border: 1px solid var(--line); border-radius: 12px; overflow: hidden; }
.agent-panel img { width: 100%; }
.agent-panel figcaption { font-size: 11px; line-height: 1.7; padding: 14px 22px; text-align: center; color: var(--muted); }
.module-grid { align-items: stretch; }
.module-card { display: flex; flex-direction: column; }
.module-body { flex: 1; display: flex; flex-direction: column; }
.module-body h3 { min-height: 61px; display: grid; place-items: center; }
.module-body .outcome { min-height: 50px; display: grid; place-items: center; }
.module-summary { min-height: 85px; }
.preview-lessons li { min-height: 123px; }
.more-lessons, .all-included { margin: auto 0 0; border-top: 1px solid var(--line); padding-top: 18px; }
.more-lessons summary { cursor: pointer; color: var(--mid); font-size: 12px; font-weight: 600; }
.more-lessons .lesson-list { margin-top: 12px; }
.module-body .all-included { font-size: 12px; color: var(--mid); text-align: left; }
.enrollment-card { padding: 34px; border: 1px solid #a7bddf; background: #f5f8fc; border-radius: 16px; }
.included-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px 32px; list-style: none; padding: 0; margin: 32px 0; font-size: 14px; }
.included-grid li { padding-left: 24px; position: relative; }
.included-grid li::before { content: '✓'; position: absolute; left: 0; color: var(--mid); font-weight: 700; }
.arsenal .light-highlight { color: var(--mid); }
.arsenal .button.light { background: var(--mid); color: #fff; }
@media (max-width:760px) {
 .copy-panel { font-size: 16px; line-height: 1.85; }
 .hero-copy h1 { font-size: clamp(29px,7.7vw,42px); }
 .hero-lead { font-size: 18px; line-height: 1.75; }
 .hero-assurances { gap: 10px 18px; }
 .testimonial-grid, .genre-grid, .hub-preview-grid, .agent-support, .included-grid { grid-template-columns: 1fr; }
 .testimonial-card.wide { grid-column: auto; }
 .testimonial-card { padding: 25px 22px; }
 .quote-highlight { font-size: 21px; }
 .genre-grid { gap: 20px; }
 .agent-support { gap: 10px; }
 .support-portrait { max-height: 220px; max-width: 170px; margin: auto; }
 .agent-support p { font-size: 16px; }
 #meet-kate > .content-panel > .section-heading > .eyebrow { font-size: 47px; }
 .module-body h3, .module-body .outcome, .module-summary, .preview-lessons li { min-height: 0; }
 .more-lessons, .all-included { margin-top: 18px; }
 .enrollment-card { padding: 26px 20px; }
 .enrollment-card h3 { font-size: 23px; }
 .button { min-height: 54px; padding: 14px 20px; }
 .faq details { padding: 23px 0; }
 .faq summary { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) {
 .accent-line { transition: none; background-size: 100% .42em; }
 .button { transition: none; }
}

/* Keep screenshot frames and their captions aligned as a complete row. */
.hub-preview-grid { align-items: stretch; }
.hub-preview-grid .screenshot-frame { display: flex; flex-direction: column; }
.hub-preview-grid .screenshot-frame > a { display: block; }
.hub-preview-grid img { aspect-ratio: 16 / 10; object-fit: cover; object-position: top; }
.hub-preview-grid figcaption { flex: 1; display: grid; place-items: center; min-height: 70px; margin: 0; }

h1, h2, h3 { text-wrap: balance; }
.copy-panel p, .section-heading .lead { text-wrap: pretty; }
.hero-copy h1 { font-size: clamp(30px,3.9vw,48px); max-width: 1120px; }
.hero-copy h1 .accent-line { white-space: nowrap; }
.content-panel .benefit-grid { max-width: 890px; margin-left: auto; margin-right: auto; }
@media (max-width: 760px) { .hero-copy h1 .accent-line { white-space: normal; } }
.genre-grid small { margin-top: auto; padding-top: 16px; }

.hero-copy { padding: 20px 0; background: transparent; margin-bottom: 0; }
.hero-card { padding: 56px 56px 44px; text-align: center; }
.hero-card .hero-lead { font-size: 19px; line-height: 1.65; font-weight: 500; max-width: 620px; margin: 22px auto 0; }
.hero-card .cta-row { margin: 30px 0 0; }
.hero-strip { display: grid; grid-template-columns: repeat(4,1fr); margin-top: 40px; border-top: 1px solid var(--line); padding-top: 28px; }
.hero-strip div { text-align: center; padding: 0 12px; border-right: 1px solid var(--line); }
.hero-strip div:last-child { border-right: 0; }
.hero-strip strong { display: block; font: 800 28px/1.3 Poppins,sans-serif; color: var(--mid); }
.hero-strip span { font-size: 13px; color: var(--muted); }
.hero-card .author-credit { margin-top: 24px; }
@media (max-width: 860px) { .hero-card { padding: 36px 22px 32px; } .hero-strip { grid-template-columns: 1fr 1fr; row-gap: 22px; } .hero-strip div:nth-child(2) { border-right: 0; } .hero-strip strong { font-size: 22px; } }

/* buttons */
.cta-row { gap: 16px; margin: 36px 0 0; }
.button.big { min-height: 72px; padding: 14px 18px 14px 36px; border-radius: 999px; font: 700 15px/1.2 Poppins,sans-serif; letter-spacing: .05em; gap: 22px; justify-content: space-between; box-shadow: 0 12px 30px #2a4a8833; transition: transform .2s, box-shadow .2s, background .2s; }
.button.big:hover { background: linear-gradient(120deg,var(--deep),var(--mid)); transform: translateY(-2px); }
.button.big .btn-text { display: flex; flex-direction: column; align-items: flex-start; text-align: left; }
.button.big .btn-text b { font-weight: 700; }
.button.big .btn-text small { font: 500 12px/1.3 Inter,sans-serif; letter-spacing: 0; text-transform: none; opacity: .85; margin-top: 4px; }
.button.big .btn-arrow { display: inline-grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; background: #ffffff2b; font-size: 20px; letter-spacing: 0; flex: none; transition: transform .2s; }
.button.big:hover .btn-arrow { transform: translateX(4px); }
.button.big.outline { background: #fff; color: var(--mid); border: 2px solid var(--mid); box-shadow: none; padding: 14px 18px 14px 36px; }
.button.big.outline .btn-arrow { background: var(--tint); color: var(--mid); }
.button.big.outline:hover { background: var(--tint); }
.cta-row .button.big.outline:last-child:not(:first-child) { padding: 14px 36px; justify-content: center; }
.button.big.light { background: #fff; color: var(--deep); box-shadow: 0 14px 34px #00000040; }
.button.big.light:hover { background: #f5f8fc; }
.button.big.light .btn-arrow { background: var(--deep); color: #fff; }
.dark-panel { background: linear-gradient(140deg,#142748,#1b2a5e 60%,#1f3a70); border-color: #1b2a5e; color: #fff; }
.dark-panel h2, .dark-panel h3, .dark-panel .copy-panel p { color: #fff; }
.dark-panel .eyebrow { color: #a7bddf; }
.dark-panel .highlight, .dark-panel .accent-line { color: #fff; background-image: linear-gradient(#34599f,#34599f); }
@media (max-width: 860px) { .button.big { width: 100%; min-height: 66px; padding-left: 26px; font-size: 14px; } .cta-row .button.big.outline:last-child:not(:first-child) { padding: 14px 26px; } }

/* showcase + video slots */
.showcase { display: grid; gap: 28px; max-width: 1000px; margin: 0 auto; }
.showcase img { width: 100%; height: auto; aspect-ratio: auto; object-fit: initial; }
.showcase figcaption { padding: 16px 24px; font-size: 14px; text-align: center; color: var(--muted); }
.video-slot { position: relative; max-width: 900px; margin: 0 auto; border-radius: 16px; overflow: hidden; aspect-ratio: 16 / 9; background: var(--deep); box-shadow: 0 18px 50px #1f3a702e; }
.video-slot img { width: 100%; height: 100%; object-fit: cover; opacity: .55; }
.video-slot .play { position: absolute; inset: 0; margin: auto; width: 84px; height: 84px; display: grid; place-items: center; border-radius: 50%; background: #fff; color: var(--mid); font-size: 28px; padding-left: 5px; box-shadow: 0 10px 30px #00000055; }
.video-slot .slot-label { position: absolute; left: 0; right: 0; bottom: 0; padding: 40px 16px 16px; text-align: center; color: #fff; font: 600 12px Poppins,sans-serif; letter-spacing: .08em; text-transform: uppercase; background: linear-gradient(transparent,#22032fcc); }
.video-slot.agent-slot { aspect-ratio: 4 / 5; max-width: 280px; width: 100%; }
.video-slot.agent-slot img { object-fit: cover; object-position: top; opacity: .8; }
.video-slot.agent-slot .play { width: 64px; height: 64px; font-size: 22px; }
.agent-support { grid-template-columns: 280px 1fr; margin-bottom: 40px; }
@media (max-width: 860px) { .agent-support { grid-template-columns: 1fr; } .video-slot.agent-slot { margin: 0 auto; } .video-slot .play { width: 64px; height: 64px; font-size: 22px; } }

/* author figure: same height as the text beside it */
.author-intro { grid-template-columns: 300px 1fr; align-items: stretch; gap: 48px; max-width: 960px; }
.author-figure { margin: 0; position: relative; min-height: 420px; }
.author-figure img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; object-position: center bottom; border-radius: 0; }
.author-intro > div:not(.author-figure) { align-self: center; }
@media (max-width: 860px) { .author-intro { grid-template-columns: 1fr; gap: 20px; } .author-figure { min-height: 0; height: min(440px, 105vw); } .author-intro > img { max-width: none; } }

/* flipbook */
.flipbook { max-width: 860px; margin: 40px auto 0; }
.fb-stage { position: relative; perspective: 1800px; aspect-ratio: 838 / 700; }
.fb-page { position: absolute; inset: 0; padding: 0; border: 0; background: none; cursor: pointer; transform-style: preserve-3d; transition: transform .9s cubic-bezier(.4,.1,.2,1), opacity .9s; backface-visibility: hidden; }
.fb-face { display: block; width: 100%; height: 100%; background: #fff; border: 1px solid var(--line); border-radius: 10px; overflow: hidden; box-shadow: 0 22px 54px #1f3a702e, 0 2px 0 #fff inset; position: relative; display: grid; place-items: center; }
.fb-face img { width: 100%; height: 100%; object-fit: contain; transform-origin: var(--ox) var(--oy); transition: transform 1.4s cubic-bezier(.3,.1,.2,1); }
.fb-page.zoom img { transform: translate(calc(50% - var(--ox)), calc(50% - var(--oy))) scale(1.7); }
.flipbook[data-page="0"] .fb-0 { transform: rotateY(0); transform-origin: left center; z-index: 2; }
.flipbook[data-page="0"] .fb-1 { transform: rotateY(0) translateX(3%) rotate(1.5deg); opacity: 0; z-index: 1; }
.flipbook[data-page="1"] .fb-0 { transform: rotateY(-100deg); transform-origin: left center; opacity: 0; z-index: 1; pointer-events: none; }
.flipbook[data-page="1"] .fb-1 { transform: rotateY(0); z-index: 2; }
.fb-tabs { display: grid; grid-template-columns: 1fr 1fr; margin-top: 26px; border: 1px solid var(--line); border-radius: 14px; overflow: hidden; }
.fb-tabs button { cursor: pointer; background: #fff; border: 0; padding: 22px 20px; text-align: center; display: flex; flex-direction: column; gap: 4px; align-items: center; font-family: Inter,sans-serif; color: var(--muted); }
.fb-tabs button + button { border-left: 1px solid var(--line); }
.fb-tabs strong { font: 800 34px/1.1 Poppins,sans-serif; color: var(--mid); }
.fb-tabs span { font-size: 14px; font-weight: 600; color: var(--ink); }
.fb-tabs small { font-size: 12px; }
.fb-tabs button[aria-selected="true"] { background: var(--tint); }
.fb-hint { text-align: center; font-size: 12px; color: var(--muted); margin: 14px 0 0; }
.fb-hint a { text-decoration: underline; text-underline-offset: 3px; }
@media (prefers-reduced-motion: reduce) { .fb-page, .fb-face img { transition: none; } }
@media (max-width: 860px) { .fb-tabs strong { font-size: 26px; } .fb-tabs span { font-size: 12px; } .fb-tabs button { padding: 16px 10px; } .fb-page.zoom img { transform: translate(calc(50% - var(--ox)), calc(50% - var(--oy))) scale(1.5); } }

.hero-copy h1 { max-width: 760px; font-size: clamp(30px,3.6vw,46px); }
.hero-copy h1 .accent-line { white-space: normal; }

/* lesson row: screenshot and finish card share one height */
.lesson-row { display: grid; grid-template-columns: 1.1fr .9fr; gap: 28px; align-items: stretch; }
.lesson-row .screenshot-frame { display: flex; flex-direction: column; }
.lesson-row .screenshot-frame > a { flex: 1; display: block; min-height: 0; }
.lesson-row .screenshot-frame img { width: 100%; height: 100%; object-fit: cover; object-position: top; }
.finish-card { display: flex; flex-direction: column; background: var(--tint); border: 1px solid var(--line); border-radius: 14px; padding: 32px 30px; }
.finish-card .eyebrow { text-align: left; }
.finish-card h3 { text-align: left; font-size: 24px; line-height: 1.3; margin-bottom: 18px; }
.finish-rows { display: flex; flex-direction: column; flex: 1; }
.finish-rows div { flex: 1; display: flex; flex-direction: column; justify-content: center; gap: 6px; padding: 16px 0; border-top: 1px solid var(--line); }
.finish-rows b { font: 700 17px Poppins,sans-serif; color: var(--deep); }
.finish-rows span { font-size: 15px; line-height: 1.65; color: var(--muted); }
@media (max-width: 860px) { .lesson-row { grid-template-columns: 1fr; } .lesson-row .screenshot-frame img { height: auto; } .finish-card { padding: 26px 22px; } }

/* open book spread */
.openbook { max-width: 1000px; margin: 40px auto 0; }
.book { position: relative; display: grid; grid-template-columns: 1fr 1fr; align-items: start; gap: 0; padding: 22px 22px 26px; background: linear-gradient(180deg,#2a4a88,#1b2a5e); border-radius: 18px; box-shadow: 0 26px 60px #1f3a7040; }
.bk-page { margin: 0; background: #fffdf8; box-shadow: 0 2px 0 #e9dfcf, 0 6px 14px #00000030; }
.bk-page a { display: block; }
.bk-page img { width: 100%; height: auto; display: block; }
.bk-left { border-radius: 8px 0 0 8px; background-image: linear-gradient(90deg,transparent 94%,#00000022); }
.bk-right { border-radius: 0 8px 8px 0; background-image: linear-gradient(270deg,transparent 94%,#00000022); }
.bk-spine { position: absolute; left: 50%; top: 22px; bottom: 26px; width: 26px; margin-left: -13px; background: linear-gradient(90deg,transparent,#0000002e 45%,#00000040 50%,#0000002e 55%,transparent); pointer-events: none; }
.bk-labels { display: grid; grid-template-columns: 1fr 1fr; margin-top: 22px; border: 1px solid var(--line); border-radius: 14px; overflow: hidden; background: #fff; }
.bk-labels div { padding: 20px 16px; text-align: center; display: flex; flex-direction: column; gap: 4px; }
.bk-labels div + div { border-left: 1px solid var(--line); }
.bk-labels strong { font: 800 34px/1.1 Poppins,sans-serif; color: var(--mid); }
.bk-labels span { font-size: 14px; font-weight: 600; color: var(--ink); }
.bk-labels small { font-size: 12px; color: var(--muted); }
@media (max-width: 860px) { .book { grid-template-columns: 1fr; gap: 14px; padding: 14px; } .bk-spine { display: none; } .bk-left, .bk-right { border-radius: 8px; background-image: none; } .bk-labels strong { font-size: 26px; } .bk-labels span { font-size: 12px; } }

/* rectangular buttons, no glow */
.button.big { border-radius: 10px; box-shadow: none; min-height: 76px; padding: 0 40px; font-size: 16px; letter-spacing: .06em; gap: 24px; justify-content: center; text-align: center; transition: background .2s; }
.button.big:hover { transform: none; background: linear-gradient(120deg,var(--deep),var(--deep)); }
.button.big .btn-arrow { width: auto; height: auto; background: none; border-radius: 0; font-size: 24px; font-weight: 400; }
.button.big.outline { padding: 0 40px; border-width: 2px; }
.button.big.outline:hover { background: var(--mid); color: #fff; }
.button.big.outline .btn-arrow { background: none; color: inherit; }
.button.big.light { box-shadow: none; }
.button.big.light .btn-arrow { background: none; color: inherit; }
.cta-row .button.big.outline:last-child:not(:first-child) { padding: 0 40px; }
/* cta cards */
.cta-card { display: grid; grid-template-columns: 1.25fr 1fr; align-items: stretch; max-width: 890px; margin: 40px auto 0; background: var(--tint); border: 1px solid var(--line); border-radius: 14px; overflow: hidden; }
.cta-card-copy { padding: 32px 36px; }
.cta-card-copy .eyebrow { text-align: left; margin-bottom: 14px; }
.cta-card-copy ul { list-style: none; margin: 0; padding: 0; }
.cta-card-copy li { position: relative; padding: 9px 0 9px 30px; font-size: 16px; line-height: 1.55; border-top: 1px solid var(--line); }
.cta-card-copy li:first-child { border-top: 0; }
.cta-card-copy li:before { content: '✓'; position: absolute; left: 0; font-weight: 800; color: var(--mid); }
.cta-card-action { display: flex; align-items: center; justify-content: center; padding: 28px; background: #fff; border-left: 1px solid var(--line); }
.cta-card-action .cta-row { margin: 0; width: 100%; }
.cta-card-action .button.big { width: 100%; }
.cta-card-action .button.big.stacked { min-height: 92px; }
.dark-panel .cta-row { margin-top: 32px; }
@media (max-width: 860px) { .cta-card { grid-template-columns: 1fr; } .cta-card-action { border-left: 0; border-top: 1px solid var(--line); padding: 22px; } .cta-card-copy { padding: 26px 22px; } }
/* extras card */
.extras-card .lesson-list li:before { content: '★'; }

.agent-panel video { width: 100%; height: auto; display: block; }

/* is this for you */
.fit-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0; max-width: 940px; margin: 0 auto; border: 1px solid var(--line); border-radius: 14px; overflow: hidden; }
.fit-grid article { padding: 32px 30px; background: #fff; }
.fit-grid article + article { border-left: 1px solid var(--line); background: var(--tint); }
.fit-grid h3 { text-align: left; font-size: 20px; margin-bottom: 14px; }
.fit-grid ul { list-style: none; margin: 0; padding: 0; }
.fit-grid li { position: relative; padding: 11px 0 11px 30px; font-size: 15px; line-height: 1.6; border-top: 1px solid var(--line); }
.fit-grid li:first-child { border-top: 0; }
.fit-yes li:before { content: '✓'; position: absolute; left: 0; font-weight: 800; color: var(--mid); }
.fit-no li:before { content: '✕'; position: absolute; left: 0; font-weight: 800; color: #34599f; }
.dark-panel .ps { text-align: left; border-top: 1px solid #ffffff2e; padding-top: 22px; margin-top: 30px; font-size: 16px; }
@media (max-width: 860px) { .fit-grid { grid-template-columns: 1fr; } .fit-grid article + article { border-left: 0; border-top: 1px solid var(--line); } .fit-grid article { padding: 26px 22px; } }

/* flat icons: dark purple circle, white glyph, never a shadow or glow */
.ico { display: block; width: 64px; height: 64px; margin: 0 auto 14px; border-radius: 50%; box-shadow: none; filter: none; }
.ico-inline { display: inline-block; width: 28px; height: 28px; vertical-align: middle; margin-right: 8px; box-shadow: none; filter: none; }
.genre-grid .ico { margin-bottom: 16px; }
.benefit-grid .ico { margin-bottom: 16px; }

/* Kate rule: no shadows or glows, ever */
*, *::before, *::after { box-shadow: none !important; text-shadow: none !important; }

/* fit card polish: flat purple circle bullets, one line each, even spacing */
.fit-grid { align-items: stretch; }
.fit-grid article { display: flex; flex-direction: column; }
.fit-grid h3 { display: flex; align-items: center; gap: 14px; }
.fit-grid h3 .ico { margin: 0 12px 0 0; width: 48px; height: 48px; }
.fit-grid .ico { margin: 0 0 14px; }
.fit-grid ul { display: flex; flex-direction: column; gap: 14px; margin-top: 18px; }
.fit-grid li { border-top: 0; padding: 0 0 0 44px; min-height: 30px; display: flex; align-items: center; font-size: 15px; line-height: 1.4; }
.fit-yes li:before, .fit-no li:before { content: '✓'; position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 30px; height: 30px; border-radius: 50%; background: #1f3a70; color: #fff; font-size: 15px; font-weight: 700; display: grid; place-items: center; }
.fit-no li:before { content: '✕'; background: #1f3a70; color: #fff; }
.fit-grid li { position: relative; }

/* series figure on a dark panel */
.author-figure.dark { background: #142748; border-radius: 16px; overflow: hidden; }
.author-figure.dark img { object-fit: cover; object-position: center top; }
.series-intro { grid-template-columns: 320px 1fr; }
.series-intro .copy-panel { margin: 0; max-width: none; }
.series-intro .author-figure { min-height: 480px; }
@media (max-width: 860px) { .series-intro { grid-template-columns: 1fr; } .series-intro .author-figure { height: min(460px, 110vw); } }

/* ===== Kate alignment system: every grid is equal width and height, headlines on one line, left-aligned ===== */
.section-heading .eyebrow { font-size: 14px; letter-spacing: .14em; margin-bottom: 20px; }
.hero-copy .eyebrow { font-size: 14px; }
.benefit-grid, .genre-grid, .testimonial-grid, .fit-grid { align-items: stretch; }
.benefit-grid article, .genre-grid article { text-align: left; display: flex; flex-direction: column; align-items: flex-start; }
.benefit-grid h3, .genre-grid h3 { text-align: left; white-space: nowrap; font-size: 20px; margin: 0 0 10px; }
.genre-grid h3 { font-size: 24px; }
.benefit-grid p, .genre-grid p, .genre-grid .eyebrow { text-align: left; }
.benefit-grid .ico, .genre-grid .ico { margin: 0 0 16px; width: 56px; height: 56px; }
.genre-grid .eyebrow { margin: 0 0 10px; }
.genre-grid small { margin-top: auto; padding-top: 14px; }
.testimonial-grid { display: grid; grid-template-columns: repeat(3, 1fr); grid-auto-rows: 1fr; gap: 22px; }
.testimonial-grid .testimonial-card { grid-column: auto !important; display: flex; flex-direction: column; margin: 0; }
.testimonial-card .quote-highlight { min-height: 3.1em; font-size: 19px; margin-bottom: 16px; }
.testimonial-card blockquote { flex: 1; margin: 0 0 18px; font-size: 14px; line-height: 1.75; }
@media (max-width: 960px) { .testimonial-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 640px) { .testimonial-grid { grid-template-columns: 1fr; grid-auto-rows: auto; } .benefit-grid h3, .genre-grid h3 { white-space: normal; } }
.module-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 28px; grid-auto-rows: auto; }
@media (min-width: 761px) {
 .module-card { display: grid; grid-row: span var(--rows); grid-template-rows: subgrid; margin-bottom: 28px; }
 .module-body { display: contents; }
 .module-body > h3 { min-height: 0; margin: 0; padding: 24px 26px 0; display: block; font-size: 24px; text-align: center; }
 .module-body > .outcome { min-height: 0; margin: 0; padding: 8px 26px 0; display: block; text-align: center; }
 .module-body > .preview-lessons { display: grid; grid-row: span var(--n); grid-template-rows: subgrid; margin: 20px 26px 0; }
 .preview-lessons li { min-height: 0; }
 .module-body > .more-lessons, .module-body > .all-included { margin: 0 26px 24px; align-self: end; }
}
.cta-card .button.big { white-space: nowrap; padding: 0 26px; font-size: 14px; letter-spacing: .04em; gap: 14px; }
.cta-card .button.big .btn-text { flex-direction: row; }
.cta-card-action.dark { position: relative; overflow: hidden; background: #1f3a70; border-left: 0; min-height: 190px; }
.cta-card-action.dark::before { content: ''; position: absolute; inset: 0; background: var(--art) no-repeat right 14px bottom / auto 125%; opacity: .22; }
.cta-card-action.dark .cta-row { position: relative; z-index: 1; }
.cta-card-action.dark .button.big.light { background: #fff; color: #1f3a70; }
.cta-card-action.dark .button.big.light .btn-arrow { background: none; color: #1f3a70; font-size: 22px; }
.cta-card-action.dark .button.big.light:hover { background: #dbe5f2; }

.genre-grid, .benefit-grid, .fit-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.fit-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.genre-grid h3 { font-size: 22px; }
@media (max-width: 860px) { .genre-grid, .benefit-grid { grid-template-columns: 1fr; } .fit-grid { grid-template-columns: 1fr; } }

/* mascot figure is exactly as tall as the text beside it */
.author-intro { align-items: stretch; }
.author-intro > div:not(.author-figure) { align-self: stretch; }
.author-figure { min-height: 0; }
.author-figure img { object-fit: contain; object-position: center bottom; }

.cta-card-action.dark::before { opacity: .42; background-position: right 10px bottom -10px; background-size: auto 135%; }
.cta-card-action.dark::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, #1f3a70 22%, #1f3a7000 100%); }

.series-intro .author-figure { min-height: 0 !important; }
.series-intro { grid-template-columns: 300px 1fr; }

/* spotlight cards for the bestseller lists */
.bestsellers { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; max-width: 960px; margin: 40px auto 0; }
.bestsellers figure { margin: 0; background: var(--tint); border: 1px solid var(--line); border-radius: 14px; overflow: hidden; display: flex; flex-direction: column; }
.bestsellers .spotimg { aspect-ratio: 16 / 8; overflow: hidden; background: #fff; }
.bestsellers .spotimg img { width: 100%; height: 100%; object-fit: cover; display: block; }
.bestsellers figcaption { display: flex; align-items: center; justify-content: center; gap: 16px; padding: 18px; font-weight: 600; line-height: 1.3; text-align: left; color: var(--ink); }
.bestsellers .rank { font: 800 44px Poppins, sans-serif; color: var(--mid); }
@media (max-width: 760px) { .bestsellers { grid-template-columns: 1fr; } }

/* nav: quiet login link, standout purchase button */
.nav-actions { display: flex; align-items: center; gap: 22px; }
.nav-login { color: #dbe5f2; text-decoration: none; font: 600 12px/1.4 Inter, Arial, sans-serif; letter-spacing: .7px; text-transform: uppercase; white-space: nowrap; }
.nav-login:hover { color: #fff; }
.nav-buy { background: var(--bright); color: #fff; padding: 13px 24px; border-radius: 8px; text-decoration: none; font: 700 13px/1.4 Inter, Arial, sans-serif; letter-spacing: .6px; text-transform: uppercase; white-space: nowrap; transition: background .2s; }
.nav-buy:hover { background: #34599f; }
.nav-buy:focus-visible, .nav-login:focus-visible { outline: 3px solid #a7bddf; outline-offset: 4px; }
@media (max-width: 760px) { .nav-login { display: none; } .nav-buy { padding: 11px 14px; font-size: 11px; } }

/* icons, small labels and headlines centered; body text stays left-aligned */
.genre-grid article, #beginner .benefit-grid article, #agent-k .benefit-grid article, #series .benefit-grid article { align-items: stretch; }
.genre-grid .ico, #beginner .benefit-grid .ico, #agent-k .benefit-grid .ico, #series .benefit-grid .ico { margin-left: auto; margin-right: auto; }
.genre-grid .eyebrow, .genre-grid h3, #beginner .benefit-grid h3, #agent-k .benefit-grid h3, #series .benefit-grid h3 { text-align: center; }
.genre-grid p:not(.eyebrow), #beginner .benefit-grid p, #agent-k .benefit-grid p, #series .benefit-grid p, .genre-grid small { text-align: left; }

/* same centered icon + headline treatment for the three columns under the screenshots */
#inside .benefit-grid article { align-items: stretch; }
#inside .benefit-grid .ico { margin-left: auto; margin-right: auto; }
#inside .benefit-grid h3 { text-align: center; }
#inside .benefit-grid p { text-align: left; }

/* sticky purchase bar */
body { padding-bottom: 76px; }
.buybar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; background: #1f3a70; transform: translateY(110%); transition: transform .3s ease; }
.buybar.show { transform: none; }
.buybar-in { display: flex; align-items: center; justify-content: center; gap: 28px; padding: 12px 20px; flex-wrap: wrap; }
.buybar-text { color: #fff; font: 500 14px/1.4 Inter, Arial, sans-serif; display: flex; gap: 14px; align-items: baseline; flex-wrap: wrap; justify-content: center; }
.buybar-text strong { font: 800 15px Poppins, sans-serif; letter-spacing: .5px; }
.buybar-text span { color: #dbe5f2; }
.buybar-btn { background: #fff; color: #1f3a70; text-decoration: none; font: 700 13px/1.2 Poppins, sans-serif; letter-spacing: .05em; padding: 14px 26px; border-radius: 8px; white-space: nowrap; transition: background .2s; }
.buybar-btn:hover { background: #dbe5f2; }
body.editing .buybar { display: none; }
@media (max-width: 760px) { .buybar-text span { display: none; } .buybar-in { gap: 14px; justify-content: space-between; } .buybar-btn { padding: 13px 18px; font-size: 12px; } body { padding-bottom: 70px; } }
.hero-copy .hero-lead, .hero-card .hero-lead { max-width: 940px; font-size: clamp(18px,1.8vw,21px); }

/* v7: when a card's "more lessons" is open, stop pairing row heights so the neighbor has no blank space */
@media(min-width:761px){
.module-card.solo{display:block;grid-row:auto;align-self:start}
.module-card.solo .module-body{display:flex;flex-direction:column}
.module-card.solo .module-body>h3{padding-bottom:0}
.module-card.solo .module-body>.preview-lessons{display:block}
.module-card.solo .module-body>.more-lessons,.module-card.solo .module-body>.all-included{margin:18px 26px 24px}
}
@media(min-width:761px){
.module-card.solo .module-body>.preview-lessons{padding:0;margin:20px 26px 0}
.module-card.solo .module-body>.more-lessons,.module-card.solo .module-body>.all-included{align-self:stretch;text-align:left;width:auto;margin:18px 26px 24px}
.module-card.solo .module-body>.all-included{padding-top:18px}
}
