/* LEARN HARD product surfaces only; course/player styles live in course.css. */
.lh-feature, .lh-sales { color:#102638; }
.lh-feature *, .lh-sales * { box-sizing:border-box; }
.lh-feature { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(260px,.8fr); gap:48px; align-items:center; margin:46px 0 56px; padding:48px; border:1px solid #c2d2dd; border-top:6px solid #d7ef4c; border-radius:22px; background:#f8fbfd; box-shadow:0 14px 32px -20px #183b5855; }
.lh-feature-copy, .lh-hero > div { min-width:0; }
.lh-logo { display:block; width:min(100%,420px); height:auto; margin:0 0 26px; }
.lh-feature h2 { max-width:24ch; margin:0 0 20px; color:#102638; font-size:clamp(1.65rem,2.8vw,2.6rem); line-height:1.12; letter-spacing:-.035em; text-wrap:balance; }
.lh-lead { max-width:58ch; margin:0 0 24px; color:#3c566a; font-size:1rem; line-height:1.75; }
.lh-facts { display:flex; flex-wrap:wrap; gap:9px 18px; list-style:none; padding:0; margin:24px 0; font-size:.82rem; font-weight:650; line-height:1.6; color:#31536a; }
.lh-facts li { position:relative; padding-left:12px; }
.lh-facts li::before { content:''; position:absolute; width:4px; height:4px; top:.7em; left:0; background:#59717d; }
.lh-offer { display:flex; align-items:center; flex-wrap:wrap; gap:24px 30px; margin-top:28px; }
.lh-price { margin:0; display:grid; gap:5px; line-height:1.3; }
.lh-price strong { font-size:2rem; font-weight:800; letter-spacing:-.04em; }
.lh-price span { font-size:.82rem; color:#52697a; }
.lh-cta { display:inline-flex; align-items:center; justify-content:center; gap:20px; min-height:48px; padding:14px 20px; border:1px solid #102638; border-radius:9px; background:#102638; color:white; font:inherit; font-size:.9rem; font-weight:750; text-decoration:none; line-height:1.4; }
.lh-cta:hover:not(:disabled) { background:#25495f; }
.lh-cta:focus-visible, .lh-faq summary:focus-visible, .lh-footer a:focus-visible { outline:3px solid #487e9f; outline-offset:4px; }
.lh-cta:disabled { opacity:1; cursor:not-allowed; border-color:#516d7f; background:#31536a; color:white; }
.lh-purchase-status { margin:10px 0 0; color:#52697a; font-size:.78rem; line-height:1.6; max-width:29ch; }
.lh-course-visual { align-self:stretch; display:flex; flex-direction:column; justify-content:center; min-width:0; padding:32px; border:1px solid #31536a; border-radius:15px; background:#102638; color:white; }
.lh-kicker { margin:0 0 16px; color:#416078; font-size:.7rem; font-weight:800; letter-spacing:.14em; line-height:1.6; }
.lh-course-visual .lh-kicker { color:#d7ef4c; }
.lh-module-count { display:flex; align-items:center; gap:20px; margin:16px 0 28px; }
.lh-module-count strong { color:white; font-size:5rem; line-height:1; font-weight:750; letter-spacing:-.06em; }
.lh-module-count span { color:#d8e4eb; line-height:1.5; font-size:1.1rem; }
.lh-summary-list { list-style:none; margin:0; padding:0; }
.lh-summary-list li { padding:15px 0; border-top:1px solid #456072; font-size:.9rem; line-height:1.6; color:#e6eff4; }
.lh-summary-list li:last-child { padding-bottom:0; }
body[data-page="learn-hard-course"] { background:#f3f7f9; }
.lh-sales { max-width:1180px; padding-top:48px; padding-bottom:70px; }
.lh-hero { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(260px,.75fr); gap:52px; align-items:center; padding:40px; background:#fff; border:1px solid #c2d2dd; border-top:6px solid #d7ef4c; border-radius:22px; }
.lh-sales h1 { margin:0 0 24px; font-size:clamp(2rem,3.6vw,3.2rem); line-height:1.08; letter-spacing:-.045em; text-wrap:balance; color:#102638; }
.lh-sales h2 { color:#102638; margin:0 0 22px; font-size:clamp(1.65rem,2.7vw,2.5rem); line-height:1.15; letter-spacing:-.035em; text-wrap:balance; }
.lh-sales h3 { color:#102638; }
.lh-meta { margin:8px 0; font-size:.8rem; line-height:1.7; color:#416078; }
.lh-section { margin-top:76px; }
.lh-section > p:not(.lh-kicker), .lh-creator p, .lh-faq p { max-width:70ch; color:#3c566a; font-size:1rem; line-height:1.8; }
.lh-overview { padding:0 40px; }
.lh-range-visual { margin-top:36px; padding:26px 0; border-top:1px solid #c2d2dd; border-bottom:1px solid #c2d2dd; }
.lh-range-visual ul { display:flex; flex-direction:column; align-items:flex-start; gap:14px; list-style:none; padding:0; margin:0; }
.lh-range-visual li { white-space:nowrap; font-size:.85rem; font-weight:700; color:#31536a; }
.lh-section-heading { margin-bottom:32px; }
.lh-modules { display:grid; grid-template-columns:1fr 1fr; gap:0 38px; list-style:none; margin:0; padding:0; counter-reset:module; }
.lh-modules li { display:flex; align-items:baseline; gap:20px; padding:26px 0; border-top:1px solid #bdcfdb; }
.lh-modules li > span { color:#56768a; font-size:.8rem; font-weight:750; }
.lh-modules li > div { min-width:0; }
.lh-modules li > span { flex-shrink:0; }
.lh-modules p { margin:8px 0 0; color:#3c566a; font-size:.9rem; line-height:1.65; }
.lh-modules h3 { margin:0; font-size:1.1rem; line-height:1.5; text-wrap:balance; }
.lh-how { padding:38px 40px; border-radius:18px; background:#e6eef4; }
.lh-how ol { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; }
.lh-how li span { display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; background:#102638; color:#e5ff50; border-radius:50%; font-size:.8rem; font-weight:750; }
.lh-how li p { line-height:1.7; color:#31536a; font-size:.95rem; margin:16px 0 0; }
.lh-how .lh-pass-note { border-top:1px solid #b7cbd8; padding-top:22px; margin:26px 0 0; font-size:.85rem; }
.lh-audience { max-width:850px; padding:0 40px; border-left:4px solid #d7ef4c; }
.lh-creator { padding:32px 40px; border-top:1px solid #c2d2dd; }
.lh-creator h2 { font-size:1.65rem; }
.lh-purchase { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(230px,.65fr); gap:60px; padding:40px; border:1px solid #b4c9d8; border-top:5px solid #d7ef4c; border-radius:18px; background:#fff; }
.lh-purchase h2 { font-size:1.9rem; }
.lh-purchase .lh-cta { margin-top:24px; }
.lh-purchase .lh-facts { margin-bottom:0; }
.lh-faq { max-width:850px; margin-left:auto; margin-right:auto; }
.lh-faq details { border-bottom:1px solid #c2d2dd; padding:22px 0; }
.lh-faq summary { cursor:pointer; min-height:30px; font-size:1rem; font-weight:650; line-height:1.6; color:#102638; }
.lh-faq p { margin:18px 0 0; }
.lh-footer { padding:24px; border-top:1px solid #c2d2dd; color:#52697a; font-size:.8rem; line-height:1.8; }
.lh-footer a { color:#31536a; }
.lh-skip { position:absolute; left:16px; top:-100px; padding:14px; background:white; color:#102638; z-index:100; }
.lh-skip:focus { top:16px; }
@media(max-width:1000px) {
 .lh-feature,.lh-hero { grid-template-columns:1fr; gap:30px; padding:32px; }
 .lh-course-visual { display:grid; grid-template-columns:1fr 1fr; gap:8px 30px; padding:26px; }
 .lh-course-visual .lh-kicker { grid-column:1/-1; }
 .lh-module-count { align-self:center; margin:0; }
 .lh-summary-list { grid-column:2; }
 .lh-summary-list li { padding:10px 0; }
 .lh-feature h2 { max-width:28ch; }
 .lh-sales h1 { max-width:24ch; }
 .lh-how ol { grid-template-columns:1fr 1fr; gap:28px; }
 .lh-purchase { gap:32px; }
}
@media(max-width:600px) {
 .lh-feature { padding:24px 20px; margin:30px 0 38px; border-radius:16px; }
 .lh-logo { width:min(100%,360px); margin-bottom:22px; }
 .lh-lead { font-size:.95rem; line-height:1.7; }
 .lh-offer { gap:20px; align-items:flex-start; }
 .lh-course-visual { display:block; padding:24px; }
 .lh-module-count { margin:16px 0 24px; }
 .lh-module-count strong { font-size:3.6rem; }
 .lh-module-count span { font-size:1rem; }
 .lh-sales { padding-top:24px; padding-bottom:40px; }
 .lh-hero { padding:24px 20px; gap:26px; border-radius:16px; }
 .lh-hero .lh-course-visual { display:none; }
 .lh-sales h1 { font-size:clamp(1.85rem,7vw,2.5rem); }
 .lh-section { margin-top:48px; }
 .lh-overview { padding:0 4px; }
 .lh-modules { grid-template-columns:1fr; }
 .lh-modules li { padding:20px 0; gap:16px; }
 .lh-modules h3 { font-size:1rem; }
 .lh-how { padding:28px 20px; }
 .lh-how ol { grid-template-columns:1fr; gap:20px; }
 .lh-how li { display:flex; gap:14px; align-items:baseline; }
 .lh-how li span { flex-shrink:0; }
 .lh-how li p { margin:0; }
 .lh-audience { padding:0 20px; }
 .lh-creator { padding:26px 0 0; }
 .lh-purchase { grid-template-columns:1fr; padding:28px 22px; gap:26px; }
 .lh-purchase h2 { font-size:1.65rem; }
 .lh-range-visual li { font-size:.8rem; }
}

/* Sales-page pacing. These rules do not alter the homepage feature. */
.lh-impact-page .lh-hero { border-radius:0; border:0; border-top:4px solid #d7ef4c; padding:40px 0 48px; background:transparent; }
.lh-impact-page .lh-hero .lh-course-visual { border-radius:4px; }
.lh-impact-page { --lh-section-gap:56px; --lh-impact-space:72px; }
.lh-impact-page .lh-section { margin-top:var(--lh-section-gap); }
.lh-impact { padding:var(--lh-impact-space) 0; margin-top:var(--lh-section-gap); }
.lh-impact h2 { max-width:20ch; margin:0; font-size:clamp(2.3rem,5.3vw,4.7rem); line-height:1.08; letter-spacing:-.045em; text-wrap:balance; }
.lh-impact h2 span { display:block; }
.lh-impact h2 span + span { margin-top:.28em; }
.lh-opening { margin-top:0; border-top:1px solid #bdcfdb; }
.lh-opening h2 { max-width:24ch; }
.lh-opening .lh-emphasis { color:#416078; }
.lh-opening-copy { display:grid; grid-template-columns:1fr 1fr; gap:48px; margin:48px 0 0 20%; }
.lh-opening-copy p, .lh-growth-copy > p { font-size:1.05rem; line-height:1.8; color:#3c566a; margin:0; }
.lh-impact-page .lh-overview { padding:0; margin-top:0; }
.lh-career { background:#102638; color:#e6eff4; padding:var(--lh-impact-space) 56px; }
.lh-career h2 { color:#fff; max-width:23ch; }
.lh-career .lh-kicker { color:#d7ef4c; }
.lh-career > p:not(.lh-kicker) { max-width:65ch; line-height:1.8; font-size:1.05rem; }
.lh-career-directions { margin-top:32px; }
.lh-growth { display:grid; grid-template-columns:1fr 1.3fr; gap:40px; border-top:1px solid #456072; padding-top:48px; margin-top:48px; }
.lh-growth h3 { font-size:clamp(1.4rem,2.2vw,1.85rem); line-height:1.28; letter-spacing:.015em; color:#d7ef4c; margin:0; max-width:20ch; text-wrap:balance; }
.lh-growth-copy p { color:#e6eff4; }
.lh-sequence p { margin:0 0 16px; line-height:1.5; }
.lh-growth-copy > p { margin-top:30px; }
.lh-growth-copy .lh-growth-close { font-size:1.55rem; line-height:1.4; color:white; font-weight:700; text-wrap:balance; }
.lh-task { margin-top:0; display:grid; grid-template-columns:1.2fr 1fr; gap:72px; align-items:center; border-bottom:1px solid #bdcfdb; }
.lh-task h2 { font-size:clamp(2.2rem,4.3vw,3.8rem); }
.lh-questions { border-left:3px solid #a9be25; padding-left:32px; font-size:clamp(1.15rem,2vw,1.5rem); color:#31536a; }
.lh-questions p { margin:0; padding:20px 0; text-wrap:balance; }
.lh-impact-page .lh-section-heading h2 { max-width:32ch; }
.lh-next-move { background:white; padding:80px 56px; }
.lh-next-move h2 { max-width:24ch; }
.lh-next-move .lh-emphasis { color:#31536a; border-left:5px solid #d7ef4c; padding-left:24px; margin-top:32px; }
.lh-impact-page .lh-how { background:transparent; padding:0; border-radius:0; }
.lh-assessment-finish { margin-top:44px; border-top:1px solid #bdcfdb; padding-top:32px; }
.lh-assessment-finish h3 { font-size:1.7rem; margin:0 0 20px; }
.lh-assessment-finish p { line-height:1.7; color:#31536a; }
.lh-assessment-finish .lh-credential-note { font-size:.85rem; max-width:65ch; }
.lh-impact-page .lh-creator { padding:36px 0 0; }
.lh-closing { padding:var(--lh-impact-space) 56px; background:#102638; }
.lh-closing h2 { max-width:none; font-size:clamp(2.8rem,7.4vw,6.5rem); color:white; }
.lh-closing h2 span:last-child { color:#d7ef4c; }
.lh-impact-page .lh-purchase { margin-top:0; border-radius:0; border-top:0; }
/* No enhancement class means visible, static content, including after failure. */
@media(prefers-reduced-motion:no-preference) {
 .lh-reveal-ready [data-lh-reveal]:not([data-lh-reveal="sequence"]),
 .lh-reveal-ready [data-lh-reveal="sequence"] > p {
  opacity:0; transform:translateY(44px);
  transition:opacity 720ms cubic-bezier(.22,.61,.36,1), transform 720ms cubic-bezier(.22,.61,.36,1);
 }
 .lh-impact-page.lh-reveal-ready [data-lh-reveal="left"] { transform:translateX(-48px); }
 .lh-reveal-ready [data-lh-reveal="sequence"] > p:nth-child(2) { transition-delay:120ms; }
 .lh-reveal-ready [data-lh-reveal="sequence"] > p:nth-child(3) { transition-delay:240ms; }
 .lh-reveal-ready [data-lh-reveal].lh-revealed:not([data-lh-reveal="sequence"]),
 .lh-reveal-ready [data-lh-reveal="sequence"].lh-revealed > p { opacity:1; transform:none; }
}
@media(prefers-reduced-motion:reduce) {
 .lh-impact-page [data-lh-reveal], .lh-impact-page [data-lh-reveal] > * { transition:none !important; transform:none !important; opacity:1 !important; }
}
@media(max-width:1000px) {
 .lh-impact-page { --lh-section-gap:48px; --lh-impact-space:56px; }
 .lh-career,.lh-next-move,.lh-closing { padding:56px 32px; }
 .lh-opening-copy { margin-left:0; gap:28px; }
 .lh-growth { gap:32px; }
 .lh-task { gap:36px; }
}
@media(max-width:600px) {
 .lh-impact-page .lh-hero { padding:8px 10px 32px; }
 .lh-impact-page { --lh-section-gap:36px; --lh-impact-space:44px; }
 .lh-impact { padding:var(--lh-impact-space) 10px; }
 .lh-impact h2 { font-size:clamp(2rem,8.8vw,3rem); }
 .lh-opening-copy { grid-template-columns:1fr; margin-top:30px; gap:20px; }
 .lh-opening-copy p,.lh-growth-copy > p { font-size:1rem; }
 .lh-impact-page .lh-overview { padding:0 10px; margin-top:0; }
 .lh-career,.lh-next-move,.lh-closing { padding:44px 22px; }
 .lh-growth { grid-template-columns:1fr; gap:28px; padding-top:32px; margin-top:32px; }
 .lh-growth h3 { max-width:22ch; font-size:1.4rem; }
 .lh-growth-copy .lh-growth-close { font-size:1.35rem; }
 .lh-task { grid-template-columns:1fr; gap:28px; }
 .lh-questions { padding-left:22px; }
 .lh-questions p { padding:12px 0; }
 .lh-next-move .lh-emphasis { padding-left:15px; border-left-width:3px; }
 .lh-closing h2 { font-size:clamp(2.55rem,10vw,3.8rem); }
 .lh-impact-page .lh-purchase { margin-top:0; }
}

/* Passive canonical certificate: static, with the full landscape composition. */
.lh-certificate-offer { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr); gap:40px; align-items:center; padding:40px 0; border-top:1px solid #bdcfdb; border-bottom:1px solid #bdcfdb; }
.lh-certificate-copy p { font-size:1rem; line-height:1.8; color:#3c566a; }
.lh-certificate-copy .lh-certificate-note { font-size:.85rem; color:#52697a; }
.lh-certificate-figure { min-width:0; margin:0; }
.lh-certificate-figure figcaption { margin-top:14px; font-size:.8rem; line-height:1.6; color:#52697a; text-align:center; }
.lh-certificate-figure [data-certificate-preview] { min-width:0; }
@media(max-width:1000px) { .lh-certificate-offer { grid-template-columns:1fr; gap:24px; padding:32px 0; } .lh-certificate-copy { max-width:65ch; } }

/* Real supplied course images: preserve each complete original composition. */
.lh-real-shot { margin:32px 0 48px; min-width:0; }
.lh-shot-window { border:1px solid #bdcfdb; border-radius:12px; overflow:hidden; background:#f0f6fa; box-shadow:0 12px 28px -18px #10263866; }
.lh-shot-window:focus-visible { outline:3px solid #487e9f; outline-offset:4px; }
.lh-shot-window img { display:block; width:100%; height:auto; }
.lh-real-shot figcaption { margin-top:12px; text-align:right; font-size:.78rem; line-height:1.6; }
.lh-real-shot figcaption a { color:#31536a; text-underline-offset:3px; }
.lh-real-shot figcaption a:focus-visible { outline:3px solid #487e9f; outline-offset:4px; }
.lh-shot-interface { width:100%; max-width:840px; margin:8px auto 40px; }
.lh-overview-with-shot { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); gap:40px; align-items:center; }
.lh-overview-with-shot .lh-real-shot { width:100%; max-width:590px; margin:0; }
.lh-shot-teaching { width:100%; max-width:580px; margin:32px auto 0; }
@media(max-width:1000px) {
 .lh-overview-with-shot { grid-template-columns:1fr; gap:28px; }
 .lh-overview-with-shot .lh-real-shot { margin:0 auto; }
}
@media(max-width:600px) {
 .lh-shot-interface { margin:0 0 32px; }
 .lh-real-shot figcaption { text-align:left; }
 .lh-shot-teaching { margin-top:24px; }
}

#home-learn-hard .lh-course-visual { background:#102638; }
/* Let the newly shared account controls wrap only when enlarged text needs it. */
@media(max-width:800px) {
  body[data-page="learn-hard-course"].mobile-menu-ready .header-inner { flex-wrap:wrap; }
  body[data-page="learn-hard-course"] .mobile-header-actions { margin-left:auto; }
}

/* Subordinate purchase details, shared by the two public sales-page offers. */
.lh-sales .lh-purchase-policy { margin-top:16px; color:#52697a; font-size:.75rem; line-height:1.6; }
.lh-sales .lh-purchase-policy p { margin:0; }
.lh-sales .lh-purchase-policy .lh-legal-links { margin-top:5px; font-size:.72rem; }
.lh-purchase-policy a { color:inherit; text-underline-offset:3px; white-space:nowrap; }
.lh-purchase-policy a:focus-visible { outline:3px solid #487e9f; outline-offset:3px; }
.lh-related-reading { color:#3c566a; font-size:.9rem; line-height:1.75; }
.lh-related-reading a, .lh-certificate-copy a { color:#31536a; text-underline-offset:3px; }

/* Allow the existing offer to reflow when text is enlarged. */
.lh-purchase > div { min-width:0; }
.lh-purchase h2 { overflow-wrap:anywhere; }
.lh-purchase .lh-cta { max-width:100%; }
@media(max-width:600px) { .lh-sales h1, .lh-sales h2, .lh-sales h3 { overflow-wrap:anywhere; } }
