/* Hallmark · pre-emit critique: P4 H4 E4 S5 R5 V4
 * Component: language disclosure · genre: editorial · theme: existing Coastal education
 * Native details/summary: default, hover, focus, active, open/closed; no asynchronous or disabled operation. */
/* Native-script text prefers installed fonts; Telugu has a scoped self-hosted fallback. */
/* BEGIN generated Telugu fallback: scripts/subset-telugu-font.py */
@font-face {
  font-family: "CLE Telugu Fallback";
  src: url("../fonts/telugu/CLETeluguFallback-56cbfd52.woff2?v=56cbfd528936") format("woff2");
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  unicode-range: U+0C00-0C0C,U+0C0E-0C10,U+0C12-0C28,U+0C2A-0C39,U+0C3C-0C44,U+0C46-0C48,U+0C4A-0C4D,U+0C55-0C56,U+0C58-0C5A,U+0C5D,U+0C60-0C63,U+0C66-0C6F,U+0C77-0C7F,U+200C-200D,U+25CC;
}
/* END generated Telugu fallback */
.localized-page{overflow-wrap:break-word}
.locale-form-number{white-space:nowrap}
.localized-page .program-hero h1{max-width:22ch;line-height:1.18;font-size:clamp(2.35rem,4.7vw,4rem)}
.localized-page .program-support,.localized-page .program-link,.localized-page .program-footer a{white-space:normal}
.translated-guide-page .program-nav a{white-space:normal;min-width:0}
.localized-page .program-intro,.localized-page .program-section p{max-width:68ch}
.localized-page .program-actions .cle-button{white-space:normal;text-align:center}
.locale-nav{padding-block:var(--space-xs) var(--space-md)}
.locale-nav p{margin:0 0 var(--space-xs);font-size:var(--text-xs);color:var(--color-muted)}
.locale-nav ul,.locale-directory ul{display:flex;flex-wrap:wrap;gap:var(--space-xs) var(--space-lg);list-style:none;padding:0;margin:0}
.locale-nav a,.locale-directory a{display:inline-flex;align-items:center;min-height:44px;line-height:1.5;font-size:var(--text-sm);color:var(--color-accent);text-decoration-thickness:1px;text-underline-offset:.2em}
.locale-nav a[aria-current=page]{font-weight:700;text-decoration-thickness:2px}
.locale-directory{margin-block:var(--space-xl)}
.locale-directory ul{gap:var(--space-sm) var(--space-xl)}
.locale-directory a{font-size:var(--text-lg)}
.locale-notice{padding:var(--space-lg) var(--space-xl);margin-bottom:var(--space-2xl);border-inline-start:3px solid var(--color-accent);background:var(--color-paper-2);border-radius:var(--radius-input)}
.locale-notice h2{font:600 var(--text-lg)/1.5 var(--font-body);margin:0 0 var(--space-xs);letter-spacing:normal}
.locale-notice p{font-size:var(--text-md);margin:0 0 var(--space-sm);max-width:85ch}
.locale-notice a{display:inline-flex;align-items:center;min-height:44px;font-size:var(--text-sm)}
.localized-page:lang(zh-Hans){--font-body:system-ui,-apple-system,"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;--font-display:var(--font-body)}
.localized-page:lang(zh-Hant){--font-body:system-ui,-apple-system,"PingFang TC","Microsoft JhengHei","Noto Sans CJK TC",sans-serif;--font-display:var(--font-body)}
.localized-page:lang(ko){--font-body:system-ui,-apple-system,"Apple SD Gothic Neo","Malgun Gothic","Noto Sans CJK KR",sans-serif;--font-display:var(--font-body);word-break:keep-all;overflow-wrap:anywhere}
.localized-page:lang(hi){--font-body:system-ui,"Nirmala UI","Kohinoor Devanagari","Noto Sans Devanagari",sans-serif;--font-display:var(--font-body)}
.localized-page:lang(ar){--font-body:system-ui,"Geeza Pro","Segoe UI","Noto Sans Arabic",Tahoma,Arial,sans-serif;--font-display:var(--font-body)}
.localized-page:lang(zh),.localized-page:lang(ko),.localized-page:lang(hi),.localized-page:lang(ar){line-height:1.8}
.localized-page:lang(zh) h1,.localized-page:lang(zh) h2,.localized-page:lang(ko) h1,.localized-page:lang(ko) h2,.localized-page:lang(hi) h1,.localized-page:lang(hi) h2,.localized-page:lang(ar) h1,.localized-page:lang(ar) h2{letter-spacing:normal;line-height:1.4}
[dir=rtl] .localized-page .program-faq summary{padding:var(--space-lg) 0 var(--space-lg) var(--space-xl)}
[dir=rtl] .localized-page .program-faq summary::after{right:auto;left:0}
.localized-page .program-office{overflow-wrap:anywhere}
@media(max-width:40rem){.locale-nav ul{gap:0 var(--space-md)}.locale-notice{padding:var(--space-md)}.localized-page .program-hero h1{font-size:clamp(2rem,7.5vw,2.8rem)}.localized-page .program-section h2{font-size:2rem}}

/* Keep the growing language list available without displacing the page heading. */
.locale-picker{border-block:1px solid var(--color-rule)}
.locale-picker summary{cursor:pointer;min-height:44px;padding-block:var(--space-sm);font-size:var(--text-sm);font-weight:600;color:var(--color-accent)}
.locale-picker summary span{display:inline-block;margin-inline-start:var(--space-sm);font-weight:400;color:var(--color-ink-2)}
.locale-picker summary:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}
.locale-picker summary:active{color:var(--color-accent-hover)}
.locale-picker[open] summary{border-bottom:1px solid var(--color-rule)}
.locale-picker ul{padding-block:var(--space-sm) var(--space-md)}
.locale-picker a{white-space:nowrap}
@media(hover:hover){.locale-picker summary:hover{background:var(--color-paper-2)}}
.localized-page:lang(hy){--font-body:system-ui,"Noto Sans Armenian","Segoe UI",sans-serif;--font-display:var(--font-body)}
.localized-page:lang(pa){--font-body:system-ui,"Kohinoor Gurmukhi","Nirmala UI","Noto Sans Gurmukhi",sans-serif;--font-display:var(--font-body)}
.localized-page:lang(fa){--font-body:system-ui,"Geeza Pro","Segoe UI","Noto Sans Arabic",Tahoma,Arial,sans-serif;--font-display:var(--font-body)}
.localized-page:lang(km){--font-body:system-ui,"Khmer Sangam MN","Leelawadee UI","Noto Sans Khmer",sans-serif;--font-display:var(--font-body);line-break:auto;overflow-wrap:anywhere}
.localized-page:lang(hy),.localized-page:lang(pa),.localized-page:lang(fa),.localized-page:lang(km){line-height:1.8}
.localized-page:lang(hy) :is(h1,h2),.localized-page:lang(pa) :is(h1,h2),.localized-page:lang(fa) :is(h1,h2),.localized-page:lang(km) :is(h1,h2){letter-spacing:normal;line-height:1.4}

/* Give Japanese and Thai headings room without tightening their glyph spacing. */
.localized-page:is(:lang(ja), :lang(th)) .program-hero h1,
.localized-page:is(:lang(ja), :lang(th)) .program-section :is(h2, h3),
.localized-page:is(:lang(ja), :lang(th)) .program-footer h2 {
  letter-spacing: normal;
  line-height: 1.4;
}
.localized-page:lang(ja) .program-hero h1 {
  text-wrap: balance;
}

/* Prefer installed script fonts; only missing Telugu coverage loads its fallback. */
.localized-page:lang(bn){--font-body:"Noto Sans Bengali","Kohinoor Bangla","Nirmala UI","Bangla Sangam MN",sans-serif;--font-display:var(--font-body)}
.localized-page:lang(ur){--font-body:"Noto Sans Arabic","Geeza Pro","Nirmala UI",Tahoma,Arial,sans-serif;--font-display:var(--font-body)}
.localized-page:lang(ta){--font-body:"Noto Sans Tamil","Tamil Sangam MN","Nirmala UI",Latha,sans-serif;--font-display:var(--font-body)}
.localized-page:lang(te){--font-body:"Noto Sans Telugu","Kohinoor Telugu","Nirmala UI",Gautami,"CLE Telugu Fallback",sans-serif;--font-display:var(--font-body)}
.localized-page:lang(gu){--font-body:"Noto Sans Gujarati","Kohinoor Gujarati","Nirmala UI","Gujarati Sangam MN",Shruti,sans-serif;--font-display:var(--font-body)}
.localized-page:lang(he){--font-body:"Noto Sans Hebrew",Arial,"Segoe UI",sans-serif;--font-display:var(--font-body)}

/* Keep combining marks clear and avoid Latin-style tracking in these scripts. */
.localized-page:is(:lang(bn),:lang(ur),:lang(ta),:lang(te),:lang(gu)) {
  line-height: 1.8;
}
.localized-page:is(:lang(bn),:lang(ur),:lang(ta),:lang(te),:lang(gu)) :is(.program-intro,.program-faq summary,.program-actions .cle-button) {
  line-height: 1.8;
}
.localized-page:is(:lang(bn),:lang(ur),:lang(ta),:lang(te),:lang(gu),:lang(he)) .program-hero h1,
.localized-page:is(:lang(bn),:lang(ur),:lang(ta),:lang(te),:lang(gu),:lang(he)) .program-section :is(h2,h3),
.localized-page:is(:lang(bn),:lang(ur),:lang(ta),:lang(te),:lang(gu),:lang(he)) .program-footer h2 {
  letter-spacing: normal;
  line-height: 1.4;
}
