/* ============================================================
   DRA. PATRÍCIA DINIZ — Site institucional
   Paleta e tipografia derivadas do Manual da Marca.
   Nude #EDE6D9 · Degradê Gold #B58C56→#DBB36E · Bronze #956D41
   ============================================================ */

:root{
  /* Paleta da marca */
  --nude:        #ede6d9;   /* nude oficial (RGB 237 230 217) */
  --nude-deep:   #e3d8c7;   /* nude mais fechado p/ contraste */
  --cream:       #f6f1e8;   /* base de página, arejada */
  --ivory:       #fbf8f2;
  --gold:        #b58c56;   /* dourado da marca */
  --gold-bright: #dbb36e;   /* brilho do degradê */
  --gold-soft:   #cba873;
  --bronze:      #956d41;   /* dourado sólido — legibilidade (manual) */
  --bronze-deep: #7d5a34;
  --ink:         #33291f;   /* texto — marrom quase preto, quente */
  --ink-soft:    #6d6152;   /* texto secundário */
  --line:        #e0d4c1;   /* linhas/hairlines */
  --blush:       #f3e7de;   /* leve toque nude-rosado */

  --grad-gold: linear-gradient(100deg, #b58c56 0%, #dbb36e 48%, #e7c98a 60%, #b58c56 100%);

  --serif: "Cormorant Garamond", Georgia, "Times New Roman", serif;
  --sans:  "Jost", -apple-system, "Segoe UI", Helvetica, Arial, sans-serif;

  --maxw: 1180px;
  --gutter: clamp(1.25rem, 5vw, 4rem);
  --radius: 22px;
  --shadow-soft: 0 22px 60px -32px rgba(101,77,45,.35);
  --shadow-card: 0 18px 44px -30px rgba(101,77,45,.42);
  --ease: cubic-bezier(.22,.61,.36,1);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth; -webkit-text-size-adjust:100%}
body{
  margin:0; background:var(--cream); color:var(--ink);
  font-family:var(--sans); font-weight:300; font-size:1.02rem; line-height:1.75;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
img{max-width:100%; display:block}
a{color:inherit; text-decoration:none}
h1,h2,h3{font-family:var(--serif); font-weight:400; line-height:1.08; margin:0; letter-spacing:.005em}
p{margin:0 0 1.1em}

/* --- Utilitários de layout --- */
.wrap{max-width:var(--maxw); margin:0 auto; padding-inline:var(--gutter)}
.section{padding-block:clamp(4.5rem, 9vw, 8.5rem)}
.eyebrow{
  font-family:var(--sans); font-weight:400; font-size:.72rem;
  letter-spacing:.42em; text-transform:uppercase; color:var(--bronze);
  display:inline-flex; align-items:center; gap:.9rem; margin-bottom:1.4rem;
}
.eyebrow::before{content:""; width:34px; height:1px; background:var(--gold)}
.display{ font-size:clamp(2.4rem, 5.6vw, 4.5rem); font-weight:300; letter-spacing:-.01em }
.display em{ font-style:italic; color:var(--bronze) }
.lede{ font-size:clamp(1.05rem,1.7vw,1.24rem); color:var(--ink-soft); max-width:56ch; font-weight:300 }
.goldtext{
  background:var(--grad-gold); -webkit-background-clip:text; background-clip:text;
  -webkit-text-fill-color:transparent; color:var(--bronze);
}

/* Regra hairline com brilho dourado — elemento de assinatura */
.rule{height:1px; border:0; background:linear-gradient(90deg,transparent,var(--gold-soft),transparent); margin:0}

/* --- Botões --- */
.btn{
  font-family:var(--sans); font-weight:400; font-size:.82rem; letter-spacing:.16em;
  text-transform:uppercase; display:inline-flex; align-items:center; gap:.7rem;
  padding:1.05em 1.9em; border-radius:100px; cursor:pointer; border:1px solid transparent;
  transition:transform .5s var(--ease), box-shadow .5s var(--ease), background .5s var(--ease), color .4s;
  will-change:transform;
}
.btn svg{width:1.05em; height:1.05em; flex:0 0 auto}
.btn-gold{ color:#fff; background:var(--bronze); box-shadow:0 14px 30px -14px rgba(149,109,65,.7) }
.btn-gold:hover{ transform:translateY(-3px); box-shadow:0 22px 40px -14px rgba(149,109,65,.85); background:var(--bronze-deep) }
.btn-ghost{ color:var(--bronze); border-color:var(--gold-soft); background:transparent }
.btn-ghost:hover{ transform:translateY(-3px); background:var(--nude); border-color:var(--gold) }
.btn-wa{ color:#fff; background:#4b7a54 }
.btn-wa:hover{ transform:translateY(-3px); background:#3f6a47; box-shadow:0 20px 38px -16px rgba(63,106,71,.6) }

/* ============================================================ HEADER */
.site-header{
  position:fixed; inset:0 0 auto 0; z-index:60;
  transition:background .6s var(--ease), box-shadow .6s var(--ease), padding .6s var(--ease);
  padding-block:1.4rem;
}
.site-header.scrolled{
  background:rgba(246,241,232,.86); backdrop-filter:blur(14px) saturate(1.1);
  box-shadow:0 1px 0 var(--line); padding-block:.7rem;
}
.nav{display:flex; align-items:center; justify-content:space-between; gap:2rem}
.nav-logo img{height:clamp(52px,7vw,122px); width:auto; transition:height .6s var(--ease)}
.scrolled .nav-logo img{height:54px}
.nav-links{display:flex; align-items:center; gap:2.1rem; list-style:none; margin:0; padding:0}
.nav-links a{
  font-family:var(--sans); font-weight:400; font-size:.76rem; letter-spacing:.18em;
  text-transform:uppercase; color:var(--ink); position:relative; padding-block:.3rem;
}
.nav-links a::after{content:""; position:absolute; left:0; bottom:0; width:0; height:1px; background:var(--gold); transition:width .45s var(--ease)}
.nav-links a:hover{color:var(--bronze)}
.nav-links a:hover::after{width:100%}
.nav-cta{display:flex; align-items:center; gap:.9rem}
.nav-cta .btn{padding:.8em 1.5em; font-size:.74rem}
.menu-toggle{display:none; background:none; border:0; cursor:pointer; width:40px; height:40px; position:relative}
.menu-toggle span{position:absolute; left:8px; right:8px; height:1.5px; background:var(--ink); transition:.4s var(--ease)}
.menu-toggle span:nth-child(1){top:14px} .menu-toggle span:nth-child(2){top:20px} .menu-toggle span:nth-child(3){top:26px}
body.menu-open .menu-toggle span:nth-child(1){top:20px; transform:rotate(45deg)}
body.menu-open .menu-toggle span:nth-child(2){opacity:0}
body.menu-open .menu-toggle span:nth-child(3){top:20px; transform:rotate(-45deg)}

/* ============================================================ HERO */
.hero{position:relative; padding-top:clamp(8rem,16vw,11rem);padding-bottom:clamp(3rem,8vw,7rem); overflow:hidden}
.hero::before{ /* halo dourado suave */
  content:""; position:absolute; top:-18%; right:-12%; width:60vw; height:60vw; max-width:760px; max-height:760px;
  background:radial-gradient(circle at center, rgba(219,179,110,.20), rgba(219,179,110,0) 62%);
  z-index:0; pointer-events:none;
}
.hero-grid{position:relative; z-index:1; display:grid; grid-template-columns:1.05fr .95fr; gap:clamp(2rem,5vw,5rem); align-items:center}
.hero-copy{max-width:38rem}
.hero h1{margin-bottom:1.5rem}
.hero .lede{margin-bottom:2.4rem}
.hero-actions{display:flex; flex-wrap:wrap; gap:1rem; margin-bottom:2.6rem}
.hero-meta{display:flex; align-items:center; gap:1.6rem; flex-wrap:wrap; color:var(--ink-soft); font-size:.82rem; letter-spacing:.04em}
.hero-meta .dot{width:5px; height:5px; border-radius:50%; background:var(--gold); display:inline-block; margin-right:.7rem; vertical-align:middle}

.hero-figure{position:relative}
.hero-photo{
  position:relative; border-radius:220px 220px 26px 26px; overflow:hidden;
  box-shadow:var(--shadow-soft); background:var(--nude);
  aspect-ratio:900/1180;
}
.hero-photo img{width:100%; height:100%; object-fit:cover; object-position:top center}
.hero-badge{
  position:absolute; left:-8%; bottom:6%; width:clamp(108px,13vw,158px); z-index:2;
  background:rgba(251,248,242,.9); backdrop-filter:blur(6px); border-radius:50%;
  padding:14px; box-shadow:var(--shadow-card);
  animation:floaty 6s ease-in-out infinite;
}
.hero-badge img{width:100%}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}

/* Selo de credibilidade */
.trust{
  margin-top:clamp(3rem,6vw,5rem); display:flex; flex-wrap:wrap; gap:clamp(1.4rem,4vw,3.4rem);
  justify-content:center; align-items:center; text-align:center;
}
.trust-item{max-width:15rem}
.trust-item .num{font-family:var(--serif); font-size:2.3rem; color:var(--bronze); line-height:1; display:block}
.trust-item .lab{font-size:.74rem; letter-spacing:.16em; text-transform:uppercase; color:var(--ink-soft); margin-top:.5rem}

/* ============================================================ SOBRE */
#sobre{background:var(--nude)}
.about-grid{display:grid; grid-template-columns:.9fr 1.1fr; gap:clamp(2.2rem,5vw,5rem); align-items:center}
.about-figure{position:relative}
.about-figure .frame{
  border-radius:26px 26px 200px 200px; overflow:hidden; box-shadow:var(--shadow-soft);
  aspect-ratio:820/1040; background:var(--cream);
}
.about-figure .frame img{width:100%; height:100%; object-fit:cover; object-position:top center}
.about-figure .mono{position:absolute; right:-6%; top:-7%; width:clamp(92px,12vw,140px); opacity:.9}
.about-figure .mono img{width:100%}
.about-copy h2{font-size:clamp(2rem,4vw,3.1rem); font-weight:300; margin-bottom:1.4rem}
.sign{
  font-family:var(--serif); font-style:italic; font-size:1.5rem; color:var(--bronze);
  margin-top:1.6rem;
}
.creds{display:flex; gap:2.4rem; flex-wrap:wrap; margin-top:2rem; padding-top:1.7rem; border-top:1px solid var(--line)}
.creds div span{display:block}
.creds .k{font-size:.68rem; letter-spacing:.2em; text-transform:uppercase; color:var(--ink-soft)}
.creds .v{font-family:var(--serif); font-size:1.35rem; color:var(--bronze); margin-top:.2rem}

/* ============================================================ DIFERENCIAIS */
.head-center{text-align:center; max-width:44rem; margin:0 auto clamp(3rem,6vw,4.5rem)}
.head-center .eyebrow{justify-content:center}
.head-center .eyebrow::before{display:none}
.head-center h2{font-size:clamp(2rem,4.4vw,3.3rem); font-weight:300}
.head-center p{color:var(--ink-soft); margin-top:1rem}

.cards{display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(1rem,2vw,1.6rem)}
.card{
  background:var(--ivory); border:1px solid var(--line); border-radius:var(--radius);
  padding:2.4rem 2rem; transition:transform .55s var(--ease), box-shadow .55s var(--ease), border-color .55s;
}
.card:hover{transform:translateY(-8px); box-shadow:var(--shadow-card); border-color:var(--gold-soft)}
.card .ic{width:52px; height:52px; margin-bottom:1.4rem; color:var(--bronze)}
.card .ic svg{width:100%; height:100%; stroke-width:1.1}
.card h3{font-size:1.5rem; font-weight:500; margin-bottom:.6rem}
.card p{font-size:.94rem; color:var(--ink-soft); margin:0}

/* ============================================================ ÁREAS DE ATUAÇÃO */
#atuacao{background:linear-gradient(180deg,var(--nude),var(--nude-deep))}
.svc-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); border:1px solid var(--line); border-radius:var(--radius); overflow:hidden}
.svc{
  background:var(--nude); padding:2.1rem 1.9rem; transition:background .5s var(--ease);
  position:relative;
}
.svc:hover{background:var(--ivory)}
.svc .n{font-family:var(--serif); font-style:italic; font-size:.95rem; color:var(--gold); display:block; margin-bottom:.7rem}
.svc h3{font-size:1.32rem; font-weight:500; margin-bottom:.45rem}
.svc p{font-size:.9rem; color:var(--ink-soft); margin:0}

/* ============================================================ JORNADA */
.journey{display:grid; grid-template-columns:repeat(5,1fr); gap:clamp(1rem,2.2vw,2rem); position:relative}
.journey::before{content:""; position:absolute; top:26px; left:8%; right:8%; height:1px; background:linear-gradient(90deg,transparent,var(--gold-soft),var(--gold-soft),transparent); z-index:0}
.step{position:relative; z-index:1; text-align:center}
.step .ring{
  width:54px; height:54px; border-radius:50%; margin:0 auto 1.4rem; display:grid; place-items:center;
  background:var(--ivory); border:1px solid var(--gold-soft); color:var(--bronze);
  font-family:var(--serif); font-size:1.4rem; box-shadow:0 8px 22px -14px rgba(149,109,65,.5);
}
.step h3{font-size:1.3rem; font-weight:500; margin-bottom:.4rem}
.step p{font-size:.88rem; color:var(--ink-soft); margin:0}

/* ============================================================ CUIDADO (depoimentos/valores — compatível CFM) */
#cuidado{background:var(--ink); color:var(--nude)}
#cuidado .eyebrow{color:var(--gold-bright)}
#cuidado .eyebrow::before{background:var(--gold)}
.care-quote{
  font-family:var(--serif); font-weight:300; font-size:clamp(1.7rem,3.6vw,2.9rem);
  line-height:1.28; max-width:22ch; margin:0 0 2rem;
}
.care-quote em{font-style:italic; color:var(--gold-bright)}
.care-grid{display:grid; grid-template-columns:1.2fr .8fr; gap:clamp(2rem,5vw,4rem); align-items:end}
.care-note{
  border:1px solid rgba(219,179,110,.35); border-radius:var(--radius); padding:1.8rem;
  background:rgba(255,255,255,.03); font-size:.92rem; color:rgba(237,230,217,.8);
}
.care-note strong{color:var(--gold-bright); font-weight:400}
.care-values{list-style:none; margin:0; padding:0; display:grid; gap:1rem}
.care-values li{display:flex; gap:.9rem; align-items:flex-start; color:rgba(237,230,217,.9); font-size:.98rem}
.care-values svg{width:20px; height:20px; color:var(--gold-bright); flex:0 0 auto; margin-top:.25rem}

/* ============================================================ CLÍNICA */
.clinic-grid{display:grid; grid-template-columns:1fr 1fr; gap:clamp(2rem,5vw,4.5rem); align-items:center}
.clinic-copy h2{font-size:clamp(2rem,4vw,3.1rem); font-weight:300; margin-bottom:1.2rem}
.clinic-feats{list-style:none; margin:1.8rem 0 0; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:1.1rem 1.6rem}
.clinic-feats li{display:flex; gap:.7rem; align-items:center; font-size:.95rem; color:var(--ink-soft)}
.clinic-feats svg{width:18px; height:18px; color:var(--gold); flex:0 0 auto}
.clinic-visual{
  border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow-soft);
  background:linear-gradient(150deg,var(--nude),var(--blush)); aspect-ratio:5/4;
  display:grid; place-items:center; position:relative; padding:2rem; text-align:center;
}
.clinic-visual .badge-lg{width:min(64%,260px); opacity:.92}
.clinic-visual .cap{position:absolute; bottom:1.4rem; left:0; right:0; font-size:.72rem; letter-spacing:.22em; text-transform:uppercase; color:var(--bronze)}

/* ============================================================ FAQ */
#faq{background:var(--nude)}
.faq-wrap{max-width:820px; margin:0 auto}
.faq{border-top:1px solid var(--line)}
.faq summary{
  list-style:none; cursor:pointer; padding:1.5rem .3rem; display:flex; justify-content:space-between; gap:1.5rem;
  align-items:center; font-family:var(--serif); font-size:clamp(1.15rem,2.2vw,1.5rem); font-weight:500; color:var(--ink);
  transition:color .4s;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary:hover{color:var(--bronze)}
.faq .sign-plus{width:22px; height:22px; flex:0 0 auto; position:relative; transition:transform .5s var(--ease)}
.faq .sign-plus::before,.faq .sign-plus::after{content:""; position:absolute; background:var(--gold); border-radius:2px}
.faq .sign-plus::before{top:10px; left:0; right:0; height:1.5px}
.faq .sign-plus::after{left:10px; top:0; bottom:0; width:1.5px; transition:transform .5s var(--ease)}
.faq[open] .sign-plus{transform:rotate(180deg)}
.faq[open] .sign-plus::after{transform:scaleY(0)}
.faq .ans{padding:0 .3rem 1.6rem; color:var(--ink-soft); max-width:66ch}
.faq .ans p{margin:0}

/* ============================================================ CTA FINAL */
#agendar{position:relative; text-align:center; overflow:hidden; background:linear-gradient(160deg,var(--bronze),var(--bronze-deep))}
#agendar::before{content:""; position:absolute; inset:0; background:radial-gradient(circle at 20% 0%, rgba(231,201,138,.35), transparent 55%); pointer-events:none}
#agendar .wrap{position:relative}
#agendar .eyebrow{color:var(--nude); justify-content:center}
#agendar .eyebrow::before{display:none}
#agendar h2{color:#fff; font-size:clamp(2.2rem,5vw,3.9rem); font-weight:300; max-width:20ch; margin:0 auto 1.4rem}
#agendar h2 em{font-style:italic; color:var(--nude)}
#agendar p{color:rgba(255,255,255,.85); max-width:46ch; margin:0 auto 2.6rem}
#agendar .hero-actions{justify-content:center}
#agendar .btn-ghost{color:#fff; border-color:rgba(255,255,255,.5)}
#agendar .btn-ghost:hover{background:rgba(255,255,255,.12); border-color:#fff}

/* ============================================================ FOOTER */
.site-footer{background:var(--ink); color:rgba(237,230,217,.75); padding-block:clamp(3.5rem,7vw,5.5rem) 2rem}
.foot-grid{display:grid; grid-template-columns:1.4fr 1fr 1fr 1.2fr; gap:clamp(2rem,4vw,3rem)}
.foot-logo img{width:200px; margin-bottom:1.4rem}
.foot-grid h4{font-family:var(--sans); font-weight:500; font-size:.74rem; letter-spacing:.22em; text-transform:uppercase; color:var(--gold-bright); margin:0 0 1.2rem}
.foot-grid ul{list-style:none; margin:0; padding:0; display:grid; gap:.7rem; font-size:.92rem}
.foot-grid a:hover{color:var(--gold-bright)}
.foot-map{border-radius:16px; overflow:hidden; border:1px solid rgba(219,179,110,.25); aspect-ratio:16/10}
.foot-map iframe{width:100%; height:100%; border:0; filter:grayscale(.3) sepia(.12)}
.foot-social{display:flex; gap:.8rem; margin-top:1.2rem}
.foot-social a{width:40px; height:40px; border-radius:50%; border:1px solid rgba(219,179,110,.4); display:grid; place-items:center; color:var(--nude); transition:.4s var(--ease)}
.foot-social a:hover{background:var(--gold); color:var(--ink); transform:translateY(-3px)}
.foot-social svg{width:18px; height:18px}
.foot-bottom{margin-top:3rem; padding-top:1.8rem; border-top:1px solid rgba(219,179,110,.18); display:flex; justify-content:space-between; gap:1rem; flex-wrap:wrap; font-size:.8rem; color:rgba(237,230,217,.55)}
.foot-bottom a{text-decoration:underline; text-underline-offset:3px}
.disclaimer{font-size:.76rem; color:rgba(237,230,217,.45); max-width:70ch; margin-top:1rem; line-height:1.7}

/* ============================================================ WHATSAPP FLOAT */
.wa-float{
  position:fixed; right:clamp(1rem,3vw,2rem); bottom:clamp(1rem,3vw,2rem); z-index:70;
  width:60px; height:60px; border-radius:50%; background:#4b7a54; color:#fff; display:grid; place-items:center;
  box-shadow:0 14px 34px -10px rgba(63,106,71,.7); transition:transform .5s var(--ease);
  animation:pulse 2.6s ease-in-out infinite;
}
.wa-float:hover{transform:scale(1.08)}
.wa-float svg{width:30px; height:30px}
@keyframes pulse{0%,100%{box-shadow:0 14px 34px -10px rgba(63,106,71,.7)}50%{box-shadow:0 14px 34px -10px rgba(63,106,71,.7), 0 0 0 12px rgba(75,122,84,0)}}

/* ============================================================ SCROLL REVEAL */
.reveal{opacity:0; transform:translateY(26px); transition:opacity 1s var(--ease), transform 1s var(--ease)}
.reveal.in{opacity:1; transform:none}
.reveal.d1{transition-delay:.08s} .reveal.d2{transition-delay:.16s} .reveal.d3{transition-delay:.24s} .reveal.d4{transition-delay:.32s}

/* ============================================================ RESPONSIVO */
@media (max-width:960px){
  .nav-links, .nav-cta .btn-ghost{display:none}
  .menu-toggle{display:block}
  .nav-links{
    position:fixed; inset:0; background:var(--cream); flex-direction:column; justify-content:center;
    gap:2.2rem; transform:translateX(100%); transition:transform .6s var(--ease); z-index:55;
  }
  body.menu-open .nav-links{display:flex; transform:none}
  .nav-links a{font-size:1.1rem}
  .hero-grid, .about-grid, .care-grid, .clinic-grid{grid-template-columns:1fr}
  .hero-figure{max-width:420px; margin:0 auto; order:-1}
  .about-figure{max-width:420px; margin:0 auto}
  .cards{grid-template-columns:1fr 1fr}
  .svc-grid{grid-template-columns:1fr 1fr}
  .journey{grid-template-columns:1fr 1fr}
  .journey::before{display:none}
  .foot-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:600px){
  .cards, .svc-grid, .journey, .clinic-feats, .foot-grid{grid-template-columns:1fr}
  .hero-badge{left:auto; right:4%}
  .creds{gap:1.4rem}
  .foot-map{grid-column:1/-1}
}

@media (prefers-reduced-motion:reduce){
  *{animation:none !important; transition-duration:.001ms !important}
  html{scroll-behavior:auto}
  .reveal{opacity:1; transform:none}
}

/* Foco visível (acessibilidade) */
a:focus-visible, button:focus-visible, summary:focus-visible{outline:2px solid var(--bronze); outline-offset:3px; border-radius:6px}
/* ============================================================ UNIDADES (Clínica)
   Cards de endereço com mapa, telefone e rota — usados na seção Clínica. */
.units{display:grid; gap:1.4rem; align-content:start}
.units--row{grid-template-columns:1fr 1fr}
/* faixa de destaques da clínica, centralizada acima dos cards */
.clinic-feats--row{
  display:flex; flex-wrap:wrap; justify-content:center; gap:.9rem 2.2rem;
  max-width:60rem; margin:2.4rem auto clamp(2.6rem,5vw,3.6rem);
}
.clinic-feats--row li{justify-content:center}
.unit{
  background:var(--ivory); border:1px solid var(--line); border-radius:var(--radius);
  overflow:hidden; transition:transform .55s var(--ease), box-shadow .55s var(--ease), border-color .55s;
}
.unit:hover{transform:translateY(-6px); box-shadow:var(--shadow-card); border-color:var(--gold-soft)}
.unit-map{aspect-ratio:16/7; background:var(--nude)}
.unit-map iframe{width:100%; height:100%; border:0; filter:grayscale(.25) sepia(.1)}
.unit-body{padding:1.5rem 1.6rem 1.6rem}
.unit-city{
  display:inline-flex; align-items:center; gap:.55rem; font-family:var(--serif);
  font-size:1.45rem; font-weight:500; color:var(--ink); margin-bottom:.6rem;
}
.unit-city svg{width:20px; height:20px; color:var(--bronze); flex:0 0 auto; stroke-width:1.4}
.unit-addr{font-size:.95rem; color:var(--ink-soft); margin:0 0 1.1rem; line-height:1.7}
.unit-foot{display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap; padding-top:1rem; border-top:1px solid var(--line)}
.unit-phone{display:inline-flex; align-items:center; gap:.5rem; font-size:.92rem; color:var(--bronze); font-weight:400; transition:color .4s}
.unit-phone svg{width:16px; height:16px; flex:0 0 auto; stroke-width:1.4}
.unit-phone:hover{color:var(--bronze-deep)}
.unit-route{
  font-family:var(--sans); font-size:.74rem; letter-spacing:.14em; text-transform:uppercase;
  color:var(--bronze); padding:.5em 1.1em; border:1px solid var(--gold-soft); border-radius:100px;
  transition:background .4s var(--ease), transform .4s var(--ease);
}
.unit-route:hover{background:var(--nude); transform:translateY(-2px)}

/* Empilhar as unidades em telas menores — declarado após a regra base para prevalecer */
@media (max-width:820px){
  .units--row{grid-template-columns:1fr}
}  
/* ============================================================ SELETOR DE UNIDADE (modal de agendamento) */
.agendar-modal{position:fixed; inset:0; z-index:100; display:grid; place-items:center; padding:1.2rem}
.agendar-modal[hidden]{display:none}
.agendar-backdrop{position:absolute; inset:0; background:rgba(51,41,31,.55); backdrop-filter:blur(4px); animation:fade .4s var(--ease)}
.agendar-box{
  position:relative; z-index:1; width:min(560px,100%); background:var(--ivory);
  border:1px solid var(--line); border-radius:var(--radius); padding:clamp(1.8rem,4vw,2.8rem);
  box-shadow:0 40px 90px -30px rgba(51,41,31,.6); text-align:center; animation:pop .5s var(--ease);
}
.agendar-box h3{font-family:var(--serif); font-weight:500; font-size:clamp(1.5rem,3vw,2rem); color:var(--ink); margin:.4rem 0 .5rem}
.agendar-sub{color:var(--ink-soft); font-size:.95rem; margin:0 0 1.8rem}
.agendar-close{
  position:absolute; top:.9rem; right:1.1rem; width:38px; height:38px; border-radius:50%;
  border:1px solid var(--line); background:transparent; color:var(--ink-soft); font-size:1.4rem; line-height:1;
  cursor:pointer; transition:.35s var(--ease);
}
.agendar-close:hover{background:var(--nude); color:var(--ink)}
.agendar-options{display:grid; grid-template-columns:1fr 1fr; gap:1rem}
.agendar-opt{
  display:flex; flex-direction:column; align-items:center; gap:.35rem; text-align:center;
  padding:1.6rem 1.1rem; border:1px solid var(--line); border-radius:16px; background:var(--cream);
  transition:transform .45s var(--ease), box-shadow .45s var(--ease), border-color .45s;
}
.agendar-opt:hover{transform:translateY(-5px); box-shadow:var(--shadow-card); border-color:var(--gold-soft)}
.ao-wa{width:46px; height:46px; border-radius:50%; background:#4b7a54; color:#fff; display:grid; place-items:center; margin-bottom:.5rem}
.ao-wa svg{width:26px; height:26px}
.ao-city{font-family:var(--serif); font-size:1.35rem; font-weight:500; color:var(--ink)}
.ao-addr{font-size:.82rem; color:var(--ink-soft); line-height:1.5}
.ao-go{margin-top:.5rem; font-family:var(--sans); font-size:.72rem; letter-spacing:.14em; text-transform:uppercase; color:var(--bronze)}
@keyframes fade{from{opacity:0}to{opacity:1}}
@keyframes pop{from{opacity:0; transform:translateY(16px) scale(.98)}to{opacity:1; transform:none}}
@media (max-width:460px){ .agendar-options{grid-template-columns:1fr} }

/* Botão "Ver avaliações no Doctoralia" na seção de valores */
.care-link{
  display:inline-flex; align-items:center; gap:.5rem;
  font-family:var(--sans); font-size:.78rem; letter-spacing:.14em; text-transform:uppercase;
  color:var(--gold-bright); padding:.85em 1.5em; border:1px solid rgba(219,179,110,.5);
  border-radius:100px; transition:background .4s var(--ease), transform .4s var(--ease);
}
.care-link:hover{ background:rgba(219,179,110,.12); transform:translateY(-2px); }