/* =========================================================
   Dra. Sofia Nakamura — pediatria e puericultura
   Assinatura: livro infantil ilustrado em papel recortado
   ========================================================= */

:root{
  --ceu:#DFF1FF;
  --ceu-claro:#EAF6FE;
  --sol:#FFD45C;
  --sol-claro:#FFE9B4;
  --folha:#7CC8A0;
  --folha-esc:#5FB88C;
  --framboesa:#F2789F;
  --framboesa-esc:#E0608A;
  --framboesa-claro:#FBDCE7;
  --framboesa-txt:#C4396B;
  --folha-txt:#2F7A57;
  --marinho:#22305A;
  --marinho-2:#2C3D6E;
  --papel:#FFFCF5;
  --papel-quente:#FFF6E2;
  --tinta:#22305A;
  --tinta-2:#55618A;
  --linha:rgba(34,48,90,.13);
  --linha-forte:rgba(34,48,90,.22);

  --fonte-display:"Fredoka","Trebuchet MS",sans-serif;
  --fonte-texto:"Nunito","Segoe UI",system-ui,sans-serif;

  --wrap:1180px;
  --morros-h:172px;
  --topo-h:64px;
  --r-g:30px;
  --r-m:20px;
  --r-p:14px;
  --sombra-papel:0 18px 40px -24px rgba(34,48,90,.55);
  --sombra-card:0 20px 44px -28px rgba(34,48,90,.5);
}

*,*::before,*::after{box-sizing:border-box}

html{
  -webkit-text-size-adjust:100%;
  scroll-behavior:smooth;
  overflow-x:clip;
}

body{
  margin:0;
  background:var(--papel);
  color:var(--tinta);
  font-family:var(--fonte-texto);
  font-size:17px;
  line-height:1.68;
  overflow-x:clip;
  padding-bottom:84px;
  -webkit-font-smoothing:antialiased;
}

img{max-width:100%;display:block}
svg{display:block}

h1,h2,h3,h4{
  font-family:var(--fonte-display);
  font-weight:600;
  line-height:1.08;
  letter-spacing:-.015em;
  margin:0 0 .55em;
  color:var(--marinho);
}
h1{font-size:clamp(2.05rem,8.4vw,4.3rem);letter-spacing:-.025em}
h2{font-size:clamp(1.72rem,5.6vw,2.9rem)}
h3{font-size:clamp(1.15rem,3.6vw,1.45rem);font-weight:600;line-height:1.2}
p{margin:0 0 1.05em}
ul{margin:0;padding:0;list-style:none}
a{color:inherit}

::selection{background:var(--sol);color:var(--marinho)}

/* ---------- foco / skip ---------- */
:focus-visible{
  outline:3px solid var(--marinho);
  outline-offset:3px;
  border-radius:6px;
}
.sec--urgencia :focus-visible,
.rodape :focus-visible{outline-color:var(--sol)}

.pular{
  position:absolute;left:-9999px;top:0;z-index:100;
  background:var(--marinho);color:#fff;
  padding:.85rem 1.2rem;border-radius:0 0 14px 0;
  font-family:var(--fonte-display);font-size:.95rem;
  text-decoration:none;
}
.pular:focus{left:0}

/* ---------- grão de papel ---------- */
.grao{
  position:fixed;inset:0;z-index:5;pointer-events:none;
  opacity:.04;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size:180px 180px;
}

/* =========================================================
   BOTÕES
   ========================================================= */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  min-height:52px;padding:.85rem 1.5rem;
  font-family:var(--fonte-display);font-size:1.02rem;font-weight:600;
  text-decoration:none;border:0;border-radius:999px;cursor:pointer;
  transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease;
  text-align:center;line-height:1.2;
}
.btn--framboesa{background:var(--framboesa);color:var(--marinho);box-shadow:0 5px 0 0 var(--framboesa-esc)}
.btn--framboesa:hover{background:#F58AAC}
.btn--sol{background:var(--sol);color:var(--marinho);box-shadow:0 5px 0 0 #E8B93C}
.btn--sol:hover{background:#FFDE80}
.btn--fantasma{background:transparent;color:var(--marinho);box-shadow:inset 0 0 0 2.5px var(--marinho)}
.btn--fantasma:hover{background:rgba(34,48,90,.07)}
.btn:active{transform:translateY(3px);box-shadow:0 2px 0 0 rgba(34,48,90,.25)}
.btn--bloco{display:flex;width:100%}

/* =========================================================
   TOPO
   ========================================================= */
.topo{
  position:sticky;top:0;z-index:40;
  background:rgba(255,252,245,.93);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  border-bottom:1px solid var(--linha);
}
.topo__interno{
  width:min(100% - 1.6rem,var(--wrap));margin-inline:auto;
  min-height:var(--topo-h);
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
  padding:.5rem 0;
}
.marca{display:flex;align-items:center;gap:.6rem;text-decoration:none;min-height:44px}
.marca__selo{flex:none;display:block}
.marca__selo svg{width:38px;height:38px}
.marca__txt{display:flex;flex-direction:column;line-height:1.15}
.marca__txt strong{
  font-family:var(--fonte-display);font-weight:600;
  font-size:1.03rem;color:var(--marinho);letter-spacing:-.01em;
}
.marca__txt small{font-size:.86rem;color:var(--tinta-2);letter-spacing:.01em}

.menu-btn{
  display:flex;align-items:center;gap:.5rem;
  min-height:44px;padding:.4rem .85rem .4rem .7rem;
  background:var(--papel);border:2px solid var(--linha-forte);border-radius:999px;
  font-family:var(--fonte-display);font-weight:600;font-size:.92rem;color:var(--marinho);
  cursor:pointer;
}
.menu-btn__barras{display:flex;flex-direction:column;gap:4px;width:19px}
.menu-btn__barras i{display:block;height:2.6px;border-radius:2px;background:var(--marinho);transition:transform .22s ease,opacity .18s ease}
.menu-btn__barras i:nth-child(2){width:72%}
.menu-btn[aria-expanded="true"] .menu-btn__barras i:nth-child(1){transform:translateY(6.6px) rotate(45deg)}
.menu-btn[aria-expanded="true"] .menu-btn__barras i:nth-child(2){opacity:0}
.menu-btn[aria-expanded="true"] .menu-btn__barras i:nth-child(3){transform:translateY(-6.6px) rotate(-45deg)}

.nav{display:none}
.nav[data-aberto]{
  display:block;
  position:absolute;top:100%;left:0;right:0;
  background:var(--papel);
  border-bottom:1px solid var(--linha);
  box-shadow:0 22px 40px -26px rgba(34,48,90,.6);
  padding:.6rem 1rem 1.15rem;
}
.nav[data-aberto] ul{display:flex;flex-direction:column}
.nav[data-aberto] li+li{border-top:1px dashed var(--linha)}
.nav[data-aberto] a{
  display:block;padding:.85rem .25rem;min-height:44px;
  font-family:var(--fonte-display);font-size:1.06rem;font-weight:500;
  color:var(--marinho);text-decoration:none;
}
.nav[data-aberto] .nav__cta{margin-top:.9rem;display:flex;padding:.85rem 1.4rem;color:var(--marinho)}

/* =========================================================
   TIPOGRAFIA DE SEÇÃO
   ========================================================= */
.wrap{width:min(100% - 2rem,var(--wrap));margin-inline:auto}

.sec{position:relative;padding:clamp(3.2rem,9vw,6rem) 0}
.sec > .wrap{position:relative;z-index:2}
section[id]{scroll-margin-top:84px}

.num{
  font-family:var(--fonte-display);font-weight:600;
  font-size:.87rem;letter-spacing:.15em;text-transform:uppercase;
  color:var(--folha-txt);margin:0 0 .9rem;
  display:flex;align-items:center;gap:.55rem;
}
.num::before{
  content:"";width:26px;height:2.5px;border-radius:2px;background:var(--sol);flex:none;
}
.num--claro{color:var(--sol)}
.num--claro::before{background:var(--framboesa)}

.sec__lead{
  font-size:clamp(1.03rem,2.3vw,1.18rem);
  color:var(--tinta-2);
  max-width:56ch;
}

.nota{
  font-size:.95rem;line-height:1.6;color:var(--tinta-2);
  border-top:1px dashed var(--linha-forte);
  padding-top:1.1rem;margin-top:2.6rem;max-width:74ch;
}

/* ---------- ondas divisórias ---------- */
.onda{line-height:0;position:relative;z-index:2}
.onda svg{width:100%;height:clamp(44px,6vw,80px)}
.onda--para-creme{background:var(--papel)}
.onda--para-ceu{background:var(--papel)}


/* ---------- nuvens decorativas de fundo ---------- */
.sec--rotina::before,
.sec--rotina::after,
.sec--faq::before{
  content:"";position:absolute;z-index:0;pointer-events:none;
  aspect-ratio:220/92;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 92'%3E%3Cg fill='%23FFFFFF'%3E%3Ccircle cx='64' cy='46' r='34'/%3E%3Ccircle cx='112' cy='34' r='28'/%3E%3Ccircle cx='152' cy='52' r='26'/%3E%3Crect x='30' y='52' width='160' height='33' rx='16'/%3E%3C/g%3E%3C/svg%3E") no-repeat center/contain;
  opacity:.75;
}
.sec--rotina::before{top:7%;right:4%;width:clamp(86px,11vw,150px)}
.sec--rotina::after{top:58%;left:3%;width:clamp(64px,8vw,110px);opacity:.55}
.sec--faq::before{top:5%;right:5%;width:clamp(78px,10vw,132px);opacity:.7}

/* ---------- fotos em papel ---------- */
.foto{
  margin:0;background:#fff;padding:9px;
  border-radius:var(--r-g);
  box-shadow:var(--sombra-papel);
}
.foto img{width:100%;height:auto;border-radius:22px}
.foto figcaption{
  font-size:.9rem;line-height:1.5;color:var(--tinta-2);
  padding:.7rem .5rem .25rem;text-align:center;
}

/* =========================================================
   HERO
   ========================================================= */
.hero{
  position:relative;overflow:hidden;
  background:linear-gradient(180deg,#D5EDFF 0%,var(--ceu) 38%,#EDF8FF 100%);
  min-height:660px;
  display:flex;align-items:center;
}
.hero__ceu{position:absolute;inset:0;z-index:1;pointer-events:none}

.sol{position:absolute;top:-52px;left:-46px;width:178px;height:auto}
.sol__raios{transform-box:fill-box;transform-origin:center;animation:gira 90s linear infinite}
@keyframes gira{to{transform:translate(110px,110px) rotate(360deg)}}

.nuvem{position:absolute;width:150px;height:auto;left:0;animation:desliza 110s linear infinite}
.nuvem--1{top:7%;width:132px;animation-duration:120s;animation-delay:-20s}
.nuvem--2{top:20%;width:96px;animation-duration:170s;animation-delay:-90s;opacity:.9}
.nuvem--3{top:2%;width:172px;animation-duration:145s;animation-delay:-55s;opacity:.78}
@keyframes desliza{
  from{transform:translateX(-40vw)}
  to{transform:translateX(125vw)}
}

.balao{
  position:absolute;top:56px;right:8px;width:92px;height:auto;
  animation:flutua 9s ease-in-out infinite;
  transform-origin:50% 0%;
}
@keyframes flutua{
  0%,100%{transform:translateY(0) rotate(-2.5deg)}
  50%{transform:translateY(-22px) rotate(2.5deg)}
}

.pipa{display:none}
.passaros{display:none;position:absolute;top:31%;left:6%;width:104px;height:auto;opacity:.75;animation:voa 14s ease-in-out infinite}
@keyframes voa{0%,100%{transform:translate(0,0)}50%{transform:translate(16px,-10px)}}

.hero__texto{
  position:relative;z-index:3;
  width:min(100% - 2rem,var(--wrap));margin-inline:auto;
  padding-top:132px;
  padding-bottom:calc(var(--morros-h) - 6px);
}
.kicker{
  display:inline-flex;align-items:center;gap:.5rem;
  font-family:var(--fonte-display);font-weight:600;
  font-size:.79rem;letter-spacing:.13em;text-transform:uppercase;
  color:var(--marinho);background:rgba(255,255,255,.72);
  border:1.5px solid rgba(34,48,90,.12);
  padding:.42rem .9rem;border-radius:999px;margin-bottom:1.1rem;
}
.kicker__ponto{width:9px;height:9px;border-radius:50%;background:var(--framboesa);flex:none}

#h1{margin-bottom:.5em;text-wrap:balance}
.hero__lead{
  font-size:clamp(1.05rem,2.6vw,1.24rem);
  color:#3C4A72;max-width:44ch;margin-bottom:1.7rem;
}
.hero__acoes{display:flex;flex-wrap:wrap;gap:.75rem}
.hero__acoes .btn{flex:1 1 210px}
.hero__crm{
  margin-top:1.4rem;font-size:.86rem;color:#4E5C85;letter-spacing:.01em;
}

.hero__morros{position:absolute;left:0;right:0;bottom:0;height:var(--morros-h);z-index:2;pointer-events:none}
.morro{position:absolute;left:0;width:100%;bottom:0}
.morro--1{height:74%}
.morro--2{height:58%}
.morro--3{height:42%}
.morro--4{height:26%}
.hero__bichos{position:absolute;inset:0}
.bicho{position:absolute;height:auto}
.bicho--arvore{left:5%;bottom:14px;width:48px}
.bicho--arvore2{left:76%;bottom:26px;width:38px}
.bicho--coelho{right:9%;bottom:6px;width:52px}
.bicho--flores{left:34%;bottom:2px;width:86px;opacity:.9}
.bicho--passarinho{display:none;left:22%;bottom:34px;width:34px}

/* =========================================================
   01 · GUIA POR IDADE
   ========================================================= */
.sec--idades{background:var(--papel);padding-top:clamp(4.6rem,11vw,7rem)}
.sec--idades::before{
  content:"";position:absolute;top:0;left:0;right:0;height:clamp(44px,6vw,74px);
  background-color:#5FB88C;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80' preserveAspectRatio='none'%3E%3Cpath d='M0 40c180-40 300 26 520 22 220-4 340-54 560-32 130 13 250 30 360 16V80H0Z' fill='%23FFFCF5'/%3E%3C/svg%3E");
  background-size:100% 100%;background-repeat:no-repeat;
  z-index:1;
}

.idades__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:2.2rem}
.idades__grid > *{min-width:0}
.foto--mae{margin-top:1.7rem}
.foto--mae img{aspect-ratio:4/3;object-fit:cover;object-position:50% 28%}

.abas{
  display:flex;gap:.5rem;overflow-x:auto;min-width:0;max-width:100vw;
  padding:.35rem .25rem 1rem;
  margin:1.6rem -1rem 0;padding-inline:1rem;
  scroll-snap-type:x proximity;
  scrollbar-width:none;
  /* pistas de que a tira rola: as bordas somem quando há mais abas fora da tela */
  --fade-esq:0px;--fade-dir:0px;
  -webkit-mask-image:linear-gradient(to right,transparent 0,#000 var(--fade-esq),#000 calc(100% - var(--fade-dir)),transparent 100%);
  mask-image:linear-gradient(to right,transparent 0,#000 var(--fade-esq),#000 calc(100% - var(--fade-dir)),transparent 100%);
}
.abas-tira[data-antes] .abas{--fade-esq:34px}
.abas-tira[data-depois] .abas{--fade-dir:56px}
.abas::-webkit-scrollbar{display:none}

/* setinha discreta: aparece só enquanto ainda há abas à direita */
.abas-tira{position:relative}
.abas-tira::after{
  content:"";position:absolute;right:-.25rem;top:calc(50% - .5rem);
  width:28px;height:28px;transform:translateY(-50%);
  background:var(--sol);border:2px solid var(--marinho);border-radius:50%;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2322305A' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 5 7 7-7 7'/%3E%3C/svg%3E");
  background-size:15px 15px;background-position:52% 50%;background-repeat:no-repeat;
  opacity:0;pointer-events:none;transition:opacity .2s ease;
}
.abas-tira[data-depois]::after{opacity:1}
.aba{
  flex:none;scroll-snap-align:start;
  min-height:48px;padding:.6rem 1.1rem;
  font-family:var(--fonte-display);font-weight:500;font-size:1rem;
  color:var(--marinho);background:#fff;
  border:2px solid var(--linha-forte);border-radius:999px;
  cursor:pointer;white-space:nowrap;
  transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease;
}
.aba:hover{border-color:var(--folha)}
.aba[aria-selected="true"]{
  background:var(--sol);border-color:var(--sol);
  box-shadow:0 4px 0 0 #E8B93C;font-weight:600;
}

.painel{
  background:#fff;border:1.5px solid var(--linha);
  border-radius:var(--r-g);
  padding:1.5rem 1.25rem 1.6rem;
  box-shadow:var(--sombra-card);
}
.painel[hidden]{display:none}
.painel__topo{display:flex;flex-direction:column;gap:.9rem;align-items:flex-start;margin-bottom:1.3rem}
.painel__icone{
  flex:none;display:grid;place-items:center;
  width:64px;height:64px;border-radius:20px;background:var(--ceu-claro);
}
.painel__icone svg{width:44px;height:44px}
.painel__topo h3{margin-bottom:.35em}
.painel__lead{font-size:1rem;color:var(--tinta-2);margin:0}

.painel__rot{
  font-family:var(--fonte-display);font-weight:600;
  font-size:.87rem;letter-spacing:.13em;text-transform:uppercase;
  color:var(--framboesa-txt);margin:0 0 .75rem;
}
.lista-check li{
  position:relative;padding-left:2.1rem;margin-bottom:.85rem;
  font-size:1rem;line-height:1.6;
}
.lista-check li::before{
  content:"";position:absolute;left:0;top:.28em;
  width:22px;height:22px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 13.5l5 5L20 6' fill='none' stroke='%237CC8A0' stroke-width='3.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center/100%;
}

.pergunta{
  margin-top:1.6rem;padding:1.15rem 1.15rem 1rem;
  background:var(--ceu-claro);border-radius:var(--r-m);
  border-left:5px solid var(--framboesa);
}
.pergunta__q{
  font-family:var(--fonte-display);font-weight:600;
  font-size:1.06rem;line-height:1.3;color:var(--marinho);margin:0 0 .5rem;
}
.pergunta__a{margin:0;font-size:.99rem;color:#44517A}

/* =========================================================
   02 · ESTRADINHA DAS CONSULTAS
   ========================================================= */
.sec--rotina{background:var(--ceu-claro)}
.rotina__cabeca{display:grid;grid-template-columns:minmax(0,1fr);gap:1.8rem;margin-bottom:2.6rem}
.foto--pe{max-width:300px}

.trilha{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:1.15rem;padding-left:66px}
.trilha__linha{
  position:absolute;left:0;top:6px;width:60px;height:calc(100% - 26px);
  z-index:0;
}
.marco{
  position:relative;z-index:2;
  background:#fff;border:1.5px solid var(--linha);
  border-radius:var(--r-m);padding:1.1rem 1.15rem 1.05rem;
  box-shadow:0 14px 30px -24px rgba(34,48,90,.6);
}
.marco__selo{
  position:absolute;left:-58px;top:16px;
  width:46px;height:46px;border-radius:50%;
  display:grid;place-items:center;
  background:var(--framboesa);color:#fff;
  font-family:var(--fonte-display);font-weight:600;font-size:1.2rem;
  border:4px solid var(--ceu-claro);
  box-shadow:0 4px 0 0 rgba(34,48,90,.14);
}
.marco h3{margin-bottom:.2em}
.marco__quando{
  font-family:var(--fonte-display);font-weight:500;font-size:.87rem;
  letter-spacing:.05em;text-transform:uppercase;color:var(--folha-txt);
  margin:0 0 .6rem;
}
.marco p:last-child{margin:0;font-size:.99rem;color:#43507A}

/* =========================================================
   03 · PRIMEIRA CONSULTA
   ========================================================= */
.sec--primeira{background:var(--papel-quente);padding-top:clamp(4.4rem,10vw,6.5rem)}
.sec--primeira::before{
  content:"";position:absolute;top:0;left:0;right:0;height:clamp(44px,6vw,74px);
  background-color:var(--ceu-claro);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80' preserveAspectRatio='none'%3E%3Cpath d='M0 52c200 26 320-44 540-34 200 9 320 58 540 34 130-14 250-28 360-10V80H0Z' fill='%23FFF6E2'/%3E%3C/svg%3E");
  background-size:100% 100%;background-repeat:no-repeat;z-index:1;
}
.primeira__grid{
  position:relative;z-index:2;
  width:min(100% - 2rem,var(--wrap));margin-inline:auto;
  display:grid;grid-template-columns:minmax(0,1fr);gap:2rem;
}
.primeira__fotos{display:grid;gap:1rem;grid-template-columns:1fr;align-items:start}
.foto--brinquedos{display:none}
.foto--consultorio img{aspect-ratio:16/10;object-fit:cover}

.checklist{margin:1.8rem 0 0;display:grid;gap:1.1rem}
.checklist li{
  display:flex;gap:.9rem;align-items:flex-start;
  background:#fff;border-radius:var(--r-m);
  padding:1rem 1.05rem;
  border:1.5px solid rgba(34,48,90,.09);
  box-shadow:0 12px 26px -24px rgba(34,48,90,.6);
}
.checklist__ic{
  flex:none;width:46px;height:46px;border-radius:14px;
  display:grid;place-items:center;background:var(--papel-quente);
}
.checklist strong{
  display:block;font-family:var(--fonte-display);font-weight:600;
  font-size:1.05rem;color:var(--marinho);line-height:1.25;margin-bottom:.2rem;
}
.checklist p{margin:0;font-size:.96rem;line-height:1.58;color:#4A5780}

.aviso-suave{
  margin-top:1.8rem;padding:1.15rem 1.2rem;
  background:var(--sol-claro);border-radius:var(--r-m);
  border:2px dashed #E9C368;
}
.aviso-suave p{margin:0;font-size:.99rem;color:#3E4A73}
.aviso-suave strong{font-family:var(--fonte-display);color:var(--marinho)}

/* =========================================================
   04 · URGÊNCIA
   ========================================================= */
.sec--urgencia{
  background:var(--marinho);color:#E7EEFC;
  padding-top:clamp(4.6rem,11vw,7rem);
}
.sec--urgencia::before{
  content:"";position:absolute;top:0;left:0;right:0;height:clamp(44px,6vw,74px);
  background-color:var(--papel-quente);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80' preserveAspectRatio='none'%3E%3Cpath d='M0 30c160 34 300-30 500-20 190 10 320 52 520 34 140-12 280-38 420-6V80H0Z' fill='%2322305A'/%3E%3C/svg%3E");
  background-size:100% 100%;background-repeat:no-repeat;z-index:1;
}
.sec--urgencia h2,.sec--urgencia h3{color:#fff}
.urgencia__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:2rem}
.urgencia__lead{color:#C6D3EE;max-width:58ch}

.alarmes{display:grid;gap:.85rem;margin-top:1.5rem}
.alarmes li{
  display:flex;gap:.85rem;align-items:flex-start;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.12);
  border-radius:var(--r-p);
  padding:.85rem .95rem;
  font-size:1rem;line-height:1.55;color:#E7EEFC;
}
.alarmes__ic{
  flex:none;width:34px;height:34px;border-radius:11px;
  display:grid;place-items:center;
  background:var(--framboesa);color:var(--marinho);
}
.urgencia__samu{
  margin-top:1.5rem;font-size:.95rem;color:#AEBEE2;
  border-top:1px dashed rgba(255,255,255,.2);padding-top:1.1rem;
}
.urgencia__samu strong{color:var(--sol);font-family:var(--fonte-display);font-size:1.15rem}

.urgencia__contato{
  background:var(--marinho-2);border-radius:var(--r-g);
  padding:1.5rem 1.35rem;
  border:1px solid rgba(255,255,255,.1);
  align-self:start;
}
.canais{margin:0 0 1.4rem}
.canais > div{padding:.9rem 0;border-bottom:1px dashed rgba(255,255,255,.17)}
.canais > div:first-child{padding-top:.2rem}
.canais > div:last-child{border-bottom:0;padding-bottom:.2rem}
.canais dt{
  font-family:var(--fonte-display);font-weight:600;font-size:1rem;
  color:var(--sol);margin-bottom:.2rem;
}
.canais dd{margin:0;font-size:.95rem;line-height:1.55;color:#C6D3EE}

/* =========================================================
   05 · SOBRE
   ========================================================= */
.sec--sobre{background:var(--papel);padding-top:clamp(4.6rem,11vw,7rem)}
.sec--sobre::before{
  content:"";position:absolute;top:0;left:0;right:0;height:clamp(44px,6vw,74px);
  background-color:var(--marinho);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80' preserveAspectRatio='none'%3E%3Cpath d='M0 44c180-40 300 26 520 22 220-4 340-54 560-32 130 13 250 30 360 16V80H0Z' fill='%23FFFCF5'/%3E%3C/svg%3E");
  background-size:100% 100%;background-repeat:no-repeat;z-index:1;
}
.sobre__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:2.2rem}

.retrato{position:relative;max-width:340px;margin-inline:auto}
.retrato__papel,
.retrato__img{
  --nuvem:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 250' preserveAspectRatio='none'%3E%3Cg fill='%23000'%3E%3Ccircle cx='62' cy='68' r='48'/%3E%3Ccircle cx='132' cy='56' r='42'/%3E%3Ccircle cx='162' cy='106' r='38'/%3E%3Ccircle cx='40' cy='120' r='38'/%3E%3Crect x='6' y='96' width='188' height='148' rx='52'/%3E%3C/g%3E%3C/svg%3E");
  -webkit-mask-image:var(--nuvem);mask-image:var(--nuvem);
  -webkit-mask-size:100% 100%;mask-size:100% 100%;
  -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
}
.retrato__papel{
  position:absolute;inset:0;
  transform:translate(12px,14px);
  background:var(--sol);
}
.retrato__img{
  position:relative;width:100%;height:auto;
  aspect-ratio:200/250;object-fit:cover;object-position:50% 22%;
}
.retrato__estrela{
  position:absolute;top:7%;left:-4%;width:48px;height:48px;
  filter:drop-shadow(0 6px 10px rgba(34,48,90,.25));
}

.sobre__texto p{color:#404E78}
.citacao{
  margin:1.8rem 0;padding:1.3rem 1.3rem 1.15rem;
  background:var(--ceu-claro);border-radius:var(--r-m);
  position:relative;border:1.5px solid rgba(34,48,90,.08);
}
.citacao::before{
  content:"";position:absolute;top:-13px;left:22px;
  width:30px;height:26px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 26'%3E%3Cpath d='M12 26C4 26 0 20 0 13 0 6 5 0 13 0l1 5c-4 1-6 3-6 6 3 0 6 3 6 7s-3 8-2 8Zm17 0c-8 0-12-6-12-13 0-7 5-13 13-13l1 5c-4 1-6 3-6 6 3 0 6 3 6 7s-3 8-2 8Z' fill='%23F2789F'/%3E%3C/svg%3E") no-repeat center/100%;
}
.citacao p{
  margin:0;font-family:var(--fonte-display);font-weight:500;
  font-size:clamp(1.1rem,3vw,1.32rem);line-height:1.38;color:var(--marinho);
}

.formacao{display:grid;gap:.1rem;margin:1.7rem 0 1.2rem}
.formacao li{
  display:flex;gap:.9rem;align-items:baseline;
  padding:.72rem 0;border-bottom:1px dashed var(--linha-forte);
  font-size:.99rem;color:#404E78;
}
.formacao li:last-child{border-bottom:0}
.formacao span{
  flex:none;width:3.4rem;
  font-family:var(--fonte-display);font-weight:600;color:var(--framboesa-txt);
}
.sobre__crm{font-size:.88rem;color:var(--tinta-2);margin:0}

/* =========================================================
   06 · FAQ
   ========================================================= */
.sec--faq{background:var(--ceu-claro)}
.faq__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:2rem}
.faq__grid > *{min-width:0}
.faq__lado .btn{margin-top:1.3rem}
.foto--desenho{margin-top:1.4rem}
.foto--desenho img{aspect-ratio:16/10;object-fit:cover}

.faq__lista{display:grid;gap:.7rem}
.qa{
  background:#fff;border:1.5px solid var(--linha);
  border-radius:var(--r-m);overflow:hidden;
  transition:box-shadow .2s ease,border-color .2s ease;
}
.qa[open]{border-color:rgba(124,200,160,.7);box-shadow:0 16px 34px -28px rgba(34,48,90,.7)}
.qa summary{
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
  padding:1.05rem 1.1rem;min-height:56px;cursor:pointer;
  font-family:var(--fonte-display);font-weight:500;
  font-size:1.05rem;line-height:1.3;color:var(--marinho);
  list-style:none;
}
.qa summary::-webkit-details-marker{display:none}
.qa summary:hover{background:rgba(124,200,160,.09)}
.qa__mais{
  flex:none;position:relative;width:26px;height:26px;border-radius:50%;
  background:var(--sol);
}
.qa__mais::before,.qa__mais::after{
  content:"";position:absolute;left:50%;top:50%;
  width:12px;height:2.6px;border-radius:2px;background:var(--marinho);
  transform:translate(-50%,-50%);transition:transform .22s ease;
}
.qa__mais::after{transform:translate(-50%,-50%) rotate(90deg)}
.qa[open] .qa__mais{background:var(--folha)}
.qa[open] .qa__mais::after{transform:translate(-50%,-50%) rotate(0)}
.qa__corpo{padding:0 1.1rem 1.15rem;border-top:1px dashed var(--linha)}
.qa__corpo p{margin:1rem 0 0;font-size:.99rem;line-height:1.65;color:#44517A}

/* =========================================================
   07 · CONTATO
   ========================================================= */
.sec--contato{background:var(--papel);padding-top:clamp(4.6rem,11vw,7rem)}
.sec--contato::before{
  content:"";position:absolute;top:0;left:0;right:0;height:clamp(44px,6vw,74px);
  background-color:var(--ceu-claro);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80' preserveAspectRatio='none'%3E%3Cpath d='M0 52c200 26 320-44 540-34 200 9 320 58 540 34 130-14 250-28 360-10V80H0Z' fill='%23FFFCF5'/%3E%3C/svg%3E");
  background-size:100% 100%;background-repeat:no-repeat;z-index:1;
}
.contato__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:2.4rem}

.form{
  margin-top:1.6rem;display:grid;gap:1rem;
  background:#fff;border:1.5px solid var(--linha);
  border-radius:var(--r-g);padding:1.4rem 1.2rem 1.5rem;
  box-shadow:var(--sombra-card);
}
.campo{display:grid;gap:.4rem}
.campo-dupla{display:grid;gap:1rem}
.campo label{
  font-family:var(--fonte-display);font-weight:500;
  font-size:.92rem;color:var(--marinho);
}
.campo input,.campo select,.campo textarea{
  width:100%;min-height:52px;
  padding:.8rem .95rem;
  font-family:var(--fonte-texto);font-size:16px;color:var(--marinho);
  background:var(--papel);
  border:2px solid rgba(34,48,90,.14);border-radius:var(--r-p);
  transition:border-color .16s ease,box-shadow .16s ease;
}
.campo textarea{min-height:110px;resize:vertical;line-height:1.55}
.campo select{appearance:none;-webkit-appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 9l6 6 6-6' fill='none' stroke='%2322305A' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right .8rem center;background-size:20px;
  padding-right:2.6rem;
}
.campo input::placeholder,.campo textarea::placeholder{color:#6B7797}
.campo input:focus,.campo select:focus,.campo textarea:focus{
  outline:none;border-color:var(--framboesa);
  box-shadow:0 0 0 4px rgba(242,120,159,.22);
}
.campo input:focus-visible,.campo select:focus-visible,.campo textarea:focus-visible{outline:none}
.form__nota{margin:.2rem 0 0;font-size:.9rem;line-height:1.55;color:var(--tinta-2)}

.contato__info{display:grid;gap:1.4rem;align-content:start}
.info-bloco{
  background:var(--ceu-claro);border-radius:var(--r-m);
  padding:1.15rem 1.2rem;
}
.info-bloco h3{
  font-size:.87rem;letter-spacing:.13em;text-transform:uppercase;
  color:var(--folha-txt);margin-bottom:.7rem;font-weight:600;
}
.info-bloco address{font-style:normal;font-size:1.06rem;line-height:1.55;color:var(--marinho);font-family:var(--fonte-display);font-weight:500}
.info-bloco__extra{margin:.75rem 0 0;font-size:.93rem;line-height:1.55;color:var(--tinta-2)}
.horarios li{
  display:flex;justify-content:space-between;gap:1rem;align-items:baseline;
  padding:.5rem 0;border-bottom:1px dashed var(--linha-forte);font-size:.97rem;
}
.horarios li:last-child{border-bottom:0}
.horarios b{font-family:var(--fonte-display);font-weight:600;color:var(--marinho);white-space:nowrap}
.horarios span{color:var(--tinta-2)}

.info-bloco--contato{background:var(--papel-quente);display:grid;gap:.6rem}
.linha-contato{
  display:flex;gap:.8rem;align-items:center;min-height:52px;
  text-decoration:none;color:var(--marinho);
  padding:.45rem .2rem;border-radius:12px;
}
.linha-contato:hover{background:rgba(255,212,92,.35)}
.linha-contato__ic{
  flex:none;width:40px;height:40px;border-radius:12px;
  display:grid;place-items:center;background:var(--sol);color:var(--marinho);
}
.linha-contato b{display:block;font-family:var(--fonte-display);font-weight:600;font-size:1rem;line-height:1.25;word-break:break-word}
.linha-contato small{display:block;font-size:.9rem;color:var(--tinta-2);line-height:1.4}

.mapinha{width:100%;height:auto;border-radius:var(--r-m);border:1.5px solid var(--linha)}

/* =========================================================
   RODAPÉ
   ========================================================= */
.rodape{
  position:relative;background:var(--marinho);color:#C6D3EE;
  padding:calc(clamp(44px,6vw,90px) + 2.6rem) 0 2rem;
  font-size:.95rem;
}
.rodape__morros{
  position:absolute;top:0;left:0;width:100%;
  height:clamp(44px,6vw,90px);
  background:var(--papel);
}
.rodape__grid{display:grid;gap:2rem;position:relative;z-index:2}
.rodape__marca{display:flex;gap:.9rem;align-items:flex-start}
.rodape__marca p{margin:0;line-height:1.5}
.rodape__marca strong{font-family:var(--fonte-display);font-size:1.12rem;color:#fff;font-weight:600}
.rodape__nav ul{columns:2;gap:1rem}
.rodape__nav a{
  display:block;padding:.62rem 0;min-height:44px;
  text-decoration:none;color:#C6D3EE;
}
.rodape__nav a:hover{color:var(--sol);text-decoration:underline;text-underline-offset:3px}
.rodape__dados p{margin:0 0 .9rem;line-height:1.55}
.rodape__dados a{color:var(--sol);text-decoration:none;font-family:var(--fonte-display);font-size:1.1rem}
.rodape__dados a:hover{text-decoration:underline}

.rodape__legal{
  position:relative;z-index:2;
  margin-top:2.4rem;padding-top:1.4rem;
  border-top:1px dashed rgba(255,255,255,.18);
}
.rodape__legal p{margin:0 0 .6rem;font-size:.9rem;line-height:1.6;color:#94A5CE}
.rodape__norma{color:#99AAD2 !important}

/* =========================================================
   BARRA MOBILE
   ========================================================= */
.barra-mobile{
  position:fixed;left:0;right:0;bottom:0;z-index:35;
  display:flex;gap:.6rem;align-items:center;
  padding:.6rem .9rem calc(.6rem + env(safe-area-inset-bottom,0px));
  background:rgba(255,252,245,.95);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  border-top:1px solid var(--linha);
}
.barra-mobile__tel{
  flex:none;width:52px;height:52px;border-radius:50%;
  display:grid;place-items:center;
  background:var(--sol);color:var(--marinho);
  box-shadow:0 4px 0 0 #E8B93C;text-decoration:none;
}
.barra-mobile__cta{flex:1;min-height:52px}

/* =========================================================
   REVELAÇÃO AO ROLAR
   ========================================================= */
.rev{opacity:0;transform:translateY(20px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.3,1)}
.rev.vis{opacity:1;transform:none}

/* =========================================================
   ≥ 560px
   ========================================================= */
@media (min-width:560px){
  :root{--morros-h:200px}
  .sol{width:220px;top:-58px;left:-40px}
  .balao{width:118px;top:64px;right:4%}
  .bicho--arvore{width:60px}
  .bicho--flores{width:112px}
  .bicho--arvore2{width:46px}
  .bicho--coelho{width:62px}
  .campo-dupla{grid-template-columns:1.6fr 1fr}
  .checklist{grid-template-columns:1fr 1fr}
  .primeira__fotos{grid-template-columns:1.55fr 1fr}
  .foto--brinquedos{display:block}
  .foto--pe{max-width:340px}
  .rotina__cabeca{grid-template-columns:1fr auto;align-items:end;gap:2.4rem}
}

/* =========================================================
   ≥ 768px — tablet
   ========================================================= */
@media (min-width:768px){
  :root{--morros-h:230px;--topo-h:72px}
  body{padding-bottom:0;font-size:17.5px}
  .barra-mobile{display:none}
  .hero{min-height:720px}
  .hero__texto{padding-top:56px}
  .passaros{display:block;width:120px;top:62%;left:56%}
  .pipa{display:block;position:absolute;top:8%;right:34%;width:118px;height:auto;animation:balanca 11s ease-in-out infinite;transform-origin:50% 0}
  @keyframes balanca{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(5deg)}}
  .balao{width:146px;top:28%;right:15%}

  .painel__topo{flex-direction:row;gap:1.2rem;align-items:flex-start}
  .form{padding:1.8rem 1.7rem 1.9rem}
  .rodape__grid{grid-template-columns:1fr 1fr;gap:2.2rem 2.6rem}
  .rodape__marca{grid-column:1;grid-row:1}
  .rodape__dados{grid-column:2;grid-row:1}
  .rodape__nav{grid-column:1 / -1;grid-row:2}
  .rodape__nav ul{columns:3}
  .foto--brinquedos{display:block}
  .foto--desenho{display:block;margin-top:1.4rem}
  .foto--desenho img{aspect-ratio:16/10;object-fit:cover}
}

/* =========================================================
   ≥ 1000px — desktop de verdade
   ========================================================= */
@media (min-width:1000px){
  :root{--morros-h:300px}
  body{font-size:18px}
  .hero{min-height:min(88svh,860px)}
  .hero__texto{padding-top:64px}
  .hero__texto > *{max-width:640px}
  .hero__acoes .btn{flex:0 0 auto}
  .sol{width:248px;top:8px;left:auto;right:3.5%}
  .balao{width:174px;top:30%;right:17%}
  .pipa{width:146px;top:7%;right:33%}
  .passaros{width:150px;top:60%;left:57%}
  .bicho--arvore{width:84px;bottom:26px;left:7%}
  .bicho--arvore2{width:62px;bottom:52px;left:73%}
  .bicho--coelho{width:78px;bottom:12px;right:11%}
  .bicho--flores{width:140px;left:31%;bottom:6px}
  .bicho--passarinho{display:block;left:20%;bottom:34px;width:44px}

  /* --- idades --- */
  .idades__grid{grid-template-columns:minmax(280px,330px) minmax(0,1fr);gap:clamp(2.5rem,4.5vw,4.5rem);align-items:stretch}
  .idades__lado{position:sticky;top:96px;align-self:start}
  .idades__painel{display:grid;align-self:stretch}
  .idades__lado h2{font-size:clamp(1.85rem,2.7vw,2.3rem)}
  .idades__lado .sec__lead{font-size:1rem}
  .foto--mae{margin:1.7rem auto 0;max-width:280px;transform:rotate(-2deg)}
  .foto--mae img{aspect-ratio:16/10;object-fit:cover;object-position:50% 30%}
  .abas{
    flex-direction:column;overflow:visible;
    margin:1.8rem 0 0;padding:0;gap:.55rem;
    -webkit-mask-image:none;mask-image:none;
  }
  .abas-tira::after{content:none}
  .aba{width:100%;text-align:left;padding:.85rem 1.25rem;font-size:1.05rem}
  .painel{padding:2.2rem 2.2rem 2.4rem;border-radius:36px;min-height:560px;display:flex;flex-direction:column}
  .painel__icone{width:78px;height:78px;border-radius:24px}
  .painel__icone svg{width:54px;height:54px}
  .painel__topo{flex-direction:row;gap:1.4rem;margin-bottom:1.7rem}
  .lista-check{flex:1 1 auto;display:flex;flex-direction:column;justify-content:space-around;gap:.4rem}
  .lista-check li{margin-bottom:0;font-size:1.03rem}
  .pergunta{padding:1.5rem 1.6rem 1.35rem;margin-top:1.8rem}

  /* --- trilha --- */
  .trilha{
    grid-template-columns:minmax(0,1fr) 120px minmax(0,1fr);
    padding-left:0;gap:0 0;column-gap:0;
  }
  .trilha__linha{left:50%;transform:translateX(-50%);width:120px;top:0;height:calc(100% - 40px)}
  .marco{width:100%;padding:1.5rem 1.6rem 1.4rem;border-radius:26px;align-self:start;height:auto}
  .marco:nth-child(even){grid-column:1;text-align:right;margin-bottom:2.4rem}
  .marco:nth-child(odd){grid-column:3;margin-top:5rem;margin-bottom:2.4rem}
  .marco:nth-child(2),.marco:nth-child(3){grid-row:1}
  .marco:nth-child(4),.marco:nth-child(5){grid-row:2}
  .marco:nth-child(6),.marco:nth-child(7){grid-row:3}
  .marco__selo{width:56px;height:56px;font-size:1.4rem;border-color:var(--ceu-claro);top:22px}
  .marco:nth-child(even) .marco__selo{left:auto;right:-88px}
  .marco:nth-child(odd) .marco__selo{left:-88px}
  .rotina__cabeca{margin-bottom:3.4rem}
  .foto--pe{max-width:240px;transform:rotate(2.5deg)}

  /* --- primeira consulta (imagem sangrando) --- */
  .primeira__grid{
    width:100%;max-width:none;margin:0;
    grid-template-columns:minmax(300px,38vw) minmax(0,1fr);
    gap:clamp(2.5rem,5vw,4.5rem);align-items:start;
  }
  .primeira__fotos{position:sticky;top:96px;gap:0}
  .foto--consultorio{padding:0;border-radius:0 32px 32px 0;background:none;box-shadow:none}
  .foto--consultorio img{border-radius:0 32px 32px 0;aspect-ratio:3/3.5;object-fit:cover}
  .foto--brinquedos{
    width:210px;margin:-70px 0 0 auto;transform:rotate(4deg) translateX(34px);
    position:relative;z-index:3;
  }
  .primeira__texto{
    max-width:660px;
    padding-right:max(1.25rem,calc((100vw - var(--wrap)) / 2));
  }
  .checklist{grid-template-columns:1fr 1fr;gap:1.1rem}
  .checklist li{flex-direction:column;gap:.75rem}

  /* --- urgência --- */
  .urgencia__grid{grid-template-columns:1.55fr 1fr;gap:3.2rem}
  .alarmes{grid-template-columns:1fr 1fr;gap:.9rem}
  .urgencia__card h2{max-width:16ch}
  .urgencia__contato{padding:2rem 1.8rem;border-radius:32px;position:sticky;top:96px}

  /* --- sobre --- */
  .sobre__grid{grid-template-columns:minmax(280px,38%) minmax(0,1fr);gap:clamp(2.5rem,5vw,4.5rem);align-items:start}
  .sobre__retrato{position:sticky;top:96px}
  .retrato{max-width:none;margin:0}
  .retrato__estrela{width:62px;height:62px;top:6%;left:-5%}
  .sobre__texto{padding-top:.5rem}
  .sobre__texto p{font-size:1.06rem}

  /* --- faq --- */
  .faq__grid{grid-template-columns:minmax(260px,33%) minmax(0,1fr);gap:clamp(2.5rem,5vw,4.5rem);align-items:start}
  .faq__lado{position:sticky;top:96px}
  .faq__lado h2{font-size:clamp(1.85rem,2.7vw,2.3rem)}
  .faq__lado .sec__lead{font-size:1rem}
  .foto--desenho{transform:rotate(-2.5deg)}
  .qa summary{padding:1.25rem 1.5rem;font-size:1.12rem}
  .qa__corpo{padding:0 1.5rem 1.4rem}

  /* --- contato --- */
  .contato__grid{grid-template-columns:1.15fr .85fr;gap:clamp(2.5rem,4.5vw,4rem)}
  .info-bloco{padding:1.4rem 1.5rem}
  .foto--espera{transform:rotate(1.5deg)}
  .foto--espera img{aspect-ratio:16/10;object-fit:cover}

  .rodape{padding-bottom:2.6rem}
  .rodape__grid{grid-template-columns:1.3fr 1fr 1fr;gap:3rem}
  .rodape__marca,.rodape__dados,.rodape__nav{grid-column:auto;grid-row:auto}
  .rodape__nav ul{columns:2}
  .rodape__legal{display:flex;justify-content:space-between;gap:2rem;align-items:flex-start}
  .rodape__legal p{max-width:62ch;margin:0}
}

/* =========================================================
   768px – 1179px — menu ainda no botão, mas em cartão ancorado
   à direita (a lista de ponta a ponta fica solta em tela larga)
   ========================================================= */
@media (min-width:768px) and (max-width:1179.98px){
  .nav[data-aberto]{
    left:auto;right:calc((100% - min(100% - 1.6rem,var(--wrap))) / 2);
    width:min(330px,calc(100% - 3.2rem));
    margin-top:.4rem;padding:.7rem 1.1rem 1.15rem;
    border:1.5px solid var(--linha-forte);border-radius:22px;
    box-shadow:0 26px 46px -24px rgba(34,48,90,.55);
  }
}

/* =========================================================
   ≥ 1180px — nav completa no topo
   (abaixo disso o menu segue no botão: seis links + CTA não
    cabem em uma linha e o cabeçalho quebrava em dois andares)
   ========================================================= */
@media (min-width:1180px){
  .menu-btn{display:none}
  .nav,.nav[data-aberto]{display:flex !important;align-items:center;gap:1.35rem;position:static;background:none;border:0;box-shadow:none;padding:0}
  .nav ul,.nav[data-aberto] ul{display:flex;flex-direction:row;align-items:center;gap:1.15rem}
  .nav li+li{border:0}
  .nav a,.nav[data-aberto] a{
    display:inline-block;padding:.35rem 0;min-height:auto;
    font-family:var(--fonte-display);font-weight:500;font-size:.94rem;
    color:var(--marinho);text-decoration:none;position:relative;white-space:nowrap;
  }
  .nav ul a::after{
    content:"";position:absolute;left:0;right:0;bottom:-2px;height:2.5px;border-radius:2px;
    background:var(--sol);transform:scaleX(0);transform-origin:left;
    transition:transform .22s ease;
  }
  .nav ul a:hover::after,.nav ul a:focus-visible::after{transform:scaleX(1)}
  .nav__cta,.nav[data-aberto] .nav__cta{
    display:inline-flex;margin:0;min-height:46px;padding:.55rem 1.1rem;
    font-size:.94rem;white-space:nowrap;
  }
  .marca{flex:none}
}

@media (min-width:1320px){
  .nav,.nav[data-aberto]{gap:1.6rem}
  .nav ul,.nav[data-aberto] ul{gap:1.35rem}
  .nav a,.nav[data-aberto] a{font-size:.96rem}
  .nav__cta,.nav[data-aberto] .nav__cta{font-size:.96rem;padding:.55rem 1.2rem}
}

/* =========================================================
   ≥ 1400px
   ========================================================= */
@media (min-width:1400px){
  :root{--wrap:1280px;--morros-h:340px}
  .hero__texto > *{max-width:700px}
  h1{font-size:4.5rem}
  .painel{padding:2.6rem 2.8rem 2.8rem}
}

/* =========================================================
   MOVIMENTO REDUZIDO
   ========================================================= */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
  }
  .rev{opacity:1;transform:none}
}
