/* One school answer, one benefit, one action. Native details preserve no-JS use. */
.school-conversion-start { display:block; max-width:760px; margin-inline:auto; }
.school-conversion-hero { margin-bottom:18px; }
.school-conversion-proof-and-ask { display:block; }
.school-conversion-preview, .school-conversion-action, .dates-teaser { background:transparent; border:0; border-radius:0; box-shadow:none; padding:0; }
.school-conversion-action { display:block; margin:14px 0; }
.school-conversion-action-type, .school-conversion-section-label:not(:has(time)) { display:none; }
.school-conversion-action strong { font-size:1rem; }
.school-conversion-source { font-size:.9rem; }
.school-conversion-preview h2 { font-size:1.15rem; margin:0 0 8px; }
.public-simple-benefit { font-size:1.05rem; line-height:1.5; margin:22px 0 6px; }
.public-simple-ask { font-size:.9rem; line-height:1.45; color:#475569; margin:0 0 18px; }
.public-signup-disclosure { margin:18px 0 26px; scroll-margin-top:18px; }
.public-signup-disclosure > summary { cursor:pointer; list-style:none; }
.public-signup-disclosure > summary::-webkit-details-marker { display:none; }
.public-primary-action { display:block; padding:13px 18px; min-height:48px; box-sizing:border-box; text-align:center; background:#075e54; color:white; font-weight:700; border-radius:8px; }
.public-signup-disclosure > summary small { display:block; margin:8px 0 0; color:#475569; font-size:.9rem; text-align:center; }
.public-signup-disclosure > summary:focus-visible, .public-close-signup:focus-visible { outline:3px solid #172033; outline-offset:4px; }
.public-signup-disclosure[open] > summary .public-primary-action { background:transparent; color:#172033; text-align:left; padding-left:0; }
.public-signup-disclosure[open] > summary small { text-align:left; }
.public-signup-disclosure .school-conversion-lockbox, .public-signup-disclosure .dates-signup-controls { display:block; position:static; margin-top:14px; padding:18px 0; border:0; border-top:1px solid #cbd5e1; background:transparent; box-shadow:none; }
.public-close-signup { border:0; padding:8px 0; min-height:44px; background:transparent; color:#075e54; text-decoration:underline; font:inherit; cursor:pointer; }
.public-signup-disclosure h2 { font-size:1.15rem; margin:10px 0; }
.public-signup-disclosure .signup-channel-choice { min-height:48px; padding:10px; }
.public-signup-disclosure .signup-channel-choice span { display:none; }
.public-signup-disclosure .signup-channel-choice[aria-checked="true"] { border-color:#075e54; background:#edf8f2; }
.public-signup-disclosure .wa-public-submit, .public-signup-disclosure .school-lead-button, .public-signup-disclosure .lead-button { background:#075e54; }
.public-signup-disclosure .wa-public-consent, .public-signup-disclosure .wa-public-legal, .public-signup-disclosure .signup-legal { font-size:.95rem; line-height:1.5; color:#334155; margin:14px 0; }
.public-signup-disclosure .wa-public-no-charge { font-size:.95rem; color:#334155; }
.public-signup-disclosure .school-lead-row { display:block; }
.public-signup-disclosure .school-lead-row button { margin-top:12px; width:100%; }
.public-signup-disclosure .school-conversion-signup-description, .public-signup-disclosure .wa-public-signup-kicker, .public-signup-disclosure .wa-public-next-step { display:none; }
.school-conversion-glance, .school-conversion-premium > a { display:none; }
.school-conversion-dates-link, .school-conversion-premium { max-width:760px; margin-inline:auto; background:transparent; box-shadow:none; border:0; padding:20px 0; }
.school-conversion-dates-link a, .hero-actions .secondary-action { background:transparent; border:0; padding:8px 0; color:#075e54; text-decoration:underline; box-shadow:none; }
.school-conversion-faq { max-width:760px; margin-inline:auto; }
body:has(.public-signup-disclosure) #school-sticky-cta, body:has(.public-signup-disclosure) #school-dates-sticky-cta, body:has(.public-signup-disclosure) .seo-conversion-prompt { display:none !important; }
.hero-band { display:block; max-width:760px; margin-inline:auto; padding:0; border:0; border-radius:0; background:transparent; }
.hero-copy, .school-dates-lead-card { display:block; }
.school-dates-lead-card { padding:0; border:0; box-shadow:none; background:transparent; }
.dates-teaser { margin:18px 0; }
.dates-teaser-badge { background:transparent; color:#172033; border:1px solid #cbd5e1; }
.dates-signup-controls .wa-public-year-options { grid-template-columns:repeat(3,minmax(0,1fr)); }
.public-ask-explanation { margin:24px 0; }
.public-ask-explanation > summary { cursor:pointer; padding:12px 0; }
.public-signup-disclosure .lead-trust { font-size:.9rem; }
@media(max-width:600px) {
 .school-conversion-hero h1, .hero-copy h1 { font-size:1.65rem; }
 .public-signup-disclosure .wa-public-year-options { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .public-signup-disclosure .wa-public-year-options label { min-width:0; overflow-wrap:anywhere; }
}

.public-source-context > summary { cursor:pointer; color:#475569; padding:6px 0; font-size:.85rem; }
.public-source-context p { font-size:.9rem; line-height:1.5; }

.public-secondary-navigation, .public-more-about { max-width:760px; margin:22px auto; }
.public-secondary-navigation a { color:#075e54; text-decoration:underline; }
.public-more-about > summary { cursor:pointer; padding:12px 0; }
.public-signup-disclosure > summary .school-conversion-free-offer { display:block; font-weight:400; }

.hero-band .eyebrow { display:none; }

/* Size channel columns in text-relative units: enlarged labels get a full
   row instead of escaping a fixed half-width button. Never shrink the text. */
.public-signup-disclosure .signup-channel-choices {
    grid-template-columns:repeat(auto-fit,minmax(min(100%,10em),1fr));
}

.public-summary-jump { display:inline-block; color:#075e54; padding:8px 0; min-height:44px; box-sizing:border-box; }
.public-delivery-expectation { line-height:1.45; margin:12px 0; }
@media(min-width:1100px) {
 .school-conversion-start, .hero-band { max-width:1100px; }
 .school-conversion-start { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:0 36px; align-items:start; }
 .school-conversion-start > .school-conversion-hero { grid-column:1 / -1; }
 .school-dates-lead-card { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:36px; align-items:start; }
 .school-conversion-start > .public-signup-disclosure, .school-dates-lead-card > .public-signup-disclosure { min-width:0; position:sticky; top:20px; }
}

/* A visible mobile action precedes the longer verified proof, using one form. */
.public-summary-jump, .hero-copy .public-summary-jump { background:#075e54; color:#fff; border-radius:8px; padding:12px 16px; font-weight:700; text-decoration:none; text-align:center; }
.public-summary-jump:focus-visible { outline:3px solid #172033; outline-offset:3px; }
.school-conversion-identity .public-simple-benefit, .hero-copy > .public-simple-benefit { margin:12px 0 6px; }
.school-conversion-identity .public-simple-ask, .hero-copy > .public-simple-ask { margin-bottom:12px; }
.dates-teaser-title, .dates-teaser-meta { display:block; -webkit-line-clamp:unset; overflow:visible; white-space:normal; overflow-wrap:anywhere; }
.public-landing-feed h3 { font-size:1.05rem; margin:20px 0 10px; }
.public-landing-feed h4 { font-size:1rem; margin:0 0 6px; }
.public-feed-detail { white-space:pre-line; overflow-wrap:anywhere; line-height:1.5; }
.public-feed-excerpt { margin:20px 0; }
.public-landing-feed .school-conversion-action p { margin:6px 0; }
.public-feed-source { font-size:.85rem; line-height:1.45; margin:6px 0; }
.public-feed-source a { color:#075e54; }
.school-specific-dates-band { border-color:#cbd5e1; }
.school-specific-gate-overlay { background:#f8fafc; }
.school-specific-gate-icon { background:#e5f3ee; color:#075e54; }
.school-specific-gate-copy a, .calendar-preview-cta, .empty-state .primary-action { background:#075e54; color:#fff; min-height:44px; box-sizing:border-box; }
.school-specific-gate-copy a:hover, .calendar-preview-cta:hover, .empty-state .primary-action:hover { background:#064c44; }
.school-specific-dates-band .section-kicker { color:#075e54; }
@media(max-width:600px) {
 .public-summary-jump { width:100%; }
 .dates-content-jumps { align-items:center; }
}

/* Fit year choices to the component and enlarged text, including sidebars. */
.public-signup-disclosure .wa-public-signup .wa-public-year-options {
 grid-template-columns:repeat(auto-fit,minmax(min(100%,10em),1fr));
}
.public-signup-disclosure .wa-public-year-options label {
 white-space:nowrap; overflow-wrap:normal; min-width:0;
}
.public-signup-disclosure .lead-label {
 color:#172033; position:static; clip:auto; clip-path:none; height:auto;
 width:auto; overflow:visible; margin:0 0 10px; white-space:normal;
}
body.light-landing .public-signup-disclosure .school-lead-button {
 background:#075e54; color:#fff;
}
/* Let long real school names use the full line when text is enlarged. */
.hero-copy .dates-school-identity { display:flex; flex-wrap:wrap; }
.hero-copy .dates-school-identity-copy { flex:1 1 14em; min-width:0; }
.hero-copy .dates-school-logo-frame { flex:0 0 auto; }
/* The sidebar already names the school search action; avoid a competing column. */
.public-signup-disclosure .school-page-switcher > summary {
 grid-template-columns:minmax(0,1fr) auto;
}
.public-signup-disclosure .school-page-switcher-action { display:none; }
.public-signup-disclosure .school-page-switcher-copy { display:block; }
.public-signup-disclosure .school-page-switcher-copy > * { display:block; }
.public-signup-disclosure .school-page-switcher-search-row {
 grid-template-columns:minmax(0,1fr);
}

.public-signup-offer-heading { display:block; font-size:1.15rem; line-height:1.4; font-weight:700; margin-bottom:10px; overflow-wrap:anywhere; }
.public-summary-jump + .public-simple-ask { margin:12px 0 0; }
.dates-content-jumps > .public-simple-ask { flex-basis:100%; margin:0; }

.public-signup-disclosure[open] > summary .public-signup-offer-heading,
.public-signup-disclosure[open] > summary .public-signup-channel-hint { display:none; }
.public-signup-disclosure h2 { overflow-wrap:anywhere; }
