  *{ box-sizing:border-box; }
  body{ margin:0; } html{ scroll-behavior:smooth; } #planos{ scroll-margin-top:88px; }
  ::selection{ background:#FFE0A3; }
  input::placeholder{ color:#A99B78; }
  @keyframes bhMarquee{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }
  @keyframes beePulse{ 0%,100%{ transform:scale(1); } 50%{ transform:scale(1.06); } }
  /* ===== COSMOS / roda orbital ===== */
  @keyframes bhSpin{ to{ transform:rotate(360deg); } }
  @keyframes bhSpinRev{ to{ transform:rotate(-360deg); } }
  @keyframes bhHalo{ 0%,100%{ transform:scale(1); opacity:.5; } 50%{ transform:scale(1.12); opacity:.8; } }
  .bh-cosmos-stage{ position:relative; width:560px; height:560px; margin:0 auto; }
  .bh-orbit{ position:absolute; inset:0; }
  .bh-orbit-ring-line{ position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); border-radius:50%; border:1px dashed #E7DcC2; pointer-events:none; }
  .bh-orbit.spin{ animation:bhSpin 46s linear infinite; }
  .bh-orbit.spinrev{ animation:bhSpinRev 64s linear infinite; }
  .bh-orbit-item{ position:absolute; top:50%; left:50%; }
  .bh-orbit-cell{ display:flex; flex-direction:column; align-items:center; gap:7px; transform-origin:center; transition:filter .2s; }
  .bh-orbit.spin .bh-orbit-cell{ animation:bhSpinRev 46s linear infinite; }
  .bh-orbit.spinrev .bh-orbit-cell{ animation:bhSpin 64s linear infinite; }
  .bh-orbit-bubble{ width:60px; height:60px; border-radius:18px; display:flex; align-items:center; justify-content:center; box-shadow:0 8px 18px -10px rgba(60,40,0,.5); border:1px solid rgba(0,0,0,.05); transition:transform .22s cubic-bezier(.2,.8,.2,1); }
  .bh-orbit-bubble img{ width:34px; height:34px; display:block; }
  .bh-orbit-pill{ font-family:'Plus Jakarta Sans',sans-serif; font-weight:700; font-size:11.5px; color:#4A4233; background:#fff; border:1px solid #EFE6D2; padding:3px 9px; border-radius:999px; white-space:nowrap; box-shadow:0 3px 8px -5px rgba(60,40,0,.4); opacity:.78; transition:opacity .2s, transform .2s; }
  .bh-orbit-item:hover{ z-index:20; }
  .bh-orbit-item:hover .bh-orbit-bubble{ transform:scale(1.28); }
  .bh-orbit-item:hover .bh-orbit-pill{ opacity:1; transform:scale(1.06); }
  .bh-cosmos:hover .bh-orbit, .bh-cosmos:hover .bh-orbit .bh-orbit-cell{ animation-play-state:paused; }
  [data-motion="calm"] .bh-orbit, [data-motion="calm"] .bh-orbit .bh-orbit-cell{ animation:none !important; }
  .bh-cosmos-hub{ position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:150px; height:150px; border-radius:50%; background:radial-gradient(circle at 50% 38%, #FFFFFF, #FBF2DD); border:1px solid #F0E2C2; box-shadow:0 18px 40px -18px rgba(60,40,0,.4); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; z-index:10; }
  .bh-cosmos-halo{ position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:190px; height:190px; border-radius:50%; background:radial-gradient(circle, rgba(244,165,42,.28), transparent 70%); animation:bhHalo 4.5s ease-in-out infinite; pointer-events:none; }
  /* ===== TWEAKS: paleta de destaque (seletores casam com o DOM serializado em rgb) ===== */
  [data-accent="coral"] [style*="background: rgb(244, 165, 42)"]{ background:#F2683C !important; }
  [data-accent="coral"] [style*="color: rgb(244, 165, 42)"]{ color:#F2683C !important; }
  [data-accent="coral"] [style*="rgb(201, 127, 18) 0px 3px 0px"]{ box-shadow:0 3px 0 #C0451F !important; }
  [data-accent="coral"] [style*="rgb(201, 127, 18) 0px 2px 0px"]{ box-shadow:0 2px 0 #C0451F !important; }
  [data-accent="coral"] [style*="background: rgb(255, 243, 218)"]{ background:#FFE6DC !important; }
  [data-accent="coral"] [style*="color: rgb(184, 112, 10)"]{ color:#C0451F !important; }
  [data-accent="coral"] [style*="rgb(255, 217, 128)"]{ background:linear-gradient(160deg,#FFC9A3 0%,#FF9F6E 55%,#F2683C 100%) !important; }
  [data-accent="forest"] [style*="background: rgb(244, 165, 42)"]{ background:#2E9E63 !important; }
  [data-accent="forest"] [style*="color: rgb(244, 165, 42)"]{ color:#2E9E63 !important; }
  [data-accent="forest"] [style*="rgb(201, 127, 18) 0px 3px 0px"]{ box-shadow:0 3px 0 #1E7146 !important; }
  [data-accent="forest"] [style*="rgb(201, 127, 18) 0px 2px 0px"]{ box-shadow:0 2px 0 #1E7146 !important; }
  [data-accent="forest"] [style*="background: rgb(255, 243, 218)"]{ background:#E1F2E8 !important; }
  [data-accent="forest"] [style*="color: rgb(184, 112, 10)"]{ color:#1E7146 !important; }
  [data-accent="forest"] [style*="rgb(255, 217, 128)"]{ background:linear-gradient(160deg,#BFE8CE 0%,#7FCB9E 55%,#2E9E63 100%) !important; }

  /* ===== TWEAKS: densidade / ritmo ===== */
  [data-density="compact"] section{ padding-top:44px !important; padding-bottom:44px !important; }
  [data-density="spacious"] section{ padding-top:108px !important; padding-bottom:108px !important; }

  /* ===== TWEAKS: movimento ambiente ===== */
  [data-motion="calm"] [style*="animation"]{ animation:none !important; }

  /* ===== container p/ responsividade (vale p/ celular real E p/ o tweak Visualização) ===== */
  .bh-root{ container:bh / inline-size; }
  /* TWEAK Visualização = Mobile: encolhe a raiz p/ 390px e centraliza (dispara as container queries) */
  [data-view="mobile"].bh-root{ max-width:390px !important; margin:0 auto !important; box-shadow:0 0 0 1px #E6DCC6, 0 30px 60px -20px rgba(60,40,0,.35) !important; }

  /* bolinhas do carrossel mobile (escondidas no desktop) */
  .bh-cdots{ display:none; justify-content:center; align-items:center; gap:8px; margin-top:18px; }
  .bh-cdot{ width:8px; height:8px; border-radius:99px; background:#E2D6BC; cursor:pointer; transition:all .25s ease; }
  .bh-cdot.on{ background:#F4A52A; width:22px; }

  /* =========================================================
     RESPONSIVO (v12). Inline não aceita @media — regras aqui,
     mirando classes nos contêineres. Breakpoints: 1024 / 760.
     Utilitários de visibilidade: .bh-only-mobile / .bh-only-desktop
     ========================================================= */
  .bh-only-mobile{ display:none !important; }
  .bh-burger{ display:none !important; }
  @container bh (max-width:1024px){
    .bh-grid-3{ grid-template-columns:1fr 1fr !important; }
    .bh-grid-4{ grid-template-columns:1fr 1fr !important; }
  }
  @container bh (max-width:760px){
    .bh-only-mobile{ display:block !important; }
    .bh-only-desktop{ display:none !important; }
    .bh-burger{ display:flex !important; }
    .bh-hero{ grid-template-columns:1fr !important; gap:32px !important; padding-top:40px !important; padding-bottom:48px !important; }
    .bh-grid-3{ grid-template-columns:1fr !important; }
    .bh-grid-2{ grid-template-columns:1fr !important; }
    .bh-grid-4{ grid-template-columns:1fr 1fr !important; }
    .bh-grid-4 > div{ padding:16px !important; border-radius:14px !important; }
    .bh-grid-4 > div > span:first-child{ width:38px !important; height:38px !important; border-radius:11px !important; }
    .bh-grid-4 > div > span:first-child svg{ width:20px !important; height:20px !important; }
    .bh-grid-4 h3{ font-size:16px !important; margin:10px 0 5px !important; }
    .bh-grid-4 p{ font-size:13px !important; line-height:1.45 !important; }
    .bh-grid-foot{ grid-template-columns:1fr 1fr !important; }
    .bh-wrap{ padding-left:18px !important; padding-right:18px !important; }
    .bh-sec{ padding-top:48px !important; padding-bottom:48px !important; }
    .bh-h1{ font-size:36px !important; }
    .bh-h2{ font-size:30px !important; }
    /* Dois caminhos: cards horizontais (largura cheia) no mobile */
    .bh-twin{ grid-template-columns:1fr !important; gap:14px !important; }
    .bh-twin > div{ flex-direction:row !important; flex-wrap:wrap !important; align-items:flex-start !important; align-content:flex-start !important; justify-content:flex-start !important; padding:18px !important; border-radius:16px !important; }
    .bh-twin > div > span:first-of-type{ width:38px !important; height:38px !important; border-radius:11px !important; margin:0 12px 0 0 !important; flex:0 0 auto !important; align-self:center !important; }
    .bh-twin > div > span:first-of-type svg{ width:20px !important; height:20px !important; }
    .bh-twin > div > div[style*="clip-path"]{ width:78px !important; height:90px !important; top:-22px !important; right:-16px !important; }
    .bh-twin h3{ font-size:18px !important; margin:0 !important; flex:1 1 0 !important; min-width:0; align-self:center !important; }
    .bh-twin p{ font-size:13.5px !important; line-height:1.5 !important; margin:12px 0 0 !important; flex:0 0 100% !important; -webkit-line-clamp:initial; overflow:visible; }
    .bh-twin > div > span:last-of-type{ font-size:13.5px !important; padding:11px 16px !important; gap:7px !important; border-radius:10px !important; margin-top:16px !important; flex:0 0 auto !important; }
    /* CTA final: banner compacto no mobile */
    .bh-cta{ padding:26px 20px !important; border-radius:18px !important; }
    .bh-cta > div > span:first-child{ font-size:26px !important; }
    .bh-cta h2{ font-size:21px !important; margin:4px 0 4px !important; line-height:1.15 !important; }
    .bh-cta p{ font-size:13px !important; line-height:1.45 !important; margin-bottom:15px !important; }
    .bh-cta span[style*="cursor"]{ font-size:14px !important; padding:12px 22px !important; }
    /* quadrados decorativos menores no mobile */
    .bh-cta > div[style*="absolute"]{ width:64px !important; height:64px !important; border-radius:14px !important; }
    /* carrossel mobile: 2 linhas, rola na horizontal, ~2 colunas visíveis (4 itens) + espia o próximo */
    .bh-carousel{
      display:grid !important;
      grid-auto-flow:column !important;
      grid-template-columns:none !important;
      grid-template-rows:1fr 1fr !important;
      grid-auto-columns:minmax(46%,1fr) !important;
      gap:12px !important;
      overflow-x:auto !important;
      scroll-snap-type:x proximity !important;
      -webkit-overflow-scrolling:touch;
      padding:2px 18px 12px !important;
      margin:0 -18px !important;
      scrollbar-width:none;
    }
    .bh-carousel::-webkit-scrollbar{ display:none; }
    .bh-carousel > div{
      scroll-snap-align:start;
      background:#FFFBF2 !important;
      border-color:#F0DFBA !important;
      box-shadow:0 2px 0 #F0E0BE !important;
      padding:14px !important;
      flex-direction:column !important;
      gap:9px !important;
      align-items:flex-start !important;
    }
    .bh-carousel > div > span{ width:38px !important; height:38px !important; border-radius:11px !important; margin-top:-2px !important; }
    .bh-carousel > div > span img{ width:23px !important; height:23px !important; }
    .bh-carousel > div > div{ width:100% !important; }
    .bh-carousel > div h3{ font-size:15px !important; margin:0 0 3px !important; overflow-wrap:break-word; word-break:break-word; hyphens:auto; padding-right:2px; }
    .bh-carousel > div p{ font-size:13px !important; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
    .bh-cdots{ display:flex !important; }
    /* Exemplos reais: usar o box e dar zoom menor em cada preview pra caber */
    .bh-examplebox{ padding:14px !important; min-height:0 !important; border-radius:18px !important; }
    .bh-mk-prova{ zoom:.60; }
    .bh-mk-slide{ zoom:.70; }
    .bh-mk-plano{ zoom:.66; }
    /* barra de stats: 2 colunas, esquerda, compacta no mobile */
    .bh-stats{ display:grid !important; grid-template-columns:auto 1fr !important; gap:7px 16px !important; justify-items:start !important; padding:16px 18px !important; align-items:center !important; }
    .bh-stats > div{ display:none !important; }
    .bh-stats > span{ font-size:12.5px !important; line-height:1.2 !important; text-align:left !important; white-space:nowrap !important; }
    .bh-stats > span:nth-of-type(1), .bh-stats > span:nth-of-type(4){ display:none !important; }
    .bh-stats > span:nth-of-type(3){ order:1; }
    .bh-stats > span:nth-of-type(2){ order:2; justify-self:end !important; }
    /* rótulo do marquee: ~40% da coluna, 2 linhas, fonte menor */
    .bh-marquee-lbl{ flex:0 0 38% !important; white-space:normal !important; font-size:11.5px !important; line-height:1.25 !important; }
    /* Faixa "Devolva horas": banner compacto no mobile */
    .bh-weekend{ padding:34px 22px !important; }
    .bh-weekend-sec > div[style*="clip-path"]{ transform:scale(.75); }
    .bh-weekend h2{ font-size:29px !important; margin:0 0 9px !important; line-height:1.1 !important; }
    .bh-weekend p{ font-size:14px !important; line-height:1.4 !important; margin:0 auto 18px !important; }
    .bh-weekend span[style*="cursor"]{ font-size:15px !important; padding:13px 26px !important; }
    /* V2: imagem full-bleed (fora do box) usando a largura da tela */
    .bh-v2sec{ overflow-x:hidden !important; }
    .bh-v2box{ background:none !important; border:none !important; padding:0 !important; margin-left:-28px !important; margin-right:-28px !important; }
    .bh-v2img{ width:100% !important; max-width:100% !important; display:block !important; border-radius:0 !important; box-shadow:none !important; }
    .bh-vs{ top:calc(50% + 12px) !important; }
    .bh-arrow span{ transform:rotate(90deg); }
    .bh-banner{ background:linear-gradient(170deg, #EFEBE3 0%, #F4ECDC 46%, #FFE6B8 70%, #FFD98A 100%) !important; }
    .bh-banner-arrow{ transform:translate(-50%,-50%) rotate(90deg) !important; }
    /* problema/solução: imagem acima dos textos no mobile */
    .bh-pd-wrap > h2{ order:1; }
    .bh-pd-img{ order:2; margin-top:24px !important; max-height:none !important; object-fit:contain !important; }
    .bh-pd-cols{ order:3; }
    /* cosmos: encolhe a roda pra caber */
    .bh-cosmos-wrap{ height:360px !important; overflow:visible !important; }
    .bh-cosmos-stage{ transform:scale(.6); transform-origin:top center; }
  }
