/* Squadtour — squadtour.ai · DESIGN.md "O turno que nunca fecha" */
:root{
  --night:#0B1220; --night-soft:#131C2E; --electric:#3B82F6; --electric-deep:#2563EB;
  --online:#22C55E; --day:#F6F8FB; --ink:#0F172A; --mist:#94A3B8; --line:#E2E8F0;
  --body:#475569; --card-line:rgba(59,130,246,.18);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,-apple-system,'Segoe UI',sans-serif;background:var(--day);color:var(--ink);line-height:1.6;font-size:16px}
.wrap{max-width:1140px;margin:0 auto;padding:0 24px}
h1,h2,h3{font-family:Archivo,Inter,sans-serif;letter-spacing:-.02em;text-wrap:balance;margin:0}
a{color:var(--electric-deep)}
.eyebrow{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--electric)}
.ts{font-variant-numeric:tabular-nums}

/* nav */
.nav{background:var(--night);border-bottom:1px solid rgba(148,163,184,.12)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:64px}
.logo{font-family:Archivo,sans-serif;font-weight:800;font-size:20px;color:#fff;text-decoration:none;letter-spacing:-.02em}
.logo em{font-style:normal;color:var(--electric)}
.nav-links{display:flex;gap:26px;align-items:center}
.nav-links a{color:#B8C4D6;text-decoration:none;font-size:14px;font-weight:500}
.nav-links a:hover{color:#fff}
.nav-links .btn{padding:9px 18px;font-size:14px}
@media(max-width:700px){.nav-links a:not(.btn){display:none}}

/* buttons */
.btn{display:inline-block;padding:14px 28px;border-radius:10px;font-weight:600;font-size:16px;text-decoration:none;transition:transform .15s ease-out,background .15s ease-out,border-color .15s ease-out}
.btn-primary{background:var(--electric-deep);color:#fff}
.btn-primary:hover{background:var(--electric);transform:translateY(-1px);color:#fff}
.btn-ghost{color:#DCE6F5;border:1px solid rgba(148,163,184,.35)}
.btn-ghost:hover{border-color:var(--electric);color:#fff}
.btn:focus-visible{outline:2px solid var(--electric);outline-offset:2px}

/* hero */
.hero{background:var(--night);color:#fff;padding:88px 0 104px}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}
@media(max-width:860px){.hero .wrap{grid-template-columns:1fr}}
.hero h1{font-size:clamp(38px,5.5vw,64px);font-weight:800;line-height:1.05;color:#fff;margin-top:14px}
.hero h1 em{font-style:normal;color:var(--electric)}
.hero .lead{font-size:18px;color:#B8C4D6;max-width:52ch;margin:22px 0 34px}
.hero-ctas{display:flex;gap:12px;flex-wrap:wrap}

/* chat mock */
.phone{background:var(--night-soft);border:1px solid var(--card-line);border-radius:14px;padding:20px;max-width:400px;margin-left:auto}
@media(max-width:860px){.phone{margin:0 auto}}
.phone-head{display:flex;align-items:center;gap:10px;padding-bottom:14px;border-bottom:1px solid rgba(148,163,184,.15);margin-bottom:14px}
.avatar{width:36px;height:36px;border-radius:50%;background:var(--electric-deep);display:grid;place-items:center;font-weight:700;font-size:14px;color:#fff}
.phone-head b{font-size:14px;color:#fff;display:block}
.status{font-size:12px;color:var(--online);display:flex;align-items:center;gap:5px}
.dot{width:7px;height:7px;border-radius:50%;background:var(--online);box-shadow:0 0 6px var(--online)}
.msgs{display:flex;flex-direction:column;gap:10px}
.msg{max-width:82%;padding:10px 14px;border-radius:12px;font-size:14px;opacity:0;transform:translateY(6px);animation:pop .4s ease-out forwards}
.in{background:#1B2740;color:#DCE6F7;align-self:flex-start;border-bottom-left-radius:4px}
.out{background:var(--electric);color:#fff;align-self:flex-end;border-bottom-right-radius:4px}
.msg small{display:block;font-size:10px;opacity:.65;margin-top:4px;text-align:right}
.msg:nth-child(1){animation-delay:.4s}.msg:nth-child(2){animation-delay:1.4s}
.msg:nth-child(3){animation-delay:2.6s}.msg:nth-child(4){animation-delay:3.8s}
@keyframes pop{to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.msg{animation:none;opacity:1;transform:none}}

/* sections */
section{padding:96px 0}
.section-head{max-width:640px;margin-bottom:44px}
.section-head h2{font-size:clamp(28px,3.6vw,38px);font-weight:800;margin-top:10px}
.section-head p{color:var(--body);font-size:17px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
@media(max-width:860px){.grid3,.grid2{grid-template-columns:1fr}}
.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:28px}
.card h3{font-size:19px;margin-bottom:10px}
.card p{font-size:15px;color:var(--body);margin:0}
.card .num{font-family:Archivo,sans-serif;font-weight:800;color:var(--electric);font-size:14px;letter-spacing:.06em}

/* pricing */
.plans{align-items:stretch}
.plan{display:flex;flex-direction:column}
.plan .price{font-family:Archivo,sans-serif;font-weight:800;font-size:42px;margin:8px 0 2px}
.plan .price small{font-family:Inter,sans-serif;font-weight:400;font-size:14px;color:var(--mist)}
.plan ul{list-style:none;padding:0;margin:18px 0 26px;display:flex;flex-direction:column;gap:10px;font-size:15px;color:var(--body)}
.plan li::before{content:"✓";color:var(--online);font-weight:700;margin-right:9px}
.plan .btn{margin-top:auto;text-align:center}
.plan-hot{border:2px solid var(--electric-deep);position:relative}
.chip{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:4px 12px;border-radius:99px;background:#ECFDF5;color:#15803D}
.chip .dot{box-shadow:none}

/* faq */
.faq details{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px 24px;margin-bottom:12px}
.faq summary{font-weight:600;cursor:pointer;font-size:16px}
.faq p{color:var(--body);font-size:15px;margin:12px 0 0}

/* cta final */
.cta-final{background:var(--night);color:#fff;text-align:center}
.cta-final h2{font-size:clamp(30px,4vw,46px);font-weight:800;color:#fff}
.cta-final p{color:#B8C4D6;max-width:48ch;margin:18px auto 32px}

/* footer */
footer{background:var(--night);color:var(--mist);padding:48px 0 40px;font-size:13.5px;border-top:1px solid rgba(148,163,184,.15)}
footer .cols{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:28px}
footer a{color:#B8C4D6;text-decoration:none}
footer a:hover{color:#fff}
footer .legal{border-top:1px solid rgba(148,163,184,.12);padding-top:22px;line-height:1.8}

/* legal pages */
.legal-page{background:var(--day);padding:72px 0 96px}
.legal-page .doc{max-width:760px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:14px;padding:56px}
@media(max-width:700px){.legal-page .doc{padding:28px}}
.legal-page h1{font-size:34px;font-weight:800;margin-bottom:6px}
.legal-page .updated{color:var(--mist);font-size:13.5px;margin-bottom:36px}
.legal-page h2{font-size:21px;font-weight:700;margin:40px 0 12px}
.legal-page h3{font-size:17px;font-weight:600;margin:26px 0 8px}
.legal-page p,.legal-page li{color:#334155;font-size:15.5px}
.legal-page ul{padding-left:22px}
.legal-page .toc{background:var(--day);border-radius:10px;padding:20px 24px;margin-bottom:12px}
.legal-page .toc ol{margin:8px 0 0;padding-left:20px;columns:2;font-size:14.5px}
@media(max-width:700px){.legal-page .toc ol{columns:1}}
.legal-page table{width:100%;border-collapse:collapse;font-size:14.5px}
.legal-page th,.legal-page td{border:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top}
.legal-page th{background:var(--day)}
.tbl{overflow-x:auto}
