/* ===================================================================
   EvolutClinic | estilos
   Base idêntica ao site da Evolut Sistemas (assets/css/style.css):
   Barlow no texto, Noto Sans nos títulos de seção, JetBrains Mono nos
   rótulos pequenos; hero escuro centralizado, selos em pílula, seções
   em tom claro e cards arredondados com borda fina.
   Os componentes próprios do EvolutClinic ficam no fim do arquivo.
   =================================================================== */
:root{
  --dark:#0a0c14;
  --dark-2:#11152a;
  --dark-3:#1c2238;
  --brand:#1d5fd1;
  --brand-2:#0f8bff;
  --brand-ink:#1b3f86;
  --brand-soft:#f2f6ff;
  --brand-tint:#e4edff;
  --ink:#080808;
  --text:#474756;
  --muted:#8c8c9a;
  --line:#e7eaf3;
  --radius:16px;
  --container:1160px;
  --ease:cubic-bezier(.2,.7,.2,1);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'Barlow',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  font-size:17px;color:var(--text);background:#fff;line-height:1.6;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
h1,h2,h3,h4{font-family:'Barlow',sans-serif;color:var(--ink);line-height:1.15;letter-spacing:-.01em;font-weight:600}
h1{font-size:clamp(2rem,5vw,3.35rem)}
h2{font-size:clamp(1.55rem,3vw,2.05rem)}
h3{font-size:1.15rem}
a{color:inherit;text-decoration:none}
ul,ol{list-style:none}
img{max-width:100%;display:block}
address{font-style:normal}
strong{font-weight:600;color:var(--ink)}
.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 24px}
.container--narrow{max-width:960px}
.section{padding:clamp(56px,8vw,110px) 0}
.center{text-align:center}

/* Títulos de seção em Noto Sans (como "Nossos diferenciais" na Starti) */
.title-brand{font-family:'Noto Sans',sans-serif;font-weight:600;color:var(--brand-ink);letter-spacing:-.015em}
.lead{font-size:1.06rem;color:var(--text)}
.section-head{max-width:760px;margin:0 auto 40px;text-align:center}
.section-head p{margin-top:12px}

/* ---------- Selo em pílula ---------- */
.pill{
  display:inline-flex;align-items:center;gap:8px;
  padding:7px 18px;border-radius:100px;
  background:var(--brand-tint);color:var(--ink);font-size:1.02rem;font-weight:500;
}
.pill img{height:15px;width:auto}
.pill--dark{background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.08)}
.pill--sm{font-size:.9rem;padding:4px 16px;color:var(--brand-ink)}
.mono{font-family:'JetBrains Mono',monospace;font-size:.72rem;font-weight:500;letter-spacing:.02em;text-transform:uppercase}

/* ---------- Barra de progresso ---------- */
.scroll-progress{
  position:fixed;top:0;left:0;height:3px;width:0%;z-index:120;
  background:linear-gradient(90deg,var(--brand),var(--brand-2));
  transition:width .1s linear;
}

/* ---------- Header ---------- */
.site-header{position:fixed;inset:0 0 auto 0;z-index:100;transition:background .3s,box-shadow .3s}
.site-header.scrolled{background:rgba(10,12,20,.92);backdrop-filter:blur(10px);box-shadow:0 1px 0 rgba(255,255,255,.06)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;height:72px}
.brand img{height:26px;width:auto}
.main-nav{display:flex;align-items:center;gap:34px}
.main-nav a{color:#fff;font-size:.95rem;font-weight:500;opacity:.92;transition:opacity .2s}
.main-nav a:hover,.main-nav a[aria-current="page"]{opacity:1}
.main-nav .nav-cta{
  margin-left:12px;padding:12px 24px;border-radius:100px;opacity:1;
  background:#262a38;font-size:1rem;transition:background .2s;
}
.main-nav .nav-cta:hover{background:#343a4d}
.nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:8px}
.nav-toggle span{width:24px;height:2px;background:#fff;transition:.3s var(--ease)}
.nav-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle.open span:nth-child(2){opacity:0}
.nav-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ---------- Botões ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:'Barlow',sans-serif;font-weight:500;font-size:1rem;
  padding:13px 26px;border-radius:100px;border:0;cursor:pointer;
  transition:transform .2s var(--ease),background .2s,box-shadow .2s;
}
.btn:hover{transform:translateY(-2px)}
.btn svg{width:18px;height:18px}
.btn-dark{background:#1e2130;color:#fff}
.btn-dark:hover{background:#2c3146}
.btn-brand{background:var(--brand);color:#fff}
.btn-brand:hover{background:#174fb2;box-shadow:0 12px 28px -12px rgba(29,95,209,.7)}
.btn-ghost{background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.14)}
.btn-ghost:hover{background:rgba(255,255,255,.14)}
.btn.full{width:100%}

/* ---------- Hero escuro centralizado ---------- */
.hero{
  position:relative;overflow:hidden;background:var(--dark);color:#fff;
  padding:170px 0 0;min-height:660px;text-align:center;
}
.hero::before{ /* brilho azul ao fundo */
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(60% 55% at 50% 38%,rgba(29,95,209,.22),transparent 70%);
}
.hero-inner{position:relative;z-index:2}
.hero h1{color:#fff;max-width:17ch;margin:22px auto 0}
.hero h1 .dim{color:#9a9cab}
.hero .lead{color:rgba(255,255,255,.72);max-width:56ch;margin:20px auto 0}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:30px}
.hero-globe{ /* "globo" de pontos */
  position:relative;z-index:1;width:min(560px,90vw);aspect-ratio:1;margin:46px auto -300px;border-radius:50%;
  background-image:radial-gradient(circle,rgba(79,155,255,.95) 1.1px,transparent 1.6px);
  background-size:9px 9px;
  -webkit-mask:radial-gradient(circle at 42% 38%,#000 0 30%,rgba(0,0,0,.55) 48%,transparent 70%);
          mask:radial-gradient(circle at 42% 38%,#000 0 30%,rgba(0,0,0,.55) 48%,transparent 70%);
  opacity:.7;animation:globe 40s linear infinite;
}
@keyframes globe{to{background-position:180px 0}}
.hero-bar{position:relative;z-index:3;height:12px;background:linear-gradient(90deg,var(--brand),var(--brand-2),#4fc3ff)}
.hero--sub{min-height:0;padding:150px 0 90px}
.hero--sub h1{max-width:20ch}
.crumbs{font-size:.88rem;color:rgba(255,255,255,.55);margin-bottom:18px}
.crumbs a:hover{color:#fff}

/* ---------- Split "Por que a Evolut" ---------- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,80px);align-items:center}
.split>*{min-width:0}
.split h2{margin:18px 0 16px;font-size:clamp(1.45rem,2.6vw,1.75rem)}
.checks{margin:24px 0 30px;display:grid;gap:18px}
.checks li{display:grid;grid-template-columns:22px 1fr;gap:14px;font-size:.95rem}
.checks li::before{
  content:"";width:22px;height:22px;border-radius:50%;margin-top:2px;
  background:var(--brand-tint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237aa2e6' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center/13px no-repeat;
}
.checks strong{display:block;margin-bottom:2px}
.split--wide{grid-template-columns:.85fr 1.15fr}

/* ---------- Mockup notebook + celular ---------- */
/* Tudo em cqw (largura do .devices): o desenho escala junto com a coluna. */
.devices{position:relative;container-type:inline-size;padding:6% 0 9%;perspective:1400px}
.devices-glow{
  position:absolute;inset:8% 4% 6% 8%;border-radius:50%;z-index:0;
  background:radial-gradient(closest-side,rgba(29,95,209,.22),rgba(15,139,255,.08) 60%,transparent);
  filter:blur(10px);animation:glow 6s ease-in-out infinite;
}
.devices::before{ /* grade leve ao fundo, como na captura */
  content:"";position:absolute;inset:-4% -6%;z-index:0;
  background-image:linear-gradient(#eef1f7 1px,transparent 1px),linear-gradient(90deg,#eef1f7 1px,transparent 1px);
  background-size:4.5cqw 4.5cqw;
  -webkit-mask:radial-gradient(closest-side,#000,transparent);mask:radial-gradient(closest-side,#000,transparent);
}
@keyframes glow{50%{transform:scale(1.06);opacity:.75}}

.laptop{position:relative;z-index:1;width:90%;transform:rotateY(-6deg) rotateX(2deg);transform-origin:left center;transition:transform .8s var(--ease)}
.devices:hover .laptop{transform:rotateY(0) rotateX(0)}
.laptop-screen{
  position:relative;background:#11131b;border-radius:2.2cqw 2.2cqw .6cqw .6cqw;padding:1.5cqw 1.5cqw 1.8cqw;
  box-shadow:0 0 0 .25cqw #2a2d38,0 3cqw 6cqw -2cqw rgba(10,20,50,.45);
}
.laptop-screen::before{content:"";position:absolute;top:.35cqw;left:50%;width:6cqw;height:.7cqw;margin-left:-3cqw;border-radius:0 0 .6cqw .6cqw;background:#000}
.laptop-base{
  position:relative;height:2cqw;margin:0 -5%;border-radius:.4cqw .4cqw 3cqw 3cqw;
  background:linear-gradient(180deg,#e3e6ed,#b6bbc7 60%,#8e94a2);
  box-shadow:0 2cqw 3cqw -1.5cqw rgba(10,20,50,.4);
}
.laptop-base::after{content:"";position:absolute;top:0;left:50%;width:14cqw;height:.8cqw;margin-left:-7cqw;border-radius:0 0 1cqw 1cqw;background:#9ea4b1}

.app{
  display:grid;grid-template-columns:19% 1fr;background:#f5f7fb;border-radius:.5cqw;overflow:hidden;
  aspect-ratio:16/10.6;font-size:1.15cqw;line-height:1.25;color:#1a1d29;
}
.app small{font-size:.82em;color:#6b7185;display:block}
.app-side{background:#0e1426;color:#c8cfe0;padding:1.2em .7em;display:flex;flex-direction:column;gap:.35em}
.app-logo{display:flex;align-items:center;gap:.5em;color:#fff;font-weight:600;margin-bottom:.9em;white-space:nowrap}
.app-logo img{width:1.7em;height:1.7em;background:var(--brand);border-radius:.35em;padding:.25em}
.app-side>span{display:flex;align-items:center;gap:.6em;padding:.55em .6em;border-radius:.45em;font-size:.9em;white-space:nowrap}
.app-side>span i{width:.9em;height:.9em;border:1.5px solid currentColor;border-radius:.25em;opacity:.8}
.app-side>span.on{background:var(--brand);color:#fff}
.app-user{margin-top:auto;display:flex;align-items:center;gap:.5em;font-size:.85em;color:#fff}
.app-user b,.avatar{display:grid;place-items:center;width:2.2em;height:2.2em;border-radius:50%;background:var(--brand);color:#fff;font-size:.8em;flex:none}
.app-user small{color:#8b93a8;font-size:.8em}
.app-main{padding:1em;display:grid;grid-template-rows:auto auto 1fr auto;gap:.8em;min-width:0}
.app-top{display:flex;align-items:center;gap:.8em}
.app-top .search{flex:1;background:#fff;border:1px solid #e6e9f1;border-radius:.5em;padding:.5em .8em;color:#9aa0b0;font-size:.85em}
.bell{position:relative;width:1.3em;height:1.3em;border:1.5px solid #6b7185;border-radius:.6em .6em .2em .2em}
.bell::after{content:"";position:absolute;top:-.3em;right:-.35em;width:.55em;height:.55em;border-radius:50%;background:#ff4d4f;box-shadow:0 0 0 0 rgba(255,77,79,.6);animation:ping 2s infinite}
@keyframes ping{70%{box-shadow:0 0 0 .6em rgba(255,77,79,0)}100%{box-shadow:0 0 0 0 rgba(255,77,79,0)}}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:.6em}
.kpi,.panel{background:#fff;border:1px solid #e9ecf3;border-radius:.6em;padding:.7em .8em;min-width:0}
.kpi strong{display:block;font-size:1.6em;font-weight:600;margin:.15em 0}
.kpi em{font-style:normal;font-size:.75em;color:#16a34a;font-weight:600}
.kpi em.down{color:#e5484d}
.panels{display:grid;grid-template-columns:1.55fr 1fr;gap:.6em;min-height:0}
.panel>small{display:flex;justify-content:space-between;font-weight:600;color:#1a1d29;margin-bottom:.4em}
.panel>small span{font-weight:400;color:#8a90a2;border:1px solid #e6e9f1;border-radius:.4em;padding:0 .4em}
.line{width:100%;height:calc(100% - 1.6em);min-height:6em;display:block}
.line .stroke{stroke-dasharray:1;stroke-dashoffset:1}
.line .area{opacity:0}
.devices.in .line .stroke{animation:draw 2.2s .4s var(--ease) forwards}
.devices.in .line .area{animation:fadein 1.2s 1.6s forwards}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes fadein{to{opacity:1}}
.donut-wrap{display:flex;align-items:center;gap:.8em}
.donut{width:48%;flex:none;transform:rotate(-90deg)}
.donut .seg{stroke-dasharray:0 100;transition:stroke-dasharray 1.4s var(--ease)}
.donut .s2{stroke-dashoffset:-72}
.donut .s3{stroke-dashoffset:-90}
.devices.in .donut .s1{stroke-dasharray:72 100;transition-delay:.6s}
.devices.in .donut .s2{stroke-dasharray:18 100;transition-delay:1s}
.devices.in .donut .s3{stroke-dasharray:10 100;transition-delay:1.3s}
.donut-wrap ul{display:grid;gap:.45em;font-size:.82em;flex:1;min-width:0}
.donut-wrap li{display:flex;align-items:center;gap:.4em;white-space:nowrap}
.donut-wrap li i{width:.6em;height:.6em;border-radius:50%;flex:none}
.donut-wrap li b{margin-left:auto;font-weight:600}
.hbar{display:grid;grid-template-columns:7em 1fr 2.5em;align-items:center;gap:.6em;font-size:.82em;margin-top:.35em}
.hbar i{height:.5em;border-radius:1em;background:#eef1f6;position:relative;overflow:hidden}
.hbar i::after{content:"";position:absolute;inset:0;width:0;border-radius:inherit;background:linear-gradient(90deg,var(--brand),var(--brand-2));transition:width 1.4s var(--ease) .8s}
.devices.in .hbar i::after{width:var(--w)}
.hbar b{text-align:right;font-weight:600}

.phone{
  position:absolute;z-index:2;right:0;bottom:3%;width:22%;
  background:#11131b;border-radius:4cqw;padding:.8cqw;
  box-shadow:0 0 0 .25cqw #2a2d38,0 3cqw 5cqw -1.5cqw rgba(10,20,50,.5);
  animation:floaty 5s ease-in-out infinite;
}
@keyframes floaty{50%{transform:translateY(-2.2cqw)}}
.phone-screen{
  background:#fff;border-radius:3.3cqw;overflow:hidden;aspect-ratio:9/18.5;
  padding:1.2em .9em;font-size:1cqw;line-height:1.25;color:#1a1d29;display:flex;flex-direction:column;gap:.8em;
}
.phone-screen small{display:block;font-size:.82em;color:#6b7185}
.ph-status{display:flex;justify-content:space-between;align-items:center;font-size:.8em;font-weight:600}
.ph-status i{width:5em;height:1.3em;background:#11131b;border-radius:1em}
.ph-head{display:flex;align-items:center;gap:.5em;font-weight:600}
.ph-head b{width:1.8em;height:1.8em;background:var(--brand);border-radius:.4em;display:grid;place-items:center}
.ph-head b img{width:1.2em}
.ph-head .bell{margin-left:auto}
.ph-hello{font-size:1.35em;font-weight:600;color:#1a1d29}
.ph-card{border:1px solid #e9ecf3;border-radius:.7em;padding:.7em}
.ph-card strong{display:block;font-size:1.7em;font-weight:600}
.ph-card em{font-style:normal;font-size:.75em;color:#16a34a;font-weight:600}
.ph-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5em}
.ph-grid span{border:1px solid #e9ecf3;border-radius:.6em;padding:.6em;font-size:.72em;display:grid;gap:.4em}
.ph-grid i{width:2em;height:2em;border-radius:.5em}
.ph-list{display:grid;gap:.5em}
.ph-list>small{font-weight:600;color:#1a1d29}
.ph-list div{display:flex;gap:.5em;align-items:center;font-size:.8em;font-weight:600}
.ph-list div b{width:2.4em;height:2.4em;border-radius:50%;display:grid;place-items:center;background:var(--brand-tint);color:var(--brand);font-size:.8em;flex:none}

.seg-chip{
  position:absolute;z-index:3;display:inline-flex;align-items:center;gap:.4em;
  background:#fff;border:1px solid var(--line);border-radius:100px;padding:.5em 1.1em;
  font-size:max(11px,1.9cqw);font-weight:600;color:var(--ink);white-space:nowrap;
  box-shadow:0 1.2cqw 3cqw -1cqw rgba(27,63,134,.35);
  animation:floaty 6s ease-in-out infinite;
}
.seg-chip.c1{top:0;left:6%;animation-delay:-1s}
.seg-chip.c2{top:18%;right:-2%;animation-delay:-3s}
.seg-chip.c3{bottom:2%;left:0;animation-delay:-2s}
.seg-chip.c4{bottom:-3%;left:42%;animation-delay:-4.5s}

/* ---------- Faixa clara com cards ---------- */
.band{background:linear-gradient(180deg,#fff 0,var(--brand-soft) 18%,var(--brand-soft) 100%)}
.band--up{background:linear-gradient(180deg,#fff 0,var(--brand-soft) 45%,var(--brand-tint) 100%)}
.cards4{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.cards4>*{min-width:0}
.card{
  position:relative;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  padding:26px 22px;transition:transform .3s var(--ease),box-shadow .3s var(--ease);
}
.card:hover{transform:translateY(-4px);box-shadow:0 22px 44px -26px rgba(27,63,134,.35)}
.card-visual{height:120px;display:grid;place-items:center;margin-bottom:18px;position:relative}
.card-cap{position:relative;z-index:1;text-align:center;color:var(--text);font-size:1.02rem}
.card-cap strong{display:block;font-size:1.9rem;color:var(--ink);font-weight:600;line-height:1.1}
.ring{
  width:64px;height:64px;border-radius:50%;display:grid;place-items:center;
  border:3px solid var(--brand-ink);background:#fff;color:var(--brand-ink);position:relative;z-index:1;
}
.ring svg{width:28px;height:28px}
.card-visual--arc::before{
  content:"";position:absolute;left:-30%;right:-30%;top:50%;height:260px;border-radius:50%;
  border-top:2px dashed #b9cdf2;background:radial-gradient(40% 22% at 50% 14%,var(--brand-tint),transparent 70%);
}
.avatars{display:flex}
.avatars span{
  width:44px;height:44px;border-radius:50%;margin-left:-8px;border:3px solid #fff;
  display:grid;place-items:center;color:#fff;font-weight:600;font-size:.95rem;
}
.code-snip{
  width:100%;height:100%;background:#fbfbfd;border:1px solid var(--line);border-radius:10px;
  font-family:'JetBrains Mono',monospace;font-size:.66rem;line-height:1.7;padding:10px 12px;
  color:#5b6070;text-align:left;overflow:hidden;white-space:pre;
}
.code-snip b{color:#1b3f86;font-weight:600}
.code-snip i{color:#138a4e;font-style:normal}
.code-snip s{color:#9aa0ad;text-decoration:none}
.mini-dash{width:100%;height:100%;border:1px solid var(--line);border-radius:10px;padding:10px;display:grid;grid-template-columns:18px 1fr;gap:8px;background:#fff}
.mini-dash .side{background:var(--brand-ink);border-radius:5px}
.mini-dash .main{display:grid;grid-template-rows:auto 1fr;gap:8px}
.mini-dash .kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}
.mini-dash .kpis i{height:18px;border-radius:4px;background:var(--brand-tint)}
.mini-dash .bars{display:flex;align-items:flex-end;gap:4px}
.mini-dash .bars i{flex:1;border-radius:3px 3px 0 0;background:linear-gradient(180deg,var(--brand-2),var(--brand))}
.card-wide{
  grid-column:1/-1;display:flex;align-items:center;min-height:220px;padding:40px clamp(24px,5vw,40px);
}
.card-wide p{font-family:'Noto Sans',sans-serif;font-size:clamp(1.05rem,1.8vw,1.2rem);font-weight:500;color:var(--ink);max-width:28ch;position:relative;z-index:1}
.card-wide::after{
  content:"";position:absolute;right:-8%;top:50%;width:520px;height:520px;transform:translateY(-50%);border-radius:50%;
  background:radial-gradient(circle,transparent 0 52%,rgba(29,95,209,.06) 52.5% 60%,transparent 60.5%),radial-gradient(circle,var(--brand-soft) 0 70%,transparent 70.5%);
  box-shadow:inset 0 0 0 1px var(--line);
}

/* ---------- Linha do tempo (processo) ---------- */
.timeline{display:grid;gap:8px}
.tl-row{
  display:grid;grid-template-columns:1fr 6px 1fr;gap:clamp(18px,3vw,22px);align-items:center;
  background:#fff;border:1px solid #f0f1f6;border-radius:12px;padding:12px clamp(18px,6vw,80px);min-height:130px;
}
.tl-row>*{min-width:0}
.tl-bar{align-self:stretch;border-radius:6px;background:var(--c,#c9d9f7)}
.tl-item p{font-size:1.1rem;line-height:1.6;color:var(--text);margin-top:10px}
.tl-item h3{font-size:1.2rem;margin-top:10px}
.tl-item h3+p{margin-top:4px;font-size:1rem}
.tl-side{display:grid;place-items:center;color:#9aa6bf}
.tl-side svg{width:64px;height:64px}
.tl-row--right .tl-item{order:3}
.tl-row--right .tl-side{order:1}
.tl-row--right .tl-bar{order:2}

.highlight{
  margin-top:8px;background:var(--brand-soft);border-radius:12px;padding:clamp(34px,5vw,48px) 24px;text-align:center;
}
.highlight p{max-width:44ch;margin:14px auto 0;font-size:1.08rem;line-height:1.65}
.icon-row{display:flex;justify-content:center;gap:16px;margin-top:26px;color:#7a95cc}
.icon-row svg{width:34px;height:34px}

/* ---------- Três cards (missão / visão / compromisso) ---------- */
.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.cards3>*{min-width:0}
.mvv{border:1px solid var(--line);border-radius:14px;padding:8px}
.mvv-in{
  height:100%;border-radius:10px;padding:30px 26px 28px;text-align:center;
  background:linear-gradient(180deg,var(--brand-soft),#fff 60%);
}
.mvv h3{font-family:'Noto Sans',sans-serif;font-size:1.1rem;color:#1a1d33;margin-bottom:22px}
.mvv p{font-size:.93rem;line-height:1.55}

/* ---------- Diferenciais ---------- */
.diffs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.diffs>*{min-width:0}
.diff{background:#fff;border-radius:12px;padding:44px 18px 30px;min-height:170px;display:flex;flex-direction:column;justify-content:center}
.diff h3{font-size:1.12rem;margin-bottom:10px;color:#111}
.diff p{font-size:.9rem;line-height:1.45}

/* ---------- Split com ilustração ---------- */
.feature h2{font-size:clamp(1.4rem,2.4vw,1.65rem);margin:18px 0 16px}
.feature p{font-size:1.02rem;line-height:1.7}
.feature .pill{font-weight:600}
.deliver{display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:18px 28px;margin-top:24px}
.deliver h4{font-size:.98rem;margin-bottom:6px}
.deliver li{font-size:.95rem;padding-left:16px;position:relative}
.deliver li::before{content:"";position:absolute;left:0;top:.72em;width:6px;height:6px;border-radius:50%;background:var(--brand)}
.illus{width:100%;max-width:440px;margin:0 auto;display:block;height:auto}

/* ---------- Valores ---------- */
.values p{max-width:60ch;margin:16px auto 0;color:#1f2230;font-weight:500;line-height:1.7}
.tags{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:34px}
.tags span{
  font-size:.82rem;font-weight:500;color:var(--brand);background:var(--brand-soft);
  border:1px solid #d2def7;padding:5px 14px;border-radius:100px;
}

/* ---------- Faixa escura (time) ---------- */
.team{
  position:relative;overflow:hidden;background:var(--dark);color:#fff;text-align:center;
  padding:clamp(90px,12vw,150px) 0 clamp(60px,8vw,90px);
}
.team::before{
  content:"";position:absolute;inset:0;opacity:.35;
  background-image:radial-gradient(circle,rgba(79,155,255,.6) 1px,transparent 1.5px);background-size:14px 14px;
  -webkit-mask:linear-gradient(180deg,#000,transparent 85%);mask:linear-gradient(180deg,#000,transparent 85%);
}
.team::after{content:"";position:absolute;inset:0;background:radial-gradient(50% 60% at 50% 100%,rgba(29,95,209,.35),transparent 70%)}
.team .container{position:relative;z-index:1}
.team h2{color:#fff;font-family:'Noto Sans',sans-serif;font-size:clamp(1.3rem,2.4vw,1.6rem);max-width:34ch;margin:18px auto 14px}
.team p{color:rgba(255,255,255,.82);max-width:62ch;margin:0 auto}
.team .pill{font-weight:600}

/* ---------- FAQ ---------- */
.faq-list{max-width:820px;margin:0 auto;display:grid;gap:10px}
.faq-list details{background:#fff;border:1px solid var(--line);border-radius:12px;padding:0 22px}
.faq-list summary{
  list-style:none;cursor:pointer;padding:18px 0;font-weight:600;color:var(--ink);font-size:1.05rem;
  display:flex;justify-content:space-between;gap:16px;align-items:center;
}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:"+";font-size:1.4rem;font-weight:400;color:var(--brand);transition:transform .2s}
.faq-list details[open] summary::after{transform:rotate(45deg)}
.faq-list details p{padding:0 0 20px;font-size:.98rem}

/* ---------- Contato ---------- */
.contact{display:grid;grid-template-columns:.8fr 1.25fr;gap:clamp(28px,5vw,56px);align-items:center}
.contact>*{min-width:0}
.contact-copy img{height:22px;width:auto;margin-bottom:10px}
.contact-copy h2{font-family:'Noto Sans',sans-serif;color:var(--brand-ink);font-size:clamp(1.45rem,2.6vw,1.8rem);line-height:1.15;margin-bottom:12px}
.contact-copy>p{font-size:1.05rem}
.contact-list{margin-top:28px;display:grid;gap:12px;font-size:.95rem}
.contact-list li{display:flex;gap:12px;align-items:flex-start}
.contact-list svg{width:20px;height:20px;flex:none;color:var(--brand);margin-top:2px}
.contact-list a:hover{color:var(--brand)}
.form-card{border:1px solid var(--line);border-radius:14px;padding:clamp(24px,4vw,40px) clamp(20px,5vw,48px)}
.form-card h3{text-align:center;font-size:1.3rem;font-weight:500;margin-bottom:26px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px}
.form-grid .span2{grid-column:1/-1}
.form-grid label{display:grid;gap:4px;font-size:.8rem;color:#8a8a96}
.form-grid input,.form-grid select,.form-grid textarea{
  font:inherit;font-size:.95rem;color:var(--ink);width:100%;
  border:1px solid #d5d9e6;border-radius:100px;padding:10px 16px;background:#fff;
  transition:border-color .2s,box-shadow .2s;
}
.form-grid textarea{border-radius:16px;resize:vertical;min-height:90px}
.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{outline:0;border-color:var(--brand);box-shadow:0 0 0 3px rgba(29,95,209,.14)}
.form-card .btn{margin-top:20px;font-weight:600;padding:14px 26px}
.form-card small{display:block;text-align:center;color:var(--muted);font-size:.8rem;margin-top:14px;padding-top:14px;border-top:1px dashed var(--line)}

/* ---------- Área do Cliente ---------- */
.acesso-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.acesso-card{
  display:flex;flex-direction:column;align-items:flex-start;gap:14px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  padding:22px;transition:transform .28s var(--ease),box-shadow .28s var(--ease);
}
.acesso-card:hover{transform:translateY(-4px);box-shadow:0 22px 44px -26px rgba(27,63,134,.35)}
.acesso-ico{width:52px;height:52px;flex:none;border-radius:14px;display:grid;place-items:center;color:#fff}
.acesso-ico svg{width:26px;height:26px}
.acesso-nome{font-size:1.12rem}
.acesso-go{margin-top:auto;flex:none;display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:.92rem;color:var(--brand)}
.acesso-go svg{width:16px;height:16px;transition:transform .2s var(--ease)}
.acesso-card:hover .acesso-go svg{transform:translateX(4px)}
.acesso-card--off:hover{transform:none;box-shadow:none}
.acesso-card--off .acesso-ico{filter:grayscale(.35);opacity:.8}
.acesso-go--off{color:var(--muted);font-weight:500}
.acesso-help{margin-top:34px;text-align:center;font-size:.95rem;color:var(--muted)}
.acesso-help a{font-weight:600;color:var(--brand)}
.acesso-help a:hover{text-decoration:underline}
.recebido-yt{margin-top:12px}
.recebido-yt a{display:inline-flex;align-items:center;gap:6px;vertical-align:middle}
.recebido-yt svg{width:20px;height:20px}

/* ---------- Solicitação recebida ---------- */
.recebido-ico{
  width:76px;height:76px;margin:0 auto 22px;border-radius:50%;display:grid;place-items:center;color:#fff;
  background:linear-gradient(135deg,var(--brand),var(--brand-2));box-shadow:0 0 0 10px rgba(29,95,209,.16);
}
.recebido-ico svg{width:36px;height:36px}
.recebido-note{margin-top:22px;font-size:.88rem;color:rgba(255,255,255,.5)}
.recebido-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.recebido-steps li{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px 24px}
.recebido-steps .mono{color:var(--brand)}
.recebido-steps strong{display:block;font-size:1.08rem;margin:10px 0 6px}
.recebido-steps p{font-size:.95rem}

/* ---------- Landing page (campanhas) ---------- */
.lp-head-cta{padding:11px 22px;font-weight:600}
.lp-hero{padding:130px 0 80px;min-height:0;text-align:left}
.lp-hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,5vw,64px);align-items:center}
.lp-hero-grid>*{min-width:0}
.lp-hero h1{margin:22px 0 0;max-width:15ch}
.lp-hero .lead{margin:20px 0 0}
.lp-accent{color:#4f9bff}
.lp-ticks{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:26px;font-size:.95rem;color:rgba(255,255,255,.8)}
.lp-ticks li{display:flex;align-items:center;gap:8px}
.lp-ticks li::before{
  content:"";width:18px;height:18px;border-radius:50%;flex:none;
  background:var(--brand) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center/11px no-repeat;
}
.lp-hero-actions{margin-top:30px}
.lp-form{position:relative;background:#fff;color:var(--text);border:0;box-shadow:0 30px 70px -30px rgba(0,0,0,.6)}
.lp-anchor{position:absolute;top:-96px}
.lp-form h2{font-size:1.45rem;text-align:center}
.lp-form-sub{text-align:center;font-size:.95rem;margin:8px 0 22px}
.lp-kicker{display:block;color:var(--brand);margin-bottom:10px}
.lp-card h3{margin:18px 0 8px;font-size:1.08rem}
.lp-card p{font-size:.95rem}
.lp-ico{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;background:var(--brand-tint);color:var(--brand)}
.lp-ico svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.lp-seg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.lp-split-top{align-items:start}
.lp-cta{background:linear-gradient(120deg,var(--brand-ink),var(--brand));color:#fff;text-align:center;padding:clamp(56px,8vw,96px) 0}
.lp-cta h2{color:#fff;max-width:22ch;margin:0 auto}
.lp-cta p{color:rgba(255,255,255,.78);margin:14px auto 0;max-width:52ch}
.lp-cta-btn{margin-top:28px;background:#fff;color:var(--brand-ink);font-weight:600}
.lp-cta-btn:hover{box-shadow:0 14px 30px -12px rgba(0,0,0,.45)}
.lp-footer{padding:44px 0}
.lp-footer-inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:24px;align-items:flex-end}
.lp-footer-meta{display:flex;flex-direction:column;gap:6px;font-size:.85rem;text-align:right}
.lp-footer-meta a:hover{color:#fff}

/* ---------- Footer ---------- */
.site-footer{background:var(--dark);color:rgba(255,255,255,.7);padding:64px 0 28px;font-size:.93rem}
.footer-inner{display:grid;grid-template-columns:1.3fr 2fr;gap:40px}
.footer-brand img{height:26px;width:auto;margin-bottom:14px}
.footer-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.footer-social{display:flex;gap:10px;margin-top:18px}
.footer-social a{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:#fff;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);transition:background .2s,transform .2s var(--ease)}
.footer-social a:hover{background:var(--brand);transform:translateY(-2px)}
.footer-social svg{width:20px;height:20px}
.footer-col{display:flex;flex-direction:column;gap:10px}
.footer-col h4{font-family:'JetBrains Mono',monospace;font-size:.72rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:#fff;margin-bottom:6px}
.footer-col a:hover{color:#fff}
.footer-bottom{margin-top:44px;padding-top:22px;border-top:1px solid rgba(255,255,255,.08);font-size:.82rem;color:rgba(255,255,255,.45)}

/* ---------- WhatsApp flutuante ---------- */
.wa-float{
  position:fixed;right:20px;bottom:20px;z-index:90;width:56px;height:56px;border-radius:50%;
  background:var(--brand-ink);color:#fff;display:grid;place-items:center;
  box-shadow:0 14px 30px -10px rgba(27,63,134,.7);transition:transform .2s var(--ease);
}
.wa-float:hover{transform:scale(1.08)}

/* ---------- Reveal ---------- */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none}
  .hero-globe,.phone,.seg-chip,.devices-glow,.bell::after{animation:none}
  .laptop{transform:none}
  .line .stroke{stroke-dashoffset:0}
  .line .area{opacity:1}
  html{scroll-behavior:auto}
}

/* ---------- Responsivo ---------- */
@media(max-width:980px){
  .cards4,.diffs{grid-template-columns:repeat(2,1fr)}
  .acesso-grid{grid-template-columns:repeat(2,1fr)}
  .split,.split--wide,.contact,.lp-hero-grid{grid-template-columns:1fr}
  .lp-seg-grid{grid-template-columns:repeat(2,1fr)}
  .footer-inner{grid-template-columns:1fr}
}
@media(max-width:860px){
  .nav-toggle{display:flex}
  .main-nav{
    position:fixed;top:72px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;
    background:var(--dark);padding:10px 24px 24px;border-top:1px solid rgba(255,255,255,.08);
    transform:translateY(-12px);opacity:0;visibility:hidden;transition:.25s var(--ease);
  }
  .main-nav.open{transform:none;opacity:1;visibility:visible}
  .main-nav a{padding:14px 0;border-bottom:1px solid rgba(255,255,255,.06)}
  .main-nav .nav-cta{margin:16px 0 0;text-align:center;border-bottom:0}
  .site-header{background:rgba(10,12,20,.92)}
}
@media(max-width:720px){
  body{font-size:16px}
  .hero{padding-top:130px;min-height:0}
  .hero-globe{margin-bottom:-45vw}
  .cards3{grid-template-columns:1fr}
  .tl-row,.tl-row--right{grid-template-columns:6px 1fr;padding:18px}
  .tl-row .tl-side{display:none}
  .tl-row .tl-bar,.tl-row--right .tl-bar{order:1}
  .tl-row .tl-item,.tl-row--right .tl-item{order:2}
  .deliver,.form-grid,.recebido-steps,.lp-seg-grid{grid-template-columns:1fr}
  .lp-hero{padding:110px 0 56px}
  .lp-head-cta{display:none}
  .lp-footer-meta{text-align:left}
  .footer-cols{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){
  .cards4,.diffs,.acesso-grid{grid-template-columns:1fr}
}

/* ===================================================================
   EvolutClinic | componentes da página do produto
   =================================================================== */
:root{--red:#e5484d;--red-bg:#fdeeee;--amber:#d98a14;--amber-bg:#fff5e3;--green:#16a34a;--green-bg:#e8f7ee;--gray-bg:#eef1f6}
html{scroll-padding-top:84px}
.skip{position:absolute;left:-999px;top:8px;z-index:200;background:#fff;color:var(--ink);padding:8px 14px;border-radius:100px}
.skip:focus{left:8px}
:focus-visible{outline:3px solid #4f9bff;outline-offset:2px}

/* Marca: símbolo da Evolut + nome do produto */
.brand{display:inline-flex;align-items:center;gap:10px;color:#fff;font-weight:600;font-size:1.32rem;letter-spacing:-.01em}
.brand img{height:28px;width:28px}
.brand b{font-weight:600;color:#4f9bff}

/* Faixa "Feito para" */
.for-strip{padding:26px 0;border-bottom:1px solid var(--line)}
.for-strip .container{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px 22px}
.for-strip .mono{color:var(--muted)}
.for-strip .tags{margin:0}

/* Ícones coloridos (variações do .lp-ico) */
.lp-ico--red{background:var(--red-bg);color:var(--red)}
.lp-ico--amber{background:var(--amber-bg);color:var(--amber)}
.lp-ico--green{background:var(--green-bg);color:var(--green)}
.lp-ico--gray{background:var(--gray-bg);color:#5b6070}
.card-badge{position:absolute;top:18px;right:18px;color:var(--brand);background:var(--brand-soft);border:1px solid #d2def7;padding:2px 10px;border-radius:100px}

/* Módulos agrupados */
.mods{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 18px}
.mods>*{min-width:0}
.mod-col{display:flex;flex-direction:column;gap:8px}
.mod-col h3{font-family:'JetBrains Mono',monospace;font-size:.72rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--brand);margin:6px 4px 4px}
.mod-col h3:not(:first-child){margin-top:22px}
.md{
  display:flex;align-items:flex-start;gap:14px;padding:16px 18px;border-radius:12px;border:1px solid var(--line);background:#fff;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s;
}
.md:hover{transform:translateY(-3px);box-shadow:0 22px 44px -26px rgba(27,63,134,.35);border-color:#d2def7}
.md .lp-ico{width:40px;height:40px;border-radius:10px;flex:none}
.md .lp-ico svg{width:20px;height:20px}
.md b{display:block;color:var(--ink);font-weight:600;font-size:1rem;line-height:1.3}
.md small{display:block;color:var(--text);font-size:.9rem;line-height:1.45;margin-top:3px}
.mods-note{text-align:center;margin-top:30px;font-size:.95rem;color:var(--muted)}

/* Recursos em detalhe (texto + tela) */
.feat-list{display:grid;gap:clamp(64px,9vw,110px)}
.split--rev>:first-child{order:2}
.feature h2{margin:16px 0 14px}
.feature .checks{margin:22px 0 0;gap:12px}
.feature .checks li{font-size:.98rem}

.mock{
  position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;
  box-shadow:0 30px 60px -34px rgba(27,63,134,.4);font-size:.86rem;line-height:1.4;color:var(--text);
}
.mock-wrap{position:relative;z-index:0;padding:4% 3%}
.mock-wrap::before{
  content:"";position:absolute;inset:-6% -4%;z-index:-1;
  background-image:linear-gradient(#eef1f7 1px,transparent 1px),linear-gradient(90deg,#eef1f7 1px,transparent 1px);
  background-size:28px 28px;-webkit-mask:radial-gradient(closest-side,#000,transparent);mask:radial-gradient(closest-side,#000,transparent);
}
.mk-h{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px}
.mk-h b{color:var(--ink);font-weight:600;font-size:1rem}
.mk-h span{color:var(--muted);font-size:.78rem}
.mk-h.sm{margin:18px 0 10px}
.mk-h.sm b{font-size:.9rem}

.st{font-style:normal;font-size:.72rem;font-weight:600;padding:2px 9px;border-radius:100px;white-space:nowrap}
.st-ok{background:var(--green-bg);color:var(--green)}
.st-at{background:#f1eaff;color:#7c5cff}
.st-cf{background:var(--brand-tint);color:var(--brand)}
.st-es{background:var(--amber-bg);color:var(--amber)}
.st-ag{background:var(--gray-bg);color:#5b6070}
.g{color:var(--green)!important}
.r{color:var(--red)!important}

/* Agenda */
.ag{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.ag-col em{display:flex;align-items:center;gap:8px;font-style:normal;font-weight:600;color:var(--ink);font-size:.8rem;margin-bottom:10px}
.ag-col em::before{content:"";width:10px;height:10px;border-radius:3px;background:var(--c);flex-shrink:0}
.ag-it{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;align-items:center;padding:10px 12px;border-radius:10px;background:var(--brand-soft);border-left:3px solid var(--brand);margin-bottom:8px}
.ag-col:nth-child(2) .ag-it{border-left-color:#0d9488}
.ag-it time{font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums;grid-row:span 2}
.ag-it b{color:var(--ink);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ag-it .st{justify-self:start}
.ag-it.blk{background:repeating-linear-gradient(135deg,#f3f5f9 0 8px,#e7eaf3 8px 16px);border-left-color:#9aa0b0}
.ag-it.blk b{color:var(--muted)}

/* Dossiê */
.ds-top{display:flex;align-items:center;gap:12px}
.ds-top .avatar{width:44px;height:44px;font-size:.95rem}
.ds-top div b{display:block;color:var(--ink);font-size:1.05rem;font-weight:600}
.ds-top small{color:var(--muted);font-size:.8rem}
.ds-warn{display:flex;align-items:center;gap:8px;margin:14px 0;padding:8px 12px;border-radius:10px;background:var(--amber-bg);color:#8a5a0a;font-weight:600;font-size:.8rem}
.ds-warn svg{width:16px;height:16px;color:var(--amber);flex:none}
.ds-kpi{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:16px}
.ds-kpi div{background:var(--brand-soft);border-radius:10px;padding:10px;text-align:center}
.ds-kpi strong{display:block;font-size:1.15rem}
.ds-kpi small{color:var(--muted);font-size:.74rem}
.dtl{position:relative;display:grid;gap:12px;padding-left:20px}
.dtl::before{content:"";position:absolute;left:5px;top:6px;bottom:6px;width:2px;background:var(--line)}
.dtl li{position:relative;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.dtl i{position:absolute;left:-20px;top:4px;width:12px;height:12px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px var(--line)}
.dtl b{color:var(--ink);font-weight:500}
.dtl span{color:var(--muted);font-size:.78rem}
.d-blue{background:var(--brand)}
.d-green{background:var(--green)}
.d-amb{background:var(--amber)}

/* Orçamento aberto no celular do paciente */
.mock-phone{display:grid;place-items:center;padding:34px 22px;background:linear-gradient(160deg,var(--brand-soft),#fff)}
.orc{
  width:100%;max-width:280px;background:#fff;border:8px solid #11131b;border-radius:34px;padding:22px 18px 20px;
  box-shadow:0 0 0 2px #2a2d38,0 30px 60px -24px rgba(10,20,50,.5);display:grid;gap:8px;animation:floaty 6s ease-in-out infinite;
}
.orc-bar{width:70px;height:6px;border-radius:6px;background:#11131b;margin:-8px auto 8px}
.orc small{color:var(--muted);font-size:.74rem}
.orc>b{color:var(--ink);font-size:1.08rem;font-weight:600;margin-bottom:4px}
.orc-it{display:flex;justify-content:space-between;gap:8px;padding:8px 0;border-bottom:1px dashed var(--line)}
.orc-it em{font-style:normal;font-weight:600;color:var(--ink);white-space:nowrap}
.orc-it.mut span,.orc-it.mut em{color:var(--green)}
.orc-tot{display:flex;justify-content:space-between;align-items:baseline;padding-top:4px}
.orc-tot span{font-weight:600;color:var(--ink)}
.orc-tot strong{font-size:1.4rem}
.orc-btn{display:grid;grid-template-columns:1.4fr 1fr;gap:8px;margin-top:8px}
.orc-btn span{text-align:center;padding:10px;border-radius:100px;font-weight:600;border:1px solid var(--line);color:var(--muted)}
.orc-btn .ok{background:var(--green);border-color:var(--green);color:#fff}

/* Atraso por faixa */
.aging{display:grid;gap:12px}
.ab{display:grid;grid-template-columns:78px 1fr 72px;gap:12px;align-items:center}
.ab span{font-size:.8rem}
.ab b{height:10px;border-radius:6px;background:var(--gray-bg);position:relative;overflow:hidden}
.ab b::after{content:"";position:absolute;inset:0 auto 0 0;width:0;border-radius:6px;background:linear-gradient(90deg,#f7a7a9,var(--red));transition:width 1.4s var(--ease) .3s}
.reveal.in .ab b::after{width:var(--w)}
.ab em{font-style:normal;font-weight:600;color:var(--ink);text-align:right;font-variant-numeric:tabular-nums}
.rec{display:flex;align-items:center;gap:8px;margin-top:18px;padding:10px 12px;border-radius:10px;background:var(--green-bg);color:#11643a;font-weight:600;font-size:.8rem}
.rec svg{width:16px;height:16px;color:var(--green);flex:none}
.rec--blue{background:var(--brand-soft);color:var(--brand-ink)}
.rec--blue svg{color:var(--brand)}

/* Lotes e glosas */
.mock-glosa table{width:100%;border-collapse:collapse;font-size:.8rem}
.mock-glosa th{text-align:left;font-weight:600;color:var(--muted);font-size:.74rem;padding:0 6px 8px;border-bottom:1px solid var(--line)}
.mock-glosa td{padding:10px 6px;border-bottom:1px solid #f1f3f8;font-variant-numeric:tabular-nums;white-space:nowrap}
.mock-glosa td:first-child{color:var(--ink);font-weight:600}

/* Projeção de caixa */
.pseg{display:inline-flex;background:var(--brand-soft);border-radius:100px;padding:3px;gap:2px}
.pseg i{font-style:normal;font-size:.74rem;padding:2px 10px;border-radius:100px;color:var(--muted);font-weight:600}
.pseg i.on{background:#fff;color:var(--brand);box-shadow:0 1px 3px rgba(10,20,50,.1)}
.pj-n{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.pj-n small{display:block;color:var(--muted);font-size:.74rem}
.pj-n strong{font-size:.98rem;white-space:nowrap}
.pj-ch{width:100%;height:120px;margin:16px 0 8px;display:block}
.pj-ch .area{opacity:0}
.pj-ch .stroke{stroke-dasharray:1;stroke-dashoffset:1}
.reveal.in .pj-ch .stroke{animation:draw 2s .3s var(--ease) forwards}
.reveal.in .pj-ch .area{animation:fadein 1s 1.4s forwards}
.pj-f{display:flex;justify-content:space-between;align-items:baseline;padding-top:12px;border-top:1px solid var(--line)}
.pj-f strong{font-size:1.15rem}

/* Painel executivo */
.ex-kpi{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ex-kpi div{background:var(--brand-soft);border-radius:12px;padding:12px}
.ex-kpi small{display:block;color:var(--muted);font-size:.74rem}
.ex-kpi strong{font-size:1.08rem;white-space:nowrap}
.cols{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;height:150px;align-items:end}
.cols div{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr auto;gap:3px;height:100%;align-items:end}
.cols b,.cols i{display:block;height:0;border-radius:5px 5px 2px 2px;transition:height 1.2s var(--ease) .3s}
.reveal.in .cols b,.reveal.in .cols i{height:var(--h)}
.cols b{background:linear-gradient(180deg,var(--brand-2),var(--brand))}
.cols i{background:#c9d9f7}
.cols span{grid-column:span 2;text-align:center;color:var(--muted);font-size:.72rem}
.lg{display:flex;gap:16px;margin-top:12px;font-size:.78rem;color:var(--muted)}
.lg span{display:flex;align-items:center;gap:6px}
.lg i{width:10px;height:10px;border-radius:3px}
.lg .c1{background:var(--brand)}
.lg .c2{background:#c9d9f7}

/* Celular do hero: orçamento aberto pelo paciente */
.ph-list div em{margin-left:auto;font-style:normal;font-weight:600}
.ph-ok{background:#16a34a;color:#fff;border-radius:100px;text-align:center;padding:.7em;font-weight:600;font-size:.85em;margin-top:auto}

/* Faixa escura (segurança) */
.dark-sec{position:relative;overflow:hidden;background:var(--dark);color:rgba(255,255,255,.75)}
.dark-sec::before{
  content:"";position:absolute;inset:0;opacity:.35;pointer-events:none;
  background-image:radial-gradient(circle,rgba(79,155,255,.6) 1px,transparent 1.5px);background-size:14px 14px;
  -webkit-mask:linear-gradient(180deg,#000,transparent 85%);mask:linear-gradient(180deg,#000,transparent 85%);
}
.dark-sec::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(50% 60% at 50% 100%,rgba(29,95,209,.35),transparent 70%)}
.dark-sec .container{position:relative;z-index:1}
.dark-sec h2{color:#fff}
.dark-sec .section-head p{color:rgba(255,255,255,.72)}
.dark-sec .lp-kicker{color:#4f9bff}
.sec-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.sec-cards>*{min-width:0}
.sc{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);padding:24px 22px;transition:background .3s,transform .3s var(--ease)}
.sc:hover{background:rgba(255,255,255,.07);transform:translateY(-4px)}
.sc .lp-ico{background:rgba(79,155,255,.14);color:#7fb5ff}
.sc h3{color:#fff;margin:16px 0 6px;font-size:1.05rem}
.sc p{font-size:.93rem;color:rgba(255,255,255,.66)}

/* Planos */
.plans{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;align-items:stretch}
.plans>*{min-width:0}
.pl{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px 26px;transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.pl:hover{transform:translateY(-4px);box-shadow:0 22px 44px -26px rgba(27,63,134,.35)}
.pl h3{font-size:1.3rem}
.pl-d{font-size:.95rem;margin-top:6px;min-height:72px}
.price{display:flex;align-items:baseline;gap:4px;margin-top:18px;color:var(--ink)}
.price small{font-weight:600;font-size:1rem}
.price strong{font-size:2.6rem;font-weight:600;letter-spacing:-.03em;line-height:1}
.price span{color:var(--muted);font-size:.95rem}
.pl-m{font-size:.88rem;color:var(--muted);margin:10px 0 20px;padding-bottom:20px;border-bottom:1px dashed var(--line)}
.pl .checks{margin:0 0 26px;gap:10px;flex:1;align-content:start}
.pl .checks li{font-size:.95rem}
.pl-hl{border:2px solid var(--brand);box-shadow:0 30px 60px -30px rgba(29,95,209,.45)}
.pl-tag{position:absolute;top:-13px;left:26px;background:var(--brand);color:#fff;padding:4px 12px;border-radius:100px}
.pl-ent{background:linear-gradient(180deg,var(--brand-soft),#fff 60%)}
.btn-line{background:#fff;color:var(--ink);border:1px solid #d5d9e6}
.btn-line:hover{border-color:var(--brand);color:var(--brand)}
.plans-note{text-align:center;margin-top:28px;font-size:.95rem;color:var(--muted)}

/* Ícones do sprite (fora do .lp-ico) */
svg.i{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.lp-ico svg{width:24px;height:24px}
.tl-side svg.i{width:64px;height:64px;stroke-width:1.3}
.ds-warn svg.i,.rec svg.i{width:16px;height:16px}
.price--txt strong{font-size:1.9rem;line-height:2.6rem}

/* Pronto atendimento */
.vit{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:16px}
.vit div{background:var(--brand-soft);border-radius:10px;padding:10px;text-align:center}
.vit small{display:block;color:var(--muted);font-size:.72rem}
.vit strong{font-size:1rem;white-space:nowrap}
.kv{display:grid;gap:0}
.kv li{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #f1f3f8}
.kv li span{color:var(--muted)}
.kv li b{color:var(--ink);font-weight:500;text-align:right}

/* Tarefas (kanban) */
.kb{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.kb-col{background:var(--brand-soft);border-radius:12px;padding:10px;display:grid;gap:8px;align-content:start}
.kb-col>small{display:flex;justify-content:space-between;font-weight:600;color:var(--ink);font-size:.76rem;padding:2px 4px}
.kb-col>small i{font-style:normal;color:var(--muted);font-weight:500}
.kb-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px;display:grid;gap:8px;font-size:.78rem;color:var(--ink)}
.kb-card div{display:flex;align-items:center;justify-content:space-between;gap:6px}
.kb-card .avatar{width:22px;height:22px;font-size:.62rem}
.kb-card.done{opacity:.7}
.kb-card.done>span{text-decoration:line-through}

/* Formulário */
.form-grid .invalid{border-color:var(--red);box-shadow:0 0 0 3px rgba(229,72,77,.12)}
.form-msg{font-size:.9rem;font-weight:600;margin-top:14px;text-align:center;color:var(--red)}
.form-msg.ok{color:var(--green)}

@media(max-width:1100px){
  .plans{grid-template-columns:repeat(2,1fr);gap:28px 12px}
  .pl-d{min-height:0}
}
@media(max-width:980px){
  .mods,.sec-cards{grid-template-columns:repeat(2,1fr)}
  .mods .mod-col:nth-child(3) h3:first-child{display:none}
  .split--rev>:first-child{order:0}
}
@media(max-width:720px){
  .mods,.sec-cards{grid-template-columns:1fr}
  .mods .mod-col:nth-child(3) h3:first-child{display:block}
  .ag{grid-template-columns:1fr}
  .plans{grid-template-columns:1fr;max-width:480px;margin:0 auto}
  .vit{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kb{grid-template-columns:1fr}
  .mock-glosa th:nth-child(3),.mock-glosa td:nth-child(3){display:none}
  .pj-n strong,.ex-kpi strong{font-size:.8rem;white-space:normal}
  .ex-kpi div{padding:10px 8px}
  .brand{font-size:1.18rem}
}
@media (prefers-reduced-motion:reduce){
  .orc{animation:none}
  .ab b::after{width:var(--w);transition:none}
  .cols b,.cols i{height:var(--h);transition:none}
  .pj-ch .stroke{stroke-dashoffset:0;animation:none}
  .pj-ch .area{opacity:1;animation:none}
}
