/* Daniel Tomich · site portfólio
   Paleta sépia · títulos Dirtyline (maiúscula = ornamental, minúscula = limpa) · texto Geist */
@font-face{font-family:"Dirtyline";src:url(../fontes/dirtyline.woff2) format("woff2"),url(../fontes/dirtyline.woff) format("woff");font-display:swap}
:root{
  --papel:#ECE2D2; --papel2:#E3D6C2; --linho:#D6C5AC;
  --tinta:#2A1E15; --tinta2:#4A392B; --cafe:#8B7259; --siena:#A4532B;
  --noite:#18110C; --noite2:#221912; --creme:#F2E8D8;
  --linha:rgba(42,30,21,.16); --linhaC:rgba(242,232,216,.16);
  --f-arte:"Dirtyline","Geist",system-ui,sans-serif;
  --f-texto:"Geist","Helvetica Neue",Arial,sans-serif;
  --f-mono:"Geist Mono",ui-monospace,Menlo,Consolas,monospace;
  --ease:cubic-bezier(.65,0,.35,1); --ease-out:cubic-bezier(.16,1,.3,1);
  --gut:clamp(16px,4vw,56px);
  color-scheme:light;
}
*{box-sizing:border-box}
html{background:var(--papel);scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--papel);color:var(--tinta2);font-family:var(--f-texto);font-weight:400;font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.trava{overflow:hidden}
img,video{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0}
:focus-visible{outline:2px solid var(--siena);outline-offset:3px;border-radius:4px}
h1,h2,h3{font-family:var(--f-arte);font-weight:400;color:var(--tinta);margin:0;letter-spacing:-.01em;line-height:.92}
h2{font-size:clamp(46px,8.4vw,136px)}
p{margin:0}
.mono{font-family:var(--f-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--cafe)}
.eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:22px;color:var(--siena)}
.eyebrow::before{content:"";width:22px;height:1px;background:currentColor}
.wrap{width:100%;max-width:1480px;margin:0 auto;padding-inline:var(--gut)}
.escuro{background:var(--noite);color:var(--linho)}
.escuro h1,.escuro h2,.escuro h3{color:var(--creme)}
.escuro .mono{color:#a9927a}

/* abertura tipográfica */
#intro{position:fixed;inset:0;z-index:100;background:var(--noite);display:grid;place-items:center;transition:clip-path 1.1s var(--ease);clip-path:inset(0 0 0 0)}
#intro.sai{clip-path:inset(0 0 100% 0)}
#intro .nome{font-family:var(--f-arte);color:var(--creme);font-size:clamp(54px,13vw,220px);line-height:.9;text-align:center;display:flex;flex-direction:column;align-items:center}
#intro .nome span{display:block;overflow:hidden}
#intro .nome i{display:inline-block;font-style:normal;transform:translateY(105%);animation:sobeLetra .9s var(--ease-out) forwards}
#intro .rodape-intro{position:absolute;left:var(--gut);right:var(--gut);bottom:28px;display:flex;justify-content:space-between;color:#a9927a}
@keyframes sobeLetra{to{transform:none}}

/* navegação */
.nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px var(--gut);color:var(--creme);
  transition:background .5s,color .5s,transform .5s var(--ease-out),border-color .5s;border-bottom:1px solid transparent}
.nav.vidro{background:rgba(236,226,210,.78);-webkit-backdrop-filter:saturate(1.3) blur(18px);backdrop-filter:saturate(1.3) blur(18px);border-bottom-color:var(--linha);color:var(--tinta)}
.nav.vidro.sobre-escuro{background:rgba(24,17,12,.72);color:var(--creme);border-bottom-color:var(--linhaC)}
.nav.some{transform:translateY(-110%)}
.logo{font-family:var(--f-arte);font-size:22px;letter-spacing:.01em;white-space:nowrap;line-height:1}
.nav nav{display:flex;align-items:center;gap:clamp(12px,2.4vw,32px);font-size:14px}
.nav nav a{opacity:.8;transition:opacity .3s}
.nav nav a:hover{opacity:1}
.nav .cta{opacity:1!important;background:var(--siena);color:var(--creme);padding:9px 16px;border-radius:99px}
@media (max-width:700px){.nav nav a:not(.cta){display:none}}

/* hero */
.hero{height:250vh;position:relative;background:var(--noite)}
.hero-sticky{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;display:grid;place-items:center}
.hero-frame{position:absolute;inset:0;overflow:hidden;will-change:transform,border-radius}
.hero-video{width:100%;height:100%;object-fit:cover;filter:sepia(.32) saturate(.92) contrast(1.04)}
.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(24,17,12,.45),rgba(24,17,12,0) 30%,rgba(24,17,12,0) 62%,rgba(24,17,12,.82))}
.hero-title{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;font-size:clamp(66px,16.5vw,300px);line-height:.84;text-align:center;color:var(--creme);will-change:transform,opacity;text-shadow:0 10px 60px rgba(0,0,0,.35)}
.hero-meta{position:absolute;z-index:2;left:var(--gut);right:var(--gut);bottom:calc(28px + env(safe-area-inset-bottom));display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}
.hero-meta .mono{color:var(--creme)}
.hero-meta .selo-mini{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border-radius:99px;background:rgba(24,17,12,.55);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--linhaC)}
.hero-meta .selo-mini img{height:13px;width:auto}
@media (max-width:640px){.hero-meta{flex-direction:column;align-items:flex-start;gap:10px}}

/* manifesto */
.manifesto{height:210vh;position:relative}
.manifesto-sticky{position:sticky;top:0;height:100vh;height:100svh;display:flex;flex-direction:column;justify-content:center;padding-inline:var(--gut);max-width:1480px;margin:0 auto}
.manifesto-texto{font-family:var(--f-texto);font-weight:300;font-size:clamp(30px,4.9vw,78px);line-height:1.08;letter-spacing:-.035em;max-width:17ch;color:var(--tinta)}
.manifesto-texto .w{opacity:.13;transition:opacity .35s}
.manifesto-texto .w.on{opacity:1}
.manifesto-texto .w.c{font-family:var(--f-arte);color:var(--siena);letter-spacing:0}

/* números */
.numeros{padding-block:clamp(40px,8vw,120px)}
.numeros-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--linha)}
.num{padding:28px 18px 0 0;border-right:1px solid var(--linha);min-width:0}
.num:last-child{border-right:0}
.num b{display:block;font-family:var(--f-arte);font-weight:400;font-size:clamp(50px,6.4vw,104px);color:var(--tinta);line-height:.95}
.num span{display:block;margin-top:14px;color:var(--tinta2);font-size:15px}
.num small{display:block;margin-top:4px}
@media (max-width:860px){.numeros-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.num{border-right:0;border-bottom:1px solid var(--linha);padding-bottom:26px}.num:nth-child(odd){border-right:1px solid var(--linha);padding-right:14px}.num:nth-child(even){padding-left:14px}}

/* SCRL */
.scrl{position:relative;padding-block:clamp(90px,12vw,170px);overflow:hidden}
.scrl-topo{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:clamp(40px,6vw,80px)}
.lockup{display:flex;align-items:center;gap:clamp(14px,2vw,26px);color:var(--creme)}
.lockup .x{font-family:var(--f-mono);font-size:14px;color:#a9927a}
.lockup .dt{font-family:var(--f-arte);font-size:clamp(26px,3vw,44px);line-height:1}
.lockup img{height:clamp(24px,2.6vw,40px);width:auto}
.selo{display:inline-flex;align-items:center;gap:10px;border:1px solid var(--linhaC);border-radius:99px;padding:9px 16px;font-family:var(--f-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--creme)}
.selo i{width:8px;height:8px;border-radius:50%;background:#7bd88f;box-shadow:0 0 0 4px rgba(123,216,143,.15)}
.scrl-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.8fr) minmax(0,1fr);gap:clamp(20px,3vw,48px);align-items:center}
.scrl-retrato{margin:0;border-radius:22px;overflow:hidden;aspect-ratio:4/5;position:relative}
.scrl-retrato img{width:100%;height:100%;object-fit:cover;filter:sepia(.18)}
.scrl-retrato figcaption{position:absolute;left:16px;bottom:14px;right:16px;color:var(--creme)}
.celular{margin:0 auto;position:relative;aspect-ratio:9/19.5;width:100%;max-width:330px;border-radius:44px;overflow:hidden;background:#000;border:1px solid rgba(242,232,216,.22);box-shadow:0 40px 120px rgba(0,0,0,.55),inset 0 0 0 7px #0b0807;will-change:transform}
.celular video{width:100%;height:100%;object-fit:cover}
.som{position:absolute;right:16px;bottom:18px;z-index:3;padding:8px 13px;border-radius:99px;background:rgba(0,0,0,.55);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--creme);font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.som.on{background:var(--creme);color:var(--noite)}
.scrl-info{display:flex;flex-direction:column;gap:24px}
.scrl-info h2{font-size:clamp(36px,4.4vw,70px)}
.scrl-info p{color:var(--linho);font-size:16px}
.fatos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--linhaC)}
.fatos div{padding:16px 10px 16px 0;border-bottom:1px solid var(--linhaC)}
.fatos b{display:block;font-family:var(--f-arte);font-weight:400;font-size:30px;color:var(--creme);line-height:1}
.fatos span{display:block;margin-top:6px;font-size:13px;color:#a9927a}
.recursos{display:flex;flex-wrap:wrap;gap:8px}
.recursos span{border:1px solid var(--linhaC);border-radius:99px;padding:6px 12px;font-size:13px;color:var(--linho)}
@media (max-width:1060px){.scrl-grid{grid-template-columns:1fr 1fr}.scrl-info{grid-column:1/-1}}
@media (max-width:640px){.scrl-grid{grid-template-columns:1fr}.scrl-retrato{display:none}.celular{max-width:300px}}

/* botões */
.botoes{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 22px;border-radius:99px;border:1px solid var(--linha);color:var(--tinta);font-size:15px;transition:background .3s,color .3s,border-color .3s,transform .3s var(--ease-out)}
.btn:hover{border-color:var(--tinta);transform:translateY(-2px)}
.btn.cheio{background:var(--tinta);color:var(--papel);border-color:var(--tinta)}
.btn.siena{background:var(--siena);color:var(--creme);border-color:var(--siena)}
.escuro .btn{border-color:var(--linhaC);color:var(--creme)}
.escuro .btn:hover{border-color:var(--creme)}
.escuro .btn.cheio{background:var(--creme);color:var(--noite);border-color:var(--creme)}

/* seções */
.sec-head{display:flex;flex-direction:column;margin-bottom:clamp(30px,5vw,60px)}
.sec-sub{margin-top:18px;max-width:54ch;color:var(--cafe)}
.trabalhos,.servicos,.makingof{padding-block:clamp(80px,12vw,170px) 0}
.revela .ri{display:inline-block;clip-path:inset(0 0 100% 0);transform:translateY(30px);transition:clip-path 1.1s var(--ease-out),transform 1.1s var(--ease-out)}
.revela.on .ri{clip-path:inset(-15% -5% -20% -5%);transform:none}
.sobe{opacity:0;transform:translateY(40px);transition:opacity 1s var(--ease-out),transform 1s var(--ease-out)}
.sobe.on{opacity:1;transform:none}

/* filtros */
.filtros{display:flex;gap:6px;overflow-x:auto;padding-bottom:6px;margin-bottom:34px;scrollbar-width:none}
.filtros::-webkit-scrollbar{display:none}
.filtros button{flex:none;padding:9px 16px;border-radius:99px;border:1px solid var(--linha);font-size:14px;color:var(--tinta2);transition:all .3s}
.filtros button:hover{border-color:var(--tinta)}
.filtros button[aria-selected="true"]{background:var(--tinta);color:var(--papel);border-color:var(--tinta)}
.filtros button small{font-family:var(--f-mono);font-size:10px;margin-left:6px;opacity:.6}

/* grade de projetos (estilo coleções) */
.grade{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(26px,3vw,44px) clamp(14px,1.8vw,26px)}
.card{grid-column:span 4;cursor:pointer;display:flex;flex-direction:column;gap:14px}
.card.g{grid-column:span 6}
.card.esconde{display:none}
.card.media .card-media{aspect-ratio:5/4}
.card.larga .card-media,.card.g.larga .card-media{aspect-ratio:21/9}
.card-media{position:relative;aspect-ratio:4/5;border-radius:14px;overflow:hidden;background:var(--linho);isolation:isolate}
.card.g .card-media{aspect-ratio:5/4}
.card-media img,.card-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease-out),opacity .6s}
.card-media img{opacity:0}
.card-media img.ok{opacity:1}
.card-media video{opacity:0}
.card.tocando video{opacity:1}
.card:hover .card-media img,.card:hover .card-media video{transform:scale(1.04)}
.card .chip{position:absolute;top:12px;right:12px;z-index:2;padding:6px 10px;border-radius:99px;background:rgba(236,226,210,.88);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-family:var(--f-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--tinta)}
.card .play-ic{position:absolute;left:12px;top:12px;z-index:2;width:30px;height:30px;border-radius:50%;background:rgba(24,17,12,.55);display:grid;place-items:center}
.card .play-ic::before{content:"";border-left:8px solid var(--creme);border-top:5px solid transparent;border-bottom:5px solid transparent;margin-left:2px}
.card-txt{display:flex;flex-direction:column;gap:6px}
.card h3{font-size:clamp(26px,2.5vw,40px);line-height:.95}
.card .linha1{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.card .papel{font-size:14px;color:var(--tinta2)}
@media (max-width:1000px){.card{grid-column:span 6}.card.g{grid-column:span 12}}
@media (max-width:600px){.card,.card.g{grid-column:span 12}.card .card-media,.card.g .card-media{aspect-ratio:4/5}}

/* cena: rolagem horizontal */
.cena{position:relative}
.cena-sticky{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;display:flex;align-items:center}
.cena-head{position:absolute;top:clamp(80px,12vh,130px);left:var(--gut);max-width:min(540px,80vw);z-index:2}
.cena-head p{margin-top:16px;color:var(--linho);text-shadow:0 1px 14px rgba(24,17,12,.9),0 0 3px rgba(24,17,12,.6)}
.cena-head h2,.cena-head .mono{text-shadow:0 2px 30px rgba(24,17,12,.7)}
/* véu leve à esquerda: as fotos passam por trás do texto sem atrapalhar a leitura */
.cena-sticky::before{content:"";position:absolute;inset:0 auto 0 0;width:min(62vw,900px);z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(24,17,12,.82) 0%,rgba(24,17,12,.62) 45%,rgba(24,17,12,0) 100%)}
.cena-trilho{display:flex;gap:clamp(14px,2vw,28px);padding-left:max(var(--gut),min(46vw,640px));padding-right:var(--gut);will-change:transform;align-items:flex-end;height:100%;padding-bottom:8vh}
.cena-item{flex:none;width:clamp(260px,32vw,500px);height:clamp(340px,56vh,640px);border-radius:18px;overflow:hidden;position:relative;cursor:pointer;margin:0;background:var(--noite2)}
.cena-item:nth-child(even){height:clamp(300px,46vh,520px)}
.cena-item img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease-out)}
.cena-item:hover img{transform:scale(1.05)}
.cena-item figcaption{position:absolute;left:18px;bottom:16px;right:18px;z-index:2;display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.cena-item figcaption b{font-family:var(--f-arte);font-weight:400;font-size:30px;color:var(--creme)}
.cena-item::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 55%,rgba(0,0,0,.72))}
@media (max-width:760px){
  .cena{height:auto!important}
  .cena-sticky::before{display:none}
  .cena-sticky{position:relative;height:auto;flex-direction:column;align-items:stretch;padding-block:80px 60px}
  .cena-head{position:relative;top:0;margin-bottom:28px}
  .cena-trilho{transform:none!important;overflow-x:auto;scroll-snap-type:x mandatory;padding-left:var(--gut);padding-bottom:10px;height:auto;scrollbar-width:none}
  .cena-item{scroll-snap-align:start;width:78vw;height:104vw!important}
}

/* sobre */
.sobre{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(30px,6vw,100px);align-items:center;padding-block:clamp(80px,12vw,170px) 0}
.sobre-foto{margin:0;border-radius:22px;overflow:hidden;aspect-ratio:4/5;background:var(--linho)}
.sobre-foto img{width:100%;height:118%;object-fit:cover;will-change:transform}
.sobre-texto{display:flex;flex-direction:column;gap:20px}
#sobreTexto{display:flex;flex-direction:column;gap:16px;font-size:clamp(17px,1.4vw,20px);color:var(--tinta2);max-width:56ch}
.sobre-mini{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}
.sobre-mini img{aspect-ratio:3/4;width:100%;object-fit:cover;border-radius:12px}
@media (max-width:860px){.sobre{grid-template-columns:1fr}}

/* serviços */
.lista-serv{list-style:none;margin:0;padding:0;border-top:1px solid var(--linha);counter-reset:s}
.lista-serv li{counter-increment:s;display:grid;grid-template-columns:70px minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:baseline;padding:28px 0;border-bottom:1px solid var(--linha);transition:padding .5s var(--ease-out)}
.lista-serv li::before{content:"0" counter(s);font-family:var(--f-mono);font-size:12px;color:var(--siena)}
.lista-serv h3{font-size:clamp(28px,3vw,46px)}
.lista-serv p{color:var(--cafe)}
.lista-serv li:hover{padding-left:14px}
@media (max-width:760px){.lista-serv li{grid-template-columns:40px minmax(0,1fr)}.lista-serv p{grid-column:2}}

/* making of */
.mk-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.mk-video{grid-column:span 2;grid-row:span 2}
.mk-video .v{border-radius:14px;overflow:hidden;background:#000;aspect-ratio:16/9}
.mk-video video{width:100%;height:100%;object-fit:cover;display:block}
.mk-video h3{font-family:var(--f-arte);font-weight:400;font-size:clamp(24px,2.4vw,38px);letter-spacing:0}
.yt{position:relative;aspect-ratio:16/9;border-radius:14px;overflow:hidden;background:var(--linho);cursor:pointer}
.yt img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease-out);filter:sepia(.15)}
.yt:hover img{transform:scale(1.05)}
.yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.yt .play{position:absolute;left:50%;top:50%;width:58px;height:58px;margin:-29px 0 0 -29px;border-radius:50%;background:rgba(236,226,210,.94);display:grid;place-items:center;transition:transform .4s var(--ease-out)}
.yt .play::before{content:"";border-left:14px solid var(--tinta);border-top:9px solid transparent;border-bottom:9px solid transparent;margin-left:4px}
.yt:hover .play{transform:scale(1.1)}
.mk-item h3{font-family:var(--f-texto);font-size:16px;margin-top:14px;line-height:1.3;font-weight:500;letter-spacing:-.01em}
.mk-item .mono{display:block;margin-top:6px}
@media (max-width:1000px){.mk-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.mk-grid{grid-template-columns:1fr}.mk-video{grid-column:auto;grid-row:auto}}

/* marca SCRL: letras do logo oficial no lugar do texto */
.scrl-w{display:inline-block;height:.74em;width:auto;vertical-align:baseline;margin:0 .03em;overflow:visible}
.scrl-info h2 .scrl-w,.lockup .scrl-w{height:.66em}
.marquee .scrl-w{height:.62em}
.nav .scrl-w{height:.78em;vertical-align:-.04em}

/* marca d'água t◯motion */
.marca-dagua{pointer-events:none;user-select:none}
.marca-dagua.topo{position:absolute;z-index:2;left:50%;top:calc(76px + env(safe-area-inset-top));transform:translateX(-50%);width:clamp(110px,10vw,150px);opacity:.42;filter:drop-shadow(0 2px 14px rgba(0,0,0,.35))}
.rodape-marca{display:block;margin:26px auto 0;width:clamp(130px,12vw,180px);opacity:.38}

/* WhatsApp no fim do site */
.zap-final-wrap{padding-bottom:clamp(60px,9vw,120px)}
.zap-final{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:clamp(14px,2.4vw,30px);padding:clamp(18px,2.6vw,30px) clamp(20px,3vw,40px);border-radius:28px;background:#1f8f4e;color:#fff;transition:transform .5s var(--ease-out),background .3s;box-shadow:0 30px 80px rgba(0,0,0,.35)}
.zap-final:hover{background:#25a85b;transform:translateY(-4px)}
.zap-final svg{width:clamp(40px,4.4vw,62px);height:auto;fill:#fff}
.zap-final span{font-family:var(--f-arte);font-size:clamp(30px,4.4vw,70px);line-height:.95}
.zap-final span small{display:block;font-size:11px;letter-spacing:.16em;text-transform:uppercase;opacity:.8;margin-bottom:8px;font-family:var(--f-mono)}
.zap-final b{font-weight:400;font-size:clamp(16px,1.8vw,26px);letter-spacing:-.01em;white-space:nowrap}
.zap-final i{font-style:normal;font-size:clamp(26px,3vw,44px);transition:transform .4s var(--ease-out)}
.zap-final:hover i{transform:translateX(6px)}
@media (max-width:640px){.zap-final{grid-template-columns:auto 1fr;row-gap:10px}.zap-final b{grid-column:2}.zap-final i{display:none}}

/* projeto: link e selo de realização */
.pj-esq{display:flex;flex-direction:column;gap:26px;align-items:flex-start}
.pj-selo{margin:22px 0 0;background:#F6EFE1;border-radius:14px;padding:14px 18px;border:1px solid var(--linha)}
.pj-selo img{width:100%;height:auto;display:block}

/* parceiros */
.parceiros{margin-top:clamp(80px,12vw,160px);border-block:1px solid var(--linha);overflow:hidden;padding-block:24px}
.marquee{display:flex;width:max-content;animation:corre 46s linear infinite}
.marquee span{font-family:var(--f-arte);font-size:clamp(30px,3.6vw,56px);color:var(--tinta);padding-inline:clamp(18px,2.4vw,40px);white-space:nowrap;display:flex;align-items:center;gap:clamp(18px,2.4vw,40px)}
.marquee span::after{content:"";width:8px;height:8px;border-radius:50%;background:var(--siena)}
.parceiros:hover .marquee{animation-play-state:paused}
@keyframes corre{to{transform:translateX(-50%)}}

/* contato */
.contato{padding-block:clamp(100px,14vw,200px);display:flex;flex-direction:column;align-items:flex-start;gap:30px}
.contato h2{font-size:clamp(54px,10vw,170px)}
.email{font-family:var(--f-texto);font-weight:300;font-size:clamp(22px,3.6vw,54px);letter-spacing:-.03em;color:var(--creme);border-bottom:1px solid var(--siena);padding-bottom:4px;overflow-wrap:anywhere;transition:color .3s}
.email:hover{color:#e2a27a}

/* rodapé */
.rodape{border-top:1px solid var(--linhaC);overflow:hidden}
.rodape-nome{font-family:var(--f-arte);color:var(--creme);font-size:clamp(60px,17vw,300px);line-height:.85;text-align:center;padding-top:40px;white-space:nowrap}
.rodape-linha{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-block:22px 34px}

/* projeto aberto */
.projeto{position:fixed;inset:0;z-index:80;background:var(--papel);transform:translateY(100%);transition:transform .8s var(--ease-out);visibility:hidden}
.projeto.aberto{transform:none;visibility:visible}
.projeto[hidden]{display:block}
.projeto-scroll{position:absolute;inset:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.fechar{position:fixed;top:16px;right:var(--gut);z-index:3;width:48px;height:48px;border-radius:50%;background:rgba(24,17,12,.55);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);display:grid;place-items:center;transition:background .3s,transform .4s var(--ease-out)}
.fechar span{position:absolute;width:18px;height:1.5px;background:var(--creme);transform:rotate(45deg)}
.fechar span+span{transform:rotate(-45deg)}
.fechar:hover{background:var(--siena);transform:rotate(90deg)}
.pj-hero{position:relative;height:92vh;height:92svh;overflow:hidden;background:var(--noite)}
.pj-hero img,.pj-hero video{width:100%;height:100%;object-fit:cover}
.pj-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(24,17,12,.25),rgba(24,17,12,0) 35%,rgba(24,17,12,.15) 60%,rgba(24,17,12,.85))}
.pj-titulo{position:absolute;left:var(--gut);right:var(--gut);bottom:36px;z-index:2;color:var(--creme)}
.pj-titulo h2{font-size:clamp(50px,9vw,150px);max-width:14ch;color:var(--creme)}
.pj-titulo .mono{display:block;margin-bottom:16px;color:var(--linho)}
.pj-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid var(--linha)}
.pj-meta div{padding:22px 16px 22px 0;border-right:1px solid var(--linha);min-width:0}
.pj-meta div:last-child{border-right:0}
.pj-meta b{display:block;font-weight:500;color:var(--tinta);font-size:16px;margin-top:6px}
.pj-meta .grande{font-family:var(--f-arte);font-weight:400;font-size:clamp(28px,2.8vw,42px);color:var(--siena);line-height:1}
@media (max-width:760px){.pj-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.pj-meta div:nth-child(2){border-right:0}.pj-meta div{border-bottom:1px solid var(--linha);padding-left:0}.pj-meta div:nth-child(even){padding-left:14px}}
.pj-corpo{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(30px,6vw,100px);padding-block:44px 56px}
.pj-texto{font-size:clamp(19px,1.7vw,26px);color:var(--tinta);line-height:1.45;max-width:40ch;font-weight:300}
.pj-ficha{display:flex;flex-direction:column;border-top:1px solid var(--linha);margin:0}
.pj-ficha div{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:14px;padding:12px 0;border-bottom:1px solid var(--linha);font-size:15px}
.pj-ficha dt{font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--cafe);padding-top:3px}
.pj-ficha dd{margin:0;color:var(--tinta)}
@media (max-width:860px){.pj-corpo{grid-template-columns:1fr}}
.pj-bloco{padding-bottom:56px}
.pj-bloco>.mono{display:block;margin-bottom:18px}
/* vídeos em fileiras justificadas (sem espaço vazio ao lado) */
#pjVideos{display:flex;flex-direction:column;gap:16px}
.vfila{display:flex;gap:16px;align-items:flex-start}
.vitem{min-width:0}
.vfila.palco{position:relative;justify-content:center;padding:clamp(16px,3vw,40px);border-radius:18px;overflow:hidden;background:var(--noite);isolation:isolate}
.vfila.palco .fundo{position:absolute;inset:-40px;z-index:-1;background-size:cover;background-position:center;filter:blur(38px) saturate(1.1) brightness(.55);transform:scale(1.1)}
.vfila.palco .vitem{flex:none;max-width:100%}
.vitem .v{border-radius:14px;overflow:hidden;background:#000;width:100%}
.vitem video{display:block;width:100%;height:100%;object-fit:cover;background:#000}
.yt-wrap h4{margin:10px 2px 0;font-weight:400;font-size:14px;color:var(--tinta2)}
/* galeria justificada (como o Pixieset) */
.galeria{display:flex;flex-direction:column;gap:8px}
.galeria .fila{display:flex;gap:8px}
.galeria figure{margin:0;position:relative;overflow:hidden;background:var(--linho);cursor:zoom-in;flex:none}
.galeria img{width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .7s var(--ease-out),transform 1s var(--ease-out)}
.galeria img.ok{opacity:1}
.galeria figure:hover img{transform:scale(1.025)}
.pj-prox{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-block:50px 90px;border-top:1px solid var(--linha);margin-top:30px}
.pj-prox h3{font-size:clamp(34px,5vw,80px)}
.pj-prox button{text-align:left}

/* lightbox */
.lightbox{position:fixed;inset:0;z-index:95;background:rgba(24,17,12,.96);display:grid;place-items:center;opacity:0;visibility:hidden;transition:opacity .4s,visibility .4s;padding:4vh 4vw}
.lightbox.on{opacity:1;visibility:visible}
.lightbox img{max-width:100%;max-height:90vh;object-fit:contain}
.lightbox button{position:absolute;top:50%;width:52px;height:52px;margin-top:-26px;border-radius:50%;background:rgba(242,232,216,.12);color:var(--creme);font-size:22px}
.lightbox .ant{left:2vw}.lightbox .prox{right:2vw}
.lightbox .x{top:24px;right:2vw;margin-top:0}
.lightbox .cont{position:absolute;bottom:20px;left:0;right:0;text-align:center;color:#a9927a}

/* WhatsApp flutuante */
.zap{position:fixed;right:18px;bottom:18px;z-index:60;width:54px;height:54px;border-radius:50%;background:#25d366;display:grid;place-items:center;box-shadow:0 10px 30px rgba(0,0,0,.25);transition:transform .4s var(--ease-out),opacity .4s}
.zap:hover{transform:scale(1.08)}
.zap svg{width:28px;height:28px;fill:#fff}
body.trava .zap{opacity:0;pointer-events:none}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .revela .ri,.sobe{clip-path:none;opacity:1;transform:none}
  #intro .nome i{transform:none}
}
