.gallery-shell{max-width:1140px;margin:auto;padding:55px 20px 90px}.gallery-shell h1{font:600 clamp(30px,6vw,62px) Georgia,serif;margin:10px 0}.gallery-shell p{color:#d1c7c5}.gallery-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:28px 0}.gallery-tabs button{border:1px solid #c6a26d;border-radius:40px;padding:12px 23px;background:#10121d;color:white;cursor:pointer}.gallery-tabs button.active{background:#e7ba75;color:#131019}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:18px}.gallery-card{background:#161723;border:1px solid #4e4146;border-radius:14px;overflow:hidden}.gallery-card img{aspect-ratio:4/3;width:100%;object-fit:cover}.gallery-card .copy{padding:16px}.gallery-card h2{font-size:18px;margin:0 0 9px}.gallery-card p{font-size:14px}.gallery-card a{color:#f4c983}.gallery-footer{display:flex;justify-content:center;gap:24px;padding:40px}
/* Locandine verticali 1080×1920, orizzontali 1920×1080 e quadrate 1080×1080 senza ritaglio. */
.gallery-card.gallery-poster img{width:100%;height:370px;aspect-ratio:auto;object-fit:contain;object-position:center;background:#090911;display:block}
@media(max-width:630px){.gallery-card.gallery-poster img{height:320px}}


/* Album MOMÀ: una sola copertina per serata, fino a 20 foto caricate solo all'apertura. */
.gallery-album-card{border:1px solid #735b45;border-radius:15px;overflow:hidden;background:linear-gradient(145deg,#1b1720,#141722);min-width:0;display:flex;flex-direction:column}
.gallery-album-open{border:0;background:transparent;color:inherit;padding:0;cursor:pointer;text-align:left;width:100%;display:block;font:inherit;flex:1}
.gallery-album-open img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;transition:transform .22s ease}
.gallery-album-open:hover img{transform:scale(1.02)}
.gallery-album-open:focus-visible{outline:2px solid #f0c48c;outline-offset:-3px}
.gallery-album-info{padding:18px 18px 12px}
.gallery-album-info h2{font:normal 23px Georgia,serif;color:#f7e7d4;margin:7px 0 9px}
.gallery-album-info small{display:block;color:#bfb2b8;font-size:12px}
.gallery-album-tag{font-size:10px;letter-spacing:.14em;font-weight:750;color:#dbbb82}
.gallery-album-open-label{display:inline-block;margin-top:17px;color:#e8bc7a;font-size:12px;font-weight:750}
.gallery-facebook-link{display:inline-flex;align-items:center;justify-content:center;padding:14px 15px;color:#eac997;border-top:1px solid #403744;text-decoration:none;font-size:12px;font-weight:700;background:#17131d}
.gallery-facebook-link:hover{background:#29212b}
.gallery-album-detail{margin:20px 0 28px;border-bottom:1px solid #4a3e44;padding-bottom:23px}
.gallery-album-back{font:inherit;cursor:pointer;padding:10px 15px;margin-bottom:22px;background:#1b1c27;border:1px solid #a78a66;color:#f4c98a;border-radius:9px}
.gallery-album-detail-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap}
.gallery-album-detail h2{font:normal clamp(30px,5vw,43px) Georgia,serif;color:#f3e8de;margin:9px 0}
.gallery-album-detail p{color:#c4b6b8;font-size:14px;margin:0}
.gallery-album-facebook{background:#e8bd80;color:#1b1413;text-decoration:none;border-radius:9px;font-size:13px;font-weight:750;padding:14px 18px;max-width:100%}
.gallery-album-facebook:hover{background:#f3d49f}
.gallery-card.gallery-photo img{height:auto;min-height:180px;max-height:360px;aspect-ratio:auto;object-fit:contain;background:#0d1018;display:block}
.gallery-card.gallery-photo .copy{padding:8px 14px 12px}
.gallery-card.gallery-photo .copy:empty{display:none}
@media(max-width:680px){.gallery-album-info h2{font-size:21px}.gallery-album-detail-head{align-items:flex-start;flex-direction:column}.gallery-album-facebook{width:100%;text-align:center}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:12px}}
[hidden]{display:none!important}

/* Instagram Reel verticali: copertina locale e player ufficiale caricato su richiesta. */
.gallery-reel{position:relative}
.gallery-reel-cover{position:relative;background:#0a0a11}
.gallery-reel-cover img{width:100%;aspect-ratio:9/16;height:auto;max-height:460px;object-fit:cover;display:block}
.gallery-reel-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:1px solid rgba(255,255,255,.75);border-radius:999px;background:rgba(15,12,20,.87);color:#fff;font:750 14px system-ui;padding:15px 20px;white-space:nowrap;cursor:pointer}
.gallery-reel-play:hover,.gallery-reel-play:focus-visible{background:#edc78d;color:#171019}
.gallery-reel .copy p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.gallery-reel-modal{width:min(510px,calc(100vw - 28px));max-height:calc(100dvh - 36px);overflow-y:auto;border:1px solid #b89c7d;border-radius:14px;padding:18px;background:#15141d;color:#f8eee4}
.gallery-reel-modal::backdrop{background:rgba(0,0,0,.87)}
.gallery-reel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;font-size:13px;letter-spacing:.08em}
.gallery-reel-head button{border:1px solid #aa8e71;background:#251f29;color:#fff;border-radius:8px;padding:9px 14px;cursor:pointer}
.gallery-reel-embed{min-height:100px;display:flex;justify-content:center;align-items:flex-start}
.gallery-reel-embed .instagram-media{max-width:100%!important;min-width:0!important;margin:0 auto!important}
#gallery-reel-original{display:block;text-align:center;color:#eed2a7;margin-top:18px}


/* Reel video: formato nativo 9:16, silenzioso all'avvio e controllabile dal visitatore. */
.gallery-reel-cover .moma-reel-video{display:block;width:100%;aspect-ratio:9/16;min-height:270px;max-height:480px;object-fit:contain;background:#080a11}
.gallery-reel-cover .moma-reel-video-error{background:#0b0b12}
.gallery-reel .copy a{display:inline-block;margin-top:8px}
