/* ==========================================================================
   PRO CORRE — Páginas do clube (Fase 03)
   Planos · Benefícios · Parceiros · Seja um parceiro
   Usa somente tokens de tokens.css (preto/amarelo, Archivo + Inter).
   ========================================================================== */

/* ---------- Utilidades ---------- */
.pc-card[hidden], [data-pc-item][hidden], [data-pc-empty][hidden], [data-pc-group-empty][hidden] { display: none !important; }
.pc-tag-ex {
	display: inline-block; margin-left: 0.35em; padding: 0 0.4em; border-radius: var(--pc-radius-xs);
	background: var(--pc-yellow-100); color: var(--pc-black);
	font-size: var(--pc-text-2xs); font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; vertical-align: 0.1em;
}
.pc-surface-dark .pc-tag-ex { background: rgba(255, 204, 0, 0.18); color: var(--pc-yellow); }
.pc-club .pc-section:not(.pc-surface-dark) + .pc-section:not(.pc-surface-dark):not(.pc-club-plans) { padding-top: calc(var(--pc-section) * 0.5); }

/* ---------- Herói ---------- */
.pc-club-hero { position: relative; overflow: hidden; padding-block: clamp(3rem, 2rem + 5vw, 6rem); }
.pc-club-hero::after { /* faixa amarela na base: assinatura visual */
	content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 6px;
	background: repeating-linear-gradient(90deg, var(--pc-yellow) 0 48px, transparent 48px 72px);
	opacity: 0.9;
}
.pc-club-hero__grid { position: relative; z-index: 1; display: grid; gap: var(--pc-space-10); align-items: center; }
@media (min-width: 960px) {
	.pc-club-hero--media .pc-club-hero__grid { grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr); gap: var(--pc-space-12); }
}
.pc-club-hero__copy > * { max-width: 640px; }
.pc-club-hero__title { margin-bottom: var(--pc-space-5); }
.pc-club-hero .pc-lead { color: var(--pc-text-muted); font-size: clamp(1.05rem, 1rem + 0.3vw, 1.25rem); }
.pc-club-hero__actions { --pc-cluster-gap: 0.75rem; margin-top: var(--pc-space-8); }
.pc-club-hero__note { margin-top: var(--pc-space-4); font-size: var(--pc-text-xs); color: var(--pc-text-muted); }
.pc-club-hero__media { position: relative; display: flex; justify-content: center; }
.pc-club-hero__photo {
	display: block; width: 100%; max-width: 500px; height: auto; aspect-ratio: 1 / 1; object-fit: cover; object-position: 78% center;
	border-radius: var(--pc-radius-lg); box-shadow: 14px 14px 0 var(--pc-yellow); background: #1C1C1C;
}
@media (min-width: 960px) { .pc-club-hero__media { justify-content: flex-end; } }
@media (max-width: 959px) {
	.pc-club-hero__media { order: -1; justify-content: flex-start; }
	.pc-club-hero__photo { max-width: none; aspect-ratio: 16 / 10; object-position: 70% 35%; box-shadow: 8px 8px 0 var(--pc-yellow); width: calc(100% - 8px); }
	.pc-club-hero { padding-top: var(--pc-space-6); }
	.pc-club-hero__grid { gap: var(--pc-space-8); }
}

/* Mosaico de segmentos (herói de parceiros) */
.pc-seg-mosaic { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--pc-space-3); width: 100%; max-width: 480px; }
.pc-seg-mosaic li {
	display: flex; flex-direction: column; align-items: flex-start; gap: var(--pc-space-3); padding: var(--pc-space-4);
	border-radius: var(--pc-radius-md); background: #1C1C1C; border: 1px solid #2B2B2B;
	font-size: var(--pc-text-xs); font-weight: 700; line-height: 1.25;
}
.pc-seg-mosaic li:nth-child(3n+2) { transform: translateY(18px); }
.pc-seg-mosaic svg { width: 28px; height: 28px; color: var(--pc-yellow); }
@media (max-width: 559px) { .pc-seg-mosaic { grid-template-columns: repeat(2, minmax(0, 1fr)); } .pc-seg-mosaic li:nth-child(3n+2) { transform: none; } }

/* ---------- Cabeçalho de seção ---------- */
.pc-club-head { display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: var(--pc-space-4); margin-bottom: var(--pc-space-8); }
.pc-club-head h2 { margin-bottom: 0; }
.pc-club-head__text { margin: var(--pc-space-3) 0 0; color: var(--pc-text-muted); max-width: 62ch; font-size: var(--pc-text-lg); }
.pc-club-head--center { justify-content: center; text-align: center; }
.pc-club-head--center .pc-club-head__main { display: flex; flex-direction: column; align-items: center; }
.pc-club-head--center .pc-club-head__text { margin-inline: auto; }

/* ---------- Planos ---------- */
.pc-pplan-grid { display: grid; gap: var(--pc-space-5); align-items: stretch; }
@media (min-width: 960px) { .pc-pplan-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--pc-space-6); padding-top: var(--pc-space-4); } }
.pc-pplan { padding: var(--pc-space-8) var(--pc-space-6) var(--pc-space-6); gap: var(--pc-space-5); border-width: 2px; overflow: visible; }
.pc-pplan:hover { box-shadow: var(--pc-shadow-md); transform: translateY(-3px); }
.pc-pplan--recommended { border-color: var(--pc-yellow); box-shadow: 0 0 0 4px rgba(255, 204, 0, 0.25), var(--pc-shadow-md); }
@media (min-width: 960px) { .pc-pplan--recommended { transform: translateY(-12px); } .pc-pplan--recommended:hover { transform: translateY(-15px); } }
.pc-pplan.pc-surface-dark { border-color: var(--pc-black); }
.pc-pplan__ribbon {
	position: absolute; top: -14px; left: 50%; transform: translateX(-50%);
	display: inline-flex; align-items: center; gap: 0.35rem; padding: 0.35rem 0.85rem; border-radius: var(--pc-radius-pill);
	background: var(--pc-yellow); color: var(--pc-black);
	font-family: var(--pc-font-display); font-stretch: var(--pc-stretch-display); font-weight: 900; font-size: var(--pc-text-xs); letter-spacing: 0.08em; text-transform: uppercase; white-space: nowrap;
}
.pc-pplan__ribbon svg { width: 14px; height: 14px; fill: currentColor; }
.pc-pplan__head { display: flex; flex-direction: column; align-items: flex-start; gap: var(--pc-space-2); }
.pc-pplan__name { margin: var(--pc-space-1) 0 0; font-size: var(--pc-text-3xl); text-transform: uppercase; font-weight: 900; }
.pc-pplan__tagline { margin: 0; color: var(--pc-text-muted); font-size: var(--pc-text-sm); }
.pc-pplan__price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0.25rem 0.5rem; padding-block: var(--pc-space-4); border-block: 1px solid var(--pc-border); }
.pc-pplan__amount { font-family: var(--pc-font-display); font-stretch: 112%; font-weight: 900; font-size: var(--pc-text-3xl); line-height: 1; }
.pc-pplan__tbd { font-family: var(--pc-font-display); font-stretch: 112%; font-weight: 800; font-size: var(--pc-text-xl); line-height: 1.15; width: 100%; }
.pc-pplan__per { font-size: var(--pc-text-xs); color: var(--pc-text-muted); }
.pc-pplan__label { margin: 0 0 var(--pc-space-2); font-size: var(--pc-text-2xs); font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; color: var(--pc-text-muted); }
.pc-pplan__discount { display: flex; gap: var(--pc-space-2); margin: 0; font-size: var(--pc-text-sm); font-weight: 600; }
.pc-pplan__discount svg { flex: none; width: 20px; height: 20px; color: var(--pc-yellow-600); }
.pc-surface-dark .pc-pplan__discount svg { color: var(--pc-yellow); }
.pc-pplan__benefits { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--pc-space-2); font-size: var(--pc-text-sm); }
.pc-pplan__benefits li { position: relative; padding-left: 1rem; }
.pc-pplan__benefits li::before { content: ""; position: absolute; left: 0; top: 0.55em; width: 6px; height: 6px; border-radius: 1px; background: var(--pc-yellow); transform: rotate(45deg); }
.pc-pplan__benefits a { text-decoration: none; }
.pc-pplan__benefits a:hover { text-decoration: underline; }
.pc-pplan__more { display: inline-block; margin-top: var(--pc-space-2); font-size: var(--pc-text-xs); font-weight: 700; }
.pc-pplan__cta { margin-top: auto; display: grid; gap: var(--pc-space-2); }
.pc-pplan__note { margin: 0; font-size: var(--pc-text-xs); color: var(--pc-text-muted); text-align: center; }
.pc-club-plans .pc-demo-notice { margin-top: var(--pc-space-8); }

/* Bolinhas de plano */
.pc-plan-dots { display: flex; flex-wrap: wrap; gap: 0.35rem; margin: 0; }
.pc-plan-dot {
	display: inline-flex; align-items: center; gap: 0.35rem; padding: 0.15rem 0.5rem 0.15rem 0.4rem;
	border-radius: var(--pc-radius-pill); border: 1px solid var(--pc-border); background: var(--pc-surface);
	font-size: var(--pc-text-xs); font-weight: 700; white-space: nowrap;
}
.pc-plan-dot::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--pc-gray-400); }
.pc-plan-dot--essencial::before { background: var(--pc-yellow); box-shadow: 0 0 0 1px var(--pc-yellow-600); }
.pc-plan-dot--premium::before { background: var(--pc-black); box-shadow: 0 0 0 1px var(--pc-yellow); }

/* Comparativo */
.pc-compare { overflow-x: auto; border: 1px solid var(--pc-border); border-radius: var(--pc-radius-md); background: var(--pc-surface); -webkit-overflow-scrolling: touch; }
.pc-compare:focus-visible { outline-offset: 4px; }
.pc-compare__table { width: 100%; min-width: 620px; border-collapse: separate; border-spacing: 0; font-size: var(--pc-text-sm); }
.pc-compare__table th, .pc-compare__table td { padding: var(--pc-space-3) var(--pc-space-4); border-bottom: 1px solid var(--pc-gray-200); text-align: center; vertical-align: middle; }
.pc-compare__table tbody tr:last-child > * { border-bottom: 0; }
.pc-compare__table th[scope="row"], .pc-compare__table thead th:first-child {
	position: sticky; left: 0; z-index: 1; text-align: left; background: var(--pc-surface); font-weight: 600;
	min-width: 220px; box-shadow: 1px 0 0 var(--pc-gray-200);
}
.pc-compare__table thead th { background: var(--pc-black); color: var(--pc-white); font-family: var(--pc-font-display); font-stretch: var(--pc-stretch-display); font-weight: 800; font-size: var(--pc-text-xs); letter-spacing: 0.06em; text-transform: uppercase; }
.pc-compare__table thead th:first-child { background: var(--pc-black); color: var(--pc-white); }
.pc-compare__table thead .pc-plan-dot { background: transparent; border-color: #444; color: var(--pc-white); }
.pc-compare__table .is-recommended { background: rgba(255, 204, 0, 0.09); }
.pc-compare__table thead th.is-recommended { background: #2A2410; box-shadow: inset 0 -3px 0 var(--pc-yellow); }
.pc-compare__table tbody tr:hover > * { background-color: var(--pc-offwhite); }
.pc-compare__table th[scope="row"] a { text-decoration: none; }
.pc-compare__table th[scope="row"] a:hover { text-decoration: underline; }
.pc-compare__cond { display: block; margin-top: 2px; font-size: var(--pc-text-xs); font-weight: 400; color: var(--pc-text-muted); }
.pc-yes { display: inline-grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--pc-yellow); color: var(--pc-black); }
.pc-yes svg { width: 16px; height: 16px; stroke-width: 3; }
.pc-no { color: var(--pc-gray-400); font-weight: 700; }

/* ---------- Passos conectados ---------- */
.pc-flow { --_cols: 3; list-style: none; margin: 0; padding: 0; display: grid; gap: var(--pc-space-8); counter-reset: none; position: relative; }
.pc-flow--4 { --_cols: 4; }
.pc-flow__step { position: relative; display: grid; grid-template-columns: 64px 1fr; column-gap: var(--pc-space-4); align-items: start; }
.pc-flow__marker { position: relative; grid-row: span 2; width: 64px; height: 64px; }
.pc-flow__icon {
	position: relative; z-index: 1; display: grid; place-items: center; width: 64px; height: 64px; border-radius: 50%;
	background: var(--pc-yellow); color: var(--pc-black); box-shadow: 0 0 0 6px var(--pc-bg);
	transition: transform var(--pc-duration) var(--pc-ease);
}
.pc-flow__step:hover .pc-flow__icon { transform: scale(1.06) rotate(-4deg); }
.pc-flow__icon svg { width: 28px; height: 28px; }
.pc-flow__num {
	position: absolute; z-index: 2; right: -6px; top: -6px; display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%;
	background: var(--pc-text); color: var(--pc-bg); font-family: var(--pc-font-display); font-weight: 900; font-size: 11px;
}
.pc-flow__title { margin: var(--pc-space-1) 0 var(--pc-space-2); font-size: var(--pc-text-lg); }
.pc-flow__text { margin: 0; color: var(--pc-text-muted); font-size: var(--pc-text-sm); max-width: 34ch; }
/* Linha vertical no mobile */
.pc-flow__step:not(:last-child)::after {
	content: ""; position: absolute; left: 31px; top: 70px; bottom: calc(var(--pc-space-8) * -1 + 6px); width: 2px;
	background: repeating-linear-gradient(180deg, var(--pc-yellow) 0 8px, transparent 8px 14px);
}
@media (min-width: 900px) {
	.pc-flow { grid-template-columns: repeat(var(--_cols), minmax(0, 1fr)); gap: var(--pc-space-6); }
	.pc-flow__step { grid-template-columns: 1fr; justify-items: center; text-align: center; }
	.pc-flow__marker { grid-row: auto; margin-bottom: var(--pc-space-4); }
	.pc-flow__text { margin-inline: auto; }
	.pc-flow__step:not(:last-child)::after {
		left: calc(50% + 44px); right: calc(-50% + 44px); top: 31px; bottom: auto; width: auto; height: 2px;
		background: repeating-linear-gradient(90deg, var(--pc-yellow) 0 10px, transparent 10px 18px);
	}
	.pc-reveal-on .pc-flow__step:not(:last-child)::after { transform: scaleX(0); transform-origin: left; transition: transform 700ms var(--pc-ease) 250ms; }
	.pc-reveal-on .pc-flow__step.is-visible:not(:last-child)::after { transform: scaleX(1); }
}

/* ---------- FAQ ---------- */
.pc-faq { display: grid; gap: var(--pc-space-3); }
.pc-faq__item { border: 1px solid var(--pc-border); border-radius: var(--pc-radius-md); background: var(--pc-surface); transition: border-color var(--pc-duration) var(--pc-ease), box-shadow var(--pc-duration) var(--pc-ease); }
.pc-faq__item:hover { border-color: var(--pc-gray-400); }
.pc-faq__item[open] { border-color: var(--pc-black); box-shadow: var(--pc-shadow-sm); }
.pc-faq__q { display: flex; align-items: center; justify-content: space-between; gap: var(--pc-space-4); padding: var(--pc-space-4) var(--pc-space-5); cursor: pointer; list-style: none; font-weight: 700; }
.pc-faq__q::-webkit-details-marker { display: none; }
.pc-faq__q:focus-visible { outline-offset: -3px; border-radius: var(--pc-radius-md); }
.pc-faq__sign { position: relative; flex: none; width: 28px; height: 28px; border-radius: 50%; background: var(--pc-yellow); }
.pc-faq__sign::before, .pc-faq__sign::after { content: ""; position: absolute; left: 50%; top: 50%; width: 12px; height: 2px; margin: -1px 0 0 -6px; background: var(--pc-black); transition: transform var(--pc-duration) var(--pc-ease); }
.pc-faq__sign::after { transform: rotate(90deg); }
.pc-faq__item[open] .pc-faq__sign::after { transform: rotate(0deg); }
.pc-faq__a { padding: 0 var(--pc-space-5) var(--pc-space-5); color: var(--pc-text-muted); }
.pc-faq__a p { margin: 0; max-width: 68ch; }

/* ---------- CTA final ---------- */
.pc-club-cta-wrap { padding-block: var(--pc-section) 0; }
.pc-club-cta {
	position: relative; overflow: hidden; display: grid; gap: var(--pc-space-6); align-items: center;
	padding: clamp(2rem, 1.4rem + 3vw, 3.5rem); border-radius: var(--pc-radius-lg);
}
@media (min-width: 900px) { .pc-club-cta { grid-template-columns: 1fr auto; } }
.pc-club-cta__copy { position: relative; z-index: 1; }
.pc-club-cta h2 { margin: 0; text-transform: uppercase; font-weight: 900; max-width: 22ch; }
.pc-club-cta p { margin: var(--pc-space-3) 0 0; color: var(--pc-text-muted); max-width: 52ch; }
.pc-club-cta__actions { position: relative; z-index: 1; --pc-cluster-gap: 0.75rem; }
.pc-club-cta .pc-btn--outline { --_fg: var(--pc-black); }
.pc-club-cta .pc-btn--outline:hover { --_bg: var(--pc-black); --_fg: var(--pc-yellow); }
.pc-club-cta__lines {
	position: absolute; right: -40px; top: 0; bottom: 0; width: 45%; pointer-events: none;
	background: repeating-linear-gradient(100deg, transparent 0 40px, rgba(18, 18, 18, 0.08) 40px 52px, transparent 52px 104px);
}
.pc-club ~ .pc-footer, .pc-club .pc-footer { margin-top: var(--pc-section); }

/* ---------- Filtros ---------- */
.pc-filter-tiles { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--pc-space-2); margin-bottom: var(--pc-space-5); }
@media (min-width: 640px) { .pc-filter-tiles { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .pc-filter-tiles { grid-template-columns: repeat(7, minmax(0, 1fr)); } }
.pc-filter-tile {
	display: flex; flex-direction: column; align-items: flex-start; gap: var(--pc-space-3); padding: var(--pc-space-4);
	border: 1.5px solid var(--pc-border); border-radius: var(--pc-radius-md); background: var(--pc-surface);
	font-size: var(--pc-text-sm); font-weight: 700; line-height: 1.2; text-decoration: none;
	transition: border-color var(--pc-duration) var(--pc-ease), background-color var(--pc-duration) var(--pc-ease), transform var(--pc-duration) var(--pc-ease);
}
.pc-filter-tile:hover { border-color: var(--pc-black); transform: translateY(-2px); }
.pc-filter-tile__icon { display: grid; place-items: center; width: 40px; height: 40px; border-radius: var(--pc-radius-sm); background: var(--pc-offwhite); color: var(--pc-black); transition: background-color var(--pc-duration) var(--pc-ease); }
.pc-filter-tile__icon svg { width: 22px; height: 22px; }
.pc-filter-tile.is-active { border-color: var(--pc-black); background: var(--pc-black); color: var(--pc-white); }
.pc-filter-tile.is-active .pc-filter-tile__icon { background: var(--pc-yellow); }
.pc-filter-tiles--chips { display: flex; flex-wrap: wrap; }
.pc-filter-tiles--chips .pc-filter-tile { flex-direction: row; padding: 0.55rem 1rem; border-radius: var(--pc-radius-pill); }
.pc-filter-tiles--chips .pc-filter-tile:hover { transform: none; }
.pc-filter-row { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--pc-space-3); margin-bottom: var(--pc-space-5); }
.pc-filter-search { flex: 1 1 320px; max-width: 560px; display: flex; gap: var(--pc-space-2); }
.pc-filter-search .pc-input { flex: 1; min-width: 0; }
.is-enhanced .pc-filter-search__submit { display: none; }
.pc-filter-count { margin: 0; font-size: var(--pc-text-sm); font-weight: 700; color: var(--pc-text-muted); }
.pc-club-list .pc-demo-notice { margin-bottom: var(--pc-space-5); }
.pc-club-empty { align-items: center; text-align: center; padding: var(--pc-space-12) var(--pc-space-6); }
.pc-club-empty--soft { border-style: solid; background: var(--pc-offwhite); }
.pc-club-list [data-pc-empty] { margin-top: var(--pc-space-5); }

/* ---------- Card de benefício ---------- */
.pc-bcard-grid { --pc-grid-gap: var(--pc-space-5); }
.pc-bcard:hover { border-color: var(--pc-black); box-shadow: var(--pc-shadow-md); transform: translateY(-3px); }
.pc-bcard__media { position: relative; display: grid; place-items: center; aspect-ratio: 16 / 9; background: var(--pc-black); overflow: hidden; }
.pc-bcard__media::before { content: ""; position: absolute; inset: 0; background: repeating-linear-gradient(100deg, transparent 0 34px, rgba(255, 204, 0, 0.12) 34px 42px, transparent 42px 84px); }
.pc-bcard__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 500ms var(--pc-ease); }
.pc-bcard__media--photo::before { z-index: 1; background: linear-gradient(180deg, rgba(18, 18, 18, 0.55) 0%, rgba(18, 18, 18, 0) 38%); }
.pc-bcard__flags { z-index: 2; }
.pc-bcard:hover .pc-bcard__media img { transform: scale(1.04); }
.pc-bcard__icon { position: relative; display: grid; place-items: center; width: 76px; height: 76px; border-radius: 22px; background: var(--pc-yellow); color: var(--pc-black); transform: rotate(-6deg); transition: transform var(--pc-duration) var(--pc-ease); }
.pc-bcard:hover .pc-bcard__icon { transform: rotate(0deg) scale(1.05); }
.pc-bcard__icon svg { width: 36px; height: 36px; }
.pc-bcard__flags { position: absolute; left: var(--pc-space-3); top: var(--pc-space-3); right: var(--pc-space-3); display: flex; flex-wrap: wrap; gap: var(--pc-space-1); }
.pc-bcard__flags .pc-badge--dark { background: rgba(18, 18, 18, 0.8); box-shadow: inset 0 0 0 1px #3a3a3a; }
.pc-bcard__flags .pc-badge--demo { background: var(--pc-yellow); color: var(--pc-black); }
.pc-bcard__body { flex: 1; display: flex; flex-direction: column; gap: var(--pc-space-3); padding: var(--pc-space-5); }
.pc-bcard__partner { display: flex; align-items: center; gap: var(--pc-space-2); margin: 0; font-size: var(--pc-text-xs); font-weight: 700; color: var(--pc-text-muted); letter-spacing: 0.02em; }
.pc-bcard__partner svg { width: 16px; height: 16px; flex: none; }
.pc-bcard__title { margin: 0; font-size: var(--pc-text-xl); line-height: 1.2; }
.pc-bcard__desc { margin: 0; color: var(--pc-text-muted); font-size: var(--pc-text-sm); }
.pc-bcard__meta { display: grid; gap: var(--pc-space-3); margin: var(--pc-space-1) 0 0; padding-top: var(--pc-space-3); border-top: 1px dashed var(--pc-border); }
.pc-bcard__meta > div { display: grid; gap: var(--pc-space-1); }
.pc-bcard__meta dt { font-size: var(--pc-text-2xs); font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; color: var(--pc-text-muted); }
.pc-bcard__meta dd { margin: 0; }
.pc-bcard__condition { font-weight: 800; font-size: var(--pc-text-sm); }
.pc-bcard__link { margin-top: auto; align-self: flex-start; }
.pc-bcard__link::after { content: ""; position: absolute; inset: 0; z-index: 1; } /* card inteiro clicável */
.pc-bcard__link svg { width: 16px; height: 16px; transition: transform var(--pc-duration) var(--pc-ease); }
.pc-bcard:hover .pc-bcard__link { --_bg: var(--pc-black); --_fg: var(--pc-white); --_bd: var(--pc-black); }
.pc-bcard:hover .pc-bcard__link svg { transform: translateX(3px); }
.pc-bcard--featured { border-width: 2px; border-color: var(--pc-black); }
.pc-bcard--featured .pc-bcard__media { aspect-ratio: 16 / 8; }

/* ---------- Card de parceiro ---------- */
.pc-pcard { padding: var(--pc-space-5); gap: var(--pc-space-4); }
.pc-pcard:hover { border-color: var(--pc-black); box-shadow: var(--pc-shadow-md); transform: translateY(-3px); }
.pc-pcard--demo { background-image: repeating-linear-gradient(135deg, transparent 0 14px, rgba(18, 18, 18, 0.025) 14px 28px); }
.pc-pcard__top { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--pc-space-3); }
.pc-pcard__logo { display: grid; place-items: center; width: 72px; height: 72px; border-radius: var(--pc-radius-md); border: 1px solid var(--pc-border); background: var(--pc-white); overflow: hidden; flex: none; }
.pc-pcard__logo img { width: 100%; height: 100%; object-fit: contain; padding: 8px; }
.pc-pcard__mono {
	display: grid; place-items: center; width: 100%; height: 100%;
	background: var(--pc-black); color: var(--pc-yellow); font-family: var(--pc-font-display); font-stretch: 125%; font-weight: 900; font-size: var(--pc-text-xl);
}
.pc-pcard--demo .pc-pcard__mono { background: var(--pc-gray-200); color: var(--pc-gray-700); }
.pc-pcard__body { flex: 1; display: flex; flex-direction: column; gap: var(--pc-space-2); }
.pc-pcard__segment { margin: 0; font-size: var(--pc-text-2xs); font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; color: var(--pc-text-muted); }
.pc-pcard__name { margin: 0; font-size: var(--pc-text-xl); }
.pc-pcard__desc { margin: 0; color: var(--pc-text-muted); font-size: var(--pc-text-sm); }
.pc-pcard__facts { list-style: none; margin: var(--pc-space-2) 0 var(--pc-space-3); padding: var(--pc-space-3) 0 0; border-top: 1px dashed var(--pc-border); display: grid; gap: var(--pc-space-2); font-size: var(--pc-text-sm); }
.pc-pcard__facts li { display: flex; align-items: center; gap: var(--pc-space-2); }
.pc-pcard__facts svg { width: 18px; height: 18px; flex: none; color: var(--pc-yellow-600); }
.pc-pcard__link { margin-top: auto; align-self: flex-start; }
.pc-pcard__link::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.pc-pcard__link svg { width: 16px; height: 16px; transition: transform var(--pc-duration) var(--pc-ease); }
.pc-pcard:hover .pc-pcard__link { --_bg: var(--pc-black); --_fg: var(--pc-white); --_bd: var(--pc-black); }
.pc-pcard:hover .pc-pcard__link svg { transform: translateX(3px); }

.pc-partner-group + .pc-partner-group { margin-top: var(--pc-space-12); }
.pc-partner-group__title { display: flex; align-items: center; gap: var(--pc-space-2); margin: 0 0 var(--pc-space-5); font-size: var(--pc-text-xl); }
.pc-partner-group__title svg { width: 24px; height: 24px; padding: 4px; border-radius: 50%; background: var(--pc-yellow); color: var(--pc-black); }
.pc-partner-group--demo .pc-partner-group__title svg { background: var(--pc-gray-200); }
.pc-partner-group [data-pc-group-empty] { margin: 0; }
.pc-club-list .pc-filter-count { margin-bottom: var(--pc-space-6); }

/* Expansão */
.pc-club-expand__label { margin: 0 0 var(--pc-space-4); font-size: var(--pc-text-xs); font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; color: var(--pc-yellow); }
.pc-seg-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--pc-space-3); }
.pc-seg-list li { display: flex; align-items: center; gap: var(--pc-space-3); padding: var(--pc-space-3) var(--pc-space-4); border: 1px solid var(--pc-border); border-radius: var(--pc-radius-md); background: var(--pc-surface); font-size: var(--pc-text-sm); font-weight: 700; }
.pc-seg-list__icon { display: grid; place-items: center; width: 36px; height: 36px; flex: none; border-radius: var(--pc-radius-sm); background: var(--pc-yellow); color: var(--pc-black); }
.pc-seg-list__icon svg { width: 20px; height: 20px; }
@media (max-width: 479px) { .pc-seg-list { grid-template-columns: 1fr; } }
.pc-club-expand .pc-lead { margin-bottom: var(--pc-space-6); }

/* ---------- Páginas de detalhe ---------- */
.pc-club-detail-hero { position: relative; overflow: hidden; padding-block: var(--pc-space-8) var(--pc-space-12); }
.pc-club-detail-hero .pc-container { position: relative; z-index: 1; }
.pc-breadcrumb { display: flex; flex-wrap: wrap; align-items: center; gap: var(--pc-space-2); margin-bottom: var(--pc-space-8); font-size: var(--pc-text-sm); color: var(--pc-text-muted); }
.pc-breadcrumb a { color: inherit; text-decoration: none; }
.pc-breadcrumb a:hover { color: var(--pc-yellow); }
.pc-breadcrumb svg { width: 14px; height: 14px; }
.pc-club-detail-hero__inner { display: grid; gap: var(--pc-space-6); align-items: start; }
@media (min-width: 700px) { .pc-club-detail-hero__inner { grid-template-columns: auto 1fr; gap: var(--pc-space-8); } }
.pc-club-detail-hero__inner--photo { align-items: center; }
@media (min-width: 700px) { .pc-club-detail-hero__inner--photo { grid-template-columns: minmax(0, 1fr) minmax(0, 0.8fr); } }
.pc-club-detail-hero__photo img {
	display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover;
	border-radius: var(--pc-radius-lg); box-shadow: 10px 10px 0 var(--pc-yellow);
}
@media (max-width: 699px) { .pc-club-detail-hero__photo { order: -1; } .pc-club-detail-hero__photo img { width: calc(100% - 8px); box-shadow: 6px 6px 0 var(--pc-yellow); } }
.pc-club-detail-hero__icon { display: grid; place-items: center; width: 96px; height: 96px; border-radius: 28px; background: var(--pc-yellow); color: var(--pc-black); transform: rotate(-6deg); }
.pc-club-detail-hero__icon svg { width: 46px; height: 46px; }
.pc-club-detail-hero__logo { width: 112px; height: 112px; border-radius: var(--pc-radius-lg); overflow: hidden; background: var(--pc-white); }
.pc-club-detail-hero__logo img { width: 100%; height: 100%; object-fit: contain; padding: 10px; }
.pc-club-detail-hero__logo .pc-pcard__mono { font-size: var(--pc-text-3xl); background: #222; }
.pc-club-detail-hero__title { margin: var(--pc-space-4) 0 var(--pc-space-3); font-size: var(--pc-text-4xl); }
.pc-club-detail-hero .pc-lead { margin: 0; }
.pc-detail { display: grid; gap: var(--pc-space-8); align-items: start; }
@media (min-width: 960px) { .pc-detail { grid-template-columns: minmax(0, 1fr) 360px; gap: var(--pc-space-12); } .pc-detail__aside { position: sticky; top: calc(var(--pc-header-h) + var(--pc-space-6)); } }
.pc-detail__section + .pc-detail__section { margin-top: var(--pc-space-10); padding-top: var(--pc-space-8); border-top: 1px solid var(--pc-border); }
.pc-prose { color: var(--pc-gray-700); }
.pc-prose > :last-child { margin-bottom: 0; }
.pc-summary { padding: var(--pc-space-6); gap: var(--pc-space-5); border-width: 2px; border-color: var(--pc-black); }
.pc-summary__list { display: grid; gap: var(--pc-space-4); margin: 0; }
.pc-summary__list dt { font-size: var(--pc-text-2xs); font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; color: var(--pc-text-muted); margin-bottom: var(--pc-space-1); }
.pc-summary__list dd { margin: 0; font-weight: 600; }
.pc-summary__list dd svg { width: 14px; height: 14px; vertical-align: -2px; }
.pc-summary__strong { font-family: var(--pc-font-display); font-stretch: 112%; font-weight: 900 !important; font-size: var(--pc-text-xl); }
.pc-summary__back { font-size: var(--pc-text-sm); text-align: center; }
.pc-demo-callout { display: flex; gap: var(--pc-space-4); margin-bottom: var(--pc-space-8); padding: var(--pc-space-5); border-radius: var(--pc-radius-md); background: var(--pc-yellow-100); border: 2px solid var(--pc-yellow); }
.pc-demo-callout > svg { flex: none; width: 28px; height: 28px; }
.pc-demo-callout p { margin: 0; font-size: var(--pc-text-sm); }
.pc-demo-callout .pc-demo-callout__title { margin-bottom: var(--pc-space-1); font-weight: 800; font-size: var(--pc-text-base); }

/* ---------- Aviso demo ---------- */
.pc-demo-notice { align-items: flex-start; flex-wrap: nowrap; }
.pc-demo-notice svg { flex: none; width: 20px; height: 20px; margin-top: 1px; }
.pc-demo-notice--compact { font-size: var(--pc-text-xs); }

/* ---------- Simulador ---------- */
.pc-sim {
	display: grid; gap: var(--pc-space-8); padding: clamp(1.5rem, 1rem + 2.5vw, 3rem);
	border-radius: var(--pc-radius-lg); background: var(--pc-surface); border: 1px solid var(--pc-border); box-shadow: var(--pc-shadow-md);
}
@media (min-width: 960px) { .pc-sim { grid-template-columns: 0.9fr 1.1fr; gap: var(--pc-space-12); align-items: center; } }
.pc-sim__intro h2 { margin-bottom: var(--pc-space-3); }
.pc-sim__intro .pc-demo-notice { margin: var(--pc-space-5) 0 0; }
.pc-sim__form { display: grid; gap: var(--pc-space-5); }
.pc-sim__range { display: flex; align-items: center; gap: var(--pc-space-4); }
.pc-sim__range input[type="range"] {
	--pc-range: 17%; flex: 1; height: 8px; border-radius: 99px; appearance: none; -webkit-appearance: none; cursor: pointer;
	background: linear-gradient(90deg, var(--pc-black) var(--pc-range), var(--pc-gray-200) var(--pc-range));
}
.pc-sim__range input[type="range"]::-webkit-slider-thumb { -webkit-appearance: none; width: 28px; height: 28px; border-radius: 50%; background: var(--pc-yellow); border: 3px solid var(--pc-black); }
.pc-sim__range input[type="range"]::-moz-range-thumb { width: 22px; height: 22px; border-radius: 50%; background: var(--pc-yellow); border: 3px solid var(--pc-black); }
.pc-sim__spend { min-width: 96px; text-align: right; font-family: var(--pc-font-display); font-stretch: 112%; font-weight: 900; font-size: var(--pc-text-xl); }
.pc-sim__result { padding: var(--pc-space-5) var(--pc-space-6); border-radius: var(--pc-radius-md); background: var(--pc-black); color: var(--pc-white); position: relative; overflow: hidden; }
.pc-sim__result::after { content: ""; position: absolute; right: -20px; top: 0; bottom: 0; width: 40%; background: repeating-linear-gradient(100deg, transparent 0 26px, rgba(255, 204, 0, 0.18) 26px 34px, transparent 34px 68px); }
.pc-sim__label { margin: 0; font-size: var(--pc-text-xs); font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; color: var(--pc-yellow); }
.pc-sim__value { position: relative; z-index: 1; margin: var(--pc-space-1) 0; font-family: var(--pc-font-display); font-stretch: 112%; font-weight: 900; font-size: var(--pc-text-4xl); line-height: 1.05; }
.pc-sim__sub { position: relative; z-index: 1; margin: 0; font-size: var(--pc-text-sm); color: #B8B8B3; }

/* ---------- Seja um parceiro ---------- */
.pc-value-grid { display: grid; gap: var(--pc-space-4); }
@media (min-width: 640px) { .pc-value-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .pc-value-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.pc-value {
	position: relative; display: flex; flex-direction: column; gap: var(--pc-space-3); padding: var(--pc-space-6);
	border-radius: var(--pc-radius-md); background: var(--pc-surface); border: 1px solid var(--pc-border);
	transition: border-color var(--pc-duration) var(--pc-ease), transform var(--pc-duration) var(--pc-ease), box-shadow var(--pc-duration) var(--pc-ease);
}
.pc-value::before { content: ""; position: absolute; left: var(--pc-space-6); right: var(--pc-space-6); top: 0; height: 3px; background: var(--pc-yellow); border-radius: 0 0 3px 3px; transform: scaleX(0.3); transform-origin: left; transition: transform 300ms var(--pc-ease); }
.pc-value:hover { border-color: var(--pc-black); transform: translateY(-3px); box-shadow: var(--pc-shadow-md); }
.pc-value:hover::before { transform: scaleX(1); }
.pc-value__icon { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 14px; background: var(--pc-black); color: var(--pc-yellow); }
.pc-value__icon svg { width: 26px; height: 26px; }
.pc-value__title { margin: var(--pc-space-2) 0 0; font-size: var(--pc-text-lg); }
.pc-value__text { margin: 0; color: var(--pc-text-muted); font-size: var(--pc-text-sm); }

.pc-mod { padding: var(--pc-space-6); gap: var(--pc-space-3); border-width: 2px; }
.pc-mod:hover { border-color: var(--pc-black); box-shadow: var(--pc-shadow-md); transform: translateY(-3px); }
.pc-mod--accent { border-color: var(--pc-yellow); }
.pc-mod__icon { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 14px; background: var(--pc-yellow); color: var(--pc-black); }
.pc-mod__icon svg { width: 26px; height: 26px; }
.pc-mod__title { margin: var(--pc-space-2) 0 0; font-size: var(--pc-text-2xl); }
.pc-mod__for { margin: 0; font-size: var(--pc-text-sm); color: var(--pc-text-muted); }
.pc-mod__for strong { color: var(--pc-text); }
.pc-mod__label { margin: var(--pc-space-2) 0 0; font-size: var(--pc-text-2xs); font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; color: var(--pc-text-muted); }
.pc-mod .pc-check-list { margin: 0; }
.pc-mod__tag { margin-top: auto; align-self: flex-start; padding-top: var(--pc-space-3); font-size: var(--pc-text-xs); font-weight: 700; color: var(--pc-text-muted); }
.pc-mod__tag::before { content: ""; display: inline-block; width: 8px; height: 8px; margin-right: 0.4rem; border-radius: 50%; background: var(--pc-yellow); vertical-align: 0; }

.pc-form-layout { display: grid; gap: var(--pc-space-8); align-items: start; }
@media (min-width: 1024px) { .pc-form-layout { grid-template-columns: 0.8fr 1.2fr; gap: var(--pc-space-12); } .pc-form-layout__intro { position: sticky; top: calc(var(--pc-header-h) + var(--pc-space-8)); } }
.pc-form-perks { list-style: none; margin: var(--pc-space-6) 0 0; padding: 0; display: grid; gap: var(--pc-space-3); }
.pc-form-perks li { display: flex; align-items: center; gap: var(--pc-space-3); font-weight: 600; font-size: var(--pc-text-sm); }
.pc-form-perks svg { flex: none; width: 34px; height: 34px; padding: 7px; border-radius: 50%; background: var(--pc-yellow); color: var(--pc-black); }
.pc-club-form .pc-form-panel { border-top: 6px solid var(--pc-yellow); }

/* Ajustes do formulário de leads (template do plugin) */
.pc-lead-form .pc-req { color: var(--pc-error); }
.pc-lead-form .pc-optional { font-weight: 400; color: var(--pc-text-muted); font-size: var(--pc-text-xs); }
.pc-lead-form .pc-field__pair { display: grid; grid-template-columns: 1fr 96px; gap: var(--pc-space-2); }
.pc-lead-form .pc-form__actions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--pc-space-4); margin-top: var(--pc-space-6); }
.pc-lead-form .pc-form__note { margin: 0; flex: 1 1 220px; font-size: var(--pc-text-xs); color: var(--pc-text-muted); }
.pc-lead-form .pc-alert:focus { outline: 3px solid var(--pc-focus); outline-offset: 2px; }
.pc-lead-form .pc-input:user-invalid, .pc-lead-form .pc-select:user-invalid { border-color: var(--pc-error); }
@media (max-width: 559px) { .pc-lead-form .pc-form__actions .pc-btn { width: 100%; } }

/* ---------- Animações de entrada ---------- */
.pc-reveal-on [data-pc-reveal] { opacity: 0; transform: translateY(16px); transition: opacity 520ms var(--pc-ease) var(--pc-delay, 0ms), transform 520ms var(--pc-ease) var(--pc-delay, 0ms); }
.pc-reveal-on [data-pc-reveal].is-visible { opacity: 1; transform: none; }
.pc-reveal-on .pc-pplan--recommended[data-pc-reveal].is-visible { transform: translateY(-12px); }
@media (max-width: 959px) { .pc-reveal-on .pc-pplan--recommended[data-pc-reveal].is-visible { transform: none; } }

@media (prefers-reduced-motion: reduce) {
	.pc-club *, .pc-club *::before, .pc-club *::after { transition-duration: 0ms !important; animation-duration: 0ms !important; }
	.pc-pplan:hover, .pc-bcard:hover, .pc-pcard:hover, .pc-value:hover, .pc-mod:hover, .pc-filter-tile:hover { transform: none; }
	.pc-pplan--recommended:hover { transform: translateY(-12px); }
}

/* ---------- Ajustes de telas pequenas ---------- */
@media (max-width: 559px) {
	.pc-club .pc-btn--lg { white-space: normal; text-align: center; line-height: 1.2; padding-block: 0.7rem; }
	.pc-club-hero__actions .pc-btn, .pc-club-cta__actions .pc-btn, .pc-club-expand .pc-btn { width: 100%; }
	.pc-compare__table { min-width: 520px; }
	.pc-bcard__media:not(.pc-bcard__media--photo) { aspect-ratio: 16 / 6; }
	.pc-bcard__media--photo, .pc-bcard--featured .pc-bcard__media--photo { aspect-ratio: 16 / 9; }
	.pc-bcard__icon { width: 60px; height: 60px; border-radius: 18px; }
	.pc-compare__table th[scope="row"], .pc-compare__table thead th:first-child { min-width: 150px; max-width: 170px; }
	.pc-compare__table th, .pc-compare__table td { padding: var(--pc-space-3); }
}
@media (max-width: 959px) { .pc-club--parceiros .pc-club-hero__photo { object-position: 100% 40%; } }

/* ==========================================================================
   Selo de status dos benefícios
   ========================================================================== */
.pc-status {
	display: inline-flex; align-items: center; gap: 0.4rem; padding: 0.22rem 0.6rem; border-radius: var(--pc-radius-pill);
	font-size: var(--pc-text-2xs); font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; white-space: nowrap;
	background: var(--pc-gray-200); color: var(--pc-gray-700);
}
.pc-status__dot { width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.pc-status--disponivel { background: var(--pc-success-bg); color: var(--pc-success); }
.pc-status--em_implantacao { background: var(--pc-yellow-100); color: #6B5400; }
.pc-status--planejado { background: var(--pc-gray-200); color: var(--pc-gray-700); }
.pc-status--disponivel .pc-status__dot { box-shadow: 0 0 0 3px rgba(28, 122, 58, 0.18); }
.pc-surface-dark .pc-status--planejado { background: #2A2A2A; color: #CFCFC9; }
.pc-surface-dark .pc-status--em_implantacao { background: rgba(255, 204, 0, 0.16); color: var(--pc-yellow); }
.pc-surface-dark .pc-status--disponivel { background: rgba(28, 122, 58, 0.25); color: #7CDA9C; }

/* ==========================================================================
   HOME (landing de conversão)
   ========================================================================== */
.pc-club--home .pc-section + .pc-section:not(.pc-surface-dark) { padding-top: var(--pc-section); }
.pc-home-center { display: flex; justify-content: center; margin-top: var(--pc-space-10); }

/* 1. Hero */
.pc-home-hero { position: relative; overflow: hidden; min-height: clamp(560px, 82vh, 760px); display: flex; align-items: center; padding-block: clamp(3rem, 2rem + 5vw, 6rem) clamp(7rem, 5rem + 6vw, 9.5rem); }
.pc-home-hero__bg { position: absolute; inset: 0; }
.pc-home-hero__img { width: 100%; height: 100%; object-fit: cover; object-position: 70% 30%; }
.pc-home-hero__shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(18,18,18,0.97) 0%, rgba(18,18,18,0.9) 34%, rgba(18,18,18,0.45) 62%, rgba(18,18,18,0.15) 100%), linear-gradient(0deg, rgba(18,18,18,0.85) 0%, rgba(18,18,18,0) 30%); }
.pc-home-hero .pc-hero__lines { z-index: 1; opacity: 0.1; }
.pc-home-hero__inner { position: relative; z-index: 2; }
.pc-home-hero__inner > * { max-width: 620px; }
.pc-home-hero__inner > .pc-home-hero__actions { max-width: 760px; }
.pc-home-hero__tag {
	display: inline-flex; align-items: center; gap: 0.55rem; margin: 0 0 var(--pc-space-5); padding: 0.45rem 0.9rem 0.45rem 0.6rem; border-radius: var(--pc-radius-pill);
	background: var(--pc-yellow); color: var(--pc-black);
	font-family: var(--pc-font-display); font-stretch: var(--pc-stretch-display); font-weight: 900; font-size: var(--pc-text-xs); letter-spacing: 0.1em; text-transform: uppercase;
}
.pc-home-hero__tag svg { width: 20px; height: 20px; }
.pc-home-hero__title { margin: 0 0 var(--pc-space-4); font-size: clamp(2.6rem, 1.6rem + 4.6vw, 5rem); line-height: 0.98; letter-spacing: -0.01em; }
.pc-home-hero__sub { margin: 0 0 var(--pc-space-3); font-family: var(--pc-font-display); font-stretch: 105%; font-weight: 800; font-size: clamp(1.2rem, 1rem + 0.9vw, 1.6rem); line-height: 1.25; color: var(--pc-yellow); max-width: 30ch; }
.pc-home-hero__text { margin: 0; color: #D6D6D0; font-size: var(--pc-text-lg); max-width: 52ch; }
.pc-home-hero__actions { --pc-cluster-gap: 0.75rem; margin-top: var(--pc-space-8); }
.pc-home-hero .pc-btn--outline { --_bd: rgba(255, 255, 255, 0.7); backdrop-filter: blur(4px); background: rgba(18, 18, 18, 0.35); }
.pc-home-hero__trio { list-style: none; margin: var(--pc-space-8) 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: var(--pc-space-2) var(--pc-space-6); }
.pc-home-hero__trio li { display: inline-flex; align-items: center; gap: 0.5rem; font-weight: 700; font-size: var(--pc-text-sm); color: var(--pc-white); }
.pc-home-hero__trio svg { width: 22px; height: 22px; color: var(--pc-yellow); }
@media (max-width: 767px) {
	.pc-home-hero { min-height: 0; align-items: flex-end; padding-top: 0; }
	.pc-home-hero__bg { position: relative; inset: auto; height: 300px; margin-bottom: -90px; }
	.pc-home-hero { flex-direction: column; align-items: stretch; }
	.pc-home-hero__shade { background: linear-gradient(180deg, rgba(18,18,18,0) 0%, rgba(18,18,18,0) 140px, rgba(18,18,18,0.92) 300px, #121212 380px); }
	.pc-home-hero__img { object-position: 62% 25%; }
	.pc-home-hero__actions .pc-btn { width: 100%; }
}

/* 2. Pilares */
.pc-home-pillars { position: relative; z-index: 3; margin-top: clamp(-6.5rem, -4rem - 3vw, -4.5rem); padding-bottom: var(--pc-space-4); }
.pc-pillar-grid { display: grid; gap: var(--pc-space-4); }
@media (min-width: 640px) { .pc-pillar-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .pc-pillar-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.pc-pillar {
	position: relative; display: flex; flex-direction: column; gap: var(--pc-space-3); padding: var(--pc-space-6);
	border-radius: var(--pc-radius-lg); background: var(--pc-white); border: 1px solid var(--pc-border); box-shadow: var(--pc-shadow-lg);
	overflow: hidden; transition: transform var(--pc-duration) var(--pc-ease), box-shadow var(--pc-duration) var(--pc-ease), border-color var(--pc-duration) var(--pc-ease);
}
.pc-pillar::after { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 4px; background: var(--pc-yellow); transform: scaleX(0); transform-origin: left; transition: transform 320ms var(--pc-ease); }
.pc-pillar:hover { transform: translateY(-4px); border-color: var(--pc-black); }
.pc-pillar:hover::after { transform: scaleX(1); }
.pc-pillar__top { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--pc-space-2); }
.pc-pillar__icon { display: grid; place-items: center; width: 60px; height: 60px; border-radius: 18px; background: var(--pc-black); color: var(--pc-yellow); transition: transform var(--pc-duration) var(--pc-ease); }
.pc-pillar:hover .pc-pillar__icon { transform: rotate(-6deg) scale(1.05); }
.pc-pillar__icon svg { width: 30px; height: 30px; }
.pc-pillar__title { position: relative; z-index: 1; margin: var(--pc-space-2) 0 0; font-size: var(--pc-text-xl); text-transform: uppercase; font-weight: 900; line-height: 1.12; }
.pc-pillar__text { position: relative; z-index: 1; margin: 0; color: var(--pc-text-muted); font-size: var(--pc-text-sm); }
.pc-pillar__link { position: relative; z-index: 1; margin-top: auto; display: inline-flex; align-items: center; gap: 0.4rem; padding-top: var(--pc-space-3); font-weight: 800; font-size: var(--pc-text-sm); text-decoration: none; }
.pc-pillar__link svg { width: 16px; height: 16px; transition: transform var(--pc-duration) var(--pc-ease); }
.pc-pillar__link::after { content: ""; position: absolute; inset: -400px -40px -40px; } /* card inteiro clicável */
.pc-pillar:hover .pc-pillar__link svg { transform: translateX(4px); }
.pc-home-pillars__note { display: flex; gap: var(--pc-space-2); align-items: flex-start; margin: var(--pc-space-5) 0 0; font-size: var(--pc-text-xs); color: var(--pc-text-muted); max-width: 90ch; }
.pc-home-pillars__note svg { flex: none; width: 16px; height: 16px; margin-top: 1px; }

/* 3. Por que fazer parte */
.pc-home-why__grid { display: grid; gap: var(--pc-space-10); align-items: center; }
@media (min-width: 960px) { .pc-home-why__grid { grid-template-columns: 0.95fr 1.05fr; gap: var(--pc-space-16); } }
.pc-home-why__img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; object-position: 72% center; border-radius: var(--pc-radius-lg); box-shadow: -14px 14px 0 var(--pc-yellow); }
@media (max-width: 959px) { .pc-home-why__img { aspect-ratio: 16 / 10; box-shadow: -8px 8px 0 var(--pc-yellow); margin-left: 8px; width: calc(100% - 8px); } }
.pc-home-why__copy h2 { text-transform: uppercase; font-weight: 900; max-width: 18ch; }
.pc-why-list { list-style: none; margin: var(--pc-space-8) 0 0; padding: 0; display: grid; gap: var(--pc-space-5); }
.pc-why-list li { display: flex; gap: var(--pc-space-4); align-items: flex-start; padding-bottom: var(--pc-space-5); border-bottom: 1px solid var(--pc-border); }
.pc-why-list li:last-child { border-bottom: 0; padding-bottom: 0; }
.pc-why-list__icon { flex: none; display: grid; place-items: center; width: 48px; height: 48px; border-radius: 14px; background: var(--pc-yellow); color: var(--pc-black); }
.pc-why-list__icon svg { width: 24px; height: 24px; }
.pc-why-list h3 { margin: 0 0 var(--pc-space-1); font-size: var(--pc-text-lg); }
.pc-why-list p { margin: 0; color: var(--pc-text-muted); font-size: var(--pc-text-sm); }

/* 4. Loja (secundária) */
.pc-hprod-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--pc-space-3); }
@media (min-width: 1024px) { .pc-hprod-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--pc-space-5); } }
.pc-hprod { display: flex; flex-direction: column; border-radius: var(--pc-radius-md); background: var(--pc-surface); border: 1px solid var(--pc-border); overflow: hidden; transition: border-color var(--pc-duration) var(--pc-ease), box-shadow var(--pc-duration) var(--pc-ease); }
.pc-hprod:hover { border-color: var(--pc-black); box-shadow: var(--pc-shadow-md); }
.pc-hprod__media { position: relative; display: block; aspect-ratio: 1; background: var(--pc-white); overflow: hidden; }
.pc-hprod__media img { width: 100%; height: 100%; object-fit: contain; transition: transform 400ms var(--pc-ease); }
.pc-hprod:hover .pc-hprod__media img { transform: scale(1.04); }
.pc-hprod__save { position: absolute; left: var(--pc-space-2); top: var(--pc-space-2); padding: 0.2rem 0.55rem; border-radius: var(--pc-radius-xs); background: var(--pc-yellow); color: var(--pc-black); font-size: var(--pc-text-2xs); font-weight: 900; letter-spacing: 0.04em; text-transform: uppercase; }
.pc-hprod__body { display: flex; flex-direction: column; gap: var(--pc-space-2); padding: var(--pc-space-4); flex: 1; }
.pc-hprod__title { margin: 0; font-family: var(--pc-font-body); font-size: var(--pc-text-sm); font-weight: 700; line-height: 1.3; }
.pc-hprod__title a { text-decoration: none; }
.pc-hprod__prices { margin-top: auto; display: grid; gap: 2px; }
.pc-hprod__prices p { margin: 0; }
.pc-hprod__public { font-size: var(--pc-text-xs); color: var(--pc-text-muted); }
.pc-hprod__member { display: flex; flex-direction: column; }
.pc-hprod__label { font-size: var(--pc-text-2xs); font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; color: var(--pc-text-muted); }
.pc-hprod__member strong { font-family: var(--pc-font-display); font-stretch: 112%; font-weight: 900; font-size: var(--pc-text-xl); }
.pc-hprod__member strong .woocommerce-Price-amount { background: linear-gradient(transparent 62%, var(--pc-yellow) 62%); }
.pc-hprod__plan { font-size: var(--pc-text-2xs); color: var(--pc-text-muted); }
.pc-home-store__note { margin: var(--pc-space-4) 0 0; font-size: var(--pc-text-xs); color: var(--pc-text-muted); }

/* 5. Você e sua família */
.pc-home-family__grid { display: grid; gap: var(--pc-space-10); }
@media (min-width: 1024px) { .pc-home-family__grid { grid-template-columns: 0.9fr 1.1fr; gap: var(--pc-space-12); align-items: start; } }
.pc-home-family__copy h2 { text-transform: uppercase; font-weight: 900; max-width: 16ch; }
.pc-home-family__media { margin: var(--pc-space-8) 0 0; }
.pc-home-family__img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 10; object-fit: cover; border-radius: var(--pc-radius-lg); box-shadow: 12px 12px 0 var(--pc-yellow); }
@media (max-width: 1023px) { .pc-home-family__img { width: calc(100% - 8px); box-shadow: 8px 8px 0 var(--pc-yellow); } }
.pc-family-cards { display: grid; gap: var(--pc-space-4); }
@media (min-width: 640px) { .pc-family-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.pc-family-card { display: flex; flex-direction: column; gap: var(--pc-space-3); padding: var(--pc-space-6); border-radius: var(--pc-radius-md); background: #1C1C1C; border: 1px solid #2E2E2E; transition: border-color var(--pc-duration) var(--pc-ease), transform var(--pc-duration) var(--pc-ease); }
.pc-family-card:hover { border-color: var(--pc-yellow); transform: translateY(-3px); }
.pc-family-card__icon { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 50%; background: var(--pc-yellow); color: var(--pc-black); }
.pc-family-card__icon svg { width: 26px; height: 26px; }
.pc-family-card__title { margin: var(--pc-space-1) 0 0; font-size: var(--pc-text-lg); }
.pc-family-card__text { margin: 0; color: var(--pc-text-muted); font-size: var(--pc-text-sm); }
.pc-family-card__foot { margin-top: auto; padding-top: var(--pc-space-3); display: flex; align-items: center; justify-content: space-between; gap: var(--pc-space-2); border-top: 1px solid #2E2E2E; }
.pc-family-card__foot a { font-size: var(--pc-text-xs); font-weight: 700; color: var(--pc-yellow); text-decoration: none; }
.pc-family-card__foot a:hover { text-decoration: underline; }
.pc-family-cards__legal { grid-column: 1 / -1; margin: var(--pc-space-2) 0 0; font-size: var(--pc-text-xs); color: var(--pc-text-muted); }

/* 7. Rede */
.pc-network-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--pc-space-3); }
@media (min-width: 768px) { .pc-network-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .pc-network-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); } }
.pc-network-tile { display: flex; flex-direction: column; gap: var(--pc-space-3); height: 100%; padding: var(--pc-space-5); border-radius: var(--pc-radius-md); background: #1C1C1C; border: 1px solid #2E2E2E; text-decoration: none; color: var(--pc-white); transition: border-color var(--pc-duration) var(--pc-ease), background-color var(--pc-duration) var(--pc-ease), transform var(--pc-duration) var(--pc-ease); }
.pc-network-tile:hover { border-color: var(--pc-yellow); background: #222; transform: translateY(-3px); }
.pc-network-tile__icon svg { width: 30px; height: 30px; color: var(--pc-yellow); }
.pc-network-tile__name { font-weight: 800; font-size: var(--pc-text-sm); line-height: 1.25; }
.pc-network-tile__count { margin-top: auto; font-size: var(--pc-text-xs); color: var(--pc-text-muted); }
.pc-network-logos { list-style: none; margin: var(--pc-space-8) 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: var(--pc-space-3); }
.pc-network-logos a { display: grid; place-items: center; min-width: 140px; height: 72px; padding: var(--pc-space-3); border-radius: var(--pc-radius-md); background: var(--pc-white); color: var(--pc-black); font-weight: 800; text-decoration: none; }
.pc-network-logos img { max-height: 48px; width: auto; }
.pc-home-network__note { margin: var(--pc-space-6) 0 0; font-size: var(--pc-text-sm); color: var(--pc-text-muted); }
.pc-club-head__aside .pc-btn { white-space: nowrap; }

/* 8. Como funciona */
.pc-home-how .pc-flow__icon { box-shadow: 0 0 0 6px var(--pc-offwhite); }
.pc-home-how__demo { display: flex; justify-content: center; align-items: center; gap: var(--pc-space-2); margin: var(--pc-space-8) 0 0; font-size: var(--pc-text-xs); color: var(--pc-text-muted); text-align: center; }
.pc-home-how__demo svg { width: 16px; height: 16px; flex: none; }

/* 9. Parceiros (empresas) */
.pc-home-partner-cta { padding-top: 0; }
.pc-hpartner { position: relative; overflow: hidden; display: grid; gap: var(--pc-space-8); align-items: center; padding: clamp(1.75rem, 1rem + 3vw, 3.5rem); border-radius: var(--pc-radius-lg); }
@media (min-width: 960px) { .pc-hpartner { grid-template-columns: 1.1fr 0.9fr; gap: var(--pc-space-12); } }
.pc-hpartner::before { content: ""; position: absolute; left: -10%; bottom: -60%; width: 60%; height: 120%; background: repeating-linear-gradient(100deg, transparent 0 40px, rgba(255, 204, 0, 0.08) 40px 52px, transparent 52px 104px); pointer-events: none; }
.pc-hpartner__copy { position: relative; }
.pc-hpartner__copy h2 { text-transform: uppercase; font-weight: 900; max-width: 18ch; }
.pc-hpartner__copy p { color: var(--pc-text-muted); font-size: var(--pc-text-lg); margin-bottom: var(--pc-space-6); max-width: 46ch; }
.pc-hpartner__img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; object-position: 75% center; border-radius: var(--pc-radius-md); }
@media (max-width: 559px) { .pc-hpartner .pc-btn { width: 100%; } }

/* Revelação dos pilares no hero (sem deslocar o layout) */
.pc-reveal-on .pc-pillar[data-pc-reveal] { transform: translateY(24px); }
.pc-reveal-on .pc-pillar[data-pc-reveal].is-visible { transform: none; }
@media (prefers-reduced-motion: reduce) { .pc-pillar:hover, .pc-family-card:hover, .pc-network-tile:hover { transform: none; } }

/* Planos na home: rolagem lateral no celular (evita uma página muito longa) */
@media (max-width: 959px) {
	.pc-home-plans .pc-pplan-grid { grid-auto-flow: column; grid-auto-columns: min(86%, 380px); grid-template-columns: none; overflow-x: auto; scroll-snap-type: x mandatory; padding: var(--pc-space-5) var(--pc-space-1) var(--pc-space-4); margin-inline: calc(var(--pc-gutter) * -1); padding-inline: var(--pc-gutter); scrollbar-width: thin; }
	.pc-home-plans .pc-pplan { scroll-snap-align: center; }
	.pc-home-plans .pc-pplan--recommended { transform: none; }
}

/* Pilares nas páginas internas (sem sobrepor o herói) */
.pc-club-pillars .pc-pillar { box-shadow: var(--pc-shadow-sm); }
.pc-club-pillars .pc-home-pillars__note { margin-top: var(--pc-space-5); }

/* Status nos cards e no resumo do benefício */
.pc-bcard__status { margin-top: calc(var(--pc-space-1) * -1); }
.pc-compare__tbd { font-size: var(--pc-text-xs); color: var(--pc-text-muted); }
.pc-conditions { padding: var(--pc-space-5); border-radius: var(--pc-radius-md); background: var(--pc-surface); border: 1px solid var(--pc-border); border-left: 4px solid var(--pc-yellow); }
.pc-conditions p { margin: 0; }
