/* =========================================================================
   comercial.css — Fase 5. Depende de design-system.css.
   ========================================================================= */
.com-wrap { padding-top: calc(var(--header-h) + 20px); }

.benef-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
@media (max-width:900px){ .benef-grid{ grid-template-columns:repeat(2,1fr);} }
@media (max-width:520px){ .benef-grid{ grid-template-columns:1fr;} }
.benef__ic { font-size:2rem; }
.benef h4 { margin:.4rem 0 .2rem; font-size:1.05rem; }
.benef p { margin:0; font-size:.86rem; }

/* planos */
.plans-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; align-items:stretch; }
@media (max-width:900px){ .plans-grid{ grid-template-columns:1fr;} }
.plan-card { position:relative; border-top:3px solid var(--c); display:flex; flex-direction:column; }
.plan-card.is-featured { box-shadow:0 0 0 1px var(--pdca-act), var(--shadow-2); transform:scale(1.02); }
.plan-badge { position:absolute; top:-12px; right:18px; background:var(--pdca-act); color:#062012; font-size:.7rem; font-weight:700; padding:.3em .8em; border-radius:var(--radius-pill); }
.plan-card h3 { font-size:1.4rem; margin:.2rem 0; }
.plan-price { font-family:var(--font-display); font-weight:800; font-size:2rem; }
.plan-price small { font-size:.9rem; color:var(--text-dim); font-weight:400; }
.plan-para { color:var(--text-soft); font-size:.88rem; min-height:2.6em; }
.plan-feats { list-style:none; padding:0; margin:1rem 0 1.4rem; display:grid; gap:.5rem; flex:1; }
.plan-feats li { font-size:.9rem; color:var(--text-soft); }

/* casos */
.casos-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
@media (max-width:900px){ .casos-grid{ grid-template-columns:1fr;} }
.caso h4 { margin:.5rem 0 .2rem; }
.caso__res { font-family:var(--font-display); font-size:1.15rem; color:var(--pdca-act); margin:0 0 .8rem; }
.caso__metrics { display:flex; flex-wrap:wrap; gap:.4rem; }

/* depoimentos */
.depo-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
@media (max-width:900px){ .depo-grid{ grid-template-columns:1fr;} }
.depo { margin:0; }
.depo blockquote { margin:0 0 1rem; font-size:.95rem; line-height:1.6; color:var(--text); }
.depo figcaption { display:flex; align-items:center; gap:.7rem; }
.depo__av { width:42px; height:42px; border-radius:50%; background:var(--grad-neural); display:grid; place-items:center; font-weight:700; font-size:.9rem; color:#fff; }
.depo figcaption b { display:block; font-size:.92rem; }
.depo figcaption small { color:var(--text-dim); font-size:.78rem; }

/* contato */
.contato-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:30px; align-items:start; }
@media (max-width:840px){ .contato-grid{ grid-template-columns:1fr;} }
.com-form { display:grid; gap:.8rem; }
.com-form input, .com-form textarea { background:var(--bg-700); border:1px solid var(--stroke-strong); color:var(--text); border-radius:var(--radius); padding:.8rem 1rem; font-size:.95rem; font-family:inherit; }
.com-form input:focus, .com-form textarea:focus { outline:none; border-color:var(--pdca-plan); }
.com-form textarea { min-height:110px; resize:vertical; }
#com-form-msg { font-size:.9rem; min-height:1.4em; }
.contato-aside { display:grid; gap:1rem; }
.contato-aside .btn-x { justify-content:center; }
.contato-card { padding:22px; }
.contato-card h3 { margin:0 0 .6rem; }
