  :root {
    --olw-primary: #107239;
    --olw-accent: #04C656;
    --olw-orange: #ffaa5a;
    --olw-para-grey: #717182;
  }
        
  body {
      font-family: 'Poppins', sans-serif;
  }

  .olw-sticky-top {
    position: sticky;
    top: 0;
    z-index: 90;
    background: rgba(255, 255, 255, .95);
    backdrop-filter: blur(8px);
  }
  
  .bg-primary-custom {
      background-color: var(--olw-primary) !important;
  }
  
  .bg-gradient-primary {
      background: linear-gradient(101deg, rgb(18, 92, 49) 0%, rgb(62, 174, 93) 100%) !important;
  }
  
  .bg-light-green {
      background: linear-gradient(90deg, rgb(249, 251, 251) 0%, rgb(230, 245, 240) 100%) !important;
  }
  
  .btn-olw-primary {
      min-width: 150px;
      padding: 15px 20px;
      color: #fff;
      background-color: var(--olw-primary);
      border-color: var(--olw-primary);
  }
  
  .btn-olw-primary:hover {
      color: #fff;
      background-color: var(--olw-primary);
      border-color: var(--olw-primary);
  }

  .btn-olw-white {
    min-width: 150px;
    padding: 15px 16px;
    color: var(--olw-primary);
    background: #fff;
    border-color: #fff;
  }

  .btn-olw-white:hover {
      border-color: #fff;
      color: #fff;
  }
  
  .btn-outline-white {
      min-width: 150px;
      padding: 15px 16px;
      border-color: #fff;
      color: #fff;
  }
  
  .btn-outline-white:hover {
      background-color: #fff;
      color: var(--olw-primary);
  }

  .btn-outline-olw-primary {
    min-width: 150px;
    padding: 15px 16px;
    font-size: 16px;
    color: var(--olw-primary);
    border-color: var(--olw-primary);
  }
  
  .btn-outline-olw-primary:hover {
      color: #fff;
      background-color: var(--olw-primary);
      border-color: var(--olw-primary);
  }

  .btn-orange {
    min-width: 132px;
    padding: 12px 20px;
    font-size: 16px;
    color: #fff;
    background-color: var(--olw-orange);
    border-color: var(--olw-orange);
  }
  
  .btn-orange:hover {
      background-color: #ff9a45;
      border-color: #ff9a45;
      color: #fff;
  }

  .olw-text-primary {
    color: var(--olw-primary);
  }
  
  .text-accent {
      color: var(--olw-accent) !important;
  }
  
  .rounded-24 {
      border-radius: 24px;
  }
  
  .nav-logo {
      height: 60px;
      width: auto;
  }
  
  .hero-image {
      height: 384px;
      object-fit: contain;
  }
  
  .olw-feature-image {
      height: 400px;
      object-fit: contain;
  }
  
  .section-image {
      height: 480px;
      object-fit: contain;
  }

  .olw-heading-h1 {
    font-size: 16px;
  }

  .olw-heading-h2 {
    font-size: 2.25rem;
    font-weight: 700;
  }

  .olw-heading-h3 { 
    font-size: 26px;
    font-weight: 600;
    line-height: 1.4;
  }

  .olw-heading-h4 {
    font-size: 20px;
    font-weight: 500;
    line-height: 1.4;
  }
  
  .lead{
    font-size: 1.125rem;
    line-height: 1.6;
    color: var(--olw-para-grey);
  }

  .icon-image {
      width: 160px;
      height: 160px;
  }
  
  .sticky-nav {
      position: sticky;
      top: 0;
      z-index: 1020;
      background-color: rgba(255, 255, 255, 0.95);
      backdrop-filter: blur(8px);
  }

  .olw-oval-content-wrapper {
    padding: 50px;
    border-radius: 45px;
  }

  .olw-modal-wrapper .modal-dialog {
    max-width: 780px;
  }

  .olw-modal-wrapper .olw-modal-content {
    padding: 30px;
    background: #107239;
  }

  .olw-modal-wrapper .olw-modal-content .btn-close {
    filter: invert(1);
    border: 2px solid #000;
    border-radius: 50px;
  }

  .icon-flag-wrapper .icon-flag {
    width: 18px;
  }

  .olw-banner .lead{
    font-size: 1.125rem;
    line-height: 1.6;
    color: #fff;
  }

  .olw-banner h1 {
    font-weight: 700;
  }
  
  footer {
      background-color: #111827;
      color: #fff;
  }
  
  .footer-logo {
      filter: brightness(0) invert(1);
  }

  @media (max-width: 575px) {
    .olw-banner {
      padding: 0 15px;
    }
 
    .nav-logo {
      height: 42px;
    }

    .olw-whatsinside-section .text-center.mb-5{
      margin: 0 0 12px !important;
    }

    .olw-modal-wrapper .olw-modal-content {
      padding: 10px;
    }

    .olw-oval-content-wrapper {
      padding: 36px 25px;
      border-radius: 45px;
    }
  }

  @media (max-width: 395px) {
    .nav-logo {
      height: 30px;
    }
    nav .btn-olw-primary {
      min-width: auto;
      padding: 6px 20px !important;
      font-size: 12px;
    }

    .olw-banner .bg-gradient-primary {
      padding: 25px 10px !important;
    }

    .btn-olw-white,
    .btn-outline-white,
    .btn-orange,
    .btn-outline-olw-primary,
    .btn-olw-primary {
      padding: 9px 12px;      
      font-size: 12px;
    }

    .olw-banner .lead,
    .lead,
    p{
      font-size: 12px;
    }
    
    .olw-heading-h2 {
      font-size: 1.25rem;
    }

    .olw-heading-h3 {
      font-size: 20px;
    }
  }