/* Canecas Mundi • V9 — revisão de estabilidade / sem depender do rewriter */
:root{--cm-accent:#f36b10;--cm-ink:#171717;--cm-border:#e8e4df}
html,body{max-width:100%;overflow-x:clip}
.cm-header-v8 .header-inner{position:relative;min-width:0}
.cm-header-v8 .header-help{white-space:nowrap}
.cm-header-v8 .help-copy{display:flex;flex-direction:column;align-items:flex-start;gap:2px}
.cm-header-v8 .help-copy small{font-size:11px;line-height:1.25}
.cm-header-v8 .help-copy strong{font-size:13px;line-height:1.3}
.cm-site-wordmark{display:block;font:900 21px/1.02 Manrope,'DM Sans',sans-serif;letter-spacing:-.07em;color:#171717;white-space:nowrap}
.cm-site-wordmark em{color:#f36b10;font-style:normal}
.cm-site-wordmark small{font:800 8px/1.4 Manrope,'DM Sans',sans-serif;letter-spacing:.18em;display:block;margin-top:4px}
.footer .cm-site-wordmark{color:#fff;font-size:27px}
.cm-hero-fallback{display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.04;text-align:center;max-width:100%;padding:24px;font-family:Manrope,'DM Sans',sans-serif;color:#fff;transform:rotate(-6deg)}
.cm-hero-fallback span{font-size:clamp(27px,4vw,50px);letter-spacing:.13em;font-weight:800}
.cm-hero-fallback strong{font-size:clamp(44px,6vw,83px);letter-spacing:-.08em;font-weight:900;color:#f36b10}
.cm-hero-fallback small{font-size:12px;letter-spacing:.17em;font-weight:700;margin-top:16px}
.cm-partner-fallback{font:800 clamp(18px,2vw,28px)/1.2 Manrope,'DM Sans',sans-serif;letter-spacing:-.025em;color:#222;text-align:center}
.cm-grid,.cm-wholesale-grid,.cm-home-preview .cm-grid,.cm-featured-area .cm-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch}
.cm-grid>.cm-card,.cm-grid>.cm-more-card{min-width:0}
.cm-catalog-card{min-width:0!important;max-width:100%}
.cm-catalog-card .cm-card-image{width:100%;aspect-ratio:1/0.94;background:#fff!important;min-width:0}
.cm-catalog-card .cm-card-image img{width:100%;height:100%;object-fit:contain;display:block}
.cm-catalog-card .cm-card-body{min-width:0}
.cm-catalog-card .cm-card-buy-row{display:grid;grid-template-columns:minmax(100px,1.03fr) minmax(90px,.97fr);gap:7px;width:100%;align-items:stretch}
.cm-card-quantity.cm-quantity{min-width:0;width:100%}
.cm-card-quantity.cm-quantity input{min-width:0;width:0;flex:1}
.cm-catalog-card h3{overflow-wrap:anywhere}
.cm-catalog-card .cm-card-live-price strong{white-space:normal;font-size:19px}
.cm-catalog-card .cm-card-variants{min-width:0;max-width:100%}
.cm-cart-trigger:focus-visible,.cm-card-variant:focus-visible,.cm-card-add:focus-visible,.mobile-btn:focus-visible{outline:3px solid #ff9c51;outline-offset:3px}
/* Seção hero do catálogo permanece legível no celular */
.cm-hero-art img{max-width:100%;width:100%;object-fit:contain}
@media(max-width:1180px){
 .cm-grid,.cm-wholesale-grid,.cm-home-preview .cm-grid,.cm-featured-area .cm-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .cm-header-v8 .header-help{display:none!important}
 .cm-header-v8 .mobile-btn{display:flex!important;align-items:center;justify-content:center}
 .cm-header-v8 .nav{display:none!important}
 .cm-header-v8 .nav.open{display:flex!important;position:absolute;inset:auto 10px auto 10px;top:calc(100% + 1px)!important;max-width:none;flex-direction:column;align-items:stretch;box-shadow:0 15px 35px #0002;background:#fff;border:1px solid #eae4df;border-radius:0 0 14px 14px;padding:10px 16px;z-index:30}
}
@media(max-width:930px){.cm-grid,.cm-wholesale-grid,.cm-home-preview .cm-grid,.cm-featured-area .cm-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}
@media(max-width:540px){
 .cm-header-v8 .header-inner{min-height:68px!important;padding:0 2px;gap:8px!important}
 .cm-header-v8 .logo{max-width:calc(100% - 108px);min-width:0}
 .cm-header-v8 .logo img{max-width:142px!important;max-height:48px;width:auto!important;object-fit:contain}
 .cm-header-v8 .cm-header-actions{gap:7px!important}
 .cm-header-v8 .cm-cart-trigger,.cm-header-v8 .mobile-btn{width:42px!important;height:42px!important;min-height:42px;padding:0!important;flex:none}
 .cm-header-v8 .nav.open{left:8px!important;right:8px!important;top:calc(100% + 1px)!important}
 .cm-grid,.cm-wholesale-grid,.cm-home-preview .cm-grid,.cm-featured-area .cm-grid{grid-template-columns:1fr;gap:13px}
 /* Loja mobile em cards horizontais: imagens grandes, controles sem quebras */
 .cm-catalog-card{display:grid!important;grid-template-columns:minmax(125px,40%) minmax(0,60%);border-radius:14px!important;align-items:stretch}
 .cm-catalog-card .cm-card-image{height:100%;aspect-ratio:auto!important;min-height:255px;padding:9px!important;border-bottom:0;border-right:1px solid #f1ede9}
 .cm-catalog-card .cm-card-image img{height:100%;max-height:245px;max-width:100%;object-fit:contain}
 .cm-catalog-card .cm-card-body{padding:12px 10px!important;gap:5px!important;min-width:0;display:flex;flex-direction:column}
 .cm-catalog-card .cm-card-cat{font-size:9px!important}
 .cm-catalog-card h3{font-size:13px!important;min-height:0!important;line-height:1.28!important;-webkit-line-clamp:3!important;line-clamp:3!important}
 .cm-catalog-card .cm-card-variant-header{font-size:10px}
 .cm-catalog-card .cm-card-variants{gap:6px;min-height:28px;padding:1px 1px 4px}
 .cm-catalog-card .cm-card-variant.is-color{height:25px;width:25px;flex:none}
 .cm-catalog-card .cm-card-retail{line-height:1.2}
 .cm-catalog-card .cm-card-buy{padding-top:6px;gap:4px}
 .cm-catalog-card .cm-card-live-price strong{font-size:17px!important;line-height:1.18;white-space:normal}
 .cm-catalog-card .cm-card-buy-row{grid-template-columns:1fr!important;gap:5px}
 .cm-card-quantity.cm-quantity{height:34px}
 .cm-card-quantity.cm-quantity button{flex-basis:32px;width:32px;min-width:32px}
 .cm-card-add{width:100%;min-height:35px;font-size:11px!important;gap:5px}
 .cm-card-detail-link{font-size:10px;padding-top:5px;line-height:1.22}
 .cm-catalog-card .cm-card-badge{font-size:9px;padding:5px 7px;top:9px;left:9px}
 .cm-home-preview .cm-more-card{min-height:160px}
 .cm-site-wordmark{font-size:18px}
}
@media(max-width:350px){
 .cm-catalog-card{grid-template-columns:minmax(112px,39%) minmax(0,61%)}
 .cm-catalog-card .cm-card-body{padding:8px!important}
 .cm-catalog-card h3{font-size:12px!important}
 .cm-catalog-card .cm-card-live-price strong{font-size:15px!important}
 .cm-card-quantity.cm-quantity button{min-width:28px;flex-basis:28px;width:28px}
}
@media(prefers-reduced-motion:reduce){.cm-catalog-card,.cm-card-image img{transition:none!important}}
