@charset "UTF-8";
/* pageo
  v 2.0 - 08-2023
*/
/* pageo
  v 2.0 - 08-2023
*/
body {
  margin: 0;
  font-family: urw-din, Source Sans Pro, Sans-Serif;
}

.about_us {
  background-color: #FFFFFF;
  height: 100%;
  padding-bottom: 80px;
}

.about_copy_image {
  max-height: 600px;
  background-position: center;
  background-position: top;
  background-image: url("../images/weddings/background_blur/bg_01_desktop.png");
  background-color: #FFFFFF;
  background-repeat: no-repeat;
  background-size: 1280px auto;
}

.about_image_copy {
  max-height: 600px;
  background-position: center;
  background-position: top;
  background-image: url("../images/weddings/background_blur/bg_02_desktop.png");
  background-color: #FFFFFF;
  background-repeat: no-repeat;
  background-size: 1280px 600px;
}

.about_image_copy .about_left_image {
  order: 1;
}

.about_image_copy .about_right_copy {
  order: 2;
}

.about_left_copy .h1b, .about_right_copy .h1b {
  padding-bottom: 32px;
}

.about_row {
  max-width: 1220px;
  display: flex;
  height: 700px;
  align-items: center;
  justify-content: center;
  align-content: center;
  margin: auto;
}

/* OUR STORY */
.about_left_copy {
  float: left;
  width: 50%;
  padding: 40px;
}

.about_right_image {
  float: right;
  height: 600px;
  width: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-left: 100px;
}

/* THE FARM */
.about_right_copy {
  float: right;
  width: 50%;
  padding: 40px;
}

.about_left_image {
  float: left;
  height: 600px;
  width: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-right: 100px;
}

.about_left_image img, .about_right_image img {
  width: 800px;
  border-radius: 8px;
}

.about_right_image img {
  float: left;
  width: 800px;
  padding-left: 80px;
}

.about_left_image img {
  float: left;
  padding-right: 80px;
  width: 800px;
}

@media screen and (max-width: 1150px) {
  .about_us {
    background-color: #FFFFFF;
    height: 100%;
    padding: 0px 0px 80px 0px;
  }
  .about_left_copy {
    min-width: 400px;
    text-align: left;
    float: left;
    margin: auto;
    padding: 40px 60px 40px 20px;
  }
  .about_right_copy {
    min-width: 400px;
    text-align: right;
    float: right;
    margin: auto;
    padding: 40px 20px 40px 60px;
  }
  .about_right_image {
    float: left;
    display: flex;
    height: auto;
    position: relative;
    max-width: 400px;
    min-width: 350px;
  }
  .about_right_image img {
    float: left;
    width: 700px;
    padding-left: 60px;
  }
  .about_left_image img {
    float: left;
    padding-right: 60px;
    width: 700px;
  }
  .about_left_image {
    float: right;
    display: flex;
    height: auto;
    position: relative;
    max-width: 400px;
    min-width: 350px;
  }
  .about_right_copy .h1b {
    text-align: left;
  }
}
@media screen and (max-width: 800px) {
  .about_us {
    background-color: #FFFFFF;
    height: 100%;
    padding: 80px 0px 80px 0px;
  }
  p {
    font-size: 20px;
    line-height: 30px;
  }
  .about_image_copy .about_left_image {
    order: 2;
  }
  .about_image_copy .about_right_copy {
    order: 1;
  }
  .about_row {
    display: flex;
    flex-direction: column;
    height: auto;
  }
  .about_copy_image {
    max-height: 100%;
  }
  .about_image_copy {
    max-height: 100%;
    padding-top: 80px;
  }
  .about_left_copy {
    width: auto;
    margin: auto;
    padding: 0px 20px 60px 20px;
    height: 100%;
  }
  .about_right_copy {
    float: left;
    width: auto;
    margin: auto;
    padding: 0px 20px 60px 20px;
    height: 100%;
  }
  .about_right_copy .h1b, .about_left_copy .h1b {
    text-align: left;
    font-size: 48px;
    line-height: 48px;
    padding-bottom: 20px;
    padding-left: 60px;
  }
  .about_right_copy p, .about_left_copy p {
    text-align: left;
    padding-right: 60px;
    padding-left: 60px;
    font-size: 20px;
    line-height: 30px;
  }
  .about_right_image, .about_left_image {
    max-width: 100%;
    height: 100%;
    padding-left: 0px;
    padding-right: 0px;
  }
  .about_right_image img, .about_left_image img {
    float: left;
    padding: 0;
    height: auto;
    width: 100vw;
    overflow: hidden;
    text-align: center;
    border-radius: 0;
  }
}
@media screen and (max-width: 600px) {
  .about_us {
    background-color: #FFFFFF;
    height: 100%;
    padding: 60px 0px 0px 0px;
  }
  .about_right_copy p, .about_left_copy p {
    text-align: center;
    padding: 0px 20px 0px 20px;
    font-size: 18px;
    line-height: 28px;
    letter-spacing: 0.5px;
  }
  .about_right_copy .h1b, .about_left_copy .h1b {
    text-align: center;
    font-size: 48px;
    line-height: 48px;
    padding-bottom: 20px;
    padding-left: 0px;
  }
  .about_right_image, .about_left_image {
    float: left;
    padding-left: 0px;
    padding-right: 0px;
    height: 300px;
    width: 100vw;
    overflow: hidden;
    text-align: left;
  }
  .about_right_image img, .about_left_image img {
    float: left;
    padding: 0;
    height: auto;
    overflow: hidden;
    text-align: left;
    position: left;
    border-radius: 0;
  }
}
/* pageo
  v 2.0 - 08-2023
*/
/* @use 'get_in_touch'; */
.helptext {
  display: block;
  padding: 12px 0px 0px 0px;
  line-height: 12px;
  float: right;
}

label {
  padding-top: 20px;
}

.form_container label,
.form_container legend {
  font-family: Courier new, Roboto;
  font-size: 16px;
  text-align: left;
  float: left;
  text-shadow: none;
  height: auto;
  display: inline-block;
  padding: 8px 0px;
  border: none;
}

.field_char,
.field_int,
.field_decimal,
.field_select,
.field_float,
.field_picker,
.field_image,
.field_description {
  line-height: 30px;
  font-family: urw-din, Helvetica Neue, Sans-Serif;
  font-size: 16px;
  padding: 8px 14px;
  height: 56px;
  width: 100%;
  white-space: pre-wrap;
  color: #333;
  background-color: #EEEEEE;
  border: none;
  resize: none;
  vertical-align: top;
}

.field_select {
  appearance: none;
  cursor: pointer;
}

.field_description {
  height: 164px;
  overflow: scroll;
}

.field_image {
  padding: 14px;
  height: auto;
}

.field_small {
  font-family: urw-din, Helvetica Neue, Sans-Serif;
  font-style: normal;
  color: #333;
  font-weight: 400;
  letter-spacing: 1px;
  list-style-type: none;
  font-size: 12px;
  text-decoration: none;
  margin: 0px;
  padding: 4px 12px;
  border-radius: 3px;
  line-height: 26px;
  background-color: #EEEEEE;
  width: fit-content;
  border: none;
  resize: none;
  height: min-content;
}

#postform {
  max-width: 600px;
}

#id_tags_helptext {
  display: none;
}

.file-input {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
}

#button_group_home {
  padding-bottom: 0px;
  align-items: center;
  display: flex;
  flex-flow: row wrap;
  gap: 40px;
  justify-content: center;
}

.button_home {
  display: block;
  width: 245px;
  font-family: urw-din, Helvetica Neue, Sans-Serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 64px;
  color: #222;
  background: #DFB9A4;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 2px;
  text-align: center;
}

.button_container_modal, .button_container_modal form {
  margin: 40px 0px 0px 0px;
  display: flex;
  padding: 40px 0px 0px 0px;
  flex-direction: row;
  border-top: 1px #CCCCCC dotted;
  gap: 12px;
  width: 100%;
}

input.button_accent, .button_accent {
  padding: 0px 20px;
  background-color: #8F00FF;
  color: white;
  display: block;
  border-radius: 4px;
  border: none;
  text-align: center;
  cursor: pointer;
  font-family: urw-din, Helvetica Neue, Sans-Serif;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 3px;
  font-weight: 400;
  line-height: 56px;
}

.button_secondary {
  padding: 0px 20px;
  background-color: #e0e0e0;
  color: #222;
  display: block;
  border-radius: 4px;
  border: none;
  text-align: center;
  cursor: pointer;
  font-family: urw-din, Helvetica Neue, Sans-Serif;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 3px;
  font-weight: 400;
  line-height: 56px;
}

.form_field {
  padding-top: 20px;
}

.form_block {
  max-width: 800px;
  margin: auto;
  padding: 200px 0px;
}

.form_container {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

@media screen and (max-width: 1000px) {
  .form_block {
    padding: 160px 20px;
  }
}
/* Day pikcer */
fieldset {
  border: none;
}

.field_picker {
  display: flex;
  flex-direction: row;
  height: 100%;
  justify-content: space-evenly;
}

@media screen and (max-width: 1000px) {
  .field_picker {
    display: flex;
    flex-direction: column;
    height: 100%;
  }
}
.field_picker input {
  height: 56px;
}

.field_picker label {
  font-family: Courier new, Roboto;
  font-size: 14px;
  text-align: left;
  float: left;
  text-shadow: none;
  height: auto;
  display: inline-block;
  padding: 8px 0px;
  border: none;
}

.select_wrapper {
  position: relative;
  display: inline-block;
  width: 100%;
}

.select_wrapper select {
  appearance: none;
  padding-right: 30px; /* Make space for the arrow */
  /* Add other styles for the select element */
}

.select_wrapper::after {
  content: "▼"; /* Unicode down arrow */
  /*   content: url("next_arrow.svg"); */
  position: absolute;
  font-family: Courier new, Roboto;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  pointer-events: none;
  height: 20px;
  width: 20px;
  color: #888888;
  /*   transform: rotate(90deg); */
  /* Add other styles for the arrow */
}

@media screen and (max-width: 600px) {
  .form_block {
    padding: 120px 20px 160px 20px;
  }
}
/***** MODAL DIALOG ****/
#modal {
  position: fixed;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 30000;
  display: flex;
  flex-direction: column;
  align-items: center;
  overflow: auto !important;
  padding-bottom: 20px;
  animation-name: fadeIn;
  animation-duration: 60ms;
  animation-timing-function: ease;
}

#modal.show {
  display: flex;
  opacity: 1;
}

#modal > .modal_underlay {
  /* underlay takes up the entire viewport. This is only
  required if you want to click to dismiss the popup */
  position: absolute;
  z-index: -1;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  animation-name: fadeIn;
  animation-duration: 40ms;
  animation-timing-function: ease;
}

#modal > .modal_content {
  width: 80%;
  max-width: 800px;
  border: 20px #FFFFFF solid;
  border-radius: 0px;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.01);
  background-color: white;
  padding: 20px;
  animation-name: fadeInDown;
  animation-duration: 60ms;
  animation-timing-function: ease;
}

.modal.closing {
  /* Animate when closing */
  animation-name: fadeOut;
  animation-duration: 20ms;
  animation-timing-function: ease;
}

.modal.closing > .modal_content {
  /* Animate when closing */
  animation-name: fadeOutUp;
  animation-duration: 20ms;
  animation-timing-function: ease;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 100;
  }
}
@keyframes fadeOut {
  0% {
    opacity: 100;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fadeInDown {
  0% {
    transform: translateY(-100px);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes zoomOut {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(-200px);
  }
}
.modal_inner_content {
  transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;
  position: relative;
  width: auto;
  padding: 20px;
  pointer-events: none;
  background-color: white;
}

.modal_header {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  padding-bottom: 20px;
  gap: 40px;
}

.modal_header h2 {
  padding: 0px;
}

.modal_header img {
  height: 40px;
  width: 40px;
}

.button_container_modal,
.button_container_modal form {
  margin: 40px 0px 0px 0px;
  display: flex;
  padding: 40px 0px 0px 0px;
  flex-direction: row;
  border-top: 1px #CCCCCC dotted;
  gap: 12px;
  width: 100%;
}

@media screen and (max-width: 640px) {
  .button_container_modal,
  .button_container_modal form {
    flex-direction: column-reverse;
  }
}
.button_container_modal .button_accent,
.button_container_modal .button_secondary {
  gap: 12px;
  width: 100%;
}

.modal-open {
  overflow: hidden;
}

.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto;
}

.modal {
  position: fixed;
  top: 0;
  left: 0;
  display: none;
  width: 100%;
  height: 100%;
  overflow: hidden;
  outline: 0;
}

.modal_backdrop {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
}

.modal_backdrop.fade {
  opacity: 0;
}

.modal_backdrop.show {
  opacity: 80;
}

.modal_dialog,
.modal > .modal_dialog {
  text-align: center;
  width: 800px;
  position: absolute;
  padding-bottom: 80px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  /*  position: relative; */
  margin: auto;
  max-width: 800px;
  border: 20px #FFFFFF solid;
  border-radius: 0px;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.01);
  background-color: white;
  padding: 20px;
  /* animation-name: fadeInDown; */
  animation-duration: 400ms;
  animation-timing-function: ease;
  text-align: center;
  border: 1px dashed #222;
}

.modal_dialog_wide {
  width: 100%;
  position: relative;
  margin: auto;
  border: 20px #FFFFFF solid;
  border-radius: 0px;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.01);
  background-color: white;
  padding: 20px;
  animation-name: fadeInDown;
  animation-duration: 100ms;
  animation-timing-function: ease;
}

.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}

#close_x {
  background-color: none;
  cursor: pointer;
}

.errorlist {
  display: none;
}

#modal_image_large {
  padding: 20px;
}

#modal_image_large img {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  max-height: 1200px;
  z-index: 20;
  border-radius: 8px;
  padding: 20px;
  object-fit: contain;
}

.not_visible {
  display: none;
}

.modal_image_enlarged {
  transition: 0.2s;
  box-shadow: 0px 0px 0px #CCC;
  z-index: 1052;
  position: fixed;
  cursor: pointer;
}

#modal_image_large {
  z-index: 1052;
}

#shader {
  width: 100%;
  height: 100%;
  background-color: #222222;
  opacity: 70%;
  z-index: 1051;
  display: none;
  top: 0;
  left: 0;
  position: fixed;
}

body.modal_open {
  overflow: hidden;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

.prod_button {
  width: 100%;
  height: 60px;
  background: #44F4B3;
  border: none;
  margin: 16px auto auto auto;
  text-align: center;
  vertical-align: middle;
  display: inline-block;
  font-size: 14px;
  font-family: urw-din, Source Sans Pro, Sans-Serif;
  letter-spacing: 1.4px;
  padding-bottom: 20px;
  line-height: 60px;
  vertical-align: middle;
  font-weight: 300;
  font-style: normal;
  text-transform: uppercase;
  color: #111;
  cursor: pointer;
}

.prod_button img {
  display: inline-block;
  vertical-align: middle;
  padding: 14px 0px 21px 4px;
}

.prod_grid {
  padding: 0px 20px 100px 20px;
  margin: auto;
  max-width: 1280px;
}

.prod_row_1, .prod_row_2, .prod_row_3 {
  display: flex;
  flex-direction: row;
  gap: 20px;
}

.prod_row_3 {
  padding-top: 20px;
}

.prod_column_0 {
  width: 100%;
  margin: auto;
  margin-bottom: 20px;
  overflow: hidden;
  border: 2px solid #44F4B3;
  background-color: #FFFFF6;
}

.prod_column_0 .prod_container {
  display: block;
  margin: 12px;
  height: 450px;
  overflow: hidden;
  text-align: center;
  background-image: url("../images/giftshop/products/prod_hero2.jpg");
  background-position: center;
  background-position: bottom;
  background-repeat: no-repeat;
  background-size: cover;
}

@media screen and (max-width: 800px) {
  .prod_column_0 .prod_container {
    height: 320px;
  }
}
.prod_column_0 .prod_container img {
  margin: 12px;
  height: 100%;
}

.prod_column_1 {
  width: 33.33%;
  margin: auto;
  border: 2px solid #44F4B3;
  background-color: #FFFFF6;
}

.prod_column_2 {
  width: 50%;
  margin: 20px auto auto auto;
  border: 2px solid #44F4B3;
  background-color: #FFFFF6;
}

.prod_image_container {
  height: auto;
  overflow: hidden;
}

.prod_column_1 img {
  height: auto;
}

.prod_column_1 p, .prod_column_2 p {
  padding: 8px 12px 20px 12px;
  overflow: hidden;
  color: #222222;
  text-align: left;
  font-family: urw-din, Source Sans Pro, Sans-Serif;
  font-weight: 200;
  font-style: normal;
  font-size: 18px;
  line-height: 26px;
}

.prod_column_1 p {
  height: 88px;
}

.prod_column_2 p {
  height: 72px;
}

.prod_column_1 h5, .prod_column_2 h5 {
  padding: 12px 12px 0px 12px;
}

.prod_container {
  height: 100%;
  padding: 12px;
}

.prod_column_1 img, .prod_column_2 img {
  width: 100%;
}

.intro {
  text-align: center;
  max-width: 780px;
  margin: 60px auto 20px auto;
  padding: 0px 40px 60px 40px;
  color: #444444;
}

.intro a {
  text-decoration: none;
  color: #6219FF;
}

.intro a:hover {
  background: #E4F4E9;
}

.intro .outlink_icon {
  vertical-align: middle;
  display: inline-block;
  padding: 0px;
  background: none;
}

@media screen and (max-width: 1200px) {
  .prod_column_1 p, .prod_column_3 p {
    height: 124px;
  }
  .prod_column_2 p {
    height: 80px;
  }
}
@media screen and (max-width: 1000px) {
  .prod_column_1 p, .prod_column_2 p {
    font-size: 16px;
    line-height: 24px;
  }
  .prod_column_1 h5 {
    font-size: 18px;
  }
  .intro h5 {
    padding: 0px 40px 0px 40px;
  }
}
@media screen and (max-width: 800px) {
  .prod_column_1, .prod_column_2 {
    float: left;
    width: 100%;
    margin: auto;
  }
  .intro {
    padding: 0px 20px 40px 20px;
  }
  .prod_row_3 {
    padding-top: 0px;
  }
  .prod_row_1, .prod_row_2, .prod_row_3 {
    display: flex;
    margin-top: 20px;
    flex-direction: column;
    gap: 20px;
  }
  .prod_column_1 p {
    height: 80px;
    font-size: 20px;
    line-height: 30px;
  }
  .prod_column_2 p {
    height: 80px;
    font-size: 20px;
    line-height: 30px;
  }
  .prod_column_1 h5, .prod_column_2 h5 {
    font-size: 24px;
  }
  .prod_image_container {
    height: 260px;
    overflow: hidden;
    position: relative;
  }
  .prod_image_container img {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
  }
}
@media screen and (max-width: 650px) {
  .prod_column_1 p, .prod_column_2 p {
    height: 100px;
    font-size: 20px;
    line-height: 30px;
  }
}
/* pageo
  v 2.0 - 08-2023
*/
/* NAVIGATION  –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
:target::before {
  content: "";
  display: block;
  height: 100px; /* fixed header height*/
  margin: -100px 0 0; /* negative fixed header height */
}

/* TOP NAV BAR */
.topnav_fixed {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 10000;
  background: #FFF;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.1);
}

.topnav {
  overflow: hidden;
  max-width: 1280px;
  padding: 34px 24px 34px 24px;
  margin: auto;
  background-color: #FFFFFF;
}

.topnav a {
  float: left;
  display: block;
  color: #333;
  text-align: center;
  text-decoration: none;
  font-family: Baskerville-URW, Source Serif Pro, Georgia;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 32px;
  letter-spacing: 1px;
}

.topnav a:hover {
  background-color: #FFFFFF;
  color: #6219FF;
}

.topnav a.active {
  background-color: #FFFFFF;
  color: #222222;
}

/* #topnav_weddings a {
	border-bottom: 1px solid #222;
} */
.nav_link_left {
  padding-left: 0px;
}

.topnav_left a {
  padding: 0px 32px 0px 0px;
}

a.nav_pageo_logo {
  padding-right: 0px;
  padding-left: 16px;
}

.topnav_right_button_group {
  height: 32px;
  padding-right: 8px;
  vertical-align: middle;
  float: right;
  margin: auto;
  max-height: 32px;
  width: auto;
}

.topnav_vertical_divider {
  border-left: 1px solid #444;
  height: 16px;
  float: left;
  margin: 8px 32px 8px 32px;
}

.topnav_right a {
  float: right;
}

.button_nav_right a {
  display: block;
  width: auto;
  padding: 0px 12px 0px 12px;
  float: right;
  color: #7B7261;
  background-color: #E4F4E9;
  font-family: urw-din, Sans-Serif;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 32px;
  letter-spacing: 1px;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 4px;
  text-align: center;
}

.button_nav_right a:hover {
  color: #E4F4E9;
  background-color: #7B7261;
}

@media screen and (min-width: 1300px) {
  .topnav_right {
    float: right;
    padding-right: 0px;
  }
  .topnav_left {
    padding-left: 0px;
  }
}
@media screen and (min-width: 1000px) {
  .topnav #menu {
    visibility: hidden;
    height: 0px;
  }
  .nav_link_left {
    visibility: visible;
  }
}
@media screen and (max-width: 1000px) {
  :target::before {
    content: "";
    display: block;
    height: 80px; /* fixed header height*/
    margin: -80px 0 0; /* negative fixed header height */
  }
  .topnav {
    overflow: hidden;
    background-color: #FFFFFF;
    padding: 28px 24px 28px 24px;
    max-height: 80px;
  }
  .topnav a {
    float: left;
    display: block;
    color: #222222;
    text-align: center;
    padding: 0px 12px;
    text-decoration: none;
    font-family: Baskerville-URW, filosofia, serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    letter-spacing: 0.7px;
  }
  .topnav a:hover {
    background-color: #FFFFFF;
    color: #222222;
  }
  .topnav a.active {
    background-color: #FFFFFF;
    color: #222222;
  }
  .topnav_right {
    visibility: hidden;
    float: right;
    position: relative;
    display: none;
  }
  .topnav #menu {
    text-align: right;
    width: auto;
    float: right;
    padding-right: 8px;
    visibility: visible;
    max-height: 24px;
    padding-top: 0px;
  }
  .nav_link_left {
    visibility: hidden;
    display: none;
  }
  .topnav_right_button_group {
    display: none;
  }
  .topnav_vertical_divider {
    display: none;
  }
}
/*
@media screen and (max-width: 800px) {




	.topnav_fixed {
		max-height: 80px;
		position: fixed;
		top: 0px;
		width: 100vw;
		z-index: 10000;
		background: #FFF;
		box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.10);
	}

	.topnav {
		overflow: hidden;
		background-color: #FFFFFF;
		padding: 28px 24px 28px 24px;
		max-height: 80px;
	}

	.topnav_left {
		padding-left: 0px;
	}


	.topnav a:hover {
		background-color: #FFFFFF;
		color: #222222;
	}

	.topnav a.active {
		background-color: #FFFFFF;
		color: #222222;
	}

	.topnav_right {
		visibility: hidden;
		float: right;
		position: relative;
		display: none;
	}

	.topnav #menu {
		text-align: right;
		width: auto;
		float: right;
		visibility: visible;
		max-height: 24px;
	}


	.nav_link_left {
		visibility: hidden;
		display: none;
	}

}
*/
/* OVERLAY MOBILE MENU */
.button_overlay a {
  /*display: block;*/
  display: none;
  width: 100%;
  overflow: hidden;
  margin: auto;
  color: #7B7261;
  position: absolute;
  min-height: 80px;
  bottom: 0;
  background: #E4F4E9;
  font-family: urw-din, Sans-Serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 600;
  line-height: 80px;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 2px;
  text-align: center;
}

.overlay_menu {
  height: 0%;
  width: 100%;
  position: fixed;
  z-index: 20000;
  top: 0;
  left: 0;
  background-color: rgb(0, 0, 0);
  background-color: rgb(255, 255, 255);
  overflow-y: hidden;
  transition: 0.5s;
}

.overlay_contact {
  height: 0%;
  width: 100%;
  position: fixed;
  z-index: 20000;
  top: 0;
  left: 0;
  background-color: rgb(0, 0, 0);
  background-color: rgb(255, 255, 255);
  overflow-y: hidden;
  transition: 0.5s;
}

.overlay_content {
  position: absolute;
  padding-bottom: 100px;
  top: 25%;
  width: 100%;
  text-align: center;
  margin-top: -80px;
}

.overlay_menu .overlay_link {
  font-family: Baskerville-URW, Source Serif Pro, Georgia;
  font-size: 32px;
  line-height: 40px;
  padding: 20px 20px 16px 20px;
  letter-spacing: 1.5px;
  text-decoration: none;
  color: #888888;
  display: block;
  transition: 0.4s;
}

.topnav_mobile_subnav {
  font-family: urw-din, Source Sans Pro, Sans-Serif;
  line-height: 32px;
  font-size: 24px;
  padding: 16px;
  font-weight: 200;
  text-decoration: none;
  color: #888888;
  display: block;
  transition: 0.4s;
}

.overlay_link:hover, .overlay_link:focus {
  color: #6219FF;
}

.topnav_mobile_subnav:hover, .topnav_mobile_subnav:focus {
  color: #6219FF;
}

.overlay_menu .closebtn, .overlay_contact .closebtn {
  text-align: right;
  width: auto;
  float: right;
  padding-right: 32px;
  visibility: visible;
  max-height: 24px;
  padding-top: 28px;
}

.overlay_menu {
  overflow-y: auto;
}

.overlay_content overlay_link {
  font-size: 32px;
  line-height: 40px;
}

.top_nav_special {
  float: left;
  width: 100vw;
  margin: auto;
  background: #FEF2DA;
  text-align: center;
  color: #222;
  font-family: urw-din, Source Sans Pro, Sans-Serif;
  line-height: 40px;
  height: 40px;
  letter-spacing: 1px;
  text-transform: uppercase;
  font-weight: 200;
}

@media screen and (max-width: 800px) {
  .topnav a {
    float: left;
    display: block;
    color: #222222;
    text-align: center;
    padding: 0px 0px;
    text-decoration: none;
    font-family: Baskerville-URW, filosofia, serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    letter-spacing: 0.7px;
  }
  .topnav #menu {
    text-align: right;
    width: auto;
    float: right;
    padding-right: 0px;
    visibility: visible;
    max-height: 24px;
    padding-top: 0px;
  }
  .overlay_menu .closebtn, .overlay_contact .closebtn {
    text-align: right;
    width: auto;
    float: right;
    padding-right: 24px;
    visibility: visible;
    max-height: 24px;
    padding-top: 28px;
  }
}
* {
  box-sizing: border-box;
}

footer .row2 {
  display: flex;
  gap: 20px;
  padding-top: 40px;
  list-style-type: none;
  justify-content: center;
  font-family: Baskerville-URW, filosofia, serif;
  font-size: 16px;
  line-height: 28px;
  font-weight: 400;
  color: #222;
  text-align: center;
}

footer a:hover {
  color: #222;
  text-decoration: none;
}

footer div {
  letter-spacing: 1px;
}

footer {
  border-top: 1px dashed #888;
  margin: auto;
  background-color: #FFFFFF;
  padding: 40px 40px 120px 40px;
}

footer .info_1 {
  order: 1;
}

footer .info_2 {
  order: 2;
}

footer .info_3 {
  order: 3;
}

footer .info_4 {
  order: 4;
  display: none;
}

footer .info_2,
footer .info_1,
footer .info_3,
footer .info_4 {
  float: left;
  width: 33%;
  padding: 40px 40px 0px 40px;
  text-align: center;
}

footer .info_1 div,
footer .info_3 div,
footer .info_4 div {
  padding-top: 20px;
}

footer .row p {
  font-family: Baskerville-URW, Source Serif Pro, Georgia;
  font-size: 16px;
  line-height: 28px;
  font-weight: 400;
  color: #222;
  text-align: center;
}

footer .row {
  max-width: 1280px;
  margin: auto;
}

footer .row:after {
  content: "";
  display: table;
  clear: both;
}

@media screen and (max-width: 1000px) {
  footer .row2 {
    display: none;
  }
  footer .info_1 {
    order: 1;
  }
  footer .info_2 {
    order: 3;
  }
  footer .info_3 {
    order: 3;
  }
  footer .info_4 {
    order: 4;
    display: block;
  }
  footer .info_1,
  footer .info_2,
  footer .info_3,
  footer .info_4 {
    width: 50%;
    height: auto;
  }
  footer .info_2 img {
    float: none;
    text-align: center;
  }
  footer .info_3 {
    text-align: right;
    padding-top: 40px;
    height: 100%;
    overflow: hidden;
  }
  footer .info_3 showup {
    height: 200px;
  }
  footer .info_1 div,
  footer .info_2 div,
  footer .info_3 div,
  footer .info_4 div {
    width: 100%;
    margin: auto;
  }
  footer .row {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
  }
  footer .row p {
    text-align: center;
  }
}
@media screen and (max-width: 640px) {
  footer .info_1,
  footer .info_2,
  footer .info_3,
  footer .info_4 {
    width: 100%;
  }
  footer .info_1 {
    order: 1;
  }
  footer .info_2 {
    order: 4;
  }
  footer .info_3 {
    order: 2;
  }
  footer .info_4 {
    order: 3;
  }
  footer .info_2 {
    text-align: cneter;
    padding-top: 80px;
  }
  footer .row {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    padding-bottom: 40px;
  }
  footer .row p {
    text-align: center;
  }
  footer .info_2 img {
    text-align: center;
    float: none;
  }
}
/* pageo
  v 2.0 - 08-2023
*/
#hero_team {
  height: 400px;
}

.team_card_grid {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  max-width: 1400px;
  margin: auto;
}

.team_card_grid p {
  color: #222222;
  text-align: left;
  font-family: Baskerville-URW, filosofia, serif;
  font-weight: 200;
  font-style: normal;
  font-size: 16px;
  line-height: 24px;
}

.team_card {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  -ms-flex: 25%;
  flex: 25%;
  max-width: 25%;
  padding: 20px 20px;
  border: 2px solid white;
  min-height: 180px;
  max-height: 100%;
  overflow: hidden;
}

.team_card img {
  max-width: 100%;
  max-height: 300px;
}

.name_role {
  padding: 20px 0px;
}

@media screen and (min-width: 1500px) {
  .team_card {
    -ms-flex: 20%;
    flex: 20%;
    max-width: 20%;
    padding: 20px 20px;
  }
}
@media screen and (max-width: 1000px) {
  .team_card {
    -ms-flex: 50%;
    flex: 50%;
    max-width: 50%;
  }
}
/* HERO –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
/* _______________ HOME ______________________ */
#home_hero {
  display: block;
  position: relative;
  width: 100%;
  max-height: 900px;
  min-height: 700px;
  overflow: hidden;
  margin-top: 90px;
  padding-top: 80px;
  padding-bottom: 80px;
  text-align: center;
  background-position: center;
  background-position: top;
  background-repeat: no-repeat;
  background-size: cover;
  /*z-index: -11; */
}

.hero_info {
  display: flex;
  flex-direction: column;
  text-align: center;
  justify-content: center;
}

#home_hero .hero_info {
  display: flex;
  flex-direction: column;
  text-align: center;
  justify-content: center;
  margin-top: 20px;
  padding-top: 0px;
  padding-bottom: 80px;
}

.logo_hero_home {
  width: auto;
  height: 500px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 40px;
}

#button_group_home {
  padding-bottom: 0px;
  align-items: center;
  display: flex;
  flex-flow: row wrap;
  gap: 40px;
  justify-content: center;
}

.button_home {
  display: block;
  width: 245px;
  font-family: urw-din, Helvetica Neue, Sans-Serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 64px;
  color: #222;
  background: #DFB9A4;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 2px;
  text-align: center;
}

a:hover .button_home {
  color: #FFFFFF;
  background: #DFB9A4;
}

@media screen and (max-width: 1000px) {
  #home_hero {
    height: auto;
    padding-top: 60px;
    padding-bottom: 70px;
    margin-top: 80px;
  }
  .logo_hero_home img {
    transform: scale(0.9);
  }
  #button_group_home {
    padding-top: 48px;
    gap: 32px;
  }
  #home_hero .hero_info {
    display: flex;
    flex-direction: column;
    text-align: center;
    justify-content: center;
    margin-top: 20px;
    padding-top: 0px;
    padding-bottom: 60px;
  }
  .logo_hero_home {
    width: 100%;
    height: 400px;
    margin-top: 40px;
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 800px) {
  #button_group_home {
    padding-top: 48px;
  }
}
@media screen and (max-width: 700px), screen and (max-height: 730px) {
  .logo_hero_home img {
    transform: scale(0.75);
    margin: auto;
  }
  .button_home, .button2, .button1 {
    line-height: 56px;
  }
}
@media screen and (max-width: 600px) {
  .logo_hero_home img {
    transform: scale(0.75);
    margin: auto;
  }
  #home_hero {
    min-height: 600px;
    padding-bottom: 40px;
  }
  #home_hero .hero_info {
    margin-top: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
  }
  .logo_hero_home {
    width: 100%;
    height: 350px;
    margin-top: 30px;
    margin-bottom: 20px;
  }
  .button_home, .button2, .button1 {
    display: block;
    font-family: urw-din, Source Sans Pro, Sans-Serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 56px;
    letter-spacing: 1.6px;
    background: #DFB9A4;
    width: 100vw;
    padding-right: 20px;
    padding-left: 20px;
  }
  #button_group_home {
    padding: 40px 0 0 0;
    gap: 20px;
    margin-right: 20px;
    margin-left: 20px;
    overflow: hidden;
  }
}
@media screen and (max-width: 414px) {
  #home_hero {
    height: auto;
    padding-top: 24px;
    padding-bottom: 0px;
    margin-top: 68px;
  }
  #home_hero .hero_info {
    margin-top: 0px;
    padding-top: 0px;
    padding-bottom: 20px;
  }
  .logo_hero_home {
    width: 100%;
    height: 350px;
    margin-top: 30px;
    margin-bottom: 0px;
  }
}
@media screen and (max-height: 750px) {
  #home_hero .hero_info {
    margin-top: 0px;
    padding-top: 0px;
    padding-bottom: 20px;
  }
  .logo_hero_home {
    width: 100%;
    height: 350px;
    margin-top: 30px;
    margin-bottom: 0px;
  }
}
/* |||||||||||||||||||||| WEDDINGS / GIFTSHOP |||||||||||||||||||||| */
#hero_weddings, #hero_giftshop {
  display: block;
  width: 100%;
  height: auto;
  text-align: center;
  padding-top: 180px;
  padding-bottom: 60px;
  background-position: center;
  background-position: top;
  background-repeat: no-repeat;
  background-size: cover;
}

#hero_weddings .hero_info h3, #hero_giftshop .hero_info h3 {
  max-width: 800px;
  margin: auto;
  padding-top: 50px;
}

#hero_weddings .hero_info hr, #hero_giftshop .hero_info hr {
  margin-top: 80px;
  margin-right: auto;
  margin-left: auto;
}

#hero_weddings .hero_info, #hero_giftshop .hero_info {
  padding: 40px 0px 40px 0px;
}

@media screen and (max-width: 1000px) {
  #hero_weddings .hero_info h1, #hero_giftshop .hero_info h1 {
    font-size: 64px;
    line-height: 72px;
  }
  #hero h1 {
    font-size: 64px;
    line-height: 72px;
  }
  #hero_weddings .hero_info h3, #hero_giftshop .hero_info h3 {
    max-width: 600px;
    padding-top: 30px;
    font-size: 40px;
    line-height: 48px;
  }
  #hero_weddings .hero_info hr, #hero_giftshop .hero_info hr {
    margin-top: 60px;
  }
}
@media screen and (max-width: 800px) {
  #hero_weddings, #hero_giftshop {
    height: auto;
    padding-top: 100px;
    padding-bottom: 80px;
  }
  #hero_weddings .hero_info, #hero_giftshop .hero_info {
    padding: 40px 0px 0px 0px;
  }
  #hero_weddings .hero_info h1, #hero_giftshop .hero_info h1 {
    font-size: 48px;
    line-height: 64px;
    max-width: 500px;
    margin: auto;
    letter-spacing: 1px;
  }
  #hero_weddings .hero_info h3, #hero_giftshop .hero_info h3 {
    max-width: 440px;
    line-height: 40px;
    margin: auto;
    padding-top: 30px;
    font-size: 30px;
  }
  #hero_weddings .hero_info hr, #hero_giftshop .hero_info hr {
    margin-top: 40px;
    margin-right: auto;
    margin-left: auto;
    max-width: 160px;
  }
}
@media screen and (max-width: 600px) {
  #hero_weddings .hero_info h1, #hero_giftshop .hero_info h1 {
    font-size: 44px;
    line-height: 48px;
    letter-spacing: 1px;
    padding-left: 10px;
    padding-right: 10px;
    margin: auto;
    max-width: 240px;
  }
  #hero_weddings .hero_info h3, #hero_giftshop .hero_info h3 {
    font-size: 24px;
    line-height: 34px;
    padding-left: 20px;
    padding-right: 20px;
    max-width: 340px;
  }
}
@media screen and (max-width: 414px) {
  #hero_weddings, #hero_giftshop {
    height: auto;
    padding-top: 40px;
    padding-bottom: 100px;
    margin-top: 68px;
  }
  #hero_weddings .hero_info h1, #hero_giftshop .hero_info h1 {
    max-width: 220px;
  }
  #hero_weddings .hero_info h3, #hero_giftshop .hero_info h3 {
    max-width: 340px;
  }
}
/* AWARDS-WEDDINGS –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
#hero_weddings #awards {
  width: 100%;
  border-top: none;
  height: auto;
  position: relative;
  margin: auto;
  display: flex;
  justify-content: center;
  flex-direction: row;
  margin-top: 0px;
  padding-bottom: 0px;
}

#hero_weddings .award_row1 {
  margin-top: 0px;
  float: left;
  display: flex;
  justify-content: center;
  flex-direction: row;
}

#hero_weddings .award {
  width: 100px;
  height: 100px;
  float: left;
  margin: 30px;
}

#hero_weddings .award_filter {
  filter: invert(100%) sepia(1%) saturate(3609%) hue-rotate(311deg) brightness(100%) contrast(84%);
}

@media screen and (max-width: 1000px) {
  #hero_weddings .award_filter {
    scale: 0.8;
  }
  #hero_weddings .award {
    width: 100px;
    height: 100px;
    float: left;
    margin: 10px;
    padding-top: 10px;
  }
}
@media screen and (max-width: 800px) {
  #hero_weddings .award_row1 {
    float: left;
    display: flex;
    justify-content: center;
    flex-direction: row;
  }
  #hero_weddings .award_filter {
    scale: 0.6;
  }
  #hero_weddings .award {
    width: 100px;
    height: 100px;
    float: left;
    margin: 4px;
    padding-top: 10px;
  }
}
@media screen and (max-width: 600px) {
  #hero_weddings .award {
    display: none;
  }
}
@media screen and (max-width: 400px) {
  #hero_weddings .award_filter {
    scale: 0.8;
  }
  #hero_weddings .award {
    margin: 20px;
  }
}
/* Weddings  */
#button_group_weddings {
  padding-top: 48px;
  align-items: center;
  display: flex;
  flex-flow: row wrap;
  gap: 32px;
  justify-content: center;
}

.button_weddings {
  display: block;
  width: 245px;
  font-family: urw-din, Helvetica Neue, Sans-Serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 64px;
  color: #222222;
  background: #FEF2DA;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 2px;
  text-align: center;
}

a:hover .button_weddings {
  color: #6219FF;
  background: #FEF2DA;
}

@media screen and (max-width: 800px) {
  .button_weddings {
    margin: 0px 20px 20px 20px;
  }
  #button_group_weddings a {
    text-decoration: none;
    color: #222;
  }
}
@media screen and (max-width: 600px) {
  #hero_weddings, #hero_giftshop {
    height: auto;
    padding-top: 100px;
    padding-bottom: 40px;
  }
}
@media screen and (max-width: 600px) {
  .button_weddings {
    padding: 0px 20px;
    gap: 20px;
    margin-right: 20px;
    margin-left: 20px;
    overflow: hidden;
  }
}
@media screen and (max-width: 600px) {
  .divider {
    height: 120px;
    width: 100%;
    font-size: 24px;
    text-align: center;
    line-height: 112px;
    margin-top: 0px;
    border-top: 4px solid #CCCCCC;
    border-bottom: 1px solid #CCCCCC;
  }
  .overlay_menu .overlay_link {
    font-size: 32px;
    line-height: 40px;
    padding: 20px 20px 16px 20px;
    letter-spacing: 1.5px;
  }
  .button_overlay {
    visibility: hidden;
    display: none;
  }
  /* TOUT –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
  .tout1 h5 {
    font-size: 18px;
    padding: 16px 20px 16px 20px;
    line-height: 30px;
  }
  .tout1 h3 {
    font-size: 28px;
    line-height: 38px;
    max-width: 600px;
    margin: auto;
    margin-bottom: 20px;
    padding: 8px 20px 0px 20px;
  }
  .tout1 {
    display: block;
    max-width: 980px;
    margin: 0px auto 0px auto;
    padding: 80px 0px 80px 0px;
    text-align: center;
    position: relative;
    border: none;
  }
  /* PARALLAX –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
  #parallax #parallax_01_block, #parallax #parallax_02_block, #parallax #parallax_03_block {
    padding: 30px 20px 30px 20px;
    margin: auto;
    width: auto;
  }
  #parallax h1 {
    font-size: 40px;
    padding-left: 10px;
  }
  #parallax p {
    font-size: 18px;
    line-height: 28px;
  }
  #parallax #parallax_01, #parallax #parallax_02, #parallax #parallax_03 {
    padding: 80px 20px 80px 20px;
    background-attachment: inherit;
  }
  #parallax hr {
    margin-top: 0px;
    margin-bottom: 40px;
    width: 120px;
  }
  .button_parallax {
    margin: 40px auto 60px auto;
    padding: 0px 28px 0px 28px;
  }
  #parallax #parallax_01, #parallax #parallax_02, #parallax #parallax_03 {
    width: 100%;
  }
  #parallax #parallax_04 {
    height: 232px;
  }
  #parallax #parallax_04 img {
    scale: 0.7;
  }
  /* WEDDINGS –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
  .our_services h5 {
    font-size: 20px;
    line-height: 30px;
    margin-top: 40px;
  }
  #weddings_about_us #parallax {
    margin-top: 0px;
  }
  #weddings_about_us p {
    margin: auto;
    padding: 20px 0px 20px 0px;
  }
  footer {
    padding: 40px 10px 200px 10px;
  }
  .photo_1 img, .photo_2 img, .photo_3 img, .photo_4 img, .photo_5 img, .photo_6 img {
    display: flex;
    height: auto;
    position: relative;
    max-width: 100vw;
    min-width: auto;
  }
  .photo_1, .photo_3, .photo_5 {
    width: auto;
    margin: auto;
    max-height: 300px;
    overflow: hidden;
    padding: 0px;
    margin-top: 30px;
  }
  .photo_2, .photo_4, .photo_6 {
    width: auto;
    margin: auto;
    max-height: 300px;
    overflow: hidden;
    padding: 0px;
    margin-top: 30px;
  }
  .photo_1 img, .photo_2 img, .photo_3 img, .photo_4 img, .photo_5 img, .photo_6 img {
    border-radius: 0;
    border: none;
    display: block;
    height: auto;
    max-width: 100vw;
    min-width: 100vw;
    padding-left: 0px;
    padding-right: 0px;
  }
  .quote_1, .quote_2, .quote_3, .quote_4, .quote_5, .quote_6 {
    width: auto;
    margin: auto;
    padding: 40px 30px 20px 30px;
    max-height: 100%;
    min-width: 0px;
  }
  .container1, .container2, .container3, .container4, .container5, .container6 {
    background-image: none;
  }
  #testimonials p {
    font-weight: 200;
    font-style: normal;
    font-size: 18px;
    line-height: 28px;
  }
  #testimonials .caption p {
    font-family: urw-din, Source Sans Pro, Sans-Serif;
    margin-left: 14px;
    padding-top: 0px;
    padding-bottom: 2px;
    font-size: 15px;
    line-height: 20px;
    letter-spacing: 1px;
    font-weight: 400;
    font-variant: small-caps;
  }
  .caption {
    border-left: 2px solid #222222;
    padding-top: 0px;
  }
  .modal .close {
    scale: 0.5;
    padding-right: 16px;
    padding-top: 20px;
  }
  .gallery_modal_content {
    margin: 68px auto 20px auto;
  }
  /* GIFT SHOP –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
  .prod_intro {
    font-size: 20px;
    line-height: 30px;
    padding: 0px 0px 20px 0px;
    color: #444444;
  }
  .prod_container {
    height: 100%;
    padding: 0px;
  }
  .prod_column_1 p, .prod_column_2 p {
    height: 100px;
    font-size: 16px;
    line-height: 26px;
    padding: 4px 20px 0px 20px;
  }
  .prod_column_1 h5, .prod_column_2 h5 {
    padding: 20px 20px 0px 20px;
  }
  .prod_grid {
    padding: 0px 20px 40px 20px;
  }
  #lunch_menu {
    padding: 20px 20px 40px 20px;
  }
  #lunch_menu h1 {
    font-family: urw-din, Source Sans Pro, Sans-Serif;
    font-size: 32px;
    font-weight: 100;
    color: #222;
    letter-spacing: 2px;
    line-height: 30px;
    text-align: center;
    padding: 40px 0px 40px 0px;
  }
  #lunch_menu h5 {
    font-family: Baskerville-URW, Source Serif Pro, Georgia;
    font-size: 20px;
    line-height: 30px;
  }
  #lunch_menu p {
    font-family: urw-din, Source Sans Pro, Sans-Serif;
    font-size: 16px;
    line-height: 26px;
    color: #222;
    text-align: center;
    padding: 0px 0px 20px 0px;
  }
  #lunch_menu h2 {
    font-family: Baskerville-URW, Source Serif Pro, Georgia;
    font-size: 20px;
    font-weight: 400;
    line-height: 30px;
    text-align: center;
    padding: 40px 0px 20px 0px;
  }
  #lunch_menu .asterik p {
    font-family: Baskerville-URW, Source Serif Pro, Georgia;
    font-size: 16px;
    line-height: 26px;
    color: #666;
    text-align: center;
    padding: 0px 0px 20px 0px;
    font-style: italic;
  }
  .prod_column_0 {
    display: none;
  }
  .lightboxOverlay {
    position: absolute;
  }
  /* GALLERIES  –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
  .lb-dataContainer {
    height: 80px;
  }
  .lb-nav {
    opacity: 50%;
  }
}
@media screen and (max-width: 414px) {
  :target::before {
    content: "";
    display: block;
    height: 68px; /* fixed header height*/
    margin: -68px 0 0; /* negative fixed header height */
  }
  /* GENERAL –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
  .divider {
    height: 88px;
    width: 100%;
    font-size: 24px;
    text-align: center;
    line-height: 83px;
    margin-top: 0px;
    border-top: 4px solid #CCCCCC;
    border-bottom: 1px solid #CCCCCC;
  }
  /* NAV –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
  .overlay_menu .overlay_link {
    font-size: 22px;
    line-height: 30px;
    padding: 20px 20px 16px 20px;
    letter-spacing: 1.5px;
  }
  .topnav_fixed {
    /* 		max-height: 72px; */
    position: fixed;
    top: 0px;
    width: 100vw;
    z-index: 10000;
    background: #FFF;
  }
  .topnav {
    overflow: hidden;
    background-color: #FFFFFF;
    padding: 22px 16px 22px 16px;
    max-height: 72px;
  }
  .topnav_left {
    padding-left: 0px;
  }
  .topnav a:hover {
    background-color: #FFFFFF;
    color: #222222;
  }
  .topnav a.active {
    background-color: #FFFFFF;
    color: #222222;
  }
  .topnav_right {
    visibility: hidden;
    float: right;
    position: relative;
    display: none;
  }
  .topnav #menu {
    text-align: right;
    width: auto;
    float: right;
    visibility: visible;
    max-height: 24px;
  }
  .nav_link_left {
    visibility: hidden;
    display: none;
  }
  .overlay_menu {
    overflow: hidden;
  }
  .overlay_menu .closebtn, .overlay_contact .closebtn {
    text-align: right;
    width: auto;
    float: right;
    padding-right: 16px;
    visibility: visible;
    max-height: 24px;
    padding-top: 22px;
  }
  .topnav_mobile_subnav {
    font-size: 18px;
    line-height: 18px;
    padding: 16px;
  }
  .lb-data .lb-close {
    margin-top: 10px;
    margin-right: 12px;
  }
  .lb-dataContainer {
    height: 68px;
  }
}
/* reset margins */
html, body, div, span, h1, h2, h3, h4, h5, h6, p,
blockquote, pre, form, label, legend, table, caption, tbody, tfoot, thead,
tr, th, td, article, aside, canvas, details, embed, figure, figcaption,
footer, header, hgroup, menu, nav, output, section, summary, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  vertical-align: baseline;
}

.not_visible {
  display: none;
}

#alert_box {
  animation-name: fadeOut;
  animation-duration: 20ms;
  animation-timing-function: ease;
  z-index: 20000;
  position: fixed;
}

.message_success {
  display: block;
  position: fixed;
  font-family: urw-din, Helvetica Neue, Sans-Serif;
  font-weight: 400;
  font-size: 12px;
  letter-spacing: 2px;
  text-transform: uppercase;
  background-color: #44F4B3;
  color: #222222;
  padding: 12px 14px;
  top: 140px;
  border-radius: 2px;
  margin: 0;
  left: 50%;
  transform: translate(-50%, -50%);
}

.alert_error {
  display: block;
  position: fixed;
  font-family: urw-din, Helvetica Neue, Sans-Serif;
  font-weight: 400;
  font-size: 12px;
  letter-spacing: 2px;
  text-transform: uppercase;
  background-color: #e90063;
  color: white;
  padding: 8px 14px;
  top: 40px;
  border-radius: 4px;
  margin: 0;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* GENERAL –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
body {
  overflow-x: hidden; /* Hide horizontal scrollbar */
  height: fit-content;
}

p {
  color: #222222;
  text-align: left;
  font-family: urw-din, Helvetica Neue, Sans-Serif;
  font-weight: 200;
  font-style: normal;
  font-size: 20px;
  line-height: 30px; /* 150% */
}

h1 {
  color: #222222;
  font-family: Baskerville-URW, filosofia, serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0px;
  font-size: 72px;
  line-height: 72px;
}

.h1b {
  color: #222222;
  font-family: Baskerville-URW, filosofia, serif;
  font-weight: 200;
  font-style: normal;
  letter-spacing: 0.2px;
  font-size: 64px;
  line-height: 72px;
}

h2 {
  color: #222222;
  text-align: left;
  font-family: Baskerville-URW, filosofia, serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.2px;
  font-size: 48px;
  line-height: 56px;
}

h3 {
  color: #222222;
  text-align: left;
  font-family: Baskerville-URW, filosofia, serif;
  font-weight: 400;
  font-style: normal;
  font-size: 40px;
  line-height: 54px;
}

h4 {
  color: #222222;
  text-align: left;
  font-family: Baskerville-URW, filosofia, serif;
  font-weight: 400;
  font-style: normal;
  font-size: 32px;
  letter-spacing: 0.2px;
  line-height: 40px;
}

h5 {
  color: #222222;
  text-align: left;
  font-family: Baskerville-URW, filosofia, serif;
  font-weight: 400;
  font-style: normal;
  font-size: 24px;
  line-height: 34px;
}

h6 {
  color: #222222;
  text-align: left;
  font-family: urw-din, Sans-Serif;
  font-weight: 300;
  font-style: normal;
  font-size: 20px;
  line-height: 28px;
}

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

/* TOUT1 –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
/*.tout1 {
	display: block;
	text-align: center;
	max-width: 1120px;
	margin: 40px auto 80px auto;
	padding: 80px 80px 80px 80px;
	position: relative;
	background-color: #FFFFFF;
	border: 1px dashed #D1C6AC;
} */
.tout1 h3 {
  max-width: 800px;
  line-height: 60px;
  font-weight: 400;
  margin: auto;
  padding-bottom: 40px;
}

.tout1 h5 {
  max-width: 800px;
  font-weight: 400;
  padding: 20px 0 20px 0;
  line-height: 50px;
  margin: auto;
}

.tout1 {
  display: block;
  max-width: 980px;
  margin: 0px auto 0px auto;
  padding: 120px 40px 80px 40px;
  text-align: center;
  position: relative;
  background-color: #FFFFFF;
  border: none;
}

@media screen and (max-width: 1000px) {
  .tout1 h5 {
    padding: 20px 0 20px 0;
    line-height: 40px;
  }
  .tout1 h3 {
    line-height: 50px;
  }
}
@media screen and (max-width: 800px) {
  .tout1 h5 {
    font-size: 20px;
    padding: 16px 0 16px 0;
    line-height: 30px;
  }
  .tout1 h3 {
    font-size: 32px;
    line-height: 40px;
    max-width: 600px;
    margin: auto;
    padding-top: 8px auto 20px auto;
  }
  .tout1 {
    display: block;
    max-width: 980px;
    margin: 0px auto 0px auto;
    padding: 80px 40px 80px 40px;
    text-align: center;
    position: relative;
    border: none;
  }
}
/* DIVIDER  –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
.divider {
  height: 165px;
  text-align: center;
  width: 100%;
  font-size: 32px;
  line-height: 160px;
  font-family: Baskerville-URW, filosofia, serif;
  color: #444444;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  margin-top: 0px;
  border-top: 3px solid #CCCCCC;
  border-bottom: 2px dashed #CCCCCC;
}

.divider h2 {
  text-align: center;
  font-family: Baskerville-URW, filosofia, serif;
  color: #444444;
  line-height: 165px;
}

@media screen and (max-width: 1000px) {
  .divider {
    height: 120px;
    width: 100%;
    font-size: 32px;
    text-align: center;
    line-height: 115px;
    margin-top: 0px;
    border-top: 4px solid #CCCCCC;
    border-bottom: 1px solid #CCCCCC;
  }
  .divider h2 {
    font-size: 32px;
    line-height: 120px;
  }
}
@media screen and (max-width: 800px) {
  .divider {
    font-size: 28px;
    line-height: 112px;
  }
}
/* AWARDS –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
#awards {
  width: 100%;
  border-top: 1px dashed #888;
  height: auto;
  position: relative;
  margin: auto;
  display: flex;
  justify-content: center;
  flex-direction: row;
  margin-top: 40px;
  padding-bottom: 0px;
}

.award_row1 {
  margin-top: 40px;
  float: left;
  display: flex;
  justify-content: center;
  flex-direction: row;
}

.award {
  width: 100px;
  height: 100px;
  float: left;
  margin: 40px;
}

.award_filter {
  filter: invert(57%) sepia(9%) saturate(0%) hue-rotate(162deg) brightness(93%) contrast(89%);
}

@media screen and (max-width: 800px) {
  .award_row1 {
    float: left;
    display: flex;
    justify-content: center;
    flex-direction: row;
  }
  .award_filter {
    scale: 0.8;
  }
  .award {
    width: 100px;
    height: 100px;
    float: left;
    margin: 20px;
  }
}
@media screen and (max-width: 600px) {
  .award_row1 {
    float: left;
    display: flex;
    justify-content: center;
    flex-direction: column;
  }
  .award_filter {
    scale: 1;
  }
  .award {
    width: 100px;
    height: 100px;
    float: left;
    margin: 40px;
  }
}
@media screen and (max-width: 400px) {
  .award_row1 {
    float: left;
    display: flex;
    justify-content: center;
    flex-direction: column;
  }
  .award_filter {
    scale: 0.8;
  }
  .award {
    width: 100px;
    height: 100px;
    float: left;
    margin: 20px;
  }
}
/* SERVICES –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
@media (max-width: 1200px) {
  .services1 {
    padding: 0px 20px 0px 20px;
  }
}
.services1 p {
  font-family: urw-din, Helvetica Neue, Sans-Serif;
  font-size: 12pt;
  text-align: center;
  line-height: 18pt;
  color: #222;
  padding-right: 10px;
  padding-left: 10px;
}

.services1 h6 {
  text-align: center;
  padding-bottom: 16px;
}

.services1 {
  margin: 40px auto 60px auto;
  padding: 0px 32px 20px 32px;
  height: auto;
  display: flex;
  flex-direction: row;
  font-size: 30px;
  text-align: center;
  gap: 20px;
  width: 100%;
  max-width: 1184px;
}

.services1_left, .services1_center, .services1_right {
  background-color: #F8F4F1;
  padding: 24px 20px 32px 20px;
  flex: 33%;
  border-radius: 8px;
}

.our_services h5 {
  text-align: center;
  max-width: 780px;
  margin: 60px auto 20px auto;
  padding: 0px 40px 20px 40px;
  color: #444444;
}

@media screen and (max-width: 1000px) {
  .services1 {
    margin: 40px auto 40px auto;
    padding: 0px 32px 0px 32px;
    height: auto;
    display: flex;
    font-size: 30px;
    text-align: center;
    width: 100%;
    max-width: 1120px;
  }
  .our_services h5 {
    padding: 0px 40px 0px 40px;
  }
  .services1 {
    gap: 16pt;
    flex-direction: column;
  }
  .services1 p {
    max-width: 640px;
    margin: auto;
    padding-bottom: 10px;
  }
  .services1_left, .services1_center, .services1_right {
    flex: 33%;
  }
}
@media screen and (max-width: 800px) {
  .services1 {
    margin: auto;
    height: auto;
    display: flex;
    font-size: 30px;
    text-align: center;
    gap: 16px;
    width: 100%;
    max-width: 1120px;
    flex-direction: column;
    padding: 20px 20px 60px 20px;
  }
  .services1 p {
    max-width: 440px;
    margin: auto;
    padding-bottom: 10px;
  }
}
/* –––––– */
* {
  box-sizing: border-box;
}

.card {
  background-color: #E4F4E9;
  text-align: center;
  padding: 1rem;
  height: auto;
  border-radius: 8px;
  /*
     background-position: center;
     background-position: top;
     background-image: url('../images/weddings/background_blur/bg_03_desktop.png'), url('../images/weddings/background_blur/bg_02_desktop.png');
  background-attachment: fixed; 
  background-size: cover; 
  -moz-background-size: cover; 
  -webkit-background-size: cover; 
  background-repeat: no-repeat; 
  */
}

.cards {
  max-width: 1200px;
  margin: 40px auto 40px auto;
  display: grid;
  padding: 40px 20px 40px 20px;
  text-align: center;
  gap: 20px;
  width: 100%;
}

.cards p {
  padding-right: 20px;
  max-width: 440px;
  margin: auto;
  padding-left: 20px;
  padding-bottom: 20px;
  color: #222222;
  font-family: urw-din, Helvetica Neue, Sans-Serif;
  font-size: 12pt;
  text-align: center;
  line-height: 18pt;
}

.cards h6 {
  padding-right: 20px;
  padding-left: 20px;
  color: #7B7261;
  text-align: center;
  padding-bottom: 16px;
}

@media (min-width: 1200px) {
  .cards {
    grid-template-columns: repeat(4, 1fr);
    padding: 40px 20px 40px 20px;
  }
}
@media (max-width: 1200px) {
  .cards {
    margin: 40px auto 40px auto;
    padding: 0px 40px;
  }
}
@media (min-width: 800px) {
  .cards {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 800px) {
  .cards {
    padding: 0px 20px 0px 20px;
    margin: 20px auto 20px auto;
  }
}
/* LUNCH MENU –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
#lunch_menu {
  padding: 40px 20px 120px 20px;
  max-width: 800px;
  margin: auto;
}

#lunch_menu h5 {
  font-family: Baskerville-URW, filosofia, serif;
  font-size: 26px;
  font-weight: 400;
  line-height: 40px;
  text-align: center;
  padding: 0px 0px 8px 0px;
}

#lunch_menu h2 {
  font-family: Baskerville-URW, filosofia, serif;
  font-size: 24px;
  font-weight: 400;
  line-height: 40px;
  text-align: center;
  padding: 40px 0px 0px 0px;
}

#lunch_menu h1 {
  font-family: urw-din, Helvetica Neue, Sans-Serif;
  font-size: 40px;
  font-weight: 100;
  color: #222;
  letter-spacing: 2px;
  line-height: 40px;
  text-align: center;
  padding: 40px 0px 40px 0px;
}

#lunch_menu p {
  font-family: urw-din, Helvetica Neue, Sans-Serif;
  font-size: 20px;
  line-height: 28px;
  color: #222;
  text-align: center;
  padding: 0px 0px 20px 0px;
  margin: auto;
  max-width: 600px;
}

#lunch_menu .horiz {
  margin: auto;
  padding: 0px 0px 40px 0px;
  width: 120px;
  border-bottom: 1px dashed #222;
}

#lunch_menu .asterik p {
  font-family: Baskerville-URW, filosofia, serif;
  font-style: italic;
  font-size: 20px;
  line-height: 32px;
  width: 100%;
  font-weight: light;
  color: #666;
}

#lunch_menu .asterik {
  font-family: Baskerville-URW, filosofia, serif;
  margin: auto;
  padding: 40px 0px 20px 0px;
}

#lunch_menu .salad_sandwiches {
  margin: auto;
  padding: 0px 0px 0px 0px;
}

@media screen and (max-width: 800px) {
  #lunch_menu {
    padding: 20px 20px 120px 20px;
  }
  #lunch_menu h5 {
    font-family: Baskerville-URW, filosofia, serif;
    font-size: 26px;
    font-weight: 400;
    line-height: 40px;
  }
  #lunch_menu h2 {
    font-family: Baskerville-URW, filosofia, serif;
    font-size: 24px;
    font-weight: 400;
    line-height: 40px;
    text-align: center;
    padding: 40px 0px 20px 0px;
  }
  #lunch_menu h1 {
    font-family: urw-din, Helvetica Neue, Sans-Serif;
    font-size: 36px;
    font-weight: 100;
    color: #222;
    letter-spacing: 2px;
    line-height: 40px;
    text-align: center;
    padding: 40px 0px 40px 0px;
  }
  #lunch_menu p {
    font-family: urw-din, Helvetica Neue, Sans-Serif;
    font-size: 18px;
    line-height: 28px;
    color: #222;
    text-align: center;
    padding: 0px 0px 20px 0px;
  }
  #lunch_menu .horiz {
    margin: auto;
    padding: 0px 0px 20px 0px;
    width: 120px;
    border-bottom: 1px dashed #222;
  }
  #lunch_menu .asterik {
    font-family: Baskerville-URW, filosofia, serif;
    margin: auto;
    padding: 40px 0px 20px 0px;
  }
  #lunch_menu .asterik p {
    font-family: Baskerville-URW, filosofia, serif;
    font-style: italic;
    font-size: 18px;
    line-height: 26px;
    width: 100%;
    font-weight: 100;
  }
  #lunch_menu .salad_sandwiches {
    margin: auto;
    padding: 0px 0px 10px 0px;
  }
}
/* BUTTTON CTAS  –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
#button_group_home a, #button_group_weddings a, #button_group_giftshop a, #button_group a {
  text-decoration: none;
}

.button1 {
  display: block;
  padding-left: 24px;
  padding-right: 24px;
  color: #FFF;
  font-family: urw-din, Helvetica Neue, Sans-Serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 64px;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 2px;
  text-align: center;
}

/* Gift Shop  */
#button_group_giftshop {
  padding-top: 48px;
  padding-bottom: 0px;
  align-items: center;
  display: flex;
  flex-flow: row wrap;
  gap: 32px;
  justify-content: center;
}

.button_giftshop {
  display: block;
  width: 245px;
  font-family: urw-din, Helvetica Neue, Sans-Serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 64px;
  color: #7B7261;
  background: #E4F4E9;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 2px;
  text-align: center;
}

a:hover .button_giftshop {
  color: #6219FF;
}

@media screen and (max-width: 800px) {
  .button_giftshop {
    font-size: 16px;
    font-weight: 400;
    min-width: 400px;
    max-width: 100%;
    padding: 0px 20px;
    margin: 0px 0px;
  }
  #button_group_giftshop a {
    text-decoration: none;
    color: #222;
  }
}
/* HOME - PARALLAX –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
#parallax {
  max-width: 1280px;
  margin: auto;
  margin-top: 40px;
}

#parallax h1 {
  color: #FFFFFF;
  text-align: center;
  font-family: Baskerville-URW, filosofia, serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 12px;
  font-size: 72px;
  line-height: 72px;
}

#parallax h2 {
  color: #FFFFFF;
  text-align: center;
  font-family: Baskerville-URW, filosofia, serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.2px;
  font-size: 48px;
  line-height: 56px;
}

.button_parallax {
  margin: 40px auto 30px auto;
  padding: 0px 28px 0px 28px;
  background-color: #FEF2DA;
  border: none;
  letter-spacing: 4px;
  color: #222222;
  text-align: center;
  font-family: urw-din, Helvetica Neue, Sans-Serif;
  font-size: 16px;
  line-height: 54px;
  font-style: normal;
  text-decoration: none;
  cursor: pointer;
}

#parallax p {
  color: #222222;
  text-align: center;
  font-family: Baskerville-URW, filosofia, serif;
  font-weight: 200;
  font-style: normal;
  width: 860px;
  margin: auto;
  font-size: 24px;
  line-height: 34px;
}

#parallax #parallax_01_block, #parallax #parallax_02_block, #parallax #parallax_03_block, #parallax #parallax_04_block {
  background: white;
  padding: 60px 60px 60px 60px;
  margin: 0 auto;
  text-align: justify;
}

#parallax .section_overlay_mask {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: black;
  opacity: 0.7;
}

#parallax #parallax_01 {
  padding: 200px 40px 200px 40px;
  overflow: hidden;
  position: relative;
  border-radius: 4px;
  margin: auto;
  background-attachment: fixed;
  background-size: cover;
  -moz-background-size: cover;
  -webkit-background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}

#parallax #parallax_02 {
  padding: 200px 40px 200px 40px;
  overflow: hidden;
  position: relative;
  border-radius: 4px;
  margin: auto;
  background-attachment: fixed;
  background-size: cover;
  -moz-background-size: cover;
  -webkit-background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}

#parallax #parallax_03 {
  padding: 200px 40px 200px 40px;
  overflow: hidden;
  position: relative;
  border-radius: 4px;
  margin: auto;
  background-attachment: fixed;
  background-size: cover;
  -moz-background-size: cover;
  -webkit-background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}

#parallax #parallax_04 {
  height: 472px;
  display: flex;
  gap: 40px;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  position: relative;
  border-radius: 4px;
  margin: auto;
  text-align: center;
  background-attachment: fixed;
  background-size: cover;
  -moz-background-size: cover;
  -webkit-background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  flex-direction: column;
}

#parallax hr {
  margin: 40px auto 40px auto;
  width: 120px;
}

@media screen and (max-width: 1280px) {
  #parallax #parallax_01, #parallax #parallax_02, #parallax #parallax_03 {
    border-radius: 0px;
  }
}
@media screen and (max-width: 1000px) {
  #parallax p {
    width: auto;
    font-size: 24px;
    line-height: 34px;
  }
  #parallax #parallax_01, #parallax #parallax_02, #parallax #parallax_03 {
    padding-top: 115px;
    padding-bottom: 115px;
  }
  #parallax #parallax_04 {
    height: 302px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  #parallax #parallax_04 img {
    scale: 0.74;
  }
}
@media screen and (max-width: 900px) {
  #parallax #parallax_01_block, #parallax #parallax_02_block, #parallax #parallax_03_block, #parallax #parallax_04_block {
    padding: 40px 40px 40px 40px;
    margin: auto;
    width: auto;
  }
  #parallax h1 {
    font-size: 60px;
    padding-left: 10px;
  }
  #parallax #parallax_01, #parallax #parallax_02, #parallax #parallax_03 {
    padding-top: 100px;
    padding-bottom: 100px;
    background-attachment: inherit;
  }
  #parallax #parallax_04 {
    height: 272px;
    display: flex;
    justify-content: center;
    align-items: center;
    background-attachment: inherit;
  }
  #parallax #parallax_04 img {
    scale: 0.74;
  }
}
/* This is needed to target iPads in landscape and portrait mode when using PARALLAX BG images  (other non-parallax BG images are fine...) .. parallax on iPhones works without this (it doesn't do parallax effect but it shows the same image as a still, and at the correct scale... , but not iPads .. with iPads, what happens without this code is an ugly extreme zoom in.. this is the only thing that seems to work ... no customisation needed for the individual sections.. just this code in the global CSS..*/
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  #parallax #parallax_01, #parallax #parallax_02, #parallax #parallax_03, #parallax #parallax_04 {
    background-attachment: scroll !important;
    background-size: cover;
    overflow: hidden;
  }
}
/* WEDDINGS - PARALLAX –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
#weddings_about_us h1 {
  text-transform: uppercase;
  letter-spacing: 8px;
}

#weddings_about_us #parallax_01_block, #weddings_about_us #parallax_02_block {
  padding-bottom: 100px;
}

@media screen and (max-width: 1000px) {
  #weddings_about_us #parallax {
    margin-top: 0px;
  }
}
@media screen and (max-width: 800px) {
  #weddings_about_us h1 {
    font-size: 40px;
  }
  #weddings_about_us p {
    font-size: 22px;
    line-height: 32px;
  }
  #weddings_about_us #parallax_01_block, #weddings_about_us #parallax_02_block {
    padding-bottom: 60px;
  }
}
/* PRODUCTS –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

.prod_button {
  width: 100%;
  height: 60px;
  background: #44F4B3;
  border: none;
  margin: 16px auto auto auto;
  text-align: center;
  vertical-align: middle;
  display: inline-block;
  font-size: 14px;
  font-family: urw-din, Helvetica Neue, Sans-Serif;
  letter-spacing: 1.4px;
  padding-bottom: 20px;
  line-height: 60px;
  vertical-align: middle;
  font-weight: 300;
  font-style: normal;
  text-transform: uppercase;
  color: #111;
  cursor: pointer;
}

.prod_button img {
  display: inline-block;
  vertical-align: middle;
  padding: 14px 0px 21px 4px;
}

.prod_grid {
  padding: 0px 20px 100px 20px;
  margin: auto;
  max-width: 1280px;
}

.prod_row_1, .prod_row_2, .prod_row_3 {
  display: flex;
  flex-direction: row;
  gap: 20px;
}

.prod_row_3 {
  padding-top: 20px;
}

.prod_column_0 {
  width: 100%;
  margin: auto;
  margin-bottom: 20px;
  overflow: hidden;
  border: 2px solid #44F4B3;
  background-color: #FFFFF6;
}

.prod_column_0 .prod_container {
  display: block;
  margin: 12px;
  height: 450px;
  overflow: hidden;
  text-align: center;
  background-image: url("../images/giftshop/products/prod_hero2.jpg");
  background-position: center;
  background-position: bottom;
  background-repeat: no-repeat;
  background-size: cover;
}

@media screen and (max-width: 800px) {
  .prod_column_0 .prod_container {
    height: 320px;
  }
}
.prod_column_0 .prod_container img {
  margin: 12px;
  height: 100%;
}

.prod_column_1 {
  width: 33.33%;
  margin: auto;
  border: 2px solid #44F4B3;
  background-color: #FFFFF6;
}

.prod_column_2 {
  width: 50%;
  margin: 20px auto auto auto;
  border: 2px solid #44F4B3;
  background-color: #FFFFF6;
}

.prod_image_container {
  height: auto;
  overflow: hidden;
}

.prod_column_1 img {
  height: auto;
}

.prod_column_1 p, .prod_column_2 p {
  padding: 8px 12px 20px 12px;
  overflow: hidden;
  color: #222222;
  text-align: left;
  font-family: urw-din, Helvetica Neue, Sans-Serif;
  font-weight: 200;
  font-style: normal;
  font-size: 18px;
  line-height: 26px;
}

.prod_column_1 p {
  height: 88px;
}

.prod_column_2 p {
  height: 72px;
}

.prod_column_1 h5, .prod_column_2 h5 {
  padding: 12px 12px 0px 12px;
}

.prod_container {
  height: 100%;
  padding: 12px;
}

.prod_column_1 img, .prod_column_2 img {
  width: 100%;
}

.intro {
  text-align: center;
  line-height: 34px;
  max-width: 780px;
  margin: 60px auto 0px auto;
  padding: 0px 40px 60px 40px;
  color: #444444;
}

.intro a {
  text-decoration: none;
  color: #6219FF;
}

.intro a:hover {
  background: #E4F4E9;
}

.intro .outlink_icon {
  vertical-align: middle;
  display: inline-block;
  padding: 0px;
  background: none;
}

.nowrap {
  white-space: nowrap;
}

@media screen and (max-width: 1200px) {
  .prod_column_1 p, .prod_column_3 p {
    height: 124px;
  }
  .prod_column_2 p {
    height: 80px;
  }
}
@media screen and (max-width: 1000px) {
  .prod_column_1 p, .prod_column_2 p {
    font-size: 16px;
    line-height: 24px;
  }
  .prod_column_1 h5 {
    font-size: 18px;
  }
  .prod_intro h5 {
    padding: 0px 40px 0px 40px;
  }
}
@media screen and (max-width: 800px) {
  .prod_column_1, .prod_column_2 {
    float: left;
    width: 100%;
    margin: auto;
  }
  .prod_row_3 {
    padding-top: 0px;
  }
  .prod_row_1, .prod_row_2, .prod_row_3 {
    display: flex;
    margin-top: 20px;
    flex-direction: column;
    gap: 20px;
  }
  .prod_column_1 p {
    height: 80px;
    font-size: 20px;
    line-height: 30px;
  }
  .prod_column_2 p {
    height: 80px;
    font-size: 20px;
    line-height: 30px;
  }
  .prod_column_1 h5, .prod_column_2 h5 {
    font-size: 24px;
  }
  .prod_image_container {
    height: 260px;
    overflow: hidden;
    position: relative;
  }
  .prod_image_container img {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
  }
  .intro {
    padding: 0px 20px 40px 20px;
  }
}
@media screen and (max-width: 650px) {
  .prod_column_1 p, .prod_column_2 p {
    height: 100px;
    font-size: 20px;
    line-height: 30px;
  }
  .intro {
    font-size: 20px;
    line-height: 32px;
    text-align: center;
    max-width: 780px;
    margin: 60px auto 20px auto;
    padding: 0px 40px 20px 40px;
    color: #444444;
  }
  .intro .outlink_icon {
    scale: 0.8;
    height: 40px;
  }
}
/* PHOTOSHOOTS –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
#photo {
  background-color: #F8F4F1;
  padding: auto;
  padding-bottom: 120px;
}

#photo_table {
  border-collapse: collapse;
  width: 100%;
  max-width: 1000px;
  margin: auto;
  text-align: center;
}

#photo_table td {
  font-family: Baskerville-URW, filosofia, serif;
  font-size: 20px;
  width: 33%;
  padding-top: 40px;
  padding-bottom: 40px;
  text-align: center;
  background-color: #fff;
  color: #222;
}

#photo_table th {
  font-family: Baskerville-URW, filosofia, serif;
  font-size: 20px;
  width: 33%;
  padding-top: 40px;
  padding-bottom: 40px;
  text-align: center;
  color: #222;
}

#photo_table th {
  font-family: Baskerville-URW, filosofia, serif;
  font-size: 20px;
  width: 33%;
  padding-top: 40px;
  padding-bottom: 40px;
  text-align: center;
  border: 4px solid #fff;
  background-color: none;
  color: #222;
}

.photo_table2, .photo_table3 {
  border: 4px solid #fff;
  border-bottom: 4px solid #F8F4F1;
}

.photo_table3 {
  border-bottom: none;
  border-top: none;
}

.intro_note {
  font-family: Baskerville-URW, filosofia, serif;
  font-style: italic;
  font-size: 20px;
  line-height: 32px;
  width: 100%;
  font-weight: 100;
  color: #6219FF;
}

@media screen and (max-width: 650px) {
  #photo_table td {
    font-family: Baskerville-URW, filosofia, serif;
    font-size: 16px;
    width: 33%;
    padding-top: 20px;
    padding-bottom: 20px;
  }
  #photo_table th {
    font-family: Baskerville-URW, filosofia, serif;
    font-size: 16px;
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
/* FOOTER –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
* {
  box-sizing: border-box;
}

footer .row2 {
  display: flex;
  gap: 20px;
  padding-top: 40px;
  list-style-type: none;
  justify-content: center;
  font-family: Baskerville-URW, filosofia, serif;
  font-size: 16px;
  line-height: 28px;
  font-weight: 400;
  color: #222;
  text-align: center;
}

footer div {
  letter-spacing: 1px;
}

footer {
  border-top: 1px dashed #888;
  margin: auto;
  background-color: #FFFFFF;
  padding: 40px 40px 120px 40px;
}

footer .info_1 {
  order: 1;
}

footer .info_2 {
  order: 2;
}

footer .info_3 {
  order: 3;
}

footer .info_4 {
  order: 4;
  display: none;
}

footer .info_2,
footer .info_1,
footer .info_3,
footer .info_4 {
  float: left;
  width: 33%;
  padding: 40px 40px 0px 40px;
  text-align: center;
}

footer .info_1 div,
footer .info_3 div,
footer .info_4 div {
  padding-top: 20px;
}

footer .row p {
  font-family: Baskerville-URW, Source Serif Pro, Georgia;
  font-size: 16px;
  line-height: 28px;
  font-weight: 400;
  color: #222;
  text-align: center;
}

footer .row {
  max-width: 1280px;
  margin: auto;
}

footer .row:after {
  content: "";
  display: table;
  clear: both;
}

@media screen and (max-width: 1000px) {
  footer .row2 {
    display: none;
  }
  footer .info_1 {
    order: 1;
  }
  footer .info_2 {
    order: 3;
  }
  footer .info_3 {
    order: 3;
  }
  footer .info_4 {
    order: 4;
    display: block;
  }
  footer .info_1,
  footer .info_2,
  footer .info_3,
  footer .info_4 {
    width: 50%;
    height: auto;
  }
  footer .info_2 img {
    float: none;
    text-align: center;
  }
  footer .info_3 {
    text-align: right;
    padding-top: 40px;
    height: 100%;
    overflow: hidden;
  }
  footer .info_3 showup {
    height: 200px;
  }
  footer .info_1 div,
  footer .info_2 div,
  footer .info_3 div,
  footer .info_4 div {
    width: 100%;
    margin: auto;
  }
  footer .row {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
  }
  footer .row p {
    text-align: center;
  }
}
@media screen and (max-width: 640px) {
  footer .info_1,
  footer .info_2,
  footer .info_3,
  footer .info_4 {
    width: 100%;
  }
  footer .info_1 {
    order: 1;
  }
  footer .info_2 {
    order: 4;
  }
  footer .info_3 {
    order: 2;
  }
  footer .info_4 {
    order: 3;
  }
  footer .info_2 {
    text-align: cneter;
    padding-top: 80px;
  }
  footer .row {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    padding-bottom: 40px;
  }
  footer .row p {
    text-align: center;
  }
  footer .info_2 img {
    text-align: center;
    float: none;
  }
}

/*# sourceMappingURL=styles.css.map */
