.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
/* nav */
header.nav{position:fixed;top:14px;left:0;right:0;z-index:50;pointer-events:none}
.nav .bar{pointer-events:auto;max-width:1120px;margin:0 16px;display:flex;align-items:center;justify-content:space-between;gap:16px;background:rgba(255,255,255,.78);backdrop-filter:blur(16px) saturate(1.4);-webkit-backdrop-filter:blur(16px) saturate(1.4);border:1px solid rgba(227,231,239,.9);border-radius:999px;padding:8px 10px 8px 14px;box-shadow:0 12px 34px -20px rgba(15,30,74,.35);transition:box-shadow .3s}
@media(min-width:1150px){.nav .bar{margin:0 auto}}
.nav nav{display:flex;gap:4px;font-size:14px;font-weight:700;color:var(--muted)}
.nav nav a{padding:8px 14px;border-radius:999px;transition:.15s}
.nav nav a:hover{color:var(--brand-d);background:var(--brand-l)}
@media(max-width:900px){.nav nav{display:none}}
/* hero */
.hero{position:relative;padding:150px 0 80px;min-height:100vh;display:flex;align-items:center}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:center;width:100%}
@media(max-width:960px){.hero .wrap{grid-template-columns:1fr}.hero{padding-top:120px}}
.kicker{display:inline-flex;align-items:center;gap:10px;font-weight:800;font-size:12.5px;letter-spacing:1.6px;text-transform:uppercase;color:var(--brand-d)}
.kicker::before{content:"";width:34px;height:3px;background:var(--brand);border-radius:3px}
h1.mega{font-family:var(--fd);text-transform:uppercase;font-weight:700;line-height:.92;letter-spacing:-.5px;font-size:clamp(46px,6.4vw,98px);margin:22px 0 26px}
h1.mega .ln{display:block;overflow:hidden;padding:.06em 0 .16em;margin-bottom:-.12em}
h1.mega .ln>span{display:inline-block;transform:translateY(110%);animation:rise 1s var(--ease) forwards}
h1.mega .ln:nth-child(2)>span{animation-delay:.12s}h1.mega .ln:nth-child(3)>span{animation-delay:.24s}
@keyframes rise{to{transform:none}}
h1.mega .o{color:transparent;-webkit-text-stroke:2px var(--ink)}
h1.mega .b{background:linear-gradient(90deg,var(--brand),var(--brand-2),var(--brand));background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:rise 1s var(--ease) .24s forwards,shine 6s linear 1.4s infinite}
@keyframes shine{to{background-position:-200% 0}}
.lead{font-size:18px;color:#3C4658;max-width:520px;font-weight:500}
.fade-up{opacity:0;transform:translateY(16px);animation:fu .9s var(--ease) forwards}
.d1{animation-delay:.45s}.d2{animation-delay:.6s}.d3{animation-delay:.75s}
@keyframes fu{to{opacity:1;transform:none}}
.cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.hero-facts{display:flex;gap:30px;margin-top:40px;flex-wrap:wrap}
.hero-facts div{font-size:12.5px;color:var(--muted);font-weight:600}
.hero-facts b{display:block;font-family:var(--fd);font-size:24px;color:var(--ink);font-weight:600;letter-spacing:.3px}
/* foto em hexágono */
.hero-art{position:relative;max-width:470px;margin-left:auto;width:100%;opacity:0;animation:fu 1.1s var(--ease) .3s forwards}
@media(max-width:960px){.hero-art{margin:10px auto 0;max-width:380px}}
.hx-stage{position:relative;aspect-ratio:1/1.1}
.hx-ring{position:absolute;inset:-6%;color:var(--brand);animation:spin 50s linear infinite}
.hx-ring svg{width:100%;height:100%}
.hx-back{position:absolute;inset:4%;clip-path:var(--hex);background:linear-gradient(140deg,var(--brand),var(--navy));transform:translate(18px,16px)}
.hx{position:absolute;inset:4%;clip-path:var(--hex);background:#111;overflow:hidden}
.hx img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;transition:transform 1.2s var(--ease)}
.hx-stage:hover .hx img{transform:scale(1.05)}
.chip-f{position:absolute;z-index:3;background:rgba(255,255,255,.88);backdrop-filter:blur(10px);border:1px solid var(--line);border-radius:16px;padding:10px 14px;box-shadow:0 18px 36px -18px rgba(15,30,74,.45);font-weight:800;font-size:13px;animation:floaty 6s ease-in-out infinite}
.chip-f small{display:block;font-weight:600;color:var(--muted);font-size:11px}
.chip-f .v{font-family:var(--fd);font-size:24px;line-height:1.1;color:var(--brand-d)}
.chip-f.c1{left:-18px;bottom:16%}.chip-f.c2{right:-10px;top:10%;animation-delay:-3s}
.chip-f .dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--good);margin-right:6px;box-shadow:0 0 0 0 rgba(22,163,74,.5);animation:pulse 2s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 10px rgba(22,163,74,0)}100%{box-shadow:0 0 0 0 rgba(22,163,74,0)}}
/* faixa */
.marq{background:var(--brand);color:#fff;transform:rotate(-1.4deg);margin:0 -2vw;padding:16px 0;overflow:hidden;white-space:nowrap;position:relative;z-index:2;box-shadow:0 20px 40px -24px rgba(31,91,255,.8)}
.marq div{display:inline-block;animation:mq 30s linear infinite;font-family:var(--fd);text-transform:uppercase;font-size:26px;letter-spacing:1.5px}
.marq span{margin:0 24px}.marq i{font-style:normal;opacity:.6}
@keyframes mq{to{transform:translateX(-50%)}}
section{padding:110px 0;position:relative}
.sh{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:50px}
.sh h2,.h2{font-family:var(--fd);text-transform:uppercase;font-weight:700;font-size:clamp(36px,5.4vw,74px);line-height:.95;letter-spacing:-.3px}
.sh h2 em,.h2 em{font-style:normal;color:var(--brand)}
.sh p{max-width:340px;color:var(--muted);font-weight:500}
/* serviços */
.svc{border-top:2px solid var(--ink)}
.svc-row{position:relative;display:grid;grid-template-columns:70px 1fr 1.1fr 40px;gap:20px;align-items:center;padding:26px 14px;border-bottom:1px solid var(--line);overflow:hidden;isolation:isolate}
.svc-row::before{content:"";position:absolute;inset:0;background:var(--brand);transform:scaleY(0);transform-origin:bottom;transition:transform .45s var(--ease);z-index:-1}
.svc-row:hover::before{transform:scaleY(1)}
.svc-row:hover{color:#fff}
.svc-row .n{font-family:var(--fd);font-size:20px;color:var(--brand);transition:color .3s}
.svc-row:hover .n,.svc-row:hover p{color:#fff}
.svc-row h3{font-family:var(--fd);text-transform:uppercase;font-size:clamp(24px,3.2vw,42px);font-weight:600;letter-spacing:.3px;line-height:1;transition:transform .45s var(--ease)}
.svc-row:hover h3{transform:translateX(10px)}
.svc-row p{color:var(--muted);font-weight:500;font-size:15px;transition:color .3s}
.svc-row .ar{transition:transform .35s var(--ease)}.svc-row:hover .ar{transform:rotate(-45deg)}
@media(max-width:760px){.svc-row{grid-template-columns:40px 1fr 26px}.svc-row p{display:none}}
/* sobre */
.about .wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}
@media(max-width:900px){.about .wrap{grid-template-columns:1fr;gap:40px}}
.big-logo{position:relative;max-width:420px;margin:auto;aspect-ratio:1/1.1;color:var(--brand)}
.big-logo svg{width:100%;height:100%;overflow:visible}
.big-logo .draw{stroke-dasharray:800;stroke-dashoffset:800;transition:stroke-dashoffset 2.2s var(--ease)}
.big-logo.in .draw{stroke-dashoffset:0}
.big-logo .glow{position:absolute;inset:15%;background:radial-gradient(circle,rgba(31,91,255,.25),transparent 70%);filter:blur(20px);z-index:-1;animation:breath 5s ease-in-out infinite}
@keyframes breath{50%{transform:scale(1.15);opacity:.6}}
.q{font-family:var(--fd);text-transform:uppercase;font-size:clamp(32px,4.4vw,58px);line-height:1;font-weight:700;margin:14px 0 22px}
.q em{font-style:normal;color:var(--brand)}
.tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.tg{background:#fff;border:1.5px solid var(--line);border-radius:999px;padding:10px 18px;font-weight:700;font-size:14px;display:flex;gap:8px;align-items:center;transition:.25s var(--ease)}
.tg:hover{border-color:var(--brand);transform:translateY(-3px);box-shadow:0 12px 24px -14px rgba(31,91,255,.6)}
.tg .ic{color:var(--brand)}
.tg.hl{background:var(--brand);color:#fff;border-color:var(--brand)}.tg.hl .ic{color:#fff}
/* método */
.path{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;position:relative}
.path::before{content:"";position:absolute;left:3%;right:3%;top:22px;height:2px;background:var(--line)}
.path::after{content:"";position:absolute;left:3%;top:22px;height:2px;width:0;background:var(--brand);transition:width 2s var(--ease)}
.path.in::after{width:94%}
@media(max-width:900px){.path{grid-template-columns:1fr 1fr}.path::before,.path::after{display:none}}
@media(max-width:560px){.path{grid-template-columns:1fr}}
.st{position:relative;padding:70px 22px 24px;border-radius:24px;background:rgba(255,255,255,.75);backdrop-filter:blur(8px);border:1px solid var(--line);transition:transform .35s var(--ease),box-shadow .35s}
.st:hover{transform:translateY(-6px);box-shadow:0 24px 40px -26px rgba(15,30,74,.5)}
.st .num{position:absolute;top:0;left:22px;width:46px;height:50px;clip-path:var(--hex);background:var(--brand);color:#fff;display:grid;place-items:center;font-family:var(--fd);font-size:20px}
.st h3{font-family:var(--fd);text-transform:uppercase;font-size:26px;margin-bottom:8px;font-weight:600}
.st p{font-size:14.5px;color:var(--muted);font-weight:500}
/* agendar */
.book-card{position:relative;overflow:hidden;border-radius:36px;background:linear-gradient(135deg,var(--brand) 0%,#2F6BFF 45%,var(--navy) 120%);color:#fff;padding:60px;display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;box-shadow:0 40px 80px -40px rgba(31,91,255,.8)}
@media(max-width:900px){.book-card{grid-template-columns:1fr;padding:34px 22px;border-radius:28px}}
.book-card .hxbg{position:absolute;right:-80px;bottom:-90px;width:380px;opacity:.14;animation:spin 60s linear infinite}
.book-card h2{font-family:var(--fd);text-transform:uppercase;font-size:clamp(38px,5.4vw,74px);line-height:.95;font-weight:700}
.contact{display:grid;gap:14px;margin-top:30px}
.contact div{display:flex;gap:12px;align-items:center;font-weight:600;color:#E3EAFF}
.form{position:relative;background:#fff;color:var(--ink);border-radius:26px;padding:30px;display:grid;gap:14px;box-shadow:0 30px 60px -30px rgba(0,0,0,.45)}
.form h3{font-family:var(--fd);font-size:28px;text-transform:uppercase;font-weight:600}
.ok{text-align:center;padding:30px 10px}
.ok .tick{width:70px;height:70px;border-radius:50%;background:#DCFCE7;color:var(--good);display:grid;place-items:center;margin:0 auto 14px;animation:pop .6s var(--ease)}
@keyframes pop{from{transform:scale(.4);opacity:0}}
footer{padding:40px 0;border-top:1px solid var(--line);color:var(--muted);font-size:13px;margin-top:40px}
footer .wrap{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}

.big-logo svg{opacity:0;transform:scale(.8) rotate(-8deg);transition:opacity 1s var(--ease),transform 1.2s var(--ease);filter:drop-shadow(0 30px 40px rgba(15,30,74,.28))}
.big-logo.in svg{opacity:1;transform:none}

/* ===== Seu progresso: linha do tempo horizontal fixa (rolagem) ===== */
.journey-sec{padding:0;position:relative}
#journey{height:200vw;position:relative}
.tl-sticky{height:100vh;width:100%;position:sticky;top:0;padding-top:10%;overflow:hidden}
.tl-slider{display:flex;align-items:center;gap:5vw;width:240vw;height:30vw;padding:0 5vw;margin-right:2vw;will-change:transform}
.tl-img{flex:none;height:100%;width:30vw;clip-path:var(--hex);background:linear-gradient(140deg,var(--brand),var(--navy))}
.tl-img img{width:100%;height:100%;object-fit:cover;object-position:50% 18%;padding:0}
.tl-track{position:relative;height:100%;width:100%}
.tl-axis{position:absolute;left:0;top:49%;width:100%;display:flex;align-items:center}
.tl-dot{flex:none;width:.8vw;height:.8vw;border-radius:50%;background:var(--brand)}
.journey-line{display:block;height:2px;width:0;border-radius:2px;background:var(--brand)}
.tl-half{display:flex;height:50%;width:100%;align-items:center;justify-content:flex-start;gap:.5vw}
.tl-head{flex:none;height:100%;width:20%;padding-top:2vw}
.tl-head h2{width:70%;font-family:var(--fd);text-transform:uppercase;font-weight:700;font-size:2.6vw;line-height:.98}
.tl-head h2 em{font-style:normal;color:var(--brand)}
.tl-head.sub{width:34%}
.tl-head.sub p{font-size:1.65vw;line-height:1.1;color:var(--muted);font-weight:600}
.tl-items{display:flex;width:100%;height:100%}
.tl-items.top{column-gap:15vw}
.tl-items.bottom{column-gap:20vw;margin-left:7vw}
.tl-item{position:relative;flex:none;height:100%;padding:0 3vw}
.tl-items.top .tl-item{width:30vw}
.tl-items.bottom .tl-item{width:25vw}
.tl-stem{position:absolute;left:0;width:100%;height:100%}
.tl-item.top .tl-stem{top:0;bottom:0}
.tl-item.bottom .tl-stem{bottom:-1%}
.tl-stem .jd{display:block;width:1vw;height:1vw;border-radius:50%;background:var(--brand);transform:translateX(-50%)}
.tl-stem .jl{display:block;height:94%;width:2px;border-radius:2px;background:var(--brand)}
.tl-body{margin-top:-1vw;display:grid;gap:1vw}
.tl-body.bottom{margin-top:0;height:100%;align-content:end}
.tl-t{font-family:var(--fd);text-transform:uppercase;font-weight:600;font-size:2.2vw;line-height:1;letter-spacing:.3px}
.tl-d{width:90%;font-size:1.35vw;line-height:1.2;color:var(--muted);font-weight:500}
.tl-w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.12em;margin-bottom:-.12em}
.tl-w>span{display:inline-block;will-change:transform}
@media(max-width:599px){
  #journey{height:400vh}
  .tl-sticky{top:5%;padding-top:14vw}
  .tl-slider{width:800vw;height:80vh;padding:0 7vw}
  .tl-img{width:85vw;height:65vw}
  .tl-dot{width:2vw;height:2vw}
  .tl-head{width:30%;padding-top:5vw;height:auto}
  .tl-head h2{width:100%;font-size:8.5vw}
  .tl-head.sub{width:30%}
  .tl-head.sub p{font-size:4.2vw}
  .tl-items.top{column-gap:40vw}
  .tl-items.bottom{column-gap:40vw;margin-left:7vw}
  .tl-items.top .tl-item,.tl-items.bottom .tl-item{width:70vw;padding:0 7vw}
  .tl-stem .jd{width:2.5vw;height:2.5vw}
  .tl-body{margin-top:-2vw;gap:2vw}
  .tl-t{font-size:6.4vw}
  .tl-d{font-size:4.6vw}
}
@media (prefers-reduced-motion:reduce){.tl-w>span{transform:none!important}}

/* ===== botões liquid metal ===== */
.lm{position:relative;display:inline-flex;border:0;padding:2px;border-radius:999px;cursor:pointer;font:inherit;color:inherit;overflow:hidden;isolation:isolate;
  background:linear-gradient(135deg,#f6f6f8 0%,#a2a2a9 38%,#ececf0 62%,#8a8a91 100%);
  box-shadow:0 0 0 1px rgba(0,0,0,.3),0 36px 14px 0 rgba(0,0,0,.02),0 20px 12px 0 rgba(0,0,0,.08),0 9px 9px 0 rgba(0,0,0,.12),0 2px 5px 0 rgba(0,0,0,.15);
  transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .2s}
.lm:hover{transform:translateY(-2px);box-shadow:0 0 0 1px rgba(0,0,0,.4),0 12px 6px 0 rgba(0,0,0,.05),0 8px 5px 0 rgba(0,0,0,.1),0 4px 4px 0 rgba(0,0,0,.15),0 1px 2px 0 rgba(0,0,0,.2)}
.lm:active{transform:translateY(1px) scale(.98);box-shadow:0 0 0 1px rgba(0,0,0,.5),0 1px 2px 0 rgba(0,0,0,.3)}
.lm:focus-visible{outline:3px solid var(--brand);outline-offset:3px}
.lm-shader{position:absolute;inset:0;border-radius:999px;overflow:hidden;z-index:0}
.lm-shader canvas{width:100%!important;height:100%!important;display:block!important;position:absolute!important;inset:0!important;border-radius:999px!important}
.lm-face{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:linear-gradient(180deg,#242424 0%,#000 100%);
  color:#ECECF0;font-weight:600;font-size:14px;line-height:1.2;padding:12px 24px;white-space:nowrap;text-shadow:0 1px 2px rgba(0,0,0,.6);transition:box-shadow .15s}
.lm:active .lm-face{box-shadow:inset 0 2px 4px rgba(0,0,0,.45),inset 0 1px 2px rgba(0,0,0,.35)}
.lm-label{display:inline-flex;align-items:center;gap:8px}
.lm-label .ic{color:#cfd3ff}
.lm.sm .lm-face{padding:9px 18px;font-size:13px}
.lm.lg .lm-face{padding:16px 30px;font-size:15px}
.lm.block{width:100%}.lm.block .lm-face{width:100%}
.lm-ripple{position:absolute;z-index:2;width:20px;height:20px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(255,255,255,.45) 0%,rgba(255,255,255,0) 70%);animation:lm-rip .6s ease-out forwards}
@keyframes lm-rip{from{transform:translate(-50%,-50%) scale(0);opacity:.7}to{transform:translate(-50%,-50%) scale(5);opacity:0}}
@media (prefers-reduced-motion:reduce){.lm,.lm:hover,.lm:active{transition:none}.lm-ripple{display:none}}

/* cores: azul (principal) e branco (secundário), com o anel metálico */
.lm-blue{background:linear-gradient(135deg,#dbe6ff 0%,#6f95ff 40%,#e9f0ff 62%,#4a74f0 100%)}
.lm-blue .lm-face{background:linear-gradient(180deg,#3B78FF 0%,#1546E0 100%);color:#fff;text-shadow:0 1px 2px rgba(10,30,120,.45)}
.lm-blue .lm-label .ic{color:#fff}
.lm-white{background:linear-gradient(135deg,#f6f6f8 0%,#b9bcc8 38%,#f1f2f6 62%,#a4a8b6 100%)}
.lm-white .lm-face{background:linear-gradient(180deg,#ffffff 0%,#EEF2FB 100%);color:#0F3FD1;text-shadow:none}
.lm-white .lm-label .ic{color:#1546E0}
.lm-blue:active .lm-face{box-shadow:inset 0 2px 5px rgba(5,25,120,.5)}
.lm-white:active .lm-face{box-shadow:inset 0 2px 4px rgba(20,40,120,.25)}
.lm-ripple{background:radial-gradient(circle,rgba(120,150,255,.45) 0%,rgba(255,255,255,0) 70%)}
.lm-blue .lm-ripple{background:radial-gradient(circle,rgba(255,255,255,.5) 0%,rgba(255,255,255,0) 70%)}

/* anel metálico mais grosso e contrastado */
.lm{padding:3px}
.lm.lg{padding:4px}
.lm.sm{padding:2.5px}
.lm-blue{background:linear-gradient(135deg,#a9c0ff 0%,#2147d6 38%,#d4e0ff 62%,#1a3bbd 100%)}
.lm-white{background:linear-gradient(135deg,#ffffff 0%,#7d8194 38%,#f4f5f9 62%,#6a6e82 100%)}

/* anel fino de novo (2px), prata cromada */
.lm,.lm.lg,.lm.sm{padding:2px}
.lm-blue,.lm-white{background:linear-gradient(135deg,#f6f6f8 0%,#a2a2a9 38%,#ececf0 62%,#8a8a91 100%)}

/* ===== seletor de dias e horários livres ===== */
.bk-lbl{font-size:13px;font-weight:700;color:var(--muted)}
.bk-lbl small{font-weight:600;color:var(--brand-d);text-transform:capitalize}
.bk-days{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 8px;scroll-snap-type:x proximity}
.bk-day{flex:none;scroll-snap-align:start;width:68px;border:0;border-radius:16px;background:#EEF2FB;padding:9px 4px;text-align:center;cursor:pointer;font:inherit;color:var(--ink);transition:background .15s,color .15s,transform .15s,box-shadow .15s}
.bk-day small{display:block;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.6px}
.bk-day b{display:block;font-size:22px;font-weight:800;line-height:1.15}
.bk-day em{display:block;font-style:normal;font-size:10.5px;font-weight:700;color:#16A34A}
.bk-day:hover:not(:disabled){background:#DCE6FF;transform:translateY(-2px)}
.bk-day.on{background:var(--brand);color:#fff;box-shadow:0 12px 22px -10px rgba(21,86,255,.8)}
.bk-day.on small,.bk-day.on em{color:rgba(255,255,255,.88)}
.bk-day:disabled{opacity:.45;cursor:not-allowed}
.bk-day:disabled em{color:var(--bad)}
.bk-times{display:flex;flex-wrap:wrap;gap:8px;min-height:44px;align-items:center}
.bk-time{border:0;border-radius:999px;background:#EEF2FB;padding:9px 15px;font:inherit;font-size:14px;font-weight:700;color:var(--ink);cursor:pointer;font-variant-numeric:tabular-nums;transition:background .15s,color .15s,transform .15s}
.bk-time:hover{background:#DCE6FF;transform:translateY(-1px)}
.bk-time.on{background:var(--brand);color:#fff;box-shadow:0 10px 18px -10px rgba(21,86,255,.8)}
.bk-hint{font-size:13.5px;color:var(--muted);font-weight:500}
.bk-day:focus-visible,.bk-time:focus-visible{outline:3px solid var(--brand);outline-offset:2px}

.book-card>*,.book-card .form,.book-card .field{min-width:0}
.bk-days{max-width:100%;scrollbar-width:thin}

/* ===== botão liquid glass ===== */
.lglass{position:relative;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:16px 30px;font-weight:700;font-size:15px;color:#0F3FD1;overflow:hidden;isolation:isolate;
  background:linear-gradient(135deg,rgba(255,255,255,.55) 0%,rgba(255,255,255,.18) 45%,rgba(214,226,255,.35) 100%);
  backdrop-filter:blur(14px) saturate(1.8) brightness(1.05);-webkit-backdrop-filter:blur(14px) saturate(1.8) brightness(1.05);
  border:1px solid rgba(255,255,255,.75);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95),inset 0 -1px 0 rgba(21,86,255,.18),inset 0 0 18px rgba(255,255,255,.35),0 10px 30px -12px rgba(21,86,255,.45),0 2px 6px rgba(15,40,120,.08);
  transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .25s,background .25s}
.lglass::before{content:"";position:absolute;inset:1px;border-radius:inherit;z-index:-1;pointer-events:none;
  background:radial-gradient(120% 70% at 30% 0%,rgba(255,255,255,.85) 0%,rgba(255,255,255,0) 55%),radial-gradient(80% 60% at 80% 120%,rgba(91,140,255,.35) 0%,rgba(91,140,255,0) 70%)}
.lg-sheen{position:absolute;top:-50%;left:-60%;width:40%;height:200%;z-index:0;pointer-events:none;transform:rotate(25deg) translateX(0);
  background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.75),rgba(255,255,255,0));transition:transform .9s cubic-bezier(.2,.7,.2,1);opacity:.8}
.lg-label{position:relative;z-index:1;text-shadow:0 1px 0 rgba(255,255,255,.7)}
.lglass:hover{transform:translateY(-2px) scale(1.02);box-shadow:inset 0 1px 0 #fff,inset 0 -1px 0 rgba(21,86,255,.25),inset 0 0 22px rgba(255,255,255,.45),0 16px 36px -12px rgba(21,86,255,.55),0 2px 6px rgba(15,40,120,.1)}
.lglass:hover .lg-sheen{transform:rotate(25deg) translateX(520%)}
.lglass:active{transform:translateY(1px) scale(.98)}
.lglass:focus-visible{outline:3px solid var(--brand);outline-offset:3px}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.lglass{background:rgba(255,255,255,.85)}}
@media (prefers-reduced-motion:reduce){.lglass,.lg-sheen{transition:none}}

.lglass.sm{padding:9px 18px;font-size:13px}

/* header mais transparente (vidro) */
.nav .bar{background:rgba(255,255,255,.28);backdrop-filter:blur(18px) saturate(1.8);-webkit-backdrop-filter:blur(18px) saturate(1.8);
  border:1px solid rgba(255,255,255,.55);box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 10px 30px -18px rgba(15,30,74,.3)}

/* ===== botões azuis: anel de cromo fino com reflexos girando (como a referência) ===== */
@property --lm-a{syntax:'<angle>';inherits:false;initial-value:0deg}
.lm-blue{padding:2px;
  background:conic-gradient(from var(--lm-a),#ffffff 0%,#b8bfd0 8%,#4a5064 17%,#d7dcea 26%,#ffffff 31%,#9aa2b6 42%,#2f3445 52%,#c9cfe0 62%,#fff4fb 70%,#c7d3ff 78%,#6f7790 88%,#ffffff 100%);
  animation:lm-spin 7s linear infinite;
  box-shadow:0 0 0 1px rgba(10,20,60,.25),0 20px 12px -8px rgba(0,0,0,.06),0 9px 9px rgba(21,86,255,.18),0 2px 5px rgba(0,0,0,.15)}
.lm-blue:hover{animation-duration:2.4s}
.lm-blue:active{animation-duration:1.2s}
.lm-blue .lm-shader{display:none}
.lm-blue .lm-face{box-shadow:0 0 0 1px rgba(5,15,60,.55),inset 0 1px 0 rgba(255,255,255,.28),inset 0 -2px 6px rgba(5,20,110,.35)}
@keyframes lm-spin{to{--lm-a:360deg}}
@media (prefers-reduced-motion:reduce){.lm-blue{animation:none}}

/* agendamento: título menor, cartão do formulário maior */
.book-card{grid-template-columns:minmax(0,.7fr) minmax(0,1.5fr);gap:44px;padding:52px 48px}
.book-card h2{font-size:clamp(34px,3.8vw,56px)}
.book-card .contact{margin-top:24px}
.book-card .form{padding:32px 34px}
@media(max-width:900px){.book-card{grid-template-columns:1fr;padding:30px 18px}}

/* ===== SpecularButton (azul): luz especular na borda que segue o cursor ===== */
.spec{position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:.5em;margin:0;border:0;border-radius:999px;
  font:inherit;font-weight:700;line-height:1;letter-spacing:.01em;color:#fff;cursor:pointer;outline:none;-webkit-tap-highlight-color:transparent;
  background:linear-gradient(180deg,#3B78FF 0%,#1546E0 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 12px 26px -12px rgba(21,70,224,.75);
  transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .25s}
.spec:hover{transform:translateY(-1px);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 16px 30px -12px rgba(21,70,224,.85)}
.spec:active{transform:scale(.97)}
.spec:focus-visible{outline:2px solid rgba(255,255,255,.7);outline-offset:3px;box-shadow:0 0 0 5px rgba(21,86,255,.45)}
.spec.sm{padding:10px 20px;font-size:13.5px}
.spec.lg{padding:17px 32px;font-size:15.5px}
.spec.block{width:100%}
.spec__light{position:absolute;inset:-24px;z-index:1;display:block;width:calc(100% + 48px);height:calc(100% + 48px);pointer-events:none}
.spec__label{position:relative;z-index:2;display:inline-flex;align-items:center;gap:8px;text-shadow:0 1px 2px rgba(5,20,110,.35)}
.spec__label .ic{color:#fff}

/* ===== título do hero com WarpText (vidro que distorce) ===== */
h1.mega .warp-text{position:absolute;z-index:2;overflow:hidden;cursor:crosshair}
h1.mega .warp-text canvas{position:absolute;inset:0;width:100%!important;height:100%!important;display:block}
h1.mega.warp-on .ln>span{visibility:hidden}

/* ===== título do hero com StrokeText ===== */
h1.mega[data-stroke] .ln{overflow:visible}
.stroke-text__svg{display:block;overflow:visible;max-width:none}
.stroke-text__stroke,.stroke-text__fill{user-select:none}

/* logo da seção "Quem sou": sem sombra/brilho atrás */
.big-logo svg{filter:none!important}
.big-logo .glow{display:none}

/* ===== duas faixas cruzadas (entre a primeira tela e o agendamento) ===== */
.xmarq{position:relative;height:210px;margin:-30px 0 10px;overflow:hidden;z-index:2;pointer-events:none}
.xband{position:absolute;left:-6%;right:-6%;top:50%;padding:18px 0;white-space:nowrap;overflow:hidden}
.xband.front{transform:translateY(-50%) rotate(-4deg);z-index:2;
  background:linear-gradient(90deg,#1546E0 0%,#2F6BFF 45%,#5B8CFF 70%,#1546E0 100%);color:#fff;
  box-shadow:0 22px 40px -18px rgba(21,70,224,.75),inset 0 1px 0 rgba(255,255,255,.35)}
.xband.back{transform:translateY(-50%) rotate(4deg);z-index:1;
  background:rgba(255,255,255,.82);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#0F3FD1;
  border-block:1px solid rgba(21,86,255,.18);box-shadow:0 16px 30px -18px rgba(15,40,120,.35)}
.xtrack{display:inline-flex;align-items:center;font-family:var(--fd);text-transform:uppercase;font-weight:600;font-size:28px;letter-spacing:1.5px;animation:xmq 42s linear infinite;will-change:transform}
.xtrack.rev{animation-name:xmq-rev;animation-duration:50s}
.xtrack span{margin:0 26px}
.xtrack i{font-style:normal;font-size:16px;opacity:.75}
.xband.front .xtrack i{color:#CFE0FF}
.xband.back .xtrack span{color:transparent;-webkit-text-stroke:1.2px #1546E0}
.xband.back .xtrack span:nth-of-type(odd){color:#1546E0;-webkit-text-stroke:0}
@keyframes xmq{to{transform:translateX(-50%)}}
@keyframes xmq-rev{from{transform:translateX(-50%)}to{transform:translateX(0)}}
@media(max-width:700px){.xmarq{height:150px}.xtrack{font-size:20px}.xband{padding:12px 0}}
@media (prefers-reduced-motion:reduce){.xtrack{animation:none}}

/* ===== credenciais em ícones de vidro (estilo GlassIcons) ===== */
.glass-icons{--gi-size:84px;display:flex;flex-wrap:wrap;gap:46px 40px;margin-top:34px;padding-top:6px}
.glass-icon{position:relative;flex:none;width:var(--gi-size);height:var(--gi-size);margin-bottom:46px;cursor:default;outline:none;-webkit-tap-highlight-color:transparent;--px:0;--py:0}
.gi-plate{position:absolute;inset:0;border-radius:26px;transform-origin:100% 100%;
  transform:translate(calc(var(--px) * -6px),calc(var(--py) * -6px)) rotate(0deg);opacity:0;
  transition:transform .9s cubic-bezier(.34,1.56,.64,1),opacity .4s ease;transition-delay:calc(var(--i) * 70ms + 120ms);will-change:transform}
.gi-glass{position:absolute;inset:0;border-radius:26px;overflow:hidden;
  background:linear-gradient(160deg,rgba(255,255,255,.42),rgba(255,255,255,.12));
  backdrop-filter:blur(7px) saturate(1.5);-webkit-backdrop-filter:blur(7px) saturate(1.5);
  border:1px solid rgba(255,255,255,.55);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85),inset 1px 0 0 rgba(255,255,255,.4),inset 0 -8px 16px -10px rgba(10,20,80,.25),0 14px 26px -14px rgba(15,30,90,.45);
  transform:scale(.9);opacity:0;transition:transform .7s cubic-bezier(.34,1.56,.64,1),opacity .45s ease;transition-delay:calc(var(--i) * 70ms)}
.gi-glass::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:radial-gradient(120% 80% at 20% 0%,rgba(255,255,255,.65),rgba(255,255,255,0) 50%)}
.gi-face{position:absolute;inset:0;display:grid;place-items:center;color:#fff;z-index:2;opacity:0;transform:translateY(8px);
  transition:transform .6s cubic-bezier(.22,1,.36,1),opacity .5s ease;transition-delay:calc(var(--i) * 70ms + 250ms)}
.gi-face .ic{filter:drop-shadow(0 1px 3px rgba(0,0,30,.35))}
.gi-label{position:absolute;top:calc(100% + 12px);left:50%;transform:translateX(-50%);width:max-content;max-width:150px;text-align:center;
  font-size:13px;font-weight:700;line-height:1.25;color:#1d2433;opacity:0;transition:opacity .5s ease;transition-delay:calc(var(--i) * 70ms + 350ms)}
.glass-icons.gi-in .gi-plate{opacity:1;transform:translate(calc(var(--px) * -6px),calc(var(--py) * -6px)) rotate(16deg)}
.glass-icons.gi-in .gi-glass{opacity:1;transform:scale(1)}
.glass-icons.gi-in .gi-face,.glass-icons.gi-in .gi-label{opacity:1;transform:none}
.glass-icons.gi-in .gi-label{transform:translateX(-50%)}
.glass-icons.gi-ready .gi-plate,.glass-icons.gi-ready .gi-glass,.glass-icons.gi-ready .gi-face{transition-delay:0s}
.glass-icons.gi-ready .gi-plate{transition:transform .5s cubic-bezier(.34,1.56,.64,1)}
.glass-icon:hover .gi-plate,.glass-icon:focus-visible .gi-plate{transform:translate(calc(var(--px) * -8px),calc(var(--py) * -8px)) rotate(24deg)}
.glass-icon:hover .gi-glass,.glass-icon:focus-visible .gi-glass{transform:translateY(-3px) scale(1)}
.glass-icon:active .gi-glass{transform:scale(.93)}
.glass-icon:active .gi-face{transform:scale(.93)}
.glass-icon:focus-visible .gi-glass{outline:2px solid var(--brand);outline-offset:4px}
@media(max-width:560px){.glass-icons{gap:40px 28px;justify-content:center}.glass-icon{--gi-size:74px}}
@media (prefers-reduced-motion:reduce){.gi-plate,.gi-glass,.gi-face,.gi-label{transition:none!important}}

.glass-icons{gap:30px 62px;padding-left:22px}
.gi-label{max-width:128px;font-size:12.5px}
@media(max-width:560px){.glass-icons{gap:34px 46px;padding-left:0}}

/* todos os ícones de vidro na mesma linha */
.glass-icons{flex-wrap:nowrap;gap:0 34px;padding-left:16px;--gi-size:72px}
.gi-plate,.gi-glass{border-radius:22px}
.gi-label{max-width:104px;font-size:12px}
@media(max-width:700px){.glass-icons{flex-wrap:wrap;gap:30px 40px;justify-content:center;padding-left:0}}

/* ===== rodapé com palavra gigante vazada ===== */
.ft2{padding:64px 0 22px;margin-top:40px;border-top:1px solid var(--line);color:var(--muted);font-size:14.5px;background:linear-gradient(180deg,rgba(255,255,255,.6),#fff)}
.ft2-top{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:40px}
.ft2-brand p{margin:16px 0 18px;max-width:300px;color:#3C4658;line-height:1.6}
.ft2-social{display:flex;gap:10px}
.ft2-social a{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line);border-radius:12px;color:var(--ink);background:#fff;transition:.2s}
.ft2-social a:hover{border-color:var(--brand);color:var(--brand);transform:translateY(-2px)}
.ft2-col{display:flex;flex-direction:column;gap:10px;padding-top:18px;border-top:1px solid var(--line)}
.ft2-col h4{color:var(--ink);font-size:17px;font-weight:800;margin-bottom:4px}
.ft2-col a{color:#3C4658;transition:color .15s;display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}
.ft2-col a:hover{color:var(--brand-d)}
.ft2-badge{font-style:normal;font-size:10.5px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;background:var(--brand-l);color:var(--brand-d);padding:3px 8px;border-radius:999px}
.ft2-word{margin-top:70px;line-height:0;overflow:hidden}
.ft2-word svg{display:block;width:100%;height:auto;overflow:hidden}
.ft2-word text{font-family:var(--fd);font-weight:700;font-size:205px;fill:none;stroke:url(#ftfade);stroke-width:1.4;
  stroke-dasharray:1400;stroke-dashoffset:1400;transition:stroke-dashoffset 2.6s cubic-bezier(.2,.7,.2,1)}
.ft2-word.in text{stroke-dashoffset:0}
.ft2-bottom{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:16px;border-top:1px solid var(--line);font-size:13px}
@media(max-width:860px){.ft2-top{grid-template-columns:1fr 1fr}.ft2-brand{grid-column:1/-1}}
@media(max-width:520px){.ft2-top{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.ft2-word text{stroke-dasharray:none;transition:none}}

.ft2 .wrap{display:block}

/* ===== seção de certificações ===== */
.certs{padding-top:40px}
.cert-grid{columns:4 220px;column-gap:18px}
.cert-item{display:block;position:relative;width:100%;margin:0 0 18px;padding:0;border:0;border-radius:22px;overflow:hidden;cursor:zoom-in;break-inside:avoid;
  background:#e9eefb;box-shadow:0 18px 34px -22px rgba(15,30,90,.55)}
.cert-item img{display:block;width:100%;height:auto;transition:transform .6s cubic-bezier(.2,.7,.2,1),filter .4s}
.cert-item::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(21,70,224,0) 55%,rgba(10,27,92,.55));opacity:0;transition:opacity .35s}
.cert-zoom{position:absolute;right:12px;bottom:12px;z-index:2;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;color:#fff;
  background:rgba(255,255,255,.22);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.5);opacity:0;transform:translateY(6px);transition:.35s}
.cert-item:hover img,.cert-item:focus-visible img{transform:scale(1.05)}
.cert-item:hover::after,.cert-item:focus-visible::after{opacity:1}
.cert-item:hover .cert-zoom,.cert-item:focus-visible .cert-zoom{opacity:1;transform:none}
.cert-item:focus-visible{outline:3px solid var(--brand);outline-offset:3px}
/* visualizador */
.lightbox{border:0;padding:0;background:transparent;max-width:100vw;max-height:100vh;width:100vw;height:100vh;overflow:hidden}
.lightbox[open]{display:grid;place-items:center}
.lightbox::backdrop{background:rgba(6,12,40,.82);backdrop-filter:blur(6px)}
.lightbox img{max-width:min(92vw,1000px);max-height:84vh;border-radius:18px;box-shadow:0 30px 80px -20px rgba(0,0,0,.7);animation:lbIn .35s cubic-bezier(.2,.7,.2,1)}
@keyframes lbIn{from{opacity:0;transform:scale(.96)}}
.lb-btn{position:fixed;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.14);color:#fff;display:grid;place-items:center;cursor:pointer;backdrop-filter:blur(8px)}
.lb-btn:hover{background:rgba(255,255,255,.28)}
.lb-close{top:20px;right:20px}.lb-prev{left:20px;top:50%;transform:translateY(-50%)}.lb-next{right:20px;top:50%;transform:translateY(-50%)}
.lb-count{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);color:#dfe6ff;font-size:13px;font-weight:700;letter-spacing:1px}

/* ===== galeria no final da linha do tempo ===== */
.tl-slider{width:300vw}
.tl-gal{flex:none;display:flex;gap:1.6vw;height:100%;align-items:center}
.tl-ph{margin:0;width:13.5vw;height:88%;border-radius:1.4vw;overflow:hidden;box-shadow:0 2vw 3vw -1.6vw rgba(15,30,90,.55)}
.tl-ph:nth-child(odd){transform:translateY(-1.6vw) rotate(-2deg)}
.tl-ph:nth-child(even){transform:translateY(1.6vw) rotate(2deg)}
.tl-ph img{width:100%;height:100%;object-fit:cover;object-position:50% 25%;display:block}
@media(max-width:599px){
  .tl-slider{width:970vw}
  .tl-gal{gap:5vw}
  .tl-ph{width:38vw;height:60vw;border-radius:5vw}
}

/* ===== FlexCarousel (certificações) ===== */
.flex-carousel{position:relative;width:100%;height:clamp(420px,46vw,600px);overflow:hidden;cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none;
  -webkit-tap-highlight-color:transparent;overscroll-behavior:contain;outline:none;border-radius:28px;color:var(--ink)}
.flex-carousel[data-hover='open']{cursor:zoom-in}
.flex-carousel[data-hover='close']{cursor:zoom-out}
.flex-carousel[data-dragging]{cursor:grabbing}
.flex-carousel:focus-visible{box-shadow:inset 0 0 0 2px rgba(21,86,255,.55)}
.flex-carousel.is-gl .fc-fallback{display:none}
.fc-fallback{display:flex;gap:14px;height:100%;align-items:center;overflow-x:auto;padding:0 20px;scroll-snap-type:x mandatory}
.fc-fallback img{height:70%;width:auto;border-radius:18px;scroll-snap-align:center;flex:none}
.flex-carousel__caption{position:absolute;left:0;right:0;top:calc(50% + var(--flex-carousel-half) * var(--flex-carousel-lift, 1) + 18px);display:flex;flex-direction:column;align-items:center;gap:6px;
  padding:0 16px;pointer-events:none;text-align:center;animation:flex-carousel-reveal .9s ease both}
.flex-carousel__caption[hidden]{display:none}
.flex-carousel__title{display:flex;flex-direction:column;align-items:center;max-width:100%;font-family:var(--fd);text-transform:uppercase;letter-spacing:.6px;font-size:18px;font-weight:600;line-height:1.3;
  animation:flex-carousel-title .52s cubic-bezier(.22,1,.36,1)}
.flex-carousel__subtitle{font-weight:400;opacity:.6}
.flex-carousel__count{display:inline-flex;align-items:center;gap:3px;font-size:12.5px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums;opacity:.55;transition:opacity .4s ease;color:var(--brand-d)}
.flex-carousel__count[data-hidden]{opacity:0}
.flex-carousel__digits{display:inline-flex}
.flex-carousel__digit{display:inline-block;height:1em;overflow:hidden}
.flex-carousel__reel{display:flex;flex-direction:column;transition:transform .6s cubic-bezier(.22,1,.36,1)}
.flex-carousel__reel span{height:1em}
.flex-carousel__slash{opacity:.6}
.flex-carousel__live{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.fc-hint{text-align:center;color:var(--muted);font-size:13px;font-weight:600;margin-top:10px}
@keyframes flex-carousel-title{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes flex-carousel-reveal{from{opacity:0}to{opacity:1}}
@media (prefers-reduced-motion:reduce){.flex-carousel__caption,.flex-carousel__title{animation:none}.flex-carousel__reel{transition:none}}

/* linha do tempo: trilho original + foto em cada etapa */
.tl-slider{width:240vw}
.tl-gal{display:none}
.tl-pic{margin:.9vw 0 0;width:11vw;height:6.6vw;border-radius:1vw;overflow:hidden;box-shadow:0 1.2vw 2vw -1vw rgba(15,30,90,.55)}
.tl-body.bottom .tl-pic{margin:0 0 .6vw}
.tl-pic img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;display:block;will-change:transform}
@media(max-width:599px){
  .tl-slider{width:800vw}
  .tl-pic{width:46vw;height:30vw;border-radius:4vw;margin-top:3vw}
}

/* fotos das etapas: inteiras, sem corte, cantos retos, ao lado do texto */
.tl-body:has(.tl-pic){display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:1.2vw;row-gap:1vw;align-items:start}
.tl-body:has(.tl-pic) .tl-t{grid-column:1;grid-row:1}
.tl-body:has(.tl-pic) .tl-d{grid-column:1;grid-row:2;width:100%}
.tl-pic{grid-column:2;grid-row:1/3;margin:0!important;width:auto;height:10.5vw;border-radius:0;overflow:hidden;background:#e9eefb}
.tl-pic img{width:auto;height:100%;object-fit:contain;display:block}
.tl-body.bottom:has(.tl-pic){align-items:end}
@media(max-width:599px){
  .tl-body:has(.tl-pic){grid-template-columns:1fr}
  .tl-pic{grid-column:1;grid-row:auto;height:44vw;width:auto;justify-self:start}
}

.tl-items.bottom .tl-item{width:30vw}
.tl-items.bottom{column-gap:15vw}
@media(max-width:599px){.tl-items.bottom .tl-item{width:70vw}.tl-items.bottom{column-gap:40vw}}

/* ===== Formação contínua: "saúde." com fotos flutuando em volta ===== */
.saude{position:relative;height:clamp(620px,62vw,900px);padding:0;overflow:hidden;isolation:isolate}
.sd-field{position:absolute;inset:0;z-index:0}
.sd-ph{position:absolute;left:var(--x);top:var(--y);width:var(--w);margin:0;will-change:transform;
  transform:translate3d(var(--mx,0px),var(--my,0px),0);transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.sd-ph img{display:block;width:100%;height:auto;box-shadow:0 2vw 3.4vw -1.8vw rgba(15,30,90,.5);
  opacity:0;transform:scale(.86) translateY(30px);transition:opacity .9s ease,transform 1.1s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--i) * 80ms);
  animation:sd-float calc(6s + var(--i) * .7s) ease-in-out infinite alternate}
.saude.in .sd-ph img{opacity:1;transform:none}
.sd-ph:hover img{box-shadow:0 2.6vw 4vw -1.8vw rgba(21,70,224,.6)}
@keyframes sd-float{from{translate:0 -6px}to{translate:0 8px}}
.sd-center{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none;padding:0 20px}
.sd-center>*{pointer-events:auto}
.sd-word{font-family:var(--f);font-style:italic;font-weight:800;letter-spacing:-.05em;line-height:.9;font-size:clamp(72px,12vw,190px);color:var(--ink);margin:12px 0 10px;
  text-shadow:0 2px 30px rgba(255,255,255,.9)}
.sd-word span{color:var(--brand)}
.sd-center p{max-width:420px;color:#3C4658;font-weight:500;margin-bottom:20px;background:rgba(255,255,255,.6);backdrop-filter:blur(6px);border-radius:14px;padding:4px 10px}
@media(max-width:700px){
  .saude{height:860px}
  .sd-ph{width:calc(var(--w) * 2.3)}
  .sd-ph:nth-child(n+8){display:none}
}
@media (prefers-reduced-motion:reduce){.sd-ph,.sd-ph img{transition:none;animation:none}.sd-ph img{opacity:1;transform:none}}

/* "saúde." menor e mais delicada */
.sd-word{font-weight:300;font-size:clamp(54px,7vw,112px);letter-spacing:-.035em;margin:10px 0 12px}
.sd-word span{font-weight:400}

/* fotos das etapas um pouco maiores */
.tl-pic{height:13vw}
@media(max-width:599px){.tl-pic{height:52vw}}

/* redes sociais com as cores das marcas */
.ft2-social a[aria-label="Instagram"]{color:#fff;border:0;background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285AEB 90%);box-shadow:0 8px 18px -10px rgba(214,36,159,.8)}
.ft2-social a[aria-label="WhatsApp"]{color:#fff;border:0;background:#25D366;box-shadow:0 8px 18px -10px rgba(37,211,102,.9)}
.ft2-social a[aria-label="Instagram"]:hover,.ft2-social a[aria-label="WhatsApp"]:hover{color:#fff;filter:brightness(1.08)}

/* linha do tempo centralizada na tela */
.tl-sticky{display:flex;align-items:center;padding-top:40px}
@media(max-width:599px){.tl-sticky{padding-top:60px}}

/* ===== botões flutuantes: Instagram e WhatsApp ===== */
.fab-social{position:fixed;z-index:60;display:flex;gap:10px;top:20px;right:22px}
.fab{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;color:#fff;
  box-shadow:0 12px 24px -10px rgba(15,30,90,.45),inset 0 1px 0 rgba(255,255,255,.35);transition:transform .25s cubic-bezier(.34,1.56,.64,1),filter .2s}
.fab:hover{transform:translateY(-3px) scale(1.06);filter:brightness(1.08)}
.fab:focus-visible{outline:3px solid var(--brand);outline-offset:3px}
.fab.ig{background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285AEB 90%)}
.fab.wa{background:#25D366;animation:fab-pulse 2.6s ease-out infinite}
@keyframes fab-pulse{0%{box-shadow:0 0 0 0 rgba(37,211,102,.55),0 12px 24px -10px rgba(15,30,90,.45)}70%{box-shadow:0 0 0 14px rgba(37,211,102,0),0 12px 24px -10px rgba(15,30,90,.45)}100%{box-shadow:0 0 0 0 rgba(37,211,102,0),0 12px 24px -10px rgba(15,30,90,.45)}}
/* sem espaço ao lado do header: descem para o canto inferior direito */
@media(max-width:1300px){.fab-social{top:auto;bottom:20px;right:18px;flex-direction:column}}
@media (prefers-reduced-motion:reduce){.fab.wa{animation:none}}

.fab.wa{animation:none}

/* ===== responsivo celular/tablet ===== */
html,body{overflow-x:clip;max-width:100%}
img,svg,video,canvas{max-width:100%}
.hero-art{overflow:visible}
@media(max-width:960px){.hx-ring{inset:-3%}}
@media(max-width:640px){
  .nav .bar{margin:0 10px;padding:6px 6px 6px 10px;gap:8px}
  .nav .logo span{font-size:13px}.nav .logo small{display:none}
  .nav .logo svg{width:30px;height:auto}
  .nav .lglass.sm{display:none}
  .wrap{padding-left:16px;padding-right:16px}
  .hero{padding-top:96px}
  .fab-social{right:12px;bottom:14px}.fab{width:44px;height:44px}
}
@media(max-width:380px){.nav .logo span{display:none}}
@media(min-width:641px) and (max-width:1024px){
  .nav .bar{margin:0 20px}
  .hero-art{max-width:420px}
}

/* ===================== MOBILE / TABLET — landing ===================== */
@media(max-width:1024px){
  section{padding:64px 0}
  .xmarq{margin:0}
  /* hero */
  .hero{padding-top:92px;padding-bottom:30px}
  .hero-art{max-width:320px;margin:24px auto 0}
  /* confiança: texto em cima + grade de fotos */
  .saude{height:auto;padding:64px 0;display:flex;flex-direction:column-reverse;gap:28px}
  .sd-center{position:static;padding:0 16px}
  .sd-center p{background:none;backdrop-filter:none;padding:0}
  .sd-word{font-size:clamp(52px,16vw,72px)}
  .sd-field{position:static;display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:0 16px}
  .sd-ph,.sd-ph:nth-child(n+8){position:static;display:block;width:auto;transform:none!important}
  .sd-ph img{aspect-ratio:4/5;object-fit:cover;animation:none;box-shadow:0 14px 24px -14px rgba(15,30,90,.45);border-radius:4px}
  .sd-ph:nth-child(n+9){display:none}
  /* quem sou */
  .big-logo{max-width:180px}
  .about .wrap{gap:28px}
  /* linha do tempo vertical */
  #journey{height:auto}
  .tl-sticky{position:static;height:auto;display:block;padding:64px 16px 24px;overflow:visible}
  .tl-slider,.tl-slider[style]{display:flex;flex-direction:column;width:auto!important;height:auto;padding:0;margin:0;gap:28px;transform:none!important}
  .tl-img{order:2;width:100%;max-width:340px;height:auto;margin:0 auto}
  .tl-img img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}
  .tl-track{order:1;display:flex;flex-direction:column;height:auto;position:relative;padding-left:26px}
  .tl-track::before{content:"";position:absolute;left:7px;top:110px;bottom:10px;width:2px;background:linear-gradient(var(--brand),rgba(31,91,255,.15))}
  .tl-axis{display:none}
  .tl-half,.tl-items{display:contents}
  .tl-head{order:0;margin:0 0 6px -26px}
  .tl-head h2{font-size:clamp(30px,9vw,40px);white-space:normal}
  .tl-head.sub{order:0;margin:0 0 22px -26px}
  .tl-item,.tl-items.top .tl-item,.tl-items.bottom .tl-item{width:auto!important;height:auto;padding:0 0 26px;position:relative}
  .tl-item[data-step="1"]{order:1}.tl-item[data-step="2"]{order:2}.tl-item[data-step="3"]{order:3}.tl-item[data-step="4"]{order:4}
  .tl-item[data-step="5"]{order:5}.tl-item[data-step="6"]{order:6}.tl-item[data-step="7"]{order:7}
  .tl-stem{display:none}
  .tl-item::before{content:"";position:absolute;left:-25px;top:6px;width:14px;height:14px;border-radius:50%;background:#fff;border:3px solid var(--brand);box-sizing:border-box}
  .tl-body,.tl-body.bottom{position:static;display:flex;flex-direction:column;gap:6px;padding:0;transform:none;width:auto}
  .tl-body.bottom .tl-pic{order:3}
  .tl-pic{width:100%;height:auto!important;margin-top:8px}
  .tl-pic img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
  /* rodapé */
  .ft2 .wrap{padding-left:16px;padding-right:16px}
  /* botões flutuantes */
  .fab-social{gap:8px}.fab{width:42px;height:42px}
}
@media(min-width:600px) and (max-width:1024px){.sd-field{grid-template-columns:repeat(3,1fr)}.sd-ph:nth-child(n+9){display:block}.sd-ph:nth-child(n+10){display:none}.tl-items,.tl-track{max-width:680px}.big-logo{max-width:240px}}
@media(max-width:1024px){
  .tl-head,.tl-head.sub{width:auto!important;max-width:none!important;flex:none;text-align:left}
  .tl-head h2{width:auto!important;max-width:100%!important}
  .tl-body,.tl-body.bottom,.tl-t,.tl-d{text-align:left!important;align-items:flex-start}
  .tl-t{font-size:20px}.tl-d{font-size:15px;max-width:none!important;width:auto!important}
}
@media(max-width:1024px){.tl-body>*{align-self:stretch!important;margin-left:0!important}}
@media(min-width:600px) and (max-width:1024px){.tl-track{margin:0 auto}.tl-pic{max-width:460px}.tl-img{max-width:300px}}
@media(max-width:1024px){.tl-body,.tl-body.bottom{display:flex!important;flex-direction:column!important;width:100%!important;max-width:560px}.tl-d{width:100%!important;max-width:none!important}.tl-pic{margin-left:0!important;position:static!important}}

/* ===== ajustes mobile v2 ===== */
.xtrack{will-change:auto}
@media(max-width:1024px){
  /* foto no topo do hero */
  .hero .wrap>.hero-art{order:-1;max-width:300px;margin:0 auto 6px}
  .hero{min-height:0;padding-top:96px}
  h1.mega{font-size:clamp(40px,12.5vw,84px);margin:16px 0 20px}
  /* confiança: fotos ao redor da palavra, como no PC */
  .saude{display:block;position:relative;height:clamp(640px,150vw,900px);padding:0}
  .sd-field{position:absolute;inset:0;display:block;padding:0}
  .sd-ph,.sd-ph:nth-child(n+8),.sd-ph:nth-child(n+9){position:absolute;display:block;transform:translate3d(var(--mx,0px),var(--my,0px),0)!important}
  .sd-ph img{aspect-ratio:auto;object-fit:initial;border-radius:0;animation:sd-float calc(6s + var(--i) * .7s) ease-in-out infinite alternate}
  .sd-ph:nth-child(1){left:4%;top:3%;width:27vw}
  .sd-ph:nth-child(2){left:37%;top:1%;width:25vw}
  .sd-ph:nth-child(3){left:69%;top:4%;width:27vw}
  .sd-ph:nth-child(4){left:2%;top:24%;width:22vw}
  .sd-ph:nth-child(5){left:76%;top:25%;width:22vw}
  .sd-ph:nth-child(6){left:3%;top:69%;width:26vw}
  .sd-ph:nth-child(7){left:36%;top:76%;width:28vw}
  .sd-ph:nth-child(8){left:70%;top:70%;width:26vw}
  .sd-ph:nth-child(n+9){display:none}
  .sd-center{position:absolute;inset:0;padding:0 18px}
  .sd-center p{background:rgba(255,255,255,.75);backdrop-filter:blur(6px);padding:6px 12px;max-width:300px}
  .sd-word{font-size:clamp(52px,15vw,96px)}
}
@media(min-width:600px) and (max-width:1024px){.saude{height:900px}.sd-ph:nth-child(-n+8){width:calc(var(--w) * 1.5)}}
@media(max-width:599px){
  .saude{height:clamp(620px,165vw,760px)}
  .sd-ph:nth-child(4),.sd-ph:nth-child(5){display:none}
  .sd-ph:nth-child(1){left:3%;top:4%;width:29vw}
  .sd-ph:nth-child(2){left:36%;top:2%;width:28vw}
  .sd-ph:nth-child(3){left:68%;top:5%;width:29vw}
  .sd-ph:nth-child(6){left:3%;top:72%;width:29vw}
  .sd-ph:nth-child(7){left:36%;top:76%;width:28vw}
  .sd-ph:nth-child(8){left:68%;top:71%;width:29vw}
}
@media(max-width:599px){
  .sd-center p{display:none}
  .sd-ph,.sd-ph:nth-child(n){transform:none!important;transition:none;will-change:auto}
  .sd-ph img{box-shadow:0 10px 18px -12px rgba(15,30,90,.4);will-change:transform;
    transition:opacity .6s ease,transform .7s ease;transition-delay:calc(var(--i) * 60ms);
    animation:sd-float-m calc(5s + var(--i) * .4s) ease-in-out infinite alternate}
  @keyframes sd-float-m{from{translate:0 -5px}to{translate:0 5px}}
}
@media(max-width:599px){
  .saude{height:clamp(480px,128vw,560px)}
  .sd-ph:nth-child(1){top:3%}.sd-ph:nth-child(2){top:1%}.sd-ph:nth-child(3){top:4%}
  .sd-ph:nth-child(6){top:66%}.sd-ph:nth-child(7){top:70%}.sd-ph:nth-child(8){top:65%}
}
@media(max-width:599px){
  .sd-center .spec.sm{margin-top:14px;padding:8px 16px;font-size:12.5px;min-height:0;height:auto}
  .sd-center .spec.sm .spec__label{font-size:12.5px}
}

/* ===== linha do tempo vertical (celular/tablet) — versão organizada ===== */
.tl-vline,.tl-mdot{display:none}
@media(max-width:1024px){
  #journey .tl-sticky{padding:72px 20px 40px}
  #journey .tl-slider{gap:36px}
  #journey .tl-track{padding-left:40px;max-width:560px;margin:0 auto;width:100%}
  #journey .tl-track::before{display:none}
  #journey .tl-head{margin:0 0 4px -40px}
  #journey .tl-head h2{font-size:clamp(32px,9.5vw,46px);line-height:1}
  #journey .tl-head.sub{margin:0 0 30px -40px}
  #journey .tl-head.sub p{font-size:14px;color:var(--muted);font-weight:600;letter-spacing:.3px}
  #journey .tl-head.sub p br{display:none}
  .tl-vline{display:block;position:absolute;left:11px;top:var(--vl-top,150px);bottom:40px;width:2px;border-radius:2px;
    background:linear-gradient(180deg,var(--brand),#7FA2FF);transform-origin:top;z-index:0}
  #journey .tl-item{padding:0 0 38px;position:relative}
  #journey .tl-item::before{display:none}
  .tl-mdot{display:block;position:absolute;left:-36px;top:4px;width:16px;height:16px;border-radius:50%;background:#fff;border:3px solid var(--brand);
    box-shadow:0 0 0 5px rgba(31,91,255,.14);box-sizing:border-box;z-index:1}
  #journey .tl-t{font-size:21px;line-height:1.1;margin:0 0 6px}
  #journey .tl-d{font-size:15px;line-height:1.55;color:#4A5468}
  #journey .tl-w{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:2px}
  #journey .tl-w>span{display:inline-block}
  #journey .tl-pic{margin-top:14px;width:100%;overflow:hidden;box-shadow:0 18px 30px -20px rgba(15,30,90,.5)}
  #journey .tl-pic img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
  #journey .tl-img{max-width:260px;margin:0 auto}
}
@media(max-width:1024px) and (prefers-reduced-motion:reduce){#journey .tl-w>span{transform:none}}
@media(max-width:1024px){#journey .tl-pic{will-change:clip-path}#journey .tl-w>span{will-change:transform}}
@media(max-width:1024px){
  #journey .tl-pic{will-change:auto;clip-path:none!important;overflow:hidden;background:#E8EEFB}
  #journey .tl-pic img{will-change:transform}
  #journey .tl-d{will-change:transform,opacity}
}
@media(max-width:1024px){#journey .tl-pic{background:none!important;box-shadow:none!important}}

/* "O que eu faço": no celular, o tópico no meio da tela acende em azul */
@media(max-width:1024px){
  .svc-row.on::before{transform:scaleY(1)}
  .svc-row.on{color:#fff}
  .svc-row.on .n,.svc-row.on p{color:#fff}
  .svc-row.on h3{transform:translateX(10px)}
  .svc-row.on .ar{transform:rotate(-45deg)}
}
@media(max-width:1024px){
  .svc-row::before{transition:transform .9s cubic-bezier(.45,0,.2,1)}
  .svc-row,.svc-row .n,.svc-row p{transition:color .8s ease}
  .svc-row h3{transition:transform .9s cubic-bezier(.45,0,.2,1)}
  .svc-row .ar{transition:transform .8s cubic-bezier(.45,0,.2,1)}
}
.ft2-word.done text{stroke-dasharray:none;stroke-dashoffset:0}
.ft2-word text{stroke-dasharray:3200;stroke-dashoffset:3200}
.ft2-word.in text{stroke-dashoffset:0}
.spec__light{max-width:none!important}

/* hero: os dois botões do mesmo tamanho */
.hero .cta{display:grid;grid-template-columns:repeat(2,minmax(0,230px));gap:12px}
.hero .cta>a{width:100%;height:56px;padding:0 18px;box-sizing:border-box;justify-content:center;white-space:nowrap}
@media(max-width:599px){
  .hero .cta{grid-template-columns:1fr 1fr;gap:10px}
  .hero .cta>a{height:50px;padding:0 10px;font-size:14px}
  .hero .cta>a .spec__label{font-size:14px}
}
/* foto do topo um pouco menor no celular/tablet */
@media(max-width:1024px){.hero .wrap>.hero-art{max-width:250px}}

/* cards flutuantes do hero em liquid glass */
.chip-f{background:linear-gradient(135deg,rgba(255,255,255,.55),rgba(255,255,255,.18));
  backdrop-filter:blur(14px) saturate(1.8);-webkit-backdrop-filter:blur(14px) saturate(1.8);
  border:1px solid rgba(255,255,255,.65);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),inset 0 -1px 0 rgba(255,255,255,.25),0 14px 30px -16px rgba(15,30,74,.45);color:#0B1636}
.chip-f small{color:#2E3A55}
@media(max-width:1024px){
  .chip-f{padding:6px 10px;border-radius:12px;font-size:11px}
  .chip-f small{font-size:9.5px}
  .chip-f .v{font-size:18px}
  .chip-f .dot{width:6px;height:6px;margin-right:4px}
  .chip-f.c1{left:-6px;bottom:14%}.chip-f.c2{right:-4px;top:8%}
}
/* celular: "E PERFORMANCE" na mesma linha */
@media(max-width:599px){
  h1.mega .ln:nth-child(2),h1.mega .ln:nth-child(3){display:inline-block;vertical-align:top}
  h1.mega .ln:nth-child(2){margin-right:.22em}
  h1.mega{font-size:clamp(36px,11.5vw,60px)}
}
/* cards do hero: mais para fora da foto e flutuação discreta */
@keyframes chipFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.chip-f{animation:chipFloat 7s ease-in-out infinite}
.chip-f.c2{animation-delay:-3.5s}
.chip-f.c1{left:-12%;bottom:6%}.chip-f.c2{right:-12%;top:2%}
@media(max-width:1024px){.chip-f.c1{left:-22%;bottom:4%}.chip-f.c2{right:-22%;top:0}}
@media(max-width:599px){
  .hero-facts{display:grid;grid-template-columns:auto auto auto;justify-content:space-between;gap:10px;flex-wrap:nowrap;margin-top:28px}
  .hero-facts div{font-size:10.5px;line-height:1.3}
  .hero-facts b{font-size:19px}
}
.chip-f{z-index:6}
.chip-f.c2{top:9%}
@media(max-width:1024px){.chip-f.c2{top:7%}}
/* faixa animada: camadas na GPU, sem "buracos" no celular */
@keyframes xmq{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@keyframes xmq-rev{from{transform:translate3d(-50%,0,0)}to{transform:translate3d(0,0,0)}}
.xtrack{backface-visibility:hidden;-webkit-backface-visibility:hidden;will-change:transform}
.xband{contain:paint}
@media(max-width:599px){.ft2-word{margin-top:40px}.ft2-word text{stroke:#8E9AB8;stroke-width:2}}
.contact a{display:flex;gap:12px;align-items:center;font-weight:600;color:#E3EAFF!important;text-decoration:none;min-width:0}
.contact a:hover{color:#fff!important;text-decoration:underline;text-underline-offset:3px}
.contact a .ic{flex:none}

/* selo do WhatsApp no cartão de agendamento */
.wa-badge{position:relative;width:76px;height:76px;margin:0 auto 14px;border-radius:24px;display:grid;place-items:center;color:#fff;
  background:linear-gradient(145deg,#5BE584 0%,#25D366 45%,#128C4A 100%);
  box-shadow:0 14px 28px -10px rgba(18,140,74,.55),inset 0 1px 0 rgba(255,255,255,.45),inset 0 -3px 6px rgba(0,0,0,.12)}
.wa-badge::before{content:"";position:absolute;inset:-8px;border-radius:30px;border:1.5px solid rgba(37,211,102,.35);animation:waRing 2.4s ease-out infinite}
.wa-badge::after{content:"";position:absolute;inset:6px 10px auto;height:40%;border-radius:18px 18px 40% 40%;background:linear-gradient(rgba(255,255,255,.35),rgba(255,255,255,0));pointer-events:none}
.wa-badge svg{position:relative;z-index:1;filter:drop-shadow(0 2px 3px rgba(0,0,0,.18))}
@keyframes waRing{0%{transform:scale(.92);opacity:1}100%{transform:scale(1.18);opacity:0}}
@media(prefers-reduced-motion:reduce){.wa-badge::before{animation:none}}
.wa-badge{border-radius:50%;background:#25D366;box-shadow:0 14px 28px -10px rgba(18,140,74,.55)}
.wa-badge::before{border-radius:50%}
.wa-badge::after{display:none}
