/* ===== Eventos body (flow) — ported from eventos.html inline <style> ===== */
/* FUNDO/IMAGENS composite = 1800x2525, starts at canvas y≈252; header covers 0–465.
   .eventos begins right under the nav (canvas 465). Offset bg up by (465-252)=213px = -13.31rem so it aligns. */
.eventos{background:#000 url('../../img/eventos-fundo.png') center -13.31rem / 100% auto no-repeat;padding-bottom:0}

/* two decorative rules (5px, #d9f2ec): short LEFT of line1 bleeding to left edge, long RIGHT of line2 bleeding right.
   absolute so they don't grow the heading box (bleed technique from sobre's equipe rules). */
.reg__rule--left{top:12.75rem;right:calc(100% - var(--inset) + 2.5rem);left:0;width:auto}
.reg__rule--right{top:16.8rem;left:calc(var(--inset) + 27rem);right:0;}

/* ===== Event cards ===== */
/* Absolute layout ported from the prototype (vw values * 18 = px @1800 = rem/16).
   Card heights are FIXED like the PSD so CMS content can't distort the rhythm;
   odd/even cards alternate image width and divider position exactly as the design. */
.events{padding:10.3rem var(--inset) 5.75rem}
.card{position:relative;display:block;height:41.125rem;background:transparent;border:0;border-radius:0}
.card + .card{margin-top:0}
.card:nth-child(even){height:41.1875rem}
/* Fixed photo box (design ≈641×658): object-fit keeps any upload — landscape,
   square or a portrait poster — inside the card instead of spilling over the
   footer (client QA 25/09: 1024×1536 poster overflowed 300px onto the footer). */
.card__photo{position:absolute;left:0;top:0.0625rem;width:40.0625rem;height:41.0625rem;object-fit:cover;object-position:center top;z-index:1}
.card:nth-child(even) .card__photo{width:40.25rem}
.card__body{position:static;min-width:0;padding:0}
.card__box{position:absolute;left:32.8125rem;top:0.0625rem;width:47.25rem;height:14.875rem;box-sizing:border-box;background:#4FBAAD;border-radius:0 0 3.75rem 0;margin:0;padding:2.025rem 9.75rem 0 16.1875rem;display:block;min-height:0;max-width:none}
.card__title{margin:0;font-weight:700;font-size:1.975rem;line-height:2.60625rem;letter-spacing:var(--track);color:#fff}
.card__meta{position:static;margin:0;padding:0}
.card__excerpt{position:absolute;left:49rem;top:17rem;margin:0;font-weight:300;font-style:italic;font-size:1.74375rem;line-height:2.125rem;letter-spacing:var(--track);color:#fff;max-width:22.9375rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.card__date{position:absolute;left:48.9375rem;top:23.8125rem;margin:0;font-weight:300;font-style:italic;font-size:1.74375rem;line-height:2.125rem;letter-spacing:var(--track);color:#fff}
.card__sep{position:absolute;left:12.5625rem;top:34.0625rem;border:0;height:0.1875rem;width:55.0625rem;max-width:none;background:#4FBAAD;opacity:1;margin:0}
.card:nth-child(even) .card__sep{top:40.9375rem}

/* ===== Carousel arrows (~canvas y2314) ===== */
.arrows{display:flex;justify-content:center;gap:4.75rem;padding:4.0625rem 0 0}
.arrows__btn{background:none;border:0;cursor:pointer;padding:0.5rem;line-height:0;transition:opacity .15s}
.arrows__btn:disabled{opacity:.3;cursor:default}
.arrows__chev{display:block;width:2.125rem;height:2.125rem;border-right:0.4375rem solid #4FBAAD;border-bottom:0.4375rem solid #4FBAAD}
.arrows__chev--prev{transform:rotate(135deg)}
.arrows__chev--next{transform:rotate(-45deg)}
/* card is a link */
.card{text-decoration:none;color:inherit;transition:transform .15s}
.card:hover{transform:translateY(-0.25rem)}
.card:hover .card__box{filter:brightness(1.06)}
.card:focus-visible{outline:0.1875rem solid var(--teal);outline-offset:0.5rem}

/* ===== Responsive ===== */
@media (max-width:60rem){
  .eventos{background-position:center top}
  .reg{padding-top:3rem}
  /* neutralize the bleeding rules so there's no horizontal scroll */
  .reg__rule--left{display:none}
  .reg__rule--right{position:static;display:block;width:100%;margin:1rem 0 1.5rem;left:auto;right:auto} /* spacing so the rule never touches the title below it */
  .reg__line2{padding-left:1.5rem}
  .events{padding-top:3rem}
  .card{height:auto;display:flex;flex-direction:column;gap:0}
  .card:nth-child(even){height:auto}
  .card + .card{margin-top:3rem}
  .card__photo,.card:nth-child(even) .card__photo{position:static;width:100%;height:auto;aspect-ratio:40.0625/41.0625;object-fit:cover}
  .card__box{position:static;width:auto;height:auto;margin:0;padding:1.5rem;border-radius:0 0 2rem 0}
  .card__excerpt{position:static;max-width:100%;margin-top:1.5rem}
  .card__date{position:static;margin-top:0.75rem}
  .card__sep,.card:nth-child(even) .card__sep{position:static;margin:2rem 0 0;width:100%}
}
