:root{--ink:#20201e;--muted:#6d6a64;--paper:#f7f4ee;--white:#fff;--sand:#e8e0d3;--rust:#bd4d38;--rust2:#e2775d;--line:#d9d1c6;--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0;color:var(--ink);background:var(--white);font-family:Arial,Helvetica,sans-serif;line-height:1.65}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}.container{width:min(var(--max),calc(100% - 48px));margin:auto}.serif,h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.08}.eyebrow{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--rust);font-weight:700}.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 20px;border:1px solid currentColor;font-size:.75rem;letter-spacing:.13em;text-transform:uppercase;font-weight:700;transition:transform .2s,background .2s}.btn.fill{background:var(--rust);border-color:var(--rust);color:#fff}.btn.light{color:#fff;border-color:rgba(255,255,255,.75)}.btn:hover{transform:translateY(-2px)}.site-header{position:fixed;z-index:20;top:0;left:0;right:0;background:rgba(255,255,255,.96);border-bottom:1px solid rgba(0,0,0,.08);backdrop-filter:blur(10px)}.nav{height:84px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;height:72px}.brand img{width:auto;height:54px;max-width:118px;object-fit:contain}.menu{display:flex;gap:28px;align-items:center;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase}.menu a{padding:31px 0;border-bottom:2px solid transparent}.menu a:hover,.menu a.active{border-color:var(--rust)}.menu-toggle{display:none;background:none;border:0;font-size:1.5rem}.hero{min-height:clamp(560px,66.6667vw,820px);position:relative;display:flex;align-items:flex-end;overflow:hidden;background:#20201e}.hero-slider{position:absolute;inset:0;overflow:hidden;background:#20201e}.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1s ease}.hero-slide.is-active{opacity:1}.hero-slide img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,15,13,.72),rgba(15,15,13,.25) 62%,rgba(15,15,13,.05))}.hero-dots{position:absolute;z-index:3;right:42px;bottom:38px;display:flex;gap:8px}.hero-dots button{width:8px;height:8px;border-radius:50%;border:1px solid rgba(255,255,255,.9);background:transparent;padding:0;cursor:pointer}.hero-dots button.is-active{background:#fff}.hero-content{position:relative;z-index:4;color:#fff;padding:165px 0 90px;max-width:850px}.hero h1{font-size:clamp(3.1rem,7vw,6.5rem);margin:18px 0 25px}.hero h1 em{color:var(--rust2);font-style:normal}.hero p{max-width:650px;font-size:1.05rem;color:#f1eee9}.hero-actions{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}.scroll-cue{display:inline-flex;gap:12px;align-items:center;margin-top:55px;color:#fff;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;opacity:.85}.scroll-cue span{font-size:1.2rem}
.section{padding:110px 0}.section-anchor{scroll-margin-top:84px}.section.paper{background:var(--paper)}.intro-grid{display:grid;grid-template-columns:1fr 1.2fr .9fr;gap:70px;align-items:start}.intro h2{font-size:clamp(2.5rem,4.5vw,4.5rem);margin:15px 0}.intro-copy{font-size:1.05rem;color:var(--muted);padding-top:18px}.intro-photo{height:430px;overflow:hidden}.intro-photo img{width:100%;height:100%;object-fit:cover}.link{display:inline-block;margin-top:24px;color:var(--rust);font-size:.75rem;letter-spacing:.13em;text-transform:uppercase;font-weight:700}.services-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:48px}.services-head h2{font-size:clamp(2.7rem,5vw,5rem);margin:12px 0 0}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service{border-top:1px solid var(--line);padding-top:22px}.service .num{color:var(--rust);font-size:.72rem;letter-spacing:.15em}.service h3{font-size:1.45rem;margin:12px 0}.service p{font-size:.9rem;color:var(--muted);min-height:120px}.service img{width:100%;height:205px;object-fit:cover;margin-top:18px}.field,.territory{background:#fff}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.field-photo img{width:100%;max-height:620px;object-fit:cover}.field h2{font-size:clamp(2.8rem,5vw,5.3rem);margin:15px 0 25px}.field p{color:var(--muted);font-size:1.03rem}.dark{background:#20201e;color:#fff}.dark .eyebrow{color:var(--rust2)}.light-link{color:#fff}.gallery{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:14px}.gallery-item{margin:0;position:relative;overflow:hidden}.gallery-item img{width:100%;height:300px;object-fit:cover;transition:transform .5s}.gallery-item:hover img{transform:scale(1.025)}.gallery .tall img{height:614px}.gallery .wide{grid-column:span 2}.gallery figcaption{position:absolute;left:16px;bottom:14px;color:#fff;font-size:.68rem;letter-spacing:.11em;text-transform:uppercase;text-shadow:0 1px 8px #000}.tools-section{background:var(--paper)}.tools-title{font-size:clamp(2.8rem,5vw,5rem);margin:12px 0 45px}.tools{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#cfc7bb}.tool{background:var(--paper);padding:30px;border:1px solid #ded6ca;min-height:190px}.tool span{color:var(--rust);font-size:.7rem;letter-spacing:.15em}.tool h3{font-size:1.35rem;margin:15px 0 8px}.tool p{color:var(--muted);font-size:.85rem;margin:0}.contact-band{background:var(--rust);color:#fff}.contact-band .eyebrow{color:#ffe4db}.contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:80px;align-items:center}.contact-grid h2{font-size:clamp(3rem,5vw,5rem);margin:15px 0}.contact-grid p{max-width:650px}.contact-list{border-left:1px solid rgba(255,255,255,.45);padding-left:30px}.contact-list div{margin:18px 0}.contact-list small{display:block;opacity:.7;text-transform:uppercase;letter-spacing:.15em;font-size:.65rem}.site-footer{background:#171715;color:#eee;padding:70px 0 25px}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:60px}.footer-logo{filter:invert(1)}.site-footer p,.site-footer li{color:#aaa;font-size:.85rem}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{margin:8px 0}.footer-bottom{border-top:1px solid #3a3935;margin-top:55px;padding-top:18px;display:flex;justify-content:space-between;color:#888;font-size:.72rem}.footer-bottom a{color:#ddd}.footer-bottom a:hover{color:#fff}
@media(max-width:1050px){.menu{gap:18px}.services-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:950px){.landscape-grid{grid-template-columns:1fr;gap:35px}.hero-content{padding-top:135px}.menu{display:none}.menu-toggle{display:block}.nav.open .menu{display:flex;position:absolute;top:84px;left:0;right:0;background:#fff;flex-direction:column;align-items:flex-start;padding:20px 24px;border-bottom:1px solid var(--line)}.nav.open .menu a{padding:10px 0}.intro-grid,.field-grid,.contact-grid{grid-template-columns:1fr;gap:35px}.tools{grid-template-columns:repeat(2,1fr)}.gallery{grid-template-columns:1fr 1fr}.gallery .tall img{height:300px}.gallery .wide{grid-column:span 2}.footer-grid{grid-template-columns:1fr 1fr}.hero{min-height:82vh}}
@media(max-width:600px){.brand img{height:48px;max-width:105px}.hero-dots{right:18px;bottom:22px}.hero-content{padding:115px 0 55px}.container{width:min(var(--max),calc(100% - 30px))}.nav{height:72px}.nav.open .menu{top:72px}.brand img{width:125px}.hero-content{padding:125px 0 55px}.hero h1{font-size:3rem}.section{padding:75px 0}.services-grid,.tools,.gallery,.footer-grid{grid-template-columns:1fr}.gallery .wide{grid-column:auto}.gallery img,.gallery .tall img{height:280px}.footer-bottom{flex-direction:column;gap:10px}.service p{min-height:auto}.intro-photo{height:330px}.services-head{align-items:flex-start;flex-direction:column;gap:0}.scroll-cue{margin-top:38px}}

.landscape{background:var(--paper)}.landscape-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}.landscape-copy h2{font-size:clamp(2.8rem,5vw,5.2rem);margin:15px 0 25px}.landscape-copy p{color:var(--muted);font-size:1.03rem}.landscape-photo{overflow:hidden}.landscape-photo img{width:100%;height:auto;display:block}.field-copy p strong{color:var(--ink)}
@media(max-width:950px){.landscape-grid{grid-template-columns:1fr;gap:35px}}
@media(max-width:600px){.landscape-grid{grid-template-columns:1fr;gap:30px}.brand img{width:auto;height:48px;max-width:105px}}
/* Final review additions */
.hero-focus-scavo img{object-position:78% 58%}
.service{position:relative}.service img{margin-top:16px}.service-more{margin-top:16px;border:0;background:transparent;padding:0;color:var(--rust);font:inherit;font-size:.72rem;letter-spacing:.13em;text-transform:uppercase;font-weight:700;cursor:pointer}.service-detail{display:none}.service.is-open .service-detail{display:block}.service-detail p{min-height:0;margin:12px 0 0;color:var(--muted)}
.section-heading{max-width:900px;margin-bottom:42px}.section-heading h2{font-size:clamp(2.8rem,5vw,5.3rem);margin:15px 0 0}.investigation-visuals{display:grid;grid-template-columns:1fr 1fr;gap:18px}.investigation-visuals figure,.landscape-gallery figure,.illustration-gallery figure{margin:0}.investigation-visuals img{width:100%;height:420px;object-fit:cover}.investigation-visuals figure:last-child img{object-fit:contain;background:#f4f2ee}.investigation-visuals figcaption,.landscape-gallery figcaption{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;margin-top:9px;color:var(--muted)}.investigation-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:48px}.investigation-cards article{border-top:1px solid var(--line);padding:24px 0}.investigation-cards h3{font-size:1.5rem;margin:0 0 12px}
.landscape-copy{max-width:900px;margin-bottom:45px}.landscape-gallery{display:grid;grid-template-columns:1fr 1fr;gap:18px}.landscape-gallery .visibility{grid-column:1/-1}.landscape-gallery img{width:100%;height:410px;object-fit:cover}.landscape-gallery .visibility img{height:auto;max-height:720px;object-fit:contain;background:#fff}
.stats-section{padding:70px 0;background:#efeae2}.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:24px}.stats>div{border-top:1px solid #cfc7bb;padding-top:18px}.stats strong{display:block;font-family:Georgia,'Times New Roman',serif;font-size:clamp(2.4rem,4vw,4.5rem);font-weight:400}.stats span{display:block;margin-top:8px;font-size:.78rem;line-height:1.45;color:var(--muted)}
.illustrations{background:#faf8f4}.illustrations-intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;margin-bottom:55px}.illustrations-intro h2{font-size:clamp(2.8rem,5vw,5.2rem);margin:15px 0}.illustrations-intro p{color:var(--muted)}.illustration-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.illustration-gallery img{width:100%;height:500px;object-fit:contain;background:#fff;cursor:zoom-in}
@media(max-width:1050px){.menu{gap:13px;font-size:.65rem}.stats{grid-template-columns:repeat(3,1fr)}}
@media(max-width:950px){.investigation-visuals,.investigation-cards,.illustrations-intro{grid-template-columns:1fr}.illustration-gallery{grid-template-columns:1fr 1fr}.stats{grid-template-columns:1fr 1fr}.hero-focus-scavo img{object-position:72% 55%}}
@media(max-width:600px){.investigation-visuals img,.landscape-gallery img{height:280px}.landscape-gallery{grid-template-columns:1fr}.landscape-gallery .visibility{grid-column:auto}.stats,.illustration-gallery{grid-template-columns:1fr}.illustration-gallery img{height:auto;max-height:520px}.hero-focus-scavo img{object-position:82% 55%}}

/* Allineamento giustificato dei testi descrittivi */
.intro-copy,
.service-detail p,
.field-copy p,
.landscape-copy p,
.illustrations-intro p,
.contact-grid > div:first-child p,
.site-footer p,
.tool p {
  text-align: justify;
  text-justify: inter-word;
  hyphens: auto;
  -webkit-hyphens: auto;
}

/* Chi siamo: mostra la fotografia originale integralmente, senza ritagli */
#chi-siamo .intro-photo {
  height: auto;
  overflow: visible;
}
#chi-siamo .intro-photo img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  object-position: center;
}

/* Rifiniture layout — revisione settembre 2026 */
/* Header: logo contenuto con precisione nella fascia alta */
.site-header .nav{height:84px;overflow:visible}
.site-header .brand{height:84px;display:flex;align-items:center;justify-content:flex-start;flex:0 0 auto;padding:6px 0}
.site-header .brand img{display:block;width:auto;height:70px;max-height:calc(100% - 12px);max-width:128px;object-fit:contain;object-position:center}

/* Chi siamo: immagine più ampia, centrata e allineata al sistema della pagina, senza tagli */
#chi-siamo .intro-grid{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);column-gap:72px;row-gap:46px;align-items:start}
#chi-siamo .intro-photo{grid-column:1/-1;width:min(1080px,100%);height:auto;margin:0 auto;overflow:visible}
#chi-siamo .intro-photo img{width:100%;height:auto;max-height:none;object-fit:contain;object-position:center;display:block}

/* Studi paesaggistici: testo ricomposto su una griglia più equilibrata */
#paesaggio .landscape-copy{max-width:none;margin-bottom:48px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.72fr);column-gap:72px;align-items:end}
#paesaggio .landscape-copy .eyebrow{grid-column:1/-1;margin-bottom:10px}
#paesaggio .landscape-copy h2{margin:0;max-width:760px}
#paesaggio .landscape-copy p{margin:0 0 .35rem;max-width:520px;text-align:justify;text-justify:inter-word;hyphens:auto}

/* Footer: preserva il rosso originale dell'accento del marchio */
.site-footer .footer-logo{filter:none;background:#fff;padding:12px 14px;width:112px;height:auto;object-fit:contain}

@media(max-width:950px){
  #chi-siamo .intro-grid{grid-template-columns:1fr;row-gap:32px}
  #chi-siamo .intro-photo{grid-column:auto;width:100%}
  #paesaggio .landscape-copy{grid-template-columns:1fr;gap:18px;align-items:start}
  #paesaggio .landscape-copy .eyebrow{grid-column:auto;margin-bottom:0}
  #paesaggio .landscape-copy p{max-width:720px}
}
@media(max-width:600px){
  .site-header .nav{height:72px}
  .site-header .brand{height:72px;padding:5px 0}
  .site-header .brand img{height:60px;max-height:62px;max-width:110px}
  #chi-siamo .intro-photo{width:100%}
  .site-footer .footer-logo{width:100px}
}


/* Versione finale — Chi siamo, GIS/SIT e footer */
#chi-siamo .intro-gallery{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:18px;align-items:start;width:100%;margin-top:4px}
#chi-siamo .intro-gallery figure{margin:0;background:var(--paper);display:flex;align-items:center;justify-content:center;overflow:visible}
#chi-siamo .intro-gallery .intro-photo-main{grid-row:span 2}
#chi-siamo .intro-gallery img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;object-position:center}
#chi-siamo .intro-gallery .intro-photo-portrait{max-width:100%}
.service img[src$="gis-sit.png"]{object-fit:contain;background:#f4f4f2;padding:5px}
.site-footer .footer-logo{width:180px;max-width:100%;padding:14px 18px}
@media(max-width:950px){#chi-siamo .intro-gallery{grid-template-columns:1fr 1fr}#chi-siamo .intro-gallery .intro-photo-main{grid-column:1/-1;grid-row:auto}}
@media(max-width:600px){#chi-siamo .intro-gallery{grid-template-columns:1fr;gap:14px}#chi-siamo .intro-gallery .intro-photo-main{grid-column:auto}.site-footer .footer-logo{width:155px}}

/* Refinement: Chi siamo — three original images in a compact, balanced row */
#chi-siamo .intro-gallery{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  align-items:center;
  width:100%;
  margin-top:10px;
}
#chi-siamo .intro-gallery .intro-photo-main{grid-row:auto;grid-column:auto}
#chi-siamo .intro-gallery figure{
  height:340px;
  margin:0;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:transparent;
}
#chi-siamo .intro-gallery img{
  width:100%;
  height:100%;
  max-height:340px;
  object-fit:contain;
  object-position:center;
  display:block;
}

/* Refinement: Studi paesaggistici — map unchanged, ante/post paired harmoniously */
#paesaggio .landscape-gallery{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  align-items:start;
}
#paesaggio .landscape-gallery .visibility{grid-column:1/-1}
#paesaggio .landscape-gallery figure:not(.visibility){
  display:grid;
  grid-template-rows:330px auto;
  align-items:start;
}
#paesaggio .landscape-gallery figure:not(.visibility) img{
  width:100%;
  height:330px;
  object-fit:contain;
  object-position:center;
  background:transparent;
}

@media(max-width:950px){
  #chi-siamo .intro-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
  #chi-siamo .intro-gallery .intro-photo-main{grid-column:auto}
  #chi-siamo .intro-gallery figure{height:300px}
  #chi-siamo .intro-gallery img{max-height:300px}
}
@media(max-width:600px){
  #chi-siamo .intro-gallery{grid-template-columns:1fr}
  #chi-siamo .intro-gallery figure{height:auto;max-height:360px}
  #chi-siamo .intro-gallery img{height:auto;max-height:360px}
  #paesaggio .landscape-gallery{grid-template-columns:1fr}
  #paesaggio .landscape-gallery .visibility{grid-column:auto}
  #paesaggio .landscape-gallery figure:not(.visibility){grid-template-rows:auto auto}
  #paesaggio .landscape-gallery figure:not(.visibility) img{height:auto;max-height:330px}
}

/* Final refinement requested 2026-09-29 */
#chi-siamo .intro-gallery{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  align-items:center;
  max-width:1120px;
  margin:18px auto 0;
}
#chi-siamo .intro-gallery figure,
#chi-siamo .intro-gallery .intro-photo-main{
  grid-column:auto;
  grid-row:auto;
  height:285px;
}
#chi-siamo .intro-gallery img{
  width:100%;
  height:100%;
  max-height:285px;
  object-fit:contain;
  object-position:center;
}
#paesaggio .landscape-gallery .visibility{
  width:92%;
  max-width:1120px;
  justify-self:center;
}
@media(max-width:950px){
  #chi-siamo .intro-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
  #chi-siamo .intro-gallery figure,
  #chi-siamo .intro-gallery .intro-photo-main{height:230px}
  #chi-siamo .intro-gallery img{max-height:230px}
  #paesaggio .landscape-gallery .visibility{width:96%}
}
@media(max-width:700px){
  #chi-siamo .intro-gallery{grid-template-columns:1fr}
  #chi-siamo .intro-gallery figure,
  #chi-siamo .intro-gallery .intro-photo-main{height:auto;max-height:340px}
  #chi-siamo .intro-gallery img{height:auto;max-height:340px}
  #paesaggio .landscape-gallery .visibility{width:100%}
}

/* Rifinitura immagini — armonia, angoli smussati e micro-interazione */
:root{--image-radius:14px}

/* Tutte le immagini editoriali: angoli smussati e zoom leggero al passaggio */
main img:not(.footer-logo),
.service img,
.investigation-visuals img,
.landscape-gallery img,
.illustration-gallery img,
.gallery img,
.field-photo img,
.intro-gallery img{
  border-radius:var(--image-radius);
  transition:transform .38s ease, box-shadow .38s ease;
  transform-origin:center center;
}

/* Il contenitore lascia respirare lo zoom senza alterare o ritagliare l'immagine */
.intro-gallery figure,
.investigation-visuals figure,
.landscape-gallery figure,
.illustration-gallery figure,
.gallery figure,
.field-photo{
  border-radius:var(--image-radius);
}

@media (hover:hover) and (pointer:fine){
  main img:not(.footer-logo):hover,
  .service img:hover,
  .investigation-visuals img:hover,
  .landscape-gallery img:hover,
  .illustration-gallery img:hover,
  .gallery img:hover,
  .field-photo img:hover,
  .intro-gallery img:hover{
    transform:scale(1.025);
    box-shadow:0 12px 28px rgba(25,24,21,.12);
    position:relative;
    z-index:2;
  }
}

/* Chi siamo: due fotografie orizzontali + ritratto, tutte affiancate e proporzionate
   senza crop delle immagini originali. */
#chi-siamo .intro-gallery{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(190px,.66fr);
  gap:20px;
  max-width:1060px;
  align-items:center;
  justify-content:center;
  margin:22px auto 0;
}
#chi-siamo .intro-gallery figure,
#chi-siamo .intro-gallery .intro-photo-main{
  height:260px;
  min-width:0;
  overflow:visible;
  background:transparent;
}
#chi-siamo .intro-gallery img{
  width:100%;
  height:100%;
  max-height:260px;
  object-fit:contain;
  object-position:center;
}

@media(max-width:950px){
  #chi-siamo .intro-gallery{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(150px,.68fr);
    gap:12px;
  }
  #chi-siamo .intro-gallery figure,
  #chi-siamo .intro-gallery .intro-photo-main{height:215px}
  #chi-siamo .intro-gallery img{max-height:215px}
}
@media(max-width:700px){
  #chi-siamo .intro-gallery{grid-template-columns:1fr 1fr;max-width:620px}
  #chi-siamo .intro-gallery .intro-photo-portrait{grid-column:1/-1;justify-self:center;width:min(58%,250px)}
  #chi-siamo .intro-gallery figure,
  #chi-siamo .intro-gallery .intro-photo-main{height:210px}
  #chi-siamo .intro-gallery img{height:100%;max-height:210px}
}
@media(max-width:480px){
  #chi-siamo .intro-gallery{grid-template-columns:1fr;max-width:390px}
  #chi-siamo .intro-gallery .intro-photo-portrait{grid-column:auto;width:70%}
  #chi-siamo .intro-gallery figure,
  #chi-siamo .intro-gallery .intro-photo-main{height:auto;max-height:300px}
  #chi-siamo .intro-gallery img{height:auto;max-height:300px}
}

@media (prefers-reduced-motion:reduce){
  main img,.service img{transition:none!important}
  main img:hover,.service img:hover{transform:none!important}
}

/* Final refinement — Chi siamo: box fotografico composito */
#chi-siamo .intro-gallery{
  display:grid;
  grid-template-columns:1.18fr 1.18fr .74fr;
  gap:0;
  width:min(1080px,100%);
  max-width:1080px;
  height:330px;
  margin:26px auto 0;
  overflow:hidden;
  border-radius:30px;
  background:#ece9e2;
  box-shadow:0 10px 30px rgba(25,24,21,.07);
  transition:transform .35s ease,box-shadow .35s ease;
}
#chi-siamo .intro-gallery figure,
#chi-siamo .intro-gallery .intro-photo-main,
#chi-siamo .intro-gallery .intro-photo-portrait{
  width:100%;height:330px;min-width:0;margin:0;
  overflow:hidden;background:#ece9e2;
  border-radius:0;
}
#chi-siamo .intro-gallery figure+figure{border-left:3px solid #fff}
#chi-siamo .intro-gallery img{
  display:block;width:100%;height:100%;max-height:none;
  object-fit:contain;object-position:center;background:#ece9e2;
  border-radius:0!important;box-shadow:none!important;
  transition:none!important;transform:none!important;
}
@media (hover:hover) and (pointer:fine){
  #chi-siamo .intro-gallery:hover{transform:scale(1.018);box-shadow:0 14px 34px rgba(25,24,21,.12)}
  #chi-siamo .intro-gallery img:hover{transform:none!important;box-shadow:none!important}
}
@media(max-width:800px){
  #chi-siamo .intro-gallery{height:260px;border-radius:24px;grid-template-columns:1.15fr 1.15fr .7fr}
  #chi-siamo .intro-gallery figure,#chi-siamo .intro-gallery .intro-photo-main,#chi-siamo .intro-gallery .intro-photo-portrait{height:260px;width:100%;grid-column:auto}
}
@media(max-width:560px){
  #chi-siamo .intro-gallery{grid-template-columns:1fr 1fr;height:auto;gap:0;max-width:430px}
  #chi-siamo .intro-gallery figure,#chi-siamo .intro-gallery .intro-photo-main{height:210px}
  #chi-siamo .intro-gallery .intro-photo-portrait{grid-column:1/-1;height:250px;width:100%;border-left:0;border-top:3px solid #fff}
}

/* La ricerca: didascalie sempre sovrapposte alle immagini */
#progetti .gallery-item{position:relative;overflow:hidden}
#progetti .gallery-item figcaption{position:absolute;left:0;right:0;bottom:0;margin:0;padding:34px 18px 16px;color:#fff;background:linear-gradient(to top,rgba(0,0,0,.68),rgba(0,0,0,0));font-size:.7rem;letter-spacing:.11em;text-transform:uppercase;text-shadow:0 1px 5px rgba(0,0,0,.55);z-index:2;pointer-events:none}

/* La ricerca — affinamento v7 */
#progetti .gallery-item.caption-above{overflow:visible;display:flex;flex-direction:column}
#progetti .gallery-item.caption-above figcaption{position:static;order:-1;padding:0 0 9px;background:none;color:#fff;text-shadow:none;font-size:.7rem;letter-spacing:.11em;text-transform:uppercase;pointer-events:auto}
#progetti .gallery-item.caption-above img{border-radius:22px}
#progetti .gallery-item.natural-image{align-self:start;background:transparent}
#progetti .gallery-item.natural-image img{display:block;width:100%;height:auto!important;object-fit:contain!important;object-position:center;border-radius:22px}
@media(max-width:800px){#progetti .gallery-item.caption-above figcaption{padding-bottom:7px}}

/* v9 — tutte le didascalie della sezione La ricerca sono sovrapposte alle immagini */
#progetti .gallery-item.caption-above{position:relative;overflow:hidden;display:block}
#progetti .gallery-item.caption-above figcaption,
#progetti .gallery-item figcaption{position:absolute;left:0;right:0;bottom:0;top:auto;margin:0;padding:34px 18px 16px;color:#fff;background:linear-gradient(to top,rgba(0,0,0,.68),rgba(0,0,0,0));font-size:.7rem;letter-spacing:.11em;text-transform:uppercase;text-shadow:0 1px 5px rgba(0,0,0,.55);z-index:3;pointer-events:none}
#progetti .gallery-item.caption-above img{border-radius:22px}
#progetti .gallery-item.natural-image{position:relative;overflow:hidden;align-self:start;background:transparent}
#progetti .gallery-item.natural-image img{display:block;width:100%;height:auto!important;object-fit:contain!important;object-position:center;border-radius:22px}
/* Ricerca: didascalie realmente sovrapposte al bordo inferiore delle immagini */
#progetti .gallery-item{position:relative;overflow:hidden;border-radius:22px;background:transparent;line-height:0}
#progetti .gallery-item img{display:block;width:100%;margin:0;border-radius:22px}
#progetti .gallery-item figcaption,#progetti .gallery-item.caption-above figcaption{position:absolute!important;left:0!important;right:0!important;bottom:0!important;top:auto!important;margin:0!important;padding:38px 18px 16px!important;box-sizing:border-box;color:#fff!important;background:linear-gradient(to top,rgba(0,0,0,.72) 0%,rgba(0,0,0,.28) 58%,rgba(0,0,0,0) 100%)!important;font-size:.7rem!important;line-height:1.35!important;letter-spacing:.11em!important;text-transform:uppercase;text-shadow:0 1px 5px rgba(0,0,0,.55)!important;z-index:5!important;pointer-events:none}
#progetti .gallery-item.caption-above{display:block!important;position:relative!important;overflow:hidden!important}
#progetti .gallery-item.natural-image,#progetti .gallery-item.research-natural{align-self:start;position:relative;overflow:hidden}
#progetti .gallery-item.natural-image img,#progetti .gallery-item.research-natural img{height:auto!important;object-fit:contain!important;object-position:center!important}
/* Video Areté sul campo */
.video-section{
  padding:0;
  background:#1d1d1b;
}

.video-section .container{
  padding-top:42px;
  padding-bottom:32px;
}

.video-section .section-head{
  margin-bottom:0;
}

.video-fullwidth{
  width:100%;
  overflow:hidden;
  background:#fff;
}

.video-fullwidth video{
  display:block;
  width:100%;
  height:auto;
  margin:0;
}
/* Correzione definitiva fascia video */
.video-section{
  background:#1d1d1b !important;
}

.video-section .kicker{
  color:#c65a3a !important;
}

.video-section #video-title{
  color:#ffffff !important;
}

.video-section .section-head p{
  color:rgba(255,255,255,.78) !important;
}
/* Video a tutta larghezza dello schermo */
.video-fullwidth{
  width:100vw !important;
  max-width:none !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
}

.video-fullwidth video{
  width:100% !important;
  height:auto !important;
  display:block;
}

/* Certificazioni e qualificazioni footer */
.footer-badges{
  display:grid;
  grid-template-columns:1.7fr 0.65fr 0.65fr;
  align-items:center;
  gap:32px;
  padding-top:38px;
  padding-bottom:38px;
  border-top:1px solid rgba(255,255,255,.12);
}

.footer-badge{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
}

.footer-badge img{
  display:block;
  width:auto;
  max-width:100%;
  height:auto;
  object-fit:contain;
}

.footer-badge-mepa img{
  width:100%;
  max-width:620px;
}

.footer-badge-gna img{
  width:100%;
  max-width:190px;
}

/* Smartphone */
@media (max-width:700px){
  .footer-badges{
    grid-template-columns:1fr 1fr;
    gap:22px 16px;
    padding-top:30px;
    padding-bottom:30px;
  }

  .footer-badge-mepa{
    grid-column:1 / -1;
  }

  .footer-badge-mepa img{
    max-width:100%;
  }

  .footer-badge-gna img{
    max-width:150px;
  }
}