/* Free product page; intentionally scoped away from shared navigation and footer. */
.free-page{--ink:#172038;--muted:#526075;--violet:#6049ae;--line:#dfe4ed;color:var(--ink);background:#f8f9fc;font-family:var(--font-body,Inter,system-ui,sans-serif);line-height:1.55}.free-page *{box-sizing:border-box}.free-page .free-wrap{max-width:1160px;margin:auto;padding:0 28px 100px}.free-page a{color:inherit;text-decoration:none}.free-page a:focus-visible,.free-page input:focus-visible,.free-page select:focus-visible{outline:3px solid #7354c0;outline-offset:4px}.free-crumb{display:flex;gap:12px;align-items:center;padding:26px 0;color:#59657b;font-size:.82rem}.free-crumb a{text-decoration:underline;text-underline-offset:3px}.free-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,680px) minmax(0,380px);justify-content:center;min-height:475px;background:#192441;color:#fff;width:100vw;margin-left:calc(50% - 50vw)}.free-hero>div:first-child{padding:clamp(36px,6vw,80px);position:relative;z-index:1}.free-eyebrow,.free-heading>span,.free-card-kicker,.free-close>span{font-size:.74rem;letter-spacing:.16em;font-weight:800}.free-eyebrow{color:#c8b9ff}.free-page h1,.free-page h2,.free-page h3{font-family:var(--font-heading,Inter,system-ui,sans-serif);letter-spacing:-.045em;line-height:1.12;margin:0}.free-page h1{font-size:clamp(2.6rem,5vw,4.65rem);margin:20px 0}.free-page .free-hero h1,.free-page .free-hero h1 *{color:#fff}.free-page .free-hero h1 em{font-style:normal;color:#d8c9ff}.free-page .free-hero p{max-width:490px;color:#eef1fc;font-size:1.1rem;margin:0 0 30px}.free-page .free-hero .free-eyebrow{color:#ded3ff}.free-button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:15px 20px;background:#d7c8ff;color:#211747!important;border-radius:10px;font-weight:800;box-shadow:0 4px 0 #8f79ca}.free-button:hover{background:#ede5ff}.free-hero-art{display:flex;flex-direction:column;align-items:center;justify-content:space-around;gap:15px;padding:42px;background:radial-gradient(circle at center,#7668b7 0,#383b72 48%,#252a51 80%);text-align:center}.free-page .free-hero-art>span{align-self:flex-end;font-size:.75rem;letter-spacing:.14em;color:#f1eaff}.free-orbit{display:grid;place-items:center;border:1px solid #bdb2eb;border-radius:50%;width:190px;aspect-ratio:1;box-shadow:0 0 0 20px #ffffff0c,0 0 0 42px #ffffff0a;transform:rotate(-12deg)}.free-page .free-orbit b{font-size:7rem;line-height:1;color:#fff;font-family:Georgia,serif;font-weight:400}.free-page .free-hero-art strong{font-size:1.2rem;line-height:1.35;color:#fff}.free-section{padding-top:90px}.free-heading{margin-bottom:26px}.free-heading>span{color:#624ba5}.free-heading h2{font-size:clamp(2rem,3.5vw,3rem);margin:10px 0}.free-heading p{color:var(--muted);margin:0;font-size:1.05rem}.free-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.free-card{display:flex;flex-direction:column;align-items:flex-start;position:relative;min-height:260px;padding:30px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 9px 30px #1623440b;transition:transform .2s,box-shadow .2s}.free-card:hover{transform:translateY(-3px);box-shadow:0 15px 36px #1623441c}.free-card-feature{background:#ebe7fa;border-color:#d5caf5}.free-card-kicker{color:#594398}.free-card-mark{position:absolute;right:29px;top:24px;font:400 2.5rem Georgia,serif;color:#8271bb}.free-card h3{font-size:1.65rem;margin:36px 0 10px;max-width:85%}.free-card p{margin:0 0 28px;color:var(--muted);max-width:420px}.free-card-link{margin-top:auto;font-weight:800;color:#483087;text-decoration:underline;text-underline-offset:4px}.free-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 16px}.free-controls label{font-size:.85rem;font-weight:700}.free-controls input,.free-controls select{border:1px solid #aab5c5;border-radius:8px;padding:11px 12px;background:white;color:var(--ink);min-width:175px}.free-controls input{min-width:min(100%,280px)}#free-status{color:var(--muted);min-height:1.5em}.free-lessons .free-card{min-height:200px}.free-lessons .free-card h3{margin-top:24px}.free-more{margin:25px 0 0;font-weight:750;color:#493086}.free-more a{text-decoration:underline;text-underline-offset:4px}.free-close{margin-top:90px;padding:50px;border-radius:20px;background:#e9eef7}.free-close>span{color:#5c478d}.free-close h2{font-size:clamp(2rem,3.5vw,3rem);margin:10px 0}.free-close p{color:var(--muted);margin:0 0 25px}.free-close .free-button{background:#463378;color:#fff!important;box-shadow:none}.free-close .free-button:hover{background:#302159}@media(max-width:700px){.free-page .free-wrap{padding:0 18px 64px}.free-hero{display:block}.free-hero>div:first-child{padding:38px 26px}.free-hero-art{min-height:190px;padding:26px}.free-orbit{display:none}.free-hero-art strong{align-self:flex-start;text-align:left}.free-section{padding-top:64px}.free-grid{grid-template-columns:1fr}.free-card{min-height:225px;padding:25px}.free-close{margin-top:65px;padding:35px 25px}.free-controls{align-items:stretch;flex-direction:column}.free-controls input,.free-controls select{width:100%}}@media(prefers-reduced-motion:reduce){.free-card{transition:none}.free-card:hover{transform:none}}

/* Shared surfaces use !important on descendants of content zones. Scope all
   exceptions to this page only; never override the shared header or footer. */
body[data-bw-page="free"] main.free-page[data-bw-zone="content"] {
  font-family:"Space Grotesk",sans-serif !important;
}
body[data-bw-page="free"] main.free-page[data-bw-zone="content"] :is(h1,h2,h3) {
  font-family:"Space Grotesk",sans-serif !important;
  font-weight:700 !important;
  color:#172038 !important;
}
body[data-bw-page="free"] main.free-page[data-bw-zone="content"] :is(p,li) {
  font-family:"Space Grotesk",sans-serif !important;
  color:#526075 !important;
}
body[data-bw-page="free"] main.free-page[data-bw-zone="content"] .free-hero h1 {
  color:#ffffff !important;
}
body[data-bw-page="free"] main.free-page[data-bw-zone="content"] .free-hero h1 em {
  color:#dccfff !important;
  font-family:"Newsreader",Georgia,serif !important;
  font-weight:500 !important;
}
body[data-bw-page="free"] main.free-page[data-bw-zone="content"] .free-hero p {
  color:#f0efff !important;
}
body[data-bw-page="free"] main.free-page[data-bw-zone="content"] .free-hero-art :is(b,strong,span) {
  color:#ffffff !important;
}
body[data-bw-page="free"] main.free-page[data-bw-zone="content"] .free-hero-art b {
  font-family:"Newsreader",Georgia,serif !important;
}
