@font-face{font-family:unused;src:local("Georgia")} :root{--paper:#f3f0e8;--ink:#282b24;--muted:#6c6c60;--line:#d4d2c7;--accent:#777e54}*{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:15px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:6px}header{height:105px;display:flex;align-items:center;justify-content:space-between;margin:0 5%;border-bottom:1px solid var(--line);gap:25px}.brand{font-size:37px;font-weight:700;letter-spacing:-3px;line-height:1}.brand span{display:block;font-size:9px;letter-spacing:5px;margin:8px 0 0 5px}nav{display:flex;gap:35px;font-size:13px}.header-contact{font-size:13px;border-bottom:1px solid var(--ink);padding:6px 0}.header-contact span{margin-left:30px}.intro{padding:65px 7% 40px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600}.intro h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(42px,5.6vw,84px);font-weight:400;letter-spacing:-3px;line-height:1.1;margin:28px 0 32px}em{font-weight:400;color:var(--accent)}.intro-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:25px}.intro-bottom p{font-size:14px;color:var(--muted);margin:0}.text-link{font-size:12px;border-bottom:1px solid var(--ink);padding-bottom:8px;display:inline-flex;gap:40px;align-items:center}.cover{margin:0 3%;position:relative}.cover>img{display:block;width:100%;height:58vw;max-height:690px;min-height:350px;object-fit:cover}.cover figcaption{position:absolute;inset:auto 27px 23px;display:flex;justify-content:space-between;color:white;font-size:9px;letter-spacing:1.8px;text-shadow:0 1px 8px #000}.section{padding:95px 7%}.section-top{display:flex;justify-content:space-between;gap:20px}.small-note{color:var(--muted);font-size:12px}h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(34px,4vw,58px);font-weight:400;line-height:1.15;letter-spacing:-1.7px;margin:30px 0}h3{font-weight:400}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:50px}.section-heading>p{max-width:310px;color:var(--muted);font-size:14px}.filters{display:flex;gap:10px;margin:20px 0 30px}.filters button{border:1px solid var(--line);background:none;border-radius:30px;padding:7px 18px;font-size:12px}.filters button.active{background:var(--ink);color:var(--paper);border-color:var(--ink)}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:50px 30px}.gallery figure{margin:0}.gallery figure[hidden]{display:none}.gallery figure:nth-child(even){padding-top:70px}.photo{display:block;width:100%;border:0;padding:0;background:#d9d7c9;overflow:hidden}.photo img{display:block;width:100%;height:470px;object-fit:cover;transition:transform .6s}.photo:hover img{transform:scale(1.025)}.gallery figcaption{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-top:13px}.gallery h3{font-family:Georgia,serif;font-size:23px;margin:0}.gallery figcaption span{font-size:8px;letter-spacing:1.3px;color:var(--muted)}.demo-note{font-size:11px;color:var(--muted);margin-top:35px}.approach{display:grid;grid-template-columns:1fr 2fr;background:#e6e7dc;gap:35px}.approach h2{margin-top:0}.approach p{max-width:580px;color:#5d6254}.approach .text-link{margin-top:20px}.services h2{margin-bottom:50px}.service-row{display:grid;grid-template-columns:55px 1fr 1fr;gap:25px;border-top:1px solid var(--line);padding:28px 0}.number{color:var(--accent);font-size:12px}.service-row h3{font-family:Georgia,serif;font-size:29px;line-height:1.2;margin:0}.service-row p{margin:0;color:var(--muted);font-size:14px;max-width:410px}.process{padding-top:40px;border-top:1px solid var(--line);margin:0 7%;padding-left:0;padding-right:0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:40px}.steps span{font-size:9px;letter-spacing:1.5px;color:var(--accent)}.steps h3{font-family:Georgia,serif;font-size:25px;line-height:1.2}.steps p{font-size:13px;color:var(--muted)}.contact{background:#292e26;color:var(--paper);padding-top:75px;padding-bottom:30px}.contact h2{font-size:clamp(45px,6vw,85px)}.contact em{color:#bac39b}.contact p{color:#c4c7b9;font-size:14px}.email{display:inline-block;font-size:clamp(19px,3.3vw,46px);letter-spacing:-1px;border-bottom:1px solid #828775;padding:15px 0}.email span{padding-left:35px}.contact-bottom{display:flex;justify-content:space-between;margin-top:90px;font-size:9px;letter-spacing:1.4px}footer{display:flex;justify-content:space-between;gap:20px;padding:23px 7%;font-size:10px;color:var(--muted)}footer button{background:none;border:0;padding:0;font-size:10px;text-decoration:underline}dialog{border:0;padding:40px;background:var(--paper);color:var(--ink);max-width:min(650px,92vw);max-height:90vh}dialog::backdrop{background:#141711dd}.close{position:absolute;right:12px;top:6px;border:0;background:transparent;font-size:30px;line-height:1.2}#lightbox{padding:35px 20px 12px;background:#191c17;color:white;max-width:95vw}#lightbox img{display:block;max-width:85vw;max-height:75vh;object-fit:contain}#lightbox p{font-size:12px;margin:8px 0 0}#lightbox .close{color:white}#privacy h2{font-size:30px}#privacy p{font-size:14px}body.modal-open{overflow:hidden}@media(min-width:1600px){body{max-width:1800px;margin:auto}}@media(max-width:700px){header{height:85px;margin:0 6%;gap:10px}.brand{font-size:30px}nav{gap:13px;font-size:11px}.header-contact{font-size:11px}.header-contact span{margin-left:5px}.intro{padding:45px 6% 30px}.intro h1{letter-spacing:-1.6px;font-size:43px}.intro-bottom{align-items:flex-start;flex-direction:column;gap:22px}.intro-bottom p{font-size:12px}.cover{margin:0 3%}.cover>img{height:65vh;min-height:350px;max-height:600px}.cover figcaption{inset:auto 15px 15px;font-size:7px;letter-spacing:1px;gap:20px}.section{padding:60px 6%}.section-heading{display:block}.section-heading p{max-width:100%}.small-note{font-size:10px}.gallery{gap:30px 15px}.gallery figure:nth-child(even){padding-top:35px}.photo img{height:260px}.gallery figcaption{display:block}.gallery h3{font-size:20px;line-height:1.2;margin-bottom:6px}.gallery figcaption span{font-size:7px}.filters{gap:6px}.filters button{padding:6px 13px;font-size:11px}.approach{grid-template-columns:1fr;gap:25px}.approach p{font-size:14px}.service-row{grid-template-columns:25px 1fr;gap:15px}.service-row h3{font-size:25px}.service-row p{grid-column:2}.process{padding:40px 0 60px;margin:0 6%}.steps{grid-template-columns:1fr;gap:20px;margin-top:25px}.steps h3{margin:8px 0}.steps p{margin:0}.contact-bottom{letter-spacing:.7px;margin-top:65px;font-size:8px}footer{flex-wrap:wrap;padding:20px 6%}footer>span:last-child{width:100%}.desktop{display:none}}@media(max-width:380px){nav{gap:9px}.header-contact{display:none}.intro h1{font-size:36px}.gallery{grid-template-columns:1fr}.gallery figure:nth-child(even){padding-top:0}.photo img{height:350px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

/* Identità dello studio e contatti diretti */
header{height:140px}.brand{display:block;width:120px;height:120px;flex-shrink:0}.brand img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.social-contacts{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:28px}.whatsapp-contact{display:inline-block;padding:12px 20px;border:1px solid #bac39b;border-radius:3px;color:#f3f0e8;font-size:14px}.whatsapp-contact:hover{background:#414b39}.instagram-contact{font-size:13px;text-decoration:underline;text-underline-offset:5px}.whatsapp-fixed{position:fixed;right:22px;bottom:22px;z-index:20;display:flex;align-items:center;gap:9px;border-radius:40px;padding:13px 20px;background:#285c40;color:#fff;box-shadow:0 4px 20px #0003;font-size:13px;border:1px solid #ffffff55}.whatsapp-fixed:hover{background:#1d4931}footer{padding-bottom:90px}@media(max-width:700px){header{height:105px}.brand{width:88px;height:88px}.whatsapp-fixed{right:14px;bottom:14px;padding:12px 16px}.social-contacts{gap:20px}.contact-bottom{flex-wrap:wrap;gap:15px}}

/* Fotografie intere: le dimensioni seguono sempre il file originale. */
.cover>img{width:100%;height:auto;min-height:0;max-height:none;object-fit:contain}.cover figcaption{position:static;color:var(--muted);text-shadow:none;padding:14px 0;font-size:9px}.cover:has(img.portrait){max-width:720px;margin-left:auto;margin-right:auto}.gallery{align-items:start}.gallery figure:nth-child(even){padding-top:0}.photo img{width:100%;height:auto;max-height:none;object-fit:contain}.photo:hover img{transform:none}.gallery figcaption{flex-wrap:wrap}.projects-section{border-top:1px solid var(--line)}.projects-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 25px;align-items:start}.project-card[hidden]{display:none}.project-open{padding:0;background:none;border:0;text-align:left;width:100%}.project-visual{background:#e5e3d8;display:flex;align-items:center;justify-content:center}.project-visual img{display:block;width:100%;height:auto}.project-placeholder{min-height:180px;display:flex;align-items:center;justify-content:center;font-size:11px;letter-spacing:1px;color:var(--muted)}.project-open h3{font-family:Georgia,serif;font-size:24px;line-height:1.25;margin:15px 0 5px}.project-label{font-size:10px;color:var(--muted)}#project-view{width:1150px;max-width:94vw;padding:45px;overscroll-behavior:contain}#project-view h2{margin:15px 0}#project-status{font-size:12px;color:var(--muted)}.project-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:25px;margin-top:25px}.project-photos figure{margin:0}#lightbox{max-width:96vw}#lightbox img{width:auto;height:auto;max-width:85vw;max-height:75vh}@media(max-width:700px){header{height:auto;min-height:105px;flex-wrap:wrap;padding:10px 0}nav{flex-wrap:wrap;gap:12px}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 15px}.project-open h3{font-size:21px}.project-placeholder{min-height:135px;font-size:10px}.gallery{grid-template-columns:1fr;gap:35px}.cover:has(img.portrait){margin:0 3%}.project-photos{grid-template-columns:1fr}#project-view{padding:38px 18px 22px}.project-filters{flex-wrap:wrap}.cover figcaption{font-size:7px;gap:15px}.photo img{height:auto}}@media(max-width:380px){.projects-grid{grid-template-columns:1fr}}

/* Logo più presente: si riducono i margini bianchi nell’immagine senza alterare il marchio. */
header{height:190px}.brand{width:170px;height:170px;overflow:hidden}.brand img{width:135%;height:135%;max-width:none;transform:translate(-12.96%,-12.96%);object-fit:contain}
@media(max-width:700px){header{height:auto;min-height:150px;gap:12px;padding:8px 0 16px}.brand{width:125px;height:125px}header nav{order:3;width:100%;justify-content:center;gap:22px}header .header-contact{margin-left:auto;font-size:12px}}
@media(max-width:380px){header .header-contact{display:block}header nav{gap:16px}}

/* Presentazione personale */
.bio{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(35px,7vw,110px);align-items:center;border-top:1px solid var(--line)}.bio-photo{margin:0}.bio-photo img{display:block;width:100%;height:auto}.bio-photo figcaption{font-size:9px;letter-spacing:1.6px;color:var(--muted);padding-top:13px}.bio-copy h2{margin-top:22px}.bio-copy p{color:var(--muted);max-width:500px}.bio-copy .bio-lead{font-family:Georgia,serif;font-size:24px;line-height:1.45;color:var(--ink)}.bio-copy .text-link{margin-top:20px}header nav{gap:24px}@media(max-width:900px){header nav{gap:14px}.bio{gap:35px}}@media(max-width:700px){.bio{grid-template-columns:1fr;gap:30px}.bio-photo{width:min(100%,420px);margin:0 auto}.bio-copy .bio-lead{font-size:22px}header nav{gap:12px 20px}}

.project-open{display:block;color:inherit}.project-feature-link{margin-top:35px}.case-intro{display:grid;grid-template-columns:1fr 1fr;gap:45px;max-width:1100px}.case-intro p{color:var(--muted);font-size:16px}.case-story{background:#e6e7dc}.case-gallery{margin-top:35px}.case-gallery figcaption h3{font-size:22px}.case-gallery-section .photo img{height:auto;width:100%}@media(max-width:700px){.case-intro{grid-template-columns:1fr;gap:0}.case-intro p{font-size:14px}.project-feature-link .text-link{display:flex;gap:15px}}
