
/* ============================================================
   PAGINA: index.html  (scope: body.page-home)
   ============================================================ */

/* ── Reset global de links ── */
body.page-home a, body.page-home a:hover, body.page-home a:visited, body.page-home a:active { color: inherit; text-decoration: none; }

/* ═══════════════════════════════════════════════════════════════
   INDEX MERCADO DE ORIGEM
   Versão 6 Autoridade Visual Final
   Ordem: Hero → Esteira → Sec-Verde → Sec-Palha → Janela01 → Esteira02
          → Janela02 → Sec-Dourado → Esteira Ouro → Janela03 (Rooftop) → Quote → CTA/Footer
═══════════════════════════════════════════════════════════════ */
body.page-home {
  --verde:       #1A2819;
  --verde-vivo:  #3A4D39;
  --verde-card:  #1e2e1d;
  --verde-deep:  #111e10;
  --palha:       #F2EFE9;
  --palha-dark:  #e6e1d8;
  --palha-mid:   #ede8df;
  --ow:          #F2EEE9;
  --go:          #B68D40;
  --go-lt:       #cfa355;
  --go-pa:       #d4b87a;
  --go-bd:       rgba(182,141,64,.22);
  --go-bd-dk:    rgba(182,141,64,.38);
  --bordo:       #5A0F1A;
  --bordo2:      #7a1520;
  --bordo-lt:    #9e1d2a;
  --bordo-bd:    rgba(90,15,26,.35);
  --palha-f:     #F5EBDD;
  --acento:      #2C4A2B;
  --mu:          #7a8a79;
  --mu-dk:       #5a6a59;
  --bordo-prof:  #4A0E0E;
  --ease:        cubic-bezier(0.16,1,0.3,1);
  --shadow-deep: 0 20px 60px rgba(0,0,0,.35),0 6px 20px rgba(0,0,0,.18);
  --shadow-card: 0 12px 40px rgba(0,0,0,.18),0 3px 12px rgba(0,0,0,.10);

  /* Safe area nunca encostar na borda física */
  --safe: clamp(20px,6vw,80px);
}

/* ── Reset & Base ── */
html, body.page-home { overflow-x:hidden; max-width:100%; }
body.page-home *, body.page-home *::before, body.page-home *::after { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; font-size:16px; }
body.page-home {
  background:var(--verde); color:var(--ow);
  font-family:'DM Sans',sans-serif; font-weight:300;
  /* cursor:none removido, agora aplicado via @media (pointer:fine) */
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
  line-height:1.6; letter-spacing:.015em;
}
body.page-home img { display:block; object-fit:cover; max-width:100%; }
body.page-home h1 em, body.page-home h2 em, body.page-home h3 em, body.page-home p em { font-style:italic; color:inherit; }

/* ── Cursor rAF puro ── */
body.page-home .cursor {
  position:fixed; left:0; top:0; width:8px; height:8px; border-radius:50%;
  background:var(--go); pointer-events:none; z-index:9999;
  transform:translate(-50%,-50%);
  will-change:transform;
  box-shadow:0 0 20px rgba(182,141,64,.4);
  transition:transform .15s var(--ease);
}
body.page-home .cursor-ring {
  position:fixed; left:0; top:0; width:38px; height:38px; border-radius:50%;
  border:1px solid rgba(182,141,64,.5); pointer-events:none; z-index:9998;
  transform:translate(-50%,-50%);
  will-change:transform;
  transition:width .07s linear, height .07s linear, border-color .07s linear;
}

/* ══════════════════════════════════════════════════════════════
   CONTAINER LUXURY max-width + safe area lateral obrigatória
══════════════════════════════════════════════════════════════ */
body.page-home .container-luxury {
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--safe);
  padding-right: var(--safe);
  width: 100%;
}
/* Alias histórico aponta para o mesmo sistema */
body.page-home .inner {
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--safe);
  padding-right: var(--safe);
  width: 100%;
}
body.page-home .inner-raw {
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}

/* ── Nav ── */
body.page-home nav {
  position:fixed !important; top:0 !important; left:0; right:0; z-index:500;
  height:76px; padding:0 var(--safe);
  display:flex; align-items:center; justify-content:space-between;
  background:rgba(182,141,64,.93);
  backdrop-filter:blur(22px) saturate(1.4);
  -webkit-backdrop-filter:blur(22px) saturate(1.4);
  border:none !important;
  box-shadow:none !important;
  transition:background .45s var(--ease);
  transform:none !important;
  will-change:auto;
}
body.page-home nav.scrolled { background:rgba(255,255,255,.92); border:none !important; box-shadow:none !important; }
body.page-home nav.scrolled .nav-logo-main { color:var(--verde); text-shadow:none; }
body.page-home nav.scrolled .nav-logo-sub { color:var(--go); }
body.page-home nav.scrolled .nav-links a { color:var(--mu-dk); }
body.page-home nav.scrolled .nav-links a:hover, body.page-home nav.scrolled .nav-links a.active { color:var(--verde); }
body.page-home nav.scrolled .nav-cta { color:var(--go); border-color:rgba(182,141,64,.45); }
body.page-home nav.scrolled .nav-cta:hover { background:transparent; color:var(--bordo-prof); border-color:rgba(74,14,14,.45); box-shadow:none; }
body.page-home nav.scrolled .hamburger span { background:var(--verde); }
body.page-home .nav-logo { text-decoration:none; display:flex; flex-direction:column; line-height:1; }
body.page-home .nav-logo-main { font-family:'Playfair Display',serif; font-size:clamp(20px,2.4vw,26px); letter-spacing:.09em; color:var(--ow); transition:color .45s; }
body.page-home .nav-logo-sub { font-size:clamp(7px,.9vw,8.5px); letter-spacing:.28em; text-transform:uppercase; color:var(--go); margin-top:3px; }
body.page-home .nav-links { display:flex; gap:clamp(24px,3vw,44px); list-style:none; }
body.page-home .nav-links a { font-size:clamp(9px,1vw,10.5px); letter-spacing:.2em; text-transform:uppercase; text-decoration:none; color:rgba(242,238,233,.62); position:relative; transition:color .3s var(--ease); padding:4px 0; }
body.page-home .nav-links a::after { content:''; position:absolute; bottom:0; left:0; width:0; height:1px; background:var(--go); transition:width .4s var(--ease); }
body.page-home .nav-links a:hover, body.page-home .nav-links a.active { color:var(--ow); }
body.page-home .nav-links a:hover::after, body.page-home .nav-links a.active::after { width:100%; }
body.page-home .nav-cta { font-size:clamp(12px,1.15vw,13.5px); letter-spacing:.2em; text-transform:uppercase; text-decoration:none; color:var(--go); border:0.5px solid rgba(182,141,64,.42); padding:10px clamp(16px,2vw,26px); transition:all .3s var(--ease); background:transparent; box-shadow:none; }
body.page-home .nav-cta:hover { background:transparent; color:var(--go-lt); border-color:rgba(207,163,85,.7); box-shadow:none; }
body.page-home .hamburger { display:none; flex-direction:column; gap:5px; cursor:pointer; background:none; border:none; padding:4px; }
body.page-home .hamburger span { display:block; width:24px; height:1px; background:var(--ow); transition:transform .3s,opacity .3s,background .45s; }
body.page-home .mobile-menu { position:fixed; inset:0; background:var(--verde); z-index:490; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:40px; transform:translateX(100%); transition:transform .55s var(--ease); }
body.page-home .mobile-menu.open { transform:translateX(0); }
body.page-home .mobile-menu a { font-family:'Playfair Display',serif; font-size:clamp(28px,6vw,34px); color:var(--ow); text-decoration:none; transition:all .3s; opacity:0; transform:translateY(20px); }
body.page-home .mobile-menu.open a { opacity:1; transform:translateY(0); }
body.page-home .mobile-menu.open a:nth-child(1) {transition-delay:.1s} body.page-home .mobile-menu.open a:nth-child(2) {transition-delay:.15s} body.page-home .mobile-menu.open a:nth-child(3) {transition-delay:.2s} body.page-home .mobile-menu.open a:nth-child(4) {transition-delay:.25s}
body.page-home .mobile-menu a:hover { color:var(--go); }

/* ── Eyebrow ── */
body.page-home .eyebrow { display:flex; align-items:center; gap:14px; margin-bottom:24px; }
body.page-home .eyebrow-line { width:48px; height:1px; background:var(--go); flex-shrink:0; }
body.page-home .eyebrow span { font-size:clamp(13px,1.3vw,15px); letter-spacing:.32em; text-transform:uppercase; color:var(--go); font-weight:600; }
body.page-home .eyebrow.ey-bordo .eyebrow-line { background:var(--bordo-prof); }
body.page-home .eyebrow.ey-bordo span { color:var(--bordo-prof); }

/* ── Reveal GPU only ── */
body.page-home .reveal { opacity:0; transform:translateY(32px); transition:opacity 1.1s var(--ease),transform 1.1s var(--ease); will-change:opacity,transform; }
body.page-home .reveal.visible { opacity:1; transform:none; }
body.page-home .fade-up { opacity:0; transform:translateY(24px); transition:opacity .9s var(--ease),transform .9s var(--ease); }
body.page-home .fade-up.active { opacity:1; transform:none; }
body.page-home .d1 {transition-delay:.12s} body.page-home .d2 {transition-delay:.24s} body.page-home .d3 {transition-delay:.38s} body.page-home .d4 {transition-delay:.52s}

@keyframes fadeUp__page-home { from{opacity:0;transform:translateY(28px)} to{opacity:1;transform:none} }
@keyframes fadeCorner__page-home { to{opacity:1} }
@keyframes grow__page-home { to{width:clamp(150px,20vw,220px)} }
@keyframes pulse__page-home { 0%,100%{opacity:.3} 50%{opacity:.9} }
@keyframes marquee__page-home { from{transform:translateX(0)} to{transform:translateX(-50%)} }
@keyframes statSlideIn__page-home { to{opacity:1;transform:translateX(0)} }
@keyframes float-particle__page-home { 0%,100%{transform:translateY(0) translateX(0);opacity:0} 10%{opacity:.6} 50%{transform:translateY(-100px) translateX(30px);opacity:.3} 90%{opacity:.6} }

/* ── Botões ── */
body.page-home .btn-primary {
  display:inline-flex; align-items:center; gap:14px;
  background:transparent; color:var(--go);
  border:1px solid rgba(182,141,64,.55);
  text-decoration:none; font-size:clamp(9px,1vw,11px); letter-spacing:.25em;
  text-transform:uppercase; padding:20px clamp(32px,5vw,56px);
  font-weight:500; font-family:'DM Sans',sans-serif;
  transition:all .5s var(--ease); position:relative; overflow:hidden;
}
body.page-home .btn-primary::before { content:''; position:absolute; inset:0; background:var(--go); transform:translateY(101%); transition:transform .5s cubic-bezier(0.16,1,0.3,1); z-index:0; }
body.page-home .btn-primary > * { position:relative; z-index:1; }
body.page-home .btn-primary span, body.page-home .btn-primary svg { position:relative; z-index:1; }
body.page-home .btn-primary:hover::before { transform:translateY(0); }
body.page-home .btn-primary:hover { color:var(--verde); border-color:var(--go); box-shadow:0 8px 32px rgba(182,141,64,.2); transform:translateY(-2px); }
body.page-home .btn-primary svg { transition:transform .3s; }
body.page-home .btn-primary:hover svg { transform:translateX(4px); }
body.page-home .btn-ghost { display:inline-flex; align-items:center; gap:12px; color:rgba(242,238,233,.55); text-decoration:none; font-size:clamp(9px,1vw,10px); letter-spacing:.2em; text-transform:uppercase; transition:all .3s var(--ease); padding:8px 0; }
body.page-home .btn-ghost:hover { color:var(--ow); }
body.page-home .ghost-line { width:28px; height:1px; background:currentColor; transition:width .35s var(--ease); flex-shrink:0; }
body.page-home .btn-ghost:hover .ghost-line { width:46px; }
body.page-home .btn-bordo { background:transparent; color:var(--bordo-prof); border:1px solid rgba(74,14,14,.5); box-shadow:none; }
body.page-home .btn-bordo::before { background:var(--bordo-prof) !important; }
body.page-home .btn-bordo:hover { color:var(--palha-f) !important; border-color:var(--bordo-prof); box-shadow:0 8px 24px rgba(74,14,14,.2); }
body.page-home .btn-ghost-dk { display:inline-flex; align-items:center; gap:12px; color:var(--bordo); text-decoration:none; font-size:clamp(9px,1vw,10px); letter-spacing:.2em; text-transform:uppercase; border:1px solid var(--bordo-bd); padding:14px 32px; transition:all .3s var(--ease); }
body.page-home .btn-ghost-dk:hover { background:var(--bordo); color:var(--palha-f); border-color:var(--bordo); }

/* ═══════════════════════════════════════════════════════════
   HERO
═══════════════════════════════════════════════════════════ */
body.page-home .hero { position:relative; min-height:100svh; display:flex; flex-direction:column; justify-content:flex-end; overflow:hidden; background:var(--verde); }
body.page-home .hero-bg-parallax {
  position:absolute; inset:0;
  background-image:url('../assets/images/fachada-noturna.jpg');
  background-size:cover; background-position:center; background-repeat:no-repeat;
  background-attachment:fixed;
  z-index:0;
}
@media(max-width:960px)  { body.page-home .hero-bg-parallax { background-attachment:scroll; background-position:22% center; } }
@media(max-width:640px)  { body.page-home .hero-bg-parallax { background-position:12% center; } }
body.page-home .hero-overlay { position:absolute; inset:0; z-index:1; background:linear-gradient(to right,rgba(8,14,8,.88) 0%,rgba(8,14,8,.6) 45%,rgba(8,14,8,.18) 100%); }
body.page-home .hero-overlay-top { position:absolute; inset:0; z-index:1; background:linear-gradient(to bottom,rgba(0,0,0,.25) 0%,transparent 20%,transparent 80%,rgba(8,14,8,.5) 100%); }
body.page-home .hero-particles { position:absolute; inset:0; z-index:2; pointer-events:none; overflow:hidden; }
body.page-home .hero-particle { position:absolute; width:4px; height:4px; background:radial-gradient(circle,rgba(242,238,233,.25),transparent); border-radius:50%; animation:float-particle__page-home 20s infinite; }
body.page-home .hero-particle:nth-child(1) {left:10%;top:20%;animation-delay:0s} body.page-home .hero-particle:nth-child(2) {left:25%;top:60%;animation-delay:-5s} body.page-home .hero-particle:nth-child(3) {left:70%;top:30%;animation-delay:-10s} body.page-home .hero-particle:nth-child(4) {left:85%;top:70%;animation-delay:-15s} body.page-home .hero-particle:nth-child(5) {left:50%;top:45%;animation-delay:-7s}
body.page-home .hero-grid { position:absolute; inset:0; pointer-events:none; display:grid; grid-template-columns:repeat(12,1fr); z-index:3; }
body.page-home .hero-grid-col { border-right:1px solid rgba(182,141,64,.04); }
body.page-home .hero-grid-col:first-child { border-left:1px solid rgba(182,141,64,.04); }
body.page-home .hero-bg-letters { position:absolute; right:-1%; bottom:-10%; font-family:'Playfair Display',serif; font-size:clamp(200px,30vw,500px); font-weight: 700 !important; line-height:1; color:rgba(182,141,64,.03); pointer-events:none; user-select:none; letter-spacing: -0.04em !important; z-index:3; }
body.page-home .corner-tr { position:absolute; top:94px; right:var(--safe); width:100px; height:100px; border-top:1px solid var(--go-bd); border-right:1px solid var(--go-bd); z-index:4; opacity:0; animation:fadeCorner__page-home 1s 1.5s forwards; }
body.page-home .corner-bl { position:absolute; bottom:56px; left:var(--safe); width:60px; height:60px; border-bottom:1px solid var(--go-bd); border-left:1px solid var(--go-bd); z-index:4; opacity:0; animation:fadeCorner__page-home 1s 1.7s forwards; }
body.page-home .hero-badge { position:absolute; top:112px; left:var(--safe); display:flex; align-items:center; gap:12px; opacity:0; animation:fadeUp__page-home .8s .3s forwards; z-index:4; }
body.page-home .hero-badge-line { width:28px; height:1px; background:var(--go); }
body.page-home .hero-badge span { font-size:clamp(11px,1.05vw,12.5px); letter-spacing:.28em; text-transform:uppercase; color:var(--go); border-left:2px solid var(--bordo-prof); padding-left:10px; }
body.page-home .hero-accent { position:absolute; bottom:0; left:0; height:2px; width:0; z-index:4; background:linear-gradient(to right,var(--acento),var(--go),transparent); animation:grow__page-home 1.2s 1.1s var(--ease) forwards; }
body.page-home .hero-content { position:relative; padding:clamp(140px,19vh,180px) var(--safe) clamp(100px,14vh,140px); max-width:1000px; z-index:4; }
body.page-home .hero-eyebrow {
  font-size:clamp(15px,1.4vw,17px);
  letter-spacing:.28em; text-transform:uppercase; color:var(--go);
  margin-bottom:clamp(24px,3.4vh,36px);
  opacity:0; animation:fadeUp__page-home .9s var(--ease) .45s forwards;
  font-family:'DM Sans',sans-serif; font-weight:600;
  display:flex; align-items:center; gap:18px;
  text-shadow:0 1px 12px rgba(0,0,0,.35);
}
body.page-home .hero-eyebrow::before { content:''; display:inline-block; width:42px; height:1px; background:linear-gradient(to right,transparent,var(--go)); flex-shrink:0; }
body.page-home .hero-h1 { font-family:'Playfair Display',serif; font-size:clamp(42px,5.6vw,82px); font-weight:400; line-height:1.05; letter-spacing:-.02em; color:var(--ow); margin-bottom:clamp(24px,3vh,32px); opacity:0; animation:fadeUp__page-home 1s var(--ease) .62s forwards; text-shadow:0 2px 40px rgba(0,0,0,.35); max-width:840px; }
body.page-home .hero-sub { font-family:'Playfair Display',serif; font-size:clamp(22px,2.4vw,30px); font-weight:300; font-style:italic; color:rgba(242,238,233,.94); line-height:1.5; max-width:720px; margin-bottom:clamp(18px,2.5vh,26px); opacity:0; animation:fadeUp__page-home .9s var(--ease) .82s forwards; text-shadow:0 1px 20px rgba(0,0,0,.7); }

/* Hero stats */
body.page-home .hero-stats { position:absolute; right:var(--safe); top:50%; transform:translateY(-50%); display:flex; flex-direction:column; z-index:5; background:rgba(6,10,6,.52); backdrop-filter:blur(8px) saturate(1.1); -webkit-backdrop-filter:blur(8px) saturate(1.1); border:1px solid rgba(182,141,64,.12); border-radius:2px; overflow:hidden; width:clamp(160px,15vw,210px); isolation:isolate; }
body.page-home .hero-stat { padding:16px 22px; border-left:2px solid transparent; transition:border-color .35s,background .3s; opacity:0; transform:translateX(18px); animation:statSlideIn__page-home .6s var(--ease) forwards; position:relative; }
body.page-home .hero-stat:nth-child(1) {animation-delay:1.05s} body.page-home .hero-stat:nth-child(2) {animation-delay:1.3s} body.page-home .hero-stat:nth-child(3) {animation-delay:1.55s}
body.page-home .hero-stat:hover { border-left-color:rgba(182,141,64,.5); background:rgba(255,255,255,.03); }
body.page-home .hero-stat+.hero-stat { border-top:1px solid rgba(255,255,255,.06); }
body.page-home .hero-stat-val { font-family:'DM Sans',sans-serif; font-size:clamp(22px,2.2vw,30px); font-weight:300; color:var(--go); line-height:1; font-variant-numeric:tabular-nums; display:flex; align-items:baseline; justify-content:flex-end; white-space:nowrap; margin-bottom:6px; }
body.page-home .hero-stat-val .numero { display:inline-block; }
body.page-home .hero-stat-val .sufixo { font-size:.65em; color:var(--go-lt); margin-left:2px; }
body.page-home .hero-stat-lbl { font-family:'DM Sans',sans-serif; font-size:clamp(10px,1vw,11.5px); letter-spacing:.22em; text-transform:uppercase; color:rgba(207,163,85,.62); font-weight:400; line-height:1.3; text-align:right; }
body.page-home .hero-stat-ig { padding:0; border-top:1px solid rgba(182,141,64,.15); display:flex; opacity:0; animation:statSlideIn__page-home .6s var(--ease) 1.8s forwards; }
body.page-home .hero-stat-ig:last-child { animation-delay:2.05s; }
body.page-home .btn-hero-ig {
  display:inline-flex; align-items:center; justify-content:center;
  gap:11px;
  color:var(--go); text-decoration:none;
  font-size:clamp(10.5px,.95vw,11.5px); letter-spacing:.28em; text-transform:uppercase;
  padding:11px 18px; font-weight:400;
  font-family:'DM Sans',sans-serif;
  background:transparent;
  border:0.5px solid rgba(182,141,64,.32);
  border-radius:0;
  width:100%;
  transition:all .45s var(--ease);
  position:relative; overflow:hidden;
}
body.page-home .btn-hero-ig::before {
  content:''; position:absolute; inset:0;
  background:linear-gradient(120deg, transparent 0%, rgba(182,141,64,.10) 50%, transparent 100%);
  transform:translateX(-100%); transition:transform .8s var(--ease);
}
body.page-home .btn-hero-ig:hover {
  border-color:rgba(207,163,85,.6);
  color:var(--go-lt);
  background:rgba(182,141,64,.06);
}
body.page-home .btn-hero-ig:hover::before { transform:translateX(100%); }
body.page-home .btn-hero-ig svg { transition:transform .4s var(--ease); width:13px; height:13px; }
body.page-home .btn-hero-ig:hover svg { transform:translateY(-1px); }

body.page-home .scroll-cue { position:absolute; left:var(--safe); bottom:48px; display:flex; flex-direction:column; align-items:center; gap:10px; z-index:4; }
body.page-home .scroll-cue-txt { font-size:11px; letter-spacing:.24em; text-transform:uppercase; color:rgba(242,238,233,.55); writing-mode:vertical-rl; font-weight:400; }
body.page-home .scroll-cue-line { width:1px; height:64px; background:linear-gradient(to bottom,var(--go),transparent); animation:pulse__page-home 2.2s ease-in-out infinite; }

/* ═══════════════════════════════════════════════════════════
   MARQUEE
═══════════════════════════════════════════════════════════ */
body.page-home .marquee-strip { overflow:hidden; padding:0; position:relative; z-index:10; border-top:1px solid; border-bottom:1px solid; margin:0; display:flex; align-items:center; min-height:52px; }
body.page-home .marquee-track { display:flex; animation:marquee__page-home 32s linear infinite; align-items:center; }
body.page-home .marquee-item { display:inline-flex; align-items:center; gap:30px; padding:15px 32px; white-space:nowrap; flex-shrink:0; font-size:clamp(11px,1.1vw,13px); letter-spacing:.3em; text-transform:uppercase; font-weight:600; font-family:'DM Sans',sans-serif; }
body.page-home .marquee-gem { width:5px; height:5px; transform:rotate(45deg); flex-shrink:0; opacity:.55; }
body.page-home .mq-gold { background:var(--go);      border-color:rgba(74,14,14,.4); }
body.page-home .mq-gold  .marquee-item { color:var(--bordo-prof); font-weight:700; }
body.page-home .mq-gold  .marquee-gem { background:var(--bordo-prof); }
body.page-home .mq-verde { background:var(--verde-card); border-color:var(--go-bd); }
body.page-home .mq-verde .marquee-item { color:var(--go-lt); }
body.page-home .mq-verde .marquee-gem { background:var(--go-lt); }
body.page-home .mq-palha { background:var(--palha);   border-color:rgba(90,15,26,.2); }
body.page-home .mq-palha .marquee-item { color:var(--bordo); }
body.page-home .mq-palha .marquee-gem { background:var(--bordo); }
body.page-home .mq-ouro { background:#111e10;        border-color:rgba(182,141,64,.28); }
body.page-home .mq-ouro  .marquee-item { color:var(--go-lt); }
body.page-home .mq-ouro  .marquee-gem { background:var(--go-lt); }

/* ═══════════════════════════════════════════════════════════
   EFEITO JANELA foto de fundo com parallax
═══════════════════════════════════════════════════════════ */
body.page-home .win { position:relative; }
body.page-home .win-bg {
  position:absolute !important; top:0 !important; left:0 !important;
  width:100% !important; height:100% !important; z-index:0 !important;
  background-size:cover !important;
  background-attachment:fixed; background-repeat:no-repeat !important;
}
@media(max-width:960px)  { body.page-home .win-bg { background-attachment:scroll !important; } }
body.page-home .win-ov { position:absolute !important; top:0 !important; left:0 !important; width:100% !important; height:100% !important; z-index:1 !important; }

/* CSS órfão das classes .win/.reveal-win/.win-rooftop removido na finalização —
   substituído pelo bloco .rooftop-double e pelos splits editoriais. */

/* ═══════════════════════════════════════════════════════════
   BLOCO BASE divisor filete
═══════════════════════════════════════════════════════════ */
body.page-home .bloco-divider { height:1px; background:linear-gradient(to right,transparent,var(--bordo) 20%,var(--go) 50%,var(--bordo) 80%,transparent); opacity:.45; }

/* ═══════════════════════════════════════════════════════════
   SEC-VERDE Pilares
═══════════════════════════════════════════════════════════ */
body.page-home .sec-verde {
  background:linear-gradient(180deg,#1A2819 0%,#1e3220 50%,#162214 100%);
  color:var(--ow);
  position:relative; z-index:10;
}
body.page-home .sec-verde::before { content:''; display:block; height:1px; background:linear-gradient(to right,transparent,var(--bordo) 20%,var(--go) 50%,var(--bordo) 80%,transparent); opacity:.45; }

body.page-home .pilares-header { padding:clamp(80px,12vh,140px) 0 clamp(60px,8vh,80px); max-width:700px; }
body.page-home .pilares-h2 { font-family:'Playfair Display',serif; font-size:clamp(40px,5.2vw,74px); font-weight:400; line-height:1.02; letter-spacing:-.02em; color:var(--ow); margin-top:12px; }
body.page-home .pilares-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:rgba(182,141,64,.22); border:1px solid rgba(182,141,64,.22); }
body.page-home .pilar-card { background:rgba(17,30,16,.6); padding:clamp(56px,7.5vh,76px) clamp(36px,4vw,52px); text-decoration:none; color:inherit; position:relative; overflow:hidden; transition:background .5s var(--ease),transform .4s var(--ease); display:flex; flex-direction:column; }
body.page-home .pilares-grid .pilar-card:nth-child(1) { background:linear-gradient(155deg, #6e5230 0%, #876943 55%, #5e4427 100%); }
body.page-home .pilares-grid .pilar-card:nth-child(2) { background:#2c3e2b; }
body.page-home .pilares-grid .pilar-card:nth-child(3) { background:#3a1f24; }
body.page-home .pilares-grid .pilar-card:nth-child(1) .pilar-ordinal { color:rgba(255,243,210,.16); }
body.page-home .pilares-grid .pilar-card:nth-child(1):hover .pilar-ordinal { color:rgba(255,243,210,.26); }
body.page-home .pilares-grid .pilar-card:nth-child(1) .pilar-name { color:#FAF1DC; }
body.page-home .pilares-grid .pilar-card:nth-child(1) .pilar-desc { color:rgba(250,241,220,.78); }
body.page-home .pilares-grid .pilar-card:nth-child(1) .pilar-cta { color:#FAF1DC; }
body.page-home .pilares-grid .pilar-card:nth-child(1) .pilar-cta-line { background:#FAF1DC; }
body.page-home .pilar-card::after { content:''; position:absolute; left:0; bottom:0; right:0; height:2px; background:linear-gradient(to right,var(--bordo-prof),var(--go)); transform:scaleX(0); transform-origin:left; transition:transform .55s var(--ease); }
body.page-home .pilar-card:hover { background:rgba(90,15,26,.10); transform:translateY(-2px); }
body.page-home .pilar-card:hover::after { transform:scaleX(1); }
body.page-home .pilar-ordinal { font-family:'Playfair Display',serif; font-size:clamp(60px,8vw,88px); font-weight:400; line-height:1; color:rgba(182,141,64,.07); margin-bottom:36px; transition:color .4s; }
body.page-home .pilar-name { font-family:'Playfair Display',serif; font-size:clamp(22px,2.4vw,30px); font-weight:400; letter-spacing:-.012em; margin-bottom:18px; line-height:1.22; color:var(--ow); }
body.page-home .pilar-card:hover .pilar-ordinal { color:rgba(182,141,64,.14); }
body.page-home .pilar-icon { display:none; }
body.page-home .pilar-desc { font-size:23px; color:rgba(182,175,160,.65); line-height:1.85; flex:1; margin-bottom:36px; }
body.page-home .pilar-cta { display:flex; align-items:center; gap:12px; font-size:clamp(13px,1.25vw,15px); letter-spacing:.28em; text-transform:uppercase; color:var(--go); font-weight:600; }
body.page-home .pilar-cta-line { width:22px; height:1px; background:var(--go); transition:width .35s; }
body.page-home .pilar-card:hover .pilar-cta-line { width:38px; }
body.page-home .pilares-cta-wrap { padding:clamp(40px,6vh,56px) 0 clamp(56px,9vh,80px); border-top:1px solid var(--go-bd); }

/* ═══════════════════════════════════════════════════════════
   SEC-PALHA Design & Tradição (bloco movido)
   REGRA: fundo palha → texto BORDÔ obrigatório
═══════════════════════════════════════════════════════════ */
body.page-home .sec-palha {
  background:linear-gradient(180deg,#F2EFE9 0%,#ede8df 55%,#e8e2d8 100%);
  color:var(--bordo);
  position:relative; z-index:10;
}
body.page-home .sec-palha::before { content:''; display:block; height:1px; background:linear-gradient(to right,transparent,var(--bordo) 25%,rgba(90,15,26,.5) 60%,transparent); opacity:.5; }
body.page-home .sec-palha h2, body.page-home .sec-palha h3 { color:var(--bordo); }
body.page-home .sec-palha p, body.page-home .sec-palha li { color:rgba(60,10,18,.72); }
body.page-home .sec-palha .eyebrow-line { background:var(--bordo); }
body.page-home .sec-palha .eyebrow span { color:var(--bordo); }

/* ── Split foto + conteúdo ── */
body.page-home .vantagem-split {
  display:grid;
  grid-template-columns:1fr 1fr;
  min-height:720px;
  align-items:stretch;
}
body.page-home .vantagem-corpo-full { width:100%; max-width:1100px; margin:0 auto; padding:clamp(60px,8vh,100px) var(--safe); grid-column: 1 / -1; }
body.page-home .vantagem-split.full-neutral { grid-template-columns:1fr; min-height:auto; }
body.page-home .vantagem-foto {
  position:relative;
  min-height:560px;
  
}
body.page-home .vantagem-foto-bg {
  position:absolute !important; top:0 !important; left:0 !important;
  width:100% !important; height:100% !important;
  background-image:url('../assets/images/rooftop2.jpg');
  background-size:cover !important;
  filter:contrast(1.06) saturate(1.08);
  background-position:center 30% !important;
  background-attachment:fixed;
  background-repeat:no-repeat !important;
  z-index:0 !important;
  transform: scale(1.04);
  will-change: transform;
}
@media(max-width:960px)  { body.page-home .vantagem-foto-bg { background-attachment:scroll !important; } }
body.page-home .vantagem-foto-ov {
  position:absolute; inset:0; z-index:1;
  background: linear-gradient(
    to right,
    rgba(8,14,8,.28),
    rgba(8,14,8,.08),
    transparent
  );
}
/* .vantagem-foto::after removido — divisor agora vive em .vantagem-frame::before */
body.page-home .vantagem-foto-num {
  position:absolute; z-index:2;
  left:clamp(20px,4%,44px); bottom:8%;
  font-family:'Playfair Display',serif;
  font-size:clamp(140px,14vw,220px);
  font-weight:700; line-height:1;
  color:rgba(242,238,233,.06);
  pointer-events:none; user-select:none;
}
body.page-home .vantagem-corpo {
  padding:clamp(80px,11vh,120px) var(--safe) clamp(80px,11vh,120px) clamp(52px,6vw,80px);
  display:flex; flex-direction:column; justify-content:center;
  background:transparent;
}
body.page-home .vantagem-inner { position:relative; display:contents; }
body.page-home .vantagem-bg-word { display:none; }
body.page-home .vantagem-inner::after { display:none; }
body.page-home .vantagem-left { padding-right:0; border-right:none; }
body.page-home .vantagem-right { padding-left:0; }
body.page-home .vantagem-h2 { font-family:'Playfair Display',serif; font-size:clamp(32px,4.5vw,66px); font-weight:400; line-height:1.02; letter-spacing:-.02em; color:var(--bordo); margin-bottom:40px; }
body.page-home .vantagem-intro { font-family:'DM Sans',sans-serif; font-size:clamp(22px,1.9vw,28px); font-weight:300;  color:rgba(60,10,18,.72); line-height:1.82; margin-bottom:44px; }
body.page-home .vantagem-points { display:flex; flex-direction:column; }
body.page-home .vantagem-point { padding:30px 0; border-top:1px solid rgba(90,15,26,.12); display:grid; grid-template-columns:56px 1fr; gap:20px; align-items:start; }
body.page-home .vantagem-point:last-child { border-bottom:1px solid rgba(90,15,26,.12); }
body.page-home .vpoint-num { font-family:'Playfair Display',serif; font-size:13px; color:var(--bordo); letter-spacing:.1em; padding-top:3px; }
body.page-home .vpoint-title { font-family:'Playfair Display',serif; font-size:clamp(16px,1.6vw,18px); font-weight:400; color:var(--bordo); margin-bottom:10px; line-height:1.35; }
body.page-home .vpoint-desc { font-size:23px; color:rgba(60,10,18,.65); line-height:1.82; }
body.page-home .vpoint-tag { display:inline-block; margin-top:14px; font-size:clamp(12px,1.2vw,14px); letter-spacing:.28em; text-transform:uppercase; color:var(--bordo); border:1px solid rgba(74,14,14,.4); padding:6px 14px; transition:border-color .3s,background .3s; font-weight:600; }
body.page-home .vpoint-tag:hover { border-color:var(--bordo-prof); background:rgba(74,14,14,.06); }
body.page-home .sec-palha .btn-bordo { background:var(--bordo); color:var(--palha-f); }
body.page-home .sec-palha .btn-bordo:hover { background:var(--bordo2); }
body.page-home .sec-palha .btn-ghost { color:rgba(60,10,18,.55); }
body.page-home .sec-palha .btn-ghost:hover { color:var(--bordo); }

/* ═══════════════════════════════════════════════════════════
   SEC-DOURADO Infraestrutura
═══════════════════════════════════════════════════════════ */
body.page-home .sec-dourado {
  background:linear-gradient(180deg,#B68D40 0%,#A87E28 50%,#9A7220 100%);
  color:var(--verde);
  position:relative; z-index:10;
}
body.page-home .sec-dourado::before { content:''; display:block; height:1px; background:linear-gradient(to right,transparent,var(--bordo) 20%,rgba(26,40,25,.6) 50%,var(--bordo) 80%,transparent); opacity:.4; }
body.page-home .sec-dourado h2, body.page-home .sec-dourado h3 { color:var(--verde); }
body.page-home .sec-dourado p { color:rgba(26,40,25,.78); }
body.page-home .sec-dourado .eyebrow-line { background:var(--bordo); }
body.page-home .sec-dourado .eyebrow span { color:var(--bordo); }
body.page-home .sec-dourado .infra-h2 { color:var(--verde); }
body.page-home .sec-dourado .infra-sub { color:rgba(26,40,25,.65); }
body.page-home .sec-dourado .infra-hl-title { color:var(--verde); }
body.page-home .sec-dourado .infra-hl-desc { color:rgba(26,40,25,.7); }
body.page-home .sec-dourado .infra-hl-val { color:var(--verde);
  font-weight: 700 !important;
  letter-spacing: -0.02em;
  font-variant-numeric: tabular-nums;
  display: inline-block;}
body.page-home .sec-dourado .infra-hl-val .numero { color:var(--verde); }
body.page-home .sec-dourado .infra-hl-val small { color:rgba(26,40,25,.6); }
body.page-home .sec-dourado .infra-hl-lbl { color:rgba(26,40,25,.5); }
body.page-home .sec-dourado .infra-hl-tag { color:var(--bordo); }
body.page-home .sec-dourado .infra-highlight { background:rgba(26,40,25,.12); border-color:rgba(26,40,25,.2); }
body.page-home .sec-dourado .infra-highlight::before { background:linear-gradient(to right,var(--bordo),var(--verde)); }
body.page-home .sec-dourado .infra-item { background:rgba(26,40,25,.12); }
body.page-home .sec-dourado .infra-item:hover { background:rgba(26,40,25,.22); }
body.page-home .sec-dourado .infra-icon { color:var(--verde); }
body.page-home .sec-dourado .infra-val { color:var(--verde);
  font-weight: 700 !important;
  letter-spacing: -0.02em;
  font-variant-numeric: tabular-nums;
  display: inline-block;}
body.page-home .sec-dourado .infra-val .numero { color:var(--verde); }
body.page-home .sec-dourado .infra-val small { color:rgba(26,40,25,.6); }
body.page-home .sec-dourado .infra-val-texto { color:var(--verde); }
body.page-home .sec-dourado .infra-name { color:var(--verde); }
body.page-home .sec-dourado .infra-desc { color:rgba(26,40,25,.65); }
body.page-home .sec-dourado .infra-loc { border-color:rgba(26,40,25,.25); }
body.page-home .sec-dourado .infra-loc-tag { color:var(--bordo); }
body.page-home .sec-dourado .infra-loc-title { color:var(--verde); }
body.page-home .sec-dourado .infra-loc-desc { color:rgba(26,40,25,.65); }
body.page-home .sec-dourado .infra-loc-icon { color:var(--verde); }
body.page-home .sec-dourado .btn-ghost { color:rgba(26,40,25,.55); }
body.page-home .sec-dourado .btn-ghost:hover { color:var(--verde); }
body.page-home .sec-dourado .pilares-grid { background:rgba(26,40,25,.25); border-color:rgba(26,40,25,.25); }
body.page-home .sec-dourado .infra-grid { background:rgba(26,40,25,.25); border-color:rgba(26,40,25,.25); }

/* Infra styles */
body.page-home .infra-inner { padding:clamp(44px,6vh,64px) 0 clamp(80px,12vh,120px); display:flex; flex-direction:column; gap:clamp(48px,7vh,72px); }
body.page-home .infra-header { max-width:580px; }
body.page-home .infra-h2 { font-family:'Playfair Display',serif; font-size:clamp(36px,4.5vw,66px); font-weight:400; line-height:1.06; letter-spacing:-.015em; color:var(--ow); margin-top:16px; }
body.page-home .infra-sub { font-size:23px; color:rgba(182,175,160,.6); line-height:1.85; margin-top:22px; }
body.page-home .infra-highlight { background:var(--verde-card); border:1px solid var(--go-bd); padding:clamp(44px,6vh,60px) clamp(40px,5vw,64px); display:grid; grid-template-columns:1fr auto; gap:clamp(40px,5vw,60px); align-items:center; position:relative; overflow:hidden; }
body.page-home .infra-highlight::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(to right,var(--bordo),var(--go),var(--bordo)); opacity:.6; }
body.page-home .infra-hl-tag { font-size:clamp(13px,1.3vw,15px); letter-spacing:.32em; text-transform:uppercase; color:var(--go); margin-bottom:14px; font-weight:600; }
body.page-home .infra-hl-title { font-family:'Playfair Display',serif; font-size:clamp(26px,3.2vw,48px); font-weight:400; line-height:1.1; color:var(--ow); margin-bottom:18px; }
body.page-home .infra-hl-desc { font-size:23px; color:rgba(182,175,160,.65); line-height:1.85; max-width:520px; }
body.page-home .infra-hl-stat { text-align:right; flex-shrink:0; }
body.page-home .infra-hl-val { font-family:'Playfair Display',serif; font-size:clamp(52px,6.5vw,86px); font-weight: 700 !important; line-height:1; color:var(--go); font-variant-numeric:tabular-nums; letter-spacing: -0.02em; 
  display: inline-block;}
body.page-home .infra-hl-val .numero { display:inline-block; font-weight:300; font-variant-numeric:tabular-nums; }
body.page-home .infra-hl-val small { font-size:clamp(24px,3vw,36px); color:var(--go-lt); }
body.page-home .infra-hl-lbl { font-size:clamp(11.5px,1.1vw,13px); letter-spacing:.2em; text-transform:uppercase; color:rgba(182,175,160,.5); margin-top:6px; }
body.page-home .infra-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:rgba(182,141,64,.22); border:1px solid rgba(182,141,64,.22); }
body.page-home .infra-item { background:rgba(11,18,10,.7); padding:clamp(48px,6.5vh,64px) clamp(32px,4vw,48px); display:flex; flex-direction:column; gap:20px; transition:background .4s var(--ease),transform .4s var(--ease); position:relative; align-self:stretch; }
body.page-home .infra-item::after { content:''; position:absolute; bottom:0; left:0; right:0; height:2px; background:linear-gradient(to right,var(--bordo),transparent); transform:scaleX(0); transform-origin:left; transition:transform .5s; }
body.page-home .infra-item:hover { background:var(--verde-card); transform:translateY(-1px); }
body.page-home .infra-item:hover::after { transform:scaleX(1); }
body.page-home .infra-icon { width:48px; height:48px; color:var(--go); }
body.page-home .infra-val, body.page-home .infra-val-texto-placeholder { min-height:56px; display:flex; align-items:flex-end; }
body.page-home .infra-val { font-family:'Playfair Display',serif; font-size:clamp(30px,3.8vw,44px); font-weight: 700 !important; line-height:1; color:var(--ow); font-variant-numeric:tabular-nums;
  letter-spacing: -0.02em;
  display: inline-block;}
body.page-home .infra-val .numero { display:inline-block; font-weight:300; }
body.page-home .infra-val small { font-size:clamp(16px,2vw,20px); color:var(--go); }
body.page-home .infra-val-texto { font-family:'Playfair Display',serif; font-size:clamp(22px,2.8vw,34px); font-weight:400; line-height:1.2; color:var(--ow); min-height:56px; display:flex; align-items:flex-end; }
body.page-home .infra-name { font-family:'Playfair Display',serif; font-size:clamp(17px,1.8vw,19px); font-weight:400; color:var(--ow); }
body.page-home .infra-desc { font-size:23px; color:rgba(182,175,160,.6); line-height:1.82; }
body.page-home .infra-loc { border:1px solid var(--go-bd); padding:clamp(32px,4vh,44px) clamp(32px,4vw,52px); display:flex; align-items:center; gap:clamp(28px,4vw,44px); flex-wrap:wrap; position:relative; }
body.page-home .infra-loc::before { content:''; position:absolute; top:0; left:0; width:60px; height:2px; background:var(--bordo-prof); opacity:.8; }
body.page-home .infra-loc-icon { width:44px; height:44px; color:var(--go); flex-shrink:0; }
body.page-home .infra-loc-body { flex:1; min-width:220px; }
body.page-home .infra-loc-tag { font-size:clamp(13px,1.3vw,15px); letter-spacing:.32em; text-transform:uppercase; color:var(--go); margin-bottom:10px; font-weight:600; }
body.page-home .infra-loc-title { font-family:'Playfair Display',serif; font-size:clamp(18px,1.9vw,20px); color:var(--ow); margin-bottom:8px; }
body.page-home .infra-loc-desc { font-size:23px; color:rgba(182,175,160,.6); line-height:1.78; }

/* ═══════════════════════════════════════════════════════════
   VERDE PROFUNDO Quote
═══════════════════════════════════════════════════════════ */
body.page-home .sec-verde-prof {
  background:linear-gradient(180deg,#2C4A2B 0%,#324f31 50%,#253e24 100%);
  color:var(--ow);
  position:relative; z-index:10;
}
body.page-home .sec-verde-prof::before { content:''; display:block; height:1px; background:linear-gradient(to right,transparent,var(--go) 25%,var(--bordo) 50%,var(--go) 75%,transparent); opacity:.5; }
body.page-home .quote-inner { padding:clamp(120px,15vh,180px) 0; text-align:center; position:relative; overflow:hidden; }
body.page-home .quote-inner::before { content:''; position:absolute; left:50%; top:0; bottom:0; width:1px; transform:translateX(-50%); background:linear-gradient(to bottom,transparent,rgba(182,141,64,.22) 15%,rgba(182,141,64,.22) 85%,transparent); }
body.page-home .quote-mark { font-family:'Playfair Display',serif; font-size:clamp(80px,12vw,140px); line-height:.65; color:rgba(90,15,26,.12); display:block; margin-bottom:-10px; }
body.page-home blockquote { font-family:'Playfair Display',serif; font-size:clamp(22px,3.2vw,42px); font-weight:300; font-style:italic; line-height:1.52; max-width:820px; margin:0 auto 40px; color:var(--ow); }
body.page-home .quote-attr { font-size:clamp(12px,1.15vw,14px); letter-spacing:.26em; text-transform:uppercase; color:var(--go); }

/* ═══════════════════════════════════════════════════════════
   CTA + FOOTER
═══════════════════════════════════════════════════════════ */
body.page-home .cta-footer-wrap { position:relative; overflow:hidden; z-index:10; }
body.page-home .cta-footer-bg {
  position:absolute; inset:0;
  background-image:url('../assets/images/fachada-diurna.jpg');
  background-size:cover; background-position:center;
  background-attachment:fixed;
  z-index:0;
  filter:brightness(.52) saturate(.8);
  transition:filter 1s;
}
body.page-home .cta-footer-wrap:hover .cta-footer-bg { filter:brightness(.60) saturate(.88); }
@media(max-width:960px)  { body.page-home .cta-footer-bg { background-attachment:scroll; } }
body.page-home .cta-footer-wrap::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; z-index:6; background:linear-gradient(to right,transparent,var(--acento) 25%,var(--go) 50%,var(--acento) 75%,transparent); opacity:.8; }
body.page-home .cta-footer-overlay { position:absolute; inset:0; background:rgba(26,40,25,.72); z-index:1; }
body.page-home .cta-section { position:relative; z-index:2; padding:clamp(120px,16vh,180px) 0; }
body.page-home .cta-block {
  border:0.5px solid rgba(182,141,64,.28);
  padding:clamp(72px,11vh,120px) clamp(40px,6vw,84px);
  display:flex; flex-direction:column;
  gap:clamp(32px,4.5vh,52px);
  position:relative; overflow:hidden;
  background:linear-gradient(155deg, rgba(26,40,25,.42) 0%, rgba(17,30,16,.32) 100%);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
  text-align:left;
  max-width:980px;
  margin:0 auto;
}
body.page-home .cta-block::before {
  content:''; position:absolute; top:0; left:50%;
  transform:translateX(-50%);
  width:clamp(120px,18vw,200px); height:1px;
  background:linear-gradient(to right, transparent, var(--go), transparent);
  opacity:.55;
}
body.page-home .cta-block::after {
  content:''; position:absolute;
  top:24px; right:24px;
  width:36px; height:36px;
  border-top:1px solid rgba(207,163,85,.42);
  border-right:1px solid rgba(207,163,85,.42);
  pointer-events:none;
}
body.page-home .cta-text {
  display:flex; flex-direction:column; gap:18px;
  max-width:680px;
}
body.page-home .cta-eyebrow-mini {
  font-family:'DM Sans',sans-serif;
  font-size:11px; letter-spacing:.34em; text-transform:uppercase;
  color:rgba(242,238,233,.82); font-weight:500;
  display:inline-flex; align-items:center; gap:12px;
  margin-bottom:6px;
}
body.page-home .cta-eyebrow-mini::before {
  content:''; width:24px; height:1px;
  background:rgba(242,238,233,.6); display:inline-block;
}
body.page-home .cta-h2 {
  font-family:'Playfair Display',serif;
  font-size:clamp(28px,3.6vw,52px);
  font-weight:400;
  line-height:1.06;
  letter-spacing:-.02em;
  margin-bottom:0;
  color:var(--ow);
}
body.page-home .cta-h2 em { font-style:italic; color:var(--ow); }
body.page-home .cta-p {
  font-family:'DM Sans',sans-serif;
  font-size:clamp(17px,1.45vw,20px);
  color:rgba(242,238,233,.7);
  line-height:1.75;
  font-weight:300;
  max-width:560px;
}
body.page-home .cta-btns {
  display:flex; flex-direction:row; flex-wrap:wrap;
  gap:18px;
  align-items:center;
  margin-top:clamp(8px,1.5vh,16px);
  padding-top:clamp(28px,4vh,40px);
  border-top:1px solid rgba(182,141,64,.14);
}
@media(max-width:720px)  {
  body.page-home .cta-section { padding: clamp(80px,12vh,120px) 0; }
  body.page-home .cta-block { padding: clamp(56px,8vh,80px) clamp(28px,5vw,40px); gap:28px; }
  body.page-home .cta-btns { flex-direction:column; align-items:stretch; gap:14px; }
  body.page-home .cta-block::after { display:none; }
}

/* Footer */
body.page-home footer { background:var(--verde); border-top:1px solid var(--go-bd); padding:clamp(64px,9vh,100px) 0 clamp(48px,7vh,64px); position:relative; z-index:2; }
body.page-home footer::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(to right,transparent,var(--bordo) 25%,var(--go) 50%,var(--bordo) 75%,transparent); opacity:.5; }
body.page-home .footer-top { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:clamp(40px,6vw,72px); padding-bottom:clamp(48px,7vh,72px); border-bottom:1px solid var(--go-bd); }
body.page-home .ftr-brand-name { font-family:'Playfair Display',serif; font-size:clamp(18px,2vw,23px); letter-spacing:.04em; margin-bottom:4px; color:var(--go); }
body.page-home .ftr-brand-tag { font-size:clamp(11px,1.05vw,12.5px); letter-spacing:.26em; text-transform:uppercase; color:rgba(182,141,64,.55); margin-bottom:18px; }
body.page-home .ftr-about { font-size:clamp(12px,1.2vw,13px); color:rgba(242,238,233,.45); line-height:1.85; max-width:290px; }
body.page-home .ftr-col-head { font-size:clamp(11px,1.05vw,12.5px); letter-spacing:.24em; text-transform:uppercase; color:var(--go); margin-bottom:22px; }
body.page-home .ftr-col ul { list-style:none; display:flex; flex-direction:column; gap:12px; }
body.page-home .ftr-col a { font-size:clamp(12px,1.2vw,13px); color:rgba(242,238,233,.45); text-decoration:none; transition:all .3s var(--ease); display:inline-flex; align-items:center; }
body.page-home .ftr-col a:hover { color:var(--ow); transform:translateX(4px); }
body.page-home .ftr-ico { flex-shrink:0; margin-right:9px; opacity:.62; transition:transform .35s var(--ease), opacity .3s; }
body.page-home .ftr-col a:hover .ftr-ico { transform:scale(1.16); opacity:1; }
body.page-home .ftr-col li > .ftr-ico { opacity:.5; }
body.page-home .footer-bottom { display:flex; justify-content:space-between; align-items:center; padding-top:28px; flex-wrap:wrap; gap:16px; }
body.page-home .ftr-copy { font-size:clamp(10px,1vw,11.5px); color:rgba(242,238,233,.35); letter-spacing:.06em; }
body.page-home .ftr-copy strong { color:var(--go); font-weight:400; }
body.page-home .ftr-socials { display:flex; gap:24px; }
body.page-home .ftr-socials a { font-size:clamp(12px,1.15vw,13.5px); letter-spacing:.2em; text-transform:uppercase; color:rgba(242,238,233,.35); text-decoration:none; transition:color .3s; }
body.page-home .ftr-socials a:hover { color:var(--bordo-lt); }
/* Correção pontual: reserva espaço para o link "WhatsApp" do rodapé não ficar atrás do botão flutuante fixo, apenas na faixa onde ambos colidem (tablet/notebook) */
@media(min-width:641px) and (max-width:1439px) { body.page-home .ftr-socials { padding-right:90px; } }

/* ═══════════════════════════════════════════════════════════
   RESPONSIVO
═══════════════════════════════════════════════════════════ */
@media(max-width:1100px)  {
  body.page-home .nav-links, body.page-home .nav-cta { display:none; }
  body.page-home .hamburger { display:flex; }
  body.page-home .hero-stats { display:none !important; }
  body.page-home .scroll-cue, body.page-home .corner-tr, body.page-home .corner-bl { display:none; }
  body.page-home .pilares-grid { grid-template-columns:1fr; }
  body.page-home .footer-top { grid-template-columns:1fr 1fr; gap:32px; }
}
@media(max-width:960px)  {
  body.page-home { --safe: clamp(20px,5vw,40px); }
  body.page-home .hero-particles { display:none; }
  body.page-home .vantagem-split { grid-template-columns:1fr; }
  body.page-home .vantagem-foto { min-height:280px; }
  body.page-home .vantagem-foto::after { display:none; }
  body.page-home .vantagem-corpo { padding:clamp(40px,6vh,60px) var(--safe); }
  body.page-home .vantagem-left { padding-right:0; border-right:none; border-bottom:1px solid rgba(90,15,26,.12); padding-bottom:clamp(36px,5vh,52px); }
  body.page-home .vantagem-right { padding-left:0; padding-top:clamp(32px,5vh,48px); }
  body.page-home .vantagem-inner::after { display:none; }
  body.page-home .infra-highlight { grid-template-columns:1fr; gap:24px; }
  body.page-home .infra-hl-stat { text-align:left; }
  body.page-home .infra-grid { grid-template-columns:repeat(2,1fr); }
  body.page-home .reveal-win { height:60vh; min-height:360px; }
  body.page-home .reveal-win-selo { display:none !important; }

}
@media(max-width:640px)  {
  body.page-home { cursor:auto; overflow-x:hidden; }
  body.page-home .cursor, body.page-home .cursor-ring { display:none; }
  body.page-home .hero-h1 { font-size:clamp(34px,9vw,52px); }
  body.page-home .infra-grid { grid-template-columns:1fr; }
  body.page-home .footer-top { grid-template-columns:1fr; }
  body.page-home .footer-bottom { flex-direction:column; text-align:center; }
  body.page-home .pilares-grid { grid-template-columns:1fr; }
  body.page-home .cta-btns { align-items:stretch; }
  body.page-home .pilar-desc, body.page-home .vpoint-desc, body.page-home .infra-sub, body.page-home .infra-hl-desc, body.page-home .infra-desc, body.page-home .infra-loc-desc, body.page-home .cta-p { font-size:18px !important; }
  body.page-home .reveal-win-p, body.page-home .vantagem-intro { font-size:clamp(20px,1.9vw,26px) !important; }
  body.page-home .hero-sub { font-size:19px !important; line-height:1.55 !important; }
}
body.page-home .wpp-float-label { background:var(--verde); border:1px solid var(--go-bd); color:var(--go); font-size:clamp(11px,1vw,12px); letter-spacing:.22em; text-transform:uppercase; padding:8px 14px; font-weight:500; opacity:0; transform:translateX(8px); transition:opacity .3s,transform .3s var(--ease); pointer-events:none; }
body.page-home .wpp-float:hover .wpp-float-label { opacity:1; transform:translateX(0); }
body.page-home .infra-hl-val--rooftop { font-size:clamp(32px,4vw,58px) !important; }
body.page-home .sec-dourado .infra-hl-val--rooftop { color:var(--verde); }
/* ── Bordô Profundo badges e separadores ── */
body.page-home .bordo-badge {
  display:inline-block; background:var(--bordo-prof);
  color:rgba(242,238,233,.92); font-size:11px; letter-spacing:.24em;
  text-transform:uppercase; padding:5px 14px;
  border-left:2px solid var(--go); font-family:'DM Sans',sans-serif;
}
body.page-home .sec-verde::before, body.page-home .sec-verde-prof::before {
  background:linear-gradient(to right,transparent,var(--bordo-prof) 20%,var(--go) 50%,var(--bordo-prof) 80%,transparent);
  opacity:.55;
}
body.page-home .sec-palha::before {
  background:linear-gradient(to right,transparent,var(--bordo-prof) 25%,rgba(74,14,14,.5) 60%,transparent);
  opacity:.55;
}
body.page-home .sec-dourado::before {
  background:linear-gradient(to right,transparent,var(--bordo-prof) 20%,rgba(26,40,25,.6) 50%,var(--bordo-prof) 80%,transparent);
  opacity:.45;
}
body.page-home .cta-block::before {
  background:linear-gradient(to right,transparent,var(--bordo-prof) 20%,var(--go) 50%,var(--bordo-prof) 80%,transparent);
  opacity:.65;
}
@media print  {
  body.page-home .cursor, body.page-home .cursor-ring, body.page-home nav, body.page-home .mobile-menu, body.page-home .marquee-strip, body.page-home .wpp-float { display:none !important; }
  body.page-home { background:white; color:black; }
}

/* ── Body text size enforcement ── */
body.page-home .pilar-desc, body.page-home .vpoint-desc, body.page-home .porq-desc, body.page-home .bloco-p, body.page-home .tipo-desc, body.page-home .infra-desc, body.page-home .infra-loc-desc, body.page-home .reveal-win-p, body.page-home .cta-p, body.page-home .porque-lead, body.page-home .split-p, body.page-home .split-intro, body.page-home .cs-p, body.page-home .ftr-about, body.page-home .curadoria-body p, body.page-home .rooftop-body p, body.page-home .infra-hl-desc, body.page-home .infra-sub, body.page-home .gran-finale-content p, body.page-home .gf-p, body.page-home .form-lead, body.page-home .bloco-sub-txt, body.page-home .janela-win-p, body.page-home .vantagem-intro { font-size:clamp(20px,1.9vw,26px); line-height: 1.7; }
@media(max-width:640px)  {
  body.page-home p, body.page-home .pilar-desc, body.page-home .vpoint-desc, body.page-home .porq-desc, body.page-home .bloco-p, body.page-home .tipo-desc, body.page-home .infra-desc, body.page-home .infra-loc-desc, body.page-home .reveal-win-p, body.page-home .cta-p, body.page-home .porque-lead, body.page-home .split-p, body.page-home .split-intro, body.page-home .cs-p, body.page-home .ftr-about, body.page-home .curadoria-body p, body.page-home .rooftop-body p, body.page-home .infra-hl-desc, body.page-home .infra-sub, body.page-home .gran-finale-content p, body.page-home .gf-p, body.page-home .form-lead, body.page-home .bloco-sub-txt, body.page-home .janela-win-p {
    font-size:23px !important;
  }
}

/* ══════════════════════════════════════════════════════════════
   SISTEMA TIPOGRÁFICO PADRONIZADO
══════════════════════════════════════════════════════════════ */

/* H2 seções: tamanho consistente, luxuoso, sem variações bruscas */
body.page-home .pilares-h2, body.page-home .vantagem-h2, body.page-home .infra-h2, body.page-home .reveal-win-h2, body.page-home .cta-h2 {
  font-family: 'Playfair Display', serif;
  font-size: clamp(38px, 5vw, 74px);
  font-weight: 400;
  line-height: 1.04;
  letter-spacing: -.022em;
}

/* Subtítulos / eyebrows: bold + all-caps diferenciado */
body.page-home .eyebrow span, body.page-home .reveal-win-eyebrow, body.page-home .infra-hl-tag, body.page-home .infra-loc-tag, body.page-home .bordo-badge, body.page-home .pilar-cta, body.page-home .infra-hl-lbl {
  font-family: 'DM Sans', sans-serif;
  font-weight: 600;
  letter-spacing: .32em;
  text-transform: uppercase;
}

/* H1 Hero: imponente, sem quebras bruscas em nenhum breakpoint */
body.page-home .hero-h1 {
  font-size: clamp(42px, 5.6vw, 82px);
  line-height: 1.05;
  word-break: keep-all;
  overflow-wrap: break-word;
  hyphens: none;
  font-weight: 400;
}

/* Vpoint subtítulos: diferenciação clara */
body.page-home .vpoint-title {
  font-family: 'Playfair Display', serif;
  font-size: clamp(18px, 1.8vw, 22px);
  font-weight: 500;
  letter-spacing: .01em;
  text-transform: none;
  color: var(--bordo);
  margin-bottom: 12px;
  line-height: 1.32;
}

/* ══════════════════════════════════════════════════════════════
   SEC-INSTITUCIONAL, Quem Somos (grid 50/50 com fade-in)
══════════════════════════════════════════════════════════════ */
body.page-home .sec-institucional {
  background: linear-gradient(180deg, #111e10 0%, #0e1a0d 55%, #111e10 100%);
  color: var(--ow);
  position: relative; z-index: 10;
  border-top: none;
  border-bottom: none;
  overflow: hidden;
}
/* Grid edge-to-edge: imagem ocupa 100% da coluna, texto com padding interno */
body.page-home .sec-institucional .inner {
  width: 100%;
  max-width: none;
  padding: 0;
  margin: 0;
}
body.page-home .inst-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  padding: 0;
  align-items: stretch;
  min-height: clamp(560px, 78vh, 760px);
}
body.page-home .inst-left {
  position: relative;
  overflow: hidden;
  background: #0a120a;
  border: none;
  box-shadow: none;
}
/* Imagem cobre 100% da coluna sem moldura, sem padding, sem cantos decorativos */
body.page-home .inst-left::before {
  content: '';
  position: absolute; inset: 0;
  background-image: url('../assets/images/foto-expositores-hero.jpg');
  background-size: cover;
  background-position: center 42%;
  background-repeat: no-repeat;
}
/* Transição suave imagem → conteúdo (sem corte) */
body.page-home .inst-left::after {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(
    to right,
    rgba(8,14,8,0) 0%,
    rgba(8,14,8,.10) 60%,
    rgba(8,14,8,.25) 80%,
    rgba(17,30,16,1) 100%
  );
  pointer-events: none;
}
body.page-home .inst-right {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(72px,11vh,120px) clamp(40px,6vw,88px);
  max-width: 600px;
  background: transparent;
  border: none;
  box-shadow: none;
}
body.page-home .inst-right > .reveal, body.page-home .inst-right > .inst-p, body.page-home .inst-right > .inst-stats { max-width: 520px; }
body.page-home .inst-h2 {
  font-family: 'Playfair Display', serif;
  font-size: clamp(32px,4vw,54px);
  font-weight: 400;
  line-height: 1.06;
  letter-spacing: -.02em;
  color: var(--ow);
  margin-top: 18px;
  margin-bottom: 8px;
}
body.page-home .inst-h2 em { font-style: italic; color: inherit; }
body.page-home .inst-p {
  font-size: clamp(17px,1.45vw,20px);
  line-height: 1.78;
  color: rgba(242,238,233,.74);
  margin-bottom: 24px;
  font-weight: 300;
  font-family: 'DM Sans',sans-serif;
}
body.page-home .inst-p:first-of-type { margin-top: 32px; }
body.page-home .inst-stats {
  display: flex;
  gap: clamp(32px,4.5vw,60px);
  margin-top: 48px;
  padding-top: 36px;
  border-top: 1px solid rgba(182,141,64,.18);
}
body.page-home .inst-stat-val {
  font-family: 'Playfair Display', serif;
  font-size: clamp(22px,2.4vw,32px);
  font-weight: 400;
  color: var(--go);
  line-height: 1;
  margin-bottom: 8px;
}
body.page-home .inst-stat-lbl {
  font-family: 'DM Sans', sans-serif;
  font-size: clamp(7px,.9vw,8.5px);
  letter-spacing: .26em;
  text-transform: uppercase;
  color: rgba(182,175,160,.55);
}
@media(max-width:960px)  {
  body.page-home .inst-grid {
    grid-template-columns: 1fr;
    min-height: 0;
  }
  body.page-home .inst-left { min-height: 360px; height: 360px; }
  body.page-home .inst-left::before { background-position: center center; }
  body.page-home .inst-left::after {
    background: linear-gradient(
      to bottom,
      rgba(8,14,8,0) 0%,
      rgba(8,14,8,.20) 70%,
      rgba(17,30,16,1) 100%
    );
  }
  body.page-home .inst-right {
    padding: clamp(48px,8vh,72px) clamp(24px,5vw,40px);
    max-width: 100%;
  }
  body.page-home .inst-right > .reveal, body.page-home .inst-right > .inst-p, body.page-home .inst-right > .inst-stats { max-width: 100%; }
  body.page-home .inst-stats { flex-wrap: wrap; gap: 24px; margin-top: 36px; padding-top: 28px; }
}

/* ═══════════════════════════════════════════════════════════
   SEC-ALAMBIQUE | Split editorial: texto + imagem (lado a lado)
═══════════════════════════════════════════════════════════ */
body.page-home .sec-alambique {
  background: linear-gradient(180deg, #0e1a0d 0%, #111e10 100%);
  color: var(--ow);
  position: relative; z-index: 9;
  border-top: none;
  border-bottom: none;
  overflow: hidden;
}
body.page-home .sec-alambique .inner {
  width: 100%;
  max-width: none;
  padding: 0;
  margin: 0;
}
body.page-home .alambique-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  padding: 0;
  align-items: stretch;
  min-height: clamp(560px, 78vh, 760px);
}
body.page-home .alambique-left {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(72px,11vh,120px) clamp(40px,6vw,88px);
  max-width: 600px;
  margin-left: auto;
  width: 100%;
  background: transparent;
  border: none;
  box-shadow: none;
}
body.page-home .alambique-left > * { max-width: 520px; }
body.page-home .alambique-h2 {
  font-family: 'Playfair Display', serif;
  font-size: clamp(28px,3.4vw,46px);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: -.02em;
  color: var(--ow);
  margin: 18px 0 28px;
}
body.page-home .alambique-p {
  font-family: 'DM Sans', sans-serif;
  font-size: clamp(17px,1.45vw,20px);
  font-weight: 300;
  line-height: 1.78;
  color: rgba(242,238,233,.74);
  margin-bottom: 48px;
}
body.page-home .alambique-meta {
  display: flex;
  flex-direction: column;
  gap: 18px;
  padding-top: 32px;
  border-top: 1px solid rgba(182,141,64,.18);
}
body.page-home .alambique-meta-item {
  display: flex;
  align-items: baseline;
  gap: 22px;
}
body.page-home .alambique-meta-num {
  font-family: 'Playfair Display', serif;
  font-size: 15px;
  color: var(--go);
  letter-spacing: .04em;
  font-weight: 400;
  min-width: 28px;
}
body.page-home .alambique-meta-lbl {
  font-family: 'DM Sans', sans-serif;
  font-size: 13px;
  letter-spacing: .26em;
  text-transform: uppercase;
  color: rgba(242,238,233,.72);
  font-weight: 400;
}
/* Coluna direita = imagem 100% sem moldura, sem cantos, sem padding */
body.page-home .alambique-right {
  position: relative;
  overflow: hidden;
  background: #0a120a;
  border: none;
  box-shadow: none;
}
body.page-home .alambique-right::before {
  content: '';
  position: absolute; inset: 0;
  background-image: url('../assets/images/alambique.jpg');
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
/* Transição suave imagem → conteúdo (espelhada — vem da direita) */
body.page-home .alambique-right::after {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(
    to left,
    rgba(8,14,8,0) 0%,
    rgba(8,14,8,.10) 60%,
    rgba(8,14,8,.25) 80%,
    rgba(17,30,16,1) 100%
  );
  pointer-events: none;
}
@media(max-width:960px)  {
  body.page-home .alambique-grid {
    grid-template-columns: 1fr;
    min-height: 0;
  }
  body.page-home .alambique-right {
    min-height: 360px;
    height: 360px;
    order: -1;
  }
  body.page-home .alambique-right::after {
    background: linear-gradient(
      to bottom,
      rgba(8,14,8,0) 0%,
      rgba(8,14,8,.20) 70%,
      rgba(17,30,16,1) 100%
    );
  }
  body.page-home .alambique-left {
    padding: clamp(48px,8vh,72px) clamp(24px,5vw,40px);
    max-width: 100%;
    margin-left: 0;
  }
  body.page-home .alambique-left > * { max-width: 100%; }
  body.page-home .alambique-h2 { font-size: clamp(26px,7vw,36px) !important; }
}

/* ═══════════════════════════════════════════════════════════
   ROOFTOP · DOIS BLOCOS COLADOS · MESMA IMAGEM FIXED
   Padrão janela dupla contínua: rooftop2.jpg em ambos.
   Sem margem, sem padding, sem divisor entre os dois panes.
═══════════════════════════════════════════════════════════ */
body.page-home .rooftop-section {
  position: relative;
  background: #0a120a;
  margin: 0;
  padding: 0;
  border-top: 1px solid rgba(182,141,64,.08);
  border-bottom: 1px solid rgba(182,141,64,.08);
}
body.page-home .rooftop-pane {
  position: relative;
  display: flex;
  align-items: center;
  min-height: clamp(520px, 78vh, 720px);
  padding: clamp(90px,13vh,150px) clamp(28px,6vw,100px);
  background-image: url('../assets/images/rooftop2.jpg');
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-color: #0a120a;
  margin: 0;
  overflow: hidden;
}
body.page-home .rooftop-pane + .rooftop-pane {
  margin-top: 0;
  border-top: none;
}
/* Overlay PANE 1 (esquerda) — mais escuro */
body.page-home .rooftop-pane-1::before {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(
    180deg,
    rgba(6,10,6,.78) 0%,
    rgba(6,10,6,.62) 50%,
    rgba(6,10,6,.72) 100%
  );
  pointer-events: none;
  z-index: 1;
}
/* Overlay PANE 2 (direita) — mais leve */
body.page-home .rooftop-pane-2::before {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(
    180deg,
    rgba(6,10,6,.46) 0%,
    rgba(6,10,6,.34) 50%,
    rgba(6,10,6,.50) 100%
  );
  pointer-events: none;
  z-index: 1;
}
/* Pane 1: texto à esquerda (título + intro) */
body.page-home .rooftop-pane-1 .rooftop-content {
  max-width: 720px;
  margin-right: auto;
}
/* Pane 2: texto à direita (complemento + tags) */
body.page-home .rooftop-pane-2 .rooftop-content {
  max-width: 720px;
  margin-left: auto;
  text-align: right;
}
body.page-home .rooftop-pane-2 .rooftop-eyebrow, body.page-home .rooftop-pane-2 .rooftop-tags {
  justify-content: flex-end;
}
body.page-home .rooftop-content {
  position: relative;
  z-index: 2;
  width: 100%;
}
body.page-home .rooftop-eyebrow {
  font-family: 'DM Sans', sans-serif;
  font-size: clamp(13px,1.2vw,14.5px);
  letter-spacing: .32em;
  text-transform: uppercase;
  color: var(--go);
  font-weight: 600;
  margin-bottom: clamp(20px,2.6vh,28px);
  display: flex; align-items: center; gap: 14px;
  text-shadow: 0 1px 8px rgba(0,0,0,.6);
}
body.page-home .rooftop-eyebrow::before {
  content: ''; display: inline-block;
  width: 32px; height: 1px;
  background: linear-gradient(to right, transparent, var(--go));
  flex-shrink: 0;
}
body.page-home .rooftop-pane-2 .rooftop-eyebrow::before {
  background: linear-gradient(to left, transparent, var(--go));
}
body.page-home .rooftop-h2 {
  font-family: 'Playfair Display', serif;
  font-size: clamp(34px,5vw,72px);
  font-weight: 400;
  line-height: 1.0;
  letter-spacing: -.025em;
  color: var(--ow);
  margin-bottom: clamp(20px,2.8vh,32px);
  text-shadow: 0 2px 22px rgba(0,0,0,.55);
}
body.page-home .rooftop-p {
  font-family: 'DM Sans', sans-serif;
  font-size: clamp(19px,1.65vw,23px);
  font-weight: 300;
  line-height: 1.75;
  color: rgba(242,238,233,.92);
  max-width: 580px;
  text-shadow: 0 1px 12px rgba(0,0,0,.55);
}
body.page-home .rooftop-pane-2 .rooftop-p {
  margin-left: auto;
  font-family: 'Playfair Display', serif;
  font-style: italic;
  margin-bottom: clamp(28px,3.6vh,42px);
}
body.page-home .rooftop-tags {
  display: flex; flex-wrap: wrap;
  gap: 10px;
  margin-top: 28px;
}
body.page-home .rooftop-tag {
  font-family: 'DM Sans', sans-serif;
  font-size: 12.5px;
  letter-spacing: .26em;
  text-transform: uppercase;
  color: rgba(207,163,85,.92);
  padding: 10px 18px;
  border: 0.5px solid rgba(207,163,85,.34);
  background: rgba(6,10,6,.34);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  font-weight: 500;
  transition: all .35s var(--ease);
}
body.page-home .rooftop-tag:hover {
  border-color: rgba(207,163,85,.60);
  color: var(--ow);
  background: rgba(207,163,85,.10);
}

/* Mobile: remove parallax, ajusta padding, mantém continuidade dos dois panes */
@media (max-width: 1023px)  {
  body.page-home .rooftop-pane {
    background-attachment: scroll;
    min-height: 0;
    padding: clamp(48px,6vh,80px) clamp(20px,4vw,32px);
  }
  body.page-home .rooftop-pane::before {
    background: linear-gradient(
      180deg,
      rgba(6,10,6,.78) 0%,
      rgba(6,10,6,.62) 100%
    );
  }
  body.page-home .rooftop-pane-1 .rooftop-content, body.page-home .rooftop-pane-2 .rooftop-content {
    max-width: 100%;
    margin: 0;
    text-align: left;
  }
  body.page-home .rooftop-pane-2 .rooftop-eyebrow, body.page-home .rooftop-pane-2 .rooftop-tags { justify-content: flex-start; }
  body.page-home .rooftop-pane-2 .rooftop-eyebrow::before {
    background: linear-gradient(to right, transparent, var(--go));
  }
  body.page-home .rooftop-pane-2 .rooftop-p {
    margin-left: 0;
    margin-right: auto;
  }
  body.page-home .rooftop-h2 { font-size: clamp(30px,7.5vw,44px) !important; }
}
@supports (-webkit-touch-callout: none)  {
  body.page-home .rooftop-pane { background-attachment: scroll; }
}
@media (max-width: 480px)  {
  body.page-home .rooftop-tag { font-size: 10px; padding: 8px 12px; letter-spacing: .20em; }
}

/* ── WhatsApp Glassmorphism Float — refinado premium ── */
body.page-home .wpp-float-new {
  position:fixed; bottom:34px; right:34px; z-index:800;
  width:78px; height:78px; border-radius:50%;
  background: radial-gradient(circle at 30% 30%, rgba(207,163,85,.20), rgba(20,30,18,.84));
  backdrop-filter: blur(14px) saturate(125%);
  -webkit-backdrop-filter: blur(14px) saturate(125%);
  border:0.5px solid rgba(207,163,85,.50);
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 12px 40px rgba(182,141,64,.32),0 4px 18px rgba(0,0,0,.22),0 0 0 1px rgba(207,163,85,.16),0 0 22px rgba(207,163,85,.18),inset 0 1px 0 rgba(255,255,255,.22);
  text-decoration:none;
  transition:all .4s cubic-bezier(.2,.7,.2,1);
}
body.page-home .wpp-float-new:hover {
  transform:translateY(-3px) scale(1.07);
  border-color:rgba(207,163,85,.85);
  box-shadow:0 20px 56px rgba(182,141,64,.46),0 8px 24px rgba(0,0,0,.28),0 0 0 1px rgba(207,163,85,.36),0 0 36px rgba(207,163,85,.32),inset 0 1px 0 rgba(255,255,255,.32);
}
body.page-home .wpp-float-new svg { width:32px; height:32px; fill:rgba(232,200,140,1); display:block; pointer-events:none; filter:drop-shadow(0 2px 8px rgba(0,0,0,.40)) drop-shadow(0 0 10px rgba(207,163,85,.40)); }
@media(max-width:640px) { body.page-home .wpp-float-new { width:64px;height:64px;bottom:20px;right:20px; } body.page-home .wpp-float-new svg { width:26px;height:26px; } }
@media(max-width:380px) { body.page-home .wpp-float-new { width:58px;height:58px;bottom:16px;right:16px; } body.page-home .wpp-float-new svg { width:24px;height:24px; } }


body.page-home header nav a, body.page-home .menu a, body.page-home .navbar a, body.page-home nav ul li a {
font-size:18px !important;
font-weight:600 !important;
letter-spacing:.02em !important;
}
@media(max-width:768px) {
body.page-home header nav a, body.page-home .menu a, body.page-home .navbar a, body.page-home nav ul li a {
font-size:16px !important;
}
}

/* (Bloco rooftop stats mobile removido — órfão das classes .win-rooftop-* descontinuadas) */


/* REFINO_PREMIUM_FINAL */
/* ═══════════════════════════════════════════════════════════════
   REFINO PREMIUM, Camada final de polimento
   Ritmo vertical · Hover suave · Respiração · Overlays sutis
═══════════════════════════════════════════════════════════════ */

/* Ritmo vertical, herdado por todos os parágrafos longos */
body.page-home p { line-height:1.72; }
body.page-home .hero-sub, body.page-home .reveal-win-p, body.page-home .corp-p-a, body.page-home .infra-rooftop-p-a, body.page-home .shows-p-a, body.page-home .pilar-desc, body.page-home .vpoint-desc, body.page-home .vantagem-intro, body.page-home .bloco-intro, body.page-home .si-desc-a, body.page-home .infra-card-p-a, body.page-home .cs-p, body.page-home .plantas-lead, body.page-home .ftr-text, body.page-home .quote-text, body.page-home blockquote, body.page-home .infra-lead-a {
  line-height: 1.78;
}

/* Eyebrow, ritmo unificado e respiração */
body.page-home .eyebrow { margin-bottom: clamp(28px, 3.5vh, 40px); gap: 16px; }
body.page-home .eyebrow-line { width: 44px; transition: width .6s var(--ease), background .4s; }
body.page-home .eyebrow:hover .eyebrow-line { width: 60px; }
body.page-home .eyebrow span { font-weight: 500; }

/* Headings, espaço respiratório aumentado */
body.page-home h2, body.page-home h3 { letter-spacing: -.022em; }

/* Microinterações, cards genéricos */
body.page-home .grid-card-eq, body.page-home .infra-card-a, body.page-home .pilar-card, body.page-home .vantagem-point, body.page-home .planta-item, body.page-home .corp-foto-a {
  transition: transform .55s cubic-bezier(0.16,1,0.3,1),
              box-shadow .55s cubic-bezier(0.16,1,0.3,1),
              border-color .45s ease;
}

/* Imagens grid, overlay sutil + bloom no hover */
body.page-home .grid-card-eq { position: relative; overflow: hidden; }
body.page-home .grid-card-eq::after {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0) 45%, rgba(0,0,0,.42) 100%);
  pointer-events: none;
  transition: opacity .6s var(--ease);
  z-index: 1;
}
body.page-home .grid-card-eq:hover::after { opacity: .85; }
body.page-home .grid-card-eq img {
  transition: transform 1.1s cubic-bezier(0.16,1,0.3,1), filter .8s ease;
}
body.page-home .grid-card-eq:hover img {
  transform: scale(1.04);
  filter: brightness(1.04) saturate(1.04);
}
body.page-home .grid-card-content { z-index: 2; }

/* Botões CTA, refinamento de transições */
body.page-home .btn-primary, body.page-home .btn-ghost-dk, body.page-home .btn-form-wa-a, body.page-home .btn-form-loc-a, body.page-home .btn-form-email-a, body.page-home .nav-cta, body.page-home .btn-hero-ig {
  transition: transform .45s cubic-bezier(0.16,1,0.3,1),
              background .35s ease,
              border-color .35s ease,
              color .35s ease,
              box-shadow .45s ease;
}
body.page-home .btn-primary:hover, body.page-home .btn-ghost-dk:hover {
  transform: translateY(-1px);
}

/* Marquee, respiração horizontal */
body.page-home .marquee-item { padding: 15px 32px; }

/* Reveal-win parágrafos, espaço respiratório premium */
body.page-home .reveal-win-p { margin-bottom: clamp(8px, 1.5vh, 16px); }

/* Footer, ritmo vertical */
body.page-home .ftr-col-head { margin-bottom: 24px; }

/* Pilares, respiração interna */
body.page-home .pilar-card { padding: clamp(28px, 3.5vw, 44px); }

/* Quote, refino tipográfico */
body.page-home blockquote { letter-spacing: -.005em; }

/* Acessibilidade, focus state premium */
body.page-home a:focus-visible, body.page-home button:focus-visible {
  outline: 1px solid var(--go);
  outline-offset: 4px;
  border-radius: 1px;
}

/* Reduced motion, respeito */
@media (prefers-reduced-motion: reduce)  {
  body.page-home *, body.page-home *::before, body.page-home *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}


/* ═══════════════════════════════════════════════════════════════════
   REFINO MASTER · CAMADA FINAL DE PRODUÇÃO
   Aplicado uniformemente em todas as 4 páginas.
   Não recria nada. Apenas refina o que já existe.
   ─────────────────────────────────────────────────────────────────
   1.  Redução inteligente de efeitos
   2.  Tipografia premium real (legibilidade global)
   3.  Botões e CTA · padrão único
   4.  Microinterações elegantes
   5.  Imagens · zoom e overlay refinados
   6.  Full Scroll Experience · transições contínuas
   7.  Refino de cards e blocos
   8.  Responsividade final (mobile · tablet · desktop)
═══════════════════════════════════════════════════════════════════ */

/* ── 1. REDUÇÃO DE EFEITOS ─────────────────────────────────────── */
body.page-home .hero-particles, body.page-home .grain {
  display: none;
}
body.page-home .hero-bg-letters { opacity:.42 !important; }
body.page-home .hero-grid { opacity:.22 !important; }

/* Cursor custom, visualmente mais limpo */
body.page-home .cursor { box-shadow:0 0 12px rgba(182,141,64,.28) !important; }
body.page-home .cursor-ring { border-color:rgba(182,141,64,.35) !important; }

/* ── 2. TIPOGRAFIA PREMIUM REAL ────────────────────────────────── */
body.page-home {
  font-feature-settings:"ss01","kern","liga";
  text-rendering:optimizeLegibility;
}

/* Hierarquia headers */
body.page-home h1, body.page-home .hero-h1 {
  letter-spacing:-.028em !important;
  line-height:1.02 !important;
}
body.page-home h2 { letter-spacing:-.022em; }

/* Parágrafos: legibilidade, ritmo */
body.page-home p { line-height:1.78; }

/* Eyebrows (rótulos seção) */
body.page-home .eyebrow span, body.page-home .hero-eyebrow-dourado, body.page-home .reveal-win-eyebrow, body.page-home .cand-eyebrow, body.page-home .cs-tag, body.page-home .planta-config, body.page-home .planta-label {
  letter-spacing:.34em !important;
  font-weight:600 !important;
}
body.page-home .hero-eyebrow {
  letter-spacing:.26em !important;
  font-weight:600 !important;
}

/* Subtítulos (Playfair italic), peso refinado */
body.page-home .hero-sub, body.page-home .reveal-win-p, body.page-home .cand-p, body.page-home .gf-p {
  font-weight:300 !important;
}

/* ── 3. BOTÕES E CTA · PADRÃO ÚNICO ────────────────────────────── */
body.page-home .btn-primary, body.page-home .btn-bordo, body.page-home .btn-ghost, body.page-home .btn-ghost-dk, body.page-home .btn-outline, body.page-home .btn-outline-amber, body.page-home .btn-form-submit, body.page-home .cand-btn-submit, body.page-home .cand-wa, body.page-home .nav-cta {
  font-family:'DM Sans', sans-serif !important;
  letter-spacing:.24em !important;
  text-transform:uppercase !important;
  font-weight:500 !important;
  transition:all .45s cubic-bezier(.22,1,.36,1) !important;
  will-change:transform;
}

body.page-home .btn-primary {
  padding:18px clamp(34px,5vw,52px) !important;
  font-size:clamp(11px,1.05vw,12.5px) !important;
  border-width:1px !important;
}
body.page-home .btn-primary:hover {
  transform:translateY(-2px) !important;
  box-shadow:0 14px 36px rgba(182,141,64,.22) !important;
}
body.page-home .btn-primary:active { transform:translateY(0) !important; }

body.page-home .btn-ghost, body.page-home .btn-ghost-dk {
  font-size:clamp(10px,1vw,11.5px) !important;
}
body.page-home .btn-ghost:hover .ghost-line, body.page-home .btn-ghost-dk:hover .ghost-line { width:54px !important; }

body.page-home .nav-cta {
  font-size:clamp(8px,1vw,9.5px) !important;
  padding:11px clamp(18px,2.4vw,28px) !important;
  color:var(--go) !important;
  border:0.5px solid rgba(182,141,64,.42) !important;
  background:transparent !important;
  box-shadow:none !important;
}
body.page-home .nav-cta:hover {
  color:var(--go-lt) !important;
  border-color:rgba(207,163,85,.7) !important;
  background:transparent !important;
  box-shadow:none !important;
}
body.page-home nav.scrolled .nav-cta {
  color:var(--go) !important;
  border-color:rgba(182,141,64,.5) !important;
  background:transparent !important;
}
body.page-home nav.scrolled .nav-cta:hover {
  background:var(--verde) !important;
  color:var(--palha) !important;
  border-color:var(--verde) !important;
}

/* ── 4. NAV refinado ──────────────────────────────────────────── */
body.page-home nav {
  height:74px !important;
  transition:height .45s cubic-bezier(.22,1,.36,1),
             background .45s, border-color .45s, box-shadow .45s !important;
}
body.page-home nav.scrolled { height:64px !important; }
body.page-home .nav-logo-main { font-weight:500 !important; letter-spacing:.05em !important; }
body.page-home .nav-logo-sub { letter-spacing:.32em !important; }

/* ── 5. IMAGENS · ZOOM E OVERLAY REFINADO ─────────────────────── */
/* Cards com imagem ganham zoom suave no hover, overlay sofisticado */
body.page-home .grid-card-eq img, body.page-home .tipo-card img, body.page-home .cs-img-bg, body.page-home .curadoria-foto .win-bg, body.page-home .gastronomia-foto .win-bg, body.page-home .bloco-foto .win-bg, body.page-home .janela-foto-bg {
  transition:transform 1.4s cubic-bezier(.22,1,.36,1),
             filter .8s cubic-bezier(.22,1,.36,1) !important;
}
body.page-home .grid-card-eq:hover img, body.page-home .cs-img:hover .cs-img-bg, body.page-home .curadoria-foto:hover .win-bg, body.page-home .gastronomia-foto:hover .win-bg, body.page-home .bloco-foto:hover .win-bg, body.page-home .janela-foto:hover .janela-foto-bg {
  transform:scale(1.06) !important;
  filter:brightness(1.04) saturate(1.08) !important;
}

/* Overlay de cards mais sofisticado: gradient + leve vinheta inferior */
body.page-home .grid-card-eq::after {
  background:linear-gradient(to top,
    rgba(8,14,8,.78) 0%,
    rgba(8,14,8,.18) 55%,
    transparent 90%) !important;
}

/* ── 6. FULL SCROLL EXPERIENCE · TRANSIÇÕES CONTÍNUAS ─────────── */
/* Cada esteira agora dissolve-se suavemente nos blocos vizinhos */
body.page-home .marquee-strip {
  position:relative;
  z-index:5;
}
body.page-home .marquee-strip::before, body.page-home .marquee-strip::after {
  content:'';
  position:absolute;
  left:0; right:0;
  height:24px;
  pointer-events:none;
  z-index:6;
}
body.page-home .marquee-strip::before { top:0; }
body.page-home .marquee-strip::after { bottom:0; }

/* Esteira ouro/gold */
body.page-home .marquee-strip.mq-gold::before { background:linear-gradient(to bottom, currentColor, transparent); opacity:.35; }
body.page-home .marquee-strip.mq-gold::after { background:linear-gradient(to top, currentColor, transparent); opacity:.35; }

/* Transições por par de seção: suaviza o "corte" entre blocos */
body.page-home .win::before {
  content:'';
  position:absolute;
  top:-1px; left:0; right:0; height:80px;
  background:linear-gradient(to bottom, rgba(8,14,8,.55), transparent);
  z-index:2;
  pointer-events:none;
}
body.page-home .win::after {
  content:'';
  position:absolute;
  bottom:0; left:0; right:0; height:90px;
  background:linear-gradient(to top, rgba(8,14,8,.45), transparent);
  z-index:2;
  pointer-events:none;
}

/* Container principal do reveal-win precisa permitir que o body interno fique acima do gradient */
body.page-home .win .reveal-win-body, body.page-home .win .win-rooftop-body, body.page-home .win .win-rooftop-lj-body { z-index:5 !important; }
body.page-home .win .reveal-win-num, body.page-home .win .reveal-win-selo, body.page-home .win .win-rooftop-num, body.page-home .win .win-rooftop-lj-num, body.page-home .win .win-rooftop-stats, body.page-home .win .win-rooftop-lj-stats { z-index:5 !important; }

/* Sec-palha · sec-verde · sec-dourado: transição superior suave para visualmente fundir */
body.page-home .sec-palha, body.page-home .sec-verde, body.page-home .sec-institucional, body.page-home .bloco-verde, body.page-home .bloco-dourado, body.page-home .bloco-curadoria, body.page-home .bloco-gastronomia, body.page-home .bloco-tipologia, body.page-home .bloco-diferenciais, body.page-home .bloco-corp-a, body.page-home .bloco-social-a, body.page-home .bloco-shows-a, body.page-home .bloco-infra-a, body.page-home .bloco-form-a, body.page-home .bloco-formulario, body.page-home .bloco-candidatura, body.page-home .bloco-plantas, body.page-home .sec-porque {
  position:relative;
}

/* ── 7. REFINO DE CARDS E BLOCOS ──────────────────────────────── */
body.page-home .pilar-card, body.page-home .tipo-card, body.page-home .infra-card-a, body.page-home .dif-card, body.page-home .porq-item, body.page-home .vantagem-point, body.page-home .si-num-a, body.page-home .grid-card-eq {
  transition:transform .55s cubic-bezier(.22,1,.36,1),
             box-shadow .55s, border-color .45s !important;
}
body.page-home .pilar-card:hover, body.page-home .tipo-card:hover, body.page-home .infra-card-a:hover, body.page-home .dif-card:hover, body.page-home .porq-item:hover, body.page-home .vantagem-point:hover {
  transform:translateY(-4px);
}

/* Fields de formulário mais respirados e elegantes */
body.page-home .form-input, body.page-home .form-select, body.page-home .form-textarea, body.page-home .cand-fg input, body.page-home .cand-fg select, body.page-home .cand-fg textarea, body.page-home .form-g-a input, body.page-home .form-g-a select, body.page-home .form-g-a textarea {
  font-size:clamp(14px,1.3vw,16px) !important;
  padding-top:14px !important;
  padding-bottom:14px !important;
  transition:border-color .35s, background .35s !important;
}

/* Footer · mais respirado */
body.page-home footer { border-top:1px solid rgba(182,141,64,.18); }

/* ── 8. RESPONSIVIDADE FINAL · MOBILE / TABLET ────────────────── */

/* Tablet */
@media (max-width: 1100px)  {
  body.page-home { --safe: clamp(20px, 5vw, 56px); }
  body.page-home .hero-stats { width: clamp(140px, 18vw, 180px) !important; }
}

/* Mobile geral */
@media (max-width: 760px)  {
  body.page-home { --safe: 22px; }
  body.page-home { line-height:1.7; }
  body.page-home nav { height:60px !important; padding:0 18px !important; }
  body.page-home nav.scrolled { height:54px !important; }
  body.page-home .nav-logo-main { font-size:18px !important; }
  body.page-home .nav-logo-sub { font-size:8.5px !important; letter-spacing:.28em !important; }
  body.page-home .nav-cta { display:none !important; }
  body.page-home .nav-links { display:none !important; }
  body.page-home .hamburger { display:flex !important; }

  body.page-home .hero-content { padding:120px 22px 90px !important; }
  body.page-home .hero-h1 { font-size:clamp(34px,8vw,48px) !important; line-height:1.05 !important; }
  body.page-home .hero-sub { font-size:clamp(17px,4.6vw,21px) !important; line-height:1.5 !important; }
  body.page-home .hero-eyebrow, body.page-home .hero-eyebrow-dourado { font-size:12.5px !important; letter-spacing:.18em !important; font-weight:700 !important; margin-bottom:20px !important; gap:12px !important; line-height:1.45 !important; }
  body.page-home .hero-eyebrow::before { width:28px !important; }
  body.page-home .hero-stats { display:none !important; }

  body.page-home .corner-tr, body.page-home .corner-bl, body.page-home .hero-corner-tr { display:none !important; }
  body.page-home .hero-bg-letters { font-size:160px !important; opacity:.18 !important; }

  body.page-home .reveal-win-num, body.page-home .win-rooftop-num, body.page-home .win-rooftop-lj-num { font-size:80px !important; opacity:.22 !important; }
  body.page-home .reveal-win-selo { display:none !important; }
  body.page-home .reveal-win-h2 { font-size:clamp(28px,7vw,38px) !important; line-height:1.06 !important; }
  body.page-home .reveal-win-body, body.page-home .win-rooftop-body, body.page-home .win-rooftop-lj-body { padding:60px 22px 70px !important; }
  body.page-home .win, body.page-home .reveal-win, body.page-home .win-rooftop, body.page-home .win-rooftop-lj { min-height:78vh !important; }

  body.page-home .marquee-strip { height:46px !important; }
  body.page-home .marquee-item { font-size:11px !important; padding:0 18px !important; }

  body.page-home .pilares-grid, body.page-home .tipologia-grid, body.page-home .dif-grid, body.page-home .grid-cards-equal { grid-template-columns:1fr !important; }
  body.page-home .grid-card-eq { aspect-ratio:4/3 !important; }

  body.page-home .corp-specs-a, body.page-home .corp-split-a, body.page-home .social-split-a, body.page-home .shows-split-a, body.page-home .bloco-split, body.page-home .janela-split, body.page-home .vantagem-split, body.page-home .porque-inner, body.page-home .formulario-inner, body.page-home .form-inner-a, body.page-home .candidatura-inner, body.page-home .curadoria-inner, body.page-home .gastronomia-inner, body.page-home .pilares-header { grid-template-columns:1fr !important; gap:32px !important; }

  body.page-home .corp-foto-a, body.page-home .social-foto-a, body.page-home .shows-foto-a, body.page-home .bloco-foto, body.page-home .janela-foto { min-height:280px !important; }

  body.page-home .card-sol { grid-template-columns:1fr !important; }

  body.page-home .plantas-grid { grid-template-columns:1fr !important; gap:36px !important; }

  body.page-home .footer-top { grid-template-columns:1fr !important; gap:36px !important; }
  body.page-home .footer-bottom { flex-direction:column !important; gap:18px !important; align-items:flex-start !important; }

  body.page-home .btn-primary { width:100% !important; justify-content:center !important; padding:16px 28px !important; }
  body.page-home .cta-btns, body.page-home .cta-btns-a { flex-direction:column !important; align-items:stretch !important; }

  /* Tipografia mobile: tudo melhor lido */
  body.page-home p, body.page-home .reveal-win-p, body.page-home .si-desc-a, body.page-home .cs-p, body.page-home .planta-stat-lbl, body.page-home .vpoint-desc, body.page-home .porq-desc, body.page-home .dif-desc, body.page-home .janela-intro, body.page-home .form-lead, body.page-home .form-lead-a, body.page-home .cand-p, body.page-home .cta-p, body.page-home .cta-p-a {
    font-size:16.5px !important;
    line-height:1.7 !important;
  }
  body.page-home h2 { font-size:clamp(28px,7.5vw,38px) !important; line-height:1.06 !important; }
  body.page-home h3 { font-size:clamp(20px,5vw,26px) !important; }
  body.page-home .eyebrow span { font-size:12px !important; letter-spacing:.28em !important; }
}

/* Small mobile */
@media (max-width: 380px)  {
  body.page-home { --safe: 16px; }
  body.page-home .hero-h1 { font-size:30px !important; }
  body.page-home .reveal-win-h2 { font-size:26px !important; }
  body.page-home h2 { font-size:26px !important; }
}

/* Reduce motion */
@media (prefers-reduced-motion: reduce)  {
  body.page-home *, body.page-home *::before, body.page-home *::after {
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
    scroll-behavior:auto !important;
  }
  body.page-home .marquee-track { animation:none !important; }
}

/* Cursor custom oculto em touch */
@media (hover: none), (pointer: coarse)  {
  body.page-home .cursor, body.page-home .cursor-ring { display:none !important; }
  body.page-home { cursor:auto !important; }
}

/* Performance · scroll suave global, sem overscroll esquisito */
html { scroll-behavior:smooth; }
body.page-home { overscroll-behavior-y:none; }


/* ═══════════════════════════════════════════════════════════════
   FULL SCROLL · TRANSIÇÕES FINAIS
   Suavização da emenda entre seções, sem alterar layouts
═══════════════════════════════════════════════════════════════ */

/* Cada seção principal ganha uma fina transição superior e inferior, 
   criando a sensação de continuidade visual sem corte abrupto. */
body.page-home .sec-verde, body.page-home .sec-palha, body.page-home .sec-institucional, body.page-home .bloco-verde, body.page-home .bloco-dourado, body.page-home .bloco-curadoria, body.page-home .bloco-gastronomia, body.page-home .bloco-tipologia, body.page-home .bloco-diferenciais, body.page-home .bloco-corp-a, body.page-home .bloco-social-a, body.page-home .bloco-shows-a, body.page-home .bloco-infra-a, body.page-home .bloco-form-a, body.page-home .bloco-formulario, body.page-home .bloco-candidatura, body.page-home .bloco-plantas, body.page-home .sec-porque, body.page-home .cta-section, body.page-home .cta-final-a {
  position:relative;
}

/* Esteiras (marquees) ganham máscara suave nas extremidades, fundindo nos blocos */
body.page-home .marquee-strip {
  -webkit-mask-image:linear-gradient(to right, transparent 0%, #000 6%, #000 94%, transparent 100%);
          mask-image:linear-gradient(to right, transparent 0%, #000 6%, #000 94%, transparent 100%);
}

/* Pseudoelementos das esteiras herdam o background da própria esteira para fusão real */
body.page-home .marquee-strip.mq-verde::before { background:linear-gradient(to bottom, var(--verde-card, #1e2e1d), transparent) !important; opacity:.5; }
body.page-home .marquee-strip.mq-verde::after { background:linear-gradient(to top,    var(--verde-card, #1e2e1d), transparent) !important; opacity:.5; }
body.page-home .marquee-strip.mq-palha::before { background:linear-gradient(to bottom, var(--palha, #F2EFE9), transparent) !important; opacity:.55; }
body.page-home .marquee-strip.mq-palha::after { background:linear-gradient(to top,    var(--palha, #F2EFE9), transparent) !important; opacity:.55; }
body.page-home .marquee-strip.mq-bordo::before { background:linear-gradient(to bottom, var(--bordo-prof, #4A0E0E), transparent) !important; opacity:.5; }
body.page-home .marquee-strip.mq-bordo::after { background:linear-gradient(to top,    var(--bordo-prof, #4A0E0E), transparent) !important; opacity:.5; }
body.page-home .marquee-strip.mq-ouro::before { background:linear-gradient(to bottom, #2a2616, transparent) !important; opacity:.5; }
body.page-home .marquee-strip.mq-ouro::after { background:linear-gradient(to top,    #2a2616, transparent) !important; opacity:.5; }
body.page-home .marquee-strip.mq-gold::before { background:linear-gradient(to bottom, var(--go, #B68D40), transparent) !important; opacity:.32; }
body.page-home .marquee-strip.mq-gold::after { background:linear-gradient(to top,    var(--go, #B68D40), transparent) !important; opacity:.32; }

/* Microtransição entre o final do hero e a primeira esteira: fade do verde escuro */
body.page-home .hero {
  position:relative;
}
body.page-home .hero::after {
  content:'';
  position:absolute;
  bottom:0; left:0; right:0;
  height:80px;
  background:linear-gradient(to top, rgba(8,14,8,.65) 0%, transparent 100%);
  pointer-events:none;
  z-index:6;
}

/* Fade-in de seções claras ao entrar no viewport (sec-palha, bloco-dourado, etc.) */
body.page-home .sec-palha::before, body.page-home .bloco-dourado::before, body.page-home .bloco-tipologia::before, body.page-home .bloco-diferenciais::before, body.page-home .bloco-formulario::before, body.page-home .bloco-form-a::before, body.page-home .bloco-candidatura::before, body.page-home .bloco-plantas::before {
  content:'';
  display:block;
  position:absolute;
  top:0; left:0; right:0;
  height:60px;
  background:linear-gradient(to bottom, rgba(0,0,0,.06), transparent);
  pointer-events:none;
  z-index:1;
}

/* Suaviza o final de cada win/janela imersiva, dando passagem visual */
body.page-home .win.reveal-win + section, body.page-home .win.reveal-win + div.marquee-strip, body.page-home .win.win-rooftop + section, body.page-home .win.win-rooftop + div.marquee-strip, body.page-home .win.win-rooftop-lj + section, body.page-home .win.win-rooftop-lj + div.marquee-strip { position:relative; }

/* Gran finale: emenda escura → footer */
body.page-home .gran-finale + footer {
  position:relative;
}
body.page-home .gran-finale + footer::before {
  content:'';
  position:absolute;
  top:-40px; left:0; right:0; height:40px;
  background:linear-gradient(to bottom, transparent, var(--verde, #1A2819));
  pointer-events:none;
  z-index:2;
}

/* Otimização de paint nas esteiras durante scroll: reduz repaints */
body.page-home .marquee-track { will-change:transform; }

/* ── Microajustes responsivos finais ── */
@media (max-width: 760px)  {
  /* Reduz gradientes mobile para manter performance */
  body.page-home .marquee-strip::before, body.page-home .marquee-strip::after { height:14px !important; }
  body.page-home .win::before { height:50px !important; }
  body.page-home .win::after { height:60px !important; }
  body.page-home .hero::after { height:50px !important; }
  /* Esteiras já bem dimensionadas */
  body.page-home .marquee-strip { -webkit-mask-image:none !important; mask-image:none !important; }
}

/* Tablet: esteiras rolam mais devagar para não cansar */
@media (min-width: 760px) and (max-width: 1100px)  {
  body.page-home .marquee-track { animation-duration:42s !important; }
}

/* Desktop largo: garante que conteúdos respirem */
@media (min-width: 1440px)  {
  body.page-home .container-luxury, body.page-home .inner { max-width:1500px; }
}



/* ════════════════════════════════════════════════════════════
   ✦ REFINAMENTO UI/UX, ETAPA 1
   Aplicado de forma cascata (último <style> do head)
   Não altera estrutura. Apenas refina espessura, peso, respiro e legibilidade.
══════════════════════════════════════════════════════════════ */

/* ── 1. RESET DE LINKS REFORÇADO (remove azul/sublinhado residual) ── */
body.page-home a, body.page-home a:link, body.page-home a:visited, body.page-home a:hover, body.page-home a:active, body.page-home a:focus {
  color: inherit !important;
  text-decoration: none !important;
  -webkit-tap-highlight-color: transparent;
}
/* CTA outline mantém o dourado de destaque (padronizado com Eventos/Expositores) */
body.page-home .btn-primary, body.page-home .btn-primary:link, body.page-home .btn-primary:visited {
  color: var(--go) !important;
}

/* ── 2. TIPOGRAFIA · LEGIBILIDADE GERAL ── */
body.page-home { line-height: 1.65; }
body.page-home p, body.page-home li { font-feature-settings: "kern" 1, "liga" 1; }

/* Hierarquia: títulos respiram mais; subtítulos com peso intermediário */
body.page-home h1, body.page-home h2, body.page-home h3 { letter-spacing: -.005em; }
body.page-home .eyebrow, body.page-home .marquee-item, body.page-home .ftr-col-head, body.page-home .ftr-socials a {
  letter-spacing: .26em;
}

/* ── 3. MARQUEE PADRONIZADA E MAIS LEVE ── */
body.page-home .marquee-strip {
  min-height: 44px !important;
  border-top-width: 0.5px !important;
  border-bottom-width: 0.5px !important;
}
body.page-home .marquee-track { animation-duration: 36s !important; }
body.page-home .marquee-item {
  padding: 11px 28px !important;
  font-size: clamp(11px,1.05vw,12.5px) !important;
  font-weight: 500 !important;
  letter-spacing: .28em !important;
  gap: 26px !important;
}
body.page-home .marquee-gem {
  width: 4px !important;
  height: 4px !important;
  opacity: .5 !important;
}
@media (max-width: 640px)  {
  body.page-home .marquee-strip { min-height: 40px !important; }
  body.page-home .marquee-item { font-size: 10.5px !important; padding: 9px 16px !important; letter-spacing: .24em !important; }
}

/* ── 4. WHATSAPP FLOAT · TRAÇO FINO + GLOW PREMIUM ── */
body.page-home .wpp-float-new, body.page-home .wpp-float {
  border-width: 0.5px !important;
  box-shadow:
    0 10px 38px rgba(182,141,64,.28),
    0 4px 16px rgba(0,0,0,.20),
    0 0 0 1px rgba(207,163,85,.14),
    inset 0 1px 0 rgba(255,255,255,.20),
    inset 0 -1px 0 rgba(0,0,0,.06) !important;
}
body.page-home .wpp-float-new svg, body.page-home .wpp-float svg {
  width: 32px !important;
  height: 32px !important;
  filter: drop-shadow(0 2px 8px rgba(0,0,0,.40))
          drop-shadow(0 0 10px rgba(207,163,85,.32)) !important;
}
body.page-home .wpp-float-new:hover, body.page-home .wpp-float:hover {
  box-shadow:
    0 18px 50px rgba(182,141,64,.40),
    0 6px 22px rgba(0,0,0,.26),
    0 0 0 1px rgba(207,163,85,.30),
    inset 0 1px 0 rgba(255,255,255,.30) !important;
}
@media (max-width: 640px)  {
  body.page-home .wpp-float-new, body.page-home .wpp-float { width: 64px !important; height: 64px !important; }
  body.page-home .wpp-float-new svg, body.page-home .wpp-float svg { width: 26px !important; height: 26px !important; }
}
@media (max-width: 380px)  {
  body.page-home .wpp-float-new, body.page-home .wpp-float { width: 58px !important; height: 58px !important; }
  body.page-home .wpp-float-new svg, body.page-home .wpp-float svg { width: 24px !important; height: 24px !important; }
}

/* Pulse mais sutil */
@keyframes wppGlassPulseRefined__page-home {
  0%,100% { box-shadow:
    0 4px 18px rgba(182,141,64,.10),
    0 1px 6px rgba(0,0,0,.10),
    inset 0 1px 0 rgba(255,255,255,.08),
    0 0 0 1px rgba(255,255,255,.04); }
  50%     { box-shadow:
    0 6px 24px rgba(182,141,64,.18),
    0 2px 8px rgba(0,0,0,.12),
    inset 0 1px 0 rgba(255,255,255,.12),
    0 0 0 1px rgba(207,163,85,.15); }
}
body.page-home .wpp-float-new, body.page-home .wpp-float { animation: wppGlassPulseRefined__page-home 4.2s ease-in-out infinite !important; }
body.page-home .wpp-float-new:hover, body.page-home .wpp-float:hover { animation: none !important; }

/* ── 5. ESPAÇAMENTO · RESPIRO ENTRE BLOCOS ── */
body.page-home section + section, body.page-home .bloco + .bloco { position: relative; }
body.page-home section { scroll-margin-top: 90px; }

/* Margens laterais um pouco maiores em viewports médios */
@media (min-width: 760px) and (max-width: 1100px)  {
  body.page-home { --safe: clamp(28px, 5.5vw, 56px) !important; }
}

/* Respiro extra antes do rodapé/CTA final (evita sobreposição) */
body.page-home .cta-footer-wrap, body.page-home .gran-finale, body.page-home footer { margin-top: 0; }
body.page-home .gran-finale + footer { padding-top: clamp(48px, 7vh, 80px) !important; }

/* ── 6. ALTERNÂNCIA SUTIL EM BLOCOS MONÓTONOS ── */
/* Aplica overlay leve em blocos consecutivos do mesmo tom (palha/verde) */
body.page-home .bloco-corp-a + .bloco-social-a::before, body.page-home .bloco-social-a + .bloco-shows-a::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 1px;
  background: linear-gradient(to right,
    transparent,
    rgba(182,141,64,.18) 30%,
    rgba(182,141,64,.28) 50%,
    rgba(182,141,64,.18) 70%,
    transparent);
  pointer-events: none;
  z-index: 5;
}

/* ── 7. GRID DE IMAGENS · ALINHAMENTO E CORTE ── */
body.page-home .win-bg, body.page-home .reveal-win-bg, body.page-home .janela-foto img, body.page-home .bloco-foto img {
  object-fit: cover !important;
  object-position: center center;
}

/* ── 8. CORREÇÃO TÉCNICA · CONTADORES ── */
/* Garantia visual: número final sempre visível antes/depois da animação */
body.page-home [data-counter] .numero {
  display: inline-block;
  font-variant-numeric: tabular-nums;
}

/* ── 9. FORMULÁRIO · FONTE MAIOR + ESPAÇAMENTO MELHOR ── */
body.page-home .form-grid-a, body.page-home .form-grid {
  gap: 24px !important;
  row-gap: 28px !important;
}
body.page-home .form-g-a, body.page-home .form-g {
  gap: 10px !important;
}
body.page-home .form-g-a label, body.page-home .form-g label {
  font-size: clamp(12px,1.1vw,13.5px) !important;
  letter-spacing: .26em !important;
  line-height: 1.5 !important;
  margin-bottom: 4px;
}
body.page-home .form-g-a input, body.page-home .form-g-a select, body.page-home .form-g-a textarea, body.page-home .form-g input, body.page-home .form-g select, body.page-home .form-g textarea {
  font-size: clamp(16px,1.4vw,18px) !important;
  padding: 16px 14px !important;
  line-height: 1.55 !important;
  letter-spacing: .005em;
}
body.page-home .form-g-a textarea, body.page-home .form-g textarea {
  min-height: 130px !important;
  padding-top: 18px !important;
}
body.page-home .form-g-a input::placeholder, body.page-home .form-g-a textarea::placeholder {
  font-size: .95em;
  letter-spacing: .01em;
}
body.page-home .form-lead-a, body.page-home .form-lead {
  line-height: 1.75 !important;
}
@media (max-width: 640px)  {
  body.page-home .form-grid-a, body.page-home .form-grid { gap: 18px !important; row-gap: 22px !important; grid-template-columns: 1fr !important; }
  body.page-home .form-g-a input, body.page-home .form-g-a select, body.page-home .form-g-a textarea, body.page-home .form-g input, body.page-home .form-g select, body.page-home .form-g textarea { font-size: 16px !important; padding: 14px 12px !important; }
}

/* ── 10. INSTAGRAM/SOCIAIS · GARANTIR SEM AZUL/SUBLINHADO ── */
body.page-home .ftr-socials a, body.page-home .ftr-col a {
  color: inherit !important;
  text-decoration: none !important;
  border-bottom: none !important;
}
body.page-home .btn-hero-ig {
  color: var(--go) !important;
  text-decoration: none !important;
  border-bottom: none !important;
}
body.page-home .btn-hero-ig:hover { color: var(--go-lt) !important; }

/* ── 11. AJUSTE FINO TIPOGRAFIA APOIO ── */
body.page-home .hero-sub {
  line-height: 1.7;
}
body.page-home .eyebrow { line-height: 1.6; }



/* ════════════════════════════════════════════════════════════
   ✦ REFINAMENTO UI/UX, ETAPA 2
   Correções técnicas: scroll/trackpad, cursor, links residuais,
   pointer-events, formulário (label hidden visual).
   Não altera estrutura nem texto.
══════════════════════════════════════════════════════════════ */

/* ─ SCROLL/TRACKPAD: nunca bloquear ─ */
html, body.page-home {
  overflow-x: hidden;
  overflow-y: auto !important;
  overscroll-behavior-y: auto;
  -webkit-overflow-scrolling: touch;
  scroll-behavior: smooth;
  touch-action: pan-y pan-x;
}

/* Cursor customizado só em pointer fino (mouse). Trackpad em laptop conta como fine,
   mas dispositivos touch (coarse) recebem cursor padrão para não quebrar UX. */
@media (pointer: coarse), (hover: none)  {
  body.page-home, html, body.page-home * { cursor: auto !important; }
  body.page-home .cursor, body.page-home .cursor-ring { display: none !important; }
}

/* Garantir que elementos interativos sempre tenham pointer-events ativos */
body.page-home a, body.page-home button, body.page-home input, body.page-home select, body.page-home textarea, body.page-home [role="button"], body.page-home .btn-primary, body.page-home .btn-ghost, body.page-home .btn-form-submit, body.page-home .pilar-card, body.page-home .wpp-float-new, body.page-home .wpp-float, body.page-home .nav-cta, body.page-home .nav-links a, body.page-home .btn-hero-ig, body.page-home .reveal-win, body.page-home .planta-item {
  pointer-events: auto !important;
}

/* Overlays decorativos não devem bloquear cliques/scroll */
body.page-home .win-ov, body.page-home .corp-foto-ov-a, body.page-home .grain, body.page-home .reveal-win-top-accent, body.page-home .win-rooftop-frame, body.page-home .cta-footer-overlay {
  pointer-events: none !important;
}

/* ─ LINKS: garantia anti-azul-padrão (reforço) ─ */
/* Excluídos os CTAs com cor própria intencional, para não herdarem a cor do fundo (bug de contraste hover-only) */
body.page-home a[href^="http"]:not(.btn-primary):not(.btn-ghost):not(.btn-ghost-dk):not(.btn-outline):not(.btn-outline-amber):not(.btn-form-submit):not(.cand-btn-submit):not(.cand-wa):not(.nav-cta):not(.btn-hero-ig):not(.btn-bordo):not(.rt2-format-link):not(.btn-form-loc-a):not(.btn-form-email-a):not(.btn-form-wa-a):not(.wpp-float-new):not(.wpp-float),
body.page-home a[href^="mailto"]:not(.btn-primary):not(.btn-ghost):not(.btn-ghost-dk):not(.btn-outline):not(.btn-outline-amber):not(.btn-form-submit):not(.cand-btn-submit):not(.cand-wa):not(.nav-cta):not(.btn-hero-ig):not(.btn-bordo):not(.rt2-format-link):not(.btn-form-loc-a):not(.btn-form-email-a):not(.btn-form-wa-a):not(.wpp-float-new):not(.wpp-float),
body.page-home a[href^="tel"]:not(.btn-primary):not(.btn-ghost):not(.btn-ghost-dk):not(.btn-outline):not(.btn-outline-amber):not(.btn-form-submit):not(.cand-btn-submit):not(.cand-wa):not(.nav-cta):not(.btn-hero-ig):not(.btn-bordo):not(.rt2-format-link):not(.btn-form-loc-a):not(.btn-form-email-a):not(.btn-form-wa-a):not(.wpp-float-new):not(.wpp-float),
body.page-home a[href^="https://wa.me"]:not(.btn-primary):not(.btn-ghost):not(.btn-ghost-dk):not(.btn-outline):not(.btn-outline-amber):not(.btn-form-submit):not(.cand-btn-submit):not(.cand-wa):not(.nav-cta):not(.btn-hero-ig):not(.btn-bordo):not(.rt2-format-link):not(.btn-form-loc-a):not(.btn-form-email-a):not(.btn-form-wa-a):not(.wpp-float-new):not(.wpp-float),
body.page-home a[href*="instagram"]:not(.btn-primary):not(.btn-ghost):not(.btn-ghost-dk):not(.btn-outline):not(.btn-outline-amber):not(.btn-form-submit):not(.cand-btn-submit):not(.cand-wa):not(.nav-cta):not(.btn-hero-ig):not(.btn-bordo):not(.rt2-format-link):not(.btn-form-loc-a):not(.btn-form-email-a):not(.btn-form-wa-a):not(.wpp-float-new):not(.wpp-float) {
  color: inherit !important;
  text-decoration: none !important;
  -webkit-text-decoration: none !important;
}

/* ─ FORMULÁRIO: garantir que campo hidden não ocupe espaço ─ */
body.page-home .form-grid-a input[type="hidden"], body.page-home .form-grid input[type="hidden"] {
  display: none !important;
}

/* Espaçamento extra dentro do form (reforço Etapa 1) */
body.page-home .form-grid-a, body.page-home .form-grid {
  align-items: start;
}

/* ─ MARQUEE: garantir altura real (sobrescreve qualquer min-height antigo) ─ */
body.page-home .marquee-strip { height: auto !important; }

/* ─ WHATSAPP FLOAT: garantir z-index correto e não interferir em scroll ─ */
body.page-home .wpp-float-new, body.page-home .wpp-float {
  z-index: 800;
  pointer-events: auto !important;
  touch-action: manipulation;
}



/* ════════════════════════════════════════════════════════════
   ✦ FINALIZAÇÃO, ETAPA 3
   Sobrescreve por cascata correções residuais das etapas 1 e 2.
   - Cursor custom só em pointer:fine
   - Scroll 100% funcional
   - Marquee 44px com peso visual reduzido
   - WhatsApp button refinado (stroke fino, brilho suave)
   - Links elegantes (sem reset agressivo, mantém contraste)
   - Form com espaçamento confortável
══════════════════════════════════════════════════════════════ */

/* ─ SCROLL: garantia absoluta ─ */
html {
  overflow-y: scroll;
  scroll-behavior: smooth;
}
body.page-home {
  overflow-x: hidden;
  overflow-y: visible;
  overscroll-behavior-y: auto;
  -webkit-overflow-scrolling: touch;
  touch-action: pan-y pan-x;
  /* cursor custom apenas em ponteiro fino (mouse desktop) */
  cursor: auto;
}
@media (pointer: fine) and (hover: hover)  {
  body.page-home { cursor: none; }
}
@media (pointer: coarse), (hover: none)  {
  body.page-home .cursor, body.page-home .cursor-ring { display: none !important; }
  body.page-home * { cursor: auto !important; }
  body.page-home a, body.page-home button, body.page-home [role="button"], body.page-home input[type="submit"], body.page-home .btn-primary, body.page-home .btn-ghost, body.page-home .btn-form-submit, body.page-home .pilar-card, body.page-home .nav-cta, body.page-home .wpp-float-new, body.page-home .wpp-float { cursor: pointer !important; }
}

/* Scripts/overlays decorativos não bloqueiam scroll/clique */
body.page-home .grain, body.page-home .win-ov, body.page-home .corp-foto-ov-a, body.page-home .social-foto-ov-a, body.page-home .shows-foto-ov-a, body.page-home .win-rooftop-frame, body.page-home .reveal-win-top-accent, body.page-home .pilares-bg-soft {
  pointer-events: none !important;
}

/* Cursor custom desativado em qualquer container scrollable */
body.page-home section, body.page-home .container-luxury, body.page-home .inner, body.page-home main, body.page-home article, body.page-home aside { cursor: inherit; }

/* ─ MARQUEE: altura real 44px, peso visual reduzido ─ */
body.page-home .marquee-strip {
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  display: flex !important;
  align-items: center !important;
  overflow: hidden;
  border-top: 0.5px solid rgba(255,255,255,.06) !important;
  border-bottom: 0.5px solid rgba(255,255,255,.06) !important;
  padding: 0 !important;
}
body.page-home .marquee-track {
  display: flex !important;
  align-items: center !important;
  height: 100%;
  animation-duration: 38s !important;
}
body.page-home .marquee-item {
  padding: 0 26px !important;
  font-size: 11.5px !important;
  font-weight: 400 !important;
  letter-spacing: .3em !important;
  text-transform: uppercase;
  opacity: .82;
  display: flex !important;
  align-items: center !important;
  gap: 22px !important;
  white-space: nowrap;
}
body.page-home .marquee-gem {
  width: 3px !important;
  height: 3px !important;
  border-radius: 50%;
  opacity: .42 !important;
  flex-shrink: 0;
}
body.page-home .mq-gold .marquee-item { color: var(--bordo-prof) !important; font-weight: 700 !important; }
body.page-home .mq-gold .marquee-gem { background: var(--bordo-prof) !important; opacity: .85 !important; }
body.page-home .mq-verde .marquee-item { color: rgba(245,235,221,.78); }
body.page-home .mq-bordo .marquee-item, body.page-home .mq-burgundy .marquee-item { color: rgba(245,235,221,.85); }

@media (max-width: 640px)  {
  body.page-home .marquee-strip { height: 38px !important; min-height: 38px !important; max-height: 38px !important; }
  body.page-home .marquee-item { font-size: 10px !important; padding: 0 14px !important; letter-spacing: .26em !important; gap: 14px !important; }
}

/* ─ WHATSAPP FLOAT: refinamento FINAL premium (vence todos os anteriores) ─ */
body.page-home .wpp-float-new, body.page-home .wpp-float {
  width: 78px !important;
  height: 78px !important;
  bottom: 34px !important;
  right: 34px !important;
  border-radius: 50% !important;
  border: 0.5px solid rgba(207,163,85,.50) !important;
  background:
    radial-gradient(circle at 30% 30%, rgba(207,163,85,.20), rgba(20,30,18,.84)) !important;
  backdrop-filter: blur(14px) saturate(125%) !important;
  -webkit-backdrop-filter: blur(14px) saturate(125%) !important;
  box-shadow:
    0 12px 40px rgba(182,141,64,.32),
    0 4px 18px rgba(0,0,0,.22),
    0 0 0 1px rgba(207,163,85,.16),
    0 0 22px rgba(207,163,85,.18),
    inset 0 1px 0 rgba(255,255,255,.22) !important;
  transition: all .4s cubic-bezier(.2,.7,.2,1) !important;
}
body.page-home .wpp-float-new svg, body.page-home .wpp-float svg {
  width: 32px !important;
  height: 32px !important;
  fill: rgba(232,200,140,1) !important;
  filter:
    drop-shadow(0 2px 8px rgba(0,0,0,.40))
    drop-shadow(0 0 10px rgba(207,163,85,.40)) !important;
}
body.page-home .wpp-float-new:hover, body.page-home .wpp-float:hover {
  transform: translateY(-3px) scale(1.07) !important;
  border-color: rgba(207,163,85,.85) !important;
  box-shadow:
    0 20px 56px rgba(182,141,64,.46),
    0 8px 24px rgba(0,0,0,.28),
    0 0 0 1px rgba(207,163,85,.36),
    0 0 36px rgba(207,163,85,.32),
    inset 0 1px 0 rgba(255,255,255,.32) !important;
}
body.page-home .wpp-float-new:hover svg, body.page-home .wpp-float:hover svg {
  fill: rgba(245,225,178,1) !important;
  filter:
    drop-shadow(0 2px 10px rgba(0,0,0,.45))
    drop-shadow(0 0 14px rgba(207,163,85,.55)) !important;
}
@media (max-width: 640px)  {
  body.page-home .wpp-float-new, body.page-home .wpp-float { width: 64px !important; height: 64px !important; bottom: 20px !important; right: 20px !important; }
  body.page-home .wpp-float-new svg, body.page-home .wpp-float svg { width: 26px !important; height: 26px !important; }
}
@media (max-width: 380px)  {
  body.page-home .wpp-float-new, body.page-home .wpp-float { width: 58px !important; height: 58px !important; bottom: 16px !important; right: 16px !important; }
  body.page-home .wpp-float-new svg, body.page-home .wpp-float svg { width: 24px !important; height: 24px !important; }
}

/* Pulse premium no desktop */
@media (pointer: fine)  {
  @keyframes wppPremiumPulse__page-home {
    0%, 100% { box-shadow:
      0 12px 40px rgba(182,141,64,.32),
      0 4px 18px rgba(0,0,0,.22),
      0 0 0 1px rgba(207,163,85,.16),
      0 0 22px rgba(207,163,85,.18),
      inset 0 1px 0 rgba(255,255,255,.22),
      0 0 0 0 rgba(207,163,85,.36); }
    50% { box-shadow:
      0 14px 48px rgba(182,141,64,.40),
      0 6px 22px rgba(0,0,0,.26),
      0 0 0 1px rgba(207,163,85,.24),
      0 0 32px rgba(207,163,85,.28),
      inset 0 1px 0 rgba(255,255,255,.28),
      0 0 0 18px rgba(207,163,85,0); }
  }
  body.page-home .wpp-float-new, body.page-home .wpp-float { animation: wppPremiumPulse__page-home 4.2s ease-in-out infinite !important; }
  body.page-home .wpp-float-new:hover, body.page-home .wpp-float:hover { animation: none !important; }
}

/* ─ LINKS: abordagem elegante (sem reset agressivo) ─ */
/* Remove !important da etapa 2; deixa cascata natural */
body.page-home a { color: inherit; text-decoration: none; }
body.page-home a:visited { color: inherit; }

/* Footer/nav: links sutis com hover dourado */
body.page-home .ftr-col a, body.page-home .ftr-socials a, body.page-home footer a, body.page-home .nav-links a {
  color: inherit;
  text-decoration: none;
  transition: color .25s ease, opacity .25s ease;
}
body.page-home .ftr-col a:hover, body.page-home .ftr-socials a:hover, body.page-home footer a:hover, body.page-home .nav-links a:hover {
  color: var(--go, #cfa355);
  opacity: 1;
}

/* Mailto/tel/wa.me/instagram: nunca azul */
body.page-home a[href^="mailto"], body.page-home a[href^="tel"], body.page-home a[href*="wa.me"], body.page-home a[href*="instagram"] {
  color: inherit;
  text-decoration: none;
}
body.page-home a[href^="mailto"]:hover, body.page-home a[href*="instagram"]:hover, body.page-home a[href*="wa.me"]:hover {
  color: var(--go, #cfa355);
}

/* ─ FORMULÁRIO: UX confortável ─ */
body.page-home .form-grid-a, body.page-home .form-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 28px 22px !important;
  align-items: start;
}
body.page-home .form-g-a, body.page-home .form-g {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}
body.page-home .form-g-a label, body.page-home .form-g label {
  font-size: 12.5px !important;
  letter-spacing: .28em !important;
  text-transform: uppercase;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  color: rgba(245,235,221,.72) !important;
  margin-bottom: 2px !important;
}
body.page-home .form-g-a input, body.page-home .form-g-a select, body.page-home .form-g-a textarea, body.page-home .form-g input, body.page-home .form-g select, body.page-home .form-g textarea {
  font-size: 16px !important;
  padding: 18px 16px !important;
  line-height: 1.5 !important;
  letter-spacing: 0 !important;
  background: rgba(245,235,221,.05) !important;
  border: none !important;
  border-bottom: 1px solid rgba(245,235,221,.18) !important;
  border-radius: 2px !important;
  color: var(--palha-f, #F5EBDD) !important;
  font-family: 'DM Sans', sans-serif !important;
  transition: all .3s ease !important;
  width: 100% !important;
  -webkit-appearance: none;
  appearance: none;
}
body.page-home .form-g-a textarea, body.page-home .form-g textarea {
  min-height: 140px !important;
  resize: vertical;
  padding-top: 18px !important;
}
body.page-home .form-g-a input:focus, body.page-home .form-g-a select:focus, body.page-home .form-g-a textarea:focus, body.page-home .form-g input:focus, body.page-home .form-g select:focus, body.page-home .form-g textarea:focus {
  background: rgba(245,235,221,.09) !important;
  border-bottom-color: var(--go, #cfa355) !important;
  outline: none !important;
}
body.page-home .form-g-a input::placeholder, body.page-home .form-g-a textarea::placeholder {
  color: rgba(245,235,221,.32) !important;
  font-size: 15px;
  letter-spacing: 0;
}
body.page-home .form-g-a.form-full-a, body.page-home .form-g.form-full {
  grid-column: 1 / -1 !important;
}
body.page-home .form-wrap-a, body.page-home .form-wrap {
  padding: clamp(28px, 4vw, 44px) !important;
}
body.page-home .form-title-a, body.page-home .form-title {
  margin-bottom: 8px !important;
}
body.page-home .form-sub-a, body.page-home .form-sub {
  margin-bottom: clamp(28px, 3.5vh, 36px) !important;
  line-height: 1.55 !important;
}
body.page-home .form-bot-a, body.page-home .form-bot {
  margin-top: clamp(28px, 3.5vh, 36px) !important;
  padding-top: clamp(20px, 2.5vh, 28px) !important;
  border-top: 1px solid rgba(245,235,221,.08);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}
body.page-home .btn-form-submit {
  padding: 16px 32px !important;
}

/* Mobile: form em coluna única, espaçamento ajustado */
@media (max-width: 760px)  {
  body.page-home .form-grid-a, body.page-home .form-grid { grid-template-columns: 1fr !important; gap: 22px !important; }
  body.page-home .form-g-a input, body.page-home .form-g-a select, body.page-home .form-g-a textarea, body.page-home .form-g input, body.page-home .form-g select, body.page-home .form-g textarea { font-size: 16px !important; padding: 16px 14px !important; }
  body.page-home .form-bot-a, body.page-home .form-bot { flex-direction: column; align-items: stretch; }
  body.page-home .form-bot-a .btn-form-submit { width: 100%; justify-content: center; }
}

/* Hidden fields: nunca renderizam */
body.page-home input[type="hidden"] { display: none !important; }

/* ─ AJUSTES DE CONFORTO DE LEITURA ─ */
body.page-home .reveal-win-p, body.page-home .corp-p-a, body.page-home .social-p-a, body.page-home .shows-p-a {
  font-size: clamp(17px, 1.5vw, 21px) !important;
  line-height: 1.7 !important;
}

/* Z-index sanity: WhatsApp acima, cursor acima do WhatsApp */
body.page-home .wpp-float-new, body.page-home .wpp-float { z-index: 800 !important; }
body.page-home .cursor, body.page-home .cursor-ring { z-index: 9999 !important; pointer-events: none !important; }

/* ── TIPOGRAFIA · CONSISTÊNCIA FINAL ──────────────────────────
   Playfair Display = títulos (h1, h2, h3, .*-h2, .*-h1, .*-name)
   DM Sans         = corpo de texto (p, eyebrow, label, tag, btn)
─────────────────────────────────────────────────────────────── */
body.page-home h1, body.page-home h2, body.page-home h3, body.page-home .hero-h1, body.page-home .inst-h2, body.page-home .alambique-h2, body.page-home .rooftop-h2, body.page-home .cta-h2, body.page-home .pilares-h2, body.page-home .vantagem-h2, body.page-home .pilar-name, body.page-home .vpoint-title, body.page-home .reveal-win-h2, body.page-home .ftr-brand-name {
  font-family: 'Playfair Display', serif !important;
}
body.page-home p, body.page-home li, body.page-home span, body.page-home .hero-eyebrow, body.page-home .reveal-win-eyebrow, body.page-home .rooftop-eyebrow, body.page-home .cta-eyebrow-mini, body.page-home .alambique-meta-lbl, body.page-home .rooftop-tag, body.page-home .btn-primary, body.page-home .btn-ghost, body.page-home .btn-ghost-dk, body.page-home .btn-hero-ig, body.page-home .nav-cta, body.page-home .nav-links a, body.page-home .nav-logo-sub, body.page-home .eyebrow span, body.page-home .pilar-cta, body.page-home .pilar-desc, body.page-home .pilar-ordinal, body.page-home .inst-p, body.page-home .alambique-p, body.page-home .rooftop-p, body.page-home .cta-p, body.page-home .hero-sub, body.page-home .inst-stat-lbl, body.page-home .marquee-item, body.page-home .ftr-col a, body.page-home .ftr-about, body.page-home .ftr-col-head, body.page-home .ftr-copy, body.page-home .ftr-socials a, body.page-home .ftr-brand-tag {
  font-family: 'DM Sans', sans-serif;
}
/* Exceções: itálicos editoriais que pedem Playfair mesmo no corpo */
body.page-home .hero-sub, body.page-home .inst-h2 em, body.page-home .alambique-h2 em, body.page-home .rooftop-pane-2 .rooftop-p, body.page-home .cta-h2 em, body.page-home .pilar-ordinal {
  font-family: 'Playfair Display', serif !important;
}

/* ===== PATCH FINAL — AJUSTES FINOS ===== */

/* HEADER — fixo, limpo, fundo dourado no topo (Hero), padrão de comportamento igual ao nav de Expositores */
body.page-home header:not(.scrolled), body.page-home .header:not(.scrolled), body.page-home .nav:not(.scrolled), body.page-home #nav:not(.scrolled) {
  background: rgba(182,141,64,.93) !important;
  backdrop-filter: blur(22px) saturate(1.4) !important;
  -webkit-backdrop-filter: blur(22px) saturate(1.4) !important;
  border: none !important;
  box-shadow: none !important;
}
/* Fundo dourado: texto verde + destaques em bordô (regra de contraste do projeto) */
body.page-home .nav-logo-main { color: var(--verde) !important; text-shadow: none !important; }
body.page-home .nav-logo-sub { color: var(--verde) !important; opacity: .82; }
body.page-home .nav-links a { color: rgba(26,40,25,.68) !important; }
body.page-home .nav-links a:hover, body.page-home .nav-links a.active { color: var(--verde) !important; }
body.page-home .nav-links a::after { background: var(--bordo-prof) !important; }
body.page-home .hamburger span { background: var(--verde) !important; }

body.page-home nav .nav-cta {
  color: var(--verde) !important;
  border: 1px solid rgba(26,40,25,.4) !important;
}
body.page-home .nav-cta:hover {
  background: var(--bordo) !important;
  color: var(--palha-f) !important;
  border-color: var(--bordo) !important;
  box-shadow: 0 0 24px rgba(90,15,26,.28) !important;
}

/* HERO — botões dourados */
body.page-home .btn-hero-ig, body.page-home .btn-hero-loc {
  color: var(--go) !important;
  border-color: rgba(207,163,85,.6) !important;
}

/* HERO — textos amarelos levemente maiores */
body.page-home .hero-eyebrow, body.page-home .hero-tags, body.page-home .hero-highlight {
  font-size: 1.08em !important;
}

/* HISTÓRIA + ALAMBIQUE — remover “cruz” e suavizar transição */
body.page-home .sec-institucional, body.page-home .sec-alambique {
  gap: 0 !important;
}

body.page-home .sec-institucional::after, body.page-home .sec-alambique::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(
    to right,
    rgba(15,45,31,0) 50%,
    rgba(15,45,31,0.2) 65%,
    rgba(15,45,31,0.4) 80%
  );
}
/* ALAMBIQUE — evitar quebra feia no título */
body.page-home .alambique-h2 {
  max-width: 520px;
  line-height: 1.1;
  word-break: normal;
}

/* ROOFTOP — textos maiores e mais legíveis */
body.page-home .rooftop-pane p, body.page-home .rooftop-p, body.page-home .rooftop-eyebrow, body.page-home .rooftop-tag {
  font-size: 1.15em !important;
  line-height: 1.6 !important;
}

body.page-home .rooftop-pane-2 p::before, body.page-home .rooftop-pane-2 p::after {
  content: "" !important;
}

/* CTA FINAL — tirar amarelo */
body.page-home .cta-eyebrow-mini {
  color: #fff !important;
}

/* TIPOGRAFIA — garantir padrão */
body.page-home h1, body.page-home h2, body.page-home h3 {
  font-family: 'Playfair Display', serif !important;
}

body.page-home, body.page-home p, body.page-home span, body.page-home li, body.page-home a {
  font-family: 'DM Sans', sans-serif !important;
}

/* ===== FIX FINAL ROOFTOP (FORÇA TOTAL) ===== */

body.page-home .rooftop-section *, body.page-home .rooftop-pane *, body.page-home .rooftop-pane-1 *, body.page-home .rooftop-pane-2 * {
  font-family: 'DM Sans', sans-serif !important;
}

/* títulos continuam Playfair */
body.page-home .rooftop-section h1, body.page-home .rooftop-section h2, body.page-home .rooftop-section h3 {
  font-family: 'Playfair Display', serif !important;
}

/* aumentar TODOS os textos do rooftop */
body.page-home .rooftop-section p, body.page-home .rooftop-section .rooftop-p, body.page-home .rooftop-section .rooftop-eyebrow, body.page-home .rooftop-section .rooftop-tag {
  font-size: 18px !important;
  line-height: 1.7 !important;
}

/* texto lateral direito (o que está pequeno) */
body.page-home .rooftop-pane-2 p {
  font-size: 19px !important;
  line-height: 1.75 !important;
  opacity: 1 !important;
}

/* texto amarelo (cada formato...) */
body.page-home .rooftop-pane-2 .rooftop-eyebrow {
  font-size: 14px !important;
  letter-spacing: .18em !important;
}

/* tags (teto retrátil etc) */
body.page-home .rooftop-tag {
  font-size: 13px !important;
  padding: 6px 12px !important;
}

/* ════════════════════════════════════════════════════════════════
   PATCH PREMIUM FINAL · v8 — Janela Dupla editorial
   ─ Nav fixo reforçado
   ─ Botões Hero (Instagram + Maps) em dourado garantido
   ─ Bloco Rooftop = duas reveal-win consecutivas (estilo blocos 3/4)
   ─ Bloco Oportunidade limpo · sem destaques de cor · CTA legível
   ─ Animações de scroll sincronizadas (stagger + parallax leve)
═══════════════════════════════════════════════════════════════════ */

/* ── 1. NAV FIXO · reforço final super-específico ─────────────── */
html body nav#nav, html body > nav {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 9999 !important;
  transform: none !important;
  will-change: auto !important;
  backface-visibility: hidden;
}
body.page-home { padding-top: 0; }

/* ── 2. HERO · botões Instagram + Maps em dourado (reforço) ─── */
body.page-home .hero .hero-stats .hero-stat-ig a.btn-hero-ig, body.page-home .hero-stats a.btn-hero-ig, body.page-home a.btn-hero-ig[href*="instagram"], body.page-home a.btn-hero-ig[href*="maps"], body.page-home .hero-stat-ig > a {
  color: var(--go) !important;
  -webkit-text-fill-color: var(--go) !important;
}
body.page-home .hero .hero-stats .hero-stat-ig a.btn-hero-ig:hover, body.page-home .hero-stats a.btn-hero-ig:hover, body.page-home a.btn-hero-ig[href*="instagram"]:hover, body.page-home a.btn-hero-ig[href*="maps"]:hover, body.page-home .hero-stat-ig > a:hover {
  color: var(--go-lt) !important;
  -webkit-text-fill-color: var(--go-lt) !important;
}
body.page-home .hero-stat-ig svg { stroke: var(--go) !important; }
body.page-home .hero-stat-ig a:hover svg { stroke: var(--go-lt) !important; }

/* ════════════════════════════════════════════════════════════════
   ROOFTOP · DUAS JANELAS reveal-win (efeito idêntico aos blocos 3/4)
   Mesma foto rooftop2.jpg em ambos · texto editorial na base
═══════════════════════════════════════════════════════════════════ */

/* Container envolvente */
body.page-home .rooftop-double { position: relative; background: #0a120a; }

/* Janela base · reveal-win (replica fiel da referência) */
body.page-home .rt-win {
  position: relative;
  height: 88vh;
  min-height: 600px;
  max-height: 980px;
  clip-path: inset(0);
  overflow: hidden;
}
body.page-home .rt-win-bg {
  position: absolute !important;
  top: 0 !important; left: 0 !important;
  width: 100% !important; height: 100% !important;
  z-index: 0 !important;
  background-image: url('../assets/images/rooftop2.jpg');
  background-size: cover !important;
  background-repeat: no-repeat !important;
  background-position: center 40% !important;
  background-attachment: fixed !important;
  filter: contrast(1.04) saturate(1.08);
}
@media (max-width: 1023px)  {
  body.page-home .rt-win-bg { background-attachment: scroll !important; }
}
body.page-home .rt-win-bg-2 { background-position: center 60% !important; }

/* Overlay base (escurecimento geral pra leitura) */
body.page-home .rt-win-ov {
  position: absolute !important;
  top: 0; left: 0; width: 100%; height: 100%;
  z-index: 1 !important;
  background: linear-gradient(to top,
    rgba(8,14,8,.86) 0%,
    rgba(8,14,8,.45) 38%,
    rgba(8,14,8,.22) 65%,
    rgba(8,14,8,.18) 100%);
  pointer-events: none;
}

/* Acentos finos topo e base */
body.page-home .rt-win-accent-top {
  position: absolute; top: 0; left: 0; right: 0;
  height: 1px; z-index: 6;
  background: linear-gradient(to right,
    transparent 0%,
    var(--acento, #2C4A2B) 20%,
    var(--go) 50%,
    var(--acento, #2C4A2B) 80%,
    transparent 100%);
  opacity: .7;
}
body.page-home .rt-win::after {
  content: '';
  position: absolute; bottom: 0; left: 0; right: 0;
  height: 2px; z-index: 5;
  background: linear-gradient(to right,
    transparent 0%,
    var(--acento, #2C4A2B) 18%,
    var(--go) 50%,
    var(--acento, #2C4A2B) 82%,
    transparent 100%);
  opacity: .9;
  box-shadow: 0 0 12px rgba(182,141,64,.2);
}

/* Número fantasma — decorativo */
body.page-home .rt-win-num {
  position: absolute !important;
  z-index: 3 !important;
  right: var(--safe) !important;
  bottom: 10% !important;
  font-family: 'Playfair Display', serif;
  font-size: clamp(160px, 20vw, 280px);
  font-weight: 700;
  line-height: 1;
  color: rgba(242,238,233,.05);
  pointer-events: none;
  user-select: none;
}

/* Body alinhado na base */
body.page-home .rt-win-body {
  position: relative !important;
  z-index: 4 !important;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 0 var(--safe) clamp(48px, 7vh, 72px);
}

/* Eyebrow refinado */
body.page-home .rt-win-eyebrow {
  font-family: 'DM Sans', sans-serif !important;
  font-size: clamp(11px, 1vw, 12px);
  letter-spacing: .34em;
  text-transform: uppercase;
  color: var(--go);
  font-weight: 600;
  margin-bottom: clamp(20px, 2.4vh, 28px);
  display: flex;
  align-items: center;
  gap: 14px;
  text-shadow: 0 1px 8px rgba(0,0,0,.6);
}
body.page-home .rt-win-eyebrow::before {
  content: '';
  display: inline-block;
  width: 36px;
  height: 1px;
  background: linear-gradient(to right, var(--bordo), var(--go));
  flex-shrink: 0;
}

/* H2 editorial — TUDO BRANCO sem destaque de cor */
body.page-home .rt-win-h2 {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(34px, 5.5vw, 78px);
  font-weight: 400;
  line-height: 1.0;
  letter-spacing: -.025em;
  color: var(--ow);
  text-shadow: 0 4px 40px rgba(0,0,0,.55);
  max-width: 720px;
  margin-bottom: clamp(18px, 2.5vh, 24px);
}
body.page-home .rt-win-h2 em {
  font-style: italic;
  color: var(--ow);   /* tudo branco, sem destaque */
  font-weight: 400;
}

/* Lead curto */
body.page-home .rt-win-p {
  font-family: 'DM Sans', sans-serif !important;
  font-size: clamp(17px, 1.4vw, 20px);
  font-weight: 300;
  line-height: 1.72;
  color: rgba(242,238,233,.9);
  max-width: 580px;
  text-shadow: 0 2px 14px rgba(0,0,0,.45);
  margin: 0;
}

/* Selo decorativo · linha + nome opcional */
body.page-home .rt-win-selo {
  position: absolute !important;
  z-index: 4 !important;
  right: var(--safe) !important;
  bottom: clamp(48px, 7vh, 72px) !important;
  text-align: right;
  display: flex;
  flex-direction: column;
  gap: 6px;
  width: clamp(140px, 14vw, 200px);
}
body.page-home .rt-win-selo-line {
  width: 100%;
  height: 1px;
  background: linear-gradient(to left, var(--acento, #2C4A2B), var(--go), transparent);
  display: block;
}
body.page-home .rt-win-selo-tag {
  font-family: 'DM Sans', sans-serif;
  font-size: 10.5px;
  letter-spacing: .32em;
  text-transform: uppercase;
  color: rgba(207,163,85,.75);
  font-weight: 500;
  text-shadow: 0 1px 8px rgba(0,0,0,.6);
}

/* Mobile rooftop */
@media (max-width: 1023px)  {
  body.page-home .rt-win { height: auto; min-height: 70vh; max-height: none; }
  body.page-home .rt-win-body { padding: clamp(80px, 12vh, 140px) var(--safe) clamp(40px, 6vh, 56px); }
  body.page-home .rt-win-h2 { font-size: clamp(30px, 8vw, 44px) !important; }
  body.page-home .rt-win-p { font-size: 16px !important; }
  body.page-home .rt-win-num { font-size: 110px !important; bottom: 5% !important; opacity: .6; }
  body.page-home .rt-win-selo { display: none !important; }
}
@media (max-width: 480px)  {
  body.page-home .rt-win-num { font-size: 80px !important; }
}

/* ════════════════════════════════════════════════════════════════
   BLOCO OPORTUNIDADE · sec-palha · LIMPO · sem destaques de cor
═══════════════════════════════════════════════════════════════════ */
body.page-home .sec-oportunidade {
  background: #F2EFE9;
  position: relative;
  padding: clamp(80px, 12vh, 140px) 0 clamp(80px, 12vh, 140px);
  border-top: 1px solid rgba(90,15,26,.10);
}
body.page-home .sec-oportunidade::before {
  content: '';
  position: absolute; top: 0; left: 50%;
  transform: translateX(-50%);
  width: clamp(280px, 40%, 520px);
  height: 1px;
  background: linear-gradient(to right, transparent, var(--bordo) 30%, var(--bordo) 70%, transparent);
  opacity: .55;
}
body.page-home .opo-inner {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 var(--safe);
}

/* HEADER · split limpo · TODO BORDÔ */
body.page-home .opo-header {
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: clamp(32px, 5vw, 80px);
  align-items: end;
  margin-bottom: clamp(56px, 7vh, 88px);
  padding-bottom: clamp(36px, 4.5vh, 52px);
  border-bottom: 1px solid rgba(90,15,26,.16);
}
body.page-home .opo-eyebrow {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 22px;
}
body.page-home .opo-eyebrow-line {
  width: 48px;
  height: 1px;
  background: var(--bordo);
}
body.page-home .opo-eyebrow span {
  font-family: 'DM Sans', sans-serif !important;
  font-size: clamp(11.5px, 1vw, 13px);
  letter-spacing: .34em;
  text-transform: uppercase;
  color: var(--bordo);
  font-weight: 600;
}
/* Título tudo bordô · sem destaque colorido · sem fundo */
body.page-home .opo-h2 {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(36px, 5vw, 72px);
  font-weight: 400;
  line-height: 1.0;
  letter-spacing: -.025em;
  color: var(--bordo);
  margin: 0;
  background: none;
  padding: 0;
}
body.page-home .opo-h2 em {
  font-style: italic;
  color: var(--bordo);
  font-weight: 400;
}
body.page-home .opo-intro-wrap {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding-bottom: 8px;
}
/* Intro sem strong colorido · só bordô translúcido uniforme */
body.page-home .opo-intro {
  font-family: 'DM Sans', sans-serif !important;
  font-size: clamp(16px, 1.3vw, 18.5px);
  font-weight: 300;
  line-height: 1.7;
  color: rgba(60,10,18,.78);
  margin: 0;
}

/* GRID 2x2 cards numerados */
body.page-home .opo-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: clamp(18px, 2vw, 28px);
  margin-bottom: clamp(56px, 7vh, 84px);
}
body.page-home .opo-card {
  position: relative;
  padding: clamp(34px, 4vh, 48px) clamp(28px, 3vw, 42px);
  background: #FBF8F2;
  border: 0.5px solid rgba(90,15,26,.16);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  transition: transform .55s var(--ease), border-color .4s, box-shadow .55s var(--ease);
}
body.page-home .opo-card::before {
  content: '';
  position: absolute; left: 0; top: 0; bottom: 0;
  width: 2px;
  background: linear-gradient(to bottom, var(--bordo) 0%, var(--go) 60%, transparent 100%);
  transform: scaleY(0);
  transform-origin: top;
  transition: transform .65s var(--ease);
}
body.page-home .opo-card:hover {
  transform: translateY(-3px);
  border-color: rgba(90,15,26,.32);
  box-shadow: 0 18px 50px rgba(60,10,18,.10), 0 4px 14px rgba(60,10,18,.05);
}
body.page-home .opo-card:hover::before { transform: scaleY(1); }
body.page-home .opo-card-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 24px;
  gap: 14px;
}
body.page-home .opo-num {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(40px, 4vw, 54px);
  font-weight: 400;
  font-style: italic;
  color: var(--bordo);
  line-height: 1;
  letter-spacing: -.02em;
  display: block;
}
body.page-home .opo-tag {
  display: inline-flex;
  align-items: center;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 10.5px;
  letter-spacing: .28em;
  text-transform: uppercase;
  color: var(--bordo);
  font-weight: 600;
  border: 0.5px solid rgba(90,15,26,.32);
  padding: 7px 12px;
  background: rgba(90,15,26,.04);
  white-space: nowrap;
  flex-shrink: 0;
}
body.page-home .opo-title {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(20px, 1.8vw, 24px);
  font-weight: 500;
  line-height: 1.25;
  color: var(--bordo);
  margin: 0 0 16px 0;
  letter-spacing: -.005em;
}
body.page-home .opo-desc {
  font-family: 'DM Sans', sans-serif !important;
  font-size: clamp(14.5px, 1.1vw, 15.5px);
  font-weight: 300;
  line-height: 1.7;
  color: rgba(60,10,18,.7);
  margin: 0;
}

/* CTA segmentado · FUNDO VERDE PROFUNDO · texto DOURADO (regra do user) */
body.page-home .opo-cta {
  position: relative;
  padding: clamp(38px, 4.8vh, 56px) clamp(32px, 4vw, 56px);
  background: var(--verde-deep, #111e10);
  color: var(--go-pa);
  overflow: hidden;
  border: 0.5px solid rgba(207,163,85,.22);
}
body.page-home .opo-cta::before {
  content: '';
  position: absolute; inset: 0;
  background:
    radial-gradient(ellipse at 20% 30%, rgba(207,163,85,.10) 0%, transparent 55%),
    radial-gradient(ellipse at 80% 70%, rgba(207,163,85,.06) 0%, transparent 50%);
  pointer-events: none;
}
body.page-home .opo-cta-head {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: clamp(28px, 3.6vh, 38px);
  position: relative;
  z-index: 2;
}
/* Eyebrow sobre verde = DOURADO claro · contraste forte */
body.page-home .opo-cta-eyebrow {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 11.5px;
  letter-spacing: .34em;
  text-transform: uppercase;
  color: var(--go-lt);
  font-weight: 600;
}
/* Lead em dourado claro também (verde de fundo = escrita dourada) */
body.page-home .opo-cta-lead {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(22px, 2.4vw, 30px);
  font-weight: 400;
  font-style: italic;
  color: var(--go-pa);
  line-height: 1.25;
  margin: 0;
  letter-spacing: -.01em;
}
body.page-home .opo-cta-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(12px, 1.4vw, 18px);
  position: relative;
  z-index: 2;
}
body.page-home .opo-cta-btn {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: clamp(20px, 2.4vh, 26px) clamp(20px, 2.4vw, 26px);
  background: rgba(255,255,255,.03);
  border: 0.5px solid rgba(207,163,85,.32);
  text-decoration: none;
  color: var(--go-pa);
  transition: transform .45s var(--ease), background .35s, border-color .35s;
  overflow: hidden;
}
body.page-home .opo-cta-btn::before {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(120deg, transparent 0%, rgba(207,163,85,.10) 50%, transparent 100%);
  transform: translateX(-100%);
  transition: transform .8s var(--ease);
}
body.page-home .opo-cta-btn:hover {
  transform: translateY(-2px);
  background: rgba(255,255,255,.06);
  border-color: rgba(207,163,85,.6);
}
body.page-home .opo-cta-btn:hover::before { transform: translateX(100%); }
body.page-home .opo-cta-btn-eyebrow {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 10.5px;
  letter-spacing: .32em;
  text-transform: uppercase;
  color: var(--go-lt);
  font-weight: 600;
  position: relative;
  z-index: 2;
}
body.page-home .opo-cta-btn-title {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(17px, 1.5vw, 20px);
  font-weight: 500;
  color: var(--ow);
  letter-spacing: -.005em;
  line-height: 1.2;
  position: relative;
  z-index: 2;
}
body.page-home .opo-cta-btn-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 10px;
  position: relative;
  z-index: 2;
}
body.page-home .opo-cta-btn-desc {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 12.5px;
  color: rgba(207,163,85,.7);
  font-weight: 300;
  line-height: 1.4;
}
body.page-home .opo-cta-btn-arrow {
  font-family: 'Playfair Display', serif !important;
  font-size: 22px;
  color: var(--go-lt);
  transition: transform .45s var(--ease);
  flex-shrink: 0;
  line-height: 1;
}
body.page-home .opo-cta-btn:hover .opo-cta-btn-arrow {
  transform: translateX(6px);
  color: var(--ow);
}

/* Responsive opo */
@media (max-width: 1023px)  {
  body.page-home .opo-header { grid-template-columns: 1fr; gap: 28px; align-items: start; }
  body.page-home .opo-grid { grid-template-columns: 1fr; gap: 14px; }
  body.page-home .opo-cta-row { grid-template-columns: 1fr; gap: 12px; }
  body.page-home .opo-h2 { font-size: clamp(30px, 8vw, 44px) !important; }
  body.page-home .opo-cta { padding: 32px 24px; }
  body.page-home .opo-cta-lead { font-size: clamp(20px, 5vw, 24px) !important; }
}
@media (max-width: 600px)  {
  body.page-home .opo-card { padding: 30px 24px; }
  body.page-home .opo-num { font-size: 38px !important; }
  body.page-home .opo-card-head { flex-direction: column; gap: 16px; align-items: flex-start; }
  body.page-home .opo-tag { font-size: 9.5px; padding: 6px 10px; }
}

/* ════════════════════════════════════════════════════════════════
   ANIMAÇÕES SCROLL · stagger sincronizado
═══════════════════════════════════════════════════════════════════ */
/* Reveal/fade-up com curva premium e delay refinado */
body.page-home .reveal, body.page-home .fade-up {
  opacity: 0;
  transform: translateY(32px);
  transition: opacity 1.05s cubic-bezier(0.16,1,0.3,1),
              transform 1.05s cubic-bezier(0.16,1,0.3,1);
  will-change: opacity, transform;
}
body.page-home .reveal.visible, body.page-home .fade-up.active {
  opacity: 1;
  transform: none;
}
/* Delays staggered */
body.page-home .d1 { transition-delay: .14s !important; }
body.page-home .d2 { transition-delay: .28s !important; }
body.page-home .d3 { transition-delay: .42s !important; }
body.page-home .d4 { transition-delay: .56s !important; }
body.page-home .d5 { transition-delay: .70s !important; }

/* Foto reveal especial — entra com leve scale */
body.page-home .rt-win .rt-win-bg {
  opacity: 0;
  transform: scale(1.04);
  transition: opacity 1.6s ease-out, transform 2.2s cubic-bezier(0.16,1,0.3,1);
}
body.page-home .rt-win.in-view .rt-win-bg {
  opacity: 1;
  transform: scale(1);
}

/* Título h2 splash sutil */
body.page-home .rt-win-h2, body.page-home .opo-h2 {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 1.0s var(--ease), transform 1.0s var(--ease);
  transition-delay: .15s;
}
body.page-home .rt-win.in-view .rt-win-h2, body.page-home .reveal.visible .opo-h2, body.page-home .opo-header .reveal.visible .opo-h2 {
  opacity: 1;
  transform: none;
}

/* Cards opo slide-in stagger */
body.page-home .opo-card.reveal {
  transform: translateY(40px);
}
body.page-home .opo-card.reveal.visible { transform: none; }

/* CTA buttons stagger */
body.page-home .opo-cta-row .opo-cta-btn {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity .85s var(--ease), transform .85s var(--ease),
              background .35s, border-color .35s;
}
body.page-home .opo-cta.reveal.visible .opo-cta-btn:nth-child(1) {
  opacity: 1; transform: none; transition-delay: .25s;
}
body.page-home .opo-cta.reveal.visible .opo-cta-btn:nth-child(2) {
  opacity: 1; transform: none; transition-delay: .40s;
}
body.page-home .opo-cta.reveal.visible .opo-cta-btn:nth-child(3) {
  opacity: 1; transform: none; transition-delay: .55s;
}

/* Hover dos cta-btn ainda funcional após animar */
body.page-home .opo-cta.reveal.visible .opo-cta-btn:hover {
  transform: translateY(-2px) !important;
}

/* Polimento final */
body.page-home .cursor, body.page-home .cursor-ring { z-index: 9998; }
body.page-home .rooftop-double + .marquee-strip { margin-top: 0; border-top: 0; }

/* Suavização do contraste do nav scrolled */
body.page-home nav.scrolled {
  background: rgba(255,253,248,.94) !important;
  backdrop-filter: blur(18px) saturate(1.3);
  -webkit-backdrop-filter: blur(18px) saturate(1.3);
}

/* ════════════════════════════════════════════════════════════════
   REFINO PREMIUM · ROOFTOP SPLIT EDITORIAL · DOUBLE WINDOW PARALLAX
   Refatoração final: grid 2 colunas · frame 40% direita · scroll-driven
   Cores travadas: var(--bordo) · var(--bordo-prof) · var(--go) · var(--go-lt)
═══════════════════════════════════════════════════════════════════ */

/* Container externo: respira, sem caixa */
body.page-home .rooftop-double {
  background: var(--palha);
  position: relative;
  display: flex;
  flex-direction: column;
}

/* Neutraliza pseudo-elementos herdados do antigo .rt-win (linha bottom verde-dourada
   com box-shadow gold) que destoam do novo layout palha-claro */
body.page-home .rt-win.rt-split::after, body.page-home .rt-win.rt-split::before { display: none !important; }

/* Cada bloco rooftop = grid 2 colunas (texto · frame 40%) */
body.page-home .rt-win.rt-split {
  display: grid;
  grid-template-columns: 1fr minmax(360px, 40%);
  align-items: stretch;
  position: relative;
  height: auto;
  min-height: clamp(620px, 86vh, 880px);
  max-height: none;
  clip-path: inset(0);
  overflow: hidden;
  background: var(--palha);
  isolation: isolate;
}

/* Linha divisória sutil entre os dois blocos */
body.page-home .rooftop-double .rt-win.rt-split + .rt-win.rt-split {
  border-top: 1px solid rgba(90,15,26,.10);
}

/* Acento topo (linha gradiente) — preserva acento existente, apenas suaviza */
body.page-home .rt-win.rt-split .rt-win-accent-top {
  position: absolute; top: 0; left: 0; right: 0;
  height: 1px;
  z-index: 8;
  background: linear-gradient(to right,
    transparent 0%,
    rgba(90,15,26,.35) 22%,
    var(--go) 50%,
    rgba(90,15,26,.35) 78%,
    transparent 100%);
  opacity: .55;
  pointer-events: none;
}

/* ── COLUNA TEXTO ── */
body.page-home .rt-win.rt-split .rt-content {
  position: relative;
  z-index: 4;
  display: flex;
  align-items: center;
  padding: clamp(72px, 10vh, 132px) clamp(28px, 5vw, 80px) clamp(72px, 10vh, 132px) var(--safe);
  background: transparent;
}
body.page-home .rt-content-inner {
  width: 100%;
  max-width: 600px;
  margin-left: auto;
}

body.page-home .rt-eyebrow {
  font-family: 'DM Sans', sans-serif;
  font-size: clamp(11.5px, 1vw, 13px);
  letter-spacing: .34em;
  text-transform: uppercase;
  color: var(--bordo);
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 14px;
  margin-bottom: clamp(22px, 2.4vh, 30px);
}
body.page-home .rt-eyebrow::before {
  content: '';
  display: inline-block;
  width: 36px; height: 1px;
  background: linear-gradient(to right, var(--bordo), var(--go));
  flex-shrink: 0;
}

body.page-home .rt-h2 {
  font-family: 'Playfair Display', serif;
  font-size: clamp(34px, 4.6vw, 64px);
  font-weight: 400;
  line-height: 1.02;
  letter-spacing: -.022em;
  color: var(--bordo);
  margin: 0 0 clamp(22px, 2.6vh, 32px) 0;
}
body.page-home .rt-h2 em {
  font-style: italic;
  color: var(--bordo-prof, #4A0E0E);
  font-weight: 400;
}

body.page-home .rt-intro {
  font-family: 'DM Sans', sans-serif;
  font-size: clamp(17px, 1.4vw, 19.5px);
  font-weight: 300;
  line-height: 1.78;
  color: rgba(60,10,18,.78);
  margin: 0 0 clamp(34px, 4vh, 46px) 0;
  max-width: 540px;
}

/* Lista de pontos numerados — ritmo editorial, sem ícones */
body.page-home .rt-points {
  list-style: none;
  margin: 0 0 clamp(38px, 4.4vh, 50px) 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  border-top: 1px solid rgba(90,15,26,.12);
}
body.page-home .rt-point {
  display: grid;
  grid-template-columns: 56px 1fr;
  gap: 18px;
  align-items: baseline;
  padding: clamp(16px, 1.8vh, 22px) 0;
  border-bottom: 1px solid rgba(90,15,26,.12);
  transition: padding-left .55s var(--ease);
}
body.page-home .rt-point:hover { padding-left: 8px; }
body.page-home .rt-point-num {
  font-family: 'Playfair Display', serif;
  font-size: 13px;
  letter-spacing: .12em;
  color: var(--bordo);
  font-style: italic;
  font-weight: 500;
  padding-top: 1px;
}
body.page-home .rt-point-txt {
  font-family: 'Playfair Display', serif;
  font-size: clamp(17px, 1.5vw, 21px);
  font-weight: 400;
  line-height: 1.32;
  color: var(--bordo);
  letter-spacing: -.005em;
}

/* CTA — link com arrow */
body.page-home .rt-cta {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  font-family: 'DM Sans', sans-serif;
  font-size: clamp(12.5px, 1.1vw, 13.5px);
  letter-spacing: .28em;
  text-transform: uppercase;
  font-weight: 600;
  color: var(--bordo);
  text-decoration: none;
  padding: 14px 26px;
  border: 1px solid rgba(90,15,26,.32);
  background: transparent;
  transition: background .4s var(--ease), border-color .4s var(--ease), color .4s, padding .55s var(--ease);
}
body.page-home .rt-cta:hover {
  background: rgba(90,15,26,.05);
  border-color: var(--bordo);
  color: var(--bordo-prof, #4A0E0E);
  padding-right: 32px;
}
body.page-home .rt-cta-arrow {
  font-family: 'Playfair Display', serif;
  font-size: 16px;
  letter-spacing: 0;
  transition: transform .45s var(--ease);
  line-height: 1;
}
body.page-home .rt-cta:hover .rt-cta-arrow { transform: translateX(6px); }

/* ── FRAME (JANELA PARALLAX 40% à direita) ── */
body.page-home .vantagem-frame {
  position: relative;
  align-self: stretch;
  height: auto;
  min-height: clamp(420px, 60vh, 720px);
  margin: clamp(60px, 8vh, 100px) clamp(28px, 4vw, 64px) clamp(60px, 8vh, 100px) 0;
  clip-path: inset(0);
  overflow: hidden;
  isolation: isolate;
  z-index: 2;
  /* leve sombra arquitetônica · profundidade sem brilho */
  box-shadow:
    0 1px 0 rgba(90,15,26,.06),
    0 24px 60px -28px rgba(60,10,18,.18),
    0 8px 22px -14px rgba(60,10,18,.10);
}

/* Imagem dentro do frame · usa fixed para "double window parallax" */
body.page-home .vantagem-frame-img {
  position: absolute;
  inset: 0;
  background-image: url('../assets/images/rooftop2.jpg');
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center 40%;
  background-attachment: fixed;
  filter: contrast(1.04) saturate(1.06);
  z-index: 0;
  will-change: transform;
}

/* Overlay do frame · gradiente escuro lateral · sem clarear a imagem */
body.page-home .vantagem-frame .vantagem-foto-ov {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
    to left,
    rgba(8,14,8,.55) 0%,
    rgba(8,14,8,.18) 55%,
    transparent 100%
  );
  pointer-events: none;
}

/* Linha divisória vertical 1px · gradiente bordô → dourado · opacidade leve */
body.page-home .vantagem-frame-divisor {
  position: absolute;
  top: 12%;
  bottom: 12%;
  left: -1px;
  width: 1px;
  z-index: 3;
  background: linear-gradient(to bottom,
    transparent 0%,
    rgba(90,15,26,.55) 22%,
    var(--go) 52%,
    rgba(90,15,26,.55) 78%,
    transparent 100%);
  opacity: .55;
  pointer-events: none;
}

/* iOS / Safari mobile · neutraliza fixed (cria salto/jank) */
@supports (-webkit-touch-callout: none)  {
  body.page-home .vantagem-frame-img { background-attachment: scroll; }
}

/* ── SCROLL-DRIVEN · MICRO DESLOCAMENTO (2-4%) · janela viva ── */
@supports (animation-timeline: view())  {
  @media (min-width: 1024px) and (prefers-reduced-motion: no-preference)  {
    @keyframes rt-frame-breath__page-home {
      from { transform: translateY(2.4%) scale(.985); }
      to   { transform: translateY(-2.4%) scale(1.012); }
    }
    body.page-home .vantagem-frame {
      animation: rt-frame-breath__page-home linear both;
      animation-timeline: view();
      animation-range: entry 0% exit 100%;
    }
    @keyframes rt-img-drift__page-home {
      from { transform: scale(1.02); }
      to   { transform: scale(1.04); }
    }
    body.page-home .vantagem-frame-img {
      animation: rt-img-drift__page-home linear both;
      animation-timeline: view();
      animation-range: entry 0% exit 100%;
    }
  }
}

/* ── REVEAL · entrada suave (opacity + translateY) · sem bounce ── */
body.page-home .rt-reveal {
  opacity: 0;
  transform: translateY(20px);
  transition:
    opacity .9s cubic-bezier(0.16,1,0.3,1),
    transform .9s cubic-bezier(0.16,1,0.3,1);
  will-change: opacity, transform;
}
body.page-home .rt-win.in-view .rt-reveal { opacity: 1; transform: none; }
body.page-home .rt-win.in-view .rt-d1 { transition-delay: .08s; }
body.page-home .rt-win.in-view .rt-d2 { transition-delay: .18s; }
body.page-home .rt-win.in-view .rt-d3 { transition-delay: .28s; }
body.page-home .rt-win.in-view .rt-d4 { transition-delay: .36s; }
body.page-home .rt-win.in-view .rt-d5 { transition-delay: .44s; }
body.page-home .rt-win.in-view .rt-d6 { transition-delay: .56s; }

/* Pontos: linha dourada cresce na entrada */
body.page-home .rt-win.in-view .rt-points { animation: rt-line-grow__page-home 1.2s var(--ease) .2s both; }
@keyframes rt-line-grow__page-home {
  from { border-top-color: rgba(90,15,26,0); }
  to   { border-top-color: rgba(90,15,26,.12); }
}

/* ── RESPONSIVO ── */
/* Tablet: equilibra proporção · frame menor · respiro mantido */
@media (max-width: 1280px) and (min-width: 1024px)  {
  body.page-home .rt-win.rt-split { grid-template-columns: 1fr minmax(320px, 38%); }
  body.page-home .vantagem-frame { margin: clamp(48px, 6vh, 80px) clamp(20px, 3vw, 48px) clamp(48px, 6vh, 80px) 0; }
}

/* Mobile: remove frame parallax, coluna única, imagem como hero do bloco */
@media (max-width: 1023px)  {
  body.page-home .rt-win.rt-split {
    grid-template-columns: 1fr;
    min-height: 0;
    height: auto;
  }
  body.page-home .rt-win.rt-split .rt-content {
    padding: clamp(48px, 6vh, 72px) var(--safe) clamp(20px, 3vh, 32px);
    order: 2;
  }
  body.page-home .rt-content-inner { max-width: 100%; margin: 0; }

  body.page-home .vantagem-frame {
    order: 1;
    margin: 0;
    min-height: 0;
    aspect-ratio: 16 / 10;
    width: 100%;
    box-shadow: none;
    border-bottom: 1px solid rgba(90,15,26,.10);
  }
  body.page-home .vantagem-frame-img {
    background-attachment: scroll;
    background-position: center 35%;
    transform: none !important;
    animation: none !important;
  }
  body.page-home .vantagem-frame .vantagem-foto-ov {
    background: linear-gradient(
      180deg,
      transparent 0%,
      rgba(8,14,8,.10) 55%,
      rgba(8,14,8,.32) 100%
    );
  }
  body.page-home .vantagem-frame-divisor { display: none; }

  /* Tipografia mobile · respiro */
  body.page-home .rt-h2 { font-size: clamp(30px, 7.5vw, 42px); }
  body.page-home .rt-intro { font-size: 16.5px; max-width: 100%; }
  body.page-home .rt-point-txt { font-size: clamp(16px, 4.4vw, 19px); }

  /* Reveal sem deslocamento exagerado em mobile */
  body.page-home .rt-reveal { transform: translateY(14px); }
}

@media (max-width: 600px)  {
  body.page-home .vantagem-frame { aspect-ratio: 4 / 3; }
  body.page-home .rt-cta { width: 100%; justify-content: center; }
}

/* Reduced motion · respeitar acessibilidade */
@media (prefers-reduced-motion: reduce)  {
  body.page-home .vantagem-frame, body.page-home .vantagem-frame-img, body.page-home .rt-reveal, body.page-home .rt-cta, body.page-home .rt-point {
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
  body.page-home .rt-reveal { opacity: 1; }
}

/* ════════════════════════════════════════════════════════════════
   AJUSTE BLOCOS SEGUINTES · "Entrar agora" + "Escolha o caminho"
   Remove fundo verde · sombras · aparência de card
   Aplica fundo transparente sobre palha da seção
═══════════════════════════════════════════════════════════════════ */

/* Cards "Entrar agora é a oportunidade" · sem caixa, ritmo editorial */
body.page-home .sec-oportunidade .opo-card {
  background: transparent !important;
  border: none !important;
  border-top: 1px solid rgba(90,15,26,.14) !important;
  padding: clamp(30px, 4vh, 44px) 0 clamp(30px, 4vh, 44px) clamp(20px, 2.4vw, 32px) !important;
  box-shadow: none !important;
}
body.page-home .sec-oportunidade .opo-card::before {
  width: 1px !important;
  background: linear-gradient(to bottom,
    var(--bordo) 0%,
    var(--go) 55%,
    transparent 100%) !important;
  transform: scaleY(.4) !important;
  transform-origin: top !important;
  opacity: .55;
}
body.page-home .sec-oportunidade .opo-card:hover {
  transform: none !important;
  background: rgba(90,15,26,.025) !important;
  border-top-color: rgba(90,15,26,.28) !important;
  box-shadow: none !important;
}
body.page-home .sec-oportunidade .opo-card:hover::before {
  transform: scaleY(1) !important;
  opacity: 1;
}
body.page-home .sec-oportunidade .opo-grid {
  gap: 0 !important;
  border-bottom: 1px solid rgba(90,15,26,.14);
}
body.page-home .sec-oportunidade .opo-tag {
  background: transparent !important;
  border-color: rgba(90,15,26,.28) !important;
}

/* CTA "Escolha o caminho que faz sentido pra você" · sem fundo verde */
body.page-home .sec-oportunidade .opo-cta {
  background: transparent !important;
  border: none !important;
  border-top: 1px solid rgba(90,15,26,.16) !important;
  padding: clamp(46px, 6vh, 72px) 0 clamp(20px, 3vh, 32px) !important;
  box-shadow: none !important;
  color: var(--bordo) !important;
}
body.page-home .sec-oportunidade .opo-cta::before { display: none !important; }

body.page-home .sec-oportunidade .opo-cta-eyebrow {
  color: var(--bordo) !important;
}
body.page-home .sec-oportunidade .opo-cta-lead {
  color: var(--go) !important;
  font-style: italic;
}

body.page-home .sec-oportunidade .opo-cta-btn {
  background: transparent !important;
  border: 1px solid rgba(90,15,26,.28) !important;
  color: var(--bordo) !important;
}
body.page-home .sec-oportunidade .opo-cta-btn::before {
  background: linear-gradient(120deg,
    transparent 0%,
    rgba(90,15,26,.06) 50%,
    transparent 100%) !important;
}
body.page-home .sec-oportunidade .opo-cta-btn:hover {
  background: rgba(90,15,26,.04) !important;
  border-color: var(--bordo) !important;
}
body.page-home .sec-oportunidade .opo-cta-btn-eyebrow {
  color: var(--bordo) !important;
}
body.page-home .sec-oportunidade .opo-cta-btn-title {
  color: var(--bordo-prof, #4A0E0E) !important;
}
body.page-home .sec-oportunidade .opo-cta-btn-desc {
  color: rgba(60,10,18,.7) !important;
}
body.page-home .sec-oportunidade .opo-cta-btn-arrow {
  color: var(--bordo) !important;
}
body.page-home .sec-oportunidade .opo-cta-btn:hover .opo-cta-btn-arrow {
  color: var(--bordo-prof, #4A0E0E) !important;
}

/* Mobile · ajuste cards sem caixa */
@media (max-width: 600px)  {
  body.page-home .sec-oportunidade .opo-card {
    padding: 24px 0 24px 18px !important;
  }
}

/* ════════════════════════════════════════════════════════════════
   REFINO PROMPT 1 · DOUBLE WINDOW + TRANSIÇÕES + QUADRADO VERDE
   Bloco 1 (rooftop frames) · Bloco 3 (verde) · Bloco 4 (transição)
═══════════════════════════════════════════════════════════════════ */

/* ── BLOCO 1 · Hierarquia de camadas (garantia explícita) ── */
body.page-home .vantagem-foto { position: relative; }
body.page-home .vantagem-frame { position: relative; isolation: isolate; }
body.page-home .vantagem-frame-img { z-index: 0; }
body.page-home .vantagem-frame .vantagem-foto-ov { z-index: 1; }
body.page-home .vantagem-frame::before { z-index: 3; }
body.page-home .rt-win.rt-split .rt-content { z-index: 4; }

/* ── BLOCO 1 · Linha divisória do frame · gradiente bordô → dourado ── */
body.page-home .vantagem-frame::before {
  content: '';
  position: absolute;
  left: 0;
  top: 8%;
  bottom: 8%;
  width: 1px;
  z-index: 3;
  background: linear-gradient(
    to bottom,
    transparent,
    var(--bordo),
    var(--go),
    transparent
  );
  opacity: .6;
  pointer-events: none;
}

/* Divisor antigo neutralizado (substituído pelo ::before) */
body.page-home .vantagem-frame-divisor { display: none; }

/* ── BLOCO 1 · Movimento scroll-driven (Chromium 115+) ── */
@supports (animation-timeline: scroll())  {
  @media (min-width: 1024px) and (prefers-reduced-motion: no-preference)  {
    @keyframes rooftopParallax__page-home {
      from { transform: scale(1.04) translateY(0); }
      to   { transform: scale(1.04) translateY(-6%); }
    }
    body.page-home .vantagem-foto-bg {
      animation: rooftopParallax__page-home linear both;
      animation-timeline: scroll(root);
      animation-range: entry 0% exit 100%;
    }
  }
}

/* ── BLOCO 1 · Mobile · neutralizar parallax fixed (iOS/Safari/Android) ── */
@media (max-width: 960px)  {
  body.page-home .vantagem-foto-bg { background-attachment: scroll !important; }
  body.page-home .vantagem-frame::before { display: none; }
}

/* ── BLOCO 3 · Quadrado verde · sweep final · sem fundo, sem sombra ── */
body.page-home .sec-oportunidade .opo-cta, body.page-home .sec-oportunidade .opo-cta:hover, body.page-home .sec-oportunidade .opo-cta::after {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  border: none !important;
  border-top: 1px solid rgba(90,15,26,.16) !important;
}
body.page-home .sec-oportunidade .opo-cta::before {
  display: none !important;
  background: none !important;
}
body.page-home .sec-oportunidade .opo-cta-eyebrow { color: var(--bordo) !important; }
body.page-home .sec-oportunidade .opo-cta-lead { color: var(--go) !important; }

/* ── BLOCO 4 · Transição suave entre sec-institucional e sec-alambique ── */
body.page-home .sec-institucional {
  background: linear-gradient(180deg, #111e10 0%, #0e1a0d 55%, #101c0f 100%);
}
body.page-home .sec-alambique {
  background: linear-gradient(180deg, #101c0f 0%, #0e1a0d 35%, #111e10 100%);
}
body.page-home .sec-institucional + .sec-alambique {
  margin-top: -1px;
}



  /* ── Janela rooftop · padrão win-rooftop-lj ── */
  body.page-home .win-rooftop-lj {
    position: relative;
    height: auto;
    min-height: 100vh;
    clip-path: inset(0);
    overflow: hidden;
    background: #0a120a;
    isolation: isolate;
  }
  body.page-home .win-rooftop-lj .win-bg {
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    background-position: center 40% !important;
    background-size: cover !important;
    background-attachment: fixed !important;
    background-repeat: no-repeat !important;
  }

  /* Overlay GERAL · escuro à esquerda → leve no centro → suave à direita */
  body.page-home .win-rooftop-lj::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 2;
    background:
      linear-gradient(to right,
        rgba(8,14,8,.95) 0%,
        rgba(8,14,8,.88) 28%,
        rgba(8,14,8,.62) 50%,
        rgba(8,14,8,.32) 75%,
        rgba(8,14,8,.18) 100%),
      linear-gradient(to top,
        rgba(8,14,8,.55) 0%,
        rgba(8,14,8,.10) 50%,
        transparent 100%);
    pointer-events: none;
  }

  /* Filete dourado base */
  body.page-home .win-rooftop-lj::after {
    content: '';
    position: absolute;
    bottom: 0; left: 0; right: 0;
    height: 2px;
    z-index: 7;
    background: linear-gradient(to right,
      transparent 0%, var(--acento) 18%, var(--go) 50%, var(--acento) 82%, transparent 100%);
    opacity: .9;
    box-shadow: 0 0 12px rgba(182,141,64,.18);
    pointer-events: none;
  }
  /* Filete dourado topo */
  body.page-home .win-rooftop-lj .reveal-win-top-accent {
    position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important;
    height: 2px !important;
    z-index: 7 !important;
    background: linear-gradient(to right,
      transparent 0%, var(--acento) 20%, var(--go) 50%, var(--acento) 80%, transparent 100%);
    opacity: .8;
    pointer-events: none;
  }

  /* MÁSCARA LATERAL DIREITA · cria ilusão de janela dupla */
  body.page-home .win-rooftop-lj-frame {
    position: absolute;
    top: 0; right: 0; bottom: 0;
    width: 42%;
    z-index: 3;
    pointer-events: none;
    background: linear-gradient(to left,
      rgba(8,14,8,0) 0%,
      rgba(8,14,8,0) 55%,
      rgba(8,14,8,.55) 80%,
      rgba(8,14,8,.72) 100%);
  }
  /* Linha vertical dourada divisória sutil · borda esquerda do frame */
  body.page-home .win-rooftop-lj-frame::before {
    content: '';
    position: absolute;
    top: 8%; bottom: 8%;
    left: 0;
    width: 1px;
    background: linear-gradient(to bottom,
      transparent 0%,
      rgba(182,141,64,0) 8%,
      rgba(182,141,64,.55) 25%,
      rgba(182,141,64,.70) 50%,
      rgba(182,141,64,.55) 75%,
      rgba(182,141,64,0) 92%,
      transparent 100%);
  }
  /* Canto decorativo top-right */
  body.page-home .win-rooftop-lj-frame::after {
    content: '';
    position: absolute;
    top: clamp(28px,5vh,52px);
    right: clamp(28px,4vw,60px);
    width: 80px; height: 80px;
    border-top: 1px solid rgba(182,141,64,.45);
    border-right: 1px solid rgba(182,141,64,.45);
  }

  /* CORPO · conteúdo concentrado no lado esquerdo */
  body.page-home .win-rooftop-lj-body {
    position: relative;
    z-index: 5;
    max-width: 600px;
    padding:
      clamp(80px,10vh,120px)
      clamp(28px,3.6vw,56px)
      clamp(80px,10vh,120px)
      clamp(40px,6vw,90px);
    display: flex;
    flex-direction: column;
  }

  /* ── TIPOGRAFIA · clara e uniforme ── */
  body.page-home .win-rooftop-lj .rt-eyebrow {
    font-family: 'DM Sans', sans-serif;
    font-size: 11px;
    letter-spacing: .32em;
    text-transform: uppercase;
    color: var(--go-lt);
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: clamp(22px,2.8vh,32px);
  }
  body.page-home .win-rooftop-lj .rt-eyebrow::before {
    content: '';
    display: inline-block;
    width: 32px; height: 1px;
    background: linear-gradient(to right, var(--go), transparent);
    flex-shrink: 0;
  }

  /* TÍTULO · Playfair, grande, line-height 1.05, cor #F2EEE9 uniforme */
  body.page-home .win-rooftop-lj .rt-h2 {
    font-family: 'Playfair Display', serif !important;
    font-size: clamp(46px,6vw,86px) !important;
    font-weight: 400 !important;
    line-height: 1.05 !important;
    letter-spacing: -.025em !important;
    color: #F2EEE9 !important;
    text-shadow: 0 4px 32px rgba(0,0,0,.5);
    margin: 0 0 clamp(28px,3.4vh,38px) 0 !important;
  }

  /* TEXTOS · 18-20px, line-height 1.7, cor clara uniforme */
  body.page-home .win-rooftop-lj .rt-intro {
    font-family: 'DM Sans', sans-serif;
    font-size: clamp(18px,1.35vw,20px);
    font-weight: 300;
    line-height: 1.72;
    color: rgba(242,238,233,.88);
    margin: 0 0 clamp(38px,4.4vh,50px) 0;
  }

  /* Lista de pontos */
  body.page-home .win-rooftop-lj .rt-points {
    list-style: none;
    margin: 0 0 clamp(40px,5vh,56px) 0;
    padding: 0;
    border-top: 1px solid rgba(242,238,233,.18);
  }
  body.page-home .win-rooftop-lj .rt-point {
    display: grid;
    grid-template-columns: 56px 1fr;
    gap: 20px;
    align-items: baseline;
    padding: clamp(18px,2vh,22px) 0;
    border-bottom: 1px solid rgba(242,238,233,.18);
  }
  body.page-home .win-rooftop-lj .rt-point-num {
    font-family: 'Playfair Display', serif;
    font-size: 14px;
    letter-spacing: .12em;
    color: var(--go-lt);
    font-style: italic;
    font-weight: 500;
  }
  body.page-home .win-rooftop-lj .rt-point-txt {
    font-family: 'Playfair Display', serif;
    font-size: clamp(19px,1.5vw,21px);
    font-weight: 400;
    line-height: 1.5;
    color: #F2EEE9;
    letter-spacing: -.005em;
  }

  /* Categorias de formato (Corporativo · Social · Cultura & Shows) */
  body.page-home .win-rooftop-lj .rt-cat {
    border-top: 1px solid rgba(242,238,233,.18);
    padding: clamp(18px,2.2vh,24px) 0 clamp(16px,2vh,22px);
  }
  body.page-home .win-rooftop-lj .rt-cat:last-of-type {
    border-bottom: 1px solid rgba(242,238,233,.18);
    margin-bottom: clamp(34px,4vh,46px);
  }
  body.page-home .win-rooftop-lj .rt-cat-head {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 12px;
  }
  body.page-home .win-rooftop-lj .rt-cat-title {
    font-family: 'Playfair Display', serif;
    font-size: clamp(20px,1.7vw,24px);
    font-weight: 500;
    color: #F2EEE9;
    letter-spacing: -.005em;
    margin: 0;
    line-height: 1.2;
  }
  body.page-home .win-rooftop-lj .rt-cat-line {
    flex: 1;
    height: 1px;
    background: linear-gradient(to right, var(--go), transparent);
    opacity: .42;
  }
  body.page-home .win-rooftop-lj .rt-cat-link {
    font-family: 'DM Sans', sans-serif;
    font-size: 10.5px;
    letter-spacing: .28em;
    text-transform: uppercase;
    color: var(--go-lt);
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
    transition: color .3s;
  }
  body.page-home .win-rooftop-lj .rt-cat-link:hover { color: #F2EEE9; }
  body.page-home .win-rooftop-lj .rt-cat-desc {
    font-family: 'DM Sans', sans-serif;
    font-size: clamp(18px,1.3vw,20px);
    font-weight: 300;
    color: rgba(242,238,233,.78);
    line-height: 1.7;
    margin: 0;
  }

  /* CTA */
  body.page-home .win-rooftop-lj .rt-cta {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    font-family: 'DM Sans', sans-serif;
    font-size: 13.5px;
    letter-spacing: .28em;
    text-transform: uppercase;
    font-weight: 600;
    color: var(--go-lt);
    text-decoration: none;
    padding: 16px 30px;
    border: 1px solid rgba(207,163,85,.45);
    background: rgba(8,14,8,.3);
    transition: background .4s, border-color .4s, color .4s, padding .55s;
    align-self: flex-start;
  }
  body.page-home .win-rooftop-lj .rt-cta:hover {
    background: rgba(8,14,8,.6);
    border-color: var(--go-lt);
    color: #F2EEE9;
    padding-right: 38px;
  }
  body.page-home .win-rooftop-lj .rt-cta-arrow {
    font-family: 'Playfair Display', serif;
    font-size: 16px;
    transition: transform .45s;
  }
  body.page-home .win-rooftop-lj .rt-cta:hover .rt-cta-arrow { transform: translateX(6px); }

  /* ── Responsivo · sem parallax, sem frame, overlay vertical ── */
  @media (max-width: 960px)  {
    body.page-home .win-rooftop-lj { min-height: auto; }
    body.page-home .win-rooftop-lj .win-bg { background-attachment: scroll !important; }
    body.page-home .win-rooftop-lj-frame { display: none !important; }
    body.page-home .win-rooftop-lj::before {
      background: linear-gradient(to bottom,
        rgba(8,14,8,.92) 0%,
        rgba(8,14,8,.86) 50%,
        rgba(8,14,8,.92) 100%);
    }
    body.page-home .win-rooftop-lj-body {
      max-width: 100%;
      padding: clamp(80px,12vh,140px) 22px clamp(60px,8vh,80px);
    }
    body.page-home .win-rooftop-lj .rt-h2 {
      font-size: clamp(36px,8vw,56px) !important;
    }
  }



/* ═══════════════════════════════════════════════════════════════════
   1. ROOFTOP v2 · LAYOUT COMMERCIAL-EDITORIAL SPLIT
   ═══════════════════════════════════════════════════════════════════ */
body.page-home .rt2-section {
  --rt2-dark: #0d1610;
  --rt2-dark-2: #131e15;
  --rt2-dark-3: #182519;
  --rt2-line: rgba(207,163,85,.22);
  --rt2-line-strong: rgba(207,163,85,.42);
  --rt2-text: #F2EEE9;
  --rt2-text-soft: rgba(242,238,233,.74);
  --rt2-text-mute: rgba(242,238,233,.55);
  --rt2-gold: var(--go-lt, #cfa355);
  --rt2-gold-deep: var(--go, #B68D40);

  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
  background: var(--rt2-dark);
  isolation: isolate;
  overflow: hidden;
}

/* Filete dourado topo / base */
body.page-home .rt2-top-accent, body.page-home .rt2-bot-accent {
  position: absolute; left: 0; right: 0;
  height: 1px;
  background: linear-gradient(to right,
    transparent 0%,
    rgba(207,163,85,.0) 8%,
    var(--rt2-gold-deep) 28%,
    var(--rt2-gold) 50%,
    var(--rt2-gold-deep) 72%,
    rgba(207,163,85,.0) 92%,
    transparent 100%);
  z-index: 5;
  pointer-events: none;
  opacity: .85;
}
body.page-home .rt2-top-accent { top: 0; box-shadow: 0 1px 14px rgba(182,141,64,.18); }
body.page-home .rt2-bot-accent { bottom: 0; box-shadow: 0 -1px 14px rgba(182,141,64,.18); }

/* === LADO DA FOTO (direita) === */
body.page-home .rt2-photo {
  position: relative;
  grid-column: 2;
  grid-row: 1;
  align-self: stretch;
  overflow: hidden;
}
body.page-home .rt2-photo-bg {
  position: absolute;
  inset: 0;
  background-image: url('../assets/images/rooftop2.jpg');
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center 40%;
  background-attachment: fixed;
  filter: contrast(1.08) saturate(1.18) brightness(1.06);
  z-index: 0;
}
@media (max-width: 1023px) {
  body.page-home .rt2-photo-bg { background-attachment: scroll; }
}
/* Grain sutil + overlay editorial à esquerda da foto pra fundir com painel */
body.page-home .rt2-photo-grain {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(to right,
      var(--rt2-dark) 0%,
      rgba(13,22,16,.55) 8%,
      rgba(13,22,16,.0) 28%,
      rgba(13,22,16,.0) 60%,
      rgba(13,22,16,.18) 100%),
    radial-gradient(circle at 30% 35%, rgba(0,0,0,0) 0%, rgba(0,0,0,.35) 100%);
  pointer-events: none;
  z-index: 1;
}
/* Frame decorativo · cantos dourados (absolute, cobre toda a área da foto) */
body.page-home .rt2-photo-frame {
  position: absolute;
  top: clamp(28px, 4vh, 52px);
  bottom: clamp(28px, 4vh, 52px);
  left: clamp(24px, 3vw, 56px);
  right: clamp(24px, 3vw, 56px);
  z-index: 2;
  pointer-events: none;
}
body.page-home .rt2-photo-frame::before, body.page-home .rt2-photo-frame::after {
  content: '';
  position: absolute;
  width: clamp(48px, 6vw, 84px);
  height: clamp(48px, 6vw, 84px);
}
body.page-home .rt2-photo-frame::before {
  top: 0; right: 0;
  border-top: 1px solid var(--rt2-line-strong);
  border-right: 1px solid var(--rt2-line-strong);
}
body.page-home .rt2-photo-frame::after {
  bottom: 0; left: 0;
  border-bottom: 1px solid var(--rt2-line-strong);
  border-left: 1px solid var(--rt2-line-strong);
}
/* Selo "Mercado de Origem · BH" sobre a foto · absolute simples no canto */
body.page-home .rt2-photo-stamp {
  position: absolute;
  bottom: clamp(38px, 6vh, 64px);
  right: clamp(40px, 5vw, 76px);
  z-index: 4;
  font-family: 'DM Sans', sans-serif;
  font-size: 10.5px;
  letter-spacing: .34em;
  text-transform: uppercase;
  color: var(--rt2-gold);
  font-weight: 600;
  padding: 9px 16px;
  border: 1px solid var(--rt2-line-strong);
  background: rgba(13,22,16,.5);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

/* === PAINEL ESQUERDO · CONTEÚDO === */
body.page-home .rt2-panel {
  position: relative;
  grid-column: 1;
  background:
    linear-gradient(135deg,
      var(--rt2-dark-3) 0%,
      var(--rt2-dark-2) 45%,
      var(--rt2-dark) 100%);
  z-index: 2;
}
body.page-home .rt2-panel::before {
  content: '';
  position: absolute; inset: 0;
  background:
    radial-gradient(ellipse 80% 60% at 30% 20%, rgba(182,141,64,.08) 0%, transparent 60%),
    radial-gradient(ellipse 70% 70% at 80% 90%, rgba(90,15,26,.10) 0%, transparent 65%);
  pointer-events: none;
  z-index: 0;
}
/* Linha vertical de transição painel/foto · pincelada dourada */
body.page-home .rt2-panel::after {
  content: '';
  position: absolute;
  top: 12%; bottom: 12%;
  right: 0;
  width: 1px;
  background: linear-gradient(to bottom,
    transparent 0%,
    rgba(207,163,85,0) 8%,
    rgba(207,163,85,.55) 25%,
    rgba(207,163,85,.7) 50%,
    rgba(207,163,85,.55) 75%,
    rgba(207,163,85,0) 92%,
    transparent 100%);
  z-index: 3;
  pointer-events: none;
}
body.page-home .rt2-panel-inner {
  position: relative;
  z-index: 1;
  padding:
    clamp(80px, 10vh, 120px)
    clamp(36px, 4.2vw, 78px)
    clamp(80px, 10vh, 120px)
    clamp(40px, 6vw, 110px);
  max-width: 720px;
  display: flex;
  flex-direction: column;
  gap: clamp(40px, 5vh, 60px);
}

/* HEADER */
body.page-home .rt2-head { display: flex; flex-direction: column; gap: clamp(20px, 2.4vh, 28px); }
body.page-home .rt2-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  font-family: 'DM Sans', sans-serif;
  font-size: 11px;
  letter-spacing: .34em;
  text-transform: uppercase;
  color: var(--rt2-gold);
  font-weight: 600;
}
body.page-home .rt2-eyebrow-line {
  display: inline-block;
  width: 36px; height: 1px;
  background: linear-gradient(to right, var(--rt2-gold-deep), transparent);
  flex-shrink: 0;
}
body.page-home .rt2-title {
  font-family: 'Playfair Display', serif;
  font-size: clamp(44px, 5.4vw, 78px);
  font-weight: 400;
  line-height: 1.02;
  letter-spacing: -.025em;
  color: var(--rt2-text);
  margin: 0;
  text-shadow: 0 4px 32px rgba(0,0,0,.4);
}
body.page-home .rt2-title em {
  font-style: italic;
  color: var(--rt2-gold);
  font-weight: 400;
}
body.page-home .rt2-lead {
  font-family: 'DM Sans', sans-serif;
  font-size: clamp(16.5px, 1.25vw, 18.5px);
  font-weight: 300;
  line-height: 1.72;
  color: var(--rt2-text-soft);
  margin: 0;
  max-width: 560px;
}

/* Badges abertos / fechados */
body.page-home .rt2-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: clamp(8px, 1vh, 14px);
}
body.page-home .rt2-badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: 'DM Sans', sans-serif;
  font-size: 11.5px;
  letter-spacing: .26em;
  text-transform: uppercase;
  font-weight: 600;
  padding: 9px 18px 9px 14px;
  border: 1px solid var(--rt2-line-strong);
  background: rgba(13,22,16,.55);
  color: var(--rt2-text);
  position: relative;
  overflow: hidden;
}
body.page-home .rt2-badge::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(120deg, transparent 0%, rgba(207,163,85,.10) 50%, transparent 100%);
  transform: translateX(-110%);
  transition: transform .9s cubic-bezier(0.16,1,0.3,1);
}
body.page-home .rt2-badge:hover::before { transform: translateX(110%); }
body.page-home .rt2-badge-dot {
  width: 7px; height: 7px;
  border-radius: 50%;
  background: var(--rt2-gold);
  box-shadow: 0 0 0 3px rgba(207,163,85,.18);
  flex-shrink: 0;
}
body.page-home .rt2-badge--closed .rt2-badge-dot {
  background: transparent;
  border: 1.5px solid var(--rt2-gold);
  box-shadow: none;
}

/* PILARES horizontais */
body.page-home .rt2-pillars {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
  border-top: 1px solid rgba(242,238,233,.12);
  border-bottom: 1px solid rgba(242,238,233,.12);
}
body.page-home .rt2-pillar {
  position: relative;
  padding: clamp(18px, 2.4vh, 24px) clamp(14px, 1.4vw, 20px);
  display: flex;
  flex-direction: column;
  gap: 10px;
}
body.page-home .rt2-pillar + .rt2-pillar {
  border-left: 1px solid rgba(242,238,233,.10);
}
body.page-home .rt2-pillar-num {
  font-family: 'Playfair Display', serif;
  font-style: italic;
  font-size: 14px;
  letter-spacing: .12em;
  color: var(--rt2-gold);
  font-weight: 500;
}
body.page-home .rt2-pillar-label {
  font-family: 'Playfair Display', serif;
  font-size: clamp(15.5px, 1.2vw, 17.5px);
  font-weight: 500;
  line-height: 1.35;
  color: var(--rt2-text);
  letter-spacing: -.005em;
}

/* GRID DE FORMATOS */
body.page-home .rt2-formats {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  border-top: 1px solid rgba(242,238,233,.10);
}
body.page-home .rt2-formats-eyebrow {
  font-family: 'DM Sans', sans-serif;
  font-size: 10.5px;
  letter-spacing: .34em;
  text-transform: uppercase;
  color: var(--rt2-gold);
  font-weight: 600;
  padding: clamp(20px, 2.4vh, 26px) 0 clamp(16px, 2vh, 20px);
  margin: 0;
  border-bottom: 1px solid rgba(242,238,233,.10);
}
body.page-home .rt2-format {
  position: relative;
  padding: clamp(22px, 3vh, 30px) 0 clamp(20px, 2.6vh, 26px);
  border-bottom: 1px solid rgba(242,238,233,.10);
  display: grid;
  grid-template-columns: clamp(48px, 5vw, 64px) 1fr auto;
  grid-template-rows: auto auto;
  column-gap: clamp(14px, 1.6vw, 22px);
  row-gap: 6px;
  align-items: start;
  transition: background .55s cubic-bezier(0.16,1,0.3,1), padding-left .55s cubic-bezier(0.16,1,0.3,1);
}
body.page-home .rt2-format::before {
  content: '';
  position: absolute;
  left: -100%; top: 0; bottom: 0;
  width: 2px;
  background: linear-gradient(to bottom, var(--rt2-gold) 0%, var(--rt2-gold-deep) 100%);
  transition: left .55s cubic-bezier(0.16,1,0.3,1);
}
body.page-home .rt2-format:hover {
  background: linear-gradient(to right, rgba(182,141,64,.06) 0%, transparent 70%);
  padding-left: clamp(14px, 1.4vw, 20px);
}
body.page-home .rt2-format:hover::before { left: 0; }
/* Coluna 1 · numeral romano grande, alinhado ao topo */
body.page-home .rt2-format-head {
  grid-column: 1;
  grid-row: 1 / span 2;
  display: flex;
  align-items: flex-start;
  padding-top: 4px;
}
body.page-home .rt2-format-idx {
  font-family: 'Playfair Display', serif;
  font-style: italic;
  font-size: clamp(28px, 3vw, 38px);
  font-weight: 400;
  color: var(--rt2-gold);
  line-height: 1;
  letter-spacing: -.01em;
}
/* Coluna 2 · título e descrição */
body.page-home .rt2-format-title {
  grid-column: 2;
  grid-row: 1;
  font-family: 'Playfair Display', serif;
  font-size: clamp(20px, 1.8vw, 24px);
  font-weight: 500;
  color: var(--rt2-text);
  margin: 0;
  line-height: 1.2;
  letter-spacing: -.005em;
}
body.page-home .rt2-format-desc {
  grid-column: 2;
  grid-row: 2;
  font-family: 'DM Sans', sans-serif;
  font-size: clamp(14.5px, 1.05vw, 16px);
  font-weight: 300;
  line-height: 1.7;
  color: var(--rt2-text-soft);
  margin: 0;
}
/* Coluna 3 · link "Saber mais" centralizado verticalmente */
body.page-home .rt2-format-link {
  grid-column: 3;
  grid-row: 1 / span 2;
  align-self: center;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: 'DM Sans', sans-serif;
  font-size: 10.5px;
  letter-spacing: .3em;
  text-transform: uppercase;
  font-weight: 600;
  color: var(--rt2-gold);
  text-decoration: none;
  white-space: nowrap;
  transition: color .35s, gap .45s cubic-bezier(0.16,1,0.3,1);
}
body.page-home .rt2-format-link:hover { color: var(--rt2-text); gap: 14px; }
body.page-home .rt2-format-arrow {
  font-family: 'Playfair Display', serif;
  font-size: 14px;
  transition: transform .45s cubic-bezier(0.16,1,0.3,1);
}
body.page-home .rt2-format-link:hover .rt2-format-arrow { transform: translateX(4px); }

/* CTA principal */
body.page-home .rt2-foot {
  display: flex;
  align-items: center;
  gap: clamp(20px, 3vw, 36px);
  flex-wrap: wrap;
  margin-top: clamp(8px, 1vh, 16px);
}
body.page-home .rt2-cta {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: clamp(14px, 1.6vw, 22px);
  padding: clamp(18px, 2.2vh, 22px) clamp(28px, 3vw, 38px);
  font-family: 'DM Sans', sans-serif;
  text-decoration: none;
  background: linear-gradient(135deg, rgba(207,163,85,.14) 0%, rgba(182,141,64,.06) 100%);
  border: 1px solid var(--rt2-gold);
  color: var(--rt2-text);
  overflow: hidden;
  transition: background .45s, box-shadow .55s, gap .55s cubic-bezier(0.16,1,0.3,1);
}
body.page-home .rt2-cta::before {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(120deg, transparent 0%, rgba(207,163,85,.22) 50%, transparent 100%);
  transform: translateX(-110%);
  transition: transform .9s cubic-bezier(0.16,1,0.3,1);
}
body.page-home .rt2-cta:hover {
  background: linear-gradient(135deg, rgba(207,163,85,.22) 0%, rgba(182,141,64,.12) 100%);
  box-shadow: 0 12px 40px rgba(182,141,64,.18);
  gap: clamp(18px, 2vw, 28px);
}
body.page-home .rt2-cta:hover::before { transform: translateX(110%); }
body.page-home .rt2-cta-eyebrow {
  font-size: 9.5px;
  letter-spacing: .34em;
  text-transform: uppercase;
  color: var(--rt2-gold);
  font-weight: 600;
  position: relative;
  z-index: 1;
}
body.page-home .rt2-cta-label {
  font-family: 'Playfair Display', serif;
  font-size: clamp(17px, 1.4vw, 20px);
  font-weight: 500;
  letter-spacing: -.005em;
  position: relative;
  z-index: 1;
}
body.page-home .rt2-cta-arrow {
  font-family: 'Playfair Display', serif;
  font-size: 18px;
  color: var(--rt2-gold);
  transition: transform .55s cubic-bezier(0.16,1,0.3,1);
  position: relative;
  z-index: 1;
}
body.page-home .rt2-cta:hover .rt2-cta-arrow { transform: translateX(8px); }

body.page-home .rt2-foot-note {
  font-family: 'DM Sans', sans-serif;
  font-size: 12.5px;
  letter-spacing: .12em;
  color: var(--rt2-text-mute);
  font-weight: 400;
  text-transform: none;
}

/* Responsivo · empilha */
@media (max-width: 1023px) {
  body.page-home .rt2-section {
    grid-template-columns: 1fr;
  }
  body.page-home .rt2-photo {
    grid-column: 1;
    min-height: 56vh;
    height: 56vh;
    order: 0;
  }
  body.page-home .rt2-panel {
    grid-column: 1;
    order: 1;
  }
  body.page-home .rt2-panel::after {
    top: 0; bottom: auto;
    left: 12%; right: 12%;
    width: auto; height: 1px;
    background: linear-gradient(to right,
      transparent 0%,
      rgba(207,163,85,.55) 30%,
      rgba(207,163,85,.7) 50%,
      rgba(207,163,85,.55) 70%,
      transparent 100%);
  }
  body.page-home .rt2-photo-frame {
    top: clamp(20px, 3vh, 32px);
    bottom: clamp(20px, 3vh, 32px);
    left: clamp(18px, 4vw, 28px);
    right: clamp(18px, 4vw, 28px);
  }
  body.page-home .rt2-photo-stamp {
    bottom: clamp(20px, 3vh, 30px);
    right: clamp(20px, 4vw, 30px);
    font-size: 9.5px;
  }
  body.page-home .rt2-panel-inner {
    padding: clamp(56px, 8vh, 88px) clamp(22px, 5vw, 40px);
    max-width: 100%;
    gap: clamp(34px, 4.5vh, 50px);
  }
  body.page-home .rt2-pillars { grid-template-columns: 1fr; }
  body.page-home .rt2-pillar + .rt2-pillar {
    border-left: 0;
    border-top: 1px solid rgba(242,238,233,.10);
  }
  body.page-home .rt2-format {
    grid-template-columns: clamp(40px, 8vw, 50px) 1fr;
    grid-template-rows: auto auto auto;
  }
  body.page-home .rt2-format-head { grid-row: 1; }
  body.page-home .rt2-format-title { grid-row: 1; }
  body.page-home .rt2-format-desc { grid-row: 2; }
  body.page-home .rt2-format-link { grid-column: 2; grid-row: 3; align-self: start; padding-top: 12px; }
}
@media (max-width: 600px) {
  body.page-home .rt2-title { font-size: clamp(34px, 9vw, 48px); }
  body.page-home .rt2-foot { flex-direction: column; align-items: stretch; gap: 14px; }
  body.page-home .rt2-cta { justify-content: space-between; }
  body.page-home .rt2-foot-note { text-align: center; font-size: 11.5px; }
}

/* ═══════════════════════════════════════════════════════════════════
   2. OPORTUNIDADE v2 · TIMELINE EDITORIAL + PATHS
   ═══════════════════════════════════════════════════════════════════ */
body.page-home .opo2-section {
  --opo2-bg: #F2EFE9;
  --opo2-bg-2: #FBF8F2;
  --opo2-bordo: var(--bordo, #5A0F1A);
  --opo2-bordo-soft: rgba(90,15,26,.78);
  --opo2-bordo-mute: rgba(90,15,26,.62);
  --opo2-bordo-faint: rgba(90,15,26,.16);
  --opo2-go: var(--go, #B68D40);
  --opo2-go-lt: var(--go-lt, #cfa355);
  --opo2-verde: var(--verde-deep, #111e10);

  position: relative;
  background: linear-gradient(180deg, #F2EFE9 0%, #ede8df 55%, #e8e2d8 100%);
  color: var(--opo2-bordo);
  padding: clamp(80px, 12vh, 140px) 0 clamp(80px, 12vh, 140px);
  overflow: hidden;
  z-index: 10;
}
body.page-home .opo2-section::before {
  content: '';
  position: absolute;
  top: 0; left: 50%;
  transform: translateX(-50%);
  width: clamp(280px, 40%, 520px);
  height: 1px;
  background: linear-gradient(to right, transparent, var(--opo2-bordo) 30%, var(--opo2-bordo) 70%, transparent);
  opacity: .55;
}
/* Pincelada decorativa de fundo · sutil */
body.page-home .opo2-section::after {
  content: '';
  position: absolute;
  top: 18%; right: -8%;
  width: 38vw; height: 38vw;
  max-width: 520px; max-height: 520px;
  background: radial-gradient(circle at center,
    rgba(90,15,26,.05) 0%,
    rgba(90,15,26,.02) 40%,
    transparent 70%);
  pointer-events: none;
  z-index: 0;
}
body.page-home .opo2-inner {
  position: relative;
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 var(--safe);
  z-index: 1;
}

/* HEADER editorial · split largo */
body.page-home .opo2-head {
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: clamp(36px, 5vw, 80px);
  align-items: end;
  margin-bottom: clamp(60px, 8vh, 96px);
  padding-bottom: clamp(40px, 5vh, 56px);
  border-bottom: 1px solid var(--opo2-bordo-faint);
}
body.page-home .opo2-head-l { display: flex; flex-direction: column; gap: 22px; }
body.page-home .opo2-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}
body.page-home .opo2-eyebrow-line {
  display: inline-block;
  width: 48px; height: 1px;
  background: var(--opo2-bordo);
}
body.page-home .opo2-eyebrow-txt {
  font-family: 'DM Sans', sans-serif;
  font-size: clamp(11.5px, 1vw, 13px);
  letter-spacing: .34em;
  text-transform: uppercase;
  color: var(--opo2-bordo);
  font-weight: 600;
}
body.page-home .opo2-eyebrow-mark {
  color: var(--opo2-go);
  font-weight: 700;
  font-size: 14px;
  line-height: 1;
}
body.page-home .opo2-eyebrow-stamp {
  font-family: 'DM Sans', sans-serif;
  font-size: 10.5px;
  letter-spacing: .28em;
  text-transform: uppercase;
  color: var(--opo2-go);
  font-weight: 600;
  padding: 4px 10px;
  border: 1px solid rgba(182,141,64,.4);
  background: rgba(182,141,64,.05);
}
body.page-home .opo2-title {
  font-family: 'Playfair Display', serif;
  font-size: clamp(38px, 5.2vw, 76px);
  font-weight: 400;
  line-height: .98;
  letter-spacing: -.025em;
  color: var(--opo2-bordo);
  margin: 0;
}
body.page-home .opo2-title-em {
  display: block;
  font-style: italic;
  color: var(--opo2-bordo);
  margin-top: .12em;
}
body.page-home .opo2-head-r {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding-bottom: 6px;
  position: relative;
}
body.page-home .opo2-head-r::before {
  content: '';
  position: absolute;
  top: 4px; left: -28px;
  width: 2px; height: 60%;
  background: linear-gradient(to bottom, var(--opo2-go) 0%, transparent 100%);
  opacity: .55;
}
body.page-home .opo2-lead {
  font-family: 'DM Sans', sans-serif;
  font-size: clamp(17px, 1.4vw, 20px);
  font-weight: 300;
  line-height: 1.72;
  color: var(--opo2-bordo-soft);
  margin: 0;
}
body.page-home .opo2-lead-soft {
  font-weight: 300;
  color: var(--opo2-bordo-soft);
  font-style: italic;
}

/* TIMELINE editorial */
body.page-home .opo2-timeline {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(8px, 1vh, 14px);
  padding: clamp(20px, 3vh, 32px) 0 clamp(40px, 5vh, 56px);
  margin-bottom: clamp(60px, 8vh, 96px);
}
body.page-home .opo2-timeline-rail {
  position: absolute;
  top: 0; bottom: 0;
  left: clamp(28px, 4vw, 48px);
  width: 1px;
  background: linear-gradient(to bottom,
    transparent 0%,
    var(--opo2-bordo) 8%,
    var(--opo2-bordo) 92%,
    transparent 100%);
  opacity: .35;
}
body.page-home .opo2-step {
  position: relative;
  display: grid;
  grid-template-columns: clamp(56px, 8vw, 96px) 1fr;
  gap: clamp(20px, 3vw, 36px);
  align-items: start;
  padding: clamp(24px, 3.4vh, 40px) clamp(24px, 3vw, 38px) clamp(24px, 3.4vh, 40px) 0;
  border-bottom: 1px solid var(--opo2-bordo-faint);
  transition: background .55s cubic-bezier(0.16,1,0.3,1);
}
body.page-home .opo2-step:last-child { border-bottom: 0; }
body.page-home .opo2-step:hover {
  background: linear-gradient(to right, rgba(90,15,26,.025) 0%, transparent 80%);
}
body.page-home .opo2-step-marker {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding-top: clamp(10px, 1.4vh, 16px);
  z-index: 2;
}
body.page-home .opo2-step-marker::before {
  content: '';
  position: absolute;
  top: clamp(14px, 2vh, 22px);
  left: 50%;
  transform: translateX(-50%);
  width: 18px; height: 18px;
  border-radius: 50%;
  background: var(--opo2-bg);
  border: 1px solid var(--opo2-bordo);
  z-index: 1;
}
body.page-home .opo2-step-marker-dot {
  position: absolute;
  top: clamp(14px, 2vh, 22px);
  left: 50%;
  transform: translateX(-50%);
  width: 8px; height: 8px;
  border-radius: 50%;
  background: var(--opo2-bordo);
  margin: 5px;
  z-index: 2;
  transition: background .35s, transform .55s cubic-bezier(0.16,1,0.3,1);
}
body.page-home .opo2-step:hover .opo2-step-marker-dot {
  background: var(--opo2-go);
  transform: translateX(-50%) scale(1.25);
}
body.page-home .opo2-step-body { display: flex; flex-direction: column; gap: 14px; }
body.page-home .opo2-step-meta {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}
body.page-home .opo2-step-num {
  font-family: 'Playfair Display', serif;
  font-style: italic;
  font-size: clamp(34px, 3.6vw, 48px);
  font-weight: 400;
  color: var(--opo2-bordo);
  line-height: 1;
  letter-spacing: -.01em;
}
body.page-home .opo2-step-tag {
  font-family: 'DM Sans', sans-serif;
  font-size: 10.5px;
  letter-spacing: .3em;
  text-transform: uppercase;
  color: var(--opo2-bordo);
  font-weight: 600;
  padding: 6px 12px;
  border: 0.5px solid rgba(90,15,26,.32);
  background: rgba(90,15,26,.04);
}
body.page-home .opo2-step-title {
  font-family: 'Playfair Display', serif;
  font-size: clamp(20px, 1.8vw, 26px);
  font-weight: 500;
  line-height: 1.25;
  color: var(--opo2-bordo);
  margin: 0;
  letter-spacing: -.005em;
  max-width: 720px;
}
body.page-home .opo2-step-desc {
  font-family: 'DM Sans', sans-serif;
  font-size: clamp(16px, 1.3vw, 18px);
  font-weight: 300;
  line-height: 1.72;
  color: var(--opo2-bordo-mute);
  margin: 0;
  max-width: 760px;
}

/* CTA · 3 frentes redesenhadas */
body.page-home .opo2-cta {
  position: relative;
  background: var(--opo2-verde);
  color: var(--go-pa, #d4b87a);
  padding: clamp(48px, 6vh, 72px) clamp(36px, 4vw, 64px);
  overflow: hidden;
  border: 0.5px solid rgba(207,163,85,.22);
}
body.page-home .opo2-cta::before {
  content: '';
  position: absolute; inset: 0;
  background:
    radial-gradient(ellipse at 18% 30%, rgba(207,163,85,.12) 0%, transparent 55%),
    radial-gradient(ellipse at 82% 70%, rgba(207,163,85,.07) 0%, transparent 50%);
  pointer-events: none;
}
body.page-home .opo2-cta::after {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 1px;
  background: linear-gradient(to right,
    transparent 0%,
    var(--opo2-go) 25%,
    var(--opo2-go-lt) 50%,
    var(--opo2-go) 75%,
    transparent 100%);
  opacity: .6;
}
body.page-home .opo2-cta-head {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-bottom: clamp(32px, 4vh, 44px);
  position: relative;
  z-index: 2;
}
body.page-home .opo2-cta-eyebrow {
  font-family: 'DM Sans', sans-serif;
  font-size: 11.5px;
  letter-spacing: .34em;
  text-transform: uppercase;
  color: var(--opo2-go-lt);
  font-weight: 600;
}
body.page-home .opo2-cta-lead {
  font-family: 'Playfair Display', serif;
  font-size: clamp(24px, 2.6vw, 34px);
  font-weight: 400;
  font-style: italic;
  color: var(--go-pa, #d4b87a);
  line-height: 1.22;
  margin: 0;
  letter-spacing: -.01em;
  max-width: 760px;
}
body.page-home .opo2-cta-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(14px, 1.6vw, 22px);
  position: relative;
  z-index: 2;
}
body.page-home .opo2-path {
  position: relative;
  display: grid;
  grid-template-columns: clamp(40px, 4vw, 56px) 1fr clamp(20px, 2vw, 28px);
  gap: clamp(16px, 1.8vw, 24px);
  align-items: center;
  padding: clamp(24px, 3vh, 32px) clamp(22px, 2.6vw, 30px);
  background: rgba(255,255,255,.025);
  border: 0.5px solid rgba(207,163,85,.32);
  text-decoration: none;
  color: var(--go-pa, #d4b87a);
  overflow: hidden;
  transition: transform .5s cubic-bezier(0.16,1,0.3,1),
              background .35s,
              border-color .35s;
}
body.page-home .opo2-path::before {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(120deg, transparent 0%, rgba(207,163,85,.10) 50%, transparent 100%);
  transform: translateX(-110%);
  transition: transform .9s cubic-bezier(0.16,1,0.3,1);
}
body.page-home .opo2-path::after {
  content: '';
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 2px;
  background: linear-gradient(to bottom, var(--opo2-go-lt) 0%, var(--opo2-go) 100%);
  transform: scaleY(0);
  transform-origin: top;
  transition: transform .55s cubic-bezier(0.16,1,0.3,1);
}
body.page-home .opo2-path:hover {
  transform: translateY(-3px);
  background: rgba(255,255,255,.05);
  border-color: rgba(207,163,85,.6);
}
body.page-home .opo2-path:hover::before { transform: translateX(110%); }
body.page-home .opo2-path:hover::after { transform: scaleY(1); }

body.page-home .opo2-path-num {
  font-family: 'Playfair Display', serif;
  font-style: italic;
  font-size: clamp(34px, 3.4vw, 44px);
  font-weight: 400;
  color: var(--opo2-go-lt);
  line-height: 1;
  letter-spacing: -.01em;
  position: relative;
  z-index: 1;
}
body.page-home .opo2-path-body {
  display: flex;
  flex-direction: column;
  gap: 4px;
  position: relative;
  z-index: 1;
}
body.page-home .opo2-path-eyebrow {
  font-family: 'DM Sans', sans-serif;
  font-size: 10.5px;
  letter-spacing: .32em;
  text-transform: uppercase;
  color: var(--opo2-go-lt);
  font-weight: 600;
}
body.page-home .opo2-path-title {
  font-family: 'Playfair Display', serif;
  font-size: clamp(18px, 1.6vw, 22px);
  font-weight: 500;
  color: #F2EEE9;
  letter-spacing: -.005em;
  line-height: 1.2;
  margin-top: 2px;
}
body.page-home .opo2-path-desc {
  font-family: 'DM Sans', sans-serif;
  font-size: 12.5px;
  color: rgba(207,163,85,.72);
  font-weight: 300;
  line-height: 1.4;
  margin-top: 4px;
}
body.page-home .opo2-path-arrow {
  font-family: 'Playfair Display', serif;
  font-size: 22px;
  color: var(--opo2-go-lt);
  transition: transform .5s cubic-bezier(0.16,1,0.3,1), color .35s;
  line-height: 1;
  position: relative;
  z-index: 1;
  align-self: center;
}
body.page-home .opo2-path:hover .opo2-path-arrow {
  transform: translateX(8px);
  color: #F2EEE9;
}

/* Reveal scoped: opo2 */
body.page-home .opo2-section .opo2-head, body.page-home .opo2-section .opo2-step, body.page-home .opo2-section .opo2-cta {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity .95s cubic-bezier(0.16,1,0.3,1),
              transform .95s cubic-bezier(0.16,1,0.3,1);
  will-change: opacity, transform;
}
body.page-home .opo2-section .opo2-head.opo2-in, body.page-home .opo2-section .opo2-step.opo2-in, body.page-home .opo2-section .opo2-cta.opo2-in {
  opacity: 1;
  transform: none;
}
body.page-home .opo2-section .opo2-step:nth-child(2) { transition-delay: .08s; }
body.page-home .opo2-section .opo2-step:nth-child(3) { transition-delay: .16s; }
body.page-home .opo2-section .opo2-step:nth-child(4) { transition-delay: .24s; }
body.page-home .opo2-section .opo2-step:nth-child(5) { transition-delay: .32s; }

body.page-home .opo2-cta .opo2-path {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity .85s cubic-bezier(0.16,1,0.3,1),
              transform .85s cubic-bezier(0.16,1,0.3,1),
              background .35s, border-color .35s;
}
body.page-home .opo2-cta.opo2-in .opo2-path:nth-child(1) { opacity: 1; transform: none; transition-delay: .25s; }
body.page-home .opo2-cta.opo2-in .opo2-path:nth-child(2) { opacity: 1; transform: none; transition-delay: .4s; }
body.page-home .opo2-cta.opo2-in .opo2-path:nth-child(3) { opacity: 1; transform: none; transition-delay: .55s; }
body.page-home .opo2-cta.opo2-in .opo2-path:hover { transform: translateY(-3px) !important; }

/* Reveal scoped: rt2 */
body.page-home .rt2-section .rt2-head, body.page-home .rt2-section .rt2-pillars, body.page-home .rt2-section .rt2-formats, body.page-home .rt2-section .rt2-foot {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 1.05s cubic-bezier(0.16,1,0.3,1),
              transform 1.05s cubic-bezier(0.16,1,0.3,1);
  will-change: opacity, transform;
}
body.page-home .rt2-section.rt2-in .rt2-head { opacity: 1; transform: none; }
body.page-home .rt2-section.rt2-in .rt2-pillars { opacity: 1; transform: none; transition-delay: .15s; }
body.page-home .rt2-section.rt2-in .rt2-formats { opacity: 1; transform: none; transition-delay: .3s; }
body.page-home .rt2-section.rt2-in .rt2-foot { opacity: 1; transform: none; transition-delay: .45s; }
body.page-home .rt2-section .rt2-photo-bg {
  opacity: 0;
  transform: scale(1.06);
  transition: opacity 1.6s ease-out, transform 2.4s cubic-bezier(0.16,1,0.3,1);
}
body.page-home .rt2-section.rt2-in .rt2-photo-bg {
  opacity: 1;
  transform: scale(1.02);
}

/* Responsivo opo2 */
@media (max-width: 1023px) {
  body.page-home .opo2-head { grid-template-columns: 1fr; gap: 28px; align-items: start; }
  body.page-home .opo2-head-r::before { display: none; }
  body.page-home .opo2-cta-row { grid-template-columns: 1fr; gap: 12px; }
  body.page-home .opo2-step {
    grid-template-columns: clamp(48px, 12vw, 72px) 1fr;
    padding-right: 0;
  }
  body.page-home .opo2-timeline-rail {
    left: clamp(24px, 6vw, 36px);
  }
}
@media (max-width: 600px) {
  body.page-home .opo2-title { font-size: clamp(32px, 9vw, 46px); }
  body.page-home .opo2-step-num { font-size: 30px; }
  body.page-home .opo2-step-meta { gap: 12px; }
  body.page-home .opo2-cta { padding: 32px 22px; }
  body.page-home .opo2-cta-lead { font-size: clamp(20px, 6vw, 26px); }
  body.page-home .opo2-path {
    grid-template-columns: clamp(34px, 10vw, 46px) 1fr clamp(18px, 4vw, 24px);
    gap: 14px;
    padding: 22px 20px;
  }
  body.page-home .opo2-path-num { font-size: 28px; }
}



/* ============================================================
   PAGINA: eventos.html  (scope: body.page-eventos)
   ============================================================ */


/* ── Reset global de links ── */
body.page-eventos a { color: inherit; text-decoration: none; }
body.page-eventos a:hover, body.page-eventos a:visited, body.page-eventos a:active { color: inherit; text-decoration: none; }

/* ═══════════════════════════════════════════════════════════════════════════
   EVENTOS, MERCADO DE ORIGEM, VERSÃO PREMIUM MASTER ULTRA
   Fusão: eventos_A (estrutura) + eventos (gems) + index_11 (sistema)
   Paleta: Verde Deep #111e10 / Ouro #B68D40 / Palha #F2EFE9 / Bordô #4A0E0E
   Tipografia: Playfair Display + DM Sans
═══════════════════════════════════════════════════════════════════════════ */
body.page-eventos {
  --verde:       #1A2819;
  --verde-vivo:  #3A4D39;
  --verde-card:  #1e2e1d;
  --verde-deep:  #111e10;
  --palha:       #F2EFE9;
  --palha-dark:  #e6e1d8;
  --palha-mid:   #ede8df;
  --ow:          #F2EEE9;
  --go:          #B68D40;
  --go-lt:       #cfa355;
  --go-pa:       #d4b87a;
  --go-bd:       rgba(182,141,64,.22);
  --go-bd-dk:    rgba(182,141,64,.38);
  --bordo:       #5A0F1A;
  --bordo2:      #7a1520;
  --bordo-lt:    #9e1d2a;
  --bordo-bd:    rgba(90,15,26,.35);
  --palha-f:     #F5EBDD;
  --acento:      #2C4A2B;
  --mu:          #7a8a79;
  --mu-dk:       #5a6a59;
  --bordo-prof:  #4A0E0E;
  --ease:        cubic-bezier(0.16,1,0.3,1);
  --safe: clamp(20px,6vw,80px);
}

/* ── Reset ── */
html, body.page-eventos { overflow-x:hidden; max-width:100%; }
body.page-eventos *, body.page-eventos *::before, body.page-eventos *::after { box-sizing:border-box; margin:0; padding:0; hyphens:none; -webkit-hyphens:none; }
html { scroll-behavior:smooth; font-size:16px; }
body.page-eventos {
  background:var(--verde-deep);
  color:var(--ow);
  font-family:'DM Sans',sans-serif;
  font-weight:300;
  /* cursor:none removido — agora via @media (pointer:fine) */
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  line-height:1.6;
  letter-spacing:.015em;
}
body.page-eventos img { display:block; object-fit:cover; max-width:100%; }
body.page-eventos h1 em, body.page-eventos h2 em, body.page-eventos h3 em, body.page-eventos p em { font-style:italic; color:inherit; }

/* ── Grain Overlay ── */
body.page-eventos .grain {
  position:fixed; inset:0; pointer-events:none; z-index:1000; opacity:.018;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.88' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size:200px; mix-blend-mode:normal;
}

/* ── Cursor ── */
body.page-eventos .cursor {
  position:fixed; left:0; top:0; width:8px; height:8px; border-radius:50%;
  background:var(--go); pointer-events:none; z-index:9999;
  transform:translate(-50%,-50%); will-change:transform;
  box-shadow:0 0 20px rgba(182,141,64,.4);
  transition:transform .15s var(--ease);
}
body.page-eventos .cursor-ring {
  position:fixed; left:0; top:0; width:38px; height:38px; border-radius:50%;
  border:1px solid rgba(182,141,64,.5); pointer-events:none; z-index:9998;
  transform:translate(-50%,-50%); will-change:transform;
  transition:width .07s linear, height .07s linear, border-color .07s linear;
}

/* ── Container ── */
body.page-eventos .inner {
  max-width:1440px;
  margin-left:auto; margin-right:auto;
  padding-left:var(--safe); padding-right:var(--safe);
  width:100%;
}

/* ── Eyebrow ── */
body.page-eventos .eyebrow { display:flex; align-items:center; gap:14px; margin-bottom:24px; }
body.page-eventos .eyebrow-line { width:48px; height:1px; background:var(--go); flex-shrink:0; }
body.page-eventos .eyebrow span { font-size:clamp(13px,1.3vw,15px); letter-spacing:.32em; text-transform:uppercase; color:var(--go); font-weight:600; }
body.page-eventos .ey-bordo .eyebrow-line { background:var(--bordo-prof); }
body.page-eventos .ey-bordo span { color:var(--bordo-prof); }

/* ── Animações ── */
body.page-eventos .reveal { opacity:0; transform:translateY(32px); transition:opacity 1.1s var(--ease),transform 1.1s var(--ease); will-change:opacity,transform; }
body.page-eventos .reveal.visible { opacity:1; transform:none; }
body.page-eventos .reveal-left { opacity:0; transform:translateX(-40px); filter:blur(4px); transition:opacity 1s var(--ease),transform 1s var(--ease),filter .9s var(--ease); }
body.page-eventos .reveal-left.visible { opacity:1; transform:none; filter:blur(0); }
body.page-eventos .reveal-right { opacity:0; transform:translateX(40px); filter:blur(4px); transition:opacity 1s var(--ease),transform 1s var(--ease),filter .9s var(--ease); }
body.page-eventos .reveal-right.visible { opacity:1; transform:none; filter:blur(0); }
body.page-eventos .fade-up { opacity:0; transform:translateY(24px); transition:opacity .9s var(--ease),transform .9s var(--ease); }
body.page-eventos .fade-up.active { opacity:1; transform:none; }
body.page-eventos .reveal-blur { opacity:0; transform:translateY(10px); filter:blur(4px); transition:opacity .75s var(--ease),transform .75s var(--ease),filter .6s var(--ease); }
body.page-eventos .reveal-blur.visible { opacity:1; transform:none; filter:blur(0); }
body.page-eventos .d1 {transition-delay:.12s} body.page-eventos .d2 {transition-delay:.24s} body.page-eventos .d3 {transition-delay:.38s} body.page-eventos .d4 {transition-delay:.52s}

@keyframes fadeUp__page-eventos { from{opacity:0;transform:translateY(28px);filter:blur(4px)} to{opacity:1;transform:none;filter:blur(0)} }
@keyframes fadeCorner__page-eventos { to{opacity:1} }
@keyframes grow__page-eventos { to{width:clamp(150px,20vw,220px)} }
@keyframes pulse__page-eventos { 0%,100%{opacity:.3} 50%{opacity:.9} }
@keyframes marquee__page-eventos { from{transform:translateX(0)} to{transform:translateX(-50%)} }
@keyframes float-particle__page-eventos { 0%,100%{transform:translateY(0) translateX(0);opacity:0} 10%{opacity:.6} 50%{transform:translateY(-100px) translateX(30px);opacity:.3} 90%{opacity:.6} }
@keyframes wppGlassPulse__page-eventos { 0%,100%{box-shadow:0 8px 36px rgba(182,141,64,.22),0 2px 12px rgba(0,0,0,.30),0 0 0 0 rgba(182,141,64,.32)} 55%{box-shadow:0 8px 36px rgba(182,141,64,.22),0 2px 12px rgba(0,0,0,.30),0 0 0 14px rgba(182,141,64,0)} }
@keyframes plantaPulse__page-eventos { 0%,100%{opacity:.85} 50%{opacity:1} }
@keyframes scanLine__page-eventos { from{transform:translateY(-100%)} to{transform:translateY(100vh)} }
@keyframes statSlideIn__page-eventos { to{opacity:1;transform:translateX(0)} }

/* ── Botões ── */
body.page-eventos .btn-primary {
  display:inline-flex; align-items:center; gap:14px;
  background:transparent; color:var(--go);
  border:1px solid rgba(182,141,64,.55);
  text-decoration:none; font-size:clamp(9px,1vw,11px); letter-spacing:.25em;
  text-transform:uppercase; padding:20px clamp(32px,5vw,56px);
  font-weight:500; font-family:'DM Sans',sans-serif;
  transition:all .5s var(--ease); position:relative; overflow:hidden;
}
body.page-eventos .btn-primary::before { content:''; position:absolute; inset:0; background:var(--go); transform:translateY(101%); transition:transform .5s cubic-bezier(0.16,1,0.3,1); z-index:0; }
body.page-eventos .btn-primary>* { position:relative; z-index:1; }
body.page-eventos .btn-primary:hover::before { transform:translateY(0); }
body.page-eventos .btn-primary:hover { color:var(--verde); border-color:var(--go); box-shadow:0 8px 32px rgba(182,141,64,.2); transform:translateY(-2px); }
body.page-eventos .btn-primary svg { transition:transform .3s; }
body.page-eventos .btn-primary:hover svg { transform:translateX(4px); }
body.page-eventos .btn-ghost { display:inline-flex; align-items:center; gap:12px; color:rgba(242,238,233,.55); text-decoration:none; font-size:clamp(9px,1vw,10px); letter-spacing:.2em; text-transform:uppercase; transition:all .3s var(--ease); padding:8px 0; }
body.page-eventos .btn-ghost:hover { color:var(--ow); }
body.page-eventos .ghost-line { width:28px; height:1px; background:currentColor; transition:width .35s var(--ease); flex-shrink:0; }
body.page-eventos .btn-ghost:hover .ghost-line { width:46px; }

/* ══ NAV ══ */
body.page-eventos nav {
  position:fixed; top:0; left:0; right:0; z-index:500;
  height:76px; padding:0 var(--safe);
  display:flex; align-items:center; justify-content:space-between;
  background:rgba(42,58,40,.78);
  backdrop-filter:blur(22px) saturate(1.4);
  -webkit-backdrop-filter:blur(22px) saturate(1.4);
  border-bottom:1px solid var(--go-bd);
  transition:all .45s var(--ease);
}
body.page-eventos nav.scrolled { background:rgba(242,239,233,.97); border-bottom:1px solid var(--palha-dark); box-shadow:0 4px 30px rgba(0,0,0,.08); }
body.page-eventos nav.scrolled .nav-logo-main { color:var(--verde); }
body.page-eventos nav.scrolled .nav-logo-sub { color:var(--go); }
body.page-eventos nav.scrolled .nav-links a { color:var(--mu-dk); }
body.page-eventos nav.scrolled .nav-links a:hover, body.page-eventos nav.scrolled .nav-links a.active { color:var(--verde); }
body.page-eventos nav.scrolled .nav-cta { color:var(--verde); border-color:rgba(26,40,25,.25); }
body.page-eventos nav.scrolled .nav-cta:hover { background:var(--verde); color:var(--palha); }
body.page-eventos nav.scrolled .hamburger span { background:var(--verde); }
body.page-eventos .nav-logo { text-decoration:none; display:flex; flex-direction:column; line-height:1; }
body.page-eventos .nav-logo-main { font-family:'Playfair Display',serif; font-size:clamp(20px,2.4vw,26px); letter-spacing:.09em; color:var(--ow); transition:color .45s; text-shadow:0 0 28px rgba(182,141,64,.35),0 1px 4px rgba(0,0,0,.4); }
body.page-eventos .nav-logo-sub { font-size:clamp(7px,.9vw,8.5px); letter-spacing:.28em; text-transform:uppercase; color:var(--go); margin-top:3px; }
body.page-eventos .nav-links { display:flex; gap:clamp(24px,3vw,44px); list-style:none; }
body.page-eventos .nav-links a { font-size:clamp(9px,1vw,10.5px); letter-spacing:.2em; text-transform:uppercase; text-decoration:none; color:rgba(242,238,233,.55); position:relative; transition:color .3s var(--ease); padding:4px 0; }
body.page-eventos .nav-links a::after { content:''; position:absolute; bottom:0; left:0; width:0; height:1px; background:var(--go); transition:width .35s var(--ease); }
body.page-eventos .nav-links a:hover, body.page-eventos .nav-links a.active { color:var(--ow); }
body.page-eventos .nav-links a:hover::after, body.page-eventos .nav-links a.active::after { width:100%; }
body.page-eventos .nav-cta { font-size:clamp(12px,1.15vw,13.5px); letter-spacing:.2em; text-transform:uppercase; text-decoration:none; color:var(--go); border:1px solid var(--go-bd); padding:10px clamp(16px,2vw,26px); transition:all .3s var(--ease); }
body.page-eventos .nav-cta:hover { background:var(--bordo); color:var(--palha-f); border-color:var(--bordo); box-shadow:0 0 24px rgba(90,15,26,.28); }
body.page-eventos .hamburger { display:none; flex-direction:column; gap:5px; cursor:pointer; background:none; border:none; padding:4px; }
body.page-eventos .hamburger span { display:block; width:24px; height:1px; background:var(--ow); transition:transform .3s,opacity .3s,background .45s; }
body.page-eventos .mobile-menu { position:fixed; inset:0; background:var(--verde-deep); z-index:490; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:40px; transform:translateX(100%); transition:transform .55s var(--ease); }
body.page-eventos .mobile-menu.open { transform:translateX(0); }
body.page-eventos .mobile-menu a { font-family:'Playfair Display',serif; font-size:clamp(28px,6vw,34px); color:var(--ow); text-decoration:none; transition:all .3s; opacity:0; transform:translateY(20px); }
body.page-eventos .mobile-menu.open a { opacity:1; transform:translateY(0); }
body.page-eventos .mobile-menu.open a:nth-child(1) {transition-delay:.1s}
body.page-eventos .mobile-menu.open a:nth-child(2) {transition-delay:.15s}
body.page-eventos .mobile-menu.open a:nth-child(3) {transition-delay:.2s}
body.page-eventos .mobile-menu.open a:nth-child(4) {transition-delay:.25s}
body.page-eventos .mobile-menu a:hover { color:var(--go); }

/* ══ ESTEIRAS MARQUEE ══ */
body.page-eventos .marquee-strip { overflow:hidden; padding:0; position:relative; z-index:10; border-top:1px solid; border-bottom:1px solid; margin:0; display:flex; align-items:center; min-height:52px; }
body.page-eventos .marquee-track { display:flex; animation:marquee__page-eventos 32s linear infinite; align-items:center; }
body.page-eventos .marquee-item { display:inline-flex; align-items:center; gap:30px; padding:15px 32px; white-space:nowrap; flex-shrink:0; font-size:clamp(11px,1.1vw,13px); letter-spacing:.3em; text-transform:uppercase; font-weight:600; font-family:'DM Sans',sans-serif; }
body.page-eventos .marquee-gem { width:5px; height:5px; transform:rotate(45deg); flex-shrink:0; opacity:.55; }
body.page-eventos .mq-gold { background:var(--go); border-color:rgba(182,141,64,.4); }
body.page-eventos .mq-gold .marquee-item { color:#4A0E0E; }
body.page-eventos .mq-gold .marquee-gem { background:#4A0E0E; }
body.page-eventos .mq-verde { background:var(--verde-card); border-color:var(--go-bd); }
body.page-eventos .mq-verde .marquee-item { color:var(--go); }
body.page-eventos .mq-verde .marquee-gem { background:var(--go); }
body.page-eventos .mq-palha { background:var(--palha); border-color:rgba(90,15,26,.2); }
body.page-eventos .mq-palha .marquee-item { color:var(--bordo-prof); }
body.page-eventos .mq-palha .marquee-gem { background:var(--bordo-prof); }
body.page-eventos .mq-ouro { background:#111e10; border-color:rgba(182,141,64,.28); }
body.page-eventos .mq-ouro .marquee-item { color:var(--go-lt); }
body.page-eventos .mq-ouro .marquee-gem { background:var(--go-lt); }
body.page-eventos .mq-bordo { background:var(--bordo); border-color:rgba(90,15,26,.5); }
body.page-eventos .mq-bordo .marquee-item { color:var(--palha-f); }
body.page-eventos .mq-bordo .marquee-gem { background:var(--palha-f); }

/* ══ HERO ══ */
body.page-eventos .hero {
  position:relative; min-height:100svh;
  display:flex; flex-direction:column;
  justify-content:flex-end; overflow:hidden; background:var(--verde-deep);
}
body.page-eventos .hero-bg-parallax {
  position:absolute; inset:0;
  background-image:url('../assets/images/hero.jpg');
  background-size:cover; background-position:center center;
  background-repeat:no-repeat; background-attachment:fixed; z-index:0;
}
@media(max-width:960px) { body.page-eventos .hero-bg-parallax { background-attachment:scroll; } }
body.page-eventos .hero-overlay {
  position:absolute; inset:0; z-index:1;
  background:linear-gradient(to right,rgba(8,14,8,.9) 0%,rgba(8,14,8,.65) 45%,rgba(8,14,8,.2) 100%);
}
body.page-eventos .hero-particles { position:absolute; inset:0; z-index:2; pointer-events:none; overflow:hidden; }
body.page-eventos .hero-particle { position:absolute; width:4px; height:4px; background:radial-gradient(circle,rgba(242,238,233,.25),transparent); border-radius:50%; animation:float-particle__page-eventos 20s infinite; }
body.page-eventos .hero-particle:nth-child(1) {left:10%;top:20%;animation-delay:0s}
body.page-eventos .hero-particle:nth-child(2) {left:25%;top:60%;animation-delay:-5s}
body.page-eventos .hero-particle:nth-child(3) {left:70%;top:30%;animation-delay:-10s}
body.page-eventos .hero-particle:nth-child(4) {left:85%;top:70%;animation-delay:-15s}
body.page-eventos .hero-particle:nth-child(5) {left:50%;top:45%;animation-delay:-7s}
body.page-eventos .hero-grid { position:absolute; inset:0; pointer-events:none; display:grid; grid-template-columns:repeat(12,1fr); z-index:3; }
body.page-eventos .hero-grid-col { border-right:1px solid rgba(182,141,64,.04); }
body.page-eventos .hero-grid-col:first-child { border-left:1px solid rgba(182,141,64,.04); }
body.page-eventos .hero-bg-letters { position:absolute; right:-1%; bottom:-10%; font-family:'Playfair Display',serif; font-size:clamp(200px,30vw,500px); font-weight: 700 !important; line-height:1; color:rgba(182,141,64,.025); pointer-events:none; user-select:none; letter-spacing: -0.04em !important; z-index:3; }
body.page-eventos .corner-tr { position:absolute; top:94px; right:var(--safe); width:100px; height:100px; border-top:1px solid var(--go-bd); border-right:1px solid var(--go-bd); z-index:4; opacity:0; animation:fadeCorner__page-eventos 1s 1.5s forwards; }
body.page-eventos .corner-bl { position:absolute; bottom:56px; left:var(--safe); width:60px; height:60px; border-bottom:1px solid var(--go-bd); border-left:1px solid var(--go-bd); z-index:4; opacity:0; animation:fadeCorner__page-eventos 1s 1.7s forwards; }
body.page-eventos .hero-badge { position:absolute; top:112px; left:var(--safe); display:flex; align-items:center; gap:12px; opacity:0; animation:fadeUp__page-eventos .8s .3s forwards; z-index:4; }
body.page-eventos .hero-badge-line { width:28px; height:1px; background:var(--go); }
body.page-eventos .hero-badge span { font-size:clamp(11px,1.05vw,12.5px); letter-spacing:.28em; text-transform:uppercase; color:var(--go); border-left:2px solid var(--bordo-prof); padding-left:10px; }
body.page-eventos .hero-accent { position:absolute; bottom:0; left:0; right:0; height:2px; z-index:4; background:linear-gradient(to right,transparent,var(--bordo-prof) 20%,var(--go) 50%,transparent); animation:grow__page-eventos 1.2s 1.1s var(--ease) forwards; width:0; }
body.page-eventos .hero-content { position:relative; padding:clamp(130px,18vh,170px) var(--safe) clamp(100px,14vh,140px); max-width:1000px; z-index:4; }
body.page-eventos .hero-eyebrow-dourado { font-family:'DM Sans',sans-serif; font-size:clamp(15px,1.4vw,17px); letter-spacing:.28em; text-transform:uppercase; color:var(--go); margin-bottom:clamp(24px,3.5vh,36px); opacity:0; animation:fadeUp__page-eventos .9s var(--ease) .45s forwards; font-weight:600; display:flex; align-items:center; gap:18px; }
body.page-eventos .hero-eyebrow-dourado::before { content:''; display:inline-block; width:40px; height:1px; background:var(--go); flex-shrink:0; }
body.page-eventos .hero-h1 { font-family:'Playfair Display',serif; font-size:clamp(42px,5.6vw,82px); font-weight:400; line-height:1.0; letter-spacing:-.025em; color:var(--ow); margin-bottom:clamp(24px,3vh,32px); opacity:0; animation:fadeUp__page-eventos 1s var(--ease) .62s forwards; text-shadow:0 2px 40px rgba(0,0,0,.35); max-width:920px; word-break:keep-all; overflow-wrap:break-word; hyphens:none; }
body.page-eventos .hero-sub { font-family:'Playfair Display',serif; font-size:clamp(22px,2.4vw,30px); font-weight:300; font-style:italic; color:rgba(242,238,233,.94); line-height:1.5; max-width:720px; margin-bottom:clamp(18px,2.5vh,26px); opacity:0; animation:fadeUp__page-eventos .9s var(--ease) .82s forwards; text-shadow:0 1px 20px rgba(0,0,0,.7); }
body.page-eventos .hero-support { font-family:'DM Sans',sans-serif; font-size:clamp(15px,1.4vw,17px); font-weight:300; color:rgba(242,238,233,.7); line-height:1.7; max-width:580px; letter-spacing:.01em; opacity:0; animation:fadeUp__page-eventos .9s var(--ease) 1s forwards; text-shadow:0 1px 14px rgba(0,0,0,.6); }
body.page-eventos .hero-stats { position:absolute; right:var(--safe); top:50%; transform:translateY(-50%); display:flex; flex-direction:column; z-index:5; background:rgba(6,10,6,.52); backdrop-filter:blur(12px) saturate(1.2); -webkit-backdrop-filter:blur(12px) saturate(1.2); border:1px solid rgba(182,141,64,.12); border-radius:2px; overflow:hidden; width:clamp(160px,15vw,210px); isolation:isolate; }
body.page-eventos .hero-stat { padding:16px 22px; border-left:2px solid transparent; transition:border-color .35s,background .3s; opacity:0; transform:translateX(18px); animation:statSlideIn__page-eventos .6s var(--ease) forwards; position:relative; }
body.page-eventos .hero-stat:nth-child(1) {animation-delay:1.05s} body.page-eventos .hero-stat:nth-child(2) {animation-delay:1.3s} body.page-eventos .hero-stat:nth-child(3) {animation-delay:1.55s}
body.page-eventos .hero-stat:hover { border-left-color:rgba(182,141,64,.5); background:rgba(255,255,255,.03); }
body.page-eventos .hero-stat+.hero-stat { border-top:1px solid rgba(255,255,255,.06); }
body.page-eventos .hero-stat-val { font-family:'DM Sans',sans-serif; font-size:clamp(22px,2.2vw,30px); font-weight:300; color:var(--go); line-height:1; font-variant-numeric:tabular-nums; display:flex; align-items:baseline; justify-content:flex-end; white-space:nowrap; margin-bottom:6px; }
body.page-eventos .hero-stat-val .numero { display:inline-block; }
body.page-eventos .hero-stat-val .sufixo { font-size:.65em; color:var(--go-lt); margin-left:2px; }
body.page-eventos .hero-stat-lbl { font-family:'DM Sans',sans-serif; font-size:clamp(10px,1vw,11.5px); letter-spacing:.22em; text-transform:uppercase; color:rgba(242,238,233,.55); font-weight:400; line-height:1.3; text-align:right; }
body.page-eventos .btn-hero-ig:hover { background:rgba(90,15,26,.12); color:rgba(242,238,233,.9); }
body.page-eventos .scroll-cue { position:absolute; left:var(--safe); bottom:48px; display:flex; flex-direction:column; align-items:center; gap:10px; z-index:4; }
body.page-eventos .scroll-cue-txt { font-size:11px; letter-spacing:.24em; text-transform:uppercase; color:rgba(242,238,233,.55); writing-mode:vertical-rl; font-weight:400; }
body.page-eventos .scroll-cue-line { width:1px; height:64px; background:linear-gradient(to bottom,var(--go),transparent); animation:pulse__page-eventos 2.2s ease-in-out infinite; }

/* ══ JANELAS PARALLAX ══ */
body.page-eventos .win { position:relative; }
body.page-eventos .win-bg { position:absolute!important; top:0!important; left:0!important; width:100%!important; height:100%!important; z-index:0!important; background-size:cover!important; background-attachment:fixed!important; background-repeat:no-repeat!important; }
@media(max-width:960px) { body.page-eventos .win-bg { background-attachment:scroll!important; } }
body.page-eventos .win-ov { position:absolute!important; top:0!important; left:0!important; width:100%!important; height:100%!important; z-index:1!important; }
body.page-eventos .reveal-win { height:88vh; min-height:600px; max-height:980px; position:relative; clip-path:inset(0); }
body.page-eventos .reveal-win-top-accent { position:absolute!important; top:0!important; left:0!important; right:0!important; height:2px!important; z-index:6!important; background:linear-gradient(to right,transparent 0%,var(--acento) 20%,var(--go) 50%,var(--acento) 80%,transparent 100%); opacity:.7; }
body.page-eventos .reveal-win::before { content:''; position:absolute; inset:0; z-index:2; background:linear-gradient(to top,rgba(8,14,8,.88) 0%,rgba(8,14,8,.28) 44%,transparent 68%); pointer-events:none; }
body.page-eventos .reveal-win::after { content:''; position:absolute; bottom:0; left:0; right:0; height:2px; z-index:5; background:linear-gradient(to right,transparent 0%,var(--acento) 18%,var(--go) 50%,var(--acento) 82%,transparent 100%); opacity:.9; box-shadow:0 0 12px rgba(182,141,64,.2); }
body.page-eventos .reveal-win-body { position:relative!important; z-index:4!important; height:100%; display:flex; flex-direction:column; justify-content:flex-end; padding:0 var(--safe) clamp(40px,6vh,56px); }
body.page-eventos .reveal-win-num { position:absolute!important; z-index:3!important; right:var(--safe)!important; bottom:10%!important; font-family:'Playfair Display',serif; font-size:clamp(160px,20vw,280px); font-weight:700; line-height:1; color:rgba(242,238,233,.028); pointer-events:none; user-select:none; }
body.page-eventos .reveal-win-eyebrow { font-size:clamp(13px,1.3vw,15px); letter-spacing:.32em; text-transform:uppercase; color:var(--go); margin-bottom:clamp(20px,2.5vh,32px); display:flex; align-items:center; gap:16px; font-weight:600; }
body.page-eventos .reveal-win-eyebrow::before { content:''; display:inline-block; width:40px; height:1px; background:linear-gradient(to right,var(--bordo-prof),var(--go)); flex-shrink:0; }
body.page-eventos .reveal-win-h2 { font-family:'Playfair Display',serif; font-size:clamp(34px,5.5vw,82px); font-weight:400; line-height:.98; letter-spacing:-.025em; color:var(--ow); text-shadow:0 4px 40px rgba(0,0,0,.5); max-width:700px; margin-bottom:clamp(14px,2.5vh,20px); }
body.page-eventos .reveal-win-p { font-family:'Playfair Display',serif; font-size:23px; font-weight:300; font-style:italic; color:rgba(242,238,233,.88); line-height:1.82; max-width:480px; text-shadow:0 2px 14px rgba(0,0,0,.35); }
body.page-eventos .reveal-win-selo { position:absolute!important; z-index:4!important; right:var(--safe)!important; bottom:clamp(40px,6vh,56px)!important; text-align:right; }
body.page-eventos .reveal-win-selo-nome { font-family:'Playfair Display',serif; font-size:clamp(24px,2.8vw,40px); font-weight:400; line-height:1.08; color:rgba(242,238,233,.9); text-shadow:0 4px 24px rgba(0,0,0,.45); }
body.page-eventos .reveal-win-selo-nome em { font-style:italic; }
body.page-eventos .reveal-win-selo-line { width:100%; height:1px; margin-bottom:10px; background:linear-gradient(to left,var(--acento),var(--go),transparent); display:block; }

/* ══ BLOCOS CORPORATIVO, SOCIAL, SHOWS (estrutura de eventos_A) ══ */
body.page-eventos .bloco-corp-a {
  background:linear-gradient(180deg,#1A2819 0%,#1e3220 50%,#162214 100%);
  position:relative; z-index:10;
}
body.page-eventos .bloco-corp-a::before { content:''; display:block; height:1px; background:linear-gradient(to right,transparent,var(--bordo-prof) 20%,var(--go) 50%,var(--bordo-prof) 80%,transparent); opacity:.55; }
body.page-eventos .corp-split-a { display:grid; grid-template-columns:1fr 1fr; min-height:680px; align-items:stretch; }
body.page-eventos .corp-corpo-a { padding:clamp(90px,13vh,140px) clamp(48px,6vw,90px) clamp(90px,13vh,140px) var(--safe); display:flex; flex-direction:column; justify-content:center; }
body.page-eventos .corp-h2-a { font-family:'Playfair Display',serif; font-size:clamp(28px,3.8vw,54px); font-weight:400; line-height:1.04; letter-spacing:-.02em; color:var(--ow); margin:16px 0 clamp(24px,3vh,36px); }
body.page-eventos .corp-p-a { font-size:23px; color:rgba(182,175,160,.65); line-height:1.85; margin-bottom:20px; }
body.page-eventos .corp-p-a strong { color:var(--go); font-weight:400; }
body.page-eventos .corp-specs-a { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:rgba(182,141,64,.15); border:1px solid rgba(182,141,64,.15); margin:clamp(32px,4vh,48px) 0; }
body.page-eventos .corp-spec-a { background:rgba(17,30,16,.7); padding:clamp(20px,3vh,28px) clamp(16px,2vw,24px); display:flex; flex-direction:column; gap:6px; }
body.page-eventos .corp-spec-val-a { font-family:'DM Sans',sans-serif; font-size:clamp(24px,3vw,38px); font-weight:300; color:var(--go); font-variant-numeric:tabular-nums; line-height:1; }
body.page-eventos .corp-spec-val-a .sufixo { font-size:.55em; color:var(--go-lt); }
body.page-eventos .corp-spec-lbl-a { font-size:clamp(11px,1.05vw,12.5px); letter-spacing:.18em; text-transform:uppercase; color:rgba(182,175,160,.5); }
body.page-eventos .corp-foto-a { position:relative; clip-path:inset(0); min-height:480px; }
body.page-eventos .corp-foto-bg-a { position:absolute!important; inset:0; background-size:cover!important; background-position:center!important; background-attachment:fixed!important; background-repeat:no-repeat!important; z-index:0!important; }
@media(max-width:960px) { body.page-eventos .corp-foto-bg-a { background-attachment:scroll!important; } }
body.page-eventos .corp-foto-ov-a { position:absolute; inset:0; z-index:1; background:linear-gradient(to left,rgba(8,14,8,.04) 0%,rgba(8,14,8,.04) 60%,#1e2e1d 100%); }

/* ── Grid de fotos 4 cards ── */
body.page-eventos .grid-parallax-section { padding:0; overflow:hidden; }
body.page-eventos .grid-cards-equal { display:grid; grid-template-columns:repeat(4,1fr); gap:0; }
body.page-eventos .grid-card-eq { position:relative; overflow:hidden; aspect-ratio:3/4; cursor:pointer; }
body.page-eventos .grid-card-eq img { width:100%; height:100%; object-fit:cover; transition:transform 1s var(--ease),filter .8s; filter:brightness(.88) saturate(1.05); }
body.page-eventos .grid-card-eq:hover img { transform:scale(1.07); filter:brightness(1) saturate(1.15); }
body.page-eventos .grid-card-content { position:absolute; bottom:0; left:0; right:0; padding:clamp(20px,3vh,32px) clamp(18px,2.5vw,28px); background:linear-gradient(to top,rgba(8,14,8,.88) 0%,transparent 100%); z-index:2; }
body.page-eventos .grid-card-title { font-family:'Playfair Display',serif; font-size:clamp(16px,1.8vw,22px); font-weight:400; color:var(--ow); margin-bottom:4px; line-height:1.2; }
body.page-eventos .grid-card-sub { font-size:clamp(10px,1vw,12px); letter-spacing:.1em; color:rgba(182,175,160,.6); text-transform:uppercase; }
body.page-eventos .grid-card-eq::after { content:''; position:absolute; inset:0; z-index:1; background:linear-gradient(to top,rgba(0,0,0,.6) 0%,transparent 55%); transition:opacity .4s; }

/* ── Bloco CTA inline ── */
body.page-eventos .bloco-cta-line { display:flex; align-items:center; justify-content:space-between; gap:28px; padding:clamp(28px,4vh,44px) var(--safe); flex-wrap:wrap; border-top:1px solid; }
body.page-eventos .bloco-cta-label { font-family:'Playfair Display',serif; font-size:clamp(20px,2vw,26px); font-style:italic; color:inherit; }

/* ══ SOCIAL (palha) ══ */
body.page-eventos .bloco-social-a {
  background:linear-gradient(180deg,#F2EFE9 0%,#ede8df 55%,#e8e2d8 100%);
  color:var(--bordo); position:relative; z-index:10;
}
body.page-eventos .bloco-social-a::before { content:''; display:block; height:1px; background:linear-gradient(to right,transparent,var(--bordo-prof) 25%,rgba(74,14,14,.5) 60%,transparent); opacity:.55; }
body.page-eventos .social-split-a { display:grid; grid-template-columns:1fr 1fr; min-height:680px; align-items:stretch; }
body.page-eventos .social-foto-a { position:relative; clip-path:inset(0); min-height:480px; }
body.page-eventos .social-foto-bg-a { position:absolute!important; inset:0; background-size:cover!important; background-position:center 35%!important; background-attachment:fixed!important; background-repeat:no-repeat!important; z-index:0!important; }
@media(max-width:960px) { body.page-eventos .social-foto-bg-a { background-attachment:scroll!important; } }
body.page-eventos .social-foto-ov-a { position:absolute; inset:0; z-index:1; background:linear-gradient(to right,rgba(8,14,8,.04) 0%,rgba(8,14,8,.02) 60%,#F2EFE9 100%); }
body.page-eventos .social-corpo-a { padding:clamp(90px,13vh,140px) var(--safe) clamp(90px,13vh,140px) clamp(48px,6vw,80px); display:flex; flex-direction:column; justify-content:center; }
body.page-eventos .social-h2-a { font-family:'Playfair Display',serif; font-size:clamp(28px,3.8vw,54px); font-weight:400; line-height:1.04; letter-spacing:-.02em; color:var(--bordo); margin:16px 0 clamp(24px,3vh,36px); }
body.page-eventos .social-p-a { font-size:23px; color:rgba(60,10,18,.65); line-height:1.85; margin-bottom:20px; }
body.page-eventos .social-items-a { display:flex; flex-direction:column; margin:clamp(28px,4vh,40px) 0; }
body.page-eventos .social-item-a { padding:22px 0; border-top:1px solid rgba(90,15,26,.1); display:grid; grid-template-columns:44px 1fr; gap:14px; align-items:start; }
body.page-eventos .social-item-a:last-child { border-bottom:1px solid rgba(90,15,26,.1); }
body.page-eventos .si-num-a { font-family:'Playfair Display',serif; font-size:13px; color:var(--bordo); letter-spacing:.08em; padding-top:3px; }
body.page-eventos .si-title-a { font-family:'Playfair Display',serif; font-size:clamp(15px,1.6vw,17px); font-weight:400; color:var(--bordo); margin-bottom:6px; }
body.page-eventos .si-desc-a { font-size:23px; color:rgba(60,10,18,.6); line-height:1.75; }
body.page-eventos .btn-ghost-dk { display:inline-flex; align-items:center; gap:12px; color:var(--bordo); text-decoration:none; font-size:clamp(9px,1vw,10px); letter-spacing:.2em; text-transform:uppercase; border:1px solid rgba(90,15,26,.28); padding:14px 28px; transition:all .3s var(--ease); }
body.page-eventos .btn-ghost-dk:hover { background:var(--bordo); color:var(--palha-f); border-color:var(--bordo); }

/* ── Casa do Sol ── */
body.page-eventos .card-sol { display:grid; grid-template-columns:1fr 1fr; overflow:hidden; position:relative; margin:clamp(32px,5vh,56px) var(--safe) 0; border:1px solid rgba(90,15,26,.18); }
body.page-eventos .cs-img { position:relative; min-height:440px; overflow:hidden; }
body.page-eventos .cs-img-bg { position:absolute; inset:0; background-size:cover; background-position:center 30%; transition:transform 1.2s var(--ease); }
body.page-eventos .cs-img:hover .cs-img-bg { transform:scale(1.04); }
body.page-eventos .cs-txt { background:rgba(242,239,233,.96); padding:clamp(52px,8vh,72px) clamp(40px,5vw,64px); display:flex; flex-direction:column; justify-content:center; }
body.page-eventos .cs-tag { font-size:clamp(12px,1.1vw,13px); letter-spacing:.3em; text-transform:uppercase; color:var(--bordo-prof); margin-bottom:22px; display:flex; align-items:center; gap:12px; }
body.page-eventos .cs-tag::before { content:''; display:inline-block; width:24px; height:1px; background:var(--bordo-prof); flex-shrink:0; }
body.page-eventos .cs-h3 { font-family:'Playfair Display',serif; font-size:clamp(28px,3.5vw,52px); font-weight:400; line-height:1.04; letter-spacing:-.02em; color:var(--bordo); margin-bottom:18px; }
body.page-eventos .cs-h3 em { font-style:italic; color:inherit; }
body.page-eventos .cs-bordo { width:48px; height:2px; background:linear-gradient(to right,var(--bordo),var(--bordo2)); margin-bottom:24px; }
body.page-eventos .cs-p { font-size:23px; color:rgba(90,15,26,.65); line-height:1.85; max-width:480px; }

/* ══ SHOWS (âmbar/escuro) ══ */
body.page-eventos .bloco-shows-a {
  background:linear-gradient(180deg,#111e10 0%,#1A2819 50%,#0e140d 100%);
  position:relative; z-index:10;
}
body.page-eventos .bloco-shows-a::before { content:''; display:block; height:1px; background:linear-gradient(to right,transparent,var(--go-lt) 20%,var(--go) 50%,var(--go-lt) 80%,transparent); opacity:.55; }
body.page-eventos .shows-split-a { display:grid; grid-template-columns:1fr 1fr; min-height:680px; align-items:stretch; }
body.page-eventos .shows-corpo-a { padding:clamp(90px,13vh,140px) clamp(48px,6vw,90px) clamp(90px,13vh,140px) var(--safe); display:flex; flex-direction:column; justify-content:center; }
body.page-eventos .shows-h2-a { font-family:'Playfair Display',serif; font-size:clamp(28px,3.8vw,54px); font-weight:400; line-height:1.04; letter-spacing:-.02em; color:var(--ow); margin:16px 0 clamp(24px,3vh,36px); }
body.page-eventos .shows-p-a { font-size:23px; color:rgba(182,160,110,.6); line-height:1.85; margin-bottom:20px; }
body.page-eventos .shows-quote-a { font-family:'Playfair Display',serif; font-size:clamp(17px,1.8vw,21px); font-weight:300; font-style:italic; color:rgba(182,141,64,.7); line-height:1.65; border-left:2px solid rgba(182,141,64,.3); padding:16px 0 16px 24px; margin:clamp(28px,4vh,40px) 0; }
body.page-eventos .shows-foto-a { position:relative; clip-path:inset(0); min-height:480px; }
body.page-eventos .shows-foto-bg-a { position:absolute!important; inset:0; background-size:cover!important; background-position:center 40%!important; background-attachment:fixed!important; background-repeat:no-repeat!important; z-index:0!important; }
@media(max-width:960px) { body.page-eventos .shows-foto-bg-a { background-attachment:scroll!important; } }
body.page-eventos .shows-foto-ov-a { position:absolute; inset:0; z-index:1; background:linear-gradient(to left,rgba(8,14,8,.04) 0%,rgba(8,14,8,.04) 60%,#111e10 100%); }
body.page-eventos .btn-outline-amber { display:inline-flex; align-items:center; gap:14px; background:transparent; color:rgba(242,238,233,.85); text-decoration:none; font-size:clamp(9px,1vw,10px); letter-spacing:.22em; text-transform:uppercase; padding:16px clamp(24px,3vw,38px); font-weight:500; border:1px solid rgba(182,141,64,.35); transition:all .35s var(--ease); position:relative; overflow:hidden; }
body.page-eventos .btn-outline-amber::before { content:''; position:absolute; inset:0; background:rgba(182,141,64,.1); transform:scaleX(0); transform-origin:left; transition:transform .4s var(--ease); z-index:-1; }
body.page-eventos .btn-outline-amber:hover::before { transform:scaleX(1); }
body.page-eventos .btn-outline-amber:hover { color:var(--ow); border-color:var(--go); transform:translateY(-2px); }
body.page-eventos .btn-outline-amber svg { transition:transform .3s; }
body.page-eventos .btn-outline-amber:hover svg { transform:translateX(4px); }

/* ══ INFRAESTRUTURA (dourado) ══ */
body.page-eventos .bloco-infra-a {
  background:linear-gradient(180deg,var(--go) 0%,#A87E28 50%,#9A7220 100%);
  position:relative; z-index:10;
}
body.page-eventos .bloco-infra-a::before { content:''; display:block; height:1px; background:linear-gradient(to right,transparent,var(--bordo-prof) 20%,rgba(26,40,25,.6) 50%,var(--bordo-prof) 80%,transparent); opacity:.45; }
body.page-eventos .infra-inner-a { padding:clamp(100px,14vh,160px) 0; }
body.page-eventos .infra-h2-a { font-family:'Playfair Display',serif; font-size:clamp(32px,4.5vw,64px); font-weight:400; line-height:1.04; letter-spacing:-.02em; color:var(--verde); margin-top:16px; margin-bottom:clamp(20px,3vh,32px); }
body.page-eventos .infra-lead-a { font-size:23px; color:rgba(26,40,25,.7); line-height:1.85; max-width:540px; margin-bottom:clamp(40px,6vh,60px); }
body.page-eventos .infra-rooftop-a { background:rgba(26,40,25,.12); border:1px solid rgba(26,40,25,.22); padding:clamp(44px,6vh,60px) clamp(40px,5vw,64px); display:grid; grid-template-columns:1fr auto; gap:clamp(32px,4vw,56px); align-items:center; position:relative; overflow:hidden; margin-bottom:clamp(28px,4vh,40px); }
body.page-eventos .infra-rooftop-a::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(to right,var(--bordo),var(--verde)); opacity:.6; }
body.page-eventos .infra-rooftop-title-a { font-family:'Playfair Display',serif; font-size:clamp(22px,3vw,42px); font-weight:400; line-height:1.1; color:var(--verde); margin-bottom:14px; }
body.page-eventos .infra-rooftop-p-a { font-size:23px; color:rgba(26,40,25,.7); line-height:1.85; max-width:520px; }
body.page-eventos .infra-rooftop-stat-a { text-align:right; flex-shrink:0; }
body.page-eventos .infra-stat-val-big { font-family:'DM Sans',sans-serif; font-size:clamp(38px,5vw,64px); font-weight:300; color:var(--verde); font-variant-numeric:tabular-nums; line-height:1; letter-spacing:-0.02em; }
body.page-eventos .infra-stat-val-big .numero { font-weight:300; font-style:normal; font-variant-numeric:tabular-nums; }
body.page-eventos .infra-stat-lbl-sm { font-size:clamp(11.5px,1.1vw,13px); letter-spacing:.2em; text-transform:uppercase; color:rgba(26,40,25,.5); margin-top:6px; }
body.page-eventos .infra-grid-a { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:rgba(26,40,25,.25); border:1px solid rgba(26,40,25,.25); }
body.page-eventos .infra-card-a { background:rgba(11,18,10,.07); padding:clamp(44px,6vh,60px) clamp(28px,3vw,44px); display:flex; flex-direction:column; gap:16px; position:relative; }
body.page-eventos .infra-card-a::after { content:''; position:absolute; bottom:0; left:0; right:0; height:2px; background:linear-gradient(to right,var(--bordo-prof),var(--verde),transparent); transform:scaleX(0); transform-origin:left; transition:transform .55s var(--ease); }
body.page-eventos .infra-card-a:hover::after { transform:scaleX(1); }
body.page-eventos .infra-card-icon-a { width:48px; height:48px; color:var(--verde); }
body.page-eventos .infra-card-title-a { font-family:'Playfair Display',serif; font-size:clamp(17px,1.8vw,22px); font-weight:400; color:var(--verde); line-height:1.25; }
body.page-eventos .infra-card-p-a { font-size:23px; color:rgba(26,40,25,.65); line-height:1.82; }
body.page-eventos .infra-counter-a { font-family:'DM Sans',sans-serif; font-size:clamp(32px,4vw,48px); font-weight:300; color:var(--verde); font-variant-numeric:tabular-nums; line-height:1; }
body.page-eventos .infra-counter-a .numero { font-weight:300; }
body.page-eventos .infra-counter-a small { font-size:.55em; color:rgba(26,40,25,.65); }

/* ══ JANELAS DUPLAS ROOFTOP ══ */
body.page-eventos .janelas-duplas { display:grid; grid-template-columns:1fr 1fr; position:relative; z-index:10; }
body.page-eventos .janela-win { position:relative; height:clamp(500px,70vh,780px); overflow:hidden; clip-path:inset(0); }
body.page-eventos .janela-win + .janela-win { border-left:2px solid rgba(182,141,64,.18); }
body.page-eventos .janela-win-top-accent { position:absolute; top:0; left:0; right:0; height:2px; z-index:6; background:linear-gradient(to right,transparent,var(--bordo) 30%,var(--go) 60%,transparent); opacity:.6; }
body.page-eventos .janela-win-bg { position:absolute; inset:0; background-size:cover; background-attachment:fixed; background-repeat:no-repeat; z-index:0; }
@media(max-width:960px) { body.page-eventos .janela-win-bg { background-attachment:scroll; } }
body.page-eventos .janela-win::before { content:''; position:absolute; inset:0; z-index:2; background:linear-gradient(to top,rgba(8,14,8,.9) 0%,rgba(8,14,8,.35) 50%,rgba(8,14,8,.1) 100%); }
body.page-eventos .janela-win-body { position:relative; z-index:4; height:100%; display:flex; flex-direction:column; justify-content:flex-end; padding:0 clamp(32px,5vw,56px) clamp(40px,6vh,56px); }
body.page-eventos .janela-win-badge { display:inline-flex; align-items:center; gap:8px; margin-bottom:clamp(18px,2.5vh,28px); font-size:clamp(11px,1.05vw,12.5px); letter-spacing:.28em; text-transform:uppercase; color:var(--go); background:rgba(90,15,26,.4); border:1px solid var(--bordo-bd); padding:6px 14px; width:fit-content; }
body.page-eventos .janela-win-badge::before { content:''; width:4px; height:4px; background:var(--bordo); transform:rotate(45deg); flex-shrink:0; }
body.page-eventos .janela-win-eyebrow { font-size:clamp(11.5px,1.1vw,13px); letter-spacing:.3em; text-transform:uppercase; color:var(--go); margin-bottom:clamp(14px,2vh,22px); display:flex; align-items:center; gap:12px; }
body.page-eventos .janela-win-eyebrow::before { content:''; display:inline-block; width:24px; height:1px; background:linear-gradient(to right,var(--bordo),var(--go)); flex-shrink:0; }
body.page-eventos .janela-win-h2 { font-family:'Playfair Display',serif; font-size:clamp(28px,3.8vw,58px); font-weight:400; line-height:1.0; letter-spacing:-.02em; color:var(--ow); text-shadow:0 4px 40px rgba(0,0,0,.5); margin-bottom:clamp(14px,2vh,18px); }
body.page-eventos .janela-win-p { font-family:'Playfair Display',serif; font-size:23px; font-weight:300; font-style:italic; color:rgba(242,238,233,.85); line-height:1.78; max-width:400px; text-shadow:0 2px 14px rgba(0,0,0,.35); }
body.page-eventos .janela-win-num { position:absolute; z-index:3; right:clamp(16px,4%,40px); bottom:8%; font-family:'Playfair Display',serif; font-size:clamp(100px,14vw,200px); font-weight:700; line-height:1; color:rgba(242,238,233,.022); pointer-events:none; user-select:none; letter-spacing:-.04em; }

/* ══ CAPACIDADE ══ */
body.page-eventos .bloco-cap-a {
  background:linear-gradient(180deg,#1A2819 0%,#1e2e1d 60%,#162214 100%);
  position:relative; z-index:10;
  padding:clamp(100px,14vh,160px) var(--safe);
}
body.page-eventos .bloco-cap-a::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(to right,transparent,var(--bordo-prof) 20%,var(--go) 50%,var(--bordo-prof) 80%,transparent); opacity:.55; }
body.page-eventos .cap-h2-a { font-family:'Playfair Display',serif; font-size:clamp(30px,4.5vw,62px); font-weight:400; line-height:1.04; letter-spacing:-.02em; color:var(--ow); margin-top:16px; }
body.page-eventos .cap-lead-a { font-size:23px; color:rgba(182,175,160,.7); line-height:1.85; max-width:580px; margin-top:22px; margin-bottom:clamp(48px,7vh,72px); }
body.page-eventos .cap-grid-a { display:grid; grid-template-columns:1fr 1fr; gap:clamp(16px,2vw,28px); margin-bottom:clamp(52px,8vh,80px); }
body.page-eventos .cap-card-a { position:relative; overflow:hidden; border:1px solid rgba(182,141,64,.18); display:flex; flex-direction:column; }
body.page-eventos .cap-card-img-a { position:relative; overflow:hidden; aspect-ratio:16/10; }
body.page-eventos .cap-card-img-a img { width:100%; height:100%; object-fit:cover; transition:transform .9s var(--ease); }
body.page-eventos .cap-card-a:hover .cap-card-img-a img { transform:scale(1.06); }
body.page-eventos .cap-card-badge-a { position:absolute; top:16px; left:16px; background:rgba(74,14,14,.85); backdrop-filter:blur(8px); color:rgba(242,238,233,.92); font-size:11px; letter-spacing:.24em; text-transform:uppercase; padding:6px 14px; border-left:2px solid var(--go); }
body.page-eventos .cap-card-body-a { padding:clamp(28px,4vh,40px) clamp(24px,3vw,36px); background:rgba(17,30,16,.6); flex:1; display:flex; flex-direction:column; gap:14px; }
body.page-eventos .cap-card-title-a { font-family:'Playfair Display',serif; font-size:clamp(20px,2.4vw,28px); font-weight:400; color:var(--ow); line-height:1.2; }
body.page-eventos .cap-card-desc-a { font-size:23px; color:rgba(182,175,160,.75); line-height:1.78; flex:1; }
body.page-eventos .cap-card-stat-a { display:flex; align-items:baseline; gap:10px; padding-top:8px; border-top:1px solid rgba(182,141,64,.15); }
body.page-eventos .cap-card-stat-num-a { font-family:'DM Sans',sans-serif; font-size:clamp(28px,3.2vw,40px); font-weight:300; color:var(--go); font-variant-numeric:tabular-nums; line-height:1; letter-spacing:-.02em; }
body.page-eventos .cap-card-stat-lbl-a { font-size:clamp(11px,1.2vw,13px); color:rgba(182,175,160,.6); letter-spacing:.06em; }

/* ══ PLANTAS TÉCNICAS, BLOCO ARQUITETÔNICO PREMIUM ══ */
body.page-eventos .bloco-plantas {
  background:linear-gradient(180deg,#0a1209 0%,#0d1a0c 50%,#0a1209 100%);
  position:relative; z-index:10;
  padding:clamp(100px,14vh,160px) var(--safe);
  overflow:hidden;
}
body.page-eventos .bloco-plantas::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(to right,transparent,var(--bordo-prof) 20%,var(--go) 50%,var(--bordo-prof) 80%,transparent); opacity:.6; }
body.page-eventos .bloco-plantas::after { content:''; position:absolute; inset:0; background-image:repeating-linear-gradient(0deg,transparent,transparent 39px,rgba(182,141,64,.03) 40px), repeating-linear-gradient(90deg,transparent,transparent 39px,rgba(182,141,64,.03) 40px); pointer-events:none; z-index:0; }
body.page-eventos .plantas-header { position:relative; z-index:2; margin-bottom:clamp(48px,7vh,72px); }
body.page-eventos .plantas-h2 { font-family:'Playfair Display',serif; font-size:clamp(30px,4.5vw,62px); font-weight:400; line-height:1.04; letter-spacing:-.02em; color:var(--ow); margin-top:16px; }
body.page-eventos .plantas-lead { font-size:23px; color:rgba(182,175,160,.65); line-height:1.85; max-width:580px; margin-top:20px; }
body.page-eventos .plantas-grid { display:grid; grid-template-columns:1fr 1fr; gap:clamp(20px,3vw,40px); position:relative; z-index:2; }
body.page-eventos .planta-item { position:relative; overflow:hidden; border:1px solid rgba(182,141,64,.2); background:rgba(17,30,16,.5); transition:border-color .5s var(--ease),box-shadow .5s var(--ease); }
body.page-eventos .planta-item:hover { border-color:rgba(182,141,64,.5); box-shadow:0 20px 60px rgba(0,0,0,.5),0 0 0 1px rgba(182,141,64,.12); }

/* Cabeçalho técnico da planta */
body.page-eventos .planta-header { display:flex; align-items:center; justify-content:space-between; padding:14px 20px; background:rgba(11,18,10,.8); border-bottom:1px solid rgba(182,141,64,.15); position:relative; z-index:3; }
body.page-eventos .planta-header-left { display:flex; align-items:center; gap:10px; }
body.page-eventos .planta-dot { width:8px; height:8px; border-radius:50%; background:var(--go); opacity:.6; }
body.page-eventos .planta-dot:nth-child(2) { background:rgba(182,141,64,.4); }
body.page-eventos .planta-dot:nth-child(3) { background:rgba(182,141,64,.2); }
body.page-eventos .planta-label { font-size:11px; letter-spacing:.26em; text-transform:uppercase; color:rgba(182,175,160,.62); font-family:'DM Sans',sans-serif; font-weight:400; }
body.page-eventos .planta-config { font-size:11px; letter-spacing:.22em; text-transform:uppercase; color:var(--go); font-family:'DM Sans',sans-serif; opacity:.85; font-weight:400; }

/* Imagem da planta com filtros e blend ── BLOCO PRINCIPAL ── */
body.page-eventos .planta-img-wrap { position:relative; overflow:hidden; aspect-ratio:4/3; cursor:zoom-in; }
body.page-eventos .planta-img-wrap::before { content:''; position:absolute; inset:0; z-index:2; background:linear-gradient(180deg,rgba(11,18,10,.06) 0%,rgba(11,18,10,.14) 100%); pointer-events:none; transition:opacity .6s; }
body.page-eventos .planta-item:hover .planta-img-wrap::before { opacity:.4; }
/* scan line effect — sutil */
body.page-eventos .planta-img-wrap::after { content:''; position:absolute; inset:0; z-index:3; background:repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(182,141,64,.012) 4px); pointer-events:none; transition:opacity .5s; opacity:.6; }
body.page-eventos .planta-item:hover .planta-img-wrap::after { opacity:.25; }
body.page-eventos .planta-img { width:100%; height:100%; display:block; object-fit:cover; object-position:center;
  filter:saturate(.92) brightness(.98) contrast(1.04);
  transition:filter .8s var(--ease), transform 1.2s var(--ease);
}
body.page-eventos .planta-item:hover .planta-img {
  filter:saturate(1) brightness(1.02) contrast(1.02);
  transform:scale(1.02);
}
/* Overlay dourado que surge no hover */
body.page-eventos .planta-overlay { position:absolute; inset:0; z-index:4; background:linear-gradient(135deg,rgba(182,141,64,.08) 0%,transparent 60%,rgba(17,30,16,.3) 100%); opacity:0; transition:opacity .6s var(--ease); pointer-events:none; }
body.page-eventos .planta-item:hover .planta-overlay { opacity:1; }
/* Cross-hair corners */
body.page-eventos .planta-corners { position:absolute; inset:12px; z-index:5; pointer-events:none; }
body.page-eventos .planta-corners::before, body.page-eventos .planta-corners::after { content:''; position:absolute; width:20px; height:20px; opacity:0; transition:opacity .5s var(--ease); }
body.page-eventos .planta-corners::before { top:0; left:0; border-top:1px solid var(--go); border-left:1px solid var(--go); }
body.page-eventos .planta-corners::after { bottom:0; right:0; border-bottom:1px solid var(--go); border-right:1px solid var(--go); }
body.page-eventos .planta-item:hover .planta-corners::before, body.page-eventos .planta-item:hover .planta-corners::after { opacity:.8; }
/* Scan line animation no hover */
body.page-eventos .planta-scan { position:absolute; inset:0; z-index:6; pointer-events:none; overflow:hidden; opacity:0; transition:opacity .4s; }
body.page-eventos .planta-item:hover .planta-scan { opacity:1; }
body.page-eventos .planta-scan::after { content:''; position:absolute; left:0; right:0; height:1px; background:linear-gradient(to right,transparent,rgba(182,141,64,.35),transparent); animation:scanLine__page-eventos 2.8s linear infinite; }

/* Footer da planta */
body.page-eventos .planta-footer { padding:16px 20px 20px; background:rgba(11,18,10,.6); border-top:1px solid rgba(182,141,64,.1); position:relative; z-index:3; display:flex; flex-direction:column; gap:8px; }
body.page-eventos .planta-config-name { font-family:'Playfair Display',serif; font-size:clamp(15px,1.6vw,18px); font-weight:400; color:var(--ow); }
body.page-eventos .planta-stats-row { display:flex; gap:20px; flex-wrap:wrap; }
body.page-eventos .planta-stat { display:flex; flex-direction:column; gap:2px; }
body.page-eventos .planta-stat-val { font-family:'DM Sans',sans-serif; font-size:clamp(20px,2.2vw,28px); font-weight:300; color:var(--go); font-variant-numeric:tabular-nums; line-height:1; letter-spacing:-0.02em; }
body.page-eventos .planta-stat-val small { font-size:.5em; color:var(--go-lt); }
body.page-eventos .planta-stat-lbl { font-size:11px; letter-spacing:.22em; text-transform:uppercase; color:rgba(182,175,160,.6); font-weight:400; }
body.page-eventos .planta-tech-tag { display:inline-flex; align-items:center; gap:6px; font-size:11px; letter-spacing:.2em; text-transform:uppercase; color:rgba(182,141,64,.7); margin-top:6px; font-weight:400; }
body.page-eventos .planta-tech-tag::before { content:''; width:3px; height:3px; background:var(--go); transform:rotate(45deg); flex-shrink:0; }

/* ══ MINI GRID INFRAESTRUTURA ══ */
body.page-eventos .infra-mini-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:rgba(182,141,64,.2); border:1px solid rgba(182,141,64,.2); margin-top:clamp(32px,4vh,48px); }
body.page-eventos .infra-mini-card { background:rgba(11,18,10,.7); padding:clamp(28px,4vh,40px) clamp(20px,2.5vw,32px); display:flex; flex-direction:column; gap:12px; }
body.page-eventos .infra-mini-icon { width:36px; height:36px; color:#5A0F1A; flex-shrink:0; }
body.page-eventos .infra-mini-title { font-family:'Playfair Display',serif; font-size:clamp(15px,1.6vw,18px); font-weight:400; color:var(--ow); line-height:1.25; }
body.page-eventos .infra-mini-p { font-size:18px; color:rgba(182,175,160,.6); line-height:1.7; }

/* ══ FORMULÁRIO BORDÔ (ELITE) ══ */
body.page-eventos .bloco-form-a {
  background:var(--palha);
  position:relative; z-index:10;
}
body.page-eventos .bloco-form-a::before { content:''; display:block; height:1px; background:linear-gradient(to right,transparent,var(--bordo-prof) 20%,var(--go) 50%,var(--bordo-prof) 80%,transparent); opacity:.55; }
body.page-eventos .form-inner-a { display:grid; grid-template-columns:1fr 1.1fr; gap:clamp(60px,8vw,110px); padding:clamp(100px,14vh,160px) 0; }
body.page-eventos .form-left-a { display:flex; flex-direction:column; }
body.page-eventos .form-h2-a { font-family:'Playfair Display',serif; font-size:clamp(28px,3.5vw,50px); font-weight:400; line-height:1.06; letter-spacing:-.015em; color:var(--ow); margin:12px 0 clamp(18px,3vh,26px); }
body.page-eventos .form-lead-a { font-size:23px; color:rgba(182,175,160,.65); line-height:1.85; margin-bottom:clamp(28px,4vh,40px); }
body.page-eventos .form-contact-btns-a { display:flex; flex-direction:column; gap:14px; margin-bottom:clamp(28px,4vh,44px); }
body.page-eventos .btn-form-wa-a { display:inline-flex; align-items:center; gap:12px; background:transparent; border:1px solid rgba(182,141,64,.45); color:var(--go); text-decoration:none; font-size:clamp(12px,1.15vw,14px); letter-spacing:.22em; text-transform:uppercase; padding:14px clamp(20px,2.5vw,28px); transition:all .35s var(--ease); }
body.page-eventos .btn-form-wa-a:hover { background:rgba(182,141,64,.08); border-color:rgba(182,141,64,.7); color:var(--go-lt); transform:translateY(-1px); }
body.page-eventos .btn-form-loc-a, body.page-eventos .btn-form-email-a { display:inline-flex; align-items:center; gap:12px; background:transparent; border:1px solid rgba(182,141,64,.28); color:rgba(242,238,233,.6); text-decoration:none; font-size:clamp(12px,1.15vw,14px); letter-spacing:.22em; text-transform:uppercase; padding:12px clamp(18px,2vw,24px); transition:all .3s var(--ease); }
body.page-eventos .btn-form-loc-a:hover, body.page-eventos .btn-form-email-a:hover { border-color:rgba(182,141,64,.55); color:var(--ow); }
body.page-eventos .form-contact-info-a { font-size:clamp(11px,1vw,13px); color:rgba(182,175,160,.45); line-height:1.9; }
/* Formulário cor Bordô sobre fundo Palha */
body.page-eventos .form-wrap-a {
  background:linear-gradient(145deg,#3d0a11 0%,#4a0e0e 55%,#350810 100%);
  border:1px solid rgba(245,235,221,.15);
  padding:clamp(36px,5vh,52px) clamp(28px,4vw,48px);
  box-shadow:0 40px 100px rgba(0,0,0,.45),0 12px 32px rgba(0,0,0,.28);
  position:relative;
  opacity:0; transform:translateY(32px);
  transition:opacity .8s var(--ease),transform .8s var(--ease);
}
body.page-eventos .form-wrap-a.visible { opacity:1; transform:none; }
body.page-eventos .form-wrap-a::before { content:''; position:absolute; top:0; left:0; width:60px; height:2px; background:linear-gradient(to right,var(--palha-f),rgba(245,235,221,.2)); }
body.page-eventos .form-title-a { font-family:'Playfair Display',serif; font-size:clamp(20px,2.2vw,28px); font-weight:400; color:var(--palha-f); margin-bottom:6px; }
body.page-eventos .form-sub-a { font-size:clamp(11px,1.1vw,13px); color:rgba(245,235,221,.5); margin-bottom:28px; letter-spacing:.04em; }
body.page-eventos .form-grid-a { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
body.page-eventos .form-g-a { display:flex; flex-direction:column; gap:6px; }
body.page-eventos .form-g-a.form-full-a { grid-column:1/-1; }
body.page-eventos .form-g-a label { font-size:clamp(13px,1.3vw,15px); letter-spacing:.3em; text-transform:uppercase; color:rgba(245,235,221,.7); font-weight:600; }
body.page-eventos .form-g-a input, body.page-eventos .form-g-a select, body.page-eventos .form-g-a textarea { background:rgba(245,235,221,.06); border:none; border-bottom:1px solid rgba(245,235,221,.2); padding:16px 12px; color:var(--palha-f); font-family:'DM Sans',sans-serif; font-size:clamp(15px,1.45vw,17px); outline:none; transition:all .3s var(--ease); width:100%; -webkit-appearance:none; appearance:none; }
body.page-eventos .form-g-a input::placeholder, body.page-eventos .form-g-a textarea::placeholder { color:rgba(245,235,221,.28); }
body.page-eventos .form-g-a input:focus, body.page-eventos .form-g-a select:focus, body.page-eventos .form-g-a textarea:focus { border-bottom-color:var(--palha-f); background:rgba(245,235,221,.1); }
body.page-eventos .form-g-a select { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23F5EBDD' stroke-width='1.2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 18px center; padding-right:44px; cursor:pointer; }
body.page-eventos .form-g-a select option { background:#3d0a11; color:var(--palha-f); }
body.page-eventos .form-g-a textarea { resize:vertical; min-height:110px; line-height:1.65; }
body.page-eventos .form-bot-a { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:20px; padding-top:16px; border-top:1px solid rgba(245,235,221,.15); flex-wrap:wrap; }
body.page-eventos .form-note-a { font-size:clamp(10px,.9vw,11px); color:rgba(245,235,221,.35); }
body.page-eventos .btn-form-submit { display:inline-flex; align-items:center; gap:14px; background:transparent; color:var(--palha-f); border:1px solid rgba(245,235,221,.4); text-decoration:none; font-size:clamp(11px,1.1vw,13px); letter-spacing:.3em; text-transform:uppercase; padding:20px clamp(32px,5vw,56px); font-weight:600; font-family:'DM Sans',sans-serif; transition:all .4s var(--ease); position:relative; overflow:hidden; cursor:pointer; }
body.page-eventos .btn-form-submit::before { content:''; position:absolute; inset:0; background:rgba(245,235,221,.1); transform:translateY(101%); transition:transform .5s cubic-bezier(0.16,1,0.3,1); z-index:0; }
body.page-eventos .btn-form-submit>* { position:relative; z-index:1; }
body.page-eventos .btn-form-submit:hover::before { transform:translateY(0); }
body.page-eventos .btn-form-submit:hover { border-color:var(--palha-f); transform:translateY(-2px); }
body.page-eventos .btn-form-submit svg { transition:transform .3s; }
body.page-eventos .btn-form-submit:hover svg { transform:translateX(4px); }

/* ══ CTA FINAL ══ */
body.page-eventos .cta-final-a { position:relative; overflow:hidden; min-height:65vh; display:flex; flex-direction:column; justify-content:center; z-index:10; }
body.page-eventos .cta-final-bg-a { position:absolute; inset:0; background-image:url('../assets/images/rodape.jpg'); background-size:cover; background-position:center; background-attachment:fixed; z-index:0; filter:brightness(.38) saturate(.7); }
@media(max-width:960px) { body.page-eventos .cta-final-bg-a { background-attachment:scroll; } }
body.page-eventos .cta-final-ov-a { position:absolute; inset:0; background:rgba(17,30,16,.7); z-index:1; }
body.page-eventos .cta-final-a::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; z-index:6; background:linear-gradient(to right,transparent,var(--acento) 25%,var(--go) 50%,var(--acento) 75%,transparent); opacity:.8; }
body.page-eventos .cta-content-a { position:relative; z-index:3; padding:clamp(80px,12vh,130px) var(--safe); }
body.page-eventos .cta-h2-a { font-family:'Playfair Display',serif; font-size:clamp(28px,4vw,60px); font-weight:400; line-height:1.06; letter-spacing:-.015em; color:var(--ow); margin-bottom:clamp(16px,2.5vh,24px); }
body.page-eventos .cta-p-a { font-size:23px; color:rgba(242,238,233,.65); line-height:1.9; max-width:580px; margin-bottom:clamp(32px,5vh,48px); }
body.page-eventos .cta-btns-a { display:flex; gap:20px; flex-wrap:wrap; align-items:center; }
body.page-eventos .btn-wpp-final-a { display:inline-flex; align-items:center; gap:14px; background:transparent; color:var(--ow); border:1px solid rgba(182,141,64,.55); text-decoration:none; font-size:clamp(9px,1vw,11px); letter-spacing:.25em; text-transform:uppercase; padding:20px clamp(32px,5vw,56px); font-weight:500; font-family:'DM Sans',sans-serif; transition:all .4s var(--ease); position:relative; overflow:hidden; }
body.page-eventos .btn-wpp-final-a::before { content:''; position:absolute; inset:0; background:var(--go); transform:translateY(101%); transition:transform .5s cubic-bezier(0.16,1,0.3,1); z-index:0; }
body.page-eventos .btn-wpp-final-a>* { position:relative; z-index:1; }
body.page-eventos .btn-wpp-final-a:hover::before { transform:translateY(0); }
body.page-eventos .btn-wpp-final-a:hover { color:var(--verde); border-color:var(--go); transform:translateY(-2px); }
body.page-eventos .btn-wpp-final-a svg { transition:transform .3s; }
body.page-eventos .btn-wpp-final-a:hover svg { transform:translateX(4px); }

/* ══ FOOTER ══ */
body.page-eventos footer { background:var(--verde); border-top:1px solid var(--go-bd); padding:clamp(64px,9vh,100px) 0 clamp(48px,7vh,64px); position:relative; z-index:2; }
body.page-eventos footer::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(to right,transparent,var(--bordo-prof) 25%,var(--go) 50%,var(--bordo-prof) 75%,transparent); opacity:.5; }
body.page-eventos .footer-top { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:clamp(40px,6vw,72px); padding-bottom:clamp(48px,7vh,72px); border-bottom:1px solid var(--go-bd); }
body.page-eventos .ftr-brand-name { font-family:'Playfair Display',serif; font-size:clamp(18px,2vw,23px); letter-spacing:.04em; margin-bottom:4px; color:var(--go); }
body.page-eventos .ftr-brand-tag { font-size:clamp(11px,1.05vw,12.5px); letter-spacing:.26em; text-transform:uppercase; color:rgba(182,141,64,.55); margin-bottom:18px; }
body.page-eventos .ftr-about { font-size:clamp(12px,1.2vw,13px); color:rgba(242,238,233,.45); line-height:1.85; max-width:290px; }
body.page-eventos .ftr-col-head { font-size:clamp(11px,1.05vw,12.5px); letter-spacing:.24em; text-transform:uppercase; color:var(--go); margin-bottom:22px; }
body.page-eventos .ftr-col ul { list-style:none; display:flex; flex-direction:column; gap:12px; }
body.page-eventos .ftr-col a { font-size:clamp(12px,1.2vw,13px); color:rgba(242,238,233,.45); text-decoration:none; transition:all .3s var(--ease); display:inline-flex; align-items:center; }
body.page-eventos .ftr-col a:hover { color:var(--ow); transform:translateX(4px); }
body.page-eventos .ftr-ico { flex-shrink:0; margin-right:9px; opacity:.62; transition:transform .35s var(--ease), opacity .3s; }
body.page-eventos .ftr-col a:hover .ftr-ico { transform:scale(1.16); opacity:1; }
body.page-eventos .ftr-col li > .ftr-ico { opacity:.5; }
body.page-eventos .footer-bottom { display:flex; justify-content:space-between; align-items:center; padding-top:28px; flex-wrap:wrap; gap:16px; }
body.page-eventos .ftr-copy { font-size:clamp(10px,1vw,11.5px); color:rgba(242,238,233,.35); letter-spacing:.06em; }
body.page-eventos .ftr-copy strong { color:var(--go); font-weight:400; }
body.page-eventos .ftr-socials { display:flex; gap:24px; }
body.page-eventos .ftr-socials a { font-size:clamp(12px,1.15vw,13.5px); letter-spacing:.2em; text-transform:uppercase; color:rgba(242,238,233,.35); text-decoration:none; transition:color .3s; }
body.page-eventos .ftr-socials a:hover { color:var(--bordo-lt); }
/* Correção pontual: reserva espaço para o link "WhatsApp" do rodapé não ficar atrás do botão flutuante fixo, apenas na faixa onde ambos colidem (tablet/notebook) */
@media(min-width:641px) and (max-width:1439px) { body.page-eventos .ftr-socials { padding-right:90px; } }

/* ══ WHATSAPP FLOAT GLASSMORPHISM ══ */
body.page-eventos .wpp-float-new {
  position:fixed; bottom:34px; right:34px; z-index:800;
  width:78px; height:78px; border-radius:50%;
  background: radial-gradient(circle at 30% 30%, rgba(207,163,85,.20), rgba(20,30,18,.84));
  backdrop-filter: blur(14px) saturate(125%);
  -webkit-backdrop-filter: blur(14px) saturate(125%);
  border:0.5px solid rgba(207,163,85,.50);
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 12px 40px rgba(182,141,64,.32),0 4px 18px rgba(0,0,0,.22),0 0 0 1px rgba(207,163,85,.16),0 0 22px rgba(207,163,85,.18),inset 0 1px 0 rgba(255,255,255,.22);
  text-decoration:none;
  transition:all .4s cubic-bezier(.2,.7,.2,1);
}
body.page-eventos .wpp-float-new:hover {
  transform:translateY(-3px) scale(1.07);
  border-color:rgba(207,163,85,.85);
  box-shadow:0 20px 56px rgba(182,141,64,.46),0 8px 24px rgba(0,0,0,.28),0 0 0 1px rgba(207,163,85,.36),0 0 36px rgba(207,163,85,.32),inset 0 1px 0 rgba(255,255,255,.32);
}
body.page-eventos .wpp-float-new svg { width:32px; height:32px; fill:rgba(232,200,140,1); display:block; pointer-events:none; filter:drop-shadow(0 2px 8px rgba(0,0,0,.40)) drop-shadow(0 0 10px rgba(207,163,85,.40)); }
@media(max-width:640px) {
  body.page-eventos .wpp-float-new { width:64px; height:64px; bottom:20px; right:20px; }
  body.page-eventos .wpp-float-new svg { width:26px; height:26px; }
}
@media(max-width:380px) {
  body.page-eventos .wpp-float-new { width:58px; height:58px; bottom:16px; right:16px; }
  body.page-eventos .wpp-float-new svg { width:24px; height:24px; }
}

/* ══ TAMANHOS DE TEXTO ══ */
body.page-eventos p, body.page-eventos .corp-p-a, body.page-eventos .social-p-a, body.page-eventos .shows-p-a, body.page-eventos .infra-lead-a, body.page-eventos .infra-card-p-a, body.page-eventos .infra-rooftop-p-a, body.page-eventos .cap-lead-a, body.page-eventos .cap-card-desc-a, body.page-eventos .form-lead-a, body.page-eventos .cta-p-a, body.page-eventos .reveal-win-p, body.page-eventos .si-desc-a, body.page-eventos .cs-p, body.page-eventos .janela-win-p, body.page-eventos .planta-lead { font-size:23px; }
@media(max-width:640px)  {
  body.page-eventos p, body.page-eventos .corp-p-a, body.page-eventos .social-p-a, body.page-eventos .shows-p-a, body.page-eventos .infra-lead-a, body.page-eventos .infra-card-p-a, body.page-eventos .infra-rooftop-p-a, body.page-eventos .cap-lead-a, body.page-eventos .cap-card-desc-a, body.page-eventos .form-lead-a, body.page-eventos .cta-p-a, body.page-eventos .reveal-win-p, body.page-eventos .si-desc-a, body.page-eventos .cs-p, body.page-eventos .janela-win-p, body.page-eventos .planta-lead { font-size:18px!important; }
}

/* ══ RESPONSIVO ══ */
@media(max-width:1100px) {
  body.page-eventos .nav-links, body.page-eventos .nav-cta { display:none; }
  body.page-eventos .hamburger { display:flex; }
  body.page-eventos .corner-tr, body.page-eventos .corner-bl, body.page-eventos .scroll-cue { display:none!important; }
  body.page-eventos .footer-top { grid-template-columns:1fr 1fr; gap:32px; }
  body.page-eventos .infra-grid-a { grid-template-columns:1fr 1fr; }
  body.page-eventos .cap-grid-a { grid-template-columns:1fr; }
  body.page-eventos .plantas-grid { grid-template-columns:1fr; }
  body.page-eventos .janelas-duplas { grid-template-columns:1fr; }
}
@media(max-width:960px) {
  body.page-eventos { --safe: clamp(20px,5vw,40px); }
  body.page-eventos .hero-particles { display:none; }
  body.page-eventos .corp-split-a, body.page-eventos .social-split-a, body.page-eventos .shows-split-a { grid-template-columns:1fr; }
  body.page-eventos .corp-foto-a, body.page-eventos .social-foto-a, body.page-eventos .shows-foto-a { min-height:280px; }
  body.page-eventos .corp-corpo-a, body.page-eventos .social-corpo-a, body.page-eventos .shows-corpo-a { padding:clamp(40px,6vh,60px) var(--safe); }
  body.page-eventos .corp-specs-a { grid-template-columns:repeat(2,1fr); }
  body.page-eventos .reveal-win { height:60vh; min-height:360px; }
  body.page-eventos .reveal-win-selo { display:none!important; }
  body.page-eventos .form-inner-a { grid-template-columns:1fr; }
  body.page-eventos .infra-rooftop-a { grid-template-columns:1fr; }
  body.page-eventos .form-grid-a { grid-template-columns:1fr; }
  body.page-eventos .grid-cards-equal { grid-template-columns:repeat(2,1fr); }
  body.page-eventos .card-sol { grid-template-columns:1fr; }
  body.page-eventos .cs-img { min-height:280px; }
  body.page-eventos .infra-mini-grid { grid-template-columns:repeat(2,1fr); }
}
@media(max-width:640px) {
  body.page-eventos { cursor:auto; }
  body.page-eventos .cursor, body.page-eventos .cursor-ring { display:none; }
  body.page-eventos .hero-h1 { font-size:clamp(34px,9vw,52px)!important; }
  body.page-eventos .hero-sub { font-size:19px !important; line-height:1.55 !important; }
  body.page-eventos .hero-support { font-size:14.5px !important; line-height:1.7 !important; }
  body.page-eventos .infra-grid-a { grid-template-columns:1fr; }
  body.page-eventos .footer-top { grid-template-columns:1fr; }
  body.page-eventos .footer-bottom { flex-direction:column; text-align:center; }
  body.page-eventos .cta-btns-a { flex-direction:column; width:100%; }
  body.page-eventos .btn-wpp-final-a { width:100%; justify-content:center; }
  body.page-eventos .infra-mini-grid { grid-template-columns:1fr!important; }
  body.page-eventos .plantas-grid { gap:clamp(16px,2vw,24px); }
}
@media(max-width:480px) {
  body.page-eventos .grid-cards-equal { grid-template-columns:1fr 1fr!important; }
  body.page-eventos .grid-card-eq { aspect-ratio:1/1; }
  body.page-eventos .corp-specs-a { grid-template-columns:1fr 1fr; }
}


body.page-eventos header nav a, body.page-eventos .menu a, body.page-eventos .navbar a, body.page-eventos nav ul li a {
font-size:18px !important;
font-weight:600 !important;
letter-spacing:.02em !important;
}
@media(max-width:768px) {
body.page-eventos header nav a, body.page-eventos .menu a, body.page-eventos .navbar a, body.page-eventos nav ul li a {
font-size:16px !important;
}
}

/* ── Hero stats mobile: abaixo do título ── */
@media(max-width:768px)  {
  body.page-eventos .hero-stats { position:absolute; right:var(--safe); top:50%; transform:translateY(-50%); display:flex; flex-direction:column; z-index:4; background:rgba(6,10,6,.52); backdrop-filter:blur(12px) saturate(1.2); -webkit-backdrop-filter:blur(12px) saturate(1.2); border:1px solid rgba(182,141,64,.12); border-radius:2px; overflow:hidden; width:clamp(160px,15vw,210px); }
  body.page-eventos .hero-stat {
    padding:14px 20px;
    border-left:none !important;
    border-top:none !important;
    border-right:1px solid rgba(255,255,255,.06);
    flex:1 1 calc(33% - 2px);
    align-items:center;
    text-align:center;
  }
  body.page-eventos .hero-stat:last-of-type { border-right:none; }
  body.page-eventos .hero-stat-lbl { text-align:center; }
  body.page-eventos .hero-stat-val { font-size:clamp(18px,4.5vw,26px) !important; text-align:center; justify-content:center; }
  body.page-eventos .hero-content { padding-bottom:120px; }
}

/* ── Form section on palha background — TEXTO BORDÔ ── */
body.page-eventos .form-h2-a { color:var(--bordo-prof) !important; }
body.page-eventos .form-lead-a { color:rgba(74,14,14,.78) !important; }
body.page-eventos .form-contact-info-a { color:rgba(74,14,14,.6) !important; }
body.page-eventos .bloco-form-a .btn-form-loc-a, body.page-eventos .bloco-form-a .btn-form-email-a {
  color:var(--bordo-prof) !important;
  border-color:rgba(74,14,14,.28);
}
body.page-eventos .bloco-form-a .btn-form-loc-a:hover, body.page-eventos .bloco-form-a .btn-form-email-a:hover {
  border-color:var(--bordo-prof);
  background:var(--bordo-prof);
  color:var(--palha) !important;
}
body.page-eventos .bloco-form-a::before { opacity:.4; }



/* REFINO_PREMIUM_FINAL */
/* ═══════════════════════════════════════════════════════════════
   REFINO PREMIUM — Camada final de polimento
   Ritmo vertical · Hover suave · Respiração · Overlays sutis
═══════════════════════════════════════════════════════════════ */

/* Ritmo vertical — herdado por todos os parágrafos longos */
body.page-eventos p { line-height:1.72; }
body.page-eventos .hero-sub, body.page-eventos .reveal-win-p, body.page-eventos .corp-p-a, body.page-eventos .infra-rooftop-p-a, body.page-eventos .shows-p-a, body.page-eventos .pilar-desc, body.page-eventos .vpoint-desc, body.page-eventos .vantagem-intro, body.page-eventos .bloco-intro, body.page-eventos .si-desc-a, body.page-eventos .infra-card-p-a, body.page-eventos .cs-p, body.page-eventos .plantas-lead, body.page-eventos .ftr-text, body.page-eventos .quote-text, body.page-eventos blockquote, body.page-eventos .infra-lead-a {
  line-height: 1.78;
}

/* Eyebrow — ritmo unificado e respiração */
body.page-eventos .eyebrow { margin-bottom: clamp(28px, 3.5vh, 40px); gap: 16px; }
body.page-eventos .eyebrow-line { width: 44px; transition: width .6s var(--ease), background .4s; }
body.page-eventos .eyebrow:hover .eyebrow-line { width: 60px; }
body.page-eventos .eyebrow span { font-weight: 500; }

/* Headings — espaço respiratório aumentado */
body.page-eventos h2, body.page-eventos h3 { letter-spacing: -.022em; }

/* Microinterações — cards genéricos */
body.page-eventos .grid-card-eq, body.page-eventos .infra-card-a, body.page-eventos .pilar-card, body.page-eventos .vantagem-point, body.page-eventos .planta-item, body.page-eventos .corp-foto-a {
  transition: transform .55s cubic-bezier(0.16,1,0.3,1),
              box-shadow .55s cubic-bezier(0.16,1,0.3,1),
              border-color .45s ease;
}

/* Imagens grid — overlay sutil + bloom no hover */
body.page-eventos .grid-card-eq { position: relative; overflow: hidden; }
body.page-eventos .grid-card-eq::after {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0) 45%, rgba(0,0,0,.42) 100%);
  pointer-events: none;
  transition: opacity .6s var(--ease);
  z-index: 1;
}
body.page-eventos .grid-card-eq:hover::after { opacity: .85; }
body.page-eventos .grid-card-eq img {
  transition: transform 1.1s cubic-bezier(0.16,1,0.3,1), filter .8s ease;
}
body.page-eventos .grid-card-eq:hover img {
  transform: scale(1.04);
  filter: brightness(1.04) saturate(1.04);
}
body.page-eventos .grid-card-content { z-index: 2; }

/* Botões CTA — refinamento de transições */
body.page-eventos .btn-primary, body.page-eventos .btn-ghost-dk, body.page-eventos .btn-form-wa-a, body.page-eventos .btn-form-loc-a, body.page-eventos .btn-form-email-a, body.page-eventos .nav-cta, body.page-eventos .btn-hero-ig {
  transition: transform .45s cubic-bezier(0.16,1,0.3,1),
              background .35s ease,
              border-color .35s ease,
              color .35s ease,
              box-shadow .45s ease;
}
body.page-eventos .btn-primary:hover, body.page-eventos .btn-ghost-dk:hover {
  transform: translateY(-1px);
}

/* Marquee — respiração horizontal */
body.page-eventos .marquee-item { padding: 14px 32px; }

/* Reveal-win parágrafos — espaço respiratório premium */
body.page-eventos .reveal-win-p { margin-bottom: clamp(8px, 1.5vh, 16px); }

/* Footer — ritmo vertical */
body.page-eventos .ftr-col-head { margin-bottom: 24px; }

/* Pilares — respiração interna */
body.page-eventos .pilar-card { padding: clamp(28px, 3.5vw, 44px); }

/* Quote — refino tipográfico */
body.page-eventos blockquote { letter-spacing: -.005em; }

/* Acessibilidade — focus state premium */
body.page-eventos a:focus-visible, body.page-eventos button:focus-visible {
  outline: 1px solid var(--go);
  outline-offset: 4px;
  border-radius: 1px;
}

/* Reduced motion — respeito */
@media (prefers-reduced-motion: reduce)  {
  body.page-eventos *, body.page-eventos *::before, body.page-eventos *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}


/* ═══════════════════════════════════════════════════════════════════
   REFINO MASTER · CAMADA FINAL DE PRODUÇÃO
   Aplicado uniformemente em todas as 4 páginas.
   Não recria nada. Apenas refina o que já existe.
   ─────────────────────────────────────────────────────────────────
   1.  Redução inteligente de efeitos
   2.  Tipografia premium real (legibilidade global)
   3.  Botões e CTA · padrão único
   4.  Microinterações elegantes
   5.  Imagens · zoom e overlay refinados
   6.  Full Scroll Experience · transições contínuas
   7.  Refino de cards e blocos
   8.  Responsividade final (mobile · tablet · desktop)
═══════════════════════════════════════════════════════════════════ */

/* ── 1. REDUÇÃO DE EFEITOS ─────────────────────────────────────── */
body.page-eventos .hero-particles, body.page-eventos .grain { display:none !important; }
body.page-eventos .hero-bg-letters { opacity:.42 !important; }
body.page-eventos .hero-grid { opacity:.22 !important; }

/* Cursor custom — visualmente mais limpo */
body.page-eventos .cursor { box-shadow:0 0 12px rgba(182,141,64,.28) !important; }
body.page-eventos .cursor-ring { border-color:rgba(182,141,64,.35) !important; }

/* ── 2. TIPOGRAFIA PREMIUM REAL ────────────────────────────────── */
body.page-eventos {
  font-feature-settings:"ss01","kern","liga";
  text-rendering:optimizeLegibility;
}

/* Hierarquia headers */
body.page-eventos h1, body.page-eventos .hero-h1 {
  letter-spacing:-.028em !important;
  line-height:1.02 !important;
}
body.page-eventos h2 { letter-spacing:-.022em; }

/* Parágrafos: legibilidade, ritmo */
body.page-eventos p { line-height:1.78; }

/* Eyebrows (rótulos seção) */
body.page-eventos .eyebrow span, body.page-eventos .hero-eyebrow, body.page-eventos .hero-eyebrow-dourado, body.page-eventos .reveal-win-eyebrow, body.page-eventos .cand-eyebrow, body.page-eventos .cs-tag, body.page-eventos .planta-config, body.page-eventos .planta-label {
  letter-spacing:.34em !important;
  font-weight:600 !important;
}

/* Subtítulos (Playfair italic) — peso refinado */
body.page-eventos .hero-sub, body.page-eventos .reveal-win-p, body.page-eventos .cand-p, body.page-eventos .gf-p {
  font-weight:300 !important;
}

/* ── 3. BOTÕES E CTA · PADRÃO ÚNICO ────────────────────────────── */
body.page-eventos .btn-primary, body.page-eventos .btn-bordo, body.page-eventos .btn-ghost, body.page-eventos .btn-ghost-dk, body.page-eventos .btn-outline, body.page-eventos .btn-outline-amber, body.page-eventos .btn-form-submit, body.page-eventos .cand-btn-submit, body.page-eventos .cand-wa, body.page-eventos .nav-cta {
  font-family:'DM Sans', sans-serif !important;
  letter-spacing:.24em !important;
  text-transform:uppercase !important;
  font-weight:500 !important;
  transition:all .45s cubic-bezier(.22,1,.36,1) !important;
  will-change:transform;
}

body.page-eventos .btn-primary {
  padding:18px clamp(34px,5vw,52px) !important;
  font-size:clamp(11px,1.05vw,12.5px) !important;
  border-width:1px !important;
}
body.page-eventos .btn-primary:hover {
  transform:translateY(-2px) !important;
  box-shadow:0 14px 36px rgba(182,141,64,.22) !important;
}
body.page-eventos .btn-primary:active { transform:translateY(0) !important; }

body.page-eventos .btn-ghost, body.page-eventos .btn-ghost-dk {
  font-size:clamp(10px,1vw,11.5px) !important;
}
body.page-eventos .btn-ghost:hover .ghost-line, body.page-eventos .btn-ghost-dk:hover .ghost-line { width:54px !important; }

body.page-eventos .nav-cta {
  font-size:clamp(8px,1vw,9.5px) !important;
  padding:11px clamp(18px,2.4vw,28px) !important;
}

/* ── 4. NAV refinado ──────────────────────────────────────────── */
body.page-eventos nav {
  height:74px !important;
  transition:height .45s cubic-bezier(.22,1,.36,1),
             background .45s, border-color .45s, box-shadow .45s !important;
}
body.page-eventos nav.scrolled { height:64px !important; }
body.page-eventos .nav-logo-main { font-weight:500 !important; letter-spacing:.05em !important; }
body.page-eventos .nav-logo-sub { letter-spacing:.32em !important; }

/* ── 5. IMAGENS · ZOOM E OVERLAY REFINADO ─────────────────────── */
/* Cards com imagem ganham zoom suave no hover, overlay sofisticado */
body.page-eventos .grid-card-eq img, body.page-eventos .tipo-card img, body.page-eventos .cs-img-bg, body.page-eventos .curadoria-foto .win-bg, body.page-eventos .gastronomia-foto .win-bg, body.page-eventos .bloco-foto .win-bg, body.page-eventos .janela-foto-bg {
  transition:transform 1.4s cubic-bezier(.22,1,.36,1),
             filter .8s cubic-bezier(.22,1,.36,1) !important;
}
body.page-eventos .grid-card-eq:hover img, body.page-eventos .cs-img:hover .cs-img-bg, body.page-eventos .curadoria-foto:hover .win-bg, body.page-eventos .gastronomia-foto:hover .win-bg, body.page-eventos .bloco-foto:hover .win-bg, body.page-eventos .janela-foto:hover .janela-foto-bg {
  transform:scale(1.06) !important;
  filter:brightness(1.04) saturate(1.08) !important;
}

/* Overlay de cards mais sofisticado: gradient + leve vinheta inferior */
body.page-eventos .grid-card-eq::after {
  background:linear-gradient(to top,
    rgba(8,14,8,.78) 0%,
    rgba(8,14,8,.18) 55%,
    transparent 90%) !important;
}

/* ── 6. FULL SCROLL EXPERIENCE · TRANSIÇÕES CONTÍNUAS ─────────── */
/* Cada esteira agora dissolve-se suavemente nos blocos vizinhos */
body.page-eventos .marquee-strip {
  position:relative;
  z-index:5;
}
body.page-eventos .marquee-strip::before, body.page-eventos .marquee-strip::after {
  content:'';
  position:absolute;
  left:0; right:0;
  height:24px;
  pointer-events:none;
  z-index:6;
}
body.page-eventos .marquee-strip::before { top:0; }
body.page-eventos .marquee-strip::after { bottom:0; }

/* Esteira ouro/gold */
body.page-eventos .marquee-strip.mq-gold::before { background:linear-gradient(to bottom, currentColor, transparent); opacity:.35; }
body.page-eventos .marquee-strip.mq-gold::after { background:linear-gradient(to top, currentColor, transparent); opacity:.35; }

/* Transições por par de seção: suaviza o "corte" entre blocos */
body.page-eventos .win::before {
  content:'';
  position:absolute;
  top:-1px; left:0; right:0; height:80px;
  background:linear-gradient(to bottom, rgba(8,14,8,.55), transparent);
  z-index:2;
  pointer-events:none;
}
body.page-eventos .win::after {
  content:'';
  position:absolute;
  bottom:0; left:0; right:0; height:90px;
  background:linear-gradient(to top, rgba(8,14,8,.45), transparent);
  z-index:2;
  pointer-events:none;
}

/* Container principal do reveal-win precisa permitir que o body interno fique acima do gradient */
body.page-eventos .win .reveal-win-body, body.page-eventos .win .win-rooftop-body, body.page-eventos .win .win-rooftop-lj-body { z-index:5 !important; }
body.page-eventos .win .reveal-win-num, body.page-eventos .win .reveal-win-selo, body.page-eventos .win .win-rooftop-num, body.page-eventos .win .win-rooftop-lj-num, body.page-eventos .win .win-rooftop-stats, body.page-eventos .win .win-rooftop-lj-stats { z-index:5 !important; }

/* Sec-palha · sec-verde · sec-dourado: transição superior suave para visualmente fundir */
body.page-eventos .sec-palha, body.page-eventos .sec-verde, body.page-eventos .sec-institucional, body.page-eventos .bloco-verde, body.page-eventos .bloco-dourado, body.page-eventos .bloco-curadoria, body.page-eventos .bloco-gastronomia, body.page-eventos .bloco-tipologia, body.page-eventos .bloco-diferenciais, body.page-eventos .bloco-corp-a, body.page-eventos .bloco-social-a, body.page-eventos .bloco-shows-a, body.page-eventos .bloco-infra-a, body.page-eventos .bloco-form-a, body.page-eventos .bloco-formulario, body.page-eventos .bloco-candidatura, body.page-eventos .bloco-plantas, body.page-eventos .sec-porque {
  position:relative;
}

/* ── 7. REFINO DE CARDS E BLOCOS ──────────────────────────────── */
body.page-eventos .pilar-card, body.page-eventos .tipo-card, body.page-eventos .infra-card-a, body.page-eventos .dif-card, body.page-eventos .porq-item, body.page-eventos .vantagem-point, body.page-eventos .si-num-a, body.page-eventos .grid-card-eq {
  transition:transform .55s cubic-bezier(.22,1,.36,1),
             box-shadow .55s, border-color .45s !important;
}
body.page-eventos .pilar-card:hover, body.page-eventos .tipo-card:hover, body.page-eventos .infra-card-a:hover, body.page-eventos .dif-card:hover, body.page-eventos .porq-item:hover, body.page-eventos .vantagem-point:hover {
  transform:translateY(-4px);
}

/* Fields de formulário mais respirados e elegantes */
body.page-eventos .form-input, body.page-eventos .form-select, body.page-eventos .form-textarea, body.page-eventos .cand-fg input, body.page-eventos .cand-fg select, body.page-eventos .cand-fg textarea, body.page-eventos .form-g-a input, body.page-eventos .form-g-a select, body.page-eventos .form-g-a textarea {
  font-size:clamp(14px,1.3vw,16px) !important;
  padding-top:14px !important;
  padding-bottom:14px !important;
  transition:border-color .35s, background .35s !important;
}

/* Footer · mais respirado */
body.page-eventos footer { border-top:1px solid rgba(182,141,64,.18); }

/* ── 8. RESPONSIVIDADE FINAL · MOBILE / TABLET ────────────────── */

/* Tablet */
@media (max-width: 1100px)  {
  body.page-eventos { --safe: clamp(20px, 5vw, 56px); }
  body.page-eventos .hero-stats { width: clamp(140px, 18vw, 180px) !important; }
}

/* Mobile geral */
@media (max-width: 760px)  {
  body.page-eventos { --safe: 22px; }
  body.page-eventos { line-height:1.7; }
  body.page-eventos nav { height:60px !important; padding:0 18px !important; }
  body.page-eventos nav.scrolled { height:54px !important; }
  body.page-eventos .nav-logo-main { font-size:18px !important; }
  body.page-eventos .nav-logo-sub { font-size:8.5px !important; letter-spacing:.28em !important; }
  body.page-eventos .nav-cta { display:none !important; }
  body.page-eventos .nav-links { display:none !important; }
  body.page-eventos .hamburger { display:flex !important; }

  body.page-eventos .hero-content { padding:120px 22px 110px !important; }
  body.page-eventos .hero-h1 { font-size:clamp(34px,8vw,48px) !important; line-height:1.05 !important; }
  body.page-eventos .hero-sub { font-size:clamp(17px,4.6vw,21px) !important; line-height:1.5 !important; }
  body.page-eventos .hero-support { font-size:14.5px !important; line-height:1.65 !important; }
  body.page-eventos .hero-eyebrow, body.page-eventos .hero-eyebrow-dourado { font-size:11px !important; letter-spacing:.28em !important; }
  body.page-eventos .hero-stats { display:none !important; }

  body.page-eventos .corner-tr, body.page-eventos .corner-bl, body.page-eventos .hero-corner-tr { display:none !important; }
  body.page-eventos .hero-bg-letters { font-size:160px !important; opacity:.18 !important; }

  body.page-eventos .reveal-win-num, body.page-eventos .win-rooftop-num, body.page-eventos .win-rooftop-lj-num { font-size:80px !important; opacity:.22 !important; }
  body.page-eventos .reveal-win-selo { display:none !important; }
  body.page-eventos .reveal-win-h2 { font-size:clamp(28px,7vw,38px) !important; line-height:1.06 !important; }
  body.page-eventos .reveal-win-body, body.page-eventos .win-rooftop-body, body.page-eventos .win-rooftop-lj-body { padding:60px 22px 70px !important; }
  body.page-eventos .win, body.page-eventos .reveal-win, body.page-eventos .win-rooftop, body.page-eventos .win-rooftop-lj { min-height:78vh !important; }

  body.page-eventos .marquee-strip { height:46px !important; }
  body.page-eventos .marquee-item { font-size:11px !important; padding:0 18px !important; }

  body.page-eventos .pilares-grid, body.page-eventos .tipologia-grid, body.page-eventos .dif-grid, body.page-eventos .grid-cards-equal { grid-template-columns:1fr !important; }
  body.page-eventos .grid-card-eq { aspect-ratio:4/3 !important; }

  body.page-eventos .corp-specs-a, body.page-eventos .corp-split-a, body.page-eventos .social-split-a, body.page-eventos .shows-split-a, body.page-eventos .bloco-split, body.page-eventos .janela-split, body.page-eventos .vantagem-split, body.page-eventos .porque-inner, body.page-eventos .formulario-inner, body.page-eventos .form-inner-a, body.page-eventos .candidatura-inner, body.page-eventos .curadoria-inner, body.page-eventos .gastronomia-inner, body.page-eventos .pilares-header { grid-template-columns:1fr !important; gap:32px !important; }

  body.page-eventos .corp-foto-a, body.page-eventos .social-foto-a, body.page-eventos .shows-foto-a, body.page-eventos .bloco-foto, body.page-eventos .janela-foto { min-height:280px !important; }

  body.page-eventos .card-sol { grid-template-columns:1fr !important; }

  body.page-eventos .plantas-grid { grid-template-columns:1fr !important; gap:36px !important; }

  body.page-eventos .footer-top { grid-template-columns:1fr !important; gap:36px !important; }
  body.page-eventos .footer-bottom { flex-direction:column !important; gap:18px !important; align-items:flex-start !important; }

  body.page-eventos .btn-primary { width:100% !important; justify-content:center !important; padding:16px 28px !important; }
  body.page-eventos .cta-btns, body.page-eventos .cta-btns-a { flex-direction:column !important; align-items:stretch !important; }

  /* Tipografia mobile: tudo melhor lido */
  body.page-eventos p, body.page-eventos .reveal-win-p, body.page-eventos .si-desc-a, body.page-eventos .cs-p, body.page-eventos .planta-stat-lbl, body.page-eventos .vpoint-desc, body.page-eventos .porq-desc, body.page-eventos .dif-desc, body.page-eventos .janela-intro, body.page-eventos .form-lead, body.page-eventos .form-lead-a, body.page-eventos .cand-p, body.page-eventos .cta-p, body.page-eventos .cta-p-a {
    font-size:16.5px !important;
    line-height:1.7 !important;
  }
  body.page-eventos h2 { font-size:clamp(28px,7.5vw,38px) !important; line-height:1.06 !important; }
  body.page-eventos h3 { font-size:clamp(20px,5vw,26px) !important; }
  body.page-eventos .eyebrow span { font-size:12px !important; letter-spacing:.28em !important; }
}

/* Small mobile */
@media (max-width: 380px)  {
  body.page-eventos { --safe: 16px; }
  body.page-eventos .hero-h1 { font-size:30px !important; }
  body.page-eventos .reveal-win-h2 { font-size:26px !important; }
  body.page-eventos h2 { font-size:26px !important; }
}

/* Reduce motion */
@media (prefers-reduced-motion: reduce)  {
  body.page-eventos *, body.page-eventos *::before, body.page-eventos *::after {
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
    scroll-behavior:auto !important;
  }
  body.page-eventos .marquee-track { animation:none !important; }
}

/* Cursor custom oculto em touch */
@media (hover: none), (pointer: coarse)  {
  body.page-eventos .cursor, body.page-eventos .cursor-ring { display:none !important; }
  body.page-eventos { cursor:auto !important; }
}

/* Performance · scroll suave global, sem overscroll esquisito */
html { scroll-behavior:smooth; }
body.page-eventos { overscroll-behavior-y:none; }


/* ═══════════════════════════════════════════════════════════════
   FULL SCROLL · TRANSIÇÕES FINAIS
   Suavização da emenda entre seções, sem alterar layouts
═══════════════════════════════════════════════════════════════ */

/* Cada seção principal ganha uma fina transição superior e inferior, 
   criando a sensação de continuidade visual sem corte abrupto. */
body.page-eventos .sec-verde, body.page-eventos .sec-palha, body.page-eventos .sec-institucional, body.page-eventos .bloco-verde, body.page-eventos .bloco-dourado, body.page-eventos .bloco-curadoria, body.page-eventos .bloco-gastronomia, body.page-eventos .bloco-tipologia, body.page-eventos .bloco-diferenciais, body.page-eventos .bloco-corp-a, body.page-eventos .bloco-social-a, body.page-eventos .bloco-shows-a, body.page-eventos .bloco-infra-a, body.page-eventos .bloco-form-a, body.page-eventos .bloco-formulario, body.page-eventos .bloco-candidatura, body.page-eventos .bloco-plantas, body.page-eventos .sec-porque, body.page-eventos .cta-section, body.page-eventos .cta-final-a {
  position:relative;
}

/* Esteiras (marquees) ganham máscara suave nas extremidades, fundindo nos blocos */
body.page-eventos .marquee-strip {
  -webkit-mask-image:linear-gradient(to right, transparent 0%, #000 6%, #000 94%, transparent 100%);
          mask-image:linear-gradient(to right, transparent 0%, #000 6%, #000 94%, transparent 100%);
}

/* Pseudoelementos das esteiras herdam o background da própria esteira para fusão real */
body.page-eventos .marquee-strip.mq-verde::before { background:linear-gradient(to bottom, var(--verde-card, #1e2e1d), transparent) !important; opacity:.5; }
body.page-eventos .marquee-strip.mq-verde::after { background:linear-gradient(to top,    var(--verde-card, #1e2e1d), transparent) !important; opacity:.5; }
body.page-eventos .marquee-strip.mq-palha::before { background:linear-gradient(to bottom, var(--palha, #F2EFE9), transparent) !important; opacity:.55; }
body.page-eventos .marquee-strip.mq-palha::after { background:linear-gradient(to top,    var(--palha, #F2EFE9), transparent) !important; opacity:.55; }
body.page-eventos .marquee-strip.mq-bordo::before { background:linear-gradient(to bottom, var(--bordo-prof, #4A0E0E), transparent) !important; opacity:.5; }
body.page-eventos .marquee-strip.mq-bordo::after { background:linear-gradient(to top,    var(--bordo-prof, #4A0E0E), transparent) !important; opacity:.5; }
body.page-eventos .marquee-strip.mq-ouro::before { background:linear-gradient(to bottom, #2a2616, transparent) !important; opacity:.5; }
body.page-eventos .marquee-strip.mq-ouro::after { background:linear-gradient(to top,    #2a2616, transparent) !important; opacity:.5; }
body.page-eventos .marquee-strip.mq-gold::before { background:linear-gradient(to bottom, var(--go, #B68D40), transparent) !important; opacity:.32; }
body.page-eventos .marquee-strip.mq-gold::after { background:linear-gradient(to top,    var(--go, #B68D40), transparent) !important; opacity:.32; }

/* Microtransição entre o final do hero e a primeira esteira: fade do verde escuro */
body.page-eventos .hero {
  position:relative;
}
body.page-eventos .hero::after {
  content:'';
  position:absolute;
  bottom:0; left:0; right:0;
  height:80px;
  background:linear-gradient(to top, rgba(8,14,8,.65) 0%, transparent 100%);
  pointer-events:none;
  z-index:6;
}

/* Fade-in de seções claras ao entrar no viewport (sec-palha, bloco-dourado, etc.) */
body.page-eventos .sec-palha::before, body.page-eventos .bloco-dourado::before, body.page-eventos .bloco-tipologia::before, body.page-eventos .bloco-diferenciais::before, body.page-eventos .bloco-formulario::before, body.page-eventos .bloco-form-a::before, body.page-eventos .bloco-candidatura::before, body.page-eventos .bloco-plantas::before {
  content:'';
  display:block;
  position:absolute;
  top:0; left:0; right:0;
  height:60px;
  background:linear-gradient(to bottom, rgba(0,0,0,.06), transparent);
  pointer-events:none;
  z-index:1;
}

/* Suaviza o final de cada win/janela imersiva, dando passagem visual */
body.page-eventos .win.reveal-win + section, body.page-eventos .win.reveal-win + div.marquee-strip, body.page-eventos .win.win-rooftop + section, body.page-eventos .win.win-rooftop + div.marquee-strip, body.page-eventos .win.win-rooftop-lj + section, body.page-eventos .win.win-rooftop-lj + div.marquee-strip { position:relative; }

/* Gran finale: emenda escura → footer */
body.page-eventos .gran-finale + footer {
  position:relative;
}
body.page-eventos .gran-finale + footer::before {
  content:'';
  position:absolute;
  top:-40px; left:0; right:0; height:40px;
  background:linear-gradient(to bottom, transparent, var(--verde, #1A2819));
  pointer-events:none;
  z-index:2;
}

/* Otimização de paint nas esteiras durante scroll: reduz repaints */
body.page-eventos .marquee-track { will-change:transform; }

/* ── Microajustes responsivos finais ── */
@media (max-width: 760px)  {
  /* Reduz gradientes mobile para manter performance */
  body.page-eventos .marquee-strip::before, body.page-eventos .marquee-strip::after { height:14px !important; }
  body.page-eventos .win::before { height:50px !important; }
  body.page-eventos .win::after { height:60px !important; }
  body.page-eventos .hero::after { height:50px !important; }
  /* Esteiras já bem dimensionadas */
  body.page-eventos .marquee-strip { -webkit-mask-image:none !important; mask-image:none !important; }
}

/* Tablet: esteiras rolam mais devagar para não cansar */
@media (min-width: 760px) and (max-width: 1100px)  {
  body.page-eventos .marquee-track { animation-duration:42s !important; }
}

/* Desktop largo: garante que conteúdos respirem */
@media (min-width: 1440px)  {
  body.page-eventos .container-luxury, body.page-eventos .inner { max-width:1500px; }
}



/* ════════════════════════════════════════════════════════════
   ✦ REFINAMENTO UI/UX — ETAPA 1
   Aplicado de forma cascata (último <style> do head)
   Não altera estrutura. Apenas refina espessura, peso, respiro e legibilidade.
══════════════════════════════════════════════════════════════ */

/* ── 1. RESET DE LINKS REFORÇADO (remove azul/sublinhado residual) ── */
body.page-eventos a, body.page-eventos a:link, body.page-eventos a:visited, body.page-eventos a:hover, body.page-eventos a:active, body.page-eventos a:focus {
  text-decoration: none !important;
  -webkit-tap-highlight-color: transparent;
}

/* ── 2. TIPOGRAFIA · LEGIBILIDADE GERAL ── */
body.page-eventos { line-height: 1.65; }
body.page-eventos p, body.page-eventos li { font-feature-settings: "kern" 1, "liga" 1; }

/* Hierarquia: títulos respiram mais; subtítulos com peso intermediário */
body.page-eventos h1, body.page-eventos h2, body.page-eventos h3 { letter-spacing: -.005em; }
body.page-eventos .eyebrow, body.page-eventos .marquee-item, body.page-eventos .ftr-col-head, body.page-eventos .ftr-socials a {
  letter-spacing: .26em;
}

/* ── 3. MARQUEE PADRONIZADA E MAIS LEVE ── */
body.page-eventos .marquee-strip {
  min-height: 44px !important;
  border-top-width: 0.5px !important;
  border-bottom-width: 0.5px !important;
}
body.page-eventos .marquee-track { animation-duration: 36s !important; }
body.page-eventos .marquee-item {
  padding: 11px 28px !important;
  font-size: clamp(11px,1.05vw,12.5px) !important;
  font-weight: 500 !important;
  letter-spacing: .28em !important;
  gap: 26px !important;
}
body.page-eventos .marquee-gem {
  width: 4px !important;
  height: 4px !important;
  opacity: .5 !important;
}
@media (max-width: 640px)  {
  body.page-eventos .marquee-strip { min-height: 40px !important; }
  body.page-eventos .marquee-item { font-size: 10.5px !important; padding: 9px 16px !important; letter-spacing: .24em !important; }
}

/* ── 4. WHATSAPP FLOAT · TRAÇOS LEVES + BRILHO SUTIL ── */
body.page-eventos .wpp-float-new, body.page-eventos .wpp-float {
  border-width: 0.5px !important;
  box-shadow:
    0 4px 18px rgba(182,141,64,.10),
    0 1px 6px rgba(0,0,0,.10),
    inset 0 1px 0 rgba(255,255,255,.08),
    0 0 0 1px rgba(255,255,255,.04) !important;
}
body.page-eventos .wpp-float-new svg, body.page-eventos .wpp-float svg {
  width: 24px !important;
  height: 24px !important;
  filter: drop-shadow(0 1px 2px rgba(0,0,0,.18))
          drop-shadow(0 0 6px rgba(207,163,85,.22)) !important;
}
body.page-eventos .wpp-float-new:hover, body.page-eventos .wpp-float:hover {
  box-shadow:
    0 8px 28px rgba(182,141,64,.20),
    0 2px 10px rgba(0,0,0,.15),
    inset 0 1px 0 rgba(255,255,255,.14),
    0 0 0 1px rgba(207,163,85,.18) !important;
}
@media (max-width: 640px)  {
  body.page-eventos .wpp-float-new, body.page-eventos .wpp-float { width: 54px !important; height: 54px !important; }
  body.page-eventos .wpp-float-new svg, body.page-eventos .wpp-float svg { width: 22px !important; height: 22px !important; }
}

/* Pulse mais sutil */
@keyframes wppGlassPulseRefined__page-eventos {
  0%,100% { box-shadow:
    0 4px 18px rgba(182,141,64,.10),
    0 1px 6px rgba(0,0,0,.10),
    inset 0 1px 0 rgba(255,255,255,.08),
    0 0 0 1px rgba(255,255,255,.04); }
  50%     { box-shadow:
    0 6px 24px rgba(182,141,64,.18),
    0 2px 8px rgba(0,0,0,.12),
    inset 0 1px 0 rgba(255,255,255,.12),
    0 0 0 1px rgba(207,163,85,.15); }
}
body.page-eventos .wpp-float-new, body.page-eventos .wpp-float { animation: wppGlassPulseRefined__page-eventos 4.2s ease-in-out infinite !important; }
body.page-eventos .wpp-float-new:hover, body.page-eventos .wpp-float:hover { animation: none !important; }

/* ── 5. ESPAÇAMENTO · RESPIRO ENTRE BLOCOS ── */
body.page-eventos section + section, body.page-eventos .bloco + .bloco { position: relative; }
body.page-eventos section { scroll-margin-top: 90px; }

/* Margens laterais um pouco maiores em viewports médios */
@media (min-width: 760px) and (max-width: 1100px)  {
  body.page-eventos { --safe: clamp(28px, 5.5vw, 56px) !important; }
}

/* Respiro extra antes do rodapé/CTA final (evita sobreposição) */
body.page-eventos .cta-footer-wrap, body.page-eventos .gran-finale, body.page-eventos footer { margin-top: 0; }
body.page-eventos .gran-finale + footer { padding-top: clamp(48px, 7vh, 80px) !important; }

/* ── 6. ALTERNÂNCIA SUTIL EM BLOCOS MONÓTONOS ── */
/* Aplica overlay leve em blocos consecutivos do mesmo tom (palha/verde) */
body.page-eventos .bloco-corp-a + .bloco-social-a::before, body.page-eventos .bloco-social-a + .bloco-shows-a::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 1px;
  background: linear-gradient(to right,
    transparent,
    rgba(182,141,64,.18) 30%,
    rgba(182,141,64,.28) 50%,
    rgba(182,141,64,.18) 70%,
    transparent);
  pointer-events: none;
  z-index: 5;
}

/* ── 7. GRID DE IMAGENS · ALINHAMENTO E CORTE ── */
body.page-eventos .win-bg, body.page-eventos .reveal-win-bg, body.page-eventos .janela-foto img, body.page-eventos .bloco-foto img {
  object-fit: cover !important;
  object-position: center center;
}

/* ── 8. CORREÇÃO TÉCNICA · CONTADORES ── */
/* Garantia visual: número final sempre visível antes/depois da animação */
body.page-eventos [data-counter] .numero {
  display: inline-block;
  font-variant-numeric: tabular-nums;
}

/* ── 9. FORMULÁRIO · FONTE MAIOR + ESPAÇAMENTO MELHOR ── */
body.page-eventos .form-grid-a, body.page-eventos .form-grid {
  gap: 24px !important;
  row-gap: 28px !important;
}
body.page-eventos .form-g-a, body.page-eventos .form-g {
  gap: 10px !important;
}
body.page-eventos .form-g-a label, body.page-eventos .form-g label {
  font-size: clamp(12px,1.1vw,13.5px) !important;
  letter-spacing: .26em !important;
  line-height: 1.5 !important;
  margin-bottom: 4px;
}
body.page-eventos .form-g-a input, body.page-eventos .form-g-a select, body.page-eventos .form-g-a textarea, body.page-eventos .form-g input, body.page-eventos .form-g select, body.page-eventos .form-g textarea {
  font-size: clamp(16px,1.4vw,18px) !important;
  padding: 16px 14px !important;
  line-height: 1.55 !important;
  letter-spacing: .005em;
}
body.page-eventos .form-g-a textarea, body.page-eventos .form-g textarea {
  min-height: 130px !important;
  padding-top: 18px !important;
}
body.page-eventos .form-g-a input::placeholder, body.page-eventos .form-g-a textarea::placeholder {
  font-size: .95em;
  letter-spacing: .01em;
}
body.page-eventos .form-lead-a, body.page-eventos .form-lead {
  line-height: 1.75 !important;
}
@media (max-width: 640px)  {
  body.page-eventos .form-grid-a, body.page-eventos .form-grid { gap: 18px !important; row-gap: 22px !important; grid-template-columns: 1fr !important; }
  body.page-eventos .form-g-a input, body.page-eventos .form-g-a select, body.page-eventos .form-g-a textarea, body.page-eventos .form-g input, body.page-eventos .form-g select, body.page-eventos .form-g textarea { font-size: 16px !important; padding: 14px 12px !important; }
}

/* ── 10. INSTAGRAM/SOCIAIS · GARANTIR SEM AZUL/SUBLINHADO ── */
body.page-eventos .ftr-socials a, body.page-eventos .ftr-col a, body.page-eventos .btn-hero-ig {
  color: inherit !important;
  text-decoration: none !important;
  border-bottom: none !important;
}

/* ── 11. AJUSTE FINO TIPOGRAFIA APOIO ── */
body.page-eventos .hero-support, body.page-eventos .hero-sub {
  line-height: 1.7;
}
body.page-eventos .eyebrow { line-height: 1.6; }



/* ════════════════════════════════════════════════════════════
   ✦ REFINAMENTO UI/UX — ETAPA 2
   Correções técnicas: scroll/trackpad, cursor, links residuais,
   pointer-events, formulário (label hidden visual).
   Não altera estrutura nem texto.
══════════════════════════════════════════════════════════════ */

/* ─ SCROLL/TRACKPAD: nunca bloquear ─ */
html, body.page-eventos {
  overflow-x: hidden;
  overflow-y: auto !important;
  overscroll-behavior-y: auto;
  -webkit-overflow-scrolling: touch;
  scroll-behavior: smooth;
  touch-action: pan-y pan-x;
}

/* Cursor customizado só em pointer fino (mouse). Trackpad em laptop conta como fine,
   mas dispositivos touch (coarse) recebem cursor padrão para não quebrar UX. */
@media (pointer: coarse), (hover: none)  {
  body.page-eventos, html, body.page-eventos * { cursor: auto !important; }
  body.page-eventos .cursor, body.page-eventos .cursor-ring { display: none !important; }
}

/* Garantir que elementos interativos sempre tenham pointer-events ativos */
body.page-eventos a, body.page-eventos button, body.page-eventos input, body.page-eventos select, body.page-eventos textarea, body.page-eventos [role="button"], body.page-eventos .btn-primary, body.page-eventos .btn-ghost, body.page-eventos .btn-form-submit, body.page-eventos .pilar-card, body.page-eventos .wpp-float-new, body.page-eventos .wpp-float, body.page-eventos .nav-cta, body.page-eventos .nav-links a, body.page-eventos .btn-hero-ig, body.page-eventos .reveal-win, body.page-eventos .planta-item {
  pointer-events: auto !important;
}

/* Overlays decorativos não devem bloquear cliques/scroll */
body.page-eventos .win-ov, body.page-eventos .corp-foto-ov-a, body.page-eventos .grain, body.page-eventos .reveal-win-top-accent, body.page-eventos .win-rooftop-frame, body.page-eventos .cta-footer-overlay {
  pointer-events: none !important;
}

/* ─ LINKS: garantia anti-azul-padrão (reforço) ─ */
/* Excluídos os CTAs com cor própria intencional, para não herdarem a cor do fundo (bug de contraste hover-only) */
body.page-eventos a[href^="http"]:not(.btn-primary):not(.btn-ghost):not(.btn-ghost-dk):not(.btn-outline):not(.btn-outline-amber):not(.btn-form-submit):not(.cand-btn-submit):not(.cand-wa):not(.nav-cta):not(.btn-hero-ig):not(.btn-bordo):not(.rt2-format-link):not(.btn-form-loc-a):not(.btn-form-email-a):not(.btn-form-wa-a):not(.wpp-float-new):not(.wpp-float),
body.page-eventos a[href^="mailto"]:not(.btn-primary):not(.btn-ghost):not(.btn-ghost-dk):not(.btn-outline):not(.btn-outline-amber):not(.btn-form-submit):not(.cand-btn-submit):not(.cand-wa):not(.nav-cta):not(.btn-hero-ig):not(.btn-bordo):not(.rt2-format-link):not(.btn-form-loc-a):not(.btn-form-email-a):not(.btn-form-wa-a):not(.wpp-float-new):not(.wpp-float),
body.page-eventos a[href^="tel"]:not(.btn-primary):not(.btn-ghost):not(.btn-ghost-dk):not(.btn-outline):not(.btn-outline-amber):not(.btn-form-submit):not(.cand-btn-submit):not(.cand-wa):not(.nav-cta):not(.btn-hero-ig):not(.btn-bordo):not(.rt2-format-link):not(.btn-form-loc-a):not(.btn-form-email-a):not(.btn-form-wa-a):not(.wpp-float-new):not(.wpp-float),
body.page-eventos a[href^="https://wa.me"]:not(.btn-primary):not(.btn-ghost):not(.btn-ghost-dk):not(.btn-outline):not(.btn-outline-amber):not(.btn-form-submit):not(.cand-btn-submit):not(.cand-wa):not(.nav-cta):not(.btn-hero-ig):not(.btn-bordo):not(.rt2-format-link):not(.btn-form-loc-a):not(.btn-form-email-a):not(.btn-form-wa-a):not(.wpp-float-new):not(.wpp-float),
body.page-eventos a[href*="instagram"]:not(.btn-primary):not(.btn-ghost):not(.btn-ghost-dk):not(.btn-outline):not(.btn-outline-amber):not(.btn-form-submit):not(.cand-btn-submit):not(.cand-wa):not(.nav-cta):not(.btn-hero-ig):not(.btn-bordo):not(.rt2-format-link):not(.btn-form-loc-a):not(.btn-form-email-a):not(.btn-form-wa-a):not(.wpp-float-new):not(.wpp-float) {
  color: inherit !important;
  text-decoration: none !important;
  -webkit-text-decoration: none !important;
}

/* ─ FORMULÁRIO: garantir que campo hidden não ocupe espaço ─ */
body.page-eventos .form-grid-a input[type="hidden"], body.page-eventos .form-grid input[type="hidden"] {
  display: none !important;
}

/* Espaçamento extra dentro do form (reforço Etapa 1) */
body.page-eventos .form-grid-a, body.page-eventos .form-grid {
  align-items: start;
}

/* ─ MARQUEE: garantir altura real (sobrescreve qualquer min-height antigo) ─ */
body.page-eventos .marquee-strip { height: auto !important; }

/* ─ WHATSAPP FLOAT: garantir z-index correto e não interferir em scroll ─ */
body.page-eventos .wpp-float-new, body.page-eventos .wpp-float {
  z-index: 800;
  pointer-events: auto !important;
  touch-action: manipulation;
}



/* ════════════════════════════════════════════════════════════
   ✦ FINALIZAÇÃO — ETAPA 3
   Sobrescreve por cascata correções residuais das etapas 1 e 2.
   - Cursor custom só em pointer:fine
   - Scroll 100% funcional
   - Marquee 44px com peso visual reduzido
   - WhatsApp button refinado (stroke fino, brilho suave)
   - Links elegantes (sem reset agressivo, mantém contraste)
   - Form com espaçamento confortável
══════════════════════════════════════════════════════════════ */

/* ─ SCROLL: garantia absoluta ─ */
html {
  overflow-y: scroll;
  scroll-behavior: smooth;
}
body.page-eventos {
  overflow-x: hidden;
  overflow-y: visible;
  overscroll-behavior-y: auto;
  -webkit-overflow-scrolling: touch;
  touch-action: pan-y pan-x;
  /* cursor custom apenas em ponteiro fino (mouse desktop) */
  cursor: auto;
}
@media (pointer: fine) and (hover: hover)  {
  body.page-eventos { cursor: none; }
}
@media (pointer: coarse), (hover: none)  {
  body.page-eventos .cursor, body.page-eventos .cursor-ring { display: none !important; }
  body.page-eventos * { cursor: auto !important; }
  body.page-eventos a, body.page-eventos button, body.page-eventos [role="button"], body.page-eventos input[type="submit"], body.page-eventos .btn-primary, body.page-eventos .btn-ghost, body.page-eventos .btn-form-submit, body.page-eventos .pilar-card, body.page-eventos .nav-cta, body.page-eventos .wpp-float-new, body.page-eventos .wpp-float { cursor: pointer !important; }
}

/* Scripts/overlays decorativos não bloqueiam scroll/clique */
body.page-eventos .grain, body.page-eventos .win-ov, body.page-eventos .corp-foto-ov-a, body.page-eventos .social-foto-ov-a, body.page-eventos .shows-foto-ov-a, body.page-eventos .win-rooftop-frame, body.page-eventos .reveal-win-top-accent, body.page-eventos .pilares-bg-soft {
  pointer-events: none !important;
}

/* Cursor custom desativado em qualquer container scrollable */
body.page-eventos section, body.page-eventos .container-luxury, body.page-eventos .inner, body.page-eventos main, body.page-eventos article, body.page-eventos aside { cursor: inherit; }

/* ─ MARQUEE: altura real 44px, peso visual reduzido ─ */
body.page-eventos .marquee-strip {
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  display: flex !important;
  align-items: center !important;
  overflow: hidden;
  border-top: 0.5px solid rgba(255,255,255,.06) !important;
  border-bottom: 0.5px solid rgba(255,255,255,.06) !important;
  padding: 0 !important;
}
body.page-eventos .marquee-track {
  display: flex !important;
  align-items: center !important;
  height: 100%;
  animation-duration: 38s !important;
}
body.page-eventos .marquee-item {
  padding: 0 26px !important;
  font-size: 11.5px !important;
  font-weight: 400 !important;
  letter-spacing: .3em !important;
  text-transform: uppercase;
  opacity: .82;
  display: flex !important;
  align-items: center !important;
  gap: 22px !important;
  white-space: nowrap;
}
body.page-eventos .marquee-gem {
  width: 3px !important;
  height: 3px !important;
  border-radius: 50%;
  opacity: .42 !important;
  flex-shrink: 0;
}
body.page-eventos .mq-gold .marquee-item { color: rgba(207,163,85,.92); }
body.page-eventos .mq-verde .marquee-item { color: rgba(245,235,221,.78); }
body.page-eventos .mq-bordo .marquee-item, body.page-eventos .mq-burgundy .marquee-item { color: rgba(245,235,221,.85); }

@media (max-width: 640px)  {
  body.page-eventos .marquee-strip { height: 38px !important; min-height: 38px !important; max-height: 38px !important; }
  body.page-eventos .marquee-item { font-size: 10px !important; padding: 0 14px !important; letter-spacing: .26em !important; gap: 14px !important; }
}

/* ─ WHATSAPP FLOAT: padronizado com a Home (referência única do site) ─ */
body.page-eventos .wpp-float-new, body.page-eventos .wpp-float {
  width: 78px !important;
  height: 78px !important;
  bottom: 34px !important;
  right: 34px !important;
  border-radius: 50% !important;
  border: 0.5px solid rgba(207,163,85,.50) !important;
  background:
    radial-gradient(circle at 30% 30%, rgba(207,163,85,.20), rgba(20,30,18,.84)) !important;
  backdrop-filter: blur(14px) saturate(125%) !important;
  -webkit-backdrop-filter: blur(14px) saturate(125%) !important;
  box-shadow:
    0 12px 40px rgba(182,141,64,.32),
    0 4px 18px rgba(0,0,0,.22),
    0 0 0 1px rgba(207,163,85,.16),
    0 0 22px rgba(207,163,85,.18),
    inset 0 1px 0 rgba(255,255,255,.22) !important;
  transition: all .4s cubic-bezier(.2,.7,.2,1) !important;
}
body.page-eventos .wpp-float-new svg, body.page-eventos .wpp-float svg {
  width: 32px !important;
  height: 32px !important;
  fill: rgba(232,200,140,1) !important;
  filter:
    drop-shadow(0 2px 8px rgba(0,0,0,.40))
    drop-shadow(0 0 10px rgba(207,163,85,.40)) !important;
}
body.page-eventos .wpp-float-new:hover, body.page-eventos .wpp-float:hover {
  transform: translateY(-3px) scale(1.07) !important;
  border-color: rgba(207,163,85,.85) !important;
  box-shadow:
    0 20px 56px rgba(182,141,64,.46),
    0 8px 24px rgba(0,0,0,.28),
    0 0 0 1px rgba(207,163,85,.36),
    0 0 36px rgba(207,163,85,.32),
    inset 0 1px 0 rgba(255,255,255,.32) !important;
}
body.page-eventos .wpp-float-new:hover svg, body.page-eventos .wpp-float:hover svg {
  fill: rgba(245,225,178,1) !important;
  filter:
    drop-shadow(0 2px 10px rgba(0,0,0,.45))
    drop-shadow(0 0 14px rgba(207,163,85,.55)) !important;
}
@media (max-width: 640px)  {
  body.page-eventos .wpp-float-new, body.page-eventos .wpp-float { width: 64px !important; height: 64px !important; bottom: 20px !important; right: 20px !important; }
  body.page-eventos .wpp-float-new svg, body.page-eventos .wpp-float svg { width: 26px !important; height: 26px !important; }
}
@media (max-width: 380px)  {
  body.page-eventos .wpp-float-new, body.page-eventos .wpp-float { width: 58px !important; height: 58px !important; bottom: 16px !important; right: 16px !important; }
  body.page-eventos .wpp-float-new svg, body.page-eventos .wpp-float svg { width: 24px !important; height: 24px !important; }
}

/* Pulse premium no desktop (padrão Home) */
@media (pointer: fine)  {
  @keyframes wppPremiumPulse__page-eventos {
    0%, 100% { box-shadow:
      0 12px 40px rgba(182,141,64,.32),
      0 4px 18px rgba(0,0,0,.22),
      0 0 0 1px rgba(207,163,85,.16),
      0 0 22px rgba(207,163,85,.18),
      inset 0 1px 0 rgba(255,255,255,.22),
      0 0 0 0 rgba(207,163,85,.36); }
    50% { box-shadow:
      0 14px 48px rgba(182,141,64,.40),
      0 6px 22px rgba(0,0,0,.26),
      0 0 0 1px rgba(207,163,85,.24),
      0 0 32px rgba(207,163,85,.28),
      inset 0 1px 0 rgba(255,255,255,.28),
      0 0 0 18px rgba(207,163,85,0); }
  }
  body.page-eventos .wpp-float-new, body.page-eventos .wpp-float { animation: wppPremiumPulse__page-eventos 4.2s ease-in-out infinite !important; }
  body.page-eventos .wpp-float-new:hover, body.page-eventos .wpp-float:hover { animation: none !important; }
}

/* ─ LINKS: abordagem elegante (sem reset agressivo) ─ */
/* Remove !important da etapa 2; deixa cascata natural */
body.page-eventos a { color: inherit; text-decoration: none; }
body.page-eventos a:visited { color: inherit; }

/* Footer/nav: links sutis com hover dourado */
body.page-eventos .ftr-col a, body.page-eventos .ftr-socials a, body.page-eventos footer a, body.page-eventos .nav-links a {
  color: inherit;
  text-decoration: none;
  transition: color .25s ease, opacity .25s ease;
}
body.page-eventos .ftr-col a:hover, body.page-eventos .ftr-socials a:hover, body.page-eventos footer a:hover, body.page-eventos .nav-links a:hover {
  color: var(--go, #cfa355);
  opacity: 1;
}

/* Mailto/tel/wa.me/instagram: nunca azul */
body.page-eventos a[href^="mailto"], body.page-eventos a[href^="tel"], body.page-eventos a[href*="wa.me"], body.page-eventos a[href*="instagram"] {
  color: inherit;
  text-decoration: none;
}
body.page-eventos a[href^="mailto"]:hover, body.page-eventos a[href*="instagram"]:hover, body.page-eventos a[href*="wa.me"]:hover {
  color: var(--go, #cfa355);
}

/* ─ FORMULÁRIO: UX confortável ─ */
body.page-eventos .form-grid-a, body.page-eventos .form-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 28px 22px !important;
  align-items: start;
}
body.page-eventos .form-g-a, body.page-eventos .form-g {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}
body.page-eventos .form-g-a label, body.page-eventos .form-g label {
  font-size: 12.5px !important;
  letter-spacing: .28em !important;
  text-transform: uppercase;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  color: rgba(245,235,221,.72) !important;
  margin-bottom: 2px !important;
}
body.page-eventos .form-g-a input, body.page-eventos .form-g-a select, body.page-eventos .form-g-a textarea, body.page-eventos .form-g input, body.page-eventos .form-g select, body.page-eventos .form-g textarea {
  font-size: 16px !important;
  padding: 18px 16px !important;
  line-height: 1.5 !important;
  letter-spacing: 0 !important;
  background: rgba(245,235,221,.05) !important;
  border: none !important;
  border-bottom: 1px solid rgba(245,235,221,.18) !important;
  border-radius: 2px !important;
  color: var(--palha-f, #F5EBDD) !important;
  font-family: 'DM Sans', sans-serif !important;
  transition: all .3s ease !important;
  width: 100% !important;
  -webkit-appearance: none;
  appearance: none;
}
body.page-eventos .form-g-a textarea, body.page-eventos .form-g textarea {
  min-height: 140px !important;
  resize: vertical;
  padding-top: 18px !important;
}
body.page-eventos .form-g-a input:focus, body.page-eventos .form-g-a select:focus, body.page-eventos .form-g-a textarea:focus, body.page-eventos .form-g input:focus, body.page-eventos .form-g select:focus, body.page-eventos .form-g textarea:focus {
  background: rgba(245,235,221,.09) !important;
  border-bottom-color: var(--go, #cfa355) !important;
  outline: none !important;
}
body.page-eventos .form-g-a input::placeholder, body.page-eventos .form-g-a textarea::placeholder {
  color: rgba(245,235,221,.32) !important;
  font-size: 15px;
  letter-spacing: 0;
}
body.page-eventos .form-g-a.form-full-a, body.page-eventos .form-g.form-full {
  grid-column: 1 / -1 !important;
}
body.page-eventos .form-wrap-a, body.page-eventos .form-wrap {
  padding: clamp(28px, 4vw, 44px) !important;
}
body.page-eventos .form-title-a, body.page-eventos .form-title {
  margin-bottom: 8px !important;
}
body.page-eventos .form-sub-a, body.page-eventos .form-sub {
  margin-bottom: clamp(28px, 3.5vh, 36px) !important;
  line-height: 1.55 !important;
}
body.page-eventos .form-bot-a, body.page-eventos .form-bot {
  margin-top: clamp(28px, 3.5vh, 36px) !important;
  padding-top: clamp(20px, 2.5vh, 28px) !important;
  border-top: 1px solid rgba(245,235,221,.08);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}
body.page-eventos .btn-form-submit {
  padding: 16px 32px !important;
}

/* Mobile: form em coluna única, espaçamento ajustado */
@media (max-width: 760px)  {
  body.page-eventos .form-grid-a, body.page-eventos .form-grid { grid-template-columns: 1fr !important; gap: 22px !important; }
  body.page-eventos .form-g-a input, body.page-eventos .form-g-a select, body.page-eventos .form-g-a textarea, body.page-eventos .form-g input, body.page-eventos .form-g select, body.page-eventos .form-g textarea { font-size: 16px !important; padding: 16px 14px !important; }
  body.page-eventos .form-bot-a, body.page-eventos .form-bot { flex-direction: column; align-items: stretch; }
  body.page-eventos .form-bot-a .btn-form-submit { width: 100%; justify-content: center; }
}

/* Hidden fields: nunca renderizam */
body.page-eventos input[type="hidden"] { display: none !important; }

/* ─ AJUSTES DE CONFORTO DE LEITURA ─ */
body.page-eventos .reveal-win-p, body.page-eventos .corp-p-a, body.page-eventos .social-p-a, body.page-eventos .shows-p-a {
  font-size: clamp(17px, 1.5vw, 21px) !important;
  line-height: 1.7 !important;
}

/* Z-index sanity: WhatsApp acima, cursor acima do WhatsApp */
body.page-eventos .wpp-float-new, body.page-eventos .wpp-float { z-index: 800 !important; }
body.page-eventos .cursor, body.page-eventos .cursor-ring { z-index: 9999 !important; pointer-events: none !important; }



/* ============================================================
   PAGINA: expositores.html  (scope: body.page-expositores)
   ============================================================ */

html, body.page-expositores {overflow-x:hidden;max-width:100%}
body.page-expositores {
  --verde:#1A2819;--verde-fundo:#1A2819;--verde-vivo:#3A4D39;--verde-card:#1e2e1d;
  --verde-prof:#1A2819;--verde-mid:#243823;--verde-deep:#111e10;
  --mu:#7a8a79;--mu-dk:#5a6a59;
  --palha:#F2EFE9;--palha-dark:#e6e1d8;--palha-mid:#ede8df;--ow:#F2EEE9;
  --go:#B68D40;--go-lt:#cfa355;--go-pa:#d4b87a;
  --go-bd:rgba(182,141,64,.22);--go-bd-dk:rgba(182,141,64,.38);
  --bordo:#5A0F1A;--bordo2:#7a1520;--bordo-lt:#9e1d2a;--bordo-prof:#5A0F1A;
  --bordo-bd:rgba(90,15,26,.35);--palha-f:#F5EBDD;
  --acento:#2C4A2B;--acento2:#3d5e3c;
  --ease:cubic-bezier(0.16,1,0.3,1);
}
body.page-expositores *, body.page-expositores *::before, body.page-expositores *::after {box-sizing:border-box;margin:0;padding:0;hyphens:none;-webkit-hyphens:none}
html {scroll-behavior:smooth;font-size:16px}
body.page-expositores {background:var(--verde-fundo);color:var(--ow);font-family:'DM Sans',sans-serif;font-weight:300;overflow-x:hidden;cursor:none;-webkit-font-smoothing:antialiased;line-height:1.6;letter-spacing:.01em}
body.page-expositores img {display:block;object-fit:cover;max-width:100%;image-rendering:-webkit-optimize-contrast;image-rendering:high-quality}
body.page-expositores h1 em, body.page-expositores h2 em, body.page-expositores h3 em {font-style:italic;color:inherit}
body.page-expositores p, body.page-expositores h1, body.page-expositores h2, body.page-expositores h3, body.page-expositores li, body.page-expositores blockquote {word-break:keep-all;overflow-wrap:break-word}
body.page-expositores .inner {
  max-width:1440px;
  margin-left:auto; margin-right:auto;
  padding-left:var(--safe); padding-right:var(--safe);
  width:100%;
}

body.page-expositores .grain {position:fixed;inset:0;pointer-events:none;z-index:1000;opacity:.018;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.88' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:200px;mix-blend-mode:normal}
body.page-expositores .cursor {position:fixed;left:0;top:0;width:8px;height:8px;border-radius:50%;background:var(--go);pointer-events:none;z-index:9999;transform:translate(-50%,-50%);box-shadow:0 0 20px rgba(182,141,64,.4)}
body.page-expositores .cursor-ring {position:fixed;left:0;top:0;width:38px;height:38px;border-radius:50%;border:1px solid rgba(182,141,64,.5);pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:width .3s,height .3s,border-color .3s}

body.page-expositores .eyebrow {display:flex;align-items:center;gap:14px;margin-bottom:22px}
body.page-expositores .eyebrow-line {width:36px;height:1px;background:var(--go);flex-shrink:0}
body.page-expositores .eyebrow span {font-size:clamp(13px,1.3vw,15px);letter-spacing:.32em;text-transform:uppercase;color:var(--go);font-weight:600}
body.page-expositores .eyebrow.ey-bordo .eyebrow-line {background:var(--bordo)}body.page-expositores .eyebrow.ey-bordo span {color:var(--bordo)}

/* Eyebrow, ritmo unificado e respiração (padronizado com Home/Eventos/Lojistas) */
body.page-expositores .eyebrow-line { width: 44px; transition: width .6s var(--ease), background .4s; }
body.page-expositores .eyebrow:hover .eyebrow-line { width: 60px; }

body.page-expositores .reveal {opacity:0;transform:translateY(32px);transition:opacity .9s cubic-bezier(0.22,1,0.36,1),transform .9s cubic-bezier(0.22,1,0.36,1);will-change:opacity,transform}
body.page-expositores .reveal.visible {opacity:1;transform:none}
body.page-expositores .fade-up {opacity:0;transform:translateY(24px);transition:opacity .8s cubic-bezier(0.22,1,0.36,1),transform .8s cubic-bezier(0.22,1,0.36,1)}
body.page-expositores .fade-up.active {opacity:1;transform:none}
body.page-expositores .d1 {transition-delay:.10s}body.page-expositores .d2 {transition-delay:.20s}body.page-expositores .d3 {transition-delay:.32s}body.page-expositores .d4 {transition-delay:.44s}body.page-expositores .d5 {transition-delay:.56s}

/* BOTÕES */
body.page-expositores .btn-primary {display:inline-flex;align-items:center;gap:14px;background:transparent;color:var(--go);border:1px solid rgba(182,141,64,.55);text-decoration:none;font-size:clamp(9px,1vw,11px);letter-spacing:.25em;text-transform:uppercase;padding:20px clamp(32px,5vw,56px);font-weight:500;font-family:'DM Sans',sans-serif;transition:all .5s var(--ease);position:relative;overflow:hidden}
body.page-expositores .btn-primary::before {content:'';position:absolute;inset:0;background:var(--go);transform:translateY(101%);transition:transform .5s cubic-bezier(0.16,1,0.3,1);z-index:0}
body.page-expositores .btn-primary>* {position:relative;z-index:1}
body.page-expositores .btn-primary span, body.page-expositores .btn-primary svg {position:relative;z-index:1}
body.page-expositores .btn-primary:hover::before {transform:translateY(0)}
body.page-expositores .btn-primary:hover {color:var(--verde);border-color:var(--go);box-shadow:0 8px 32px rgba(182,141,64,.2);transform:translateY(-2px)}
body.page-expositores .btn-primary svg {transition:transform .3s}body.page-expositores .btn-primary:hover svg {transform:translateX(4px)}
body.page-expositores .btn-outline {display:inline-flex;align-items:center;gap:14px;background:transparent;color:var(--go);text-decoration:none;font-size:clamp(9px,1vw,10px);letter-spacing:.22em;text-transform:uppercase;padding:16px clamp(24px,3vw,38px);font-weight:500;border:1px solid var(--go-bd-dk);transition:all .3s var(--ease);position:relative;overflow:hidden}
body.page-expositores .btn-outline::before {content:'';position:absolute;inset:0;background:rgba(182,141,64,.1);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease);z-index:-1}
body.page-expositores .btn-outline:hover::before {transform:scaleX(1)}
body.page-expositores .btn-outline:hover {background:var(--bordo);color:var(--palha-f);border-color:var(--bordo);transform:translateY(-2px)}
body.page-expositores .btn-outline svg {transition:transform .3s}body.page-expositores .btn-outline:hover svg {transform:translateX(4px)}
body.page-expositores .btn-on-go {display:inline-flex;align-items:center;gap:14px;background:transparent;color:var(--verde-fundo);text-decoration:none;font-size:clamp(9px,1vw,10px);letter-spacing:.22em;text-transform:uppercase;padding:16px 34px;font-weight:500;border:1px solid rgba(26,40,25,.3);transition:all .3s var(--ease)}
body.page-expositores .btn-on-go:hover {background:var(--bordo);color:var(--palha-f);border-color:var(--bordo)}
body.page-expositores .btn-on-go svg {transition:transform .3s}body.page-expositores .btn-on-go:hover svg {transform:translateX(4px)}

/* NAV */
body.page-expositores nav {position:fixed;top:0;left:0;right:0;z-index:500;height:76px;padding:0 clamp(24px,5vw,60px);display:flex;align-items:center;justify-content:space-between;background:rgba(42,58,40,.78);backdrop-filter:blur(22px) saturate(1.4);-webkit-backdrop-filter:blur(22px) saturate(1.4);border-bottom:1px solid var(--go-bd);transition:all .45s var(--ease)}
body.page-expositores nav.scrolled {background:rgba(242,239,233,.97);border-bottom:1px solid var(--palha-dark);box-shadow:0 4px 30px rgba(0,0,0,.08)}
body.page-expositores nav.scrolled .nav-logo-main {color:var(--verde-prof)}
body.page-expositores nav.scrolled .nav-logo-sub {color:var(--go)}
body.page-expositores nav.scrolled .nav-links a {color:var(--mu-dk)}
body.page-expositores nav.scrolled .nav-links a:hover, body.page-expositores nav.scrolled .nav-links a.active {color:var(--verde-prof)}
body.page-expositores nav.scrolled .nav-cta {color:var(--verde-prof);border-color:rgba(26,40,25,.25)}
body.page-expositores .nav-cta {
  font-size:clamp(8px,1vw,9.5px) !important;
  padding:11px clamp(18px,2.4vw,28px) !important;
}
body.page-expositores nav.scrolled .nav-cta:hover {background:var(--verde-prof);color:var(--palha)}
body.page-expositores nav.scrolled .hamburger span {background:var(--verde-prof)}

/* ── 4. NAV refinado ──────────────────────────────────────────── */
body.page-expositores nav {
  height:74px !important;
  transition:height .45s cubic-bezier(.22,1,.36,1),
             background .45s, border-color .45s, box-shadow .45s !important;
}
body.page-expositores nav.scrolled { height:64px !important; }
body.page-expositores .nav-logo-main { font-weight:500 !important; letter-spacing:.05em !important; }
body.page-expositores .nav-logo-sub { letter-spacing:.32em !important; }
body.page-expositores .nav-logo {text-decoration:none;display:flex;flex-direction:column;line-height:1}
body.page-expositores .nav-logo-main {font-family:'Playfair Display',serif;font-size:clamp(20px,2.4vw,26px);letter-spacing:.09em;color:var(--ow);transition:color .45s;text-shadow:0 0 28px rgba(182,141,64,.35),0 1px 4px rgba(0,0,0,.4)}
body.page-expositores .nav-logo-sub {font-size:clamp(7px,.9vw,8.5px);letter-spacing:.28em;text-transform:uppercase;color:var(--go);margin-top:3px}
body.page-expositores .nav-links {display:flex;gap:clamp(24px,3vw,44px);list-style:none}
body.page-expositores .nav-links a {font-size:clamp(9px,1vw,10.5px);letter-spacing:.2em;text-transform:uppercase;text-decoration:none;color:rgba(242,238,233,.55);position:relative;transition:color .3s var(--ease);padding:4px 0}
body.page-expositores .nav-links a::after {content:'';position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--go);transition:width .35s var(--ease)}
body.page-expositores .nav-links a:hover, body.page-expositores .nav-links a.active {color:var(--ow)}
body.page-expositores .nav-links a:hover::after, body.page-expositores .nav-links a.active::after {width:100%}

body.page-expositores header nav a, body.page-expositores .menu a, body.page-expositores .navbar a, body.page-expositores nav ul li a {
font-size:18px !important;
font-weight:600 !important;
letter-spacing:.02em !important;
}
@media(max-width:768px) {
body.page-expositores header nav a, body.page-expositores .menu a, body.page-expositores .navbar a, body.page-expositores nav ul li a {
font-size:16px !important;
}
}
body.page-expositores .nav-cta {font-size:clamp(8px,1vw,9.5px);letter-spacing:.2em;text-transform:uppercase;text-decoration:none;color:var(--go);border:1px solid var(--go-bd);padding:10px clamp(16px,2vw,26px);transition:all .3s var(--ease)}
body.page-expositores .nav-cta:hover {background:var(--bordo);color:var(--palha-f);border-color:var(--bordo);box-shadow:0 0 24px rgba(90,15,26,.28)}
body.page-expositores .hamburger {display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:4px}
body.page-expositores .hamburger span {display:block;width:24px;height:1px;background:var(--ow);transition:transform .3s,opacity .3s,background .45s}
body.page-expositores .mobile-menu {position:fixed;inset:0;background:var(--verde-fundo);z-index:490;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:40px;transform:translateX(100%);transition:transform .55s var(--ease)}
body.page-expositores .mobile-menu.open {transform:translateX(0)}
body.page-expositores .mobile-menu a {font-family:'Playfair Display',serif;font-size:clamp(28px,6vw,34px);color:var(--ow);text-decoration:none;transition:all .3s;opacity:0;transform:translateY(20px)}
body.page-expositores .mobile-menu.open a {opacity:1;transform:translateY(0)}
body.page-expositores .mobile-menu.open a:nth-child(1) {transition-delay:.1s}body.page-expositores .mobile-menu.open a:nth-child(2) {transition-delay:.15s}body.page-expositores .mobile-menu.open a:nth-child(3) {transition-delay:.2s}body.page-expositores .mobile-menu.open a:nth-child(4) {transition-delay:.25s}
body.page-expositores .mobile-menu a:hover {color:var(--go);transform:translateX(10px)}

/* MARQUEE */
body.page-expositores .marquee-strip {overflow:hidden;padding:14px 0;position:relative;z-index:10;border-top:1px solid;border-bottom:1px solid;margin:0;height:44px;min-height:44px}
body.page-expositores .marquee-track {display:flex;animation:marquee__page-expositores 32s linear infinite}
body.page-expositores .marquee-item {display:inline-flex;align-items:center;gap:28px;padding:0 28px;white-space:nowrap;flex-shrink:0;font-size:clamp(9px,1vw,10px);letter-spacing:.26em;text-transform:uppercase;font-weight:500;font-family:'DM Sans',sans-serif}
body.page-expositores .marquee-gem {width:5px;height:5px;transform:rotate(45deg);flex-shrink:0;opacity:.5}

/* MARQUEE, padronizado com Home/Eventos/Lojistas (peso visual reduzido) */
body.page-expositores .marquee-strip {
  border-top: 0.5px solid rgba(255,255,255,.06) !important;
  border-bottom: 0.5px solid rgba(255,255,255,.06) !important;
  padding: 0 !important;
}
body.page-expositores .marquee-item {
  padding: 0 26px !important;
  font-size: 11.5px !important;
  font-weight: 400 !important;
  letter-spacing: .3em !important;
  opacity: .82;
  gap: 22px !important;
}
body.page-expositores .marquee-gem {
  width: 3px !important;
  height: 3px !important;
  border-radius: 50%;
  transform: none !important;
  opacity: .42 !important;
}
body.page-expositores .mq-gold {background:var(--go);border-color:rgba(182,141,64,.4)}body.page-expositores .mq-gold .marquee-item {color:#4A0E0E}body.page-expositores .mq-gold .marquee-gem {background:#4A0E0E}
body.page-expositores .mq-verde {background:var(--verde-card);border-color:var(--go-bd)}body.page-expositores .mq-verde .marquee-item {color:var(--go)}body.page-expositores .mq-verde .marquee-gem {background:var(--go)}
body.page-expositores .mq-palha {background:var(--palha);border-color:rgba(90,15,26,.2)}body.page-expositores .mq-palha .marquee-item {color:var(--bordo)}body.page-expositores .mq-palha .marquee-gem {background:var(--bordo)}
body.page-expositores .mq-ouro {background:#111e10;border-color:rgba(182,141,64,.28)}body.page-expositores .mq-ouro .marquee-item {color:var(--go-lt)}body.page-expositores .mq-ouro .marquee-gem {background:var(--go-lt)}
body.page-expositores .mq-bordo {background:var(--bordo);border-color:rgba(90,15,26,.6)}body.page-expositores .mq-bordo .marquee-item {color:var(--palha-f);font-weight:500}body.page-expositores .mq-bordo .marquee-gem {background:var(--palha-f);opacity:.8}

/* HERO */
body.page-expositores .hero {position:relative;width:100%;min-height:100svh;display:flex;align-items:flex-end;background:var(--verde-fundo)}
body.page-expositores .hero-bg {position:absolute;inset:0;background-image:url('../assets/images/hero-expositor.jpg');background-size:cover;background-position:center 35%;background-attachment:fixed;z-index:0}
@media(max-width:960px) {body.page-expositores .hero-bg {background-attachment:scroll}}
body.page-expositores .hero-overlay {position:absolute;inset:0;z-index:1;background:linear-gradient(to right,rgba(26,40,25,.95) 0%,rgba(26,40,25,.72) 42%,rgba(26,40,25,.1) 100%)}
body.page-expositores .hero-overlay-top {position:absolute;inset:0;z-index:1;background:linear-gradient(to bottom,rgba(0,0,0,.28) 0%,transparent 22%,transparent 82%,rgba(26,40,25,.5) 100%)}
body.page-expositores .hero-grid {position:absolute;inset:0;pointer-events:none;display:grid;grid-template-columns:repeat(12,1fr);z-index:2}
body.page-expositores .hero-grid-col {border-right:1px solid rgba(182,141,64,.04)}
body.page-expositores .hero-grid-col:first-child {border-left:1px solid rgba(182,141,64,.04)}
body.page-expositores .hero-corner-tr {position:absolute;top:94px;right:clamp(24px,5vw,60px);width:100px;height:100px;border-top:1px solid var(--go-bd);border-right:1px solid var(--go-bd);z-index:3;opacity:0;animation:fadeCorner__page-expositores 1s 1.5s forwards}
@keyframes fadeCorner__page-expositores {to{opacity:1}}
body.page-expositores .hero-badge {position:absolute;top:100px;left:clamp(24px,5vw,60px);display:flex;align-items:center;gap:12px;opacity:0;animation:fadeUp__page-expositores .8s .3s forwards;z-index:3}
body.page-expositores .hero-badge-line {width:28px;height:1px;background:var(--go)}
body.page-expositores .hero-badge span {font-size:clamp(7px,.9vw,8.5px);letter-spacing:.28em;text-transform:uppercase;color:var(--go)}
body.page-expositores .hero::after {content:'';position:absolute;bottom:0;left:0;right:0;height:2px;z-index:4;background:linear-gradient(to right,transparent,var(--bordo) 20%,var(--go) 50%,var(--bordo) 80%,transparent);opacity:.9}
body.page-expositores .hero-inner {position:relative;z-index:3;width:100%;padding:0 clamp(24px,5vw,60px) clamp(60px,10vh,80px)}
body.page-expositores .hero-text {max-width:720px}
@media(max-width:768px) { body.page-expositores .hero-inner { padding-bottom:120px; } }
body.page-expositores .hero-eyebrow {
  font-size:clamp(15px,1.4vw,17px);
  letter-spacing:.28em;text-transform:uppercase;
  color:var(--go);
  margin-bottom:clamp(24px,3.5vh,36px);
  opacity:0;animation:fadeUp__page-expositores .9s var(--ease) .45s forwards;
  font-family:'DM Sans',sans-serif;font-weight:600;
  display:flex;align-items:center;gap:18px;
}
body.page-expositores .hero-eyebrow::before {
  content:'';display:inline-block;width:28px;height:1px;
  background:var(--go);flex-shrink:0;
}
body.page-expositores .hero-h1 {font-family:'Playfair Display',serif;font-size:clamp(42px,5.6vw,82px);font-weight:400;line-height:1.0;letter-spacing:-.025em;color:var(--ow);margin-bottom:clamp(24px,4vh,36px);opacity:0;animation:fadeUp__page-expositores .9s .65s forwards;text-shadow:0 2px 40px rgba(0,0,0,.35)}
body.page-expositores .hero-sub {font-family:'Playfair Display',serif;font-size:clamp(20px,2.2vw,28px);font-weight:300;font-style:italic;color:rgba(242,238,233,.92);line-height:1.6;max-width:660px;opacity:0;animation:fadeUp__page-expositores .9s .78s forwards;text-shadow:0 1px 20px rgba(0,0,0,.75)}
body.page-expositores .scroll-cue {position:absolute;left:clamp(48px,5vw,64px);bottom:48px;display:flex;flex-direction:column;align-items:center;gap:10px;z-index:4}
body.page-expositores .scroll-cue-txt {font-size:8px;letter-spacing:.22em;text-transform:uppercase;color:rgba(242,238,233,.35);writing-mode:vertical-rl}
body.page-expositores .scroll-cue-line {width:1px;height:64px;background:linear-gradient(to bottom,var(--go),transparent);animation:pulse__page-expositores 2.2s ease-in-out infinite}

/* PARALLAX JANELAS */
body.page-expositores .win {position:relative}
body.page-expositores .win-bg {position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important;z-index:0!important;background-size:cover!important;background-position:center!important;background-attachment:fixed!important;background-repeat:no-repeat!important}
@media(max-width:960px) {body.page-expositores .win-bg {background-attachment:scroll!important}}
body.page-expositores .win-ov {position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important;z-index:1!important}
body.page-expositores .reveal-win {height:78vh;min-height:520px;max-height:860px;position:relative;clip-path:inset(0);margin-top:0}
body.page-expositores .reveal-win-top-accent {position:absolute!important;top:0!important;left:0!important;right:0!important;height:2px!important;z-index:6!important;background:linear-gradient(to right,transparent 0%,var(--acento) 20%,var(--go) 50%,var(--acento) 80%,transparent 100%);opacity:.7}
body.page-expositores .reveal-win::before {content:'';position:absolute;inset:0;z-index:2;background:linear-gradient(to top,rgba(8,14,8,.88) 0%,rgba(8,14,8,.28) 44%,transparent 68%);pointer-events:none}
body.page-expositores .reveal-win::after {content:'';position:absolute;bottom:0;left:0;right:0;height:2px;z-index:5;background:linear-gradient(to right,transparent 0%,var(--acento) 18%,var(--go) 50%,var(--acento) 82%,transparent 100%);opacity:.9;box-shadow:0 0 12px rgba(182,141,64,.2)}
body.page-expositores .reveal-win-body {position:relative!important;z-index:4!important;height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding:0 clamp(24px,7%,80px) clamp(40px,6vh,56px)}
body.page-expositores .reveal-win-num {position:absolute!important;z-index:3!important;right:clamp(20px,6%,72px)!important;bottom:10%!important;font-family:'Playfair Display',serif;font-size:clamp(160px,20vw,280px);font-weight:700;line-height:1;color:rgba(242,238,233,.028);pointer-events:none;user-select:none;letter-spacing:-.04em}
body.page-expositores .reveal-win-eyebrow {font-size:9px;letter-spacing:.32em;text-transform:uppercase;color:var(--go);margin-bottom:clamp(16px,2vh,24px);display:flex;align-items:center;gap:14px}
body.page-expositores .reveal-win-eyebrow::before {content:'';display:inline-block;width:32px;height:1px;background:linear-gradient(to right,var(--bordo),var(--go));flex-shrink:0}
body.page-expositores .reveal-win-h2 {font-family:'Playfair Display',serif;font-size:clamp(32px,5.5vw,72px);font-weight:400;line-height:.98;letter-spacing:-.025em;color:var(--ow);text-shadow:0 4px 40px rgba(0,0,0,.5);max-width:700px;margin-bottom:clamp(12px,2vh,16px)}
body.page-expositores .reveal-win-p {font-family:'DM Sans',sans-serif;font-size:21px;font-weight:300;font-style:italic;color:rgba(242,238,233,.88);line-height:1.82;max-width:480px;text-shadow:0 2px 14px rgba(0,0,0,.35)}
body.page-expositores .reveal-win-selo {position:absolute!important;z-index:4!important;right:clamp(24px,7%,80px)!important;bottom:clamp(40px,6vh,56px)!important;text-align:right}
body.page-expositores .reveal-win-selo-nome {font-family:'Playfair Display',serif;font-size:clamp(22px,2.6vw,38px);font-weight:400;line-height:1.08;letter-spacing:-.01em;color:rgba(242,238,233,.9);text-shadow:0 4px 24px rgba(0,0,0,.45)}
body.page-expositores .reveal-win-selo-line {width:100%;height:1px;margin-bottom:10px;background:linear-gradient(to left,var(--bordo),var(--go),transparent);display:block}
@media(max-width:960px) {body.page-expositores .reveal-win {height:60vh;min-height:380px}body.page-expositores .reveal-win-selo {display:none!important}}

/* BLOCO VERDE (texto + foto lateral) */
body.page-expositores .bloco-verde {background:linear-gradient(180deg,rgba(26,40,25,0) 0px,#1A2819 60px,#1e2e1d 50%,#162214 100%);color:var(--ow);position:relative}
body.page-expositores .bloco-verde::before {content:'';display:block;height:1px;background:linear-gradient(to right,transparent 0%,var(--bordo) 20%,var(--go) 50%,var(--bordo) 80%,transparent 100%);opacity:.45}
body.page-expositores .bloco-split {display:grid;grid-template-columns:1fr 1fr;min-height:700px;align-items:stretch}
body.page-expositores .bloco-foto {position:relative;min-height:540px;clip-path:inset(0)}
body.page-expositores .bloco-body {padding:clamp(72px,11vh,120px) clamp(52px,7vw,96px);display:flex;flex-direction:column;justify-content:center}
body.page-expositores .bloco-h2 {font-family:'Playfair Display',serif;font-size:clamp(28px,3.6vw,50px);font-weight:400;line-height:1.06;letter-spacing:-.02em;color:var(--ow);margin-bottom:24px}
body.page-expositores .bloco-p {font-family:'DM Sans',sans-serif;font-size:21px;font-weight:300;color:rgba(182,175,160,.82);line-height:1.82;margin-bottom:18px}
body.page-expositores .bloco-p strong {color:var(--ow);font-weight:400}
body.page-expositores .bloco-quote {font-family:'Playfair Display',serif;font-style:italic;font-size:clamp(15px,1.5vw,17px);color:var(--go-pa);line-height:1.65;padding-left:22px;border-left:2px solid var(--bordo);margin-top:28px;margin-bottom:40px}
body.page-expositores .stat-badge {margin-top:36px;padding:20px 28px;display:inline-flex;align-items:baseline;gap:14px;border:1px solid var(--go-bd);position:relative}
body.page-expositores .stat-badge::before {content:'';position:absolute;top:0;left:0;width:40px;height:2px;background:var(--bordo)}
body.page-expositores .stat-val {font-family:'DM Sans',sans-serif;font-size:clamp(38px,5vw,48px);font-weight:300;color:var(--go);line-height:1;font-variant-numeric:tabular-nums}
body.page-expositores .stat-lbl {font-size:clamp(10px,1vw,11px);letter-spacing:.18em;text-transform:uppercase;color:rgba(242,238,233,.45);max-width:120px;line-height:1.5}

/* BLOCO DOURADO */
body.page-expositores .bloco-dourado {background:linear-gradient(180deg,rgba(182,141,64,0) 0px,#B68D40 60px,#A87E28 40%,#9A7220 100%);color:var(--verde-fundo);position:relative}
body.page-expositores .bloco-dourado::before {content:'';display:block;height:1px;background:linear-gradient(to right,transparent,var(--bordo) 20%,rgba(26,40,25,.6) 50%,var(--bordo) 80%,transparent);opacity:.4;position:absolute;top:0;left:0;right:0}
body.page-expositores .bloco-dourado .bloco-h2 {color:#1A2819}
body.page-expositores .bloco-dourado .bloco-p {color:rgba(26,40,25,.80)}
body.page-expositores .bloco-dourado .bloco-p strong {color:#1A2819;font-weight:600}
body.page-expositores .bloco-dourado .eyebrow-line {background:var(--bordo)}
body.page-expositores .bloco-dourado .eyebrow span {color:var(--bordo)}
body.page-expositores .bloco-dourado .stat-val {color:#1A2819}
body.page-expositores .bloco-dourado .stat-lbl {color:rgba(26,40,25,.55)}
body.page-expositores .bloco-dourado .stat-badge {border-color:rgba(26,40,25,.22)}
body.page-expositores .bloco-dourado .btn-on-go {color:#1A2819;border-color:rgba(26,40,25,.3)}
body.page-expositores .bloco-dourado .btn-on-go:hover {background:var(--bordo);color:var(--palha-f);border-color:var(--bordo)}

/* JANELA DUPLA PALHA (estilo lojistas) */
body.page-expositores .sec-palha {background:linear-gradient(180deg,#F2EFE9 0%,#ede8df 50%,#e4ddd3 100%);position:relative}
body.page-expositores .sec-palha::before {content:'';display:block;height:1px;background:linear-gradient(to right,transparent,var(--bordo) 25%,rgba(90,15,26,.5) 60%,transparent);opacity:.5}
body.page-expositores .janela-split {display:grid;grid-template-columns:1fr 1fr;min-height:700px;align-items:stretch}
body.page-expositores .janela-foto {position:relative;min-height:560px;clip-path:inset(0)}
body.page-expositores .janela-foto-bg {position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important;background-size:cover!important;background-position:center!important;background-attachment:fixed!important;background-repeat:no-repeat!important;z-index:0!important}
@media(max-width:960px) {body.page-expositores .janela-foto-bg {background-attachment:scroll!important}}
body.page-expositores .janela-foto-ov {position:absolute;inset:0;z-index:1;background:linear-gradient(to right,rgba(8,14,8,.08) 0%,rgba(8,14,8,.04) 50%,#F2EFE9 100%)}
body.page-expositores .janela-foto::after {content:'';position:absolute;top:8%;bottom:8%;right:0;width:1px;z-index:2;background:linear-gradient(to bottom,transparent,var(--bordo) 25%,var(--go) 75%,transparent);opacity:.45}
body.page-expositores .janela-foto-num {position:absolute;z-index:2;left:clamp(20px,4%,44px);bottom:8%;font-family:'Playfair Display',serif;font-size:clamp(140px,14vw,220px);font-weight:700;line-height:1;color:rgba(242,238,233,.06);pointer-events:none;user-select:none}
body.page-expositores .janela-corpo {padding:clamp(72px,11vh,120px) clamp(52px,7vw,96px);display:flex;flex-direction:column;justify-content:center;background:transparent}
body.page-expositores .janela-h2 {font-family:'Playfair Display',serif;font-size:clamp(28px,3.8vw,54px);font-weight:400;line-height:1.04;letter-spacing:-.02em;color:var(--bordo);margin-bottom:28px}
body.page-expositores .janela-intro {font-family:'DM Sans',sans-serif;font-size:21px;font-weight:300;font-style:italic;color:rgba(60,10,18,.72);line-height:1.82;margin-bottom:36px}
body.page-expositores .janela-points {display:flex;flex-direction:column;margin-bottom:36px}
body.page-expositores .janela-point {padding:26px 0;border-top:1px solid rgba(90,15,26,.12);display:grid;grid-template-columns:48px 1fr;gap:18px;align-items:start}
body.page-expositores .janela-point:last-child {border-bottom:1px solid rgba(90,15,26,.12)}
body.page-expositores .jp-num {font-family:'Playfair Display',serif;font-size:13px;color:var(--bordo);letter-spacing:.1em;padding-top:3px}
body.page-expositores .jp-title {font-family:'Playfair Display',serif;font-size:clamp(16px,1.6vw,19px);font-weight:400;color:var(--bordo);margin-bottom:8px;line-height:1.35}
body.page-expositores .jp-desc {font-size:21px;color:rgba(60,10,18,.65);line-height:1.82}
body.page-expositores .janela-tags {display:flex;flex-wrap:wrap;gap:10px;margin-bottom:40px}
body.page-expositores .janela-tag {font-size:clamp(7px,.9vw,8px);letter-spacing:.2em;text-transform:uppercase;color:rgba(60,10,18,.65);border:1px solid rgba(90,15,26,.35);padding:7px 14px}

/* DIFERENCIAIS */
body.page-expositores .bloco-diferenciais {background:linear-gradient(180deg,rgba(17,30,16,0) 0px,#111e10 60px,#141f13 45%,#0d160c 100%);color:var(--ow);position:relative;padding:clamp(80px,12vh,160px) clamp(24px,7%,80px) clamp(60px,9vh,100px)}
body.page-expositores .bloco-diferenciais::before {content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(to right,transparent,var(--bordo) 20%,var(--go) 50%,var(--bordo) 80%,transparent);opacity:.45}
body.page-expositores .dif-bg-word {position:absolute;bottom:-5%;left:-2%;font-family:'Playfair Display',serif;font-size:clamp(180px,22vw,380px);font-weight:700;line-height:1;color:rgba(182,141,64,.04);pointer-events:none;user-select:none}
body.page-expositores .dif-header {max-width:600px;margin-bottom:clamp(48px,7vh,80px);position:relative}
body.page-expositores .dif-h2 {font-family:'Playfair Display',serif;font-size:clamp(28px,4vw,54px);font-weight:400;line-height:1.06;letter-spacing:-.02em;color:var(--ow);margin-bottom:14px}
body.page-expositores .dif-lead {font-family:'DM Sans',sans-serif;font-size:21px;font-weight:300;font-style:italic;color:rgba(182,175,160,.7);line-height:1.82}
body.page-expositores .dif-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(182,141,64,.18);border:1px solid rgba(182,141,64,.18)}
body.page-expositores .dif-card {background:rgba(11,18,10,.8);padding:clamp(36px,5vh,52px) clamp(24px,3vw,40px);position:relative;transition:background .4s}
body.page-expositores .dif-card::before {content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(to right,var(--bordo),var(--go));transform:scaleX(0);transform-origin:left;transition:transform .55s var(--ease)}
body.page-expositores .dif-card::after {content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(to right,var(--bordo),transparent);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
body.page-expositores .dif-card:hover {background:rgba(90,15,26,.10)}
body.page-expositores .dif-card:hover::before, body.page-expositores .dif-card:hover::after {transform:scaleX(1)}
body.page-expositores .dif-num {font-family:'Playfair Display',serif;font-size:13px;color:var(--bordo);letter-spacing:.1em;margin-bottom:18px;display:flex;align-items:center;gap:10px}
body.page-expositores .dif-num::after {content:'';display:inline-block;width:18px;height:1px;background:var(--bordo);opacity:.5}
body.page-expositores .dif-title {font-family:'Playfair Display',serif;font-size:clamp(17px,1.8vw,21px);font-weight:400;color:var(--ow);margin-bottom:12px;line-height:1.25}
body.page-expositores .dif-desc {font-size:clamp(15px,1.5vw,17px);color:rgba(182,175,160,.65);line-height:1.88}
body.page-expositores .dif-card:hover .dif-num {color:var(--bordo-lt)}
body.page-expositores .dif-card:hover .dif-title {color:rgba(242,238,233,.95)}
body.page-expositores .dif-grid .dif-card:nth-child(1) {background:linear-gradient(155deg,#1e2e1d 0%,#2a3d27 55%,#162115 100%)}
body.page-expositores .dif-grid .dif-card:nth-child(2) {background:linear-gradient(155deg,#4A0E0E 0%,#5A0F1A 55%,#3a0a12 100%)}
body.page-expositores .dif-grid .dif-card:nth-child(3) {background:linear-gradient(155deg,#6e5230 0%,#876943 55%,#5e4427 100%)}
body.page-expositores .dif-grid .dif-card:nth-child(4) {background:linear-gradient(155deg,#2c3e2b 0%,#374c34 55%,#212f20 100%)}
body.page-expositores .dif-grid .dif-card:nth-child(5) {background:linear-gradient(155deg,#5A0F1A 0%,#7a1520 55%,#4A0E0E 100%)}
body.page-expositores .dif-grid .dif-card:nth-child(6) {background:linear-gradient(155deg,#5c4428 0%,#6e5230 55%,#4a3620 100%)}
body.page-expositores .dif-grid .dif-card:nth-child(n) .dif-title {color:#FAF1DC}
body.page-expositores .dif-grid .dif-card:nth-child(n) .dif-desc {color:rgba(250,241,220,.72)}
body.page-expositores .dif-grid .dif-card:nth-child(n) .dif-num {color:var(--go-lt)}
body.page-expositores .dif-grid .dif-card:nth-child(n) .dif-num::after {background:var(--go-lt);opacity:.5}

/* FECHAMENTO */
body.page-expositores .bloco-fechamento {background:linear-gradient(180deg,rgba(182,141,64,0) 0px,#B68D40 60px,#A87E28 40%,#9A7220 100%);color:var(--verde-fundo);position:relative;padding:clamp(80px,12vh,140px) clamp(24px,7%,80px);text-align:center;overflow:hidden}
body.page-expositores .bloco-fechamento::before {content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(to right,transparent,var(--bordo) 25%,rgba(26,40,25,.5) 50%,var(--bordo) 75%,transparent);opacity:.4}
body.page-expositores .fechamento-bg-word {position:absolute;bottom:-5%;right:-2%;font-family:'Playfair Display',serif;font-size:clamp(180px,22vw,380px);font-weight:700;line-height:1;color:rgba(26,40,25,.08);pointer-events:none;user-select:none}
body.page-expositores .fechamento-inner {position:relative;max-width:740px;margin:0 auto}
body.page-expositores .fechamento-h2 {font-family:'Playfair Display',serif;font-size:clamp(28px,4vw,56px);font-weight:400;line-height:1.06;letter-spacing:-.02em;color:#1A2819;margin-bottom:24px}
body.page-expositores .fechamento-p {font-family:'DM Sans',sans-serif;font-size:21px;font-weight:300;color:rgba(26,40,25,.72);line-height:1.82;max-width:580px;margin:0 auto 18px}
body.page-expositores .fechamento-actions {display:flex;gap:20px;justify-content:center;margin-top:40px;flex-wrap:wrap}

/* GRAN FINALE */
body.page-expositores .gran-finale {position:relative;height:clamp(480px,60vh,620px);background:var(--verde-fundo)}
body.page-expositores .gran-finale-bg {position:absolute;inset:0;background-size:cover;background-position:center;background-attachment:fixed;z-index:0}
@media(max-width:960px) {body.page-expositores .gran-finale-bg {background-attachment:scroll}}
body.page-expositores .gran-finale::before {content:'';position:absolute;top:0;left:0;right:0;height:2px;z-index:5;background:linear-gradient(to right,transparent,var(--bordo) 20%,var(--go) 50%,var(--bordo) 80%,transparent);opacity:.6}
body.page-expositores .gran-finale::after {content:'';position:absolute;bottom:0;left:0;right:0;height:2px;z-index:5;background:linear-gradient(to right,transparent,var(--bordo) 20%,var(--go) 50%,var(--bordo) 80%,transparent);opacity:.7}
body.page-expositores .gran-finale-overlay {position:absolute;inset:0;z-index:1;background:linear-gradient(to top,rgba(26,40,25,.9) 0%,rgba(26,40,25,.45) 50%,rgba(26,40,25,.18) 100%)}
body.page-expositores .gran-finale-content {position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding:0 clamp(24px,7%,80px) clamp(48px,7vh,72px);max-width:820px}
body.page-expositores .gf-eyebrow {display:flex;align-items:center;gap:14px;margin-bottom:20px}
body.page-expositores .gf-eyebrow-line {width:32px;height:1px;background:var(--bordo);flex-shrink:0}
body.page-expositores .gf-eyebrow span {font-size:9px;letter-spacing:.32em;text-transform:uppercase;color:var(--go)}
body.page-expositores .gf-h2 {font-family:'Playfair Display',serif;font-size:clamp(24px,3.2vw,48px);font-weight:400;line-height:1.06;letter-spacing:-.015em;color:var(--ow);margin-bottom:16px;text-shadow:0 4px 20px rgba(0,0,0,.4)}
body.page-expositores .gf-p {font-family:'DM Sans',sans-serif;font-size:21px;font-weight:300;font-style:italic;color:rgba(242,238,233,.75);line-height:1.82;max-width:580px;text-shadow:0 2px 12px rgba(0,0,0,.3)}

/* FOOTER */
body.page-expositores footer {background:var(--verde-fundo);border-top:1px solid var(--go-bd);padding:clamp(64px,9vh,100px) 0 clamp(48px,7vh,64px);position:relative;z-index:2}
body.page-expositores .gran-finale + footer {padding-top:clamp(48px,7vh,80px) !important}
body.page-expositores footer::before {content:'';display:block;position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(to right,transparent,var(--bordo) 25%,var(--go) 50%,var(--bordo) 75%,transparent);opacity:.5}
body.page-expositores .footer-top {display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:clamp(32px,5vw,64px);padding-bottom:clamp(40px,6vh,60px);border-bottom:1px solid var(--go-bd)}
body.page-expositores .ftr-brand-name {font-family:'Playfair Display',serif;font-size:clamp(18px,2vw,22px);letter-spacing:.04em;margin-bottom:4px;color:var(--go)}
body.page-expositores .ftr-brand-tag {font-size:clamp(7px,.9vw,8.5px);letter-spacing:.26em;text-transform:uppercase;color:rgba(182,141,64,.55);margin-bottom:18px}
body.page-expositores .ftr-about {font-size:clamp(12px,1.2vw,13px);color:rgba(242,238,233,.45);line-height:1.85;max-width:290px}
body.page-expositores .ftr-col-head {font-size:clamp(11px,1.05vw,12.5px);letter-spacing:.24em;text-transform:uppercase;color:var(--go);margin-bottom:22px}
body.page-expositores .ftr-col ul {list-style:none;display:flex;flex-direction:column;gap:12px}
body.page-expositores .ftr-col a {font-size:clamp(12px,1.2vw,13px);color:rgba(242,238,233,.42);text-decoration:none;transition:all .3s var(--ease);display:inline-flex;align-items:center}
body.page-expositores .ftr-col a:hover {color:var(--ow);transform:translateX(4px)}
body.page-expositores .ftr-ico { flex-shrink:0; margin-right:9px; opacity:.62; transition:transform .35s var(--ease), opacity .3s; }
body.page-expositores .ftr-col a:hover .ftr-ico { transform:scale(1.16); opacity:1; }
body.page-expositores .ftr-col li > .ftr-ico { opacity:.5; }
body.page-expositores .footer-bottom {display:flex;justify-content:space-between;align-items:center;padding-top:28px;flex-wrap:wrap;gap:16px}
body.page-expositores .ftr-copy {font-size:clamp(10px,1vw,11.5px);color:rgba(242,238,233,.32);letter-spacing:.06em}
body.page-expositores .ftr-copy strong {color:var(--go);font-weight:400}
body.page-expositores .ftr-socials {display:flex;gap:24px}
body.page-expositores .ftr-socials a {font-size:clamp(8px,1vw,9.5px);letter-spacing:.2em;text-transform:uppercase;color:rgba(242,238,233,.32);text-decoration:none;transition:color .3s}
body.page-expositores .ftr-socials a:hover {color:var(--bordo-lt)}
/* Correção pontual: em Expositores o rodapé não usa o wrapper .inner com max-width (diferença estrutural pré-existente, documentada no TODO.md), então o botão flutuante sobrepõe o link "WhatsApp" em qualquer largura acima do breakpoint mobile. Reserva espaço vertical apenas nessa faixa, sem alterar o botão nem o layout do rodapé. */
@media(min-width:641px) { body.page-expositores .footer-bottom { padding-bottom:40px; } }

/* WPP FLOAT (padrão index 15% maior) */
body.page-expositores .wpp-float {position:fixed;bottom:clamp(20px,3.5vh,32px);right:clamp(16px,2.5vw,28px);z-index:9500;display:flex;align-items:center;gap:12px;text-decoration:none}
body.page-expositores .wpp-float-ball {width:83px;height:83px;border-radius:50%;background:var(--verde-fundo);border:2px solid var(--go);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 28px rgba(182,141,64,.35),0 0 0 1px rgba(182,141,64,.15);transition:transform .3s var(--ease),box-shadow .3s}
body.page-expositores .wpp-float:hover .wpp-float-ball {transform:scale(1.1);background:var(--verde-vivo);border-color:var(--go-lt);box-shadow:0 12px 44px rgba(182,141,64,.5),0 0 0 2px rgba(182,141,64,.2)}
body.page-expositores .wpp-float-ball svg {color:var(--go)}
body.page-expositores .wpp-float-label {background:var(--verde-fundo);border:1px solid var(--go-bd);color:var(--go);font-size:9px;letter-spacing:.22em;text-transform:uppercase;padding:8px 14px;opacity:0;transform:translateX(8px);transition:opacity .3s,transform .3s var(--ease);pointer-events:none}
body.page-expositores .wpp-float:hover .wpp-float-label {opacity:1;transform:translateX(0)}
@media(max-width:640px) {body.page-expositores .wpp-float-ball {width:63px;height:63px}body.page-expositores .wpp-float-label {display:none}}

/* KEYFRAMES */
@keyframes fadeUp__page-expositores {from{opacity:0;transform:translateY(36px);filter:blur(6px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
@keyframes fadeCorner__page-expositores {to{opacity:1}}
@keyframes pulse__page-expositores {0%,100%{opacity:.3}50%{opacity:.9}}
@keyframes marquee__page-expositores {from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* RESPONSIVO */
@media(max-width:1100px) {
  body.page-expositores .nav-links, body.page-expositores .nav-cta {display:none}
  body.page-expositores .hamburger {display:flex}
  body.page-expositores .hero-corner-tr, body.page-expositores .scroll-cue {display:none}
  body.page-expositores .footer-top {grid-template-columns:1fr 1fr;gap:32px}
}
@media(max-width:960px) {
  body.page-expositores .bloco-split, body.page-expositores .janela-split {grid-template-columns:1fr}
  body.page-expositores .bloco-foto {min-height:320px}
  body.page-expositores .janela-foto {min-height:320px}
  body.page-expositores .bloco-body {padding:clamp(48px,7vh,80px) clamp(24px,5%,48px)!important}
  body.page-expositores .janela-corpo {padding:clamp(48px,7vh,80px) clamp(24px,5%,48px)!important}
  body.page-expositores .dif-grid {grid-template-columns:1fr 1fr}
}
@media(max-width:768px) {
  html {font-size:17px}
  body.page-expositores .bloco-p, body.page-expositores .fechamento-p, body.page-expositores .gf-p, body.page-expositores .reveal-win-p, body.page-expositores .dif-lead, body.page-expositores .janela-intro, body.page-expositores .jp-desc {font-size:21px !important}
  body.page-expositores .hero-sub {font-size:21px!important;line-height:1.75!important}
  body.page-expositores .dif-desc {font-size:21px !important}
}
@media(max-width:640px) {
  body.page-expositores {cursor:auto}
  body.page-expositores .cursor, body.page-expositores .cursor-ring {display:none}
  body.page-expositores .dif-grid {grid-template-columns:1fr}
  body.page-expositores .footer-top {grid-template-columns:1fr}
  body.page-expositores .footer-bottom {flex-direction:column;text-align:center}
  body.page-expositores .fechamento-actions {flex-direction:column;align-items:center}
}
@media print {
  body.page-expositores .grain, body.page-expositores .cursor, body.page-expositores .cursor-ring, body.page-expositores nav, body.page-expositores .mobile-menu, body.page-expositores .marquee-strip, body.page-expositores .wpp-float {display:none!important}
  body.page-expositores {background:white;color:black}
}

body.page-expositores .wpp-float svg { width:27px;height:27px; }

/* ── Responsividade mobile-safe ── */
@media(max-width:640px)  {
  body.page-expositores .cta-block { grid-template-columns:1fr !important; }
  body.page-expositores .cta-btns { align-items:stretch !important; }
  body.page-expositores .infra-highlight { grid-template-columns:1fr !important; gap:20px !important; }
  body.page-expositores .infra-hl-stat { text-align:left !important; }
  body.page-expositores .vantagem-split { grid-template-columns:1fr !important; }
  body.page-expositores .vantagem-foto { min-height:260px !important; }
  body.page-expositores .pilares-grid { grid-template-columns:1fr !important; }
  body.page-expositores .footer-top { grid-template-columns:1fr !important; }
  body.page-expositores .footer-bottom { flex-direction:column !important; text-align:center !important; }
  body.page-expositores .hero-stats { display:none !important; }
  body.page-expositores .reveal-win-selo { display:none !important; }
  body.page-expositores nav .nav-links, body.page-expositores nav .nav-cta { display:none !important; }
  body.page-expositores .hamburger { display:flex !important; }
  body.page-expositores .hero-h1 { font-size:clamp(34px,9vw,52px) !important; }
}
@media (max-width: 760px) {
  body.page-expositores .hero-h1 { font-size:clamp(34px,8vw,48px) !important; line-height:1.05 !important; }
  body.page-expositores nav { height:60px !important; padding:0 18px !important; }
  body.page-expositores nav.scrolled { height:54px !important; }
}
@media (max-width: 380px) {
  body.page-expositores .hero-h1 { font-size:30px !important; }
}
/* ── WhatsApp Glassmorphism Float Premium ── */
body.page-expositores .wpp-float-new {
  position:fixed; bottom:34px; right:34px; z-index:800;
  width:78px; height:78px; border-radius:50%;
  background: radial-gradient(circle at 30% 30%, rgba(207,163,85,.20), rgba(20,30,18,.84));
  backdrop-filter: blur(14px) saturate(125%);
  -webkit-backdrop-filter: blur(14px) saturate(125%);
  border:0.5px solid rgba(207,163,85,.50);
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 12px 40px rgba(182,141,64,.32),0 4px 18px rgba(0,0,0,.22),0 0 0 1px rgba(207,163,85,.16),0 0 22px rgba(207,163,85,.18),inset 0 1px 0 rgba(255,255,255,.22);
  text-decoration:none;
  transition:all .4s cubic-bezier(.2,.7,.2,1);
}
body.page-expositores .wpp-float-new:hover {
  transform:translateY(-3px) scale(1.07);
  border-color:rgba(207,163,85,.85);
  box-shadow:0 20px 56px rgba(182,141,64,.46),0 8px 24px rgba(0,0,0,.28),0 0 0 1px rgba(207,163,85,.36),0 0 36px rgba(207,163,85,.32),inset 0 1px 0 rgba(255,255,255,.32);
}
body.page-expositores .wpp-float-new svg { width:32px; height:32px; fill:rgba(232,200,140,1); display:block; pointer-events:none; filter:drop-shadow(0 2px 8px rgba(0,0,0,.40)) drop-shadow(0 0 10px rgba(207,163,85,.40)); }
@media(max-width:640px) {
  body.page-expositores .wpp-float-new { width:64px; height:64px; bottom:20px; right:20px; }
  body.page-expositores .wpp-float-new svg { width:26px; height:26px; }
}
@media(max-width:380px) {
  body.page-expositores .wpp-float-new { width:58px; height:58px; bottom:16px; right:16px; }
  body.page-expositores .wpp-float-new svg { width:24px; height:24px; }
}

/* Pulse mais sutil */
@keyframes wppGlassPulseRefined__page-expositores {
  0%,100% { box-shadow:
    0 4px 18px rgba(182,141,64,.10),
    0 1px 6px rgba(0,0,0,.10),
    inset 0 1px 0 rgba(255,255,255,.08),
    0 0 0 1px rgba(255,255,255,.04); }
  50%     { box-shadow:
    0 6px 24px rgba(182,141,64,.18),
    0 2px 8px rgba(0,0,0,.12),
    inset 0 1px 0 rgba(255,255,255,.12),
    0 0 0 1px rgba(207,163,85,.15); }
}
body.page-expositores .wpp-float-new, body.page-expositores .wpp-float { animation: wppGlassPulseRefined__page-expositores 4.2s ease-in-out infinite !important; }
body.page-expositores .wpp-float-new:hover, body.page-expositores .wpp-float:hover { animation: none !important; }

/* ═══ LAPIDAÇÃO FINAL v2 ═══════════════════════════════════════
   1. Contadores proporcionais
   2. Botões ghost com borda fina
   3. WPP Glassmorphism 15% maior (82px)
   4. Títulos cor única / sem bold misto
   5. Typography 21/18px enforcement reforçado
══════════════════════════════════════════════════════════════ */

/* 1 — CONTADORES: elegantes, não dominantes */
body.page-expositores .hero-stat-val, body.page-expositores .hero-stat-val .numero { font-size: clamp(18px, 1.8vw, 24px) !important; }
body.page-expositores .infra-hl-val, body.page-expositores .infra-hl-val .numero { font-size: clamp(38px, 4.8vw, 64px) !important; }
body.page-expositores .infra-val, body.page-expositores .infra-val .numero { font-size: clamp(24px, 2.8vw, 36px) !important; }
body.page-expositores .rooftop-stat-val, body.page-expositores .rooftop-stat-val .numero { font-size: clamp(30px, 3.8vw, 44px) !important; }
body.page-expositores .spec-n, body.page-expositores .spec-n .numero { font-size: clamp(24px, 3vw, 36px) !important; }
body.page-expositores .infra-hl-val--rooftop, body.page-expositores .infra-hl-val--rooftop .numero { font-size: clamp(36px, 4.4vw, 58px) !important; }

/* Contadores hero na seção de infra eventos (inline style override) */
body.page-expositores [style*="font-size:clamp(64px,8vw,110px)"], body.page-expositores [style*="font-size:clamp(64px, 8vw, 110px)"] {
  font-size: clamp(38px, 4.8vw, 64px) !important;
}

/* 2 — BOTÕES: todos transparentes com borda fina + fill no hover */
body.page-expositores .btn-primary {
  background: transparent !important;
  box-shadow: none !important;
}
/* Garante que fill animation funciona */
body.page-expositores .btn-primary::before { z-index: 0; }
body.page-expositores .btn-primary > *, body.page-expositores .btn-primary span, body.page-expositores .btn-primary svg { position: relative; z-index: 1; }

/* Botões sólidos → ghost em contextos palha/dourado */
body.page-expositores .bloco-verde .btn-primary, body.page-expositores .bloco-social-palha .btn-primary, body.page-expositores .bloco-ambar .btn-primary, body.page-expositores .bloco-form .btn-primary, body.page-expositores .sec-dourado .btn-primary { background: transparent !important; box-shadow: none !important; }

/* Botão formulário: bordô ghost */
body.page-expositores .bloco-form .btn-primary { color: var(--bordo) !important; border-color: rgba(74,14,14,.45) !important; }
body.page-expositores .bloco-form .btn-primary::before { background: var(--bordo) !important; }
body.page-expositores .bloco-form .btn-primary:hover { color: var(--palha-f) !important; }

/* btn-form-wa mantém preenchido (é CTA WhatsApp) — não alterar */

/* 3 — WPP FLOAT: padronizado com a Home (referência única do site) */
body.page-expositores .wpp-float-new, body.page-expositores .wpp-float {
  width: 78px !important;
  height: 78px !important;
  bottom: 34px !important;
  right: 34px !important;
  border-radius: 50% !important;
  border: 0.5px solid rgba(207,163,85,.50) !important;
  background:
    radial-gradient(circle at 30% 30%, rgba(207,163,85,.20), rgba(20,30,18,.84)) !important;
  backdrop-filter: blur(14px) saturate(125%) !important;
  -webkit-backdrop-filter: blur(14px) saturate(125%) !important;
  box-shadow:
    0 12px 40px rgba(182,141,64,.32),
    0 4px 18px rgba(0,0,0,.22),
    0 0 0 1px rgba(207,163,85,.16),
    0 0 22px rgba(207,163,85,.18),
    inset 0 1px 0 rgba(255,255,255,.22) !important;
  transition: all .4s cubic-bezier(.2,.7,.2,1) !important;
}
body.page-expositores .wpp-float-new svg, body.page-expositores .wpp-float svg {
  width: 32px !important;
  height: 32px !important;
  fill: rgba(232,200,140,1) !important;
  filter:
    drop-shadow(0 2px 8px rgba(0,0,0,.40))
    drop-shadow(0 0 10px rgba(207,163,85,.40)) !important;
}
body.page-expositores .wpp-float-new:hover, body.page-expositores .wpp-float:hover {
  transform: translateY(-3px) scale(1.07) !important;
  border-color: rgba(207,163,85,.85) !important;
  box-shadow:
    0 20px 56px rgba(182,141,64,.46),
    0 8px 24px rgba(0,0,0,.28),
    0 0 0 1px rgba(207,163,85,.36),
    0 0 36px rgba(207,163,85,.32),
    inset 0 1px 0 rgba(255,255,255,.32) !important;
}
body.page-expositores .wpp-float-new:hover svg, body.page-expositores .wpp-float:hover svg {
  fill: rgba(245,225,178,1) !important;
  filter:
    drop-shadow(0 2px 10px rgba(0,0,0,.45))
    drop-shadow(0 0 14px rgba(207,163,85,.55)) !important;
}
@media(max-width:640px) {
  body.page-expositores .wpp-float-new, body.page-expositores .wpp-float { width: 64px !important; height: 64px !important; bottom: 20px !important; right: 20px !important; }
  body.page-expositores .wpp-float-new svg, body.page-expositores .wpp-float svg { width: 26px !important; height: 26px !important; }
}
@media(max-width:380px) {
  body.page-expositores .wpp-float-new, body.page-expositores .wpp-float { width: 58px !important; height: 58px !important; bottom: 16px !important; right: 16px !important; }
  body.page-expositores .wpp-float-new svg, body.page-expositores .wpp-float svg { width: 24px !important; height: 24px !important; }
}
/* Pulse premium no desktop (padrão Home) */
@media (pointer: fine)  {
  @keyframes wppPremiumPulse__page-expositores {
    0%, 100% { box-shadow:
      0 12px 40px rgba(182,141,64,.32),
      0 4px 18px rgba(0,0,0,.22),
      0 0 0 1px rgba(207,163,85,.16),
      0 0 22px rgba(207,163,85,.18),
      inset 0 1px 0 rgba(255,255,255,.22),
      0 0 0 0 rgba(207,163,85,.36); }
    50% { box-shadow:
      0 14px 48px rgba(182,141,64,.40),
      0 6px 22px rgba(0,0,0,.26),
      0 0 0 1px rgba(207,163,85,.24),
      0 0 32px rgba(207,163,85,.28),
      inset 0 1px 0 rgba(255,255,255,.28),
      0 0 0 18px rgba(207,163,85,0); }
  }
  body.page-expositores .wpp-float-new, body.page-expositores .wpp-float { animation: wppPremiumPulse__page-expositores 4.2s ease-in-out infinite !important; }
  body.page-expositores .wpp-float-new:hover, body.page-expositores .wpp-float:hover { animation: none !important; }
}

/* Z-index sanity: padronizado com a Home (800, e não 9500) */
body.page-expositores .wpp-float-new, body.page-expositores .wpp-float { z-index: 800 !important; }

/* 4 — TÍTULOS: cor única, sem span colorido interno */
body.page-expositores h1, body.page-expositores h2, body.page-expositores h3, body.page-expositores .hero-h1, body.page-expositores .pilares-h2, body.page-expositores .vantagem-h2, body.page-expositores .infra-h2, body.page-expositores .infra-hl-title, body.page-expositores .pilar-name, body.page-expositores .reveal-win-h2, body.page-expositores .janela-win-h2, body.page-expositores .bloco-h2, body.page-expositores .split-h3, body.page-expositores .curadoria-h2, body.page-expositores .gastronomia-h2, body.page-expositores .rooftop-h2, body.page-expositores .porque-h2, body.page-expositores .gf-h2, body.page-expositores .cta-h2, body.page-expositores .tipologia-h2, body.page-expositores .form-h2, body.page-expositores .dif-h2, body.page-expositores .janela-h2, body.page-expositores .fechamento-h2 {
  /* Remove multi-color spans: children inherit parent color */
}
body.page-expositores h1 strong, body.page-expositores h2 strong, body.page-expositores h3 strong, body.page-expositores .hero-h1 strong, body.page-expositores .pilares-h2 strong, body.page-expositores .vantagem-h2 strong {
  font-weight: inherit !important;
  color: inherit !important;
}
/* em italics preservados, mas sem override de cor */
body.page-expositores h1 em, body.page-expositores h2 em, body.page-expositores h3 em { color: inherit !important; }


@media(max-width:640px) {
  body.page-expositores p, body.page-expositores li, body.page-expositores .pilar-desc, body.page-expositores .vpoint-desc, body.page-expositores .porq-desc, body.page-expositores .tipo-desc, body.page-expositores .infra-desc, body.page-expositores .infra-loc-desc, body.page-expositores .reveal-win-p, body.page-expositores .cta-p, body.page-expositores .porque-lead, body.page-expositores .split-p, body.page-expositores .split-intro, body.page-expositores .cs-p, body.page-expositores .bloco-p, body.page-expositores .bloco-sub-txt, body.page-expositores .curadoria-body p, body.page-expositores .rooftop-body p, body.page-expositores .infra-hl-desc, body.page-expositores .infra-sub, body.page-expositores .gf-p, body.page-expositores .form-lead, body.page-expositores .janela-win-p, body.page-expositores .janela-intro, body.page-expositores .jp-desc, body.page-expositores .fechamento-p, body.page-expositores .vantagem-intro, body.page-expositores .dif-lead, body.page-expositores .dif-desc, body.page-expositores .form-contact-body, body.page-expositores .form-promise-txt, body.page-expositores .ftr-about, body.page-expositores .bloco-cta-label { font-size:21px !important; }
}

/* 6 — JANELAS DUPLAS: transições fluidas sem pulos */
body.page-expositores .reveal-win { margin-top: 0 !important; margin-bottom: 0 !important; }
body.page-expositores .janelas-duplas { margin-top: 0 !important; margin-bottom: 0 !important; }
body.page-expositores .marquee-strip { margin-top: 0 !important; margin-bottom: 0 !important; }
body.page-expositores .bloco, body.page-expositores .bloco-verde, body.page-expositores .bloco-social-palha, body.page-expositores .bloco-ambar, body.page-expositores .bloco-form, body.page-expositores .sec-verde, body.page-expositores .sec-palha, body.page-expositores .sec-dourado, body.page-expositores .sec-verde-prof, body.page-expositores .bloco-curadoria, body.page-expositores .bloco-tipologia, body.page-expositores .bloco-gastronomia, body.page-expositores .bloco-formulario, body.page-expositores .rooftop { margin-top: 0 !important; margin-bottom: 0 !important; }

/* Fix expositores btn-primary → ghost */
body.page-expositores .btn-primary {
  background: transparent !important;
  color: var(--go) !important;
  border: 1px solid rgba(182,141,64,.52) !important;
  box-shadow: none !important;
  padding: 18px clamp(34px,5vw,52px) !important;
  font-size: clamp(11px,1.05vw,12.5px) !important;
}
body.page-expositores .btn-primary::before { background: var(--go) !important; }
body.page-expositores .btn-primary:hover { color: var(--verde-fundo) !important; }

body.page-expositores .btn-outline {
  background: transparent !important;
  color: var(--go) !important;
  border: 1px solid var(--go-bd-dk) !important;
}
body.page-expositores .btn-outline::before { background: rgba(182,141,64,.1) !important; }
body.page-expositores .btn-outline:hover { background: transparent !important; border-color: var(--bordo) !important; }



/* ===== ajuste final de contraste, big numbers, forms e footer ===== */

/* Blocos de cards/features escuros: textos e ícones em branco */
body.page-expositores .card, body.page-expositores .feature, body.page-expositores .feature-card, body.page-expositores .amenity, body.page-expositores .amenity-card, body.page-expositores .service-card, body.page-expositores .stat-card, body.page-expositores .rooftop-card, body.page-expositores .parking-card, body.page-expositores .valet-card, body.page-expositores [class*="card"], body.page-expositores [class*="feature"], body.page-expositores [class*="amenity"] {
  color:#fff !important;
}

body.page-expositores .card *, body.page-expositores .feature *, body.page-expositores .feature-card *, body.page-expositores .amenity *, body.page-expositores .amenity-card *, body.page-expositores .service-card *, body.page-expositores .stat-card *, body.page-expositores .rooftop-card *, body.page-expositores .parking-card *, body.page-expositores .valet-card *, body.page-expositores [class*="card"] *, body.page-expositores [class*="feature"] *, body.page-expositores [class*="amenity"] * {
  color:#fff !important;
  fill:#fff !important;
  stroke:#fff !important;
}

/* Big numbers padronizados */
body.page-expositores .stat, body.page-expositores .stats, body.page-expositores .big-number, body.page-expositores .metric, body.page-expositores .number, body.page-expositores .counter, body.page-expositores [class*="stat"], body.page-expositores [class*="metric"], body.page-expositores [class*="number"], body.page-expositores [class*="counter"] {
  color:inherit;
}

body.page-expositores .stat strong, body.page-expositores .stats strong, body.page-expositores .big-number, body.page-expositores .metric, body.page-expositores .number, body.page-expositores .counter, body.page-expositores [class*="big"] strong, body.page-expositores [class*="stat"] strong, body.page-expositores [class*="metric"] strong, body.page-expositores [class*="number"] strong {
  font-size:clamp(48px,6vw,92px) !important;
  line-height:.95 !important;
  font-weight:600 !important;
  letter-spacing:-.04em !important;
}

/* Subtítulos dos big numbers: 2 Andares, 2.130m², vagas, rooftop etc */
body.page-expositores .stat span, body.page-expositores .stats span, body.page-expositores .stat p, body.page-expositores .stats p, body.page-expositores .metric-label, body.page-expositores .big-number-subtitle, body.page-expositores .stat-label, body.page-expositores .counter small, body.page-expositores [class*="stat"] span, body.page-expositores [class*="metric"] span, body.page-expositores [class*="number"] span {
  font-size:clamp(20px,2vw,30px) !important;
  line-height:1.25 !important;
  font-weight:500 !important;
  letter-spacing:.01em !important;
}

/* Ícones acima de Tablado / 4x6 / similares */
body.page-expositores svg, body.page-expositores .icon, body.page-expositores [class*="icon"] {
  color:#fff !important;
  fill:#fff !important;
  stroke:#fff !important;
}

/* Formulários: menores, mais elegantes e padronizados */
body.page-expositores form, body.page-expositores .form, body.page-expositores .newsletter, body.page-expositores .proposal-form, body.page-expositores [class*="form"] {
  font-size:16px !important;
}

body.page-expositores form label, body.page-expositores .form label, body.page-expositores form small, body.page-expositores .form small {
  font-size:14px !important;
  line-height:1.35 !important;
  letter-spacing:.03em !important;
}

body.page-expositores input, body.page-expositores select, body.page-expositores textarea, body.page-expositores form input, body.page-expositores form select, body.page-expositores form textarea {
  font-size:15px !important;
  line-height:1.35 !important;
  padding:12px 14px !important;
}

body.page-expositores input::placeholder, body.page-expositores textarea::placeholder {
  font-size:15px !important;
}

body.page-expositores form button, body.page-expositores .form button, body.page-expositores .newsletter button, body.page-expositores .proposal-form button, body.page-expositores [class*="form"] button {
  font-size:14px !important;
  padding:12px 22px !important;
  letter-spacing:.06em !important;
}

/* Rodapé médio, legível, sem ficar gigante */
body.page-expositores footer, body.page-expositores .footer, body.page-expositores .site-footer, body.page-expositores [class*="footer"] {
  font-size:16px !important;
  line-height:1.55 !important;
}

body.page-expositores footer p, body.page-expositores footer li, body.page-expositores footer a, body.page-expositores footer span, body.page-expositores .footer p, body.page-expositores .footer li, body.page-expositores .footer a, body.page-expositores .footer span, body.page-expositores .site-footer p, body.page-expositores .site-footer li, body.page-expositores .site-footer a, body.page-expositores .site-footer span, body.page-expositores [class*="footer"] p, body.page-expositores [class*="footer"] li, body.page-expositores [class*="footer"] a, body.page-expositores [class*="footer"] span {
  font-size:16px !important;
  line-height:1.55 !important;
  letter-spacing:.02em !important;
}

body.page-expositores footer small, body.page-expositores .footer small, body.page-expositores .site-footer small, body.page-expositores [class*="footer"] small {
  font-size:14px !important;
}

/* Textos auxiliares que não são form nem footer continuam maiores */
body.page-expositores :not(form):not(form *):not(footer):not(footer *).meta, body.page-expositores :not(form):not(form *):not(footer):not(footer *).caption, body.page-expositores :not(form):not(form *):not(footer):not(footer *).microtext, body.page-expositores :not(form):not(form *):not(footer):not(footer *).amenities, body.page-expositores :not(form):not(form *):not(footer):not(footer *).details, body.page-expositores :not(form):not(form *):not(footer):not(footer *).info-line {
  font-size:clamp(18px,1.8vw,22px) !important;
}


/* labels dos big numbers MUITO maiores */
body.page-expositores .metric-label, body.page-expositores .big-number-subtitle, body.page-expositores .stat-label, body.page-expositores .counter small, body.page-expositores [class*="stat"] span, body.page-expositores [class*="metric"] span, body.page-expositores [class*="number"] span {
font-size:clamp(28px,2.8vw,42px)!important;
line-height:1.2!important;
font-weight:500!important;
}

/* blocos teto/valet/estacionamento todos brancos */
body.page-expositores .teto, body.page-expositores .feature-card, body.page-expositores .service-card, body.page-expositores .amenity-card, body.page-expositores .parking-card, body.page-expositores .valet-card, body.page-expositores [class*="feature"], body.page-expositores [class*="service"], body.page-expositores [class*="amenity"] {
color:#fff!important;
}
body.page-expositores .teto *, body.page-expositores .feature-card *, body.page-expositores .service-card *, body.page-expositores .amenity-card *, body.page-expositores .parking-card *, body.page-expositores .valet-card *, body.page-expositores [class*="feature"] *, body.page-expositores [class*="service"] *, body.page-expositores [class*="amenity"] * {
color:#fff!important;
fill:#fff!important;
stroke:#fff!important;
}


/* reduzir títulos/labels do form em 20% */
body.page-expositores form label, body.page-expositores .form label, body.page-expositores .proposal-form label, body.page-expositores [class*="form"] label {
font-size:11.2px!important; /* ~20% menor que 14 */
letter-spacing:.03em!important;
line-height:1.3!important;
}


/* ===== correção bloco features: textos/títulos brancos ===== */
body.page-expositores .feature-card, body.page-expositores .service-card, body.page-expositores .amenity-card, body.page-expositores .parking-card, body.page-expositores .valet-card, body.page-expositores .teto, body.page-expositores [class*="feature"], body.page-expositores [class*="service"], body.page-expositores [class*="amenity"], body.page-expositores [class*="parking"], body.page-expositores [class*="valet"] {
  color:#fff !important;
}

body.page-expositores .feature-card *, body.page-expositores .service-card *, body.page-expositores .amenity-card *, body.page-expositores .parking-card *, body.page-expositores .valet-card *, body.page-expositores .teto *, body.page-expositores [class*="feature"] *, body.page-expositores [class*="service"] *, body.page-expositores [class*="amenity"] *, body.page-expositores [class*="parking"] *, body.page-expositores [class*="valet"] * {
  color:#fff !important;
  fill:#fff !important;
  stroke:#fff !important;
}

/* garante que textos inline com cor própria também fiquem brancos nesses cards */
body.page-expositores .feature-card [style], body.page-expositores .service-card [style], body.page-expositores .amenity-card [style], body.page-expositores .parking-card [style], body.page-expositores .valet-card [style], body.page-expositores [class*="feature"] [style], body.page-expositores [class*="service"] [style], body.page-expositores [class*="amenity"] [style], body.page-expositores [class*="parking"] [style], body.page-expositores [class*="valet"] [style] {
  color:#fff !important;
}

/* ===== padronização do big number 350 vagas / estacionamento ===== */
body.page-expositores .parking-card strong, body.page-expositores .parking-card .number, body.page-expositores .parking-card .metric, body.page-expositores [class*="parking"] strong, body.page-expositores [class*="parking"] .number, body.page-expositores [class*="parking"] .metric {
  display:block !important;
  font-size:clamp(48px,6vw,92px) !important;
  line-height:.95 !important;
  font-weight:600 !important;
  letter-spacing:-.04em !important;
  color:#fff !important;
}

body.page-expositores .parking-card small, body.page-expositores .parking-card span, body.page-expositores .parking-card .metric-label, body.page-expositores [class*="parking"] small, body.page-expositores [class*="parking"] span, body.page-expositores [class*="parking"] .metric-label {
  display:block !important;
  font-size:clamp(22px,2.4vw,34px) !important;
  line-height:1.2 !important;
  font-weight:500 !important;
  letter-spacing:.01em !important;
  color:#fff !important;
}

/* caso esteja escrito grudado como 350vagas */
body.page-expositores .parking-card, body.page-expositores [class*="parking"] {
  word-spacing:.12em;
}


/* força absoluta branco nesses blocos */
body.page-expositores .feature-grid *, body.page-expositores .features *, body.page-expositores .cards-grid *, body.page-expositores .cards-grid h1, body.page-expositores .cards-grid h2, body.page-expositores .cards-grid h3, body.page-expositores .cards-grid h4, body.page-expositores .cards-grid h5, body.page-expositores .cards-grid p, body.page-expositores .cards-grid span, body.page-expositores .cards-grid strong, body.page-expositores .cards-grid small, body.page-expositores .amenities-grid *, body.page-expositores [data-section="features"] *, body.page-expositores section.features * {
color:#ffffff !important;
-webkit-text-fill-color:#ffffff !important;
fill:#ffffff !important;
stroke:#ffffff !important;
}

/* overlays */
body.page-expositores .feature-grid, body.page-expositores .cards-grid, body.page-expositores .features {
color:#fff!important;
}


/* texto descritivo mais forte */
body.page-expositores .feature-card p, body.page-expositores .amenity-card p, body.page-expositores .service-card p, body.page-expositores .cards-grid p {
font-weight:600!important;
font-size:1.18rem!important;
line-height:1.7!important;
}

/* reduzir números laterais */
body.page-expositores .metric, body.page-expositores .big-number, body.page-expositores .counter, body.page-expositores [class*="stat"] strong, body.page-expositores [class*="number"] strong {
font-size:clamp(38px,4.8vw,68px)!important;
}


body.page-expositores .bloco-candidatura {
  background:linear-gradient(180deg,rgba(242,239,233,0) 0px,#F2EFE9 60px,#ede8df 55%,#e8e2d8 100%);
  color:var(--bordo); position:relative; z-index:10;
}
body.page-expositores .bloco-candidatura::before { content:''; display:block; height:1px; background:linear-gradient(to right,transparent,var(--go) 20%,var(--bordo) 50%,var(--go) 80%,transparent); opacity:.4; }
body.page-expositores .candidatura-inner {
  max-width:1440px; margin:0 auto;
  padding:clamp(64px,10vh,100px) clamp(24px,6vw,80px) clamp(80px,12vh,120px);
  display:grid; grid-template-columns:1fr 1fr; gap:clamp(48px,6vw,88px); align-items:start;
}
body.page-expositores .candidatura-left { position:sticky; top:100px; }
body.page-expositores .cand-eyebrow { font-size:clamp(8px,1vw,9px); letter-spacing:.3em; text-transform:uppercase; color:var(--bordo); display:flex; align-items:center; gap:14px; margin-bottom:22px; }
body.page-expositores .cand-eyebrow::before { content:''; width:28px; height:1px; background:linear-gradient(to right,var(--bordo),var(--go)); flex-shrink:0; }
body.page-expositores .cand-h2 { font-family:'Playfair Display',serif; font-size:clamp(26px,3vw,44px); font-weight:400; line-height:1.06; letter-spacing:-.015em; color:var(--bordo); margin-bottom:18px; }
body.page-expositores .cand-h2 em { font-style:italic; color:inherit; }
body.page-expositores .cand-p { font-family:'DM Sans',sans-serif; font-size:21px; font-weight:300; font-style:italic; color:rgba(60,10,18,.72); line-height:1.78; margin-bottom:28px; }
body.page-expositores .cand-selos { display:flex; flex-direction:column; gap:12px; }
body.page-expositores .cand-selo { display:flex; align-items:center; gap:12px; font-size:clamp(13px,1.1vw,13px); color:rgba(60,10,18,.65); letter-spacing:.04em; }
body.page-expositores .cand-selo::before { content:''; width:4px; height:4px; background:var(--bordo); transform:rotate(45deg); flex-shrink:0; }
body.page-expositores .cand-wa { display:inline-flex; align-items:center; gap:12px; background:var(--bordo); color:var(--palha-f); text-decoration:none; font-size:clamp(9px,1vw,10px); letter-spacing:.22em; text-transform:uppercase; padding:14px clamp(20px,2.5vw,30px); margin-top:28px; transition:all .35s cubic-bezier(0.16,1,0.3,1); }
body.page-expositores .cand-wa:hover { background:var(--bordo2); transform:translateY(-2px); box-shadow:0 8px 28px rgba(90,15,26,.28); }

/* form premium lado direito */
body.page-expositores .cand-form-wrap {
  background:linear-gradient(145deg,#3d0a11 0%,#4a0c15 55%,#350810 100%);
  padding:clamp(36px,5vh,48px) clamp(28px,4vw,44px);
  border:1px solid rgba(245,235,221,.12);
  position:relative; overflow:hidden;
  box-shadow:0 32px 80px rgba(0,0,0,.4), 0 8px 24px rgba(0,0,0,.22);
}
body.page-expositores .cand-form-wrap::before { content:''; position:absolute; top:0; left:0; width:48px; height:2px; background:linear-gradient(to right,var(--palha-f),transparent); }
body.page-expositores .cand-form-title { font-family:'Playfair Display',serif; font-size:clamp(18px,2vw,26px); font-weight:400; color:var(--palha-f); margin-bottom:4px; letter-spacing:-.01em; }
body.page-expositores .cand-form-sub { font-size:clamp(13px,1vw,13px); color:rgba(245,235,221,.42); margin-bottom:26px; letter-spacing:.04em; }
body.page-expositores .cand-fg { display:flex; flex-direction:column; gap:5px; margin-bottom:16px; }
body.page-expositores .cand-fg label { font-size:clamp(7.5px,.9vw,8.5px); letter-spacing:.26em; text-transform:uppercase; color:rgba(245,235,221,.48); }
body.page-expositores .cand-fg input, body.page-expositores .cand-fg select, body.page-expositores .cand-fg textarea {
  background:rgba(245,235,221,.06); border:none; border-bottom:1px solid rgba(245,235,221,.18);
  padding:12px 10px; color:var(--palha-f); font-family:'DM Sans',sans-serif;
  font-size:clamp(13px,1.3vw,15px); outline:none; width:100%;
  transition:all .3s cubic-bezier(0.16,1,0.3,1);
}
body.page-expositores .cand-fg input:focus, body.page-expositores .cand-fg select:focus, body.page-expositores .cand-fg textarea:focus { border-bottom-color:var(--palha-f); background:rgba(245,235,221,.09); }
body.page-expositores .cand-fg input::placeholder, body.page-expositores .cand-fg textarea::placeholder { color:rgba(245,235,221,.25); }
body.page-expositores .cand-fg select option { background:#3d0a11; color:var(--palha-f); }
body.page-expositores .cand-fg textarea { resize:none; min-height:80px; }
body.page-expositores .cand-form-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
body.page-expositores .cand-form-foot { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:22px; padding-top:16px; border-top:1px solid rgba(245,235,221,.12); flex-wrap:wrap; }
body.page-expositores .cand-form-note { font-size:clamp(9px,.9vw,11px); color:rgba(245,235,221,.32); }
body.page-expositores .cand-btn-submit {
  display:inline-flex; align-items:center; gap:10px;
  background:transparent; color:var(--palha-f); border:1px solid rgba(245,235,221,.35);
  font-size:clamp(8px,.95vw,10px); letter-spacing:.22em; text-transform:uppercase;
  padding:13px clamp(20px,2.5vw,32px); font-family:'DM Sans',sans-serif; cursor:pointer;
  transition:all .35s cubic-bezier(0.16,1,0.3,1); position:relative; overflow:hidden;
}
body.page-expositores .cand-btn-submit::before { content:''; position:absolute; inset:0; background:rgba(245,235,221,.12); transform:translateY(100%); transition:transform .4s cubic-bezier(0.16,1,0.3,1); }
body.page-expositores .cand-btn-submit:hover::before { transform:translateY(0); }
body.page-expositores .cand-btn-submit:hover { border-color:rgba(245,235,221,.6); transform:translateY(-1px); }
@media(max-width:960px) { body.page-expositores .candidatura-inner { grid-template-columns:1fr; } body.page-expositores .candidatura-left { position:static; } }
@media(max-width:640px) { body.page-expositores .cand-form-row { grid-template-columns:1fr; } }

body.page-expositores a[href^="http"]:not(.btn-primary):not(.btn-ghost):not(.btn-ghost-dk):not(.btn-outline):not(.btn-outline-amber):not(.btn-form-submit):not(.cand-btn-submit):not(.cand-wa):not(.nav-cta):not(.btn-hero-ig):not(.btn-bordo):not(.rt2-format-link):not(.btn-form-loc-a):not(.btn-form-email-a):not(.btn-form-wa-a):not(.wpp-float-new):not(.wpp-float),
body.page-expositores a[href^="mailto"]:not(.btn-primary):not(.btn-ghost):not(.btn-ghost-dk):not(.btn-outline):not(.btn-outline-amber):not(.btn-form-submit):not(.cand-btn-submit):not(.cand-wa):not(.nav-cta):not(.btn-hero-ig):not(.btn-bordo):not(.rt2-format-link):not(.btn-form-loc-a):not(.btn-form-email-a):not(.btn-form-wa-a):not(.wpp-float-new):not(.wpp-float),
body.page-expositores a[href^="tel"]:not(.btn-primary):not(.btn-ghost):not(.btn-ghost-dk):not(.btn-outline):not(.btn-outline-amber):not(.btn-form-submit):not(.cand-btn-submit):not(.cand-wa):not(.nav-cta):not(.btn-hero-ig):not(.btn-bordo):not(.rt2-format-link):not(.btn-form-loc-a):not(.btn-form-email-a):not(.btn-form-wa-a):not(.wpp-float-new):not(.wpp-float),
body.page-expositores a[href^="https://wa.me"]:not(.btn-primary):not(.btn-ghost):not(.btn-ghost-dk):not(.btn-outline):not(.btn-outline-amber):not(.btn-form-submit):not(.cand-btn-submit):not(.cand-wa):not(.nav-cta):not(.btn-hero-ig):not(.btn-bordo):not(.rt2-format-link):not(.btn-form-loc-a):not(.btn-form-email-a):not(.btn-form-wa-a):not(.wpp-float-new):not(.wpp-float),
body.page-expositores a[href*="instagram"]:not(.btn-primary):not(.btn-ghost):not(.btn-ghost-dk):not(.btn-outline):not(.btn-outline-amber):not(.btn-form-submit):not(.cand-btn-submit):not(.cand-wa):not(.nav-cta):not(.btn-hero-ig):not(.btn-bordo):not(.rt2-format-link):not(.btn-form-loc-a):not(.btn-form-email-a):not(.btn-form-wa-a):not(.wpp-float-new):not(.wpp-float) {
  color: inherit !important;
  text-decoration: none !important;
  -webkit-text-decoration: none !important;
}
body.page-expositores a, body.page-expositores a:link, body.page-expositores a:visited, body.page-expositores a:hover, body.page-expositores a:active, body.page-expositores a:focus {
  text-decoration: none !important;
  -webkit-tap-highlight-color: transparent;
}

/* Acessibilidade — focus state premium */
body.page-expositores a:focus-visible, body.page-expositores button:focus-visible {
  outline: 1px solid var(--go);
  outline-offset: 4px;
  border-radius: 1px;
}

/* Reduced motion — respeito */
@media (prefers-reduced-motion: reduce)  {
  body.page-expositores *, body.page-expositores *::before, body.page-expositores *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}


/* ============================================================
   PAGINA: lojistas.html  (scope: body.page-lojistas)
   ============================================================ */

/* ── Reset global de links ── */
body.page-lojistas a, body.page-lojistas a:hover, body.page-lojistas a:visited, body.page-lojistas a:active { color: inherit; text-decoration: none; }

/* ═══════════════════════════════════════════════════════════════
   LOJISTAS MERCADO DE ORIGEM
   DNA Index Ouro · Versão Refinada 2026
   Scroll Infinito · Double-Window Parallax · Glassmorphism
═══════════════════════════════════════════════════════════════ */
body.page-lojistas {
  --verde:       #1A2819;
  --verde-vivo:  #3A4D39;
  --verde-card:  #1e2e1d;
  --verde-deep:  #111e10;
  --palha:       #F2EFE9;
  --palha-dark:  #e6e1d8;
  --palha-mid:   #ede8df;
  --ow:          #F2EEE9;
  --go:          #B68D40;
  --go-lt:       #cfa355;
  --go-pa:       #d4b87a;
  --go-bd:       rgba(182,141,64,.22);
  --go-bd-dk:    rgba(182,141,64,.38);
  --bordo:       #5A0F1A;
  --bordo2:      #7a1520;
  --bordo-lt:    #9e1d2a;
  --bordo-bd:    rgba(90,15,26,.35);
  --palha-f:     #F5EBDD;
  --acento:      #2C4A2B;
  --mu:          #7a8a79;
  --mu-dk:       #5a6a59;
  --bordo-prof:  #4A0E0E;
  --ease:        cubic-bezier(0.16,1,0.3,1);
  --shadow-deep: 0 20px 60px rgba(0,0,0,.35),0 6px 20px rgba(0,0,0,.18);
  --shadow-card: 0 12px 40px rgba(0,0,0,.18),0 3px 12px rgba(0,0,0,.10);
  --safe: clamp(20px,6vw,80px);
}

/* ── Reset & Base ── */
html, body.page-lojistas { overflow-x:hidden; max-width:100%; }
body.page-lojistas *, body.page-lojistas *::before, body.page-lojistas *::after { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; font-size:16px; }
body.page-lojistas {
  background:var(--verde); color:var(--ow);
  font-family:'DM Sans',sans-serif; font-weight:300;
  /* cursor:none removido — agora via @media (pointer:fine) */
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
  line-height:1.6; letter-spacing:.015em;
}
body.page-lojistas img { display:block; object-fit:cover; max-width:100%; }
body.page-lojistas h1 em, body.page-lojistas h2 em, body.page-lojistas h3 em, body.page-lojistas p em { font-style:italic; color:inherit; }

/* ── Cursor ── */
body.page-lojistas .cursor {
  position:fixed; left:0; top:0; width:8px; height:8px; border-radius:50%;
  background:var(--go); pointer-events:none; z-index:9999;
  transform:translate(-50%,-50%);
  will-change:transform;
  box-shadow:0 0 20px rgba(182,141,64,.4);
  transition:transform .15s var(--ease);
}
body.page-lojistas .cursor-ring {
  position:fixed; left:0; top:0; width:38px; height:38px; border-radius:50%;
  border:1px solid rgba(182,141,64,.5); pointer-events:none; z-index:9998;
  transform:translate(-50%,-50%);
  will-change:transform;
  transition:width .07s linear, height .07s linear, border-color .07s linear;
}

/* ── Container Luxury ── */
body.page-lojistas .inner {
  max-width:1440px; margin-left:auto; margin-right:auto;
  padding-left:var(--safe); padding-right:var(--safe); width:100%;
}
body.page-lojistas .inner-raw {
  max-width:1440px; margin-left:auto; margin-right:auto; width:100%;
}

/* ── Nav ── */
body.page-lojistas nav {
  position:fixed; top:0; left:0; right:0; z-index:500;
  height:76px; padding:0 var(--safe);
  display:flex; align-items:center; justify-content:space-between;
  background:rgba(42,58,40,.78);
  backdrop-filter:blur(22px) saturate(1.4);
  -webkit-backdrop-filter:blur(22px) saturate(1.4);
  border-bottom:1px solid var(--go-bd);
  transition:all .45s var(--ease);
}
body.page-lojistas nav.scrolled { background:rgba(242,239,233,.97); border-bottom:1px solid var(--palha-dark); box-shadow:0 4px 30px rgba(0,0,0,.08); }
body.page-lojistas nav.scrolled .nav-logo-main { color:var(--verde); }
body.page-lojistas nav.scrolled .nav-logo-sub { color:var(--go); }
body.page-lojistas nav.scrolled .nav-links a { color:var(--mu-dk); }
body.page-lojistas nav.scrolled .nav-links a:hover, body.page-lojistas nav.scrolled .nav-links a.active { color:var(--verde); }
body.page-lojistas nav.scrolled .nav-cta { color:var(--verde); border-color:rgba(26,40,25,.25); }
body.page-lojistas nav.scrolled .nav-cta:hover { background:var(--verde); color:var(--palha); }
body.page-lojistas nav.scrolled .hamburger span { background:var(--verde); }
body.page-lojistas .nav-logo { text-decoration:none; display:flex; flex-direction:column; line-height:1; }
body.page-lojistas .nav-logo-main { font-family:'Playfair Display',serif; font-size:clamp(20px,2.4vw,26px); letter-spacing:.09em; color:var(--ow); transition:color .45s; text-shadow:0 0 28px rgba(182,141,64,.35),0 1px 4px rgba(0,0,0,.4); }
body.page-lojistas .nav-logo-sub { font-size:clamp(7px,.9vw,8.5px); letter-spacing:.28em; text-transform:uppercase; color:var(--go); margin-top:3px; }
body.page-lojistas .nav-links { display:flex; gap:clamp(24px,3vw,44px); list-style:none; }
body.page-lojistas .nav-links a { font-size:clamp(9px,1vw,10.5px); letter-spacing:.2em; text-transform:uppercase; text-decoration:none; color:rgba(242,238,233,.55); position:relative; transition:color .3s var(--ease); padding:4px 0; }
body.page-lojistas .nav-links a::after { content:''; position:absolute; bottom:0; left:0; width:0; height:1px; background:var(--go); transition:width .35s var(--ease); }
body.page-lojistas .nav-links a:hover, body.page-lojistas .nav-links a.active { color:var(--ow); }
body.page-lojistas .nav-links a:hover::after, body.page-lojistas .nav-links a.active::after { width:100%; }
body.page-lojistas .nav-cta { font-size:clamp(12px,1.15vw,13.5px); letter-spacing:.2em; text-transform:uppercase; text-decoration:none; color:var(--go); border:1px solid var(--go-bd); padding:10px clamp(16px,2vw,26px); transition:all .3s var(--ease); }
body.page-lojistas .nav-cta:hover { background:var(--bordo); color:var(--palha-f); border-color:var(--bordo); box-shadow:0 0 24px rgba(90,15,26,.28); }
body.page-lojistas .hamburger { display:none; flex-direction:column; gap:5px; cursor:pointer; background:none; border:none; padding:4px; }
body.page-lojistas .hamburger span { display:block; width:24px; height:1px; background:var(--ow); transition:transform .3s,opacity .3s,background .45s; }
body.page-lojistas .mobile-menu { position:fixed; inset:0; background:var(--verde); z-index:490; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:40px; transform:translateX(100%); transition:transform .55s var(--ease); }
body.page-lojistas .mobile-menu.open { transform:translateX(0); }
body.page-lojistas .mobile-menu a { font-family:'Playfair Display',serif; font-size:clamp(28px,6vw,34px); color:var(--ow); text-decoration:none; transition:all .3s; opacity:0; transform:translateY(20px); }
body.page-lojistas .mobile-menu.open a { opacity:1; transform:translateY(0); }
body.page-lojistas .mobile-menu.open a:nth-child(1) {transition-delay:.1s} body.page-lojistas .mobile-menu.open a:nth-child(2) {transition-delay:.15s} body.page-lojistas .mobile-menu.open a:nth-child(3) {transition-delay:.2s} body.page-lojistas .mobile-menu.open a:nth-child(4) {transition-delay:.25s}
body.page-lojistas .mobile-menu a:hover { color:var(--go); }

/* ── Eyebrow ── */
body.page-lojistas .eyebrow { display:flex; align-items:center; gap:14px; margin-bottom:24px; }
body.page-lojistas .eyebrow-line { width:48px; height:1px; background:var(--go); flex-shrink:0; }
body.page-lojistas .eyebrow span { font-size:clamp(13px,1.3vw,15px); letter-spacing:.32em; text-transform:uppercase; color:var(--go); font-weight:600; }
body.page-lojistas .eyebrow.ey-bordo .eyebrow-line { background:var(--bordo-prof); }
body.page-lojistas .eyebrow.ey-bordo span { color:var(--bordo-prof); }

/* ── Reveal ── */
body.page-lojistas .reveal { opacity:0; transform:translateY(32px); transition:opacity 1.1s var(--ease),transform 1.1s var(--ease); will-change:opacity,transform; }
body.page-lojistas .reveal.visible { opacity:1; transform:none; }
body.page-lojistas .fade-up { opacity:0; transform:translateY(24px); transition:opacity .9s var(--ease),transform .9s var(--ease); }
body.page-lojistas .fade-up.active { opacity:1; transform:none; }
body.page-lojistas .d1 {transition-delay:.12s} body.page-lojistas .d2 {transition-delay:.24s} body.page-lojistas .d3 {transition-delay:.38s} body.page-lojistas .d4 {transition-delay:.52s}

@keyframes fadeUp__page-lojistas { from{opacity:0;transform:translateY(28px)} to{opacity:1;transform:none} }
@keyframes fadeCorner__page-lojistas { to{opacity:1} }
@keyframes pulse__page-lojistas { 0%,100%{opacity:.3} 50%{opacity:.9} }
@keyframes marquee__page-lojistas { from{transform:translateX(0)} to{transform:translateX(-50%)} }
@keyframes grow__page-lojistas { to{width:clamp(150px,20vw,220px)} }
@keyframes float-particle__page-lojistas { 0%,100%{transform:translateY(0) translateX(0);opacity:0} 10%{opacity:.6} 50%{transform:translateY(-100px) translateX(30px);opacity:.3} 90%{opacity:.6} }
@keyframes statSlideIn__page-lojistas { to{opacity:1;transform:translateX(0)} }
@keyframes wppGlassPulse__page-lojistas {
  0%,100% { box-shadow:0 8px 32px rgba(182,141,64,.22), 0 2px 12px rgba(0,0,0,.22), 0 0 0 0 rgba(182,141,64,.32); }
  50%      { box-shadow:0 8px 32px rgba(182,141,64,.22), 0 2px 12px rgba(0,0,0,.22), 0 0 0 12px rgba(182,141,64,0); }
}

/* ══════════════════════════════════════════════════════════════
   BOTÕES
══════════════════════════════════════════════════════════════ */
body.page-lojistas .btn-primary {
  display:inline-flex; align-items:center; gap:14px;
  background:transparent; color:var(--go);
  border:1px solid rgba(182,141,64,.55);
  text-decoration:none; font-size:clamp(9px,1vw,11px); letter-spacing:.25em;
  text-transform:uppercase; padding:20px clamp(32px,5vw,56px);
  font-weight:500; font-family:'DM Sans',sans-serif;
  transition:all .5s var(--ease); position:relative; overflow:hidden;
}
body.page-lojistas .btn-primary::before { content:''; position:absolute; inset:0; background:var(--go); transform:translateY(101%); transition:transform .5s cubic-bezier(0.16,1,0.3,1); z-index:0; }
body.page-lojistas .btn-primary > * { position:relative; z-index:1; }
body.page-lojistas .btn-primary span, body.page-lojistas .btn-primary svg { position:relative; z-index:1; }
body.page-lojistas .btn-primary:hover::before { transform:translateY(0); }
body.page-lojistas .btn-primary:hover { color:var(--verde); border-color:var(--go); box-shadow:0 8px 32px rgba(182,141,64,.2); transform:translateY(-2px); }
body.page-lojistas .btn-primary svg { transition:transform .3s; }
body.page-lojistas .btn-primary:hover svg { transform:translateX(4px); }
body.page-lojistas .btn-primary.btn-bordo { background:var(--bordo); color:var(--palha-f); border-color:var(--bordo); }
body.page-lojistas .btn-primary.btn-bordo::before { background:var(--bordo2); }
body.page-lojistas .btn-primary.btn-bordo:hover { color:var(--palha-f); border-color:var(--bordo2); }

body.page-lojistas .btn-ghost { display:inline-flex; align-items:center; gap:12px; color:rgba(242,238,233,.55); text-decoration:none; font-size:clamp(9px,1vw,10px); letter-spacing:.2em; text-transform:uppercase; transition:all .3s var(--ease); padding:8px 0; }
body.page-lojistas .btn-ghost:hover { color:var(--ow); }
body.page-lojistas .ghost-line { width:28px; height:1px; background:currentColor; transition:width .35s var(--ease); flex-shrink:0; }
body.page-lojistas .btn-ghost:hover .ghost-line { width:46px; }

body.page-lojistas .btn-ghost-dk { display:inline-flex; align-items:center; gap:12px; color:var(--bordo); text-decoration:none; font-size:clamp(9px,1vw,10px); letter-spacing:.2em; text-transform:uppercase; border:1px solid var(--bordo-bd); padding:14px 32px; transition:all .3s var(--ease); }
body.page-lojistas .btn-ghost-dk:hover { background:var(--bordo); color:var(--palha-f); border-color:var(--bordo); }

body.page-lojistas .btn-outline { display:inline-flex; align-items:center; gap:14px; background:transparent; color:rgba(242,238,233,.85); text-decoration:none; font-size:clamp(9px,1vw,10px); letter-spacing:.22em; text-transform:uppercase; padding:16px clamp(24px,3vw,38px); font-weight:500; border:1px solid rgba(242,238,233,.28); transition:all .35s var(--ease); position:relative; overflow:hidden; }
body.page-lojistas .btn-outline::before { content:''; position:absolute; inset:0; background:rgba(182,141,64,.1); transform:scaleX(0); transform-origin:left; transition:transform .4s var(--ease); z-index:-1; }
body.page-lojistas .btn-outline:hover::before { transform:scaleX(1); }
body.page-lojistas .btn-outline:hover { color:var(--ow); border-color:var(--go); transform:translateY(-2px); }
body.page-lojistas .btn-outline svg { transition:transform .3s; }
body.page-lojistas .btn-outline:hover svg { transform:translateX(4px); }

/* ══════════════════════════════════════════════════════════════
   MARQUEE, texto centralizado verticalmente
   mq-verde: fonte Dourado (#cfa355) para leitura perfeita
══════════════════════════════════════════════════════════════ */
body.page-lojistas .marquee-strip {
  overflow:hidden; position:relative; z-index:10;
  border-top:1px solid; border-bottom:1px solid; margin:0;
  display:flex; align-items:center; min-height:52px;
}
body.page-lojistas .marquee-track {
  display:flex; animation:marquee__page-lojistas 32s linear infinite;
  align-items:center; flex-shrink:0;
}
body.page-lojistas .marquee-item {
  display:inline-flex; align-items:center; gap:30px;
  padding:15px 32px; white-space:nowrap; flex-shrink:0;
  font-size:clamp(11px,1.1vw,13px); letter-spacing:.3em;
  text-transform:uppercase; font-weight:600; font-family:'DM Sans',sans-serif;
}
body.page-lojistas .marquee-gem { width:5px; height:5px; transform:rotate(45deg); flex-shrink:0; opacity:.55; }

body.page-lojistas .mq-gold { background:var(--go);      border-color:rgba(182,141,64,.4); }
body.page-lojistas .mq-gold  .marquee-item { color:var(--verde); }
body.page-lojistas .mq-gold  .marquee-gem { background:var(--verde); }
/* VERDE: texto DOURADO (#cfa355) para contraste perfeito */
body.page-lojistas .mq-verde { background:var(--verde-card); border-color:var(--go-bd); }
body.page-lojistas .mq-verde .marquee-item { color:var(--go-lt); }
body.page-lojistas .mq-verde .marquee-gem { background:var(--go-lt); }
body.page-lojistas .mq-palha { background:var(--palha);   border-color:rgba(90,15,26,.2); }
body.page-lojistas .mq-palha .marquee-item { color:var(--bordo); }
body.page-lojistas .mq-palha .marquee-gem { background:var(--bordo); }
body.page-lojistas .mq-ouro { background:#111e10;        border-color:rgba(182,141,64,.28); }
body.page-lojistas .mq-ouro  .marquee-item { color:var(--go-lt); }
body.page-lojistas .mq-ouro  .marquee-gem { background:var(--go-lt); }
body.page-lojistas .mq-bordo { background:var(--bordo);   border-color:rgba(90,15,26,.5); }
body.page-lojistas .mq-bordo .marquee-item { color:var(--palha-f); }
body.page-lojistas .mq-bordo .marquee-gem { background:var(--palha-f); }

/* ══════════════════════════════════════════════════════════════
   EFEITO JANELA, Parallax profundo
══════════════════════════════════════════════════════════════ */
body.page-lojistas .win { position:relative; }
body.page-lojistas .win-bg {
  position:absolute!important; top:0!important; left:0!important;
  width:100%!important; height:100%!important; z-index:0!important;
  background-size:cover!important;
  background-attachment:fixed!important; background-repeat:no-repeat!important;
}
@media(max-width:960px) { body.page-lojistas .win-bg { background-attachment:scroll!important; } }
body.page-lojistas .win-ov { position:absolute!important; top:0!important; left:0!important; width:100%!important; height:100%!important; z-index:1!important; }
body.page-lojistas .reveal-win {
  height:88vh; min-height:600px; max-height:980px;
  position:relative;
  clip-path:inset(0);
}
body.page-lojistas .reveal-win-top-accent {
  position:absolute!important; top:0!important; left:0!important; right:0!important;
  height:2px!important; z-index:6!important;
  background:linear-gradient(to right,transparent 0%,var(--acento) 20%,var(--go) 50%,var(--acento) 80%,transparent 100%);
  opacity:.7;
}
body.page-lojistas .reveal-win::before { content:''; position:absolute; inset:0; z-index:2; background:linear-gradient(to top,rgba(8,14,8,.88) 0%,rgba(8,14,8,.28) 44%,transparent 68%); pointer-events:none; }
body.page-lojistas .reveal-win::after { content:''; position:absolute; bottom:0; left:0; right:0; height:2px; z-index:5; background:linear-gradient(to right,transparent 0%,var(--acento) 18%,var(--go) 50%,var(--acento) 82%,transparent 100%); opacity:.9; box-shadow:0 0 12px rgba(182,141,64,.2); }
body.page-lojistas .reveal-win-body { position:relative!important; z-index:4!important; height:100%; display:flex; flex-direction:column; justify-content:flex-end; padding:0 var(--safe) clamp(40px,6vh,56px); }
body.page-lojistas .reveal-win-num { position:absolute!important; z-index:3!important; right:var(--safe)!important; bottom:10%!important; font-family:'Playfair Display',serif; font-size:clamp(160px,20vw,280px); font-weight:700; line-height:1; color:rgba(242,238,233,.028); pointer-events:none; user-select:none; letter-spacing:-.04em; }
body.page-lojistas .reveal-win-eyebrow { font-size:clamp(13px,1.3vw,15px); letter-spacing:.32em; text-transform:uppercase; color:var(--go); margin-bottom:clamp(20px,2.5vh,32px); display:flex; align-items:center; gap:16px; font-weight:600; }
body.page-lojistas .reveal-win-eyebrow::before { content:''; display:inline-block; width:40px; height:1px; background:linear-gradient(to right,var(--bordo-prof),var(--go)); flex-shrink:0; }
body.page-lojistas .reveal-win-h2 { font-family:'Playfair Display',serif; font-size:clamp(34px,5.5vw,82px); font-weight:400; line-height:.98; letter-spacing:-.025em; color:var(--ow); text-shadow:0 4px 40px rgba(0,0,0,.5); max-width:700px; margin-bottom:clamp(14px,2.5vh,20px); }
body.page-lojistas .reveal-win-p { font-family:'Playfair Display',serif; font-size:23px; line-height:1.6; font-weight:300; font-style:italic; color:rgba(242,238,233,.88); max-width:480px; text-shadow:0 2px 14px rgba(0,0,0,.35); }
body.page-lojistas .reveal-win-selo { position:absolute!important; z-index:4!important; right:var(--safe)!important; bottom:clamp(40px,6vh,56px)!important; text-align:right; }
body.page-lojistas .reveal-win-selo-nome { font-family:'Playfair Display',serif; font-size:clamp(24px,2.8vw,40px); font-weight:400; line-height:1.08; color:rgba(242,238,233,.9); text-shadow:0 4px 24px rgba(0,0,0,.45); }
body.page-lojistas .reveal-win-selo-line { width:100%; height:1px; margin-bottom:10px; background:linear-gradient(to left,var(--acento),var(--go),transparent); display:block; }

/* ══════════════════════════════════════════════════════════════
   JANELA DUPLA ROOFTOP, Double Window Parallax Premium
   (mesmo padrão do Index Rooftop)
══════════════════════════════════════════════════════════════ */
body.page-lojistas .win-rooftop-lj {
  height:140vh;
  min-height:780px;
  position:relative;
  clip-path:inset(0);
  overflow:hidden;
}
body.page-lojistas .win-rooftop-lj .win-bg {
  background-position:center 40%!important;
  background-size:cover!important;
  background-attachment:fixed!important;
}
/* Sombra profunda base */
body.page-lojistas .win-rooftop-lj::before {
  content:'';
  position:absolute; inset:0; z-index:2;
  background:
    linear-gradient(to top,  rgba(8,14,8,.92) 0%, rgba(8,14,8,.22) 30%, transparent 52%),
    linear-gradient(to right, rgba(8,14,8,.68) 0%, rgba(8,14,8,.22) 30%, transparent 55%);
  pointer-events:none;
}
/* Accent base */
body.page-lojistas .win-rooftop-lj::after {
  content:''; position:absolute; bottom:0; left:0; right:0;
  height:2px; z-index:5;
  background:linear-gradient(to right,transparent 0%,var(--acento) 18%,var(--go) 50%,var(--acento) 82%,transparent 100%);
  opacity:.9; box-shadow:0 0 12px rgba(182,141,64,.2);
}
/* Moldura da janela dupla, lateral direita */
body.page-lojistas .win-rooftop-lj-frame {
  position:absolute; top:0; right:0; bottom:0; width:42%;
  z-index:3; pointer-events:none;
  background:linear-gradient(to left,
    rgba(8,14,8,.0) 0%,
    rgba(8,14,8,.0) 55%,
    rgba(8,14,8,.55) 80%,
    rgba(8,14,8,.72) 100%
  );
}
/* Linha dourada vertical */
body.page-lojistas .win-rooftop-lj-frame::before {
  content:'';
  position:absolute; top:8%; bottom:8%; left:0; width:1px;
  background:linear-gradient(to bottom,
    transparent 0%, rgba(182,141,64,.0) 8%,
    rgba(182,141,64,.55) 25%, rgba(182,141,64,.70) 50%,
    rgba(182,141,64,.55) 75%, rgba(182,141,64,.0) 92%, transparent 100%
  );
}
/* Canto decorativo top-right */
body.page-lojistas .win-rooftop-lj-frame::after {
  content:'';
  position:absolute;
  top:clamp(28px,5vh,52px); right:clamp(28px,4vw,60px);
  width:80px; height:80px;
  border-top:1px solid rgba(182,141,64,.45);
  border-right:1px solid rgba(182,141,64,.45);
}
/* Accent topo */
body.page-lojistas .win-rooftop-lj .reveal-win-top-accent {
  position:absolute!important; top:0!important; left:0!important; right:0!important;
  height:2px!important; z-index:6!important;
  background:linear-gradient(to right,transparent 0%,var(--acento) 20%,var(--go) 50%,var(--acento) 80%,transparent 100%);
  opacity:.8;
}
/* Corpo de texto, âncora base esquerda */
body.page-lojistas .win-rooftop-lj-body {
  position:relative!important; z-index:4!important;
  height:100%;
  display:flex; flex-direction:column; justify-content:flex-end;
  padding:0 var(--safe) clamp(52px,8vh,80px);
  max-width:58%;
}
body.page-lojistas .win-rooftop-lj-body .reveal-win-p { font-size:23px; line-height:1.6; }
/* Número fantasma */
body.page-lojistas .win-rooftop-lj-num {
  position:absolute!important; z-index:3!important;
  right:var(--safe)!important; bottom:10%!important;
  font-family:'Playfair Display',serif;
  font-size:clamp(160px,20vw,280px); font-weight:700; line-height:1;
  color:rgba(242,238,233,.022); pointer-events:none; user-select:none;
  letter-spacing:-.04em;
}
/* Painel glassmorphism de dados, lateral direita */
body.page-lojistas .win-rooftop-lj-stats {
  position: absolute !important;
  right: var(--safe) !important;
  bottom: clamp(52px,8vh,80px) !important;
  z-index: 5 !important;
  display: flex;
  flex-direction: column;
  gap: 0;
  background: rgba(6,10,6,.55);
  backdrop-filter: blur(18px) saturate(1.3);
  -webkit-backdrop-filter: blur(18px) saturate(1.3);
  border: 1px solid rgba(182,141,64,.18);
  min-width: clamp(140px,14vw,190px);
}
body.page-lojistas .win-rooftop-lj-stat {
  padding: 18px 24px;
  border-left: 2px solid transparent;
  transition: border-color .35s, background .3s;
}
body.page-lojistas .win-rooftop-lj-stat + .win-rooftop-lj-stat {
  padding: 18px 24px;
  border-left: 2px solid transparent;
  transition: border-color .35s, background .3s;
}
body.page-lojistas .win-rooftop-lj-stat:hover { border-left-color:rgba(182,141,64,.5); background:rgba(255,255,255,.03); }
body.page-lojistas .win-rooftop-lj-stat-val {
  font-family: 'DM Sans',sans-serif;
  font-size: clamp(22px,2.4vw,32px);
  font-weight: 300;
  color: var(--go);
  line-height: 1;
  text-align: right;
  font-variant-numeric: tabular-nums;
}
body.page-lojistas .win-rooftop-lj-stat-lbl {
  font-size: clamp(11px,1.05vw,13px);
  letter-spacing: .18em;
  text-transform: uppercase;
  color: rgba(255,255,255,.65);
  margin-top: 5px;
  text-align: right;
  line-height: 1.45;
}

/* ══════════════════════════════════════════════════════════════
   HERO LOJISTAS
══════════════════════════════════════════════════════════════ */
body.page-lojistas .hero { position:relative; min-height:100svh; display:flex; flex-direction:column; justify-content:flex-end; overflow:hidden; background:var(--verde); }
body.page-lojistas .hero-bg {
  position:absolute; inset:0;
  background-image:url('../assets/images/foto-hero-lojistas.jpg');
  background-size:cover; background-position:center 35%; background-repeat:no-repeat;
  background-attachment:fixed; z-index:0;
}
@media(max-width:960px) { body.page-lojistas .hero-bg { background-attachment:scroll; } }
body.page-lojistas .hero-overlay { position:absolute; inset:0; z-index:1; background:linear-gradient(to right,rgba(8,14,8,.88) 0%,rgba(8,14,8,.6) 45%,rgba(8,14,8,.18) 100%); }
body.page-lojistas .hero-overlay-top { position:absolute; inset:0; z-index:1; background:linear-gradient(to bottom,rgba(0,0,0,.25) 0%,transparent 20%,transparent 80%,rgba(8,14,8,.5) 100%); }
body.page-lojistas .hero-particles { position:absolute; inset:0; z-index:2; pointer-events:none; overflow:hidden; }
body.page-lojistas .hero-particle { position:absolute; width:4px; height:4px; background:radial-gradient(circle,rgba(242,238,233,.25),transparent); border-radius:50%; animation:float-particle__page-lojistas 20s infinite; }
body.page-lojistas .hero-particle:nth-child(1) {left:10%;top:20%;animation-delay:0s} body.page-lojistas .hero-particle:nth-child(2) {left:25%;top:60%;animation-delay:-5s} body.page-lojistas .hero-particle:nth-child(3) {left:70%;top:30%;animation-delay:-10s} body.page-lojistas .hero-particle:nth-child(4) {left:85%;top:70%;animation-delay:-15s} body.page-lojistas .hero-particle:nth-child(5) {left:50%;top:45%;animation-delay:-7s}
body.page-lojistas .hero-grid { position:absolute; inset:0; pointer-events:none; display:grid; grid-template-columns:repeat(12,1fr); z-index:3; }
body.page-lojistas .hero-grid-col { border-right:1px solid rgba(182,141,64,.04); }
body.page-lojistas .hero-grid-col:first-child { border-left:1px solid rgba(182,141,64,.04); }
body.page-lojistas .hero-bg-letters { position:absolute; right:-1%; bottom:-10%; font-family:'Playfair Display',serif; font-size:clamp(200px,30vw,500px); font-weight: 700 !important; line-height:1; color:rgba(182,141,64,.025); pointer-events:none; user-select:none; letter-spacing: -0.04em !important; z-index:3; }
body.page-lojistas .corner-tr { position:absolute; top:94px; right:var(--safe); width:100px; height:100px; border-top:1px solid var(--go-bd); border-right:1px solid var(--go-bd); z-index:4; opacity:0; animation:fadeCorner__page-lojistas 1s 1.5s forwards; }
body.page-lojistas .corner-bl { position:absolute; bottom:56px; left:var(--safe); width:60px; height:60px; border-bottom:1px solid var(--go-bd); border-left:1px solid var(--go-bd); z-index:4; opacity:0; animation:fadeCorner__page-lojistas 1s 1.7s forwards; }
body.page-lojistas .hero-badge { position:absolute; top:112px; left:var(--safe); display:flex; align-items:center; gap:12px; opacity:0; animation:fadeUp__page-lojistas .8s .3s forwards; z-index:4; }
body.page-lojistas .hero-badge-line { width:28px; height:1px; background:var(--go); }
body.page-lojistas .hero-badge span { font-size:clamp(11px,1.05vw,12.5px); letter-spacing:.28em; text-transform:uppercase; color:var(--go); border-left:2px solid var(--bordo-prof); padding-left:10px; }
body.page-lojistas .hero-accent { position:absolute; bottom:0; left:0; right:0; height:2px; z-index:4; background:linear-gradient(to right,transparent,var(--bordo-prof) 20%,var(--go) 50%,transparent); animation:grow__page-lojistas 1.2s 1.1s var(--ease) forwards; width:0; }
body.page-lojistas .hero-content { position:relative; padding:clamp(130px,18vh,170px) var(--safe) clamp(100px,14vh,140px); max-width:1000px; z-index:4; }
body.page-lojistas .hero-eyebrow {
  font-size:clamp(13px,1.3vw,15px);
  letter-spacing:.32em; text-transform:uppercase; color:var(--go);
  margin-bottom:clamp(24px,3.5vh,36px);
  opacity:0; animation:fadeUp__page-lojistas .9s var(--ease) .45s forwards;
  font-family:'DM Sans',sans-serif; font-weight:600;
  display:flex; align-items:center; gap:18px;
}
body.page-lojistas .hero-eyebrow::before { content:''; display:inline-block; width:40px; height:1px; background:var(--go); flex-shrink:0; }
body.page-lojistas .hero-h1 {
  font-family:'Playfair Display',serif;
  font-size:clamp(42px,5.6vw,82px);
  font-weight:400; line-height:1.0; letter-spacing:-.025em; color:var(--ow);
  margin-bottom:clamp(24px,3vh,32px);
  opacity:0; animation:fadeUp__page-lojistas 1s var(--ease) .62s forwards;
  text-shadow:0 2px 40px rgba(0,0,0,.35);
  word-break:keep-all; overflow-wrap:break-word; hyphens:none;
  max-width:920px;
}
body.page-lojistas .hero-sub {
  font-family:'Playfair Display',serif;
  font-size:clamp(22px,2.4vw,30px); font-weight:300; font-style:italic;
  color:rgba(242,238,233,.94); line-height:1.5;
  max-width:720px; margin-bottom:clamp(18px,2.5vh,26px);
  opacity:0; animation:fadeUp__page-lojistas .9s var(--ease) .82s forwards;
  text-shadow:0 1px 20px rgba(0,0,0,.7);
}
body.page-lojistas .hero-support {
  font-family:'DM Sans',sans-serif;
  font-size:clamp(15px,1.4vw,17px); font-weight:300;
  color:rgba(242,238,233,.7); line-height:1.7;
  max-width:580px; letter-spacing:.01em;
  opacity:0; animation:fadeUp__page-lojistas .9s var(--ease) 1s forwards;
  text-shadow:0 1px 14px rgba(0,0,0,.6);
}
body.page-lojistas .hero-cta { opacity:0; animation:fadeUp__page-lojistas .9s var(--ease) 1s forwards; display:flex; gap:20px; flex-wrap:wrap; align-items:center; }
body.page-lojistas .scroll-cue { position:absolute; left:var(--safe); bottom:48px; display:flex; flex-direction:column; align-items:center; gap:10px; z-index:4; }
body.page-lojistas .scroll-cue-txt { font-size:11px; letter-spacing:.24em; text-transform:uppercase; color:rgba(242,238,233,.55); writing-mode:vertical-rl; font-weight:400; }
body.page-lojistas .scroll-cue-line { width:1px; height:64px; background:linear-gradient(to bottom,var(--go),transparent); animation:pulse__page-lojistas 2.2s ease-in-out infinite; }

/* ══════════════════════════════════════════════════════════════
   SEC-PORQUE, Palha / Bordô
══════════════════════════════════════════════════════════════ */
body.page-lojistas .sec-porque {
  background:linear-gradient(180deg,#F2EFE9 0%,#ede8df 55%,#e8e2d8 100%);
  color:var(--bordo); position:relative; z-index:10; overflow:hidden;
}
body.page-lojistas .sec-porque::before { content:''; display:block; height:1px; background:linear-gradient(to right,transparent,var(--bordo-prof) 25%,rgba(74,14,14,.5) 60%,transparent); opacity:.55; }
body.page-lojistas .sec-porque h2, body.page-lojistas .sec-porque h3 { color:var(--bordo); }
body.page-lojistas .sec-porque p, body.page-lojistas .sec-porque li { color:rgba(60,10,18,.72); }
body.page-lojistas .sec-porque .eyebrow-line { background:var(--bordo-prof); }
body.page-lojistas .sec-porque .eyebrow span { color:var(--bordo-prof); }

body.page-lojistas .porque-bg-word { position:absolute; bottom:-5%; right:-2%; font-family:'Playfair Display',serif; font-size:clamp(180px,22vw,380px); font-weight:700; line-height:1; color:rgba(26,40,25,.04); pointer-events:none; user-select:none; z-index:0; }
body.page-lojistas .porque-inner {
  position:relative; z-index:1;
  display:grid; grid-template-columns:1fr 1fr;
  gap:clamp(56px,9vw,90px); align-items:start;
  padding:clamp(100px,14vh,180px) var(--safe) clamp(100px,14vh,160px);
}
body.page-lojistas .porque-left { position:sticky; top:120px; }
body.page-lojistas .porque-h2 { font-family:'Playfair Display',serif; font-size:clamp(30px,4.5vw,62px); font-weight:400; line-height:1.06; letter-spacing:-.02em; color:var(--bordo); margin-bottom:28px; }
body.page-lojistas .porque-lead { font-size:21px; line-height:1.6; font-family:'Playfair Display',serif; font-weight:300; font-style:italic; color:rgba(60,10,18,.72); margin-bottom:40px; }
body.page-lojistas .porque-divider { width:40px; height:1px; background:var(--bordo-bd); margin-bottom:40px; opacity:.6; }
body.page-lojistas .porq-item { padding:32px 0; border-top:1px solid rgba(90,15,26,.15); display:grid; grid-template-columns:52px 1fr; gap:20px; align-items:start; transition:background .3s; }
body.page-lojistas .porq-item:last-child { border-bottom:1px solid rgba(90,15,26,.15); }
body.page-lojistas .porq-item:hover { background:rgba(74,14,14,.04); }
body.page-lojistas .porq-num { font-family:'Playfair Display',serif; font-size:13px; color:var(--bordo); letter-spacing:.08em; padding-top:4px; }
body.page-lojistas .porq-title { font-family:'Playfair Display',serif; font-size:clamp(16px,1.7vw,20px); font-weight:400; color:var(--bordo); margin-bottom:10px; line-height:1.25; }
body.page-lojistas .porq-desc { font-size:23px; line-height:1.6; color:rgba(60,10,18,.65); }
body.page-lojistas .porq-tag { display:inline-block; margin-top:12px; font-size:clamp(11px,1.05vw,12px); letter-spacing:.22em; text-transform:uppercase; color:var(--bordo); border:1px solid var(--bordo-bd); padding:5px 12px; transition:border-color .3s,background .3s; }
body.page-lojistas .porq-tag:hover { border-color:var(--bordo-prof); background:rgba(74,14,14,.06); }
body.page-lojistas .sec-porque .btn-ghost-dk { color:var(--bordo); border-color:var(--bordo-bd); }
body.page-lojistas .sec-porque .btn-ghost-dk:hover { background:var(--bordo); color:var(--palha-f); border-color:var(--bordo); }

/* ══════════════════════════════════════════════════════════════
   BLOCO CURADORIA, Verde split foto+texto
══════════════════════════════════════════════════════════════ */
body.page-lojistas .bloco-curadoria {
  background:linear-gradient(180deg,var(--verde) 0%,var(--verde-card) 50%,#162214 100%);
  color:var(--ow); position:relative; z-index:10;
}
body.page-lojistas .bloco-curadoria::before { content:''; display:block; height:1px; background:linear-gradient(to right,transparent 0%,var(--bordo-prof) 20%,var(--go) 50%,var(--bordo-prof) 80%,transparent 100%); opacity:.55; }
body.page-lojistas .curadoria-inner { display:grid; grid-template-columns:1fr 1fr; min-height:720px; align-items:stretch; }
body.page-lojistas .curadoria-foto { position:relative; min-height:560px; clip-path:inset(0); }
body.page-lojistas .curadoria-body {
  padding:clamp(80px,12vh,130px) var(--safe) clamp(80px,12vh,130px) clamp(52px,7vw,90px);
  display:flex; flex-direction:column; justify-content:center;
  background:rgba(42,60,40,.5);
}
body.page-lojistas .curadoria-h2 { font-family:'Playfair Display',serif; font-size:clamp(26px,3.8vw,52px); font-weight:400; line-height:1.06; letter-spacing:-.02em; color:var(--ow); margin-bottom:24px; }
body.page-lojistas .curadoria-body p { font-size:23px; line-height:1.6; font-family:'Playfair Display',serif; font-weight:300; color:rgba(182,175,160,.78); margin-bottom:18px; }
body.page-lojistas .curadoria-body p strong { color:var(--ow); font-weight:400; }
body.page-lojistas .curadoria-quote { font-family:'Playfair Display',serif; font-style:italic; font-size:clamp(14px,1.4vw,17px); color:var(--go-pa); line-height:1.65; padding-left:22px; border-left:2px solid var(--bordo-prof); margin-top:28px; margin-bottom:40px; }

/* ══════════════════════════════════════════════════════════════
   TIPOLOGIA, Grid Institucional com fade-in
   Alinhamento simétrico: flex nos cards
══════════════════════════════════════════════════════════════ */
body.page-lojistas .bloco-tipologia {
  background:linear-gradient(180deg,#111e10 0%,#141f13 45%,#0d160c 100%);
  color:var(--ow); position:relative; z-index:10;
  padding:clamp(100px,14vh,180px) var(--safe) clamp(100px,14vh,160px);
}
body.page-lojistas .bloco-tipologia::before { content:''; position:absolute; top:0; left:0; right:0; height:1px; background:linear-gradient(to right,transparent,var(--bordo-prof) 20%,var(--go) 50%,var(--bordo-prof) 80%,transparent); opacity:.55; }
body.page-lojistas .tipologia-bg-word { position:absolute; top:-5%; left:-2%; font-family:'Playfair Display',serif; font-size:clamp(180px,22vw,380px); font-weight:700; line-height:1; color:rgba(182,141,64,.04); pointer-events:none; user-select:none; }
body.page-lojistas .tipologia-header { display:flex; flex-direction:column; gap:20px; max-width:580px; margin-bottom:clamp(48px,7vh,80px); position:relative; }
body.page-lojistas .tipologia-h2 { font-family:'Playfair Display',serif; font-size:clamp(30px,4.8vw,66px); font-weight:400; line-height:1.04; letter-spacing:-.02em; color:var(--ow); }
/* Grid 2x2 com altura simétrica */
body.page-lojistas .tipologia-grid {
  display:grid; grid-template-columns:repeat(2,1fr);
  gap:1px; background:rgba(182,141,64,.18); border:1px solid rgba(182,141,64,.18);
  align-items:stretch;
}
body.page-lojistas .tipo-card {
  background:rgba(17,30,16,.8);
  padding:clamp(40px,6vh,60px) clamp(28px,4vw,52px);
  position:relative; overflow:hidden; transition:background .45s;
  display:flex; flex-direction:column; align-self:stretch;
}
body.page-lojistas .tipo-card:nth-child(2), body.page-lojistas .tipo-card:nth-child(3) { background:rgba(74,14,14,.18); }
body.page-lojistas .tipo-card::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(to right,var(--bordo-prof),var(--go)); transform:scaleX(0); transform-origin:left; transition:transform .55s var(--ease); }
body.page-lojistas .tipo-card::after { content:''; position:absolute; left:0; top:0; bottom:0; width:2px; background:linear-gradient(to bottom,var(--bordo-prof),var(--go)); transform:scaleY(0); transform-origin:top; transition:transform .55s var(--ease); }
body.page-lojistas .tipo-card:hover { background:rgba(74,14,14,.10); }
body.page-lojistas .tipo-card:hover::before { transform:scaleX(1); }
body.page-lojistas .tipo-card:hover::after { transform:scaleY(1); }
body.page-lojistas .tipo-tag { font-size:clamp(11px,1.05vw,12.5px); letter-spacing:.28em; text-transform:uppercase; color:var(--go); margin-bottom:20px; }
body.page-lojistas .tipo-name { font-family:'Playfair Display',serif; font-size:clamp(20px,2.4vw,28px); font-weight:400; color:var(--ow); margin-bottom:16px; line-height:1.2; }
body.page-lojistas .tipo-desc { font-size:21px; line-height:1.6; color:rgba(182,175,160,.65); flex:1; margin-bottom:24px; }
body.page-lojistas .tipo-specs { display:flex; flex-wrap:wrap; gap:8px; margin-top:auto; }
body.page-lojistas .tipo-spec { font-size:clamp(11px,1.05vw,12px); letter-spacing:.2em; text-transform:uppercase; color:rgba(182,175,160,.5); border:1px solid rgba(182,141,64,.2); padding:5px 12px; transition:border-color .3s,color .3s; }
body.page-lojistas .tipo-card:hover .tipo-spec { border-color:rgba(74,14,14,.3); color:rgba(245,235,221,.6); }

/* ══════════════════════════════════════════════════════════════
   GASTRONOMIA, Dourado
══════════════════════════════════════════════════════════════ */
body.page-lojistas .bloco-gastronomia {
  background:linear-gradient(180deg,#B68D40 0%,#A87E28 50%,#9A7220 100%);
  color:var(--verde); position:relative; z-index:10;
}
body.page-lojistas .bloco-gastronomia::before { content:''; display:block; height:1px; background:linear-gradient(to right,transparent 0%,var(--bordo-prof) 20%,rgba(26,40,25,.6) 50%,var(--bordo-prof) 80%,transparent 100%); opacity:.45; }
body.page-lojistas .gastronomia-inner { display:grid; grid-template-columns:1fr 1fr; min-height:700px; align-items:stretch; }
body.page-lojistas .gastronomia-foto { position:relative; min-height:520px; clip-path:inset(0); }
body.page-lojistas .gastronomia-body {
  padding:clamp(72px,11vh,120px) var(--safe) clamp(72px,11vh,120px) clamp(48px,6vw,80px);
  display:flex; flex-direction:column; justify-content:center;
  background:rgba(176,136,48,.3);
}
body.page-lojistas .gastronomia-body .eyebrow span { color:var(--verde); }
body.page-lojistas .gastronomia-body .eyebrow-line { background:var(--bordo-prof); }
body.page-lojistas .gastronomia-h2 { font-family:'Playfair Display',serif; font-size:clamp(24px,3.6vw,50px); font-weight:400; line-height:1.06; letter-spacing:-.02em; color:var(--verde); margin-bottom:24px; }
body.page-lojistas .gastronomia-body p { font-size:23px; line-height:1.6; font-family:'Playfair Display',serif; font-weight:300; color:rgba(26,40,25,.82); margin-bottom:18px; }
body.page-lojistas .gastronomia-body p strong { color:var(--verde); font-weight:600; }
body.page-lojistas .gastronomia-body .btn-ghost-dk { color:var(--verde); border-color:rgba(26,40,25,.3); }
body.page-lojistas .gastronomia-body .btn-ghost-dk:hover { background:var(--bordo); color:var(--palha-f); border-color:var(--bordo); }

/* ══════════════════════════════════════════════════════════════
   FORMULÁRIO, Verde premium
══════════════════════════════════════════════════════════════ */
body.page-lojistas .bloco-formulario {
  background:var(--palha);
  color:var(--verde); position:relative; z-index:10;
  padding:clamp(80px,12vh,160px) var(--safe);
}
body.page-lojistas .bloco-formulario::before { content:''; position:absolute; top:0; left:50%; width:1px; bottom:0; transform:translateX(-50%); background:linear-gradient(to bottom,transparent,var(--go-bd) 15%,var(--go-bd) 85%,transparent); }
body.page-lojistas .bloco-formulario::after { content:''; position:absolute; top:0; left:0; right:0; height:1px; background:linear-gradient(to right,transparent,var(--bordo-prof) 20%,var(--go) 50%,var(--bordo-prof) 80%,transparent); opacity:.55; }
body.page-lojistas .formulario-inner { position:relative; display:grid; grid-template-columns:1fr 1fr; gap:clamp(56px,9vw,100px); align-items:start; }
body.page-lojistas .form-left { position:sticky; top:120px; }
body.page-lojistas .form-h2 { font-family:'Playfair Display',serif; font-size:clamp(26px,3.8vw,52px); font-weight:400; line-height:1.06; letter-spacing:-.02em; color:var(--verde); margin-bottom:24px; }
body.page-lojistas .form-lead { font-size:23px; line-height:1.6; font-family:'Playfair Display',serif; font-weight:300; font-style:italic; color:rgba(26,40,25,.72); margin-bottom:44px; }
body.page-lojistas .form-promise { display:flex; flex-direction:column; gap:16px; }
body.page-lojistas .form-promise-item { display:flex; align-items:flex-start; gap:16px; }
body.page-lojistas .form-promise-dot { width:6px; height:6px; background:var(--bordo-prof); transform:rotate(45deg); flex-shrink:0; margin-top:6px; box-shadow:0 0 8px rgba(74,14,14,.4); }
body.page-lojistas .form-promise-txt { font-size:21px; line-height:1.6; color:rgba(26,40,25,.65); }
body.page-lojistas .form-right {
  background:rgba(26,40,25,.6); border:1px solid var(--go-bd);
  padding:clamp(36px,5vh,56px) clamp(28px,4vw,52px);
  backdrop-filter:blur(4px); position:relative;
}
body.page-lojistas .form-right::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(to right,var(--bordo-prof),var(--go),transparent); }
body.page-lojistas .form-right::after { content:''; position:absolute; bottom:0; left:0; right:0; height:2px; background:linear-gradient(to right,var(--bordo-prof),transparent); opacity:.5; }
body.page-lojistas .form-group { margin-bottom:32px; }
body.page-lojistas .form-label { font-size:clamp(13px,1.3vw,15px); letter-spacing:.3em; text-transform:uppercase; color:var(--go); margin-bottom:14px; display:block; font-weight:600; }
body.page-lojistas .bloco-formulario .form-input, body.page-lojistas .bloco-formulario .form-select, body.page-lojistas .bloco-formulario .form-textarea {
  width:100%; background:rgba(255,255,255,.03);
  border:none; border-bottom:1px solid rgba(182,141,64,.35);
  color:var(--ow); font-family:'DM Sans',sans-serif;
  font-size:clamp(15px,1.45vw,17px); font-weight:400;
  padding:16px 0; outline:none;
  transition:border-color .3s,background .3s;
  -webkit-appearance:none; appearance:none;
}
body.page-lojistas .form-input::placeholder, body.page-lojistas .form-textarea::placeholder { color:rgba(182,175,160,.3); }
body.page-lojistas .form-input:focus, body.page-lojistas .form-select:focus, body.page-lojistas .form-textarea:focus { border-bottom-color:var(--bordo-prof); background:rgba(74,14,14,.05); }
body.page-lojistas .form-select { cursor:pointer; color:rgba(182,175,160,.45); }
body.page-lojistas .form-select option { background:#1e3020; color:var(--ow); }
body.page-lojistas .form-select.filled { color:var(--ow); }
body.page-lojistas .form-textarea { resize:none; height:110px; line-height:1.65; }
body.page-lojistas .form-row { display:grid; grid-template-columns:1fr 1fr; gap:28px; }
body.page-lojistas .form-submit { margin-top:40px; }
body.page-lojistas .form-note { font-size:clamp(10px,1vw,11px); color:rgba(182,175,160,.35); margin-top:14px; line-height:1.6; letter-spacing:.03em; }

/* ══════════════════════════════════════════════════════════════
   GRAN FINALE
══════════════════════════════════════════════════════════════ */
body.page-lojistas .gran-finale { position:relative; height:clamp(480px,60vh,620px); background:var(--verde); }
body.page-lojistas .gran-finale-bg { position:absolute; inset:0; background-image:url('../assets/images/rodape-lojistas.jpg'); background-size:cover; background-position:center; background-attachment:fixed; z-index:0; filter:brightness(.52) saturate(.8); transition:filter .8s; }
body.page-lojistas .gran-finale:hover .gran-finale-bg { filter:brightness(.60) saturate(.9); }
@media(max-width:960px) { body.page-lojistas .gran-finale-bg { background-attachment:scroll; } }
body.page-lojistas .gran-finale::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; z-index:5; background:linear-gradient(to right,transparent,var(--bordo-prof) 20%,var(--go) 50%,var(--bordo-prof) 80%,transparent); opacity:.7; }
body.page-lojistas .gran-finale::after { content:''; position:absolute; bottom:0; left:0; right:0; height:2px; z-index:5; background:linear-gradient(to right,transparent,var(--bordo-prof) 20%,var(--go) 50%,var(--bordo-prof) 80%,transparent); opacity:.7; }
body.page-lojistas .gran-finale-overlay { position:absolute; inset:0; z-index:1; background:linear-gradient(to top,rgba(8,14,8,.9) 0%,rgba(8,14,8,.45) 50%,rgba(8,14,8,.18) 100%); }
body.page-lojistas .gran-finale-content { position:relative; z-index:2; height:100%; display:flex; flex-direction:column; justify-content:flex-end; padding:0 var(--safe) clamp(48px,7vh,72px); max-width:820px; }
body.page-lojistas .gran-finale-content::before { content:''; display:block; width:44px; height:2px; background:var(--bordo-prof); margin-bottom:32px; opacity:.7; }
body.page-lojistas .gf-eyebrow { display:flex; align-items:center; gap:14px; margin-bottom:20px; }
body.page-lojistas .gf-eyebrow-line { width:32px; height:1px; background:var(--bordo-prof); flex-shrink:0; }
body.page-lojistas .gf-eyebrow span { font-size:clamp(12px,1.15vw,13.5px); letter-spacing:.26em; text-transform:uppercase; color:var(--go); font-weight:500; }
body.page-lojistas .gf-h2 { font-family:'Playfair Display',serif; font-size:clamp(24px,3.2vw,48px); font-weight:400; line-height:1.06; letter-spacing:-.015em; color:var(--ow); margin-bottom:16px; text-shadow:0 4px 20px rgba(0,0,0,.4); }
body.page-lojistas .gf-p { font-size:23px; line-height:1.6; font-family:'Playfair Display',serif; font-weight:300; font-style:italic; color:rgba(242,238,233,.75); max-width:580px; text-shadow:0 2px 12px rgba(0,0,0,.3); }

/* ══════════════════════════════════════════════════════════════
   FOOTER, Idêntico ao Index
══════════════════════════════════════════════════════════════ */
body.page-lojistas footer { background:var(--verde); border-top:1px solid var(--go-bd); padding:clamp(64px,9vh,100px) 0 clamp(48px,7vh,64px); position:relative; z-index:2; }
body.page-lojistas footer::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(to right,transparent,var(--bordo-prof) 25%,var(--go) 50%,var(--bordo-prof) 75%,transparent); opacity:.5; }
body.page-lojistas .footer-top { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:clamp(40px,6vw,72px); padding-bottom:clamp(48px,7vh,72px); border-bottom:1px solid var(--go-bd); }
body.page-lojistas .ftr-brand-name { font-family:'Playfair Display',serif; font-size:clamp(18px,2vw,23px); letter-spacing:.04em; margin-bottom:4px; color:var(--go); }
body.page-lojistas .ftr-brand-tag { font-size:clamp(11px,1.05vw,12.5px); letter-spacing:.26em; text-transform:uppercase; color:rgba(182,141,64,.55); margin-bottom:18px; }
body.page-lojistas .ftr-about { font-size:clamp(12px,1.2vw,13px); color:rgba(242,238,233,.45); line-height:1.85; max-width:290px; }
body.page-lojistas .ftr-col-head { font-size:clamp(11px,1.05vw,12.5px); letter-spacing:.24em; text-transform:uppercase; color:var(--go); margin-bottom:22px; }
body.page-lojistas .ftr-col ul { list-style:none; display:flex; flex-direction:column; gap:12px; }
body.page-lojistas .ftr-col a { font-size:clamp(12px,1.2vw,13px); color:rgba(242,238,233,.45); text-decoration:none; transition:all .3s var(--ease); display:inline-flex; align-items:center; }
body.page-lojistas .ftr-col a:hover { color:var(--ow); transform:translateX(4px); }
body.page-lojistas .ftr-ico { flex-shrink:0; margin-right:9px; opacity:.62; transition:transform .35s var(--ease), opacity .3s; }
body.page-lojistas .ftr-col a:hover .ftr-ico { transform:scale(1.16); opacity:1; }
body.page-lojistas .ftr-col li > .ftr-ico { opacity:.5; }
body.page-lojistas .footer-bottom { display:flex; justify-content:space-between; align-items:center; padding-top:28px; flex-wrap:wrap; gap:16px; }
body.page-lojistas .ftr-copy { font-size:clamp(10px,1vw,11.5px); color:rgba(242,238,233,.35); letter-spacing:.06em; }
body.page-lojistas .ftr-copy strong { color:var(--go); font-weight:400; }
body.page-lojistas .ftr-socials { display:flex; gap:24px; }
body.page-lojistas .ftr-socials a { font-size:clamp(12px,1.15vw,13.5px); letter-spacing:.2em; text-transform:uppercase; color:rgba(242,238,233,.35); text-decoration:none; transition:color .3s; }
body.page-lojistas .ftr-socials a:hover { color:var(--bordo-lt); }
/* Correção pontual: reserva espaço para o link "WhatsApp" do rodapé não ficar atrás do botão flutuante fixo, apenas na faixa onde ambos colidem (acima do breakpoint de coluna de 760px, e abaixo do desktop grande, onde já está correto) */
@media(min-width:761px) and (max-width:1439px) { body.page-lojistas .footer-bottom { padding-bottom:40px; } }

/* ══════════════════════════════════════════════════════════════
   WHATSAPP GLASSMORPHISM, IMUTÁVEL
══════════════════════════════════════════════════════════════ */
body.page-lojistas .wpp-float-new {
  position:fixed; bottom:34px; right:34px; z-index:800;
  width:78px; height:78px; border-radius:50%;
  background: radial-gradient(circle at 30% 30%, rgba(207,163,85,.20), rgba(20,30,18,.84));
  backdrop-filter: blur(14px) saturate(125%);
  -webkit-backdrop-filter: blur(14px) saturate(125%);
  border:0.5px solid rgba(207,163,85,.50);
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 12px 40px rgba(182,141,64,.32),0 4px 18px rgba(0,0,0,.22),0 0 0 1px rgba(207,163,85,.16),0 0 22px rgba(207,163,85,.18),inset 0 1px 0 rgba(255,255,255,.22);
  text-decoration:none;
  transition:all .4s cubic-bezier(.2,.7,.2,1);
}
body.page-lojistas .wpp-float-new:hover {
  transform:translateY(-3px) scale(1.07);
  border-color:rgba(207,163,85,.85);
  box-shadow:0 20px 56px rgba(182,141,64,.46),0 8px 24px rgba(0,0,0,.28),0 0 0 1px rgba(207,163,85,.36),0 0 36px rgba(207,163,85,.32),inset 0 1px 0 rgba(255,255,255,.32);
}
body.page-lojistas .wpp-float-new svg { width:32px; height:32px; fill:rgba(232,200,140,1); display:block; pointer-events:none; filter:drop-shadow(0 2px 8px rgba(0,0,0,.40)) drop-shadow(0 0 10px rgba(207,163,85,.40)); }
@media(max-width:640px) { body.page-lojistas .wpp-float-new { width:64px;height:64px;bottom:20px;right:20px; } body.page-lojistas .wpp-float-new svg { width:26px;height:26px; } }
@media(max-width:380px) { body.page-lojistas .wpp-float-new { width:58px;height:58px;bottom:16px;right:16px; } body.page-lojistas .wpp-float-new svg { width:24px;height:24px; } }

/* ══════════════════════════════════════════════════════════════
   SEPARADOR FILETE
══════════════════════════════════════════════════════════════ */
body.page-lojistas .bloco-divider { height:1px; background:linear-gradient(to right,transparent,var(--bordo-prof) 20%,var(--go) 50%,var(--bordo-prof) 80%,transparent); opacity:.45; }

/* ══════════════════════════════════════════════════════════════
   TEXTO 21px / 1.6, enforcement global
══════════════════════════════════════════════════════════════ */
body.page-lojistas p, body.page-lojistas .pilar-desc, body.page-lojistas .vpoint-desc, body.page-lojistas .porq-desc, body.page-lojistas .bloco-p, body.page-lojistas .tipo-desc, body.page-lojistas .infra-desc, body.page-lojistas .infra-loc-desc, body.page-lojistas .reveal-win-p, body.page-lojistas .cta-p, body.page-lojistas .porque-lead, body.page-lojistas .split-p, body.page-lojistas .split-intro, body.page-lojistas .cs-p, body.page-lojistas .ftr-about, body.page-lojistas .curadoria-body p, body.page-lojistas .rooftop-body p, body.page-lojistas .infra-hl-desc, body.page-lojistas .infra-sub, body.page-lojistas .gran-finale-content p, body.page-lojistas .gf-p, body.page-lojistas .form-lead, body.page-lojistas .bloco-sub-txt, body.page-lojistas .form-promise-txt, body.page-lojistas .gastronomia-body p {
  font-size: 23px;
  line-height: 1.7;
}

/* ══════════════════════════════════════════════════════════════
   SISTEMA TIPOGRÁFICO, H2 consistente
══════════════════════════════════════════════════════════════ */
body.page-lojistas .porque-h2, body.page-lojistas .curadoria-h2, body.page-lojistas .tipologia-h2, body.page-lojistas .gastronomia-h2, body.page-lojistas .form-h2, body.page-lojistas .gf-h2, body.page-lojistas .reveal-win-h2 {
  font-family:'Playfair Display',serif;
  font-size:clamp(28px,4.2vw,62px);
  font-weight:400; line-height:1.04; letter-spacing:-.02em;
}

/* ══════════════════════════════════════════════════════════════
   RESPONSIVO CIRÚRGICO
══════════════════════════════════════════════════════════════ */
@media(max-width:1100px)  {
  body.page-lojistas .nav-links, body.page-lojistas .nav-cta { display:none; }
  body.page-lojistas .hamburger { display:flex; }
  body.page-lojistas .corner-tr, body.page-lojistas .corner-bl, body.page-lojistas .scroll-cue { display:none; }
  body.page-lojistas .footer-top { grid-template-columns:1fr 1fr; gap:32px; }
}
@media(max-width:960px)  {
  body.page-lojistas { --safe: clamp(20px,5vw,40px); }
  body.page-lojistas .hero-particles { display:none; }
  /* Grids → coluna única */
  body.page-lojistas .porque-inner { grid-template-columns:1fr; gap:48px; }
  body.page-lojistas .porque-left { position:static; }
  body.page-lojistas .curadoria-inner, body.page-lojistas .gastronomia-inner { grid-template-columns:1fr; }
  body.page-lojistas .curadoria-foto, body.page-lojistas .gastronomia-foto { min-height:320px; }
  body.page-lojistas .curadoria-body, body.page-lojistas .gastronomia-body { padding:clamp(40px,6vh,64px) var(--safe)!important; }
  body.page-lojistas .tipologia-grid { grid-template-columns:1fr; }
  body.page-lojistas .formulario-inner { grid-template-columns:1fr; gap:48px; }
  body.page-lojistas .form-left { position:static; }
  body.page-lojistas .form-row { grid-template-columns:1fr; }
  /* Janelas */
  body.page-lojistas .reveal-win { height:60vh; min-height:380px; }
  body.page-lojistas .reveal-win-selo { display:none!important; }
  /* Rooftop double window */
  body.page-lojistas .win-rooftop-lj { height:110vh; min-height:560px; }
  body.page-lojistas .win-rooftop-lj-body { max-width:100%; }
  body.page-lojistas .win-rooftop-lj-stats {
  position: absolute !important;
  right: var(--safe) !important;
  bottom: clamp(52px,8vh,80px) !important;
  z-index: 5 !important;
  display: flex;
  flex-direction: column;
  gap: 0;
  background: rgba(6,10,6,.55);
  backdrop-filter: blur(18px) saturate(1.3);
  -webkit-backdrop-filter: blur(18px) saturate(1.3);
  border: 1px solid rgba(182,141,64,.18);
  min-width: clamp(140px,14vw,190px);
}
  body.page-lojistas .win-rooftop-lj-frame { display:none; }
  /* Padding mobile para não encostar nas bordas */
  body.page-lojistas .bloco-tipologia { padding-left:20px; padding-right:20px; }
}
@media(max-width:640px)  {
  body.page-lojistas { cursor:auto; overflow-x:hidden; }
  body.page-lojistas .cursor, body.page-lojistas .cursor-ring { display:none; }
  body.page-lojistas .footer-top { grid-template-columns:1fr; }
  body.page-lojistas .footer-bottom { flex-direction:column; text-align:center; }
  /* Textos em mobile */
  body.page-lojistas p, body.page-lojistas .porq-desc, body.page-lojistas .tipo-desc, body.page-lojistas .curadoria-body p, body.page-lojistas .gastronomia-body p, body.page-lojistas .reveal-win-p, body.page-lojistas .gf-p, body.page-lojistas .form-lead, body.page-lojistas .form-promise-txt, body.page-lojistas .porque-lead {
    font-size:18px!important;
    line-height:1.7!important;
  }
  body.page-lojistas .hero-sub { font-size:19px !important; line-height:1.55 !important; }
  body.page-lojistas .hero-support { font-size:14.5px !important; line-height:1.7 !important; }
}
@media(max-width:360px)  {
  body.page-lojistas { --safe: 16px; }
  body.page-lojistas .hero-h1 { font-size:clamp(30px,8vw,42px)!important; }
  body.page-lojistas .tipologia-grid { gap:0; }
  body.page-lojistas .tipo-card { padding:28px 16px; }
}
@media print  {
  body.page-lojistas .cursor, body.page-lojistas .cursor-ring, body.page-lojistas nav, body.page-lojistas .mobile-menu, body.page-lojistas .marquee-strip, body.page-lojistas .wpp-float-new { display:none!important; }
  body.page-lojistas { background:white; color:black; }
}


/* ===== ajuste final de contraste, big numbers, forms e footer ===== */

/* Blocos de cards/features escuros: textos e ícones em branco */
body.page-lojistas .card, body.page-lojistas .feature, body.page-lojistas .feature-card, body.page-lojistas .amenity, body.page-lojistas .amenity-card, body.page-lojistas .service-card, body.page-lojistas .stat-card, body.page-lojistas .rooftop-card, body.page-lojistas .parking-card, body.page-lojistas .valet-card, body.page-lojistas [class*="card"], body.page-lojistas [class*="feature"], body.page-lojistas [class*="amenity"] {
  color:#fff !important;
}

body.page-lojistas .card *, body.page-lojistas .feature *, body.page-lojistas .feature-card *, body.page-lojistas .amenity *, body.page-lojistas .amenity-card *, body.page-lojistas .service-card *, body.page-lojistas .stat-card *, body.page-lojistas .rooftop-card *, body.page-lojistas .parking-card *, body.page-lojistas .valet-card *, body.page-lojistas [class*="card"] *, body.page-lojistas [class*="feature"] *, body.page-lojistas [class*="amenity"] * {
  color:#fff !important;
  fill:#fff !important;
  stroke:#fff !important;
}

/* Big numbers padronizados */
body.page-lojistas .stat, body.page-lojistas .stats, body.page-lojistas .big-number, body.page-lojistas .metric, body.page-lojistas .number, body.page-lojistas .counter, body.page-lojistas [class*="stat"], body.page-lojistas [class*="metric"], body.page-lojistas [class*="number"], body.page-lojistas [class*="counter"] {
  color:inherit;
}

body.page-lojistas .stat strong, body.page-lojistas .stats strong, body.page-lojistas .big-number, body.page-lojistas .metric, body.page-lojistas .number, body.page-lojistas .counter, body.page-lojistas [class*="big"] strong, body.page-lojistas [class*="stat"] strong, body.page-lojistas [class*="metric"] strong, body.page-lojistas [class*="number"] strong {
  font-size:clamp(48px,6vw,92px) !important;
  line-height:.95 !important;
  font-weight:600 !important;
  letter-spacing:-.04em !important;
}

/* Subtítulos dos big numbers: 2 Andares, 2.130m², vagas, rooftop etc */
body.page-lojistas .stat span, body.page-lojistas .stats span, body.page-lojistas .stat p, body.page-lojistas .stats p, body.page-lojistas .metric-label, body.page-lojistas .big-number-subtitle, body.page-lojistas .stat-label, body.page-lojistas .counter small, body.page-lojistas [class*="stat"] span, body.page-lojistas [class*="metric"] span, body.page-lojistas [class*="number"] span {
  font-size:clamp(20px,2vw,30px) !important;
  line-height:1.25 !important;
  font-weight:500 !important;
  letter-spacing:.01em !important;
}

/* Ícones acima de Tablado / 4x6 / similares */
body.page-lojistas svg, body.page-lojistas .icon, body.page-lojistas [class*="icon"] {
  color:#fff !important;
  fill:#fff !important;
  stroke:#fff !important;
}

/* Formulários: menores, mais elegantes e padronizados */
body.page-lojistas form, body.page-lojistas .form, body.page-lojistas .newsletter, body.page-lojistas .proposal-form, body.page-lojistas [class*="form"] {
  font-size:16px !important;
}

body.page-lojistas form label, body.page-lojistas .form label, body.page-lojistas form small, body.page-lojistas .form small {
  font-size:14px !important;
  line-height:1.35 !important;
  letter-spacing:.03em !important;
}

body.page-lojistas input, body.page-lojistas select, body.page-lojistas textarea, body.page-lojistas form input, body.page-lojistas form select, body.page-lojistas form textarea {
  font-size:clamp(15px,1.45vw,17px) !important;
  line-height:1.4 !important;
  padding:14px 14px !important;
}

body.page-lojistas input::placeholder, body.page-lojistas textarea::placeholder {
  font-size:clamp(15px,1.45vw,17px) !important;
}

body.page-lojistas form button, body.page-lojistas .form button, body.page-lojistas .newsletter button, body.page-lojistas .proposal-form button, body.page-lojistas [class*="form"] button {
  font-size:clamp(11px,1.1vw,13px) !important;
  padding:18px 36px !important;
  letter-spacing:.25em !important;
}

/* Rodapé médio, legível, sem ficar gigante */
body.page-lojistas footer, body.page-lojistas .footer, body.page-lojistas .site-footer, body.page-lojistas [class*="footer"] {
  font-size:16px !important;
  line-height:1.55 !important;
}

body.page-lojistas footer p, body.page-lojistas footer li, body.page-lojistas footer a, body.page-lojistas footer span, body.page-lojistas .footer p, body.page-lojistas .footer li, body.page-lojistas .footer a, body.page-lojistas .footer span, body.page-lojistas .site-footer p, body.page-lojistas .site-footer li, body.page-lojistas .site-footer a, body.page-lojistas .site-footer span, body.page-lojistas [class*="footer"] p, body.page-lojistas [class*="footer"] li, body.page-lojistas [class*="footer"] a, body.page-lojistas [class*="footer"] span {
  font-size:16px !important;
  line-height:1.55 !important;
  letter-spacing:.02em !important;
}

body.page-lojistas footer small, body.page-lojistas .footer small, body.page-lojistas .site-footer small, body.page-lojistas [class*="footer"] small {
  font-size:14px !important;
}

/* Textos auxiliares que não são form nem footer continuam maiores */
body.page-lojistas :not(form):not(form *):not(footer):not(footer *).meta, body.page-lojistas :not(form):not(form *):not(footer):not(footer *).caption, body.page-lojistas :not(form):not(form *):not(footer):not(footer *).microtext, body.page-lojistas :not(form):not(form *):not(footer):not(footer *).amenities, body.page-lojistas :not(form):not(form *):not(footer):not(footer *).details, body.page-lojistas :not(form):not(form *):not(footer):not(footer *).info-line {
  font-size:clamp(18px,1.8vw,22px) !important;
}


/* labels dos big numbers MUITO maiores */
body.page-lojistas .metric-label, body.page-lojistas .big-number-subtitle, body.page-lojistas .stat-label, body.page-lojistas .counter small, body.page-lojistas [class*="stat"] span, body.page-lojistas [class*="metric"] span, body.page-lojistas [class*="number"] span {
font-size:clamp(28px,2.8vw,42px)!important;
line-height:1.2!important;
font-weight:500!important;
}

/* blocos teto/valet/estacionamento todos brancos */
body.page-lojistas .teto, body.page-lojistas .feature-card, body.page-lojistas .service-card, body.page-lojistas .amenity-card, body.page-lojistas .parking-card, body.page-lojistas .valet-card, body.page-lojistas [class*="feature"], body.page-lojistas [class*="service"], body.page-lojistas [class*="amenity"] {
color:#fff!important;
}
body.page-lojistas .teto *, body.page-lojistas .feature-card *, body.page-lojistas .service-card *, body.page-lojistas .amenity-card *, body.page-lojistas .parking-card *, body.page-lojistas .valet-card *, body.page-lojistas [class*="feature"] *, body.page-lojistas [class*="service"] *, body.page-lojistas [class*="amenity"] * {
color:#fff!important;
fill:#fff!important;
stroke:#fff!important;
}


/* Tipografia do form padronizada (regra anterior reduzia em 20% — corrigido) */
body.page-lojistas .bloco-formulario .form-label, body.page-lojistas .bloco-formulario form label {
  font-size:clamp(13px,1.3vw,15px) !important;
  letter-spacing:.3em !important;
  line-height:1.4 !important;
  font-weight:600 !important;
}


/* ===== correção bloco features: textos/títulos brancos ===== */
body.page-lojistas .feature-card, body.page-lojistas .service-card, body.page-lojistas .amenity-card, body.page-lojistas .parking-card, body.page-lojistas .valet-card, body.page-lojistas .teto, body.page-lojistas [class*="feature"], body.page-lojistas [class*="service"], body.page-lojistas [class*="amenity"], body.page-lojistas [class*="parking"], body.page-lojistas [class*="valet"] {
  color:#fff !important;
}

body.page-lojistas .feature-card *, body.page-lojistas .service-card *, body.page-lojistas .amenity-card *, body.page-lojistas .parking-card *, body.page-lojistas .valet-card *, body.page-lojistas .teto *, body.page-lojistas [class*="feature"] *, body.page-lojistas [class*="service"] *, body.page-lojistas [class*="amenity"] *, body.page-lojistas [class*="parking"] *, body.page-lojistas [class*="valet"] * {
  color:#fff !important;
  fill:#fff !important;
  stroke:#fff !important;
}

/* garante que textos inline com cor própria também fiquem brancos nesses cards */
body.page-lojistas .feature-card [style], body.page-lojistas .service-card [style], body.page-lojistas .amenity-card [style], body.page-lojistas .parking-card [style], body.page-lojistas .valet-card [style], body.page-lojistas [class*="feature"] [style], body.page-lojistas [class*="service"] [style], body.page-lojistas [class*="amenity"] [style], body.page-lojistas [class*="parking"] [style], body.page-lojistas [class*="valet"] [style] {
  color:#fff !important;
}

/* ===== padronização do big number 350 vagas / estacionamento ===== */
body.page-lojistas .parking-card strong, body.page-lojistas .parking-card .number, body.page-lojistas .parking-card .metric, body.page-lojistas [class*="parking"] strong, body.page-lojistas [class*="parking"] .number, body.page-lojistas [class*="parking"] .metric {
  display:block !important;
  font-size:clamp(48px,6vw,92px) !important;
  line-height:.95 !important;
  font-weight:600 !important;
  letter-spacing:-.04em !important;
  color:#fff !important;
}

body.page-lojistas .parking-card small, body.page-lojistas .parking-card span, body.page-lojistas .parking-card .metric-label, body.page-lojistas [class*="parking"] small, body.page-lojistas [class*="parking"] span, body.page-lojistas [class*="parking"] .metric-label {
  display:block !important;
  font-size:clamp(22px,2.4vw,34px) !important;
  line-height:1.2 !important;
  font-weight:500 !important;
  letter-spacing:.01em !important;
  color:#fff !important;
}

/* caso esteja escrito grudado como 350vagas */
body.page-lojistas .parking-card, body.page-lojistas [class*="parking"] {
  word-spacing:.12em;
}


/* força absoluta branco nesses blocos */
body.page-lojistas .feature-grid *, body.page-lojistas .features *, body.page-lojistas .cards-grid *, body.page-lojistas .cards-grid h1, body.page-lojistas .cards-grid h2, body.page-lojistas .cards-grid h3, body.page-lojistas .cards-grid h4, body.page-lojistas .cards-grid h5, body.page-lojistas .cards-grid p, body.page-lojistas .cards-grid span, body.page-lojistas .cards-grid strong, body.page-lojistas .cards-grid small, body.page-lojistas .amenities-grid *, body.page-lojistas [data-section="features"] *, body.page-lojistas section.features * {
color:#ffffff !important;
-webkit-text-fill-color:#ffffff !important;
fill:#ffffff !important;
stroke:#ffffff !important;
}

/* overlays */
body.page-lojistas .feature-grid, body.page-lojistas .cards-grid, body.page-lojistas .features {
color:#fff!important;
}


/* texto descritivo mais forte */
body.page-lojistas .feature-card p, body.page-lojistas .amenity-card p, body.page-lojistas .service-card p, body.page-lojistas .cards-grid p {
font-weight:600!important;
font-size:1.18rem!important;
line-height:1.7!important;
}

/* reduzir números laterais */
body.page-lojistas .metric, body.page-lojistas .big-number, body.page-lojistas .counter, body.page-lojistas [class*="stat"] strong, body.page-lojistas [class*="number"] strong {
font-size:clamp(38px,4.8vw,68px)!important;
}


body.page-lojistas header nav a, body.page-lojistas .menu a, body.page-lojistas .navbar a, body.page-lojistas nav ul li a {
font-size:18px !important;
font-weight:600 !important;
letter-spacing:.02em !important;
}
@media(max-width:768px) {
body.page-lojistas header nav a, body.page-lojistas .menu a, body.page-lojistas .navbar a, body.page-lojistas nav ul li a {
font-size:16px !important;
}
}

/* ── Form on palha background — TEXTO EXTERNO BORDÔ + CAIXA BORDÔ COM TEXTO PALHA ── */

/* Coluna esquerda (fora da caixa): textos em BORDÔ sobre fundo PALHA */
body.page-lojistas .bloco-formulario .form-h2 { color:var(--bordo-prof) !important; }
body.page-lojistas .bloco-formulario .form-lead { color:rgba(74,14,14,.78) !important; }
body.page-lojistas .bloco-formulario .form-promise-txt { color:rgba(74,14,14,.7) !important; }
body.page-lojistas .bloco-formulario .form-promise-dot { background:var(--bordo-prof) !important; }

/* Caixa do formulário: fundo BORDÔ profundo + texto PALHA */
body.page-lojistas .bloco-formulario .form-right {
  background:linear-gradient(145deg,#3d0a11 0%,#4a0e0e 55%,#350810 100%) !important;
  border:1px solid rgba(245,235,221,.15) !important;
  box-shadow:0 40px 100px rgba(0,0,0,.45),0 12px 32px rgba(0,0,0,.28) !important;
}
body.page-lojistas .bloco-formulario .form-right::before { background:linear-gradient(to right,var(--palha-f),rgba(245,235,221,.25)) !important; height:2px !important; width:60px !important; }
body.page-lojistas .bloco-formulario .form-right::after { display:none; }

/* Inputs dentro da caixa bordô: texto palha, placeholders palha translúcido */
body.page-lojistas .bloco-formulario .form-input, body.page-lojistas .bloco-formulario .form-select, body.page-lojistas .bloco-formulario .form-textarea {
  background:rgba(245,235,221,.06) !important;
  border-bottom-color:rgba(245,235,221,.22) !important;
  color:var(--palha-f) !important;
}
body.page-lojistas .bloco-formulario .form-input::placeholder, body.page-lojistas .bloco-formulario .form-textarea::placeholder { color:rgba(245,235,221,.32) !important; }
body.page-lojistas .bloco-formulario .form-input:focus, body.page-lojistas .bloco-formulario .form-select:focus, body.page-lojistas .bloco-formulario .form-textarea:focus {
  border-bottom-color:var(--palha-f) !important;
  background:rgba(245,235,221,.1) !important;
  color:var(--palha-f) !important;
}
body.page-lojistas .bloco-formulario .form-label { color:rgba(245,235,221,.7) !important; }
body.page-lojistas .bloco-formulario .form-select { color:rgba(245,235,221,.45) !important; }
body.page-lojistas .bloco-formulario .form-select.filled { color:var(--palha-f) !important; }
body.page-lojistas .bloco-formulario .form-select option { background:#3d0a11 !important; color:var(--palha-f) !important; }
body.page-lojistas .bloco-formulario .form-note { color:rgba(245,235,221,.5) !important; }

body.page-lojistas .bloco-formulario::before { background:linear-gradient(to bottom,transparent,rgba(74,14,14,.18) 15%,rgba(74,14,14,.18) 85%,transparent); }
body.page-lojistas .bloco-formulario::after { opacity:.45; }

/* Botão submit dentro da caixa bordô: texto palha sobre bordô (regra de contraste) */
body.page-lojistas .bloco-formulario .form-right .btn-primary {
  color:var(--palha-f) !important;
  border-color:rgba(245,235,221,.4) !important;
}
body.page-lojistas .bloco-formulario .form-right .btn-primary::before {
  background:rgba(245,235,221,.12) !important;
}
body.page-lojistas .bloco-formulario .form-right .btn-primary:hover {
  color:var(--palha-f) !important;
  border-color:var(--palha-f) !important;
  box-shadow:0 8px 32px rgba(0,0,0,.3) !important;
}


/* ── Body text 23px enforcement (index standard) ── */
body.page-lojistas .form-lead, body.page-lojistas .form-promise-txt, body.page-lojistas .gf-p, body.page-lojistas .spec-desc, body.page-lojistas .spec-intro, body.page-lojistas .forma-desc, body.page-lojistas .reveal-win-p, body.page-lojistas .win-rooftop-lj-body p, body.page-lojistas .bloco-sub-txt, body.page-lojistas .cs-p { font-size: 23px; line-height: 1.75; }


/* REFINO_PREMIUM_FINAL */
/* ═══════════════════════════════════════════════════════════════
   REFINO PREMIUM — Camada final de polimento
   Ritmo vertical · Hover suave · Respiração · Overlays sutis
═══════════════════════════════════════════════════════════════ */

/* Ritmo vertical — herdado por todos os parágrafos longos */
body.page-lojistas p { line-height:1.72; }
body.page-lojistas .hero-sub, body.page-lojistas .reveal-win-p, body.page-lojistas .corp-p-a, body.page-lojistas .infra-rooftop-p-a, body.page-lojistas .shows-p-a, body.page-lojistas .pilar-desc, body.page-lojistas .vpoint-desc, body.page-lojistas .vantagem-intro, body.page-lojistas .bloco-intro, body.page-lojistas .si-desc-a, body.page-lojistas .infra-card-p-a, body.page-lojistas .cs-p, body.page-lojistas .plantas-lead, body.page-lojistas .ftr-text, body.page-lojistas .quote-text, body.page-lojistas blockquote, body.page-lojistas .infra-lead-a {
  line-height: 1.78;
}

/* Eyebrow — ritmo unificado e respiração */
body.page-lojistas .eyebrow { margin-bottom: clamp(28px, 3.5vh, 40px); gap: 16px; }
body.page-lojistas .eyebrow-line { width: 44px; transition: width .6s var(--ease), background .4s; }
body.page-lojistas .eyebrow:hover .eyebrow-line { width: 60px; }
body.page-lojistas .eyebrow span { font-weight: 500; }

/* Headings — espaço respiratório aumentado */
body.page-lojistas h2, body.page-lojistas h3 { letter-spacing: -.022em; }

/* Microinterações — cards genéricos */
body.page-lojistas .grid-card-eq, body.page-lojistas .infra-card-a, body.page-lojistas .pilar-card, body.page-lojistas .vantagem-point, body.page-lojistas .planta-item, body.page-lojistas .corp-foto-a {
  transition: transform .55s cubic-bezier(0.16,1,0.3,1),
              box-shadow .55s cubic-bezier(0.16,1,0.3,1),
              border-color .45s ease;
}

/* Imagens grid — overlay sutil + bloom no hover */
body.page-lojistas .grid-card-eq { position: relative; overflow: hidden; }
body.page-lojistas .grid-card-eq::after {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0) 45%, rgba(0,0,0,.42) 100%);
  pointer-events: none;
  transition: opacity .6s var(--ease);
  z-index: 1;
}
body.page-lojistas .grid-card-eq:hover::after { opacity: .85; }
body.page-lojistas .grid-card-eq img {
  transition: transform 1.1s cubic-bezier(0.16,1,0.3,1), filter .8s ease;
}
body.page-lojistas .grid-card-eq:hover img {
  transform: scale(1.04);
  filter: brightness(1.04) saturate(1.04);
}
body.page-lojistas .grid-card-content { z-index: 2; }

/* Botões CTA — refinamento de transições */
body.page-lojistas .btn-primary, body.page-lojistas .btn-ghost-dk, body.page-lojistas .btn-form-wa-a, body.page-lojistas .btn-form-loc-a, body.page-lojistas .btn-form-email-a, body.page-lojistas .nav-cta, body.page-lojistas .btn-hero-ig {
  transition: transform .45s cubic-bezier(0.16,1,0.3,1),
              background .35s ease,
              border-color .35s ease,
              color .35s ease,
              box-shadow .45s ease;
}
body.page-lojistas .btn-primary:hover, body.page-lojistas .btn-ghost-dk:hover {
  transform: translateY(-1px);
}

/* Marquee — respiração horizontal */
body.page-lojistas .marquee-item { padding: 14px 32px; }

/* Reveal-win parágrafos — espaço respiratório premium */
body.page-lojistas .reveal-win-p { margin-bottom: clamp(8px, 1.5vh, 16px); }

/* Footer — ritmo vertical */
body.page-lojistas .ftr-col-head { margin-bottom: 24px; }

/* Pilares — respiração interna */
body.page-lojistas .pilar-card { padding: clamp(28px, 3.5vw, 44px); }

/* Quote — refino tipográfico */
body.page-lojistas blockquote { letter-spacing: -.005em; }

/* Acessibilidade — focus state premium */
body.page-lojistas a:focus-visible, body.page-lojistas button:focus-visible {
  outline: 1px solid var(--go);
  outline-offset: 4px;
  border-radius: 1px;
}

/* Reduced motion — respeito */
@media (prefers-reduced-motion: reduce)  {
  body.page-lojistas *, body.page-lojistas *::before, body.page-lojistas *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}


/* ═══════════════════════════════════════════════════════════════════
   REFINO MASTER · CAMADA FINAL DE PRODUÇÃO
   Aplicado uniformemente em todas as 4 páginas.
   Não recria nada. Apenas refina o que já existe.
   ─────────────────────────────────────────────────────────────────
   1.  Redução inteligente de efeitos
   2.  Tipografia premium real (legibilidade global)
   3.  Botões e CTA · padrão único
   4.  Microinterações elegantes
   5.  Imagens · zoom e overlay refinados
   6.  Full Scroll Experience · transições contínuas
   7.  Refino de cards e blocos
   8.  Responsividade final (mobile · tablet · desktop)
═══════════════════════════════════════════════════════════════════ */

/* ── 1. REDUÇÃO DE EFEITOS ─────────────────────────────────────── */
body.page-lojistas .hero-particles, body.page-lojistas .grain { display:none !important; }
body.page-lojistas .hero-bg-letters { opacity:.42 !important; }
body.page-lojistas .hero-grid { opacity:.22 !important; }

/* Cursor custom — visualmente mais limpo */
body.page-lojistas .cursor { box-shadow:0 0 12px rgba(182,141,64,.28) !important; }
body.page-lojistas .cursor-ring { border-color:rgba(182,141,64,.35) !important; }

/* ── 2. TIPOGRAFIA PREMIUM REAL ────────────────────────────────── */
body.page-lojistas {
  font-feature-settings:"ss01","kern","liga";
  text-rendering:optimizeLegibility;
}

/* Hierarquia headers */
body.page-lojistas h1, body.page-lojistas .hero-h1 {
  letter-spacing:-.028em !important;
  line-height:1.02 !important;
}
body.page-lojistas h2 { letter-spacing:-.022em; }

/* Parágrafos: legibilidade, ritmo */
body.page-lojistas p { line-height:1.78; }

/* Eyebrows (rótulos seção) */
body.page-lojistas .eyebrow span, body.page-lojistas .hero-eyebrow, body.page-lojistas .hero-eyebrow-dourado, body.page-lojistas .reveal-win-eyebrow, body.page-lojistas .cand-eyebrow, body.page-lojistas .cs-tag, body.page-lojistas .planta-config, body.page-lojistas .planta-label {
  letter-spacing:.34em !important;
  font-weight:600 !important;
}

/* Subtítulos (Playfair italic) — peso refinado */
body.page-lojistas .hero-sub, body.page-lojistas .reveal-win-p, body.page-lojistas .cand-p, body.page-lojistas .gf-p {
  font-weight:300 !important;
}

/* ── 3. BOTÕES E CTA · PADRÃO ÚNICO ────────────────────────────── */
body.page-lojistas .btn-primary, body.page-lojistas .btn-bordo, body.page-lojistas .btn-ghost, body.page-lojistas .btn-ghost-dk, body.page-lojistas .btn-outline, body.page-lojistas .btn-outline-amber, body.page-lojistas .btn-form-submit, body.page-lojistas .cand-btn-submit, body.page-lojistas .cand-wa, body.page-lojistas .nav-cta {
  font-family:'DM Sans', sans-serif !important;
  letter-spacing:.24em !important;
  text-transform:uppercase !important;
  font-weight:500 !important;
  transition:all .45s cubic-bezier(.22,1,.36,1) !important;
  will-change:transform;
}

body.page-lojistas .btn-primary {
  padding:18px clamp(34px,5vw,52px) !important;
  font-size:clamp(11px,1.05vw,12.5px) !important;
  border-width:1px !important;
}
body.page-lojistas .btn-primary:hover {
  transform:translateY(-2px) !important;
  box-shadow:0 14px 36px rgba(182,141,64,.22) !important;
}
body.page-lojistas .btn-primary:active { transform:translateY(0) !important; }

body.page-lojistas .btn-ghost, body.page-lojistas .btn-ghost-dk {
  font-size:clamp(10px,1vw,11.5px) !important;
}
body.page-lojistas .btn-ghost:hover .ghost-line, body.page-lojistas .btn-ghost-dk:hover .ghost-line { width:54px !important; }

body.page-lojistas .nav-cta {
  font-size:clamp(8px,1vw,9.5px) !important;
  padding:11px clamp(18px,2.4vw,28px) !important;
}

/* ── 4. NAV refinado ──────────────────────────────────────────── */
body.page-lojistas nav {
  height:74px !important;
  transition:height .45s cubic-bezier(.22,1,.36,1),
             background .45s, border-color .45s, box-shadow .45s !important;
}
body.page-lojistas nav.scrolled { height:64px !important; }
body.page-lojistas .nav-logo-main { font-weight:500 !important; letter-spacing:.05em !important; }
body.page-lojistas .nav-logo-sub { letter-spacing:.32em !important; }

/* ── 5. IMAGENS · ZOOM E OVERLAY REFINADO ─────────────────────── */
/* Cards com imagem ganham zoom suave no hover, overlay sofisticado */
body.page-lojistas .grid-card-eq img, body.page-lojistas .tipo-card img, body.page-lojistas .cs-img-bg, body.page-lojistas .curadoria-foto .win-bg, body.page-lojistas .gastronomia-foto .win-bg, body.page-lojistas .bloco-foto .win-bg, body.page-lojistas .janela-foto-bg {
  transition:transform 1.4s cubic-bezier(.22,1,.36,1),
             filter .8s cubic-bezier(.22,1,.36,1) !important;
}
body.page-lojistas .grid-card-eq:hover img, body.page-lojistas .cs-img:hover .cs-img-bg, body.page-lojistas .curadoria-foto:hover .win-bg, body.page-lojistas .gastronomia-foto:hover .win-bg, body.page-lojistas .bloco-foto:hover .win-bg, body.page-lojistas .janela-foto:hover .janela-foto-bg {
  transform:scale(1.06) !important;
  filter:brightness(1.04) saturate(1.08) !important;
}

/* Overlay de cards mais sofisticado: gradient + leve vinheta inferior */
body.page-lojistas .grid-card-eq::after {
  background:linear-gradient(to top,
    rgba(8,14,8,.78) 0%,
    rgba(8,14,8,.18) 55%,
    transparent 90%) !important;
}

/* ── 6. FULL SCROLL EXPERIENCE · TRANSIÇÕES CONTÍNUAS ─────────── */
/* Cada esteira agora dissolve-se suavemente nos blocos vizinhos */
body.page-lojistas .marquee-strip {
  position:relative;
  z-index:5;
}
body.page-lojistas .marquee-strip::before, body.page-lojistas .marquee-strip::after {
  content:'';
  position:absolute;
  left:0; right:0;
  height:24px;
  pointer-events:none;
  z-index:6;
}
body.page-lojistas .marquee-strip::before { top:0; }
body.page-lojistas .marquee-strip::after { bottom:0; }

/* Esteira ouro/gold */
body.page-lojistas .marquee-strip.mq-gold::before { background:linear-gradient(to bottom, currentColor, transparent); opacity:.35; }
body.page-lojistas .marquee-strip.mq-gold::after { background:linear-gradient(to top, currentColor, transparent); opacity:.35; }

/* Transições por par de seção: suaviza o "corte" entre blocos */
body.page-lojistas .win::before {
  content:'';
  position:absolute;
  top:-1px; left:0; right:0; height:80px;
  background:linear-gradient(to bottom, rgba(8,14,8,.55), transparent);
  z-index:2;
  pointer-events:none;
}
body.page-lojistas .win::after {
  content:'';
  position:absolute;
  bottom:0; left:0; right:0; height:90px;
  background:linear-gradient(to top, rgba(8,14,8,.45), transparent);
  z-index:2;
  pointer-events:none;
}

/* Container principal do reveal-win precisa permitir que o body interno fique acima do gradient */
body.page-lojistas .win .reveal-win-body, body.page-lojistas .win .win-rooftop-body, body.page-lojistas .win .win-rooftop-lj-body { z-index:5 !important; }
body.page-lojistas .win .reveal-win-num, body.page-lojistas .win .reveal-win-selo, body.page-lojistas .win .win-rooftop-num, body.page-lojistas .win .win-rooftop-lj-num, body.page-lojistas .win .win-rooftop-stats, body.page-lojistas .win .win-rooftop-lj-stats { z-index:5 !important; }

/* Sec-palha · sec-verde · sec-dourado: transição superior suave para visualmente fundir */
body.page-lojistas .sec-palha, body.page-lojistas .sec-verde, body.page-lojistas .sec-institucional, body.page-lojistas .bloco-verde, body.page-lojistas .bloco-dourado, body.page-lojistas .bloco-curadoria, body.page-lojistas .bloco-gastronomia, body.page-lojistas .bloco-tipologia, body.page-lojistas .bloco-diferenciais, body.page-lojistas .bloco-corp-a, body.page-lojistas .bloco-social-a, body.page-lojistas .bloco-shows-a, body.page-lojistas .bloco-infra-a, body.page-lojistas .bloco-form-a, body.page-lojistas .bloco-formulario, body.page-lojistas .bloco-candidatura, body.page-lojistas .bloco-plantas, body.page-lojistas .sec-porque {
  position:relative;
}

/* ── 7. REFINO DE CARDS E BLOCOS ──────────────────────────────── */
body.page-lojistas .pilar-card, body.page-lojistas .tipo-card, body.page-lojistas .infra-card-a, body.page-lojistas .dif-card, body.page-lojistas .porq-item, body.page-lojistas .vantagem-point, body.page-lojistas .si-num-a, body.page-lojistas .grid-card-eq {
  transition:transform .55s cubic-bezier(.22,1,.36,1),
             box-shadow .55s, border-color .45s !important;
}
body.page-lojistas .pilar-card:hover, body.page-lojistas .tipo-card:hover, body.page-lojistas .infra-card-a:hover, body.page-lojistas .dif-card:hover, body.page-lojistas .porq-item:hover, body.page-lojistas .vantagem-point:hover {
  transform:translateY(-4px);
}

/* Fields de formulário mais respirados e elegantes */
body.page-lojistas .form-input, body.page-lojistas .form-select, body.page-lojistas .form-textarea, body.page-lojistas .cand-fg input, body.page-lojistas .cand-fg select, body.page-lojistas .cand-fg textarea, body.page-lojistas .form-g-a input, body.page-lojistas .form-g-a select, body.page-lojistas .form-g-a textarea {
  font-size:clamp(14px,1.3vw,16px) !important;
  padding-top:14px !important;
  padding-bottom:14px !important;
  transition:border-color .35s, background .35s !important;
}

/* Footer · mais respirado */
body.page-lojistas footer { border-top:1px solid rgba(182,141,64,.18); }

/* ── 8. RESPONSIVIDADE FINAL · MOBILE / TABLET ────────────────── */

/* Tablet */
@media (max-width: 1100px)  {
  body.page-lojistas { --safe: clamp(20px, 5vw, 56px); }
  body.page-lojistas .hero-stats { width: clamp(140px, 18vw, 180px) !important; }
}

/* Mobile geral */
@media (max-width: 760px)  {
  body.page-lojistas { --safe: 22px; }
  body.page-lojistas { line-height:1.7; }
  body.page-lojistas nav { height:60px !important; padding:0 18px !important; }
  body.page-lojistas nav.scrolled { height:54px !important; }
  body.page-lojistas .nav-logo-main { font-size:18px !important; }
  body.page-lojistas .nav-logo-sub { font-size:8.5px !important; letter-spacing:.28em !important; }
  body.page-lojistas .nav-cta { display:none !important; }
  body.page-lojistas .nav-links { display:none !important; }
  body.page-lojistas .hamburger { display:flex !important; }

  body.page-lojistas .hero-content { padding:120px 22px 110px !important; }
  body.page-lojistas .hero-h1 { font-size:clamp(34px,8vw,48px) !important; line-height:1.05 !important; }
  body.page-lojistas .hero-sub { font-size:clamp(17px,4.6vw,21px) !important; line-height:1.5 !important; }
  body.page-lojistas .hero-support { font-size:14.5px !important; line-height:1.65 !important; }
  body.page-lojistas .hero-eyebrow, body.page-lojistas .hero-eyebrow-dourado { font-size:11px !important; letter-spacing:.28em !important; }
  body.page-lojistas .hero-stats { display:none !important; }

  body.page-lojistas .corner-tr, body.page-lojistas .corner-bl, body.page-lojistas .hero-corner-tr { display:none !important; }
  body.page-lojistas .hero-bg-letters { font-size:160px !important; opacity:.18 !important; }

  body.page-lojistas .reveal-win-num, body.page-lojistas .win-rooftop-num, body.page-lojistas .win-rooftop-lj-num { font-size:80px !important; opacity:.22 !important; }
  body.page-lojistas .reveal-win-selo { display:none !important; }
  body.page-lojistas .reveal-win-h2 { font-size:clamp(28px,7vw,38px) !important; line-height:1.06 !important; }
  body.page-lojistas .reveal-win-body, body.page-lojistas .win-rooftop-body, body.page-lojistas .win-rooftop-lj-body { padding:60px 22px 70px !important; }
  body.page-lojistas .win, body.page-lojistas .reveal-win, body.page-lojistas .win-rooftop, body.page-lojistas .win-rooftop-lj { min-height:78vh !important; }

  body.page-lojistas .marquee-strip { height:46px !important; }
  body.page-lojistas .marquee-item { font-size:11px !important; padding:0 18px !important; }

  body.page-lojistas .pilares-grid, body.page-lojistas .tipologia-grid, body.page-lojistas .dif-grid, body.page-lojistas .grid-cards-equal { grid-template-columns:1fr !important; }
  body.page-lojistas .grid-card-eq { aspect-ratio:4/3 !important; }

  body.page-lojistas .corp-specs-a, body.page-lojistas .corp-split-a, body.page-lojistas .social-split-a, body.page-lojistas .shows-split-a, body.page-lojistas .bloco-split, body.page-lojistas .janela-split, body.page-lojistas .vantagem-split, body.page-lojistas .porque-inner, body.page-lojistas .formulario-inner, body.page-lojistas .form-inner-a, body.page-lojistas .candidatura-inner, body.page-lojistas .curadoria-inner, body.page-lojistas .gastronomia-inner, body.page-lojistas .pilares-header { grid-template-columns:1fr !important; gap:32px !important; }

  body.page-lojistas .corp-foto-a, body.page-lojistas .social-foto-a, body.page-lojistas .shows-foto-a, body.page-lojistas .bloco-foto, body.page-lojistas .janela-foto { min-height:280px !important; }

  body.page-lojistas .card-sol { grid-template-columns:1fr !important; }

  body.page-lojistas .plantas-grid { grid-template-columns:1fr !important; gap:36px !important; }

  body.page-lojistas .footer-top { grid-template-columns:1fr !important; gap:36px !important; }
  body.page-lojistas .footer-bottom { flex-direction:column !important; gap:18px !important; align-items:flex-start !important; }

  body.page-lojistas .btn-primary { width:100% !important; justify-content:center !important; padding:16px 28px !important; }
  body.page-lojistas .cta-btns, body.page-lojistas .cta-btns-a { flex-direction:column !important; align-items:stretch !important; }

  /* Tipografia mobile: tudo melhor lido */
  body.page-lojistas p, body.page-lojistas .reveal-win-p, body.page-lojistas .si-desc-a, body.page-lojistas .cs-p, body.page-lojistas .planta-stat-lbl, body.page-lojistas .vpoint-desc, body.page-lojistas .porq-desc, body.page-lojistas .dif-desc, body.page-lojistas .janela-intro, body.page-lojistas .form-lead, body.page-lojistas .form-lead-a, body.page-lojistas .cand-p, body.page-lojistas .cta-p, body.page-lojistas .cta-p-a {
    font-size:16.5px !important;
    line-height:1.7 !important;
  }
  body.page-lojistas h2 { font-size:clamp(28px,7.5vw,38px) !important; line-height:1.06 !important; }
  body.page-lojistas h3 { font-size:clamp(20px,5vw,26px) !important; }
  body.page-lojistas .eyebrow span { font-size:12px !important; letter-spacing:.28em !important; }
}

/* Small mobile */
@media (max-width: 380px)  {
  body.page-lojistas { --safe: 16px; }
  body.page-lojistas .hero-h1 { font-size:30px !important; }
  body.page-lojistas .reveal-win-h2 { font-size:26px !important; }
  body.page-lojistas h2 { font-size:26px !important; }
}

/* Reduce motion */
@media (prefers-reduced-motion: reduce)  {
  body.page-lojistas *, body.page-lojistas *::before, body.page-lojistas *::after {
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
    scroll-behavior:auto !important;
  }
  body.page-lojistas .marquee-track { animation:none !important; }
}

/* Cursor custom oculto em touch */
@media (hover: none), (pointer: coarse)  {
  body.page-lojistas .cursor, body.page-lojistas .cursor-ring { display:none !important; }
  body.page-lojistas { cursor:auto !important; }
}

/* Performance · scroll suave global, sem overscroll esquisito */
html { scroll-behavior:smooth; }
body.page-lojistas { overscroll-behavior-y:none; }


/* ═══════════════════════════════════════════════════════════════
   FULL SCROLL · TRANSIÇÕES FINAIS
   Suavização da emenda entre seções, sem alterar layouts
═══════════════════════════════════════════════════════════════ */

/* Cada seção principal ganha uma fina transição superior e inferior, 
   criando a sensação de continuidade visual sem corte abrupto. */
body.page-lojistas .sec-verde, body.page-lojistas .sec-palha, body.page-lojistas .sec-institucional, body.page-lojistas .bloco-verde, body.page-lojistas .bloco-dourado, body.page-lojistas .bloco-curadoria, body.page-lojistas .bloco-gastronomia, body.page-lojistas .bloco-tipologia, body.page-lojistas .bloco-diferenciais, body.page-lojistas .bloco-corp-a, body.page-lojistas .bloco-social-a, body.page-lojistas .bloco-shows-a, body.page-lojistas .bloco-infra-a, body.page-lojistas .bloco-form-a, body.page-lojistas .bloco-formulario, body.page-lojistas .bloco-candidatura, body.page-lojistas .bloco-plantas, body.page-lojistas .sec-porque, body.page-lojistas .cta-section, body.page-lojistas .cta-final-a {
  position:relative;
}

/* Esteiras (marquees) ganham máscara suave nas extremidades, fundindo nos blocos */
body.page-lojistas .marquee-strip {
  -webkit-mask-image:linear-gradient(to right, transparent 0%, #000 6%, #000 94%, transparent 100%);
          mask-image:linear-gradient(to right, transparent 0%, #000 6%, #000 94%, transparent 100%);
}

/* Pseudoelementos das esteiras herdam o background da própria esteira para fusão real */
body.page-lojistas .marquee-strip.mq-verde::before { background:linear-gradient(to bottom, var(--verde-card, #1e2e1d), transparent) !important; opacity:.5; }
body.page-lojistas .marquee-strip.mq-verde::after { background:linear-gradient(to top,    var(--verde-card, #1e2e1d), transparent) !important; opacity:.5; }
body.page-lojistas .marquee-strip.mq-palha::before { background:linear-gradient(to bottom, var(--palha, #F2EFE9), transparent) !important; opacity:.55; }
body.page-lojistas .marquee-strip.mq-palha::after { background:linear-gradient(to top,    var(--palha, #F2EFE9), transparent) !important; opacity:.55; }
body.page-lojistas .marquee-strip.mq-bordo::before { background:linear-gradient(to bottom, var(--bordo-prof, #4A0E0E), transparent) !important; opacity:.5; }
body.page-lojistas .marquee-strip.mq-bordo::after { background:linear-gradient(to top,    var(--bordo-prof, #4A0E0E), transparent) !important; opacity:.5; }
body.page-lojistas .marquee-strip.mq-ouro::before { background:linear-gradient(to bottom, #2a2616, transparent) !important; opacity:.5; }
body.page-lojistas .marquee-strip.mq-ouro::after { background:linear-gradient(to top,    #2a2616, transparent) !important; opacity:.5; }
body.page-lojistas .marquee-strip.mq-gold::before { background:linear-gradient(to bottom, var(--go, #B68D40), transparent) !important; opacity:.32; }
body.page-lojistas .marquee-strip.mq-gold::after { background:linear-gradient(to top,    var(--go, #B68D40), transparent) !important; opacity:.32; }

/* Microtransição entre o final do hero e a primeira esteira: fade do verde escuro */
body.page-lojistas .hero {
  position:relative;
}
body.page-lojistas .hero::after {
  content:'';
  position:absolute;
  bottom:0; left:0; right:0;
  height:80px;
  background:linear-gradient(to top, rgba(8,14,8,.65) 0%, transparent 100%);
  pointer-events:none;
  z-index:6;
}

/* Fade-in de seções claras ao entrar no viewport (sec-palha, bloco-dourado, etc.) */
body.page-lojistas .sec-palha::before, body.page-lojistas .bloco-dourado::before, body.page-lojistas .bloco-tipologia::before, body.page-lojistas .bloco-diferenciais::before, body.page-lojistas .bloco-formulario::before, body.page-lojistas .bloco-form-a::before, body.page-lojistas .bloco-candidatura::before, body.page-lojistas .bloco-plantas::before {
  content:'';
  display:block;
  position:absolute;
  top:0; left:0; right:0;
  height:60px;
  background:linear-gradient(to bottom, rgba(0,0,0,.06), transparent);
  pointer-events:none;
  z-index:1;
}

/* Suaviza o final de cada win/janela imersiva, dando passagem visual */
body.page-lojistas .win.reveal-win + section, body.page-lojistas .win.reveal-win + div.marquee-strip, body.page-lojistas .win.win-rooftop + section, body.page-lojistas .win.win-rooftop + div.marquee-strip, body.page-lojistas .win.win-rooftop-lj + section, body.page-lojistas .win.win-rooftop-lj + div.marquee-strip { position:relative; }

/* Gran finale: emenda escura → footer */
body.page-lojistas .gran-finale + footer {
  position:relative;
}
body.page-lojistas .gran-finale + footer::before {
  content:'';
  position:absolute;
  top:-40px; left:0; right:0; height:40px;
  background:linear-gradient(to bottom, transparent, var(--verde, #1A2819));
  pointer-events:none;
  z-index:2;
}

/* Otimização de paint nas esteiras durante scroll: reduz repaints */
body.page-lojistas .marquee-track { will-change:transform; }

/* ── Microajustes responsivos finais ── */
@media (max-width: 760px)  {
  /* Reduz gradientes mobile para manter performance */
  body.page-lojistas .marquee-strip::before, body.page-lojistas .marquee-strip::after { height:14px !important; }
  body.page-lojistas .win::before { height:50px !important; }
  body.page-lojistas .win::after { height:60px !important; }
  body.page-lojistas .hero::after { height:50px !important; }
  /* Esteiras já bem dimensionadas */
  body.page-lojistas .marquee-strip { -webkit-mask-image:none !important; mask-image:none !important; }
}

/* Tablet: esteiras rolam mais devagar para não cansar */
@media (min-width: 760px) and (max-width: 1100px)  {
  body.page-lojistas .marquee-track { animation-duration:42s !important; }
}

/* Desktop largo: garante que conteúdos respirem */
@media (min-width: 1440px)  {
  body.page-lojistas .container-luxury, body.page-lojistas .inner { max-width:1500px; }
}



/* ════════════════════════════════════════════════════════════
   ✦ REFINAMENTO UI/UX — ETAPA 1
   Aplicado de forma cascata (último <style> do head)
   Não altera estrutura. Apenas refina espessura, peso, respiro e legibilidade.
══════════════════════════════════════════════════════════════ */

/* ── 1. RESET DE LINKS REFORÇADO (remove azul/sublinhado residual) ── */
body.page-lojistas a, body.page-lojistas a:link, body.page-lojistas a:visited, body.page-lojistas a:hover, body.page-lojistas a:active, body.page-lojistas a:focus {
  text-decoration: none !important;
  -webkit-tap-highlight-color: transparent;
}

/* ── 2. TIPOGRAFIA · LEGIBILIDADE GERAL ── */
body.page-lojistas { line-height: 1.65; }
body.page-lojistas p, body.page-lojistas li { font-feature-settings: "kern" 1, "liga" 1; }

/* Hierarquia: títulos respiram mais; subtítulos com peso intermediário */
body.page-lojistas h1, body.page-lojistas h2, body.page-lojistas h3 { letter-spacing: -.005em; }
body.page-lojistas .eyebrow, body.page-lojistas .marquee-item, body.page-lojistas .ftr-col-head, body.page-lojistas .ftr-socials a {
  letter-spacing: .26em;
}

/* ── 3. MARQUEE PADRONIZADA E MAIS LEVE ── */
body.page-lojistas .marquee-strip {
  min-height: 44px !important;
  border-top-width: 0.5px !important;
  border-bottom-width: 0.5px !important;
}
body.page-lojistas .marquee-track { animation-duration: 36s !important; }
body.page-lojistas .marquee-item {
  padding: 11px 28px !important;
  font-size: clamp(11px,1.05vw,12.5px) !important;
  font-weight: 500 !important;
  letter-spacing: .28em !important;
  gap: 26px !important;
}
body.page-lojistas .marquee-gem {
  width: 4px !important;
  height: 4px !important;
  opacity: .5 !important;
}
@media (max-width: 640px)  {
  body.page-lojistas .marquee-strip { min-height: 40px !important; }
  body.page-lojistas .marquee-item { font-size: 10.5px !important; padding: 9px 16px !important; letter-spacing: .24em !important; }
}

/* ── 4. WHATSAPP FLOAT · TRAÇOS LEVES + BRILHO SUTIL ── */
body.page-lojistas .wpp-float-new, body.page-lojistas .wpp-float {
  border-width: 0.5px !important;
  box-shadow:
    0 4px 18px rgba(182,141,64,.10),
    0 1px 6px rgba(0,0,0,.10),
    inset 0 1px 0 rgba(255,255,255,.08),
    0 0 0 1px rgba(255,255,255,.04) !important;
}
body.page-lojistas .wpp-float-new svg, body.page-lojistas .wpp-float svg {
  width: 24px !important;
  height: 24px !important;
  filter: drop-shadow(0 1px 2px rgba(0,0,0,.18))
          drop-shadow(0 0 6px rgba(207,163,85,.22)) !important;
}
body.page-lojistas .wpp-float-new:hover, body.page-lojistas .wpp-float:hover {
  box-shadow:
    0 8px 28px rgba(182,141,64,.20),
    0 2px 10px rgba(0,0,0,.15),
    inset 0 1px 0 rgba(255,255,255,.14),
    0 0 0 1px rgba(207,163,85,.18) !important;
}
@media (max-width: 640px)  {
  body.page-lojistas .wpp-float-new, body.page-lojistas .wpp-float { width: 54px !important; height: 54px !important; }
  body.page-lojistas .wpp-float-new svg, body.page-lojistas .wpp-float svg { width: 22px !important; height: 22px !important; }
}

/* Pulse mais sutil */
@keyframes wppGlassPulseRefined__page-lojistas {
  0%,100% { box-shadow:
    0 4px 18px rgba(182,141,64,.10),
    0 1px 6px rgba(0,0,0,.10),
    inset 0 1px 0 rgba(255,255,255,.08),
    0 0 0 1px rgba(255,255,255,.04); }
  50%     { box-shadow:
    0 6px 24px rgba(182,141,64,.18),
    0 2px 8px rgba(0,0,0,.12),
    inset 0 1px 0 rgba(255,255,255,.12),
    0 0 0 1px rgba(207,163,85,.15); }
}
body.page-lojistas .wpp-float-new, body.page-lojistas .wpp-float { animation: wppGlassPulseRefined__page-lojistas 4.2s ease-in-out infinite !important; }
body.page-lojistas .wpp-float-new:hover, body.page-lojistas .wpp-float:hover { animation: none !important; }

/* ── 5. ESPAÇAMENTO · RESPIRO ENTRE BLOCOS ── */
body.page-lojistas section + section, body.page-lojistas .bloco + .bloco { position: relative; }
body.page-lojistas section { scroll-margin-top: 90px; }

/* Margens laterais um pouco maiores em viewports médios */
@media (min-width: 760px) and (max-width: 1100px)  {
  body.page-lojistas { --safe: clamp(28px, 5.5vw, 56px) !important; }
}

/* Respiro extra antes do rodapé/CTA final (evita sobreposição) */
body.page-lojistas .cta-footer-wrap, body.page-lojistas .gran-finale, body.page-lojistas footer { margin-top: 0; }
body.page-lojistas .gran-finale + footer { padding-top: clamp(48px, 7vh, 80px) !important; }

/* ── 6. ALTERNÂNCIA SUTIL EM BLOCOS MONÓTONOS ── */
/* Aplica overlay leve em blocos consecutivos do mesmo tom (palha/verde) */
body.page-lojistas .bloco-corp-a + .bloco-social-a::before, body.page-lojistas .bloco-social-a + .bloco-shows-a::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 1px;
  background: linear-gradient(to right,
    transparent,
    rgba(182,141,64,.18) 30%,
    rgba(182,141,64,.28) 50%,
    rgba(182,141,64,.18) 70%,
    transparent);
  pointer-events: none;
  z-index: 5;
}

/* ── 7. GRID DE IMAGENS · ALINHAMENTO E CORTE ── */
body.page-lojistas .win-bg, body.page-lojistas .reveal-win-bg, body.page-lojistas .janela-foto img, body.page-lojistas .bloco-foto img {
  object-fit: cover !important;
  object-position: center center;
}

/* ── 8. CORREÇÃO TÉCNICA · CONTADORES ── */
/* Garantia visual: número final sempre visível antes/depois da animação */
body.page-lojistas [data-counter] .numero {
  display: inline-block;
  font-variant-numeric: tabular-nums;
}

/* ── 9. FORMULÁRIO · FONTE MAIOR + ESPAÇAMENTO MELHOR ── */
body.page-lojistas .form-grid-a, body.page-lojistas .form-grid {
  gap: 24px !important;
  row-gap: 28px !important;
}
body.page-lojistas .form-g-a, body.page-lojistas .form-g {
  gap: 10px !important;
}
body.page-lojistas .form-g-a label, body.page-lojistas .form-g label {
  font-size: clamp(12px,1.1vw,13.5px) !important;
  letter-spacing: .26em !important;
  line-height: 1.5 !important;
  margin-bottom: 4px;
}
body.page-lojistas .form-g-a input, body.page-lojistas .form-g-a select, body.page-lojistas .form-g-a textarea, body.page-lojistas .form-g input, body.page-lojistas .form-g select, body.page-lojistas .form-g textarea {
  font-size: clamp(16px,1.4vw,18px) !important;
  padding: 16px 14px !important;
  line-height: 1.55 !important;
  letter-spacing: .005em;
}
body.page-lojistas .form-g-a textarea, body.page-lojistas .form-g textarea {
  min-height: 130px !important;
  padding-top: 18px !important;
}
body.page-lojistas .form-g-a input::placeholder, body.page-lojistas .form-g-a textarea::placeholder {
  font-size: .95em;
  letter-spacing: .01em;
}
body.page-lojistas .form-lead-a, body.page-lojistas .form-lead {
  line-height: 1.75 !important;
}
@media (max-width: 640px)  {
  body.page-lojistas .form-grid-a, body.page-lojistas .form-grid { gap: 18px !important; row-gap: 22px !important; grid-template-columns: 1fr !important; }
  body.page-lojistas .form-g-a input, body.page-lojistas .form-g-a select, body.page-lojistas .form-g-a textarea, body.page-lojistas .form-g input, body.page-lojistas .form-g select, body.page-lojistas .form-g textarea { font-size: 16px !important; padding: 14px 12px !important; }
}

/* ── 10. INSTAGRAM/SOCIAIS · GARANTIR SEM AZUL/SUBLINHADO ── */
body.page-lojistas .ftr-socials a, body.page-lojistas .ftr-col a, body.page-lojistas .btn-hero-ig {
  color: inherit !important;
  text-decoration: none !important;
  border-bottom: none !important;
}

/* ── 11. AJUSTE FINO TIPOGRAFIA APOIO ── */
body.page-lojistas .hero-support, body.page-lojistas .hero-sub {
  line-height: 1.7;
}
body.page-lojistas .eyebrow { line-height: 1.6; }



/* ════════════════════════════════════════════════════════════
   ✦ REFINAMENTO UI/UX — ETAPA 2
   Correções técnicas: scroll/trackpad, cursor, links residuais,
   pointer-events, formulário (label hidden visual).
   Não altera estrutura nem texto.
══════════════════════════════════════════════════════════════ */

/* ─ SCROLL/TRACKPAD: nunca bloquear ─ */
html, body.page-lojistas {
  overflow-x: hidden;
  overflow-y: auto !important;
  overscroll-behavior-y: auto;
  -webkit-overflow-scrolling: touch;
  scroll-behavior: smooth;
  touch-action: pan-y pan-x;
}

/* Cursor customizado só em pointer fino (mouse). Trackpad em laptop conta como fine,
   mas dispositivos touch (coarse) recebem cursor padrão para não quebrar UX. */
@media (pointer: coarse), (hover: none)  {
  body.page-lojistas, html, body.page-lojistas * { cursor: auto !important; }
  body.page-lojistas .cursor, body.page-lojistas .cursor-ring { display: none !important; }
}

/* Garantir que elementos interativos sempre tenham pointer-events ativos */
body.page-lojistas a, body.page-lojistas button, body.page-lojistas input, body.page-lojistas select, body.page-lojistas textarea, body.page-lojistas [role="button"], body.page-lojistas .btn-primary, body.page-lojistas .btn-ghost, body.page-lojistas .btn-form-submit, body.page-lojistas .pilar-card, body.page-lojistas .wpp-float-new, body.page-lojistas .wpp-float, body.page-lojistas .nav-cta, body.page-lojistas .nav-links a, body.page-lojistas .btn-hero-ig, body.page-lojistas .reveal-win, body.page-lojistas .planta-item {
  pointer-events: auto !important;
}

/* Overlays decorativos não devem bloquear cliques/scroll */
body.page-lojistas .win-ov, body.page-lojistas .corp-foto-ov-a, body.page-lojistas .grain, body.page-lojistas .reveal-win-top-accent, body.page-lojistas .win-rooftop-frame, body.page-lojistas .cta-footer-overlay {
  pointer-events: none !important;
}

/* ─ LINKS: garantia anti-azul-padrão (reforço) ─ */
/* Excluídos os CTAs com cor própria intencional, para não herdarem a cor do fundo (bug de contraste hover-only) */
body.page-lojistas a[href^="http"]:not(.btn-primary):not(.btn-ghost):not(.btn-ghost-dk):not(.btn-outline):not(.btn-outline-amber):not(.btn-form-submit):not(.cand-btn-submit):not(.cand-wa):not(.nav-cta):not(.btn-hero-ig):not(.btn-bordo):not(.rt2-format-link):not(.btn-form-loc-a):not(.btn-form-email-a):not(.btn-form-wa-a):not(.wpp-float-new):not(.wpp-float),
body.page-lojistas a[href^="mailto"]:not(.btn-primary):not(.btn-ghost):not(.btn-ghost-dk):not(.btn-outline):not(.btn-outline-amber):not(.btn-form-submit):not(.cand-btn-submit):not(.cand-wa):not(.nav-cta):not(.btn-hero-ig):not(.btn-bordo):not(.rt2-format-link):not(.btn-form-loc-a):not(.btn-form-email-a):not(.btn-form-wa-a):not(.wpp-float-new):not(.wpp-float),
body.page-lojistas a[href^="tel"]:not(.btn-primary):not(.btn-ghost):not(.btn-ghost-dk):not(.btn-outline):not(.btn-outline-amber):not(.btn-form-submit):not(.cand-btn-submit):not(.cand-wa):not(.nav-cta):not(.btn-hero-ig):not(.btn-bordo):not(.rt2-format-link):not(.btn-form-loc-a):not(.btn-form-email-a):not(.btn-form-wa-a):not(.wpp-float-new):not(.wpp-float),
body.page-lojistas a[href^="https://wa.me"]:not(.btn-primary):not(.btn-ghost):not(.btn-ghost-dk):not(.btn-outline):not(.btn-outline-amber):not(.btn-form-submit):not(.cand-btn-submit):not(.cand-wa):not(.nav-cta):not(.btn-hero-ig):not(.btn-bordo):not(.rt2-format-link):not(.btn-form-loc-a):not(.btn-form-email-a):not(.btn-form-wa-a):not(.wpp-float-new):not(.wpp-float),
body.page-lojistas a[href*="instagram"]:not(.btn-primary):not(.btn-ghost):not(.btn-ghost-dk):not(.btn-outline):not(.btn-outline-amber):not(.btn-form-submit):not(.cand-btn-submit):not(.cand-wa):not(.nav-cta):not(.btn-hero-ig):not(.btn-bordo):not(.rt2-format-link):not(.btn-form-loc-a):not(.btn-form-email-a):not(.btn-form-wa-a):not(.wpp-float-new):not(.wpp-float) {
  color: inherit !important;
  text-decoration: none !important;
  -webkit-text-decoration: none !important;
}

/* ─ FORMULÁRIO: garantir que campo hidden não ocupe espaço ─ */
body.page-lojistas .form-grid-a input[type="hidden"], body.page-lojistas .form-grid input[type="hidden"] {
  display: none !important;
}

/* Espaçamento extra dentro do form (reforço Etapa 1) */
body.page-lojistas .form-grid-a, body.page-lojistas .form-grid {
  align-items: start;
}

/* ─ MARQUEE: garantir altura real (sobrescreve qualquer min-height antigo) ─ */
body.page-lojistas .marquee-strip { height: auto !important; }

/* ─ WHATSAPP FLOAT: garantir z-index correto e não interferir em scroll ─ */
body.page-lojistas .wpp-float-new, body.page-lojistas .wpp-float {
  z-index: 800;
  pointer-events: auto !important;
  touch-action: manipulation;
}



/* ════════════════════════════════════════════════════════════
   ✦ FINALIZAÇÃO — ETAPA 3
   Sobrescreve por cascata correções residuais das etapas 1 e 2.
   - Cursor custom só em pointer:fine
   - Scroll 100% funcional
   - Marquee 44px com peso visual reduzido
   - WhatsApp button refinado (stroke fino, brilho suave)
   - Links elegantes (sem reset agressivo, mantém contraste)
   - Form com espaçamento confortável
══════════════════════════════════════════════════════════════ */

/* ─ SCROLL: garantia absoluta ─ */
html {
  overflow-y: scroll;
  scroll-behavior: smooth;
}
body.page-lojistas {
  overflow-x: hidden;
  overflow-y: visible;
  overscroll-behavior-y: auto;
  -webkit-overflow-scrolling: touch;
  touch-action: pan-y pan-x;
  /* cursor custom apenas em ponteiro fino (mouse desktop) */
  cursor: auto;
}
@media (pointer: fine) and (hover: hover)  {
  body.page-lojistas { cursor: none; }
}
@media (pointer: coarse), (hover: none)  {
  body.page-lojistas .cursor, body.page-lojistas .cursor-ring { display: none !important; }
  body.page-lojistas * { cursor: auto !important; }
  body.page-lojistas a, body.page-lojistas button, body.page-lojistas [role="button"], body.page-lojistas input[type="submit"], body.page-lojistas .btn-primary, body.page-lojistas .btn-ghost, body.page-lojistas .btn-form-submit, body.page-lojistas .pilar-card, body.page-lojistas .nav-cta, body.page-lojistas .wpp-float-new, body.page-lojistas .wpp-float { cursor: pointer !important; }
}

/* Scripts/overlays decorativos não bloqueiam scroll/clique */
body.page-lojistas .grain, body.page-lojistas .win-ov, body.page-lojistas .corp-foto-ov-a, body.page-lojistas .social-foto-ov-a, body.page-lojistas .shows-foto-ov-a, body.page-lojistas .win-rooftop-frame, body.page-lojistas .reveal-win-top-accent, body.page-lojistas .pilares-bg-soft {
  pointer-events: none !important;
}

/* Cursor custom desativado em qualquer container scrollable */
body.page-lojistas section, body.page-lojistas .container-luxury, body.page-lojistas .inner, body.page-lojistas main, body.page-lojistas article, body.page-lojistas aside { cursor: inherit; }

/* ─ MARQUEE: altura real 44px, peso visual reduzido ─ */
body.page-lojistas .marquee-strip {
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  display: flex !important;
  align-items: center !important;
  overflow: hidden;
  border-top: 0.5px solid rgba(255,255,255,.06) !important;
  border-bottom: 0.5px solid rgba(255,255,255,.06) !important;
  padding: 0 !important;
}
body.page-lojistas .marquee-track {
  display: flex !important;
  align-items: center !important;
  height: 100%;
  animation-duration: 38s !important;
}
body.page-lojistas .marquee-item {
  padding: 0 26px !important;
  font-size: 11.5px !important;
  font-weight: 400 !important;
  letter-spacing: .3em !important;
  text-transform: uppercase;
  opacity: .82;
  display: flex !important;
  align-items: center !important;
  gap: 22px !important;
  white-space: nowrap;
}
body.page-lojistas .marquee-gem {
  width: 3px !important;
  height: 3px !important;
  border-radius: 50%;
  opacity: .42 !important;
  flex-shrink: 0;
}
body.page-lojistas .mq-gold .marquee-item { color: var(--verde); }
body.page-lojistas .mq-verde .marquee-item { color: rgba(245,235,221,.78); }
body.page-lojistas .mq-bordo .marquee-item, body.page-lojistas .mq-burgundy .marquee-item { color: rgba(245,235,221,.85); }

@media (max-width: 640px)  {
  body.page-lojistas .marquee-strip { height: 38px !important; min-height: 38px !important; max-height: 38px !important; }
  body.page-lojistas .marquee-item { font-size: 10px !important; padding: 0 14px !important; letter-spacing: .26em !important; gap: 14px !important; }
}

/* ─ WHATSAPP FLOAT: padronizado com a Home (referência única do site) ─ */
body.page-lojistas .wpp-float-new, body.page-lojistas .wpp-float {
  width: 78px !important;
  height: 78px !important;
  bottom: 34px !important;
  right: 34px !important;
  border-radius: 50% !important;
  border: 0.5px solid rgba(207,163,85,.50) !important;
  background:
    radial-gradient(circle at 30% 30%, rgba(207,163,85,.20), rgba(20,30,18,.84)) !important;
  backdrop-filter: blur(14px) saturate(125%) !important;
  -webkit-backdrop-filter: blur(14px) saturate(125%) !important;
  box-shadow:
    0 12px 40px rgba(182,141,64,.32),
    0 4px 18px rgba(0,0,0,.22),
    0 0 0 1px rgba(207,163,85,.16),
    0 0 22px rgba(207,163,85,.18),
    inset 0 1px 0 rgba(255,255,255,.22) !important;
  transition: all .4s cubic-bezier(.2,.7,.2,1) !important;
}
body.page-lojistas .wpp-float-new svg, body.page-lojistas .wpp-float svg {
  width: 32px !important;
  height: 32px !important;
  fill: rgba(232,200,140,1) !important;
  filter:
    drop-shadow(0 2px 8px rgba(0,0,0,.40))
    drop-shadow(0 0 10px rgba(207,163,85,.40)) !important;
}
body.page-lojistas .wpp-float-new:hover, body.page-lojistas .wpp-float:hover {
  transform: translateY(-3px) scale(1.07) !important;
  border-color: rgba(207,163,85,.85) !important;
  box-shadow:
    0 20px 56px rgba(182,141,64,.46),
    0 8px 24px rgba(0,0,0,.28),
    0 0 0 1px rgba(207,163,85,.36),
    0 0 36px rgba(207,163,85,.32),
    inset 0 1px 0 rgba(255,255,255,.32) !important;
}
body.page-lojistas .wpp-float-new:hover svg, body.page-lojistas .wpp-float:hover svg {
  fill: rgba(245,225,178,1) !important;
  filter:
    drop-shadow(0 2px 10px rgba(0,0,0,.45))
    drop-shadow(0 0 14px rgba(207,163,85,.55)) !important;
}
@media (max-width: 640px)  {
  body.page-lojistas .wpp-float-new, body.page-lojistas .wpp-float { width: 64px !important; height: 64px !important; bottom: 20px !important; right: 20px !important; }
  body.page-lojistas .wpp-float-new svg, body.page-lojistas .wpp-float svg { width: 26px !important; height: 26px !important; }
}
@media (max-width: 380px)  {
  body.page-lojistas .wpp-float-new, body.page-lojistas .wpp-float { width: 58px !important; height: 58px !important; bottom: 16px !important; right: 16px !important; }
  body.page-lojistas .wpp-float-new svg, body.page-lojistas .wpp-float svg { width: 24px !important; height: 24px !important; }
}

/* Pulse premium no desktop (padrão Home) */
@media (pointer: fine)  {
  @keyframes wppPremiumPulse__page-lojistas {
    0%, 100% { box-shadow:
      0 12px 40px rgba(182,141,64,.32),
      0 4px 18px rgba(0,0,0,.22),
      0 0 0 1px rgba(207,163,85,.16),
      0 0 22px rgba(207,163,85,.18),
      inset 0 1px 0 rgba(255,255,255,.22),
      0 0 0 0 rgba(207,163,85,.36); }
    50% { box-shadow:
      0 14px 48px rgba(182,141,64,.40),
      0 6px 22px rgba(0,0,0,.26),
      0 0 0 1px rgba(207,163,85,.24),
      0 0 32px rgba(207,163,85,.28),
      inset 0 1px 0 rgba(255,255,255,.28),
      0 0 0 18px rgba(207,163,85,0); }
  }
  body.page-lojistas .wpp-float-new, body.page-lojistas .wpp-float { animation: wppPremiumPulse__page-lojistas 4.2s ease-in-out infinite !important; }
  body.page-lojistas .wpp-float-new:hover, body.page-lojistas .wpp-float:hover { animation: none !important; }
}

/* ─ LINKS: abordagem elegante (sem reset agressivo) ─ */
/* Remove !important da etapa 2; deixa cascata natural */
body.page-lojistas a { color: inherit; text-decoration: none; }
body.page-lojistas a:visited { color: inherit; }

/* Footer/nav: links sutis com hover dourado */
body.page-lojistas .ftr-col a, body.page-lojistas .ftr-socials a, body.page-lojistas footer a, body.page-lojistas .nav-links a {
  color: inherit;
  text-decoration: none;
  transition: color .25s ease, opacity .25s ease;
}
body.page-lojistas .ftr-col a:hover, body.page-lojistas .ftr-socials a:hover, body.page-lojistas footer a:hover, body.page-lojistas .nav-links a:hover {
  color: var(--go, #cfa355);
  opacity: 1;
}

/* Mailto/tel/wa.me/instagram: nunca azul */
body.page-lojistas a[href^="mailto"], body.page-lojistas a[href^="tel"], body.page-lojistas a[href*="wa.me"], body.page-lojistas a[href*="instagram"] {
  color: inherit;
  text-decoration: none;
}
body.page-lojistas a[href^="mailto"]:hover, body.page-lojistas a[href*="instagram"]:hover, body.page-lojistas a[href*="wa.me"]:hover {
  color: var(--go, #cfa355);
}

/* ─ FORMULÁRIO: UX confortável ─ */
body.page-lojistas .form-grid-a, body.page-lojistas .form-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 28px 22px !important;
  align-items: start;
}
body.page-lojistas .form-g-a, body.page-lojistas .form-g {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}
body.page-lojistas .form-g-a label, body.page-lojistas .form-g label {
  font-size: 12.5px !important;
  letter-spacing: .28em !important;
  text-transform: uppercase;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  color: rgba(245,235,221,.72) !important;
  margin-bottom: 2px !important;
}
body.page-lojistas .form-g-a input, body.page-lojistas .form-g-a select, body.page-lojistas .form-g-a textarea, body.page-lojistas .form-g input, body.page-lojistas .form-g select, body.page-lojistas .form-g textarea {
  font-size: 16px !important;
  padding: 18px 16px !important;
  line-height: 1.5 !important;
  letter-spacing: 0 !important;
  background: rgba(245,235,221,.05) !important;
  border: none !important;
  border-bottom: 1px solid rgba(245,235,221,.18) !important;
  border-radius: 2px !important;
  color: var(--palha-f, #F5EBDD) !important;
  font-family: 'DM Sans', sans-serif !important;
  transition: all .3s ease !important;
  width: 100% !important;
  -webkit-appearance: none;
  appearance: none;
}
body.page-lojistas .form-g-a textarea, body.page-lojistas .form-g textarea {
  min-height: 140px !important;
  resize: vertical;
  padding-top: 18px !important;
}
body.page-lojistas .form-g-a input:focus, body.page-lojistas .form-g-a select:focus, body.page-lojistas .form-g-a textarea:focus, body.page-lojistas .form-g input:focus, body.page-lojistas .form-g select:focus, body.page-lojistas .form-g textarea:focus {
  background: rgba(245,235,221,.09) !important;
  border-bottom-color: var(--go, #cfa355) !important;
  outline: none !important;
}
body.page-lojistas .form-g-a input::placeholder, body.page-lojistas .form-g-a textarea::placeholder {
  color: rgba(245,235,221,.32) !important;
  font-size: 15px;
  letter-spacing: 0;
}
body.page-lojistas .form-g-a.form-full-a, body.page-lojistas .form-g.form-full {
  grid-column: 1 / -1 !important;
}
body.page-lojistas .form-wrap-a, body.page-lojistas .form-wrap {
  padding: clamp(28px, 4vw, 44px) !important;
}
body.page-lojistas .form-title-a, body.page-lojistas .form-title {
  margin-bottom: 8px !important;
}
body.page-lojistas .form-sub-a, body.page-lojistas .form-sub {
  margin-bottom: clamp(28px, 3.5vh, 36px) !important;
  line-height: 1.55 !important;
}
body.page-lojistas .form-bot-a, body.page-lojistas .form-bot {
  margin-top: clamp(28px, 3.5vh, 36px) !important;
  padding-top: clamp(20px, 2.5vh, 28px) !important;
  border-top: 1px solid rgba(245,235,221,.08);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}
body.page-lojistas .btn-form-submit {
  padding: 16px 32px !important;
}

/* Mobile: form em coluna única, espaçamento ajustado */
@media (max-width: 760px)  {
  body.page-lojistas .form-grid-a, body.page-lojistas .form-grid { grid-template-columns: 1fr !important; gap: 22px !important; }
  body.page-lojistas .form-g-a input, body.page-lojistas .form-g-a select, body.page-lojistas .form-g-a textarea, body.page-lojistas .form-g input, body.page-lojistas .form-g select, body.page-lojistas .form-g textarea { font-size: 16px !important; padding: 16px 14px !important; }
  body.page-lojistas .form-bot-a, body.page-lojistas .form-bot { flex-direction: column; align-items: stretch; }
  body.page-lojistas .form-bot-a .btn-form-submit { width: 100%; justify-content: center; }
}

/* Hidden fields: nunca renderizam */
body.page-lojistas input[type="hidden"] { display: none !important; }

/* ─ AJUSTES DE CONFORTO DE LEITURA ─ */
body.page-lojistas .reveal-win-p, body.page-lojistas .corp-p-a, body.page-lojistas .social-p-a, body.page-lojistas .shows-p-a {
  font-size: clamp(17px, 1.5vw, 21px) !important;
  line-height: 1.7 !important;
}

/* Z-index sanity: WhatsApp acima, cursor acima do WhatsApp */
body.page-lojistas .wpp-float-new, body.page-lojistas .wpp-float { z-index: 800 !important; }
body.page-lojistas .cursor, body.page-lojistas .cursor-ring { z-index: 9999 !important; pointer-events: none !important; }

