/* ============================================================
   V14 MOBILE UX — MOBILE/TABLET ONLY
   Desktop >= 1024px is intentionally untouched.
   ============================================================ */

@media (max-width:1023px){
  :root{
    --m-bg:#f5f9fd;
    --m-card:#ffffff;
    --m-navy:#06366d;
    --m-navy2:#032957;
    --m-blue:#0875d8;
    --m-blue2:#0b83d9;
    --m-cyan:#1da8ec;
    --m-green:#16b847;
    --m-line:#d9e7f1;
    --m-muted:#607286;
    --m-shadow:0 12px 28px rgba(4,42,87,.07);
    --m-shadow-strong:0 20px 46px rgba(4,42,87,.13);
    --m-r:18px;
    --m-r-lg:26px;
  }

  html{scroll-padding-top:82px;-webkit-text-size-adjust:100%}
  body{background:linear-gradient(180deg,#f7fbff 0%,#fff 22%,#f4f9fd 100%);color:var(--text)}
  body.mobile-menu-open{overflow:hidden;touch-action:none}
  .container{width:calc(100% - 24px);max-width:none}
  .section{padding:42px 0}
  .section.bg-soft{background:linear-gradient(180deg,#f9fcfe 0%,#f0f7fc 100%)}
  .section-head{margin-bottom:18px}
  .section-head h2,h2{font-size:1.78rem;line-height:1.06;letter-spacing:-.035em}
  .section-head p{font-size:.92rem;line-height:1.55;margin-top:8px}
  h3{font-size:1.07rem;line-height:1.18}
  p{line-height:1.58}
  .eyebrow{font-size:.68rem;letter-spacing:.15em;margin-bottom:7px}

  /* ---------- Header & menu ---------- */
  .site-header{
    height:72px;position:sticky;top:0;z-index:120;
    background:rgba(255,255,255,.96);border-bottom:1px solid rgba(217,231,241,.92);
    backdrop-filter:blur(18px) saturate(145%);box-shadow:0 7px 22px rgba(4,42,87,.045)
  }
  .header-inner{height:72px;gap:10px}
  .brand{width:174px;height:56px;overflow:visible}
  .brand img{width:100%;height:100%;object-fit:contain;object-position:left center}
  .desktop-nav,.desktop-wa{display:none!important}
  .menu-trigger{
    width:46px;height:46px;margin-left:auto;border-radius:15px;border:1px solid #dce8f1;
    background:#f4f8fb;color:var(--m-navy);box-shadow:0 7px 18px rgba(4,42,87,.05)
  }
  .menu-trigger:active{transform:scale(.97)}
  .menu-trigger .icon{width:25px;height:25px}
  .mobile-menu{
    position:fixed!important;top:72px!important;left:0!important;right:0!important;bottom:0!important;
    z-index:115!important;padding:12px 12px calc(22px + env(safe-area-inset-bottom))!important;
    background:rgba(247,251,255,.995)!important;border:0!important;border-radius:0!important;
    box-shadow:none!important;overflow-y:auto!important;overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important
  }
  .mobile-menu.open{display:block!important;animation:m14Menu .2s ease both}
  @keyframes m14Menu{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
  .mobile-menu nav{display:grid;gap:7px;min-height:100%;align-content:start}
  .mobile-menu a{
    min-height:52px;padding:0 15px;display:flex;align-items:center;border-radius:15px;
    background:#fff;border:1px solid #e2ecf4;color:var(--m-navy);font-size:.92rem;font-weight:800
  }
  .mobile-menu a:active{background:#edf6fd}
  .mobile-menu .menu-cta,.mobile-menu .m14-menu-call{justify-content:center;border-color:transparent;margin-top:4px}
  .mobile-menu .menu-cta{background:linear-gradient(90deg,#20c44b,#10a43a);color:#fff}
  .mobile-menu .m14-menu-call{background:linear-gradient(90deg,#0756ab,#0b83d9);color:#fff}

  /* ---------- Shared button language ---------- */
  .btn{
    min-height:48px!important;height:48px;border-radius:14px!important;padding:0 15px!important;
    display:inline-flex;align-items:center;justify-content:center;gap:8px;
    font-size:.88rem!important;font-weight:820!important;line-height:1!important;letter-spacing:-.01em
  }
  .btn:active{transform:scale(.98)}
  .btn-row{gap:9px}
  .btn-row .btn{flex:1 1 100%}
  .btn-wa{background:linear-gradient(90deg,#20c44b,#10a43a)!important;color:#fff!important;border:0!important;box-shadow:0 9px 20px rgba(18,174,62,.16)!important}
  .btn-primary,
  a[href^="tel"].btn-glass,
  .m14-call-blue{
    background:linear-gradient(90deg,#0756ab,#0b83d9)!important;color:#fff!important;border:0!important;
    box-shadow:0 9px 20px rgba(8,117,216,.16)!important
  }
  .btn-soft{background:#fff!important;color:var(--m-navy)!important;border:1px solid var(--m-line)!important}
  .btn-more-light{background:#fff!important;color:#075ca8!important;border:1px solid rgba(255,255,255,.78)!important}
  .btn-google-clean,.google-review-button-v9{
    background:#fff!important;color:var(--m-navy)!important;border:1px solid #d5e4ef!important;
    box-shadow:0 7px 18px rgba(4,42,87,.06)!important
  }

  /* ---------- Home hero ---------- */
  .home-page .hero{padding:10px 0 0;background:transparent}
  .home-page .hero-shell{width:calc(100% - 24px);margin-inline:auto;position:relative}
  .home-page .hero-media{
    position:relative;margin:0;border-radius:26px;min-height:500px;overflow:hidden;
    box-shadow:var(--m-shadow-strong);background:#eaf3f8;isolation:isolate
  }
  .home-page .hero-slide{position:absolute!important;inset:0!important;display:block!important;opacity:0;visibility:hidden;transition:opacity .72s ease,visibility .72s ease}
  .home-page .hero-slide.active{opacity:1;visibility:visible}
  .home-page .hero-slide picture,.home-page .hero-slide img{width:100%;height:100%}
  .home-page .hero-slide img{height:500px!important;object-fit:cover!important;object-position:center 47%!important}
  .home-page .hero-media::after{
    content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
    background:linear-gradient(180deg,rgba(2,34,69,.90) 0%,rgba(2,34,69,.74) 31%,rgba(2,34,69,.16) 58%,rgba(2,34,69,0) 76%)
  }
  .home-page .hero-panel{
    position:absolute!important;left:17px!important;right:17px!important;top:22px!important;bottom:auto!important;z-index:5!important;
    margin:0!important;padding:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;overflow:visible!important
  }
  .home-page .hero-panel::before{display:none!important}
  .home-page .hero-panel .eyebrow{color:#9ce4ff!important;margin-bottom:7px}
  .home-page .hero-panel h1{font-size:2.02rem!important;line-height:.99!important;color:#fff!important;text-shadow:0 2px 13px rgba(0,0,0,.18)}
  .home-page .hero-panel h1 span{color:#59ccff!important}
  .home-page .hero-panel p{max-width:96%;font-size:.88rem!important;line-height:1.46!important;color:rgba(255,255,255,.9)!important;margin-top:9px!important}
  .home-page .hero-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:9px!important;margin-top:14px!important}
  .home-page .hero-actions .btn{width:100%!important;padding-inline:8px!important;font-size:.82rem!important}
  .home-page .hero-pills{display:none!important}
  .home-page .hero-dots,.home-page .hero-nav{display:none!important}
  .m14-segment-links{
    width:calc(100% - 24px);margin:12px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:8px
  }
  .m14-segment-link{
    min-height:48px;border-radius:15px;background:#fff;border:1px solid #dce9f3;box-shadow:0 8px 20px rgba(4,42,87,.045);
    display:flex;align-items:center;justify-content:center;text-align:center;color:var(--m-navy);font-size:.72rem;font-weight:800;padding:8px
  }
  .m14-segment-link:active{background:#edf6fd;transform:scale(.98)}

  /* Home trust cards */
  .home-page .trust-strip{padding:12px 0 0;background:transparent;border:0}
  .home-page .trust-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
  .home-page .trust-item{
    min-height:78px;padding:12px 10px;border:1px solid #e0ebf4!important;border-radius:18px;background:#fff;
    box-shadow:0 9px 20px rgba(4,42,87,.045)
  }
  .home-page .trust-item .icon{width:22px;height:22px;flex-basis:22px}
  .home-page .trust-item strong{font-size:.78rem}.home-page .trust-item small{font-size:.66rem}

  /* Home services: no peeking carousel; full cards, vertically readable */
  .home-page .services-grid{display:grid!important;grid-template-columns:1fr!important;gap:13px!important;overflow:visible!important;margin:0!important;padding:0!important}
  .home-page .service-card{
    width:100%!important;display:grid!important;grid-template-columns:132px minmax(0,1fr)!important;min-height:168px!important;
    border-radius:21px!important;overflow:hidden!important;box-shadow:var(--m-shadow)!important
  }
  .home-page .service-image{height:100%!important;min-height:168px!important;background:#e9f2f8!important}
  .home-page .service-image picture,.home-page .service-image img{width:100%!important;height:100%!important}
  .home-page .service-image img{object-fit:cover!important;object-position:center!important}
  .home-page .service-body{padding:14px 13px!important;display:flex!important;flex-direction:column!important}
  .home-page .service-body h3{font-size:1rem!important}.home-page .service-body p{font-size:.79rem!important;line-height:1.42!important;margin-top:5px!important}
  .home-page .service-tags{display:none!important}
  .home-page .service-actions{margin-top:auto!important;padding-top:10px!important}
  .home-page .service-actions .btn-wa{display:none!important}
  .home-page .service-actions .btn-soft{height:44px!important;min-height:44px!important;background:#eef6fd!important;color:#075ca8!important;border:0!important;font-size:.75rem!important}

  /* Home institutional */
  .home-page .about-panel{border-radius:26px!important;overflow:hidden!important;box-shadow:var(--m-shadow-strong)!important}
  .home-page .about-photo{min-height:235px!important;background:#e8f2f8!important}
  .home-page .about-photo .home-fleet-mobile{display:block!important;width:100%!important;height:235px!important}
  .home-page .about-photo .home-fleet-mobile img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important}
  .home-page .home-fleet-carousel{display:none!important}
  .home-page .about-copy{padding:22px 18px 20px!important}
  .home-page .about-copy h2{font-size:1.68rem!important}.home-page .about-copy p{font-size:.88rem!important;line-height:1.52!important}
  .home-page .about-mini-grid{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:7px!important;margin-top:16px!important}
  .home-page .about-mini{display:block!important;padding:11px 7px!important;text-align:center!important;border-radius:14px!important;min-height:84px!important}
  .home-page .about-mini .icon{margin:0 auto 6px!important;width:21px!important;height:21px!important}
  .home-page .about-mini strong{display:block!important;font-size:.7rem!important}.home-page .about-mini small{font-size:.6rem!important;line-height:1.18!important}

  /* ---------- Reviews: one centered card, no partial next card ---------- */
  .google-summary{display:flex;flex-direction:row;align-items:flex-end;justify-content:space-between;gap:10px;margin-bottom:16px}
  .google-summary h2{font-size:1.62rem!important}
  .google-score-card{padding:10px 12px!important;border-radius:17px!important;box-shadow:0 8px 18px rgba(4,42,87,.055)!important}
  .score{font-size:1.75rem!important}.stars{font-size:.88rem!important}.google-logo{width:24px!important;height:24px!important;flex-basis:24px!important}
  .review-carousel{overflow:hidden!important}
  .review-track{
    display:flex!important;gap:14px!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;scroll-padding:0!important;
    overscroll-behavior-x:contain!important;-webkit-overflow-scrolling:touch!important;scrollbar-width:none!important;padding:2px 0 8px!important
  }
  .review-track::-webkit-scrollbar{display:none!important}
  .review-card{
    flex:0 0 100%!important;width:100%!important;min-width:100%!important;min-height:215px!important;padding:17px!important;
    border-radius:21px!important;scroll-snap-align:center!important;scroll-snap-stop:always!important;box-shadow:0 11px 24px rgba(4,42,87,.06)!important
  }
  .review-card blockquote{font-size:.87rem!important;line-height:1.5!important}.review-controls{margin-top:11px!important}.review-btn{width:40px!important;height:40px!important}
  .avaliacoes-page .review-track{display:flex!important;grid-template-columns:none!important;overflow-x:auto!important;gap:14px!important}
  .avaliacoes-page .review-card{flex:0 0 100%!important;width:100%!important;min-width:100%!important;min-height:215px!important}
  .avaliacoes-page .review-controls{display:flex!important}
  .btn-google-clean{min-height:48px!important;height:48px!important;border-radius:15px!important;padding-inline:16px!important}

  /* ---------- Area ---------- */
  .area-grid{display:grid!important;grid-template-columns:1fr!important;gap:14px!important}
  .area-copy{padding:18px!important;border:1px solid #dce9f3!important;border-radius:22px!important;background:#fff!important;box-shadow:var(--m-shadow)!important}
  .area-copy p{font-size:.88rem!important;line-height:1.52!important}.area-copy .btn-row{margin-top:15px!important}
  .home-page .mobile-area-copy .chips{display:none!important}
  .map-shell{height:265px!important;border-radius:22px!important;box-shadow:var(--m-shadow)!important}
  .map-label{top:auto!important;bottom:12px!important;left:12px!important;transform:none!important;font-size:.72rem!important}
  .desktop-area-copy{display:none!important}
  .m14-city-chips{display:none!important}

  /* ---------- FAQ ---------- */
  .faq-list{gap:8px!important}.faq-list details{padding:0 14px!important;border-radius:16px!important;box-shadow:0 7px 18px rgba(4,42,87,.035)!important}
  .faq-list summary{padding:16px 0!important;font-size:.89rem!important;line-height:1.35!important}.faq-list details p{font-size:.84rem!important;line-height:1.48!important}

  /* ---------- Internal hero: image clearly visible + content separated ---------- */
  .page-hero{
    position:relative!important;margin:10px 12px 0!important;padding:210px 0 0!important;min-height:0!important;border-radius:26px!important;
    overflow:hidden!important;box-shadow:var(--m-shadow-strong)!important;isolation:isolate!important;
    background:linear-gradient(135deg,#042b59 0%,#074a8f 58%,#0b78d0 100%)!important
  }
  .page-hero.surface-blue::before{display:none!important}
  .page-hero.with-image::after{display:none!important}
  .page-hero .page-hero-bg{
    display:block!important;position:absolute!important;top:0!important;left:0!important;right:0!important;bottom:auto!important;height:210px!important;z-index:0!important;background:#eaf3f8!important
  }
  .page-hero .page-hero-bg picture,.page-hero .page-hero-bg img{width:100%!important;height:100%!important;display:block!important}
  .page-hero .page-hero-bg img{object-fit:cover!important;object-position:center center!important;filter:none!important}
  .page-hero .container{position:relative!important;z-index:2!important;width:100%!important;padding:20px 18px 20px!important}
  .page-hero .breadcrumb{display:none!important}
  .page-hero .eyebrow{color:#96e1ff!important;margin-bottom:7px!important}
  .page-hero h1{font-size:1.9rem!important;line-height:1.02!important;color:#fff!important;max-width:none!important}
  .page-hero p{font-size:.88rem!important;line-height:1.5!important;color:rgba(255,255,255,.88)!important;max-width:none!important;margin-top:9px!important}
  .page-wave{display:none!important}
  .page-hero + main > .section:first-child{margin-top:0!important;border-radius:0!important;padding-top:34px!important}
  .m14-hero-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:9px!important;margin-top:16px!important}
  .m14-hero-actions .btn{width:100%!important;padding-inline:8px!important;font-size:.8rem!important}
  .service-detail-page .page-hero .page-hero-bg img{object-position:center 48%!important}
  .servicos-page .page-hero .page-hero-bg img{object-position:center 56%!important}
  .empresas-page .page-hero .page-hero-bg img{object-position:center 55%!important}
  .area-page .page-hero .page-hero-bg img{object-position:center 54%!important}
  .avaliacoes-page .page-hero .page-hero-bg img{object-position:center 52%!important}
  .sobre-page .page-hero .page-hero-bg img{object-position:center 54%!important}
  .contato-page .page-hero .page-hero-bg img{object-position:center 52%!important}
  .internal-page .page-hero .page-hero-bg img{object-position:center 52%!important}

  /* no ugly shortcut strip under internal heroes */
  .m13-quick-nav,.m14-quick-nav{display:none!important}

  /* ---------- Services index ---------- */
  .servicos-page .v10-services-desktop{display:none!important}
  .servicos-page .v10-services-mobile-only{display:block!important}
  .servicos-page .service-hub-grid{display:grid!important;grid-template-columns:1fr!important;gap:13px!important}
  .servicos-page .service-hub-card{
    display:grid!important;grid-template-columns:1fr!important;min-height:0!important;border-radius:22px!important;overflow:hidden!important;
    box-shadow:var(--m-shadow)!important;background:#fff!important
  }
  .servicos-page .service-hub-card .service-image{height:auto!important;min-height:0!important;aspect-ratio:4/3!important;background:#eaf3f8!important}
  .servicos-page .service-hub-card .service-image picture,.servicos-page .service-hub-card .service-image img{width:100%!important;height:100%!important;display:block!important}
  .servicos-page .service-hub-card .service-image img{object-fit:cover!important;object-position:center!important}
  .servicos-page .service-hub-card .service-body{padding:16px 15px 15px!important}
  .servicos-page .service-hub-card h3{font-size:1.08rem!important}.servicos-page .service-hub-card p{font-size:.84rem!important;line-height:1.48!important;margin-top:6px!important}
  .servicos-page .service-hub-card .service-tags{display:none!important}
  .servicos-page .service-hub-card .service-actions{padding-top:13px!important;margin-top:0!important}
  .servicos-page .service-hub-card .service-actions .btn-wa{display:none!important}
  .servicos-page .service-hub-card .service-actions .btn-primary{width:100%!important;background:linear-gradient(90deg,#0756ab,#0b83d9)!important;color:#fff!important;border:0!important;box-shadow:0 9px 20px rgba(8,117,216,.14)!important}

  .servicos-page .segment-panel{border-radius:24px!important;overflow:hidden!important;box-shadow:var(--m-shadow-strong)!important;background:linear-gradient(135deg,#042b59,#0b78d0)!important}
  .servicos-page .segment-carousel{height:245px!important;min-height:245px!important;background:#eaf3f8!important}
  .servicos-page .segment-track{height:245px!important}
  .servicos-page .segment-slide,.servicos-page .segment-slide img{height:245px!important;min-height:245px!important;width:100%!important}
  .servicos-page .segment-slide img{object-fit:cover!important;object-position:center!important}
  .servicos-page .segment-copy{padding:22px 17px 20px!important;min-height:0!important}
  .servicos-page .segment-copy h2{font-size:1.62rem!important}.servicos-page .segment-copy>p{font-size:.86rem!important;line-height:1.5!important}
  .servicos-page .segment-cards{display:none!important}
  .servicos-page .segment-desktop-detail{display:block!important;margin-top:17px!important;padding-top:15px!important;border-top:1px solid rgba(255,255,255,.16)!important}
  .servicos-page .segment-detail-copy strong{font-size:.94rem!important;color:#fff!important}.servicos-page .segment-detail-copy p{font-size:.82rem!important;line-height:1.46!important;color:rgba(255,255,255,.82)!important;margin-top:5px!important}
  .servicos-page .segment-detail-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:9px!important;margin-top:14px!important;height:auto!important}
  .servicos-page .segment-detail-actions .btn{width:100%!important;min-width:0!important}
  .m14-segment-descriptors{
    margin-top:10px;display:flex;gap:8px;justify-content:center;flex-wrap:wrap;padding:13px;border-radius:18px;background:#fff;
    border:1px solid #dce9f3;box-shadow:0 9px 22px rgba(4,42,87,.045)
  }
  .m14-segment-descriptors span{padding:8px 11px;border-radius:999px;background:#edf6fd;color:#075ca8;font-size:.72rem;font-weight:800}
  .servicos-page .steps-grid{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}.servicos-page .step{padding:17px 15px!important;border-radius:18px!important}

  /* ---------- Service detail pages ---------- */
  .service-detail-page .split{display:grid!important;grid-template-columns:1fr!important;gap:16px!important}
  .service-detail-page .content-photo{order:-1!important;border-radius:22px!important;overflow:hidden!important;box-shadow:var(--m-shadow)!important;background:#eaf3f8!important}
  .service-detail-page .content-photo picture,.service-detail-page .content-photo img{width:100%!important;height:100%!important;display:block!important}
  .service-detail-page .content-photo img{aspect-ratio:4/3!important;object-fit:cover!important;object-position:center!important}
  .service-detail-page .split>.reveal:not(.content-photo){padding:0 2px!important}
  .service-detail-page .split>.reveal:not(.content-photo) p{font-size:.88rem!important;line-height:1.52!important}
  .service-detail-page .split .btn-row{margin-top:16px!important}
  .service-detail-page .prose h2{font-size:1.38rem!important;line-height:1.1!important;margin:20px 0 7px!important}.service-detail-page .prose p{font-size:.87rem!important;line-height:1.52!important}

  /* ---------- Empresas ---------- */
  .empresas-page .desktop-legacy-company{display:none!important}
  .empresas-page .company-seo-desktop{display:block!important}
  .empresas-page .company-lead-grid{display:grid!important;grid-template-columns:1fr!important;gap:14px!important}
  .empresas-page .company-lead-photo{order:-1!important;border-radius:22px!important;overflow:hidden!important;box-shadow:var(--m-shadow)!important;background:#eaf3f8!important}
  .empresas-page .company-lead-photo img{width:100%!important;aspect-ratio:16/9!important;object-fit:cover!important;object-position:center!important}
  .empresas-page .company-lead-copy p{font-size:.88rem!important;line-height:1.52!important;margin-top:9px!important}
  .empresas-page .company-sector-grid{
    display:flex!important;gap:10px!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none!important;padding:2px 0 10px!important;
    touch-action:pan-y!important;position:relative!important
  }
  .empresas-page .company-sector-card{
    flex:0 0 90%!important;min-width:90%!important;padding:17px!important;border-radius:20px!important;box-shadow:0 10px 22px rgba(4,42,87,.05)!important
  }
  .empresas-page .company-sector-card h3{font-size:1rem!important}.empresas-page .company-sector-card p{font-size:.82rem!important;line-height:1.45!important;margin-top:7px!important}
  .empresas-page .company-service-grid{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .empresas-page .company-service-item{padding:15px!important;border-radius:18px!important;min-height:0!important}
  .empresas-page .company-service-item h3{font-size:.94rem!important}.empresas-page .company-service-item span{font-size:.78rem!important;line-height:1.42!important}
  .empresas-page .company-needs-grid{display:grid!important;grid-template-columns:1fr!important;gap:9px!important}
  .empresas-page .company-need-card{padding:15px!important;border-radius:18px!important}
  .empresas-page .company-needs-block{margin-top:18px!important;padding:18px!important;border-radius:22px!important;background:linear-gradient(135deg,#f7fbfe,#edf7fd)!important;border:1px solid #dce9f3!important}

  /* ---------- About ---------- */
  .sobre-page .desktop-about-legacy{display:none!important}.sobre-page .about-authority-desktop{display:block!important}
  .sobre-page .about-authority-intro{margin:0 0 18px!important;text-align:left!important}.sobre-page .about-authority-intro h2{font-size:1.7rem!important;line-height:1.05!important;margin-top:5px!important}.sobre-page .about-authority-intro p{font-size:.88rem!important;line-height:1.52!important;margin-top:9px!important}
  .sobre-page .about-authority-photo{margin:0 0 14px!important;border-radius:22px!important;overflow:hidden!important;box-shadow:var(--m-shadow)!important;aspect-ratio:16/9!important}.sobre-page .about-authority-photo img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important}
  .sobre-page .about-authority-facts,.sobre-page .about-authority-grid,.sobre-page .about-needs-grid{display:grid!important;grid-template-columns:1fr!important;gap:9px!important}
  .sobre-page .about-authority-facts article,.sobre-page .about-authority-card,.sobre-page .about-needs-grid article{padding:15px!important;border-radius:18px!important}
  .sobre-page .about-authority-card{border:1px solid var(--m-line)!important;background:#fff!important;box-shadow:0 9px 22px rgba(4,42,87,.04)!important}
  .sobre-page .about-authority-card h2{font-size:1.25rem!important}.sobre-page .about-authority-card p{font-size:.83rem!important;line-height:1.48!important;margin-top:7px!important}
  .sobre-page .about-process-block{margin-top:18px!important;padding:18px!important;border-radius:22px!important;background:linear-gradient(135deg,#f6fbfe,#edf7fd)!important;border:1px solid #dce9f3!important}
  .sobre-page .about-process-grid{display:grid!important;grid-template-columns:1fr!important;gap:11px!important;margin-top:15px!important}
  .sobre-page .about-process-grid>div{position:relative!important;padding-left:40px!important;min-height:45px!important}.sobre-page .about-process-grid b{position:absolute!important;left:0;top:0;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--m-blue);color:#fff;font-size:.68rem}

  /* ---------- Contact ---------- */
  .contato-page .contact-main-section{padding-top:28px!important}.contato-page .contact-grid{display:grid!important;grid-template-columns:1fr!important;gap:11px!important}
  .contato-page .contact-card{padding:18px!important;border-radius:20px!important;box-shadow:0 11px 24px rgba(4,42,87,.055)!important}.contato-page .contact-card .icon{width:31px!important;height:31px!important;margin-bottom:9px!important}.contato-page .contact-card p{font-size:.86rem!important;line-height:1.48!important}.contato-page .contact-card .btn{width:100%!important;margin-top:12px!important}

  /* ---------- Neighborhoods / guide ---------- */
  .internal-page .search-wrap{margin:14px 0!important}.internal-page .search-input{height:52px!important;border-radius:16px!important;background:#fff!important;font-size:.9rem!important}
  .internal-page .alpha-nav{display:flex!important;gap:6px!important;overflow-x:auto!important;flex-wrap:nowrap!important;scrollbar-width:none!important;padding-bottom:4px!important}.internal-page .alpha-nav::-webkit-scrollbar{display:none!important}.internal-page .alpha-nav a{flex:0 0 36px!important;width:36px!important;height:36px!important;border-radius:12px!important}
  .internal-page .neighborhood-groups{gap:18px!important}.internal-page .neighborhood-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}.internal-page .neighborhood-item{padding:11px 10px!important;border-radius:14px!important;font-size:.78rem!important;background:#fff!important}
  .split{display:grid!important;grid-template-columns:1fr!important;gap:17px!important}.content-photo{order:-1!important;border-radius:22px!important;overflow:hidden!important;box-shadow:var(--m-shadow)!important}.content-photo img{aspect-ratio:4/3!important;object-fit:cover!important}.feature-grid,.contact-grid,.hub-grid,.steps-grid{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}.feature,.contact-card,.hub-card{padding:17px!important;border-radius:19px!important;box-shadow:0 9px 22px rgba(4,42,87,.045)!important}.prose{font-size:.89rem!important}.prose h2{font-size:1.42rem!important;line-height:1.1!important;margin:21px 0 8px!important}

  /* ---------- CTA ---------- */
  .cta-panel{padding:22px 17px!important;border-radius:24px!important;box-shadow:var(--m-shadow-strong)!important}.cta-panel h2{font-size:1.58rem!important}.cta-panel p{font-size:.86rem!important;line-height:1.5!important}.cta-panel .btn-row{margin-top:15px!important}

  /* ---------- Footer ---------- */
  .site-footer{padding:34px 0 24px!important;background:linear-gradient(145deg,#032956,#06427f)!important}
  .footer-grid{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}.footer-grid>div:first-child{padding-bottom:8px!important}
  .footer-logo{width:205px!important;height:72px!important;background:transparent!important}.footer-logo img{content:url('../img/logo-footer-branca.png')!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:left center!important;background:transparent!important}
  .site-footer h4{min-height:48px!important;margin:0!important;padding:0 2px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;border-top:1px solid rgba(255,255,255,.13)!important;font-size:.95rem!important;cursor:pointer!important}.site-footer h4::after{content:"+";font-size:1.2rem;color:#8edfff;font-weight:500}.site-footer h4.m14-open::after{content:"−"}.site-footer .footer-links{display:none!important;padding:2px 0 12px!important;gap:8px!important}.site-footer .footer-links.m14-open{display:grid!important}.site-footer a,.site-footer p{font-size:.8rem!important;line-height:1.55!important}.footer-bottom{margin-top:18px!important;padding-top:14px!important;gap:6px!important;font-size:.7rem!important}.float-wa{display:none!important}

  .reveal{transform:translateY(8px);transition:.35s ease}.reveal.visible{transform:none}
}

@media (max-width:389px){
  .container{width:calc(100% - 20px)}
  .brand{width:156px}
  .home-page .hero-shell{width:calc(100% - 20px)}
  .home-page .hero-media{min-height:520px}.home-page .hero-slide img{height:520px!important}.home-page .hero-panel{left:14px!important;right:14px!important;top:18px!important}.home-page .hero-panel h1{font-size:1.88rem!important}.home-page .hero-actions{grid-template-columns:1fr!important}
  .m14-segment-links{width:calc(100% - 20px);grid-template-columns:1fr!important}.m14-segment-link{justify-content:flex-start;padding-inline:14px}
  .home-page .trust-grid{grid-template-columns:1fr!important}.home-page .service-card{grid-template-columns:112px minmax(0,1fr)!important}.home-page .about-mini-grid{grid-template-columns:1fr!important}.home-page .about-mini{display:flex!important;text-align:left!important;min-height:0!important}.home-page .about-mini .icon{margin:0 8px 0 0!important}
  .m14-hero-actions,.servicos-page .segment-detail-actions{grid-template-columns:1fr!important}
  .internal-page .neighborhood-grid{grid-template-columns:1fr!important}
}

@media (min-width:720px) and (max-width:1023px){
  .container{width:calc(100% - 40px)}
  .page-hero{margin-inline:20px!important;padding-top:260px!important}.page-hero .page-hero-bg{height:260px!important}.page-hero .container{padding:24px 24px 24px!important}.page-hero h1{font-size:2.35rem!important}
  .home-page .hero-shell{width:calc(100% - 40px)}.home-page .hero-media{min-height:540px}.home-page .hero-slide img{height:540px!important}.home-page .hero-panel{right:44%!important;top:26px!important}.home-page .hero-actions{grid-template-columns:1fr!important}
  .m14-segment-links{width:calc(100% - 40px)}
  .home-page .services-grid{grid-template-columns:1fr 1fr!important}.home-page .service-card{grid-template-columns:1fr!important}.home-page .service-image{height:210px!important;min-height:210px!important}
  .review-card{flex-basis:100%!important}
  .servicos-page .service-hub-grid{grid-template-columns:1fr 1fr!important}.servicos-page .service-hub-card .service-image{aspect-ratio:16/10!important}
  .empresas-page .company-service-grid{grid-template-columns:repeat(2,1fr)!important}.contato-page .contact-grid{grid-template-columns:1fr 1fr!important}.internal-page .neighborhood-grid{grid-template-columns:repeat(3,1fr)!important}
}

@media (prefers-reduced-motion:reduce) and (max-width:1023px){
  *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}

/* ============================================================
   V15 — APPROVED APP-LIKE MOBILE VISUAL
   Exact scope: mobile/tablet only. Desktop >=1024px is untouched.
   ============================================================ */
@media (max-width:1023px){
  :root{
    --m15-navy:#06366d;
    --m15-blue:#0875d8;
    --m15-green:#12b83f;
    --m15-sky:#eef7fd;
    --m15-line:#d7e7f2;
    --m15-text:#17324f;
    --m15-muted:#687c91;
    --m15-shadow:0 12px 34px rgba(5,54,109,.10);
  }

  html{background:#f3f7fa}
  body{
    background:#f3f7fa!important;
    color:var(--m15-text);
  }
  .container{width:calc(100% - 22px)!important}
  .section{padding:30px 0!important}
  .section.bg-soft{background:#eef5f9!important}
  .section-head{margin-bottom:14px!important}
  .section-head h2,h2{font-size:1.54rem!important;line-height:1.03!important;letter-spacing:-.035em!important}
  .section-head p{font-size:.82rem!important;line-height:1.48!important;color:var(--m15-muted)!important}
  .eyebrow{font-size:.62rem!important;letter-spacing:.115em!important;font-weight:850!important;color:var(--m15-blue)!important}

  /* Header — compact app bar, no desktop rules touched. */
  .site-header{
    height:64px!important;
    background:rgba(255,255,255,.975)!important;
    border-bottom:1px solid #e1ebf2!important;
    box-shadow:0 5px 20px rgba(5,54,109,.055)!important;
  }
  .header-inner{height:64px!important}
  .brand{width:166px!important;height:50px!important}
  .menu-trigger{
    width:42px!important;height:42px!important;border-radius:12px!important;
    background:#f4f8fb!important;border:1px solid #dce8f1!important;
    box-shadow:none!important;
  }
  .mobile-menu{top:64px!important;background:#f5f8fb!important;padding:10px 11px calc(18px + env(safe-area-inset-bottom))!important}
  .mobile-menu a{min-height:50px!important;border-radius:13px!important;box-shadow:0 4px 14px rgba(5,54,109,.035)!important}

  /* Buttons follow the approved mockup: green primary, blue outlined call. */
  .btn{height:44px!important;min-height:44px!important;border-radius:10px!important;font-size:.81rem!important;font-weight:800!important}
  .btn-wa,.mobile-menu .menu-cta{
    background:var(--m15-green)!important;color:#fff!important;border:1px solid var(--m15-green)!important;
    box-shadow:0 7px 16px rgba(18,184,63,.16)!important;
  }
  .btn-primary,a[href^="tel"].btn-glass,.m14-call-blue,.mobile-menu .m14-menu-call{
    background:#fff!important;color:var(--m15-blue)!important;border:1.5px solid #5aa7e8!important;
    box-shadow:none!important;
  }
  .btn-soft,.btn-google-clean,.google-review-button-v9{
    background:#fff!important;color:var(--m15-blue)!important;border:1px solid var(--m15-line)!important;box-shadow:none!important;
  }

  /* HOME HERO — photo first, white copy block below, like the approved reference. */
  .home-page .hero{padding:10px 0 0!important;background:transparent!important}
  .home-page .hero-shell{
    width:calc(100% - 22px)!important;margin:0 auto!important;background:#fff!important;
    border:1px solid #dce8f0!important;border-radius:24px!important;overflow:hidden!important;
    box-shadow:var(--m15-shadow)!important;
  }
  .home-page .hero-media{
    min-height:0!important;height:194px!important;margin:0!important;border-radius:0!important;
    box-shadow:none!important;background:#dceaf3!important;
  }
  .home-page .hero-slide img{
    height:194px!important;object-fit:cover!important;object-position:center 55%!important;
  }
  .home-page .hero-media::after{
    background:linear-gradient(180deg,rgba(3,47,91,.13),rgba(3,47,91,0) 55%,rgba(3,47,91,.06))!important;
  }
  .home-page .hero-panel{
    position:relative!important;inset:auto!important;margin:0!important;padding:15px 15px 12px!important;
    background:#fff!important;color:var(--m15-text)!important;box-shadow:none!important;
  }
  .home-page .hero-panel .eyebrow{
    position:absolute!important;left:10px!important;top:-184px!important;z-index:8!important;
    display:inline-flex!important;align-items:center!important;min-height:24px!important;padding:0 9px!important;
    border-radius:8px!important;background:rgba(4,56,107,.84)!important;color:#eaf9ff!important;
    font-size:.54rem!important;letter-spacing:.07em!important;backdrop-filter:blur(7px)!important;
  }
  .home-page .hero-panel h1{
    font-size:1.48rem!important;line-height:1.01!important;letter-spacing:-.045em!important;
    color:var(--m15-navy)!important;text-shadow:none!important;margin:0!important;
  }
  .home-page .hero-panel h1 span{color:var(--m15-navy)!important}
  .home-page .hero-panel p{
    max-width:none!important;font-size:.77rem!important;line-height:1.43!important;color:#65798d!important;margin:7px 0 0!important;
  }
  .home-page .hero-actions{
    display:grid!important;grid-template-columns:1fr!important;gap:7px!important;margin-top:11px!important;
  }
  .home-page .hero-actions .btn{width:100%!important;height:42px!important;min-height:42px!important;border-radius:9px!important;font-size:.76rem!important}
  .home-page .hero-pills,.home-page .hero-dots,.home-page .hero-nav{display:none!important}

  /* Category shortcuts are part of the hero card now. */
  .home-page .m14-segment-links{
    width:auto!important;margin:0 12px 13px!important;padding:10px 0 0!important;
    display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:5px!important;
    border-top:1px solid #e5edf3!important;
  }
  .home-page .m14-segment-link{
    min-height:58px!important;padding:6px 3px!important;border:0!important;border-radius:11px!important;
    background:#f7fafc!important;box-shadow:none!important;color:var(--m15-navy)!important;
    display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;
    gap:4px!important;font-size:.62rem!important;font-weight:800!important;
  }
  .m15-shortcut-icon{display:grid!important;place-items:center!important;width:21px!important;height:21px!important;color:var(--m15-blue)!important}
  .m15-shortcut-icon svg{width:21px!important;height:21px!important;display:block!important}
  .home-page .trust-strip{display:none!important}

  /* First supporting card immediately under the hero — same visual language as reference. */
  .m15-fleet-promo{
    width:calc(100% - 22px);min-height:116px;margin:10px auto 0;padding:0 0 0 15px;
    display:grid;grid-template-columns:minmax(0,1.05fr) minmax(124px,.95fr);align-items:stretch;
    border-radius:20px;overflow:hidden;background:#fff;border:1px solid #dce8f0;
    box-shadow:0 9px 24px rgba(5,54,109,.075);color:var(--m15-navy);text-decoration:none;
  }
  .m15-fleet-copy{display:flex;flex-direction:column;justify-content:center;padding:13px 8px 13px 0;min-width:0}
  .m15-fleet-copy small{text-transform:uppercase;letter-spacing:.11em;color:var(--m15-blue);font-size:.52rem;font-weight:850;margin-bottom:4px}
  .m15-fleet-copy strong{font-size:.98rem;line-height:1.02;letter-spacing:-.035em}
  .m15-fleet-copy em{font-style:normal;font-size:.62rem;color:#6d8194;margin-top:7px;font-weight:700}
  .m15-fleet-photo{display:block;min-height:116px;background:#dce9f1}
  .m15-fleet-photo img{width:100%;height:100%;min-height:116px;object-fit:cover;object-position:center;display:block}

  /* Services — compact premium list, stronger resemblance to an app catalogue. */
  .home-page main>.section:first-of-type{padding-top:25px!important}
  .home-page .services-grid{gap:9px!important}
  .home-page .service-card{
    grid-template-columns:112px minmax(0,1fr)!important;min-height:138px!important;
    border:1px solid #e0e9ef!important;border-radius:17px!important;box-shadow:0 7px 20px rgba(5,54,109,.055)!important;
  }
  .home-page .service-image{min-height:138px!important;height:138px!important}
  .home-page .service-body{padding:12px 11px!important}
  .home-page .service-body h3{font-size:.94rem!important;color:var(--m15-navy)!important}
  .home-page .service-body p{font-size:.72rem!important;line-height:1.38!important;color:#6c7d8e!important}
  .home-page .service-actions{padding-top:7px!important}
  .home-page .service-actions .btn-soft{height:36px!important;min-height:36px!important;border-radius:9px!important;background:#f2f8fc!important;font-size:.68rem!important}

  /* Institutional block — calmer, cleaner and visually compatible with the reference. */
  .home-page .about-panel{
    display:grid!important;grid-template-columns:1fr!important;background:#fff!important;color:var(--m15-text)!important;
    border:1px solid #dce8f0!important;border-radius:20px!important;box-shadow:0 9px 24px rgba(5,54,109,.065)!important;
  }
  .home-page .about-photo{min-height:180px!important;height:180px!important;order:2!important}
  .home-page .about-photo .home-fleet-mobile{height:180px!important}
  .home-page .about-copy{padding:17px 15px 13px!important;order:1!important}
  .home-page .about-copy .eyebrow{color:var(--m15-blue)!important}
  .home-page .about-copy h2{font-size:1.34rem!important;color:var(--m15-navy)!important}
  .home-page .about-copy p{font-size:.77rem!important;line-height:1.45!important;color:#6a7d90!important}
  .home-page .about-mini-grid{margin-top:11px!important;gap:5px!important}
  .home-page .about-mini{min-height:63px!important;padding:8px 4px!important;background:#f5f9fc!important;border:1px solid #e1ebf2!important;color:var(--m15-navy)!important}
  .home-page .about-mini .icon{width:18px!important;height:18px!important;color:var(--m15-blue)!important}
  .home-page .about-mini strong{font-size:.62rem!important}.home-page .about-mini small{font-size:.53rem!important;color:#718397!important}

  /* Reviews, area, FAQ and CTA: consistent card system. */
  .google-summary{align-items:center!important;margin-bottom:12px!important}
  .google-summary h2{font-size:1.38rem!important}
  .google-score-card{border:1px solid #e1eaf0!important;border-radius:14px!important;box-shadow:none!important}
  .score{font-size:1.48rem!important}.stars{font-size:.72rem!important}
  .review-card,.area-copy,.faq-list details,.contact-card,.feature,.hub-card{
    border:1px solid #e0e9ef!important;box-shadow:0 7px 19px rgba(5,54,109,.045)!important;
  }
  .review-card{border-radius:17px!important;min-height:190px!important;padding:15px!important}
  .map-shell{height:235px!important;border-radius:18px!important;box-shadow:0 8px 22px rgba(5,54,109,.065)!important}
  .faq-list{gap:7px!important}
  .faq-list details{border-radius:14px!important;background:#fff!important}
  .faq-list summary{font-size:.82rem!important;padding:14px!important;color:var(--m15-navy)!important}
  .faq-list details p{font-size:.76rem!important;line-height:1.45!important;padding:0 14px 14px!important;color:#6a7d90!important}
  .cta-panel{
    background:linear-gradient(145deg,#073d77,#075ca7)!important;border-radius:20px!important;padding:20px 15px!important;
  }
  .cta-panel .eyebrow{color:#aee6ff!important}.cta-panel h2{font-size:1.38rem!important}

  /* Internal pages get the same photo-card + content-card language. */
  .page-hero{
    width:calc(100% - 22px)!important;margin:10px auto 0!important;padding:178px 0 0!important;
    border-radius:22px!important;overflow:hidden!important;background:#fff!important;border:1px solid #dce8f0!important;
    box-shadow:var(--m15-shadow)!important;
  }
  .page-hero .page-hero-bg{height:178px!important;border-radius:0!important}
  .page-hero::after{display:none!important}
  .page-hero .container{
    width:100%!important;margin:0!important;padding:15px 15px 14px!important;background:#fff!important;color:var(--m15-text)!important;
  }
  .page-hero .eyebrow{color:var(--m15-blue)!important}
  .page-hero h1{font-size:1.48rem!important;line-height:1.02!important;color:var(--m15-navy)!important;text-shadow:none!important}
  .page-hero p{font-size:.77rem!important;line-height:1.45!important;color:#687c90!important;max-width:none!important}
  .m14-hero-actions{display:grid!important;grid-template-columns:1fr!important;gap:7px!important;margin-top:12px!important}
  .m14-hero-actions .btn{width:100%!important}
  .breadcrumb{display:none!important}

  .servicos-page .service-hub-card,.empresas-page .company-sector-card,.empresas-page .company-service-item,
  .sobre-page .about-authority-card,.sobre-page .about-authority-facts article,.sobre-page .about-needs-grid article,
  .internal-page .neighborhood-item{
    border-color:#e0e9ef!important;border-radius:17px!important;box-shadow:0 7px 18px rgba(5,54,109,.045)!important;
  }

  /* Footer remains blue but lighter/cleaner, like an app ending sheet. */
  .site-footer{padding:28px 0 22px!important;background:linear-gradient(150deg,#053366,#064783)!important}
  .footer-logo{width:180px!important;height:62px!important}
  .site-footer h4{min-height:45px!important;font-size:.86rem!important}
  .site-footer a,.site-footer p{font-size:.74rem!important}

  .reveal{transform:translateY(6px)!important;transition:.28s ease!important}
}

@media (max-width:389px){
  .home-page .hero-shell,.m15-fleet-promo,.page-hero{width:calc(100% - 18px)!important}
  .home-page .hero-media,.home-page .hero-slide img{height:178px!important}
  .home-page .hero-panel .eyebrow{top:-168px!important}
  .home-page .hero-panel h1{font-size:1.36rem!important}
  .home-page .service-card{grid-template-columns:100px minmax(0,1fr)!important}
  .m15-fleet-promo{grid-template-columns:minmax(0,1.05fr) minmax(112px,.95fr)}
  .page-hero{padding-top:162px!important}.page-hero .page-hero-bg{height:162px!important}
}

@media (min-width:720px) and (max-width:1023px){
  .home-page .hero-shell,.m15-fleet-promo,.page-hero{width:calc(100% - 40px)!important}
  .home-page .hero-media,.home-page .hero-slide img{height:270px!important}
  .home-page .hero-panel .eyebrow{top:-258px!important}
  .home-page .hero-panel h1{font-size:2rem!important}
  .home-page .hero-panel p{font-size:.9rem!important}
  .home-page .hero-actions{grid-template-columns:1fr 1fr!important}
  .m15-fleet-promo{min-height:150px;grid-template-columns:1.35fr 1fr}.m15-fleet-photo img{min-height:150px}.m15-fleet-copy strong{font-size:1.3rem}
  .home-page .services-grid{grid-template-columns:1fr 1fr!important}.home-page .service-card{grid-template-columns:1fr!important}.home-page .service-image{height:190px!important}
  .page-hero{padding-top:240px!important}.page-hero .page-hero-bg{height:240px!important}.page-hero h1{font-size:2rem!important}.m14-hero-actions{grid-template-columns:1fr 1fr!important}
}

/* ============================================================
   V16 — MOBILE POLISH / CONSISTENCY PASS
   Hard scope: <=1023px. Desktop stays visually unchanged.
   ============================================================ */
@media (max-width:1023px){
  :root{
    --m16-navy:#06366d;
    --m16-blue:#0878d6;
    --m16-blue-2:#1b9ae4;
    --m16-sky-0:#f8fcff;
    --m16-sky-1:#edf7fd;
    --m16-sky-2:#e3f1fb;
    --m16-line:#d6e6f1;
    --m16-green:#13b844;
    --m16-text:#173451;
    --m16-muted:#667b90;
    --m16-shadow:0 12px 32px rgba(4,53,105,.085);
  }

  /* New vector identity on mobile only. Desktop keeps the approved legacy logo. */
  .brand img{content:url('../img/logo-limpa-fossa-anapolis-mobile-v16.svg')!important;object-fit:contain!important;object-position:left center!important}
  .footer-logo img{content:url('../img/logo-limpa-fossa-anapolis-footer-mobile-v16.svg')!important;object-fit:contain!important;object-position:left center!important}
  .brand{width:188px!important;height:52px!important}
  .footer-logo{width:208px!important;height:66px!important}

  /* Global rhythm: V15 was intentionally compact; V16 restores premium breathing room. */
  body{background:linear-gradient(180deg,#f4f9fd 0%,#fff 30%,#f2f7fb 100%)!important}
  .section{padding:39px 0!important}
  .section.bg-soft{background:linear-gradient(180deg,#f1f8fc 0%,#eaf4fa 100%)!important}
  .section-head{margin-bottom:21px!important}
  .section-head h2,h2{font-size:1.62rem!important;line-height:1.08!important;letter-spacing:-.032em!important}
  .section-head p{margin-top:10px!important;font-size:.86rem!important;line-height:1.6!important}
  h3{font-size:1.04rem!important;line-height:1.25!important}
  p{line-height:1.62!important}
  .eyebrow{margin-bottom:9px!important}
  .card,.feature,.contact-card,.hub-card,.service-card,.service-hub-card{border-color:#dce8f1!important}

  /* The approved hero remains app-like, but no longer reads as white-on-white. */
  .home-page .hero-shell,.page-hero{border-color:#d0e1ed!important;box-shadow:0 14px 36px rgba(4,53,105,.105)!important}
  .home-page .hero-panel,
  .page-hero .container{
    background:linear-gradient(145deg,var(--m16-sky-0) 0%,var(--m16-sky-1) 60%,#e8f4fc 100%)!important;
  }
  .home-page .hero-panel{padding:18px 16px 15px!important}
  .home-page .hero-panel h1,.page-hero h1{color:var(--m16-navy)!important}
  .home-page .hero-panel p,.page-hero p{color:#5f758a!important}
  .home-page .hero-actions,.m14-hero-actions{margin-top:14px!important;gap:8px!important}

  /* Soft-blue controls: clear contrast without making the interface heavy. */
  .btn-soft,.btn-google-clean,.google-review-button-v9{
    background:linear-gradient(135deg,#f1f9ff 0%,#e2f1fb 100%)!important;
    color:#075fae!important;border:1px solid #bddcf1!important;
    box-shadow:0 5px 13px rgba(7,117,216,.055)!important;
  }
  .btn-primary:not([href^="tel"]){
    background:linear-gradient(135deg,#0875d8 0%,#1599e4 100%)!important;
    color:#fff!important;border:0!important;box-shadow:0 8px 17px rgba(8,117,216,.16)!important;
  }
  .service-actions .btn-soft,.service-actions .btn-primary,
  .home-page .service-actions .btn-soft{
    background:linear-gradient(135deg,#eaf6fe 0%,#d7ebf9 100%)!important;
    color:#075fae!important;border:1px solid #c6dfef!important;box-shadow:none!important;
  }
  .home-page .m14-segment-link{
    background:linear-gradient(145deg,#f1f9ff 0%,#e4f2fb 100%)!important;
    border:1px solid #d2e6f3!important;
    min-height:64px!important;
  }
  .home-page .m14-segment-links{gap:7px!important;padding-top:12px!important;margin-bottom:15px!important}
  .m15-shortcut-icon{width:23px!important;height:23px!important}
  .m15-shortcut-icon svg{width:23px!important;height:23px!important}

  /* Give sections/cards more vertical separation across every mobile page. */
  main>.section:first-child{padding-top:42px!important}
  .page-hero + main > .section:first-child{padding-top:44px!important}
  .section + .section{border-top:0!important}
  .feature-grid,.contact-grid,.hub-grid,.steps-grid,.area-grid{gap:14px!important}
  .feature,.contact-card,.hub-card{padding:20px!important}
  .service-detail-page .split{gap:22px!important}
  .service-detail-page .prose p + p,.prose p + p{margin-top:12px!important}
  .prose h2{margin:26px 0 11px!important;line-height:1.12!important}
  .faq-list{gap:10px!important}
  .faq-list summary{padding:16px!important}
  .faq-list details p{padding:0 16px 16px!important;line-height:1.58!important}

  /* Internal heroes: same design language and spacing as the approved home hero. */
  .page-hero{margin-top:12px!important}
  .page-hero .container{padding:19px 17px 17px!important}
  .page-hero h1{font-size:1.55rem!important;line-height:1.06!important}
  .page-hero p{font-size:.82rem!important;line-height:1.56!important;margin-top:10px!important}
  .m14-hero-actions .btn{min-height:44px!important;height:44px!important}

  /* Area de atendimento: stronger separation + subtle location watermark. */
  .area-page .page-hero + main > .section:first-child{padding-top:50px!important}
  .area-page .page-hero .container{position:relative!important;overflow:hidden!important}
  .area-page .page-hero .container::after{
    content:"";position:absolute;right:-18px;bottom:-22px;width:126px;height:126px;opacity:.055;pointer-events:none;
    background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M21 10c0 7-9 12-9 12S3 17 3 10a9 9 0 1 1 18 0Z' fill='none' stroke='%2306366d' stroke-width='1.45'/%3E%3Ccircle cx='12' cy='10' r='3' fill='none' stroke='%2306366d' stroke-width='1.45'/%3E%3C/svg%3E");
  }
  .area-page .page-hero .container>*{position:relative;z-index:1}
  .area-page .area-grid{gap:18px!important}
  .area-page .area-copy{padding:21px!important}
  .area-page .area-copy h2{margin-bottom:10px!important}
  .area-page .map-shell{margin-top:2px!important}

  /* About page: visual scanability, icon-led cards, larger gaps. */
  .sobre-page .about-authority-intro{margin-bottom:24px!important}
  .sobre-page .about-authority-intro h2{font-size:1.62rem!important;line-height:1.08!important}
  .sobre-page .about-authority-intro p{font-size:.86rem!important;line-height:1.6!important;margin-top:11px!important}
  .sobre-page .about-authority-photo{margin-bottom:20px!important}
  .sobre-page .about-authority-facts,
  .sobre-page .about-authority-grid,
  .sobre-page .about-needs-grid{gap:14px!important}
  .sobre-page .about-authority-facts{margin-bottom:24px!important}
  .sobre-page .about-authority-facts article,
  .sobre-page .about-authority-card,
  .sobre-page .about-needs-grid article{padding:19px!important;border-radius:19px!important}
  .sobre-page .about-authority-card{
    position:relative!important;overflow:hidden!important;
    background:linear-gradient(145deg,#fff 0%,#f5faff 100%)!important;
  }
  .sobre-page .about-authority-card::after{
    content:"";position:absolute;right:-24px;bottom:-28px;width:96px;height:96px;border-radius:50%;
    background:radial-gradient(circle,rgba(19,151,226,.09),rgba(19,151,226,0) 70%);pointer-events:none;
  }
  .sobre-page .about-authority-card h2{font-size:1.28rem!important;line-height:1.15!important;margin:8px 0 0!important;padding-right:4px!important}
  .sobre-page .about-authority-card p{font-size:.84rem!important;line-height:1.6!important;margin-top:10px!important;color:#5e7489!important}
  .sobre-page .about-authority-card p + p{margin-top:12px!important}
  .m16-about-icon{
    width:44px;height:44px;border-radius:14px;display:grid;place-items:center;margin-bottom:13px;
    background:linear-gradient(145deg,#eaf7ff,#dceffc);color:#0875d8;border:1px solid #cfe4f2;
  }
  .m16-about-icon svg{width:23px;height:23px;display:block}
  .sobre-page .about-process-block{
    position:relative!important;overflow:hidden!important;margin-top:25px!important;padding:22px!important;
    background:linear-gradient(135deg,#f3faff,#e7f4fc)!important;
  }
  .sobre-page .about-process-block::after{
    content:"";position:absolute;right:-34px;top:-30px;width:145px;height:145px;opacity:.045;pointer-events:none;
    background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M50 4C35 26 20 43 20 61c0 18 13 31 30 31s30-13 30-31C80 43 65 26 50 4Z' fill='none' stroke='%2306366d' stroke-width='5'/%3E%3C/svg%3E");
  }
  .sobre-page .about-process-block>*{position:relative;z-index:1}
  .sobre-page .about-process-grid{gap:15px!important;margin-top:18px!important}
  .sobre-page .about-process-grid>div{padding-left:45px!important;min-height:54px!important}
  .sobre-page .about-process-grid p{margin-top:6px!important;line-height:1.55!important}
  .sobre-page .about-final-copy{margin-top:30px!important;text-align:left!important}
  .sobre-page .about-final-copy>p{margin:11px 0 19px!important;line-height:1.6!important}
  .sobre-page .about-needs-grid article{
    display:grid!important;grid-template-columns:42px 1fr!important;grid-template-rows:auto auto!important;
    column-gap:13px!important;row-gap:4px!important;align-items:center!important;
    background:linear-gradient(145deg,#fff,#f2f8fc)!important;
  }
  .sobre-page .about-needs-grid .m16-about-icon{grid-row:1/3!important;margin:0!important;width:42px!important;height:42px!important;border-radius:13px!important}
  .sobre-page .about-needs-grid strong{font-size:.98rem!important;line-height:1.22!important}
  .sobre-page .about-needs-grid span{font-size:.8rem!important;line-height:1.5!important;color:#657a8f!important}

  /* WhatsApp icon consistency in cards and CTAs. */
  .btn-wa .wa-icon{fill:#fff!important;color:#fff!important;width:19px!important;height:19px!important;flex:0 0 19px!important}
  .contato-page .contact-card-whatsapp>.wa-icon{
    width:44px!important;height:44px!important;padding:11px!important;margin:0 0 12px!important;border-radius:14px!important;
    background:linear-gradient(145deg,#19c74d,#0fa83b)!important;color:#fff!important;fill:#fff!important;
    box-shadow:0 7px 16px rgba(15,168,59,.16)!important;
  }
  .contato-page .contact-card>.icon{width:44px!important;height:44px!important;padding:10px!important;margin:0 0 12px!important;border-radius:14px!important;background:#eaf6fe!important;color:#0875d8!important}

  /* Mobile address chooser: true centered popup instead of a footer block. */
  .location-modal{
    position:fixed!important;inset:0!important;z-index:1000!important;display:none!important;align-items:center!important;justify-content:center!important;
    padding:20px!important;isolation:isolate!important;
  }
  .location-modal.is-open{display:flex!important}
  .location-modal-backdrop{position:absolute!important;inset:0!important;background:rgba(2,29,60,.62)!important;backdrop-filter:blur(5px)!important}
  .location-modal-dialog{
    position:relative!important;z-index:2!important;width:min(100%,430px)!important;margin:auto!important;padding:24px 19px 19px!important;
    background:linear-gradient(145deg,#fff,#eef7fd)!important;border:1px solid rgba(255,255,255,.85)!important;border-radius:22px!important;
    box-shadow:0 28px 70px rgba(0,0,0,.26)!important;text-align:left!important;
  }
  .location-modal-dialog h2{font-size:1.3rem!important;line-height:1.12!important;margin:5px 34px 0 0!important;color:var(--m16-navy)!important}
  .location-modal-dialog p{font-size:.82rem!important;line-height:1.55!important;margin-top:10px!important;color:#62778a!important}
  .location-modal-actions{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;margin-top:18px!important}
  .location-modal-actions .btn{width:100%!important}
  .location-modal-close{
    position:absolute!important;right:12px!important;top:12px!important;width:36px!important;height:36px!important;border:1px solid #d9e7f0!important;
    border-radius:50%!important;background:#f4f9fc!important;color:var(--m16-navy)!important;font-size:1.25rem!important;line-height:1!important;
  }
  body.m16-modal-open{overflow:hidden!important;touch-action:none!important}

  /* Reviews: one clean card at a time; V16 JS owns the mobile autoplay. */
  .review-carousel{overflow:hidden!important}
  .review-track{scroll-behavior:smooth!important;scroll-snap-type:x mandatory!important}
  .review-card{min-height:205px!important;padding:18px!important}
  .review-controls{margin-top:14px!important}
  .review-btn{background:linear-gradient(145deg,#f0f8fe,#e1f0fa)!important;border:1px solid #cfe2ef!important;color:#075fae!important}

  /* Footer spacing and the new vector mark. */
  .site-footer{padding:34px 0 25px!important}
  .footer-grid{gap:14px!important}
  .site-footer .footer-grid>div:first-child>p{margin-top:8px!important;max-width:310px!important;line-height:1.6!important}
  .site-footer h4{min-height:49px!important}
  .footer-bottom{margin-top:20px!important;padding-top:16px!important;line-height:1.5!important}
}

@media (max-width:389px){
  .section{padding:35px 0!important}
  .brand{width:175px!important}
  .home-page .hero-panel{padding:16px 14px 14px!important}
  .home-page .m14-segment-link{min-height:61px!important}
  .sobre-page .about-authority-facts article,.sobre-page .about-authority-card,.sobre-page .about-needs-grid article{padding:17px!important}
  .location-modal{padding:14px!important}
}

@media (min-width:720px) and (max-width:1023px){
  .section{padding:48px 0!important}
  .page-hero .container{padding:23px 24px 22px!important}
  .page-hero + main > .section:first-child{padding-top:52px!important}
  .sobre-page .about-authority-grid{grid-template-columns:1fr 1fr!important;gap:16px!important}
  .sobre-page .about-needs-grid{grid-template-columns:repeat(3,1fr)!important}
  .sobre-page .about-needs-grid article{grid-template-columns:1fr!important;grid-template-rows:auto auto auto!important;text-align:center!important}
  .sobre-page .about-needs-grid .m16-about-icon{grid-row:auto!important;margin:0 auto 7px!important}
}

/* ============================================================
   V17 — MOBILE CONTRAST / SCANNABILITY / CONSISTENCY PASS
   Scope is intentionally limited to <=1023px.
   ============================================================ */
@media (max-width:1023px){
  :root{
    --m17-blue:#0876d6;
    --m17-blue-2:#1a99e2;
    --m17-blue-deep:#075aaa;
    --m17-sky:#e4f3fd;
    --m17-sky-2:#cfe9fa;
    --m17-line:#bcd9ec;
  }

  /* More visible blue contrast in every hero, without becoming heavy. */
  .home-page .hero-shell,
  .page-hero{
    border-color:#b9d7ea!important;
    background:linear-gradient(145deg,#d8edfb 0%,#edf8ff 52%,#d3eafb 100%)!important;
    box-shadow:0 15px 38px rgba(4,53,105,.13)!important;
  }
  .home-page .hero-panel,
  .page-hero .container{
    background:linear-gradient(135deg,#e1f2fd 0%,#f2faff 48%,#d5ecfb 100%)!important;
  }
  .home-page .hero-panel{border-top:1px solid rgba(119,177,214,.22)!important}
  .home-page .hero-panel p,.page-hero p{color:#526f89!important}

  /* App shortcuts now read as deliberate blue controls, not white cards. */
  .home-page .m14-segment-link{
    background:linear-gradient(145deg,#e0f1fd 0%,#cae6f8 100%)!important;
    border:1px solid #afd2e8!important;
    color:#064c90!important;
    box-shadow:0 5px 12px rgba(7,117,216,.07)!important;
  }
  .home-page .m14-segment-link:active{background:#c8e5f8!important}

  /* One blue CTA language site-wide on mobile. */
  .btn-wa,
  .mobile-menu .menu-cta,
  .contato-page .contact-card-whatsapp{
    background:linear-gradient(135deg,var(--m17-blue-deep) 0%,var(--m17-blue-2) 100%)!important;
    color:#fff!important;border-color:transparent!important;
    box-shadow:0 8px 18px rgba(8,117,216,.17)!important;
  }
  .btn-wa .wa-icon{fill:#fff!important;color:#fff!important}
  .contato-page .contact-card-whatsapp>.wa-icon{
    background:linear-gradient(145deg,#0a72cb,#1698e1)!important;
    box-shadow:0 7px 16px rgba(8,117,216,.14)!important;
  }

  /* Home service CTAs match the stronger service-page buttons. */
  .home-page .service-actions .btn-soft{
    background:linear-gradient(135deg,#0875d8 0%,#1599e4 100%)!important;
    color:#fff!important;border:0!important;
    box-shadow:0 8px 17px rgba(8,117,216,.15)!important;
  }
  .home-page .service-actions .btn-soft:active{background:#086cc3!important}

  /* Google stays intentionally light/outlined. */
  .contato-page .btn-google-clean,
  .contato-page .btn-google-soft,
  .btn-google-clean,
  .google-review-button-v9{
    background:#fff!important;color:#075fae!important;
    border:1px solid #c6ddea!important;
    box-shadow:0 5px 14px rgba(4,53,105,.05)!important;
  }

  /* Stronger overall rhythm. */
  .section{padding-top:42px!important;padding-bottom:42px!important}
  .section-head{margin-bottom:23px!important}
  .section-head p{max-width:96%!important}
  .feature-grid,.contact-grid,.hub-grid,.steps-grid,.area-grid{gap:16px!important}

  /* EMPRESAS — spacing, readable service cards, icon language, working rail. */
  .empresas-page .company-lead-copy p{margin-top:12px!important;line-height:1.65!important}
  .empresas-page .company-lead-actions{
    margin-top:24px!important;padding-top:4px!important;gap:9px!important;
  }
  .empresas-page .company-section-head{margin-bottom:22px!important}
  .empresas-page .company-sector-grid{
    gap:12px!important;padding:4px 4px 13px!important;
    touch-action:auto!important;-webkit-overflow-scrolling:touch!important;
    scroll-snap-type:x proximity!important;overscroll-behavior-x:contain!important;
  }
  .empresas-page .company-sector-grid::-webkit-scrollbar{display:none!important}
  .empresas-page .company-sector-card{
    scroll-snap-align:start!important;position:relative!important;overflow:hidden!important;
    padding:18px 17px 17px!important;background:linear-gradient(145deg,#fff,#eef8fe)!important;
    border:1px solid #cfe3ef!important;
  }
  .empresas-page .company-sector-card h3{margin-top:12px!important;line-height:1.2!important}
  .empresas-page .company-sector-card p{margin-top:9px!important;line-height:1.58!important;color:#60778c!important}

  .empresas-page .company-services-block .section-head{margin-bottom:22px!important}
  .empresas-page .company-service-grid{gap:13px!important}
  .empresas-page .company-service-item{
    position:relative!important;display:grid!important;
    grid-template-columns:46px minmax(0,1fr) 22px!important;
    grid-template-rows:auto auto!important;column-gap:13px!important;row-gap:5px!important;
    align-items:center!important;padding:17px 15px!important;
    background:linear-gradient(145deg,#fff 0%,#eef8fe 100%)!important;
    border:1px solid #cfe3ef!important;overflow:hidden!important;
  }
  .empresas-page .company-service-item>.m17-service-icon{grid-column:1;grid-row:1/3}
  .empresas-page .company-service-item>strong{grid-column:2;grid-row:1;font-size:.98rem!important;line-height:1.23!important}
  .empresas-page .company-service-item>span:not(.m17-service-icon){grid-column:2;grid-row:2;font-size:.8rem!important;line-height:1.55!important;color:#60778c!important}
  .empresas-page .company-service-item>.icon{grid-column:3;grid-row:1/3;width:20px!important;height:20px!important;color:#0875d8!important}
  .m17-service-icon,.m17-sector-icon,.m17-fact-icon{
    display:grid;place-items:center;flex:0 0 auto;
    background:linear-gradient(145deg,#dff2ff,#c7e6f9);color:#0875d8;
    border:1px solid #bcdcec;box-shadow:0 5px 12px rgba(8,117,216,.07);
  }
  .m17-service-icon{width:46px;height:46px;border-radius:14px}
  .m17-sector-icon{width:40px;height:40px;border-radius:13px}
  .m17-service-icon svg,.m17-sector-icon svg{width:23px;height:23px;display:block}
  .empresas-page .company-service-item::after,
  .empresas-page .company-sector-card::after{
    content:"";position:absolute;right:-23px;bottom:-30px;width:92px;height:92px;border-radius:50%;
    background:radial-gradient(circle,rgba(20,151,226,.09),rgba(20,151,226,0) 68%);pointer-events:none;
  }
  .empresas-page .company-needs-block{margin-top:30px!important;padding:21px!important}
  .empresas-page .company-needs-grid{gap:12px!important;margin-top:16px!important}
  .empresas-page .company-need-card{padding:17px!important}
  .empresas-page .company-need-card span{display:block;margin-top:6px;line-height:1.55!important}

  /* ABOUT — compact facts + icon-led service summaries. */
  .sobre-page .about-authority-facts{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;margin-bottom:27px!important;
  }
  .sobre-page .about-authority-facts article{
    min-height:112px!important;padding:13px 8px!important;display:flex!important;flex-direction:column!important;
    align-items:center!important;justify-content:center!important;text-align:center!important;
    background:linear-gradient(145deg,#f7fcff,#e4f3fc)!important;border:1px solid #cfe3ef!important;
  }
  .sobre-page .about-authority-facts article>span:not(.m17-fact-icon){display:none!important}
  .sobre-page .about-authority-facts article strong{font-size:.72rem!important;line-height:1.25!important;margin-top:8px!important;color:#07518f!important}
  .m17-fact-icon{width:36px;height:36px;border-radius:12px}
  .m17-fact-icon svg{width:20px;height:20px;display:block}

  .sobre-page .about-authority-grid{gap:16px!important}
  .sobre-page .about-authority-card{padding:20px!important}
  .sobre-page .about-authority-card>.eyebrow{margin-top:2px!important}
  .sobre-page .about-authority-card h2{margin-top:7px!important}
  .sobre-page .about-authority-card>p:not(.m17-card-summary){display:none!important}
  .sobre-page .about-authority-card .m17-card-summary{
    display:block!important;margin-top:11px!important;font-size:.84rem!important;line-height:1.62!important;color:#5d768c!important;
  }
  .sobre-page .about-authority-card::before{
    content:"";position:absolute;right:-18px;top:-13px;width:84px;height:84px;opacity:.045;pointer-events:none;
    background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M50 5C36 25 21 43 21 60c0 18 12 31 29 31s29-13 29-31C79 43 64 25 50 5Z' fill='none' stroke='%230875d8' stroke-width='6'/%3E%3C/svg%3E");
  }
  .sobre-page .m16-about-icon{background:linear-gradient(145deg,#dff2ff,#c8e7fa)!important;border-color:#bcdcec!important}

  /* Contact: blue WhatsApp, light Google button, more generous cards. */
  .contato-page .contact-grid{gap:13px!important}
  .contato-page .contact-card{padding:20px!important}
  .contato-page .contact-main-section>.container + .container{margin-top:25px!important}
  .contato-page .page-hero .page-hero-bg img{object-position:center 55%!important}

  /* Keep the vector logo clean and truly transparent in the footer. */
  .footer-logo,.footer-logo img{background:transparent!important;border:0!important;box-shadow:none!important}
  .footer-logo img{filter:none!important}
}

@media (max-width:389px){
  .sobre-page .about-authority-facts{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}
  .sobre-page .about-authority-facts article{min-height:104px!important;padding:11px 5px!important}
  .sobre-page .about-authority-facts article strong{font-size:.66rem!important}
  .empresas-page .company-service-item{grid-template-columns:43px minmax(0,1fr) 20px!important;column-gap:10px!important;padding:15px 13px!important}
  .m17-service-icon{width:43px;height:43px}
}
