/* Small additions for the static public Academy site only. */
.course-layout > * { min-width: 0; }
.public-schedule { margin-top: 32px; }
.public-schedule .table-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.public-schedule table { width: 100%; min-width: 540px; border-collapse: collapse; }
.public-schedule th, .public-schedule td { text-align: left; padding: 10px 12px; border-bottom: 1px solid rgba(15, 46, 34, .12); vertical-align: top; }
.public-outline { padding-left: 1.4em; }
.public-outline li { margin: 6px 0; }
.seat-snapshot { margin-top: 8px; }
.card ol { padding-left: 1.4em; }
.card ol li { margin: 8px 0; }
.brand-text { display: flex; flex-direction: column; line-height: 1.15; text-decoration: none; color: #0f2e22; }
.brand-text strong { font-size: 1.25rem; letter-spacing: -.01em; }
.brand-text small { font-size: .74rem; opacity: .8; margin-top: 2px; }
.interest-picker { margin-top: 32px; }
.interest-fields { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 14px; margin: 16px 0; }
.interest-fields label { display: flex; flex-direction: column; gap: 6px; font-weight: 600; font-size: .9rem; }
.interest-fields select { font: inherit; padding: 10px 12px; border-radius: 10px; border: 1px solid rgba(15, 46, 34, .25); background: #fff; color: #0f2e22; }
.interest-section { margin-top: 48px; }
.interest-cards { margin-top: 20px; }
.approval-banner { background: #b3261e; color: #fff; font-weight: 700; text-align: center; padding: 10px 16px; letter-spacing: .04em; font-size: .85rem; }
.eco-blocks { display: grid; gap: 20px; }
.eco-block h2 { font-size: 1.35rem; margin-top: 0; }
.eco-block ul, .eco-block ol { padding-left: 1.4em; }
.eco-block li { margin: 8px 0; }
.eco-actions { margin-top: 28px; flex-wrap: wrap; }
.eco-cards { margin-top: 24px; }
.eco-card h3 { margin-top: 0; }
.brochure-link { margin-top: 16px; }
.page-hero .eyebrow { display: block; margin-bottom: 8px; }
