


/* Bebas for headings, buttons, callouts */
h1, h2, h3, .pop-button h3, .callout, button {
  font-family: 'Bebas Neue', sans-serif;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

/* Section three */
.services-buttons {
  background-color: #E6E8E5;
  padding: 2rem 2rem 4rem 2rem;
  text-align: center;
}

.services-buttons h2 {
  font-size: 2.5rem;
  margin-bottom: 3rem;
  color: #29363A;
  font-weight: 600;
}

.button-container {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
  max-width: 1000px;
  margin: 0 auto;
  align-items: stretch;
}


.pop-button {
  background-color: #E6E8E5;
  color: #29363A;
  padding: 2rem;
  border: 1px solid #3b4f55;
  border-radius: 1rem;
  cursor: pointer;
  transition: background-color 0.3s ease, box-shadow 0.3s ease, transform 0.2s ease;
  box-shadow: 0 2px 4px rgba(0,0,0,0.05);
  position: relative;
  text-align: left;
  display: flex; 
  align-items: flex-start;       
  flex-direction: column;
  justify-content: space-between; /* space out h3/p and future button content */
  height: 100%;   
}

.pop-button:hover {
  background-color: #faffff;
  transform: translateY(-5px);
  box-shadow: 0 8px 24px rgba(212, 175, 55, 0.5); /* Gold glow */
}


.pop-button .icon {
  position: absolute;
  top: 1rem;
  left: 1rem;
  font-size: 1.5rem;
  color: #000;
}

.button-content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  margin-left: 2.5rem; /* shift the whole content right under the icon */
}

.button-content h3 {
  margin: 0 0 0.5rem 0;
  font-size: 1.25rem;
  font-weight: 700;
}

.button-content p {
  margin: 0;
  font-size: 0.95rem;
  color: #29363A;
  line-height: 1.4;
}

.pop-button h3 {
  margin: 0 0 0.5rem 2.5rem;
  font-size: 1.25rem;
  font-weight: 700;
}

.pop-button p {
  margin-left: 2.5rem;
  font-size: 0.95rem;
  color: #29363A;
  line-height: 1.4;
}

/* Reviews Section */
   /* Reviews Section */
        #reviews {
            background-color: #29363A;
            color: #E6E8E5;
            padding: 4rem 2rem;
            text-align: center;
            position: relative;
            overflow: hidden;
        }

        /* Film grain overlay */
        #reviews::before {
            content: '';
            position: absolute;
            top: 0; left: 0;
            width: 100%; height: 100%;
            pointer-events: none;
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none' viewBox='0 0 200 200'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.04'/%3E%3C/svg%3E");
            z-index: 1;
        }

        #reviews h2 {
            font-family: 'Bebas Neue', sans-serif;
            letter-spacing: 0.5px;
            text-transform: uppercase;
            font-size: 2rem;
            margin-bottom: 3rem;
            letter-spacing: 1px;
            position: relative;
            z-index: 2;
        }

        .review-slider-container {
            position: relative;
            max-width: 1200px;
            margin: 0 auto;
            height: 300px;
            display: flex;
            align-items: center;
            justify-content: center;
            z-index: 2;
        }

        .review-slide {
            position: absolute;
            width: 60%;
            max-width: 600px;
            padding: 2rem;
            text-align: center;
            transition: all 0.8s cubic-bezier(0.4, 0, 0.2, 1);
            transform-style: preserve-3d;
        }

        /* Active center slide */
        .review-slide.active {
            opacity: 1;
            transform: translateX(0) scale(1);
            z-index: 3;
        }

        /* Previous slide (left) */
        .review-slide.prev {
            opacity: 0.3;
            transform: translateX(-80%) scale(0.8);
            z-index: 1;
        }

        /* Next slide (right) */
        .review-slide.next {
            opacity: 0.3;
            transform: translateX(80%) scale(0.8);
            z-index: 1;
        }

        /* Hidden slides */
        .review-slide.hidden {
            display: none ;
            opacity: 0;
            transform: translateX(0) scale(0.8);
            z-index: 0;
        }

        .stars {
            display: flex;
            gap: 4px;
            margin-bottom: 1.5rem;
            justify-content: center;
        }

        .star {
            color: #D4AF37;
            font-size: 1.5rem;
            transition: transform 0.2s ease;
        }

        .star.empty {
            color: rgba(212, 175, 55, 0.3);
        }

        .review-comment {
            font-size: 1.2rem;
            line-height: 1.6;
            color: #E6E8E5;
            margin-bottom: 2rem;
            font-style: italic;
            position: relative;
            max-width: 500px;
            margin-left: auto;
            margin-right: auto;
        }

        .reviewer-name {
            font-family: 'Bebas Neue', sans-serif;
            font-size: 1.1rem;
            font-weight: 600;
            color: #D4AF37;
            text-transform: uppercase;
            letter-spacing: 1px;
        }

        .reviewer-company {
             font-size: 0.9rem;
              color: #D4AF37;
              font-style: italic;
              text-transform: none;
             letter-spacing: normal;
        }

        .progress-bar {
            position: absolute;
            bottom: 0;
            left: 0;
            height: 3px;
            background: #D4AF37;
            transition: width 0.1s linear;
            z-index: 4;
        }

        /* Click indicators for side slides */
        .review-slide.prev, .review-slide.next {
            cursor: pointer;
        }

        .review-slide.prev:hover, .review-slide.next:hover {
            opacity: 0.5;
            transform: translateX(-80%) scale(0.85);
        }

        .review-slide.next:hover {
            transform: translateX(80%) scale(0.85);
        }

        /* Mobile responsiveness */
        @media (max-width: 768px) {
            #reviews {
                padding: 3rem 1rem;
            }

            #reviews h2 {
                font-size: 1.5rem;
                margin-bottom: 2rem;
            }

            .review-slider-container {
                height: 250px;
            }

            .review-slide {
                width: 80%;
                padding: 1.5rem;
            }

            .review-slide.prev {
                transform: translateX(-100%) scale(0.7);
                opacity: 0.2;
            }

            .review-slide.next {
                transform: translateX(100%) scale(0.7);
                opacity: 0.2;
            }

            .review-comment {
                font-size: 1rem;
            }

            .review-comment::before,
            .review-comment::after {
                font-size: 3rem;
            }

            .review-comment::before {
                left: -20px;
                top: -15px;
            }

            .review-comment::after {
                right: -20px;
                bottom: -25px;
            }
        }

        @media (max-width: 480px) {
            .review-slide.prev,
            .review-slide.next {
                display: none; /* Hide side slides on very small screens */
            }

            .review-slide {
                width: 90%;
            }
        }

@media (max-width: 768px) {
  .button-container {
    grid-template-columns: 1fr;
  }
}
  /*update notes */