/* Ospiti: stessa palette, tipografia e cornici del template pubblico. */
.guests-section{background:var(--paper);color:var(--ink)}
.guests-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:38px}
.guests-heading h2{font-size:clamp(42px,5vw,80px);text-transform:uppercase;margin:0}
.guests-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.guests-controls[hidden],.guests-controls button[hidden]{display:none}
.guests-controls button{font:inherit;font-size:11px;font-weight:800;border:1.5px solid var(--ink);border-radius:40px;background:var(--paper);color:var(--ink);padding:11px 16px}
.guests-controls button:hover{background:var(--orange)}
.guests-controls button:disabled{opacity:.4}
.guests-strip{width:100%;max-width:100%;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--ink) var(--paper);padding:10px 5px 25px}
.guests-strip:focus-visible{outline:3px solid var(--ink);outline-offset:4px}
.guests-track{list-style:none;display:flex;align-items:stretch;gap:30px;padding:0;margin:0}
.guest-card{flex:0 0 280px;min-width:0}
.guest-card figure{margin:0}
.guest-photo{aspect-ratio:4 / 5;background:var(--paper);border:7px solid var(--paper);box-shadow:6px 7px 0 #192c2520}
.guest-card:nth-child(3n+1) .guest-photo{background:var(--pink)}
.guest-card:nth-child(3n+2) .guest-photo{background:var(--blue)}
.guest-card:nth-child(3n) .guest-photo{background:var(--lilac)}
.guest-photo img{display:block;width:100%;height:100%;object-fit:contain}
.guest-card figcaption{padding:24px 5px 0}
.guest-card h3{font-size:25px;line-height:1.12;margin-bottom:12px}
.guest-card p{font-size:13px;line-height:1.7;margin-bottom:8px}
.guest-card small{display:block;font-size:10px;line-height:1.6;color:var(--muted)}
@media(max-width:991.98px){.guests-heading{align-items:start;flex-direction:column;gap:24px}.guest-card{flex-basis:260px}}
@media(max-width:575.98px){.guests-heading h2{font-size:clamp(35px,10vw,58px)}.guest-card{flex-basis:min(255px,80vw)}.guests-track{gap:22px}.guests-controls{gap:7px}.guests-controls button{font-size:10px;padding:10px 12px}.guest-card h3{font-size:23px}}
@media print{.guests-controls{display:none}.guests-strip{overflow:visible}.guests-track{flex-wrap:wrap}.guest-card{break-inside:avoid}}

/* Spazi più compatti soltanto nelle tre sezioni finali della home. */
@media screen{
 #eventi.home-events.section-space{padding-top:24px;padding-bottom:90px}
 #ospiti.guests-section.section-space{padding-block:24px}
 #contatti.contact-section.section-space{padding-top:24px;padding-bottom:120px}
 #eventi .section-kicker,#ospiti .section-kicker,#contatti .section-kicker{padding-top:8px;margin-bottom:14px}
 #ospiti .guests-heading{margin-bottom:18px}
 #eventi>.section-wave{height:70px}
 #contatti>.contact-wave{height:100px}
}
@media screen and (max-width:991.98px){
 #contatti.contact-section.section-space{padding-bottom:120px}
}
@media screen and (max-width:575.98px){
 #eventi.home-events.section-space{padding-top:20px;padding-bottom:65px}
 #ospiti.guests-section.section-space{padding-block:20px}
 #contatti.contact-section.section-space{padding-top:20px;padding-bottom:90px}
 #eventi .section-kicker,#ospiti .section-kicker,#contatti .section-kicker{padding-top:6px;margin-bottom:12px}
 #ospiti .guests-heading{margin-bottom:14px}
 #eventi>.section-wave{height:50px}
 #contatti>.contact-wave{height:70px}
}
