/*
Theme Name: BonsTutoriais
Theme URI: https://example.com/bonstutoriais
Author: BonsTutoriais
Description: Tema WordPress/WooCommerce para portal de tutoriais e venda de packs de prompts de IA.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
Text Domain: bonstutoriais
License: GPL-2.0-or-later
*/

/* =========================================================
   01. Tokens e modos globais
   ========================================================= */
:root {
  --blue-950: #0a1628;
  --blue-900: #0d2240;
  --blue-800: #1a3a6b;
  --blue-700: #1e4d8c;
  --blue-600: #2563b0;
  --blue-500: #3b82d4;
  --blue-300: #93c5fd;
  --blue-200: #bfdbfe;
  --blue-100: #dbeafe;
  --blue-50: #eff6ff;
  --accent: #f59e0b;
  --accent-dark: #d97706;
  --green: #10b981;
  --red: #ef4444;
  --white: #fff;
  --bg-primary: #fff;
  --bg-secondary: #f0f6ff;
  --bg-card: #fff;
  --text-primary: #1e293b;
  --text-secondary: #475569;
  --text-muted: #94a3b8;
  --border-card: #dbeafe;
  --shadow-sm: 0 1px 3px rgba(0,0,0,.08);
  --shadow-md: 0 4px 16px rgba(30,77,140,.12);
  --shadow-xl: 0 16px 48px rgba(30,77,140,.22);
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 20px;
  --font-display: "Nunito", sans-serif;
  --font-body: "Merriweather", serif;
}

[data-theme="dark"] {
  --bg-primary: #0f1923;
  --bg-secondary: #0d2240;
  --bg-card: #152a47;
  --text-primary: #e2eaf5;
  --text-secondary: #93b8d8;
  --text-muted: #5a7fa0;
  --border-card: #1e3a5f;
  --shadow-sm: 0 1px 3px rgba(0,0,0,.3);
  --shadow-md: 0 4px 16px rgba(0,0,0,.4);
  --shadow-xl: 0 16px 48px rgba(0,0,0,.5);
}

[data-font-size="small"] { font-size: 14px; }
[data-font-size="medium"] { font-size: 15px; }
[data-font-size="large"] { font-size: 18px; }
[data-font-size="xlarge"] { font-size: 21px; }

/* =========================================================
   02. Reset e base
   ========================================================= */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body {
  font-family: var(--font-display);
  background: var(--bg-primary);
  color: var(--text-primary);
  line-height: 1.6;
  overflow-x: hidden;
  transition: background .4s ease, color .4s ease;
}
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; height: auto; }
button, input, select, textarea { font: inherit; }
button { border: 0; cursor: pointer; }
.container { max-width: 1330px; margin: 0 auto; padding: 0 24px; }
.section { padding: 64px 0; background: var(--bg-primary); }
.section-alt { background: var(--bg-secondary); }
.section,
.freebies-section,
.stats-strip {
  position: relative;
}

.section::before,
.freebies-section::before,
.stats-strip::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -1px;
  height: 54px;
  z-index: 1;
  pointer-events: none;
  background-color: inherit;
  clip-path: polygon(0 0, 100% 0, 100% 42%, 84% 52%, 67% 44%, 50% 60%, 32% 48%, 15% 58%, 0 43%);
  animation: eduativa-wave-drift 9s ease-in-out infinite alternate;
}

.section > .container,
.freebies-section > .container,
.stats-strip > .container {
  position: relative;
  z-index: 2;
}

@keyframes eduativa-wave-drift {
  from { clip-path: polygon(0 0, 100% 0, 100% 42%, 84% 52%, 67% 44%, 50% 60%, 32% 48%, 15% 58%, 0 43%); }
  to { clip-path: polygon(0 0, 100% 0, 100% 55%, 84% 43%, 66% 58%, 49% 46%, 31% 61%, 14% 47%, 0 56%); }
}

@media (prefers-reduced-motion: reduce) {
  .section::before,
  .freebies-section::before,
  .stats-strip::before {
    animation: none;
  }
}

/* =========================================================
   Atividades IA
   ========================================================= */
.ai-activity-hero {
  background:
    radial-gradient(circle at 82% 20%, rgba(245,158,11,.24), transparent 30%),
    linear-gradient(135deg, var(--blue-900), var(--blue-700));
}

.ai-activity-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 28px;
  align-items: start;
}

.ai-activity-side {
  display: grid;
  gap: 18px;
  grid-column: 2;
  position: sticky;
  top: 126px;
}

.ai-balance-card,
.ai-instructions-card,
.ai-activity-form,
.ai-preview-card {
  background: var(--bg-card);
  border: 1.5px solid var(--border-card);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-md);
}

.ai-activity-form,
.ai-preview-card {
  box-shadow: none;
}

.ai-balance-card,
.ai-instructions-card {
  padding: 22px;
}

.ai-user-credits-card {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 22px;
  border: 1.5px solid rgba(255,255,255,.12);
  border-radius: var(--radius-lg);
  background: linear-gradient(135deg, var(--blue-900), var(--blue-700));
  color: var(--white);
  box-shadow: var(--shadow-md);
}

.ai-user-credits-card::after {
  content: "";
  position: absolute;
  top: -42px;
  right: -36px;
  width: 132px;
  height: 132px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(245,158,11,.46), rgba(245,158,11,.18) 42%, transparent 72%);
  filter: blur(4px);
  z-index: -1;
}

.ai-user-credits-card span {
  display: block;
  color: var(--blue-200);
  font-size: .72rem;
  font-weight: 950;
  letter-spacing: .11em;
  text-transform: uppercase;
  margin-bottom: 10px;
}

.ai-user-credits-card strong {
  display: block;
  color: var(--white);
  font-family: inherit;
  font-size: 3rem;
  line-height: 1;
  font-weight: 950;
  margin-bottom: 8px;
}

.ai-user-credits-card p {
  color: var(--blue-100);
  font-size: .92rem;
  font-weight: 700;
  margin-bottom: 20px;
}

.ai-user-credits-card a {
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: linear-gradient(135deg, var(--accent), #f97316);
  color: var(--white);
  font-size: .92rem;
  font-weight: 950;
  padding: 11px 16px;
  box-shadow: 0 10px 24px rgba(245,158,11,.28);
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}

.ai-user-credits-card a:hover {
  color: var(--white);
  background: linear-gradient(135deg, #ffad16, var(--accent-dark));
  box-shadow: 0 16px 30px rgba(245,158,11,.34);
  transform: translateY(-2px);
}

.ai-balance-card h2 {
  color: var(--blue-900);
  font-size: 1.35rem;
  line-height: 1.15;
  margin-bottom: 18px;
}

.ai-credit-list {
  display: grid;
  gap: 10px;
  margin-bottom: 18px;
}

.ai-credit-list div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border-radius: 12px;
  background: var(--bg-secondary);
  color: var(--text-secondary);
  font-weight: 800;
}

.ai-credit-list strong {
  display: inline-grid;
  place-items: center;
  min-width: 38px;
  min-height: 34px;
  border-radius: 10px;
  background: var(--accent);
  color: var(--white);
  font-size: 1.05rem;
}

.ai-secondary-action {
  min-height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1.5px solid rgba(30,77,140,.18);
  border-radius: 12px;
  padding: 11px 16px;
  color: var(--blue-700);
  background: var(--white);
  font-weight: 900;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.ai-secondary-action:hover {
  transform: translateY(-1px);
  border-color: rgba(245,158,11,.45);
  box-shadow: 0 14px 26px rgba(30,77,140,.12);
  color: var(--accent-dark);
}

.ai-secondary-action:disabled {
  cursor: not-allowed;
  opacity: .55;
  transform: none;
  box-shadow: none;
}

.ai-full-access-note {
  margin: -4px 0 16px;
  padding: 10px 12px;
  border-radius: 12px;
  background: rgba(16,185,129,.1);
  color: var(--green);
  font-size: .9rem;
  font-weight: 900;
  line-height: 1.45;
}

.ai-instructions-card p {
  color: var(--text-secondary);
  line-height: 1.7;
}

.ai-activity-workspace {
  display: grid;
  gap: 24px;
  grid-column: 1;
  grid-row: 1;
}

.ai-activity-form {
  padding: 26px;
}

.ai-activity-form[data-ai-form="manual"],
.ai-activity-form[data-ai-form="ia"] {
  display: grid;
  gap: 22px;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.ai-activity-form[hidden] {
  display: none !important;
}

.ai-flow-block {
  display: grid;
  gap: 10px;
  margin-top: 45px;
}

.ai-flow-block:first-of-type {
  margin-top: 0;
}

.ai-flow-title {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  align-items: center;
  overflow: hidden;
  border-radius: 14px;
  background: #eef6ff;
  color: #344763;
  font-size: .94rem;
  font-weight: 900;
}

.ai-flow-title span {
  display: grid;
  place-items: center;
  min-height: 48px;
  background: linear-gradient(135deg, var(--accent), #f97316);
  color: #fff;
  font-size: 1.45rem;
  font-weight: 950;
}

.ai-flow-title strong {
  padding: 12px 16px;
}

.ai-flow-helper {
  margin: -2px 0 0 48px;
  color: #4b5f7d;
  font-size: .9rem;
  font-weight: 800;
  line-height: 1.45;
}

.ai-flow-panel {
  padding: 26px;
  border: 1.5px solid var(--border-card);
  border-radius: var(--radius-lg);
  background: var(--bg-card);
}

.ai-mode-selector {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.ai-mode-card {
  position: relative;
  display: grid;
  gap: 6px;
  width: 100%;
  text-align: left;
  padding: 18px;
  border: 1.5px solid var(--border-card);
  border-radius: 16px;
  background: var(--bg-secondary);
  cursor: pointer;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease, background .18s ease;
}

.ai-mode-card input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.ai-mode-card span {
  color: var(--blue-900);
  font-weight: 950;
}

.ai-mode-card strong {
  color: var(--blue-600);
  font-size: .9rem;
}

.ai-mode-card.is-active {
  background: linear-gradient(180deg, #fff, #eef5ff);
  border-color: rgba(59,130,212,.42);
  box-shadow: 0 16px 36px rgba(30,77,140,.14);
  transform: translateY(-1px);
}

.ai-field-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.ai-field-wide {
  grid-column: 1 / -1;
}

.ai-field-row-three,
.ai-ia-generate-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  align-items: end;
}

.ai-ia-generate-row {
  grid-template-columns: minmax(360px, 1.8fr) minmax(260px, 1fr) minmax(180px, .85fr);
}

.ai-activity-form label {
  display: grid;
  gap: 8px;
  color: var(--blue-900);
  font-size: .86rem;
  font-weight: 900;
}

.ai-activity-form input:not([type="radio"]),
.ai-activity-form select,
.ai-activity-form textarea {
  width: 100%;
  min-height: 50px;
  border: 1.5px solid var(--border-card);
  border-radius: 12px;
  background: var(--white);
  color: var(--text-primary);
  padding: 12px 14px;
  font: inherit;
  outline: none;
}

.ai-activity-form textarea {
  resize: vertical;
  line-height: 1.55;
}

.ai-activity-form input:focus,
.ai-activity-form select:focus,
.ai-activity-form textarea:focus {
  border-color: var(--blue-500);
  box-shadow: 0 0 0 3px rgba(59,130,212,.15);
}

.ai-quantity-control {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) 42px;
  gap: 8px;
  align-items: center;
}

.ai-quantity-control button {
  appearance: none;
  -webkit-appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border: 0;
  border-radius: 50%;
  background: linear-gradient(135deg, #ff8a1f, #f15b1f);
  color: #fff;
  font-size: 1.25rem;
  font-weight: 950;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  box-shadow: 0 10px 20px rgba(245,124,32,.18);
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease, background .2s ease;
}

.ai-quantity-control button:hover {
  background: linear-gradient(135deg, #2f7ed8, #174986);
  transform: translateY(-1px);
  filter: brightness(1.04);
  box-shadow: 0 14px 24px rgba(30,77,140,.24);
}

.ai-quantity-control button:focus-visible {
  outline: 3px solid rgba(47,126,216,.28);
  outline-offset: 3px;
}

.ai-quantity-control input[type="number"] {
  text-align: center;
  font-weight: 950;
  padding-inline: 8px;
}

.ai-manual-fields {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  margin-top: 16px;
}

.ai-generate-fields {
  display: grid;
  gap: 16px;
  margin-top: 16px;
}

.ai-generate-row {
  display: grid;
  grid-template-columns: minmax(180px, 240px) auto;
  gap: 12px;
  align-items: end;
}

.ai-generate-button {
  min-height: 50px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  border: 0;
  border-radius: 12px;
  background: linear-gradient(135deg, var(--blue-600), var(--blue-700));
  color: var(--white);
  padding: 12px 22px;
  font-weight: 950;
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

.ai-generate-button.is-loading::after {
  content: "";
  width: 18px;
  height: 18px;
  border: 3px solid rgba(255,255,255,.36);
  border-top-color: #fff;
  border-radius: 50%;
  animation: ai-spin .75s linear infinite;
}

.ai-generate-button:disabled {
  cursor: not-allowed;
  opacity: .78;
  transform: none;
  box-shadow: none;
}

.ai-generate-button:hover {
  transform: translateY(-1px);
  filter: brightness(1.04);
  box-shadow: 0 14px 26px rgba(30,77,140,.18);
}

.ai-generated-items {
  border: 1.5px solid var(--border-card);
  border-radius: 16px;
  background: var(--bg-secondary);
  padding: 14px;
}

.ai-generated-items > p {
  color: var(--text-secondary);
  font-weight: 800;
  margin: 0;
}

.ai-generated-list {
  display: grid;
  gap: 10px;
}

.ai-generated-row {
  display: grid;
  grid-template-columns: 34px minmax(120px, .8fr) minmax(0, 1.2fr);
  gap: 10px;
  align-items: end;
}

.ai-generated-row > span {
  min-height: 50px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: var(--white);
  color: var(--blue-700);
  font-weight: 950;
}

.ai-generated-row label {
  gap: 5px;
}

.ai-generated-row small {
  color: var(--text-muted);
  font-size: .72rem;
  font-weight: 900;
  text-transform: uppercase;
}

.ai-generate-fields p {
  align-self: end;
  color: var(--text-secondary);
  line-height: 1.6;
}

.ai-form-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 22px;
}

.ai-form-actions .btn-primary {
  min-height: 48px;
  border: 0;
  cursor: pointer;
}

.ai-cost-button {
  display: inline-grid !important;
  place-items: center;
  gap: 2px;
  line-height: 1.1;
}

.ai-cost-button small {
  color: rgba(255,255,255,.86);
  font-size: .72rem;
  font-weight: 900;
}

.ai-form-alert-row {
  display: grid;
  gap: 12px;
  margin-top: 12px;
}

.ai-activity-form.is-locked .ai-field-grid,
.ai-activity-form.is-locked .ai-manual-fields,
.ai-activity-form.is-locked .ai-generate-fields {
  opacity: .68;
}

.ai-form-actions .btn-primary.is-loading {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.ai-form-actions .btn-primary.is-loading::after {
  content: "";
  width: 18px;
  height: 18px;
  border: 3px solid rgba(255,255,255,.36);
  border-top-color: #fff;
  border-radius: 50%;
  animation: ai-spin .75s linear infinite;
}

@keyframes ai-spin {
  to {
    transform: rotate(360deg);
  }
}

.ai-generate-warning {
  align-self: center;
  color: #6b7894;
  font-size: .83rem;
  font-weight: 800;
  line-height: 1.35;
  margin: 0;
}

.ai-ia-observation {
  margin: -2px 0 0;
  color: #6b7894;
  font-size: .86rem;
  font-weight: 800;
  line-height: 1.45;
}

.ai-token-alert {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 48px;
  padding: 10px 14px;
  border: 1.5px solid #f4c6c6;
  border-radius: 12px;
  background: #fff1f1;
  color: #8f1f1f;
  font-size: .9rem;
  font-weight: 850;
  opacity: 0;
  transform: translateY(6px);
  transition: opacity .24s ease, transform .24s ease;
}

.ai-token-alert > span {
  min-width: 0;
}

.ai-token-alert[hidden] {
  display: none;
}

.ai-token-alert.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.ai-token-alert-inline {
  grid-column: 1 / -1;
  justify-self: stretch;
  width: 100%;
  margin-top: -2px;
}

.ai-flow-panel .ai-token-alert-inline {
  margin-top: 12px;
}

.ai-token-alert-success {
  border-color: #b9ead4;
  background: #ecfff6;
  color: #087047;
}

.ai-token-alert a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  border-radius: 10px;
  background: #f15b1f;
  color: #fff;
  padding: 8px 12px;
  font-size: .84rem;
  font-weight: 950;
  text-decoration: none;
  white-space: nowrap;
  transition: background .2s ease, transform .2s ease, box-shadow .2s ease;
}

.ai-token-alert button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  border: 0;
  border-radius: 10px;
  background: #174986;
  color: #fff;
  padding: 8px 12px;
  font-size: .84rem;
  font-weight: 950;
  cursor: pointer;
  white-space: nowrap;
  transition: background .2s ease, transform .2s ease, box-shadow .2s ease;
}

.ai-token-alert a:hover {
  background: #174986;
  color: #fff;
  transform: translateY(-1px);
  box-shadow: 0 12px 22px rgba(30,77,140,.18);
}

.ai-token-alert button:hover {
  background: #f15b1f;
  color: #fff;
  transform: translateY(-1px);
  box-shadow: 0 12px 22px rgba(245,124,32,.2);
}

.ai-form-message {
  min-height: 24px;
  color: var(--text-secondary);
  font-size: .92rem;
  font-weight: 800;
}

.ai-history-success {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 14px 16px;
  border: 1.5px solid rgba(16,185,129,.22);
  border-radius: 14px;
  background: rgba(16,185,129,.1);
  color: #047857;
  font-weight: 900;
}

.ai-history-success[hidden] {
  display: none;
}

.ai-history-success a {
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: var(--white);
  color: #047857;
  padding: 8px 14px;
  box-shadow: 0 10px 22px rgba(16,185,129,.14);
  font-size: .9rem;
  font-weight: 950;
}

.ai-history-success a:hover {
  color: #065f46;
  transform: translateY(-1px);
}

.ai-mobile-reset-actions {
  display: none;
}

.ai-preview-card {
  padding: 24px;
  overflow: hidden;
}

.ai-preview-head {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 20px;
}

.ai-preview-head h2 {
  color: var(--blue-900);
  font-size: 1.45rem;
  line-height: 1.15;
}

.ai-preview-badge {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  border-radius: 999px;
  padding: 5px 12px;
  background: rgba(16,185,129,.1);
  color: var(--green);
  font-size: .75rem;
  font-weight: 950;
}

.ai-crossword-preview {
  min-height: 260px;
  display: grid;
  place-items: center;
  border: 1.5px dashed rgba(59,130,212,.28);
  border-radius: 16px;
  background: linear-gradient(180deg, #ffffff, #f6faff);
  padding: 22px;
  overflow-x: auto;
}

.ai-empty-preview {
  color: var(--text-muted);
  font-weight: 800;
  text-align: center;
}

.ai-crossword-grid {
  display: grid;
  gap: 6px;
  width: max-content;
  max-width: 100%;
}

.ai-crossword-row {
  display: flex;
  gap: 6px;
}

.ai-crossword-row span {
  position: relative;
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  border: 1.5px solid rgba(30,77,140,.32);
  border-radius: 8px;
  background: var(--white);
  color: var(--blue-900);
  font-weight: 950;
}

.ai-crossword-row span.is-empty {
  border-color: transparent;
  background: transparent;
}

.ai-crossword-cell {
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.58);
}

.ai-crossword-row span::before {
  content: attr(data-number);
  position: absolute;
  top: 2px;
  left: 4px;
  color: var(--blue-500);
  font-size: .55rem;
  font-weight: 900;
}

.ai-clues-list {
  display: grid;
  gap: 8px;
  margin: 18px 0 0;
  padding-left: 22px;
  color: var(--text-secondary);
  line-height: 1.55;
}

.ai-clues-list li::marker {
  color: var(--blue-600);
  font-weight: 900;
}

.ai-activity-content {
  margin-top: 28px;
}

[data-theme="dark"] .ai-balance-card h2,
[data-theme="dark"] .ai-mode-card span,
[data-theme="dark"] .ai-activity-form label,
[data-theme="dark"] .ai-preview-head h2 {
  color: var(--text-primary);
}

[data-theme="dark"] .ai-mode-card.is-active,
[data-theme="dark"] .ai-crossword-preview {
  background: var(--blue-900);
}

[data-theme="dark"] .ai-activity-form input:not([type="radio"]),
[data-theme="dark"] .ai-activity-form select,
[data-theme="dark"] .ai-activity-form textarea,
[data-theme="dark"] .ai-crossword-row span,
[data-theme="dark"] .ai-secondary-action {
  background: var(--bg-secondary);
}

@media print {
  .topbar,
  .header,
  .footer,
  .back-to-top,
  .cart-float,
  .ai-activity-hero,
  .ai-activity-side,
  .ai-activity-form,
  .ai-activity-content {
    display: none !important;
  }

  .ai-activity-shell {
    display: block;
  }

  .ai-preview-card {
    border: 0;
    box-shadow: none;
  }
}

@media (max-width: 1024px) {
  .ai-activity-shell {
    grid-template-columns: 1fr;
  }

  .ai-activity-side {
    position: static;
    grid-column: auto;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ai-activity-workspace {
    grid-column: auto;
    grid-row: auto;
  }
}

@media (max-width: 700px) {
  .ai-activity-shell {
    gap: 22px;
  }

  .ai-activity-workspace {
    order: 1;
  }

  .ai-activity-side {
    order: 2;
  }

  .ai-activity-side,
  .ai-mode-selector,
  .ai-field-grid,
  .ai-field-row-three,
  .ai-ia-generate-row,
  .ai-manual-fields,
  .ai-generate-row,
  .ai-generated-row {
    grid-template-columns: 1fr;
  }

  .ai-mode-selector {
    gap: 10px;
    margin-bottom: 10px;
  }

  .ai-post-actions {
    order: 30;
  }

  .ai-history-success {
    order: 32;
  }

  .ai-mobile-reset-actions {
    order: 31;
  }

  .ai-preview-card {
    order: 20;
  }

  .ai-mode-card {
    padding: 15px;
  }

  .ai-flow-block {
    gap: 8px;
    margin-top: 28px;
  }

  .ai-generate-warning {
    width: 100%;
    margin-top: 0;
  }

  .ai-flow-title {
    grid-template-columns: 42px minmax(0, 1fr);
    font-size: .86rem;
  }

  .ai-flow-title span {
    min-height: 42px;
    font-size: 1.2rem;
  }

  .ai-flow-title strong {
    padding: 10px 12px;
    line-height: 1.3;
  }

  .ai-flow-helper {
    margin-left: 0;
  }

  .ai-flow-panel,
  .ai-balance-card,
  .ai-instructions-card,
  .ai-preview-card {
    padding: 16px;
  }

  .ai-activity-form[data-ai-form="manual"],
  .ai-activity-form[data-ai-form="ia"] {
    padding: 0;
  }

  .ai-activity-form input:not([type="radio"]),
  .ai-activity-form select,
  .ai-activity-form textarea {
    min-height: 48px;
    padding: 11px 12px;
  }

  .ai-quantity-control {
    grid-template-columns: 44px minmax(0, 1fr) 44px;
  }

  .ai-quantity-control button {
    width: 44px;
    height: 44px;
  }

  .ai-generated-items {
    padding: 12px;
  }

  .ai-generated-list {
    gap: 12px;
  }

  .ai-generated-row {
    grid-template-columns: 42px minmax(0, 1fr);
    align-items: start;
    gap: 8px 10px;
    padding: 12px;
    border: 1px solid rgba(30,77,140,.1);
    border-radius: 14px;
    background: #f8fbff;
  }

  .ai-generated-row:nth-child(even) {
    background: #eef6ff;
  }

  .ai-generated-row > span {
    grid-row: 1 / span 2;
    min-height: 42px;
  }

  .ai-generated-row label {
    min-width: 0;
  }

  .ai-form-actions {
    align-items: stretch;
    margin-top: 10px;
  }

  .ai-form-actions .btn-primary,
  .ai-generate-button,
  .ai-secondary-action {
    width: 100%;
  }

  .ai-token-alert,
  .ai-history-success {
    align-items: stretch;
    flex-direction: column;
  }

  .ai-token-alert a,
  .ai-token-alert button,
  .ai-history-success a {
    width: 100%;
  }

  .ai-token-alert-success [data-ai-reset-form] {
    display: none;
  }

  .ai-mobile-reset-actions:not([hidden]) {
    display: grid;
  }

  .ai-mobile-reset-actions button {
    width: 100%;
    min-height: 48px;
    border: 0;
    border-radius: 12px;
    background: #174986;
    color: #fff;
    padding: 12px 16px;
    font-weight: 950;
    cursor: pointer;
    transition: background .2s ease, transform .2s ease, box-shadow .2s ease;
  }

  .ai-mobile-reset-actions button:hover {
    background: #f15b1f;
    transform: translateY(-1px);
    box-shadow: 0 12px 22px rgba(245,124,32,.2);
  }

  .ai-preview-head {
    display: grid;
  }

  .ai-crossword-preview {
    min-height: 220px;
    justify-items: start;
    place-items: start;
    padding: 14px;
  }

  .ai-crossword-grid {
    max-width: none;
    gap: 4px;
  }

  .ai-crossword-row {
    gap: 4px;
  }

  .ai-crossword-row span {
    width: 31px;
    height: 31px;
    border-radius: 7px;
    font-size: .84rem;
  }

  .ai-clues-list {
    padding-left: 18px;
    font-size: .93rem;
  }
}
.section-header, .section-head { text-align: center; margin-bottom: 32px; }
.section-head { display: flex; justify-content: space-between; align-items: end; gap: 20px; text-align: left; }
.section-eyebrow, .eyebrow { color: var(--blue-600); font-size: .8rem; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; margin-bottom: 8px; }
.section-title, .section-head h2 { color: var(--blue-900); font-size: clamp(1.8rem, 3vw, 2.5rem); line-height: 1.12; font-weight: 900; }
[data-theme="dark"] .section-title, [data-theme="dark"] .section-head h2 { color: var(--text-primary); }
.section-desc, .section-head p { color: var(--text-secondary); max-width: 650px; }

.reading-progress { position: fixed; inset: 0 auto auto 0; height: 3px; width: 0; background: var(--accent); z-index: 9999; }

/* Formularios globais */
body :where(.woocommerce, .woocommerce-page, .wc-block-checkout, .wc-block-cart, .wp-block-woocommerce-checkout, .wp-block-woocommerce-cart, .single-content, .entry-content) :where(label, .wc-block-components-text-input label, .wc-block-components-combobox-control label, .wc-block-components-checkbox label, .form-row label) {
  color: var(--blue-900);
  font-size: .86rem;
  font-weight: 900;
  letter-spacing: .01em;
}

body :where(.woocommerce, .woocommerce-page, .wc-block-checkout, .wc-block-cart, .wp-block-woocommerce-checkout, .wp-block-woocommerce-cart, .single-content, .entry-content) :where(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]), select, textarea, .select2-selection, .wc-block-components-text-input input, .wc-block-components-combobox-control input, .wc-block-components-address-form__address_2-toggle) {
  min-height: 50px;
  width: 100%;
  border: 1.5px solid var(--border-card) !important;
  border-radius: 12px !important;
  background: var(--bg-card) !important;
  color: var(--text-primary) !important;
  box-shadow: 0 1px 0 rgba(30,77,140,.04);
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

body :where(.woocommerce, .woocommerce-page, .wc-block-checkout, .wc-block-cart, .wp-block-woocommerce-checkout, .wp-block-woocommerce-cart, .single-content, .entry-content) :where(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]), select, textarea, .wc-block-components-text-input input, .wc-block-components-combobox-control input) {
  padding: 13px 16px !important;
}

body :where(.woocommerce, .woocommerce-page, .wc-block-checkout, .wc-block-cart, .wp-block-woocommerce-checkout, .wp-block-woocommerce-cart, .single-content, .entry-content) :where(textarea) {
  min-height: 120px;
  resize: vertical;
}

body :where(.woocommerce, .woocommerce-page, .wc-block-checkout, .wc-block-cart, .wp-block-woocommerce-checkout, .wp-block-woocommerce-cart, .single-content, .entry-content) :where(input:focus, select:focus, textarea:focus, .select2-container--focus .select2-selection, .wc-block-components-text-input input:focus, .wc-block-components-combobox-control input:focus) {
  border-color: var(--blue-500) !important;
  box-shadow: 0 0 0 4px rgba(59,130,212,.16) !important;
  outline: none !important;
}

body :where(.woocommerce, .woocommerce-page, .wc-block-checkout, .wc-block-cart, .wp-block-woocommerce-checkout, .wp-block-woocommerce-cart, .single-content, .entry-content) :where(input::placeholder, textarea::placeholder) {
  color: var(--text-muted);
}

body :where(.woocommerce, .woocommerce-page, .wc-block-checkout, .wc-block-cart, .wp-block-woocommerce-checkout, .wp-block-woocommerce-cart, .single-content, .entry-content) :where(input[type="checkbox"], input[type="radio"], .wc-block-components-checkbox__input) {
  width: 20px;
  height: 20px;
  border: 1.5px solid var(--border-card);
  border-radius: 6px;
  accent-color: var(--blue-700);
}

body :where(.woocommerce, .woocommerce-page, .wc-block-checkout, .wc-block-cart, .wp-block-woocommerce-checkout, .wp-block-woocommerce-cart, .single-content, .entry-content) :where(input[type="radio"]) {
  border-radius: 999px;
}

.woocommerce form .form-row {
  margin-bottom: 16px;
}

.woocommerce form .form-row label {
  margin-bottom: 7px;
}

.woocommerce form.checkout,
.woocommerce form.login,
.woocommerce form.register,
.woocommerce-account .woocommerce-MyAccount-content,
.woocommerce-account .woocommerce-MyAccount-navigation,
.wc-block-checkout,
.wc-block-cart {
  border-color: var(--border-card);
}

.woocommerce form.login,
.woocommerce form.register,
.woocommerce form.checkout {
  border: 1px solid var(--border-card);
  border-radius: 22px;
  background: var(--bg-card);
  box-shadow: var(--shadow-md);
  padding: 28px;
}

.woocommerce form.login .button,
.woocommerce form.register .button,
.woocommerce form.checkout #place_order,
.woocommerce button.button,
.woocommerce input.button {
  min-height: 50px;
  border-radius: 12px !important;
  background: linear-gradient(135deg, var(--accent), #ff7a18) !important;
  color: var(--white) !important;
  font-weight: 950 !important;
  box-shadow: 0 14px 26px rgba(245,158,11,.26);
}

.woocommerce form.login .button:hover,
.woocommerce form.register .button:hover,
.woocommerce form.checkout #place_order:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
  background: linear-gradient(135deg, #ffad16, var(--accent-dark)) !important;
  color: var(--white) !important;
  transform: translateY(-1px);
}

.wc-block-components-validation-error,
.wc-block-components-notice-banner.is-error,
.woocommerce-error,
.woocommerce-invalid-required-field .woocommerce-input-wrapper {
  color: var(--red);
}

.wc-block-components-validation-error,
.woocommerce-error,
.woocommerce-message,
.woocommerce-info {
  border-radius: 12px;
}

[data-theme="dark"] body :where(.woocommerce, .woocommerce-page, .wc-block-checkout, .wc-block-cart, .wp-block-woocommerce-checkout, .wp-block-woocommerce-cart, .single-content, .entry-content) :where(label, .wc-block-components-text-input label, .wc-block-components-combobox-control label, .wc-block-components-checkbox label, .form-row label) {
  color: var(--blue-100);
}

[data-theme="dark"] body :where(.woocommerce, .woocommerce-page, .wc-block-checkout, .wc-block-cart, .wp-block-woocommerce-checkout, .wp-block-woocommerce-cart, .single-content, .entry-content) :where(input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]), select, textarea, .select2-selection, .wc-block-components-text-input input, .wc-block-components-combobox-control input) {
  background: #152a47 !important;
  color: var(--text-primary) !important;
  border-color: rgba(255,255,255,.14) !important;
}

[data-theme="dark"] .woocommerce form.login,
[data-theme="dark"] .woocommerce form.register,
[data-theme="dark"] .woocommerce form.checkout {
  background: var(--bg-card);
}

/* Pedido recebido */
.woocommerce-order-received .page-hero h1 {
  font-size: clamp(2rem, 4vw, 3.2rem);
  font-weight: 950;
}

.eduativa-thankyou {
  display: grid;
  gap: 28px;
}

.thankyou-card,
.woocommerce-order-details,
.woocommerce-customer-details {
  border: 1.5px solid var(--border-card);
  border-radius: 22px;
  background: var(--bg-card);
  box-shadow: var(--shadow-md);
  padding: 30px;
}

.thankyou-card {
  position: relative;
  overflow: hidden;
}

.thankyou-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 6px;
  background: linear-gradient(90deg, var(--accent), #ff7a18, var(--blue-500));
}

.thankyou-success-icon {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  margin-bottom: 16px;
  border-radius: 18px;
  background: linear-gradient(135deg, #22c55e, #059669);
  color: var(--white);
  font-size: 1.8rem;
  font-weight: 950;
  box-shadow: 0 16px 30px rgba(5,150,105,.22);
}

.thankyou-message {
  margin: 0 0 22px !important;
  color: var(--blue-900);
  font-size: 1.35rem;
  font-weight: 950;
}

.thankyou-overview {
  display: flex !important;
  flex-wrap: wrap;
  gap: 0;
  margin: 0 0 24px !important;
  padding: 0 !important;
  border: 1px solid var(--border-card);
  border-radius: 18px;
  overflow: hidden;
  list-style: none;
}

.thankyou-overview li {
  flex: 1 1 180px;
  min-width: 180px;
  margin: 0 !important;
  padding: 18px !important;
  border-right: 1px solid var(--border-card);
  border-bottom: 1px solid var(--border-card);
  background: linear-gradient(180deg, var(--white), var(--blue-50));
}

.thankyou-overview li:last-child {
  border-right: 0;
}

.thankyou-overview li:nth-last-child(-n+4) {
  border-bottom: 0;
}

.thankyou-overview span {
  display: block;
  margin-bottom: 6px;
  color: var(--blue-700);
  font-size: .82rem;
  font-weight: 950;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.thankyou-overview strong {
  display: block;
  color: var(--text-primary);
  font-size: 1.3rem;
  font-weight: 950;
  line-height: 1.2;
  white-space: nowrap;
}

.thankyou-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}

.woocommerce .thankyou-downloads-btn.button,
.thankyou-downloads-btn {
  min-height: 52px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 24px;
  border-radius: 14px !important;
  background: linear-gradient(135deg, var(--accent), #ff7a18) !important;
  color: var(--white) !important;
  box-shadow: 0 16px 30px rgba(245,158,11,.28);
  font-size: 1rem;
  font-weight: 950 !important;
}

.woocommerce .thankyou-downloads-btn.button:hover,
.thankyou-downloads-btn:hover {
  background: linear-gradient(135deg, #ffad16, var(--accent-dark)) !important;
  color: var(--white) !important;
  transform: translateY(-1px);
}

.woocommerce .thankyou-secondary-btn.button,
.thankyou-secondary-btn {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 20px;
  border-radius: 12px !important;
  background: var(--blue-50) !important;
  color: var(--blue-700) !important;
  border: 1px solid var(--border-card) !important;
  font-weight: 950 !important;
}

.woocommerce-order-details__title,
.woocommerce-customer-details h2 {
  color: var(--blue-900);
  font-size: clamp(1.65rem, 2.6vw, 2.25rem);
  font-weight: 950;
  margin-bottom: 18px;
}

.woocommerce-order-received .woocommerce-table,
.woocommerce-order-received .shop_table {
  overflow: hidden;
  border: 1px solid var(--border-card) !important;
  border-radius: 16px;
  background: var(--bg-card);
}

.woocommerce-order-received .woocommerce-table th,
.woocommerce-order-received .woocommerce-table td,
.woocommerce-order-received .shop_table th,
.woocommerce-order-received .shop_table td {
  padding: 16px 18px !important;
  font-size: 1.3em;
  border-color: var(--border-card) !important;
}

.woocommerce-order-received .woocommerce-table th,
.woocommerce-order-received .shop_table th {
  color: var(--blue-900);
  font-weight: 950 !important;
}

.woocommerce-order-received .woocommerce-table td,
.woocommerce-order-received .shop_table td {
  color: var(--text-primary);
  font-weight: 800;
}

.woocommerce-order-received .woocommerce-order-downloads {
  margin-top: 2px;
  padding: 26px 30px 30px;
  border: 1.5px solid var(--border-card);
  border-radius: 22px;
  background: linear-gradient(180deg, var(--white), var(--blue-50));
  box-shadow: var(--shadow-md);
}

.woocommerce-order-received .woocommerce-order-downloads__title,
.woocommerce-order-received .woocommerce-order-downloads h2 {
  margin: 0 0 16px;
  color: var(--blue-900);
  font-size: clamp(1.45rem, 2.2vw, 2rem);
  font-weight: 950;
  line-height: 1.1;
}

.woocommerce-order-received .woocommerce-table--order-downloads {
  border: 1px solid var(--border-card) !important;
  border-radius: 18px;
  border-collapse: separate !important;
  border-spacing: 0;
  overflow: hidden;
  box-shadow: none;
}

.woocommerce-order-received .woocommerce-table--order-downloads th,
.woocommerce-order-received .woocommerce-table--order-downloads td {
  padding: 16px 20px !important;
  font-size: 1rem !important;
  vertical-align: middle;
}

.woocommerce-order-received .woocommerce-table--order-downloads th {
  background: var(--blue-50);
  color: var(--blue-900);
  font-size: .9rem !important;
  font-weight: 950 !important;
  letter-spacing: .02em;
  text-transform: uppercase;
}

.woocommerce-order-received .woocommerce-table--order-downloads td {
  background: var(--white);
  color: var(--text-primary);
  font-size: 1.08rem !important;
  font-weight: 900;
}

.woocommerce-order-received .woocommerce-table--order-downloads .download-product a {
  color: var(--blue-900);
  font-size: 1.1rem;
  font-weight: 950;
}

.woocommerce-order-received .woocommerce-table--order-downloads .download-remaining,
.woocommerce-order-received .woocommerce-table--order-downloads .download-expires {
  color: var(--blue-700);
}

.woocommerce-order-received .woocommerce-table--order-downloads .download-file a,
.woocommerce-order-received .woocommerce-table--order-downloads .woocommerce-MyAccount-downloads-file {
  min-height: 44px;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0 18px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: linear-gradient(135deg, var(--accent), #ff7a18) !important;
  color: var(--white) !important;
  box-shadow: 0 12px 24px rgba(245,158,11,.24);
  font-size: .95rem;
  font-weight: 950 !important;
}

.woocommerce-order-received .woocommerce-table--order-downloads .download-file a::before,
.woocommerce-order-received .woocommerce-table--order-downloads .woocommerce-MyAccount-downloads-file::before {
  content: "▼";
  font-size: .8rem;
  line-height: 1;
}

.woocommerce-order-received .woocommerce-table--order-downloads .download-file a:hover,
.woocommerce-order-received .woocommerce-table--order-downloads .woocommerce-MyAccount-downloads-file:hover {
  background: linear-gradient(135deg, #ffad16, var(--accent-dark)) !important;
  color: var(--white) !important;
  transform: translateY(-1px);
}

.woocommerce-order-received address {
  border: 1px solid var(--border-card) !important;
  border-radius: 16px;
  padding: 18px !important;
  color: var(--text-primary);
  font-size: 1.15rem;
  line-height: 1.7;
  background: linear-gradient(180deg, var(--white), var(--blue-50));
}

[data-theme="dark"] .thankyou-card,
[data-theme="dark"] .woocommerce-order-details,
[data-theme="dark"] .woocommerce-customer-details,
[data-theme="dark"] .woocommerce-order-received .woocommerce-order-downloads,
[data-theme="dark"] .thankyou-overview li,
[data-theme="dark"] .woocommerce-order-received address {
  background: var(--bg-card);
}

[data-theme="dark"] .woocommerce-order-received .woocommerce-table--order-downloads td {
  background: var(--bg-card);
}

[data-theme="dark"] .woocommerce-order-received .woocommerce-table--order-downloads th {
  background: var(--blue-900);
}

[data-theme="dark"] .thankyou-message,
[data-theme="dark"] .woocommerce-order-details__title,
[data-theme="dark"] .woocommerce-customer-details h2,
[data-theme="dark"] .woocommerce-order-received .woocommerce-order-downloads h2,
[data-theme="dark"] .woocommerce-order-received .woocommerce-table th,
[data-theme="dark"] .woocommerce-order-received .shop_table th {
  color: var(--text-primary);
}

@media (max-width: 780px) {
  .thankyou-overview {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .thankyou-overview li {
    min-width: 0;
  }

  .thankyou-overview li:nth-child(2n) {
    border-right: 0;
  }

  .thankyou-overview li:nth-last-child(-n+4) {
    border-bottom: 1px solid var(--border-card);
  }

  .thankyou-overview li:nth-last-child(-n+2) {
    border-bottom: 0;
  }

  .woocommerce-order-received .woocommerce-order-downloads {
    padding: 22px;
  }

  .woocommerce-order-received .woocommerce-table--order-downloads,
  .woocommerce-order-received .woocommerce-table--order-downloads tbody,
  .woocommerce-order-received .woocommerce-table--order-downloads tr,
  .woocommerce-order-received .woocommerce-table--order-downloads td {
    display: block;
    width: 100%;
  }

  .woocommerce-order-received .woocommerce-table--order-downloads thead {
    display: none;
  }

  .woocommerce-order-received .woocommerce-table--order-downloads tr {
    display: grid;
    gap: 10px;
    padding: 16px;
  }

  .woocommerce-order-received .woocommerce-table--order-downloads td {
    padding: 0 !important;
    border: 0 !important;
  }
}

@media (max-width: 540px) {
  .thankyou-card,
  .woocommerce-order-details,
  .woocommerce-customer-details {
    padding: 22px;
  }

  .thankyou-overview {
    grid-template-columns: 1fr;
  }

  .thankyou-overview li {
    border-right: 0;
    border-bottom: 1px solid var(--border-card);
  }

  .thankyou-overview li:last-child {
    border-bottom: 0;
  }
}

.wc-block-checkout .wc-block-components-title,
.wc-block-checkout .wc-block-components-checkout-step__title,
.wc-block-checkout .wc-block-components-order-summary__title-text,
.woocommerce-checkout h3,
.woocommerce-account h2 {
  color: var(--blue-900);
  font-weight: 950;
  letter-spacing: 0;
}

.wc-block-checkout .wc-block-components-checkout-step {
  margin-bottom: 28px;
}

.wc-block-checkout .wc-block-components-text-input,
.wc-block-checkout .wc-block-components-combobox,
.wc-block-checkout .wc-block-components-country-input,
.wc-block-checkout .wc-block-components-state-input {
  margin-bottom: 12px;
}

.wc-block-checkout .wc-block-components-text-input label,
.wc-block-checkout .wc-block-components-combobox-control label {
  transform-origin: left top;
}

.wc-block-checkout .has-error input,
.wc-block-checkout .has-error select,
.wc-block-checkout .wc-block-components-validation-error + input,
.woocommerce-invalid input.input-text {
  border-color: var(--red) !important;
  box-shadow: 0 0 0 4px rgba(239,68,68,.12) !important;
}

.wc-block-components-notice-banner.is-error {
  border: 1px solid rgba(239,68,68,.35);
  background: rgba(239,68,68,.08);
  color: var(--red);
}

.wc-block-checkout .wc-block-components-checkbox,
.woocommerce-form__label-for-checkbox {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--text-secondary);
  font-weight: 800;
}

.wc-block-checkout .wc-block-components-checkbox__mark {
  fill: var(--white);
}

[data-theme="dark"] .wc-block-checkout .wc-block-components-title,
[data-theme="dark"] .wc-block-checkout .wc-block-components-checkout-step__title,
[data-theme="dark"] .wc-block-checkout .wc-block-components-order-summary__title-text,
[data-theme="dark"] .woocommerce-checkout h3,
[data-theme="dark"] .woocommerce-account h2 {
  color: var(--text-primary);
}

/* Minha conta / perfil */
.woocommerce-account .single-card.single-content {
  max-width: 1200px;
  padding: 28px;
  margin-left: auto;
  margin-right: auto;
  overflow: visible;
}

.woocommerce-account:not(.logged-in) .woocommerce form.login,
.woocommerce-account:not(.logged-in) .woocommerce form.register {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.woocommerce-account:not(.logged-in) .woocommerce .u-column1,
.woocommerce-account:not(.logged-in) .woocommerce .u-column2 {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.woocommerce-account:not(.logged-in) .single-card.single-content {
  max-width: 1120px;
  padding: 34px;
}

.woocommerce-account:not(.logged-in) .woocommerce .u-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 44px;
  align-items: start;
}

.woocommerce-account:not(.logged-in) .woocommerce .u-column1,
.woocommerce-account:not(.logged-in) .woocommerce .u-column2 {
  width: auto !important;
  float: none !important;
  min-width: 0;
}

.woocommerce-account:not(.logged-in) .woocommerce .u-column1 h2,
.woocommerce-account:not(.logged-in) .woocommerce .u-column2 h2 {
  margin: 0 0 24px;
  color: var(--blue-900);
  font-size: clamp(1.65rem, 2.4vw, 2.15rem);
  font-weight: 950;
  line-height: 1.1;
}

.woocommerce-account:not(.logged-in) .woocommerce form.login,
.woocommerce-account:not(.logged-in) .woocommerce form.register {
  display: grid;
  gap: 18px;
}

.woocommerce-account:not(.logged-in) .woocommerce form .form-row {
  margin: 0;
}

.woocommerce-account:not(.logged-in) .woocommerce form .form-row input.input-text {
  width: 100%;
}

.woocommerce-account:not(.logged-in) .woocommerce form .password-input {
  display: block;
  width: 100%;
}

.woocommerce-account:not(.logged-in) .woocommerce-form-login__rememberme {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  margin-left: 12px;
}

.woocommerce-account:not(.logged-in) .woocommerce-LostPassword {
  margin: 0;
}

.woocommerce-account:not(.logged-in) .woocommerce-privacy-policy-text {
  color: var(--text-secondary);
  font-size: .95rem;
}

.woocommerce-account .woocommerce {
  display: block !important;
  width: 100%;
}

.woocommerce-account .eduativa-account-layout {
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr);
  gap: 28px;
  align-items: start;
  align-content: start;
  width: 100%;
}

.account-mobile-nav-btn {
  display: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation-wrap {
  min-width: 0;
  display: contents;
}

.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
  position: sticky;
  top: 96px;
  align-self: start;
  padding: 16px;
  float: none !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  clear: none !important;
  z-index: 5;
  transform: translateY(0) !important;
}

body.admin-bar.woocommerce-account .woocommerce-MyAccount-navigation {
  top: 128px;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
  align-content: start;
}

.woocommerce-account .woocommerce-MyAccount-navigation li {
  margin: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation a {
  min-height: 46px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 13px;
  border: 1px solid transparent;
  border-radius: 13px;
  color: var(--text-primary);
  font-weight: 900;
  transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
}

.woocommerce-account .woocommerce-MyAccount-navigation a::before {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  border-radius: 9px;
  background: var(--blue-50);
  color: var(--blue-700);
  font-size: .95rem;
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--dashboard a::before { content: "⌂"; }
.woocommerce-account .woocommerce-MyAccount-navigation-link--orders a::before { content: "▤"; }
.woocommerce-account .woocommerce-MyAccount-navigation-link--downloads a::before { content: "↓"; }
.woocommerce-account .woocommerce-MyAccount-navigation-link--edit-address a::before { content: "⌖"; }
.woocommerce-account .woocommerce-MyAccount-navigation-link--edit-account a::before { content: "●"; }
.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout a::before { content: "↪"; }
.woocommerce-account .woocommerce-MyAccount-navigation-link--payment-methods a::before { content: "◇"; }

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
  background: linear-gradient(135deg, var(--blue-700), var(--blue-500));
  border-color: rgba(255,255,255,.12);
  color: var(--white) !important;
  transform: translateX(2px);
  box-shadow: 0 12px 22px rgba(30,77,140,.2);
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a *,
.woocommerce-account .woocommerce-MyAccount-navigation a:hover * {
  color: var(--white) !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a::before,
.woocommerce-account .woocommerce-MyAccount-navigation a:hover::before {
  background: rgba(255,255,255,.18);
  color: var(--white);
}

.woocommerce-account .woocommerce-MyAccount-content {
  align-self: start;
  min-height: 360px;
  padding: 28px;
  float: none !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0;
  margin: 0 !important;
  clear: none !important;
  overflow-x: auto;
}

.woocommerce-account .woocommerce-MyAccount-content > p:first-child {
  margin-top: 0;
}

.woocommerce-account .woocommerce-MyAccount-content p {
  color: var(--text-secondary);
  font-size: 1rem;
}

.woocommerce-account .woocommerce-MyAccount-content a:not(.button) {
  color: var(--blue-700);
  font-weight: 900;
}

.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3,
.woocommerce-account .woocommerce-column__title {
  color: var(--blue-900);
  font-size: clamp(1.35rem, 2vw, 2rem);
  font-weight: 950;
  margin-bottom: 16px;
}

.woocommerce-account table.shop_table,
.woocommerce-account .woocommerce-orders-table,
.woocommerce-account .woocommerce-table--order-details,
.woocommerce-account .woocommerce-table--order-downloads {
  width: 100%;
  overflow: hidden;
  border: 1px solid var(--border-card) !important;
  border-radius: 16px;
  border-collapse: separate;
  border-spacing: 0;
  background: var(--bg-card);
}

.woocommerce-account table.shop_table th,
.woocommerce-account table.shop_table td {
  padding: 14px 16px !important;
  border-color: var(--border-card) !important;
}

.woocommerce-account table.shop_table th {
  color: var(--blue-900);
  font-weight: 950 !important;
  background: var(--blue-50);
}

.woocommerce-account table.shop_table td {
  color: var(--text-primary);
  font-weight: 700;
}

.woocommerce-account .woocommerce-orders-table__cell-order-number a,
.woocommerce-account .download-product a {
  color: var(--blue-700);
  font-weight: 950;
}

.woocommerce-account .woocommerce-button.button,
.woocommerce-account .button,
.woocommerce-account button.button {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 16px !important;
  border-radius: 11px !important;
  background: linear-gradient(135deg, var(--blue-700), var(--blue-500)) !important;
  color: var(--white) !important;
  border: 0 !important;
  box-shadow: 0 10px 20px rgba(30,77,140,.22);
  font-weight: 950 !important;
}

.woocommerce-account .woocommerce-button.button:hover,
.woocommerce-account .button:hover,
.woocommerce-account button.button:hover {
  background: linear-gradient(135deg, var(--blue-600), var(--blue-700)) !important;
  color: var(--white) !important;
  transform: translateY(-1px);
}

.woocommerce-account .woocommerce-Address,
.woocommerce-account .woocommerce-column--billing-address,
.woocommerce-account .woocommerce-column--shipping-address,
.woocommerce-account .u-column1,
.woocommerce-account .u-column2 {
  border: 1px solid var(--border-card);
  border-radius: 18px;
  background: linear-gradient(180deg, var(--white), var(--blue-50));
  padding: 20px;
  box-shadow: var(--shadow-sm);
}

.woocommerce-account .woocommerce-Addresses,
.woocommerce-account .addresses {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  align-items: stretch;
  margin-top: 22px;
}

.woocommerce-account .woocommerce-Addresses::before,
.woocommerce-account .woocommerce-Addresses::after,
.woocommerce-account .addresses::before,
.woocommerce-account .addresses::after {
  display: none !important;
}

.woocommerce-account .woocommerce-Address {
  float: none !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0;
}

.woocommerce-account .woocommerce-Address-title {
  display: grid;
  gap: 8px;
  margin-bottom: 12px;
}

.woocommerce-account .woocommerce-Address-title h2 {
  margin: 0;
  font-size: clamp(1.35rem, 2vw, 1.8rem);
  line-height: 1.12;
}

.woocommerce-account .woocommerce-Address-title .edit {
  justify-self: start;
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  padding: 0 12px;
  border-radius: 999px;
  background: var(--blue-50);
  color: var(--blue-700);
  font-size: .86rem;
  font-weight: 950;
}

.woocommerce-account .woocommerce-MyAccount-content > p:first-child + .woocommerce-Addresses,
.woocommerce-account .woocommerce-MyAccount-content > p:first-child + .addresses {
  margin-top: 24px;
}

.woocommerce-account .u-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}

.woocommerce-account address {
  color: var(--text-primary);
  font-style: normal;
  line-height: 1.7;
}

.woocommerce-account fieldset {
  margin-top: 22px;
  padding: 20px;
  border: 1px solid var(--border-card);
  border-radius: 18px;
  background: var(--blue-50);
}

.woocommerce-account fieldset legend {
  padding: 0 8px;
  color: var(--blue-900);
  font-weight: 950;
}

.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-error {
  border-radius: 16px;
  box-shadow: var(--shadow-sm);
}

.woocommerce-account .woocommerce-MyAccount-content mark {
  padding: 2px 8px;
  border-radius: 999px;
  background: rgba(16,185,129,.12);
  color: var(--green);
  font-weight: 950;
}

.account-section-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 22px;
}

.account-section-head h2 {
  margin: 0;
}

.account-small-link {
  flex: 0 0 auto;
  color: var(--blue-700);
  font-weight: 950;
}

.account-dashboard-panel {
  display: grid;
  gap: 22px;
}

.account-greeting-card,
.account-wishlist-card {
  border: 1px solid var(--border-card);
  border-radius: 18px;
  background: linear-gradient(180deg, var(--white), var(--blue-50));
  padding: 22px;
  box-shadow: var(--shadow-sm);
}

.account-greeting-title {
  margin: 6px 0 10px;
  color: var(--blue-900);
  font-size: clamp(1.55rem, 2.3vw, 2.2rem);
  line-height: 1.08;
  font-weight: 950;
}

.account-greeting-card p {
  max-width: 780px;
  margin: 0;
}

.account-wishlist-list {
  display: grid;
  gap: 10px;
}

.wishlist-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto 38px;
  gap: 14px;
  align-items: center;
  padding: 13px 14px;
  border: 1px solid var(--border-card);
  border-radius: 16px;
  background: var(--bg-card);
  box-shadow: 0 8px 18px rgba(30,77,140,.08);
}

.wishlist-product-title {
  min-width: 0;
  color: var(--blue-900) !important;
  font-size: 1rem;
  font-weight: 950 !important;
  line-height: 1.25;
}

.wishlist-product-price {
  color: var(--blue-700);
  font-size: 1.05rem;
  font-weight: 950;
  white-space: nowrap;
}

.wishlist-product-price del {
  color: var(--text-muted);
  font-size: .86em;
  margin-right: 5px;
}

.wishlist-product-price ins {
  color: var(--blue-700);
  text-decoration: none;
}

.wishlist-add-cart {
  width: 36px !important;
  height: 36px !important;
  justify-self: end;
  border-radius: 999px !important;
  font-size: 1.25rem;
  line-height: 1;
}

.account-wishlist-status {
  margin: 0;
  padding: 16px;
  border: 1px dashed var(--border-card);
  border-radius: 14px;
  background: rgba(59,130,212,.06);
  color: var(--text-secondary);
  font-weight: 800;
}

.eduativa-downloads-grid {
  display: grid;
  gap: 14px;
}

.download-card,
.download-empty-card {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  padding: 18px;
  border: 1px solid var(--border-card);
  border-radius: 18px;
  background: linear-gradient(180deg, var(--white), var(--blue-50));
  box-shadow: var(--shadow-sm);
}

.download-icon {
  width: 54px;
  height: 54px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  background: linear-gradient(135deg, var(--blue-700), var(--blue-500));
  color: var(--white);
  font-size: 1.3rem;
  font-weight: 950;
}

.download-info h3,
.download-empty-card h3 {
  margin: 0 0 4px;
  color: var(--blue-900);
  font-size: .9rem !important;
  line-height: 1.25;
  font-weight: 950;
}

.download-info p,
.download-empty-card p {
  margin: 0;
  color: var(--text-secondary);
}

.download-card .download-info p {
  display: none;
}

.download-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.download-meta span {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 3px 9px;
  border-radius: 999px;
  background: rgba(59,130,212,.1);
  color: var(--blue-700);
  font-size: .78rem;
  font-weight: 900;
}

.woocommerce-account .download-button,
.download-button {
  min-height: 44px;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  white-space: nowrap;
  padding: 0 18px;
  border-radius: 12px;
  background: linear-gradient(135deg, var(--accent), #ff7a18);
  color: var(--white) !important;
  box-shadow: 0 12px 24px rgba(245,158,11,.24);
  font-weight: 950 !important;
}

.woocommerce-account .download-button:hover,
.download-button:hover {
  background: linear-gradient(135deg, #ffad16, var(--accent-dark));
  color: var(--white) !important;
  transform: translateY(-1px);
}

.download-button.is-disabled {
  background: #94a3b8;
  box-shadow: none;
  cursor: not-allowed;
}

.woocommerce-account .woocommerce-MyAccount-navigation-link--creditos-ia a::before {
  content: "*";
}

.eduativa-ai-account {
  display: grid;
  gap: 24px;
}

.ai-account-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.ai-account-summary article {
  padding: 22px;
  border: 1.5px solid var(--border-card);
  border-radius: var(--radius-lg);
  background: var(--bg-card);
  box-shadow: var(--shadow-sm);
}

.ai-account-summary article:first-child {
  background: linear-gradient(135deg, var(--blue-900), var(--blue-700));
  color: var(--white);
}

.ai-account-summary span {
  display: block;
  color: var(--blue-600);
  font-size: .75rem;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin-bottom: 8px;
}

.ai-account-summary article:first-child span,
.ai-account-summary article:first-child p {
  color: var(--blue-100);
}

.ai-account-summary strong {
  display: block;
  color: var(--blue-900);
  font-size: 2.4rem;
  line-height: 1;
  font-weight: 950;
  margin-bottom: 8px;
}

.ai-account-summary article:first-child strong {
  color: var(--white);
}

.ai-account-summary p {
  color: var(--text-secondary);
  font-weight: 800;
}

.ai-account-filter {
  display: flex;
  align-items: end;
  gap: 12px;
  flex-wrap: wrap;
  padding: 18px;
  border: 1.5px solid var(--border-card);
  border-radius: var(--radius-lg);
  background: var(--bg-card);
}

.ai-account-filter label {
  display: grid;
  gap: 6px;
  color: var(--blue-900);
  font-weight: 900;
}

.ai-account-filter input {
  min-height: 42px;
  border: 1.5px solid var(--border-card);
  border-radius: 12px;
  padding: 8px 12px;
}

.ai-account-warning {
  padding: 14px 16px;
  border: 1.5px solid rgba(245,158,11,.28);
  border-radius: 14px;
  background: rgba(245,158,11,.1);
  color: #92400e;
  font-weight: 850;
  line-height: 1.55;
}

.ai-account-statement {
  padding: 22px;
  border: 1.5px solid var(--border-card);
  border-radius: var(--radius-lg);
  background: var(--bg-card);
  box-shadow: var(--shadow-sm);
}

.ai-account-statement h3 {
  color: var(--blue-900);
  font-size: 1.25rem;
  margin-bottom: 16px;
}

.ai-statement-list {
  display: grid;
  gap: 10px;
}

.ai-statement-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  padding: 14px;
  border-radius: 14px;
  background: var(--bg-secondary);
}

.ai-statement-row strong {
  display: block;
  color: var(--text-primary);
  margin-bottom: 4px;
}

.ai-statement-row span {
  color: var(--text-secondary);
  font-size: .9rem;
}

.ai-statement-row small {
  display: block;
  margin-top: 6px;
  color: var(--blue-600);
  font-size: .82rem;
  font-weight: 900;
}

.ai-statement-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 8px;
}

.ai-statement-actions > span,
.ai-statement-actions > a,
.ai-statement-row > a {
  min-width: 54px;
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  font-weight: 950;
}

.ai-statement-row.is-credit > a {
  background: rgba(16,185,129,.12);
  color: var(--green);
}

.ai-statement-row.is-debit > span {
  background: rgba(239,68,68,.1);
  color: var(--red);
}

.ai-statement-row.is-debit .ai-statement-actions > span {
  background: rgba(239,68,68,.1);
  color: var(--red);
}

.ai-statement-actions > a {
  background: rgba(30,77,140,.1);
  color: var(--blue-700);
  padding: 7px 12px;
}

.ai-statement-empty {
  color: var(--text-secondary);
  font-weight: 800;
}

[data-theme="dark"] .woocommerce-account .woocommerce-MyAccount-navigation,
[data-theme="dark"] .woocommerce-account .woocommerce-MyAccount-content,
[data-theme="dark"] .woocommerce-account .woocommerce-Address,
[data-theme="dark"] .woocommerce-account .woocommerce-column--billing-address,
[data-theme="dark"] .woocommerce-account .woocommerce-column--shipping-address,
[data-theme="dark"] .woocommerce-account .u-column1,
[data-theme="dark"] .woocommerce-account .u-column2,
[data-theme="dark"] .woocommerce-account table.shop_table {
  background: var(--bg-card);
}

[data-theme="dark"] .download-card,
[data-theme="dark"] .download-empty-card,
[data-theme="dark"] .account-greeting-card,
[data-theme="dark"] .account-wishlist-card,
[data-theme="dark"] .wishlist-row {
  background: var(--bg-card);
}

[data-theme="dark"] .woocommerce-account table.shop_table th,
[data-theme="dark"] .woocommerce-account fieldset {
  background: var(--blue-900);
}

[data-theme="dark"] .woocommerce-account .woocommerce-MyAccount-content h2,
[data-theme="dark"] .woocommerce-account .woocommerce-MyAccount-content h3,
[data-theme="dark"] .woocommerce-account .woocommerce-column__title,
[data-theme="dark"] .account-greeting-title,
[data-theme="dark"] .wishlist-product-title,
[data-theme="dark"] .woocommerce-account table.shop_table th,
[data-theme="dark"] .woocommerce-account fieldset legend {
  color: var(--text-primary);
}

@media (max-width: 900px) {
  .woocommerce-account:not(.logged-in) .woocommerce .u-columns {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .woocommerce-account .eduativa-account-layout {
    grid-template-columns: 1fr !important;
    gap: 18px;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation-wrap {
    display: block;
    order: 2;
    width: calc(100% - 80px);
    margin: 0 auto;
    max-height: 0;
    overflow: hidden;
    margin-top: 0;
    transition: max-height .24s ease;
  }

  .woocommerce-account .woocommerce-MyAccount-content {
    order: 3;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation {
    position: static;
    top: auto;
    padding: 0 0 8px;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation ul {
    grid-template-columns: 1fr;
  }

  .account-mobile-nav-btn {
    order: 1;
    width: calc(100% - 80px);
    margin: 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 48px;
    padding: 0 18px;
    border-radius: 16px;
    background: linear-gradient(135deg, #1e4d8c 0%, #347bd1 100%);
    color: var(--white);
    font-weight: 950;
    box-shadow: 0 14px 26px rgba(30,77,140,.24);
  }

  .account-mobile-nav-btn span {
    font-size: 1rem;
    line-height: 1;
  }

  .account-mobile-nav-btn[aria-expanded="true"] {
    border-radius: 16px 16px 0 0;
    margin-bottom: -14px;
    box-shadow: 0 10px 22px rgba(30,77,140,.18);
  }

  .account-mobile-nav-btn[aria-expanded="true"] span {
    transform: rotate(90deg);
  }

  .woocommerce-account .woocommerce-MyAccount-navigation-wrap.is-open {
    max-height: 520px;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation-wrap.is-open .woocommerce-MyAccount-navigation {
    margin-top: 0;
    padding: 0 14px 16px;
    border: 1px solid var(--border-card);
    border-top: 0;
    border-radius: 0 0 18px 18px;
    background: linear-gradient(180deg, var(--white), var(--blue-50));
    box-shadow: 0 18px 34px rgba(15, 23, 42, .08);
  }

  .woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
  .woocommerce-account .woocommerce-MyAccount-navigation a:hover {
    color: var(--white) !important;
  }

  .woocommerce-account .u-columns {
    grid-template-columns: 1fr;
  }

  .woocommerce-account .woocommerce-Addresses,
  .woocommerce-account .addresses {
    grid-template-columns: 1fr;
  }

  .download-card,
  .download-empty-card {
    grid-template-columns: 54px minmax(0, 1fr);
  }

  .ai-account-summary,
  .ai-statement-row {
    grid-template-columns: 1fr;
  }

  .ai-statement-actions {
    justify-content: flex-start;
  }

  .download-button {
    grid-column: 1 / -1;
    justify-self: start;
  }

  .wishlist-row {
    grid-template-columns: minmax(0, 1fr) 38px;
  }

  .wishlist-product-price {
    grid-column: 1 / 2;
  }

  .wishlist-add-cart {
    grid-column: 2 / 3;
    grid-row: 1 / span 2;
  }
}

@media (max-width: 560px) {
  .woocommerce-account:not(.logged-in) .single-card.single-content {
    padding: 22px;
  }

  .woocommerce-account:not(.logged-in) .woocommerce-form-login__rememberme {
    display: flex !important;
    margin: 10px 0 0;
  }

  .woocommerce-account .single-card.single-content,
  .woocommerce-account .woocommerce-MyAccount-content {
    padding: 18px;
    margin: 20px;
  }

  .account-mobile-nav-btn {
    min-height: 46px;
    padding: 0 16px;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation-wrap,
  .account-mobile-nav-btn {
    width: calc(100% - 60px);
  }

  .woocommerce-account table.shop_table,
  .woocommerce-account table.shop_table tbody,
  .woocommerce-account table.shop_table tr,
  .woocommerce-account table.shop_table td {
    display: block;
    width: 100%;
  }

  .woocommerce-account table.shop_table thead {
    display: none;
  }

  .woocommerce-account table.shop_table tr {
    border-bottom: 1px solid var(--border-card);
  }
}

/* =========================================================
   03. Topbar e header iguais à index.html
   ========================================================= */
.topbar { background: var(--blue-900); color: var(--white); padding: 6px 0; font-size: .75rem; position: relative; z-index: 100; }
[data-theme="dark"] .topbar { background: #060e1a; }
.topbar-inner { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.topbar-social, .topbar-right, .a11y-controls { display: flex; align-items: center; }
.topbar-social { gap: 10px; }
.topbar-social a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  background: transparent;
  box-shadow: none;
}
.topbar-social a:hover { transform: translateY(-1px); }
.eduativa-svg-icon { display: block; width: 18px; height: 18px; object-fit: contain; }
.topbar-social .eduativa-svg-icon {
  width: 15px;
  height: 15px;
  filter: brightness(0) saturate(100%) invert(65%) sepia(75%) saturate(2369%) hue-rotate(190deg) brightness(102%) contrast(97%);
}
.topbar-social a:hover .eduativa-svg-icon {
  filter: brightness(0) saturate(100%) invert(82%) sepia(18%) saturate(3249%) hue-rotate(183deg) brightness(105%) contrast(98%);
}
.share-btn .eduativa-svg-icon { width: 18px; height: 18px; }
.footer-social .eduativa-svg-icon { width: 18px; height: 18px; }
.eduativa-svg-fallback { display: inline-flex; align-items: center; justify-content: center; }
.topbar-right { gap: 8px; flex-wrap: wrap; }
.topbar-auth { display: flex; align-items: center; gap: 8px; }
.topbar-auth-btn {
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 5px 12px;
  border: 1px solid rgba(147,197,253,.38);
  border-radius: 999px;
  background: linear-gradient(135deg, var(--blue-700), var(--blue-500));
  color: var(--white) !important;
  font-size: .76rem;
  font-weight: 950 !important;
  line-height: 1;
  box-shadow: 0 8px 16px rgba(30,77,140,.18);
}
.topbar-auth-btn:hover { transform: translateY(-1px); color: var(--white) !important; }
.topbar-auth-btn-outline { background: rgba(59,130,212,.22); }
.a11y-controls { gap: 4px; background: rgba(255,255,255,.08); border-radius: 20px; padding: 3px 8px; }
.a11y-btn, .dark-toggle { color: var(--blue-200); background: rgba(255,255,255,.1); border-radius: 20px; font-size: .75rem; font-weight: 800; }
.a11y-btn { background: transparent; padding: 3px 6px; }
.dark-toggle { padding: 4px 10px; }
.a11y-btn:hover, .dark-toggle:hover { background: rgba(255,255,255,.2); color: var(--white); }
.a11y-sep, .topbar .sep { color: rgba(255,255,255,.28); }

.header { background: var(--blue-800); color: var(--white); position: sticky; top: 0; z-index: 90; box-shadow: 0 4px 20px rgba(10,22,40,.18); }
[data-theme="dark"] .header { background: var(--blue-900); }
.header-main {
  min-height: 94px;
  display: grid;
  grid-template-columns: minmax(220px, max-content) minmax(280px, 1fr) auto;
  align-items: center;
  gap: 28px;
  padding: 16px 0 14px;
}
.header-nav-row {
  min-height: 54px;
  display: flex;
  align-items: center;
  border-top: 1px solid rgba(255,255,255,.08);
}
.logo { display: inline-flex; align-items: center; gap: 10px; color: var(--white); font-size: 1.5rem; font-weight: 900; margin-right: 0; }
.logo.has-custom-logo,
.mobile-nav-logo.has-custom-logo {
  gap: 0;
}
.logo-icon { width: 44px; height: 44px; border-radius: 10px; background: linear-gradient(135deg, var(--accent), #f97316); display: grid; place-items: center; box-shadow: 0 4px 16px rgba(245,158,11,.35); }
.logo-image { width: 100%; height: 100%; object-fit: contain; display: block; }
.logo.has-custom-logo .logo-icon,
.mobile-nav-logo.has-custom-logo .logo-icon {
  width: auto;
  height: auto;
  max-width: 76%;
  max-height: 70px;
  padding: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  place-items: initial;
}

.logo.has-custom-logo .logo-image,
.mobile-nav-logo.has-custom-logo .logo-image {
  width: auto;
  height: auto;
  max-width: 76%;
  max-height: 70px;
  object-fit: contain;
}
.logo-text span { color: var(--accent); }
.nav { width: 100%; }
.nav-list { display: flex; align-items: center; flex-wrap: wrap; list-style: none; gap: 6px; }
.nav-list li { position: relative; }
.nav-list a { display: block; color: var(--blue-100); font-size: .92rem; font-weight: 800; padding: 12px 15px; border-radius: var(--radius-sm); }
.nav-list a:hover, .nav-list .current-menu-item > a, .nav-list a.active { background: rgba(255,255,255,.12); color: var(--white); }
.nav-list .menu-item-has-children > a { padding-right: 28px; position: relative; }
.nav-list .menu-item-has-children > a::after { content: ""; position: absolute; right: 12px; top: 50%; width: 7px; height: 7px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: translateY(-65%) rotate(45deg); opacity: .72; transition: transform .18s ease; }
.nav-list .menu-item-has-children:hover > a::after,
.nav-list .menu-item-has-children:focus-within > a::after { transform: translateY(-35%) rotate(225deg); }
.nav-list .sub-menu { position: absolute; top: calc(100% + 10px); left: 0; z-index: 250; min-width: 210px; display: grid; gap: 4px; list-style: none; padding: 10px; margin: 0; background: #163a68; border: 1px solid rgba(255,255,255,.14); border-radius: 12px; box-shadow: 0 18px 42px rgba(8,20,38,.32); opacity: 0; visibility: hidden; transform: translateY(8px); transition: opacity .18s ease, transform .18s ease, visibility .18s ease; }
.nav-list .sub-menu::before { content: ""; position: absolute; left: 18px; top: -6px; width: 12px; height: 12px; background: #163a68; border-left: 1px solid rgba(255,255,255,.14); border-top: 1px solid rgba(255,255,255,.14); transform: rotate(45deg); }
.nav-list li:hover > .sub-menu,
.nav-list li:focus-within > .sub-menu { opacity: 1; visibility: visible; transform: translateY(0); }
.nav-list .sub-menu a { color: var(--blue-100); border-radius: 8px; padding: 10px 12px; white-space: nowrap; }
.nav-list .sub-menu a:hover,
.nav-list .sub-menu .current-menu-item > a { background: rgba(255,255,255,.12); color: var(--white); }
.nav-list .sub-menu .sub-menu { top: 0; left: calc(100% + 10px); }
.nav-list .sub-menu .sub-menu::before { left: -6px; top: 14px; border: 0; border-left: 1px solid rgba(255,255,255,.14); border-bottom: 1px solid rgba(255,255,255,.14); }
.header-search { display: flex; align-items: center; width: min(100%, 520px); justify-self: center; background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.16); border-radius: 14px; overflow: hidden; box-shadow: inset 0 1px 0 rgba(255,255,255,.05); }
.header-search input { width: 100%; min-width: 0; background: transparent; border: 0; color: var(--white); padding: 11px 13px; outline: none; }
.header-search input::placeholder { color: rgba(255,255,255,.55); }
.header-search button { width: 42px; background: transparent; color: var(--blue-200); font-size: 1rem; }
.header-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
}
.cart-btn { position: relative; width: 42px; height: 42px; display: grid; place-items: center; border-radius: 9px; background: rgba(255,255,255,.1); color: var(--white); font-size: 1.1rem; }
.cart-badge { position: absolute; top: -6px; right: -6px; background: var(--red); color: var(--white); border-radius: 999px; min-width: 18px; height: 18px; display: grid; place-items: center; font-size: .7rem; font-weight: 900; }
.cart-btn.is-shaking,
.cart-float.is-shaking { animation: eduativa-cart-shake .58s ease both; }
@keyframes eduativa-cart-shake {
  0%, 100% { transform: translateX(0) rotate(0); }
  15% { transform: translateX(-3px) rotate(-8deg); }
  30% { transform: translateX(3px) rotate(7deg); }
  45% { transform: translateX(-2px) rotate(-5deg); }
  60% { transform: translateX(2px) rotate(4deg); }
  75% { transform: translateX(-1px) rotate(-2deg); }
}
.btn-store { min-height: 46px; display: inline-flex; align-items: center; justify-content: center; background: linear-gradient(135deg, var(--accent), #f97316); color: var(--white); padding: 12px 20px; border-radius: 12px; font-weight: 900; box-shadow: 0 6px 18px rgba(245,158,11,.3); transition: transform .18s ease, box-shadow .18s ease, filter .18s ease, background .18s ease; }
.btn-store:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 28px rgba(245,158,11,.38);
  filter: brightness(1.04);
}

.mobile-menu-toggle {
  width: 42px;
  height: 42px;
  display: none;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 5px;
  border-radius: 12px;
  background: rgba(255,255,255,.12);
  color: var(--white);
  border: 1px solid rgba(255,255,255,.15);
}

.mobile-menu-toggle span[aria-hidden="true"] {
  width: 19px;
  height: 2px;
  border-radius: 999px;
  background: currentColor;
  transition: transform .2s ease, opacity .2s ease;
}

.mobile-menu-backdrop {
  position: fixed;
  inset: 0;
  z-index: 2147483500;
  display: none;
  background: rgba(10,22,40,.58);
  backdrop-filter: blur(3px);
}

.mobile-nav-panel {
  position: fixed;
  inset: 0 auto 0 0;
  z-index: 2147483600;
  width: min(86vw, 360px);
  display: flex;
  flex-direction: column;
  gap: 18px;
  padding: 18px;
  background: linear-gradient(180deg, var(--blue-900), #102b4f);
  color: var(--white);
  box-shadow: 24px 0 48px rgba(8,20,38,.34);
  transform: translateX(-105%);
  transition: transform .24s ease;
}

.mobile-nav-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.mobile-nav-logo {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--white);
  font-size: 1.35rem;
  font-weight: 950;
}

.mobile-nav-logo.has-custom-logo .logo-icon,
.mobile-nav-logo.has-custom-logo .logo-image {
  max-height: 48px;
}

.mobile-menu-close {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: rgba(255,255,255,.12);
  color: var(--white);
  font-size: 1.6rem;
  line-height: 1;
}

.mobile-nav-search {
  display: flex;
  align-items: center;
  min-height: 48px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 14px;
  background: rgba(255,255,255,.1);
}

.mobile-nav-search input {
  min-width: 0;
  width: 100%;
  border: 0 !important;
  background: transparent !important;
  color: var(--white) !important;
  padding: 0 14px !important;
  box-shadow: none !important;
}

.mobile-nav-search input::placeholder { color: rgba(255,255,255,.62); }
.mobile-nav-search button { width: 46px; height: 46px; background: transparent; color: var(--blue-200); }

.mobile-nav-menu {
  overflow-y: auto;
  padding-right: 3px;
}

.mobile-nav-list,
.mobile-nav-list .sub-menu {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.mobile-nav-list a {
  min-height: 46px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 11px 13px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 13px;
  background: rgba(255,255,255,.07);
  color: var(--blue-100);
  font-weight: 900;
}

.mobile-nav-list a:hover,
.mobile-nav-list .current-menu-item > a {
  background: rgba(255,255,255,.15);
  color: var(--white);
}

.mobile-nav-list .menu-item-has-children > a::after {
  content: "⌄";
  color: var(--blue-200);
  font-size: 1rem;
}

.mobile-nav-list .sub-menu {
  margin: 6px 0 4px 14px;
  padding-left: 12px;
  border-left: 2px solid rgba(147,197,253,.25);
}

.mobile-nav-list .sub-menu a {
  min-height: 40px;
  background: rgba(255,255,255,.045);
  font-size: .92rem;
}

.mobile-nav-actions {
  display: grid;
  gap: 10px;
  margin-top: auto;
  padding-top: 16px;
  border-top: 1px solid rgba(255,255,255,.12);
}

.mobile-nav-store,
.mobile-nav-account {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  font-weight: 950;
}

.mobile-nav-store {
  background: linear-gradient(135deg, var(--accent), #ff7a18);
  color: var(--white);
  box-shadow: 0 14px 26px rgba(245,158,11,.24);
}

.mobile-nav-account {
  border: 1px solid rgba(147,197,253,.34);
  background: rgba(59,130,212,.2);
  color: var(--white);
}

body.mobile-menu-open {
  overflow: hidden;
}

body.mobile-menu-open .topbar,
body.mobile-menu-open .header,
body.mobile-menu-open .cart-float,
body.mobile-menu-open .back-to-top {
  z-index: 1 !important;
}

body.mobile-menu-open .mobile-menu-backdrop {
  display: block;
}

body.mobile-menu-open .mobile-nav-panel {
  transform: translateX(0);
}

/* =========================================================
   04. Hero e home modular
   ========================================================= */
.btn-primary {
  background: var(--accent);
  color: var(--white);
  font-weight: 900;
  padding: 14px 22px;
  border-radius: var(--radius-sm);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.btn-secondary {
  background: rgba(255,255,255,.12);
  color: var(--white);
  border: 1px solid rgba(255,255,255,.18);
  font-weight: 900;
  padding: 14px 22px;
  border-radius: var(--radius-sm);
}

/* =========================================================
   05. Cards de produto, posts e categorias
   ========================================================= */
.products-grid, .post-grid, .category-grid { display: grid; gap: 22px; }
.products-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.post-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.category-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.product-card, .post-card, .category-card { background: var(--bg-card); border: 1.5px solid var(--border-card); border-radius: var(--radius-lg); overflow: hidden; transition: all .2s ease; box-shadow: var(--shadow-sm); position: relative; }
.product-card:hover, .post-card:hover, .category-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-xl); border-color: var(--blue-300); }
.product-thumb, .post-thumb { aspect-ratio: 4/3; background: linear-gradient(135deg, var(--blue-100), var(--blue-200)); display: grid; place-items: center; position: relative; overflow: hidden; }
.generated-icon { position: relative; z-index: 1; font-size: 3.4rem; }
.generated-label { position: absolute; bottom: 12px; color: rgba(10,22,40,.72); font-weight: 900; font-size: .7rem; letter-spacing: .08em; text-transform: uppercase; }
.product-thumb-overlay, .post-thumb-overlay { position: absolute; inset: 0; background: rgba(30,77,140,.62); display: flex; align-items: center; justify-content: center; opacity: 0; transition: opacity .2s ease; }
.product-card:hover .product-thumb-overlay, .post-card:hover .post-thumb-overlay { opacity: 1; }
.btn-quick-buy, .btn-read-hover { background: var(--white); color: var(--blue-700); font-weight: 900; padding: 10px 22px; border-radius: var(--radius-sm); transform: translateY(8px); transition: transform .2s ease; }
.product-card:hover .btn-quick-buy, .post-card:hover .btn-read-hover { transform: translateY(0); }
.product-badge, .post-badge { position: absolute; top: 10px; left: 10px; z-index: 2; background: var(--blue-600); color: var(--white); font-size: .65rem; font-weight: 900; padding: 4px 10px; border-radius: 20px; text-transform: uppercase; }
.badge-hot { background: var(--red); }
.badge-gratis, .badge-free { background: var(--green); }
.product-info, .post-body { padding: 16px; }
.product-subject, .post-cat { color: var(--blue-600); font-weight: 900; font-size: .75rem; text-transform: uppercase; letter-spacing: .06em; margin-bottom: 6px; }
.product-name, .post-title { color: var(--text-primary); font-weight: 900; line-height: 1.3; margin-bottom: 9px; }
.product-meta, .post-footer { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.product-price { color: var(--blue-700); font-weight: 900; font-size: 1.12rem; }
.product-price.free { color: var(--green); }
.product-level, .post-excerpt, .post-date { color: var(--text-muted); font-size: .86rem; }
.product-level { background: var(--bg-secondary); padding: 3px 8px; border-radius: 6px; font-weight: 800; }
.btn-add-cart { width: 36px; height: 36px; background: var(--blue-700); color: var(--white); border-radius: var(--radius-sm); display: grid; place-items: center; }
.category-card { padding: 28px 16px 24px; text-align: center; }
.cat-icon { width: 58px; height: 58px; margin: 0 auto 14px; border-radius: 18px; display: grid; place-items: center; font-size: 1.75rem; transition: transform .2s ease; }
.category-card:hover .cat-icon { transform: scale(1.1) rotate(-3deg); }
.cat-icon.geo { background: linear-gradient(135deg, #dbeafe, #bfdbfe); }
.cat-icon.hist { background: linear-gradient(135deg, #fef3c7, #fde68a); }
.cat-icon.sci { background: linear-gradient(135deg, #d1fae5, #a7f3d0); }
.cat-icon.color { background: linear-gradient(135deg, #fce7f3, #fbcfe8); }
.cat-icon.free { background: linear-gradient(135deg, #dcfce7, #bbf7d0); }
.cat-icon.quiz { background: linear-gradient(135deg, #ede9fe, #ddd6fe); }
.cat-icon.print { background: linear-gradient(135deg, #cffafe, #a5f3fc); }
.cat-icon.map { background: linear-gradient(135deg, #e0f2fe, #bae6fd); }
.cat-name { font-weight: 900; color: var(--text-primary); }
.cat-count { color: var(--text-muted); font-size: .75rem; font-weight: 800; }

/* =========================================================
   06. Blog, single e banners
   ========================================================= */
.page-hero, .blog-hero, .single-hero { background: linear-gradient(135deg, var(--blue-800), var(--blue-950)); color: var(--white); padding: 58px 0 62px; }
.breadcrumb { color: var(--blue-200); font-size: .82rem; font-weight: 800; margin-bottom: 14px; }
.hero-copy { color: var(--blue-100); font-size: 1.1rem; max-width: 720px; }
.single-hero .post-meta {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 14px;
  color: var(--blue-200);
  font-size: 1rem;
  font-weight: 600;
}
.single-hero .meta-pill {
  color: inherit;
}
.single-hero .meta-pill strong {
  color: var(--blue-100);
  font-weight: 900;
}
.single-hero .meta-separator {
  color: var(--blue-300);
  font-weight: 800;
}
.shop-hero-title-row { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.shop-hero-title-row h1 { margin: 0; }
.shop-clear-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 0 16px;
  border: 1px solid rgba(147,197,253,.5);
  border-radius: 999px;
  background: rgba(255,255,255,.1);
  color: var(--white);
  font-size: .86rem;
  font-weight: 950;
  box-shadow: 0 10px 24px rgba(2,8,23,.18);
}
.shop-clear-btn:hover {
  background: linear-gradient(135deg, var(--accent), #ff7a18);
  border-color: transparent;
  color: var(--white);
  transform: translateY(-1px);
}
.blog-layout, .single-layout, .shop-layout { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 30px; align-items: start; }
.blog-sidebar, .single-sidebar { display: grid; gap: 22px; }
.sidebar-box { background: var(--bg-card); border: 1.5px solid var(--border-card); border-radius: var(--radius-lg); padding: 20px; box-shadow: var(--shadow-sm); }
.sidebar-title { color: var(--text-primary); font-size: 1.25rem; font-weight: 900; margin-bottom: 14px; }
.sidebar-kicker {
  margin-bottom: 8px;
  color: var(--blue-600);
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.sidebar-box-top-posts .sidebar-title {
  margin-bottom: 16px;
}
.popular-list { list-style: none; display: grid; gap: 12px; }
.popular-list li { margin: 0; }
.popular-list a {
  display: grid;
  grid-template-columns: 62px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  padding: 12px;
  border: 1px solid rgba(59,130,246,.12);
  border-radius: 16px;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(239,246,255,.92));
  color: var(--text-primary);
  text-decoration: none;
  box-shadow: 0 8px 18px rgba(15,23,42,.04);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
}
.popular-list a:hover {
  transform: translateY(-2px);
  border-color: rgba(59,130,246,.28);
  box-shadow: 0 14px 28px rgba(30,77,140,.12);
  background: linear-gradient(180deg, #ffffff, #eef5ff);
}
.popular-thumb-wrap {
  width: 62px;
  height: 62px;
  display: block;
}
.popular-thumb {
  width: 62px;
  height: 62px;
  display: block;
  border-radius: 16px;
  object-fit: cover;
  box-shadow: 0 10px 18px rgba(15,23,42,.08);
  border: 1px solid rgba(59,130,246,.1);
}
.popular-thumb-fallback {
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, var(--blue-50), #dbeafe);
  color: var(--blue-700);
  font-size: 1.05rem;
  font-weight: 950;
  box-shadow: inset 0 0 0 1px rgba(59,130,246,.08);
}
.popular-rank {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 13px;
  background: linear-gradient(135deg, var(--blue-50), #dbeafe);
  color: var(--blue-700);
  font-size: 1.05rem;
  font-weight: 950;
  box-shadow: inset 0 0 0 1px rgba(59,130,246,.08);
}
.popular-copy {
  min-width: 0;
  display: grid;
  gap: 6px;
}
.popular-title {
  display: block;
  color: var(--text-primary);
  font-size: 1.08rem;
  font-weight: 900;
  line-height: 1.2;
}
.popular-meta {
  display: block;
  color: var(--blue-600);
  font-size: .82rem;
  font-weight: 800;
}
.sticky-banner,
.sidebar-box.sticky-banner,
.blog-sidebar .sticky-banner {
  position: sticky;
  top: 92px;
  align-self: start;
}
.banner-slot, .article-banner { min-height: 170px; border: 2px dashed var(--blue-200); border-radius: 16px; display: grid; place-items: center; text-align: center; color: var(--text-muted); font-weight: 900; background: linear-gradient(135deg, var(--blue-50), var(--bg-card)); padding: 22px; }
.marketing-banner {
  width: 100%;
  overflow: hidden;
}

.article-freebies-section {
  position: relative;
  padding: 78px 0;
  background:
    radial-gradient(circle at 14% 18%, rgba(56, 189, 248, .16), transparent 28%),
    radial-gradient(circle at 86% 14%, rgba(245, 158, 11, .14), transparent 24%),
    linear-gradient(180deg, #eef6ff 0%, #e8f1ff 100%);
}

.article-freebies-head {
  margin-bottom: 26px;
}

.article-freebies-shell {
  position: relative;
  padding: 34px;
  border: 1px solid rgba(59,130,246,.14);
  border-radius: 30px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,255,255,.9)),
    linear-gradient(135deg, rgba(56,189,248,.08), rgba(245,158,11,.06));
  box-shadow: 0 24px 54px rgba(30,77,140,.10);
  overflow: hidden;
}

.article-freebies-shell::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(30,77,140,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(30,77,140,.035) 1px, transparent 1px);
  background-size: 34px 34px;
  pointer-events: none;
  opacity: .45;
}

.article-freebies-shell > * {
  position: relative;
  z-index: 1;
}

.article-freebies-head p {
  max-width: 720px;
}

.article-freebies-cta {
  display: grid;
  gap: 12px;
  justify-items: end;
}

.article-freebies-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  border-radius: 999px;
  background: linear-gradient(135deg, #22c55e, #059669);
  color: var(--white);
  font-size: .84rem;
  font-weight: 950;
  letter-spacing: .04em;
  text-transform: uppercase;
  box-shadow: 0 14px 28px rgba(5,150,105,.20);
}

.article-freebies-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 18px;
  border: 1.5px solid rgba(59,130,246,.22);
  border-radius: 999px;
  background: rgba(255,255,255,.72);
  color: var(--blue-700);
  font-weight: 900;
  text-decoration: none;
  box-shadow: 0 10px 22px rgba(30,77,140,.08);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, color .18s ease;
}

.article-freebies-link:hover {
  transform: translateY(-1px);
  border-color: rgba(245,158,11,.35);
  color: var(--accent-dark);
  box-shadow: 0 14px 28px rgba(30,77,140,.12);
}

.article-freebies-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (max-width: 900px) {
  .article-freebies-section {
    padding: 56px 0;
  }

  .article-freebies-shell {
    padding: 24px;
    border-radius: 24px;
  }

  .article-freebies-head {
    gap: 18px;
  }

  .article-freebies-cta {
    justify-items: start;
  }
}

@media (max-width: 560px) {
  .article-freebies-section {
    padding: 42px 0;
  }

  .article-freebies-shell {
    padding: 20px;
    border-radius: 20px;
  }

  .article-freebies-head {
    margin-bottom: 20px;
  }

  .article-freebies-cta {
    width: 100%;
    gap: 10px;
  }

  .article-freebies-badge,
  .article-freebies-link {
    width: 100%;
    min-height: 44px;
    text-align: center;
    justify-content: center;
  }

  .article-freebies-badge {
    padding: 12px 14px;
    font-size: .78rem;
    line-height: 1.2;
  }

  .article-freebies-link {
    padding: 0 14px;
    font-size: .94rem;
    white-space: normal;
  }
}

.marketing-banner.article-banner {
  border-style: solid;
  border-color: var(--border-card);
  background: var(--bg-card);
  box-shadow: var(--shadow-sm);
}

.marketing-banner :where(a, img, iframe, picture) {
  max-width: 100%;
}

.marketing-banner img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 12px;
}

.marketing-banner iframe {
  display: block;
  width: 100%;
  min-height: 220px;
  border: 0;
  border-radius: 12px;
}

.sidebar-banner {
  display: grid;
  gap: 10px;
}
.single-card { background: var(--bg-card); border: 1.5px solid var(--border-card); border-radius: var(--radius-lg); box-shadow: var(--shadow-md); overflow: hidden; }
.featured-image { aspect-ratio: 16/8; background: linear-gradient(135deg, #d1fae5, #a7f3d0); position: relative; overflow: hidden; }
.single-content { padding: 30px; }
.single-content p { color: var(--text-secondary); font-size: 1.1rem; line-height: 1.78; margin: 16px 0; }
.single-content h2 { color: var(--text-primary); font-size: 1.85rem; line-height: 1.18; margin: 34px 0 12px; }

/* Conteudo editorial de paginas e posts */
.page-article-layout {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  gap: 28px;
  align-items: start;
}

.page-article-layout.no-toc {
  display: block;
}

.page-article-layout.no-toc .page-rich-content {
  max-width: 920px;
  margin: 0 auto;
}

.page-rich-content {
  overflow: visible;
}

.page-toc-sidebar {
  position: sticky;
  top: 104px;
  display: grid;
  gap: 10px;
}

.page-toc-toggle {
  display: none;
}

.page-toc {
  padding: 18px;
  border: 1.5px solid var(--border-card);
  border-radius: 18px;
  background: var(--bg-card);
  box-shadow: var(--shadow-sm);
}

.page-toc-title {
  margin-bottom: 12px;
  color: var(--accent);
  font-size: .78rem;
  font-weight: 950;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.page-toc ol {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.page-toc a {
  display: block;
  padding: 9px 10px;
  border-radius: 10px;
  color: var(--text-secondary);
  font-size: .92rem;
  font-weight: 850;
  line-height: 1.35;
}

.page-toc a:hover {
  background: var(--blue-50);
  color: var(--accent-dark);
}

.single-content :where(h2, h3, h4) {
  scroll-margin-top: 120px;
}

.single-content h2 {
  position: relative;
  padding-top: 6px;
  color: var(--blue-900);
  font-weight: 950;
}

.single-content h2::before {
  content: "";
  display: block;
  width: 54px;
  height: 5px;
  margin-bottom: 12px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--accent), #ff7a18);
}

.single-content h3 {
  margin: 28px 0 10px;
  color: var(--blue-800);
  font-size: 1.38rem;
  line-height: 1.25;
  font-weight: 950;
}

.single-content h4 {
  margin: 22px 0 8px;
  color: var(--text-primary);
  font-size: 1.12rem;
  font-weight: 950;
}

.single-content a:not(.button):not(.btn):not(.share-btn):not(.wp-block-button__link) {
  color: var(--blue-700);
  font-weight: 900;
  
}

.single-content a:not(.button):not(.btn):not(.share-btn):not(.wp-block-button__link):hover {
  color: var(--accent-dark);
}

.single-content :where(ul, ol) {
  display: grid;
  gap: 10px;
  margin: 18px 0 24px;
  padding-left: 0;
  color: var(--text-secondary);
  line-height: 1.65;
}

.single-content :where(ul, ol) li {
  position: relative;
  margin-left: 24px;
  padding-left: 6px;
}

.single-content ul li::marker {
  color: var(--accent);
  font-size: 1.2em;
}

.single-content ol li::marker {
  color: var(--blue-700);
  font-weight: 950;
}

.single-content blockquote,
.single-content .wp-block-quote {
  position: relative;
  margin: 28px 0;
  padding: 24px 26px 24px 70px;
  border: 1.5px solid var(--border-card);
  border-left: 6px solid var(--accent);
  border-radius: 18px;
  background: linear-gradient(180deg, var(--blue-50), var(--bg-card));
  box-shadow: var(--shadow-sm);
}

.single-content blockquote::before,
.single-content .wp-block-quote::before {
  content: "\201C";
  position: absolute;
  top: 10px;
  left: 22px;
  color: var(--blue-600);
  font-size: 3.4rem;
  line-height: 1;
  font-weight: 950;
}

.single-content blockquote p {
  margin: 0;
  color: var(--blue-900);
  font-size: 1.14rem;
  font-weight: 750;
}

.single-content blockquote cite,
.single-content .wp-block-quote cite {
  display: block;
  margin-top: 12px;
  color: var(--text-muted);
  font-size: .9rem;
  font-style: normal;
  font-weight: 900;
}

.single-content .wp-block-separator {
  width: 100%;
  height: 1px;
  margin: 34px 0;
  border: 0;
  background: var(--border-card);
}

.single-content .wp-block-table {
  overflow-x: auto;
  margin: 24px 0;
}

.single-content table {
  width: 100%;
  border-collapse: collapse;
  overflow: hidden;
  border: 1px solid var(--border-card);
  border-radius: 14px;
  background: var(--bg-card);
}

.single-content th,
.single-content td {
  padding: 13px 14px;
  border-bottom: 1px solid var(--border-card);
  text-align: left;
}

.single-content th {
  background: var(--blue-50);
  color: var(--blue-900);
  font-weight: 950;
}

.single-content :where(.wp-block-gallery, .gallery) {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px !important;
  margin: 28px 0 !important;
}

.single-content :where(.wp-block-gallery figure, .wp-block-image, .gallery-item) {
  margin: 0 !important;
}

.single-content :where(.wp-block-gallery a, .wp-block-image a, .gallery-icon a) {
  display: block;
  overflow: hidden;
  border-radius: 14px;
  border: 1.5px solid var(--border-card);
  box-shadow: var(--shadow-sm);
  background: var(--blue-50);
}

.single-content :where(.wp-block-gallery img, .wp-block-image img, .gallery img) {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  height: auto;
  object-fit: cover;
  border: 0 !important;
  transition: transform .24s ease, filter .24s ease;
}

.single-content :where(.wp-block-gallery a:hover img, .wp-block-image a:hover img, .gallery-icon a:hover img) {
  transform: scale(1.04);
  filter: saturate(1.08);
}

.single-content .wp-caption-text,
.single-content figcaption,
.single-content .gallery-caption {
  margin-top: 8px;
  color: var(--text-muted);
  font-size: .88rem;
  line-height: 1.45;
  text-align: center;
}

.eduativa-inline-product-box {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr) auto;
  align-items: center;
  gap: 22px;
  width: 100%;
  margin: 28px 0;
  padding: 18px;
  border: 1.5px solid var(--border-card);
  border-radius: 22px;
  background:
    linear-gradient(135deg, rgba(59,130,246,.06), rgba(255,255,255,.94)),
    var(--bg-card);
  box-shadow: var(--shadow-sm);
}

.eduativa-inline-product-box.is-free {
  background:
    linear-gradient(135deg, rgba(16,185,129,.10), rgba(255,255,255,.94)),
    var(--bg-card);
  border-color: rgba(16,185,129,.22);
}

.eduativa-inline-product-media {
  display: block;
  border-radius: 18px;
  overflow: hidden;
  background: var(--blue-50);
  box-shadow: 0 10px 24px rgba(30,77,140,.10);
}

.eduativa-inline-product-image {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.eduativa-inline-product-image--placeholder {
  display: grid;
  place-items: center;
  font-size: 3.1rem;
  color: var(--blue-600);
}

.eduativa-inline-product-content {
  min-width: 0;
}

.eduativa-inline-product-kicker {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 6px 12px;
  border-radius: 999px;
  background: rgba(37,99,235,.10);
  color: var(--blue-700);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.eduativa-inline-product-box.is-free .eduativa-inline-product-kicker {
  background: rgba(16,185,129,.12);
  color: #059669;
}

.eduativa-inline-product-title {
  margin: 12px 0 0;
  color: var(--text-primary);
  font-size: 1.55rem;
  line-height: 1.14;
}

.eduativa-inline-product-title a {
  color: inherit;
}

.eduativa-inline-product-action {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.eduativa-inline-product-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 0 24px;
  border-radius: 14px;
  background: linear-gradient(135deg, var(--accent), #f97316);
  color: var(--white) !important;
  font-weight: 900;
  white-space: nowrap;
  box-shadow: 0 12px 28px rgba(245,158,11,.24);
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

.eduativa-inline-product-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 32px rgba(245,158,11,.32);
  filter: brightness(1.03);
  color: var(--white) !important;
}

.eduativa-lightbox {
  position: fixed;
  inset: 0;
  z-index: 2147483600;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 28px;
  background: rgba(2,8,23,.82);
  backdrop-filter: blur(6px);
}

.eduativa-lightbox.is-open {
  display: flex;
}

body.lightbox-open {
  overflow: hidden;
}

.eduativa-lightbox img {
  max-width: min(1100px, 94vw);
  max-height: 82vh;
  object-fit: contain;
  border-radius: 18px;
  box-shadow: 0 26px 70px rgba(0,0,0,.44);
}

.eduativa-lightbox-close {
  position: fixed;
  top: 18px;
  right: 18px;
  width: 46px;
  height: 46px;
  border-radius: 999px;
  background: var(--white);
  color: var(--blue-900);
  font-size: 1.8rem;
  font-weight: 900;
  box-shadow: var(--shadow-md);
}

.eduativa-lightbox-caption {
  position: fixed;
  left: 24px;
  right: 24px;
  bottom: 18px;
  color: var(--white);
  text-align: center;
  font-weight: 800;
}

[data-theme="dark"] .page-toc,
[data-theme="dark"] .single-content blockquote,
[data-theme="dark"] .single-content .wp-block-quote,
[data-theme="dark"] .single-content table {
  background: var(--bg-card);
}

[data-theme="dark"] .page-toc-title,
[data-theme="dark"] .single-content h2,
[data-theme="dark"] .single-content h3,
[data-theme="dark"] .single-content blockquote p,
[data-theme="dark"] .single-content th {
  color: var(--text-primary);
}

[data-theme="dark"] .page-toc a:hover,
[data-theme="dark"] .single-content th {
  background: rgba(59,130,212,.18);
}

.share-buttons { display: flex; gap: 10px; flex-wrap: wrap; }
.share-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  background: transparent;
  box-shadow: none;
  border-radius: 0;
}
.share-btn .eduativa-svg-icon {
  width: 20px;
  height: 20px;
}
.share-btn.whats .eduativa-svg-icon {
  filter: brightness(0) saturate(100%) invert(44%) sepia(98%) saturate(684%) hue-rotate(94deg) brightness(95%) contrast(88%);
}
.share-btn.face .eduativa-svg-icon {
  filter: brightness(0) saturate(100%) invert(34%) sepia(96%) saturate(1109%) hue-rotate(199deg) brightness(91%) contrast(89%);
}
.share-btn.copy .eduativa-svg-icon {
  filter: brightness(0) saturate(100%) invert(33%) sepia(14%) saturate(925%) hue-rotate(176deg) brightness(96%) contrast(89%);
}
.share-btn:hover .eduativa-svg-icon {
  transform: translateY(-1px);
}

.share-box {
  margin-top: 42px;
  padding: 22px 24px;
  border: 1.5px solid var(--border-card);
  border-radius: 20px;
  background:
    linear-gradient(135deg, rgba(59, 130, 246, .08), rgba(37, 99, 235, .03)),
    var(--bg-card);
  box-shadow: 0 16px 34px rgba(15, 23, 42, .08);
}

.share-title {
  margin: 0 0 14px;
  color: var(--blue-900);
  font-size: 1rem;
  font-weight: 950;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.share-box .share-buttons {
  gap: 14px;
}

.share-box .share-btn .eduativa-svg-icon {
  width: 22px;
  height: 22px;
}

[data-theme="dark"] .share-box {
  background:
    linear-gradient(135deg, rgba(59, 130, 246, .14), rgba(37, 99, 235, .06)),
    var(--bg-card);
}

[data-theme="dark"] .share-title {
  color: var(--blue-100);
}

/* Produto individual */
.product-single-hero {
  background: linear-gradient(135deg, var(--blue-800), var(--blue-950));
  color: var(--white);
  padding: 32px 0;
}

.product-single-hero .breadcrumb {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
}

.product-single-hero .breadcrumb a {
  color: var(--blue-200);
  font-weight: 900;
}

.product-single-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(360px, .78fr);
  gap: 30px;
  align-items: start;
}

.product-gallery-card,
.product-summary-card,
.product-description-card {
  background: var(--bg-card);
  border: 1.5px solid var(--border-card);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-md);
}

.product-gallery-card {
  padding: 14px;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.product-main-media {
  aspect-ratio: 4/3;
  display: grid;
  place-items: center;
  overflow: hidden;
  border-radius: 14px;
  background: linear-gradient(135deg, var(--blue-100), var(--blue-200));
  cursor: zoom-in;
}

.product-main-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .28s ease;
}

.product-main-media:hover img {
  transform: scale(1.08);
}

.single-product-fallback {
  font-size: 5rem;
}

.product-thumbs {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  margin-top: 12px;
}

.product-thumb-btn {
  aspect-ratio: 1;
  overflow: hidden;
  border: 2px solid var(--border-card);
  border-radius: 12px;
  background: var(--bg-secondary);
  padding: 0;
}

.product-thumb-btn img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.product-thumb-btn.is-active,
.product-thumb-btn:hover {
  border-color: var(--blue-400);
  box-shadow: 0 10px 24px rgba(30,77,140,.16);
}

.product-summary-card {
  padding: 28px;
  position: sticky;
  top: 92px;
  overflow: hidden;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.product-tax-line {
  color: var(--blue-600);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
  margin-bottom: 10px;
}

.product-tax-line a,
.product-meta-box a {
  color: var(--blue-600);
  font-weight: 900;
}

.product-single-title {
  color: var(--blue-950);
  font-size: clamp(1.6rem, 2.72vw, 2.4rem);
  line-height: 1.05;
  font-weight: 900;
  margin-bottom: 14px;
}

html[data-theme="dark"] .product-single-title {
  color: var(--text-primary);
}

.product-single-price {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 5px;
  color: #1e4d8c;
  font-size: 2rem;
  font-weight: 900;
  margin-bottom: 16px;
}

.product-single-price.free {
  color: var(--green);
}

.product-single-price .product-discount {
  color: #e11d48;
  font-size: .95rem;
  font-weight: 600;
}

.product-single-price .product-sale-price {
  color: #1e4d8c;
  font-size: 1.65rem;
  line-height: 1;
}

.product-single-price .product-sale-price .amount {
  color: inherit;
}

.product-single-price .product-regular-price {
  display: flex;
  width: 100%;
  margin-top: 4px;
  color: var(--text-muted);
  font-size: .78rem;
  font-weight: 700;
  line-height: 1.2;
}

.product-single-price .product-regular-price del {
  margin-left: 3px;
}

.product-short-desc {
  color: var(--text-secondary);
  line-height: 1.7;
  padding: 16px 0;
  border-top: 1px solid var(--border-card);
  border-bottom: 1px solid var(--border-card);
}

.product-actions {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  margin: 30px 0 22px;
  padding-top: 6px;
}

.single-add-cart,
.wishlist-btn,
.mini-cart-link {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border-radius: var(--radius-sm);
  font-weight: 900;
}

.product-summary-card .single-add-cart,
.product-summary-card .single-add-cart.button,
.product-summary-card a.single-add-cart,
.product-summary-card a.single-add-cart.button,
.woocommerce .product-summary-card a.single-add-cart.button {
  background: linear-gradient(135deg, var(--accent), #ff7a18) !important;
  color: var(--white) !important;
  box-shadow: 0 16px 30px rgba(245,158,11,.32) !important;
  font-size: 1.34rem !important;
  line-height: 1 !important;
  min-height: 66px;
  height: 66px;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px;
  border: 0 !important;
  border-radius: 10px !important;
  text-shadow: 0 1px 0 rgba(0,0,0,.08);
  width: 100%;
  text-align: center;
  padding: 0 24px !important;
  margin: 0 !important;
}

.product-summary-card .single-add-cart .cart-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.08em;
  line-height: 1;
  margin: 0;
}

.product-summary-card .single-add-cart.added::after,
.product-summary-card .single-add-cart.is-added::after,
.woocommerce .product-summary-card a.single-add-cart.added::after,
.woocommerce .product-summary-card a.single-add-cart.is-added::after,
.woocommerce a.button.added::after,
.woocommerce button.button.added::after {
  content: none !important;
  display: none !important;
}

.product-summary-card .single-add-cart.added,
.product-summary-card .single-add-cart.is-added {
  gap: 0 !important;
}

.product-summary-card .single-add-cart:hover,
.product-summary-card .single-add-cart.button:hover,
.product-summary-card a.single-add-cart:hover,
.product-summary-card a.single-add-cart.button:hover,
.woocommerce .product-summary-card a.single-add-cart.button:hover {
  background: linear-gradient(135deg, #ffad16, var(--accent-dark)) !important;
  color: var(--white) !important;
  transform: translateY(-2px);
  box-shadow: 0 20px 34px rgba(245,158,11,.38) !important;
}


.single-add-cart.is-disabled {
  background: var(--text-muted);
  box-shadow: none;
}

.wishlist-btn {
  min-width: 52px;
  padding: 0 14px;
  color: var(--blue-700);
  background: var(--bg-secondary);
  border: 1.5px solid var(--border-card);
}

.wishlist-btn span {
  font-size: 1.3rem;
}

.wishlist-btn.is-active {
  color: #e11d48;
  border-color: rgba(225,29,72,.28);
  background: #fff1f2;
}

.wishlist-badge {
  position: absolute;
  top: 18px;
  right: 18px;
  min-height: 34px;
  min-width: 0;
  padding: 0 11px;
  border-radius: 999px;
  font-size: .78rem;
  box-shadow: var(--shadow-sm);
}

.wishlist-badge span {
  font-size: 1rem;
}

.mini-cart-link {
  min-height: 36px;
  justify-self: start;
  padding: 0 12px;
  color: var(--blue-700);
  background: var(--blue-50);
  border: 1px solid var(--blue-200);
  font-size: .85rem;
}

.mini-cart-link:hover {
  color: var(--white);
  background: var(--blue-700);
  border-color: var(--blue-700);
}

.product-actions .added_to_cart,
.product-actions .wc-forward,
.product-summary-card .added_to_cart.wc-forward,
.product-card .added_to_cart,
.product-card .wc-forward,
.product-card .added_to_cart.wc-forward {
  display: none !important;
}

/* Carrinho */
.cart-page-hero {
  background: linear-gradient(135deg, var(--blue-900), var(--blue-700));
  color: var(--white);
}

.cart-page-hero .page-kicker {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 0 14px;
  border: 1px solid rgba(245,158,11,.55);
  border-radius: 999px;
  color: var(--accent);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  background: rgba(245,158,11,.1);
}

.cart-page-hero h1 {
  margin-top: 12px;
}

.cart-page-hero p {
  max-width: 620px;
  color: var(--blue-100);
}

.eduativa-cart-page {
  background: var(--bg-secondary);
}

.cart-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 380px;
  gap: 28px;
  align-items: start;
}

.cart-items-panel,
.cart-summary-panel,
.cart-empty-state {
  border: 1px solid var(--border-card);
  border-radius: 22px;
  background: var(--bg-card);
  box-shadow: var(--shadow-md);
}

.cart-items-panel {
  padding: 24px;
}

.cart-panel-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 22px;
}

.cart-panel-head h2,
.cart-coupon-box h3,
.cart-empty-state h2 {
  color: var(--blue-900);
  font-size: clamp(1.35rem, 2vw, 2rem);
  line-height: 1.15;
}

.cart-continue-link,
.cart-remove-link {
  color: var(--blue-700);
  font-weight: 900;
}

.cart-continue-link:hover,
.cart-remove-link:hover {
  color: var(--accent-dark);
}

.cart-items-list {
  display: grid;
  gap: 14px;
}

.cart-item-card {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr);
  gap: 16px;
  padding: 14px;
  border: 1px solid var(--border-card);
  border-radius: 18px;
  background: linear-gradient(180deg, var(--white), var(--blue-50));
}

.cart-item-thumb {
  display: block;
  overflow: hidden;
  border-radius: 14px;
  aspect-ratio: 1;
  background: var(--blue-100);
}

.cart-item-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.cart-item-info {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  position: relative;
  padding-right: 74px;
}

.cart-item-main h3 {
  color: var(--text-primary);
  font-size: 1rem;
  line-height: 1.25;
  margin-bottom: 8px;
}

.cart-item-label {
  display: block;
  margin-bottom: 4px;
  color: var(--blue-700);
  font-size: .78rem;
  font-weight: 950;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.cart-item-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  color: var(--text-muted);
  font-size: .84rem;
  font-weight: 800;
}

.cart-item-meta span {
  padding: 4px 9px;
  border-radius: 999px;
  background: rgba(59,130,212,.1);
}

.cart-item-price {
  text-align: right;
}

.cart-item-price span {
  display: block;
  color: var(--text-muted);
  font-size: .78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.cart-item-price strong {
  color: #1e4d8c;
  font-size: 1.2rem;
  font-weight: 950;
}

.cart-remove-link {
  position: absolute;
  right: 0;
  bottom: 0;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(239,68,68,.1);
  color: var(--red);
  font-size: .78rem;
}

.cart-coupon-box {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(260px, 1fr);
  gap: 18px;
  align-items: center;
  margin-top: 22px;
  padding: 20px;
  border: 1px dashed rgba(30,77,140,.35);
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(245,158,11,.12), rgba(59,130,212,.1));
}

.cart-coupon-box p {
  color: var(--text-secondary);
  margin-top: 4px;
}

.cart-coupon-form {
  display: flex;
  gap: 10px;
}

.cart-coupon-form input {
  min-width: 0;
  flex: 1;
  height: 48px;
  padding: 0 14px;
  border: 1px solid var(--border-card);
  border-radius: 12px;
  background: var(--white);
  color: var(--text-primary);
}

.cart-coupon-form input:focus {
  outline: 3px solid rgba(59,130,212,.18);
  border-color: var(--blue-500);
}

.cart-coupon-button,
.cart-update-button {
  min-height: 48px;
  padding: 0 18px;
  border-radius: 12px;
  font-weight: 900;
}

.woocommerce .cart-coupon-button.button {
  background: linear-gradient(135deg, var(--accent), #ff7a18) !important;
  color: var(--white) !important;
  box-shadow: 0 12px 24px rgba(245,158,11,.28);
  border: 0;
}

.woocommerce .cart-coupon-button.button:hover {
  background: linear-gradient(135deg, #ffad16, var(--accent-dark)) !important;
  color: var(--white) !important;
  transform: translateY(-1px);
}

.cart-update-button {
  margin-top: 16px;
  background: transparent !important;
  color: var(--blue-700) !important;
  border: 1px solid var(--border-card) !important;
}

.cart-summary-panel {
  position: sticky;
  top: 118px;
  padding: 20px;
}

.cart-summary-note {
  display: grid;
  gap: 4px;
  margin-bottom: 16px;
  padding: 14px;
  border-radius: 16px;
  background: var(--blue-50);
  color: var(--blue-900);
}

.cart-summary-note span {
  color: var(--text-secondary);
  font-size: .9rem;
}

.woocommerce .cart_totals {
  width: 100%;
  float: none;
}

.woocommerce .cart_totals h2 {
  color: var(--blue-900);
  font-size: 1.45rem;
  font-weight: 950;
  margin-bottom: 12px;
}

.woocommerce .cart_totals table.shop_table {
  width: 100%;
  border: 0;
  border-collapse: collapse;
  margin-bottom: 18px;
}

.woocommerce .cart_totals table.shop_table th,
.woocommerce .cart_totals table.shop_table td {
  padding: 12px 0;
  border-bottom: 1px solid var(--border-card);
  color: var(--text-secondary);
}

.woocommerce .cart_totals table.shop_table th {
  font-weight: 950;
}

.woocommerce .cart_totals table.shop_table td {
  text-align: right;
  color: var(--text-primary);
  font-weight: 900;
}

.woocommerce .wc-proceed-to-checkout {
  padding: 0;
}

.woocommerce .wc-proceed-to-checkout a.checkout-button,
.cart-primary-action {
  width: 100%;
  min-height: 58px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  background: linear-gradient(135deg, var(--accent), #ff7a18) !important;
  color: var(--white) !important;
  box-shadow: 0 16px 30px rgba(245,158,11,.34);
  font-size: 1.08rem;
  font-weight: 950;
  text-align: center;
}

.woocommerce .wc-proceed-to-checkout a.checkout-button:hover,
.cart-primary-action:hover {
  transform: translateY(-2px);
  box-shadow: 0 20px 36px rgba(245,158,11,.42);
}

.cart-empty-state {
  max-width: 620px;
  margin: 0 auto;
  padding: 44px 28px;
  text-align: center;
}

.eduativa-empty-cart-state {
  max-width: 720px;
  padding: clamp(34px, 5vw, 58px) 28px;
  background: linear-gradient(180deg, var(--white), var(--blue-50));
}

.cart-empty-icon {
  width: 76px;
  height: 76px;
  display: grid;
  place-items: center;
  margin: 0 auto 18px;
  border-radius: 22px;
  background: linear-gradient(135deg, var(--blue-100), var(--blue-50));
  color: var(--blue-700);
  font-size: 2rem;
}

.cart-empty-state p {
  color: var(--text-secondary);
  margin: 10px auto 22px;
}

.eduativa-empty-cart-state h2 {
  margin: 8px 0 10px;
  font-size: clamp(1.7rem, 3vw, 2.45rem);
  font-weight: 950;
}

.eduativa-empty-cart-state p {
  max-width: 500px;
  font-size: 1.05rem;
}

.checkout-login-state {
  max-width: 760px;
  margin: 0 auto;
  padding: clamp(34px, 5vw, 58px) 28px;
  border: 1.5px solid var(--border-card);
  border-radius: 22px;
  background: linear-gradient(180deg, var(--white), var(--blue-50));
  box-shadow: var(--shadow-md);
  text-align: center;
}

.checkout-login-icon {
  width: 78px;
  height: 78px;
  display: grid;
  place-items: center;
  margin: 0 auto 18px;
  border-radius: 24px;
  background: linear-gradient(135deg, var(--blue-900), var(--blue-700));
  color: var(--white);
  font-size: 2rem;
  box-shadow: 0 18px 34px rgba(13,34,64,.18);
}

.checkout-login-state h2 {
  margin: 8px 0 10px;
  color: var(--blue-900);
  font-size: clamp(1.7rem, 3vw, 2.45rem);
  line-height: 1.12;
  font-weight: 950;
}

.checkout-login-state p {
  max-width: 540px;
  margin: 0 auto 24px;
  color: var(--text-secondary);
  font-size: 1.05rem;
}

.checkout-login-actions {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 12px;
}

.checkout-login-actions .btn-primary,
.checkout-register-link {
  width: auto !important;
  min-width: 210px;
  min-height: 52px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  padding: 0 24px !important;
  line-height: 1;
}

.checkout-register-link {
  border: 1.5px solid var(--border-card);
  border-radius: 14px;
  background: var(--white);
  color: var(--blue-700);
  font-weight: 950;
}

.checkout-register-link:hover {
  border-color: rgba(245,158,11,.45);
  color: var(--accent-dark);
  transform: translateY(-1px);
}

/* Carrinho em bloco do WooCommerce */
.wc-block-cart {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}

.wc-block-cart .wc-block-components-quantity-selector,
.wc-block-cart .wc-block-cart-item__quantity-title {
  display: none !important;
}

.wc-block-cart .wc-block-cart-item__quantity {
  display: block !important;
  margin-top: 10px !important;
}

.wc-block-cart .wc-block-cart-items__header-product,
.wc-block-cart .wc-block-cart-items__header-total,
.wc-block-cart .wc-block-cart__totals-title,
.wc-block-cart .wp-block-woocommerce-cart-order-summary-heading-block,
.wc-block-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
  font-weight: 950 !important;
}

.wc-block-cart .wc-block-components-totals-wrapper,
.wc-block-cart .wc-block-components-panel,
.wc-block-cart .wc-block-components-panel__content {
  border-color: var(--border-card) !important;
}

.wc-block-cart .wc-block-components-panel__content {
  display: block;
}

.wc-block-cart .wc-block-components-text-input input {
  min-height: 46px;
  border-radius: 12px !important;
  border-color: var(--border-card) !important;
}

.wc-block-cart .wc-block-cart__submit-button,
.wc-block-cart .wc-block-components-totals-coupon__button {
  min-height: 52px;
  border-radius: 14px !important;
  color: var(--white) !important;
  border: 0 !important;
  font-weight: 950 !important;
}

.wc-block-cart .wc-block-cart__submit-button:hover,
.wc-block-cart .wc-block-components-totals-coupon__button:hover {
  color: var(--white) !important;
  transform: translateY(-1px);
}

.wc-block-cart .wc-block-components-totals-coupon__button {
  background: linear-gradient(135deg, var(--blue-700), var(--blue-500)) !important;
  box-shadow: 0 14px 26px rgba(30,77,140,.28);
}

.wc-block-cart .wc-block-components-totals-coupon__button:hover {
  background: linear-gradient(135deg, var(--blue-600), var(--blue-700)) !important;
  box-shadow: 0 18px 32px rgba(30,77,140,.34);
}

.wc-block-cart .wc-block-cart__submit-button {
  background: linear-gradient(135deg, var(--accent), #ff7a18) !important;
  box-shadow: 0 16px 30px rgba(245,158,11,.3);
}

.wc-block-cart .wc-block-cart__submit-button:hover {
  background: linear-gradient(135deg, #ffad16, var(--accent-dark)) !important;
}

.wc-block-checkout .wc-block-components-checkout-place-order-button,
.wc-block-checkout .wc-block-components-checkout-place-order-button[type="submit"],
.wc-block-checkout .wc-block-components-button:not(.is-link).wc-block-components-checkout-place-order-button {
  min-height: 58px;
  padding: 0 28px;
  border: 0 !important;
  border-radius: 14px !important;
  background: linear-gradient(135deg, var(--accent), #ff7a18) !important;
  color: var(--white) !important;
  box-shadow: 0 16px 30px rgba(245,158,11,.3);
  font-weight: 950 !important;
}

.wc-block-checkout .wc-block-components-checkout-place-order-button:hover,
.wc-block-checkout .wc-block-components-button:not(.is-link).wc-block-components-checkout-place-order-button:hover {
  background: linear-gradient(135deg, #ffad16, var(--accent-dark)) !important;
  color: var(--white) !important;
  transform: translateY(-1px);
  box-shadow: 0 20px 36px rgba(245,158,11,.38);
}

.wc-block-checkout .wc-block-components-checkout-place-order-button .wc-block-components-button__text {
  color: var(--white) !important;
  font-weight: inherit !important;
}

.wc-block-checkout .wc-block-components-totals-coupon__button,
.wc-block-checkout .wc-block-components-totals-coupon__button[type="submit"],
.wc-block-checkout .wp-block-woocommerce-checkout-order-summary-coupon-form-block .wc-block-components-button {
  min-height: 50px;
  border: 0 !important;
  border-radius: 12px !important;
  background: linear-gradient(135deg, var(--blue-700), var(--blue-500)) !important;
  color: var(--white) !important;
  box-shadow: 0 14px 26px rgba(30,77,140,.25);
  font-weight: 950 !important;
}

.wc-block-checkout .wc-block-components-totals-coupon__button:hover,
.wc-block-checkout .wp-block-woocommerce-checkout-order-summary-coupon-form-block .wc-block-components-button:hover {
  background: linear-gradient(135deg, var(--blue-600), var(--blue-700)) !important;
  color: var(--white) !important;
  transform: translateY(-1px);
}

.wc-block-checkout .wc-block-components-totals-coupon__button .wc-block-components-button__text,
.wc-block-checkout .wp-block-woocommerce-checkout-order-summary-coupon-form-block .wc-block-components-button__text {
  color: var(--white) !important;
  font-weight: inherit !important;
}

.wc-block-cart .wc-block-components-button__text {
  color: inherit !important;
  font-weight: inherit !important;
}

.wc-block-cart .wc-block-cart-item__remove-link {
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: auto !important;
  height: auto !important;
  margin-top: 10px !important;
  padding: 6px 10px !important;
  border-radius: 999px !important;
  background: rgba(239,68,68,.1) !important;
  color: var(--red) !important;
  font-size: .78rem !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  position: static !important;
  clip: auto !important;
  clip-path: none !important;
  overflow: visible !important;
}

.wc-block-cart .wc-block-cart-item__remove-link:hover {
  background: var(--red) !important;
  color: var(--white) !important;
}

.wp-block-woocommerce-empty-cart-block {
  max-width: 760px;
  margin: 0 auto;
  padding: clamp(30px, 5vw, 54px) 24px;
  border: 1.5px solid var(--border-card);
  border-radius: 22px;
  background: linear-gradient(180deg, var(--white), var(--blue-50));
  box-shadow: var(--shadow-md);
  text-align: center;
}

.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title {
  max-width: 520px;
  margin: 18px auto 10px !important;
  color: var(--blue-900);
  font-size: clamp(1.55rem, 2.4vw, 2.3rem) !important;
  line-height: 1.12;
  font-weight: 950;
}

.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title::before {
  width: 92px !important;
  height: 92px !important;
  margin: 0 auto 22px !important;
  border-radius: 28px;
  background-color: var(--blue-900) !important;
  box-shadow: 0 18px 34px rgba(13,34,64,.18);
}

.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title + p,
.wp-block-woocommerce-empty-cart-block p {
  max-width: 520px;
  margin-left: auto;
  margin-right: auto;
  color: var(--text-secondary);
  font-size: 1rem;
}

.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title + p::after {
  content: "";
  display: block;
}

.wp-block-woocommerce-empty-cart-block .wp-block-button__link,
.wp-block-woocommerce-empty-cart-block .button,
.woocommerce .return-to-shop .button {
  min-height: 52px;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  margin-top: 16px;
  padding: 0 24px !important;
  border: 0 !important;
  border-radius: 14px !important;
  background: linear-gradient(135deg, var(--accent), #ff7a18) !important;
  color: var(--white) !important;
  box-shadow: 0 16px 30px rgba(245,158,11,.28);
  font-weight: 950 !important;
}

.wp-block-woocommerce-empty-cart-block .wp-block-button__link:hover,
.wp-block-woocommerce-empty-cart-block .button:hover,
.woocommerce .return-to-shop .button:hover {
  background: linear-gradient(135deg, #ffad16, var(--accent-dark)) !important;
  color: var(--white) !important;
  transform: translateY(-1px);
}

.wp-block-woocommerce-empty-cart-block .wp-block-woocommerce-cart-cross-sells-block,
.wp-block-woocommerce-empty-cart-block .wp-block-woocommerce-product-new,
.wp-block-woocommerce-empty-cart-block .wc-block-grid,
.wp-block-woocommerce-empty-cart-block .wc-block-product-new {
  display: none !important;
}

.wp-block-woocommerce-empty-cart-block .wp-block-heading,
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title {
  display: block !important;
}

.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title {
  font-size: 0 !important;
}

.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title::before {
  content: "";
  display: block;
}

.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title::after {
  content: "Seu carrinho esta vazio";
  display: block;
  color: var(--blue-900);
  font-size: clamp(1.55rem, 2.4vw, 2.3rem);
  line-height: 1.12;
  font-weight: 950;
}

.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title + p {
  font-size: 0;
}

.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title + p::before {
  content: "Escolha uma atividade pronta para imprimir e volte aqui para finalizar.";
  display: block;
  color: var(--text-secondary);
  font-size: 1rem;
}

.wp-block-woocommerce-empty-cart-block .eduativa-empty-cart-action {
  margin-top: 22px;
}

[data-theme="dark"] .wc-block-cart {
  background: var(--bg-card);
}

[data-theme="dark"] .wp-block-woocommerce-empty-cart-block {
  background: var(--bg-card);
}

[data-theme="dark"] .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title {
  color: var(--text-primary);
}

[data-theme="dark"] .cart-item-card {
  background: linear-gradient(180deg, var(--bg-card), rgba(30,77,140,.18));
}

[data-theme="dark"] .cart-coupon-form input,
[data-theme="dark"] .cart-coupon-box,
[data-theme="dark"] .cart-summary-note {
  background: var(--blue-900);
}

@media (max-width: 980px) {
  .cart-layout {
    grid-template-columns: 1fr;
  }

  .cart-summary-panel {
    position: static;
  }
}

@media (max-width: 680px) {
  .cart-items-panel {
    padding: 18px;
  }

  .cart-panel-head,
  .cart-coupon-box,
  .cart-coupon-form,
  .cart-item-info {
    grid-template-columns: 1fr;
  }

  .cart-panel-head {
    align-items: start;
  }

  .cart-item-card {
    grid-template-columns: 78px minmax(0, 1fr);
  }

  .cart-item-info {
    padding-right: 0;
  }

  .cart-item-price {
    text-align: left;
  }

  .cart-remove-link {
    position: static;
    justify-self: start;
    width: fit-content;
  }

  .cart-coupon-button,
  .cart-update-button {
    width: 100%;
  }
}

.product-meta-box {
  display: grid;
  gap: 9px;
  color: var(--text-secondary);
  font-size: .92rem;
  padding: 16px;
  border-radius: 12px;
  background: var(--bg-secondary);
}

.product-share-box {
  margin-top: 18px;
}

.product-share-box > span {
  display: block;
  margin-bottom: 10px;
  color: var(--text-primary);
  font-weight: 900;
}

.product-share-box .share-buttons {
  gap: 8px;
}

.product-share-box .share-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}

.product-description-card {
  padding: 28px;
}

.product-description-section {
  padding-top: 0;
}

.product-description-card .single-content {
  padding: 0;
}

.related-products-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (max-width: 1024px) {
  .product-single-grid,
  .related-products-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .product-summary-card {
    position: static;
  }
}

@media (max-width: 760px) {
  .product-single-grid,
  .related-products-grid {
    grid-template-columns: 1fr;
  }

  .product-summary-card,
  .product-description-card {
    padding: 20px;
  }

  .product-actions {
    grid-template-columns: 1fr;
  }

  .wishlist-btn:not(.wishlist-badge) {
    width: 100%;
  }

  .product-thumbs {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

/* =========================================================
   07. Gratuitos, newsletter e loja
   ========================================================= */
.freebies-section {
  background:
    radial-gradient(circle 460px at 72% 16%, rgba(56, 189, 248, .24), transparent 62%),
    linear-gradient(135deg, var(--blue-700), var(--blue-950));
  padding: 78px 0;
  color: var(--white);
  overflow: hidden;
  position: relative;
}

.freebies-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px);
  background-size: 64px 64px;
  mask-image: linear-gradient(90deg, rgba(0,0,0,.5), #000 28%, #000 72%, rgba(0,0,0,.5));
  pointer-events: none;
}

.freebies-inner {
  position: relative;
  display: grid;
  grid-template-columns: 340px minmax(0, 1fr);
  gap: 44px;
  align-items: center;
}

.freebies-copy {
  padding: 28px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 22px;
  background: rgba(8, 28, 57, .38);
  box-shadow: 0 24px 70px rgba(2, 8, 23, .22);
}

.freebies-copy .section-eyebrow { color: #7fc1ff; }
.freebies-copy h2 { color: var(--accent); font-size: 2.05rem; line-height: 1.12; margin-bottom: 14px; text-align: left; }
.freebies-copy p { color: var(--blue-100); font-size: 1.04rem; margin-bottom: 24px; text-align: left; }
.email-form, .newsletter-input-group { display: flex; flex-direction: column; gap: 8px; }
.newsletter-interest-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.newsletter-interest-field span {
  font-size: .82rem;
  font-weight: 800;
  color: var(--blue-100);
}
.email-form input, .newsletter-input-group input, .email-form select, .newsletter-input-group select {
  background: rgba(255,255,255,.1);
  border: 1.5px solid rgba(255,255,255,.2);
  border-radius: var(--radius-sm);
  padding: 13px 16px;
  color: var(--white);
}
.email-form select, .newsletter-input-group select {
  appearance: none;
  -webkit-appearance: none;
  background-image: linear-gradient(45deg, transparent 50%, rgba(255,255,255,.72) 50%), linear-gradient(135deg, rgba(255,255,255,.72) 50%, transparent 50%);
  background-position: calc(100% - 18px) calc(50% - 2px), calc(100% - 12px) calc(50% - 2px);
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
  padding-right: 38px;
}
.email-form select option, .newsletter-input-group select option {
  color: var(--blue-900);
}
.btn-email, .newsletter-input-group button { background: var(--accent); color: var(--white); font-weight: 900; padding: 13px 22px; border-radius: var(--radius-sm); transition: transform .18s ease, box-shadow .18s ease, background .18s ease; }
.btn-email:hover, .newsletter-input-group button:hover { background: var(--accent-dark); transform: translateY(-2px); box-shadow: 0 12px 26px rgba(245,158,11,.28); }
.newsletter-message {
  min-height: 20px;
  color: var(--blue-100);
  font-size: .86rem;
  font-weight: 800;
  margin-top: 4px;
}

.freebies-more {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 18px;
  color: var(--blue-100);
  font-weight: 950;
}

.freebies-more:hover { color: var(--accent); }

.freebies-board {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(280px, 1.05fr) minmax(260px, .95fr);
  gap: 18px;
}

.freebie-featured,
.freebie-row-card {
  color: var(--white);
  text-decoration: none;
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease, background .2s ease;
}

.freebie-featured {
  display: grid;
  grid-template-rows: minmax(250px, 1fr) auto;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 24px;
  background: rgba(255,255,255,.1);
  box-shadow: 0 22px 54px rgba(2, 8, 23, .22);
}

.freebie-featured:hover,
.freebie-row-card:hover {
  transform: translateY(-4px);
  border-color: rgba(255,255,255,.36);
  box-shadow: 0 28px 70px rgba(2, 8, 23, .3);
}

.freebie-featured-media {
  min-height: 260px;
  position: relative;
  display: grid;
  place-items: center;
  overflow: hidden;
}

.freebie-featured-media::before,
.freebie-row-thumb::before {
  content: "";
  position: absolute;
  inset: 12px;
  border: 2px solid rgba(255,255,255,.45);
  border-radius: 18px;
  pointer-events: none;
}

.freebie-featured-media img,
.freebie-row-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.freebie-featured-media span,
.freebie-row-thumb span {
  position: relative;
  z-index: 1;
  display: grid;
  place-items: center;
  width: 68px;
  height: 68px;
  border-radius: 20px;
  background: rgba(255,255,255,.9);
  font-size: 2rem;
}

.freebie-featured-media strong {
  position: absolute;
  left: 18px;
  top: 18px;
  z-index: 2;
  padding: 8px 13px;
  border-radius: 999px;
  background: linear-gradient(135deg, #22c55e, #059669);
  color: var(--white);
  font-size: .74rem;
  font-weight: 950;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.freebie-featured-body {
  padding: 20px 22px 22px;
}

.freebie-featured-body span,
.freebie-row-card span {
  color: var(--blue-200);
  font-size: .76rem;
  font-weight: 900;
}

.freebie-featured-body h3 {
  margin: 7px 0 8px;
  color: var(--white);
  font-size: clamp(1.35rem, 2vw, 1.9rem);
  line-height: 1.12;
}

.freebie-featured-body p {
  margin: 0 0 14px;
  color: var(--blue-100);
  font-weight: 800;
}

.freebie-featured-body small,
.freebie-row-card small {
  display: inline-flex;
  color: var(--green);
  font-weight: 950;
}

.freebie-list-wrap {
  position: relative;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 24px;
  background: rgba(255,255,255,.04);
  overflow: hidden;
}

.freebie-list-fade {
  position: absolute;
  left: 12px;
  right: 22px;
  height: 38px;
  z-index: 3;
  pointer-events: none;
}

.freebie-list-fade-top {
  top: 0;
  background: linear-gradient(180deg, rgba(15, 48, 88, .85) 0%, rgba(15, 48, 88, 0) 100%);
}

.freebie-list-fade-bottom {
  bottom: 0;
  background: linear-gradient(0deg, rgba(15, 48, 88, .9) 0%, rgba(15, 48, 88, 0) 100%);
}

.freebie-list {
  display: grid;
  gap: 12px;
  max-height: 542px;
  overflow: auto;
  padding: 18px 14px 18px 10px;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.freebie-list::-webkit-scrollbar {
  width: 0;
  height: 0;
  display: none;
}

.freebie-row-card {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  min-height: 116px;
  padding: 10px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 18px;
  background: rgba(255,255,255,.08);
}

.freebie-list .freebie-row-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 28px rgba(2, 8, 23, .18);
}

.freebie-row-thumb {
  position: relative;
  width: 96px;
  height: 96px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border-radius: 15px;
}

.freebie-row-card strong {
  display: block;
  margin-bottom: 6px;
  color: var(--white);
  line-height: 1.25;
  font-weight: 950;
}

.freebie-row-card small {
  margin-top: 8px;
  font-size: .8rem;
}

.freebie-thumb-map,
.freebie-thumb-water { background: linear-gradient(135deg, #2563b0, #38bdf8); }
.freebie-thumb-color { background: linear-gradient(135deg, #ec4899, #fbbf24); }
.freebie-thumb-history { background: linear-gradient(135deg, #92400e, #f59e0b); }
.freebie-thumb-planner { background: linear-gradient(135deg, #8b5cf6, #ec4899); }
.freebie-thumb-quiz { background: linear-gradient(135deg, #0f766e, #22c55e); }

@media (max-width: 900px) {
  .freebies-board {
    grid-template-columns: 1fr;
  }

  .freebie-list {
    max-height: none;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow: visible;
    padding: 0;
  }

  .freebie-list-wrap {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
  }

  .freebie-list-fade {
    display: none;
  }
}

@media (max-width: 560px) {
  .freebies-section {
    padding: 56px 0;
  }

  .freebies-copy {
    padding: 22px;
  }

  .freebies-copy h2 {
    font-size: 1.75rem;
  }

  .freebie-featured {
    grid-template-rows: 220px auto;
    border-radius: 20px;
  }

  .freebie-featured-media {
    min-height: 220px;
  }

  .freebie-list {
    grid-template-columns: 1fr;
  }

  .freebie-row-card {
    grid-template-columns: 82px minmax(0, 1fr);
    min-height: 104px;
  }

  .freebie-row-thumb {
    width: 82px;
    height: 82px;
  }
}

.shop-sidebar { background: var(--bg-card); border: 1.5px solid var(--border-card); border-radius: var(--radius-lg); padding: 20px; box-shadow: var(--shadow-sm); }
.shop-content ul.products { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; list-style: none; }

/* =========================================================
   08. Footer igual à index.html
   ========================================================= */
.footer { background: #081426; color: var(--blue-200); padding: 60px 0 28px; }
.footer-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1.2fr; gap: 56px; padding-bottom: 42px; border-bottom: 1px solid rgba(255,255,255,.1); }
.footer .logo { margin: 0 0 18px; display: inline-flex; }
.footer-desc { max-width: 330px; color: var(--blue-300); margin-bottom: 22px; }
.footer-brand .logo.has-custom-logo {
  gap: 0;
}
.footer-brand .logo.has-custom-logo .logo-icon {
  width: auto;
  height: auto;
  max-width: none;
  max-height: none;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
  display: block;
}
.footer-brand .logo.has-custom-logo .logo-image {
  width: auto;
  height: auto;
  max-width: 180px;
  max-height: 84px;
  object-fit: contain;
  filter: brightness(0) invert(1);
}
.footer-social { display: flex; gap: 10px; }
.footer-social a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  box-shadow: none;
}
.footer-social .eduativa-svg-icon {
  width: 36px;
  height: 36px;
  filter: brightness(0) saturate(100%) invert(65%) sepia(75%) saturate(2369%) hue-rotate(190deg) brightness(102%) contrast(97%);
}
.footer-social a:hover { transform: translateY(-1px); }
.footer-social a:hover .eduativa-svg-icon {
  filter: brightness(0) saturate(100%) invert(82%) sepia(18%) saturate(3249%) hue-rotate(183deg) brightness(105%) contrast(98%);
}
.footer-heading { color: var(--white); font-weight: 900; margin-bottom: 16px; }
.footer-accordion-toggle { width: 100%; padding: 0; border: 0; background: transparent; text-align: left; }
.footer-accordion-toggle span { display: none; }
.footer-links { list-style: none; }
.footer-links a { display: block; color: var(--blue-300); margin: 8px 0; }
.footer-links a:hover { color: var(--white); }
.footer-news-text { font-size: .9rem; margin-bottom: 12px; color: var(--blue-300); }
.payment-icons { display: flex; gap: 7px; flex-wrap: wrap; margin-top: 14px; }
.payment-icon { background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.12); border-radius: 5px; padding: 4px 10px; color: var(--blue-100); font-size: .75rem; font-weight: 900; }
.footer-bottom { display: flex; align-items: center; justify-content: space-between; gap: 18px; color: #64748b; padding-top: 20px; font-size: .82rem; }
.footer-bottom-links { display: flex; gap: 18px; list-style: none; }

/* =========================================================
   09. Responsivo e performance visual
   ========================================================= */
@media (max-width: 1024px) {
  .products-grid, .post-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .category-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .topbar-social, .header-search, .btn-store, .header-nav-row { display: none; }
  .header-main { min-height: 70px; display: flex; align-items: center; gap: 12px; justify-content: space-between; padding: 12px 0; }
  .logo { margin-right: auto; }
  .header-actions { margin-left: auto; gap: 12px; }
  .mobile-menu-toggle { display: inline-flex; order: 1; }
  .header .cart-btn { order: 2; }
  .hero-inner, .blog-layout, .single-layout, .shop-layout, .freebies-inner { grid-template-columns: 1fr; }
  .hero-visual { display: none; }
  .products-grid, .post-grid, .freebies-grid, .shop-content ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
}
@media (max-width: 560px) {
  .container { padding: 0 16px; }
  .hero-search { flex-direction: column; }
  .products-grid, .post-grid, .category-grid, .freebies-grid, .shop-content ul.products { grid-template-columns: 1fr; }
  .footer-grid, .footer-bottom { grid-template-columns: 1fr; flex-direction: column; align-items: flex-start; }
  .footer-grid { gap: 0; }
  .footer-brand { margin-bottom: 24px; }
  .footer-accordion {
    width: 100%;
    border-top: 1px solid rgba(255,255,255,.12);
  }
  .footer-accordion:last-child {
    border-bottom: 1px solid rgba(255,255,255,.12);
  }
  .footer-accordion-toggle {
    min-height: 56px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin: 0;
    color: var(--white);
  }
  .footer-accordion-toggle span {
    width: 28px;
    height: 28px;
    display: grid;
    place-items: center;
    border-radius: 999px;
    background: rgba(255,255,255,.08);
    color: var(--blue-100);
    font-size: 1.05rem;
    transition: transform .18s ease, background .18s ease;
  }
  .footer-accordion.is-open .footer-accordion-toggle span {
    transform: rotate(45deg);
    background: linear-gradient(135deg, var(--accent), #ff7a18);
    color: var(--white);
  }
  .footer-accordion-panel {
    display: none;
    padding: 0 0 18px;
  }
  .footer-accordion.is-open .footer-accordion-panel {
    display: block;
  }
  .footer-links a {
    margin: 0;
    padding: 8px 0;
  }
  .sticky-banner,
  .sidebar-box.sticky-banner,
  .blog-sidebar .sticky-banner {
    position: static;
  }
}

/* =========================================================
   10. Home: ajustes de fidelidade visual do index.html
   ========================================================= */
.header {
  transition: background .22s ease, box-shadow .22s ease, transform .22s ease;
}

.header.is-scrolled {
  box-shadow: 0 10px 32px rgba(2, 8, 23, .28);
}

.header-search,
.btn-store,
.cart-btn,
.nav a {
  transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.header-search:focus-within {
  background: rgba(255, 255, 255, .16);
  border-color: var(--blue-300);
  box-shadow: 0 0 0 3px rgba(147, 197, 253, .18);
}

.btn-store:hover,
.cart-btn:hover,
.nav a:hover {
  transform: translateY(-1px);
}

.home-section,
.section-pad {
  padding: 72px 0;
}

.section-header {
  text-align: center;
  margin: 0 auto 32px;
}

.section-header .eyebrow,
.section-header .section-title,
.section-header .section-desc {
  text-align: center;
}

.section-header .section-desc {
  max-width: 680px;
  margin-left: auto;
  margin-right: auto;
}

.carousel-wrapper {
  position: relative;
  overflow: hidden;
  width: 100%;
}

#prodCarouselWrapper {
  width: 100vw;
  overflow: visible;
  padding: 18px max(24px, calc((100vw - 1180px) / 2)) 34px;
  margin: -18px 0 -34px calc(50% - 50vw);
}

#prodTrack {
  padding-bottom: 8px;
}

.carousel-track {
  display: flex;
  align-items: stretch;
  gap: 16px;
  transition: transform .42s cubic-bezier(.4, 0, .2, 1);
  will-change: transform;
  touch-action: pan-y;
  cursor: grab;
  user-select: none;
}

.carousel-track.is-dragging {
  transition: none;
  cursor: grabbing;
}

.carousel-track.category-grid,
.carousel-track.categories-grid,
.carousel-track.products-grid,
.carousel-track.freebies-grid {
  display: flex;
  grid-template-columns: none;
}

.carousel-track .category-card {
  flex: 0 0 calc(20% - 13px);
  min-width: 160px;
}

.carousel-track.products-grid .product-card,
.carousel-track .product-card {
  flex: 0 0 calc(25% - 15px);
  min-width: 220px;
}

.carousel-track.freebies-grid .freebie-card,
.carousel-track .freebie-card {
  flex: 0 0 calc(25% - 11px);
  min-width: 210px;
}

.carousel-controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-top: 32px;
}

.carousel-btn {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  border: 1.5px solid var(--border-card);
  background: var(--bg-card);
  color: var(--text-primary);
  font-size: 1rem;
  font-weight: 900;
  box-shadow: var(--shadow-sm);
  transition: transform .18s ease, background .18s ease, opacity .18s ease;
}

.carousel-btn:hover:not(:disabled) {
  transform: translateY(-2px);
  background: var(--blue-600);
  color: var(--white);
}

.carousel-btn:disabled {
  cursor: default;
  opacity: .45;
}

.carousel-dark .carousel-btn {
  background: rgba(255, 255, 255, .1);
  border-color: rgba(255, 255, 255, .16);
  color: var(--blue-100);
}

.carousel-dark .carousel-btn:hover:not(:disabled) {
  background: rgba(255, 255, 255, .18);
  color: var(--white);
}

.carousel-dots {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 10px;
}

.carousel-dot {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: var(--blue-300);
  opacity: .55;
  transition: width .18s ease, opacity .18s ease, background .18s ease;
}

.carousel-dot.active {
  width: 24px;
  background: var(--blue-700);
  opacity: 1;
}

.carousel-dark .carousel-dot {
  background: rgba(255, 255, 255, .38);
}

.carousel-dark .carousel-dot.active {
  background: var(--white);
}

.category-card {
  min-height: 168px;
  position: relative;
  overflow: hidden;
  text-align: center;
}

.category-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(145deg, rgba(255,255,255,.22), rgba(255,255,255,0));
  pointer-events: none;
}

.category-card:hover {
  transform: translateY(-4px);
}

.cat-icon {
  width: 64px;
  height: 64px;
  margin: 0 auto 12px;
  position: relative;
  z-index: 1;
}

.cat-icon img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: inherit;
}

#catCarouselWrapper {
  overflow: visible;
  padding: 26px 6px 34px;
  margin: -26px -6px -34px;
}

#catCarouselWrapper .carousel-viewport {
  overflow: hidden;
  padding: 26px 6px 34px;
}

#catTrack {
  padding: 0 0 6px;
}

#catTrack .category-card {
  overflow: visible;
  isolation: isolate;
  flex-basis: calc((100% - 64px) / 5);
  min-width: 0;
}

#catTrack .category-card::before {
  border-radius: inherit;
}

#catTrack .category-card:hover {
  z-index: 3;
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(30,77,140,.14);
}

.category-card h3,
.category-card p,
.badge-free {
  position: relative;
  z-index: 1;
}

.badge-free {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 10px;
  padding: 5px 10px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .18);
  color: var(--white);
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.tag-section {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 18% 16%, rgba(56, 189, 248, .22), transparent 30%),
    radial-gradient(circle at 82% 72%, rgba(251, 191, 36, .16), transparent 30%),
    linear-gradient(135deg, var(--blue-800), var(--blue-950));
  color: var(--white);
}

.tag-section .eyebrow,
.tag-section .section-title,
.tag-section .section-desc {
  color: var(--white);
}

.tag-section .section-desc {
  color: var(--blue-200);
}

.tag-filters {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-bottom: 26px;
}

.tag-filter-btn {
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 999px;
  background: rgba(255, 255, 255, .08);
  color: var(--blue-100);
  padding: 9px 14px;
  font-weight: 900;
  font-size: .86rem;
  transition: background .18s ease, color .18s ease, transform .18s ease;
}

.tag-filter-btn:hover,
.tag-filter-btn.active {
  background: var(--accent);
  color: var(--white);
  transform: translateY(-1px);
}

.tags-cloud {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  max-width: 940px;
  margin: 0 auto;
}

.tag-item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, .14);
  background: rgba(255, 255, 255, .1);
  color: var(--white);
  padding: 11px 15px;
  font-weight: 900;
  box-shadow: 0 12px 24px rgba(2, 8, 23, .12);
  transition: transform .18s ease, background .18s ease, opacity .18s ease;
}

.tag-item:hover {
  transform: translateY(-2px);
  background: rgba(255, 255, 255, .18);
}

.tag-item.hidden {
  display: none;
}

.blog-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.blog-card {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: var(--bg-card);
  border: 1.5px solid var(--border-card);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-sm);
  transition: transform .18s ease, box-shadow .18s ease;
}

.blog-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-md);
}

.blog-thumb {
  position: relative;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: var(--blue-100);
}

.blog-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.blog-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 18px;
}

.blog-cat {
  color: var(--blue-600);
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
  margin-bottom: 8px;
}

.blog-title {
  color: var(--text-primary);
  font-size: 1.08rem;
  line-height: 1.25;
  margin-bottom: 10px;
}

.blog-excerpt {
  color: var(--text-secondary);
  font-size: .92rem;
  margin-bottom: 16px;
}

.blog-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: auto;
  color: var(--text-muted);
  font-size: .82rem;
  font-weight: 800;
}

.read-more {
  color: var(--blue-700);
  font-weight: 900;
  white-space: nowrap;
}

.read-more:hover {
  color: var(--accent);
}

.view-all-wrap {
  display: flex;
  justify-content: center;
  margin-top: 40px;
  text-align: center;
}

.view-all-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  padding: 12px 28px;
  border: 2px solid var(--blue-300);
  border-radius: var(--radius-sm);
  background: var(--bg-card);
  color: var(--blue-700);
  font-size: .94rem;
  font-weight: 900;
  line-height: 1;
  box-shadow: var(--shadow-sm);
  transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.view-all-btn:hover {
  background: var(--blue-700);
  border-color: var(--blue-700);
  color: var(--white);
  transform: translateY(-2px);
  box-shadow: var(--shadow-md);
}

.view-all-btn span {
  font-size: 1.04rem;
  transition: transform .18s ease;
}

.view-all-btn:hover span {
  transform: translateX(3px);
}

.stats-strip {
  background: var(--blue-700);
  color: var(--white);
  padding: 40px 0;
}

.stats-inner {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  align-items: center;
}

.stat-item {
  text-align: center;
  padding: 0 20px;
  border-right: 1px solid rgba(255,255,255,.15);
}

.stat-item:last-child {
  border-right: none;
}

.stat-number {
  color: var(--white);
  font-size: clamp(2.55rem, 4vw, 3.45rem);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -1px;
}

.stat-number span {
  color: var(--accent);
}

.stat-label {
  color: var(--blue-200);
  font-size: .9rem;
  font-weight: 600;
  margin-top: 6px;
}

.testimonials-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.testimonial-card {
  position: relative;
  background: var(--bg-card);
  border: 1.5px solid var(--border-card);
  border-radius: var(--radius-lg);
  padding: 24px;
  box-shadow: var(--shadow-sm);
}

.testimonial-card::before {
  content: "\201C";
  position: absolute;
  right: 18px;
  top: 8px;
  color: var(--blue-100);
  font-size: 4.4rem;
  line-height: 1;
  font-weight: 900;
}

.test-stars {
  color: var(--yellow);
  font-size: 1rem;
  letter-spacing: 1px;
  margin-bottom: 12px;
}

.test-text {
  position: relative;
  z-index: 1;
  color: var(--text-secondary);
  line-height: 1.65;
  margin-bottom: 18px;
}

.test-author {
  display: flex;
  align-items: center;
  gap: 12px;
}

.test-avatar {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--blue-500), var(--accent));
  color: var(--white);
  font-weight: 900;
}

.test-name {
  color: var(--text-primary);
  font-weight: 900;
}

.test-role {
  color: var(--text-muted);
  font-size: .82rem;
}

.back-to-top,
.cart-float {
  position: fixed;
  z-index: 120;
  border-radius: 999px;
  box-shadow: 0 14px 32px rgba(2, 8, 23, .24);
  transition: transform .18s ease, opacity .18s ease, background .18s ease;
}

.back-to-top {
  right: 22px;
  bottom: 24px;
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  background: var(--blue-700);
  color: var(--white);
  font-weight: 900;
  opacity: 0;
  pointer-events: none;
  transform: translateY(12px);
}

.back-to-top.visible {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

.cart-float {
  right: 78px;
  bottom: 24px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 44px;
  padding: 0 16px;
  background: var(--accent);
  color: var(--white);
  font-weight: 900;
}

.back-to-top:hover,
.cart-float:hover {
  transform: translateY(-2px);
}

html[data-theme="dark"] .blog-card,
html[data-theme="dark"] .testimonial-card,
html[data-theme="dark"] .category-card {
  background: #12213a;
  border-color: rgba(255, 255, 255, .12);
}

html[data-theme="dark"] .carousel-btn {
  background: #172846;
  border-color: rgba(255, 255, 255, .12);
  color: var(--blue-100);
}

html[data-theme="dark"] .view-all-btn {
  background: #12213a;
  border-color: var(--blue-600);
  color: var(--blue-200);
}

html[data-theme="dark"] .view-all-btn:hover {
  background: var(--blue-600);
  border-color: var(--blue-500);
  color: var(--white);
}

/* Copia fiel da area "Encontre por tema ou serie" da index.html. */
.tag-section {
  padding: 56px 0;
  background: var(--blue-800);
  position: relative;
  overflow: hidden;
  color: var(--white);
}

html[data-theme="dark"] .tag-section {
  background: var(--blue-900);
}

.tag-section::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 60% 80% at 50% 50%, rgba(59,130,212,0.2) 0%, transparent 70%);
  pointer-events: none;
}

.tag-section .container {
  position: relative;
  z-index: 1;
}

.tag-section .section-header {
  text-align: center;
  margin: 0 0 48px;
}

.tag-section .section-eyebrow {
  display: inline-block;
  color: var(--blue-300);
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  margin-bottom: 10px;
}

.tag-section .section-title {
  font-family: var(--font-display);
  font-weight: 900;
  font-size: clamp(1.5rem, 2.5vw, 2.25rem);
  color: var(--white);
  letter-spacing: -0.5px;
  line-height: 1.2;
  margin-bottom: 12px;
  text-align: center;
}

.tag-section .section-desc {
  color: var(--blue-200);
  font-size: 1rem;
  max-width: 520px;
  margin: 0 auto;
  line-height: 1.7;
  text-align: center;
}

.tag-filters {
  display: flex;
  gap: 8px;
  justify-content: center;
  flex-wrap: wrap;
  margin-bottom: 28px;
}

.tag-filter-btn {
  background: rgba(255,255,255,0.1);
  color: var(--blue-200);
  border: 1px solid rgba(255,255,255,0.15);
  padding: 7px 16px;
  border-radius: 20px;
  font-size: .75rem;
  font-weight: 700;
  transition: all .2s ease;
  letter-spacing: 0.3px;
  box-shadow: none;
  transform: none;
}

.tag-filter-btn:hover,
.tag-filter-btn.active {
  background: var(--blue-500);
  color: var(--white);
  border-color: var(--blue-500);
  transform: none;
}

.tags-cloud {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
  max-width: none;
  margin: 0 auto;
}

.tag-item {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(255,255,255,0.08);
  color: var(--blue-200);
  border: 1px solid rgba(255,255,255,0.12);
  padding: 7px 16px;
  border-radius: var(--radius-sm);
  font-size: .875rem;
  font-weight: 600;
  line-height: 1.5;
  transition: all .2s ease;
  cursor: pointer;
  box-shadow: none;
  gap: 0;
}

.tag-item:hover {
  background: var(--white);
  color: var(--blue-800);
  border-color: var(--white);
  transform: translateY(-2px);
}

.tag-item.hidden {
  display: none;
}

@media (max-width: 560px) {
  .tag-section {
    padding: 44px 0;
  }

  .tag-section .section-header {
    margin-bottom: 32px;
  }

  .tag-filter-btn,
  .tag-item {
    padding: 7px 13px;
  }
}

/* Copia fiel dos cards de produtos da home na index.html. */
.product-card {
  background: var(--bg-card);
  border: 1.5px solid var(--border-card);
  border-radius: var(--radius-lg);
  overflow: hidden;
  transition: all .2s ease;
  box-shadow: var(--shadow-sm);
  position: relative;
  cursor: pointer;
  flex: 0 0 calc(25% - 16px);
  min-width: 220px;
  display: flex;
  flex-direction: column;
}

.product-card:hover {
  transform: translateY(-6px);
  box-shadow: var(--shadow-xl);
  border-color: var(--blue-300);
}

.product-thumb {
  aspect-ratio: 4/3;
  background: linear-gradient(135deg, var(--blue-100), var(--blue-200));
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 48px;
  position: relative;
  overflow: hidden;
}

.product-thumb img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

html[data-theme="dark"] .product-thumb {
  background: linear-gradient(135deg, var(--blue-900), var(--blue-800));
}

.product-thumb-art {
  position: absolute;
  inset: 0;
}

.product-thumb-overlay {
  position: absolute;
  inset: 0;
  background: rgba(30,77,140,0.6);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity .2s ease;
}

.product-card:hover .product-thumb-overlay {
  opacity: 1;
}

.btn-quick-buy {
  background: var(--white);
  color: var(--blue-700);
  font-weight: 800;
  font-size: .875rem;
  padding: 10px 22px;
  border-radius: var(--radius-sm);
  transform: translateY(8px);
  transition: transform .2s ease;
}

.product-card:hover .btn-quick-buy {
  transform: translateY(0);
}

.product-badge {
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 2;
  font-size: 10px;
  font-weight: 800;
  padding: 3px 9px;
  border-radius: 20px;
  letter-spacing: 0.4px;
  text-transform: uppercase;
}

.badge-new {
  background: var(--blue-600);
  color: var(--white);
}

.badge-hot {
  background: #ef4444;
  color: var(--white);
}

.badge-gratis {
  background: var(--green);
  color: var(--white);
}

.product-info {
  padding: 16px;
  display: flex;
  flex: 1;
  flex-direction: column;
}

.product-subject {
  font-size: .75rem;
  font-weight: 700;
  color: var(--blue-600);
  text-transform: uppercase;
  letter-spacing: 0.6px;
  margin-bottom: 5px;
}

.product-name {
  font-weight: 800;
  color: var(--text-primary);
  line-height: 1.35;
  margin-bottom: 14px;
  min-height: 42px;
}

.product-name a {
  color: inherit;
}

.product-meta {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 10px;
  margin-top: auto;
}

.product-meta > div {
  min-width: 0;
}

.product-price {
  font-weight: 900;
  font-size: 1.35rem;
  color: var(--blue-700);
}

.product-price .product-discount,
.product-price .product-sale-price,
.product-price .product-regular-price {
  display: inline-flex;
  align-items: baseline;
}

.product-price .product-discount {
  margin-right: 5px;
  color: #e11d48;
  font-size: 1.08rem;
  font-weight: 500;
}

.product-price .product-sale-price {
  color: #1e4d8c;
  font-size: 1.54rem;
  line-height: 1;
}

.product-price .product-sale-price .amount {
  color: inherit;
}

.product-price .product-regular-price {
  display: flex;
  width: 100%;
  margin-top: 3px;
  color: var(--text-muted);
  font-size: .86rem;
  font-weight: 700;
  line-height: 1.2;
}

.product-price .product-regular-price del {
  margin-left: 3px;
  color: inherit;
  opacity: .9;
}

html[data-theme="dark"] .product-price {
  color: var(--blue-300);
}

.product-price.free {
  color: var(--green);
}

.product-level {
  display: inline-flex;
  align-items: center;
  font-size: .75rem;
  color: var(--text-muted);
  background: var(--bg-secondary);
  padding: 3px 8px;
  border-radius: 6px;
  font-weight: 600;
  margin-top: 4px;
}

.product-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 16px;
}

.product-tag {
  display: inline-flex;
  align-items: center;
  max-width: 116px;
  color: var(--text-muted);
  background: var(--bg-secondary);
  padding: 3px 8px;
  border-radius: 6px;
  font-size: .75rem;
  font-weight: 600;
  line-height: 1.35;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.btn-add-cart {
  width: 34px;
  height: 34px;
  background: linear-gradient(135deg, var(--accent), #ff7a18);
  color: var(--white);
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.35rem;
  font-weight: 900;
  transition: all .2s ease;
  flex-shrink: 0;
  box-shadow: 0 9px 18px rgba(245, 158, 11, .28);
}

.btn-add-cart.is-download {
  background: linear-gradient(135deg, #22c55e, #059669);
  color: var(--white);
  font-size: 1rem;
  box-shadow: 0 9px 18px rgba(5, 150, 105, .24);
}

.btn-add-cart:hover {
  background: linear-gradient(135deg, #ffad16, var(--accent-dark));
  transform: scale(1.05);
}

.btn-add-cart.is-download:hover {
  background: linear-gradient(135deg, #34d399, #047857);
}

.btn-add-cart.added,
.btn-add-cart.is-added {
  background: #94a3b8 !important;
  color: var(--white) !important;
  box-shadow: none !important;
  pointer-events: none;
  cursor: default;
  transform: none !important;
}

/* Hero da home: clone visual da index.html. */
.hero {
  background:
    radial-gradient(circle at 78% 22%, rgba(59,130,246,.26), transparent 28%),
    radial-gradient(circle at 18% 82%, rgba(16,185,129,.10), transparent 24%),
    linear-gradient(135deg, #061733 0%, #0a2350 56%, #071a39 100%);
  position: relative;
  overflow: hidden;
  padding: 88px 0 112px;
  color: var(--white);
}

html[data-theme="dark"] .hero {
  background:
    radial-gradient(circle at 78% 22%, rgba(76,29,149,.24), transparent 30%),
    linear-gradient(135deg, #040b16 0%, #081426 60%, #050c17 100%);
}

.hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px);
  background-size: 48px 48px;
  pointer-events: none;
}

.hero-grid-bg {
  position: absolute;
  inset: 0;
  background-image:
    radial-gradient(circle at 70% 26%, rgba(255,255,255,.10) 0 2px, transparent 2px),
    radial-gradient(circle at 24% 68%, rgba(255,255,255,.08) 0 2px, transparent 2px);
  pointer-events: none;
}

.hero-inner {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.03fr) minmax(420px, .97fr);
  gap: 58px;
  align-items: start;
  z-index: 1;
}

.hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 0 16px;
  background: rgba(6, 182, 212, .12);
  border: 1px solid rgba(6, 182, 212, .22);
  color: #fbbf24;
  font-size: .75rem;
  font-weight: 900;
  border-radius: 999px;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  margin-bottom: 18px;
}

.hero-title {
  font-weight: 900;
  font-size: clamp(2.65rem, 5.5vw, 4.7rem);
  color: var(--white);
  line-height: .98;
  margin-bottom: 20px;
  letter-spacing: -.04em;
  max-width: 650px;
}

.hero-title .highlight {
  color: var(--accent);
}

.hero-sub {
  max-width: 620px;
  margin-bottom: 30px;
  color: rgba(232, 242, 255, .92);
  font-size: 1.34rem;
  line-height: 1.55;
}

.hero-action-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin-bottom: 18px;
}

.hero-action-card {
  position: relative;
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr) 36px;
  align-items: center;
  gap: 14px;
  min-height: 116px;
  padding: 20px 18px;
  border-radius: 22px;
  overflow: visible;
  color: var(--white);
}

.hero-action-card::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1.5px;
  background: linear-gradient(135deg, rgba(255,255,255,.36), rgba(255,255,255,.08));
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  pointer-events: none;
}

.hero-action-card--catalog {
  background: linear-gradient(135deg, rgba(37,99,235,.56), rgba(6,182,212,.38));
  box-shadow: 0 20px 40px rgba(10,22,40,.28);
}

.hero-action-card--ai {
  background:
    linear-gradient(135deg, rgba(109,40,217,.58), rgba(37,99,235,.30)),
    rgba(20,31,72,.88);
  box-shadow: 0 22px 46px rgba(76,29,149,.32);
}

.hero-action-card--ai::after {
  content: "";
  position: absolute;
  width: 220px;
  height: 220px;
  left: -92px;
  top: 50%;
  transform: translateY(-50%);
  border-radius: 999px;
  background:
    radial-gradient(circle at center, rgba(255,255,255,.58) 0 18%, rgba(196,181,253,.40) 26%, rgba(139,92,246,.18) 46%, transparent 72%);
  filter: blur(4px);
  animation: hero-ia-pulse 4.2s ease-in-out infinite;
  opacity: 1;
  z-index: 0;
}

.hero-action-card > * {
  position: relative;
  z-index: 1;
}

.hero-action-icon {
  width: 56px;
  height: 56px;
  display: grid;
  place-items: center;
  border-radius: 18px;
  font-size: 1.6rem;
  background: rgba(255,255,255,.12);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.22);
}

.hero-action-copy {
  display: grid;
  gap: 6px;
}

.hero-action-copy strong {
  font-size: 1.18rem;
  line-height: 1.12;
}

.hero-action-copy small {
  color: rgba(229,240,255,.82);
  font-size: .92rem;
  line-height: 1.45;
}

.hero-action-arrow {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: rgba(255,255,255,.92);
  color: var(--blue-800);
  font-size: 1.7rem;
  font-weight: 900;
  line-height: 1;
}

.hero-benefits {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.hero-benefits span {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0 14px;
  border-radius: 999px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.10);
  color: rgba(235,243,255,.92);
  font-size: .92rem;
  font-weight: 800;
}

.hero-scene {
  position: relative;
  min-height: 510px;
}

.hero-sheet {
  position: relative;
  width: min(100%, 430px);
  margin: 22px auto 0;
  padding: 22px;
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(245,248,255,.96));
  color: var(--blue-900);
  box-shadow: 0 34px 70px rgba(5,16,37,.30);
  animation: hero-float-sheet 6.2s ease-in-out infinite;
}

.hero-sheet-top h3 {
  margin: 0 0 12px;
  color: #14213e;
  font-size: 2rem;
  text-align: center;
  line-height: 1.05;
}

.hero-sheet-meta {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 12px;
  color: #4b5b78;
  font-size: .8rem;
  font-weight: 700;
}

.hero-sheet-preview {
  border-radius: 18px;
  overflow: hidden;
  background: linear-gradient(180deg, #0c1d42, #142c5b);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08);
}

.hero-sheet-photo {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
}

.hero-sheet-fallback {
  position: relative;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background:
    radial-gradient(circle at center, rgba(255,208,92,.95) 0 11%, transparent 12%),
    radial-gradient(circle at center, rgba(86,151,255,.30) 0 36%, transparent 37%),
    linear-gradient(180deg, #081731 0%, #0d2144 100%);
}

.hero-sheet-fallback::before,
.hero-sheet-fallback::after {
  content: "";
  position: absolute;
  inset: 18% 10%;
  border: 1px solid rgba(96,165,250,.28);
  border-radius: 999px;
}

.hero-sheet-fallback::after {
  inset: 8% 4%;
}

.planet {
  position: absolute;
  border-radius: 999px;
}

.planet--sun {
  width: 54px;
  height: 54px;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  background: radial-gradient(circle at 30% 30%, #ffe08a, #f59e0b 70%);
  box-shadow: 0 0 28px rgba(245,158,11,.45);
}

.planet--one {
  width: 18px;
  height: 18px;
  left: 22%;
  top: 49%;
  background: #60a5fa;
}

.planet--two {
  width: 16px;
  height: 16px;
  left: 69%;
  top: 30%;
  background: #fbbf24;
}

.planet--three {
  width: 24px;
  height: 24px;
  left: 74%;
  top: 53%;
  background: #38bdf8;
}

.planet--four {
  width: 32px;
  height: 32px;
  left: 81%;
  top: 42%;
  background: #fb923c;
}

.hero-sheet-lines {
  display: grid;
  gap: 12px;
  margin: 18px 0 0;
  padding-left: 18px;
  color: #173158;
  font-size: .92rem;
  font-weight: 700;
  line-height: 1.48;
}

.hero-side-cards {
  position: absolute;
  top: 56px;
  right: 0;
  display: grid;
  gap: 16px;
  width: 228px;
}

.hero-side-card {
  padding: 22px 18px;
  border-radius: 18px;
  background: rgba(255,255,255,.96);
  color: var(--blue-900);
  box-shadow: 0 24px 46px rgba(6,20,47,.18);
  animation: hero-float-card 5.6s ease-in-out infinite;
}

.hero-side-card--subjects {
  animation-delay: 1.2s;
}

.hero-side-icon {
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  margin-bottom: 14px;
  border-radius: 999px;
  font-size: 1.5rem;
  color: var(--white);
}

.hero-side-card--ia .hero-side-icon {
  background: linear-gradient(135deg, #8b5cf6, #6366f1);
}

.hero-side-card--subjects .hero-side-icon {
  background: linear-gradient(135deg, #22c55e, #14b8a6);
}

.hero-side-card strong {
  display: block;
  margin-bottom: 8px;
  font-size: 1.38rem;
  line-height: 1.14;
}

.hero-side-card p {
  margin: 0;
  color: #61708e;
  font-size: .95rem;
  line-height: 1.5;
}

.hero-pencil {
  position: absolute;
  right: 84px;
  bottom: 38px;
  width: 168px;
  height: 18px;
  border-radius: 999px;
  background: linear-gradient(90deg, #1d4ed8 0%, #60a5fa 48%, #1d4ed8 100%);
  transform: rotate(-28deg);
  box-shadow: 0 12px 22px rgba(29,78,216,.28);
}

.hero-pencil::before {
  content: "";
  position: absolute;
  right: -18px;
  top: 0;
  border-left: 22px solid #fbbf24;
  border-top: 9px solid transparent;
  border-bottom: 9px solid transparent;
}

.hero-pencil::after {
  content: "";
  position: absolute;
  left: -14px;
  top: 0;
  width: 18px;
  height: 18px;
  background: #1e3a8a;
  border-radius: 999px 0 0 999px;
}

.hero-scene-spark {
  position: absolute;
  font-weight: 900;
  opacity: .95;
  pointer-events: none;
}

.hero-scene-spark--a {
  left: 18px;
  top: 102px;
  font-size: 3rem;
  color: #8b5cf6;
}

.hero-scene-spark--b {
  right: 20px;
  top: 10px;
  font-size: 3rem;
  color: #4ade80;
}

.hero-scene-spark--c {
  right: 10px;
  top: 246px;
  font-size: 1.6rem;
  color: #38bdf8;
}

.hero-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  margin-top: 38px;
  padding: 18px 22px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 26px;
  background: rgba(9,24,51,.58);
  box-shadow: 0 24px 46px rgba(4,13,31,.24);
  backdrop-filter: blur(10px);
}

.hero-content,
.hero-action-grid,
.hero-benefits,
.hero-scene,
.hero-sheet,
.hero-side-cards,
.hero-metrics {
  min-width: 0;
}

.hero-metric {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 10px 18px;
}

.hero-metric + .hero-metric {
  border-left: 1px solid rgba(255,255,255,.10);
}

.hero-metric-icon {
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  border-radius: 18px;
  font-size: 1.7rem;
}

.hero-metric-icon--blue {
  color: #60a5fa;
  background: rgba(59,130,246,.10);
}

.hero-metric-icon--green {
  color: #4ade80;
  background: rgba(34,197,94,.10);
}

.hero-metric-icon--purple {
  color: #c084fc;
  background: rgba(139,92,246,.12);
}

.hero-metric-icon--gold {
  color: #fbbf24;
  background: rgba(251,191,36,.12);
}

.hero-metric-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.hero-metric-copy strong {
  color: var(--white);
  font-size: 2rem;
  line-height: 1;
  font-weight: 900;
}

.hero-metric-copy span {
  color: rgba(224,234,255,.86);
  font-size: .92rem;
  line-height: 1.4;
}

.hero-wave {
  position: absolute;
  bottom: -1px;
  left: 0;
  right: 0;
  height: 60px;
  overflow: hidden;
}

.hero-wave svg {
  width: 100%;
  height: 100%;
  fill: var(--bg-primary);
}

@keyframes hero-float-sheet {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-10px); }
}

@keyframes hero-float-card {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}

@keyframes hero-ia-ring {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes hero-ia-pulse {
  0%, 100% {
    transform: translateY(-50%) scale(1);
    opacity: .92;
  }
  50% {
    transform: translateY(-50%) scale(1.12);
    opacity: 1;
  }
}

@media (max-width: 1024px) {
  .hero-inner {
    grid-template-columns: minmax(0, 1fr) minmax(360px, .95fr);
    gap: 36px;
  }

  .hero-title {
    font-size: clamp(2.35rem, 4.8vw, 3.9rem);
  }

  .hero-side-cards {
    width: 204px;
  }

  .hero-metric {
    padding: 10px 14px;
  }
}

@media (max-width: 900px) {
  .hero-inner {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .hero-scene {
    min-height: auto;
    max-width: 560px;
    margin: 0 auto;
    padding-top: 4px;
  }

  .hero-sheet {
    margin: 0 auto;
  }

  .hero-side-cards {
    position: static;
    width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 18px;
  }

  .hero-pencil {
    display: none;
  }

  .hero-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0;
  }

  .hero-metric:nth-child(3) {
    border-left: 0;
  }

  .hero-metric:nth-child(n + 3) {
    border-top: 1px solid rgba(255,255,255,.10);
  }
}

@media (max-width: 520px) {
  .hero {
    padding: 48px 0 78px;
  }

  .hero-title {
    font-size: 2.18rem;
    line-height: 1.02;
    max-width: none;
  }

  .hero-sub {
    font-size: 1rem;
    line-height: 1.5;
    margin-bottom: 22px;
  }

  .hero-action-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .hero-action-card {
    grid-template-columns: 48px minmax(0, 1fr) 34px;
    min-height: 98px;
    padding: 16px 14px;
    border-radius: 18px;
  }

  .hero-action-arrow {
    width: 34px;
    height: 34px;
    font-size: 1.55rem;
  }

  .hero-action-icon {
    width: 48px;
    height: 48px;
    border-radius: 14px;
    font-size: 1.35rem;
  }

  .hero-action-copy strong {
    font-size: .98rem;
  }

  .hero-action-copy small {
    font-size: .8rem;
    line-height: 1.35;
  }

  .hero-benefits {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .hero-benefits span {
    justify-content: center;
    text-align: center;
  }

  .hero-sheet {
    width: min(100%, 320px);
    padding: 14px;
    border-radius: 16px;
  }

  .hero-sheet-top h3 {
    font-size: 1.25rem;
  }

  .hero-sheet-meta {
    font-size: .66rem;
    flex-wrap: wrap;
  }

  .hero-sheet-lines {
    gap: 8px;
    margin-top: 14px;
    font-size: .79rem;
    line-height: 1.38;
  }

  .hero-side-cards,
  .hero-scene-spark,
  .hero-pencil {
    display: none;
  }

  .hero-scene {
    max-width: 320px;
    margin-top: 2px;
  }

  .hero-metrics {
    grid-template-columns: 1fr;
    margin-top: 24px;
    padding: 12px;
    border-radius: 22px;
  }

  .hero-metric,
  .hero-metric + .hero-metric,
  .hero-metric:nth-child(n + 3) {
    border: 0;
  }

  .hero-metric {
    padding: 10px 6px;
  }

  .hero-metric-copy strong {
    font-size: 1.5rem;
  }

  .hero-metric-copy span {
    font-size: .85rem;
  }
}

/* Loja: copia fiel da estrutura visual de loja.html. */
.shop-page .shop-layout {
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr);
  gap: 30px;
  align-items: start;
}

.shop-page .shop-sidebar {
  position: sticky;
  top: 104px;
  background: var(--bg-card);
  border: 1.5px solid var(--border-card);
  border-radius: 16px;
  box-shadow: var(--shadow-sm);
  padding: 20px;
}

.sidebar-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 18px;
}

.sidebar-head h2 {
  color: var(--blue-900);
  font-size: 22px;
  line-height: 1.2;
  font-weight: 900;
}

.sidebar-close {
  display: none;
  width: 36px;
  height: 36px;
  border-radius: 9px;
  background: var(--blue-50);
  color: var(--blue-800);
  font-weight: 900;
}

.shop-search {
  display: flex;
  gap: 8px;
  margin-bottom: 20px;
}

.shop-search input {
  min-width: 0;
  width: 100%;
  border: 1.5px solid var(--border-card);
  border-radius: 9px;
  background: var(--bg-card);
  color: var(--text-primary);
  padding: 12px 13px;
  outline: none;
}

.shop-search button {
  width: 44px;
  border-radius: 9px;
  background: var(--blue-700);
  color: var(--white);
  font-weight: 900;
  flex-shrink: 0;
}

.filter-group {
  display: grid;
  gap: 10px;
  padding: 17px 0;
  border-top: 1px solid var(--border-card);
}

.filter-title {
  color: var(--text-primary);
  font-weight: 900;
  margin-bottom: 2px;
}

.check {
  display: flex;
  align-items: center;
  gap: 9px;
  color: var(--text-secondary);
  font-size: .92rem;
  font-weight: 700;
  line-height: 1.35;
}

.check input {
  width: 16px;
  height: 16px;
  accent-color: var(--blue-700);
}

.filter-actions {
  display: grid;
  gap: 10px;
  margin-top: 22px;
}

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  border-radius: 9px;
  padding: 11px 16px;
  font-weight: 900;
  line-height: 1;
  transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
}

.btn:hover {
  transform: translateY(-1px);
}

.btn.full {
  width: 100%;
  justify-content: center;
}

.btn.alt {
  background: var(--blue-700);
  color: var(--white);
  border: 2px solid var(--blue-700);
}

.btn.light {
  background: var(--bg-secondary);
  color: var(--blue-700);
  border: 2px solid var(--blue-200);
}

.shop-toolbar {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 24px;
}

.shop-toolbar h2 {
  color: var(--blue-900);
  font-size: 30px;
  line-height: 1.15;
  font-weight: 900;
}

.shop-toolbar p {
  color: var(--text-secondary);
}

.shop-toolbar .woocommerce-ordering {
  margin: 0;
}

.shop-toolbar select,
.woocommerce-ordering select {
  border: 1.5px solid var(--border-card);
  border-radius: 9px;
  background: var(--bg-card);
  padding: 11px 12px;
  color: var(--text-primary);
  font-weight: 800;
}

.shop-products {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
  align-items: stretch;
  clear: both;
}

.shop-products .product-card {
  width: auto !important;
  margin: 0 !important;
  float: none !important;
  min-width: 0;
  flex: initial;
  display: flex;
  flex-direction: column;
}

.shop-products .product-info {
  display: flex;
  flex: 1;
  flex-direction: column;
}

.shop-products .product-meta {
  margin-top: auto;
}

.shop-products::before,
.shop-products::after {
  display: none;
  content: none;
}

.shop-products .btn-quick-buy::before {
  content: "";
}

.load-more-wrap {
  display: flex;
  justify-content: center;
  margin-top: 34px;
}

.load-more-btn {
  min-width: 220px;
  background: var(--bg-card);
  border: 2px solid var(--blue-300);
  color: var(--blue-700);
  border-radius: 9px;
  padding: 13px 28px;
  font-weight: 900;
  text-align: center;
  box-shadow: 0 8px 24px rgba(30,77,140,.1);
}

.load-more-btn:hover {
  background: var(--blue-700);
  border-color: var(--blue-700);
  color: var(--white);
}

.load-more-btn:disabled {
  opacity: .55;
  cursor: default;
}

.load-more-ended {
  margin: 0;
  color: var(--text-secondary);
  font-weight: 900;
  text-align: center;
}

.mobile-filter-btn {
  display: none;
  position: fixed;
  right: 18px;
  top: 128px;
  bottom: auto;
  z-index: 10020;
  background: var(--accent);
  color: var(--white);
  border-radius: 999px;
  padding: 12px 17px;
  font-weight: 900;
  box-shadow: 0 12px 30px rgba(2,8,23,.22);
}

.filter-backdrop {
  display: none;
}

html[data-theme="dark"] .shop-sidebar,
html[data-theme="dark"] .shop-toolbar select,
html[data-theme="dark"] .woocommerce-ordering select,
html[data-theme="dark"] .shop-search input {
  background: #152a47;
  color: #e2eaf5;
  border-color: #1e3a5f;
}

html[data-theme="dark"] .shop-toolbar h2,
html[data-theme="dark"] .sidebar-head h2,
html[data-theme="dark"] .filter-title {
  color: #e2eaf5;
}

@media (max-width: 1024px) {
  .shop-products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .shop-page .shop-layout {
    display: block;
  }

  .shop-toolbar {
    align-items: start;
    flex-direction: column;
  }

  .shop-sidebar,
  .shop-page .shop-sidebar {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    width: min(86vw, 360px);
    z-index: 10040;
    border-radius: 0 18px 18px 0;
    overflow-y: auto;
    transform: translateX(-105%);
    transition: transform .24s ease;
  }

  body.filters-open .shop-sidebar {
    transform: translateX(0);
  }

  .sidebar-close {
    display: inline-grid;
    place-items: center;
  }

  .mobile-filter-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    pointer-events: auto;
  }

  body.admin-bar .mobile-filter-btn {
    top: 174px;
  }

  body.filters-open .mobile-filter-btn {
    z-index: 10060;
    background: linear-gradient(135deg, #1e4d8c 0%, #347bd1 100%);
    pointer-events: auto;
  }

  .filter-backdrop {
    position: fixed;
    inset: 0 0 0 min(86vw, 360px);
    z-index: 10010;
    background: rgba(10,22,40,.44);
  }

  body.filters-open .filter-backdrop {
    display: block;
  }
}

@media (max-width: 560px) {
  .mobile-filter-btn {
    top: 120px;
    left: 18px;
    right: auto;
    padding: 11px 15px;
  }

  body.admin-bar .mobile-filter-btn {
    top: 190px;
  }

  .shop-products {
    grid-template-columns: 1fr;
  }

  .shop-toolbar h2 {
    font-size: 26px;
  }
}

@media (max-width: 900px) {
  body.filters-open .shop-sidebar,
  body.filters-open .shop-page .shop-sidebar {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    bottom: 0 !important;
    width: min(86vw, 360px) !important;
    z-index: 2147483000 !important;
    isolation: isolate;
    transform: translateX(0) !important;
    opacity: 1 !important;
    filter: none !important;
  }

  body.filters-open .mobile-filter-btn {
    position: fixed !important;
    z-index: 2147483001 !important;
  }

  body.filters-open .filter-backdrop {
    z-index: 2147482000 !important;
    pointer-events: none;
  }
}

@media (max-width: 1024px) {
  .carousel-track .category-card {
    flex-basis: calc(33.333% - 11px);
  }

  #catTrack .category-card {
    flex-basis: calc((100% - 32px) / 3);
  }

  .carousel-track.products-grid .product-card,
  .carousel-track .product-card,
  .carousel-track.freebies-grid .freebie-card,
  .carousel-track .freebie-card {
    flex-basis: calc(33.333% - 14px);
  }
}

@media (max-width: 900px) {
  .blog-grid,
  .testimonials-grid,
  .stats-inner {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .carousel-track .category-card {
    flex-basis: calc(33.333% - 11px);
  }

  #catTrack .category-card {
    flex-basis: calc((100% - 32px) / 3);
  }

  .carousel-track.products-grid .product-card,
  .carousel-track.freebies-grid .freebie-card,
  .carousel-track .freebie-card {
    flex-basis: calc(50% - 8px);
    min-width: 0;
  }

  .carousel-track.products-grid .product-card {
    flex-basis: 100%;
  }
}

@media (max-width: 560px) {
  .home-section,
  .section-pad {
    padding: 54px 0;
  }

  #prodCarouselWrapper {
    width: 100%;
    overflow: hidden;
    padding: 18px 0 34px;
    margin: -18px 0 -34px;
  }

  .section-header {
    margin-bottom: 24px;
  }

  .carousel-controls {
    margin-top: 22px;
  }

  .blog-grid,
  .testimonials-grid,
  .stats-inner {
    grid-template-columns: 1fr;
  }

  .carousel-track .category-card {
    flex-basis: calc(50% - 8px);
    min-width: 0;
  }

  #catTrack .category-card {
    flex-basis: calc((100% - 16px) / 2);
  }

  .cart-float {
    right: 16px;
    bottom: 76px;
  }

  .back-to-top {
    right: 16px;
    bottom: 22px;
  }
}

/* Blog */
.blog-page .blog-hero {
  background: linear-gradient(135deg, var(--blue-800), var(--blue-950));
  padding: 58px 0;
  color: var(--white);
}

.blog-page .blog-hero .section-head {
  margin-bottom: 28px;
}

.blog-page .blog-hero .section-head h1,
.blog-page .blog-hero .section-head p {
  color: var(--white);
}

.blog-page .blog-hero .eyebrow {
  color: var(--blue-300);
}

.featured-grid {
  display: grid;
  grid-template-columns: 1.35fr 1fr 1fr;
  gap: 22px;
}

.featured-grid .post-card:first-child .post-title {
  font-size: 26px;
}

.blog-menu {
  background: var(--bg-primary);
  border-bottom: 1px solid var(--border-card);
  position: sticky;
  top: 0;
  z-index: 30;
}

body.admin-bar .blog-menu {
  top: 32px;
}

.blog-menu-list {
  display: flex;
  gap: 10px;
  overflow-x: auto;
  padding: 14px 0;
}

.blog-menu-list a {
  flex: 0 0 auto;
  background: var(--blue-50);
  color: var(--blue-700);
  border: 1px solid var(--border-card);
  border-radius: 999px;
  padding: 9px 16px;
  font-size: 13px;
  font-weight: 900;
}

.blog-menu-list a.active,
.blog-menu-list a:hover {
  background: var(--blue-700);
  color: var(--white);
}

.blog-main-section .post-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
}

.blog-main-column .section-head {
  margin-bottom: 24px;
}

.blog-page .blog-sidebar {
  position: static;
}

.blog-empty-message {
  color: var(--text-secondary);
  font-weight: 800;
}

html[data-theme="dark"] .blog-menu {
  background: var(--bg-primary);
}

@media (max-width: 980px) {
  .featured-grid,
  .blog-layout {
    grid-template-columns: 1fr;
  }

  .blog-page .blog-sidebar {
    position: static;
  }
}

@media (max-width: 560px) {
  .blog-main-section .post-list {
    grid-template-columns: 1fr;
  }

  body.admin-bar .blog-menu {
    top: 0;
  }
}

/* Login e cadastro da Minha Conta */
body.woocommerce-account:not(.logged-in) .single-card.single-content {
  max-width: 1120px !important;
  margin: 64px auto !important;
  padding: 34px !important;
  border: 1.5px solid var(--border-card);
  border-radius: 22px;
  background: var(--bg-card);
  box-shadow: var(--shadow-md);
  overflow: visible;
}

body.woocommerce-account:not(.logged-in) .woocommerce,
body.woocommerce-account:not(.logged-in) .woocommerce .col2-set,
body.woocommerce-account:not(.logged-in) .woocommerce .u-columns {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 42px !important;
  align-items: start !important;
}

body.woocommerce-account:not(.logged-in) .woocommerce .col2-set::before,
body.woocommerce-account:not(.logged-in) .woocommerce .col2-set::after,
body.woocommerce-account:not(.logged-in) .woocommerce .u-columns::before,
body.woocommerce-account:not(.logged-in) .woocommerce .u-columns::after {
  content: none !important;
  display: none !important;
}

body.woocommerce-account:not(.logged-in) .woocommerce .col-1,
body.woocommerce-account:not(.logged-in) .woocommerce .col-2,
body.woocommerce-account:not(.logged-in) .woocommerce .u-column1,
body.woocommerce-account:not(.logged-in) .woocommerce .u-column2 {
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  float: none !important;
  clear: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.woocommerce-account:not(.logged-in) .woocommerce .col-1 h2,
body.woocommerce-account:not(.logged-in) .woocommerce .col-2 h2,
body.woocommerce-account:not(.logged-in) .woocommerce .u-column1 h2,
body.woocommerce-account:not(.logged-in) .woocommerce .u-column2 h2 {
  margin: 0 0 22px !important;
  color: var(--blue-900);
  font-size: clamp(1.7rem, 2.4vw, 2.2rem);
  font-weight: 950;
  line-height: 1.1;
}

body.woocommerce-account:not(.logged-in) .woocommerce form.login,
body.woocommerce-account:not(.logged-in) .woocommerce form.register {
  width: 100% !important;
  max-width: none !important;
  display: grid;
  gap: 18px;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.woocommerce-account:not(.logged-in) .woocommerce form .form-row {
  width: 100%;
  margin: 0 !important;
  padding: 0 !important;
}

body.woocommerce-account:not(.logged-in) .woocommerce form .form-row label {
  display: block;
  margin: 0 0 8px;
  color: var(--blue-900);
  font-weight: 950;
}

body.woocommerce-account:not(.logged-in) .woocommerce form .form-row input.input-text {
  width: 100% !important;
  min-height: 50px;
}

body.woocommerce-account:not(.logged-in) .woocommerce form .password-input {
  display: block;
  width: 100%;
}

body.woocommerce-account:not(.logged-in) .woocommerce-form-login__rememberme {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  margin-left: 12px;
  color: var(--text-secondary);
  font-weight: 900;
}

body.woocommerce-account:not(.logged-in) .woocommerce-LostPassword {
  margin: 0 !important;
}

body.woocommerce-account:not(.logged-in) .woocommerce-privacy-policy-text {
  color: var(--text-secondary);
  font-size: .95rem;
}

@media (max-width: 900px) {
  body.woocommerce-account:not(.logged-in) .woocommerce,
  body.woocommerce-account:not(.logged-in) .woocommerce .col2-set,
  body.woocommerce-account:not(.logged-in) .woocommerce .u-columns {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }
}

/* Nova tela de login/cadastro */
body.woocommerce-account:not(.logged-in) .woocommerce {
  display: block !important;
}

body.woocommerce-account:not(.logged-in) .auth-page-content {
  max-width: 1120px;
}

body.woocommerce-account:not(.logged-in) .eduativa-auth-shell {
  display: grid;
  grid-template-columns: minmax(280px, .86fr) minmax(0, 1.55fr);
  gap: 0;
  min-height: 560px;
  border: 1px solid var(--border-card);
  border-radius: 22px;
  background: var(--bg-card);
  box-shadow: var(--shadow-md);
  overflow: hidden;
}

.eduativa-auth-aside {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(30px, 4vw, 46px);
  background:
    linear-gradient(rgba(13,34,64,.92), rgba(30,77,140,.9)),
    linear-gradient(135deg, var(--blue-900), var(--blue-700));
  color: var(--white);
}

.eduativa-auth-aside .section-eyebrow {
  color: var(--blue-200);
}

.eduativa-auth-aside h2 {
  max-width: 420px;
  margin: 10px 0 16px;
  color: var(--white);
  font-size: clamp(1.6rem, 2.4vw, 2.48rem);
  line-height: 1.04;
  font-weight: 950;
}

.eduativa-auth-aside h2 span {
  color: var(--accent);
}

.eduativa-auth-aside p {
  max-width: 410px;
  margin: 0 0 24px;
  color: var(--blue-100);
  font-size: 1.05rem;
}

.eduativa-auth-aside ul {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.eduativa-auth-aside li {
  display: flex;
  gap: 10px;
  align-items: center;
  color: var(--blue-100);
  font-weight: 850;
}

.eduativa-auth-aside li::before {
  content: "✓";
  width: 24px;
  height: 24px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  border-radius: 999px;
  background: var(--green);
  color: var(--white);
  font-size: .8rem;
  font-weight: 950;
}

.eduativa-auth-forms {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 34px;
  align-items: start;
  padding: clamp(30px, 4vw, 46px);
}

.eduativa-auth-panel {
  min-width: 0;
}

.eduativa-auth-panel h2 {
  margin: 0 0 22px;
  color: var(--blue-900);
  font-size: clamp(1.75rem, 2.3vw, 2.25rem);
  font-weight: 950;
  line-height: 1.1;
}

body.woocommerce-account:not(.logged-in) .eduativa-auth-panel form.login,
body.woocommerce-account:not(.logged-in) .eduativa-auth-panel form.register {
  display: grid;
  gap: 17px;
}

.eduativa-auth-panel .auth-actions-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
}

.eduativa-auth-panel .woocommerce-form-login__rememberme {
  margin: 0 !important;
}

.eduativa-auth-panel .woocommerce-LostPassword a {
  color: var(--text-secondary) !important;
  font-weight: 700 !important;
}

.eduativa-auth-panel .auth-hint,
.eduativa-auth-panel .woocommerce-privacy-policy-text {
  margin: 0;
  color: var(--text-secondary);
  font-size: .67rem;
  line-height: 1.65;
}

.eduativa-auth-panel .woocommerce-privacy-policy-text a {
  color: var(--blue-700) !important;
  font-weight: 950 !important;
}

.eduativa-auth-panel .woocommerce-privacy-policy-text a:hover {
  color: var(--accent-dark) !important;
}

body.woocommerce-account:not(.logged-in) .eduativa-auth-panel .button {
  justify-self: start;
  min-width: 128px;
}

[data-theme="dark"] .eduativa-auth-shell,
[data-theme="dark"] .eduativa-auth-panel {
  background: var(--bg-card);
}

[data-theme="dark"] .eduativa-auth-panel h2 {
  color: var(--text-primary);
}

@media (max-width: 1040px) {
  body.woocommerce-account:not(.logged-in) .eduativa-auth-shell {
    grid-template-columns: 1fr;
  }

  .eduativa-auth-aside {
    min-height: 300px;
  }
}

@media (max-width: 760px) {
  .eduativa-auth-forms {
    grid-template-columns: 1fr;
  }

  .eduativa-auth-panel-register {
    padding-top: 28px;
    border-top: 1px solid var(--border-card);
  }
}

@media (max-width: 560px) {
  body.woocommerce-account:not(.logged-in) .eduativa-auth-shell {
    border-radius: 18px;
  }

  .eduativa-auth-aside,
  .eduativa-auth-forms {
    padding: 24px;
  }
}

@media (max-width: 560px) {
  body.woocommerce-account:not(.logged-in) .single-card.single-content {
    margin: 34px auto !important;
    padding: 22px !important;
  }

  body.woocommerce-account:not(.logged-in) .woocommerce-form-login__rememberme {
    display: flex !important;
    margin: 10px 0 0;
  }
}

/* Redefinicao de senha */
.eduativa-reset-shell {
  max-width: 760px;
  margin: 0 auto;
}

.eduativa-reset-card {
  position: relative;
  overflow: hidden;
  padding: clamp(28px, 4vw, 42px);
  border: 1px solid var(--border-card);
  border-radius: 22px;
  background: linear-gradient(180deg, var(--white), var(--blue-50));
  box-shadow: var(--shadow-md);
}

.eduativa-reset-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 6px;
  background: linear-gradient(90deg, var(--accent), #ff7a18, var(--blue-500));
}

.reset-icon {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  margin-bottom: 16px;
  border-radius: 18px;
  background: linear-gradient(135deg, var(--blue-700), var(--blue-500));
  color: var(--white);
  font-size: 2rem;
  font-weight: 950;
  box-shadow: 0 14px 28px rgba(30,77,140,.2);
}

.reset-icon-success {
  background: linear-gradient(135deg, var(--green), #059669);
  box-shadow: 0 14px 28px rgba(16,185,129,.2);
}

.eduativa-reset-card h2 {
  margin: 6px 0 10px;
  color: var(--blue-900);
  font-size: clamp(1.85rem, 3vw, 2.55rem);
  line-height: 1.08;
  font-weight: 950;
}

.eduativa-reset-card p {
  max-width: 620px;
  color: var(--text-secondary);
}

.eduativa-reset-card form {
  display: grid;
  gap: 18px;
  margin-top: 22px;
}

.eduativa-reset-card .form-row {
  margin: 0 !important;
  padding: 0 !important;
}

.eduativa-reset-card label {
  display: block;
  margin-bottom: 8px;
  color: var(--blue-900);
  font-weight: 950;
}

.eduativa-reset-card input.input-text {
  width: 100%;
  min-height: 54px;
}

.reset-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 14px;
}

.reset-back-link {
  color: var(--blue-700) !important;
  font-weight: 950 !important;
}

.reset-back-link:hover {
  color: var(--accent-dark) !important;
}

.woocommerce-account:not(.logged-in) .woocommerce-message,
.woocommerce-account:not(.logged-in) .woocommerce-info {
  max-width: 760px;
  margin: 0 auto 18px !important;
  border-radius: 16px;
  border-top-color: var(--green) !important;
  box-shadow: var(--shadow-sm);
}

.eduativa-reset-confirmation .eduativa-reset-card p + p {
  margin-top: 8px;
}

.eduativa-reset-confirmation .reset-actions {
  margin-top: 22px;
}

.reset-login-button {
  min-height: 48px;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  padding: 0 20px !important;
  border-radius: 12px !important;
  background: linear-gradient(135deg, var(--accent), #ff7a18) !important;
  color: var(--white) !important;
  box-shadow: 0 14px 26px rgba(245,158,11,.24);
  font-weight: 950 !important;
}

.reset-login-button:hover {
  background: linear-gradient(135deg, #ffad16, var(--accent-dark)) !important;
  color: var(--white) !important;
}

[data-theme="dark"] .eduativa-reset-card {
  background: var(--bg-card);
}

@media (max-width: 900px) {
  .eduativa-inline-product-box {
    grid-template-columns: 180px minmax(0, 1fr);
  }

  .eduativa-inline-product-action {
    grid-column: 1 / -1;
    justify-content: flex-start;
  }
}

[data-theme="dark"] .eduativa-reset-card h2,
[data-theme="dark"] .eduativa-reset-card label {
  color: var(--text-primary);
}

@media (max-width: 900px) {
  .page-article-layout {
    grid-template-columns: 1fr;
  }

  .page-toc-sidebar {
    position: static;
    order: -1;
  }

  .page-toc-toggle {
    width: 100%;
    min-height: 52px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 0 18px;
    border: 1.5px solid var(--border-card);
    border-radius: 16px;
    background: var(--bg-card);
    color: var(--blue-900);
    font-weight: 950;
    box-shadow: var(--shadow-sm);
  }

  .page-toc-toggle span {
    width: 28px;
    height: 28px;
    display: grid;
    place-items: center;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--accent), #ff7a18);
    color: var(--white);
  }

  .page-toc-toggle[aria-expanded="true"] span {
    transform: rotate(45deg);
  }

  .page-toc {
    display: none;
  }

  .page-toc.is-open {
    display: block;
  }

  .single-content :where(.wp-block-gallery, .gallery) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {
  .single-content {
    padding: 22px;
    margin: 18px;
  }

  .share-box {
    margin-top: 34px;
    padding: 18px 18px 20px;
  }

  .share-title {
    margin-bottom: 12px;
    font-size: .92rem;
  }

  .single-content p {
    font-size: 1rem;
  }

  .single-content h2 {
    font-size: 1.55rem;
  }

  .single-content h3 {
    font-size: 1.22rem;
  }

  .single-content blockquote,
  .single-content .wp-block-quote {
    padding: 22px 18px 22px 54px;
  }

  .single-content blockquote::before,
  .single-content .wp-block-quote::before {
    left: 16px;
    font-size: 2.8rem;
  }

  .single-content :where(.wp-block-gallery, .gallery) {
    grid-template-columns: 1fr;
  }

  .eduativa-inline-product-box {
    grid-template-columns: 1fr;
    gap: 16px;
    padding: 16px;
    border-radius: 18px;
  }

  .eduativa-inline-product-title {
    font-size: 1.28rem;
  }

  .eduativa-inline-product-action,
  .eduativa-inline-product-button {
    width: 100%;
  }
}

@media (max-width: 900px) {
  body.filters-open > .shop-sidebar {
    position: fixed !important;
    inset: 0 auto 0 0 !important;
    width: min(86vw, 360px) !important;
    z-index: 2147483646 !important;
    transform: translateX(0) !important;
    opacity: 1 !important;
    filter: none !important;
    background: var(--bg-card) !important;
    pointer-events: auto !important;
  }

  body.filters-open .topbar,
  body.filters-open .header,
  body.filters-open .cart-float,
  body.filters-open .back-to-top {
    z-index: 1 !important;
    pointer-events: none !important;
  }

  body.filters-open > .mobile-filter-btn {
    display: none !important;
    pointer-events: none !important;
  }

  body.filters-open > .filter-backdrop {
    z-index: 2147483000 !important;
  }
}

@media (max-width: 900px) {
  body.home .topbar,
  body.front-page .topbar,
  body.eduativa-front-page .topbar {
    position: relative;
    z-index: 10040;
  }

  body.home .header,
  body.front-page .header,
  body.eduativa-front-page .header {
    position: sticky;
    top: 0;
    z-index: 10030;
    transform: translateZ(0);
  }

  body.home .mobile-menu-toggle,
  body.front-page .mobile-menu-toggle,
  body.eduativa-front-page .mobile-menu-toggle,
  body.home .header .cart-btn,
  body.front-page .header .cart-btn,
  body.eduativa-front-page .header .cart-btn {
    display: inline-flex !important;
    visibility: visible;
    opacity: 1;
  }

  body.home .cart-float,
  body.front-page .cart-float,
  body.eduativa-front-page .cart-float {
    display: inline-flex !important;
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    z-index: 10050 !important;
  }

  body.home .back-to-top,
  body.front-page .back-to-top,
  body.eduativa-front-page .back-to-top {
    z-index: 10045 !important;
  }
}

@media (max-width: 560px) {
  body.home .cart-float,
  body.front-page .cart-float,
  body.eduativa-front-page .cart-float {
    right: 16px !important;
    bottom: 76px !important;
    z-index: 10120 !important;
  }

  body.home .back-to-top,
  body.front-page .back-to-top,
  body.eduativa-front-page .back-to-top {
    right: 16px !important;
    bottom: 22px !important;
    z-index: 10110 !important;
  }

  body.home .footer,
  body.front-page .footer,
  body.eduativa-front-page .footer {
    position: relative;
    z-index: 10000;
    isolation: isolate;
  }

  body.home .footer .container,
  body.front-page .footer .container,
  body.eduativa-front-page .footer .container,
  body.home .footer-grid,
  body.front-page .footer-grid,
  body.eduativa-front-page .footer-grid,
  body.home .footer-accordion,
  body.front-page .footer-accordion,
  body.eduativa-front-page .footer-accordion,
  body.home .footer-accordion-toggle,
  body.front-page .footer-accordion-toggle,
  body.eduativa-front-page .footer-accordion-toggle,
  body.home .footer-accordion-panel,
  body.front-page .footer-accordion-panel,
  body.eduativa-front-page .footer-accordion-panel {
    position: relative;
    z-index: 4;
    pointer-events: auto;
  }
}

/* ==========================================================
   PromptHub V2 visual system
   Mantem a estrutura funcional do tema e reestiliza a camada visual.
   ========================================================== */
:root {
  --blue-50: #eefbff;
  --blue-100: #c8f5ff;
  --blue-200: #98ecff;
  --blue-300: #00d4ff;
  --blue-500: #0ea5e9;
  --blue-700: #312e81;
  --blue-800: #111827;
  --blue-900: #0f172a;
  --blue-950: #050816;
  --purple-50: #f3efff;
  --purple-100: #ddd6fe;
  --purple-300: #a78bfa;
  --purple-500: #7c3aed;
  --purple-700: #6d28d9;
  --pink-500: #ff3d9a;
  --green-500: #38f8c8;
  --yellow-500: #fbbf24;
  --text-main: #101426;
  --text-muted: #4b587c;
  --text-soft: #8b96b8;
  --border-card: rgba(124, 58, 237, .14);
  --bg-body: #f6f8ff;
  --bg-card: rgba(255,255,255,.9);
  --radius: 14px;
  --radius-lg: 20px;
  --shadow-sm: 0 10px 28px rgba(15,23,42,.07);
  --shadow-md: 0 18px 55px rgba(15,23,42,.10);
  --shadow-lg: 0 24px 70px rgba(15,23,42,.14);
  --shadow-xl: 0 28px 90px rgba(15,23,42,.18);
  --font-heading: 'Poppins', sans-serif;
  --font-body: 'Open Sans', sans-serif;
}

body {
  font-family: var(--font-body);
  color: var(--text-main);
  background:
    radial-gradient(circle at 10% 0%, rgba(0,212,255,.11), transparent 28rem),
    radial-gradient(circle at 92% 12%, rgba(255,61,154,.09), transparent 24rem),
    linear-gradient(180deg, #fbfcff 0%, #f5f7ff 52%, #fff 100%);
}

body::before {
  content: '';
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: .32;
  background-image:
    linear-gradient(rgba(17,24,39,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(17,24,39,.045) 1px, transparent 1px);
  background-size: 44px 44px;
  mask-image: linear-gradient(to bottom, #000, transparent 82%);
}

h1, h2, h3, h4, .logo-text, .nav-list a, .section-title, .hero-title, .product-name, .blog-title {
  font-family: var(--font-heading);
  letter-spacing: 0;
}

.topbar {
  background: linear-gradient(90deg, #050816, #1e1b4b 30%, #0e7490 58%, #831843 82%, #050816);
  color: #e0faff;
  box-shadow: inset 0 -1px 0 rgba(255,255,255,.08);
}

.topbar-social a,
.topbar-auth-btn,
.dark-toggle {
  border-color: rgba(0,212,255,.22);
  background: rgba(255,255,255,.07);
  color: #dff8ff;
}

.header {
  background: rgba(255,255,255,.78) !important;
  color: var(--text-main);
  border-bottom: 1px solid rgba(124,58,237,.14);
  box-shadow: 0 14px 38px rgba(15,23,42,.07);
  backdrop-filter: blur(22px) saturate(1.2);
}

.logo-icon {
  color: #fff;
  background: conic-gradient(from 180deg, var(--blue-300), var(--purple-500), var(--pink-500), var(--blue-300));
  box-shadow: 0 12px 30px rgba(124,58,237,.28), inset 0 0 0 1px rgba(255,255,255,.65);
}

.logo-text { color: var(--text-main); }
.logo-text span,
.hero-title .highlight,
.section-eyebrow,
.eyebrow {
  background: linear-gradient(90deg, var(--blue-300), var(--purple-300), var(--pink-500), var(--green-500));
  background-size: 240% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.header-search,
.mobile-nav-search,
.shop-search,
.newsletter-input-group input,
.newsletter-input-group select,
.woocommerce-ordering select,
.woocommerce input.input-text,
.woocommerce textarea,
.woocommerce select {
  background: rgba(255,255,255,.84) !important;
  border: 1.5px solid rgba(124,58,237,.20) !important;
  color: var(--text-main) !important;
  box-shadow: 0 10px 28px rgba(15,23,42,.06);
}

.header-search input { color: var(--text-main); }
.header-search input::placeholder,
.mobile-nav-search input::placeholder { color: var(--text-soft); }
.header-search:focus-within,
.mobile-nav-search:focus-within,
.shop-search:focus-within,
.newsletter-input-group:focus-within {
  border-color: rgba(0,212,255,.72) !important;
  box-shadow: 0 0 0 4px rgba(0,212,255,.14), 0 16px 34px rgba(15,23,42,.08);
}

.nav-list a,
.mobile-nav-list a { color: var(--text-muted); }
.nav-list a:hover,
.nav-list .current-menu-item > a,
.mobile-nav-list a:hover {
  background: rgba(124,58,237,.10);
  color: var(--purple-700);
}

.btn-store,
.hero-action-card,
.btn-add-cart,
.load-more-btn,
.view-all-btn,
.single-add-cart,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.newsletter-input-group button,
.cart-float,
.mobile-nav-store,
.mobile-filter-btn {
  background: linear-gradient(135deg, var(--blue-300) 0%, var(--purple-500) 48%, var(--pink-500) 100%) !important;
  color: #fff !important;
  border: 0 !important;
  box-shadow: 0 14px 34px rgba(124,58,237,.28), inset 0 0 0 1px rgba(255,255,255,.22);
}

.btn-store:hover,
.hero-action-card:hover,
.btn-add-cart:hover,
.load-more-btn:hover,
.view-all-btn:hover,
.single-add-cart:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.newsletter-input-group button:hover,
.cart-float:hover {
  transform: translateY(-2px);
  box-shadow: 0 20px 44px rgba(124,58,237,.34), 0 0 30px rgba(0,212,255,.18);
}

.hero,
.page-hero,
.blog-hero,
.single-hero {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 22% 20%, rgba(0,212,255,.25), transparent 24rem),
    radial-gradient(circle at 82% 18%, rgba(255,61,154,.22), transparent 24rem),
    radial-gradient(circle at 50% 100%, rgba(124,58,237,.34), transparent 34rem),
    linear-gradient(145deg, #050816 0%, #111827 48%, #1e1b4b 100%) !important;
  color: #fff;
}

.hero::after,
.page-hero::after,
.blog-hero::after,
.single-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .2;
  background-image: linear-gradient(120deg, transparent 0 35%, rgba(255,255,255,.18) 36%, transparent 37% 100%);
  background-size: 140px 140px;
  mix-blend-mode: screen;
}

.hero > *, .page-hero > *, .blog-hero > *, .single-hero > * { position: relative; z-index: 1; }
.hero-grid-bg { opacity: .11; background-size: 42px 42px; }
.hero-sub, .hero-copy, .single-hero .post-meta, .blog-hero p { color: rgba(234,242,255,.76); }
.hero-eyebrow,
.hero-benefits span,
.meta-pill,
.breadcrumb,
.product-tag,
.blog-cat,
.post-cat,
.shop-clear-btn,
.badge-free,
.product-badge {
  background: rgba(0,212,255,.12) !important;
  border: 1px solid rgba(0,212,255,.28) !important;
  color: #bff6ff !important;
  box-shadow: inset 0 0 28px rgba(0,212,255,.10);
}

.hero-sheet,
.hero-side-card,
.hero-metric,
.category-card,
.product-card,
.post-card,
.blog-card,
.sidebar-box,
.single-card,
.shop-sidebar,
.shop-content,
.woocommerce-cart-form,
.cart_totals,
.woocommerce-checkout-review-order,
.woocommerce-MyAccount-content,
.woocommerce-MyAccount-navigation,
.eduativa-auth-panel,
.related-card,
.freebie-card,
.testimonial-card {
  background: rgba(255,255,255,.9) !important;
  border: 1px solid rgba(124,58,237,.14) !important;
  box-shadow: var(--shadow-md);
  backdrop-filter: blur(10px);
}

.category-card::before,
.product-card::before,
.post-card::before,
.blog-card::before,
.sidebar-box::before,
.hero-sheet::before,
.shop-sidebar::before,
.shop-content::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  background: linear-gradient(135deg, rgba(255,255,255,.55), transparent 32%, rgba(0,212,255,.10));
  opacity: .72;
}

.category-card:hover,
.product-card:hover,
.post-card:hover,
.blog-card:hover,
.freebie-card:hover,
.related-card:hover {
  transform: translateY(-6px);
  border-color: rgba(0,212,255,.36) !important;
  box-shadow: 0 24px 70px rgba(15,23,42,.13), 0 0 34px rgba(0,212,255,.11);
}

.product-thumb,
.post-thumb,
.blog-thumb,
.cat-icon,
.featured-image,
.hero-sheet-preview {
  position: relative;
  overflow: hidden;
}

.product-thumb::before,
.post-thumb::before,
.blog-thumb::before,
.cat-icon::before,
.featured-image::before,
.hero-sheet-preview::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  opacity: .48;
  background:
    radial-gradient(circle at 28% 24%, rgba(255,255,255,.46), transparent 23%),
    linear-gradient(135deg, rgba(0,212,255,.24), transparent 45%, rgba(255,61,154,.24));
}

.product-thumb img,
.post-thumb img,
.blog-thumb img,
.featured-image img { filter: saturate(1.12) contrast(1.02); }
.product-info,
.blog-body,
.post-body { position: relative; z-index: 1; }
.product-name a,
.blog-title a,
.post-title a,
.single-content h2,
.single-content h3,
.section-title,
.shop-toolbar h2 { color: var(--text-main); }
.product-subject,
.product-meta,
.blog-excerpt,
.post-excerpt,
.section-desc,
.single-content,
.footer-desc { color: var(--text-muted); }

.shop-page .page-hero { padding: 72px 0 62px; }
.shop-layout { align-items: start; }
.shop-sidebar { border-radius: var(--radius-lg); }
.check {
  border-radius: 999px;
  padding: 8px 10px;
  transition: background .18s ease, color .18s ease;
}
.check:hover { background: rgba(124,58,237,.08); color: var(--purple-700); }
.check input { accent-color: var(--purple-500); }

.single-card { border-radius: var(--radius-lg); overflow: hidden; }
.single-content blockquote {
  background: linear-gradient(135deg, #eefbff, #f5efff);
  border-left-color: var(--blue-300);
  box-shadow: 0 14px 36px rgba(15,23,42,.06);
}

.footer {
  background: linear-gradient(145deg, #050816, #111827 55%, #1e1b4b) !important;
  position: relative;
  overflow: hidden;
}
.footer::before {
  content: '';
  position: absolute;
  inset: 0;
  opacity: .12;
  background-image:
    linear-gradient(rgba(255,255,255,.6) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.6) 1px, transparent 1px);
  background-size: 44px 44px;
}
.footer > .container { position: relative; z-index: 1; }
.footer .logo-text { color: #fff; }
.footer-heading, .footer-links a, .footer-bottom { color: rgba(255,255,255,.78); }
.footer-links a:hover { color: #a7f3ff; }

.reading-progress {
  background: linear-gradient(90deg, var(--blue-300), var(--purple-500), var(--pink-500));
  box-shadow: 0 0 10px rgba(124,58,237,.6);
}

@media (max-width: 900px) {
  .header { background: rgba(255,255,255,.9) !important; }
  .mobile-nav-panel { background: rgba(255,255,255,.96); backdrop-filter: blur(20px); }
}

@media (max-width: 560px) {
  .hero, .page-hero, .blog-hero, .single-hero { padding-left: 0; padding-right: 0; }
  .cart-float { left: 16px; right: 16px; width: auto; justify-content: center; }
}

/* ==========================================================
   PromptHub HTML V2 imported page templates
   CSS extraido das paginas HTML v2 e aplicado aos templates WP.
   ========================================================== */

/* ---- index-v2.html ---- */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --navy:#383b67;
  --navy-d:#23254a;
  --navy-dd:#14152e;
  --purple:#7c3aed;
  --purple-l:#9d62f5;
  --purple-ll:#c4b5fd;
  --purple-xl:#ede9fe;
  --purple-d:#5b21b6;
  --purple-dd:#3b0f9e;
  --cyan:#06b6d4;
  --pink:#ec4899;
  --white:#fff;
  --off:#f8f7ff;
  --text:#1a1a2e;
  --text-m:#4a4a6a;
  --text-l:#9090b0;
  --border:#e4e2f4;
  --fh:'Poppins',sans-serif;
  --fb:'Open Sans',sans-serif;
  --r:14px;
  --r-sm:8px;
  --r-lg:20px;
}
html{scroll-behavior:smooth}
body{font-family:var(--fb);color:var(--text);background:var(--white);line-height:1.6;overflow-x:hidden}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
button{font-family:var(--fb);cursor:pointer;border:none;outline:none}

/* TOPBAR */
.topbar{
  background:linear-gradient(90deg,var(--navy-dd),var(--purple-d),var(--navy-dd));
  background-size:200% 100%;animation:tbslide 6s linear infinite;
  color:#fff;font-size:13px;text-align:center;padding:9px 16px;
  font-family:var(--fh);font-weight:500;
}
@keyframes tbslide{0%{background-position:0%}100%{background-position:200%}}
.topbar a{color:var(--purple-ll);font-weight:700;text-decoration:underline;text-underline-offset:3px}

/* HEADER */
header{
  position:sticky;top:0;z-index:100;
  background:rgba(255,255,255,.92);backdrop-filter:blur(16px);
  border-bottom:1px solid var(--border);
}
.header-inner{
  max-width:1240px;margin:0 auto;padding:0 28px;
  height:70px;display:flex;align-items:center;justify-content:space-between;gap:20px;
}
.logo{font-family:var(--fh);font-size:22px;font-weight:800;color:var(--navy-d);display:flex;align-items:center;gap:10px;flex-shrink:0}
.logo-mark{
  width:38px;height:38px;border-radius:10px;
  background:linear-gradient(135deg,var(--purple),var(--purple-d));
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 14px rgba(124,58,237,.4);
}
.logo-mark svg{width:20px;height:20px;fill:none;stroke:#fff;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.logo em{background:linear-gradient(90deg,var(--purple),var(--cyan));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-style:normal}
nav{display:flex;align-items:center;gap:2px}
nav a{font-family:var(--fh);font-size:14px;font-weight:500;color:var(--text-m);padding:7px 14px;border-radius:var(--r-sm);transition:background .18s,color .18s}
nav a:hover{background:var(--purple-xl);color:var(--purple-d)}
nav a.active{color:var(--purple);font-weight:700}
.h-search{
  flex:1;max-width:300px;display:flex;align-items:center;
  background:var(--off);border:1.5px solid var(--border);border-radius:999px;padding:0 16px;gap:8px;
  transition:border-color .2s,box-shadow .2s;
}
.h-search:focus-within{border-color:var(--purple-l);box-shadow:0 0 0 3px rgba(124,58,237,.12)}
.h-search input{border:none;background:transparent;font-family:var(--fb);font-size:14px;color:var(--text);width:100%;padding:9px 0;outline:none}
.h-search input::placeholder{color:var(--text-l)}
.h-search svg{width:15px;height:15px;flex-shrink:0;stroke:var(--text-l);fill:none;stroke-width:2;stroke-linecap:round}
.btn-hdr{
  background:linear-gradient(135deg,var(--purple),var(--purple-d));color:#fff;
  font-family:var(--fh);font-size:14px;font-weight:700;padding:10px 24px;border-radius:999px;
  box-shadow:0 4px 16px rgba(124,58,237,.35);transition:transform .15s,box-shadow .15s;white-space:nowrap;
}
.btn-hdr:hover{transform:translateY(-2px);box-shadow:0 6px 22px rgba(124,58,237,.45)}

/* HERO */
.hero{position:relative;overflow:hidden;background:var(--navy-dd);padding:100px 28px 120px;text-align:center}
.hero-bg{
  position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(ellipse 80% 60% at 50% -10%,rgba(124,58,237,.65) 0%,transparent 60%),
    radial-gradient(ellipse 50% 40% at 90% 80%,rgba(6,182,212,.28) 0%,transparent 55%),
    radial-gradient(ellipse 40% 35% at 10% 70%,rgba(236,72,153,.2) 0%,transparent 55%);
}
.hero-grid{
  position:absolute;inset:0;pointer-events:none;opacity:.055;
  background-image:linear-gradient(rgba(255,255,255,.8) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.8) 1px,transparent 1px);
  background-size:60px 60px;
}
.hero-inner{max-width:800px;margin:0 auto;position:relative;z-index:1}
.hero-badge{
  display:inline-flex;align-items:center;gap:8px;
  background:rgba(124,58,237,.2);border:1px solid rgba(196,181,253,.35);
  color:var(--purple-ll);font-family:var(--fh);font-size:13px;font-weight:600;
  padding:6px 18px;border-radius:999px;margin-bottom:28px;backdrop-filter:blur(8px);
}
.badge-dot{width:7px;height:7px;border-radius:50%;background:var(--purple-ll);animation:bpulse 2s infinite}
@keyframes bpulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.3)}}
.hero h1{
  font-family:var(--fh);font-size:clamp(36px,5.5vw,64px);font-weight:900;
  color:#fff;line-height:1.08;margin-bottom:24px;letter-spacing:-.02em;
}
.grad-text{
  background:linear-gradient(90deg,var(--purple-ll),var(--cyan),var(--purple-ll));
  background-size:200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;animation:gmove 4s linear infinite;
}
@keyframes gmove{0%{background-position:0%}100%{background-position:200%}}
.hero p{font-size:18px;color:rgba(255,255,255,.62);max-width:580px;margin:0 auto 44px;line-height:1.75}
.hero-search{
  display:flex;align-items:center;
  background:rgba(255,255,255,.08);border:1.5px solid rgba(255,255,255,.15);
  backdrop-filter:blur(12px);border-radius:999px;padding:7px 7px 7px 26px;
  max-width:580px;margin:0 auto 36px;gap:8px;transition:border-color .2s,box-shadow .2s;
}
.hero-search:focus-within{border-color:rgba(196,181,253,.6);box-shadow:0 0 0 4px rgba(124,58,237,.2)}
.hero-search input{flex:1;border:none;background:transparent;font-family:var(--fb);font-size:16px;color:#fff;outline:none}
.hero-search input::placeholder{color:rgba(255,255,255,.35)}
.hero-search button{
  background:linear-gradient(135deg,var(--purple),var(--purple-d));color:#fff;
  font-family:var(--fh);font-size:15px;font-weight:700;padding:13px 30px;border-radius:999px;
  box-shadow:0 4px 18px rgba(124,58,237,.5);transition:transform .15s,box-shadow .15s;white-space:nowrap;
}
.hero-search button:hover{transform:scale(1.03)}
.hero-ctas{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-bottom:56px}
.btn-ghost{
  border:1.5px solid rgba(255,255,255,.25);color:rgba(255,255,255,.85);
  font-family:var(--fh);font-size:14px;font-weight:600;padding:11px 24px;border-radius:999px;
  background:rgba(255,255,255,.05);backdrop-filter:blur(8px);transition:all .18s;
}
.btn-ghost:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.5);color:#fff}
.btn-wa{
  background:linear-gradient(135deg,#25d366,#128c7e);color:#fff;
  font-family:var(--fh);font-size:14px;font-weight:700;padding:11px 22px;border-radius:999px;
  display:flex;align-items:center;gap:7px;
  box-shadow:0 4px 16px rgba(37,211,102,.35);transition:transform .15s,box-shadow .15s;
}
.btn-wa:hover{transform:translateY(-2px);box-shadow:0 6px 22px rgba(37,211,102,.45)}
.hero-stats{
  display:inline-flex;align-items:center;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  backdrop-filter:blur(12px);border-radius:var(--r-lg);padding:20px 36px;gap:0;flex-wrap:wrap;justify-content:center;
}
.h-stat{text-align:center;padding:0 28px}
.h-stat+.h-stat{border-left:1px solid rgba(255,255,255,.1)}
.h-stat strong{display:block;font-family:var(--fh);font-size:28px;font-weight:800;color:#fff;line-height:1}
.h-stat span{font-size:12px;color:rgba(255,255,255,.45);margin-top:4px;display:block}

/* SECTION BASE */
section{padding:72px 28px}
.container{max-width:1240px;margin:0 auto}
.s-head{margin-bottom:40px}
.s-head h2{font-family:var(--fh);font-size:32px;font-weight:800;color:var(--navy-d);margin-bottom:8px;letter-spacing:-.01em}
.s-head p{font-size:16px;color:var(--text-m)}
.s-row{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}
.see-all{
  font-family:var(--fh);font-size:14px;font-weight:700;color:var(--purple);
  display:flex;align-items:center;gap:5px;white-space:nowrap;
  padding:8px 18px;border-radius:999px;background:var(--purple-xl);border:1.5px solid var(--purple-xl);
  transition:all .18s;
}
.see-all:hover{background:var(--purple);color:#fff}

/* CATEGORIAS */
.cats{background:var(--off)}
.c-wrap{position:relative}
.c-outer{overflow:hidden;padding:8px 0 16px}
.c-track{display:flex;gap:18px;transition:transform .45s cubic-bezier(.4,0,.2,1)}
.cat-card{
  flex:0 0 210px;border-radius:var(--r-lg);overflow:hidden;
  border:1.5px solid var(--border);background:var(--white);
  transition:transform .22s,box-shadow .22s;cursor:pointer;
}
.cat-card:hover{transform:translateY(-6px);box-shadow:0 16px 48px rgba(56,59,103,.18)}
.cat-img{height:130px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}
.cat-emoji{font-size:48px;position:relative;z-index:1;filter:drop-shadow(0 4px 8px rgba(0,0,0,.35))}
.cat-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,transparent 30%,rgba(0,0,0,.55))}
.cat-bdg{
  position:absolute;top:10px;right:10px;z-index:2;
  background:linear-gradient(135deg,var(--purple),var(--purple-d));color:#fff;
  font-family:var(--fh);font-size:10px;font-weight:800;padding:3px 10px;border-radius:999px;
  text-transform:uppercase;letter-spacing:.05em;box-shadow:0 2px 8px rgba(124,58,237,.4);
}
.cat-body{padding:14px 16px 16px}
.cat-body h3{font-family:var(--fh);font-size:15px;font-weight:700;color:var(--navy-d);margin-bottom:5px}
.cat-body small{font-size:12px;color:var(--text-l);font-weight:500}
.cat-bar{height:3px;border-radius:2px;background:var(--border);margin-top:10px;overflow:hidden}
.cat-bar-f{height:100%;border-radius:2px;background:linear-gradient(90deg,var(--purple),var(--cyan))}
.c-btn{
  position:absolute;top:50%;transform:translateY(-60%);width:44px;height:44px;border-radius:50%;
  background:var(--white);border:1.5px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 20px rgba(56,59,103,.15);cursor:pointer;z-index:5;transition:all .18s;
}
.c-btn:hover{background:var(--purple);border-color:var(--purple);box-shadow:0 4px 20px rgba(124,58,237,.35)}
.c-btn:hover svg{stroke:#fff}
.c-btn svg{width:20px;height:20px;stroke:var(--navy);fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.c-btn.prev{left:-22px}
.c-btn.next{right:-22px}

/* BLOG */
.blog{background:var(--white)}
.blog-lay{display:grid;grid-template-columns:1fr 340px;gap:44px;align-items:start}
.arts{display:flex;flex-direction:column;gap:22px}
.art{
  display:flex;border-radius:var(--r-lg);overflow:hidden;
  border:1.5px solid var(--border);background:var(--white);
  transition:transform .2s,box-shadow .2s;cursor:pointer;
}
.art:hover{transform:translateY(-3px);box-shadow:0 12px 40px rgba(56,59,103,.13)}
.art-thumb{flex-shrink:0;width:190px;min-height:150px;display:flex;align-items:center;justify-content:center;font-size:44px;position:relative;overflow:hidden}
.art-thumb::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,0,0,.08),rgba(0,0,0,.28))}
.art-body{padding:20px 22px;flex:1;display:flex;flex-direction:column;justify-content:space-between}
.art-cat{display:inline-flex;align-items:center;gap:5px;font-family:var(--fh);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:4px 12px;border-radius:999px;margin-bottom:10px;width:fit-content}
.art-body h3{font-family:var(--fh);font-size:17px;font-weight:700;color:var(--navy-d);margin-bottom:8px;line-height:1.3}
.art-body p{font-size:14px;color:var(--text-m);margin-bottom:14px;line-height:1.6;flex:1}
.art-meta{display:flex;align-items:center;gap:14px;font-size:12px;color:var(--text-l)}

/* SIDEBAR */
.sidebar{display:flex;flex-direction:column;gap:20px}
.sb-box{border-radius:var(--r-lg);overflow:hidden;border:1.5px solid var(--border)}
.sb-hd{padding:14px 20px;background:linear-gradient(135deg,var(--navy-d),var(--navy-dd));font-family:var(--fh);font-size:14px;font-weight:700;color:#fff;display:flex;align-items:center;gap:8px}
.top5{list-style:none;background:var(--white)}
.top5 li{display:flex;align-items:center;gap:14px;padding:13px 18px;border-bottom:1px solid var(--border);transition:background .15s;cursor:pointer}
.top5 li:last-child{border-bottom:none}
.top5 li:hover{background:var(--off)}
.t5n{width:28px;height:28px;border-radius:8px;flex-shrink:0;background:linear-gradient(135deg,var(--purple),var(--purple-d));color:#fff;font-family:var(--fh);font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(124,58,237,.3)}
.top5 li span{font-size:13px;color:var(--text);line-height:1.4;font-weight:500}
.sb-loja{
  border-radius:var(--r-lg);overflow:hidden;
  background:linear-gradient(135deg,var(--navy-d) 0%,var(--purple-dd) 100%);
  padding:26px 22px;text-align:center;position:relative;
}
.sb-loja::before{content:'';position:absolute;top:-40px;right:-40px;width:140px;height:140px;border-radius:50%;background:rgba(124,58,237,.2)}
.sb-loja h3{font-family:var(--fh);font-size:16px;font-weight:800;color:#fff;margin-bottom:8px;position:relative}
.sb-loja p{font-size:13px;color:rgba(255,255,255,.6);margin-bottom:18px;line-height:1.6;position:relative}
.btn-sloja{
  display:block;width:100%;background:linear-gradient(135deg,var(--purple-l),var(--purple));
  color:#fff;font-family:var(--fh);font-size:14px;font-weight:700;padding:12px;border-radius:var(--r-sm);
  text-align:center;box-shadow:0 4px 16px rgba(124,58,237,.4);transition:transform .15s,box-shadow .15s;position:relative;
}
.btn-sloja:hover{transform:translateY(-2px);box-shadow:0 6px 22px rgba(124,58,237,.5)}
.sb-wa{border-radius:var(--r-lg);background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1.5px solid #bbf7d0;padding:22px;text-align:center}
.sb-wa h3{font-family:var(--fh);font-size:15px;font-weight:800;color:#14532d;margin-bottom:6px}
.sb-wa p{font-size:13px;color:#166534;margin-bottom:16px;line-height:1.5}
.btn-swa{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;background:linear-gradient(135deg,#25d366,#128c7e);color:#fff;font-family:var(--fh);font-size:14px;font-weight:700;padding:12px;border-radius:var(--r-sm);box-shadow:0 4px 14px rgba(37,211,102,.3);transition:transform .15s,box-shadow .15s}
.btn-swa:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(37,211,102,.4)}

/* POR QUE */
.porque{background:linear-gradient(160deg,var(--navy-dd) 0%,#1e1040 50%,var(--navy-dd) 100%);position:relative;overflow:hidden}
.porque::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 50% 50%,rgba(124,58,237,.25) 0%,transparent 65%);pointer-events:none}
.porque .s-head h2{color:#fff}
.porque .s-head p{color:rgba(255,255,255,.5)}
.pq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;position:relative;z-index:1}
.pq-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:var(--r-lg);padding:30px 26px;backdrop-filter:blur(8px);transition:transform .2s,background .2s,border-color .2s}
.pq-card:hover{transform:translateY(-5px);background:rgba(255,255,255,.1);border-color:rgba(196,181,253,.3)}
.pq-icon{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,rgba(124,58,237,.4),rgba(91,33,182,.5));border:1px solid rgba(196,181,253,.2);display:flex;align-items:center;justify-content:center;font-size:24px;margin-bottom:18px}
.pq-card h3{font-family:var(--fh);font-size:17px;font-weight:700;color:#fff;margin-bottom:10px}
.pq-card p{font-size:14px;color:rgba(255,255,255,.55);line-height:1.65}

/* PROVA */
.prova{background:var(--off)}
.prova-wrap{background:linear-gradient(135deg,var(--navy-d),var(--purple-dd));border-radius:28px;padding:60px 48px;position:relative;overflow:hidden}
.prova-wrap::before{content:'';position:absolute;top:-80px;right:-80px;width:300px;height:300px;border-radius:50%;background:rgba(124,58,237,.2)}
.prova-wrap::after{content:'';position:absolute;bottom:-60px;left:-60px;width:200px;height:200px;border-radius:50%;background:rgba(6,182,212,.12)}
.prova-nums{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;margin-bottom:52px;position:relative;z-index:1}
.pn{text-align:center}
.pn strong{display:block;font-family:var(--fh);font-size:44px;font-weight:900;background:linear-gradient(135deg,#fff,var(--purple-ll));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;margin-bottom:8px}
.pn span{font-size:14px;color:rgba(255,255,255,.5);font-weight:500}
.prova-div{border:none;border-top:1px solid rgba(255,255,255,.1);margin-bottom:48px;position:relative;z-index:1}
.cta-email{max-width:560px;margin:0 auto;text-align:center;position:relative;z-index:1}
.cta-email h2{font-family:var(--fh);font-size:26px;font-weight:800;color:#fff;margin-bottom:10px;line-height:1.2}
.cta-email p{font-size:15px;color:rgba(255,255,255,.55);margin-bottom:26px;line-height:1.7}
.email-row{display:flex;gap:8px;max-width:440px;margin:0 auto}
.email-row input{flex:1;border:1.5px solid rgba(255,255,255,.2);background:rgba(255,255,255,.08);backdrop-filter:blur(8px);color:#fff;font-family:var(--fb);font-size:15px;padding:13px 20px;border-radius:var(--r-sm);outline:none;transition:border-color .2s}
.email-row input::placeholder{color:rgba(255,255,255,.35)}
.email-row input:focus{border-color:rgba(196,181,253,.5)}
.email-row button{background:linear-gradient(135deg,var(--purple-l),var(--purple));color:#fff;font-family:var(--fh);font-size:14px;font-weight:700;padding:13px 24px;border-radius:var(--r-sm);white-space:nowrap;box-shadow:0 4px 16px rgba(124,58,237,.4);transition:transform .15s}
.email-row button:hover{transform:scale(1.03)}

/* FOOTER */
footer{background:var(--navy-dd);padding:64px 28px 28px}
.foot-grid{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:2.2fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px}
.fb .logo{color:#fff;margin-bottom:14px}
.fb p{font-size:14px;color:rgba(255,255,255,.4);line-height:1.75;margin-bottom:22px;max-width:280px}
.socials{display:flex;gap:10px}
.s-ico{width:38px;height:38px;border-radius:10px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;font-size:17px;transition:all .18s}
.s-ico:hover{background:var(--purple);border-color:var(--purple);transform:translateY(-2px)}
.fc h4{font-family:var(--fh);font-size:13px;font-weight:700;color:rgba(255,255,255,.5);text-transform:uppercase;letter-spacing:.08em;margin-bottom:18px}
.fc ul{list-style:none;display:flex;flex-direction:column;gap:11px}
.fc ul li a{font-size:14px;color:rgba(255,255,255,.45);transition:color .15s;font-weight:500}
.fc ul li a:hover{color:var(--purple-ll)}
.foot-bot{max-width:1240px;margin:0 auto;padding-top:24px;border-top:1px solid rgba(255,255,255,.07);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:13px;color:rgba(255,255,255,.25)}

/* RESPONSIVE */
@media(max-width:1024px){
  .blog-lay{grid-template-columns:1fr}
  .prova-nums{grid-template-columns:repeat(2,1fr)}
  .foot-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  nav,.h-search{display:none}
  .header-inner{padding:0 20px}
  .hero{padding:72px 20px 88px}
  .prova-wrap{padding:40px 24px}
  section{padding:52px 20px}
}
@media(max-width:560px){
  .art{flex-direction:column}
  .art-thumb{width:100%;height:160px}
  .hero-stats{padding:16px 20px}
  .h-stat{padding:0 16px}
  .h-stat strong{font-size:22px}
  .email-row{flex-direction:column}
  .prova-nums{grid-template-columns:repeat(2,1fr)}
  .foot-grid{grid-template-columns:1fr}
  .c-btn.prev{left:0}
  .c-btn.next{right:0}
}

/* =========================
   PromptHub V2 - AI Tech Upgrade
   camada visual adicionada para comparacao
   ========================= */
:root{--navy:#111827;--navy-d:#0f172a;--navy-dd:#050816;--purple:#7c3aed;--purple-l:#a78bfa;--purple-ll:#ddd6fe;--purple-xl:#f3efff;--purple-d:#6d28d9;--cyan:#00d4ff;--pink:#ff3d9a;--mint:#38f8c8;--amber:#fbbf24;--white:#fff;--off:#f6f8ff;--text:#101426;--text-m:#4b587c;--text-l:#8b96b8;--border:#dfe6f7;--shadow-soft:0 18px 55px rgba(15,23,42,.10);--shadow-glow:0 18px 60px rgba(124,58,237,.24)}
body{background:radial-gradient(circle at 10% 0%,rgba(0,212,255,.10),transparent 28rem),radial-gradient(circle at 92% 12%,rgba(255,61,154,.09),transparent 24rem),linear-gradient(180deg,#fbfcff 0%,#f5f7ff 52%,#ffffff 100%);color:var(--text)}
body::before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.34;background-image:linear-gradient(rgba(17,24,39,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(17,24,39,.045) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to bottom,black,transparent 82%)}
.topbar{background:linear-gradient(90deg,#050816,#1e1b4b 30%,#0e7490 58%,#831843 82%,#050816);color:#e0faff;box-shadow:0 1px 0 rgba(255,255,255,.08) inset}.topbar a{color:#a7f3ff;text-decoration-color:rgba(167,243,255,.6)}
header{background:rgba(255,255,255,.78);border-bottom:1px solid rgba(124,58,237,.14);box-shadow:0 14px 38px rgba(15,23,42,.07);backdrop-filter:blur(22px) saturate(1.2)}
.logo-mark{border-radius:12px;background:conic-gradient(from 180deg,var(--cyan),var(--purple),var(--pink),var(--cyan));box-shadow:0 12px 30px rgba(124,58,237,.28),0 0 0 1px rgba(255,255,255,.65) inset}
.logo em,.grad-text,.blog-hero-text h1 em,.art-title em{background:linear-gradient(90deg,#00d4ff,#a78bfa,#ff3d9a,#38f8c8);background-size:240% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
nav a:hover,nav a.active{background:rgba(124,58,237,.10);color:var(--purple-d)}
.h-search,.hero-search,.hero-search-big,.nl-form input{background:rgba(255,255,255,.82);border-color:rgba(124,58,237,.22);box-shadow:0 10px 28px rgba(15,23,42,.06)}
.h-search:focus-within,.hero-search:focus-within,.hero-search-big:focus-within,.nl-form input:focus{border-color:rgba(0,212,255,.72);box-shadow:0 0 0 4px rgba(0,212,255,.14),0 16px 34px rgba(15,23,42,.08)}
.btn-hdr,.btn-wa,.hero-search button,.hero-search-big button,.btn-banner,.nl-form button,.btn-copy,.load-more{background:linear-gradient(135deg,#00d4ff 0%,#7c3aed 48%,#ff3d9a 100%);box-shadow:0 14px 34px rgba(124,58,237,.28),0 0 0 1px rgba(255,255,255,.24) inset}
.btn-hdr:hover,.btn-wa:hover,.hero-search button:hover,.hero-search-big button:hover,.btn-copy:hover,.load-more:hover{transform:translateY(-2px);box-shadow:0 20px 44px rgba(124,58,237,.34),0 0 30px rgba(0,212,255,.18)}
.hero,.blog-hero,.art-hero{background:radial-gradient(circle at 22% 20%,rgba(0,212,255,.25),transparent 24rem),radial-gradient(circle at 82% 18%,rgba(255,61,154,.22),transparent 24rem),radial-gradient(circle at 50% 100%,rgba(124,58,237,.34),transparent 34rem),linear-gradient(145deg,#050816 0%,#111827 48%,#1e1b4b 100%)}
.hero::after,.blog-hero::after,.art-hero::after{content:'';position:absolute;inset:0;pointer-events:none;opacity:.22;background-image:linear-gradient(120deg,transparent 0 35%,rgba(255,255,255,.18) 36%,transparent 37% 100%);background-size:140px 140px;mix-blend-mode:screen}.hero-grid,.blog-hero-grid,.art-hero-grid{opacity:.11;background-size:42px 42px}
.hero-badge,.hero-eyebrow,.bc-cat,.feat-cat{background:rgba(0,212,255,.12);border-color:rgba(0,212,255,.28);color:#bff6ff;box-shadow:0 0 28px rgba(0,212,255,.12) inset}.hero h1,.blog-hero-text h1,.art-title{text-shadow:0 18px 55px rgba(0,0,0,.34);letter-spacing:0}.hero p,.blog-hero-text p{color:rgba(234,242,255,.76)}
.hero-stats,.blog-hero-featured,.sb-box,.art-card,.art-card-big,.art-card-h,.cat-card,.art,.rel-card,.prompt-box,.newsletter-box,.smart-banner{border:1px solid rgba(124,58,237,.14);box-shadow:var(--shadow-soft);position:relative}.hero-stats::before,.blog-hero-featured::before,.art-card::before,.art-card-big::before,.cat-card::before,.art::before,.rel-card::before,.sb-box::before{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.55),transparent 32%,rgba(0,212,255,.10));opacity:.7}.cat-card,.art,.art-card,.art-card-big,.art-card-h,.rel-card,.sb-box{background:rgba(255,255,255,.88);backdrop-filter:blur(10px)}.cat-card:hover,.art:hover,.art-card:hover,.art-card-big:hover,.art-card-h:hover,.rel-card:hover{transform:translateY(-6px);box-shadow:0 24px 70px rgba(15,23,42,.13),0 0 34px rgba(0,212,255,.11)}
.cat-img,.art-thumb,.thumb,.feat-thumb,.rel-thumb,.art-thumb-wrap{position:relative;overflow:hidden;background-blend-mode:screen,normal}.cat-img::before,.art-thumb::before,.thumb::before,.feat-thumb::before,.rel-thumb::before,.art-thumb-wrap::before{content:'';position:absolute;inset:0;opacity:.48;pointer-events:none;background:radial-gradient(circle at 28% 24%,rgba(255,255,255,.46),transparent 23%),linear-gradient(135deg,rgba(0,212,255,.24),transparent 45%,rgba(255,61,154,.24))}.cat-emoji,.art-thumb,.thumb,.feat-thumb,.rel-thumb,.art-thumb-wrap{filter:saturate(1.12)}
.s-head h2,.prose h2,.prose h3,.sb-hd{color:#101426;letter-spacing:0}.see-all,.art-cat,.tag{box-shadow:0 8px 18px rgba(124,58,237,.08)}.filters-bar{background:rgba(255,255,255,.82);backdrop-filter:blur(18px);border-bottom-color:rgba(124,58,237,.13)}.filter-btn,.sort-select{background:rgba(255,255,255,.74);border-color:rgba(124,58,237,.18)}.filter-btn.active{background:linear-gradient(135deg,#00d4ff,#7c3aed 62%,#ff3d9a);box-shadow:0 12px 26px rgba(124,58,237,.25)}
.prose blockquote{background:linear-gradient(135deg,#eefbff,#f5efff);border-left-color:#00d4ff;box-shadow:0 14px 36px rgba(15,23,42,.06)}.prompt-box,.smart-banner{background:radial-gradient(circle at 90% 10%,rgba(0,212,255,.22),transparent 18rem),linear-gradient(135deg,#0f172a,#111827 58%,#312e81);border-color:rgba(0,212,255,.20);box-shadow:0 24px 70px rgba(15,23,42,.20)}.newsletter-box{background:linear-gradient(135deg,#ffffff,#f1f7ff);border-color:rgba(0,212,255,.18)}
footer{background:linear-gradient(145deg,#050816,#111827 55%,#1e1b4b);position:relative;overflow:hidden}footer::before{content:'';position:absolute;inset:0;opacity:.12;background-image:linear-gradient(rgba(255,255,255,.6) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.6) 1px,transparent 1px);background-size:44px 44px}.footer-inner,.footer-bottom{position:relative;z-index:1}
@media (max-width:760px){.hero,.blog-hero{padding-left:20px;padding-right:20px}.btn-hdr{padding:9px 16px}}

/* Home V2: isola o hero do CSS legado do tema antigo.
   A estrutura da front-page segue o index-v2.html; estes seletores garantem
   que .hero-inner nao herde o grid da home antiga. */
.ph-home-v2 .hero{
  position:relative;
  overflow:hidden;
  background:var(--navy-dd);
  padding:100px 28px 120px;
  text-align:center;
  color:var(--white);
}
.ph-home-v2 .hero::before{
  content:'';
  position:absolute;
  inset:-1px;
  pointer-events:none;
  display:block;
  opacity:0;
  background:linear-gradient(90deg,transparent 0%,rgba(0,212,255,.16) 48%,rgba(255,61,154,.12) 52%,transparent 100%);
  transform:translateX(-115%) skewX(-18deg);
  animation:heroScanBeam 7s ease-in-out infinite;
  mix-blend-mode:screen;
}
.ph-home-v2 .hero::after{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  display:block;
  opacity:.13;
  background:repeating-linear-gradient(0deg,rgba(255,255,255,.18) 0 1px,transparent 1px 7px);
  animation:heroScanLines 5s linear infinite;
  mix-blend-mode:overlay;
}
.ph-home-v2 .hero-bg{
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(ellipse 80% 60% at 50% -10%,rgba(124,58,237,.65) 0%,transparent 60%),
    radial-gradient(ellipse 50% 40% at 90% 80%,rgba(6,182,212,.28) 0%,transparent 55%),
    radial-gradient(ellipse 40% 35% at 10% 70%,rgba(236,72,153,.2) 0%,transparent 55%);
  animation:heroAurora 12s ease-in-out infinite alternate;
}
.ph-home-v2 .hero-grid{
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.055;
  background-image:linear-gradient(rgba(255,255,255,.8) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.8) 1px,transparent 1px);
  background-size:60px 60px;
  animation:heroGridDrift 18s linear infinite;
}
.ph-home-v2 .hero-inner{
  display:block;
  max-width:1120px;
  margin:0 auto;
  position:relative;
  z-index:1;
}
.ph-home-v2 .hero-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  background:rgba(124,58,237,.2);
  border:1px solid rgba(196,181,253,.35);
  color:var(--purple-ll);
  font-family:var(--fh);
  font-size:12px;
  font-weight:500;
  padding:6px 16px;
  border-radius:999px;
  margin:0 0 28px;
  backdrop-filter:blur(8px);
  text-transform:none;
  letter-spacing:0;
  animation:heroBadgeFloat 4.6s ease-in-out infinite;
}
.ph-home-v2 .hero h1{
  display:block;
  font-family:var(--fh);
  font-size:clamp(34px,4.55vw,56px);
  font-weight:900;
  color:#fff;
  line-height:1.12;
  margin:0 0 24px;
  letter-spacing:0;
  text-align:center;
  width:100%;
  max-width:1120px;
  margin-left:auto;
  margin-right:auto;
}
.ph-home-v2 .hero-title-top{
  display:inline-block;
  position:relative;
  font-size:clamp(29px,4.1vw,37px);
  font-weight:500;
  white-space:nowrap;
}
.ph-home-v2 .hero-highlight-word{
  position:relative;
  display:inline-block;
  z-index:1;
}
.ph-home-v2 .hero-highlight-word::after{
  content:'';
  position:absolute;
  left:-4%;
  right:-4%;
  bottom:2px;
  height:10px;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,#facc15 14%,#fde047 72%,transparent);
  opacity:.86;
  z-index:-1;
  transform:scaleX(0) rotate(-1.2deg);
  transform-origin:left center;
  animation:heroMarker 3.8s ease-in-out infinite;
}
.ph-home-v2 .grad-text{
  display:block;
  width:fit-content;
  max-width:calc(100vw - 40px);
  margin:0 auto;
  text-align:center;
  position:relative;
  font-size:clamp(56px,6.35vw,78px);
  font-weight:900;
  background:linear-gradient(90deg,var(--purple-ll),var(--cyan),var(--purple-ll));
  background-size:200%;
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  animation:gmove 4s linear infinite;
  text-transform:uppercase;
  white-space:nowrap;
}
.ph-home-v2 .grad-text::before,
.ph-home-v2 .grad-text::after{
  content:attr(data-glitch);
  position:absolute;
  inset:0;
  width:100%;
  overflow:visible;
  text-align:center;
  pointer-events:none;
  opacity:0;
  mix-blend-mode:screen;
  background:none;
  -webkit-background-clip:initial;
  background-clip:initial;
  -webkit-text-fill-color:currentColor;
  z-index:2;
}
@media(max-width:1180px){
  .ph-home-v2 .grad-text{font-size:clamp(46px,5vw,64px)}
}
@media(max-width:760px){
  .ph-home-v2 .grad-text{
    white-space:normal;
    line-height:1.05;
  }
}
.ph-home-v2 .grad-text::before{
  color:#00d4ff;
  text-shadow:2px 0 #00d4ff;
  transform:translate(0,0);
  clip-path:inset(0 0 58% 0);
  animation:heroGlitchA 1.55s steps(2,end) infinite;
}
.ph-home-v2 .grad-text::after{
  color:#ff3d9a;
  text-shadow:-2px 0 #ff3d9a;
  transform:translate(0,0);
  clip-path:inset(54% 0 0 0);
  animation:heroGlitchB 1.85s steps(2,end) infinite;
}
@keyframes heroMarker{
  0%,18%{transform:scaleX(0) rotate(-1.2deg);opacity:0}
  32%,72%{transform:scaleX(1) rotate(-1.2deg);opacity:.86}
  88%,100%{transform:scaleX(1) rotate(-1.2deg);opacity:0}
}
@keyframes heroGlitchA{
  0%,72%,100%{transform:translate(0,0);opacity:0}
  74%{transform:translate(5px,-3px);opacity:.72}
  76%{transform:translate(-4px,2px);opacity:.32}
  78%{transform:translate(3px,0);opacity:.58}
}
@keyframes heroGlitchB{
  0%,58%,100%{transform:translate(0,0);opacity:0}
  60%{transform:translate(-6px,3px);opacity:.62}
  62%{transform:translate(4px,-2px);opacity:.28}
  64%{transform:translate(-3px,0);opacity:.54}
}
@keyframes heroAurora{
  0%{transform:scale(1);filter:hue-rotate(0deg)}
  50%{transform:scale(1.04);filter:hue-rotate(14deg)}
  100%{transform:scale(1.02);filter:hue-rotate(-10deg)}
}
@keyframes heroGridDrift{
  0%{background-position:0 0,0 0}
  100%{background-position:60px 60px,60px 60px}
}
@keyframes heroScanBeam{
  0%,52%{transform:translateX(-115%) skewX(-18deg);opacity:0}
  62%{opacity:.30}
  78%{transform:translateX(115%) skewX(-18deg);opacity:.18}
  100%{transform:translateX(115%) skewX(-18deg);opacity:0}
}
@keyframes heroScanLines{
  0%{background-position:0 0}
  100%{background-position:0 28px}
}
@keyframes heroBadgeFloat{
  0%,100%{transform:translateY(0);box-shadow:0 0 28px rgba(0,212,255,.12) inset}
  50%{transform:translateY(-4px);box-shadow:0 0 34px rgba(0,212,255,.22) inset,0 12px 28px rgba(0,0,0,.12)}
}
@keyframes heroSearchGlow{
  0%,100%{box-shadow:0 24px 70px rgba(0,0,0,.20),0 0 0 1px rgba(255,255,255,.06) inset}
  50%{box-shadow:0 24px 70px rgba(0,0,0,.20),0 0 0 1px rgba(0,212,255,.18) inset,0 0 38px rgba(124,58,237,.18)}
}
@keyframes heroStatsFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-5px)}
}
@keyframes heroButtonSweep{
  0%,48%{transform:translateX(-120%)}
  66%{transform:translateX(120%)}
  100%{transform:translateX(120%)}
}
@keyframes heroMetricPulse{
  0%,100%{text-shadow:none;transform:translateY(0)}
  50%{text-shadow:0 0 18px rgba(0,212,255,.32);transform:translateY(-1px)}
}
.ph-home-v2 .hero p{
  display:block;
  font-size:18px;
  color:rgba(255,255,255,.62);
  max-width:660px;
  margin:0 auto 40px;
  line-height:1.75;
  text-align:center;
}
.ph-home-v2 .hero-search{
  display:flex;
  flex-direction:row;
  align-items:center;
  background:rgba(255,255,255,.08);
  border:1.5px solid rgba(255,255,255,.15);
  backdrop-filter:blur(12px);
  border-radius:999px;
  padding:9px 9px 9px 30px;
  max-width:680px;
  min-height:68px;
  margin:0 auto 34px;
  gap:8px;
  box-shadow:0 24px 70px rgba(0,0,0,.20),0 0 0 1px rgba(255,255,255,.06) inset;
  animation:heroSearchGlow 5.4s ease-in-out infinite;
}
.ph-home-v2 .hero-search input{
  flex:1;
  min-width:0;
  border:none;
  background:transparent;
  font-family:var(--fb);
  font-size:15px;
  color:#fff;
  outline:none;
  padding:0;
}
.ph-home-v2 .hero-search input::placeholder{color:rgba(255,255,255,.35)}
.ph-home-v2 .hero-search button{
  background:linear-gradient(135deg,var(--purple),var(--purple-d));
  color:#fff;
  font-family:var(--fh);
  font-size:15px;
  font-weight:700;
  padding:16px 34px;
  border-radius:999px;
  box-shadow:0 14px 34px rgba(124,58,237,.42);
  white-space:nowrap;
  position:relative;
  overflow:hidden;
}
.ph-home-v2 .hero-search button::before{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.38),transparent);
  transform:translateX(-120%);
  animation:heroButtonSweep 3.8s ease-in-out infinite;
}
.ph-home-v2 .hero-ctas{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  flex-wrap:wrap;
  margin:0 0 56px;
}
.ph-home-v2 .btn-ghost,
.ph-home-v2 .btn-wa{
  min-height:48px;
  padding:13px 26px;
  font-size:14px;
}
.ph-home-v2 .hero-stats{
  display:inline-flex;
  align-items:center;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.1);
  backdrop-filter:blur(12px);
  border-radius:var(--r-lg);
  padding:20px 36px;
  gap:0;
  flex-wrap:wrap;
  justify-content:center;
  box-shadow:none;
  animation:heroStatsFloat 6s ease-in-out infinite;
}
.ph-home-v2 .hero-stats::before{display:none}
.ph-home-v2 .h-stat{text-align:center;padding:0 28px}
.ph-home-v2 .h-stat+.h-stat{border-left:1px solid rgba(255,255,255,.1)}
.ph-home-v2 .h-stat strong{display:block;font-family:var(--fh);font-size:28px;font-weight:800;color:#fff;line-height:1}
.ph-home-v2 .h-stat span{font-size:12px;color:rgba(255,255,255,.45);margin-top:4px;display:block}
.ph-home-v2 .h-stat strong{animation:heroMetricPulse 4.8s ease-in-out infinite}
.ph-home-v2 .h-stat:nth-child(2) strong{animation-delay:.35s}
.ph-home-v2 .h-stat:nth-child(3) strong{animation-delay:.7s}
.ph-home-v2 .h-stat:nth-child(4) strong{animation-delay:1.05s}
@media(max-width:768px){
  .ph-home-v2 .hero{padding:72px 20px 88px}
}
@media(max-width:560px){
  .ph-home-v2 .hero-search{flex-direction:column;padding:14px;border-radius:22px}
  .ph-home-v2 .hero-search input{width:100%;text-align:center;padding:7px 0}
  .ph-home-v2 .hero-search button{width:100%}
  .ph-home-v2 .hero-stats{padding:16px 20px}
  .ph-home-v2 .h-stat{padding:0 16px}
  .ph-home-v2 .h-stat strong{font-size:22px}
}

/* Footer premium com foco em comunidade */
.footer{
  background:
    radial-gradient(circle at 12% 18%,rgba(0,212,255,.16),transparent 22rem),
    radial-gradient(circle at 86% 12%,rgba(255,61,154,.14),transparent 24rem),
    radial-gradient(circle at 50% 100%,rgba(124,58,237,.22),transparent 34rem),
    linear-gradient(145deg,#050816,#0f172a 54%,#1e1b4b);
  color:rgba(255,255,255,.72);
  padding:76px 0 30px;
  position:relative;
  overflow:hidden;
}
.footer::before{
  content:'';
  position:absolute;
  inset:0;
  opacity:.12;
  pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.7) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.7) 1px,transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(to bottom,black,transparent 88%);
}
.footer::after{
  content:'';
  position:absolute;
  left:8%;
  right:8%;
  top:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(0,212,255,.55),rgba(255,61,154,.38),transparent);
}
.footer > .container{position:relative;z-index:1}
.footer-grid{
  display:grid;
  grid-template-columns:minmax(260px,1.35fr) minmax(170px,.72fr) minmax(170px,.72fr) minmax(280px,1fr);
  gap:28px;
  padding-bottom:38px;
  border-bottom:1px solid rgba(255,255,255,.10);
}
.footer-brand,
.footer-accordion{
  min-width:0;
}
.footer-brand{
  padding:28px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:24px;
  background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.03));
  box-shadow:0 24px 70px rgba(0,0,0,.16);
}
.footer .logo{margin-bottom:16px}
.footer .logo-icon{
  background:conic-gradient(from 180deg,var(--cyan),var(--purple),var(--pink),var(--cyan));
  box-shadow:0 14px 34px rgba(124,58,237,.28),0 0 0 1px rgba(255,255,255,.35) inset;
}
.footer .logo-text{color:#fff!important}
.footer-desc{
  max-width:360px;
  color:rgba(234,242,255,.68);
  font-size:14px;
  line-height:1.75;
  margin:0 0 22px;
}
.footer-social{display:flex;gap:10px}
.footer-social a{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  color:#fff;
  transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.footer-social a:hover{
  transform:translateY(-3px);
  background:linear-gradient(135deg,rgba(0,212,255,.22),rgba(124,58,237,.28));
  border-color:rgba(0,212,255,.38);
  box-shadow:0 16px 34px rgba(0,212,255,.12);
}
.footer-heading{
  color:#fff;
  font-family:var(--fh);
  font-size:14px;
  font-weight:900;
  letter-spacing:.02em;
  margin:0 0 18px;
}
.footer-links{display:grid;gap:10px;list-style:none;margin:0;padding:0}
.footer-links a{
  display:inline-flex;
  width:fit-content;
  color:rgba(234,242,255,.62);
  font-size:14px;
  transition:color .16s ease,transform .16s ease;
}
.footer-links a:hover{
  color:#a7f3ff;
  transform:translateX(3px);
}
.footer-whatsapp-card{
  position:relative;
  overflow:hidden;
  padding:22px;
  border-radius:22px;
  background:
    radial-gradient(circle at 92% 8%,rgba(56,248,200,.24),transparent 8rem),
    linear-gradient(135deg,rgba(18,140,126,.22),rgba(37,211,102,.13) 52%,rgba(124,58,237,.18));
  border:1px solid rgba(74,222,128,.24);
  box-shadow:0 24px 60px rgba(0,0,0,.18);
}
.footer-whatsapp-icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:14px;
  margin-bottom:14px;
  background:linear-gradient(135deg,#25d366,#128c7e);
  color:#fff;
  font-family:var(--fh);
  font-weight:900;
  box-shadow:0 14px 28px rgba(37,211,102,.25);
}
.footer-whatsapp-content strong{
  display:block;
  color:#fff;
  font-family:var(--fh);
  font-size:18px;
  line-height:1.25;
  margin-bottom:8px;
}
.footer-whatsapp-content p{
  color:rgba(240,253,244,.74);
  font-size:13px;
  line-height:1.65;
  margin:0 0 18px;
}
.footer-whatsapp-button{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:44px;
  border-radius:999px;
  background:linear-gradient(135deg,#25d366,#16a34a);
  color:#fff;
  font-family:var(--fh);
  font-size:14px;
  font-weight:800;
  box-shadow:0 14px 30px rgba(37,211,102,.22);
  transition:transform .16s ease,box-shadow .16s ease;
}
.footer-whatsapp-button:hover{
  transform:translateY(-2px);
  box-shadow:0 18px 38px rgba(37,211,102,.32);
}
.footer-trust-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
}
.footer-trust-row span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  color:rgba(255,255,255,.64);
  font-size:11px;
  font-weight:800;
}
.footer-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding-top:24px;
  color:rgba(255,255,255,.44);
  font-size:13px;
}
.footer-bottom-links{
  display:flex;
  flex-wrap:wrap;
  gap:16px;
  list-style:none;
  margin:0;
  padding:0;
}
.footer-bottom-links a{color:rgba(255,255,255,.50)}
.footer-bottom-links a:hover{color:#a7f3ff}
@media(max-width:980px){
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .footer{padding:56px 0 26px}
  .footer-grid{grid-template-columns:1fr;gap:0}
  .footer-brand{margin-bottom:16px}
  .footer-accordion{border-bottom:1px solid rgba(255,255,255,.10);padding:16px 0}
  .footer-accordion-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;background:transparent;border:0;color:#fff}
  .footer-accordion-toggle span{display:block}
  .footer-accordion-panel{display:none;padding-top:12px}
  .footer-accordion.is-open .footer-accordion-panel{display:block}
  .footer-bottom{align-items:flex-start;flex-direction:column}
}

/* Refinamento do rodape: marca leve e barra final organizada */
.footer-grid{
  align-items:start;
}
.footer-brand{
  min-height:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.footer-brand .logo{
  width:fit-content;
  padding:10px 12px 10px 0;
}
.footer-desc{
  max-width:330px;
  margin-bottom:24px;
  color:rgba(234,242,255,.66);
}
.footer-social a{
  width:40px;
  height:40px;
  border-radius:12px;
  background:linear-gradient(135deg,rgba(255,255,255,.10),rgba(255,255,255,.04));
}
.footer-accordion{
  padding-top:8px;
}
.footer-heading{
  margin-bottom:22px;
}
.footer-links{
  gap:7px;
}
.footer-links a{
  line-height:1.25;
  margin:0;
}
.footer-bottom{
  margin-top:28px;
  padding:18px 22px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:18px;
  background:rgba(255,255,255,.045);
  backdrop-filter:blur(12px);
  color:rgba(255,255,255,.54);
}
.footer-bottom-main{
  display:none;
}
.footer-bottom-inline{
  display:block;
  margin-top:22px;
  padding:0;
  width:auto;
  max-width:340px;
  font-size:12px;
  border:0;
  border-radius:0;
  background:transparent;
  backdrop-filter:none;
}
.footer-bottom-inline > span{
  display:block;
  color:rgba(255,255,255,.48);
  line-height:1.6;
  white-space:normal;
  margin-bottom:22px;
}
.footer-bottom-inline .footer-bottom-links{
  display:flex;
  align-items:center;
  justify-content:flex-start!important;
  flex-wrap:wrap;
  gap:8px;
  margin-top:0;
  padding-top:0;
  clear:both;
}
.footer-bottom-inline .footer-bottom-links a{
  float:none;
  min-height:26px;
  padding:0 10px;
  margin:0;
  font-size:12px;
  white-space:nowrap;
}
.footer-bottom > span{
  flex:1;
  min-width:260px;
}
.footer-bottom-links,
.footer-bottom .footer-bottom-links{
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:flex-end;
  gap:18px;
  flex-wrap:wrap;
  margin:0;
}
.footer-bottom-links a{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 12px;
  border-radius:999px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  color:rgba(255,255,255,.62);
}
.footer-bottom-links a:hover{
  background:rgba(0,212,255,.10);
  border-color:rgba(0,212,255,.22);
}
@media(max-width:980px){
  .footer-bottom:not(.footer-bottom-inline){
    align-items:flex-start;
    flex-direction:column;
  }
  .footer-bottom-links,
  .footer-bottom .footer-bottom-links{
    justify-content:flex-start;
  }
}
@media(max-width:720px){
  .footer-bottom-inline{
    width:100%;
    flex-wrap:wrap;
  }
}

.footer .footer-bottom-inline .footer-copyright-text{
  display:block;
  margin:0 0 24px!important;
}
.footer .footer-bottom-inline .footer-bottom-links{
  display:flex!important;
  justify-content:flex-start!important;
  gap:10px!important;
  margin:0!important;
  padding:0!important;
}

/* Categorias da home em formato de painel neural, substitui o carrossel comum */
.ph-home-v2 .cats{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 18% 12%,rgba(0,212,255,.14),transparent 22rem),
    radial-gradient(circle at 78% 20%,rgba(255,61,154,.12),transparent 24rem),
    linear-gradient(180deg,#f6f8ff 0%,#eef3ff 100%);
}
.ph-home-v2 .cats::before{
  content:'';
  position:absolute;
  inset:0;
  opacity:.28;
  pointer-events:none;
  background-image:linear-gradient(rgba(17,24,39,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(17,24,39,.07) 1px,transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(to bottom,transparent,black 18%,black 82%,transparent);
}
.ph-home-v2 .cats .container{
  position:relative;
  z-index:1;
}
.ph-home-v2 .cats .s-head{
  margin-bottom:0;
}
.ph-home-v2 .cats .s-row{
  align-items:center;
  padding:26px 30px 22px;
  border:1px solid rgba(124,58,237,.14);
  border-bottom:0;
  border-radius:28px 28px 0 0;
  background:
    radial-gradient(circle at 92% 0%,rgba(124,58,237,.16),transparent 18rem),
    linear-gradient(135deg,rgba(255,255,255,.9),rgba(255,255,255,.58));
  backdrop-filter:blur(18px);
}
.ph-home-v2 .cats .s-head h2{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:6px;
}
.ph-home-v2 .cats .s-head h2::before{
  content:'';
  width:14px;
  height:14px;
  border-radius:5px;
  background:conic-gradient(from 180deg,var(--cyan),var(--purple),var(--pink),var(--cyan));
  box-shadow:0 0 22px rgba(0,212,255,.55);
}
.ph-home-v2 .cats .s-head p{
  color:#58658d;
}
.ph-home-v2 .cats .see-all{
  background:#0f172a;
  color:#fff;
  border-color:rgba(0,212,255,.28);
  box-shadow:0 16px 34px rgba(15,23,42,.16),0 0 0 1px rgba(255,255,255,.1) inset;
}
.ph-home-v2 .c-wrap{
  position:relative;
  margin-top:0;
  padding:28px;
  border:1px solid rgba(124,58,237,.14);
  border-top-color:rgba(124,58,237,.08);
  border-radius:0 0 28px 28px;
  background:
    radial-gradient(circle at 10% 0%,rgba(0,212,255,.16),transparent 20rem),
    radial-gradient(circle at 88% 18%,rgba(124,58,237,.18),transparent 24rem),
    linear-gradient(145deg,#050816,#111827 58%,#1e1b4b);
  box-shadow:0 28px 80px rgba(15,23,42,.16);
}
.ph-home-v2 .c-wrap::before{
  content:'';
  position:absolute;
  inset:0;
  opacity:.16;
  pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.65) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.65) 1px,transparent 1px);
  background-size:38px 38px;
  border-radius:inherit;
}
.ph-home-v2 .c-wrap::after{
  content:'IA / PACK MAP';
  position:absolute;
  right:28px;
  top:20px;
  color:rgba(167,243,255,.46);
  font-family:var(--fh);
  font-size:11px;
  font-weight:900;
  letter-spacing:.16em;
}
.ph-home-v2 .c-btn{
  display:none;
}
.ph-home-v2 .c-outer{
  overflow:visible;
  padding:24px 0 0;
}
.ph-home-v2 .c-track{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:16px;
  transform:none!important;
  transition:none;
}
.ph-home-v2 .cat-card{
  position:relative;
  isolation:isolate;
  flex:auto;
  min-height:246px;
  display:flex;
  flex-direction:column;
  border-radius:22px;
  overflow:hidden;
  background:linear-gradient(180deg,rgba(16,24,48,.95),rgba(14,16,34,.98));
  border:0;
  padding:4px;
  box-shadow:0 18px 48px rgba(0,0,0,.22);
  transform:none;
}
.ph-home-v2 .cat-card::before{
  content:'';
  position:absolute;
  inset:-60%;
  z-index:-1;
  opacity:.95;
  background:conic-gradient(from 0deg,var(--cyan),var(--purple),var(--pink),var(--cyan));
  animation:phCatBorderSpin 4.5s linear infinite;
}
.ph-home-v2 .cat-card::after{
  content:'';
  position:absolute;
  left:18px;
  right:18px;
  top:18px;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(0,212,255,.7),transparent);
}
.ph-home-v2 .cat-card:hover{
  transform:translateY(-8px);
  box-shadow:0 28px 70px rgba(0,0,0,.30),0 0 38px rgba(0,212,255,.14);
}
@keyframes phCatBorderSpin{
  to{transform:rotate(1turn)}
}
.ph-blog-v2 .blog-hero-featured{
  position:relative;
  isolation:isolate;
  border:0!important;
  padding:4px;
  overflow:hidden;
  background:linear-gradient(180deg,rgba(16,24,48,.95),rgba(14,16,34,.98))!important;
}
.ph-blog-v2 .blog-hero-featured::after{
  content:''!important;
  position:absolute!important;
  inset:-60%!important;
  z-index:-1!important;
  pointer-events:none!important;
  opacity:.95!important;
  background:conic-gradient(from 0deg,var(--cyan),var(--purple),var(--pink),var(--cyan))!important;
  animation:phCatBorderSpin 4.5s linear infinite!important;
}
.ph-blog-v2 .blog-hero-featured > *{
  position:relative;
  z-index:1;
}
.ph-blog-v2 .blog-hero-featured .feat-thumb{
  border-radius:18px 18px 0 0;
}
.ph-blog-v2 .blog-hero-featured .feat-body{
  border-radius:0 0 18px 18px;
  background:linear-gradient(180deg,rgba(67,48,128,.94),rgba(36,48,91,.96));
}
.ph-home-v2 .cat-card > *{
  position:relative;
  z-index:1;
}
.ph-home-v2 .cat-img{
  height:210px;
  background-size:cover!important;
  background-position:center!important;
  border-radius:18px 18px 0 0;
}
.ph-home-v2 .cat-body{
  border-radius:0 0 18px 18px;
  background:linear-gradient(180deg,rgba(16,24,48,.95),rgba(14,16,34,.98));
}
.ph-home-v2 .cat-img::after{
  content:'';
  position:absolute;
  inset:auto 16px 12px;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--cyan),var(--purple),var(--pink));
  box-shadow:0 0 18px rgba(0,212,255,.35);
}
.ph-home-v2 .cat-emoji{
  font-size:42px;
  filter:drop-shadow(0 8px 20px rgba(0,0,0,.32));
}
.ph-home-v2 .cat-card.has-cat-image .cat-emoji{
  display:none!important;
}
.ph-home-v2 .cat-overlay{
  background:linear-gradient(to bottom,rgba(5,8,22,.10),rgba(5,8,22,.64));
}
.ph-home-v2 .cat-bdg{
  background:linear-gradient(135deg,var(--cyan),var(--purple));
  box-shadow:0 8px 24px rgba(0,212,255,.26);
}
.ph-home-v2 .cat-body{
  position:relative;
  flex:1;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:16px 16px 18px;
  background:rgba(5,8,22,.64);
  backdrop-filter:blur(12px);
}
.ph-home-v2 .cat-body h3{
  color:#fff;
  font-size:15px;
  line-height:1.25;
  margin-bottom:7px;
}
.ph-home-v2 .cat-body small{
  color:rgba(234,242,255,.62);
}
.ph-home-v2 .cat-bar{
  height:4px;
  background:rgba(255,255,255,.12);
}
.ph-home-v2 .cat-bar-f{
  background:linear-gradient(90deg,var(--cyan),var(--purple),var(--pink));
}
@media(max-width:1120px){
  .ph-home-v2 .c-track{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .ph-home-v2 .cats .s-row{padding:22px;border-radius:22px 22px 0 0}
  .ph-home-v2 .c-wrap{padding:20px;border-radius:0 0 22px 22px}
  .ph-home-v2 .c-track{grid-template-columns:1fr}
  .ph-home-v2 .cat-card{min-height:220px}
}


/* ---- blog-v2.html ---- */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --navy:#383b67;--navy-d:#23254a;--navy-dd:#14152e;
  --purple:#7c3aed;--purple-l:#9d62f5;--purple-ll:#c4b5fd;
  --purple-xl:#ede9fe;--purple-d:#5b21b6;--purple-dd:#3b0f9e;
  --cyan:#06b6d4;--white:#fff;--off:#f8f7ff;
  --text:#1a1a2e;--text-m:#4a4a6a;--text-l:#9090b0;--border:#e4e2f4;
  --fh:'Poppins',sans-serif;--fb:'Open Sans',sans-serif;
  --r:14px;--r-sm:8px;--r-lg:20px;
}
html{scroll-behavior:smooth}
body{font-family:var(--fb);color:var(--text);background:var(--white);line-height:1.6;overflow-x:hidden}
a{text-decoration:none;color:inherit}
button{font-family:var(--fb);cursor:pointer;border:none;outline:none}

/* TOPBAR */
.topbar{background:linear-gradient(90deg,var(--navy-dd),var(--purple-d),var(--navy-dd));background-size:200%;animation:tbslide 6s linear infinite;color:#fff;font-size:13px;text-align:center;padding:9px 16px;font-family:var(--fh);font-weight:500}
@keyframes tbslide{0%{background-position:0%}100%{background-position:200%}}
.topbar a{color:var(--purple-ll);font-weight:700;text-decoration:underline;text-underline-offset:3px}

/* HEADER */
header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.92);backdrop-filter:blur(16px);border-bottom:1px solid var(--border)}
.header-inner{max-width:1240px;margin:0 auto;padding:0 28px;height:70px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.logo{font-family:var(--fh);font-size:22px;font-weight:800;color:var(--navy-d);display:flex;align-items:center;gap:10px;flex-shrink:0}
.logo-mark{width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,var(--purple),var(--purple-d));display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(124,58,237,.4)}
.logo-mark svg{width:20px;height:20px;fill:none;stroke:#fff;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.logo em{background:linear-gradient(90deg,var(--purple),var(--cyan));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-style:normal}
nav{display:flex;align-items:center;gap:2px}
nav a{font-family:var(--fh);font-size:14px;font-weight:500;color:var(--text-m);padding:7px 14px;border-radius:var(--r-sm);transition:background .18s,color .18s}
nav a:hover{background:var(--purple-xl);color:var(--purple-d)}
nav a.active{color:var(--purple);font-weight:700}
.h-search{flex:1;max-width:300px;display:flex;align-items:center;background:var(--off);border:1.5px solid var(--border);border-radius:999px;padding:0 16px;gap:8px;transition:border-color .2s,box-shadow .2s}
.h-search:focus-within{border-color:var(--purple-l);box-shadow:0 0 0 3px rgba(124,58,237,.12)}
.h-search input{border:none;background:transparent;font-family:var(--fb);font-size:14px;color:var(--text);width:100%;padding:9px 0;outline:none}
.h-search input::placeholder{color:var(--text-l)}
.h-search svg{width:15px;height:15px;flex-shrink:0;stroke:var(--text-l);fill:none;stroke-width:2;stroke-linecap:round}
.btn-hdr{background:linear-gradient(135deg,var(--purple),var(--purple-d));color:#fff;font-family:var(--fh);font-size:14px;font-weight:700;padding:10px 24px;border-radius:999px;box-shadow:0 4px 16px rgba(124,58,237,.35);transition:transform .15s,box-shadow .15s;white-space:nowrap}
.btn-hdr:hover{transform:translateY(-2px);box-shadow:0 6px 22px rgba(124,58,237,.45)}

/* HERO BLOG */
.blog-hero{
  background:linear-gradient(160deg,var(--navy-dd) 0%,var(--navy-d) 55%,#1e1040 100%);
  padding:64px 28px 72px;position:relative;overflow:hidden;
}
.blog-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 65% 70% at 60% 50%,rgba(124,58,237,.35) 0%,transparent 65%);pointer-events:none}
.blog-hero-grid{position:absolute;inset:0;pointer-events:none;opacity:.04;background-image:linear-gradient(rgba(255,255,255,.8) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.8) 1px,transparent 1px);background-size:60px 60px}
.blog-hero-inner{max-width:1240px;margin:0 auto;position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}

.blog-hero-text{}
.hero-eyebrow{display:inline-flex;align-items:center;gap:8px;background:rgba(124,58,237,.2);border:1px solid rgba(196,181,253,.3);color:var(--purple-ll);font-family:var(--fh);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:5px 16px;border-radius:999px;margin-bottom:22px}
.blog-hero-text h1{font-family:var(--fh);font-size:clamp(28px,3.5vw,46px);font-weight:900;color:#fff;line-height:1.1;margin-bottom:16px;letter-spacing:-.02em}
.blog-hero-text h1 em{background:linear-gradient(90deg,var(--purple-ll),var(--cyan));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-style:normal}
.blog-hero-text p{font-size:16px;color:rgba(255,255,255,.55);line-height:1.75;margin-bottom:28px;max-width:460px}

.hero-search-big{
  display:flex;align-items:center;
  background:rgba(255,255,255,.08);border:1.5px solid rgba(255,255,255,.15);
  backdrop-filter:blur(12px);border-radius:999px;padding:7px 7px 7px 22px;
  gap:8px;max-width:460px;transition:border-color .2s,box-shadow .2s;
}
.hero-search-big:focus-within{border-color:rgba(196,181,253,.5);box-shadow:0 0 0 4px rgba(124,58,237,.18)}
.hero-search-big input{flex:1;border:none;background:transparent;font-family:var(--fb);font-size:15px;color:#fff;outline:none}
.hero-search-big input::placeholder{color:rgba(255,255,255,.35)}
.hero-search-big button{background:linear-gradient(135deg,var(--purple),var(--purple-d));color:#fff;font-family:var(--fh);font-size:14px;font-weight:700;padding:11px 24px;border-radius:999px;white-space:nowrap;box-shadow:0 4px 14px rgba(124,58,237,.45);transition:transform .15s}
.hero-search-big button:hover{transform:scale(1.03)}

/* DESTAQUE (FEATURED) */
.blog-hero-featured{
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  backdrop-filter:blur(8px);border-radius:var(--r-lg);overflow:hidden;cursor:pointer;
  transition:transform .2s,box-shadow .2s;
}
.blog-hero-featured:hover{transform:translateY(-4px);box-shadow:0 20px 60px rgba(0,0,0,.3)}
.feat-thumb{height:200px;display:flex;align-items:center;justify-content:center;font-size:64px;position:relative;overflow:hidden}
.feat-thumb::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,transparent 30%,rgba(0,0,0,.6))}
.feat-badge{position:absolute;top:14px;left:14px;z-index:2;background:linear-gradient(135deg,var(--purple),var(--purple-d));color:#fff;font-family:var(--fh);font-size:11px;font-weight:800;padding:4px 12px;border-radius:999px;text-transform:uppercase;letter-spacing:.05em;box-shadow:0 2px 10px rgba(124,58,237,.5)}
.feat-body{padding:20px}
.feat-cat{display:inline-flex;align-items:center;gap:5px;font-family:var(--fh);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:3px 12px;border-radius:999px;margin-bottom:10px;background:rgba(196,181,253,.15);border:1px solid rgba(196,181,253,.2);color:var(--purple-ll)}
.feat-body h2{font-family:var(--fh);font-size:20px;font-weight:800;color:#fff;margin-bottom:8px;line-height:1.25}
.feat-body p{font-size:13px;color:rgba(255,255,255,.5);margin-bottom:14px;line-height:1.6}
.feat-meta{display:flex;align-items:center;gap:14px;font-size:12px;color:rgba(255,255,255,.4)}

/* FILTROS */
.filters-bar{background:var(--white);border-bottom:1px solid var(--border);position:sticky;top:70px;z-index:50}
.filters-inner{max-width:1240px;margin:0 auto;padding:0 28px;display:flex;align-items:center;gap:10px;height:60px;overflow-x:auto;scrollbar-width:none}
.filters-inner::-webkit-scrollbar{display:none}
.filter-label{font-family:var(--fh);font-size:13px;font-weight:700;color:var(--text-l);white-space:nowrap;margin-right:4px}
.filter-btn{
  font-family:var(--fh);font-size:13px;font-weight:600;
  padding:7px 18px;border-radius:999px;white-space:nowrap;
  border:1.5px solid var(--border);background:transparent;color:var(--text-m);
  transition:all .18s;cursor:pointer;display:flex;align-items:center;gap:5px;
}
.filter-btn:hover{border-color:var(--purple-ll);color:var(--purple-d);background:var(--purple-xl)}
.filter-btn.active{background:linear-gradient(135deg,var(--purple),var(--purple-d));color:#fff;border-color:transparent;box-shadow:0 3px 12px rgba(124,58,237,.3)}
.filters-sort{margin-left:auto;flex-shrink:0}
.sort-select{font-family:var(--fh);font-size:13px;font-weight:600;color:var(--text-m);border:1.5px solid var(--border);border-radius:var(--r-sm);padding:7px 12px;background:var(--white);outline:none;cursor:pointer;transition:border-color .2s}
.sort-select:focus{border-color:var(--purple-l)}

/* LAYOUT PRINCIPAL */
.main{max-width:1240px;margin:0 auto;padding:48px 28px 72px;display:grid;grid-template-columns:1fr 340px;gap:48px;align-items:start}

/* GRID DE ARTIGOS */
.articles-wrap{}
.articles-count{font-family:var(--fh);font-size:14px;font-weight:600;color:var(--text-l);margin-bottom:24px;display:flex;align-items:center;gap:8px}
.articles-count strong{color:var(--navy-d)}

.articles-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:40px}

/* CARD GRANDE (destaque na listagem) */
.art-card-big{
  grid-column:1/-1;
  display:flex;border-radius:var(--r-lg);overflow:hidden;
  border:1.5px solid var(--border);background:var(--white);
  transition:transform .2s,box-shadow .2s;cursor:pointer;
}
.art-card-big:hover{transform:translateY(-3px);box-shadow:0 12px 40px rgba(56,59,103,.13)}
.art-card-big .thumb{flex-shrink:0;width:320px;min-height:200px;display:flex;align-items:center;justify-content:center;font-size:64px;position:relative;overflow:hidden}
.art-card-big .thumb::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,0,0,.08),rgba(0,0,0,.25))}
.art-card-big .body{padding:28px 30px;flex:1;display:flex;flex-direction:column;justify-content:space-between}

/* CARD NORMAL */
.art-card{
  border-radius:var(--r-lg);overflow:hidden;
  border:1.5px solid var(--border);background:var(--white);
  transition:transform .2s,box-shadow .2s;cursor:pointer;display:flex;flex-direction:column;
}
.art-card:hover{transform:translateY(-5px);box-shadow:0 14px 44px rgba(56,59,103,.14)}
.art-card .thumb{height:180px;display:flex;align-items:center;justify-content:center;font-size:52px;position:relative;overflow:hidden}
.art-card .thumb::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,transparent 30%,rgba(0,0,0,.4))}
.art-card .body{padding:20px;flex:1;display:flex;flex-direction:column}

/* CARD HORIZONTAL (lista) */
.art-card-h{
  grid-column:1/-1;
  display:flex;gap:0;border-radius:var(--r-lg);overflow:hidden;
  border:1.5px solid var(--border);background:var(--white);
  transition:transform .2s,box-shadow .2s;cursor:pointer;
}
.art-card-h:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(56,59,103,.1)}
.art-card-h .thumb{flex-shrink:0;width:160px;min-height:120px;display:flex;align-items:center;justify-content:center;font-size:36px;position:relative;overflow:hidden}
.art-card-h .thumb::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,0,0,.05),rgba(0,0,0,.2))}
.art-card-h .body{padding:16px 20px;flex:1;display:flex;flex-direction:column;justify-content:center}

/* BODY COMPARTILHADO */
.art-cat{display:inline-flex;align-items:center;gap:5px;font-family:var(--fh);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:4px 12px;border-radius:999px;margin-bottom:10px;width:fit-content}
.art-title-text{font-family:var(--fh);font-weight:800;color:var(--navy-d);line-height:1.3;margin-bottom:8px}
.art-card-big .art-title-text{font-size:22px}
.art-card .art-title-text{font-size:17px}
.art-card-h .art-title-text{font-size:15px;margin-bottom:6px}
.art-excerpt{font-size:14px;color:var(--text-m);line-height:1.65;flex:1;margin-bottom:14px}
.art-card-h .art-excerpt{font-size:13px;margin-bottom:8px}
.art-meta{display:flex;align-items:center;gap:14px;font-size:12px;color:var(--text-l);flex-wrap:wrap}
.art-meta span{display:flex;align-items:center;gap:4px}

/* BADGE NOVO / POPULAR */
.badge-new{position:absolute;top:12px;right:12px;z-index:2;background:linear-gradient(135deg,var(--purple),var(--purple-d));color:#fff;font-family:var(--fh);font-size:10px;font-weight:800;padding:3px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.05em;box-shadow:0 2px 8px rgba(124,58,237,.4)}
.badge-hot{position:absolute;top:12px;right:12px;z-index:2;background:linear-gradient(135deg,#ef4444,#b91c1c);color:#fff;font-family:var(--fh);font-size:10px;font-weight:800;padding:3px 10px;border-radius:999px;letter-spacing:.05em;box-shadow:0 2px 8px rgba(239,68,68,.4)}

/* PAGINAÇÃO */
.pagination{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:16px}
.page-btn{width:40px;height:40px;border-radius:var(--r-sm);border:1.5px solid var(--border);background:var(--white);font-family:var(--fh);font-size:14px;font-weight:600;color:var(--text-m);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .18s}
.page-btn:hover{border-color:var(--purple-ll);color:var(--purple-d);background:var(--purple-xl)}
.page-btn.active{background:linear-gradient(135deg,var(--purple),var(--purple-d));color:#fff;border-color:transparent;box-shadow:0 3px 12px rgba(124,58,237,.3)}
.page-btn.arrow{font-size:18px}

/* SIDEBAR */
.sidebar{display:flex;flex-direction:column;gap:22px;position:sticky;top:140px}
.sb-box{border-radius:var(--r-lg);overflow:hidden;border:1.5px solid var(--border)}
.sb-hd{padding:14px 20px;background:linear-gradient(135deg,var(--navy-d),var(--navy-dd));font-family:var(--fh);font-size:14px;font-weight:700;color:#fff;display:flex;align-items:center;gap:8px}

/* TOP 5 */
.top5{list-style:none;background:var(--white)}
.top5 li{display:flex;align-items:center;gap:12px;padding:12px 18px;border-bottom:1px solid var(--border);transition:background .15s;cursor:pointer}
.top5 li:last-child{border-bottom:none}
.top5 li:hover{background:var(--off)}
.t5n{width:26px;height:26px;border-radius:7px;flex-shrink:0;background:linear-gradient(135deg,var(--purple),var(--purple-d));color:#fff;font-family:var(--fh);font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(124,58,237,.3)}
.top5 li span{font-size:13px;color:var(--text);line-height:1.4;font-weight:500}

/* CATEGORIAS SIDEBAR */
.cat-tags{padding:16px 18px;background:var(--white);display:flex;flex-wrap:wrap;gap:8px}
.cat-tag{font-family:var(--fh);font-size:12px;font-weight:600;padding:6px 14px;border-radius:999px;background:var(--off);border:1.5px solid var(--border);color:var(--text-m);cursor:pointer;transition:all .18s;display:flex;align-items:center;gap:5px}
.cat-tag:hover{background:var(--purple-xl);border-color:var(--purple-ll);color:var(--purple-d)}
.cat-tag.active{background:linear-gradient(135deg,var(--purple),var(--purple-d));color:#fff;border-color:transparent;box-shadow:0 2px 10px rgba(124,58,237,.3)}

/* PACK SIDEBAR */
.sb-pack{border-radius:var(--r-lg);background:linear-gradient(135deg,var(--navy-d),var(--purple-dd));padding:24px 20px;text-align:center;position:relative;overflow:hidden}
.sb-pack::before{content:'';position:absolute;top:-40px;right:-40px;width:140px;height:140px;border-radius:50%;background:rgba(124,58,237,.2)}
.sb-pack-emoji{font-size:44px;margin-bottom:10px;position:relative;z-index:1}
.sb-pack h3{font-family:var(--fh);font-size:15px;font-weight:800;color:#fff;margin-bottom:6px;position:relative;z-index:1}
.sb-pack p{font-size:13px;color:rgba(255,255,255,.55);margin-bottom:16px;line-height:1.6;position:relative;z-index:1}
.btn-sbpack{display:block;width:100%;background:linear-gradient(135deg,var(--purple-l),var(--purple));color:#fff;font-family:var(--fh);font-size:14px;font-weight:700;padding:12px;border-radius:var(--r-sm);text-align:center;box-shadow:0 4px 16px rgba(124,58,237,.4);transition:transform .15s,box-shadow .15s;position:relative;z-index:1}
.btn-sbpack:hover{transform:translateY(-2px);box-shadow:0 6px 22px rgba(124,58,237,.5)}

/* NEWSLETTER SIDEBAR */
.sb-nl{border-radius:var(--r-lg);background:var(--off);border:1.5px solid var(--border);padding:22px;text-align:center}
.sb-nl h3{font-family:var(--fh);font-size:15px;font-weight:800;color:var(--navy-d);margin-bottom:6px}
.sb-nl p{font-size:13px;color:var(--text-m);margin-bottom:16px;line-height:1.5}
.sb-nl input{width:100%;border:1.5px solid var(--border);background:var(--white);font-family:var(--fb);font-size:14px;color:var(--text);padding:11px 16px;border-radius:var(--r-sm);outline:none;margin-bottom:8px;transition:border-color .2s}
.sb-nl input:focus{border-color:var(--purple-l);box-shadow:0 0 0 3px rgba(124,58,237,.1)}
.sb-nl input::placeholder{color:var(--text-l)}
.btn-nl{display:block;width:100%;background:linear-gradient(135deg,var(--purple),var(--purple-d));color:#fff;font-family:var(--fh);font-size:14px;font-weight:700;padding:11px;border-radius:var(--r-sm);box-shadow:0 4px 14px rgba(124,58,237,.3);transition:transform .15s}
.btn-nl:hover{transform:scale(1.02)}

/* WHATSAPP SIDEBAR */
.sb-wa{border-radius:var(--r-lg);background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1.5px solid #bbf7d0;padding:20px;text-align:center}
.sb-wa h3{font-family:var(--fh);font-size:14px;font-weight:800;color:#14532d;margin-bottom:6px}
.sb-wa p{font-size:13px;color:#166534;margin-bottom:14px;line-height:1.5}
.btn-swa{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;background:linear-gradient(135deg,#25d366,#128c7e);color:#fff;font-family:var(--fh);font-size:14px;font-weight:700;padding:11px;border-radius:var(--r-sm);box-shadow:0 4px 14px rgba(37,211,102,.3);transition:transform .15s}
.btn-swa:hover{transform:translateY(-2px)}

/* BANNER MID LISTAGEM */
.banner-listing{
  grid-column:1/-1;
  border-radius:var(--r-lg);overflow:hidden;cursor:pointer;
  transition:transform .2s,box-shadow .2s;
}
.banner-listing:hover{transform:translateY(-3px);box-shadow:0 12px 40px rgba(56,59,103,.15)}
.banner-listing-inner{background:linear-gradient(135deg,var(--navy-d) 0%,var(--purple-dd) 100%);padding:24px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.bl-left .bl-badge{display:inline-flex;align-items:center;gap:5px;background:rgba(196,181,253,.15);border:1px solid rgba(196,181,253,.25);color:var(--purple-ll);font-family:var(--fh);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:3px 12px;border-radius:999px;margin-bottom:10px}
.bl-left h3{font-family:var(--fh);font-size:18px;font-weight:800;color:#fff;margin-bottom:5px}
.bl-left p{font-size:13px;color:rgba(255,255,255,.5)}
.btn-bl{background:linear-gradient(135deg,var(--purple-l),var(--purple));color:#fff;font-family:var(--fh);font-size:14px;font-weight:700;padding:12px 26px;border-radius:999px;box-shadow:0 4px 16px rgba(124,58,237,.45);transition:transform .15s;white-space:nowrap}
.btn-bl:hover{transform:scale(1.04)}

/* FOOTER */
footer{background:var(--navy-dd);padding:64px 28px 28px}
.foot-grid{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:2.2fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px}
.fb-l .logo{color:#fff;margin-bottom:14px}
.fb-l p{font-size:14px;color:rgba(255,255,255,.4);line-height:1.75;margin-bottom:22px;max-width:280px}
.socials{display:flex;gap:10px}
.s-ico{width:38px;height:38px;border-radius:10px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;font-size:17px;transition:all .18s}
.s-ico:hover{background:var(--purple);border-color:var(--purple);transform:translateY(-2px)}
.fc h4{font-family:var(--fh);font-size:13px;font-weight:700;color:rgba(255,255,255,.5);text-transform:uppercase;letter-spacing:.08em;margin-bottom:18px}
.fc ul{list-style:none;display:flex;flex-direction:column;gap:11px}
.fc ul li a{font-size:14px;color:rgba(255,255,255,.45);transition:color .15s;font-weight:500}
.fc ul li a:hover{color:var(--purple-ll)}
.foot-bot{max-width:1240px;margin:0 auto;padding-top:24px;border-top:1px solid rgba(255,255,255,.07);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:13px;color:rgba(255,255,255,.25)}

/* RESPONSIVE */
@media(max-width:1024px){
  .main{grid-template-columns:1fr}
  .sidebar{position:static}
  .blog-hero-inner{grid-template-columns:1fr}
  .blog-hero-featured{display:none}
  .foot-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  nav,.h-search{display:none}
  .header-inner{padding:0 20px}
  .articles-grid{grid-template-columns:1fr}
  .art-card-big{flex-direction:column}
  .art-card-big .thumb{width:100%;height:200px}
  .art-card-h .thumb{width:120px}
  .banner-listing-inner{flex-direction:column;text-align:center}
  .main{padding:32px 20px 52px}
}
@media(max-width:560px){
  .foot-grid{grid-template-columns:1fr}
  .blog-hero{padding:48px 20px 56px}
}

/* =========================
   PromptHub V2 - AI Tech Upgrade
   camada visual adicionada para comparacao
   ========================= */
:root{--navy:#111827;--navy-d:#0f172a;--navy-dd:#050816;--purple:#7c3aed;--purple-l:#a78bfa;--purple-ll:#ddd6fe;--purple-xl:#f3efff;--purple-d:#6d28d9;--cyan:#00d4ff;--pink:#ff3d9a;--mint:#38f8c8;--amber:#fbbf24;--white:#fff;--off:#f6f8ff;--text:#101426;--text-m:#4b587c;--text-l:#8b96b8;--border:#dfe6f7;--shadow-soft:0 18px 55px rgba(15,23,42,.10);--shadow-glow:0 18px 60px rgba(124,58,237,.24)}
body{background:radial-gradient(circle at 10% 0%,rgba(0,212,255,.10),transparent 28rem),radial-gradient(circle at 92% 12%,rgba(255,61,154,.09),transparent 24rem),linear-gradient(180deg,#fbfcff 0%,#f5f7ff 52%,#ffffff 100%);color:var(--text)}
body::before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.34;background-image:linear-gradient(rgba(17,24,39,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(17,24,39,.045) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to bottom,black,transparent 82%)}
.topbar{background:linear-gradient(90deg,#050816,#1e1b4b 30%,#0e7490 58%,#831843 82%,#050816);color:#e0faff;box-shadow:0 1px 0 rgba(255,255,255,.08) inset}.topbar a{color:#a7f3ff;text-decoration-color:rgba(167,243,255,.6)}
header{background:rgba(255,255,255,.78);border-bottom:1px solid rgba(124,58,237,.14);box-shadow:0 14px 38px rgba(15,23,42,.07);backdrop-filter:blur(22px) saturate(1.2)}
.logo-mark{border-radius:12px;background:conic-gradient(from 180deg,var(--cyan),var(--purple),var(--pink),var(--cyan));box-shadow:0 12px 30px rgba(124,58,237,.28),0 0 0 1px rgba(255,255,255,.65) inset}
.logo em,.grad-text,.blog-hero-text h1 em,.art-title em{background:linear-gradient(90deg,#00d4ff,#a78bfa,#ff3d9a,#38f8c8);background-size:240% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
nav a:hover,nav a.active{background:rgba(124,58,237,.10);color:var(--purple-d)}
.h-search,.hero-search,.hero-search-big,.nl-form input{background:rgba(255,255,255,.82);border-color:rgba(124,58,237,.22);box-shadow:0 10px 28px rgba(15,23,42,.06)}
.h-search:focus-within,.hero-search:focus-within,.hero-search-big:focus-within,.nl-form input:focus{border-color:rgba(0,212,255,.72);box-shadow:0 0 0 4px rgba(0,212,255,.14),0 16px 34px rgba(15,23,42,.08)}
.btn-hdr,.btn-wa,.hero-search button,.hero-search-big button,.btn-banner,.nl-form button,.btn-copy,.load-more{background:linear-gradient(135deg,#00d4ff 0%,#7c3aed 48%,#ff3d9a 100%);box-shadow:0 14px 34px rgba(124,58,237,.28),0 0 0 1px rgba(255,255,255,.24) inset}
.btn-hdr:hover,.btn-wa:hover,.hero-search button:hover,.hero-search-big button:hover,.btn-copy:hover,.load-more:hover{transform:translateY(-2px);box-shadow:0 20px 44px rgba(124,58,237,.34),0 0 30px rgba(0,212,255,.18)}
.hero,.blog-hero,.art-hero{background:radial-gradient(circle at 22% 20%,rgba(0,212,255,.25),transparent 24rem),radial-gradient(circle at 82% 18%,rgba(255,61,154,.22),transparent 24rem),radial-gradient(circle at 50% 100%,rgba(124,58,237,.34),transparent 34rem),linear-gradient(145deg,#050816 0%,#111827 48%,#1e1b4b 100%)}
.hero::after,.blog-hero::after,.art-hero::after{content:'';position:absolute;inset:0;pointer-events:none;opacity:.22;background-image:linear-gradient(120deg,transparent 0 35%,rgba(255,255,255,.18) 36%,transparent 37% 100%);background-size:140px 140px;mix-blend-mode:screen}.hero-grid,.blog-hero-grid,.art-hero-grid{opacity:.11;background-size:42px 42px}
.hero-badge,.hero-eyebrow,.bc-cat,.feat-cat{background:rgba(0,212,255,.12);border-color:rgba(0,212,255,.28);color:#bff6ff;box-shadow:0 0 28px rgba(0,212,255,.12) inset}.hero h1,.blog-hero-text h1,.art-title{text-shadow:0 18px 55px rgba(0,0,0,.34);letter-spacing:0}.hero p,.blog-hero-text p{color:rgba(234,242,255,.76)}
.hero-stats,.blog-hero-featured,.sb-box,.art-card,.art-card-big,.art-card-h,.cat-card,.art,.rel-card,.prompt-box,.newsletter-box,.smart-banner{border:1px solid rgba(124,58,237,.14);box-shadow:var(--shadow-soft);position:relative}.hero-stats::before,.blog-hero-featured::before,.art-card::before,.art-card-big::before,.cat-card::before,.art::before,.rel-card::before,.sb-box::before{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.55),transparent 32%,rgba(0,212,255,.10));opacity:.7}.cat-card,.art,.art-card,.art-card-big,.art-card-h,.rel-card,.sb-box{background:rgba(255,255,255,.88);backdrop-filter:blur(10px)}.cat-card:hover,.art:hover,.art-card:hover,.art-card-big:hover,.art-card-h:hover,.rel-card:hover{transform:translateY(-6px);box-shadow:0 24px 70px rgba(15,23,42,.13),0 0 34px rgba(0,212,255,.11)}
.cat-img,.art-thumb,.thumb,.feat-thumb,.rel-thumb,.art-thumb-wrap{position:relative;overflow:hidden;background-blend-mode:screen,normal}.cat-img::before,.art-thumb::before,.thumb::before,.feat-thumb::before,.rel-thumb::before,.art-thumb-wrap::before{content:'';position:absolute;inset:0;opacity:.48;pointer-events:none;background:radial-gradient(circle at 28% 24%,rgba(255,255,255,.46),transparent 23%),linear-gradient(135deg,rgba(0,212,255,.24),transparent 45%,rgba(255,61,154,.24))}.cat-emoji,.art-thumb,.thumb,.feat-thumb,.rel-thumb,.art-thumb-wrap{filter:saturate(1.12)}
.s-head h2,.prose h2,.prose h3,.sb-hd{color:#101426;letter-spacing:0}.see-all,.art-cat,.tag{box-shadow:0 8px 18px rgba(124,58,237,.08)}.filters-bar{background:rgba(255,255,255,.82);backdrop-filter:blur(18px);border-bottom-color:rgba(124,58,237,.13)}.filter-btn,.sort-select{background:rgba(255,255,255,.74);border-color:rgba(124,58,237,.18)}.filter-btn.active{background:linear-gradient(135deg,#00d4ff,#7c3aed 62%,#ff3d9a);box-shadow:0 12px 26px rgba(124,58,237,.25)}
.prose blockquote{background:linear-gradient(135deg,#eefbff,#f5efff);border-left-color:#00d4ff;box-shadow:0 14px 36px rgba(15,23,42,.06)}.prompt-box,.smart-banner{background:radial-gradient(circle at 90% 10%,rgba(0,212,255,.22),transparent 18rem),linear-gradient(135deg,#0f172a,#111827 58%,#312e81);border-color:rgba(0,212,255,.20);box-shadow:0 24px 70px rgba(15,23,42,.20)}.newsletter-box{background:linear-gradient(135deg,#ffffff,#f1f7ff);border-color:rgba(0,212,255,.18)}
footer{background:linear-gradient(145deg,#050816,#111827 55%,#1e1b4b);position:relative;overflow:hidden}footer::before{content:'';position:absolute;inset:0;opacity:.12;background-image:linear-gradient(rgba(255,255,255,.6) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.6) 1px,transparent 1px);background-size:44px 44px}.footer-inner,.footer-bottom{position:relative;z-index:1}
@media (max-width:760px){.hero,.blog-hero{padding-left:20px;padding-right:20px}.btn-hdr{padding:9px 16px}}


/* ---- single-v2.html ---- */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --navy:#383b67;--navy-d:#23254a;--navy-dd:#14152e;
  --purple:#7c3aed;--purple-l:#9d62f5;--purple-ll:#c4b5fd;
  --purple-xl:#ede9fe;--purple-d:#5b21b6;--purple-dd:#3b0f9e;
  --cyan:#06b6d4;--white:#fff;--off:#f8f7ff;
  --text:#1a1a2e;--text-m:#4a4a6a;--text-l:#9090b0;--border:#e4e2f4;
  --fh:'Poppins',sans-serif;--fb:'Open Sans',sans-serif;
  --r:14px;--r-sm:8px;--r-lg:20px;
}
html{scroll-behavior:smooth}
body{font-family:var(--fb);color:var(--text);background:var(--white);line-height:1.7;overflow-x:hidden}
a{text-decoration:none;color:inherit}
button{font-family:var(--fb);cursor:pointer;border:none;outline:none}

/* PROGRESS BAR */
#progress-bar{
  position:fixed;top:0;left:0;z-index:200;
  height:3px;width:0%;
  background:linear-gradient(90deg,var(--purple),var(--cyan),var(--purple-l));
  background-size:200%;animation:pgmove 3s linear infinite;
  transition:width .1s linear;
  box-shadow:0 0 10px rgba(124,58,237,.6);
}
@keyframes pgmove{0%{background-position:0%}100%{background-position:200%}}

/* TOPBAR */
.topbar{background:linear-gradient(90deg,var(--navy-dd),var(--purple-d),var(--navy-dd));background-size:200%;animation:tbslide 6s linear infinite;color:#fff;font-size:13px;text-align:center;padding:9px 16px;font-family:var(--fh);font-weight:500}
@keyframes tbslide{0%{background-position:0%}100%{background-position:200%}}
.topbar a{color:var(--purple-ll);font-weight:700;text-decoration:underline;text-underline-offset:3px}

/* HEADER */
header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.92);backdrop-filter:blur(16px);border-bottom:1px solid var(--border)}
.header-inner{max-width:1240px;margin:0 auto;padding:0 28px;height:70px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.logo{font-family:var(--fh);font-size:22px;font-weight:800;color:var(--navy-d);display:flex;align-items:center;gap:10px;flex-shrink:0}
.logo-mark{width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,var(--purple),var(--purple-d));display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(124,58,237,.4)}
.logo-mark svg{width:20px;height:20px;fill:none;stroke:#fff;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.logo em{background:linear-gradient(90deg,var(--purple),var(--cyan));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-style:normal}
nav{display:flex;align-items:center;gap:2px}
nav a{font-family:var(--fh);font-size:14px;font-weight:500;color:var(--text-m);padding:7px 14px;border-radius:var(--r-sm);transition:background .18s,color .18s}
nav a:hover{background:var(--purple-xl);color:var(--purple-d)}
nav a.active{color:var(--purple);font-weight:700}
.h-search{flex:1;max-width:300px;display:flex;align-items:center;background:var(--off);border:1.5px solid var(--border);border-radius:999px;padding:0 16px;gap:8px;transition:border-color .2s,box-shadow .2s}
.h-search:focus-within{border-color:var(--purple-l);box-shadow:0 0 0 3px rgba(124,58,237,.12)}
.h-search input{border:none;background:transparent;font-family:var(--fb);font-size:14px;color:var(--text);width:100%;padding:9px 0;outline:none}
.h-search input::placeholder{color:var(--text-l)}
.h-search svg{width:15px;height:15px;flex-shrink:0;stroke:var(--text-l);fill:none;stroke-width:2;stroke-linecap:round}
.btn-hdr{background:linear-gradient(135deg,var(--purple),var(--purple-d));color:#fff;font-family:var(--fh);font-size:14px;font-weight:700;padding:10px 24px;border-radius:999px;box-shadow:0 4px 16px rgba(124,58,237,.35);transition:transform .15s,box-shadow .15s;white-space:nowrap}
.btn-hdr:hover{transform:translateY(-2px);box-shadow:0 6px 22px rgba(124,58,237,.45)}

/* HERO DO ARTIGO */
.art-hero{
  background:linear-gradient(160deg,var(--navy-dd) 0%,var(--navy-d) 60%,#1e1040 100%);
  padding:56px 28px 0;position:relative;overflow:hidden;
}
.art-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 60% 50%,rgba(124,58,237,.35) 0%,transparent 65%);pointer-events:none}
.art-hero-grid{position:absolute;inset:0;pointer-events:none;opacity:.04;background-image:linear-gradient(rgba(255,255,255,.8) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.8) 1px,transparent 1px);background-size:60px 60px}
.art-hero-inner{max-width:900px;margin:0 auto;position:relative;z-index:1}

/* BREADCRUMB */
.breadcrumb{display:flex;align-items:center;gap:8px;margin-bottom:24px;flex-wrap:wrap}
.breadcrumb a{font-family:var(--fh);font-size:13px;color:rgba(255,255,255,.5);transition:color .15s}
.breadcrumb a:hover{color:var(--purple-ll)}
.bc-sep{color:rgba(255,255,255,.25);font-size:13px}
.bc-cur{font-family:var(--fh);font-size:13px;color:rgba(255,255,255,.7)}
.bc-cat{
  display:inline-flex;align-items:center;gap:5px;
  background:rgba(124,58,237,.25);border:1px solid rgba(196,181,253,.3);
  color:var(--purple-ll);font-family:var(--fh);font-size:11px;font-weight:700;
  text-transform:uppercase;letter-spacing:.06em;padding:4px 12px;border-radius:999px;
}

.art-title{font-family:var(--fh);font-size:clamp(28px,4vw,46px);font-weight:900;color:#fff;line-height:1.1;margin-bottom:20px;letter-spacing:-.02em}
.art-title em{background:linear-gradient(90deg,var(--purple-ll),var(--cyan));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-style:normal}

.art-meta-row{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:32px}
.art-author{display:flex;align-items:center;gap:10px}
.author-avatar{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--purple),var(--cyan));display:flex;align-items:center;justify-content:center;font-family:var(--fh);font-size:14px;font-weight:700;color:#fff;flex-shrink:0}
.author-info strong{display:block;font-family:var(--fh);font-size:14px;font-weight:600;color:#fff}
.author-info span{font-size:12px;color:rgba(255,255,255,.45)}
.art-stats{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.art-stat{font-size:13px;color:rgba(255,255,255,.5);display:flex;align-items:center;gap:5px}
.art-stat strong{color:rgba(255,255,255,.8);font-weight:600}

.art-thumb-wrap{
  margin-top:36px;border-radius:var(--r-lg) var(--r-lg) 0 0;
  overflow:hidden;height:420px;
  background:linear-gradient(135deg,#1a2a6c,#2d3561);
  display:flex;align-items:center;justify-content:center;
  font-size:100px;position:relative;
}
.art-thumb-wrap::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,transparent 40%,rgba(20,21,46,.8))}

/* LAYOUT PRINCIPAL */
.main-layout{
  max-width:1240px;margin:0 auto;padding:0 28px;
  display:grid;grid-template-columns:1fr 340px;gap:48px;align-items:start;
  padding-top:48px;padding-bottom:72px;
}

/* CONTEÚDO DO ARTIGO */
.art-content{min-width:0}
.prose{font-size:17px;color:var(--text-m);line-height:1.85}
.prose h2{font-family:var(--fh);font-size:26px;font-weight:800;color:var(--navy-d);margin:40px 0 16px;letter-spacing:-.01em}
.prose h3{font-family:var(--fh);font-size:20px;font-weight:700;color:var(--navy-d);margin:32px 0 12px}
.prose p{margin-bottom:22px}
.prose strong{color:var(--text);font-weight:600}
.prose a{color:var(--purple);border-bottom:1px solid rgba(124,58,237,.3);transition:border-color .15s}
.prose a:hover{border-color:var(--purple)}
.prose ul,.prose ol{padding-left:24px;margin-bottom:22px;display:flex;flex-direction:column;gap:10px}
.prose li{color:var(--text-m)}
.prose blockquote{
  border-left:4px solid var(--purple);background:var(--purple-xl);
  padding:18px 22px;border-radius:0 var(--r-sm) var(--r-sm) 0;
  margin:28px 0;font-style:italic;color:var(--navy-d);
}
.prose blockquote strong{color:var(--purple-d)}
.prose code{background:var(--off);border:1px solid var(--border);padding:2px 8px;border-radius:5px;font-size:14px;font-family:monospace;color:var(--purple-d)}
.prose pre{background:var(--navy-dd);border-radius:var(--r);padding:22px;margin:24px 0;overflow-x:auto}
.prose pre code{background:none;border:none;color:#e2e8f0;font-size:14px;line-height:1.7;padding:0}

/* PROMPT BOX */
.prompt-box{
  background:linear-gradient(135deg,var(--navy-d),var(--navy-dd));
  border:1px solid rgba(196,181,253,.2);
  border-radius:var(--r-lg);padding:24px 26px;margin:32px 0 75px 0;position:relative;overflow:hidden;
}
.prompt-box::before{content:'';position:absolute;top:-30px;right:-30px;width:120px;height:120px;border-radius:50%;background:rgba(124,58,237,.15)}
.prompt-box-label{font-family:var(--fh);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--purple-ll);margin-bottom:12px;display:flex;align-items:center;gap:6px;position:relative;z-index:1}
.prompt-box p{font-size:15px;color:rgba(255,255,255,.8);line-height:1.75;font-family:monospace;position:relative;z-index:1;margin:0}
.btn-copy{
  margin-top:16px;display:inline-flex;align-items:center;gap:7px;
  background:rgba(124,58,237,.25);border:1px solid rgba(196,181,253,.3);
  color:var(--purple-ll);font-family:var(--fh);font-size:13px;font-weight:600;
  padding:8px 18px;border-radius:999px;cursor:pointer;transition:all .18s;position:relative;z-index:1;
}
.btn-copy:hover{background:rgba(124,58,237,.4);border-color:rgba(196,181,253,.5)}
.btn-copy.copied{background:rgba(16,185,129,.25);border-color:rgba(16,185,129,.4);color:#6ee7b7}

/* BANNER INTELIGENTE */
.smart-banner{
  border-radius:var(--r-lg);overflow:hidden;margin:40px 0;
  border:1.5px solid var(--border);cursor:pointer;
  transition:transform .2s,box-shadow .2s;
}
.smart-banner:hover{transform:translateY(-3px);box-shadow:0 12px 40px rgba(56,59,103,.15)}
.smart-banner-inner{
  background:linear-gradient(135deg,var(--navy-d) 0%,var(--purple-dd) 100%);
  padding:28px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px;
}
.sb-left{}
.sb-badge{display:inline-flex;align-items:center;gap:5px;background:rgba(196,181,253,.15);border:1px solid rgba(196,181,253,.25);color:var(--purple-ll);font-family:var(--fh);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:3px 12px;border-radius:999px;margin-bottom:10px}
.sb-left h3{font-family:var(--fh);font-size:20px;font-weight:800;color:#fff;margin-bottom:6px;line-height:1.2}
.sb-left p{font-size:14px;color:rgba(255,255,255,.55)}
.sb-right{flex-shrink:0}
.btn-banner{background:linear-gradient(135deg,var(--purple-l),var(--purple));color:#fff;font-family:var(--fh);font-size:14px;font-weight:700;padding:13px 28px;border-radius:999px;box-shadow:0 4px 18px rgba(124,58,237,.5);transition:transform .15s,box-shadow .15s;white-space:nowrap}
.btn-banner:hover{transform:scale(1.04);box-shadow:0 6px 24px rgba(124,58,237,.6)}

/* NEWSLETTER BOX */
.newsletter-box{
  background:var(--off);border:1.5px solid var(--border);
  border-radius:var(--r-lg);padding:32px;margin:40px 0;text-align:center;
}
.nl-icon{font-size:36px;margin-bottom:12px}
.newsletter-box h3{font-family:var(--fh);font-size:20px;font-weight:800;color:var(--navy-d);margin-bottom:8px}
.newsletter-box p{font-size:14px;color:var(--text-m);margin-bottom:20px}
.nl-form{display:flex;gap:8px;max-width:420px;margin:0 auto}
.nl-form input{flex:1;border:1.5px solid var(--border);background:var(--white);font-family:var(--fb);font-size:15px;color:var(--text);padding:12px 18px;border-radius:var(--r-sm);outline:none;transition:border-color .2s,box-shadow .2s}
.nl-form input:focus{border-color:var(--purple-l);box-shadow:0 0 0 3px rgba(124,58,237,.1)}
.nl-form input::placeholder{color:var(--text-l)}
.nl-form button{background:linear-gradient(135deg,var(--purple),var(--purple-d));color:#fff;font-family:var(--fh);font-size:14px;font-weight:700;padding:12px 22px;border-radius:var(--r-sm);white-space:nowrap;box-shadow:0 4px 14px rgba(124,58,237,.35);transition:transform .15s}
.nl-form button:hover{transform:scale(1.03)}

/* PACK RELACIONADO */
.pack-related{
  background:linear-gradient(135deg,var(--navy-d),var(--purple-dd));
  border-radius:var(--r-lg);padding:32px;margin:40px 0;
  display:flex;align-items:center;gap:28px;position:relative;overflow:hidden;
}
.pack-related::before{content:'';position:absolute;top:-50px;right:-50px;width:180px;height:180px;border-radius:50%;background:rgba(124,58,237,.2)}
.pack-emoji{font-size:60px;flex-shrink:0;position:relative;z-index:1;filter:drop-shadow(0 4px 12px rgba(0,0,0,.3))}
.pack-info{flex:1;position:relative;z-index:1}
.pack-tag{display:inline-flex;align-items:center;gap:5px;background:rgba(196,181,253,.15);border:1px solid rgba(196,181,253,.25);color:var(--purple-ll);font-family:var(--fh);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:3px 12px;border-radius:999px;margin-bottom:10px}
.pack-info h3{font-family:var(--fh);font-size:22px;font-weight:800;color:#fff;margin-bottom:8px;line-height:1.2}
.pack-info p{font-size:14px;color:rgba(255,255,255,.55);margin-bottom:16px;line-height:1.6}
.pack-details{display:flex;align-items:center;gap:16px;margin-bottom:20px;flex-wrap:wrap}
.pack-detail{font-size:13px;color:rgba(255,255,255,.6);display:flex;align-items:center;gap:5px}
.pack-price{font-family:var(--fh);font-size:28px;font-weight:900;color:#fff;margin-bottom:16px}
.pack-price small{font-size:14px;color:rgba(255,255,255,.45);font-weight:400}
.btn-pack{
  display:inline-flex;align-items:center;gap:8px;
  background:linear-gradient(135deg,var(--purple-l),var(--purple));color:#fff;
  font-family:var(--fh);font-size:15px;font-weight:700;padding:14px 28px;border-radius:999px;
  box-shadow:0 6px 22px rgba(124,58,237,.5);transition:transform .15s,box-shadow .15s;
}
.btn-pack:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(124,58,237,.6)}

/* COMPARTILHAMENTO */
.share-row{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:24px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);
  margin:40px 0;flex-wrap:wrap;
}
.share-label{font-family:var(--fh);font-size:14px;font-weight:700;color:var(--navy-d);display:flex;align-items:center;gap:8px}
.share-btns{display:flex;align-items:center;gap:10px}
.share-btn{
  display:flex;align-items:center;gap:7px;
  font-family:var(--fh);font-size:13px;font-weight:600;
  padding:9px 18px;border-radius:999px;border:1.5px solid;
  transition:transform .15s,box-shadow .15s;cursor:pointer;
}
.share-btn:hover{transform:translateY(-2px)}
.share-wa{background:#f0fdf4;border-color:#bbf7d0;color:#166534}
.share-wa:hover{box-shadow:0 4px 14px rgba(37,211,102,.25)}
.share-tw{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}
.share-tw:hover{box-shadow:0 4px 14px rgba(59,130,246,.25)}
.share-fb{background:#eff2ff;border-color:#c7d2fe;color:#3730a3}
.share-fb:hover{box-shadow:0 4px 14px rgba(99,102,241,.25)}
.share-lk{background:var(--off);border-color:var(--border);color:var(--text-m)}
.share-lk:hover{box-shadow:0 4px 14px rgba(56,59,103,.15)}
.view-count{font-family:var(--fh);font-size:13px;color:var(--text-l);display:flex;align-items:center;gap:6px}

/* SIDEBAR */
.sidebar{display:flex;flex-direction:column;gap:22px;position:sticky;top:88px}

.sb-box{border-radius:var(--r-lg);overflow:hidden;border:1.5px solid var(--border)}
.sb-hd{padding:14px 20px;background:linear-gradient(135deg,var(--navy-d),var(--navy-dd));font-family:var(--fh);font-size:14px;font-weight:700;color:#fff;display:flex;align-items:center;gap:8px}

/* TOC */
.toc-list{list-style:none;background:var(--white)}
.toc-list li a{display:flex;align-items:center;gap:10px;padding:12px 18px;font-size:13px;color:var(--text-m);border-bottom:1px solid var(--border);transition:background .15s,color .15s;font-weight:500}
.toc-list li:last-child a{border-bottom:none}
.toc-list li a:hover{background:var(--off);color:var(--purple)}
.toc-list li a.active{color:var(--purple);background:var(--purple-xl);font-weight:700}
.toc-n{width:22px;height:22px;border-radius:6px;background:var(--off);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:var(--text-l);flex-shrink:0}
.toc-list li a.active .toc-n{background:linear-gradient(135deg,var(--purple),var(--purple-d));border-color:transparent;color:#fff}

/* TOP 5 SIDEBAR */
.top5{list-style:none;background:var(--white)}
.top5 li{display:flex;align-items:center;gap:12px;padding:12px 18px;border-bottom:1px solid var(--border);transition:background .15s;cursor:pointer}
.top5 li:last-child{border-bottom:none}
.top5 li:hover{background:var(--off)}
.t5n{width:26px;height:26px;border-radius:7px;flex-shrink:0;background:linear-gradient(135deg,var(--purple),var(--purple-d));color:#fff;font-family:var(--fh);font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(124,58,237,.3)}
.top5 li span{font-size:13px;color:var(--text);line-height:1.4;font-weight:500}

/* SIDEBAR PACK */
.sb-pack{
  border-radius:var(--r-lg);
  background:linear-gradient(135deg,var(--navy-d),var(--purple-dd));
  padding:24px 20px;text-align:center;position:relative;overflow:hidden;
}
.sb-pack::before{content:'';position:absolute;top:-40px;right:-40px;width:140px;height:140px;border-radius:50%;background:rgba(124,58,237,.2)}
.sb-pack-emoji{font-size:44px;margin-bottom:10px;position:relative;z-index:1}
.sb-pack h3{font-family:var(--fh);font-size:15px;font-weight:800;color:#fff;margin-bottom:6px;position:relative;z-index:1}
.sb-pack p{font-size:13px;color:rgba(255,255,255,.55);margin-bottom:6px;line-height:1.6;position:relative;z-index:1}
.sb-pack-price{font-family:var(--fh);font-size:26px;font-weight:900;color:#fff;margin-bottom:16px;position:relative;z-index:1}
.sb-pack-price small{font-size:13px;color:rgba(255,255,255,.4);font-weight:400}
.btn-sbpack{display:block;width:100%;background:linear-gradient(135deg,var(--purple-l),var(--purple));color:#fff;font-family:var(--fh);font-size:14px;font-weight:700;padding:12px;border-radius:var(--r-sm);text-align:center;box-shadow:0 4px 16px rgba(124,58,237,.4);transition:transform .15s,box-shadow .15s;position:relative;z-index:1}
.btn-sbpack:hover{transform:translateY(-2px);box-shadow:0 6px 22px rgba(124,58,237,.5)}

/* SIDEBAR WHATSAPP */
.sb-wa{border-radius:var(--r-lg);background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1.5px solid #bbf7d0;padding:20px;text-align:center}
.sb-wa h3{font-family:var(--fh);font-size:14px;font-weight:800;color:#14532d;margin-bottom:6px}
.sb-wa p{font-size:13px;color:#166534;margin-bottom:14px;line-height:1.5}
.btn-swa{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;background:linear-gradient(135deg,#25d366,#128c7e);color:#fff;font-family:var(--fh);font-size:14px;font-weight:700;padding:11px;border-radius:var(--r-sm);box-shadow:0 4px 14px rgba(37,211,102,.3);transition:transform .15s}
.btn-swa:hover{transform:translateY(-2px)}

/* TAGS */
.art-tags{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:32px 0}
.tag{font-family:var(--fh);font-size:12px;font-weight:600;padding:5px 14px;border-radius:999px;background:var(--off);border:1.5px solid var(--border);color:var(--text-m);transition:all .15s;cursor:pointer}
.tag:hover{background:var(--purple-xl);border-color:var(--purple-ll);color:var(--purple-d)}

/* ARTIGOS RELACIONADOS */
.related{max-width:1240px;margin:0 auto;padding:0 28px 72px}
.related h2{font-family:var(--fh);font-size:26px;font-weight:800;color:var(--navy-d);margin-bottom:28px;letter-spacing:-.01em}
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.rel-card{border-radius:var(--r-lg);overflow:hidden;border:1.5px solid var(--border);background:var(--white);transition:transform .2s,box-shadow .2s;cursor:pointer}
.rel-card:hover{transform:translateY(-5px);box-shadow:0 14px 44px rgba(56,59,103,.15)}
.rel-thumb{height:160px;display:flex;align-items:center;justify-content:center;font-size:48px;position:relative;overflow:hidden}
.rel-thumb::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,transparent 30%,rgba(0,0,0,.4))}
.rel-body{padding:18px 20px}
.rel-cat{display:inline-flex;font-family:var(--fh);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:3px 10px;border-radius:999px;margin-bottom:8px}
.rel-body h3{font-family:var(--fh);font-size:16px;font-weight:700;color:var(--navy-d);margin-bottom:8px;line-height:1.35}
.rel-meta{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--text-l)}

/* FOOTER */
footer{background:var(--navy-dd);padding:64px 28px 28px}
.foot-grid{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:2.2fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px}
.fb-f .logo{color:#fff;margin-bottom:14px}
.fb-f p{font-size:14px;color:rgba(255,255,255,.4);line-height:1.75;margin-bottom:22px;max-width:280px}
.socials{display:flex;gap:10px}
.s-ico{width:38px;height:38px;border-radius:10px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;font-size:17px;transition:all .18s}
.s-ico:hover{background:var(--purple);border-color:var(--purple);transform:translateY(-2px)}
.fc h4{font-family:var(--fh);font-size:13px;font-weight:700;color:rgba(255,255,255,.5);text-transform:uppercase;letter-spacing:.08em;margin-bottom:18px}
.fc ul{list-style:none;display:flex;flex-direction:column;gap:11px}
.fc ul li a{font-size:14px;color:rgba(255,255,255,.45);transition:color .15s;font-weight:500}
.fc ul li a:hover{color:var(--purple-ll)}
.foot-bot{max-width:1240px;margin:0 auto;padding-top:24px;border-top:1px solid rgba(255,255,255,.07);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:13px;color:rgba(255,255,255,.25)}

/* RESPONSIVE */
@media(max-width:1024px){
  .main-layout{grid-template-columns:1fr}
  .sidebar{position:static}
  .related-grid{grid-template-columns:repeat(2,1fr)}
  .foot-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  nav,.h-search{display:none}
  .header-inner{padding:0 20px}
  .art-thumb-wrap{height:260px;font-size:64px}
  .pack-related{flex-direction:column;text-align:center}
  .smart-banner-inner{flex-direction:column;text-align:center}
  .share-row{flex-direction:column;align-items:flex-start}
}
@media(max-width:560px){
  .related-grid{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr}
  .nl-form{flex-direction:column}
  .share-btns{flex-wrap:wrap}
  .art-title{font-size:26px}
  .main-layout{padding:0 20px 52px}
  .related{padding:0 20px 52px}
}

/* =========================
   PromptHub V2 - AI Tech Upgrade
   camada visual adicionada para comparacao
   ========================= */
:root{--navy:#111827;--navy-d:#0f172a;--navy-dd:#050816;--purple:#7c3aed;--purple-l:#a78bfa;--purple-ll:#ddd6fe;--purple-xl:#f3efff;--purple-d:#6d28d9;--cyan:#00d4ff;--pink:#ff3d9a;--mint:#38f8c8;--amber:#fbbf24;--white:#fff;--off:#f6f8ff;--text:#101426;--text-m:#4b587c;--text-l:#8b96b8;--border:#dfe6f7;--shadow-soft:0 18px 55px rgba(15,23,42,.10);--shadow-glow:0 18px 60px rgba(124,58,237,.24)}
body{background:radial-gradient(circle at 10% 0%,rgba(0,212,255,.10),transparent 28rem),radial-gradient(circle at 92% 12%,rgba(255,61,154,.09),transparent 24rem),linear-gradient(180deg,#fbfcff 0%,#f5f7ff 52%,#ffffff 100%);color:var(--text)}
body::before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.34;background-image:linear-gradient(rgba(17,24,39,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(17,24,39,.045) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to bottom,black,transparent 82%)}
.topbar{background:linear-gradient(90deg,#050816,#1e1b4b 30%,#0e7490 58%,#831843 82%,#050816);color:#e0faff;box-shadow:0 1px 0 rgba(255,255,255,.08) inset}.topbar a{color:#a7f3ff;text-decoration-color:rgba(167,243,255,.6)}
header{background:rgba(255,255,255,.78);border-bottom:1px solid rgba(124,58,237,.14);box-shadow:0 14px 38px rgba(15,23,42,.07);backdrop-filter:blur(22px) saturate(1.2)}
.logo-mark{border-radius:12px;background:conic-gradient(from 180deg,var(--cyan),var(--purple),var(--pink),var(--cyan));box-shadow:0 12px 30px rgba(124,58,237,.28),0 0 0 1px rgba(255,255,255,.65) inset}
.logo em,.grad-text,.blog-hero-text h1 em,.art-title em{background:linear-gradient(90deg,#00d4ff,#a78bfa,#ff3d9a,#38f8c8);background-size:240% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
nav a:hover,nav a.active{background:rgba(124,58,237,.10);color:var(--purple-d)}
.h-search,.hero-search,.hero-search-big,.nl-form input{background:rgba(255,255,255,.82);border-color:rgba(124,58,237,.22);box-shadow:0 10px 28px rgba(15,23,42,.06)}
.h-search:focus-within,.hero-search:focus-within,.hero-search-big:focus-within,.nl-form input:focus{border-color:rgba(0,212,255,.72);box-shadow:0 0 0 4px rgba(0,212,255,.14),0 16px 34px rgba(15,23,42,.08)}
.btn-hdr,.btn-wa,.hero-search button,.hero-search-big button,.btn-banner,.nl-form button,.btn-copy,.load-more{background:linear-gradient(135deg,#00d4ff 0%,#7c3aed 48%,#ff3d9a 100%);box-shadow:0 14px 34px rgba(124,58,237,.28),0 0 0 1px rgba(255,255,255,.24) inset}
.btn-hdr:hover,.btn-wa:hover,.hero-search button:hover,.hero-search-big button:hover,.btn-copy:hover,.load-more:hover{transform:translateY(-2px);box-shadow:0 20px 44px rgba(124,58,237,.34),0 0 30px rgba(0,212,255,.18)}
.hero,.blog-hero,.art-hero{background:radial-gradient(circle at 22% 20%,rgba(0,212,255,.25),transparent 24rem),radial-gradient(circle at 82% 18%,rgba(255,61,154,.22),transparent 24rem),radial-gradient(circle at 50% 100%,rgba(124,58,237,.34),transparent 34rem),linear-gradient(145deg,#050816 0%,#111827 48%,#1e1b4b 100%)}
.hero::after,.blog-hero::after,.art-hero::after{content:'';position:absolute;inset:0;pointer-events:none;opacity:.22;background-image:linear-gradient(120deg,transparent 0 35%,rgba(255,255,255,.18) 36%,transparent 37% 100%);background-size:140px 140px;mix-blend-mode:screen}.hero-grid,.blog-hero-grid,.art-hero-grid{opacity:.11;background-size:42px 42px}
.hero-badge,.hero-eyebrow,.bc-cat,.feat-cat{background:rgba(0,212,255,.12);border-color:rgba(0,212,255,.28);color:#bff6ff;box-shadow:0 0 28px rgba(0,212,255,.12) inset}.hero h1,.blog-hero-text h1,.art-title{text-shadow:0 18px 55px rgba(0,0,0,.34);letter-spacing:0}.hero p,.blog-hero-text p{color:rgba(234,242,255,.76)}
.hero-stats,.blog-hero-featured,.sb-box,.art-card,.art-card-big,.art-card-h,.cat-card,.art,.rel-card,.prompt-box,.newsletter-box,.smart-banner{border:1px solid rgba(124,58,237,.14);box-shadow:var(--shadow-soft);position:relative}.hero-stats::before,.blog-hero-featured::before,.art-card::before,.art-card-big::before,.cat-card::before,.art::before,.rel-card::before,.sb-box::before{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.55),transparent 32%,rgba(0,212,255,.10));opacity:.7}.cat-card,.art,.art-card,.art-card-big,.art-card-h,.rel-card,.sb-box{background:rgba(255,255,255,.88);backdrop-filter:blur(10px)}.cat-card:hover,.art:hover,.art-card:hover,.art-card-big:hover,.art-card-h:hover,.rel-card:hover{transform:translateY(-6px);box-shadow:0 24px 70px rgba(15,23,42,.13),0 0 34px rgba(0,212,255,.11)}
.cat-img,.art-thumb,.thumb,.feat-thumb,.rel-thumb,.art-thumb-wrap{position:relative;overflow:hidden;background-blend-mode:screen,normal}.cat-img::before,.art-thumb::before,.thumb::before,.feat-thumb::before,.rel-thumb::before,.art-thumb-wrap::before{content:'';position:absolute;inset:0;opacity:.48;pointer-events:none;background:radial-gradient(circle at 28% 24%,rgba(255,255,255,.46),transparent 23%),linear-gradient(135deg,rgba(0,212,255,.24),transparent 45%,rgba(255,61,154,.24))}.cat-emoji,.art-thumb,.thumb,.feat-thumb,.rel-thumb,.art-thumb-wrap{filter:saturate(1.12)}
.s-head h2,.prose h2,.prose h3,.sb-hd{color:#101426;letter-spacing:0}.see-all,.art-cat,.tag{box-shadow:0 8px 18px rgba(124,58,237,.08)}.filters-bar{background:rgba(255,255,255,.82);backdrop-filter:blur(18px);border-bottom-color:rgba(124,58,237,.13)}.filter-btn,.sort-select{background:rgba(255,255,255,.74);border-color:rgba(124,58,237,.18)}.filter-btn.active{background:linear-gradient(135deg,#00d4ff,#7c3aed 62%,#ff3d9a);box-shadow:0 12px 26px rgba(124,58,237,.25)}
.prose blockquote{background:linear-gradient(135deg,#eefbff,#f5efff);border-left-color:#00d4ff;box-shadow:0 14px 36px rgba(15,23,42,.06)}.prompt-box,.smart-banner{background:radial-gradient(circle at 90% 10%,rgba(0,212,255,.22),transparent 18rem),linear-gradient(135deg,#0f172a,#111827 58%,#312e81);border-color:rgba(0,212,255,.20);box-shadow:0 24px 70px rgba(15,23,42,.20)}.newsletter-box{background:linear-gradient(135deg,#ffffff,#f1f7ff);border-color:rgba(0,212,255,.18)}
footer{background:linear-gradient(145deg,#050816,#111827 55%,#1e1b4b);position:relative;overflow:hidden}footer::before{content:'';position:absolute;inset:0;opacity:.12;background-image:linear-gradient(rgba(255,255,255,.6) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.6) 1px,transparent 1px);background-size:44px 44px}.footer-inner,.footer-bottom{position:relative;z-index:1}
@media (max-width:760px){.hero,.blog-hero{padding-left:20px;padding-right:20px}.btn-hdr{padding:9px 16px}}
.smart-image-banner{border-radius:24px;overflow:hidden;background:#0f172a;border:1px solid rgba(124,58,237,.18);box-shadow:0 18px 55px rgba(15,23,42,.14);margin:28px 0}
.smart-image-banner a,.smart-image-banner picture{display:block}
.smart-image-banner img{display:block;width:100%;height:auto;object-fit:cover}
.sidebar .smart-image-banner{margin:0 0 20px;border-radius:20px}
.article-banner-middle{margin:28px 0}

/* Sidebar headings: keep readable over dark tech headers */
.sidebar .sb-hd,
.blog-page .sidebar .sb-hd,
.single-page .sidebar .sb-hd {
  color: #fff !important;
  min-height: 56px;
  padding: 15px 20px;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: .01em;
  text-shadow: 0 2px 14px rgba(0,0,0,.34);
  background:
    radial-gradient(circle at 14% 18%, rgba(0,212,255,.22), transparent 9rem),
    linear-gradient(135deg, #071326, #111827 52%, #1e1b4b);
}

.sidebar .sb-hd::first-letter {
  color: #fff;
}

.sidebar .sb-hd * {
  color: inherit;
}

.ph-blog-v2 .pagination {
  display: none !important;
}

.blog-infinite-wrap {
  display: flex;
  justify-content: center;
  margin: 12px 0 52px;
}

.blog-infinite-loader,
.blog-infinite-ended {
  min-height: 46px;
  padding: 12px 24px;
  border: 1px solid rgba(124,58,237,.22);
  border-radius: 999px;
  background:
    linear-gradient(#fff, #fff) padding-box,
    linear-gradient(135deg, var(--cyan), var(--purple), var(--pink)) border-box;
  color: var(--navy-d);
  font-family: var(--fh);
  font-size: 13px;
  font-weight: 900;
  box-shadow: 0 16px 38px rgba(124,58,237,.12);
}

.blog-infinite-loader {
  cursor: pointer;
}

.blog-infinite-loader:disabled {
  cursor: progress;
  opacity: .78;
}

.ph-blog-v2 .feat-badge,
.ph-blog-v2 .badge-hot,
.ph-blog-v2 .badge-new {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 24px;
  max-height: 28px;
  width: auto;
  font-size: 10px !important;
  line-height: 1 !important;
  font-weight: 900;
  white-space: nowrap;
  text-transform: uppercase;
}

.ph-blog-v2 .thumb > .badge-hot,
.ph-blog-v2 .thumb > .badge-new,
.ph-blog-v2 .feat-thumb > .feat-badge {
  font-family: var(--fh);
}

body:has(.ph-blog-v2)::before {
  display: none !important;
}

body.bt-blog-page {
  background: #fff !important;
  overflow-x: hidden !important;
}

body.bt-blog-page::before {
  content: none !important;
  display: none !important;
  background: none !important;
  opacity: 0 !important;
}

.ph-blog-v2,
.ph-blog-v2::before,
.ph-blog-v2::after,
.ph-blog-v2 .main,
.ph-blog-v2 .articles-wrap {
  box-shadow: none !important;
}

body.bt-blog-page .ph-blog-v2 {
  width: 100%;
  overflow-x: clip;
  background: #fff;
  isolation: isolate;
}

body.bt-blog-page .ph-blog-v2 .main {
  background: #fff;
}

/* Header account buttons */
.topbar .topbar-auth-btn,
.topbar .topbar-auth-btn:hover,
.topbar .topbar-auth-btn:focus,
.topbar .topbar-auth-btn:visited {
  text-decoration: none !important;
}

/* WooCommerce shop cleanup: prevent home/blog visual effects from leaking into the catalog. */
.shop-page .page-hero::after,
body.woocommerce .page-hero::after,
body.post-type-archive-product .page-hero::after,
body.tax-product_cat .page-hero::after,
body.tax-product_tag .page-hero::after {
  content: none !important;
  display: none !important;
}

.shop-page .page-hero .breadcrumb {
  display: inline-flex !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 0 20px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: rgba(224,250,255,.86) !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  letter-spacing: .02em !important;
}

.shop-page .shop-content {
  position: relative;
  overflow: visible;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

.shop-page .shop-content::before {
  content: none !important;
  display: none !important;
}

.shop-page .shop-products .product-card,
.shop-page .shop-products .product-thumb {
  overflow: hidden;
}

.shop-page .shop-products .product-thumb .product-badge,
.shop-page .shop-products .product-card .product-badge {
  position: absolute !important;
  top: 12px !important;
  left: 12px !important;
  right: auto !important;
  bottom: auto !important;
  z-index: 5 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: calc(100% - 24px) !important;
  height: 22px !important;
  min-height: 22px !important;
  padding: 0 9px !important;
  border-radius: 999px !important;
  font-family: var(--fh) !important;
  font-size: 9px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  box-shadow: 0 8px 16px rgba(15,23,42,.13), inset 0 0 0 1px rgba(255,255,255,.32) !important;
  backdrop-filter: blur(10px);
}

.shop-page .shop-products .product-thumb .product-badge.badge-gratis,
.shop-page .shop-products .product-card .product-badge.badge-gratis {
  background: rgba(34,211,238,.92) !important;
  border: 1px solid rgba(14,165,233,.35) !important;
  color: #083344 !important;
}

.shop-page .shop-products .product-thumb .product-badge.badge-hot,
.shop-page .shop-products .product-card .product-badge.badge-hot {
  background: linear-gradient(135deg,#ff3d9a,#7c3aed) !important;
  border: 1px solid rgba(255,255,255,.35) !important;
  color: #fff !important;
}

.shop-page .shop-products .product-thumb .product-badge.badge-new,
.shop-page .shop-products .product-card .product-badge.badge-new {
  background: linear-gradient(135deg,#00d4ff,#7c3aed) !important;
  border: 1px solid rgba(255,255,255,.35) !important;
  color: #fff !important;
}

body.woocommerce .header,
body.post-type-archive-product .header,
body.tax-product_cat .header,
body.tax-product_tag .header {
  box-shadow: none !important;
  border-bottom-color: rgba(124,58,237,.10) !important;
}

.shop-page .shop-products .product-tags {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  margin-top: 14px !important;
}

.shop-page .shop-products .product-tag {
  display: inline-flex !important;
  align-items: center !important;
  width: auto !important;
  max-width: 100% !important;
  min-height: 23px !important;
  padding: 4px 9px !important;
  border-radius: 7px !important;
  background: rgba(124,58,237,.08) !important;
  border: 1px solid rgba(124,58,237,.16) !important;
  box-shadow: none !important;
  color: #4b3b8f !important;
  font-size: 10px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

.shop-page .shop-products .product-meta {
  align-items: end;
  gap: 12px;
}

.shop-page .shop-products .btn-add-cart.is-download {
  background: linear-gradient(135deg,#22c55e,#16a34a) !important;
  color: #fff !important;
  box-shadow: 0 12px 26px rgba(34,197,94,.26), 0 0 24px rgba(34,197,94,.18) !important;
}

.shop-page .shop-products .btn-add-cart.is-download:hover {
  background: linear-gradient(135deg,#34d399,#16a34a) !important;
  box-shadow: 0 16px 34px rgba(34,197,94,.34), 0 0 30px rgba(34,197,94,.22) !important;
}

/* Product single cleanup */
.product-single-hero .breadcrumb {
  display: flex !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.product-single-hero .breadcrumb,
.product-single-hero .breadcrumb a,
.product-single-hero .breadcrumb span {
  line-height: 1.2 !important;
}

.product-summary-card .single-add-cart,
.product-summary-card .single-add-cart.button,
.product-summary-card a.single-add-cart,
.product-summary-card a.single-add-cart.button,
.woocommerce .product-summary-card a.single-add-cart.button {
  background: linear-gradient(135deg,#7c3aed,#6d28d9 52%,#a855f7) !important;
  color: #fff !important;
  box-shadow: 0 16px 34px rgba(124,58,237,.30), 0 0 28px rgba(168,85,247,.18) !important;
}

.product-summary-card .single-add-cart:hover,
.product-summary-card .single-add-cart.button:hover,
.product-summary-card a.single-add-cart:hover,
.product-summary-card a.single-add-cart.button:hover,
.woocommerce .product-summary-card a.single-add-cart.button:hover {
  background: linear-gradient(135deg,#8b5cf6,#7c3aed 52%,#d946ef) !important;
  color: #fff !important;
  box-shadow: 0 20px 42px rgba(124,58,237,.38), 0 0 34px rgba(217,70,239,.22) !important;
}

/* Global heading glitch for content titles. */
main :where(h1, h2),
.site-main :where(h1, h2),
.single-content :where(h1, h2),
.woocommerce :where(h1, h2) {
  animation: btHeadingGlitch 1.6s steps(1,end) infinite;
}

.footer :where(h1, h2),
.header :where(h1, h2),
.topbar :where(h1, h2),
.mobile-nav-panel :where(h1, h2) {
  animation: none !important;
}

@keyframes btHeadingGlitch {
  0%, 84%, 100% {
    transform: translate(0);
    text-shadow: inherit;
    filter: none;
  }
  85% {
    transform: translate(-1px, 0);
    text-shadow: 2px 0 rgba(0,212,255,.75), -2px 0 rgba(255,61,154,.55);
    filter: saturate(1.18);
  }
  87% {
    transform: translate(1px, -1px);
    text-shadow: -2px 0 rgba(0,212,255,.7), 2px 1px rgba(255,61,154,.55);
  }
  89% {
    transform: translate(0, 1px);
    text-shadow: 1px -1px rgba(0,212,255,.65), -1px 1px rgba(255,61,154,.55);
  }
  91%, 100% {
    transform: translate(0);
    text-shadow: inherit;
    filter: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  main :where(h1, h2),
  .site-main :where(h1, h2),
  .single-content :where(h1, h2),
  .woocommerce :where(h1, h2) {
    animation: none !important;
  }
}

/* Minha conta / perfil: remove linhas duplicadas e deixa o painel mais limpo. */
body.woocommerce-account .page-hero {
  min-height: 218px;
  padding: 56px 0 62px !important;
  background:
    radial-gradient(circle at 16% 20%, rgba(0,212,255,.24), transparent 24rem),
    radial-gradient(circle at 82% 14%, rgba(255,61,154,.20), transparent 26rem),
    linear-gradient(135deg,#050816 0%,#111827 48%,#271449 100%) !important;
}

body.woocommerce-account .page-hero::after {
  content: none !important;
  display: none !important;
}

body.woocommerce-account .page-hero .breadcrumb {
  display: inline-flex !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: rgba(224,250,255,.84) !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
}

body.woocommerce-account .page-hero h1 {
  margin: 0 !important;
}

body.woocommerce-account .single-card.single-content,
body.woocommerce-account .woocommerce,
body.woocommerce-account .eduativa-account-layout,
body.woocommerce-account .woocommerce-MyAccount-navigation,
body.woocommerce-account .woocommerce-MyAccount-content {
  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
}

body.woocommerce-account .single-card.single-content {
  max-width: 1200px !important;
  padding: 0 !important;
  background: transparent !important;
}

body.woocommerce-account .eduativa-account-layout {
  gap: 32px !important;
  align-items: start !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation {
  padding: 16px !important;
  border-radius: 24px !important;
  background: rgba(255,255,255,.78) !important;
  backdrop-filter: blur(16px);
}

body.woocommerce-account .woocommerce-MyAccount-content {
  padding: 0 !important;
  overflow: visible !important;
  background: transparent !important;
}

body.woocommerce-account .account-greeting-card,
body.woocommerce-account .account-wishlist-card,
body.woocommerce-account .woocommerce-Address,
body.woocommerce-account .woocommerce-column--billing-address,
body.woocommerce-account .woocommerce-column--shipping-address,
body.woocommerce-account table.shop_table,
body.woocommerce-account .woocommerce-orders-table,
body.woocommerce-account .woocommerce-table--order-details,
body.woocommerce-account .woocommerce-table--order-downloads {
  border: 1px solid rgba(124,58,237,.14) !important;
  box-shadow: 0 18px 46px rgba(15,23,42,.07) !important;
}

body.woocommerce-account .account-greeting-card,
body.woocommerce-account .account-wishlist-card {
  border-radius: 24px !important;
  background:
    radial-gradient(circle at 92% 8%, rgba(0,212,255,.12), transparent 16rem),
    linear-gradient(135deg,rgba(255,255,255,.94),rgba(241,247,255,.86)) !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation a {
  border: 0 !important;
  box-shadow: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
  background: linear-gradient(135deg,#7c3aed,#00a9d8) !important;
  box-shadow: 0 14px 28px rgba(124,58,237,.22) !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation a::before {
  background: rgba(0,212,255,.10) !important;
  color: #383b67 !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a::before,
body.woocommerce-account .woocommerce-MyAccount-navigation a:hover::before {
  background: rgba(255,255,255,.18) !important;
  color: #fff !important;
}

body.woocommerce-account table.shop_table th,
body.woocommerce-account table.shop_table td {
  border-color: rgba(124,58,237,.10) !important;
}

body.woocommerce-account .single-content h2::before,
body.woocommerce-account .account-greeting-title::before,
body.woocommerce-account .account-section-head h2::before {
  content: none !important;
  display: none !important;
}

body.woocommerce-account .account-greeting-card .section-eyebrow,
body.woocommerce-account .account-wishlist-card .section-eyebrow {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 18px !important;
  padding-left: 0;
  color: #00a9d8 !important;
  background: none !important;
  -webkit-text-fill-color: currentColor !important;
  letter-spacing: .14em;
}

body.woocommerce-account .account-greeting-card .section-eyebrow::before,
body.woocommerce-account .account-wishlist-card .section-eyebrow::before {
  content: '';
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: radial-gradient(circle,#fff 0 18%,#00d4ff 20% 52%,#7c3aed 54% 100%);
  box-shadow: 0 0 0 5px rgba(0,212,255,.10), 0 0 18px rgba(124,58,237,.30);
}

body.woocommerce-account .account-greeting-card .section-eyebrow::after,
body.woocommerce-account .account-wishlist-card .section-eyebrow::after {
  content: '';
  width: 52px;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg,#00d4ff,#7c3aed,#ff3d9a);
  opacity: .85;
  box-shadow: 0 0 14px rgba(124,58,237,.20);
}

body.woocommerce-account .account-greeting-title,
body.woocommerce-account .account-section-head h2 {
  margin-top: 0 !important;
}

/* Article hero breadcrumb cleanup */
body.single-post .art-hero .breadcrumb,
body.single .art-hero .breadcrumb {
  display: flex !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 0 26px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.single-post .art-hero .breadcrumb a,
body.single-post .art-hero .breadcrumb span,
body.single .art-hero .breadcrumb a,
body.single .art-hero .breadcrumb span {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.single-post .art-hero .breadcrumb .bc-cat,
body.single .art-hero .breadcrumb .bc-cat {
  padding: 4px 12px !important;
  border-radius: 999px !important;
  background: rgba(0,212,255,.12) !important;
  border: 1px solid rgba(0,212,255,.22) !important;
  color: #bff6ff !important;
}

body.single-post .art-stats,
body.single .art-stats {
  gap: 10px !important;
}

body.single-post .art-stats .art-stat,
body.single .art-stats .art-stat {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}

body.single-post .art-stats .art-stat::before,
body.single .art-stats .art-stat::before {
  width: 24px;
  height: 24px;
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  border-radius: 8px;
  background: rgba(0,212,255,.11);
  border: 1px solid rgba(0,212,255,.18);
  color: #bff6ff;
  font-size: 12px;
  line-height: 1;
  box-shadow: 0 0 18px rgba(0,212,255,.10);
}

body.single-post .art-stats .art-stat:nth-child(1)::before,
body.single .art-stats .art-stat:nth-child(1)::before {
  content: '⏱';
}

body.single-post .art-stats .art-stat:nth-child(2)::before,
body.single .art-stats .art-stat:nth-child(2)::before {
  content: '◉';
}

body.single-post .art-stats .art-stat:nth-child(n+3),
body.single .art-stats .art-stat:nth-child(n+3) {
  display: none !important;
}

/* Article headings: editorial tech marker for H2 titles. */
body.single-post .single-content h2,
body.single .single-content h2,
.prose h2 {
  position: relative !important;
  padding-left: 0 !important;
  padding-top: 0 !important;
  font-size: clamp(22px, 2.15vw, 30px) !important;
  line-height: 1.28 !important;
  letter-spacing: 0 !important;
}

body.single-post .single-content h2::before,
body.single .single-content h2::before,
.prose h2::before {
  content: none !important;
  display: none !important;
}

body.single-post .single-content h2::after,
body.single .single-content h2::after,
.prose h2::after {
  content: '' !important;
  display: block !important;
  width: min(180px, 34vw) !important;
  height: 3px !important;
  margin-top: 12px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg,#00d4ff,#7c3aed,#ff3d9a,#00d4ff,transparent) !important;
  background-size: 240% 100% !important;
  box-shadow: 0 0 18px rgba(124,58,237,.18) !important;
  animation: btArticleHeadingLine 2.8s linear infinite !important;
}

@keyframes btArticleHeadingLine {
  0% { background-position: 0% 50%; }
  100% { background-position: 240% 50%; }
}

/* Article lists: clearer bullets for long editorial content. */
body.single-post .single-content :where(ul, ol),
body.single .single-content :where(ul, ol),
.prose :where(ul, ol) {
  margin: 22px 0 28px !important;
  padding-left: 0 !important;
  list-style: none !important;
  display: grid;
  gap: 12px;
}

body.single-post .single-content :where(ul, ol) li,
body.single .single-content :where(ul, ol) li,
.prose :where(ul, ol) li {
  position: relative;
  padding-left: 30px;
  color: var(--text-m);
  line-height: 1.75;
}

body.single-post .single-content ul li::before,
body.single .single-content ul li::before,
.prose ul li::before {
  content: '';
  position: absolute;
  left: 2px;
  top: .72em;
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: radial-gradient(circle,#fff 0 18%,#00d4ff 20% 52%,#7c3aed 54% 100%);
  box-shadow: 0 0 0 5px rgba(0,212,255,.08), 0 0 18px rgba(124,58,237,.22);
}

body.single-post .single-content ol,
body.single .single-content ol,
.prose ol {
  counter-reset: articleList;
}

body.single-post .single-content ol li,
body.single .single-content ol li,
.prose ol li {
  counter-increment: articleList;
}

body.single-post .single-content ol li::before,
body.single .single-content ol li::before,
.prose ol li::before {
  content: counter(articleList);
  position: absolute;
  left: 0;
  top: .38em;
  width: 22px;
  height: 22px;
  display: inline-grid;
  place-items: center;
  border-radius: 8px;
  background: linear-gradient(135deg,#00d4ff,#7c3aed);
  color: #fff;
  font-family: var(--fh);
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
  box-shadow: 0 8px 18px rgba(124,58,237,.18);
}

/* Store coming soon mode */
body.store-coming-soon .cart-float,
body.store-coming-soon .btn-store,
body.store-coming-soon .cart-btn,
body.store-coming-soon .mobile-nav-store,
body.store-coming-soon .nav-list a[href*="/loja"],
body.store-coming-soon .mobile-nav-list a[href*="/loja"],
body.store-coming-soon .footer a[href*="/loja"],
body.store-coming-soon .footer a[href*="/carrinho"],
body.store-coming-soon .footer a[href*="/checkout"],
body.store-coming-soon .sb-loja,
body.store-coming-soon .sb-pack,
body.store-coming-soon .pack-related,
body.store-coming-soon .article-freebies-shell,
body.store-coming-soon .related-products-grid,
body.store-coming-soon .eduativa-inline-product-box {
  display: none !important;
}

/* Native image crop behavior for cards and editorial blocks */
.art-thumb img,
.thumb img,
.feat-thumb img,
.blog-thumb img,
.post-thumb img,
.product-thumb img,
.art-thumb-wrap img,
.featured-image img,
.eduativa-inline-product-image,
.freebie-featured-media img,
.freebie-row-thumb img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center center !important;
}

.art-thumb img,
.thumb img,
.feat-thumb img,
.blog-thumb img,
.post-thumb img,
.product-thumb img {
  position: absolute !important;
  inset: 0 !important;
}

.shop-page .page-hero {
  isolation: isolate;
  min-height: 282px;
  background:
    radial-gradient(circle at 16% 20%, rgba(0,212,255,.30), transparent 25rem),
    radial-gradient(circle at 82% 12%, rgba(255,61,154,.28), transparent 27rem),
    radial-gradient(circle at 50% 100%, rgba(124,58,237,.34), transparent 34rem),
    linear-gradient(135deg,#050816 0%,#10172d 48%,#25144b 100%) !important;
}

.shop-page .page-hero::before {
  content: '' !important;
  position: absolute;
  inset: -30%;
  z-index: 0;
  pointer-events: none;
  display: block !important;
  opacity: .66;
  background:
    radial-gradient(circle at 22% 26%, rgba(0,212,255,.26), transparent 18rem),
    radial-gradient(circle at 76% 26%, rgba(255,61,154,.18), transparent 20rem),
    conic-gradient(from 160deg at 52% 45%, transparent 0 18%, rgba(124,58,237,.22) 28%, transparent 42%, rgba(0,212,255,.18) 58%, transparent 74%);
  filter: blur(8px) saturate(1.2);
  animation: shopHeroAurora 12s ease-in-out infinite alternate;
}

.shop-page .page-hero::after {
  content: '' !important;
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  display: block !important;
  opacity: .24;
  background-image:
    linear-gradient(rgba(255,255,255,.24) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.24) 1px, transparent 1px),
    repeating-linear-gradient(120deg, transparent 0 78px, rgba(255,255,255,.13) 79px, transparent 81px),
    linear-gradient(90deg, transparent, rgba(0,212,255,.34), rgba(255,61,154,.22), transparent);
  background-size: 52px 52px, 52px 52px, 148px 148px, 260% 100%;
  background-position: 0 0, 0 0, 0 0, -160% 0;
  mix-blend-mode: screen;
  animation: shopHeroGrid 16s linear infinite, shopHeroScan 5.8s ease-in-out infinite;
}

.shop-page .page-hero > .container {
  position: relative;
  z-index: 1;
}

.shop-page .shop-glitch-title {
  position: relative;
  display: inline-block;
  color: #fff !important;
  text-shadow: 0 16px 44px rgba(0,0,0,.32);
  animation: shopGlitchBase 1.6s steps(1,end) infinite;
}

.shop-page .shop-glitch-title::before,
.shop-page .shop-glitch-title::after {
  content: attr(data-glitch);
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0;
  overflow: hidden;
}

.shop-page .shop-glitch-title::before {
  color: #00d4ff;
  transform: translate(2px,-1px);
  clip-path: inset(0 0 55% 0);
  animation: shopGlitchTop 1.6s steps(1,end) infinite;
}

.shop-page .shop-glitch-title::after {
  color: #ff3d9a;
  transform: translate(-2px,1px);
  clip-path: inset(58% 0 0 0);
  animation: shopGlitchBottom 1.6s steps(1,end) infinite;
}

.shop-page .shop-glitch-title-small {
  color: var(--text-main) !important;
  text-shadow: none;
}

.shop-page .shop-glitch-title-small::before {
  color: #00d4ff;
}

.shop-page .shop-glitch-title-small::after {
  color: #ff3d9a;
}

@keyframes shopHeroAurora {
  0% { transform: translate3d(-2%, -1%, 0) rotate(0deg) scale(1); }
  100% { transform: translate3d(2%, 2%, 0) rotate(7deg) scale(1.08); }
}

@keyframes shopHeroGrid {
  0% { background-position: 0 0, 0 0, 0 0, -160% 0; }
  100% { background-position: 52px 52px, 52px 52px, 148px 148px, 160% 0; }
}

@keyframes shopHeroScan {
  0%, 56%, 100% { opacity: .16; }
  62%, 68% { opacity: .34; }
}

@keyframes shopGlitchBase {
  0%, 88%, 100% { transform: translate(0); filter: none; }
  89% { transform: translate(-1px, 1px); filter: saturate(1.35); }
  90% { transform: translate(1px, -1px); }
  91% { transform: translate(0); }
}

@keyframes shopGlitchTop {
  0%, 87%, 94%, 100% { opacity: 0; transform: translate(0); }
  88% { opacity: .8; transform: translate(4px,-2px); }
  90% { opacity: .65; transform: translate(-3px,1px); }
  92% { opacity: .75; transform: translate(2px,-1px); }
}

@keyframes shopGlitchBottom {
  0%, 87%, 94%, 100% { opacity: 0; transform: translate(0); }
  89% { opacity: .7; transform: translate(-4px,2px); }
  91% { opacity: .75; transform: translate(3px,1px); }
  93% { opacity: .55; transform: translate(-2px,0); }
}

@media (prefers-reduced-motion: reduce) {
  .shop-page .page-hero::before,
  .shop-page .page-hero::after,
  .shop-page .shop-glitch-title,
  .shop-page .shop-glitch-title::before,
  .shop-page .shop-glitch-title::after {
    animation: none !important;
  }
}

/* Ajustes finais: logos e redes sociais */
.header .logo.has-custom-logo .logo-icon,
.header .mobile-nav-logo.has-custom-logo .logo-icon,
.site-header .logo.has-custom-logo .logo-icon,
.site-header .mobile-nav-logo.has-custom-logo .logo-icon {
  max-width: none !important;
  max-height: none !important;
}

.header .logo.has-custom-logo .logo-image,
.header .mobile-nav-logo.has-custom-logo .logo-image,
.site-header .logo.has-custom-logo .logo-image,
.site-header .mobile-nav-logo.has-custom-logo .logo-image {
  width: auto !important;
  height: auto !important;
  max-width: 266px !important;
  max-height: 98px !important;
}

.footer-brand .logo.has-custom-logo .logo-image {
  max-width: 252px !important;
  max-height: 118px !important;
}

.topbar-social {
  gap: 8px !important;
}

.topbar-social a,
.footer-social a {
  position: relative;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto;
  color: #fff !important;
  background: linear-gradient(135deg, #24c6ff 0%, #7c3aed 52%, #ec4899 100%) !important;
  border: 1px solid rgba(255,255,255,.28);
  box-shadow: 0 12px 28px rgba(124,58,237,.3), inset 0 0 0 1px rgba(255,255,255,.2) !important;
  overflow: hidden;
}

.topbar-social a::before,
.footer-social a::before {
  content: "";
  position: absolute;
  inset: -35%;
  background: linear-gradient(115deg, transparent 22%, rgba(255,255,255,.55) 48%, transparent 74%);
  transform: translateX(-80%) rotate(12deg);
  transition: transform .45s ease;
}

.topbar-social a:hover::before,
.footer-social a:hover::before {
  transform: translateX(80%) rotate(12deg);
}

.topbar-social a {
  width: 29px !important;
  height: 29px !important;
  border-radius: 10px !important;
}

.footer-social a {
  width: 42px !important;
  height: 42px !important;
  border-radius: 13px !important;
}

.topbar-social .eduativa-svg-icon,
.footer-social .eduativa-svg-icon {
  position: relative;
  z-index: 1;
  filter: brightness(0) invert(1) !important;
}

.topbar-social .eduativa-svg-icon {
  width: 21px !important;
  height: 21px !important;
}

.footer-social .eduativa-svg-icon {
  width: 24px !important;
  height: 24px !important;
}

.topbar-social a:hover,
.footer-social a:hover {
  transform: translateY(-2px) scale(1.04);
}

.ph-single-v2 .sidebar,
.single .sidebar,
.single-post .sidebar {
  position: static !important;
  top: auto !important;
  align-self: stretch !important;
  height: auto !important;
}

.ph-single-v2 .main-layout,
.single .main-layout,
.single-post .main-layout {
  align-items: stretch !important;
  overflow: visible !important;
}

.ph-single-v2 .sidebar .sb-wa,
.single .sidebar .sb-wa,
.single-post .sidebar .sb-wa {
  position: sticky !important;
  top: 110px !important;
  z-index: 10;
}

.ph-single-v2,
.ph-single-v2 .art-content {
  overflow: visible !important;
}

.ph-single-v2 .smart-banner,
.single .smart-banner,
.single-post .smart-banner {
  color: #fff !important;
}

.ph-single-v2 .smart-banner .sb-left h3,
.single .smart-banner .sb-left h3,
.single-post .smart-banner .sb-left h3 {
  color: #fff !important;
}

.ph-single-v2 .smart-banner .sb-left p,
.single .smart-banner .sb-left p,
.single-post .smart-banner .sb-left p {
  color: rgba(255,255,255,.78) !important;
}

.ph-single-v2 .smart-banner .sb-badge,
.single .smart-banner .sb-badge,
.single-post .smart-banner .sb-badge {
  color: #fff !important;
}

.ph-single-v2 .prose .smart-banner .smart-banner-inner,
.single .prose .smart-banner .smart-banner-inner,
.single-post .prose .smart-banner .smart-banner-inner {
  position: relative;
  z-index: 1;
}

.ph-single-v2 .prose .smart-banner .sb-left h3,
.single .prose .smart-banner .sb-left h3,
.single-post .prose .smart-banner .sb-left h3 {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-size: 22px !important;
  line-height: 1.22 !important;
  text-shadow: 0 2px 18px rgba(0,0,0,.28);
}

.ph-single-v2 .prose .smart-banner .sb-left p,
.single .prose .smart-banner .sb-left p,
.single-post .prose .smart-banner .sb-left p {
  color: rgba(255,255,255,.82) !important;
  -webkit-text-fill-color: rgba(255,255,255,.82) !important;
}

/* Dark mode funcional nas telas v2 */
.dark-toggle::before {
  content: "\263E";
  margin-right: 6px;
}

html[data-theme="dark"] .dark-toggle::before {
  content: "\2600";
}

html[data-theme="dark"] {
  --white: #070b18;
  --off: #0d1326;
  --text: #d8e3f7;
  --text-l: #9fb0ca;
  --text-m: #c3d0e4;
  --text-main: #f6f9ff;
  --navy-d: #f8fbff;
  --navy-dd: #060914;
  --border: rgba(148,163,184,.22);
  --bg-primary: #070b18;
  --bg-secondary: #0b1224;
  --bg-card: rgba(16,23,42,.92);
  --text-primary: #f6f9ff;
  --text-secondary: #c3d0e4;
  --text-muted: #8190aa;
  --border-card: rgba(148,163,184,.22);
}

html[data-theme="dark"] body {
  background: #070b18 !important;
  color: #d8e3f7 !important;
}

html[data-theme="dark"] .header,
html[data-theme="dark"] header {
  background: rgba(6,9,20,.88) !important;
  border-bottom-color: rgba(124,58,237,.25) !important;
  box-shadow: 0 18px 42px rgba(0,0,0,.35) !important;
}

html[data-theme="dark"] .nav-list a,
html[data-theme="dark"] .menu a,
html[data-theme="dark"] nav a {
  color: #dbe7ff !important;
}

html[data-theme="dark"] .header-search,
html[data-theme="dark"] .h-search,
html[data-theme="dark"] .hero-search,
html[data-theme="dark"] .blog-search {
  background: rgba(15,23,42,.84) !important;
  border-color: rgba(124,58,237,.28) !important;
  color: #fff !important;
}

html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea {
  background-color: rgba(15,23,42,.9);
  color: #f8fbff;
  border-color: rgba(148,163,184,.28);
}

html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder {
  color: rgba(219,231,255,.55);
}

html[data-theme="dark"] .main,
html[data-theme="dark"] .main-layout,
html[data-theme="dark"] .site-main,
html[data-theme="dark"] .blog-page,
html[data-theme="dark"] .ph-single-v2,
html[data-theme="dark"] .shop-page {
  background: #070b18 !important;
  color: #d8e3f7 !important;
}

html[data-theme="dark"] .art-card,
html[data-theme="dark"] .art-card-big,
html[data-theme="dark"] .art-card-h,
html[data-theme="dark"] .rel-card,
html[data-theme="dark"] .post-card,
html[data-theme="dark"] .product-card,
html[data-theme="dark"] .cat-card,
html[data-theme="dark"] .sb-box,
html[data-theme="dark"] .shop-sidebar,
html[data-theme="dark"] .woocommerce-MyAccount-content,
html[data-theme="dark"] .woocommerce-MyAccount-navigation {
  background: rgba(15,23,42,.9) !important;
  border-color: rgba(124,58,237,.22) !important;
  color: #d8e3f7 !important;
  box-shadow: 0 18px 52px rgba(0,0,0,.28) !important;
}

html[data-theme="dark"] .art-card h2,
html[data-theme="dark"] .art-card h3,
html[data-theme="dark"] .art-card-big h2,
html[data-theme="dark"] .art-card-big h3,
html[data-theme="dark"] .art-card-h h2,
html[data-theme="dark"] .art-card-h h3,
html[data-theme="dark"] .rel-card h3,
html[data-theme="dark"] .product-name,
html[data-theme="dark"] .post-title,
html[data-theme="dark"] .prose h1,
html[data-theme="dark"] .prose h2,
html[data-theme="dark"] .prose h3,
html[data-theme="dark"] .section-title {
  color: #f8fbff !important;
  -webkit-text-fill-color: #f8fbff !important;
}

html[data-theme="dark"] .prose p,
html[data-theme="dark"] .art-body p,
html[data-theme="dark"] .post-excerpt,
html[data-theme="dark"] .art-meta,
html[data-theme="dark"] .rel-meta,
html[data-theme="dark"] .toc-list li a {
  color: #b8c6de !important;
}

html[data-theme="dark"] .filters-bar,
html[data-theme="dark"] .filter-chip,
html[data-theme="dark"] .filter-btn,
html[data-theme="dark"] .sort-select {
  background: rgba(15,23,42,.9) !important;
  border-color: rgba(124,58,237,.25) !important;
  color: #dbe7ff !important;
}

html[data-theme="dark"] .sb-wa {
  background: linear-gradient(135deg, rgba(20,83,45,.95), rgba(6,78,59,.92)) !important;
  border-color: rgba(74,222,128,.35) !important;
}

html[data-theme="dark"] .sb-wa h3,
html[data-theme="dark"] .sb-wa p {
  color: #dcfce7 !important;
}

html[data-theme="dark"] .prose blockquote,
html[data-theme="dark"] .single-content blockquote,
html[data-theme="dark"] .entry-content blockquote,
html[data-theme="dark"] .wp-block-quote {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 100% 0%, rgba(124,58,237,.26), transparent 16rem),
    linear-gradient(135deg, rgba(15,23,42,.96), rgba(30,27,75,.9)) !important;
  border: 1px solid rgba(124,58,237,.28) !important;
  border-left: 4px solid #24c6ff !important;
  border-radius: 16px !important;
  box-shadow: 0 22px 60px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.08) !important;
}

html[data-theme="dark"] .prose blockquote::before,
html[data-theme="dark"] .single-content blockquote::before,
html[data-theme="dark"] .entry-content blockquote::before,
html[data-theme="dark"] .wp-block-quote::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(135deg, rgba(36,198,255,.12), transparent 42%, rgba(236,72,153,.12));
}

html[data-theme="dark"] .prose blockquote p,
html[data-theme="dark"] .single-content blockquote p,
html[data-theme="dark"] .entry-content blockquote p,
html[data-theme="dark"] .wp-block-quote p,
html[data-theme="dark"] .wp-block-quote cite {
  position: relative;
  z-index: 1;
  color: #dbe7ff !important;
  -webkit-text-fill-color: #dbe7ff !important;
}

/* Header mobile corrigido */
@media (max-width: 900px) {
  .header {
    background: rgba(255,255,255,.94) !important;
  }

  html[data-theme="dark"] .header {
    background: rgba(6,9,20,.94) !important;
  }

  .header .container {
    width: 100%;
    padding-inline: 12px !important;
  }

  .header-main {
    min-height: 82px !important;
    padding: 10px 0 !important;
  }

  .header .logo.has-custom-logo .logo-image {
    max-width: min(66vw, 300px) !important;
    max-height: 72px !important;
  }

  .header .logo.has-custom-logo .logo-icon {
    max-width: min(66vw, 300px) !important;
  }

  .header-actions {
    flex-shrink: 0;
    gap: 8px !important;
  }

  .mobile-menu-toggle {
    width: 46px !important;
    height: 46px !important;
    display: inline-flex !important;
    color: #fff !important;
    background: linear-gradient(135deg, #24c6ff, #7c3aed 55%, #ec4899) !important;
    border: 1px solid rgba(255,255,255,.42) !important;
    box-shadow: 0 12px 28px rgba(124,58,237,.28) !important;
  }

  .mobile-menu-toggle span[aria-hidden="true"] {
    width: 22px !important;
    height: 2px !important;
    background: #fff !important;
  }

  .mobile-nav-panel {
    width: min(92vw, 380px) !important;
    background:
      radial-gradient(circle at 0 0, rgba(36,198,255,.22), transparent 18rem),
      radial-gradient(circle at 100% 8%, rgba(236,72,153,.18), transparent 16rem),
      linear-gradient(180deg, #070b18, #11142b 54%, #1e1b4b) !important;
    color: #fff !important;
    border-right: 1px solid rgba(124,58,237,.34);
  }

  .mobile-nav-logo.has-custom-logo .logo-image {
    max-width: 230px !important;
    max-height: 68px !important;
    filter: brightness(0) invert(1) !important;
  }

  .mobile-menu-close {
    color: #fff !important;
    background: rgba(255,255,255,.12) !important;
    border: 1px solid rgba(255,255,255,.18) !important;
  }

  .mobile-nav-search {
    background: rgba(255,255,255,.08) !important;
    border-color: rgba(124,58,237,.34) !important;
  }

  .mobile-nav-panel .mobile-nav-menu {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    min-height: 1px !important;
    overflow-y: auto !important;
    padding: 8px 2px 12px 0 !important;
  }

  .mobile-nav-search input {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
  }

  .mobile-nav-list,
  .mobile-nav-list .sub-menu {
    display: grid !important;
    visibility: visible !important;
    opacity: 1 !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  .mobile-nav-list a {
    display: flex !important;
    min-height: 48px !important;
    color: #eef6ff !important;
    -webkit-text-fill-color: #eef6ff !important;
    background: rgba(255,255,255,.08) !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
  }

  .mobile-nav-list li {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .mobile-nav-list a:hover,
  .mobile-nav-list .current-menu-item > a {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    background: linear-gradient(135deg, rgba(36,198,255,.28), rgba(124,58,237,.32)) !important;
  }

  .mobile-nav-store,
  .mobile-nav-account {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
  }
}

@media (max-width: 420px) {
  .header .logo.has-custom-logo .logo-image {
    max-width: min(68vw, 260px) !important;
  }

  .mobile-menu-toggle {
    width: 42px !important;
    height: 42px !important;
  }
}

/* Tray mobile mais limpa */
@media (max-width: 900px) {
  .mobile-nav-panel {
    gap: 16px !important;
    padding: 22px 18px !important;
  }

  .mobile-nav-head {
    padding-bottom: 2px;
  }

  .mobile-nav-search {
    min-height: 52px !important;
    border-radius: 16px !important;
    margin-bottom: 6px;
  }

  .mobile-nav-panel .mobile-nav-menu {
    padding: 4px 0 18px !important;
  }

  .mobile-nav-list {
    gap: 9px !important;
  }

  .mobile-nav-list li {
    border: 0 !important;
  }

  .mobile-nav-list a {
    min-height: 54px !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    padding: 13px 16px !important;
    border-radius: 16px !important;
    font-size: 15px !important;
    line-height: 1.15 !important;
    background: rgba(255,255,255,.075) !important;
  }

  .mobile-nav-list a::before {
    width: 28px;
    height: 28px;
    display: inline-grid;
    place-items: center;
    flex: 0 0 auto;
    border-radius: 10px;
    background: linear-gradient(135deg, rgba(36,198,255,.28), rgba(124,58,237,.42));
    color: #fff;
    font-size: 14px;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.12);
  }

  .mobile-nav-list li:nth-child(1) a::before { content: "\2302"; }
  .mobile-nav-list li:nth-child(2) a::before { content: "\1F6D2"; }
  .mobile-nav-list li:nth-child(3) a::before { content: "\2726"; }
  .mobile-nav-list li:nth-child(4) a::before { content: "\270D"; }
  .mobile-nav-list li:nth-child(5) a::before { content: "\24D8"; }
  .mobile-nav-list li:nth-child(6) a::before { content: "\260E"; }

  .mobile-nav-list .menu-item-has-children > a::after,
  .mobile-nav-list a::after,
  .mobile-nav-list .sub-menu {
    display: none !important;
  }

  .mobile-nav-actions {
    margin-top: 0 !important;
    padding-top: 18px !important;
  }
}

/* Mobile: listagem do blog em card vertical */
@media (max-width: 640px) {
  body.bt-blog-page .ph-blog-v2 .main {
    padding-inline: 16px !important;
  }

  body.bt-blog-page .ph-blog-v2 .articles-grid {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  body.bt-blog-page .ph-blog-v2 .art-card,
  body.bt-blog-page .ph-blog-v2 .art-card-big,
  body.bt-blog-page .ph-blog-v2 .art-card-h {
    grid-column: 1 / -1 !important;
    display: flex !important;
    flex-direction: column !important;
    border-radius: 22px !important;
    overflow: hidden !important;
  }

  body.bt-blog-page .ph-blog-v2 .art-card .thumb,
  body.bt-blog-page .ph-blog-v2 .art-card-big .thumb,
  body.bt-blog-page .ph-blog-v2 .art-card-h .thumb {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 16 / 10 !important;
    flex: 0 0 auto !important;
    font-size: 48px !important;
  }

  body.bt-blog-page .ph-blog-v2 .art-card .thumb img,
  body.bt-blog-page .ph-blog-v2 .art-card-big .thumb img,
  body.bt-blog-page .ph-blog-v2 .art-card-h .thumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
  }

  body.bt-blog-page .ph-blog-v2 .art-card .body,
  body.bt-blog-page .ph-blog-v2 .art-card-big .body,
  body.bt-blog-page .ph-blog-v2 .art-card-h .body {
    padding: 18px 18px 20px !important;
    min-height: auto !important;
  }

  body.bt-blog-page .ph-blog-v2 .art-title-text,
  body.bt-blog-page .ph-blog-v2 .art-card-big .art-title-text,
  body.bt-blog-page .ph-blog-v2 .art-card-h .art-title-text {
    font-size: 18px !important;
    line-height: 1.28 !important;
    margin-bottom: 8px !important;
  }

  body.bt-blog-page .ph-blog-v2 .art-excerpt {
    font-size: 14px !important;
    line-height: 1.55 !important;
    margin-bottom: 12px !important;
  }

  body.bt-blog-page .ph-blog-v2 .art-meta {
    gap: 10px !important;
    font-size: 12px !important;
  }
}

/* Legibilidade da busca no hero do blog */
body.bt-blog-page .ph-blog-v2 .hero-search-big {
  background: rgba(8,13,30,.68) !important;
  border-color: rgba(255,255,255,.26) !important;
  box-shadow: 0 18px 44px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.08) !important;
}

body.bt-blog-page .ph-blog-v2 .hero-search-big input {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

body.bt-blog-page .ph-blog-v2 .hero-search-big input::placeholder {
  color: rgba(255,255,255,.78) !important;
  opacity: 1 !important;
}

@media (max-width: 640px) {
  body.bt-blog-page .ph-blog-v2 .hero-search-big {
    padding-left: 18px !important;
  }

body.bt-blog-page .ph-blog-v2 .hero-search-big input {
    font-size: 14px !important;
  }
}

/* Busca v2 */
.search-page-v2 .search-hero {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 18% 22%, rgba(36,198,255,.24), transparent 22rem),
    radial-gradient(circle at 82% 14%, rgba(236,72,153,.22), transparent 22rem),
    linear-gradient(145deg, #050816, #111827 48%, #1e1b4b) !important;
  color: #fff;
  padding: 72px 0;
}

.search-hero-grid {
  position: absolute;
  inset: 0;
  opacity: .12;
  pointer-events: none;
  background-image: linear-gradient(rgba(255,255,255,.75) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.75) 1px, transparent 1px);
  background-size: 48px 48px;
}

.search-page-v2 .search-hero .container {
  position: relative;
  z-index: 1;
}

.search-kicker {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  margin-bottom: 14px;
  padding: 6px 14px;
  border-radius: 999px;
  color: #bff6ff;
  background: rgba(0,212,255,.12);
  border: 1px solid rgba(0,212,255,.28);
  font-family: var(--fh);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.search-page-v2 .search-hero h1 {
  max-width: 860px;
  color: #fff;
  font-family: var(--fh);
  font-size: clamp(34px, 5vw, 64px);
  line-height: 1.04;
  margin-bottom: 14px;
}

.search-page-v2 .search-hero p {
  max-width: 650px;
  color: rgba(255,255,255,.78);
  font-size: 17px;
  margin-bottom: 28px;
}

.search-hero-form,
.search-empty-form {
  display: flex;
  align-items: center;
  gap: 8px;
  max-width: 680px;
  padding: 8px;
  border-radius: 22px;
  background: rgba(255,255,255,.1);
  border: 1px solid rgba(255,255,255,.2);
  box-shadow: 0 24px 60px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.08);
}

.search-hero-form input,
.search-empty-form input {
  width: 100%;
  min-width: 0;
  border: 0 !important;
  background: transparent !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  padding: 0 14px !important;
  box-shadow: none !important;
}

.search-hero-form input::placeholder,
.search-empty-form input::placeholder {
  color: rgba(255,255,255,.7) !important;
}

.search-hero-form button,
.search-empty-form button,
.search-empty-actions a,
.search-result-link {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-height: 48px;
  padding: 0 22px;
  border-radius: 16px;
  color: #fff !important;
  font-family: var(--fh);
  font-weight: 900;
  background: linear-gradient(135deg, #24c6ff, #7c3aed 55%, #ec4899);
  box-shadow: 0 16px 34px rgba(124,58,237,.28);
  white-space: nowrap;
}

.search-results-section {
  background: linear-gradient(180deg, #fff, #f5f7ff);
}

.search-page-v2 > .search-results-section:first-of-type {
  padding-top: 72px;
}

.search-results-section .container {
  display: grid;
  gap: 18px;
}

.search-result-card {
  display: grid;
  grid-template-columns: 220px 1fr;
  overflow: hidden;
  border-radius: 22px;
  background: rgba(255,255,255,.9);
  border: 1px solid rgba(124,58,237,.14);
  box-shadow: 0 18px 50px rgba(15,23,42,.08);
}

.search-result-thumb {
  min-height: 180px;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: linear-gradient(135deg, #0f172a, #312e81);
  color: #fff;
  font-size: 42px;
}

.search-result-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.search-result-body {
  padding: 22px;
}

.search-result-type {
  display: inline-flex;
  margin-bottom: 10px;
  padding: 5px 12px;
  border-radius: 999px;
  background: rgba(124,58,237,.1);
  color: #5b21b6;
  font-family: var(--fh);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.search-result-body h2 {
  margin-bottom: 8px;
  font-family: var(--fh);
  font-size: 22px;
  line-height: 1.2;
}

.search-result-body h2 a {
  color: #101426;
}

.search-result-body p {
  color: #53617d;
  margin-bottom: 14px;
}

.search-empty-card {
  position: relative;
  overflow: hidden;
  max-width: 880px;
  margin: 0 auto;
  padding: 44px;
  border-radius: 28px;
  text-align: center;
  background:
    radial-gradient(circle at 100% 0, rgba(36,198,255,.18), transparent 18rem),
    linear-gradient(135deg, #0f172a, #1e1b4b 55%, #312e81);
  color: #fff;
  box-shadow: 0 30px 90px rgba(15,23,42,.25);
}

.search-empty-orb {
  width: 70px;
  height: 70px;
  display: grid;
  place-items: center;
  margin: 0 auto 18px;
  border-radius: 22px;
  background: linear-gradient(135deg, #24c6ff, #7c3aed, #ec4899);
  font-family: var(--fh);
  font-size: 32px;
  font-weight: 900;
}

.search-empty-card h2 {
  max-width: 900px;
  margin: 0 auto 12px;
  color: #fff;
  font-family: var(--fh);
  font-size: clamp(28px, 2.7vw, 40px);
  line-height: 1.14;
}

.search-empty-card p {
  max-width: 650px;
  margin: 0 auto 24px;
  color: rgba(255,255,255,.78);
}

.search-empty-form {
  margin: 0 auto 18px;
}

.search-suggestions,
.search-empty-actions {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px;
}

.search-suggestions {
  margin-bottom: 22px;
}

.search-suggestions a {
  padding: 8px 14px;
  border-radius: 999px;
  color: #dbeafe;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.13);
  font-weight: 800;
}

html[data-theme="dark"] .search-results-section {
  background: #070b18;
}

html[data-theme="dark"] .search-result-card {
  background: rgba(15,23,42,.9);
  border-color: rgba(124,58,237,.22);
}

html[data-theme="dark"] .search-result-body h2 a {
  color: #f8fbff;
}

html[data-theme="dark"] .search-result-body p {
  color: #b8c6de;
}

/* Login/Minha conta - visual PromptHub/BonsTutoriais */
body.woocommerce-account:not(.logged-in) .page-hero {
  display: none;
}

body.woocommerce-account:not(.logged-in) .single-card.single-content {
  max-width: none !important;
  padding: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

body.woocommerce-account:not(.logged-in) .eduativa-auth-shell {
  display: grid !important;
  grid-template-columns: minmax(0, .95fr) minmax(360px, 1.05fr) !important;
  gap: 28px !important;
  max-width: 1180px;
  margin: 48px auto 72px;
  padding: 18px;
  border-radius: 32px;
  background:
    radial-gradient(circle at 0 0, rgba(36,198,255,.16), transparent 20rem),
    linear-gradient(135deg, rgba(255,255,255,.82), rgba(245,247,255,.92));
  border: 1px solid rgba(124,58,237,.14);
  box-shadow: 0 34px 100px rgba(15,23,42,.12);
}

body.woocommerce-account:not(.logged-in) .eduativa-auth-aside {
  position: relative;
  overflow: hidden;
  min-height: 560px;
  padding: 42px;
  border-radius: 26px;
  background:
    radial-gradient(circle at 15% 20%, rgba(36,198,255,.3), transparent 16rem),
    radial-gradient(circle at 100% 0, rgba(236,72,153,.24), transparent 18rem),
    linear-gradient(145deg, #050816, #111827 48%, #1e1b4b);
  color: #fff;
}

body.woocommerce-account:not(.logged-in) .eduativa-auth-aside::after {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .14;
  background-image: linear-gradient(rgba(255,255,255,.7) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.7) 1px, transparent 1px);
  background-size: 46px 46px;
  pointer-events: none;
}

body.woocommerce-account:not(.logged-in) .eduativa-auth-aside > * {
  position: relative;
  z-index: 1;
}

body.woocommerce-account:not(.logged-in) .eduativa-auth-aside h2 {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-family: var(--fh);
  font-size: clamp(34px, 4vw, 56px);
  line-height: 1.03;
  margin: 18px 0;
}

body.woocommerce-account:not(.logged-in) .eduativa-auth-aside h2 span {
  background: linear-gradient(90deg, #24c6ff, #a78bfa, #ec4899);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

body.woocommerce-account:not(.logged-in) .eduativa-auth-aside p,
body.woocommerce-account:not(.logged-in) .eduativa-auth-aside li {
  color: rgba(255,255,255,.78);
}

body.woocommerce-account:not(.logged-in) .eduativa-auth-aside ul {
  display: grid;
  gap: 12px;
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
}

body.woocommerce-account:not(.logged-in) .eduativa-auth-aside li {
  padding: 13px 14px;
  border-radius: 16px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.12);
}

body.woocommerce-account:not(.logged-in) .eduativa-auth-forms {
  display: grid;
  gap: 18px;
}

body.woocommerce-account:not(.logged-in) .eduativa-auth-panel {
  padding: 30px !important;
  border-radius: 26px !important;
  background: rgba(255,255,255,.92) !important;
  border: 1px solid rgba(124,58,237,.14) !important;
  box-shadow: 0 22px 60px rgba(15,23,42,.08) !important;
}

body.woocommerce-account:not(.logged-in) .eduativa-auth-panel h2 {
  color: #101426 !important;
  -webkit-text-fill-color: #101426 !important;
  font-family: var(--fh);
  font-size: 28px;
  margin-bottom: 18px;
}

body.woocommerce-account:not(.logged-in) .eduativa-auth-panel input.input-text {
  min-height: 52px;
  border-radius: 16px !important;
  background: #f8fbff !important;
  border-color: rgba(124,58,237,.18) !important;
}

body.woocommerce-account:not(.logged-in) .eduativa-auth-panel .button {
  min-height: 52px;
  border-radius: 16px !important;
  background: linear-gradient(135deg, #24c6ff, #7c3aed 55%, #ec4899) !important;
  box-shadow: 0 16px 34px rgba(124,58,237,.28) !important;
}

html[data-theme="dark"] body.woocommerce-account:not(.logged-in) .eduativa-auth-shell {
  background: linear-gradient(135deg, rgba(15,23,42,.92), rgba(17,24,39,.94));
}

html[data-theme="dark"] body.woocommerce-account:not(.logged-in) .eduativa-auth-panel {
  background: rgba(15,23,42,.92) !important;
  border-color: rgba(124,58,237,.22) !important;
}

html[data-theme="dark"] body.woocommerce-account:not(.logged-in) .eduativa-auth-panel h2 {
  color: #f8fbff !important;
  -webkit-text-fill-color: #f8fbff !important;
}

@media (max-width: 900px) {
  body.woocommerce-account:not(.logged-in) .eduativa-auth-shell {
    grid-template-columns: 1fr !important;
    margin: 24px 14px 48px;
  }

  body.woocommerce-account:not(.logged-in) .eduativa-auth-aside {
    min-height: auto;
    padding: 30px 24px;
  }

  .search-result-card {
    grid-template-columns: 1fr;
  }

  .search-result-thumb {
    aspect-ratio: 16 / 9;
  }
}

@media (max-width: 560px) {
  .search-hero-form,
  .search-empty-form {
    flex-direction: column;
    align-items: stretch;
    border-radius: 20px;
  }

  .search-empty-card {
    padding: 30px 20px;
  }
}
/* Page template v2 cleanup */
body.page .page-hero {
  position: relative;
  overflow: hidden;
  padding: 70px 0 62px;
  background:
    radial-gradient(circle at 18% 22%, rgba(0, 212, 255, .22), transparent 26rem),
    radial-gradient(circle at 84% 18%, rgba(255, 61, 154, .2), transparent 28rem),
    radial-gradient(circle at 50% 100%, rgba(124, 58, 237, .34), transparent 34rem),
    linear-gradient(145deg, #050816 0%, #111827 48%, #1e1b4b 100%);
}

body.page .page-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .22;
  background-image: linear-gradient(120deg, transparent 0 35%, rgba(255,255,255,.18) 36%, transparent 37% 100%);
  background-size: 140px 140px;
  mix-blend-mode: screen;
}

body.page .page-hero-grid {
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .08;
  background-image:
    linear-gradient(rgba(255,255,255,.9) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.9) 1px, transparent 1px);
  background-size: 54px 54px;
}

body.page .page-hero .container {
  position: relative;
  z-index: 1;
}

body.page .page-breadcrumb {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  width: auto;
  max-width: 100%;
  margin: 0 0 26px;
  padding: 8px 14px;
  border: 1px solid rgba(0, 212, 255, .28);
  border-radius: 999px;
  background: rgba(0, 212, 255, .1);
  box-shadow: inset 0 0 20px rgba(0, 212, 255, .08);
  color: rgba(255,255,255,.72);
  font: 800 12px/1 var(--fh);
}

body.page .page-breadcrumb a,
body.page .page-breadcrumb span {
  color: inherit;
}

body.page .page-breadcrumb a:hover {
  color: #fff;
}

body.page .page-title {
  max-width: 820px;
  margin: 0;
  color: #fff;
  font-family: var(--fh);
  font-size: clamp(34px, 4.2vw, 56px);
  font-weight: 900;
  line-height: 1.04;
  letter-spacing: 0;
  text-shadow: 0 18px 48px rgba(0,0,0,.28);
}

body.page .page-content-section {
  padding: 64px 0 86px;
  background:
    radial-gradient(circle at 12% 20%, rgba(0, 212, 255, .07), transparent 22rem),
    radial-gradient(circle at 90% 10%, rgba(124, 58, 237, .08), transparent 24rem),
    #fff;
}

body.page .page-article-layout {
  grid-template-columns: 340px minmax(0, 1fr);
  gap: 34px;
  align-items: start;
}

body.page .page-rich-content {
  padding: clamp(28px, 4vw, 48px);
  border: 1px solid rgba(124, 58, 237, .16);
  border-radius: 24px;
  background:
    linear-gradient(#fff, #fff) padding-box,
    linear-gradient(135deg, rgba(0, 212, 255, .42), rgba(124, 58, 237, .28), rgba(255, 61, 154, .28)) border-box;
  box-shadow: 0 24px 70px rgba(56, 59, 103, .08);
}

body.page .page-toc-sidebar {
  position: static;
  top: 122px;
  min-width: 0;
  width: 100%;
}

body.page .page-toc {
  overflow: hidden;
  padding: 0;
  width: 100%;
  border-radius: var(--r-lg);
  border: 1.5px solid var(--border);
  background: var(--white);
  box-shadow: 0 18px 52px rgba(56, 59, 103, .08);
}

body.page .page-toc-title {
  margin: 0;
  padding: 14px 20px;
  background: linear-gradient(135deg,var(--navy-d),var(--navy-dd));
  color: #fff !important;
  font: 800 14px/1.2 var(--fh);
  letter-spacing: 0;
  text-transform: none;
}

body.page .page-toc ol {
  display: block;
  margin: 0;
  padding: 0;
  list-style: none;
  background: var(--white);
}

body.page .page-toc a {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 0;
  padding: 12px 18px;
  border: 0;
  border-bottom: 1px solid var(--border);
  border-radius: 0;
  color: var(--text-m);
  font: 500 13px/1.4 var(--fb);
  transition: background .15s, color .15s;
  white-space: normal;
  word-break: normal;
  overflow-wrap: break-word;
}

body.page .page-toc a::before {
  display: none;
}

body.page .page-toc ol {
  counter-reset: none;
}

body.page .page-toc a:hover,
body.page .page-toc a.active {
  background: var(--purple-xl);
  color: var(--purple);
  font-weight: 700;
}

body.page .page-toc a .toc-n {
  width: 22px;
  height: 22px;
  min-width: 22px;
  flex: 0 0 22px;
  border-radius: 6px;
  background: var(--off);
  border: 1px solid var(--border);
  color: var(--text-l);
  font: 700 11px/1 var(--fh);
}

body.page .page-toc a span {
  display: block;
  flex: 1 1 auto;
  min-width: 0;
  max-width: 100%;
  overflow: visible;
  text-align: left;
}

body.page .page-rich-content {
  min-width: 0;
}

body.page .page-toc a.active .toc-n,
body.page .page-toc a:hover .toc-n {
  background: linear-gradient(135deg,var(--purple),var(--purple-d));
  border-color: transparent;
  color: #fff;
}

body.page .page-rich-content h2 {
  position: relative;
  margin: 42px 0 18px;
  padding-bottom: 14px;
  color: #0f1427;
  font-family: var(--fh);
  font-size: clamp(26px, 3vw, 38px);
  font-weight: 950;
  line-height: 1.14;
  letter-spacing: 0;
}

body.page .page-rich-content h2::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: min(180px, 38vw);
  height: 4px;
  border-radius: 999px;
  background: linear-gradient(90deg, #00d4ff, #7c3aed, #ff3d9a, #00d4ff);
  background-size: 240% 100%;
  animation: btPageLineFlow 3.4s linear infinite;
}

body.page .page-rich-content h2::after {
  display: none;
}

body.page .page-rich-content p,
body.page .page-rich-content li {
  color: #50617c;
  font-size: 1.08rem;
  line-height: 1.82;
}

body.page .page-rich-content ul,
body.page .page-rich-content ol {
  display: grid;
  gap: 12px;
  margin: 22px 0;
  padding: 0;
  list-style: none;
}

body.page .page-rich-content ul li,
body.page .page-rich-content ol li {
  position: relative;
  padding-left: 32px;
}

body.page .page-rich-content ul li::before,
body.page .page-rich-content ol li::before {
  content: "";
  position: absolute;
  left: 2px;
  top: .72em;
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: linear-gradient(135deg, #00d4ff, #7c3aed 58%, #ff3d9a);
  box-shadow: 0 0 0 6px rgba(124, 58, 237, .08), 0 8px 20px rgba(124, 58, 237, .2);
}

@keyframes btPageLineFlow {
  from { background-position: 0% 50%; }
  to { background-position: 240% 50%; }
}

html[data-theme="dark"] body.page .page-content-section {
  background:
    radial-gradient(circle at 12% 20%, rgba(0, 212, 255, .08), transparent 22rem),
    radial-gradient(circle at 90% 10%, rgba(124, 58, 237, .11), transparent 24rem),
    #070b18;
}

html[data-theme="dark"] body.page .page-rich-content {
  background: rgba(15, 23, 42, .9);
  border-color: rgba(124, 58, 237, .24);
  box-shadow: 0 24px 70px rgba(0,0,0,.24);
}

html[data-theme="dark"] body.page .page-toc {
  border-color: rgba(124, 58, 237, .24);
  background: transparent;
  box-shadow: 0 24px 70px rgba(0,0,0,.24);
}

html[data-theme="dark"] body.page .page-toc ol {
  background: rgba(15, 23, 42, .9);
}

html[data-theme="dark"] body.page .page-rich-content h2 {
  color: #f8fbff;
}

html[data-theme="dark"] body.page .page-rich-content p,
html[data-theme="dark"] body.page .page-rich-content li {
  color: #c3d0e4;
}

html[data-theme="dark"] body.page .page-toc a {
  color: #c3d0e4;
}

html[data-theme="dark"] body.page .page-toc a:hover,
html[data-theme="dark"] body.page .page-toc a.active {
  color: #fff;
  background: rgba(124, 58, 237, .18);
}

@media (max-width: 1180px) {
  body.page .page-hero {
    padding: 64px 0 56px;
  }

  body.page .page-article-layout {
    display: block;
  }

  body.page .page-toc-sidebar {
    position: static;
    margin-bottom: 20px;
  }

  body.page .page-toc-toggle {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    padding: 14px 16px;
    border: 1px solid rgba(124, 58, 237, .2);
    border-radius: 16px;
    background: #fff;
    color: #151743;
    font: 900 14px/1 var(--fh);
  }

  body.page .page-toc {
    display: none;
    margin-top: 10px;
  }

  body.page .page-toc.is-open {
    display: block;
  }
}

/* Page TOC uses the same visual language as the blog/sidebar boxes */
body.page .page-toc.sb-box {
  display: block !important;
  max-width: 100%;
  overflow: hidden;
  padding: 0 !important;
  background: var(--white) !important;
}

body.page .page-toc.sb-box::before {
  display: none !important;
}

body.page .page-toc.sb-box .page-toc-title {
  display: flex !important;
  width: 100%;
  box-sizing: border-box;
  position: static;
}

body.page .page-toc.sb-box .toc-list li {
  margin: 0;
  padding: 0;
}

body.page .page-toc.sb-box .toc-list {
  display: block !important;
  width: 100%;
  margin: 0 !important;
  padding: 0 !important;
}

body.page .page-toc.sb-box .toc-list li::before {
  display: none !important;
}

body.page .page-toc.sb-box .toc-list li a {
  width: 100%;
  box-sizing: border-box;
}

body.page .page-toc.sb-box .toc-list li a span {
  white-space: normal;
}
/* Archive/category listing v2 */
.bt-archive-v2 .archive-hero {
  position: relative;
  overflow: hidden;
  padding: 72px 0 68px;
  background:
    radial-gradient(circle at 18% 22%, rgba(0, 212, 255, .22), transparent 26rem),
    radial-gradient(circle at 84% 18%, rgba(255, 61, 154, .2), transparent 28rem),
    radial-gradient(circle at 50% 100%, rgba(124, 58, 237, .34), transparent 34rem),
    linear-gradient(145deg, #050816 0%, #111827 48%, #1e1b4b 100%);
}

.bt-archive-v2 .archive-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .22;
  background-image: linear-gradient(120deg, transparent 0 35%, rgba(255,255,255,.18) 36%, transparent 37% 100%);
  background-size: 140px 140px;
  mix-blend-mode: screen;
}

.bt-archive-v2 .archive-hero-grid {
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .08;
  background-image:
    linear-gradient(rgba(255,255,255,.9) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.9) 1px, transparent 1px);
  background-size: 54px 54px;
}

.bt-archive-v2 .archive-hero .container {
  position: relative;
  z-index: 1;
}

.bt-archive-v2 .archive-breadcrumb {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  width: auto;
  margin: 0 0 28px;
  padding: 8px 14px;
  border: 1px solid rgba(0, 212, 255, .28);
  border-radius: 999px;
  background: rgba(0, 212, 255, .1);
  color: rgba(255,255,255,.72);
  font: 800 12px/1 var(--fh);
}

.bt-archive-v2 .archive-breadcrumb a,
.bt-archive-v2 .archive-breadcrumb span {
  color: inherit;
}

.bt-archive-v2 .archive-hero h1 {
  max-width: 880px;
  margin: 0;
  color: #fff;
  font-family: var(--fh);
  font-size: clamp(36px, 4.4vw, 62px);
  font-weight: 920;
  line-height: 1.04;
  letter-spacing: 0;
}

.bt-archive-v2 .archive-hero .hero-copy {
  max-width: 720px;
  margin: 18px 0 0;
  color: rgba(255,255,255,.68);
  font-size: 17px;
  line-height: 1.65;
}

.bt-archive-v2 .archive-listing-section {
  padding: 64px 0 86px;
  background:
    radial-gradient(circle at 12% 20%, rgba(0, 212, 255, .06), transparent 22rem),
    radial-gradient(circle at 90% 10%, rgba(124, 58, 237, .08), transparent 24rem),
    linear-gradient(180deg, #fff, #f7f8ff);
}

.bt-archive-v2 .archive-post-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 22px;
}

.bt-archive-v2 .post-card {
  overflow: hidden;
  border: 1px solid rgba(124,58,237,.14);
  border-radius: 20px;
  background: rgba(255,255,255,.9);
  box-shadow: 0 18px 48px rgba(15,23,42,.08);
  backdrop-filter: blur(10px);
}

.bt-archive-v2 .post-card::before {
  display: none !important;
}

.bt-archive-v2 .post-thumb {
  height: 220px;
  aspect-ratio: auto;
  background: linear-gradient(135deg, rgba(0,212,255,.12), rgba(124,58,237,.1));
}

.bt-archive-v2 .post-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.bt-archive-v2 .post-body {
  padding: 20px 20px 22px;
}

.bt-archive-v2 .post-cat {
  display: inline-flex;
  align-items: center;
  width: auto;
  max-width: 100%;
  min-height: 24px;
  margin: 0 0 10px;
  padding: 5px 11px;
  border: 1px solid rgba(0, 212, 255, .35);
  border-radius: 999px;
  background: rgba(0, 212, 255, .12);
  color: #2563eb;
  font: 850 10px/1 var(--fh);
  letter-spacing: .06em;
  text-transform: uppercase;
  white-space: normal;
  box-shadow: none;
}

.bt-archive-v2 .post-title {
  margin: 0 0 10px;
  font-size: 20px;
  line-height: 1.16;
}

.bt-archive-v2 .post-title a {
  color: #101426;
}

.bt-archive-v2 .post-excerpt {
  color: #5b6b86;
  font-size: 14px;
  line-height: 1.62;
}

.bt-archive-v2 .post-footer {
  margin-top: 18px;
}

.bt-archive-v2.is-category-listing .post-body {
  padding-top: 22px;
}

.bt-archive-v2.is-category-listing .post-cat,
.bt-archive-v2.is-category-listing .post-footer {
  display: none;
}

/* 404 */
.error-404-page {
  background: #f7f9ff;
}

.error-404-hero {
  position: relative;
  overflow: hidden;
  padding: 74px 0 82px;
  color: #fff;
  background:
    radial-gradient(circle at 12% 18%, rgba(0, 212, 255, .26), transparent 24rem),
    radial-gradient(circle at 82% 16%, rgba(255, 61, 154, .22), transparent 28rem),
    radial-gradient(circle at 50% 100%, rgba(124, 58, 237, .36), transparent 34rem),
    linear-gradient(135deg, #050816 0%, #111827 46%, #271449 100%);
}

.error-404-grid {
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .1;
  background-image:
    linear-gradient(rgba(255,255,255,.9) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.9) 1px, transparent 1px);
  background-size: 56px 56px;
  mask-image: linear-gradient(to bottom, #000, transparent 86%);
}

.error-404-shell {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 420px);
  gap: 48px;
  align-items: center;
}

.error-404-kicker,
.error-404-section-kicker {
  display: inline-flex;
  margin-bottom: 16px;
  color: #00d4ff;
  font: 900 12px/1 var(--fh);
  letter-spacing: .16em;
  text-transform: uppercase;
}

.error-404-copy h1 {
  max-width: 780px;
  margin: 0;
  font-family: var(--fh);
  font-size: clamp(42px, 6vw, 84px);
  font-weight: 920;
  line-height: .98;
  letter-spacing: 0;
}

.error-404-copy p {
  max-width: 620px;
  margin: 22px 0 0;
  color: rgba(255,255,255,.72);
  font-size: 18px;
  line-height: 1.65;
}

.error-404-search {
  display: flex;
  max-width: 680px;
  margin-top: 32px;
  padding: 8px;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 24px;
  background: rgba(255,255,255,.1);
  box-shadow: 0 24px 80px rgba(0,0,0,.18);
  backdrop-filter: blur(14px);
}

.error-404-search input {
  flex: 1;
  min-width: 0;
  border: 0;
  background: transparent;
  color: #fff;
  font: 700 15px/1.2 var(--fb);
  outline: 0;
  padding: 0 16px;
}

.error-404-search input::placeholder {
  color: rgba(255,255,255,.58);
}

.error-404-search button,
.error-404-actions a {
  border: 0;
  border-radius: 16px;
  background: linear-gradient(135deg, #00d4ff, #7c3aed 52%, #ff3d9a);
  color: #fff;
  cursor: pointer;
  font: 900 14px/1 var(--fh);
  padding: 15px 22px;
  box-shadow: 0 18px 36px rgba(124,58,237,.32);
}

.error-404-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 22px;
}

.error-404-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  text-decoration: none;
}

.error-404-actions a:not(.error-404-primary) {
  background: rgba(255,255,255,.1);
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: none;
}

.error-404-panel {
  position: relative;
  min-height: 360px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 28px;
  background: rgba(255,255,255,.1);
  box-shadow: 0 28px 90px rgba(0,0,0,.26);
  backdrop-filter: blur(16px);
}

.error-404-code {
  position: relative;
  z-index: 1;
  font-family: var(--fh);
  font-size: clamp(88px, 12vw, 156px);
  font-weight: 950;
  line-height: 1;
  color: #fff;
  text-shadow: 0 24px 70px rgba(0,0,0,.36);
}

.error-404-panel p {
  position: absolute;
  bottom: 34px;
  left: 32px;
  right: 32px;
  margin: 0;
  color: rgba(255,255,255,.7);
  font: 900 13px/1 var(--fh);
  letter-spacing: .12em;
  text-align: center;
  text-transform: uppercase;
}

.error-404-orbit {
  position: absolute;
  inset: 46px;
  border: 1px solid rgba(0,212,255,.22);
  border-radius: 999px;
}

.error-404-orbit span {
  position: absolute;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #00d4ff;
  box-shadow: 0 0 24px rgba(0,212,255,.8);
}

.error-404-orbit span:nth-child(1) { left: 18%; top: 7%; }
.error-404-orbit span:nth-child(2) { right: 10%; top: 36%; background: #ff3d9a; box-shadow: 0 0 24px rgba(255,61,154,.75); }
.error-404-orbit span:nth-child(3) { left: 42%; bottom: -7px; background: #a78bfa; box-shadow: 0 0 24px rgba(167,139,250,.75); }

.error-404-content {
  padding: 56px 0 86px;
}

.error-404-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 420px);
  gap: 24px;
}

.error-404-card {
  border: 1px solid rgba(124,58,237,.14);
  border-radius: 24px;
  background: rgba(255,255,255,.9);
  box-shadow: 0 22px 60px rgba(15,23,42,.08);
  padding: 30px;
}

.error-404-card h2 {
  max-width: 640px;
  margin: 0;
  color: #101426;
  font-family: var(--fh);
  font-size: clamp(24px, 3vw, 36px);
  line-height: 1.08;
}

.error-404-categories {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 24px;
}

.error-404-categories a {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 9px 14px;
  border: 1px solid rgba(37,99,235,.18);
  border-radius: 999px;
  background: #eef5ff;
  color: #2452b8;
  font: 900 12px/1 var(--fh);
  letter-spacing: .04em;
  text-decoration: none;
  text-transform: uppercase;
}

.error-404-posts {
  display: grid;
  gap: 12px;
  margin-top: 22px;
}

.error-404-posts a {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  min-height: 72px;
  padding: 12px;
  border: 1px solid rgba(0, 122, 255, .12);
  border-radius: 18px;
  background: linear-gradient(135deg, #fff, #eef7ff);
  color: #1f2a44;
  text-decoration: none;
}

.error-404-posts span {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 16px;
  background: #e7f3ff;
  color: #2452b8;
  font: 900 16px/1 var(--fh);
}

.error-404-posts strong {
  font-size: 15px;
  line-height: 1.25;
}

@media (max-width: 860px) {
  .error-404-shell,
  .error-404-layout {
    grid-template-columns: 1fr;
  }

  .error-404-panel {
    min-height: 280px;
  }
}

@media (max-width: 560px) {
  .error-404-hero {
    padding: 56px 0 64px;
  }

  .error-404-search {
    flex-direction: column;
    border-radius: 20px;
  }

  .error-404-search input {
    min-height: 48px;
  }

  .error-404-search button,
  .error-404-actions a {
    width: 100%;
  }
}

@media (max-width: 1180px) {
  .bt-archive-v2 .archive-post-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .bt-archive-v2 .archive-post-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {
  .bt-archive-v2 .archive-post-grid {
    grid-template-columns: 1fr;
  }

  .bt-archive-v2 .archive-hero {
    padding: 58px 0 52px;
  }
}

@media (max-width: 768px) {
  body.single-post .art-content,
  body.single .art-content {
    padding-top: 45px;
  }

  .search-empty-card h2 {
    font-size: 30px;
    line-height: 1.32;
  }
}

.sb-wa-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-right: 4px;
  font-style: normal;
}

/* Performance pass: reduz custo de pintura/composicao em aparelhos antigos. */
*,
*::before,
*::after {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  mix-blend-mode: normal !important;
}

body::before {
  content: none !important;
  display: none !important;
}

main :where(h1, h2),
.site-main :where(h1, h2),
.single-content :where(h1, h2),
.woocommerce :where(h1, h2),
.shop-page .shop-glitch-title,
.shop-page .shop-glitch-title::before,
.shop-page .shop-glitch-title::after,
.ph-home-v2 .grad-text::before,
.ph-home-v2 .grad-text::after {
  animation: none !important;
  filter: none !important;
  text-shadow: none !important;
  transform: none !important;
}

.shop-page .shop-glitch-title::before,
.shop-page .shop-glitch-title::after,
.ph-home-v2 .grad-text::before,
.ph-home-v2 .grad-text::after {
  content: none !important;
  display: none !important;
}

.ph-home-v2 .hero::before,
.ph-home-v2 .hero::after,
.ph-home-v2 .hero-bg,
.ph-home-v2 .hero-grid,
.ph-home-v2 .hero-badge,
.ph-home-v2 .hero-highlight-word::after,
.ph-home-v2 .grad-text,
.ph-home-v2 .hero-search,
.ph-home-v2 .hero-search button::before,
.ph-home-v2 .hero-stats,
.ph-home-v2 .h-stat strong,
.shop-page .page-hero::before,
.shop-page .page-hero::after,
body.single-post .single-content h2::after,
body.single .single-content h2::after,
.prose h2::after {
  animation: none !important;
}

.ph-home-v2 .hero::before,
.ph-home-v2 .hero::after,
.shop-page .page-hero::before,
.shop-page .page-hero::after {
  filter: none !important;
}

.topbar,
.ph-home-v2 .grad-text,
.logo em,
.blog-hero-text h1 em,
.art-title em {
  animation: none !important;
}

.ph-home-v2 .cat-card,
.ph-blog-v2 .blog-hero-featured {
  border: 1px solid rgba(124, 58, 237, .18) !important;
  padding: 0 !important;
}

.ph-home-v2 .cat-card::before,
.ph-blog-v2 .blog-hero-featured::after {
  content: none !important;
  display: none !important;
  animation: none !important;
  background: none !important;
}

.product-card,
.post-card,
.category-card,
.hero-stats,
.blog-hero-featured,
.sb-box,
.art-card,
.art-card-big,
.art-card-h,
.cat-card,
.art,
.rel-card,
.prompt-box,
.newsletter-box,
.smart-banner,
.single-card,
.sidebar-box,
.shop-sidebar,
.shop-content,
.bt-archive-v2 .post-card,
.error-404-card,
.error-404-panel,
.error-404-search,
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .account-greeting-card,
.woocommerce-account .account-wishlist-card {
  box-shadow: 0 8px 18px rgba(15, 23, 42, .08) !important;
}

.btn-hdr,
.btn-wa,
.btn-banner,
.btn-copy,
.btn-store,
.load-more,
.blog-infinite-loader,
.hero-search button,
.hero-search-big button,
.nl-form button,
.error-404-search button,
.error-404-actions a,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce .button {
  box-shadow: 0 6px 14px rgba(124, 58, 237, .18) !important;
}

.cat-card:hover,
.art:hover,
.art-card:hover,
.art-card-big:hover,
.art-card-h:hover,
.rel-card:hover,
.post-card:hover,
.product-card:hover,
.category-card:hover,
.ph-home-v2 .cat-card:hover,
.smart-banner:hover,
.banner-listing:hover {
  box-shadow: 0 10px 22px rgba(15, 23, 42, .10) !important;
  transform: translateY(-2px) !important;
}

@media (max-width: 768px) {
  body::before,
  .hero::after,
  .page-hero::after,
  .blog-hero::after,
  .single-hero::after,
  .art-hero::after,
  .ph-home-v2 .hero::before,
  .ph-home-v2 .hero::after,
  .ph-home-v2 .hero-bg,
  .ph-home-v2 .hero-grid,
  .shop-page .page-hero::before,
  .shop-page .page-hero::after,
  .bt-archive-v2 .archive-hero::after,
  .bt-archive-v2 .archive-hero-grid,
  .error-404-grid,
  .error-404-orbit {
    content: none !important;
    display: none !important;
  }

  *,
  *::before,
  *::after {
    animation: none !important;
    transition-duration: .01ms !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    mix-blend-mode: normal !important;
    filter: none !important;
  }

  .product-card,
  .post-card,
  .category-card,
  .hero-stats,
  .blog-hero-featured,
  .sb-box,
  .art-card,
  .art-card-big,
  .art-card-h,
  .cat-card,
  .art,
  .rel-card,
  .prompt-box,
  .newsletter-box,
  .smart-banner,
  .single-card,
  .sidebar-box,
  .shop-sidebar,
  .shop-content,
  .bt-archive-v2 .post-card,
  .error-404-card,
  .error-404-panel,
  .error-404-search,
  .woocommerce-account .woocommerce-MyAccount-navigation,
  .woocommerce-account .account-greeting-card,
  .woocommerce-account .account-wishlist-card {
    box-shadow: 0 4px 10px rgba(15, 23, 42, .06) !important;
  }

  .btn-hdr,
  .btn-wa,
  .btn-banner,
  .btn-copy,
  .btn-store,
  .load-more,
  .blog-infinite-loader,
  .hero-search button,
  .hero-search-big button,
  .nl-form button,
  .error-404-search button,
  .error-404-actions a,
  .woocommerce a.button,
  .woocommerce button.button,
  .woocommerce .button {
    box-shadow: none !important;
  }

  .cat-card:hover,
  .art:hover,
  .art-card:hover,
  .art-card-big:hover,
  .art-card-h:hover,
  .rel-card:hover,
  .post-card:hover,
  .product-card:hover,
  .category-card:hover,
  .ph-home-v2 .cat-card:hover,
  .smart-banner:hover,
  .banner-listing:hover {
    transform: none !important;
  }
}
