:root{
  --bg:#020203;
  --panel:#08090c;
  --text:#f7f7f4;
  --muted:rgba(247,247,244,.72);
  --line:rgba(255,255,255,.15);
  --shine:rgba(255,255,255,.26);
  --radius:1.45rem;
  --hero-radius:2.4rem;
  --max:720px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:auto;overscroll-behavior-y:none}
body{background:radial-gradient(circle at 50% 0%,rgba(255,255,255,.10),transparent 30rem),linear-gradient(180deg,#020203,#07080b 52%,#020203);color:var(--text);font-family:Montserrat,Arial,sans-serif;line-height:1.7;overflow-x:hidden;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
.fundo-fixo{position:fixed;inset:0;background:url('../assets/images/cover.webp') center/cover;filter:grayscale(.85) blur(60px) contrast(1.12);opacity:.18;transform:scale(1.12);z-index:-1}
.pagina{position:relative;max-width:var(--max);min-height:100vh;margin:0 auto;box-shadow:0 0 100px rgba(0,0,0,.65),0 0 0 1px rgba(255,255,255,.04)}
.loading-screen{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;background:#020203;transition:opacity .7s ease,visibility .7s ease}
.loading-screen.hidden{opacity:0;visibility:hidden}
.loading-logo{display:grid;justify-items:center;gap:1rem}
.loading-logo img{width:142px;filter:drop-shadow(0 0 22px rgba(255,255,255,.25));animation:pulse 1.8s ease-in-out infinite}
.rock-mark{position:relative;display:grid;place-items:center;width:64px;height:64px;margin:0 auto;pointer-events:none;animation:rockFloat 2.8s ease-in-out infinite}
.rock-mark::after{content:'';position:absolute;left:50%;bottom:4px;width:36px;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.34),transparent);transform:translateX(-50%);filter:blur(.5px);opacity:.75;animation:rockBaseGlow 2.8s ease-in-out infinite}
.rock-mark svg{width:58px;height:58px;overflow:visible;fill:none;filter:drop-shadow(0 0 6px rgba(255,255,255,.34));transform-origin:center;animation:rockPulse 2.8s ease-in-out infinite}
.rock-hand-line{fill:none;stroke:#f7f7f4;stroke-width:4.35;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 5px rgba(255,255,255,.30))}
.rock-hand-line--thumb{stroke-width:4.15}
.rock-mark--footer{width:58px;height:58px;margin:1rem auto 0;opacity:.9}
.rock-mark--footer svg{width:52px;height:52px}
body.loading{overflow:hidden}
.hero{position:relative;height:var(--hero-height,100svh);min-height:720px;max-height:950px;margin-top:1rem;padding:0 1.2rem 2.2rem;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;border-radius:var(--hero-radius) var(--hero-radius) 0 0;background:#030304;isolation:isolate;touch-action:pan-x pan-y}
.hero__cover{position:absolute;inset:0;background:url('../assets/images/cover.webp') center/cover;filter:grayscale(.62) contrast(1.08) brightness(.78);transform-origin:center top;will-change:transform}
.hero__cover::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,rgba(2,2,3,.08),rgba(2,2,3,.12) 28%,rgba(2,2,3,.58) 72%,var(--bg)),radial-gradient(circle at center 72%,rgba(255,255,255,.06),rgba(2,2,3,.42) 66%)}
.hero__particulas{position:absolute;inset:0;z-index:1;width:100%;height:100%;opacity:.5;pointer-events:none}
.hero__conteudo{position:relative;z-index:2;width:100%;text-align:center}
.hero__logo{width:100%;max-width:250px;max-height:250px;margin:0 auto .8rem;opacity:0;transform:translateY(20px) scale(.94);filter:drop-shadow(0 18px 34px rgba(0,0,0,.78)) drop-shadow(0 0 22px rgba(255,255,255,.20));transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1)}
.hero__logo.entrou{opacity:1;transform:translateY(0) scale(1);animation:logoBreathing 4.8s ease-in-out 1s infinite}
.hero__titulo{max-width:610px;margin:0 auto;color:#fff;font-size:clamp(1.15rem,4.2vw,2rem);line-height:1.12;font-weight:900;letter-spacing:.11em;text-transform:uppercase;text-shadow:0 10px 34px rgba(0,0,0,.78),0 0 22px rgba(255,255,255,.14)}
.hero-ashes{position:absolute;left:50%;bottom:4.8rem;width:min(94%,560px);height:180px;transform:translateX(-50%);pointer-events:none;z-index:-1;overflow:hidden}
.hero-ashes span{position:absolute;display:block;width:3px;height:3px;border-radius:999px;background:rgba(247,247,244,.50);box-shadow:0 0 10px rgba(255,255,255,.28);filter:blur(.1px);animation:ashFloat 9s linear infinite}
.hero-ashes span:nth-child(1){left:8%;top:78%;width:2px;height:2px;animation-duration:10s;animation-delay:-1s;--ash-x:12px}
.hero-ashes span:nth-child(2){left:17%;top:52%;width:4px;height:4px;opacity:.65;animation-duration:13s;animation-delay:-5s;--ash-x:-18px}
.hero-ashes span:nth-child(3){left:26%;top:86%;width:2px;height:2px;opacity:.46;animation-duration:8s;animation-delay:-3s;--ash-x:22px}
.hero-ashes span:nth-child(4){left:35%;top:66%;width:5px;height:5px;opacity:.41;animation-duration:14s;animation-delay:-7s;--ash-x:-12px}
.hero-ashes span:nth-child(5){left:44%;top:92%;width:2px;height:2px;opacity:.58;animation-duration:9s;animation-delay:-2s;--ash-x:16px}
.hero-ashes span:nth-child(6){left:52%;top:58%;width:3px;height:3px;opacity:.48;animation-duration:12s;animation-delay:-6s;--ash-x:-24px}
.hero-ashes span:nth-child(7){left:61%;top:80%;width:6px;height:2px;border-radius:2px;opacity:.38;animation-duration:15s;animation-delay:-4s;--ash-x:28px}
.hero-ashes span:nth-child(8){left:70%;top:45%;width:2px;height:2px;opacity:.62;animation-duration:8.5s;animation-delay:-3.5s;--ash-x:-16px}
.hero-ashes span:nth-child(9){left:78%;top:88%;width:4px;height:4px;opacity:.43;animation-duration:13.5s;animation-delay:-8s;--ash-x:13px}
.hero-ashes span:nth-child(10){left:86%;top:63%;width:2px;height:2px;opacity:.53;animation-duration:10.5s;animation-delay:-1.5s;--ash-x:-20px}
.hero-ashes span:nth-child(11){left:92%;top:76%;width:5px;height:2px;border-radius:2px;opacity:.34;animation-duration:16s;animation-delay:-9s;--ash-x:18px}
.hero-ashes span:nth-child(12){left:12%;top:35%;width:3px;height:3px;opacity:.36;animation-duration:11.5s;animation-delay:-7.5s;--ash-x:-14px}
.hero__branding{display:inline-block;margin-top:.75rem;font-size:clamp(.82rem,2.8vw,1.05rem);font-weight:800;letter-spacing:.2em;text-transform:uppercase;text-shadow:0 0 18px rgba(255,255,255,.30)}
.hero__redes{display:flex;justify-content:center;gap:.55rem;margin-top:1.6rem;opacity:0;transform:translateY(16px);transition:opacity .7s ease,transform .7s ease}
.hero__redes.entrou{opacity:1;transform:translateY(0)}
.hero__redes a{display:grid;place-items:center;width:54px;height:54px;border:1px solid rgba(255,255,255,.11);border-radius:999px;background:rgba(255,255,255,.055);backdrop-filter:blur(10px);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 16px 34px rgba(0,0,0,.42);transition:transform .25s ease}
.hero__redes a:hover{transform:translateY(-3px) scale(1.12)}
.hero__redes svg{width:34px;height:34px;fill:#fff;filter:drop-shadow(0 0 10px rgba(255,255,255,.3))}
.corpo{background:var(--bg);border-radius:0 0 var(--hero-radius) var(--hero-radius)}
.secao{padding:2.15rem 1.5rem}
.secao-titulo{position:relative;margin-bottom:1.5rem;text-align:center;font-size:clamp(1.1rem,3vw,1.5rem);font-weight:900;letter-spacing:.45em;text-transform:uppercase;background:linear-gradient(135deg,#fff,#b8bcc5);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 0 26px rgba(255,255,255,.16)}
.secao-titulo::after{content:'';display:block;width:76px;height:1px;margin:.85rem auto 0;background:linear-gradient(90deg,transparent,#fff,transparent);box-shadow:0 0 18px rgba(255,255,255,.42)}
.ouca-subtitulo{max-width:520px;margin:-.78rem auto 1.25rem;text-align:center;color:rgba(247,247,244,.66);font-size:.72rem;font-weight:600;line-height:1.45;letter-spacing:.08em;text-transform:uppercase}
.ouca-card,.spotify-card,.bio-clean__text-wrap,.repertorio-card,.contato__email,.card-rede{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.14);border-radius:var(--radius);background:linear-gradient(145deg,rgba(255,255,255,.078),rgba(255,255,255,.025));backdrop-filter:blur(18px) saturate(120%);box-shadow:0 24px 62px rgba(0,0,0,.50),inset 0 1px 0 rgba(255,255,255,.09)}
.ouca-card,.spotify-card{padding:1rem}
.ouca-card::before,.spotify-card::before,.repertorio-card::before,.card-rede::before,.btn-download::after{content:'';position:absolute;inset:-40% auto -40% -60%;width:44%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);transform:translateX(-120%) rotate(12deg);pointer-events:none}
.ouca-card:hover::before,.spotify-card:hover::before,.repertorio-card:hover::before,.card-rede:hover::before{animation:shine .9s ease forwards}
.btn-download::after{animation:shineLoop 3.2s ease-in-out infinite}
.ouca-card__player{position:relative;width:100%;aspect-ratio:16/9;margin-bottom:1rem;overflow:hidden;border:1px solid rgba(255,255,255,.10);border-radius:1rem;background:#000;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 18px 42px rgba(0,0,0,.45)}
.ouca-card__player iframe{display:block;width:100%;height:100%;border:0}
.secao--spotify{padding-top:.8rem;background:linear-gradient(180deg,#020203,#050609)}
.spotify-card iframe{position:relative;z-index:1;display:block;width:100%;height:352px;margin-bottom:1rem;border:0;border-radius:1rem;background:#000;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 18px 42px rgba(0,0,0,.45)}
.btn-download{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;overflow:hidden;padding:1rem 2rem;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:linear-gradient(135deg,#3e4249,#f5f5f5 48%,#8c929b);color:#07080b;font-size:.8rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase;box-shadow:0 12px 32px rgba(255,255,255,.12),0 0 0 1px rgba(255,255,255,.12);transition:transform .25s ease,box-shadow .25s ease}
.btn-download:hover{transform:translateY(-2px);box-shadow:0 16px 42px rgba(255,255,255,.24),0 0 0 1px rgba(255,255,255,.20)}
.btn-download--small{display:flex;width:max-content;margin:0 auto;padding:.78rem 1.35rem;font-size:.68rem;letter-spacing:.12em}
.bio{position:relative;overflow:hidden;background:var(--bg)}
.bio::before{content:'';position:absolute;inset:0;background:url('../assets/images/gallery-6.webp') center 42%/cover;filter:grayscale(.58) contrast(1.1) brightness(.72);opacity:.36;transform:scale(1.08)}
.bio::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,var(--bg),rgba(2,2,3,.70) 20%,rgba(2,2,3,.86) 74%,var(--bg)),radial-gradient(circle at 50% 40%,rgba(255,255,255,.10),transparent 34rem)}
.bio__conteudo{position:relative;z-index:1;max-width:640px;margin:0 auto}
.bio-clean__text-wrap{padding:1.35rem}
.bio-clean__text-wrap p{margin-bottom:1rem;color:var(--muted);font-size:1rem;line-height:1.82}
.bio-clean__text-wrap p:last-child{margin-bottom:0}
.repertorio{position:relative;overflow:hidden;background:linear-gradient(180deg,#020203,#07080b);isolation:isolate}
.repertorio::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,2,3,.50),rgba(2,2,3,.92)),url('../assets/images/gallery-4.webp') center/cover;filter:grayscale(.38) contrast(1.08) brightness(.76);opacity:.7;transform:scale(1.08);z-index:-2}
.repertorio::after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50% 12%,rgba(255,255,255,.09),transparent 34%);z-index:-1;pointer-events:none}
.repertorio .secao-titulo,.repertorio__grid{position:relative;z-index:1}
.repertorio__grid{display:grid;gap:1rem}
.repertorio-card{padding:1.35rem}
.repertorio-card h3{margin-bottom:.85rem;color:#fff;font-size:.9rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.repertorio-card p{color:var(--muted);font-size:.95rem;line-height:1.78}
.galeria{display:grid;grid-template-columns:repeat(3,1fr)}
.galeria__item{position:relative;aspect-ratio:1/1;overflow:hidden;background:#050506;cursor:pointer;opacity:0;transform:scale(.88);transition:opacity .55s cubic-bezier(.22,1,.36,1),transform .55s cubic-bezier(.22,1,.36,1)}
.galeria__item.entrou{opacity:.78;transform:scale(1)}
.galeria__item:hover{opacity:1}
.galeria__item img{width:100%;height:100%;object-fit:cover;filter:grayscale(.22) contrast(1.05);transition:transform .4s ease}
.galeria__item:hover img{transform:scale(1.06)}
.galeria__item::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.16),rgba(255,255,255,.03));opacity:0;transition:opacity .3s ease}
.galeria__item:hover::after{opacity:1}
.contato{position:relative;overflow:hidden;text-align:center;border-radius:0 0 var(--hero-radius) var(--hero-radius)}
.contato__bg{position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,2,3,.50),rgba(2,2,3,.92)),url('../assets/images/gallery-8.webp') center/cover;filter:grayscale(.38) contrast(1.08) brightness(.76);opacity:.7;transform:scale(1.08)}
.contato__conteudo{position:relative;z-index:1;max-width:600px;margin:0 auto}
.contato__email{display:inline-flex;max-width:100%;margin-bottom:1.25rem;padding:1rem 1.35rem;color:#fff;overflow-wrap:anywhere}
.contato__redes{display:flex;justify-content:center;flex-wrap:wrap;gap:.9rem;margin-bottom:1.6rem}
.card-rede{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.68rem;width:118px;min-height:118px;padding:1.15rem 1rem;color:#fff;font-size:.82rem;font-weight:800;text-transform:none;letter-spacing:0;transition:transform .25s ease,border-color .25s ease,background .25s ease,box-shadow .25s ease}
.card-rede::before{animation:shineLoop 4.6s ease-in-out infinite}
.card-rede:nth-child(2)::before{animation-delay:1.5s}
.card-rede:nth-child(3)::before{animation-delay:3s}
.card-rede svg{position:relative;z-index:1;width:31px;height:31px;fill:#f7f7f4;filter:drop-shadow(0 0 10px rgba(255,255,255,.30))}
.card-rede span{position:relative;z-index:1;color:rgba(247,247,244,.88);font-size:.82rem;font-weight:800}
.card-rede:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.34);background:rgba(255,255,255,.10);box-shadow:0 26px 70px rgba(0,0,0,.54),inset 0 1px 0 rgba(255,255,255,.12)}
.card-rede:hover svg{filter:drop-shadow(0 0 14px rgba(255,255,255,.64))}
.rodape{padding:1.5rem 1rem 2rem;text-align:center}
.rodape p{margin-bottom:.65rem;color:rgba(247,247,244,.62);font-size:.74rem}
.rodape nav{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;color:rgba(247,247,244,.62);font-size:.72rem}
.lightbox{display:none;position:fixed;inset:0;z-index:9998;align-items:center;justify-content:center;padding:1rem;background:rgba(0,0,0,.96)}
.lightbox.aberto{display:flex}
.lightbox__img{max-width:90vw;max-height:90vh;border-radius:.75rem;object-fit:contain;box-shadow:0 0 82px rgba(255,255,255,.14)}
.lightbox__fechar,.lightbox__nav{position:absolute;border:0;background:rgba(255,255,255,.10);color:rgba(255,255,255,.72);cursor:pointer;transition:background .25s ease,color .25s ease}
.lightbox__fechar{top:1rem;right:1rem;width:42px;height:42px;border-radius:999px;font-size:2rem;line-height:1}
.lightbox__nav{top:50%;width:44px;height:44px;border-radius:999px;font-size:2rem;transform:translateY(-50%)}
.lightbox__nav--prev{left:1rem}.lightbox__nav--next{right:1rem}
.lightbox__fechar:hover,.lightbox__nav:hover{background:rgba(255,255,255,.22);color:#fff}
.animar{opacity:0;transform:translateY(24px) scale(.97);transition:opacity .65s ease,transform .65s ease}
.animar.visivel{opacity:1;transform:translateY(0) scale(1)}
.delay-1{transition-delay:.1s}.delay-2{transition-delay:.2s}
.legal{display:grid;place-items:center;min-height:100vh;padding:2rem;background:#020203}
.legal main{max-width:680px;padding:2rem;border:1px solid var(--line);border-radius:1.2rem;background:linear-gradient(145deg,rgba(255,255,255,.078),rgba(255,255,255,.025))}
.legal h1{margin-bottom:1rem;font-size:1.45rem}.legal p{margin-bottom:1rem;color:var(--muted)}
@keyframes pulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.82}}
@keyframes rockFloat{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-5px) rotate(2deg)}}
@keyframes rockPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.07)}}
@keyframes rockBaseGlow{0%,100%{opacity:.35;transform:translateX(-50%) scaleX(.82)}50%{opacity:.85;transform:translateX(-50%) scaleX(1.08)}}
@keyframes rockScan{0%,65%{opacity:0;transform:translateX(-120%) rotate(14deg)}76%{opacity:1}100%{opacity:0;transform:translateX(350%) rotate(14deg)}}
@keyframes ashFloat{0%{opacity:0;transform:translate3d(0,34px,0) rotate(0deg) scale(.8)}15%{opacity:.72}70%{opacity:.45}100%{opacity:0;transform:translate3d(var(--ash-x,18px),-138px,0) rotate(170deg) scale(1.18)}}
@keyframes logoBreathing{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(0,-6px,0) scale(1.018)}}
@keyframes shine{0%{opacity:0;transform:translateX(-120%) rotate(12deg)}24%{opacity:1}100%{opacity:0;transform:translateX(340%) rotate(12deg)}}
@keyframes shineLoop{0%,72%{opacity:0;transform:translateX(-120%) rotate(12deg)}82%{opacity:.9}100%{opacity:0;transform:translateX(340%) rotate(12deg)}}
@media (min-width:640px){.secao{padding-left:2.5rem;padding-right:2.5rem}.repertorio__grid{grid-template-columns:1fr 1fr}.hero{margin-top:2rem}}
@media (max-width:480px){.hero{min-height:720px;margin-top:.5rem}.hero__logo{max-width:210px}.hero__titulo{font-size:1.12rem;letter-spacing:.075em}.hero-ashes{bottom:4.7rem;height:150px;width:100%}.hero__branding{font-size:.82rem;letter-spacing:.14em}.secao-titulo{letter-spacing:.28em}.ouca-card,.spotify-card{padding:.75rem;border-radius:1.1rem}.ouca-card__player,.spotify-card iframe{border-radius:.85rem}.spotify-card iframe{height:352px}.btn-download{width:100%;padding:1rem 1.15rem}.btn-download--small{width:max-content;max-width:100%;padding:.72rem 1.1rem;font-size:.64rem}.contato__email{border-radius:1.1rem;font-size:.78rem}.card-rede{min-width:102px}.rock-mark{width:52px;height:52px}.lightbox__nav--prev{left:.25rem}.lightbox__nav--next{right:.25rem}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
