/* ==========================================================================
   ELAS Imagem — folha de estilo única do site
   Paleta e tipografia da identidade da marca (manual LOGO NOVO)
   ========================================================================== */

:root{
  /* Paleta do site no ar (elasimagem.com) — verde sálvia, dourado e creme */
  --cream:        #F6F1E7;
  --cream-deep:   #EDE3D2;
  --sand:         #E3D8C4;
  --ink:          #4A3B30;
  --ink-soft:     #8C7B67;
  --gold:         #C6A354;
  --gold-deep:    #9A7B33;
  --gold-soft:    #E3D2A4;
  --green:        #3F4B3C;
  --green-mid:    #333E31;
  --white:        #FFFFFF;
  --line:         rgba(74,59,48,0.15);
  --line-light:   rgba(246,241,231,0.18);
  --shadow:       0 18px 48px rgba(74,59,48,0.10);
  --radius:       2px;
  --wrap:         1160px;
}

*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{
  background:var(--cream);
  color:var(--ink);
  font-family:'Jost', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-weight:300;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
h1,h2,h3,h4,h5{
  font-family:'Cormorant Garamond', Georgia, serif;
  font-weight:500;
  color:var(--ink);
  line-height:1.12;
}
a{color:inherit; text-decoration:none;}
img{max-width:100%; display:block;}
::selection{background:var(--gold-soft); color:var(--ink);}

.wrap{max-width:var(--wrap); margin:0 auto; padding:0 32px;}
.wrap-narrow{max-width:840px; margin:0 auto; padding:0 32px;}
section{padding:96px 0;}
.eyebrow{
  font-family:'Jost', sans-serif;
  text-transform:uppercase;
  letter-spacing:0.28em;
  font-size:11.5px;
  color:var(--gold-deep);
  font-weight:500;
  display:block;
}
.section-head{max-width:660px; margin-bottom:52px;}
.section-head h2{font-size:clamp(30px,3.4vw,44px); margin-top:12px;}
.section-head p{color:var(--ink-soft); margin-top:16px; font-size:16px; max-width:58ch;}
.section-head.center{margin-left:auto; margin-right:auto; text-align:center;}
.section-head.center p{margin-left:auto; margin-right:auto;}

.btn{
  display:inline-block; padding:14px 30px; font-size:12.5px;
  letter-spacing:0.1em; text-transform:uppercase; font-weight:400;
  border-radius:var(--radius); border:1px solid transparent;
  transition:background .25s ease, color .25s ease, border-color .25s ease, transform .2s ease;
  cursor:pointer;
}
.btn:hover{transform:translateY(-1px);}
.btn-primary{background:var(--gold); color:#2E2A22;}
.btn-primary:hover{background:var(--gold-deep); color:var(--white);}
.btn-outline{border-color:var(--ink); color:var(--ink);}
.btn-outline:hover{background:var(--ink); color:var(--white);}
.btn-light{border-color:rgba(246,241,231,0.55); color:var(--cream);}
.btn-light:hover{background:var(--cream); color:var(--green);}
.btn-green{background:var(--green); color:var(--white);}
.btn-green:hover{background:var(--green-mid);}

/* ---------------- NAV ---------------- */
header.nav{
  position:sticky; top:0; z-index:100;
  background:rgba(246,241,231,0.94);
  backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line);
}
.nav-inner{
  max-width:var(--wrap); margin:0 auto; padding:14px 32px;
  display:flex; align-items:center; justify-content:space-between; gap:24px;
}
.nav-logo img{height:46px; width:auto;}
.nav-links{display:flex; gap:26px; align-items:center;}
.nav-links a{
  font-size:12.5px; letter-spacing:0.09em; text-transform:uppercase;
  color:var(--ink-soft); transition:color .25s ease; position:relative; padding:4px 0;
}
.nav-links a::after{
  content:''; position:absolute; left:0; bottom:0; height:1px; width:0;
  background:var(--gold); transition:width .28s ease;
}
.nav-links a:hover{color:var(--gold-deep);}
.nav-links a:hover::after{width:100%;}
.nav-links a.is-active{color:var(--green); font-weight:400;}
.nav-links a.is-active::after{width:100%; background:var(--gold);}
.nav-cta{
  background:var(--green); color:var(--white)!important;
  padding:11px 22px; border-radius:var(--radius); font-size:12px;
  letter-spacing:0.08em; text-transform:uppercase; white-space:nowrap;
  transition:background .25s ease;
}
.nav-cta:hover{background:var(--green-mid);}
.nav-links .nav-cta-mobile{display:none;}
.nav-toggle{
  display:none; background:none; border:0; cursor:pointer;
  width:40px; height:36px; padding:8px; flex:none;
}
.nav-toggle span{
  display:block; height:1.5px; background:var(--ink); margin:5px 0;
  transition:transform .3s ease, opacity .25s ease;
}
.nav-toggle.is-open span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
.nav-toggle.is-open span:nth-child(2){opacity:0;}
.nav-toggle.is-open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}

/* ---------------- HERO ---------------- */
.hero{background:var(--cream); padding:60px 0 0;}
.hero-inner{max-width:var(--wrap); margin:0 auto; padding:0 32px 44px; text-align:center;}
.hero h1{font-size:clamp(34px,5vw,60px); margin:12px auto 22px; max-width:20ch;}
.hero h1 em{font-style:italic; color:var(--green);}
.hero p.lead{max-width:56ch; margin:0 auto 30px; font-size:17px; color:var(--ink-soft);}
.hero-actions{display:flex; gap:14px; flex-wrap:wrap; justify-content:center;}
.hero-photo{width:100%; aspect-ratio:1600/800; max-height:78vh; overflow:hidden; position:relative;}
.hero-photo img{width:100%; height:100%; object-fit:cover; object-position:center top;}
.hero-photo::after{
  content:''; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(45,54,42,0) 55%, rgba(45,54,42,0.38) 100%);
}

/* Cabeçalho interno das páginas secundárias */
.page-head{background:var(--green); color:var(--cream); padding:74px 0 66px; text-align:center;}
.page-head .eyebrow{color:var(--gold-soft);}
.page-head h1{color:var(--white); font-size:clamp(32px,4.4vw,52px); margin:14px auto 18px; max-width:22ch;}
.page-head p{color:rgba(246,241,231,0.82); max-width:60ch; margin:0 auto; font-size:16.5px;}
.breadcrumb{
  font-size:11.5px; letter-spacing:.1em; text-transform:uppercase;
  color:rgba(246,241,231,0.6); margin-bottom:18px;
}
.breadcrumb a:hover{color:var(--gold-soft);}

/* ---------------- ATALHOS (cards clicáveis) ---------------- */
.shortcuts{background:var(--white); padding:80px 0;}
.shortcut-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.shortcut{
  display:block; background:var(--cream); border:1px solid var(--line);
  padding:34px 30px; transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.shortcut:hover{transform:translateY(-4px); box-shadow:var(--shadow); border-color:var(--gold);}
.shortcut .ic{width:34px; height:34px; margin-bottom:18px;}
.shortcut h3{font-size:23px; margin-bottom:8px;}
.shortcut p{font-size:14.5px; color:var(--ink-soft); margin-bottom:16px;}
.shortcut .go{white-space:nowrap; font-size:11.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--gold-deep);}

/* ---------------- SOBRE ---------------- */
.about{background:var(--white);}
.about-grid{display:grid; grid-template-columns:1.15fr 0.85fr; gap:80px; align-items:start;}
.about-copy p{margin-bottom:20px; font-size:17px; line-height:1.78;}
.about-copy p.lead{font-size:19px; line-height:1.7; color:var(--ink);}
.about-copy p strong{font-weight:500;}
.pull{
  border:0; border-top:1px solid var(--line); border-bottom:1px solid var(--line);
  padding:30px 0; margin:38px 0;
  font-family:'Cormorant Garamond', serif; font-style:italic;
  font-size:26px; line-height:1.42; color:var(--green); text-align:center;
}
.about-side{background:transparent; border:0; border-left:1px solid var(--line); padding:6px 0 6px 44px;}
.about-side h3{font-size:26px; margin-bottom:26px;}
.mission-block{margin-bottom:30px;}
.mission-block .eyebrow{margin-bottom:6px;}
.mission-block p{font-size:15.5px; color:var(--ink-soft); line-height:1.75;}
.values-list{display:flex; flex-wrap:wrap; gap:8px 12px; margin-top:14px;}
.values-list span{
  font-size:12.5px; color:var(--ink-soft); padding:0;
  border:0; border-radius:0; background:none; letter-spacing:.04em;
}
.values-list span:not(:last-child)::after{content:'·'; color:var(--gold); margin-left:12px;}

/* ---------------- DIFERENCIAIS (lista editorial) ---------------- */
.diff{background:var(--white);}
.diff-inner{display:grid; grid-template-columns:0.85fr 1.15fr; gap:80px; align-items:start;}
.diff-intro{position:sticky; top:110px;}
.diff-intro h2{font-size:clamp(30px,3.4vw,44px); margin-top:12px; max-width:13ch;}
.diff-intro p{color:var(--ink-soft); margin-top:20px; font-size:16px; max-width:34ch;}
.diff-intro .rule{width:56px; height:1px; background:var(--gold); margin-top:28px;}
.diff-list{counter-reset:d;}
.diff-item{
  counter-increment:d; display:grid; grid-template-columns:52px 1fr; gap:22px;
  padding:26px 0; border-top:1px solid var(--line);
}
.diff-item:last-child{border-bottom:1px solid var(--line);}
.diff-item::before{
  content:counter(d,decimal-leading-zero);
  font-family:'Cormorant Garamond',serif; font-size:26px; color:var(--gold);
  line-height:1.1; padding-top:2px;
}
.diff-item h4{font-size:23px; margin-bottom:8px; font-weight:500;}
.diff-item p{font-size:15px; color:var(--ink-soft); max-width:46ch;}
@media (max-width:900px){
  .diff-inner{grid-template-columns:1fr; gap:36px;}
  .diff-intro{position:static;}
  .diff-item{grid-template-columns:40px 1fr; gap:16px; padding:22px 0;}
  .diff-item::before{font-size:22px;}
  .diff-item h4{font-size:21px;}
}

/* ---------------- MODELO / PARCERIA ---------------- */
.modelo{background:var(--white);}
.modelo-grid{display:grid; grid-template-columns:1fr 1fr; gap:64px;}
.steps{counter-reset:step;}
.step{display:grid; grid-template-columns:44px 1fr; gap:18px; padding:20px 0; border-bottom:1px solid var(--line);}
.step:first-child{padding-top:0;}
.step:last-child{border-bottom:none;}
.step-num{counter-increment:step; font-family:'Cormorant Garamond',serif; font-size:26px; color:var(--gold); }
.step-num::before{content:counter(step, decimal-leading-zero);}
.step p{font-size:15px;}
.partnership-box{
  background:var(--green); color:var(--cream); padding:44px 38px;
  display:flex; flex-direction:column; justify-content:space-between;
}
.partnership-box h3{color:var(--white); font-size:26px; margin-bottom:14px;}
.partnership-box p{font-size:15px; color:rgba(246,241,231,0.82); margin-bottom:28px;}
.partnership-box .btn{align-self:flex-start;}
.patients-note{margin-top:36px; background:var(--cream); border:1px solid var(--line); padding:28px 30px;}
.patients-note h4{font-size:19px; margin-bottom:8px; color:var(--green);}
.patients-note p{font-size:14.5px; color:var(--ink-soft); margin-bottom:16px;}

/* ---------------- CRB ---------------- */
.crb-spotlight{position:relative; background:var(--green); padding:88px 0; overflow:hidden;}
.crb-spotlight-bg{position:absolute; inset:0; background-size:cover; background-position:center 30%;}
.crb-spotlight-bg::after{content:''; position:absolute; inset:0; background:linear-gradient(180deg, rgba(38,46,36,0.84), rgba(38,46,36,0.9));}
.crb-spotlight-inner{position:relative; z-index:1; display:grid; grid-template-columns:240px 1fr; gap:56px; align-items:start;}
.crb-logo-badge img{width:100%; max-width:210px; filter:drop-shadow(0 10px 24px rgba(0,0,0,0.45));}
.crb-copy .eyebrow{color:var(--gold-soft);}
.crb-copy h2{color:var(--white); font-size:clamp(30px,3.6vw,44px); margin:10px 0 18px;}
.crb-copy p.lead{color:rgba(246,241,231,0.86); font-size:16px; max-width:68ch; margin-bottom:32px;}
.crb-copy p.lead strong{color:var(--white); font-weight:400;}
.crb-points{display:grid; grid-template-columns:1fr 1fr; gap:22px; margin-bottom:34px;}
.crb-point{background:rgba(246,241,231,0.07); border:1px solid var(--line-light); padding:26px 24px;}
.crb-point .eyebrow{color:var(--gold-soft); margin-bottom:10px;}
.crb-point h4{color:var(--white); font-size:20px; margin-bottom:10px;}
.crb-point p{color:rgba(246,241,231,0.78); font-size:14.5px;}

/* ---------------- ENSINO ---------------- */
.ensino{background:var(--ink); padding:88px 0;}
.ensino-inner{display:grid; grid-template-columns:1fr 1.1fr; gap:56px; align-items:center;}
.ensino-copy .eyebrow{color:var(--gold);}
.ensino-copy h2{color:var(--white); font-size:clamp(30px,3.6vw,44px); margin:10px 0 18px;}
.ensino-copy p.lead{color:rgba(246,241,231,0.8); font-size:16px; margin-bottom:32px;}
.ensino-cards{display:flex; flex-direction:column; gap:20px;}
.ensino-card{background:rgba(246,241,231,0.06); border:1px solid var(--line-light); padding:28px 30px;}
.ensino-tag{
  display:inline-block; font-size:11px; letter-spacing:.09em; text-transform:uppercase;
  color:var(--gold); border:1px solid var(--gold); border-radius:999px; padding:5px 12px; margin-bottom:14px;
}
.ensino-card h4{color:var(--white); font-size:22px; margin-bottom:10px;}
.ensino-card p{font-size:15px; color:rgba(246,241,231,0.72);}

/* ---------------- EQUIPE ---------------- */
.team{background:var(--cream-deep);}
.team-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:28px;}
.team-grid.cols-5{grid-template-columns:repeat(5,1fr); gap:20px;}
.team-card{
  background:var(--white); border:1px solid var(--line);
  display:flex; flex-direction:column; overflow:hidden;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.team-card:hover{transform:translateY(-5px); box-shadow:var(--shadow); border-color:var(--gold);}
.team-card .card-link{display:block; color:inherit; text-decoration:none; flex:1;}
.team-card .photo{aspect-ratio:3/4; overflow:hidden; background:var(--sand);}
.team-card .photo img{width:100%; height:100%; object-fit:cover; object-position:center top; transition:transform .6s ease;}
.team-card:hover .photo img{transform:scale(1.04);}
.team-card .body{padding:22px 22px 20px;}
.team-card .role{font-size:11px; letter-spacing:.1em; text-transform:uppercase;
  color:var(--gold-deep); margin-bottom:9px; display:block; line-height:1.55;
  /* o rótulo tem de uma a três linhas conforme a médica: a altura fica
     reservada para que os nomes continuem alinhados entre os cards */
  min-height:calc(11px * 1.55 * 3);}
.team-card h3{font-size:21px; margin-bottom:8px; line-height:1.22;}
.team-card .place{font-size:13px; color:var(--ink-soft); line-height:1.5; margin-bottom:14px;}
.team-card .card-tags{display:flex; flex-wrap:wrap; gap:6px;}
.team-card .card-tags span{
  font-size:10.5px; letter-spacing:.12em; text-transform:uppercase;
  color:var(--ink-soft); border:1px solid var(--line);
  padding:5px 9px; border-radius:2px; white-space:nowrap;
}
.card-acoes{display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--line);}
.card-acoes a{
  text-align:center; padding:15px 4px; font-size:10px; letter-spacing:.04em;
  text-transform:uppercase; text-decoration:none; white-space:nowrap;
  transition:background .25s ease, color .25s ease;
}
.card-acoes .ca-perfil{color:var(--ink-soft); border-right:1px solid var(--line);}
.card-acoes .ca-perfil:hover{background:var(--cream); color:var(--green);}
.card-acoes .ca-whats{color:var(--green); font-weight:500;}
.card-acoes .ca-whats:hover{background:var(--green); color:var(--cream);}



/* ---------------- CARTA DA FUNDADORA ---------------- */
/* Formato editorial: foto sangrando à esquerda, carta em painel claro à direita */
.carta{background:var(--cream); padding:0;}
.carta-inner{
  display:grid; grid-template-columns:42% 58%; gap:0;
  max-width:none; margin:0; padding:0; align-items:stretch;
}
.carta-foto{position:relative; overflow:hidden; min-height:640px;}
.carta-foto img{
  position:absolute; inset:0; width:100%; height:100%;
  object-fit:cover; object-position:center 20%; border:0;
}
.carta-texto{
  background:var(--white);
  padding:104px 7vw 104px 6vw;
  max-width:none;
}
.carta-texto .eyebrow{margin-bottom:22px;}
.carta-texto h2{
  font-size:clamp(30px,3.2vw,44px); font-weight:400;
  max-width:12ch; line-height:1.22; margin-bottom:0;
}
.carta-regua{width:64px; height:1px; background:var(--gold); margin:34px 0 38px;}
.carta-texto p{
  font-size:16.5px; color:var(--ink); margin-bottom:22px; line-height:1.85;
  max-width:56ch;
}
.carta-texto p.abertura::first-letter{
  float:left; font-family:'Cormorant Garamond', serif; font-weight:500;
  font-size:74px; line-height:0.76; color:var(--gold);
  padding:8px 14px 0 0;
}
.carta-texto p.fecho{
  font-family:'Cormorant Garamond', serif; font-size:23px; font-style:italic;
  color:var(--green); line-height:1.55; margin-top:38px; margin-bottom:0;
}
.carta-texto p strong{font-weight:500; color:var(--ink);}
.carta-assinatura{margin-top:52px; padding-top:36px; border-top:1px solid var(--line); max-width:56ch;}
.carta-assinatura img{width:210px; max-width:60%; margin-bottom:14px; opacity:.92;}
.carta-assinatura .nome{
  font-family:'Cormorant Garamond',serif; font-size:22px; color:var(--ink);
  display:block; margin-bottom:3px;
}
.carta-assinatura .cargo{font-size:13.5px; color:var(--ink-soft); display:block;}
.carta-assinatura .profile-link{
  display:inline-block; margin-top:26px; font-size:11.5px; letter-spacing:.1em; text-transform:uppercase;
  color:var(--green); border-bottom:1px solid var(--gold); padding-bottom:3px; white-space:nowrap;
  transition:color .2s ease;
}
.carta-assinatura .profile-link:hover{color:var(--gold-deep);}
@media (max-width:1100px){
  .carta-inner{grid-template-columns:38% 62%;}
  .carta-texto{padding:80px 6vw;}
}
/* --- CARTA no celular: layout editorial próprio, largura cheia --- */
@media (max-width:900px){
  .carta{background:var(--white);}
  .carta-inner{
    display:block;                 /* deixa de ser grade de duas colunas */
    padding:52px 22px 60px;        /* margem lateral confortável */
  }
  .carta-foto{
    position:static; width:152px; aspect-ratio:3/4;
    min-height:0; margin:0 0 28px;  /* alinhada à esquerda, junto do texto */
    overflow:hidden;
  }
  .carta-foto img{position:static; width:100%; height:100%; object-position:center 12%;}
  .carta-texto{padding:0; width:100%; max-width:none;}
  .carta-texto .eyebrow{margin-bottom:14px;}
  .carta-texto h2{font-size:31px; max-width:none; line-height:1.24;}
  .carta-regua{margin:24px 0 26px;}
  .carta-texto p{
    width:100%; max-width:none;
    font-size:16.5px; line-height:1.66; margin-bottom:16px;
  }
  .carta-texto p.abertura::first-letter{font-size:58px; line-height:0.74; padding:6px 11px 0 0;}
  .carta-texto p.fecho{font-size:21px; line-height:1.5; margin-top:32px; margin-bottom:6px;}
  .carta-assinatura{max-width:none; margin-top:38px; padding-top:26px;}
  .carta-assinatura img{width:172px; max-width:70%; margin-bottom:10px;}
  .carta-assinatura .nome{font-size:20px;}
  .carta-assinatura .profile-link{margin-top:20px;}
}
/* --- tablet: mesma estrutura, mas sem deixar a linha longa demais --- */
@media (min-width:601px) and (max-width:900px){
  .carta-inner{padding:64px 40px 76px;}
  .carta-foto{width:200px; margin-bottom:32px;}
  .carta-texto h2{font-size:38px; max-width:18ch;}
  .carta-texto p{max-width:62ch; font-size:17px; line-height:1.7;}
  .carta-assinatura{max-width:62ch;}
}

/* ---------------- CARTA RESUMIDA (topo da equipe) ---------------- */
.carta-curta{background:var(--white); border:1px solid var(--line); margin-bottom:64px;
  display:grid; grid-template-columns:340px 1fr; gap:0; align-items:stretch;}
.carta-curta .foto{position:relative; overflow:hidden; min-height:420px;}
.carta-curta .foto img{position:absolute; inset:0; width:100%; height:100%;
  object-fit:cover; object-position:center 15%;}
.carta-curta .txt{padding:52px 52px 46px;}
.carta-curta h3{font-size:30px; margin:12px 0 0; max-width:18ch;}
.carta-curta .rule{width:52px; height:1px; background:var(--gold); margin:24px 0 26px;}
.carta-curta p{font-size:16px; line-height:1.8; color:var(--ink); margin-bottom:16px;}
.carta-curta p.fecho{font-family:'Cormorant Garamond',serif; font-style:italic;
  font-size:21px; color:var(--green); line-height:1.5; margin:22px 0 0;}
.carta-curta .assina{margin-top:30px; padding-top:22px; border-top:1px solid var(--line);}
.carta-curta .assina img{width:170px; opacity:.9; margin-bottom:10px;}
.carta-curta .assina .nm{font-family:'Cormorant Garamond',serif; font-size:21px; display:block;}
.carta-curta .assina .cg{font-size:13px; color:var(--ink-soft);}
@media (max-width:900px){
  .carta-curta{grid-template-columns:1fr; margin-bottom:44px;}
  .carta-curta .foto{min-height:0; aspect-ratio:4/3;}
  .carta-curta .txt{padding:34px 24px 32px;}
  .carta-curta h3{font-size:26px; max-width:none;}
}

/* card de perfil dentro da carta */
.perfil-card{
  display:grid; grid-template-columns:56px 1fr 22px; gap:16px; align-items:center;
  margin-top:26px; padding:14px 18px 14px 14px;
  border:1px solid var(--line); background:var(--cream);
  transition:border-color .25s ease, background .25s ease, transform .2s ease;
}
.perfil-card:hover{border-color:var(--gold); background:var(--cream-deep); transform:translateY(-2px);}
.perfil-card .ph{width:56px; height:56px; overflow:hidden; border-radius:50%;}
.perfil-card .ph img{width:100%; height:100%; object-fit:cover; object-position:center 12%;}
.perfil-card .tx b{display:block; font-family:'Cormorant Garamond',serif; font-weight:500;
  font-size:19px; color:var(--ink); line-height:1.2; margin-bottom:3px;}
.perfil-card .tx i{font-style:normal; font-size:12.5px; color:var(--ink-soft);}
.perfil-card .seta{font-size:17px; color:var(--gold-deep); text-align:right;}
@media (max-width:600px){
  .perfil-card{grid-template-columns:46px 1fr 18px; gap:12px; padding:12px 14px 12px 12px;}
  .perfil-card .ph{width:46px; height:46px;}
  .perfil-card .tx b{font-size:17px;}
}

/* ---------------- DESTAQUE DA COORDENAÇÃO ---------------- */
.lead-doctor{
  display:grid; grid-template-columns:300px 1fr; gap:48px;
  background:var(--white); border:1px solid var(--line);
  padding:44px; margin-bottom:60px; align-items:center;
}
.lead-doctor .photo-wrap img{
  width:100%; aspect-ratio:3/4; object-fit:cover; object-position:center top;
}
.lead-doctor .eyebrow{margin-bottom:10px;}
.lead-doctor h3{font-size:32px; margin-bottom:4px;}
.lead-doctor .crm{font-size:13px; color:var(--gold-deep); margin-bottom:20px; display:block; letter-spacing:.02em;}
.lead-doctor ul{list-style:none; margin-bottom:8px;}
.lead-doctor li{
  font-size:14.5px; color:var(--ink-soft); padding-left:18px; position:relative; margin-bottom:9px;
}
.lead-doctor li::before{content:''; position:absolute; left:0; top:10px; width:8px; height:1px; background:var(--gold);}
.lead-doctor .profile-link{
  display:inline-block; margin-top:16px; font-size:11.5px; letter-spacing:.1em; text-transform:uppercase;
  color:var(--green); border-bottom:1px solid var(--gold); padding-bottom:3px; white-space:nowrap;
  transition:color .2s ease, border-color .2s ease;
}
.lead-doctor .profile-link:hover{color:var(--gold-deep);}
.team-grid.cols-4{grid-template-columns:repeat(4,1fr); gap:24px;}
.team-card ul{list-style:none; margin-bottom:14px;}
.team-card li{
  font-size:12.8px; color:var(--ink-soft); padding-left:14px; position:relative;
  margin-bottom:7px; line-height:1.45;
}
.team-card li::before{content:''; position:absolute; left:0; top:8px; width:6px; height:1px; background:var(--gold);}
@media (max-width:1000px){ .team-grid.cols-4{grid-template-columns:repeat(2,1fr);} }
@media (max-width:900px){
  .lead-doctor{grid-template-columns:1fr; padding:30px; gap:28px;}
  .lead-doctor .photo-wrap{max-width:300px;}
}
@media (max-width:600px){ .team-grid.cols-4{grid-template-columns:1fr;} }


/* ==========================================================================
   PERFIL DA MÉDICA — hero editorial, faixa de credenciais e faixa de contato
   ========================================================================== */

/* ---------- HERO ---------- */
.med-hero{background:var(--white);}
.med-hero-in{
  display:grid; grid-template-columns:44% 56%; align-items:center;
  min-height:82vh;
}
.med-foto{position:relative; overflow:hidden; aspect-ratio:4/5; height:100%;}
.med-foto img{width:100%; height:100%; object-fit:cover; object-position:center 12%;}
.med-texto{padding:0 clamp(40px,7vw,130px);}
.med-papel{
  display:block; font-size:11px; letter-spacing:.3em; text-transform:uppercase;
  color:var(--gold-deep); margin-bottom:26px;
}
.med-nome{
  font-size:clamp(46px,5.2vw,78px); font-weight:400; line-height:1.02;
  letter-spacing:-0.012em; margin-bottom:22px; max-width:12ch; text-wrap:balance;
}
.med-areas{
  font-size:12.5px; letter-spacing:.2em; text-transform:uppercase; color:var(--ink-soft);
}
.med-areas span{white-space:nowrap;}
.med-areas span:not(:last-child)::after{content:'·'; color:var(--gold); margin:0 12px;}
.med-fio{width:70px; height:1px; background:var(--gold); margin:34px 0 32px;}
.med-bio{font-size:19px; line-height:1.86; color:var(--ink); max-width:46ch;}
.med-bio em{font-style:normal; color:var(--green);}
.med-frase{
  font-family:'Cormorant Garamond',serif; font-style:italic; font-size:24px;
  line-height:1.5; color:var(--green); max-width:38ch; margin-top:30px;
}

/* ---------- FAIXA DE CREDENCIAIS ---------- */
.med-cred{background:var(--cream); padding:96px 0;}
.med-cred-in{
  max-width:1240px; margin:0 auto; padding:0 clamp(24px,5vw,64px);
  display:grid; grid-template-columns:1fr 1.15fr 1.25fr; gap:0;
}
.med-col{padding:0 clamp(20px,3vw,52px);}
.med-col:first-child{padding-left:0;}
.med-col:last-child{padding-right:0;}
.med-col + .med-col{border-left:1px solid var(--line);}
.med-col .rot{
  display:block; font-size:10.5px; letter-spacing:.3em; text-transform:uppercase;
  color:var(--gold-deep); margin-bottom:26px;
}
.med-col p{
  font-family:'Cormorant Garamond',serif; font-size:23px; line-height:1.42;
  color:var(--ink); margin-bottom:14px;
}
.med-col p:last-child{margin-bottom:0;}
.med-col p small{
  display:block; font-family:'Jost',sans-serif; font-size:12.5px; letter-spacing:.04em;
  color:var(--ink-soft); margin-top:4px;
}
.med-col.fluxo p{font-size:21px; line-height:1.62; margin:0;}
.med-col.fluxo b{font-weight:400; color:var(--green);}
/* o separador vira parte do item anterior: linha quebrada nunca comeca com ponto */
.med-col.fluxo .item:not(:last-child)::after{content:'·'; color:var(--gold); margin:0 8px;}

/* ---------- FAIXA FINAL ---------- */
.med-achar{background:var(--white); padding:84px 0 96px; text-align:center;}
.med-achar .rot{
  display:block; font-size:11px; letter-spacing:.3em; text-transform:uppercase;
  color:var(--gold-deep); margin-bottom:22px;
}
.med-achar .fio{width:44px; height:1px; background:var(--gold); margin:0 auto 26px;}
.med-achar a{
  font-family:'Cormorant Garamond',serif; font-size:24px; color:var(--ink);
  border-bottom:1px solid transparent; transition:border-color .25s ease, color .25s ease;
}
.med-achar a:hover{color:var(--green); border-color:var(--gold);}

.med-voltar{
  display:inline-block; margin-top:44px; font-size:11px; letter-spacing:.2em;
  text-transform:uppercase; color:var(--ink-soft); transition:color .25s ease;
}
.med-voltar::before{content:'←'; color:var(--gold); margin-right:10px;}
.med-voltar:hover{color:var(--green);}

/* ---------- CELULAR: composição própria ---------- */
@media (max-width:900px){
  .med-hero-in{grid-template-columns:1fr; min-height:0;}
  .med-foto{aspect-ratio:1/1;}
  .med-foto img{object-position:center 10%;}
  .med-texto{padding:38px 22px 0;}
  .med-papel{margin-bottom:14px; font-size:10.5px;}
  .med-nome{font-size:clamp(38px,11vw,50px); max-width:none; margin-bottom:14px;}
  .med-areas{font-size:12px; letter-spacing:.16em;}
  .med-fio{margin:24px 0 22px;}
  .med-bio{font-size:18px; line-height:1.84; max-width:none;}
  .med-frase{font-size:21px; margin-top:24px; max-width:none;}

  .med-cred{padding:48px 0 8px;}
  .med-cred-in{grid-template-columns:1fr; padding:0 22px; gap:0;}
  .med-col{padding:26px 0;}
  .med-col + .med-col{border-left:0; border-top:1px solid var(--line);}
  .med-col .rot{margin-bottom:14px;}
  .med-col p{font-size:21px; margin-bottom:10px;}
  .med-col.fluxo p{font-size:19px; line-height:1.7;}

  .med-achar{padding:44px 22px 56px;}
  .med-achar a{font-size:21px;}

  .med-voltar{margin-top:32px;}
}

/* Perfil individual (antigo) */
.profile{background:var(--white); padding:80px 0;}
.profile-grid{display:grid; grid-template-columns:340px 1fr; gap:60px; align-items:start;}
.profile-photo img{width:100%; aspect-ratio:3/4; object-fit:cover; object-position:center top; border:1px solid var(--line);}
.profile-photo .links{margin-top:26px; display:flex; flex-direction:column; gap:0;
  border-top:1px solid var(--line);}
.profile-photo .links-tit{
  display:block; font-size:10.5px; letter-spacing:.2em; text-transform:uppercase;
  color:var(--gold-deep); padding:16px 0 12px;
}
.profile-photo .links a{
  display:grid; grid-template-columns:22px 1fr; gap:12px; align-items:center;
  padding:13px 0; border-top:1px solid var(--line);
  transition:color .2s ease, padding-left .2s ease;
}
.profile-photo .links a:hover{color:var(--green); padding-left:6px;}
.profile-photo .links a .ic{color:var(--gold); font-size:15px; text-align:center;}
.profile-photo .links a .tx b{display:block; font-size:14px; font-weight:400; color:var(--ink); line-height:1.3;}
.profile-photo .links a .tx i{font-style:normal; font-size:11px; letter-spacing:.14em;
  text-transform:uppercase; color:var(--ink-soft);}
.profile-body .bio{
  font-size:16.5px; line-height:1.82; color:var(--ink); margin-bottom:30px; max-width:60ch;
}
.profile-body h1{font-size:clamp(30px,3.8vw,44px); margin-bottom:6px;}
.profile-body .crm{font-size:13.5px; color:var(--gold-deep); letter-spacing:.03em; display:block; margin-bottom:20px;}
.focus-tags{display:flex; flex-wrap:wrap; gap:8px; margin-bottom:28px;}
.focus-tags span{
  font-size:11.5px; letter-spacing:.08em; text-transform:uppercase; color:var(--green);
  border:1px solid var(--gold); border-radius:999px; padding:6px 14px; background:var(--cream);
}
.cv-block{margin-bottom:34px;}
.cv-block h2{font-size:22px; margin-bottom:16px; padding-bottom:10px; border-bottom:1px solid var(--line);}
.cv-list{list-style:none;}
.cv-list li{font-size:15px; color:var(--ink-soft); padding-left:20px; position:relative; margin-bottom:11px;}
.cv-list li::before{content:''; position:absolute; left:0; top:11px; width:9px; height:1px; background:var(--gold);}
.cv-list li strong{color:var(--ink); font-weight:500;}
.quote{
  background:var(--cream); border-left:2px solid var(--gold); padding:24px 28px;
  font-family:'Cormorant Garamond',serif; font-style:italic; font-size:20px; color:var(--green); margin:8px 0 32px;
}

/* ---------------- PREPARO (conteúdo clicável) ---------------- */
.prep{background:var(--cream); padding:70px 0;}
.prep-nav{
  display:flex; flex-wrap:wrap; gap:10px; justify-content:center; margin-bottom:50px;
}
.prep-nav a{
  font-size:12px; letter-spacing:.08em; text-transform:uppercase; color:var(--ink-soft);
  border:1px solid var(--line); padding:10px 18px; background:var(--white);
  transition:border-color .2s, color .2s, background .2s;
}
.prep-nav a:hover{border-color:var(--gold); color:var(--green); background:var(--cream-deep);}

.accordion{border-top:1px solid var(--line); margin-bottom:40px;}
.acc-item{border-bottom:1px solid var(--line); background:var(--white);}
.acc-head{
  width:100%; text-align:left; background:none; border:0; cursor:pointer;
  padding:22px 56px 22px 24px; position:relative;
  font-family:'Cormorant Garamond',serif; font-size:22px; color:var(--ink);
  transition:color .2s ease, background .2s ease;
}
.acc-head:hover{color:var(--gold-deep); background:var(--cream);}
.acc-head::after{
  content:''; position:absolute; right:24px; top:50%; width:11px; height:11px;
  border-right:1.5px solid var(--gold); border-bottom:1.5px solid var(--gold);
  transform:translateY(-70%) rotate(45deg); transition:transform .3s ease;
}
.acc-item.is-open .acc-head::after{transform:translateY(-25%) rotate(-135deg);}
.acc-body{display:none; padding:0 24px 26px; font-size:15.5px; color:var(--ink-soft);}
.acc-item.is-open .acc-body{display:block; animation:fade .3s ease;}
@keyframes fade{from{opacity:0; transform:translateY(-4px);} to{opacity:1; transform:none;}}
.acc-body p{margin-bottom:14px;}
.acc-body ul{list-style:none; margin-bottom:14px;}
.acc-body li{padding-left:20px; position:relative; margin-bottom:9px;}
.acc-body li::before{content:''; position:absolute; left:0; top:11px; width:9px; height:1px; background:var(--gold);}
.acc-body strong{color:var(--ink); font-weight:500;}

.card{background:var(--white); border:1px solid var(--line); padding:32px 30px; margin-bottom:26px;}
.card h3{font-size:24px; margin-bottom:8px;}
.card .eyebrow{margin-bottom:10px;}
.card.green{background:var(--green); color:rgba(246,241,231,0.86); border-color:var(--green);}
.card.green h3{color:var(--white);}
.card.green .eyebrow{color:var(--gold-soft);}
.card.gold{background:var(--cream-deep); border-color:var(--gold-soft);}

.tbl{width:100%; border-collapse:collapse; font-size:14.5px; margin-bottom:18px;}
.tbl th, .tbl td{border:1px solid var(--line); padding:13px 15px; text-align:left; vertical-align:top;}
.tbl th{background:var(--cream-deep); font-weight:500; color:var(--ink); font-size:13px; letter-spacing:.04em; text-transform:uppercase;}
.tbl td{color:var(--ink-soft);}
.tbl td strong{color:var(--ink); font-weight:500;}
.tbl-scroll{overflow-x:auto; -webkit-overflow-scrolling:touch;}

.food-grid{display:grid; grid-template-columns:1fr 1fr; gap:24px;}
.food-col{border:1px solid var(--line); background:var(--white); padding:0; overflow:hidden;}
.food-col > h3{padding:20px 24px; font-size:21px; margin:0; color:var(--white);}
.food-col.yes > h3{background:var(--green-mid);}
.food-col.no  > h3{background:#7A3B34;}
.food-row{padding:16px 24px; border-top:1px solid var(--line); display:grid; grid-template-columns:130px 1fr; gap:16px; font-size:14.5px;}
.food-row b{color:var(--ink); font-weight:500;}
.food-row span{color:var(--ink-soft);}

.alert{
  border-left:3px solid var(--gold); background:var(--cream-deep);
  padding:20px 24px; font-size:15px; color:var(--ink); margin-bottom:26px;
}
.alert strong{font-weight:500;}

/* Receitas */
.recipe-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
.recipe{background:var(--white); border:1px solid var(--line); padding:26px 24px;}
.recipe .num{font-family:'Cormorant Garamond',serif; font-size:26px; color:var(--gold); display:block; margin-bottom:4px;}
.recipe h3{font-size:20px; margin-bottom:14px;}
.recipe h4{font-size:11.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--gold-deep); margin:16px 0 8px; font-family:'Jost',sans-serif; font-weight:500;}
.recipe ul, .recipe ol{margin-left:16px; font-size:14px; color:var(--ink-soft);}
.recipe li{margin-bottom:5px;}

/* E-book */
.ebook-grid{display:grid; grid-template-columns:0.85fr 1.15fr; gap:56px; align-items:center;}
.ebook-cover{
  background:var(--green); aspect-ratio:384/600; display:flex; flex-direction:column;
  align-items:center; justify-content:center; text-align:center; padding:40px 34px;
  border:1px solid var(--line); box-shadow:var(--shadow); position:relative; overflow:hidden;
}
.ebook-cover::before{
  content:''; position:absolute; inset:14px; border:1px solid rgba(196,162,101,0.45); pointer-events:none;
}
.ebook-cover img{width:150px; margin-bottom:26px;}
.ebook-cover .eyebrow{color:var(--gold-soft); margin-bottom:14px;}
.ebook-cover h2{color:var(--white); font-size:31px; line-height:1.15;}
.ebook-cover p{color:rgba(246,241,231,0.7); font-size:13.5px; margin-top:18px;}
.ebook-list{list-style:none; margin:24px 0 32px;}
.ebook-list li{padding-left:22px; position:relative; margin-bottom:12px; font-size:15.5px; color:var(--ink-soft);}
.ebook-list li::before{content:''; position:absolute; left:0; top:11px; width:10px; height:1px; background:var(--gold);}
.ebook-actions{display:flex; gap:14px; flex-wrap:wrap;}

/* ---------------- CONTATO / RODAPÉ ---------------- */
.contact{background:var(--green); color:var(--cream); padding:104px 0 0;}
.contact .eyebrow{color:var(--gold-soft);}
.contact-grid{display:grid; grid-template-columns:1fr 1fr; gap:72px; padding-bottom:74px; align-items:start;}
.contact h2{color:var(--white); font-size:clamp(30px,3.6vw,46px); margin:14px 0 20px;}
.contact p.lead{color:rgba(246,241,231,0.78); max-width:46ch; margin-bottom:32px; font-size:16px;}
.contact-items{display:flex; flex-direction:column; gap:0; border-top:1px solid var(--line-light);}
.contact-item{display:grid; grid-template-columns:118px 1fr; gap:18px; align-items:baseline;
  padding:16px 0; border-bottom:1px solid var(--line-light);}
.contact-item .ic{display:none;}
.contact-item a, .contact-item span.v{font-size:16px; color:var(--cream); transition:color .2s ease; line-height:1.5;}
.contact-item a:hover{color:var(--gold-soft);}
.contact-item small{display:block; color:var(--gold-soft); font-size:10.5px; letter-spacing:0.16em; text-transform:uppercase;}
.footer-nav{
  border-top:1px solid var(--line-light); padding:30px 0;
  display:flex; flex-wrap:wrap; gap:12px 28px; justify-content:center;
}
.footer-nav a{font-size:12px; letter-spacing:.08em; text-transform:uppercase; color:rgba(246,241,231,0.7);}
.footer-nav a:hover{color:var(--gold-soft);}
.footer-bottom{border-top:1px solid var(--line-light); padding:24px 0;}
.footer-bottom .wrap{display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:14px;}
.footer-bottom p{font-size:12px; color:rgba(246,241,231,0.5);}
.footer-logo img{height:40px; opacity:.95;}

/* Botão flutuante do WhatsApp */
.wa-float{
  position:fixed; right:20px; bottom:20px; z-index:90;
  width:54px; height:54px; border-radius:50%; background:#25D366;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 8px 24px rgba(0,0,0,0.22); transition:transform .25s ease;
}
.wa-float:hover{transform:scale(1.08);}
.wa-float svg{width:28px; height:28px; fill:#fff;}

/* ---------------- RESPONSIVO ---------------- */
@media (max-width:1000px){
  .team-grid.cols-5{grid-template-columns:repeat(3,1fr);}
  .recipe-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:900px){
  .about-side{border-left:0; border-top:1px solid var(--line); padding:36px 0 0;}
  .nav-toggle{display:block;}
  .nav-links{
    display:none; position:absolute; top:100%; left:0; right:0;
    flex-direction:column; align-items:stretch; gap:0;
    background:var(--cream); border-bottom:1px solid var(--line);
    padding:8px 0 14px; box-shadow:var(--shadow);
  }
  .nav-links.is-open{display:flex;}
  .nav-links a{padding:14px 32px; font-size:13px; border-bottom:1px solid var(--line);}
  .nav-links a::after{display:none;}
  .nav-cta{display:none;}
  .nav-links .nav-cta-mobile{
    display:block; margin:14px 32px 0; text-align:center; background:var(--green);
    color:var(--white); padding:14px; border:0;
  }
  .about-grid,.modelo-grid,.contact-grid,.ensino-inner,.ebook-grid{grid-template-columns:1fr; gap:40px;}
  .diff-grid{grid-template-columns:1fr 1fr;}
  .crb-spotlight-inner{grid-template-columns:1fr; gap:34px;}
  .crb-logo-badge{max-width:170px;}
  .crb-points{grid-template-columns:1fr;}
  .shortcut-grid{grid-template-columns:1fr;}
  .team-grid, .team-grid.cols-5{grid-template-columns:repeat(2,1fr);}
  .profile-grid{grid-template-columns:1fr; gap:36px;}
  .profile-photo{max-width:320px;}
  .food-grid{grid-template-columns:1fr;}
  section{padding:68px 0;}
}
@media (max-width:600px){
  .contact-item{grid-template-columns:1fr; gap:4px;}
  .wrap,.wrap-narrow,.nav-inner,.hero-inner{padding-left:20px; padding-right:20px;}
  .diff-grid{grid-template-columns:1fr;}
  .recipe-grid{grid-template-columns:1fr;}
  .team-grid, .team-grid.cols-5{grid-template-columns:1fr; gap:20px;}
  .food-row{grid-template-columns:1fr; gap:4px;}
  /* No celular a foto ficava em 4/3 e o corte comia as médicas das pontas.
     Mantendo a proporção original da imagem, todas aparecem inteiras. */
  .hero-photo{aspect-ratio:1600/800;}
  .footer-bottom .wrap{justify-content:center; text-align:center;}
}
@media print{
  header.nav,.wa-float,.prep-nav,.contact,.footer-nav{display:none!important;}
  .acc-body{display:block!important;}
  body{background:#fff;}
}


/* ---------- locais de atuação clicáveis, nota e contato no perfil ---------- */
.med-col.fluxo a.local{
  color:inherit; text-decoration:none;
  border-bottom:1px solid var(--gold-soft); transition:color .25s ease, border-color .25s ease;
}
.med-col.fluxo a.local:hover{color:var(--green); border-color:var(--gold);}
.med-nota{
  margin-top:18px; font-size:13.5px; line-height:1.6; color:var(--ink-soft);
  padding-top:14px; border-top:1px solid var(--line);
}
.med-achar .med-whats{
  display:inline-block; margin-top:30px;
  background:var(--green); color:var(--cream);
  padding:15px 34px; font-size:11.5px; letter-spacing:.18em; text-transform:uppercase;
  text-decoration:none; border:1px solid var(--green); transition:background .25s ease, color .25s ease;
}
.med-achar .med-whats:hover{background:transparent; color:var(--green);}
.med-achar .med-voltar{display:block; margin-top:26px;}

/* ---------- projeto pessoal da médica, na faixa de credenciais ---------- */
.med-projeto{margin-top:22px; padding-top:18px; border-top:1px solid var(--line);}
.med-projeto .rot{display:block; margin-bottom:10px;}
.med-projeto p{margin:0;}
.med-projeto p a{
  font-family:'Cormorant Garamond',Georgia,serif; font-size:24px; color:var(--green);
  border-bottom:1px solid var(--gold-soft); transition:border-color .25s ease;
}
.med-projeto p a:hover{border-color:var(--gold);}
.med-projeto .desc{margin-top:8px; font-size:13.5px; line-height:1.6; color:var(--ink-soft);}
.med-projeto .desc{font-family:'Jost',-apple-system,sans-serif; font-size:13.5px; line-height:1.62;}

/* a lista de métodos ocupa o mesmo lugar do projeto, no mesmo desenho:
   serifada, com o filete dourado embaixo de cada linha */
.med-metodos ul{list-style:none; margin:0; padding:0;}
.med-metodos li{
  font-family:'Cormorant Garamond',Georgia,serif; font-size:19px; line-height:1.35;
  color:var(--ink); padding:9px 0; border-bottom:1px solid var(--line);
}
.med-metodos li:last-child{border-bottom:none; padding-bottom:0;}
@media(max-width:900px){ .med-metodos li{font-size:18px; padding:10px 0;} }


/* ---------- links da médica, como etiquetas ---------- */
.med-links{display:flex; flex-wrap:wrap; gap:10px; justify-content:center;}
.med-links a{
  font-family:'Jost',-apple-system,sans-serif; font-size:13px; letter-spacing:.06em;
  color:var(--ink); border:1px solid var(--line); border-radius:2px;
  padding:11px 20px; transition:background .25s ease, color .25s ease, border-color .25s ease;
}
.med-links a:hover{background:var(--cream); color:var(--green); border-color:var(--gold);}
.med-achar .med-whats{margin-top:34px;}

/* linha de autoria na abertura do guia de preparo */
.med-achar .med-voltar{
  font-family:'Jost',-apple-system,sans-serif; font-size:11px; letter-spacing:.2em;
  text-transform:uppercase; color:var(--ink-soft); border:0;
}
.med-achar .med-voltar:hover{color:var(--green); border:0;}


/* ---------- capa real do e-book ---------- */
.ebook-capa{display:block; box-shadow:var(--shadow); border:1px solid var(--line); transition:transform .3s ease, box-shadow .3s ease;}
.ebook-capa:hover{transform:translateY(-6px); box-shadow:0 26px 60px rgba(74,59,48,.18);}
.ebook-capa img{width:100%; height:auto; display:block;}

/* ==========================================================================
   AJUSTES DE CELULAR — quebra de linha, corpo de texto e área de toque
   ========================================================================== */

/* As áreas de atuação eram um bloco único e indivisível: cada etiqueta é
   "nowrap" e não havia espaço entre elas, então a linha inteira empurrava a
   página para o lado. Em flex, cada etiqueta vira um item que quebra sozinho. */
.med-areas{display:flex; flex-wrap:wrap; align-items:baseline; row-gap:6px;}

@media (max-width:900px){
  /* textos pequenos demais para ler no celular */
  .med-papel, .med-cred .rot, .med-achar .rot, .med-projeto .rot{font-size:12px;}
  .team-card .role{font-size:12px; min-height:calc(12px * 1.55 * 2);}
  .card-acoes a{font-size:11.5px;}
  .med-areas{font-size:12px; letter-spacing:.12em; row-gap:8px;}

  /* área de toque: nenhum link com menos de 44px de altura */
  .card-acoes a{padding:17px 8px;}
  .med-col.fluxo a.local{display:inline-block; padding:6px 0;}
  .med-links a{padding:14px 20px;}
  .med-achar .med-voltar{padding:14px 4px;}
  .contact-item a{display:inline-block; padding:9px 0;}
  .contact-item small{font-size:11.5px;}
  .ensino-tag{font-size:11.5px;}
  .med-achar .med-voltar{font-size:12px;}
  .nav-toggle{min-height:44px; min-width:44px;}
  .carta-assinatura .profile-link{padding:12px 0;}
  .breadcrumb a{display:inline-block; padding:11px 0;}
  .med-projeto p a{display:inline-block; padding:8px 0;}
  .footer-nav a{display:inline-block; padding:10px 0;}
  .profile-link{display:inline-block; padding:10px 0;}
}

/* Entre 900 e 1150px a grade das médicas fica com cinco colunas estreitas e
   o rótulo mais longo passa a ocupar quatro linhas. A altura reservada
   acompanha, para os nomes não desalinharem nessa faixa. */
@media (min-width:900px) and (max-width:1150px){
  .team-card .role{min-height:calc(11px * 1.55 * 4); letter-spacing:.06em;}
}
