/* V80: touch and small-screen refinements; desktop styles remain V78/V79. */
@media (max-width: 760px) {
  .public-site .site-header-inner { display: grid; grid-template-columns: 44px minmax(0,1fr) 88px; gap: 8px 6px; padding: 8px 0 12px; }
  .public-site .site-menu-toggle, .public-site .site-cart-button, .public-site .site-account-button { width: 44px; height: 44px; min-width: 44px; }
  .public-site .site-header-actions { gap: 0; }
  .public-site .site-brand { min-width: 0; gap: 6px; }
  .public-site .site-brand > span { font-size: 20px; }
  .public-site .site-brand img { width: 28px; height: 40px; flex-shrink: 0; }
  .public-site .header-search { grid-column: 1 / -1; width: 100%; margin-top: 0; }
  .public-site .header-search input { font-size: 16px; min-height: 48px; line-height: 1.4; padding-top: 11px; padding-bottom: 11px; }
  .public-site .header-search button { width: 48px; height: 48px; min-width: 48px; }
  .public-site .site-nav { max-height: calc(100dvh - 160px); overscroll-behavior: contain; }
  .public-site .site-nav a { display: flex; align-items: center; min-height: 48px; }
  .public-site h1, .public-site h2, .public-site .customer-app-hero-left > div { min-width: 0; overflow-wrap: anywhere; }
  .public-site .product-title { font-size: 13px; min-height: 40px; }
  .public-site .product-category { font-size: 11px; }
  .public-site .product-card-price { min-width: 0; }
  .public-site .product-card-price strong { font-size: 16px; overflow-wrap: anywhere; }
  .public-site .cart-add-form .icon-button { width: 44px; height: 44px; min-width: 44px; }
  .public-site .product-badge { font-size: 10px; max-width: calc(100% - 16px); }
  .public-site .section-head > a { font-size: 12px; min-height: 32px; align-items: center; }
  .public-site .catalog-lines a { display: flex; align-items: center; justify-content: center; min-height: 48px; }
  .public-site .catalog-mobile-filters { font-size: 14px; min-height: 48px; }
  .public-site .catalog-sidebar-link-v6 { min-height: 44px; min-width: 0; }
  .public-site .catalog-sidebar-link-v6 > span { min-width: 0; overflow-wrap: anywhere; }
  .public-site .catalog-toolbar label { font-size: 12px; }
  .public-site .catalog-toolbar button { width: 48px; height: 48px; }
  .public-site .catalog-active-filters a { min-height: 44px; max-width: 100%; overflow-wrap: anywhere; }
  .public-site .catalog-result-head { font-size: 12px; }
  .public-site .pagination-public a { min-width: 44px; height: 44px; display: inline-flex; justify-content: center; align-items: center; }
  .public-site .product-detail-info h1 { font-size: 27px; }
  .public-site .product-public-thumbs { gap: 8px; overscroll-behavior-x: contain; }
  .public-site .product-public-thumb { width: 60px; height: 70px; flex-basis: 60px; }
  .public-site .product-actions-public .btn-public { min-height: 52px; }
  .public-site .product-actions-public > .text-link { min-height: 44px; font-size: 13px; }
  .public-site .cart-page-head > a { min-height: 44px; }
  .public-site .cart-countdown-banner strong { font-size: 13px; }
  .public-site .cart-countdown-banner span { font-size: 12px; }
  .public-site .cart-item-info strong { font-size: 13px; }
  .public-site .cart-item-info > small { font-size: 11px; }
  .public-site .cart-item-price button { min-height: 44px; min-width: 64px; font-size: 12px; }
  .public-site .checkout-grid-3-v8 { grid-template-columns: 1fr; }
  .public-site .checkout-grid-v8 label, .public-site .customer-auth-form label { font-size: 13px; }
  .public-site .checkout-cep-status-v8 { font-size: 12px; overflow-wrap: anywhere; }
  .public-site .freight-option-body { min-width: 0; overflow-wrap: anywhere; }
  .public-site .checkout-advantage-row-v15 button { font-size: 13px; min-height: 48px; }
  .public-site .checkout-actions-v8 .btn-public { min-height: 52px; font-size: 14px; }
  .public-site .customer-auth-links { flex-wrap: wrap; gap: 4px 16px; font-size: 13px; }
  .public-site .customer-auth-links a { display: inline-flex; align-items: center; min-height: 44px; }
  .public-site .password-field button { width: 44px; height: 44px; top: 2px; right: 2px; }
  .public-site .customer-check-line { min-height: 44px; }
  .public-site .customer-side-nav { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4px; }
  /* These three destinations are already present in the client's bottom navigation. */
  .public-site .customer-side-nav a[href$="minha_conta.php"], .public-site .customer-side-nav a[href$="meus_pedidos.php"], .public-site .customer-side-nav a[href$="catalogo.php"] { display: none; }
  .public-site .customer-side-nav a { min-height: 44px; display: flex; align-items: center; padding: 8px 10px; font-size: 13px; }
  .public-site .customer-app-hero-stats { display: grid; grid-template-columns: 1fr 1fr 1.4fr; gap: 12px; }
  .public-site .customer-app-hero-stats small { font-size: 12px; }
  .public-site .customer-app-hero-stats strong { font-size: 14px; }
  .public-site .customer-app-shortcuts { gap: 12px; }
  .public-site .customer-app-shortcuts a { font-size: 13px; min-width: 0; }
  .public-site .customer-app-shortcuts small { font-size: 11px; }
  .public-site .customer-mini-order { flex-wrap: wrap; }
  .public-site .customer-mini-order em { font-size: 12px; }
  .public-site .customer-account-card-head > a { min-height: 44px; display: flex; align-items: center; }
  .public-site .customer-address-action, .public-site .customer-link-button { min-height: 44px; padding: 8px 4px; font-size: 13px; }
  .public-site .customer-address-actions { gap: 8px 16px; }
  .public-site .customer-orders-head h1 { font-size: 32px; }
  .public-site .customer-orders-actions { flex-wrap: wrap; }
  .public-site .customer-order-filter-strip { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
  .public-site .customer-order-filter-strip span { display: grid; gap: 2px; }
  .public-site .customer-order-filter-strip small { font-size: 12px; }
  .public-site .customer-order-top { flex-wrap: wrap; }
  .public-site .customer-order-status { max-width: 100%; font-size: 12px; overflow-wrap: anywhere; }
  .public-site .order-status-step { min-width: 0; }
  .public-site .order-status-step small { font-size: 10px; overflow-wrap: anywhere; }
  .public-site .customer-order-action-row > form { flex: 1 1 140px; }
  .public-site .customer-order-action-row .btn-public { min-height: 48px; width: 100%; }
  .public-site .customer-order-product-body { min-width: 0; }
  .public-site .customer-bottom-nav { padding-left: 8px; padding-right: 8px; }
  .public-site .customer-bottom-nav a { min-height: 48px; flex: 1; justify-content: center; }
  .public-site .customer-bottom-nav small { font-size: 12px; }
  body.public-site:has(.customer-bottom-nav) { padding-bottom: calc(84px + env(safe-area-inset-bottom)); }
  .public-site .site-footer a { display: flex; align-items: center; min-height: 44px; margin: 0; }
  .public-site .site-footer p { overflow-wrap: anywhere; }
  .public-site .payment-result-actions .btn-public { width: 100%; }
  .public-site .story-cta .btn-public { width: 100%; }
  .public-home .home-runway { height: min(560px,calc(100svh - 240px)); min-height: 450px; }
  .public-home .runway-piece figcaption { height: 90px; }
  .public-home .runway-photo { height: calc(100% - 90px); }
  .public-home .runway-name { font-size: 13px; }
  .public-home .runway-price .text-link { min-height: 32px; align-items: center; }
  .public-home .runway-price { margin-top: 0; }
  .public-home .runway-toolbar { display: grid; grid-template-columns: 44px minmax(0,1fr) 44px; width: calc(100% - 16px); gap: 0; min-height: 96px; padding: 0 0 8px; }
  .public-home .runway-controls { display: contents; }
  .public-home .runway-controls > .icon-button { width: 44px; height: 44px; min-width: 44px; margin: 0; }
  .public-home [data-runway-prev] { grid-column: 1; grid-row: 1; }
  .public-home .runway-dots { grid-column: 2; grid-row: 1; justify-content: center; gap: 0; }
  .public-home [data-runway-next] { grid-column: 3; grid-row: 1; }
  .public-home .runway-pause { grid-column: 3; grid-row: 2; }
  .public-home .runway-collection { grid-column: 1 / 3; grid-row: 2; justify-self: center; margin: 0; font-size: 12px; min-height: 44px; align-items: center; }
  .public-home .home-runway:has([data-runway-controls][hidden]) .runway-toolbar { grid-template-columns: 1fr; min-height: 60px; }
  .public-home .home-runway:has([data-runway-controls][hidden]) .runway-collection { grid-column: 1; grid-row: 1; }
  .public-home .brand-benefits { padding-top: 18px; padding-bottom: 18px; }
  .public-home .brand-benefits > div { font-size: 11px; min-width: 0; }
  .public-home .brand-benefits strong { font-size: 12px; }
  .public-home .brand-benefits .icon { display: none; }
}
@media (max-width: 370px) {
  .public-site .site-brand > span { font-size: 18px; }
  .public-site .site-brand img { width: 24px; }
  .public-site .site-brand small { display: none; }
  .public-site .product-card-price strong { font-size: 15px; }
  .public-site .product-card-bottom { gap: 4px; }
  .public-site .checkout-grid-address-v8 { grid-template-columns: 1fr; }
  .public-site .checkout-grid-address-v8 > * { grid-column: 1 / -1; }
  .public-site .order-status-thermometer { display: grid; gap: 6px; }
  .public-site .order-status-step { grid-template-columns: 26px minmax(0,1fr); align-items: center; justify-items: start; gap: 12px; text-align: left; min-height: 34px; }
  .public-site .order-status-step small { max-width: none; font-size: 12px; }
  .public-home .home-categories h2 { font-size: 27px; }
}
@media (max-width: 960px) and (max-height: 500px) {
  .public-site .site-header { position: relative; }
  .public-site .top-ribbon { padding-top: 4px; padding-bottom: 4px; font-size: 10px; }
  .public-site .top-ribbon > span + span { display: none; }
  .public-site .site-header-inner { display: flex; flex-wrap: nowrap; min-height: 64px; gap: 16px; padding: 8px 0; }
  .public-site .site-menu-toggle { display: inline-flex; width: 44px; height: 44px; min-width: 44px; }
  .public-site .site-brand { flex: 0 0 auto; gap: 6px; }
  .public-site .site-brand img { width: 30px; height: 44px; }
  .public-site .site-brand > span { font-size: 20px; }
  .public-site .site-brand small { display: none; }
  .public-site .site-header-actions { gap: 0; }
  .public-site .site-account-button, .public-site .site-cart-button { width: 44px; height: 44px; min-width: 44px; justify-content: center; }
  .public-site .site-account-button > span { display: none; }
  .public-site .header-search { order: 0; flex: 1; width: auto; max-width: none; margin: 0; }
  .public-site .header-search input { font-size: 16px; }
  .public-site .header-search button { width: 44px; height: 48px; min-width: 44px; }
  .public-site .site-nav { display: none; position: absolute; top: 100%; left: 0; width: 100%; padding: 12px; gap: 0; background: #fff; max-height: calc(100dvh - 100px); overflow-y: auto; overscroll-behavior: contain; border-bottom: 1px solid var(--line); }
  .public-site .site-nav.is-open { display: grid; }
  .public-site .site-nav a { min-height: 44px; padding: 10px 12px; }
  .public-site .site-nav .nav-attendance { margin: 0; }
  .public-home .home-runway { height: calc(100svh - 112px); min-height: 208px; }
  .public-home .runway-heading { display: flex; justify-content: center; align-items: baseline; gap: 16px; padding: 8px 16px 4px; }
  .public-home .runway-heading .eyebrow { display: none; }
  .public-home .runway-heading h1 { font-size: 32px; }
  .public-home .runway-heading p { font-size: 13px; margin: 0; }
  .public-home .home-runway.is-ready .runway-piece { width: 220px; }
  .public-home .home-runway.is-ready .runway-piece[data-position="-1"] { transform: translateX(calc(-50% - 210px)) scale(.79) rotate(-4deg); }
  .public-home .home-runway.is-ready .runway-piece[data-position="1"] { transform: translateX(calc(-50% + 210px)) scale(.79) rotate(4deg); }
  .public-home .home-runway.is-ready .runway-piece[data-position="-2"] { transform: translateX(calc(-50% - 385px)) scale(.58) rotate(-7deg); }
  .public-home .home-runway.is-ready .runway-piece[data-position="2"] { transform: translateX(calc(-50% + 385px)) scale(.58) rotate(7deg); }
  .public-home .runway-piece figcaption { height: 62px; padding-top: 4px; }
  .public-home .runway-photo { height: calc(100% - 62px); }
  .public-home .runway-name { font-size: 12px; }
  .public-home .runway-price { margin-top: 0; }
  .public-home .runway-price strong { font-size: 14px; }
  .public-home .runway-price .text-link { font-size: 11px; min-height: 24px; }
  .public-home .runway-toolbar { display: grid; grid-template-columns: 1fr auto 1fr; width: calc(100% - 32px); gap: 12px; min-height: 50px; padding: 3px 0; }
  .public-home .runway-controls { display: flex; width: auto; gap: 4px; grid-column: 2; grid-row: 1; }
  .public-home .runway-controls > .icon-button { width: 44px; height: 44px; min-width: 44px; margin: 0; }
  .public-home .runway-collection { grid-column: 1; grid-row: 1; justify-self: start; font-size: 11px; min-height: 44px; margin: 0; }
  .public-home .runway-count { display: block; grid-column: 3; grid-row: 1; }
  html { scroll-padding-top: 16px; }
}
@media (max-width: 760px), (max-width: 960px) and (max-height: 500px) {
  .public-site .floating-whatsapp { position: static; display: flex; gap: 12px; width: var(--container); height: auto; min-height: 56px; margin: 32px auto; padding: 12px 16px; border-radius: 4px; border: 1px solid var(--line); background: #edf5f0; color: var(--brand); box-shadow: none; }
  .public-site .mobile-contact-label { position: static; width: auto; height: auto; margin: 0; overflow: visible; clip: auto; white-space: normal; font-size: 13px; }
  .public-site.public-home .floating-whatsapp { display: none; }
  .public-site input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]), .public-site select, .public-site textarea { font-size: 16px; min-height: 48px; }
  .public-site .photo-dialog { width: calc(100% - 20px); padding: 12px; max-height: calc(100dvh - 24px); }
  .public-site .photo-dialog[open] { display: grid; grid-template-rows: auto minmax(0,1fr) auto; gap: 8px; height: calc(100dvh - 32px); }
  .public-site .photo-dialog-head { margin: 0; }
  .public-site .photo-dialog-head > strong { min-width: 0; }
  .public-site .photo-dialog img { height: 100%; min-height: 0; }
  .public-site .photo-dialog-nav { min-height: 44px; padding: 0; }
}
