
:root{--blue:#000064;--white:#fff;--soft:#f3f5fa;--line:rgba(0,0,100,.14);--ink:#000064}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:'Montserrat',Arial,sans-serif;color:var(--ink);background:#fff}a{text-decoration:none;color:inherit}img,video{max-width:100%;display:block}.crs-header{background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:50}.crs-header-inner{width:min(1540px,96%);margin:0 auto;min-height:112px;display:flex;align-items:center;gap:30px}.crs-logo{display:flex;align-items:center;flex:0 0 auto}.crs-logo svg{width:265px;height:80px}.crs-main-nav{min-width:0;flex:1;display:flex;flex-direction:column;align-items:flex-end;gap:13px}.crs-nav-services,.crs-nav-company{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px 20px}.crs-main-nav a{font-size:13px;font-weight:600;white-space:nowrap}.crs-main-nav a.active{font-weight:800;border-bottom:2px solid var(--blue);padding-bottom:4px}.crs-nav-company{padding-top:10px;border-top:1px solid var(--line)}.crs-nav-company a{font-size:12px;font-weight:700}.wrap{width:min(1240px,90%);margin:0 auto}.hero{min-height:67vh;position:relative;display:flex;align-items:flex-end;overflow:hidden;color:#fff}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,64,.82),rgba(0,0,64,.18) 70%,rgba(0,0,64,.04))}.hero-copy{position:relative;z-index:2;padding:7vw;max-width:1050px}.eyebrow,.kicker{font-size:12px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.hero h1{font-size:clamp(48px,6.2vw,92px);line-height:.96;margin:16px 0 22px;font-weight:500}.hero p{font-size:19px;line-height:1.55;max-width:760px;margin:0}.cert-strip{background:var(--blue);color:#fff;text-align:center;padding:22px 5vw;font-weight:800;font-size:13px;letter-spacing:.04em}.intro{padding:92px 0}.intro-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:80px}.intro h2,.section-head h2,.split h2,.cta h2,.timeline h2{font-size:clamp(38px,4.8vw,66px);line-height:1.03;font-weight:500;margin:0 0 25px}.intro p,.split p,.section-head p{font-size:18px;line-height:1.75}.stats{display:grid;grid-template-columns:repeat(4,1fr);background:var(--blue);color:#fff}.stat{padding:34px;text-align:center;border-right:1px solid rgba(255,255,255,.22)}.stat strong{font-size:36px;display:block}.stat span{font-size:12px;line-height:1.5}.cards-section{padding:90px 0;background:var(--soft)}.section-head{max-width:900px;margin-bottom:42px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{background:#fff;border-top:5px solid var(--blue);padding:30px;min-height:220px;box-shadow:0 10px 28px rgba(0,0,100,.07)}.card .num{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;background:var(--blue);color:#fff;border-radius:50%;font-size:12px;font-weight:800}.card h3{font-size:24px;margin:22px 0 12px}.card p{font-size:14px;line-height:1.65;margin:0}.split{display:grid;grid-template-columns:1fr 1fr;min-height:600px}.split.reverse .split-copy{order:1}.split.reverse .split-media{order:2}.split-media{min-height:600px;background:#e9ebf2}.split-media img{width:100%;height:100%;object-fit:cover}.split-copy{padding:7vw;display:flex;flex-direction:column;justify-content:center}.split-copy.blue{background:var(--blue);color:#fff}.tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.tags span{border:1.5px solid currentColor;padding:11px 14px;font-size:11px;font-weight:800;background:rgba(255,255,255,.02)}.gallery{padding:90px 0}.gallery-grid{display:grid;grid-template-columns:1.4fr .8fr .8fr;grid-template-rows:260px 260px;gap:8px}.gallery-grid img{width:100%;height:100%;object-fit:cover}.gallery-grid img:first-child{grid-row:1/3}.notice{padding:70px 0;background:var(--blue);color:#fff}.notice h2{font-size:clamp(34px,4vw,56px);margin:0 0 20px;font-weight:500}.notice p{font-size:17px;line-height:1.7;max-width:900px}.timeline{padding:95px 0;background:var(--soft)}.timeline-list{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-top:45px}.time{background:#fff;border-top:5px solid var(--blue);padding:24px;min-height:190px}.time b{font-size:12px;letter-spacing:.12em}.time h3{font-size:19px;margin:16px 0 10px}.time p{font-size:13px;line-height:1.55}.cta{background:var(--blue);color:#fff;padding:90px 0;text-align:center}.cta h2{color:#fff;max-width:1000px;margin:0 auto 20px}.cta p{font-size:18px}.btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:30px}.btn{display:inline-block;padding:16px 25px;border:1px solid #fff;font-weight:800;font-size:12px}.btn.light{background:#fff;color:var(--blue)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.contact-card{padding:32px;background:#fff;border-top:5px solid var(--blue);box-shadow:0 10px 28px rgba(0,0,100,.07)}.contact-card h3{font-size:24px;margin-top:0}.contact-card a,.contact-card p{font-size:16px;line-height:1.8}.crs-footer{background:#fff;border-top:1px solid var(--line);padding:72px 5vw 0;font-family:'Michroma','Montserrat',Arial,sans-serif}.crs-footer-wrap{width:min(1400px,94%);margin:0 auto;display:grid;grid-template-columns:1.25fr 1fr .85fr .55fr;gap:55px}.crs-footer-name{font-size:26px}.crs-footer-brand p{font-size:13px;line-height:1.8}.crs-footer-cert{font-size:12px;line-height:1.8}.crs-footer-col{display:flex;flex-direction:column;gap:10px}.crs-footer-col h3{font-size:13px;margin:0 0 10px}.crs-footer-col a,.crs-footer-col span{font-size:12.5px;line-height:1.7}.crs-footer-bottom{width:min(1400px,94%);margin:55px auto 0;padding:22px 0;border-top:1px solid var(--line);font-size:10px}.reveal{opacity:0;transform:translateY(24px);transition:.65s ease}.reveal.on{opacity:1;transform:none}
@media(max-width:1100px){.crs-header-inner{align-items:flex-start;padding:14px 0}.crs-logo svg{width:220px;height:auto}.crs-main-nav a{font-size:12px}.intro-grid{grid-template-columns:1fr;gap:28px}.cards{grid-template-columns:1fr 1fr}.timeline-list{grid-template-columns:repeat(3,1fr)}.crs-footer-wrap{grid-template-columns:1fr 1fr}}
@media(max-width:820px){.crs-header-inner{width:100%;display:block;padding:10px 0 0}.crs-logo{padding:0 18px 8px}.crs-logo svg{width:190px;height:auto}.crs-main-nav{display:block;width:100%}.crs-nav-services,.crs-nav-company{flex-wrap:nowrap;justify-content:flex-start;gap:18px;overflow-x:auto;padding:12px 18px;scrollbar-width:none}.crs-nav-company{border-top:1px solid var(--line)}.crs-main-nav a{font-size:12px;flex:0 0 auto}.hero{min-height:58vh}.hero-copy{padding:44px 24px}.hero h1{font-size:46px}.hero p{font-size:16px}.cert-strip{font-size:10px;line-height:1.7;padding:17px}.intro,.cards-section,.gallery,.timeline{padding:65px 0}.intro h2,.section-head h2,.split h2,.cta h2,.timeline h2{font-size:38px}.intro p,.split p,.section-head p{font-size:16px}.stats{grid-template-columns:1fr 1fr}.stat:nth-child(2){border-right:0}.cards{grid-template-columns:1fr}.split,.split.reverse{grid-template-columns:1fr}.split-media{min-height:360px}.split-copy{padding:55px 26px}.split.reverse .split-copy{order:2}.split.reverse .split-media{order:1}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:340px 220px 220px}.gallery-grid img:first-child{grid-column:1/3;grid-row:auto}.timeline-list{grid-template-columns:1fr 1fr}.contact-grid{grid-template-columns:1fr}.crs-footer{padding:55px 24px 0}.crs-footer-wrap{width:100%;grid-template-columns:1fr;gap:34px}.crs-footer-bottom{width:100%}}
@media(max-width:480px){.hero h1{font-size:40px}.stats{grid-template-columns:1fr}.stat{border-right:0;border-bottom:1px solid rgba(255,255,255,.2)}.gallery-grid{grid-template-columns:1fr;grid-template-rows:300px 210px 210px}.gallery-grid img:first-child{grid-column:auto}.timeline-list{grid-template-columns:1fr}.btn{width:100%}}

/* CRS Manuale identità — SOLO tipografia, nessuna modifica a misure o impaginazione */
@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@300;400;500;600&display=swap');
html,body,button,input,textarea,select{font-family:'IBM Plex Sans',Arial,sans-serif!important;}
h1,h2{font-family:'IBM Plex Sans',Arial,sans-serif!important;font-weight:300!important;}
h3,h4,h5,h6{font-family:'IBM Plex Sans',Arial,sans-serif!important;font-weight:400!important;}
p,li,a,span{font-family:'IBM Plex Sans',Arial,sans-serif!important;}
strong,b{font-weight:600!important;}


/* 18-10-2026 - riquadri foto CRS: cornice vicina, niente spazi bianchi */
.gallery-grid{gap:6px!important;background:transparent!important}
.gallery-grid img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;background:transparent!important;border:2px solid #000064!important;box-sizing:border-box!important}
@media(max-width:820px){.gallery-grid{gap:6px!important}}




/* CRS 18/10/2026 — visualizzazione foto e testi responsive.
   Solo sotto gli 820px: immagini libere, titoli sotto le foto,
   no crop, nessun intervento sui testi, sui file JPG o sul menu. */
@media screen and (max-width:820px){
  html,body{width:100%;max-width:100%;overflow-x:clip}
  .crs-header-inner,.crs-main-nav{max-width:100%}
  .crs-nav-services,.crs-nav-company{max-width:100%;overscroll-behavior-x:contain}
  .wrap,.home-wrap{max-width:100%;min-width:0}
  .hero{display:flex!important;flex-direction:column!important;align-items:stretch!important;height:auto!important;min-height:0!important;overflow:visible!important;background:#000064!important}
  .hero>img{position:relative!important;inset:auto!important;display:block!important;width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center center!important;padding:0!important;background:transparent!important}
  .hero:after{display:none!important}
  .hero .hero-copy{display:block!important;position:relative!important;width:100%!important;max-width:100%!important;z-index:1!important;padding:22px 22px 25px!important;background:#000064!important;color:#fff!important}
  .hero .eyebrow{font-size:10px!important;letter-spacing:.1em!important;line-height:1.45!important}
  .hero h1{font-size:clamp(29px,7.4vw,42px)!important;line-height:1.08!important;margin:10px 0 12px!important;overflow-wrap:break-word}
  .hero p{font-size:14px!important;line-height:1.5!important;max-width:none!important;margin:0!important}
  .intro h2,.section-head h2,.split h2,.cta h2,.timeline h2{font-size:clamp(29px,7.8vw,38px)!important;line-height:1.12!important;overflow-wrap:break-word}
  .split-media{min-height:0!important;height:auto!important;display:block!important}
  .split-media img{display:block!important;width:100%!important;height:auto!important;object-fit:contain!important}
  .split-copy{padding:35px 22px!important}
  .gallery-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:none!important;grid-auto-rows:auto!important;align-items:start!important;gap:6px!important}
  .gallery-grid img,.gallery-grid img:first-child{width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;object-fit:contain!important;object-position:center!important;grid-column:auto!important;grid-row:auto!important;display:block!important}
}
@media screen and (max-width:600px){
  .gallery-grid{grid-template-columns:1fr!important}
  .hero .hero-copy{padding:20px 20px 23px!important}
}



/* 21-10-2026 - Solo PC: abbassa l'inquadratura hero per mostrare meglio le gru e il cantiere */
@media screen and (min-width:821px){
  .hero>img{object-position:center 78%!important;}
}
