/* Landing PyDen Licitar (paleta da marca: azul-marinho + teal) */
:root { --pyden:#00429E; --pyden-dark:#002F73; --pyden-teal:#0E9C8B; --pyden-teal-dark:#0B7E70; --ink:#0f1115; }
* { scroll-behavior: smooth; }
body { font-family:'Poppins',sans-serif; color:#1f2430; }
.text-primary { color: var(--pyden) !important; }
.btn-primary { background:var(--pyden); border-color:var(--pyden); }
.btn-primary:hover { background:var(--pyden-dark); border-color:var(--pyden-dark); }
.btn-outline-primary { color:var(--pyden); border-color:var(--pyden); }
.btn-outline-primary:hover { background:var(--pyden); border-color:var(--pyden); }
.brand-dot { width:30px;height:30px;border-radius:8px;background:var(--pyden);display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:700; }

.landing-nav { background:rgba(255,255,255,.92); backdrop-filter:blur(8px); border-bottom:1px solid #eee; padding:.6rem 0; }
.landing-nav .nav-link { color:#42485a; font-weight:500; }
.landing-nav .nav-link:hover { color:var(--pyden); }

/* Hero */
.hero { background:radial-gradient(900px 500px at 80% -10%, rgba(0,66,158,.18), transparent), linear-gradient(180deg,#0f1115,#171a22); color:#fff; padding:9rem 0 6rem; }
.hero h1 { font-weight:800; font-size:clamp(2rem,4vw,3.3rem); line-height:1.12; }
.hero .lead { color:#c9cfdb; }
.hero .badge-pill { background:rgba(0,66,158,.15); color:#ffb59d; border:1px solid rgba(0,66,158,.35); border-radius:999px; padding:.4rem .9rem; font-size:.8rem; }
.hero-card { background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.12); border-radius:16px; }

.section { padding:5rem 0; }
.section-tag { color:var(--pyden); font-weight:600; text-transform:uppercase; letter-spacing:.08em; font-size:.8rem; }
.section h2 { font-weight:700; }
.feature-card { border:1px solid #eef0f4; border-radius:14px; padding:1.6rem; height:100%; transition:.2s; background:#fff; }
.feature-card:hover { box-shadow:0 12px 30px rgba(15,17,21,.08); transform:translateY(-3px); }
.feature-ico { width:52px;height:52px;border-radius:12px;background:rgba(0,66,158,.12);color:var(--pyden);display:inline-flex;align-items:center;justify-content:center;font-size:1.5rem; }
.bg-soft { background:#f7f8fa; }
.step-num { width:42px;height:42px;border-radius:50%;background:var(--pyden);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:700; }

/* Pricing */
.price-card { position:relative; display:flex; flex-direction:column; border:1px solid #e9ecf2; border-radius:18px; padding:2rem 1.6rem; height:100%; background:#fff; transition:.25s ease; }
.price-card:hover { transform:translateY(-4px); box-shadow:0 16px 38px rgba(15,17,21,.10); }
.price-card.highlight { border:2px solid var(--pyden); box-shadow:0 22px 50px rgba(0,66,158,.18); background:linear-gradient(180deg,#fff,#eef4fc); transform:translateY(-6px); }
.price-card.highlight:hover { transform:translateY(-10px); }
.price-ribbon { position:absolute; top:-14px; left:50%; transform:translateX(-50%); background:linear-gradient(135deg,var(--pyden),var(--pyden-teal)); color:#fff; padding:.32rem .95rem; border-radius:999px; font-size:.74rem; font-weight:600; white-space:nowrap; box-shadow:0 6px 14px rgba(0,66,158,.4); }
.price-head { min-height:80px; }
.price-head h4 { font-weight:700; }
.price-tagline { color:#8a90a0; font-size:.82rem; margin:0; line-height:1.3; }
.price-amount { font-size:2.5rem; font-weight:800; letter-spacing:-.02em; line-height:1; }
.price-period { font-size:1rem; color:#8a90a0; font-weight:500; }
.price-trial { font-size:.78rem; color:var(--pyden); font-weight:600; margin-top:.4rem; }
.price-feats { border-top:1px solid #eef0f4; padding-top:1.1rem; }
.price-feats li { display:flex; align-items:flex-start; gap:.55rem; font-size:.875rem; margin-bottom:.62rem; color:#2b3040; }
.price-feats li i { color:var(--pyden); font-size:.95rem; margin-top:.15rem; flex-shrink:0; }
.price-feats li.is-off { color:#b9bdc8; }
.price-feats li.is-off i { color:#cfd3dc; }

/* CTA */
.cta { background:linear-gradient(135deg,var(--pyden),var(--pyden-teal)); color:#fff; border-radius:20px; padding:3.5rem; }

/* Hero helpers */
.hero-sm { padding:8rem 0 3.5rem; }
.hero .eyebrow { color:#ffb59d; font-weight:600; letter-spacing:.08em; text-transform:uppercase; font-size:.78rem; }
.hero-stats { display:flex; flex-wrap:wrap; gap:2.2rem; }
.hero-stats .num { font-size:1.7rem; font-weight:800; color:#fff; line-height:1; }
.hero-stats .lbl { color:#aeb4c2; font-size:.8rem; }

/* Section title block */
.sec-head { max-width:680px; margin:0 auto 2.6rem; text-align:center; }
.sec-head h2 { font-weight:700; }
.sec-head p { color:#6b7280; }

/* Stats band */
.stats-band { background:linear-gradient(135deg,var(--pyden),var(--pyden-teal)); border-radius:20px; color:#fff; padding:2.4rem 1rem; }
.stats-band .num { font-size:2.3rem; font-weight:800; line-height:1; }
.stats-band .lbl { color:rgba(255,255,255,.85); font-size:.85rem; }

/* Listras de check (beneficios) */
.check-list { list-style:none; padding:0; margin:0; }
.check-list li { display:flex; gap:.6rem; align-items:flex-start; margin-bottom:.7rem; color:#2b3040; }
.check-list li i { color:var(--pyden); margin-top:.2rem; flex-shrink:0; }

/* Depoimentos */
.testimonial { border:1px solid #eef0f4; border-radius:16px; background:#fff; padding:1.6rem; height:100%; }
.testimonial .quote { color:#2b3040; font-size:.95rem; }
.testimonial .stars { color:#f5a623; font-size:.85rem; }
.testimonial .who { display:flex; align-items:center; gap:.7rem; margin-top:1rem; }
.testimonial .avatar { width:42px; height:42px; border-radius:50%; background:rgba(0,66,158,.14); color:var(--pyden); display:inline-flex; align-items:center; justify-content:center; font-weight:700; }

/* Faixa de "logos"/setores atendidos */
.logo-strip { display:flex; flex-wrap:wrap; gap:1.2rem 2.4rem; justify-content:center; align-items:center; }
.logo-strip span { color:#9aa1b0; font-weight:600; font-size:1.05rem; display:inline-flex; align-items:center; gap:.4rem; }

/* Passos numerados com linha */
.steps-line { counter-reset:step; }

/* Blog */
.blog-card { display:flex; flex-direction:column; border:1px solid #eef0f4; border-radius:16px; overflow:hidden; background:#fff; height:100%; transition:.2s; }
.blog-card:hover { transform:translateY(-4px); box-shadow:0 14px 32px rgba(15,17,21,.10); }
.blog-thumb { height:150px; background:linear-gradient(135deg,var(--pyden),var(--pyden-teal)); display:flex; align-items:center; justify-content:center; color:#fff; font-size:2.4rem; }
.blog-card .body { padding:1.3rem; display:flex; flex-direction:column; flex:1; }
.blog-tag { font-size:.72rem; font-weight:600; text-transform:uppercase; letter-spacing:.05em; color:var(--pyden); }
.blog-card h5 { font-size:1.05rem; font-weight:700; margin:.3rem 0 .5rem; }
.blog-card .excerpt { color:#6b7280; font-size:.88rem; flex:1; }
.blog-meta { color:#9aa1b0; font-size:.78rem; }
.article { max-width:760px; margin:0 auto; }
.article h2 { font-weight:700; font-size:1.5rem; margin:2rem 0 .8rem; }
.article h3 { font-weight:600; font-size:1.2rem; margin:1.6rem 0 .6rem; }
.article p, .article li { color:#3a4150; line-height:1.75; }
.article ul { padding-left:1.2rem; }
.article .lead { font-size:1.15rem; color:#4b5161; }
.article blockquote { border-left:4px solid var(--pyden); background:#eef4fc; padding:.8rem 1.1rem; border-radius:8px; color:#3a4150; margin:1.4rem 0; }

.landing-footer { background:var(--ink); color:#fff; }
.landing-footer a { color:#aeb4c2; text-decoration:none; }
.landing-footer a:hover { color:var(--pyden); }
.accordion-button:not(.collapsed) { color:var(--pyden); background:rgba(0,66,158,.06); }
.accordion-button:focus { box-shadow:none; }
