/* Self-hosted Barlow trial pairing. Original brand faces remain local fallbacks;
   their webfont files have not been supplied. */
@font-face { font-family: "Barlow"; src: url("assets/fonts/Barlow-Regular.ttf") format("truetype"); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: "Barlow"; src: url("assets/fonts/Barlow-SemiBold.ttf") format("truetype"); font-weight: 600; font-style: normal; font-display: swap; }
@font-face { font-family: "Barlow"; src: url("assets/fonts/Barlow-Bold.ttf") format("truetype"); font-weight: 700; font-style: normal; font-display: swap; }
@font-face { font-family: "Barlow"; src: url("assets/fonts/Barlow-MediumItalic.ttf") format("truetype"); font-weight: 500; font-style: italic; font-display: swap; }
@font-face { font-family: "Barlow Condensed"; src: url("assets/fonts/BarlowCondensed-Bold.ttf") format("truetype"); font-weight: 700; font-style: normal; font-display: swap; }
@font-face {
  font-family: "Unity Triumvirate";
  src: local("Triumvirate Cond"), local("Triumvirate Condensed"), local("TriumvirateCond"), local("Triumvirate-Cond");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Unity Burlingame";
  src: local("Burlingame Medium Pro Italic"), local("Burlingame Pro Medium Italic"), local("BurlingamePro-MediumItalic");
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}
:root {
  --display: "Barlow Condensed", "Unity Triumvirate", UnityDisplay, "Arial Narrow", sans-serif;
  --muted: #bab6ad;
}
body { font-family: "Barlow", Arial, Helvetica, sans-serif; font-size: 16px; line-height: 1.7; }
h1, h2, .statement, .event-emblem, .media-card h3, .footer-name { font-weight: 700; }
.small-heading { font-family: "Barlow", Arial, Helvetica, sans-serif; }
h1 { font-size: clamp(56px, 6.2vw, 88px); line-height: 1.04; }
h2 { font-size: clamp(42px, 4.2vw, 60px); line-height: 1.08; }
.page-hero h1 { font-size: clamp(52px, 5.4vw, 76px); line-height: 1.06; }
.page-hero { padding-block: 52px 44px; }
.hero-grid { padding-block: 40px 32px; }
.page-hero>p, .hero-copy>p, .event-copy p,
.section-heading>p, .compete-copy>p+p, .about p+p,
.split-panel p+p, .body-copy, .audience-grid p { font-size: 16px; line-height: 1.75; }
.hero-copy>p { max-width: 440px; }
.eyebrow, .media-card .eyebrow { font-size: 13px; letter-spacing: .12em; line-height: 1.6; }
.hero-mark { font-size: 13px; color: #b4ac9d; }
.lead { font-family: "Barlow", "Unity Burlingame", Arial, Helvetica, sans-serif; font-style: italic; font-weight: 500; font-size: clamp(22px, 2vw, 28px); line-height: 1.5; }
nav a { font-size: 16px; letter-spacing: 0; }
nav { gap: 28px; }
.button, .text-link, .text-button { font-size: 16px; line-height: 1.5; }
.button { padding: 15px 21px; min-height: 48px; }
.text-link, .text-button { min-height: 44px; }
.text-button { display: inline-flex; align-items: center; }
.nav-cta { min-height: 48px; }
.menu-button { font-size: 16px; min-height: 44px; }
.preview-note, .preview-note span { font-size: 13px; line-height: 1.6; letter-spacing: .04em; }
.art-caption { font-size: 13px; letter-spacing: .05em; line-height: 1.6; }
.scroll-link { font-size: 13px; letter-spacing: .1em; min-height: 44px; }
.event-emblem span { font-size: 13px; letter-spacing: .15em; }
.media-card { min-height: 280px; }
.media-card h3 { font-size: 30px; line-height: 1.15; }
.media-footer { font-size: 14px; line-height: 1.6; }
.archive-note { font-size: 14px; color: var(--muted); line-height: 1.7; }
.compete .button { margin-top: 25px; }
.contact .text-link, .social-links { font-size: 16px; }
.social-links a { min-height: 44px; display: inline-flex; align-items: center; }
footer { font-size: 14px; letter-spacing: .025em; }
footer>a:last-child { min-height: 44px; display: inline-flex; align-items: center; }
.footer-name { font-size: 32px; }
.footer-name span { font-size: 11px; line-height: 1.4; letter-spacing: .035em; }
.small-heading, .application-sidebar .small-heading, .form-panel legend { font-size: 26px; line-height: 1.35; }
.field-intro, .sidebar-note p, .draft-notice, .notice, .form-status,
.draft-controls p, .field small { font-size: 14px; line-height: 1.75; }
.field label { font-size: 16px; line-height: 1.5; }
.field label>span { font-size: 14px; }
.field input, .field select, .field textarea { font-size: 16px; }
.field input::placeholder, .field textarea::placeholder { font-size: 16px; color: #aaa498; }
.step-list li { font-size: 16px; }
.step-list li>span { font-size: 14px; color: #b3a58e; }
.sidebar-note .text-link { font-size: 14px; line-height: 1.65; }
.review-list dt { font-size: 14px; letter-spacing: .05em; }
.review-list dd, .copy-export { font-size: 16px; line-height: 1.7; }
.channel-list strong { font-size: 20px; }
.channel-list small { font-size: 14px; }
.about-art .eyebrow { font-size: 13px; }
.audience-grid h2 { font-size: clamp(36px, 3.2vw, 46px); }
.page-cta h2 { font-size: clamp(40px, 4.2vw, 60px); }
.form-panel { padding: 32px; }
@media (max-width: 1100px) { nav { gap: 18px; } }
@media (max-width: 900px) {
  .form-panel { padding: 26px; }
  .media-grid { gap: 20px; }
}
@media (max-width: 620px) {
  h1 { font-size: clamp(48px, 12.6vw, 72px); }
  h2 { font-size: clamp(36px, 10vw, 48px); }
  .page-hero h1 { font-size: clamp(44px, 11.8vw, 64px); }
  .page-hero { padding-block: 34px; }
  .page-hero>p, .hero-copy>p, .section-heading>p, .event-copy p,
  .compete-copy>p+p, .about p+p, .split-panel p+p, .body-copy { font-size: 16px; }
  .eyebrow, .media-card .eyebrow { font-size: 13px; letter-spacing: .09em; }
  .button, .form-actions .button, .form-navigation .button,
  .text-link, .contact .text-link { font-size: 16px; }
  .button, .form-navigation .button { padding: 14px 17px; }
  .button { max-width: 100%; white-space: normal; text-align: left; }
  .hero-art { margin-top: 3px; }
  .art-caption { font-size: 12px; flex-wrap: wrap; }
  .preview-note, .preview-note span { font-size: 12px; }
  .media-grid { grid-template-columns: 1fr; gap: 16px; }
  .media-card { min-height: 230px; padding: 25px; }
  .media-card h3 { font-size: 32px; }
  .media-footer { font-size: 14px; }
  .event-emblem span { font-size: 13px; }
  .form-panel { padding: 24px 20px; }
  .application-sidebar .small-heading, .form-panel legend, .small-heading { font-size: 24px; }
  .step-list { gap: 14px; }
  .step-list li { font-size: 14px; line-height: 1.6; }
  .step-list li>span { font-size: 13px; }
  .form-actions { flex-direction: column; align-items: stretch; }
  .form-actions .button { justify-content: center; }
  .audience-grid h2 { font-size: 40px; }
  .contact .text-link { overflow-wrap: anywhere; }
}
