:root{
  --sl-navy:#0b2239; --sl-navy-2:#143852;
  --sl-teal:#1eb5ab; --sl-teal-dark:#07857d; --sl-teal-soft:#e8faf8;
  --sl-bg:#f7fbfc; --sl-line:rgba(11,34,57,.09); --sl-muted:#5f7485;
  --sl-wa:#25D366;
  --sl-radius-md:18px; --sl-radius-lg:24px; --sl-radius-xl:32px;
  --sl-shadow-2:0 10px 28px rgba(11,34,57,.07);
  --sl-shadow-3:0 22px 55px rgba(11,34,57,.10);
}
.sl-hero-v3{position:relative;padding:56px 0 36px;background:radial-gradient(900px 420px at 8% -10%,rgba(30,181,171,.10),transparent 60%),radial-gradient(700px 380px at 100% 0%,rgba(11,34,57,.05),transparent 60%),linear-gradient(180deg,#fff 0%,var(--sl-bg) 100%);overflow:hidden}
.sl-hero-v3__wrap{max-width:1120px;margin:0 auto;padding:0 24px;display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
.sl-hero-v3__kicker{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;background:rgba(30,181,171,.12);color:var(--sl-teal-dark);font-size:.76rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.sl-hero-v3__kicker::before{content:"";width:6px;height:6px;border-radius:999px;background:var(--sl-teal);box-shadow:0 0 0 4px rgba(30,181,171,.18)}
.sl-hero-v3__title{margin:18px 0 14px;font-size:clamp(2.2rem,4.8vw,3.6rem);line-height:1.04;letter-spacing:-.035em;color:var(--sl-navy);font-weight:750}
.sl-hero-v3__title span{color:var(--sl-teal)}
.sl-hero-v3__lead{max-width:560px;color:var(--sl-muted);font-size:1.05rem;line-height:1.6;margin:0 0 28px}
.sl-trust-row{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:22px;color:var(--sl-muted);font-size:.9rem}
.sl-trust-row span{display:inline-flex;align-items:center;gap:8px}
.sl-trust-row svg{width:18px;height:18px;color:var(--sl-teal);flex:0 0 18px}
.sl-offer-stack{display:grid;gap:16px}
.sl-offer{position:relative;display:grid;grid-template-columns:56px 1fr auto;gap:16px;align-items:center;padding:22px;border-radius:var(--sl-radius-lg);background:#fff;border:1px solid var(--sl-line);box-shadow:var(--sl-shadow-2);text-decoration:none;color:var(--sl-navy);transition:transform .18s,box-shadow .18s,border-color .18s}
.sl-offer:hover{transform:translateY(-2px);box-shadow:var(--sl-shadow-3);border-color:rgba(30,181,171,.30)}
.sl-offer__icon{width:56px;height:56px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,var(--sl-teal-soft),#fff);border:1px solid rgba(30,181,171,.22);color:var(--sl-teal-dark)}
.sl-offer__icon svg{width:28px;height:28px}
.sl-offer__body h3{margin:0 0 4px;font-size:1.12rem;font-weight:750;letter-spacing:-.015em;color:var(--sl-navy)}
.sl-offer__body p{margin:0;font-size:.92rem;line-height:1.45;color:var(--sl-muted)}
.sl-offer__arrow{width:38px;height:38px;border-radius:999px;display:grid;place-items:center;background:var(--sl-teal-soft);color:var(--sl-teal-dark);transition:background .18s,transform .18s}
.sl-offer:hover .sl-offer__arrow{background:var(--sl-teal);color:#fff;transform:translateX(2px)}
.sl-offer__arrow svg{width:18px;height:18px}
.sl-offer--primary{background:linear-gradient(135deg,#0b2239 0%,#143852 100%);color:#fff;border-color:transparent}
.sl-offer--primary .sl-offer__body h3{color:#fff}
.sl-offer--primary .sl-offer__body p{color:rgba(255,255,255,.78)}
.sl-offer--primary .sl-offer__icon{background:rgba(30,181,171,.18);border-color:rgba(30,181,171,.35);color:#6ee0d6}
.sl-offer--primary .sl-offer__arrow{background:var(--sl-teal);color:#fff}
.sl-cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
.sl-cta-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 24px;border-radius:999px;font-weight:750;font-size:.98rem;text-decoration:none;border:1px solid transparent;transition:transform .15s,box-shadow .15s,background .15s;cursor:pointer}
.sl-cta-btn--wa{background:var(--sl-wa);color:#fff;box-shadow:0 12px 24px rgba(37,211,102,.22)}
.sl-cta-btn--wa:hover{transform:translateY(-1px);box-shadow:0 16px 30px rgba(37,211,102,.30)}
.sl-cta-btn--ghost{background:#fff;color:var(--sl-navy);border-color:var(--sl-line)}
.sl-cta-btn--ghost:hover{border-color:rgba(30,181,171,.40);background:var(--sl-teal-soft)}
.sl-features{padding:64px 0;background:#fff}
.sl-features__wrap{max-width:1120px;margin:0 auto;padding:0 24px}
.sl-features__head{max-width:640px;margin:0 auto 36px;text-align:center}
.sl-features__head h2{margin:12px 0 10px;font-size:clamp(1.7rem,2.6vw,2.3rem);letter-spacing:-.03em;color:var(--sl-navy);font-weight:720}
.sl-features__head p{color:var(--sl-muted);line-height:1.6;margin:0}
.sl-features__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.sl-feature{padding:24px 22px;border-radius:var(--sl-radius-md);background:var(--sl-bg);border:1px solid var(--sl-line);transition:transform .2s,box-shadow .2s}
.sl-feature:hover{transform:translateY(-3px);box-shadow:var(--sl-shadow-2)}
.sl-feature__icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:#fff;border:1px solid rgba(30,181,171,.20);color:var(--sl-teal-dark);margin-bottom:14px}
.sl-feature__icon svg{width:22px;height:22px}
.sl-feature h4{margin:0 0 6px;font-size:1.02rem;color:var(--sl-navy);font-weight:720;letter-spacing:-.015em}
.sl-feature p{margin:0;font-size:.92rem;line-height:1.5;color:var(--sl-muted)}
.sl-tele-banner{margin:24px auto;max-width:1120px;padding:36px;border-radius:var(--sl-radius-xl);background:radial-gradient(600px 280px at 90% 50%,rgba(30,181,171,.20),transparent 70%),linear-gradient(135deg,#0b2239 0%,#143852 100%);color:#fff;display:grid;grid-template-columns:1.4fr 1fr;gap:32px;align-items:center;overflow:hidden;position:relative}
.sl-tele-banner__kicker{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;background:rgba(30,181,171,.18);color:#6ee0d6;font-size:.74rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.sl-tele-banner h3{margin:14px 0 10px;font-size:clamp(1.6rem,2.6vw,2.2rem);line-height:1.1;letter-spacing:-.03em;font-weight:750}
.sl-tele-banner p{margin:0 0 22px;color:rgba(255,255,255,.82);line-height:1.6;max-width:520px}
.sl-tele-banner__visual{display:grid;place-items:center}
.sl-tele-banner__visual svg{width:100%;max-width:280px;height:auto;opacity:.92}
@media (max-width:900px){
  .sl-hero-v3{padding:32px 0 20px}
  .sl-hero-v3__wrap{grid-template-columns:1fr;gap:28px}
  .sl-features__grid{grid-template-columns:repeat(2,1fr)}
  .sl-tele-banner{grid-template-columns:1fr;padding:28px 22px;border-radius:var(--sl-radius-lg);margin:24px}
  .sl-tele-banner__visual{display:none}
}
@media (max-width:760px){
  .sl-hero-v3__lead{font-size:.98rem;margin-bottom:22px}
  .sl-offer--primary{order:-1}
}
@media (max-width:560px){
  .sl-features__grid{grid-template-columns:1fr}
  .sl-offer{grid-template-columns:48px 1fr;padding:18px}
  .sl-offer__icon{width:48px;height:48px}
  .sl-offer__arrow{display:none}
  .sl-cta-btn{width:100%}
  .sl-trust-row{font-size:.85rem}
}

/* ============================================================
   sl-v3-1-patch — Ajustes finos (mobile + barra WhatsApp)
=========================================================== */

/* Espaço extra no rodapé do <body> em mobile para a barra fixa do WhatsApp não cobrir conteúdo */
@media (max-width: 760px){
  body{
    padding-bottom: 88px !important;
  }
  /* Se houver footer fixo, garantir que ele também respeite */
  footer{
    margin-bottom: 0;
  }
}

/* Hero mais enxuto no mobile (sem a pílula e com título menor) */
@media (max-width: 760px){
  .sl-hero-v3{
    padding: 24px 0 16px;
  }
  .sl-hero-v3__title{
    font-size: clamp(1.7rem, 7vw, 2.3rem);
    margin: 4px 0 12px;
    line-height: 1.1;
  }
  .sl-hero-v3__lead{
    font-size: .95rem;
    margin-bottom: 18px;
  }
  .sl-cta-row{
    flex-direction: column;
    gap: 10px;
  }
  .sl-cta-btn{
    width: 100%;
  }
  .sl-trust-row{
    margin-top: 16px;
    font-size: .85rem;
  }
}

/* Garantir que a barra fixa do WhatsApp tenha z-index correto mas não cubra cliques */
.sl-whatsapp-float,
.whatsapp-float,
.wa-float,
a[href*="wa.me"][class*="float"]{
  bottom: 16px !important;
  z-index: 50;
}

/* ============================================================
   sl-v3-2-2-polish — Sopro Life mobile (seletores reais)
   Header: .sl-header / .sl-header-in / .sl-brand / .sl-main-nav
   WA header: .sl-nav-cta  |  Instagram: .sl-header-instagram
=========================================================== */

/* -------- 1) Botão WhatsApp do HEADER (.sl-nav-cta) — sem glow -------- */
.sl-header .sl-nav-cta,
header.sl-header .sl-nav-cta{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  padding: 8px 16px !important;
  border-radius: 999px !important;
  background: #25D366 !important;
  color: #fff !important;
  font-weight: 600 !important;
  font-size: .92rem !important;
  text-decoration: none !important;
  border: none !important;
  box-shadow: none !important;
  filter: none !important;
  transition: filter .18s, box-shadow .18s !important;
}
.sl-header .sl-nav-cta:hover{
  filter: brightness(.95);
  box-shadow: 0 3px 10px rgba(37,211,102,.22) !important;
}

/* Pills do WhatsApp (resetar sombras acumuladas) */
.sl-whatsapp-pill{
  box-shadow: none !important;
}
.sl-whatsapp-pill[data-sl="wa"]{
  box-shadow: none !important;
}
.sl-whatsapp-pill[data-sl="wa"]:hover{
  filter: brightness(.96);
  box-shadow: 0 2px 8px rgba(37,211,102,.18) !important;
}

/* -------- 2) Header desktop: alinhamento -------- */
.sl-header .sl-header-in{
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
}
.sl-header .sl-main-nav{
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  flex-wrap: wrap;
}
.sl-header .sl-header-instagram{
  display: inline-grid !important;
  place-items: center !important;
  width: 38px !important;
  height: 38px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(11,34,57,.10) !important;
  background: #fff !important;
  color: var(--sl-navy, #0b2239) !important;
  transition: border-color .18s, transform .18s;
}
.sl-header .sl-header-instagram svg{
  width: 18px;
  height: 18px;
}
.sl-header .sl-header-instagram:hover{
  border-color: var(--sl-teal, #1eb5ab);
  transform: translateY(-1px);
}

/* -------- 3) HEADER MOBILE: enxuto, organizado -------- */
@media (max-width: 880px){
  .sl-header{
    padding: 8px 14px !important;
  }
  .sl-header .sl-header-in{
    flex-wrap: wrap !important;
    gap: 8px !important;
    align-items: center !important;
    justify-content: space-between !important;
  }
  .sl-header .sl-brand{
    flex: 0 0 auto;
    order: 1;
  }
  .sl-header .sl-brand img{
    max-height: 38px !important;
    width: auto !important;
  }
  /* Menu principal vai para baixo, em linha rolável */
  .sl-header .sl-main-nav{
    order: 3 !important;
    flex: 1 1 100% !important;
    gap: 4px !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
    padding: 6px 0 2px !important;
    margin-top: 4px !important;
    scrollbar-width: thin;
  }
  .sl-header .sl-main-nav::-webkit-scrollbar{ height: 4px; }
  .sl-header .sl-nav-link,
  .sl-header .sl-main-nav > a{
    flex: 0 0 auto !important;
    white-space: nowrap !important;
    padding: 6px 10px !important;
    font-size: .88rem !important;
    border-radius: 8px !important;
  }
  /* Instagram + WhatsApp ficam à direita, na primeira linha */
  .sl-header .sl-header-instagram{
    order: 2 !important;
    width: 36px !important;
    height: 36px !important;
  }
  .sl-header .sl-nav-cta{
    order: 2 !important;
    padding: 7px 13px !important;
    font-size: .82rem !important;
  }
  /* Submenu Contato — desktop hover não funciona no mobile */
  .sl-header .sl-has-sub{
    flex: 0 0 auto;
  }
  .sl-header .sl-submenu{
    display: none !important;
  }
}

@media (max-width: 480px){
  .sl-header .sl-nav-cta{
    font-size: .78rem !important;
    padding: 7px 11px !important;
  }
}

/* -------- 4) Scroll margin para âncoras -------- */
section[id],
[id="preparo"],
[id="agendamento"],
[id="links-rodape"],
[id="contato"],
[id="tipos-espirometria"]{
  scroll-margin-top: 90px;
}

/* -------- 5) Seção espirometria — empilhar mobile -------- */
@media (max-width: 820px){
  .sl-section .sl-grid,
  .sl-section [style*="grid-template-columns"],
  .sl-section > .container > div[class*="grid"],
  .sl-section > .sl-wrap > div[class*="grid"]{
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }
  .sl-section aside,
  .sl-section .sl-card--aside,
  .sl-section [class*="aside"]{
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }
  .sl-section ul{ padding-left: 22px; }
  .sl-section li{ margin-bottom: 8px; line-height: 1.55; }
}

/* -------- 6) Seção "Como se preparar" -------- */
@media (max-width: 760px){
  section[id*="prep" i],
  .sl-section[class*="prep" i]{
    padding-top: 36px !important;
    padding-bottom: 32px !important;
  }
  .sl-kicker,
  [class*="kicker"]{
    display: inline-block !important;
    margin-bottom: 10px !important;
  }
  section[id*="prep" i] [class*="grid"],
  section[id*="prep" i] [class*="cards"],
  .sl-prep-grid{
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }
}

/* -------- 7) Eliminar espaços fantasma -------- */
section:empty,
.sl-section:empty,
div.container:empty,
div.sl-wrap:empty{
  display: none !important;
}
@media (max-width: 760px){
  .sl-tele-banner{ min-height: 0 !important; }
  .sl-section + .sl-section{ margin-top: 0 !important; }
}

/* -------- 8) Links úteis + redes sociais (mobile) -------- */
@media (max-width: 760px){
  .sl-links-footer{
    padding: 28px 16px !important;
  }
  .sl-links-footer-grid{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }
  .sl-useful-links-block h3,
  .sl-links-footer h3{
    margin: 0 0 12px !important;
    padding: 0 !important;
    text-align: left !important;
    font-size: 1.15rem !important;
    line-height: 1.3 !important;
  }
  .sl-links-list,
  .sl-social-list{
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }
  .sl-links-list li{ margin-bottom: 10px !important; line-height: 1.5 !important; }
  .sl-links-list a{ display: inline-block; padding: 4px 0; }
  .sl-social-list li{ margin-bottom: 10px !important; }
  .sl-social-list a{
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 6px 0 !important;
    text-decoration: none !important;
  }
  .sl-social-icon{
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    display: inline-grid !important;
    place-items: center !important;
    font-weight: 700 !important;
    font-size: .78rem !important;
    flex: 0 0 auto !important;
  }
}

/* -------- 9) Barra fixa WhatsApp inferior -------- */
@media (max-width: 760px){
  body{
    padding-bottom: 92px !important;
  }
  .sl-whatsapp-bar{
    box-shadow: 0 -6px 22px rgba(11,34,57,.12) !important;
  }
  .sl-whatsapp-bar a{
    padding: 12px 14px !important;
    font-size: .92rem !important;
    line-height: 1.3 !important;
  }
}

/* -------- 10) Mobile geral -------- */
@media (max-width: 760px){
  .sl-section{
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  h2.sl-section-title,
  .sl-section h2{
    font-size: clamp(1.35rem, 5vw, 1.7rem) !important;
    line-height: 1.25 !important;
    margin-bottom: 14px !important;
  }
}

/* ============================================================
   sl-v3-3-2-polish — Sopro Life
   Foco: alinhamento, header suave, botão Ver médicos, padronização
=========================================================== */

/* -------- Variáveis -------- */
:root{
  --sl-container-max: 1120px;
  --sl-container-pad: 20px;
}
@media (max-width: 760px){
  :root{ --sl-container-pad: 16px; }
}

/* -------- 1) Containers padronizados em 1120px -------- */
.sl-wrap,
.sl-section > .container,
.sl-section .container,
.sl-cta-box,
.sl-links-footer-grid,
.sl-booking-wrap{
  max-width: var(--sl-container-max) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: var(--sl-container-pad) !important;
  padding-right: var(--sl-container-pad) !important;
}

/* -------- 2) HEADER: sombra suave (sobrescreve tudo) -------- */
html body header.sl-header,
html body .sl-header{
  box-shadow: 0 1px 0 rgba(11,34,57,.06), 0 1px 4px rgba(11,34,57,.04) !important;
  border-bottom: 1px solid rgba(11,34,57,.05) !important;
}

/* -------- 3) HEADER MOBILE: compactar -------- */
@media (max-width: 880px){
  .sl-header{
    padding: 6px 12px !important;
  }
  .sl-header .sl-header-in{
    gap: 6px !important;
  }
  .sl-header .sl-brand img{
    max-height: 34px !important;
  }
  .sl-header .sl-main-nav{
    gap: 2px !important;
    padding: 4px 0 0 !important;
    margin-top: 2px !important;
  }
  .sl-header .sl-nav-link,
  .sl-header .sl-main-nav > a{
    padding: 5px 9px !important;
    font-size: .84rem !important;
  }
  .sl-header .sl-header-instagram{
    width: 34px !important;
    height: 34px !important;
  }
}

/* -------- 4) Botão WhatsApp do HEADER -------- */
.sl-header .sl-nav-cta{
  box-shadow: none !important;
  padding: 8px 16px !important;
  font-size: .92rem !important;
  white-space: nowrap !important;
  background: #25D366 !important;
  color: #fff !important;
  border-radius: 999px !important;
}
.sl-header .sl-nav-cta:hover{
  filter: brightness(.95);
  box-shadow: 0 3px 10px rgba(37,211,102,.22) !important;
}
@media (max-width: 880px){
  .sl-header .sl-nav-cta[data-mobile-text]{
    font-size: 0 !important;
    padding: 7px 13px !important;
    line-height: 1 !important;
  }
  .sl-header .sl-nav-cta[data-mobile-text]::before{
    content: attr(data-mobile-text);
    font-size: .82rem !important;
    font-weight: 600;
    color: #fff;
    white-space: nowrap;
  }
}
@media (max-width: 380px){
  .sl-header .sl-nav-cta[data-mobile-text]::before{
    font-size: .78rem !important;
  }
  .sl-header .sl-nav-cta[data-mobile-text]{
    padding: 7px 10px !important;
  }
}

/* -------- 5) Barra fixa WA inferior: -20% no mobile -------- */
@media (max-width: 760px){
  .sl-whatsapp-bar{
    box-shadow: 0 -4px 16px rgba(11,34,57,.10) !important;
  }
  .sl-whatsapp-bar a{
    padding: 9px 12px !important;
    font-size: .82rem !important;
    line-height: 1.25 !important;
    gap: 8px !important;
  }
  .sl-whatsapp-bar a > span:first-child{
    font-size: 1rem !important;
  }
  body{
    padding-bottom: 72px !important;
  }
}

/* -------- 6) Banner Telemedicina: gradient mais discreto -------- */
.sl-tele-banner{
  background:
    radial-gradient(600px 280px at 90% 50%, rgba(30,181,171,.10), transparent 70%),
    linear-gradient(135deg, #0b2239 0%, #143852 100%) !important;
}

/* -------- 7) Botão "Ver médicos" — sombra LEVE (override total) -------- */
html body .sl-tele-banner a.sl-cta-btn,
html body .sl-tele-banner a[href*="telemedicina"],
html body a.sl-cta-btn[href*="telemedicina/"]{
  box-shadow: 0 2px 8px rgba(30,181,171,.18) !important;
  background: #1eb5ab !important;
  transition: box-shadow .2s, transform .2s, filter .2s !important;
}
html body .sl-tele-banner a.sl-cta-btn:hover,
html body .sl-tele-banner a[href*="telemedicina"]:hover{
  box-shadow: 0 4px 14px rgba(30,181,171,.28) !important;
  transform: translateY(-1px);
  filter: brightness(1.04);
}

/* -------- 8) Espaçamentos consistentes entre seções -------- */
.sl-section{
  padding-top: clamp(40px, 6vw, 72px) !important;
  padding-bottom: clamp(40px, 6vw, 72px) !important;
}
@media (max-width: 760px){
  .sl-section{
    padding-top: 36px !important;
    padding-bottom: 36px !important;
  }
}

/* -------- 9) Cards: suavização extra sem quebrar variáveis existentes -------- */
.sl-offer,
.sl-feature,
.sl-card{
  transition: transform .2s, box-shadow .2s !important;
}

/* ============================================================
   FIX ALINHAMENTO ESPIROMETRIA — v3.3.3
   Unifica largura do <main.sl-container> com o hero (1120px)
   Data: ajuste pontual pedido pelo Adeildo
   ============================================================ */
main.sl-container,
.sl-espiro-hero > .sl-container,
.sl-espiro-hero-wrap{
  max-width: 1120px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
  box-sizing: border-box !important;
}

/* Garante que a section PREPARO e suas irmãs respeitem o wrap */
main.sl-container > .sl-section{
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

@media (max-width: 720px){
  main.sl-container{
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

/* ============================================================
   REFINAMENTO TELECONSULTA MOBILE STRIP — v3.4.0 (29-mai-2026)
   Hierarquia título/subtítulo + respiro + tipografia
   ============================================================ */
@media (max-width: 360px){
  }


/* SOPRO:TMS_STYLE_START */
.sl-telemed-mobile-strip{
  display: none;
  margin: 10px 14px 6px;
}
@media (max-width: 860px){
  .sl-telemed-mobile-strip{ display: block; }
}
.sl-telemed-mobile-strip a{
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  border-radius: 16px;
  background: linear-gradient(135deg, #ecfbf8 0%, #d9f5f0 100%);
  border: 1px solid rgba(30,181,171,.25);
  box-shadow: 0 4px 14px rgba(30,181,171,.10), 0 1px 2px rgba(0,0,0,.04);
  text-decoration: none;
  color: #0f4a45;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.sl-telemed-mobile-strip a:active{
  transform: scale(.985);
  box-shadow: 0 2px 8px rgba(30,181,171,.14);
}
.sl-tms__icon{
  flex: 0 0 auto;
  width: 40px; height: 40px;
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: 12px;
  background: #1eb5ab;
  color: #fff;
  box-shadow: 0 4px 10px rgba(30,181,171,.35);
}
.sl-tms__icon svg{ width: 22px; height: 22px; }
.sl-telemed-mobile-strip .sl-tms__text{
  flex: 1 1 auto;
  min-width: 0;
  display: flex; align-items: center;
}
.sl-telemed-mobile-strip .sl-tms__title{
  font-size: 15.5px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -.01em;
  color: #0f4a45;
}
.sl-telemed-mobile-strip .sl-tms__arrow{
  flex: 0 0 auto;
  width: 34px; height: 34px;
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: 50%;
  background: #fff;
  color: #1eb5ab;
  border: 1px solid rgba(30,181,171,.30);
  transition: transform .18s ease, background .18s ease, color .18s ease;
}
.sl-telemed-mobile-strip .sl-tms__arrow svg{ width: 16px; height: 16px; }
.sl-telemed-mobile-strip a:hover .sl-tms__arrow,
.sl-telemed-mobile-strip a:active .sl-tms__arrow{
  background: #1eb5ab;
  color: #fff;
  transform: translateX(2px);
}
@media (max-width: 380px){
  .sl-telemed-mobile-strip a{ padding: 12px 13px; gap: 10px; }
  .sl-tms__icon{ width: 36px; height: 36px; }
  .sl-tms__icon svg{ width: 20px; height: 20px; }
  .sl-telemed-mobile-strip .sl-tms__title{ font-size: 14.5px; }
  .sl-telemed-mobile-strip .sl-tms__arrow{ width: 30px; height: 30px; }
}
/* SOPRO:TMS_STYLE_END */



/* ============================================================
   SOPRO:MOBILE_TELECARD_POLISH_V1
   Ajusta o card mobile "Teleconsulta Médica Respiratória"
   logo abaixo do menu superior.
   ============================================================ */
@media (max-width: 860px){
  .sl-telemed-mobile-strip{
    display: block !important;
    margin: 12px 14px 10px !important;
  }

  .sl-telemed-mobile-strip a{
    display: grid !important;
    grid-template-columns: 54px minmax(0, 1fr) 40px !important;
    align-items: center !important;
    gap: 14px !important;
    min-height: 96px !important;
    padding: 18px 16px !important;
    border-radius: 24px !important;
    background:
      radial-gradient(240px 120px at 92% 20%, rgba(30,181,171,.14), transparent 70%),
      linear-gradient(135deg, #effdfb 0%, #ffffff 100%) !important;
    border: 1px solid rgba(30,181,171,.32) !important;
    box-shadow: 0 10px 26px rgba(11,34,57,.075) !important;
    color: #0b2239 !important;
    overflow: hidden !important;
    text-decoration: none !important;
  }

  .sl-tms__icon{
    width: 54px !important;
    height: 54px !important;
    flex: 0 0 54px !important;
    border-radius: 17px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: center !important;
    justify-self: center !important;
    background: linear-gradient(135deg, #1eb5ab 0%, #0f8f87 100%) !important;
    color: #ffffff !important;
    border: 1px solid rgba(255,255,255,.30) !important;
    box-shadow: 0 8px 18px rgba(30,181,171,.25) !important;
    transform: none !important;
    margin: 0 !important;
  }

  .sl-tms__icon svg{
    width: 26px !important;
    height: 26px !important;
    display: block !important;
    transform: none !important;
    margin: 0 !important;
  }

  .sl-telemed-mobile-strip .sl-tms__text{
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: 5px !important;
  }

  .sl-telemed-mobile-strip .sl-tms__title{
    display: block !important;
    font-size: 1.08rem !important;
    line-height: 1.16 !important;
    font-weight: 850 !important;
    letter-spacing: -.025em !important;
    color: #0b2239 !important;
    white-space: normal !important;
  }

  .sl-telemed-mobile-strip .sl-tms__subtitle{
    display: block !important;
    font-size: .86rem !important;
    line-height: 1.34 !important;
    font-weight: 650 !important;
    color: #0f8f87 !important;
  }

  .sl-telemed-mobile-strip .sl-tms__arrow{
    width: 40px !important;
    height: 40px !important;
    flex: 0 0 40px !important;
    border-radius: 999px !important;
    background: #effafa !important;
    border: 1px solid rgba(30,181,171,.30) !important;
    color: #0f8f87 !important;
    box-shadow: none !important;
    align-self: center !important;
    justify-self: center !important;
  }
}

@media (max-width: 380px){
  .sl-telemed-mobile-strip a{
    grid-template-columns: 48px minmax(0, 1fr) 34px !important;
    gap: 10px !important;
    padding: 15px 13px !important;
    min-height: 90px !important;
  }

  .sl-tms__icon{
    width: 48px !important;
    height: 48px !important;
    flex-basis: 48px !important;
  }

  .sl-tms__icon svg{
    width: 23px !important;
    height: 23px !important;
  }

  .sl-telemed-mobile-strip .sl-tms__title{
    font-size: 1rem !important;
  }

  .sl-telemed-mobile-strip .sl-tms__subtitle{
    font-size: .8rem !important;
  }

  .sl-telemed-mobile-strip .sl-tms__arrow{
    width: 34px !important;
    height: 34px !important;
    flex-basis: 34px !important;
  }
}
/* SOPRO:MOBILE_TELECARD_POLISH_V1_END */


