/* =========================================================
   FTM ARQUITETURA — P&B EDITORIAL (direção de arte)
   Monocromático. Cor apenas nas fotografias. Assimetria,
   fios finos, numeração, tipografia grande e apertada.
   ========================================================= */

:root{
  --coral:#161616;        /* sem laranja: acentos viram tinta */
  --coral-dark:#000000;
  --ink:#161616;
  --paper:#F3F2ED;        /* branco quente, papel */
  --line:#d9d6cd;         /* fio fino */
  --soft:rgba(22,22,22,.55);
}
body{background:var(--paper);color:var(--ink)}
::selection{background:var(--ink);color:var(--paper)}
#grain{opacity:.03}
.coral{color:var(--ink)}

/* ---------- NAV ---------- */
.nav{padding:26px var(--pad)}
.nav.nav--solid{padding:16px var(--pad);background:color-mix(in srgb,var(--paper) 88%,transparent);
  backdrop-filter:blur(18px);border-bottom-color:var(--line);color:var(--ink)}
.nav.nav--solid .brand__logo--light{display:none}
.nav.nav--solid .brand__logo--dark{display:block}
.brand__logo{height:24px}
.nav__links{gap:38px}
.nav__links a{font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;opacity:.6}
.nav__links a:hover{opacity:1}
.nav__links a::after{display:none}
.nav__links a.is-current{opacity:1}
.nav__links a.is-current::before{content:"";display:inline-block;width:5px;height:5px;background:currentColor;border-radius:50%;margin-right:9px;vertical-align:2px}

/* ---------- ROUTER: folhas ---------- */
.rpage{display:none}
.rpage.is-active{display:block;animation:rpIn .7s var(--slow)}
@keyframes rpIn{from{opacity:0}to{opacity:1}}
.rp__wrap{max-width:1520px;margin:0 auto;min-height:100vh;min-height:100svh;padding:clamp(120px,17vh,180px) var(--pad) clamp(80px,11vh,130px)}
.sec-label{color:var(--soft);letter-spacing:.22em;font-weight:400;font-size:11px;text-transform:uppercase;
  display:block;padding-bottom:20px;margin-bottom:clamp(30px,4vw,52px);border-bottom:1px solid var(--line)}
.rp__h{font-size:clamp(46px,8vw,120px);font-weight:500;letter-spacing:-.045em;line-height:.92;color:var(--ink);margin:0}
.rp__h em{font-style:italic;font-weight:300}
.rp__lead{margin-top:30px;font-size:clamp(19px,1.6vw,25px);font-weight:300;line-height:1.5;color:var(--soft);max-width:54ch}

/* ---------- CAPA (âncora inferior-esquerda) ---------- */
.rpage--home{position:relative;height:100vh;height:100svh;min-height:600px;overflow:hidden;background:#0e0e0d;padding:0}
.hm__img{position:absolute;inset:0;background:url('../assets/hero-fachada.jpg') center/cover;
  transform-origin:center;animation:kenburns 20s ease-in-out infinite alternate}
@keyframes kenburns{from{transform:scale(1)}to{transform:scale(1.08)}}
.hm__veil{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(0,0,0,.35),rgba(0,0,0,.05) 40%,rgba(0,0,0,.6))}
.hm__cover{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;
  padding:clamp(96px,13vh,140px) var(--pad) clamp(34px,6vh,56px);color:#fff}
.hm__index{display:flex;gap:26px;font-size:11px;letter-spacing:.18em;color:rgba(255,255,255,.75)}
.hm__ttl{margin-top:auto;font-family:var(--font);font-weight:600;font-size:clamp(92px,21vw,300px);letter-spacing:-.05em;line-height:.8;color:#fff}
.hm__baseline{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-top:22px;
  border-top:1px solid rgba(255,255,255,.28);padding-top:18px}
.hm__baseline .mono{font-size:11px;letter-spacing:.14em;color:rgba(255,255,255,.78)}
.hm__link{font-family:var(--mono);font-size:12px;letter-spacing:.1em;color:#fff;display:inline-flex;gap:8px;align-items:center;
  border-bottom:1px solid rgba(255,255,255,.55);padding-bottom:3px;transition:gap .35s var(--ease)}
.hm__link span{transition:transform .35s var(--ease)}
.hm__link:hover{gap:14px}.hm__link:hover span{transform:translateY(3px)}

/* ---------- QUEM SOMOS (pessoas) ---------- */
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(20px,2.4vw,40px)}
.tm{opacity:1;transform:none}
.tm__photo{aspect-ratio:3/4;overflow:hidden;background:#e2e0d8;margin-bottom:18px}
.tm__photo img{width:100%;height:100%;object-fit:cover;filter:none;transition:transform 1.4s var(--ease)}
.tm:hover .tm__photo img{transform:scale(1.05)}
.tm__name{color:var(--ink);font-weight:500;font-size:clamp(17px,1.4vw,21px);letter-spacing:-.01em;margin-bottom:5px}
.tm__role{color:var(--soft);font-size:11px;letter-spacing:.08em;text-transform:uppercase;line-height:1.4}

/* ---------- ESCRITÓRIO (história) ---------- */
.hist{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(36px,6vw,96px);align-items:end}
.hist__media{overflow:hidden;background:#e2e0d8}
.hist__media img{width:100%;aspect-ratio:4/5;object-fit:cover;filter:none}
.hist__body{padding-bottom:6px}
.hist__body .sec-label{border:none;padding:0;margin-bottom:18px}
.hist__body .rp__lead{max-width:46ch}
.studio__sign{margin-top:34px;padding-top:22px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:6px}
.studio__sign strong{font-size:17px;color:var(--ink);font-weight:500}
.studio__sign span{font-size:11px;letter-spacing:.1em;color:var(--soft);text-transform:uppercase}

/* ---------- PROJETOS (galeria editorial + legenda numerada) ---------- */
#page-projetos .work__filters{display:flex;gap:26px;flex-wrap:wrap;margin:0 0 clamp(34px,4vw,54px)}
#page-projetos .chip{color:var(--soft);border:none;background:none;border-radius:0;padding:4px 0;
  font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:color .3s}
#page-projetos .chip:hover{color:var(--ink)}
#page-projetos .chip.is-active{color:var(--ink);text-decoration:underline;text-underline-offset:6px}
#page-projetos .work__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,3vw,58px) clamp(18px,2.2vw,40px)}
#page-projetos .pc{cursor:pointer}
#page-projetos .pc--feature{grid-column:1/-1}
#page-projetos .pc__img{aspect-ratio:4/3;border-radius:0;overflow:hidden;background:#e2e0d8}
#page-projetos .pc--feature .pc__img{aspect-ratio:16/8}
#page-projetos .pc__img>img{filter:none;transition:transform 1.5s var(--ease)}
#page-projetos .pc:hover .pc__img>img{transform:scale(1.045)}
#page-projetos .pc__cat,#page-projetos .pc__logo,#page-projetos .pc__play,#page-projetos .pc__overlay{display:none!important}
.pcap{display:flex;align-items:baseline;gap:14px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
.pcap__n{font-size:11px;color:var(--soft);letter-spacing:.05em}
.pcap__nm{flex:1;font-size:clamp(16px,1.4vw,21px);font-weight:500;letter-spacing:-.01em;color:var(--ink)}
.pcap__mt{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--soft);text-align:right}
.pc:hover .pcap__nm{text-decoration:underline;text-underline-offset:4px}

/* ---------- CONTATO ---------- */
#page-contato .contact__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(34px,5vw,90px);align-items:start;margin-top:clamp(40px,5vw,64px)}
#page-contato .field input{color:var(--ink);border-bottom-color:var(--line)}
#page-contato .field label{color:var(--soft)}
#page-contato .field input:focus+label,#page-contato .field input.has+label{color:var(--ink)}
#page-contato .field i{background:var(--ink)}
#page-contato .form .btn--coral{background:none;color:var(--ink);border:none;border-bottom:1px solid var(--ink);
  border-radius:0;width:auto;padding:11px 0;justify-content:flex-start;font-family:var(--mono);font-size:13px;letter-spacing:.08em;text-transform:uppercase}
#page-contato .form .btn--coral:hover{background:none;color:var(--soft);transform:none}
#page-contato .contact__info{border-top:1px solid var(--line)}
#page-contato .ci{border-bottom:1px solid var(--line)}
#page-contato .ci__k{color:var(--soft)}
#page-contato .ci__v{color:var(--ink)}
#page-contato .ci:hover{padding-left:10px}

/* ---------- RODAPÉ ---------- */
.rfoot{background:var(--ink);color:#fff;padding:clamp(56px,8vw,90px) var(--pad) 32px}
.rfoot__in{max-width:1520px;margin:0 auto;display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap;padding-bottom:44px;border-bottom:1px solid rgba(255,255,255,.16)}
.rfoot__logo{height:40px;width:auto;opacity:.95}
.rfoot__cols{display:flex;gap:clamp(30px,5vw,80px);flex-wrap:wrap}
.rfoot__col{display:flex;flex-direction:column;gap:9px}
.rfoot__col .mono{font-size:10px;letter-spacing:.16em;color:rgba(255,255,255,.5);margin-bottom:5px;text-transform:uppercase}
.rfoot__col a,.rfoot__col span{color:rgba(255,255,255,.82);font-size:14px;transition:color .3s}
.rfoot__col a:hover{color:#fff}
.rfoot__bar{max-width:1520px;margin:0 auto;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;padding-top:26px;font-size:11px;letter-spacing:.06em;color:rgba(255,255,255,.45)}

/* botões gerais → contorno tinta */
.btn--coral{background:none;color:var(--ink);border:1px solid var(--ink);border-radius:0}
.btn--coral:hover{background:var(--ink);color:var(--paper)}
.cursor{background:var(--ink)}.cursor.is-hover{border-color:var(--ink)}

/* ---------- responsivo ---------- */
@media (max-width:960px){
  .team-grid{grid-template-columns:1fr 1fr}
  .hist{grid-template-columns:1fr;gap:28px;align-items:start}
  #page-projetos .work__grid{grid-template-columns:1fr}
  #page-contato .contact__grid{grid-template-columns:1fr}
  .pcap__mt{display:none}
}
@media (max-width:640px){.rfoot__in{flex-direction:column;gap:26px}.hm__ttl{font-size:clamp(80px,26vw,140px)}}

/* =========================================================
   AJUSTE FINAL — faixa de cabeçalho, home em uma tela,
   visão/missão/valores, galeria 4 colunas
   ========================================================= */
/* NAV = faixa preto-sobre-branco, sempre */
.nav{background:color-mix(in srgb,var(--paper) 90%,transparent);backdrop-filter:blur(16px);
  border-bottom:1px solid var(--line);color:var(--ink);padding:15px var(--pad)}
.nav .brand__logo--light{display:none}
.nav .brand__logo--dark{display:block}

/* HOME: uma tela — imagem entre a faixa do topo e a faixa de contato */
.rpage--home{position:relative;height:100vh;height:100svh;min-height:560px;overflow:hidden;background:#0e0e0d;padding:0}
.home__img{position:absolute;inset:0;background-color:#0e0e0d;
  background-image:url('../assets/hero-fachada.jpg?v=3'),url('data:image/webp;base64,UklGRnAAAABXRUJQVlA4IGQAAADwBACdASogABIAPu1gq1AppSOisBgIATAdiWMArCFGgYFaB2lB7FDqxzAi8lhLDAAA/u5+431fYpvjvFKsD/HkmF6lTkeNJv6n52v0ym7tyfYjzBPCqls25Agb/Dv3mHo6AAAA');
  background-image:image-set(url('../assets/hero-fachada.webp?v=3') type('image/webp'),url('../assets/hero-fachada.jpg?v=3') type('image/jpeg')),url('data:image/webp;base64,UklGRnAAAABXRUJQVlA4IGQAAADwBACdASogABIAPu1gq1AppSOisBgIATAdiWMArCFGgYFaB2lB7FDqxzAi8lhLDAAA/u5+431fYpvjvFKsD/HkmF6lTkeNJv6n52v0ym7tyfYjzBPCqls25Agb/Dv3mHo6AAAA');
  background-position:center,center;background-size:cover,cover;background-repeat:no-repeat,no-repeat;
  animation:kenburns 22s ease-in-out infinite alternate}
.home__veil{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(0,0,0,.26),rgba(0,0,0,.1) 45%,rgba(0,0,0,.38))}
.home__ftm{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center}
.home__ftm h1{font-family:var(--font);font-weight:600;font-size:clamp(60px,12vw,170px);letter-spacing:-.045em;color:#fff;line-height:.9}
.home__contact{position:absolute;left:0;bottom:0;z-index:3;width:100%;display:flex;flex-wrap:wrap;gap:8px 32px;
  justify-content:center;align-items:center;padding:15px var(--pad);
  background:color-mix(in srgb,var(--paper) 92%,transparent);backdrop-filter:blur(12px);border-top:1px solid var(--line)}
.home__contact span,.home__contact a{font-size:11px;letter-spacing:.12em;color:var(--ink);text-transform:uppercase}
.home__contact a:hover{opacity:.55}

/* QUEM SOMOS: história + VMV + equipe */
.qs{max-width:58ch}
.vmv{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,3vw,54px);
  margin-top:clamp(50px,6vw,84px);border-top:1px solid var(--line);padding-top:clamp(34px,4vw,52px)}
.vmv__item{display:flex;flex-direction:column;gap:13px}
.vmv__k{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--soft)}
.vmv__item p{font-size:clamp(15px,1.2vw,17px);font-weight:300;line-height:1.55;color:var(--ink);margin:0}
.qs__team{margin-top:clamp(64px,8vw,120px)}
.qs__team .sec-label{border-top:1px solid var(--line);border-bottom:none;padding-top:22px;padding-bottom:0;margin-bottom:36px}

/* PROJETOS: 4 colunas, legenda compacta */
#page-projetos .work__grid{grid-template-columns:repeat(4,1fr);gap:clamp(20px,2.4vw,38px) clamp(14px,1.4vw,22px)}
#page-projetos .pc--feature{grid-column:auto}
#page-projetos .pc__img,#page-projetos .pc--feature .pc__img{aspect-ratio:16/9}
.pcap{gap:10px;margin-top:13px;padding-top:11px}
.pcap__mt{display:none}
.pcap__nm{font-size:clamp(13px,1vw,15px)}
.pcap__n{font-size:10px}
@media (max-width:1100px){#page-projetos .work__grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:760px){#page-projetos .work__grid{grid-template-columns:1fr 1fr}.vmv{grid-template-columns:1fr}.home__contact{gap:6px 20px}}

/* =========================================================
   AJUSTES v3 — home 1 tela + rodapé faixa fina · galeria
   colada ao topo, sem filtros, gap mínimo · hover c/ logo
   ========================================================= */
:root{--foot-h:56px}

/* ---- RODAPÉ: faixa fina, igual o cabeçalho ---- */
.rfoot{background:var(--ink);color:#fff;padding:0 var(--pad);min-height:var(--foot-h);
  display:flex;align-items:center;border-top:1px solid rgba(255,255,255,.08)}
.rfoot__in{width:100%;max-width:none;margin:0;padding:0;border:none;
  display:flex;align-items:center;justify-content:space-between;gap:20px}
.rfoot__logo{height:14px;width:auto;opacity:.9}
.rfoot__meta{display:flex;align-items:center;gap:clamp(14px,2.4vw,34px);flex-wrap:wrap}
.rfoot__meta a{color:rgba(255,255,255,.72);font-size:11px;letter-spacing:.03em;transition:color .35s var(--ease)}
.rfoot__meta a:hover{color:#fff}
.rfoot__cr{color:rgba(255,255,255,.38);font-size:10px;letter-spacing:.07em}

/* ---- HOME: imagem + rodapé cabem em 1 tela (sem rolar) ---- */
body.is-home{overflow:hidden}
body.is-home .rpage--home{height:calc(100vh - var(--foot-h));height:calc(100svh - var(--foot-h));min-height:0}

/* ---- PROJETOS: colar ao topo, sem título/filtros, gap mínimo ---- */
#page-projetos .rp__wrap{padding-top:clamp(76px,9vh,104px);padding-bottom:clamp(24px,4vh,44px)}
#page-projetos .work__filters{display:none!important}
#page-projetos .work__grid{gap:6px}
#page-projetos .pcap{display:none!important}
#page-projetos .pc__cat,#page-projetos .pc__play,#page-projetos .pc__logo{display:none!important}

/* ---- HOVER: véu preto transparente + logo do projeto centralizado ---- */
#page-projetos .pc__img{position:relative}
#page-projetos .pc__overlay{display:flex!important;position:absolute;inset:0;z-index:3;
  align-items:center;justify-content:center;padding:16px;pointer-events:none;
  background:rgba(12,12,11,0);opacity:0;
  transition:opacity .5s var(--ease),background-color .5s var(--ease)}
#page-projetos .pc:hover .pc__overlay,#page-projetos .pc:focus-within .pc__overlay{opacity:1;background:rgba(12,12,11,.52)}
#page-projetos .pc__ov-logo{max-width:66%;max-height:52%;object-fit:contain;
  mix-blend-mode:screen;opacity:1;
  transform:translateY(10px) scale(.98);transition:transform .6s var(--ease)}
#page-projetos .pc:hover .pc__ov-logo{transform:none}
#page-projetos .pc__ov-name{color:#fff;font-family:var(--font);font-weight:500;
  font-size:clamp(13px,1.2vw,18px);letter-spacing:.03em;text-align:center;line-height:1.25;padding:0 8px;
  transform:translateY(10px);transition:transform .6s var(--ease)}
#page-projetos .pc:hover .pc__ov-name{transform:none}
#page-projetos .pc__img>img{transition:transform 1.2s var(--ease)}
#page-projetos .pc:hover .pc__img>img{transform:scale(1.04)}

@media (max-width:760px){.rfoot__meta{gap:10px 16px}.rfoot__cr{display:none}}

/* =========================================================
   AJUSTES v4 — galeria full-bleed · menu delicado · Quem
   somos com imagens de fundo e efeito minimalista
   ========================================================= */

/* ---- MENU: textos minúsculos e delicados ---- */
.nav__links a{font-size:13.5px;font-weight:400;letter-spacing:.02em;text-transform:lowercase;color:var(--soft)}
.nav__links a:hover,.nav__links a.is-current{color:var(--ink)}
.mobile-menu a{text-transform:lowercase;font-weight:300}

/* ---- PROJETOS: sem margem lateral, galeria por inteiro na tela ---- */
#page-projetos .rp__wrap{max-width:none;padding-left:0;padding-right:0}

/* ---- QUEM SOMOS: intro com retrato + VMV sobre imagem ---- */
.qs__wrap{padding-bottom:clamp(30px,5vh,60px)}
.qs__wrap--team{padding-top:clamp(30px,5vh,60px)}
.qs__intro{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(30px,5vw,80px);align-items:center}
.qs__lead-col .rp__h{margin-top:6px}
.qs__portrait{position:relative;overflow:hidden;background:#e2e0d8}
.qs__portrait img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;
  filter:grayscale(1) contrast(1.03);transform:scale(1.01);
  transition:filter 1.1s var(--ease),transform 1.4s var(--ease)}
.qs__portrait:hover img{filter:grayscale(0) contrast(1);transform:scale(1.04)}
.qs__portrait figcaption{position:absolute;left:0;bottom:0;width:100%;padding:16px 18px;
  background:linear-gradient(0deg,rgba(0,0,0,.55),transparent);
  color:#fff;font-size:10px;letter-spacing:.14em;text-transform:uppercase}

.qs__band{position:relative;overflow:hidden;margin:clamp(20px,4vw,60px) 0;
  padding:clamp(64px,11vw,150px) var(--pad)}
.qs__band-bg{position:absolute;inset:0;z-index:0;
  background:url('../assets/hero-fachada.jpg') center/cover;
  filter:grayscale(1) brightness(.9);transform:scale(1.06);
  animation:qsKen 22s ease-in-out infinite alternate}
.qs__band-veil{position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,rgba(12,12,11,.72),rgba(12,12,11,.58))}
@keyframes qsKen{from{transform:scale(1.06)}to{transform:scale(1.16)}}
.vmv--onimg{position:relative;z-index:2;max-width:1520px;margin:0 auto;
  display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(28px,4vw,64px)}
.vmv--onimg .vmv__item{border-top:1px solid rgba(255,255,255,.28);padding-top:20px}
.vmv--onimg .vmv__k{color:rgba(255,255,255,.6)}
.vmv--onimg p{color:rgba(255,255,255,.92);font-size:clamp(15px,1.3vw,18px);line-height:1.55}

@media (max-width:760px){
  .qs__intro{grid-template-columns:1fr;gap:26px}
  .qs__portrait img{aspect-ratio:16/10}
  .vmv--onimg{grid-template-columns:1fr;gap:22px}
}

/* =========================================================
   AJUSTES v5 — Quem somos mais compacta (menos altura,
   textos menores, blocos próximos)
   ========================================================= */
#page-quem .rp__wrap{min-height:auto;padding-top:clamp(96px,12vh,132px);padding-bottom:0}
.qs__wrap{padding-bottom:clamp(20px,3.5vh,40px)}
.qs__wrap--team{padding-top:clamp(22px,3.5vh,44px)}
.qs__intro{align-items:center;gap:clamp(28px,4vw,64px)}
.qs__lead-col .rp__h{font-size:clamp(32px,4vw,58px);line-height:.98}
#page-quem .rp__lead{font-size:clamp(15px,1.2vw,17.5px);margin-top:18px;line-height:1.5;max-width:50ch}
.qs__band{margin:clamp(14px,2.5vw,34px) 0;padding:clamp(42px,6.5vw,88px) var(--pad)}
.vmv--onimg{gap:clamp(24px,3vw,48px)}
.vmv--onimg .vmv__item{padding-top:16px}
.vmv--onimg p{font-size:clamp(14px,1.05vw,16px);line-height:1.5}
.qs__team{margin-top:0}

/* =========================================================
   AJUSTES v6 — QUEM SOMOS remodelada: editorial claro
   (fundo branco · foto de assinatura full-bleed · VMV em
   colunas com fio · equipe)
   ========================================================= */
#page-quem .rp__wrap{min-height:auto}
.qe__wrap{padding-top:clamp(96px,12vh,132px);padding-bottom:0}
.qe__wrap + .qe__wrap{padding-top:0}
.qe__intro{max-width:900px}
.qe__intro .sec-label{display:block;margin-bottom:0}
.qe__stmt{font-family:var(--font);font-weight:500;letter-spacing:-.03em;line-height:1.03;
  font-size:clamp(34px,5.2vw,72px);color:var(--ink);margin:12px 0 0}
.qe__stmt em{font-style:italic;font-weight:300}
.qe__lead{margin-top:22px;font-size:clamp(15px,1.2vw,18px);font-weight:300;line-height:1.6;
  color:var(--soft);max-width:62ch}

/* foto de assinatura — full-bleed, P&B sutil */
.qe__photo{margin:clamp(38px,6vw,80px) 0 0;width:100%;overflow:hidden}
.qe__photo img{display:block;width:100%;height:clamp(300px,54vh,600px);object-fit:cover;
  filter:none;transform:scale(1.001)}

/* VMV — colunas limpas com fio fino */
.qe__vmv{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(28px,4vw,64px);
  margin-top:clamp(40px,6vw,80px)}
.qe__col{border-top:1px solid var(--ink);padding-top:18px}
.qe__k{display:block;font-size:11px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--soft);margin-bottom:12px}
.qe__col p{font-size:clamp(14px,1.05vw,16px);line-height:1.55;color:var(--ink)}

/* equipe */
.qe__team{margin-top:clamp(46px,6vw,88px);border-top:1px solid var(--line);
  padding-top:clamp(30px,4vw,52px);padding-bottom:clamp(40px,6vw,70px)}
.qe__team .sec-label{display:block;margin-bottom:30px}

@media (max-width:760px){
  .qe__vmv{grid-template-columns:1fr;gap:22px}
  .qe__photo img{height:46vh}
}

/* =========================================================
   AJUSTES v7 — PÁGINA DO PROJETO: ver todas as imagens
   inteiras (sem recorte) · capa natural · vídeo 16:9
   ========================================================= */

/* capa: proporção natural, nada cortado */
.pd__cover{height:auto;min-height:0;background:#111}
.pd__cover-img{width:100%;height:auto;max-height:90vh;object-fit:contain;display:block}

/* galeria em masonry: cada foto na proporção real */
.pd__gal{grid-column:1/13;column-count:2;column-gap:10px;margin-top:6px}
.pd__gal .pd__shot{position:relative;break-inside:avoid;-webkit-column-break-inside:avoid;
  display:block;margin:0 0 10px;border-radius:0;overflow:hidden;background:#151515}
.pd__gal .pd__shot img{width:100%;height:auto;display:block;
  aspect-ratio:auto;object-fit:contain;transition:opacity .6s var(--ease)}
.pd__gal .pd__shot:hover img{transform:none}
.pd__gal .pd__idx{opacity:0;transition:opacity .35s var(--ease)}
.pd__gal .pd__shot:hover .pd__idx{opacity:1}

/* vídeo: 16:9 limpo, largura cheia */
.pd-e--video{grid-column:1/13}
.pd__videowrap{aspect-ratio:16/9;border-radius:0;background:#000}

@media (max-width:900px){.pd__gal{column-count:1}}

/* =========================================================
   AJUSTES v8 — CORREÇÃO DE CONTRASTE
   O tema P&B igualou --coral e --ink (#161616). Todas as
   regras "background:var(--coral); color:var(--ink)" viraram
   tinta-sobre-tinta = invisível. Aqui devolvemos o contraste.
   ========================================================= */

/* -- painel admin / editor (fundo escuro): botão primário claro -- */
.be__btn{background:#fff;color:#161616}
.be__btn:hover{background:#e6e4dc}
.ax__tab.is-active{background:#fff;color:#161616;border-color:#fff}
.ax__item.is-active,.be__item.is-active{background:#fff;color:#161616}
.ax__capa{background:#fff;color:#161616}
.ax__img-ctrl button:hover,.be__add:hover,.bk__ctrl button:hover,
.landing__close:hover,.lb__nav:hover{background:#fff;color:#161616;border-color:#fff}
.ax__form input:focus,.ax__form textarea:focus,.ax__form select:focus{border-color:#fff}

/* -- site (fundo claro) --
   .btn--coral já é tratado acima (link sublinhado no Contato,
   contornado nos demais) — não sobrescrever aqui. */
.lp-cta{background:var(--ink);color:var(--paper)}
::selection{background:var(--ink);color:var(--paper)}

/* =========================================================
   AJUSTES v9 — FLUIDO EM QUALQUER TELA
   Laterais mínimas e sem teto de largura: o conteúdo ocupa
   a tela inteira em qualquer resolução.
   ========================================================= */
:root{
  --pad:clamp(12px,1.6vw,26px);   /* antes: até 100px por lado */
  --maxw:none;                    /* antes: 1440px */
}
/* destravar os tetos de 1520px do tema */
.rp__wrap,.rfoot__in,.rfoot__bar,.vmv--onimg{max-width:none}
/* wraps internos remodelados */
.qe__intro{max-width:none}
.qe__lead{max-width:70ch}
/* páginas de venda / módulos herdados */
.manifesto,.work__head,.proj,.work__grid,.services__head,.svc-grid,
.process__head,.studio__team{max-width:none}
/* projetos aparecem INSTANTÂNEOS (sem o reveal opacity:0 do tema antigo) */
#page-projetos .pc{opacity:1;transform:none;transition:none}
/* projetos: estrutura fixa — SEMPRE 4 colunas; só o tamanho escala */
#page-projetos .work__grid{grid-template-columns:repeat(4,1fr)}
@media (min-width:761px){
  #page-projetos .work__grid{grid-template-columns:repeat(4,1fr)!important}
}

/* home 1-tela robusta: flex em vez de altura fixa — o rodapé
   pode ter qualquer altura (quebra de linha no mobile) que a
   imagem se ajusta e nada estoura a tela */
body.is-home{display:flex;flex-direction:column;height:100vh;height:100svh;overflow:hidden}
body.is-home main{flex:1;min-height:0}
body.is-home .rpage--home{height:100%;min-height:0}
body.is-home .rfoot{flex-shrink:0}

/* =========================================================
   AJUSTES v10 — GALERIA PINADA no projeto (CSS sticky +
   crossfade dirigido pelo scroll). Sticky funciona dentro
   do overlay (que tem transform — o pin do GSAP quebrava).
   5 fotos empilhadas, uma visível por vez; rolar troca com
   crossfade e o contador acompanha; ao final solta.
   ========================================================= */
.pd__pin{position:relative;background:#0e0e0d}
.pd__pin-sticky{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden}
/* trilho horizontal: fotos inteiras em fila, altura da tela; o scroll desloca pro lado */
.pd__pin-stack{position:absolute;left:0;top:0;height:100%;width:max-content;
  display:flex;gap:10px;will-change:transform}
.pd__pin-img{position:relative;margin:0;height:100%;flex:0 0 auto}
.pd__pin-img img{height:100%;width:auto;max-width:none;display:block}
.pd__pin-count{position:absolute;right:clamp(16px,2.5vw,40px);bottom:clamp(16px,2.5vw,34px);z-index:5;
  color:#fff;font-size:12px;letter-spacing:.14em}
.pd__pin-img img{will-change:transform,opacity}
/* legenda da sequência: número grande que anima a cada troca + nome */
.pd__pin-cap{position:absolute;left:clamp(16px,2.5vw,40px);bottom:clamp(16px,2.5vw,34px);z-index:5;
  display:flex;align-items:baseline;gap:14px;color:#fff;pointer-events:none}
.pd__pin-num{font-size:clamp(40px,6vw,84px);font-weight:500;letter-spacing:-.02em;line-height:1;
  display:inline-block}
.pd__pin-num.is-tick{animation:pinNum .55s cubic-bezier(.22,.8,.3,1)}
@keyframes pinNum{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.pd__pin-name{font-size:clamp(12px,1.1vw,15px);letter-spacing:.06em;text-transform:uppercase;opacity:.75}
/* fallback (prefers-reduced-motion): empilha normal, sem trilho */
.pd__pin--static{height:auto!important;background:none}
.pd__pin--static .pd__pin-sticky{position:static;height:auto;overflow:visible}
.pd__pin--static .pd__pin-stack{position:static;display:block;width:auto;height:auto;transform:none!important}
.pd__pin--static .pd__pin-img{position:static;opacity:1!important;margin:0 0 10px;height:auto}
.pd__pin--static .pd__pin-img img{width:100%;height:auto}
.pd__pin--static .pd__pin-count,.pd__pin--static .pd__pin-cap,.pd__pin--static .pd__pin-cue{display:none}

/* capa do projeto: sem logo ao lado do título (o logo aparece
   só na abertura, abaixo da capa, junto da ficha técnica) */
.pd__cover-info .pd__logo{display:none!important}

/* =========================================================
   AJUSTES v12 — A CAPA É O TRILHO (tela cheia, no topo)
   A seção da capa vira o trilho horizontal pinado: altura
   definida por JS; o sticky precisa de overflow visível.
   ========================================================= */
.pd__cover.pd__pin{position:relative;min-height:0;overflow:visible;background:#0e0e0d;height:100vh;height:100svh}
.pd__cover.pd__pin .pd__cover-grad{position:absolute;inset:0;z-index:2;pointer-events:none;
  background:linear-gradient(to top,rgba(12,12,11,.72) 0%,rgba(12,12,11,0) 42%)}
/* título/ficha sobre o trilho (canto inferior esquerdo) */
.pd__cover.pd__pin .pd__cover-info{position:absolute;left:clamp(16px,2.5vw,40px);
  bottom:clamp(16px,2.5vw,34px);z-index:6;width:auto;max-width:min(52ch,44%);
  transform:none;margin:0;padding:0;display:flex;flex-direction:column;align-items:flex-start;gap:10px;
  will-change:opacity,transform}
/* setinha delicada: convida a rolar para o lado */
.pd__pin-cue{position:absolute;left:50%;transform:translateX(-50%);z-index:6;
  bottom:clamp(16px,2.5vw,34px);display:flex;align-items:center;gap:12px;
  color:rgba(255,255,255,.72);font-size:10px;letter-spacing:.22em;text-transform:uppercase;
  pointer-events:none;white-space:nowrap}
.pd__pin-cue svg{width:46px;height:8px;overflow:visible;animation:cueSlide 2.4s var(--ease) infinite}
.pd__pin-cue svg path{fill:none;stroke:currentColor;stroke-width:1;vector-effect:non-scaling-stroke}
@keyframes cueSlide{0%,100%{transform:translateX(0);opacity:.55}50%{transform:translateX(7px);opacity:1}}
/* contador (canto inferior direito) */
.pd__pin-cap{position:absolute;right:clamp(16px,2.5vw,40px);bottom:clamp(16px,2.5vw,34px);
  left:auto;z-index:6;display:flex;align-items:baseline;gap:8px;color:#fff;pointer-events:none}
.pd__pin-tot{font-size:13px;letter-spacing:.1em;opacity:.5}
@media (max-width:760px){
  .pd__cover.pd__pin .pd__cover-info{max-width:70%}
  .pd__pin-cue{left:auto;right:clamp(16px,2.5vw,40px);transform:none;
    bottom:calc(clamp(16px,2.5vw,34px) + 46px)}
  .pd__pin-cue svg{width:32px}
}

/* =========================================================
   AJUSTES v11 — LENIS (rolagem macia) — CSS recomendado
   ========================================================= */
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}
.lenis.lenis-stopped{overflow:hidden}
