*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:#4f4f4f;font-family:"Circular","Arial",sans-serif;background:#fff}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}

:root{
  --primary-color:#006d4e;
  --ligth-primary-color:#4ed176;
  --secundary-color:#079def;
  --ligth-secundary-color:#52deff;
  --third-color:#ff7150;
  --container:1100px;
  --radius:16px;
  --shadow:0 12px 28px rgba(0,0,0,.08);
}

.container{max-width:var(--container);margin:0 auto;padding:0 16px}
.section{padding:48px 0}
@media(min-width:992px){.section{padding:50px 0}}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:20px;font-weight:700;cursor:pointer;border:0;transition:transform .2s ease,box-shadow .2s ease}
.btn-primary{background:#4ed176;color:#fff}
.btn-primary:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(0,0,0,.12)}
.btn-outline{background:#fff;color:var(--primary-color);border:1px solid var(--primary-color)}

.site-header{position:sticky;top:0;z-index:10;background:#fff;border-bottom:1px solid #ececec}
.nav{display:flex;align-items:center;justify-content:space-between;height:64px;gap:14px}
.brand{display:flex;align-items:center;gap:12px;font-weight:600;color:var(--primary-color)}
.brand img{height:38px}
.brand-office{font-size:.85rem;color:var(--primary-color);font-weight:700}

.hero{background:#fff}
.hero-grid{display:grid;gap:24px;align-items:center}
@media(min-width:992px){.hero-grid{grid-template-columns:1.1fr .9fr}}
.hero h1{color:var(--primary-color);font-size:2rem;line-height:1.15;margin:0 0 10px}
@media(min-width:992px){.hero h1{font-size:2.4rem}}
.hero p{color:#475569;font-size:1.1rem;margin:0 0 16px}
.hero-card{background:#fff;border:1px solid #ececec;border-radius:var(--radius);padding:14px;display:flex;gap:12px;align-items:center}
.hero-card i{color:var(--secundary-color)}
.hero-photo{width:100%;height:auto;border-radius:24px;box-shadow:var(--shadow);object-fit:cover}

.logos{display:flex;flex-wrap:wrap;gap:22px;align-items:center;justify-content:center;opacity:.9}
.logos img{height:28px;filter:grayscale(100%);opacity:.65;transition:all .3s ease;mix-blend-mode:multiply}
.logos img:hover{filter:none;opacity:1}

.benefits{display:grid;gap:16px}
@media(min-width:768px){.benefits{grid-template-columns:repeat(3,1fr)}}
.card{background:#fff;border:1px solid #ececec;border-radius:14px;padding:18px;box-shadow:0 6px 16px rgba(0,0,0,.06)}
.card h3{margin:8px 0 6px;color:var(--primary-color)}
.card p{margin:0;color:#475569}

.df-landing-wrap{max-width:880px;margin:0 auto}
.df-module{border:1px solid #e9f2ec;background:#fff;box-shadow:0 16px 40px rgba(0,0,0,.06);border-radius:14px;padding:24px}
.df-header{margin-bottom:18px}
.df-title{margin:0 0 4px;font-size:1.9rem;line-height:1.2;color:var(--primary-color);font-weight:600}
.df-subtitle{margin:0;color:#64748b}
.df-progress{display:flex;align-items:center;gap:12px;margin:16px 0}
.df-progress-bar{flex:1;height:8px;background:#eaf2ef;border-radius:999px;overflow:hidden}
.df-progress-fill{height:100%;width:0;background:#4ed176;transition:width .3s ease}
.df-progress-text{min-width:52px;text-align:right;color:#6b7280;font-variant-numeric:tabular-nums}
.df-stepper{display:flex;gap:8px;list-style:none;padding:0;margin:6px 0 18px}
.df-stepper li{flex:1;height:4px;background:#edf2f7;border-radius:999px;cursor:pointer}
.df-stepper li.active{background:var(--secundary-color)}
.df-stepper li.done{background:var(--ligth-secundary-color)}
.df-form .df-step{display:none;opacity:0;transform:translateY(8px);transition:opacity .25s ease,transform .25s ease}
.df-form .df-step.active{display:block;opacity:1;transform:translateY(0)}
.df-form .df-field{margin:14px 0}
.df-label{display:block;font-weight:600;margin-bottom:6px;color:var(--primary-color);font-size:1.05rem}
.df-help{margin-top:6px;color:#607089;font-size:.95rem}
.df-input,.df-select,.df-checkbox-card{width:100%;border:1px solid #cfeee0;border-radius:10px;padding:12px 14px;font-size:1rem;background:#f8fdf9;outline:none}
.df-input:focus,.df-select:focus{border-color:var(--ligth-primary-color);box-shadow:0 0 0 4px rgba(78,209,118,.20);background:#fff}
.df-grid{display:grid;gap:10px}
@media(min-width:560px){.df-grid.cols-2{grid-template-columns:1fr 1fr}}
.df-checkbox-card{display:flex;align-items:center;justify-content:space-between;background:#f7fbff;border:1px solid #d9ecff;margin-bottom:8px}
.df-checkbox-card input{transform:scale(1.2);margin-left:12px}
.df-error{margin-top:6px;color:#b42318;font-size:.9rem;display:none}
.df-field.invalid .df-error{display:block}
.df-field.invalid .df-input,.df-field.invalid .df-select{border-color:#fca5a5;background:#fff7f7}
.df-nav{display:flex;gap:10px;margin-top:8px}
.df-btn{appearance:none;border:none;background:#4ed176;color:#fff;padding:12px 18px;border-radius:20px;font-size:1rem;cursor:pointer;width:100%;transition:transform .2s ease;box-shadow:0 6px 18px rgba(7,95,70,.18)}
.df-btn:hover{transform:translateY(-1px)}
.df-btn[disabled]{opacity:.6;cursor:not-allowed}
.df-btn-secondary{background:#f3fcf6;color:#079def;border:1px solid #bdeccd}
.df-trust-bullets{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;list-style:none;padding:0;margin:18px 0 0;color:#475569;font-size:.95rem}
.df-trust-bullets i{color:var(--ligth-primary-color);margin-right:4px}

.nav-links{display:flex;gap:16px;align-items:center}
.nav-links a{color:#006d4e;padding:8px 10px;border-radius:18px;font-weight:600}
.nav-links a:hover{background:#f2f6f4;color:var(--primary-color)}
.nav-links a.active{color:#fff;background:var(--primary-color)}
.nav-toggle{display:inline-flex;flex-direction:column;gap:4px;background:transparent;border:0;cursor:pointer}
.nav-toggle-bar{width:24px;height:2px;background:#334155;display:block}
@media(min-width:1024px){.nav-toggle{display:none}}
@media(max-width:1023px){
  .nav{position:relative}
  .nav-links{position:absolute;top:64px;right:12px;left:12px;background:#fff;border:1px solid #ececec;border-radius:18px;box-shadow:0 12px 28px rgba(0,0,0,.06);display:none;flex-direction:column;padding:10px}
  .nav-links.show{display:flex}
  .nav-links a{width:100%;padding:12px}
}

.faq-item{background:#fff;border:1px solid #ececec;border-radius:12px;padding:14px;margin-bottom:10px}
.faq-item summary{cursor:pointer;font-weight:700;color:var(--primary-color)}
.faq-item p{margin:8px 0 0;color:#475569}
