/* Codingo uses a common central axis and the approved Tecla artwork. */
body[data-page="codingo"] main { text-align: center; }
body[data-page="codingo"] main .eyebrow { justify-content: center; }
body[data-page="codingo"] .section { padding-block: clamp(2.5rem, 5vw, 4rem); }
.codingo-hero { display: grid; grid-template-columns: minmax(0, 1fr); justify-items: center; gap: 2rem; }
.codingo-hero-copy { width: 100%; max-width: 850px; }
.codingo-hero h1 { max-width: 24ch; margin: 1rem auto 1.5rem; font-size: clamp(2.3rem, 4.5vw, 4rem); line-height: 1.15; letter-spacing: -.045em; text-wrap: balance; }
body[data-page="codingo"] .codingo-hero p.lead { max-width: 65ch; margin-inline: auto; color: var(--text-soft); font-size: 1.1rem; text-wrap: pretty; }
.codingo-hero .actions { display: flex; justify-content: center; align-items: center; gap: 1rem; margin-block: 1.8rem; border: 0; }
.codingo-hero .actions > a { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; flex: 1; max-width: 280px; padding: .6rem 1rem; box-sizing: border-box; text-align: center; }
.codingo-caption { max-width: 65ch; margin: 0 auto; color: var(--text-muted); font-size: .88rem; }
.codingo-brand-panel { display: flex; flex-direction: column; align-items: center; width: min(100%, 380px); box-sizing: border-box; padding: 1.5rem; border: 1px solid #41636b; border-radius: 1.5rem; background: #131f24; color: #f4f8fa; box-shadow: var(--shadow); }
.codingo-wordmark { display: block; width: 100%; max-width: 260px; height: auto; }
.codingo-tecla { display: block; width: 160px; max-width: 70%; height: auto; margin: .6rem auto; }
.codingo-language-chips { display: flex; justify-content: center; flex-wrap: wrap; gap: .5rem; font: 600 .72rem var(--mono); }
.codingo-language-chips span { padding: .45rem .7rem; border: 1px solid #527079; border-radius: 999px; background: #202f36; }
body[data-page="codingo"] .section h2 { max-width: 28ch; margin: 0 auto .8rem; font-size: clamp(1.8rem, 3vw, 2.7rem); line-height: 1.25; letter-spacing: -.035em; text-align: center; text-wrap: balance; }
.codingo-section-note, .codingo-learning > div:first-child > p, .codingo-plus-heading > p:last-child { max-width: 65ch; margin: 0 auto 2rem; color: var(--text-soft); }
.codingo-course-grid, .codingo-feature-stack, .codingo-plan-grid { display: grid; grid-auto-rows: 1fr; gap: 1.25rem; align-items: stretch; }
.codingo-course-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.codingo-feature-stack, .codingo-plan-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.codingo-course-grid .card, .codingo-feature-stack .card, .codingo-plan { display: flex; flex-direction: column; align-items: center; padding: 2rem; border-radius: 1.5rem; text-align: center; }
.codingo-course-grid h3, .codingo-feature-stack h3, .codingo-plan h3 { margin: .8rem 0; font-size: 1.4rem; line-height: 1.4; }
.codingo-course-grid p, .codingo-feature-stack p, .codingo-plan > p:last-child { margin: 0; color: var(--text-soft); }
.codingo-learning { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; }
.codingo-benefits-panel { box-sizing: border-box; width: min(100%, 850px); margin: 1.2rem auto 0; padding: clamp(1.25rem, 3vw, 2rem); border-radius: 1.5rem; }
.codingo-benefit-list { display: grid; gap: 1rem; margin: 0; padding: 0; list-style: none; }
.codingo-benefit-list li { display: grid; grid-template-columns: .75rem minmax(0, 1fr); column-gap: .75rem; align-items: start; text-align: left; }
.codingo-benefit-list p { margin: 0; color: var(--text-soft); }
.codingo-benefit-dot { color: var(--cyan); }
.codingo-plus-heading > .eyebrow { margin-bottom: .8rem; }
.codingo-price { margin: .7rem 0 1.3rem; font-size: clamp(3.6rem, 6vw, 5rem); font-weight: 750; line-height: 1.15; letter-spacing: -.065em; }
.codingo-price span { display: block; margin-top: .5rem; color: var(--text-soft); font-size: 1rem; font-weight: 500; letter-spacing: 0; }
.codingo-price-details { max-width: 82ch; margin: 2rem auto 0; color: var(--text-soft); font-size: .94rem; }
.codingo-price-details .text-link { justify-content: center; }
.codingo-scope { max-width: 82ch; margin: 1.6rem auto; color: var(--text-muted); font-size: .85rem; }
.codingo-document-links { display: flex; justify-content: center; flex-wrap: wrap; gap: 1.4rem; }
.codingo-document-links a { color: var(--text-soft); text-underline-offset: .2em; }
body[data-page="codingo"] .site-footer { justify-content: center; gap: 1.5rem; text-align: center; }
.codingo-preview-card .codingo-card-icon { display: block; width: 112px; height: 112px; margin: 0 auto 1.5rem; border-radius: 25px; }
.codingo-preview-card .codingo-card-price { color: var(--text); font-weight: 650; }
body[data-page="codingoTerms"] .legal-content h1 { font-size: clamp(2.1rem, 5vw, 3.5rem); letter-spacing: -.04em; line-height: 1.15; }
body[data-page="codingoTerms"] .legal-content h2 { font-size: 1.4rem; line-height: 1.3; }
body[data-page="codingoTerms"] .legal-content a:not(.btn) { color: var(--cyan); text-decoration: underline; text-underline-offset: .15em; }
html[data-theme="light"] body[data-page="codingoTerms"] .legal-content a:not(.btn) { color: #075f89; }
@media (min-width: 761px) and (max-width: 1000px) {
  .codingo-course-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .codingo-course-grid, .codingo-feature-stack, .codingo-plan-grid { grid-template-columns: minmax(0, 1fr); }
  .codingo-hero .actions { flex-direction: column; }
  .codingo-hero .actions > a { width: 100%; max-width: 100%; flex: auto; }
  .codingo-course-grid .card, .codingo-feature-stack .card, .codingo-plan { padding: 1.5rem; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
