/* Screen reader only - visually hidden but accessible */
.sr-only-title {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

html {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	overflow-x: hidden;
	overflow-y: scroll;
	text-rendering: optimizeLegibility;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%;
  }
  
  body {
	margin: 0 auto;
	padding: 0;
	font-size: 16px;
	background: #fff;
  }
  
  body section {
	display: block;
  }
  
  body h1,
  body h2,
  body h3,
  body h4,
  body h5,
  body h6,
  body ul,
  body li {
	margin: 0;
	padding: 0;
  }
  
  body h1 {
	font-family: Montserrat, sans-serif;
	font-size: 50px;
	font-weight: 600;
	text-align: center;
	/* margin: 25px 0px 15px 0px; */
  }
  
  body h2 {
	font-family: Montserrat, sans-serif;
	font-size: 1.875em;
	font-weight: 700;
  }
  
  body h3 {
	font-family: "Lexend Exa", sans-serif;
	font-size: 1.5em;
	font-weight: 400;
  }
  
  body h4 {
	font-family: Lexend Exa, sans-serif;
	font-size: 0.875em;
	font-weight: 400;
  }
  
  body p {
	line-height: 150%;
	font-family: Roboto, sans-serif;
	font-size: 0.9375em;
	color: #7e7e7e;
  }
  
  body li {
	list-style-type: none;
  }
  
  body a {
	text-decoration: none;
	color: #7e7e7e;
  }
  
  .bg-wrapper {
	width: 100%;
	height: 100%;
	background-image: linear-gradient(
	  rgba(255, 255, 255, 0.8),
	  rgba(255, 255, 255, 0.8)
	);
  }
  
  .section-header {
	padding-top: 5.625em;
	text-align: center;
  }
  
  .section-header h3 {
	margin-bottom: 0.5em;
  }
  
  .section-header .line-red {
	margin: 2.5em auto 2.9375em auto;
  }
  
  .line-red {
	display: block;
	width: 4em;
	height: 0.1875em;
	margin: 0 auto;
	background: #f38181;
  }
  
  /* Main Header Styles */
  .main-header {
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 1000;
	font-family: Montserrat, sans-serif;
	color: #fff;
	background: transparent;
  }
  
  .main-header .header-wrapper {
	display: block;
	width: 70%;
	margin: 10px auto;
	padding-top: 1em;
  }
  
  .main-header .header-wrapper .main-logo {
	position: absolute;
	display: inline-block;
	margin: 10px auto;
	max-width: 15%;
	height: auto;
  }
  
  .main-header .header-wrapper .main-menu {
	padding-top: 5px;
	float: right;
	text-align: center;
  }
  
  .main-header .header-wrapper .main-menu li {
	display: inline-block;
	padding: 0.75em 1.875em;
  }
  
  .main-header .header-wrapper .main-menu li a {
	padding-bottom: 0.75em;
	text-transform: uppercase;
	color: #fff;
	font-size: 0.875em;
  }
  
  .main-header .header-wrapper .main-menu li a:hover {
	color: #fff;
	border-bottom: 0.1875em solid #fff;
	transition: 0.1s;
  }
  
  .main-header .header-wrapper .main-menu li a span {
	font-size: 1.2em;
  }
  
  .main-header .header-wrapper .main-menu li:last-child {
	padding: 0.75em 0;
  }
  
  .main-header .header-wrapper .main-menu li:nth-child(6) a:hover,
  .main-header .header-wrapper .main-menu li:last-child a:hover {
	border: none;
  }
  
  /* Modern Slider Styles */
  #section-1 {
	position: relative;
	height: 80vh;
	max-height: 500px;
	min-height: 800px;
	color: #fff;
	background: #111111;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
  }

  #section-2 {
	color: #fff;
	background-color: #000;
	padding-top: 0;
  }
  
  /* Modern Slider Container */
  .modern-slider-container {
	position: relative;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
  }
  
  .slider-wrapper {
	position: relative;
	width: 100%;
	height: 100%;
	overflow: hidden;
  }
  
  .slider-track {
	position: relative;
	width: 100%;
	height: 100%;
	display: flex;
	transition: transform 0.6s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  }
  
  /* Slides */
  .slide {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	transform: translateX(100%);
	transition: all 0.6s cubic-bezier(0.68, -0.55, 0.265, 1.55);
	display: flex;
	align-items: center;
	justify-content: center;
  }
  
  .slide.active {
	opacity: 1;
	transform: translateX(0);
  }
  
  .slide.prev {
	transform: translateX(-100%);
  }
  
  .slide-content {
	width: 100%;
	max-width: 1200px;
	padding: 0 2rem;
	text-align: center;
	z-index: 2;
  }
  
  .slide-inner {
	animation: slideContentIn 0.6s ease-out forwards;
  }
  
  @keyframes slideContentIn {
	from {
	  opacity: 0;
	  transform: translateY(20px);
	}
	to {
	  opacity: 1;
	  transform: translateY(0);
	}
  }
  
  /* Slide Typography */
  .slide-subtitle {
	font-family: "Lexend Exa", sans-serif;
	font-weight: 400;
	font-size: clamp(1.2rem, 2.5vw, 1.8rem);
	margin-bottom: 0.5rem;
	opacity: 0.9;
	animation: fadeInUp 0.8s ease-out 0.2s forwards;
	opacity: 0;
  }
  
  .slide-title {
	font-size: clamp(2.5rem, 6vw, 4.5rem);
	line-height: 0.9;
	margin: 0.3rem 0;
	font-weight: 700;
	text-transform: uppercase;
	animation: fadeInUp 0.8s ease-out 0.4s forwards;
	opacity: 0;
  }
  
  .slide-tagline {
	font-size: clamp(1.2rem, 2.5vw, 1.8rem);
	font-weight: 300;
	margin: 0.5rem 0;
	font-family: "Lexend Exa", sans-serif;
	animation: fadeInUp 0.8s ease-out 0.3s forwards;
	opacity: 0;
  }
  
  .slide-logo {
	max-width: 220px;
	width: 70%;
	height: auto;
	margin: 1rem 0;
	animation: fadeInUp 0.8s ease-out 0.3s forwards;
	opacity: 0;
  }
  
  .slide-divider {
	width: 60px;
	height: 2px;
	background: #fff;
	margin: 1.2rem auto;
	position: relative;
	overflow: hidden;
	animation: fadeInUp 0.8s ease-out 0.5s forwards;
	opacity: 0;
  }
  
  .slide-divider::after {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: #1f3a5c;
	animation: dividerFill 2s ease-out 0.8s forwards;
  }
  
  @keyframes dividerFill {
	to {
	  left: 0;
	}
  }
  
  @keyframes fadeInUp {
	to {
	  opacity: 1;
	  transform: translateY(0);
	}
  }
  
  /* CTA Button */
  .slide-cta {
	display: inline-block;
	padding: 0.6rem 2rem;
	margin-top: 0.5rem;
	font-family: Montserrat, sans-serif;
	font-size: 0.8rem;
	color: #fff;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	border: 1.5px solid #fff;
	border-radius: 50px;
	position: relative;
	overflow: hidden;
	transition: all 0.3s ease;
	animation: fadeInUp 0.8s ease-out 0.6s forwards;
	opacity: 0;
  }
  
  .slide-cta::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 0;
	height: 0;
	background: #fff;
	border-radius: 50%;
	transform: translate(-50%, -50%);
	transition: all 0.4s ease;
  }
  
  .slide-cta:hover {
	color: #1f3a5c;
	transform: translateY(-2px);
	box-shadow: 0 10px 20px rgba(0,0,0,0.2);
  }
  
  .slide-cta:hover::before {
	width: 300px;
	height: 300px;
  }
  
  /* Navigation Dots */
  .slider-nav {
	position: absolute;
	bottom: 2rem;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	gap: 1rem;
	z-index: 10;
	flex-wrap: wrap;
	justify-content: center;
	max-width: 90%;
  }
  
  .nav-dot {
	position: relative;
	background: transparent;
	border: none;
	color: #fff;
	cursor: pointer;
	padding: 0.3rem 0;
	transition: all 0.3s ease;
	min-width: 100px;
  }
  
  .nav-text {
	display: block;
	font-family: Montserrat, sans-serif;
	font-size: 0.85rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	opacity: 0.7;
	transition: opacity 0.3s ease;
  }
  
  .nav-dot:hover .nav-text {
	opacity: 1;
  }
  
  .nav-progress {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 2px;
	background: rgba(255,255,255,0.3);
	overflow: hidden;
  }
  
  .nav-progress::after {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: #fff;
	transition: left 0.3s ease;
  }
  
  .nav-dot.active .nav-progress::after {
	left: 0;
	animation: progressFill 5s linear;
  }
  
  @keyframes progressFill {
	from {
	  transform: translateX(-100%);
	}
	to {
	  transform: translateX(0);
	}
  }
  
  .nav-dot.active .nav-text {
	opacity: 1;
  }
  
  /* Arrow Navigation - Removed as requested */
  
  /* Background - keeping it simple as requested */
  
  /* Media Queries */
  @media only screen and (min-width: 1920px) {
	body {
	  font-size: 22px;
	}
  
	.main-header .header-wrapper {
	  width: 57%;
	}
  
	/* No adjustments needed for large screens */
  }
  
  @media only screen and (max-width: 1919px) {
	body {
	  font-size: 20px;
	}
  
	.main-header .header-wrapper {
	  width: 60%;
	}
  
	/* No adjustments needed for this breakpoint */
  }
  
  @media only screen and (max-width: 1680px) {
	body {
	  font-size: 18px;
	}
  
	.main-header .header-wrapper {
	  width: 65%;
	}
  
	/* No adjustments needed for this breakpoint */
  }
  
  @media only screen and (max-width: 1366px) {
	body {
	  font-size: 16px;
	}
  
	.main-header .header-wrapper {
	  width: 70%;
	}
  }
  
  @media only screen and (max-width: 1120px) {
	.main-header .header-wrapper .main-menu li {
	  padding: 0.75em 1.4em;
	}
  
	#section-1 {
	  height: 65vh;
	  max-height: 550px;
	}
  
	.slider-nav {
	  bottom: 1.5rem;
	}
  
	.nav-dot {
	  min-width: 90px;
	}
  
	.nav-text {
	  font-size: 0.75rem;
	}
  }
  
  @media only screen and (max-width: 1024px) {
	body {
	  font-size: 14px;
	}
  
	.main-header .header-wrapper .main-menu li {
	  padding: 0.75em 1.3em;
	}
  
	.slider-nav {
	  gap: 0.8rem;
	  padding: 0 1rem;
	}
  
	/* Arrow buttons removed */
  }
  
  @media only screen and (max-width: 860px) {
	.main-header .header-wrapper .main-menu li {
	  padding: 0.75em 0.9em;
	}
  
	#section-1 {
	  height: 60vh;
	  max-height: 500px;
	  min-height: 400px;
	}
  
	.slider-nav {
	  gap: 0.8rem;
	  bottom: 1rem;
	}
  
	.nav-dot {
	  min-width: auto;
	  display: flex;
	  align-items: center;
	  gap: 0.5rem;
	  padding: 0.4rem 0.8rem;
	  background: rgba(0, 0, 0, 0.5);
	  border-radius: 20px;
	  backdrop-filter: blur(5px);
	}
  
	.nav-dot::before {
	  content: '';
	  display: block;
	  width: 8px;
	  height: 8px;
	  background: rgba(255,255,255,0.5);
	  border-radius: 50%;
	  flex-shrink: 0;
	  transition: all 0.3s ease;
	}
  
	.nav-dot.active::before {
	  background: #fff;
	  transform: scale(1.2);
	}
  
	.nav-text {
	  font-size: 0.65rem;
	  display: block;
	  white-space: nowrap;
	}
  
	.nav-progress {
	  display: none;
	}
  
	.slide-subtitle {
	  font-size: clamp(1rem, 2vw, 1.5rem);
	}
  
	.slide-title {
	  font-size: clamp(2rem, 5vw, 3.5rem);
	}
  
	.slide-tagline {
	  font-size: clamp(1rem, 2vw, 1.5rem);
	}
  }
  
  @media only screen and (max-width: 768px) {
	.main-header .header-wrapper .main-menu li {
	  padding: 0.75em 0.5em;
	}
  
	#section-1 {
	  padding-top: 80px;
	  height: 55vh;
	  max-height: 450px;
	}
  
	.slider-nav {
	  gap: 1rem;
	  bottom: 1rem;
	}
  
	.nav-dot {
	  min-width: auto;
	  padding: 0;
	}
  
	.nav-text {
	  display: none;
	}
  
	.nav-progress {
	  display: none;
	}
  
	/* Simple dots for mobile */
	.nav-dot::after {
	  content: '';
	  display: block;
	  width: 10px;
	  height: 10px;
	  background: rgba(255,255,255,0.4);
	  border-radius: 50%;
	  transition: all 0.3s ease;
	}
  
	.nav-dot:hover::after,
	.nav-dot.active::after {
	  background: #fff;
	  transform: scale(1.2);
	}

	/* Already handled above */

	#section-2 {
		padding-top: 100px;
		background-color: #000;
	  }
  }
  
  @media only screen and (max-width: 650px) {
	.main-header .header-wrapper {
	  width: 95%;
	}
  }
  
  @media only screen and (max-width: 480px) {
	/* Small mobile specific styles */
	body {
	  font-size: 14px;
	}

	body h1 {
	  font-size: 24px;
	}

	body h2 {
	  font-size: 1.2em;
	}

	body h3 {
	  font-size: 1em;
	}

	.main-header {
	  position: fixed;
	}

	#global-nav-mobile-bar {
	  padding: 12px 15px;
	}

	#global-nav-mobile-bar .logo {
	  width: 100%;
	  max-width: 140px;
	  height: 22px;
	  margin: 0 auto !important;
	  background-image: url(logo_text.svg);
	  filter: brightness(0) invert(1);
	  display: block;
	  position: relative;
	  top: auto;
	  left: auto;
	}

	i.fas.fa-bars {
	  font-size: 20px;
	  color: #fff !important;
	}

	#global-nav-mobile-menu a {
	  padding: 18px 20px;
	  font-size: 14px;
	}

	#section-1 {
	  height: 50vh;
	  min-height: 350px;
	  max-height: 400px;
	  padding-top: 60px;
	}

	.slider-nav {
	  bottom: 0.8rem;
	  gap: 0.8rem;
	}

	/* Already using dots from tablet styles */

	.slide-subtitle {
	  font-size: clamp(0.9rem, 1.8vw, 1.2rem);
	  margin-bottom: 0.3rem;
	}

	.slide-title {
	  font-size: clamp(1.8rem, 4vw, 2.5rem);
	  margin: 0.2rem 0;
	}

	.slide-tagline {
	  font-size: clamp(0.9rem, 1.8vw, 1.2rem);
	  margin: 0.3rem 0;
	}

	.slide-logo {
	  max-width: 160px;
	  margin: 0.5rem 0;
	}

	.slide-divider {
	  width: 50px;
	  margin: 0.8rem auto;
	  height: 1.5px;
	}

	.slide-cta {
	  font-size: 0.7rem;
	  padding: 0.4rem 1.2rem;
	}

	/* Arrow buttons already removed */

	/* Logo styles handled in slide-logo class */

	/* CTA adjustments handled above */

	/* Footer adjustments */
	.footer-cta {
	  padding: 20px 10px !important;
	}

	.single-cta i {
	  font-size: 30px;
	}

	.cta-text h4 {
	  font-size: 16px;
	}

	.cta-text span {
	  font-size: 13px;
	}

	.footer-logo img {
	  max-width: 150px;
	}

	.footer-widget-heading h3 {
	  font-size: 16px;
	  margin-bottom: 30px;
	}

	.subscribe-form input {
	  width: 65%;
	  font-size: 12px;
	  padding: 8px 10px;
	}

	.subscribe-form button {
	  padding: 6px 10px;
	}

	.subscribe-form button i {
	  font-size: 20px;
	}

	/* Content sections */
	.about-container {
	  padding: 0 10px;
	}

	.about-header {
	  font-size: 28px !important;
	  margin: 20px 0px 10px 0px;
	}

	.aboutus-text,
	.aboutus-text-lrg {
	  padding: 0 10px;
	}

	.aboutus-text-lrg {
	  font-size: 16px;
	}

	#main_section {
	  padding-top: 60px;
	}

	#section-2 {
	  padding-top: 60px;
	}
  }
  
  .footer-section {
	background: rgb(17, 17, 17);
	position: relative;
  }
  
  .footer-cta {
	margin-left: 150px;
  }
  
  .single-cta i {
	color: #1f3a5c;
  }
  
  .single-cta-contact i {
	color: #fff;
	font-size: 30px;
	float: left;
	margin-top: 8px;
  }
  
  .cta-text {
	padding-left: 15px;
	display: inline-block;
  }
  
  .cta-text h4 {
	color: #fff;
	font-size: 20px;
	font-weight: 600;
	margin-bottom: 2px;
  }
  
  .cta-text span {
	color: #757575;
	font-size: 15px;
  }
  
  .footer-content {
	border-top: 1px solid #373636;
	position: relative;
	z-index: 2;
  }
  
  .footer-pattern img {
	position: absolute;
	top: 0;
	left: 0;
	height: 330px;
	background-size: cover;
	background-position: 100% 100%;
  }
  
  /* Logo styles handled in slide-logo class */
  
  .footer-logo {
	margin-bottom: 30px;
	margin-left: 80px;
  }
  
  .footer-logo img {
	max-width: 200px;
  }
  
  .footer-text p {
	margin-bottom: 14px;
	font-size: 14px;
	color: #7e7e7e;
	line-height: 28px;
  }
  
  .footer-social-icon {
	margin-top: 30px;
	margin-bottom: 30px;
  }

  .footer-social-icon span {
	color: #fff;
	display: block;
	font-size: 20px;
	font-weight: 700;
	font-family: "Poppins", sans-serif;
	margin-bottom: 20px;
  }
  
  .footer-social-icon a {
	color: #fff;
	font-size: 16px;
	margin-right: 15px;
  }
  
  .footer-social-icon i {
	height: 40px;
	width: 40px;
	text-align: center;
	line-height: 38px;
	border-radius: 50%;
	background: #1f3a5c;
  }
  
  .facebook-bg {
	background: #3b5998;
  }
  
  .twitter-bg {
	background: #55acee;
  }
  
  .google-bg {
	background: #dd4b39;
  }
  
  .footer-widget-heading h3 {
	font-family: Lexend Exa, sans-serif;
	color: #fff;
	font-size: 20px;
	font-weight: 600;
	margin-bottom: 40px;
	position: relative;
  }
  
  .footer-widget-heading h3::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: -15px;
	height: 2px;
	width: 50px;
	background: #1f3a5c;
  }
  
  .footer-widget ul li {
	font-size: 14px !important;
	display: inline-block;
	float: left;
	width: 50%;
	margin-bottom: 12px;
  }
  
  .footer-widget ul li a:hover {
	color: #1f3a5c;
  }
  
  .footer-widget ul li a {
	color: #878787;
	font-size: 14px;
  }
  
  .subscribe-form {
	position: relative;
	overflow: hidden;
  }
  
  .subscribe-form input {
	width: 60%;
	padding: 10px 14px;
	background: #1c1c1c;
	border: 1px solid #1c1c1c;
	color: #fff;
	border-radius: 5px;
	font-size: 14px;
	outline: none;
  }
  
  .subscribe-form button {
	position: absolute;
	background: #fff;
	padding: 5px 16px;
	border: 1px solid #fff;
	top: 0;
	border-radius: 5px;
  }
  
  .subscribe-form button i {
	color: #1f3a5c;
	font-size: 24px;
	transform: rotate(-6deg);
  }
  
  .copyright-area {
	background: #202020;
	padding: 25px 0;
  }
  
  .copyright-text p {
	margin: 0;
	font-size: 14px;
	color: #878787;
  }
  
  .copyright-text p a {
	color: #1f3a5c;
  }
  
  .footer-menu li {
	display: inline-block;
	margin-left: 20px;
  }
  
  .footer-menu li:hover a {
	color: #1f3a5c;
  }
  
  .footer-menu li a {
	font-size: 14px;
	color: #878787;
  }
  
  /* main_section Styles */
  #main_section {
	height: 100%;
	color: #fff;
	background-color: #000;
	margin-top: -1px; /* Prevent gap */
  }
  
  #global-nav-mobile-bar {
	position: fixed;
	top: 0;
	display: none;
	align-items: center;
	justify-content: space-between;
	flex-wrap: nowrap;
	padding: 10px 20px;
	min-height: 70px;
	z-index: 10;
	background: rgba(17, 17, 17, 0.95);
	width: 100%;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
  }
  
  #global-nav-mobile-bar .nav-logo {
	flex-grow: 1;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%;
  }
  
  #global-nav-mobile-bar .nav-logo .logo {
	position: relative !important;
	top: auto !important;
	left: auto !important;
	margin: 0 auto !important;
	filter: brightness(0) invert(1) !important;
  }
  
  #global-nav-mobile-bar .burger {
	cursor: pointer;
	color: #fff !important;
	z-index: 10;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 5px;
  }
  
  #global-nav-mobile-bar a.burger {
	color: #fff !important;
	text-decoration: none;
  }
  
  #global-nav-mobile-bar a.burger i {
	color: #fff !important;
  }
  
  /* Ensure burger icon is always visible */
  #global-nav-mobile-bar .burger i::before {
	color: #fff !important;
  }
  
  #global-nav-mobile-menu {
	text-align: center;
	text-transform: uppercase;
	position: fixed;
	top: 70px;
	background: rgb(23 23 23);
	display: none;
	left: 0;
	right: 0;
	margin: 0;
	padding: 20px 0;
	transform: translateY(-150%);
	transition: transform 0.3s ease-out;
	z-index: 9;
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
	max-height: calc(100vh - 70px);
	overflow-y: auto;
  }

  #global-nav-mobile-menu a {
	display: block;
	padding: 20px 32px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	color: #fff;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.5px;
	transition: all 0.3s ease;
	position: relative;
  }
  
  #global-nav-mobile-menu a:hover,
  #global-nav-mobile-menu a:focus {
	background: rgba(31, 58, 92, 0.5);
	color: #fff;
	padding-left: 40px;
  }
  
  #global-nav-mobile-menu a:last-child {
	border-bottom: none;
  }
  
  @media screen and (max-width: 767px) {
	#global-nav {
	  display: none;
	}
	
	/* Hide desktop logo when mobile nav is visible */
	.header_boundingbox > .nav-logo {
	  display: none;
	}
  
		#global-nav-mobile-bar {
		margin-top: 0;
		display: flex;
		position: fixed;
	}

	#global-nav-mobile-menu {
	  display: block;
	}

	.header_boundingbox {
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		flex: 1;
	}

	#global-nav-mobile-bar .logo {
		position: relative;
		margin: 0 auto !important;
		width: 100%;
		max-width: 160px;
		height: 25px;
		background-image: url(logo_text.svg);
		filter: brightness(0) invert(1);
		display: block;
		top: auto;
		left: auto;
	}

	.main-header {
		position: fixed;
		background: transparent;
	}

	/* Already handled in mobile styles */

	#section-2 {
		padding-top: 70px;
	}

	#main_section {
		padding-top: 70px;
	}

	body {
		padding-top: 0;
	}
  }
  
  i.fas.fa-bars {
	color: #fff !important;
	font-size: 18px;
	display: inline-block !important;
	visibility: visible !important;
	opacity: 1 !important;
  }
  
  .nav-text {
	color: #fff;
  }
  
  .burger.nav-text {
	color: #fff;
  }
  
  .logo {
	background-image: url(logo_text.svg);
	background-size: contain;
	position: absolute;
	background-position: center;
	background-repeat: no-repeat;
	height: 40%;
	width: 45%;
	margin-top: 35px;
	filter: brightness(0) invert(1);
  }
  
  #global-nav-mobile-bar .nav-logo {
	flex-grow: 1;
  }
  
  .header_boundingbox {
	display: flex;
	align-items: left;
  }

  .section_legal {
	padding: 0px 0px 25px 0px;
  }

  .about-container {
	max-width: 1200px;
	margin: 0 auto;
  }

  h2.about-header {
	font-size: 50px;
	font-weight: 600;
	text-align: center;
	margin: 25px 0px 15px 0px;
  }

  .about-container p {
	text-align: center;
  }

  .main_content p {
	text-align: center;
  }

  p.aboutus-text {
	text-align: left;
  }

  p.aboutus-text-lrg {
	font-size: 20px;
	margin-bottom: 0;
	color: #fff !important;
	text-align: left;
  }

  p.aboutus-text-oneline {
	text-align: left;
	display: inline;
  }

  a.aboutus-text-oneline {
	text-align: left;
	color: #888;
  }

  .team-image img {
	display: block;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	padding: 10px 0px 25px 0px;
  }

  .container p {
	text-align: center;
  }

/* Mobile Navigation Overlay */
#wrap-page {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #111;
  opacity: 0;
  z-index: -1;
  transition: opacity 0.3s ease-out;
  cursor: pointer;
  pointer-events: none;
}

#wrap-page[style*="opacity: 0.5"] {
  pointer-events: auto;
}

/* Prevent horizontal scroll on mobile */
html {
  overflow-x: hidden;
}

body {
  overflow-x: hidden;
  position: relative;
}

/* Additional Mobile Responsive Styles */
@media only screen and (max-width: 768px) {
  /* Typography adjustments */
  body h1 {
    font-size: 32px;
    margin: 15px 0px 10px 0px;
  }

  body h2 {
    font-size: 1.5em;
  }

  body h3 {
    font-size: 1.2em;
  }

  body p {
    font-size: 0.875em;
    padding: 0 15px;
  }

  /* Header adjustments */
  .main-header .header-wrapper {
    width: 100%;
    margin: 0;
    padding: 10px 15px;
  }

  /* Footer responsiveness */
  .footer-cta {
    margin-left: 0;
    padding: 30px 15px !important;
  }

  .single-cta {
    text-align: center;
    margin-bottom: 30px;
  }

  .single-cta i {
    font-size: 40px;
    float: none;
    display: block;
    margin: 0 auto 15px;
  }

  .cta-text {
    padding-left: 0;
  }

  .footer-logo {
    margin-left: 0;
    text-align: center;
  }

  .footer-widget {
    margin-bottom: 30px;
    padding: 0 15px;
  }

  .footer-widget ul li {
    width: 100%;
    text-align: left;
    padding: 5px 0;
  }

  .subscribe-form input {
    width: 70%;
  }

  .subscribe-form button {
    padding: 8px 12px;
  }

  /* Banner slider mobile optimization */
  #section-1 .content-slider nav .controls {
    width: 100%;
    margin: 0;
    padding: 0 10px;
  }

  #section-1 .content-slider nav .controls label {
    width: 22%;
    margin: 0 0.5%;
    font-size: 0.7em;
    padding-top: 0.5em;
    height: 3em;
    color: rgba(255, 255, 255, 0.9);
    background: rgba(31, 58, 92, 0.4);
    border-radius: 5px;
  }

  #section-1 .content-slider .slider .banner .banner-inner-wrapper h1 {
    font-size: 3em;
  }

  #section-1 .content-slider .slider .banner .banner-inner-wrapper h2 {
    font-size: 1.5em;
  }

  .img-scrolling-banner {
    max-width: 250px;
    margin-bottom: 30px;
  }

  /* Content sections */
  .section-header {
    padding-top: 3em;
  }

  .about-container {
    padding: 0 15px;
  }

  .team-image img {
    padding: 10px 0;
  }

  /* Fix overflow issues */
  * {
    max-width: 100%;
    box-sizing: border-box;
  }

  .container {
    padding-left: 15px;
    padding-right: 15px;
  }

  /* Improve touch interactions */
  a, button, input, select, textarea {
    -webkit-tap-highlight-color: rgba(31, 58, 92, 0.3);
  }

  /* Ensure images don't overflow */
  img {
    max-width: 100%;
    height: auto;
  }

  /* Fix Bootstrap column padding on mobile */
  .row {
    margin-left: -10px;
    margin-right: -10px;
  }

  .col-xl-4, .col-lg-4, .col-md-4, .col-md-6 {
    padding-left: 10px;
    padding-right: 10px;
  }

  /* Improve button touch targets */
  button, .learn-more-button a, .subscribe-form button {
    min-height: 44px;
    min-width: 44px;
  }

  /* Fix any text that might be too close to edges */
  p, h1, h2, h3, h4, h5, h6 {
    word-wrap: break-word;
    overflow-wrap: break-word;
  }

  /* Ensure smooth scrolling */
  * {
    -webkit-overflow-scrolling: touch;
  }

  /* Footer social icon spacing fix */
  .footer-social-icon {
    margin-top: 20px;
  }

  .footer-social-icon span {
    margin-bottom: 15px;
  }

  .footer-widget-heading h3 {
    margin-top: 20px;
  }
}
/* ===========================================
   VEHICLES PAGE STYLES
   =========================================== */
/* Vehicles Page Styles */


/* Hero Section */
.vehicles-hero {
    text-align: center;
    padding: 80px 20px 60px;
    background: linear-gradient(135deg, #0a0a0a 0%, #111111 100%);
}

.vehicles-title {
	font-family: Montserrat, sans-serif;
	font-size: 60px;
	font-weight: 700;
	color: #fff;
	margin-bottom: 20px;
	letter-spacing: 2px;
}

.vehicles-hero .line {
	display: block;
	width: 80px;
	height: 4px;
	margin: 25px auto;
	background: #fff;
}

.vehicles-subtitle {
	font-family: "Lexend Exa", sans-serif;
	font-size: 24px;
	font-weight: 300;
	color: #fff;
	margin: 0;
	letter-spacing: 1px;
}

/* Vehicle Showcase Section */
.vehicle-showcase {
	background: transparent;
	padding: 40px 0;
}

/* Align vehicle page paragraphs left within vehicle showcase containers */
.vehicle-showcase .container p {
	text-align: left;
}

.vehicle-image-wrapper {
	position: relative;
	padding: 40px;
}

.vehicle-main-image {
	width: 100%;
	height: auto;
	filter: drop-shadow(0 20px 40px rgba(0, 0, 0, 0.5)) brightness(1.1);
	transition: transform 0.3s ease;
}

.vehicle-image-wrapper:hover .vehicle-main-image {
	transform: scale(1.02);
}

.vehicle-badge {
	position: absolute;
	top: 60px;
	right: 60px;
	background: linear-gradient(135deg, #1f3a5c 0%, #2a4f7d 100%);
	padding: 15px 30px;
	border-radius: 30px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
	border: 1px solid rgba(255, 255, 255, 0.1);
}

.vehicle-badge span {
	color: #fff;
	font-family: Montserrat, sans-serif;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 1px;
}

/* Vehicle Info Section */
.vehicle-info {
	padding: 0 40px;
}

.vehicle-model {
	font-family: Montserrat, sans-serif;
	font-size: 48px;
	font-weight: 700;
	color: #fff;
	margin-bottom: 20px;
}

.vehicle-description {
	font-family: Roboto, sans-serif;
	font-size: 18px;
	line-height: 1.8;
	color: #ccc;
	margin-bottom: 40px;
}

/* Features Grid */
.vehicle-features {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 30px;
	margin-bottom: 50px;
}

.feature-item {
	display: flex;
	align-items: center;
	gap: 15px;
}

.feature-item i {
	font-size: 36px;
	color: #4a7fb8;
	width: 50px;
	text-align: center;
}

.feature-text h4 {
	font-family: Montserrat, sans-serif;
	font-size: 18px;
	font-weight: 600;
	color: #fff;
	margin-bottom: 5px;
}

.feature-text p {
	font-family: Roboto, sans-serif;
	font-size: 14px;
	color: #999;
	margin: 0;
	padding: 0;
}

/* Fleet Numbers Section */
.fleet-numbers {
	background: rgba(31, 58, 92, 0.2);
	padding: 30px;
	border-radius: 10px;
	text-align: center;
	border: 1px solid rgba(31, 58, 92, 0.3);
}

.fleet-numbers h3 {
	font-family: "Lexend Exa", sans-serif;
	font-size: 20px;
	font-weight: 400;
	color: #fff;
	margin-bottom: 20px;
}

.registration-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
	justify-content: center;
}

.reg-badge {
	background: #1f3a5c;
	color: #fff;
	padding: 10px 20px;
	border-radius: 25px;
	font-family: Montserrat, sans-serif;
	font-weight: 600;
	font-size: 16px;
	letter-spacing: 0.5px;
	transition: all 0.3s ease;
}

/* .reg-badge:hover {
	background: linear-gradient(135deg, #2a4f7d 0%, #3a6fa0 100%);
	transform: translateY(-2px);
	box-shadow: 0 5px 15px rgba(74, 127, 184, 0.4);
	border: 1px solid rgba(74, 127, 184, 0.3);
} */

/* CTA Section */
.vehicle-cta {
	background: transparent;
	/* padding: 80px 0; */
}

.cta-content {
	text-align: center;
	max-width: 800px;
	margin: 0 auto;
}

.cta-content h3 {
	font-family: Montserrat, sans-serif;
	font-size: 36px;
	font-weight: 700;
	color: #fff;
	margin-bottom: 20px;
}

.cta-content p {
	font-family: Roboto, sans-serif;
	font-size: 18px;
	color: rgba(255, 255, 255, 0.8);
	margin-bottom: 30px;
	padding: 0;
}

.cta-button {
	display: inline-block;
	padding: 15px 40px;
	background: transparent;
	color: #fff;
	border: 3px solid #fff;
	border-radius: 30px;
	font-family: Montserrat, sans-serif;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 1px;
	transition: all 0.3s ease;
	text-decoration: none;
}

.cta-button:hover {
	background: #fff;
	color: #1f3a5c;
	transform: translateY(-2px);
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}

/* Responsive Design */
@media screen and (max-width: 991px) {
	.vehicle-features {
		grid-template-columns: 1fr;
		gap: 20px;
	}
	
	.vehicle-info {
		padding: 40px 20px 0;
	}
	
	.vehicle-image-wrapper {
		padding: 20px;
	}
	
	.vehicle-model {
		font-size: 36px;
	}
}

@media screen and (max-width: 768px) {
	.vehicles-title {
		font-size: 42px;
	}
	
	.vehicles-subtitle {
		font-size: 18px;
	}
	
	.vehicles-hero {
		padding: 60px 20px 40px;
	}
	
	.vehicle-showcase {
		padding: 50px 0;
	}
	
	.vehicle-badge {
		top: 30px;
		right: 30px;
		padding: 10px 20px;
	}
	
	.vehicle-badge span {
		font-size: 14px;
	}
	
	.vehicle-model {
		font-size: 32px;
		text-align: center;
	}
	
	.vehicle-description {
		font-size: 16px;
		text-align: center;
	}
	
	.feature-item i {
		font-size: 28px;
	}
	
	.feature-text h4 {
		font-size: 16px;
	}
	
	.fleet-numbers {
		padding: 20px;
	}
	
	.fleet-numbers h3 {
		font-size: 18px;
	}
	
	.reg-badge {
		font-size: 14px;
		padding: 8px 16px;
	}
	
	.cta-content h3 {
		font-size: 28px;
	}
	
	.cta-content p {
		font-size: 16px;
	}
	
	.vehicle-cta {
		padding: 60px 0;
	}
}

@media screen and (max-width: 480px) {
	.vehicles-title {
		font-size: 32px;
		letter-spacing: 1px;
	}
	
	.vehicles-subtitle {
		font-size: 16px;
	}
	
	.vehicles-hero {
		padding: 50px 15px 30px;
	}
	
	.vehicles-hero .line {
		width: 60px;
		height: 3px;
		margin: 20px auto;
	}
	
	.vehicle-showcase {
		padding: 40px 0;
	}
	
	.vehicle-image-wrapper {
		padding: 15px;
	}
	
	.vehicle-badge {
		position: static;
		display: inline-block;
		margin-top: 20px;
	}
	
	.vehicle-info {
		padding: 30px 15px 0;
	}
	
	.vehicle-model {
		font-size: 28px;
		margin-bottom: 15px;
	}
	
	.vehicle-description {
		font-size: 14px;
		margin-bottom: 30px;
	}
	
	.vehicle-features {
		gap: 15px;
		margin-bottom: 30px;
	}
	
	.feature-item {
		gap: 10px;
	}
	
	.feature-item i {
		font-size: 24px;
		width: 40px;
	}
	
	.feature-text h4 {
		font-size: 14px;
	}
	
	.feature-text p {
		font-size: 12px;
	}
	
	.fleet-numbers {
		padding: 15px;
	}
	
	.fleet-numbers h3 {
		font-size: 16px;
		margin-bottom: 15px;
	}
	
	.registration-badges {
		gap: 10px;
	}
	
	.reg-badge {
		font-size: 12px;
		padding: 6px 12px;
	}
	
	.cta-content h3 {
		font-size: 24px;
	}
	
	.cta-content p {
		font-size: 14px;
		padding: 0 10px;
	}
	
	.cta-button {
		font-size: 14px;
		padding: 12px 30px;
	}
	
	.vehicle-cta {
		padding: 50px 0;
	}
}

/* Vehicles Stats Section */
.vehicle-stats {
	background: transparent;
	padding: 40px 0 80px;
}

.stat-card {
	text-align: center;
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 12px;
	padding: 30px 20px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}

.stat-value {
	font-family: Montserrat, sans-serif;
	font-weight: 800;
	font-size: 42px;
	color: #fff;
}

.stat-label {
	font-family: "Lexend Exa", sans-serif;
	font-size: 14px;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: #999;
	margin-top: 10px;
}

@media screen and (max-width: 768px) {
	.vehicle-stats {
		padding: 30px 0 60px;
	}

	.stat-value {
		font-size: 32px;
	}
}

/* ===========================================
   CAREERS PAGE STYLES
   =========================================== */
/* Careers Page Styles */


/* Hero Section */
.careers-hero {
    text-align: center;
    padding: 80px 20px 60px;
    background: linear-gradient(135deg, #0a0a0a 0%, #111111 100%);
}

.careers-title {
	font-family: Montserrat, sans-serif;
	font-size: 60px;
	font-weight: 700;
	color: #fff;
	margin-bottom: 20px;
	letter-spacing: 2px;
}

.careers-hero .line {
	display: block;
	width: 80px;
	height: 4px;
	margin: 25px auto;
	background: #fff;
}

.careers-subtitle {
	font-family: "Lexend Exa", sans-serif;
	font-size: 24px;
	font-weight: 300;
	color: #fff;
	margin: 0;
	letter-spacing: 1px;
}

/* Intro Section */
.careers-intro {
	background: transparent;
	padding: 60px 20px;
	text-align: center;
}

.intro-text {
	font-family: Roboto, sans-serif;
	font-size: 20px;
	line-height: 1.8;
	color: #ccc;
	max-width: 800px;
	margin: 0 auto;
	padding: 0;
}

/* Current Vacancies Section */
.current-vacancies {
	background: transparent;
	padding: 80px 20px 0px 20px;
}

.section-title {
	font-family: Montserrat, sans-serif;
	font-size: 42px;
	font-weight: 700;
	color: #fff;
	text-align: center;
	margin-bottom: 50px;
}

/* Job Listing */
.job-listing {
	background: rgba(255, 255, 255, 0.05);
	border-radius: 15px;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.1);
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}

.job-header {
	background: rgba(31, 58, 92, 0.3);
	padding: 30px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-bottom: 2px solid rgba(255, 255, 255, 0.1);
}

.job-title {
	font-family: Montserrat, sans-serif;
	font-size: 36px;
	font-weight: 700;
	color: #fff;
	margin-bottom: 15px;
}

.job-meta {
	display: flex;
	gap: 25px;
	flex-wrap: wrap;
}

.job-meta span {
	font-family: Roboto, sans-serif;
	font-size: 16px;
	color: #ccc;
}

.job-meta i {
	color: #4a7fb8;
	margin-right: 8px;
}

.job-badge {
	background: linear-gradient(135deg, #ff6b35 0%, #e85a2c 100%);
	color: #fff;
	padding: 12px 30px;
	border-radius: 30px;
	font-family: Montserrat, sans-serif;
	font-weight: 600;
	font-size: 16px;
	box-shadow: 0 5px 15px rgba(255, 107, 53, 0.4);
}

/* Job Content */
.job-content {
	padding: 40px;
}

.job-description {
	margin-bottom: 40px;
}

.job-description h4,
.job-section h4 {
	font-family: Montserrat, sans-serif;
	font-size: 24px;
	font-weight: 600;
	color: #fff;
	margin-bottom: 20px;
}

.job-description p {
	font-family: Roboto, sans-serif;
	font-size: 17px;
	line-height: 1.8;
	color: #ccc;
	padding: 0;
}

.job-overview-section {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px;
	margin-bottom: 50px;
}

.job-details-column {
	flex: 1;
}

.job-section.consolidated {
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 12px;
	padding: 30px;
}

.job-subsection {
	margin-bottom: 25px;
}

.job-subsection:last-child {
	margin-bottom: 0;
}

.job-subsection h5 {
	color: #fff;
	font-family: Montserrat, sans-serif;
	font-size: 18px;
	font-weight: 600;
	margin-bottom: 12px;
}

.benefits-highlight {
	flex: 1;
}

.benefits-highlight h4 {
	color: #fff;
	font-family: Montserrat, sans-serif;
	font-size: 24px;
	font-weight: 700;
	margin-bottom: 20px;
	text-align: center;
}

.benefit-cards {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

.benefit-card {
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.15);
	border-radius: 12px;
	padding: 25px;
	text-align: center;
	transition: all 0.3s ease;
}

.benefit-card:hover {
	background: rgba(255, 255, 255, 0.12);
	transform: translateY(-2px);
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}

.benefit-card i {
	font-size: 36px;
	color: #5170a3;
	margin-bottom: 15px;
}

.benefit-card h5 {
	color: #fff;
	font-family: Montserrat, sans-serif;
	font-size: 18px;
	font-weight: 600;
	margin-bottom: 10px;
}

.benefit-card p {
	color: #aaa;
	font-size: 14px;
	line-height: 1.5;
	margin: 0;
}

.job-section {
	background: rgba(31, 58, 92, 0.15);
	padding: 30px;
	border-radius: 10px;
	border: 1px solid rgba(31, 58, 92, 0.3);
}

.job-section h4 i {
	color: #4a7fb8;
	margin-right: 10px;
}

.job-section ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.job-section ul li {
	font-family: Roboto, sans-serif;
	font-size: 16px;
	color: #ccc;
	margin-bottom: 12px;
	padding-left: 25px;
	position: relative;
}

.job-section ul li:before {
	content: "▸";
	position: absolute;
	left: 0;
	color: #4a7fb8;
	font-weight: bold;
}

/* Apply Section */
.apply-section {
	background: rgba(255, 255, 255, 0.05);
	padding: 40px;
	border-radius: 10px;
	text-align: center;
}

.apply-section h4 {
	font-family: Montserrat, sans-serif;
	font-size: 28px;
	font-weight: 600;
	color: #fff;
	margin-bottom: 20px;
}

.apply-section p {
	font-family: Roboto, sans-serif;
	font-size: 18px;
	color: #ccc;
	margin-bottom: 30px;
	padding: 0;
}

.apply-buttons {
	display: flex;
	gap: 20px;
	justify-content: center;
	flex-wrap: wrap;
}

.apply-button {
	display: inline-block;
	padding: 15px 40px;
	border-radius: 30px;
	font-family: Montserrat, sans-serif;
	font-size: 16px;
	font-weight: 600;
	text-decoration: none;
	transition: all 0.3s ease;
	letter-spacing: 0.5px;
}

.apply-button i {
	margin-right: 10px;
}

.apply-button.primary {
    background: linear-gradient(135deg, #4a7fb8 0%, #1f3a5c 100%);
    color: #fff;
    border: 2px solid #4a7fb8;
}

.apply-button.primary:hover {
	transform: translateY(-2px);
	box-shadow: 0 10px 30px rgba(74, 127, 184, 0.5);
	background: linear-gradient(135deg, #5a8fc8 0%, #2a4a6c 100%);
}

.apply-button.secondary {
	background: transparent;
	color: #fff;
	border: 2px solid #4a7fb8;
}

.apply-button.secondary:hover {
	background: rgba(74, 127, 184, 0.2);
	transform: translateY(-2px);
	box-shadow: 0 10px 30px rgba(74, 127, 184, 0.3);
}

/* Benefits Section */
.careers-benefits {
	background: transparent;
	padding: 40px 20px 0px 20px;
}

.benefits-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 30px;
	max-width: 1200px;
	margin: 0 auto;
}

.benefit-item {
	text-align: center;
	padding: 30px 20px;
	background: rgba(31, 58, 92, 0.15);
	border-radius: 10px;
	border: 1px solid rgba(31, 58, 92, 0.3);
	transition: all 0.3s ease;
}

.benefit-item:hover {
	transform: translateY(-5px);
	background: rgba(31, 58, 92, 0.25);
	box-shadow: 0 10px 30px rgba(31, 58, 92, 0.3);
}

.benefit-item i {
	font-size: 48px;
	color: #4a7fb8;
	margin-bottom: 20px;
}

.benefit-item h4 {
	font-family: Montserrat, sans-serif;
	font-size: 20px;
	font-weight: 600;
	color: #fff;
	margin-bottom: 15px;
}

.benefit-item p {
	font-family: Roboto, sans-serif;
	font-size: 15px;
	color: #999;
	padding: 0;
	margin: 0;
}

/* Responsive Design */
@media screen and (max-width: 991px) {
	.job-overview-section {
		grid-template-columns: 1fr;
		gap: 30px;
	}
	
	.benefit-cards {
		grid-template-columns: 1fr;
	}
	
	.benefits-grid {
		grid-template-columns: repeat(2, 1fr);
	}
	
	.job-header {
		flex-direction: column;
		text-align: center;
		gap: 20px;
	}
}

@media screen and (max-width: 768px) {
	.careers-title {
		font-size: 42px;
	}
	
	.careers-subtitle {
		font-size: 18px;
	}
	
	.section-title {
		font-size: 32px;
	}
	
	.job-title {
		font-size: 28px;
	}
	
	.job-meta {
		justify-content: center;
		gap: 15px;
	}
	
	.job-meta span {
		font-size: 14px;
	}
	
	.job-content {
		padding: 30px 20px;
	}
	
	.job-section {
		padding: 20px;
	}
	
	.job-section h4 {
		font-size: 20px;
	}
	
	.job-section ul li {
		font-size: 14px;
	}
	
	.apply-buttons {
		flex-direction: column;
		align-items: center;
	}
	
	.apply-button {
		width: 100%;
		max-width: 300px;
	}
	
	.benefits-grid {
		grid-template-columns: 1fr;
		gap: 20px;
	}
	
	.intro-text {
		font-size: 18px;
	}
}

@media screen and (max-width: 480px) {
	.careers-title {
		font-size: 32px;
		letter-spacing: 1px;
	}
	
	.careers-subtitle {
		font-size: 16px;
	}
	
	.careers-hero {
		padding: 60px 15px 40px;
	}
	
	.section-title {
		font-size: 28px;
		margin-bottom: 30px;
	}
	
	.job-header {
		padding: 20px 15px;
	}
	
	.job-title {
		font-size: 24px;
	}
	
	.job-badge {
		font-size: 14px;
		padding: 10px 20px;
	}
	
	.job-content {
		padding: 25px 15px;
	}
	
	.job-section h4 {
		font-size: 18px;
	}
	
	.job-section ul li {
		font-size: 13px;
		margin-bottom: 10px;
	}
	
	.apply-section {
		padding: 25px 15px;
	}
	
	.apply-section h4 {
		font-size: 22px;
	}
	
	.apply-section p {
		font-size: 16px;
	}
	
	.apply-button {
		font-size: 14px;
		padding: 12px 25px;
	}
	
	.benefit-item {
		padding: 25px 15px;
	}
	
	.benefit-item i {
		font-size: 36px;
	}
	
	.benefit-item h4 {
		font-size: 18px;
	}
	
	.benefit-item p {
		font-size: 14px;
	}
	
	.intro-text {
		font-size: 16px;
		padding: 0 10px;
	}
	
	.current-vacancies {
		padding: 50px 15px;
	}
	
	.careers-benefits {
		padding: 50px 15px;
	}
}

/* ===========================================
   CONTACT PAGE STYLES
   =========================================== */
.main_content {
	height: 100%;
	padding-top: 6em;
	background: #000;
	box-sizing: border-box;
	padding-bottom: 4em;
	margin-top: 0;
}

.main_content h1 {
  text-align: center;
}

.branding-action-bar {
    background: #fff !important;
}

.railrep_container i {
    color: #fff;
}

.container h5 {
    color: #fff;
}

/* Contact Form Styles */
.contact-form-wrapper {
	max-width: 800px;
	margin: 40px auto;
	padding: 0 20px 60px 20px;
}

.contact-form {
    background: rgba(255, 255, 255, 0.05);
    border-radius: 15px;
    padding: 40px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}

.form-section h3 {
    font-family: Montserrat, sans-serif;
    font-size: 32px;
    font-weight: 700;
    color: #fff;
    text-align: center;
    margin-bottom: 40px;
}

.form-group {
    margin-bottom: 25px;
}

.form-group label {
    display: block;
    font-family: Montserrat, sans-serif;
    font-size: 16px;
    font-weight: 600;
    color: #fff;
    margin-bottom: 10px;
}

.form-group .required {
    color: #ff6b6b;
}

.form-control {
    width: 100%;
    padding: 12px 20px;
    background: rgba(255, 255, 255, 0.1);
    border: 2px solid rgba(255, 255, 255, 0.2);
    border-radius: 8px;
    color: #fff;
    font-family: Roboto, sans-serif;
    font-size: 16px;
    transition: all 0.3s ease;
    outline: none;
}

.form-control:focus {
    background: rgba(255, 255, 255, 0.15);
    border-color: #4a7fb8;
    box-shadow: 0 0 0 3px rgba(74, 127, 184, 0.2);
	color: #fff;
}

.form-control::placeholder {
    color: #fff;
}

textarea.form-control {
    resize: vertical;
    min-height: 100px;
}

select.form-control {
    cursor: pointer;
}

select.form-control option {
    background: #1a2a3a;
    color: #fff;
}

/* Checkbox Styles */
.form-row {
    display: flex;
    gap: 30px;
    margin-bottom: 25px;
}

.form-group-half {
    flex: 1;
}

.checkbox-group {
    display: flex;
    align-items: center;
    padding: 15px 20px;
    background: rgba(31, 58, 92, 0.2);
    border-radius: 8px;
    border: 1px solid rgba(31, 58, 92, 0.3);
    transition: all 0.3s ease;
}

.checkbox-group:hover {
    background: rgba(31, 58, 92, 0.3);
}

.checkbox-group input[type="checkbox"] {
    width: 20px;
    height: 20px;
    margin-right: 12px;
    cursor: pointer;
    accent-color: #4a7fb8;
}

.checkbox-group label {
    margin: 0;
    cursor: pointer;
    font-size: 15px;
}

/* Submit Button */
.form-submit {
    text-align: center;
    margin-top: 40px;
}

.submit-button {
    display: inline-block;
    padding: 15px 50px;
    background: linear-gradient(135deg, #4caf50 0%, #45a049 100%);
    color: #fff;
    border: none;
    border-radius: 30px;
    font-family: Montserrat, sans-serif;
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 1px;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 5px 15px rgba(76, 175, 80, 0.3);
}

.submit-button:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 30px rgba(76, 175, 80, 0.5);
    background: linear-gradient(135deg, #66bb6a 0%, #4caf50 100%);
}

.submit-button i {
    margin-right: 10px;
}

.form-note {
    margin-top: 15px;
    font-family: Roboto, sans-serif;
    font-size: 14px;
    color: #999;
}

/* Single CTA Contact Styles */
.single-cta-contact {
    display: flex;
    align-items: center;
}

.single-cta-contact i {
    color: #4a7fb8;
    font-size: 40px;
    margin-right: 20px;
}

/* Responsive Design */
@media screen and (max-width: 768px) {
    .main_content {
        padding-top: 70px;
    }
    
    .contact-form {
        padding: 30px 20px;
    }
    
    .form-section h3 {
        font-size: 26px;
        margin-bottom: 30px;
    }
    
    .form-row {
        flex-direction: column;
        gap: 15px;
    }
    
    .checkbox-group {
        padding: 12px 15px;
    }
    
    .form-group label {
        font-size: 15px;
    }
    
    .form-control {
        font-size: 15px;
        padding: 10px 15px;
    }
    
    .submit-button {
        font-size: 16px;
        padding: 12px 30px;
    }
    
    .railrep_container {
        padding: 20px 15px;
    }
    
    .railrep_container i {
        font-size: 24px;
    }
    
    .container h5 {
        font-size: 18px;
        padding: 0 15px;
    }
}

@media screen and (max-width: 480px) {
    .main_content {
        padding-top: 60px;
        min-height: calc(100vh - 60px);
    }
    
    .contact-form-wrapper {
        padding: 0 10px;
    }
    
    .contact-form {
        padding: 25px 15px;
    }
    
    .form-section h3 {
        font-size: 22px;
        margin-bottom: 25px;
    }
    
    .form-group {
        margin-bottom: 20px;
    }
    
    .form-group label {
        font-size: 14px;
        margin-bottom: 8px;
    }
    
    .form-control {
        font-size: 14px;
        padding: 8px 12px;
    }
    
    .checkbox-group {
        padding: 10px 12px;
    }
    
    .checkbox-group label {
        font-size: 13px;
    }
    
    .submit-button {
        font-size: 14px;
        padding: 10px 25px;
        width: 100%;
        max-width: 300px;
    }
    
    .form-note {
        font-size: 12px;
    }
    
    .railrep_container {
        padding: 15px 10px;
    }
    
    .railrep_container i {
        font-size: 20px;
    }
    
    .container h5 {
        font-size: 16px;
        padding: 0 10px;
    }
    
    .single-cta-contact i {
        font-size: 30px;
        margin-right: 15px;
    }
}

/* ===========================================
   ABOUT PAGE STYLES
   =========================================== */
/* About Page Styles */


/* Hero Section */
.about-hero {
    text-align: center;
    padding: 80px 20px 60px;
    background: linear-gradient(135deg, #0a0a0a 0%, #111111 100%);
}

.about-title {
	font-family: Montserrat, sans-serif;
	font-size: 60px;
	font-weight: 700;
	color: #fff;
	margin-bottom: 20px;
	letter-spacing: 2px;
}

.about-hero .line {
	display: block;
	width: 80px;
	height: 4px;
	margin: 25px auto;
	background: #fff;
}

.about-subtitle {
	font-family: "Lexend Exa", sans-serif;
	font-size: 24px;
	font-weight: 300;
	color: #fff;
	margin: 0;
	letter-spacing: 1px;
}

/* Intro Section */
.about-intro {
	background: transparent;
	padding: 80px 20px;
}

.intro-content {
	text-align: center;
	max-width: 900px;
	margin: 0 auto;
}

.intro-headline {
	font-family: Montserrat, sans-serif;
	font-size: 42px;
	font-weight: 700;
	color: #4a7fb8;
	margin-bottom: 30px;
}

.intro-text {
	font-family: Roboto, sans-serif;
	font-size: 20px;
	line-height: 1.8;
	color: #ccc;
	padding: 0;
}

/* Image Section */
.about-image-section {
	background: transparent;
	padding: 0;
	position: relative;
}

.image-wrapper {
	position: relative;
	overflow: hidden;
	max-height: 500px;
}

.hero-image {
	width: 100%;
	height: auto;
	display: block;
	filter: brightness(0.7);
}

.image-overlay {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	background: linear-gradient(to top, rgba(0,0,0,0.9) 0%, transparent 100%);
	padding: 60px 20px 40px;
}

.overlay-content {
	display: flex;
	justify-content: center;
	gap: 80px;
	max-width: 800px;
	margin: 0 auto;
}

.stat-item {
	text-align: center;
}

.stat-item h3 {
	font-family: Montserrat, sans-serif;
	font-size: 48px;
	font-weight: 700;
	color: #4a7fb8;
	margin-bottom: 10px;
}

.stat-item p {
	font-family: "Lexend Exa", sans-serif;
	font-size: 16px;
	color: #fff;
	letter-spacing: 1px;
	margin: 0;
	padding: 0;
}

/* Content Section */
.about-content {
	background: transparent;
	padding: 80px 20px;
}

.content-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 60px;
	max-width: 1200px;
	margin: 0 auto;
}

.content-section {
	padding: 40px;
	background: rgba(31, 58, 92, 0.1);
	border-radius: 15px;
	border: 1px solid rgba(31, 58, 92, 0.3);
}

.section-icon {
	width: 70px;
	height: 70px;
	background: linear-gradient(135deg, #4a7fb8 0%, #1f3a5c 100%);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 30px;
	box-shadow: 0 10px 30px rgba(74, 127, 184, 0.3);
}

.section-icon i {
	font-size: 32px;
	color: #fff;
}

.content-section h2 {
	font-family: Montserrat, sans-serif;
	font-size: 32px;
	font-weight: 700;
	color: #fff;
	margin-bottom: 20px;
}

.section-line {
	width: 60px;
	height: 3px;
	background: #4a7fb8;
	margin-bottom: 30px;
}

.content-section p {
	font-family: Roboto, sans-serif;
	font-size: 16px;
	line-height: 1.8;
	color: #ccc;
	margin-bottom: 20px;
	padding: 0;
}

.highlight-box {
	background: rgba(74, 127, 184, 0.1);
	border-left: 4px solid #4a7fb8;
	padding: 25px;
	margin-top: 30px;
	border-radius: 8px;
}

.highlight-box i {
	font-size: 24px;
	color: #4a7fb8;
	margin-bottom: 15px;
	display: block;
}

.highlight-box p {
	font-style: italic;
	font-size: 18px;
	margin: 0;
	color: #fff;
}

.service-highlights {
	margin-top: 30px;
	display: grid;
	grid-template-columns: 1fr;
	gap: 15px;
}

.service-item {
	display: flex;
	align-items: center;
	gap: 15px;
	padding: 12px 20px;
	background: rgba(255, 255, 255, 0.05);
	border-radius: 8px;
	transition: all 0.3s ease;
}

.service-item:hover {
	background: rgba(74, 127, 184, 0.1);
	transform: translateX(5px);
}

.service-item i {
	font-size: 20px;
	color: #4a7fb8;
}

.service-item span {
	font-family: Roboto, sans-serif;
	font-size: 16px;
	color: #fff;
}

/* Values Section */
.values-section {
	background: transparent;
	padding: 80px 20px;
}

.section-title {
	font-family: Montserrat, sans-serif;
	font-size: 42px;
	font-weight: 700;
	color: #fff;
	text-align: center;
	margin-bottom: 60px;
}

.values-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 30px;
	max-width: 1200px;
	margin: 0 auto;
}

.value-card {
	text-align: center;
	padding: 40px 20px;
	background: rgba(255, 255, 255, 0.05);
	border-radius: 15px;
	border: 1px solid rgba(255, 255, 255, 0.1);
	transition: all 0.3s ease;
}

.value-card:hover {
	transform: translateY(-10px);
	background: rgba(255, 255, 255, 0.08);
	box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
}

.value-icon {
	width: 80px;
	height: 80px;
	background: linear-gradient(135deg, #4a7fb8 0%, #1f3a5c 100%);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 25px;
}

.value-icon i {
	font-size: 36px;
	color: #fff;
}

.value-card h3 {
	font-family: Montserrat, sans-serif;
	font-size: 24px;
	font-weight: 600;
	color: #fff;
	margin-bottom: 15px;
}

.value-card p {
	font-family: Roboto, sans-serif;
	font-size: 15px;
	color: #999;
	padding: 0;
	margin: 0;
}

/* CTA Section */
.cta-section {
	background: transparent;
	padding: 80px 20px;
}

.cta-content {
	text-align: center;
	max-width: 800px;
	margin: 0 auto;
}

.cta-content h2 {
	font-family: Montserrat, sans-serif;
	font-size: 36px;
	font-weight: 700;
	color: #fff;
	margin-bottom: 20px;
}

.cta-content p {
	font-family: Roboto, sans-serif;
	font-size: 18px;
	color: #ccc;
	margin-bottom: 40px;
	padding: 0;
}

.cta-buttons {
	display: flex;
	gap: 20px;
	justify-content: center;
	flex-wrap: wrap;
}

.cta-button {
	display: inline-block;
	padding: 15px 40px;
	border-radius: 30px;
	font-family: Montserrat, sans-serif;
	font-size: 16px;
	font-weight: 600;
	text-decoration: none;
	transition: all 0.3s ease;
	letter-spacing: 0.5px;
}

.cta-button.primary {
	background: linear-gradient(135deg, #4a7fb8 0%, #1f3a5c 100%);
	color: #fff;
	border: 2px solid #4a7fb8;
}

.cta-button.primary:hover {
	transform: translateY(-2px);
	box-shadow: 0 10px 30px rgba(74, 127, 184, 0.5);
}

.cta-button.secondary {
	background: transparent;
	color: #fff;
	border: 2px solid #4a7fb8;
}

.cta-button.secondary:hover {
	background: rgba(74, 127, 184, 0.2);
	transform: translateY(-2px);
}

/* Legacy styles for compatibility */
.about-header {
	display: none;
}

.aboutus-text,
.aboutus-text-lrg,
.aboutus-text-oneline {
	display: none;
}

.team-image {
	display: none;
}

/* Responsive Design */
@media screen and (max-width: 991px) {
	.content-grid {
		grid-template-columns: 1fr;
		gap: 40px;
	}
	
	.values-grid {
		grid-template-columns: repeat(2, 1fr);
	}
	
	.overlay-content {
		gap: 50px;
	}
}

@media screen and (max-width: 768px) {
	.about-title {
		font-size: 42px;
	}
	
	.about-subtitle {
		font-size: 18px;
	}
	
	.intro-headline {
		font-size: 32px;
	}
	
	.intro-text {
		font-size: 18px;
	}
	
	.stat-item h3 {
		font-size: 36px;
	}
	
	.stat-item p {
		font-size: 14px;
	}
	
	.content-section {
		padding: 30px;
	}
	
	.content-section h2 {
		font-size: 28px;
	}
	
	.section-icon {
		width: 60px;
		height: 60px;
	}
	
	.section-icon i {
		font-size: 28px;
	}
	
	.values-grid {
		grid-template-columns: 1fr;
		gap: 20px;
	}
	
	.section-title {
		font-size: 32px;
	}
	
	.cta-buttons {
		flex-direction: column;
		align-items: center;
	}
	
	.cta-button {
		width: 100%;
		max-width: 300px;
	}
}

@media screen and (max-width: 480px) {
	.about-title {
		font-size: 32px;
		letter-spacing: 1px;
	}
	
	.about-subtitle {
		font-size: 16px;
	}
	
	.about-hero {
		padding: 60px 15px 40px;
	}
	
	.intro-headline {
		font-size: 26px;
		margin-bottom: 20px;
	}
	
	.intro-text {
		font-size: 16px;
	}
	
	.overlay-content {
		gap: 30px;
		flex-wrap: wrap;
	}
	
	.stat-item h3 {
		font-size: 32px;
	}
	
	.stat-item p {
		font-size: 12px;
	}
	
	.about-content {
		padding: 50px 15px;
	}
	
	.content-section {
		padding: 25px 20px;
	}
	
	.content-section h2 {
		font-size: 24px;
	}
	
	.content-section p {
		font-size: 14px;
	}
	
	.highlight-box {
		padding: 20px;
	}
	
	.highlight-box p {
		font-size: 16px;
	}
	
	.service-item {
		padding: 10px 15px;
	}
	
	.service-item span {
		font-size: 14px;
	}
	
	.values-section {
		padding: 50px 15px;
	}
	
	.section-title {
		font-size: 28px;
		margin-bottom: 40px;
	}
	
	.value-card {
		padding: 30px 15px;
	}
	
	.value-icon {
		width: 60px;
		height: 60px;
		margin-bottom: 20px;
	}
	
	.value-icon i {
		font-size: 28px;
	}
	
	.value-card h3 {
		font-size: 20px;
	}
	
	.value-card p {
		font-size: 14px;
	}
	
	.cta-section {
		padding: 50px 15px;
	}
	
	.cta-content h2 {
		font-size: 28px;
	}
	
	.cta-content p {
		font-size: 16px;
	}
	
	.cta-button {
		font-size: 14px;
		padding: 12px 30px;
	}
}

/* ===========================================
   NEW HERO SECTION STYLES
   =========================================== */
/* Bold Typography Hero - Using existing #section-1 styles from above */

/* Background Elements */
.hero-bg-pattern {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 0.03;
		background: repeating-linear-gradient(
			90deg,
			transparent,
			transparent 100px,
			rgba(74, 127, 184, 0.5) 100px,
			rgba(74, 127, 184, 0.5) 101px
		);
}

.hero-bg-text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-family: Montserrat, sans-serif;
    font-size: 350px;
    font-weight: 900;
    color: rgba(31, 58, 92, 0.05);
    white-space: nowrap;
    pointer-events: none;
    letter-spacing: -20px;
}

/* Main Content */
.hero-content {
    text-align: center;
    position: relative;
    z-index: 2;
    max-width: 1000px;
    padding: 80px 20px 0;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 400px;
}

/* Hero Animation Container */
.hero-animation-container {
    position: relative;
    width: 100%;
    height: 300px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.hero-phase {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    opacity: 0;
    transition: all 0.8s cubic-bezier(0.4, 0, 0.2, 1);
    width: 100%;
}

.hero-phase.active {
    opacity: 1;
}

.hero-phase.fade-out {
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.95);
}

.hero-phase.fade-in {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
}

/* Phase 1: We're Chaseside */
.hero-phase-1 .hero-text-line {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 15px;
}

.hero-word {
    font-family: Montserrat, sans-serif;
    font-weight: 300;
    font-size: 72px;
    color: #fff;
    text-transform: lowercase;
    letter-spacing: -2px;
    opacity: 0;
    transform: translateY(30px);
    animation: wordSlideIn 0.6s ease-out forwards;
}

.hero-logo-inline {
    height: 80px;
    width: auto;
    opacity: 0;
    transform: translateY(30px) scale(0.9);
    animation: logoSlideIn 0.8s ease-out 0.3s forwards;
    filter: brightness(1.1);
}

/* Phase 2: and we're setting the standard since 2024 */
.hero-phase-2 .hero-text-line {
    margin-bottom: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    flex-wrap: wrap;
}

.hero-phase-2 .hero-line-1 .hero-word {
    font-size: 60px;
    font-weight: 300;
    color: #ccc;
}

.hero-phase-2 .hero-line-2 .hero-word {
    font-size: 100px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: -1px;
}

.hero-phase-2 .hero-line-3 {
    margin-top: 20px;
}

.hero-accent {
	color: #265287; 
	background-image: linear-gradient(90deg, #265287 6%, #3768A3 74%); 
	background-clip: text; 
	-webkit-background-clip: text; 
	-webkit-text-fill-color: transparent; 
    font-weight: 500;
    letter-spacing: 0.5px;
}

.hero-tagline-animated {
    font-family: "Lexend Exa", sans-serif;
    font-size: 24px;
    font-weight: 300;
    letter-spacing: 8px;
    text-transform: uppercase;
    color: #666;
    opacity: 0;
    transform: translateY(20px);
    animation: taglineSlideIn 0.6s ease-out 1.2s forwards;
}

/* Staggered word animations */
.hero-phase-2 .hero-word:nth-child(1) { animation-delay: 0s; }
.hero-phase-2 .hero-word:nth-child(2) { animation-delay: 0.1s; }
.hero-phase-2 .hero-word:nth-child(3) { animation-delay: 0.2s; }

.hero-phase-2 .hero-line-2 .hero-word:nth-child(1) { animation-delay: 0.4s; }
.hero-phase-2 .hero-line-2 .hero-word:nth-child(2) { animation-delay: 0.5s; }
.hero-phase-2 .hero-line-2 .hero-word:nth-child(3) { animation-delay: 0.6s; }

/* Keyframe Animations */
@keyframes wordSlideIn {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes logoSlideIn {
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@keyframes taglineSlideIn {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Phase transition animations */
@keyframes phaseOut {
    to {
        opacity: 0;
        transform: translate(-50%, -50%) translateY(-20px) scale(0.95);
    }
}

@keyframes phaseIn {
    from {
        opacity: 0;
        transform: translate(-50%, -50%) translateY(20px) scale(1.05);
    }
    to {
        opacity: 1;
        transform: translate(-50%, -50%) translateY(0) scale(1);
    }
}

/* Responsive Design for Hero */
@media (max-width: 768px) {
    .hero-content {
        padding: 60px 20px 0;
        min-height: 300px;
    }
    
    .hero-animation-container {
        height: 250px;
    }
    
    .hero-word {
        font-size: 48px;
    }
    
    .hero-logo-inline {
        height: 60px;
    }
    
    .hero-phase-2 .hero-line-1 .hero-word {
        font-size: 32px;
    }
    
    .hero-phase-2 .hero-line-2 .hero-word {
        font-size: 44px;
    }
    
    .hero-accent {
        -webkit-text-stroke: 1px #4a7fb8;
    }
    
    .hero-tagline-animated {
        font-size: 18px;
        letter-spacing: 4px;
    }
    
    .hero-phase-1 .hero-text-line {
        gap: 20px;
    }
    
    .hero-phase-2 .hero-text-line {
        gap: 15px;
    }
}

@media (max-width: 480px) {
    .hero-content {
        min-height: 250px;
    }
    
    .hero-animation-container {
        height: 200px;
    }
    
    .hero-word {
        font-size: 36px;
    }
    
    .hero-logo-inline {
        height: 45px;
    }
    
    .hero-phase-2 .hero-line-1 .hero-word {
        font-size: 24px;
    }
    
    .hero-phase-2 .hero-line-2 .hero-word {
        font-size: 32px;
    }
    
    .hero-accent {
        -webkit-text-stroke: 1px #4a7fb8;
        text-stroke: 1px #4a7fb8;
    }
    
    .hero-tagline-animated {
        font-size: 14px;
        letter-spacing: 2px;
    }
    
    .hero-phase-1 .hero-text-line {
        gap: 15px;
        flex-direction: column;
        align-items: center;
    }
    
    .hero-phase-2 .hero-text-line {
        gap: 10px;
    }
}

/* ===========================================
   SERVICES CAROUSEL SECTION
   =========================================== */
.services-fullwidth {
    background: #111111;
    position: relative;
    overflow: hidden;
    margin-top: -50px;
}

/* New service intro styling for individual panels */
.service-intro {
    font-family: "Lexend Exa", sans-serif;
    font-size: 22px;
    font-weight: 300;
    color: #5b7db4;
    text-transform: uppercase;
    letter-spacing: 4px;
    margin-bottom: 20px;
    opacity: 0.8;
    position: relative;
    overflow: hidden;
}

.service-intro::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 300px;
    height: 1px;
    background: linear-gradient(90deg, #4a7fb8, transparent);
    animation: slideInServiceIntro 0.8s ease-out 0.3s forwards;
    transform: translateX(-100%);
}

@keyframes slideInServiceIntro {
    to {
        transform: translateX(0);
    }
}

/* News Section Interactive Styling */
.sidebar-article.clickable {
    cursor: pointer;
    transition: all 0.3s ease;
    border-radius: 8px;
    padding: 20px;
    margin: -10px;
}

.sidebar-article.clickable:hover {
    background: rgba(255, 255, 255, 0.05);
    transform: translateX(5px);
}

.featured-article {
    transition: all 0.4s ease;
}

.article-swapping {
    opacity: 0.7;
    transform: scale(0.98);
}

/* Full Width Carousel */
.fullwidth-carousel {
    position: relative;
    width: 100vw;
    margin-left: calc(-50vw + 50%);
    overflow: hidden;
}

.carousel-viewport {
    overflow: hidden;
    position: relative;
    height: 650px;
}

.carousel-slider {
    display: flex;
    transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
    height: 100%;
}

/* Service Panels */
.service-panel {
    flex: 0 0 100%;
    position: relative;
    display: flex;
    align-items: center;
    background: linear-gradient(135deg, #1a1a1a 0%, #0f0f0f 100%);
}

.panel-content {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    padding: 40px 60px 80px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 100px;
    align-items: center;
}

.panel-text {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    min-height: 500px;
}

/* Service number styling removed as numbers are no longer used */

.service-title {
    font-family: Montserrat, sans-serif;
    font-size: 56px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 30px;
}

.service-description {
    font-family: Roboto, sans-serif;
    font-size: 20px;
    color: #aaa;
    line-height: 1.6;
    margin-bottom: 40px;
}

.service-benefits {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
    margin-bottom: 50px;
    flex: 1;
}

.benefit {
    display: flex;
    align-items: center;
    gap: 15px;
}

.benefit-icon {
    width: 50px;
    height: 50px;
    background: rgba(74, 127, 184, 0.1);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.benefit-icon i {
    font-size: 24px;
    color: #4a7fb8;
}

.benefit-text h4 {
    font-family: Montserrat, sans-serif;
    font-size: 18px;
    font-weight: 600;
    color: #fff;
    margin-bottom: 3px;
}

.benefit-text p {
    font-family: Roboto, sans-serif;
    font-size: 14px;
    color: #666;
    margin: 0;
}

.panel-cta {
    display: inline-block;
    padding: 18px 50px;
    background: linear-gradient(135deg, #4a7fb8, #1f3a5c);
    color: #fff;
    font-family: Montserrat, sans-serif;
    font-size: 18px;
    font-weight: 600;
    text-decoration: none;
    border-radius: 50px;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    margin-top: auto;
    align-self: flex-start;
}

.panel-cta::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, #5a8fc8, #2a4f7d);
    transition: left 0.3s ease;
}

.panel-cta:hover {
    transform: translateY(-2px);
    box-shadow: 0 15px 30px rgba(74, 127, 184, 0.4);
    color: #fff;
}

.panel-cta:hover::before {
    left: 0;
}

.panel-cta span {
    position: relative;
    z-index: 1;
}

/* Visual Side */
.panel-visual {
    position: relative;
    height: 500px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.visual-bg {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 400px;
    height: 400px;
    background: radial-gradient(circle, rgba(74, 127, 184, 0.1) 0%, transparent 70%);
    border-radius: 50%;
}

.visual-main {
    position: relative;
    z-index: 2;
    font-size: 180px;
    color: rgba(74, 127, 184, 0.3);
}

/* Font Awesome icons in panel-visual */
.panel-visual i[class*="fa-"] {
    position: relative;
    z-index: 2;
    font-size: 180px;
    color: rgba(74, 127, 184, 0.3);
}

@keyframes float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-20px); }
}

/* Navigation */
.carousel-navigation {
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    gap: 15px;
    z-index: 10;
    background: rgba(0, 0, 0, 0.8);
    padding: 10px 20px;
    border-radius: 30px;
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.nav-arrow {
    width: 44px;
    height: 44px;
    background: rgba(255, 255, 255, 0.08);
    border: 2px solid rgba(255, 255, 255, 0.15);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
}

.nav-arrow:hover {
    background: rgba(74, 127, 184, 0.4);
    border-color: #4a7fb8;
    transform: scale(1.1);
    box-shadow: 0 4px 15px rgba(74, 127, 184, 0.3);
}

.nav-arrow i {
    font-size: 18px;
    color: rgba(255, 255, 255, 0.9);
}

/* Progress Dots */
.nav-dots {
    display: flex;
    gap: 8px;
}

.carousel-navigation .nav-dot {
    width: 12px !important;
    height: 12px !important;
    min-width: 12px !important;
    min-height: 12px !important;
    max-width: 12px !important;
    max-height: 12px !important;
    background: rgba(255, 255, 255, 0.3) !important;
    border-radius: 50% !important;
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    flex-shrink: 0;
    display: block;
    padding: 0 !important;
}

/* Remove any pseudo-elements that might be causing issues */
.carousel-navigation .nav-dot::before,
.carousel-navigation .nav-dot::after {
    display: none !important;
}

.carousel-navigation .nav-dot:hover {
    background: rgba(255, 255, 255, 0.5) !important;
    border-color: rgba(255, 255, 255, 0.4) !important;
    transform: scale(1.1);
}

.carousel-navigation .nav-dot.active {
    background: #fff !important;
    border-color: #fff !important;
    transform: scale(1.3);
    box-shadow: 0 0 8px rgba(255, 255, 255, 0.5);
}

.carousel-navigation .nav-dot.active:hover {
    background: #fff !important;
    border-color: #fff !important;
}





/* ===========================================
   FOOTER DESIGN 1 - MODERN MINIMALIST
   =========================================== */
.footer-design-1 {
    background: rgb(17, 17, 17);
    color: #fff;
    padding: 80px 20px 40px;
    text-align: center;
}

.footer-container {
    max-width: 1200px;
    margin: 0 auto;
}

.footer-logo-section {
    margin-bottom: 40px;
}

.footer-logo-section img {
    max-width: 250px;
    height: auto;
    margin-bottom: 20px;
}

.footer-company-desc {
    font-family: Roboto, sans-serif;
    font-size: 18px;
    color: #aaa;
    max-width: 600px;
    margin: 0 auto 30px;
    line-height: 1.6;
}

.footer-divider {
    width: 100px;
    height: 2px;
    background: #1f3a5c;
    margin: 40px auto;
}

.footer-contact-row {
    display: flex;
    justify-content: center;
    gap: 60px;
    margin-bottom: 40px;
    flex-wrap: wrap;
}

.contact-item {
    display: flex;
    align-items: center;
    gap: 15px;
}

.contact-item i {
    font-size: 24px;
    color: #1f3a5c;
    width: 30px;
    text-align: center;
}

.contact-text {
    font-family: Roboto, sans-serif;
    font-size: 16px;
    color: #ccc;
    margin: 0;
}

.footer-links-row {
    display: flex;
    justify-content: center;
    gap: 40px;
    margin-bottom: 40px;
    flex-wrap: wrap;
}

.footer-links-row a {
    font-family: Roboto, sans-serif;
    font-size: 16px;
    color: #ccc;
    text-decoration: none;
    transition: color 0.3s ease;
}

.footer-links-row a:hover {
    color: #1f3a5c;
}

.footer-social {
    margin-bottom: 30px;
}

.footer-social h4 {
    font-family: Montserrat, sans-serif;
    font-size: 18px;
    font-weight: 600;
    color: #fff;
    margin-bottom: 20px;
}

.social-icons {
    display: flex;
    justify-content: center;
    gap: 20px;
}

.social-icons a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    background: #1f3a5c;
    border-radius: 50%;
    color: #fff;
    font-size: 20px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.social-icons a:hover {
    background: #2a4f7d;
    transform: translateY(-3px);
    box-shadow: 0 10px 20px rgba(31, 58, 92, 0.4);
}

.footer-copyright {
    padding-top: 30px;
    border-top: 1px solid #333;
    font-family: Roboto, sans-serif;
    font-size: 14px;
    color: #666;
}

.footer-copyright a {
    color: #1f3a5c;
    text-decoration: none;
}

.footer-copyright a:hover {
    color: #2a4f7d;
}

/* Footer Responsive Design */
@media (max-width: 768px) {
    .footer-contact-row {
        flex-direction: column;
        gap: 30px;
        align-items: center;
    }
    
    .footer-links-row {
        flex-direction: column;
        gap: 20px;
        text-align: center;
    }
    
    .footer-company-desc {
        font-size: 16px;
    }
    
    .footer-logo-section img {
        max-width: 200px;
    }
}

@media (max-width: 480px) {
    .footer-design-1 {
        padding: 60px 15px 30px;
    }
    
    .footer-contact-row {
        gap: 20px;
    }
    
    .contact-item {
        flex-direction: column;
        text-align: center;
    }
    
    .social-icons {
        gap: 15px;
    }
    
    .social-icons a {
        width: 45px;
        height: 45px;
        font-size: 18px;
    }
}

/* ===========================================
   ABOUT PAGE - FRESH DESIGN
   =========================================== */
/* Hero Section */
.about-hero-section {
	position: relative;
	height: 60vh;
	min-height: 400px;
	overflow: hidden;
}

.hero-image-container {
	position: absolute;
	inset: 0;
}

.hero-image-container img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.hero-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(to bottom, rgba(0,0,0,0.4), rgba(0,0,0,0.7));
}

.hero-content {
	position: relative;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	text-align: left;
	z-index: 1;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 60px;
	width: 100%;
}

.hero-title {
	font-size: 64px;
	font-weight: 700;
	color: #fff;
	margin-bottom: 20px;
	text-shadow: 2px 2px 4px rgba(0,0,0,0.5);
}

.hero-subtitle {
	font-size: 24px;
	color: #fff;
	font-weight: 300;
	opacity: 0.9;
}

/* Introduction Section */
.about-intro-section {
	padding: 80px 0;
	background: #0a0a0a;
}

.intro-grid {
	display: grid;
	grid-template-columns: 2fr 1fr;
	gap: 60px;
	align-items: center;
}

.intro-main h2 {
	font-size: 36px;
	margin-bottom: 30px;
	color: #fff;
	text-align: left;
}

.intro-main p {
	font-size: 18px;
	line-height: 1.8;
	color: #ccc;
	margin-bottom: 20px;
	text-align: left;
}

.intro-stats {
	display: flex;
	flex-direction: column;
	gap: 30px;
}

.stat-item {
	text-align: center;
	padding: 20px;
	background: rgba(255, 255, 255, 0.05);
	border-radius: 10px;
	border: 1px solid rgba(255, 255, 255, 0.1);
}

.stat-value {
	display: block;
	font-size: 42px;
	font-weight: 700;
	color: #5b7db4;
	margin-bottom: 5px;
}

.stat-label {
	font-size: 14px;
	color: #aaa;
	text-transform: uppercase;
	letter-spacing: 1px;
}

/* Services Overview */
.services-overview {
	padding: 80px 0;
	background: #000;
}

.section-heading {
	font-size: 36px;
	text-align: center;
	margin-bottom: 50px;
	color: #fff;
}

.services-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	gap: 30px;
}

.service-card {
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 15px;
	padding: 40px 30px;
	text-align: center;
	transition: all 0.3s ease;
}

.service-card:hover {
	background: rgba(255, 255, 255, 0.05);
	transform: translateY(-5px);
	border-color: #5b7db4;
}

.service-icon {
	width: 70px;
	height: 70px;
	background: linear-gradient(135deg, #5b7db4, #4a6fa5);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 25px;
	font-size: 30px;
	color: #fff;
}

.service-card h3 {
	font-size: 22px;
	margin-bottom: 15px;
	color: #fff;
}

.service-card p {
	color: #ccc;
	line-height: 1.6;
}

/* Values Section */
.values-clean {
	padding: 80px 0;
	background: #0a0a0a;
}

.section-subheading {
	text-align: center;
	font-size: 18px;
	color: #aaa;
	margin-bottom: 50px;
}

.values-list {
	max-width: 800px;
	margin: 0 auto;
}

.value-item {
	display: flex;
	align-items: flex-start;
	gap: 30px;
	margin-bottom: 40px;
	padding: 30px;
	background: rgba(255, 255, 255, 0.03);
	border-radius: 10px;
	transition: all 0.3s ease;
}

.value-item:hover {
	background: rgba(255, 255, 255, 0.05);
	transform: translateX(10px);
}

.value-number {
	font-size: 48px;
	font-weight: 700;
	color: #5b7db4;
	opacity: 0.3;
	line-height: 1;
}

.value-content h3 {
	font-size: 24px;
	margin-bottom: 10px;
	color: #fff;
}

.value-content p {
	color: #ccc;
	line-height: 1.6;
}

/* Why Choose Section */
.why-choose-section {
	padding: 80px 0;
	background: #000;
}

.why-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 60px;
	align-items: center;
}

.why-content h2 {
	font-size: 36px;
	margin-bottom: 30px;
	color: #fff;
}

.why-list {
	list-style: none;
}

.why-list li {
	display: flex;
	align-items: flex-start;
	gap: 15px;
	margin-bottom: 20px;
	padding: 15px;
	background: rgba(255, 255, 255, 0.03);
	border-radius: 8px;
	transition: all 0.3s ease;
}

.why-list li:hover {
	background: rgba(255, 255, 255, 0.05);
	transform: translateX(5px);
}

.why-list i {
	color: #5b7db4;
	font-size: 20px;
	flex-shrink: 0;
	margin-top: 2px;
}

.why-list span {
	color: #ccc;
	line-height: 1.6;
}

.why-image {
	text-align: center;
}

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

/* Simple CTA */
.cta-simple {
	padding: 100px 0;
	background: linear-gradient(135deg, #0a0a0a 0%, #111 100%);
	text-align: center;
}

.cta-simple h2 {
	font-size: 42px;
	margin-bottom: 20px;
	color: #fff;
}

.cta-simple p {
	font-size: 20px;
	color: #aaa;
	margin-bottom: 40px;
}

.cta-buttons {
	display: flex;
	justify-content: center;
	gap: 30px;
	flex-wrap: wrap;
}

.btn-primary,
.btn-secondary {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 18px 40px;
	border-radius: 50px;
	text-decoration: none;
	font-size: 18px;
	font-weight: 600;
	transition: all 0.3s ease;
}

.btn-primary {
	background: linear-gradient(135deg, #5b7db4, #4a6fa5);
	color: #fff;
	box-shadow: 0 10px 30px rgba(91, 125, 180, 0.3);
}

.btn-primary:hover {
	transform: translateY(-3px);
	box-shadow: 0 15px 40px rgba(91, 125, 180, 0.4);
}

.btn-secondary {
	background: transparent;
	color: #fff;
	border: 2px solid #5b7db4;
}

.btn-secondary:hover {
	background: rgba(91, 125, 180, 0.1);
	transform: translateY(-3px);
}

@media (max-width: 991px) {
	.intro-grid {
		grid-template-columns: 1fr;
	}
	
	.intro-stats {
		flex-direction: row;
		justify-content: space-around;
	}
	
	.why-grid {
		grid-template-columns: 1fr;
	}
	
	.why-image {
		order: -1;
	}
}

@media (max-width: 768px) {
	.hero-title {
		font-size: 48px;
	}
	
	.hero-subtitle {
		font-size: 20px;
	}
	
	.intro-stats {
		flex-direction: column;
	}
	
	.services-grid {
		grid-template-columns: 1fr;
	}
	
	.value-item {
		flex-direction: column;
		text-align: center;
	}
	
	.cta-buttons {
		flex-direction: column;
		align-items: center;
	}
}



/* ===========================================
   FAQ SECTION
   =========================================== */
.faq-section {
	padding-right: 40px;
}

.faq-title {
	margin-bottom: 30px;
}

.faq-accordion {
	display: flex;
	flex-direction: column;
	gap: 15px;
}

.faq-item {
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 10px;
	overflow: hidden;
	transition: all 0.3s ease;
}

.faq-item.active {
	background: rgba(255, 255, 255, 0.08);
	border-color: #5b7db4;
}

.faq-question {
	width: 100%;
	padding: 20px 25px;
	background: none;
	border: none;
	color: #fff;
	font-family: Roboto, sans-serif;
	font-size: 17px;
	font-weight: 500;
	text-align: left;
	cursor: pointer;
	display: flex;
	justify-content: space-between;
	align-items: center;
	transition: all 0.3s ease;
}

.faq-question:hover {
	color: #5b7db4;
}

.faq-question i {
	font-size: 14px;
	transition: transform 0.3s ease;
}

.faq-item.active .faq-question i {
	transform: rotate(180deg);
}

.faq-answer {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.3s ease;
}

.faq-item.active .faq-answer {
	max-height: 300px;
}

.faq-answer p {
	padding: 0 25px 20px;
	color: #ccc;
	font-size: 15px;
	line-height: 1.6;
	margin: 0;
}

.contact-info-box {
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 12px;
	padding: 30px;
	text-align: center;
}

.contact-info-box h4 {
	color: #fff;
	font-family: Montserrat, sans-serif;
	font-size: 20px;
	font-weight: 600;
	margin-bottom: 15px;
}

.contact-info-box p {
	color: #ccc;
	font-size: 15px;
}

.contact-detail {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	margin-bottom: 15px;
	color: #fff;
	font-size: 16px;
}

.contact-detail i {
	color: #5b7db4;
}

@media screen and (max-width: 991px) {
	.faq-section {
		padding-right: 0;
		margin-bottom: 40px;
	}
	
	.contact-form-wrapper {
		margin-top: 0;
	}
}

/* ===========================================
   FOOTER DESIGN 1 (GLOBAL)
   =========================================== */
.footer-design-1 {
	background: rgb(17, 17, 17);
	color: #fff;
	padding: 80px 20px 40px;
	text-align: center;
}

.footer-container {
	max-width: 1200px;
	margin: 0 auto;
}

.footer-logo-section {
	margin-bottom: 40px;
}

.footer-logo-section img {
	max-width: 250px;
	height: auto;
	margin-bottom: 20px;
}

.footer-company-desc {
	font-family: Roboto, sans-serif;
	font-size: 18px;
	color: #aaa;
	max-width: 600px;
	margin: 0 auto 30px;
	line-height: 1.6;
}

.footer-divider {
	width: 100px;
	height: 2px;
	background: #1f3a5c;
	margin: 40px auto;
}

.footer-contact-row {
	display: flex;
	justify-content: center;
	gap: 60px;
	margin-bottom: 40px;
	flex-wrap: wrap;
}

.contact-item {
	display: flex;
	align-items: center;
	gap: 15px;
}

.contact-item i {
	font-size: 24px;
	color: #1f3a5c;
	width: 30px;
	text-align: center;
}

.contact-text {
	font-family: Roboto, sans-serif;
	font-size: 16px;
	color: #ccc;
	margin: 0;
}

.footer-links-row {
	display: flex;
	justify-content: center;
	gap: 40px;
	margin-bottom: 40px;
	flex-wrap: wrap;
}

.footer-links-row a {
	font-family: Roboto, sans-serif;
	font-size: 16px;
	color: #ccc;
	text-decoration: none;
	transition: color 0.3s ease;
}

.footer-links-row a:hover {
	color: #1f3a5c;
}

.footer-social {
	margin-bottom: 30px;
}

.footer-social h4 {
	font-family: Montserrat, sans-serif;
	font-size: 18px;
	font-weight: 600;
	color: #fff;
	margin-bottom: 20px;
}

.social-icons {
	display: flex;
	justify-content: center;
	gap: 20px;
}

.social-icons a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 50px;
	height: 50px;
	background: #1f3a5c;
	border-radius: 50%;
	color: #fff;
	font-size: 20px;
	text-decoration: none;
	transition: all 0.3s ease;
}

.social-icons a:hover {
	background: #2a4f7d;
	transform: translateY(-3px);
	box-shadow: 0 10px 20px rgba(31, 58, 92, 0.4);
}

.footer-copyright {
	padding-top: 30px;
	border-top: 1px solid #333;
	font-family: Roboto, sans-serif;
	font-size: 14px;
	color: #666;
}

.footer-copyright a {
	color: #1f3a5c;
	text-decoration: none;
}

.footer-copyright a:hover {
	color: #2a4f7d;
}

@media (max-width: 768px) {
	.footer-contact-row {
		flex-direction: column;
		gap: 30px;
		align-items: center;
	}

	.footer-links-row {
		flex-direction: column;
		gap: 20px;
		text-align: center;
	}

	.footer-company-desc {
		font-size: 16px;
	}

	.footer-logo-section img {
		max-width: 200px;
	}
}

@media (max-width: 480px) {
	.footer-design-1 {
		padding: 60px 15px 30px;
	}

	.footer-contact-row {
		gap: 20px;
	}

	.contact-item {
		flex-direction: column;
		text-align: center;
	}

	.social-icons {
		gap: 15px;
	}

	.social-icons a {
		width: 45px;
		height: 45px;
		font-size: 18px;
	}
}

/* ===========================================
   NEWS MAGAZINE SECTION
   =========================================== */
.news-magazine {
    background: #0a0a0a;
    padding: 100px 20px;
}

.magazine-header {
    text-align: center;
    margin-bottom: 80px;
}

.magazine-header h2 {
    font-family: Montserrat, sans-serif;
    font-size: 56px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 20px;
}

.magazine-layout {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 40px;
    max-width: 1400px;
    margin: 0 auto;
}

/* Featured Article */
.featured-article {
    background: #111;
    border-radius: 20px;
    overflow: hidden;
    position: relative;
    min-height: 600px;
    display: flex;
    align-items: flex-end;
    background: linear-gradient(135deg, #1f3a5c 0%, #111111 100%);
}

.featured-content {
    padding: 60px;
    position: relative;
    z-index: 2;
}

.article-category {
    display: inline-block;
    background: #4a7fb8;
    color: #fff;
    padding: 8px 20px;
    border-radius: 20px;
    font-family: Montserrat, sans-serif;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 20px;
}

.featured-content h3 {
    font-family: Montserrat, sans-serif;
    font-size: 48px;
    font-weight: 700;
    color: #fff;
    line-height: 1.1;
    margin-bottom: 20px;
}

.featured-content p {
    font-family: Roboto, sans-serif;
    font-size: 18px;
    color: #ccc;
    line-height: 1.6;
    margin-bottom: 30px;
}

.article-meta {
    display: flex;
    gap: 30px;
    font-family: Roboto, sans-serif;
    font-size: 14px;
    color: #666;
}

.article-meta span {
    display: flex;
    align-items: center;
    gap: 8px;
}

.article-meta i {
    color: #4a7fb8;
}

/* Sidebar Articles */
.sidebar-articles {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.sidebar-article {
    background: rgba(255, 255, 255, 0.03);
    border-radius: 15px;
    padding: 30px;
    transition: all 0.3s ease;
    cursor: pointer;
    border: 1px solid transparent;
}

.sidebar-article:hover {
    background: rgba(255, 255, 255, 0.05);
    border-color: rgba(74, 127, 184, 0.3);
    transform: translateX(-5px);
}

.sidebar-date {
    font-family: Montserrat, sans-serif;
    font-size: 12px;
    font-weight: 600;
    color: #4a7fb8;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 10px;
}

.sidebar-article h4 {
    font-family: Montserrat, sans-serif;
    font-size: 20px;
    font-weight: 700;
    color: #fff;
    line-height: 1.3;
    margin-bottom: 10px;
}

.sidebar-article p {
    font-family: Roboto, sans-serif;
    font-size: 14px;
    color: #666;
    line-height: 1.5;
    margin: 0;
}

/* Responsive Updates */
@media (max-width: 1200px) {
    .title-line-1,
    .title-line-3 {
        font-size: 90px;
    }
    
    .title-line-2 {
        font-size: 40px;
    }
    
    .hero-bg-text {
        font-size: 250px;
    }
    
    .panel-content {
        grid-template-columns: 1fr;
        gap: 60px;
        text-align: center;
    }
    
    .panel-visual {
        height: 300px;
    }
    
    .visual-main {
        font-size: 120px;
    }
    
    .panel-visual i[class*="fa-"] {
        font-size: 120px;
    }
    
    .service-benefits {
        grid-template-columns: 1fr;
        max-width: 400px;
        margin: 0 auto 40px;
    }
    
    .magazine-layout {
        grid-template-columns: 1fr;
        gap: 30px;
    }
    
    .sidebar-articles {
        grid-template-columns: repeat(2, 1fr);
        display: grid;
    }
}

@media (max-width: 768px) {
    #section-1 {
        height: 80vh;
    }
    
    .hero-content {
        padding: 40px 20px 0;
    }
    
    .hero-logo {
        width: 160px;
        margin-bottom: 40px;
    }
    
    .title-line-1,
    .title-line-3 {
        font-size: 60px;
        letter-spacing: -2px;
    }
    
    .title-line-2 {
        font-size: 30px;
        letter-spacing: 10px;
        margin: 15px 0;
    }
    
    .hero-tagline {
        font-size: 16px;
        letter-spacing: 5px;
    }
    
    .hero-bg-text {
        font-size: 150px;
    }
    
    /* Old services-intro styling removed */
    
    /* Mobile service-number styling removed as numbers are no longer used */
    
    .service-title {
        font-size: 36px;
    }
    
    .service-description {
        font-size: 16px;
    }
    
    .carousel-viewport {
        height: auto;
        min-height: 650px;
    }
    
    .carousel-navigation {
        position: relative;
        bottom: auto;
        margin-top: 30px;
        transform: none;
        left: 50%;
        display: inline-flex;
        justify-content: center;
        width: auto;
        transform: translateX(-50%);
    }
    
    .magazine-header h2 {
        font-size: 36px;
    }
    
    .featured-content {
        padding: 40px 30px;
    }
    
    .featured-content h3 {
        font-size: 32px;
    }
    
    .sidebar-articles {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .hero-content {
        padding: 30px 20px 0;
    }
    .hero-logo {
        width: 140px;
        margin-bottom: 30px;
    }
    
    .title-line-1,
    .title-line-3 {
        font-size: 45px;
    }
    
    .title-line-2 {
        font-size: 25px;
        letter-spacing: 5px;
    }
    
    .hero-tagline {
        font-size: 14px;
        letter-spacing: 3px;
    }
    
    /* Mobile styling for new service-intro */
    .service-intro {
        font-size: 18px;
        letter-spacing: 3px;
        margin-bottom: 15px;
		margin-top: 25px;
    }
    
    .service-title {
        font-size: 28px;
    }
    
    .panel-content {
        padding: 0 20px;
    }
    
    .carousel-navigation {
        padding: 8px 15px;
        gap: 12px;
    }
    
    .nav-arrow {
        width: 38px;
        height: 38px;
    }
    
    .nav-arrow i {
        font-size: 16px;
    }
    
    .magazine-header h2 {
        font-size: 28px;
    }
    
    .featured-content h3 {
        font-size: 24px;
    }
    
    .featured-content p {
        font-size: 16px;
    }
}

.index-hero-image-container {
	position: absolute;
	inset: 0;
}

.index-hero-image-container img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	opacity: 0.3;
}