/*
 * Ajustes responsivos globais LINTEC
 * Centraliza correções de navegação, grids, tipografia e formulários móveis.
 */

html{
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body{
  overflow-x: hidden;
}

img,
svg,
video,
canvas,
iframe{
  max-width: 100%;
}

iframe{
  border: 0;
}

.row > [class*="col-"]{
  min-width: 0;
}

.mobile-header-logo{
  display: none;
  margin: 0;
}

.mobile-header-logo img{
  display: block;
  width: auto;
  max-width: 160px;
  max-height: 52px;
}

.mobile-menu-search,
.mobile-menu-contact{
  display: none;
}

/* Evita estouro horizontal causado por textos extensos do CMS. */
.sec-title,
.content-box,
.lower-content,
.form-inner,
.contact-partner-copy,
.politica-rich-text,
.downloads-card-body,
.dealer-card,
.produtos-card,
.produtos-list-card,
.product-details-content,
.footer-widget{
  min-width: 0;
}

.sec-title h1,
.sec-title h2,
.sec-title h3,
.content-box h1,
.content-box h2,
.lower-content h3,
.lower-content h4,
.page-title li,
.contact-partner-copy,
.politica-rich-text,
.produtos-mini-specs li,
.downloads-card-description{
  overflow-wrap: anywhere;
  word-break: normal;
}

@media only screen and (max-width: 1500px){
  .shop-block-one .inner-box .image{
    width: 50%;
    top: 10%;
  }
  .header-bottom .bottom-inner{
    padding-left: 180px;
  }
  .header-bottom .bottom-inner .category-list > li{
    padding: 10px;
  }
  .header-bottom .bottom-inner .category-list > li .name p{
    font-size: 14px;
  }
}

@media only screen and (max-width: 1200px){
  .main-header .header-bottom{
    display: none !important;
  }

  .main-header .header-lower{
    display: block;
    padding: 10px 0 !important;
    background: #ffffff;
    border-bottom: 1px solid rgba(0, 0, 0, .08);
  }

  .main-header .header-lower .outer-box{
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 54px;
  }

  .main-header .menu-area{
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin-left: auto;
  }

  .menu-area .mobile-nav-toggler{
    display: inline-flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    min-width: 48px;
    padding: 0 !important;
    margin: 0;
    border: 0;
    border-radius: 12px;
    background: #fabb00 !important;
    color: #000000 !important;
    box-shadow: none !important;
    cursor: pointer;
  }

  .menu-area .mobile-nav-toggler:hover,
  .menu-area .mobile-nav-toggler:focus-visible{
    background: #000000 !important;
    outline: 3px solid rgba(250, 187, 0, .35);
    outline-offset: 2px;
  }

  .menu-area .mobile-nav-toggler .icon-bar{
    width: 25px;
    height: 2px;
    margin: 0 0 5px;
    border-radius: 4px;
    background: currentColor;
  }

  .menu-area .mobile-nav-toggler .icon-bar:last-child{
    margin-bottom: 0;
  }

  .mobile-menu{
    width: min(380px, 100%);
    padding-right: 0;
    transition: opacity .28s ease, visibility .28s ease;
  }

  .mobile-menu .menu-box{
    left: auto;
    right: 0;
    width: min(380px, 100vw);
    background: #111214;
    transform: translateX(100%);
    transition: transform .32s ease, opacity .25s ease, visibility .25s ease !important;
    overscroll-behavior: contain;
  }

  .mobile-menu-visible .mobile-menu .menu-box{
    transform: translateX(0);
  }

  .mobile-menu .menu-backdrop{
    opacity: 0;
    visibility: hidden;
    transition: opacity .25s ease, visibility .25s ease;
  }

  .mobile-menu-visible .mobile-menu .menu-backdrop{
    opacity: .68;
  }

  .mobile-menu .close-btn{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    right: 18px;
    top: 18px;
    width: 42px;
    height: 42px;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 50%;
    background: rgba(255, 255, 255, .08) !important;
    color: #ffffff !important;
    line-height: 1;
  }

  .mobile-menu .close-btn:hover,
  .mobile-menu .close-btn:focus-visible{
    background: #fabb00 !important;
    color: #000000 !important;
  }

  .mobile-menu .nav-logo{
    padding: 24px 72px 18px 22px;
    text-align: left;
  }

  .mobile-menu .nav-logo img{
    max-width: 145px;
    max-height: 52px;
  }

  .mobile-menu-search{
    display: block;
    padding: 0 20px 18px;
  }

  .mobile-menu-search form{
    position: relative;
  }

  .mobile-menu-search input{
    display: block;
    width: 100%;
    height: 48px;
    padding: 10px 52px 10px 15px;
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 12px;
    background: rgba(255, 255, 255, .08);
    color: #ffffff;
    font-size: 16px;
  }

  .mobile-menu-search input::placeholder{
    color: rgba(255, 255, 255, .64);
  }

  .mobile-menu-search button{
    position: absolute;
    top: 4px;
    right: 4px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    padding: 0;
    border: 0;
    border-radius: 10px;
    background: #fabb00 !important;
    color: #000000 !important;
    box-shadow: none !important;
  }

  .mobile-menu .lintec-menu-arrow{
    display: none;
  }

  .mobile-menu .navigation li > a{
    min-height: 48px;
    padding: 12px 58px 12px 20px;
    font-size: 14px;
    line-height: 1.45;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .mobile-menu .navigation li ul li > a{
    margin-left: 0;
    padding-left: 34px;
    font-size: 14px;
    text-transform: none;
  }

  .mobile-menu .navigation li ul li ul li > a{
    padding-left: 48px;
  }

  .mobile-menu .navigation li.dropdown .dropdown-btn{
    top: 7px;
    right: 12px;
    width: 36px;
    height: 36px;
    line-height: 36px;
    border-radius: 9px;
  }

  .mobile-menu-contact{
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 22px 20px 30px;
    border-top: 1px solid rgba(255, 255, 255, .12);
  }

  .mobile-menu-contact a{
    display: flex;
    align-items: flex-start;
    gap: 11px;
    color: rgba(255, 255, 255, .82) !important;
    font-size: 14px;
    line-height: 1.45;
    overflow-wrap: anywhere;
  }

  .mobile-menu-contact i{
    flex: 0 0 18px;
    margin-top: 3px;
    color: #fabb00;
    text-align: center;
  }
}

@media only screen and (max-width: 991px){
  .main-header .header-top{
    display: none !important;
  }

  .main-header.header-style-three.lintec-main-header-fixed,
  .main-header.header-style-three{
    position: relative !important;
    top: auto !important;
  }

  .lintec-header-spacer{
    display: none !important;
  }

  .main-header .header-lower .large-container{
    padding-left: 18px;
    padding-right: 18px;
  }

  .mobile-header-logo{
    display: block;
    flex: 0 0 auto;
  }

  .main-footer .footer-widget.ml_20,
  .main-footer .footer-widget.ml_40,
  .blog-standard-content.mr_30,
  .blog-details-content.mr_30{
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .footer-column{
    margin-bottom: 34px;
  }

  .footer-column:last-child{
    margin-bottom: 0;
  }

  .contact-section .map-inner{
    height: 420px;
    margin-bottom: 30px;
  }

  .distributors-map-panel,
  .dealers-panel,
  .downloads-sidebar,
  .produtos-filter-panel{
    margin-bottom: 28px;
  }
  .video-style-two .content-box .theme-btn{
    margin-bottom: 10px;
  }
  .panel-title-copy{
    flex: 1 1 30px;
    min-width: 30px;
  }
  .distributors-filter-field{
    flex: 1 1 30px;
  }
}

@media only screen and (max-width: 767px){
  body{
    font-size: 15px;
    line-height: 1.65;
  }

  .large-container,
  .auto-container,
  .container{
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .page-title{
    padding-top: 14px !important;
    padding-bottom: 14px !important;
  }

  .page-title .bread-crumb{
    flex-wrap: wrap;
    row-gap: 5px;
  }

  .page-title .bread-crumb li{
    font-size: 14px;
    line-height: 20px;
  }

  .sec-title{
    display: block;
    margin-bottom: 24px;
  }

  .sec-title h2,
  .contact-info-section .sec-title h2,
  .orcamento-hero h2,
  .comparador-hero h2,
  .downloads-hero-content h1,
  .lintec-newsletter-copy h1,
  .politica-card .sec-title h2,
  .supplier-page-content h1{
    font-size: clamp(28px, 8vw, 34px) !important;
    line-height: 1.16 !important;
  }

  .banner-carousel .content-box h2{
    font-size: clamp(32px, 10vw, 40px) !important;
    line-height: 1.12 !important;
    overflow-wrap: anywhere;
  }

  .banner-style-two .content-box{
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  .banner-style-two .banner-carousel .slide-item .large-container{
    min-height: 380px;
  }

  .banner-carousel .slide-item{
    padding-top: 70px !important;
    padding-bottom: 70px !important;
  }

  .banner-carousel .content-box .upper-text{
    white-space: normal;
    line-height: 1.35;
  }

  .banner-style-two .banner-phone-actions,
  .banner-style-two .btn-box{
    width: 100%;
  }

  .banner-style-two .banner-action-btn,
  .banner-style-two .banner-phone-actions .banner-action-btn{
    width: 100%;
    max-width: none;
    min-height: 48px;
  }

  .theme-btn,
  button[type="submit"],
  input[type="submit"]{
    min-height: 46px;
  }

  input[type="text"],
  input[type="email"],
  input[type="tel"],
  input[type="search"],
  input[type="number"],
  select,
  textarea,
  .nice-select{
    max-width: 100%;
    font-size: 16px !important;
  }

  textarea{
    min-height: 130px;
  }

  .contact-section .form-inner,
  .contact-partner-copy,
  .orcamento-produto-card,
  .orcamento-form-card,
  .lintec-newsletter-card,
  .lintec-newsletter-form-wrap,
  .politica-card,
  .garantia-hero-card,
  .pecas-reposicao-card,
  .comparador-picker,
  .comparador-content,
  .downloads-hero-card,
  .supplier-page-card{
    padding: 22px !important;
    border-radius: 18px !important;
  }

  .contact-section .form-inner .form-group{
    margin-bottom: 18px;
  }

  .contact-section .form-inner .form-group input[type="text"],
  .contact-section .form-inner .form-group input[type="email"],
  .contact-section .form-inner .form-group textarea{
    border-radius: 14px;
  }

  .contact-section .form-inner .form-group textarea{
    min-height: 140px;
  }

  .contact-section .form-inner .message-btn .theme-btn,
  .lintec-newsletter-form .message-btn .theme-btn,
  .orcamento-form-card .message-btn .theme-btn{
    width: 100%;
    justify-content: center;
    text-align: center;
  }

  .info-block-one .inner-box{
    min-height: 0;
    padding: 24px !important;
  }

  .info-block-one .inner-box .icon-box{
    position: relative;
    top: auto;
    left: auto;
    width: 64px;
    height: 64px;
    margin-bottom: 16px;
    font-size: 28px;
    line-height: 64px;
  }

  .contact-phone-actions,
  .produtos-card-actions,
  .produto-detail-actions,
  .downloads-hero-card,
  .comparador-hero,
  .orcamento-hero{
    flex-direction: column;
    align-items: stretch;
  }

  .contact-phone-actions a,
  .produtos-card-actions a,
  .produto-detail-actions a,
  .comparador-hero .theme-btn,
  .orcamento-hero .theme-btn{
    width: 100%;
    justify-content: center;
    text-align: center;
  }

  .lintec-newsletter-card,
  .supplier-download-grid,
  .comparador-layout,
  .comparador-selected-grid,
  .comparador-selected-grid.cols-1,
  .comparador-selected-grid.cols-2,
  .downloads-nav-grid--categories,
  .downloads-nav-grid--files{
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .comparador-content,
  .comparador-picker{
    min-width: 0;
  }

  .comparador-table-wrap,
  .table-responsive,
  .product-specification,
  .shop-details .tabs-content{
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .comparador-table{
    min-width: 640px;
  }

  .product-details-content .image-column,
  .product-details-content .content-column,
  .pecas-reposicao-content,
  .posvendas-hero-content{
    min-width: 0;
  }

  .product-details-content .image-column{
    margin-bottom: 28px;
  }

  .shop-details .slider-pager{
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .shop-details .slider-pager ul{
    min-width: max-content;
  }

  .main-footer .widget-section{
    padding-top: 54px;
    padding-bottom: 28px;
  }

  .main-footer .footer-bottom .bottom-inner{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
  }

  .main-footer .footer-card{
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
  }

  .main-footer .footer-card li{
    margin: 0;
  }

  .whatsapp-float{
    z-index: 9998;
  }

  .lintec-cookie-consent{
    max-width: calc(100% - 24px);
  }
}

@media only screen and (max-width: 575px){
  .large-container,
  .auto-container,
  .container{
    padding-left: 15px !important;
    padding-right: 15px !important;
  }

  .mobile-header-logo img{
    max-width: 135px;
    max-height: 46px;
  }

  .menu-area .mobile-nav-toggler{
    width: 44px;
    height: 44px;
    min-width: 44px;
  }

  .mobile-menu .menu-box{
    width: 100vw;
  }

  .sec-title h2,
  .contact-info-section .sec-title h2,
  .orcamento-hero h2,
  .comparador-hero h2,
  .downloads-hero-content h1,
  .lintec-newsletter-copy h1,
  .supplier-page-content h1{
    font-size: 28px !important;
  }

  .banner-carousel .content-box h2{
    font-size: 32px !important;
  }

  .contact-section .form-inner,
  .contact-partner-copy,
  .orcamento-produto-card,
  .orcamento-form-card,
  .lintec-newsletter-card,
  .lintec-newsletter-form-wrap,
  .politica-card,
  .garantia-hero-card,
  .pecas-reposicao-card,
  .comparador-picker,
  .comparador-content,
  .downloads-hero-card,
  .supplier-page-card{
    padding: 18px !important;
    border-radius: 16px !important;
  }

  .contact-section .map-inner{
    height: 320px;
  }

  .pagination{
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
  }

  .pagination li{
    margin: 0 !important;
  }

  .pagination li a{
    width: 38px;
    height: 38px;
    line-height: 38px;
  }

  .whatsapp-float{
    right: 12px;
    bottom: 12px;
  }

  .scroll-to-top{
    right: 12px;
    bottom: 82px;
  }
}

/* ==========================================================
 * Correções mobile v1.1
 * Header dedicado, conteúdo sempre visível e ritmo vertical.
 * ========================================================== */

.lintec-mobile-header{
  display: none;
}

@media only screen and (max-width: 991px){
  html,
  body,
  .boxed_wrapper{
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  html.mobile-menu-visible,
  body.mobile-menu-visible{
    overflow: hidden !important;
    touch-action: none;
  }

  /* O header desktop possui partes ocultas por padrão no tema. Em mobile,
     usamos uma barra própria para não depender dessas regras conflitantes. */
  .main-header .header-top,
  .main-header .header-lower,
  .main-header .header-bottom{
    display: none !important;
  }

  .main-header.header-style-three{
    display: block !important;
    position: relative !important;
    width: 100%;
    min-height: 66px;
    background: #fff;
    z-index: 10000;
  }

  .lintec-mobile-header{
    position: relative;
    z-index: 10001;
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    min-height: 66px;
    padding: 9px 16px;
    background: #fff;
    border-bottom: 1px solid rgba(0, 0, 0, .09);
    box-shadow: 0 4px 16px rgba(0, 0, 0, .08);
  }

  .lintec-mobile-brand{
    display: inline-flex;
    align-items: center;
    flex: 0 1 155px;
    min-width: 0;
  }

  .lintec-mobile-brand img{
    display: block;
    width: auto;
    max-width: 145px;
    max-height: 46px;
  }

  .lintec-mobile-nav-toggler{
    position: relative !important;
    float: none !important;
    display: inline-flex !important;
    flex: 0 0 46px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    min-width: 46px;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 10px;
    background: #fabb00 !important;
    color: #000 !important;
    line-height: 1 !important;
    box-shadow: none !important;
  }

  .lintec-mobile-nav-toggler .icon-bar{
    display: block;
    width: 24px;
    height: 2px;
    margin: 0 0 5px;
    background: currentColor !important;
  }

  .lintec-mobile-nav-toggler .icon-bar:last-child{
    margin-bottom: 0;
  }

  .mobile-menu{
    right: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    padding: 0 !important;
    pointer-events: none;
  }

  .mobile-menu-visible .mobile-menu{
    pointer-events: auto;
  }

  .mobile-menu .menu-box{
    left: auto !important;
    right: 0 !important;
    width: min(380px, 100vw) !important;
    max-width: 100vw !important;
    padding-bottom: max(20px, env(safe-area-inset-bottom));
  }

  .mobile-menu .menu-backdrop{
    right: auto !important;
    opacity: 0;
    visibility: hidden;
  }

  .mobile-menu-visible .mobile-menu .menu-backdrop{
    opacity: .68;
    visibility: visible;
  }

  .mobile-menu .menu-outer:empty::before{
    content: "Menu indisponível";
    display: block;
    padding: 20px;
    color: rgba(255,255,255,.75);
  }

  /* Em celular não ocultamos o conteúdo por animações de entrada. */
  .lintec-reveal,
  .lintec-reveal.lintec-reveal-left,
  .lintec-reveal.lintec-reveal-right,
  .lintec-reveal.lintec-reveal-scale,
  .lintec-reveal.is-visible{
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    transition: none !important;
  }

  main,
  main > section,
  .boxed_wrapper > section{
    max-width: 100%;
  }

  .row{
    row-gap: 0;
  }

  .theme-btn,
  .btn-box > a,
  .btn-box > button{
    margin-bottom: 0;
  }

  .btn-box{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
  }

  /* Home: elimina caixas excessivamente altas e melhora o espaçamento. */
  .featured-style-six{
    padding-top: 30px !important;
    padding-bottom: 20px !important;
  }

  .featured-style-six .feature-block{
    margin-bottom: 12px;
  }

  .featured-style-six .feature-block:last-child{
    margin-bottom: 0;
  }

  .featured-style-six .shop-block-one .inner-box,
  .featured-style-six .shop-block-one.grup .inner-box{
    min-height: 145px;
    margin-bottom: 0;
    padding: 26px 145px 24px 22px !important;
    border-radius: 8px;
  }

  .featured-style-six .shop-block-one .inner-box h2{
    max-width: 100%;
    margin-bottom: 5px;
    font-size: 25px;
    line-height: 29px;
  }

  .featured-style-six .shop-block-one .inner-box .link-box a{
    font-size: 13px;
    line-height: 20px;
  }

  .featured-style-six .shop-block-one .inner-box .image{
    right: 5px !important;
    bottom: 0 !important;
    width: 135px !important;
    max-height: 135px;
    text-align: right;
  }

  .featured-style-six .shop-block-one .inner-box .image img{
    width: auto;
    max-width: 100%;
    max-height: 135px;
    object-fit: contain;
  }

  .garden-picks{
    padding-top: 28px !important;
    padding-bottom: 32px !important;
    overflow: hidden;
  }

  .garden-picks .sec-title{
    margin-bottom: 20px;
  }

  .garden-picks .owl-carousel .owl-stage-outer{
    overflow: hidden !important;
  }

  .garden-picks .owl-nav{
    position: relative !important;
    top: auto !important;
    right: auto !important;
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 18px;
  }

  .garden-picks .shop-block-two .inner-box{
    margin-bottom: 0;
  }

  .garden-advice{
    padding-top: 8px;
    padding-bottom: 24px;
  }

  .garden-advice .advice-column{
    margin-bottom: 16px;
  }

  .garden-advice .advice-column:last-child{
    margin-bottom: 0;
  }

  .garden-advice .advice-block .inner-box{
    min-height: 265px;
    margin-bottom: 0;
    padding: 30px 44% 28px 24px !important;
    border-radius: 12px;
    background-color: #ececec;
  }

  .garden-advice .advice-block .inner-box .bg-layer{
    background-position: right center;
  }

  .garden-advice .advice-block .inner-box h2{
    margin-bottom: 8px;
    font-size: 27px;
    line-height: 32px;
  }

  .garden-advice .advice-block .inner-box h3{
    margin-bottom: 24px;
    font-size: 19px;
    line-height: 25px;
  }

  .garden-advice .advice-block .inner-box .theme-btn{
    min-height: 44px;
    padding: 10px 20px;
  }

  .video-style-two,
  .video-style-two.about-page{
    min-height: 0;
    padding: 58px 0 !important;
  }

  .video-style-two .bg-layer{
    background-attachment: scroll !important;
    background-position: center;
    background-size: cover;
  }

  .video-style-two .content-box{
    max-width: 100%;
    margin-bottom: 0;
  }

  .video-style-two.about-page .content-box h2{
    margin-bottom: 16px;
    font-size: 30px;
    line-height: 36px;
  }

  .video-style-two.about-page .content-box h3{
    font-size: 21px;
    line-height: 28px;
  }

  .video-section{
    padding: 52px 0 !important;
  }

  .video-section .content_block_one .content-box{
    margin-bottom: 28px;
  }

  .video-section .pt_80{
    padding-top: 24px !important;
  }

  .content_block_one .content-box .inner-box .single-item,
  .content_block_one .content-box .inner-box .clients-box{
    min-height: 0;
    margin-bottom: 14px;
    padding: 18px;
  }

  /* Footer compacto e totalmente visível. */
  .main-footer .widget-section,
  .home_3 .main-footer .widget-section{
    padding: 46px 0 24px !important;
  }

  .main-footer .footer-column{
    margin-bottom: 28px;
  }

  .main-footer .footer-column:last-child{
    margin-bottom: 0;
  }

  .home_3 .main-footer .footer-widget .footer-logo{
    display: block;
    justify-content: flex-start;
    width: 155px;
    height: auto;
    line-height: normal;
    margin-bottom: 18px !important;
    text-align: left;
  }

  .main-footer .widget-title{
    margin-bottom: 12px;
  }

  .main-footer .links-list li a{
    line-height: 34px;
  }

  .main-footer .links-list > li::before{
    line-height: 34px;
  }

  .footer-bottom{
    padding: 18px 0;
  }

  .main-footer .footer-bottom .bottom-inner{
    gap: 12px;
  }
}

@media only screen and (max-width: 575px){
  .lintec-mobile-header{
    min-height: 62px;
    padding: 8px 14px;
  }

  .main-header.header-style-three{
    min-height: 62px;
  }

  .lintec-mobile-brand img{
    max-width: 128px;
    max-height: 42px;
  }

  .lintec-mobile-nav-toggler{
    flex-basis: 43px;
    width: 43px;
    height: 43px;
    min-width: 43px;
  }

  .banner-style-two .banner-carousel .slide-item .large-container{
    min-height: 350px;
  }

  .banner-carousel .slide-item{
    padding-top: 54px !important;
    padding-bottom: 54px !important;
  }

  .banner-style-two .content-box h2,
  .banner-carousel .content-box h2{
    font-size: 30px !important;
    line-height: 1.12 !important;
  }

  .featured-style-six .shop-block-one .inner-box,
  .featured-style-six .shop-block-one.grup .inner-box{
    min-height: 132px;
    padding: 22px 122px 20px 18px !important;
  }

  .featured-style-six .shop-block-one .inner-box h2{
    font-size: 22px;
    line-height: 26px;
  }

  .featured-style-six .shop-block-one .inner-box .image{
    width: 115px !important;
    max-height: 120px;
  }

  .featured-style-six .shop-block-one .inner-box .image img{
    max-height: 120px;
  }

  .garden-advice .advice-block .inner-box{
    min-height: 245px;
    padding: 24px 38% 24px 18px !important;
  }

  .garden-advice .advice-block .inner-box h2{
    font-size: 24px;
    line-height: 29px;
  }

  .garden-advice .advice-block .inner-box h3{
    font-size: 17px;
    line-height: 23px;
  }

  .theme-btn,
  .banner-action-btn,
  .message-btn .theme-btn{
    max-width: 100%;
  }
}

.produtos-mobile-filter-toggle{
  display: none;
}

.produtos-mobile-filter-content{
  display: block;
}

/* ==========================================================
 * Ajustes mobile v1.2
 * Aplicados somente em tablets/celulares. O desktop permanece intacto.
 * ========================================================== */

@media only screen and (max-width: 991px){
  /* No mobile o WhatsApp permanece como única ação flutuante. */
  .scroll-to-top{
    display: none !important;
  }

  .whatsapp-float{
    position: fixed !important;
    right: 16px !important;
    bottom: max(16px, env(safe-area-inset-bottom)) !important;
    left: auto !important;
    z-index: 9998 !important;
    margin: 0 !important;
  }

  /* Os dois selos da video-section permanecem lado a lado. */
  .video-section .content_block_one .content-box .inner-box > .row{
    display: flex;
    flex-wrap: wrap;
    margin-right: -6px;
    margin-left: -6px;
  }

  .video-section .content_block_one .content-box .inner-box .single-column{
    flex: 0 0 50% !important;
    width: 50% !important;
    max-width: 50% !important;
    padding-right: 6px !important;
    padding-left: 6px !important;
  }

  .video-section .content_block_one .content-box .inner-box .single-item,
  .video-section .content_block_one .content-box .inner-box .clients-box{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    min-height: 104px;
    margin: 0 !important;
    padding: 14px !important;
  }

  .video-section .content_block_one .content-box .inner-box .single-item img,
  .video-section .content_block_one .content-box .inner-box .clients-box img{
    display: block;
    width: auto !important;
    max-width: 100%;
    max-height: 82px;
    object-fit: contain;
  }

  /* Produtos: filtros compactos e recolhíveis no mobile. */
  .produtos-mobile-filter-toggle{
    display: none;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    min-height: 50px;
    padding: 12px 15px;
    border: 0;
    border-radius: 12px;
    background: #000;
    color: #fff;
    font-size: 15px;
    line-height: 1.3;
    font-weight: 800;
    text-align: left;
  }

  .produtos-mobile-filter-toggle i{
    color: #fabb00;
    transition: transform .2s ease;
  }

  .produtos-mobile-filter-toggle[aria-expanded="true"] i{
    transform: rotate(180deg);
  }

  .produtos-filter-panel.produtos-mobile-enhanced .produtos-mobile-filter-toggle{
    display: flex;
  }

  .produtos-mobile-filter-content{
    display: block;
    padding-top: 20px;
  }

  .produtos-filter-panel.produtos-mobile-enhanced .produtos-mobile-filter-content{
    display: none;
  }

  .produtos-filter-panel.produtos-mobile-enhanced .produtos-mobile-filter-content.is-open{
    display: block;
  }

  .produtos-filter-panel{
    position: static !important;
    top: auto !important;
    margin-bottom: 22px !important;
  }

  .produtos-filter-panel .sidebar-widget{
    padding-bottom: 20px !important;
    margin-bottom: 18px !important;
  }

  .produtos-category-links{
    max-height: 330px;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding-right: 4px;
  }

  .produtos-filter-options{
    max-height: 250px;
  }

  .produtos-list-header .left-column{
    min-width: 0;
  }

  .produtos-list-header .right-column .menu-box button{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    min-height: 40px;
    line-height: 1;
  }

  /* Margens laterais do tema não devem permanecer quando as colunas empilham. */
  .product-details-content .content-box.ml_30,
  .content_block_two .content-box.ml_30,
  .content_block_one .content-box.ml_30{
    margin-left: 0 !important;
  }
}

@media only screen and (max-width: 767px){
  /* Ritmo vertical comum às páginas internas. */
  .about-section,
  .video-section,
  .politica-section,
  .posvendas-hero,
  .posvendas-downloads-section,
  .pecas-reposicao-section,
  .garantia-page-section,
  .downloads-page-section,
  .supplier-page-section,
  .lintec-newsletter-page,
  .orcamento-rapido-section,
  .distributors-section,
  .sidebar-page-container,
  .contact-section{
    padding-top: 42px !important;
    padding-bottom: 42px !important;
  }

  .cta-style-two .inner-container{
    padding: 38px 18px !important;
  }

  .cta-style-two .content-box.px-5{
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .cta-style-two .content-box .btn-box.mt-5,
  .content-box .btn-box.mt-5{
    margin-top: 24px !important;
  }

  /* Video section: mantém os dois itens na mesma linha em celulares. */
  .video-section .content_block_one .content-box .inner-box .single-item,
  .video-section .content_block_one .content-box .inner-box .clients-box{
    min-height: 92px;
    padding: 10px !important;
    border-radius: 8px;
  }

  .video-section .content_block_one .content-box .inner-box .single-item img,
  .video-section .content_block_one .content-box .inner-box .clients-box img{
    max-height: 70px;
  }

  /* Página de produtos. */
  .shop-page-section.produtos-page{
    padding-top: 18px !important;
    padding-bottom: 44px !important;
  }

  .produtos-page .sidebar-side,
  .produtos-page .content-side{
    margin-top: 0 !important;
  }

  .produtos-filter-panel,
  .produtos-list-panel{
    border-radius: 14px !important;
    box-shadow: 0 8px 24px rgba(20, 35, 55, .07) !important;
  }

  .produtos-filter-panel{
    padding: 14px !important;
  }

  .produtos-list-panel{
    padding: 16px !important;
  }

  .produtos-list-header{
    display: flex !important;
    flex-direction: column;
    align-items: stretch !important;
    gap: 12px;
    margin-bottom: 20px !important;
    padding: 0 0 16px !important;
    background: transparent !important;
    text-align: left !important;
  }

  .produtos-list-header .left-column{
    display: block !important;
  }

  .produtos-list-header .left-column .sec-title{
    margin-bottom: 3px !important;
  }

  .produtos-list-header .left-column .sec-title h2{
    font-size: 27px !important;
    line-height: 1.18 !important;
  }

  .produtos-list-header .left-column .text{
    padding: 0 !important;
  }

  .produtos-list-header .left-column .text p{
    margin: 0;
    font-size: 14px;
  }

  .produtos-list-header .right-column{
    display: flex !important;
    justify-content: flex-start !important;
    margin-top: 0 !important;
  }

  .produtos-list-header .right-column .menu-box{
    gap: 8px;
  }

  .produtos-list-header .right-column .menu-box p{
    margin-right: 4px;
  }

  .shop-page-section .wrapper .inner-container .produtos-card{
    float: none !important;
    width: 100% !important;
    margin-bottom: 16px;
  }

  .produtos-card .inner-box{
    border: 1px solid #edf0f2;
    border-radius: 14px;
  }

  .produtos-card .image-box .image{
    display: flex;
    align-items: center;
    justify-content: center;
    height: 220px;
    margin: 0;
    padding: 12px;
    background: #fafafa;
  }

  .produtos-card .image-box .image a{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
  }

  .produtos-card .image-box .image img{
    width: auto !important;
    max-width: 100%;
    max-height: 196px;
    object-fit: contain;
  }

  .produtos-card .lower-content{
    padding: 18px !important;
  }

  .produtos-card .lower-content h4{
    margin-bottom: 14px;
    font-size: 22px;
    line-height: 1.25;
  }

  .produtos-card-actions{
    gap: 10px !important;
  }

  .produtos-card-actions .theme-btn{
    min-height: 44px;
    margin: 0 !important;
  }

  .shop-list-content .produtos-list-card .inner-box{
    display: block !important;
    padding: 16px !important;
    border-radius: 14px;
  }

  .shop-list-content .produtos-list-card .image-box{
    width: 100% !important;
    margin-bottom: 16px;
  }

  .shop-list-content .produtos-list-card .image-box .image{
    display: flex;
    align-items: center;
    justify-content: center;
    height: 210px;
    margin: 0;
    padding: 10px;
    background: #fafafa;
    border-radius: 12px;
  }

  .shop-list-content .produtos-list-card .image-box img{
    width: auto !important;
    max-height: 190px;
    object-fit: contain;
  }

  .shop-list-content .produtos-list-card .content-box h4{
    font-size: 22px;
    line-height: 1.25;
  }

  .shop-list-content .produtos-list-card .feature-content{
    margin-top: 18px !important;
    padding: 16px 0 0 !important;
    border-top: 1px solid #edf0f2 !important;
    border-left: 0 !important;
  }

  .shop-list-content .produtos-list-card .feature-list li{
    padding-left: 14px;
    line-height: 1.5;
    overflow-wrap: anywhere;
  }

  /* Detalhes do produto. */
  .shop-details{
    padding-top: 24px !important;
    padding-bottom: 42px !important;
  }

  .shop-details .product-details-content{
    margin-bottom: 36px !important;
  }

  .product-details-content .image-column{
    margin-bottom: 22px !important;
  }

  .product-details-content .image-inner{
    display: flex;
    flex-direction: column;
    padding-left: 0 !important;
  }

  .product-details-content .slider-content .image-box{
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 280px;
    padding: 14px;
    border-radius: 14px;
    background: #fff;
  }

  .product-details-content .slider-content .image-box a{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
  }

  .product-details-content .slider-content .image-box img{
    width: auto !important;
    max-width: 100%;
    max-height: 315px;
    object-fit: contain;
  }

  .product-details-content .bx-viewport{
    min-height: 0 !important;
  }

  .product-details-content .slider-content .slider-pager{
    position: relative !important;
    top: auto !important;
    left: auto !important;
    width: 100%;
    margin-top: 10px;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
  }

  .product-details-content .slider-content .thumb-box{
    display: flex !important;
    align-items: center;
    gap: 8px;
    width: max-content;
    min-width: 100%;
    margin: 0;
    padding-bottom: 4px;
  }

  .product-details-content .slider-content .thumb-box li{
    flex: 0 0 auto;
    margin: 0 !important;
  }

  .product-details-content .slider-content .thumb-box li a{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 66px !important;
    height: 66px !important;
    padding: 4px;
    border-radius: 9px;
  }

  .product-details-content .slider-content .thumb-box li img{
    width: auto !important;
    max-width: 100%;
    max-height: 56px;
    object-fit: contain;
  }

  .product-details-content .content-box{
    margin-top: 0 !important;
  }

  .product-details-content .content-box .upper-text{
    margin-bottom: 5px;
    font-size: 13px;
    line-height: 1.45;
    overflow-wrap: anywhere;
  }

  .product-details-content .content-box h2{
    margin-bottom: 12px;
    font-size: 30px !important;
    line-height: 1.15 !important;
    overflow-wrap: anywhere;
  }

  .product-details-content .content-box .text-box{
    margin-bottom: 22px !important;
  }

  .product-details-content .content-box .text-box p{
    margin-bottom: 14px;
  }

  .product-details-content .content-box .discription-box{
    margin-bottom: 22px !important;
    border-top: 1px solid #e8ebee;
  }

  .product-details-content .content-box .discription-box li{
    display: grid !important;
    grid-template-columns: minmax(0, 44%) minmax(0, 56%);
    gap: 8px;
    margin: 0 !important;
    padding: 10px 0;
    border-bottom: 1px solid #e8ebee;
    line-height: 1.4;
    overflow-wrap: anywhere;
  }

  .product-details-content .content-box .discription-box li strong{
    display: block !important;
    width: auto !important;
    margin: 0 !important;
  }

  .produto-detail-actions{
    display: flex !important;
    flex-direction: column;
    align-items: stretch !important;
    gap: 10px !important;
  }

  .produto-detail-actions .theme-btn,
  .produto-detail-actions .produto-detail-link{
    width: 100%;
    min-height: 46px;
    margin: 0 !important;
    padding-right: 18px;
    padding-left: 18px;
    text-align: center;
  }

  .produto-detail-actions .produto-detail-link{
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .shop-details .product-discription{
    margin-top: 0;
  }

  .shop-details .product-discription .discription-content,
  .shop-details .product-discription .specification-content{
    padding-top: 22px !important;
  }

  .shop-details .group-title{
    margin-bottom: 14px;
  }

  .shop-details .group-title h3{
    font-size: 24px;
    line-height: 1.25;
  }

  .shop-details .product-discription .specification-content .specification-list{
    border-radius: 12px;
  }

  .shop-details .product-discription .specification-content .specification-list li.specification-group-header{
    padding: 11px 14px !important;
    font-size: 14px;
    line-height: 1.35;
    overflow-wrap: anywhere;
  }

  .shop-details .product-discription .specification-content .specification-list li.specification-item-row{
    display: grid !important;
    grid-template-columns: minmax(0, 46%) minmax(0, 54%);
    gap: 8px;
    padding: 11px 14px !important;
    font-size: 14px;
    line-height: 1.4;
    overflow-wrap: anywhere;
  }

  .shop-details .product-discription .specification-content .specification-list li.specification-item-row strong{
    display: block !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .shop-details .product-discription .specification-content .specification-list li.specification-item-row.is-merged strong{
    grid-column: 1 / -1;
  }

  .garden-picks .shop-carousel .shop-block-two .image-box .image{
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 190px;
    padding: 10px;
  }

  .garden-picks .shop-carousel .shop-block-two .image-box img{
    width: auto !important;
    max-height: 175px;
    object-fit: contain;
  }

  /* Ajustes comuns das demais páginas. */
  .about-section .image-column,
  .video-section .video-column,
  .pecas-reposicao-section .image-column,
  .posvendas-hero .image-column{
    margin-bottom: 24px;
  }

  .about-section .content-column,
  .video-section .content-column,
  .pecas-reposicao-section .content-column,
  .posvendas-hero .content-column{
    min-width: 0;
  }

  .about-section .content-box,
  .video-section .content-box,
  .pecas-reposicao-section .content-box,
  .posvendas-hero .content-box{
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .about-section .image-box img,
  .video-section .video-content img,
  .pecas-reposicao-section img,
  .posvendas-hero img{
    width: 100%;
    height: auto;
  }

  .contact-info-section .row > [class*="col-"],
  .downloads-page-section .row > [class*="col-"],
  .distributors-section .row > [class*="col-"]{
    margin-bottom: 16px;
  }

  .contact-info-section .row > [class*="col-"]:last-child,
  .downloads-page-section .row > [class*="col-"]:last-child,
  .distributors-section .row > [class*="col-"]:last-child{
    margin-bottom: 0;
  }
}

@media only screen and (max-width: 420px){
  .video-section .content_block_one .content-box .inner-box .single-item,
  .video-section .content_block_one .content-box .inner-box .clients-box{
    min-height: 82px;
    padding: 8px !important;
  }

  .video-section .content_block_one .content-box .inner-box .single-item img,
  .video-section .content_block_one .content-box .inner-box .clients-box img{
    max-height: 62px;
  }

  .product-details-content .content-box .discription-box li,
  .shop-details .product-discription .specification-content .specification-list li.specification-item-row{
    grid-template-columns: minmax(0, 42%) minmax(0, 58%);
    font-size: 13px;
  }

  .produtos-card .image-box .image{
    height: 200px;
  }

  .produtos-card .image-box .image img{
    max-height: 176px;
  }
}

/* ==========================================================
 * Ajustes mobile v1.3
 * Refinos finais de contato, home e páginas internas.
 * Todas as regras abaixo ficam restritas a tablets/celulares.
 * ========================================================== */

@media only screen and (max-width: 991px){
  /* Telefones com duas ações: telefone e WhatsApp permanecem lado a lado. */
  .contact-phone-combo{
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center !important;
    column-gap: 10px;
    row-gap: 6px;
    width: 100%;
  }

  .contact-phone-combo .contact-phone-actions{
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    align-self: center;
    width: auto !important;
    min-width: 0;
    gap: 7px;
  }

  .contact-phone-combo .contact-phone-actions a,
  .contact-phone-combo .contact-phone-icon-link{
    flex: 0 0 32px;
    width: 32px !important;
    min-width: 32px !important;
    height: 32px;
    min-height: 32px;
    padding: 0 !important;
  }

  .contact-phone-combo .contact-phone-text{
    display: block;
    min-width: 0;
    width: auto !important;
    line-height: 1.45;
    overflow-wrap: anywhere;
  }

  /* Proteções gerais contra cortes e estouros horizontais. */
  /* Limites aplicados somente aos contêineres estruturais.
   * Não limitar .row, .content-box, .inner-box ou elementos inline,
   * pois esses seletores são usados internamente pelos carrosséis. */
  .boxed_wrapper,
  main,
  main > section,
  section,
  .large-container,
  .auto-container,
  .container,
  .form-inner,
  .footer-widget,
  .sidebar-widget{
    min-width: 0;
  }

  :where(h1, h2, h3, h4, h5, h6, p, li, label){
    max-width: 100%;
    overflow-wrap: anywhere;
    word-break: normal;
  }

  a[href^="mailto:"],
  a[href^="tel:"],
  a[href*="wa.me"]{
    overflow-wrap: anywhere;
    word-break: break-word;
  }

  .theme-btn,
  .banner-action-btn,
  button[type="submit"],
  input[type="submit"]{
    height: auto !important;
    min-height: 46px;
    white-space: normal !important;
    line-height: 1.3 !important;
  }

  .nice-select{
    width: 100% !important;
    min-width: 0;
  }

  .nice-select .current{
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .nice-select .list{
    width: 100% !important;
    max-width: calc(100vw - 30px);
    max-height: 280px;
    overflow-y: auto;
    overscroll-behavior: contain;
  }

  .nice-select .option{
    min-height: 44px;
    padding-top: 10px;
    padding-bottom: 10px;
    line-height: 1.35;
    white-space: normal;
  }

  /* O Owl Carousel calcula larguras inline maiores que o viewport.
   * Nunca limitar .owl-stage ou .owl-item com max-width. */
  .owl-carousel,
  .owl-carousel .owl-stage-outer{
    width: 100%;
    max-width: 100%;
  }

  .owl-carousel img{
    height: auto;
  }

  .table-responsive,
  .comparador-table-wrap,
  .product-specification,
  .shop-details .tabs-content,
  .politica-rich-text{
    -webkit-overflow-scrolling: touch;
  }

  .table-responsive table,
  .comparador-table,
  .politica-rich-text table{
    max-width: none;
  }

  /* Home: banner com leitura mais confortável e ações separadas do texto. */
  .banner-style-two .banner-carousel .slide-item{
    overflow: hidden;
  }

  .banner-style-two .banner-carousel .slide-item .bg-layer{
    background-position: center center !important;
  }

  .banner-style-two .content-box{
    width: 100%;
    max-width: 620px;
  }

  .banner-style-two .content-box h3{
    margin-top: 10px;
    margin-bottom: 20px;
    font-size: 18px;
    line-height: 1.42;
    font-weight: 500;
  }

  .banner-style-two .content-box .upper-text{
    margin-bottom: 8px;
    font-size: 13px;
    line-height: 1.35;
  }

  .banner-style-two .btn-box,
  .banner-style-two .banner-phone-actions{
    margin-top: 18px;
    gap: 10px;
  }

  .featured-style-six .shop-block-one .inner-box{
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  .featured-style-six .shop-block-one .inner-box h2,
  .featured-style-six .shop-block-one .inner-box .link-box{
    position: relative;
    z-index: 2;
  }

  .garden-picks .shop-carousel .shop-block-two,
  .garden-picks .shop-carousel .shop-block-two .inner-box{
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
  }

  .garden-picks .shop-carousel .shop-block-two .lower-content{
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    align-items: stretch;
  }

  .garden-picks .shop-carousel .shop-block-two .lower-content h4{
    margin-bottom: 16px;
    line-height: 1.3;
  }

  .garden-picks .shop-carousel .shop-block-two .cart-btn{
    margin-top: auto;
  }

  .garden-picks .shop-carousel .shop-block-two .cart-btn .theme-btn{
    width: 100%;
    text-align: center;
  }

  .video-style-two.about-page .content-box,
  .video-section .content_block_one .content-box{
    text-align: left;
  }

  .video-style-two.about-page .content-box p,
  .video-section .content_block_one .content-box p{
    margin-bottom: 14px;
    line-height: 1.65;
  }

  .video-section .content_block_one .content-box .inner-box > .row{
    align-items: stretch;
  }

  /* Contato e formulários. */
  .contact-info-section .info-block-one,
  .contact-info-section .info-block-one .inner-box{
    height: 100%;
  }

  .contact-info-section .info-block-one .inner-box h4{
    margin-bottom: 10px;
    line-height: 1.3;
  }

  .contact-phone-list{
    gap: 10px;
  }

  .lintec-policy-acceptance label,
  .lintec-communication-acceptance label{
    display: grid !important;
    grid-template-columns: 22px minmax(0, 1fr);
    align-items: start !important;
    gap: 10px;
    width: 100%;
  }

  .lintec-policy-acceptance input[type="checkbox"],
  .lintec-communication-acceptance input[type="checkbox"]{
    margin: 3px 0 0 !important;
  }

  .lintec-newsletter-options{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .lintec-newsletter-options label{
    min-width: 0;
    height: auto;
    min-height: 48px;
  }

  .orcamento-radio-group > div{
    display: flex;
    flex-wrap: wrap;
    gap: 10px 18px;
  }

  .orcamento-radio-group label{
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin: 0 !important;
  }

  /* Downloads. */
  .downloads-list-header,
  .downloads-category-title,
  .downloads-section-title,
  .downloads-subcategory-title{
    align-items: flex-start !important;
    gap: 10px;
  }

  .downloads-card,
  .downloads-nav-card{
    min-width: 0;
  }

  .downloads-card-body,
  .downloads-nav-card__body{
    min-width: 0;
  }

  .downloads-card-body a,
  .downloads-contact-link{
    white-space: normal;
  }

  /* Distribuidores e pós-vendas: evita rolagem interna longa no celular. */
  .distributors-map-filters{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dealers-list{
    max-height: none !important;
    overflow: visible !important;
    padding-right: 0 !important;
  }

  .dealer-card{
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 12px;
  }

  .dealer-content,
  .dealer-actions{
    min-width: 0;
  }

  .dealer-actions{
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
  }

  .dealer-actions li{
    margin: 0 !important;
  }

  /* Garantia, políticas e textos técnicos. */
  .garantia-item summary{
    align-items: flex-start;
    gap: 12px;
    min-height: 56px;
    padding-right: 18px;
    padding-left: 18px;
    line-height: 1.35;
  }

  .garantia-item summary i{
    flex: 0 0 auto;
    margin-top: 2px;
  }

  .garantia-text,
  .politica-rich-text,
  .pecas-reposicao-content,
  .posvendas-hero-content{
    font-size: 15px;
    line-height: 1.65;
  }

  .politica-rich-text img,
  .garantia-text img{
    height: auto !important;
  }

  /* Blog, comparação e conteúdos com colunas. */
  .blog-standard-content,
  .blog-details-content,
  .blog-sidebar{
    min-width: 0;
  }

  .blog-sidebar{
    margin-top: 34px;
  }

  .news-block-one .lower-content .post-info,
  .post-share-option,
  .post-share-option .tags-list,
  .post-share-option .social-links{
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
  }

  .comparador-picker{
    position: static !important;
    top: auto !important;
  }

  .comparador-produtos-lista{
    max-height: 420px;
    overscroll-behavior: contain;
  }

  .comparador-selected-card,
  .comparador-option{
    min-width: 0;
  }

  /* Footer: links e contatos não ultrapassam a tela. */
  .main-footer .footer-widget,
  .main-footer .footer-widget p,
  .main-footer .footer-widget li,
  .main-footer .footer-widget a{
    max-width: 100%;
    overflow-wrap: anywhere;
  }

  .main-footer .contact-widget .support-box{
    min-width: 0;
  }

  /* Restaura o fluxo nativo do Owl Carousel.
   * A largura da stage é definida inline pelo plugin e não pode ser comprimida. */
  .banner-carousel .owl-stage,
  .shop-carousel .owl-stage{
    display: block !important;
    max-width: none !important;
  }

  .banner-carousel .owl-item,
  .shop-carousel .owl-item{
    display: block !important;
    max-width: none !important;
  }
}

@media only screen and (max-width: 767px){
  /* Ritmo tipográfico consistente nas páginas internas. */
  .sec-title:not(.centred),
  .content-box,
  .form-inner,
  .downloads-card-body,
  .dealer-content,
  .politica-rich-text,
  .garantia-text,
  .pecas-reposicao-content,
  .posvendas-hero-content{
    text-align: left;
  }

  .page-title .bread-crumb{
    display: flex;
    align-items: center;
    gap: 4px 7px;
  }

  .page-title .bread-crumb li{
    margin: 0 !important;
  }

  /* Home. */
  .banner-style-two .banner-carousel .slide-item .large-container{
    display: flex;
    align-items: center;
    min-height: 390px;
  }

  .banner-style-two .content-box h3{
    font-size: 16px;
    line-height: 1.45;
  }

  .featured-style-six .row{
    row-gap: 12px;
  }

  .featured-style-six .feature-block{
    margin-bottom: 0;
  }

  .garden-picks .shop-carousel .shop-block-two .lower-content{
    padding: 18px !important;
  }

  .garden-picks .shop-carousel .shop-block-two .lower-content h4{
    font-size: 21px;
  }

  .video-style-two.about-page .content-box h2,
  .video-section .content_block_one .text-box h2{
    font-size: 28px !important;
    line-height: 1.2 !important;
  }

  .video-section .content_block_one .text-box h3{
    font-size: 19px;
    line-height: 1.4;
  }

  /* Contato: cartões e formulário ocupam a largura útil sem cortes. */
  .contact-info-section .info-block-one .inner-box{
    text-align: left;
  }

  .contact-info-section .info-block-one .inner-box .icon-box{
    margin-right: 0;
    margin-left: 0;
  }

  .contact-section .content-column,
  .contact-section .map-column{
    width: 100%;
  }

  .contact-section .map-inner{
    width: 100%;
    margin-top: 24px;
  }

  /* Newsletter e orçamento. */
  .lintec-newsletter-copy,
  .lintec-newsletter-form-wrap{
    width: 100%;
  }

  .lintec-newsletter-highlights{
    grid-template-columns: minmax(0, 1fr);
    gap: 9px;
  }

  .lintec-newsletter-options{
    grid-template-columns: minmax(0, 1fr);
  }

  .orcamento-radio-group > div{
    flex-direction: column;
    align-items: flex-start;
  }

  /* Downloads. */
  .downloads-sidebar,
  .downloads-content-panel{
    padding: 18px !important;
    border-radius: 14px !important;
  }

  .downloads-list-header{
    display: flex;
    flex-direction: column;
    align-items: stretch !important;
  }

  .downloads-contact-link{
    display: inline-flex;
    justify-content: center;
    width: 100%;
    min-height: 44px;
    padding: 10px 14px;
    text-align: center;
  }

  .downloads-grid,
  .downloads-nav-grid,
  .downloads-nav-grid--categories,
  .downloads-nav-grid--files{
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .downloads-card{
    display: grid !important;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 13px;
    padding: 16px !important;
  }

  .downloads-card-icon{
    width: 48px;
    height: 48px;
  }

  .downloads-nav-card{
    display: grid !important;
    grid-template-columns: 44px minmax(0, 1fr) auto;
    gap: 12px;
    padding: 15px !important;
  }

  /* Distribuidores e pós-vendas. */
  .distributors-map-panel,
  .dealers-panel{
    padding: 18px !important;
    border-radius: 14px !important;
  }

  .distributors-map-filters{
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
  }

  .distributors-map-wrapper,
  .distributors-map{
    min-height: 300px;
    height: 300px !important;
  }

  .dealers-heading{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 7px;
  }

  .dealer-card{
    padding: 15px !important;
  }

  /* Garantia, peças, políticas e fornecedor. */
  .garantia-hero-card h1,
  .pecas-reposicao-card h1,
  .supplier-page-content h1{
    font-size: 30px !important;
    line-height: 1.15 !important;
  }

  .garantia-content,
  .garantia-text{
    padding-right: 16px !important;
    padding-left: 16px !important;
  }

  .supplier-download-card{
    min-width: 0;
    padding: 16px !important;
  }

  .supplier-download-text{
    min-width: 0;
  }

  /* Blog. */
  .news-block-one .lower-content,
  .blog-details-content .content-one,
  .blog-details-content .content-two,
  .blog-details-content .author-box,
  .blog-details-content .comment-box{
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .blog-details-content .two-column .image-column{
    margin-bottom: 12px;
  }

  .blog-details-content .two-column .image-column:last-child{
    margin-bottom: 0;
  }

  /* Comparador. */
  .comparador-layout{
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 18px;
  }

  .comparador-picker,
  .comparador-content{
    padding: 18px !important;
    border-radius: 16px !important;
  }

  .comparador-picker-head{
    align-items: center;
  }

  .comparador-selected-grid,
  .comparador-selected-grid.cols-1,
  .comparador-selected-grid.cols-2{
    grid-template-columns: minmax(0, 1fr) !important;
  }

  /* Rodapé. */
  .main-footer .footer-column,
  .main-footer .footer-widget{
    text-align: left !important;
  }

  .main-footer .footer-widget .footer-logo{
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
}

@media only screen and (max-width: 575px){
  /* Home: cartões promocionais sem texto comprimido. */
  .garden-advice .advice-block .inner-box{
    min-height: 275px;
    padding: 22px !important;
  }

  .garden-advice .advice-block .inner-box::after{
    content: "";
    position: absolute;
    z-index: 1;
    inset: 0;
    background: linear-gradient(90deg, rgba(238, 238, 238, .98) 0%, rgba(238, 238, 238, .92) 56%, rgba(238, 238, 238, .30) 100%);
    pointer-events: none;
  }

  .garden-advice .advice-block .inner-box h2,
  .garden-advice .advice-block .inner-box h3,
  .garden-advice .advice-block .inner-box .theme-btn{
    position: relative;
    z-index: 2;
    max-width: 70%;
  }

  .garden-advice .advice-block .inner-box h3{
    margin-bottom: 20px;
  }

  .garden-advice .advice-block .inner-box .bg-layer{
    background-position: right center !important;
  }

  .banner-style-two .content-box h3{
    font-size: 15px;
  }

  .contact-phone-combo{
    grid-template-columns: auto minmax(0, 1fr);
  }

  .contact-phone-combo .contact-phone-actions a,
  .contact-phone-combo .contact-phone-icon-link{
    flex-basis: 34px;
    width: 34px !important;
    min-width: 34px !important;
    height: 34px;
  }

  .downloads-card,
  .downloads-nav-card{
    grid-template-columns: minmax(0, 1fr);
  }

  .downloads-card-icon,
  .downloads-nav-card__icon{
    margin-bottom: 4px;
  }

  .downloads-nav-card__action{
    justify-self: start;
  }

  .dealer-card{
    grid-template-columns: minmax(0, 1fr);
  }

  .dealer-icon{
    margin-bottom: 2px;
  }

  .comparador-picker-head{
    flex-direction: column;
    align-items: flex-start;
  }

  .comparador-picker-head p{
    align-self: flex-start;
  }

  .lintec-cookie-consent{
    right: 10px !important;
    bottom: 10px !important;
    left: 10px !important;
    width: auto !important;
    max-width: none !important;
  }
}
