/*================ CARTELA CLINICA5 (PADRAO) ================*/
:root {
interpolate-size:allow-keywords;

/*================ HEADER ================*/
--header-bkg:      rgba(13,39,49,.93);
--header-borda:    rgba(255,255,255,.12);
--header-menu:     #ffffff;
--header-btn-bkg:  #b7794b;
--header-btn-texto:#ffffff;
/*================ HERO ================*/
--hero-overlay:    linear-gradient(90deg,rgba(10,28,36,.92) 0%,rgba(10,28,36,.55) 52%,rgba(10,28,36,.18));
--hero-btn-fundo:  #b7794b;
--hero-btn-texto:  #ffffff;
--hero-btn-hover:  #a16335;
/*================ FOOTER ================*/
--footer-bkg:      #0b222b;
--footer-texto:    #b9c7ca;
--footer-endereco: #b9c7ca;
--footer-logo:     #ffffff;
--footer-dev:      #b9c7ca;
/*================ BASE ================*/
--fundo:           #f7f4ef;
--fundo-secundario:#102b36;
--fundo-card:      #dfe8df;
--fundo-claro:     #ffffff;
/*================ TEXTOS ================*/
--texto:            #29404a;
--texto-secundario:#c2d0d4;
--texto-suave:     #68767b;
--texto-escuro:    #29404a;
--texto-faq:       #69777c;
--rotulo:          var(--destaque);
/*================ DESTAQUE ================*/
--destaque:        #b7794b;
--destaque-texto:  #ffffff;
/*================ BOTÕES ================*/
--botao-fundo:        #b7794b;
--botao-texto:        #ffffff;
--botao-escuro-fundo: #102b36;
--botao-escuro-texto: #ffffff;
--botao-escuro-hover: #1a4553;
--borda:           #ddd8d0;
--borda-faq:       #d7d1c8;
--borda-modal:     #1a4553;
/*================ MODAL ================*/
--modal-fundo:      #102b36;
--modal-texto:      #ffffff;
--modal-texto-secundario:#c2d0d4;
--modal-overlay:rgba(3,12,17,.92);
/*================ SOBREPOSIÇÕES ================*/
--card-overlay:    linear-gradient(transparent 20%,rgba(10,28,36,.92));
/*================ FAIXA ================*/
--faixa-fundo:     #b7794b;
--faixa-texto:     #ffffff;
/*================ CTA ================*/
--cta-fundo:       #b7794b;
--cta-texto:       #ffffff;
/*================ PARTICULARIDADES ================*/
--hero-nota-fundo: var(--fundo-claro);
--hero-nota-texto: var(--texto-escuro);
}

/*================ HERO ================*/
.hero                       { min-height:810px; position:relative; padding:165px 0 80px; display:flex; align-items:center; color:#ffffff; background:var(--fundo-secundario); }
.hero .content              { width:100%; max-width:1400px; margin:0 auto; padding:0 20px; display:grid; grid-template-columns:1fr 1fr; gap:7vw; align-items:center; }
.hero-conteudo              { max-width:640px; }
.hero-rotulo                { color:var(--rotulo); font-size:11px; font-weight:bold; letter-spacing:2px; text-transform:uppercase; }
.hero-titulo                { margin:18px 0 24px; font-size:clamp(48px,6vw,82px); line-height:.96; }
.hero-titulo i              { color:#dfb695; font-style:normal; }
.hero-texto                 { max-width:590px; margin-bottom:30px; color:var(--texto-secundario); font-size:17px; line-height:1.8; }
.hero-btn                   { color:var(--hero-btn-texto); background:var(--hero-btn-fundo); }
.hero-btn:hover             { color:var(--hero-btn-texto); background:var(--hero-btn-hover); transform:none; box-shadow:0 6px 18px rgba(0,0,0,.18); }
.hero-visual                { position:relative; height:610px; }
.hero-visual img            { width:82%; height:100%; object-fit:cover; float:right; }
.hero-nota                  { position:absolute; left:0; bottom:45px; width:235px; padding:27px; color:var(--hero-nota-texto); background:var(--hero-nota-fundo); }
.hero-nota strong           { display:block; margin-bottom:8px; font:normal 24px Georgia,serif; }
.hero-nota span             { color:var(--texto-suave); font-size:13px; line-height:1.5; }

/*================ ÍNDICE ================*/
.indice                     { color:var(--texto-escuro); background:var(--fundo-claro); border-bottom:1px solid var(--borda); }
.indice .content            { display:grid; grid-template-columns:repeat(4,1fr); }
.indice div                 { padding:28px 25px; border:0; }
.indice div:not(:last-child) { border-right:1px solid var(--borda); }
.indice strong              { display:block; margin-bottom:5px; color:var(--destaque); font:normal 24px Georgia,serif; }
.indice span                { color:var(--texto-suave); font-size:12px; }

/*================ TÍTULOS ================*/
.titulo                     { max-width:780px; margin-bottom:45px; }
.titulo h2                  { margin-top:10px; font-size:clamp(40px,5vw,61px); line-height:1.05; }

/*================ ESPECIALIDADES ================*/
.especialidades             { color:var(--texto-escuro); background:var(--fundo-claro); }
.grid-especialidades        { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; }
.especialidade              { min-height:300px; padding:30px; display:flex; flex-direction:column; border:1px solid var(--borda); color:var(--texto-escuro); background:var(--fundo-claro); transition:.3s; }
.especialidade:hover        { color:var(--texto); background:var(--fundo-card); transform:translateY(-6px); }
.especialidade b            { color:var(--destaque); font:normal 30px Georgia,serif; }
.especialidade h3           { margin-top:auto; font-size:26px; }
.especialidade p            { margin-top:12px; color:var(--texto-suave); font-size:14px; line-height:1.65; }

/*================ JORNADA ================*/
.jornada                    { background:var(--fundo); }
.jornada .content           { display:grid; grid-template-columns:.9fr 1.1fr; gap:7vw; align-items:center; }
.jornada-img                { height:620px; }
.jornada-img img            { width:100%; height:100%; object-fit:cover; border-radius:260px 260px 0 0; }
.jornada h2                 { margin:14px 0 20px; font-size:54px; line-height:1.05; }
.jornada p                  { color:var(--texto-suave); line-height:1.8; }
.passos                     { margin-top:30px; }
.passo                      { padding:19px 0; display:grid; grid-template-columns:50px 1fr; border-bottom:1px solid var(--borda); }
.passo b                    { color:var(--destaque); }

/*================ PROGRAMAS ================*/
.programas                  { background:var(--fundo-card); }
.grid-programas             { display:grid; grid-template-columns:1.15fr .85fr .85fr; gap:16px; }
.programa                   { min-height:410px; position:relative; padding:30px; display:flex; flex-direction:column; justify-content:flex-end; overflow:hidden; color:#ffffff; background:var(--fundo-card); }
.programa img               { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:.5s; }
.programa:after             { content:""; position:absolute; inset:0; background:var(--card-overlay); }
.programa:hover img         { transform:scale(1.06); }
.programa div               { position:relative; z-index:1; }
.programa h3                { font-size:29px; }
.programa p                 { margin-top:10px; color:rgba(255,255,255,.80); font-size:14px; line-height:1.6; }

/*================ EQUIPE ================*/
.equipe                     { color:var(--texto-escuro); background:var(--fundo-claro); }
.grid-equipe                { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.profissional img           { width:100%; height:400px; object-fit:cover; filter:saturate(.75); }
.profissional h3            { margin-top:16px; font-size:24px; }
.profissional span          { color:var(--destaque); font-size:11px; font-weight:bold; letter-spacing:1.5px; }

/*================ DEPOIMENTO ================*/
.depoimento                 { display:flex; color:#ffffff; background:var(--botao-escuro-fundo); }
.depoimento .content        { width:100%; max-width:1400px; margin:0 auto; padding:110px 20px; text-align:center; }
.depoimento blockquote      { margin:0 auto; max-width:960px; font:italic 38px/1.45 Georgia,serif; }
.depoimento strong          { display:block; margin-top:25px; color:var(--destaque); font-size:12px; }

/*================ FAQ ================*/
.faq                        { color:var(--texto-escuro); background:var(--fundo-claro); }
.faq .content               { display:grid; grid-template-columns:.8fr 1.2fr; gap:6vw; }
.faq h2                     { margin-top:12px; font-size:52px; line-height:1; }

/*================ CTA ================*/
.cta                        { display:flex; color:var(--cta-texto); background:var(--cta-fundo); }
.cta .content               { width:100%; max-width:1400px; margin:0 auto; padding:75px 20px; display:flex; justify-content:space-between; align-items:center; gap:30px; }
.cta h2                     { max-width:760px; font-size:47px; }
.cta .btn                   { color:var(--botao-escuro-fundo); background:var(--fundo-claro); }
.cta .btn:hover             { color:var(--botao-escuro-fundo); background:var(--fundo-claro); }

/*================ ANIMAÇÃO DE ENTRADA (específica) ================*/
.grid-especialidades .especialidade:nth-child(odd),
.grid-programas .programa:nth-child(odd),
.grid-equipe .profissional:nth-child(odd) { transform:translateX(-55px) translateY(30px); }
.grid-especialidades .especialidade:nth-child(even),
.grid-programas .programa:nth-child(even),
.grid-equipe .profissional:nth-child(even) { transform:translateX(55px) translateY(30px); }
.grid-especialidades .reveal.ativo,
.grid-programas .reveal.ativo,
.grid-equipe .reveal.ativo  { opacity:1; transform:none; }
.grid-especialidades .especialidade:nth-child(2), .grid-programas .programa:nth-child(2), .grid-equipe .profissional:nth-child(2) { transition-delay:.10s; }
.grid-especialidades .especialidade:nth-child(3), .grid-programas .programa:nth-child(3), .grid-equipe .profissional:nth-child(3) { transition-delay:.20s; }
.grid-especialidades .especialidade:nth-child(4) { transition-delay:.30s; }

/*================ RESPONSIVO ================*/
@media(max-width:900px) {
    .hero .content,
    .jornada .content,
    .faq .content           { grid-template-columns:1fr; }
    .hero-visual            { height:520px; }
    .indice .content        { grid-template-columns:1fr 1fr; }
    .grid-especialidades    { grid-template-columns:1fr 1fr; }
    .grid-programas         { grid-template-columns:1fr; }
}

@media(max-width:560px) {
    .grid-especialidades,
    .grid-equipe,
    .indice .content        { grid-template-columns:1fr; }
    .indice div             { border:0; border-bottom:1px solid var(--borda); }
    .hero-visual img        { width:100%; }
    .hero-nota              { left:15px; }
    .jornada-img            { height:460px; }
    .cta .content           { flex-direction:column; align-items:flex-start; }
}