*, *::before, *::after { box-sizing:border-box; margin:0; padding:0; }
:root { color-scheme:dark; --black:#0a0a0a; --gold:#c9a84c; --gold2:#e8c86a; --white:#f8f8f8; --muted:#b4b4b4; --line:rgba(201,168,76,.22); }
html { scroll-behavior:smooth; scroll-padding-top:100px; }
body { background:var(--black); color:var(--white); font:400 16px/1.7 'Inter',sans-serif; }
[hidden] { display:none !important; }
a { color:var(--gold2); text-underline-offset:4px; }
a:hover { color:var(--white); }
button, input, select, textarea { font:inherit; }
:focus-visible { outline:2px solid var(--gold2); outline-offset:4px; }
.skip-link { position:fixed; top:8px; left:8px; padding:8px 16px; background:var(--gold2); color:var(--black); transform:translateY(-150%); z-index:200; }
.skip-link:focus { transform:translateY(0); }
nav { min-height:72px; position:sticky; top:0; z-index:100; display:flex; align-items:center; justify-content:space-between; gap:24px; padding:12px 5%; border-bottom:1px solid var(--line); background:rgba(10,10,10,.98); }
.nav-logo { display:flex; align-items:center; gap:14px; flex-shrink:0; text-decoration:none; font-family:'Oswald',sans-serif; text-transform:uppercase; }
.nav-logo img { width:45px; height:45px; object-fit:contain; }
.nav-logo strong { display:block; color:var(--gold2); font-size:1rem; letter-spacing:.12em; }
.nav-logo span { display:block; color:var(--muted); font-size:.7rem; letter-spacing:.2em; line-height:1.3; }
.nav-links { display:flex; align-items:center; gap:28px; list-style:none; }
.nav-links a { color:var(--muted); text-decoration:none; font-size:.78rem; font-weight:500; letter-spacing:.08em; text-transform:uppercase; }
.nav-links a:hover, .nav-links a[aria-current] { color:var(--gold2); }
.nav-links a[aria-current] { border-bottom:1px solid var(--gold); padding-bottom:3px; }
.scholarship-hero { padding:42px 5% 32px; border-bottom:1px solid var(--line); }
.eyebrow { color:var(--gold2); font-size:.69rem; font-weight:700; letter-spacing:.18em; text-transform:uppercase; margin-bottom:14px; }
h1, h2, h3, legend { font-family:'Oswald',sans-serif; }
h1 { font-size:clamp(2.3rem,4.4vw,4rem); line-height:1.1; max-width:1100px; }
h1 em { display:block; font-style:normal; color:var(--gold2); }
.hero-description { max-width:780px; color:var(--muted); margin-top:18px; }
.award-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; margin-top:26px; padding-top:20px; border-top:1px solid var(--line); }
.award-facts dt { color:var(--muted); font-size:.68rem; text-transform:uppercase; letter-spacing:.1em; }
.award-facts dd { font-family:'Oswald',sans-serif; font-size:1.4rem; margin-top:4px; }
.scholarship-details { padding:34px 5% 48px; }
.details-grid { display:grid; grid-template-columns:1fr 1fr; gap:clamp(36px,7vw,100px); }
.details-grid h2 { font-size:1.7rem; margin-bottom:14px; line-height:1.3; }
.details-grid p, .details-grid li { color:var(--muted); font-size:.94rem; }
.details-grid ol { padding-left:20px; }
.details-grid li { padding-left:4px; margin-bottom:12px; }
.details-grid p + p { margin-top:14px; }
.application-policy { margin-top:24px; padding-top:22px; border-top:1px solid var(--line); }
.application-policy p { color:var(--muted); font-size:.89rem; max-width:1000px; }
.details-actions { display:flex; flex-wrap:wrap; align-items:center; gap:16px 28px; margin-top:24px; }
.btn-gold { display:inline-block; padding:14px 32px; border:0; border-radius:2px; background:linear-gradient(135deg,var(--gold),var(--gold2)); color:var(--black); font:600 .95rem 'Oswald',sans-serif; letter-spacing:.09em; text-transform:uppercase; text-align:center; text-decoration:none; transition:opacity .18s,transform .18s; }
.btn-gold:hover { color:var(--black); opacity:.9; transform:translateY(-1px); }
.details-actions > a:not(.btn-gold) { font-size:.85rem; }
.application-page { width:100%; max-width:1160px; margin:0 auto; padding:36px 5% 56px; }
.application-header { padding-bottom:12px; }
.application-header h1 { font-size:clamp(2.1rem,3.6vw,3rem); line-height:1.15; }
.application-header p { margin-top:14px; color:var(--muted); font-size:.9rem; }
.application-header .back-link { display:inline-block; margin-bottom:22px; font-size:.82rem; }
.required { color:var(--gold2); }
.availability { margin:22px 0; padding:14px 18px; border-left:3px solid var(--gold); background:rgba(201,168,76,.06); font-size:.87rem; }
.text-button { color:var(--gold2); background:none; border:0; padding:0; text-decoration:underline; text-underline-offset:4px; font:inherit; cursor:pointer; }
.form-section { min-width:0; border:0; border-top:1px solid var(--line); margin-top:28px; padding-top:24px; }
.form-section legend { float:left; width:100%; font-size:1.35rem; line-height:1.3; margin-bottom:22px; }
.section-number { display:inline-block; color:var(--gold2); font-size:.83rem; letter-spacing:.08em; margin-right:12px; }
.form-grid { clear:both; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.field { min-width:0; }
.field.full { grid-column:1/-1; }
.field label { display:block; font-size:.88rem; font-weight:500; margin-bottom:8px; }
input:not([type=checkbox]), select, textarea { width:100%; min-height:48px; border:1px solid #535353; border-radius:2px; background:#191919; color:var(--white); padding:11px 13px; }
select option { background:#191919; color:var(--white); }
textarea { min-height:140px; resize:vertical; line-height:1.7; }
input::placeholder, textarea::placeholder { color:#a0a0a0; opacity:1; }
input:focus, select:focus, textarea:focus { border-color:var(--gold2); }
.field-help { color:var(--muted); font-size:.77rem; margin-top:6px; }
.word-count { display:flex; justify-content:space-between; gap:12px; }
.word-count span:last-child { flex-shrink:0; }
.check-row { display:flex; gap:12px; align-items:flex-start; font-size:.87rem; cursor:pointer; }
.check-row input { flex-shrink:0; width:19px; height:19px; margin-top:4px; accent-color:var(--gold2); }
.check-stack { display:grid; gap:18px; clear:both; }
.expense-group { border:0; min-width:0; }
.expense-group legend { float:none; font-family:'Inter',sans-serif; font-size:.88rem; font-weight:500; margin-bottom:12px; }
.expense-group .field-help { margin-bottom:12px; }
#guardian-fields { display:contents; }
.optional-consent { border-top:1px solid var(--line); padding-top:18px; }
.optional-label { color:var(--gold2); font-size:.73rem; font-weight:600; }
.honeypot { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.submit-area { margin-top:30px; }
.submit-button { width:100%; min-height:56px; cursor:pointer; }
.submit-button:disabled { opacity:.5; cursor:not-allowed; }
.privacy-note { font-size:.77rem; color:var(--muted); margin-top:14px; }
.form-error { margin-top:18px; padding:16px; color:#ffd4cc; border-left:3px solid #ed9e8f; background:#231411; font-size:.87rem; }
.success-state { padding:28px 0; border-top:2px solid var(--gold); margin-top:24px; }
.success-state h2 { font-size:2rem; margin-bottom:16px; }
.success-state p { color:var(--muted); margin-bottom:16px; }
.application-id { color:var(--gold2); overflow-wrap:anywhere; }
footer { border-top:1px solid var(--line); background:#050505; padding:30px 5%; display:flex; flex-wrap:wrap; justify-content:space-between; gap:18px 32px; }
footer p { font-size:.77rem; color:var(--muted); }
.footer-links { display:flex; flex-wrap:wrap; gap:12px 24px; list-style:none; font-size:.8rem; }
@media(max-width:1000px) { .nav-links { gap:16px; } .nav-links a { font-size:.7rem; } }
@media(max-width:800px) { nav { align-items:flex-start; flex-direction:column; gap:12px; position:relative; } .nav-links { gap:10px 20px; flex-wrap:wrap; } .scholarship-hero { padding-top:30px; } .details-grid { grid-template-columns:1fr; gap:24px; } .application-page { padding-top:26px; } }
@media(max-width:520px) { .award-facts { grid-template-columns:1fr 1fr; gap:16px; } .award-facts dd { font-size:1.2rem; } .form-grid { grid-template-columns:1fr; } .word-count { flex-wrap:wrap; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .btn-gold { transition:none; } }
