:root {
		--yellow-primary: #FFC107;
		--yellow-dark: #D49F00;
		--light-bg: #FFFFFF;
		--light-secondary: #F5F5F5;
		--light-tertiary: #E0E0E0;
		--text-dark: #1A1A1A;
		--text-gray: #555555;
		--steel-gray: #455A64;
		--accent-blue: #1976D2;
	}
	
	* {
		margin: 0;
		padding: 0;
		box-sizing: border-box;
	}
	
	body {
		font-family: 'Work Sans', sans-serif;
		color: var(--text-dark);
		background-color: var(--light-bg);
		overflow-x: hidden;
	}
	
	h1, h2, h3, h4, h5, h6 {
		font-family: 'Oswald', sans-serif;
		font-weight: 700;
		text-transform: uppercase;
		letter-spacing: 1px;
	}
	
	.display-title {
		font-family: 'Bebas Neue', sans-serif;
		font-size: clamp(2.5rem, 8vw, 6rem);
		letter-spacing: 2px;
		line-height: 0.9;
	}
	
	.section-title {
		font-family: 'Bebas Neue', sans-serif;
		font-size: clamp(2rem, 5vw, 4rem);
		letter-spacing: 1.5px;
	}
	
	/* Animations */
	@keyframes fadeInUp {
		from {
			opacity: 0;
			transform: translateY(40px);
		}
		to {
			opacity: 1;
			transform: translateY(0);
		}
	}
	
	@keyframes fadeIn {
		from { opacity: 0; }
		to { opacity: 1; }
	}
	
	@keyframes slideInLeft {
		from {
			opacity: 0;
			transform: translateX(-50px);
		}
		to {
			opacity: 1;
			transform: translateX(0);
		}
	}
	
	@keyframes slideInRight {
		from {
			opacity: 0;
			transform: translateX(50px);
		}
		to {
			opacity: 1;
			transform: translateX(0);
		}
	}
	
	@keyframes scaleIn {
		from {
			opacity: 0;
			transform: scale(0.8);
		}
		to {
			opacity: 1;
			transform: scale(1);
		}
	}
	
	@keyframes pulse {
		0%, 100% {
			transform: scale(1);
		}
		50% {
			transform: scale(1.05);
		}
	}
	
	.animate-on-scroll {
		opacity: 0;
	}
	
	.animate-on-scroll.animated {
		animation: fadeInUp 0.8s ease forwards;
	}
	
	/* Navbar */
	.navbar {
		background: #FFFFFF;
		padding: 1rem 0;
		transition: all 0.3s ease;
		box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
	}
	
	.navbar.scrolled {
		background: #FFFFFF;
		box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
	}
	
	.navbar-brand {
		font-family: 'Bebas Neue', sans-serif;
		font-size: 1.8rem;
		color: var(--text-dark) !important;
		letter-spacing: 2px;
		transition: all 0.3s ease;
	}
	
	.navbar-brand i {
		color: var(--yellow-primary);
	}
	
	.navbar-brand:hover {
		transform: scale(1.05);
		color: var(--yellow-dark) !important;
	}
	
	.navbar-toggler {
		border-color: var(--text-dark);
	}
	
	.navbar-toggler-icon {
		background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
	}
	
	.nav-link {
		color: var(--text-dark) !important;
		font-weight: 500;
		position: relative;
		transition: color 0.3s ease;
		padding: 0.5rem 1rem !important;
	}
	
	.nav-link::after {
		content: '';
		position: absolute;
		bottom: 0;
		left: 50%;
		width: 0;
		height: 2px;
		background: var(--yellow-primary);
		transition: all 0.3s ease;
		transform: translateX(-50%);
	}
	
	.nav-link:hover::after {
		width: 80%;
	}
	
	.nav-link:hover {
		color: var(--yellow-primary) !important;
	}
	
	/* Hero Section */
	.hero-section {
		position: relative;
		min-height: 100vh;
		display: flex;
		align-items: center;
		background: linear-gradient(135deg, rgb(255 193 7 / 80%) 0%, rgb(245 245 245 / 95%) 50%, rgb(255 255 255 / 9%) 100%), url(../img/power-generator.png);
		background-size: cover;
		background-position: center;
		background-attachment: fixed;
		overflow: hidden;
	}
	
	.hero-section::before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		background: 
			repeating-linear-gradient(
				0deg,
				transparent,
				transparent 2px,
				rgba(255, 193, 7, 0.05) 2px,
				rgba(255, 193, 7, 0.05) 4px
			);
		pointer-events: none;
	}
	
	.hero-section::after {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		background: radial-gradient(circle at 30% 50%, rgba(255, 193, 7, 0.2) 0%, transparent 50%);
		pointer-events: none;
	}
	
	.hero-content {
		position: relative;
		z-index: 2;
	}
	
	.hero-title {
		animation: fadeInUp 1s ease;
		text-shadow: 2px 2px 4px rgba(255, 255, 255, 0.5);
		color: var(--text-dark);
	}
	
	.hero-subtitle {
		animation: fadeInUp 1.2s ease;
		font-size: 1.5rem;
		font-weight: 500;
		margin-bottom: 2rem;
		color: var(--text-gray);
	}
	
	.hero-description {
		animation: fadeInUp 1.4s ease;
		font-size: 1.1rem;
		line-height: 1.8;
		max-width: 700px;
		color: var(--text-gray);
	}
	
	/* Buttons */
	.btn-primary-custom {
		background: var(--yellow-primary);
		color: var(--text-dark);
		border: none;
		padding: 1rem 2.5rem;
		font-weight: 600;
		text-transform: uppercase;
		letter-spacing: 1px;
		position: relative;
		overflow: hidden;
		transition: all 0.4s ease;
		font-size: 0.95rem;
	}
	
	.btn-primary-custom::before {
		content: '';
		position: absolute;
		top: 0;
		left: -100%;
		width: 100%;
		height: 100%;
		background: var(--yellow-dark);
		transition: left 0.4s ease;
		z-index: -1;
	}
	
	.btn-primary-custom:hover {
		color: #fff;
		transform: translateY(-2px);
		box-shadow: 0 10px 30px rgba(255, 193, 7, 0.4);
	}
	
	.btn-primary-custom:hover::before {
		left: 0;
	}
	
	.btn-outline-custom {
		border: 2px solid var(--yellow-primary);
		color: var(--text-dark);
		background: transparent;
		padding: 1rem 2.5rem;
		font-weight: 600;
		text-transform: uppercase;
		letter-spacing: 1px;
		transition: all 0.4s ease;
		font-size: 0.95rem;
	}
	
	.btn-outline-custom:hover {
		background: var(--yellow-primary);
		color: var(--text-dark);
		transform: translateY(-2px);
		box-shadow: 0 10px 30px rgba(255, 193, 7, 0.3);
	}
	
	/* Why Choose Section */
	.why-choose-section {
		background: var(--light-secondary);
		padding: 6rem 0;
		position: relative;
	}
	
	.why-choose-section::before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		height: 4px;
		background: linear-gradient(90deg, transparent, var(--yellow-primary), transparent);
	}
	
	.feature-card {
		background: #FFFFFF;
		border-left: 4px solid var(--yellow-primary);
		padding: 2rem;
		margin-bottom: 1.5rem;
		transition: all 0.4s ease;
		box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
	}
	
	.feature-card:hover {
		background: #FFFFFF;
		transform: translateX(10px);
		box-shadow: 0 10px 30px rgba(255, 193, 7, 0.2);
	}
	
	.feature-card h3 {
		color: var(--text-dark);
	}
	
	.feature-card p {
		color: var(--text-gray);
	}
	
	.feature-icon {
		color: var(--yellow-primary);
		font-size: 2rem;
		margin-bottom: 1rem;
	}
	.why-image-wrapper img {
		width: 100%;
		margin-bottom: 10px;
	}
	/* Services Section */
	.services-section {
		padding: 6rem 0;
		background: var(--light-bg);
	}
	
	.service-card {
		background: #FFFFFF;
		border: 1px solid var(--light-tertiary);
		border-radius: 0;
		overflow: hidden;
		transition: all 0.5s ease;
		height: 100%;
		box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
	}
	
	.service-card:hover {
		border-color: var(--yellow-primary);
		transform: translateY(-10px);
		box-shadow: 0 20px 40px rgba(255, 193, 7, 0.3);
	}
	
	.service-card .card-body {
		padding: 2.5rem;
	}
	
	.service-icon {
		width: 80px;
		height: 80px;
		background: var(--yellow-primary);
		color: var(--text-dark);
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 2.5rem;
		margin-bottom: 1.5rem;
		clip-path: polygon(0 0, 100% 0, 100% 70%, 70% 100%, 0 100%);
		transition: all 0.3s ease;
	}
	
	.service-card:hover .service-icon {
		transform: rotate(5deg) scale(1.1);
	}
	
	.service-card h3 {
		color: var(--text-dark);
		margin-bottom: 1rem;
		font-size: 1.8rem;
	}
	
	.service-card p {
		color: var(--text-gray) !important;
	}
	
	/* Why Us Section */
	.why-us-section {
		background: var(--light-bg);
		padding: 6rem 0;
		position: relative;
	}
	
	.benefit-item {
		display: flex;
		align-items: flex-start;
		margin-bottom: 2rem;
		opacity: 0;
		animation: slideInLeft 0.6s ease forwards;
	}
	
	.benefit-item:nth-child(1) { animation-delay: 0.1s; }
	.benefit-item:nth-child(2) { animation-delay: 0.2s; }
	.benefit-item:nth-child(3) { animation-delay: 0.3s; }
	.benefit-item:nth-child(4) { animation-delay: 0.4s; }
	.benefit-item:nth-child(5) { animation-delay: 0.5s; }
	.benefit-item:nth-child(6) { animation-delay: 0.6s; }
	
	.benefit-icon {
		width: 60px;
		height: 60px;
		background: var(--yellow-primary);
		color: var(--text-dark);
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 1.5rem;
		margin-right: 1.5rem;
		flex-shrink: 0;
		clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
	}
	
	.benefit-content h4 {
		color: var(--text-dark);
		margin-bottom: 0.5rem;
		font-size: 1.3rem;
	}
	
	.benefit-content p {
		color: var(--text-gray);
	}
	
	/* CTA Section */
	.cta-section {
		background: var(--light-secondary);
		padding: 6rem 0;
		position: relative;
		overflow: hidden;
	}
	
	.cta-section::before {
		content: '';
		position: absolute;
		top: -50%;
		left: -50%;
		width: 200%;
		height: 200%;
		background: radial-gradient(circle, rgba(255, 193, 7, 0.1) 0%, transparent 70%);
		animation: pulse 4s ease-in-out infinite;
	}
	
	.cta-content {
		position: relative;
		z-index: 2;
	}
	
	.cta-title {
		font-size: clamp(2rem, 5vw, 3.5rem);
		margin-bottom: 1.5rem;
		color: var(--text-dark);
	}
	
	.cta-content p {
		color: var(--text-gray);
	}
	
	/* Footer */
	.footer {
		background: var(--text-dark);
		padding: 3rem 0 1.5rem;
		border-top: 3px solid var(--yellow-primary);
	}
	
	.footer h5 {
		color: var(--yellow-primary);
		margin-bottom: 1.5rem;
		font-size: 1.3rem;
	}
	
	.footer a {
		color: #FFFFFF;
		text-decoration: none;
		transition: all 0.3s ease;
		display: block;
		margin-bottom: 0.5rem;
	}
	
	.footer a:hover {
		color: var(--yellow-primary);
		transform: translateX(5px);
	}
	
	.footer p,
	.footer address {
		color: #FFFFFF;
	}
	
	.social-links a {
		width: 45px;
		height: 45px;
		background: #333;
		color: var(--yellow-primary);
		display: inline-flex;
		align-items: center;
		justify-content: center;
		margin-right: 0.5rem;
		font-size: 1.2rem;
		transition: all 0.3s ease;
	}
	
	.social-links a:hover {
		background: var(--yellow-primary);
		color: var(--text-dark);
		transform: translateY(-3px);
	}
	
	/* Scroll to top and WhatsApp buttons */
	.scroll-top, .whatsapp-btn {
		position: fixed;
		width: 60px;
		height: 60px;
		display: none;
		align-items: center;
		justify-content: center;
		font-size: 1.8rem;
		cursor: pointer;
		z-index: 1000;
		transition: all 0.3s ease;
		border-radius: 50%;
		box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
	}
	
	.scroll-top {
		bottom: 110px;
		right: 30px;
		background: var(--yellow-primary);
		color: var(--text-dark);
	}
	
	.whatsapp-btn {
		bottom: 30px;
		right: 30px;
		background: #25D366;
		color: #FFFFFF;
	}
	
	.scroll-top:hover, .whatsapp-btn:hover {
		transform: scale(1.1);
		box-shadow: 0 6px 20px rgba(0, 0, 0, 0.3);
	}
	
	.scroll-top.active, .whatsapp-btn.active {
		display: flex;
	}
	
	/* Generator Images */
	.generator-showcase {
		position: relative;
		padding: 6rem 0;
		background: var(--light-secondary);
	}
	
	.generator-img-wrapper {
		position: relative;
		overflow: hidden;
		border: 3px solid var(--yellow-primary);
		transition: all 0.4s ease;
		height: 300px;
		background: #FFFFFF;
	}
	
	.generator-img-wrapper:hover {
		transform: translateY(-10px);
		box-shadow: 0 20px 40px rgba(255, 193, 7, 0.3);
	}
	
	.generator-img-wrapper img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		transition: transform 0.4s ease;
	}
	
	.generator-img-wrapper:hover img {
		transform: scale(1.1);
	}
	
	/* Testimonials Section */
        .testimonials-section {
            background: var(--light-secondary);
            padding: 6rem 0;
            position: relative;
            overflow: hidden;
        }
        
        .testimonials-section::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            height: 4px;
            background: linear-gradient(90deg, transparent, var(--yellow-primary), transparent);
        }
        
        /* Scrollable Container */
        .testimonials-scroll-wrapper {
            position: relative;
            margin-top: 2rem;
            padding: 0 70px;
        }
        
        .testimonials-scroll-container {
            display: flex;
            gap: 2rem;
            overflow-x: auto;
            scroll-behavior: smooth;
            padding: 1rem 0 2rem;
            scrollbar-width: none; /* Firefox */
            -ms-overflow-style: none; /* IE/Edge */
        }
        
        .testimonials-scroll-container::-webkit-scrollbar {
            display: none; /* Chrome/Safari */
        }
        
        .testimonial-card {
            background: #FFFFFF;
            padding: 2rem;
            min-width: calc(33.333% - 1.34rem);
            box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
            border-left: 4px solid var(--yellow-primary);
            position: relative;
            transition: all 0.4s ease;
        }
        
        .testimonial-card:hover {
            transform: translateY(-10px);
            box-shadow: 0 15px 40px rgba(255, 193, 7, 0.2);
        }
        
        .testimonial-card::before {
            content: '"';
            position: absolute;
            top: -10px;
            left: 15px;
            font-size: 5rem;
            color: var(--yellow-primary);
            opacity: 0.15;
            font-family: Georgia, serif;
            line-height: 1;
        }
        
        .testimonial-text {
            font-size: 1rem;
            line-height: 1.7;
            color: var(--text-gray);
            margin-bottom: 1.5rem;
            position: relative;
            z-index: 1;
            font-style: italic;
            flex-grow: 1;
        }
        
        .testimonial-author {
            margin-top: auto;
            padding-top: 1rem;
            border-top: 2px solid var(--light-tertiary);
        }
        
        .testimonial-author h5 {
            color: var(--text-dark);
            margin-bottom: 0.3rem;
            font-size: 1.1rem;
        }
        
        .testimonial-author p {
            font-size: 0.9rem;
            margin: 0;
            line-height: 1.4;
        }
        
        .testimonial-author .location {
            color: var(--yellow-primary);
            font-weight: 600;
            font-size: 0.85rem;
            margin-top: 0.2rem;
        }
        
        .stars {
            color: var(--yellow-primary);
            font-size: 1.1rem;
        }
        
        .stars i {
            margin-right: 0.2rem;
        }
        
        .google-badge {
            position: absolute;
            top: 15px;
            right: 15px;
            background: var(--light-secondary);
            padding: 0.4rem 0.8rem;
            border-radius: 15px;
            font-size: 0.8rem;
            color: var(--text-gray);
            font-weight: 500;
        }
        
        .google-badge i {
            color: #4285F4;
            margin-right: 0.3rem;
        }
        
        /* Scroll Buttons */
        .scroll-btn {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            width: 50px;
            height: 50px;
            background: var(--yellow-primary);
            border: none;
            border-radius: 50%;
            color: var(--text-dark);
            font-size: 1.2rem;
            cursor: pointer;
            z-index: 10;
            transition: all 0.3s ease;
            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15);
        }
        
        .scroll-btn:hover {
            background: var(--yellow-dark);
            color: #fff;
            transform: translateY(-50%) scale(1.1);
            box-shadow: 0 6px 20px rgba(255, 193, 7, 0.4);
        }
        
        .scroll-btn-left {
            left: 0;
        }
        
        .scroll-btn-right {
            right: 0;
        }
        
        .scroll-btn:disabled {
            opacity: 0.3;
            cursor: not-allowed;
        }
        
        .scroll-btn:disabled:hover {
            transform: translateY(-50%);
            background: var(--yellow-primary);
        }
        
        /* Scroll Indicators */
        .scroll-indicators {
            display: flex;
            justify-content: center;
            gap: 0.5rem;
            margin-top: 2rem;
        }
        
        .indicator {
            width: 12px;
            height: 12px;
            border-radius: 50%;
            background: var(--light-tertiary);
            cursor: pointer;
            transition: all 0.3s ease;
        }
        
        .indicator.active {
            background: var(--yellow-primary);
            width: 30px;
            border-radius: 6px;
        }
        
        .indicator:hover {
            background: var(--yellow-dark);
        }
        
        /* Add Review Button */
        .btn-add-review {
            background: #4285F4;
            color: #FFFFFF;
            border: none;
            padding: 1rem 2.5rem;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 1px;
            transition: all 0.4s ease;
            font-size: 1rem;
            text-decoration: none;
            display: inline-block;
            box-shadow: 0 5px 20px rgba(66, 133, 244, 0.3);
        }
        
        .btn-add-review:hover {
            background: #3367D6;
            color: #FFFFFF;
            transform: translateY(-3px);
            box-shadow: 0 10px 30px rgba(66, 133, 244, 0.4);
        }
        
        .btn-add-review i {
            font-size: 1.2rem;
        }
        
	/* Responsive adjustments */
	@media (max-width: 991px) {
		.hero-section {
			min-height: auto;
			padding: 8rem 0 4rem;
			background-attachment: scroll;
		}
		
		.display-title {
			font-size: 3rem;
			line-height: 1.1;
		}
		
		.hero-subtitle {
			font-size: 1.2rem;
		}
		
		.hero-description {
			font-size: 1rem;
		}
		.testimonials-scroll-wrapper {
			padding: 0 60px;
		}
		
		.testimonial-card {
			min-width: calc(50% - 1rem);
		}
		
		.scroll-btn {
			width: 45px;
			height: 45px;
			font-size: 1rem;
		}
	}
	
	@media (max-width: 768px) {
		.hero-section {
			padding: 6rem 0 3rem;
		}
		
		.display-title {
			font-size: 2.2rem;
		}
		
		.hero-subtitle {
			font-size: 1.1rem;
		}
		
		.hero-description {
			font-size: 0.95rem;
			margin-bottom: 1.5rem !important;
		}
		
		.section-title {
			font-size: 2rem;
		}
		
		.btn-primary-custom,
		.btn-outline-custom {
			padding: 0.8rem 1.5rem;
			font-size: 0.85rem;
			width: 100%;
			margin-bottom: 0.5rem;
		}
		
		.service-card .card-body {
			padding: 1.5rem;
		}
		
		.benefit-item {
			margin-bottom: 1.5rem;
		}
		
		.generator-img-wrapper {
			height: 200px;
			margin-bottom: 1rem;
		}
		
		.feature-card {
			padding: 1.5rem;
		}
		
		.why-choose-section,
		.services-section,
		.why-us-section,
		.cta-section {
			padding: 4rem 0;
		}
		 .testimonials-section {
                padding: 4rem 0;
            }
            
            .testimonials-scroll-wrapper {
                padding: 0 50px;
            }
            
            .testimonial-card {
                min-width: calc(100% - 1rem);
                padding: 1.5rem;
            }
            
            .testimonial-card::before {
                font-size: 4rem;
                top: -5px;
                left: 10px;
            }
            
            .testimonial-text {
                font-size: 0.95rem;
            }
            
            .google-badge {
                font-size: 0.75rem;
                padding: 0.3rem 0.6rem;
            }
            
            .scroll-btn {
                width: 40px;
                height: 40px;
            }
	}
	
	@media (max-width: 576px) {
		.display-title {
			font-size: 1.8rem;
		}
		
		.navbar-brand {
			font-size: 1.4rem;
		}
		 .testimonials-scroll-wrapper {
			padding: 0 45px;
		}
		
		.scroll-btn {
			width: 35px;
			height: 35px;
			font-size: 0.9rem;
		}
	}
	
	/* Decorative elements */
	.section-divider {
		height: 3px;
		background: linear-gradient(90deg, transparent, var(--yellow-primary), transparent);
		margin: 4rem 0;
	}
	
	.text-gradient {
		background: linear-gradient(135deg, var(--text-dark) 0%, var(--text-gray) 100%);
		-webkit-background-clip: text;
		-webkit-text-fill-color: transparent;
		background-clip: text;
	}
	
	.section-title, .cta-title, h2, h3 {
		color: var(--text-dark);
	}
	
	p.lead {
		color: var(--text-gray);
	}