/* Same document and reading order at every size. No fixed overlays or scroll traps. */
.gn-unified-page{--gn-navy:#061b45;--gn-text:#40576b;--gn-blue:#1263b9;box-sizing:border-box;max-width:1100px;width:100%;margin:clamp(20px,4vw,48px) auto;padding:clamp(18px,3.5vw,44px);border:1px solid #ceeaf3;border-radius:clamp(24px,4vw,42px);background:radial-gradient(circle at 100% 0,#dff8ff,transparent 36%),linear-gradient(150deg,#effcff,#fff 65%);color:var(--gn-text);font:400 17px/1.65 Ubuntu,Arial,sans-serif;box-shadow:0 22px 64px rgba(8,97,139,.10);overflow-wrap:anywhere}
.gn-unified-page *,.gn-unified-page *::before,.gn-unified-page *::after{box-sizing:border-box;min-width:0}
.gn-unified-page :where(h1,h2,h3){color:var(--gn-navy);font-family:"Open Sans",Ubuntu,Arial,sans-serif;font-weight:800;font-style:italic;line-height:1.15;text-transform:uppercase;letter-spacing:-.025em;margin:0 0 16px}
.gn-unified-page h1{font-size:clamp(30px,4.2vw,52px);max-width:900px}
.gn-unified-page h2{font-size:clamp(22px,2.4vw,29px)}
.gn-unified-page h3{font-size:21px}
.gn-unified-page p{margin:0 0 18px;color:var(--gn-text);font-size:17px;line-height:1.65}
.gn-unified-page__hero{margin-bottom:32px;max-width:820px}
.gn-unified-page__hero--course{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:24px;max-width:none;align-items:center}
.gn-unified-page__cover{margin:0;width:100%;max-width:240px;justify-self:end}
.gn-unified-page__cover img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain}
.gn-unified-page__lead{font-size:19px!important;max-width:760px}
.gn-unified-page__eyebrow{display:inline-block;padding:5px 12px;border-radius:999px;background:#dff1ff;color:#12356b!important;font-size:12px!important;line-height:1.4!important;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.gn-unified-page a{color:var(--gn-blue);text-decoration:underline;text-underline-offset:3px}
.gn-unified-page a:hover{text-decoration-thickness:2px}
.gn-unified-page :where(a,button,input,textarea,select,summary):focus-visible{outline:3px solid #1263b9;outline-offset:4px}
.gn-unified-page__actions{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}
.gn-unified-page__actions a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;border-radius:999px;background:#1263b9;color:#fff;font-weight:700;text-decoration:none;line-height:1.3}
.gn-unified-page__actions a:nth-child(n+2){background:#fff;color:#12356b;border:1px solid #accfe7}
.gn-unified-page__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:26px 0}
.gn-unified-page__card{border-radius:24px;padding:24px;background:rgba(255,255,255,.94);border:1px solid #d1e6ef}
.gn-unified-page__card p:last-child{margin-bottom:0}
.gn-unified-page__section{margin:32px 0}
.gn-unified-page__section :where(ul,ol){padding-left:22px;margin:12px 0}
.gn-unified-page li{margin-bottom:8px}
.gn-unified-page__note{padding:15px 18px;background:#edf7fb;border-left:4px solid #1263b9;border-radius:4px 16px 16px 4px;font-size:16px!important;margin:20px 0!important}
.gn-unified-page__schedule{margin:28px 0}
.gn-unified-page__data{margin:28px 0}
.gn-unified-page table{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;margin:0;border:1px solid #cce1ed;border-radius:18px;overflow:hidden;text-align:left;font-size:16px;line-height:1.55;background:#fff}
.gn-unified-page th,.gn-unified-page td{padding:16px 18px;border:0;border-bottom:1px solid #d9e9f1;text-align:left;vertical-align:top;color:#40576b;white-space:normal;overflow-wrap:anywhere}
.gn-unified-page thead th{font:700 12px/1.5 Ubuntu,Arial,sans-serif;text-transform:uppercase;letter-spacing:.035em;background:#e2f2fa;color:#12356b}
.gn-unified-page th:first-child{width:27%}
.gn-unified-page td:nth-child(2){color:#061b45;font-weight:700;width:39%}
.gn-unified-page tbody th{font-weight:700;color:#061b45}
.gn-unified-page tbody tr:last-child :where(th,td){border-bottom:0}
.gn-unified-page__documents{display:grid;gap:10px;margin:20px 0}
.gn-unified-page__documents a{display:flex;align-items:center;min-height:48px;padding:14px 18px;border:1px solid #cce1ed;border-radius:16px;background:#fff;line-height:1.45}
.gn-unified-page details{border:1px solid #cce1ed;border-radius:20px;padding:20px;background:#fff;margin:24px 0}
.gn-unified-page summary{cursor:pointer;min-height:44px;color:#061b45;font-weight:700;line-height:1.5}
.gn-unified-page details[open] summary{margin-bottom:18px}
.gn-unified-page img,.gn-unified-page video{max-width:100%;height:auto;border-radius:20px}
.gn-unified-page :where(input:not([type="checkbox"]):not([type="radio"]),textarea,select){max-width:100%;width:100%;min-height:48px;font:inherit;border-radius:12px;border:1px solid #98bdd5;padding:12px;color:#061b45;background:#fff}
.gn-unified-page input[type="submit"]{background:#1263b9;color:#fff;border:0;font-weight:700;cursor:pointer}
.gn-unified-page :where(input[type="checkbox"],input[type="radio"]){width:20px;height:20px}
.gn-unified-page .wpcf7-form-control-wrap{display:block}
.gn-unified-page .wpcf7-list-item{margin:0}
/* The DS close control belongs to its overlay, not an inline staff directory.
   Theme display rules otherwise override the native hidden attribute. */
.gn-unified-page .gn-staff__close[hidden]{display:none!important}
.gn-unified-page__sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:767px){
 .gn-unified-page{margin:18px auto;padding:22px 16px;font-size:16px;box-shadow:none}
 .gn-unified-page__grid{grid-template-columns:1fr}
 .gn-unified-page__hero--course{grid-template-columns:1fr}
 .gn-unified-page__cover{width:160px;justify-self:center}
 .gn-unified-page__card{padding:20px}
 .gn-unified-page__actions a{width:100%}
 .gn-unified-page table,.gn-unified-page tbody{display:block;border:0;background:transparent;overflow:visible}
 .gn-unified-page thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
 .gn-unified-page tbody tr{display:block;margin:0 0 12px;border:1px solid #cce1ed;border-radius:18px;padding:16px;background:#fff}
 .gn-unified-page tbody :where(th,td){display:block;width:100%!important;border:0;padding:0;font-size:16px;word-break:normal;overflow-wrap:break-word}
 .gn-unified-page tbody th{padding-bottom:10px;font-size:17px}
 .gn-unified-page tbody td{padding-bottom:8px}
 .gn-unified-page tbody td::before{content:attr(data-label);display:block;font:700 11px/1.5 Ubuntu,Arial,sans-serif;text-transform:uppercase;letter-spacing:.05em;color:#40576b;padding-bottom:3px}
 .gn-unified-page tbody td:last-child{padding-bottom:0}
 .gn-unified-page tbody td:empty{display:none}
 .gn-unified-page__lead{font-size:17px!important}
}
.gn-unified-page__data{scroll-margin-top:110px}
@media(prefers-reduced-motion:reduce){.gn-unified-page *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
