/* GHAC Events — self-contained component styles (theme-independent baseline).
   On the Altitude theme these match the theme tokens; on other themes they
   provide a clean default. */
.ghac-ev-grid,.ghac-gal-grid,.ghac-plogos,.ghac-countdown,.ghac-speakers{
  --ghac-navy:#1D1D1E;--ghac-navy-3:#1F6FB2;--ghac-sky:#2974B8;--ghac-sky-lt:#A9D3F2;
  --ghac-cloud:#EAF3FB;--ghac-muted:#6B7177;--ghac-amber:#4D9CDA;--ghac-amber-2:#6BB0E2;
  --ghac-line-dk:rgba(11,22,34,.10);--ghac-serif:'Manrope',system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;--ghac-ease:cubic-bezier(.22,.61,.36,1);
}

/* grid + cards */
.ghac-ev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.ghac-ev-grid.cols-1{grid-template-columns:1fr}
.ghac-ev-grid.cols-2{grid-template-columns:repeat(2,1fr)}
.ghac-ev-grid.cols-4{grid-template-columns:repeat(4,1fr)}
.ghac-ev-card{background:#fff;border-radius:18px;overflow:hidden;border:1px solid rgba(11,22,34,.10);transition:.45s cubic-bezier(.22,.61,.36,1);display:flex;flex-direction:column}
.ghac-ev-card:hover{transform:translateY(-8px);box-shadow:0 30px 60px -28px rgba(29,29,30,.4)}
.ghac-ev-card__img{position:relative;aspect-ratio:4/3;overflow:hidden;background:#EAF3FB}
.ghac-ev-card__img img{width:100%;height:100%;object-fit:cover;transition:.7s cubic-bezier(.22,.61,.36,1)}
.ghac-ev-card:hover .ghac-ev-card__img img{transform:scale(1.07)}
.ghac-ev-tag{position:absolute;top:16px;left:16px;background:rgba(29,29,30,.82);color:#fff;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:7px 14px;border-radius:100px}
.ghac-ev-date{position:absolute;bottom:0;right:0;background:#4D9CDA;color:#1D1D1E;text-align:center;padding:12px 18px;border-top-left-radius:14px}
.ghac-ev-date .d{font-family:'Manrope',system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;font-size:26px;font-weight:600;line-height:1}
.ghac-ev-date .m{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-top:3px}
.ghac-ev-card__body{padding:26px;flex:1;display:flex;flex-direction:column}
.ghac-ev-card__body h3{font-family:'Manrope',system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;font-weight:500;font-size:21px;line-height:1.22;margin:0 0 14px}
.ghac-ev-card__body h3 a{color:#1D1D1E;text-decoration:none}
.ghac-ev-card__body h3 a:hover{color:#4D9CDA}
.ghac-ev-venue{display:flex;align-items:center;gap:8px;color:#6B7177;font-size:14.5px;margin-top:auto}
.ghac-ev-venue::before{content:"";width:7px;height:7px;border-radius:50%;background:#2974B8;flex:none}
.ghac-ev-more{margin-top:18px;padding-top:18px;border-top:1px solid rgba(11,22,34,.10);font-weight:600;font-size:14px;color:#2A2A2D;display:flex;justify-content:space-between;align-items:center}
.ghac-ev-more .arr{color:#4D9CDA;transition:.3s}
.ghac-ev-card:hover .ghac-ev-more .arr{transform:translateX(6px)}

/* gallery */
.ghac-gal-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:200px;gap:14px}
.ghac-gal-grid figure{overflow:hidden;border-radius:14px;margin:0;cursor:pointer}
.ghac-gal-grid img{width:100%;height:100%;object-fit:cover;transition:.8s cubic-bezier(.22,.61,.36,1)}
.ghac-gal-grid figure:hover img{transform:scale(1.08)}
.ghac-gal-grid .big{grid-column:span 2;grid-row:span 2}
.ghac-gal-grid .tall{grid-row:span 2}

/* partners */
.ghac-plogos{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:40px 60px}
.ghac-plogos img{height:52px;width:auto;opacity:.55;filter:grayscale(1);transition:.4s}
.ghac-plogos img:hover{opacity:1;filter:grayscale(0)}

/* countdown */
.ghac-countdown{display:flex;gap:14px;flex-wrap:wrap}
.ghac-countdown__u{text-align:center;min-width:72px;background:#1D1D1E;border-radius:12px;padding:14px 10px;color:#fff}
.ghac-countdown__u .n{font-family:'Manrope',system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;font-size:32px;font-weight:600;line-height:1}
.ghac-countdown__u .l{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#A9D3F2;margin-top:6px}

/* speakers */
.ghac-speakers{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.ghac-speaker{text-align:center}
.ghac-speaker img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:14px;margin-bottom:14px;background:#EAF3FB}
.ghac-speaker h4{font-size:16px;margin:0;font-family:'Manrope',system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif}
.ghac-speaker span{color:#6B7177;font-size:13.5px}

/* reveal (only animates when JS adds the class) */
.ghac-rv{opacity:0;transform:translateY(30px);transition:.9s cubic-bezier(.22,.61,.36,1)}
.ghac-rv.is-in{opacity:1;transform:none}
.no-js .ghac-rv{opacity:1;transform:none}

/* lightbox (plugin fallback) */
.ghac-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(6,16,30,.95);display:none;align-items:center;justify-content:center;padding:40px}
.ghac-lightbox.is-open{display:flex}
.ghac-lightbox img{max-width:92vw;max-height:88vh;border-radius:8px}
.ghac-lightbox__close{position:absolute;top:24px;right:30px;color:#fff;font-size:34px;cursor:pointer;background:none;border:0}

.ghac-empty-note{color:#6B7177;padding:30px 0}

@media (max-width:980px){
  .ghac-ev-grid,.ghac-ev-grid.cols-2,.ghac-ev-grid.cols-4,.ghac-speakers{grid-template-columns:1fr}
  .ghac-gal-grid{grid-template-columns:repeat(2,1fr)}
}
