/* Configurable blue-and-white visual system. */
:root {
  --pitch-ink: var(--theme-navy);
  --pitch-deep: var(--theme-navy-deep);
  --floodlight: var(--theme-cream);
  --match-white: #ffffff;
  --emirates-red: var(--theme-orange);
  --sand-gold: var(--brand-light, #b9e0ff);
  --tactical-grey: var(--theme-muted);
  --theme-navy: var(--brand-navy, #071b33);
  --theme-navy-deep: var(--brand-deep, #041324);
  --theme-orange: var(--brand-blue, #1479d3);
  --theme-coral: var(--brand-light, #7fc8ff);
  --theme-cream: var(--brand-surface, #f1f7fd);
  --theme-lilac: color-mix(in srgb, var(--theme-cream) 86%, var(--theme-coral));
  --theme-ink: var(--brand-ink, #10243e);
  --theme-muted: var(--brand-muted, #62758a);
  --theme-line: color-mix(in srgb, var(--theme-navy) 13%, transparent);
  --theme-shadow: 0 24px 70px color-mix(in srgb, var(--theme-navy) 14%, transparent);
  --theme-gradient: linear-gradient(125deg, var(--theme-navy), var(--theme-orange) 62%, var(--theme-coral));
}

html { background: var(--theme-cream); }
body { background: var(--theme-cream); color: var(--theme-ink); font-family: "IBM Plex Sans", system-ui, sans-serif; }
h1, h2, h3, [dir="rtl"] h1, [dir="rtl"] h2, [dir="rtl"] h3 { font-family: "IBM Plex Sans", system-ui, sans-serif; font-weight: 700; letter-spacing: -.035em; line-height: 1.02; }
p { line-height: 1.7; }
a { text-underline-offset: .2em; }

.trials-header { background: var(--theme-navy); color: #fff; box-shadow: 0 8px 30px color-mix(in srgb, var(--theme-navy-deep) 12%, transparent); }
.contact-bar { background: var(--theme-gradient); border: 0; color: rgba(255, 255, 255, .82); }
.contact-bar a { color: #fff; }
.header-main { min-height: 5.5rem; }
.header-main .brand { color: #fff; }
.brand-mark { border: 0; border-radius: 12px; background: var(--theme-gradient); color: #fff; box-shadow: 0 8px 18px color-mix(in srgb, var(--theme-orange) 28%, transparent); font-family: "IBM Plex Sans", system-ui, sans-serif; font-weight: 800; }
.header-main .brand-mark { width: 3rem; height: 3rem; }
.header-contact .contact-symbol { color: var(--theme-orange); }
.header-profile { border-inline-start-color: rgba(255, 255, 255, .2); }
.header-profile span { color: var(--theme-coral); }
.trials-nav { background: var(--theme-navy-deep); border-color: rgba(255, 255, 255, .12); }
.trials-nav > a, .nav-dropdown > summary { color: rgba(255, 255, 255, .82); }
.trials-nav > a:hover, .nav-dropdown > summary:hover { color: #fff; background: rgba(255, 255, 255, .06); }
.trials-nav > .nav-cta, .nav-cta { background: var(--theme-gradient); border: 0; color: #fff !important; border-radius: 999px; font-weight: 700; }
.lang-toggle { border-color: rgba(255, 255, 255, .2); border-radius: 999px; }
.nav-dropdown-links { border-color: rgba(255, 255, 255, .12); background: var(--theme-navy-deep); }
.registration-banner { background: var(--theme-coral); color: var(--theme-navy); }

.hero, .page-hero, .registration-hero { background: var(--theme-navy); color: #fff; }
.pitch-scene, .registration-hero .pitch-scene { background: radial-gradient(circle at 82% 14%, color-mix(in srgb, var(--theme-orange) 34%, transparent), transparent 24rem), radial-gradient(circle at 8% 74%, color-mix(in srgb, var(--theme-coral) 24%, transparent), transparent 26rem), linear-gradient(145deg, var(--theme-navy-deep), var(--theme-navy)); }
.hero::after, .page-hero::after { content: ""; position: absolute; width: min(38rem, 55vw); aspect-ratio: 1; inset: 14% 6% auto auto; border: 1px solid rgba(255, 255, 255, .12); border-radius: 50%; box-shadow: 0 0 0 3rem color-mix(in srgb, var(--theme-orange) 4%, transparent), 0 0 0 7rem color-mix(in srgb, var(--theme-coral) 2%, transparent); pointer-events: none; }
.hero-content { position: relative; z-index: 1; }
.hero h1 { max-width: 11ch; font-size: clamp(3.6rem, 8vw, 7.8rem); }
.hero-copy, .page-intro { color: rgba(255, 255, 255, .76); }
.verified-source { border: 0; border-radius: 999px; background: rgba(255, 255, 255, .08); color: var(--theme-coral); padding: .55rem .85rem; }
.hero-status { border-color: rgba(255, 255, 255, .24); color: rgba(255, 255, 255, .72); }
.hero-status span, .trial-status, dt { color: var(--theme-coral); }

.button { min-height: 3rem; border: 0; border-radius: var(--theme-button-radius, 999px); padding-inline: 1.3rem; transition: transform 180ms ease, box-shadow 180ms ease, background 180ms ease; }
.button:hover, .button:focus-visible { transform: translateY(-2px); box-shadow: 0 12px 25px color-mix(in srgb, var(--theme-navy) 15%, transparent); }
.button-primary { background: var(--theme-gradient); color: #fff; }
.button-secondary { background: #ebe8f5; color: var(--theme-navy) !important; border: 1px solid transparent; }
.button-whatsapp { background: #13845d; }
.hero .button-secondary, .final-cta .button-secondary { background: rgba(255, 255, 255, .1); color: #fff !important; border-color: rgba(255, 255, 255, .2); }

.section, .page-content, .public-page .section { background: var(--theme-cream); color: var(--theme-ink); }
.section-next, .process, .information-section { background: var(--theme-lilac); }
.section-line { background: var(--theme-gradient); }
.section-heading p, .split-section p, .scouting-copy p, .media-section p, .page-content p { color: var(--theme-muted); }
.trial-row, .event-card, .programme-directory, .programme-card, .article-card, .form-panel, .account-application, .empty-state, .experience-card, .registration-panel, .application-panel { border: 1px solid var(--theme-line); border-radius: var(--theme-card-radius, 1.25rem); box-shadow: var(--theme-shadow); overflow: hidden; }
.trial-row { background: #fff; }
.trial-row:hover, .programme-card:hover, .article-card:hover { transform: translateY(-3px); box-shadow: 0 28px 75px color-mix(in srgb, var(--theme-navy) 18%, transparent); }
.trial-row, .programme-card, .article-card, .event-card, .form-panel, .account-application { transition: transform 180ms ease, box-shadow 180ms ease; }
.trial-row p, dd, .event-content p { color: var(--theme-muted); }
.trial-row dl, .event-content dl { border-color: var(--theme-line); }
.event-date, .programme-directory h2, .experience-card > h2 { background: var(--theme-navy); }
.event-date { border: 0; }
.event-date span, .programme-number, .audience-index { color: var(--theme-orange); }
.programme-card { border-top: 4px solid var(--theme-orange); }
.programme-directory a { border-color: var(--theme-line); }
.status-badge { border-color: var(--theme-orange); color: var(--theme-orange); border-radius: 999px; }

.proof-strip { border-color: var(--theme-navy); }
.proof-strip div { border-color: var(--theme-line); }
.proof-strip strong { color: var(--theme-navy); }
.scouting, .media-section, .final-cta, .footer, .directory-footer { background: var(--theme-navy); color: #fff; }
.scouting-grid { border-color: rgba(255, 255, 255, .12); background: rgba(255, 255, 255, .06); }
.final-cta { background: var(--theme-gradient); }
.final-cta p, .scouting-grid p { color: rgba(255, 255, 255, .78); }
.pathway-section .pitch-timeline::before { border-color: color-mix(in srgb, var(--theme-navy) 20%, transparent); }
.pathway-section .pitch-timeline li::before { background: var(--theme-navy); border-color: var(--theme-orange); }

.registration-panel { border: 0; border-top: 5px solid var(--theme-orange); }
.registration-panel > .eyebrow, .eyebrow { color: var(--theme-orange); }
.registration-form input, .registration-form select, .public-page input, .public-page select, .public-page textarea { border-color: var(--theme-line); border-radius: 12px; background: #fff; color: var(--theme-ink); }
.public-page input:focus, .public-page select:focus, .public-page textarea:focus { outline: 3px solid color-mix(in srgb, var(--theme-orange) 20%, transparent); border-color: var(--theme-orange); }
.form-panel { border-top: 5px solid var(--theme-orange); }
.success-notice { border: 0; border-inline-start: 4px solid #13845d; border-radius: 14px; background: #e9f7ef; }
.registration-errors { border-radius: 14px; }
.directory-footer { border-top: 1px solid rgba(255, 255, 255, .12); }
.footer-column a:hover { color: var(--theme-coral); }
.footer-location { color: var(--theme-coral); }
.footer-bottom { border-color: rgba(255, 255, 255, .14); }

.application-shell { background: radial-gradient(circle at 86% 8%, color-mix(in srgb, var(--theme-orange) 25%, transparent), transparent 24rem), radial-gradient(circle at 10% 82%, color-mix(in srgb, var(--theme-coral) 22%, transparent), transparent 25rem), var(--theme-navy); }
.application-panel { border: 0; border-top: 5px solid var(--theme-orange); }
.application-panel input, .application-panel select, .application-panel textarea { border-radius: 12px; }
.stepper span[data-active="true"] { background: var(--theme-gradient); }

@media (max-width: 980px) { .hero::after, .page-hero::after { width: 24rem; opacity: .6; } }
@media (max-width: 640px) { .hero h1 { font-size: clamp(3.25rem, 15vw, 5.2rem); } .trial-row, .programme-card, .article-card, .event-card, .form-panel, .account-application, .registration-panel { border-radius: 18px; } }
[dir="rtl"] .hero::after, [dir="rtl"] .page-hero::after { inset-inline-start: 6%; inset-inline-end: auto; }
