:root {
    --navy-950: #0b1d34;
    --navy-800: #12375f;
    --navy-700: #195286;
    --green-600: #14805d;
    --green-700: #0f674b;
    --blue-50: #f1f7fb;
    --blue-100: #e4f0f8;
    --slate-900: #1a2a3a;
    --slate-700: #405264;
    --slate-500: #687a8c;
    --line: #d7e2e9;
    --white: #ffffff;
    --shadow: 0 16px 45px rgba(11, 29, 52, .08);
    --radius-lg: 1.25rem;
    --radius-md: .85rem;
    --container: 74rem;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--slate-900); background: var(--white); font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: 16px; line-height: 1.6; }
a { color: inherit; text-decoration: none; }
a:hover { color: var(--green-600); }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { color: var(--navy-950); line-height: 1.18; letter-spacing: -.03em; }
h1 { font-size: clamp(2.25rem, 7vw, 4.4rem); margin-bottom: 1.25rem; }
h2 { font-size: clamp(1.7rem, 4vw, 2.7rem); margin-bottom: 1rem; }
h3 { font-size: 1.15rem; margin-bottom: .5rem; }
.container { width: min(calc(100% - 2rem), var(--container)); margin-inline: auto; }
.content-narrow { max-width: 47rem; }
.skip-link { position: fixed; left: 1rem; top: -4rem; z-index: 100; background: var(--navy-950); color: #fff; padding: .75rem 1rem; border-radius: .5rem; }
.skip-link:focus { top: 1rem; }
.topbar { background: var(--navy-950); color: #d8e8f5; font-size: .78rem; }
.topbar__inner, .topbar__links { display: flex; align-items: center; }
.topbar__inner { min-height: 2.35rem; justify-content: space-between; gap: 1rem; }
.topbar p { margin: 0; }
.topbar__links { gap: 1rem; }
.topbar a:hover { color: #fff; }
.site-header { position: sticky; top: 0; z-index: 20; background: rgba(255,255,255,.96); border-bottom: 1px solid var(--line); backdrop-filter: blur(12px); }
.site-header__inner { width: min(calc(100% - 2rem), 90rem); min-height: 5.25rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.brand { display: inline-flex; align-items: center; gap: .65rem; color: var(--navy-950); line-height: 1; }
.brand:hover { color: var(--navy-950); }
.brand__mark { display: grid; place-items: center; width: 2.25rem; height: 2.25rem; border-radius: .65rem; color: #fff; background: var(--navy-800); font-family: Georgia, serif; font-size: 1.35rem; font-weight: 700; }
.brand strong, .brand small { display: block; }
.brand strong { letter-spacing: .1em; font-size: .92rem; }
.brand small { margin-top: .23rem; color: var(--slate-700); font-size: .55rem; letter-spacing: .025em; }
.primary-nav { display: flex; align-items: center; gap: .7rem; color: var(--slate-700); font-size: .78rem; font-weight: 700; white-space: nowrap; }
.nav-toggle { display: none; border: 0; background: transparent; padding: .4rem; }
.nav-toggle span { display: block; width: 1.45rem; height: 2px; margin: .27rem; background: var(--navy-950); }
.button { display: inline-flex; justify-content: center; align-items: center; min-height: 3rem; padding: .78rem 1.15rem; border: 1px solid var(--green-600); border-radius: .6rem; color: #fff; background: var(--green-600); font-weight: 750; line-height: 1.2; text-align: center; transition: transform .18s ease, background .18s ease; }
.button:hover { color: #fff; background: var(--green-700); transform: translateY(-1px); }
.button--small { min-height: 2.6rem; padding: .6rem .8rem; font-size: .8rem; }
.button--secondary { border-color: var(--navy-800); color: var(--navy-800); background: #fff; }
.button--secondary:hover { color: #fff; background: var(--navy-800); }
.button--light { border-color: #fff; color: var(--navy-950); background: #fff; }
.button--light:hover { color: var(--navy-950); background: #dceffa; }
.hero { position: relative; overflow: hidden; background: radial-gradient(circle at 88% 20%, rgba(37, 136, 173, .13), transparent 30rem), linear-gradient(115deg, #eef6fb 0%, #fff 61%); padding: clamp(4rem, 10vw, 7.5rem) 0; }
.hero::after { content: ""; position: absolute; width: 28rem; height: 28rem; right: -14rem; top: -6rem; border: 1px solid rgba(49, 134, 176, .12); background: rgba(49, 134, 176, .07); border-radius: 50%; }
.hero__grid, .split-section { display: grid; gap: 2.25rem; align-items: center; }
.hero__grid { position: relative; z-index: 1; }
.hero__lead { max-width: 40rem; color: var(--slate-700); font-size: 1.1rem; }
.hero__actions { margin-bottom: 1.25rem; }
.button-group { display: flex; flex-wrap: wrap; gap: .75rem; margin: 1.75rem 0 .9rem; }
.hero__note, .form-note { color: var(--slate-500); font-size: .82rem; }
.hero-trust-list { display: grid; grid-template-columns: 1fr; gap: .55rem; margin: 0; padding: 0; color: var(--navy-800); list-style: none; font-size: .88rem; font-weight: 730; }
.hero-trust-list li { display: flex; align-items: center; gap: .5rem; }
.hero-trust-list li::before { content: "✓"; display: grid; width: 1.2rem; height: 1.2rem; place-items: center; border-radius: 50%; color: var(--green-700); background: #e6f4ef; font-size: .75rem; }
.hero__panel { padding: clamp(1.5rem, 4vw, 2.25rem); border: 1px solid #c9ddea; border-radius: var(--radius-lg); background: rgba(255,255,255,.9); box-shadow: 0 24px 50px rgba(11,29,52,.1); }
.hero__panel-label, .eyebrow { display: block; color: var(--green-600); font-size: .75rem; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.hero__panel strong { display: block; margin: .65rem 0 1.2rem; color: var(--navy-950); font-size: 1.3rem; line-height: 1.3; }
.hero__panel ul { margin: 0; padding-left: 1.25rem; color: var(--slate-700); }
.hero__panel-stat { display: flex; flex-direction: column; gap: .2rem; padding: .9rem 0; border-top: 1px solid var(--line); color: var(--slate-500); font-size: .75rem; }
.hero__panel-stat b { color: var(--navy-800); font-size: .93rem; }
.hero__panel .text-link { display: inline-block; margin-top: 1.1rem; }
.trust-strip { border-bottom: 1px solid var(--line); background: var(--navy-950); color: #fff; }
.trust-strip__grid { display: grid; grid-template-columns: repeat(2, 1fr); }
.trust-strip__grid > div { display: grid; align-content: center; gap: .15rem; min-height: 6.25rem; padding: 1rem; border-right: 1px solid rgba(255,255,255,.15); }
.trust-strip__grid > div:nth-child(even) { border-right: 0; }
.trust-strip strong { color: #a5e7d2; font-size: 1.15rem; line-height: 1; }
.trust-strip span { color: #e6f0f7; font-size: .76rem; font-weight: 700; }
.section { padding: clamp(3.5rem, 8vw, 6.25rem) 0; }
.section--muted, .section--placeholder { background: var(--blue-50); }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 1rem; margin-bottom: 2rem; }
.section-heading h2 { max-width: 44rem; margin-bottom: 0; }
.card-grid { display: grid; gap: 1rem; }
.authority-card, .profession-card { min-height: 13rem; padding: 1.3rem; border: 1px solid var(--line); border-radius: var(--radius-md); background: #fff; box-shadow: 0 4px 14px rgba(11,29,52,.025); transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.authority-card:hover, .profession-card:hover { transform: translateY(-3px); border-color: #b6d5c8; box-shadow: var(--shadow); }
.authority-card__region { margin-bottom: .6rem; color: var(--green-600); font-size: .75rem; font-weight: 750; text-transform: uppercase; letter-spacing: .08em; }
.authority-card p:not(.authority-card__region) { color: var(--slate-700); font-size: .92rem; }
.text-link { color: var(--navy-800); font-size: .9rem; font-weight: 760; }
.text-link span { display: inline-block; margin-left: .15rem; transition: transform .18s ease; }
.text-link:hover span { transform: translateX(3px); }
.profession-card { min-height: 9.75rem; }
.profession-card__icon { display: grid; place-items: center; width: 1.85rem; height: 1.85rem; margin-bottom: 1rem; border-radius: 50%; color: var(--green-600); background: #e6f4ef; font-weight: 800; }
.section-intro { max-width: 44rem; margin: -.3rem 0 1.75rem; color: var(--slate-700); }
.study-material-card { display: flex; min-height: 14rem; flex-direction: column; padding: 1.35rem; border: 1px solid var(--line); border-radius: var(--radius-md); background: #fff; box-shadow: 0 4px 14px rgba(11,29,52,.025); }
.status-badge { align-self: flex-start; padding: .25rem .55rem; border-radius: 99px; color: var(--green-700); background: #e6f4ef; font-size: .7rem; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.study-material-card__meta { margin: 1rem 0 .45rem; color: var(--navy-800); font-size: .75rem; font-weight: 750; }
.study-material-card > p:not(.study-material-card__meta) { color: var(--slate-700); font-size: .9rem; }
.study-material-card__footer { display: flex; justify-content: space-between; gap: .75rem; margin-top: auto; padding-top: 1rem; border-top: 1px solid var(--line); color: var(--slate-500); font-size: .78rem; }
.study-material-card__footer .text-link { color: var(--slate-500); cursor: default; }
.job-grid { display: grid; gap: 1.25rem; }
.job-card { display: flex; min-height: 16rem; flex-direction: column; padding: 1.35rem; border: 1px solid var(--line); border-radius: var(--radius-md); background: #fff; box-shadow: 0 4px 14px rgba(11,29,52,.025); }
.job-card__header { display: flex; justify-content: space-between; gap: .75rem; color: var(--slate-500); font-size: .76rem; }
.job-card__facility { color: var(--navy-800); font-size: .9rem; font-weight: 750; }
.job-card__details { display: grid; grid-template-columns: repeat(2, 1fr); gap: .75rem; margin: auto 0 1rem; padding-top: 1rem; border-top: 1px solid var(--line); }
.job-card__details dt { color: var(--slate-500); font-size: .7rem; font-weight: 750; text-transform: uppercase; }
.job-card__details dd { margin: .2rem 0 0; color: var(--slate-700); font-size: .82rem; }
.job-card__actions { display: flex; flex-wrap: wrap; gap: .85rem; align-items: center; }
.job-filter { display: flex; flex-wrap: wrap; gap: .55rem; align-items: center; margin-top: 1rem; }
.job-filter__label { margin-right: .2rem; color: var(--slate-500); font-size: .78rem; font-weight: 750; text-transform: uppercase; }
.job-filter__item { padding: .45rem .7rem; border: 1px solid #c8dbe6; border-radius: 99px; color: var(--navy-800); background: #fff; font: inherit; font-size: .82rem; font-weight: 700; }
.job-filter__item[disabled] { cursor: not-allowed; opacity: .8; }
.job-detail-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .85rem; margin: 0 0 1.5rem; }
.job-detail-grid > div { padding: .95rem; border: 1px solid var(--line); border-radius: .65rem; background: #fff; }
.job-detail-grid dt { color: var(--slate-500); font-size: .7rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.job-detail-grid dd { margin: .25rem 0 0; color: var(--navy-800); font-weight: 700; }
.job-apply-panel { display: grid; gap: 1rem; align-items: center; padding: 1.2rem; border: 1px solid #bcd8ca; border-radius: var(--radius-md); background: #f3faf7; }
.job-apply-panel strong { color: var(--green-700); }
.job-apply-panel p { margin: .35rem 0 0; color: var(--slate-700); }
.job-detail-content { display: grid; gap: 1.5rem; }
.job-detail-content > div { padding-bottom: 1.5rem; border-bottom: 1px solid var(--line); }
.job-detail-content > div:last-child { padding-bottom: 0; border-bottom: 0; }
.empty-state { max-width: 46rem; padding: 1.25rem; border: 1px dashed #aebfcb; border-radius: var(--radius-md); color: var(--slate-700); background: rgba(255,255,255,.72); }
.empty-state p { margin: .35rem 0 0; }
.filter-panel { display: grid; gap: 1rem; padding: 1.35rem; border: 1px solid var(--line); border-radius: var(--radius-lg); background: #fff; box-shadow: var(--shadow); }
.filter-panel fieldset { display: grid; gap: 1rem; margin: 0; padding: 0; border: 0; }
.filter-panel legend { margin-bottom: .8rem; color: var(--navy-950); font-weight: 800; }
.filter-panel [disabled] { cursor: not-allowed; opacity: .7; }
.eligibility-form { display: grid; gap: 1rem; padding: 1.4rem; border: 1px solid var(--line); border-radius: var(--radius-lg); background: #fff; box-shadow: var(--shadow); }
.eligibility-section { background: linear-gradient(180deg, #fff 0%, #f4f9fc 100%); }
.eligibility-section__grid { display: grid; gap: 2rem; align-items: start; }
.eligibility-section__intro { padding-top: .5rem; }
.eligibility-form--extended { gap: 1.15rem; padding: clamp(1.25rem, 4vw, 2rem); }
.eligibility-form fieldset { min-width: 0; margin: 0; padding: 0; border: 0; }
.eligibility-form fieldset + fieldset { padding-top: .15rem; }
.eligibility-form .form-section-title { width: 100%; margin-bottom: 1rem; }
.consent-field { grid-template-columns: 1.25rem 1fr; align-items: start; color: var(--slate-700); font-weight: 600; }
.consent-field input { width: 1.1rem; height: 1.1rem; margin-top: .15rem; }
.honeypot-field { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.form-section-title { display: grid; gap: .18rem; padding-bottom: 1rem; border-bottom: 1px solid var(--line); }
.form-section-title strong { color: var(--navy-950); font-size: 1.05rem; }
.form-section-title span { color: var(--slate-500); font-size: .8rem; }
.form-row { display: grid; gap: 1rem; }
.form-grid { display: grid; gap: 1rem; }
label { display: grid; gap: .4rem; color: var(--slate-700); font-size: .86rem; font-weight: 700; }
input, select, textarea { width: 100%; padding: .76rem .8rem; border: 1px solid #bdccd6; border-radius: .5rem; color: var(--slate-900); background: #fff; font-weight: 400; }
input:focus, select:focus, textarea:focus { outline: 3px solid rgba(20,128,93,.18); border-color: var(--green-600); }
.check-list { padding: 0; list-style: none; color: var(--slate-700); }
.check-list li { margin: .6rem 0; }
.check-list li::before { content: "✓"; display: inline-grid; place-items: center; width: 1.2rem; height: 1.2rem; margin-right: .55rem; border-radius: 50%; color: var(--green-700); background: #e6f4ef; font-size: .75rem; font-weight: 900; }
.process-list { display: grid; gap: 1px; margin: 2rem 0 0; padding: 0; overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius-lg); list-style: none; counter-reset: process; }
.process-list li { display: grid; grid-template-columns: 2.2rem 1fr; gap: .7rem; padding: 1.1rem; background: #fff; counter-increment: process; }
.process-list li::before { content: counter(process); display: grid; place-items: center; grid-row: span 2; width: 1.75rem; height: 1.75rem; border-radius: 50%; color: var(--navy-800); background: var(--blue-100); font-size: .8rem; font-weight: 800; }
.process-list strong { color: var(--navy-950); }
.process-list span { color: var(--slate-700); font-size: .9rem; }
.why-grid { display: grid; gap: 2rem; align-items: start; }
.why-grid__lead { max-width: 32rem; color: var(--navy-800); font-size: 1.1rem; font-weight: 700; }
.value-list { display: grid; gap: .7rem; margin: 0; padding: 0; list-style: none; }
.value-list li { display: flex; gap: .7rem; align-items: flex-start; padding: .8rem .9rem; border: 1px solid #dbe7ef; border-radius: .65rem; color: var(--slate-700); background: rgba(255,255,255,.72); font-size: .92rem; }
.value-list li::before { content: "✓"; flex: 0 0 auto; color: var(--green-700); font-weight: 900; }
.preview-panel { display: flex; min-height: 18rem; flex-direction: column; align-items: flex-start; justify-content: center; padding: clamp(1.5rem, 4vw, 2.4rem); border: 1px solid #cadde8; border-radius: var(--radius-lg); background: linear-gradient(145deg, #f8fcfe, #e5f1f8); box-shadow: var(--shadow); }
.preview-panel h3 { margin-top: 1rem; font-size: 1.35rem; }
.preview-panel p { max-width: 25rem; color: var(--slate-700); }
.preview-panel .button-group { margin: .5rem 0 0; }
.review-placeholder { min-height: 11rem; padding: 1.4rem; border: 1px solid var(--line); border-radius: var(--radius-md); background: #fff; box-shadow: 0 4px 14px rgba(11,29,52,.025); }
.review-placeholder h3 { color: var(--navy-800); font-size: .95rem; letter-spacing: 0; }
.review-placeholder p { color: var(--slate-700); font-style: italic; }
.faq-list { margin: 1.75rem 0; border-top: 1px solid var(--line); }
.faq-item { border-bottom: 1px solid var(--line); }
.faq-item summary { padding: 1rem 1.75rem 1rem 0; color: var(--navy-950); cursor: pointer; font-weight: 750; }
.faq-item p { max-width: 42rem; color: var(--slate-700); }
.section--cta { background: var(--navy-950); }
.cta-panel { display: grid; gap: 1.5rem; align-items: center; }
.section--cta h2, .section--cta p { color: #fff; }
.eyebrow--light { color: #90e1c7; }
.page-hero { padding: clamp(4rem, 9vw, 6.5rem) 0; background: var(--blue-50); }
.notice { padding: 1rem 1.15rem; border-left: 4px solid var(--green-600); border-radius: 0 .5rem .5rem 0; color: var(--slate-700); background: #edf8f4; }
.dha-hero { position: relative; overflow: hidden; padding: clamp(4rem, 9vw, 7rem) 0; background: radial-gradient(circle at 88% 15%, rgba(42,132,170,.18), transparent 27rem), linear-gradient(135deg, #eef7fb 0%, #fff 58%); }
.dha-hero::after { content: ""; position: absolute; right: -11rem; bottom: -15rem; width: 32rem; height: 32rem; border: 1px solid rgba(31,103,141,.14); border-radius: 50%; }
.dha-hero__grid { position: relative; z-index: 1; display: grid; gap: 2.25rem; align-items: center; }
.dha-hero__panel { padding: clamp(1.5rem, 4vw, 2.25rem); border: 1px solid #c8dce8; border-radius: var(--radius-lg); background: rgba(255,255,255,.92); box-shadow: 0 24px 50px rgba(11,29,52,.1); }
.dha-hero__panel h2 { margin-top: 1rem; font-size: clamp(1.5rem, 3vw, 2.1rem); }
.dha-hero__panel p { color: var(--slate-700); }
.dha-hero__detail { display: grid; gap: .2rem; padding: .9rem 0; border-top: 1px solid var(--line); color: var(--slate-500); font-size: .75rem; }
.dha-hero__detail b { color: var(--navy-800); font-size: .92rem; }
.dha-hero__panel .text-link { display: inline-block; margin-top: 1rem; }
.dha-trust-strip { background: var(--navy-950); color: #fff; }
.dha-trust-strip__grid { display: grid; grid-template-columns: repeat(2, 1fr); }
.dha-trust-strip__grid > div { display: grid; align-content: center; gap: .15rem; min-height: 5.8rem; padding: 1rem; border-right: 1px solid rgba(255,255,255,.15); }
.dha-trust-strip__grid > div:nth-child(even) { border-right: 0; }
.dha-trust-strip strong { color: #a5e7d2; font-size: .92rem; }
.dha-trust-strip span { color: #e6f0f7; font-size: .75rem; font-weight: 650; }
.pill-grid { display: flex; flex-wrap: wrap; gap: .65rem; }
.pill-grid span { padding: .55rem .7rem; border: 1px solid #c8dbe6; border-radius: 99px; color: var(--navy-800); background: #f6fbfd; font-size: .84rem; font-weight: 700; }
.info-card, .mistake-card, .help-card, .document-card { border: 1px solid var(--line); border-radius: var(--radius-md); background: #fff; box-shadow: 0 4px 14px rgba(11,29,52,.025); }
.info-card { min-height: 11.5rem; padding: 1.25rem; }
.info-card h3, .mistake-card h3 { color: var(--navy-800); font-size: 1rem; letter-spacing: 0; }
.info-card p, .mistake-card p { color: var(--slate-700); font-size: .9rem; }
.dha-process-list { max-width: 65rem; }
.dha-document-grid { grid-template-columns: repeat(2, 1fr); }
.document-card { display: flex; align-items: center; min-height: 5.75rem; padding: 1rem; color: var(--slate-700); font-size: .88rem; font-weight: 700; }
.document-card::before { content: "✓"; display: grid; flex: 0 0 auto; width: 1.35rem; height: 1.35rem; margin-right: .65rem; place-items: center; border-radius: 50%; color: var(--green-700); background: #e6f4ef; font-size: .75rem; }
.dha-document-grid + .notice { margin-top: 1.25rem; }
.info-callout { padding: clamp(1.35rem, 4vw, 2rem); border: 1px solid #bcd8ca; border-radius: var(--radius-lg); background: #f3faf7; }
.info-callout strong { display: block; color: var(--green-700); font-size: 1.05rem; }
.info-callout p { color: var(--slate-700); }
.info-callout .text-link { display: inline-block; margin-top: .5rem; }
.mistake-card { min-height: 10.75rem; padding: 1.25rem; border-top: 4px solid #e5b76f; }
.help-card { display: flex; align-items: center; min-height: 6.25rem; padding: 1rem; color: var(--navy-800); font-size: .9rem; font-weight: 760; }
.help-card::before { content: "✓"; display: grid; flex: 0 0 auto; width: 1.4rem; height: 1.4rem; margin-right: .65rem; place-items: center; border-radius: 50%; color: var(--green-700); background: #e6f4ef; font-size: .75rem; }
.related-links { margin-top: 1.25rem; }
.comparison-wrap { overflow-x: auto; border: 1px solid var(--line); border-radius: var(--radius-lg); background: #fff; box-shadow: 0 4px 14px rgba(11,29,52,.025); }
.comparison-table { width: 100%; min-width: 43rem; border-collapse: collapse; color: var(--slate-700); text-align: left; }
.comparison-table th, .comparison-table td { padding: 1rem; border-bottom: 1px solid var(--line); vertical-align: top; font-size: .9rem; line-height: 1.55; }
.comparison-table thead th { color: #fff; background: var(--navy-950); font-size: .77rem; letter-spacing: .04em; text-transform: uppercase; }
.comparison-table tbody th { width: 18%; color: var(--navy-800); font-weight: 800; }
.comparison-table tbody tr:last-child th, .comparison-table tbody tr:last-child td { border-bottom: 0; }
.dha-disclaimer { padding: 2rem 0; border-top: 1px solid var(--line); background: #f7fafc; }
.dha-disclaimer p { color: var(--slate-700); font-size: .85rem; }
@media (min-width: 42rem) { .dha-trust-strip__grid { grid-template-columns: repeat(4, 1fr); } .dha-trust-strip__grid > div:nth-child(even) { border-right: 1px solid rgba(255,255,255,.15); } .dha-trust-strip__grid > div:last-child { border-right: 0; } .dha-factor-grid, .dha-mistakes-grid, .dha-help-grid { grid-template-columns: repeat(2, 1fr); } .dha-document-grid { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 64rem) { .dha-hero__grid { grid-template-columns: minmax(0, 1.35fr) minmax(19rem, .85fr); gap: 5rem; } .dha-factor-grid, .dha-mistakes-grid, .dha-help-grid { grid-template-columns: repeat(3, 1fr); } }
.site-footer { padding: 3.5rem 0 1.5rem; color: #bdcede; background: var(--navy-950); font-size: .9rem; }
.site-footer h2 { margin-bottom: .8rem; color: #fff; font-size: 1rem; letter-spacing: 0; }
.site-footer a { display: block; margin: .45rem 0; }
.site-footer a:hover { color: #fff; }
.site-footer__grid { display: grid; gap: 2rem; }
.brand--footer { margin-bottom: 1rem; color: #fff; }
.brand--footer strong { color: #fff; }
.brand--footer small { color: #bdcede; }
.site-footer__bottom { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 1rem; margin-top: 2.5rem; padding-top: 1.25rem; border-top: 1px solid rgba(255,255,255,.16); font-size: .78rem; }
.site-footer__bottom p { margin: 0; }
.site-footer__bottom div { display: flex; gap: 1rem; }
.site-footer__bottom a { margin: 0; }
.site-footer__disclaimer { margin-top: 1rem; color: #91a8be; font-size: .75rem; }
.whatsapp-float { position: fixed; right: 1rem; bottom: 1rem; z-index: 15; display: inline-flex; align-items: center; gap: .45rem; padding: .75rem .95rem; border-radius: 99px; color: #fff; background: #1d9b67; box-shadow: 0 10px 26px rgba(10,72,47,.28); font-size: .85rem; font-weight: 800; }
.whatsapp-float:hover { color: #fff; background: #12784e; }
.admin-shell { display: grid; min-height: 100vh; place-items: center; padding: 1.5rem; background: var(--blue-50); }
.admin-card { width: min(100%, 35rem); padding: 2rem; border: 1px solid var(--line); border-radius: var(--radius-lg); background: #fff; box-shadow: var(--shadow); }
.admin-card form { display: grid; gap: 1rem; margin: 1.5rem 0; }
.admin-shell--page { display: block; padding: clamp(1rem, 4vw, 2.5rem); }
.admin-page { width: min(100%, 78rem); margin: 0 auto; }
.admin-page__header { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1.5rem; }
.admin-page__header h1 { margin: .2rem 0; color: var(--navy-950); }
.admin-page__header p { margin: 0; color: var(--slate-700); }
.admin-dashboard-grid { display: grid; gap: 1rem; }
.admin-dashboard-card { display: grid; gap: .5rem; min-height: 9rem; padding: 1.4rem; border: 1px solid #c8dce8; border-radius: var(--radius-md); color: var(--navy-950); background: #fff; box-shadow: 0 4px 14px rgba(11,29,52,.025); }
.admin-dashboard-card strong { color: var(--green-700); font-size: 1.05rem; }
.admin-dashboard-card span { color: var(--slate-700); font-size: .9rem; }
.admin-panel { margin: 1.25rem 0; padding: clamp(1rem, 3vw, 1.75rem); border: 1px solid var(--line); border-radius: var(--radius-lg); background: #fff; box-shadow: 0 4px 14px rgba(11,29,52,.025); }
.admin-panel h2 { margin-top: 0; color: var(--navy-950); font-size: 1.35rem; }
.admin-form { display: grid; gap: 1rem; }
.admin-blog-form textarea { min-height: 7rem; resize: vertical; }
.admin-flash, .admin-warning { margin: 1rem 0; padding: .9rem 1rem; border: 1px solid #bcd8ca; border-radius: .6rem; color: var(--green-700); background: #f3faf7; }
.admin-flash--error, .admin-warning { border-color: #e4c48b; color: #765018; background: #fff8e8; }
.admin-flash ul { margin: .5rem 0 0; padding-left: 1.2rem; }
.admin-warning p { margin-bottom: 0; color: var(--slate-700); }
.admin-table-wrap { overflow-x: auto; border: 1px solid var(--line); border-radius: .65rem; }
.admin-table { width: 100%; min-width: 48rem; border-collapse: collapse; color: var(--slate-700); text-align: left; }
.admin-table th, .admin-table td { padding: .85rem; border-bottom: 1px solid var(--line); vertical-align: top; font-size: .86rem; }
.admin-table th { color: var(--navy-800); background: #f2f8fb; font-size: .74rem; letter-spacing: .04em; text-transform: uppercase; }
.admin-table tr:last-child td { border-bottom: 0; }
.admin-table code { font-size: .75rem; overflow-wrap: anywhere; }
.admin-row-actions { display: flex; flex-wrap: wrap; gap: .55rem; }
.admin-row-actions form { display: inline; margin: 0; }
.text-button { padding: 0; border: 0; color: var(--green-700); background: transparent; cursor: pointer; font: inherit; font-weight: 750; }
.text-button--danger { color: #9a3a34; }
.admin-status { display: inline-flex; padding: .2rem .45rem; border-radius: 99px; font-size: .72rem; font-weight: 800; }
.admin-status--published { color: var(--green-700); background: #e6f4ef; }
.admin-status--draft { color: #765018; background: #fff2d7; }
.admin-status--coming_soon { color: #2a6281; background: #e7f2f8; }
.admin-status--pending_review { color: #765018; background: #fff2d7; }
.admin-status--unpublished { color: #2a6281; background: #e7f2f8; }
.admin-status--closed { color: #5f6570; background: #e8ecef; }
.admin-job-form textarea { min-height: 6rem; resize: vertical; }
.blog-filter { display: flex; flex-wrap: wrap; gap: .55rem; align-items: center; margin-top: 1rem; }
.blog-filter__label { margin-right: .2rem; color: var(--slate-500); font-size: .78rem; font-weight: 750; text-transform: uppercase; }
.blog-filter__item { padding: .45rem .7rem; border: 1px solid #c8dbe6; border-radius: 99px; color: var(--navy-800); background: #fff; font: inherit; font-size: .82rem; font-weight: 700; }
.blog-filter__item[disabled] { cursor: not-allowed; opacity: .8; }
.blog-filter__item[aria-pressed="true"] { color: #fff; border-color: var(--green-700); background: var(--green-700); }
.blog-grid { display: grid; gap: 1.25rem; }
.blog-card { display: flex; overflow: hidden; min-height: 17rem; flex-direction: column; border: 1px solid var(--line); border-radius: var(--radius-md); background: #fff; box-shadow: 0 4px 14px rgba(11,29,52,.025); }
.blog-card__image { width: 100%; height: 12rem; object-fit: cover; background: var(--blue-50); }
.blog-card__body { display: flex; flex: 1; flex-direction: column; align-items: flex-start; padding: 1.35rem; }
.blog-card__body h3 { margin: .7rem 0; color: var(--navy-950); font-size: 1.14rem; letter-spacing: 0; }
.blog-card__body p { color: var(--slate-700); }
.blog-card__body time, .blog-card__body .text-link { margin-top: auto; padding-top: .8rem; }
.blog-card__body time { color: var(--slate-500); font-size: .78rem; }
.blog-card__meta, .blog-detail__meta { display: flex; flex-wrap: wrap; gap: .5rem .85rem; color: var(--slate-500); font-size: .76rem; font-weight: 750; }
.blog-card__meta span + span::before, .blog-detail__meta span + span::before, .blog-detail__meta time + span::before { content: "•"; margin-right: .85rem; color: #9db1c0; }
.blog-detail__meta { margin-top: 1.2rem; }
.blog-article__image { width: 100%; max-height: 30rem; margin-bottom: 2rem; border-radius: var(--radius-md); object-fit: cover; background: var(--blue-50); }
.blog-article__content { color: var(--slate-700); font-size: 1.02rem; line-height: 1.8; }
.blog-article__content h2, .blog-article__content h3 { margin-top: 2rem; color: var(--navy-950); }
.blog-article__content a { color: var(--green-700); text-decoration: underline; text-underline-offset: .15em; }
.blog-article__content blockquote { margin: 1.5rem 0; padding: 1rem 1.25rem; border-left: 4px solid var(--green-600); color: var(--navy-800); background: #f3faf7; font-weight: 650; }
.blog-tags { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 2rem; padding-top: 1.25rem; border-top: 1px solid var(--line); }
.blog-tags span { padding: .35rem .55rem; border-radius: 99px; color: var(--navy-800); background: var(--blue-100); font-size: .75rem; font-weight: 750; }
.blog-link-grid { display: grid; gap: 1rem; }
.blog-link-box { display: grid; gap: .75rem; padding: 1.25rem; border: 1px solid #c8dce8; border-radius: var(--radius-md); background: #f8fcfe; }
.blog-link-box h3 { margin: 0; color: var(--navy-800); font-size: 1rem; letter-spacing: 0; }
.study-filter { display: flex; flex-wrap: wrap; gap: .55rem; align-items: center; margin-top: 1rem; }
.study-filter__label { margin-right: .2rem; color: var(--slate-500); font-size: .78rem; font-weight: 750; text-transform: uppercase; }
.study-filter__item { padding: .45rem .7rem; border: 1px solid #c8dbe6; border-radius: 99px; color: var(--navy-800); background: #fff; font: inherit; font-size: .82rem; font-weight: 700; }
.study-filter__item[disabled] { cursor: not-allowed; opacity: .8; }
.study-filter__item[aria-pressed="true"] { color: #fff; border-color: var(--green-700); background: var(--green-700); }
.study-material-grid { display: grid; gap: 1.25rem; }
.study-material-card { overflow: hidden; padding: 0; }
.study-material-card__image { width: 100%; height: 11rem; object-fit: cover; background: var(--blue-50); }
.study-material-card__body { display: flex; min-height: 16rem; flex: 1; flex-direction: column; align-items: flex-start; padding: 1.35rem; }
.study-material-card__body .study-material-card__meta { margin: .85rem 0 .4rem; }
.study-material-card__body h3 { margin: .35rem 0 .7rem; color: var(--navy-950); font-size: 1.12rem; letter-spacing: 0; }
.study-material-card__body > p { color: var(--slate-700); }
.study-material-card__details { display: grid; grid-template-columns: repeat(2, 1fr); width: 100%; gap: .75rem; margin: auto 0 .95rem; padding-top: 1rem; border-top: 1px solid var(--line); }
.study-material-card__details dt { color: var(--slate-500); font-size: .68rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.study-material-card__details dd { margin: .25rem 0 0; color: var(--slate-700); font-size: .82rem; font-weight: 700; }
.study-material-card__actions { display: flex; flex-wrap: wrap; gap: .8rem; width: 100%; padding-top: .8rem; border-top: 1px solid var(--line); }
.whatsapp-enquiry { color: var(--green-700); font-weight: 800; }
.study-material-detail__meta { display: flex; flex-wrap: wrap; gap: .6rem .9rem; align-items: center; margin-top: 1.25rem; color: var(--slate-600); font-size: .84rem; font-weight: 700; }
.study-material-article__image { width: 100%; max-height: 30rem; margin-bottom: 2rem; border-radius: var(--radius-md); object-fit: cover; background: var(--blue-50); }
.study-material-article__content { color: var(--slate-700); font-size: 1.02rem; line-height: 1.8; }
.study-material-article__content h2, .study-material-article__content h3 { margin-top: 2rem; color: var(--navy-950); }
.study-material-article__content a { color: var(--green-700); text-decoration: underline; text-underline-offset: .15em; }
.study-material-enquiry { display: grid; gap: 1rem; align-items: center; margin-top: 2rem; padding: 1.2rem; border: 1px solid #bcd8ca; border-radius: var(--radius-md); background: #f3faf7; }
.study-material-enquiry strong { color: var(--green-700); }
.study-material-enquiry p { margin: .35rem 0 0; color: var(--slate-700); }
.study-includes-list { display: grid; gap: .7rem; margin: 1.5rem 0 0; padding: 0; list-style: none; }
.study-includes-list li { display: flex; gap: .7rem; align-items: flex-start; padding: .85rem .95rem; border: 1px solid #dbe7ef; border-radius: .65rem; color: var(--slate-700); background: #fff; }
.study-includes-list li::before { content: "✓"; flex: 0 0 auto; color: var(--green-700); font-weight: 900; }
.admin-study-form textarea { min-height: 7rem; resize: vertical; }
@media (min-width: 42rem) { .hero-trust-list { grid-template-columns: repeat(2, 1fr); } .trust-strip__grid { grid-template-columns: repeat(4, 1fr); } .trust-strip__grid > div:nth-child(even) { border-right: 1px solid rgba(255,255,255,.15); } .trust-strip__grid > div:last-child { border-right: 0; } .card-grid--authority { grid-template-columns: repeat(2, 1fr); } .card-grid--profession, .card-grid--study, .card-grid--jobs, .card-grid--reviews, .job-grid { grid-template-columns: repeat(2, 1fr); } .form-row, .form-grid--two { grid-template-columns: repeat(2, 1fr); } .filter-panel fieldset { grid-template-columns: repeat(3, 1fr); } .cta-panel, .job-apply-panel { grid-template-columns: 1fr auto; } .site-footer__grid { grid-template-columns: 1.5fr 1fr 1fr; } }
@media (min-width: 42rem) { .admin-dashboard-grid, .blog-grid, .blog-link-grid, .study-material-grid { grid-template-columns: repeat(2, 1fr); } .study-material-enquiry { grid-template-columns: 1fr auto; } }
@media (min-width: 64rem) { .hero__grid, .split-section { grid-template-columns: minmax(0, 1.35fr) minmax(19rem, .85fr); gap: 5rem; } .eligibility-section__grid, .why-grid { grid-template-columns: minmax(17rem, .7fr) minmax(0, 1.3fr); gap: 5rem; } .card-grid--authority { grid-template-columns: repeat(4, 1fr); } .card-grid--profession, .card-grid--study, .card-grid--jobs, .card-grid--reviews, .job-grid { grid-template-columns: repeat(3, 1fr); } }
