/* Brewdminds hero — drop-in. Requires: brewdminds_logo.svg next to this file. */
.bm-hero{position:relative;min-height:65vh;width:100%;background:#050505;overflow:hidden;display:grid;place-items:center;font-family:var(--_fonts---font-family--primary-font,Satoshi,Arial,sans-serif)}
.bm-hero *{box-sizing:border-box}
.bm-layer{position:absolute;inset:0;pointer-events:none}
.bm-base{background:radial-gradient(120% 90% at 50% 46%,#17181a 0%,#0b0b0c 44%,#050505 80%)}
.bm-floor{opacity:.55;background:radial-gradient(65% 45% at 50% 102%,rgba(255,255,255,.06) 0%,rgba(5,5,5,0) 72%)}
.bm-glow{position:absolute;left:50%;top:47%;transform:translate(-50%,-50%);pointer-events:none}
.bm-glow--core{width:min(1150px,105vw);height:min(540px,60vh);background:radial-gradient(50% 50% at 50% 50%,rgba(255,255,255,.30) 0%,rgba(230,232,238,.09) 40%,rgba(5,5,5,0) 74%);filter:blur(56px);animation:bm-glow-core 8s cubic-bezier(.4,0,.6,1) infinite}
.bm-glow--wide{top:50%;width:min(880px,94vw);height:min(420px,50vh);background:radial-gradient(50% 50% at 50% 50%,rgba(200,205,215,.22) 0%,rgba(5,5,5,0) 76%);filter:blur(72px);animation:bm-glow-wide 8s cubic-bezier(.4,0,.6,1) infinite}
.bm-glow--hot{width:min(640px,76vw);height:170px;background:radial-gradient(50% 50% at 50% 50%,rgba(255,255,255,.22) 0%,rgba(5,5,5,0) 70%);filter:blur(40px)}
.bm-content{position:relative;display:flex;flex-direction:column;align-items:center;gap:44px;padding:0 24px}
.bm-mark{position:relative;animation:bm-breathe 8s cubic-bezier(.4,0,.6,1) infinite;will-change:transform}
.bm-mark img{display:block;width:min(900px,84vw,170vh);height:auto;filter:invert(1) drop-shadow(0 0 24px rgba(255,255,255,.30)) drop-shadow(0 0 72px rgba(255,255,255,.14))}
.bm-sheen{position:absolute;inset:0;pointer-events:none;clip-path:polygon(-20% 0,-12% 0,-18% 100%,-26% 100%);animation:bm-sheen 9s cubic-bezier(.45,0,.2,1) 1.4s infinite backwards}
.bm-sheen img{width:100%;height:100%;filter:invert(1) drop-shadow(0 0 5px rgba(255,255,255,.75))}
.bm-caption{display:flex;flex-direction:column;align-items:center;gap:22px}
.bm-rule{width:260px;height:1px;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.45) 50%,rgba(255,255,255,0));transform-origin:center;opacity:0;animation:bm-rule 1.6s cubic-bezier(.2,.7,.2,1) .5s forwards}
.bm-label{font-size:11px;font-weight:500;letter-spacing:.38em;text-transform:uppercase;color:rgba(255,255,255,.62);opacity:0;animation:bm-fade-up 1.2s ease-out .85s forwards}
.bm-meta{display:flex;align-items:flex-end;justify-content:space-between;padding:clamp(20px,3.4vw,44px);opacity:0;animation:bm-fade-up 1.4s ease-out 1.2s forwards}
.bm-meta span{font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.24)}
.bm-vignette{background:radial-gradient(85% 70% at 50% 47%,rgba(5,5,5,0) 44%,rgba(5,5,5,.58) 82%,rgba(5,5,5,.94) 100%)}
.bm-particle{position:absolute;border-radius:50%;background:#fff;box-shadow:0 0 8px rgba(255,255,255,.8);opacity:0;animation-name:bm-drift;animation-timing-function:linear;animation-iteration-count:infinite}

@keyframes bm-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.03)}}
@keyframes bm-glow-core{0%,100%{opacity:.34;transform:translate(-50%,-50%) scale(1)}50%{opacity:.66;transform:translate(-50%,-50%) scale(1.06)}}
@keyframes bm-glow-wide{0%,100%{opacity:.20;transform:translate(-50%,-50%) scale(1.04)}50%{opacity:.40;transform:translate(-50%,-50%) scale(1.1)}}
@keyframes bm-sheen{0%{clip-path:polygon(-20% 0,-12% 0,-18% 100%,-26% 100%)}34%,100%{clip-path:polygon(112% 0,120% 0,114% 100%,106% 100%)}}
@keyframes bm-rule{from{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}
@keyframes bm-fade-up{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes bm-drift{0%{transform:translate3d(0,0,0);opacity:0}12%,88%{opacity:var(--pk,.4)}100%{transform:translate3d(var(--dx),var(--dy),0);opacity:0}}
@media (prefers-reduced-motion:reduce){.bm-hero *{animation:none!important}.bm-rule,.bm-label,.bm-meta{opacity:1}.bm-sheen{display:none}}
