/* =========================================================================
   Ganhe Treinando IA — Design System
   Réplica fiel do tema Lovable original (cores OKLCH, tipografia, componentes)
   Fonte: Roboto · Tema claro/escuro · Header sempre cinza
   ========================================================================= */

@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;600;700;800;900&display=swap");

/* ---------- Design tokens ------------------------------------------------ */
:root {
  --radius: 0.9rem;
  --radius-sm: calc(var(--radius) - 4px);
  --radius-md: calc(var(--radius) - 2px);
  --radius-lg: var(--radius);
  --radius-xl: calc(var(--radius) + 4px);
  --radius-2xl: calc(var(--radius) + 8px);
  --radius-3xl: calc(var(--radius) + 12px);
  --font-sans: "Roboto", "Google Sans", Arial, ui-sans-serif, system-ui, -apple-system, sans-serif;

  /* Fallback hex first, oklch overrides on modern browsers */
  --background: #f9fafb; --background: oklch(0.985 0.002 250);
  --foreground: #0d131c; --foreground: oklch(0.185 0.02 260);
  --card: #ffffff; --card: oklch(1 0 0);
  --card-foreground: #0d131c; --card-foreground: oklch(0.185 0.02 260);
  --popover: #ffffff; --popover: oklch(1 0 0);
  --primary: #00a159; --primary: oklch(0.62 0.16 155);
  --primary-foreground: #fcfcfc; --primary-foreground: oklch(0.99 0 0);
  --secondary: #eff2f5; --secondary: oklch(0.96 0.005 250);
  --secondary-foreground: #23272e; --secondary-foreground: oklch(0.25 0.02 260);
  --muted: #f1f4f7; --muted: oklch(0.965 0.005 250);
  --muted-foreground: #5c646f; --muted-foreground: oklch(0.5 0.02 258);
  --accent: #e0f5e6; --accent: oklch(0.95 0.03 155);
  --accent-foreground: #0f3620; --accent-foreground: oklch(0.3 0.06 155);
  --destructive: #e7000b; --destructive: oklch(0.577 0.245 27.325);
  --destructive-foreground: #fcfcfc; --destructive-foreground: oklch(0.99 0 0);
  --border: #dadee3; --border: oklch(0.9 0.008 255);
  --input: #dadee3; --input: oklch(0.9 0.008 255);
  --ring: #00a159; --ring: oklch(0.62 0.16 155);
  --header: #303337; --header: oklch(0.32 0.008 260);
  --header-foreground: #f4f5f7; --header-foreground: oklch(0.97 0.003 250);
  --header-border: #4a4d53; --header-border: oklch(0.42 0.01 260);
  --chip: #ffffff; --chip: oklch(1 0 0);
  --chip-foreground: #23272e; --chip-foreground: oklch(0.25 0.02 260);
  --mimix: #2857e5; --mimix: oklch(0.52 0.22 265);
  --mimix-2: #8038d1; --mimix-2: oklch(0.52 0.22 300);
  --mimix-foreground: #fcfcfc; --mimix-foreground: oklch(0.99 0 0);
  --shadow-sm: 0 1px 2px rgba(0,0,0,.04), 0 8px 24px -18px rgba(0,0,0,.22);
}

.dark {
  --background: #0b0d13; --background: oklch(0.16 0.012 265);
  --foreground: #f4f5f7; --foreground: oklch(0.97 0.003 250);
  --card: #15181f; --card: oklch(0.21 0.014 265);
  --card-foreground: #f4f5f7; --card-foreground: oklch(0.97 0.003 250);
  --popover: #15181f; --popover: oklch(0.21 0.014 265);
  --primary: #22c373; --primary: oklch(0.72 0.17 155);
  --primary-foreground: #0b0d13; --primary-foreground: oklch(0.16 0.012 265);
  --secondary: #20242c; --secondary: oklch(0.26 0.016 265);
  --secondary-foreground: #f4f5f7; --secondary-foreground: oklch(0.97 0.003 250);
  --muted: #20242c; --muted: oklch(0.26 0.016 265);
  --muted-foreground: #a5abb4; --muted-foreground: oklch(0.74 0.015 258);
  --accent: #1d3425; --accent: oklch(0.3 0.04 155);
  --accent-foreground: #e8f5eb; --accent-foreground: oklch(0.92 0.05 155);
  --destructive: #c4443a; --destructive: oklch(0.704 0.191 22.216);
  --destructive-foreground: #fafafa; --destructive-foreground: oklch(0.98 0 0);
  --border: rgba(255,255,255,.12);
  --input: rgba(255,255,255,.16);
  --ring: #22c373; --ring: oklch(0.72 0.17 155);
  --header: #2b2e32; --header: oklch(0.3 0.008 260);
  --header-foreground: #f4f5f7; --header-foreground: oklch(0.97 0.003 250);
  --header-border: #45484d; --header-border: oklch(0.4 0.01 260);
  --chip: #20242c; --chip: oklch(0.24 0.016 265);
  --chip-foreground: #f1f2f4; --chip-foreground: oklch(0.95 0.004 250);
  --mimix: #588aff; --mimix: oklch(0.66 0.19 265);
  --mimix-2: #a670f3; --mimix-2: oklch(0.66 0.19 300);
  --mimix-foreground: #101114; --mimix-foreground: oklch(0.14 0.02 265);
}

/* ---------- Reset & base -------------------------------------------------- */
*, *::before, *::after { box-sizing: border-box; border-color: var(--border); }
html { font-size: 17px; scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
html, body { max-width: 100%; overflow-x: clip; }
body {
  margin: 0;
  background-color: var(--background);
  color: var(--foreground);
  font-family: var(--font-sans);
  -webkit-font-smoothing: antialiased;
  line-height: 1.7;
  transition: background-color .2s ease, color .2s ease;
}
img, svg, video { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button { font: inherit; color: inherit; cursor: pointer; }
ul, ol { margin: 0; padding: 0; list-style: none; }
p { margin: 0; }
h1, h2, h3, h4 { font-family: var(--font-sans); letter-spacing: -0.02em; line-height: 1.15; margin: 0; font-weight: 800; }
table { border-collapse: collapse; }
:focus-visible { outline: 2px solid var(--ring); outline-offset: 2px; }

/* ---------- Layout helpers ------------------------------------------------ */
.container { max-width: 72rem; margin-inline: auto; padding-inline: 1.25rem; } /* max-w-6xl */
.container--wide { max-width: 88rem; } /* alargado para acomodar sidebar + capas 16:9 maiores */
.container--md { max-width: 64rem; } /* max-w-5xl */
.container--narrow { max-width: 48rem; } /* max-w-3xl */
.container--xnarrow { max-width: 42rem; } /* max-w-2xl */

.grid { display: grid; gap: 1rem; min-width: 0; }
.grid > * { min-width: 0; }
.grid-2 { grid-template-columns: repeat(1, 1fr); }
.grid-3 { grid-template-columns: repeat(1, 1fr); }
.grid-4 { grid-template-columns: repeat(1, 1fr); }
.grid-5 { grid-template-columns: repeat(1, 1fr); }
@media (min-width: 640px) {
  .grid-2, .grid-3-sm { grid-template-columns: repeat(2, 1fr); }
  .grid-4 { grid-template-columns: repeat(2, 1fr); }
  .grid-5 { grid-template-columns: repeat(3, 1fr); }
}
@media (min-width: 1024px) {
  .grid-3 { grid-template-columns: repeat(3, 1fr); }
  .grid-4 { grid-template-columns: repeat(4, 1fr); }
  .grid-5 { grid-template-columns: repeat(5, 1fr); }
  .grid-2-lg { grid-template-columns: repeat(2, 1fr); }
}
.grid-main { display: grid; gap: 2rem; min-width: 0; }
.grid-main > * { min-width: 0; }
@media (min-width: 1024px) { .grid-main { grid-template-columns: 1fr 360px; } }
.auto-sidebar-shell{padding-block:1.5rem 2.5rem}
.auto-sidebar-grid{align-items:start}
.auto-sidebar-content{min-width:0}
.auto-sidebar-content>article>.hero:first-child{margin-top:-1.5rem}
.auto-sidebar-content .hero__inner,.auto-sidebar-content .section>.container{width:100%;max-width:none}
.grid-main--wide { display: grid; gap: 2.5rem; min-width: 0; }
.grid-main--wide > * { min-width: 0; }
@media (min-width: 1024px) { .grid-main--wide { grid-template-columns: 1.2fr 1fr; } }

.flex { display: flex; }
.flex-wrap { flex-wrap: wrap; }
.items-center { align-items: center; }
.justify-between { justify-content: space-between; }
.justify-center { justify-content: center; }
.gap-1 { gap: .4rem; } .gap-2 { gap: .6rem; } .gap-3 { gap: .85rem; } .gap-4 { gap: 1.1rem; }
.text-center { text-align: center; }
.mx-auto { margin-inline: auto; }
.mt-0 { margin-top: 0; }
.section-stack > * + * { margin-top: 3.2rem; }

/* ---------- Buttons -------------------------------------------------------- */
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: .5rem;
  border-radius: 999px; font-weight: 800; text-transform: uppercase; letter-spacing: .03em;
  padding: .75rem 1.5rem; font-size: .98rem; border: none; transition: transform .15s ease, box-shadow .15s ease, opacity .15s ease;
  white-space: nowrap;
}
.btn:hover { transform: translateY(-2px); }
.btn-primary { background: var(--primary); color: var(--primary-foreground); box-shadow: 0 10px 24px -10px color-mix(in oklab, var(--primary) 50%, transparent); }
.btn-outline { background: var(--chip); color: var(--chip-foreground); border: 1px solid var(--border); text-transform: none; letter-spacing: normal; font-weight: 700; }
.btn-outline:hover { color: var(--primary); }
.btn-ghost-primary { background: transparent; color: var(--primary); border: 2px solid var(--primary); }
.btn-shopee { background: #EE4D2D; color: #fff; }
.btn-shopee:hover { background: #d73f21; }
.btn-lg { padding: 1rem 2.25rem; font-size: 1.1rem; }
.btn-xl { padding: 1.15rem 2.5rem; font-size: 1.2rem; }
.btn-sm { padding: .5rem .9rem; font-size: .82rem; }
.btn-row { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem; justify-content: center; }

/* ---------- Header ---------------------------------------------------------- */
.site-header { position: sticky; top: 0; z-index: 50; background: var(--header); color: var(--header-foreground); border-bottom: 1px solid var(--header-border); }
.site-header__row { max-width: 72rem; margin-inline: auto; padding: .8rem 1.25rem; display: flex; align-items: center; justify-content: space-between; gap: .8rem; }
.site-header__logo img, .site-header__logo svg { height: 2.35rem; width: auto; }
@media (min-width: 640px) { .site-header__logo img, .site-header__logo svg { height: 2.7rem; } }
.nav-main { display: none; align-items: center; gap: 1.5rem; font-size: 1.02rem; font-weight: 600; }
@media (min-width: 1024px) { .nav-main { display: flex; } }
.nav-main a { opacity: .9; transition: opacity .15s ease, color .15s ease; }
.nav-main a:hover, .nav-main a[aria-current="page"] { opacity: 1; }
.nav-main a[aria-current="page"] { color: var(--primary); }
.header-actions { display: flex; align-items: center; gap: .5rem; flex-shrink: 0; }
.icon-btn { display: inline-flex; width: 2.5rem; height: 2.5rem; align-items: center; justify-content: center; border-radius: 999px; border: 1px solid color-mix(in oklab, var(--header-border) 80%, transparent); background: transparent; color: var(--header-foreground); }
.icon-btn:hover { background: rgba(255,255,255,.1); }
.icon-btn svg { width: 1.2rem; height: 1.2rem; }
.menu-toggle { display: inline-flex; }
@media (min-width: 1024px) { .menu-toggle { display: none; } }
.mobile-nav { display: none; border-top: 1px solid var(--header-border); padding: .5rem 1.25rem 1rem; font-size: 1.05rem; font-weight: 600; }
.mobile-nav.is-open { display: block; }
.mobile-nav a { display: block; padding: .65rem .5rem; border-radius: .8rem; opacity: .9; }
.mobile-nav a:hover, .mobile-nav a[aria-current="page"] { opacity: 1; background: rgba(255,255,255,.06); }
.mobile-nav a[aria-current="page"] { color: var(--primary); }
@media (min-width: 1024px) { .mobile-nav { display: none !important; } }

/* ---------- Hero ------------------------------------------------------------ */
.hero { position: relative; overflow: hidden; border-bottom: 1px solid var(--border); background: linear-gradient(to bottom, color-mix(in oklab, var(--primary) 10%, transparent), var(--background) 60%, var(--background)); }
.hero__inner { max-width: 72rem; margin-inline: auto; padding: 3.5rem 1.25rem; }
.hero--home {
  isolation: isolate;
  text-align: center;
  padding-bottom: 2.5rem;
  background-color: var(--background);
  background-image:
    radial-gradient(circle at 50% 10%, color-mix(in oklab, var(--primary) 14%, transparent) 0, transparent 42%),
    linear-gradient(180deg, color-mix(in oklab, var(--primary) 9%, var(--background)) 0%, var(--background) 72%);
}
.hero--home::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background-image:
    radial-gradient(circle, color-mix(in oklab, var(--primary) 76%, #00d4ff) 0 1.15px, transparent 1.75px),
    radial-gradient(circle, color-mix(in oklab, var(--primary) 48%, #00a7ff) 0 .8px, transparent 1.35px);
  background-position: 0 0, 14px 14px;
  background-size: 28px 28px;
  opacity: .52;
  -webkit-mask-image: radial-gradient(ellipse 76% 88% at 50% 38%, #000 12%, rgba(0,0,0,.78) 54%, transparent 100%);
  mask-image: radial-gradient(ellipse 76% 88% at 50% 38%, #000 12%, rgba(0,0,0,.78) 54%, transparent 100%);
}
.hero--home::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 18% 34%, color-mix(in oklab, var(--primary) 13%, transparent) 0, transparent 22%),
    radial-gradient(circle at 82% 24%, color-mix(in oklab, #00c8ff 9%, transparent) 0, transparent 20%);
}
.hero--home .hero__inner { position: relative; z-index: 1; }
@media (max-width: 600px) {
  .hero--home::before { background-size: 24px 24px; background-position: 0 0, 12px 12px; opacity: .45; }
}
.hero__eyebrow-row { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; }
.hero__title { font-size: 2.1rem; font-weight: 800; line-height: 1.1; max-width: 56rem; }
.hero__title .accent { color: var(--primary); }
@media (min-width: 768px) { .hero__title { font-size: 3rem; } }
.hero--home .hero__title { margin-inline: auto; font-size: 2.3rem; }
@media (min-width: 768px) { .hero--home .hero__title { font-size: 3.1rem; } }
.hero__sub { margin-top: 1.25rem; max-width: 48rem; font-size: 1.15rem; line-height: 1.6; color: var(--muted-foreground); }
.hero--home .hero__sub { margin-inline: auto; max-width: 60rem; font-size: 1.18rem; }
@media (min-width: 768px) { .hero--home .hero__sub { font-size: 1.28rem; } }
.hero__meta { margin-top: 1rem; font-size: .85rem; color: var(--muted-foreground); }
.hero__breadcrumb-wrap { margin-top: 1.5rem; }

/* ---------- Sections --------------------------------------------------------- */
.section { padding-block: 3.5rem; }
.section--alt { border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); background: color-mix(in oklab, var(--muted) 40%, transparent); }
.section__eyebrow { font-size: .78rem; font-weight: 800; text-transform: uppercase; letter-spacing: .22em; color: var(--primary); margin: 0 0 .5rem; }
.section__title { font-size: 1.75rem; font-weight: 800; line-height: 1.2; }
@media (min-width: 768px) { .section__title { font-size: 2.2rem; } }
.section__desc { margin-top: .75rem; max-width: 48rem; font-size: 1.08rem; line-height: 1.6; color: var(--muted-foreground); }
.section__body { margin-top: 2rem; }

/* ---------- Cards ------------------------------------------------------------ */
.card {
  background: var(--card); border: 1px solid var(--border); border-radius: var(--radius-2xl);
  padding: 1.25rem; box-shadow: var(--shadow-sm); transition: transform .18s ease, box-shadow .18s ease;
  height: 100%;
}
.card:hover { transform: translateY(-2px); box-shadow: 0 12px 30px -16px rgba(0,0,0,.28); }
.card--static:hover { transform: none; }
.card__emoji { font-size: 1.5rem; display: block; }
.card__label { margin-top: .5rem; font-size: .72rem; font-weight: 800; text-transform: uppercase; letter-spacing: .16em; color: var(--muted-foreground); }
.card__value { margin-top: .25rem; font-size: 1.12rem; font-weight: 800; line-height: 1.3; }
.card__title { font-size: 1.1rem; font-weight: 800; }
.card__text { margin-top: .35rem; font-size: 1rem; color: var(--muted-foreground); line-height: 1.6; }

.stat-grid { display: grid; gap: .85rem; grid-template-columns: repeat(2,1fr); }
@media (min-width: 640px) { .stat-grid { grid-template-columns: repeat(4,1fr); } }
.stat-grid--3 { grid-template-columns: repeat(1,1fr); }
@media (min-width: 640px) { .stat-grid--3 { grid-template-columns: repeat(3,1fr); } }

/* ---------- Badges & chips ---------------------------------------------------- */
.badge { display: inline-flex; align-items: center; gap: .45rem; border-radius: 999px; border: 1px solid var(--border); background: var(--chip); color: var(--muted-foreground); padding: .3rem .8rem; font-size: .72rem; font-weight: 800; text-transform: uppercase; letter-spacing: .14em; }
.badge--primary { border-color: color-mix(in oklab, var(--primary) 30%, transparent); background: color-mix(in oklab, var(--primary) 10%, transparent); color: var(--primary); }
.chip { display: inline-flex; align-items: center; gap: .5rem; border-radius: 999px; border: 1px solid var(--border); background: var(--chip); color: var(--chip-foreground); padding: .5rem 1rem; font-size: .95rem; font-weight: 700; box-shadow: 0 1px 2px rgba(0,0,0,.05); }
.chip:hover { color: var(--primary); }
.chip .count { color: var(--muted-foreground); }
.chip-row { display: flex; flex-wrap: wrap; gap: .6rem; }
.tag-pill { border-radius: .4rem; border: 1px solid var(--border); background: var(--chip); padding: .1rem .5rem; font-size: .6rem; font-weight: 800; text-transform: uppercase; letter-spacing: .12em; color: var(--chip-foreground); box-shadow: 0 1px 2px rgba(0,0,0,.05); }
.diff-pill { border-radius: 999px; border: 1px solid var(--border); padding: .12rem .6rem; font-size: .72rem; font-weight: 800; text-transform: uppercase; letter-spacing: .12em; color: var(--muted-foreground); }

/* ---------- Fonte / Legenda (nível de confiança) ------------------------------ */
.fonte-tag { display: inline-flex; align-items: center; gap: .4rem; font-size: .72rem; font-weight: 600; color: var(--muted-foreground); }
.legenda { display: flex; flex-wrap: wrap; gap: .5rem 1.25rem; border-radius: .8rem; border: 1px solid var(--border); background: color-mix(in oklab, var(--muted) 50%, transparent); padding: .75rem 1rem; }

/* ---------- Aviso boxes -------------------------------------------------------- */
.aviso { margin-top: 1.5rem; border-radius: .8rem; border: 1px solid var(--border); background: color-mix(in oklab, var(--muted) 60%, transparent); padding: .75rem 1rem; font-size: .95rem; color: var(--muted-foreground); }

/* ---------- FAQ (native details/summary — sem JS, 100% indexável) ------------- */
.faq { border-radius: var(--radius-2xl); border: 1px solid var(--border); background: var(--card); overflow: hidden; }
.faq__item { border-bottom: 1px solid var(--border); }
.faq__item:last-child { border-bottom: none; }
.faq__item summary { cursor: pointer; list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.1rem 1.25rem; font-size: 1.05rem; font-weight: 700; }
.faq__item summary::-webkit-details-marker { display: none; }
.faq__item summary:hover { color: var(--primary); }
.faq__item summary .chev { flex-shrink: 0; transition: transform .2s ease; }
.faq__item[open] summary .chev { transform: rotate(180deg); }
.faq__item p { padding: 0 1.25rem 1.25rem; font-size: 1.02rem; line-height: 1.65; color: var(--muted-foreground); }

/* ---------- Timeline / etapas --------------------------------------------------- */
.timeline { display: grid; gap: .85rem; grid-template-columns: repeat(1,1fr); }
@media (min-width: 640px) { .timeline { grid-template-columns: repeat(2,1fr); } }
@media (min-width: 1024px) { .timeline { grid-template-columns: repeat(4,1fr); } }
.timeline--3 { grid-template-columns: repeat(1,1fr); }
@media (min-width: 640px) { .timeline--3 { grid-template-columns: repeat(2,1fr); } }
@media (min-width: 1024px) { .timeline--3 { grid-template-columns: repeat(3,1fr); } }
.timeline__num { font-size: .85rem; font-weight: 800; letter-spacing: .1em; color: var(--primary); }
.timeline__item .card__title { margin-top: .25rem; }

/* ---------- Tables --------------------------------------------------------------- */
.table-wrap { overflow-x: auto; border-radius: var(--radius-2xl); border: 1px solid var(--border); background: var(--card); }
table.data-table { width: 100%; min-width: 560px; text-align: left; font-size: .98rem; border-collapse: collapse; }
table.data-table thead { background: color-mix(in oklab, var(--muted) 60%, transparent); font-size: .76rem; text-transform: uppercase; letter-spacing: .12em; color: var(--muted-foreground); }
table.data-table th, table.data-table td { padding: .8rem 1.1rem; border-bottom: 1px solid var(--border); vertical-align: top; }
table.data-table tbody tr:last-child td { border-bottom: none; }
table.data-table td.strong, table.data-table th.row-label { font-weight: 800; }
table.data-table td.muted { color: var(--muted-foreground); }
table.key-value > div { display: grid; grid-template-columns: 220px 1fr; gap: .5rem; border-bottom: 1px solid var(--border); padding: 1rem 1.25rem; }
table.key-value > div:last-child { border-bottom: none; }
@media (max-width: 640px) { table.key-value > div { grid-template-columns: 1fr; } }

/* ---------- Satelites grid (navegação entre páginas de uma marca) ---------------- */
.satelites-grid { display: grid; gap: .85rem; grid-template-columns: repeat(1,1fr); }
@media (min-width: 640px) { .satelites-grid { grid-template-columns: repeat(2,1fr); } }
@media (min-width: 1024px) { .satelites-grid { grid-template-columns: repeat(3,1fr); } }
.satelite-link { margin-top: 1.5rem; display: inline-flex; align-items: center; gap: .5rem; border-radius: 999px; border: 1px solid var(--border); background: var(--chip); color: var(--chip-foreground); padding: .6rem 1.25rem; font-size: .95rem; font-weight: 700; text-transform: uppercase; letter-spacing: .03em; }
.satelite-link:hover { color: var(--primary); }

/* ---------- Breadcrumb ------------------------------------------------------------ */
.breadcrumb { font-size: .9rem; color: var(--muted-foreground); }
.breadcrumb a:hover { color: var(--primary); }
.breadcrumb .current { font-weight: 600; color: var(--foreground); }

/* ---------- Calculadora (widget interativo) --------------------------------------- */
.calc { border-radius: var(--radius-3xl); border: 1px solid var(--border); background: var(--card); padding: 1.5rem; box-shadow: var(--shadow-sm); }
.calc__grid { display: grid; gap: 1rem; grid-template-columns: repeat(1,1fr); }
@media (min-width: 640px) { .calc__grid { grid-template-columns: repeat(2,1fr); } }
.calc__field label { display: block; font-size: .78rem; font-weight: 800; text-transform: uppercase; letter-spacing: .14em; color: var(--muted-foreground); }
.calc__field input { margin-top: .5rem; width: 100%; border-radius: .8rem; border: 1px solid var(--input); background: var(--background); padding: .75rem 1rem; font-size: 1.1rem; font-weight: 700; color: var(--foreground); }
.calc__field input:focus-visible { border-color: var(--ring); }
.calc__results { margin-top: 1.25rem; display: grid; gap: .75rem; grid-template-columns: repeat(2,1fr); }
@media (min-width: 640px) { .calc__results { grid-template-columns: repeat(4,1fr); } }
.calc__result { border-radius: var(--radius-lg); border: 1px solid var(--border); background: color-mix(in oklab, var(--muted) 50%, transparent); padding: 1rem; }
.calc__result .r-label { font-size: .7rem; font-weight: 800; text-transform: uppercase; letter-spacing: .14em; color: var(--muted-foreground); }
.calc__result .r-value { margin-top: .25rem; font-size: 1.25rem; font-weight: 800; color: var(--primary); }
.calc__note { margin-top: 1rem; font-size: .9rem; color: var(--muted-foreground); }

/* ---------- CTA final --------------------------------------------------------------- */
.cta-final { border-top: 1px solid var(--border); background: linear-gradient(to bottom, color-mix(in oklab, var(--primary) 10%, transparent), var(--background)); }
.cta-final__inner { max-width: 48rem; margin-inline: auto; padding: 4rem 1.25rem; text-align: center; }
.cta-final__title { font-size: 1.9rem; font-weight: 800; }
@media (min-width: 768px) { .cta-final__title { font-size: 2.3rem; } }
.cta-final__text { margin-top: 1rem; font-size: 1.1rem; color: var(--muted-foreground); }
.cta-final__actions { margin-top: 1.75rem; display: flex; flex-direction: column; align-items: center; gap: 1rem; }
.cta-final__fine { margin-top: 1.25rem; font-size: .88rem; color: var(--muted-foreground); }

/* ---------- Pros / cons + confiança -------------------------------------------------- */
.pros-cons { display: grid; gap: 1.1rem; grid-template-columns: repeat(1,1fr); }
@media (min-width: 1024px) { .pros-cons { grid-template-columns: repeat(2,1fr); } }
.pros-cons h3 { font-size: 1.15rem; font-weight: 800; }
.pros-cons ul { margin-top: .75rem; display: grid; gap: .5rem; font-size: 1.02rem; }
.pros-cons li { display: flex; gap: .5rem; align-items: flex-start; }

/* ---------- Post list (artigos) --------------------------------------------------- */
.post-list { display: flex; flex-direction: column; }
.post-card { display: grid; gap: 1rem; padding: 1.25rem 0; border-bottom: 1px solid var(--border); }
.post-card:first-child { padding-top: 0; }
.post-card:last-child { border-bottom: none; }
@media (min-width: 640px) { .post-card { grid-template-columns: 360px 1fr; } }
.post-card__thumb { position: relative; overflow: hidden; border-radius: var(--radius-2xl); border: 1px solid var(--border); aspect-ratio: 16/9; align-self: start; }
.post-card__thumb img { display: block; width: 100%; height: auto; aspect-ratio: 16/9; object-fit: cover; transition: transform .5s ease; }
.post-card__thumb:hover img { transform: scale(1.06); }
.post-card__tags { position: absolute; left: .6rem; top: .6rem; display: flex; flex-wrap: wrap; gap: .35rem; }
.post-card__body { display: flex; flex-direction: column; }
.post-card__meta { font-size: .9rem; color: var(--muted-foreground); }
.post-card__meta strong { color: var(--primary); }
.post-card__title { margin-top: .35rem; font-size: 1.35rem; font-weight: 800; line-height: 1.25; }
.post-card__title a:hover { color: var(--primary); }
.post-card__cat { margin-top: .5rem; font-size: .85rem; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
.post-card__cat a { color: var(--primary); }
.post-card__cat a:hover { text-decoration: underline; }
.post-card__excerpt { margin-top: .5rem; font-size: 1rem; line-height: 1.6; color: var(--muted-foreground); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.post-card__cta { margin-top: auto; align-self: flex-start; padding-top: .75rem; }

/* ---------- Sidebar ------------------------------------------------------------------ */
.sidebar { display: flex; flex-direction: column; gap: 1.5rem; }
.sidebar,
.legal-sidebar {
  scrollbar-width: thin;
  scrollbar-color: color-mix(in oklab, var(--primary) 45%, transparent) transparent;
}
.sidebar > * { flex: 0 0 auto; }
.sidebar::-webkit-scrollbar,
.legal-sidebar::-webkit-scrollbar { width: .42rem; }
.sidebar::-webkit-scrollbar-track,
.legal-sidebar::-webkit-scrollbar-track { background: transparent; }
.sidebar::-webkit-scrollbar-thumb,
.legal-sidebar::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: color-mix(in oklab, var(--primary) 42%, transparent);
}
@media (min-width: 1024px) {
  .grid-main > .sidebar,
  .tasks-guides-layout > .sidebar,
  .article-standard-grid .grid-main > .sidebar {
    position: sticky;
    top: 5.75rem;
    align-self: start;
    max-height: calc(100dvh - 7rem);
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding-right: .35rem;
    scroll-behavior: smooth;
  }
}
@media (min-width: 980px) {
  .legal-layout > .legal-sidebar {
    position: sticky;
    top: 5.75rem;
    align-self: start;
    max-height: calc(100dvh - 7rem);
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding-right: .35rem;
  }
}
@media (max-width: 1023px) {
  .sidebar,
  .legal-sidebar {
    position: static;
    max-height: none;
    overflow: visible;
    padding-right: 0;
  }
}
.sidebar__section { border-radius: var(--radius-2xl); border: 1px solid var(--border); background: var(--card); box-shadow: var(--shadow-sm); padding: 1.5rem; }
.sidebar__title { font-size: .85rem; font-weight: 800; text-transform: uppercase; letter-spacing: .16em; color: var(--muted-foreground); }
.sidebar__author { margin-top: 1rem; display: flex; align-items: center; gap: 1rem; }
.sidebar__author img { width: 4rem; height: 4rem; border-radius: 999px; object-fit: cover; }
.sidebar__author-name { font-size: 1.15rem; font-weight: 800; line-height: 1.2; }
.sidebar__author-role { font-size: .85rem; font-weight: 800; text-transform: uppercase; letter-spacing: .12em; color: var(--primary); }
.sidebar__text { margin-top: 1rem; font-size: 1.02rem; color: var(--muted-foreground); }
.sidebar__featured { position: relative; overflow: hidden; border-radius: 1rem; border: 1px solid var(--border); display: block; }
.sidebar__featured img { width: 100%; height: 14rem; object-fit: cover; transition: transform .5s ease; }
.sidebar__featured:hover img { transform: scale(1.05); }
.sidebar__featured-overlay { position: absolute; inset: 0; background: linear-gradient(to top, rgba(0,0,0,.85), rgba(0,0,0,.35) 55%, transparent); }
.sidebar__featured-text { position: absolute; inset-inline: 0; bottom: 0; padding: 1.1rem; }
.sidebar__featured-text .tag { border-radius: 999px; background: rgba(255,255,255,.2); padding: .25rem .7rem; font-size: .8rem; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; color: #fff; backdrop-filter: blur(4px); }
.sidebar__featured-text p { margin-top: .6rem; font-size: 1.12rem; font-weight: 800; line-height: 1.3; color: #fff; }
.sidebar__companies { margin-top: 1rem; display: flex; flex-direction: column; gap: 1rem; }
.company-row { display: flex; align-items: flex-start; gap: 1rem; border-radius: .8rem; padding: .35rem; transition: background-color .15s ease; }
a.company-row:hover { background: color-mix(in oklab, var(--primary) 5%, transparent); }
.company-row--highlight { border-radius: .8rem; border: 1px solid color-mix(in oklab, var(--mimix) 30%, transparent); background: color-mix(in oklab, var(--mimix) 10%, transparent); padding: .75rem; margin-inline: -0.25rem; }
.company-row img, .company-row .logo-fallback { width: 2.75rem; height: 2.75rem; flex-shrink: 0; border-radius: .7rem; border: 1px solid var(--border); background: #fff; object-fit: contain; padding: .2rem; }
.company-row__name { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; font-size: 1.08rem; font-weight: 800; line-height: 1.25; }
.company-row__badge { border-radius: 999px; background: linear-gradient(to right, var(--mimix), var(--mimix-2)); padding: .1rem .5rem; font-size: .7rem; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; color: var(--mimix-foreground); }
.company-row__desc { font-size: .98rem; color: var(--muted-foreground); }
.sidebar__reading { margin-top: 1rem; display: flex; flex-direction: column; gap: 1.25rem; }
.sidebar__reading a { font-size: 1.05rem; font-weight: 800; color: var(--primary); }
.sidebar__reading a:hover { text-decoration: underline; }
.sidebar__reading p { margin-top: .25rem; font-size: .98rem; color: var(--muted-foreground); }

/* ---------- Newsletter -------------------------------------------------------------- */
.newsletter { max-width: 42rem; margin-inline: auto; padding: 4rem 1.25rem; text-align: center; }
.newsletter h2 { font-size: 1.9rem; font-weight: 800; }
@media (min-width: 768px) { .newsletter h2 { font-size: 2.1rem; } }
.newsletter p { margin-top: .75rem; font-size: 1.1rem; color: var(--muted-foreground); }
.newsletter form { margin: 1.75rem auto 0; max-width: 32rem; display: flex; flex-direction: column; gap: .75rem; }
@media (min-width: 640px) { .newsletter form { flex-direction: row; } }
.newsletter input[type="email"] { flex: 1; border-radius: 999px; border: 1px solid var(--input); background: var(--card); padding: .9rem 1.25rem; font-size: 1.05rem; color: var(--foreground); }
.newsletter input[type="email"]:focus-visible { border-color: var(--primary); }
.newsletter__note { margin-top: 1rem; font-size: .98rem; color: var(--muted-foreground); }

/* ---------- Footer -------------------------------------------------------------------- */
.site-footer { margin-top: 4rem; border-top: 1px solid var(--border); background: var(--card); }
.footer__grid { max-width: 72rem; margin-inline: auto; padding: 3.5rem 1.25rem; display: grid; gap: 2.5rem; grid-template-columns: 1fr; }
@media (min-width: 768px) { .footer__grid { grid-template-columns: 1.4fr 1fr 1fr 1fr; } }
.footer__logo img, .footer__logo svg { height: 2.5rem; width: auto; }
.footer__about { margin-top: 1rem; max-width: 24rem; font-size: 1.02rem; color: var(--muted-foreground); }
.footer__social { margin-top: 1.25rem; }
.footer__col-title { font-size: .85rem; font-weight: 800; text-transform: uppercase; letter-spacing: .16em; color: var(--muted-foreground); }
.footer__col ul { margin-top: 1rem; display: flex; flex-direction: column; gap: .65rem; font-size: 1.02rem; }
.footer__col a { font-weight: 600; }
.footer__col a:hover { color: var(--primary); }
.footer__bottom { border-top: 1px solid var(--border); padding: 1.5rem 1.25rem; text-align: center; font-size: .95rem; color: var(--muted-foreground); }

.social-links { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; }
.social-links a { display: inline-flex; width: 2.75rem; height: 2.75rem; align-items: center; justify-content: center; border-radius: 999px; border: 1px solid var(--border); background: var(--muted); color: var(--foreground); }
.social-links a:hover { background: var(--primary); color: var(--primary-foreground); }
.social-links svg { width: 1.15rem; height: 1.15rem; }

/* ---------- Article / prose ------------------------------------------------------------ */
.article-tags { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; }
.article-title { margin-top: 1rem; font-size: 2rem; font-weight: 800; line-height: 1.2; }
@media (min-width: 768px) { .article-title { font-size: 2.6rem; } }
.article-meta { margin-top: .75rem; font-size: 1.02rem; color: var(--muted-foreground); }
.article-meta strong { color: var(--primary); }
.article-cover { margin-top: 1.75rem; width: 100%; height: auto; border-radius: var(--radius-2xl); border: 1px solid var(--border); object-fit: cover; aspect-ratio: 16/9; }
.prose { margin-top: 2rem; display: flex; flex-direction: column; gap: 1.5rem; font-size: 1.18rem; line-height: 1.85; }
.related-box { margin-top: 2.5rem; }
.related-box ul { margin-top: 1rem; display: flex; flex-direction: column; gap: .75rem; }
.related-box a { font-size: 1.08rem; font-weight: 800; color: var(--primary); }
.related-box a:hover { text-decoration: underline; }

/* ---------- Category page grid ---------------------------------------------------------- */
.subtema-card h3 { display: flex; align-items: center; gap: .5rem; font-size: 1.08rem; font-weight: 800; }
.subtema-card p { margin-top: .5rem; font-size: 1rem; line-height: 1.6; color: var(--muted-foreground); }
.category-tile { display: flex; flex-direction: column; height: 100%; padding: 1.5rem; }
.category-tile .emoji { font-size: 1.8rem; }
.category-tile h2 { margin-top: .75rem; font-size: 1.3rem; font-weight: 800; }
.category-tile p { margin-top: .5rem; font-size: 1.02rem; color: var(--muted-foreground); }
.category-tile .tags { margin-top: .75rem; display: flex; flex-wrap: wrap; gap: .4rem; }
.category-tile .count { margin-top: 1rem; font-size: .95rem; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; color: var(--primary); }

/* ---------- 30s summary cards ------------------------------------------------------------ */
.summary-card .label { font-size: .74rem; font-weight: 800; text-transform: uppercase; letter-spacing: .16em; color: var(--primary); }
.summary-card p.value { margin-top: .5rem; font-size: 1.05rem; line-height: 1.5; }

/* ---------- Misc brand utility ------------------------------------------------------------ */
.text-primary { color: var(--primary); }
.text-muted { color: var(--muted-foreground); }
.text-mimix { color: var(--mimix); }
.font-bold { font-weight: 700; }
.font-extrabold { font-weight: 800; }
.mimix-accent .section__eyebrow,
.mimix-accent .card__label,
.mimix-accent .timeline__num { color: var(--mimix); }
.mimix-accent .btn-primary { background: linear-gradient(135deg, var(--mimix), var(--mimix-2)); color: var(--mimix-foreground); }
.mimix-accent .btn-outline:hover { color: var(--mimix); }
.mimix-accent .hero { background: linear-gradient(to bottom, color-mix(in oklab, var(--mimix) 12%, transparent), var(--background) 60%, var(--background)); }
.mimix-accent .cta-final { background: linear-gradient(to bottom, color-mix(in oklab, var(--mimix) 12%, transparent), var(--background)); }
.mimix-accent .hero__title .accent { color: var(--mimix); }

/* ---------- Not found ---------------------------------------------------------------------- */
.not-found { min-height: 60vh; display: flex; align-items: center; justify-content: center; padding: 2rem 1.25rem; text-align: center; }
.not-found h1 { font-size: 4.5rem; }

/* =========================================================================
   Artigos premium — sumário, callouts, destaques, citações, caixa de autor
   ========================================================================= */

/* ---------- Sumário (TOC) do artigo -------------------------------------- */
.toc { margin: 2rem 0 2.5rem; border-radius: var(--radius-2xl); border: 1px solid var(--border); background: linear-gradient(160deg, color-mix(in oklab, var(--primary) 6%, var(--card)), var(--card)); padding: 1.5rem 1.6rem; box-shadow: var(--shadow-sm); }
.toc__title { display: flex; align-items: center; gap: .6rem; font-size: .82rem; font-weight: 800; text-transform: uppercase; letter-spacing: .18em; color: var(--primary); }
.toc__title svg { flex-shrink: 0; }
.toc ol { margin-top: 1rem; display: grid; gap: .55rem; counter-reset: toc-counter; }
@media (min-width: 640px) { .toc ol { grid-template-columns: repeat(2, 1fr); column-gap: 1.5rem; } }
.toc li { counter-increment: toc-counter; }
.toc a { display: flex; align-items: baseline; gap: .65rem; font-size: 1.04rem; font-weight: 700; color: var(--foreground); line-height: 1.4; }
.toc a::before { content: counter(toc-counter, decimal-leading-zero); flex-shrink: 0; font-size: .82rem; font-weight: 800; color: var(--primary); font-variant-numeric: tabular-nums; }
.toc a:hover { color: var(--primary); text-decoration: underline; }

/* ---------- Callouts (dica, alerta, info, privacidade) --------------------- */
.callout { display: flex; gap: 1rem; align-items: flex-start; margin: 2.25rem 0; padding: 1.3rem 1.4rem; border-radius: var(--radius-xl); border: 1px solid var(--border); border-left-width: 4px; background: var(--card); box-shadow: var(--shadow-sm); }
.callout__icon { flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; width: 2.4rem; height: 2.4rem; border-radius: .85rem; }
.callout__icon svg { width: 1.3rem; height: 1.3rem; }
.callout__body { min-width: 0; }
.callout__title { font-size: 1.05rem; font-weight: 800; margin-bottom: .3rem; }
.callout__body p:not(.callout__title) { font-size: 1.05rem; line-height: 1.7; color: var(--muted-foreground); }
.callout__body p + p { margin-top: .6rem; }

.callout--tip { border-left-color: var(--primary); background: linear-gradient(135deg, color-mix(in oklab, var(--primary) 7%, var(--card)), var(--card) 60%); }
.callout--tip .callout__icon { background: color-mix(in oklab, var(--primary) 15%, transparent); color: var(--primary); }
.callout--tip .callout__title { color: var(--primary); }

.callout--warning { border-left-color: #d97706; background: linear-gradient(135deg, color-mix(in oklab, #d97706 8%, var(--card)), var(--card) 60%); }
.callout--warning .callout__icon { background: color-mix(in oklab, #d97706 15%, transparent); color: #b45309; }
.dark .callout--warning .callout__icon { color: #fbbf24; }
.callout--warning .callout__title { color: #b45309; }
.dark .callout--warning .callout__title { color: #fbbf24; }

.callout--info { border-left-color: #2563eb; background: linear-gradient(135deg, color-mix(in oklab, #2563eb 7%, var(--card)), var(--card) 60%); }
.callout--info .callout__icon { background: color-mix(in oklab, #2563eb 15%, transparent); color: #2563eb; }
.dark .callout--info .callout__icon { color: #60a5fa; }
.callout--info .callout__title { color: #2563eb; }
.dark .callout--info .callout__title { color: #60a5fa; }

.callout--privacy { border-left-color: #7c3aed; background: linear-gradient(135deg, color-mix(in oklab, #7c3aed 7%, var(--card)), var(--card) 60%); }
.callout--privacy .callout__icon { background: color-mix(in oklab, #7c3aed 15%, transparent); color: #7c3aed; }
.dark .callout--privacy .callout__icon { color: #c4b5fd; }
.callout--privacy .callout__title { color: #7c3aed; }
.dark .callout--privacy .callout__title { color: #c4b5fd; }

/* ---------- Destaque de estatística (stat highlight) ------------------------ */
.stat-highlight { margin: 2.25rem 0; border-radius: var(--radius-2xl); border: 1px solid color-mix(in oklab, var(--primary) 22%, var(--border)); background: linear-gradient(135deg, color-mix(in oklab, var(--primary) 10%, var(--card)), var(--card) 70%); padding: 1.75rem 1.75rem; text-align: center; box-shadow: var(--shadow-sm); }
.stat-highlight__num { display: block; font-size: 2.4rem; font-weight: 800; letter-spacing: -0.02em; line-height: 1.1; color: var(--primary); }
@media (min-width: 640px) { .stat-highlight__num { font-size: 2.9rem; } }
.stat-highlight__label { display: block; margin-top: .5rem; font-size: 1.05rem; font-weight: 600; color: var(--muted-foreground); max-width: 34rem; margin-inline: auto; }
.stat-highlight--row { display: flex; flex-wrap: wrap; justify-content: center; gap: 2rem 3rem; text-align: center; }
.stat-highlight--row .stat-highlight__item { min-width: 8rem; }

/* ---------- Citação em destaque (pull-quote) --------------------------------- */
.pull-quote { position: relative; margin: 2.5rem 0; padding: .4rem 0 .4rem 1.6rem; border-left: 4px solid var(--primary); }
.pull-quote p { font-size: 1.32rem; font-weight: 700; line-height: 1.5; color: var(--foreground); letter-spacing: -0.01em; }
.pull-quote cite { display: block; margin-top: .6rem; font-size: .92rem; font-weight: 600; font-style: normal; color: var(--muted-foreground); }

/* ---------- Lista de verificação premium (checklist) -------------------------- */
.checklist { margin: 1.75rem 0; display: flex; flex-direction: column; gap: .75rem; }
.checklist li { display: flex; align-items: flex-start; gap: .75rem; font-size: 1.06rem; line-height: 1.6; }
.checklist li svg { flex-shrink: 0; margin-top: .2rem; color: var(--primary); }
.checklist--x li svg { color: #dc2626; }

/* ---------- Divisor de seção com respiração visual ---------------------------- */
.article-divider { margin: 3rem 0; height: 1px; background: linear-gradient(to right, transparent, var(--border) 20%, var(--border) 80%, transparent); }

/* ---------- Caixa de cluster (navegação entre pillar e satélites) -------------- */
.cluster-box { margin: 2.5rem 0; border-radius: var(--radius-2xl); border: 1px solid var(--border); background: var(--card); overflow: hidden; box-shadow: var(--shadow-sm); }
.cluster-box__head { display: flex; align-items: center; gap: .65rem; padding: 1.1rem 1.4rem; background: color-mix(in oklab, var(--primary) 8%, var(--muted)); }
.cluster-box__head svg { flex-shrink: 0; color: var(--primary); }
.cluster-box__head p { font-size: .8rem; font-weight: 800; text-transform: uppercase; letter-spacing: .16em; color: var(--primary); }
.cluster-box__list { display: grid; }
@media (min-width: 640px) { .cluster-box__list { grid-template-columns: repeat(2, 1fr); } }
.cluster-box__item { display: flex; align-items: center; gap: .85rem; padding: 1rem 1.4rem; border-top: 1px solid var(--border); font-size: 1.02rem; font-weight: 700; }
.cluster-box__item:nth-child(-n+2) { border-top: none; }
@media (max-width: 639px) { .cluster-box__item { border-top: 1px solid var(--border) !important; } .cluster-box__item:first-child { border-top: none !important; } }
.cluster-box__item svg { flex-shrink: 0; color: var(--muted-foreground); }
.cluster-box__item:hover { color: var(--primary); background: color-mix(in oklab, var(--primary) 4%, transparent); }
.cluster-box__item:hover svg { color: var(--primary); }
.cluster-box__item .num { flex-shrink: 0; width: 1.6rem; height: 1.6rem; border-radius: 999px; background: var(--muted); color: var(--muted-foreground); font-size: .75rem; font-weight: 800; display: inline-flex; align-items: center; justify-content: center; }
.cluster-box__item.is-current { color: var(--primary); background: color-mix(in oklab, var(--primary) 6%, transparent); }
.cluster-box__item.is-current .num { background: var(--primary); color: var(--primary-foreground); }
.cluster-box__soon { padding: 1rem 1.4rem; border-top: 1px solid var(--border); font-size: .95rem; color: var(--muted-foreground); font-style: italic; }

/* ---------- Caixa de autor no fim do artigo ------------------------------------ */
.author-box { margin-top: 3rem; display: flex; gap: 1.25rem; align-items: flex-start; border-radius: var(--radius-2xl); border: 1px solid var(--border); background: var(--card); padding: 1.6rem; box-shadow: var(--shadow-sm); }
.author-box img { width: 4.5rem; height: 4.5rem; border-radius: 999px; object-fit: cover; flex-shrink: 0; }
.author-box__label { font-size: .74rem; font-weight: 800; text-transform: uppercase; letter-spacing: .16em; color: var(--primary); }
.author-box__name { margin-top: .25rem; font-size: 1.2rem; font-weight: 800; }
.author-box p.author-box__bio { margin-top: .5rem; font-size: 1rem; line-height: 1.6; color: var(--muted-foreground); }
.author-box__links { margin-top: .75rem; display: flex; gap: .6rem; }

/* ---------- Tipografia extra para o corpo do artigo ---------------------------- */
.prose h2 { font-size: 1.55rem; font-weight: 800; line-height: 1.25; margin-top: 3rem; scroll-margin-top: 5.5rem; }
@media (min-width: 768px) { .prose h2 { font-size: 1.8rem; } }
.prose h2 .h2-eyebrow { display: block; font-size: .76rem; font-weight: 800; text-transform: uppercase; letter-spacing: .16em; color: var(--primary); margin-bottom: .4rem; }
.prose h3 { font-size: 1.25rem; font-weight: 800; margin-top: 2rem; }
.prose p { font-size: 1.15rem; }
.prose ul.plain-list { display: flex; flex-direction: column; gap: .6rem; margin: 1.5rem 0; padding-left: 0; }
.prose ul.plain-list li { display: flex; gap: .7rem; align-items: flex-start; font-size: 1.12rem; line-height: 1.65; }
.prose ul.plain-list li::before { content: ""; flex-shrink: 0; width: .5rem; height: .5rem; margin-top: .55rem; border-radius: 999px; background: var(--primary); }
.prose strong { color: var(--foreground); font-weight: 800; }
.prose .lead { font-size: 1.28rem; line-height: 1.65; font-weight: 500; color: var(--foreground); }
.prose a:not(.btn), .callout a:not(.btn), .cluster-box a:not(.btn) { color: var(--primary); font-weight: 700; text-decoration: underline; text-decoration-color: color-mix(in oklab, var(--primary) 35%, transparent); text-underline-offset: .18rem; }
.prose a:not(.btn):hover, .callout a:not(.btn):hover { text-decoration-color: var(--primary); }

/* ---------- Grid de mini-cards dentro do artigo (equipamento, plataformas) ----- */
.inline-grid { display: grid; gap: 1rem; margin: 1.75rem 0; grid-template-columns: repeat(1, 1fr); }
@media (min-width: 640px) { .inline-grid--2 { grid-template-columns: repeat(2, 1fr); } .inline-grid--3 { grid-template-columns: repeat(3, 1fr); } }

/* ---------- Utility spacing ------------------------------------------------------------------ */
.mt-sm { margin-top: 1rem; } .mt-md { margin-top: 1.75rem; } .mt-lg { margin-top: 2.5rem; }

/* ---------- Print ---------------------------------------------------------------------------- */
@media print { .site-header, .site-footer, .newsletter, .cta-final { display: none; } }

/* ---------- Mídia: especial premium ----------------------------------------------------- */
.media-article { overflow: hidden; }
.media-hero { position: relative; min-height: clamp(38rem, 78vh, 52rem); display: flex; align-items: flex-end; background: #071615; color: #fff; }
.media-hero > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.media-hero__shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(3,12,12,.92) 0%, rgba(3,12,12,.68) 46%, rgba(3,12,12,.14) 80%), linear-gradient(0deg, rgba(3,12,12,.8), transparent 55%); }
.media-hero__content { position: relative; z-index: 1; width: min(76rem, 100%); margin-inline: auto; padding: 7rem 1.25rem 5rem; }
.media-hero__content h1 { max-width: 13ch; margin-top: 1rem; font-size: clamp(2.7rem, 7vw, 5.8rem); line-height: .98; letter-spacing: -.055em; font-weight: 850; text-wrap: balance; }
.media-hero__content > p { max-width: 48rem; margin-top: 1.5rem; font-size: clamp(1.12rem, 2vw, 1.4rem); line-height: 1.65; color: rgba(255,255,255,.82); }
.media-kicker { display: inline-flex; align-items: center; gap: .5rem; padding: .48rem .8rem; border: 1px solid rgba(255,255,255,.28); border-radius: 999px; background: rgba(255,255,255,.1); backdrop-filter: blur(10px); font-size: .75rem; font-weight: 850; text-transform: uppercase; letter-spacing: .16em; }
.media-kicker--dark { color: var(--primary); border-color: color-mix(in oklab, var(--primary) 25%, var(--border)); background: color-mix(in oklab, var(--primary) 8%, var(--card)); }
.media-trust { display: flex; flex-wrap: wrap; gap: .6rem; margin-top: 2rem; }
.media-trust span { padding: .55rem .8rem; border: 1px solid rgba(255,255,255,.22); border-radius: .7rem; background: rgba(2,10,10,.42); font-size: .84rem; font-weight: 750; }
.breadcrumb--light, .breadcrumb--light a, .breadcrumb--light .current { color: rgba(255,255,255,.76); }
.media-press { padding-block: 5rem; }
.media-section-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: end; gap: 1.5rem; margin-bottom: 2rem; }
.media-section-head h2 { margin-top: .8rem; font-size: clamp(2rem, 4vw, 3rem); line-height: 1.06; letter-spacing: -.035em; }
.media-section-head > p { max-width: 22rem; color: var(--muted-foreground); }
.press-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.press-card { position: relative; display: flex; min-height: 22rem; flex-direction: column; padding: 1.65rem; border: 1px solid var(--border); border-radius: 1.5rem; background: linear-gradient(145deg, color-mix(in oklab, var(--primary) 5%, var(--card)), var(--card)); box-shadow: var(--shadow-sm); transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.press-card:hover { transform: translateY(-5px); border-color: color-mix(in oklab, var(--primary) 45%, var(--border)); box-shadow: var(--shadow-lg); }
.press-card__brand { color: var(--primary); font-size: .75rem; font-weight: 850; text-transform: uppercase; letter-spacing: .13em; }
.press-card h3 { margin-top: 1.25rem; font-size: 1.42rem; line-height: 1.25; letter-spacing: -.02em; }
.press-card p { margin-top: 1rem; color: var(--muted-foreground); line-height: 1.65; }
.press-card__link { margin-top: auto; padding-top: 1.5rem; font-weight: 850; color: var(--primary); }
.media-layout { max-width: 70rem; padding-bottom: 5rem; }
.media-prose { max-width: 56rem; margin-inline: auto; }
.reality-box { display: flex; gap: 1rem; margin: 2.5rem 0; padding: 1.5rem; border: 1px solid color-mix(in oklab, #10b981 38%, var(--border)); border-radius: 1.35rem; background: linear-gradient(135deg, color-mix(in oklab, #10b981 10%, var(--card)), var(--card)); }
.reality-box__icon { display: grid; flex: 0 0 2.8rem; height: 2.8rem; place-items: center; border-radius: 999px; background: #10b981; color: #fff; font-weight: 900; }
.reality-box strong { font-size: 1.14rem; }
.reality-box p { margin-top: .35rem; color: var(--muted-foreground); font-size: 1rem; line-height: 1.65; }
.process-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: .75rem; margin: 2rem 0; }
.process-grid > div { padding: 1.25rem; border: 1px solid var(--border); border-radius: 1.15rem; background: var(--card); }
.process-grid span { display: block; color: var(--primary); font-size: .74rem; font-weight: 900; letter-spacing: .14em; }
.process-grid strong { display: block; margin-top: .7rem; font-size: 1.08rem; }
.process-grid p { margin-top: .4rem; color: var(--muted-foreground); font-size: .92rem; line-height: 1.5; }
.company-world-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; margin: 2rem 0; }
.world-card { padding: 1.5rem; border: 1px solid var(--border); border-radius: 1.35rem; background: var(--card); box-shadow: var(--shadow-sm); }
.world-card--featured { border-color: color-mix(in oklab, var(--primary) 45%, var(--border)); background: linear-gradient(145deg, color-mix(in oklab, var(--primary) 10%, var(--card)), var(--card)); }
.world-card__country { font-size: .72rem; font-weight: 850; text-transform: uppercase; letter-spacing: .14em; color: var(--primary); }
.world-card h3 { margin-top: .65rem; }
.world-card p { margin-top: .55rem; color: var(--muted-foreground); font-size: 1rem; line-height: 1.6; }
.world-card a { display: inline-block; margin-top: 1rem; }
.country-rank { margin: 2rem 0; border: 1px solid var(--border); border-radius: 1.4rem; overflow: hidden; background: var(--card); }
.country-rank > div { display: flex; align-items: center; gap: 1.2rem; padding: 1.15rem 1.4rem; border-top: 1px solid var(--border); }
.country-rank > div:first-child { border-top: 0; }
.country-rank b { width: 2rem; color: var(--primary); font-size: .85rem; }
.country-rank span { display: flex; flex-direction: column; }
.country-rank small { margin-top: .2rem; color: var(--muted-foreground); font-size: .92rem; }
.market-number { margin: 2rem 0; padding: 2.2rem; border: 1px solid color-mix(in oklab, var(--primary) 32%, var(--border)); border-radius: 1.5rem; background: radial-gradient(circle at 90% 0%, color-mix(in oklab, var(--primary) 18%, transparent), transparent 45%), var(--card); }
.market-number span { display: block; color: var(--primary); font-size: clamp(2.6rem, 7vw, 4.6rem); font-weight: 900; letter-spacing: -.055em; line-height: 1; }
.market-number p { max-width: 42rem; margin-top: 1rem; color: var(--muted-foreground); font-size: 1rem; line-height: 1.65; }
.timeline-premium { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin: 2rem 0; }
.timeline-premium div { padding: 1.35rem; border-top: 3px solid var(--primary); border-radius: .3rem .3rem 1rem 1rem; background: var(--card); box-shadow: var(--shadow-sm); }
.timeline-premium span { color: var(--primary); font-weight: 850; }
.timeline-premium p { margin-top: .55rem; color: var(--muted-foreground); font-size: .95rem; line-height: 1.55; }
.platform-premium-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: .8rem; margin: 2rem 0; }
.platform-premium-grid > a { display: flex; align-items: center; gap: .9rem; padding: 1rem; border: 1px solid var(--border); border-radius: 1.1rem; background: var(--card); text-decoration: none !important; transition: border-color .2s ease, transform .2s ease; }
.platform-premium-grid > a:hover { transform: translateY(-2px); border-color: var(--primary); }
.platform-premium-grid img { flex: 0 0 3.25rem; border-radius: .85rem; object-fit: contain; background: #fff; }
.platform-premium-grid span { display: flex; flex: 1; flex-direction: column; }
.platform-premium-grid small { margin-top: .2rem; color: var(--muted-foreground); font-size: .84rem; }
.platform-premium-grid b { color: var(--primary); }
.official-buttons { display: flex; flex-wrap: wrap; gap: .8rem; margin: 1.5rem 0 3rem; }
@media (max-width: 800px) { .press-grid { grid-template-columns: 1fr; } .press-card { min-height: 0; } .process-grid { grid-template-columns: repeat(2, 1fr); } .timeline-premium { grid-template-columns: 1fr; } }
@media (max-width: 600px) { .media-hero { min-height: 43rem; } .media-hero__shade { background: linear-gradient(0deg, rgba(3,12,12,.96) 0%, rgba(3,12,12,.48) 100%); } .media-hero__content { padding-bottom: 3rem; } .company-world-grid, .platform-premium-grid { grid-template-columns: 1fr; } .process-grid { grid-template-columns: 1fr; } .media-press { padding-block: 3.5rem; } }

/* Claru editorial premium */
.affiliate-disclosure{max-width:72rem;margin:1rem auto 0;padding:1rem 1.25rem;border:1px solid color-mix(in oklab,var(--primary) 22%,var(--border));border-left:4px solid var(--primary);border-radius:1rem;background:color-mix(in oklab,var(--primary) 5%,var(--card));color:var(--muted-foreground);font-size:.9rem;line-height:1.65}.affiliate-disclosure a{color:var(--primary);font-weight:800}.premium-callout{margin-top:1.5rem;padding:1.25rem 1.35rem;border:1px solid color-mix(in oklab,var(--primary) 24%,var(--border));border-left:4px solid var(--primary);border-radius:1rem;background:linear-gradient(145deg,color-mix(in oklab,var(--primary) 7%,var(--card)),var(--card));box-shadow:var(--shadow-sm);font-size:1rem;line-height:1.75}.premium-callout--warning{border-color:color-mix(in oklab,#d97706 28%,var(--border));border-left-color:#d97706;background:color-mix(in oklab,#d97706 6%,var(--card))}.checklist-premium{display:grid;gap:.7rem;margin-top:1.2rem}.checklist-premium li{position:relative;padding:.8rem 1rem .8rem 2.8rem;border:1px solid var(--border);border-radius:.85rem;background:var(--card);line-height:1.55}.checklist-premium li::before{content:'✓';position:absolute;left:1rem;top:.72rem;color:var(--primary);font-weight:900}
/* KGEN editorial hub — premium article and cluster components */
.kgen-editorial .kgen-article-hero{background:radial-gradient(circle at 14% 16%,rgba(91,33,182,.1),transparent 28%),radial-gradient(circle at 82% 25%,rgba(0,180,112,.1),transparent 28%),#fff}
.dark .kgen-editorial .kgen-article-hero{background:radial-gradient(circle at 14% 16%,rgba(124,58,237,.18),transparent 30%),radial-gradient(circle at 82% 25%,rgba(0,210,132,.12),transparent 30%),var(--background)}
.kgen-editorial .hero-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;margin-top:2rem}
.kgen-editorial .hero__actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.6rem}
.kgen-editorial .prose-premium>p{font-size:1.08rem;line-height:1.78;max-width:78ch}
.kgen-editorial .prose-premium>p+p{margin-top:1.15rem}
.kgen-editorial .source-box{margin-top:1.5rem;padding:1.2rem 1.35rem;border:1px solid color-mix(in oklab,var(--primary) 28%,var(--border));border-left:4px solid var(--primary);border-radius:1rem;background:color-mix(in oklab,var(--primary) 4%,var(--card));line-height:1.65}
.kgen-editorial .cluster-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.kgen-editorial .cluster-card{display:flex;flex-direction:column;gap:.55rem;padding:1.35rem;border:1px solid color-mix(in oklab,var(--primary) 22%,var(--border));border-radius:1.1rem;background:linear-gradient(145deg,color-mix(in oklab,var(--primary) 5%,var(--card)),var(--card));box-shadow:0 12px 28px rgba(15,23,42,.06);color:inherit;text-decoration:none;transition:transform .2s ease,border-color .2s ease}
.kgen-editorial .cluster-card:hover{transform:translateY(-3px);border-color:var(--primary)}
.kgen-editorial .cluster-card strong{font-size:1.08rem}
.kgen-editorial .cluster-card span:last-child{color:var(--muted-foreground);line-height:1.55}
.kgen-editorial .author-card{display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:center;margin-top:1.5rem}
.kgen-editorial .author-card img{border-radius:50%;object-fit:cover}
@media(max-width:960px){.kgen-editorial .hero-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.kgen-editorial .cluster-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.kgen-editorial .hero-stats,.kgen-editorial .cluster-grid{grid-template-columns:1fr}.kgen-editorial .author-card{grid-template-columns:1fr}}

/* Shared editorial standard: KGEN, Claru and MIMIX */
.article-standard-grid{padding-block:1.5rem 2.5rem}
.kgen-editorial .kgen-article-hero,.company-claru .hero{padding-block:0}
.kgen-editorial .kgen-article-hero .hero__inner,.company-claru .hero .hero__inner{padding-block:clamp(2.5rem,4vw,3.75rem)}
.article-standard-grid .grid-main{align-items:start;gap:2rem}
.article-standard-body{min-width:0}
.article-standard-body>.affiliate-disclosure{margin:0 0 1.25rem}
.article-standard-body .section{padding-block:1.55rem;margin:0}
.article-standard-body .section+.section{border-top:1px solid color-mix(in oklab,var(--border) 78%,transparent)}
.article-standard-body .section--alt{margin:.6rem 0;padding:1.5rem;border:1px solid color-mix(in oklab,var(--primary) 14%,var(--border));border-radius:1rem;background:color-mix(in oklab,var(--primary) 3%,var(--card))}
.article-standard-body .section .container{width:100%;max-width:none;padding:0}
.article-standard-body .section__body{margin-top:1rem}
.article-standard-body .section__desc{margin-top:.55rem;margin-bottom:0;line-height:1.65}
.article-standard-body .section__title{margin-top:.3rem;margin-bottom:0;line-height:1.16}
.article-standard-body .prose-premium>p{font-size:1.02rem;line-height:1.68;max-width:74ch;margin:0}
.article-standard-body .prose-premium>p+p{margin-top:1rem}
.article-standard-body .grid{gap:1rem;margin-top:1.15rem}
.article-standard-body .card{padding:1.15rem;min-height:0}
.article-standard-body .card__emoji{display:grid;place-items:center;width:46px;height:46px;margin-bottom:.65rem;border-radius:.8rem;background:color-mix(in oklab,var(--primary) 8%,var(--card));border:1px solid color-mix(in oklab,var(--primary) 20%,var(--border))}
.article-standard-body .card__emoji .premium-icon,.article-standard-body .card__emoji svg{width:22px;height:22px}
.article-standard-body .card__title{margin:.25rem 0 .4rem;line-height:1.28}
.article-standard-body .card__text{margin:0;line-height:1.58}
.article-standard-body .premium-callout,.article-standard-body .aviso{margin:1.15rem 0}
.article-standard-body .toc{margin:0 0 1.2rem}
.article-standard-body .timeline{gap:.85rem;margin-top:1rem}
.article-standard-body .timeline__item{height:100%}
.article-standard-body .table-wrap{margin:1.15rem 0}
.article-standard-body .satelite-link{margin-top:1.1rem}
.kgen-editorial .article-standard-body .section__title,
.kgen-editorial .article-standard-body .section__desc,
.kgen-editorial .article-standard-body .prose-premium,
.kgen-editorial .article-standard-body .prose-premium>p{
  width:100%;
  max-width:none;
}
.kgen-editorial .article-standard-body .section__title,
.kgen-editorial .article-standard-body .prose-premium>p{
  text-wrap:pretty;
}
.kgen-editorial .article-standard-body .prose-premium>p{
  text-align:left;
}
.standard-article-figure{margin:1.25rem 0 1.5rem}
.standard-article-figure img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border:1px solid var(--border);border-radius:1rem;box-shadow:0 14px 34px rgba(15,23,42,.1)}
.standard-article-figure figcaption{margin:.55rem .2rem 0;color:var(--muted-foreground);font-size:.88rem;line-height:1.5}
.standard-article-figure--cover{margin-top:1rem}
.mimix-pillar .prose>p{margin-block:0 1rem;line-height:1.72}
.mimix-pillar .prose>h2{margin-top:2.4rem;margin-bottom:.8rem}
.mimix-pillar .prose>h3{margin-top:1.65rem;margin-bottom:.55rem}
.mimix-pillar .article-figure{margin:1.4rem 0 1.55rem}
.mimix-pillar .article-figure img{aspect-ratio:16/9;object-fit:cover}
.mimix-pillar .mimix-info-grid,.mimix-pillar .mimix-inline-cta,.mimix-pillar .table-wrap{margin-block:1.25rem}
.premium-icon-fallback{position:relative;color:transparent!important}
.premium-icon-fallback::after{content:'✦';position:absolute;inset:0;display:grid;place-items:center;color:var(--primary);font-size:1rem;font-weight:900}
@media(max-width:1050px){.article-standard-grid .grid-main{grid-template-columns:minmax(0,1fr)}.article-standard-grid .sidebar{margin-top:.5rem}}
@media(max-width:680px){.auto-sidebar-shell{padding-block:1rem 2rem}.auto-sidebar-content>article>.hero:first-child{margin-top:-1rem}.kgen-editorial .kgen-article-hero .hero__inner,.company-claru .hero .hero__inner{padding-block:2.25rem}.article-standard-grid{padding-block:1rem 2rem}.article-standard-body .section{padding-block:1.25rem}.article-standard-body .section--alt{padding:1.1rem}.standard-article-figure{margin-block:1rem 1.25rem}.article-standard-body .card{padding:1rem}}
/* MIMIX pillar article */
.mimix-pillar .article-deck{font-size:1.2rem;line-height:1.65;color:var(--muted-foreground);max-width:56rem;margin:.8rem 0 1rem}
.mimix-pillar .meta-icon{display:inline-flex;align-items:center;gap:.35rem;white-space:nowrap}.mimix-pillar .meta-icon .premium-line-icon{width:18px;height:18px}
.premium-line-icon{flex:0 0 auto;color:var(--primary)}
.mimix-pillar .article-figure{margin:2rem 0}.mimix-pillar .article-figure img{display:block;width:100%;height:auto;border-radius:1.15rem;border:1px solid var(--border);box-shadow:0 18px 45px rgba(15,23,42,.12)}
.mimix-pillar .article-figure figcaption{margin:.65rem .25rem 0;color:var(--muted-foreground);font-size:.9rem;line-height:1.5}
.mimix-disclosure{display:grid;grid-template-columns:auto 1fr;gap:.8rem;align-items:start;margin:1.6rem 0;padding:1.1rem 1.2rem;border:1px solid color-mix(in oklab,var(--primary) 28%,var(--border));border-radius:1rem;background:color-mix(in oklab,var(--primary) 5%,var(--card));line-height:1.6}.mimix-disclosure p{margin:0}.mimix-disclosure svg{margin-top:.15rem}
.mimix-toc .toc__title{display:flex;align-items:center;gap:.55rem}.mimix-toc .premium-line-icon{width:20px;height:20px}
.mimix-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.5rem 0}.mimix-info-card{padding:1.25rem;border:1px solid color-mix(in oklab,var(--primary) 20%,var(--border));border-radius:1rem;background:linear-gradient(145deg,color-mix(in oklab,var(--primary) 5%,var(--card)),var(--card));box-shadow:0 10px 24px rgba(15,23,42,.05)}.mimix-info-card__icon{display:grid;place-items:center;width:46px;height:46px;border-radius:.85rem;background:color-mix(in oklab,var(--primary) 10%,transparent);border:1px solid color-mix(in oklab,var(--primary) 24%,transparent);margin-bottom:.85rem}.mimix-info-card h3{margin:0 0 .35rem;font-size:1.05rem}.mimix-info-card p{margin:0;color:var(--muted-foreground);line-height:1.6;font-size:.96rem}
.mimix-inline-cta{display:flex;justify-content:space-between;align-items:center;gap:1.2rem;margin:2rem 0;padding:1.35rem;border:1px solid color-mix(in oklab,var(--primary) 30%,var(--border));border-radius:1rem;background:radial-gradient(circle at 85% 20%,color-mix(in oklab,var(--primary) 12%,transparent),transparent 45%),var(--card)}.mimix-inline-cta>div{display:flex;flex-direction:column;gap:.25rem}.mimix-inline-cta>div span{color:var(--muted-foreground);line-height:1.5}
.mimix-steps{list-style:none!important;padding:0!important;display:grid;gap:.75rem}.mimix-steps li{display:grid;grid-template-columns:2.5rem 1fr;gap:.85rem;align-items:start;padding:1rem;border:1px solid var(--border);border-radius:.9rem;background:var(--card)}.mimix-steps li>span{display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:.75rem;background:var(--primary);color:var(--primary-foreground);font-weight:850}.mimix-steps p{margin:.2rem 0 0!important;color:var(--muted-foreground)}
.mimix-decision .checklist .premium-line-icon{width:20px;height:20px;margin-top:.15rem}.mimix-decision .checklist--x .premium-line-icon{color:#dc2626}
.mimix-cluster-plan{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:1.5rem 0}.mimix-cluster-plan>div{display:grid;grid-template-columns:auto 1fr;gap:.2rem .75rem;padding:1rem;border:1px solid var(--border);border-radius:.9rem;background:var(--card)}.mimix-cluster-plan>div>span{grid-row:1/3;font-weight:900;color:var(--primary);font-size:1.1rem}.mimix-cluster-plan small{color:var(--muted-foreground);text-transform:uppercase;letter-spacing:.08em;font-size:.68rem;font-weight:800}
.recommended-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;margin:1.25rem 0}.recommended-grid a{display:flex;flex-direction:column;gap:.45rem;padding:1.1rem;border:1px solid var(--border);border-radius:.9rem;background:var(--card);color:inherit;text-decoration:none;transition:.2s ease}.recommended-grid a:hover,.recommended-grid a:focus-visible{border-color:var(--primary);transform:translateY(-2px)}.recommended-grid span{color:var(--muted-foreground);font-size:.9rem;line-height:1.5}
.mimix-final-card{display:grid;grid-template-columns:auto 1fr;gap:1.2rem;padding:1.5rem;margin:2rem 0;border:1px solid color-mix(in oklab,var(--primary) 32%,var(--border));border-radius:1.1rem;background:linear-gradient(135deg,color-mix(in oklab,var(--primary) 10%,var(--card)),var(--card))}.mimix-final-card>span{display:grid;place-items:center;width:54px;height:54px;border-radius:1rem;background:var(--primary);color:var(--primary-foreground)}.mimix-final-card>span svg{color:inherit}.mimix-final-card h3{margin:0 0 .35rem}.mimix-final-card p{margin:0 0 1rem!important}
.mimix-pillar .source-box{margin:1.5rem 0;padding:1.2rem 1.3rem;border:1px solid color-mix(in oklab,var(--primary) 25%,var(--border));border-left:4px solid var(--primary);border-radius:1rem;background:color-mix(in oklab,var(--primary) 4%,var(--card));line-height:1.65}
.mimix-pillar .data-table td,.mimix-pillar .data-table th{min-width:10rem}.mimix-pillar .data-table th:first-child,.mimix-pillar .data-table td:first-child{min-width:9rem}
@media(max-width:760px){.mimix-info-grid,.mimix-cluster-plan,.recommended-grid{grid-template-columns:1fr}.mimix-inline-cta{align-items:stretch;flex-direction:column}.mimix-inline-cta .btn{width:100%;justify-content:center}.mimix-final-card{grid-template-columns:1fr}.mimix-disclosure{grid-template-columns:1fr}.mimix-pillar .article-figure img{border-radius:.8rem}}
