/* Ferramentas grátis (calendário de vacinas, idade do pet) */
.fx-hero{background:radial-gradient(900px 420px at 90% 0%,#FFE6E4 0%,transparent 60%),linear-gradient(180deg,#FFF8F7,#fff);padding:40px 0 28px}
.fx-hero .migalhas{margin-bottom:16px}
.fx-hero h1{font-size:clamp(32px,4.8vw,54px);font-weight:600;line-height:1.08;margin:12px 0 12px;max-width:820px}
.fx-hero .lead{font-size:18.5px;color:var(--texto-suave);max-width:700px;margin:0}
.fx-grade{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:28px;align-items:start;padding:8px 20px 40px}
.fx-calc{background:#fff;border:1px solid var(--borda);border-radius:28px;padding:24px;box-shadow:var(--sombra);position:sticky;top:96px}
.fx-calc h2{font-size:24px;margin-bottom:14px}
.fx-campos{display:grid;gap:12px}
.fx-campos label{display:flex;flex-direction:column;gap:5px;font-weight:700;font-size:14px}
.fx-campos input,.fx-campos select{font:16px 'Nunito Sans',Arial,sans-serif;padding:12px 14px;border:1.5px solid #E6D3D0;border-radius:14px;background:#fff;color:var(--texto);min-height:48px}
.fx-campos input:focus,.fx-campos select:focus{outline:2px solid var(--rosa);border-color:var(--vinho)}
.fx-toggle{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.fx-toggle button{min-height:50px;border-radius:16px;border:2px solid var(--borda);background:#fff;font:700 16px 'Nunito Sans',Arial,sans-serif;cursor:pointer;color:var(--texto)}
.fx-toggle.tres{grid-template-columns:repeat(3,1fr)}
.fx-toggle button[aria-pressed="true"]{border-color:var(--vinho);background:var(--rosa-claro);color:var(--vinho-escuro)}
.fx-linha2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.fx-resultado{margin-top:18px}
.fx-resultado:empty{display:none}
.fx-agenda{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.fx-agenda li{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:12px 14px;border-radius:16px;background:var(--rosa-fundo);border-left:5px solid #BFD9CF}
.fx-agenda li .ic{font-size:20px}
.fx-agenda li b{display:block;line-height:1.25}
.fx-agenda li small{color:var(--texto-suave);font-size:13px}
.fx-agenda li .quando{font-weight:800;font-size:13.5px;text-align:right;white-space:nowrap}
.fx-agenda li.passou{opacity:.6;border-left-color:#D6D9DD}
.fx-agenda li.proximo{background:#FFF6E8;border-left-color:#E8A33D}
.fx-agenda li.proximo .quando{color:#8A5A00}
.fx-agenda li.futuro .quando{color:var(--verde)}
.fx-cta{margin-top:18px;padding:18px;border-radius:20px;background:linear-gradient(135deg,#C0405A,#E3707F);color:#fff;display:flex;flex-direction:column;gap:10px}
.fx-cta b{font:600 20px 'Fredoka',Arial,sans-serif}
.fx-cta p{margin:0;font-size:15px;opacity:.95}
.fx-cta .btn{background:#fff;color:var(--vinho);align-self:flex-start}
.fx-nota{font-size:13.5px;color:var(--texto-suave);margin:12px 0 0}
.fx-grande{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;background:var(--rosa-fundo);border-radius:20px;padding:18px}
.fx-grande .num{font:600 64px/1 'Fredoka',Arial,sans-serif;color:var(--vinho)}
.fx-grande .txt{font-size:17px;font-weight:700}
.fx-fase{margin-top:12px;padding:14px 16px;border-radius:16px;border:1px solid var(--borda);background:#fff}
.fx-fase b{color:var(--vinho)}
.fx-texto h2{font-size:clamp(24px,3vw,32px);margin:28px 0 10px}
.fx-texto h2:first-child{margin-top:0}
.fx-texto h3{font-size:20px;margin:18px 0 6px}
.fx-texto p,.fx-texto li{font-size:16.5px;line-height:1.7}
.fx-texto ul{padding-left:20px}
.fx-tabela{width:100%;border-collapse:collapse;background:#fff;border-radius:18px;overflow:hidden;border:1px solid var(--borda);font-size:15px;margin:10px 0 6px}
.fx-tabela th,.fx-tabela td{padding:11px 12px;text-align:left;border-bottom:1px solid var(--borda);vertical-align:top}
.fx-tabela th{background:var(--rosa-claro);font-weight:800;font-size:14px}
.fx-tabela tr:last-child td{border-bottom:0}
.fx-aviso{background:#EAF6F0;border:1px solid #CDE9DD;border-radius:18px;padding:14px 16px;font-size:15px;margin:16px 0}
.fx-faq details{background:#fff;border:1px solid var(--borda);border-radius:16px;padding:14px 18px;margin-bottom:8px}
.fx-faq summary{font:500 18px 'Fredoka',Arial,sans-serif;cursor:pointer}
.fx-faq p{margin:10px 0 0}
.fx-outras{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.fx-outra{display:flex;gap:14px;align-items:center;background:#fff;border:1px solid var(--borda);border-radius:22px;padding:18px;text-decoration:none;color:var(--texto);transition:transform .2s var(--ease),box-shadow .2s}
.fx-outra:hover{transform:translateY(-3px);box-shadow:var(--sombra)}
.fx-outra .ic{width:54px;height:54px;border-radius:18px;background:var(--rosa-claro);display:flex;align-items:center;justify-content:center;font-size:28px;flex:none}
.fx-outra b{display:block;font:500 19px 'Fredoka',Arial,sans-serif}
.fx-outra small{color:var(--texto-suave)}
@media(max-width:900px){.fx-grade{grid-template-columns:1fr}.fx-calc{position:static}}
@media(max-width:420px){.fx-linha2{grid-template-columns:1fr}.fx-tabela{font-size:13.5px}.fx-tabela th,.fx-tabela td{padding:9px 8px}}
