/* Sara Merone Galleria Unica: CSS isolato, responsive, senza masonry che genera buchi. */
.smu-root,.smu-root * {box-sizing:border-box}
.smu-root {--smu-ink:#322923;--smu-muted:#8e827b;--smu-gold:#a47f62;--smu-paper:#faf7f3;color:var(--smu-ink);max-width:1280px;width:100%;padding:76px clamp(18px,4vw,60px) 88px;margin:0 auto;font-family:inherit}
.smu-root [hidden],.smu-lightbox[hidden]{display:none!important}
.smu-intro{text-align:center;max-width:730px;margin:0 auto 31px}
.smu-eyebrow{font-size:10px;letter-spacing:.29em;font-weight:700;color:var(--smu-gold);text-transform:uppercase}
.smu-eyebrow span{padding:0 10px}
.smu-intro h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(35px,4.7vw,60px);font-weight:400;letter-spacing:-.045em;line-height:1.13;margin:20px 0 16px}
.smu-intro h2 em{color:#b4947e;font-weight:400}
.smu-intro p{max-width:560px;margin:0 auto;font-size:15px;line-height:1.8;color:#81766c}
.smu-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;margin:29px 0 31px}
.smu-controls .smu-tab{appearance:none;-webkit-appearance:none;cursor:pointer;border:1px solid #d9cfc5!important;background:transparent!important;color:#75665b!important;font-family:inherit!important;letter-spacing:.03em!important;font-weight:600!important;text-transform:none!important;font-size:13px!important;line-height:1.2!important;border-radius:40px!important;box-shadow:none!important;padding:13px 25px!important;min-height:45px;transition:background .26s,color .26s,border-color .26s,transform .26s}
.smu-controls .smu-tab:hover{transform:translateY(-2px);border-color:#b69c87!important}
.smu-controls .smu-tab.is-active{color:#fff!important;background:#594439!important;border-color:#594439!important}
.smu-controls .smu-tab:focus-visible,.smu-root button:focus-visible,.smu-root a:focus-visible{outline:2px solid #b4947e;outline-offset:4px}
.smu-results{display:flex;align-items:center;gap:24px;margin-bottom:17px;font-size:11px;text-transform:uppercase;letter-spacing:.17em;color:#9e8878}
.smu-results-line{height:1px;background:#eadfd6;flex:1}
.smu-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px 17px;align-items:start}
.smu-root .smu-card{display:block;text-align:left;width:100%;padding:0!important;border:0!important;background:transparent!important;color:inherit!important;border-radius:0!important;box-shadow:none!important;cursor:zoom-in;font:inherit!important;line-height:1.3!important;min-width:0;animation:smuFade .42s both;animation-delay:var(--smu-delay,0ms)}
.smu-root .smu-card[hidden]{display:none!important}
.smu-photo{display:block;position:relative;overflow:hidden;aspect-ratio:4/5;border-radius:5px;background:#ece3dc}
.smu-photo img{width:100%;height:100%;display:block;object-fit:cover;object-position:center;transition:transform .65s cubic-bezier(.2,.7,.3,1)}
.smu-card:hover .smu-photo img{transform:scale(1.065)}
.smu-photo-cover{position:absolute;inset:40% 0 0;background:linear-gradient(180deg,transparent,rgba(25,16,14,.34));pointer-events:none}
.smu-photo-tag{position:absolute;left:13px;bottom:13px;color:#fff;letter-spacing:.14em;font-size:9px;font-weight:700;text-shadow:0 1px 5px #333;pointer-events:none}
.smu-photo-open{position:absolute;right:13px;bottom:9px;color:#fff;font-size:23px;line-height:1;transition:transform .25s;pointer-events:none}
.smu-card:hover .smu-photo-open{transform:translate(3px,-3px)}
.smu-photo-caption{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 1px 0;font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:#837264}
.smu-photo-caption span:last-child{color:#c8ad97}
.smu-more-wrap{text-align:center;margin:34px 0 0}
.smu-root .smu-more{padding:14px 30px!important;border:1px solid #bca28f!important;background:transparent!important;color:#685345!important;text-transform:none!important;font-family:inherit!important;font-weight:600!important;font-size:13px!important;border-radius:2px!important;cursor:pointer}
.smu-more span{margin-left:12px}
.smu-more-wrap .smu-more:hover{background:#f6eee8!important}
.smu-booking{text-align:center;border-top:1px solid #eaded3;margin-top:60px;padding-top:34px}
.smu-booking p{font-family:Georgia,'Times New Roman',serif;font-size:clamp(20px,2.3vw,29px);font-weight:400;margin:0 0 16px}
.smu-booking a{display:inline-flex;gap:12px;align-items:center;text-decoration:none!important;border:1px solid #594439;background:#594439;color:#fff!important;padding:13px 24px;font-size:12px;font-weight:600;letter-spacing:.025em;transition:background .2s}
.smu-booking a:hover{background:#806654;color:#fff!important}
.smu-modal-open{overflow:hidden!important}
.smu-lightbox{position:fixed;inset:0;z-index:2147483000;display:flex;justify-content:center;align-items:center;padding:20px}
.smu-lightbox-overlay{position:absolute;inset:0;background:rgba(22,18,16,.90);backdrop-filter:blur(8px)}
.smu-dialog{position:relative;display:flex;flex-direction:column;max-width:min(940px,100%);width:100%;max-height:calc(100dvh - 40px);background:#211b18;border:1px solid rgba(255,255,255,.2);color:#fff;border-radius:9px;overflow:hidden;box-shadow:0 22px 75px rgba(0,0,0,.32)}
.smu-dialog-bar{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;min-height:54px;gap:15px;color:#f7eee7;font-family:Georgia,'Times New Roman',serif;font-size:15px}
.smu-lightbox .smu-close{font:400 30px/1 Arial,sans-serif!important;color:#fff!important;background:transparent!important;box-shadow:none!important;border:0!important;padding:4px 9px!important;cursor:pointer}
.smu-stage{--smu-slider:50%;position:relative;display:flex;align-items:center;justify-content:center;background:#100e0c;aspect-ratio:4/3;min-height:0;max-height:calc(100dvh - 155px);overflow:hidden}
.smu-stage img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center}
.smu-stage .smu-after{clip-path:inset(0 0 0 var(--smu-slider));}
.smu-split{position:absolute;z-index:2;pointer-events:none;top:0;bottom:0;left:var(--smu-slider);transform:translateX(-50%);width:2px;background:#fff;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 0 6px #222)}
.smu-split span{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:100%;background:#fff;color:#503b30;font-size:23px;white-space:nowrap;box-shadow:0 3px 15px #333}
.smu-side{position:absolute;z-index:3;top:16px;font-size:10px;letter-spacing:.19em;background:rgba(18,15,12,.54);border-radius:2px;padding:7px 11px;color:#fff;pointer-events:none}
.smu-left{left:16px}.smu-right{right:16px}
.smu-stage .smu-range{appearance:none;-webkit-appearance:none;cursor:ew-resize;position:absolute;z-index:5;inset:0;width:100%;height:100%;margin:0;opacity:0}
.smu-stage .smu-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:34px;height:80px;cursor:ew-resize}
.smu-stage.is-single .smu-before,.smu-stage.is-single .smu-split,.smu-stage.is-single .smu-side{display:none!important}
.smu-stage.is-single .smu-after{clip-path:none}
.smu-dialog-footer{display:flex;justify-content:center;gap:22px;align-items:center;padding:10px;font-size:13px;min-height:49px}
.smu-dialog-footer button{color:#fff!important;border:1px solid rgba(255,255,255,.3)!important;background:transparent!important;border-radius:50%!important;width:34px;height:34px;font-size:17px!important;padding:0!important;cursor:pointer}
@keyframes smuFade{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1000px){.smu-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:21px 14px}.smu-root{padding:54px 20px 65px}}
@media(max-width:690px){.smu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 10px}.smu-root{padding:42px 13px 50px}.smu-controls{gap:6px;margin-top:20px}.smu-controls .smu-tab{padding:11px 13px!important;font-size:11px!important;min-height:41px}.smu-photo-tag{font-size:8px;left:8px;bottom:9px}.smu-photo-open{right:9px;bottom:8px;font-size:17px}.smu-photo-caption{font-size:9px;letter-spacing:.02em;padding-top:7px}.smu-stage{aspect-ratio:3/4}.smu-dialog{max-height:calc(100dvh - 20px)}.smu-lightbox{padding:10px}}
@media(max-width:380px){.smu-controls .smu-tab{padding:10px!important;font-size:10px!important}}
@media(prefers-reduced-motion:reduce){.smu-root *{animation:none!important;transition:none!important}}
