/* Local features are scoped so the original page design remains intact. */
[hidden]{display:none!important}
header .top_right_box .mobile_search_btn{display:block!important;cursor:pointer;min-width:20px;min-height:20px}
header .drop-lang{display:none!important}
header .top_right_box{width:44px!important;height:76px!important;right:0!important;top:0!important}
header .top_right_box .et_pb_code_inner{position:relative;width:100%;height:100%}
header .top_right_box .mobile_search_btn{display:grid!important;place-items:center;width:44px;height:44px;right:0!important;top:50%!important;transform:translateY(-50%)}
@media(max-width:980px){header .top_right_box{height:67px!important}}

/* Specifications are content rows, not fixed-height accordion controls. */
.sec-accord .sepificaion:not(.sep2) :is(.accordion-item,.accordion-header){height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}
.sec-accord .sepificaion:not(.sep2) .accordion-button{display:grid!important;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:16px;align-items:start;height:auto!important;min-height:56px;max-height:none!important;padding:16px 24px!important;line-height:1.5!important;white-space:normal!important;overflow:visible!important}
.sec-accord .sepificaion:not(.sep2) .accordion-button :is(font,span){display:block!important;float:none!important;position:static!important;width:auto!important;min-width:0!important;max-width:100%!important;margin:0!important;padding:0!important;font-size:15px!important;line-height:1.5!important;white-space:normal!important;overflow-wrap:anywhere;word-break:normal;color:#333!important}
.sec-accord .sepificaion:not(.sep2) .accordion-button font{text-align:left!important}
.sec-accord .sepificaion:not(.sep2) .accordion-button span{text-align:right!important}
.sec-accord .sepificaion:not(.sep2) .accordion-button:after{display:none!important}
@media(max-width:480px){.sec-accord .sepificaion:not(.sep2) .accordion-button{grid-template-columns:1fr;gap:6px;padding:14px 12px!important}.sec-accord .sepificaion:not(.sep2) .accordion-button font{font-weight:600!important}.sec-accord .sepificaion:not(.sep2) .accordion-button span{text-align:left!important}}
.local-overlay{position:fixed;inset:0;background:#000b;z-index:100000;overflow-y:auto;padding:9vh 20px}
.local-search-panel{position:relative;background:white;max-width:850px;margin:auto;padding:42px;color:#111;font-family:Arial,sans-serif}
.local-search-panel h2{font-size:30px;margin:0 0 24px;font-weight:600}
.local-search-panel form{display:flex;gap:12px;margin-bottom:24px}
.local-search-panel input,.local-filter input,.local-filter select,.local-product select{min-width:0;width:100%;padding:15px;border:1px solid #aaa;background:white;color:#111;font:16px Arial,sans-serif;border-radius:0}
.local-search-panel button[type=submit],.local-filter button,.local-button{background:#00b3cd;color:#fff;padding:15px 26px;border:0;font-size:16px;cursor:pointer;display:inline-block;text-decoration:none}
.local-close{position:absolute;right:16px;top:10px;border:0;background:none;font-size:32px;color:#111;cursor:pointer}
.local-search-results{max-height:53vh;overflow-y:auto;margin-bottom:24px}
.local-search-result{display:flex;gap:20px;padding:14px 0;border-bottom:1px solid #ddd;align-items:center;color:#111}
.local-search-result img{width:90px;height:80px;object-fit:contain}
.local-search-result strong,.local-search-result small{display:block}
.local-search-result small{font-size:14px;color:#666;line-height:1.5}
.local-sr-only{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}
.local-form-note{display:none!important}
.local-form-status{font-size:15px!important;line-height:1.5!important;padding:8px 0!important;clear:both}
.local-form-status:empty{display:none}
.local-form-status:not(:empty){color:#008da1}
.local-form-status.local-error{color:#b42318}
.local-catalog,.local-product{padding:150px 5% 80px;max-width:1600px;margin:auto;color:#111;font-family:Arial,sans-serif;min-height:70vh}
.local-catalog h1,.local-product h1{font-size:clamp(32px,4vw,60px);line-height:1.15;margin:12px 0 30px;font-weight:600}
.local-eyebrow{letter-spacing:2px;font-size:13px!important;color:#008da1;text-transform:uppercase}
.local-filter{display:grid;grid-template-columns:1fr 1fr auto;gap:20px;align-items:end;margin:24px 0}
.local-filter label,.local-product label{display:grid;gap:7px;font-size:14px}
.local-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin:30px 0}
.local-card{color:#111;display:block;padding:20px;border:1px solid #eee;transition:border-color .2s}
.local-card:hover{border-color:#00b3cd}
.local-card img{height:270px;width:100%;object-fit:contain;background:#fff}
.local-card h2{font-size:24px;margin-top:20px}.local-card p{font-size:14px;color:#666;line-height:1.5}
.local-noimage{height:270px;display:grid;place-items:center;background:#f6f6f6;color:#00b3cd;font-size:40px}
.local-pagination{display:flex;justify-content:center;gap:30px;align-items:center;margin-top:40px}
.local-product-layout{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:36px 0 60px}.local-product-layout>div{min-width:0}
.local-product-image{display:block;height:500px;object-fit:contain;width:100%}
.local-thumbnails{display:flex;gap:10px;overflow-x:auto}.local-thumbnails button{border:1px solid #ddd;background:#fff;flex:0 0 90px;cursor:pointer}.local-thumbnails img{height:80px;width:80px;object-fit:contain}
.local-product h2{font-size:24px;line-height:1.5;margin-bottom:25px}.local-product .local-button{margin-top:30px}
.local-description{max-width:1000px;margin:auto;line-height:1.8}.local-description img{max-width:100%;height:auto}
.local-description dl{display:grid;grid-template-columns:1fr 1fr}.local-description dt,.local-description dd{padding:14px;border-bottom:1px solid #ddd}
.local-generated header .et_pb_section{background:#000!important}.local-generated header{position:absolute;top:0;width:100%;z-index:10}
.local-generated header .et_pb_menu__logo img{width:160px}.local-generated header .et-menu>li>a{color:#fff!important}
.local-generated footer{background:#050505;color:#fff}.local-generated footer .et_pb_text{color:#fff}
.product_list_small_box{position:relative}
.product_list_small_box .swiper-wrapper{display:flex;gap:30px;overflow-x:auto;overflow-y:hidden;height:auto;transform:none!important;scroll-snap-type:x mandatory;scrollbar-width:none}
.product_list_small_box .swiper-wrapper::-webkit-scrollbar{display:none}
.product_list_small_box .swiper-slide{flex:0 0 calc((100% - 60px)/3);height:auto;scroll-snap-align:start}
.local-brochure-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;display:grid;place-items:center;width:44px;height:64px;border:0;background:#0002;color:#00b3cd;font:44px/1 Arial,sans-serif;cursor:pointer;text-shadow:0 1px 3px #0008}
.local-brochure-arrow.previous{left:0}.local-brochure-arrow.next{right:0}
.local-brochure-arrow:disabled{opacity:.3;cursor:default}.local-brochure-arrow:focus-visible{outline:2px solid #00b3cd!important;outline-offset:-2px}
.productblodbanner .swiper-button-next,.productblodbanner .swiper-button-prev,.productblodbanner.no-brochures,.productblodbanner:not(:has(.swiper-wrapper img)){display:none!important}
.index_banner .index_big_box_all .et_pb_blurb_content:hover img{transform:scale(1.1)}
.index_banner .index_big_box_all .et_pb_blurb_content:hover a{color:#00b3cd!important}

/* Native archive grid replaces the old theme's missing masonry initializer. */
#et-boc .et-l .local-archive-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 30px;margin:0!important;clear:both}
#et-boc .et-l .local-archive-grid:before,#et-boc .et-l .local-archive-grid:after{display:none!important}
#et-boc .et-l .local-archive-grid article.et_pb_post{opacity:1!important;visibility:visible!important;display:block!important;float:none!important;width:auto!important;margin:0!important;min-width:0}
#et-boc .et-l .local-archive-grid .et_pb_image_container{margin:0 0 20px!important}
#et-boc .et-l .local-archive-grid .et_pb_image_container img{width:100%;height:auto;aspect-ratio:480/298;object-fit:cover}
#et-boc .et-l .local-archive-grid h2{height:auto;min-height:60px}
#et-boc .et-l .news_list_one .local-archive-grid h2{line-height:26px!important;height:52px!important;min-height:52px!important;max-height:52px;padding-bottom:0!important;margin-bottom:12px;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}
#et-boc .et-l .news_list_one .local-archive-grid .post-content-inner{height:96px!important;line-height:24px;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4}
#et-boc .et-l .video_list_one .local-archive-grid article{border:1px solid #ccc!important;padding:0!important}
#et-boc .et-l .video_list_one .local-archive-grid h2{padding:0 15px;font-size:20px;min-height:0}
#et-boc .et-l .video_list_one .local-archive-grid h2 a{display:flex;align-items:center;justify-content:center;min-height:60px;padding:20px 0;line-height:1.4;text-align:center;box-sizing:border-box}
#et-boc .et-l .video_list_one .local-archive-grid .et_pb_image_container img{aspect-ratio:480/270}
#et-boc .et-l .video_list_one .local-archive-grid .et_pb_image_container{margin:0!important}
.local-archive-pagination{display:flex;justify-content:center;gap:12px;margin:40px 0}
.local-archive-pagination a{padding:8px 14px;border:1px solid #ddd;color:#111}
.local-archive-pagination [aria-current=page]{background:#00b3cd;color:white;border-color:#00b3cd}
.local-archive-empty{grid-column:1/-1;padding:40px 0}

/* Contact dialogs preserve the 700px panel from the original site. */
.local-contact-modal{display:none!important;position:fixed!important;width:700px!important;max-width:calc(100vw - 40px)!important;left:50%!important;top:max(85px,10vh)!important;transform:translateX(-50%)!important;margin:0!important;padding:30px 40px!important;background:#fff;overflow:visible!important;max-height:none!important;z-index:100010!important;box-sizing:border-box;box-shadow:0 0 25px #0008}
.local-contact-modal.is-open{display:block!important}
.local-contact-modal .row{margin-left:-10px!important;margin-right:-10px!important;width:auto!important}
.local-contact-modal .col-md-6{width:50%!important;padding-left:10px!important;padding-right:10px!important;min-width:0}
.local-contact-modal .wpcf7,.local-contact-modal form{width:100%;min-width:0}
.local-contact-modal .local-submit-column{width:100%!important;flex:0 0 100%!important;margin-left:0!important}
.local-contact-modal input.submit-btn{display:block!important;width:200px!important;max-width:100%;height:74px!important;line-height:normal!important;padding:0!important;margin:14px auto 0!important}
.local-contact-modal .customer-fill-input :is(input,select,textarea){box-sizing:border-box;max-width:100%;min-width:0}
.local-contact-modal :is(.close,.closef){display:grid!important;place-items:center;position:absolute!important;right:-15px!important;top:-15px!important;width:30px!important;height:30px!important;background:#00b3cd!important;color:#fff!important;border-radius:50%!important;line-height:1!important;font:24px Arial,sans-serif!important;cursor:pointer;z-index:2}
.local-contact-modal :is(.close,.closef):before,.local-contact-modal :is(.close,.closef):after{display:none!important}

/* A separate full-viewport lightbox keeps brochure sheets centered at the correct aspect ratio. */
.local-brochure-modal{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;max-width:none!important;max-height:none!important;margin:0!important;transform:none!important;background:#0002!important;display:none!important;z-index:100020!important;place-items:center;overflow:hidden!important}
.local-brochure-modal.is-open{display:grid!important}
.local-brochure-modal .product_big_img{position:relative!important;left:auto!important;top:auto!important;width:max-content!important;height:auto!important;max-width:92vw!important;margin:0!important;transform:none!important;background:#fff;box-shadow:0 0 20px #0008}
.local-brochure-modal .product_big_img img{display:block!important;width:auto!important;height:auto!important;max-width:92vw!important;max-height:calc(100dvh - 50px)!important;object-fit:contain}
.local-brochure-modal .product_big_img span{display:grid!important;place-items:center;position:absolute;right:0;top:0;width:35px!important;height:35px;background:#00b3cd;color:#fff;font:24px Arial,sans-serif;cursor:pointer}
@media(max-height:900px){.local-contact-modal{top:85px!important;padding:22px 35px!important}.local-contact-modal h2{margin-bottom:22px!important}.local-contact-modal .customer-fill-input .mb-3{margin-bottom:10px!important}.local-contact-modal .customer-fill-input :is(input:not([type=submit]),select){height:40px!important;padding:6px!important}.local-contact-modal .customer-fill-input textarea{height:65px!important}.local-contact-modal input.submit-btn{margin-top:12px!important;padding:12px!important;height:50px!important}}
@media(max-width:760px){#et-boc .et-l .local-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 18px}.product_list_small_box .swiper-wrapper{gap:15px}.product_list_small_box .swiper-slide{flex-basis:calc((100% - 15px)/2)}}
@media(max-width:480px){#et-boc .et-l .local-archive-grid{grid-template-columns:1fr}.local-contact-modal{padding:20px 15px!important;max-width:calc(100vw - 24px)!important}.local-contact-modal .customer-fill-input label{font-size:12px}.local-contact-modal .customer-fill-input :is(input,select,textarea){font-size:13px!important}.local-contact-modal :is(.close,.closef){right:-8px!important;top:-12px!important}}
:where(.local-search-panel,.local-catalog,.local-product) :focus-visible{outline:2px solid #00b3cd!important;outline-offset:4px!important}
@media(max-width:980px){.local-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.local-generated .et_mobile_menu{background:#000!important}.local-product-layout{gap:25px}.local-product-image{height:350px}}
@media(max-width:600px){.local-overlay{padding:20px 10px}.local-search-panel{padding:42px 20px 25px}.local-search-panel h2{font-size:24px}.local-search-panel form{gap:7px}.local-search-panel button[type=submit]{padding:12px}.local-catalog,.local-product{padding-top:110px}.local-filter{grid-template-columns:1fr}.local-grid{gap:12px}.local-card{padding:10px}.local-card img,.local-noimage{height:170px}.local-card h2{font-size:18px}.local-card p{font-size:12px}.local-product-layout{grid-template-columns:1fr}.local-pagination{gap:12px;font-size:13px}.local-description dl{grid-template-columns:1fr 1fr}.product_list_small_box .swiper-slide{flex-basis:calc((100% - 15px)/2)}}

/* Keep the TECA logo on its own line, away from the dark background column. */
.index_banner .shua-hero-content .shua-distributor{display:flex!important;flex-direction:column;align-items:flex-start!important;gap:14px!important;white-space:normal!important}
.index_banner .shua-hero-content .shua-distributor img{transform:none!important;margin:0!important}
@media(max-width:767px){.index_banner .shua-hero-content .shua-distributor{align-items:center!important;gap:12px!important}}

/* Shared thank-you destination for all forms. */
.shua-thanks{display:grid;grid-template-columns:1.1fr 1fr;min-height:790px;padding-top:76px;background:#10262d;color:#fff;font-family:Arial,Helvetica,sans-serif}
.shua-thanks-main{padding:64px clamp(28px,5vw,100px) 60px;min-width:0}
.shua-thanks-eyebrow{color:#55d8e9;font-size:12px;letter-spacing:3px;font-weight:700;margin:0 0 26px}
.shua-thanks-check{width:48px;height:48px;display:grid;place-items:center;background:#00b3cd;color:#fff;font-size:26px;margin-bottom:26px}
.shua-thanks h1{font-size:clamp(32px,3.5vw,62px);line-height:1.08;color:#fff;font-weight:700;letter-spacing:-1px;margin:0 0 30px;padding:0}
.shua-thanks-intro{font-size:22px;line-height:1.5;margin:0 0 12px;color:#fff}
.shua-thanks-description{max-width:500px;color:#c2d3da;font-size:16px;line-height:1.75;padding:0;margin:0}
.shua-thanks-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:32px}
.shua-thanks-actions a{color:white;font-size:14px;text-decoration:none}
.shua-thanks-actions .shua-thanks-primary{padding:18px 24px;background:#00b3cd;font-size:12px;letter-spacing:1px;font-weight:700}
.shua-thanks-primary span{margin-left:15px;font-size:18px}
.shua-thanks-help{display:grid;gap:7px;margin-top:40px;border-top:1px solid #ffffff26;padding-top:22px;font-size:13px;color:#c2d3da}
.shua-thanks-help a{color:#55d8e9}
.shua-thanks-image{background:linear-gradient(0deg,#001c25d9,transparent 75%),url('/img/banner.jpg') 75% center/cover;display:flex;align-items:flex-end;padding:60px 45px;min-height:100%}
.shua-thanks-image p{font-size:clamp(32px,3vw,52px);line-height:1.08;font-weight:700;color:white;margin:0 0 22px;padding:0;letter-spacing:-1px}
.shua-thanks-image span{font-size:14px;line-height:1.8;color:#e0edf1}
@media(max-width:980px){.shua-thanks{grid-template-columns:1fr;padding-top:67px}.shua-thanks-main{padding:45px 7%}.shua-thanks-image{min-height:330px;padding:38px 7%}.shua-thanks h1{font-size:42px}}
@media(max-width:480px){.shua-thanks h1{font-size:34px}.shua-thanks-actions{gap:22px}.shua-thanks-image{min-height:280px}}

/* The shared site shell already reserves the header height. */
.shua-thanks{padding-top:0!important;min-height:710px}.shua-thanks-main{padding-top:48px;padding-bottom:48px}.shua-thanks h1{font-size:clamp(32px,3.2vw,54px)}

/* Mappa del sito */
.shua-sitemap{max-width:1500px;margin:auto;padding:70px 5% 90px;color:#333}
.shua-sitemap h1{font-size:clamp(34px,4vw,54px);margin:12px 0 22px}
.shua-sitemap-xml{display:inline-block;color:#008ba0;margin:18px 0 32px}
.shua-sitemap-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.shua-sitemap h2{font-size:23px;padding-bottom:14px;border-bottom:2px solid #00b4cb}
.shua-sitemap ul{list-style:none!important;padding:0!important;margin:0}
.shua-sitemap li{padding:10px 0;border-bottom:1px solid #eee;line-height:1.5;overflow-wrap:anywhere}
.shua-sitemap li a{color:#333}.shua-sitemap a:hover{color:#00a8bf;text-decoration:underline}
.shua-sitemap-footer{background:#000;padding:0 5% 20px;font-size:12px}.shua-sitemap-footer a{color:#fff}
@media(max-width:980px){.shua-sitemap-groups{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.shua-sitemap-groups{grid-template-columns:1fr}.shua-sitemap{padding-top:35px}}

/* Messaggi dei controlli dei form (email, cellulare, città) */
.local-field-error{display:block;margin-top:6px;color:#c0392b;font-size:13px;line-height:1.4}
.local-field-error:empty{display:none}
input[aria-invalid="true"]{border-color:#c0392b!important}
