@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Baskerville:ital@0;1&display=swap');
:root{--bg:#f6f5f1;--ink:#253a30;--sub:#637169;--line:#d9ded6;--mist:#ecefe9;--dark:#263a30}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:75px}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:15px}a{color:inherit}button{font:inherit}button:focus-visible,a:focus-visible{outline:3px solid #849b82;outline-offset:3px}.skip{position:absolute;top:-100px;left:10px;background:white;z-index:99;padding:12px}.skip:focus{top:10px}.content-width{max-width:1440px;margin:auto;padding-left:6.5%;padding-right:6.5%}.site-header{height:88px;padding:0 6.5%;display:flex;justify-content:space-between;align-items:center;background:var(--bg);position:relative;z-index:5}.identity{display:flex;flex-direction:column;gap:4px;text-decoration:none}.identity strong{font-size:18px;letter-spacing:.025em;font-weight:600}.identity span{font-size:10px;letter-spacing:.12em;color:var(--sub)}nav{display:flex;gap:32px}nav a{font-size:12px;text-decoration:none}nav a:hover,.contact-links a:hover{opacity:.55}.nav-toggle{display:none}.hero{height:clamp(390px,64svh,730px);position:relative;background:#708173;overflow:hidden}.hero>img{height:100%;width:100%;object-fit:cover;object-position:center 54%;display:block}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,29,20,.42),transparent 46%);pointer-events:none}.hero-tag{position:absolute;z-index:1;left:6.5%;bottom:7%;color:white}.hero-tag span{font-size:10px;letter-spacing:.17em}.hero-tag p{font-family:'Libre Baskerville',Georgia,serif;font-size:clamp(17px,2vw,25px);margin:11px 0 0;font-weight:400}.hero-scroll{position:absolute;right:6.5%;bottom:7%;z-index:1;color:white;font-size:25px;text-decoration:none}.kicker{font-size:10px;letter-spacing:.18em;font-weight:700;color:#667568}.opening{display:grid;grid-template-columns:28% 1fr;gap:5%;padding-top:100px;padding-bottom:110px}.opening h1{font-weight:500;font-size:clamp(26px,3.1vw,43px);letter-spacing:-.035em;line-height:1.22;margin:0 0 23px}.opening-lead{font-family:'Libre Baskerville',Georgia,serif;font-size:clamp(17px,1.6vw,22px)!important;color:var(--ink)!important;line-height:1.6!important}.opening p{max-width:690px;color:var(--sub);font-size:15px;line-height:1.85}.portfolio{background:var(--mist);padding:98px 0 100px}.section-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:37px}.section-heading h2,.profile h2,.contact h2{font-size:clamp(26px,2.9vw,40px);letter-spacing:-.035em;font-weight:500;line-height:1.2;margin:15px 0 0}.section-heading>p{max-width:340px;font-size:13px;line-height:1.8;color:var(--sub);margin:0}.filters{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 36px}.filter{background:transparent;border:1px solid #cbd2c8;border-radius:30px;padding:10px 17px;color:var(--ink);font-size:12px;cursor:pointer}.filter.active,.filter:hover{background:var(--dark);border-color:var(--dark);color:white}.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 19px}.work{margin:0;min-width:0}.work[hidden]{display:none}.image-button{display:block;position:relative;width:100%;padding:0;border:0;cursor:zoom-in;background:#dfe4d9;overflow:hidden}.work .image-button{height:300px}.image-button img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s}.image-button:hover img{transform:scale(1.035)}.expand{position:absolute;bottom:12px;right:14px;background:#f6f5f1e6;color:var(--ink);font-size:18px;width:30px;height:30px;display:grid;place-items:center;border-radius:50%}.work figcaption,.publication figcaption{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:#415348;padding-top:12px}.num{color:#8a978b;font-size:11px}.editorial-note{font-size:11px;color:#7c887d;margin:35px 0 0;line-height:1.7}.profile{padding-top:115px;padding-bottom:115px;display:grid;grid-template-columns:42% 1fr;gap:9%;align-items:center}.profile-visual img{width:100%;height:620px;object-fit:cover;display:block}.profile-text h2{margin-bottom:27px}.profile-text p{color:var(--sub);font-size:14px;line-height:1.9}.profile-text .profile-lead{font-family:'Libre Baskerville',Georgia,serif;font-size:18px;line-height:1.6;color:var(--ink)}.profile-points{border-top:1px solid var(--line);padding-top:22px;margin-top:30px;display:grid;grid-template-columns:1fr 1fr;gap:18px}.profile-points div{display:flex;flex-direction:column;gap:6px}.profile-points strong{font-size:14px;font-weight:600}.profile-points span{font-size:11px;color:var(--sub)}.publications{background:#eef0e9;padding:100px 0}.publications-info{display:grid;grid-template-columns:1fr 1.4fr;gap:8%;margin-bottom:35px;padding-top:25px;border-top:1px solid var(--line)}.publications-info h3{font-size:14px;font-weight:600;margin:0 0 12px}.publications-info p{font-size:13px;color:var(--sub);line-height:1.8;max-width:650px}.publication-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 18px}.publication{margin:0}.publication .image-button{height:290px;background:#e1e4df}.publication img{object-fit:contain}.contact{background:#dce3d9;padding:100px 0}.contact-layout{display:flex;justify-content:space-between;gap:50px;align-items:end}.contact h2{margin-bottom:24px}.contact p{color:var(--sub);font-size:14px}.mail{display:inline-block;font-size:clamp(17px,2vw,26px);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:10px;margin-top:10px;overflow-wrap:anywhere}.mail span{margin-left:16px}.contact-links{display:flex;flex-direction:column;gap:15px;font-size:13px;min-width:205px}.contact-links span{margin-bottom:12px}.contact-links a{text-decoration:none}footer{padding:28px 6.5%;background:var(--dark);color:#f5f7f1;display:flex;justify-content:space-between;gap:15px;font-size:11px}footer a{text-decoration:none}.lightbox{position:fixed;inset:0;background:rgba(15,26,19,.96);z-index:30;display:none;flex-direction:column;align-items:center;justify-content:center;padding:65px 24px 30px}.lightbox.open{display:flex}.lightbox img{max-height:78vh;max-width:94vw;object-fit:contain}.lightbox p{color:white;font-size:12px;text-align:center}.close-lightbox{position:absolute;top:15px;right:24px;background:none;border:0;color:white;font-size:39px;cursor:pointer}
@media(max-width:980px){.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.publication-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.profile{gap:5%}.profile-visual img{height:550px}}
@media(max-width:720px){.site-header{height:73px;padding:0 5%}.nav-toggle{display:block;background:none;border:0;font-size:12px;cursor:pointer;color:var(--ink)}.nav-toggle span{margin-left:8px}nav{display:none;position:absolute;top:73px;left:0;right:0;background:var(--bg);padding:25px 6%;flex-direction:column;gap:25px;box-shadow:0 12px 18px #0002}nav.open{display:flex}.content-width{padding-left:6%;padding-right:6%}.hero{height:53svh;min-height:360px}.opening{grid-template-columns:1fr;gap:20px;padding-top:75px;padding-bottom:75px}.section-heading{flex-direction:column;align-items:start;gap:15px}.portfolio,.publications{padding:75px 0}.profile{grid-template-columns:1fr;padding-top:80px;padding-bottom:80px;gap:35px}.profile-visual img{height:420px}.publications-info{grid-template-columns:1fr;gap:15px}.contact{padding:75px 0}.contact-layout{flex-direction:column;align-items:start}.contact-links{gap:12px}.publication-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.publication .image-button{height:245px}}
@media(max-width:480px){.identity strong{font-size:16px}.identity span{font-size:9px}.hero-tag p{font-size:17px}.work-grid{grid-template-columns:1fr;gap:28px}.work .image-button{height:310px}.publication-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.publication .image-button{height:190px}.publication figcaption{font-size:10px}.profile-visual img{height:360px}.contact h2{font-size:27px}footer{flex-direction:column}.profile-points{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Servizi: inserimento coerente con il portfolio esistente */
.services{padding:100px 0;background:#f6f5f1}.services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}.service{padding:32px 38px 43px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.service-no{font-size:11px;color:#849186;letter-spacing:.12em}.service h3{font-size:clamp(19px,2vw,25px);font-weight:500;letter-spacing:-.025em;margin:30px 0 15px}.service p{font-size:14px;line-height:1.85;color:var(--sub);max-width:440px;margin:0}@media(max-width:720px){.services{padding:75px 0}.service{padding:25px 20px 32px}}@media(max-width:520px){.services-grid{grid-template-columns:1fr}}
