/* Marketing layouts; shared product and legal page styles stay in deckloop-public.css. */
.learning-page { background: #161616; }
.learning-skip-link { position: fixed; top: -5rem; left: 1rem; z-index: 1200; padding: .75rem 1rem; background: var(--color-primary); color: #111; border-radius: .5rem; }
.learning-skip-link:focus { top: .75rem; }
.learning-page :focus-visible { outline: 3px solid #ff809c; outline-offset: 5px; }
.learning-kicker { margin-bottom: 1.25rem; color: #ff809c; font-size: .75rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.learning-hero { padding: 6rem 0 4.5rem; background: radial-gradient(ellipse at 85% 40%, #ff386018, transparent 60%); }
.learning-hero-grid { display: grid; grid-template-columns: .95fr 1.05fr; gap: 3.5rem; align-items: center; }
.learning-hero h1 { font-size: clamp(2.9rem, 4.4vw, 4.2rem); letter-spacing: -.055em; line-height: 1.06; font-weight: 800; margin-bottom: 1.6rem; }
.learning-hero h1 span { color: #ff6586; font-size: .86em; }
.learning-lead { font-size: 1.23rem; line-height: 1.65; max-width: 27rem; color: #f0ebed; }
.learning-support { color: #b2abad; font-size: .98rem; line-height: 1.8; margin: 1rem 0 1.75rem; max-width: 28rem; }
.learning-actions { display: flex; flex-wrap: wrap; gap: .75rem; }
.learning-note { margin-top: 1rem; font-size: .78rem; color: #b2abad; line-height: 1.7; }
.learning-note a { text-decoration: underline; text-underline-offset: 3px; }
.learning-product-shot { min-width: 0; border: 1px solid #ffffff20; border-radius: 1rem; overflow: hidden; background: #1a1a1a; box-shadow: 0 24px 70px #0007; }
.learning-window-bar { display: flex; align-items: center; gap: .5rem; padding: .8rem 1rem; border-bottom: 1px solid #ffffff18; font-size: .68rem; color: #c9c2c4; }
.learning-window-bar > span:last-child { margin-left: auto; color: #ff809c; }
.learning-live-dot { width: .4rem; height: .4rem; background: #ff6586; border-radius: 50%; }
.learning-product-shot img { width: 100%; }
.learning-page figcaption { padding: .65rem 1rem; font-size: .7rem; color: #b2abad; text-align: center; }
.learning-outcomes { border-block: 1px solid #ffffff14; background: #1c1b1c; }
.learning-outcomes-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; padding-block: 1.25rem; }
.learning-outcomes p { font-size: .8rem; font-weight: 600; }
.learning-outcomes span { color: #ff809c; margin-right: .6rem; font-size: .7rem; }
.learning-page .section { padding-block: 5rem; }
.learning-section-heading { max-width: 42rem; margin-bottom: 2.5rem; }
.learning-section-heading h2, .learning-library h2, .learning-final-cta h2 { font-size: clamp(2rem, 3.6vw, 3.1rem); line-height: 1.13; letter-spacing: -.04em; font-weight: 750; }
.learning-section-heading h2 span { color: #a9a2a4; }
.learning-section-heading > p:last-child { margin-top: 1.25rem; color: #bdb6b8; line-height: 1.8; max-width: 38rem; }
.learning-proof-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem; }
.learning-proof-card { min-width: 0; background: #1f1e1e; border: 1px solid #ffffff14; border-radius: 1rem; overflow: hidden; }
.learning-proof-copy { padding: 2rem 2rem 1.5rem; }
.learning-label { font-size: .7rem; color: #ff809c; font-weight: 650; letter-spacing: .08em; text-transform: uppercase; }
.learning-proof-card h3 { font-size: 1.6rem; line-height: 1.25; letter-spacing: -.025em; margin-block: .75rem; }
.learning-proof-card p { color: #bdb6b8; font-size: .9rem; line-height: 1.75; max-width: 31rem; }
.learning-proof-card figure { margin: 0 1.25rem; }
.learning-proof-card img { width: 100%; border: 1px solid #ffffff0c; border-radius: .6rem; }
.learning-proof-wide { grid-column: 1 / -1; display: grid; grid-template-columns: .7fr 1fr; align-items: center; padding-block: 1.25rem; }
.learning-test-shot { max-width: 300px; margin-inline: auto !important; }
.learning-loop { background: #1c1b1c; border-block: 1px solid #ffffff10; }
.learning-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 3rem; }
.learning-step-number { color: #ff809c; display: block; font-size: 1.9rem; letter-spacing: -.05em; padding-bottom: .75rem; border-bottom: 1px solid #ffffff20; }
.learning-steps h3 { font-size: 1.35rem; line-height: 1.35; letter-spacing: -.025em; margin: 1.5rem 0 1rem; }
.learning-steps p { color: #bdb6b8; font-size: .92rem; line-height: 1.8; margin-bottom: 1.5rem; }
.learning-steps a { color: #ff809c; font-size: .85rem; font-weight: 600; }
.learning-library { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 5rem; }
.learning-library h2 + p { color: #bdb6b8; margin-block: 1.5rem; line-height: 1.8; }
.learning-subjects { display: grid; gap: 1rem; }
.learning-subject { display: flex; align-items: center; gap: 1.2rem; padding: 1.5rem; border: 1px solid #ffffff14; background: #211e20; border-radius: .75rem; }
.learning-subject:hover { border-color: #ff658677; }
.learning-subject > span:first-child { color: #ff809c; font-size: 1.6rem; min-width: 2rem; }
.learning-subject:nth-child(2) > span:first-child { color: #a9bfff; }
.learning-subject:nth-child(3) > span:first-child { color: #98ddb3; }
.learning-subject > span:last-child { margin-left: auto; color: #bdb6b8; }
.learning-subject strong, .learning-subject small { display: block; }
.learning-subject small { color: #bdb6b8; font-size: .77rem; margin-top: .35rem; }
.learning-final-cta { text-align: center; padding: 5rem 0; border-top: 1px solid #ff658630; background: radial-gradient(ellipse at 50% 100%, #ff38601c, transparent 75%); }
.learning-final-cta .learning-actions { justify-content: center; margin-top: 2rem; }
.learning-page .pricing-plan-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 940px; margin-inline: auto; }
.learning-page .pricing-hero-title { max-width: 20ch; }
.learning-page .pricing-hero-subtitle { max-width: 45rem; }
.learning-page .pricing-plan-card { padding: 2rem; }
.learning-page .pricing-table { min-width: 560px; }
.learning-page .pricing-table-scroll:focus-visible { outline-offset: -3px; }
.learning-pricing-note { max-width: 940px; margin: 1.5rem auto 0; padding: 1.25rem 1.5rem; border: 1px solid #ffffff18; border-radius: .75rem; color: #bdb6b8; font-size: .88rem; }
.learning-pricing-note strong { color: #fafafa; }
.learning-page .pricing-faq-item summary { list-style: revert; }
.learning-page .pricing-faq-item summary::-webkit-details-marker { display: revert; }
.learning-page .feature-section-visual { flex-direction: column; align-items: center; min-width: 0; }
.learning-page .feature-section-visual > a { display: block; max-width: 100%; }
.learning-page .feature-screenshot { max-height: 600px; object-fit: contain; }
@media (max-width: 1000px) {
  .learning-hero-grid { gap: 2rem; }
  .learning-hero { padding-top: 3.5rem; }
  .learning-hero h1 { font-size: clamp(2.8rem, 5vw, 3.6rem); }
  .learning-outcomes-grid { grid-template-columns: repeat(2, 1fr); }
  .learning-library { gap: 2.5rem; }
}
@media (max-width: 700px) {
  .learning-page .feature-section-visual { order: 1; }
  .learning-hero-grid, .learning-proof-grid, .learning-proof-wide, .learning-library, .learning-steps { grid-template-columns: 1fr; }
  .learning-hero { padding-block: 2.75rem 2.5rem; }
  .learning-hero h1 { font-size: clamp(2.7rem, 9.6vw, 4rem); }
  .learning-hero-copy { max-width: 34rem; }
  .learning-hero-grid { gap: 2rem; }
  .learning-lead { font-size: 1.1rem; }
  .learning-outcomes p { font-size: .72rem; }
  .learning-outcomes span { margin-right: .3rem; }
  .learning-page .section { padding-block: 3.5rem; }
  .learning-proof-copy { padding: 1.5rem; }
  .learning-proof-wide { padding-top: 0; }
  .learning-proof-card figure { margin-inline: 1rem; }
  .learning-proof-card .learning-test-shot { width: calc(100% - 2rem); }
  .learning-steps { gap: 2rem; }
  .learning-final-cta { padding-block: 3.5rem; }
  .learning-page .pricing-plan-grid { grid-template-columns: 1fr; }
  .learning-page .pricing-plan-card { padding: 1.5rem; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .learning-page *, .learning-page *::before, .learning-page *::after { animation: none !important; transition: none !important; }
}
