/*------------------
    General styles
------------------*/
body {
  padding: 0;
  margin: 0;
  font-family: "Open Sans", sans-serif;
}
h1,
h2 {
  color: #03045e;
  font-weight: bold;
}
.row {
  padding: 0;
  margin: 0;
}
.container-fluid {
  padding: 1rem;
}
/*============================
    ##  Contact Navigation
=============================*/
.contact_nav {
  background-color: #03045e;
  padding: 15px 0;
  position: sticky;
  top: 0;
  z-index: 3;
  color: #caf0f8;
}
.contact_nav .container {
  padding-top: 0;
  padding-bottom: 0;
}
.contact_nav p {
  font-size: 1.5em;
  margin: 0;
}
.contact_nav a {
  color: #fff;
}
/*------------------
    Header styles
------------------*/
header {
  background: linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.2)),
    url(../img/home.jpg) center center/cover;
  color: #fff;
}
.header_box_wrapper {
  background: rgba(255, 255, 255, 0.25);
  box-shadow: 0 8px 32px 0 rgba(31, 38, 135, 0.37);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  width: fit-content;
  padding: 2rem 1rem;
}
.header_box {
  padding: 7% 0;
}
header h1 {
  font-size: 3rem;
  text-transform: capitalize;
  font-weight: 900;
}
/*------------------
    why us
------------------*/
.why-us {
  padding: 50px 0;
}
.why-us h2 {
  padding: 20px 0;
}
.feature {
  margin: 10px 0;
}
.feature span i {
  font-size: 3em;
  padding: 10px;
  border: 1px solid #caf0f8;
  border-radius: 50%;
  background-color: #caf0f8;
  margin-bottom: 1rem;
  color: #fff;
}
.feature span.long i {
  padding: 10px 20px;
}

/*------------------
    quote-reserve
------------------*/
.quote-reserve {
  background-color: #48cae4;
  color: #fff;
  padding: 50px 0;
}
.quote-reserve p {
  font-size: 1.3em;
}
/*------------------
    services
------------------*/
.services {
  padding: 50px 0;
}
.services h2 {
  padding: 30px 0;
}
.service-card {
  margin: 10px 0;
}
.service-card img {
  width: 100%;
}
.service-card:nth-of-type(even) .scard-text {
  border-left: 1px solid #dfdfd0;
  border-right: 1px solid #dfdfd0;
}
.scard-text {
  padding: 20px;
}
.scard-text h3 {
  font-size: 1.3em;
  text-transform: capitalize;
}
.scard-text p {
  text-align: justify;
}

/*------------------
    quote
------------------*/
.quote {
  background: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)),
    url(../img/q1.jpg) fixed center center/cover;
  color: #fff;
  padding: 50px 0;
  text-align: center;
}
.checked {
  color: orange;
}
.quote cite {
  font-size: 1.3em;
}
.quote p {
  font-size: 3vh;
}
.quote p:after {
  content: "\201E";
  color: orange;
  font-size: 2em;
  font-family: "Times New Roman", Times, serif;
  font-weight: 900;
}
.quote p:before {
  content: "\201C";
  color: orange;
  font-size: 2em;
  font-family: "Times New Roman", Times, serif;
  font-weight: 900;
}
/*------------------
    footer
------------------*/
footer {
  background-color: #03045e;
  color: #caf0f8;
}
footer h2 {
  color: #fff;
}
.upper-footer {
  padding: 50px 0;
}
footer a {
  color: #caf0f8;
  font-size: 1rem;
}
footer a:hover {
  color: #fff;
  text-decoration: none;
}
footer i {
  font-size: 1.3em;
  margin-right: 5px;
}
.lower-footer {
  background-color: rgb(8, 8, 8);
  padding: 1rem 0 3rem;
}

/*Success page
------------------*/

/*=============================
    Quote & Reservation pages
==============================*/
header.quote_header {
  background: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.4)),
    url(../img/quote.jpg) center center/cover;
}
header.reservation {
  background: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.4)),
    url(../img/reservation.jpg) center center/cover;
}
header.testimonial {
  background: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.4)),
    url(../img/testimonials.jpg) center center/cover;
}
.testimonials-page-section {
  padding: 50px 0;
}
/*--------------------
    Submit a review
---------------------*/
.submit-review input,
.submit-review textarea {
  display: block;
  border: 1px solid #ddd;
  border-radius: 5px;
  padding: 10px;
  color: #ddd;
}
.submit-review label {
  margin-top: 20px;
  color: #ddd;
}
.submit-review textarea {
  width: 100%;
  height: 250px;
}
/*---------------------
    rating stars
---------------------*/
.rate {
  float: left;
  height: 46px;
  padding: 0 10px;
}
.rate:not(:checked) > input {
  position: absolute;
  top: -9999px;
}
.rate:not(:checked) > label {
  float: right;
  width: 1em;
  overflow: hidden;
  white-space: nowrap;
  cursor: pointer;
  font-size: 30px;
  color: #ccc;
}
.rate:not(:checked) > label:before {
  content: "★ ";
}
.rate > input:checked ~ label {
  color: #ffc700;
}
.rate:not(:checked) > label:hover,
.rate:not(:checked) > label:hover ~ label {
  color: #deb217;
}
.rate > input:checked + label:hover,
.rate > input:checked + label:hover ~ label,
.rate > input:checked ~ label:hover,
.rate > input:checked ~ label:hover ~ label,
.rate > label:hover ~ input:checked ~ label {
  color: #c59b08;
}
.submit-review h4 {
  margin-top: 20px;
}

/*Contact page
====================*/
header.contact {
  background: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.4)),
    url(../img/call.jpg) center center/cover;
}
main.contact-page {
  padding: 50px 0;
}
.contact-info h2,
.send-message h2 {
  padding: 10px 0 30px;
  font-size: 2em;
}
.contact-info i {
  font-size: 1.5em;
}
.contact-info a {
  font-size: 1.2em;
  color: rgb(76, 93, 109);
}
.contact-info a:hover {
  color: #48cae4;
}

/*--------------------
    Send-message
--------------------*/

.send-message input,
.send-message textarea {
  display: block;
  border: 1px solid #ddd;
  border-radius: 5px;
  padding: 10px;
  color: #ddd;
}
.send-message label {
  margin-top: 20px;
  color: #ddd;
}
.send-message textarea {
  width: 100%;
  height: 250px;
}

header.response {
  background: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.4)),
    url(../img/response.jpg) top center/cover;
}
section.response {
  text-align: center;
  padding: 7% 0;
}
section.response img {
  width: 50%;
}
@media (max-width: 1024px) {
  header h1 {
    font-size: 1.5rem;
  }
}
