@import url("bootstrap/bootstrap.css");
@import url("colors.css");


body{
  background-image:url('./img/background.png');
  background-size:cover;
  background-position:center;
}

#banner{
  min-height:200px;
  height:23vh;
  height:23dvh;
  background-image:url('./img/banner.png');
  background-position:center;
  background-size:cover;

}

main{
    padding-bottom:3em;
}

h1,h2,h3,h4,h5,.nav-link,.btn,.blockquote-footer{
  font-family:var(--headerFont);
}

h5{
  font-size:3em;
  text-shadow:var(--textShadow);
}

.container.full{
  padding:0;
  min-height:100vh;
  min-height:100dvh;
  border:3px dashed var(--bggradient);
  border-top:0;
  border-bottom:0;
  position:relative;

  transition: max-width var(--transition);
  filter:var(--layoutShadow);
}

main{
    position:relative;
    height:100%;
    z-index:2;
}

.container.full:before{
  width:100%;
  height:100%;
  content:"";
  background-image:url('./img/ship.png');
  background-size:100%;
  background-repeat:no-repeat;
  background-position:bottom center;
  position:absolute;
  left:0;
  top:0;
  mix-blend-mode: overlay;
  opacity:0.25;
  z-index:-1;
  background-attachment: fixed;
}

.review-holder{
  margin-top:2em;
}

.review-holder p{
  font-size:1.25em;
}

.review-holder .row{
  row-gap:2em;
}

footer.blockquote-footer{
  text-align:right;
  padding:0.75em;
  padding-right:1em;
  font-size:1.5em;
  font-variant:small-caps;

}

/* MAIN PAGE */
.container-main{
  padding-top:1em;
  font-size:0.8em;
  transition:width var(--transition);

}




.container-main{
  filter:var(--boxShadow);
}

.container-main .card-body{
  padding-bottom:4em;
}

.card-body p{
    text-indent:1em;
}

#reviews-content .card{
border-radius:0;
  border:2px dashed var(--darkcardborder);
}

#reviews-content .about-img{
      border-radius:0;
      filter:sepia(0.66) brightness(0.75);
      transition:var(--transition);
}

#reviews-content .about-img:hover{
      border-radius:0;
      filter:sepia(0) brightness(1);
}

#reviews-content .col-2,#reviews-content .col-10{
  padding:0;
}

.btn-bottom{
  text-align:right;
  position:absolute;
  bottom:1em;
  right:1em;
}

.front-container{
  display:grid;
  grid-template-columns:100%;
  row-gap:1em;
  align-self:center;
  transition:width var(--transition) padding var(--transition);
}

.front-container .card{
width:100%;
}

.main-page-nav ul{
  list-style-type:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:100%;
  row-gap:1em;
  padding-top:2em;

}

.main-page-nav a{
  display:block;
  width:100%;
  padding:1em;
  box-shadow:var(--boxShadow);
}



/* carousel nonsense */



#main-carousel .carousel-item,#main-carousel .carousel-inner{
  height:calc(50vh - 7em);
  height:calc(50dvh - 7em);
      margin-bottom:2em;
}



.carousel-img{
  background-image:var(--img);
  background-size:cover;
  background-position:center;
  display:flex;
  height:100%;
  width:100%;
  border-radius:15px;
}

/* forms nonsense */
.form-holder label{
  display:grid;
  grid-template-columns:5em auto;
  column-gap:1em;
}

.form-holder label span{
  text-align:right;
  display:block;
  font-weight:bold;
  font-variant:small-caps;
}

.form-holder{
  width:80%;
  margin:auto;

}

.form{
  border: 2px dashed var(--darkcardborder);

  background-color: var(--darkcard);
  color: var(--darktext);
  padding:1em;
}

.submit-btn{
  text-align:center;

  display:block;
  margin-top:1em;
}

.submit-btn input{
    min-width:33%;
    text-transform:uppercase;
    font-weight:bold;

}

.message-body{
  height:8em;
}


/* about nonsense */

.about-img{
  background-image:var(--img);
  background-size:cover;
  background-position:center;
  height:100%;
  width:100%;
  border-radius:15px;
  min-height:30vh;
  min-height:30dvh;


}

.front-container.about{
  min-height:20vh;
  min-height:20dvh;

}

.row.about{
  min-height:30vh;
  min-height:30dvh;
    margin-bottom:2em;

}

.row.about{
padding:1em;
padding-top:0;
padding-bottom:0;
row-gap:1em;
}

#gallery-content img,.gallery-links .img{
  border-radius:15px;
  filter:sepia(0.66) brightness(0.75);
  transition:var(--transition);
  margin-bottom:0.5em;
}

#gallery-content .col-4{
  padding:0.25em;
}

#gallery-content img:hover,.gallery-links .img:hover{
    filter:sepia(0) brightness(1);
    cursor:pointer;
}

@media screen and (max-width:992px){
  .front-container.about{
    min-height:32vh;
    min-height:32dvh;
  }
  .row.about{
    min-height:35vh;
    min-height:35dvh;
    padding:1em;
  }


}

@media screen and (min-width:992px){
  .container-main{
    margin:auto;
    padding-left:2em;
    padding-right:2em;
  }

  #reviews-content .row{
    padding-left:4em;
    padding-right:4em;
    margin:auto;
  }
}

@media screen and (min-width:1100px){
  .container-main{
    margin:auto;
    max-width:80em;
  }

  #reviews-content .row{
    max-width:75em;
  }
}

/* navigation nonsense */

nav{
  background-color:var(--navbar);
  font-size:1.1em;
  text-transform:uppercase;
  font-weight:600;
  padding:0.5em;
}


@media screen and (max-width:992px){
  .container.full{
    max-width:unset;
    border:0;
  }

  nav{
    position:sticky;
    top:0;
    z-index:2;
    font-size:1.1em;
    padding-left:0.5em;
    padding-right:0;
  }

  .nav-link{
    padding:0.75em;
  }

  #main-carousel .carousel-item,#main-carousel .carousel-inner{
    height:calc(50vh - 2em);
    height:calc(50dvh - 2em);
    margin-bottom:2em;
  }

  #reviews-content{
    padding:1em;
  }

  #reviews-content .row{
    margin:auto;
  }

  #reviews-content .about-img{
    transform:none;
    border-radius:0;
  }

  #reviews-content .col-2,#reviews-content .col-10{
    padding:0;
  }

  .front-container{
    padding-bottom:1em;
  }
}

@media screen and (max-width:600px){
  nav{
    position:sticky;
    top:0;
    z-index:2;
    font-size:0.75em;
    padding-left:0.5em;
    padding-right:0;
  }

  .nav-link{
    padding:0.75em;
  }
}



/* gallery stuff */

.gallery-links {
  display:grid;
  row-gap:1em;
  column-gap:1em;
  margin-top:2em;
}

.gallery-links a{
  width:90%;
  font-size:2em;
  margin:auto;
  display:block;
  text-align:center;
  text-decoration:none;
  font-variant:small-caps;
  font-family: var(--headerFont);
}

.gallery-links .img{
  height:4em;
  background-image:var(--img);
  background-size:cover;
  background-position:center;
  display:flex;
  justify-content:center;
  align-items:center;
}

.gallery-links a span{
  filter:drop-shadow(1px 1px var(--navbar)) drop-shadow(-1px 1px var(--navbar)) drop-shadow(1px -1px var(--navbar)) drop-shadow(-1px -1px var(--navbar))
  drop-shadow(2px 2px var(--navbar)) drop-shadow(-2px 2px var(--navbar)) drop-shadow(2px -2px var(--navbar)) drop-shadow(-2px -2px var(--navbar));
}

.modal {
  display: none;
  position: fixed;
  z-index: 5;
  padding-top: 100px;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgb(0,0,0);
  background-color: rgba(0,0,0,0.9);
}


.modal-content {
  margin: auto;
  display: block;
  width: 80%;
  max-width: 75em;
}


#caption {
  margin: auto;
  display: block;
  width: 80%;
  max-width: 75em;
  text-align: center;
  color: #ccc;
  padding: 10px 0;

}

#title {
  margin: auto;
  display: block;
  width: 80%;
  max-width: 75em;
  text-align: center;
  color: #ccc;
  padding: 10px 0;
  font-size:1.2em;
  font-variant:small-caps;
}

/* Add Animation - Zoom in the Modal */
.modal-content, #caption,#title {
  animation-name: zoom;
  animation-duration: 0.6s;
}

@keyframes zoom {
  from {transform:scale(0)}
  to {transform:scale(1)}
}

/* The Close Button */
.close {
  position: absolute;
  top: 15px;
  right: 35px;
  color: #f1f1f1;
  font-size: 40px;
  font-weight: bold;
  transition: 0.3s;
  z-index:50;
}

.close:hover,
.close:focus {
  color: #bbb;
  text-decoration: none;
  cursor: pointer;
}

/* 100% Image Width on Smaller Screens */
@media only screen and (max-width: 700px){
  .modal-content {
    width: 100%;
  }
}
