@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap');

:root {
  --pal-primary: #e8192c;
  --pal-primary-text: #ffffff;
  --pal-link: #e8192c;
  --pal-bg: #f0f1f4;
  --pal-surface: #ffffff;
  --pal-border: #dde3ea;
  --pal-text: #0f172a;
  --pal-text-muted: #64748b;
  --pal-button-radius: 12px;
  --pal-card-radius: 18px;
  --pal-input-radius: 12px;
  --pal-font: 'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --pal-font-size: 14px;
  --pal-heading-weight: 700;
}

.pal-portal-panel,
.pal-portal-auth,
.pal-portal-plans-page,
.pal-portal-support {
  color: var(--pal-text);
  font-family: var(--pal-font);
  font-size: var(--pal-font-size);
  line-height: 1.55;
}

/* ── PAINEL — grid sidebar + conteúdo (igual author-hub-panel) ── */
.pal-portal-panel {
  display: grid;
  grid-template-columns: 240px 1fr;
  gap: 24px;
  align-items: start;
  font-family: var(--pal-font, 'DM Sans', sans-serif);
}

/* ── NAV LATERAL ── */
.pal-portal-nav {
  display: flex;
  flex-direction: column;
  gap: 6px;
  position: sticky;
  top: 24px;
}

.pal-portal-nav__user {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 16px;
  background: var(--pal-surface, #fff);
  border: 1px solid var(--pal-border, #dde3ea);
  border-radius: 14px;
  margin-bottom: 6px;
}

.pal-portal-nav__av {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--pal-primary, #e8192c);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 13px;
  color: #fff;
  flex-shrink: 0;
}

.pal-portal-nav__name {
  font-size: 13px;
  font-weight: 700;
  color: var(--pal-text, #0f172a);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.pal-portal-nav__link {
  display: block;
  background: var(--pal-surface, #fff);
  border: 1px solid var(--pal-border, #dde3ea);
  border-radius: 14px;
  padding: 13px 16px;
  text-decoration: none;
  color: var(--pal-text, #0f172a);
  font-weight: 700;
  font-size: 14px;
  transition: all .15s;
}

.pal-portal-nav__link:hover {
  border-color: var(--pal-primary, #e8192c);
  color: var(--pal-primary, #e8192c);
  text-decoration: none;
}

.pal-portal-nav__link.is-active {
  background: var(--pal-primary, #e8192c);
  color: #fff;
  border-color: var(--pal-primary, #e8192c);
}

.pal-portal-nav__link--sair {
  background: transparent;
  color: var(--pal-text-muted, #64748b);
  border: 1px solid transparent;
  font-size: 13px;
  font-weight: 600;
  padding: 10px 16px;
  margin-top: 4px;
}

.pal-portal-nav__link--sair:hover {
  border-color: var(--pal-border, #dde3ea);
  color: var(--pal-text, #0f172a);
}

/* ── CONTEÚDO ── */
.pal-portal-content { display: grid; gap: 18px; min-width: 0; }
.pal-portal-actions { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; }

.pal-portal-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 14px;
}

.pal-portal-stat,
.pal-portal-card,
.pal-portal-plan-card,
.pal-portal-empty {
  background: var(--pal-surface);
  border: 1px solid var(--pal-border);
  border-radius: var(--pal-card-radius);
  box-shadow: 0 2px 10px rgba(15,23,42,.04);
}

.pal-portal-stat { padding: 18px; }
.pal-portal-stat__label {
  color: var(--pal-text-muted);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .05em;
  margin-bottom: 8px;
  text-transform: uppercase;
}
.pal-portal-stat__value {
  color: var(--pal-text);
  display: block;
  font-size: 32px;
  font-weight: 800;
  line-height: 1;
}

.pal-portal-card { overflow: hidden; }
.pal-portal-card__head {
  align-items: center;
  border-bottom: 1px solid var(--pal-border);
  display: flex;
  gap: 12px;
  justify-content: space-between;
  padding: 16px 20px;
}
.pal-portal-card__title {
  color: var(--pal-text);
  font-size: 15px;
  font-weight: var(--pal-heading-weight);
  margin: 0;
}
.pal-portal-card__body { padding: 20px; }

.pal-portal-btn {
  background: var(--pal-primary);
  border: 0;
  border-radius: var(--pal-button-radius);
  color: var(--pal-primary-text);
  cursor: pointer;
  display: inline-block;
  font-family: var(--pal-font);
  font-size: var(--pal-font-size);
  font-weight: 700;
  line-height: 1;
  padding: 12px 20px;
  text-align: center;
  text-decoration: none;
  transition: all .15s;
}
.pal-portal-btn:hover { color: var(--pal-primary-text); opacity: .88; }
.pal-portal-btn--secondary {
  background: var(--pal-surface);
  border: 1px solid var(--pal-border);
  color: var(--pal-text);
}
.pal-portal-btn--secondary:hover { background: var(--pal-bg); color: var(--pal-text); }
.pal-portal-btn--sm { font-size: 13px; padding: 8px 14px; }
.pal-portal-btn--full { display: block; width: 100%; }

.pal-portal-table-wrap { overflow-x: auto; width: 100%; }
.pal-portal-table {
  background: var(--pal-surface);
  border: 1px solid var(--pal-border);
  border-collapse: collapse;
  border-radius: var(--pal-card-radius);
  overflow: hidden;
  width: 100%;
}
.pal-portal-table th,
.pal-portal-table td {
  border-bottom: 1px solid var(--pal-border);
  padding: 13px 16px;
  text-align: left;
  vertical-align: middle;
}
.pal-portal-table th {
  background: var(--pal-bg);
  color: var(--pal-text-muted);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.pal-portal-table tr:last-child td { border-bottom: 0; }
.pal-portal-table tr:hover td { background: var(--pal-bg); }

.pal-portal-form { display: grid; gap: 16px; }
.pal-portal-form label {
  color: var(--pal-text);
  display: block;
  font-size: 13px;
  font-weight: 700;
  margin-bottom: 6px;
}
.pal-portal-form input[type="text"],
.pal-portal-form input[type="email"],
.pal-portal-form input[type="tel"],
.pal-portal-form input[type="url"],
.pal-portal-form input[type="date"],
.pal-portal-form input[type="password"],
.pal-portal-form input[type="file"],
.pal-portal-form select,
.pal-portal-form textarea {
  background: var(--pal-surface);
  border: 1px solid var(--pal-border);
  border-radius: var(--pal-input-radius);
  box-sizing: border-box;
  color: var(--pal-text);
  font-family: var(--pal-font);
  font-size: var(--pal-font-size);
  padding: 12px 14px;
  transition: border-color .15s, box-shadow .15s;
  width: 100%;
}
.pal-portal-form input:focus,
.pal-portal-form select:focus,
.pal-portal-form textarea:focus {
  border-color: var(--pal-primary);
  box-shadow: 0 0 0 3px rgba(232,25,44,.1);
  outline: none;
}
.pal-portal-form textarea { min-height: 120px; resize: vertical; }
.pal-portal-grid-2 { display: grid; gap: 16px; grid-template-columns: 1fr 1fr; }

.pal-portal-badge {
  align-items: center;
  border-radius: 99px;
  display: inline-flex;
  font-size: 12px;
  font-weight: 700;
  padding: 4px 10px;
}
.pal-portal-badge--green { background: #e8f6ee; color: #0b7a3b; }
.pal-portal-badge--red { background: #fff1f2; color: #be123c; }
.pal-portal-badge--amber { background: #fff4dd; color: #9a6700; }
.pal-portal-badge--gray { background: #eef2f7; color: #475569; }
.pal-portal-badge--blue { background: #eef4ff; color: #1658b0; }

.pal-portal-plans-page { margin: 24px 0; }
.pal-portal-plans {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}
.pal-portal-plan-card { overflow: hidden; transition: all .2s; }
.pal-portal-plan-card:hover {
  border-color: var(--pal-primary);
  box-shadow: 0 4px 20px rgba(232,25,44,.1);
  transform: translateY(-2px);
}
.pal-portal-plan-card.is-featured { border-color: var(--pal-primary); }
.pal-portal-plan-card__badge {
  background: var(--pal-primary);
  color: var(--pal-primary-text);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .05em;
  padding: 6px;
  text-align: center;
}
.pal-portal-plan-card__head { border-bottom: 1px solid var(--pal-border); padding: 20px 22px 14px; }
.pal-portal-plan-card__name { font-size: 20px; font-weight: 800; margin: 0 0 8px; }
.pal-portal-plan-card__price { font-size: 30px; font-weight: 800; line-height: 1; }
.pal-portal-plan-card__price small { color: var(--pal-text-muted); font-size: 14px; font-weight: 500; }
.pal-portal-plan-card__desc { color: var(--pal-text-muted); font-size: 13px; margin-top: 6px; }
.pal-portal-plan-card__body { padding: 14px 22px; }
.pal-portal-plan-card__feature { display: flex; gap: 8px; margin-bottom: 8px; }
.pal-portal-plan-card__feature-mark { color: #0b7a3b; font-weight: 800; }
.pal-portal-plan-card__footer { border-top: 1px solid var(--pal-border); padding: 14px 22px; }

.pal-portal-empty { color: var(--pal-text-muted); padding: 32px; text-align: center; }
.pal-portal-empty strong { color: var(--pal-text); display: block; font-size: 16px; margin-bottom: 8px; }

/* ── PÁGINA PÚBLICA DE PLANOS ─────────────────────────────────────────── */
.pal-sales-page {
  --pal-sales-ink: #132235;
  --pal-sales-muted: #66758a;
  --pal-sales-red: #e51f3f;
  --pal-sales-red-dark: #bf1632;
  --pal-sales-paper: #fffdfa;
  --pal-sales-line: #e5eaf0;
  --pal-sales-soft: #f3f6fa;
  background: var(--pal-sales-paper);
  color: var(--pal-sales-ink);
  font-family: var(--pal-font);
  line-height: 1.55;
  margin: 0 calc(50% - 50vw);
  overflow: hidden;
}
.pal-sales-page *, .pal-sales-page *::before, .pal-sales-page *::after { box-sizing: border-box; }
.pal-sales-wrap { margin: 0 auto; max-width: 1180px; padding-left: 28px; padding-right: 28px; }
.pal-sales-eyebrow { color: var(--pal-sales-red); font-size: 11px; font-weight: 800; letter-spacing: .13em; margin: 0 0 10px; text-transform: uppercase; }
.pal-sales-hero { background: linear-gradient(125deg, #111f31 0%, #172a42 58%, #0e1827 100%); color: #fff; padding: 82px 0 76px; }
.pal-sales-hero__grid { align-items: center; display: grid; gap: 56px; grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr); }
.pal-sales-hero h1, .pal-sales-section h2, .pal-sales-cta h2 { font-size: clamp(34px, 4.6vw, 64px); font-weight: 700; letter-spacing: -.055em; line-height: 1.02; margin: 0; }
.pal-sales-hero h1 em { color: #ff4964; font-style: normal; }
.pal-sales-hero__lead { color: #d7e0ea; font-size: 18px; line-height: 1.65; margin: 24px 0 0; max-width: 690px; }
.pal-sales-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.pal-sales-button { align-items: center; border: 1px solid transparent; border-radius: 9px; display: inline-flex; font-size: 14px; font-weight: 800; justify-content: center; min-height: 46px; padding: 0 20px; text-decoration: none; transition: transform .18s ease, background-color .18s ease, border-color .18s ease; }
.pal-sales-button:hover { text-decoration: none; transform: translateY(-1px); }
.pal-sales-button--primary { background: var(--pal-sales-red); color: #fff; }
.pal-sales-button--primary:hover { background: var(--pal-sales-red-dark); color: #fff; }
.pal-sales-button--ghost { border-color: rgba(255,255,255,.45); color: #fff; }
.pal-sales-button--ghost:hover { background: rgba(255,255,255,.1); color: #fff; }
.pal-sales-hero__proof { background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.16); border-radius: 18px; padding: 28px; }
.pal-sales-hero__proof-kicker { color: #ff7589; font-size: 10px; font-weight: 800; letter-spacing: .13em; margin-bottom: 16px; }
.pal-sales-hero__proof strong { display: block; font-size: 24px; line-height: 1.18; }
.pal-sales-hero__proof span { color: #cbd7e4; display: block; margin-top: 12px; }
.pal-sales-section { padding: 76px 0; }
.pal-sales-section--audience { background: #fff; border-bottom: 1px solid var(--pal-sales-line); }
.pal-sales-audience { align-items: start; display: grid; gap: 48px; grid-template-columns: .8fr 1.2fr; }
.pal-sales-audience h2, .pal-sales-section__heading h2, .pal-sales-cta h2 { color: var(--pal-sales-ink); font-size: clamp(28px, 3.5vw, 44px); }
.pal-sales-audience > div > p:not(.pal-sales-eyebrow), .pal-sales-section__heading > p:not(.pal-sales-eyebrow) { color: var(--pal-sales-muted); font-size: 16px; margin: 16px 0 0; }
.pal-sales-benefits { display: grid; gap: 12px; grid-template-columns: repeat(3, 1fr); }
.pal-sales-benefit { border: 1px solid var(--pal-sales-line); border-radius: 13px; min-height: 135px; padding: 20px; }
.pal-sales-benefit b { display: block; font-size: 16px; line-height: 1.18; }
.pal-sales-benefit b::before { background: var(--pal-sales-red); border-radius: 999px; content: ''; display: block; height: 8px; margin-bottom: 16px; width: 8px; }
.pal-sales-benefit span { color: var(--pal-sales-muted); display: block; font-size: 13px; margin-top: 8px; }
.pal-sales-section--plans { background: var(--pal-sales-soft); }
.pal-sales-section__heading { margin: 0 auto 34px; max-width: 690px; text-align: center; }
.pal-sales-plans { align-items: stretch; display: grid; gap: 18px; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
.pal-sales-plan { background: #fff; border: 1px solid var(--pal-sales-line); border-radius: 15px; display: flex; flex-direction: column; min-width: 0; overflow: visible; position: relative; }
.pal-sales-plan.is-featured { border: 2px solid var(--pal-sales-red); box-shadow: 0 16px 34px rgba(174, 22, 48, .13); transform: translateY(-9px); }
.pal-sales-plan__ribbon { background: var(--pal-sales-red); border-radius: 999px; color: #fff; font-size: 11px; font-weight: 800; left: 50%; letter-spacing: .02em; padding: 6px 14px; position: absolute; top: -15px; transform: translateX(-50%); white-space: nowrap; }
.pal-sales-plan__top { border-bottom: 1px solid var(--pal-sales-line); padding: 28px 24px 18px; }
.pal-sales-plan__top h3 { font-size: 22px; line-height: 1.15; margin: 0; }
.pal-sales-plan__price { font-size: 34px; font-weight: 800; letter-spacing: -.05em; line-height: 1; margin-top: 15px; }
.pal-sales-plan__price small { color: var(--pal-sales-muted); font-size: 12px; font-weight: 600; letter-spacing: 0; margin-left: 2px; }
.pal-sales-plan__top p { color: var(--pal-sales-muted); font-size: 13px; margin: 14px 0 0; min-height: 40px; }
.pal-sales-plan__body { display: flex; flex: 1; flex-direction: column; padding: 18px 24px 24px; }
.pal-sales-plan__body ul { list-style: none; margin: 0 0 24px; padding: 0; }
.pal-sales-plan__body li { border-bottom: 1px solid #edf0f4; color: #4d5a6b; font-size: 13px; padding: 8px 0 8px 20px; position: relative; }
.pal-sales-plan__body li::before { color: #159358; content: '✓'; font-weight: 900; left: 0; position: absolute; }
.pal-sales-button--plan { background: var(--pal-sales-ink); color: #fff; margin-top: auto; width: 100%; }
.pal-sales-plan.is-featured .pal-sales-button--plan { background: var(--pal-sales-red); }
.pal-sales-button--plan:hover { background: #263951; color: #fff; }
.pal-sales-plan.is-featured .pal-sales-button--plan:hover { background: var(--pal-sales-red-dark); }
.pal-sales-empty { background: #fff; border: 1px solid var(--pal-sales-line); border-radius: 14px; padding: 35px; text-align: center; }
.pal-sales-empty strong { display: block; font-size: 17px; }
.pal-sales-empty a { color: var(--pal-sales-red); display: inline-block; font-weight: 800; margin-top: 12px; }
.pal-sales-section--steps { background: #fff; }
.pal-sales-steps { display: grid; gap: 18px; grid-template-columns: repeat(3, 1fr); }
.pal-sales-steps > div { border-top: 2px solid var(--pal-sales-ink); padding: 20px 10px 0 0; }
.pal-sales-steps span { color: var(--pal-sales-red); font-size: 12px; font-weight: 900; letter-spacing: .08em; }
.pal-sales-steps h3 { font-size: 19px; margin: 9px 0 5px; }
.pal-sales-steps p { color: var(--pal-sales-muted); font-size: 14px; margin: 0; }
.pal-sales-cta { background: var(--pal-sales-ink); color: #fff; padding: 52px 0; }
.pal-sales-cta__inner { align-items: center; display: flex; gap: 24px; justify-content: space-between; }
.pal-sales-cta h2 { color: #fff; font-size: clamp(28px, 3.2vw, 42px); }
.pal-sales-cta .pal-sales-eyebrow { color: #ff7c8c; }
@media (max-width: 820px) {
  .pal-sales-hero { padding: 58px 0; }
  .pal-sales-hero__grid, .pal-sales-audience { grid-template-columns: 1fr; }
  .pal-sales-benefits, .pal-sales-steps { grid-template-columns: 1fr; }
  .pal-sales-plan.is-featured { transform: none; }
  .pal-sales-cta__inner { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 540px) {
  .pal-sales-wrap { padding-left: 18px; padding-right: 18px; }
  .pal-sales-section { padding: 54px 0; }
  .pal-sales-hero__lead { font-size: 16px; }
  .pal-sales-hero__actions { align-items: stretch; flex-direction: column; }
  .pal-sales-button { width: 100%; }
}
/* Composição comercial: corresponde ao mockup "Planos de Publicidade | Uberlândia no Foco". */
body:has(.pal-sales-page) { background: #f4f6fa; }
/* A landing comercial usa o cabeçalho e o rodapé compartilhados do portal. */
.pal-sales-page > .pal-sales-site-header,
.pal-sales-page > .pal-sales-footer { display: none !important; }
.pal-sales-page {
  --pal-sales-navy:#102846;
  --pal-sales-navy-2:#183b63;
  --pal-sales-red:#cf1d3b;
  --pal-sales-red-dark:#ae1430;
  --pal-sales-gold:#f2b84b;
  --pal-sales-green:#0e9452;
  --pal-sales-ink:#14233b;
  --pal-sales-muted:#60708a;
  --pal-sales-paper:#fffdf9;
  --pal-sales-soft:#f4f6fa;
  --pal-sales-line:#dce3ee;
  background: var(--pal-sales-soft);
  color: var(--pal-sales-ink);
  font-family: "DM Sans", Inter, "Segoe UI", Arial, sans-serif;
  margin: 0 calc(50% - 50vw);
}
.pal-sales-container { width:min(1160px,calc(100% - 40px)); margin:0 auto; }
.pal-sales-topbar { background:var(--pal-sales-navy); border-bottom:2px solid var(--pal-sales-gold); color:#f4f7fb; font-size:13px; }
.pal-sales-topbar .pal-sales-container,.pal-sales-masthead .pal-sales-container,.pal-sales-nav .pal-sales-container,.pal-sales-ticker .pal-sales-container { align-items:center; display:flex; justify-content:space-between; }
.pal-sales-topbar .pal-sales-container { min-height:38px; }
.pal-sales-topbar__left,.pal-sales-topbar__right,.pal-sales-masthead__actions { align-items:center; display:flex; gap:18px; white-space:nowrap; }
.pal-sales-topbar a { color:#fff; text-decoration:none; }
.pal-sales-topbar strong,.pal-sales-weather { color:#f7c95d; font-weight:700; }
.pal-sales-masthead { background:var(--pal-sales-paper); padding:22px 0; }
.pal-sales-brand { align-items:center; color:var(--pal-sales-ink); display:flex; gap:12px; text-decoration:none; min-width:235px; }
.pal-sales-brand__mark { align-items:center; background:var(--pal-sales-red); border-radius:10px; color:#fff; display:flex; font-size:18px; font-weight:900; height:48px; justify-content:center; width:48px; }
.pal-sales-brand__title { display:block; font-size:22px; font-weight:800; letter-spacing:-.04em; line-height:.95; }
.pal-sales-brand__subtitle { color:var(--pal-sales-muted); display:block; font-size:12px; margin-top:5px; }
.pal-sales-masthead__actions { justify-content:flex-end; flex-wrap:wrap; }
.pal-sales-masthead__actions a { border-radius:8px; font-size:14px; font-weight:800; padding:11px 15px; text-decoration:none; }
.pal-sales-channel-link { background:var(--pal-sales-green); color:#fff; padding:11px 15px; }.pal-sales-contact-link { border:1px solid var(--pal-sales-line); color:var(--pal-sales-navy); padding:10px 14px; }
.pal-sales-nav { background:var(--pal-sales-navy); }.pal-sales-nav .pal-sales-container { justify-content:flex-start; min-height:52px; overflow:auto; }
.pal-sales-nav a { color:#fff; font-size:14px; font-weight:800; padding:16px 13px; text-decoration:none; white-space:nowrap; }.pal-sales-nav a:first-child { background:var(--pal-sales-red); }
.pal-sales-ticker { background:var(--pal-sales-red); color:#fff; font-size:13px; font-weight:700; }.pal-sales-ticker .pal-sales-container { justify-content:flex-start; gap:13px; min-height:34px; }
.pal-sales-ticker__label { background:rgba(91,0,18,.32); border-radius:999px; font-size:11px; letter-spacing:.07em; padding:5px 10px; }
.pal-sales-hero { background:linear-gradient(115deg, var(--pal-sales-navy) 0%, #102a4d 55%, var(--pal-sales-red-dark) 155%); padding:70px 0 86px; overflow:hidden; }
.pal-sales-hero__grid { align-items:center; display:grid; gap:54px; grid-template-columns:1.15fr .85fr; }
.pal-sales-eyebrow { color:var(--pal-sales-red); font-size:12px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; margin:0 0 10px; }.pal-sales-eyebrow--gold { color:var(--pal-sales-gold); }
.pal-sales-hero h1 { color:#fff; font-weight:800; letter-spacing:-.06em; font-size:clamp(38px,5vw,66px); line-height:.98; margin:14px 0 20px; max-width:760px; }.pal-sales-hero__copy { color:#dce7f7; font-size:18px; line-height:1.65; max-width:620px; }
.pal-sales-hero__actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:27px; }.pal-sales-button { align-items:center; border:1px solid transparent; border-radius:8px; display:inline-flex; font-size:14px; font-weight:800; justify-content:center; min-height:48px; padding:0 20px; text-decoration:none; transition:transform .2s ease, background-color .2s ease; }.pal-sales-button:hover { transform:translateY(-2px); text-decoration:none; }.pal-sales-button--primary { background:var(--pal-sales-red); color:#fff; }.pal-sales-button--primary:hover { background:var(--pal-sales-red-dark); color:#fff; }.pal-sales-button--light { color:#fff; background:transparent; border-color:rgba(255,255,255,.46); }
.pal-sales-hero__side { background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.18); border-radius:18px; padding:28px; }.pal-sales-hero__side h2 { color:#fff; font-size:20px; margin:0 0 15px; }.pal-sales-hero__side p { color:#dce7f7; font-size:14px; line-height:1.5; margin:0 0 21px; }.pal-sales-mini-list { display:grid; gap:13px; }.pal-sales-mini-list div { align-items:flex-start; color:#eef4ff; display:flex; font-size:14px; gap:12px; }.pal-sales-mini-list b { color:var(--pal-sales-gold); flex:0 0 auto; font-weight:900; }
.pal-sales-main { margin-top:-40px; position:relative; }.pal-sales-plans-shell { background:#fff; border-radius:18px; box-shadow:0 18px 50px rgba(13,32,56,.14); padding:42px; position:relative; }
.pal-sales-section-heading { align-items:end; display:flex; gap:24px; justify-content:space-between; margin-bottom:27px; }.pal-sales-section-heading h2,.pal-sales-audience h2,.pal-sales-placements h2,.pal-sales-steps h2 { color:var(--pal-sales-navy); font-weight:800; font-size:38px; letter-spacing:-.05em; line-height:1.03; margin:8px 0 0; }.pal-sales-section-heading p { color:var(--pal-sales-muted); font-size:14px; line-height:1.5; max-width:420px; margin:0; }
.pal-sales-plans { align-items:stretch; display:grid; gap:18px; grid-template-columns:repeat(3,1fr); }.pal-sales-plan { background:#fff; border:1px solid var(--pal-sales-line); border-radius:14px; display:flex; flex-direction:column; overflow:visible; position:relative; }.pal-sales-plan--featured { border:2px solid var(--pal-sales-red); box-shadow:0 18px 38px rgba(207,29,59,.18); transform:translateY(-14px); }.pal-sales-ribbon { background:var(--pal-sales-gold); border-radius:999px; color:#4a2b00; font-size:12px; font-weight:900; left:50%; padding:8px 15px; position:absolute; top:0; transform:translate(-50%,-50%); white-space:nowrap; }.pal-sales-plan__top { border-bottom:1px solid var(--pal-sales-line); border-radius:13px 13px 0 0; padding:27px 25px 21px; }.pal-sales-plan__name { color:var(--pal-sales-ink); font-size:22px; font-weight:900; }.pal-sales-plan--featured .pal-sales-plan__top { background:linear-gradient(140deg, var(--pal-sales-red), #e33450); border-bottom:0; border-radius:12px 12px 0 0; color:#fff; padding-top:37px; }.pal-sales-plan--featured .pal-sales-plan__name,.pal-sales-plan--featured .pal-sales-price strong { color:#fff; }.pal-sales-plan--featured .pal-sales-plan__target,.pal-sales-plan--featured .pal-sales-price span { color:#ffe1e7; }.pal-sales-plan__target { color:var(--pal-sales-muted); font-size:14px; line-height:1.45; margin:8px 0 23px; min-height:45px; }.pal-sales-price { align-items:baseline; display:flex; gap:8px; }.pal-sales-price strong { color:var(--pal-sales-ink); font-size:34px; letter-spacing:-.04em; }.pal-sales-price span { color:var(--pal-sales-muted); font-size:14px; font-weight:700; }.pal-sales-plan__body { background:#fff; border-radius:0 0 13px 13px; display:flex; flex:1; flex-direction:column; padding:23px 25px 25px; }.pal-sales-plan__body ul { display:grid; gap:12px; list-style:none; margin:0 0 27px; padding:0; }.pal-sales-plan__body li { color:#33445d; display:flex; font-size:14px; gap:9px; line-height:1.35; }.pal-sales-plan__body li b { color:var(--pal-sales-gold); font-weight:900; }.pal-sales-plan--featured .pal-sales-plan__body li b { color:var(--pal-sales-red); }.pal-sales-button--plan { background:var(--pal-sales-red); color:#fff; margin-top:auto; width:100%; }.pal-sales-button--plan:hover { background:var(--pal-sales-red-dark); color:#fff; }
.pal-sales-addons { background:#fff; padding:70px 0; }
.pal-sales-addons__table { border:1px solid var(--pal-sales-line); border-radius:14px; overflow:hidden; background:#fff; }
.pal-sales-addons__row { align-items:center; border-top:1px solid var(--pal-sales-line); color:var(--pal-sales-muted); display:grid; font-size:14px; gap:16px; grid-template-columns:minmax(0,2fr) 1fr 1.3fr .8fr; padding:14px 18px; }
.pal-sales-addons__row:first-child { border-top:0; }
.pal-sales-addons__row--head { background:var(--pal-sales-soft); color:var(--pal-sales-ink); font-size:12px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.pal-sales-addons__row strong { color:var(--pal-sales-ink); font-size:16px; white-space:nowrap; }
.pal-sales-addons__note { color:var(--pal-sales-muted); font-size:14px; margin:20px 0 0; text-align:center; }
.pal-sales-addons__note a { color:var(--pal-sales-red); font-weight:800; text-decoration:none; }
.pal-sales-audience { padding:72px 0; }.pal-sales-audience__grid { align-items:center; display:grid; gap:42px; grid-template-columns:.93fr 1.07fr; }.pal-sales-audience p:not(.pal-sales-eyebrow) { color:var(--pal-sales-muted); line-height:1.65; margin:16px 0 0; max-width:500px; }.pal-sales-numbers { display:grid; gap:12px; grid-template-columns:repeat(3,1fr); }.pal-sales-numbers div { background:#fff; border:1px solid var(--pal-sales-line); border-radius:12px; padding:20px; }.pal-sales-numbers strong { color:var(--pal-sales-red); display:block; font-size:27px; margin-bottom:5px; }.pal-sales-numbers span { color:var(--pal-sales-muted); font-size:13px; line-height:1.35; }
.pal-sales-placements { background:#fff; padding:70px 0; }.pal-sales-placement-grid { display:grid; gap:14px; grid-template-columns:repeat(4,1fr); }.pal-sales-placement-grid article { background:linear-gradient(145deg,#fff 0%,#f5f7fb 100%); border:1px solid var(--pal-sales-line); border-radius:13px; min-height:184px; padding:21px; }.pal-sales-placement-grid article>div { align-items:center; background:var(--pal-sales-navy); border-radius:7px; color:#fff; display:flex; font-size:12px; font-weight:900; height:55px; justify-content:center; margin-bottom:17px; }.pal-sales-placement-grid h3 { color:var(--pal-sales-ink); font-size:17px; margin:0 0 7px; }.pal-sales-placement-grid p { color:var(--pal-sales-muted); font-size:14px; line-height:1.45; margin:0; }
.pal-sales-steps { padding:70px 0; }.pal-sales-steps__grid { display:grid; gap:20px; grid-template-columns:repeat(3,1fr); }.pal-sales-steps__grid article { background:#fff; border:1px solid var(--pal-sales-line); border-radius:12px; padding:25px 25px 24px 85px; position:relative; }.pal-sales-steps__grid span { align-items:center; background:var(--pal-sales-navy); border-radius:50%; color:#fff; display:flex; font-weight:900; height:43px; justify-content:center; left:24px; position:absolute; top:24px; width:43px; }.pal-sales-steps__grid h3 { color:var(--pal-sales-ink); font-size:18px; margin:3px 0 9px; }.pal-sales-steps__grid p { color:var(--pal-sales-muted); font-size:14px; line-height:1.5; margin:0; }
.pal-sales-contact { align-items:center; background:linear-gradient(105deg, var(--pal-sales-red) 0%, var(--pal-sales-red-dark) 52%, var(--pal-sales-navy) 100%); border-radius:18px; color:#fff; display:flex; gap:30px; justify-content:space-between; margin-bottom:72px; padding:42px; }.pal-sales-contact h2 { color:#fff; font-weight:800; font-size:36px; letter-spacing:-.05em; margin:8px 0 0; }.pal-sales-contact p { color:#ffe5eb; line-height:1.55; margin:12px 0 0; max-width:700px; }.pal-sales-eyebrow--pale { color:#ffd1da; }.pal-sales-contact__button { background:#fff; color:var(--pal-sales-navy); flex:0 0 auto; white-space:nowrap; }
.pal-sales-footer { background:#091c34; color:#dce7f7; padding:38px 0; }.pal-sales-footer .pal-sales-container { align-items:center; display:flex; justify-content:space-between; gap:20px; }.pal-sales-footer strong { color:#fff; display:block; font-size:20px; font-weight:800; }.pal-sales-footer span,.pal-sales-footer small { color:#aebbd0; font-size:13px; }
@media (max-width:900px) { .pal-sales-masthead .pal-sales-container { align-items:flex-start; flex-direction:column; } .pal-sales-masthead__actions { justify-content:flex-start; } .pal-sales-hero__grid,.pal-sales-audience__grid { grid-template-columns:1fr; } .pal-sales-plans { grid-template-columns:1fr; } .pal-sales-plan--featured { transform:none; } .pal-sales-placement-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:760px) { .pal-sales-container { width:min(100% - 28px,1160px); } .pal-sales-topbar__right,.pal-sales-weather { display:none; } .pal-sales-masthead { padding:16px 0; } .pal-sales-brand__title { font-size:20px; } .pal-sales-nav a { padding:14px 11px; } .pal-sales-hero { padding:52px 0 68px; } .pal-sales-plans-shell { padding:28px 18px; } .pal-sales-section-heading { display:block; } .pal-sales-section-heading h2,.pal-sales-audience h2,.pal-sales-placements h2,.pal-sales-steps h2 { font-size:31px; } .pal-sales-section-heading p { margin-top:12px; } .pal-sales-numbers,.pal-sales-steps__grid,.pal-sales-placement-grid { grid-template-columns:1fr; } .pal-sales-addons__row { grid-template-columns:minmax(0,1fr) auto; gap:8px 14px; } .pal-sales-addons__row span:nth-child(2),.pal-sales-addons__row span:nth-child(3) { font-size:12px; } .pal-sales-addons__row--head span:nth-child(2),.pal-sales-addons__row--head span:nth-child(3) { display:none; } .pal-sales-addons__row strong { grid-column:2; grid-row:1 / span 2; } .pal-sales-contact { align-items:flex-start; flex-direction:column; padding:28px 22px; } .pal-sales-contact h2 { font-size:31px; } .pal-sales-contact__button { width:100%; } .pal-sales-footer .pal-sales-container { align-items:flex-start; flex-direction:column; } }

.pal-portal-notice { border-radius: 12px; font-size: 14px; margin-bottom: 16px; padding: 14px 18px; }
.pal-portal-notice--success { background: #edf8ef; border: 1px solid #b7e1c1; color: #0b7a3b; }
.pal-portal-notice--error { background: #fff1f2; border: 1px solid #fecdd3; color: #be123c; }
.pal-portal-notice--info { background: #eef4ff; border: 1px solid #c7d7f8; color: #1658b0; }
.pal-portal-notice--warn { background: #fff4dd; border: 1px solid #f3d7a1; color: #9a6700; }

.pal-portal-auth { max-width: 620px; margin: 32px auto; }
.pal-portal-auth .pal-portal-card__body { padding: 26px; }
.pal-portal-muted { color: var(--pal-text-muted); font-size: 13px; }

.pal-portal-steps { display: flex; gap: 8px; margin-bottom: 18px; overflow-x: auto; }
.pal-portal-step {
  background: var(--pal-surface);
  border: 1px solid var(--pal-border);
  border-radius: 999px;
  color: var(--pal-text-muted);
  font-weight: 700;
  padding: 8px 12px;
  white-space: nowrap;
}
.pal-portal-step.is-active { background: var(--pal-primary); border-color: var(--pal-primary); color: var(--pal-primary-text); }
.pal-portal-wizard-panel { display: none; }
.pal-portal-wizard-panel.is-active { display: block; }
.pal-portal-preview {
  align-items: center;
  background: var(--pal-bg);
  border: 1px dashed var(--pal-border);
  border-radius: var(--pal-input-radius);
  color: var(--pal-text-muted);
  display: flex;
  justify-content: center;
  min-height: 120px;
  overflow: hidden;
  padding: 12px;
}
.pal-portal-preview img { display: block; height: auto; max-width: 100%; }

/* Upload dos criativos da campanha. */
.pal-portal-upload-grid {
  align-items: start;
  column-gap: 16px;
}
.pal-portal-upload-field {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}
.pal-portal-upload-field > label {
  color: var(--pal-text);
  font-weight: 700;
  margin: 0;
}
.pal-portal-upload-field input[type="file"] {
  background: var(--pal-surface);
  border: 1px solid var(--pal-border);
  border-radius: var(--pal-input-radius);
  color: var(--pal-text-muted);
  cursor: pointer;
  font-family: var(--pal-font);
  font-size: 13px;
  min-height: 50px;
  overflow: hidden;
  padding: 6px 12px 6px 6px;
  transition: border-color .15s, box-shadow .15s, background .15s;
  width: 100%;
}
.pal-portal-upload-field input[type="file"]::file-selector-button {
  background: var(--pal-primary);
  border: 0;
  border-radius: calc(var(--pal-input-radius) - 2px);
  color: var(--pal-primary-text);
  cursor: pointer;
  font-family: var(--pal-font);
  font-size: 13px;
  font-weight: 700;
  margin-right: 12px;
  min-height: 36px;
  padding: 9px 16px;
  transition: background .15s, transform .15s;
}
.pal-portal-upload-field input[type="file"]:hover {
  background: var(--pal-bg);
  border-color: var(--pal-primary);
}
.pal-portal-upload-field input[type="file"]:hover::file-selector-button {
  opacity: .88;
}
.pal-portal-upload-field input[type="file"]:focus-visible {
  border-color: var(--pal-primary);
  box-shadow: 0 0 0 3px rgba(232,25,44,.1);
  outline: none;
}
.pal-portal-upload-hint {
  color: var(--pal-text-muted);
  font-size: 12px;
  line-height: 1.35;
}
.pal-portal-upload-field .pal-portal-preview {
  margin-top: 2px;
  width: 100%;
}
.pal-portal-actions--after-preview {
  border-top: 1px solid var(--pal-border);
  margin-top: 22px;
  padding-top: 18px;
}

@media (max-width: 860px) {
  .pal-portal-panel {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .pal-portal-nav {
    flex-direction: row;
    overflow-x: auto;
    gap: 8px;
    padding-bottom: 4px;
    position: static;
    scrollbar-width: none;
  }
  .pal-portal-nav::-webkit-scrollbar { display: none; }
  .pal-portal-nav__user { display: none; }
  .pal-portal-nav__link {
    flex: 0 0 auto;
    white-space: nowrap;
    padding: 10px 16px;
    font-size: 13px;
  }
  .pal-portal-nav__link--sair { margin-top: 0; }
  .pal-portal-grid-2 { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .pal-portal-stats { grid-template-columns: 1fr 1fr; }
  .pal-portal-card__head { align-items: flex-start; flex-direction: column; }
  .pal-portal-actions, .pal-portal-btn { width: 100%; }
}

/* ================================================================
   Portal Ads Pro — CSS da página inicial (home.php)
   Adicionar ao final de: public/assets/css/portal-public.css
   ================================================================ */

/* ── HERO ── */
.pal-home-hero {
  background: linear-gradient(135deg, #0f1923 0%, #182330 60%, #1a2a3a 100%);
  padding: 72px 24px 80px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.pal-home-hero::before {
  content: '';
  position: absolute;
  top: -100px; left: 50%;
  transform: translateX(-50%);
  width: 700px; height: 700px;
  background: radial-gradient(circle, rgba(232,25,44,.16), transparent 65%);
  pointer-events: none;
}
.pal-home-hero__inner {
  position: relative;
  max-width: 900px;
  margin: 0 auto;
}
.pal-home-hero__badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 99px;
  padding: 7px 18px;
  font-size: 12px;
  font-weight: 700;
  color: rgba(255,255,255,.75);
  text-transform: uppercase;
  letter-spacing: .1em;
  margin-bottom: 24px;
}
.pal-home-hero__title {
  font-size: clamp(30px, 5vw, 52px);
  font-weight: 900;
  color: #fff;
  letter-spacing: -1.5px;
  line-height: 1.06;
  max-width: 760px;
  margin: 0 auto 20px;
}
.pal-home-hero__title span {
  color: var(--pal-primary, #e8192c);
}
.pal-home-hero__sub {
  font-size: 17px;
  color: rgba(255,255,255,.55);
  max-width: 560px;
  margin: 0 auto 36px;
  line-height: 1.7;
}
.pal-home-hero__actions {
  display: flex;
  justify-content: center;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 56px;
}
.pal-portal-btn--lg {
  padding: 14px 28px;
  font-size: 15px;
  border-radius: var(--pal-button-radius, 12px);
}
.pal-portal-btn--outline {
  background: transparent;
  color: rgba(255,255,255,.85);
  border: 1.5px solid rgba(255,255,255,.3);
}
.pal-portal-btn--outline:hover {
  background: rgba(255,255,255,.1);
  border-color: rgba(255,255,255,.55);
  color: #fff;
}
.pal-portal-btn--outline-dark {
  background: transparent;
  color: var(--pal-text, #0f172a);
  border: 1.5px solid var(--pal-border, #dde3ea);
}
.pal-portal-btn--outline-dark:hover {
  background: var(--pal-bg, #f0f1f4);
}
.pal-home-hero__stats {
  display: flex;
  justify-content: center;
  gap: 36px;
  flex-wrap: wrap;
}
.pal-home-hs__val {
  font-size: 30px;
  font-weight: 800;
  color: #fff;
  letter-spacing: -.5px;
  line-height: 1;
  margin-bottom: 4px;
}
.pal-home-hs__lbl {
  font-size: 12px;
  color: rgba(255,255,255,.4);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .06em;
}

/* ── SEÇÕES GERAIS ── */
.pal-home-section {
  padding: 72px 0;
  background: var(--pal-surface, #fff);
}
.pal-home-section--alt {
  background: var(--pal-bg, #f0f1f4);
}
.pal-home-section__head {
  text-align: center;
  max-width: 640px;
  margin: 0 auto 48px;
  padding: 0 24px;
}
.pal-home-section__head h2 {
  font-size: clamp(22px, 3vw, 30px);
  font-weight: 800;
  color: var(--pal-text, #0f172a);
  letter-spacing: -.4px;
  margin: 0 0 10px;
  line-height: 1.15;
}
.pal-home-section__head p {
  font-size: 15px;
  color: var(--pal-text-muted, #64748b);
  line-height: 1.65;
  margin: 0;
}
.pal-home-eyebrow {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: var(--pal-primary, #e8192c);
  margin-bottom: 10px;
}

/* max-width wrapper para conteúdo de seções */
.pal-home-section > *:not(.pal-home-section__head) {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 24px;
  padding-right: 24px;
}
.pal-home-section__head { max-width: 640px; }

/* ── AUDIÊNCIA ── */
.pal-home-audience {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
  align-items: start;
}
.pal-home-audience--stats-only { grid-template-columns: 1fr; }
.pal-home-aud-bar {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 14px;
}
.pal-home-aud-bar__label {
  width: 120px;
  font-size: 13px;
  font-weight: 600;
  color: var(--pal-text, #0f172a);
  flex-shrink: 0;
}
.pal-home-aud-bar__track {
  flex: 1;
  height: 8px;
  background: var(--pal-border, #dde3ea);
  border-radius: 99px;
  overflow: hidden;
}
.pal-home-aud-bar__fill {
  height: 100%;
  background: var(--pal-primary, #e8192c);
  border-radius: 99px;
}
.pal-home-aud-bar__pct {
  width: 36px;
  text-align: right;
  font-size: 13px;
  font-weight: 700;
  color: var(--pal-text, #0f172a);
}
.pal-home-audience__stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
.pal-home-aud-stat {
  background: var(--pal-surface, #fff);
  border: 1px solid var(--pal-border, #dde3ea);
  border-radius: var(--pal-card-radius, 18px);
  padding: 20px;
}
.pal-home-aud-stat__num {
  font-size: 28px;
  font-weight: 800;
  color: var(--pal-primary, #e8192c);
  letter-spacing: -.5px;
  margin-bottom: 4px;
}
.pal-home-aud-stat__label {
  font-size: 13px;
  font-weight: 700;
  color: var(--pal-text, #0f172a);
  margin-bottom: 4px;
}
.pal-home-aud-stat__desc {
  font-size: 12px;
  color: var(--pal-text-muted, #64748b);
  line-height: 1.5;
}

/* ── EDITORIAS ── */
.pal-home-editorias {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 32px;
}
.pal-home-editoria {
  background: var(--pal-surface, #fff);
  border: 1px solid var(--pal-border, #dde3ea);
  border-radius: 99px;
  padding: 8px 18px;
  font-size: 13px;
  font-weight: 700;
  color: var(--pal-text, #0f172a);
  transition: all .15s;
  cursor: default;
}
.pal-home-editoria:hover {
  border-color: var(--pal-primary, #e8192c);
  color: var(--pal-primary, #e8192c);
}
.pal-home-editoria--more {
  background: var(--pal-primary, #e8192c);
  border-color: var(--pal-primary, #e8192c);
  color: #fff;
}
.pal-home-seg-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
.pal-home-seg-card {
  background: var(--pal-surface, #fff);
  border: 1px solid var(--pal-border, #dde3ea);
  border-radius: var(--pal-card-radius, 18px);
  padding: 22px;
  border-top: 3px solid var(--pal-primary, #e8192c);
}
.pal-home-seg-card__label {
  font-size: 14px;
  font-weight: 800;
  color: var(--pal-text, #0f172a);
  margin-bottom: 8px;
}
.pal-home-seg-card__desc {
  font-size: 13px;
  color: var(--pal-text-muted, #64748b);
  line-height: 1.6;
}

/* ── FORMATOS ── */
.pal-home-formats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin-bottom: 20px;
}
.pal-home-format {
  background: var(--pal-surface, #fff);
  border: 1px solid var(--pal-border, #dde3ea);
  border-radius: var(--pal-card-radius, 18px);
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.pal-home-format__box {
  background: var(--pal-bg, #f0f1f4);
  border: 1px dashed var(--pal-border, #dde3ea);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 700;
  color: var(--pal-text-muted, #64748b);
  font-family: 'DM Mono', monospace;
}
.pal-home-format--leaderboard .pal-home-format__box { height: 36px; }
.pal-home-format--medium      .pal-home-format__box { height: 60px; }
.pal-home-format--large       .pal-home-format__box { height: 56px; }
.pal-home-format--mobile      .pal-home-format__box { height: 28px; }
.pal-home-format--half        .pal-home-format__box { height: 80px; }
.pal-home-format--billboard   .pal-home-format__box { height: 44px; }
.pal-home-format__dim {
  font-family: 'DM Mono', monospace;
  font-size: 12px;
}
.pal-home-format__name {
  font-size: 14px;
  font-weight: 700;
  color: var(--pal-text, #0f172a);
  margin-bottom: 3px;
}
.pal-home-format__local {
  font-size: 12px;
  color: var(--pal-text-muted, #64748b);
  margin-bottom: 4px;
}
.pal-home-format__plano {
  font-size: 11px;
  font-weight: 700;
  color: var(--pal-primary, #e8192c);
  text-transform: uppercase;
  letter-spacing: .05em;
}
.pal-home-formats-note {
  font-size: 14px;
  color: var(--pal-text-muted, #64748b);
  text-align: center;
  padding: 0 24px;
}
.pal-home-formats-note a {
  color: var(--pal-primary, #e8192c);
  font-weight: 700;
  text-decoration: none;
}

/* ── MAPA DE POSIÇÕES ── */
.pal-home-placement-wrap {
  display: grid;
  grid-template-columns: 1fr 340px;
  gap: 28px;
  align-items: start;
}
.pal-home-pm {
  background: var(--pal-bg, #f0f1f4);
  border: 1px solid var(--pal-border, #dde3ea);
  border-radius: var(--pal-card-radius, 18px);
  overflow: hidden;
}
.pal-home-pm__bar {
  height: 40px;
  background: #0f1923;
  display: flex;
  align-items: center;
  padding: 0 14px;
  gap: 8px;
}
.pal-home-pm__dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  display: block;
}
.pal-home-pm__url {
  font-size: 11px;
  color: rgba(255,255,255,.35);
  font-family: 'DM Mono', monospace;
  margin-left: 6px;
}
.pal-home-pm__slot {
  border: 2px dashed rgba(232,25,44,.4);
  background: rgba(232,25,44,.05);
  border-radius: 8px;
  padding: 10px;
  margin: 8px;
  text-align: center;
  font-size: 10px;
  font-weight: 700;
  color: var(--pal-primary, #e8192c);
  line-height: 1.5;
}
.pal-home-pm__slot small {
  font-weight: 400;
  opacity: .8;
}
.pal-home-pm__slot--primary { margin: 8px 8px 0; }
.pal-home-pm__slot--inline  { }
.pal-home-pm__slot--after   { margin-top: 5px; }
.pal-home-pm__slot--sidebar { height: auto; min-height: 56px; display: flex; align-items: center; justify-content: center; flex-direction: column; }
.pal-home-pm__slot--locked  { border-color: rgba(90,106,126,.3); background: rgba(90,106,126,.05); color: var(--pal-text-muted, #64748b); }
.pal-home-pm__slot--adsense { border-color: rgba(26,95,255,.35); background: rgba(26,95,255,.05); color: #1658b0; }
.pal-home-pm__body {
  display: grid;
  grid-template-columns: 1fr 130px;
  gap: 8px;
  padding: 0 8px;
}
.pal-home-pm__article { }
.pal-home-pm__sidebar { display: flex; flex-direction: column; gap: 6px; }
.pal-home-pm__title-line {
  height: 12px;
  background: var(--pal-border, #dde3ea);
  border-radius: 4px;
  margin: 10px 0 8px;
  width: 70%;
}
.pal-home-pm__line {
  height: 8px;
  background: var(--pal-border, #dde3ea);
  border-radius: 99px;
  margin: 6px 0;
}
.pal-home-placement-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.pal-home-pos-item {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  background: var(--pal-surface, #fff);
  border: 1px solid var(--pal-border, #dde3ea);
  border-radius: 14px;
  padding: 14px 16px;
}
.pal-home-pos-item--locked { opacity: .55; }
.pal-home-pos-num {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--pal-primary, #e8192c);
  color: #fff;
  font-weight: 800;
  font-size: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.pal-home-pos-item--locked .pal-home-pos-num {
  background: var(--pal-border, #dde3ea);
  color: var(--pal-text-muted, #64748b);
}
.pal-home-pos-info { flex: 1; }
.pal-home-pos-name { font-size: 13px; font-weight: 700; color: var(--pal-text, #0f172a); margin-bottom: 3px; }
.pal-home-pos-desc { font-size: 12px; color: var(--pal-text-muted, #64748b); }
.pal-home-pos-plan { flex-shrink: 0; }

/* ── COMO FUNCIONA ── */
.pal-home-steps {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
.pal-home-step {
  background: var(--pal-surface, #fff);
  border: 1px solid var(--pal-border, #dde3ea);
  border-radius: var(--pal-card-radius, 18px);
  padding: 22px;
  display: flex;
  align-items: flex-start;
  gap: 14px;
}
.pal-home-step__num {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(232,25,44,.08);
  color: var(--pal-primary, #e8192c);
  font-weight: 800;
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.pal-home-step__title { font-size: 14px; font-weight: 700; color: var(--pal-text, #0f172a); margin-bottom: 5px; }
.pal-home-step__desc  { font-size: 13px; color: var(--pal-text-muted, #64748b); line-height: 1.55; }

/* ── DIFERENCIAIS ── */
.pal-home-benefits {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
.pal-home-benefit {
  background: var(--pal-surface, #fff);
  border: 1px solid var(--pal-border, #dde3ea);
  border-radius: var(--pal-card-radius, 18px);
  padding: 22px;
  display: flex;
  align-items: flex-start;
  gap: 14px;
}
.pal-home-benefit__mark {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--pal-primary, #e8192c);
  margin-top: 7px;
  flex-shrink: 0;
}
.pal-home-benefit__title { font-size: 14px; font-weight: 800; color: var(--pal-text, #0f172a); margin-bottom: 6px; }
.pal-home-benefit__desc  { font-size: 13px; color: var(--pal-text-muted, #64748b); line-height: 1.6; }

/* ── NOTA DOS PLANOS ── */
.pal-home-plans-note {
  text-align: center;
  font-size: 14px;
  color: var(--pal-text-muted, #64748b);
  margin-top: 24px;
  padding: 0 24px;
}
.pal-home-plans-note strong { color: var(--pal-text, #0f172a); }
.pal-home-plans-note a { color: var(--pal-primary, #e8192c); font-weight: 700; text-decoration: none; }

/* ── FORMATOS AVULSOS ── */
.pal-home-addons__table {
  border: 1px solid var(--pal-border, #dde3ea);
  border-radius: 14px;
  overflow: hidden;
  background: var(--pal-surface, #fff);
}
.pal-home-addons__row {
  display: grid;
  grid-template-columns: minmax(0, 2fr) 1fr 1.3fr .8fr;
  gap: 16px;
  align-items: center;
  padding: 14px 18px;
  border-top: 1px solid var(--pal-border, #dde3ea);
  color: var(--pal-text-muted, #526174);
  font-size: 14px;
}
.pal-home-addons__row:first-child { border-top: 0; }
.pal-home-addons__row--head {
  background: var(--pal-bg, #f0f1f4);
  color: var(--pal-text, #0f172a);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.pal-home-addons__row strong { color: var(--pal-text, #0f172a); font-size: 16px; white-space: nowrap; }

/* ── DEPOIMENTOS ── */
.pal-home-testimonials {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
.pal-home-testi {
  background: var(--pal-surface, #fff);
  border: 1px solid var(--pal-border, #dde3ea);
  border-radius: var(--pal-card-radius, 18px);
  padding: 24px;
  box-shadow: 0 2px 10px rgba(15,23,42,.04);
}
.pal-home-testi__quote {
  font-size: 14px;
  color: var(--pal-text, #0f172a);
  line-height: 1.7;
  font-style: italic;
  margin: 0 0 16px;
}
.pal-home-testi__author { display: flex; align-items: center; gap: 10px; }
.pal-home-testi__av {
  width: 36px; height: 36px;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-weight: 700; font-size: 13px; color: #fff;
  flex-shrink: 0;
}
.pal-home-testi__name { font-size: 13px; font-weight: 700; color: var(--pal-text, #0f172a); }
.pal-home-testi__role { font-size: 12px; color: var(--pal-text-muted, #64748b); }

/* ── FAQ ── */
.pal-home-faq {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 24px;
}
.pal-home-faq__item {
  border: 1px solid var(--pal-border, #dde3ea);
  border-radius: 12px;
  overflow: hidden;
  margin-bottom: 8px;
  background: var(--pal-surface, #fff);
}
.pal-home-faq__q {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  font-size: 14px;
  font-weight: 700;
  color: var(--pal-text, #0f172a);
  cursor: pointer;
  background: transparent;
  border: none;
  text-align: left;
  font-family: var(--pal-font, 'DM Sans', sans-serif);
  gap: 16px;
  transition: background .1s;
}
.pal-home-faq__q:hover { background: var(--pal-bg, #f0f1f4); }
.pal-home-faq__arrow {
  font-size: 20px;
  font-weight: 400;
  color: var(--pal-primary, #e8192c);
  flex-shrink: 0;
  line-height: 1;
}
.pal-home-faq__a {
  padding: 0 20px 18px;
  font-size: 14px;
  color: var(--pal-text-muted, #64748b);
  line-height: 1.65;
  border-top: 1px solid var(--pal-border, #dde3ea);
  padding-top: 14px;
}

/* ── CTA FINAL ── */
.pal-home-cta {
  background: linear-gradient(135deg, #0f1923, #182330);
  padding: 72px 24px;
}
.pal-home-cta__inner {
  max-width: 700px;
  margin: 0 auto;
  text-align: center;
}
.pal-home-cta__title {
  font-size: clamp(24px, 3.5vw, 34px);
  font-weight: 800;
  color: #fff;
  letter-spacing: -.5px;
  margin: 0 0 12px;
}
.pal-home-cta__sub {
  font-size: 15px;
  color: rgba(255,255,255,.5);
  line-height: 1.65;
  margin: 0 0 32px;
}
.pal-home-cta__actions {
  display: flex;
  justify-content: center;
  gap: 12px;
  flex-wrap: wrap;
}

/* ── RESPONSIVE ── */
@media (max-width: 1024px) {
  .pal-home-formats      { grid-template-columns: repeat(2, 1fr); }
  .pal-home-audience     { grid-template-columns: 1fr; }
  .pal-home-seg-cards    { grid-template-columns: 1fr 1fr; }
  .pal-home-placement-wrap { grid-template-columns: 1fr; }
  .pal-home-steps        { grid-template-columns: repeat(2, 1fr); }
  .pal-home-benefits     { grid-template-columns: repeat(2, 1fr); }
  .pal-home-testimonials { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 700px) {
  .pal-home-hero         { padding: 52px 20px 60px; }
  .pal-home-hero__stats  { gap: 20px; }
  .pal-home-hs__val      { font-size: 24px; }
  .pal-home-formats      { grid-template-columns: 1fr; }
  .pal-home-seg-cards    { grid-template-columns: 1fr; }
  .pal-home-steps        { grid-template-columns: 1fr; }
  .pal-home-benefits     { grid-template-columns: 1fr; }
  .pal-home-testimonials { grid-template-columns: 1fr; }
  .pal-home-audience__stats { grid-template-columns: 1fr 1fr; }
  .pal-home-addons__row { grid-template-columns: minmax(0, 1fr) auto; gap: 8px 14px; }
  .pal-home-addons__row span:nth-child(2), .pal-home-addons__row span:nth-child(3) { font-size: 12px; }
  .pal-home-addons__row--head span:nth-child(2), .pal-home-addons__row--head span:nth-child(3) { display: none; }
  .pal-home-addons__row strong { grid-column: 2; grid-row: 1 / span 2; }
  .pal-home-section      { padding: 48px 0; }
  .pal-home-cta          { padding: 48px 20px; }
}
/* Portal home runtime tweaks */
.pal-home-faq__item.is-open .pal-home-faq__a { display: block; }
.pal-home-faq__item.is-open .pal-home-faq__q { background: var(--pal-bg, #f0f1f4); }
.pal-home-pm__dot--red { background: #ff5f57; }
.pal-home-pm__dot--yellow { background: #febc2e; }
.pal-home-pm__dot--green { background: #28c840; }
.pal-home-pm__line--90 { width: 90%; }
.pal-home-pm__line--85 { width: 85%; }
.pal-home-pm__line--80 { width: 80%; }
.pal-home-pm__line--75 { width: 75%; }
.pal-home-pm__line--70 { width: 70%; }
.pal-home-pm__line--60 { width: 60%; }
.pal-home-pm__slot--side-tall { height: 80px; }

/* Landing comercial: ocupa a largura da página sem substituir o header e o footer do portal. */
body:has(.pal-sales-page) .pal-sales-page {
  box-sizing: border-box !important;
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  overflow: hidden;
}
/* O shortcode fica dentro de um container do Elementor. Sem este reset, o
   Elementor pode conservar a largura estreita da coluna original da página. */
body:has(.pal-sales-page) .elementor-widget-container:has(.pal-sales-page),
body:has(.pal-sales-page) .elementor-shortcode:has(.pal-sales-page) {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.pal-sales-page .pal-sales-container { width: min(1120px, calc(100% - 48px)); }
.pal-sales-page .pal-sales-hero { padding: 76px 0 124px; }
.pal-sales-page .pal-sales-hero h1 { max-width: 650px; font-size: clamp(42px, 5vw, 68px); line-height: .98; }
.pal-sales-page .pal-sales-plans-shell { margin-top: -74px; }
.pal-sales-page .pal-sales-plan__target { min-height: 42px; }
.pal-sales-page .pal-sales-numbers { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.pal-sales-page .pal-sales-numbers > div { min-width: 0; padding: 22px 18px; }
.pal-sales-page .pal-sales-numbers strong { overflow-wrap: normal; word-break: normal; white-space: nowrap; }
.pal-sales-page .pal-sales-plan__body li b { color: var(--pal-sales-gold, #f2b84b); }
.pal-sales-page .pal-sales-plan__body li::before { content: none; }
.pal-sales-page .pal-sales-plan__body li { align-items: flex-start; border-bottom: 0; display: flex; gap: 0; line-height: 1.35; margin: 0; padding: 7px 0; }
.pal-sales-page .pal-sales-plan__body li b { flex: 0 0 auto; margin-right: 7px; }
.pal-sales-page .pal-sales-placement-grid { align-items: stretch; }
.pal-sales-page .pal-sales-placement-grid article { display: flex; flex-direction: column; }
.pal-sales-page .pal-sales-placement-grid article p { margin-bottom: 0; }
.pal-sales-page .pal-sales-steps__grid { align-items: stretch; }
.pal-sales-page .pal-sales-steps__grid article { display: flex; flex-direction: column; }
.pal-sales-page .pal-sales-steps__grid article p { margin-bottom: 0; }
.pal-sales-page .pal-sales-numbers > div,
.pal-sales-page .pal-sales-placement-grid article,
.pal-sales-page .pal-sales-steps__grid article { min-height: 148px; }

/* Alcance local: texto com leitura confortável e três cartões com largura útil. */
.pal-sales-page .pal-sales-audience__grid {
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.55fr) !important;
  gap: 64px !important;
}
.pal-sales-page .pal-sales-audience h2 {
  font-size: clamp(30px, 3vw, 46px);
  line-height: 1.02;
  max-width: 480px;
}
.pal-sales-page .pal-sales-audience p {
  font-size: 15px;
  line-height: 1.65;
  max-width: 470px;
}
.pal-sales-page .pal-sales-audience .pal-sales-numbers {
  gap: 14px;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  width: 100%;
}
.pal-sales-page .pal-sales-audience .pal-sales-numbers > div {
  min-height: 154px;
  padding: 24px 20px;
}
@media (max-width: 760px) {
  .pal-sales-page .pal-sales-container { width: min(100% - 32px, 1120px); }
  .pal-sales-page .pal-sales-hero { padding: 56px 0 72px; }
  .pal-sales-page .pal-sales-plans-shell { margin-top: -28px; }
  .pal-sales-page .pal-sales-numbers { grid-template-columns: 1fr; }
  .pal-sales-page .pal-sales-audience__grid { gap: 32px !important; grid-template-columns: 1fr !important; }
  .pal-sales-page .pal-sales-audience .pal-sales-numbers { grid-template-columns: 1fr !important; }
}

/*
 * Landing comercial em shortcode: o template pode estar dentro de qualquer
 * coluna do Elementor. Libera exclusivamente essa cadeia para que a página
 * ocupe a largura real do navegador, sem afetar as demais páginas do portal.
 */
body:has(.pal-sales-page) .elementor .elementor-section:has(.pal-sales-page),
body:has(.pal-sales-page) .elementor .elementor-container:has(.pal-sales-page),
body:has(.pal-sales-page) .elementor .elementor-column:has(.pal-sales-page),
body:has(.pal-sales-page) .elementor .elementor-column-wrap:has(.pal-sales-page),
body:has(.pal-sales-page) .elementor .elementor-widget:has(.pal-sales-page),
body:has(.pal-sales-page) .elementor .elementor-widget-container:has(.pal-sales-page),
body:has(.pal-sales-page) .elementor .elementor-shortcode:has(.pal-sales-page) {
  box-sizing: border-box !important;
  max-width: none !important;
  min-width: 0 !important;
  overflow: visible !important;
  width: 100% !important;
}

body:has(.pal-sales-page) .elementor .elementor-section:has(.pal-sales-page),
body:has(.pal-sales-page) .elementor .elementor-container:has(.pal-sales-page),
body:has(.pal-sales-page) .elementor .elementor-column:has(.pal-sales-page),
body:has(.pal-sales-page) .elementor .elementor-column-wrap:has(.pal-sales-page) {
  margin-inline: 0 !important;
  padding-inline: 0 !important;
}

body:has(.pal-sales-page) .elementor .elementor-column:has(.pal-sales-page) {
  flex: 0 0 100% !important;
}

body:has(.pal-sales-page) .pal-sales-page {
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  max-width: 100vw !important;
  min-width: 100vw !important;
  width: 100vw !important;
}

/* Ajustes finais para coincidir com a composição aprovada do mockup. */
.pal-sales-page .pal-sales-plans-shell {
  margin-top: -82px !important;
  z-index: 2;
}

.pal-sales-page .pal-sales-plan:not(.pal-sales-plan--featured) .pal-sales-plan__body li b {
  color: var(--pal-sales-gold, #f2b84b) !important;
}

.pal-sales-page .pal-sales-audience__grid {
  gap: 42px !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1.55fr) !important;
}

.pal-sales-page .pal-sales-audience h2 {
  max-width: 480px !important;
}

.pal-sales-page .pal-sales-audience p {
  max-width: 470px !important;
}

.pal-sales-page .pal-sales-steps .pal-sales-container,
.pal-sales-page .pal-sales-contact {
  box-sizing: border-box !important;
  width: min(1120px, calc(100% - 48px)) !important;
  max-width: 1120px !important;
  margin-inline: auto !important;
}

@media (max-width: 760px) {
  .pal-sales-page .pal-sales-plans-shell {
    margin-top: -30px !important;
  }

  .pal-sales-page .pal-sales-audience__grid {
    grid-template-columns: 1fr !important;
  }

  .pal-sales-page .pal-sales-steps .pal-sales-container,
  .pal-sales-page .pal-sales-contact {
    width: calc(100% - 32px) !important;
  }
}

/*
 * Elementor cria uma cadeia própria de contêineres para cada página. Nesta
 * landing, a cadeia do shortcode estava herdando a largura de uma coluna
 * estreita — por isso as seções finais ficavam comprimidas à esquerda.
 * Desempacotamos somente a cadeia que contém .pal-sales-page.
 */
.elementor .elementor-element:has(.pal-sales-page),
.elementor .elementor-widget:has(.pal-sales-page),
.elementor .elementor-widget:has(.pal-sales-page) > .elementor-widget-container,
.elementor .elementor-widget:has(.pal-sales-page) .elementor-shortcode {
  box-sizing: border-box !important;
  min-width: 0 !important;
  max-width: none !important;
  overflow: visible !important;
}

.elementor .elementor-widget:has(.pal-sales-page),
.elementor .elementor-widget:has(.pal-sales-page) > .elementor-widget-container,
.elementor .elementor-widget:has(.pal-sales-page) .elementor-shortcode {
  width: 100% !important;
}

.elementor .pal-sales-page {
  box-sizing: border-box !important;
  display: block !important;
  width: 100vw !important;
  min-width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
}

/*
 * O mesmo conteúdo pode ser inserido em páginas Elementor com IDs diferentes
 * (clone, homologação ou nova página comercial). Não condicione a correção ao
 * ID do documento: a estrutura .pal-sales-page é exclusiva desta landing.
 */
.elementor .pal-sales-page > section {
  box-sizing: border-box !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  grid-template-columns: none !important;
}

.elementor .pal-sales-page > .pal-sales-audience > .pal-sales-container,
.elementor .pal-sales-page > .pal-sales-placements > .pal-sales-container,
.elementor .pal-sales-page > .pal-sales-steps > .pal-sales-container {
  box-sizing: border-box !important;
  width: calc(100% - 48px) !important;
  max-width: 1120px !important;
  min-width: 0 !important;
  margin-inline: auto !important;
}

.elementor .pal-sales-page > .pal-sales-steps .pal-sales-steps__grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
}

.elementor .pal-sales-page > .pal-sales-placements .pal-sales-placement-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
}

.elementor .pal-sales-page > .pal-sales-contact {
  box-sizing: border-box !important;
  display: flex !important;
  width: calc(100% - 48px) !important;
  max-width: 1120px !important;
  margin-inline: auto !important;
}

/*
 * A landing é inserida por shortcode. No clone, o contêiner pai do Elementor
 * continuava com a largura estreita da coluna e reduzia todo o conteúdo, mesmo
 * quando a própria landing já tinha largura total. Libera somente a cadeia que
 * contém a landing — sem alterar as demais páginas criadas no Elementor.
 */
body:has(.pal-sales-page) .elementor .elementor-container:has(.pal-sales-page),
body:has(.pal-sales-page) .elementor .e-con:has(.pal-sales-page),
body:has(.pal-sales-page) .elementor .e-con:has(.pal-sales-page) > .e-con-inner,
body:has(.pal-sales-page) .elementor .elementor-widget:has(.pal-sales-page),
body:has(.pal-sales-page) .elementor .elementor-widget:has(.pal-sales-page) > .elementor-widget-container,
body:has(.pal-sales-page) .elementor .elementor-widget:has(.pal-sales-page) .elementor-shortcode {
  box-sizing: border-box !important;
  max-width: none !important;
  min-width: 0 !important;
  overflow: visible !important;
  width: 100% !important;
}

body:has(.pal-sales-page) .elementor .elementor-container:has(.pal-sales-page),
body:has(.pal-sales-page) .elementor .e-con:has(.pal-sales-page),
body:has(.pal-sales-page) .elementor .e-con:has(.pal-sales-page) > .e-con-inner {
  margin-inline: 0 !important;
  padding-inline: 0 !important;
}

body:has(.pal-sales-page) .pal-sales-page {
  box-sizing: border-box !important;
  display: block !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  max-width: 100vw !important;
  min-width: 100vw !important;
  width: 100vw !important;
}

@media (max-width: 760px) {
  .elementor .pal-sales-page > .pal-sales-audience > .pal-sales-container,
  .elementor .pal-sales-page > .pal-sales-placements > .pal-sales-container,
  .elementor .pal-sales-page > .pal-sales-steps > .pal-sales-container,
  .elementor .pal-sales-page > .pal-sales-contact {
    width: calc(100% - 32px) !important;
  }

  .elementor .pal-sales-page > .pal-sales-steps .pal-sales-steps__grid,
  .elementor .pal-sales-page > .pal-sales-placements .pal-sales-placement-grid {
    grid-template-columns: 1fr !important;
  }
}

/*
 * Página de planos no Elementor
 *
 * A página 10714 usa um container flex do Elementor antes do shortcode. Em
 * alguns templates ele preserva a largura de uma coluna antiga e encolhe todo
 * o conteúdo do Portal Ads. Estes seletores atuam somente nessa página e
 * devolvem ao shortcode a largura completa disponível, sem afetar cabeçalho
 * nem rodapé do portal.
 */
.elementor.elementor-10714,
.elementor.elementor-10714 > .elementor-element.elementor-element-5c6fd97,
.elementor.elementor-10714 > .elementor-element.elementor-element-5c6fd97 > .elementor-element.elementor-element-78bbd25d,
.elementor.elementor-10714 .elementor-element.elementor-element-78bbd25d > .elementor-widget-container,
.elementor.elementor-10714 .elementor-element.elementor-element-78bbd25d .elementor-shortcode {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.elementor.elementor-10714 > .elementor-element.elementor-element-5c6fd97 {
  display: block !important;
  flex: 0 0 100% !important;
}

.elementor.elementor-10714 .pal-sales-page {
  display: block !important;
  width: 100vw !important;
  min-width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
}

.elementor.elementor-10714 .pal-sales-page .pal-sales-container {
  box-sizing: border-box !important;
  width: calc(100% - 48px) !important;
  max-width: 1120px !important;
  min-width: 0 !important;
  margin-inline: auto !important;
}

/*
 * O template do Elementor aplica uma grade genérica às sections diretas do
 * shortcode. Cada uma delas possui somente um container filho; por isso o
 * conteúdo era enviado para a primeira coluna e aparecia estreito e
 * desalinhado. A grade pertence apenas aos blocos internos de cards.
 */
.elementor.elementor-10714 .pal-sales-page > section {
  box-sizing: border-box !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  grid-template-columns: none !important;
}

.elementor.elementor-10714 .pal-sales-page > .pal-sales-contact {
  display: flex !important;
  width: calc(100% - 48px) !important;
  max-width: 1120px !important;
  margin-inline: auto !important;
}

/*
 * Esta section também recebe uma grade genérica do layout antigo do
 * Elementor. Como ela tem somente um filho, o conteúdo caía na primeira
 * coluna e ficava comprimido. A grade deve existir apenas no bloco interno.
 */
.elementor.elementor-10714 .pal-sales-audience {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  grid-template-columns: none !important;
}

.elementor.elementor-10714 .pal-sales-audience__grid {
  display: grid !important;
  grid-template-columns: minmax(300px, .88fr) minmax(0, 1.55fr) !important;
  gap: 64px !important;
}

.elementor.elementor-10714 .pal-sales-audience__grid > * {
  min-width: 0 !important;
}

.elementor.elementor-10714 .pal-sales-audience .pal-sales-numbers {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  width: 100% !important;
}

@media (max-width: 760px) {
  .elementor.elementor-10714 .pal-sales-page .pal-sales-container {
    width: calc(100% - 32px) !important;
  }

  .elementor.elementor-10714 .pal-sales-audience__grid,
  .elementor.elementor-10714 .pal-sales-audience .pal-sales-numbers {
    grid-template-columns: 1fr !important;
  }
}

/*
 * Ajuste fino da landing comercial.
 * Mantém cabeçalho e rodapé do portal fora deste escopo e reproduz a
 * composição aprovada: hero escuro, shell branco sobreposto e blocos densos.
 */
.elementor.elementor-10714 .pal-sales-page {
  background: #fff !important;
  display: block !important;
  margin-inline: calc(50% - 50vw) !important;
  max-width: 100vw !important;
  min-width: 100vw !important;
  overflow: hidden !important;
  width: 100vw !important;
}

.elementor.elementor-10714 .pal-sales-page > :is(section, header, footer) {
  box-sizing: border-box !important;
  clear: both !important;
  display: block !important;
  float: none !important;
  max-width: none !important;
  min-width: 0 !important;
  width: 100% !important;
}

.elementor.elementor-10714 .pal-sales-page .pal-sales-container {
  box-sizing: border-box !important;
  margin-inline: auto !important;
  max-width: 1120px !important;
  min-width: 0 !important;
  width: calc(100% - 48px) !important;
}

.elementor.elementor-10714 .pal-sales-page .pal-sales-hero {
  background: linear-gradient(115deg, var(--pal-sales-navy, #102846) 0%, #102a4d 55%, var(--pal-sales-red-dark, #ae1430) 155%) !important;
  padding: 70px 0 112px !important;
}

.elementor.elementor-10714 .pal-sales-page .pal-sales-hero__grid {
  align-items: center !important;
  display: grid !important;
  gap: 54px !important;
  grid-template-columns: minmax(0, 1.12fr) minmax(320px, .88fr) !important;
}

/* O shell deve avançar 60--100px sobre o hero, como no mockup aprovado. */
.elementor.elementor-10714 .pal-sales-page .pal-sales-main {
  background: transparent !important;
  display: block !important;
  padding: 0 0 40px !important;
}

.elementor.elementor-10714 .pal-sales-page .pal-sales-plans-shell {
  box-shadow: 0 22px 48px rgba(23, 42, 66, .14) !important;
  box-sizing: border-box !important;
  margin: -60px auto 0 !important;
  max-width: 1120px !important;
  padding: 30px 28px 28px !important;
  position: relative !important;
  width: calc(100% - 48px) !important;
  z-index: 5 !important;
}

/* Cada plano conserva a cor de marca; o plano Impacto precisa de checks brancos. */
.elementor.elementor-10714 .pal-sales-page .pal-sales-plan:not(.pal-sales-plan--featured) .pal-sales-plan__body li b {
  color: var(--pal-sales-gold, #f2b84b) !important;
}

.elementor.elementor-10714 .pal-sales-page .pal-sales-plan--featured .pal-sales-plan__body li b {
  color: var(--pal-sales-red, #cf1d3b) !important;
}

.elementor.elementor-10714 .pal-sales-page .pal-sales-audience {
  background: #f2f5fa !important;
  padding: 72px 0 !important;
}

.elementor.elementor-10714 .pal-sales-page .pal-sales-audience__grid {
  align-items: start !important;
  display: grid !important;
  gap: 38px !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
}

.elementor.elementor-10714 .pal-sales-page .pal-sales-audience h2 {
  font-size: clamp(34px, 3vw, 42px) !important;
  letter-spacing: -.045em !important;
  line-height: 1.06 !important;
  max-width: 540px !important;
}

.elementor.elementor-10714 .pal-sales-page .pal-sales-audience p {
  font-size: 15px !important;
  line-height: 1.58 !important;
  margin-bottom: 0 !important;
  max-width: 435px !important;
}

.elementor.elementor-10714 .pal-sales-page .pal-sales-audience .pal-sales-numbers {
  display: grid !important;
  gap: 14px !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  margin: 0 !important;
  width: 100% !important;
}

.elementor.elementor-10714 .pal-sales-page .pal-sales-audience .pal-sales-numbers > div {
  min-height: 0 !important;
  padding: 20px 18px !important;
}

.elementor.elementor-10714 .pal-sales-page .pal-sales-steps {
  background: #f2f5fa !important;
  padding: 72px 0 62px !important;
}

.elementor.elementor-10714 .pal-sales-page .pal-sales-steps__grid {
  display: grid !important;
  gap: 16px !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.elementor.elementor-10714 .pal-sales-page .pal-sales-steps__grid article {
  min-height: 154px !important;
  padding: 25px 20px 20px 85px !important;
}

.elementor.elementor-10714 .pal-sales-page .pal-sales-contact {
  box-sizing: border-box !important;
  display: flex !important;
  margin: 0 auto !important;
  max-width: 1120px !important;
  width: calc(100% - 48px) !important;
}

@media (max-width: 760px) {
  .elementor.elementor-10714 .pal-sales-page .pal-sales-container,
  .elementor.elementor-10714 .pal-sales-page .pal-sales-plans-shell,
  .elementor.elementor-10714 .pal-sales-page .pal-sales-contact {
    width: calc(100% - 32px) !important;
  }

  .elementor.elementor-10714 .pal-sales-page .pal-sales-hero {
    padding: 56px 0 72px !important;
  }

  .elementor.elementor-10714 .pal-sales-page .pal-sales-hero__grid,
  .elementor.elementor-10714 .pal-sales-page .pal-sales-audience__grid,
  .elementor.elementor-10714 .pal-sales-page .pal-sales-audience .pal-sales-numbers,
  .elementor.elementor-10714 .pal-sales-page .pal-sales-steps__grid {
    grid-template-columns: 1fr !important;
  }

  .elementor.elementor-10714 .pal-sales-page .pal-sales-plans-shell {
    margin-top: -30px !important;
  }
}
.pal-confirm-title{margin:0 0 16px;color:#0d2340;font-size:22px}
.pal-confirm-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px}
.pal-confirm-grid>div{padding:14px;border:1px solid #dce4ef;border-radius:12px;background:#fff;min-width:0}
.pal-confirm-grid span{display:block;margin-bottom:5px;color:#65758b;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.pal-confirm-grid strong{display:block;color:#10233f;overflow-wrap:anywhere}
.pal-confirm-wide{grid-column:1/-1}
.pal-confirm-images{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px}
.pal-confirm-images>div{padding:14px;border:1px solid #dce4ef;border-radius:12px;background:#fff}
.pal-confirm-images span{display:block;margin-bottom:8px;color:#65758b;font-size:12px;font-weight:700;text-transform:uppercase}
.pal-confirm-images img{display:block;width:100%;max-height:180px;object-fit:contain;border-radius:8px;background:#f1f4f8}
.pal-payment-title{margin:6px 0 12px;color:#0d2340;font-size:18px}
.pal-payment-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px}
.pal-payment-options label{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;align-items:center;padding:15px;border:1px solid #cbd7e7;border-radius:12px;background:#fff;cursor:pointer}
.pal-payment-options input{grid-row:1/3}
.pal-payment-options small{color:#65758b}
.pal-payment-options label:has(input:checked){border-color:var(--pal-primary);box-shadow:0 0 0 3px rgba(232,25,44,.09)}
.pal-payment-options label.is-disabled{cursor:not-allowed;opacity:.58;background:#f1f5f9}
.pal-payment-status{display:block;margin-top:6px;color:var(--pal-text-muted);font-size:11px;font-weight:700}
.pal-payment-status--paid_pending_review{color:#0b7a3b}
.pal-payment-status--failed{color:#be123c}
.pal-embedded-checkout{max-width:760px;margin:0 auto;padding:22px;border:1px solid #dce5ef;border-radius:18px;background:#fff;box-shadow:0 16px 40px rgba(13,35,64,.08)}
.pal-embedded-checkout__head{display:grid;grid-template-columns:1fr auto;gap:4px 20px;align-items:center;margin-bottom:20px;padding-bottom:18px;border-bottom:1px solid #e7edf4}
.pal-embedded-checkout__head span{grid-column:1/-1;color:#64748b;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.pal-embedded-checkout__head h3{margin:0;color:#0d2340;font-size:24px}
.pal-embedded-checkout__head p{grid-column:1;margin:2px 0 0;color:#65758b}
.pal-embedded-checkout__head strong{grid-column:2;grid-row:2/4;color:#0d2340;font-size:24px}
.pal-embedded-checkout__loading{padding:18px;text-align:center;color:#65758b;border-radius:12px;background:#f6f8fb}
.pal-embedded-checkout__result{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:18px;padding:18px;border:1px solid #a7dfbf;border-radius:14px;background:#f0fdf4}
.pal-embedded-checkout__result.is-error{border-color:#fecaca;background:#fff1f2}
.pal-embedded-checkout__result h4,.pal-embedded-checkout__result p{width:100%;margin:0}
.pal-embedded-checkout__qr{display:block;width:220px;height:220px;object-fit:contain;margin:4px auto}
.pal-embedded-checkout__pix-code{width:100%;min-height:86px;padding:10px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;font-size:12px;word-break:break-all}
@media(max-width:700px){.pal-confirm-grid,.pal-confirm-images,.pal-payment-options{grid-template-columns:1fr}.pal-confirm-wide{grid-column:auto}}
@media(max-width:700px){.pal-embedded-checkout{padding:14px}.pal-embedded-checkout__head{grid-template-columns:1fr}.pal-embedded-checkout__head strong{grid-column:1;grid-row:auto}.pal-embedded-checkout__qr{width:190px;height:190px}}

/* Four real advertising environments: Home, categories, columnists and stories. */
.pal-home-placement-tabs{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:0 auto 24px}
.pal-home-placement-tab{border:1px solid rgba(15,39,71,.16);background:#fff;color:var(--pal-text,#0f2747);border-radius:999px;padding:10px 18px;font-weight:800;cursor:pointer}
.pal-home-placement-tab:hover,.pal-home-placement-tab.is-active{background:var(--pal-primary,#e8192c);border-color:var(--pal-primary,#e8192c);color:#fff}
.pal-home-placement-panel[hidden]{display:none!important}
.pal-home-placement-panel.is-active{display:grid}
.pal-home-pm__scenario-grid{padding:10px;display:grid;grid-template-columns:minmax(0,1fr) 128px;gap:8px;min-height:0;align-content:start}
.pal-home-pm__scenario-slot{min-height:58px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;padding:10px 8px}
.pal-home-pm__scenario-slot strong{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.02em}
.pal-home-pm__scenario-slot-size{display:block;font-size:10px;line-height:1.25}
.pal-home-pm__scenario-slot-format{display:inline-flex;align-items:center;justify-content:center;padding:3px 7px;border-radius:999px;background:rgba(232,25,44,.1);color:var(--pal-primary,#e8192c);font-size:9px;font-weight:800;line-height:1.2;white-space:nowrap}
.pal-home-pm__scenario-slot--1{grid-column:1/-1}
.pal-home-pm__scenario-slot--2{grid-column:1;min-height:82px;margin-top:18px}
.pal-home-pm__scenario-slot--3{grid-column:1;min-height:82px}
.pal-home-pm__scenario-slot--4{grid-column:2;grid-row:2/span 2;min-height:172px}
.pal-home-pm__scenario-slot--5{grid-column:1/-1;min-height:58px;margin-top:16px}
.pal-home-pm__scenario-slot--format-horizontal{aspect-ratio:16 / 3;min-height:0}
.pal-home-pm--scenario-home .pal-home-pm__scenario-slot--format-portrait-square{width:min(42%,140px);min-height:174px;aspect-ratio:7 / 12;justify-self:center}
.pal-home-pm--scenario-home .pal-home-pm__scenario-slot--format-responsive-rail{min-height:174px}
.pal-home-pm--scenario-categorias .pal-home-pm__scenario-slot--format-responsive-rail{min-height:174px}
.pal-home-pm--scenario-colunistas .pal-home-pm__scenario-slot--format-responsive-horizontal{aspect-ratio:16 / 3;min-height:0}
.pal-home-pm--scenario-colunistas .pal-home-pm__scenario-grid{grid-template-columns:1fr}
.pal-home-pm--scenario-colunistas .pal-home-pm__scenario-slot--2{min-height:128px}
.pal-home-pm--scenario-colunistas .pal-home-pm__scenario-slot--3{grid-column:1/-1;min-height:72px}
@media(max-width:640px){.pal-home-placement-tab{width:calc(50% - 4px);padding:9px 10px}.pal-home-pm__scenario-grid{grid-template-columns:1fr;min-height:0}.pal-home-pm__scenario-slot,.pal-home-pm__scenario-slot--1,.pal-home-pm__scenario-slot--2,.pal-home-pm__scenario-slot--3,.pal-home-pm__scenario-slot--4,.pal-home-pm__scenario-slot--5{grid-column:1;grid-row:auto;min-height:64px;margin-top:0}.pal-home-pm__scenario-slot--format-horizontal,.pal-home-pm--scenario-colunistas .pal-home-pm__scenario-slot--format-responsive-horizontal{aspect-ratio:auto}.pal-home-pm--scenario-home .pal-home-pm__scenario-slot--format-portrait-square{width:auto;min-height:0;aspect-ratio:1;justify-self:stretch}.pal-home-pm__scenario-slot-format{white-space:normal;text-align:center}}

/* Author Hub bridge: self-service sponsor submission with editorial approval. */
.pal-columnist-sponsor{max-width:1180px;margin:24px auto;padding:24px;border:1px solid #dbe5f0;border-radius:18px;background:#fff;box-shadow:0 14px 38px rgba(15,39,71,.07);box-sizing:border-box}
.pal-columnist-sponsor[hidden]{display:none!important}
.pal-columnist-sponsor__head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:20px}
.pal-columnist-sponsor__head span{color:var(--pal-primary,#e8192c);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.pal-columnist-sponsor__head h2{margin:4px 0 6px;color:#0f2747;font-size:26px}
.pal-columnist-sponsor__head p{margin:0;color:#64748b}
.pal-columnist-sponsor__tabs{display:flex;gap:10px;align-items:center;margin:0 0 20px;padding:8px;border:1px solid #dbe5f0;border-radius:12px;background:#f8fbff}
.pal-columnist-sponsor__tabs a{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border-radius:9px;color:#173251;font-size:13px;font-weight:900;text-decoration:none}
.pal-columnist-sponsor__tabs a.is-active{background:#fff;color:var(--pal-primary,#e8192c);box-shadow:0 2px 8px rgba(15,39,71,.08)}
.pal-columnist-sponsor__tabs span{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 4px;border-radius:999px;background:#e5edf8;color:#214b8f;font-size:11px}
.pal-columnist-sponsor__new{padding:10px 14px;border-radius:10px;background:var(--pal-primary,#e8192c);color:#fff!important;font-size:13px;font-weight:900;text-decoration:none;white-space:nowrap}
.pal-columnist-sponsor__notice,.pal-columnist-sponsor__error{margin-bottom:16px;padding:12px 14px;border-radius:10px;background:#ecfdf3;color:#087443;font-weight:700}
.pal-columnist-sponsor__error{background:#fff1f2;color:#be123c}
.pal-columnist-sponsor__empty{padding:30px;border:1px dashed #cbd8e7;border-radius:14px;background:#fbfdff;text-align:center;color:#64748b}.pal-columnist-sponsor__empty strong{display:block;color:#173251}.pal-columnist-sponsor__empty p{margin:8px 0 16px}.pal-columnist-sponsor__empty a{display:inline-flex;padding:10px 14px;border-radius:9px;background:var(--pal-primary,#e8192c);color:#fff;font-size:13px;font-weight:900;text-decoration:none}
.author-hub-panel>.pal-columnist-sponsor{width:100%;max-width:none;margin:0;align-self:start}
.pal-author-hub-sponsor-area .author-hub-panel-content[hidden]{display:none!important}
.pal-columnist-sponsor__campaigns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 22px}
.pal-columnist-sponsor__campaign{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid #dbe5f0;border-radius:12px;background:#f8fbff}
.pal-columnist-sponsor__campaign.is-current{border-color:var(--pal-primary,#e8192c);box-shadow:0 0 0 2px rgba(232,25,44,.08)}
.pal-columnist-sponsor__campaign-logo{display:grid;place-items:center;width:54px;height:54px;overflow:hidden;border-radius:10px;background:#eef3f8;color:#64748b;font-size:10px;text-align:center}
.pal-columnist-sponsor__campaign-logo img{width:100%;height:100%;object-fit:cover}
.pal-columnist-sponsor__campaign>div:nth-child(2){display:flex;min-width:0;flex-direction:column;gap:4px}
.pal-columnist-sponsor__campaign small{color:#64748b}
.pal-columnist-sponsor__campaign em{color:#64748b;font-size:11px;font-style:normal}
.pal-columnist-sponsor__campaign>a{color:var(--pal-primary,#e8192c);font-weight:900;text-decoration:none}
.pal-columnist-sponsor__managed{color:#64748b;font-size:11px;font-weight:800;text-align:right}
.pal-columnist-sponsor__form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.pal-columnist-sponsor__form label{display:flex;flex-direction:column;gap:7px;color:#173251;font-weight:800}
.pal-columnist-sponsor__form label small{color:#64748b;font-weight:500}
.pal-columnist-sponsor__form input,.pal-columnist-sponsor__form textarea{width:100%;padding:11px 12px;border:1px solid #cbd8e7;border-radius:10px;background:#fff;color:#0f2747;box-sizing:border-box}
.pal-columnist-sponsor__wide{grid-column:1/-1}
.pal-columnist-sponsor__form-head{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:14px 16px;border-radius:12px;background:#eef4ff;color:#173251}
.pal-columnist-sponsor__form-head>div{display:flex;gap:10px;align-items:center}.pal-columnist-sponsor__form-head span{font-weight:900}.pal-columnist-sponsor__form-head strong{padding:6px 10px;border-radius:999px;background:#fff;color:#214b8f;font-size:12px}.pal-columnist-sponsor__form-head p{margin:0;color:#64748b;font-size:12px}
.pal-columnist-sponsor__format{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:16px;border:1px solid #dbe5f0;border-radius:14px}
.pal-columnist-sponsor__format legend,.pal-columnist-sponsor__format-panel legend{padding:0 8px;color:#173251;font-weight:900}
.pal-columnist-sponsor__form .pal-columnist-sponsor__format-option{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start;padding:14px;border:1px solid #cbd8e7;border-radius:12px;background:#fff;cursor:pointer}
.pal-columnist-sponsor__format-option input{width:auto;margin:3px 0 0}.pal-columnist-sponsor__format-option span{display:flex;flex-direction:column;gap:4px}
.pal-columnist-sponsor__format-panel{margin:0;padding:16px;border:1px solid #dbe5f0;border-radius:14px;background:#fbfdff}
.pal-columnist-sponsor__format-panel[hidden]{display:none}
.pal-columnist-sponsor__panel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.pal-columnist-sponsor__section-title{display:flex;flex-direction:column;gap:3px;margin-bottom:14px;color:#173251}.pal-columnist-sponsor__section-title span{color:#64748b;font-size:12px}
.pal-columnist-sponsor__logo-preview{width:92px;height:92px;object-fit:cover;border:1px solid #dbe5f0;border-radius:12px;background:#fff}
.pal-columnist-sponsor__card-preview{overflow:hidden;border:1px solid #dbe5f0;border-radius:14px;background:#fff;box-shadow:0 10px 24px rgba(15,39,71,.07)}
.pal-columnist-sponsor__card-image{display:grid;place-items:center;height:130px;overflow:hidden;background:linear-gradient(135deg,#0f2747,#2368b4);color:#fff;font-weight:900}.pal-columnist-sponsor__card-image img{width:100%;height:100%;object-fit:cover}
.pal-columnist-sponsor__card-preview>strong,.pal-columnist-sponsor__card-preview>p,.pal-columnist-sponsor__card-preview>span,.pal-columnist-sponsor__card-preview>small{display:block;margin:0;padding:8px 12px}.pal-columnist-sponsor__card-preview>p{min-height:40px;padding-top:0;color:#64748b}.pal-columnist-sponsor__card-preview>span{border-top:1px solid #e5ebf2;color:var(--pal-primary,#e8192c);font-weight:900}.pal-columnist-sponsor__card-preview>small{border-top:1px solid #e5ebf2;color:#64748b;text-align:center}
.pal-columnist-sponsor__form button{grid-column:1/-1;justify-self:start;border:0;border-radius:10px;padding:12px 20px;background:var(--pal-primary,#e8192c);color:#fff;font-weight:900;cursor:pointer}
.author-hub-panel-nav>a.author-hub-panel-nav__public{text-align:start!important}
@media(max-width:1100px){.author-hub-card-block .author-hub-table--hide-mobile{display:none!important}.author-hub-card-block .author-hub-mobile-activity-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.author-hub-mobile-activity-card{display:flex!important;min-width:0;flex-direction:column;gap:12px;padding:16px;border:1px solid #dbe5f0;border-radius:14px;background:#fff}.author-hub-mobile-activity-card__title{color:#0f172a;font-weight:800;line-height:1.4}.author-hub-mobile-activity-card__meta{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#64748b}.author-hub-mobile-activity-card__actions{margin-top:auto}.author-hub-mobile-activity-card__actions .author-hub-button{display:flex!important;width:100%;box-sizing:border-box;justify-content:center;white-space:nowrap}}
@media(max-width:900px){.author-hub-panel-nav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;width:100%!important;max-width:none!important;overflow:visible!important}.author-hub-panel-nav>a{display:flex!important;align-items:center!important;justify-content:center!important;min-width:0!important;width:100%!important;box-sizing:border-box!important;white-space:normal!important;text-align:center!important}.author-hub-panel-nav>a.author-hub-panel-nav__public{text-align:center!important}.pal-columnist-sponsor__campaigns,.pal-columnist-sponsor__form,.pal-columnist-sponsor__format,.pal-columnist-sponsor__panel-grid{grid-template-columns:1fr}.pal-columnist-sponsor__wide,.pal-columnist-sponsor__form button{grid-column:1}.pal-columnist-sponsor__form>*{min-width:0}.pal-columnist-sponsor__form input,.pal-columnist-sponsor__form textarea{max-width:100%}}
@media(max-width:700px){.pal-columnist-sponsor{margin:18px 12px;padding:18px}.author-hub-panel>.pal-columnist-sponsor{margin:0}.pal-columnist-sponsor__head{display:block}.pal-columnist-sponsor__head h2{font-size:23px}.pal-columnist-sponsor__tabs{display:grid;grid-template-columns:1fr 1fr}.pal-columnist-sponsor__tabs a{padding:10px 8px;text-align:center}.pal-columnist-sponsor__new{display:inline-block;margin-top:12px}.pal-columnist-sponsor__form-head{display:block}.pal-columnist-sponsor__form-head p{margin-top:8px}}
@media(max-width:640px){.author-hub-card-block .author-hub-mobile-activity-list{grid-template-columns:1fr}}
@media(max-width:480px){.pal-columnist-sponsor__campaign{grid-template-columns:46px minmax(0,1fr)}.pal-columnist-sponsor__campaign>a,.pal-columnist-sponsor__managed{grid-column:2;text-align:left}.pal-columnist-sponsor__format-option{min-width:0}.pal-columnist-sponsor__card-image{height:110px}}
