/* ---------------------------
   CLÍNICA ÁPIS - style.css
   Versão revisada — responsividade e ajustes
   Referência: seu arquivo enviado. :contentReference[oaicite:1]{index=1}
   --------------------------- */

/* ====== VARIÁVEIS ====== */
:root{
  --yellow: #f5c727;
  --teal: #2ca8cb;
  --purple-dark: #61315a;
  --purple-mid: #986094;
  --accent: #986094;
  --bg-dark: #331633;
  --maxw: 1200px;
  --radius: 14px;
  --shadow-strong: 0 18px 50px rgba(0,0,0,0.45);
  --shadow-soft: 0 8px 24px rgba(0,0,0,0.20);
  --fw-strong: 800;
  --transition: all .18s ease;
  --container-padding: 24px;
  font-family: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
  color-scheme: light;
}

/* ====== RESET / BASE ====== */
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  background: linear-gradient(180deg,var(--purple-dark),var(--teal));
  color:#fff;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  line-height:1.45;
  font-size:16px;
}
a{color:inherit}
.container{
  max-width:var(--maxw);
  margin:0 auto;
  padding:0 var(--container-padding);
}

/* ====== HEADER ====== */
.site-header{
  width:100%;
  padding:14px 0;
  position:sticky;
  top:0;
  z-index:999999 !important;
  background: linear-gradient(
    135deg,
    rgba(58,24,66,0.95) 0%,
    rgba(88,36,86,0.92) 40%,
    rgba(97,49,90,0.90) 100%
  );
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border-bottom:1px solid rgba(255,255,255,0.04);
}

.header-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}

.brand-area{display:flex;align-items:center;gap:12px}
.logo-wrapper{
  background:#fff;
  padding:6px 10px;
  border-radius:12px;
  display:flex;align-items:center;justify-content:center;
  box-shadow: 0 6px 18px rgba(0,0,0,0.22);
}
.logo-icon{height:56px;width:auto;display:block;filter:drop-shadow(0 0 8px rgba(0,0,0,0.25))}

/* Desktop nav */
.nav-links{
  display:flex;
  gap:14px;
  align-items:center;
}
.nav-links a {
  position: relative;
  padding: 8px 12px;
  border-radius: 10px;
  transition: all .20s ease;
}
.nav-links a::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 10px;
  border: 2px solid transparent;
  transition: border-color .20s ease;
}

.nav-links a:hover::after,
.nav-links a:focus::after {
  border-color: var(--yellow);
}
.nav-links a.active-link::after {
  border-color: var(--yellow);
  opacity: 1;
}
/* WhatsApp header button */
.btn-whats-header{
  background:var(--yellow);
  padding:10px 16px;
  border-radius:10px;
  color:#311f00;
  font-weight:800;
  font-size:14px;
  box-shadow:0 6px 18px rgba(245,199,39,0.35);
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

/* Hamburger (mobile) */
.hamburger{
  display:none;
  background:transparent;
  border:0;
  color:#fff;
  font-size:26px;
  cursor:pointer;
  padding:6px;
}
@media (max-width: 1020px){
  .nav-links{display:none}
  .hamburger{display:block}
}

/* mobile nav panel */
.mobile-nav{
  position:fixed;
  right:16px;
  top:72px;
  background:linear-gradient(180deg, rgba(48,22,52,0.98), rgba(70,26,63,0.98));
  border-radius:12px;
  padding:12px 8px;
  box-shadow:0 20px 46px rgba(0,0,0,0.6);
  display:none;
  flex-direction:column;
  gap:8px;
  z-index:1000;
}
.mobile-nav a {
  position: relative;
  padding: 10px 14px;
  border-radius: 10px;
}

.mobile-nav a::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 10px;
  border: 2px solid transparent;
  transition: border-color .20s ease;
}

.mobile-nav a:hover::after,
.mobile-nav a:focus::after {
  border-color: var(--yellow);
}

/* ====== HERO ====== */
.hero{
  padding: 90px 0;
  background: linear-gradient(
    135deg,
    #61315a 0%,
    #986094 38%,
    #2ca8cb 100%
  );
  color:#fff;
}
.hero-inner{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:48px;
  align-items:center;
}

/* Hero text */
.hero-left{max-width:680px}
/* Destaque visual para o título principal do HERO */
.hero-title {
  font-size: 46px !important;   /* aumenta o tamanho */
  font-weight: 900;
  line-height: 1.1;
  text-shadow: 0 5px 22px rgba(0,0,0,0.50);
}

/* Destaque especial para “Avaliação Neuropsicológica” */
.hero-title .hero-highlight {
  font-size: 52px;              /* maior que o restante do título */
  font-weight: 900;
  color: var(--yellow);
  display: inline-block;
  margin-bottom: 4px;
  text-shadow: 0 6px 26px rgba(0,0,0,0.55);
}
.hero-subtitle{
  font-size: 30px;
  color: #2ca8cb;
}

.hero-sub{
  font-size:18px;
  color:rgba(255,255,255,0.95);
  margin:0 0 22px;
  line-height:1.55;
  text-shadow:0 2px 8px rgba(0,0,0,0.28);
}

/* list with icon bullets */
.hero-list{list-style:none;padding:0;margin:0 0 28px}
.hero-list li{
  position:relative;
  padding-left:36px;
  margin-bottom:12px;
  font-weight:700;
  font-size:17px;
}
.icon-bullet{
  position:absolute;
  left:0;top:0;
  color:var(--yellow);
  font-weight:900;
  font-size:18px;
}

/* CTA in hero */
.btn-hero-cta{
  display:inline-block;
  background:var(--yellow);
  color:#311f00;
  padding:14px 22px;
  border-radius:12px;
  font-weight:900;
  font-size:18px;
  box-shadow:0 8px 26px rgba(245,199,39,0.35);
  text-decoration:none;
}

/* Hero image */
.hero-right{display:flex;justify-content:center}
.hero-image-wrapper{
  background: rgba(255,255,255,0.12);
  padding:12px;
  border-radius:20px;
  backdrop-filter:blur(6px);
  box-shadow:var(--shadow-strong);
}
.hero-img{
  display:block;
  width:100%;
  max-width:520px;
  border-radius:16px;
  box-shadow:0 18px 50px rgba(0,0,0,0.45);
}

/* ====== SECTIONS: shared styles ====== */
.section-title{
  font-size:32px;
  font-weight:900;
  margin:0 0 12px;
  color:#fff;
  text-shadow:0 3px 12px rgba(0,0,0,0.35);
}
.section-sub{
  color:rgba(255,255,255,0.90);
  max-width:820px;
  margin:0 auto 30px auto;
  line-height:1.6;
}

/* ========== AVALIAÇÃO (cards white) ========== */
.avaliacao-section{
  padding:64px 0;
  background:linear-gradient(135deg,#4a1e54 0%, #5d2b6b 40%, #6b3477 75%);
  color:#fff;
}
.avaliacao-inner{text-align:center;max-width:960px;margin:0 auto}
.avaliacao-title{font-size:30px;font-weight:900;margin-bottom:10px}
.avaliacao-sub{font-size:16px;margin-bottom:26px;color:rgba(255,255,255,0.92)}
.avaliacao-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:28px}
.avaliacao-card{
  background:#fff;color:#1d1d1d;border-radius:14px;padding:22px;
  box-shadow:0 10px 30px rgba(0,0,0,0.12);
  transition:transform .22s, box-shadow .22s;
}
.avaliacao-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(0,0,0,0.14)}
.avaliacao-icon{width:64px;height:64px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;font-size:26px}
.avaliacao-card h3{margin:12px 0 8px;color:#54245e;font-size:18px}
.avaliacao-card p{font-size:15px;color:#333}

/* ========== BENEFICIA (colored cards) ========== */
/* =========================================================
   SEÇÃO: QUEM PODE SE BENEFICIAR  (CORRIGIDA)
   ========================================================= */

.beneficia-section{
  padding:70px 0;
  background:linear-gradient(135deg, #5d2a6a 0%, #6f3378 40%, #7c3d86 85%);
  color:#ffffff;
}

.beneficia-inner{
  text-align:center;
  max-width:1100px;
  margin:0 auto;
}

.beneficia-title{
  font-size:34px;
  font-weight:900;
  margin-bottom:16px;
  text-shadow:0 3px 14px rgba(0,0,0,0.45);
}

.beneficia-sub{
  font-size:18px;
  color:rgba(255,255,255,0.90);
  line-height:1.6;
  max-width:780px;
  margin:0 auto 50px auto;
}

/* === GRID === */
.beneficia-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:26px;
}

/* === CARD === */
.beneficia-card{
  border-radius:20px;
  padding:30px 26px;
  box-shadow:0 16px 40px rgba(0,0,0,0.22);
  transition:transform .25s ease, box-shadow .25s ease;
  text-align:left;
}

.beneficia-card:hover{
  transform:translateY(-10px);
  box-shadow:0 22px 55px rgba(0,0,0,0.28);
}

/* Ícone grande */
.beneficia-icon{
  font-size:48px;
  margin-bottom:14px;
}

/* Título */
.beneficia-card h3{
  font-size:22px;
  font-weight:800;
  margin-bottom:20px;
}

/* Lista interna */
.beneficia-card ul{
  list-style:none;
  margin:0;
  padding:0;
}

.beneficia-card ul li{
  font-size:17px;
  font-weight:600;
  margin-bottom:12px;
  padding-left:22px;
  position:relative;
}

.beneficia-card ul li::before{
  content:"•";
  position:absolute;
  left:0;
  top:0;
  font-size:26px;
  line-height:18px;
  color:rgba(0,0,0,0.6);
}

/* === CORES DE FUNDO DOS CARDS === */
.yellow-card{
  background:#f5c727;
  color:#311f00;
}

.purple-card{
  background:#986094;
  color:#241424;
}

.teal-card{
  background:#2ca8cb;
  color:#063038;
}
.elderly-card {
  background: #7BCFAF; /* verde claro profissional */
  color: #000;
}

/* === RESPONSIVIDADE === */

@media (max-width: 980px){
  .beneficia-grid{
    grid-template-columns:1fr;
    max-width:600px;
    margin:0 auto;
  }

  .beneficia-card{
    padding:24px;
  }
}

@media (max-width: 640px){
  .beneficia-title{
    font-size:30px;
  }

  .beneficia-sub{
    font-size:16px;
    margin-bottom:32px;
  }

  .beneficia-card{
    padding:22px;
    border-radius:16px;
  }

  .beneficia-card h3{
    font-size:20px;
  }

  .beneficia-icon{
    font-size:42px;
  }

  .beneficia-card ul li{
    font-size:15px;
  }
}


/* ========== COMO FUNCIONA (cards glass) ========== */
.funciona-section{padding:64px 0;background:linear-gradient(135deg,#2c1242 0%,#4a2761 40%,#61315a 80%)}
.funciona-title{font-size:30px;font-weight:900;margin-bottom:8px;text-align:center}
.funciona-sub{font-size:16px;color:rgba(255,255,255,0.90);text-align:center;max-width:820px;margin:0 auto 26px}
.funciona-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}
.funciona-card{
  padding:20px;border-radius:14px;background:rgba(255,255,255,0.06);
  backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,0.08);
  box-shadow:0 12px 36px rgba(0,0,0,0.28);text-align:left;
}
.funciona-num{
  width:56px;height:56px;border-radius:12px;
  background:linear-gradient(135deg,var(--yellow),#f2d254);
  color:#311f00;display:flex;align-items:center;justify-content:center;
  font-weight:900;font-size:22px;margin-bottom:12px;box-shadow:0 8px 20px rgba(0,0,0,0.22)
}
.funciona-card h3{font-size:18px;color:#f9dfff;margin:6px 0}
.funciona-card p{font-size:14px;color:rgba(255,255,255,0.88)}

/* ========== DEPOIMENTOS ========== */
.depoimentos-section{padding:64px 0;background:linear-gradient(135deg,#61315a 0%,#7a3f83 40%,#986094 80%)}
.depo-title{font-size:30px;font-weight:900;text-align:center;margin-bottom:8px}
.depo-sub{font-size:16px;text-align:center;color:rgba(255,255,255,0.92);max-width:760px;margin:0 auto 26px}
.depo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.depo-card{background:rgba(255,255,255,0.06);padding:22px;border-radius:14px;border:1px solid rgba(255,255,255,0.12);box-shadow:0 12px 36px rgba(0,0,0,0.30)}
.depo-quote{font-size:44px;color:var(--yellow);font-weight:900;margin-bottom:8px}
.depo-text{font-size:16px;color:rgba(255,255,255,0.94);margin-bottom:10px}
.depo-author{font-weight:700;color:rgba(255,255,255,0.78)}

/* ========== SOBRE ======== */
.sobre-section{padding:64px 0;background:linear-gradient(135deg,#2c1242 0%,#4a2761 40%,#61315a 90%)}
.sobre-content{display:grid;grid-template-columns:1.2fr 1fr;gap:28px;align-items:center;max-width:1100px;margin:0 auto}
.sobre-title{font-size:30px;font-weight:900;margin-bottom:10px}
.sobre-sub{font-size:16px;color:rgba(255,255,255,0.92);line-height:1.6;margin-bottom:18px}
.sobre-list{list-style:none;padding:0}
.sobre-list li{position:relative;padding-left:26px;margin-bottom:12px;font-weight:700}
.sobre-list li::before{content:"✔";position:absolute;left:0;color:var(--yellow);font-size:18px}
.sobre-image-wrapper{background:rgba(255,255,255,0.10);padding:12px;border-radius:14px;box-shadow:var(--shadow-strong)}
.sobre-image-wrapper img,
.sobre-image-wrapper .sobre-image {
  max-width: 100%;
  height: auto;
  display: block;
}

/* ========== LOCALIZAÇÕES (endereços) ======== */
.contato-section{padding:64px 0;background:linear-gradient(135deg,#4a1f57 0%,#61315a 45%,#2ca8cb 100%)}
.contato-title{font-size:30px;font-weight:900;text-align:center;margin-bottom:8px}
.contato-sub{font-size:16px;text-align:center;color:rgba(255,255,255,0.92);max-width:760px;margin:0 auto 22px}
.enderecos-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:28px 0 18px}
.endereco-card{background:rgba(255,255,255,0.08);padding:18px;border-radius:14px;text-align:center;box-shadow:var(--shadow-soft)}
.endereco-icone{font-size:38px;margin-bottom:8px}
.endereco-card h3{color:var(--yellow);font-weight:900;margin-bottom:6px}
.endereco-card p{color:rgba(255,255,255,0.90);margin:0}
.btn-contato {
  display: block;
  margin: 20px auto 0 auto;
  background: #f5c727;
  color: #311f00;
  padding: 10px 18px;       /* ↓ menor que antes */
  font-size: 15px;          /* ↓ tamanho do texto */
  font-weight: 700;         /* ↓ menos pesado */
  border-radius: 8px;       /* ↓ borda mais elegante */
  width: fit-content;       /* ↓ fica só do tamanho do texto */
  text-align: center;
  text-decoration: none;

  box-shadow: 0 4px 12px rgba(245,199,39,0.35); /* ↓ sombra menor */
  transition: transform .18s, box-shadow .18s;
}

.btn-contato:hover {
  transform: translateY(-3px);
  box-shadow: 0 6px 18px rgba(245,199,39,0.45);
}
/* CTA final */
.cta-final-section{padding:80px 0;background:linear-gradient(135deg,var(--teal) 0%, var(--purple-mid) 50%, var(--purple-dark) 100%);text-align:center}
.cta-final-title{font-size:36px;font-weight:900;margin-bottom:12px}
.cta-final-sub{font-size:18px;margin-bottom:22px;color:rgba(255,255,255,0.92)}
.cta-final-button{background:var(--yellow);color:#311f00;padding:16px 28px;border-radius:14px;font-weight:900;box-shadow:0 12px 34px rgba(245,199,39,0.45);text-decoration:none}

/* floating whatsapp */
.whatsapp-float{
  position:fixed;right:16px;bottom:18px;width:62px;height:62px;border-radius:50%;
  background:linear-gradient(135deg,var(--teal),var(--purple-mid));
  display:flex;align-items:center;justify-content:center;color:white;font-size:24px;
  box-shadow:0 16px 46px rgba(0,0,0,0.35);z-index:999;
}

/* ====== RODAPÉ ====== */
.footer-section{padding:48px 0 28px 0;background:linear-gradient(135deg,#2c1242 0%,#4a2761 40%,#61315a 80%);color:#fff}
.footer-inner{text-align:center}
.footer-logo{height:64px;margin-bottom:10px;filter:drop-shadow(0 0 8px rgba(255,255,255,0.28))}
.footer-desc{font-size:14px;color:rgba(255,255,255,0.85);margin-bottom:18px}
.footer-links{display:flex;gap:18px;justify-content:center;flex-wrap:wrap;margin-bottom:18px}
.footer-links a{text-decoration:none;color:rgba(255,255,255,0.92);font-weight:700}
.footer-copy{font-size:13px;color:rgba(255,255,255,0.72)}

/* ====== RESPONSIVIDADE GERAL ====== */

/* medium screens */
@media (max-width: 1100px){
  .hero-inner{grid-template-columns:1fr;gap:28px}
  .hero-title{font-size:36px}
  .hero-img{max-width:460px}
  .sobre-content{grid-template-columns:1fr;gap:20px}
}

/* tablet */
@media (max-width: 900px){
  .avaliacao-cards{grid-template-columns:1fr}
  .beneficia-grid{grid-template-columns:repeat(2,1fr)}
  .funciona-grid{grid-template-columns:repeat(2,1fr)}
  .depo-grid{grid-template-columns:1fr}
  .enderecos-grid{grid-template-columns:repeat(2,1fr)}
  .hero-title{font-size:32px}
  .hero-sub{font-size:16px}
  .hero-image-wrapper{padding:10px}
  .hero-img{max-width:420px}
  .logo-icon{height:50px}
  .container{padding:0 18px}
}
@media (max-width: 900px) {
  .hero-inner {
    grid-template-columns: 1fr;
    text-align: center;
    gap: 32px;
  }
}
@media (max-width: 900px) {
  .hero-title {
    font-size: 32px !important;
    line-height: 1.2;
  }

  .hero-title .hero-highlight {
    font-size: 36px;
  }
}


/* mobile */
@media (max-width: 640px){
  body{font-size:15px}
  .site-header{padding:10px 0}
  .header-inner{padding:0}
  .logo-icon{height:44px}
  .hamburger{display:block}
  .mobile-nav{right:12px;top:64px}
  .nav-links{display:none}
  .hero{padding:36px 0}
  .hero-title{font-size:26px}
  .hero-sub{font-size:15px}
  .hero-list li{font-size:15px;padding-left:28px}
  .icon-bullet{font-size:16px}
  .btn-hero-cta{width:100%;padding:14px;font-size:16px;border-radius:12px}
  .hero-image-wrapper{padding:10px;border-radius:12px;box-shadow:0 10px 26px rgba(0,0,0,0.28)}
  .hero-img{max-width:320px}
  .avaliacao-section, .beneficia-section, .funciona-section, .depoimentos-section, .sobre-section, .contato-section, .cta-final-section{padding:36px 0}
  .avaliacao-card, .beneficia-card, .funciona-card, .depo-card, .endereco-card{padding:16px;border-radius:12px;box-shadow:0 8px 18px rgba(0,0,0,0.22)}
  .avaliacao-cards, .beneficia-grid, .funciona-grid, .depo-grid, .enderecos-grid{gap:14px}
  .enderecos-grid{grid-template-columns:1fr}
  .footer-section{padding:28px 0}
  .footer-logo{height:54px}
}

/* tiny phones */
@media (max-width: 380px){
  .hero-title{font-size:22px}
  .cta-final-button{padding:12px 18px;font-size:16px;width:100%}
  .hero-img{max-width:280px}
  .logo-icon{height:42px}
}

/* Accessibility focus */
a:focus, button:focus{
  outline:3px solid rgba(245,199,39,0.25);
  outline-offset:3px;
  border-radius:8px;
}

/* small utilities */
.center{display:flex;align-items:center;justify-content:center}
.mt-12{margin-top:12px}
.hidden{display:none !important}

/* ===== FIX do menu não acompanhar ===== */



/* ajuste específico para a hero (mantém espaçamento visual) */
.hero { padding-top: calc(var(--site-header-height) + 40px); }

/* mobile nav precisa considerar header fixo */
.mobile-nav {
  top: calc(var(--site-header-height) + 8px);
}

/* quando quiser remover o padding extra para elementos que já tratam o espaçamento, 
   reduza / comente as regras acima. */
