/* =======================================================
   css/institucional.css — páginas institucionais públicas: contato, serviços
   para empresas, termos de uso e política de privacidade. Redesenho de 01/10/2026.

   Carregue DEPOIS de css/home.css: cabeçalho (.topo), botões (.bt), caixa
   (.box) e rodapé (.rodape) vêm de lá. Tudo daqui leva o prefixo "i".
   Substitui o css/styles.css nessas páginas (ele continua servindo as páginas
   antigas de curso em cursos/curso-*.html).
======================================================= */
body.inst{background:var(--fundo)}

/* ---------------- faixa do topo ---------------- */
.ihero{position:relative;color:#fff;margin-top:-72px;padding:116px 0 48px;overflow:hidden;
    background:
      radial-gradient(760px 420px at 10% 12%, rgba(243,122,18,.19), transparent 62%),
      radial-gradient(900px 560px at 100% 120%, rgba(46,160,110,.26), transparent 60%),
      linear-gradient(160deg,#061F16 0%, var(--noite) 38%, #0F4A35 100%)}
.imigalha{display:flex;gap:6px 8px;align-items:center;flex-wrap:wrap;font-size:.84rem;color:rgba(255,255,255,.62);margin:0 0 16px}
.imigalha a{color:rgba(255,255,255,.86);text-decoration:none;font-weight:600}
.imigalha a:hover{color:#fff;text-decoration:underline}
.imigalha svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:2;opacity:.6;flex:none}
.ihero .sobre{display:block;color:var(--pessego);margin-bottom:8px}
.ihero h1{font-size:clamp(1.7rem,3.2vw,2.6rem);line-height:1.12;letter-spacing:-.03em;font-weight:800;margin:0 0 12px;max-width:22em;text-wrap:balance}
.ihero .ilead{font-size:1.05rem;line-height:1.6;color:rgba(255,255,255,.8);margin:0;max-width:62ch}
.ihero .iacoes{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0 0}

/* ---------------- cartões ---------------- */
.imain{padding-top:36px;padding-bottom:84px}
.icard{background:#fff;border:1px solid var(--borda);border-radius:var(--raio);box-shadow:var(--sombra-1);padding:28px 30px}
.icard h2{margin:0 0 6px;font-size:1.25rem;font-weight:800;letter-spacing:-.015em;color:var(--verde-esc)}
.icard .isub{margin:0 0 20px;color:var(--muted);font-size:.95rem;line-height:1.6}
.ic{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}

/* ---------------- contato ---------------- */
.icontato{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:24px;align-items:start}
.icampo{margin:0 0 16px}
.icampo label{display:block;font-size:.86rem;font-weight:700;margin:0 0 7px}
.icampo label span{font-weight:500;color:var(--suave)}
.icampo input,.icampo select,.icampo textarea{display:block;width:100%;border:1.5px solid var(--borda);border-radius:12px;padding:0 14px;height:50px;
    font:inherit;font-size:.98rem;color:var(--texto);background:#fff;transition:border-color .15s,box-shadow .15s}
.icampo textarea{height:auto;min-height:150px;padding:12px 14px;line-height:1.55;resize:vertical}
.icampo input:hover,.icampo select:hover,.icampo textarea:hover{border-color:#C9D6CF}
.icampo input:focus,.icampo select:focus,.icampo textarea:focus{outline:none;border-color:var(--verde);box-shadow:0 0 0 4px rgba(21,91,67,.12)}
.iduo{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
/* campo-isca: fora da tela e fora da ordem do teclado; gente não preenche, robô sim */
.imel{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.iform .bt{width:100%;margin-top:4px}
.iform .bt[disabled]{opacity:.6;cursor:wait;transform:none}
.inota{font-size:.8rem;color:var(--muted);line-height:1.5;margin:12px 0 0}
.inota a{color:var(--verde);font-weight:700}
.icanais{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.icanais a,.icanais div.item{display:grid;grid-template-columns:44px 1fr;gap:14px;align-items:center;padding:14px;border:1px solid var(--borda);border-radius:14px;
    text-decoration:none;color:var(--texto);background:#fff;transition:border-color .15s,background .15s}
.icanais a:hover{border-color:var(--verde);background:var(--verde-claro)}
.icanais .ico{width:44px;height:44px;border-radius:12px;background:var(--verde-claro);display:grid;place-items:center;color:var(--verde)}
.icanais .zap .ico{background:#E7F8EE;color:#128C4A}
.icanais b{display:block;font-size:.8rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.icanais strong{display:block;font-size:1.02rem;line-height:1.35;word-break:break-word}
.icanais small{display:block;font-size:.82rem;color:var(--muted);margin-top:1px}
.ialerta{display:flex;gap:12px;align-items:flex-start;border-radius:14px;padding:14px 16px;margin:0 0 20px;font-size:.95rem;line-height:1.5}
.ialerta.ok{background:#ECFDF3;border:1px solid #ABEFC6;color:#085D3A}
.ialerta.erro{background:#FEF3F2;border:1px solid #FECDCA;color:#912018}
.ialerta svg{margin-top:1px;width:20px;height:20px;flex:none}
.ialerta svg,.iresultado .circ svg{stroke:currentColor}

/* resultado do envio (processar_contato.php) */
.iresultado{max-width:560px;margin:0 auto;text-align:center}
.iresultado .circ{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;margin:0 auto 18px;background:#ECFDF3;color:#079455}
.iresultado.ruim .circ{background:#FEF3F2;color:#D92D20}
.iresultado .circ svg{width:36px;height:36px}
.iresultado h2{font-size:1.5rem}
.iresultado p{color:var(--muted);font-size:1rem;line-height:1.6;margin:0 0 8px}
.iresultado .botoes{display:grid;gap:10px;margin-top:24px}

/* ---------------- serviços ---------------- */
.iservicos{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.iservico{background:#fff;border:1px solid var(--borda);border-radius:var(--raio);box-shadow:var(--sombra-1);padding:26px}
.iservico .ico{width:48px;height:48px;border-radius:14px;background:var(--creme);display:grid;place-items:center;color:var(--laranja-esc);margin-bottom:16px}
.iservico .ico svg{width:24px;height:24px}
.iservico h3{margin:0 0 8px;font-size:1.12rem;font-weight:800;letter-spacing:-.01em}
.iservico p{margin:0;color:var(--muted);font-size:.96rem;line-height:1.6}
.ichamada{margin-top:26px;border-radius:24px;padding:40px;color:#fff;display:flex;gap:24px;align-items:center;justify-content:space-between;flex-wrap:wrap;
    background:radial-gradient(600px 300px at 20% 0%, rgba(243,122,18,.25), transparent 60%),linear-gradient(135deg,var(--noite),#0F4A35)}
.ichamada h2{margin:0 0 6px;font-size:1.5rem;letter-spacing:-.02em;font-weight:800}
.ichamada p{margin:0;color:rgba(255,255,255,.78);max-width:46ch}
.ichamada .iacoes{display:flex;gap:12px;flex-wrap:wrap}

/* ---------------- documentos (termos, privacidade) ---------------- */
.igrade{display:grid;grid-template-columns:232px minmax(0,1fr);gap:44px;align-items:start}
.iindice{position:sticky;top:90px;font-size:.88rem;max-height:calc(100vh - 110px);overflow-y:auto}
.iindice small{display:block;font-size:.7rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--suave);margin:0 0 10px}
.iindice a{display:block;padding:7px 12px;border-left:2px solid var(--borda);color:var(--muted);font-weight:600;text-decoration:none;line-height:1.35}
.iindice a:hover{color:var(--verde);border-color:var(--verde-borda)}
.iindice a.ativo{color:var(--verde);border-color:var(--verde);font-weight:800}
.iprosa{min-width:0;max-width:800px;background:#fff;border:1px solid var(--borda);border-radius:var(--raio);box-shadow:var(--sombra-1);padding:34px 38px;
    font-size:1rem;line-height:1.75;color:#24332C}
.iprosa > p:first-child{margin-top:0}
.iprosa h2{font-size:1.2rem;font-weight:800;letter-spacing:-.01em;color:var(--verde-esc);margin:38px 0 10px;padding-top:26px;border-top:1px solid var(--borda);line-height:1.35}
.iprosa h3{font-size:1.02rem;font-weight:800;color:var(--texto);margin:24px 0 6px}
.iprosa p{margin:0 0 12px}
.iprosa ul{margin:0 0 12px;padding-left:22px}
.iprosa li{margin-bottom:8px}
.iprosa a{color:var(--verde);font-weight:700}
.iprosa .aviso{background:#FFF8EC;border:1px solid #F3D7A8;color:#6B4208;border-radius:14px;padding:16px 18px;margin:16px 0 20px}
.iprosa .destaque{background:var(--verde-claro);border:1px solid var(--verde-borda);color:#14432F;border-radius:14px;padding:16px 18px;margin:16px 0 20px}
.iprosa table{width:100%;border-collapse:collapse;margin:14px 0 18px;font-size:.93rem;line-height:1.55}
.iprosa th,.iprosa td{text-align:left;padding:11px 10px;border-bottom:1px solid var(--borda);vertical-align:top}
.iprosa th{font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;color:var(--suave);font-weight:800}
.iprosa .rodape{background:none;color:var(--muted);font-size:.9rem;border-top:1px solid var(--borda);margin-top:34px;padding:18px 0 0}

/* ---------------- responsivo ---------------- */
@media (max-width:900px){
    .icontato{grid-template-columns:1fr}
    .igrade{grid-template-columns:minmax(0,1fr);gap:0}
    .iindice{position:static;display:flex;gap:8px;overflow-x:auto;max-height:none;margin:0 -24px 18px;padding:0 24px 6px}
    .iindice small{display:none}
    .iindice a{flex:none;border:1px solid var(--borda);border-radius:999px;background:#fff;padding:7px 13px;font-size:.82rem;white-space:nowrap}
    .iindice a.ativo{background:var(--verde);border-color:var(--verde);color:#fff}
    .ihero{padding:100px 0 36px}
    .iservicos{grid-template-columns:1fr}
}
@media (max-width:560px){
    .ihero{margin-top:-64px;padding-top:88px}
    .icard{padding:22px 18px}
    .iprosa{padding:24px 18px;font-size:.97rem}
    .iprosa table{font-size:.86rem}
    .iduo{grid-template-columns:1fr}
    .iindice{margin:0 -16px 16px;padding:0 16px 6px}
    .ichamada{padding:28px 22px}
    .ihero .iacoes .bt,.ichamada .iacoes .bt{flex:1 1 100%}
}
@media print{
    .topo,.rodape,.iindice,.imigalha,.iacoes{display:none !important}
    body.inst{background:#fff}
    .ihero{margin:0;padding:0 0 12px;background:none;color:#000;border-bottom:2px solid #000}
    .ihero .sobre,.ihero .ilead{color:#333}
    .igrade{display:block}
    .iprosa{box-shadow:none;border:0;padding:14px 0 0;max-width:none}
    .box{max-width:none;padding:0}
}
