/* Site público do Integra+ IA */
:root {
    --azul: #0b1f3a;
    --azul-2: #13305a;
    --ouro: #d4a52a;
    --ouro-2: #f0c65a;
    --texto: #1d2633;
    --suave: #5c6878;
    --fundo-claro: #f5f7fb;
}

body { font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif; color: var(--texto); background: #fff; }
a { color: var(--azul-2); }

.marca { font-weight: 800; letter-spacing: -.02em; color: #fff; text-decoration: none; }
.marca .mais { color: var(--ouro); }
.marca .ia { background: linear-gradient(90deg, var(--ouro), var(--ouro-2)); -webkit-background-clip: text; background-clip: text; color: transparent; }

.site-nav { background: var(--azul); }
.site-nav .nav-link { color: rgba(255,255,255,.8); font-weight: 500; }
.site-nav .nav-link:hover { color: #fff; }

.btn-ouro { background: var(--ouro); border-color: var(--ouro); color: var(--azul); font-weight: 700; }
.btn-ouro:hover, .btn-ouro:focus { background: var(--ouro-2); border-color: var(--ouro-2); color: var(--azul); }

/* Topo */
.hero { background: radial-gradient(1200px 500px at 85% -10%, rgba(212,165,42,.25), transparent 60%), linear-gradient(160deg, var(--azul) 0%, var(--azul-2) 100%); color: #fff; padding: 96px 0 88px; }
.hero h1 { font-weight: 800; font-size: clamp(2rem, 4.5vw, 3.2rem); line-height: 1.1; letter-spacing: -.02em; }
.hero h1 em { font-style: normal; color: var(--ouro-2); }
.hero .lead { color: rgba(255,255,255,.82); max-width: 560px; }
.hero .selo { display: inline-flex; gap: 8px; align-items: center; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.15); border-radius: 999px; padding: 4px 12px; font-size: .85rem; }

.hero-card { background: #fff; color: var(--texto); border-radius: 16px; box-shadow: 0 30px 60px rgba(0,0,0,.35); padding: 20px; }
.hero-card .linha { display: flex; justify-content: space-between; padding: 8px 0; border-bottom: 1px solid #eef1f5; font-size: .92rem; }
.hero-card .linha:last-child { border-bottom: 0; }
.hero-card .ok { color: #157a3c; font-weight: 600; }
.hero-card .kpi { background: var(--fundo-claro); border-radius: 10px; padding: 10px 12px; }
.hero-card .kpi small { color: var(--suave); }

/* Seções */
section { padding: 80px 0; }
.secao-clara { background: var(--fundo-claro); }
.titulo-secao { font-weight: 800; letter-spacing: -.02em; }
.subtitulo { color: var(--suave); max-width: 640px; margin: 0 auto; }
.etiqueta { color: var(--ouro); font-weight: 700; text-transform: uppercase; letter-spacing: .08em; font-size: .8rem; }

.recurso { background: #fff; border: 1px solid #e7ebf2; border-radius: 14px; padding: 24px; height: 100%; transition: transform .15s, box-shadow .15s; }
.recurso:hover { transform: translateY(-3px); box-shadow: 0 12px 28px rgba(11,31,58,.08); }
.recurso .icone { width: 46px; height: 46px; border-radius: 12px; display: grid; place-items: center; background: rgba(212,165,42,.15); color: #9a7413; font-size: 1.4rem; margin-bottom: 14px; }
.recurso h5 { font-weight: 700; }
.recurso p { color: var(--suave); margin: 0; font-size: .95rem; }
.badge-breve { background: #e8edf5; color: var(--azul-2); font-weight: 600; font-size: .7rem; vertical-align: middle; }

.ia-bloco { background: linear-gradient(160deg, var(--azul) 0%, var(--azul-2) 100%); color: #fff; border-radius: 20px; padding: 48px; }
.ia-bloco p, .ia-bloco li { color: rgba(255,255,255,.82); }
.ia-bloco i { color: var(--ouro-2); }

/* Planos */
.plano { background: #fff; border: 1px solid #e7ebf2; border-radius: 16px; padding: 28px 24px; height: 100%; display: flex; flex-direction: column; }
.plano.destaque { border: 2px solid var(--ouro); box-shadow: 0 16px 40px rgba(212,165,42,.18); position: relative; }
.plano .fita { position: absolute; top: -12px; left: 50%; transform: translateX(-50%); background: var(--ouro); color: var(--azul); font-weight: 700; font-size: .75rem; padding: 3px 12px; border-radius: 999px; }
.plano h4 { font-weight: 800; margin-bottom: 0; }
.plano .publico { color: var(--suave); font-size: .9rem; }
.plano .preco { font-size: 2.2rem; font-weight: 800; letter-spacing: -.02em; margin: 14px 0 4px; }
.plano .preco small { font-size: .95rem; font-weight: 500; color: var(--suave); }
.plano ul { list-style: none; padding: 0; margin: 16px 0 24px; flex: 1; }
.plano li { padding: 6px 0; font-size: .95rem; }
.plano li i { color: #157a3c; margin-right: 6px; }

.duvida { border-bottom: 1px solid #e7ebf2; }
.duvida summary { cursor: pointer; padding: 16px 0; font-weight: 600; list-style: none; }
.duvida summary::-webkit-details-marker { display: none; }
.duvida summary::after { content: "+"; float: right; color: var(--ouro); font-weight: 800; }
.duvida[open] summary::after { content: "–"; }
.duvida p { color: var(--suave); padding-bottom: 12px; }

.cta-final { background: var(--ouro); color: var(--azul); }
.cta-final h2 { font-weight: 800; }

.site-rodape { background: #071427; color: #fff; }
.site-rodape a { color: rgba(255,255,255,.75); text-decoration: none; }
.site-rodape a:hover { color: #fff; }

/* Formulário de contratação */
.cartao-form { background: #fff; border: 1px solid #e7ebf2; border-radius: 16px; padding: 28px; }
.opcao-plano { border: 2px solid #e7ebf2; border-radius: 12px; padding: 12px 14px; cursor: pointer; display: block; height: 100%; }
.opcao-plano:has(input:checked) { border-color: var(--ouro); background: rgba(212,165,42,.07); }
.opcao-plano input { margin-right: 6px; }
.texto-legal h2 { font-size: 1.2rem; font-weight: 700; margin-top: 28px; }
.texto-legal p, .texto-legal li { color: #3a4553; }
