/* =========================================================
   VOCACIONAL — página de conversão (Irmãs de São José de Chambéry)
   Padrão visual --sj-* (paleta azul Chambéry)
   ========================================================= */

/* Tags / títulos compartilhados ---------------------------- */
.voc-bloco-tag{display:inline-flex;align-items:center;padding:6px 14px;background:#eef5fb;color:var(--sj-azul);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;border-radius:30px;margin-bottom:14px;}
section[id^='voc'] h2, .voc-section-header h2{font-size:36px;font-weight:900;color:var(--sj-titulo);line-height:1.12;letter-spacing:-.025em;margin:0 0 14px;}
.voc-section-header{max-width:780px;margin:0 auto 46px;text-align:center;}
.voc-section-header p{font-size:16px;color:var(--sj-cinza-texto);line-height:1.7;margin:0;}

/* Botões --------------------------------------------------- */
.voc-btn{display:inline-flex;align-items:center;gap:8px;padding:14px 26px;font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;border-radius:8px;border:0;cursor:pointer;font-family:var(--fonte-padrao);transition:all .25s ease;text-decoration:none;}
.voc-btn-primary{background:var(--sj-azul);color:#fff;box-shadow:0 12px 28px rgba(29,138,216,.32);}
.voc-btn-primary:hover{background:var(--sj-azul-escuro);transform:translateY(-2px);color:#fff;}
.voc-btn-ghost{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.4);padding:12px 24px;}
.voc-btn-ghost:hover{background:rgba(255,255,255,.12);border-color:#fff;color:#fff;}
.voc-btn-full{width:100%;justify-content:center;}

/* ---------------------------------------------------------- *
   HERO
 * ---------------------------------------------------------- */
.voc-hero{position:relative;min-height:540px;background-size:cover;background-position:center;background-color:var(--sj-azul-base);display:flex;align-items:center;padding:80px 0;color:#fff;overflow:hidden;}
.voc-hero-overlay{position:absolute;inset:0;background:linear-gradient(135deg, rgba(0,40,72,.85) 0%, rgba(0,73,124,.7) 55%, rgba(29,138,216,.55) 100%);z-index:1;}
.voc-hero-inner{position:relative;z-index:2;max-width:780px;}
.voc-hero-tag{display:inline-block;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.85);background:rgba(255,255,255,.12);padding:8px 16px;border-radius:30px;margin-bottom:22px;backdrop-filter:blur(4px);}
.voc-hero h1{font-size:52px;font-weight:900;line-height:1.08;letter-spacing:-.03em;margin:0 0 18px;color:#fff;}
.voc-hero p{font-size:18px;line-height:1.6;color:rgba(255,255,255,.92);margin:0 0 32px;max-width:640px;}
.voc-hero-actions{display:flex;flex-wrap:wrap;gap:14px;}

/* ---------------------------------------------------------- *
   VIDA CONSAGRADA
 * ---------------------------------------------------------- */
.voc-vida{padding:90px 0;background:#fff;scroll-margin-top:120px;}
.voc-vida-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:center;}
.voc-vida-texto h2{margin-bottom:18px;}
.voc-vida-texto .voc-lead{font-size:18px;font-weight:600;color:var(--sj-titulo);line-height:1.55;margin:0 0 20px;}
.voc-prosa{font-size:15.5px;line-height:1.75;color:var(--sj-texto);}
.voc-prosa p{margin:0 0 1em;}

.voc-versiculo{margin:30px 0 28px;padding:24px 26px 22px;background:linear-gradient(135deg, #eef5fb 0%, #fff 100%);border-left:4px solid var(--sj-azul);border-radius:0 14px 14px 0;position:relative;}
.voc-versiculo i{position:absolute;top:18px;left:24px;color:var(--sj-azul-claro);font-size:22px;opacity:.4;}
.voc-versiculo p{font-size:17px;font-style:italic;color:var(--sj-azul-escuro);font-weight:600;line-height:1.5;margin:0 0 8px;padding-left:32px;}
.voc-versiculo cite{display:block;font-size:13px;color:var(--sj-azul);font-weight:800;text-transform:uppercase;letter-spacing:.06em;font-style:normal;padding-left:32px;}

.voc-pilares{list-style:none;margin:30px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.voc-pilares li{padding:18px 16px 16px;background:#fff;border:1px solid var(--sj-cinza-borda);border-radius:12px;text-align:center;transition:all .3s ease;}
.voc-pilares li:hover{transform:translateY(-3px);border-color:var(--sj-azul-suave);box-shadow:0 14px 26px rgba(0,73,124,.10);}
.voc-pilares li i{font-size:22px;color:var(--sj-azul);margin-bottom:10px;display:block;}
.voc-pilares li strong{display:block;font-size:13.5px;color:var(--sj-titulo);font-weight:800;margin-bottom:4px;}
.voc-pilares li span{display:block;font-size:11.5px;color:var(--sj-cinza-texto);line-height:1.45;}

.voc-vida-foto{position:relative;border-radius:18px;overflow:hidden;aspect-ratio:4/5;background:var(--sj-azul-suave);box-shadow:0 30px 60px rgba(0,73,124,.18);}
.voc-vida-foto img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;}
.voc-vida-foto::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg, transparent 60%, rgba(0,40,72,.25) 100%);pointer-events:none;}

/* ---------------------------------------------------------- *
   CAMINHO VOCACIONAL — etapas
 * ---------------------------------------------------------- */
.voc-caminho{padding:90px 0;background:linear-gradient(180deg, #f7fafc 0%, #fff 100%);scroll-margin-top:120px;}
.voc-etapas{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:18px;}

.voc-etapa{position:relative;display:grid;grid-template-columns:90px 1fr 280px;gap:24px;align-items:center;padding:26px 28px;background:#fff;border:1px solid var(--sj-cinza-borda);border-radius:16px;transition:all .35s ease;overflow:hidden;}
.voc-etapa::before{content:'';position:absolute;left:0;top:0;width:5px;height:100%;background:linear-gradient(180deg, var(--sj-azul) 0%, var(--sj-azul-escuro) 100%);opacity:0;transition:opacity .3s ease;}
.voc-etapa:hover{transform:translateX(4px);border-color:var(--sj-azul-suave);box-shadow:0 22px 40px rgba(0,73,124,.12);}
.voc-etapa:hover::before{opacity:1;}

.voc-etapa-numero{font-size:48px;font-weight:900;color:var(--sj-azul-suave);line-height:1;font-family:var(--fonte-padrao);letter-spacing:-.04em;text-align:center;transition:color .3s ease;}
.voc-etapa:hover .voc-etapa-numero{color:var(--sj-azul);}

.voc-etapa-conteudo{padding:6px 0;}
.voc-etapa-cabeca{display:flex;align-items:flex-start;gap:14px;margin-bottom:8px;}
.voc-etapa-cabeca > i{font-size:24px;color:var(--sj-azul);width:46px;height:46px;border-radius:50%;background:#eef5fb;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.voc-etapa-tag{display:inline-block;font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--sj-cinza-texto);margin-bottom:2px;}
.voc-etapa-cabeca h3{font-size:21px;font-weight:800;color:var(--sj-titulo);margin:0;letter-spacing:-.01em;line-height:1.2;}
.voc-etapa-conteudo p{font-size:14.5px;line-height:1.7;color:var(--sj-cinza-texto);margin:6px 0 0;}

.voc-etapa-foto{width:100%;aspect-ratio:4/3;border-radius:12px;overflow:hidden;background:var(--sj-azul-suave);}
.voc-etapa-foto img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;transition:transform .5s ease;}
.voc-etapa:hover .voc-etapa-foto img{transform:scale(1.05);}
.voc-etapa:not(:has(.voc-etapa-foto)){grid-template-columns:90px 1fr;}

/* ---------------------------------------------------------- *
   DEPOIMENTO
 * ---------------------------------------------------------- */
.voc-depoimento{padding:90px 0;background:var(--sj-azul-escuro);position:relative;overflow:hidden;}
.voc-depoimento::before{content:'';position:absolute;left:-100px;top:-100px;width:400px;height:400px;background:radial-gradient(circle, rgba(29,138,216,.25) 0%, transparent 70%);}
.voc-depoimento::after{content:'';position:absolute;right:-100px;bottom:-100px;width:400px;height:400px;background:radial-gradient(circle, rgba(29,138,216,.18) 0%, transparent 70%);}
.voc-depoimento-card{position:relative;z-index:2;text-align:center;max-width:780px;margin:0 auto;}
.voc-aspas{font-size:60px;color:rgba(255,255,255,.18);margin-bottom:16px;display:inline-block;}
.voc-depoimento blockquote{margin:0;padding:0;}
.voc-depoimento blockquote p{font-size:24px;font-weight:500;font-style:italic;color:#fff;line-height:1.5;margin:0 0 30px;}
.voc-depoimento blockquote footer{display:flex;align-items:center;justify-content:center;gap:14px;color:#fff;}
.voc-depoimento blockquote footer img{width:64px;height:64px;border-radius:50%;object-fit:cover;border:3px solid rgba(255,255,255,.3);}
.voc-depoimento blockquote footer div{text-align:left;}
.voc-depoimento blockquote footer strong{display:block;font-size:15px;font-weight:800;color:#fff;}
.voc-depoimento blockquote footer em{display:block;font-size:12px;font-weight:600;color:rgba(255,255,255,.7);font-style:normal;text-transform:uppercase;letter-spacing:.06em;}

/* ---------------------------------------------------------- *
   FORMULÁRIO
 * ---------------------------------------------------------- */
.voc-formulario{padding:90px 0;background:#fff;scroll-margin-top:120px;}
.voc-formulario-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:60px;align-items:start;}
.voc-formulario-texto{padding-top:6px;}
.voc-formulario-texto h2{margin-bottom:16px;}
.voc-formulario-texto p{font-size:15.5px;line-height:1.7;color:var(--sj-cinza-texto);margin:0 0 24px;}
.voc-formulario-beneficios{list-style:none;margin:0;padding:0;}
.voc-formulario-beneficios li{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--sj-texto);font-weight:600;padding:10px 0;border-bottom:1px solid var(--sj-cinza-borda);}
.voc-formulario-beneficios li:last-child{border-bottom:0;}
.voc-formulario-beneficios li i{color:var(--sj-azul);font-size:16px;}

.voc-formulario-form{background:linear-gradient(180deg, #f7fafc 0%, #fff 100%);border:1px solid var(--sj-cinza-borda);border-radius:18px;padding:34px 32px;box-shadow:0 24px 50px rgba(0,73,124,.10);}
.voc-form-row{margin-bottom:14px;}
.voc-form-cols{display:flex;gap:12px;}
.voc-form-cols > *{flex:1;}
.voc-formulario-form input[type=text],
.voc-formulario-form input[type=email],
.voc-formulario-form textarea,
.voc-formulario-form select{width:100%;padding:14px 16px;background:#fff;border:1.5px solid var(--sj-cinza-borda);border-radius:10px;font-family:var(--fonte-padrao);font-size:14px;color:var(--sj-texto);transition:all .25s ease;}
.voc-formulario-form input:focus,
.voc-formulario-form textarea:focus,
.voc-formulario-form select:focus{outline:none;border-color:var(--sj-azul);box-shadow:0 0 0 4px rgba(29,138,216,.15);}
.voc-formulario-form textarea{resize:vertical;min-height:90px;font-family:var(--fonte-padrao);}
.voc-formulario-form select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%231d8ad8' d='M6 8L0 0h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 18px center;padding-right:40px;}
.voc-form-aceite{font-size:12.5px;color:var(--sj-cinza-texto);}
.voc-form-aceite label{display:flex;align-items:center;gap:8px;cursor:pointer;}
.voc-form-aceite input{accent-color:var(--sj-azul);}
.voc-form-aceite a{color:var(--sj-azul);text-decoration:underline;font-weight:700;}

.voc-form-ok{text-align:center;padding:30px 10px;}
.voc-form-ok i{font-size:52px;color:var(--sj-azul);margin-bottom:14px;display:block;}
.voc-form-ok h3{font-size:22px;font-weight:800;color:var(--sj-titulo);margin:0 0 8px;}
.voc-form-ok p{font-size:14.5px;color:var(--sj-cinza-texto);line-height:1.7;margin:0;}

/* ---------------------------------------------------------- *
   RESPONSIVO
 * ---------------------------------------------------------- */
@media (max-width:1024px){
    .voc-vida-grid,
    .voc-formulario-grid{grid-template-columns:1fr;gap:40px;}
    .voc-etapa{grid-template-columns:80px 1fr;}
    .voc-etapa-foto{display:none;}
}

@media (max-width:760px){
    .voc-hero{min-height:460px;padding:60px 0;}
    .voc-hero h1{font-size:34px;}
    .voc-hero p{font-size:16px;}
    section[id^='voc'] h2, .voc-section-header h2{font-size:26px;}
    .voc-vida, .voc-caminho, .voc-depoimento, .voc-formulario{padding:60px 0;}
    .voc-pilares{grid-template-columns:1fr;}
    .voc-etapa{grid-template-columns:1fr;padding:22px 20px;}
    .voc-etapa-numero{font-size:36px;text-align:left;}
    .voc-form-cols{flex-direction:column;}
    .voc-depoimento blockquote p{font-size:18px;}
    .voc-formulario-form{padding:24px 20px;}
}
