.calendario-section{padding-block:var(--space-2xl);background:radial-gradient(ellipse at 20% 10%,rgba(221,183,64,.08),transparent 40%),linear-gradient(160deg,var(--color-charcoal) 0%,rgba(27,79,114,.16) 100%)}.calendario-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:var(--space-xl);align-items:start}.calendar-main{display:flex;flex-direction:column;gap:var(--space-xl);min-width:0}.calendar-panel,.week-panel,.agenda-panel{background:linear-gradient(160deg,#252540eb,#1a1a2efa);border:1px solid rgba(221,183,64,.22);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden}.week-panel{padding:var(--space-lg)}.week-panel__header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-lg)}.week-panel__eyebrow{color:var(--color-gold);font-size:var(--fs-xs);font-weight:700;letter-spacing:.14em;text-transform:uppercase}.week-panel h2{color:var(--color-text-light);font-family:var(--font-body);font-size:clamp(1rem,2vw,1.25rem);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--space-sm)}.week-day{min-height:172px;padding:var(--space-sm);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-lg);background:#0000002e;display:flex;flex-direction:column;gap:var(--space-sm)}.week-day.is-today{border-color:#ddb740a6;box-shadow:inset 0 0 0 1px #ddb74033}.week-day__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-xs);color:#f5edd89e;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.week-day__number{color:var(--color-gold);font-size:var(--fs-md)}.week-events{display:flex;flex-direction:column;gap:7px}.week-event{width:100%;padding:7px 8px;border-radius:var(--radius-md);background:#c0303038;border:1px solid rgba(192,48,48,.38);cursor:pointer;text-align:left;transition:border-color var(--transition-fast),transform var(--transition-fast),background var(--transition-fast)}.week-event.is-featured{background:#ddb7402e;border-color:#ddb7407a}.week-event:hover,.week-event:focus-visible,.calendar-event:hover,.calendar-event:focus-visible,.agenda-card:hover{border-color:#ddb7409e;transform:translateY(-1px);outline:none}.week-event__time{display:block;color:var(--color-gold);font-size:10px;font-weight:700;margin-bottom:3px}.week-event__title{display:block;color:var(--color-text-light);font-size:var(--fs-xs);font-weight:700;line-height:1.25}.week-day__empty{color:#f5edd861;font-size:var(--fs-xs);margin-top:auto}.calendar-toolbar{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:var(--space-md);padding:var(--space-lg);border-bottom:1px solid rgba(221,183,64,.14)}.calendar-month-title{font-family:var(--font-body);font-size:clamp(1.05rem,2.2vw,1.35rem);font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-gold);text-align:center;line-height:1.25}.calendar-nav-btn{width:44px;height:44px;border-radius:var(--radius-md);border:1px solid rgba(221,183,64,.35);background:#0000002e;color:var(--color-gold);font-size:2rem;line-height:1;cursor:pointer;transition:background var(--transition-fast),transform var(--transition-fast)}.calendar-nav-btn:hover{background:#ddb7401a;transform:translateY(-1px)}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays{padding:var(--space-sm) var(--space-md);border-bottom:1px solid rgba(221,183,64,.12);color:#f5edd885;font-size:var(--fs-xs);font-weight:700;letter-spacing:.08em;text-align:center;text-transform:uppercase}.calendar-grid{padding:var(--space-md);gap:8px}.calendar-day{min-height:112px;padding:var(--space-sm);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-md);background:#00000029;display:flex;flex-direction:column;gap:6px}.calendar-day.is-muted{opacity:.35}.calendar-day.is-today{border-color:#ddb7409e;box-shadow:inset 0 0 0 1px #ddb74033}.calendar-day__number{color:var(--color-text-light);font-size:var(--fs-xs);font-weight:700}.calendar-event{display:block;width:100%;padding:5px 7px;border-radius:var(--radius-sm);background:#c0303038;border:1px solid rgba(192,48,48,.38);color:var(--color-text-light);font-size:11px;font-weight:700;line-height:1.2;overflow:hidden;text-overflow:ellipsis;cursor:pointer;text-align:left;transition:border-color var(--transition-fast),transform var(--transition-fast),background var(--transition-fast)}.calendar-event.is-featured{background:#ddb74033;border-color:#ddb7407a;color:var(--color-gold-light)}.agenda-panel{padding:var(--space-lg);position:sticky;top:92px}.agenda-panel__header{margin-bottom:var(--space-lg)}.agenda-panel__eyebrow{display:block;color:var(--color-gold);font-size:var(--fs-xs);font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-bottom:4px}.agenda-panel h2{color:var(--color-text-light);font-size:var(--fs-xl)}.agenda-list{display:flex;flex-direction:column;gap:var(--space-md)}.agenda-card{display:grid;grid-template-columns:58px minmax(0,1fr);gap:var(--space-md);padding:var(--space-md);background:#0000002e;border:1px solid rgba(221,183,64,.12);border-radius:var(--radius-lg);cursor:pointer;transition:border-color var(--transition-fast),transform var(--transition-fast),background var(--transition-fast)}.agenda-card:hover{background:#0000003d}.agenda-card__date{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:58px;border-radius:var(--radius-md);background:#ddb7401f;color:var(--color-gold)}.agenda-card__day{font-family:var(--font-display);font-size:var(--fs-lg);line-height:1}.agenda-card__month{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.agenda-card__title{color:var(--color-text-light);font-size:var(--fs-sm);font-weight:700;line-height:1.25;margin-bottom:4px}.agenda-card__topline{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}.agenda-card__type,.agenda-card__status{display:inline-flex;align-items:center;padding:3px 7px;border-radius:var(--radius-full);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.agenda-card__type{background:#ddb7401f;color:var(--color-gold)}.agenda-card__status{background:#1b4f7247;color:var(--color-ocean-light)}.agenda-card__meta{color:#f5edd894;font-size:var(--fs-xs);line-height:1.4}.agenda-card__desc{color:#f5edd8c7;font-size:var(--fs-xs);line-height:1.45;margin:6px 0}.agenda-card__link{display:inline-flex;width:max-content;margin-top:8px;color:var(--color-gold);font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase}.calendar-empty{grid-column:1 / -1;padding:var(--space-xl);text-align:center;color:#f5edd8ad}.calendar-popover{position:absolute;z-index:var(--z-modal);opacity:0;pointer-events:none;transform:translateY(6px) scale(.98);transition:opacity var(--transition-fast),transform var(--transition-fast)}.calendar-popover.show{opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}.calendar-popover:before{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px}.calendar-popover__body{position:relative;padding:var(--space-lg);background:linear-gradient(160deg,#252540fa,#121222fa);border:1px solid rgba(221,183,64,.32);border-radius:var(--radius-xl);box-shadow:0 20px 60px #0000008c}.calendar-popover__close{position:absolute;top:10px;right:10px;z-index:1;width:30px;height:30px;border-radius:var(--radius-full);border:1px solid rgba(221,183,64,.24);background:#00000038;color:var(--color-gold);cursor:pointer;font-size:1.2rem;line-height:1}.calendar-popover__topline{display:flex;flex-wrap:wrap;gap:6px;padding-right:34px;margin-bottom:var(--space-sm)}.calendar-popover__featured{display:inline-flex;align-items:center;padding:3px 7px;border-radius:var(--radius-full);background:#ddb7402e;color:var(--color-gold-light);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.calendar-popover__title{color:var(--color-gold);font-size:var(--fs-lg);line-height:1.12;margin-bottom:var(--space-sm)}.calendar-popover__desc{color:#f5edd8d1;font-size:var(--fs-sm);line-height:1.45;margin-bottom:var(--space-md)}.calendar-popover__details{display:flex;flex-direction:column;gap:8px;margin:0}.calendar-popover__details div{display:grid;grid-template-columns:76px minmax(0,1fr);gap:var(--space-sm);align-items:baseline}.calendar-popover__details dt{color:#f5edd873;font-size:var(--fs-xs);font-weight:700;text-transform:uppercase}.calendar-popover__details dd{color:var(--color-text-light);font-size:var(--fs-xs);margin:0}.calendar-popover__link{display:inline-flex;margin-top:var(--space-md);color:var(--color-gold);font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase}@media (max-width: 1024px){.calendario-layout{grid-template-columns:1fr}.agenda-panel{position:static}.week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.week-panel__header{align-items:flex-start;flex-direction:column}.week-grid{grid-template-columns:1fr}.week-day{min-height:auto}.calendar-toolbar{grid-template-columns:38px 1fr 38px;padding:var(--space-md)}.calendar-nav-btn{width:38px;height:38px}.calendar-weekdays{font-size:10px;padding-inline:var(--space-sm)}.calendar-grid{gap:5px;padding:var(--space-sm)}.calendar-day{min-height:82px;padding:6px}.calendar-event{font-size:9px;padding:4px 5px}}
