*{
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: lora, 'Times New Roman', Times, serif;
}

h1{font-size: 2.5em; }
h2{font-size: 2em; font-weight: 500;}
h3{font-size: 1.3em; font-weight: 500;}
p{font-size: 1em;}
body {
  background-color: rgb(250, 250, 250);
  
}

:root{
  --light-bg-color: rgb(250, 250, 250);
  --dark-bg-color: rgb(245, 245, 245);
  --company-gold: rgb(186, 161, 35);
  --isuzu-red: rgb(230, 0, 0);
  --company-blue: rgb(0, 94, 171);
}

a{
  text-decoration: none;
  color: #000000;
}

i{
  color: black;
  font-size: 2em;
}

html {
  scroll-behavior: smooth;
 } 



.heading-divider{
  width: 10%;
  height: 1.5px;
  background-color: var(--company-gold);
  margin-left: auto;
  margin-right: auto;
  /* margin-top: 1em; */
}

.gallery-header{
  width: 100%;
  height: 5em;
  background-color: rgb(244, 244, 244); 
  padding:0 2em;
  align-items: center;
  justify-content: center;
  color: var(--company-blue);
  display: flex;
  flex-direction: row;
}

.gallery-header-text{
  flex: 1;
}

.gallery-header-button{
  width: auto;
  height: 3em;
  background-color: var(--company-blue);
  align-content: center;
  padding: 0 1em;
  color: var(--light-bg-color);
  border-radius: 0.6em;
}

#services{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1em;
  width: 100%;
  
  padding: 2em 2em;
  /* text-align: center; */
}

.service-holder{
  width: 100%;
  height: 20em;
  position: relative;
  overflow: hidden;
  cursor: pointer;
  border-radius: 0.6em;
  transition: transform 0.3s ease;
}



.service-holder:hover {
  transform: scale(1.01);
}

/* Hidden overlay container */
.service-overlay {
  position: absolute;
  inset: 0;
  background:  rgba(208, 171, 103, 0.841);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  color: var(--company-blue);
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 1.5em;
  opacity: 0;
  transform: translateY(100%);
  transition: transform 0.4s ease, opacity 0.4s ease;
  text-align: center;
}

/* When expanded */
.service-holder.expanded .service-overlay {
  opacity: 1;
  transform: translateY(0);
}

/* Title in overlay */
.service-overlay h3 {
  font-size: 1.4em;
  margin-bottom: 1em;
}

/* Summary text */
.service-overlay p {
  font-size: 1em;
  line-height: 1.4em;
  margin-bottom: 1.5em;
}

/* CTA Button */
.service-overlay a {
  background: var(--company-blue);
  padding: 0.75em 1.2em;
  color: rgb(208, 171, 103);
  border-radius: 0.5em;
  text-decoration: none;
  font-weight: 600;
  text-align: center;
  display: inline-block;
  width: 10em;
  margin: 0 auto;
}

/* Close button */
.service-overlay .close-overlay {
  position: absolute;
  top: 0.3em;
  right: 0.5em;
  font-size: 1.8em;
  cursor: pointer;
}





.pic-holder{
  height: 100%;
  width: 100%;
}

/* .service-name-action{
  height: 10%;
  width: 100%;
  background-color: rgb(208, 171, 103);
  align-content: center;
  padding: 0 1em;
  color: var(--company-blue);
  text-align: center;
} */

.pic{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.upbtn{
  width: 100%;
  display: flex;
  height: 4em;
  justify-content: end;
  align-items:center;
  padding-right:0.7em;
  /* margin-bottom: 1em; */
}

.back-to-top{
  width: 3em;
  height: 3em;
  background-color: var(--company-blue);
  /* position: absolute; */
  z-index: 100;
  font-size: 1em;
  border-radius: 100%;
  text-align: center;
  align-content: center;
  /* margin: 1em; */
    transition: transform 0.5s ease;
}

.back-to-top:hover{
  transform: scale(1.1);
}

.back-to-top:active{
  transform: scale(0.9);
}


.arrow{
  width: 1.7em;
  transform: rotate(90deg);
  margin-top: 0.1em;

  
}



body{
  min-width: 320px;
}

/* @media(max-width:2650px){
    h1 { font-size: 2.2em; }
  h2 { font-size: 1.8em; }
  h3 { font-size: 1.2em; }
  p  { font-size: 0.95em; }
  button, a { font-size: 0.95em; }
} */


@media (max-width:1024px) {


}


@media (max-width: 950px){
  #services{
    grid-template-columns: repeat(2, 1fr);
  }
}


@media (max-width: 860px) {
  h1 { font-size: 2.1em; }
  h2 { font-size: 1.8em; }
  h3 { font-size: 1.2em; }
  p  { font-size: 0.9em; }
  button, a { font-size: 0.9em; }  


}

@media (max-width: 630px){

    #services{
    margin-top: 2em;
    grid-template-columns: repeat(2, 1fr);
  }


    
} 


  @media (max-width:585px){
    #services{
      grid-template-columns: repeat(1, 1fr);
    }
  }




@media (max-width: 450px){




  #services{
    grid-template-columns: repeat(1, 1fr);
  }

  .services-header-button{
    width: auto;
    font-size: small;
  }



}


@media (max-width:365px){



  .gallery-header-button{
    font-size: smaller;
  }
}


