@import url("https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap");



*{
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  overflow-x: hidden; 
  font-family: "Inter", sans-serif;
  background-color: #f9f9f9;
}
:root {
  --primary: #0b0046;
  --secondary: red;

  --light: #f8f8f8;
  --dark: #252525;
}

h1,
h2,
.h1,
.h2,
.fw-bold {
  font-weight: 600 !important;
}

h3,
h4,
.h3,
.h4,
.fw-medium {
  font-weight: 500 !important;
}

h5,
h6,
.h5,
.h6,
.fw-normal {
  font-weight: 400 !important;
}

a {
  text-decoration: none;
}

.back-to-top {
  position: fixed;
  display: none;
  right: 30px;
  bottom: 30px;
  z-index: 99;
}

.txt-primary {
  color: var(--primary);
}

/*** Spinner ***/
#spinner {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.5s ease-out, visibility 0s linear 0.5s;
  z-index: 99999;
}

#spinner.show {
  transition: opacity 0.5s ease-out, visibility 0s linear 0s;
  visibility: visible;
  opacity: 1;
}

/*** Button ***/
.btn {
  font-weight: 500;
  transition: 0.5s;
}

.btn.btn-primary,
.btn.btn-secondary {
  color: #ffffff;
}

.btn-square {
  width: 38px;
  height: 38px;
}

.btn-sm-square {
  width: 32px;
  height: 32px;
}

.btn-lg-square {
  width: 48px;
  height: 48px;
}

.btn-square,
.btn-sm-square,
.btn-lg-square {
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: normal;
}

.btn-outline-body {
  color: var(--primary);
  border-color: var(--secondary);
}

.btn-outline-body:hover {
  color: #ffffff;
  background: var(--secondary);
  border-color: var(--primary);
}

.btn-inline-body {
  color: #ffffff;
  background: var(--primary);
}

.btn-inline-body:hover {
  color: var(--light);
  background-color: var(--secondary);
}

/*** Navbar ***/
.navbar .dropdown-toggle::after {
  border: none;
  content: "\f107";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  vertical-align: middle;
  margin-left: 8px;
}

.navbar .navbar-nav .nav-link {
  margin-right: 30px;
  padding: 30px 0;
  color: var(--dark);
  font-weight: 500;
  text-transform: uppercase;
  outline: none;
}

.navbar .navbar-nav .nav-link:hover,
.navbar .navbar-nav .nav-link.active {
  color: var(--secondary);
}

.navbar.sticky-top {
 /* top: -100px;
  transition: 0.5s;*/

}

@media (max-width: 991.98px) {
  .navbar .navbar-nav .nav-link {
    margin-right: 0;
    padding: 10px 0;
  }

  .navbar .navbar-nav {
    border-top: 1px solid #eeeeee;
  }
}

@media (min-width: 992px) {
  .navbar .nav-item .dropdown-menu {
    display: block;
    visibility: hidden;
    top: 100%;
    transform: rotateX(-75deg);
    transform-origin: 0% 0%;
    transition: 0.5s;
    opacity: 0;
  }

  .navbar .nav-item:hover .dropdown-menu {
    transform: rotateX(0deg);
    visibility: visible;
    transition: 0.5s;
    opacity: 1;
  }
}

/*** Header ***/
.owl-carousel-inner {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  background: rgba(0, 0, 0, 0.5);
}
.header-carousel .owl-carousel-item {
  height: 100vh;
  width:100vw;
  display: flex;
  justify-content: center; 
  align-items: center;
}
@media (max-width: 768px) {
  .header-carousel .owl-carousel-item {
    position: relative;
    min-height: 500px;
  }

  .header-carousel .owl-carousel-item img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .header-carousel .owl-carousel-item p {
    font-size: 16px !important;
  }
}

.header-carousel .owl-dots {
  position: absolute;
  width: 60px;
  height: 100%;
  top: 0;
  right: 30px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.header-carousel .owl-dots .owl-dot {
  position: relative;
  width: 45px;
  height: 45px;
  margin: 5px 0;
  background: var(--dark);
  transition: 0.5s;
}

.header-carousel .owl-dots .owl-dot.active {
  width: 60px;
  height: 60px;
}

.header-carousel .owl-dots .owl-dot img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  padding: 2px;
  transition: 0.5s;
  opacity: 0.3;
}

.header-carousel .owl-dots .owl-dot.active img {
  opacity: 1;
}

.colours-carousel .owl-carousel .item{
  height:107.5px;
    width:107.5px;
}

.page-header {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),
    url(../img/carousel-1.jpg) center center no-repeat;
  background-size: cover;
}

.services-page-header {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),
    url(../assets/img/services/Banner_Image.jpg) center center no-repeat;
  background-size: cover;
}

.doors-page-header {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),
    url(../assets/img/Door.jpg) center center no-repeat;
  background-size: cover;
}

.breadcrumb-item + .breadcrumb-item::before {
  color: var(--light);
}

/*** Section Title ***/
.section-title h6 {
  color: var(--primary);
  font-weight: 600;
  letter-spacing: 5px;
  text-transform: uppercase;
}
.section-title h2 {
  font-size: 40px;
}

/*** Facts ***/
.fact-item {
  cursor: pointer;
  border-radius: 10px;
}
.fact-item .fact-icon {
  width: 120px;
  height: 120px;
  margin-top: -60px;
  margin-bottom: 1.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #ffffff;
  color: var(--primary);
  border: 1px solid var(--primary);
  border-radius: 120px;
  transition: 0.5s;
}

.fact-item:hover .fact-icon {
  background: var(--primary);
}

.fact-item .fact-icon i {
  color: var(--primary);
  transition: 0.5;
}

.fact-item:hover .fact-icon i {
  color: #ffffff;
}

/*** About & Feature ***/

.about-img,
.feature-img {
  position: relative;
  height: 100%;
  min-height: 400px;
}

.about-img img,
.feature-img img {
  position: absolute;
  width: 60%;
  height: 80%;
  object-fit: cover;
  border-radius: 15px;
}

.about-img img:last-child,
.feature-img img:last-child {
  margin: 20% 0 0 40%;
}

.about-img::before,
.feature-img::before {
  position: absolute;
  content: "";
  width: 60%;
  height: 80%;
  top: 10%;
  left: 20%;
  z-index: -1;
}





/*** Footer ***/
.footer-content a {
  text-decoration: none;
}
.footer .btn-outline-body{
  padding: 18px;
}
.footer .btn.btn-link {
  display: block;
  margin-bottom: 5px;
  padding: 0;
  text-align: left;
  font-weight: normal;
  text-transform: capitalize;
  transition: 0.3s;
}

.footer .btn.btn-link::before {
  position: relative;
  content: "\f105";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  color: var(--secondary);
  margin-right: 10px;
}

.footer .btn.btn-link:hover {
  color: var(--secondary);
  letter-spacing: 1px;
  box-shadow: none;
}

.footer .form-control {
  border-color: #777777;
}

.footer .copyright {
  padding: 25px 0;
  font-size: 15px;
  border-top: 1px solid rgba(256, 256, 256, 0.1);
}

.footer .copyright a {
  color: var(--light);
}

.footer .copyright a:hover {
  color: var(--primary);
}

/*** Products ***/
.project .nav .nav-link {
  background: var(--light);
  color: var(--primary);
  transition: 0.5s;
  font-size: 24px;
}

.project .nav .nav-link.active {
  background: var(--primary);
  color: var(--light)
}

.project .nav .nav-link.active h3 {
  color: #ffffff !important;
}


@media all and (min-width: 992px) {
	.navbar .nav-item .dropdown-menu{ display: none; }
	.navbar .nav-item:hover .nav-link{   }
	.navbar .nav-item:hover>.dropdown-menu{ display: block; }
	.navbar .nav-item .dropdown-menu{ margin-top:0; }
}
    
@media all and (min-width: 992px) {
	.dropdown-menu li{ position: relative; 	}
	.nav-item .submenu{ 
		display: none;
		position: absolute;
		left:100%; top:-7px;
	}
	.nav-item .submenu-left{ 
		right:100%; left:auto;
	}
	.dropdown-menu > li:hover{ background-color: #f1f1f1 }
	.dropdown-menu > li:hover > .submenu{ display: block; }
}

  .card-body>a,.custom-atag{

    color:#0B0046;
font-family: "Euclid semibold", Sans-serif;
font-size: 20px;
font-weight: 600;
text-decoration: none;
}
.card-body>p{
    font-family: "Euclid regular", Sans-serif;
font-weight: 400;
text-decoration: none;
}

.card{
    margin:0.5em;
}
.image-wrapper{
    display: flex;
    align-items: center;
    height:10em;
}
.image-wrapper img{
    max-width: 100%;
    max-height:100%;
}
.sub-header{
    /*animation-name: slideUp;
    animation-duration: 0.5s;*/
   
    display: block;
}

.unmatch-service{
  border-radius:6px;
  background-color:#f2efe6;
  display: flex;
  flex-direction: column; 
  justify-content: center;
  align-items: center; 
  height: 100%;
  text-align: center;
}
  
  .unmatch-service .inner-box{
  display:flex}
  
  .unmatch-service .left{
  text-align:center;
  width:100%;
  padding-right:60px}
  
  .unmatch-service .left ul{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  margin:30px 0 25px}
  
  .unmatch-service .left ul li{
  width:14.28%;
  margin:0;
  text-align:center;
  position:relative;
  display:flex;
  flex-wrap:wrap}
  
  .unmatch-service .left ul li .image{
  height:140px;
  width:140px;
  background-position:center center;
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0 auto;
  background-repeat:no-repeat;
  background-size:100%}
  
  .unmatch-service .left ul li .title{
  font-size:18px;
  font-family:'avenirnextmediumCn';
  color:#000;
  width:100%;
  line-height:1.2;
  margin:0 0 10px}
  
  .unmatch-service .left ul li:nth-child(2n+1) .image{
  order:2}
  
  .unmatch-service .left ul li:nth-child(2n+1) .title{
  order:1;
  margin-bottom:0}
  
  .unmatch-service .left ul li:nth-child(2n){
  bottom:-160px}
  
  .unmatch-service .right{
  width:32%;
  margin:35px 0 0}

 
.unmatch-service .left ul li .image {
  position: relative;          
  width: 140px;                
  height: 140px;              
  border-radius: 50%;          
  margin: 0 auto;              
  display: flex;
  justify-content: center;
  align-items: center;
}


.unmatch-service .left ul li .image > img {
  width: 100%;                 
  height: 100%;                
  object-fit: cover;          
}

.unmatch-service .left ul li .image .icon {
  position: absolute;          
  top: 50%;                    
  left: 50%;                    
  transform: translate(-50%, -50%); 
}

@media screen and (max-width: 768px) {
  /* For tablet screens */
  .unmatch-service .left ul li .image {
      display: none;      
  }

  .unmatch-service .left ul li .image .icon {
      width: 30%;               
      height: 30%;               
  }

  .unmatch-service .left ul li .title {
      font-size: 12px;           
  }
}

@media screen and (max-width: 480px) {
  /* For mobile screens */
  .unmatch-service .left ul li .image {
     display: none;    
  }

  .unmatch-service .left ul li .image .icon {
      width: 25%;                
      height: 25%;               
  }

  .unmatch-service .left ul li .title {
      font-size: 10px;           
  }
}
.page-wrapper {
  height: 100vh;
  width:100vw;
  overflow: hidden;
}
section{
  position: relative;
  height: 100%;
  max-width: 100vw;
  scroll-snap-align: start;
  overflow: auto;
  padding-top:80px;
}
.main-container{
  scroll-snap-type: y mandatory;
  overflow-y: scroll;
  height: 100%;
  width: 100%;
}

section::-webkit-scrollbar {
  width:3px;
}
/* Track */
section::-webkit-scrollbar-track {
   -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3); 
   -webkit-border-radius: 10px;
   border-radius: 3px;
}

/* Handle */
section::-webkit-scrollbar-thumb {
   -webkit-border-radius: 10px;
   border-radius: 10px;
   background-color:gray;
   
}
@property --angle{
  syntax:"<angle>";
  initial-value: 0deg;
  inherits: false;
}
.products-image::after,.products-image::before{
  box-sizing: unset;
  content:'';
  position: absolute;
  height: 100%;
  width: 100%;
  background-image:conic-gradient(from var(--angle),transparent 70%,var(--primary));
  top:50%;
  left:50%;
  translate:-50% -50%;
  z-index: -1;
  padding: 3px;
  animation: spin 1s linear forwards, removePadding 1s forwards;
  animation-delay: 0.2s, 1.2s;
}

.card::before{
  filter:blur(1.5rem);
  opacity: 0.5;
}

@keyframes spin{
  from{
    --angle:0deg;
  }
  to{
    --angle:360deg;
  }
}

@keyframes removePadding {
  to {
    padding: 0;
    height: 0px;
    width: 0px;
  }
}