/* ═══════════════════════════════════════════
   SUBPÁGINAS — cabeçalho, corpo e clínicas
═══════════════════════════════════════════ */

.sp-head{
  position:sticky;top:0;z-index:15;
  display:flex;align-items:center;gap:14px;
  padding:calc(var(--safe-t) + 13px) 22px 13px;
  background:rgba(249,250,246,.9);backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line-soft);
}
.back-btn{
  width:34px;height:34px;flex-shrink:0;border-radius:50%;
  border:1px solid var(--line);color:var(--sage-700);font-size:15px;
  display:flex;align-items:center;justify-content:center;transition:border-color .2s;
}
.back-btn:active{border-color:var(--clay-500)}
.sp-title{font-family:var(--ff-display);font-size:21px;font-weight:500;color:var(--ink);flex:1}

.sp-body{
  max-width:468px;margin:0 auto;
  padding:24px 22px calc(var(--safe-b) + 48px);
  display:flex;flex-direction:column;gap:14px;
  animation:fadeU .4s ease both;
}

/* ══════════════════════════════
   CLÍNICAS
══════════════════════════════ */
.cat-desc{font-size:14.5px;line-height:1.75;color:var(--ink-2)}

.clin-list{display:flex;flex-direction:column;gap:12px}

.clin-card{
  display:flex;align-items:center;gap:14px;cursor:pointer;
  background:#fff;border:1px solid var(--line);border-radius:var(--r-md);
  padding:16px 17px;transition:border-color .2s,background .2s,transform .15s;
}
.clin-card:active{transform:scale(.99)}
@media(hover:hover){.clin-card:hover{border-color:var(--clay-500);background:#fff}}
.clin-card.online{cursor:default;border-color:var(--clay-400);background:var(--clay-100)}
.clin-ico{
  width:42px;height:42px;flex-shrink:0;border-radius:12px;
  display:flex;align-items:center;justify-content:center;font-size:18px;
  background:var(--sage-100);border:1px solid var(--line-soft);
}
.clin-card.online .clin-ico{background:#fff}
.clin-txt{flex:1;min-width:0}
.clin-name{font-family:var(--ff-display);font-size:18px;font-weight:500;color:var(--ink)}
.clin-addr{font-size:12.5px;line-height:1.5;color:var(--dim);margin-top:3px}
.clin-space{font-size:11.5px;line-height:1.5;color:var(--sage-600);margin-top:2px}
.clin-arr{font-size:14px;color:var(--clay-500);flex-shrink:0}

/* ── Detalhe de uma clínica ── */
.clin-detalhe-head{display:flex;align-items:center;gap:14px}

/* ── Tour pelo espaço ── */
.esp{display:flex;flex-direction:column;gap:12px}
.esp-media{
  border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line);
  background:var(--sage-900);box-shadow:var(--shadow-sm);line-height:0;
}
/* contain + altura livre: não corta nada, seja vídeo em pé ou deitado */
.esp-media video{
  width:100%;height:auto;object-fit:contain;display:block;
  max-height:68vh;max-height:68dvh;
}
.esp-txt{font-size:13.5px;line-height:1.75;color:var(--ink-2)}
.esp-more{
  align-self:flex-start;display:flex;align-items:center;gap:8px;
  padding:11px 18px;border-radius:999px;
  border:1px solid var(--line);background:#fff;
  font-size:13.5px;color:var(--sage-700);box-shadow:var(--shadow-sm);
  transition:border-color .2s,transform .2s;
}
.esp-more:active{border-color:var(--clay-500);transform:scale(.98)}
.esp-arr{font-size:12px;color:var(--clay-500)}
.esp-extra{display:flex;flex-direction:column;gap:12px;animation:fadeU .4s ease both}
.esp-extra[hidden]{display:none}

.info-note{
  border:1px dashed var(--sage-300);border-radius:var(--r-md);padding:15px 16px;
  font-size:13px;line-height:1.7;color:var(--ink-2);background:rgba(255,255,255,.5);
}
