/* SejaV+ — estilos compartilhados (index / assinar / vendas) */
/* ===================== FONTES (marca aprovada) ===================== */
@font-face{font-family:"BloggerSans";src:url("assets/fonts/BloggerSans-Regular.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"BloggerSans";src:url("assets/fonts/BloggerSans-500.woff2") format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"BloggerSans";src:url("assets/fonts/BloggerSans-600.woff2") format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"valparas";src:url("assets/fonts/valparas-Regular.woff2") format("woff2");font-weight:400;font-display:swap}

/* ===================== TOKENS ===================== */
:root{
  /* ===== Paleta oficial Valparaiso (brandbook) — INTOCADA (identidade cromatica) ===== */
  --green:#006938;            /* Figo Verde — ACENTO UNICO (CTA, foco, links, selecao) */
  --green-600:#0c7a45;
  --green-400:#1aa24c;
  --green-300:#2fbf71;
  --green-200:#57c766;
  --lime:#94c93b;
  --lime-600:#7fb52e;
  --blue:#003399;
  --blue-700:#002a80;
  --teal:#41b1c3;
  --orange:#ff5e26;
  --red:#e6223a;              /* guara / perigo — ACENTO destrutivo */
  --red-600:#c61a30;
  --gold:#e9c46a;
  --gold-700:#b8860b;

  /* ===== INK / texto — neutralizado frio (NAO mais verde-tintado) ===== */
  --ink:#16181d;             /* texto primario quase-preto frio (era #0e2a1a) */
  --ink-900:#07210f;         /* MANTIDO verde-profundo: e SUPERFICIE escura de marca (bands ink/footer) */
  --ink-800:#082b17;         /* MANTIDO verde-profundo (band--ink2) */
  --ink-700:#0c4a28;         /* MANTIDO verde-profundo: chips "pressed" em fundo escuro */

  /* ===== SUPERFICIES — neutras-frias quase-brancas (era tudo verde-tintado) ===== */
  --bg:#fcfcfd;              /* NOVO: canvas/app, quase-branco frio */
  --paper:#ffffff;           /* cards = branco puro; separacao vem da borda */
  --paper-2:#f7f8f9;         /* sub-superficie sutil (era #f5fbf6 esverdeado) */
  --paper-3:#f1f2f4;         /* hover de linha/zona / chips inativos (era #eef6ef) */
  --paper-sunken:#f5f6f8;    /* NOVO: wells/campos afundados */

  /* ===== LINHAS — hairline 1px de baixissimo contraste (preto translucido, neutro) ===== */
  --line:rgba(20,22,28,.07);    /* divisorias e contorno de card (era #e3ecdf esverdeado) */
  --line-2:rgba(20,22,28,.11);  /* inputs em repouso / borda que precisa ser vista (era #d6e3d4) */
  --line-3:rgba(20,22,28,.05);  /* NOVO: separadores internos / linhas de tabela */

  /* ===== TEXTO SECUNDARIO — neutro-frio (era azulado) ===== */
  --slate:#62656e;           /* texto secundario / muted (era #5b6b85) */
  --slate-2:#8a8d96;         /* terciario / placeholder (era #647591) */
  --on-ink:#eaf3ec;          /* texto sobre escuro — MANTIDO (vai sobre band verde) */
  --on-ink-dim:#9fb6a6;      /* MANTIDO */

  /* ===== RAIOS — apertados estilo Linear ===== */
  --r:8px;                   /* card/campo/menu (era 14px) */
  --r-sm:6px;                /* botao/input/chip (era 10px) */
  --r-lg:12px;               /* modal/painel grande (era 22px) */
  --r-pill:999px;            /* NOVO: badge de status / chip-pill */

  /* ===== SOMBRAS — minimas; a borda faz o trabalho ===== */
  --shadow-xs:0 1px 2px rgba(20,22,28,.04);                                  /* NOVO: card interativo */
  --shadow:0 1px 2px rgba(20,22,28,.06), 0 2px 6px rgba(20,22,28,.05);        /* card hover / dropdown (era 8px/24px) */
  --shadow-md:0 4px 12px rgba(20,22,28,.10), 0 1px 2px rgba(20,22,28,.06);    /* NOVO: popover/menu flutuante */
  --shadow-lg:0 12px 32px rgba(20,22,28,.14), 0 2px 8px rgba(20,22,28,.08);   /* modal (era 20px/50px forte) */

  /* ===== MOVIMENTO — micro-interacoes <200ms ease-out ===== */
  --t-fast:120ms ease;                              /* NOVO: hover de cor/borda */
  --t:160ms cubic-bezier(.2,.7,.2,1);               /* NOVO: menus/entradas */
  --ease-out:cubic-bezier(.16,1,.3,1);              /* NOVO: entradas com overshoot suave */

  /* ===== FOCO — sempre o verde de marca (acento unico, a11y) ===== */
  --focus:var(--green);
  --focus-ring:0 0 0 3px color-mix(in srgb, var(--green) 18%, transparent);  /* NOVO: anel translucido p/ inputs */
  --brand:var(--green);      /* NOVO alias: ui.css usa var(--brand); agora aponta p/ verde de marca */

  --maxw:1240px;
}
*{box-sizing:border-box}
html,body{overflow-x:hidden}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{
  margin:0;background:var(--paper);color:var(--ink);
  font-family:"BloggerSans","Inter",system-ui,-apple-system,sans-serif;
  font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.display{font-family:"BloggerSans","Inter",system-ui,sans-serif;font-weight:800;letter-spacing:-.01em}
h1,h2,h3{margin:0;line-height:1.08;letter-spacing:-.01em}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.eyebrow{font-size:12.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--green-400)}
.muted{color:var(--slate)}
.tabnum{font-variant-numeric:tabular-nums}
section{scroll-margin-top:74px}

/* ===================== WORDMARK ===================== */
.logo{font-family:"valparas",sans-serif;font-size:27px;line-height:1;color:inherit;display:inline-flex;align-items:baseline;gap:1px}
.logo b{color:var(--red);font-weight:400}
.logo--light{color:#fff}

/* ===================== NAV ===================== */
.nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.86);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--line)}
.nav__in{display:flex;align-items:center;gap:24px;height:64px}
.nav__links{display:flex;gap:6px;margin-left:18px}
.nav__links a{padding:8px 12px;border-radius:9px;font-size:14px;font-weight:500;color:var(--slate);transition:background .18s,color .18s}
.nav__links a:hover{background:var(--paper-3);color:var(--ink)}
.nav__spacer{margin-left:auto}
.btn{display:inline-flex;align-items:center;gap:8px;border:none;cursor:pointer;font-family:inherit;font-weight:600;font-size:14px;
  padding:11px 18px;border-radius:11px;transition:transform .15s ease,box-shadow .2s ease,background .2s ease;min-height:44px}
.btn:active{transform:translateY(1px)}
.btn--red{background:var(--red);color:#fff;box-shadow:0 8px 20px rgba(226,59,46,.28)}
.btn--red:hover{background:var(--red-600)}
/* ===== CTA chamativo (data-vfx): glow no hover + chuva de V+ fluindo ao clicar ===== */
.btn--vfx{position:relative;overflow:hidden;transition:transform .2s cubic-bezier(.2,.7,.2,1),box-shadow .28s,filter .2s,background .2s}
.btn--vfx:hover{transform:translateY(-2px);box-shadow:0 0 0 4px rgba(230,34,58,.18),0 16px 42px -10px rgba(230,34,58,.72);filter:saturate(1.1) brightness(1.05)}
.btn--vfx:active{transform:translateY(0)}
.btn--vfx::after{content:"";position:absolute;top:0;bottom:0;left:-70%;width:48%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-18deg);opacity:0;pointer-events:none}
.btn--vfx:hover::after{opacity:1;animation:vfxSheen 1.05s ease-in-out infinite}
@keyframes vfxSheen{0%{left:-70%}100%{left:140%}}
.btn--vfx.is-pulse{animation:vfxPulse .55s cubic-bezier(.2,.7,.2,1)}
@keyframes vfxPulse{0%{transform:scale(1)}30%{transform:scale(1.055);box-shadow:0 0 0 11px rgba(230,34,58,.28),0 24px 56px -10px rgba(230,34,58,.82)}100%{transform:scale(1)}}
.vfx-bit{position:fixed;z-index:99999;pointer-events:none;font-family:valparas,"BloggerSans",sans-serif;font-weight:800;font-size:24px;color:#e6223a;text-shadow:0 2px 14px rgba(230,34,58,.5);will-change:transform,opacity;opacity:0;
  transform:translate(-50%,-50%) translate(var(--sx,0),var(--sy,0)) scale(var(--sz,1)) rotate(var(--rot,0deg));
  animation:vfxFlow .6s cubic-bezier(.45,0,.25,1) var(--d,0s) forwards}
@keyframes vfxFlow{0%{opacity:0;transform:translate(-50%,-50%) translate(var(--sx),var(--sy)) scale(calc(var(--sz)*.5)) rotate(var(--rot))}26%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) translate(0,0) scale(.12) rotate(0deg)}}
@media (prefers-reduced-motion:reduce){.btn--vfx::after,.btn--vfx.is-pulse{animation:none!important}}
.btn--green{background:var(--green);color:#fff;box-shadow:0 8px 20px rgba(0,105,56,.22)}
.btn--green:hover{background:var(--green-600)}
.btn--ghost{background:transparent;border:1px solid var(--line-2);color:var(--ink)}
.btn--ghost:hover{background:var(--paper-3)}
.btn--ghost-l{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.28);color:#fff}
.btn--ghost-l:hover{background:rgba(255,255,255,.16)}
@media (max-width:760px){.nav__links{display:none}}

/* ===================== HERO ===================== */
.hero{position:relative;overflow:hidden;background:
  radial-gradient(120% 90% at 78% -10%, #155e3a 0, transparent 60%),
  linear-gradient(170deg,#0c3a23 0%,#0e2a1a 48%,#07210f 100%);
  color:#fff;isolation:isolate}
.hero::before{content:"";position:absolute;inset:0;z-index:0;background:
  radial-gradient(80% 60% at 15% 0%, rgba(47,191,113,.16), transparent 60%),
  radial-gradient(60% 50% at 95% 30%, rgba(226,59,46,.10), transparent 55%)}
.hero__in{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center;
  padding-top:70px;padding-bottom:86px;min-height:560px}
.hero h1{font-size:clamp(36px,5.2vw,62px);color:#fff;max-width:13ch}
.hero h1 .hl{color:var(--green-200)}
.hero p.lead{font-size:clamp(16px,1.5vw,19px);color:#cfe3d5;max-width:50ch;margin:20px 0 30px}
.hero__cta{display:flex;gap:12px;flex-wrap:wrap}
.hero__proof{display:flex;align-items:center;gap:10px;margin-top:18px;font-size:13.5px;color:#cfe3d5}
.hero__proof .hp-stars{color:#ffd24a;letter-spacing:1.5px;font-size:14px;flex:0 0 auto;text-shadow:0 1px 6px rgba(255,200,60,.35)}
.hero__proof b{color:#fff;font-weight:700}
.hero__chips{display:flex;gap:18px;flex-wrap:wrap;margin-top:26px;color:#bcd3c2;font-size:13.5px}
.hero__chips b{display:block;font-family:"BloggerSans","Inter",system-ui,sans-serif;font-size:26px;color:#fff;line-height:1}
.hero__chips .red{color:var(--green-200)}
@media (max-width:920px){.hero__in{grid-template-columns:1fr;gap:18px;padding-top:40px;padding-bottom:64px;min-height:0}}

/* sky + ibis flock */
.sky{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.ibis{position:absolute;will-change:transform;animation:drift linear infinite}
.ibis svg{display:block;overflow:visible;filter:drop-shadow(0 7px 9px rgba(0,0,0,.16))}
@keyframes drift{
  0%{transform:translate(10vw,0)}
  50%{transform:translate(-48vw,-16px)}
  100%{transform:translate(-104vw,8px)}
}
@media (prefers-reduced-motion:reduce){
  .ibis{animation:none;transform:translate(-30vw,0)}
}

/* V+ digital card */
.vcard-stage{display:flex;justify-content:center;perspective:1100px}
.vcard{position:relative;width:min(380px,86vw);aspect-ratio:1.6/1;border-radius:20px;overflow:hidden;
  background:linear-gradient(135deg,#0e6b3e 0%,#1aa24c 52%,#2fbf71 120%);
  box-shadow:0 30px 60px rgba(6,40,24,.5), inset 0 1px 0 rgba(255,255,255,.28);
  transform:rotateX(7deg) rotateY(-12deg);animation:vfloat 6s ease-in-out infinite}
@keyframes vfloat{0%,100%{transform:rotateX(7deg) rotateY(-12deg) translateY(0)}50%{transform:rotateX(7deg) rotateY(-12deg) translateY(-10px)}}
.vcard__shine{position:absolute;top:-50%;left:-30%;width:42%;height:200%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transform:skewX(-18deg);
  animation:vshine 4.6s ease-in-out infinite}
@keyframes vshine{0%{transform:translateX(-160%) skewX(-18deg)}60%,100%{transform:translateX(320%) skewX(-18deg)}}
.vcard__body{position:relative;z-index:2;height:100%;padding:22px;display:flex;flex-direction:column;color:#fff}
.vcard__top{display:flex;justify-content:space-between;align-items:flex-start}
.vcard__chip{width:42px;height:30px;border-radius:6px;background:linear-gradient(135deg,#ffe7a8,#d9a92e);box-shadow:inset 0 0 0 1px rgba(0,0,0,.12)}
.vcard__qr{width:54px;height:54px;border-radius:8px;background:#fff;padding:5px}
.vcard__name{font-family:"BloggerSans","Inter",system-ui,sans-serif;font-size:22px;margin-top:auto}
.vcard__meta{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.85);margin-top:4px}
@media (prefers-reduced-motion:reduce){.vcard,.vcard__shine{animation:none}}

/* ===================== GENERIC SECTION ===================== */
.band{padding:84px 0}
.band--paper{background:var(--paper)}
.band--soft{background:var(--paper-2)}
.band--ink{background:var(--ink);color:var(--on-ink)}
.band--ink2{background:var(--ink-800);color:var(--on-ink)}
.sec-head{max-width:64ch;margin-bottom:42px}
.sec-head h2{font-size:clamp(27px,3.4vw,42px);margin:10px 0 0}
.band--ink .sec-head h2,.band--ink2 .sec-head h2{color:#fff}
.sec-head p{font-size:17px;color:var(--slate);margin:14px 0 0}
.band--ink .sec-head p,.band--ink2 .sec-head p{color:var(--on-ink-dim)}
.band--ink .eyebrow,.band--ink2 .eyebrow{color:var(--green-200)}

/* three faces */
.faces{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.face{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:24px;box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s}
.face:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}
.face .ic{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:var(--paper-3);color:var(--green);margin-bottom:14px}
.face h3{font-size:19px}
.face p{font-size:14.5px;color:var(--slate);margin:8px 0 0}
.face ul{list-style:none;padding:0;margin:14px 0 0;display:flex;flex-direction:column;gap:8px}
.face li{font-size:13.5px;color:var(--ink);display:flex;gap:9px;align-items:flex-start}
.face li::before{content:"+";color:var(--green-400);font-weight:600;flex-shrink:0}
@media (max-width:880px){.faces{grid-template-columns:1fr}}

/* ===================== NÍVEIS / CARTEIRINHAS 3D ===================== */
.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;align-items:start}
.tier{display:flex;flex-direction:column;align-items:center;gap:18px}
.tier__badge{display:inline-flex;align-items:center;gap:7px;padding:5px 13px;border-radius:999px;font-size:11.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.tier__badge--vip{background:linear-gradient(135deg,#fbb04a,#e8730f);color:#3a2b06}
.tier__badge--svip{background:linear-gradient(135deg,#e9c46a,#b8860b);color:#15161a;box-shadow:0 6px 18px rgba(233,196,106,.4)}
.card3d-stage{perspective:1000px;width:100%;display:flex;justify-content:center}
.card3d{position:relative;width:330px;max-width:88vw;aspect-ratio:1.585/1;border-radius:18px;overflow:hidden;cursor:pointer;
  transform:perspective(1000px);transform-style:preserve-3d;transition:transform .25s cubic-bezier(.2,.7,.2,1);
  box-shadow:var(--shadow-lg)}
.card3d .glow{position:absolute;inset:0;pointer-events:none;mix-blend-mode:soft-light;background:radial-gradient(circle at 50% 0%,rgba(255,255,255,.5),transparent 60%);opacity:0;transition:opacity .2s}
.card3d .shine{position:absolute;top:-50%;left:-30%;width:42%;height:200%;transform:skewX(-18deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.42),transparent);animation:vshine 5s ease-in-out infinite;pointer-events:none}
.card3d__in{position:relative;z-index:2;height:100%;padding:18px 20px;display:flex;flex-direction:column;color:#fff}
.card3d__row{display:flex;justify-content:space-between;align-items:flex-start}
.card3d__lvl{text-align:right;font-size:11px;letter-spacing:.08em}
.card3d__lvl small{display:block;font-size:8px;opacity:.6;letter-spacing:.16em}
.card3d__name{font-family:"BloggerSans","Inter",system-ui,sans-serif;font-size:21px;margin-top:auto}
.card3d__no{font-variant-numeric:tabular-nums;letter-spacing:.16em;font-size:13px;opacity:.92}
.card-green{background:var(--tier-verde-grad,linear-gradient(135deg,#0e6b3e 0%,#2fbf71 58%,#57c766 135%))}
.card-gold{background:var(--tier-ouro-grad,linear-gradient(135deg,#8a3c08 0%,#fbb04a 32%,#e8730f 62%,#ffd9b0 88%,#b85309 120%))}
.card-gold .card3d__in{color:#3b2c07}
.card-black{background:var(--tier-black-grad,linear-gradient(135deg,#1a1b20 0%,#34373f 46%,#101115 100%));box-shadow:0 30px 70px rgba(0,0,0,.55),0 0 0 1px rgba(233,196,106,.35)}
.card-black .card3d__lvl,.card-black .card3d__name{color:var(--gold)}
.tier__title{font-family:"BloggerSans","Inter",system-ui,sans-serif;font-size:22px;text-align:center}
.tier__perks{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:9px;width:100%;max-width:330px}
.tier__perks li{font-size:13.5px;color:var(--on-ink);display:flex;gap:10px;align-items:flex-start}
.tier__perks li svg{flex-shrink:0;margin-top:2px;color:var(--green-200)}
.card-mini-qr{width:40px;height:40px;border-radius:7px;background:#fff;padding:4px}
@media (max-width:920px){.tiers{grid-template-columns:1fr;gap:40px}}

/* clube matrix */
/* ===== CLUBE V+ — diretório de parceiros ===== */
.club-how{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:28px}
.club-how .step{display:flex;gap:12px;align-items:flex-start;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:16px 18px;box-shadow:var(--shadow)}
.club-how .n{flex:0 0 auto;width:28px;height:28px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font-weight:700;font-size:14px}
.club-how b{display:block;font-size:14.5px;color:var(--ink)}
.club-how i{font-style:normal;font-size:12.5px;color:var(--slate)}
@media (max-width:720px){.club-how{grid-template-columns:1fr}}
.club-controls{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:20px}
.club-search-wrap{display:flex;align-items:center;gap:8px;background:var(--paper);border:1px solid var(--line-2);border-radius:11px;padding:0 12px;flex:1;min-width:220px;color:var(--slate-2)}
.club-search-wrap:focus-within{border-color:var(--green);color:var(--green)}
.club-search{border:none;outline:none;background:none;font-family:inherit;font-size:14px;color:var(--ink);padding:11px 0;width:100%}
.club-cats{display:flex;gap:7px;flex-wrap:wrap}
.club-chip{border:1px solid var(--line-2);cursor:pointer;font-family:inherit;font-weight:600;font-size:12.5px;padding:8px 13px;border-radius:999px;background:var(--paper);color:var(--slate);transition:.15s;min-height:36px}
.club-chip:hover{border-color:var(--green);color:var(--green)}
.club-chip[aria-pressed="true"]{background:var(--ink-700);color:#fff;border-color:var(--ink-700)}
.club-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(258px,1fr));gap:16px}
.club-card{position:relative;display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);
  transition:transform .2s cubic-bezier(.2,.7,.2,1),box-shadow .2s,border-color .2s;animation:ccIn .5s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--i,0)*35ms)}
@keyframes ccIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.club-card::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .2s;background:radial-gradient(120% 85% at 100% 0,color-mix(in srgb,var(--cc) 15%,transparent),transparent 55%)}
.club-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:color-mix(in srgb,var(--cc) 50%,var(--line))}
.club-card:hover::after{opacity:1}
/* capa do card de parceiro — identidade visual (foto real ou capa de marca) */
.cc-cover{position:relative;height:92px;display:flex;align-items:center;justify-content:center;overflow:hidden;
  background:linear-gradient(135deg,color-mix(in srgb,var(--cc) 90%,#000),color-mix(in srgb,var(--cc) 56%,#000))}
.cc-cover__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cc-cover__pat{position:absolute;right:-10px;bottom:-16px;color:#fff;opacity:.15;transform:scale(3.4);transform-origin:bottom right;transition:transform .3s cubic-bezier(.2,.7,.2,1)}
.cc-cover__mono{position:relative;font-family:"BloggerSans","Inter",system-ui,sans-serif;font-weight:800;font-size:34px;letter-spacing:.02em;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.28)}
.club-card:hover .cc-cover__pat{transform:scale(3.75) rotate(-5deg)}
.club-card:hover .cc-cover__img{transform:scale(1.05);transition:transform .4s cubic-bezier(.2,.7,.2,1)}
/* capa = LOGO do parceiro real (fundo claro, contain; fallback monograma se a img falhar) */
.cc-cover--logo{display:grid;place-items:center;padding:13px 16px;background:#fff;background-image:linear-gradient(160deg,color-mix(in srgb,var(--cc) 7%,#fff),#fff)}
.cc-cover__logo{width:100%;height:100%;object-fit:contain;transition:transform .4s cubic-bezier(.2,.7,.2,1)}
.club-card:hover .cc-cover__logo{transform:scale(1.04)}
.cc-cover--logo .cc-cover__mono--fb{display:none}
.cc-cover--noimg{background:linear-gradient(135deg,color-mix(in srgb,var(--cc) 90%,#000),color-mix(in srgb,var(--cc) 56%,#000));padding:0}
.cc-cover--noimg .cc-cover__mono--fb{display:block}
/* ===== card de PARCEIRO real: logo como SELO contido+centralizado (sem capa edge-to-edge) ===== */
.cc-top--p{display:flex;align-items:center;gap:12px;padding:14px 15px;background:var(--paper);border-bottom:1px solid var(--line)}
.cc-logo{flex:0 0 auto;width:54px;height:54px;border-radius:13px;background:#fff;border:1px solid var(--line);display:grid;place-items:center;overflow:hidden;padding:7px;box-shadow:0 1px 4px rgba(6,30,18,.06)}
.cc-logo img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block;margin:auto}
.cc-logo--fb{background:linear-gradient(135deg,var(--cc,#6b7c99),color-mix(in srgb,var(--cc,#6b7c99) 66%,#000));color:#fff;font-family:"BloggerSans","Inter",system-ui,sans-serif;font-weight:800;font-size:19px;letter-spacing:.02em;padding:0;border-color:transparent}
.cc-vmark{flex:0 0 auto;margin-left:auto;color:var(--slate-2);opacity:.45}
.cc-body--p{padding:13px 15px 15px;flex:1;display:flex;flex-direction:column;justify-content:flex-end}
.cc-benef-lock{display:flex;align-items:center;gap:8px;justify-content:center;text-align:center;text-decoration:none;font-size:12px;font-weight:700;line-height:1.3;color:var(--green);background:color-mix(in srgb,var(--green) 7%,var(--paper));border:1px dashed color-mix(in srgb,var(--green) 34%,var(--line));border-radius:10px;padding:11px 12px;transition:background .15s,border-color .15s}
.cc-benef-lock:hover{background:color-mix(in srgb,var(--green) 13%,var(--paper));border-color:color-mix(in srgb,var(--green) 52%,var(--line))}
.cc-benef{font-size:13px;color:var(--slate);margin:0;line-height:1.45}
.club-card--p{cursor:pointer}
/* DETALHE do parceiro (modal ampliado ao clicar) */
.pdet{position:fixed;inset:0;z-index:130;display:flex;align-items:center;justify-content:center;padding:22px;background:rgba(6,20,12,.55);backdrop-filter:blur(5px);animation:pdetIn .22s ease}
.pdet[hidden]{display:none}
@keyframes pdetIn{from{opacity:0}to{opacity:1}}
.pdet__box{position:relative;width:min(440px,94vw);background:var(--paper);border-radius:20px;box-shadow:0 40px 90px -30px rgba(0,0,0,.55);padding:26px clamp(20px,4vw,30px) 24px;animation:pdetBox .26s cubic-bezier(.2,.7,.2,1)}
@keyframes pdetBox{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
.pdet__x{position:absolute;top:14px;right:14px;width:38px;height:38px;border-radius:50%;border:0;cursor:pointer;color:var(--slate);background:var(--paper-3);display:grid;place-items:center;transition:.15s}
.pdet__x:hover{background:var(--line);color:var(--ink)}
.pdet__head{display:flex;align-items:center;gap:16px;margin-bottom:18px}
.pdet__logo{flex:0 0 auto;width:84px;height:84px;border-radius:18px;background:#fff;border:1px solid var(--line);display:grid;place-items:center;overflow:hidden;padding:11px;box-shadow:0 2px 8px rgba(6,30,18,.07)}
.pdet__logo img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;margin:auto}
.pdet__logo--fb{background:linear-gradient(135deg,var(--cc,#6b7c99),color-mix(in srgb,var(--cc,#6b7c99) 66%,#000));color:#fff;font-family:"BloggerSans","Inter",sans-serif;font-weight:800;font-size:30px;padding:0;border-color:transparent}
.pdet__cat{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--cc,var(--green))}
.pdet__nome{font-family:"BloggerSans","Inter",sans-serif;font-weight:800;font-size:clamp(20px,3vw,26px);color:var(--ink);margin:3px 0 0;line-height:1.12}
.pdet__lock{display:flex;align-items:flex-start;gap:11px;background:color-mix(in srgb,var(--green) 7%,var(--paper));border:1px dashed color-mix(in srgb,var(--green) 32%,var(--line));border-radius:13px;padding:14px 15px}
.pdet__lock svg{flex:0 0 auto;color:var(--green);margin-top:2px}
.pdet__lock b{display:block;font-size:14px;color:var(--green-700,#166534)}
.pdet__lock span{display:block;font-size:12.5px;color:var(--slate);margin-top:3px;line-height:1.45}
.pdet__cta{display:flex;justify-content:center;margin-top:14px}
.pdet__benef{font-size:15px;color:var(--ink);background:var(--paper-3);border-radius:12px;padding:14px 16px;line-height:1.5}
.pdet__contato{font-size:12.5px;color:var(--slate-2);margin:14px 0 0;text-align:center}
.cc-top{position:relative;display:flex;align-items:center;gap:12px;padding:12px 15px;background:var(--paper);border-bottom:1px solid var(--line)}
.cc-ic{flex:0 0 auto;width:44px;height:44px;border-radius:13px;background:linear-gradient(135deg,var(--cc),color-mix(in srgb,var(--cc) 76%,#000));color:#fff;display:grid;place-items:center;box-shadow:0 6px 14px color-mix(in srgb,var(--cc) 42%,transparent);transition:transform .2s}
.club-card:hover .cc-ic{transform:scale(1.09) rotate(-4deg)}
.cc-head{min-width:0;flex:1;display:flex;flex-direction:column;gap:1px}
.cc-cat{font-size:10.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--cc)}
.cc-name{font-size:15px;font-weight:700;color:var(--ink);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cc-disc{flex:0 0 auto;text-align:right;line-height:1}
.cc-disc b{font-family:"BloggerSans","Inter",system-ui,sans-serif;font-weight:800;font-size:23px;color:var(--cc);font-variant-numeric:tabular-nums;display:inline-block;transition:transform .2s}
.club-card:hover .cc-disc b{transform:scale(1.12)}
.cc-disc small{display:block;font-size:9px;font-weight:700;letter-spacing:.06em;color:var(--slate-2);text-transform:uppercase;margin-top:1px}
.cc-perk{flex:0 0 auto;font-size:11px;font-weight:700;color:var(--green);background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:5px 10px;text-align:right;max-width:118px}
.cc-body{padding:12px 15px 15px;display:flex;flex-direction:column;flex:1;position:relative;z-index:1}
.cc-meta{font-size:12px;color:var(--slate-2)}
.cc-desc{font-size:12.5px;color:var(--slate);margin:8px 0 12px;line-height:1.45;flex:1}
.cc-tiers{display:flex;gap:6px}
.cc-tiers .t{flex:1;text-align:center;border-radius:8px;padding:6px 4px;font-size:11px;font-weight:700;font-variant-numeric:tabular-nums}
.cc-tiers .t b{display:block;font-size:9px;font-weight:700;letter-spacing:.04em;opacity:.85;text-transform:uppercase}
.t-v{background:#e9f7ee;color:#0c7a45}.t-o{background:#fdeede;color:#9a4d0a}.t-b{background:#23242a;color:#e9c46a}
.cc-perk-full{font-size:12.5px;color:var(--green);font-weight:600;background:var(--paper-3);border-radius:9px;padding:9px 11px;text-align:center}
/* GATE de desconto — benefício "trancado" para visitante; desbloqueia ao assinar */
.cc-disc--lock{display:inline-flex;align-items:center;gap:5px;background:var(--paper-3);border:1px solid var(--line);border-radius:999px;padding:5px 10px}
.cc-disc--lock .ic-lock{color:var(--green)}
.cc-disc--lock small{display:inline;margin:0;font-size:10px;font-weight:800;letter-spacing:.03em;color:var(--slate);text-transform:uppercase}
.cc-tiers--lock{display:flex;align-items:center;justify-content:center;gap:8px;text-align:center;text-decoration:none;
  font-size:11.5px;font-weight:700;line-height:1.25;color:var(--green);
  background:color-mix(in srgb,var(--green) 7%,var(--paper));
  border:1px dashed color-mix(in srgb,var(--green) 34%,var(--line));border-radius:10px;padding:9px 12px;transition:background .15s,border-color .15s}
.cc-tiers--lock:hover{background:color-mix(in srgb,var(--green) 13%,var(--paper));border-color:color-mix(in srgb,var(--green) 52%,var(--line))}
.cc-tiers--lock .ic-lock{flex:0 0 auto;color:var(--green)}
.club-member--guest{--lvc:#0c7a45}

/* destaque rotativo (spotlight) */
/* ===== BANNER de PARCEIRO EM DESTAQUE — "Vitrine editorial dividida" (.vshow*) =====
   1 marca por vez, navegação 100% manual (setas + dots + teclado). Espaço curado (destaque=true).
   Container alvo: #clubSpot.conv-banner.vshow (largura de conteúdo, não full-bleed). */
#clubSpot.vshow{padding:0;margin:0 0 24px;border:1px solid var(--line);border-radius:18px;background:var(--paper);
  box-shadow:var(--shadow);overflow:hidden;position:relative}
#clubSpot.vshow:focus-visible{outline:3px solid var(--green-400,#1aa24c);outline-offset:3px}

/* palco: empilha os slides; só o ativo é exibido */
.vshow-stage{position:relative;display:grid}
.vshow-slide{grid-area:1/1;display:none;
  grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);
  min-height:clamp(300px,42vh,430px)}
.vshow-slide.is-active{display:grid}
@media (prefers-reduced-motion:no-preference){
  .vshow-slide.is-active{animation:vshowIn .42s var(--ease,cubic-bezier(.2,.7,.2,1)) both}
}
@keyframes vshowIn{from{opacity:0}to{opacity:1}}

/* ---------- ESQUERDA: painel de marca ---------- */
.vshow-panel{position:relative;overflow:hidden;display:grid;place-items:center;
  background:var(--cc);isolation:isolate}
.vshow-panel.logo-only{
  background:radial-gradient(120% 90% at 26% 18%, color-mix(in oklch,var(--cc) 86%,#fff) 0%, var(--cc) 46%, color-mix(in oklch,var(--cc) 76%,#000) 100%)}
/* grão/halftone discreto — textura, não ruído */
.vshow-panel.logo-only::after{content:"";position:absolute;inset:0;pointer-events:none;mix-blend-mode:overlay;opacity:.5;
  background-image:radial-gradient(rgba(255,255,255,.5) .6px,transparent .6px);background-size:7px 7px}

/* marca-d'água: ícone da categoria MONUMENTAL sangrando no canto (enxerto do cinematic) */
.vshow-pat{position:absolute;right:-7%;bottom:-16%;color:#fff;opacity:.1;z-index:0;
  transform:scale(9.5);transform-origin:bottom right;pointer-events:none}
.vshow-panel.has-photo .vshow-pat{display:none}

/* número de coleção "01 / 06" (enxerto do carteirinha) — âncora editorial, decorativo */
.vshow-idx{position:absolute;left:clamp(16px,3vw,26px);bottom:clamp(12px,2.4vw,20px);z-index:2;
  display:flex;align-items:baseline;gap:5px;color:#fff;opacity:.94;
  font-family:"BloggerSans","Inter",sans-serif;line-height:.8;font-variant-numeric:tabular-nums;
  text-shadow:0 3px 18px rgba(6,22,14,.5);pointer-events:none}
.vshow-idx b{font-weight:800;font-size:clamp(32px,5.6vw,56px);letter-spacing:-.03em}
.vshow-idx i{font-style:normal;font-weight:600;font-size:clamp(15px,2.3vw,23px);opacity:.6}
.vshow-idx span{font-weight:600;font-size:clamp(15px,2.3vw,23px);opacity:.78}

/* hero com foto */
.vshow-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;display:none}
.vshow-panel.has-photo .vshow-photo{display:block}
.vshow-vignette{position:absolute;inset:0;z-index:1;display:none;
  background:linear-gradient(180deg,rgba(6,22,14,.12),rgba(6,22,14,.5))}
.vshow-panel.has-photo .vshow-vignette{display:block}

/* placa da logo — o herói no caso logo-only */
.vshow-plate{position:relative;z-index:3;display:grid;place-items:center;
  width:min(66%,260px);aspect-ratio:8/5;border-radius:16px;background:#fff;
  padding:clamp(16px,3.2vw,30px);box-shadow:0 18px 40px -16px rgba(6,30,18,.55), 0 2px 0 rgba(255,255,255,.6) inset}
.vshow-panel.has-photo .vshow-plate{width:min(52%,168px);padding:14px 18px;
  box-shadow:0 14px 30px -12px rgba(0,0,0,.6)}
.vshow-logo{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}
.vshow-mono{font-family:"BloggerSans","Inter",sans-serif;font-weight:800;
  font-size:clamp(40px,7vw,72px);line-height:1;color:color-mix(in srgb,var(--cc) 64%,#0c1f15)}

/* ---------- DIREITA: conteúdo editorial ---------- */
.vshow-content{position:relative;display:flex;flex-direction:column;align-items:flex-start;
  gap:clamp(8px,1.4vw,12px);padding:clamp(22px,3.4vw,40px) clamp(54px,5vw,64px) clamp(22px,3.4vw,40px) clamp(22px,3vw,38px);
  background:var(--paper)}

.vshow-ribbon{display:inline-flex;align-items:center;gap:6px;
  font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  color:var(--green);background:var(--paper-2,#f5fbf6);
  border:1px solid color-mix(in oklch,var(--green) 26%,var(--line));
  padding:6px 11px;border-radius:999px}
.vshow-ribbon svg{color:#f6b73c}

/* categoria: texto escurecido p/ contraste AA no branco; ícone mantém a cor viva */
.vshow-cat{display:inline-flex;align-items:center;gap:7px;
  font-size:11.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;
  color:color-mix(in srgb,var(--cc) 52%,#0c1f15)}
.vshow-cat svg{width:16px;height:16px;color:var(--cc)}

.vshow-name{font-family:"BloggerSans","Inter",system-ui,sans-serif;font-weight:800;
  font-size:clamp(26px,4.4vw,46px);line-height:1.02;letter-spacing:-.015em;color:var(--ink);margin:2px 0 2px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* teaser TRAVADO — tarja fosca, não parágrafo */
.vshow-lock{display:inline-flex;align-items:center;gap:8px;
  font-size:13px;font-weight:700;color:var(--ink-700,#0c4a28);
  background:repeating-linear-gradient(135deg,var(--paper-3,#eef6ef) 0 9px,#e7f1e6 9px 18px);
  border:1px dashed var(--line-2);border-radius:10px;padding:9px 13px}
.vshow-lock svg{flex:0 0 auto;color:var(--green-600,#0c7a45)}

.vshow-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto;padding-top:6px}
.vshow-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;
  padding:0 20px;border-radius:11px;font-family:inherit;font-weight:700;font-size:14px;
  cursor:pointer;text-decoration:none;border:1px solid transparent;transition:transform .15s,box-shadow .15s,background .15s}
.vshow-btn--green{background:var(--green);color:#fff;box-shadow:0 8px 20px rgba(0,105,56,.22)}
.vshow-btn--green:hover{background:var(--green-600,#0c7a45);transform:translateY(-1px)}
.vshow-btn--ghost{background:transparent;border-color:var(--line-2);color:var(--ink)}
.vshow-btn--ghost:hover{background:var(--paper-3,#eef6ef)}
.vshow-btn:focus-visible{outline:3px solid var(--green-400,#1aa24c);outline-offset:2px}

/* ---------- SETAS ---------- */
.vshow-nav{position:absolute;top:calc(clamp(300px,42vh,430px)/2);transform:translateY(-50%);z-index:6;
  width:42px;height:42px;border-radius:50%;display:grid;place-items:center;cursor:pointer;
  background:rgba(255,255,255,.94);color:var(--ink);border:1px solid var(--line-2);
  box-shadow:0 6px 18px -6px rgba(6,30,18,.45);transition:transform .15s,background .15s}
.vshow-nav:hover{background:#fff;transform:translateY(-50%) scale(1.06)}
.vshow-nav:focus-visible{outline:3px solid var(--green-400,#1aa24c);outline-offset:2px}
.vshow-nav--prev{left:10px}
.vshow-nav--next{right:10px}
.vshow-nav svg{width:20px;height:20px}
.vshow-nav[hidden]{display:none}

/* ---------- DOTS + CONTADOR ---------- */
.vshow-foot{display:flex;align-items:center;gap:14px;justify-content:space-between;
  padding:11px clamp(22px,3vw,38px);border-top:1px solid var(--line);background:var(--paper)}
.vshow-dots{display:flex;align-items:center;gap:7px}
.vshow-dot{width:9px;height:9px;border-radius:50%;padding:0;cursor:pointer;
  background:var(--line-2);border:0;transition:width .2s,background .2s;position:relative}
.vshow-dot::before{content:"";position:absolute;inset:-16px}
.vshow-dot[aria-current="true"]{width:24px;border-radius:5px;background:var(--green)}
.vshow-dot:focus-visible{outline:3px solid var(--green-400,#1aa24c);outline-offset:3px}
.vshow-count{font-size:11.5px;font-weight:700;color:var(--slate,#5a6b5f);letter-spacing:.02em;white-space:nowrap}
.vshow-count b{color:var(--ink)}
.vshow-eyebrow{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--green);white-space:nowrap}

/* região aria-live invisível */
.vshow-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}

/* ---------- RESPONSIVO ---------- */
@media (max-width:720px){
  .vshow-slide,.vshow-slide.is-active{grid-template-columns:1fr;min-height:0}
  .vshow-panel{min-height:clamp(150px,30vh,210px)}
  .vshow-plate{width:min(58%,200px)}
  .vshow-idx b{font-size:clamp(28px,9vw,46px)}
  .vshow-content{padding:18px 18px 20px;gap:9px}
  .vshow-name{font-size:clamp(24px,8vw,32px)}
  .vshow-cta{width:100%}
  .vshow-btn{flex:1 1 auto}
  .vshow-nav{top:clamp(75px,15vh,105px)}
  .vshow-foot{gap:10px}
  .vshow-eyebrow{display:none}
}

/* ---------- REDUCED MOTION ---------- */
@media (prefers-reduced-motion:reduce){
  .vshow-slide.is-active{animation:none}
  .vshow-btn:hover,.vshow-nav:hover{transform:none}
  .vshow-nav:hover{transform:translateY(-50%)}
}
.club-spot{position:relative;border-radius:20px;overflow:hidden;margin:0 0 24px;min-height:188px;color:#fff;
  background:linear-gradient(120deg,color-mix(in srgb,var(--cc,#1aa24c) 94%,#000),color-mix(in srgb,var(--cc,#1aa24c) 66%,#000));
  box-shadow:0 22px 50px color-mix(in srgb,var(--cc,#1aa24c) 32%,transparent);transition:background .5s}
.club-spot::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(70% 120% at 100% 0,rgba(255,255,255,.2),transparent 50%)}
.cs-in{position:relative;display:flex;align-items:center;gap:22px;padding:26px 28px 30px;animation:csIn .55s cubic-bezier(.2,.7,.2,1)}
@keyframes csIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.cs-left{flex:1;min-width:0}
.cs-tag{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;background:rgba(255,255,255,.2);padding:5px 11px 5px 8px;border-radius:999px}
.cs-tag .cs-ic{display:grid;place-items:center}
.cs-name{font-family:"BloggerSans","Inter",system-ui,sans-serif;font-size:clamp(20px,2.6vw,28px);font-weight:800;color:#fff;margin:12px 0 0;line-height:1.1}
.cs-meta{font-size:13px;opacity:.9;margin:5px 0 0}
.cs-desc{font-size:13.5px;opacity:.92;margin:10px 0 0;max-width:54ch;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.cs-cta{margin-top:14px;font-size:12.5px;font-weight:600;display:inline-flex;align-items:center;gap:7px;opacity:.96}
.cs-right{flex:0 0 auto;text-align:center;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.24);border-radius:16px;padding:16px 24px;backdrop-filter:blur(2px)}
.cs-disc small{display:block;font-size:11px;opacity:.85;font-weight:600}
.cs-disc b{font-family:"BloggerSans","Inter",system-ui,sans-serif;font-weight:900;font-size:clamp(34px,5vw,50px);line-height:1;color:#fff}
.cs-now{font-size:12px;margin-top:9px;opacity:.92}.cs-now b{font-weight:800}
.cs-disc--lock{display:flex;flex-direction:column;align-items:center;gap:5px}
.cs-disc--lock .ic-lock{width:22px;height:22px}
.cs-disc--lock small{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;opacity:.95}
.cs-now--cta{display:inline-block;margin-top:9px;color:#fff;font-weight:800;text-decoration:underline;text-underline-offset:3px;font-size:12px}
a.cs-cta--link{text-decoration:none;color:#fff}
.cs-dots{position:absolute;bottom:13px;left:28px;display:flex;gap:6px}
.cs-dot{position:relative;width:8px;height:8px;border-radius:50%;border:none;background:rgba(255,255,255,.42);cursor:pointer;padding:0;transition:width .25s,background .25s}
/* alvo de toque >=44px sem alterar o visual de 8px (overlay invisível, fora do fluxo) */
.cs-dot::before{content:"";position:absolute;left:50%;top:50%;width:44px;height:44px;transform:translate(-50%,-50%)}
.cs-dot.on{background:#fff;width:22px;border-radius:5px}
@media (max-width:600px){.cs-in{flex-direction:column;align-items:flex-start;gap:16px}.cs-right{align-self:stretch}.cs-dots{position:static;margin:4px 0 0 28px}}

/* trilhos por categoria (estilo Netflix) */
.club-row{margin:0 0 22px}
.club-row-h{display:flex;align-items:center;gap:11px;margin:0 0 12px}
.crh-ic{width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,var(--cc),color-mix(in srgb,var(--cc) 76%,#000));color:#fff;display:grid;place-items:center;flex:0 0 auto;box-shadow:0 4px 10px color-mix(in srgb,var(--cc) 38%,transparent)}
.club-row-h h3{font-size:17px;margin:0}
.crh-n{font-size:11.5px;color:var(--slate);background:var(--paper-3);border-radius:999px;padding:2px 9px;font-weight:700;font-variant-numeric:tabular-nums}
.crh-nav{margin-left:auto;display:flex;gap:6px}
.crh-a{width:32px;height:32px;border-radius:9px;border:1px solid var(--line-2);background:var(--paper);color:var(--ink);cursor:pointer;font-size:19px;line-height:1;display:grid;place-items:center;box-shadow:var(--shadow)}
.crh-a:hover{background:var(--paper-3)}
@media (max-width:600px){.crh-nav{display:none}}
/* carrossel automático por categoria — cards passam sozinhos, bordas em fade (não cortam feio) */
.club-marq{overflow:hidden;padding:7px 0 10px;
  -webkit-mask:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.club-marq-track{display:flex;width:max-content;animation:marqL var(--dur,40s) linear infinite;will-change:transform}
.club-marq.rev .club-marq-track{animation-name:marqR}
.club-marq:hover .club-marq-track{animation-play-state:paused}
.club-marq-set{display:flex;gap:14px;padding-right:14px}
.club-marq-set .club-card{flex:0 0 268px;animation:none;opacity:1;transform:none}
.club-marq-set .club-card:hover{transform:translateY(-5px)}
@keyframes marqL{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes marqR{from{transform:translateX(-50%)}to{transform:translateX(0)}}
@media (prefers-reduced-motion:reduce){
  .club-marq{overflow-x:auto;-webkit-mask:none;mask:none}
  .club-marq-track{animation:none;width:auto}
  .club-marq-set[aria-hidden]{display:none}
}
.club-empty{background:var(--paper);border:1px dashed var(--line-2);border-radius:var(--r);padding:30px;text-align:center;color:var(--slate-2)}
.club-count{font-size:12.5px;margin-top:16px}

/* ===================== PAINEL / KPIs ===================== */
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}
.kpi{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:18px 20px;box-shadow:var(--shadow)}
.kpi .lab{font-size:11.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--slate);display:flex;align-items:center;gap:7px}
.kpi .lab i{width:8px;height:8px;border-radius:3px;background:var(--green-400);display:inline-block}
.kpi .val{font-family:"BloggerSans","Inter",system-ui,sans-serif;font-size:34px;line-height:1.05;margin-top:8px;font-variant-numeric:tabular-nums}
.kpi .val small{font-size:14px;color:var(--slate);font-family:"BloggerSans",system-ui,sans-serif}
.kpi .hint{font-size:12.5px;color:var(--slate);margin-top:6px}
.kpi--red{border-color:rgba(226,59,46,.4)}.kpi--red .val{color:var(--red)}.kpi--red .lab i{background:var(--red)}
.kpi--amber{border-color:rgba(184,134,11,.45)}.kpi--amber .val{color:var(--gold-700)}.kpi--amber .lab i{background:var(--gold-700)}
.kpi--green .val{color:var(--green)}
.explain{margin-top:18px;background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--gold-700);border-radius:0 var(--r-sm) var(--r-sm) 0;padding:14px 18px;font-size:13.5px;color:var(--slate)}
.explain b{color:var(--ink);font-weight:600}

/* ===================== MAPA ===================== */
.map-shell{display:grid;grid-template-columns:1.45fr 1fr;gap:0;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:var(--paper);box-shadow:var(--shadow)}
.map-figure{position:relative;min-height:600px;background:#eef3ee;border-right:1px solid var(--line);overflow:hidden}
.map-toolbar{position:absolute;left:14px;right:14px;top:14px;z-index:5;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.map-chip{background:rgba(255,255,255,.94);backdrop-filter:blur(4px);border-radius:10px;padding:8px 12px;box-shadow:0 6px 16px rgba(11,31,74,.12)}
.map-chip b{font-family:"BloggerSans","Inter",system-ui,sans-serif;font-size:13px;color:var(--ink);display:block}
.map-chip span{font-size:10.5px;color:var(--slate-2)}
.map-filters{margin-left:auto;display:flex;gap:6px;flex-wrap:wrap}
.fbtn{border:none;cursor:pointer;font-family:inherit;font-weight:600;font-size:12.5px;padding:8px 13px;border-radius:9px;background:rgba(255,255,255,.92);color:var(--slate);min-height:38px;transition:.15s}
.fbtn:hover{background:#fff}
.fbtn[aria-pressed="true"]{background:var(--ink-700);color:#fff;box-shadow:0 4px 12px rgba(6,35,87,.22)}
.maplabel{position:absolute;font-size:10px;font-weight:600;letter-spacing:.14em;pointer-events:none}
.maplabel--sea{color:#4d7e9b;opacity:.7}
.maplabel--muni{color:#3f6b4a;opacity:.78;text-transform:uppercase;font-size:9.5px;letter-spacing:.1em}
.pin{position:absolute;transform:translate(-50%,-50%);cursor:pointer;z-index:3;background:none;border:0;padding:0;font:inherit;line-height:0}
.pin__dot{position:relative;display:grid;place-items:center;border-radius:50%;border:2.5px solid #fff;box-shadow:0 4px 10px rgba(11,31,74,.4);color:#fff;font-weight:700;line-height:1}
.pin__pulse{position:absolute;left:50%;top:50%;border-radius:50%;transform:translate(-50%,-50%);animation:vpulse 1.9s ease-out infinite;z-index:-1}
@keyframes vpulse{0%{transform:translate(-50%,-50%) scale(1);opacity:.5}100%{transform:translate(-50%,-50%) scale(2.7);opacity:0}}
.pin__ring{position:absolute;left:50%;top:50%;width:42px;height:42px;margin:-21px 0 0 -21px;border-radius:50%;border:2.5px solid var(--red);box-shadow:0 0 0 4px rgba(255,255,255,.7);opacity:0;transition:opacity .15s}
.pin.is-sel .pin__ring{opacity:1}
.pin--park .pin__dot{background:var(--red);width:18px;height:18px}
.pin__tip{position:absolute;left:50%;bottom:calc(100% + 8px);transform:translateX(-50%);background:var(--ink);color:#fff;font-size:11.5px;font-weight:600;
  white-space:nowrap;padding:5px 9px;border-radius:7px;opacity:0;pointer-events:none;transition:opacity .15s;box-shadow:var(--shadow)}
.pin:hover .pin__tip{opacity:1}
.park-flag{position:absolute;left:50%;bottom:calc(100% + 6px);transform:translateX(-50%);white-space:nowrap;font-size:10.5px;font-weight:600;color:var(--red);background:#fff;padding:3px 8px;border-radius:7px;box-shadow:var(--shadow)}
.map-legend{position:absolute;left:14px;bottom:14px;z-index:1200;background:rgba(255,255,255,.95);border-radius:10px;padding:10px 12px;box-shadow:0 6px 16px rgba(11,31,74,.12);display:flex;flex-direction:column;gap:7px}
.map-legend div{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:600;color:var(--ink)}
.map-legend i{width:12px;height:12px;border-radius:50%;border:2px solid #fff;box-shadow:0 1px 3px rgba(0,0,0,.25)}
.map-legend .sub{font-size:10.5px;font-weight:400;color:var(--slate-2);border-top:1px solid var(--line);padding-top:6px}
.map-filterbar{position:absolute;left:50%;transform:translateX(-50%);top:12px;z-index:1200;display:flex;gap:3px;background:rgba(255,255,255,.95);backdrop-filter:blur(4px);border-radius:10px;padding:4px;box-shadow:0 6px 16px rgba(11,31,74,.14)}
.fbtn2{border:none;cursor:pointer;font-family:inherit;font-weight:600;font-size:12px;padding:6px 11px;border-radius:7px;background:transparent;color:var(--slate);display:inline-flex;align-items:center;gap:6px;min-height:32px}
.fbtn2 i{width:9px;height:9px;border-radius:50%}
.fbtn2:hover{background:var(--paper-3)}
.fbtn2.is-on{background:var(--ink-700);color:#fff}
@media (max-width:640px){.map-filterbar{top:auto;bottom:12px;font-size:11px}}
.map-subfilter{position:absolute;left:50%;transform:translateX(-50%);top:56px;z-index:1200;display:flex;gap:3px;flex-wrap:wrap;justify-content:center;max-width:min(92%,660px);background:rgba(255,255,255,.96);backdrop-filter:blur(4px);border-radius:10px;padding:5px;box-shadow:0 6px 16px rgba(11,31,74,.14)}
.scat{border:none;cursor:pointer;font-family:inherit;font-weight:600;font-size:11.5px;padding:5px 9px;border-radius:7px;background:transparent;color:var(--slate);display:inline-flex;align-items:center;gap:5px;min-height:28px}
.scat i{width:8px;height:8px;border-radius:50%}
.scat:hover{background:var(--paper-3)}.scat.is-on{background:var(--ink-700);color:#fff}
@media (max-width:640px){.map-subfilter{top:auto;bottom:58px}}

.map-side{padding:18px;background:var(--paper-2);display:flex;flex-direction:column;gap:14px}
.map-kpis{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mk{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 13px}
.mk .l{display:flex;align-items:center;gap:6px;font-size:10.5px;color:var(--slate-2);font-weight:600}
.mk .l i{width:8px;height:8px;border-radius:3px}
.mk .v{font-family:"BloggerSans","Inter",system-ui,sans-serif;font-size:21px;color:var(--ink);margin-top:5px;font-variant-numeric:tabular-nums;line-height:1.05}
.mk .v small{font-size:11px;font-weight:500;color:var(--slate-2)}
.mksub{font-size:11px;color:var(--slate-2);margin-top:4px;font-variant-numeric:tabular-nums}
.mkcap{grid-column:1/-1;font-size:11px;color:var(--slate-2);line-height:1.4}
.mkcap b{color:var(--ink);font-weight:600}
.detail{background:var(--ink-700);border-radius:16px;padding:16px;color:#fff}
.detail .tag{font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:3px 9px;border-radius:999px;background:rgba(255,255,255,.16)}
.detail h4{font-family:"BloggerSans","Inter",system-ui,sans-serif;font-size:19px;margin:10px 0 0}
.detail .dl{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}
.detail .dl dt{font-size:9.5px;color:#9fc6ac;font-weight:600;letter-spacing:.04em}
.detail .dl dd{margin:3px 0 0;font-size:14px;font-weight:600;font-variant-numeric:tabular-nums}
.detail .dl dd.pot{color:var(--green-200)}
.detail .note{font-size:11.5px;color:#bcd9c6;margin-top:12px}
.detail__empty{background:#fff;border:1px dashed var(--line-2);border-radius:16px;padding:22px 16px;text-align:center;color:var(--slate-2);font-size:13px}
.oplist{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.oplist__h{display:flex;align-items:center;padding:13px 14px 9px;font-family:"BloggerSans","Inter",system-ui,sans-serif;font-size:14px;color:var(--ink)}
.oplist__h span{margin-left:auto;font-size:11px;color:var(--slate-2);font-family:"BloggerSans",system-ui,sans-serif}
.oprow{display:flex;align-items:center;gap:11px;width:100%;text-align:left;border:none;background:none;cursor:pointer;
  padding:11px 14px;border-top:1px solid var(--paper-3);font-family:inherit;transition:background .15s}
.oprow:hover{background:var(--paper-2)}
.oprow.is-sel{background:rgba(226,59,46,.06)}
.oprow .heat{width:9px;height:9px;border-radius:50%;flex-shrink:0}
.oprow .nm{flex:1;min-width:0}
.oprow .nm b{display:block;font-size:13px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.oprow .nm span{font-size:11px;color:var(--slate-2)}
.oprow .rt{text-align:right}
.oprow .rt b{display:block;font-family:"BloggerSans","Inter",system-ui,sans-serif;font-size:13px;color:var(--green)}
.oprow .rt span{display:block;font-size:10px;color:var(--slate-2);margin-top:1px}
@media (max-width:920px){.map-shell{grid-template-columns:1fr}.map-figure{border-right:none;border-bottom:1px solid var(--line)}}
@media (max-width:640px){
  .map-figure{background:var(--paper)}
  .map-chip{display:none}
  .map-toolbar{position:static;padding:12px 12px 2px}
  .map-filters{margin-left:0;width:100%;justify-content:flex-start}
  .map-filters .fbtn{border:1px solid var(--line-2)}
  .map-legend{position:static;margin:10px 12px 14px;box-shadow:none;border:1px solid var(--line)}
}

/* carteira ranking */
.rank{margin-top:26px;background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow)}
.rank__h{display:flex;align-items:center;gap:10px;padding:15px 20px;border-bottom:1px solid var(--line)}
.rank__h h3{font-size:17px}
.rank__h span{margin-left:auto;color:var(--slate);font-size:13px}
.rrow{display:grid;grid-template-columns:26px 1fr 110px 120px 130px;gap:14px;align-items:center;padding:12px 20px;border-bottom:1px solid var(--paper-3);font-size:14px}
.rrow:last-child{border-bottom:none}
.rrow .rk{color:var(--slate-2);font-variant-numeric:tabular-nums;font-size:13px}
.rrow .co b{font-weight:600}
.rrow .co span{display:block;font-size:11.5px;color:var(--slate-2)}
.rrow .nums{font-variant-numeric:tabular-nums;color:var(--slate);font-size:13px}
.rrow .pot{font-family:"BloggerSans","Inter",system-ui,sans-serif;color:var(--red);font-size:16px;text-align:right;font-variant-numeric:tabular-nums}
.convbar{height:6px;border-radius:3px;background:var(--paper-3);overflow:hidden;position:relative;margin-top:6px}
.convbar i{position:absolute;left:0;top:0;bottom:0;background:var(--green-300)}
.convbar.warn i{background:var(--gold)}.convbar.crit i{background:var(--red)}
.rrow .ch{font-size:11px;color:var(--slate-2)}
@media (max-width:760px){.rrow{grid-template-columns:22px 1fr 110px;gap:10px}.rrow .nums,.rrow .convwrap{display:none}}

/* portal RH */
.rh{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:stretch}
.rh-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);border-radius:var(--r);padding:24px}
.rh-card h3{font-size:19px;color:#fff}
.rh-card p{color:var(--on-ink-dim);font-size:14.5px;margin:10px 0 0}
.rh-stats{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}
.rh-stats .s{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:14px}
.rh-stats .s .v{font-family:"BloggerSans","Inter",system-ui,sans-serif;font-size:26px;color:#fff;font-variant-numeric:tabular-nums}
.rh-stats .s .l{font-size:12px;color:var(--on-ink-dim);margin-top:2px}
.rh-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:11px}
.rh-list li{display:flex;gap:11px;align-items:flex-start;color:var(--on-ink);font-size:14.5px}
.rh-list li svg{flex-shrink:0;margin-top:2px;color:var(--green-200)}
@media (max-width:880px){.rh{grid-template-columns:1fr}}

/* footer */
.foot{background:var(--ink-900);color:var(--on-ink);padding:64px 0 40px}
.foot__grid{display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:center}
.foot h2{font-family:"BloggerSans","Inter",system-ui,sans-serif;font-size:clamp(26px,3vw,38px);color:#fff;max-width:18ch}
.foot p{color:var(--on-ink-dim);max-width:54ch;margin-top:14px}
.foot__cta{display:flex;gap:12px;flex-wrap:wrap}
.foot__bar{display:flex;align-items:center;gap:14px;margin-top:46px;padding-top:22px;border-top:1px solid rgba(255,255,255,.1);font-size:12.5px;color:var(--on-ink-dim);flex-wrap:wrap}
.foot__bar .logo{font-size:22px}
@media (max-width:880px){.foot__grid{grid-template-columns:1fr;gap:20px}}

/* ===================== TYPOGRAPHY EMPHASIS (Inter) — restrained weights ===================== */
/* Strong/brand weight reserved for the hero title; everything else stays light & legible. */
h1{font-weight:800;letter-spacing:-.022em}
h2,.foot h2{font-weight:700;letter-spacing:-.016em}
h3,.display{font-weight:600;letter-spacing:-.008em}
/* Display numbers & names: semibold only — readable, not chunky */
.kpi .val,.hero__chips b,.mk .v,.rrow .pot,.rh-stats .s .v,.oprow .rt b,.card3d__no,
.detail h4,.oplist__h,.vcard__name,.card3d__name,.tier__title,.map-chip b{font-weight:600}
.kpi .val,.hero__chips b,.mk .v,.rrow .pot,.rh-stats .s .v,.oprow .rt b,.detail .dl dd,
.rrow .nums,.tabnum,.vcard__meta,.card3d__no{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}

/* ===== Briefing: preços nos níveis ===== */
.tier__price{text-align:center;margin-top:2px;font-variant-numeric:tabular-nums}
.tier__price b{font-family:"BloggerSans","Inter",system-ui,sans-serif;font-weight:800;font-size:20px;color:var(--on-ink)}
.tier__price small{font-size:12px;color:var(--on-ink-dim)}
.tier__price .pop{display:inline-block;margin-top:6px;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#0c2e1c;background:var(--green-200);border-radius:999px;padding:3px 10px}

/* ===== Calculadora de economia ===== */
.calc{display:grid;grid-template-columns:1.2fr 1fr;gap:0;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:var(--paper);box-shadow:var(--shadow)}
@media (max-width:820px){.calc{grid-template-columns:1fr}}
.calc-controls{padding:28px;display:flex;flex-direction:column;gap:24px}
.calc-field label{display:flex;justify-content:space-between;font-size:14px;font-weight:600;color:var(--ink);margin-bottom:12px;gap:12px}
.calc-field label b{color:var(--green);font-variant-numeric:tabular-nums}
.calc-field input[type=range]{width:100%;accent-color:var(--green);height:6px}
.calc-note{font-size:12px;color:var(--slate-2);margin:0}
.calc-result{background:var(--ink);color:#fff;padding:28px;display:flex;flex-direction:column;gap:12px;justify-content:center}
.cr-row{display:flex;justify-content:space-between;align-items:baseline;font-size:14px;color:var(--on-ink-dim);font-variant-numeric:tabular-nums}
.cr-row b{color:#fff;font-weight:600;font-size:16px}
.cr-eco{margin-top:8px;border-top:1px solid rgba(255,255,255,.14);padding-top:16px;text-align:center}
.cr-eco span{display:block;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--green-200)}
.cr-eco b{display:block;font-family:"BloggerSans","Inter",system-ui,sans-serif;font-weight:800;font-size:40px;line-height:1.05;color:var(--green-200);font-variant-numeric:tabular-nums;margin:4px 0}
.cr-eco i{font-style:normal;font-size:12.5px;color:var(--on-ink-dim)}

/* ===== Diretório: seletor de nível ===== */
.club-levelsel{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:14px;font-size:13px;color:var(--slate)}
.club-levelsel button{border:1px solid var(--line-2);cursor:pointer;font-family:inherit;font-weight:700;font-size:12.5px;padding:7px 14px;border-radius:999px;background:var(--paper);color:var(--slate);min-height:38px}
.club-levelsel button.on{background:var(--ink-700);color:#fff;border-color:var(--ink-700)}
.cc-disc .lvl{display:block;font-size:9px;font-weight:700;letter-spacing:.06em;color:var(--slate-2);text-transform:uppercase}

/* ===== Prova social ===== */
.depoimentos{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media (max-width:820px){.depoimentos{grid-template-columns:1fr}}
.depo{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:22px;box-shadow:var(--shadow);display:flex;flex-direction:column}
.depo .stars{color:#f6b73c;font-size:14px;letter-spacing:2px}
.depo p{font-size:14.5px;color:var(--ink);line-height:1.55;margin:12px 0 16px;flex:1}
.depo .who{display:flex;align-items:center;gap:11px}
.depo .av{width:42px;height:42px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font-weight:700;flex:0 0 auto}
.depo .who b{display:block;font-size:14px;color:var(--ink)}
.depo .who span{font-size:12px;color:var(--slate-2)}

/* ===== FAQ accordion ===== */
.faq{display:flex;flex-direction:column;gap:10px}
.faq-item{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow)}
.faq-q{width:100%;text-align:left;border:none;background:none;cursor:pointer;font-family:inherit;font-weight:600;font-size:15px;color:var(--ink);padding:18px 20px;display:flex;align-items:center;gap:14px;min-height:44px}
.faq-q .chev{margin-left:auto;flex:0 0 auto;transition:transform .2s ease;color:var(--slate-2)}
.faq-q[aria-expanded="true"] .chev{transform:rotate(180deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .25s ease}
.faq-a p{margin:0;padding:0 20px 18px;font-size:14px;color:var(--slate);line-height:1.6}
@media (prefers-reduced-motion:reduce){.faq-q .chev,.faq-a{transition:none}}

/* skip-link (a11y): some da tela até receber foco por teclado */
.skip-link{position:absolute;left:-9999px}
.skip-link:focus{left:12px;top:12px;z-index:1000;background:#fff;padding:10px 14px;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.2)}

/* foco-visível para teclado (a11y) — não remover outline em nenhum lugar */
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible,
textarea:focus-visible, summary:focus-visible, [tabindex]:focus-visible {
  outline: 2px solid var(--green, #0c7a45);
  outline-offset: 2px;
  border-radius: 4px;
}

/* micro-motion on-brand: revelação escalonada no load (aplicada via reveal.js).
   Sutil, no mesmo tom do resto; respeita prefers-reduced-motion. */
@keyframes rvUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
.rv-up { animation: rvUp .5s cubic-bezier(.2,.7,.2,1) both; }
@media (prefers-reduced-motion: reduce) { .rv-up { animation: none; } }

/* ============================================================
   LINEAR REDESIGN — camada de componentes (swarm) — modo claro
   Refina o CHROME (nav/botões/cards/inputs/eyebrow). Assets de marca intactos.
   ============================================================ */
/* ===================== EYEBROW / TIPOGRAFIA ===================== */
.eyebrow{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--slate)} /* era 12.5px/.14em/green-400 — caps discreto Linear */
.display{font-weight:800;letter-spacing:-.02em} /* mantido 800 SO p/ hero de marca */
h1{letter-spacing:-.02em;line-height:1.15}
h2{letter-spacing:-.015em}
h3{letter-spacing:-.01em}

/* ===================== NAV ===================== */
.nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.8);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--line)}
.nav__in{display:flex;align-items:center;gap:24px;height:56px} /* era 64px — apertar */
.nav__links{display:flex;gap:4px;margin-left:18px}
.nav__links a{padding:6px 10px;border-radius:var(--r-sm);font-size:14px;font-weight:500;color:var(--slate);transition:background var(--t-fast),color var(--t-fast)}
.nav__links a:hover{background:var(--paper-3);color:var(--ink)}
.nav__links a[aria-current],.nav__links a.is-active{color:var(--ink);background:var(--paper-3)}

/* ===================== BOTOES ===================== */
.btn{display:inline-flex;align-items:center;gap:8px;border:1px solid transparent;cursor:pointer;font-family:inherit;font-weight:600;font-size:14px;letter-spacing:-.01em;
  padding:8px 14px;border-radius:var(--r-sm);transition:background var(--t-fast),border-color var(--t-fast),box-shadow var(--t-fast);min-height:36px}
@media (max-width:760px){.btn{min-height:44px}} /* alvo de toque so no mobile */
.btn:active{transform:translateY(.5px)}
/* PRIMARIO verde — flat, sem glow colorido */
.btn--green{background:var(--green);color:#fff;border-color:transparent;box-shadow:inset 0 0 0 1px rgba(0,0,0,.06)}
.btn--green:hover{background:var(--green-600)}
/* DANGER vermelho — flat, sem glow */
.btn--red{background:var(--red);color:#fff;border-color:transparent;box-shadow:inset 0 0 0 1px rgba(0,0,0,.06)}
.btn--red:hover{background:var(--red-600)}
/* SECUNDARIO neutro — o workhorse Linear */
.btn--ghost{background:var(--paper);border:1px solid var(--line-2);color:var(--ink);box-shadow:none}
.btn--ghost:hover{background:var(--paper-2);border-color:rgba(20,22,28,.15)}
/* GHOST claro sobre escuro (band ink) — preservado */
.btn--ghost-l{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.28);color:#fff}
.btn--ghost-l:hover{background:rgba(255,255,255,.16)}
/* NAO TOCAR: .btn--vfx / .vfx-bit / @keyframes vfx* (chuva de V+ de marca) permanecem como estao */

/* ===================== CARDS ===================== */
.face,.kpi,.depo,.faq-item,.step{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);box-shadow:none;transition:border-color var(--t-fast),box-shadow var(--t-fast)}
/* cards NAO levitam: hover so intensifica borda + sombra sutil (era translateY(-3px)+shadow-lg) */
a.face:hover,.face--int:hover,.kpi--int:hover{border-color:var(--line-2);box-shadow:var(--shadow-xs);transform:none}
/* CHROME do card de parceiro (a ARTE cc-cover/cc-logo continua asset) */
.club-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);box-shadow:none;transition:border-color var(--t-fast),box-shadow var(--t-fast)}
.club-card:hover{border-color:var(--line-2);box-shadow:var(--shadow-xs);transform:none}

/* ===================== INPUTS / CAMPOS ===================== */
.club-search-wrap{background:var(--paper);border:1px solid var(--line-2);border-radius:var(--r-sm);transition:border-color var(--t-fast),box-shadow var(--t-fast)}
.club-search-wrap:hover{border-color:rgba(20,22,28,.16)}
.club-search-wrap:focus-within{border-color:var(--green);box-shadow:var(--focus-ring)}
.club-search{font-size:14px;color:var(--ink)}
.club-search::placeholder{color:var(--slate-2)}
/* padrao reutilizavel p/ qualquer input/select/textarea de chrome */
input[type=text],input[type=email],input[type=tel],input[type=search],input[type=number],input[type=password],select,textarea{
  background:var(--paper);border:1px solid var(--line-2);border-radius:var(--r-sm);padding:7px 10px;font:14px/1.4 inherit;color:var(--ink)}
input::placeholder,textarea::placeholder{color:var(--slate-2)}
input:hover,select:hover,textarea:hover{border-color:rgba(20,22,28,.16)}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--green);box-shadow:var(--focus-ring)}
input[aria-invalid="true"],input.is-invalid{border-color:var(--red);box-shadow:0 0 0 3px color-mix(in srgb, var(--red) 18%, transparent)}
/* range mantem accent-color verde (.calc-field) */

/* ===================== TABELAS / LINHAS ===================== */
.rank,.oplist,.map-side .mk-list{border:1px solid var(--line);border-radius:var(--r);background:var(--paper);box-shadow:none}
.rrow,.oprow,.map-side .mk{border-bottom:1px solid var(--line-3);transition:background .1s ease}
.rrow:last-child,.oprow:last-child{border-bottom:none}
.rrow:hover,.oprow:hover,.map-side .mk:hover{background:var(--paper-2)}
th{font-size:12px;font-weight:600;color:var(--slate);text-align:left;padding:8px 12px;border-bottom:1px solid var(--line)}
td{padding:8px 12px;font-size:14px}
.is-selected,tr[aria-selected="true"]{background:color-mix(in srgb, var(--green) 7%, #fff)}

/* ===================== CHIPS / PILULAS ===================== */
.club-chip,.club-levelsel button,.fbtn,.fbtn2,.scat{background:var(--paper);border:1px solid var(--line-2);border-radius:var(--r-sm);padding:4px 10px;font-size:12.5px;font-weight:500;color:var(--slate);transition:background var(--t-fast),border-color var(--t-fast),color var(--t-fast)}
.club-chip:hover,.fbtn:hover,.fbtn2:hover,.scat:hover{background:var(--paper-2)}
/* SELECIONADO (claro) — verde tonal, NAO mais fundo ink-700 escuro em contexto claro */
.club-chip[aria-pressed="true"],.club-chip.is-on,.club-levelsel button[aria-pressed="true"],.fbtn[aria-pressed="true"],.fbtn2[aria-pressed="true"],.scat[aria-pressed="true"]{
  background:color-mix(in srgb, var(--green) 10%, #fff);border-color:color-mix(in srgb, var(--green) 35%, transparent);color:var(--green)}
/* BADGE DE STATUS (pill com dot) — utilitario novo, tonal suave */
.pill{display:inline-flex;align-items:center;gap:6px;border-radius:var(--r-pill);padding:2px 8px;font-size:11.5px;font-weight:500}
.pill::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.pill--ok{background:color-mix(in srgb, var(--green) 12%, #fff);color:var(--green-600)}
.pill--danger{background:color-mix(in srgb, var(--red) 12%, #fff);color:var(--red-600)}
.pill--neutral{background:var(--paper-3);color:var(--slate)}
/* .crh-n/.crh-a (mapa) seguem o mesmo padrao de chip claro */

/* ===================== MODAIS ===================== */
.pdet{background:rgba(16,18,23,.4);backdrop-filter:blur(2px)} /* overlay neutro-frio (era esverdeado) */
.pdet__box{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);padding:22px} /* era raio 20px + sombra 40px/90px */
.pdet__x{border:1px solid var(--line-2);background:var(--paper);border-radius:var(--r-sm);transition:background var(--t-fast)}
.pdet__x:hover{background:var(--paper-2)}

/* ===================== BANDS / SUPERFICIE ===================== */
.band--paper{background:var(--bg)}
.band--soft{background:var(--paper-2)}
/* .band--ink / .band--ink2 mantem fundo verde-escuro de marca (--ink-900/-800) — NAO mexer cor */

/* ===================== FOCO A11Y (mantido, refinado) ===================== */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{
  outline:2px solid var(--green);outline-offset:2px;border-radius:4px}
