*{
    box-sizing: border-box;
    padding: 0;
    margin: 0;

}
html{
    scroll-behavior: smooth;
}
h1,h2,h3,h4,h5{
    font-family: "calibri", system-ui;
    font-weight: 400;
    font-style: normal;
}
p{
    font-size: 16px;
    line-height: 26px;

}
img{
    max-width: 100%;
}
body{
    --fc : #dc3545;
    --sc : #306395;
    --tc: #f3efef;

    
}
a{
 text-decoration: none;
}

.clr-2{
    color: var(--sc);
}
.clr-3{
    color: var(--tc);
}
.bg-gray{
    background: #f5f5f5;
}
header .topbar{
    background: var(--fc);

}
.pad-15{
    padding: 15px;
}
h2.title,
h1.title{
    font-size: 36px;
    line-height: 48px;
    margin-bottom: 10px;
}
header .topbar ul{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
}
header .topbar ul li{
    list-style: none;
    margin: 10px 12px;
    color: #fff;
}
header .topbar ul li i{
    font-size: 18px;
    color: #fff;
}

header nav .logo a{
    padding: 5px 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}
header nav .logo a img{
    height: 60px !important;
    width: auto !important;
    border-radius: 0 !important;
    object-fit: contain !important;
}
header nav.logo a img {
    display: none !important;
}
@keyframes rotatefull {
    100%{
        rotate: 360deg;
    }
}
header nav .logo a .logo-text{

    font-family: "Battambang", system-ui;


margin-left: 10px;
font-size: 24px;
color: var(--fc);
font-weight: 600;
white-space: nowrap;
}

header nav{
    padding: 6px;
    position: relative;
    transition: top 0.5s;
}
.navfixed{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background: #fff;
    z-index: 99999;
    box-shadow: 1px 1px 6px #0005;
}
.navbar{
    justify-content: flex-end;
}
.navbar ul.nav-links{
    display: flex;
    list-style-type: none;
    margin: 0;
}
.navbar ul.nav-links li{
    margin: 6px 15px;
}
.navbar ul.nav-links li a{
    font-weight: 500;
}
.navbar ul.nav-links li.active a{
color: var(--sc);
}
.navbar .nav-item{
display: flex;
align-items: center;
justify-content: center;
}
.navbar .nav-item .call-btn{
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 15px;
    background: var(--sc);
    border-radius: 10px;
    margin-left: 10px;
}
.navbar .nav-item .call-btn i{
    font-size: 22px;
    padding: 12px ;
    background: #fff;
    color: var(--sc);
    border-radius: 50%;
    margin-right: 10px;
}
.navbar .nav-item .call-btn .small{
    font-size: 14px;
    line-height: 18px;
    color: #fff;
    font-weight: 500;
}
.navbar .nav-item .call-btn .call a{
    font-size: 18px;
    color: #fff;
    text-decoration: none;
    font-weight: bold;
   
}
.navbar ul.nav-links a{
    text-decoration: none;
    color: #000;
    font-size: 18px;
}
.menu-icon .menu{
display: block;
width: 45px;
height: 45px;
background: var(--sc);
cursor: pointer;
border-radius: 10px;
position: relative;
}
.menu-icon .menu span{
    border-radius: 10px;
    width: 60%;
    position: absolute;
    height: 5px;
    inset: 0;
    margin: auto;
    background: #fff;
    transition: all 0.5s;
}
.menu-icon.active .menu span:nth-child(1){
top: 0;
transform: rotate(45deg);
}
.menu-icon.active .menu span:nth-child(2){
opacity: 0;
}
.menu-icon.active .menu span:nth-child(3){
    top: 0;
    transform: rotate(-45deg);
}
.menu-icon .menu span:nth-child(3){
    top: 20px;
}
.menu-icon .menu span:nth-child(1){
    top: -20px;
}
/* swiper */
.slider .swiper ,
.testimonials-sec .swiper{
    width: 100%;
    height: 100%;
  }
  .slider  .swiper-slide{
    text-align: center;
  }
  .slider  .swiper-slide,
  .testimonials-sec .swiper-slide  {  
    background: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .slider  .swiper-slide img,
  .testimonials-sec   .swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .slider   .swiper,
  .testimonials-sec   .swiper {
    margin-left: auto;
    margin-right: auto;
  }
.slider .swiper-button-next,
.slider .swiper-button-prev{
opacity: 0;
}
.slider:hover .swiper-button-next,
.slider:hover .swiper-button-prev{
    color: #fff;
    opacity: 1;
}
.slider .img{
    position: relative;
    width: 100%;
    background-repeat: no-repeat;
    background-size: cover;
}

.slider .content{
--spacep: 40px;
margin: 120px auto;
padding: var(--spacep) ;
background: #0008;
width: fit-content;
position: relative;
width: 80%;
}
.slider .content::before,
.slider .content::after{
    --bord: 3px;
    content: '';
    height: 0;
    width: 0; 
    border: 0px solid #fff;
    transition: all 2.5s;
    position: absolute;
}
.slider .content::before {  
    top: calc(var(--spacep)/2);
    left: calc(var(--spacep)/2);
    border-width: var(--bord) 0 0 var(--bord);
}
.slider .content::after {
 
    bottom: calc(var(--spacep)/2);
    right: calc(var(--spacep)/2);
    border-width: 0 var(--bord) var(--bord) 0;  
}
.swiper-slide-active .content::before,
.swiper-slide-active .content::after{
    height: calc(100% - var(--spacep));
    width: calc(100% - var(--spacep));
}

.slider .content h2{
    font-size: 42px;
    line-height: 50px;
    text-shadow: 1px 1px 6px #0008;
    color: #fff;
    margin: 20px auto;
    position: relative;
    z-index: 1;
}

header .logopart{
display: flex;
align-items: center;
justify-content: space-between;
}
.slider .content p{
    color: #fff;
    margin: 0 15px  20px;
    position: relative;
    z-index: 1;
    font-size: 18px;
    line-height: 28px;
}
.slider .content .thm-btn{
margin: 0 auto 15px;
position: relative;
z-index: 1;
}
/* slider end */
.ptb-60{
padding: 60px 0px;
}
.about-sec .img{
    margin: 15px auto;
    position: relative;
    display: flex;
    height: calc(100% - 30px);
    width: fit-content;
}
.about-sec .img{
    padding: 20px;
    position: relative;
}
.about-sec .img::before,
.about-sec .img::after{
    content: '';
    width: 50%;
    height: 50%;
    position: absolute;
    background: var(--sc);
}
.about-sec .img::before{
top: 0;
left: 0;
}
.about-sec .img::after{
bottom: 0;
right: 0;
}
.about-sec .img img{
    position: relative;
    z-index: 2;
    height: 100%;
    object-fit: cover;
}
.about-sec .content-box{
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    width: 100%;
    padding: 15px;
}

.thm-btn{
    border: 1px solid var(--sc);
    border-radius: 5px;
    position: relative;
    background: var(--sc);
    overflow: hidden;
    width: fit-content;
}
.thm-btn a{
    text-decoration: none;
    color: #fff;
    display: flex;
    padding: 8px 25px;

}
.thm-btn:hover{
    border: 1px solid var(--fc);
}
.thm-btn:before{
    content: '';
    position: absolute;
    inset: 0;
    margin: auto;
    height: 0px;
    width: 0px;
    background: var(--fc);
    border-radius: 50%;
    transition: all 0.6s;
}
.thm-btn:hover:before{
    height: 300px;
    width: 300px;
    left: -90px;
    
}
.thm-btn span{
    position: relative;
    z-index: 2;
    color: #fff;
}
.service-sec  .card{
margin: 15px auto;
/* box-shadow: 1px 1px 5px #0008; */

}
.service-sec  .card .card-footer{
    background: #fff;
}
.service-sec .card-img{
    overflow: hidden;
    border-radius: 5px 5px 0 0;

}
.service-sec  .card img{
    transition: all 0.5s;
}
.service-sec  .card:hover img{
    transform: scale(1.1) rotate(3deg);

}
.service-sec  .card-title{
font-size: 20px;
line-height: 26px;
font-weight: 500;
margin: 10px 0px;
}
.service-sec .card a{
    color: var(--fc);
    transition: 0.5s;
}
.service-sec .card a:hover{
color: var(--sc);
}
.service-sec .card p{
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
}
.mt-15{
    margin-top: 15px !important;
}
.mg-auto{
    margin:auto;
}
.testimoialbox {
    padding: 15px 15px 0px 15px;
    margin: 15px 15px 60px 15px;
    border-radius: 10px;
    display: flex;
    flex-flow: column-reverse;
    justify-content: center;
    align-items: center;
}

.testimoialbox .test-header{
    display: flex;
    align-items: center;
    margin-top: 15px;
}
.testimoialbox .icon {
    /* padding-right: 15px; */
    /* border-right: 1px solid #0006; */
    margin-right: 15px;
}
.testimoialbox .icon img{
    height: 75px;
    width: 75px;
}
.testimoialbox .name{
font-size: 22px;
font-weight: bold;
}
.testimoialbox i{
color: #fcc707;
}
.testimoialbox .swiper-pagination{
    top: 25px;
}
.testimoialbox p{
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
}
.testimoialbox .test-footer{
    display: flex;
    align-items: flex-start;
    max-width: 800px;
    width: 100%;
    text-align: center;
}
.testimoialbox .test-footer .span{
    max-width: 60px;
    min-width: 60px;
    margin:0px 5px;
}
.testimonials-sec .swiper-pagination-bullet-active{
background: var(--fc) !important;
}

.contact-sec{
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: fixed;
    position: relative;
}
.contact-sec::before{
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    background: #0005;
    width: 100%;
    height: 100%;
}
.contact-sec .container{
    position: relative;
    z-index: 2;
}
.contact-sec h2{
    color: #fff;
    text-shadow: 1px 1px 6px #000;
}


footer{
    background: var(--fc);
    padding:15px;
}
footer p{
    color: #fff;
}
.whatsapp{
     right: 25px;
}
.callnowbtn{
     left: 25px;
}
.whatsapp,
.callnowbtn{
    position: fixed;
    bottom: 30px;
    z-index: 999;
}
.whatsapp img,
.callnowbtn img{
    width: 60px;
}
.whatsapp a{
     justify-content: flex-end;
}
.callnowbtn a{
     justify-content: flex-start;
}
.whatsapp a,
.callnowbtn a{
    text-decoration: none;
    display: flex;
    align-items: center;
   transition: all 0.5s;
   border-radius: 30px;
   transition: all 0.5s;

}
.whatsapp a:hover,
.callnowbtn a:hover{
    background: #fff;
}
.callnowbtn a .span{
  color: #2196f3;
}
.whatsapp a .span{
  color: #51cd5e;
}
.whatsapp a .span,
.callnowbtn a .span{
    font-weight: 600;
    font-size: 18px;
   white-space: nowrap;
    overflow: hidden;
    width: 0;
    transition: all 0.5s;
}
.whatsapp a:hover .span,
.callnowbtn a:hover .span{
width: 100% !important;
}
.ptb-40{
    padding: 40px 0px;
}
.breadcramb{
    background-repeat: no-repeat;
    background-attachment: fixed;
}
.breadcramb ul{
    padding: 0;
    margin: 15px 0px 0px;
    display: flex;
    list-style-type: none;
    align-items: center;
    justify-content: center;
}
.breadcramb  .bred-title{
padding: 0 10px;
width: fit-content;
}
.breadcramb ul li{
    font-weight: 500;
}
.breadcramb ul i{
    margin: auto 6px ;
   font-size: 14px;
   font-weight: 400;
}
.breadcramb  .bred-title .b-title{
    color: #fff;
    font-size: 30px;
    line-height: 36px;
    text-shadow: 1px 1px 6px #0007;
}
.breadcramb ul li a{
color: var(--fc);

}
.breadcramb ul li a:hover{
    color: #fff;
}
.pad-tb-0{
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
.contact-page .contact-info .contact-box .link a.mail{
line-break: anywhere;
}
.contact-page .contact-info{
background: var(--fc);
height: 100%;
display: flex;
flex-flow: column;
padding: 20px;
border-radius: 15px;
}
.contact-page .contact-info .title{
    color: #fff;
}
.contact-page .contact-info  .contact-box{
    display: flex;
    align-items: center;
    margin: 20px 0;
}
.contact-page .contact-info  .contact-box .iconbox{
    display: flex;
    align-items: center;
    justify-content: center;
    height: 60px;
    min-width: 60px;
    border-radius: 50%;
    background: #fff;
    margin-right: 15px;
}
.contact-page .contact-info  .contact-box .iconbox i{
    color: var(--fc);    
    padding: 15px;
    font-size: 18px;
    transition: all 0.5s;
}
.contact-page .contact-info  .contact-box:hover .iconbox i{
   transform: rotateY(180deg);
}
.contact-page .contact-info  .contact-box .text{
    font-size: 20px;
    color: #fff;
}
.contact-page .contact-info  .contact-box .link,
.contact-page .contact-info  .contact-box .link a{
    color: var(--tc);
    font-size: 18px;
    font-weight: 500;
}
.contact-page  .formbox{
padding: 20px;
border-radius: 15px;
box-shadow: 1px 1px 6px #0007;
margin: 15px auto;
}
.contact-page  .formbox input{
    outline: none !important;
}
h3.title{
    font-size: 30px;
    line-height: 36px;
    margin-bottom: 15px;
}
.contact-page  .formbox label{
    font-size: 16px;
    color: var(--fc);
    padding: 0px 5px;
    font-weight: 500;
}
.form-control:focus{
    box-shadow: none;
    border: 1px solid var(--sc);
}
.contact-page  .formbox button.btn.thm-btn{
    padding: 8px 30px;
}
main{
    position: relative;
    z-index: 1;
}
.model{
    z-index: 2;
}


footer .quicklinks{
    display: flex;
    justify-content: center;
    align-items: center;
    list-style-type: none;
    margin: 0px auto 10px;
    padding: 0;
    flex-wrap: wrap;
}
footer .quicklinks li{
    margin: 5px 15px;
    
    border-bottom: 1px solid #fff0;
    transition: all 0.5s;
}
footer .quicklinks li a{
    color: #fff;

}
footer .quicklinks li:hover{
    border-bottom: 1px solid #fff;
}
.modal-header .model-top{
    display: flex;
    justify-content: space-between;
    width: 100%;
    align-items: center;
}
.modal-header .btn-close{
background: var(--sc);
margin: 5px 0px 5px 5px;
opacity: 1;
position: relative;
display: flex;
align-items: center;
justify-content: center;
color: #fff;
font-weight: bold;
}
.bg-white{
    background:#fff;
}
#myModal .modal-dialog{
    margin-top: 35px;
}
.callnowbtn a img{
    padding: 5px;
    border-radius: 50%;
    background: #fff;
}
.logo-text span{
    color: var(--sc);
    display: block;
    font-size: 14px;
}