:root{
  --navy:       #00205A;
  --navy-mid:   #001847;
  --navy-lt:    #002B7A;
  --navy-dim:   #00102E;
  --gold:       #C8973A;
  --gold-lt:    #E0B86A;
  --gold-dim:   #7A5C22;
  --gold-muted: #B8943F;
  --silver:     #A8B4C4;
  --silver-lt:  #C8D4E0;
  --cream:      #F2EDE4;
  --cream-dim:  rgba(242,237,228,0.6);
  --border:     rgba(168,180,196,0.14);
  --border-gold:rgba(200,151,58,0.28);
  --border-nav: rgba(168,180,196,0.12);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{background:var(--navy-dim);color:var(--cream);font-family:'Outfit',sans-serif;overflow-x:hidden;line-height:1.6;-webkit-font-smoothing:antialiased;}

/* ── POPUP ── */
#popup-overlay{
  position:fixed;inset:0;z-index:9999;
  background:rgba(0,6,20,0.92);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  display:flex;align-items:flex-start;justify-content:center;
  padding:16px;
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
}
#popup-box{
  background:var(--navy-mid);
  border:1px solid var(--border-gold);
  max-width:530px;width:100%;
  position:relative;
  overflow:visible;
  margin:auto;
  flex-shrink:0;
}
#popup-box::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(to right,var(--navy-lt),var(--gold),var(--gold-lt));z-index:1;}
/* Close button — always visible, large tap target */
#popup-close{
  position:absolute;top:-14px;right:-14px;z-index:10;
  background:var(--navy-mid);border:1px solid var(--border-gold);
  color:var(--silver);font-size:16px;cursor:pointer;
  width:34px;height:34px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  transition:color 0.2s,background 0.2s;
}
#popup-close:hover{color:var(--gold);background:rgba(200,151,58,0.1);}
.popup-inner{padding:36px 28px 28px;}
@media(max-width:480px){.popup-inner{padding:28px 20px 22px;}}
.popup-logo{height:48px;width:auto;display:block;margin-bottom:14px;}
.popup-eyebrow{font-size:10px;font-weight:700;letter-spacing:0.35em;text-transform:uppercase;color:var(--silver);display:block;margin-bottom:8px;}
.popup-title{font-family:'Cormorant Garamond',serif;font-size:clamp(22px,5vw,32px);font-weight:700;color:var(--cream);line-height:1.1;margin-bottom:7px;}
.popup-title em{color:var(--gold);font-style:italic;font-weight:300;}
.popup-sub{font-size:13px;color:var(--cream-dim);line-height:1.7;margin-bottom:16px;}
.popup-deadline{display:inline-block;border:1px solid var(--border-gold);background:rgba(200,151,58,0.07);color:var(--gold);font-size:11px;font-weight:600;letter-spacing:0.15em;text-transform:uppercase;padding:6px 14px;margin-bottom:18px;}
.popup-tabs{display:flex;margin-bottom:16px;border:1px solid var(--border);}
.popup-tab{flex:1;padding:11px 6px;text-align:center;font-size:11px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;cursor:pointer;color:var(--silver);background:transparent;border:none;transition:background 0.2s,color 0.2s;min-height:44px;}
.popup-tab.active{background:rgba(200,151,58,0.1);color:var(--gold);}
.popup-panel{display:none;}.popup-panel.active{display:block;}
.pop-input{width:100%;background:var(--navy-dim);border:1px solid var(--border);color:var(--cream);font-family:'Outfit',sans-serif;font-size:16px;padding:13px 15px;outline:none;margin-bottom:10px;transition:border-color 0.25s;-webkit-appearance:none;border-radius:0;}
.pop-input:focus{border-color:var(--gold);}
.pop-input::placeholder{color:var(--silver);}
.pop-btn{width:100%;background:var(--gold);color:var(--navy-dim);font-weight:700;font-size:13px;letter-spacing:0.12em;text-transform:uppercase;padding:15px;border:none;cursor:pointer;transition:background 0.25s;min-height:48px;-webkit-appearance:none;border-radius:0;}
.pop-btn:hover{background:var(--gold-lt);}
/* Skip — prominent, always reachable */
.popup-skip{
  display:block;text-align:center;
  padding:14px 20px;
  border-top:1px solid var(--border);
  font-size:13px;color:var(--silver);cursor:pointer;
  text-decoration:underline;text-underline-offset:3px;
  min-height:48px;line-height:20px;
  background:rgba(0,16,46,0.4);
}
.popup-skip:hover{color:var(--cream);background:rgba(0,24,71,0.5);}
.popup-success{display:none;text-align:center;padding:16px 0;}
.popup-success p{color:var(--gold-lt);font-size:15px;line-height:1.7;}

/* ── NAV ── */
nav{position:fixed;top:0;left:0;right:0;z-index:500;display:flex;align-items:center;justify-content:space-between;padding:0 40px;height:66px;background:rgba(0,16,46,0.96);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border-nav);}
.nav-logo{display:flex;align-items:center;gap:11px;text-decoration:none;cursor:pointer;}
.nav-logo img{height:40px;width:auto;display:block;}
.nav-logo-text{font-family:'Cormorant Garamond',serif;font-size:11px;font-weight:600;letter-spacing:0.18em;text-transform:uppercase;color:var(--silver-lt);line-height:1.4;}
.nav-logo-text strong{display:block;color:var(--gold);font-size:12px;letter-spacing:0.15em;}
.nav-links{display:flex;gap:26px;list-style:none;}
.nav-links a{font-size:12px;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;color:var(--silver);text-decoration:none;transition:color 0.25s;cursor:pointer;}
.nav-links a:hover,.nav-links a.active{color:var(--gold);}
.nav-cta{background:var(--gold);color:var(--navy-dim);font-size:11px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;padding:10px 20px;border:none;cursor:pointer;text-decoration:none;transition:background 0.25s;white-space:nowrap;}
.nav-cta:hover{background:var(--gold-lt);}
@media(max-width:900px){nav{padding:0 16px;}.nav-links{display:none;}}

/* ── PAGE SYSTEM ── */
.page{display:none;min-height:100vh;padding-top:66px;}.page.active{display:block;}

/* ── SHARED ── */
.eyebrow{font-size:11px;font-weight:600;letter-spacing:0.35em;text-transform:uppercase;color:var(--gold-muted);display:block;margin-bottom:14px;}
.section-title{font-family:'Cormorant Garamond',serif;font-size:clamp(34px,5.5vw,62px);font-weight:700;line-height:1.05;color:var(--cream);}
.section-title em{font-style:italic;color:var(--gold);font-weight:300;}
.section-title .sv{color:var(--silver-lt);}
.body-text{font-size:16px;line-height:1.85;color:var(--cream-dim);max-width:640px;}
.section{padding:86px 40px;max-width:1180px;margin:0 auto;}
@media(max-width:768px){.section{padding:54px 20px;}}
.divider{width:100%;height:1px;background:linear-gradient(to right,transparent,var(--border-gold),transparent);}
.btn-gold{display:inline-block;background:var(--gold);color:var(--navy-dim);font-size:12px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;padding:14px 34px;border:none;cursor:pointer;text-decoration:none;transition:background 0.25s;}
.btn-gold:hover{background:var(--gold-lt);}
.btn-outline{display:inline-block;background:transparent;color:var(--cream);border:1px solid rgba(200,151,58,0.35);font-size:12px;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;padding:14px 34px;cursor:pointer;text-decoration:none;transition:border-color 0.25s,color 0.25s;}
.btn-outline:hover{border-color:var(--gold);color:var(--gold);}
.reveal{opacity:0;transform:translateY(16px);transition:opacity 0.65s ease,transform 0.65s ease;}
.reveal.visible{opacity:1;transform:translateY(0);}

/* ── HOME HERO ── */
.hero{min-height:calc(100vh - 66px);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:80px 24px 60px;position:relative;overflow:hidden;}
.hero-bg{position:absolute;inset:0;background:radial-gradient(ellipse 80% 60% at 50% 0%,rgba(0,43,122,0.5) 0%,transparent 65%),radial-gradient(ellipse 50% 40% at 0% 100%,rgba(200,151,58,0.05) 0%,transparent 55%);pointer-events:none;}
.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(200,151,58,0.04) 1px,transparent 1px),linear-gradient(90deg,rgba(200,151,58,0.04) 1px,transparent 1px);background-size:72px 72px;pointer-events:none;}
.hero-logo{height:clamp(80px,12vw,140px);width:auto;margin-bottom:20px;opacity:0;animation:fadeUp 0.7s ease 0.1s forwards;}
.hero-badge{display:inline-block;border:1px solid var(--border-gold);color:var(--gold-muted);background:rgba(200,151,58,0.06);font-size:10px;font-weight:600;letter-spacing:0.3em;text-transform:uppercase;padding:8px 20px;margin-bottom:24px;opacity:0;animation:fadeUp 0.6s ease 0.25s forwards;}
.hero h1{font-family:'Cormorant Garamond',serif;font-size:clamp(56px,11vw,130px);line-height:0.88;font-weight:700;opacity:0;animation:fadeUp 0.9s ease 0.4s forwards;}
.hero h1 .l2{display:block;font-style:italic;font-weight:300;color:var(--gold);font-size:0.52em;letter-spacing:0.08em;}
.hero h1 .l3{color:var(--silver-lt);}
.hero-tag{margin-top:26px;font-size:clamp(14px,1.8vw,17px);font-weight:300;color:var(--cream-dim);max-width:520px;line-height:1.8;opacity:0;animation:fadeUp 0.8s ease 0.6s forwards;}
.hero-deadline{margin-top:16px;display:inline-block;border:1px solid var(--border-gold);background:rgba(200,151,58,0.07);color:var(--gold-lt);font-size:11px;font-weight:600;letter-spacing:0.18em;text-transform:uppercase;padding:8px 20px;opacity:0;animation:fadeUp 0.8s ease 0.75s forwards;}
.hero-actions{margin-top:38px;display:flex;gap:14px;flex-wrap:wrap;justify-content:center;opacity:0;animation:fadeUp 0.8s ease 0.9s forwards;}
.hero-quarterly{margin-top:24px;font-size:13px;color:var(--silver);letter-spacing:0.04em;opacity:0;animation:fadeUp 0.8s ease 1.0s forwards;}
.hero-quarterly strong{color:var(--gold);}
.hero-stats{margin-top:48px;display:flex;border:1px solid var(--border);background:rgba(0,24,71,0.4);opacity:0;animation:fadeUp 0.8s ease 1.1s forwards;}
.stat-item{padding:22px 36px;text-align:center;border-right:1px solid var(--border);flex:1;}
.stat-item:last-child{border-right:none;}
.stat-num{font-family:'Cormorant Garamond',serif;font-size:36px;font-weight:700;color:var(--gold);line-height:1;display:block;}
.stat-label{font-size:10px;letter-spacing:0.2em;text-transform:uppercase;color:var(--cream-dim);margin-top:5px;display:block;}
@media(max-width:560px){.hero-stats{flex-direction:column;}.stat-item{border-right:none;border-bottom:1px solid var(--border);}.stat-item:last-child{border-bottom:none;}}

/* ── PRIZE STRIP ── */
.prize-strip{background:rgba(0,24,71,0.5);border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
.prize-strip-inner{max-width:1180px;margin:0 auto;padding:0 40px;display:grid;grid-template-columns:repeat(4,1fr);}
@media(max-width:880px){.prize-strip-inner{grid-template-columns:repeat(2,1fr);}}
@media(max-width:480px){.prize-strip-inner{grid-template-columns:1fr;}}
.prize-cell{padding:34px 24px;border-right:1px solid var(--border);transition:background 0.3s;}
.prize-cell:last-child{border-right:none;}
.prize-cell:hover{background:rgba(200,151,58,0.05);}
.prize-cell .icon{font-size:24px;margin-bottom:11px;display:block;}
.prize-cell h3{font-family:'Cormorant Garamond',serif;font-size:19px;font-weight:700;color:var(--gold);margin-bottom:6px;}
.prize-cell p{font-size:13px;line-height:1.7;color:var(--cream-dim);}
.prize-cell a{color:var(--silver-lt);text-decoration:none;border-bottom:1px solid rgba(168,180,196,0.25);}
.prize-cell a:hover{color:var(--gold);border-color:var(--gold);}
.partners-mini{padding:50px 40px;text-align:center;max-width:1180px;margin:0 auto;}
.donor-pills{display:flex;flex-wrap:wrap;gap:9px;justify-content:center;margin-top:22px;}
.pill{border:1px solid var(--border);padding:8px 16px;font-size:12px;color:var(--silver);letter-spacing:0.05em;transition:border-color 0.25s,color 0.25s;}
.pill:hover{border-color:var(--gold-muted);color:var(--cream);}
.pill.top{border-color:var(--gold);color:var(--gold);}

/* ── PAGE HEROES ── */
.page-hero{background:linear-gradient(to bottom,var(--navy-lt) 0%,var(--navy-dim) 100%);padding:72px 40px 52px;border-bottom:1px solid var(--border);text-align:center;position:relative;overflow:hidden;}
.page-hero::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 70% 50% at 50% 0%,rgba(200,151,58,0.06) 0%,transparent 70%);pointer-events:none;}

/* ── ABOUT ── */
.founders-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start;}
@media(max-width:800px){.founders-grid{grid-template-columns:1fr;gap:28px;}}
.founder-card{border:1px solid var(--border);background:rgba(0,24,71,0.3);overflow:hidden;position:relative;}
.founder-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(to right,var(--navy-lt),var(--gold));}
.founder-avatar{width:100%;height:180px;background:linear-gradient(135deg,var(--navy-mid) 0%,rgba(200,151,58,0.08) 100%);display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:64px;font-weight:700;color:rgba(200,151,58,0.2);letter-spacing:0.05em;}
.founder-body{padding:28px;}
.founder-name{font-family:'Cormorant Garamond',serif;font-size:28px;font-weight:700;color:var(--cream);margin-bottom:3px;}
.founder-role{font-size:10px;font-weight:600;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold-muted);margin-bottom:15px;display:block;}
.founder-bio{font-size:14px;line-height:1.85;color:var(--cream-dim);}
.founder-bio a{color:var(--gold-muted);text-decoration:none;border-bottom:1px solid rgba(200,151,58,0.2);}
.founder-bio a:hover{color:var(--gold);}
.mission-block{background:rgba(0,32,90,0.6);border:1px solid var(--border-gold);padding:50px;text-align:center;position:relative;overflow:hidden;}
.mission-block blockquote{font-family:'Cormorant Garamond',serif;font-size:clamp(18px,2.8vw,30px);font-style:italic;font-weight:300;color:var(--cream);line-height:1.55;max-width:740px;margin:0 auto 20px;}
.mission-block cite{font-size:11px;letter-spacing:0.15em;text-transform:uppercase;color:var(--gold);font-style:normal;}
.vision-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border);}
@media(max-width:680px){.vision-grid{grid-template-columns:1fr;}}
.vision-cell{background:rgba(0,24,71,0.3);padding:34px 26px;transition:background 0.3s;}
.vision-cell:hover{background:rgba(0,43,122,0.4);}
.vision-num{font-family:'Cormorant Garamond',serif;font-size:40px;font-weight:700;color:rgba(200,151,58,0.18);line-height:1;margin-bottom:12px;display:block;}
.vision-cell h4{font-size:15px;font-weight:600;color:var(--cream);margin-bottom:8px;}
.vision-cell p{font-size:13px;line-height:1.75;color:var(--cream-dim);}

/* ── DONORS ── */
.tier-grid{display:flex;flex-direction:column;gap:14px;}
.tier-card{border:1px solid var(--border);background:rgba(0,24,71,0.3);display:grid;grid-template-columns:250px 1fr auto;align-items:center;gap:30px;padding:34px 38px;position:relative;overflow:hidden;transition:background 0.3s,border-color 0.3s;}
.tier-card:hover{background:rgba(0,43,122,0.35);border-color:rgba(200,151,58,0.25);}
.tier-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;}
.tier-card.t1::before{background:linear-gradient(to bottom,var(--gold-lt),var(--gold));}
.tier-card.t2::before{background:linear-gradient(to bottom,var(--silver-lt),var(--silver));}
.tier-card.t3::before{background:linear-gradient(to bottom,var(--silver),rgba(168,180,196,0.4));}
.tier-card.t4::before{background:linear-gradient(to bottom,rgba(168,180,196,0.4),rgba(168,180,196,0.15));}
.tier-card.t5::before{background:linear-gradient(to bottom,var(--gold),var(--navy-lt));}
@media(max-width:880px){.tier-card{grid-template-columns:1fr;gap:14px;padding:24px;}}
.tier-badge{display:inline-block;padding:3px 11px;font-size:9px;font-weight:700;letter-spacing:0.25em;text-transform:uppercase;margin-bottom:6px;border:1px solid;}
.t1 .tier-badge{border-color:var(--gold);color:var(--gold);}
.t2 .tier-badge{border-color:var(--silver-lt);color:var(--silver-lt);}
.t3 .tier-badge{border-color:var(--silver);color:var(--silver);}
.t4 .tier-badge{border-color:rgba(168,180,196,0.4);color:var(--silver);}
.t5 .tier-badge{border-color:var(--border-gold);color:var(--gold-lt);}
.tier-name{font-family:'Cormorant Garamond',serif;font-size:23px;font-weight:700;color:var(--cream);margin-bottom:6px;}
.tier-perks{font-size:13px;line-height:1.7;color:var(--cream-dim);}
.tier-perks span{color:var(--silver-lt);}
.tier-amount{text-align:right;white-space:nowrap;}
@media(max-width:880px){.tier-amount{text-align:left;}}
.tier-price{font-family:'Cormorant Garamond',serif;font-size:32px;font-weight:700;color:var(--gold);line-height:1;display:block;}
.tier-price-sub{font-size:11px;color:var(--cream-dim);letter-spacing:0.08em;margin-top:3px;display:block;margin-bottom:13px;}
.custom-input-row{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap;}
.custom-input{background:var(--navy-dim);border:1px solid var(--border-gold);color:var(--cream);font-family:'Outfit',sans-serif;font-size:15px;padding:12px 15px;width:160px;outline:none;transition:border-color 0.25s;}
.custom-input:focus{border-color:var(--gold);}
.custom-input::placeholder{color:var(--silver);}
.impact-strip{background:rgba(0,32,90,0.6);border-top:1px solid var(--border-gold);border-bottom:1px solid var(--border-gold);padding:50px 40px;text-align:center;}
.impact-strip p{font-family:'Cormorant Garamond',serif;font-size:clamp(18px,2.8vw,27px);font-style:italic;font-weight:300;color:var(--cream);max-width:780px;margin:0 auto;line-height:1.6;}
.impact-strip strong{color:var(--gold);font-weight:600;font-style:normal;}
.existing-donors{display:flex;gap:20px;flex-wrap:wrap;justify-content:center;margin-top:38px;}
.donor-featured{border:1px solid var(--border-gold);background:rgba(200,151,58,0.05);padding:22px 34px;text-align:center;min-width:190px;position:relative;transition:background 0.3s;}
.donor-featured:hover{background:rgba(200,151,58,0.09);}
.donor-tag{position:absolute;top:-10px;left:50%;transform:translateX(-50%);background:var(--gold);color:var(--navy-dim);font-size:9px;font-weight:700;letter-spacing:0.2em;text-transform:uppercase;padding:3px 11px;white-space:nowrap;}
.donor-featured h4{font-family:'Cormorant Garamond',serif;font-size:17px;font-weight:700;color:var(--cream);margin-top:6px;}
.donor-featured p{font-size:11px;color:var(--cream-dim);margin-top:3px;}

/* ── FORMS ── */
.nominate-layout{display:grid;grid-template-columns:1fr 385px;gap:50px;align-items:start;}
@media(max-width:960px){.nominate-layout{grid-template-columns:1fr;}}
.form-card{background:rgba(0,24,71,0.4);border:1px solid var(--border);padding:38px;position:sticky;top:84px;}
@media(max-width:960px){.form-card{position:static;}}
.form-card h3{font-family:'Cormorant Garamond',serif;font-size:25px;font-weight:700;color:var(--cream);margin-bottom:20px;}
.form-group{margin-bottom:15px;}
.form-label{display:block;font-size:10px;font-weight:600;letter-spacing:0.2em;text-transform:uppercase;color:var(--silver);margin-bottom:6px;}
.form-input,.form-textarea,.form-select{width:100%;background:var(--navy-dim);border:1px solid var(--border);color:var(--cream);font-family:'Outfit',sans-serif;font-size:14px;padding:12px 14px;outline:none;transition:border-color 0.25s;-webkit-appearance:none;appearance:none;}
.form-input:focus,.form-textarea:focus,.form-select:focus{border-color:var(--gold);}
.form-input::placeholder,.form-textarea::placeholder{color:var(--silver);}
.form-textarea{min-height:106px;resize:vertical;}
.form-select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23A8B4C4' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center;padding-right:34px;}
.form-select option{background:var(--navy-mid);}
.form-submit{width:100%;background:var(--gold);color:var(--navy-dim);font-family:'Outfit',sans-serif;font-weight:700;font-size:13px;letter-spacing:0.12em;text-transform:uppercase;padding:15px;border:none;cursor:pointer;transition:background 0.25s;margin-top:6px;}
.form-submit:hover{background:var(--gold-lt);}
.form-note{font-size:11px;color:var(--cream-dim);text-align:center;margin-top:10px;line-height:1.6;}
.success-msg{display:none;background:rgba(200,151,58,0.07);border:1px solid var(--border-gold);padding:18px;text-align:center;color:var(--gold-lt);font-size:14px;margin-top:14px;line-height:1.7;}
.nominate-why{margin-bottom:44px;}
.nominate-why h2{font-family:'Cormorant Garamond',serif;font-size:clamp(26px,4vw,46px);font-weight:700;color:var(--cream);margin-bottom:15px;}
.nominate-why h2 em{color:var(--gold);font-style:italic;font-weight:300;}
.nominate-why p{font-size:15px;line-height:1.85;color:var(--cream-dim);margin-bottom:13px;}
.example-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:24px;}
@media(max-width:480px){.example-grid{grid-template-columns:1fr;}}
.example-cell{background:rgba(0,24,71,0.3);border:1px solid var(--border);padding:16px 20px;display:flex;align-items:center;gap:12px;transition:border-color 0.25s,background 0.25s;}
.example-cell:hover{border-color:rgba(200,151,58,0.25);background:rgba(0,43,122,0.3);}
.example-cell .ex-icon{font-size:20px;flex-shrink:0;}
.example-cell .ex-text{font-size:13px;line-height:1.6;color:var(--cream-dim);}
.example-cell .ex-text strong{color:var(--cream);display:block;margin-bottom:2px;}

/* ── CONTACT ── */
.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:44px;}
@media(max-width:800px){.contact-layout{grid-template-columns:1fr;}}
.contact-card{background:rgba(0,24,71,0.3);border:1px solid var(--border);padding:38px;position:relative;overflow:hidden;}
.contact-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;}
.contact-card.donors::before{background:linear-gradient(to right,var(--gold),var(--navy-lt));}
.contact-card.applicants::before{background:linear-gradient(to right,var(--navy-lt),var(--gold));}
.contact-card h3{font-family:'Cormorant Garamond',serif;font-size:23px;font-weight:700;color:var(--cream);margin-bottom:5px;}
.contact-card .sub{font-size:11px;color:var(--silver);letter-spacing:0.12em;text-transform:uppercase;margin-bottom:16px;display:block;}
.contact-card p{font-size:14px;line-height:1.8;color:var(--cream-dim);margin-bottom:20px;}
.contact-email-link{display:inline-flex;align-items:center;gap:8px;color:var(--gold);font-size:14px;font-weight:600;text-decoration:none;border-bottom:1px solid var(--border-gold);padding-bottom:3px;transition:color 0.25s,border-color 0.25s;}
.contact-email-link:hover{color:var(--gold-lt);}
.contact-form-mini{margin-top:24px;}
.contact-info-block{margin-top:40px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
@media(max-width:680px){.contact-info-block{grid-template-columns:1fr;}}
.contact-info-cell{text-align:center;padding:24px 16px;border:1px solid var(--border);transition:border-color 0.3s,background 0.3s;}
.contact-info-cell:hover{border-color:var(--border-gold);background:rgba(200,151,58,0.04);}
.contact-info-cell .ci-icon{font-size:24px;display:block;margin-bottom:10px;}
.contact-info-cell h4{font-size:12px;font-weight:600;color:var(--cream);margin-bottom:4px;letter-spacing:0.05em;}
.contact-info-cell p{font-size:12px;color:var(--cream-dim);line-height:1.6;}
.contact-info-cell a{color:var(--gold-muted);text-decoration:none;}
.contact-info-cell a:hover{color:var(--gold);}

/* ── FOOTER ── */
footer{background:var(--navy-mid);border-top:1px solid var(--border);padding:46px 40px 28px;text-align:center;}
.footer-logo{height:60px;width:auto;margin-bottom:12px;}
.footer-tagline{font-size:11px;letter-spacing:0.2em;text-transform:uppercase;color:var(--silver);margin-bottom:22px;}
.footer-links{display:flex;gap:22px;justify-content:center;flex-wrap:wrap;list-style:none;margin-bottom:24px;}
.footer-links a{font-size:11px;letter-spacing:0.12em;text-transform:uppercase;color:var(--silver);text-decoration:none;cursor:pointer;transition:color 0.25s;}
.footer-links a:hover{color:var(--gold);}
footer p{font-size:12px;color:rgba(242,237,228,0.22);line-height:1.8;}
footer a.flink{color:var(--gold);text-decoration:none;}
footer a.flink:hover{color:var(--gold-lt);}

@keyframes fadeUp{from{opacity:0;transform:translateY(22px);}to{opacity:1;transform:translateY(0);}}

/* ── GALA TEASER (home page) ── */
.gala-teaser{background:rgba(0,32,90,0.5);border-top:1px solid var(--border-gold);border-bottom:1px solid var(--border-gold);}
.gala-teaser-inner{max-width:1180px;margin:0 auto;padding:56px 40px;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
@media(max-width:800px){.gala-teaser-inner{grid-template-columns:1fr;gap:32px;}}
.gala-teaser-text p{font-size:15px;line-height:1.8;color:var(--cream-dim);margin-top:12px;}
.gala-teaser-details{display:flex;flex-direction:column;gap:18px;}
.gala-detail-item{display:flex;align-items:flex-start;gap:16px;padding:16px 20px;border:1px solid var(--border);background:rgba(0,24,71,0.3);transition:border-color 0.25s;}
.gala-detail-item:hover{border-color:var(--border-gold);}
.gd-icon{font-size:22px;flex-shrink:0;margin-top:2px;}
.gala-detail-item span:last-child{font-size:14px;line-height:1.6;color:var(--cream-dim);}
.gala-detail-item span:last-child strong{display:block;color:var(--cream);font-size:15px;margin-bottom:2px;}

/* ── EVENT HERO CARD ── */
.event-hero-card{display:grid;grid-template-columns:160px 1fr;border:1px solid var(--border-gold);background:rgba(0,24,71,0.3);overflow:hidden;position:relative;}
.event-hero-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(to right,var(--gold),var(--navy-lt),var(--gold));}
@media(max-width:700px){.event-hero-card{grid-template-columns:1fr;}}
.event-hero-left{background:rgba(0,32,90,0.6);display:flex;align-items:center;justify-content:center;padding:40px 20px;}
.event-date-block{text-align:center;}
.event-month{display:block;font-size:13px;font-weight:700;letter-spacing:0.3em;text-transform:uppercase;color:var(--gold);margin-bottom:4px;}
.event-day{display:block;font-family:'Cormorant Garamond',serif;font-size:72px;font-weight:700;color:var(--cream);line-height:1;}
.event-year{display:block;font-size:13px;letter-spacing:0.2em;color:var(--silver);margin-top:4px;}
.event-hero-right{padding:40px;}
.event-title{font-family:'Cormorant Garamond',serif;font-size:clamp(22px,3vw,34px);font-weight:700;color:var(--cream);margin-bottom:4px;}
.event-subtitle{font-size:12px;letter-spacing:0.15em;text-transform:uppercase;color:var(--gold-muted);margin-bottom:24px;display:block;}
.event-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
@media(max-width:600px){.event-meta-grid{grid-template-columns:1fr;}}
.event-meta-item{padding:12px 16px;background:rgba(0,16,46,0.4);border:1px solid var(--border);}
.em-label{display:block;font-size:9px;font-weight:700;letter-spacing:0.25em;text-transform:uppercase;color:var(--gold-muted);margin-bottom:4px;}
.em-val{display:block;font-size:13px;color:var(--cream);line-height:1.5;}

/* ── EVENT PROGRAM ── */
.event-program-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border);}
@media(max-width:800px){.event-program-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:480px){.event-program-grid{grid-template-columns:1fr;}}
.event-program-item{background:rgba(0,24,71,0.3);padding:32px 24px;transition:background 0.3s;}
.event-program-item:hover{background:rgba(0,43,122,0.4);}
.ep-time{display:block;font-size:11px;font-weight:700;letter-spacing:0.2em;color:var(--gold);margin-bottom:10px;}
.event-program-item h4{font-size:15px;font-weight:600;color:var(--cream);margin-bottom:8px;}
.event-program-item p{font-size:13px;line-height:1.7;color:var(--cream-dim);}

/* ── TICKET CARDS ── */
.ticket-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:780px;}
@media(max-width:600px){.ticket-grid{grid-template-columns:1fr;}}
.ticket-card{border:1px solid var(--border);background:rgba(0,24,71,0.3);padding:36px;position:relative;transition:border-color 0.3s,background 0.3s;}
.ticket-card:hover{border-color:var(--border-gold);background:rgba(0,43,122,0.35);}
.ticket-featured{border-color:var(--gold) !important;background:rgba(0,32,90,0.5) !important;}
.ticket-badge-top{position:absolute;top:-11px;left:50%;transform:translateX(-50%);background:var(--gold);color:var(--navy-dim);font-size:9px;font-weight:700;letter-spacing:0.2em;text-transform:uppercase;padding:3px 14px;white-space:nowrap;}
.ticket-icon{font-size:28px;margin-bottom:12px;display:block;}
.ticket-card h3{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:700;color:var(--cream);margin-bottom:8px;}
.ticket-price{font-family:'Cormorant Garamond',serif;font-size:44px;font-weight:700;color:var(--gold);line-height:1;margin-bottom:16px;}
.ticket-includes{list-style:none;display:flex;flex-direction:column;gap:8px;}
.ticket-includes li{font-size:13px;color:var(--cream-dim);padding-left:16px;position:relative;line-height:1.5;}
.ticket-includes li::before{content:'—';position:absolute;left:0;color:var(--gold-dim);}

/* ── SPONSOR CARDS ── */
.sponsor-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
@media(max-width:960px){.sponsor-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:580px){.sponsor-grid{grid-template-columns:1fr;}}
.sponsor-card{border:1px solid var(--border);background:rgba(0,24,71,0.3);position:relative;overflow:hidden;transition:border-color 0.3s,background 0.3s;}
.sponsor-card:hover{background:rgba(0,43,122,0.35);}
.sp-ribbon{padding:8px 16px;font-size:9px;font-weight:700;letter-spacing:0.25em;text-transform:uppercase;border-bottom:1px solid var(--border);}
.sp-presenting{border-color:var(--gold);}
.sp-presenting .sp-ribbon{background:rgba(200,151,58,0.12);color:var(--gold);border-color:var(--border-gold);}
.sp-gold .sp-ribbon{background:rgba(200,151,58,0.08);color:var(--gold-muted);border-color:var(--border);}
.sp-silver .sp-ribbon{background:rgba(168,180,196,0.08);color:var(--silver-lt);border-color:var(--border);}
.sp-bronze .sp-ribbon{background:rgba(168,180,196,0.05);color:var(--silver);border-color:var(--border);}
.sp-community .sp-ribbon{background:rgba(168,180,196,0.04);color:var(--silver);border-color:var(--border);}
.sp-inkind .sp-ribbon{background:rgba(200,151,58,0.05);color:var(--gold-muted);border-color:var(--border);}
.sp-body{padding:28px;}
.sp-price{font-family:'Cormorant Garamond',serif;font-size:38px;font-weight:700;color:var(--gold);line-height:1;margin-bottom:6px;}
.sp-name{font-family:'Cormorant Garamond',serif;font-size:20px;font-weight:700;color:var(--cream);margin-bottom:8px;}
.sp-desc{font-size:13px;color:var(--cream-dim);line-height:1.65;margin-bottom:16px;}
.sp-perks{list-style:none;display:flex;flex-direction:column;gap:7px;}
.sp-perks li{font-size:12px;color:var(--cream-dim);padding-left:14px;position:relative;line-height:1.5;}
.sp-perks li::before{content:'·';position:absolute;left:0;color:var(--gold);}
.sp-perks li em{color:var(--silver);font-style:normal;}

/* ── VENUE BLOCK ── */
.venue-block{background:rgba(0,32,90,0.4);border:1px solid var(--border-gold);padding:48px;}
