/* Event pages: calendar-led composition, existing ocean/solar identity. */
.ev-detail{--ev-navy:#102c45;--ev-blue:#005b96;--ev-sun:#ffc400;--ev-paper:#fff;--ev-line:#97a9b8;--ev-ink:#102c45;--ev-muted:#415468}
.ev-detail .ev-detail__inner{max-width:1120px!important}
.ev-back{display:inline-flex;align-items:center;min-height:48px;padding:8px 0;margin-bottom:20px;color:var(--ev-blue);font-size:17px;font-weight:650;text-decoration:none;text-underline-offset:5px}
.ev-back:hover{text-decoration:underline}
.ev-hero{display:grid;grid-template-columns:minmax(0,1fr) 140px;align-items:center;gap:48px;background:var(--ev-navy);padding:48px;border-radius:18px;color:#fff}
body.desktop-ui .ev-hero h1,.ev-hero h1{font-family:Manrope,sans-serif;font-size:clamp(32px,4.2vw,56px)!important;line-height:1.14!important;letter-spacing:-.03em!important;max-width:22ch!important;margin:0!important;text-align:start!important;color:#fff!important;text-wrap:balance;overflow-wrap:anywhere}
.ev-calendar{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:170px;border:1px solid #7f97ab;border-radius:12px;color:#fff;font-variant-numeric:tabular-nums}
.ev-calendar>.du-icon{width:25px;height:25px;color:var(--ev-sun);margin-bottom:5px}.ev-calendar strong{font:750 66px/1 Manrope,sans-serif;letter-spacing:-.035em;color:var(--ev-sun)}.ev-calendar span{font-size:17px}
.ev-facts{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:32px;padding:32px 0;margin:0 0 32px;border-bottom:1px solid var(--ev-line);color:var(--ev-ink)}
.ev-facts>div{min-width:0}.ev-facts dt{display:flex;align-items:center;gap:9px;font-size:15px;color:var(--ev-muted);margin-bottom:10px;font-weight:600}.ev-facts dt .du-icon{width:21px;height:21px;color:var(--ev-blue)}
.ev-facts dd{margin:0;font-size:19px;line-height:1.45;font-weight:650;overflow-wrap:anywhere}.ev-facts dd>span{display:block;margin-top:6px;font-size:17px;font-weight:400}.ev-price{color:var(--ev-blue)}
.ev-poster{margin:0 auto 44px;max-width:720px;background:var(--ev-paper);border-radius:12px;overflow:hidden}.ev-poster img{display:block;max-height:720px;width:100%;height:auto;object-fit:contain}.ev-poster picture{display:block}
.ev-story{max-width:72ch;margin:0 auto 36px;color:var(--ev-ink)}
body.desktop-ui .ev-story h2,.ev-story h2{font-family:Manrope,sans-serif;font-size:27px;line-height:1.25;text-align:start!important;margin:0 0 22px;color:var(--ev-ink)!important}
.ev-description{font-size:19px;line-height:1.75;text-align:start!important;overflow-wrap:anywhere;white-space:normal}.ev-description p{margin:0 0 20px;text-align:start!important}
.ev-source{margin:28px 0 0}.ev-source>a{display:inline-flex;align-items:center;gap:10px;min-height:48px;color:var(--ev-blue);font-size:17px;font-weight:650;text-underline-offset:5px}.ev-source .du-icon{width:20px;height:20px}
.ev-detail :is(a,button):focus-visible{outline:3px solid var(--ev-blue);outline-offset:4px}
/* Agenda: the date is a real visual anchor, including events without a poster. */
body.desktop-ui .ex-event-card{display:flex;flex-direction:column;padding-top:0!important;border:1px solid var(--du-line)!important;box-shadow:none!important}
body.desktop-ui .ex-event-card .ex-date{display:flex;padding:20px 24px!important;margin:0!important;background:#102c45;color:#fff;align-items:baseline;gap:12px;min-height:86px}
body.desktop-ui .ex-event-card .ex-date strong{color:#ffc400;font-size:42px;line-height:1}
body.desktop-ui .ex-event-card .ex-date span{font-size:20px;color:#fff}
body.desktop-ui .ex-event-card .card__img{margin:0!important;height:240px!important;object-fit:contain;background:var(--surface)}
body.desktop-ui .ex-event-card .card__body{display:flex;flex-direction:column;flex:1;padding:26px}
body.desktop-ui .ex-event-card .card__tag{align-self:flex-start;background:transparent!important;color:var(--primary-dark)!important;padding:0;font-size:13px;letter-spacing:.02em;font-weight:650}
body.desktop-ui .ex-event-card .card__title{font-size:25px;line-height:1.25;margin:14px 0 20px!important}
body.desktop-ui .ex-event-card .card__meta{display:flex;flex-direction:column;align-items:flex-start;gap:9px;margin-bottom:18px}
body.desktop-ui .ex-event-card .card__meta>span{display:flex;align-items:flex-start;gap:8px;line-height:1.45}.ex-event-card .card__meta .du-icon{flex-shrink:0;margin-top:2px}
body.desktop-ui .ex-event-card .card__text{font-size:17px;line-height:1.6;margin:0 0 16px}
body.desktop-ui .ex-event-card .ex-card-action{order:20;margin-top:auto;padding-top:20px;min-height:54px;justify-content:space-between;color:var(--primary-dark);font-weight:700;text-decoration:none}
.ev-card-price{margin:4px 0 12px;color:var(--primary-dark);font-size:17px;font-weight:650}
.ev-card-source{margin:4px 0 10px;font-size:14px}.ev-card-source a{color:var(--gray);text-decoration:underline;text-underline-offset:4px;display:inline-flex;align-items:center;gap:6px;min-height:32px}
@media(min-width:961px){body.desktop-ui [data-ex-agenda] .grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}}
@media(max-width:960px){.ev-hero{gap:24px;padding:32px;grid-template-columns:minmax(0,1fr) 120px}.ev-calendar{min-height:150px}.ev-calendar strong{font-size:58px}.ev-facts{gap:22px}}
@media(max-width:600px){.ev-detail{padding-top:24px!important}.ev-hero{grid-template-columns:minmax(0,1fr) 88px;gap:18px;padding:26px 20px;border-radius:14px}.ev-hero h1{font-size:30px!important}.ev-calendar{min-height:125px;border-radius:9px}.ev-calendar strong{font-size:46px}.ev-calendar span{font-size:13px}.ev-calendar>.du-icon{width:20px;height:20px}.ev-facts{grid-template-columns:1fr;gap:0;padding:8px 0 0;margin-bottom:30px}.ev-facts>div{display:grid;grid-template-columns:100px minmax(0,1fr);gap:18px;padding:20px 0;border-bottom:1px solid var(--ev-line)}.ev-facts>div:last-child{border-bottom:0}.ev-facts dt{margin:0;font-size:15px}.ev-facts dd{font-size:18px}.ev-description{font-size:18px}.ev-poster{margin-bottom:32px}.ev-story h2{font-size:25px}body.desktop-ui .ex-event-card .card__body{padding:24px}}
@media(max-width:380px){.ev-hero{grid-template-columns:1fr}.ev-calendar{flex-direction:row;min-height:64px;gap:12px}.ev-calendar strong{font-size:40px}.ev-calendar span{font-size:16px}.ev-calendar>.du-icon{margin:0}.ev-facts>div{grid-template-columns:1fr;gap:8px}}
html[data-theme=dark] .ev-detail{--ev-paper:#172a3b;--ev-line:#70869a;--ev-ink:#f3f7fb;--ev-muted:#c2cfdb;--ev-blue:#80c7ff}
@media(prefers-reduced-motion:reduce){.ev-detail *{scroll-behavior:auto!important}}
@media(forced-colors:active){.ev-hero,.ev-calendar,body.desktop-ui .ex-event-card .ex-date{background:Canvas;color:CanvasText;border:1px solid CanvasText}.ev-hero h1,.ev-calendar strong,.ev-calendar span,body.desktop-ui .ex-event-card .ex-date strong,body.desktop-ui .ex-event-card .ex-date span{color:CanvasText!important}}

/* Preserve the existing share dialog, with a clear central entry point. */
body.desktop-ui .ev-detail .share-btn,.ev-detail .share-btn{display:flex;align-items:center;justify-content:center;gap:11px;min-height:52px;min-width:190px;max-width:100%;width:fit-content;margin:32px auto;padding:14px 28px;border:1px solid #005b96;border-radius:12px;background:#005b96;color:#fff;font:700 18px/1.3 'Source Sans 3',sans-serif;box-shadow:none;transition:background-color 160ms ease,transform 160ms ease}
body.desktop-ui .ev-detail .share-btn:hover,.ev-detail .share-btn:hover{background:#004574;border-color:#004574;color:#fff;transform:translateY(-1px);box-shadow:none}
.ev-detail .share-btn svg{width:21px;height:21px}
.ev-detail .share-btn:focus-visible{outline:3px solid var(--ev-blue);outline-offset:4px}
.ev-detail .share-btn:active{transform:translateY(1px)}
@media(prefers-reduced-motion:reduce){body.desktop-ui .ev-detail .share-btn{transition:none;transform:none}}
@media(forced-colors:active){body.desktop-ui .ev-detail .share-btn{background:ButtonFace;color:ButtonText;border-color:ButtonText}}
