:root {
  --brand-primary: #071a38;
  --brand-primary-dark: #031127;
  --brand-secondary: #123d7a;
  --brand-blue: #1d5fd1;
  --brand-accent: #ff861a;
  --brand-accent-light: #fff0df;
  --brand-surface: #ffffff;
  --brand-surface-soft: #f5f8fd;
  --brand-border: #d8e2f0;
  --brand-text: #14243c;
  --brand-muted: #60728c;
  --brand-success: #0d8169;
  --shadow-soft: 0 18px 45px rgba(7, 26, 56, 0.11);
  --shadow-card: 0 26px 70px rgba(7, 26, 56, 0.18);
  --radius-xl: 30px;
  --radius-lg: 22px;
  --radius-md: 16px;
}

html { font-size: 14px; scroll-behavior: smooth; }
@media (min-width: 768px) { html { font-size: 16px; } }

body {
  margin: 0;
  color: var(--brand-text);
  background:
    radial-gradient(circle at 90% 0%, rgba(255, 134, 26, .13), transparent 24%),
    linear-gradient(180deg, #f5f8fd 0%, #ffffff 36%, #f7f9fc 100%);
  font-family: "Noto Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  letter-spacing: -0.01em;
}

main { min-height: 60vh; }
.section-space { padding: 5.5rem 0; }
.text-muted, .text-secondary { color: var(--brand-muted) !important; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 1030;
  backdrop-filter: blur(18px);
  background: rgba(255,255,255,.9);
  border-bottom: 1px solid rgba(216,226,240,.9);
}
.navbar { padding: .9rem 0; }
.navbar-brand { color: var(--brand-text) !important; }
.brand-mark { width: 150px; height: 150px; object-fit: contain; }
.brand-copy small { display:block; font-size:.68rem; letter-spacing:.12em; text-transform:uppercase; color:var(--brand-muted); }
.nav-link { color:var(--brand-text)!important; font-weight:700; border-radius:999px; padding:.55rem .85rem!important; }
.nav-link:hover,.nav-link:focus,.dropdown-item:hover { color:var(--brand-accent)!important; }
.dropdown-menu { border:1px solid var(--brand-border); box-shadow:var(--shadow-soft); border-radius:16px; padding:.75rem; }
.dropdown-item { border-radius:11px; padding-top:.62rem; padding-bottom:.62rem; }

.btn { border-radius:999px; font-weight:800; padding:.82rem 1.35rem; border-width:0; letter-spacing:.01em; }
.btn-primary { background:linear-gradient(135deg,var(--brand-accent),#f15b00); color:#fff; box-shadow:0 15px 36px rgba(255,134,26,.28); }
.btn-primary:hover,.btn-primary:focus { background:linear-gradient(135deg,#ff7410,#d94d00); color:#fff; }
.btn-outline-primary,.btn-outline-secondary { background:#fff; border:1px solid rgba(7,26,56,.18); color:var(--brand-primary); }
.btn-outline-primary:hover,.btn-outline-secondary:hover { background:var(--brand-accent-light); color:var(--brand-primary-dark); border-color:rgba(255,134,26,.5); }
.btn-success { background:linear-gradient(135deg,#16a687,var(--brand-success)); box-shadow:0 14px 32px rgba(13,129,105,.22); }

.hero-shell { position:relative; overflow:hidden; padding:6rem 0 5rem; }
.hero-shell::before { content:""; position:absolute; width:560px; height:560px; right:-180px; top:-180px; border-radius:50%; background:radial-gradient(circle,rgba(255,134,26,.2),transparent 68%); }
.global-hero { color:#fff; background:linear-gradient(120deg,rgba(3,17,39,.98),rgba(7,26,56,.96) 58%,rgba(18,61,122,.93)); }
.global-hero::after { content:""; position:absolute; inset:0; background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px); background-size:48px 48px; mask-image:radial-gradient(circle at center,#000,transparent 74%); }
.global-hero .container { position:relative; z-index:1; }
.home-banner {
  position: relative;
  min-height: 560px;
  display: flex;
  align-items: center;
  background-image: linear-gradient(90deg, rgba(3,17,39,.96) 0%, rgba(3,17,39,.82) 42%, rgba(3,17,39,.25) 100%), url('/images/international-sports-banner.svg');
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.home-banner::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 55%, rgba(3,17,39,.5));
}
.home-banner .container { position: relative; z-index: 1; }
.home-banner .display-premium, .home-banner .lead { color: #fff; }
.home-banner .lead { color: rgba(255,255,255,.8); }
.global-hero .display-premium,.global-hero .lead { color:#fff; }
.global-hero .lead { color:rgba(255,255,255,.78); }

.hero-card,.glass-panel,.info-card,.form-shell,.metric-card,.content-panel,.mini-card,.admissions-highlight { background:rgba(255,255,255,.95); border:1px solid rgba(216,226,240,.96); box-shadow:var(--shadow-soft); border-radius:var(--radius-xl); }
.eyebrow { display:inline-flex; align-items:center; gap:.5rem; background:var(--brand-accent-light); color:#b45100; border:1px solid rgba(255,134,26,.23); border-radius:999px; padding:.42rem .85rem; font-size:.76rem; font-weight:900; letter-spacing:.07em; text-transform:uppercase; }
.display-premium { font-size:clamp(2.5rem,4.8vw,5rem); line-height:1.03; font-weight:900; letter-spacing:-.055em; color:var(--brand-primary); }
.lead { color:var(--brand-muted); line-height:1.82; }
.hero-stats { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:1rem; margin-top:2.2rem; }
.metric-card { padding:1.2rem; }
.metric-value { display:block; font-size:1.85rem; font-weight:900; color:var(--brand-accent); }
.metric-label { color:var(--brand-muted); font-size:.9rem; }

.global-map-card { position:relative; min-height:430px; border-radius:36px; overflow:hidden; background:radial-gradient(circle at 50% 50%,rgba(255,134,26,.2),transparent 32%),linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.04)); border:1px solid rgba(255,255,255,.18); box-shadow:0 40px 100px rgba(0,0,0,.35); }
.global-map-card::before { content:""; position:absolute; inset:28px; border-radius:50%; border:1px solid rgba(255,255,255,.14); box-shadow:inset 0 0 90px rgba(255,255,255,.08); }
.orbit { position:absolute; inset:55px; border:1px dashed rgba(255,255,255,.2); border-radius:50%; }
.orbit:nth-child(2){inset:98px;opacity:.7}.orbit:nth-child(3){inset:140px;opacity:.55}
.global-pin { position:absolute; display:inline-flex; align-items:center; gap:.45rem; padding:.5rem .75rem; border-radius:999px; background:rgba(255,255,255,.95); color:var(--brand-primary); font-weight:900; font-size:.78rem; box-shadow:0 16px 34px rgba(0,0,0,.22); }
.global-pin::before { content:""; width:9px; height:9px; border-radius:50%; background:var(--brand-accent); }
.pin-1{left:12%;top:23%}.pin-2{right:11%;top:31%}.pin-3{left:27%;bottom:18%}.pin-4{right:23%;bottom:22%}

.section-heading { max-width:760px; margin-bottom:2.75rem; }
.info-card { height:100%; padding:1.6rem; transition:transform .25s ease,box-shadow .25s ease; }
.info-card:hover { transform:translateY(-7px); box-shadow:var(--shadow-card); }
.info-card .icon-badge { width:56px;height:56px;border-radius:18px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#fff0df,#fff9f2);color:var(--brand-accent);font-size:1.35rem;font-weight:900;margin-bottom:1rem; }
.pathway-link { color:var(--brand-primary); font-weight:900; text-decoration:none; }
.pathway-link:hover { color:var(--brand-accent); }

.international-band,.feature-band { background:linear-gradient(135deg,#031127 0%,#071a38 58%,#123d7a 100%); color:#fff; border-radius:36px; padding:3rem; box-shadow:var(--shadow-card); }
.international-band p,.international-band .lead,.feature-band p { color:rgba(255,255,255,.8)!important; }
.logo-cloud { display:grid; grid-template-columns:repeat(auto-fit,minmax(135px,1fr)); gap:1rem; }
.logo-cloud .mini-card { text-align:center; font-weight:900; color:var(--brand-primary); background:#fff; border-radius:18px; padding:1rem; }

.site-footer { position:relative; overflow:hidden; background:#031127; color:rgba(255,255,255,.84); margin-top:4rem; }
.site-footer::before { content:""; position:absolute; inset:0; background:radial-gradient(circle at 80% 10%,rgba(255,134,26,.16),transparent 28%); pointer-events:none; }
.site-footer .container { position:relative; z-index:1; }
.site-footer a { color:rgba(255,255,255,.75); }.site-footer a:hover{color:#ffbd82}
.footer-pill { display:inline-flex; padding:.42rem .75rem; border-radius:999px; background:rgba(255,134,26,.12); text-decoration:none; }

.form-shell { padding:2rem; }.form-control,.form-select{border-radius:14px;border:1px solid var(--brand-border);padding:.85rem 1rem;}.form-control:focus,.form-select:focus,.form-check-input:focus,.btn:focus,.btn:active:focus,.btn-link.nav-link:focus{border-color:rgba(255,134,26,.65);box-shadow:0 0 0 .25rem rgba(255,134,26,.14)}
.admissions-highlight{background:linear-gradient(180deg,#fff,#fff8f1);padding:1.5rem;height:100%}.check-list{list-style:none;padding-left:0;margin-bottom:0}.check-list li{position:relative;padding-left:1.7rem;margin-bottom:.9rem;color:var(--brand-muted)}.check-list li::before{content:"✓";position:absolute;left:0;top:0;color:var(--brand-accent);font-weight:900}

.page-hero{padding:4.8rem 0 2.25rem}.page-shell{padding-bottom:4.5rem}.content-panel{padding:2rem}.content-panel h2,.content-panel h3,.content-panel h4{color:var(--brand-primary);font-weight:800}.content-panel ul{padding-left:1.2rem}.content-panel li{margin-bottom:.75rem;color:var(--brand-muted)}
.highlight-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.mini-card{background:linear-gradient(180deg,#fff,#fff9f3);padding:1.4rem;height:100%}
.comparison-table{overflow:hidden;border-radius:22px;border:1px solid var(--brand-border);box-shadow:var(--shadow-soft)}.comparison-table table{margin-bottom:0}.comparison-table thead th{background:var(--brand-primary);color:#fff;border-bottom:0}.comparison-table td,.comparison-table th{padding:1rem;vertical-align:middle}
.cta-strip{background:linear-gradient(135deg,#fff3e6,#fff);border:1px solid rgba(255,134,26,.2);border-radius:30px;padding:2rem;box-shadow:var(--shadow-soft)}.accordion-item{border:1px solid var(--brand-border)}.accordion-button:not(.collapsed){background:var(--brand-accent-light);color:var(--brand-primary)}.meta-note{color:var(--brand-muted);font-size:.92rem}
.article-card h3{line-height:1.35}.category-tag{display:inline-flex;margin-bottom:.75rem;color:#b45100;background:var(--brand-accent-light);border-radius:999px;padding:.25rem .65rem;font-size:.75rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}

@media (max-width:991.98px){.navbar-collapse{margin-top:1rem;background:rgba(255,255,255,.98);border:1px solid var(--brand-border);border-radius:22px;padding:1rem;box-shadow:var(--shadow-soft)}.hero-shell{padding-top:3.5rem}}
@media (max-width:767.98px){.section-space{padding:3.5rem 0}.display-premium{font-size:2.45rem}.page-hero{padding-top:3.3rem}.international-band,.feature-band{padding:2rem}}
