
:root{--green:#69b240;--green2:#9ed35d;--dark:#111916;--anth:#1d2a25;--wood:#b98245;--cream:#f4f0e8;--text:#202722;--muted:#6d776f;--line:#e4ded2}*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--text);background:#faf8f2;line-height:1.55}img{max-width:100%;display:block}a{color:inherit}.container{width:min(1180px,92vw);margin:0 auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(17,25,22,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;min-height:82px;gap:22px}.brand img{width:178px;height:auto}.main-nav{display:flex;align-items:center;gap:18px}.menu{display:flex;align-items:center;gap:4px;list-style:none;margin:0;padding:0}.menu a{display:block;text-decoration:none;color:#f5f1e8;padding:14px 12px;border-radius:999px;font-size:14px;font-weight:700}.menu li{position:relative}.menu a:hover{background:rgba(255,255,255,.08);color:var(--green2)}.sub-menu{display:none;position:absolute;top:100%;left:0;min-width:250px;background:#18231f;border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:10px;list-style:none;box-shadow:0 24px 60px rgba(0,0,0,.28)}.menu li:hover>.sub-menu{display:block}.sub-menu a{border-radius:12px;white-space:nowrap}.nav-cta,.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:999px;font-weight:900;letter-spacing:.01em}.nav-cta{padding:13px 18px;background:linear-gradient(135deg,var(--green),var(--green2));color:#111916}.btn{padding:15px 22px}.btn.primary{background:linear-gradient(135deg,var(--green),var(--green2));color:#111916;box-shadow:0 14px 28px rgba(105,178,64,.24)}.btn.ghost{border:1px solid rgba(255,255,255,.35);color:#fff}.hero{min-height:720px;background-size:cover;background-position:center;display:flex;align-items:center;color:#fff}.hero-inner{max-width:860px}.eyebrow{display:inline-flex;margin-bottom:16px;font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.14em;color:var(--green2)}.eyebrow.dark{color:#407d2b}.hero h1,.page-hero h1{font-size:clamp(42px,7vw,82px);line-height:.95;margin:0 0 22px;font-weight:950;letter-spacing:-.06em}.hero p,.page-hero p{font-size:clamp(18px,2vw,23px);max-width:760px;color:#eee6d6}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.section{padding:96px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center}.intro{background:#f4f0e8}.section h2{font-size:clamp(32px,4vw,56px);line-height:1.02;margin:0 0 18px;letter-spacing:-.04em}.section p{font-size:18px;color:var(--muted)}.metric-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.metric-grid div,.info-card,.form-card{background:#fff;border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:0 16px 50px rgba(30,35,30,.06)}.metric-grid b{display:block;font-size:28px;color:var(--anth)}.metric-grid span{color:var(--muted);font-weight:700}.section-head{max-width:760px;margin-bottom:34px}.card-grid{display:grid;gap:24px}.card-grid.three{grid-template-columns:repeat(3,1fr)}.service-card{background:#fff;border-radius:30px;overflow:hidden;border:1px solid var(--line);box-shadow:0 18px 60px rgba(30,35,30,.07)}.service-card img{height:260px;width:100%;object-fit:cover}.service-card div{padding:26px}.service-card h3,.info-card h3{font-size:25px;margin:0 0 10px}.service-card a{font-weight:900;color:#407d2b;text-decoration:none}.big-img{border-radius:34px;box-shadow:0 28px 80px rgba(0,0,0,.16);width:100%;height:520px;object-fit:cover}.tech{background:#fff}.dark-band{background:linear-gradient(135deg,#111916,#24342c);color:#fff}.dark-band p{color:#ded6c7}.check-list{padding:0;margin:24px 0 0;list-style:none}.check-list li{padding:12px 0;border-bottom:1px solid rgba(0,0,0,.1);font-weight:800}.dark-band .check-list li{border-color:rgba(255,255,255,.12)}.cta{padding-top:30px}.cta-box{text-align:center;background:linear-gradient(135deg,#18231f,#2a3b31);color:#fff;border-radius:40px;padding:58px 30px;box-shadow:0 28px 90px rgba(0,0,0,.18)}.cta-box p{color:#eee6d6}.page-hero{min-height:440px;background-size:cover;background-position:center;display:flex;align-items:end;color:#fff;padding:130px 0 70px}.content-wrap{max-width:1050px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.map-placeholder{min-height:280px;border-radius:26px;background:linear-gradient(135deg,#d9d2c1,#f6f1e7);display:grid;place-items:center;font-weight:900;color:#68543a}.fake-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.fake-form input,.fake-form textarea{width:100%;padding:16px;border:1px solid var(--line);border-radius:16px;font:inherit}.fake-form textarea{grid-column:1/-1;min-height:130px}.fake-form button{grid-column:1/-1;padding:16px;border:0;border-radius:999px;background:var(--green);font-weight:900}.site-footer{background:#111916;color:#f4f0e8;padding:70px 0 24px}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1.1fr;gap:30px}.site-footer p{color:#d4ccbd}.footer-cta{color:var(--green2);font-weight:900;text-decoration:none}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:34px;padding-top:20px;display:flex;justify-content:space-between;color:#afa696}.nav-toggle{display:none;background:none;border:0;gap:5px;flex-direction:column}.nav-toggle span{display:block;width:28px;height:3px;background:#fff;border-radius:5px}
@media(max-width:980px){.nav-toggle{display:flex}.main-nav{position:fixed;inset:82px 0 auto 0;background:#111916;display:none;flex-direction:column;align-items:stretch;padding:20px;max-height:calc(100vh - 82px);overflow:auto}.main-nav.open{display:flex}.menu{flex-direction:column;align-items:stretch}.sub-menu{display:block;position:static;box-shadow:none;background:rgba(255,255,255,.04);border-radius:14px;margin:5px 0 10px}.nav-cta{width:100%}.split,.contact-grid,.footer-grid{grid-template-columns:1fr}.card-grid.three{grid-template-columns:1fr}.hero{min-height:650px}.section{padding:68px 0}.big-img{height:360px}.fake-form{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:8px}.brand img{width:150px}}

/* Brema V3 - WhatsApp tecnologico e dati aggiornati */
.nav-cta.whatsapp-cta,
.whatsapp-btn,
.floating-whatsapp{
  position:relative;
  overflow:hidden;
  background:linear-gradient(135deg,#18e05f 0%,#8dff55 45%,#00b84f 100%)!important;
  color:#07130b!important;
  border:1px solid rgba(255,255,255,.28);
  box-shadow:0 0 0 1px rgba(141,255,85,.35),0 14px 34px rgba(24,224,95,.34),inset 0 1px 0 rgba(255,255,255,.42);
}
.nav-cta.whatsapp-cta:before,
.whatsapp-btn:before,
.floating-whatsapp:before{
  content:"";
  position:absolute;
  inset:-50%;
  background:linear-gradient(120deg,transparent 35%,rgba(255,255,255,.65) 50%,transparent 65%);
  transform:translateX(-70%) rotate(12deg);
  animation:bremaShine 3s infinite;
}
.nav-cta.whatsapp-cta span,
.whatsapp-btn span{position:relative;z-index:2}
.wa-dot{font-size:16px;margin-right:6px;color:#0d7d32;filter:drop-shadow(0 0 8px rgba(13,125,50,.6))}
.nav-cta.whatsapp-cta:hover,
.whatsapp-btn:hover,
.floating-whatsapp:hover{transform:translateY(-2px);filter:saturate(1.18);box-shadow:0 0 0 1px rgba(141,255,85,.55),0 20px 50px rgba(24,224,95,.44)}
@keyframes bremaShine{0%{transform:translateX(-80%) rotate(12deg)}42%,100%{transform:translateX(80%) rotate(12deg)}}
.floating-whatsapp{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:100;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:132px;
  height:58px;
  border-radius:999px;
  padding:0 22px;
  text-decoration:none;
  font-weight:950;
  letter-spacing:.01em;
  animation:bremaPulse 2.2s infinite;
}
@keyframes bremaPulse{0%,100%{box-shadow:0 0 0 0 rgba(24,224,95,.42),0 14px 34px rgba(24,224,95,.34)}50%{box-shadow:0 0 0 12px rgba(24,224,95,0),0 20px 50px rgba(24,224,95,.46)}}
.site-footer a{color:var(--green2);text-decoration:none;font-weight:800}.contact-grid a{color:#2f7c1e;font-weight:900}.form-card .btn{margin:10px 0 24px}
@media(max-width:980px){.floating-whatsapp{right:14px;bottom:14px;min-width:112px;height:52px;font-size:14px}.nav-cta.whatsapp-cta{width:100%;font-size:18px;padding:16px 20px}.main-nav{gap:12px}}

/* Brema V4 - SEO, certificazioni, mobile e conversione */
.page-seo-content h2{font-size:clamp(30px,3.6vw,48px);line-height:1.05;margin:0 0 18px;letter-spacing:-.035em;color:#14211b}.page-seo-content h3{font-size:26px;margin:34px 0 12px;color:#1d2a25}.page-seo-content p{font-size:18px;color:#5c675f}.inner-block{margin-top:42px}.cert-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.cert-card{background:#fff;border:1px solid var(--line);border-radius:28px;padding:30px;box-shadow:0 16px 50px rgba(30,35,30,.07)}.cert-card h2{font-size:34px;margin-bottom:10px}.cert-full{width:min(760px,100%);margin:36px auto 0;border-radius:22px;box-shadow:0 24px 70px rgba(0,0,0,.16);background:#fff}.cert-img{object-position:center}.mini-cta{margin-top:54px}.hero h1 strong,.page-hero h1 strong{color:var(--green2)}.menu>li>a{transition:.2s ease}.main-nav .menu .current-menu-item>a,.main-nav .menu .current_page_item>a{background:rgba(105,178,64,.16);color:var(--green2)}.site-header{box-shadow:0 10px 34px rgba(0,0,0,.18)}.service-card,.info-card,.metric-grid div,.cert-card{transition:transform .22s ease,box-shadow .22s ease}.service-card:hover,.info-card:hover,.metric-grid div:hover,.cert-card:hover{transform:translateY(-4px);box-shadow:0 24px 70px rgba(30,35,30,.12)}.top-seo-bar{background:#0b120f;color:#e8f8e3;font-size:13px;font-weight:800}.top-seo-bar .container{display:flex;gap:20px;justify-content:space-between;padding:9px 0}.top-seo-bar a{color:#8dff55;text-decoration:none}.hero .btn.primary,.cta-box .btn.primary{font-size:17px}.fake-form button{cursor:pointer}.fake-form button:hover{filter:saturate(1.2)}
@media(max-width:1180px){.menu a{padding:12px 8px;font-size:13px}.nav-wrap{gap:12px}.nav-cta{padding:12px 14px}.brand img{width:154px}}
@media(max-width:980px){.top-seo-bar{display:none}.hero h1,.page-hero h1{font-size:clamp(40px,11vw,64px)}.hero p,.page-hero p{font-size:18px}.hero{min-height:620px}.page-hero{min-height:380px;padding:120px 0 55px}.cert-grid{grid-template-columns:1fr}.site-header{position:sticky}.main-nav .menu a{font-size:17px;padding:15px 14px}.sub-menu a{font-size:15px}.cert-full{max-height:620px;object-fit:contain}.metric-grid{grid-template-columns:1fr}.hero-actions .btn{width:100%}.split.image-left img{order:2}.split.image-left div{order:1}}
@media(max-width:620px){.container{width:min(100% - 28px,1180px)}.nav-wrap{min-height:72px}.main-nav{inset:72px 0 auto 0;max-height:calc(100vh - 72px)}.brand img{width:136px}.hero{min-height:590px;background-position:center}.section{padding:54px 0}.service-card img{height:210px}.big-img{height:300px;border-radius:24px}.cta-box{border-radius:26px;padding:38px 20px}.footer-grid{gap:20px}.page-seo-content h2{font-size:32px}.cert-card{padding:24px}.fake-form input,.fake-form textarea{padding:14px}.floating-whatsapp{min-width:104px;height:50px}}

/* Contact Form 7 - Preventivo Brema SRL */
.real-contact-form .cf7-wrap{margin-top:26px}
.real-contact-form .wpcf7-form{display:grid;gap:14px}
.real-contact-form .wpcf7-form p{margin:0}
.real-contact-form .wpcf7 input,.real-contact-form .wpcf7 textarea,.real-contact-form .wpcf7 select{width:100%;box-sizing:border-box;border:1px solid rgba(20,38,32,.18);background:#fff;border-radius:18px;padding:16px 18px;font-size:16px;color:#102019;outline:none;transition:.2s ease}
.real-contact-form .wpcf7 textarea{min-height:150px;resize:vertical}
.real-contact-form .wpcf7 input:focus,.real-contact-form .wpcf7 textarea:focus,.real-contact-form .wpcf7 select:focus{border-color:#39e75f;box-shadow:0 0 0 4px rgba(57,231,95,.16)}
.real-contact-form .wpcf7-submit{width:100%;border:0;border-radius:999px;background:linear-gradient(135deg,#39ff68,#18c944);color:#06120b;font-weight:900;padding:17px 24px;cursor:pointer;box-shadow:0 16px 34px rgba(24,201,68,.28);text-transform:uppercase;letter-spacing:.02em}
.real-contact-form .wpcf7-response-output{border-radius:16px!important;margin:18px 0 0!important;padding:14px 18px!important}
@media(max-width:700px){.real-contact-form .wpcf7 input,.real-contact-form .wpcf7 textarea,.real-contact-form .wpcf7 select{font-size:15px;border-radius:14px;padding:14px}.form-card{padding:22px!important}}

/* Modulo diretto preventivo Brema SRL */
.brema-direct-form select{width:100%;padding:16px;border:1px solid var(--line);border-radius:16px;font:inherit;background:#fff;color:var(--text)}
.brema-direct-form select{grid-column:1/-1}
.brema-form-success,.brema-form-error{padding:16px 18px;border-radius:18px;margin:20px 0;font-weight:800}
.brema-form-success{background:#e7ffe9;border:1px solid #39d353;color:#0d5a20}
.brema-form-error{background:#fff1f1;border:1px solid #e55353;color:#8d1010}
.form-note{font-size:14px!important;color:#6d776f!important;margin-top:16px!important}
@media(max-width:700px){.brema-direct-form select{grid-column:1/-1}}


/* Preventivo form fix V4.2 */
.always-visible-form,
.real-contact-form{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
}
.brema-direct-form{
  display:grid!important;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin-top:24px;
}
.brema-direct-form textarea,
.brema-direct-form select,
.brema-direct-form button{
  grid-column:1 / -1;
}
.brema-direct-form input,
.brema-direct-form select,
.brema-direct-form textarea{
  width:100%;
  padding:16px 18px;
  border:1px solid rgba(9,32,24,.18);
  border-radius:16px;
  background:#fff;
  color:#0b1511;
  font-size:16px;
  outline:none;
}
.brema-direct-form textarea{min-height:150px;resize:vertical;}
.brema-direct-form button{
  border:0;
  border-radius:999px;
  padding:17px 24px;
  background:linear-gradient(135deg,#39ff65,#19c94a);
  color:#06110c;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 16px 40px rgba(33,220,85,.28);
}
.brema-form-success,
.brema-form-error{
  padding:16px 18px;
  border-radius:16px;
  margin:0 0 18px;
  font-weight:800;
}
.brema-form-success{background:#dfffe7;color:#07571e;border:1px solid #81ee9a;}
.brema-form-error{background:#ffe5e5;color:#7a1111;border:1px solid #ffaaaa;}
@media(max-width:720px){.brema-direct-form{grid-template-columns:1fr;}}


/* Brema V4.3 - immagini nelle pagine e leggibilità CTA */
.cta-box h2,
.cta-box p,
.mini-cta h2,
.mini-cta p{
  color:#fff!important;
  text-shadow:0 2px 14px rgba(0,0,0,.22);
}
.cta-box .btn,
.mini-cta .btn{margin-top:10px;}
.section-head.compact{margin-bottom:22px;max-width:820px;}
.page-gallery{margin-top:54px;}
.visual-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}
.visual-card{
  margin:0;
  background:#fff;
  border:1px solid var(--line);
  border-radius:28px;
  overflow:hidden;
  box-shadow:0 18px 55px rgba(30,35,30,.08);
  transition:transform .22s ease, box-shadow .22s ease;
}
.visual-card:hover{transform:translateY(-4px);box-shadow:0 26px 75px rgba(30,35,30,.13);}
.visual-card img{
  width:100%;
  height:255px;
  object-fit:cover;
}
.visual-card figcaption{
  padding:18px 20px 20px;
  font-weight:900;
  color:#15231d;
  line-height:1.25;
}
@media(max-width:980px){
  .visual-grid{grid-template-columns:1fr;}
  .visual-card img{height:300px;}
  .mini-cta{padding:34px 22px!important;}
}
@media(max-width:620px){
  .visual-card img{height:230px;}
  .page-gallery{margin-top:38px;}
}
