
/* ---------- cabeçalho ---------- */
.bar{position:fixed;inset:0 0 auto;z-index:50;transition:.3s;padding:16px 0;
  background:rgba(250,250,248,.95);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.bar.solid{box-shadow:0 2px 14px rgba(0,46,110,.07)}   /* só sombra: a altura não muda */
.bar .wrap{display:flex;align-items:center;gap:34px;min-height:44px}
.bar .wm i{color:var(--navy)}
.bar nav{display:flex;gap:26px;margin-left:auto}
.bar nav a{font-size:13.5px;font-weight:500;text-decoration:none;color:var(--ink-2)}
.bar nav a:hover{color:var(--gold-ink)}
.bar .btn{padding:11px 20px;font-size:13px}
@media(max-width:940px){.bar nav{display:none}}

/* ---------- abertura ---------- */
.hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden;
  background:radial-gradient(120% 90% at 78% 15%,#0d2a5e 0%,#001E4A 46%,#00132E 100%)}
.aurora{position:absolute;inset:-25%;filter:blur(70px);opacity:.62;pointer-events:none}
.aurora span{position:absolute;border-radius:50%;mix-blend-mode:screen}
.a1{width:52vw;height:52vw;left:44%;top:-6%;background:radial-gradient(circle,#2F97A0 0%,transparent 66%);animation:fl1 19s ease-in-out infinite}
.a2{width:44vw;height:44vw;left:8%;top:38%;background:radial-gradient(circle,#1E5FA8 0%,transparent 66%);animation:fl2 24s ease-in-out infinite}
.a3{width:26vw;height:26vw;left:66%;top:56%;background:radial-gradient(circle,#C8A96E 0%,transparent 62%);opacity:.5;animation:fl3 29s ease-in-out infinite}
@keyframes fl1{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-7vw,7vh) scale(1.14)}}
@keyframes fl2{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(8vw,-6vh) scale(1.1)}}
@keyframes fl3{0%,100%{transform:translate(0,0)}50%{transform:translate(-5vw,-9vh)}}
.grid-lines{position:absolute;inset:0;opacity:.14;pointer-events:none;
  background-image:linear-gradient(rgba(154,220,225,.5) 1px,transparent 1px),linear-gradient(90deg,rgba(154,220,225,.5) 1px,transparent 1px);
  background-size:82px 82px;mask-image:radial-gradient(70% 60% at 50% 45%,#000 20%,transparent 78%)}
.hero .wrap{position:relative;z-index:2;padding-top:120px;padding-bottom:80px}
.hero h1{font-size:clamp(46px,6.4vw,88px);color:var(--paper);max-width:15ch;letter-spacing:-.005em}
.hero h1 em{font-style:italic;color:var(--teal-2)}
.hero .lead{margin-top:26px;max-width:56ch;font-size:19px;color:rgba(250,250,248,.8)}
.hero .cta{margin-top:40px;display:flex;gap:14px;flex-wrap:wrap}
.hero .eyebrow{margin-bottom:22px;display:block}
.scroll{position:absolute;left:50%;bottom:34px;transform:translateX(-50%);z-index:2;
  font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:rgba(250,250,248,.42);text-decoration:none}
.scroll::after{content:"";display:block;width:1px;height:36px;margin:12px auto 0;background:linear-gradient(rgba(250,250,248,.5),transparent);animation:dn 2.2s ease-in-out infinite}
@keyframes dn{0%,100%{opacity:.25;transform:scaleY(.6)}50%{opacity:1;transform:scaleY(1)}}

/* ---------- faixa de prova ---------- */
.prova{background:var(--navy-3);color:var(--paper);padding:52px 0}
.prova .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
.prova .n{font-family:var(--serif);font-size:46px;line-height:1;color:var(--teal-2)}
.prova .l{margin-top:8px;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:rgba(250,250,248,.56);line-height:1.5}
.prova .nota{grid-column:1/-1;font-size:12.5px;color:rgba(250,250,248,.42);border-top:1px solid rgba(250,250,248,.12);padding-top:18px}
@media(max-width:860px){.prova .wrap{grid-template-columns:1fr 1fr}}

/* ---------- as duas frentes ---------- */
.sec{padding:110px 0}
.sec-head{max-width:60ch;margin-bottom:56px}
.sec-head h2{font-size:clamp(34px,4.2vw,54px);margin:14px 0 18px}
.sec-head p{color:var(--ink-2);font-size:18px}
.frentes{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.frente{position:relative;border:1px solid var(--line);border-radius:20px;padding:38px;background:#fff;
  transition:.35s;overflow:hidden}
.frente::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--teal),var(--gold));transform:scaleX(0);transform-origin:left;transition:.5s}
.frente:hover{transform:translateY(-5px);box-shadow:0 20px 50px rgba(0,46,110,.11);border-color:transparent}
.frente:hover::before{transform:scaleX(1)}
.frente svg{width:62px;height:62px;border-radius:15px}
.frente h3{font-size:31px;margin:20px 0 4px}
.frente .desc{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-ink);font-weight:600}
.frente p.t{margin:18px 0 22px;color:var(--ink-2)}
.frente ul{list-style:none;margin-bottom:26px}
.frente li{padding-left:24px;position:relative;margin-bottom:9px;font-size:15px;color:var(--ink-2)}
.frente li::before{content:"";position:absolute;left:2px;top:9px;width:7px;height:7px;border-radius:50%;background:var(--teal)}
.frente a.mais{font-size:14px;font-weight:600;color:var(--navy);text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:2px}
@media(max-width:860px){.frentes{grid-template-columns:1fr}}

/* ---------- conversa animada ---------- */
.demo{background:var(--paper-2);padding:110px 0}
.demo .wrap{display:grid;grid-template-columns:1fr 400px;gap:70px;align-items:center}
.fone{background:#F0F2F5;border-radius:30px;padding:0;overflow:hidden;
  box-shadow:0 24px 60px rgba(0,30,74,.18);border:4px solid #16181C}
.chatbar{display:flex;align-items:center;gap:10px;padding:14px 16px;background:#F0F2F5;border-bottom:1px solid #DDD}
.chatbar .av{width:36px;height:36px;border-radius:50%;background:var(--navy);display:grid;place-items:center;overflow:hidden}
.chatbar .av svg{width:36px;height:36px}
.chatbar b{color:#111B21;font-size:14px;font-weight:600;font-family:var(--sans)}
.chatbar i{display:block;color:#667781;font-size:11.5px;font-style:normal}
.msgs{height:352px;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding:16px 14px;
  background-color:#E4DDD4;
  background-image:radial-gradient(rgba(0,0,0,.045) 1px,transparent 1px),radial-gradient(rgba(0,0,0,.035) 1px,transparent 1px);
  background-size:26px 26px,26px 26px;background-position:0 0,13px 13px;
  scrollbar-width:none}
.msgs::-webkit-scrollbar{display:none}
.m{max-width:82%;padding:8px 11px;border-radius:9px;font-size:13.5px;line-height:1.45;color:#111B21;
  box-shadow:0 1px 1px rgba(11,20,26,.13);opacity:0;transform:translateY(8px);animation:pop .4s forwards;flex:0 0 auto}
.m.in{background:#FFFFFF;align-self:flex-start;border-top-left-radius:2px}
.m.out{background:#D9FDD3;align-self:flex-end;border-top-right-radius:2px}
@keyframes pop{to{opacity:1;transform:none}}
.tip{display:flex;gap:4px;padding:12px 13px;background:#FFF;border-radius:9px;align-self:flex-start;width:52px;
  box-shadow:0 1px 1px rgba(11,20,26,.13);flex:0 0 auto}
.tip span{width:6px;height:6px;border-radius:50%;background:#8696A0;animation:bl 1.3s infinite}
.tip span:nth-child(2){animation-delay:.18s}.tip span:nth-child(3){animation-delay:.36s}
@keyframes bl{0%,60%,100%{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}
.demo h2{font-size:clamp(32px,4vw,48px);margin:14px 0 18px}
.demo p{color:var(--ink-2);font-size:17px;max-width:46ch}
@media(max-width:940px){.demo .wrap{grid-template-columns:1fr}}

/* ---------- quem assina ---------- */
.assina{background:var(--navy);color:var(--paper);padding:104px 0}
.assina .wrap{display:grid;grid-template-columns:1fr 1fr;gap:60px}
.assina h2{font-size:clamp(32px,4vw,50px);color:var(--paper)}
.assina p{color:rgba(250,250,248,.76);margin-top:18px}
.pessoa{border-left:2px solid var(--gold);padding-left:20px;margin-bottom:28px}
.pessoa b{font-family:var(--serif);font-weight:400;font-size:24px;display:block}
.pessoa span{font-size:13.5px;color:rgba(250,250,248,.6)}
@media(max-width:860px){.assina .wrap{grid-template-columns:1fr}}

/* ---------- contato ---------- */
.fim{padding:112px 0;text-align:center;background:
  radial-gradient(70% 120% at 50% 0%,rgba(47,151,160,.13),transparent 62%)}
.fim h2{font-size:clamp(34px,4.6vw,58px);max-width:18ch;margin:0 auto 20px}
.fim p{color:var(--ink-2);max-width:52ch;margin:0 auto 34px;font-size:18px}

/* ---------- blocos do produto agenda ---------- */
.trio{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.cardp{background:#fff;border:1px solid var(--line);border-radius:18px;padding:32px;transition:.35s}
.cardp:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(0,46,110,.09)}
.cardp .k{width:42px;height:42px;border-radius:12px;background:rgba(47,151,160,.12);display:grid;place-items:center;color:var(--teal);font-weight:700;font-size:15px;margin-bottom:18px}
.cardp h3{font-size:25px;margin-bottom:10px}
.cardp p{color:var(--ink-2);font-size:15.5px}
@media(max-width:900px){.trio{grid-template-columns:1fr}}
.nasceu{background:var(--navy);color:var(--paper);padding:104px 0}
.nasceu .wrap{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.nasceu h2{font-size:clamp(30px,3.8vw,48px);color:var(--paper)}
.nasceu p{color:rgba(250,250,248,.78);margin-top:18px;font-size:17px}
.nasceu .met{display:grid;gap:26px}
.nasceu .met div{border-left:2px solid var(--gold);padding-left:20px}
.nasceu .met b{font-family:var(--serif);font-weight:400;font-size:40px;display:block;line-height:1;color:var(--teal-2)}
.nasceu .met span{font-size:14px;color:rgba(250,250,248,.66);display:block;margin-top:6px}
.nasceu .nota{grid-column:1/-1;font-size:12.5px;color:rgba(250,250,248,.4);border-top:1px solid rgba(250,250,248,.12);padding-top:16px;margin-top:8px}
@media(max-width:900px){.nasceu .wrap{grid-template-columns:1fr}}
.clinicas{padding:106px 0;background:var(--paper-2)}
.clinicas .wrap{display:grid;grid-template-columns:1fr 1.05fr;gap:64px;align-items:center}
.clinicas h2{font-size:clamp(30px,3.8vw,48px);margin:14px 0 18px}
.clinicas p{color:var(--ink-2);font-size:17px}
.clinicas ul{list-style:none;margin:24px 0 30px}
.clinicas li{padding-left:26px;position:relative;margin-bottom:11px;color:var(--ink-2)}
.clinicas li::before{content:"";position:absolute;left:2px;top:9px;width:8px;height:8px;border-radius:50%;background:var(--teal)}
.painel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:0 22px 54px rgba(0,46,110,.09)}
.painel .top{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:16px}
.painel .top b{font-family:var(--serif);font-weight:400;font-size:21px}
.painel .top span{font-size:12px;color:var(--ink-3)}
.linha{display:grid;grid-template-columns:58px 1fr auto;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--paper-2)}
.linha .h{font-family:var(--serif);font-size:19px;color:var(--navy)}
.linha .nome{font-size:14.5px;font-weight:600}
.linha .det{font-size:12.5px;color:var(--ink-3)}
.tag{font-size:11px;font-weight:600;padding:5px 11px;border-radius:100px;white-space:nowrap}
.tag.ok{background:rgba(47,151,160,.14);color:#1d6b72}
.tag.novo{background:rgba(200,169,110,.2);color:#8a6a2a}
.tag.esp{background:#EFEFEA;color:var(--ink-3)}
@media(max-width:900px){.clinicas .wrap{grid-template-columns:1fr}}

/* dourado claro só sobre fundo escuro */
.hero .eyebrow,.nasceu .eyebrow,.assina .eyebrow,.lado .desc,.prova .eyebrow{color:var(--gold)}

/* ---------- faixa de assinatura da empresa ---------- */
.assinatura-empresa{background:var(--navy-3);padding:52px 0}
.assinatura-empresa p{font-family:var(--serif);font-size:clamp(22px,2.3vw,29px);line-height:1.45;
  color:rgba(250,250,248,.7);max-width:47ch;margin:0 auto;text-align:center;text-wrap:balance}
.assinatura-empresa span{color:var(--paper)}

/* ---------- as duas em movimento ---------- */
.demos{background:var(--paper-2);padding:110px 0}
.demos .par{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:start}
.demos .fone,.demos .tela{width:100%;max-width:420px;margin:0 auto;height:552px}
.demos .tela{border-radius:30px;overflow:hidden;background:#0B141A;
  box-shadow:0 24px 60px rgba(0,30,74,.18);border:4px solid #16181C}
.demos .tela video{width:100%;height:100%;object-fit:cover;display:block}
.demos .fone{display:flex;flex-direction:column}
.demos .msgs{height:auto;flex:1 1 auto;min-height:0}
.demos .cap{display:flex;gap:14px;align-items:flex-start;max-width:420px;margin:24px auto 0}
.demos .cap svg{width:38px;height:38px;border-radius:10px;flex:0 0 auto}
.demos .cap b{font-family:var(--serif);font-weight:400;font-size:23px;display:block;line-height:1.2}
.demos .cap span{display:block;color:var(--ink-2);font-size:14.5px;margin:4px 0 8px}
.demos .cap a{font-size:14px;font-weight:600;color:var(--navy);text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:2px}
@media(max-width:900px){.demos .par{grid-template-columns:1fr;gap:56px}}
