/*see Comprehensive Guide: When to Use Em vs. Rem  
https://webdesign.tutsplus.com/tutorials/comprehensive-guide-when-to-use-em-vs-rem--cms-23984*/

/* CSS Variables */
:root {
  --primary: #ddd;
  --dark: #333;
  --light: #fff;
  --shadow: 0 1px 5px rgba(104, 104, 104, 0.8);
  --red: rgb(212, 92, 92);
  --blue: #07058d;
}

/* Generated by Font Squirrel (https://www.fontsquirrel.com) on November 4, 2019 */

@font-face {
  font-family: 'titillium-bold-italic';
  src: url('titillium-bolditalic-webfont.woff2') format('woff2'), url('titillium-bolditalic-webfont.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'titilliumlight';
  src: url('titillium-light-webfont.woff2') format('woff2'), url('titillium-light-webfont.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

html {
  box-sizing: border-box; /* this replaces weird asterisk syntax */
  /* font-family: 'titilliumlight', 'Lato', sans-serif; */
  font-weight: 500;
  color: var(--dark);
}


body {
  font-family: 'titilliumlight', 'Lato', sans-serif;
  font-size: 2rem;
  font-weight: 500;
 /* text-align: center; */
  margin: 0; /* gets rid of the default margin around the body edges, don't want margin in our body */
  padding:0;
  /* background: #333; */
  color:rgb(59, 57, 57);
  line-height: 1.5;
  word-wrap:break-word !important; 
  /* word-wrap:break-word !important;  
  controls whether or not words are allowed to break if they are too big for the space */
  /* !important sets it as an important rule to overwrite everything else */
  /* background-image: url(Images/background.jpg); */
  /* background-size: cover; */ /* squishes the whoe image into the space */
  /* background-attachment: fixed; */ /*makes it so that when you scroll, the image does not move */
}

h1,h2,h3 {
    font-family: 'titillium-bold-italic', 'Lato', sans-serif;
    font-weight: 700;
    margin: 0;
    padding: 1em 0;
}

h4 {

    font-family: 'titillium-bold-italic', 'Lato', sans-serif;
    font-size: 0.8rem;
    /* padding: 1em 0;    */
    padding: 1em 0em 0.9em 0em; 
    margin: 0;
    text-align: left;
 
} 

.mr-form-control-lg {
  height: 450px;
  /* height: calc(1.5em + 1rem + 2px); */
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
  }





h5 {
  font-family: 'titilliumlight', 'Lato', sans-serif;
  font-weight: 900;
  font-size: 0.6rem;;
  margin: 0;
  /* padding: 1em 0;    */
  padding: 0em 0em 0em 0em; 
  margin: 0;
}

h6 {
 margin: 0;
}

p {
    margin: 0;
    /* padding: 1em 0; */
}

/* the hyperlink (anchor) color */
a {
  color: var(--blue);
  font-weight: bold;
  text-decoration: underline;
}

.mr-btn {
  background: var(--red);
  color: var(--light);
  padding: 0.6rem 1.3rem;
  text-decoration: none;
  border: 0;
}

.mr-btn-green {
  background-color: #25d366;
}

.mr-btn-red {
  background-color: #d14a36;
}

.mr-btns-div {
  display:inline-block;
  padding: 1rem;
}

/* used in account and login */
.mr-btn-update {
  /* By default <a> is an inline element, 
  and inline elements can't specify a width or height. You can change 
  it to be a block element like this: */
  background-color: rgb(101, 172, 104); /* Green background */
  border: 0;
  color: white; /* White text */
  cursor: pointer; /* Pointer hand icon */
  width: 10rem;
  height: 5rem;
  padding: 1rem 1.3rem;
  margin: 0.5rem 1rem 0rem 0rem;
  text-decoration: none;
  /* margin-top: 1rem; */
  /* width: auto; */
}


.mr-btn-overload {
  margin: 0.5rem 0.5rem 1rem 0.5rem;
  text-decoration: none;
  /* width: 15rem; */
  min-width: 8rem;;
}

.mr-btn-update:hover{
  color: rgb(71, 67, 67);
  text-decoration: none;
  border: 1px solid rgb(33, 128, 21);
}

.mr-btn-update:focus{
  color: rgb(71, 67, 67);
  text-decoration: none;
  border: 1px solid rgb(33, 128, 21);
}

/* not in use keep for later use */
.mr-btn-whatsapp {
  background-color: rgb(76, 175, 79); 
  border: 0;
  color: white; 
  cursor: pointer;
  width: 10rem;
  height: 5rem;
  padding: 1rem 1.3rem;
  text-decoration: none;
}

/* not in use keep for later use */
.mr-btn-whatsapp:hover{
  color: rgb(54, 51, 51);
  text-decoration: none;
}

/* not in use keep for later use */
.mr-btn-google-maps {
	background-color: rgb(219, 66, 39); 
	/* border: 1px solid rgb(219, 66, 39);  */
	color: white; /* White text */
	padding: 1rem 1.3rem;
  cursor: pointer; /* Pointer/hand icon */
  width: 10rem;
  height: 5rem;
  text-decoration: none;
  
}

/* not in use keep for later use */
.mr-btn-google-maps:hover{
  color: rgb(54, 51, 51);
  text-decoration: none;
}

/* used in layout */
.mr-grid-wrapper {
  display: grid;
  grid-gap: 20px;
}

/* Boxes */
.mr-thin {
  display: grid;
  grid-gap: 20px;
  grid-template-columns: 1fr repeat(2, minmax(auto, 30rem)) 1fr;
}

/* Boxes */
.mr-thick {
  display: grid;
  grid-gap: 20px;
  grid-template-columns: 1fr repeat(2, minmax(auto, 40rem)) 1fr;
  /* border-bottom: 20px solid  #333; */
}


.mr-flex-row {
  /* https://yoksel.github.io/flex-cheatsheet/ */
  /* background-color: rgb(241, 241, 214); */
    /* https://yoksel.github.io/flex-cheatsheet/ */
  display: flex;
    /* https://yoksel.github.io/flex-cheatsheet/ */
  /*flex-grow: 1; */ /* this guy has no effect here, you must add it to the parent */  
}




.mr-flex-mobile {
  /* background-color: rgb(241, 241, 214); */
  /* padding: 0.5em 0.5em 0.5em 0.5em; */
    /* https://yoksel.github.io/flex-cheatsheet/ */
  display: flex;
  /* align-items: flex-end; */ /*to put the update delete buttons at the right or at the lower right */
  flex-direction: row; /*row puts it on top, column puts it in the middle */
  /* grid-gap: 2rem;   */
  grid-gap: 2rem;  

}

.mr-flex-end {
   /* https://yoksel.github.io/flex-cheatsheet/ */
  align-items: flex-end; 
}

.mr-flex-col{
  /* background-color: rgb(241, 241, 214); */
  /* margin-right: 2rem; */
  /* margin-left: 1rem; */
  padding: 0.5em 0.5em 0.5em 0.5em;
  display: flex;
  flex-direction: column; /*row puts it on top, column puts it in the middle */
  grid-gap: 0em; 
  width: auto;
}

.mr-flex-col-textarea{
  /* background-color: rgb(241, 241, 214); */
  /* margin-right: 2rem; */
  /* margin-left: 1rem; */
  padding: 0.5em 0.5em 0.5em 0.5em;
  display: flex;
  flex-direction: column; /*row puts it on top, column puts it in the middle */
  grid-gap: 0em; 
  width: auto;
  height:250px;
}

.mr-flex-col-textarea > textarea {
  width: inherit;
  height: inherit;
  font-size: inherit;
}

.mr-padding {
  padding: 0.5em 0.5em 0.5em 0.5em;
  /* border: 0.01rem solid black; */
}

.mr-flex-col1{
  /* background-color: rgb(241, 241, 214); */
  /* margin-right: 2rem; */
  /* margin-left: 1rem; */
  /* padding: 0.5em 0.5em 0.5em 0.5em; */
  display: flex;
  flex-direction: column; /*row puts it on top, column puts it in the middle */
  grid-gap: 0em; 
  width: auto;
  display: inline-flex;
  flex-wrap: wrap;


}



.mr-span-one-col {
  background: var(--primary);
  text-align: center;
  padding: 1.5rem 2rem;
  /* box-shadow: var(--shadow); */
  columns: 1;
}

.mr-span-two-col {
  /* text-align: center; */
  background: var(--primary);
  padding: 1rem 1rem;
  /* box-shadow: var(--shadow); */
  grid-column: 2/4;
}


.mr-span-two-col-border-bottom {
  border-bottom: 2rem solid white; 
  /* border-bottom: 2rem solid rgb(59,57,57);  */
  /*hack to mimmick a grid gap in the bottom */
}

.mr-margin-auto {
  margin:auto;
}

.mr-span-all {
  grid-column: 1/5;
}

/* .mr-span-two-col img {
  width:100%
} */

.mr-span-two-col h5,
.mr-span-one-col h5 {
  text-align:left;
  font-size: 1.7rem;
}

.mr-span-two-col h4,
.mr-span-one-col h4 {
  text-align:left;
  font-size: 1.9rem;
}

.mr-span-two-col  p,
.mr-span-one-col p {
  text-align:left;
  font-size: 1.6rem;
}


.mr-account-img {
  width: 4rem;
  height: 4rem;
  margin: 0.3rem;
  border-radius: 50% !important;
  float: left;
}

.mr-span-two-col img,
.mr-span-one-col img{
 max-width: 100%;
 /* min-width: 300px; */
 /* this prevents it from shrinking when the viewport is smaller than the original picture width */
 /* however it distortions the image when small. it means this: minimum width it can be */
 /* if it is smaller on the viewport, it will stretch it! */
}

.mr-sucursal-content {
  border-bottom: 0.1rem solid rgb(231, 195, 195);
  padding: 0.5rem 0rem 2rem 0.5rem;
  /* border-radius: 4px; */ /*rounding of the corners  */
}

.mr-post-content {
  /* border-bottom: 0.1em solid rgb(236, 92, 92); */
  /* padding: 1rem 2rem; */
  text-align: center;
  /* overflow-wrap: anywhere; */ /* mr: will show the scroll bars */
}

.mr-border-bottom {

  border-bottom: 2rem solid var(--dark); 
  /* border-bottom: 1rem solid rgb(59,57,57);  */
  /*hack to mimmick a grid gap in the bottom */

}

.mr-p {
  /* border-bottom: 0.1em solid rgb(236, 92, 92); */
  /* padding: 1rem 2rem; */
  text-align: center;
  color: rgb(240, 237, 245);
  padding-top: 1.5rem;
  /* overflow-wrap: anywhere; */

}

.mr-invalid-feedback {
  font-size: 1.8rem;
  font-weight: bold;
  color: red;
}

/* begin btn-outline-info from bootstrap.min.css */
.btn-outline-info {
  color: #17a2b8;
  border-color: #17a2b8;
}
  
 .btn-outline-info:hover {
  color: #fff;  
  background-color: #17a2b8;  
  border-color: #17a2b8;
}
    
 .btn-outline-info:focus, 
 .btn-outline-info.focus {
   box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
  }
   
 .btn-outline-info.disabled, 
 .btn-outline-info:disabled {
   color: #17a2b8;
   background-color: transparent;
  }
 
 .btn-outline-info:not(:disabled):not(.disabled):active, 
 .btn-outline-info:not(:disabled):not(.disabled).active,
 .show > .btn-outline-info.dropdown-toggle {
   color: #fff;  
   background-color: #17a2b8;  
   border-color: #17a2b8;
  }
   
 .btn-outline-info:not(:disabled):not(.disabled):active:focus, 
 .btn-outline-info:not(:disabled):not(.disabled).active:focus,
 .show > .btn-outline-info.dropdown-toggle:focus {
   box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
 }

/* end btn-outline-info from bootstrap.min.css */

.mr-post-content p {
  font-size: 2rem;
  padding: 0.4rem 0rem 0.4rem 0rem;
}

.mr-white-box {

  background-color:rgb(245, 245, 245);
  color: rgb(34, 41, 41);
  border: 0.1rem solid rgb(206, 202, 202);
  border-top-right-radius:5px;
  border-top-left-radius:5px;
  border-bottom-right-radius:5px;
  border-bottom-left-radius:5px;
  padding: 0.8rem;
  overflow-wrap: anywhere;
}

.mr-update-del-btns {

  padding: 0.3rem;
  text-align: left;
}
/* fix the update button (which is an anchor) so it matches the delete btn's width and it does not underline the link */
.mr-update-del-btns a {
  text-decoration: none;
   width:65px;
}
/* Portfolio */
.portfolio {
  display: grid;
  grid-gap: 20px;
  /* orig */
  /* grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); */
  grid-template-columns: 1fr repeat(2, minmax(auto, 20em)) 1fr;
  border-bottom: 20px solid white;
}

.portfolio img {
  width: 100%;
  /* box-shadow: var(--shadow); */
}

/* ---------------- begin picture grid (not in use, but keep)  --------------------- */
.mr-four-picture-grid {
  display: grid;
  /* this guy makes them huge */
  /* repeat the pattern over and over */
  /* auto fit means browser you figure out how many times it will fit in the space available  */
  /* pattern: minmax 200 to 1fr, i want you to make a col min 200px and mx 1fr */
  /*  */
  /* grid-template-columns: repeat(auto-fit minmax(200px, 1fr)); */
  /* this guy makes them fit 240px */
  
  grid-template-columns: repeat(auto-fill, minmax(675px, 1fr));
  justify-items: center;
  /* grid-gap: 5px; */
  /* grid-row-gap: 5px; */
}

.mr-picture-grid-box img {
  display:block;
  width: 100%;
  /* box-shadow: 1px 0px 0px rgba(0,0,0,0.06); */
}




.mr-picture-grid-box-large {
  grid-column: span 2;
  grid-row: span 2;
} 

.mr-picture-grid-box-large img {
  display:block;
  width: 100%;
} 


.mr-codigo-width-hack {
  width:31rem;
}

.mr-form-control-hack {
  /* font-size: 1.2rem; */
  width:21rem;
}

.mr-bg-image {
  /* position: absolute; */
  /* background: #333 */
  /* url("https://static.pexels.com/photos/248515/pexels-photo-248515.png"); */
  /* background-position: center; */
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 450px;
  z-index: -1;
  opacity: 0.6;
}


/* ------------------------------------------------ */
/* ---------- pc  MEDIA less than 991 ------------- */
/* ------------------------------------------------ */
@media (max-width: 991px){
    /* body {display:none;}  */
    .mr-four-picture-grid{
      grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
    }
}

/* ------------------------------------------------ */
/* ------- tablet  MEDIA when less than 767 ------- */
/* ------------------------------------------------ */
@media (max-width: 767px) {
  /* body {display:none;}  */
  .mr-four-picture-grid{
    grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
  }


  .mr-btn-overload {
    margin: 0.3rem 0.3rem 0.3rem 0.3rem;
    text-decoration: none;
    /* width: 10rem; */
  }    
}


/* ------------------------------------------------ */
/* --------- mobile MEDIA when less than 575 ------ */
/* ------------------------------------------------ */
@media (max-width: 575px) {
  /*less than */
  /* to debug */  /* body {display:none;} */

  .mr-four-picture-grid {
    
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    /* grid-template-columns: repeat(auto-fill, minmax(100px, 1fr)); */
  }

  .mr-span-one-col {
    grid-column: span 2/4;
  }

  /* on mobile view we don't want margins */
  .mr-thick {
    /* grid-gap: 0px; */
  }

  /* on mobile view we don't want margins */
  .mr-thin {
    grid-gap: 0px;
  }
  

  .mr-sucursal-content {
    padding: 0.2em 0em 0.5em 0.5em;
  }

  .mr-flex-row {
    display: block;
  }

  /* when in mobile, padding top and bottom looks weird */
  .mr-flex-col{
    padding: 0em 0.5em 0em 0.5em;
    
  /* display: block; */
    /* width: 15rem; */

  }
  .mr-padding {
    padding: 0em 0.5em 0em 0.5em;
    /* background-color: whitesmoke; */
  }

  .mr-codigo-width-hack {
    width:31rem;
  }

  .mr-form-control-hack {
    font-size: 1.5rem;
  }

  .mr-account-img {
    /* height: 125px; */
    float: left;
    width: 5rem;
    height: 5rem;
  }

  .mr-span-two-col  p,
  .mr-span-one-col p {
    text-align:left;
    font-size: 1.4rem;
  }

  .mr-span-two-col  h5,
  .mr-span-one-col h5 {
    text-align:left;
    font-size: 1.5rem;
  }

  .mr-span-two-col h4,
  .mr-span-one-col  h4 {
    text-align:left;
    font-size: 1.4rem;
  } 

}


