:root{--paper:#fafafa;--ink:#191919;--muted:#656565;--accent:#ad332a}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:6px}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid #ddd;gap:25px}.brand{font-size:27px;font-weight:700;letter-spacing:-1.5px;white-space:nowrap}.brand span{font-weight:400}.brand i{color:var(--accent);font-style:normal}nav{display:flex;gap:32px}nav a{font-size:14px}nav a:hover,.text-link:hover{color:var(--accent)}.header-note{font-size:14px;color:var(--muted)}.hero{padding:48px 5vw 0}.hero-heading{display:grid;grid-template-columns:1fr 2fr 1fr;align-items:end;margin-bottom:40px;gap:25px}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:600;margin:0 0 16px}.hero-heading>.eyebrow{align-self:start;padding-top:15px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.055em;line-height:1.05}h1{font-size:clamp(58px,6.8vw,110px);margin:0}h1 em{font-weight:400}h2{font-size:clamp(40px,4.7vw,72px)}.text-link{font-size:14px;border-bottom:1px solid;justify-self:end;display:inline-block;padding-bottom:4px}.hero-image{display:block;background:#111}.hero-image img{width:100%;height:auto;max-height:74vh;object-fit:contain;display:block}.hero-caption{display:flex;justify-content:space-between;padding:12px 0;font-size:12px;letter-spacing:1px;text-transform:uppercase}.gallery-section{padding:100px 5vw}.section-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;border-top:1px solid #bbb;padding-top:28px;margin-bottom:45px}.section-heading .eyebrow{grid-column:1/-1}.section-heading h2{margin:5px 0}.section-heading>p:last-child{text-align:right;color:var(--muted);margin:0}.gallery-cards{display:grid;grid-template-columns:1fr 1fr;gap:65px 35px}.gallery-card:nth-child(5){grid-column:1/-1;width:75%;margin:0 auto}.cover{overflow:hidden;background:#e8e8e8;aspect-ratio:16/10;display:flex;align-items:center;justify-content:center}.cover img{width:100%;height:100%;object-fit:contain;transition:transform .5s}.gallery-card:hover .cover img{transform:scale(1.02)}.card-caption{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding-top:18px}.card-caption h3{font-family:Georgia,serif;font-size:30px;line-height:1.2;font-weight:400;margin-bottom:10px;letter-spacing:-1px}.card-caption span{font-size:12px;color:var(--muted);white-space:nowrap}.gallery-card>p{font-size:14px;color:var(--muted);margin:0}.about{background:#171717;color:#f5f5f5;padding:80px 8vw 100px;display:grid;grid-template-columns:1.1fr 1fr;gap:25px 10vw}.about>.eyebrow{grid-column:1/-1;color:#b5b5b5}.about h2{font-size:clamp(40px,4vw,64px);margin:0}.about p{color:#d0d0d0}.signature{display:block;margin-top:35px;font-size:14px}footer{padding:50px 5vw;display:flex;gap:25px;justify-content:space-between;align-items:center;border-top:1px solid #ddd}footer p,footer>a:last-child{font-size:14px;margin:0;color:var(--muted)}#gallery-view{padding:45px 5vw 90px;min-height:75vh}.gallery-heading{padding:60px 0}.gallery-heading h1{font-size:clamp(52px,7vw,110px);margin:0 0 25px}.gallery-heading>p:last-child{color:var(--muted);margin:0}#photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px 36px;align-items:start}.photo{margin:0}.photo button{display:block;width:100%;background:transparent;border:0;padding:0;text-align:left}.photo img{display:block;width:100%;height:auto;max-height:78vh;object-fit:contain;background:#f0f0f0}.photo figcaption{font-size:12px;color:var(--muted);padding-top:10px;display:flex;gap:20px}.photo:first-child{grid-column:1/-1;max-width:1100px;width:100%;margin:auto}.photo:first-child img{background:transparent}#gallery-navigation{margin-top:80px;border-top:1px solid #ccc;padding-top:28px;flex-wrap:wrap}#gallery-navigation a[aria-current]{color:var(--accent)}dialog{background:#111;color:white;border:0;max-width:none;max-height:none;width:100vw;height:100dvh;padding:22px 3vw}dialog::backdrop{background:#111}dialog[open]{display:flex;flex-direction:column}.lightbox-top,.lightbox-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px}.lightbox-top{height:45px;font-size:14px}.lightbox-top button,.lightbox-bottom button{background:transparent;color:white;border:1px solid #666;padding:8px 16px;font-size:14px}.lightbox-image{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:15px 0}.lightbox-image img{max-width:100%;max-height:100%;object-fit:contain}.lightbox-bottom{min-height:65px;text-align:center;font-size:14px}.lightbox-bottom p{margin:0}.lightbox-bottom span{font-size:12px;color:#aaa}.skip{position:fixed;top:-100px;left:12px;padding:12px;background:white;z-index:20}.skip:focus{top:12px}[hidden]{display:none!important}@media(max-width:750px){header{height:82px;padding:0 6vw;gap:16px}.brand{font-size:24px}.header-note{display:none}nav{gap:20px}.hero{padding:32px 6vw 0}.hero-heading{grid-template-columns:1fr;gap:16px;margin-bottom:25px}.hero-heading>.eyebrow{padding:0;margin-bottom:0}.hero h1{font-size:clamp(54px,12vw,90px)}.hero h1 br{display:none}.hero h1 em{display:block}.hero-heading .text-link{justify-self:start}.hero-image img{max-height:none}.gallery-section{padding:60px 6vw}.section-heading{display:block}.section-heading>p:last-child{text-align:left;margin-top:15px}.gallery-cards{grid-template-columns:1fr;gap:40px}.gallery-card:nth-child(5){width:100%}.card-caption h3{font-size:28px}.about{display:block;padding:55px 6vw}.about h2{margin:25px 0}.about>.eyebrow{margin-bottom:25px}footer{flex-wrap:wrap;padding:35px 6vw}footer p{margin-left:auto}footer>a:last-child{width:100%}#gallery-view{padding:30px 6vw 60px}.gallery-heading{padding:40px 0}#photo-grid{grid-template-columns:1fr;gap:32px}.photo:first-child{grid-column:auto}.photo img{max-height:none}.lightbox-bottom{flex-wrap:wrap}.lightbox-bottom>div{order:-1;width:100%}dialog{padding:12px 4vw}.lightbox-top{font-size:12px}.lightbox-top button{font-size:12px}.lightbox-bottom p{font-size:12px}#gallery-navigation{gap:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Migliorie 2026: leggibilità, navigazione e resa fotografica */
::selection{background:var(--ink);color:var(--paper)}
header{position:sticky;top:0;z-index:10;background:rgba(250,250,250,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.hero-image img,.cover img,.photo img{image-rendering:auto}
.gallery-card{content-visibility:auto;contain-intrinsic-size:700px}
@media(hover:hover){.gallery-card .card-caption h3{transition:color .25s ease}.gallery-card:hover .card-caption h3{color:var(--accent)}}
@media(max-width:750px){body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}header{padding-top:env(safe-area-inset-top)}}
