.whatsapp-label { display:none }
@media (max-width:767px) {
  html { scroll-padding-top:20px; -webkit-text-size-adjust:100%; text-size-adjust:100% }
  h1,h2,h3,p { overflow-wrap:break-word }
  button,.button { min-height:44px }
  input,select { font-size:16px!important }
  .delivery { height:auto; min-height:30px; padding:8px 14px; font-size:8px; line-height:1.5; flex-wrap:wrap; gap:3px 8px }

  .hero { display:flex; flex-direction:column; min-height:0; height:auto; max-height:none; padding:38px 20px 34px; text-align:center; overflow:hidden }
  .hero-copy { display:contents }
  .hero-copy>.eyebrow { order:0 }
  .hero h1 { order:1; font-size:clamp(42px,12.8vw,60px); line-height:1.06; letter-spacing:-1.3px; margin:18px 0 22px }
  .hero h1 br:first-child { display:initial }
  .hero-copy>p { order:2; font-size:15px; line-height:1.75; max-width:390px; margin:0 auto }
  .hero-art,.sizes-art,.soap-stage,.kit-art { position:relative; width:100%; height:auto; min-height:0; max-height:none; overflow:hidden; contain:paint }
  .hero-art { order:3; max-width:430px; aspect-ratio:4/5; margin:18px auto 0; display:block; perspective:none }
  .hero-bottle { position:absolute; width:112%; max-width:none; height:auto; left:-20%; bottom:28px }
  .hero-mini { position:absolute; width:65%; left:auto; right:-7%; bottom:28px }
  .vertical-note { top:20%; right:0; font-size:8px; letter-spacing:1px }
  .art-note { bottom:1px; left:0; right:0; text-align:center; font-size:21px }
  .hero-bg-word { top:36%; inset-inline:0; font-size:130px; overflow:hidden }
  .hero-foot { position:static; order:7; justify-content:center; margin-top:28px; font-size:9px }
  .hero-foot>span { display:none }
  .home-selection { order:4; width:100%; max-width:480px; margin:24px 0 0 }
  .home-scents,.home-types { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px }
  .home-scents button { min-height:46px; justify-content:center; font-size:14px; padding:10px 7px }
  .home-types a { min-height:44px; padding:12px 5px; border:1px solid #d4a65035; font-size:13px }
  .home-choice { min-height:42px; margin:14px 0 }
  .actions { order:5; width:100%; flex-direction:column; gap:12px; margin-top:22px }
  .actions>.button,.actions>.line-link,.kit-copy .button,.closing .button { width:100%; min-height:48px; justify-content:center; padding:14px; font-size:12px }
  .signature { order:6; margin-top:25px }

  .intro,.section,.section-block,.kits,.closing { padding:60px 20px }
  .section,.kit-show { grid-template-columns:minmax(0,1fr); gap:24px }
  .section-copy,.kit-copy { min-width:0; text-align:center }
  .intro h2,.section-copy h2,.section-heading h2,.kit-copy h3 { font-size:clamp(36px,10.8vw,51px); line-height:1.06 }
  .section-copy p,.section-heading p,.kit-copy p { margin-inline:auto }
  .sizes .section-copy { grid-row:1 }
  .sizes-art { max-width:450px; aspect-ratio:4/5; margin:auto }
  .size-big { width:96%; left:-13%; bottom:64px }
  .size-mini { width:53%; right:-3%; bottom:64px }
  .size-label { bottom:5px; font-size:27px }
  .size-label small { font-size:8px; letter-spacing:.5px }
  .label-big { left:13% }
  .label-mini { right:3% }
  .section-watermark,.kit-watermark { max-width:100%; overflow:hidden; left:0; font-size:90px!important }
  .soap-stage { max-width:450px; aspect-ratio:1; margin:auto }
  .main-soap { width:94%; left:3%; top:0; transform:none!important }
  .drift-soap { width:26%; left:0; bottom:0; transform:none!important }
  .kit-tabs { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin:28px 0 20px }
  .kit-tabs :is(button,.kit-category-link) { font-size:20px; min-width:0; min-height:78px; max-width:none; padding:10px 7px }
  .kit-art { max-width:480px; aspect-ratio:1; margin:auto }
  .kit-art .kit-big,.kit-art:has(.kit-soap:not([hidden])) .kit-big { width:88%; left:-19%; bottom:12px }
  .kit-art .kit-mini { width:54%; left:auto; right:0!important; bottom:12px }
  .kit-art:has(.kit-soap:not([hidden])) .kit-mini { width:49%; right:18%!important }
  .kit-art:has(.kit-soap:not([hidden])) .kit-soap { width:43%; right:-3%; bottom:12px }
  .kit-art.individual-art .kit-big { width:94%; left:3%; bottom:6px }
  .kit-art.individual-art .kit-mini { width:72%!important; left:14%; right:auto!important; bottom:6px }
  .kit-art.individual-art .kit-soap { width:90%; left:5%; right:auto; bottom:6px }
  .kit-select { justify-content:center; flex-wrap:wrap; gap:8px 16px }
  .kit-select select { min-height:46px }
  .kit-copy { padding:4px 0 0 }

  .catalog-toolbar { flex-direction:column; gap:14px }
  .filters { flex-wrap:wrap; justify-content:center; gap:6px }
  .filters button { font-size:12px; padding:11px 12px }
  .catalog-toolbar select { width:100%; max-width:none; min-height:46px; padding:12px }
  .product { min-width:0 }
  .product-visual { height:auto; min-height:0; aspect-ratio:.85; contain:paint }
  .product h3 { font-size:clamp(22px,6.2vw,27px); line-height:1.13 }
  .product-buy { display:flex; flex-direction:column; align-items:stretch; gap:10px }
  .product-buy button { min-height:44px; padding:10px 5px; border:1px solid #d4a65060 }
  .closing h2 { font-size:clamp(42px,12vw,58px); line-height:1.05 }
  footer { display:flex; flex-direction:column; gap:20px; padding:32px 20px 20px }
  footer .brand { max-width:100% }
  footer>div { display:grid; gap:4px }
  footer>div a { display:flex; align-items:center; min-height:44px }
  .whatsapp {
    position: fixed;
    right: calc(16px + env(safe-area-inset-right, 0px));
    bottom: calc(16px + env(safe-area-inset-bottom, 0px));
    width: 48px;
    height: 48px;
  }

  dialog { width:calc(100% - 24px); max-width:480px; max-height:calc(100vh - 24px); max-height:calc(100dvh - 24px); padding:48px 20px 24px; margin:auto; overscroll-behavior:contain }
  dialog h2 { font-size:36px; line-height:1.05 }
  .close { top:4px; right:5px; width:44px; height:44px }
  .cart-item { grid-template-columns:minmax(0,1fr); gap:12px }
  .cart-controls { justify-self:end }
  .cart-controls button { width:44px; height:44px }
  .cep-row input,.cep-row button { min-height:48px }
  #sendOrder { min-height:52px; justify-content:center; text-align:center; white-space:normal }
  .motion-ready .reveal { opacity:1!important; transform:none!important; transition:none!important }
}
@media (max-width:340px) {
  .hero,.section,.section-block,.kits,.closing { padding-inline:16px }
  .kit-tabs :is(button,.kit-category-link) { font-size:18px }
}

.product-details {
  margin-top: 14px;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.6;
  text-align: left;
  overflow-wrap: anywhere;
}
.product-details summary {
  min-height: 44px;
  padding: 10px 0;
  color: #f4d998;
  cursor: pointer;
}
.product-details summary:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 3px;
}
.product-details p,
.kit-copy .product-details p {
  max-width: none;
  margin: 0 0 10px;
  font-size: inherit;
  line-height: inherit;
}
.product-details ul {
  padding-inline-start: 1.2em;
  margin: 0 0 12px;
}
.product-details li + li {
  margin-top: 4px;
}
