/*
Theme Name: Hello Elementor Child
Description: Custom child theme for Restaurant Riedbad
Template: hello-elementor
Version: 1.0.0
Text Domain: hello-child
*/

html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

/* Button Reversed Hover */
.btn-reversed--orange .elementor-button:hover {
  border-color: #c0422fcc !important;
}

.btn-reversed--white .elementor-button:hover {
  border-color: #ffffffd1 !important;
}

/* Event loop item clock icon  */
.event-clock-icon {
  padding: 0 !important;
}

.event-loop-info {
  height: 224px !important;
}

.event-info-text {
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  max-height: 4ch;
}

.events-preview-grid .elementor-widget-container .elementor-loop-container {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.event-loop-date div {
  overflow-wrap: break-word;
}

.footer-link div p a {
  color: #ffffff !important;
}

/* Contact page */
.contact-form-container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 49px;
  row-gap: 10px;
  width: 80%;
  margin: 0 auto;
}

.contact-field p label {
  width: 100%;
}

.contact-field p label span input,
.contact-field p label span textarea {
  border: solid 1px rgba(34, 34, 34, 0.3);
  border-width: 0 0 1px 0;
  border-radius: 0;
  font-family: "Inter", Sans-serif;
  font-size: 1.375rem;
  font-weight: 400;
  line-height: 1.5em;
  letter-spacing: 0.01em;
  color: #444444;
}

.contact-field p label span textarea {
  resize: none;
  height: 8rem;
}

/* Style placeholder text */
.contact-field p label span input::placeholder,
.contact-field p label span textarea::placeholder {
  font-family: "Inter", Sans-serif;
  font-size: 1.375rem;
  font-weight: 400;
  line-height: 1.5em;
  letter-spacing: 0.01em;
  color: rgba(34, 34, 34, 0.85);
}

/* Input fields focus */
.contact-field p label span input:focus,
.contact-field p label span textarea:focus {
  outline: none;
  border: solid 1px rgba(34, 34, 34, 0.6);
  border-width: 0 0 2px 0;
  border-radius: 0;
}

/* Input field hints / errors */
.contact-field p label span .wpcf7-not-valid-tip {
  font-family: "Inter", Sans-serif;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5rem;
  letter-spacing: 0.01rem;
  color: #c0422f;
}

.contact-field.field-message {
  margin-bottom: 35px;
}

.wpcf7-response-output {
  border-color: #c0422f !important;
  font-family: "Inter", Sans-serif !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  letter-spacing: 0.01em !important;
  color: #444444 !important;
  width: 80% !important;
  margin: 20px auto !important;
  text-align: center !important;
}

/* Contact form submit button */
.contact-form-container p .wpcf7-submit {
  font-family: "Inter", Sans-serif;
  font-size: 1.125rem;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0em;
  background-color: #c0422f;
  color: #ffffff;
  border: none;
  border-radius: 0;
  outline: none;
  padding: 18px 54px 18px 54px;
  grid-column: 1/3;
}
.contact-form-container p {
  display: flex;
  justify-content: center;
  grid-column: 1/3;
}

.contact-form-container p .wpcf7-submit:hover {
  background-color: rgba(192, 66, 47, 0.85);
}

.col-1 {
  grid-column: 1/3;
}

/* Remove spinner from flow and position besides the button */
.contact-form-container p {
  position: relative;
}
.wpcf7-spinner {
  position: absolute;
  right: 32%;
  top: 50%;
  transform: translateY(-50%);
}

/* Mobile Menu */
.elementor-menu-toggle {
  margin: 0 !important;
  justify-content: end !important;
}

.elementor-nav-menu--dropdown.elementor-nav-menu__container {
  top: 70px !important;
}

/* MEDIA QUERIES */

@media (max-width: 1585px) {
  #main-heading .elementor-widget-container .elementor-heading-title {
    font-size: 3.75rem;
  }

  .header-menu-item
    .elementor-widget-container
    .elementor-button-wrapper
    .elementor-button
    .elementor-button-content-wrapper
    .elementor-button-text {
    font-size: 1rem;
  }

  .elementor-widget-theme-site-logo .elementor-widget-container a img {
    width: 250px !important;
    height: 250px !important;
  }

  .elementor-element.e-con-full.logo-container {
    min-height: 250px;
  }
}
@media (max-width: 1425px) {
  #main-heading .elementor-widget-container .elementor-heading-title {
    font-size: 3rem;
  }

  .heading-2.elementor-widget
    .elementor-widget-container
    .elementor-heading-title.elementor-size-default {
    font-size: 2.2rem;
  }
}

/* Reduce left right padding of sections and header / footer because of colliding text in the header */
@media (max-width: 1366px) {
  .page-content .elementor .page-section,
  .elementor .elementor-element.page-section {
    padding-left: 40px;
    padding-right: 40px;
  }

  .heading-rooms .elementor-widget-container p {
    font-size: 1.8rem;
  }

  /*
  .elementor-widget-theme-site-logo .elementor-widget-container {
    max-width: 75%;
  }
  */

  .elementor .page-section .social-icons {
    flex-direction: row;
    align-items: center;
    bottom: -50px;
    column-gap: 30px;
  }
  .elementor .page-section .social-icons .social-icon,
  .elementor
    .page-section
    .social-icons
    .social-icon
    .elementor-widget-container
    img,
  .elementor
    .page-section
    .social-icons
    .social-icon
    .elementor-widget-container {
    padding: 0;
    margin: 0;
  }
  .elementor .page-section .social-icons .social-icon.line {
    transform: rotate(90deg);
    margin-right: 30px;
  }

  .events-preview-grid .elementor-widget-container .elementor-loop-container {
    grid-template-columns: repeat(1, minmax(0, 1fr));
    padding: 0 15%;
  }
}

@media (max-width: 1024px) {
  .elementor-nav-menu .menu-item a {
    padding: 0px 10px;
  }

  .elementor-nav-menu__container .elementor-nav-menu .menu-item {
    display: flex;
    justify-content: center;
  }

  .events-preview-grid .elementor-widget-container .elementor-loop-container {
    padding: 0;
  }

  .contact-form-container {
    grid-template-columns: 1fr;
    width: 100%;
  }

  .contact-form-container p .wpcf7-submit {
    grid-column: 1/2;
  }

  .contact-form-container p {
    grid-column: 1/2;
  }

  .col-1 {
    grid-column: 1/2;
  }

  /*
  .elementor-widget-theme-site-logo .elementor-widget-container {
    max-width: 100%;
  }
  */
}

@media (max-width: 767px) {
  /*
  .elementor-widget-theme-site-logo .elementor-widget-container {
    max-width: 100%;
  }
  */

  .elementor-nav-menu .menu-item a {
    height: 70px;
  }

  .heading-rooms .elementor-widget-container p {
    font-size: 1.4rem;
  }

  #main-heading .elementor-widget-container .elementor-heading-title {
    font-size: 2.2rem;
    line-height: 3.6rem;
  }

  .heading-2.elementor-widget
    .elementor-widget-container
    .elementor-heading-title.elementor-size-default {
    font-size: 2rem;
  }

  .contact-field p label span input,
  .contact-field p label span textarea {
    font-size: 1.1rem;
  }

  /* Style placeholder text */
  .contact-field p label span input::placeholder,
  .contact-field p label span textarea::placeholder {
    font-size: 1.1rem;
  }
}

/*== MEDIA QUERIES ==*/
