:root{
  --theme: #ED4D20;
  --black: #000000;
}
/* ============================= */
/* Navbar overall */
/* ============================= */

.navbar {
  background-color: #ffffff;
  padding-top: 12px;
  padding-bottom: 12px;
}

/* ============================= */
/* Logo */
/* ============================= */

.navbar-brand img {
  height: 60px;
  width: auto;
}

/* ============================= */
/* Phone text */
/* ============================= */

.phone-text {
  color: var(--theme);
  font-weight: 600;
  font-size: 18px;
  display: flex;
  align-items: center;
  gap: 8px;
}

/* ============================= */
/* Desktop nav links */
/* ============================= */

.collapse .navbar-nav {
  gap: 28px;
}

.collapse .nav-link {
  font-size: 18px;
  font-weight: 500;
  color: #333 !important;
  position: relative;
  padding: 6px 0;
  transition: color 0.3s ease;
}

/* Hover color */
.collapse .nav-link:hover {
  color: var(--theme) !important;
}

/* Active color */
.collapse .nav-link.active {
  color: var(--theme) !important;
}


/* ============================= */
/* Centered short underline animation */
/* ============================= */

.collapse .nav-link::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -4px;
  width: 0;
  height: 2px;
  background-color: var(--theme);

  transform: translateX(-50%);
  transition: width 0.3s ease;
}

/* Hover underline */
.collapse .nav-link:hover::after {
  width: 80%;
}

/* Active underline */
.collapse .nav-link.active::after {
  width: 80%;
}


/* ============================= */
/* Offcanvas mobile menu */
/* ============================= */

.offcanvas-body .nav-link {
  font-size: 18px;
  font-weight: 500;
  color: #333 !important;
  padding: 10px 0;
  position: relative;
}

.offcanvas-body .nav-link:hover {
  color: var(--theme) !important;
}

/* mobile underline */
.offcanvas-body .nav-link::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 4px;

  width: 0;
  height: 2px;
  background-color: var(--theme);

  transition: width 0.3s ease;
}

.offcanvas-body .nav-link:hover::after {
  width: 28px;
}

.offcanvas-body .nav-link.active::after {
  width: 28px;
}


/* ============================= */
/* Navbar toggle button */
/* ============================= */

.navbar-toggler {
  border: none;
  outline: none;
}

.navbar-toggler:focus {
  box-shadow: none;
}


/* ============================= */
/* Responsive adjustments */
/* ============================= */

@media (max-width: 991px) {
  .phone-text {
    font-size: 16px;
  }
}
.hero-section{
    min-height: 400px;
}
.hero-section .bg-overlay{
    pointer-events: none;
}

.banner-section {
  min-height: 90vh;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.banner-title {
  min-height: 90vh;
}

/* Fix bold issue */
.banner-title h3 {
  font-weight: 900;      /* extra bold */
  letter-spacing: 1px;
  line-height: 1.1;
  margin-bottom: 0;
}

/* optional overlay like original */
/*.banner-section::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
   background: rgba(0,0,0,0.45); 
}*/

.banner-section .container-fluid {
  position: relative;
  z-index: 2;
}
/* Subtitle text */
.banner-subtitle {
  font-family: 'Merriweather', serif;
  font-size: 20px;
  font-weight: 500;
  color: #ffffff;
  letter-spacing: 1px;
  margin-top: 15px;
  margin-bottom: 25px;
  text-transform: uppercase;
}
.banner-btn {
  background-color: var(--theme);
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  padding: 14px 36px;
  border: none;
  border-radius: 3px;
  text-decoration: none;
  display: inline-block;
  transition: all 0.3s ease;
}

/* hover effect */
.banner-btn:hover {
  background-color: #e63f00;
  color: #fff;
}
.fs-merri{
  font-family: 'Merriweather', serif;
}
.fs-fira{
  font-family: 'Fira Sans', sans-serif;
}
/* fixed navbar style */
.navbar-fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999;
  
  animation: slideDown 0.3s ease;
}

/* smooth slide animation */
@keyframes slideDown {
  from {
    transform: translateY(-100%);
  }
  to {
    transform: translateY(0);
  }
}
.text-black{
  color: var(--black) !important;
}
.bg-black{
  background-color: var(--black) !important;
}
.text-theme{
  color: var(--theme) !important;
}
.bg-theme{
  background-color: var(--theme) !important;
}
@media (max-width: 991px) {

  .offcanvas.offcanvas-end {
    width: 100% !important;
  }

}
/* Navbar */
.navbar-fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1055; /* lower than offcanvas */
}

/* Offcanvas should be above navbar */
.offcanvas {
  z-index: 1060 !important;
}

/* Offcanvas backdrop */
.offcanvas-backdrop {
  z-index: 1059 !important;
}
.text-copy{
  color: #ffffff80;
}
.breadcrumb-section {
  min-height: 400px;     /* reduce from 350px or 90vh */
  height: 400px;         /* fixed height like original */
  display: flex;
  align-items: center;
  position: relative;
  background-size:cover;
  background-position: center;
  background-repeat: no-repeat;
}


/* content above overlay */
.breadcrumb-section .container {
  position: relative;
  z-index: 2;
}

/* title */
.breadcrumb-title {
  font-size: 55px;
  font-weight: 800;
  font-family: 'Poppins', sans-serif;
  margin-bottom: 10px;
}

/* subtitle */
.breadcrumb-subtitle {
  font-size: 18px;
  font-family: 'Merriweather', serif;
  max-width: 500px;
  line-height: 1.6;
}

.footer-section-title{
  font-family: 'Fira Sans', sans-serif;
  font-weight: 600;
  margin-bottom: 15px;
}

.footer-section-text{
  line-height: 1.8;
  margin-bottom: 15px;
  font-family: 'Merriweather', serif;
}

.custom-list{
  padding-left: 20px;
}

.custom-list li{
  margin-bottom: 8px;
}

/* orange bullets like first image */
.custom-list li::marker{
  color: #ED4D20;
}
.btn-custom-outline{
  border: 2px solid black;
  border-radius: 0px;
}
.btn-custom-outline:hover{
  border: 2px solid black;
  color: #1a1919;
}
#overlay {
  position: fixed;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  z-index: 9999;
  background: url(../images/Loading.gif) 50% 50% no-repeat rgb(249, 249, 249);
  opacity: .9;
}