/* Reading and discovery surfaces for the education library. */
.ei-page { --ei-green:#173b32; --ei-muted:#51665e; --ei-line:#d6ded1; --ei-paper:#fffefa; }
.ei-page [hidden] { display:none !important; }
.ei-page main { padding-bottom:64px; }
.ei-page .ei-kicker { color:#426754; font-size:14px; font-weight:800; letter-spacing:.035em; margin:0 0 12px; }
.ei-page .ei-deck { font-size:20px; line-height:1.8; color:var(--ei-muted); }
.ei-page .ei-btn { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:13px 20px; border:1px solid var(--ei-green); border-radius:10px; background:var(--ei-green); color:white; font:inherit; font-weight:750; cursor:pointer; text-decoration:none; line-height:1.5; }
.ei-page .ei-btn:hover { background:#294e3f; }
.ei-page .ei-secondary { background:var(--ei-paper); color:var(--ei-green); }
.ei-page .ei-secondary:hover { background:#edf3e5; }
.ei-page .ei-text-link { display:inline-flex; align-items:center; min-height:46px; font-weight:750; text-decoration:underline; text-underline-offset:4px; }
.ei-page :is(a,button,input,select,summary,[tabindex]):focus-visible { outline:3px solid #b87712; outline-offset:4px; }
.ei-page .ei-hub-hero { display:grid; grid-template-columns:1.6fr 1fr; align-items:center; gap:64px; padding:62px 0 45px; }
.ei-page .ei-hub-hero h1 { font-size:46px; line-height:1.4; letter-spacing:-.045em; margin:0 0 22px; word-break:keep-all; }
.ei-page .ei-hub-hero .ei-btn { margin-top:12px; }
.ei-page .ei-hero-note { border:1px solid #cbd8ba; border-radius:24px; padding:32px; background:#edf2e4; box-shadow:10px 10px 0 #e2e9d6; }
.ei-page .ei-note-number { display:block; font-size:84px; line-height:1; letter-spacing:-.07em; font-weight:750; color:#315444; }
.ei-page .ei-hero-note h2 { font-size:24px; margin:17px 0 10px; }
.ei-page .ei-hero-note p { color:var(--ei-muted); line-height:1.8; }
.ei-page .ei-hero-note>div { display:flex; flex-wrap:wrap; gap:12px 22px; border-top:1px solid #cad6c2; padding-top:20px; margin-top:22px; font-size:15px; }
.ei-page .ei-hero-note b { margin-left:8px; }
.ei-page .ei-topic-tiles { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-bottom:48px; }
.ei-page .ei-topic-tiles a { display:grid; grid-template-columns:1fr auto; gap:15px; border:1px solid var(--ei-line); border-radius:14px; padding:22px; background:var(--ei-paper); }
.ei-page .ei-topic-tiles a:hover { background:#edf3e5; }
.ei-page .ei-topic-tiles span { grid-column:1/-1; color:#6a7a6a; font-size:14px; }
.ei-page .ei-topic-tiles strong { font-size:19px; }
.ei-page .ei-section-heading { display:flex; justify-content:space-between; align-items:end; gap:24px; margin:0 0 24px; }
.ei-page .ei-section-heading h2 { margin:0; font-size:32px; }
.ei-page .ei-section-heading>p { color:var(--ei-muted); margin:0; max-width:340px; }
.ei-page .ei-filters { display:grid; grid-template-columns:2fr 1fr 1fr auto; align-items:end; gap:14px; padding:22px; background:#f0f3e9; border:1px solid var(--ei-line); border-radius:15px; }
.ei-page :is(.ei-filters,.ei-location-form)>div { min-width:0; }
.ei-page :is(.ei-filters,.ei-location-form) label { display:block; font-size:15px; font-weight:750; margin-bottom:8px; }
.ei-page :is(input,select) { width:100%; height:49px; border:1px solid #91a58e; border-radius:8px; padding:10px 12px; background:white; color:#173b32; font:inherit; font-size:16px; min-width:0; }
.ei-page select:disabled { opacity:.65; }
.ei-page .ei-result-count { margin:20px 0; color:var(--ei-muted); font-size:15px; }
.ei-page .ei-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.ei-page .ei-card { display:flex; flex-direction:column; min-width:0; border:1px solid var(--ei-line); border-radius:16px; background:var(--ei-paper); overflow:hidden; }
.ei-page .ei-card-image { width:100%; aspect-ratio:16/10; height:auto; object-fit:cover; display:block; background:#f0f2ea; }
.ei-page .ei-card-copy { padding:23px; display:flex; flex-direction:column; flex:1; }
.ei-page .ei-card .ei-kicker { font-size:13px; margin-bottom:12px; }
.ei-page .ei-card .ei-kicker span { color:#607269; font-weight:600; }
.ei-page .ei-card h3 { font-size:21px; line-height:1.5; margin:0 0 14px; word-break:keep-all; overflow-wrap:anywhere; }
.ei-page .ei-card h3 a:hover { text-decoration:underline; text-underline-offset:4px; }
.ei-page .ei-card-copy>p:not(.ei-kicker) { font-size:16px; line-height:1.8; color:var(--ei-muted); margin:0 0 22px; }
.ei-page .ei-card-end { margin-top:auto; padding-top:14px; border-top:1px solid #e5e9e0; font-size:13px; color:#586b5f; }
.ei-page .ei-more { display:flex; margin:28px auto 0; min-width:240px; }
.ei-page .ei-empty { text-align:center; padding:42px 20px; border:1px dashed #b7c7ad; border-radius:16px; }
.ei-page .ei-breadcrumb { display:flex; flex-wrap:wrap; gap:10px; font-size:14px; padding:24px 0; color:var(--ei-muted); }
.ei-page .ei-breadcrumb a { text-decoration:underline; text-underline-offset:4px; }
.ei-page .ei-article-heading { padding:25px 0 36px; max-width:900px; }
.ei-page .ei-article-heading h1 { font-size:43px; line-height:1.45; letter-spacing:-.035em; word-break:keep-all; margin:0 0 22px; }
.ei-page .ei-byline { font-size:14px; color:#68786a; margin:20px 0 0; }
.ei-page .ei-reading-layout { display:grid; grid-template-columns:minmax(0,1fr) 265px; gap:50px; align-items:start; }
.ei-page .ei-toc { grid-column:2; grid-row:1; position:sticky; top:125px; padding:24px; border:1px solid var(--ei-line); border-radius:15px; background:#f0f3e9; }
.ei-page .ei-toc nav { display:grid; }
.ei-page .ei-toc nav a { font-size:15px; line-height:1.6; padding:10px 0; border-bottom:1px solid #dce4d3; }
.ei-page .ei-toc-back { display:inline-block; margin-top:18px; font-size:14px; font-weight:750; }
.ei-page .ei-prose { grid-row:1; grid-column:1; min-width:0; width:100%; }
.ei-page .ei-prose p { font-size:18px; line-height:1.95; word-break:keep-all; overflow-wrap:anywhere; margin:0 0 20px; }
.ei-page .ei-prose .ei-intro { padding:26px; background:#eff2e7; border-left:4px solid #7d985c; border-radius:0 12px 12px 0; margin-bottom:38px; }
.ei-page .ei-prose-section { margin:0 0 32px; }
.ei-page .ei-prose h2 { font-size:28px; line-height:1.5; margin:0 0 22px; word-break:keep-all; }
.ei-page .ei-prose .ei-section-number { font-size:16px; font-weight:800; color:#6e8558; margin:0 0 8px; }
.ei-page .ei-figure { margin:32px 0 42px; }
.ei-page .ei-figure img { display:block; width:100%; height:auto; max-height:490px; object-fit:contain; border-radius:14px; background:white; }
.ei-page .ei-figure figcaption { font-size:13px; line-height:1.7; color:#627163; margin-top:10px; text-align:right; }
.ei-page .ei-example { border-top:2px solid #789166; padding-top:30px; margin-top:40px; }
.ei-page .ei-example .ei-kicker { font-size:14px; }
.ei-page .ei-table-scroll { overflow-x:auto; max-width:100%; border:1px solid #bdcdb4; border-radius:12px; margin:24px 0; }
.ei-page .ei-table-scroll table { width:100%; min-width:550px; border-collapse:collapse; margin:0; font-size:16px; line-height:1.8; }
.ei-page .ei-table-scroll caption { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.ei-page :is(th,td) { padding:16px; text-align:left; vertical-align:top; border-bottom:1px solid #dbe3d4; }
.ei-page thead th { background:#e7efdc; color:#173b32; font-weight:750; }
.ei-page tbody th { background:#f5f7ef; width:23%; font-weight:700; }
.ei-page tr:last-child :is(th,td) { border-bottom:0; }
.ei-page .ei-try { margin:40px 0; border:1px solid #becdad; border-radius:16px; padding:26px; background:#f0f4e8; }
.ei-page .ei-checks { padding:0; list-style:none; display:grid; gap:14px; margin:0 0 20px; }
.ei-page .ei-checks li { display:flex; gap:10px; font-size:17px; line-height:1.8; }
.ei-page .ei-checks li::before { content:'✓'; color:#3d6748; font-weight:800; }
.ei-page .ei-try>p { font-size:16px; margin-bottom:0; }
.ei-page details { border:1px solid var(--ei-line); border-radius:12px; padding:19px 22px; background:var(--ei-paper); }
.ei-page summary { cursor:pointer; font-size:17px; font-weight:750; line-height:1.7; }
.ei-page details p { margin:16px 0 0; }
.ei-page .ei-sources { padding:28px 0; margin-top:36px; border-top:1px solid var(--ei-line); }
.ei-page .ei-sources h2 { font-size:23px; }
.ei-page .ei-sources ul { padding-left:21px; }
.ei-page .ei-sources a { font-size:16px; text-decoration:underline; text-underline-offset:3px; }
.ei-page .ei-sources p { font-size:14px; color:#627163; line-height:1.8; margin:6px 0 14px; }
.ei-page .ei-after-reading { margin-top:50px; }
.ei-page .ei-local { background:#eaf1e1; border:1px solid #c7d4b9; border-radius:20px; padding:36px; margin-bottom:52px; }
.ei-page .ei-local h2 { font-size:29px; line-height:1.5; margin:0 0 16px; }
.ei-page .ei-local>p { max-width:780px; line-height:1.85; }
.ei-page .ei-location-form { display:grid; grid-template-columns:1fr 2fr; max-width:760px; gap:16px; margin:24px 0; }
.ei-page .ei-location-result:empty { display:none; }
.ei-page .ei-location-result { border-left:3px solid #6e8959; padding:8px 18px; margin:24px 0; }
.ei-page .ei-location-result h3 { font-size:22px; margin:0 0 10px; }
.ei-page .ei-location-result p { margin:0 0 14px; }
.ei-page .ei-location-result nav { display:flex; flex-wrap:wrap; gap:10px; }
.ei-page .ei-location-result nav a { background:#fffefa; border:1px solid #aabd96; border-radius:8px; padding:10px 14px; font-weight:700; min-height:44px; }
.ei-page .ei-actions { display:flex; flex-wrap:wrap; gap:12px 18px; align-items:center; margin-top:22px; }
.ei-page .ei-region-list { margin-top:24px; background:transparent; }
.ei-page .ei-region-list nav { display:flex; flex-wrap:wrap; gap:8px; margin-top:18px; }
.ei-page .ei-region-list a { font-size:15px; padding:9px 12px; background:#fffefa; border:1px solid #c4d2b8; border-radius:8px; }
.ei-page .ei-related h2 { margin-top:0; }
.ei-page .ei-related>.ei-text-link { margin-top:24px; }
.ei-sr { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.ei-page .wawa-fixed-fab { display:flex; align-items:center; justify-content:center; gap:8px; min-height:46px; padding:12px 16px; background:#fffefa; border:1px solid #b7c9ae; border-radius:10px; font-size:15px; font-weight:750; color:#173b32; box-shadow:0 3px 12px #173b3212; }
.ei-page .wawa-fixed-fab:hover { background:#e7efdc; }
@media(min-width:761px) {
 body.unified-ui.ei-page .wawa-fixed-fab-container { position:static !important; flex-direction:row !important; justify-content:center; align-items:center !important; flex-wrap:wrap; padding:22px; right:auto !important; bottom:auto !important; }
}
@media(max-width:1100px) { .ei-page .ei-toc { top:225px; } .ei-page .ei-reading-layout { gap:28px; grid-template-columns:minmax(0,1fr) 230px; } }
@media(max-width:960px) {
 .ei-page .ei-hub-hero { gap:30px; grid-template-columns:1.4fr 1fr; }
 .ei-page .ei-hub-hero h1 { font-size:37px; }
 .ei-page .ei-hero-note { padding:24px; }
 .ei-page .ei-topic-tiles { grid-template-columns:repeat(2,1fr); }
 .ei-page .ei-filters { grid-template-columns:2fr 1fr; }
 .ei-page .ei-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .ei-page .ei-reading-layout { display:flex; flex-direction:column; gap:28px; }
 .ei-page .ei-toc { position:static; width:100%; }
 .ei-page .ei-toc nav { grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:24px; }
 .ei-page .ei-article-heading h1 { font-size:36px; }
}
@media(max-width:760px) {
 .ei-page .ei-hub-hero { grid-template-columns:1fr; padding-top:32px; gap:28px; }
 .ei-page .ei-hub-hero h1 { font-size:34px; }
 .ei-page .ei-deck { font-size:18px; }
 .ei-page .ei-hero-note { box-shadow:6px 6px 0 #e2e9d6; padding:25px; }
 .ei-page .ei-note-number { font-size:60px; }
 .ei-page .ei-hero-note h2 { margin-top:10px; }
 .ei-page .ei-topic-tiles { gap:10px; }
 .ei-page .ei-topic-tiles a { padding:18px 16px; }
 .ei-page .ei-topic-tiles strong { font-size:17px; }
 .ei-page .ei-section-heading { display:block; }
 .ei-page .ei-section-heading>p { margin-top:14px; }
 .ei-page .ei-section-heading h2 { font-size:28px; }
 .ei-page .ei-filters { grid-template-columns:1fr 1fr; padding:18px; }
 .ei-page .ei-filters>div:first-child { grid-column:1/-1; }
 .ei-page .ei-filters>button { grid-column:1/-1; }
 .ei-page .ei-grid { grid-template-columns:1fr; gap:18px; }
 .ei-page .ei-card-copy { padding:22px; }
 .ei-page .ei-article-heading { padding:14px 0 24px; }
 .ei-page .ei-article-heading h1 { font-size:31px; }
 .ei-page .ei-toc { padding:20px; }
 .ei-page .ei-toc nav { grid-template-columns:1fr; }
 .ei-page .ei-prose p { font-size:17px; line-height:1.9; word-break:normal; }
 .ei-page .ei-prose h2 { font-size:25px; }
 .ei-page .ei-prose .ei-intro { padding:22px; }
 .ei-page .ei-try { padding:22px; }
 .ei-page .ei-table-scroll table { min-width:530px; }
 .ei-page .ei-local { padding:24px 21px; }
 .ei-page .ei-local h2 { font-size:25px; }
 .ei-page .ei-location-form { grid-template-columns:1fr; }
 .ei-page .ei-actions { align-items:stretch; flex-direction:column; }
 .ei-page .ei-actions .ei-text-link { justify-content:center; }
 .ei-page .ei-more { min-width:0; width:100%; }
 .ei-page .wawa-fixed-fab { width:100%; min-width:0; padding:10px 4px; font-size:15px; box-shadow:none; gap:4px; }
}
@media print {
 .ei-page :is(.site-header,.site-footer,.ei-toc,.ei-after-reading,.wawa-fixed-fab-container,.skip-link) { display:none !important; }
 .ei-page .ei-reading-layout { display:block; }
 .ei-page .wrap { width:100% !important; }
 .ei-page .ei-figure { max-width:65%; margin:20px auto; }
 .ei-page .ei-table-scroll { overflow:visible; }
 .ei-page .ei-table-scroll table { min-width:0; }
 .ei-page :is(figure,tr) { break-inside:avoid; }
}
