[hidden]{display:none!important}.auth-modal-open{overflow:hidden}.public-auth-dialog{width:min(540px,calc(100% - 28px));border:1px solid #d9d9d3;border-radius:24px;background:#fafaf7;color:#12382f;padding:36px;max-height:92dvh;overflow-y:auto;box-shadow:0 24px 90px #0004}.public-auth-dialog::backdrop{background:#12382f99;backdrop-filter:blur(5px)}.public-auth-dialog h2{font-size:34px;font-weight:500;line-height:1.12;letter-spacing:-.04em;margin:12px 0}.public-auth-dialog>p{color:#6e716d;line-height:1.6;font-size:14px}.auth-close{position:absolute;right:15px;top:12px;border:0;background:none;font-size:30px;cursor:pointer}.auth-tabs{display:flex;gap:6px;margin:22px 0}.auth-tabs button{flex:1;background:#e9e9e4;border:1px solid transparent;border-radius:8px;min-height:42px;cursor:pointer;font-size:13px}.auth-tabs button.active{background:#12382f;color:white}#public-auth-form{display:grid;gap:14px}#public-auth-form label{display:grid;gap:7px;font-size:12px}#public-auth-form input:not([type=checkbox]),#public-auth-form select{width:100%;min-height:46px;border-radius:8px;border:1px solid #d0d1cb;background:white;padding:10px;font-size:15px;color:#171918}#public-auth-form small{font-size:11px;color:#6e716d}.auth-location{display:grid;grid-template-columns:110px 1fr;gap:12px}#public-auth-form .auth-consent{display:flex;align-items:flex-start;gap:9px;line-height:1.5}.auth-consent input{margin-top:3px;flex-shrink:0;accent-color:#12382f}.auth-consent a{text-decoration:underline}.auth-feedback{background:#fff0e6;padding:12px;border-radius:8px;color:#7d3021;font-size:13px}.auth-submit{width:100%;margin-top:3px}.auth-submit:disabled{opacity:.65;cursor:wait}.header-login{border:0;background:none;cursor:pointer}.header-actions [data-logout]{background:none;border:0;cursor:pointer;font-size:12px}.header-actions .client-status{font-size:11px}.price-teaser.price-gate{display:flex;flex-direction:column;gap:7px;border:1px solid #d6d9d2;background:#eef0e9;color:#12382f;text-align:left;padding:15px;border-radius:12px;cursor:pointer;width:100%;margin-top:13px}.price-gate strong{font-size:15px;font-weight:600;line-height:1.35}.price-gate span{font-size:11px;color:#6e716d}.price-gate b{font-size:11px;letter-spacing:.05em}.price-gate:hover{border-color:#12382f;background:#e6ebe1}.product-purchase .locked-price:not(.revealed){margin-top:26px}.product-inquiry{margin-top:18px;width:100%}.price-actions .button{font-size:12px}.price-teaser.revealed{padding:15px;border-radius:12px}.catalog-status{padding:30px;color:#6e716d}.auth-loading{opacity:.7}.site-header .client-status{max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.catalog-grid .product-meta{display:block}.catalog-grid .product-card .product-meta>div:first-child{min-height:90px}.price-actions{grid-template-columns:1fr 1fr}@media(max-width:700px){.public-auth-dialog{padding:30px 22px}.public-auth-dialog h2{font-size:29px}.price-actions{grid-template-columns:1fr}.header-actions{gap:12px}.header-actions .client-status{max-width:95px;padding:8px}.header-actions [data-logout]{padding:7px}.product-purchase .locked-price{padding:16px}.site-header .brand img{max-width:110px}}:focus-visible{outline:3px solid #a58a42;outline-offset:3px}

.section-top-zero{padding-top:0}.content-space-top{margin-top:50px}.section-bottom-small{padding-bottom:20px}.section-top-small{padding-top:50px}.section-soft-background{background:#e2e1db}

/* Cadeado vetorial: vence o display:block dos spans e elimina a seta antiga. */
.locked-price .lock-icon{display:grid;place-items:center;align-self:center;flex-shrink:0;line-height:1;color:#12382f}
.locked-price .lock-icon::before{content:none}
.locked-price .lock-icon svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* Navegação e sobreposições acessíveis, inclusive em telas de pouca altura. */
body.menu-open,body.search-open{overflow:hidden}
.mobile-menu{overflow-y:auto;overscroll-behavior:contain;justify-content:flex-start;padding:76px 32px 32px}
.mobile-menu:not(.open){visibility:hidden}
.mobile-menu>a,.mobile-menu>button{flex-shrink:0}
.mobile-menu .menu-close{position:fixed;top:16px;right:18px;min-width:44px;min-height:44px;border-radius:50%;background:#1f2220}
.search-panel{overflow-y:auto;overscroll-behavior:contain;padding:clamp(24px,12dvh,100px) 24px 32px}
.search-panel-inner{width:min(900px,100%);padding-top:52px;min-width:0}
.search-panel .close-icon{top:0;right:0;min-width:44px;min-height:44px}
.search-result-link{overflow-wrap:anywhere}
.bf-campaign .product-anchor-nav{top:var(--bf-banner-height)}
.bf-campaign :is(#detalhes,#medidas,#composicao){scroll-margin-top:calc(var(--bf-banner-height) + 88px)}
@media(min-height:650px){.mobile-menu{justify-content:center;padding-top:76px;padding-bottom:76px}}
@media(max-height:500px){.mobile-menu{padding-top:76px}.search-panel{padding-top:12px}}
@media(max-width:1000px),(pointer:coarse){
  .menu-button,.site-header .icon-button,.bf-dialog .bf-close,.lead-dialog .lead-close,.public-auth-dialog .auth-close,.product-image-modal-close,.product-image-modal-zoom button,.size-options button,.category-strip .chip{min-width:44px;min-height:44px}
  #public-auth-form input:not([type=checkbox]),#public-auth-form select,#lead-capture-dialog .lead-fields input,#lead-capture-dialog .lead-fields select,.catalog-search input,.catalog-sort select,.page-form input,.page-form select,.page-form textarea,.consult-form input,.consult-form select,.consult-form textarea{font-size:16px}
}
@media(prefers-reduced-motion:reduce){.mobile-menu,.search-panel{transition:none}}

/* O texto da campanha define a altura do banner no celular, sem cortar os CTAs. */
@media(max-width:700px){
  [data-page=home] .hero{height:auto;min-height:calc(100svh - var(--bf-banner-height,0px));padding-bottom:96px}
  [data-page=home] .hero-content{padding-top:calc(var(--header) + clamp(38px,9svh,76px))}
  [data-page=home] .hero h1{font-size:clamp(36px,10vw,46px);line-height:1.05}
  [data-page=home] .hero-cta-row{margin-top:22px}
  .slider-arrow{min-width:44px;min-height:44px}
}

/* Endereço e rotas por unidade, preservando o atendimento da campanha. */
.store-card{display:flex;flex-direction:column}
.store-card .store-media{flex-shrink:0}
.store-card .store-copy{display:flex;flex-direction:column;flex:1}
.store-address a{color:inherit;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.store-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto;padding-top:18px}
.store-actions .button{margin-top:0;min-height:46px;white-space:normal;text-align:center}
@media(max-width:650px){.store-actions{display:grid;grid-template-columns:1fr}.store-actions .button{width:100%}}

/* Sobe somente a identificação do slider, mantendo o banner e seu conteúdo. */
[data-page=home] .hero-bottom{bottom:calc(var(--bf-banner-height,0px) + 88px)}
@media(max-width:700px){[data-page=home] .hero-bottom{bottom:74px}}
@media(max-width:350px){[data-page=home] .hero-bottom{bottom:50px}}

.seo-discovery-links{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 25px}.seo-discovery-links a{display:inline-flex;align-items:center;min-height:40px;padding:8px 13px;border:1px solid #bfc9be;border-radius:999px;background:#f6f8f2;color:#12382f;font-size:12px;line-height:1.3}.seo-discovery-links a:hover{border-color:#12382f;background:#e7eee5}
.catalog-page-heading{margin-bottom:36px}.catalog-page-heading h1{font:400 clamp(32px,4vw,50px)/1.08 'Galano Grotesque Alt',Arial,sans-serif;letter-spacing:-.04em;margin:0 0 16px}.catalog-page-heading p{max-width:760px;margin:0;color:#626e65;font-size:15px;line-height:1.65}

/* A saudação mantém a capitalização do nome em vez das maiúsculas do cabeçalho. */
.site-header .client-status{text-transform:none;max-width:200px;gap:4px;letter-spacing:normal}
.password-reset-main{padding:clamp(28px,6vh,70px) 16px 48px}
.password-reset-panel{width:min(480px,100%);margin:auto;padding:clamp(22px,5vw,36px);border:1px solid #d9d9d3;border-radius:20px;background:#fafaf7;color:#12382f}
.password-reset-panel h1{font-size:clamp(27px,5vw,36px);font-weight:500;line-height:1.15;letter-spacing:-.035em;margin:14px 0}
.password-reset-panel p{font-size:14px;line-height:1.6}
#password-reset-form{display:grid;gap:16px;margin-top:24px}
#password-reset-form fieldset{display:grid;gap:16px;margin:0;padding:0;border:0;min-width:0}
#password-reset-form label{display:grid;gap:8px;font-size:13px}
#password-reset-form input{box-sizing:border-box;width:100%;min-width:0;min-height:48px;padding:12px;border:1px solid #b5bfb6;border-radius:8px;background:#fff;color:#12382f;font-size:16px}
#password-reset-form small{font-size:12px;line-height:1.5;color:#53675c}
#password-reset-form button{min-height:48px;white-space:normal;line-height:1.5}
#password-reset-form button:disabled{opacity:.65;cursor:wait}
.password-reset-panel .inline-link{display:block;min-height:44px;padding:12px 0;font-size:13px;line-height:1.5;text-decoration:underline}
.reset-login-link{margin-top:12px}
#public-auth-form .inline-link{min-height:44px;line-height:1.4;white-space:normal;text-align:center}
@media(max-width:700px){
  .is-auth .site-header .client-status{display:flex;flex-direction:column;gap:0;align-items:flex-start;white-space:normal;max-width:105px;padding:7px 8px;line-height:1.25}
  .site-header .client-status span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .is-auth .site-header .header-actions{gap:4px}
  .is-auth .site-header .brand{width:90px}
  .is-auth .site-header .brand img{max-width:90px}
  .is-auth .site-header{padding-left:14px;padding-right:14px}
  .public-auth-dialog{box-sizing:border-box;max-height:calc(100dvh - 20px);overscroll-behavior:contain}
}
