/* Fragoso — baseado no press kit v2 */
:root{--night:#101848;--navy:#1C2A6E;--ink:#121A45;--coral:#E8484C;--pink:#F4A3A8;--mustard:#F5B82E;--sky:#3F73D9;--cream:#FFF5E4;--snap:cubic-bezier(.2,.9,.3,1.2)}
*{box-sizing:border-box;margin:0}
body{font-family:"Archivo",sans-serif;background:var(--navy);color:var(--ink)}
a{color:var(--coral)}a:hover{color:var(--ink)}
.blocks{height:18px;background:linear-gradient(90deg,var(--coral) 0 14%,var(--mustard) 14% 22%,var(--sky) 22% 41%,var(--pink) 41% 52%,var(--coral) 52% 63%,var(--navy) 63% 70%,var(--mustard) 70% 82%,var(--pink) 82% 91%,var(--sky) 91%)}
.frame{max-width:960px;margin:0 auto;border-left:14px solid var(--coral);border-right:14px solid var(--coral);background:var(--navy)}
.sky{position:relative;overflow:hidden;background:var(--night);padding:72px 32px 84px;display:flex;flex-direction:column;align-items:center;gap:22px;border-bottom:6px solid var(--ink)}
.star{position:absolute;color:var(--cream);font-size:12px;line-height:1;animation:twinkle 2.6s ease-in-out infinite;pointer-events:none}
@keyframes twinkle{0%,100%{opacity:.15;transform:scale(.6)}50%{opacity:1;transform:scale(1.15)}}
.cloud{position:absolute;width:74px;height:22px;background:#fff;border-radius:22px;animation:drift linear infinite;opacity:.95}
.cloud::before,.cloud::after{content:"";position:absolute;background:#fff;border-radius:50%}
.cloud::before{width:30px;height:30px;left:12px;top:-15px}.cloud::after{width:22px;height:22px;left:38px;top:-10px}
@keyframes drift{from{transform:translateX(-140px)}to{transform:translateX(1100px)}}
.sun{position:absolute;left:-40px;bottom:-60px;width:180px;height:180px;border-radius:50%;background:var(--mustard);border:6px solid var(--ink);animation:bob 6s ease-in-out infinite}
.arch-deco{position:absolute;right:28px;bottom:0;width:110px;height:150px;background:var(--coral);border:6px solid var(--ink);border-bottom:none;border-radius:60px 60px 0 0}
.arch-deco::after{content:"";position:absolute;left:24px;right:24px;bottom:0;height:86px;background:var(--night);border:5px solid var(--ink);border-bottom:none;border-radius:40px 40px 0 0}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
.hero-row{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;gap:22px;flex-wrap:wrap}
.badge-img{height:64px}
.wordmark-img{height:clamp(2.6rem,8vw,4.4rem);display:block;filter:drop-shadow(4px 4px 0 var(--coral)) drop-shadow(4px 4px 0 var(--sky));animation:bob 5s ease-in-out infinite}
.ontour{position:relative;z-index:2;font-family:"Bungee",sans-serif;font-size:1.25rem;color:var(--ink);background:var(--coral);border:4px solid var(--ink);box-shadow:5px 5px 0 var(--mustard);padding:6px 18px;transform-origin:50% -30px;animation:swing 3.2s ease-in-out infinite}
@keyframes swing{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}
.tour-row{position:relative;z-index:2}.diggy{position:absolute;left:calc(100% + 18px);top:50%;height:128px;margin-top:-30px;filter:drop-shadow(4px 4px 0 var(--mustard));animation:haunt 3.2s ease-in-out infinite}@keyframes haunt{0%,100%{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-12px) rotate(5deg)}}
@keyframes chase{0%{transform:translate(-120px,0) perspective(500px) rotateY(58deg) rotate(14deg)}12%{transform:translate(120px,-26px) perspective(500px) rotateY(58deg) rotate(6deg)}25%{transform:translate(260px,8px) perspective(500px) rotateY(58deg) rotate(18deg)}37%{transform:translate(400px,-20px) perspective(500px) rotateY(58deg) rotate(8deg)}50%{transform:translate(540px,10px) perspective(500px) rotateY(58deg) rotate(16deg)}62%{transform:translate(680px,-24px) perspective(500px) rotateY(58deg) rotate(6deg)}75%{transform:translate(820px,6px) perspective(500px) rotateY(58deg) rotate(18deg)}87%{transform:translate(960px,-18px) perspective(500px) rotateY(58deg) rotate(8deg)}100%{transform:translate(1100px,0) perspective(500px) rotateY(58deg) rotate(14deg)}}
.ribbon{background:var(--mustard);border-top:5px solid var(--ink);border-bottom:5px solid var(--ink);overflow:hidden;transform:rotate(-1.5deg);margin:-18px -20px 0;position:relative;z-index:3}
.track{display:flex;width:max-content;animation:marquee 26s linear infinite}
.track span{font-family:"Bungee",sans-serif;font-size:1rem;color:var(--ink);padding:10px 0;white-space:nowrap}
@keyframes marquee{to{transform:translateX(-50%)}}
.panel{padding:56px 40px;border-bottom:6px solid var(--ink);position:relative}
.p-bio{background:var(--coral)}.p-tech{background:var(--sky)}.p-hosp{background:var(--mustard)}
.headline{font-family:"Bungee",sans-serif;font-size:clamp(2rem,5vw,3.2rem);line-height:1;color:var(--cream);text-shadow:2px 2px 0 var(--pink),4px 4px 0 var(--pink),6px 6px 0 var(--ink),8px 8px 0 var(--ink);margin-bottom:32px}
.p-hosp .headline{color:var(--sky);text-shadow:2px 2px 0 var(--cream),4px 4px 0 var(--cream),6px 6px 0 var(--ink),8px 8px 0 var(--ink)}
.meta-strip{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:40px}
.sign{background:var(--cream);border:4px solid var(--ink);box-shadow:5px 5px 0 var(--ink);padding:10px 16px;font-family:"Space Mono",monospace;font-size:.9rem;font-weight:700}
.sign b{display:block;font-family:"Bungee",sans-serif;font-weight:400;font-size:.7rem;color:var(--coral);margin-bottom:4px;letter-spacing:.04em}
.bio-grid{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:40px;align-items:start}
.arch{position:relative;aspect-ratio:3/4.2;border-radius:999px 999px 0 0;border:8px solid var(--ink);box-shadow:0 0 0 10px var(--mustard),0 0 0 15px var(--ink),14px 14px 0 15px var(--ink);background:var(--sky);overflow:hidden;margin:16px}
.arch img{width:100%;height:100%;object-fit:cover;object-position:50% 34%;display:block;transition:transform .6s var(--snap)}
.arch:hover img{transform:scale(1.06)}
.arch .cap{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);font-family:"Space Mono",monospace;font-size:10px;font-weight:700;background:var(--cream);color:var(--ink);border:3px solid var(--ink);padding:3px 8px;white-space:nowrap}
.bio-card{background:var(--cream);border:4px solid var(--ink);box-shadow:8px 8px 0 var(--ink);padding:28px;display:flex;flex-direction:column;gap:14px}
.bio-card p{font-size:1rem;line-height:1.55;text-wrap:pretty}
.bio-card p.lede{font-family:"Bungee",sans-serif;font-size:1.55rem;line-height:1.15;color:var(--navy)}
.checker{height:28px;background:repeating-conic-gradient(var(--cream) 0 25%,var(--sky) 0 50%) 0 0/28px 28px;border-bottom:6px solid var(--ink)}
.checker.alt{background:repeating-conic-gradient(var(--cream) 0 25%,var(--coral) 0 50%) 0 0/28px 28px}
.rider-list{display:flex;flex-direction:column;gap:10px;margin-bottom:28px}
.rider-item{display:flex;align-items:center;gap:14px;background:var(--cream);border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);padding:10px 16px;font-size:.95rem;transition:transform .12s var(--snap),box-shadow .12s var(--snap)}
.rider-item:hover{transform:translate(4px,4px);box-shadow:0 0 0 var(--ink)}
.qty{flex-shrink:0;min-width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-family:"Bungee",sans-serif;font-size:.85rem;background:var(--mustard);color:var(--ink);border:3px solid var(--ink)}
.p-hosp .qty{background:var(--pink)}
.note-box{background:var(--ink);color:var(--cream);border:4px solid var(--ink);box-shadow:6px 6px 0 var(--coral);padding:16px 20px;font-family:"Bungee",sans-serif;font-size:.85rem;line-height:1.4;margin-bottom:32px}
.booth{background:var(--cream);border:4px solid var(--ink);box-shadow:8px 8px 0 var(--ink);padding:22px}
.booth h3,.sub{font-family:"Bungee",sans-serif;font-weight:400;font-size:.85rem;color:var(--coral);margin-bottom:16px;letter-spacing:.04em}
.booth-row{display:flex;gap:12px;align-items:flex-end;justify-content:center;flex-wrap:wrap}
.gear{border:3px solid var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:6px;font-family:"Space Mono",monospace;font-size:10px;font-weight:700;text-align:center;padding:8px 6px}
.gear .lbl{font-family:"Bungee",sans-serif;font-size:10px;font-weight:400}
.gear.tt{width:118px;height:118px;background:var(--pink)}
.gear.cdj{width:92px;height:118px;background:var(--sky);color:var(--cream)}
.gear.mixer{width:100px;height:130px;background:var(--mustard)}
.gear.fx{width:130px;height:46px;background:var(--coral);color:var(--cream);flex-direction:row;justify-content:center;gap:8px}
.disc{width:66px;height:66px;border-radius:50%;background:repeating-radial-gradient(circle,#111 0 2px,#2a2a2a 2px 4px);border:3px solid var(--ink);position:relative;animation:spin 1.8s linear infinite}
.disc::after{content:"";position:absolute;inset:22px;border-radius:50%;background:var(--coral);border:2px solid var(--ink)}
.disc::before{content:"";position:absolute;top:3px;left:50%;width:3px;height:10px;background:var(--cream);z-index:1}
.jog{width:56px;height:56px;border-radius:50%;background:var(--ink);border:3px solid var(--cream);position:relative;animation:spin 4s linear infinite}
.jog::after{content:"";position:absolute;top:4px;left:50%;width:4px;height:12px;margin-left:-2px;background:var(--mustard);border-radius:2px}
@keyframes spin{to{transform:rotate(360deg)}}
.faders{display:flex;gap:7px;height:52px;align-items:stretch}
.faders i{width:5px;background:var(--ink);position:relative}
.faders i::after{content:"";position:absolute;left:-5px;width:15px;height:8px;background:var(--cream);border:2px solid var(--ink);animation:fade 2.4s ease-in-out infinite}
.faders i:nth-child(2)::after{animation-delay:-.6s}.faders i:nth-child(3)::after{animation-delay:-1.2s}.faders i:nth-child(4)::after{animation-delay:-1.8s}
@keyframes fade{0%,100%{top:2px}50%{top:38px}}
.stack{display:flex;flex-direction:column;align-items:center;gap:8px}
.two-col{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:36px;margin-top:12px}
.links-grid{display:flex;flex-direction:column;gap:12px}
.link-tag{display:inline-flex;align-items:center;gap:10px;width:fit-content;background:var(--cream);color:var(--ink);border:4px solid var(--ink);box-shadow:6px 6px 0 var(--coral);padding:12px 18px;font-family:"Bungee",sans-serif;font-size:.85rem;text-decoration:none;transition:transform .14s var(--snap),box-shadow .14s var(--snap),background .14s,color .14s}
.link-tag::after{content:"→";transition:transform .2s var(--snap)}
.link-tag:hover{transform:translate(6px,6px);box-shadow:0 0 0 var(--coral);background:var(--coral);color:var(--cream)}
.link-tag:hover::after{transform:translateX(6px)}
.social-row{display:flex;gap:12px}
.social-row a{width:50px;height:50px;border-radius:50%;background:var(--ink);color:var(--mustard);border:4px solid var(--ink);box-shadow:4px 4px 0 var(--cream);display:grid;place-items:center;text-decoration:none;font-size:22px;transition:transform .2s var(--snap),background .15s,color .15s}
.social-row a:hover{transform:translateY(-6px) rotate(-10deg);background:var(--coral);color:var(--cream)}
.contact-card{background:var(--ink);color:var(--cream);border:4px solid var(--ink);box-shadow:6px 6px 0 var(--coral);padding:22px;font-family:"Space Mono",monospace;font-size:.95rem;line-height:1.7}
.contact-card{position:relative}.diggy-mini{position:absolute;right:14px;top:-58px;height:96px;filter:drop-shadow(4px 4px 0 var(--ink));animation:haunt 3.6s ease-in-out infinite}
.contact-card b{display:block;font-family:"Bungee",sans-serif;font-weight:400;font-size:.8rem;color:var(--mustard);margin-bottom:8px}
.contact-card a{color:var(--cream)}.contact-card a:hover{color:var(--mustard)}
.col{display:flex;flex-direction:column;gap:28px}
footer{background:var(--night);color:var(--cream);font-family:"Space Mono",monospace;font-size:11px;letter-spacing:.08em;padding:22px;text-align:center}
@media (max-width:720px){.panel{padding:44px 22px}.bio-grid,.two-col{grid-template-columns:minmax(0,1fr)}.arch{max-width:300px;margin:16px auto 24px}.frame{border-width:0 6px}.arch-deco{display:none}}

/* ── Site: links do hero, tabs e páginas ── */
a.hero-row{text-decoration:none}
.tabs{display:grid;grid-template-columns:repeat(4,1fr);background:var(--ink);border-bottom:6px solid var(--ink);gap:6px;padding:22px 6px 6px;position:relative;z-index:2}
.tab{font-family:"Bungee",sans-serif;font-size:clamp(.8rem,2.4vw,1.15rem);text-align:center;text-decoration:none;color:var(--ink);padding:16px 6px;border:4px solid var(--ink);box-shadow:4px 4px 0 var(--cream);transition:transform .14s var(--snap),box-shadow .14s var(--snap)}
.tab-bio{background:var(--coral)}.tab-agenda{background:var(--sky);color:var(--cream)}.tab-releases{background:var(--mustard)}.tab-bookings{background:var(--pink)}
.tab:hover{color:inherit;transform:translate(4px,4px);box-shadow:0 0 0 var(--cream)}
.tab.on{transform:translateY(-6px);box-shadow:4px 10px 0 var(--cream);outline:3px dashed var(--cream);outline-offset:-10px}
.p-book{background:var(--pink)}.p-past{background:var(--navy)}
.headline.small{font-size:clamp(1.4rem,3.5vw,2rem)}
.note-box.err{box-shadow:6px 6px 0 var(--cream)}
/* Agenda */
.gig-list{display:flex;flex-direction:column;gap:14px}
.gig{display:flex;align-items:center;gap:18px;background:var(--cream);border:4px solid var(--ink);box-shadow:6px 6px 0 var(--ink);padding:12px 16px}
.gig-date{flex-shrink:0;width:74px;text-align:center;background:var(--mustard);border:3px solid var(--ink);padding:6px 0;display:flex;flex-direction:column;line-height:1}
.gig-date .d{font-family:"Bungee",sans-serif;font-size:1.6rem}.gig-date .m{font-family:"Bungee",sans-serif;font-size:.8rem}.gig-date .y{font-family:"Space Mono",monospace;font-size:.7rem;font-weight:700;margin-top:3px}
.gig-info{flex:1;display:flex;flex-direction:column;gap:4px;min-width:0}
.gig-info b{font-family:"Bungee",sans-serif;font-weight:400;font-size:1.05rem}
.gig-info span{font-family:"Space Mono",monospace;font-size:.85rem}
.gig-btn{box-shadow:4px 4px 0 var(--coral);padding:8px 12px;font-size:.75rem}
.gig-list.past .gig{opacity:.8;box-shadow:4px 4px 0 var(--ink)}.gig-list.past .gig-date{background:var(--pink)}
/* Releases */
.rel-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:28px}
.rel{background:var(--cream);border:4px solid var(--ink);box-shadow:8px 8px 0 var(--ink);display:flex;flex-direction:column}
.rel-cover{position:relative;aspect-ratio:1;border-bottom:4px solid var(--ink);background:var(--night);display:grid;place-items:center;overflow:hidden}
.rel-cover img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s var(--snap)}
.rel:hover .rel-cover img{transform:scale(1.05)}
.disc.big{width:60%;height:auto;aspect-ratio:1}.disc.big::after{inset:36%}
.rel-format{position:absolute;top:10px;left:10px;font-family:"Bungee",sans-serif;font-size:.7rem;background:var(--coral);color:var(--cream);border:3px solid var(--ink);padding:3px 8px}
.rel-body{padding:16px;display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.rel-body h3{font-family:"Bungee",sans-serif;font-weight:400;font-size:1.05rem;line-height:1.15}
.rel-body p{font-family:"Space Mono",monospace;font-size:.82rem}
.rel-body .link-tag{padding:8px 14px;font-size:.75rem;box-shadow:4px 4px 0 var(--coral)}
button.link-tag{cursor:pointer}
.bc-player{border:0;width:100%;height:120px;display:block}
/* Bookings */
.book-form{display:flex;flex-direction:column;gap:14px;background:var(--cream);border:4px solid var(--ink);box-shadow:8px 8px 0 var(--ink);padding:22px}
.book-form label{display:flex;flex-direction:column;gap:6px;font-family:"Bungee",sans-serif;font-size:.72rem;color:var(--coral)}
.book-form input,.book-form textarea{font:inherit;font-family:"Space Mono",monospace;font-size:.95rem;color:var(--ink);background:#fff;border:3px solid var(--ink);padding:10px 12px;border-radius:0;width:100%}
.book-form input:focus,.book-form textarea:focus{outline:3px solid var(--mustard);outline-offset:1px}
.book-form .row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.book-form .hp{position:absolute;left:-9999px}
footer a{color:var(--mustard);text-decoration:none}footer a:hover{color:var(--coral)}
.foot-social{justify-content:center;margin-bottom:14px}.foot-social:empty{display:none}
@media (max-width:720px){.tabs{grid-template-columns:repeat(2,1fr)}.gig{flex-wrap:wrap}.book-form .row2{grid-template-columns:1fr}.diggy{display:none}}