/*
Theme Name: Jefferson County UA Alumni
Theme URI: https://dev.uajeffco.savvyottermations.com
Template: astra
Author: Savvy Otter
Description: Child theme for the Jefferson County National Alumni Association — official UA National Alumni Association chapter brand.
Version: 0.1.0
*/

:root{
  --crimson:#9E1B32;        /* Crimson Flame (PMS 201) */
  --crimson-dark:#7c1527;
  --crimson-deep:#5e0f1d;
  --capstone-gray:#828A8F;  /* Capstone Gray (PMS 430) */
  --pachyderm:#5F6A72;      /* Pachyderm (PMS 431) */
  --ink:#1c1c1e;
  --paper:#ffffff;
  --soft:#f6f4f3;
  --line:#e6e2e0;
}

body{font-family:'Inter',system-ui,sans-serif;color:var(--ink);}
h1,h2,h3,h4,h5{font-family:'Oswald',system-ui,sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.01em;}

a{color:var(--crimson);}
a:hover{color:var(--crimson-dark);}
.ast-button,.button,button,input[type=submit],.wp-block-button__link,.menu-toggle{
  background:var(--crimson);border-color:var(--crimson);color:#fff;border-radius:6px;
  font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.04em;
}
.ast-button:hover,.button:hover,button:hover,input[type=submit]:hover,.wp-block-button__link:hover{background:var(--crimson-dark);border-color:var(--crimson-dark);}

.main-header-menu a,.ast-header-break-point .main-header-menu a{font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.03em;font-weight:500;}
.site-header{border-bottom:3px solid var(--crimson);}

.pmpro_btn,.pmpro_checkout .pmpro_btn-submit{background:var(--crimson)!important;border-color:var(--crimson)!important;}
.tribe-common .tribe-common-c-btn,.tribe-events .tribe-events-c-top-bar__datepicker-button{background-color:var(--crimson)!important;}
.tribe-events-calendar-list__event-datetime,.tribe-events .tribe-events-calendar-month__day-date a{color:var(--crimson);}

/* ================= Homepage ================= */
#uj-home .uj-wrap{max-width:1180px;margin:0 auto;padding:0 24px;}
#uj-home .uj-btn{display:inline-flex;align-items:center;gap:.5rem;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.04em;font-weight:600;font-size:.95rem;padding:.8rem 1.6rem;border-radius:6px;border:2px solid transparent;cursor:pointer;transition:.18s;text-decoration:none;}
#uj-home .uj-btn-primary{background:var(--crimson);color:#fff;}
#uj-home .uj-btn-primary:hover{background:var(--crimson-dark);color:#fff;}
#uj-home .uj-btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.7);}
#uj-home .uj-btn-ghost:hover{background:#fff;color:var(--crimson);}
#uj-home .uj-btn-outline{background:transparent;color:var(--crimson);border-color:var(--crimson);}
#uj-home .uj-btn-outline:hover{background:var(--crimson);color:#fff;}
#uj-home .uj-eyebrow{font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.18em;font-weight:600;font-size:.8rem;margin:0;}
#uj-home .uj-crimson{color:var(--crimson);}
#uj-home .uj-pink{color:#f2b8c1;}
#uj-home .uj-lead{font-size:1.1rem;color:var(--pachyderm);max-width:60ch;}
#uj-home .uj-section{padding:84px 0;}
#uj-home h2{font-size:2.5rem;color:var(--ink);margin:.3rem 0 1rem;}
#uj-home .uj-hero{background:linear-gradient(125deg,rgba(94,15,29,.94),rgba(158,27,50,.80) 55%,rgba(124,21,39,.93)),url('assets/img/hero-stadium.jpg') center 32%/cover no-repeat;color:#fff;padding:92px 0 84px;}
#uj-home .uj-hero .uj-eyebrow{color:#f2b8c1;}
#uj-home .uj-hero h1{font-family:'Oswald',sans-serif;font-weight:700;text-transform:uppercase;font-size:4rem;line-height:1.05;margin:14px 0 18px;max-width:16ch;color:#fff;}
#uj-home .uj-hero .uj-sub{font-size:1.25rem;max-width:52ch;color:#f6e7ea;}
#uj-home .uj-actions{display:flex;gap:14px;margin-top:28px;flex-wrap:wrap;}
#uj-home .uj-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:56px;border-top:1px solid rgba(255,255,255,.25);padding-top:28px;}
#uj-home .uj-stat .n{font-family:'Oswald',sans-serif;font-size:2.3rem;font-weight:700;display:block;line-height:1;}
#uj-home .uj-stat .l{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:#f0cfd5;}
#uj-home .uj-about-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center;}
#uj-home .uj-photo{aspect-ratio:4/3;border-radius:14px;background:url('assets/img/who-we-are.jpg') center/cover no-repeat;box-shadow:0 12px 34px rgba(28,28,30,.18);}
#uj-home .uj-photo span{display:none;}
#uj-home .uj-membership{background:var(--soft);}
#uj-home .uj-head{text-align:center;max-width:60ch;margin:0 auto 44px;}
#uj-home .uj-head .uj-lead{margin:10px auto 0;}
#uj-home .uj-tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
#uj-home .uj-tier{background:#fff;border:1px solid var(--line);border-radius:14px;padding:32px 28px;display:flex;flex-direction:column;transition:.2s;}
#uj-home .uj-tier:hover{transform:translateY(-4px);box-shadow:0 24px 60px rgba(94,15,29,.15);}
#uj-home .uj-tier.uj-feat{border-color:var(--crimson);position:relative;}
#uj-home .uj-tier.uj-feat::before{content:"Most Popular";position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--crimson);color:#fff;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;padding:5px 14px;border-radius:20px;}
#uj-home .uj-tier h3{font-family:'Oswald',sans-serif;text-transform:uppercase;font-size:1.4rem;color:var(--crimson);margin:0;}
#uj-home .uj-price{font-family:'Oswald',sans-serif;font-size:2.6rem;font-weight:700;margin:6px 0 2px;}
#uj-home .uj-price span{font-size:1rem;color:var(--pachyderm);font-weight:400;}
#uj-home .uj-tier ul{list-style:none;margin:18px 0 24px;padding:0;display:flex;flex-direction:column;gap:10px;}
#uj-home .uj-tier li{padding-left:26px;position:relative;color:#3a3a3c;font-size:.95rem;}
#uj-home .uj-tier li::before{content:"\2713";position:absolute;left:0;color:var(--crimson);font-weight:700;}
#uj-home .uj-tier .uj-btn{margin-top:auto;justify-content:center;}
#uj-home .uj-renew{text-align:center;margin-top:30px;color:var(--pachyderm);}
#uj-home .uj-renew a{color:var(--crimson);font-weight:600;}
#uj-home .uj-events-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:34px;flex-wrap:wrap;}
#uj-home .uj-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
#uj-home .uj-card{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff;display:flex;flex-direction:column;}
#uj-home .uj-card-media{aspect-ratio:16/10;background:linear-gradient(135deg,var(--crimson),var(--crimson-deep));position:relative;}
#uj-home .uj-date{position:absolute;top:14px;left:14px;background:#fff;border-radius:10px;text-align:center;padding:8px 12px;line-height:1;}
#uj-home .uj-date .m{display:block;font-family:'Oswald',sans-serif;text-transform:uppercase;color:var(--crimson);font-weight:700;font-size:.78rem;}
#uj-home .uj-date .d{display:block;font-family:'Oswald',sans-serif;font-weight:700;font-size:1.5rem;}
#uj-home .uj-card-body{padding:20px;display:flex;flex-direction:column;gap:8px;flex:1;}
#uj-home .uj-meta{font-size:.82rem;color:var(--pachyderm);text-transform:uppercase;letter-spacing:.05em;font-family:'Oswald',sans-serif;}
#uj-home .uj-card h3{font-size:1.2rem;margin:0;}
#uj-home .uj-card h3 a{color:var(--ink);text-decoration:none;}
#uj-home .uj-rsvp{margin-top:auto;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.04em;color:var(--crimson);font-weight:600;font-size:.9rem;text-decoration:none;}
#uj-home .uj-events-empty{text-align:center;padding:44px;border:1px dashed var(--line);border-radius:14px;color:var(--pachyderm);}
#uj-home .uj-events-empty .uj-btn{margin-top:14px;}
#uj-home .uj-band{background:linear-gradient(120deg,var(--crimson),var(--crimson-dark));color:#fff;}
#uj-home .uj-band-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center;padding:66px 24px;}
#uj-home .uj-band h2{color:#fff;}
#uj-home .uj-band p{color:#f6e7ea;margin-top:10px;}
#uj-home .uj-band-cta{display:flex;justify-content:flex-end;}
.uj-chapter-note{text-align:center;padding:14px 20px;font-size:.85rem;background:var(--crimson-deep);color:#f0d9dd;}
.uj-chapter-note a{color:#fff;text-decoration:underline;}
@media(max-width:900px){
  #uj-home .uj-about-grid,#uj-home .uj-band-grid{grid-template-columns:1fr;}
  #uj-home .uj-tiers,#uj-home .uj-cards{grid-template-columns:1fr;}
  #uj-home .uj-stats{grid-template-columns:1fr 1fr;}
  #uj-home .uj-hero h1{font-size:2.6rem;}
  #uj-home .uj-band-cta{justify-content:flex-start;}
}

/* ================= PMPro (membership / checkout / account) ================= */
.pmpro_level{border:1px solid var(--line);border-radius:14px;padding:28px;background:#fff;}
.pmpro_level h2,.pmpro_level h3{color:var(--crimson);font-family:'Oswald',sans-serif;text-transform:uppercase;}
.pmpro_btn,.pmpro_btn-submit,#pmpro_btn-submit,.pmpro_checkout input[type=submit],.pmpro_a-selfhosted{
  background:var(--crimson)!important;border-color:var(--crimson)!important;color:#fff!important;
  font-family:'Oswald',sans-serif!important;text-transform:uppercase;letter-spacing:.04em;border-radius:6px;
}
.pmpro_btn:hover,.pmpro_btn-submit:hover,#pmpro_btn-submit:hover{background:var(--crimson-dark)!important;border-color:var(--crimson-dark)!important;}
.pmpro_checkout h2,.pmpro_checkout .pmpro_checkout-h2,table.pmpro_checkout thead th{
  background:var(--crimson);color:#fff;font-family:'Oswald',sans-serif;
}
.pmpro_price,.pmpro_level-price,.pmpro_level .pmpro_price{color:var(--crimson);font-family:'Oswald',sans-serif;font-weight:700;}
.pmpro_actionlink a,a.pmpro_a-selfhosted{color:var(--crimson);}

/* ================= The Events Calendar ================= */
.tribe-common .tribe-common-c-btn,.tribe-common a.tribe-common-c-btn,
.tribe-events .tribe-events-c-subscribe-dropdown__button{background-color:var(--crimson);border-color:var(--crimson);color:#fff;}
.tribe-common .tribe-common-c-btn:hover{background-color:var(--crimson-dark);border-color:var(--crimson-dark);}
.tribe-events .tribe-events-calendar-list__event-title-link,
.tribe-events .tribe-events-calendar-month__calendar-event-title-link{color:var(--ink);}
.tribe-events .tribe-events-calendar-list__event-title-link:hover,
.tribe-events .tribe-events-calendar-month__calendar-event-title-link:hover{color:var(--crimson);}
.tribe-events .tribe-events-calendar-list__event-datetime,
.tribe-events-calendar-month__day--current .tribe-events-calendar-month__day-date,
.tribe-events .tribe-events-c-top-bar__today-button{color:var(--crimson);}
.tribe-events .tribe-events-c-top-bar{border-top:3px solid var(--crimson);padding-top:12px;}
.tribe-events a{color:var(--crimson);}
.tribe-events-calendar-month__day--current{box-shadow:inset 0 3px 0 0 var(--crimson);}

/* Header: logo only, hide redundant site title text */
.ast-site-title-wrap{display:none!important;}
.site-header .custom-logo-link img,.ast-logo-title-inline .custom-logo-link img{max-height:64px;width:auto;}

/* Hero: faint Script A watermark (from the mockup) */
.uj-hero{position:relative;overflow:hidden;}
.uj-hero .uj-wrap{position:relative;z-index:1;}
.uj-hero::after{content:"";position:absolute;right:-30px;bottom:-80px;width:460px;height:460px;background:url('assets/logos/script-a-white.png') no-repeat right bottom;background-size:contain;opacity:.10;pointer-events:none;z-index:0;}
@media(max-width:900px){.uj-hero::after{width:260px;height:260px;right:-20px;bottom:-40px;}}

/* ================= Upcoming-event modal ================= */
#uj-event-modal{position:fixed;inset:0;z-index:99999;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(28,28,30,.72);}
#uj-event-modal.is-open{display:flex;}
#uj-event-modal .uj-modal-card{background:#fff;max-width:520px;width:100%;border-radius:16px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.45);position:relative;animation:ujpop .25s ease;}
@keyframes ujpop{from{transform:translateY(16px);opacity:0;}to{transform:none;opacity:1;}}
#uj-event-modal .uj-modal-top{background:linear-gradient(125deg,var(--crimson-deep),var(--crimson));color:#fff;padding:28px 30px;position:relative;}
#uj-event-modal .uj-modal-eyebrow{font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;color:#f2b8c1;}
#uj-event-modal h3{font-family:'Oswald',sans-serif;text-transform:uppercase;font-size:1.7rem;color:#fff;margin:6px 0 0;line-height:1.12;}
#uj-event-modal .uj-modal-body{padding:24px 30px 28px;}
#uj-event-modal .uj-modal-meta{color:var(--pachyderm);font-size:.92rem;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.03em;margin-bottom:12px;}
#uj-event-modal .uj-modal-body p{color:#3a3a3c;font-size:.98rem;margin:0;}
#uj-event-modal .uj-modal-actions{display:flex;gap:12px;margin-top:22px;flex-wrap:wrap;}
#uj-event-modal .uj-modal-btn{font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.04em;font-weight:600;padding:.75rem 1.4rem;border-radius:6px;border:2px solid var(--crimson);cursor:pointer;text-decoration:none;font-size:.9rem;}
#uj-event-modal .uj-modal-btn-primary{background:var(--crimson);color:#fff;}
#uj-event-modal .uj-modal-btn-primary:hover{background:var(--crimson-dark);border-color:var(--crimson-dark);}
#uj-event-modal .uj-modal-btn-ghost{background:#fff;color:var(--crimson);}
#uj-event-modal .uj-modal-btn-ghost:hover{background:var(--crimson);color:#fff;}
#uj-event-modal .uj-modal-close{position:absolute;top:14px;right:16px;background:rgba(255,255,255,.18);border:0;color:#fff;width:34px;height:34px;border-radius:50%;font-size:1.4rem;line-height:1;cursor:pointer;}
#uj-event-modal .uj-modal-close:hover{background:rgba(255,255,255,.34);}
body.uj-modal-lock{overflow:hidden;}
