/* Events (5 Sep 2026). Drawn by novamira-sandbox/events-page.php. */
.soma-ev{--ev-max:1180px;background:var(--soma-base)}
.soma-ev h1,.soma-ev h2{text-wrap:balance}
.soma-ev p{margin:0}
.soma-ev a.soma-ev-ghost{background:transparent;color:var(--soma-white);box-shadow:inset 0 0 0 1.5px var(--soma-line-inverse)}
.soma-ev a.soma-ev-ghost:hover{background:var(--soma-white-12)}
.soma-ev-hero{background:var(--soma-primary);color:var(--soma-white);position:relative;overflow:hidden;padding:clamp(3rem,2rem + 4vw,6rem) var(--soma-gutter) clamp(2.5rem,1.5rem + 3vw,4.5rem)}
.soma-ev-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(70% 90% at 15% 20%,rgba(13,124,104,.35) 0%,rgba(13,124,104,0) 60%),radial-gradient(50% 70% at 95% 100%,rgba(204,213,255,.18) 0%,rgba(204,213,255,0) 60%);pointer-events:none}
.soma-ev-hero__in{position:relative;max-width:var(--ev-max);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(2rem,1rem + 5vw,6rem);align-items:end}
.soma-ev-hero .soma-eyebrow{color:var(--soma-periwinkle)}
.soma-ev-hero h1{color:var(--soma-white);font-size:clamp(2.5rem,1.2rem + 4.6vw,4.6rem);letter-spacing:-.01em;margin:18px 0 22px}
.soma-ev-lead{color:var(--soma-white-70);font-size:clamp(1.125rem,1.05rem + .35vw,1.375rem);line-height:1.6;max-width:34em}
.soma-ev-hero__acts{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}
.soma-ev-facts{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.soma-ev-facts div{background:var(--soma-white-12);border-radius:var(--soma-r-md);padding:16px 18px}
.soma-ev-facts dt{font-family:var(--soma-font-display);font-weight:600;font-size:clamp(1.75rem,1.4rem + 1.2vw,2.5rem);line-height:1;color:var(--soma-white);font-variant-numeric:tabular-nums}
.soma-ev-facts dd{margin:6px 0 0;font-size:.875rem;color:var(--soma-white-70)}
.soma-ev-sec{padding:clamp(2.5rem,1.5rem + 3vw,4.5rem) var(--soma-gutter)}
.soma-ev-sec--white{background:var(--soma-white)}
.soma-ev-sec__in{max-width:var(--ev-max);margin:0 auto}
.soma-ev-sec__head{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:20px;align-items:end;margin-bottom:24px}
.soma-ev-sec__head p{color:var(--soma-text);font-size:1.0625rem;line-height:1.6;max-width:34em}
.soma-ev-sec h2{font-size:clamp(1.75rem,1.3rem + 1.8vw,2.6rem);margin-top:8px;letter-spacing:-.01em}
.soma-ev-signup{max-width:none}
.soma-ev-signup .soma-band{padding:0;background:transparent;max-width:none}
.soma-ev-signup .soma-signup__card{margin:0;max-width:none}
.soma-ev-signup .soma-signup__words h2{font-size:clamp(1.6rem,1.2rem + 1.4vw,2.2rem)}
.soma-ev-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,.75rem + 1vw,1.5rem)}
.soma-ev .soma-ev-card{display:flex;flex-direction:column;background:var(--soma-base);border-radius:var(--soma-r-lg);overflow:hidden;color:var(--soma-primary);text-decoration:none;transition:transform var(--soma-dur-lift) var(--soma-ease),box-shadow var(--soma-dur-lift) var(--soma-ease)}
.soma-ev-sec:not(.soma-ev-sec--white) .soma-ev-card{background:var(--soma-white)}
.soma-ev .soma-ev-card:hover{transform:translateY(-4px);box-shadow:0 24px 48px var(--soma-shadow)}
.soma-ev-card__media{display:block;aspect-ratio:16/10;background:var(--soma-primary-deep);overflow:hidden}
.soma-ev-card__media img{width:100%;height:100%;object-fit:cover;display:block}
.soma-ev-card__body{display:flex;flex-direction:column;gap:8px;padding:20px 22px 22px}
.soma-ev-card__when{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--soma-secondary)}
.soma-ev-card__title{font-family:var(--soma-font-display);font-weight:600;font-size:1.45rem;line-height:1.15;text-wrap:balance}
.soma-ev-card__ex{color:var(--soma-text);font-size:1rem;line-height:1.6}
.soma-ev-card__meta{color:var(--soma-text);font-size:.8125rem}
.soma-ev .soma-ev-card--big{flex-direction:row;align-items:stretch;margin-bottom:22px}
.soma-ev-card--big .soma-ev-card__media{flex:0 0 52%;aspect-ratio:auto;min-height:340px}
.soma-ev-card--big .soma-ev-card__body{padding:clamp(1.5rem,1rem + 2vw,2.75rem);justify-content:center;gap:12px}
.soma-ev-card--big .soma-ev-card__title{font-size:clamp(1.8rem,1.3rem + 1.8vw,2.6rem)}
.soma-ev-card--big .soma-btn{align-self:flex-start;margin-top:8px}
.soma-ev-end{background:var(--soma-primary);color:var(--soma-white);padding:clamp(3.5rem,2rem + 5vw,7rem) var(--soma-gutter)}
.soma-ev-end__in{max-width:var(--ev-max);margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(2rem,1rem + 4vw,5rem);align-items:center}
.soma-ev-end .soma-eyebrow{color:var(--soma-periwinkle)}
.soma-ev-end h2{color:var(--soma-white);font-size:clamp(2rem,1.3rem + 3vw,3.4rem);margin:14px 0 14px}
.soma-ev-end p{color:var(--soma-white-70);max-width:36em;font-size:1.0625rem}
.soma-ev-end__acts{display:flex;flex-direction:column;gap:10px;min-width:280px}
.soma-ev-end__acts .soma-btn{justify-content:center}
@media (max-width:1100px){
  .soma-ev-hero__in{grid-template-columns:1fr;align-items:start}
  .soma-ev-facts{max-width:560px}
  .soma-ev-sec__head{grid-template-columns:1fr}
  .soma-ev-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .soma-ev .soma-ev-card--big{flex-direction:column}
  .soma-ev-card--big .soma-ev-card__media{flex:none;aspect-ratio:16/8;min-height:0}
  .soma-ev-end__in{grid-template-columns:1fr}
  .soma-ev-end__acts{flex-direction:row;flex-wrap:wrap}
}
@media (max-width:640px){
  .soma-ev-hero h1{font-size:clamp(2.25rem,8.6vw,2.9rem)}
  .soma-ev-facts{grid-template-columns:1fr 1fr;gap:8px}
  .soma-ev-facts div{padding:12px 14px}
  .soma-ev-hero__acts .soma-btn{flex:1;justify-content:center}
  .soma-ev-grid{grid-template-columns:1fr}
  .soma-ev-end__acts{flex-direction:column}
}


/* soma: green closing band */
/* The band and the footer were the same navy, so the page's last call to action
   dissolved into the footer. Green separates them. */
.soma-ev-end{background:var(--soma-secondary)}
.soma-ev-end .soma-eyebrow{color:rgba(255,255,255,.72)}
.soma-ev-end p{color:rgba(255,255,255,.82)}
.soma-ev-end__acts .soma-btn:not(.soma-ev-ghost){background:var(--soma-white);color:var(--soma-secondary);border-color:var(--soma-white)}
/* templates.css turns every .soma-page link navy on hover, which blacks out
   links on a coloured surface. Hold white here. */
section.soma-ev-end a:hover,section.soma-ev-end a:focus-visible{color:var(--soma-white)}
section.soma-ev-end .soma-ev-end__acts a.soma-btn:not(.soma-ev-ghost):hover,
section.soma-ev-end .soma-ev-end__acts a.soma-btn:not(.soma-ev-ghost):focus-visible{color:var(--soma-secondary)}


/* soma: section heads align at the top */
/* These heads were bottom-aligned, which pushed the brief above the heading it
   belongs to -- and by a different amount on every section, depending on
   whether the heading wrapped. The two columns now start together. */
.soma-ev-sec__head{align-items:start}
.soma-ev-sec__head > :nth-child(2){padding-top:4px}
