/* ATTURA.COM — Gianluca Attura · portfolio fotografico (multi-pagina, tema scuro) */
@font-face{font-family:"Archivo";src:url("fonts/archivo.woff2") format("woff2");font-weight:400 700;font-display:swap}
:root{
  --bg:#000000; --bg-2:#0a0a0c; --line:#26262b;
  --ink:#f3f1ec; --muted:#9a948a; --muted-2:#6f6a62;
  --accent:#e0a13c;
  --max:1320px; --r:8px;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --shadow:0 18px 55px rgba(0,0,0,.6);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:18px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--accent);text-underline-offset:3px}
.wrap{max-width:var(--max);margin-inline:auto;padding-inline:clamp(18px,5vw,48px)}
.skip{position:absolute;left:-9999px;top:0;background:var(--accent);color:#111;padding:10px 16px;z-index:80;font-weight:700}
.skip:focus{left:0}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}

.site{position:sticky;top:0;z-index:40;background:rgba(0,0,0,.78);backdrop-filter:saturate(1.2) blur(10px);border-bottom:1px solid var(--line)}
.site__row{display:flex;align-items:center;justify-content:space-between;min-height:64px;gap:18px}
.brand{flex-shrink:0;display:block}
.brand__full{height:26px;width:auto;display:block;aspect-ratio:754/98}
.brand__full img{height:100%;width:100%;object-fit:contain;display:block}
.brand__mark{display:none;height:30px;width:auto;aspect-ratio:1/1}
.brand__mark img{height:100%;width:100%;object-fit:contain;display:block}
@media(max-width:560px){
  .brand__full{display:none}
  .brand__mark{display:block}
}
.nav{display:flex;gap:clamp(12px,2.4vw,28px);overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.nav::-webkit-scrollbar{display:none}
.nav a{flex-shrink:0}
.nav a{font-family:"Archivo",var(--sans);font-weight:600;font-size:.86rem;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);text-decoration:none;transition:color .18s ease}
.nav a:hover,.nav a[aria-current="page"]{color:var(--accent)}
@media(max-width:560px){.nav{gap:13px}.nav a{font-size:.7rem;letter-spacing:.07em}}

.home-hero{text-align:center;padding-block:clamp(54px,12vw,120px) clamp(30px,6vw,64px);position:relative;overflow:hidden}
.home-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 65% at 50% 0%,rgba(224,161,60,.10),transparent 70%)}
.home-hero__in{position:relative}
.home-logo{width:min(620px,80vw);aspect-ratio:754/98;margin:0 auto;display:block}
.home-logo img{width:100%;height:100%;object-fit:contain;display:block}
.home-tag{font-family:"Archivo",var(--sans);font-weight:500;letter-spacing:.03em;color:var(--muted);font-size:clamp(.82rem,3vw,1.5rem);margin:1.3em auto 0;white-space:nowrap}
.home-by{margin-top:1.5em;font-size:.8rem;letter-spacing:.22em;text-transform:uppercase;color:var(--muted-2)}
.home-by b{color:var(--accent);font-weight:600}

.covers{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding-bottom:clamp(40px,8vw,80px)}
@media(max-width:680px){.covers{grid-template-columns:1fr}}
.cover{position:relative;display:block;overflow:hidden;border-radius:var(--r);aspect-ratio:16/10;text-decoration:none;background:#17171b;box-shadow:0 8px 26px rgba(0,0,0,.45)}
.cover img{width:100%;height:100%;object-fit:cover;filter:saturate(.9) brightness(.62);transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .4s ease}
.cover::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.55),transparent 55%)}
.cover__label{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.3em}
.cover__name{font-family:"Archivo",var(--sans);font-weight:800;letter-spacing:.02em;font-size:clamp(2.1rem,5vw,3.4rem);color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.6)}
.cover__n{font-family:"Archivo",var(--sans);font-weight:600;font-size:.78rem;letter-spacing:.28em;text-transform:uppercase;color:var(--accent);opacity:.95}
.cover__go{margin-top:.6em;font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;color:#d8d3c9;opacity:0;transform:translateY(6px);transition:opacity .3s ease,transform .3s ease}
.cover:hover img{transform:scale(1.06);filter:saturate(1.05) brightness(.72)}
.cover:hover .cover__go,.cover:focus-visible .cover__go{opacity:1;transform:none}
.cover:hover{box-shadow:var(--shadow)}

.pagehead{padding-block:clamp(34px,7vw,72px) clamp(20px,3vw,30px)}
.pagehead__n{font-family:"Archivo",var(--sans);font-weight:600;font-size:.8rem;letter-spacing:.26em;text-transform:uppercase;color:var(--accent);margin:0 0 .6em}
.pagehead h1{font-family:"Archivo",var(--sans);font-weight:800;letter-spacing:-.01em;font-size:clamp(2.4rem,8vw,4.6rem);margin:0;line-height:.95}
.pagehead p{color:var(--muted);max-width:48ch;margin:.9em 0 0}
.crumbs{display:flex;gap:8px;flex-wrap:wrap;margin-top:1.6em}
.crumbs a{font-family:"Archivo",var(--sans);font-weight:600;font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;color:var(--muted);border:1px solid var(--line);padding:7px 14px;border-radius:999px;transition:.18s}
.crumbs a:hover{color:var(--accent);border-color:var(--accent)}
.crumbs a[aria-current="page"]{color:#111;background:var(--accent);border-color:var(--accent)}

.ugrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;padding-bottom:clamp(50px,9vw,100px)}
@media(max-width:520px){.ugrid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}}
.shot{position:relative;margin:0}
.shot__btn{display:block;width:100%;padding:0;border:0;cursor:pointer;overflow:hidden;border-radius:var(--r);background:#17171b;position:relative;aspect-ratio:1/1;line-height:0;box-shadow:0 5px 16px rgba(0,0,0,.4);transition:box-shadow .25s ease,transform .25s ease}
.shot__btn img{width:100%;height:100%;object-fit:cover;filter:saturate(.92) brightness(.95);transition:transform .6s cubic-bezier(.2,.7,.2,1),filter .35s ease}
.shot__btn::after{content:"";position:absolute;inset:0;border:1px solid transparent;border-radius:var(--r);transition:border-color .25s ease;pointer-events:none}
.shot__btn:hover{transform:translateY(-3px);box-shadow:var(--shadow);z-index:2}
.shot__btn:hover img{transform:scale(1.1);filter:saturate(1.06) brightness(1.04)}
.shot__btn:hover::after,.shot__btn:focus-visible::after{border-color:rgba(224,161,60,.6)}
.shot__cap{position:absolute;left:0;right:0;bottom:0;padding:28px 13px 11px;color:#fff;font-size:1.02rem;font-weight:500;text-align:left;line-height:1.25;background:linear-gradient(to top,rgba(0,0,0,.82),transparent);opacity:0;transform:translateY(8px);transition:opacity .25s ease,transform .25s ease}
.shot__btn:hover .shot__cap,.shot__btn:focus-visible .shot__cap{opacity:1;transform:none}

.foot{background:var(--bg-2);border-top:1px solid var(--line);padding-block:30px;color:var(--muted-2);text-align:center}
.foot p{margin:.4em 0;font-size:.9rem;text-align:center}.foot b{color:var(--muted)}
.foot a{color:var(--muted)}

.lb{position:fixed;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;background:rgba(5,5,7,.97)}
.lb[hidden]{display:none}
.lb__fig{margin:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center}
.lb__fig img{width:100vw;height:100vh;object-fit:contain}
.lb__cap{position:fixed;left:0;right:0;bottom:0;text-align:center;padding:30px 16px 14px;color:#eee;font-family:"Archivo",var(--sans);letter-spacing:.02em;font-size:1.2rem;background:linear-gradient(to top,rgba(0,0,0,.72),transparent);pointer-events:none}
.lb__nav{position:fixed;top:50%;transform:translateY(-50%);width:56px;height:56px;border:0;cursor:pointer;z-index:2;
  background:rgba(255,255,255,.10);color:#fff;border-radius:999px;backdrop-filter:blur(4px);
  font-size:2.1rem;line-height:1;display:flex;align-items:center;justify-content:center;transition:background .15s ease}
.lb__nav:hover{background:rgba(255,255,255,.22)}
.lb__prev{left:16px}.lb__next{right:16px}
/* chiusura: bottone ARANCIONE, forma diversa (quadrato arrotondato), in basso a destra, lontano dalle frecce */
.lb__back{position:fixed;bottom:22px;right:22px;width:60px;height:60px;border:0;cursor:pointer;z-index:3;
  background:var(--accent);color:#111;border-radius:16px;
  font-size:2rem;line-height:1;display:flex;align-items:center;justify-content:center;
  box-shadow:0 10px 26px rgba(0,0,0,.55);transition:transform .15s ease,background .15s ease}
.lb__back:hover{background:#f1b552;transform:translateY(-2px)}
.lb__count{position:fixed;top:22px;left:50%;transform:translateX(-50%);color:#c8c2b8;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;z-index:2}
@media(max-width:600px){
  .lb__nav{width:46px;height:46px;font-size:1.7rem}.lb__prev{left:8px}.lb__next{right:8px}
  .lb__back{width:52px;height:52px;bottom:16px;right:16px;font-size:1.7rem}
}

@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}.shot__btn:hover img,.cover:hover img{transform:none}}


.foot__notice{color:var(--muted);font-size:.92rem;line-height:1.5;text-align:center}

/* ---------- Protezione base immagini (no download casuale: click destro/trascinamento) ---------- */
img{-webkit-user-select:none;-moz-user-select:none;user-select:none;
  -webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;user-drag:none;
  -webkit-touch-callout:none;pointer-events:auto}
