/*
Theme Name: Dreamix Eventos
Theme URI: https://dreamix.com.br
Author: Dreamix Eventos
Description: Tema do site da Dreamix Eventos. Temas com galerias, parceiros com Instagram, orçamento por WhatsApp.
Version: 1.0.0
Text Domain: dreamix
*/
:root{--bg:#0E0716;--bg2:#150B22;--ink:#F6EEDD;--soft:#D8CCE6;--mute:#B9A9CC;--gold:#E6C27D;--gold2:#F3DBA2;--gold3:#C79A4B;--line:rgba(246,238,221,.14);--serif:'Playfair Display',Georgia,serif;--sans:'Montserrat',system-ui,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55;overflow-x:clip}
a{color:inherit;text-decoration:none}
img{max-width:100%}
a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--gold2);outline-offset:3px}
section[id],.tema-bloco{scroll-margin-top:84px}
.wrap{max-width:1200px;margin:0 auto;padding-left:clamp(16px,4vw,32px);padding-right:clamp(16px,4vw,32px)}
.sec{padding-top:clamp(48px,7vw,96px);padding-bottom:clamp(48px,7vw,96px)}
.eyebrow{font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
h1,h2,h3{font-family:var(--serif);margin:0;text-wrap:balance}
h2{font-weight:700;font-size:clamp(32px,4.2vw,52px);line-height:1.1}
.lead{margin:0;font-size:17px;color:var(--soft)}
.stack{display:flex;flex-direction:column}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border-radius:999px;font-weight:700;font-size:14px;letter-spacing:.03em;cursor:pointer;border:0;font-family:var(--sans)}
.btn-gold{background:linear-gradient(135deg,var(--gold2),var(--gold3));color:#1A0F2A}
.btn-line{border:1px solid rgba(230,194,125,.55);color:var(--ink);font-weight:600;background:transparent}
.btn-lg{min-height:56px;padding:0 32px;font-size:16px}
/* topo */
.topo{position:sticky;top:0;z-index:50;background:rgba(14,7,22,.9);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(246,238,221,.08)}
.topo .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 32px;padding-top:14px;padding-bottom:14px}
.logo{font-family:var(--serif);font-size:30px;font-weight:700;line-height:1}
.logo em{font-weight:600;color:var(--gold)}
.menu{display:flex;flex-wrap:wrap;gap:4px 28px;font-size:14px;font-weight:500;letter-spacing:.04em}
.menu a{padding:12px 0}
/* hero */
.hero{position:relative;overflow:hidden;background:var(--bg)}
.hero-in{position:relative;min-height:clamp(600px,88vh,820px);display:flex;flex-direction:column;justify-content:flex-end}
.hero-bg{position:absolute;inset:0}
.hero-slide{position:absolute;inset:0;opacity:0;animation-name:heroFade;animation-timing-function:linear;animation-iteration-count:infinite}
.hero-slide:first-child{opacity:1}
.hero-slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.hero-slide span{position:absolute;right:clamp(16px,4vw,32px);bottom:20px;font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--gold2);text-shadow:0 1px 8px rgba(0,0,0,.7)}
.hero-fade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,7,22,.9) 0%,rgba(14,7,22,.62) 46%,rgba(14,7,22,.18) 100%),linear-gradient(to top,#0E0716 0%,rgba(14,7,22,.94) 26%,rgba(14,7,22,0) 62%)}
.hero-txt{position:relative;width:100%;gap:28px;padding-top:clamp(48px,8vw,96px);padding-bottom:clamp(40px,5vw,56px)}
.hero h1{max-width:760px;font-weight:800;font-size:clamp(48px,8vw,108px);line-height:.98;letter-spacing:-.01em;text-shadow:0 2px 24px rgba(0,0,0,.45)}
.hero h1 em{font-weight:700;color:var(--gold)}
.hero p{margin:0;max-width:540px;font-size:19px;color:#EDE4F6;text-shadow:0 1px 12px rgba(0,0,0,.5)}
.row{display:flex;flex-wrap:wrap;gap:14px}
.btn-ghost{border:1px solid rgba(243,219,162,.75);background:rgba(14,7,22,.35);color:var(--ink);font-weight:600}
.stats{display:flex;flex-wrap:wrap;gap:20px 48px;padding-top:20px;border-top:1px solid rgba(246,238,221,.22);max-width:560px}
.stats b{font-family:var(--serif);font-size:40px;line-height:1.1;color:var(--gold)}
.stats span{font-size:13px;color:var(--soft)}
.strip{position:relative;overflow:hidden;padding:0 0 28px}
.marq{display:flex;width:max-content;animation:marq 70s linear infinite}
.marq div{flex:0 0 auto;width:clamp(150px,16vw,200px);aspect-ratio:3/4;margin-right:14px;border-radius:16px;overflow:hidden;background:#2B1540;border:1px solid rgba(230,194,125,.22)}
.marq img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;display:block}
@keyframes marq{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.hero-slide{animation:none}.marq{animation:none}html{scroll-behavior:auto}}
/* reels */
.reels{display:flex;gap:20px;overflow-x:auto;padding-bottom:16px;scroll-snap-type:x mandatory}
.reel{flex:0 0 clamp(200px,22vw,250px);scroll-snap-align:start;position:relative;display:block;aspect-ratio:9/16;border-radius:22px;overflow:hidden;background:linear-gradient(160deg,#4B2A78,#1B0F2D);border:1px solid rgba(230,194,125,.22)}
.reel img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.reel .cap{position:absolute;left:0;right:0;bottom:0;padding:56px 18px 18px;background:linear-gradient(to top,rgba(14,7,22,.95),rgba(14,7,22,0));font-size:14px;font-weight:500}
.reel .cap b{display:block;font-size:12px;color:var(--gold2)}
.reel .play{position:absolute;top:50%;left:50%;width:64px;height:64px;margin:-32px 0 0 -32px;border-radius:50%;background:rgba(14,7,22,.62);border:1px solid rgba(243,219,162,.8);display:flex;align-items:center;justify-content:center;color:var(--gold2);font-size:22px}
/* temas */
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:20px}
.card{position:relative;display:block;aspect-ratio:3/4;border-radius:22px;overflow:hidden;background:#2B1540;border:1px solid rgba(230,194,125,.22)}
.card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.card .cap{position:absolute;left:0;right:0;bottom:0;padding:64px 18px 18px;background:linear-gradient(to top,rgba(14,7,22,.95),rgba(14,7,22,0));display:flex;flex-direction:column;gap:6px}
.card .cap b{font-family:var(--serif);font-size:24px;line-height:1.15}
.card .cap span{font-size:13px;font-weight:700;color:var(--gold)}
/* segmentos */
.seg{background:var(--bg2);border-top:1px solid rgba(246,238,221,.08);border-bottom:1px solid rgba(246,238,221,.08)}
.tabs{display:flex;flex-wrap:wrap;gap:14px}
.tab{flex:1 1 220px;display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:20px 24px;border-radius:20px;cursor:pointer;text-align:left;font-family:inherit;color:var(--ink);background:var(--bg);border:1px solid rgba(246,238,221,.2)}
.tab small{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}
.tab b{font-family:var(--serif);font-size:28px;line-height:1.1}
.tab[aria-pressed=true]{background:linear-gradient(160deg,#4B2A78,#241238);border:2px solid var(--gold)}
.panel{display:flex;flex-wrap:wrap;gap:28px;padding:clamp(24px,3.5vw,44px);border-radius:28px;background:linear-gradient(160deg,#3A2057,#1E1030);border:1px solid rgba(230,194,125,.25)}
.panel[hidden]{display:none}
.panel .l{flex:1 1 360px;min-width:0;display:flex;flex-direction:column;gap:16px}
.panel h3{font-size:clamp(26px,3vw,38px);line-height:1.15}
.panel p{margin:0;font-size:17px;color:#E4D9F0}
.panel ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}
.panel li:before{content:"✦ ";color:var(--gold);font-weight:700}
.cond{flex:1 1 300px;min-width:0;display:flex;flex-direction:column;gap:14px;padding:26px;border-radius:20px;background:var(--bg);border:1px dashed rgba(230,194,125,.6)}
.cond .eyebrow{font-weight:700;letter-spacing:.16em}
.cond big{font-family:var(--serif);font-size:56px;font-weight:800;line-height:1;color:var(--gold2)}
.cond span{font-size:15px;color:var(--soft)}
.cond .btn{margin-top:auto}
/* parceiros */
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}
.pcard{display:flex;flex-direction:column;gap:14px;padding:22px;border-radius:22px;background:var(--bg2);border:1px solid var(--line)}
.pcard .top{display:flex;align-items:center;gap:14px}
.pcard i{flex:0 0 auto;width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--gold2),var(--gold3));color:#1A0F2A;font-family:var(--serif);font-weight:700;font-size:20px;font-style:normal}
.pcard b{font-family:var(--serif);font-size:20px;line-height:1.2}
.pcard small{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.pcard em{font-style:normal;font-size:14px;font-weight:700;color:var(--gold)}
/* pedido */
.pedido{background:var(--bg2);border-top:1px solid rgba(246,238,221,.08)}
.pedido .wrap{display:flex;flex-wrap:wrap;gap:48px 72px;align-items:flex-start}
.how{display:flex;flex-direction:column;gap:12px;padding:20px 22px;border-radius:18px;border:1px solid rgba(230,194,125,.3);background:var(--bg);max-width:460px;font-size:15px;color:#E4D9F0}
.fones a{display:block;font-family:var(--serif);font-size:30px;font-weight:700;color:var(--gold)}
.form{flex:1 1 400px;min-width:0;display:flex;flex-direction:column;gap:22px;padding:clamp(20px,3vw,36px);border-radius:28px;background:var(--bg);border:1px solid rgba(230,194,125,.25)}
.form label,.form .lab{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);display:block;margin-bottom:8px}
.form input[type=text]{width:100%;min-height:52px;padding:0 18px;border-radius:14px;border:1px solid rgba(246,238,221,.22);background:#1A0F2A;color:var(--ink);font-family:var(--sans);font-size:16px}
.pills{display:flex;flex-wrap:wrap;gap:10px}
.pill{min-height:48px;padding:0 20px;border-radius:999px;border:1px solid rgba(246,238,221,.3);background:transparent;color:var(--ink);font-family:var(--sans);font-size:14px;font-weight:600;cursor:pointer}
.pill[aria-pressed=true]{border-color:var(--gold);background:var(--gold);color:#1A0F2A;font-weight:700}
.two{display:flex;flex-wrap:wrap;gap:22px}.two>div{flex:1 1 160px;min-width:0}
.ind{display:flex;flex-direction:column;gap:12px;padding:18px;border-radius:18px;border:1px dashed rgba(230,194,125,.5)}
.ind .ben{font-size:14px;font-weight:700;color:var(--gold2)}
.note{font-size:13px;color:var(--mute);text-align:center}
/* rodape */
.rodape{border-top:1px solid rgba(246,238,221,.1)}
.rodape .wrap{display:flex;flex-wrap:wrap;gap:36px 64px;justify-content:space-between;padding-top:48px;padding-bottom:24px}
.rodape .copy{font-size:13px;color:var(--mute);padding-bottom:32px}
.rodape a.s{display:block;padding:8px 0}
/* galeria de temas */
.chips{display:flex;flex-wrap:wrap;gap:10px;padding-top:6px}
.chip{display:inline-flex;align-items:center;min-height:44px;padding:0 20px;border-radius:999px;border:1px solid rgba(230,194,125,.55);font-size:14px;font-weight:600}
.tema-bloco{display:flex;flex-direction:column;gap:22px}
.tema-bloco header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px}
.tema-bloco h2{font-size:clamp(28px,3.4vw,40px)}
.gal{column-width:260px;column-gap:14px}
.gal a,.gal div{display:block;break-inside:avoid;margin:0 0 14px;border-radius:14px;overflow:hidden;background:#2B1540}
.gal img{display:block;width:100%;height:auto}
.gal-all{display:flex;flex-direction:column;gap:56px}
