/* ============================================================
   Teachy Blog · CSS
   Tokens: Teachy Design System v1.2.0 (tokens/colors, typography, spacing)
   Motion: 150 a 200ms ease-out; hover só muda fundo e sombra; sem mola; sem loop decorativo
   ============================================================ */

@font-face{font-family:"Quicksand";src:url("fonts/Quicksand-VariableFont.woff2") format("woff2");font-weight:300 700;font-display:swap}
@font-face{font-family:"Inter";src:url("fonts/Inter-VariableFont.woff2") format("woff2");font-weight:100 900;font-display:swap}

:root{
  --color-gray-900:#0F121A;--color-gray-800:#323747;--color-gray-700:#475066;--color-gray-600:#596380;--color-gray-500:#737D99;
  --color-gray-400:#929BB2;--color-gray-300:#ADB6CC;--color-gray-200:#D5DCED;--color-gray-100:#EFF2FB;--color-gray-50:#F9FBFF;--color-gray-00:#FFFFFF;
  --color-blue-800:#212D9B;--color-blue-700:#3055BF;--color-blue-600:#476EE4;--color-blue-500:#5880F1;--color-blue-400:#80A1FF;
  --color-blue-300:#D2DEFF;--color-blue-200:#D7E1FF;--color-blue-100:#EDF2FF;
  --color-blue-hover:#3A5EC7;--color-blue-active:#2F4DA8;
  --color-green-500:#69BEBA;--color-green-400:#77C7C1;--color-green-300:#A8DBD8;--color-green-200:#C6E9E7;--color-green-100:#E2FAF8;--color-green-50:#F0FDFC;
  --color-yellow-500:#FFCC4C;--color-yellow-400:#FFD666;--color-yellow-300:#FFEAAB;--color-yellow-200:#FFF0C2;--color-yellow-100:#FFF9E7;
  --color-red-700:#C53030;--color-red-500:#E53E3E;--color-red-300:#FFDCDC;--color-red-100:#FFF5F5;
  --color-dark-900:#0F151A;--color-dark-800:#161C2E;
  --gradient-ai-500:linear-gradient(93deg,#D6E1FF 0%,#CBF6F2 55.57%,#FFF0C2 111.13%);
  --gradient-ai-300:linear-gradient(93deg,#E2EAFF 0%,#D8F8F5 55.57%,#FFF4D9 111.13%);
  --gradient-ai-100:linear-gradient(93deg,#EDF2FF 0%,#E2FAF8 55.57%,#FFF9E7 111.13%);
  --text-primary:var(--color-gray-900);--text-secondary:var(--color-gray-700);--text-tertiary:var(--color-gray-600);--text-muted:var(--color-gray-500);
  --text-link:var(--color-blue-700);
  --surface-bg:var(--color-gray-00);--surface-subtle:var(--color-gray-50);--surface-border:var(--color-gray-200);--surface-hover:var(--color-blue-100);
  --shadow-card:0 2px 4px 0 rgba(19,42,84,.07);
  --shadow-hover:0 6px 12px 0 rgba(54,97,215,.10),0 2px 4px 0 rgba(34,58,126,.05);
  --shadow-premium:0 6px 10px 0 rgba(88,128,241,.10),0 2px 4px 0 rgba(19,53,84,.04);
  --font-display:"Quicksand",-apple-system,BlinkMacSystemFont,sans-serif;
  --font-body:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --tracking-button:.15px;
  --space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;
  --radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:24px;--radius-full:9999px;
  --height-btn-lg:48px;--height-btn-md:40px;--height-btn-sm:32px;--height-tag:28px;--height-tag-sm:24px;
  --topbar:64px;
  --ease:cubic-bezier(.2,.7,.2,1);--dur:180ms;
  --measure:66ch;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--topbar) + 16px)}
body{margin:0;font-family:var(--font-body);font-size:17px;line-height:1.65;color:var(--text-primary);background:var(--surface-bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:var(--text-link);text-decoration-thickness:1px;text-underline-offset:3px;transition:color var(--dur) var(--ease)}
a:hover{color:var(--color-blue-800)}
:focus-visible{outline:2px solid var(--color-blue-500);outline-offset:2px;border-radius:var(--radius-sm)}
img,svg{max-width:100%;display:block}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;line-height:1.15;letter-spacing:-.01em;margin:0 0 var(--space-3);color:var(--text-primary)}
h1{font-size:clamp(32px,4.6vw,48px);line-height:1.1}
h2{font-size:clamp(24px,2.7vw,32px);margin-top:var(--space-12)}
h3{font-size:22px;margin-top:var(--space-8)}
p,li{max-width:var(--measure)}
p{margin:0 0 var(--space-4)}
ul,ol{padding-left:22px;margin:0 0 var(--space-4)}
li{margin-bottom:6px}
li::marker{color:var(--color-blue-600);font-weight:600}
strong{font-weight:600}
table{border-collapse:separate;border-spacing:0;width:100%;margin:var(--space-2) 0 var(--space-6);font-size:15px;background:#fff;border:1px solid var(--surface-border);border-radius:var(--radius-lg);overflow:hidden}
th,td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--surface-border);vertical-align:top}
th{font-family:var(--font-display);font-weight:700;background:var(--surface-subtle);font-size:14px;color:var(--text-secondary)}
tbody tr{transition:background-color var(--dur) var(--ease)}
tbody tr:hover{background:var(--surface-hover)}
tr:last-child td{border-bottom:0}
td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}
.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 0 var(--space-6)}
.table-wrap table{margin:0;min-width:520px}
blockquote{margin:var(--space-6) 0;padding:var(--space-4) var(--space-5);border-left:3px solid var(--color-blue-500);background:var(--color-blue-100);border-radius:0 var(--radius-md) var(--radius-md) 0;font-size:16px}
blockquote p:last-child{margin:0}
blockquote cite{display:block;font-style:normal;font-size:13px;color:var(--text-tertiary);margin-top:6px}
code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em;background:var(--color-gray-100);padding:1px 6px;border-radius:var(--radius-sm)}
mark.todo{background:var(--color-yellow-300);padding:1px 6px;border-radius:var(--radius-sm);font-family:ui-monospace,monospace;font-size:.85em}
.wrap{max-width:1160px;margin:0 auto;padding:0 clamp(16px,4vw,32px)}
.narrow{max-width:760px;margin:0 auto}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:8px;background:#fff;padding:8px 12px;border-radius:var(--radius-md);z-index:100}
.skip:focus{left:8px}

.ic{width:20px;height:20px;flex:0 0 auto;display:inline-block;vertical-align:middle}
.ic svg{width:100%;height:100%}
.ic svg path,.ic svg rect,.ic svg circle{fill:currentColor}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:var(--height-btn-lg);padding:0 22px;border-radius:var(--radius-md);border:1.5px solid transparent;font-family:var(--font-display);font-weight:700;font-size:16px;letter-spacing:var(--tracking-button);text-decoration:none;cursor:pointer;white-space:nowrap;transition:background-color var(--dur) var(--ease),border-color var(--dur) var(--ease),color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}
.btn .ic{width:18px;height:18px}
.btn-filled{background:var(--color-blue-600);color:#fff}
.btn-filled:hover{background:var(--color-blue-hover);color:#fff}
.btn-filled:active{background:var(--color-blue-active)}
.btn-outlined{background:#fff;color:var(--text-primary);border-color:var(--surface-border)}
.btn-outlined:hover{background:var(--surface-hover);border-color:var(--color-blue-500);color:var(--text-primary)}
.btn-ghost{background:transparent;color:var(--text-link)}
.btn-ghost:hover{background:var(--surface-hover);color:var(--color-blue-800)}
.btn-ai{background:var(--gradient-ai-500);color:var(--text-primary);box-shadow:inset 0 0 0 1px rgba(88,128,241,.25)}
.btn-ai:hover{background:var(--gradient-ai-300);color:var(--text-primary);box-shadow:inset 0 0 0 1px rgba(88,128,241,.45)}
.btn-yellow{background:var(--color-yellow-500);color:var(--text-primary)}
.btn-yellow:hover{background:#F2BF3F;color:var(--text-primary)}
.btn-md{height:var(--height-btn-md);padding:0 16px;font-size:15px}
.btn-sm{height:var(--height-btn-sm);padding:0 12px;font-size:14px}

.tag{display:inline-flex;align-items:center;gap:6px;height:var(--height-tag-sm);padding:0 10px;border-radius:var(--radius-sm);font-family:var(--font-display);font-weight:700;font-size:12px;letter-spacing:.02em;white-space:nowrap}
.tag-blue{background:var(--color-blue-100);color:var(--color-blue-700);box-shadow:inset 0 0 0 1px var(--color-blue-300)}
.tag-green{background:var(--color-green-100);color:#0B5F5B;box-shadow:inset 0 0 0 1px var(--color-green-300)}
.tag-yellow{background:var(--color-yellow-100);color:#7A5A00;box-shadow:inset 0 0 0 1px var(--color-yellow-300)}
.tag-gray{background:var(--color-gray-100);color:var(--text-secondary);box-shadow:inset 0 0 0 1px var(--color-gray-200)}
.tag-ai{background:var(--gradient-ai-100);color:var(--color-blue-700);box-shadow:inset 0 0 0 1px var(--color-blue-300)}

.progress{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--color-blue-600),var(--color-green-500),var(--color-yellow-500));z-index:60;transition:width 120ms linear}
.site-header{position:sticky;top:0;z-index:50;background:rgba(249,251,255,.9);backdrop-filter:saturate(1.2) blur(10px);border-bottom:1px solid var(--surface-border);transition:box-shadow var(--dur) var(--ease)}
.site-header.scrolled{box-shadow:var(--shadow-card)}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;height:var(--topbar);gap:16px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--text-primary)}
.brand svg{height:26px;width:auto}
.brand .sep{width:1px;height:22px;background:var(--surface-border)}
.brand .word{font-family:var(--font-display);font-weight:700;font-size:16px;color:var(--text-secondary)}
.nav-main{display:flex;gap:4px;align-items:center}
.nav-main a{font-family:var(--font-display);font-weight:700;font-size:15px;color:var(--text-secondary);text-decoration:none;padding:8px 12px;border-radius:var(--radius-md);transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease)}
.nav-main a:hover,.nav-main a[aria-current=page]{background:var(--surface-hover);color:var(--text-primary)}
.nav-main .btn{margin-left:8px}
.nav-main .search-link{display:inline-flex;align-items:center;gap:6px}
.site-header .nav-cta{margin-left:auto}
@media(max-width:860px){.site-header .wrap{flex-wrap:wrap;height:auto;padding-top:10px;padding-bottom:0;row-gap:0}.site-header .brand{order:1}.site-header .nav-cta{order:2}.nav-main{order:3;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:6px 0 8px;margin:0 -4px}.nav-main::-webkit-scrollbar{display:none}.nav-main a{font-size:14px;padding:6px 10px;flex:0 0 auto}}
@media(max-width:480px){.nav-main .search-link span{display:none}}

.crumbs{font-size:14px;color:var(--text-tertiary);margin:var(--space-5) 0 0}
.crumbs ol{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px}
.crumbs li+li::before{content:"/";color:var(--color-gray-300);margin-right:6px}
.crumbs li::marker{content:""}
.crumbs a{color:var(--text-tertiary);text-decoration:none}
.crumbs a:hover{color:var(--text-link)}

.hub-hero{position:relative;padding:var(--space-16) 0 var(--space-6);overflow:hidden;margin:0 calc(-1 * clamp(16px,4vw,32px));padding-left:clamp(16px,4vw,32px);padding-right:clamp(16px,4vw,32px)}
.hub-hero .glow{position:absolute;pointer-events:none;z-index:-1;border-radius:50%}
.hub-hero .glow.a{top:-120px;right:-80px;width:520px;height:520px;background:radial-gradient(closest-side,rgba(88,128,241,.16),transparent 70%)}
.hub-hero .glow.b{top:80px;right:260px;width:420px;height:420px;background:radial-gradient(closest-side,rgba(105,190,186,.16),transparent 70%)}
.hub-hero .glow.c{top:-40px;right:120px;width:360px;height:360px;background:radial-gradient(closest-side,rgba(255,204,76,.14),transparent 70%)}
.hub-hero .eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-display);font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--color-blue-700);margin-bottom:var(--space-3)}
.hub-hero .eyebrow .ic{width:16px;height:16px}
.hub-hero h1{max-width:20ch}
.hub-hero h1 .grad{background:linear-gradient(93deg,var(--color-blue-600),#2A9D96 55%,#C7952A);-webkit-background-clip:text;background-clip:text;color:transparent}
.hub-hero p.lede{font-size:19px;color:var(--text-secondary);max-width:60ch}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:var(--space-10);align-items:center}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr}.hero-art{display:none}}
.hero-art{position:relative;height:340px}
.hero-art .mcard{position:absolute;width:210px;background:#fff;border:1px solid var(--surface-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:14px;transition:box-shadow var(--dur) var(--ease),transform 400ms var(--ease)}
.hero-art .mcard .th{height:74px;border-radius:var(--radius-md);display:grid;place-items:center;margin-bottom:10px}
.hero-art .mcard .th .ic{width:32px;height:32px}
.hero-art .mcard b{display:block;font-family:var(--font-display);font-size:15px;margin-bottom:2px}
.hero-art .mcard span{font-size:12px;color:var(--text-muted)}
.hero-art .m1{left:6%;top:6%;transform:rotate(-4deg)}
.hero-art .m2{left:40%;top:24%;transform:rotate(2deg);z-index:2}
.hero-art .m3{left:14%;top:56%;transform:rotate(3deg)}
.hero-art .m4{left:58%;top:62%;transform:rotate(-2deg)}
.hero-art .mcard:hover{box-shadow:var(--shadow-hover);transform:rotate(0) translateY(-2px);z-index:3}
.th-blue{background:var(--color-blue-100);color:var(--color-blue-700)}
.th-green{background:var(--color-green-100);color:#0B5F5B}
.th-yellow{background:var(--color-yellow-100);color:#7A5A00}
.th-ai{background:var(--gradient-ai-100);color:var(--color-blue-700)}

.audience-switch{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--space-4);margin:var(--space-8) 0 var(--space-2)}
.audience-switch a{position:relative;display:block;padding:var(--space-6);border:1px solid var(--surface-border);border-radius:var(--radius-lg);text-decoration:none;color:var(--text-primary);background:#fff;box-shadow:var(--shadow-card);transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}
.audience-switch a:hover{border-color:var(--color-blue-300);box-shadow:var(--shadow-hover)}
.audience-switch a .ic{width:28px;height:28px;margin-bottom:12px;color:var(--color-blue-700)}
.audience-switch a .arrow{position:absolute;right:20px;top:22px;color:var(--color-gray-300);transition:color var(--dur) var(--ease),transform var(--dur) var(--ease)}
.audience-switch a:hover .arrow{color:var(--color-blue-600);transform:translateX(3px)}
.audience-switch h2{font-size:22px;margin:0 0 6px}
.audience-switch p{margin:0;color:var(--text-tertiary);font-size:15px}
.audience-switch .tag{margin-bottom:12px}

.band{margin:var(--space-12) 0 0;padding:var(--space-8);border-radius:var(--radius-xl);background:var(--gradient-ai-100);border:1px solid var(--color-blue-200)}
.band .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-6)}
.band b{display:block;font-family:var(--font-display);font-size:40px;line-height:1;color:var(--color-blue-700);font-variant-numeric:tabular-nums}
.band span{display:block;font-size:14px;color:var(--text-secondary);margin-top:8px;line-height:1.45}
.band small{display:block;font-size:12px;color:var(--text-muted);margin-top:4px}

.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:var(--space-12) 0 var(--space-4)}
.section-head h2{margin:0}
.section-head a{font-family:var(--font-display);font-weight:700;font-size:15px;text-decoration:none;display:inline-flex;align-items:center;gap:4px}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-5)}
.card{position:relative;background:#fff;border:1px solid var(--surface-border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-card);display:flex;flex-direction:column;transition:box-shadow var(--dur) var(--ease),border-color var(--dur) var(--ease)}
.card:hover{box-shadow:var(--shadow-hover);border-color:var(--color-blue-300)}
.card .meta{font-size:13px;color:var(--text-muted);display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:12px}
.card h3{margin:0 0 8px;font-size:20px}
.card h3 a{color:var(--text-primary);text-decoration:none}
.card h3 a::after{content:"";position:absolute;inset:0}
.card h3 a:hover{color:var(--text-link)}
.card p{color:var(--text-secondary);font-size:15px;margin:0 0 14px;flex:1}
.card .more{font-family:var(--font-display);font-weight:700;font-size:15px;text-decoration:none;display:inline-flex;align-items:center;gap:6px}
.card .more .ic{width:16px;height:16px;transition:transform var(--dur) var(--ease)}
.card:hover .more .ic{transform:translateX(3px)}
.card.featured{grid-column:1/-1;background:var(--gradient-ai-100);border-color:var(--color-blue-200);box-shadow:var(--shadow-premium)}
.card.featured h3{font-size:26px}
.card.featured p{font-size:17px}
.card .thumb{height:6px;border-radius:var(--radius-full);margin:-8px 0 16px;background:var(--gradient-ai-500)}

.filters{display:flex;gap:8px;flex-wrap:wrap;margin:var(--space-4) 0 var(--space-6)}
.filters button{height:var(--height-tag);padding:0 14px;border-radius:var(--radius-full);border:1px solid var(--surface-border);background:#fff;font-family:var(--font-display);font-weight:700;font-size:13px;color:var(--text-secondary);cursor:pointer;transition:background-color var(--dur) var(--ease),border-color var(--dur) var(--ease),color var(--dur) var(--ease)}
.filters button:hover{background:var(--surface-hover)}
.filters button[aria-pressed=true]{background:var(--color-blue-600);border-color:var(--color-blue-600);color:#fff}
.card[hidden]{display:none}

.article-layout{display:grid;grid-template-columns:minmax(0,760px) 260px;gap:var(--space-12);justify-content:center}
@media(max-width:1060px){.article-layout{grid-template-columns:minmax(0,760px)}.rail{display:none}}
.article-head{padding:var(--space-6) 0 var(--space-2)}
.article-head .kicker{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-display);font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--color-blue-700)}
.article-head h1{margin:10px 0 14px;max-width:24ch}
.article-head .byline{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:14px;color:var(--text-tertiary);align-items:center}
.article-head .byline .avatar{width:26px;height:26px;border-radius:50%;background:var(--color-blue-600);color:#fff;display:inline-grid;place-items:center;font-family:var(--font-display);font-weight:700;font-size:12px;margin-right:6px;vertical-align:middle}
.answer{position:relative;margin:var(--space-8) 0 var(--space-2);padding:var(--space-5) var(--space-6);border-radius:var(--radius-lg);background:var(--gradient-ai-100);box-shadow:inset 0 0 0 1px var(--color-blue-200)}
.answer .label{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-display);font-weight:700;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--color-blue-700);margin-bottom:8px}
.answer .label .ic{width:16px;height:16px}
.answer p{margin:0 0 8px;font-size:17px}
.answer p:last-child{margin:0}
.article-body{padding:var(--space-2) 0 var(--space-10)}
.article-body h2{scroll-margin-top:calc(var(--topbar) + 20px);position:relative}
.article-body h2 a.anchor{position:absolute;left:-28px;top:.15em;color:var(--color-gray-300);text-decoration:none;font-weight:400;opacity:0;transition:opacity var(--dur) var(--ease)}
.article-body h2:hover a.anchor{opacity:1}
@media(max-width:800px){.article-body h2 a.anchor{display:none}}
.toc{margin:var(--space-6) 0;padding:var(--space-4) var(--space-5);border:1px solid var(--surface-border);border-radius:var(--radius-lg);background:var(--surface-subtle);font-size:15px}
.toc strong{font-family:var(--font-display);display:block;margin-bottom:8px}
.toc ol{margin:0;padding-left:20px;columns:2;column-gap:24px}
@media(max-width:640px){.toc ol{columns:1}}
.toc a{text-decoration:none}
.rail{position:sticky;top:calc(var(--topbar) + 24px);align-self:start;font-size:14px}
.rail strong{font-family:var(--font-display);display:block;margin-bottom:10px;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}
.rail ol{list-style:none;padding:0;margin:0 0 var(--space-6);border-left:2px solid var(--surface-border)}
.rail li{margin:0}
.rail li::marker{content:""}
.rail a{display:block;padding:6px 0 6px 14px;color:var(--text-tertiary);text-decoration:none;margin-left:-2px;border-left:2px solid transparent;transition:color var(--dur) var(--ease),border-color var(--dur) var(--ease)}
.rail a:hover{color:var(--text-primary)}
.rail a.active{color:var(--color-blue-700);border-left-color:var(--color-blue-600);font-weight:600}
.rail .share{display:flex;flex-direction:column;gap:8px}
.share-btn{display:inline-flex;align-items:center;gap:8px;height:var(--height-btn-md);padding:0 12px;border-radius:var(--radius-md);border:1px solid var(--surface-border);background:#fff;font-family:var(--font-display);font-weight:700;font-size:14px;color:var(--text-secondary);text-decoration:none;cursor:pointer;transition:background-color var(--dur) var(--ease),border-color var(--dur) var(--ease)}
.share-btn:hover{background:var(--surface-hover);border-color:var(--color-blue-300);color:var(--text-primary)}
.share-btn .ic{width:16px;height:16px}
.share-row{display:flex;gap:8px;flex-wrap:wrap;margin:var(--space-6) 0}
.callout{margin:var(--space-6) 0;padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);border:1px solid var(--surface-border);background:var(--surface-subtle);display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start}
.callout .ic{width:22px;height:22px;color:var(--color-blue-700);margin-top:2px}
.callout.tool{background:var(--color-green-50);border-color:var(--color-green-200)}
.callout.tool .ic{color:#0B5F5B}
.callout.note{background:var(--color-yellow-100);border-color:var(--color-yellow-300)}
.callout.note .ic{color:#7A5A00}
.callout strong{font-family:var(--font-display)}
.callout p{margin:0}
.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin:var(--space-2) 0 var(--space-6)}
.stat{background:#fff;border:1px solid var(--surface-border);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-card);transition:box-shadow var(--dur) var(--ease)}
.stat:hover{box-shadow:var(--shadow-hover)}
.stat b{display:block;font-family:var(--font-display);font-size:32px;line-height:1;color:var(--color-blue-700);margin-bottom:6px;font-variant-numeric:tabular-nums}
.stat span{font-size:13px;color:var(--text-tertiary);line-height:1.4;display:block}
.keyfact{margin:var(--space-8) 0;padding:var(--space-6);border-radius:var(--radius-xl);background:var(--color-dark-900);color:#fff;display:grid;grid-template-columns:auto 1fr;gap:var(--space-6);align-items:center}
.keyfact b{font-family:var(--font-display);font-size:clamp(40px,6vw,64px);line-height:1;color:var(--color-yellow-500);font-variant-numeric:tabular-nums}
.keyfact p{margin:0;color:#D5DCED;max-width:44ch}
.keyfact p strong{color:#fff}
@media(max-width:560px){.keyfact{grid-template-columns:1fr}}
.faq{margin-top:var(--space-12)}
.faq details{border:1px solid var(--surface-border);border-radius:var(--radius-md);margin-bottom:10px;background:#fff;transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}
.faq details[open]{border-color:var(--color-blue-300);box-shadow:var(--shadow-card)}
.faq summary{cursor:pointer;padding:14px 18px;font-family:var(--font-display);font-weight:700;font-size:17px;list-style:none;display:flex;justify-content:space-between;gap:12px;align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary .ic{width:18px;height:18px;color:var(--color-blue-600);transition:transform var(--dur) var(--ease)}
.faq details[open] summary .ic{transform:rotate(180deg)}
.faq .a{padding:0 18px 16px;color:var(--text-secondary)}
.faq .a p{margin:0}
.cite{margin:var(--space-6) 0;padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);border:1px dashed var(--color-blue-300);background:var(--color-blue-100);font-size:14px}
.cite strong{font-family:var(--font-display);display:block;margin-bottom:6px}
.cite code{display:block;background:#fff;padding:10px 12px;border-radius:var(--radius-md);margin:6px 0 10px;white-space:pre-wrap;font-size:13px}
.sources{margin-top:var(--space-8);font-size:14px;color:var(--text-tertiary);border-top:1px solid var(--surface-border);padding-top:var(--space-4)}
.sources ol{padding-left:18px}
.cta-box{position:relative;margin:var(--space-12) 0 0;padding:var(--space-8);border-radius:var(--radius-xl);background:var(--color-dark-900);color:#fff;overflow:hidden}
.cta-box::before{content:"";position:absolute;right:-80px;top:-80px;width:280px;height:280px;border-radius:50%;background:radial-gradient(closest-side,rgba(88,128,241,.35),transparent 70%)}
.cta-box::after{content:"";position:absolute;right:120px;bottom:-120px;width:260px;height:260px;border-radius:50%;background:radial-gradient(closest-side,rgba(255,204,76,.22),transparent 70%)}
.cta-box>*{position:relative;z-index:1}
.cta-box h2{color:#fff;margin:0 0 8px;font-size:26px}
.cta-box p{color:#C9D3E6;margin:0 0 18px;max-width:56ch}
.cta-box .btn-outlined{background:transparent;color:#fff;border-color:rgba(255,255,255,.3)}
.cta-box .btn-outlined:hover{background:rgba(255,255,255,.08);border-color:#fff;color:#fff}
.cta-row{display:flex;gap:12px;flex-wrap:wrap}
.related{margin-top:var(--space-12)}
.related h2{font-size:22px}
.update-note{font-size:13px;color:var(--text-muted);margin-top:var(--space-4)}
.backtop{position:fixed;right:20px;bottom:20px;width:44px;height:44px;border-radius:var(--radius-md);background:#fff;border:1px solid var(--surface-border);box-shadow:var(--shadow-card);display:grid;place-items:center;color:var(--text-secondary);opacity:0;pointer-events:none;transition:opacity var(--dur) var(--ease),background-color var(--dur) var(--ease);z-index:40;cursor:pointer}
.backtop.show{opacity:1;pointer-events:auto}
.backtop:hover{background:var(--surface-hover)}

html.js .reveal{opacity:0;transform:translateY(10px);transition:opacity 420ms var(--ease),transform 420ms var(--ease)}
html.js .reveal.in{opacity:1;transform:none}
html.js .reveal:nth-child(2){transition-delay:60ms}
html.js .reveal:nth-child(3){transition-delay:120ms}

.search-box{display:flex;gap:8px;margin:var(--space-6) 0}
.search-box input{flex:1;height:var(--height-btn-lg);padding:0 16px;border:1px solid var(--surface-border);border-radius:var(--radius-md);font:inherit;font-size:16px;background:var(--surface-subtle)}
.search-box input:focus{outline:none;border-color:var(--color-blue-500);box-shadow:0 0 0 3px var(--color-blue-100)}
.search-hint{font-size:14px;color:var(--text-muted)}

.site-footer{margin-top:var(--space-16);border-top:1px solid var(--surface-border);background:var(--surface-subtle);padding:var(--space-10) 0 var(--space-6);font-size:14px;color:var(--text-tertiary)}
.site-footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--space-6)}
@media(max-width:760px){.site-footer .cols{grid-template-columns:1fr 1fr}}
.site-footer h3{font-size:15px;margin:0 0 10px}
.site-footer ul{list-style:none;padding:0;margin:0}
.site-footer li{margin-bottom:6px}
.site-footer li::marker{content:""}
.site-footer a{color:var(--text-secondary);text-decoration:none}
.site-footer a:hover{color:var(--text-link)}
.site-footer .logo svg{height:24px;width:auto;margin-bottom:12px}
.site-footer .legal{margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--surface-border);display:flex;flex-wrap:wrap;gap:8px 16px;justify-content:space-between}

.tool-panel{background:#fff;border:1px solid var(--surface-border);border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow-card);margin:var(--space-6) 0}
.tool-panel h2{margin-top:0;font-size:22px;display:flex;align-items:center;gap:10px}
.tool-panel h2 .num{width:28px;height:28px;border-radius:var(--radius-md);background:var(--color-blue-600);color:#fff;display:inline-grid;place-items:center;font-size:14px;flex:0 0 auto}
.fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4)}
.field label{display:block;font-family:var(--font-display);font-weight:700;font-size:14px;margin-bottom:6px}
.field small{display:block;font-family:var(--font-body);font-weight:400;color:var(--text-tertiary);font-size:12px}
.stepper{display:flex;height:var(--height-btn-lg)}
.stepper button{width:44px;border:1px solid var(--surface-border);background:#fff;font-size:20px;color:var(--text-secondary);cursor:pointer;transition:background-color var(--dur) var(--ease)}
.stepper button:first-child{border-radius:var(--radius-md) 0 0 var(--radius-md);border-right:0}
.stepper button:last-child{border-radius:0 var(--radius-md) var(--radius-md) 0;border-left:0}
.stepper button:hover{background:var(--surface-hover)}
.stepper input{flex:1;min-width:0;text-align:center;font:inherit;font-size:16px;border:1px solid var(--surface-border);border-radius:0;font-variant-numeric:tabular-nums;background:var(--surface-subtle)}
.stepper input:focus{outline:none;border-color:var(--color-blue-500);position:relative;z-index:1}
.pace{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.pace button{height:var(--height-btn-md);padding:0 14px;border-radius:var(--radius-md);border:1px solid var(--surface-border);background:#fff;font-family:var(--font-display);font-weight:700;font-size:14px;cursor:pointer;color:var(--text-secondary);transition:background-color var(--dur) var(--ease),border-color var(--dur) var(--ease),color var(--dur) var(--ease)}
.pace button:hover{background:var(--surface-hover)}
.pace button.on{background:var(--color-blue-600);border-color:var(--color-blue-600);color:#fff}
.result{position:relative;background:var(--color-dark-900);color:#fff;border-radius:var(--radius-xl);padding:var(--space-8);overflow:hidden}
.result::before{content:"";position:absolute;right:-60px;top:-60px;width:260px;height:260px;border-radius:50%;background:radial-gradient(closest-side,rgba(88,128,241,.4),transparent 70%)}
.result>*{position:relative}
.result .lbl{font-family:var(--font-display);font-weight:700;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:#A9B6CC;margin-bottom:8px}
.result .big{font-family:var(--font-display);font-weight:700;font-size:clamp(40px,7vw,64px);line-height:1;font-variant-numeric:tabular-nums;transition:color var(--dur) var(--ease)}
.result .big.flash{color:var(--color-yellow-500)}
.result .big small{font-size:.32em;color:#C9D3E6;margin-left:8px}
.result p{color:#D5DCED;margin:14px 0 0;max-width:54ch}
.result p b{color:#fff}
.tri{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:14px}
.tri div{background:#fff;border:1px solid var(--surface-border);border-radius:var(--radius-lg);padding:14px 16px;box-shadow:var(--shadow-card)}
.tri b{display:block;font-family:var(--font-display);font-size:24px;line-height:1.1;font-variant-numeric:tabular-nums}
.tri span{font-size:13px;color:var(--text-tertiary)}
.tasks{display:grid;gap:10px;margin-top:8px}
.trow{display:grid;grid-template-columns:170px 1fr 90px;gap:12px;align-items:center;font-size:15px}
@media(max-width:600px){.trow{grid-template-columns:110px 1fr 70px;font-size:14px}}
.trow .tn{font-weight:600;line-height:1.3}
.trow .tn small{display:block;font-weight:400;color:var(--text-tertiary);font-size:12px}
.tbar{height:20px;background:var(--color-gray-100);border-radius:var(--radius-sm);overflow:hidden}
.tbar i{display:block;height:100%;width:0;background:var(--color-blue-600);transition:width 600ms var(--ease)}
.tbar i.auto{background:#0B8F87}.tbar i.semi{background:#C7A232}.tbar i.manual{background:var(--color-gray-400)}
.trow .tv{text-align:right;font-weight:600;font-variant-numeric:tabular-nums}
.legend{font-size:13px;color:var(--text-tertiary);display:flex;gap:16px;flex-wrap:wrap;margin-top:12px}
.legend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:5px;vertical-align:middle}
input[type=range]{width:100%;accent-color:var(--color-blue-600)}
.recgrid{display:grid;grid-template-columns:260px 1fr;gap:var(--space-6)}
@media(max-width:720px){.recgrid{grid-template-columns:1fr}}
.recval{font-family:var(--font-display);font-weight:700;font-size:28px;color:var(--color-blue-700)}
.recout .row{display:flex;justify-content:space-between;gap:16px;border-bottom:1px dashed var(--surface-border);padding:8px 0}
.recout .row:last-child{border-bottom:0}
.recout .amt{font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.recout small{display:block;color:var(--text-tertiary);font-size:12px}
.alertbox{margin-top:14px;padding:14px 18px;border-radius:var(--radius-lg);border:1px solid var(--surface-border);border-left-width:4px;background:#fff;box-shadow:var(--shadow-card)}
.alertbox.warn{border-left-color:#C7A232}.alertbox.high{border-left-color:var(--color-red-700)}.alertbox.ok{border-left-color:#0B8F87}
.alertbox h3{margin:0 0 4px;font-size:17px}
.alertbox p{margin:0;font-size:15px;color:var(--text-secondary)}

@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}html{scroll-behavior:auto}html.js .reveal{opacity:1;transform:none}}
@media print{.site-header,.site-footer,.cta-box,.related,.rail,.progress,.backtop,.share-row{display:none}body{font-size:12pt}.answer{box-shadow:none;border:1px solid #ccc}}

/* Home e hubs: destaques, ferramentas e princípios */
.section-lede{color:var(--text-secondary);font-size:16px;margin:-6px 0 var(--space-5);max-width:66ch}
.card.tool-card .th{width:44px;height:44px;border-radius:var(--radius-md);display:grid;place-items:center;margin-bottom:14px}
.card.tool-card .th .ic{width:24px;height:24px}
.cards.tools{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.card .meta .tag-ai .ic{width:12px;height:12px}
.principles{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-5);margin-top:var(--space-12)}
.principles div{padding:var(--space-5) var(--space-6);border:1px solid var(--surface-border);border-radius:var(--radius-lg);background:var(--surface-subtle)}
.principles .ic{width:26px;height:26px;color:var(--color-blue-700);margin-bottom:10px}
.principles h3{font-size:17px;margin:0 0 6px}
.principles p{margin:0;font-size:14px;color:var(--text-tertiary)}
.hub-hero .cta-row .btn-ghost .ic{width:18px;height:18px}
/* Seções por tema e nota de pilar */
.topic-nav{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;font-size:14px;color:var(--text-muted);margin:var(--space-2) 0 0}
.topic-nav a{font-family:var(--font-display);font-weight:700;text-decoration:none;padding:4px 10px;border-radius:var(--radius-full);background:var(--surface-subtle);border:1px solid var(--surface-border);color:var(--text-secondary)}
.topic-nav a:hover{background:var(--surface-hover);color:var(--text-primary)}
.topic-head{display:flex;align-items:baseline;gap:12px;font-size:20px;margin:var(--space-10) 0 var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--surface-border);scroll-margin-top:calc(var(--topbar) + 20px)}
.topic-head span{font-family:var(--font-body);font-weight:400;font-size:13px;color:var(--text-muted)}
.pillar-note{display:flex;gap:10px;align-items:center;margin:var(--space-4) 0 0;padding:10px 14px;border-radius:var(--radius-md);background:var(--surface-subtle);border:1px solid var(--surface-border);font-size:14px;color:var(--text-secondary)}
.pillar-note .ic{width:18px;height:18px;color:var(--color-blue-700)}
.mini-calc{margin:var(--space-6) 0}
.mini-calc .out{margin-top:14px;padding:14px 18px;border-radius:var(--radius-lg);background:var(--color-blue-100);font-size:16px}
.mini-calc .out b{font-family:var(--font-display);font-size:28px;color:var(--color-blue-700);display:block;margin-bottom:4px}

/* ============================================================
   Home: hero com constelação interativa + blocos vivos (carrossel, números,
   calculadora com barras, trilhas) sobre a base tipográfica do site.
   Concatenado ao blog.css no build. Motion longo só no hero, e desligado em
   prefers-reduced-motion.
   ============================================================ */

/* Menos ruído no resto do site: sem brilhos decorativos nos hubs, uma etiqueta por card */
.hub-hero .glow{display:none}
.card .meta .tag{display:none}
.card .meta .tag.tag-ai{display:inline-flex}
.card .meta{color:var(--text-muted)}
.card .meta .k{font-weight:600;color:var(--text-secondary)}
.card .meta time{display:none}
.card .thumb{display:none}

.home .wrap{max-width:1160px}
.home-eyebrow{font-size:13px;color:var(--text-muted);margin:0 0 var(--space-4);font-variant-numeric:tabular-nums}
.home-lede{font-size:19px;color:var(--text-secondary);max-width:58ch;margin:0 0 var(--space-6)}

/* ---------- Hero: céu ---------- */
.sky{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:var(--space-8);align-items:center;padding:var(--space-12) 0 var(--space-10);min-height:560px;margin:0 calc(-1 * clamp(16px,4vw,32px));padding-left:clamp(16px,4vw,32px);padding-right:clamp(16px,4vw,32px);overflow:hidden;border-bottom:1px solid var(--surface-border)}
.sky-bg{position:absolute;inset:-20% -10%;z-index:-1;pointer-events:none;
  background:
    radial-gradient(40% 50% at 78% 30%,rgba(88,128,241,.18),transparent 70%),
    radial-gradient(35% 45% at 92% 75%,rgba(105,190,186,.18),transparent 70%),
    radial-gradient(30% 40% at 62% 85%,rgba(255,204,76,.16),transparent 70%),
    radial-gradient(25% 30% at 10% 90%,rgba(88,128,241,.08),transparent 70%);
  filter:blur(10px);animation:skyDrift 26s ease-in-out infinite alternate}
@keyframes skyDrift{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(-3%,2%,0) scale(1.06)}}
.sky-copy{position:relative;z-index:1}
.sky h1{font-size:clamp(38px,5.2vw,60px);letter-spacing:-.02em;line-height:1.04;margin:0 0 var(--space-4);max-width:14ch}
.sky h1 .grad{background:linear-gradient(93deg,var(--color-blue-600),#2A9D96 60%,#C7952A);-webkit-background-clip:text;background-clip:text;color:transparent}
.tw-line{min-height:2.6em;font-size:18px}
.tw{color:var(--text-primary);font-weight:600}
.caret{display:inline-block;width:2px;height:1.05em;background:var(--color-blue-600);vertical-align:-3px;margin-left:2px;animation:caret 1s steps(1) infinite}
@keyframes caret{50%{opacity:0}}
.aud{display:inline-flex;gap:4px;padding:4px;border-radius:var(--radius-md);background:rgba(255,255,255,.7);border:1px solid var(--surface-border);margin:0 0 var(--space-4);backdrop-filter:blur(6px)}
.aud button{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 14px;border:0;border-radius:6px;background:transparent;font-family:var(--font-display);font-weight:700;font-size:15px;color:var(--text-secondary);cursor:pointer;transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}
.aud button .ic{width:18px;height:18px}
.aud button:hover{color:var(--text-primary)}
.aud button[aria-selected=true]{background:#fff;color:var(--color-blue-700);box-shadow:var(--shadow-card)}
.home-search{position:relative;display:flex;align-items:center;gap:10px;height:54px;padding:0 14px;border:1px solid var(--surface-border);border-radius:var(--radius-md);background:#fff;max-width:560px;box-shadow:var(--shadow-card);transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}
.home-search:focus-within{border-color:var(--color-blue-500);box-shadow:0 0 0 3px var(--color-blue-100)}
.home-search>.ic{width:18px;height:18px;color:var(--text-muted)}
.home-search input{flex:1;min-width:0;height:100%;border:0;background:transparent;font:inherit;font-size:16px;color:var(--text-primary)}
.home-search input:focus{outline:none}
.home-search input::-webkit-search-cancel-button{-webkit-appearance:none}
.home-search kbd{font:inherit;font-size:11px;color:var(--text-muted);border:1px solid var(--surface-border);border-radius:4px;padding:2px 6px;background:var(--surface-subtle)}
.home-results{position:absolute;left:-1px;right:-1px;top:calc(100% + 6px);background:#fff;border:1px solid var(--surface-border);border-radius:var(--radius-md);box-shadow:var(--shadow-hover);padding:6px;z-index:30;max-height:360px;overflow:auto;text-align:left}
.home-results a{display:block;padding:10px 12px;border-radius:6px;text-decoration:none;color:var(--text-primary);transition:background-color var(--dur) var(--ease)}
.home-results a:hover,.home-results a.active{background:var(--surface-subtle)}
.home-results a strong{display:block;font-family:var(--font-display);font-size:15px;font-weight:700}
.home-results a small{display:block;color:var(--text-tertiary);font-size:13px;margin-top:2px}
.home-results .hint{padding:8px 12px;font-size:12px;color:var(--text-muted)}
.sky-hint{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--text-muted);margin:var(--space-4) 0 0}
.sky-hint .ic{width:16px;height:16px}
.sky-map{position:relative;width:100%;max-width:560px;aspect-ratio:1;margin:0 auto;min-width:0}
.orbit,.orbit svg{width:100%;height:100%;display:block;overflow:visible}
.orb-track{fill:none;stroke:var(--color-gray-200);stroke-width:1;stroke-dasharray:2 6}
.orb-track-in{stroke-dasharray:none;stroke:var(--color-gray-100)}
.orb-arc{fill:none;stroke-width:28;stroke-linecap:round;transition:opacity var(--dur) var(--ease),stroke var(--dur) var(--ease)}
.orb-arc[data-aud=professores]{stroke:var(--color-blue-200);opacity:.75}
.orb-arc[data-aud=gestores]{stroke:var(--color-yellow-200);opacity:.85}
.orb-arc.lit[data-aud=professores]{stroke:var(--color-blue-300);opacity:1}
.orb-arc.lit[data-aud=gestores]{stroke:var(--color-yellow-300);opacity:1}
.orb-label{font-family:var(--font-display);font-weight:700;font-size:11px;letter-spacing:.06em;fill:var(--text-muted);transition:fill var(--dur) var(--ease),opacity var(--dur) var(--ease)}
.orb-label.lit{fill:var(--text-primary)}
.orb-dot{cursor:pointer;outline:none;transform-box:fill-box;transform-origin:center;transition:opacity var(--dur) var(--ease)}
.orb-dot .halo{fill:var(--color-blue-500);opacity:0;transition:opacity var(--dur) var(--ease)}
.orb-dot .ring{fill:none;stroke:var(--color-blue-600);stroke-width:2}
.orb-dot .core{fill:var(--color-blue-600);transform-box:fill-box;transform-origin:center;transition:transform var(--dur) var(--ease)}
.orb-dot[data-aud=gestores] .core,.orb-dot[data-aud=gestores] .halo{fill:#E0A800}
.orb-dot[data-aud=gestores] .ring{stroke:#E0A800}
.orb-dot.is-tool .core,.orb-dot.is-tool .halo{fill:#2A9D96}
.orb-dot:hover .core,.orb-dot:focus-visible .core{transform:scale(1.4)}
.orb-dot:hover .halo,.orb-dot:focus-visible .halo{opacity:.2}
svg[data-focus=professores] [data-aud=gestores],svg[data-focus=gestores] [data-aud=professores]{opacity:.18}
svg.hovering .orb-arc:not(.lit){opacity:.35}
.orbit.enter .orb-dot{animation:orbIn 520ms var(--ease) backwards;animation-delay:calc(var(--i) * 22ms)}
@keyframes orbIn{from{opacity:0;transform:scale(.2)}to{opacity:1;transform:none}}
.orb-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:36%;text-align:center;pointer-events:none;display:grid;gap:4px;justify-items:center}
.orb-center b{font-family:var(--font-display);font-size:clamp(40px,5vw,56px);line-height:1;color:var(--text-primary);font-variant-numeric:tabular-nums}
.orb-center strong{font-family:var(--font-display);font-size:15px;line-height:1.3;color:var(--text-primary)}
.orb-center span{font-size:13px;color:var(--text-secondary);line-height:1.35}
.orb-center small{font-size:11px;color:var(--text-muted)}
.orb-center.on{animation:orbFade 180ms var(--ease)}
@keyframes orbFade{from{opacity:.4}to{opacity:1}}
.sky-legend{position:absolute;left:0;top:0;display:flex;gap:4px;padding:4px;border-radius:var(--radius-md);background:rgba(255,255,255,.85);border:1px solid var(--surface-border);backdrop-filter:blur(6px)}
.sky-legend button{height:30px;padding:0 12px;border:0;border-radius:6px;background:transparent;font-family:var(--font-display);font-weight:700;font-size:13px;color:var(--text-secondary);cursor:pointer;transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease)}
.sky-legend button[aria-pressed=true]{background:var(--color-dark-900);color:#fff}
@media(max-width:960px){.sky{grid-template-columns:1fr;min-height:0;padding-top:var(--space-10)}.sky h1{max-width:none}.sky-map{max-width:480px}}
@media(max-width:600px){.orb-label{font-size:15px}.orb-arc{stroke-width:34}.orb-dot .core{transform:scale(1.25)}}
@media(prefers-reduced-motion:reduce){.orbit.enter .orb-dot,.orb-center.on{animation:none}}

/* ---------- Números ---------- */
.band-live{margin-top:var(--space-10)}
.band-live b{font-size:44px}

/* ---------- Carrossel de destaques ---------- */
.home header{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin:0 0 var(--space-5)}
.home header h2{margin:0;font-size:24px}
.home header a,.home header span{font-size:14px;color:var(--text-muted)}
.home header a{font-family:var(--font-display);font-weight:700;text-decoration:none;color:var(--text-link)}
.carousel{padding:var(--space-12) 0 var(--space-8)}
.car-nav{display:flex;gap:8px}
.car-nav button{width:40px;height:40px;border-radius:var(--radius-md);border:1px solid var(--surface-border);background:#fff;display:grid;place-items:center;color:var(--text-secondary);cursor:pointer;transition:background-color var(--dur) var(--ease),border-color var(--dur) var(--ease)}
.car-nav button:hover{background:var(--surface-hover);border-color:var(--color-blue-300)}
.car-nav button .ic{width:18px;height:18px}
.track{list-style:none;margin:0 calc(-1 * clamp(16px,4vw,32px));padding:4px clamp(16px,4vw,32px) 12px;display:flex;gap:var(--space-5);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.track::-webkit-scrollbar{display:none}
.track li::marker{content:""}
.slide{flex:0 0 min(78vw,560px);scroll-snap-align:start}
.slide a{position:relative;display:grid;grid-template-columns:auto 1fr;gap:6px 18px;height:100%;padding:var(--space-6);border-radius:var(--radius-xl);border:1px solid var(--color-blue-200);background:var(--gradient-ai-100);text-decoration:none;color:var(--text-primary);box-shadow:var(--shadow-card);transition:box-shadow var(--dur) var(--ease),border-color var(--dur) var(--ease);overflow:hidden}
.slide-gestores a{background:linear-gradient(93deg,#FFF9E7 0%,#FFF0C2 60%,#E2FAF8 111%);border-color:var(--color-yellow-300)}
.slide a:hover{box-shadow:var(--shadow-hover);border-color:var(--color-blue-500)}
.slide .num{grid-row:1/5;font-family:var(--font-display);font-weight:700;font-size:56px;line-height:1;color:rgba(48,85,191,.18);font-variant-numeric:tabular-nums;align-self:start}
.slide-gestores .num{color:rgba(122,90,0,.18)}
.slide .meta{font-size:13px;color:var(--text-tertiary)}
.slide h3{font-size:clamp(20px,2.2vw,26px);line-height:1.2;margin:0}
.slide p{font-size:15px;color:var(--text-secondary);margin:0}
.slide .more{font-family:var(--font-display);font-weight:700;font-size:14px;color:var(--text-link);display:inline-flex;gap:6px;align-items:center;margin-top:6px}
.slide .more .ic{width:14px;height:14px}
.car-dots{display:flex;gap:8px;margin-top:var(--space-3)}
.car-dots button{width:28px;height:4px;border-radius:2px;border:0;background:var(--color-gray-200);cursor:pointer;padding:0;position:relative;overflow:hidden;transition:background-color var(--dur) var(--ease)}
.car-dots button[aria-current=true]{background:var(--color-blue-300)}
.car-dots button[aria-current=true]::after{content:"";position:absolute;inset:0;background:var(--color-blue-600);transform-origin:left;transform:scaleX(var(--p,0))}

/* ---------- Calculadora viva ---------- */
.live{display:grid;grid-template-columns:1fr 1.1fr;gap:var(--space-10);padding:var(--space-10);margin:var(--space-6) 0;border-radius:var(--radius-2xl);background:var(--color-dark-900);color:#fff;position:relative;overflow:hidden}
.live::before{content:"";position:absolute;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;background:radial-gradient(closest-side,rgba(88,128,241,.35),transparent 70%)}
.live::after{content:"";position:absolute;left:30%;bottom:-160px;width:360px;height:360px;border-radius:50%;background:radial-gradient(closest-side,rgba(255,204,76,.18),transparent 70%)}
.live>*{position:relative;z-index:1}
.live h2{color:#fff;font-size:28px;margin:12px 0 10px}
.live p{color:#C9D3E6;font-size:15px;margin:0 0 18px;max-width:48ch}
.live .tag-blue{background:rgba(88,128,241,.2);color:#D2DEFF;box-shadow:inset 0 0 0 1px rgba(128,161,255,.5)}
.live .tag .ic{width:12px;height:12px}
.live-fields{display:grid;gap:14px;margin-bottom:18px}
.live-fields label{display:grid;grid-template-columns:1fr auto;gap:6px 12px;font-family:var(--font-display);font-weight:700;font-size:14px;color:#D5DCED}
.live-fields output{color:var(--color-yellow-500);font-variant-numeric:tabular-nums}
.live-fields input{grid-column:1/-1;width:100%;accent-color:var(--color-yellow-500);margin:0}
.live .btn .ic{width:16px;height:16px}
.live-big{display:flex;align-items:baseline;gap:14px;margin-bottom:18px}
.live-big b{font-family:var(--font-display);font-size:clamp(48px,6vw,72px);line-height:1;color:var(--color-yellow-500);font-variant-numeric:tabular-nums;transition:color var(--dur) var(--ease)}
.live-big b.flash{color:#fff}
.live-big span{color:#C9D3E6;font-size:14px;max-width:16ch}
.bars{display:grid;gap:10px}
.bars>div{display:grid;grid-template-columns:150px 1fr 56px;gap:12px;align-items:center;font-size:13px;color:#D5DCED}
.bars i{display:block;height:14px;border-radius:4px;background:var(--color-blue-600);transform-origin:left;transform:scaleX(var(--w,0));transition:transform 600ms var(--ease)}
.bars i.auto{background:#4FC1B9}.bars i.semi{background:var(--color-yellow-500)}.bars i.manual{background:#7D8AA6}
.bars b{font-family:var(--font-display);font-variant-numeric:tabular-nums;text-align:right;color:#fff}
.live-note{font-size:12px;color:#8F9BB5;margin:14px 0 0}
@media(max-width:820px){.live{grid-template-columns:1fr;padding:var(--space-6)}.bars>div{grid-template-columns:110px 1fr 50px}}

/* ---------- Trilhas ---------- */
.trails{padding:var(--space-10) 0;border-bottom:1px solid var(--surface-border)}
.trail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--space-5)}
.trail{border:1px solid var(--surface-border);border-radius:var(--radius-xl);padding:var(--space-5);background:#fff;box-shadow:var(--shadow-card);transition:box-shadow var(--dur) var(--ease),border-color var(--dur) var(--ease)}
.trail:hover{box-shadow:var(--shadow-hover);border-color:var(--color-blue-300)}
.trail header{display:grid;gap:6px;margin:0 0 12px}
.trail header h3{font-size:18px;margin:0}
.trail header p{margin:0;font-size:14px;color:var(--text-secondary)}
.trail header .tag{justify-self:start}
.trail header .tm{font-size:12px;color:var(--text-muted)}
.trail ol{list-style:none;padding:0;margin:0;position:relative}
.trail ol::before{content:"";position:absolute;left:13px;top:14px;bottom:14px;width:2px;background:var(--surface-border)}
.trail li::marker{content:""}
.trail li{margin:0;max-width:none}
.trail li a{position:relative;display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;padding:8px 4px 8px 0;text-decoration:none;color:var(--text-primary);border-radius:var(--radius-sm);transition:background-color var(--dur) var(--ease)}
.trail li a:hover{background:var(--surface-hover)}
.trail .st{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-family:var(--font-display);font-weight:700;font-size:12px;background:#fff;border:2px solid var(--color-blue-300);color:var(--color-blue-700);position:relative;z-index:1}
.trail-gestores .st{border-color:var(--color-yellow-300);color:#7A5A00}
.trail .tt{font-size:14px;font-weight:600;line-height:1.35}
.trail .tm{font-size:12px;color:var(--text-muted);white-space:nowrap}

/* ---------- Ferramentas, índice, novidades, CTA ---------- */
.dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:1px;background:var(--color-blue-600)}
.dot-gestores{background:var(--color-yellow-500)}
.tools-row{padding:var(--space-10) 0;border-bottom:1px solid var(--surface-border)}
.tools-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-6)}
.tool{display:grid;grid-template-columns:auto 1fr;gap:12px;text-decoration:none;color:var(--text-primary);align-content:start}
.tool>.ic{width:22px;height:22px;color:var(--color-blue-700);margin-top:2px}
.tool strong{display:block;font-family:var(--font-display);font-size:16px;transition:color var(--dur) var(--ease)}
.tool:hover strong{color:var(--text-link)}
.tool small{display:block;font-size:14px;color:var(--text-secondary);line-height:1.45;margin-top:4px}
.tool em{grid-column:2;font-style:normal;font-size:12px;color:var(--text-muted)}
.index{padding:var(--space-10) 0 0;scroll-margin-top:calc(var(--topbar) + 16px)}
.idx{padding-bottom:var(--space-10);border-bottom:1px solid var(--surface-border);margin-bottom:var(--space-10)}
.idx-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:var(--space-8) var(--space-8)}
.idx-topic h3{font-family:var(--font-display);font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin:0 0 12px;font-weight:700}
.idx-topic ol{list-style:none;padding:0;margin:0}
.idx-topic li{margin:0 0 12px;line-height:1.4;max-width:none}
.idx-topic li::marker{content:""}
.idx-topic a{text-decoration:none;color:var(--text-primary);font-size:15px;font-weight:600;transition:color var(--dur) var(--ease)}
.idx-topic a:hover{color:var(--text-link)}
.idx-topic li.pillar a{font-family:var(--font-display);font-size:16px;font-weight:700}
.idx-topic li span{display:block;font-size:12px;color:var(--text-muted);margin-top:2px}
.idx-tools a{color:var(--color-blue-700)}
.news{padding-bottom:var(--space-10);border-bottom:1px solid var(--surface-border)}
.news-list{list-style:none;padding:0;margin:0}
.news-list li::marker{content:""}
.news-list li{display:grid;grid-template-columns:120px 1fr auto;gap:12px;align-items:baseline;padding:10px 0;border-top:1px solid var(--surface-border);font-size:15px;max-width:none}
.news-list li:first-child{border-top:0;padding-top:0}
.news-list time{font-size:13px;color:var(--text-muted);font-variant-numeric:tabular-nums}
.news-list a{text-decoration:none;color:var(--text-primary);font-weight:600}
.news-list a:hover{color:var(--text-link)}
.news-list li>span{font-size:12px;color:var(--text-muted)}
@media(max-width:600px){.news-list li{grid-template-columns:1fr;gap:2px}}
.cta-line{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;padding:var(--space-10) 0 var(--space-4)}
.cta-line p{margin:0;flex:1 1 360px;color:var(--text-secondary);font-size:16px}

@media(prefers-reduced-motion:reduce){.sky-bg,.caret{animation:none}.bars i{transition:none}}
