/* Milena — OUT EDITS | pegada editorial clara: papel + tinta + tipografia gigante (código original) */
:root{
  --papel:#faf2fc; --papel2:#f0dffa; --tinta:#400a4e; --cinza:#67506f;
  --linha:rgba(64,10,78,.3); --vivo:#a21caf; --max:1280px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--papel);color:var(--tinta);font-family:'Inter',system-ui,sans-serif;line-height:1.6;overflow-x:hidden}
img{display:block;max-width:100%}
a{color:inherit}
.skip{position:absolute;left:-999px}
.skip:focus{left:12px;top:12px;background:var(--tinta);color:#fff;padding:8px 14px;border-radius:10px;z-index:99}

/* topo */
.topo{display:flex;justify-content:space-between;align-items:center;padding:22px 40px;gap:16px}
.topo nav{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.topo nav a{font-weight:700;font-size:.86rem;letter-spacing:.04em;text-decoration:none}
.topo nav a:hover{color:var(--vivo)}
.topo nav i{font-style:normal;color:var(--tinta)}
.hamb{display:none;flex-direction:column;gap:5px;background:none;border:0;padding:10px;cursor:pointer}
.hamb span{width:24px;height:2px;background:var(--tinta);display:block}
.menu-mobile{display:none;flex-direction:column;gap:2px;padding:6px 40px 20px}
.menu-mobile a{font-weight:700;text-decoration:none;padding:8px 0}

/* tipos */
.gigante{font-family:'Anton',sans-serif;font-weight:400;letter-spacing:.01em;line-height:.95;text-transform:uppercase}
.centro{text-align:center}
.serif-titulo{font-family:'Playfair Display',serif;font-size:clamp(1.8rem,4vw,3rem);font-weight:500}
.serif-gigante{font-family:'Playfair Display',serif;font-size:clamp(4rem,10vw,8.5rem);line-height:1}
.script{font-family:'Pinyon Script',cursive;font-size:clamp(1.8rem,3.4vw,2.6rem)}
.script-big{font-family:'Pinyon Script',cursive;font-size:clamp(4.5rem,11vw,9rem);line-height:1;color:#86198f}
.tracking{letter-spacing:.42em;font-size:.82rem;font-weight:600}
.texto{color:#4a3556;max-width:34rem;margin-top:14px;font-size:.98rem}

/* hero */
.hero{padding:20px 40px 30px;position:relative}
.hero-grid{display:grid;grid-template-columns:1fr .9fr 1fr;gap:30px;align-items:center;max-width:var(--max);margin:0 auto}
.hero-esq .gigante{font-size:clamp(3rem,6.5vw,5.2rem);margin:10px 0}
.hero-esq .tracking{margin:12px 0 4px}
.hero-ctas{display:flex;gap:12px;margin-top:22px;flex-wrap:wrap}
.pill{display:inline-block;background:var(--tinta);color:var(--papel);font-weight:700;font-size:.82rem;letter-spacing:.06em;text-decoration:none;padding:15px 34px;border-radius:999px;border:1px solid var(--tinta)}
.pill:hover{background:transparent;color:var(--tinta)}
.arco{position:relative;border:1px solid var(--linha);border-radius:230px 230px 26px 26px;overflow:hidden;background:linear-gradient(170deg,#f3e2fa,#dfbdf3);min-height:560px;display:flex;align-items:flex-end;justify-content:center}
.arco img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top}
.arco-letra{font-family:'Anton',sans-serif;font-size:11rem;color:rgba(64,10,78,.18)}
.hero-dir{text-align:right}
.serif-dir{font-family:'Playfair Display',serif;font-size:clamp(1.6rem,3vw,2.4rem);color:#86198f}
.hero-dir .script-big{margin:-10px 0 22px}
.hero-dir .hero-ctas{justify-content:flex-end}

/* páginas */
.pagina{max-width:var(--max);margin:0 auto;padding:70px 40px;position:relative;border-top:1px solid var(--linha)}
.pagina .gigante{font-size:clamp(2.4rem,6vw,4.6rem);margin-bottom:8px}
.forma{position:absolute;border:1px solid var(--tinta);opacity:.7;pointer-events:none}
.forma-ret{width:120px;height:120px;right:6%;top:40px}
.forma-ret::after{content:"";position:absolute;width:44px;height:44px;border:1px solid var(--tinta);right:-22px;top:-22px;background:var(--papel)}
.forma-quad{width:150px;height:150px;left:24%;bottom:-40px}

/* vídeos */
.fileira-vert{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:34px}
.vcard h3{font-size:1.05rem;margin:12px 0 4px}
.vcard p{font-size:.9rem;color:var(--cinza);margin-bottom:8px}
.vcard a{font-weight:700;font-size:.9rem;text-decoration:underline;text-underline-offset:3px}
/* mockup de celular 9:16 (desenho original em CSS) */
.phone{position:relative;width:100%;aspect-ratio:9/18.6;background:#10030f;border-radius:46px;padding:11px;box-shadow:0 24px 50px -22px rgba(64,10,78,.55),inset 0 0 0 2px #3a3a3f}
.phone::before{content:"";position:absolute;top:22px;left:50%;transform:translateX(-50%);width:34%;height:24px;background:#0a0a0c;border-radius:999px;z-index:3}
.phone::after{content:"";position:absolute;right:-3px;top:120px;width:3px;height:64px;background:#3a3a3f;border-radius:2px}
.phone-tela{position:relative;width:100%;height:100%;border-radius:36px;overflow:hidden;background:linear-gradient(160deg,#e3c6f4,#c193e6);display:flex;align-items:flex-end;padding:12px}
.phone-tela span{font-size:.72rem;font-weight:700;letter-spacing:.1em;background:rgba(0,0,0,.65);color:#fff;padding:5px 11px;border-radius:999px}
.phone video{position:absolute;inset:11px;border-radius:36px;width:calc(100% - 22px);height:calc(100% - 22px);object-fit:cover;background:#000}
.phone video.escondido{display:none}
.p1{background:linear-gradient(160deg,#4d0f4e,#1e071f)}
.p2{background:linear-gradient(160deg,#7c2d8e,#400a4e)}
.p3{background:linear-gradient(160deg,#400a4e,#160413)}
.p4{background:linear-gradient(160deg,#b06fc0,#5e1f66)}
.fileira-horiz{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:34px}
.hcard h3{font-size:1.1rem;margin:12px 0 4px}
.hcard p{font-size:.9rem;color:var(--cinza);margin-bottom:8px}
.hcard a{font-weight:700;font-size:.9rem;text-decoration:underline;text-underline-offset:3px}
.htela{position:relative;overflow:hidden;height:190px;border:1px solid var(--linha);border-radius:14px;background:linear-gradient(160deg,#e3c6f4,#c193e6);display:flex;align-items:flex-end;padding:12px}
.htela video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#000}
.htela video.escondido{display:none}
.htela span{font-size:.72rem;font-weight:700;letter-spacing:.1em;background:rgba(0,0,0,.65);color:#fff;padding:5px 11px;border-radius:999px}
.h1{background:linear-gradient(160deg,#4d0f4e,#180619)}
.h2{background:linear-gradient(160deg,#7c2d8e,#400a4e)}
.h3{background:linear-gradient(160deg,#b06fc0,#4d0f4e)}

/* estilos: grade de posts */
.posts{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-top:26px}
.poster{position:relative;aspect-ratio:3/4;border:1px solid var(--linha);background:linear-gradient(160deg,#e3c6f4,#b06fc0);overflow:hidden}
.poster img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.poster:hover img{transform:scale(1.07)}
.poster span{position:absolute;left:10px;bottom:10px;font-size:.68rem;font-weight:700;letter-spacing:.1em;background:rgba(0,0,0,.65);color:#fff;padding:4px 10px;border-radius:999px;transition:opacity .3s}
.poster:hover span{opacity:0}
.nota{margin-top:22px;color:var(--cinza)}
.nota a{font-weight:700;color:var(--tinta)}

/* sobre */
.sobre-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:50px;align-items:center}
.arco-sm{min-height:480px;border-radius:120px}
.check{list-style:none;margin-top:18px;display:grid;gap:10px}
.check li{padding-left:28px;position:relative}
.check li::before{content:"✓";position:absolute;left:0;font-weight:800}

/* ferramentas */
.fer-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.foto-paisagem{position:relative;height:340px;border:1px solid var(--linha);border-radius:60px;background:linear-gradient(160deg,#f5e6fb,#dfbdf3);display:flex;align-items:flex-end;padding:14px;overflow:hidden}
.foto-paisagem img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.foto-paisagem span{font-size:.72rem;font-weight:700;background:rgba(0,0,0,.65);color:#fff;padding:5px 11px;border-radius:999px}
.fer-lista{list-style:none;margin-top:26px;display:grid;grid-template-columns:1fr 1fr;gap:20px}
.fer-lista strong{display:block;font-family:'Anton',sans-serif;font-weight:400;font-size:1.25rem;text-transform:uppercase}
.fer-lista span{font-size:.85rem;color:var(--cinza)}

/* processo */
.fita-viral{margin:22px 0 6px;border-top:1px solid var(--tinta);border-bottom:1px solid var(--tinta);overflow:hidden;background:var(--tinta)}
.fita-faixa{display:flex;width:max-content;animation:rolar 22s linear infinite;padding:10px 0}
.fita-faixa span{font-family:'Anton',sans-serif;letter-spacing:.14em;white-space:nowrap;color:var(--papel);font-size:1rem}
@keyframes rolar{to{transform:translateX(-50%)}}
.passos{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:34px}
.passos li{border:1px solid var(--linha);border-radius:16px;padding:22px;transition:transform .3s ease,border-color .3s ease,background .3s ease}
.passos li:hover{transform:translateY(-5px);border-color:var(--tinta);background:#fff}
.passos span{font-family:'Anton',sans-serif;font-size:2.6rem;color:transparent;-webkit-text-stroke:1.5px var(--tinta);display:inline-block;transition:.3s}
.passos li:hover span{color:var(--tinta);-webkit-text-stroke:1.5px var(--tinta)}
.passos h3{font-size:1.15rem;margin:8px 0 6px;text-transform:uppercase;letter-spacing:.03em}
.passos p{font-size:.92rem;color:var(--cinza)}

/* faq */
.faq{max-width:820px;margin-top:30px}
.faq details{border:1px solid var(--tinta);border-radius:14px;margin-bottom:12px;background:var(--papel)}
.faq summary{cursor:pointer;padding:18px 22px;font-weight:700;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq details p{padding:0 22px 20px;color:#2c2b29}

/* legal */
.legal{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:30px}
.legal article{border:1px solid var(--tinta);border-radius:16px;padding:26px;background:#fff}
.legal h3{font-size:1.05rem;text-transform:uppercase;letter-spacing:.04em;margin-bottom:12px}
.legal p{font-size:.9rem;color:#3a3044;margin-bottom:10px}
.legal a{color:var(--tinta);font-weight:700}

/* contato */
.pill-linha{background:transparent;color:var(--tinta)}
.pill-linha:hover{background:var(--tinta);color:var(--papel)}

/* rodapé */
.rodape{border-top:1px solid var(--tinta);background:var(--papel);padding:56px 0 30px;margin-top:40px}
.rodape-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:30px;align-items:start;max-width:var(--max);margin:0 auto;padding:0 40px}
.rodape-marca{font-family:'Anton',sans-serif;font-size:1.5rem;letter-spacing:.04em;color:var(--tinta)}
.rodape-marca em{font-style:normal;font-family:'Playfair Display',serif;font-size:1rem;color:var(--cinza)}
.rodape-sub{font-size:.88rem;color:var(--cinza);margin-top:8px;max-width:22rem}
.rodape nav{display:grid;gap:10px}
.rodape nav a{color:var(--tinta);font-weight:600;text-decoration:none;font-size:.92rem;width:fit-content}
.rodape nav a:hover{color:var(--vivo)}
.rodape-legal{display:grid;gap:10px;justify-items:start}
.rodape-legal button{background:#fff;border:1px solid var(--tinta);color:var(--tinta);border-radius:999px;padding:9px 18px;font-size:.85rem;font-weight:700;cursor:pointer;font-family:inherit}
.rodape-legal button:hover{background:var(--tinta);color:var(--papel)}
.rodape-legal span{font-size:.78rem;color:var(--cinza)}
.copy{text-align:center;font-size:.82rem;color:var(--cinza);margin-top:34px}

/* lightbox de vídeo (com som) */
.lightbox{position:fixed;inset:0;background:rgba(20,4,26,.92);display:grid;place-items:center;padding:20px;z-index:100}
.lightbox[hidden]{display:none}
.lightbox [hidden]{display:none!important}
.lightbox video,.lightbox img{max-width:92vw;max-height:calc(100vh - 120px);background:#000;border-radius:18px;object-fit:contain}
.poster{cursor:pointer}
.lb-fechar{position:absolute;top:16px;right:18px;background:var(--papel);color:var(--tinta);border:0;width:46px;height:46px;border-radius:50%;font-size:1.5rem;cursor:pointer;line-height:1}
.phone.com-video,.htela.com-video{cursor:pointer}

/* cookies (opt-in real: nada carrega sem aceite) */
.cookies{position:fixed;left:16px;bottom:16px;z-index:90;max-width:320px;background:#fff;border:1px solid var(--tinta);border-radius:16px;padding:16px 18px;box-shadow:0 18px 44px -18px rgba(64,10,78,.45)}
.cookies[hidden]{display:none}
.cookies p{font-size:.82rem;margin-bottom:12px}
.cookies p button{background:none;border:0;padding:0;font:inherit;font-weight:700;color:var(--tinta);text-decoration:underline;cursor:pointer}
.cookies-btns{display:flex;gap:10px}
.cookies-btns button{flex:1;border-radius:999px;padding:10px 0;font-size:.8rem;font-weight:700;cursor:pointer;font-family:inherit}
#ckNao{background:transparent;border:1px solid var(--tinta);color:var(--tinta)}
#ckSim{background:var(--tinta);border:1px solid var(--tinta);color:var(--papel)}
.modal{position:fixed;inset:0;background:rgba(30,5,35,.6);display:grid;place-items:center;padding:20px;z-index:80}
.modal[hidden]{display:none}
.modal-caixa{position:relative;background:var(--papel);color:var(--tinta);border:1px solid var(--tinta);border-radius:20px;max-width:640px;width:100%;max-height:82vh;overflow:auto;padding:38px 34px}
.modal-caixa h2{font-family:'Anton',sans-serif;text-transform:uppercase;letter-spacing:.03em;margin-bottom:14px}
.modal-caixa h3{margin:18px 0 8px;text-transform:uppercase;font-size:.95rem;letter-spacing:.05em}
.modal-caixa p{font-size:.92rem;margin-bottom:10px}
.modal-caixa a{color:var(--tinta);font-weight:700}
.modal-fechar{position:absolute;top:12px;right:16px;background:var(--tinta);color:var(--papel);border:0;width:38px;height:38px;border-radius:50%;font-size:1.3rem;cursor:pointer;line-height:1}

/* reveal */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.reveal.visivel{opacity:1;transform:none}

@media(max-width:1000px){
  .hero-grid{grid-template-columns:1fr 1fr}
  .hero-dir{grid-column:1/-1;text-align:left}
  .hero-dir .hero-ctas{justify-content:flex-start}
  .fileira-vert{grid-template-columns:1fr 1fr}
  .posts{grid-template-columns:repeat(3,1fr)}
  .fileira-horiz,.passos{grid-template-columns:1fr 1fr}
  .sobre-grid,.fer-grid,.rodape-grid{grid-template-columns:1fr}
}
@media(max-width:640px){
  .forma{display:none}
  .topo{padding:16px 20px}
  .topo nav{display:none}
  .hamb{display:flex}
  .menu-mobile.aberto{display:flex}
  .hero,.pagina{padding-left:20px;padding-right:20px}
  .rodape-grid{padding-left:20px;padding-right:20px}
  .hero-grid{grid-template-columns:1fr}
  .fileira-vert,.fileira-horiz,.passos{grid-template-columns:1fr}
  .posts{grid-template-columns:1fr 1fr}
  .arco{min-height:440px}
}
