/* ============================================================
   GCSC 2026 — Custom Styles
   Supplements Tailwind CDN. Import tokens.css before this file.
   ============================================================ */

/* ── Futura Now Headline ─────────────────────────────────────── */
@font-face {
  font-family: 'Futura Now Headline';
  src: url('assets/fonts/FuturaNow/FuturaNowHeadline-Th.otf') format('opentype');
  font-weight: 100; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Headline';
  src: url('assets/fonts/FuturaNow/FuturaNowHeadline-ThIt.otf') format('opentype');
  font-weight: 100; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Headline';
  src: url('assets/fonts/FuturaNow/FuturaNowHeadline-XLt.otf') format('opentype');
  font-weight: 200; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Headline';
  src: url('assets/fonts/FuturaNow/FuturaNowHeadline-XLtIt.otf') format('opentype');
  font-weight: 200; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Headline';
  src: url('assets/fonts/FuturaNow/FuturaNowHeadline-Lt.otf') format('opentype');
  font-weight: 300; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Headline';
  src: url('assets/fonts/FuturaNow/FuturaNowHeadline-LtIt.otf') format('opentype');
  font-weight: 300; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Headline';
  src: url('assets/fonts/FuturaNow/FuturaNowHeadline-Rg.otf') format('opentype');
  font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Headline';
  src: url('assets/fonts/FuturaNow/FuturaNowHeadline-It.otf') format('opentype');
  font-weight: 400; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Headline';
  src: url('assets/fonts/FuturaNow/FuturaNowHeadline-Md.otf') format('opentype');
  font-weight: 500; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Headline';
  src: url('assets/fonts/FuturaNow/FuturaNowHeadline-MdIt.otf') format('opentype');
  font-weight: 500; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Headline';
  src: url('assets/fonts/FuturaNow/FuturaNowHeadline-Bd.otf') format('opentype');
  font-weight: 700; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Headline';
  src: url('assets/fonts/FuturaNow/FuturaNowHeadline-BdIt.otf') format('opentype');
  font-weight: 700; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Headline';
  src: url('assets/fonts/FuturaNow/FuturaNowHeadline-XBd.otf') format('opentype');
  font-weight: 800; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Headline';
  src: url('assets/fonts/FuturaNow/FuturaNowHeadline-XBdIt.otf') format('opentype');
  font-weight: 800; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Headline';
  src: url('assets/fonts/FuturaNow/FuturaNowHeadline-Blk.otf') format('opentype');
  font-weight: 900; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Headline';
  src: url('assets/fonts/FuturaNow/FuturaNowHeadline-BlkIt.otf') format('opentype');
  font-weight: 900; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Headline';
  src: url('assets/fonts/FuturaNow/FuturaNowHeadline-XBlk.otf') format('opentype');
  font-weight: 950; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Headline';
  src: url('assets/fonts/FuturaNow/FuturaNowHeadline-XBlkIt.otf') format('opentype');
  font-weight: 950; font-style: italic; font-display: swap;
}

/* ── Futura Now Text ─────────────────────────────────────────── */
@font-face {
  font-family: 'Futura Now Text';
  src: url('assets/fonts/FuturaNow/FuturaNowText-Th.otf') format('opentype');
  font-weight: 100; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Text';
  src: url('assets/fonts/FuturaNow/FuturaNowText-ThIt.otf') format('opentype');
  font-weight: 100; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Text';
  src: url('assets/fonts/FuturaNow/FuturaNowText-XLt.otf') format('opentype');
  font-weight: 200; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Text';
  src: url('assets/fonts/FuturaNow/FuturaNowText-XLtIt.otf') format('opentype');
  font-weight: 200; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Text';
  src: url('assets/fonts/FuturaNow/FuturaNowText-Lt.otf') format('opentype');
  font-weight: 300; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Text';
  src: url('assets/fonts/FuturaNow/FuturaNowText-LtIt.otf') format('opentype');
  font-weight: 300; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Text';
  src: url('assets/fonts/FuturaNow/FuturaNowText-Rg.otf') format('opentype');
  font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Text';
  src: url('assets/fonts/FuturaNow/FuturaNowText-It.otf') format('opentype');
  font-weight: 400; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Text';
  src: url('assets/fonts/FuturaNow/FuturaNowText-Md.otf') format('opentype');
  font-weight: 500; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Text';
  src: url('assets/fonts/FuturaNow/FuturaNowText-MdIt.otf') format('opentype');
  font-weight: 500; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Text';
  src: url('assets/fonts/FuturaNow/FuturaNowText-Bd.otf') format('opentype');
  font-weight: 700; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Text';
  src: url('assets/fonts/FuturaNow/FuturaNowText-BdIt.otf') format('opentype');
  font-weight: 700; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Text';
  src: url('assets/fonts/FuturaNow/FuturaNowText-XBd.otf') format('opentype');
  font-weight: 800; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Text';
  src: url('assets/fonts/FuturaNow/FuturaNowText-XBdIt.otf') format('opentype');
  font-weight: 800; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Text';
  src: url('assets/fonts/FuturaNow/FuturaNowText-Blk.otf') format('opentype');
  font-weight: 900; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Text';
  src: url('assets/fonts/FuturaNow/FuturaNowText-BlkIt.otf') format('opentype');
  font-weight: 900; font-style: italic; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Text';
  src: url('assets/fonts/FuturaNow/FuturaNowText-XBlk.otf') format('opentype');
  font-weight: 950; font-style: normal; font-display: swap;
}
@font-face {
  font-family: 'Futura Now Text';
  src: url('assets/fonts/FuturaNow/FuturaNowText-XBlkIt.otf') format('opentype');
  font-weight: 950; font-style: italic; font-display: swap;
}

/* ── Base reset ─────────────────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; overflow-x: hidden; }
body {
  margin: 0;
  overflow-x: hidden;
  font-family: 'Futura Now Text', 'Century Gothic', 'Trebuchet MS', Arial, sans-serif;
}

/* ── Nav scrolled state ──────────────────────────────────────── */
#site-nav.nav-scrolled {
  box-shadow: 0 4px 24px rgba(0,0,0,0.25);
}

/* ── Active nav link ─────────────────────────────────────────── */
.nav-link-active {
  color: #f1f2f2 !important;
  opacity: 1 !important;
}

/* ── SHEPHERD card min-height ───────────────────────────────── */
.shepherd-card {
  min-height: 172px;
}

/* ── Form input focus ring ───────────────────────────────────── */
input:focus, textarea:focus, select:focus {
  outline: none;
  border-color: #0aadd6;
  box-shadow: 0 0 0 3px rgba(10,173,214,0.12);
}

input[aria-invalid="true"],
textarea[aria-invalid="true"] {
  border-color: #f06060;
}

/* ── Hamburger → X animation ─────────────────────────────────── */
#nav-mobile-toggle .bar {
  transition: transform 0.2s ease, opacity 0.2s ease;
}
#nav-mobile-toggle.is-open .bar:nth-child(1) { transform: translateY(7px) rotate(45deg); }
#nav-mobile-toggle.is-open .bar:nth-child(2) { opacity: 0; transform: scaleX(0); }
#nav-mobile-toggle.is-open .bar:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* ── Video aspect ratio fallback ─────────────────────────────── */
#video-wrapper iframe {
  width: 100%;
  height: 100%;
}

/* ── Student Pastor btn: mobile keeps text colour unchanged ───── */
@media (max-width: 1023px) {
  #btn-student-pastor.sp-active {
    color: #6b6f8a !important;
  }
}
