/* AMPHI 2.1 compact, editable event directory + event detail layout.
   Scoped to the AMPHI events classes. No imported fonts, images or scripts. */
.amphi-event-grid.amphi-compact-event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.amphi-compact-event-grid .amphi-compact-event-card{border:1px solid #dde7f6;border-radius:21px;background:#fff;box-shadow:0 12px 26px rgba(18,52,105,.12);min-width:0;overflow:hidden;transition:transform .25s,box-shadow .25s,border-color .25s}
.amphi-compact-event-grid .amphi-compact-event-card:hover,.amphi-compact-event-grid .amphi-compact-event-card:focus-within{transform:translateY(-5px);box-shadow:0 22px 38px rgba(18,52,105,.22);border-color:#7ba7f2}
.amphi-compact-event-grid .amphi-event-card-link{display:flex;flex-direction:column;height:100%;color:#142a4f;text-decoration:none;outline-offset:4px}
.amphi-compact-event-grid .amphi-event-card-link:hover{text-decoration:none}
.amphi-compact-event-grid .amphi-compact-poster{position:relative;height:auto;aspect-ratio:16/10;background:linear-gradient(140deg,#dcecff,#e7f7ff);overflow:hidden}
.amphi-compact-event-grid .amphi-compact-poster img{width:100%;height:100%;object-fit:cover;background:#e8f3fe}
.amphi-compact-event-grid .amphi-compact-poster .amphi-poster-fallback{height:100%;min-height:100%;display:grid;place-items:center;text-align:center;font-size:18px;font-weight:850;color:#2761b4;padding:16px}
.amphi-compact-event-grid .amphi-event-state{position:absolute;top:12px;left:12px;background:rgba(255,255,255,.94);border-radius:99px;padding:6px 10px;font-size:11px;line-height:1.2;font-weight:850;color:#24446a;box-shadow:0 5px 12px #0b2a4c1b}
.amphi-compact-event-grid .amphi-event-state.state-live{background:#ecffce;color:#2d6e23}
.amphi-compact-event-grid .amphi-event-state.state-past{background:#e7edf3;color:#53657c}
.amphi-compact-event-grid .amphi-compact-info{padding:16px 18px 19px;display:flex;flex-direction:column;flex:1;min-height:155px}
.amphi-compact-event-grid .amphi-compact-date{font-size:13px;letter-spacing:.01em;font-weight:850;color:#e05d35;line-height:1.4}
.amphi-compact-event-grid .amphi-compact-info h3{font-size:20px;line-height:1.23;margin:8px 0 7px;letter-spacing:-.02em;color:#152b4d}
.amphi-compact-event-grid .amphi-compact-location{font-size:13px;line-height:1.45;color:#536985;margin:0 0 14px}
.amphi-compact-event-grid .amphi-compact-link{font-size:13px;font-weight:850;color:#225fe0;margin-top:auto}
/* Dedicated detail page; global site header stays unchanged. */
.amphi-event-single{background:#fff}
.amphi-event-detail{max-width:1150px;margin:auto}
.amphi-event-back{font-size:14px;font-weight:850;display:inline-block;margin:0 0 25px}
.amphi-event-hero{display:grid;grid-template-columns:1.15fr .85fr;gap:36px;align-items:center;background:linear-gradient(130deg,#f0f7ff 4%,#fff 62%,#fff2e8 100%);padding:clamp(24px,4vw,52px);border-radius:30px;box-shadow:0 18px 42px rgba(32,64,122,.10)}
.amphi-event-hero h1{font-size:clamp(38px,4.8vw,64px);letter-spacing:-.052em;line-height:1.12;color:#122a4d;margin:7px 0 25px}
.amphi-event-facts{display:grid;gap:15px;margin-bottom:24px}
.amphi-event-facts>div{display:flex;flex-direction:column;gap:2px}
.amphi-event-facts span{font-size:12px;letter-spacing:.07em;font-weight:800;color:#617895;text-transform:uppercase}
.amphi-event-facts strong{font-size:18px;color:#1d3758}
.amphi-event-hero-poster{border-radius:20px;overflow:hidden;box-shadow:0 19px 37px rgba(18,51,99,.22);background:#dfeeff;min-height:200px}
.amphi-event-hero-poster img{width:100%;height:auto;display:block;object-fit:contain}
.amphi-event-hero-poster .amphi-poster-fallback{min-height:260px;display:grid;place-items:center;text-align:center;color:#205eaa;font-weight:900;padding:24px}
.amphi-event-register{display:inline-flex;align-items:center;justify-content:center;min-height:59px;padding:14px 25px;border-radius:15px;color:white!important;background:linear-gradient(120deg,#2367ee,#1551c3);font-size:16px;font-weight:850;text-decoration:none!important;box-shadow:0 10px 20px rgba(25,82,198,.25)}
.amphi-event-register:hover{transform:translateY(-2px);box-shadow:0 14px 22px rgba(25,82,198,.33)}
.amphi-event-ended{display:inline-block;background:#e3e8ee;color:#53677c;padding:11px 18px;border-radius:12px;font-size:14px;font-weight:800}
.amphi-event-discount{display:flex;flex-direction:column;border:1px solid #ffcb9f;background:#fff2e6;border-radius:16px;padding:14px 18px;margin-bottom:24px;gap:5px}
.amphi-event-discount span{font-size:12px;font-weight:800;color:#7b4e31}
.amphi-event-discount strong{font-size:27px;color:#b9361b;letter-spacing:.06em}
.amphi-event-discount small{font-size:11px;color:#775747;line-height:1.45}
.amphi-event-article{max-width:880px;padding:40px 0 35px;margin:auto;color:#334b6b}
.amphi-event-article h2{font-size:clamp(28px,3vw,39px);line-height:1.23;color:#153156;margin:28px 0 15px}
.amphi-event-article p,.amphi-event-article li{font-size:18px;line-height:1.7}
.amphi-event-bottom{border-top:1px solid #e3eaf3;padding-top:22px;font-size:16px;font-weight:850}
@media(max-width:980px){.amphi-event-grid.amphi-compact-event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.amphi-event-hero{gap:24px}}
@media(max-width:690px){.amphi-event-grid.amphi-compact-event-grid{grid-template-columns:1fr}.amphi-event-hero{grid-template-columns:1fr}.amphi-event-hero-poster{max-width:540px}.amphi-event-article{padding-top:18px}.amphi-compact-event-grid .amphi-compact-info{min-height:145px}}
@media(prefers-reduced-motion:reduce){.amphi-compact-event-grid .amphi-compact-event-card,.amphi-event-register{transition:none!important;transform:none!important}}
