/* ===== Migrado do functions.php — bloco 2 ===== */
/* ==========================================================
       HOMEPAGE FASE 1 — banner promocional + Marca / Modelo
       O conteúdo continua a vir dos campos ACF que já existem.
       ========================================================== */
    .ov-home-hero{
      position:relative;
      width:100%;
      max-width:none;
      margin:0;
      overflow:visible;
      background:transparent!important;
    }
    .ov-home-hero::before{display:none!important}
    .ov-home-hero::after{display:none!important}

    .ov-home-hero .banner-slick{
      position:relative;
      z-index:1;
      width:100%;
      overflow:hidden;
      border-radius:0;
      box-shadow:none;
      background:transparent!important;
      margin:0!important;
      padding:0!important;
    }
    .ov-home-hero .banner-slick .slick-list,
    .ov-home-hero .banner-slick .slick-track{
      margin:0!important;
      padding:0!important;
      background:transparent!important;
    }
    .ov-home-hero .banner-slick .slick-list{overflow:hidden!important}

    .ov-home-hero .ov-home-slide{
      position:relative;
      height:590px!important;
      min-height:590px!important;
      max-height:590px!important;
      box-sizing:border-box!important;
      padding:0!important;
      margin:0!important;
      background-size:cover!important;
      background-position:center center!important;
      background-repeat:no-repeat!important;
      display:flex!important;
      align-items:center;
      isolation:isolate;
    }
    /* Só escurece a imagem quando o banner tiver texto por cima.
       Se criares uma arte promocional completa e deixares título/texto vazios,
       a imagem aparece sem este sombreado. */
    .ov-home-hero .ov-home-slide.has-copy::before{
      content:"";
      position:absolute;
      inset:0;
      z-index:-1;
      background:linear-gradient(90deg,rgba(0,0,0,.58) 0%,rgba(0,0,0,.24) 42%,rgba(0,0,0,.04) 72%,rgba(0,0,0,.08) 100%);
      pointer-events:none;
    }
    .ov-home-hero .ov-home-slide>.container{
      width:min(1200px,calc(100% - 72px));
      margin:0 auto;
      position:relative;
      z-index:2;
    }
    .ov-home-slide-copy{
      margin:0;
      max-width:600px;
      color:#fff;
      text-shadow:0 2px 18px rgba(0,0,0,.38);
    }
    .ov-home-slide-copy h1{
      margin:0 0 16px;
      max-width:580px;
      font-size:clamp(40px,4.4vw,66px);
      line-height:1.03;
      font-weight:800;
      color:#fff;
    }
    .ov-home-slide-copy .banner__txt{
      font-size:19px;
      line-height:1.55;
      max-width:520px;
      color:rgba(255,255,255,.94);
    }
    .ov-home-slide-copy .banner__txt p{margin:0}
    .ov-home-slide-copy .banner__btns{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
    .ov-home-slide-copy .banner__btns .btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      min-height:48px;
      padding:0 24px;
      border:0;
      border-radius:8px;
      background:#8f1d18;
      color:#fff;
      font-weight:800;
      text-decoration:none;
      box-shadow:0 8px 22px rgba(0,0,0,.22);
    }
    .ov-home-slide-copy .banner__btns .btn:hover{background:#a5221c;color:#fff}

    /* Pontos do slider: discretos e centrados, sem setas laterais. */
    .ov-home-hero .slick-dots{
      position:absolute;
      left:0;
      right:0;
      bottom:164px;
      z-index:15;
      display:flex!important;
      justify-content:center;
      gap:7px;
      list-style:none;
      margin:0;
      padding:0;
    }
    .ov-home-hero .slick-dots li{width:auto;height:auto;margin:0;padding:0}
    .ov-home-hero .slick-dots button{
      width:9px;
      height:9px;
      border:0;
      border-radius:999px;
      padding:0;
      overflow:hidden;
      text-indent:-9999px;
      background:rgba(255,255,255,.62);
      box-shadow:0 1px 4px rgba(0,0,0,.25);
      cursor:pointer;
    }
    .ov-home-hero .slick-dots .slick-active button{width:24px;background:#fff}

    /* Caixa Marca / Modelo integrada na base do banner. */
    .ov-home-vehicle-layer{
      position:absolute;
      left:0;
      right:0;
      bottom:18px;
      z-index:30;
      pointer-events:none;
    }
    .ov-home-vehicle-layer>.container{
      width:100%;
      max-width:none;
      display:flex;
      justify-content:center;
      position:relative;
    }
    .ov-home-vehicle-layer .ov-vehicle-selector{pointer-events:auto;position:relative}

    .ov-vehicle-selector{
      width:min(1080px,calc(100vw - 64px));
      background:linear-gradient(180deg,#292929 0%,#202020 100%);
      border:1px solid rgba(255,255,255,.12);
      border-radius:14px;
      padding:20px 22px 22px;
      box-sizing:border-box;
      box-shadow:0 18px 48px rgba(0,0,0,.30);
      color:#fff;
    }
    .ov-vehicle-selector::before{display:none}
    .ov-vehicle-selector__head{
      display:flex;
      align-items:center;
      justify-content:center;
      gap:18px;
      margin-bottom:16px;
      text-align:center;
    }
    .ov-vehicle-selector__head::before,
    .ov-vehicle-selector__head::after{
      content:"";
      width:48px;
      height:1px;
      background:rgba(255,255,255,.20);
      flex:0 0 48px;
    }
    .ov-vehicle-selector__head strong{
      display:block;
      margin:0;
      font-size:19px;
      line-height:1.2;
      font-weight:800;
      letter-spacing:.045em;
      color:#fff;
      text-transform:uppercase;
      text-align:center;
    }

    .ov-vehicle-selector__fields{
      display:grid;
      grid-template-columns:minmax(0,1fr) minmax(0,1fr) 190px;
      gap:14px;
      align-items:end;
    }
    .ov-vehicle-field{min-width:0}
    .ov-vehicle-field label{
      display:block;
      margin:0 0 7px 2px;
      font-size:12px;
      font-weight:700;
      color:rgba(255,255,255,.92);
    }
    .ov-combobox{position:relative}
    .ov-combobox::after{
      content:"⌄";
      position:absolute;
      right:15px;
      top:14px;
      font-size:17px;
      line-height:1;
      color:#6e6e6e;
      pointer-events:none;
    }
    .ov-vehicle-input{
      width:100%;
      height:52px;
      box-sizing:border-box;
      border:1px solid #dedede;
      border-radius:8px;
      background:#fff;
      padding:0 40px 0 15px;
      font-size:15px;
      color:#222;
      outline:none;
      transition:border-color .12s ease,box-shadow .12s ease,background .12s ease;
    }
    .ov-vehicle-input::placeholder{color:#9a9a9a}
    .ov-vehicle-input:focus{border-color:#8f1d18;box-shadow:0 0 0 3px rgba(143,29,24,.17)}
    .ov-vehicle-input:disabled{background:#f2f2f2;color:#999;cursor:not-allowed}

    .ov-combobox-results{
      display:none;
      position:absolute;
      top:calc(100% + 7px);
      left:0;
      right:0;
      z-index:99999;
      max-height:280px;
      overflow-y:auto;
      overscroll-behavior:contain;
      background:#fff;
      border:1px solid #dedede;
      border-radius:10px;
      padding:5px;
      box-shadow:0 16px 34px rgba(0,0,0,.18);
    }
    .ov-combobox-results.is-open{display:block}
    .ov-combobox-item{
      width:100%;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:10px;
      border:0;
      border-radius:7px;
      background:#fff;
      padding:10px 11px;
      text-align:left;
      font-size:14px;
      color:#222;
      cursor:pointer;
    }
    .ov-combobox-item::after{content:"→";opacity:0;transform:translateX(-3px);transition:.12s ease}
    .ov-combobox-item:hover,.ov-combobox-item:focus{background:#f7efee;outline:none}
    .ov-combobox-item:hover::after,.ov-combobox-item:focus::after{opacity:.65;transform:translateX(0);color:#8f1d18}
    .ov-combobox-empty{padding:11px 12px;color:#777;font-size:13px}

    .ov-vehicle-search-btn{
      height:52px;
      border:0;
      border-radius:8px;
      background:#8f1d18;
      color:#fff;
      padding:0 20px;
      display:flex;
      align-items:center;
      justify-content:center;
      gap:10px;
      font-size:15px;
      font-weight:800;
      cursor:pointer;
      box-shadow:0 8px 22px rgba(0,0,0,.18);
      transition:transform .12s ease,background .12s ease;
    }
    .ov-vehicle-search-btn:hover:not(:disabled){background:#a5221c;transform:translateY(-1px)}
    .ov-vehicle-search-btn:disabled{opacity:.48;cursor:not-allowed;transform:none;box-shadow:none}

    @media(max-width:1024px){
      .ov-home-hero{margin-bottom:0}
      .ov-home-hero .ov-home-slide{height:520px!important;min-height:520px!important;max-height:520px!important}
      .ov-home-hero .ov-home-slide>.container{width:calc(100% - 52px)}
      .ov-home-slide-copy{max-width:520px}
      .ov-vehicle-selector{width:calc(100vw - 48px)}
      .ov-vehicle-selector__fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 170px}
    }

    @media(max-width:760px){
      .ov-home-hero{margin:0 0 28px;background:transparent}
      .ov-home-hero .ov-home-slide{height:440px!important;min-height:440px!important;max-height:440px!important}
      .ov-home-hero .ov-home-slide>.container{width:calc(100% - 36px)}
      .ov-home-slide-copy{max-width:92%}
      .ov-home-slide-copy h1{font-size:clamp(32px,9.5vw,48px)}
      .ov-home-slide-copy .banner__txt{font-size:16px;line-height:1.5}
      .ov-home-hero .slick-dots{bottom:18px}

      .ov-home-vehicle-layer{position:relative;left:auto;right:auto;bottom:auto;margin-top:12px;padding:0 12px}
      .ov-home-vehicle-layer>.container{display:block}
      .ov-vehicle-selector{width:100%;max-width:none;border-radius:12px;box-shadow:0 10px 28px rgba(0,0,0,.18)}
      .ov-vehicle-selector__fields{grid-template-columns:1fr 1fr}
      .ov-vehicle-search-btn{grid-column:1/-1}
    }

    @media(max-width:520px){
      .ov-home-hero .ov-home-slide{height:390px!important;min-height:390px!important;max-height:390px!important}
      .ov-home-slide-copy{max-width:100%}
      .ov-home-slide-copy h1{font-size:34px}
      .ov-home-slide-copy .banner__txt{font-size:15px}
      .ov-vehicle-selector{padding:18px 15px 16px}
      .ov-vehicle-selector__head{gap:10px;margin-bottom:15px}
      .ov-vehicle-selector__head::before,.ov-vehicle-selector__head::after{width:22px;flex-basis:22px}
      .ov-vehicle-selector__head strong{font-size:16px}
      .ov-vehicle-selector__fields{grid-template-columns:1fr;gap:11px}
      .ov-vehicle-search-btn{grid-column:auto}
    }

/* ===== Migrado do functions.php — bloco 3 ===== */
@media (max-width: 767px) {
    html, body { overflow-x:hidden!important; }
    body { width:100%!important; }

    /* ---------- Cabeçalho mobile ---------- */
    .header.mob{
      display:block!important;
      position:relative!important;
      z-index:5000!important;
      background:#fff!important;
      border-bottom:1px solid #e8e8e8!important;
    }
    .header.mob [data-aos]{opacity:1!important;transform:none!important;}
    .header.mob .header__top{
      display:block!important;
      padding:6px 0!important;
      background:#2d2d2d!important;
      border:0!important;
    }
    .header.mob .header__top>.container{
      width:calc(100% - 24px)!important;
      max-width:none!important;
      min-height:27px!important;
      padding:0!important;
      margin:0 auto!important;
      display:flex!important;
      align-items:center!important;
      justify-content:center!important;
    }
    .header.mob .header__top .left{
      width:100%!important;
      min-width:0!important;
      display:flex!important;
      align-items:center!important;
      justify-content:center!important;
      gap:5px!important;
      white-space:nowrap!important;
      overflow:hidden!important;
    }
    .header.mob .header__top .left>a{
      min-width:0!important;
      max-width:100%!important;
      display:flex!important;
      align-items:center!important;
      gap:5px!important;
      overflow:hidden!important;
      text-overflow:ellipsis!important;
      white-space:nowrap!important;
      font-size:10.5px!important;
      color:#fff!important;
    }
    .header.mob .header__top .left svg{width:13px!important;height:13px!important;flex:0 0 auto!important;}
    .header.mob .header__top .right{display:none!important;}

    .header.mob .header__middle{
      background:#fff!important;
      padding:11px 0 12px!important;
    }
    .header.mob .header__middle>.container{
      width:calc(100% - 24px)!important;
      max-width:none!important;
      margin:0 auto!important;
      padding:0!important;
      display:grid!important;
      grid-template-columns:minmax(0,1fr) auto!important;
      grid-template-areas:"brand actions" "search search"!important;
      gap:10px 10px!important;
      align-items:center!important;
    }
    .header.mob .boxLogo{
      grid-area:brand!important;
      min-width:0!important;
      display:flex!important;
      align-items:center!important;
      justify-content:flex-start!important;
      gap:10px!important;
    }
    .header.mob .logo-link{display:flex!important;align-items:center!important;min-width:0!important;}
    .header.mob .logo{
      width:145px!important;
      max-width:43vw!important;
      height:auto!important;
      display:block!important;
    }
    .header.mob .openMenu{
      order:2!important;
      width:35px!important;
      height:35px!important;
      margin-left:auto!important;
      padding:7px!important;
      box-sizing:border-box!important;
      border-radius:8px!important;
      background:#f7f1f0!important;
      cursor:pointer!important;
      flex:0 0 auto!important;
    }
    .header.mob .openMenu path,.header.mob .closeMenu path{fill:#8f1d18!important;}

    .header.mob .iconsHeader{
      grid-area:actions!important;
      display:flex!important;
      align-items:center!important;
      justify-content:flex-end!important;
      gap:7px!important;
      padding:0!important;
      margin:0!important;
    }
    .header.mob .iconsHeader__item{
      width:38px!important;
      min-width:38px!important;
      height:38px!important;
      min-height:38px!important;
      padding:0!important;
      border-radius:50%!important;
      background:#2b2b2b!important;
      display:flex!important;
      align-items:center!important;
      justify-content:center!important;
      color:#fff!important;
      box-shadow:none!important;
    }
    .header.mob .iconsHeader__item span:not(.cart-count-badge){display:none!important;}
    .header.mob .iconsHeader__item i{font-size:14px!important;color:#fff!important;}
    .header.mob .cart-count-badge{
      position:absolute!important;
      top:-4px!important;
      right:-4px!important;
      min-width:17px!important;
      height:17px!important;
      padding:0 4px!important;
      border-radius:999px!important;
      background:#8f1d18!important;
      color:#fff!important;
      font-size:9px!important;
      line-height:17px!important;
      font-weight:800!important;
    }

    .header.mob .search{
      grid-area:search!important;
      position:relative!important;
      width:100%!important;
      min-width:0!important;
      margin:0!important;
    }
    .header.mob .woocommerce-product-search{
      width:100%!important;
      max-width:none!important;
      display:grid!important;
      grid-template-columns:minmax(0,1fr) 94px!important;
      gap:0!important;
      border:0!important;
      background:transparent!important;
      padding:0!important;
      box-shadow:none!important;
    }
    .header.mob .search-field{
      width:100%!important;
      min-width:0!important;
      height:43px!important;
      border:1.5px solid #8f1d18!important;
      border-right:0!important;
      border-radius:8px 0 0 8px!important;
      background:#fff!important;
      padding:0 12px!important;
      font-size:12px!important;
      outline:none!important;
      box-sizing:border-box!important;
    }
    .header.mob .search-submit{
      width:94px!important;
      height:43px!important;
      padding:0 8px!important;
      border:0!important;
      border-radius:0 8px 8px 0!important;
      background:#8f1d18!important;
      color:#fff!important;
      font-size:13px!important;
      font-weight:800!important;
    }
    .header.mob .live-search-results{
      top:calc(100% + 5px)!important;
      left:0!important;
      right:0!important;
      width:100%!important;
      max-width:none!important;
      min-width:0!important;
      max-height:55vh!important;
      border-radius:8px!important;
      padding:4px!important;
      box-shadow:0 15px 35px rgba(0,0,0,.2)!important;
      z-index:2147483647!important;
    }
    .header.mob .ov-header-search-item{
      grid-template-columns:48px minmax(0,1fr)!important;
      min-height:58px!important;
      gap:9px!important;
      padding:5px 6px!important;
    }
    .header.mob .ov-header-search-item img{width:48px!important;height:48px!important;}
    .header.mob .ov-header-search-copy strong{font-size:12px!important;}
    .header.mob .ov-header-search-copy small{font-size:10.5px!important;}

    /* menu lateral */
    .header.mob .header__bottom{
      position:relative!important;
      z-index:6000!important;
      height:0!important;
      min-height:0!important;
      padding:0!important;
      margin:0!important;
      border:0!important;
      background:transparent!important;
    }
    .header.mob .header__bottom>.container{height:0!important;padding:0!important;margin:0!important;}
    .header.mob .header-nav{
      display:flex!important;
      visibility:hidden!important;
      opacity:0!important;
      position:fixed!important;
      z-index:999999!important;
      top:0!important;
      right:0!important;
      width:min(86vw,360px)!important;
      height:100dvh!important;
      box-sizing:border-box!important;
      overflow-y:auto!important;
      padding:64px 18px 30px!important;
      background:#fff!important;
      flex-direction:column!important;
      align-items:stretch!important;
      justify-content:flex-start!important;
      gap:12px!important;
      box-shadow:-12px 0 35px rgba(0,0,0,.22)!important;
      transform:translateX(105%)!important;
      transition:transform .2s ease,opacity .2s ease,visibility .2s ease!important;
    }
    .header.mob .header-nav.active{
      visibility:visible!important;
      opacity:1!important;
      transform:translateX(0)!important;
    }
    .header.mob .header-nav>.closeMenu{
      display:block!important;
      position:absolute!important;
      top:18px!important;
      right:18px!important;
      width:24px!important;
      height:24px!important;
      cursor:pointer!important;
    }
    .header.mob .header-nav>a:first-child{
      width:44px!important;
      height:44px!important;
      display:flex!important;
      align-items:center!important;
      justify-content:center!important;
      border-radius:9px!important;
      background:#f6f3f2!important;
    }
    .header.mob .logoHome{width:25px!important;height:25px!important;object-fit:contain!important;}
    .header.mob .menu-categorias-wrap{width:100%!important;position:relative!important;}
    .header.mob .menu-categorias-toggle{
      width:100%!important;
      height:46px!important;
      padding:0 15px!important;
      border:0!important;
      border-radius:8px!important;
      background:#8f1d18!important;
      color:#fff!important;
      display:flex!important;
      align-items:center!important;
      justify-content:space-between!important;
      font-size:14px!important;
      font-weight:800!important;
    }
    .header.mob .menu-categorias-dropdown{
      position:static!important;
      width:100%!important;
      min-width:0!important;
      max-height:none!important;
      margin-top:6px!important;
      padding:5px!important;
      border:1px solid #ece6e3!important;
      border-radius:8px!important;
      background:#fff!important;
      box-shadow:none!important;
      z-index:auto!important;
    }
    .header.mob .menu-categorias-dropdown:not(.is-open){display:none!important;}
    .header.mob .menu-categorias-dropdown.is-open{display:block!important;}
    .header.mob .menu-categorias,
    .header.mob .menu-categorias .submenu{width:100%!important;margin:0!important;padding:0!important;list-style:none!important;}
    .header.mob .menu-categorias a{
      display:block!important;
      width:100%!important;
      padding:10px 11px!important;
      box-sizing:border-box!important;
      border-radius:6px!important;
      color:#222!important;
      font-size:13px!important;
      text-decoration:none!important;
    }
    .header.mob .menu-categorias .submenu{padding-left:12px!important;}
    .header.mob .menu-promocoes{
      width:100%!important;
      min-height:44px!important;
      display:flex!important;
      align-items:center!important;
      padding:0 14px!important;
      box-sizing:border-box!important;
      border-radius:8px!important;
      background:#f6f3f2!important;
      color:#222!important;
      font-size:14px!important;
      font-weight:800!important;
      text-decoration:none!important;
    }

    /* ---------- Banner e Marca/Modelo ---------- */
    .ov-home-hero{
      width:100%!important;
      max-width:none!important;
      margin:0!important;
      background:#fff!important;
      overflow:visible!important;
    }
    .ov-home-hero .banner-slick{
      width:100%!important;
      border-radius:0!important;
      box-shadow:none!important;
      overflow:hidden!important;
    }
    .ov-home-hero .ov-home-slide{
      height:320px!important;
      min-height:320px!important;
      max-height:320px!important;
      background-position:center center!important;
      background-size:cover!important;
    }
    .ov-home-hero .ov-home-slide>.container{
      width:calc(100% - 28px)!important;
      margin:0 auto!important;
    }
    .ov-home-slide-copy{
      max-width:86%!important;
      margin-left:0!important;
      padding-bottom:54px!important;
    }
    .ov-home-slide-copy h1{
      max-width:300px!important;
      margin-bottom:7px!important;
      font-size:28px!important;
      line-height:1.06!important;
    }
    .ov-home-slide-copy .banner__txt{
      max-width:310px!important;
      font-size:14px!important;
      line-height:1.4!important;
    }
    .ov-home-slide-copy .banner__btns .btn,
    .ov-home-slide-copy .btn{
      min-height:40px!important;
      padding:10px 15px!important;
      font-size:13px!important;
    }
    .ov-home-hero .slick-dots{bottom:12px!important;}

    .ov-home-vehicle-layer{
      position:relative!important;
      left:auto!important;
      right:auto!important;
      bottom:auto!important;
      z-index:20!important;
      margin:-10px 0 0!important;
      padding:0 12px 14px!important;
      background:#fff!important;
    }
    .ov-home-vehicle-layer>.container{width:100%!important;max-width:none!important;padding:0!important;margin:0!important;}
    .ov-vehicle-selector{
      width:100%!important;
      max-width:none!important;
      padding:16px 14px 15px!important;
      border-radius:12px!important;
      box-shadow:0 10px 26px rgba(0,0,0,.16)!important;
    }
    .ov-vehicle-selector__head{margin-bottom:13px!important;gap:8px!important;}
    .ov-vehicle-selector__head::before,.ov-vehicle-selector__head::after{width:18px!important;flex-basis:18px!important;}
    .ov-vehicle-selector__head strong{font-size:15px!important;letter-spacing:.035em!important;}
    .ov-vehicle-selector__fields{
      display:grid!important;
      grid-template-columns:1fr!important;
      gap:10px!important;
    }
    .ov-vehicle-field label{font-size:11px!important;margin-bottom:5px!important;}
    .ov-vehicle-input{height:47px!important;font-size:14px!important;border-radius:7px!important;}
    .ov-vehicle-search-btn{height:47px!important;width:100%!important;border-radius:7px!important;font-size:14px!important;}
    .ov-combobox-results{max-height:230px!important;}

    /* ---------- Categorias homepage ---------- */
    .ov-home-categories{padding:32px 12px 38px!important;}
    .ov-section-heading{margin-bottom:22px!important;}
    .ov-section-heading h2{font-size:27px!important;}
    .ov-section-heading>span{width:42px!important;height:2px!important;margin-top:9px!important;}
    .ov-home-category-grid{
      display:grid!important;
      grid-template-columns:repeat(2,minmax(0,1fr))!important;
      gap:12px!important;
      width:100%!important;
      max-width:none!important;
      margin:0!important;
    }
    .ov-home-category-card{
      width:100%!important;
      max-width:none!important;
      min-width:0!important;
      margin:0!important;
      border-radius:10px!important;
      box-shadow:0 5px 16px rgba(28,20,14,.08)!important;
    }
    .ov-home-category-media{aspect-ratio:4/3!important;}
    .ov-home-category-body{
      min-height:53px!important;
      padding:8px 23px 8px 43px!important;
      gap:5px!important;
    }
    .ov-home-category-body strong{
      font-size:12px!important;
      line-height:1.15!important;
      display:-webkit-box!important;
      -webkit-line-clamp:2!important;
      -webkit-box-orient:vertical!important;
      overflow:hidden!important;
    }
    .ov-home-category-icon{
      left:7px!important;
      top:-17px!important;
      width:36px!important;
      height:36px!important;
      font-size:15px!important;
    }
    .ov-home-category-arrow{right:8px!important;font-size:15px!important;}

    /* ---------- Destaques ---------- */
    .ov-home-destaques{padding:5px 12px 36px!important;}
    .ov-home-destaques-grid{width:100%!important;max-width:none!important;}
    .ov-home-destaques .woocommerce ul.products,
    .ov-home-destaques ul.products{
      display:grid!important;
      grid-template-columns:repeat(2,minmax(0,1fr))!important;
      gap:10px!important;
    }
    .ov-home-destaques ul.products li.product{
      min-height:292px!important;
      padding:9px 7px 10px!important;
      border-radius:10px!important;
    }
    .ov-home-destaques ul.products li.product img{
      height:108px!important;
      margin:0 auto 6px!important;
    }
    .ov-home-destaques ul.products li.product .woocommerce-loop-product__title{
      min-height:35px!important;
      margin:3px 0 6px!important;
      font-size:13px!important;
      line-height:1.22!important;
      display:-webkit-box!important;
      -webkit-line-clamp:2!important;
      -webkit-box-orient:vertical!important;
      overflow:hidden!important;
    }
    .ov-home-destaques ul.products li.product .price{
      margin:0 0 7px!important;
      font-size:14px!important;
    }
    .ov-home-destaques ul.products li.product a.button{
      width:calc(100% - 10px)!important;
      max-width:140px!important;
      min-height:38px!important;
      padding:9px 7px!important;
      display:flex!important;
      align-items:center!important;
      justify-content:center!important;
      font-size:10.5px!important;
      white-space:nowrap!important;
    }

    /* ---------- Vantagens ---------- */
    .ov-home-benefits{padding:10px 12px!important;}
    .ov-home-benefits-grid{
      display:grid!important;
      grid-template-columns:repeat(2,minmax(0,1fr))!important;
      gap:0!important;
      width:100%!important;
      max-width:none!important;
    }
    .ov-home-benefit,
    .ov-home-benefit:nth-last-child(-n+2){
      min-height:68px!important;
      padding:10px 8px!important;
      border-right:0!important;
      border-bottom:1px solid #e6e0dc!important;
      justify-content:flex-start!important;
      gap:9px!important;
    }
    .ov-home-benefit:nth-child(odd){border-right:1px solid #e6e0dc!important;}
    .ov-home-benefit:nth-last-child(-n+2){border-bottom:0!important;}
    .ov-home-benefit>i{width:25px!important;font-size:22px!important;text-align:center!important;}
    .ov-home-benefit strong{font-size:11px!important;}
    .ov-home-benefit span{font-size:9.5px!important;}

    /* ---------- Rodapé ---------- */
    #ov-footer-v5{margin-top:0!important;}
    #ov-footer-v5 .ov-footer-v5__inner{width:calc(100% - 28px)!important;max-width:none!important;}
    #ov-footer-v5 .ov-footer-v5__legal{
      padding:24px 0 14px!important;
      font-size:10.5px!important;
      line-height:1.45!important;
    }
    #ov-footer-v5 .ov-footer-v5__grid{
      display:grid!important;
      grid-template-columns:1fr!important;
      gap:22px!important;
      padding:23px 0 30px!important;
    }
    #ov-footer-v5 .ov-footer-v5__brand{justify-content:center!important;text-align:center!important;}
    #ov-footer-v5 .ov-footer-v5__brand-image{width:235px!important;max-width:82vw!important;}
    #ov-footer-v5 h3{margin-bottom:10px!important;font-size:20px!important;}
    #ov-footer-v5 li,
    #ov-footer-v5 .ov-footer-v5__contact a{margin-bottom:9px!important;font-size:13px!important;}
    #ov-footer-v5 .ov-footer-v5__social-title{margin-top:14px!important;margin-bottom:9px!important;}
    #ov-footer-v5 .ov-footer-v5__social{gap:12px!important;font-size:27px!important;}
    #ov-footer-v5 .ov-footer-v5__copyright{padding:16px 7px 18px!important;font-size:10.5px!important;}
  }

  @media (max-width: 390px) {
    .header.mob .header__middle>.container{width:calc(100% - 18px)!important;}
    .header.mob .logo{width:132px!important;max-width:40vw!important;}
    .header.mob .openMenu{width:34px!important;height:34px!important;padding:7px!important;}
    .header.mob .iconsHeader__item{width:35px!important;min-width:35px!important;height:35px!important;min-height:35px!important;}
    .header.mob .woocommerce-product-search{grid-template-columns:minmax(0,1fr) 86px!important;}
    .header.mob .search-submit{width:86px!important;font-size:12px!important;}
    .ov-home-hero .ov-home-slide{height:295px!important;min-height:295px!important;max-height:295px!important;}
    .ov-home-slide-copy h1{font-size:25px!important;}
    .ov-home-category-grid{gap:9px!important;}
    .ov-home-category-body{padding-left:39px!important;padding-right:19px!important;}
    .ov-home-category-body strong{font-size:11px!important;}
    .ov-home-category-icon{width:33px!important;height:33px!important;font-size:14px!important;}
    .ov-home-category-arrow{right:6px!important;font-size:13px!important;}
    .ov-home-destaques ul.products li.product{min-height:282px!important;}
    .ov-home-destaques ul.products li.product img{height:100px!important;}
  }

  @media (max-width: 340px) {
    .ov-home-category-grid{grid-template-columns:1fr!important;}
    .ov-home-category-media{aspect-ratio:16/9!important;}
    .ov-home-benefits-grid{grid-template-columns:1fr!important;}
    .ov-home-benefit:nth-child(odd){border-right:0!important;}
    .ov-home-benefit:nth-last-child(-n+2){border-bottom:1px solid #e6e0dc!important;}
    .ov-home-benefit:last-child{border-bottom:0!important;}
  }

/* ===== Migrado do functions.php — bloco 4 ===== */
@media (max-width: 767px) {
    /* Não deixar animações esconderem conteúdo no mobile */
    .header.mob [data-aos],
    .ov-home-hero [data-aos],
    .ov-home-categories [data-aos],
    .ov-home-destaques [data-aos],
    .ov-home-benefits [data-aos],
    #ov-footer-v5 [data-aos]{opacity:1!important;transform:none!important;}

    /* ===== TOPO MOBILE — igual à proposta aprovada ===== */
    .header.mob .header__top{padding:7px 0!important;}
    .header.mob .header__top>.container{min-height:28px!important;}
    .header.mob .header__top .left>a{font-size:10.5px!important;}

    .header.mob .header__middle{padding:12px 0 13px!important;}
    .header.mob .header__middle>.container{
      width:calc(100% - 24px)!important;
      display:grid!important;
      grid-template-columns:minmax(0,1fr) 38px auto!important;
      grid-template-areas:
        "brand menu actions"
        "search search search"!important;
      align-items:center!important;
      column-gap:8px!important;
      row-gap:11px!important;
    }
    .header.mob .boxLogo{display:contents!important;}
    .header.mob .logo-link{grid-area:brand!important;justify-self:start!important;}
    .header.mob .logo{width:158px!important;max-width:46vw!important;height:auto!important;}
    .header.mob .openMenu{
      grid-area:menu!important;
      justify-self:center!important;
      width:38px!important;
      height:38px!important;
      margin:0!important;
      padding:8px!important;
      border-radius:9px!important;
      background:#f8f2f1!important;
    }
    .header.mob .iconsHeader{grid-area:actions!important;gap:7px!important;}
    .header.mob .iconsHeader__item{
      width:38px!important;min-width:38px!important;
      height:38px!important;min-height:38px!important;
    }
    .header.mob .search{grid-area:search!important;margin:0!important;}
    .header.mob .woocommerce-product-search{grid-template-columns:minmax(0,1fr) 104px!important;}
    .header.mob .search-field{height:46px!important;font-size:12px!important;padding:0 13px!important;}
    .header.mob .search-submit{width:104px!important;height:46px!important;font-size:13px!important;}

    /* ===== BANNER MOBILE ===== */
    .ov-home-hero .ov-home-slide{
      height:315px!important;
      min-height:315px!important;
      max-height:315px!important;
      background-size:cover!important;
      background-position:center center!important;
    }
    .ov-home-slide-copy{max-width:82%!important;padding-bottom:46px!important;}
    .ov-home-slide-copy h1{font-size:26px!important;line-height:1.06!important;}
    .ov-home-slide-copy .banner__txt{font-size:13.5px!important;line-height:1.38!important;}
    .ov-home-hero .slick-dots{bottom:12px!important;}

    /* ===== MARCA / MODELO — mais compacto e integrado ===== */
    .ov-home-vehicle-layer{
      margin:-16px 0 0!important;
      padding:0 12px 10px!important;
      background:#fff!important;
    }
    .ov-vehicle-selector{
      padding:13px 12px 13px!important;
      border-radius:12px!important;
      box-shadow:0 9px 22px rgba(0,0,0,.16)!important;
    }
    .ov-vehicle-selector__head{margin-bottom:10px!important;}
    .ov-vehicle-selector__head strong{font-size:14px!important;letter-spacing:.035em!important;}
    .ov-vehicle-selector__head::before,
    .ov-vehicle-selector__head::after{width:16px!important;flex-basis:16px!important;}
    .ov-vehicle-selector__fields{gap:8px!important;}
    .ov-vehicle-field label{margin-bottom:4px!important;font-size:10.5px!important;}
    .ov-vehicle-input,.ov-vehicle-search-btn{height:44px!important;}
    .ov-vehicle-input{font-size:13.5px!important;}
    .ov-vehicle-search-btn{font-size:13.5px!important;}

    /* ===== CATEGORIAS — 2 por linha + última centrada ===== */
    .ov-home-categories{padding:26px 12px 28px!important;}
    .ov-section-heading{margin-bottom:18px!important;}
    .ov-section-heading h2{font-size:25px!important;line-height:1.1!important;}
    .ov-section-heading>span{width:40px!important;margin-top:8px!important;}
    .ov-home-category-grid{
      grid-template-columns:repeat(2,minmax(0,1fr))!important;
      gap:10px!important;
    }
    .ov-home-category-card{border-radius:9px!important;}
    .ov-home-category-media{aspect-ratio:4/3!important;}
    .ov-home-category-body{
      min-height:49px!important;
      padding:7px 21px 7px 40px!important;
    }
    .ov-home-category-body strong{
      font-size:11.5px!important;
      line-height:1.15!important;
      -webkit-line-clamp:2!important;
    }
    .ov-home-category-icon{
      left:6px!important;top:-16px!important;
      width:34px!important;height:34px!important;
      font-size:14px!important;
    }
    .ov-home-category-arrow{right:7px!important;font-size:14px!important;}
    .ov-home-category-grid > .ov-home-category-card:last-child:nth-child(odd){
      grid-column:1 / -1!important;
      width:calc((100% - 10px)/2)!important;
      justify-self:center!important;
    }

    /* ===== DESTAQUES — 2 por linha, compactos e alinhados ===== */
    .ov-home-destaques{padding:4px 12px 28px!important;}
    .ov-home-destaques .ov-section-heading{margin-bottom:18px!important;}
    .ov-home-destaques .woocommerce ul.products,
    .ov-home-destaques ul.products{
      grid-template-columns:repeat(2,minmax(0,1fr))!important;
      gap:10px!important;
      align-items:stretch!important;
    }
    .ov-home-destaques ul.products li.product{
      height:258px!important;
      min-height:258px!important;
      padding:8px 7px 9px!important;
      display:flex!important;
      flex-direction:column!important;
      margin:0!important;
      border-radius:9px!important;
      overflow:hidden!important;
    }
    .ov-home-destaques ul.products li.product a.woocommerce-LoopProduct-link{
      flex:0 0 auto!important;
      min-height:0!important;
      height:auto!important;
      display:flex!important;
      flex-direction:column!important;
    }
    .ov-home-destaques ul.products li.product img{
      width:100%!important;
      height:96px!important;
      max-height:96px!important;
      object-fit:contain!important;
      margin:0 auto 5px!important;
    }
    .ov-home-destaques ul.products li.product .woocommerce-loop-product__title{
      min-height:32px!important;
      max-height:32px!important;
      margin:2px 0 5px!important;
      font-size:12px!important;
      line-height:1.22!important;
      -webkit-line-clamp:2!important;
      overflow:hidden!important;
    }
    .ov-home-destaques ul.products li.product .price{
      min-height:20px!important;
      margin:0 0 5px!important;
      font-size:13.5px!important;
      line-height:20px!important;
    }
    .ov-home-destaques ul.products li.product a.button{
      width:calc(100% - 8px)!important;
      max-width:none!important;
      min-height:36px!important;
      height:36px!important;
      margin:auto auto 0!important;
      padding:8px 5px!important;
      font-size:10px!important;
      line-height:1!important;
      border-radius:999px!important;
    }

    /* ===== VANTAGENS — 2 x 2 ===== */
    .ov-home-benefits{padding:8px 12px 10px!important;}
    .ov-home-benefits-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
    .ov-home-benefit,
    .ov-home-benefit:nth-last-child(-n+2){
      min-height:66px!important;
      padding:9px 7px!important;
      gap:8px!important;
    }
    .ov-home-benefit>i{width:24px!important;font-size:21px!important;}
    .ov-home-benefit strong{font-size:10.8px!important;line-height:1.18!important;}
    .ov-home-benefit span{font-size:9.2px!important;line-height:1.22!important;}

    /* ===== RODAPÉ MOBILE ===== */
    #ov-footer-v5 .ov-footer-v5__inner{width:calc(100% - 26px)!important;}
    #ov-footer-v5 .ov-footer-v5__legal{
      padding:18px 0 12px!important;
      font-size:10px!important;
      line-height:1.42!important;
    }
    #ov-footer-v5 .ov-footer-v5__grid{
      grid-template-columns:1fr!important;
      gap:18px!important;
      padding:20px 0 24px!important;
    }
    #ov-footer-v5 .ov-footer-v5__brand{
      justify-content:center!important;
      text-align:center!important;
      margin-bottom:2px!important;
    }
    #ov-footer-v5 .ov-footer-v5__brand-image{width:250px!important;max-width:84vw!important;}
    #ov-footer-v5 .ov-footer-v5__info,
    #ov-footer-v5 .ov-footer-v5__contact,
    #ov-footer-v5 .ov-footer-v5__support{text-align:left!important;}
    #ov-footer-v5 h3{margin:0 0 8px!important;font-size:18px!important;line-height:1.2!important;}
    #ov-footer-v5 li,
    #ov-footer-v5 .ov-footer-v5__contact a{margin-bottom:7px!important;font-size:12px!important;line-height:1.35!important;}
    #ov-footer-v5 .ov-footer-v5__social-title{margin-top:12px!important;margin-bottom:8px!important;}
    #ov-footer-v5 .ov-footer-v5__social{gap:11px!important;font-size:25px!important;}
    #ov-footer-v5 .ov-footer-v5__copyright{
      padding:14px 6px 16px!important;
      font-size:10px!important;
      line-height:1.35!important;
      text-align:center!important;
    }
  }

  @media (max-width: 390px) {
    .header.mob .logo{width:145px!important;max-width:44vw!important;}
    .header.mob .header__middle>.container{grid-template-columns:minmax(0,1fr) 36px auto!important;column-gap:6px!important;}
    .header.mob .openMenu{width:36px!important;height:36px!important;padding:7px!important;}
    .header.mob .iconsHeader__item{width:36px!important;min-width:36px!important;height:36px!important;min-height:36px!important;}
    .header.mob .woocommerce-product-search{grid-template-columns:minmax(0,1fr) 94px!important;}
    .header.mob .search-submit{width:94px!important;}
    .ov-home-hero .ov-home-slide{height:300px!important;min-height:300px!important;max-height:300px!important;}
    .ov-home-category-body{padding-left:38px!important;padding-right:19px!important;}
    .ov-home-category-body strong{font-size:11px!important;}
    .ov-home-destaques ul.products li.product{height:252px!important;min-height:252px!important;}
    .ov-home-destaques ul.products li.product img{height:92px!important;max-height:92px!important;}
  }

/* ===== Migrado do functions.php — bloco 5 ===== */
@media (max-width: 767px) {

    /* ========================================================
       1) TODAS AS GRELHAS DE PRODUTOS — centradas e consistentes
       ======================================================== */
    .woocommerce ul.products,
    .woocommerce-page ul.products,
    .produtos-wrapper ul.products,
    .related.products ul.products,
    .upsells.products ul.products,
    .cross-sells ul.products,
    .ov-home-destaques ul.products,
    .loja-destaques-boxes ul.products {
      display:grid!important;
      grid-template-columns:repeat(2,minmax(0,1fr))!important;
      gap:10px!important;
      width:100%!important;
      max-width:100%!important;
      margin:0 auto!important;
      padding:0!important;
      float:none!important;
      clear:both!important;
      box-sizing:border-box!important;
      justify-content:center!important;
      align-items:stretch!important;
    }

    .woocommerce ul.products::before,
    .woocommerce ul.products::after,
    .woocommerce-page ul.products::before,
    .woocommerce-page ul.products::after {
      display:none!important;
      content:none!important;
    }

    /* Contentores que antes podiam limitar/deslocar a grelha */
    .woocommerce .related.products,
    .woocommerce .upsells.products,
    .woocommerce .cross-sells,
    .produtos-wrapper,
    .loja-destaques-boxes,
    .ov-home-destaques .woocommerce {
      width:100%!important;
      max-width:100%!important;
      margin-left:auto!important;
      margin-right:auto!important;
      box-sizing:border-box!important;
    }

    /* Títulos das secções de recomendações — mesma escala */
    .single-product .related.products > h2,
    .single-product .upsells.products > h2,
    .single-product .cross-sells > h2,
    .woocommerce .related.products > h2,
    .woocommerce .upsells.products > h2 {
      margin:22px 0 16px!important;
      padding:0!important;
      text-align:center!important;
      font-size:24px!important;
      line-height:1.15!important;
      font-weight:500!important;
    }

    /* ========================================================
       2) CARTÃO UNIVERSAL MOBILE — mesma largura/altura
       ======================================================== */
    .woocommerce ul.products li.product,
    .woocommerce-page ul.products li.product,
    .produtos-wrapper ul.products li.product,
    .related.products ul.products li.product,
    .upsells.products ul.products li.product,
    .cross-sells ul.products li.product,
    .ov-home-destaques ul.products li.product,
    .loja-destaques-boxes ul.products li.product {
      float:none!important;
      width:100%!important;
      max-width:none!important;
      min-width:0!important;
      height:270px!important;
      min-height:270px!important;
      margin:0!important;
      padding:8px 7px 9px!important;
      box-sizing:border-box!important;
      display:flex!important;
      flex-direction:column!important;
      align-items:stretch!important;
      justify-content:flex-start!important;
      overflow:hidden!important;
      border-radius:10px!important;
      background:#fff!important;
    }

    .woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
    .woocommerce-page ul.products li.product a.woocommerce-LoopProduct-link {
      display:flex!important;
      flex-direction:column!important;
      align-items:center!important;
      width:100%!important;
      height:auto!important;
      min-height:0!important;
      flex:0 0 auto!important;
      text-decoration:none!important;
    }

    /* Imagens: todas na mesma caixa visual */
    .woocommerce ul.products li.product a img,
    .woocommerce-page ul.products li.product a img,
    .woocommerce ul.products li.product img,
    .woocommerce-page ul.products li.product img {
      display:block!important;
      width:100%!important;
      height:108px!important;
      min-height:108px!important;
      max-height:108px!important;
      object-fit:contain!important;
      object-position:center!important;
      margin:0 auto 5px!important;
      padding:0!important;
      transform:none!important;
    }

    /* Nome: máximo 2 linhas e sempre a mesma altura */
    .woocommerce ul.products li.product .woocommerce-loop-product__title,
    .woocommerce-page ul.products li.product .woocommerce-loop-product__title {
      display:-webkit-box!important;
      -webkit-box-orient:vertical!important;
      -webkit-line-clamp:2!important;
      overflow:hidden!important;
      width:100%!important;
      min-height:34px!important;
      max-height:34px!important;
      margin:2px 0 5px!important;
      padding:0 2px!important;
      text-align:center!important;
      font-size:12.5px!important;
      line-height:1.32!important;
      font-weight:500!important;
      box-sizing:border-box!important;
    }

    /* Preço e IVA: escala consistente e sem quebrar o cartão */
    .woocommerce ul.products li.product .price,
    .woocommerce-page ul.products li.product .price {
      display:flex!important;
      flex-wrap:wrap!important;
      justify-content:center!important;
      align-items:baseline!important;
      gap:3px!important;
      width:100%!important;
      min-height:22px!important;
      margin:0 0 6px!important;
      padding:0!important;
      text-align:center!important;
      font-size:14px!important;
      line-height:1.2!important;
      font-weight:800!important;
      color:#308935!important;
    }
    .woocommerce ul.products li.product .price .amount,
    .woocommerce-page ul.products li.product .price .amount {
      font-size:14px!important;
      line-height:1.2!important;
    }
    .woocommerce ul.products li.product .price .ov-iva-incluido,
    .woocommerce-page ul.products li.product .price .ov-iva-incluido,
    .single-product .ov-iva-incluido {
      display:inline!important;
      color:#444!important;
      font-size:11px!important;
      line-height:1.2!important;
      font-weight:600!important;
      white-space:nowrap!important;
    }

    /* Botões sempre alinhados na base */
    .woocommerce ul.products li.product a.button,
    .woocommerce-page ul.products li.product a.button,
    .woocommerce ul.products li.product .button,
    .woocommerce-page ul.products li.product .button {
      display:flex!important;
      align-items:center!important;
      justify-content:center!important;
      width:calc(100% - 8px)!important;
      max-width:none!important;
      min-width:0!important;
      height:37px!important;
      min-height:37px!important;
      margin:auto auto 0!important;
      padding:7px 5px!important;
      border-radius:999px!important;
      box-sizing:border-box!important;
      font-size:10.5px!important;
      line-height:1!important;
      text-align:center!important;
      white-space:nowrap!important;
    }

    /* Evitar elementos opcionais a desalinhar cartões */
    .woocommerce ul.products li.product .star-rating,
    .woocommerce-page ul.products li.product .star-rating {
      margin:0 auto 4px!important;
      font-size:10px!important;
    }

    /* Homepage: usar exatamente o mesmo cartão universal */
    .ov-home-destaques ul.products li.product {
      height:270px!important;
      min-height:270px!important;
    }
    .ov-home-destaques ul.products li.product img {
      height:108px!important;
      min-height:108px!important;
      max-height:108px!important;
    }

    /* ========================================================
       3) RODAPÉ MOBILE — tudo centrado
       ======================================================== */
    #ov-footer-v5,
    #ov-footer-v5 .ov-footer-v5__inner {
      width:100%!important;
      max-width:100%!important;
      margin-left:auto!important;
      margin-right:auto!important;
      box-sizing:border-box!important;
    }
    #ov-footer-v5 .ov-footer-v5__inner {
      padding-left:18px!important;
      padding-right:18px!important;
    }

    #ov-footer-v5 .ov-footer-v5__legal {
      max-width:620px!important;
      margin:0 auto!important;
      padding:20px 0 14px!important;
      text-align:center!important;
      font-size:11.5px!important;
      line-height:1.5!important;
    }

    #ov-footer-v5 .ov-footer-v5__grid {
      display:grid!important;
      grid-template-columns:1fr!important;
      justify-items:center!important;
      align-items:start!important;
      gap:24px!important;
      width:100%!important;
      padding:22px 0 26px!important;
      text-align:center!important;
    }

    #ov-footer-v5 .ov-footer-v5__brand,
    #ov-footer-v5 .ov-footer-v5__info,
    #ov-footer-v5 .ov-footer-v5__contact,
    #ov-footer-v5 .ov-footer-v5__support {
      width:100%!important;
      max-width:360px!important;
      margin:0 auto!important;
      padding:0!important;
      text-align:center!important;
      justify-content:center!important;
      justify-items:center!important;
      align-items:center!important;
      box-sizing:border-box!important;
    }

    #ov-footer-v5 .ov-footer-v5__brand {
      display:flex!important;
      flex-direction:column!important;
      align-items:center!important;
    }
    #ov-footer-v5 .ov-footer-v5__brand-image {
      display:block!important;
      width:250px!important;
      max-width:82vw!important;
      height:auto!important;
      margin:0 auto!important;
    }

    #ov-footer-v5 h3,
    #ov-footer-v5 .ov-footer-v5__social-title {
      width:100%!important;
      margin:0 0 10px!important;
      text-align:center!important;
      font-size:20px!important;
      line-height:1.2!important;
    }
    #ov-footer-v5 .ov-footer-v5__social-title {
      margin-top:16px!important;
    }

    #ov-footer-v5 ul {
      width:100%!important;
      margin:0!important;
      padding:0!important;
      list-style:none!important;
      text-align:center!important;
    }
    #ov-footer-v5 li {
      width:100%!important;
      margin:0 0 8px!important;
      padding:0!important;
      text-align:center!important;
      font-size:13px!important;
      line-height:1.4!important;
    }

    #ov-footer-v5 .ov-footer-v5__contact {
      display:flex!important;
      flex-direction:column!important;
      align-items:center!important;
    }
    #ov-footer-v5 .ov-footer-v5__contact a {
      display:block!important;
      width:auto!important;
      margin:0 auto 8px!important;
      text-align:center!important;
      font-size:13px!important;
      line-height:1.4!important;
    }

    #ov-footer-v5 .ov-footer-v5__social {
      display:flex!important;
      justify-content:center!important;
      align-items:center!important;
      gap:14px!important;
      width:100%!important;
      margin:0 auto!important;
      text-align:center!important;
      font-size:28px!important;
    }

    #ov-footer-v5 .ov-footer-v5__copyright {
      width:100%!important;
      max-width:620px!important;
      margin:0 auto!important;
      padding:16px 8px 18px!important;
      text-align:center!important;
      font-size:11px!important;
      line-height:1.45!important;
      box-sizing:border-box!important;
    }

    /* Faixa de vantagens mantém 2 x 2 e ocupa a largura correta */
    .ov-home-benefits,
    .ov-home-benefits-grid {
      width:100%!important;
      max-width:100%!important;
      margin-left:auto!important;
      margin-right:auto!important;
      box-sizing:border-box!important;
    }
  }

  @media (max-width: 390px) {
    .woocommerce ul.products,
    .woocommerce-page ul.products,
    .produtos-wrapper ul.products,
    .related.products ul.products,
    .upsells.products ul.products,
    .cross-sells ul.products,
    .ov-home-destaques ul.products,
    .loja-destaques-boxes ul.products {
      gap:8px!important;
    }
    .woocommerce ul.products li.product,
    .woocommerce-page ul.products li.product,
    .ov-home-destaques ul.products li.product {
      height:260px!important;
      min-height:260px!important;
      padding:7px 6px 8px!important;
    }
    .woocommerce ul.products li.product a img,
    .woocommerce-page ul.products li.product a img,
    .woocommerce ul.products li.product img,
    .woocommerce-page ul.products li.product img,
    .ov-home-destaques ul.products li.product img {
      height:100px!important;
      min-height:100px!important;
      max-height:100px!important;
    }
    .woocommerce ul.products li.product .woocommerce-loop-product__title,
    .woocommerce-page ul.products li.product .woocommerce-loop-product__title {
      font-size:11.8px!important;
      min-height:32px!important;
      max-height:32px!important;
    }
    #ov-footer-v5 .ov-footer-v5__inner {
      padding-left:15px!important;
      padding-right:15px!important;
    }
  }

/* ===== Migrado do functions.php — bloco 6 ===== */
/* Banner a 100% em desktop, tablet e mobile: sem overlay escuro. */
    .ov-home-hero .ov-home-slide.has-copy::before,
    .ov-home-hero .ov-home-slide::before{
      display:none!important;
      content:none!important;
      background:none!important;
      opacity:0!important;
    }

    /* Mantém o desktop na altura já aprovada. */
    @media (min-width: 1025px){
      .ov-home-hero .ov-home-slide{
        height:590px!important;
        min-height:590px!important;
        max-height:590px!important;
      }
    }

    /* No telemóvel reduz apenas o necessário, sem achatar o banner. */
    @media (max-width: 767px){
      .ov-home-hero .ov-home-slide{
        height:285px!important;
        min-height:285px!important;
        max-height:285px!important;
        background-size:cover!important;
        background-position:center center!important;
      }
      .ov-home-hero .slick-dots{bottom:10px!important;}
    }

    @media (max-width: 390px){
      .ov-home-hero .ov-home-slide{
        height:275px!important;
        min-height:275px!important;
        max-height:275px!important;
      }
    }

/* ===== Migrado do functions.php — bloco 7 ===== */
@media (max-width: 767px){
      .ov-home-benefits{
        width:100%!important;
        padding-left:12px!important;
        padding-right:12px!important;
        box-sizing:border-box!important;
      }

      .ov-home-benefits-grid{
        width:100%!important;
        max-width:100%!important;
        margin:0 auto!important;
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
      }

      .ov-home-benefit,
      .ov-home-benefit:nth-last-child(-n+2){
        display:flex!important;
        flex-direction:row!important;
        justify-content:center!important;
        align-items:center!important;
        text-align:left!important;
        box-sizing:border-box!important;
        padding-left:8px!important;
        padding-right:8px!important;
      }

      .ov-home-benefit > i{
        flex:0 0 auto!important;
        width:auto!important;
        min-width:24px!important;
        margin:0!important;
        text-align:center!important;
      }

      .ov-home-benefit > div{
        flex:0 1 auto!important;
        width:auto!important;
        max-width:calc(100% - 38px)!important;
        margin:0!important;
        text-align:left!important;
      }

      .ov-home-benefit strong,
      .ov-home-benefit span{
        display:block!important;
        width:auto!important;
        margin-left:0!important;
        margin-right:0!important;
        text-align:left!important;
      }
    }

/* ===== Migrado do functions.php — bloco 10 ===== */
@media (max-width: 767px) {

    /* -------------------------------------------------------
       1) MENU CATEGORIAS MOBILE
       Anula o deslocamento antigo que cortava o texto à esquerda.
       ------------------------------------------------------- */
    .header.mob .header-nav {
      max-width: 100vw !important;
      overflow-x: hidden !important;
    }

    .header.mob .menu-categorias-wrap,
    .header.mob .menu-categorias-dropdown,
    .header.mob .menu-categorias,
    .header.mob .menu-categorias .submenu {
      box-sizing: border-box !important;
      max-width: 100% !important;
    }

    .header.mob .menu-categorias-dropdown {
      transform: none !important;
      left: auto !important;
      right: auto !important;
      width: 100% !important;
      min-width: 0 !important;
      max-height: calc(100dvh - 230px) !important;
      overflow-x: hidden !important;
      overflow-y: auto !important;
      -webkit-overflow-scrolling: touch !important;
      padding: 6px !important;
    }

    .header.mob .menu-categorias > .menu-item,
    .header.mob .menu-categorias .submenu > .menu-item {
      position: relative !important;
      width: 100% !important;
      max-width: 100% !important;
      margin: 0 !important;
      box-sizing: border-box !important;
    }

    .header.mob .menu-categorias a {
      width: 100% !important;
      max-width: 100% !important;
      min-width: 0 !important;
      padding: 11px 48px 11px 10px !important;
      overflow: visible !important;
      white-space: normal !important;
      overflow-wrap: anywhere !important;
      word-break: normal !important;
      line-height: 1.28 !important;
      text-align: left !important;
      box-sizing: border-box !important;
    }

    .header.mob .menu-categorias .submenu {
      position: static !important;
      transform: none !important;
      width: calc(100% - 8px) !important;
      margin: 4px 0 6px 8px !important;
      padding: 2px 0 2px 8px !important;
      border-left: 1px solid #eee !important;
      overflow: visible !important;
    }

    .header.mob .menu-categorias .submenu-toggle {
      right: 6px !important;
      top: 7px !important;
      transform: none !important;
      width: 36px !important;
      height: 36px !important;
      z-index: 2 !important;
    }

    /* -------------------------------------------------------
       2) PÁGINA DE PRODUTO — impedir largura maior que o ecrã
       ------------------------------------------------------- */
    body.single-product,
    body.single-product #page,
    body.single-product .site,
    body.single-product main,
    body.single-product .woocommerce,
    body.single-product div.product,
    body.single-product .product,
    body.single-product .summary,
    body.single-product .woocommerce-product-gallery,
    body.single-product .woocommerce-tabs {
      max-width: 100% !important;
      box-sizing: border-box !important;
    }

    body.single-product {
      overflow-x: hidden !important;
    }

    body.single-product > .container,
    body.single-product .site-main > .container,
    body.single-product .woocommerce > .container {
      width: 100% !important;
      max-width: 100% !important;
      padding-left: 14px !important;
      padding-right: 14px !important;
      box-sizing: border-box !important;
    }

    /* -------------------------------------------------------
       3) IMAGEM PRINCIPAL — só limita imagens excessivamente altas
       Produtos que já têm imagem pequena não são aumentados.
       ------------------------------------------------------- */
    body.single-product .woocommerce-product-gallery,
    body.single-product .images,
    body.single-product .iconic-woothumbs-all-images-wrap {
      width: 100% !important;
      max-width: 100% !important;
      margin-left: auto !important;
      margin-right: auto !important;
      box-sizing: border-box !important;
    }

    body.single-product .woocommerce-product-gallery__wrapper,
    body.single-product .woocommerce-product-gallery__image,
    body.single-product .woocommerce-product-gallery__image > a,
    body.single-product .iconic-woothumbs-images__slide,
    body.single-product .iconic-woothumbs-images__slide > a {
      max-width: 100% !important;
      box-sizing: border-box !important;
    }

    body.single-product .woocommerce-product-gallery__image > a,
    body.single-product .iconic-woothumbs-images__slide > a {
      display: flex !important;
      align-items: center !important;
      justify-content: center !important;
      width: 100% !important;
      min-height: 0 !important;
    }

    body.single-product .woocommerce-product-gallery img,
    body.single-product .images img,
    body.single-product .iconic-woothumbs-all-images-wrap img,
    body.single-product .iconic-woothumbs-images__slide img {
      display: block !important;
      width: auto !important;
      max-width: 100% !important;
      height: auto !important;
      max-height: 58vh !important;
      min-height: 0 !important;
      object-fit: contain !important;
      object-position: center !important;
      margin-left: auto !important;
      margin-right: auto !important;
    }

    /* -------------------------------------------------------
       4) RESUMO DO PRODUTO — adapta sem forçar produtos já bons
       ------------------------------------------------------- */
    body.single-product .summary.entry-summary {
      width: 100% !important;
      max-width: 100% !important;
      margin: 18px 0 0 !important;
      padding: 0 !important;
      box-sizing: border-box !important;
    }

    body.single-product .summary.entry-summary .product_title {
      max-width: 100% !important;
      margin: 0 0 12px !important;
      font-size: clamp(25px, 8vw, 36px) !important;
      line-height: 1.12 !important;
      overflow-wrap: anywhere !important;
    }

    body.single-product .summary.entry-summary p.price,
    body.single-product .summary.entry-summary .price {
      display: flex !important;
      flex-wrap: wrap !important;
      align-items: baseline !important;
      gap: 5px !important;
      max-width: 100% !important;
      margin: 0 0 14px !important;
      line-height: 1.15 !important;
    }

    body.single-product .summary.entry-summary .price .amount {
      font-size: clamp(28px, 8vw, 38px) !important;
      line-height: 1.1 !important;
    }

    body.single-product .summary.entry-summary .ov-iva-incluido {
      font-size: 14px !important;
      line-height: 1.2 !important;
      white-space: nowrap !important;
    }

    body.single-product form.cart {
      display: flex !important;
      flex-wrap: wrap !important;
      align-items: stretch !important;
      gap: 8px !important;
      width: 100% !important;
      max-width: 100% !important;
      margin: 14px 0 20px !important;
    }

    body.single-product form.cart .quantity {
      flex: 0 0 92px !important;
      margin: 0 !important;
    }

    body.single-product form.cart .quantity .qty {
      width: 92px !important;
      max-width: 92px !important;
      height: 48px !important;
      box-sizing: border-box !important;
    }

    body.single-product form.cart .single_add_to_cart_button {
      flex: 1 1 150px !important;
      width: auto !important;
      min-width: 0 !important;
      min-height: 48px !important;
      margin: 0 !important;
      padding: 10px 16px !important;
      box-sizing: border-box !important;
      white-space: normal !important;
    }

    /* -------------------------------------------------------
       5) ABAS — nunca podem aumentar a largura da página
       ------------------------------------------------------- */
    body.single-product .woocommerce-tabs,
    body.single-product .woocommerce-tabs.wc-tabs-wrapper {
      width: 100% !important;
      max-width: 100% !important;
      margin: 24px 0 0 !important;
      overflow: hidden !important;
    }

    body.single-product .woocommerce-tabs ul.tabs,
    body.single-product .woocommerce-tabs ul.wc-tabs {
      display: flex !important;
      flex-wrap: nowrap !important;
      width: 100% !important;
      max-width: 100% !important;
      margin: 0 !important;
      padding: 0 0 4px !important;
      gap: 6px !important;
      overflow-x: auto !important;
      overflow-y: hidden !important;
      -webkit-overflow-scrolling: touch !important;
      scrollbar-width: thin !important;
      box-sizing: border-box !important;
    }

    body.single-product .woocommerce-tabs ul.tabs::before,
    body.single-product .woocommerce-tabs ul.tabs::after {
      display: none !important;
      content: none !important;
    }

    body.single-product .woocommerce-tabs ul.tabs li,
    body.single-product .woocommerce-tabs ul.wc-tabs li {
      float: none !important;
      flex: 0 0 auto !important;
      width: auto !important;
      max-width: 82vw !important;
      margin: 0 !important;
      padding: 0 !important;
      white-space: nowrap !important;
      box-sizing: border-box !important;
    }

    body.single-product .woocommerce-tabs ul.tabs li a,
    body.single-product .woocommerce-tabs ul.wc-tabs li a {
      display: block !important;
      padding: 10px 12px !important;
      font-size: 14px !important;
      line-height: 1.2 !important;
      white-space: nowrap !important;
    }

    body.single-product .woocommerce-Tabs-panel,
    body.single-product .woocommerce-tabs .panel,
    body.single-product .product-full-attributes,
    body.single-product .aplicavel-tabela {
      width: 100% !important;
      max-width: 100% !important;
      box-sizing: border-box !important;
      overflow-wrap: anywhere !important;
    }

    body.single-product .woocommerce-Tabs-panel table,
    body.single-product .woocommerce-tabs .panel table {
      width: 100% !important;
      max-width: 100% !important;
      table-layout: fixed !important;
    }

    body.single-product .woocommerce-Tabs-panel th,
    body.single-product .woocommerce-Tabs-panel td {
      overflow-wrap: anywhere !important;
      word-break: normal !important;
    }

    /* -------------------------------------------------------
       6) RELACIONADOS / UPSELLS — 1 cartão por linha no single
       Evita cartões cortados no lado direito e mantém legibilidade.
       ------------------------------------------------------- */
    body.single-product .related.products,
    body.single-product .upsells.products,
    body.single-product .cross-sells {
      width: 100% !important;
      max-width: 100% !important;
      margin: 28px auto 0 !important;
      padding: 0 !important;
      overflow: hidden !important;
      box-sizing: border-box !important;
    }

    body.single-product .related.products > h2,
    body.single-product .upsells.products > h2,
    body.single-product .cross-sells > h2 {
      width: 100% !important;
      max-width: 100% !important;
      margin: 0 0 16px !important;
      padding: 0 2px !important;
      text-align: center !important;
      font-size: clamp(24px, 7.5vw, 32px) !important;
      line-height: 1.12 !important;
      white-space: normal !important;
      overflow-wrap: anywhere !important;
      box-sizing: border-box !important;
    }

    body.single-product .related.products ul.products,
    body.single-product .upsells.products ul.products,
    body.single-product .cross-sells ul.products {
      display: grid !important;
      grid-template-columns: minmax(0, 1fr) !important;
      gap: 14px !important;
      width: 100% !important;
      max-width: 420px !important;
      margin: 0 auto !important;
      padding: 0 !important;
      overflow: visible !important;
      box-sizing: border-box !important;
    }

    body.single-product .related.products ul.products li.product,
    body.single-product .upsells.products ul.products li.product,
    body.single-product .cross-sells ul.products li.product {
      float: none !important;
      width: 100% !important;
      max-width: 100% !important;
      min-width: 0 !important;
      height: auto !important;
      min-height: 330px !important;
      margin: 0 !important;
      padding: 14px 12px 14px !important;
      display: flex !important;
      flex-direction: column !important;
      align-items: stretch !important;
      justify-content: flex-start !important;
      box-sizing: border-box !important;
      overflow: hidden !important;
    }

    body.single-product .related.products ul.products li.product img,
    body.single-product .upsells.products ul.products li.product img,
    body.single-product .cross-sells ul.products li.product img {
      width: 100% !important;
      height: 175px !important;
      min-height: 0 !important;
      max-height: 175px !important;
      object-fit: contain !important;
      margin: 0 auto 10px !important;
    }

    body.single-product .related.products ul.products li.product .woocommerce-loop-product__title,
    body.single-product .upsells.products ul.products li.product .woocommerce-loop-product__title,
    body.single-product .cross-sells ul.products li.product .woocommerce-loop-product__title {
      display: -webkit-box !important;
      -webkit-box-orient: vertical !important;
      -webkit-line-clamp: 2 !important;
      width: 100% !important;
      min-height: 46px !important;
      max-height: 46px !important;
      margin: 2px 0 8px !important;
      padding: 0 !important;
      overflow: hidden !important;
      text-align: center !important;
      font-size: 18px !important;
      line-height: 1.28 !important;
    }

    body.single-product .related.products ul.products li.product .price,
    body.single-product .upsells.products ul.products li.product .price,
    body.single-product .cross-sells ul.products li.product .price {
      min-height: 28px !important;
      margin: 0 0 10px !important;
      font-size: 18px !important;
      justify-content: center !important;
    }

    body.single-product .related.products ul.products li.product .price .amount,
    body.single-product .upsells.products ul.products li.product .price .amount,
    body.single-product .cross-sells ul.products li.product .price .amount {
      font-size: 18px !important;
    }

    body.single-product .related.products ul.products li.product .price .ov-iva-incluido,
    body.single-product .upsells.products ul.products li.product .price .ov-iva-incluido,
    body.single-product .cross-sells ul.products li.product .price .ov-iva-incluido {
      font-size: 12px !important;
    }

    body.single-product .related.products ul.products li.product .button,
    body.single-product .upsells.products ul.products li.product .button,
    body.single-product .cross-sells ul.products li.product .button {
      width: 100% !important;
      min-height: 46px !important;
      height: 46px !important;
      margin: auto 0 0 !important;
      font-size: 13px !important;
    }

    /* Qualquer elemento de produto que tente criar scroll lateral fica contido. */
    body.single-product img,
    body.single-product iframe,
    body.single-product video,
    body.single-product table {
      max-width: 100% !important;
    }
  }

  @media (max-width: 390px) {
    body.single-product .woocommerce-product-gallery img,
    body.single-product .images img,
    body.single-product .iconic-woothumbs-all-images-wrap img,
    body.single-product .iconic-woothumbs-images__slide img {
      max-height: 54vh !important;
    }

    body.single-product .related.products ul.products,
    body.single-product .upsells.products ul.products,
    body.single-product .cross-sells ul.products {
      max-width: 100% !important;
    }
  }
