/* RESPONSIVE — allineato a Elementor (tablet ≤1024, mobile ≤767) */
@media (max-width: 1440px) {
  .navigation__item { margin-right: 10px!important; }
}

/* Header — menu desktop stretto (es. iPad landscape ~1020px) */
@media (min-width: 992px) and (max-width: 1100px) {
  .header__inner{padding-left:20px!important;padding-right:20px!important;}
  .header__builder .e-con.e-parent.e-flex{padding-left:0!important;padding-right:0!important;}
  .header__builder .e-con.e-parent.e-flex > .e-con.e-child:first-child{flex:0 0 auto!important;max-width:30%!important;min-width:0!important;--width:auto!important;}
  .header__builder .e-con.e-parent.e-flex > .e-con.e-child:nth-child(2){flex:1 1 auto!important;min-width:0!important;max-width:none!important;--width:auto!important;}
  .header__builder .e-con.e-parent.e-flex > .e-con.e-child:first-child img{max-width:160px!important;width:auto!important;height:auto!important;}
  #menu-header-menu, .header .navigation__list{justify-content:flex-end!important;flex-wrap:nowrap!important;}
  .header .navigation__item, .navigation__item{margin-right:8px!important;margin-bottom:0!important;}
  .header .navigation__link{font-size:12px!important;letter-spacing:.01em;white-space:nowrap;}
}


@media (min-width: 992px) and (max-width: 1024px) {
  .header .navigation__link{font-size:11px!important;}
  .header .navigation__item,
  .navigation__item{margin-right:6px!important;}
}

/* Header — tablet con hamburger (768–991): togli i 54px fissi del custom.css */
@media (min-width: 768px) and (max-width: 991px) {
.header__inner{padding-left:24px!important;padding-right:24px!important;}
.header__builder .e-con.e-parent.e-flex > .e-con.e-child:first-child img{max-width:170px!important;height:auto!important;}

}

@media (min-width: 1101px) and (max-width: 1365px) {
  .header__inner{padding-left:32px!important;padding-right:32px!important;}

}
/* tablet*/@media (min-width: 768px) and (max-width: 1024px) {
/* parent con esattamente 2 figli .e-con.e-child */ .e-con.e-flex:has(> .e-con.e-child:first-child:nth-last-child(2)){flex-wrap:nowrap!important;--flex-wrap:nowrap!important;}
 .e-con.e-flex:has(> .e-con.e-child:first-child:nth-last-child(2)) > .e-con.e-child{flex:1 1 0!important;width:auto!important;max-width:100%!important;min-width:0!important;--width:auto!important;}
/* 3 figli: resta in riga (o 2+1 se non entrano, ma senza 100% forzato) */ 
.e-con.e-flex:has(> .e-con.e-child:first-child:nth-last-child(3)){flex-wrap:wrap!important;}
.e-con.e-flex:has(> .e-con.e-child:first-child:nth-last-child(3)) > .e-con.e-child{flex:1 1 calc(33.333% - 14px)!important;width:auto!important;max-width:100%!important;min-width:0!important;--width:auto!important;}
}
@media (max-width: 1024px) {
/* bordo Elementor — nascondi già da tablet */ 
div.elementor-element.bordo-left::before, div.elementor-element.bordo-right::before { display: none; }
/* evita scroll orizzontale da caroselli / layout larghi */
.elementor{max-width:100%;overflow-x:clip;}
/* caroselli Elementor — evita slide fuori viewport su tablet */
.elementor-widget-image-carousel .swiper,
.elementor-widget-media-carousel .swiper{overflow:hidden!important;}
/* Hero condiviso (stesso widget su Vetrate / Pergole / Paraventi / Balconi / Terrazzi) */
.elementor-element-7dd6425{--padding-top:40px!important;--padding-bottom:40px!important;--padding-block-start:40px!important;--padding-block-end:40px!important;--min-height:380px!important;padding-top:40px!important;padding-bottom:40px!important;min-height:380px!important;}

.elementor-element-7dd6425 .elementor-widget-heading{margin-bottom:6px!important;}
.elementor-element-7dd6425 h1.elementor-heading-title{font-size:42px!important;line-height:1.2!important;}
/* CTA — uniforma wrapper Elementor (padding impostati a mano diversi per pagina) */
.elementor-widget-text-editor:has(.cta-section){
  margin:0!important;
}
.e-con:has(.cta-section){--padding-top:0!important;--padding-bottom:0!important;--padding-block-start:0!important;--padding-block-end:0!important;}

.e-con.e-parent:has(.cta-section){padding-top:32px!important;padding-bottom:32px!important;padding-left:0!important;padding-right:0!important;}

/* Tab Elementor — titoli più compatti */
.e-n-tabs .elementor-widget-heading{margin-bottom:8px!important;}
.e-n-tabs .elementor-widget-text-editor p{margin-top:0;margin-bottom:10px;}
.e-n-tab-title{padding:12px 16px!important;font-size:.9rem!important;}
/* sezione soluzioni — 2 colonne su tablet */ 
.solutions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;overflow:visible;}
.solutions-grid .solution-card{flex:none;min-width:0;max-width:none;width:auto;padding:24px;}
.solution-card .btn, .btn-primary, .cta-box .btn-primary{padding:10px 18px;font-size:.9rem;font-weight:600;line-height:1.3;white-space:normal;text-align:center;}
.section-title h2{font-size:2.1rem;}
/* perché sceglierci — 2 colonne su tablet */ 
.why-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;overflow:visible;margin-top:40px;}
.why-grid .why-card{flex:none;min-width:0;max-width:none;width:auto;padding:28px;}
 /* accordion */ 
 .accordion-section{padding:0 0px;}
/* CTA tablet */ 
.cta-section{padding:36px 16px;}
.cta-box{padding:40px 28px;border-radius:20px;}
.cta-box h2{font-size:2rem;}
.cta-box p{font-size:1rem;margin-bottom:18px;line-height:1.7;}
.cta-box strong{font-size:1.05rem;line-height:1.5;}
/* sezione vetrate tablet */
.vepa-types{padding:0 16px;}
.vepa-header{margin-bottom:28px;font-size:1rem;line-height:1.7;}
.vepa-grid{grid-template-columns:1fr 1fr;gap:20px;}
.vepa-card{padding:22px;font-size:.95rem;line-height:1.7;}
.vepa-card h3{font-size:1.35rem;margin-bottom:12px;}
.card-line{margin-bottom:18px;}
.vepa-note{margin-top:28px;padding:22px;font-size:.95rem;line-height:1.7;}
.vepa-note h4{font-size:1.15rem;margin-bottom:12px;}
}
/* mobile*/
@media (max-width: 767px) {
span.subtitle{text-align:left;width:100%;}
h2.my-mobile-title{font-size:26px;text-align:left;}
/* header */ 
.header__inner {padding: 0!important;}
/* overflow pagina su mobile */
.elementor{overflow-x:clip;}
/* Tab Elementor — scroll orizzontale se non entrano */
.e-n-tabs-heading{
  overflow-x:auto!important;
  overflow-y:hidden!important;
  flex-wrap:nowrap!important;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  max-width:100%;
}
.e-n-tabs-heading::-webkit-scrollbar{display:none;}
.e-n-tab-title{flex-shrink:0;}
.e-n-tab-title{padding:10px 14px!important;font-size:.85rem!important;}
.page-id-2007 .e-n-tabs-content > [role="tabpanel"].e-active,
.page-id-3150 .e-n-tabs-content > [role="tabpanel"].e-active{
  background-color:#f2f2f2;
  border-radius:25px;
}
/* Hero mobile condiviso */
.elementor-element-7dd6425{
  --padding-top:28px!important;
  --padding-bottom:28px!important;
  --padding-block-start:28px!important;
  --padding-block-end:28px!important;
  --min-height:320px!important;
  padding-top:28px!important;
  padding-bottom:28px!important;
  min-height:320px!important;
}
.elementor-element-7dd6425 h1.elementor-heading-title{font-size:32px!important;}
/* CTA — wrapper Elementor mobile */
.e-con.e-parent:has(.cta-section){
  padding-top:24px!important;
  padding-bottom:24px!important;
}
/* soluzioni — scroll orizzontale solo mobile */ 
.solutions-grid{display:flex;flex-direction:row;flex-wrap:nowrap;gap:32px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:8px;}
.solutions-grid::-webkit-scrollbar{display:none;}
.solutions-grid .solution-card{flex:0 0 82%;min-width:82%;max-width:82%;scroll-snap-align:start;padding:18px 18px 28px;}
.solutions-grid .solution-card:hover{transform:none;box-shadow:none;}
/* perché sceglierci — scroll orizzontale solo mobile */ 
.why-grid{display:flex;flex-direction:row;flex-wrap:nowrap;gap:32px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:8px;margin-top:0;}
.why-grid::-webkit-scrollbar{display:none;}
.why-grid .why-card{flex:0 0 82%;min-width:82%;max-width:82%;scroll-snap-align:start;padding:18px 18px 28px;}
.why-grid .why-card:hover{transform:none;box-shadow:none;}
/* sezione vetrate mobile */ 
.vepa-types{padding:0 12px;}
 .vepa-header{margin-bottom:22px;font-size:.95rem;line-height:1.65;}
 .vepa-grid{grid-template-columns:1fr;gap:16px;}
 .vepa-card{padding:18px 18px 22px;font-size:.92rem;line-height:1.65;}
 .vepa-card h3{font-size:1.25rem;margin-bottom:10px;}
 .card-line{width:48px;height:3px;margin-bottom:16px;}
 .vepa-note{margin-top:20px;padding:18px;font-size:.92rem;line-height:1.65;}
 .vepa-note h4{font-size:1.1rem;margin-bottom:10px;}
/* tabella */ 
.comparison-table table, .comparison-table thead, .comparison-table tbody, .comparison-table th, .comparison-table td, .comparison-table tr {display: block;}
.comparison-table thead {display: none;}
.comparison-table tr {margin-bottom: 20px;border: 1px solid #ddd;border-radius: 10px;overflow: hidden;background: #fff;}
.comparison-table td {display: flex;justify-content: space-between;gap: 15px;border: none;border-bottom: 1px solid #eee;padding: 14px 16px;}
.comparison-table td:last-child {border-bottom: none;}
.comparison-table td::before {content: attr(data-label);font-weight: 700;color: #0B223E;min-width: 120px;margin-right: 15px;flex-shrink: 0;}
/* card pergole — Elementor Containers (senza .e-con-inner) + fallback classico .e-con-inner */ 
.horizontal-scroll{display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;overflow-x:hidden!important;overflow-y:visible!important;gap:16px!important;}
.horizontal-scroll > .e-con-inner{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:hidden!important;width:100%!important;max-width:100%!important;gap:16px!important;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:none;}
.horizontal-scroll > .e-con-inner::-webkit-scrollbar{display:none;}
.horizontal-scroll > .e-con.e-child, .horizontal-scroll .e-con.e-child{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:hidden!important;width:100%!important;max-width:100%!important;flex:0 0 auto!important;gap:16px!important;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:none;}
.horizontal-scroll > .e-con.e-child::-webkit-scrollbar, .horizontal-scroll .e-con.e-child::-webkit-scrollbar{display:none;}
.horizontal-scroll .elementor-widget-image-box{flex:0 0 85%!important;min-width:85%!important;max-width:85%!important;scroll-snap-align:start;}
/* CTA mobile */ 
.cta-section{padding:28px 12px;}
.cta-box{padding:32px 20px;border-radius:18px;}
.cta-box h2{font-size:1.7rem;}
.cta-box p{font-size:.95rem;margin-bottom:16px;line-height:1.65;}
.cta-box strong{font-size:1rem;line-height:1.5;}
 body .cta-box::before{width:180px;height:180px;top:-90px;right:-60px;}
 body .cta-box::after{width:120px;height:120px;bottom:-60px;left:-40px;}

/* card vetrate mobile */
.my-grid-mobile .elementor-image-box-wrapper {display: flex;flex-direction: column;}
.my-grid-mobile .elementor-image-box-content {order: 1; margin-bottom: 24px;}
.my-grid-mobile .elementor-image-box-img {order: 2;}


 /* tasto contatti menu laterale */
 .mobile-canvas__bottom {padding: 0!important; margin-top: 0!important;}



}
@media (max-width: 645px) {
.accordion-header{font-size:1.1rem;padding:22px 0;}
.accordion-content p{padding-right:20px;}
.why-choose{padding:10px;}
.why-card{padding:18px 18px 24px;}
.number{font-size:3rem;}
.why-card h3{font-size:1.3rem;}
}
@media (max-width: 479px) {
.elementor-element-7dd6425{
  --min-height:280px!important;
  min-height:280px!important;
  padding-top:24px!important;
  padding-bottom:24px!important;
}
.elementor-element-7dd6425 h1.elementor-heading-title{font-size:1.75rem!important;}
.solutions{padding:0 20px;}
.solution-card{padding:18px 18px 24px;}
.section-title h2{font-size:1.8rem;}
.solution-card h3{font-size:1.5rem;}
.solution-card .btn, .btn-primary, .cta-box .btn-primary{padding:9px 16px;font-size:.85rem;}
.cta-section{padding:24px 10px;}
.cta-box{padding:28px 16px;border-radius:16px;}
.cta-box h2{font-size:1.5rem;}
.cta-box p{font-size:1rem;margin-bottom:1rem;}
.cta-box strong{font-size:.95rem;}
.vepa-types{padding:0;}
.vepa-header{margin-bottom:18px;font-size:1rem;}
.vepa-card{padding:16px 16px 20px;font-size:1rem;}
.vepa-card h3{font-size:1.15rem;}
.vepa-note{margin-top:16px;padding:16px;font-size:1rem;}
.vepa-note h4{font-size:1.05rem;}
}
/* Blog listing */
@media (max-width: 1024px) {
.page-id-466 .card,
.page-id-503 .card,
.card--news,
.card--news-masonry{max-width:100%;box-sizing:border-box;}
.page-id-466 .card__content,
.page-id-503 .card__content,
.card--news .card__content{max-width:100%;box-sizing:border-box;}
}
/*  pagina Vetrate per Terrazzi (page-id-3150) — regole extra oltre al globale  */
@media (max-width: 1024px) {
 .page-id-3150 .elementor-top-section{padding-left:16px!important;padding-right:16px!important;padding-bottom:40px!important;}
 .page-id-3150 .e-con.e-parent.e-con-boxed{padding-left:16px!important;padding-right:16px!important;}
 .page-id-3150 .elementor-element-4f6e834b, .page-id-3150 .elementor-element-0d9cbd8, .page-id-3150 .elementor-element-327e58ff{padding-top:36px!important;padding-bottom:36px!important;}
 .page-id-3150 .elementor-heading-title{line-height:1.25!important;margin:0!important;}
 .page-id-3150 .elementor-widget-heading{margin-bottom:8px!important;}
 .page-id-3150 .elementor-widget-heading + .elementor-widget-text-editor, .page-id-3150 .elementor-widget-heading + .elementor-element.elementor-widget-text-editor{margin-top:0!important;}
 .page-id-3150 .elementor-widget-text-editor p{margin-top:0;margin-bottom:10px;}
 .page-id-3150 .elementor-widget-text-editor p:last-child{margin-bottom:0;}
 .page-id-3150 .e-con{--widgets-spacing-row:8px;--row-gap:8px;}
 .page-id-3150 h2.elementor-heading-title{font-size:28px!important;}
 .page-id-3150 h3.elementor-heading-title, .page-id-3150 h4.elementor-heading-title{font-size:1.25rem!important;}
 .page-id-3150 .elementor-widget-text-editor, .page-id-3150 .elementor-widget-text-editor p{font-size:1rem;line-height:1.7;}
 .page-id-3150 .elementor-widget-image img, .page-id-3150 .swiper-slide img{max-width:100%;height:auto;}
}
@media (max-width: 767px) {
 .page-id-2007 .elementor-top-section,
 .page-id-3150 .elementor-top-section{padding-left:12px!important;padding-right:12px!important;padding-bottom:28px!important;}
 .page-id-2007 .e-con.e-parent.e-con-boxed,
 .page-id-3150 .e-con.e-parent.e-con-boxed{padding-left:12px!important;padding-right:12px!important;}
 .page-id-3150 .elementor-element-4f6e834b, .page-id-3150 .elementor-element-0d9cbd8, .page-id-3150 .elementor-element-327e58ff{padding-top:24px!important;padding-bottom:24px!important;}
 .page-id-3150 .elementor-widget-heading{margin-bottom:6px!important;}
 .page-id-3150 .elementor-widget-text-editor p{margin-bottom:8px;}
 .page-id-3150 .e-con{--widgets-spacing-row:6px;--row-gap:6px;}
 .page-id-3150 h2.elementor-heading-title{font-size:1.5rem!important;}
 .page-id-3150 h3.elementor-heading-title, .page-id-3150 h4.elementor-heading-title{font-size:1.15rem!important;}
 .page-id-3150 .elementor-widget-text-editor, .page-id-3150 .elementor-widget-text-editor p{font-size:.95rem;line-height:1.65;}
 .page-id-3150 .e-n-tab-title{padding:10px 14px!important;font-size:.85rem!important;}
 .page-id-3150 .service-card__left {padding-left:0!important;}
}
@media (max-width: 479px) {
 .page-id-2007 .elementor-top-section,
 .page-id-3150 .elementor-top-section{padding-left:10px!important;padding-right:10px!important;padding-bottom:20px!important;}
 .page-id-2007 .e-con.e-parent.e-con-boxed,
 .page-id-3150 .e-con.e-parent.e-con-boxed{padding-left:10px!important;padding-right:10px!important;}
 .page-id-3150 h2.elementor-heading-title{font-size:1.35rem!important;}
}
/* Pergole — sezione con padding desktop molto alto */
@media (max-width: 767px) {
.page-id-3411 .elementor-element-32ee5162{
  padding-top:48px!important;
  padding-bottom:48px!important;
  padding-left:16px!important;
  padding-right:16px!important;
}
}
