html{scroll-behavior:smooth;-webkit-tap-highlight-color:transparent}
body{margin:0;background:#fff;color:#1F2A44;font-family:'Plus Jakarta Sans',-apple-system,'Segoe UI',sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:#574691;text-decoration:none}
a:hover{color:#6A5BA8}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto;animation:none!important;transition:none!important}}
/* MacBook Magic Keyboard — layout real + chiclet */
.mb-keys{display:flex;flex-direction:column;gap:2.6px;width:100%}
.mb-row{display:flex;gap:2.6px;width:100%;align-items:stretch}
.mb-key{
  flex:1 1 0;height:13px;min-width:0;border-radius:2.4px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.12) 0%,rgba(255,255,255,.03) 30%,transparent 55%),
    linear-gradient(180deg,#2f343d 0%,#1e2229 45%,#0f1217 100%);
  box-shadow:
    0 1.35px 0 #030406,
    0 1.8px 2px rgba(0,0,0,.4),
    inset 0 .7px 0 rgba(255,255,255,.18),
    inset 0 -1.1px 0 rgba(0,0,0,.4);
}
/* fileira de função (mais baixa, como no MacBook) */
.mb-key.fn{height:9.5px;border-radius:2px}
.mb-key.esc{flex:1.4}
.mb-key.touch{flex:1.15;border-radius:50%;height:9.5px;align-self:center;
  background:radial-gradient(circle at 38% 32%,#5a616c 0%,#22262e 52%,#0a0c10 100%);
  box-shadow:0 1px 0 #030406,inset 0 0 0 1px rgba(255,255,255,.12)}
.mb-key.tab{flex:1.55}
.mb-key.caps{flex:1.9}
.mb-key.ret{flex:2}
.mb-key.shift{flex:2.45}
.mb-key.del{flex:1.55}
.mb-key.mod{flex:1.12}
.mb-key.cmd{flex:1.5}
.mb-key.space{flex:6.6;
  background:
    linear-gradient(180deg,rgba(255,255,255,.1) 0%,rgba(255,255,255,.02) 30%,transparent 55%),
    linear-gradient(180deg,#2a2f38 0%,#1a1e25 45%,#0d1014 100%)}
.mb-key.half{height:5.6px;border-radius:1.8px;flex:1 1 0}
.mb-arrows{display:flex;gap:2.6px;flex:2.1;min-width:0}
.mb-arrows-mid{display:flex;flex-direction:column;gap:1.5px;flex:1 1 0;min-width:0}
/* microfones / speakers — grade de furos (MacBook) */
.mb-speakers{
  position:absolute;top:16px;bottom:88px;width:12px;border-radius:1px;
  background-color:#B8BEC8;
  background-image:radial-gradient(circle,#3a404a 0 0.55px,transparent .7px);
  background-size:2.4px 2.4px;
  box-shadow:inset 0 0 0 .5px rgba(0,0,0,.1);opacity:.95;
}
.mb-speakers.left{left:11px}
.mb-speakers.right{right:11px}
/* FAQ accordion (design system roxo) */
.pc-faq-item{background:#fff;border:1px solid #E5E0F0;border-radius:13px;padding:0;margin-bottom:10px;box-shadow:0 1px 3px rgba(31,42,68,.05);overflow:hidden}
.pc-faq-item summary{cursor:pointer;font-weight:700;padding:16px 18px;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;color:#1F2A44;font-size:15px}
.pc-faq-item summary::-webkit-details-marker{display:none}
.pc-faq-item summary::after{content:'+';font-family:'Plus Jakarta Sans',sans-serif;font-size:20px;color:#574691;line-height:1;flex:none}
.pc-faq-item[open] summary{background:rgba(106,91,168,.05)}
.pc-faq-item[open] summary::after{content:'×'}
@media (max-width:860px){
  .pc-nav{display:none!important}
  .pc-hero-grid{grid-template-columns:1fr!important;padding:28px 18px 36px!important;gap:24px!important}
  .pc-recursos-grid{grid-template-columns:repeat(2,1fr)!important}
  .pc-como-flex{flex-direction:column!important;align-items:center!important;gap:22px!important}
  .pc-como-arrow{transform:rotate(90deg)}
  .pc-planos-grid{grid-template-columns:1fr!important;max-width:420px!important}
  .pc-footer-grid{grid-template-columns:1fr!important;gap:16px!important;text-align:center}
  .pc-header-row{padding:8px 10px 8px 12px!important;gap:10px!important}
}
@media (max-width:480px){
  .pc-recursos-grid{grid-template-columns:1fr!important}
  h1{font-size:34px!important;word-break:break-word}
}
