/* Root Styles */
:root{
    --primary-color: ;
    --secondary-color: ;
    --accent-color: ;
    --sub-heading-font: montserrat, sans-serif;
    --heading-font: ivyora-display, sans-serif;
    --body-font: montserrat, sans-serif;
}

/* To be Deleted */ 

/* div, section, nav, header, footer {border: 1px solid red;}
h3, h4, h5, h6 {border: 1px solid yellow;}
h1, h2 {border: 1px solid grey;}
p, a{border: 1px solid pink;}
hr, img{border: 1px solid blue;}  */

/* General Code Starts here */
* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}

/* make sure there is no overlap */
[class*=grid-], 
[class*=grid_], 
[class~=grid] {
  box-sizing: border-box;
  display: flex;
  flex-flow: row wrap;
  margin: 0;
}

 /* this overrides the default padding and margin on gridlex elements */
 [class*=grid] {   margin: 0;  }
 [class*=col]  {   padding: 0; }

/* Add Font */

@font-face {
    font-family: ;
    src: url('');
}

@font-face {
    font-family: ;
    src: url('');
}

html 
  {
  scroll-behavior: smooth; /* this enables smooth scrolling between internal links */
  overflow-x: hidden;
  touch-action: manipulation;
  }

/* Padding annd Margin Standard Styles */

/* Padding Utility Classes */

.padded-xsm { padding: 1.5%; }
.padded-sm { padding: 2.5%; }
.padded    { padding: 5%;   }
.padded-lg { padding: 10%;  }


.padded-05 { padding: 0.5rem; }
.padded-1  { padding: 1rem; }
.padded-2  { padding: 2rem; }

.padded-t  { padding-top: 5%; }
.padded-b  { padding-bottom: 5%; }
.padded-l  { padding-left: 5%; }
.padded-r  { padding-right: 5%; }

.padded-tb-sm  { padding-top: 2%; padding-bottom: 2%; }
.padded-tb  { padding-top: 5%; padding-bottom: 5%; }
.padded-tb-lg  { padding-top: 10%; padding-bottom: 10%; }
.padded-lr-sm  { padding-left: 2.5%; padding-right: 2.5%; }
.padded-lr  { padding-left: 5%; padding-right: 5%; }
.padded-lr-lg  { padding-left: 10%; padding-right: 10%; }

.padded-t-1 { padding-top: 1rem; }
.padded-b-1 { padding-bottom: 1rem; }
.padded-l-1 { padding-left: 1rem; }
.padded-r-1 { padding-right: 1rem; }

.padded-t-2 { padding-top: 2rem; }
.padded-b-2 { padding-bottom: 2rem; }
.padded-l-2 { padding-left: 2rem; }
.padded-r-2 { padding-right: 2rem; }

.padded-t-0 { padding-top: 0; }
.padded-b-0 { padding-bottom: 0; }
.padded-l-0 { padding-left: 0; }
.padded-r-0 { padding-right: 0; }

/* Margin Utility Classes */ 

.margin-t { margin-top: 5%; }
.margin-b { margin-bottom: 5%; }
.margin-l { margin-left: 5%; }
.margin-r { margin-right: 5%; }

.margin-t-1 { margin-top: 1rem; }
.margin-b-1 { margin-bottom: 1rem; }
.margin-l-1 { margin-left: 1rem; }
.margin-r-1 { margin-right: 1rem; }

.margin-t-2 { margin-top: 2rem; }
.margin-b-2 { margin-bottom: 2rem; }
.margin-l-2 { margin-left: 2rem; }
.margin-r-2 { margin-right: 2rem; }

.margin-t-0 { margin-top: 0; }
.margin-b-0 { margin-bottom: 0; }
.margin-l-0 { margin-left: 0; }
.margin-r-0 { margin-right: 0; }

.margin-tb { margin-top: 5%; margin-bottom: 5%; }
.margin-lr { margin-left: 5%; margin-right: 5%; }
.margin-lr-sm { margin-left: 2%; margin-right: 2%; }


/* Typography standard styles */

.text-left    { text-align: left; }
.text-right   { text-align: right; }
.text-center  { text-align: center; }


body {
    font-family: var(--body-font); 
}
h1, h2{
    font-family: var(--heading-font);
}
.small-heading{
    font-weight: 500;
    font-size: 1.2rem;
    color: #f3f3f4;
    text-transform: uppercase;
    margin-bottom: 1rem;
    font-family: var(--body-font);
}  

.hero .hero-heading{
    font-family: var(--heading-font) !important;
    font-size: 4rem;
}

.black-small-heading{
    font-weight: 200;
    font-size: 1.2rem;
    color: #000000;
    text-transform: uppercase;
    margin-bottom: 1rem;
}


h3, h4, h5, h6 {
    font-family: var(--sub-heading-font);
}

h2, h3, h4, h5, h6 {
    line-height: 1.1;
    margin-bottom: 1.2rem;
}

p {
    font-family: Montserrat;
    line-height: 1.4; 
    font-size: 1.2rem;
    margin-bottom: 1rem;
}

a{
    font-family: Montserrat;
    font-weight: 100;
    text-decoration: none;
    display: inline-block;
    transition: 0.7s all;
    padding: 1% 2%;
    font-weight: 400;
    font-size: 1.3rem;
}

h2:last-child, 
h3:last-child, 
h4:last-child, 
h5:last-child, 
h6:last-child, 
p:last-child {
	margin-bottom: 0;
}


/* --------------// --------------------- Layout Styles --------------// --------------------- */


.header-nav a{
    width: 100%;
    color: #f3f3f4 !important;
    padding: 0.5% 4%;
    margin: 1% 2%;
    display: inline;
    border: white solid 1px;
}

.header-nav a:hover{
    border: 1px solid #89987B;
    color: #89987B

}

.footer-text{
    border-left: 3px solid #89987B;
    border-right: 3px solid #89987B;
    color: #f3f3f4;
    padding: 0.5% 1.5% !important;
}

.footer-nav a{
    color: #f3f3f4;
    padding-bottom: 0.5%;
    border-bottom: 2px solid transparent;
}

.footer-nav a:hover{
    border-bottom: 2px solid #89987B;
    color: #89987B
}

.logo{
    width: 50%;
}

.logo-div{
    padding: 1% !important;
}



/* --------------// --------------------- General Styles --------------// --------------------- */

.bg-image{
    background-size:cover;
    background-position: center;
    background-repeat: no-repeat;
}

.bg-image-top{
    background-size:cover;
    background-position: 5%;
    background-repeat: no-repeat;
}
.tall-30{min-height: 30vh;}
.tall-40{min-height: 40vh;}
.tall-50{min-height: 50vh;}
.tall-60{min-height: 60vh;}
.tall-70{min-height: 70vh;}
.tall-80{min-height: 80vh;}
.tall-90{min-height: 90vh;}
.tall-100{min-height: 100vh;}
.tall-110{min-height: 110vh;}
.tall-120{min-height: 120vh;}
.tall-130{min-height: 130vh;}

.bg-black{
    background-color: #000000;
    color: #fff
}
.button{
    background-color: #B9987B;
    color: #f3f3f3;
    text-transform: capitalize;
    
}

.button:hover{
    background-color: #f3f3f3;
    color: #B9987B;

}
.transparent-button{
    background-color: transparent;
    color: #B9987B;
    border: 2px solid #B9987B;
    text-transform: capitalize;
}
.transparent-button:hover{
    background-color: #B9987B;
    color: #f3f3f3;
}

/* Home Page */

.hero{
    position: relative;
    z-index: 0;
    top: 0;
}

.hero .overlay{
    padding: 15% 10% 5% !important;
    background-color: rgba(0,0,0, 0.7);
}

.hero,
.hero .overlay{
    min-height: 100vh;
}

.hero h3{
    font-size: 3rem;
    color: #f3f3f3;
    font-weight: 200;
}

/* Services */

.services{
    padding: 2% 10%;
}

.services h2{
    font-weight: 200;
    font-size: 5rem;
}

.service-prop{
    font-family: var(--heading-font);
    font-weight: 200;
    font-size: 4rem !important;
}

.vertical-line{
    border: none;
    border-bottom: 4px solid #B9987B;
    width: 55%;
    transform: rotate(-90deg);
    margin-left: -30%;
}

.service-link{
    display: block;
    padding: 0%;
    color: var(--color-1)
}

.service-div{
    padding: 1% !important;
    align-items: flex-start !important;
}

.service-div > .col-12 {
    padding: 0 !important;
}

.service-div .bg-image{
    height: 50vh;
    min-height: unset;
    margin-bottom: 1rem;
}

.service-div-text{
    margin-top: 0  !important;
    padding: 0 !important;
    flex-grow: 1;

}

/* .service-div-text {
    min-height: 150px; 
} */


.service-link-icon{width: 100%;}

.service-div {
    display: flex;
    flex-direction: column;
    height: 100%;
}


.service-div .bg-image {
    flex-shrink: 0;
}

.service-div-text {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.service-div-text p {
    margin-top: auto;
}


/* Testimonial */


.testimonial .overlay{
    background-color: rgba(0, 0, 0, 0.7);
    padding: 7% 5% !important;
}

.testimonial h5{
    font-family: var(--heading-font);
    font-weight: 200;
    font-size: 5rem;
    border-top: 4px solid #89987B;
    color: #f3f3f4;
}

.testimonial p{
    font-size: 2rem;
    color: #f3f3f4;
}


/* About */

.about-founder{
    padding: 1% 2% !important;
}

.about-section hr{
    border: none;
    border-bottom: 3px solid #89987B;
    margin-bottom: 1.5rem;
}

.about-section h2{
    font-size: 3rem;
    font-weight: 100;
    line-height: 1;
}

.about-section h4{
    font-size: 1.5rem;
    font-weight: 200;
    line-height: 1;
}



/* ------------------------------------ // --------------------------------------- Mobile Styles ------------------------------------ // --------------------------------------- */

/* ".mob-" = mobile settings < 500px*/
/* ".med-" = tablet specific settings < */
/* ".large-" = desktop specific settings */
/* Mobile Settings */
.xs-mob-show, .mob-show, .tablet-show, .large-show{
    display: none; 
  }

/* X-Large Screen: Larger than typical laptop */
@media(min-width:1920px){
    .large-hide { display: none; }
    .large-show { display: block; }



}
  
/* gridlex lg screen */
@media(max-width: 1280px){



}

/* gridlex md screen */
@media(max-width: 1024px){
    p, a{
        font-size: 1rem;
    }
    .hero h3{
        font-size: 2.5rem;
    }
    .services h2{
        font-size: 4rem;
    }

    .service-prop{
        font-size: 3rem !important;
    }

    .service-link h4{
        font-size: 1rem;
    }

    .services h2 {
        font-size: 3.5rem;
    }
    .service-prop{
        font-size: 2.5rem !important;
    }

    .testimonial p {
        font-size: 1.2rem;
    }

    .testimonial h5{
        font-size: 4rem;
    }

}
@media(max-width:990px){
    h1{font-size: 4rem;}
    h2{font-size: 3rem;}
    h3,h4{font-size: 1.2rem; margin-bottom: 0.5rem;}
    h5, h6{font-size: 1.5rem;}

    .service-div-text p{
        margin-bottom: 0.8rem;
    }

    .hero .hero-heading {font-size: 3rem;}
}
@media(max-width: 850px){
	.tablet-hide { display: none; }
	.tablet-show { display: block; }

    .service-link h4 {
        font-size: 0.8rem;
    }

    .services h2 {
        font-size: 3rem;
    }
    .service-prop{
        font-size: 2.5rem !important;
    }

    .about-section h4 {
        font-size: 1.3rem;
    }

    .about-section h2 {
        font-size: 2.5rem;
    }

}

@media(max-width: 800px){
    .hamburger-menu hr {
        width: 60% !important;
        border-bottom: 2px solid #F3F3F4 !important; 
    }

    .logo{width: 65%;}

}

/* Gridlex sm screen */
@media(max-width: 768px){

    .small-heading{
        font-size: 1rem;
    }

    .mob-hide { display: none; }
    .mob-show { display: block; }
    .service-link-icon{width: 50%;}
    .about-founder{padding: 5% 10% !important;}
    .hero .hero-heading {font-size: 2.5rem;}

    .vertical-line{display: none;}

}
@media(max-width: 660px){

    p,a{font-size: 0.9rem;}
    .hero h3 {
        font-size: 2rem;
    }

    .hero,
    .hero .overlay{
        min-height: 60vh;
    }

    .vertical-line {
        width: 70%;
        margin-left: -40%;
    }
    .services h2 {
        font-size: 2.5rem;
    }
    .service-prop{
        font-size: 2rem !important;
    }

    .services{
        padding: 1% 10% 5%;
    }

    


}
@media(max-width: 600px){
    .logo {
        width: 80%;
    }

    .hamburger-menu{
        height: 2rem !important;
    }
    .hamburger-menu hr {
        width: 75% !important;
        border-bottom: 1.5px solid #F3F3F4 !important;
    }
}

/* Gridlex xs screen */
@media(max-width: 576px){
    
    .hero h3 {
        font-size: 1.8rem;
    }
    .testimonial p {
        font-size: 0.9rem;
    }

    .hero .hero-heading {font-size: 2rem;}

}
@media(max-width: 500px){
    .service-div .bg-image {
        height: 30vh !important;
        min-height: unset !important;
    }

    .services h2 {
        font-size: 2rem;
    }
    .service-prop{
        font-size: 1.5rem !important;
    }
    .logo {
        width: 100%;
    }
    

}
@media(max-width: 440px){

    .testimonial h5 {
        font-size: 3rem;
    }

}
@media(max-width: 400px){

    .xs-mob-hide { display: none; }
    .xs-mob-show { display: block; }

    p, a {
        font-size: 0.8rem;
    }
    .hero h3 {
        font-size: 1.5rem;
    }

}
@media(max-width: 350px){
  
}
@media(max-width: 300px){}

  




