.elementor-kit-6{--e-global-color-primary:#17523F;--e-global-color-secondary:#616161;--e-global-color-text:#7A7A7A;--e-global-color-accent:#A4A4A4;--e-global-color-tmgbg:#F4F4F4;--e-global-color-tmgsage:#B4C3BE;--e-global-color-tmgwhite:#FFFFFF;--e-global-typography-primary-font-family:"Michroma";--e-global-typography-primary-font-size:46px;--e-global-typography-primary-font-weight:400;--e-global-typography-primary-line-height:1.15em;--e-global-typography-secondary-font-family:"Open Sans";--e-global-typography-secondary-font-size:22px;--e-global-typography-secondary-font-weight:400;--e-global-typography-secondary-line-height:1.35em;--e-global-typography-text-font-family:"Open Sans";--e-global-typography-text-font-size:18px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.55em;--e-global-typography-accent-font-family:"Michroma";--e-global-typography-accent-font-size:15px;--e-global-typography-accent-font-weight:400;--e-global-typography-accent-line-height:1.2em;--e-global-typography-tmglabel-font-family:"Michroma";--e-global-typography-tmglabel-font-size:18px;--e-global-typography-tmglabel-font-weight:400;--e-global-typography-tmglabel-line-height:1.2em;--e-global-typography-tmgclaim-font-family:"Michroma";--e-global-typography-tmgclaim-font-size:46px;--e-global-typography-tmgclaim-font-weight:400;--e-global-typography-tmgclaim-line-height:1.2em;--e-global-typography-tmgsmall-font-family:"Michroma";--e-global-typography-tmgsmall-font-size:14px;--e-global-typography-tmgsmall-font-weight:400;--e-global-typography-tmgsmall-line-height:1.45em;--e-global-typography-tmgh3-font-family:"Michroma";--e-global-typography-tmgh3-font-size:21px;--e-global-typography-tmgh3-font-weight:400;--e-global-typography-tmgh3-line-height:1.3em;background-color:#F4F4F4;color:#7A7A7A;font-family:"Open Sans", Sans-serif;font-size:18px;line-height:1.55em;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{background-color:#17523F;font-family:"Michroma", Sans-serif;font-size:15px;font-weight:400;color:#FFFFFF;border-radius:30px 30px 30px 30px;padding:15px 26px 15px 26px;}.elementor-kit-6 button:hover,.elementor-kit-6 button:focus,.elementor-kit-6 input[type="button"]:hover,.elementor-kit-6 input[type="button"]:focus,.elementor-kit-6 input[type="submit"]:hover,.elementor-kit-6 input[type="submit"]:focus,.elementor-kit-6 .elementor-button:hover,.elementor-kit-6 .elementor-button:focus{background-color:#0E3B2D;color:#FFFFFF;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 a{color:#17523F;}.elementor-kit-6 a:hover{color:#0E3B2D;}.elementor-kit-6 h1{color:#17523F;font-family:"Michroma", Sans-serif;font-weight:400;}.elementor-kit-6 h2{color:#17523F;font-family:"Michroma", Sans-serif;font-weight:400;}.elementor-kit-6 h3{color:#17523F;font-family:"Michroma", Sans-serif;font-weight:400;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;--container-default-padding-top:0px;--container-default-padding-right:20px;--container-default-padding-bottom:0px;--container-default-padding-left:20px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-6{--e-global-typography-primary-font-size:36px;--e-global-typography-secondary-font-size:20px;--e-global-typography-text-font-size:17px;--e-global-typography-accent-font-size:15px;--e-global-typography-tmglabel-font-size:16px;--e-global-typography-tmgclaim-font-size:34px;--e-global-typography-tmgsmall-font-size:13px;--e-global-typography-tmgh3-font-size:20px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-6{--e-global-typography-primary-font-size:28px;--e-global-typography-secondary-font-size:18px;--e-global-typography-text-font-size:16px;--e-global-typography-accent-font-size:14px;--e-global-typography-tmglabel-font-size:14px;--e-global-typography-tmgclaim-font-size:20px;--e-global-typography-tmgsmall-font-size:13px;--e-global-typography-tmgh3-font-size:18px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ===== T.M.G. – stili globali (Kit Elementor › CSS personalizzato) ===== */

/* Sezioni "card" bianche separate dalla fascia grigia */
.tmg-card{box-shadow:0 8px 9px -5px rgba(0,0,0,.22);border-top:1px solid #e2e2e2}
.tmg-shadow-img img{box-shadow:4px 6px 14px rgba(0,0,0,.32)}

/* Header */
.tmg-header{box-shadow:0 1px 0 #e6e6e6}
.tmg-nav .elementor-nav-menu--main .elementor-item.elementor-item-active{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}
.tmg-nav .elementor-nav-menu--main .elementor-item:after{display:none}
.tmg-btn-preventivo .elementor-button{padding:11px 22px;font-size:16px}

/* Hero carousel */
.tmg-hero .elementor-swiper-button{filter:drop-shadow(0 0 3px rgba(0,0,0,.35))}
.tmg-hero .elementor-background-video-container{background:#efefef}

/* Barre oblique (elemento grafico del logo) */
.tmg-stripe{display:block;width:var(--w,160px);height:var(--h,104px);background:var(--c,#b4c3be);
  clip-path:polygon(0 0,calc(100% - var(--h,104px)*.8) 0,100% 100%,0 100%)}
.tmg-stripes span{display:block;width:var(--w);height:var(--h);background:var(--c);
  clip-path:polygon(0 0,calc(100% - var(--h)*.75) 0,100% 100%,0 100%)}
.tmg-stripes span+span{margin-top:var(--g,12px)}
.elementor-widget.tmg-deco{position:absolute!important;left:0;width:auto!important;z-index:3;pointer-events:none;margin:0!important}
.tmg-deco--chisiamo{top:-62px}
.tmg-deco--footer{bottom:20px}
.tmg-deco--footer .tmg-stripes span+span{margin-top:17px}
.tmg-chi-siamo,.tmg-footer{position:relative;overflow:visible}

/* Claim "La Qualità nella Meccanica di Precisione" */
.tmg-claim .elementor-heading-title{text-shadow:1px 2px 3px rgba(0,0,0,.28);-webkit-text-stroke:.6px currentColor;white-space:nowrap}
.tmg-claim-row-2 .tmg-claim{margin-left:-23px}

/* Card materiali */
.tmg-mat-card{position:relative;display:block;overflow:hidden;border-radius:8px;
  background:linear-gradient(180deg,#fff 40%,#cfd8d5 100%);box-shadow:0 2px 7px rgba(0,0,0,.16);
  transition:transform .25s ease,box-shadow .25s ease}
.tmg-mat-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px rgba(0,0,0,.18)}
.tmg-mat-card img{display:block;width:100%;height:auto;mix-blend-mode:multiply}
.elementor-widget.tmg-mat-label{position:absolute!important;left:4px;right:4px;bottom:8px;margin:0!important}
.tmg-mat-label .elementor-heading-title{font-size:15px;line-height:1.05}

/* Contatori */
.tmg-counter{text-align:center}
.tmg-counter .elementor-counter{align-items:center}
.tmg-counter .elementor-counter-number-wrapper{justify-content:center;text-shadow:1px 2px 3px rgba(0,0,0,.3);-webkit-text-stroke:.5px currentColor}
.tmg-counter .elementor-counter-number-prefix{font-size:.62em;align-self:center}
.tmg-counter .elementor-counter-title{max-width:300px;margin:18px auto 0;text-align:center;text-shadow:1px 2px 3px rgba(0,0,0,.28)}

/* Settori */
.tmg-settore img{transition:transform .25s ease}
.tmg-settore:hover img{transform:scale(1.06)}

/* Footer */
.tmg-footer a{color:#fff}
.tmg-footer a:hover{color:#a4a4a4}
.tmg-footer .elementor-text-editor p,.tmg-footer .elementor-widget-text-editor p{margin:0 0 14px}
.tmg-footer .elementor-widget-text-editor p:last-child{margin-bottom:0}
.tmg-btn-download .elementor-button{background:transparent;border:1px solid #fff;border-radius:20px;
  padding:4px 12px;font-size:9px;letter-spacing:.5px;text-transform:uppercase}
.tmg-btn-download .elementor-button:hover{background:#fff;color:#17523f}
.tmg-copyright{position:relative;z-index:4}
.tmg-ring{position:relative;z-index:4}
.tmg-deco--footer{bottom:14px}

/* ===== Pagine interne ===== */
.tmg-clip{overflow:hidden}
.tmg-page-title .elementor-heading-title{text-shadow:0 2px 10px rgba(0,0,0,.35)}
.tmg-blend img{mix-blend-mode:multiply}
.tmg-small-text p{font-size:16px}
.tmg-grades p{line-height:1.7}

/* Barre oblique: varianti */
.tmg-stripes--r span{margin-left:auto;clip-path:polygon(0 0,100% 0,100% 100%,calc(var(--h)*.8) 100%)}
.tmg-stripes--p span{clip-path:polygon(0 0,calc(100% - var(--h)*.8) 0,100% 100%,calc(var(--h)*.8) 100%)}
.tmg-stripes--p span+span{margin-left:calc(var(--h)*1)}
.elementor-widget.tmg-deco--tl-r{left:auto;right:0;top:40px}
.tmg-deco--tl-l{bottom:110px}
.tmg-deco--az-end{top:50%;transform:translateY(-38%);left:36px;z-index:1}
.tmg-az-end-left{position:relative;padding-right:40px}
.tmg-ring{z-index:2}
.tmg-deco--parco{bottom:58px}
.elementor-widget.tmg-deco--parco-ring{left:-118px;top:20px;opacity:.38}
.elementor-widget.tmg-deco--parco-monitor{left:auto;right:-78px;top:22px;opacity:.85}
.tmg-mat-row .e-con{z-index:1}
.elementor-widget.tmg-deco--mat-ring1{left:auto;right:-150px;top:45%;z-index:0}
.elementor-widget.tmg-deco--mat-stripes{top:52%;z-index:0}
.elementor-widget.tmg-deco--mat-ring2{left:-110px;bottom:-70px;z-index:0}
.elementor-widget.tmg-deco--svc-monitor{left:auto;right:0;top:85px}
.elementor-widget.tmg-deco--svc-pen{left:25px;bottom:100px}
.tmg-deco--svc{top:26px}
.tmg-svc-section{position:relative;background:#f4f4f4;overflow:hidden}
.elementor-widget.tmg-deco--prev-ring{top:16px;left:12px;z-index:3}
.tmg-prev-band{position:relative;overflow:visible}

/* Timeline (Azienda) */
.tmg-timeline{position:relative}
.tmg-timeline:before{content:"";position:absolute;top:42px;bottom:42px;left:50%;border-left:1px solid #a9bcb5}
.tmg-tl-row{position:relative;z-index:1}
.elementor-widget.tmg-tl-year{flex:0 0 84px;width:84px!important;height:84px;margin:0;display:flex;align-items:center;justify-content:center;position:relative;border-radius:50%;background:#fff}
.elementor-widget.tmg-tl-year:before{content:"";position:absolute;inset:0;border-radius:50%;
  background:conic-gradient(from 64deg,var(--rc) 0 112deg,transparent 0 120deg,var(--rc) 0 232deg,transparent 0 240deg,var(--rc) 0 352deg,transparent 0);
  -webkit-mask:radial-gradient(circle,transparent 27px,#000 28px);mask:radial-gradient(circle,transparent 27px,#000 28px)}
.tmg-tl-year .elementor-heading-title{position:relative;font-family:Michroma,sans-serif;font-size:12px;color:#17523f}
.tmg-tl-c1{--rc:#ededed}.tmg-tl-c2{--rc:#dddddd}.tmg-tl-c3{--rc:#cbcbcb}.tmg-tl-c4{--rc:#b8b8b8}
.tmg-tl-c5{--rc:#a4a4a4}.tmg-tl-c6{--rc:#8e8e8e}.tmg-tl-c7{--rc:#767676}.tmg-tl-c8{--rc:#5c5c5c}
.tmg-tl-text p{font-size:14px;line-height:1.45;margin:0}

/* Carosello foto (Prodotti) */
.tmg-photo-carousel .swiper-slide-image{width:100%;height:380px;object-fit:cover;display:block}
.tmg-photo-carousel .elementor-swiper-button{filter:drop-shadow(0 0 3px rgba(0,0,0,.45))}
.tmg-mat-grid-small .tmg-mat-label .elementor-heading-title{font-size:13px}

/* Tabella parco macchine */
.tmg-table{width:100%;border-collapse:collapse;margin:0;font-size:17px;line-height:1.4}
.tmg-table td{border:1px solid #dadada;padding:14px 10px;color:#1e1e1e;vertical-align:middle;background:#fff!important}
.tmg-table td:last-child{font-weight:700}

/* Servizi complementari */
.tmg-svc-row{background:linear-gradient(#17523f,#17523f) center/76% 3px no-repeat}
.tmg-svc-list ul{margin:0;padding-left:20px}
.tmg-svc-list li{margin:2px 0;font-size:18px}
.tmg-caps-title .elementor-heading-title{text-transform:uppercase}

/* Form preventivo */
.tmg-form .elementor-field-group>label{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.tmg-form .elementor-field-type-upload{position:relative}
.tmg-form .elementor-field-type-upload .elementor-upload-field{background:#f3f3f3;color:#a0a0a0;padding:8px 12px 8px 190px;width:100%;font-size:14px;cursor:pointer;border:0}
.tmg-form input[type=file]::file-.elementor-kit-6-button{visibility:hidden;width:0;padding:0;margin:0;border:0}
.tmg-form input[type=file]::-webkit-file-upload-button{visibility:hidden;width:0;padding:0;margin:0;border:0}
.tmg-form .elementor-field-type-upload:after{content:"Allegato Tecnico";position:absolute;left:44px;top:8px;color:#7a7a7a;font-size:17px;font-family:"Open Sans",sans-serif;pointer-events:none}
.tmg-form .elementor-field-type-upload:before{content:"";position:absolute;left:12px;top:10px;width:20px;height:20px;z-index:1;
  background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23616161' stroke-width='1.8'%3E%3Cpath d='M21.4 11.1l-9.2 9.2a6 6 0 01-8.5-8.5l9.2-9.2a4 4 0 015.7 5.7l-9.2 9.2a2 2 0 01-2.8-2.8l8.5-8.5'/%3E%3C/svg%3E")}
.tmg-form .elementor-field-type-acceptance label,.tmg-form .elementor-field-type-acceptance a{color:#fff;font-size:14px}
.tmg-form .elementor-field-type-acceptance a{text-decoration:underline}
.tmg-form .elementor-button{min-width:190px}
.tmg-form .elementor-message{color:#fff}

/* Contatti */
.tmg-contact-row a{color:#17523f}
.tmg-contact-row p{margin:0 0 18px}
.tmg-contact-row p:last-child{margin:0}
.tmg-map iframe{display:block}

/* Blog */
.tmg-simple-band .elementor-icon-list-items{justify-content:center}
.tmg-simple-band .elementor-post-info__item{color:#fff}
.tmg-archive .elementor-post__card{border-radius:10px;box-shadow:0 3px 12px rgba(0,0,0,.08)}
.tmg-archive .elementor-post__title a{color:#17523f}
.tmg-archive .elementor-post__read-more{font-family:Michroma,sans-serif;font-size:12px;color:#17523f}
.tmg-archive .elementor-pagination{font-family:Michroma,sans-serif;font-size:14px;margin-top:40px}
.tmg-post-thumb img{border-radius:10px}
.tmg-post-content h2,.tmg-post-content h3{color:#17523f;font-family:Michroma,sans-serif;font-size:22px;line-height:1.35;margin:1.4em 0 .6em}
.tmg-post-content img{height:auto;border-radius:6px}

/* Responsive */
@media (max-width:1024px){
  .tmg-deco--tl-r,.tmg-deco--tl-l,.tmg-deco--mat-ring1,.tmg-deco--mat-ring2,.tmg-deco--mat-stripes,.tmg-deco--svc-pen{display:none}
  .elementor-widget.tmg-deco--prev-ring{width:180px!important}
  .tmg-stripe{--h:70px}
  .tmg-claim-wrap .tmg-stripe{width:calc(var(--w)*.6)}
  .tmg-claim .elementor-heading-title{white-space:normal}
}
@media (max-width:767px){
  .tmg-timeline:before{left:42px}
  .tmg-tl-row{justify-content:flex-start!important}
  .tmg-tl-col{width:auto!important;flex:1 1 auto}
  .tmg-tl-col:not(:has(.elementor-widget)){display:none}
  .tmg-tl-left{order:2}
  .tmg-deco--az-end,.tmg-deco--parco-monitor,.tmg-deco--svc-monitor,.tmg-deco--svc{display:none}
  .tmg-az-end-left{padding-right:0}
  .elementor-widget.tmg-deco--parco-ring{left:-90px;width:170px!important}
  .tmg-deco--parco{display:none}
  .tmg-deco--prev-ring{display:none}
  .tmg-photo-carousel .swiper-slide-image{height:260px}
  .tmg-svc-row{background-size:3px 90%}
  .tmg-table{font-size:15px}
  .tmg-stripe{--h:40px}
  .tmg-claim-wrap .tmg-stripe{width:calc(var(--w)*.35)}
  .tmg-claim-row-2 .tmg-claim{margin-left:-8px}
  .tmg-deco--footer{display:none}
  .tmg-deco--chisiamo{top:-36px}
  .tmg-deco--chisiamo .tmg-stripes span{height:30px!important;width:calc(var(--w)*.6)}
  .tmg-mat-label .elementor-heading-title{font-size:13px}
}/* End custom CSS */