/* Home scrollport: mobile CLIP (100vw quebrava fixed nav); desktop ainda usa breakout */
    html:has(body.kingdom-is-home),
    html {
      overflow-x: hidden !important;
      overflow-x: clip !important;
      overflow-y: auto !important;
      height: auto !important;
      max-height: none !important;
      width: 100% !important;
      max-width: 100% !important;
      overscroll-behavior-x: none;
      overscroll-behavior-y: auto !important;
      touch-action: manipulation;
      scrollbar-gutter: auto !important;
    }
    body.kingdom-is-home,
    body {
      overflow-x: hidden !important;
      overflow-x: clip !important;
      overflow-y: visible !important;
      height: auto !important;
      max-height: none !important;
      min-height: 100%;
      width: 100% !important;
      max-width: 100% !important;
      position: relative;
      overscroll-behavior-x: none;
      --kb-page-zoom: 1;
    }
    @media (min-width: 1280px) and (hover: hover) and (pointer: fine) {
      body.kingdom-is-home,
      body {
        --kb-page-zoom: 0.9;
        overflow-x: visible !important;
      }
      html:has(body.kingdom-is-home),
      html {
        overflow-x: hidden !important;
        scrollbar-gutter: auto !important;
      }
      body.kingdom-is-home main.flex-1,
      main.flex-1 {
        overflow-x: visible !important;
      }
    }
    html.kb-iab body,
    html.kb-coarse body {
      zoom: 1 !important;
      --kb-page-zoom: 1 !important;
    }
    body.kingdom-is-home main.flex-1,
    main.flex-1 {
      overflow-x: clip !important;
      overflow-y: visible !important;
      height: auto !important;
      max-height: none !important;
      min-height: 0;
      flex: 1 0 auto;
      padding-inline: 0 !important;
      margin-inline: 0 !important;
      width: 100% !important;
      max-width: 100% !important;
      position: relative;
    }
    /* Home sticky search: do not clip main (traps sticky); html still clips X */
    body.kingdom-is-home main.flex-1 {
      overflow: visible !important;
      overflow-x: visible !important;
      overflow-y: visible !important;
    }
    body.kingdom-is-home {
      overflow-x: visible !important;
    }
    html:has(body.kingdom-is-home) {
      overflow-x: hidden !important;
      overflow-x: clip !important;
    }
    /* Fixed header: estÃ¡vel com overflow clip / flex body â€” topo + safe-area */
    header.kb-site-header {
      position: fixed !important;
      top: 0 !important;
      left: 0 !important;
      right: 0 !important;
      z-index: 80;
      overflow: visible;
      padding: calc(0.95rem + env(safe-area-inset-top, 0px)) 1.25rem 0.95rem;
      width: 100%;
      max-width: 100%;
      box-sizing: border-box;
      transform: translateZ(0);
      -webkit-transform: translateZ(0);
    }
    @media (min-width: 640px) {
      header.kb-site-header {
        padding: calc(1.05rem + env(safe-area-inset-top, 0px)) 2rem 1.05rem;
      }
    }
    @media (min-width: 768px) {
      header.kb-site-header {
        padding: calc(1.25rem + env(safe-area-inset-top, 0px)) 1.25rem 1.25rem;
      }
    }
    @media (min-width: 1024px) {
      header.kb-site-header {
        padding: calc(1.4rem + env(safe-area-inset-top, 0px)) 1.25rem 1.4rem;
      }
    }
    .kb-site-header__wrap {
      max-width: min(100%, 80rem) !important;
      width: 100%;
      margin-inline: auto;
    }
    @media (max-width: 767px) {
      header.kb-site-header {
        padding: calc(1.05rem + env(safe-area-inset-top, 0px)) 0.4rem 0.95rem;
      }
    }
    body:has(header.kb-site-header) {
      --kb-header-offset: calc(5.9rem + env(safe-area-inset-top, 0px));
      --site-header-sticky-below: var(--kb-header-offset);
      padding-top: var(--kb-header-offset);
    }
    @media (min-width: 640px) {
      body:has(header.kb-site-header) {
        --kb-header-offset: calc(5.9rem + env(safe-area-inset-top, 0px));
      }
    }
    @media (min-width: 768px) {
      body:has(header.kb-site-header) {
        --kb-header-offset: calc(7.2rem + env(safe-area-inset-top, 0px));
      }
    }
    @media (min-width: 1024px) {
      body:has(header.kb-site-header) {
        --kb-header-offset: calc(7.5rem + env(safe-area-inset-top, 0px));
      }
    }
    body:has(header.kb-site-header--with-search) {
      --kb-header-offset: calc(9.1rem + env(safe-area-inset-top, 0px));
      --site-header-sticky-below: var(--kb-header-offset);
    }
    @media (min-width: 640px) {
      body:has(header.kb-site-header--with-search) {
        --kb-header-offset: calc(9.2rem + env(safe-area-inset-top, 0px));
      }
    }
    @media (min-width: 768px) {
      body:has(header.kb-site-header--with-search) {
        --kb-header-offset: calc(9.85rem + env(safe-area-inset-top, 0px));
      }
    }
    @media (min-width: 1024px) {
      body:has(header.kb-site-header--with-search) {
        --kb-header-offset: calc(10.1rem + env(safe-area-inset-top, 0px));
      }
    }
    /* Reviews: mesma largura do banner (hero-wrap) */
    .kb-reviews {
      position: relative !important;
      display: block !important;
      box-sizing: border-box !important;
      width: 100% !important;
      max-width: min(100%, 98rem) !important;
      margin-left: auto !important;
      margin-right: auto !important;
      padding-inline: clamp(0.4rem, 1vw, 0.75rem) !important;
      transform: none !important;
      overflow: hidden !important;
    }
    .kb-reviews__inner {
      max-width: 100% !important;
      width: 100% !important;
      padding-inline: 0 !important;
      margin-inline: 0 !important;
    }
    .kb-reviews__track {
      width: 100% !important;
      max-width: 100% !important;
      box-sizing: border-box !important;
    }