:root{
  --tg-primary:#0B5D3B;
  --tg-primary-700:#06402A;
  --tg-primary-100:#E7F3EE;
  --tg-teal:#0EA5A4;
  --tg-red:#E11D2E;
  --tg-bg:#F7F9FB;
  --tg-card:#FFFFFF;
  --tg-text:#0F172A;
  --tg-muted:#64748B;
  --tg-border:#E5E7EB;
  --tg-hero:linear-gradient(135deg, #06402A 0%, #0B5D3B 45%, #0EA5A4 120%);
  --ease:cubic-bezier(.2,.8,.2,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background: var(--tg-bg);
  color: var(--tg-text);
  line-height:1.6;
}
a{color:inherit}
.text-muted{color:var(--tg-muted)!important}
.bg-soft{background:linear-gradient(180deg,#ffffff 0%, var(--tg-bg) 100%)}
.container{max-width:1180px}
.section-pad{padding:88px 0}
@media (max-width:991.98px){.section-pad{padding:56px 0}}

.tg-nav{
  background: rgba(255,255,255,0.75);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-bottom:1px solid rgba(15,23,42,0.06);
  transition: box-shadow .25s var(--ease), background .25s var(--ease);
}
.tg-nav.scrolled{
  background: rgba(255,255,255,0.86);
  box-shadow: 0 10px 30px rgba(2, 6, 23, 0.10);
}
.brand-mark{width:38px;height:38px;object-fit:contain}
.brand-name{font-weight:800;letter-spacing:-0.02em;font-size:1.05rem;line-height:1}
.badge-dot{
  width:8px;height:8px;border-radius:50%;
  background:var(--tg-red);display:inline-block;margin-left:6px;transform: translateY(-3px);
}

.btn-tg{
  border-radius:12px;
  padding:12px 18px;
  font-weight:650;
  transition: transform .18s var(--ease), box-shadow .18s var(--ease), background .18s var(--ease), border-color .18s var(--ease);
}
.btn-tg.btn-lg{padding:14px 22px}
.btn-primary.tg-primary{background: var(--tg-primary);border-color: var(--tg-primary)}
.btn-primary.tg-primary:hover{
  background: var(--tg-primary-700);
  border-color: var(--tg-primary-700);
  transform: translateY(-1px);
  box-shadow: 0 12px 28px rgba(6,64,42,.18);
}
.btn-outline-primary.tg-outline{color: var(--tg-primary);border-color: rgba(11,93,59,.35);background: #fff}
.btn-outline-primary.tg-outline:hover{
  background: var(--tg-primary-100);
  border-color: rgba(11,93,59,.35);
  transform: translateY(-1px);
}
.btn-teal{
  background: rgba(14,165,164,.12);
  border:1px solid rgba(14,165,164,.22);
  color: var(--tg-primary-700);
}
.btn-teal:hover{background: rgba(14,165,164,.18);transform: translateY(-1px)}

.card{
  border:1px solid var(--tg-border);
  border-radius:16px;
  box-shadow: 0 8px 30px rgba(2,6,23,.06);
}
.card.tg-card-hover{transition: transform .22s var(--ease), box-shadow .22s var(--ease)}
.card.tg-card-hover:hover{transform: translateY(-2px);box-shadow: 0 16px 40px rgba(2,6,23,.10)}

.form-control, .form-select{border-radius:12px;border-color: var(--tg-border);padding: .75rem .85rem}
.form-control:focus, .form-select:focus{
  border-color: rgba(11,93,59,.45);
  box-shadow: 0 0 0 .25rem rgba(11,93,59,.16);
}
.form-label{font-size:.86rem;color: var(--tg-muted);font-weight:600}

.hero{
  position:relative;
  background: var(--tg-hero);
  color:#fff;
  overflow:hidden;
}
.hero::before{
  content:"";
  position:absolute; inset:0;
  background:url("assets/img/patterns/hero-waves.svg") center/cover no-repeat;
  opacity:.55;
  pointer-events:none;
}
.hero-inner{position:relative; z-index:1; padding:96px 0 72px}
@media (max-width:991.98px){.hero-inner{padding:72px 20px 56px}}
.hero h1{
  font-weight:850;
  letter-spacing:-0.03em;
  line-height:1.15;
  font-size:3.2rem;
}
@media (max-width:991.98px){.hero h1{font-size:2.25rem}}
.hero p{color:rgba(255,255,255,.86); font-size:1.05rem}
.hero-illu{width:100%;max-width:620px;filter: drop-shadow(0 26px 60px rgba(2,6,23,.22))}

.glass-card{
  background: rgba(255,255,255,.90);
  border:1px solid rgba(255,255,255,.30);
  box-shadow: 0 20px 60px rgba(2,6,23,.18);
  border-radius:18px;
}
.chip{
  display:inline-flex;align-items:center;gap:.55rem;
  padding:.55rem .85rem;
  background: var(--tg-primary-100);
  color: var(--tg-primary-700);
  border:1px solid rgba(11,93,59,.15);
  border-radius:999px;
  font-weight:650;
  font-size:.88rem;
}
.kicker{
  font-weight:700;color: var(--tg-primary-700);
  background: rgba(231,243,238,.9);
  border:1px solid rgba(11,93,59,.12);
  padding:.35rem .65rem;border-radius:999px;
  display:inline-flex;gap:.5rem;align-items:center;font-size:.86rem;
}
.section-title h2{font-weight:850;letter-spacing:-0.02em;line-height:1.2;font-size:2.1rem}
.section-title p{max-width:720px}
.icon-pill{
  width:46px;height:46px;border-radius:14px;
  display:grid;place-items:center;
  background: rgba(14,165,164,.12);
  border:1px solid rgba(14,165,164,.18);
}
.icon-pill i{color:var(--tg-primary-700)}
.compare-table th{background: rgba(231,243,238,.65);color: var(--tg-primary-700);border-color: var(--tg-border)}
.compare-table td, .compare-table th{vertical-align:middle}

.tg-footer{background:#071d14;color:rgba(255,255,255,.85)}
.tg-footer a{color:rgba(255,255,255,.85);text-decoration:none}
.tg-footer a:hover{color:#fff}
.footer-brand img{width:44px;height:44px}
.disclaimer{font-size:.85rem;color: rgba(255,255,255,.68)}

.whatsapp-float{
  position:fixed;right:18px;bottom:18px;z-index:1050;
  display:flex;align-items:center;gap:.6rem;
  padding:.8rem 1rem;border-radius:999px;
  background: rgba(255,255,255,.92);
  border:1px solid rgba(15,23,42,.10);
  box-shadow: 0 18px 40px rgba(2,6,23,.18);
  text-decoration:none;
  transition: transform .18s var(--ease);
}
.whatsapp-float:hover{transform: translateY(-2px)}
.whatsapp-float i{color:#16a34a}

.reveal{opacity:0;transform: translateY(12px);transition: opacity .45s var(--ease), transform .45s var(--ease)}
.reveal.visible{opacity:1;transform:none}

.breadcrumb-wrap{
  padding:22px 0;
  background: linear-gradient(180deg,#ffffff 0%, var(--tg-bg) 100%);
  border-bottom:1px solid rgba(15,23,42,.06);
}
.page-hero{padding:60px 0 26px}
.page-hero h1{font-weight:850;letter-spacing:-0.02em}

.notice{border-left:4px solid var(--tg-red);background: rgba(225,29,46,.06);padding:12px 14px;border-radius:12px}
.quote-box{border:1px dashed rgba(11,93,59,.35);border-radius:16px;background: rgba(231,243,238,.55);padding:18px}

@media print{
  .tg-nav, .whatsapp-float, .no-print{display:none!important}
  body{background:#fff}
  .quote-box{border:1px solid #ddd}
}



/* Brand (icon-only) */
.tg-brand{
  display: inline-flex;
  align-items: center;
  padding: 0;
}

.brand-mark{
  height: 88px;     /* was 40px */
  width: auto;
  display: block;
}

/* Small screens */
@media (max-width: 768px){
  .brand-mark{ height: 66px; }  /* was 36px */
}

/* Footer icon sizing (optional) */
.footer-mark{
  height: 52px;     /* was 44px */
  width: auto;
  display: block;
}


  /* Keeps the right-side carousel looking like the old “glass card” area */
  .hero-carousel-wrap{
    border-radius: 18px;
    overflow: hidden;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.18);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    box-shadow: 0 18px 50px rgba(0,0,0,.15);
  }
  .hero-carousel-img{
    height: 380px;
    object-fit: cover;
  }

  @media (min-width: 992px){
    .hero-carousel-img{ height: 420px; }
  }
  @media (max-width: 575.98px){
    .hero-carousel-img{ height: 280px; }
  }

  /* Softer controls for light hero */
  .carousel-control-prev-icon,
  .carousel-control-next-icon{
    filter: drop-shadow(0 6px 10px rgba(0,0,0,.25));
  }

