/* identidade.css — chapéu cartola + gravata borboleta da Belo Cavalheiro.
   Só visual. Carrega por último; respeita "reduzir movimento". */
.bc-hat{display:block;overflow:visible}
.bc-hat .hat-g{transform-box:fill-box;transform-origin:50% 100%}
.bc-hat .hat-shine{fill:none;stroke:#fff;stroke-width:1.6;stroke-linecap:round;opacity:.0}
.bc-hat.tip .hat-g{animation:bcTip 1.1s ease both}
.bc-hat.tip .hat-shine{animation:bcShineLine 1.1s ease both}
@keyframes bcTip{0%,100%{transform:none}28%{transform:translate(-3px,-6px) rotate(-19deg)}58%{transform:translate(-2px,-4px) rotate(-13deg)}80%{transform:translate(0,-1px) rotate(-3deg)}}
@keyframes bcShineLine{0%{opacity:0}30%{opacity:.75}100%{opacity:0}}
@keyframes bcFloat{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-5px) rotate(2deg)}}
@keyframes bcTw{0%,100%{opacity:0;transform:scale(.3) rotate(0)}50%{opacity:1;transform:scale(1.1) rotate(45deg)}}

/* ===== Abertura (splash) ===== */
.splash{display:none!important}
.bc-splash{position:fixed;inset:0;z-index:600;display:grid;place-items:center;text-align:center;overflow:hidden;
  background:radial-gradient(circle at 50% 38%,#2c2c2c 0,#151515 58%,#0b0b0b 100%);animation:bcOut .6s ease 3.1s forwards}
html.no-splash .bc-splash{display:none}
.bc-splash.skip{opacity:0;visibility:hidden;transition:opacity .3s,visibility 0s .3s;pointer-events:none}
@keyframes bcOut{to{opacity:0;visibility:hidden}}
.bc-sp{position:relative;padding:0 24px}
.bc-sp-hat{width:150px;margin:0 auto;animation:bcDrop 1.05s cubic-bezier(.3,1.35,.5,1) .15s both;filter:drop-shadow(0 14px 22px #0009)}
.bc-sp-hat .hat-g{animation:bcTip 1.1s ease 1.35s both}
@keyframes bcDrop{0%{transform:translateY(-75vh) rotate(-28deg);opacity:0}15%{opacity:1}62%{transform:translateY(0) rotate(5deg)}80%{transform:translateY(-12px) rotate(-3deg)}100%{transform:none}}
.bc-sp-bow{width:62px;margin:-4px auto 0;animation:bcPop .55s cubic-bezier(.3,1.7,.5,1) 1.1s both}
@keyframes bcPop{from{transform:scale(0) rotate(-40deg);opacity:0}to{transform:none;opacity:1}}
.bc-sp b{display:block;margin-top:16px;font:600 17px/1 'Playfair Display',Georgia,serif;color:#f4f0e8;letter-spacing:.7em;margin-right:-.7em;animation:bcSpace 1.1s ease .95s both}
@keyframes bcSpace{from{letter-spacing:1.4em;opacity:0}to{letter-spacing:.7em;opacity:1}}
.bc-sp em{display:block;margin-top:6px;font:700 34px/1.05 'Playfair Display',Georgia,serif;letter-spacing:.12em;margin-right:-.12em;
  background:linear-gradient(100deg,#b99a62 30%,#fff3cf 48%,#b99a62 66%) 0/260% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;
  animation:bcRise .8s ease 1.2s both,bcShimmer 2.4s ease 1.9s both}
@keyframes bcRise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes bcShimmer{from{background-position:130% 0}to{background-position:-30% 0}}
.bc-sp i{display:block;height:1px;width:0;margin:14px auto 0;background:linear-gradient(90deg,transparent,#e7c98a,transparent);animation:bcLine 1s ease 1.5s forwards}
@keyframes bcLine{to{width:min(260px,70vw)}}
.bc-sp small{display:block;margin-top:12px;font:700 10px 'Nunito Sans',Arial,sans-serif;letter-spacing:.24em;color:#cdbb92;animation:bcRise .8s ease 1.9s both}
.bc-sp .sp{position:absolute;color:#e7c98a;opacity:0;font-size:14px;animation:bcTw 1.8s ease-in-out infinite}
.bc-sp .sp:nth-of-type(1){left:6%;top:6%;animation-delay:1.3s}.bc-sp .sp:nth-of-type(2){right:8%;top:14%;animation-delay:1.6s;font-size:11px}
.bc-sp .sp:nth-of-type(3){left:14%;top:44%;animation-delay:1.9s;font-size:10px}.bc-sp .sp:nth-of-type(4){right:10%;top:40%;animation-delay:1.45s}
.bc-sp .sp:nth-of-type(5){right:26%;top:-2%;animation-delay:2.1s;font-size:9px}

/* ===== Logo do topo e rodapé ===== */
.store-header .brand{gap:9px}
.bc-h-logo{width:34px;height:26px;cursor:pointer;filter:drop-shadow(0 1px 2px #0003)}
.store-header .brand .bc-h-logo .hat-g{transition:transform .25s}
.store-header .brand:hover .bc-h-logo .hat-g{transform:translate(-2px,-4px) rotate(-12deg)}
.bc-f-logo{width:46px;height:35px;margin:0 8px 0 0}
footer .brand{align-items:center}

/* ===== Hero ===== */
.lhero .lh-hat{position:absolute;right:16px;top:20px;width:74px;z-index:3;cursor:pointer;animation:bcFloat 4.2s ease-in-out infinite;filter:drop-shadow(0 8px 12px #0007)}
.lhero .lh-hat .bc-hat{width:100%}
.lhero .lh-hat .bow{width:30px;margin:-2px auto 0}
.lhero .lh-hat .sp{position:absolute;color:#e7c98a;font-size:12px;opacity:0;animation:bcTw 2.4s ease-in-out infinite;pointer-events:none}
.lhero .lh-hat .sp:nth-of-type(1){left:-14px;top:6px}.lhero .lh-hat .sp:nth-of-type(2){right:-12px;top:30px;animation-delay:.8s;font-size:9px}.lhero .lh-hat .sp:nth-of-type(3){left:6px;bottom:-8px;animation-delay:1.5s;font-size:10px}
.lhero.lhero-sem-foto .lh-t{padding-right:98px}
.lhero h2 em{background:linear-gradient(100deg,#e4cfa0 28%,#fff6d8 46%,#e4cfa0 64%) 0/260% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:bcShimmer2 6s ease-in-out infinite}
@keyframes bcShimmer2{0%,25%{background-position:130% 0}70%,100%{background-position:-30% 0}}
@media(min-width:760px){.lhero .lh-hat{width:120px;right:40px;top:30px}.lhero .lh-hat .bow{width:48px}.lhero.lhero-sem-foto .lh-t{padding-right:190px}}

/* ===== Títulos de seção com chapéu ===== */
html body .sec-title span::before{display:none}
.sec-title .bc-hat{display:inline-block;width:24px;height:18px;vertical-align:-3px;margin-right:8px}

/* ===== Carregando ===== */
.bc-load{display:grid;place-items:center;margin-bottom:8px}
.bc-load .bc-hat{width:52px;animation:bcBounce .9s ease-in-out infinite}
@keyframes bcBounce{0%,100%{transform:translateY(0) rotate(-6deg)}50%{transform:translateY(-12px) rotate(6deg)}}

/* ===== Cartões de produto entram em cascata ===== */
.product{animation:bcCardIn .55s cubic-bezier(.2,.7,.2,1) backwards}
.product:nth-child(8n+2){animation-delay:.05s}.product:nth-child(8n+3){animation-delay:.1s}.product:nth-child(8n+4){animation-delay:.15s}
.product:nth-child(8n+5){animation-delay:.2s}.product:nth-child(8n+6){animation-delay:.25s}.product:nth-child(8n+7){animation-delay:.3s}.product:nth-child(8n){animation-delay:.35s}
@keyframes bcCardIn{from{opacity:0;transform:translateY(22px) scale(.97)}}

/* ===== Barra de rolagem com chapéu ===== */
.bc-prog{position:fixed;left:0;right:0;top:0;height:3px;z-index:25;pointer-events:none;opacity:0;transition:opacity .3s}
.bc-prog.on{opacity:1}
.bc-prog i{display:block;height:100%;width:100%;transform-origin:0 50%;transform:scaleX(0);background:linear-gradient(90deg,#8a6d3b,#e7c98a,#b99a62)}
.bc-prog span{position:absolute;top:2px;left:0;width:22px;transform:translateX(-50%);filter:drop-shadow(0 2px 3px #0006)}
.bc-prog .bc-hat{width:22px}

/* ===== Chapéu voando para a sacola ===== */
.bc-fly{position:fixed;left:0;top:0;width:34px;z-index:700;pointer-events:none;filter:drop-shadow(0 6px 8px #0006)}
.bc-fly .bc-hat{width:100%}

@media(prefers-reduced-motion:reduce){
  .bc-splash,.lhero .lh-hat,.product,.bc-load .bc-hat,.lhero h2 em{animation:none!important}
  .bc-splash{display:none}
  .bc-hat.tip .hat-g{animation:none}
}

/* ===== Paleta Belo Cavalheiro: preto, grafite e dourado (substitui restos rosa/vinho do modelo anterior) ===== */
:root{--mlbg:#faf8f4;--rose:#b99a62;--rose-d:#151515;--lilac:#f1ede5;--mlline:#e6dfd0;--pl:#e6dfd0;--pk:#f4f0e8;--pm:#6b6b6b}
html body .store-header{background:linear-gradient(135deg,#292929 0%,#151515 55%,#2b2b2b 100%);box-shadow:0 6px 18px rgba(0,0,0,.28)}
html body.scrolled .store-header{box-shadow:0 8px 24px rgba(0,0,0,.4)}
html body .sec-title{color:#151515}
html body .sec-title span::after{color:#b99a62}
html body .filter{background:#f4f0e8;color:#151515;border-color:#e6dfd0}
html body .filter.active{background:linear-gradient(135deg,#151515,#3a3a3a);color:#f1dda8;box-shadow:0 4px 12px rgba(0,0,0,.28)}
html body #products .product{box-shadow:0 8px 22px rgba(21,21,21,.10);border-color:#e6dfd0}
html body .ml-deliv,html body .ml-seller{background:linear-gradient(180deg,#fff,#f4f0e8)}
html body footer{background-color:#151515;background-image:linear-gradient(160deg,#2b2b2b,#151515 60%,#0e0e0e)}
html body footer p{color:#ddd5c4}
html body .product .badge:not(.dark){background:linear-gradient(110deg,#151515 30%,#6b5a38 48%,#f1dda8 52%,#6b5a38 56%,#151515 72%);background-size:260% 100%}
html body .lh-b a.p,.lh-b a.p{color:#151515}
html body .store-header .icon-btn{color:#151515}
.pvm{background:#0b0b0bcc}.pvc-l{background:#151515b3}
.empty,.pv-count{color:#6b6b6b}
html body .strip{background:#292929;border-bottom:1px solid #b99a62}

/* ===== Faixa dourada rolando ===== */
.bc-tick{overflow:hidden;margin:12px 0 0;padding:9px 0;background:#151515;border-block:1px solid #b99a62;-webkit-mask:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.bc-tick-in{display:flex;width:max-content;gap:18px;align-items:center;animation:bcTick 28s linear infinite}
.bc-tick span{font:800 11px 'Nunito Sans',Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:#f1dda8;white-space:nowrap}
.bc-tick i{font-style:normal;color:#b99a62;font-size:11px}
@keyframes bcTick{to{transform:translateX(-50%)}}
/* ===== Demonstração ===== */
.bc-demo{background:#b99a62;color:#151515;text-align:center;font:800 10.5px 'Nunito Sans',Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;padding:5px 8px}
/* ===== Cartões: brilho e inclinação ===== */
.product{transition:transform .25s ease,box-shadow .25s ease}
.product .photo::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,rgba(255,243,207,.55) 50%,transparent 65%);transform:translateX(-120%);pointer-events:none}
.product:hover .photo::after,.product:focus-visible .photo::after,.product:active .photo::after{transform:translateX(120%);transition:transform .8s ease}
.product .photo img{transition:transform .6s ease}.product:hover .photo img{transform:scale(1.06)}
/* ===== Chuva de chapéus ===== */
.bc-rain{position:fixed;top:-60px;z-index:800;pointer-events:none;animation:bcFall linear forwards}
.bc-rain .bc-hat{width:100%}
@keyframes bcFall{to{transform:translateY(112vh) rotate(var(--r,360deg));opacity:.9}}
@media(prefers-reduced-motion:reduce){.bc-tick-in{animation:none}.product .photo::after{display:none}}
.ml-seller-ic{background:#151515!important}.ml-seller-ic svg{width:26px!important;height:21px!important}

/* ===== Mascote ===== */
.lhero .lh-hat{width:104px;right:8px;top:14px;animation:none;filter:drop-shadow(0 8px 12px #0008)}
.lhero.lhero-sem-foto .lh-t{padding-right:108px}
.bc-mascote{display:block;width:100%;overflow:visible}
.bc-mascote .m-body{animation:bcBreath 3.4s ease-in-out infinite;transform-origin:50% 100%;transform-box:fill-box}
.bc-mascote .m-head{transform-box:fill-box;transform-origin:50% 100%;animation:bcNod 5s ease-in-out infinite}
.bc-mascote .m-eye{transform-box:fill-box;transform-origin:center;animation:bcBlink 4.2s infinite}
.bc-mascote .m-hat{transform-box:fill-box;transform-origin:15% 90%}
.bc-mascote.tip .m-hat{animation:bcMTip 1.3s ease both}
.bc-mascote.tip .m-mouth{animation:bcGrin 1.3s ease both;transform-box:fill-box;transform-origin:center}
@keyframes bcBreath{0%,100%{transform:scale(1,1)}50%{transform:scale(1.02,.985)}}
@keyframes bcNod{0%,100%{transform:rotate(0)}30%{transform:rotate(2.2deg)}70%{transform:rotate(-2.2deg)}}
@keyframes bcBlink{0%,92%,100%{transform:scaleY(1)}95%{transform:scaleY(.08)}}
@keyframes bcMTip{0%,100%{transform:none}28%{transform:translate(-9px,-15px) rotate(-18deg)}70%{transform:translate(-8px,-13px) rotate(-15deg)}}
@keyframes bcGrin{0%,100%{transform:scale(1)}30%,70%{transform:scale(1.25,1.4)}}
.bc-bubble{position:absolute;right:4px;top:100%;margin-top:6px;width:158px;padding:9px 11px;border-radius:12px 12px 4px 12px;background:#f4f0e8;color:#151515;font:700 12px/1.3 'Nunito Sans',Arial,sans-serif;box-shadow:0 8px 20px #0006;opacity:0;transform:translateY(-6px) scale(.92);transform-origin:90% 0;pointer-events:none;transition:opacity .3s,transform .3s}
.bc-bubble.show{opacity:1;transform:none;pointer-events:auto}
.bc-bubble b{display:block;margin-bottom:5px}
.bc-bubble a{display:inline-block;padding:5px 9px;border-radius:99px;background:#151515;color:#f1dda8;text-decoration:none;font-weight:800;font-size:11px}
@media(min-width:760px){.lhero .lh-hat{width:150px;right:30px;top:20px}.lhero.lhero-sem-foto .lh-t{padding-right:200px}}
@media(prefers-reduced-motion:reduce){.bc-mascote *{animation:none!important}}

/* ===== Mascote com a foto dele (recortada) ===== */
.lhero .lh-hat{width:124px;right:4px;top:8px}
.lhero.lhero-sem-foto .lh-t{padding-right:122px}
img.bc-mascote{display:block;width:100%;height:auto;transform-origin:50% 100%;animation:bcBreath 3.6s ease-in-out infinite;-webkit-user-drag:none;user-select:none}
img.bc-mascote.tip{animation:bcPhotoNod 1.1s ease both}
@keyframes bcPhotoNod{0%,100%{transform:none}25%{transform:translateY(-6px) rotate(-3.5deg) scale(1.03)}60%{transform:translateY(-3px) rotate(2deg) scale(1.02)}}
@media(min-width:760px){.lhero .lh-hat{width:190px;right:24px;top:12px}.lhero.lhero-sem-foto .lh-t{padding-right:220px}}
@media(prefers-reduced-motion:reduce){img.bc-mascote{animation:none!important}}

/* ===== Visual masculino: formas retas, tipografia firme, sem corações nem brilhos ===== */
html body .store-header .brand b,html body .brand b{font:800 15px 'Nunito Sans',Arial,sans-serif!important;font-style:normal!important;letter-spacing:.2em!important;text-transform:uppercase;color:#f1dda8}
html body .lhero h2{font:700 30px/1.12 'Playfair Display',Georgia,serif!important;font-style:normal!important;letter-spacing:.01em}
html body .lhero h2 em{font-style:normal}
html body .lhero{border-radius:12px}
html body .lh-b a,html body .filter,html body .store-header .icon-btn,html body .quick-add,html body .strip a{border-radius:8px!important}
html body .filter{font-weight:800;letter-spacing:.04em;text-transform:uppercase;font-size:12px}
html body .fav{border-radius:8px;width:36px;height:36px}
html body .fav:not(.on){animation:none!important}
html body .fav.on svg{fill:#151515;stroke:#b99a62}
html body #products .product,html body .product{border-radius:10px}
html body #products .product .photo{border-radius:10px 10px 0 0}
html body .pv-btn,html body .ps-add,html body .ps-buy{border-radius:8px}
html body .store-header .search,html body .store-header input{border-radius:10px}
html body .snd-btn,html body #sndBtn{border-radius:10px}
.bc-bubble{border-radius:10px 10px 3px 10px}
.bc-bubble a{border-radius:6px}
.bc-sp .sp,.lhero .lh-hat .sp{display:none}
html body .sec-title{font-family:'Playfair Display',Georgia,serif;font-weight:700;letter-spacing:.04em;text-transform:uppercase;font-size:20px}

/* ===== Gospel ===== */
.bc-cross{width:22px;height:22px;fill:none;stroke:#b99a62;stroke-width:1.600;stroke-linejoin:round;flex:none}
.bc-verse{display:flex;gap:14px;align-items:flex-start;margin:0;padding:16px 18px;background:#151515;color:#f4f0e8;border-bottom:1px solid #b99a62}
.bc-verse .bc-cross{margin-top:4px}
.bc-verse blockquote{margin:0;opacity:0;transform:translateY(6px);transition:opacity .45s,transform .45s}
.bc-verse.in blockquote{opacity:1;transform:none}
.bc-verse p{margin:0;font:600 italic 16px/1.4 'Playfair Display',Georgia,serif;color:#f4f0e8}
.bc-verse cite{display:block;margin-top:6px;font:800 10.5px 'Nunito Sans',Arial,sans-serif;font-style:normal;letter-spacing:.18em;text-transform:uppercase;color:#b99a62}
.bc-farda{display:flex;gap:16px;margin:26px 14px;padding:22px 18px;border:1px solid #b99a62;border-radius:12px;background:linear-gradient(150deg,#262626,#151515);color:#f4f0e8;position:relative;overflow:hidden}
.bc-farda::after{content:"";position:absolute;right:-26px;top:-20px;width:150px;height:190px;opacity:.07;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M10 2h4v6h6v4h-6v10h-4V12H4V8h6z' fill='%23b99a62'/%3E%3C/svg%3E") center/contain no-repeat;pointer-events:none}
.bc-farda .bc-cross{width:28px;height:28px;margin-top:2px}
.bc-farda small{font:800 10px 'Nunito Sans',Arial,sans-serif;letter-spacing:.2em;color:#b99a62}
.bc-farda h3{margin:6px 0 8px;font:700 21px/1.2 'Playfair Display',Georgia,serif;color:#f1dda8}
.bc-farda p{margin:0 0 14px;font:400 14px/1.5 'Nunito Sans',Arial,sans-serif;color:#ddd5c4}
.bc-farda a{display:inline-block;padding:11px 16px;border-radius:8px;background:#f1dda8;color:#151515;font:800 13px 'Nunito Sans',Arial,sans-serif;text-decoration:none;transition:transform .2s,box-shadow .2s}
.bc-farda a:active{transform:scale(.97)}
@media(min-width:760px){.bc-farda{max-width:900px;margin:34px auto}}
@media(prefers-reduced-motion:reduce){.bc-verse blockquote{transition:none}}

/* ===== Botão da música de fundo ===== */
.bc-mus{position:fixed;left:62px;bottom:calc(84px + env(safe-area-inset-bottom,0px));z-index:70;display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid var(--mlline,#e6dfd0);border-radius:10px;background:#151515;color:#f1dda8;box-shadow:0 4px 14px rgba(0,0,0,.28);cursor:pointer}
.bc-mus .nt{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.bc-mus:not(.on) .nt{opacity:.55}
.bc-mus:not(.on)::after{content:"";position:absolute;width:26px;height:2px;background:#b99a62;transform:rotate(-40deg);border-radius:2px}
.bc-mus .eq{position:absolute;right:4px;top:4px;display:none;gap:2px;align-items:flex-end;height:9px}
.bc-mus.on .eq{display:flex}
.bc-mus .eq i{width:2px;background:#b99a62;border-radius:1px;animation:bcEq 1.1s ease-in-out infinite}
.bc-mus .eq i:nth-child(2){animation-delay:.25s}.bc-mus .eq i:nth-child(3){animation-delay:.5s}
@keyframes bcEq{0%,100%{height:3px}50%{height:9px}}
@media(prefers-reduced-motion:reduce){.bc-mus .eq i{animation:none;height:6px}}
