/* Sergio Grasso Materia — Realizzazioni photographic galleries */
.sg-realizations-photos{background:#f4f1eb}
.sg-photo-hero{padding:35px 0 55px}
.sg-photo-hero h1{font:400 clamp(52px,6vw,94px)/1.03 Georgia,serif;letter-spacing:-.05em;margin:25px 0}
.sg-photo-hero h1 em,.sg-photo-heading h2 em{font-weight:400;color:#978a76}
.sg-photo-hero p{max-width:830px;font-size:clamp(17px,1.5vw,21px);line-height:1.65;color:#665e54;margin:0}
.sg-photo-index{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 65px}
.sg-photo-index button{display:inline-block;padding:13px 20px;border:1px solid #c8bcad;border-radius:0;background:transparent;color:#26221e;cursor:pointer;font-family:inherit;font-size:11px;letter-spacing:.09em;text-transform:uppercase;font-weight:700;text-decoration:none}
.sg-photo-index button:hover,.sg-photo-index button:focus-visible,.sg-photo-index button.is-active{background:#26221e;color:#fff}
.sg-photo-group[hidden],.sg-historic-sinks[hidden]{display:none!important}
main.sg-realizations-photos{padding-top:80px!important}
.sg-photo-index a{display:inline-block;padding:13px 20px;border:1px solid #c8bcad;border-radius:0;background:transparent;color:#26221e;font-size:11px;letter-spacing:.09em;text-transform:uppercase;font-weight:700;text-decoration:none}
.sg-photo-index a:hover,.sg-photo-index a:focus-visible{background:#26221e;color:#fff}
.sg-photo-group{scroll-margin-top:40px}
.sg-photo-gallery:has(>.sg-photo-item:only-child){display:grid;grid-template-columns:minmax(0,680px)}
.sg-photo-gallery:has(>.sg-photo-item:only-child) .sg-photo-open{height:auto;aspect-ratio:4/3;max-height:480px}
.sg-photo-gallery:has(>.sg-photo-item:only-child) .sg-photo-open img{object-fit:cover}
@media(max-width:650px){.sg-photo-gallery:has(>.sg-photo-item:only-child){grid-template-columns:minmax(0,1fr)}.sg-photo-gallery:has(>.sg-photo-item:only-child) .sg-photo-open{height:auto;aspect-ratio:4/3}}
.sg-photo-group{padding:60px 0 85px;border-top:1px solid #c6bbad;scroll-margin-top:50px}
.sg-photo-heading{max-width:890px;margin-bottom:35px}
.sg-photo-heading h2{font:400 clamp(39px,4.6vw,69px)/1.07 Georgia,serif;letter-spacing:-.045em;margin:18px 0}
.sg-photo-heading p{font-size:16px;line-height:1.7;color:#645c53;margin:0;max-width:790px}
.sg-photo-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:27px}
.sg-photo-gallery .sg-photo-item{margin:0;min-width:0}
.sg-photo-open{appearance:none;display:block;width:100%;height:clamp(290px,31vw,440px);border:0;padding:0;margin:0;background:#d6cfc5;cursor:zoom-in;overflow:hidden}
.sg-photo-open img{display:block;width:100%!important;height:100%!important;object-fit:cover;transition:transform .45s ease}
.sg-photo-open:hover img{transform:scale(1.035)}
.sg-photo-open:focus-visible{outline:3px solid #8d7458;outline-offset:4px}
.sg-photo-item figcaption{font-size:12px;color:#776e63;margin:14px 0 0;letter-spacing:.04em}
.sg-photo-gallery:has(>.sg-photo-item:only-child){grid-template-columns:minmax(0,1fr)}
.sg-photo-gallery:has(>.sg-photo-item:only-child) .sg-photo-open{height:clamp(400px,49vw,630px)}
.sg-historic-sinks{border-top:1px solid #c6bbad;padding:75px 0 110px}
.sg-historic-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:15px}
.sg-historic-strip figure{margin:0;background:#fff;padding:8px;min-width:0;border:1px solid #e4dcd1;text-align:center}
.sg-historic-strip img{display:block;width:100%!important;max-width:115px;margin:0 auto;height:112px!important;object-fit:contain;image-rendering:auto}
.sg-historic-strip figcaption{font-size:10px;letter-spacing:.12em;color:#746c60;margin:8px 0}
.sg-photos-dialog{position:fixed;inset:0;width:100vw!important;max-width:none!important;height:100dvh!important;max-height:none!important;margin:0!important;padding:0!important;background:#151411!important;border:0!important;border-radius:0!important;color:#fff!important;box-shadow:none!important;overflow:hidden}
.sg-photos-dialog::backdrop{background:rgba(0,0,0,.92)}
.sg-photos-dialog:not([open]){display:none!important}
.sg-photos-dialog-inner{height:100%;display:flex;flex-direction:column;justify-content:center;padding:75px clamp(12px,4vw,65px) 25px;position:relative}
.sg-photos-close{position:absolute;top:18px;right:clamp(15px,4vw,65px);display:flex;align-items:center;gap:12px;background:transparent!important;border:1px solid rgba(255,255,255,.45)!important;color:#fff!important;padding:10px 16px!important;cursor:pointer;font-size:13px;text-transform:uppercase;letter-spacing:.1em}
.sg-photos-close span{font-size:24px}
.sg-photos-stage{display:grid;grid-template-columns:55px minmax(0,1fr) 55px;align-items:center;gap:14px;min-height:0}
.sg-photos-full{display:block;width:100%;height:calc(100dvh - 175px);object-fit:contain!important}
.sg-photos-prev,.sg-photos-next{background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.3)!important;color:#fff!important;font:400 35px Georgia,serif;cursor:pointer;width:52px;height:58px;padding:0!important}
.sg-photos-prev:disabled,.sg-photos-next:disabled{opacity:.25;cursor:default}
.sg-photos-caption{text-align:center;font-size:13px;color:#e0d7c9;margin:15px 0 0}
@media(max-width:850px){.sg-historic-strip{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:650px){.sg-photo-group{padding:42px 0 65px}.sg-photo-gallery{grid-template-columns:1fr;gap:25px}.sg-photo-open{height:310px}.sg-photo-gallery:has(>.sg-photo-item:only-child) .sg-photo-open{height:320px}.sg-historic-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.sg-historic-strip img{height:95px!important}.sg-photos-stage{grid-template-columns:35px minmax(0,1fr) 35px;gap:4px}.sg-photos-prev,.sg-photos-next{width:34px;height:50px}.sg-photos-full{height:calc(100dvh - 185px)}}
@media(prefers-reduced-motion:reduce){.sg-photo-open img{transition:none}}

/* Photo thumbnails are interactive: understated photographic cards, no numbering */
.sg-historic-strip figure{padding:0!important;background:transparent!important;border:0!important}
.sg-historic-strip .sg-historic-open{display:grid;place-items:center;width:100%;height:152px;min-height:0;padding:12px;border:1px solid #d5c9ba;background:#fff;cursor:zoom-in;appearance:none;border-radius:2px;box-shadow:none}
.sg-historic-strip .sg-historic-open:hover{border-color:#8d7861}
.sg-historic-strip .sg-historic-open:focus-visible{outline:3px solid #8a755b;outline-offset:3px}
.sg-historic-strip .sg-historic-open img{max-width:100%;width:auto!important;height:auto!important;max-height:125px!important;object-fit:contain}
.sg-historic-modal .sg-photos-full{width:auto!important;max-width:min(80vw,600px)!important;height:auto!important;max-height:65vh!important;margin:auto;image-rendering:auto}
.sg-historic-modal .sg-photos-stage{min-height:0}
@media(max-width:650px){.sg-historic-strip .sg-historic-open{height:118px;padding:8px}.sg-historic-strip .sg-historic-open img{max-height:98px!important}}
