/*
Theme Name: Surf Eagle — Eagle River Park Coalition
Theme URI: https://surfeagle.org/
Author: Eagle River Park Coalition
Description: Fundraising & community site for the Eagle River Park Coalition (ERPC). Self-contained theme — Home, About Us, The Plan, Board Members, and Updates page templates. Newsletter forms render via Gravity Forms.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: surfeagle
*/

/* ============================================================
   FONTS
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Anton&family=Archivo:wght@400;500;600;700;800&family=Spline+Sans+Mono:wght@400;500;600&display=swap');

@font-face {
  font-family: 'Heavitas';
  src: url('assets/fonts/Heavitas.ttf') format('truetype');
  font-weight: 400; font-style: normal; font-display: swap;
}

/* ============================================================
   TOKENS
   ============================================================ */
:root {
  --orange-700:#B84A12; --orange-600:#D45A18; --orange-500:#EC6A22; --orange-400:#F2854A; --orange-300:#F7A878; --orange-100:#FBE2D2;
  --river-900:#102733; --river-800:#163A4A; --river-700:#1C5063; --river-600:#246E82; --river-500:#2E879D; --river-400:#4FA3B8; --river-300:#84C2D2; --river-100:#D6ECF1;
  --navy-950:#0C161E; --navy-900:#101E29; --navy-800:#142936; --navy-700:#1E3848;
  --gold-600:#D98E22; --gold-500:#F2A93B; --gold-300:#F8CC82; --gold-100:#FCEED0;
  --green-700:#3C5526; --green-600:#4E6E32; --green-500:#5E7B3A; --green-300:#9DB377; --green-100:#E2E8D2;
  --clay-600:#A23B2A; --clay-500:#C04A35; --clay-300:#DD9182; --clay-100:#F4DAD3;
  --stone-950:#0F181E; --stone-900:#18242B; --stone-800:#283740; --stone-700:#3D4D56; --stone-600:#5C6B73; --stone-500:#7E8B91; --stone-400:#A6AFB1; --stone-300:#C9CDC8; --stone-200:#E0DDD3; --stone-150:#ECE7DB; --stone-100:#F3EFE5;
  --foam:#F9F6EF; --white:#FFFFFF;

  --brand:var(--orange-500); --brand-hover:var(--orange-600); --brand-press:var(--orange-700); --brand-contrast:var(--white);
  --surface-page:var(--foam); --surface-card:var(--white); --surface-sunk:var(--stone-100);
  --text-strong:var(--stone-900); --text-body:var(--stone-800); --text-muted:var(--stone-600); --text-faint:var(--stone-500);
  --text-inverse:var(--foam); --text-inverse-mut:#9FB2BD; --text-brand:var(--orange-600); --text-link:var(--river-600);
  --border:var(--stone-200); --border-strong:var(--stone-300); --border-inverse:#2B4150;
  --ring:color-mix(in srgb, var(--river-500) 55%, transparent);
  --scrim-bottom:linear-gradient(180deg, transparent 0%, rgba(12,22,30,0) 35%, rgba(12,22,30,.82) 100%);

  --font-display:'Heavitas','Anton','Oswald','Arial Narrow',sans-serif;
  --font-sans:'Archivo','Helvetica Neue',Arial,sans-serif;
  --font-mono:'Spline Sans Mono',ui-monospace,'SFMono-Regular',Menlo,monospace;

  --text-2xs:.6875rem; --text-xs:.75rem; --text-sm:.875rem; --text-base:1rem; --text-md:1.125rem; --text-lg:1.375rem; --text-xl:1.75rem; --text-2xl:2.25rem; --text-3xl:3rem; --text-4xl:4rem; --text-5xl:5.5rem; --text-6xl:7.5rem;

  --space-2:.5rem; --space-3:.75rem; --space-4:1rem; --space-5:1.5rem; --space-6:2rem; --space-7:2.5rem; --space-8:3rem;
  --container:1200px;
  --control-h-sm:2rem; --control-h:2.75rem; --control-h-lg:3.25rem;

  --radius-md:8px; --radius-lg:12px; --radius-xl:18px; --radius-pill:999px;
  --shadow-sm:0 1px 3px rgba(15,26,36,.08),0 1px 2px rgba(15,26,36,.04);
  --shadow-lg:0 12px 28px rgba(15,26,36,.14),0 4px 8px rgba(15,26,36,.06);
  --shadow-photo:0 18px 40px rgba(12,22,30,.28);
  --ease-out:cubic-bezier(.22,.61,.36,1); --dur-base:200ms; --dur-fast:120ms;
}

/* ============================================================
   BASE
   ============================================================ */
*,*::before,*::after { box-sizing:border-box; }
html { -webkit-text-size-adjust:100%; }
body.surfeagle {
  margin:0; font-family:var(--font-sans); font-size:var(--text-base); line-height:1.5;
  color:var(--text-body); background:var(--surface-page); -webkit-font-smoothing:antialiased;
}
.surfeagle h1,.surfeagle h2,.surfeagle h3,.surfeagle h4 { margin:0; font-family:var(--font-sans); font-weight:700; line-height:1.18; color:var(--text-strong); }
.surfeagle p { margin:0; text-wrap:pretty; }
.surfeagle img { max-width:100%; display:block; }
.surfeagle a { color:inherit; text-decoration:none; }
.erpc-display { font-family:var(--font-display); font-weight:400; line-height:1.04; letter-spacing:.01em; text-transform:uppercase; }

/* ============================================================
   LAYOUT
   ============================================================ */
.erpc-container { max-width:var(--container); margin:0 auto; }
.erpc-section { padding:clamp(48px,7vw,96px) clamp(20px,5vw,56px); }

/* ---- Eyebrow ---- */
.erpc-eyebrow { display:inline-flex; align-items:center; gap:.6em; font-family:var(--font-sans); font-weight:700; font-size:var(--text-xs); letter-spacing:.18em; text-transform:uppercase; color:var(--text-brand); }
.erpc-eyebrow::before { content:""; width:22px; height:2px; background:currentColor; flex:none; }

/* ---- Badge ---- */
.erpc-badge { display:inline-flex; align-items:center; gap:.45em; padding:.3em .7em; border-radius:var(--radius-pill); font-family:var(--font-sans); font-weight:700; font-size:var(--text-xs); letter-spacing:.06em; text-transform:uppercase; line-height:1; background:var(--stone-150); color:var(--stone-700); }

/* ---- Buttons ---- */
.erpc-btn { display:inline-flex; align-items:center; justify-content:center; gap:.5em; border:1.5px solid transparent; border-radius:var(--radius-pill); font-family:var(--font-sans); font-weight:700; letter-spacing:.01em; line-height:1; cursor:pointer; white-space:nowrap; height:var(--control-h); padding:0 24px; font-size:var(--text-base); transition:background var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out); }
.erpc-btn:hover { text-decoration:none; }
.erpc-btn:active { transform:translateY(1px); }
.erpc-btn--sm { height:var(--control-h-sm); padding:0 16px; font-size:var(--text-sm); }
.erpc-btn--lg { height:var(--control-h-lg); padding:0 32px; font-size:var(--text-md); }
.erpc-btn--primary { background:var(--brand); color:var(--brand-contrast); }
.erpc-btn--primary:hover { background:var(--brand-hover); }
.erpc-btn--outline { background:transparent; color:var(--river-700); border-color:var(--river-500); }
.erpc-btn--outline:hover { background:var(--river-100); }
.erpc-btn--ondark { background:var(--foam); color:var(--navy-900); }
.erpc-btn--ondark:hover { background:#fff; }

/* ============================================================
   NAV
   ============================================================ */
.erpc-nav { position:sticky; top:0; z-index:50; display:flex; align-items:center; justify-content:space-between; padding:14px clamp(20px,5vw,56px); background:rgba(16,30,41,.86); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); border-bottom:1px solid var(--border-inverse); transition:background var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out); }
.erpc-nav__logo img { height:46px; width:auto; display:block; }
.erpc-nav__links { display:flex; align-items:center; gap:28px; }
.erpc-nav__menu { display:flex; gap:24px; }
.erpc-nav__menu a { font-family:var(--font-sans); font-weight:600; font-size:var(--text-sm); color:var(--foam); letter-spacing:.02em; opacity:.9; }
.erpc-nav__menu a:hover,.erpc-nav__menu a.is-active { color:var(--orange-400); opacity:1; }
/* Home: transparent over hero until scrolled */
body.home .erpc-nav { background:transparent; backdrop-filter:none; -webkit-backdrop-filter:none; border-bottom-color:transparent; }
body.home .erpc-nav.is-scrolled { background:rgba(16,30,41,.86); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); border-bottom-color:var(--border-inverse); }

/* ============================================================
   HERO (home) + PAGE HERO
   ============================================================ */
.erpc-hero,.erpc-pagehero { position:relative; display:flex; align-items:flex-end; margin-top:-72px; }
.erpc-hero { min-height:92vh; }
.erpc-pagehero { min-height:54vh; }
.erpc-hero__img,.erpc-pagehero__img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.erpc-hero__scrim,.erpc-pagehero__scrim { position:absolute; inset:0; background:var(--scrim-bottom); }
.erpc-hero__scrim--side { background:linear-gradient(90deg, rgba(12,22,30,.55), rgba(12,22,30,0) 60%); }
.erpc-hero__inner { position:relative; padding:clamp(28px,5vw,72px); padding-bottom:clamp(40px,6vw,88px); max-width:920px; }
.erpc-pagehero__inner { position:relative; padding:clamp(28px,5vw,72px); padding-bottom:clamp(32px,4vw,56px); max-width:880px; }
.erpc-hero h1 { font-family:var(--font-display); text-transform:uppercase; color:var(--foam); font-size:clamp(48px,9vw,120px); line-height:.92; letter-spacing:.01em; margin:18px 0 20px; text-wrap:balance; }
.erpc-pagehero h1 { font-family:var(--font-display); text-transform:uppercase; color:var(--foam); font-size:clamp(40px,7vw,86px); line-height:.94; letter-spacing:.01em; margin:16px 0 14px; text-wrap:balance; }
.erpc-hero__lead { color:var(--text-inverse); font-size:clamp(17px,2vw,21px); max-width:600px; margin-bottom:28px; line-height:1.5; }
.erpc-pagehero__sub { color:var(--text-inverse); font-size:clamp(16px,1.8vw,20px); max-width:600px; line-height:1.5; }
.erpc-accent { color:var(--orange-500); }
.erpc-btnrow { display:flex; gap:14px; flex-wrap:wrap; }

/* ---- Hero newsletter ---- */
.erpc-heroform { margin-top:28px; max-width:460px; }
.erpc-heroform__label { font-family:var(--font-mono); font-size:var(--text-xs); color:var(--foam); letter-spacing:.05em; text-transform:uppercase; margin:0 0 10px; opacity:.85; }

/* ============================================================
   BENEFITS
   ============================================================ */
.erpc-benefits { background:var(--navy-900); }
.erpc-benefits__head { text-align:center; margin-bottom:clamp(32px,4vw,52px); }
.erpc-grid3 { display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(20px,3vw,40px); }
.erpc-benefit { border-top:2px solid var(--orange-500); padding-top:22px; }
.erpc-benefit__n { font-family:var(--font-mono); font-size:var(--text-sm); color:var(--river-400); margin-bottom:14px; }
.erpc-benefit h3 { font-family:var(--font-display); text-transform:uppercase; font-size:clamp(22px,2.6vw,30px); color:var(--foam); line-height:1.05; margin:0 0 12px; }
.erpc-benefit p { font-size:var(--text-md); color:var(--text-inverse-mut); line-height:1.5; }

/* ============================================================
   TWO-COL (community / story / cta)
   ============================================================ */
.erpc-split { display:grid; grid-template-columns:1.1fr .9fr; gap:clamp(32px,5vw,72px); align-items:center; }
.erpc-split--story { grid-template-columns:1.05fr .95fr; align-items:start; }
.erpc-split h2 { font-family:var(--font-display); text-transform:uppercase; font-size:clamp(34px,5vw,60px); line-height:1; margin:16px 0 20px; color:var(--text-strong); }
.erpc-split h2.sm { font-size:clamp(30px,4vw,48px); line-height:1.02; }
.erpc-split p { font-size:var(--text-md); color:var(--text-body); max-width:62ch; margin-bottom:16px; }
.erpc-photo { border-radius:var(--radius-xl); overflow:hidden; box-shadow:var(--shadow-photo); }
.erpc-photo img { width:100%; height:460px; object-fit:cover; }
.erpc-photo--tall img { height:520px; }
.erpc-photo--short img { height:420px; }

/* ============================================================
   NEWS PANEL
   ============================================================ */
.erpc-news { background:var(--navy-900); }
.erpc-newscard { display:grid; grid-template-columns:.95fr 1.05fr; background:var(--surface-card); border:1px solid var(--border); border-radius:var(--radius-xl); overflow:hidden; box-shadow:var(--shadow-lg); }
.erpc-newscard__img { position:relative; min-height:280px; }
.erpc-newscard__img img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.erpc-newscard__body { padding:clamp(28px,4vw,56px); display:flex; flex-direction:column; justify-content:center; }
.erpc-meta { font-family:var(--font-mono); font-size:var(--text-xs); color:var(--text-muted); letter-spacing:.04em; }
.erpc-newscard h3 { font-family:var(--font-display); text-transform:uppercase; font-size:clamp(24px,3vw,38px); line-height:1.04; color:var(--text-strong); margin:0 0 14px; }
.erpc-newscard p { font-size:var(--text-md); color:var(--text-body); line-height:1.5; margin:0 0 22px; max-width:46ch; }
.erpc-readmore { font-family:var(--font-sans); font-weight:700; font-size:var(--text-sm); color:var(--orange-500); letter-spacing:.02em; }
.erpc-rowgap { display:flex; align-items:center; gap:12px; margin-bottom:16px; flex-wrap:wrap; }

/* ============================================================
   BUILD WAVE CTA
   ============================================================ */
.erpc-buildwave { position:relative; padding:clamp(64px,9vw,128px) clamp(20px,5vw,56px); background:var(--river-800); overflow:hidden; }
.erpc-buildwave__img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.22; }
.erpc-buildwave__scrim { position:absolute; inset:0; background:linear-gradient(180deg, rgba(12,22,30,.55), rgba(12,22,30,.78)); }
.erpc-buildwave__inner { position:relative; max-width:760px; margin:0 auto; text-align:center; }
.erpc-buildwave h2 { font-family:var(--font-display); text-transform:uppercase; font-size:clamp(34px,6vw,68px); color:var(--foam); margin:14px 0 22px; line-height:.98; }
.erpc-buildwave p { color:var(--text-inverse); font-size:clamp(17px,2vw,21px); line-height:1.55; margin:0 auto 32px; max-width:620px; }
.erpc-buildwave .erpc-btnrow { justify-content:center; }

/* ============================================================
   PANORAMA
   ============================================================ */
.erpc-panorama { position:relative; height:clamp(280px,42vw,560px); overflow:hidden; }
.erpc-panorama img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 40%; }

/* ============================================================
   PILLARS / CARD GRID
   ============================================================ */
.erpc-cardgrid { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:16px; }
.erpc-tilecard { background:var(--surface-card); border:1px solid var(--border); border-radius:var(--radius-lg); padding:var(--space-6); box-shadow:var(--shadow-sm); }
.erpc-tilecard h3 { font-family:var(--font-sans); font-weight:700; font-size:var(--text-lg); color:var(--text-strong); margin:0 0 10px; }
.erpc-tilecard p { font-size:var(--text-sm); color:var(--text-body); line-height:1.5; }
.erpc-storyblock { max-width:760px; margin-bottom:clamp(36px,5vw,56px); }
.erpc-storyblock h2 { font-family:var(--font-display); text-transform:uppercase; font-size:clamp(32px,5vw,56px); margin:14px 0 22px; color:var(--text-strong); line-height:1; }
.erpc-storyblock p { font-size:var(--text-md); color:var(--text-body); max-width:64ch; margin-bottom:24px; }

/* ============================================================
   BOARD
   ============================================================ */
.erpc-board__head { max-width:820px; }
.erpc-board__head h2 { font-family:var(--font-display); text-transform:uppercase; font-size:clamp(28px,4vw,46px); margin:14px 0 22px; color:var(--text-strong); line-height:1.02; }
.erpc-board__head p { font-size:var(--text-md); color:var(--text-body); margin-bottom:16px; }
.erpc-board__grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:16px; margin-top:clamp(36px,5vw,56px); }
.erpc-member__avatar { width:56px; height:56px; border-radius:50%; background:var(--river-800); color:var(--foam); display:flex; align-items:center; justify-content:center; font-family:var(--font-display); font-size:var(--text-xl); margin-bottom:16px; }
.erpc-member h3 { font-family:var(--font-sans); font-weight:700; font-size:var(--text-lg); color:var(--text-strong); margin:0 0 12px; }
.erpc-member p { font-size:var(--text-sm); line-height:1.5; color:var(--text-body); }
.erpc-member p.muted { color:var(--text-muted); font-style:italic; }
.erpc-cta { background:var(--navy-900); }
.erpc-cta__grid { display:grid; grid-template-columns:1fr 1fr; gap:clamp(32px,5vw,64px); align-items:center; }
.erpc-cta h2 { font-family:var(--font-display); text-transform:uppercase; font-size:clamp(28px,4vw,48px); color:var(--foam); margin:14px 0 18px; line-height:1; }
.erpc-cta p { font-size:var(--text-md); color:var(--text-inverse-mut); margin-bottom:28px; max-width:46ch; }

/* ============================================================
   PLAN
   ============================================================ */
.erpc-plan__intro { max-width:820px; }
.erpc-plan__intro h2 { font-family:var(--font-display); text-transform:uppercase; font-size:clamp(28px,4vw,46px); margin:14px 0 18px; color:var(--text-strong); line-height:1.02; }
.erpc-plan__intro p { font-size:var(--text-md); color:var(--text-body); line-height:1.6; }
.erpc-phases { display:grid; gap:20px; }
.erpc-phase { display:grid; grid-template-columns:120px 1fr; gap:clamp(16px,3vw,40px); background:var(--surface-card); border:1px solid var(--border); border-radius:var(--radius-xl); padding:clamp(24px,3vw,40px); box-shadow:var(--shadow-sm); }
.erpc-phase.is-active { background:var(--navy-900); border-color:var(--river-700); }
.erpc-phase__n { font-family:var(--font-display); font-size:clamp(48px,7vw,84px); line-height:.9; color:var(--border-strong); }
.erpc-phase.is-active .erpc-phase__n { color:var(--orange-500); }
.erpc-phase__head { display:flex; align-items:center; gap:12px; margin-bottom:10px; flex-wrap:wrap; }
.erpc-phase__head h3 { font-family:var(--font-display); text-transform:uppercase; font-size:clamp(22px,2.8vw,34px); color:var(--text-strong); line-height:1; }
.erpc-phase.is-active .erpc-phase__head h3 { color:var(--foam); }
.erpc-phase__goal { font-family:var(--font-mono); font-size:var(--text-xs); color:var(--text-muted); letter-spacing:.04em; text-transform:uppercase; }
.erpc-phase.is-active .erpc-phase__goal { color:var(--gold-500); }
.erpc-phase__desc { font-size:var(--text-md); color:var(--text-body); line-height:1.55; margin:0 0 16px; max-width:62ch; }
.erpc-phase.is-active .erpc-phase__desc { color:var(--text-inverse-mut); }
.erpc-phase ul { list-style:none; margin:0; padding:0; display:grid; gap:8px; }
.erpc-phase li { display:flex; gap:10px; align-items:flex-start; font-size:var(--text-sm); color:var(--text-body); line-height:1.5; }
.erpc-phase.is-active li { color:var(--text-inverse-mut); }
.erpc-phase li::before { content:"\2192"; color:var(--orange-500); font-weight:700; }
.erpc-funders { background:var(--navy-900); }
.erpc-funders__head { margin-bottom:clamp(28px,4vw,44px); }
.erpc-funders__head h2 { font-family:var(--font-display); text-transform:uppercase; font-size:clamp(26px,3.5vw,44px); color:var(--foam); margin:14px 0 0; line-height:1; }
.erpc-funder { border-top:2px solid var(--orange-500); padding-top:18px; }
.erpc-funder__n { font-family:var(--font-mono); font-size:var(--text-sm); color:var(--river-400); margin-bottom:10px; }
.erpc-funder h3 { font-family:var(--font-sans); font-weight:700; font-size:var(--text-lg); color:var(--foam); margin:0 0 8px; }
.erpc-funder p { font-size:var(--text-sm); color:var(--text-inverse-mut); line-height:1.5; }

/* ============================================================
   UPDATES
   ============================================================ */
.erpc-press__head { margin-bottom:clamp(28px,4vw,40px); }
.erpc-articles { display:grid; gap:20px; }
.erpc-article { display:grid; grid-template-columns:300px 1fr; background:var(--surface-card); border:1px solid var(--border); border-radius:var(--radius-xl); overflow:hidden; box-shadow:var(--shadow-sm); }
.erpc-article__img { position:relative; min-height:200px; }
.erpc-article__img img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.erpc-article__body { padding:clamp(24px,3vw,40px); display:flex; flex-direction:column; justify-content:center; }
.erpc-article h3 { font-family:var(--font-display); text-transform:uppercase; font-size:clamp(20px,2.4vw,30px); line-height:1.06; color:var(--text-strong); margin:0 0 12px; }
.erpc-article p { font-size:var(--text-md); color:var(--text-body); line-height:1.5; margin:0 0 18px; max-width:60ch; }

/* ============================================================
   FOOTER
   ============================================================ */
.erpc-footer { background:var(--navy-950); color:var(--foam); padding:clamp(48px,7vw,96px) clamp(20px,5vw,56px) 36px; }
.erpc-footer__top { display:grid; grid-template-columns:1.4fr 1fr; gap:clamp(32px,5vw,72px); align-items:center; padding-bottom:48px; border-bottom:1px solid var(--border-inverse); }
.erpc-footer__top h2 { font-family:var(--font-display); text-transform:uppercase; font-size:clamp(28px,4vw,48px); line-height:1; margin-bottom:14px; }
.erpc-footer__top p { color:var(--text-inverse-mut); font-size:var(--text-md); max-width:48ch; }
.erpc-footer__bar { display:flex; justify-content:space-between; align-items:center; padding-top:28px; flex-wrap:wrap; gap:16px; }
.erpc-footer__bar img { height:46px; width:auto; }
.erpc-footer__links { display:flex; gap:24px; font-family:var(--font-sans); font-size:var(--text-sm); color:var(--text-inverse-mut); }
.erpc-footer__copy { font-family:var(--font-mono); font-size:var(--text-xs); color:var(--stone-600); margin-top:24px; max-width:70ch; }

/* ============================================================
   GRAVITY FORMS — tighten to match the inline look
   ============================================================ */
.erpc-gf .gform_wrapper { margin:0; }
.erpc-gf .gform_fields { display:flex !important; gap:12px; align-items:flex-end; flex-wrap:wrap; }
.erpc-gf .gfield { flex:1 1 220px; margin:0 !important; }
.erpc-gf .gfield_label { font-family:var(--font-sans); font-size:var(--text-xs); font-weight:600; }
.erpc-gf input[type=email],.erpc-gf input[type=text] { width:100%; padding:13px 16px; font-family:var(--font-sans); font-size:var(--text-md); border-radius:var(--radius-md); border:1.5px solid var(--border-strong); }
.erpc-gf .gform_footer { margin:0 !important; padding:0 !important; }
.erpc-gf .gform_button { display:inline-flex; align-items:center; justify-content:center; border:1.5px solid transparent; border-radius:var(--radius-pill); font-family:var(--font-sans); font-weight:700; height:var(--control-h); padding:0 24px; font-size:var(--text-base); background:var(--brand); color:#fff; cursor:pointer; }
.erpc-gf .gform_button:hover { background:var(--brand-hover); }
/* On-dark form fields (hero + footer over dark) */
.erpc-gf--dark .gfield_label { color:var(--foam); }
.erpc-gf--dark input[type=email],.erpc-gf--dark input[type=text] { background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.35); color:var(--foam); }
.erpc-gf--dark input::placeholder { color:rgba(249,246,239,.6); }

/* Fallback inline form (when Gravity Forms not active) */
.erpc-inline-form { display:flex; gap:12px; align-items:flex-end; flex-wrap:wrap; }
.erpc-inline-form input[type=email] { flex:1 1 220px; min-width:0; padding:13px 16px; font-family:var(--font-sans); font-size:var(--text-md); color:var(--foam); background:rgba(12,22,30,.45); border:1px solid rgba(255,255,255,.35); border-radius:var(--radius-md); }
.erpc-inline-form input::placeholder { color:rgba(249,246,239,.65); }

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width:860px) {
  .erpc-nav__menu { display:none; }
  .erpc-grid3,.erpc-split,.erpc-split--story,.erpc-newscard,.erpc-cta__grid,.erpc-footer__top,.erpc-article,.erpc-phase { grid-template-columns:1fr !important; }
  .erpc-phase__n { font-size:48px; }
}
