
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --navy: #0D1B2E;
  --navy-mid: #192D4A;
  --cream: #F8F6F1;
  --cream-dark: #EDE9DF;
  --white: #FFFFFF;
  --gold: #B49A62;
  --gold-light: #CDB98A;
  --black: #080808;
  --text: #1A1919;
  --text-mid: #4A4747;
  --text-light: #8A8585;
  --border: #DDD9D0;
  --font-serif: 'Cormorant Garamond', Georgia, serif;
  --font-sans: 'Outfit', sans-serif;
}

html { scroll-behavior: smooth; }

body {
  font-family: var(--font-sans);
  font-weight: 300;
  color: var(--text);
  background: var(--cream);
  overflow-x: hidden;
}

a { text-decoration: none; color: inherit; }
img { max-width: 100%; display: block; }
button { cursor: pointer; border: none; background: none; font-family: var(--font-sans); -webkit-tap-highlight-color: transparent; }
@media (max-width: 768px) { button, .nav-link, a { min-height: 44px; display: inline-flex; align-items: center; } nav .nav-logo { min-height: unset; display: block; } }

/* ── NAVIGATION ── */
nav {
  position: fixed; top: 0; left: 0; right: 0; z-index: 100;
  display: flex; align-items: center; justify-content: space-between;
  padding: 0 48px;
  height: 72px;
  background: transparent;
  transition: background 0.4s, box-shadow 0.4s;
}
nav.scrolled {
  background: rgba(255,255,255,0.97);
  box-shadow: 0 1px 0 var(--border);
}
nav.scrolled .nav-logo { color: var(--navy); }
nav.scrolled .nav-link { color: var(--text); }
nav.scrolled .nav-link:hover { color: var(--navy); }
nav.scrolled .nav-cta { border-color: var(--navy); color: var(--navy); }
nav.scrolled .nav-cta:hover { background: var(--navy); color: var(--white); }

.nav-logo {
  font-family: var(--font-serif);
  font-size: 22px;
  font-weight: 600;
  letter-spacing: 0.08em;
  color: var(--white);
  cursor: pointer;
  transition: color 0.3s;
}
.nav-links {
  display: flex; align-items: center; gap: 36px;
  list-style: none;
}
.nav-link {
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.88);
  cursor: pointer;
  transition: color 0.25s;
  padding: 4px 0;
  position: relative;
}
.nav-link::after {
  content: '';
  position: absolute; bottom: 0; left: 0;
  width: 0; height: 1px;
  background: var(--gold);
  transition: width 0.3s;
}
.nav-link:hover::after { width: 100%; }
.nav-link:hover { color: var(--white); }
.nav-cta {
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--white);
  border: 1px solid rgba(255,255,255,0.55);
  padding: 10px 22px;
  transition: all 0.28s;
}
.nav-cta:hover { background: var(--white); color: var(--navy); }

/* ── PAGES ── */
.page { display: none; }
.page.active { display: block; }

/* ── HERO ── */
.hero {
  position: relative;
  height: 100vh; min-height: 680px;
  overflow: hidden;
  display: flex; align-items: center; justify-content: center;
}
.hero-bg {
  position: absolute; inset: 0;
  background-size: cover; background-position: center;
  transform: scale(1.04);
  animation: heroZoom 14s ease-out forwards;
}
@keyframes heroZoom { to { transform: scale(1); } }
.hero-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(to bottom, rgba(8,16,28,0.52) 0%, rgba(8,16,28,0.35) 50%, rgba(8,16,28,0.62) 100%);
}
.hero-content {
  position: relative; z-index: 2;
  text-align: center;
  padding: 0 24px;
  animation: heroFade 1.2s ease-out 0.3s both;
}
@keyframes heroFade { from { opacity:0; transform: translateY(24px); } to { opacity:1; transform: translateY(0); } }
.hero-eyebrow {
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--gold-light);
  margin-bottom: 20px;
}
.hero-title {
  font-family: var(--font-serif);
  font-weight: 400;
  font-size: clamp(58px, 9vw, 110px);
  line-height: 0.95;
  color: var(--white);
  margin-bottom: 24px;
  letter-spacing: -0.01em;
}
.hero-title em {
  font-style: italic;
  color: var(--gold-light);
}
.hero-sub {
  font-size: 16px;
  font-weight: 300;
  color: rgba(255,255,255,0.8);
  max-width: 520px; margin: 0 auto 42px;
  line-height: 1.7;
  letter-spacing: 0.01em;
}
.hero-buttons { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }
.btn-primary {
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  padding: 16px 36px;
  background: var(--white);
  color: var(--navy);
  transition: all 0.28s;
}
.btn-primary:hover { background: var(--gold); color: var(--white); }
.btn-outline {
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  padding: 16px 36px;
  border: 1px solid rgba(255,255,255,0.5);
  color: var(--white);
  transition: all 0.28s;
}
.btn-outline:hover { background: rgba(255,255,255,0.12); border-color: var(--white); }
.hero-scroll {
  position: absolute; bottom: 36px; left: 50%;
  transform: translateX(-50%);
  display: flex; flex-direction: column; align-items: center; gap: 8px;
  color: rgba(255,255,255,0.5);
  font-size: 10px; letter-spacing: 0.18em; text-transform: uppercase;
  animation: bounce 2.4s ease-in-out infinite;
}
@keyframes bounce { 0%,100%{transform:translateX(-50%) translateY(0)} 50%{transform:translateX(-50%) translateY(6px)} }
.hero-scroll-line {
  width: 1px; height: 44px;
  background: linear-gradient(to bottom, rgba(255,255,255,0.5), transparent);
}

/* ── STATS BAR ── */
.stats-bar {
  background: var(--navy);
  display: flex; justify-content: center;
  flex-wrap: wrap;
}
.stat-item {
  padding: 36px 56px;
  text-align: center;
  border-right: 1px solid rgba(255,255,255,0.08);
  flex: 1; min-width: 180px;
}
.stat-item:last-child { border-right: none; }
.stat-number {
  font-family: var(--font-serif);
  font-size: 44px;
  font-weight: 300;
  color: var(--white);
  line-height: 1;
  margin-bottom: 6px;
}
.stat-label {
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gold);
}

/* ── SECTION SHARED ── */
section { padding: 110px 48px; }
.section-cream { background: var(--cream); }
.section-white { background: var(--white); }
.section-navy { background: var(--navy); color: var(--white); }
.section-dark { background: #0A1422; color: var(--white); }

.eyebrow {
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 18px;
}
.eyebrow-light {
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--gold-light);
  margin-bottom: 18px;
}

h2.serif {
  font-family: var(--font-serif);
  font-weight: 400;
  font-size: clamp(38px, 5vw, 64px);
  line-height: 1.08;
  letter-spacing: -0.01em;
}
h2.serif em { font-style: italic; color: var(--gold); }

h3.serif {
  font-family: var(--font-serif);
  font-weight: 400;
  font-size: clamp(28px, 3.5vw, 44px);
  line-height: 1.15;
}

.body-lg {
  font-size: 17px;
  font-weight: 300;
  line-height: 1.75;
  color: var(--text-mid);
  max-width: 600px;
}
.body-md {
  font-size: 15px;
  font-weight: 300;
  line-height: 1.8;
  color: var(--text-mid);
}

/* ── ABOUT SPLIT ── */
.about-split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  max-width: 1200px; margin: 0 auto;
  align-items: start;
}
.about-heading {
  font-family: var(--font-serif);
  font-size: clamp(40px, 5vw, 68px);
  font-weight: 400;
  line-height: 1.05;
  letter-spacing: -0.01em;
}
.about-rule { width: 48px; height: 1px; background: var(--gold); margin: 28px 0; }
.logo-strip {
  margin-top: 60px; padding-top: 40px;
  border-top: 1px solid var(--border);
}
.logo-strip-label {
  font-size: 10px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--text-light);
  margin-bottom: 24px;
}
.logo-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  align-items: center;
}
.logo-pill {
  padding: 8px 16px;
  border: 1px solid var(--border);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.08em;
  color: var(--text-mid);
  margin: 4px;
  text-transform: uppercase;
  white-space: nowrap;
}

/* ── WHAT WE DO ── */
.what-we-do-inner {
  max-width: 760px; margin: 0 auto;
  text-align: center;
}
.service-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2px;
  margin-top: 70px;
}
.service-card {
  background: var(--white);
  padding: 48px 36px;
  border-top: 3px solid transparent;
  transition: border-color 0.3s, transform 0.3s;
  cursor: pointer;
}
.service-card:hover { border-color: var(--gold); transform: translateY(-4px); }
.service-card-num {
  font-family: var(--font-serif);
  font-size: 48px;
  font-weight: 300;
  color: var(--cream-dark);
  line-height: 1;
  margin-bottom: 16px;
}
.service-card-title {
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  margin-bottom: 14px;
  color: var(--navy);
}
.service-card-desc {
  font-size: 14px;
  font-weight: 300;
  line-height: 1.75;
  color: var(--text-mid);
}
.service-card-link {
  display: inline-block;
  margin-top: 20px;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gold);
  border-bottom: 1px solid var(--gold);
  padding-bottom: 2px;
}

/* ── PULL QUOTE ── */
.pull-quote {
  max-width: 900px; margin: 0 auto;
  position: relative;
  padding: 0 80px;
}
.pull-quote::before {
  content: '\201C';
  position: absolute; left: 0; top: -20px;
  font-family: var(--font-serif);
  font-size: 140px;
  line-height: 1;
  color: var(--cream-dark);
}
.quote-text {
  font-family: var(--font-serif);
  font-size: clamp(26px, 3.5vw, 40px);
  font-weight: 400;
  font-style: italic;
  line-height: 1.4;
  color: var(--text);
  margin-bottom: 28px;
}
.quote-attr {
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--text-light);
}
.quote-attr span { color: var(--gold); }

/* ── TRUSTED GLOBAL (VIDEO BG) ── */
.trusted-section {
  position: relative;
  min-height: 580px;
  overflow: hidden;
  display: flex; align-items: center;
}
.trusted-video-wrap {
  position: absolute; inset: 0;
  overflow: hidden;
}
.trusted-video-wrap iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 177.78vh;
  height: 100vh;
  min-width: 100%;
  min-height: 56.25vw;
  pointer-events: none;
  border: none;
}
.trusted-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(8,16,28,0.62) 0%, rgba(13,27,46,0.48) 100%);
}
.trusted-content {
  position: relative; z-index: 2;
  padding: 100px 80px;
  max-width: 680px;
}
.trusted-rule {
  width: 40px; height: 1px;
  background: var(--gold);
  margin: 24px 0 36px;
}
.trusted-list {
  list-style: none;
  margin-top: 36px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.trusted-list li {
  display: flex; align-items: center; gap: 12px;
  font-size: 14px;
  font-weight: 300;
  color: rgba(255,255,255,0.78);
  letter-spacing: 0.02em;
}
.trusted-list li::before {
  content: '';
  width: 6px; height: 6px;
  background: var(--gold);
  flex-shrink: 0;
}

/* ── PARTNERS SPLIT (image + accordion) ── */
.partners-split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 620px;
}
.partners-img {
  background-size: cover;
  background-position: center;
  position: relative;
  min-height: 500px;
}
.partners-img-label {
  position: absolute; bottom: 28px; right: 28px;
  background: rgba(255,255,255,0.92);
  padding: 14px 22px;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: var(--navy);
}
.partners-panel {
  padding: 80px 72px;
  background: var(--white);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/* ── ACCORDION ── */
.accordion { border-top: 1px solid var(--border); }
.accordion-item { border-bottom: 1px solid var(--border); }
.accordion-btn {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 22px 0;
  font-family: var(--font-sans);
  font-size: 15px;
  font-weight: 400;
  color: var(--text);
  background: none;
  cursor: pointer;
  text-align: left;
  transition: color 0.2s;
}
.accordion-btn:hover { color: var(--navy); }
.accordion-icon {
  width: 22px; height: 22px;
  border: 1px solid var(--border);
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
  transition: all 0.28s;
  font-size: 16px;
  line-height: 1;
  color: var(--text-light);
}
.accordion-item.open .accordion-icon {
  background: var(--navy);
  border-color: var(--navy);
  color: var(--white);
  transform: rotate(45deg);
}
.accordion-body {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.38s ease;
}
.accordion-body-inner {
  padding: 0 0 24px;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.8;
  color: var(--text-mid);
}

/* ── PROGRAMS ── */
.programs-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  background: var(--border);
  margin-top: 70px;
}
.program-card {
  background: var(--white);
  padding: 48px 36px;
  position: relative;
  overflow: hidden;
}
.program-card::after {
  content: '';
  position: absolute; bottom: 0; left: 0; right: 0;
  height: 3px;
  background: var(--gold);
  transform: scaleX(0);
  transition: transform 0.3s;
  transform-origin: left;
}
.program-card:hover::after { transform: scaleX(1); }
.program-icon {
  font-size: 28px;
  margin-bottom: 20px;
}
.program-title {
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 12px;
  color: var(--navy);
}
.program-desc {
  font-size: 13px;
  font-weight: 300;
  line-height: 1.75;
  color: var(--text-mid);
}

/* ── TRACK RECORD ── */
.track-split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 100px;
  align-items: center;
  max-width: 1160px; margin: 0 auto;
}
.track-stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
}
.track-stat-item {}
.track-stat-num {
  font-family: var(--font-serif);
  font-size: 52px;
  font-weight: 300;
  color: var(--navy);
  line-height: 1;
  margin-bottom: 8px;
}
.track-stat-label {
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--text-light);
}
.track-note {
  margin-top: 36px;
  padding-top: 28px;
  border-top: 1px solid var(--border);
  font-size: 14px;
  font-weight: 400;
  color: var(--navy);
}

/* ── HOW WE HELP ── */
.help-split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: stretch;
  max-width: 1200px; margin: 0 auto;
}
.help-image {
  position: relative;
  background-size: cover;
  background-position: center top;
  min-height: 520px;
}
.help-image-wrap {
  position: relative;
  display: flex;
  flex-direction: column;
  align-self: stretch;
  min-height: 520px;
  overflow: hidden;
}
.daryl-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
  flex: 1;
}
.help-image-caption {
  background: rgba(255,255,255,0.93);
  padding: 14px 20px;
  font-size: 12px;
  font-weight: 400;
  color: var(--text-mid);
  text-align: center;
  letter-spacing: 0.02em;
  flex-shrink: 0;
}

/* ── SCHOOL PARTNERSHIPS CTA ── */
.partner-cta {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
  max-width: 1100px; margin: 0 auto;
}
.partner-cta-btns { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 36px; }
.btn-white {
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  padding: 15px 32px;
  background: var(--white);
  color: var(--navy);
  transition: all 0.28s;
}
.btn-white:hover { background: var(--gold); color: var(--white); }
.btn-ghost {
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  padding: 15px 32px;
  border: 1px solid rgba(255,255,255,0.35);
  color: rgba(255,255,255,0.8);
  transition: all 0.28s;
}
.btn-ghost:hover { border-color: rgba(255,255,255,0.8); color: var(--white); }

/* ── INTERIOR PAGE HERO ── */
.page-hero {
  height: 70vh; min-height: 500px;
  position: relative;
  display: flex; align-items: flex-end;
  overflow: hidden;
}
.page-hero-bg {
  position: absolute; inset: 0;
  background-size: cover;
  background-position: center;
}
.page-hero-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(to top, rgba(8,16,28,0.88) 30%, rgba(8,16,28,0.3) 100%);
}
.page-hero-content {
  position: relative; z-index: 2;
  padding: 72px 80px;
  max-width: 900px;
}
.page-hero-tag {
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--gold-light);
  margin-bottom: 16px;
}
.page-hero-title {
  font-family: var(--font-serif);
  font-size: clamp(44px, 6vw, 82px);
  font-weight: 400;
  color: var(--white);
  line-height: 1;
  letter-spacing: -0.01em;
  margin-bottom: 18px;
}
.page-hero-title em { font-style: italic; color: var(--gold-light); }
.page-hero-sub {
  font-size: 16px;
  font-weight: 300;
  color: rgba(255,255,255,0.78);
  max-width: 540px;
  line-height: 1.7;
}

/* ── PROCESS STEPS ── */
.steps-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2px;
  background: var(--border);
  margin-top: 70px;
}
.step-card {
  background: var(--cream);
  padding: 52px 44px;
}
.step-num {
  font-family: var(--font-serif);
  font-size: 56px;
  font-weight: 300;
  color: var(--border);
  line-height: 1;
  margin-bottom: 20px;
}
.step-title {
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: var(--navy);
  margin-bottom: 12px;
}
.step-desc {
  font-size: 13px;
  font-weight: 300;
  line-height: 1.78;
  color: var(--text-mid);
}

/* ── ICAP FEATURE ── */
.icap-section {
  position: relative;
  overflow: hidden;
}
.icap-inner {
  max-width: 1200px; margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  min-height: 580px;
}
.icap-content {
  padding: 100px 80px 100px 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.icap-badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: var(--navy);
  color: var(--gold-light);
  padding: 8px 18px;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  margin-bottom: 28px;
}
.icap-image {
  position: relative;
  background-size: cover;
  background-position: center;
  min-height: 480px;
}
.icap-uni-list {
  margin-top: 36px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.icap-uni-item {
  display: flex;
  align-items: center;
  gap: 14px;
  font-size: 14px;
  font-weight: 400;
  color: var(--text);
  padding: 14px 18px;
  border: 1px solid var(--border);
  transition: border-color 0.25s, background 0.25s;
}
.icap-uni-item:hover { border-color: var(--navy); background: var(--white); }
.icap-uni-dot {
  width: 8px; height: 8px;
  background: var(--gold);
  flex-shrink: 0;
}
.icap-uni-location {
  font-size: 11px;
  color: var(--text-light);
  margin-left: auto;
}

/* ── LATEST NEWS ── */
.news-feature {
  position: relative;
  border-radius: 6px;
  overflow: hidden;
  min-height: 340px;
  display: flex;
  align-items: stretch;
  text-align: left;
  cursor: pointer;
}
.news-feature-bg {
  position: absolute; inset: 0;
  background-size: cover;
  background-position: center;
}
.news-feature-fade {
  position: absolute; inset: 0;
  background: linear-gradient(90deg, var(--navy) 0%, rgba(13,27,46,0.96) 34%, rgba(13,27,46,0.55) 58%, rgba(13,27,46,0) 82%);
}
.news-feature-content {
  position: relative;
  width: 58%;
  padding: 48px 44px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.news-tag {
  display: inline-block;
  font-size: 10px; font-weight: 600;
  letter-spacing: 0.16em; text-transform: uppercase;
  color: var(--navy);
  background: var(--gold);
  padding: 5px 12px;
  border-radius: 3px;
}
.news-read-link {
  font-size: 12px; font-weight: 500;
  letter-spacing: 0.12em; text-transform: uppercase;
  color: var(--gold-light);
}
.news-feature:hover .news-read-link { color: var(--white); }
.news-article-split {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 56px;
  align-items: start;
  max-width: 1060px;
  margin: 0 auto;
}

/* ── PRICING ── */
.pricing-section {
  background: var(--white);
  padding: 110px 48px;
}
.pricing-inner {
  max-width: 1100px; margin: 0 auto;
}
.pricing-toggle {
  display: flex;
  align-items: center;
  gap: 0;
  background: var(--cream);
  border: 1px solid var(--border);
  width: fit-content;
  margin: 40px auto;
}
.toggle-opt {
  padding: 11px 28px;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--text-light);
  cursor: pointer;
  transition: all 0.25s;
}
.toggle-opt.active {
  background: var(--navy);
  color: var(--white);
}
.pricing-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2px;
  background: var(--border);
  margin-top: 56px;
}
.pricing-card {
  background: var(--cream);
  padding: 56px 44px;
  position: relative;
}
.pricing-card.featured {
  background: var(--navy);
  color: var(--white);
}
.pricing-card.featured .plan-desc,
.pricing-card.featured .feature-item { color: rgba(255,255,255,0.7); }
.pricing-card.featured .feature-item::before { background: var(--gold-light); }
.pricing-card.featured .plan-divider { border-color: rgba(255,255,255,0.15); }
.featured-badge {
  position: absolute; top: 28px; right: 28px;
  background: var(--gold);
  color: var(--white);
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  padding: 5px 12px;
}
.plan-name {
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 18px;
}
.plan-price {
  font-family: var(--font-serif);
  font-size: 58px;
  font-weight: 300;
  line-height: 1;
  margin-bottom: 4px;
}
.plan-price-note {
  font-size: 12px;
  font-weight: 300;
  color: var(--text-light);
  margin-bottom: 18px;
}
.pricing-card.featured .plan-price-note { color: rgba(255,255,255,0.55); }
.plan-students {
  font-size: 13px;
  font-weight: 400;
  color: var(--navy);
  margin-bottom: 24px;
  padding: 10px 14px;
  background: var(--cream-dark);
}
.pricing-card.featured .plan-students {
  background: rgba(255,255,255,0.1);
  color: rgba(255,255,255,0.9);
}
.plan-desc {
  font-size: 13px;
  font-weight: 300;
  line-height: 1.7;
  color: var(--text-mid);
  margin-bottom: 28px;
}
.plan-divider {
  border: none;
  border-top: 1px solid var(--border);
  margin-bottom: 28px;
}
.feature-list { list-style: none; display: flex; flex-direction: column; gap: 11px; }
.feature-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 13px;
  font-weight: 300;
  color: var(--text-mid);
  line-height: 1.55;
}
.feature-item::before {
  content: '';
  width: 5px; height: 5px;
  background: var(--gold);
  margin-top: 6px;
  flex-shrink: 0;
}
.plan-cta {
  display: block;
  text-align: center;
  margin-top: 36px;
  padding: 14px;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  border: 1px solid var(--navy);
  color: var(--navy);
  transition: all 0.28s;
}
.plan-cta:hover { background: var(--navy); color: var(--white); }
.pricing-card.featured .plan-cta {
  background: var(--gold);
  border-color: var(--gold);
  color: var(--white);
}
.pricing-card.featured .plan-cta:hover { background: var(--gold-light); }

/* ── CONTACT STRIP ── */
.contact-strip {
  background: var(--cream-dark);
  padding: 80px 48px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  flex-wrap: wrap;
}
.contact-strip-text h3 {
  font-family: var(--font-serif);
  font-size: 36px;
  font-weight: 400;
  color: var(--navy);
  margin-bottom: 8px;
}
.contact-strip-text p {
  font-size: 14px;
  font-weight: 300;
  color: var(--text-mid);
}
.btn-navy {
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  padding: 16px 36px;
  background: var(--navy);
  color: var(--white);
  transition: background 0.28s;
  white-space: nowrap;
}
.btn-navy:hover { background: var(--navy-mid); }

/* ── FOOTER ── */
footer {
  background: var(--black);
  color: var(--white);
  padding: 72px 48px 40px;
}
.footer-top {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  gap: 60px;
  padding-bottom: 60px;
  border-bottom: 1px solid rgba(255,255,255,0.08);
  margin-bottom: 40px;
}
.footer-brand-name {
  font-family: var(--font-serif);
  font-size: 24px;
  font-weight: 400;
  letter-spacing: 0.04em;
  margin-bottom: 16px;
}
.footer-tagline {
  font-size: 13px;
  font-weight: 300;
  color: rgba(255,255,255,0.45);
  line-height: 1.7;
  max-width: 280px;
  margin-bottom: 28px;
}
.footer-col-title {
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 20px;
}
.footer-links { list-style: none; display: flex; flex-direction: column; gap: 10px; }
.footer-links li a, .footer-links li button {
  font-size: 13px;
  font-weight: 300;
  color: rgba(255,255,255,0.55);
  transition: color 0.22s;
  background: none; border: none;
  cursor: pointer; font-family: var(--font-sans); padding: 0; text-align: left;
}
.footer-links li a:hover, .footer-links li button:hover { color: var(--white); }
.footer-bottom {
  display: flex; justify-content: space-between;
  align-items: center; flex-wrap: wrap; gap: 12px;
}
.footer-copy {
  font-size: 12px;
  color: rgba(255,255,255,0.3);
  letter-spacing: 0.04em;
}
.footer-gold-rule {
  width: 40px; height: 1px;
  background: var(--gold);
  margin-bottom: 20px;
}

/* ── FADE IN ON SCROLL ── */
.fade-in {
  opacity: 0;
  transform: translateY(32px);
  transition: opacity 0.7s ease, transform 0.7s ease;
}
.fade-in.visible { opacity: 1; transform: translateY(0); }
.fade-in-delay-1 { transition-delay: 0.12s; }
.fade-in-delay-2 { transition-delay: 0.24s; }
.fade-in-delay-3 { transition-delay: 0.36s; }

/* ── MOBILE NAV ── */
.nav-hamburger {
  display: none;
  flex-direction: column;
  gap: 5px;
  cursor: pointer;
  padding: 4px;
}
.nav-hamburger span {
  display: block;
  width: 24px; height: 1.5px;
  background: var(--white);
  transition: background 0.3s;
}
nav.scrolled .nav-hamburger span { background: var(--navy); }
.mobile-menu {
  display: none;
  position: fixed; inset: 0;
  background: var(--navy);
  z-index: 200;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 32px;
}
.mobile-menu.open { display: flex; }
.mobile-nav-link {
  font-family: var(--font-serif);
  font-size: 36px;
  font-weight: 400;
  color: var(--white);
  cursor: pointer;
  transition: color 0.22s;
}
.mobile-nav-link:hover { color: var(--gold); }
.mobile-close {
  position: absolute; top: 28px; right: 36px;
  font-size: 32px; color: var(--white);
  cursor: pointer; background: none; border: none;
  font-family: var(--font-sans);
}

/* ── RESPONSIVE ── */

/* Tablet + small desktop */
@media (max-width: 1000px) {
  nav { padding: 0 28px; }
  .nav-links { display: none; }
  .nav-hamburger { display: flex; }
  section { padding: 80px 28px; }
  .about-split { grid-template-columns: 1fr; gap: 48px; }
  .service-cards { grid-template-columns: 1fr; }
  .programs-grid { grid-template-columns: repeat(2,1fr); }
  .partners-split { grid-template-columns: 1fr; }
  .track-split { grid-template-columns: 1fr; gap: 60px; }
  .help-split { grid-template-columns: 1fr; }
  .help-split > div:has(img) { max-height: 480px; }
  .partner-cta { grid-template-columns: 1fr; gap: 40px; }
  .icap-inner { grid-template-columns: 1fr; }
  .icap-content { padding: 60px 0 40px; }
  .news-feature-content { width: 100%; padding: 36px 24px; }
  .news-feature-fade { background: rgba(13,27,46,0.88); }
  .news-article-split { grid-template-columns: 1fr; gap: 40px; }
  .pricing-cards { grid-template-columns: 1fr; }
  .footer-top { grid-template-columns: 1fr 1fr; }
  .trusted-content { padding: 80px 28px; }
  .page-hero-content { padding: 60px 28px; }
  .pull-quote { padding: 0 20px; }
  .pull-quote::before { font-size: 80px; left: -10px; }
  .contact-strip { flex-direction: column; text-align: center; }
  .partner-cta-btns { justify-content: center; }
  .partners-panel { padding: 60px 36px; }
  .stats-bar { flex-direction: row; }
  .stat-item { padding: 28px 24px; }
  .icap-image { min-height: 320px; }
}

@media (max-width: 600px) {
  .stats-bar { flex-direction: column; }
  .stat-item { border-right: none; border-bottom: 1px solid rgba(255,255,255,0.08); }
  .programs-grid { grid-template-columns: 1fr; }
  .footer-top { grid-template-columns: 1fr; gap: 36px; }
  .hero-title { font-size: 52px; }
  section { padding: 70px 20px; }
  /* Resource page mobile optimization */
  #page-resources section { padding: 50px 20px !important; }
  #page-resources [style*="grid-template-columns:1fr 1fr"],
  #page-resources [style*="grid-template-columns: 1fr 1fr"] { grid-template-columns: 1fr !important; gap: 32px !important; }
  #page-resources [style*="grid-template-columns:repeat(3,1fr)"],
  #page-resources [style*="grid-template-columns: repeat(3,1fr)"] { grid-template-columns: 1fr !important; }
  #page-resources [style*="gap:80px"] { gap: 40px !important; }
  #page-resources .page-hero-title { font-size: 36px; }
}

/* ── MOBILE — 480px and below ── */
@media (max-width: 480px) {
  nav { padding: 0 20px; height: 64px; }
  .hero-title { font-size: 42px; line-height: 1; }
  .hero-sub { font-size: 14px; }
  .hero-buttons { flex-direction: column; align-items: center; }
  .btn-primary, .btn-outline { width: 100%; max-width: 280px; text-align: center; display: block; }
  .stat-number { font-size: 34px; }
  section { padding: 60px 16px; }
  h2.serif { font-size: 32px; }
  .page-hero-content { padding: 44px 20px; }
  .page-hero-title { font-size: 38px; }
  .page-hero-sub { font-size: 14px; }
  .pricing-card { padding: 36px 24px; }
  .plan-price { font-size: 46px; }
  .pull-quote { padding: 0 8px; }
  .pull-quote::before { display: none; }
  .contact-strip { padding: 48px 20px; }
  .footer-top { padding-bottom: 40px; }
  .mobile-nav-link { font-size: 28px; }
  .logo-slide-item { padding: 0 28px; height: 72px; }
  .logo-slide-item img { height: 32px; }
  .daryl-img { min-height: 300px; object-position: center top; }
}

/* ── ALL inline style grid overrides for mobile ── */
@media (max-width: 768px) {
  /* Athletes page pathway nav */
  [style*="grid-template-columns:repeat(3,1fr)"][style*="background:var(--navy)"] {
    grid-template-columns: 1fr !important;
  }
  /* Problem/Solution split on schools page */
  [style*="grid-template-columns:1fr 1fr"][style*="min-height:520px"] {
    grid-template-columns: 1fr !important;
  }
  /* Howarth & Mikhil testimonial splits */
  [style*="grid-template-columns:1fr 1fr"][style*="min-height:480px"],
  [style*="grid-template-columns:1fr 1fr"][style*="min-height:560px"] {
    grid-template-columns: 1fr !important;
  }
  /* ECP section */
  [style*="gap:100px;align-items:start"] {
    grid-template-columns: 1fr !important;
    gap: 48px !important;
  }
  /* 4-col player testimonials */
  [style*="grid-template-columns:repeat(4,1fr)"] {
    grid-template-columns: repeat(2,1fr) !important;
  }
  /* 3-col testimonials row 2 */
  [style*="grid-template-columns:repeat(3,1fr)"][style*="max-width:960px"] {
    grid-template-columns: repeat(2,1fr) !important;
  }
  /* Inline 2-col pledge maths */
  [style*="grid-template-columns:1fr 1fr"][style*="margin-bottom:36px"],
  [style*="grid-template-columns:1fr 1fr"][style*="margin-bottom:48px"],
  [style*="grid-template-columns:1fr 1fr"][style*="margin-bottom:64px"] {
    grid-template-columns: 1fr !important;
  }
  /* Pledge steps 4-col */
  [style*="grid-template-columns:repeat(4,1fr)"] {
    grid-template-columns: repeat(2,1fr) !important;
  }
  /* Trusted content padding */
  .trusted-content { padding: 60px 24px !important; max-width: 100% !important; }
  /* ICAP dark header */
  [style*="padding:80px 80px 70px"] {
    padding: 60px 24px !important;
  }
  [style*="padding:80px 72px"] {
    padding: 52px 24px !important;
  }
  /* Footer nav strip */
  [style*="padding:40px 48px;border-right"] {
    border-right: none !important;
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
  }
  /* Testimonial grid on athletes */
  [style*="display:grid;grid-template-columns:1fr 1fr;gap:100px"] {
    grid-template-columns: 1fr !important;
    gap: 40px !important;
  }
}

@media (max-width: 480px) {
  /* Player cards 1 col on very small screens */
  [style*="grid-template-columns:repeat(4,1fr)"],
  [style*="grid-template-columns:repeat(3,1fr)"][style*="max-width:960px"] {
    grid-template-columns: 1fr !important;
  }
  /* Stats mini */
  [style*="justify-content:center;gap:60px"] {
    gap: 28px !important;
  }
  /* ECP timeline left padding */
  [style*="padding-left:32px;border-left"] {
    padding-left: 20px !important;
  }
  /* Pricing footnote */
  [style*="padding:28px 36px;background:var(--cream);border"] {
    padding: 20px !important;
    flex-direction: column !important;
  }
  /* School/club intro sections */
  [style*="padding:80px 72px;display:flex;flex-direction:column"] {
    padding: 44px 24px !important;
  }

  /* ── College placement 3-col experience cards ── */
  div[style*="grid-template-columns:repeat(3,1fr)"][style*="gap:2px"][style*="background:rgba(255,255,255,0.06)"] {
    grid-template-columns: 1fr !important;
  }

  /* ── Pricing plan cards single col ── */
  div[style*="grid-template-columns:1fr 1fr"][style*="gap:2px"][style*="background:var(--border)"] {
    grid-template-columns: 1fr !important;
  }
  div[style*="padding:56px 48px"] { padding: 36px 20px !important; }

  /* ── New page section padding ── */
  section[style*="padding:100px 48px"] { padding: 56px 16px !important; }
  section[style*="padding:80px 48px"] { padding: 48px 16px !important; }

  /* ── Pricing footnote ── */
  div[style*="padding:24px 32px;display:flex;gap:14px"] { padding: 20px 16px !important; flex-direction: column !important; }

  /* ── Daniel agent page ── */
  .agent-name { font-size: 48px !important; }
  .hero-badges { padding: 20px 0 36px !important; gap: 8px !important; }
  .badge { font-size: 9px !important; padding: 5px 10px !important; }

  /* ── CTA buttons on new pages ── */
  div[style*="display:flex;gap:14px;justify-content:center;flex-wrap:wrap"] {
    flex-direction: column !important;
    align-items: center !important;
  }
  div[style*="display:flex;gap:14px;justify-content:center;flex-wrap:wrap"] a,
  div[style*="display:flex;gap:14px;justify-content:center;flex-wrap:wrap"] button {
    width: 100% !important;
    max-width: 280px !important;
    justify-content: center !important;
  }
}

/* ── LOGO MARQUEE ── */
.logo-marquee-section {
  background: #FFFFFF;
  padding: 44px 0 0;
  overflow: hidden;
  border-top: 1px solid #E8E4DC;
  border-bottom: 1px solid #E8E4DC;
}
.logo-marquee-label {
  text-align: center;
  padding: 0 20px 22px;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: #8A8585;
}
.logo-marquee-wrapper {
  overflow: hidden;
  position: relative;
  padding: 0;
  background: #FFFFFF;
  border-top: 1px solid #ECECEC;
}
.logo-marquee-wrapper::before,
.logo-marquee-wrapper::after {
  content: '';
  position: absolute;
  top: 0; bottom: 0;
  width: 140px;
  z-index: 2;
  pointer-events: none;
}
.logo-marquee-wrapper::before {
  left: 0;
  background: linear-gradient(to right, #FFFFFF 30%, transparent);
}
.logo-marquee-wrapper::after {
  right: 0;
  background: linear-gradient(to left, #FFFFFF 30%, transparent);
}
.logo-marquee-track {
  display: flex;
  gap: 0;
  width: max-content;
  animation: marqueeScroll 52s linear infinite;
}
.logo-marquee-track:hover { animation-play-state: paused; }
@keyframes marqueeScroll {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}
.logo-slide-item {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 56px;
  height: 96px;
  flex-shrink: 0;
  border-right: 1px solid #ECECEC;
  background: #FFFFFF;
}
.logo-slide-item img {
  height: 46px;
  width: auto;
  max-width: 190px;
  object-fit: contain;
  opacity: 1;
  transition: opacity 0.25s;
}
.logo-slide-item:hover img { opacity: 0.75; }




/* ══════════════════════════════════════
   GRID UTILITY CLASSES
══════════════════════════════════════ */
.g-2col-100 { display:grid; grid-template-columns:1fr 1fr; gap:100px; align-items:start; }
.g-2col-80  { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:start; }
.g-2col-border { display:grid; grid-template-columns:1fr 1fr; gap:2px; background:var(--border); }
.g-3col-border { display:grid; grid-template-columns:repeat(3,1fr); gap:2px; background:var(--border); }
.g-4col-border { display:grid; grid-template-columns:repeat(4,1fr); gap:2px; background:var(--border); }
.g-3col-navy   { display:grid; grid-template-columns:repeat(3,1fr); background:var(--navy); }
.g-split-full  { display:grid; grid-template-columns:1fr 1fr; min-height:480px; }
.g-quote-split { display:grid; grid-template-columns:auto 1fr; gap:52px; align-items:start; }
.mw-1280 { max-width:1280px; margin:0 auto; }
.mw-1200 { max-width:1200px; margin:0 auto; }
.mw-1100 { max-width:1100px; margin:0 auto; }
.mw-1000 { max-width:1000px; margin:0 auto; }
.mw-960  { max-width:960px;  margin:0 auto; }
.mb-2  { margin-bottom:2px;  }
.mb-36 { margin-bottom:36px; }
.mb-48 { margin-bottom:48px; }
.mb-56 { margin-bottom:56px; }
.mb-64 { margin-bottom:64px; }
.mb-70 { margin-bottom:70px; }
.panel-pad-80  { padding:80px; }
.panel-pad-72  { padding:72px 64px; }
.panel-flex    { display:flex; flex-direction:column; justify-content:center; }
.bg-white      { background:var(--white); }
.bg-dark       { background:#0A1422; }
.section-pad-100-80   { padding:100px 80px; }
.section-pad-100-80-l { padding:100px 80px 100px 0; }

/* ══════════════════════════════════════
   MOBILE — 768px
══════════════════════════════════════ */
@media (max-width: 768px) {

  /* ── Navigation ── */
  nav { padding: 0 20px; }

  /* ── Grid collapses ── */
  .g-2col-100,
  .g-2col-80,
  .g-split-full {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }
  .g-2col-border,
  .g-3col-border,
  .g-4col-border {
    grid-template-columns: 1fr !important;
  }
  .g-3col-navy {
    grid-template-columns: 1fr !important;
  }
  .g-quote-split {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }
  .g-3col-border.mw-960 {
    grid-template-columns: 1fr 1fr !important;
  }

  /* ── Panel paddings ── */
  .panel-pad-80,
  .panel-pad-72 { padding: 44px 24px !important; }
  .section-pad-100-80,
  .section-pad-100-80-l { padding: 60px 24px !important; }

  /* ── Section paddings ── */
  section[style*="padding:110px 48px"],
  section[style*="padding:100px 48px"],
  section[style*="padding:90px 48px"] { padding: 60px 20px !important; }
  div[style*="padding:110px 48px"],
  div[style*="padding:100px 48px"] { padding: 60px 20px !important; }

  /* ── Athletes — pathway nav ── */
  .g-3col-navy > div {
    border-right: none !important;
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
  }

  /* ── Hero adjustments ── */
  .page-hero { height: 60vh; min-height: 420px; }
  .page-hero-content { padding: 48px 20px !important; }
  .page-hero-title { font-size: clamp(36px, 8vw, 56px) !important; }

  /* ── Athletes hero ── */
  [style*="height:100vh"][style*="min-height:620px"] { height: 70vh !important; min-height: 480px !important; }
  [style*="padding:80px 80px 72px"] { padding: 48px 20px 40px !important; }

  /* ── Section inner max-widths ── */
  [style*="max-width:1200px;margin:0 auto;padding:80px 48px"],
  [style*="max-width:1200px;margin:0 auto;padding:110px 48px"] { padding: 60px 20px !important; }

  /* ── Trusted video section ── */
  .trusted-section { min-height: 420px; }
  .trusted-content { padding: 56px 24px !important; }
  .trusted-list { gap: 10px; }

  /* ── Pricing ── */
  .pricing-section { padding: 60px 20px !important; }
  .pricing-inner { padding: 0 !important; }
  [style*="padding:52px 44px;position:relative"] { padding: 36px 24px !important; }
  [style*="padding:60px 56px;position:relative"] { padding: 36px 24px !important; }

  /* ── Player testimonials — 2 col on tablet ── */
  .g-4col-border { grid-template-columns: repeat(2,1fr) !important; }
  .g-3col-border.mw-960 { grid-template-columns: 1fr 1fr !important; }

  /* ── Pledge steps ── */
  [style*="grid-template-columns:repeat(4,1fr);gap:2px"][style*="margin-bottom:48px"] {
    grid-template-columns: repeat(2,1fr) !important;
  }

  /* ── ICAP dark header ── */
  [style*="padding:80px 80px 70px"] { padding: 52px 24px 40px !important; }
  [style*="padding:80px 72px;display:flex;flex-direction:column;justify-content:center;background:var(--white)"] {
    padding: 48px 24px !important;
  }

  /* ── ECP timeline ── */
  [style*="padding-left:32px;border-left:1px solid rgba(255,255,255,0.15)"] {
    padding-left: 24px !important;
  }
  [style*="position:absolute;left:-40px;top:0;width:14px;height:14px;background:var(--gold)"] {
    left: -32px !important;
  }

  /* ── Schools problem/solution split ── */
  [style*="padding:80px 72px;display:flex;flex-direction:column;justify-content:center;"] {
    padding: 52px 24px !important;
    min-height: unset !important;
  }

  /* ── Howarth & Mikhil photo height ── */
  .g-split-full > div:first-child { min-height: 300px !important; }

  /* ── Stats bar inline ── */
  [style*="display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:36px"] {
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
  }

  /* ── ICAP uni list ── */
  .g-3col-border[style*="margin-bottom:0"] { grid-template-columns: 1fr !important; }

  /* ── Steps grid ── */
  .steps-grid { grid-template-columns: 1fr !important; }

  /* ── Footer ── */
  footer { padding: 52px 24px 32px; }
  .footer-top { grid-template-columns: 1fr 1fr; gap: 32px; }

  /* ── College Placement page ── */
  .g-3col-border { grid-template-columns: 1fr !important; }
  .g-4col-border { grid-template-columns: 1fr 1fr !important; }

  /* ── Pricing page plan cards ── */
  div[style*="grid-template-columns:1fr 1fr"][style*="gap:2px"][style*="background:var(--border)"] {
    grid-template-columns: 1fr !important;
  }

  /* ── Pricing card padding ── */
  div[style*="padding:56px 48px"][style*="background:var(--cream)"],
  div[style*="padding:56px 48px"][style*="background:var(--navy)"] {
    padding: 40px 24px !important;
  }

  /* ── Daniel Trigg agent page ── */
  .agent-body { grid-template-columns: 1fr !important; gap: 36px !important; padding: 52px 20px !important; }
  .agent-hero { padding: 52px 20px 0 !important; }
  .agent-photo { width: 160px !important; height: 160px !important; }
  .contact-card { position: static !important; padding: 36px 24px !important; }
  .agent-header { padding: 0 20px !important; }
  .agent-footer { padding: 32px 20px !important; }

  /* ── Placement page hero section headings ── */
  div[style*="max-width:1000px;margin:0 auto"] { padding: 0 !important; }

  /* ── FAQ section ── */
  div[style*="max-width:760px;margin:0 auto"] { padding: 0 !important; }

  /* ── Large section padding on new pages ── */
  section[style*="padding:100px 48px"] { padding: 64px 20px !important; }
  section[style*="padding:80px 48px"] { padding: 56px 20px !important; }
  section[style*="padding:110px 48px"] { padding: 64px 20px !important; }

  /* ── Contact page ── */
  [style*="max-width:1000px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:80px"] {
    grid-template-columns: 1fr !important;
    gap: 40px !important;
  }

  /* ── Schools what-schools-get ── */
  [style*="display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--border)"] {
    grid-template-columns: 1fr !important;
  }

  /* ── Homepage CTA stats row ── */
  [style*="justify-content:center;gap:60px;flex-wrap:wrap"] {
    gap: 28px !important;
  }

  /* ── Clubs intro split ── */
  [style*="max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center"] {
    grid-template-columns: 1fr !important;
    gap: 40px !important;
  }

  /* ── Clubs what-club-gets panel ── */
  [style*="background:var(--navy);padding:52px"] { padding: 36px 24px !important; }

  /* ── School partnership section on homepage ── */
  .partner-cta { padding: 0 24px !important; }

  /* ── Accordion ── */
  .accordion-btn { font-size: 14px; padding: 18px 0; }
  /* ── g-3col and g-4col (college placement) ── */
  .g-3col-border { grid-template-columns: 1fr !important; }
  .g-4col-border { grid-template-columns: 1fr 1fr !important; }

  /* ── Pricing plan cards ── */
  div[style*="grid-template-columns:1fr 1fr"][style*="gap:2px"][style*="background:var(--border)"][style*="margin-bottom:28px"] {
    grid-template-columns: 1fr !important;
  }

  /* ── Daniel Trigg ── */
  .agent-body { grid-template-columns: 1fr !important; gap: 36px !important; padding: 48px 20px !important; }
  .agent-hero { padding: 52px 20px 0 !important; }
  .agent-photo { width: 160px !important; height: 160px !important; }
  .contact-card { position: static !important; padding: 36px 24px !important; }
  .agent-header { padding: 0 20px !important; }

  /* ── Large inline paddings on new pages ── */
  div[style*="padding:56px 48px;background:var(--cream)"],
  div[style*="padding:56px 48px;background:var(--navy)"] { padding: 36px 20px !important; }
  div[style*="max-width:1000px;margin:0 auto"] { padding: 0 20px !important; }
  div[style*="max-width:760px;margin:0 auto"] { padding: 0 20px !important; }

  /* ── g-3col and g-4col (college placement + pricing) ── */
  .g-3col-border { grid-template-columns: 1fr !important; }
  .g-4col-border { grid-template-columns: 1fr 1fr !important; }

  /* ── Pricing plan cards ── */
  div[style*="grid-template-columns:1fr 1fr"][style*="margin-bottom:28px"] {
    grid-template-columns: 1fr !important;
  }
  div[style*="padding:56px 48px"] { padding: 36px 20px !important; }

  /* ── Daniel Trigg agent page ── */
  .agent-body { grid-template-columns: 1fr !important; gap: 36px !important; padding: 48px 20px !important; }
  .agent-hero { padding: 52px 20px 0 !important; }
  .agent-photo { width: 160px !important; height: 160px !important; }
  .contact-card { position: static !important; padding: 36px 24px !important; }
  .agent-header { padding: 0 20px !important; }
  .hero-badges { gap: 8px !important; }

  /* ── New page inner containers ── */
  div[style*="max-width:1000px;margin:0 auto"] { padding: 0 20px !important; }
  div[style*="max-width:760px;margin:0 auto"] { padding: 0 20px !important; }
}

/* ══════════════════════════════════════
   MOBILE — 480px (small phones)
══════════════════════════════════════ */
@media (max-width: 480px) {

  /* ── Typography scale down ── */
  h2.serif { font-size: 32px !important; }
  h3.serif { font-size: 26px !important; }
  .hero-title { font-size: 38px !important; line-height: 1 !important; }
  .hero-sub { font-size: 14px !important; }
  .page-hero-title { font-size: 34px !important; }
  .stat-number { font-size: 32px !important; }
  .body-lg { font-size: 15px !important; }

  /* ── Hero buttons stack ── */
  .hero-buttons { flex-direction: column; align-items: center; gap: 12px; }
  .btn-primary, .btn-outline { width: 100%; max-width: 260px; text-align: center; justify-content: center; }

  /* ── Sections ── */
  section { padding: 56px 16px !important; }
  [style*="padding:110px 48px"],
  [style*="padding:100px 48px"],
  [style*="padding:100px 0"],
  [style*="padding:90px 48px"] { padding: 56px 16px !important; }

  /* ── Grids go fully single column ── */
  .g-4col-border,
  .g-3col-border,
  .g-3col-border.mw-960 {
    grid-template-columns: 1fr !important;
  }

  /* ── Player testimonials ── */
  [style*="padding:36px 28px 40px;text-align:center"] { padding: 28px 16px 32px !important; }
  [style*="height:180px;display:flex;align-items:flex-end"] { height: 140px !important; }
  [style*="height:180px;display:flex;align-items:flex-end"] img { height: 140px !important; }

  /* ── Cards ── */
  .service-card,
  .program-card { padding: 36px 24px !important; }
  .step-card { padding: 36px 24px !important; }
  [style*="padding:48px 36px"] { padding: 32px 20px !important; }
  [style*="padding:52px 44px"] { padding: 32px 20px !important; }
  [style*="padding:44px 36px"] { padding: 30px 20px !important; }

  /* ── Pricing ── */
  .plan-price { font-size: 44px !important; }
  [style*="padding:60px 56px;position:relative"],
  [style*="padding:52px 44px;position:relative"] { padding: 32px 20px !important; }

  /* ── Pledge maths ── */
  [style*="font-size:52px;font-weight:300;color:var(--navy)"] { font-size: 44px !important; }
  [style*="padding:44px 48px"] { padding: 28px 20px !important; }

  /* ── Stats mini grid ── */
  [style*="display:grid;grid-template-columns:1fr 1fr;gap:16px"] {
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
  }
  [style*="padding:22px 20px;border:1px solid"] { padding: 16px 12px !important; }
  [style*="font-size:38px;font-weight:300;color:var(--navy)"] { font-size: 28px !important; }
  [style*="font-size:36px;font-weight:300;color:var(--navy)"] { font-size: 26px !important; }

  /* ── ECP timeline ── */
  [style*="margin-bottom:36px;position:relative"] { margin-bottom: 28px !important; }
  [style*="font-size:16px;font-weight:500;color:var(--white);margin-bottom:8px"] { font-size: 14px !important; }

  /* ── Logo marquee ── */
  .logo-slide-item { padding: 0 24px !important; height: 68px !important; }
  .logo-slide-item img { height: 30px !important; }

  /* ── Partners panel ── */
  .partners-panel { padding: 44px 20px !important; }

  /* ── Contact form ── */
  [style*="background:var(--white);padding:52px"] { padding: 32px 20px !important; }

  /* ── Trusted section ── */
  .trusted-content { padding: 48px 16px !important; }

  /* ── Footer ── */
  footer { padding: 44px 16px 28px; }
  .footer-top { grid-template-columns: 1fr !important; gap: 28px !important; }
  .footer-brand-name { font-size: 18px !important; }

  /* ── Mobile menu ── */
  .mobile-nav-link { font-size: 26px !important; }

  /* ── Pull quote ── */
  .pull-quote { padding: 0 4px !important; }
  .quote-text { font-size: 22px !important; }
  .pull-quote::before { display: none; }

  /* ── Contact strip ── */
  .contact-strip { padding: 44px 16px !important; }
  .contact-strip-text h3 { font-size: 24px !important; }

  /* ── ICAP problem/solution cards ── */
  [style*="background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);padding:22px 26px"],
  [style*="background:rgba(180,154,98,0.12);border:1px solid rgba(180,154,98,0.3);padding:22px 26px"] {
    padding: 18px !important;
  }

  /* ── Schools what-we-get feature grid ── */
  [style*="background:var(--cream);padding:48px 36px"] { padding: 32px 20px !important; }

  /* ── Howarth/Mikhil ── */
  [style*="padding:72px 64px;display:flex;flex-direction:column;justify-content:center;background:var(--white)"],
  [style*="padding:72px 64px;display:flex;flex-direction:column;justify-content:center;"] {
    padding: 40px 20px !important;
  }

  /* ── Buckswood testimonial ── */
  [style*="padding:72px 64px"] { padding: 40px 20px !important; }

  /* ── ICAP uni partner list ── */
  [style*="padding:32px 36px;display:flex;align-items:center;gap:16px"] {
    padding: 20px 16px !important;
  }

  /* ── Pricing cards single col on small screens ── */
  div[style*="grid-template-columns:1fr 1fr"][style*="gap:2px"][style*="background:var(--border)"][style*="margin-bottom:28px"] {
    grid-template-columns: 1fr !important;
  }
  div[style*="padding:56px 48px"] { padding: 32px 16px !important; }

  /* ── g-3col and g-4col single col ── */
  .g-3col-border, .g-4col-border { grid-template-columns: 1fr !important; }

  /* ── Daniel agent ── */
  .agent-name { font-size: 44px !important; }
  .agent-photo { width: 140px !important; height: 140px !important; }
  .badge { font-size: 9px !important; padding: 4px 8px !important; }
}




/* ── PARENT PLEDGE COLLAPSIBLE ── */
.pledge-content.pledge-open { max-height: 3000px !important; }
.pledge-arrow-open { transform: rotate(180deg); }

/* ══════════════════════════════════════
   DANIEL TRIGG AGENT PROFILE (scoped)
   Base styles — restores layout for /daniel-trigg
══════════════════════════════════════ */
#page-daniel-trigg { background: var(--cream); }
#page-daniel-trigg a { text-decoration: none; color: inherit; }

#page-daniel-trigg .agent-header {
  background: var(--navy); padding: 0 48px; height: 64px;
  display: flex; align-items: center; justify-content: space-between;
}
#page-daniel-trigg .header-logo {
  font-family: var(--font-serif); font-size: 20px; font-weight: 600;
  color: var(--white); letter-spacing: 0.06em;
}
#page-daniel-trigg .header-tag {
  font-size: 10px; font-weight: 500; letter-spacing: 0.18em;
  text-transform: uppercase; color: var(--gold);
}

#page-daniel-trigg .agent-hero {
  background: var(--navy); padding: 80px 48px 0; display: flex;
  flex-direction: column; align-items: center; text-align: center;
  position: relative; overflow: hidden;
}
#page-daniel-trigg .agent-hero::before {
  content: ''; position: absolute; inset: 0;
  background: radial-gradient(ellipse at 50% 0%, rgba(180,154,98,0.08) 0%, transparent 70%);
}
#page-daniel-trigg .agent-photo-wrap { position: relative; z-index: 2; margin-bottom: 36px; }
#page-daniel-trigg .agent-photo-wrap::before {
  content: ''; position: absolute; inset: -6px;
  border: 2px solid var(--gold); border-radius: 50%;
}
#page-daniel-trigg .agent-photo-wrap::after {
  content: ''; position: absolute; inset: -12px;
  border: 1px solid rgba(180,154,98,0.3); border-radius: 50%;
}
#page-daniel-trigg .agent-photo {
  width: 200px; height: 200px; border-radius: 50%; object-fit: cover;
  object-position: center top; display: block; position: relative; z-index: 1;
}
#page-daniel-trigg .agent-name {
  font-family: var(--font-serif); font-size: clamp(40px, 6vw, 68px);
  font-weight: 400; color: var(--white); line-height: 1;
  letter-spacing: -0.01em; position: relative; z-index: 2; margin-bottom: 12px;
}
#page-daniel-trigg .agent-title {
  font-size: 11px; font-weight: 500; letter-spacing: 0.22em;
  text-transform: uppercase; color: var(--gold);
  position: relative; z-index: 2; margin-bottom: 8px;
}
#page-daniel-trigg .agent-location {
  font-size: 13px; font-weight: 300; color: rgba(255,255,255,0.5);
  position: relative; z-index: 2; margin-bottom: 0; letter-spacing: 0.04em;
}
#page-daniel-trigg .agent-hero-rule {
  width: 80px; height: 1px; background: var(--gold);
  margin: 28px auto 0; position: relative; z-index: 2;
}
#page-daniel-trigg .hero-badges {
  display: flex; gap: 10px; justify-content: center; flex-wrap: wrap;
  padding: 28px 0 48px; position: relative; z-index: 2;
}
#page-daniel-trigg .badge {
  font-size: 10px; font-weight: 500; letter-spacing: 0.14em;
  text-transform: uppercase; padding: 6px 14px;
  border: 1px solid rgba(180,154,98,0.4); color: var(--gold-light);
  background: transparent; border-radius: 0;
}

#page-daniel-trigg .agent-body {
  max-width: 960px; margin: 0 auto; padding: 72px 48px;
  display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: start;
}
#page-daniel-trigg .bio-section h2 {
  font-family: var(--font-serif); font-size: clamp(32px, 4vw, 48px);
  font-weight: 400; color: var(--navy); line-height: 1.1; margin-bottom: 20px;
}
#page-daniel-trigg .bio-rule { width: 40px; height: 1px; background: var(--gold); margin-bottom: 24px; }
#page-daniel-trigg .bio-section p {
  font-size: 15px; font-weight: 300; color: var(--text-mid);
  line-height: 1.85; margin-bottom: 18px;
}
#page-daniel-trigg .spec-list {
  margin-top: 28px; padding-top: 24px; border-top: 1px solid var(--border);
  display: flex; flex-direction: column; gap: 10px;
}
#page-daniel-trigg .spec-item {
  display: flex; align-items: center; gap: 10px;
  font-size: 13px; font-weight: 400; color: var(--text-mid);
}
#page-daniel-trigg .spec-dot { width: 6px; height: 6px; background: var(--gold); flex-shrink: 0; }

#page-daniel-trigg .contact-card {
  background: var(--navy); padding: 44px 40px; position: sticky; top: 24px;
}
#page-daniel-trigg .contact-card-eyebrow {
  font-size: 10px; font-weight: 500; letter-spacing: 0.22em;
  text-transform: uppercase; color: var(--gold); margin-bottom: 20px;
}
#page-daniel-trigg .contact-card-name {
  font-family: var(--font-serif); font-size: 28px; font-weight: 400;
  color: var(--white); margin-bottom: 6px;
}
#page-daniel-trigg .contact-card-sub {
  font-size: 13px; font-weight: 300; color: rgba(255,255,255,0.5);
  margin-bottom: 32px; letter-spacing: 0.03em;
}
#page-daniel-trigg .contact-divider {
  width: 100%; height: 1px; background: rgba(255,255,255,0.1); margin-bottom: 28px;
}
#page-daniel-trigg .contact-item {
  display: flex; align-items: flex-start; gap: 14px; margin-bottom: 20px;
}
#page-daniel-trigg .contact-icon {
  width: 36px; height: 36px; border: 1px solid rgba(180,154,98,0.4);
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0; font-size: 14px; color: var(--gold);
}
#page-daniel-trigg .contact-label {
  font-size: 10px; font-weight: 500; letter-spacing: 0.16em;
  text-transform: uppercase; color: rgba(255,255,255,0.4); margin-bottom: 3px;
}
#page-daniel-trigg .contact-value {
  font-size: 14px; font-weight: 400; color: var(--white); word-break: break-word;
}
#page-daniel-trigg .contact-value a { color: var(--white); transition: color 0.2s; }
#page-daniel-trigg .contact-value a:hover { color: var(--gold-light); }
#page-daniel-trigg .lang-pills { display: flex; gap: 8px; margin-top: 8px; }
#page-daniel-trigg .lang-pill {
  font-size: 10px; font-weight: 500; letter-spacing: 0.12em;
  text-transform: uppercase; padding: 4px 10px;
  border: 1px solid rgba(180,154,98,0.5); color: var(--gold-light);
}

#page-daniel-trigg .agent-footer {
  background: var(--navy); padding: 40px 48px; text-align: center;
  border-top: 1px solid rgba(255,255,255,0.06);
}
#page-daniel-trigg .agent-footer-logo {
  font-family: var(--font-serif); font-size: 16px; font-weight: 400;
  color: rgba(255,255,255,0.5); margin-bottom: 8px; letter-spacing: 0.06em;
}
#page-daniel-trigg .agent-footer-link {
  font-size: 12px; font-weight: 300; color: var(--gold); letter-spacing: 0.04em;
}
#page-daniel-trigg .agent-footer-link a { color: var(--gold); }
#page-daniel-trigg .agent-footer-link a:hover { color: var(--gold-light); }

@media (max-width: 768px) {
  #page-daniel-trigg .agent-header { padding: 0 20px; }
  #page-daniel-trigg .agent-hero { padding: 60px 20px 0; }
  #page-daniel-trigg .agent-photo { width: 160px; height: 160px; }
  #page-daniel-trigg .agent-body { grid-template-columns: 1fr; padding: 52px 20px; gap: 36px; }
  #page-daniel-trigg .contact-card { position: static; }
  #page-daniel-trigg .agent-footer { padding: 32px 20px; }
}


/* ── Hide all Google Translate UI chrome ── */
#google_translate_element { display: none !important; }
.goog-te-banner-frame { display: none !important; }
.goog-te-balloon-frame { display: none !important; }
body { top: 0 !important; }
.goog-tooltip { display: none !important; }
.goog-tooltip:hover { display: none !important; }
.goog-text-highlight { background-color: transparent !important; box-shadow: none !important; }
.skiptranslate { display: none !important; }
iframe.goog-te-menu-frame { display: none !important; }

/* ── Language Toggle ── */
.lang-toggle {
  display: flex;
  align-items: center;
  gap: 0;
  border: 1px solid rgba(255,255,255,0.4);
  overflow: hidden;
  height: 32px;
  flex-shrink: 0;
}
nav.scrolled .lang-toggle {
  border-color: rgba(13,27,46,0.25);
}
.lang-btn {
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.1em;
  padding: 0 13px;
  height: 100%;
  background: transparent;
  color: rgba(255,255,255,0.7);
  border: none;
  cursor: pointer;
  transition: all 0.22s;
  text-transform: uppercase;
}
nav.scrolled .lang-btn {
  color: var(--text-mid);
}
.lang-btn.active {
  background: rgba(255,255,255,0.18);
  color: var(--white);
}
nav.scrolled .lang-btn.active {
  background: var(--navy);
  color: var(--white);
}
.lang-divider {
  width: 1px;
  height: 100%;
  background: rgba(255,255,255,0.3);
  flex-shrink: 0;
}
nav.scrolled .lang-divider {
  background: rgba(13,27,46,0.2);
}

@media (max-width: 768px) {
  .lang-toggle { height: 28px; }
  .lang-btn { font-size: 10px; padding: 0 10px; }
}


    /* ── Athletes page — upgraded pathway + new sections ── */
    .ath-pathway-cell { padding:44px 48px; position:relative; cursor:pointer; transition:background 0.35s ease, transform 0.35s ease; overflow:hidden; }
    .ath-pathway-cell::before { content:""; position:absolute; top:0; left:0; height:3px; width:0; background:var(--gold); transition:width 0.4s ease; }
    .ath-pathway-cell:hover { background:rgba(255,255,255,0.035); transform:translateY(-4px); }
    .ath-pathway-cell:hover::before { width:100%; }
    .ath-pathway-cell .ath-arrow { opacity:0; transform:translateX(-6px); transition:opacity 0.35s ease, transform 0.35s ease; color:var(--gold); font-size:14px; }
    .ath-pathway-cell:hover .ath-arrow { opacity:1; transform:translateX(0); }

    .opt-grid { display:grid; grid-template-columns:1fr 1fr; gap:28px; max-width:1000px; margin:0 auto; }
    .opt-card { background:var(--white); border:1px solid var(--border); border-radius:6px; padding:44px 40px; text-align:left; }
    .opt-card .opt-tag { display:inline-flex; align-items:center; gap:10px; margin-bottom:18px; font-size:10px; font-weight:600; letter-spacing:0.18em; text-transform:uppercase; color:var(--gold); }
    .opt-card .opt-tag span.line { width:26px; height:1px; background:var(--gold); }

    .mgmt-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:2px; background:rgba(255,255,255,0.1); max-width:1040px; margin:0 auto; }
    .mgmt-step { background:var(--navy); padding:30px 28px; }
    .mgmt-step .num { font-family:var(--font-serif); font-size:34px; font-weight:300; color:var(--gold); line-height:1; margin-bottom:14px; }

    .inst-logos { display:flex; flex-wrap:wrap; gap:24px; justify-content:center; align-items:stretch; max-width:980px; margin:0 auto; }
    .inst-logo-tile { flex:1 1 200px; max-width:230px; background:var(--white); border:1px solid var(--border); border-radius:6px; padding:30px 26px; display:flex; align-items:center; justify-content:center; min-height:130px; }
    .inst-logo-tile img { max-height:78px; max-width:100%; object-fit:contain; }

    .players-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:2px; background:var(--border); max-width:1100px; margin:0 auto; }
    .players-grid .player-card { background:var(--white); display:flex; flex-direction:column; align-items:center; padding:36px 28px 40px; text-align:center; }

    @media (max-width:900px) {
      .opt-grid { grid-template-columns:1fr; }
      .mgmt-grid { grid-template-columns:1fr 1fr; }
      .players-grid { grid-template-columns:1fr 1fr; }
    }
    @media (max-width:560px) {
      .mgmt-grid { grid-template-columns:1fr; }
      .players-grid { grid-template-columns:1fr; }
      .ath-pathway-cell { padding:32px 30px; }
    }
  

    body.uk-landing-active #main-nav,
    body.uk-landing-active #mobile-menu { display:none !important; }

    #page-uk-football {
      --uk-navy:#081526;
      --uk-ink:#102238;
      --uk-gold:#c6a96b;
      --uk-cream:#f5f1e8;
      background:var(--uk-cream);
    }
    .uklp-shell { width:min(1180px,calc(100% - 96px)); margin:0 auto; }
    .uklp-kicker { font-size:10px; font-weight:600; letter-spacing:.21em; text-transform:uppercase; color:var(--gold); margin-bottom:16px; }
    .uklp-kicker.light { color:var(--gold-light); }
    .uklp-heading { font-family:var(--font-serif); font-size:clamp(42px,5vw,70px); font-weight:400; line-height:.98; color:var(--navy); }
    .uklp-heading em { color:var(--gold); font-weight:300; }
    .uklp-heading.light { color:var(--white); }
    .uklp-copy { font-size:16px; line-height:1.8; color:var(--text-mid); }
    .uklp-copy.light { color:rgba(255,255,255,.68); }
    .uklp-btn { display:inline-flex; min-height:52px; align-items:center; justify-content:center; padding:0 28px; background:var(--gold); color:var(--uk-navy); font-size:12px; font-weight:600; letter-spacing:.12em; text-transform:uppercase; transition:transform .25s,background .25s; }
    .uklp-btn:hover { transform:translateY(-2px); background:#d7be87; }
    .uklp-btn.outline { background:transparent; color:var(--white); border:1px solid rgba(255,255,255,.42); }
    .uklp-btn.outline:hover { background:rgba(255,255,255,.09); }
    .uklp-topbar { position:absolute; z-index:4; top:0; left:0; right:0; height:80px; display:flex; align-items:center; justify-content:space-between; padding:0 80px; border-bottom:1px solid rgba(255,255,255,.16); color:var(--white); }
    .uklp-brand { font-family:var(--font-serif); font-size:21px; font-weight:600; letter-spacing:.08em; }
    .uklp-topbar-note { font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:rgba(255,255,255,.66); }
    .uklp-topbar .uklp-btn { min-height:42px; padding:0 20px; }

    .uklp-hero { position:relative; min-height:680px; height:78vh; max-height:820px; display:flex; align-items:center; overflow:hidden; background:var(--uk-navy); }
    .uklp-hero-media { position:absolute; inset:0; background:url('../byu-hero.webp') center 48%/cover no-repeat; transform:scale(1.01); }
    .uklp-hero::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(5,15,28,.94) 0%,rgba(5,15,28,.78) 44%,rgba(5,15,28,.22) 76%,rgba(5,15,28,.38) 100%),linear-gradient(0deg,rgba(5,15,28,.52) 0%,transparent 48%); }
    .uklp-hero-inner { position:relative; z-index:2; width:100%; margin:64px 0 0; padding:0 80px; }
    .uklp-hero-copy { max-width:760px; }
    .uklp-hero h1 { font-family:var(--font-serif); font-size:clamp(56px,6vw,84px); font-weight:400; line-height:.91; letter-spacing:-.02em; color:var(--white); margin-bottom:26px; }
    .uklp-hero h1 em { color:var(--gold-light); font-weight:300; }
    .uklp-hero-lead { max-width:620px; font-size:17px; line-height:1.7; color:rgba(255,255,255,.8); margin-bottom:30px; }
    .uklp-pills { display:flex; flex-wrap:wrap; gap:8px; margin-top:28px; }
    .uklp-pill { padding:8px 12px; border:1px solid rgba(255,255,255,.25); color:rgba(255,255,255,.75); font-size:10px; letter-spacing:.08em; text-transform:uppercase; background:rgba(8,21,38,.34); backdrop-filter:blur(6px); }
    .uklp-journey-rail { position:absolute; z-index:3; left:0; right:0; bottom:0; border-top:1px solid rgba(255,255,255,.16); background:rgba(5,15,28,.68); backdrop-filter:blur(12px); }
    .uklp-journey-rail-inner { display:grid; grid-template-columns:repeat(4,1fr); width:min(1180px,calc(100% - 96px)); margin:0 auto; }
    .uklp-journey-point { position:relative; min-height:118px; padding:28px 28px 26px 0; }
    .uklp-journey-point:not(:last-child)::after { content:""; position:absolute; right:24px; top:44px; color:var(--gold); }
    .uklp-journey-point span { display:block; color:var(--gold); font-size:10px; font-weight:600; letter-spacing:.16em; text-transform:uppercase; margin-bottom:8px; }
    .uklp-journey-point strong { display:block; color:var(--white); font-size:14px; font-weight:400; }

    .uklp-proofbar { display:grid; grid-template-columns:repeat(4,1fr); background:var(--white); border-bottom:1px solid var(--border); }
    .uklp-proof { padding:34px 22px; text-align:center; border-right:1px solid var(--border); }
    .uklp-proof:last-child { border-right:0; }
    .uklp-proof strong { display:block; font-family:var(--font-serif); font-size:36px; font-weight:400; color:var(--navy); line-height:1; }
    .uklp-proof span { display:block; margin-top:8px; font-size:10px; letter-spacing:.13em; text-transform:uppercase; color:var(--text-light); }

    .uklp-opportunity { max-width:1080px; text-align:center; }
    .uklp-opportunity-copy { max-width:790px; margin:0 auto; }
    .uklp-opportunity-copy .uklp-copy { margin:25px auto 0; max-width:760px; }
    .uklp-opportunity-copy .uklp-heading { font-size:clamp(48px,5.4vw,74px); }
    .uklp-opportunity-stats { display:grid; grid-template-columns:repeat(4,1fr); margin-top:54px; }
    .uklp-market-stat { min-height:168px; padding:28px 30px; border-right:1px solid rgba(180,154,98,.48); display:flex; flex-direction:column; align-items:center; justify-content:center; }
    .uklp-market-stat:last-child { border-right:0; }
    .uklp-market-stat strong { display:block; font-family:var(--font-serif); font-size:46px; line-height:.95; font-weight:300; color:var(--navy); }
    .uklp-market-stat span { display:block; max-width:185px; margin-top:13px; color:var(--text-mid); font-size:11px; line-height:1.6; }

    .uklp-section { padding:112px 0; }
    .uklp-section.white { background:var(--white); }
    .uklp-section.navy { background:var(--uk-navy); }
    .uklp-section.cream { background:var(--uk-cream); }
    .uklp-intro-grid { display:grid; grid-template-columns:.92fr 1.08fr; gap:72px; align-items:center; }
    .uklp-intro-copy { max-width:520px; }
    .uklp-intro-copy .uklp-copy { margin-top:26px; }
    .uklp-mosaic { display:grid; grid-template-columns:1.06fr .94fr; grid-template-rows:260px 230px; gap:12px; }
    .uklp-mosaic figure { position:relative; overflow:hidden; margin:0; }
    .uklp-mosaic figure:first-child { grid-row:1 / 3; }
    .uklp-mosaic img { width:100%; height:100%; object-fit:cover; }
    .uklp-mosaic figcaption { position:absolute; left:16px; bottom:14px; padding:8px 10px; background:rgba(8,21,38,.84); color:var(--white); font-size:9px; letter-spacing:.12em; text-transform:uppercase; }

    .uklp-advantage { display:grid; grid-template-columns:.75fr 1.25fr; background:var(--navy); box-shadow:0 22px 65px rgba(13,27,46,.14); }
    .uklp-advantage-title { padding:54px 48px; display:flex; flex-direction:column; justify-content:center; border-right:1px solid rgba(255,255,255,.12); }
    .uklp-advantage-title h2 { font-family:var(--font-serif); font-size:40px; line-height:1; color:var(--white); font-weight:400; }
    .uklp-advantage-title h2 em { color:var(--gold-light); }
    .uklp-advantage-grid { display:grid; grid-template-columns:repeat(3,1fr); }
    .uklp-advantage-item { padding:52px 30px; border-right:1px solid rgba(255,255,255,.1); }
    .uklp-advantage-item:last-child { border-right:0; }
    .uklp-advantage-item strong { display:block; color:var(--gold-light); font-size:13px; font-weight:500; margin-bottom:11px; }
    .uklp-advantage-item p { color:rgba(255,255,255,.62); font-size:13px; line-height:1.7; }
    .uklp-smallprint { font-size:11px; line-height:1.65; color:var(--text-light); margin-top:15px; }

    .uklp-guide-head { max-width:700px; text-align:center; margin:0 auto 58px; }
    .uklp-guide-head .uklp-copy { margin:22px auto 0; max-width:610px; }
    .uklp-chapters { display:grid; grid-template-columns:repeat(5,1fr); border:1px solid rgba(255,255,255,.12); }
    .uklp-chapter { min-height:220px; padding:28px 24px; border-right:1px solid rgba(255,255,255,.1); border-bottom:1px solid rgba(255,255,255,.1); }
    .uklp-chapter:nth-child(5n) { border-right:0; }
    .uklp-chapter:nth-child(n+6) { border-bottom:0; }
    .uklp-chapter b { display:block; font-family:var(--font-serif); font-size:34px; font-weight:300; color:var(--gold); line-height:1; margin-bottom:22px; }
    .uklp-chapter strong { display:block; color:var(--white); font-size:14px; font-weight:500; line-height:1.35; margin-bottom:10px; }
    .uklp-chapter p { color:rgba(255,255,255,.5); font-size:12px; line-height:1.65; }

    .uklp-system-grid { display:grid; grid-template-columns:1fr 1fr; gap:2px; background:var(--border); margin-top:60px; }
    .uklp-system-card { background:var(--white); padding:48px 44px; }
    .uklp-system-card.dark { background:var(--navy); }
    .uklp-system-card .number { font-family:var(--font-serif); font-size:15px; color:var(--gold); letter-spacing:.08em; text-transform:uppercase; margin-bottom:18px; }
    .uklp-system-card h3 { font-family:var(--font-serif); font-size:34px; font-weight:400; color:var(--navy); margin-bottom:16px; }
    .uklp-system-card.dark h3 { color:var(--white); }
    .uklp-system-card p { font-size:14px; line-height:1.75; color:var(--text-mid); }
    .uklp-system-card.dark p { color:rgba(255,255,255,.62); }
    .uklp-leagues { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:24px; }
    .uklp-league { border:1px solid rgba(255,255,255,.15); padding:18px; }
    .uklp-league strong { display:block; color:var(--gold-light); font-size:12px; margin-bottom:7px; }
    .uklp-league span { color:rgba(255,255,255,.5); font-size:11px; line-height:1.55; }

    .uklp-guide-principles { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:rgba(255,255,255,.13); margin-top:52px; }
    .uklp-guide-principle { background:var(--uk-navy); padding:30px 28px; }
    .uklp-guide-principle strong { display:block; color:var(--white); font-size:13px; margin-bottom:8px; }
    .uklp-guide-principle p { color:rgba(255,255,255,.55); font-size:12px; line-height:1.65; }
    .uklp-knowledge-stack { border-top:1px solid var(--border); }
    .uklp-knowledge-row { display:grid; grid-template-columns:.62fr 1.38fr; gap:64px; padding:74px 0; border-bottom:1px solid var(--border); }
    .uklp-knowledge-row:last-child { border-bottom:0; padding-bottom:0; }
    .uklp-chapter-label { position:sticky; top:30px; align-self:start; }
    .uklp-chapter-label b { display:block; font-family:var(--font-serif); font-size:64px; line-height:.8; font-weight:300; color:rgba(180,154,98,.42); }
    .uklp-chapter-label span { display:block; margin-top:17px; color:var(--gold); font-size:10px; font-weight:600; letter-spacing:.17em; text-transform:uppercase; }
    .uklp-knowledge-body h3 { font-family:var(--font-serif); font-size:clamp(34px,3.6vw,52px); line-height:1.02; font-weight:400; color:var(--navy); margin-bottom:20px; }
    .uklp-knowledge-body > p { max-width:770px; color:var(--text-mid); font-size:15px; line-height:1.8; }
    .uklp-facts { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; margin-top:30px; }
    .uklp-fact { padding:24px; background:var(--cream); border-left:2px solid var(--gold); }
    .uklp-fact strong { display:block; color:var(--navy); font-size:13px; margin-bottom:7px; }
    .uklp-fact span { display:block; color:var(--text-mid); font-size:12px; line-height:1.65; }
    .uklp-visa-band { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--border); margin-top:30px; }
    .uklp-visa-item { padding:26px 22px; background:var(--white); }
    .uklp-visa-item b { display:block; font-family:var(--font-serif); color:var(--gold); font-size:28px; font-weight:400; margin-bottom:7px; }
    .uklp-visa-item span { color:var(--text-mid); font-size:12px; line-height:1.6; }
    .uklp-league-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:8px; margin-top:30px; }
    .uklp-league-card { padding:24px 18px; background:var(--uk-navy); min-height:170px; }
    .uklp-league-card strong { display:block; color:var(--gold-light); font-size:12px; margin-bottom:10px; }
    .uklp-league-card span { display:block; color:rgba(255,255,255,.58); font-size:11px; line-height:1.6; }
    .uklp-route-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:30px; }
    .uklp-route { padding:32px; border:1px solid var(--border); background:var(--white); }
    .uklp-route:first-child { background:var(--cream); }
    .uklp-route b { display:block; color:var(--gold); font-size:10px; letter-spacing:.16em; text-transform:uppercase; margin-bottom:12px; }
    .uklp-route strong { display:block; font-family:var(--font-serif); font-size:26px; font-weight:400; color:var(--navy); margin-bottom:10px; }
    .uklp-route p { color:var(--text-mid); font-size:12px; line-height:1.7; }
    .uklp-cost-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; margin-top:30px; }
    .uklp-cost { padding:24px 18px; background:var(--cream); text-align:center; }
    .uklp-cost strong { display:block; color:var(--navy); font-size:12px; margin-bottom:6px; }
    .uklp-cost span { display:block; color:var(--text-light); font-size:10px; line-height:1.5; }
    .uklp-timeline { display:grid; grid-template-columns:repeat(3,1fr); margin-top:32px; }
    .uklp-timeline-step { position:relative; padding:34px 28px 30px; border-top:2px solid var(--gold); background:var(--uk-navy); }
    .uklp-timeline-step:not(:last-child) { border-right:1px solid rgba(255,255,255,.12); }
    .uklp-timeline-step b { display:block; color:var(--gold-light); font-family:var(--font-serif); font-size:28px; font-weight:300; margin-bottom:10px; }
    .uklp-timeline-step strong { display:block; color:var(--white); font-size:13px; margin-bottom:8px; }
    .uklp-timeline-step span { display:block; color:rgba(255,255,255,.55); font-size:11px; line-height:1.6; }

    .uklp-visual-pause { display:grid; gap:10px; margin:18px 0 74px; }
    .uklp-visual-pause.four { grid-template-columns:1.35fr .85fr .85fr; grid-template-rows:230px 230px; }
    .uklp-visual-pause.four figure:first-child { grid-row:1 / 3; }
    .uklp-visual-pause.four figure:nth-child(4) { grid-column:2 / 4; }
    .uklp-visual-pause.two { grid-template-columns:1.15fr .85fr; grid-template-rows:390px; }
    .uklp-visual-pause.three { grid-template-columns:1.1fr .9fr .9fr; grid-template-rows:310px; margin-bottom:0; }
    .uklp-visual-pause figure { position:relative; overflow:hidden; margin:0; background:var(--cream-dark); }
    .uklp-visual-pause img { width:100%; height:100%; object-fit:cover; transition:transform .55s ease; }
    .uklp-visual-pause figure:hover img { transform:scale(1.025); }
    .uklp-visual-pause figcaption { position:absolute; left:16px; bottom:14px; padding:8px 10px; background:rgba(8,21,38,.82); color:var(--white); font-size:9px; letter-spacing:.12em; text-transform:uppercase; }

    .uklp-college-proof { padding:104px 0 0; background:var(--white); }
    .uklp-college-proof .uklp-guide-head { margin-bottom:46px; }
    .uklp-college-proof .logo-marquee-section { padding-top:40px; border-bottom:0; }
    .uklp-college-proof .logo-marquee-label { color:var(--gold); font-weight:600; }

    .uklp-management-intro { max-width:780px; text-align:center; margin:0 auto; }
    .uklp-management-intro .uklp-copy { margin-top:25px; }
    .uklp-options { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:54px; }
    .uklp-option { background:var(--white); border:1px solid var(--border); padding:42px; }
    .uklp-option span { color:var(--gold); font-size:10px; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
    .uklp-option h3 { font-family:var(--font-serif); font-size:30px; color:var(--navy); font-weight:400; margin:13px 0; }
    .uklp-option p { font-size:14px; color:var(--text-mid); line-height:1.75; }
    .uklp-management-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:2px; background:rgba(255,255,255,.12); margin-top:56px; }
    .uklp-management-step { background:var(--uk-navy); padding:32px 28px; }
    .uklp-management-step b { display:block; font-family:var(--font-serif); font-size:32px; font-weight:300; color:var(--gold); margin-bottom:13px; }
    .uklp-management-step strong { display:block; color:var(--white); font-size:14px; font-weight:500; margin-bottom:7px; }
    .uklp-management-step p { color:rgba(255,255,255,.55); font-size:12px; line-height:1.65; }
    .uklp-ongoing { margin-top:22px; padding:34px 38px; border:1px solid rgba(255,255,255,.13); border-left:3px solid var(--gold); }
    .uklp-ongoing strong { display:block; color:var(--gold-light); font-size:10px; letter-spacing:.17em; text-transform:uppercase; margin-bottom:12px; }
    .uklp-ongoing p { color:rgba(255,255,255,.69); font-size:15px; line-height:1.75; }

    .uklp-gustavo { display:grid; grid-template-columns:180px 1fr; gap:45px; align-items:center; max-width:960px; margin:0 auto; }
    .uklp-gustavo-mark { width:160px; height:160px; border:1px solid var(--gold); display:flex; align-items:center; justify-content:center; font-family:var(--font-serif); font-size:100px; color:var(--gold); line-height:1; }
    .uklp-gustavo blockquote { font-family:var(--font-serif); font-size:clamp(22px,2.4vw,31px); font-style:italic; line-height:1.5; color:var(--navy); margin:0 0 25px; }
    .uklp-gustavo strong { color:var(--navy); font-size:14px; }
    .uklp-gustavo span { display:block; color:var(--text-light); font-size:12px; line-height:1.6; margin-top:5px; }

    .uklp-process { display:grid; grid-template-columns:repeat(3,1fr); gap:2px; background:var(--border); margin-top:58px; }
    .uklp-process-card { background:var(--white); padding:38px 32px; }
    .uklp-process-card b { display:block; font-family:var(--font-serif); color:rgba(180,154,98,.45); font-size:48px; font-weight:300; line-height:1; margin-bottom:14px; }
    .uklp-process-card strong { display:block; color:var(--navy); font-size:14px; margin-bottom:9px; }
    .uklp-process-card p { font-size:12px; line-height:1.7; color:var(--text-mid); }
    .uklp-logistics { display:grid; grid-template-columns:.9fr 1.1fr; gap:64px; align-items:center; margin-top:92px; padding-top:88px; border-top:1px solid var(--border); }
    .uklp-logistics-list { columns:2; column-gap:30px; list-style:none; }
    .uklp-logistics-list li { break-inside:avoid; position:relative; padding:0 0 15px 17px; color:var(--text-mid); font-size:13px; line-height:1.55; }
    .uklp-logistics-list li::before { content:""; position:absolute; left:0; top:7px; width:5px; height:5px; background:var(--gold); }

    .uklp-story-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:16px; margin-top:54px; }
    .uklp-story { display:grid; grid-template-columns:42% 58%; min-height:390px; background:var(--white); border:1px solid var(--border); overflow:hidden; }
    .uklp-story-media { position:relative; min-height:300px; overflow:hidden; }
    .uklp-story-media img { width:100%; height:100%; object-fit:cover; }
    .uklp-story-copy { padding:34px 30px; display:flex; flex-direction:column; }
    .uklp-story-copy blockquote { font-family:var(--font-serif); font-size:16px; font-style:italic; line-height:1.65; color:var(--text); margin:0 0 24px; }
    .uklp-story-copy strong { margin-top:auto; color:var(--navy); font-size:13px; }
    .uklp-story-copy span { display:block; margin-top:5px; color:var(--gold); font-size:10px; line-height:1.45; letter-spacing:.06em; text-transform:uppercase; }

    .uklp-seth { display:grid; grid-template-columns:1.05fr .95fr; min-height:520px; }
    .uklp-seth-media img { width:100%; height:100%; object-fit:cover; }
    .uklp-seth-copy { padding:72px; background:var(--navy); display:flex; flex-direction:column; justify-content:center; }
    .uklp-seth-copy blockquote { font-family:var(--font-serif); color:var(--white); font-size:clamp(24px,2.5vw,36px); font-style:italic; line-height:1.45; margin:0 0 28px; }
    .uklp-seth-copy strong { color:var(--gold-light); font-size:11px; letter-spacing:.14em; text-transform:uppercase; }

    .uklp-players { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:54px; }
    .uklp-proof-transition { max-width:760px; margin:0 auto 48px; text-align:center; }
    .uklp-proof-transition .uklp-copy { margin-top:18px; }
    .uklp-players--five { grid-template-columns:repeat(6,1fr); margin-top:0; }
    .uklp-players--five > .uklp-player { grid-column:span 2; }
    .uklp-players--five > .uklp-player:nth-child(n+4) { grid-column:span 3; }
    .uklp-player { background:var(--white); border:1px solid var(--border); overflow:hidden; display:flex; flex-direction:column; }
    .uklp-player-media { height:190px; padding:15px; background:var(--white); overflow:hidden; display:flex; align-items:center; justify-content:center; border-bottom:1px solid var(--border); }
    .uklp-player-media img { width:min(100%,240px); height:160px; object-fit:contain; object-position:center; }
    .uklp-player-body { padding:28px; display:flex; flex:1; flex-direction:column; }
    .uklp-player blockquote { font-family:var(--font-serif); font-style:italic; font-size:15px; line-height:1.65; color:var(--text); margin:0 0 24px; }
    .uklp-player strong { margin-top:auto; display:block; color:var(--navy); font-size:13px; }
    .uklp-player span { display:block; color:var(--gold); font-size:11px; margin-top:4px; }

    .uklp-final { position:relative; overflow:hidden; padding:120px 0; background:var(--uk-navy); }
    .uklp-final::before { content:""; position:absolute; inset:0; background:url('/assets/optimized/hero-athletes.webp') center/cover no-repeat; opacity:.14; }
    .uklp-final-inner { position:relative; max-width:820px; margin:0 auto; text-align:center; padding:0 30px; }
    .uklp-final .uklp-copy { max-width:620px; margin:24px auto 36px; }
    .uklp-price-note { margin-top:24px; color:rgba(255,255,255,.5); font-size:11px; letter-spacing:.06em; }
    .uklp-footer { padding:34px 48px; background:#050d18; color:rgba(255,255,255,.5); display:flex; justify-content:space-between; align-items:center; font-size:11px; }
    .uklp-footer a { color:var(--gold-light); }
    .uklp-mobile-cta { display:none; }

    @media(max-width:980px) {
      .uklp-shell,.uklp-journey-rail-inner { width:min(100% - 56px,1180px); }
      .uklp-hero-inner { padding:0 44px; }
      .uklp-topbar { padding:0 28px; }
      .uklp-intro-grid,.uklp-logistics { grid-template-columns:1fr; gap:48px; }
      .uklp-advantage { grid-template-columns:1fr; }
      .uklp-advantage-title { border-right:0; border-bottom:1px solid rgba(255,255,255,.12); }
      .uklp-chapters { grid-template-columns:repeat(2,1fr); }
      .uklp-chapter:nth-child(5n) { border-right:1px solid rgba(255,255,255,.1); }
      .uklp-chapter:nth-child(2n) { border-right:0; }
      .uklp-chapter:nth-child(n+6) { border-bottom:1px solid rgba(255,255,255,.1); }
      .uklp-chapter:nth-child(n+9) { border-bottom:0; }
      .uklp-story-grid { grid-template-columns:1fr; }
      .uklp-players { grid-template-columns:1fr 1fr; }
      .uklp-players--five > .uklp-player { grid-column:auto; }
      .uklp-league-grid { grid-template-columns:repeat(3,1fr); }
      .uklp-knowledge-row { grid-template-columns:.42fr 1.58fr; gap:38px; }
      .uklp-visual-pause.four { grid-template-columns:1fr 1fr; grid-template-rows:300px 210px 210px; }
      .uklp-visual-pause.four figure:first-child { grid-column:1 / 3; grid-row:auto; }
      .uklp-visual-pause.four figure:nth-child(4) { grid-column:1 / 3; }
      .uklp-visual-pause.two,.uklp-visual-pause.three { grid-template-columns:1fr 1fr; grid-template-rows:260px; }
      .uklp-visual-pause.three figure:first-child { grid-column:1 / 3; }
      .uklp-seth-copy { padding:50px; }
    }
    @media(max-width:700px) {
      .uklp-shell,.uklp-journey-rail-inner { width:calc(100% - 40px); }
      .uklp-topbar { height:66px; padding:0 20px; }
      .uklp-topbar-note,.uklp-topbar .uklp-btn { display:none; }
      .uklp-brand { font-size:18px; }
      .uklp-hero { min-height:680px; height:auto; padding:104px 0 76px; align-items:center; }
      .uklp-hero-media { background-position:58% center; }
      .uklp-hero::after { background:linear-gradient(90deg,rgba(5,15,28,.96),rgba(5,15,28,.5)),linear-gradient(0deg,rgba(5,15,28,.72),transparent 55%); }
      .uklp-hero-inner { width:100%; margin-top:28px; padding:0 20px; }
      .uklp-hero h1 { font-size:clamp(48px,15vw,68px); line-height:.94; }
      .uklp-hero-lead { font-size:16px; }
      .uklp-hero-actions { display:flex; flex-direction:column; align-items:stretch; gap:10px !important; }
      .uklp-journey-rail-inner { grid-template-columns:1fr 1fr; }
      .uklp-journey-point { min-height:76px; padding:15px 12px 14px 0; }
      .uklp-journey-point:nth-child(2)::after { display:none; }
      .uklp-journey-point:not(:last-child)::after { right:10px; top:26px; }
      .uklp-proofbar { grid-template-columns:1fr 1fr; }
      .uklp-proof { border-bottom:1px solid var(--border); }
      .uklp-proof:nth-child(2n) { border-right:0; }
      .uklp-section { padding:78px 0; }
      .uklp-opportunity-stats { grid-template-columns:1fr 1fr; }
      .uklp-market-stat { min-height:150px; padding:24px 18px; border-bottom:1px solid rgba(180,154,98,.48); }
      .uklp-market-stat:nth-child(2n) { border-right:0; }
      .uklp-market-stat:nth-child(n+3) { border-bottom:0; }
      .uklp-market-stat strong { font-size:40px; }
      .uklp-heading { font-size:44px; }
      .uklp-mosaic { grid-template-columns:1fr 1fr; grid-template-rows:280px 175px; }
      .uklp-mosaic figure:first-child { grid-column:1 / 3; grid-row:auto; }
      .uklp-advantage-title { padding:38px 28px; }
      .uklp-advantage-grid { grid-template-columns:1fr; }
      .uklp-advantage-item { padding:28px; border-right:0; border-bottom:1px solid rgba(255,255,255,.1); }
      .uklp-chapter { min-height:195px; padding:24px 20px; }
      .uklp-system-grid,.uklp-options { grid-template-columns:1fr; }
      .uklp-guide-principles,.uklp-visa-band,.uklp-route-grid,.uklp-cost-grid,.uklp-timeline { grid-template-columns:1fr; }
      .uklp-knowledge-row { grid-template-columns:1fr; gap:24px; padding:56px 0; }
      .uklp-chapter-label { position:static; }
      .uklp-chapter-label b { font-size:48px; }
      .uklp-facts { grid-template-columns:1fr; }
      .uklp-league-grid { grid-template-columns:1fr; }
      .uklp-league-card { min-height:0; }
      .uklp-visual-pause.four,.uklp-visual-pause.two,.uklp-visual-pause.three { grid-template-columns:1fr; grid-template-rows:none; gap:8px; }
      .uklp-visual-pause.four figure:first-child,.uklp-visual-pause.four figure:nth-child(4),.uklp-visual-pause.three figure:first-child { grid-column:auto; }
      .uklp-visual-pause figure { height:230px; }
      .uklp-system-card { padding:38px 28px; }
      .uklp-leagues { grid-template-columns:1fr; }
      .uklp-management-grid,.uklp-process { grid-template-columns:1fr 1fr; }
      .uklp-option { padding:34px 28px; }
      .uklp-gustavo { grid-template-columns:1fr; gap:24px; }
      .uklp-gustavo-mark { width:84px; height:84px; font-size:60px; }
      .uklp-logistics-list { columns:1; }
      .uklp-story { grid-template-columns:1fr; }
      .uklp-story-media { min-height:300px; }
      .uklp-seth { grid-template-columns:1fr; }
      .uklp-seth-media { height:340px; }
      .uklp-seth-copy { padding:42px 28px; }
      .uklp-players { grid-template-columns:1fr; }
      .uklp-footer { padding:30px 20px 88px; flex-direction:column; gap:10px; text-align:center; }
      .uklp-mobile-cta { display:flex; position:fixed; z-index:120; left:12px; right:12px; bottom:12px; min-height:54px; align-items:center; justify-content:center; background:var(--gold); color:var(--uk-navy); box-shadow:0 12px 32px rgba(0,0,0,.35); font-size:12px; font-weight:600; letter-spacing:.12em; text-transform:uppercase; }
    }
  

/* static-site additions: links that used to be JS buttons */
:where(a[data-btn]){display:inline-block;min-height:0;font-family:var(--font-sans);border:none;background:none;cursor:pointer;text-align:center;line-height:normal;box-sizing:border-box;-webkit-appearance:none;appearance:none;text-decoration:none;color:inherit}
:where(a.nav-logo){display:inline-block}
.page{display:block}
[role="link"]{cursor:pointer}
.site-footer-nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px 24px}


/* Search clarity and mobile usability */
.service-card,.news-feature,.ath-pathway-cell{color:inherit;text-decoration:none}
.ocr-summary{padding:42px max(24px,calc((100% - 1120px)/2));background:var(--cream,#f7f4ee);color:var(--navy,#0d1b2e)}
.ocr-summary h2{font-family:var(--font-serif,serif);font-size:clamp(27px,3vw,38px);font-weight:400;margin-bottom:18px}
.ocr-summary dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0}
.ocr-summary dt{font-size:14px;font-weight:600;margin-bottom:7px}.ocr-summary dd{margin:0;font-size:16px;line-height:1.7}
.ocr-summary a,.ocr-sources a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.ocr-sources{max-width:900px;margin:auto;padding:48px 24px;font-size:16px;line-height:1.8}.ocr-sources h2{font-family:var(--font-serif);font-size:32px}.ocr-sources li{margin:10px 0}
.ocr-byline{font-size:14px;line-height:1.7;margin:20px 0}.ocr-byline a{color:inherit;text-decoration:underline}
.hero-title.ocr-descriptive-title{font-size:clamp(38px,5.4vw,76px);max-width:1050px;margin-left:auto;margin-right:auto;line-height:1.1}
@media(max-width:900px){.ocr-summary dl{grid-template-columns:1fr 1fr}.hero-title.ocr-descriptive-title{font-size:clamp(34px,6vw,54px)}.hero-content{padding-left:24px;padding-right:24px}}
@media(max-width:600px){.ocr-summary dl{grid-template-columns:1fr}.ocr-summary{padding:32px 24px}.ocr-summary dd{font-size:16px}}
@media(prefers-reduced-motion:reduce){.fade-in{opacity:1!important;transform:none!important;transition:none!important}html{scroll-behavior:auto!important}}

.nav-hamburger{background:transparent;border:0;min-width:44px;min-height:44px;align-items:center;justify-content:center}
.mobile-menu{overflow-y:auto;box-sizing:border-box}
@media(max-width:1000px) and (max-height:550px){.mobile-menu{justify-content:flex-start;padding:70px 24px 32px;gap:16px}.mobile-nav-link{font-size:26px}}

@media(max-width:700px){[style*="display:grid"]>*{min-width:0}.ocr-sources a{overflow-wrap:anywhere}}
