:root {
    --primary-color: #076256;
    --secondary-color: #6c757d;
    --background-color: #f8f9fa;
    --text-color: #343a40;
    --greenwood-primary: #2d5c3b;
    --greenwood-secondary: #6bbf6b;
    --greenwood-light: #eaf6f0;
    --greenwood-accent: #b2f2b2;
    --greenwood-logo-bg: #d2f2d2;
}

body {
    font-family: 'Inter', sans-serif;
    color: var(--text-color);
    background-color: var(--background-color);
}

.bg-opacity-50 {
    background-color: rgba(0, 0, 0, 0.5);
}

.fs-1 {
    font-size: 16px;
}
.fs-2 {
    font-size: 32px;
}
.fs-3 {
    font-size: 48px;
}
.fs-4 {
    font-size: 64px;
}
.fs-5 {
    font-size: 80px;
}
.fs-6 {
    font-size: 96px;
}
.fs-7 {
    font-size: 112px;
}
.fs-8 {
    font-size: 128px;
}
.fs-9 {
    font-size: 144px;
}
.fs-10 {
    font-size: 160px;
}

.fw-bold {
    font-weight: 700;
}

.fw-normal {
    font-weight: 400;
}

.fw-light {
    font-weight: 300;
}

/* Hero Section Styles */
.hero-section {
    background: var(--greenwood-light);
    min-height: 480px;
    overflow: hidden;
}

.hero-logo-container {
    top: 24px;
    left: 24px;
    z-index: 2;
}

.hero-logo-box {
    background: var(--greenwood-logo-bg);
    border-radius: 8px;
    padding: 12px 20px;
    display: flex;
    align-items: center;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}

.hero-logo-img {
    height: 48px;
    margin-right: 10px;
}

.hero-logo-text-main {
    font-weight: 700;
    color: var(--greenwood-primary);
    font-size: 1.1rem;
    line-height: 1;
}

.hero-logo-text-sub {
    font-size: 0.85rem;
    color: var(--greenwood-secondary);
    letter-spacing: 2px;
}

.hero-register-btn {
    top: 32px;
    right: 32px;
    z-index: 2;
}

.hero-register-btn .btn {
    font-size: 0.95rem;
    font-weight: 600;
    letter-spacing: 1px;
}

.hero-main-image {
    object-fit: cover;
    min-height: 480px;
    max-height: 540px;
    filter: brightness(0.93);
}

.hero-promo-card {
    bottom: 0;
    right: 0;
    width: 340px;
    background: var(--greenwood-primary);
    color: #fff;
    border-radius: 0 0 0 24px;
    box-shadow: -4px 0 24px rgba(0,0,0,0.10);
    padding: 32px 28px 28px 28px;
    z-index: 3;
}

.hero-promo-subtitle {
    font-size: 1.05rem;
    color: var(--greenwood-accent);
    font-weight: 500;
    margin-bottom: 6px;
}

.hero-promo-title {
    font-size: 2.2rem;
    font-weight: 800;
    color: #fff;
    margin-bottom: 8px;
    letter-spacing: -1px;
}

.hero-promo-description {
    font-size: 1.1rem;
    color: var(--greenwood-light);
    margin-bottom: 18px;
}

.hero-promo-price {
    font-size: 1.4rem;
    font-weight: 700;
    color: var(--greenwood-accent);
}

.hero-promo-image {
    width: 90px;
    height: 90px;
    border-radius: 50%;
    background: var(--greenwood-light);
    object-fit: cover;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06);
}

/* Feature Icons */
.feature-icon-circle {
    width: 40px;
    height: 40px;
}

.feature-icon-large {
    width: 60px;
    height: 60px;
}


/* new style css */
.text-green80{
    color: var(--greenwood-primary);
}

/* Panning Animation */
.panning-image {
    animation: panLeftToRight 20s ease-in-out infinite;
    transform-origin: center;
}

@keyframes panLeftToRight {
    0% {
        transform: translateX(-10%) scale(1.05);
    }
    50% {
        transform: translateX(10%) scale(1.05);
    }
    100% {
        transform: translateX(-10%) scale(1.05);
    }
}

/* Alternative smoother panning effect */
.panning-image-smooth {
    animation: panSmooth 12s ease-in-out infinite;
    transform-origin: center;
}

@keyframes panSmooth {
    0% {
        transform: translateX(-15%) scale(1.05);
    }
    25% {
        transform: translateX(0%) scale(1.05);
    }
    75% {
        transform: translateX(15%) scale(1.05);
    }
    100% {
        transform: translateX(-15%) scale(1.05);
    }
}


.ratio-21\/9 {
    position: relative;
    padding-top: 42.85%;
  }

  .ratio-21\/9 > img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .grain {
    position: relative;
  }

  .grain:after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" preserveAspectRatio="none"><filter id="n"><feTurbulence type="fractalNoise" baseFrequency=".8" numOctaves="2" stitchTiles="stitch"/></filter><rect width="100%" height="100%" filter="url(%23n)" opacity=".05"/></svg>');
    mix-blend-mode: multiply;
  }

  .text-green80 {
    color: #076256;
  }
  .green-dark {
    background-color: #076256;
  }
  .light-green {
    color: #bae9ae;
  }

  /* Slider image optimization */
  .slider-image {
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%;
    transition: transform 0.3s ease;
  }

  /* Ensure images don't stretch */
  .slider-container img {
    object-fit: cover;
    object-position: center;
    min-height: 100%;
    min-width: 100%;
  }

  /* Hero slider specific styles */
  #heroSlider {
    width: 200%;
    height: 100%;
  }
  
  #heroSlider img {
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%;
  }
  
  #heroSlider video {
    object-fit: cover;
    object-position: 54%;
    width: 100%;
    height: 100%;
    min-width: 100%;
    min-height: 100%;
  }
  
  /* Ensure proper masking */
  #heroSlider .absolute {
    overflow: hidden;
  }

  /* Feature slider specific styles */
  #featureSlider img {
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%;
  }
  @media screen and (max-width: 576px){
  #heroSlider img{width: 130px;}}