/* A clear reading order, comfortable touch targets and the existing Norskbro green. */
.btn{min-height:48px;line-height:1.35;text-align:center;white-space:normal;transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease}
@media(hover:hover) and (pointer:fine){.btn:not(:disabled):hover{transform:scale(1.025);box-shadow:0 5px 16px #18382b17}}
.btn:focus-visible,button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #176347;outline-offset:4px}
.btn:disabled{transform:none;box-shadow:none}
.hero-actions,.form-actions{gap:16px}.hero-actions{margin-block:24px}.hero-actions .btn{padding:14px 22px}.footer-links a{padding-block:6px}
@media(max-width:480px){.hero-actions{align-items:stretch;gap:16px}.hero-actions>.btn{width:100%}}
.footer-links a,.legal-copy a{overflow-wrap:anywhere}
.privacy-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-block:24px 38px}
.privacy-summary article{padding:24px;border:1px solid #d4e0d1;border-radius:20px;background:#fff;box-shadow:0 5px 20px #18382b06}
.privacy-summary h2,.privacy-summary h3{font-size:1.25rem;line-height:1.35;color:#18382b;margin:0 0 10px}
.privacy-summary p{font-size:1rem;line-height:1.65;margin:0;color:#344d3d}
.privacy-jump{display:flex;flex-wrap:wrap;gap:10px;margin-block:18px 28px}
.privacy-jump a{border:1px solid #b7cab1;border-radius:999px;padding:10px 16px;min-height:44px;color:#18382b;background:#f4f7ef;font-weight:600;text-decoration:none}
.privacy-detail{padding:24px 0;border-top:1px solid #d4e0d1;scroll-margin-top:110px}
.privacy-detail>summary{font-weight:700;font-size:1.25rem;cursor:pointer;min-height:48px;color:#18382b}
.privacy-detail>summary::marker{color:#176347}
.privacy-detail[open]>summary{margin-bottom:18px}
.privacy-detail h2{font-size:1.35rem;margin-block:28px 12px}
.privacy-note{padding:20px 24px;border-inline-start:4px solid #176347;background:#edf3e8;border-radius:0 14px 14px 0;color:#18382b;line-height:1.65;margin-block:24px}
.privacy-contact{padding:28px;border:1px solid #c7d6c0;border-radius:20px;background:#f4f7ef;margin-block:28px}
.privacy-contact h2{font-size:1.6rem;margin-top:0}
.privacy-contact .hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.legal-copy{max-width:900px;line-height:1.75}
.legal-copy table{width:100%;border-collapse:collapse;margin-block:20px;table-layout:fixed}
.legal-copy th,.legal-copy td{padding:14px 12px;border-bottom:1px solid #d4e0d1;text-align:start;vertical-align:top;overflow-wrap:anywhere}
.legal-copy th{background:#edf3e8;color:#18382b}
.legal-copy h2,.legal-copy h3,.legal-copy [id]{scroll-margin-top:110px}
.portal-privacy{margin-block:24px;padding:24px;border:1px solid #d4e0d1;border-radius:18px;background:#f4f7ef}
.portal-privacy h3{margin:0 0 10px;font-size:1.25rem}
.portal-location{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-block:0 18px;color:#425a48}
.portal-location [data-portal-home]{min-height:44px}
.record-actions{flex-wrap:wrap;gap:10px}
[data-record-status],[data-exam-save]{line-height:1.6;overflow-wrap:anywhere}
.home-course-facts{display:flex;flex-wrap:wrap;gap:8px 24px;padding:18px 0;margin-block:18px;color:#344d3d;font-size:1rem}
.home-course-facts span{display:flex;align-items:center;gap:8px}
.home-course-facts span::before{content:'✓';font-weight:700;color:#176347}
@media(max-width:800px){.privacy-summary{grid-template-columns:1fr;gap:12px}.privacy-summary article{padding:20px}.legal-copy table{table-layout:auto;font-size:.93rem}.legal-copy th,.legal-copy td{padding:12px 8px}.privacy-contact{padding:20px}.navlinks.mobile-open{max-height:calc(100dvh - 110px);overflow-y:auto;overscroll-behavior:contain;padding-bottom:20px}.privacy-jump{gap:8px}.privacy-jump a{padding:10px 14px}.home-course-facts{display:grid;gap:10px}.portal-location{font-size:.94rem}.portal-privacy{padding:18px}}
@media(max-width:480px){.privacy-contact .hero-actions .btn{width:100%}.privacy-jump a{flex:1 1 40%;text-align:center}.legal-copy td:first-child{font-weight:600}}
@media(prefers-reduced-motion:reduce){.btn{transition:none}.btn:not(:disabled):hover{transform:none}}
@media(forced-colors:active){.privacy-summary article,.privacy-contact,.privacy-jump a,.portal-privacy{border:1px solid CanvasText}.btn:focus-visible{outline-color:Highlight}}

.spanish-secondary{border-top:1px solid #d8dfd4;padding:24px 0}.spanish-secondary h2{font-size:22px;line-height:1.3}.spanish-secondary p{max-width:65ch}.spanish-secondary .btn{margin-top:12px}
