/* ================= HEADER ================= */

.outfit-<uniquifier> {
  font-family: "Outfit", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}

body {font-family: Outfit,sans-serif,arial;}

.site-header {
	width: 100%;
	background: #000;
	color: #fff;
	position: relative;     /* ✅ REQUIRED */
	z-index: 1000;          /* ✅ REQUIRED */
}

.header-inner {
	max-width: 1300px;
	margin: 0 auto;
	padding: 1rem 1.25rem;
	padding-bottom: 8px !important;
	padding-top: 8px !important;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.red {color: #FF0000;}

/* Logo */
.logo {
	
}

.logo img {width:200px; height: auto;}

/* Nav (desktop) */
.nav-right {
	display: flex;
}

.nav-links {
	list-style: none;
	display: flex;
	gap: 2rem;
	text-transform: uppercase;
}

.nav-links a {
	font-weight: 500;
}

.nav-links a:hover, .active {
	color: rgba(124, 235, 17, 0.9)
}

/* Hamburger */
.menu-toggle {
	display: none;
	background: none;
	border: none;
	cursor: pointer;
	flex-direction: column;
	gap: 5px;
}

.menu-toggle span {
	width: 24px;
	height: 2px;
	background: #fff;
	display: block;
}

.menu-toggle:hover span {
	
	background:  rgba(124, 235, 17, 0.9)

}

.services .feature span {font-size:50px;}

.select-source-arrow {
  text-align: center;
  font-size: 38px;
  font-weight: 300;
  line-height: 1;
  margin-top: 6px;
  color: #666;
}

.am2026-down-arrow {

  text-align: center;
  font-size: 38px;
  font-weight: 300;
  line-height: 1;
  margin-top: 6px;
  color: rgba(124, 235, 17, 0.9);
}



/* ================= HERO ================= */

.hero {
	width: 100%;
	padding: 4rem 0;
	background: linear-gradient(90deg, #e3f2fd, #ffffff);
}

.hero-inner {
	
	align-items: center;
	gap: 3rem;
	flex-wrap: wrap;
}

.hero-text {
	flex: 1 1 420px;
}

.hero-text h1 {
	font-size: 2.6rem;
	margin-bottom: 1rem;
}

.hero-image {
	flex: 1 1 420px;
	text-align: center;
}

.hero-image img {
	max-width: 100%;
	border-radius: 10px;
}

#background-video {
   width: 100vw;
   height: 100vh;
   object-fit: cover;
   position: fixed;
   left: 0;
   right: 0;
   top: 0;
   bottom: 0;
   z-index: -1;
}

.hero {
	position: relative;
	height: 70vh;       /* scale with viewport height */
	max-height: 500px;  /* never taller than 800px */
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #000; /* fallback color */
}

/* Background video */
.hero-video {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;       /* full width */
	height: auto;      /* auto height to preserve ratio */
	transform: translate(-50%, -50%);
	z-index: 1;
}

/* Dark overlay for readability (optional but recommended) */
.hero::after {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.45);
	z-index: 2;
}

/* Content above video */
.hero-inner {
	position: relative;
	z-index: 3;
	color: #fff;
	text-align: center;
}

.hero-text h1 {
	font-size: clamp(2rem, 5vw, 3.5rem);
	margin-bottom: 1rem;
}

.hero-text p {
	font-size: 1.25rem;
	max-width: 700px;
	margin: 0 auto;
}

	.hero-section {
	height: 200px;
	background-image: url('../images/header.jpg'); /* change to your image path */
	background-size: cover;
	background-position: center;
	display: flex;
	align-items: center;
	color: #fff;
	text-align: center;
}

.hero-section .hero-inner {
	width: 100%;
}

/* ================= FEATURES (FULL WIDTH EQUAL COLS) ================= */

.features {
	width: 100%;
	background: #fafafa;
	padding: 0px;
}

.feature_heading {background: #000;padding:20px;text-align: center;color:#d3e1bb;font-size: 1.75rem;font-weight: 500;}

.feature span {color:#FFF;font-weight: 600;font-size:30px;}

a .feature h3:hover {color: #d3e1bb;transition: 2ms ease-in-out all;}
a .feature p:hover {color: #FFF;transition: 2ms ease-in-out all;}

.feature:hover h3, .feature:hover span {color:#d3e1bb;}

.feature:hover p {color:#FFF;}


.services .feature:hover h3, .feature:hover span {color:#FFF;}

.services .feature:hover p {color:#d3e1bb;}


.features-inner {
	display: grid;
	grid-template-columns: repeat(3, 1fr); /* ✅ equal width */
	gap: 0;

	max-width: 100%;        /* ✅ remove container constraint */
	padding: 0px;        /* edge breathing room */
}

.feature {
	background: #8EEE05;
	background: linear-gradient(332deg,rgba(142, 238, 5, 1) 0%, rgba(0, 0, 0, 1) 100%);
	padding: 2.5rem 2.5rem;	
	text-align: left;
	box-shadow: 0 2px 10px rgba(0,0,0,0.05);
}

.feature h3 {color:#FFF;font-weight: 600;font-size: 1.875rem;}
.feature p {color:#d3e1bb;font-size: 1.2rem;}

.customer-support {width: 100% !important;max-width:3000px;text-align: center;padding-top: 2.5rem;padding-bottom: 50px; background-image: url('../images/marble.jpg');background-size: cover;}

.devices-text a {color: #5f8b1b;}
.devices-text a:hover {color: #808080;}


/* ================= RECTANGULAR BUTTON ROW ================= */

.button-row {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.5rem;
	width: 100%;
	max-width: 1200px;
	margin: 2.5rem auto;
	padding: 0 1.5rem;
}

.rect-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	text-transform: uppercase;
	height: 64px;
	background: #000;
	color: #d3e1bb;
	font-size: 1rem;
	font-weight: 500;
	text-align: center;
	border: 2px solid #8eee05;	
	transition: background 0.25s ease, transform 0.2s ease;
}

.rect-btn:hover {
	background: #434343;
	color:#FFF;
	transform: translateY(-2px);
}



.rect-btn span {font-weight: 600;}

.rect-btn_submit {
	display: flex;
	align-items: center;
	justify-content: center;
	text-transform: uppercase;
	height: 44px;
	background: #000;
	color: #d3e1bb;
	font-size: 1rem;
	font-weight: 500;
	text-align: center;
	border: 2px solid #8eee05;	
	transition: background 0.25s ease, transform 0.2s ease;
}

.rect-btn_submit:hover {
	background: #434343;
	color:#FFF;
	transform: translateY(-2px);
}

.minfo {width: 100%;text-align: left;}

/* ================= FOOTER ================= */

.site-footer {
	width: 100%;
	background: #222;
	color: #fff;
	text-align: center;
	padding: 1.75rem 0;
}

footer {}

footer a {  color: #d3e1bb;margin-left:20px;}



/* FULL-WIDTH SECTION */
.devices-feature-section {
  width: 100%;
  padding: 80px 0;
  

}


/* CENTERED CONTENT */
.devices-container {
  max-width: 1400px; /* Infinite Campus uses wide containers */
  margin: 0 auto;
  padding: 0 32px;
}

/* GRID LAYOUT */
.devices-content {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 48px;
}

/* TEXT */
.devices-text h2, .devices-feature-text h2 {
  font-size: 2.25rem;
  margin-bottom: 20px;
  text-align: left;
}

.devices-text p {
  font-size: 1rem;
  line-height: 1.6;
  margin-bottom: 24px;
  text-align: left;
}

/* IMAGE */
.devices-image img {
  width: 100%;
  height: auto;
  display: block;
}

.devices-container {
  max-width: 90%;
  padding: 0;
}

.devices-content {
  grid-template-columns: 1fr 1fr;
}

.cta {width: fit-content;display: flex;padding-left:20px;padding-right: 20px;}





/* MOBILE */
@media (max-width: 768px) {
  .devices-content {
	grid-template-columns: 1fr;
  }
}

.faq-section {max-width: 1600px;margin: auto;margin-top:50px;}
.faq-section h2 {margin-bottom:20px;}

.accordion-item {
  border-bottom: 1px solid #ccc;
}

.accordion-item .active {
background: #3a3a39;
color: #FFF;
}


.accordion a, .report_content a {color: #5f8b1b;}
.accordion a:hover, .report_content a:hover {color: #808080;}


.accordion-header {
  width: 100%;
  color:#333;
  background: #f4f4f4;
  border: none;
  text-align: left;
  padding: 15px;
  font-size: 16px;
  cursor: pointer;
  outline: none;
  transition: background 0.3s;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.accordion-header:hover {
background: #3a3a39;
color: #FFF;
}

.accordion-header .arrow {
  transition: transform 0.3s;
}

.accordion-header.active .arrow {
  transform: rotate(180deg);
}

.accordion-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
  background: #fafafa;
  padding: 0 15px;
  text-align: left;
}

.accordion-content p {
  margin: 10px 0;
  padding-bottom:30px;
}


.customer-support {
  min-height: 100vh;       /* fill the viewport height */
  display: flex;           /* optional: center content vertically */
  flex-direction: column;  /* optional */
  justify-content: center; /* optional: center vertically */
}


.policies-pages {text-align: left;width: 100%;max-width:1000px;margin: auto;margin-top:30px;}

.report_content {text-align: left;width: 100%;max-width:660px;margin: auto;margin-top:30px;}

/* Form container */
.exx-form-container {
	max-width: 600px;
	margin: 40px auto;
	padding: 24px;
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
	font-family: 'Inter', sans-serif;
}

/* Field wrappers */
.exx-form-field {
	margin-bottom: 18px;
}

/* Labels */
.exx-form-label {
	display: block;
	font-size: 0.95rem;
	font-weight: 600;
	color: #333;
	margin-bottom: 6px;
}

/* Inputs & textarea */
.exx-form-input,
.exx-form-textarea {
	width: 100%;
	max-width:640px;
	padding: 12px 16px;
	font-size: 1rem;
	border: 1px solid #ccc;
	border-radius: 5px;
	background: #fafafa;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
	box-sizing: border-box;
}

.exx-form-input:focus,
.exx-form-textarea:focus {
	outline: none;
	border-color: #5df63a;
	box-shadow: 0 0 0 3px rgba(90, 156, 255, 0.25);
}

/* Placeholder color */
.exx-form-input::placeholder,
.exx-form-textarea::placeholder {
	color: #999;
}

/* Textarea specific */
.exx-form-textarea {
	resize: vertical;
	min-height: 100px;
}

.contact_message {min-height: 200px;}

/* Submit button */
.exx-form-submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 14px 24px;
	font-size: 1.05rem;
	font-weight: 600;
	color: #fff;
	background-color: #0078ff;
	border: none;
	border-radius: 8px;
	cursor: pointer;
	transition: background-color 0.3s ease, transform 0.1s ease;
}

.exx-form-submit:hover {
	background-color: #005fcc;
	transform: translateY(-1px);
}

.exx-form-submit:active {
	transform: translateY(1px);
}

/* Optional: Input error states */
.exx-form-error {
	border-color: #e74c3c;
}

.exx-form-error-text {
	color: #e74c3c;
	font-size: 0.85rem;
	margin-top: 4px;
}

/* Responsive */
@media (max-width: 480px) {
	.exx-form-container {
		padding: 20px 16px;
	}

	.exx-form-submit {
		width: 100%;
	}
}


/* Modifier class for left-image duplicate */
.devices-feature-section-left .devices-feature-inner {
	display: flex;
	flex-direction: row;       /* image left on desktop */
	align-items: flex-start;   /* preserve vertical alignment */
	gap: 2rem;                 /* same spacing as original section */
}

/* Desktop: reverse order of columns */
.devices-feature-section-left .devices-feature-image {
	order: 0;  /* image on left */
}

.devices-feature-section-left .devices-feature-text {
	order: 1;  /* text on right */
	text-align: left; /* preserve original left alignment */
}

/* Mobile: stack vertically, text first, image below */
@media (max-width: 768px) {
	.devices-feature-section-left .devices-feature-inner {
		flex-direction: column;
	}
	.devices-feature-section-left .devices-feature-image {
		order: 2;       /* image below text */
		margin-top: 1rem; /* spacing below text */
	}
	.devices-feature-section-left .devices-feature-text {
		order: 1;
	}
}

/* Image responsive, same as original */
.devices-feature-section-left .devices-feature-image img {
	max-width: 100%;
	height: auto;
	display: block;
}
.devices-feature-section-left {
	position: relative;
	z-index: 1; /* ensure content stays above overlay */
}

.devices-feature-section-left::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.03); 
	z-index: -1; /* behind the content */
}

