.footer-social{
    width:36px;
}
body {
   padding: 0;
   margin: 0;
   /* font-family: "Montserrat", serif; */
   font-family: "Oswald", serif;
   font-size: 16px;
   overflow-x: hidden;
}   
* {
   box-sizing: border-box;
}
.km-title-2 {
   font-size: 32px;
   line-height: 1.5;
   font-weight: 700;
   color: rgba(50, 63, 73, 1);
   text-transform: uppercase;
}
.km-title-3 {
   font-size: 24px;
   line-height: 1.5;
   font-weight: 700;
}
p {
   font-family: "Montserrat", serif;
}
 a, a:hover, a:focus {
   transition: 0.4s;
   text-decoration: none;
}   
.km-header-main {

}
.km-header-main .km-header-wrap {
   position: relative;
}
.km-header-main .km-header-wrap .km-header-content {
   position: absolute;
   display: flex;
   justify-content: space-between;
   width: 100%;
   max-width: 1320px;
   top: 25px;
   left: 0;
   background: #3F3F3C;
   border-radius: 60px;
   max-height: 80px;
}
.km-header-main .km-header-logo {
   padding: 5px 30px 5px 60px;
   margin-right: 10%;
   display: flex;
   align-items: center;
}
.km-header-main .km-header-logo a {
   
}
.km-header-main .km-header-logo a img {
   
}
.km-header-main .km-header-nav {
   margin: 0;
   padding: 0;
   display: flex;
   width: 100%;
}
.km-header-main .km-header-nav li {
   list-style: none;
}
.km-header-main .km-header-nav li a {
   display: block;
   color: #B6A793;
   text-decoration: none;
   /*font-size: 20px;*/
   font-size: 18px;
   padding: 0px 10px;
   height: 76px;
   line-height: 76px;
   /*margin-right: 65px;*/
   margin-right: 40px;
   border-bottom: 4px solid transparent;
   text-align: center;
   font-weight: 600;
   font-family: "Montserrat", serif;
}
.km-header-main .km-header-nav li.active a,
.km-header-main .km-header-nav li a:hover {
    border-bottom: 4px solid #B6A793;
    color:#B6A793;
}
.km-header-main {
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 999;
}
.km-home-slider-sec {
  background-color: #f3edc9;
  min-height: 400px;
  background-image: url("../images/km-home-slider-bg.jpg");
  background-repeat: no-repeat;
  background-size: 100%;
  min-height: 117vh;
  display: flex;
  align-items: center;
  background-position-y: bottom;
  position: relative;
  z-index: 8;
  overflow: hidden;
}
.km-home-slider-sec:before {
    content: "";
    z-index: -1;
    width: 64%;
    height: 100%;
    left: -10%;
    top: 0;
    position: absolute;
    background-color: #201f1ff0;
    transform: rotate(13deg);
    height: calc(100% + 25%);
    top: -15%;
    border-right: 12px solid #b6a793;
}
/*.km-home-slider-sec:after {
    content: "";
    z-index: -1;
    width: 20%;
    height: calc(100% + 70px);
    left: 30%;
    top: -70px;
    position: absolute;
    background-color:#333333f0;
    transform: rotate(13deg);
}*/

.km-home-slider-sec .km-home-slider-wraper {
  max-width: 530px;
  z-index: 9;
}
.km-home-slider-sec .km-home-slider-wraper h1 {
   font-size: 70px;
   line-height: 1.3;
   font-weight: 400;
   margin-top: 0;
   margin-bottom: 35px;
   color: #fff;
}
.km-home-slider-sec .km-home-slider-wraper h1 span {
   display: block;
   font-weight: 600;
}
.km-home-slider-sec .km-home-slider-wraper p {
   color: rgba(17, 17, 17, 1);
   font-style: italic;
   font-size: 16px;
   line-height: 2;
   font-weight: 500;
   color: #fff;
}
.km-aboutus-sec {
   background-color: #fff;
   padding: 28px 0;
   position: relative;
}
.km-aboutus-wraper {
   display: flex;
   align-items: center;
   justify-content: space-between;
   /* height: 100%; */
}
/*.km-aboutus-wraper > div {
   max-width: 720px;
}*/

.km-aboutus-wraper h4 {
   color:rgba(50, 63, 73, 1);
   font-size: 20px;
   line-height: 1.5;
   font-weight: 300;
   letter-spacing: -0.5px;
   margin-bottom: 20px;
}
.km-aboutus-wraper p {
   color:rgba(50, 63, 73, 1);
   font-size: 15px;
   line-height: 1.95;
   font-weight: 400;
   text-align: justify;
}
.km-aboutus-wraper .km-about-img-1 {
   
}
.km-aboutus-wraper .km-about-img-2 {
   
}
.km-aboutus-wraper .km-about-img-3 {
   
}
.km-as-sec-1 {
   height: 411px;
   background-image: url("../images/km-about-1.png");
   background-repeat: no-repeat;
   background-position-x: 100%;
   background-position-y: 40px;
   background-size: 380px;
}
.km-as-sec-2 {
   height: 411px;
   background-image: url("../images/km-about-2.jpg");
   background-repeat: no-repeat;
   background-position-x: 0%;
   background-position-y: center;
   background-size: contain;
   margin: 30px 0 60px;
   overflow: hidden;
}
.km-as-sec-2 .km-aboutus-wraper {
   justify-content: flex-end;
}
.km-as-sec-2:before {
    content: "";
    position: absolute;
    left: 421px;
    background: #fff;
    z-index: 99;
    width: 160px;
    height: calc(100% + 50px);
    top: -37px;
    transform: rotate(-14deg);
    z-index: 0;
} 
.km-as-sec-2:after {
    content: "";
    position: absolute;
    left: -33px;
    background: #fff;
    z-index: 99;
    width: 70px;
    height: 292px;
    top: auto;
    transform: rotate(162deg);
    z-index: 0;
    bottom: -136px;
} 
.km-as-sec-3 {  
   background-image: url("../images/km-about-3.jpg");
   background-repeat: no-repeat;
   background-position-x: 100%;
   background-position-y: center;
   background-size: 400px;
   position: relative;
   overflow: hidden;
}
.km-as-sec-3:before {
    content: "";
    position: absolute;
    right: 333px;
    background: #fff;
    z-index: 99;
    width: 200px;
    height: calc(100% + 160px);
    top: -77px;
    transform: rotate(22deg);
    z-index: 0;
} 
.km-as-sec-3:after {
    content: "";
    position: absolute;
    right: -50px;
    background: #fff;
    z-index: 99;
    width: 93px;
    height: 190px;
    top: auto;
    transform: rotate(30deg);
    z-index: 0;
    bottom: -100px;
} 
.km-technological-sec {
   padding: 80px 0;
}

.km-technological-box {
   width: 800px;
   height: 800px;
   border: 1px solid #999;
   border-radius: 50%;
   margin-top: 80px;
   margin-left: auto;
   margin-right: auto;
   position: relative;
   /*   background-image: url("../images/km-technological-box-bg.png");*/
   background-repeat: no-repeat;
   background-size: 604px;
   background-position: center center;
   animation: blink-0 .75s infinite alternate;
   animation: blink-111 .75s infinite alternate;
}
.km-technological-box .km-technological-label {
   position: absolute;
   width: 200px;
   height: 130px;
   background-color: #fff;
   text-align: center;
   display: flex;
   align-items: center;
   justify-content: center;
   flex-direction: column;
}
.km-technological-box .km-technological-label img {
   display: block;
   margin: 0 auto;
   width: 40px;
   height: auto;
}
.km-technological-box .km-technological-label span {
   display: block;
   margin-top: 12px;
   font-size: 20px;
   font-weight: 400;
   font-family: "Montserrat", serif;
}
.km-technological-box .km-technological-label-1 {
   top: -60px;
   left: calc(50% - 90px);
   animation: blink-11.75s infinite alternate;
}
.km-technological-box .km-technological-label-2 {
   top: calc(50% - 90px);
   right: -92px; 
}
.km-technological-box .km-technological-label-3 {
   left: calc(50% - 90px);
   bottom: -60px; 
}
.km-technological-box .km-technological-label-4 {
   top: calc(50% - 90px);
   left: -92px; 
}
.km-technological-box .km-technological-arrow {
   position: absolute;
}
.km-technological-box .km-technological-arrow-1 {
    top:90px;
    right:70px;
    animation: blink-1 .75s infinite alternate;
}
.km-technological-box .km-technological-arrow-2 {
   right: 51px;
   bottom: 107px;
   transform: rotate(90deg);
   animation: blink-2 .75s infinite alternate;
}
.km-technological-box .km-technological-arrow-3 {
   left: 56px;
   bottom: 104px;
   transform: rotate(-180deg);
   animation: blink-3 .75s infinite alternate;
}
.km-technological-box .km-technological-arrow-4 {    
   left: 75px;
   top: 83px;
   transform: rotate(260deg);  
   animation: blink-4 .75s infinite alternate;
}
.km-technological-box .km-tech-hover  {
   position: absolute;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
   display: flex;
   align-items: center;
   justify-content: center;
}
.km-technological-box .km-tech-hover .km-tech-hover-img {
   position: absolute;
}
.km-technological-box .km-tech-hover .km-tech-hover-img {
   opacity: 0;
   transition: 0.3s;
}
.km-technological-box .km-tech-hover .km-tech-hover-img.active {
   opacity: 1;
   transition: 0.3s;
}
 @keyframes blink-111 {
   0%  { border-color: #ccc; }
   25% { border-color: #aaa; }
   50%  { border-color: #999; }
   75%  { border-color: #444; }
   100% { border-color: #000; }  
}
   
/* @keyframes blink-1 {
   0%   { top:57px;  right:104px;  }
   100% { top: 107px; right: 55px; }   
}
@keyframes blink-2 {
   0%   { right: 92px;  bottom: 65px;  }
   100% { right: 148px; bottom: 24px; }   
}
@keyframes blink-3 {
   0%   { left: 108px; bottom: 54px; }
   100% { left: 56px; bottom: 103px; }   
}
@keyframes blink-4 {
   0%   { left: 115px; top: 50px; }
   100% { left: 53px; top: 107px; }   
}
@keyframes blink-0 {
   0%   {  border-color:#000; }
   50%  { border-color:rgba(33, 67, 147, 1); }   
   100% { border-color:rgb(222 32 38); } 
}
@keyframes blink-11 {
   0%   {  top: -70px; }
   100% {  top: -50px; }   
} */
.km-milestones-sec {
   padding: 60px 0;
}
.km-milestones-sec .km-milestones-content {
   background-color: #232323;
   height: 100%;
   display: flex;
    align-items: center;
}
.km-milestones-sec .km-milestones-content div {
    max-width: 507px;
    margin-left: auto;
    margin-right: auto;
    margin-top: -130px;
}
.km-milestones-sec .km-milestones-content h3 {
   color: #fff;  
   font-size: 30px;
   margin-bottom: 30px;
}
.km-milestones-sec .km-milestones-content p {
   color: #fff;
   font-size: 16px;
   line-height: 1.6;
   font-weight: 300;
   letter-spacing: 1px;
   text-align: justify;
}
.km-milestones-sec .carousel-control-next, 
.km-milestones-sec .carousel-control-prev {
   width: 105px;
   opacity: 1;
}
.km-milestones-sec .carousel-control-prev-icon,
.km-milestones-sec .carousel-control-next-icon {
   background-color: #fafafad1;
   width: 60px;
   height: 60px;
   border-radius: 60px;
   z-index: 999;
   background-size: 30px;
   background-image: url(../images/km-slide-left-icon.png);
   background-size: 14px;
   opacity: 1;
}
.km-milestones-sec .carousel-control-next-icon {
   background-image: url(../images/km-slide-right-icon.png);
}
.km-milestones-sec .carousel-indicators {
   width:100%;
   margin-left:0;
   margin-right:0;
   margin-bottom: 30px;
}
.km-milestones-sec .carousel-indicators div {
   display:flex;
   gap: 15px;
   padding: 0 6%;
}
.km-milestones-sec .carousel-indicators button {
   width: 25%;
   height: auto;
   text-indent: inherit;
   background-color: transparent;
    background-clip: inherit;
    border: 0;
    border-top: none;
    border-bottom: none;
    opacity: 1;
    box-sizing: border-box;
}
.km-milestones-sec .carousel-indicators img {
   width: 100%;
   height: auto;
   border-radius: 16px;
   border:3px solid transparent;
}
.km-milestones-sec .carousel-indicators button.active img {
  border:3px solid #232323;
}


.km-legacy-sec {
  padding: 30px 0 20px;
}
.km-legacy-slider {

}
.km-legacy-slider .km-legacy-item {
   background-color:#F6F1EB;
   border-radius: 12px;
   max-width: 100%;
   height: 100%;
   padding: 40px;
   margin-bottom: 20px;
   box-shadow: -1px 4px 6px #999;
   display: flex;
   align-items: center;
   flex-direction: column;
   max-height: 580px;
}
.km-legacy-slider .km-legacy-item .km-legacy-img {

}
.km-legacy-slider .km-legacy-item .km-legacy-content {
   margin-top: 15px;
   display: flex;
   align-items: center;
   justify-content: flex-start;
   gap: 15px;
   margin-left: -10px;
   margin-bottom: 15px;
   margin-right: auto;
}
.km-legacy-slider .km-legacy-item .km-legacy-dot {
   width: 18px;
   height: 18px;
   background: #222;
   display: block;
   border-radius: 28px;
}
.km-legacy-slider .km-legacy-item .km-legacy-name {
   color: rgba(35, 35, 35, 1);
   font-weight: 600;
   font-size: 27px;
}
.km-legacy-slider .km-legacy-item .km-legacy-line {
   background-color: rgba(34, 34, 34, 1);
   height: 2px;
   width: 20px;
}
.km-legacy-slider .km-legacy-item .km-legacy-year {
   background-color: #E4DBD1;
   text-align: center;
   border-radius: 22px;
   color: #232323;
   font-size: 20px;  
   font-weight: 600;
   height: 32px;
   width:80px;
}
.km-legacy-slider .km-legacy-item .km-legacy-text {
    margin-bottom: 0;
    font-size: 16px;
    font-weight: 400;
    color: rgba(0, 0, 0, 1);
    padding-left: 32px;
}
.km-legacy-arrow {
   position: absolute;
   right: 0;
   top: 0;
}
.km-legacy-arrow img {
   cursor: pointer;
   filter: grayscale(100%);
}

.km-footer {
 background-color: #232323;
 padding: 80px 0 0 0;
}
.km-footer .km-footer-widget {
   
}
.km-footer .km-footer-widget .km-footer-logo {
   max-width: 200px;
}
.km-footer .km-footer-widget .km-footer-social {
   display: flex;
   margin-top: 40px;
}
.km-footer .km-footer-widget .km-footer-social a {
   display: flex;
   width: 36px;
   height: 36px;
   line-height: 36px;
   background: #fff;
   border: none;
   border-radius: 6px;
   margin-right: 15px;
   text-align: center;
   align-items: center;
   justify-content: center;
   border: 2px solid #fff;
}
.km-footer .km-footer-widget .km-footer-social a img {
   
}
.km-footer .km-footer-widget .km-footer-social a:hover,
.km-footer .km-footer-widget .km-footer-social a:focus {
   background-color: #fff;
   transform: scale(1.1);
   border: 2px solid #de1f26;
}
.km-footer .km-footer-widget .km-footer-menu {
   display: block;
}
.km-footer .km-footer-widget .km-footer-menu  a {
    display: block;
    color: rgba(255, 255, 255, 1);
    font-size:16px;
    line-height:28px;
    margin-bottom: 12px;
    font-family: "Montserrat", serif;
}
.km-footer .km-footer-widget .km-footer-menu  a:hover {
   /*color: #de1f26;*/
   color: #b1a49d;
}
.km-footer .km-footer-widget .km-footer-mobile {
    margin-top:10px;
}
.km-footer .km-footer-widget .km-footer-mobile a {
    display: block;
    color: #fff;
    margin-bottom: 20px;
    font-weight: 200;
    font-family: "Montserrat", serif;
}
.km-footer .km-footer-widget .km-footer-mobile a img {
    margin-right:10px
}
.km-footer .km-footer-widget .km-footer-address {

}
.km-footer .km-footer-widget .km-footer-address p {
   font-size:16px;
   font-weight: 200;
   line-height: 1.7;
   color: rgba(255, 255, 255, 1);
}
.km-footer .km-footer-copy {
   background-color: rgba(0, 0, 0, 0.2);
   color: #fff;
   padding: 15px 0;
   margin-top:80px;
   font-weight: 200;
}
.read-more-content {
   display: none;
}
.read-more-button {
   color: #111;
   cursor: pointer;
   border: none;
   background: none;
   text-decoration: none;
   padding: 2px  5px;
   font-size: inherit;
   font-weight: 500;
}
.ellipsis {
   display: inline;
}

@media (min-width: 768px) {
   .read-more-paragraph .read-more-content {
       display: inline; 
   }
   .read-more-paragraph .read-more-button, .read-more-paragraph .ellipsis {
       display: none;
   }
   .desktop-banner {
    display: block;
  }
  .mobile-banner {
    display: none;
  }
}

@media (max-width: 767px) {
  .desktop-banner {
    display: none;
  }
  .mobile-banner {
    display: block;
  }
}

.image-banner {
  width: 100%;
  overflow: hidden;
  margin: 0;
  padding-top: 90px;
}

.image-banner img {
  width: 100%;
  height: auto;
  display: block;
  max-width: 100%;
}




