/* ============================================================
   DOUGLAS GOMES — Artista Visual
   Street / urbano · paleta vibrante distribuída · display Bungee
   ============================================================ */
:root{
  --black:#0A0A0A;
  --black-soft:#141312;
  --orange:#FF4D00;
  --green:#6BFF3C;
  --purple:#8B2FC9;
  --white:#F0EDE6;
  --red:#E8202A;
  --wa:#25D366;
  --muted:rgba(240,237,230,.55);
  --line:rgba(240,237,230,.12);
  --display:'Bungee',sans-serif;
  --body:'DM Sans',sans-serif;
  --mono:'Space Mono',monospace;
}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  background:var(--black);
  color:var(--white);
  font-family:var(--body);
  font-size:18px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
::selection{background:var(--green);color:var(--black)}

/* ---------- Textura de noise sutil sobre o #0A0A0A ---------- */
body::before{
  content:"";position:fixed;inset:0;z-index:1;pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size:180px 180px;opacity:.06;mix-blend-mode:soft-light;
}
@media (prefers-reduced-motion: no-preference){
  body::before{animation:grain 7s steps(6) infinite}
}
@keyframes grain{
  0%{transform:translate(0,0)}10%{transform:translate(-4%,-4%)}30%{transform:translate(3%,-2%)}
  50%{transform:translate(-2%,3%)}70%{transform:translate(4%,2%)}90%{transform:translate(-3%,1%)}100%{transform:translate(0,0)}
}
/* o conteúdo fica acima do grão */
.nav,.hero,.catalogo,.section,.marquee,.artist,.footer,.contact,.lightbox,.wa-float,.ink-cursor{position:relative;z-index:2}
.wa-float{z-index:600}.lightbox{z-index:500}.nav{z-index:200}.ink-cursor{z-index:9999}

/* ---------- Número de seção gigante em baixa opacidade ---------- */
.bignum{
  position:absolute;top:clamp(20px,4vh,60px);right:clamp(-6px,1vw,24px);z-index:0;
  font-family:var(--display);font-size:clamp(140px,26vw,380px);line-height:.78;
  color:transparent;-webkit-text-stroke:1.5px rgba(240,237,230,.05);
  pointer-events:none;user-select:none;letter-spacing:-.02em;
}
.bignum--fill{color:rgba(240,237,230,.035);-webkit-text-stroke:0}
@media(max-width:760px){.bignum{font-size:clamp(120px,40vw,200px);top:10px}}

.label{font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.18em;color:var(--muted)}
.display{font-family:var(--display);line-height:1;text-transform:uppercase}

/* ---------- Custom paint-drop cursor ---------- */
.ink-cursor{
  position:fixed;top:0;left:0;width:14px;height:16px;
  pointer-events:none;z-index:9999;transform:translate(-50%,-50%);
  mix-blend-mode:screen;transition:opacity .3s, width .25s, height .25s;will-change:transform;
}
.ink-cursor svg{width:100%;height:100%;display:block;filter:drop-shadow(0 0 6px rgba(255,77,0,.6))}
.ink-cursor.hide{opacity:0}
@media (hover:none){.ink-cursor{display:none}}

/* ---------- NAV ---------- */
.nav{
  position:fixed;top:0;left:0;right:0;z-index:200;
  display:flex;align-items:center;justify-content:space-between;
  padding:14px clamp(20px,5vw,72px);
  transition:background .4s ease, padding .4s ease, border-color .4s ease;
  border-bottom:1px solid transparent;
}
.nav.scrolled{background:rgba(10,10,10,.92);backdrop-filter:blur(10px);padding-top:12px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.nav__brand{display:flex;align-items:center}
.nav__brand img{width:min(280px,58vw);height:auto;transition:width .45s ease;filter:drop-shadow(0 2px 12px rgba(0,0,0,.75))}
.nav.scrolled .nav__brand img{width:150px}
.nav__links{display:flex;gap:32px;align-items:center}
.nav__links a{font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);position:relative;padding:4px 0;transition:color .25s}
.nav__links a::after{content:"";position:absolute;left:0;bottom:-2px;width:0;height:2px;background:var(--green);transition:width .28s ease}
.nav__links a:hover{color:var(--white)}
.nav__links a:hover::after{width:100%}
.nav__links a:nth-child(2)::after{background:var(--orange)}
.nav__links a:nth-child(3)::after{background:var(--red)}
.nav__links a:nth-child(4)::after{background:var(--purple)}
.nav__toggle{display:none;background:none;border:0;cursor:pointer;flex-direction:column;gap:6px;padding:6px}
.nav__toggle span{display:block;width:28px;height:2px;background:var(--white);transition:.3s}

/* ---------- BUTTONS ---------- */
.btn{
  position:relative;display:inline-flex;align-items:center;gap:12px;
  font-family:var(--mono);font-size:13px;letter-spacing:.14em;text-transform:uppercase;
  padding:16px 30px;border:1.5px solid var(--orange);color:var(--white);
  background:transparent;cursor:pointer;overflow:hidden;z-index:0;border-radius:0;transition:color .35s ease;
}
.btn::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .38s cubic-bezier(.7,0,.2,1)}
.btn:hover{color:var(--black)}
.btn:hover::before{transform:scaleX(1)}
.btn .arr{transition:transform .35s ease}
.btn:hover .arr{transform:translateX(5px)}
.btn--solid{background:var(--orange);color:var(--black);border-color:var(--orange)}
.btn--solid::before{background:var(--black)}
.btn--solid:hover{color:var(--white)}
.btn--green{border-color:var(--green)}.btn--green::before{background:var(--green)}.btn--green:hover{color:var(--black)}
.btn--purple{border-color:var(--purple);color:var(--white)}.btn--purple::before{background:var(--purple)}.btn--purple:hover{color:var(--white)}
.btn--red{border-color:var(--red)}.btn--red::before{background:var(--red)}.btn--red:hover{color:var(--white)}
.btn--ghost{border-color:var(--line);color:var(--muted)}.btn--ghost::before{background:var(--white)}.btn--ghost:hover{color:var(--black);border-color:var(--white)}

/* ---------- HERO (slide único + Ken Burns) ---------- */
.hero{position:relative;min-height:100vh;display:flex;align-items:flex-end;padding:0 clamp(20px,5vw,72px) clamp(48px,8vh,90px);overflow:hidden}
.hero__slide{position:absolute;inset:0;z-index:0;overflow:hidden}
.hero__slide img{width:100%;height:100%;object-fit:cover;object-position:center 22%;filter:grayscale(.12) contrast(1.05);transform-origin:60% 40%;animation:kenburns 22s ease-in-out infinite alternate;will-change:transform}
@keyframes kenburns{0%{transform:scale(1.03) translate(0,0)}100%{transform:scale(1.18) translate(-2%,-3%)}}
.hero__slide::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,10,10,.5) 0%,rgba(10,10,10,.32) 42%,rgba(10,10,10,.93) 100%)}
.hero__inner{position:relative;z-index:2;max-width:1200px}
.hero__sub{display:flex;align-items:center;gap:14px;margin-bottom:20px}
.hero__sub .dot{width:9px;height:9px;border-radius:50%;background:var(--green);box-shadow:0 0 14px var(--green)}
.hero__sub span{font-family:var(--mono);font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:var(--green)}
.hero h1{font-family:var(--display);font-size:clamp(54px,11vw,164px);line-height:.96;text-transform:uppercase;letter-spacing:.005em;filter:drop-shadow(0 8px 40px rgba(0,0,0,.6))}
/* Notebook 1080–1440 */
@media (max-width:1440px){
    .hero h1{font-size: clamp(50px, 8vw, 125px);}
}
/* Mobile */
@media (max-width:768px){
  .hero h1{font-size: clamp(66px, 13vw, 100px);}
}
.hero h1 .l1{
  background:linear-gradient(100deg,var(--orange) 0%,var(--red) 30%,var(--purple) 62%,var(--green) 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;
  background-size:200% 100%;animation:hueSlide 9s ease-in-out infinite alternate;
}
@keyframes hueSlide{from{background-position:0% 0}to{background-position:100% 0}}
.hero h1 .l2{color:transparent;-webkit-text-stroke:2px var(--white)}
.hero__tag{margin-top:26px;font-size:clamp(19px,2.4vw,26px);max-width:560px;color:var(--white);font-weight:400;line-height:1.4;text-shadow:0 2px 24px rgba(0,0,0,.7),0 1px 4px rgba(0,0,0,.6)}
.hero__cta{display:flex;gap:18px;flex-wrap:wrap;margin-top:38px}
.scroll-hint{position:absolute;right:clamp(20px,5vw,78px);bottom:150px;z-index:2;display:flex;flex-direction:column;align-items:center;gap:10px;font-family:var(--mono);font-size:10px;letter-spacing:.2em;color:var(--muted);text-transform:uppercase}
.scroll-hint .bar{width:1px;height:54px;background:linear-gradient(var(--green),transparent);animation:drip 2.4s ease-in-out infinite}
@keyframes drip{0%{transform:scaleY(0);transform-origin:top}45%{transform:scaleY(1);transform-origin:top}55%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}

/* HERO entrada via CSS (independe de rAF) */
@keyframes heroUp{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
@keyframes heroClip{from{opacity:0;clip-path:inset(0 0 100% 0);transform:translateY(7%)}to{opacity:1;clip-path:inset(0 0 0 0);transform:none}}
.hero__sub{animation:heroUp .7s ease .15s both}
.hero h1{animation:heroClip 1.15s cubic-bezier(.5,0,.2,1) .32s both}
.hero__tag{animation:heroUp .8s ease .78s both}
.hero__cta{animation:heroUp .7s ease 1.02s both}
.scroll-hint{animation:heroUp .6s ease 1.3s both}

/* ---------- Section scaffolding ---------- */
.section{padding:clamp(80px,12vh,150px) clamp(20px,5vw,72px);position:relative}
.section__head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;flex-wrap:wrap;margin-bottom:54px}
.section__head .idx{font-family:var(--mono);font-size:12px;letter-spacing:.2em;margin-bottom:14px;display:block}
.idx--green{color:var(--green)}.idx--purple{color:var(--purple)}.idx--red{color:var(--red)}.idx--orange{color:var(--orange)}
.section__title{font-family:var(--display);font-size:clamp(40px,6vw,86px);line-height:1.02;text-transform:uppercase;color:var(--white)}
.section__title em{font-style:normal}
.em-orange{color:var(--orange)}.em-green{color:var(--green)}.em-purple{color:var(--purple)}.em-red{color:var(--red)}
.section__lead{max-width:440px;color:var(--muted);font-size:17px}

/* ============================================================
   01 — CATÁLOGO 2026 (mosaico fullscreen)
   ============================================================ */
.catalogo{padding:clamp(70px,10vh,120px) clamp(14px,3vw,38px) clamp(60px,8vh,100px);background:var(--black)}
.catalogo__head{text-align:center;max-width:1100px;margin:0 auto clamp(40px,6vh,70px)}
.catalogo__head .idx{font-family:var(--mono);font-size:13px;letter-spacing:.24em;color:var(--green);display:block;margin-bottom:22px}
.catalogo__head h2{font-family:var(--display);font-size:clamp(34px,5.4vw,76px);line-height:1.04;text-transform:uppercase;color:var(--white)}
.catalogo__head h2 .a{color:var(--orange)}.catalogo__head h2 .b{color:var(--green)}.catalogo__head h2 .c{color:var(--purple)}
.catalogo__head p{margin-top:20px;color:var(--muted);font-size:17px;max-width:640px;margin-left:auto;margin-right:auto}

.mosaic{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:230px;grid-auto-flow:dense;gap:12px}
@media(max-width:1100px){.mosaic{grid-template-columns:repeat(3,1fr);grid-auto-rows:210px}}
@media(max-width:760px){.mosaic{grid-template-columns:repeat(2,1fr);grid-auto-rows:180px}}
@media(max-width:460px){.mosaic{grid-template-columns:1fr;grid-auto-rows:230px}}
.cbox--w{grid-column:span 2}
.cbox--t{grid-row:span 2}
.cbox--big{grid-column:span 2;grid-row:span 2}
@media(max-width:460px){.cbox--w,.cbox--big{grid-column:span 1}.cbox--t,.cbox--big{grid-row:span 1}}

.cbox{position:relative;overflow:hidden;background:#161514;opacity:0;transform:scale(.96);transition:opacity .6s ease,transform .6s ease}
.cbox.in{opacity:1;transform:none}
.cbox image-slot{position:absolute;inset:0;width:100%;height:100%;color:rgba(240,237,230,.45)}
.cbox image-slot::part(frame){background:#161514}
.cbox image-slot::part(ring){border-color:rgba(240,237,230,.14)}
.cbox__shade{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,transparent 45%,rgba(10,10,10,.9));pointer-events:none}
.cbox__bar{position:absolute;left:0;right:0;bottom:0;z-index:3;display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding:16px 16px 15px}
.cbox__info{min-width:0}
.cbox__name{font-family:var(--display);font-size:clamp(15px,1.4vw,20px);line-height:1;text-transform:uppercase;color:var(--white);letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cbox__dim{font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;color:rgba(240,237,230,.62);margin-top:7px}
.cbox__acts{display:flex;gap:8px;flex-shrink:0}

/* CTAs redondos com tooltip */
.cact{
  position:relative;width:40px;height:40px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;cursor:pointer;
  border:1.5px solid rgba(240,237,230,.35);background:rgba(10,10,10,.5);backdrop-filter:blur(3px);
  color:var(--white);transition:transform .25s ease, background .25s ease, border-color .25s ease, color .25s ease;
}
.cact svg{width:19px;height:19px}
.cact:hover{transform:translateY(-3px)}
.cact--wa:hover{background:var(--wa);border-color:var(--wa);color:#fff;box-shadow:0 6px 20px rgba(37,211,102,.5)}
.cact--more:hover{background:var(--purple);border-color:var(--purple);color:#fff;box-shadow:0 6px 20px rgba(139,47,201,.5)}
.cact__tip{
  position:absolute;bottom:calc(100% + 10px);left:50%;transform:translateX(-50%) translateY(6px) scale(.9);
  background:var(--white);color:var(--black);font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;
  padding:5px 10px;border-radius:4px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .22s ease, transform .22s cubic-bezier(.5,1.6,.4,1);
}
.cact__tip::after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);border:5px solid transparent;border-top-color:var(--white)}
.cact:hover .cact__tip{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}
.cact--wa .cact__tip{background:var(--wa);color:#fff}.cact--wa .cact__tip::after{border-top-color:var(--wa)}
.cact--more .cact__tip{background:var(--purple);color:#fff}.cact--more .cact__tip::after{border-top-color:var(--purple)}

.catalogo__foot{display:flex;justify-content:center;margin-top:clamp(36px,5vh,56px)}

/* ============================================================
   02 — PORTFÓLIO (12 obras, masonry + filtros)
   ============================================================ */
/* ---------- Filtros: underline (sem pill) ---------- */
.filters{display:flex;gap:clamp(18px,3vw,40px);flex-wrap:wrap;margin-bottom:48px;border-bottom:1px solid var(--line);padding-bottom:2px}
.filter{font-family:var(--mono);font-size:13px;letter-spacing:.12em;text-transform:uppercase;padding:0 0 14px;border:0;background:transparent;color:var(--muted);cursor:pointer;border-radius:0;position:relative;transition:color .25s ease}
.filter::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--purple);transform:scaleX(0);transform-origin:left;transition:transform .3s cubic-bezier(.7,0,.2,1)}
.filter:hover{color:var(--white)}
.filter:hover::after{transform:scaleX(1);background:var(--white)}
.filter.active{color:var(--white);font-weight:700}
.filter.active::after{transform:scaleX(1);background:var(--purple)}

.gallery{column-count:3;column-gap:22px}
@media(max-width:1000px){.gallery{column-count:2}}
@media(max-width:620px){.gallery{column-count:1}}

.work{break-inside:avoid;margin-bottom:22px;position:relative;cursor:pointer;opacity:0;transform:translateY(28px);transition:opacity .7s ease, transform .7s ease;will-change:transform,opacity}
.work.in{opacity:1;transform:none}
.no-gsap .work{opacity:1!important;transform:none!important}
.no-gsap .work__media{clip-path:none!important}
.no-gsap .reveal{opacity:1!important;transform:none!important}
.work__media{position:relative;overflow:hidden;background:var(--black-soft);transform-style:preserve-3d;clip-path:inset(0 0 102% 0);transition:clip-path .9s cubic-bezier(.7,0,.2,1)}
.work.in .work__media{clip-path:inset(0 0 0 0)}
.work image-slot{width:100%;display:block;color:rgba(240,237,230,.5)}
.work image-slot::part(frame){background:#161514}
.work image-slot::part(ring){border-color:rgba(240,237,230,.16)}
/* card de obra: título CENTRALIZADO (não barra inferior) */
.work__media::after{content:"";position:absolute;inset:0;background:radial-gradient(120% 120% at 50% 50%,rgba(10,10,10,.35) 0%,rgba(10,10,10,.82) 100%);opacity:0;transition:opacity .4s ease;pointer-events:none}
.work:hover .work__media::after{opacity:1}
.work__cap{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;padding:24px;opacity:0;transform:scale(.94);transition:transform .45s cubic-bezier(.5,1.4,.4,1), opacity .4s ease;pointer-events:none}
.work:hover .work__cap{opacity:1;transform:none}
.work__cat{font-family:var(--mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--green);order:-1}
.work__name{font-family:var(--display);font-size:clamp(24px,2.4vw,34px);line-height:1.02;text-transform:uppercase;color:var(--white);margin:0}
.work__cap::after{content:"";width:30px;height:2px;background:var(--green);transform:scaleX(0);transition:transform .5s ease .12s}
.work:hover .work__cap::after{transform:scaleX(1)}
.work__plus{position:absolute;top:16px;right:16px;width:40px;height:40px;border-radius:50%;border:1px solid rgba(240,237,230,.4);display:flex;align-items:center;justify-content:center;color:var(--white);font-size:20px;z-index:2;opacity:0;transform:scale(.7);transition:.35s ease;background:rgba(10,10,10,.35);backdrop-filter:blur(2px)}
.work:hover .work__plus{opacity:1;transform:none;border-color:var(--green);background:var(--green);color:var(--black)}
.portfolio__foot{display:flex;justify-content:center;margin-top:clamp(34px,5vh,56px)}

/* ---------- Reveal genérico ---------- */
.reveal{opacity:0;transform:translateY(30px);transition:opacity .8s ease, transform .8s ease}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion: reduce){
  .hero__sub,.hero h1,.hero__tag,.hero__cta,.scroll-hint{animation:none}
  .hero__slide img{animation:none}
  .reveal,.work,.cbox{transition:none}
}

/* ---------- Faixa cinética (marquee urbano) ---------- */
.marquee{overflow:hidden;white-space:nowrap;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:26px 0;background:var(--black);position:relative;user-select:none}
.marquee__track{display:inline-flex;gap:0;will-change:transform;animation:marquee 32s linear infinite}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.marquee__track span{font-family:var(--display);font-size:clamp(34px,5.5vw,72px);line-height:1;text-transform:uppercase;letter-spacing:.01em;padding:0 .35em;color:transparent;-webkit-text-stroke:1.2px rgba(240,237,230,.4)}
.marquee__track span:nth-child(4n+1){color:var(--white);-webkit-text-stroke:0}
.marquee__track span:nth-child(4n+3){color:var(--orange);-webkit-text-stroke:0}
.marquee__track .star{-webkit-text-stroke:0;font-size:.55em;vertical-align:middle}
.marquee__track .star.s1{color:var(--green)}.marquee__track .star.s2{color:var(--purple)}.marquee__track .star.s3{color:var(--red)}.marquee__track .star.s4{color:var(--orange)}

/* ============================================================
   03 — O ARTISTA (fullscreen, bg fixo, texto sobreposto)
   ============================================================ */
.artist{position:relative;width:100%;min-height:100vh;display:flex;align-items:center;overflow:hidden}
.artist__bg{position:absolute;inset:0;z-index:0;background-image:url('artista-atelie.jpg');background-size:cover;background-position:center;background-attachment:fixed}
.artist__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,10,10,.94) 0%,rgba(10,10,10,.82) 42%,rgba(10,10,10,.4) 100%)}
@media(max-width:760px){.artist__bg{background-attachment:scroll}.artist__bg::after{background:linear-gradient(180deg,rgba(10,10,10,.78),rgba(10,10,10,.96))}}

/* Fotos do ateliê sobrepostas/rotacionadas */
.artist__photos{position:absolute;z-index:1;right:clamp(40px,7vw,130px);top:50%;transform:translateY(-50%);width:min(420px,34vw);height:520px;pointer-events:none}
.artist__photos figure{position:absolute;overflow:hidden;background:#161514;box-shadow:0 26px 60px rgba(0,0,0,.6);border:6px solid #0d0d0c}
.artist__photos img{width:100%;height:100%;object-fit:cover;display:block}
.artist__photos figure image-slot{width:100%;height:100%;display:block}
.artist__photos .ph1{width:62%;aspect-ratio:4/5;top:0;right:6%;transform:rotate(5deg)}
.artist__photos .ph2{width:54%;aspect-ratio:3/4;bottom:2%;left:0;transform:rotate(-7deg)}
.artist__photos .tape{position:absolute;width:88px;height:26px;background:rgba(240,237,230,.18);top:-12px;left:50%;transform:translateX(-50%) rotate(-4deg)}
@media(max-width:1080px){.artist__photos{display:none}}
.artist__inner{position:relative;z-index:2;max-width:720px;padding:clamp(90px,14vh,150px) clamp(20px,5vw,72px)}
.artist__inner .idx{font-family:var(--mono);font-size:12px;color:var(--red);letter-spacing:.2em;display:block;margin-bottom:18px}
.artist__title{font-family:var(--display);font-size:clamp(38px,6vw,82px);line-height:1.02;text-transform:uppercase;margin-bottom:28px}
.artist__title em{font-style:normal;color:var(--red)}
.artist__body p{color:rgba(240,237,230,.86);margin-bottom:20px;font-size:17.5px}
.artist__body p.lede{font-size:22px;color:var(--white);line-height:1.45}
.artist__sign{font-family:var(--display);font-size:clamp(22px,2.6vw,34px);color:var(--white);margin-top:14px;line-height:1.1;text-transform:uppercase}
.artist__sign span{color:var(--green)}
.artist__facts{display:flex;gap:38px;flex-wrap:wrap;margin-top:38px;padding-top:30px;border-top:1px solid var(--line)}
.artist__facts div .n{font-family:var(--display);font-size:clamp(26px,2.6vw,38px);line-height:1}
.artist__facts div:nth-child(1) .n{color:var(--orange)}
.artist__facts div:nth-child(2) .n{color:var(--green)}
.artist__facts div:nth-child(3) .n{color:var(--purple)}
.artist__facts div .l{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:6px}

/* ============================================================
   04 — CONCEITO / ARQUITETURA DA OBRA (5 pilares)
   ============================================================ */
.arq{background:var(--black-soft)}
.pillars{display:grid;grid-template-columns:repeat(5,1fr);gap:0;border-top:1px solid var(--line)}
@media(max-width:1000px){.pillars{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.pillars{grid-template-columns:1fr}}
.pillar{padding:40px 30px 46px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);position:relative;transition:background .3s ease}
.pillar:hover{background:rgba(255,255,255,.03)}
.pillar__n{font-family:var(--mono);font-size:12px;letter-spacing:.1em}
.pillar:nth-child(1) .pillar__n{color:var(--orange)}
.pillar:nth-child(2) .pillar__n{color:var(--green)}
.pillar:nth-child(3) .pillar__n{color:var(--purple)}
.pillar:nth-child(4) .pillar__n{color:var(--red)}
.pillar:nth-child(5) .pillar__n{color:var(--white)}
.pillar__icon{margin:26px 0 22px;color:var(--white)}
.pillar__icon svg{width:40px;height:40px;transition:color .3s}
.pillar:nth-child(1):hover .pillar__icon{color:var(--orange)}
.pillar:nth-child(2):hover .pillar__icon{color:var(--green)}
.pillar:nth-child(3):hover .pillar__icon{color:var(--purple)}
.pillar:nth-child(4):hover .pillar__icon{color:var(--red)}
.pillar:nth-child(5):hover .pillar__icon{color:var(--white)}
.pillar h3{font-family:var(--display);font-size:18px;text-transform:uppercase;letter-spacing:.01em;margin-bottom:12px;line-height:1.1}
.pillar p{font-size:15px;color:var(--muted);line-height:1.5}

/* ============================================================
   05 — CONTATO (blocos de cor sólida)
   ============================================================ */
.contact{padding:clamp(80px,12vh,150px) clamp(20px,5vw,72px) clamp(70px,9vh,120px);background:var(--black);position:relative;overflow:hidden}
.contact__head{max-width:1000px;margin:0 auto clamp(44px,6vh,64px);text-align:center;position:relative;z-index:2}
.contact__head .idx{font-family:var(--mono);font-size:13px;letter-spacing:.24em;color:var(--red);display:block;margin-bottom:20px}
.contact__head h2{font-family:var(--display);font-size:clamp(36px,6vw,86px);line-height:1.02;text-transform:uppercase;color:var(--white)}
.contact__head h2 em{font-style:normal;color:var(--red)}
.contact__head p{margin-top:18px;color:var(--muted);font-size:17px;max-width:560px;margin-left:auto;margin-right:auto}
.contact__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:1440px;margin:0 auto;position:relative;z-index:2}
@media(max-width:820px){.contact__grid{grid-template-columns:1fr}}
.cblock{
  position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:48px;
  min-height:230px;padding:30px 28px;overflow:hidden;color:#0A0A0A;
  transition:transform .35s cubic-bezier(.5,1.3,.4,1);isolation:isolate;
}
.cblock:hover{transform:translateY(-8px)}
.cblock--wa{background:var(--wa)}
.cblock--ig{background:var(--purple);color:#fff}
.cblock--mail{background:var(--orange)}
.cblock__k{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;opacity:.7}
.cblock__v{font-family:var(--display);font-size:clamp(20px,2.2vw,28px);line-height:1.05;text-transform:uppercase;word-break:break-word}
.cblock__sub{display:block;font-family:var(--body);font-size:14px;margin-top:8px;opacity:.8;text-transform:none;font-weight:500;letter-spacing:0}
.cblock__arrow{align-self:flex-end;width:46px;height:46px;border-radius:50%;border:1.5px solid currentColor;display:flex;align-items:center;justify-content:center;font-size:20px;transition:transform .35s ease}
.cblock:hover .cblock__arrow{transform:rotate(-45deg) scale(1.08)}
.cblock__icon{position:absolute;right:-18px;bottom:-18px;width:130px;height:130px;opacity:.16;z-index:-1}
.cblock__icon svg{width:100%;height:100%;fill:currentColor}

/* ---------- LIGHTBOX / página de obra ---------- */
.lightbox{position:fixed;inset:0;z-index:500;display:none;background:rgba(6,6,6,.96);backdrop-filter:blur(8px)}
.lightbox.open{display:block}
.lb__scroll{height:100%;overflow-y:auto}
.lb__inner{min-height:100%;display:grid;grid-template-columns:1.25fr 1fr;gap:0}
@media(max-width:900px){.lb__inner{grid-template-columns:1fr}}
.lb__media{background:#070707;display:flex;align-items:center;justify-content:center;padding:clamp(30px,6vw,80px);min-height:50vh}
.lb__media image-slot{width:100%;max-width:620px;height:min(78vh,680px);color:rgba(240,237,230,.5)}
.lb__media image-slot::part(frame){background:#0c0c0c}
.lb__media image-slot::part(ring){border-color:rgba(240,237,230,.16)}
.lb__panel{padding:clamp(40px,6vw,84px) clamp(28px,5vw,72px);display:flex;flex-direction:column;justify-content:center}
.lb__back{display:inline-flex;align-items:center;gap:10px;font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:40px;cursor:pointer;background:none;border:0;transition:color .25s}
.lb__back:hover{color:var(--green)}
.lb__cat{display:inline-block;font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--black);background:var(--purple);padding:6px 14px;margin-bottom:22px;width:fit-content}
.lb__cat[data-c="Pinturas"]{background:var(--orange)}
.lb__cat[data-c="Toy Art"]{background:var(--green)}
.lb__cat[data-c="Esculturas"]{background:var(--red);color:var(--white)}
.lb__cat[data-c="Funduixi"]{background:var(--purple);color:#fff}
.lb__cat[data-c="Coleções"]{background:var(--white);color:var(--black)}
.lb__cat[data-c="Catálogo"]{background:var(--orange)}
.lb__title{font-family:var(--display);font-size:clamp(34px,5vw,62px);line-height:1.02;text-transform:uppercase;color:var(--white)}
.lb__meta{display:flex;flex-wrap:wrap;gap:28px;margin-top:26px;padding-bottom:26px;border-bottom:1px solid var(--line)}
.lb__meta div{display:flex;flex-direction:column;gap:5px}
.lb__meta dt{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.lb__meta dd{font-size:16px;color:var(--white)}
.lb__desc{margin-top:26px;color:rgba(240,237,230,.78);font-size:17px;max-width:46ch}
.lb__cta{margin-top:38px;display:flex;gap:14px;flex-wrap:wrap}
.lb__close{position:fixed;top:24px;right:28px;z-index:3;width:48px;height:48px;border-radius:50%;border:1px solid var(--line);background:rgba(10,10,10,.6);color:var(--white);font-size:22px;cursor:pointer;transition:.25s;display:flex;align-items:center;justify-content:center}
.lb__close:hover{background:var(--red);color:#fff;border-color:var(--red);transform:rotate(90deg)}

/* ---------- WHATSAPP FLUTUANTE ---------- */
.wa-float{
  position:fixed;right: 60px;bottom: 60px;z-index:600;width:62px;height:62px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;background:var(--wa);color:#fff;
  box-shadow:0 10px 30px rgba(37,211,102,.45);cursor:pointer;
  animation:waPulse 2.6s ease-in-out infinite;transition:transform .3s ease;
}
.wa-float svg{width:32px;height:32px;position:relative;z-index:2}
.wa-float::before{content:"";position:absolute;inset:0;border-radius:50%;background:var(--wa);opacity:.55;animation:waRing 2.6s ease-out infinite;z-index:0}
.wa-float:hover{transform:scale(1.08) rotate(-4deg)}
.wa-float__label{
  position:absolute;right:calc(100% + 14px);top:50%;transform:translateY(-50%) translateX(8px);
  background:var(--white);color:var(--black);font-family:var(--mono);font-size:11px;letter-spacing:.06em;
  padding:9px 14px;border-radius:6px;white-space:nowrap;opacity:0;pointer-events:none;
  transition:opacity .25s ease, transform .25s cubic-bezier(.5,1.6,.4,1);box-shadow:0 8px 24px rgba(0,0,0,.4);
}
.wa-float__label::after{content:"";position:absolute;left:100%;top:50%;transform:translateY(-50%);border:6px solid transparent;border-left-color:var(--white)}
.wa-float:hover .wa-float__label{opacity:1;transform:translateY(-50%) translateX(0)}
@keyframes waPulse{0%,100%{box-shadow:0 10px 30px rgba(37,211,102,.45)}50%{box-shadow:0 10px 42px rgba(37,211,102,.85)}}
@keyframes waRing{0%{transform:scale(1);opacity:.5}80%,100%{transform:scale(1.8);opacity:0}}
@media(max-width:560px){.wa-float{width:56px;height:56px;right:18px;bottom:18px}.wa-float svg{width:28px;height:28px}}

/* ---------- FOOTER ---------- */
.footer{padding:64px clamp(20px,5vw,72px) 146px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:flex-end;gap:40px;flex-wrap:wrap}
.footer__brand img{height:44px;width:auto;margin-bottom:18px}
.footer__brand .tag{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.footer__contact{display:flex;flex-direction:column;gap:12px}
.footer__contact a{display:flex;gap:12px;align-items:center;font-size:16px;color:var(--white);transition:color .25s;width:fit-content}
.footer__contact a .l{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);min-width:74px}
.footer__contact a:hover{color:var(--green)}
.footer__right{text-align:right;display:flex;flex-direction:column;gap:14px;align-items:flex-end}
.footer__social{display:flex;gap:18px}
.footer__social a{font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);transition:color .25s}
.footer__social a:hover{color:var(--orange)}
.footer__copy{font-family:var(--mono);font-size:11px;color:rgba(240,237,230,.35);letter-spacing:.08em;line-height:1.7}
.footer__copy .toss{color:var(--white)}
.footer__copy .toss b{color:var(--orange);font-weight:700;letter-spacing:.1em}

/* ---------- Mobile nav ---------- */
@media(max-width:860px){
  .nav__links{position:fixed;inset:0;background:var(--black);flex-direction:column;justify-content:center;gap:34px;transform:translateX(100%);transition:transform .45s cubic-bezier(.7,0,.2,1)}
  .nav__links.open{transform:none}
  .nav__links a{font-size:18px}
  .nav__toggle{display:flex;z-index:300}
  .nav__toggle.open span:nth-child(1){transform:translateY(8px) rotate(45deg)}
  .nav__toggle.open span:nth-child(2){opacity:0}
  .nav__toggle.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
}

/* WordPress: mantém o menu registrado com a mesma apresentação da navegação original. */
.nav__menu{display:flex;align-items:center;gap:32px;list-style:none;margin:0;padding:0}
.nav__menu li{margin:0;padding:0}
.nav__menu a{font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);position:relative;padding:4px 0;transition:color .25s}
.nav__menu a::after{content:"";position:absolute;left:0;bottom:-2px;width:0;height:2px;background:var(--green);transition:width .28s ease}
.nav__menu a:hover,.nav__menu .current-menu-item>a{color:var(--white)}
.nav__menu a:hover::after,.nav__menu .current-menu-item>a::after{width:100%}
@media(max-width:900px){.nav__links.open .nav__menu{display:flex;flex-direction:column;gap:20px}.nav__menu{display:none}}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.screen-reader-text:focus{position:fixed!important;top:10px;left:10px;width:auto;height:auto;clip:auto;padding:12px 16px;background:#fff;color:#000;z-index:10000}
/* Conteúdo dinâmico dos CPTs Catálogo e Portfólio. */
.cbox__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cbox__placeholder,.work__placeholder{width:100%;height:100%;min-height:260px;background:linear-gradient(135deg,#191817,#252321)}
.cact--single:hover{background:var(--green);border-color:var(--green);color:var(--black);box-shadow:0 6px 20px rgba(107,255,60,.3)}
.work__img{display:block;width:100%;height:auto}
.work__link{position:relative;z-index:4;pointer-events:auto;margin-top:8px;padding:8px 12px;border:1px solid rgba(240,237,230,.45);font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--white)}
.work__link:hover,.work__link:focus-visible{background:var(--green);border-color:var(--green);color:var(--black)}
.collection-empty{grid-column:1/-1;padding:32px;border:1px dashed var(--line);color:var(--muted)}
.single-artwork{padding:clamp(110px,14vw,180px) clamp(20px,5vw,72px) clamp(70px,10vw,130px)}
.single-artwork__article{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:clamp(34px,6vw,90px);max-width:1500px;margin:0 auto;align-items:start}
.single-artwork__media{background:var(--black-soft)}
.single-artwork__image{width:100%;height:auto}
.single-artwork__content{position:sticky;top:120px}
.single-artwork__back{display:inline-block;margin-bottom:28px;font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
.single-artwork__title{margin:16px 0 30px;font-family:var(--display);font-size:clamp(42px,6vw,92px);line-height:.95;text-transform:uppercase}
.single-artwork__description{margin:30px 0;color:rgba(240,237,230,.8)}
.single-artwork__description>*+*{margin-top:1em}
@media(max-width:850px){.single-artwork__article{grid-template-columns:1fr}.single-artwork__content{position:static}}
.lb__media>img{display:block;width:auto;max-width:100%;max-height:78vh;object-fit:contain}

.work:focus .work__cap,.work:focus-within .work__cap{opacity:1;transform:none}
.work:focus .work__media::after,.work:focus-within .work__media::after{opacity:1}
.work:focus-visible{outline:2px solid var(--green);outline-offset:4px}
