/* =====================================================================
   CURATIO — Celular mais confortável
   Menos rolagem: listas longas viram carrosséis laterais, blocos
   secundários ficam recolhidos e o rodapé fica enxuto. Nada é removido
   da loja: só reorganizado para caber melhor na tela.
   (carregado por último)
   ===================================================================== */

/* bloco de frete recolhível (todas as telas) */
.ship-box { margin: 18px 0 6px; border: 1px solid var(--line); border-radius: 16px; }
.ship-box > summary { list-style: none; display: flex; align-items: center; gap: 10px; padding: 14px 16px; cursor: pointer; font-size: 14px; font-weight: 500; }
.ship-box > summary::-webkit-details-marker { display: none; }
.ship-box > summary .ico { width: 18px; height: 18px; color: var(--pc, var(--accent)); }
.ship-box > summary span { flex: 1; }
.ship-box > summary .ico:last-child { color: var(--grey-2); transition: transform .3s; }
.ship-box[open] > summary .ico:last-child { transform: rotate(180deg); }
.ship-box .ship-calc { margin: 0; padding: 0 16px 16px; border: 0; }
.shop-chips { display: none; }

/* cabeçalho que some ao descer (celular) */
@media (max-width: 960px) {
  .header { transition: transform .35s cubic-bezier(.32, .72, 0, 1), background .3s, color .3s; }
  .header--hide { transform: translateY(-100%); }
  .shop { grid-template-columns: minmax(0, 1fr); padding-left: var(--gut); padding-right: var(--gut); }
  .shop > div { min-width: 0; }
  .shop__bar { flex-wrap: nowrap; gap: 8px; }
  .shop__bar .muted { display: none; }
  .shop__bar .btn, .shop__bar .select { flex: 1 1 50%; min-width: 0; height: 40px; min-height: 40px; }
  .shop-chips { display: flex; gap: 8px; overflow-x: auto; margin: 0 calc(var(--gut) * -1) 14px; padding: 2px var(--gut); scrollbar-width: none; }
  .shop-chips::-webkit-scrollbar { display: none; }
  .shop-chips .chip { flex: none; }
  .shop .filters { margin-bottom: 14px; }
}

@media (max-width: 600px) {
  /* ritmo geral mais curto */
  .section { padding: 44px 0; }
  .section--compact { padding: 26px 0; }
  .sec-head { margin-bottom: 18px; gap: 8px; }
  .sec-head .lead { display: none; }
  .h-lg { font-size: 27px; }
  .h-md { font-size: 23px; }
  .sec-head h2 .script { font-size: 1.05em; }
  .link-arrow { font-size: 11.5px; letter-spacing: .1em; }
  .page-hero { padding: 26px 0 20px; }
  .page-hero::after { display: none; }
  .page-hero .lead { font-size: 14.5px; }
  .h-xl { font-size: 34px; }
  .crumbs { margin-bottom: 8px; }

  /* carrossel lateral genérico */
  .value__in, .spot__list, .kits, .gallery, .steps-3, .tiers, .pdp .recs__list {
    display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none;
    margin-left: calc(var(--gut) * -1); margin-right: calc(var(--gut) * -1); padding-left: var(--gut); padding-right: var(--gut); gap: 10px;
  }
  .value__in::-webkit-scrollbar, .spot__list::-webkit-scrollbar, .kits::-webkit-scrollbar, .gallery::-webkit-scrollbar,
  .steps-3::-webkit-scrollbar, .tiers::-webkit-scrollbar, .pdp .recs__list::-webkit-scrollbar { display: none; }

  /* ---------- HOME ---------- */
  .hero__in { min-height: 0; padding-top: 104px; padding-bottom: 40px; }
  .hero__title { font-size: 42px; }
  .hero .lead { font-size: 15px; }
  .hero__scroll { display: none; }
  .value__in { margin: 0; padding: 0 var(--gut); gap: 0; }
  .value__in > div { flex: 0 0 auto; display: flex; gap: 8px; align-items: center; padding: 14px 16px 14px 0; margin-right: 16px; border-right: 1px solid var(--line-2) !important; border-bottom: 0 !important; scroll-snap-align: start; }
  .value__in > div:last-child { border-right: 0 !important; }
  .value__in span { display: none; }
  .value__in .ico { width: 28px; height: 28px; padding: 6px; }
  .value__in strong { font-size: 12.5px; white-space: nowrap; }
  /* áreas: lista compacta 2×2 */
  .areas { gap: 8px; }
  .area { flex-direction: row; align-items: center; border-radius: 16px; }
  .area__img { flex: 0 0 52px; height: 60px; aspect-ratio: auto; margin: 8px 0 8px 8px; border-radius: 10px; }
  .area__body { padding: 8px 10px; }
  .area h3 { font-size: 16px; line-height: 1.15; }
  .area p, .area__go { display: none; }
  .area__dot { width: 18px; height: 3px; margin-bottom: 6px; }
  .area::before { display: none; }
  /* produto em destaque lado a lado + demais em carrossel */
  .spot { gap: 10px; }
  .spot__main { grid-template-columns: 42% 1fr; border-radius: 18px; }
  .spot__img { aspect-ratio: auto; min-height: 220px; }
  .spot__img .tag { top: 8px; left: 8px; font-size: 9px; height: 20px; padding: 0 8px; }
  .spot__body { padding: 14px 14px 16px; gap: 2px; }
  .spot__body h3 { font-size: 20px; margin: 2px 0 4px; }
  .spot__body > p, .spot__body .benefits, .spot__body .price__inst, .spot__cta .link-arrow { display: none; }
  .spot__body .eyebrow { font-size: 10px; }
  .spot__cta { margin-top: 10px; }
  .spot__cta .btn { width: 100%; min-height: 42px; font-size: 11px; padding: 8px 10px; letter-spacing: .1em; }
  .spot__item { flex: 0 0 78%; scroll-snap-align: start; }
  .spot__item:hover { transform: none; }
  .quiz-band { padding: 18px; gap: 12px; }
  .quiz-band p { display: none; }
  .quiz-band h2 { font-size: 21px; margin: 6px 0 0; }
  .quiz-band .btn { width: 100%; }
  /* ciência: sem ilustração, texto mais curto */
  .science .molecule { display: none; }
  #ciencia h2 { font-size: 26px; margin: 12px 0 12px !important; }
  #ciencia .lead { font-size: 14.5px; display: -webkit-box; -webkit-line-clamp: 5; -webkit-box-orient: vertical; overflow: hidden; }
  .stats { margin: 16px 0 0; }
  .clean-chips { margin-top: 16px; gap: 6px; }
  .clean-chips span { font-size: 12px; padding: 5px 10px; }
  /* kits em carrossel */
  .kit { flex: 0 0 86%; scroll-snap-align: start; grid-template-columns: 84px 1fr; padding: 12px; }
  .kit .pimg { height: 100px; }
  .kit h3 { font-size: 18px; }
  .kit .price__inst { display: none; }
  .news-inline { padding: 18px; gap: 10px; }
  .news-inline span { display: none; }
  .reviews { gap: 10px; }

  /* ---------- PRODUTO ---------- */
  .pdp__main { aspect-ratio: 1; }
  .pdp__thumbs { display: none; }
  .pdp__info h1 { font-size: 30px; margin: 6px 0; }
  .pdp__short { font-size: 15px; margin: 10px 0 14px; }
  .benefits { margin-bottom: 16px; gap: 6px; }
  .pdp__buy { flex-direction: row; margin: 16px 0 8px; gap: 8px; }
  .pdp__buy .qty { align-self: stretch; height: auto; }
  .pdp__buy .qty--lg button { width: 36px; }
  .pdp__buy .qty input { width: 24px; }
  .pdp__buy .btn { min-height: 52px; letter-spacing: .08em; font-size: 12px; }
  [data-buy-now] { min-height: 44px; }
  .reassure { font-size: 11.5px; gap: 4px 8px; }
  .ship-box { margin-top: 12px; }
  .pdp .recs { margin: 16px 0 6px; }
  .pdp .rec { flex: 0 0 84%; margin: 0; scroll-snap-align: start; }
  .acc summary { padding: 14px 0; font-size: 12px; }
  .pdp-deep { padding: 34px 0; }
  .pdp-deep__in { gap: 26px; }
  .science-box { padding: 18px; }
  .science-box li { font-size: 14px; }
  .faq-list summary { padding: 13px 0; font-size: 14.5px; }
  .reviews-box { padding: 30px 0 10px; }
  .reviews-box__head { margin-bottom: 14px; }
  .rv-empty { padding: 18px 14px; }
  .rv-empty .logo-symbol { display: none; }
  .rv { flex: 0 0 auto; }

  /* ---------- LOJA ---------- */
  .shop { padding-top: 14px; gap: 0; }
  .shop__bar { margin-bottom: 14px; }

  /* ---------- SOBRE ---------- */
  .about-grid .split__media { display: none; }
  .anat { gap: 14px; margin-top: 18px; }
  .diffs { gap: 14px; }
  .diffs li { font-size: 14px; padding-left: 46px; }
  .diffs strong { font-size: 15.5px; }
  .gallery img { flex: 0 0 72%; scroll-snap-align: start; }
  .versions { gap: 8px; }
  .versions > div { padding: 22px 8px; }
  .palette { gap: 8px; }
  .swatch i { height: 54px; }
  .swatch div { padding: 10px; font-size: 12px; }
  .swatch strong { font-size: 14px; }
  .type-spec { padding: 16px 0; }
  .type-spec .big { font-size: 21px; }

  /* ---------- AFILIADOS ---------- */
  .aff-hero { padding: 36px 0 30px; }
  .aff-hero h1 { font-size: 33px; margin: 12px 0 14px; }
  .aff-hero__in { gap: 22px; }
  .aff-card { padding: 18px; }
  .aff-card h3 { font-size: 19px; margin-bottom: 6px; }
  .aff-card .row { padding: 9px 0; font-size: 13.5px; }
  .steps-3 > div { flex: 0 0 78%; padding: 20px; scroll-snap-align: start; }
  .steps-3 > div::before { font-size: 30px; margin-bottom: 6px; }
  .tier { flex: 0 0 68%; padding: 20px; scroll-snap-align: start; }
  .tier strong { font-size: 42px; }
  .sim { padding: 20px; gap: 16px; }
  .auth-side { min-height: 0; padding: 28px var(--gut); }
  .auth-side .aff-band__nums { display: none; }
  .auth-form { padding: 24px var(--gut) 40px; }

  /* ---------- MINHA CONTA / QUIZ / PEDIDO ---------- */
  .account { gap: 28px; padding-top: 18px; }
  .quiz__opts { margin: 20px 0 16px; gap: 8px; }
  .qopt { padding: 14px; }
  .after { padding: 18px; }

  /* ---------- RODAPÉ ENXUTO ---------- */
  .footer { padding: 34px 0 22px; }
  .footer__top { grid-template-columns: 1fr; gap: 18px; padding-bottom: 20px; }
  .footer__top > div:nth-child(2) { display: none; }          /* lista de categorias: já está no menu e na barra */
  .footer__top > div:first-child > p:not(.footer__slogan) { display: none; }
  .footer__top h4 { display: none; }
  .footer__news h4 { display: block; margin-bottom: 0; }
  .footer__news p { display: none; }
  .footer ul { display: flex; flex-wrap: wrap; gap: 8px 16px; font-size: 13px; }
  .footer__slogan { font-size: 19px; margin: 14px 0 0; }
  .footer__social { margin-top: 14px; }
  .footer__bottom { flex-direction: column; gap: 10px; font-size: 11px; padding-top: 16px; }
  .pay-icons span { font-size: 9.5px; padding: 3px 7px; }
}
