* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	font-family: 'Arial', sans-serif;
}

body {
	font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
	line-height: 1.6;
	color: #333;
	background-color: #f8f9fa;
}

/* Header */
header {
	background: linear-gradient(135deg, #2c5282 0%, #3182ce 100%);
	color: white;
	padding: 1rem 0;
	box-shadow: 0 2px 10px rgba(0,0,0,0.1);
	position: sticky;
	top: 0;
	z-index: 100;
}

.header-container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 1rem;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.logo {
	font-size: 1.8rem;
	font-weight: bold;
	text-decoration: none;
	color: white;
}

nav ul {
	list-style: none;
	display: flex;
	gap: 2rem;
}

nav a {
	color: white;
	text-decoration: none;
	font-weight: 500;
	transition: opacity 0.3s ease;
}

nav a:hover {
	opacity: 0.8;
}

.mobile-menu {
	display: none;
	background: none;
	border: none;
	color: white;
	font-size: 1.5rem;
	cursor: pointer;
}

/* Hero Section */
.hero {
	background: linear-gradient(rgba(44, 82, 130, 0.8), rgba(49, 130, 206, 0.8));
	/*background: linear-gradient(rgba(44, 82, 130, 0.8), rgba(49, 130, 206, 0.8)),
	url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 600"><rect fill="%23e2e8f0" width="1200" height="600"/><rect fill="%23cbd5e0" x="100" y="150" width="200" height="300" rx="10"/><rect fill="%23a0aec0" x="120" y="170" width="160" height="120"/><rect fill="%23718096" x="140" y="310" width="120" height="120"/></svg>') center/cover;*/
	color: white;
	padding: 2rem 0;
	text-align: center;
}

.hero-container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 1rem;
}

.hero h1 {
	font-size: 3rem;
	margin-bottom: 1rem;
	font-weight: 700;
}

.hero p {
	font-size: 1.3rem;
	margin-bottom: 2rem;
	max-width: 600px;
	margin-left: auto;
	margin-right: auto;
}
.hero-subtitle {
	font-size: 24px;
	opacity: 0.9;
}.hero-subtitle {
	font-size: 24px;
	opacity: 0.9;
}

.hero-btn {
	background: #27ae60;
	color: white;
	padding: 15px 30px;
	border: none;
	border-radius: 25px;
	font-size: 16px;
	font-weight: bold;
	cursor: pointer;
	text-transform: uppercase;
	transition: all 0.3s;
	margin-top: 20px;
}

.hero-btn:hover {
	background: #2ecc71;
	transform: translateY(-2px);
}

.hero-image {
	display: flex;
	justify-content: center;
	align-items: center;
}

.window-samples {
	display: flex;
	gap: 15px;
	perspective: 1000px;
}

.window-frame {
	width: 90px;
	height: 130px;
	background: linear-gradient(145deg, #f4f4f4, #ddd);
	border: 8px solid;
	border-radius: 8px;
	position: relative;
	transform-style: preserve-3d;
	transition: transform 0.3s;
}

.window-frame:hover {
	transform: rotateY(15deg);
}

.window-frame:nth-child(1) { border-color: white; }
.window-frame:nth-child(2) { border-color: #8B4513; }
.window-frame:nth-child(3) { border-color: #2c3e50; }
.window-frame:nth-child(4) { border-color: #f39c12; }

.window-divider {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 4px;
	height: 50%;
	background: #bbb;
}

.window-divider::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(90deg);
	width: 4px;
	height: 90%;
	background: #bbb;
}
/* Info Section */
.info-section {
	background: white;
	padding: 50px 0;
}
.section-intro-inner{
  text-align: center;
  font-size: 1.2rem;
  color: #4a5568;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom:30px;
}
.info-container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
	text-align: center;
}

.section-title {
	font-size: 42px;
	color: #2c3e50;
	margin-bottom: 20px;
	font-weight: bold;
}

.section-subtitle {
	font-size: 24px;
	color: #e74c3c;
	margin-bottom: 10px;
	font-weight: 600;
}
.section-desc {
	margin-bottom: 20px;
}
.features-grid {
	display: grid;
	grid-template-columns: 1fr 2fr;
	gap: 60px;
	align-items: center;
}

.features-image {
	background: #f8f9fa;
	border-radius: 15px;
	padding: 10px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.features-image img{
	border-radius: 15px;
}
.installer-img {
	width: 200px;
	height: 250px;
	background: linear-gradient(45deg, #3498db, #2980b9);
	border-radius: 15px;
	position: relative;
	overflow: hidden;
}

.installer-img::after {
	content: '👷‍♂️';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-size: 60px;
}

.features-list {
	text-align: left;
}

.feature-item {
	display: flex;
	align-items: center;
	margin-bottom: 20px;
	font-size: 18px;
	color: #333;
}

.feature-item::before {
	content: '✓';
	color: #27ae60;
	font-weight: bold;
	font-size: 20px;
	margin-right: 15px;
}
.features-image img {
  border-radius: 15px;
  width: 600px;
}
/*
.cta-button {
	background: #27ae60;
	color: white;
	padding: 15px 40px;
	border: none;
	border-radius: 25px;
	font-size: 18px;
	font-weight: bold;
	cursor: pointer;
	text-transform: uppercase;
	transition: all 0.3s;
}

.cta-button:hover {
	background: #2ecc71;
	transform: translateY(-2px);
}
*/
.cta-button {
	display: inline-block;
	background: #e53e3e;
	border:1px solid #e53e3e;
	color: white;
	padding: 1rem 2rem;
	text-decoration: none;
	border-radius: 8px;
	font-weight: 600;
	font-size: 1.1rem;
	transition: all 0.3s ease;
	box-shadow: 0 4px 15px rgba(229, 62, 62, 0.3);
}

.cta-button:hover {
	background: #c53030;
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(229, 62, 62, 0.4);
}
/*

/* Quote Form Section */
.quote-section {
	background: #f8f9fa;
	padding: 30px 0;
	margin-bottom: 20px;
}

.quote-container {
	max-width: 800px;
	margin: 0 auto;
	padding: 0 20px;
}

.quote-title {
	font-size: 36px;
	color: #2c3e50;
	text-align: center;
	margin-bottom: 20px;
	font-weight: bold;
}

.quote-form {
	background: white;
	padding: 40px;
	border-radius: 15px;
	box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}

.form-tabs {
	display: flex;
	margin-bottom: 30px;
	border-bottom: 2px solid #eee;
}

.tab {
	flex: 1;
	padding: 15px;
	text-align: center;
	background: #f8f9fa;
	border: none;
	cursor: pointer;
	font-size: 16px;
	font-weight: bold;
	transition: all 0.3s;
}

.tab.active {
	background: #2c3e50;
	color: white;
}

.form-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
	margin-bottom: 30px;
}

.form-group {
	display: flex;
	flex-direction: column;
}

.form-group.full-width {
	grid-column: 1 / -1;
}

.form-group label {
	margin-bottom: 8px;
	font-weight: bold;
	color: #333;
}

.form-group input {
	padding: 12px;
	border: 2px solid #ddd;
	border-radius: 8px;
	font-size: 16px;
	transition: border-color 0.3s;
}

.form-group input:focus {
	outline: none;
	border-color: #2c3e50;
}

.submit-btn {
	width: 100%;
	background: #27ae60;
	color: white;
	padding: 15px;
	border: none;
	border-radius: 8px;
	font-size: 18px;
	font-weight: bold;
	cursor: pointer;
	text-transform: uppercase;
	transition: all 0.3s;
}

.submit-btn:hover {
	background: #2ecc71;
}

.privacy-text {
	text-align: center;
	font-size: 12px;
	color: #666;
	margin-top: 15px;
}
/* Testimonials */
.testimonials {
	background: linear-gradient(135deg, #3498db, #2980b9);
	color: white;
	padding:10px 0 20px;
}

.testimonials-container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
	text-align: center;
}

.testimonials-title {
	font-size: 36px;
	margin-bottom: 20px;
	font-weight: bold;
	color:#fff;
}

.testimonial {
	font-size: 18px;
	font-style: italic;
	max-width: 800px;
	margin: 0 auto;
}

.dots {
	display: flex;
	justify-content: center;
	gap: 10px;
	margin-top: 30px;
}

.dot {
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: rgba(255,255,255,0.5);
	cursor: pointer;
	transition: background 0.3s;
}

.dot.active {
	background: white;
}
.testimonial-carousel {
  position: relative;
  width: 80%;
  margin: 0 auto;
  overflow: hidden;
}

.carousel-inner {
  display: flex;
  transition: transform 0.5s ease;
}

.carousel-item {
  min-width: 100%;
  padding: 20px;
  box-sizing: border-box;
  text-align: center;
}

.carousel-control {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-color: rgba(0, 0, 0, 0);
  color: #ffffff87;
  border: none;
  padding: 10px;
  cursor: pointer;
  font-size: 30px;
}

.prev {
  left: -10px;
}

.next {
  right: -10px;
}
/* Certifications */
.certifications {
	background: #ecf0f1;
	padding: 60px 0;
	margin-top: 2rem;
}

.cert-container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
}

.cert-logos {
	display: flex;
	justify-content: space-around;
	align-items: center;
	gap: 40px;
	flex-wrap: wrap;
}

.cert-logo {
	width: auto;
	height: auto;
	background: white;
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	font-weight: bold;
	text-align: center;
	box-shadow: 0 4px 15px rgba(0,0,0,0.1);
	transition: transform 0.3s;
}

.cert-logo:hover {
	transform: translateY(-5px);
}
.offer-text {
	font-size: 35px;
	font-weight: 900;
	text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
}

.per-window {
	font-size: 32px;
	font-weight: bold;
	color: #f39c12;
}
/* Main Content */
main {
	max-width: 1200px;
	margin: 0 auto;
	padding: 2rem 1rem;
}
/*
section {
	margin-top: 1rem;
}*/

h2 {
	font-size: 2.5rem;
	margin-bottom: 1rem;
	color: #2d3748;
	text-align: center;
	margin-top: 2rem;
}

.section-intro {
	text-align: center;
	font-size: 1.2rem;
	color: #4a5568;
	margin-bottom: 3rem;
	max-width: 800px;
	margin-left: auto;
	margin-right: auto;
}
.section-intro-inner {
  text-align: center;
  font-size: 1.2rem;
  color: #4a5568;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom:30px;
}
.header-container nav ul > li.free-quote a {
  color: #ffffff !important;
  padding: 10px 15px;
  font-weight: 600;
  border: 1px solid #1eb24a;
  background: #1eb24a;
  border-radius: 5px;
}

.header-container nav ul > li.free-quote a:hover {
  color: #ffffff !important;
  padding: 10px 15px;
  text-decoration:none;
}

.quote-button {
  color: #ffffff !important;
  padding: 10px 15px;
  font-weight: 600;
  border: 1px solid #1eb24a;
  background: #1eb24a;
  border-radius: 5px;
}

.quote-button:hover {
  color: #ffffff !important;
  padding: 10px 15px;
  text-decoration:none;
}
/* Card Grid */
.card-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	gap: 2rem;
	margin-top: 2rem;
}

.card {
	background: white;
	border-radius: 12px;
	padding: 2rem;
	box-shadow: 0 4px 20px rgba(0,0,0,0.08);
	transition: all 0.3s ease;
	border: 1px solid #e2e8f0;
}

.card:hover {
	transform: translateY(-5px);
	box-shadow: 0 8px 30px rgba(0,0,0,0.12);
}

.card-icon {
	width: 60px;
	height: 60px;
	background: linear-gradient(135deg, #3182ce, #2c5282);
	border-radius: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 1.5rem;
	font-size: 1.5rem;
	color: white;
}
.card-icon img {
  width: 40px;
  height: 40px;
}
.benefit-icon img {
  width: 50px;
  height: 50px;
}
.card h3 {
	font-size: 1.5rem;
	margin-bottom: 1rem;
	color: #2d3748;
}

.card p {
	color: #4a5568;
	line-height: 1.6;
}

/* Benefits Section */
.benefits {
	background: white;
	border-radius: 16px;
	padding: 1rem 3rem 4rem;
	margin: 4rem 0;
	box-shadow: 0 4px 20px rgba(0,0,0,0.05);
}

.benefits-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	gap: 2rem;
	margin-top: 2rem;
}

.benefit-item {
	text-align: center;
	padding: 1.5rem;
}

.benefit-icon {
	width: 80px;
	height: 80px;
	background: linear-gradient(135deg, #48bb78, #38a169);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 1rem;
	font-size: 2rem;
	color: white;
}

.benefit-item h4 {
	font-size: 1.3rem;
	margin-bottom: 0.5rem;
	color: #2d3748;
}

/* UK Locations */
.uk-locations {
	background: linear-gradient(135deg, #f7fafc 0%, #edf2f7 100%);
	border-radius: 16px;
	padding: 0 3rem 3rem;
	text-align: center;
}

.locations-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	gap: 1rem;
	margin-top: 2rem;
}

.location-badge {
	background: white;
	padding: 1rem;
	border-radius: 8px;
	font-weight: 600;
	color: #2d3748;
	box-shadow: 0 2px 10px rgba(0,0,0,0.05);
	transition: all 0.3s ease;
}

.location-badge:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 15px rgba(0,0,0,0.1);
}

/* Footer */
footer {
	background: #2d3748;
	color: white;
	padding: 3rem 0 1rem;
}

.footer-container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 1rem;
}

.footer-content {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	gap: 2rem;
	margin-bottom: 2rem;
}

.footer-section h4 {
	margin-bottom: 1rem;
	color: #e2e8f0;
}

.footer-section p {
	color: #a0aec0;
	line-height: 1.6;
}

.footer-bottom {
	border-top: 1px solid #4a5568;
	padding-top: 1rem;
	margin-top: 2rem;
	color: #a0aec0;
	font-size: 0.9rem;
}

.footer-bottom a {
	color: #63b3ed;
	text-decoration: none;
}

.footer-bottom a:hover {
	text-decoration: underline;
}
.footer-section a {
  color: #63b3ed;
  text-decoration: none;
}
.footer-section a:hover {
  color: #fff;
  text-decoration: none;
}
/* Styling for each FAQ section */
.faq-block {
	max-width: 800px;
	margin: 0 auto;
	background-color: #fff;
	padding: 20px;
	border-radius: 8px;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.accordion {
  background-color: #e1f0ff;
  font-size: 1.2rem;
  color: #4a5568;
  cursor: pointer;
  padding: 18px;
  width: 100%;
  border: none;
  text-align: left;
  outline: none;
  transition: 0.4s;
  margin-bottom: 20px;
  font-weight: bold;
}
.faq-block .accordion:last-child{
	margin-bottom: 0;
}	
.active, .accordion:hover {
  background-color: #b1d4f7;
}

.accordion:after {
  content: '\002B';
  color: #777;
  font-weight: bold;
  float: right;
  margin-left: 5px;
}

.active:after {
  content: "\2212";
}

.panel {
  padding: 0 18px;
  background-color: white;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.2s ease-out;
}
.panel p{
font-size: 1.2rem;
  color: #4a5568;
padding-bottom: 20px;  
}
/* Responsive Design */
@media (max-width: 768px) {
	.header-container nav {
		display: none;
	}

	.mobile-menu {
		display: block;
	}
	nav ul {
		list-style: none;
		display: flex;
		gap: 1.2rem;
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		background: white;
		flex-direction: column;
		padding: 1rem 2rem;
		box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
		z-index: 9999;
	}
	nav a{
		text-decoration: none;
		color: #333;
		font-weight: 500;
		transition: color 0.3s ease;
	}
	nav a:hover {
		background: #ccc;
		padding: 5px;
	}
	.hero h1 {
		font-size: 2rem;
	}

	.hero p {
		font-size: 1.1rem;
	}

	h2 {
		font-size: 2rem;
	}

	.card-grid {
		grid-template-columns: 1fr;
	}

	.benefits {
		padding: 2rem 1rem;
	}

	.uk-locations {
		padding: 2rem 1rem;
	}
	.offer-text {
		font-size: 32px;
	}

	.per-window {
		font-size: 24px;
	}

	.features-grid {
		grid-template-columns: 1fr;
	}

	.form-grid {
		grid-template-columns: 1fr;
	}

	.window-samples {
		flex-wrap: wrap;
		justify-content: center;
	}

	.cert-logos {
		justify-content: center;
	}
	.section-title {
	  font-size: 32px;
	  line-height: 40px;
	}
	img {
	  max-width: 100%;
	}
}
@media (max-width: 600px) {
	.window-frame {
	  width: 70px;
	  height: 110px;
	}
	.hero-btn{
		font-size: 15px;
	}
	.features-grid .cta-button{
		margin-top: 1rem;
	}
	.quote-form {
		padding: 10px;
	}
	.tab {
	  padding: 10px;
	  font-size: 14px;
	}
	.accordion{
		font-size:1rem;
		padding: 10px;
		line-height: 1.3rem;
	}
}
/* Animations */
@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translateY(30px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.animate-on-scroll {
	animation: fadeInUp 0.6s ease-out;
}