:root{
  --c2-primary:#9fca67;
  --c2-primary-dark:#85b24d;
  --c2-ink:#0f1510;
  --c2-ink-soft:#243128;
  --c2-text:#1b2a1f;
  --c2-muted:#66756b;
  --c2-line:#dfe9df;
  --c2-bg:#f7faf7;
  --c2-soft:#eef7e4;
  --c2-card:#ffffff;
  --c2-shadow:0 18px 48px rgba(15,21,16,.08);
  --c2-radius:1.5rem;
}

html{
  scroll-behavior:smooth;
  scroll-padding-top:90px;
}

body{
  font-family:'Inter',sans-serif;
  color:var(--c2-text);
  background:linear-gradient(180deg,#fbfcfa 0%, #eef4ee 100%);
  overflow-x:hidden;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

::selection{
  background:rgba(159,202,103,.30);
  color:var(--c2-ink);
}

img{
  max-width:100%;
  height:auto;
}

a{
  color:var(--c2-text);
}

a:hover{
  color:var(--c2-primary-dark);
}

.site-navbar{
  backdrop-filter:blur(14px);
  background:rgba(255,255,255,.88)!important;
  border-bottom:1px solid rgba(223,233,223,.95);
}

.brand-logo{
  height:56px;
  width:auto;
  display:block;
}

.footer-logo{
  height:58px;
  width:auto;
  display:block;
  max-width:100%;
}

.navbar .nav-link{
  font-weight:600;
  color:var(--c2-muted)!important;
}

.navbar .nav-link:hover,
.navbar .nav-link.active{
  color:var(--c2-ink)!important;
}

.btn-brand,
.btn-outline-brand{
  border-radius:999px;
  font-weight:800;
  padding:.9rem 1.35rem;
}

.btn-brand{
  background:var(--c2-primary);
  color:#0c140d;
  border:1px solid var(--c2-primary);
  box-shadow:var(--c2-shadow);
}

.btn-brand:hover{
  background:var(--c2-primary-dark);
  border-color:var(--c2-primary-dark);
  color:#0c140d;
}

.btn-outline-brand{
  background:#fff;
  border:1px solid var(--c2-line);
  color:var(--c2-text);
}

.btn-outline-brand:hover{
  background:var(--c2-soft);
  border-color:var(--c2-primary);
  color:var(--c2-ink);
}

.hero-section{
  padding:90px 0 70px;
  background:
    radial-gradient(circle at top right, rgba(159,202,103,.16), transparent 26%),
    radial-gradient(circle at left center, rgba(159,202,103,.10), transparent 28%),
    linear-gradient(180deg,#fafcf9 0%, #edf5ed 100%);
}

.hero-section-compact{
  padding:90px 0 70px;
}

.hero-badge,
.section-tag{
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  padding:.65rem 1rem;
  border-radius:999px;
  font-size:.85rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.hero-badge{
  background:var(--c2-soft);
  border:1px solid #dce8cc;
  color:#4d6631;
  margin-bottom:18px;
}

.hero-title{
  font-size:clamp(2rem,4vw,3.4rem);
  line-height:1.1;
  letter-spacing:-.04em;
  font-weight:800;
  color:var(--c2-ink);
  max-width:720px;
  margin:1rem 0 18px;
}

.hero-text,
.section-heading p,
.info-card p,
.feature-highlight p,
.step-card p,
.contact-card p,
.accordion-body,
.stat-card span,
.glass-box li,
.quick-benefit-card p{
  color:var(--c2-muted);
  line-height:1.8;
}

.hero-text{
  font-size:1.05rem;
  max-width:650px;
  opacity:.92;
  margin-bottom:26px;
}

.hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin:2rem 0 10px;
}

.stat-card,
.info-card,
.step-card,
.contact-card,
.accordion-item,
.glass-box{
  background:rgba(255,255,255,.94);
  border:1px solid rgba(223,233,223,.95);
  border-radius:var(--c2-radius);
  box-shadow:var(--c2-shadow);
}

.stat-card{
  padding:18px 16px;
  display:flex;
  flex-direction:column;
  gap:.45rem;
  height:100%;
  border-radius:18px;
}

.stat-card strong{
  display:block;
  font-size:1rem;
  margin-bottom:6px;
  color:var(--c2-ink);
}

.stat-card span{
  display:block;
  font-size:.92rem;
  line-height:1.5;
}

.device-shell{
  background:linear-gradient(180deg,#111812 0%, #0b0f0c 100%);
  border-radius:2rem;
  padding:1rem;
  box-shadow:0 24px 70px rgba(0,0,0,.18);
  position:relative;
  overflow:hidden;
}

.device-shell::before,
.device-shell::after{
  content:"";
  position:absolute;
  border-radius:50%;
  filter:blur(18px);
  opacity:.6;
}

.device-shell::before{
  width:180px;
  height:180px;
  background:rgba(159,202,103,.55);
  top:-40px;
  right:-30px;
}

.device-shell::after{
  width:130px;
  height:130px;
  background:rgba(159,202,103,.45);
  bottom:-20px;
  left:-20px;
}

.device-screen{
  position:relative;
  z-index:1;
  background:#f9fbf7;
  border-radius:1.6rem;
  padding:1.25rem;
  min-height:580px;
}

.device-logo{
  max-width:180px;
  height:auto;
}

.mini-card{
  background:#fff;
  border:1px solid var(--c2-line);
  border-radius:1.25rem;
  padding:1rem;
  margin-bottom:.9rem;
}

.mini-card-highlight{
  background:linear-gradient(135deg,#f2f8e8,#fcfef9);
}

.mini-card h5,
.info-card h4,
.step-card h4,
.contact-card h2,
.feature-highlight h2,
.glass-box h4,
.section-heading h2{
  color:var(--c2-ink);
  font-weight:800;
}

.mini-card h5{
  font-size:1rem;
  margin-bottom:8px;
}

.mini-card p{
  margin:0;
  color:var(--c2-muted);
  line-height:1.55;
  font-size:.92rem;
}

.chip-row{
  display:flex;
  gap:.5rem;
  flex-wrap:wrap;
  margin-top:.85rem;
}

.chip{
  display:inline-flex;
  padding:.45rem .8rem;
  border-radius:999px;
  border:1px solid var(--c2-line);
  background:#fff;
  color:#526749;
  font-size:.83rem;
  font-weight:700;
}

.quick-benefits{
  position:relative;
  margin-top:-24px;
  z-index:3;
  padding-bottom:20px;
}

.quick-benefit-card{
  background:rgba(255,255,255,.96);
  border-radius:22px;
  padding:26px 22px;
  box-shadow:var(--c2-shadow);
  border:1px solid rgba(223,233,223,.95);
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.quick-benefit-card:hover{
  transform:translateY(-5px);
  box-shadow:0 24px 55px rgba(15,21,16,.12);
  border-color:#d6e7c2;
}

.quick-benefit-icon{
  width:54px;
  height:54px;
  border-radius:16px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:1.35rem;
  margin-bottom:14px;
  background:var(--c2-soft);
  color:#4e6633;
}

.quick-benefit-card h3{
  font-size:1.15rem;
  line-height:1.3;
  margin-bottom:10px;
  font-weight:800;
  color:var(--c2-ink);
}

.section-block{
  padding:5rem 0;
}

.section-soft{
  background:rgba(255,255,255,.32);
}

.section-heading{
  max-width:850px;
}

.section-heading h2{
  font-size:clamp(2rem,4vw,3.2rem);
  letter-spacing:-.05em;
  margin:.9rem 0 1rem;
}

.section-tag{
  background:var(--c2-soft);
  border:1px solid #dce8cc;
  color:#4d6631;
}

.section-tag-light{
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  color:rgba(255,255,255,.85);
}

.info-card,
.step-card,
.contact-card{
  padding:1.7rem;
}

.icon-wrap{
  width:62px;
  height:62px;
  border-radius:20px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.45rem;
  background:var(--c2-soft);
  color:#4e6633;
  margin-bottom:1rem;
}

.small-icon{
  width:48px;
  height:48px;
  border-radius:16px;
  font-size:1.1rem;
  margin-bottom:0;
  flex:0 0 auto;
}

.feature-highlight,
.launch-card{
  background:linear-gradient(135deg,#151d16 0%, #293729 48%, #51684a 100%);
  color:#fff;
  border-radius:2rem;
  padding:2.3rem;
  box-shadow:var(--c2-shadow);
}

.feature-highlight h2,
.launch-card h2,
.launch-card h4{
  color:#fff;
  font-weight:800;
}

.feature-highlight p,
.feature-list li,
.launch-card p,
.glass-box li{
  color:rgba(255,255,255,.84);
}

.feature-list{
  padding-left:1.1rem;
  line-height:1.9;
}

.step-number{
  width:54px;
  height:54px;
  border-radius:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:var(--c2-soft);
  color:#4e6633;
  font-weight:900;
  margin-bottom:1rem;
}

.glass-box{
  padding:1.5rem;
  background:rgba(255,255,255,.10);
  border-color:rgba(255,255,255,.12);
}

.faq-accordion{
  max-width:900px;
}

.accordion-item{
  overflow:hidden;
  margin-bottom:1rem;
}

.accordion-button{
  font-weight:800;
  color:var(--c2-ink);
  background:#fff;
  box-shadow:none!important;
  padding:1.2rem 1.35rem;
}

.accordion-button:not(.collapsed){
  background:#fff;
  color:#4e6633;
}

.form-label{
  font-weight:700;
  color:var(--c2-ink-soft);
}

.form-control{
  border-radius:1rem;
  border:1px solid var(--c2-line);
  padding:.95rem 1rem;
}

.form-control:focus{
  border-color:var(--c2-primary);
  box-shadow:0 0 0 .25rem rgba(159,202,103,.18);
}

.contact-line{
  display:flex;
  align-items:flex-start;
  gap:1rem;
  margin-bottom:1.15rem;
}

.contact-line p{
  margin:0;
}

.contact-line a{
  text-decoration:none;
}

.site-footer{
  border-top:1px solid rgba(223,233,223,.95);
  background:rgba(255,255,255,.55);
}

.footer-links{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:1rem 1.25rem;
  margin-bottom:.5rem;
}

.footer-links a{
  text-decoration:none;
  color:var(--c2-muted);
  font-weight:600;
}

.footer-links a:hover{
  color:var(--c2-ink);
}

.footer-copy{
  color:var(--c2-muted);
  font-size:.95rem;
}

.whatsapp-float{
  position:fixed;
  right:20px;
  bottom:20px;
  width:58px;
  height:58px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#25D366;
  color:#fff;
  font-size:1.7rem;
  text-decoration:none;
  box-shadow:0 16px 30px rgba(0,0,0,.18);
  z-index:999;
  transition:transform .2s ease;
}

.whatsapp-float:hover{
  color:#fff;
  transform:translateY(-2px);
}

@media (max-width: 991.98px){
  .hero-section,
  .hero-section-compact{
    padding:70px 0 55px;
  }

  .hero-title{
    font-size:2rem;
    line-height:1.15;
  }

  .hero-text{
    font-size:1rem;
    line-height:1.65;
  }

  .device-shell{
    margin-top:10px;
  }

  .nav-actions .btn-outline-brand{
    display:none;
  }

  .footer-links{
    justify-content:flex-start;
  }

  .quick-benefits{
    margin-top:0;
    padding-top:14px;
  }
}

@media (max-width: 767.98px){
  .hero-section{
    padding-top:6.5rem;
  }

  .hero-actions{
    flex-direction:column;
    align-items:stretch;
  }

  .hero-actions .btn{
    width:100%;
  }

  .section-block{
    padding:4rem 0;
  }

  .feature-highlight,
  .launch-card,
  .contact-card,
  .info-card,
  .step-card{
    padding:1.4rem;
  }

  .device-screen{
    min-height:auto;
  }

  .brand-logo{
    height:48px;
  }

  .footer-logo{
    height:52px;
  }
}

@media (max-width: 575.98px){
  .hero-title{
    font-size:1.8rem;
  }

  .hero-badge{
    font-size:.85rem;
  }

  .hero-actions .btn{
    width:100%;
  }

  .quick-benefit-card{
    padding:22px 18px;
    border-radius:18px;
  }

  .quick-benefit-card h3{
    font-size:1.05rem;
  }

  .quick-benefit-card p{
    font-size:.94rem;
  }
}