/* Shared compact footer, including keyboard-accessible curriculum disclosure. */
.footer.compact-footer{display:block;padding-top:24px;padding-bottom:20px;font-size:12px;}
.compact-footer .footer-main{display:flex;align-items:center;justify-content:space-between;gap:16px;}
.compact-footer .footer-identity{display:grid;gap:6px;}
.compact-footer .footer-brand{color:var(--ink);font-size:16px;font-weight:700;text-decoration:none;letter-spacing:0;}
.compact-footer .teams-brand{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted);}
.compact-footer .teams-brand img{width:20px;height:20px;}
.footer.compact-footer .academy-social{width:auto;margin:0;padding:0;border:0;}
.compact-footer .academy-social-links{display:flex;flex-wrap:nowrap;gap:8px;justify-content:center;}
.footer.compact-footer .academy-social-links a{min-height:44px;padding:9px 12px;box-sizing:border-box;font-size:12px;gap:7px;}
.compact-footer .academy-social-links svg{width:17px;height:17px;flex-shrink:0;}
.compact-footer .footer-utilities{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:0 16px;margin-top:16px;padding-top:6px;border-top:1px solid var(--line);}
.compact-footer .tour-footer{margin:0;}
.compact-footer .tour-reopen{min-height:44px;padding:10px 0;font-size:12px;color:var(--green);text-underline-offset:4px;}
.compact-footer a:focus-visible,.compact-footer button:focus-visible,.compact-footer summary:focus-visible{outline:2px solid var(--green);outline-offset:4px;}
@media(max-width:600px){
.footer.compact-footer{padding-top:20px;padding-bottom:14px;}
.compact-footer .footer-main{flex-direction:column;gap:14px;align-items:stretch;}
.compact-footer .footer-identity{justify-items:center;gap:4px;}
.compact-footer .footer-brand{font-size:15px;}
.compact-footer .teams-brand{font-size:11px;}
.footer.compact-footer .academy-social-links a{padding:9px 10px;font-size:11px;gap:6px;}
.compact-footer .footer-utilities{margin-top:12px;gap:0 8px;grid-template-columns:minmax(0,1fr) auto;}
.compact-footer .tour-footer{grid-column:2;grid-row:1;}
.compact-footer .tour-reopen{font-size:11px;}
}

.compact-footer .footer-teach{display:flex;align-items:center;min-height:44px;font-size:12px;color:var(--green);text-underline-offset:4px;}
.curricula-guide{scroll-margin-top:100px;}
.curricula-card{padding:28px;border:1px solid var(--line);border-radius:20px;background:var(--cream);}
.curricula-card h2{margin:0 0 12px;}
.curricula-card>p{max-width:760px;line-height:1.7;color:var(--muted);}
.guide-curriculum-logos{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0 16px;}
.guide-curriculum-logo{display:flex;align-items:center;justify-content:center;width:180px;height:64px;padding:10px 16px;background:#fff;border:1px solid var(--line);border-radius:12px;box-sizing:border-box;}
.guide-curriculum-logo img{width:100%;height:100%;object-fit:contain;}
.curricula-card .guide-independence{font-size:12px;margin:0;}
@media(max-width:600px){.compact-footer .footer-teach{font-size:11px;}.curricula-card{padding:20px;}.guide-curriculum-logos{gap:8px;}.guide-curriculum-logo{width:calc(50% - 4px);height:56px;padding:8px;}}

/* Consistent guide spacing and teacher facts across screen sizes. */
#curricula{padding-bottom:40px;}
#guide-faq{border-top:1px solid var(--line);padding-top:48px;margin-top:0;}
#parent-student-guide.guide-preview.wrap{width:calc(100% - 48px);max-width:1240px;margin-inline:auto;box-sizing:border-box;border-radius:24px;padding:32px 40px;grid-template-columns:minmax(0,1fr) 220px;}
.guide-preview>div{min-width:0;}
.guide-preview .eyebrow{margin-top:0;}
.guide-preview h2{margin:12px 0;}
.guide-preview p:last-child{margin-bottom:0;}
.guide-preview-actions{align-items:stretch;min-width:200px;text-align:center;}
.guide-preview-actions .button{justify-content:center;}
.guide-preview-actions .text-link{align-self:center;}
.teacher-card dl>div{display:grid;grid-template-columns:minmax(90px,28%) minmax(0,1fr);gap:16px;align-items:start;border-bottom:1px solid var(--line);}
.teacher-card dt{min-width:0;}
.teacher-card dd{margin:0;text-align:right;max-width:none;font-weight:600;line-height:1.65;}
@media(max-width:600px){
#curricula{padding-bottom:28px;}#guide-faq{padding-top:32px;}
#parent-student-guide.guide-preview.wrap{width:calc(100% - 32px);padding:24px;grid-template-columns:1fr;text-align:left;gap:20px;}
.guide-preview-actions{width:100%;min-width:0;}
.teacher-card dl>div{grid-template-columns:90px minmax(0,1fr);gap:12px;font-size:12px;}
}


.teacher-card{display:flex;flex-direction:column;}
.teacher-card[hidden]{display:none;}
.teacher-card-action{margin-top:auto;padding-top:25px;}
.teacher-card .teacher-card-action .button{margin-top:0;}

/* Full-width guide band; a distinct curriculum panel and clear careers action. */
#parent-student-guide.guide-preview.wrap{width:100%;max-width:none;border-radius:0;border-inline:0;padding:40px max(24px,calc((100% - 1160px)/2));gap:48px;}
.compact-footer .footer-utilities{padding-top:12px;align-items:center;}
.compact-footer .footer-teach{justify-self:start;display:inline-flex;gap:10px;min-height:44px;padding:0 14px;border:1px solid var(--green);border-radius:10px;font-weight:600;text-decoration:none;box-sizing:border-box;transition:background-color .2s,color .2s;}
.compact-footer .footer-teach:hover{background:var(--green);color:var(--cream);}
.compact-footer .footer-teach span{font-size:16px;}
.curricula-card{display:grid;grid-template-columns:1fr 1fr;gap:24px 48px;background:#183e33;border-color:#183e33;padding:40px;color:#fff;}
.curricula-card .eyebrow{color:#e5cb78;margin-top:0;}
.curricula-card h2{color:#fff;font-size:clamp(28px,3vw,40px);line-height:1.15;}
.curricula-intro>p:last-child{color:#d2e1d9;line-height:1.7;max-width:490px;margin-bottom:0;}
.curricula-frameworks{align-self:center;min-width:0;}
.curricula-frameworks h3{margin:0 0 16px;font-size:14px;color:#e6efe9;}
.curricula-card .guide-curriculum-logos{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0;}
.curricula-card .guide-curriculum-logo{width:100%;height:76px;max-width:none;border:0;}
.curricula-card .nationals-label{grid-column:1 / -1;height:64px;display:flex;flex-direction:column;gap:4px;font-weight:700;font-size:17px;color:#183e33;}
.nationals-label span{font-size:11px;font-weight:400;}
.curricula-card .guide-independence{grid-column:1 / -1;max-width:none;border-top:1px solid #49675c;padding-top:18px;color:#d2e1d9;font-size:12px;line-height:1.7;}
#guide-faq{background:transparent;}
@media(max-width:700px){
#parent-student-guide.guide-preview.wrap{padding:28px 24px;grid-template-columns:1fr;gap:22px;}
.curricula-card{grid-template-columns:1fr;padding:24px;gap:24px;}
.curricula-card .guide-curriculum-logo{height:64px;}
.compact-footer .footer-teach{padding:0 10px;gap:6px;}
}
@media(prefers-reduced-motion:reduce){.compact-footer .footer-teach{transition:none;}}

/* Soft sage curriculum palette with the national education emblem. */
.curricula-card{background:#edf3e7;border-color:#d8e3d2;color:#193d33;}
.curricula-card .eyebrow{color:#55703d;}
.curricula-card h2{color:#193d33;}
.curricula-intro>p:last-child,.curricula-frameworks h3{color:#405c50;}
.curricula-card .guide-curriculum-logo{border:1px solid #d8e3d2;}
.curricula-card .guide-independence{border-color:#cedbc8;color:#496153;}
.curricula-card .nationals-label{flex-direction:row;gap:14px;height:84px;}
.curricula-card .nationals-label>img{width:42px;height:56px;object-fit:contain;flex-shrink:0;}
.nationals-copy{display:flex;flex-direction:column;gap:4px;text-align:left;}
.nationals-copy strong{font-size:17px;}
.nationals-copy>span{font-size:11px;}

/* Simple text action without platform-dependent arrow glyphs. */
.compact-footer .footer-teach{border:0;border-radius:0;padding:10px 0;min-height:44px;background:transparent;color:var(--green);font-size:12px;font-weight:600;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px;}
.compact-footer .footer-teach:hover{background:transparent;color:var(--ink);text-decoration-thickness:2px;}
@media(max-width:600px){.compact-footer .footer-teach{font-size:11px;}}

/* Curriculum panel follows the selected theme; logo tiles retain a readable light surface. */
html[data-theme="dark"] .curricula-card{background:#1b3028;border-color:#3b5345;color:#e8f0ec;}
html[data-theme="dark"] .curricula-card h2{color:#edf5f0;}
html[data-theme="dark"] .curricula-card .eyebrow{color:#c6dba6;}
html[data-theme="dark"] .curricula-intro>p:last-child,
html[data-theme="dark"] .curricula-frameworks h3{color:#c2d4c9;}
html[data-theme="dark"] .curricula-card .guide-independence{color:#b7cbbf;border-color:#405a4b;}
html[data-theme="dark"] .curricula-card .guide-curriculum-logo{background:#f5f7f2;border-color:#d8e3d2;}
html[data-theme="dark"] .curricula-card .nationals-label{color:#193d33;}

.compact-footer .footer-teach{gap:6px;text-decoration:none;}
.compact-footer .footer-teach>span{font-size:inherit;text-decoration:underline;text-underline-offset:4px;}
.compact-footer .footer-teach:hover>span{text-decoration-thickness:2px;}
.compact-footer .footer-link-arrow{display:block;width:14px;height:14px;flex:0 0 14px;}

/* Avoid a second rule above the shared footer after the planner steps. */
.planner-after{border-bottom:0;padding-bottom:0}
body .planner-after{border-bottom:0;padding-bottom:0}body .footer.compact-footer{border-top:0}
