/***************************************************************************/
/***************************************************************************/
/****  L A Y O U T  &  T Y P E  ********************************************/
/***************************************************************************/
/***************************************************************************/

.page_content {
  width: 100%;
  /*margin: 40px 0 90px 0;*/
  margin: 0 0 90px 0;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-gap: 30px;
  --col_1w: calc(100vw / 12);
}

.content_top .page_head {
  grid-column: 3/11;
}
.content_top .page_text,
.content_top .page_text .search {
  grid-column: 3/9;
  padding-bottom: 60px;
}
.content_sliders {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-gap: 30px;
}
.content_bottom .page_text,
.page_sliders {
  grid-column: 3/10;
}

.content_top .people_grid {
  grid-column: 1/9;
}

.page_text {
  position: relative;
  z-index: 3;
}

.gallery_selections {
  grid-column: 10/12;
  border-left: 1px solid #ccc;
  padding-left: 60px;
}

.content_middle {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-gap: 0;
  margin: 15vh 0;
}

.news_selections {
  grid-column: 1/5;
  height: fit-content;
  padding: 30px 0 30px 10%;
  background-color: #333;
  color: #777;
  /*margin-top: 7vh;*/
  position: relative;
  z-index: 50;
  background-image: url(../../../../sites/default/files/images/patterns/pattern-wey-k-20.png);
}

@media only screen and (max-width: 1024px) {
  .content_top .page_head {
    grid-column: 2/11;
  }
  .content_top .page_head {
    grid-column: 2/11;
  }
  .content_top .page_text {
    grid-column: 2/10;
    padding-bottom: 60px;
  }
  .content_bottom .page_text,
  .page_sliders {
    grid-column: 2/12;
    padding-top: 0;
  }
  .content_middle {
    margin: 7vh 0;
  }
  /*
  .news_selections {
    margin-top: -40px;
  }
  */
  .gallery_selections {
    grid-column: 10/13;
    padding-left: 20px;
    padding-right: 30px;
  }
}

@media only screen and (max-width: 768px) {
  .content_top .page_head {
    grid-column: 2/12;
  }
  .content_top .page_text {
    grid-column: 2/12;
    padding-bottom: 10px;
  }
  .content_bottom .page_text,
  .page_sliders {
    grid-column: 2/12;
    padding-top: 10px;
  }
  .content_middle {
    margin: 4vh 0;
  }
  .gallery_selections {
    display: none;
  }
}

.content_features {
  width: 100%;
}

.page_bottom_sidebar {
  grid-column: 1/5;
}

footer.site-footer {
  background-color: #222;
}

h1,
h2 {
  margin: 0.5rem 0;
  font-size: 1.5rem;
  font-weight: 700;
}

p {
  margin-bottom: 1rem;
}

.page_content .page_head span {
  font-size: 8rem;
  line-height: 8rem;
  letter-spacing: -4px;
  font-style: italic;
  font-weight: 600;
  color: #777767;
  transition: all 0.3s ease;
}

.page_text h3,
.sliders h3 {
  font-size: 2rem;
  line-height: 2.3rem;
  margin-top: 3rem;
  font-style: italic;
  font-weight: 900;
  color: #222;
  transition: all 0.3s ease;
}

.page_text h4,
.sliders h4 {
  font-family: var(--font-main_sans);
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: 1rem;
  line-height: 1.7rem;
  margin-top: 2rem;
  margin-bottom: 0.2rem;
  font-weight: 900;
  /*color: #333;*/
  color: var(--color_app_orange);
  transition: all 0.3s ease;
}

.sliders .slider_item .slider_content {
  height: fit-content;
  overflow: hidden;
  display: none;
  padding-bottom: 30px;
}

.sliders .slider_item h4 {
  padding-right: 60px;
  position: relative;
  padding-top: 1.5rem;
  border-top: 1px solid #888;
  margin-bottom: 3rem;
  height: fit-content;
}

.sliders .slider_item a.nav_caret {
  position: absolute;
  right: 0;
  top: 12px;
  cursor: pointer;
  font-size: 30px;
  font-weight: 900;
  margin: 0;
  border: none;
  line-height: unset;
  color: var(--color_app_orange);
  transition: all 0.3s ease;
}

.page_text h3 + h4 {
  margin-top: 2rem;
}

.page_text h5,
.sliders h5 {
  /*font-family: var(--font-main_sans);*/
  /*text-transform: capitalize;*/
  font-style: italic;
  font-size: 1.9rem;
  line-height: 2.2rem;
  margin-top: 2rem;
  margin-bottom: 0;
  font-weight: 900;
  color: #888880;
  transition: all 0.3s ease;
}

.page_text h6,
.sliders h6 {
  font-family: var(--font-main_sans);
  /*text-transform: capitalize;*/
  text-transform: uppercase;
  /*font-style: italic;*/
  font-size: 1rem;
  line-height: 1.3rem;
  margin-top: 2rem;
  margin-bottom: 0.2rem;
  font-weight: 900;
  color: #000;
  letter-spacing: 2px;
  transition: all 0.3s ease;
}

.page_text p,
.sliders p {
  font-size: 1.5rem;
  line-height: 2.3rem;
  font-weight: 400;
  color: #555;
  margin-bottom: 1.25rem;
  transition: all 0.3s ease;
}

/*
.page_text p:first-of-type::first-line {
  font-weight: 900 !important;
  font-size: 2rem;
  font-variant: all-small-caps !important;
  letter-spacing: 2px !important;
  color: var(--color_app_orange) !important;
  text-transform: lowercase !important;
}
*/

.page_text h3 + p:first-of-type::first-line,
.page_text h4 + p:first-of-type::first-line {
  font-size: 1.5rem;
  line-height: 2.3rem;
  font-weight: 400;
  color: #555;
  margin-bottom: 1.25rem;
  letter-spacing: 0;
  text-transform: none;
  font-variant: none;
}

.page_text > p:first-of-type::first-line,
.content_top > .page_text > p:first-of-type::first-line {
  font-weight: 900 !important;
  font-size: 1.7rem !important;
  font-variant: all-small-caps !important;
  letter-spacing: 1px !important;
  color: var(--color_app_orange) !important;
  text-transform: lowercase;
}

.content_bottom > .page_text p:first-of-type::first-line {
  font-size: 1.5rem !important;
  line-height: 2.3rem !important;
  font-weight: 400 !important;
  color: #555 !important;
  font-variant: none !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.page_text p strong {
  font-weight: 700;
}
.page_text p em,
.sliders p em {
  font-style: italic;
}

.page_text a,
.page_text a:link,
.page_text a:visited,
.sliders a,
.sliders a:link,
.sliders a:visited {
  font-weight: 600;
  text-decoration: none;
  color: var(--color_text_link);
  border-bottom: 1px solid var(--color_text_link);
  transition: all 0.3s ease;
}
.page_text a:hover,
.sliders a:hover {
  color: var(--color_text_hover_link);
  border-bottom: 1px solid var(--color_text_hover_link);
}

.page_text figcaption,
.page_text figcaption a {
  font-family: var(--font-main_sans);
  margin-top: 0.7rem;
  font-weight: 600;
  font-style: italic;
  color: #888;
  display: block;
  margin-bottom: 2rem;
}
.page_text figure a,
.page_text figure a:link,
.page_text figure a:visited,
.page_text figure a:hover {
  border-bottom: none !important;
}

.page_text figure a img,
.page_text figure a:visited img {
  transition: border 0.3s ease;
  border: 1px solid #ccc;
}

.page_text figure a:hover img {
  border: 1px solid var(--color_text_hover_link);
}

.page_text p + ul,
.page_text p + ol {
  margin-top: 1rem;
}

.page_text ul,
.page_text ol {
  margin: 1.5rem 0;
}

.page_text h4 + ul,
.page_text h4 + ol {
  margin-top: 0;
  margin-bottom: 0;
}

.page_text ul ul,
.page_text ul ol {
  margin: 0 0 1rem 0;
}

.page_text ul,
.page_text ol, 
.sliders ul,
.sliders ol {
  list-style-position: outside;
  padding-left: 1.6rem;
}
.page_text ul li,
.page_text ol li, 
.sliders ul li,
.sliders ol li {
  font-size: 1.5rem;
  line-height: 2.3rem;
  font-family: var(--font-main_serif);
  list-style: square;
}
.page_text ol li {
  list-style: decimal;
}
.page_text ul li em,
.page_text ol li em {
  font-style: italic;
}

@media only screen and (max-width: 1280px) {
  .page_content .page_head span {
    font-size: 5.5rem;
    line-height: 5.7rem;
    letter-spacing: -3px;
  }
  .page_text ul li,
  .page_text ol li, 
  .page_text p,
  .sliders p,
  .content_bottom .page_text p:first-of-type::first-line,
  .page_text h3 + p:first-of-type::first-line,
  .page_text h4 + p:first-of-type::first-line {
    font-size: 1.4rem !important;
    line-height: 2.3rem !important;
  }
  .content_top > .page_text > p:first-of-type::first-line {
    font-size: 1.3rem !important;
  }
}

@media only screen and (max-width: 1024px) {
  .page_content .page_head span {
    font-size: 5rem;
    line-height: 5.2rem;
    letter-spacing: -3px;
  }
  .page_text h3 {
    font-size: 1.8rem;
    line-height: 2.1rem;
    margin-top: 2rem;
  }
  .page_text h4,
  .sliders h4 {
    font-size: 0.9rem;
    line-height: 1.1rem;
  }

  .page_text h6,
  .sliders h6 {
    font-size: 0.9rem;
    line-height: 1.1rem;
  }

  .page_text ul li,
  .page_text ol li,
  .sliders ul li,
  .page_text p,
  .sliders p,
  .content_bottom .page_text p:first-of-type::first-line {
    font-size: 1.3rem !important;
    line-height: 1.9rem !important;
  }
  .page_text p:first-of-type::first-line {
    font-size: 1.2rem !important;
  }
}

@media only screen and (max-width: 768px) {
  .page_content .page_head span {
    font-size: 5rem;
    line-height: 5.2rem;
    letter-spacing: -2px;
  }
  .page_text h3 {
    font-size: 2rem;
    line-height: 2.3rem;
    margin-top: 2rem;
  }
  .page_text h4,
  .sliders h4 {
    font-size: 0.8rem;
    line-height: 1rem;
  }
  .page_text h6,
  .sliders h6 {
    font-size: 0.8rem;
    line-height: 1rem;
  }

  .page_text ul li,
  .page_text ol li,
  .sliders ul li,
  .sliders ol li,
  .page_text p,
  .content_bottom .page_text p:first-of-type::first-line {
    font-size: 1.1rem !important;
    line-height: 1.6rem !important;
  }
  .page_text > p:first-of-type::first-line,
  .content_top > .page_text > p:first-of-type::first-line {
    font-size: 1.2rem !important;
  }
}

@media only screen and (max-width: 480px) {
  .page_content .page_head span {
    font-size: 3.5rem;
    line-height: 3.7rem;
    letter-spacing: -1px;
  }
}

.page_text table {
  font-family: var(--font-main_sans);
  margin: 2rem 0;
}

.page_text table thead th {
  background-color: #000;
  border: none;
  color: #fff;
}

.page_text table tr {
  background-color: #fff;
}

.page_text table th,
.page_text table th,
.page_text table td {
  border: 1px solid #ccc;
}
.page_text table th,
.page_text table td,
.page_text table td li {
  font-family: var(--font-main_sans);
  color: #333;
  font-size: 1rem;
  line-height: 1.6rem;
  font-weight: 400;
  padding: 0.8rem;
}
.page_text table th {
  font-weight: 700;
  font-style: italic;
  text-align: left;
}
.page_text table thead th {
  font-style: normal;
  color: var(--color_app_gold);
  text-transform: uppercase;
  letter-spacing: 1px;
}

.page_text table td.yellow {
  background-color: var(--color_app_gold);
  font-weight: 700;
  font-style: italic;
}

.page_text table td ul,
.page_text table td ol {
  margin: 0;
}

.page_text table td li {
  border: none;
  padding: 0;
  margin: 0;
  list-style: disc;
  margin-left: 1rem;
}

table#gdtable td {
  width: 50%;
}

@media only screen and (max-width: 640px) {
  .page_text table th,
  .page_text table td,
  .page_text table td li {
    font-size: 11px;
    line-height: 14px;
    padding: 8px;
  }
  .page_text table th {
    font-size: 8px;
    line-height: 11px;
    hyphens: auto;
  }

  .page_text table td li {
    margin-left: 8px;
  }
}

/***************************************************************************/
/***************************************************************************/
/****  S E A R C H  ********************************************************/
/***************************************************************************/
/***************************************************************************/
#page_header #search {
  position: absolute !important;
  right: calc(100% / 12);
  top: 15px;
  width: 40%;
  min-width: 350px;
  height: 25px;
  text-align: right;
}

/* Target the exposed form’s submit button */
#page_header #search #views-exposed-form-search-page-1 input#edit-submit-search.search_icon {
  position: relative;
  background-image: url(../../../../sites/default/files/images/search-white.png);
  background-repeat: no-repeat;
  background-position: center;
  color: transparent;
  background-color: transparent;
  transition: all 0.3s ease;
  /*color: red;*/
  /*border: red solid 4px;*/
  /*visually hide the text */
  /*padding: 0.4rem 0.8rem;*/
}

#page_header #search #views-exposed-form-search-page-1 input#edit-submit-search.search_icon:focus,
#page_header #search #views-exposed-form-search-page-1 input#edit-submit-search.search_icon:hover {
  background-image: url(../../../../sites/default/files/images/search-gold.png);
  cursor: pointer;
}

/* Add the FA icon */
/*
#page_header #search #views-exposed-form-search-page-1 input#edit-submit-search--2.search_icons::before {
  font-family: "Font Awesome Kit";
  font-weight: 900; 
  content: "\f002";
  color: #000 !important;
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
}
*/

#page_header #search form div,
#page_header #search div.block-views block-views-exposed-filter-blocksearch-page-1 {
  display: inline-block;
}

#page_header #search span {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-family: var(--font-main_sans);
  color: white;
  float: left;
  margin-right: 20px;
}

#page_header #search h2 {
  display: none;
}

#page_header #search input {
  display: inline-block;
  height: 20px;
  padding-top: 0;
  font-family: var(--font-main_sans);
}
#page_header #search input.form-submit {
  height: 25px;
  width: 25px;
  border: none;
  margin: 2px 8px;
  font-size: 12px;
  color: #777;
}

.search-headline {
  font-size: 1.5rem;
  padding-top: 10px;
  border-top: 1px solid #ccc;
  margin-top: 3rem;
  display: block;
  margin-bottom: 0.5em;
}
.page_text.search {
  min-height: 60vh;
}

.page_text.search .search-headline a {
  text-decoration: none;
  border-bottom: none;
}

.content_top .page_text.search h2 {
  font-size: 3rem !important;
  line-height: 3.3rem !important;
  font-weight: 600;
  font-style: italic;
  letter-spacing: -1px;
  color: #777767;
}
.content_top .page_text.search h3 {
  font-size: 1rem !important;
  line-height: 1.3rem !important;
  margin-bottom: 0;
}
.content_top .page_text.search h4 {
  font-size: 0.8rem !important;
  line-height: 1.1rem !important;
  margin-bottom: 0;
  color: black;
}
.content_top .page_text.search li,
.content_top .page_text.search p,
.content_top .page_text.search p::first-line,
.content_top .page_text.search p:first-of-type::first-line {
  font-variant: none !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  /*font-size: 1.5rem;*/
  /*line-height: 2.3rem;*/
  font-size: 1rem !important;
  line-height: 1.3rem !important;
  font-weight: 400;
  color: #555;
  margin-bottom: 1.25rem;
  transition: all 0.3s ease;
}

.content_top .page_text.search .excerpt {
  font-size: 1rem;
  line-height: 1.4rem;
  margin-bottom: 1rem;
  display: block;
  font-style: italic;
  padding-left: 30px;
}

.content_top .page_text.search .excerpt strong {
  /*background-color: var(--color_app_gold);*/
  background-color: #ffe799;
}

@media only screen and (max-width: 560px) {
  #page_header #search {
    /*right: unset;*/
    right: 10px;
    /*top: 57px;*/
    /*width: 90%;*/
    width: 70%;
    /*left: 30px;*/
    min-width: unset;
    /*text-align: left;*/
  }
  #page_header #search input {
    /*width: 139px;*/
    width: 38vw;
  }
  #page_header #search form div.form-item-search-api-fulltext {
    width: unset;
  }
  #page_header #search input.form-submit {
    height: 25px;
    width: 60px;
    margin-left: 8px;
    background-color: white;
  }
}

/***************************************************************************/
/***************************************************************************/
/****  I N T R O   *********************************************************/
/***************************************************************************/
/***************************************************************************/

#intro {
  margin: 0;
  width: 100%;
  /*height: calc(50vh - 46px);*/
  height: calc(100vw / 16 * 9);
  position: relative;
  z-index: 95;
  display: flex;
  align-items: center;
}

#intro.image {
  /*height: calc(50vh - 46px);*/
  height: calc(100vw / 16 * 9);
  max-height: 66vh;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
#intro.pattern {
  /*height: calc(50vh - 46px);*/
  background-color: var(color_app_gold);
  background-repeat: repeat;
}

#intro.carousel {
  background-repeat: no-repeat;
  background-image: none;
  top: 0;
  margin: 0;
  padding: 0;
}

#intro.carousel .swiper-wrapper {
  width: 100%;
  padding: 0;
}

#intro.carousel .swiper.swiper-container {
  width: 100%;
  padding: 0;
  background-color: white;
}

#intro.carousel .swiper-slide {
  padding-bottom: 0;
  width: 100%;
}

#intro.carousel .swiper_card img {
  object-fit: cover;
  object-position: center;
  width: 100%;
  /*opacity: 0.2;*/
}

#intro.carousel .swiper-pagination {
  padding-bottom: 10px;
  position: absolute;
  z-index: 999 !important;
}

#intro #intro_head {
  height: fit-content !important;
  overflow: hidden;
  position: absolute;
  z-index: 96;

  background-color: #111;
  opacity: 0.9;
  padding: 2rem 4% 2rem 4%;
  border-right: 18px solid var(--color_app_orange);
  border-bottom: 9px solid var(--color_app_orange);

  margin-top: 20vh;
}

#intro.image,
#intro.pattern {
  /*justify-content: center;*/
  align-items: center;
  flex-wrap: wrap;
  display: flex;
  /*height: calc(50vh - 46px);*/
  /*height: calc(100vw/16*9);*/
}
#intro.image #intro_head,
#intro.pattern #intro_head {
  top: auto;
  overflow: hidden;
  position: unset;
}

#intro.carousel,
#intro.carousel .swiper-wrapper,
#intro.carousel .swiper.swiper-container,
#intro.carousel .swiper-slide,
#intro.carousel .swiper_card img,
#intro.carousel #intro_head {
  height: calc(100dvh - 98px - 40px);
}

#intro #intro_head h2 {
  min-width: 35vw; /* won't go smaller than 35% of viewport */
  max-width: 70vw; /* won't go larger than 80% of viewport */
  width: fit-content; /* size to text */
  box-sizing: border-box;
  display: inline-block;
  font-weight: 300;
  font-size: 5rem;
  line-height: 3.8rem;
  color: white;
  text-transform: capitalize;
  font-variant: all-small-caps !important;
  text-align: left;
  margin: 0;
  letter-spacing: 1px;
}

#intro #intro_head h2 span.smallcaps {
  font-size: 1.5rem;
  line-height: 1.8rem;
  display: block;
  color: #aaa;
  letter-spacing: 3px;
  padding-left: 3px;
  margin-top: 0.7rem;
}

.swiper-pagination-bullets span.swiper-pagination-bullet {
  margin: 0 8px !important;
}

@media only screen and (max-width: 1024px) {
  #intro.carousel,
  #intro.carousel .swiper-wrapper,
  #intro.carousel .swiper.swiper-container,
  #intro.carousel .swiper-slide,
  #intro.carousel .swiper_card img,
  #intro.carousel #intro_head {
    height: calc(60vh - 98px - 40px);
    /*height: 50vh;*/
  }

  #intro #intro_head {
    /*width: 100%;*/
    /*top: 20vh;*/
    margin-top: 15vh;
    padding: 1rem 4% 1rem 4%;
  }

  #intro #intro_head h2 {
    /*width: min-content;*/
    /*max-width: unset;*/
    font-size: 4rem;
    line-height: 3.1rem;
  }
  #intro #intro_head h2 span.smallcaps {
    font-size: 1.2rem;
    line-height: 1.4rem;
    margin-top: 6px;
    letter-spacing: 2px;
    /*max-width: 50%;*/
  }
}

@media only screen and (max-width: 480px) {
  #intro.carousel,
  #intro.carousel .swiper-wrapper,
  #intro.carousel .swiper.swiper-container,
  #intro.carousel .swiper-slide,
  #intro.carousel .swiper_card img,
  #intro.carousel #intro_head {
    /*height: calc(45vh - 98px - 46px);*/
    height: 40vh;
  }

  #intro #intro_head {
    padding: 0.7rem 4% 0.7rem 4%;
    border-right: 14px solid var(--color_app_orange);
    border-bottom: 7px solid var(--color_app_orange);
  }

  #intro.image,
  #intro.pattern {
    /*height: calc(45vh - 98px - 46px);*/
    height: 40vh;
  }

  #intro #intro_head h2 {
    /*max-width: fit-content;*/
    /*max-width: 60%;*/
    /*width: 60%;*/
    font-size: 2.2rem;
    line-height: 2rem;
  }
  #intro #intro_head h2 span.smallcaps {
    font-family: var(--font-main_sans);
    font-weight: 400;
    font-size: 11px;
    line-height: 12px;
    letter-spacing: 1px;
    margin-top: 2px;
    /*color: #999;*/
  }
}

@media only screen and (max-width: 400px) {
  #intro #intro_head {
    padding: 0.7rem 4% 0.7rem 4%;
    border-right: 12px solid var(--color_app_orange);
    border-bottom: 6px solid var(--color_app_orange);
  }

  #intro #intro_head h2 {
    font-size: 1.3rem;
    line-height: 1.1rem;
  }
  #intro #intro_head h2 span.smallcaps {
    font-size: 10px;
    line-height: 11px;
    letter-spacing: 1px;
    margin-top: 2px;
    color: #ccc;
  }
}

/***************************************************************************/
/***************************************************************************/
/**** S W I P E R   ********************************************************/
/***************************************************************************/
/***************************************************************************/

.swiper.swiper-container {
  width: calc(100vw - 180px);
  padding: 30px 90px 0 90px;
  background-color: #f0f0eb;
  background-image: url(../../../../sites/default/files/images/patterns/pattern-wey04-w-50.png);

  /*--swiper-navigation-color: var(--swiper-theme-color);*/
  --swiper-navigation-color: #444;
  --swiper-pagination-color: #444;
}

section.feature.person .swiper.swiper-container {
  /*background-image: url(../../../../sites/default/files/images/patterns/pattern-wey04-k-10.png);*/
  background-image: none;
}


#intro .swiper.swiper-container {
  background-image: none;
  background-color: #fff;
}

#alumni.swiper.swiper-container,
section.feature.person .swiper.swiper-container {
  background-color: #333 !important;
  --swiper-navigation-color: #eee;
  --swiper-pagination-color: #eee;
}

#alumni span.swiper-pagination-bullet,
section.feature.person span.swiper-pagination-bullet {
  background: #aaa;
}

section.feature.person {
  /*background-image: url(../../../../sites/default/files/images/patterns/pattern-wey04-w-20.png);*/
  background-color: #333 !important;
  /*background-color: #f0f0eb !important;*/
  padding-top: 80px;
}

section.feature.person > .feature_description {
  margin-top: 0 !important;
}

.swiper h3 {
  font-family: var(--font-main_serif);
  text-transform: lowercase;
  font-variant: small-caps;
  font-weight: 900;
  letter-spacing: 2px;
  text-align: center;
  font-size: 2.5rem;
  line-height: 2rem;
  color: #888;
  margin: 40px 0;
}

.swiper.swiper-container span a {
  display: block;
  font-size: 0.8rem;
  text-align: center;
  font-family: var(--font-main_sans);
  text-transform: uppercase;
  font-weight: 300;
  letter-spacing: 4px;
  text-decoration: none;
  margin-bottom: 40px;
  color: #999;
  transition: color 0.4s ease;
}
.swiper.swiper-container span a:hover {
  color: white;
}

.swiper-button-next:after,
.swiper-button-prev:after {
  opacity: 0.4;
  transition: opacity 0.3s ease;
}

.swiper-button-next:hover:after,
.swiper-button-prev:hover:after {
  opacity: 1;
}

.swiper-wrapper {
  height: 50vh;
  width: 100%;
  padding-bottom: 80px;
}

.swiper-pagination {
  padding: 10px 0;
}

.swiper .swiper-slide {
  align-self: center;
}
.swiper_card img {
  height: auto;
  width: 100%;
  user-select: none;
  margin-bottom: 20px;
}

section.feature .swiper-slide span.img_info {
  font-style: normal;
}

.swiper.swiper-container .swiper-slide span.img_info {
  font-size: 0.8rem;
  line-height: 1.3rem;
  font-weight: 700;
  text-transform: uppercase;
  /*font-variant: all-small-caps;*/
  letter-spacing: 2px;
  /*font-style: italic;*/
  color: #696969;
  margin: 0 0 6px 0;
  font-family: azo-sans-web, sans-serif;
}
.swiper.swiper-container .swiper-slide span.name_first,
.swiper.swiper-container .swiper-slide span.name_last {
  /*margin: 0.5rem 0 0 0;*/
  padding: 0;
  color: #696969;
  font-family: azo-sans-web, sans-serif;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 300;
  font-size: 0.8rem;
  line-height: 1.3rem;
  display: inline-block;
}


/*
1024
820
*/
.person .swiper.swiper-container .swiper-slide span.name_first,
.person .swiper.swiper-container .swiper-slide span.name_last,
.person .swiper.swiper-container .swiper-slide span.img_info {
  color: #aaa;
}

.swiper.swiper-container .swiper-slide span.name_first::after {
  /*content: "\00a0";*/
  /*content: "\0020";*/
  /*content: "\2008";*/
  /*content: "\2009";*/
  content: "\200A";
}

.swiper.swiper-container .swiper-pagination-bullets {
  bottom: 16px;
}


@media only screen and (max-width: 768px) {
  .swiper.swiper-container .swiper-slide span.name_first,
  .swiper.swiper-container .swiper-slide span.name_last {
    font-size: 10px;
    line-height: 14px;
  }

  .swiper h3 {
    font-size: 1.5rem;
    line-height: 1rem;
    margin: 20px 0;
  }
}

/***************************************************************************/
/***************************************************************************/
/****  M I D - I M A G E S  ************************************************/
/***************************************************************************/
/***************************************************************************/

#mid-images {
  grid-column: 5/13;
  width: 100%;
  display: grid;
  max-height: 50vh;
  grid-template-columns: 6fr 4fr;
  position: relative;
  /*z-index: -3;*/
}

#mid-images .mid-images-img:first-of-type {
  position: relative;
  z-index: 31;
  margin-top: 10px;
  margin-left: -1vw;
  max-height: 50vh;
  overflow: hidden;
}
#mid-images .mid-images-img:last-of-type {
  margin-left: -3vw;
  /*margin-bottom: 20px;*/
  max-height: 50vh;
  overflow: hidden;
}

.mid-images-img:first-child,
.mid-images-img:last-child {
  position: relative;
  will-change: transform;
}

.mid-images-img > img,
#mid-images .mid-images-img:first-of-type > img,
#mid-images .mid-images-img:last-of-type > img {
  object-fit: cover;
  object-position: center;
  height: 100%;
  width: 100%;
}

@media only screen and (max-width: 1440px) {
  .news_selections {
    grid-column: 1/6;
    grid-row: 1;
  }
  #mid-images {
    grid-column: 6/13;
    grid-row: 1;
    padding-top: 10vh;
  }
}

@media only screen and (max-width: 1024px) {
  .news_selections {
    grid-column: 1/7;
    grid-row: 1;
  }
  #mid-images {
    grid-column: 7/13;
    grid-row: 1;
    padding-top: 0;
  }
}

@media only screen and (max-width: 820px) {
  .news_selections {
    grid-column: 2/10;
    grid-row: 1;
  }
  #mid-images {
    grid-column: 1/13;
    grid-row: 2;
    padding-top: 2vh;
  }
}

@media only screen and (max-width: 768px) {
  .news_selections {
    grid-column: 2/11;
    grid-row: 1;
  }
  #mid-images {
    grid-column: 1/13;
    grid-row: 2;
  }
}
@media only screen and (max-width: 640px) {
  .news_selections {
    grid-column: 2/11;
    grid-row: 1;
  }
  #mid-images {
    grid-column: 1/13;
    grid-row: 2;
  }
}

/***************************************************************************/
/***************************************************************************/
/****  N E W S  S E L E C T I O N S  ***************************************/
/***************************************************************************/
/***************************************************************************/

.news_selections {
  padding: 20px 0 30px 10%;
}
.news_selections footer {
  background-color: white !important;
}

.news_selections h1 {
  color: #888;
  font-size: 3.5rem;
  line-height: 3.7rem;
  font-weight: 700;
  font-style: italic;
  margin-bottom: 1rem;
  transition: 0.3s all ease;
}

.news_selections > span {
  display: block;
  /*font-family: azo-sans-web, sans-serif;*/
  margin-bottom: 2rem;
  background-color: white;
  padding: 7px;
  border-top: 15px solid var(--color_app_orange);
  border-left: 20px solid var(--color_app_orange);
  transition: 0.6s all ease;
}

.news_selections > span:first-of-type {
  margin-left: 60px;
}
.news_selections > span:last-of-type {
  margin-bottom: 0;
}

.news_selections > span:hover {
  border-top: 15px solid var(--color_app_gold);
  border-left: 25px solid var(--color_app_gold);
  /*padding-left: 15px;*/
  color: #000;
}

.news_selections span a,
.news_selections span a:link,
.news_selections span a:visited {
  text-decoration: none;
  transition: 0.4s all ease;
}

.news_selections > span:hover a {
  color: #000;
}

.news_selections a,
.news_selections a:link,
.news_selections a:visited {
  border: none;
  margin-right: 60px;

  display: inline-block;

  font-family: study, serif;
  font-style: italic;
  font-weight: 900;
  font-size: 1.2rem;
  line-height: 1.6rem;
  letter-spacing: 0;
  color: #444;

  margin-top: 1.5rem;
  text-align: left;
  padding: 10px 20px;
  background-color: #fff;

  text-decoration: none;
  transition: all 0.3s ease;
  margin: 0;
  position: relative;
}
.news_selections span:hover,
.news_selections span:hover a:hover {
  color: #000;
}

.news_selections > span:hover a {
  padding-right: 15px;
}

.news_selections a.button_style_more {
  margin-top: 2.5rem;
  background-color: #444;
  font-family: "azo-sans-web", sans-serif;
  /*font-weight: 700;*/
  font-weight: 400;
  font-style: normal;
  font-size: 1rem;
  line-height: 1.3rem;
  color: #bbb;
  text-transform: uppercase;
  letter-spacing: 2px;
  transition: all 0.3s ease;
  margin-left: 25px;
}

.news_selections a.button_style_more:hover {
  background-color: #000;
  color: var(--color_app_gold);
}

@media (hover: none) {
  .news_selections > span:hover {
    padding-left: 7px;
    border-top: 15px solid var(--color_app_orange);
    border-left: 20px solid var(--color_app_orange);
    color: #444;
  }
  .news_selections > span:hover a {
    color: #444;
  }
  .news_selections a.button_style_more:hover {
    background-color: #444;
    color: #bbb;
  }
  .news_selections span:hover a:hover {
    color: #444;
  }
}

@media only screen and (max-width: 1024px) {
  .news_selections {
    padding: 20px 0 25px 10%;
  }
  .news_selections > span:first-of-type {
    margin-left: 30px;
  }

  .news_selections h1 {
    font-size: 2rem;
    line-height: 2.5rem;
  }
  .news_selections > span {
    margin-bottom: 1.5rem;
    padding: 10px;
    border-top: 8px solid var(--color_app_orange);
    border-left: 15px solid var(--color_app_orange);
  }
  .news_selections a,
  .news_selections a:link,
  .news_selections a:visited {
    margin-right: 60px;
    font-size: 1rem;
    line-height: 1.3rem;
    margin-top: 0;
    padding: 7px 10px;
  }

  .news_selections a.button_style_more {
    margin-top: 2rem;
    font-size: 0.8rem;
    line-height: 0.9rem;
  }
}

@media only screen and (max-width: 768px) {
  .news_selections {
    padding: 10px 0 20px 10%;
  }
  .news_selections h1 {
    font-size: 2.5rem;
    line-height: 2.6rem;
  }
  .news_selections > span {
    margin-bottom: 1rem;
    padding: 7px;
    border-top: 8px solid var(--color_app_orange);
    border-left: 15px solid var(--color_app_orange);
  }
  .news_selections a,
  .news_selections a:link,
  .news_selections a:visited {
    margin-right: 60px;
    font-size: 1rem;
    line-height: 1.3rem;
    margin-top: 0;
    padding: 7px 10px;
  }
  .news_selections a.button_style_more {
    margin-top: 1.5rem;
    font-size: 0.8rem;
    line-height: 0.9rem;
  }
}

@media only screen and (max-width: 640px) {
  .news_selections {
    padding: 10px 0 20px 10%;
  }
  .news_selections h1 {
    font-size: 1.5rem;
    line-height: 1.5rem;
  }
  .news_selections > span {
    margin-bottom: 1rem;
    padding: 7px;
    border-top: 7px solid var(--color_app_orange);
    border-left: 14px solid var(--color_app_orange);
  }
  .news_selections a,
  .news_selections a:link,
  .news_selections a:visited {
    margin-right: 60px;
    font-size: 0.85rem;
    line-height: 1.1rem;
    margin-top: 0;
    padding: 5px 8px;
  }
  .news_selections a.button_style_more {
    margin-top: 1.5rem;
    font-size: 0.5rem;
    line-height: 0.8rem;
    margin-left: 24px;
  }
}

/***************************************************************************/
/***************************************************************************/
/****  G A L L E R Y  S E L E C T I O N S  *********************************/
/***************************************************************************/
/***************************************************************************/

.gallery_item {
  margin-bottom: 60px;
}
.gallery_item img {
  margin-bottom: 1rem;
}

.gallery_selection_sidebar {
  width: 70%;
  margin: 100px 0;
}

.gallery_selection_sidebar img {
  object-fit: cover;
  object-position: center;
  height: 100%;
  width: 100%;
}

.gallery_selections .gallery_item h2 {
  font-family: study, serif;
  font-size: 1.2rem;
  line-height: 1.5rem;
  font-weight: 700;
  font-style: italic;
  margin-top: 0;
  margin-bottom: 0.3rem;
  color: #999;
  letter-spacing: 0;
  border: none;
  padding: 0;
}

.gallery_selections .gallery_item span {
  font-size: 0.85rem;
  line-height: 1rem;
  font-weight: 500;
  font-style: italic;
  display: inline;
  margin-bottom: 1rem;
  font-family: azo-sans-web;
  color: #667;
}
.gallery_selections .gallery_item span:first-of-type::after {
  content: " ";
}

.gallery_selections p,
.gallery_selections p a {
  color: #777;
  font-size: 0.8rem;
  line-height: 1.6rem;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  text-decoration: none;
  font-family: azo-sans-web;
}
.gallery_selections p {
  padding-right: 1rem;
  padding-top: 1rem;
  border-top: 1px solid #ccc;
}
.gallery_selections p a {
  color: var(--color_app_orange);
}

@media only screen and (max-width: 1024px) {
  .gallery_selections .gallery_item h2,
  .gallery_selections .gallery_item span,
  .gallery_selections p {
    padding-right: 20px;
  }
}

/***************************************************************************/
/***************************************************************************/
/****  W A T E R F A L L  **************************************************/
/***************************************************************************/
/***************************************************************************/

#waterfall,
#waterfall-node {
  --waterfall_height: calc(100vw / 8);
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  grid-template-rows: repeat(2, var(--waterfall_height));
  background-color: #222;
  margin: 0;
}
#waterfall-node {
  grid-template-rows: repeat(2, var(--waterfall_height));
}

@media only screen and (max-width: 640px) {
  #waterfall-node {
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(4, calc(2 * var(--waterfall_height)));
  }
}

#waterfall video,
#waterfall img,
#waterfall-node video,
#waterfall-node img {
  object-fit: cover;
  object-position: center;
  height: 100%;
  width: 100%;
  background-color: #222;
}

.waterfall_img {
  position: relative;
}

/***************************************************************************/
/***************************************************************************/
/****  F E A T U R E S  ****************************************************/
/***************************************************************************/
/***************************************************************************/

section.feature span.img_info {
  display: block;
  font-style: italic;
  margin-top: 1rem;
}

section.feature .feature_image {
  /*background-attachment: fixed;*/
  background-position: center;
  background-size: cover;
  background-repeat: none;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-direction: column;
  width: 100%;
  height: 120vh;
  position: relative;
}

section.feature .feature_image img {
  display: none;
}

section.feature .feature_image .feature_txt {
  align-self: stretch;
  height: fit-content;
  background-color: #111;
  width: 33.34%;
  opacity: 0.95;
  padding: 30px 50px;
}
section.feature .feature_image .feature_txt h3,
section.feature .feature_image .feature_txt p {
  font-size: 1.4rem;
  line-height: 2rem;
  font-weight: 700;
  /*color: #fff;*/
  color: var(--color_app_orange);
}
section.feature .feature_image .feature_txt h3 {
  font-style: normal;
  font-variant: all-small-caps;
  letter-spacing: 3px;
  line-height: 1.8rem;
}
section.feature .feature_image .feature_txt p {
  font-style: italic;
  font-weight: 400;
  color: #aaa;
}
@media only screen and (max-width: 1280px) {
  section.feature .feature_image .feature_txt {
    width: 40%;
  }
}
@media only screen and (max-width: 1024px) {
  section.feature .feature_image .feature_txt {
    width: 40%;
    margin-top: 10vh;
  }

  section.feature .feature_image .feature_txt h3 {
    font-size: 1.2rem;
    line-height: 1.5rem;
  }
  section.feature .feature_image .feature_txt p {
    font-size: 1.2rem;
    line-height: 2.1rem;
  }

  section.feature .feature_image {
    /*background-image: unset;*/
    position: relative;
    height: 60vh;
  }
  section.feature .feature_image img {
    object-fit: cover;
    object-position: center;
    height: 100%;
    width: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
  }
}

@media only screen and (max-width: 768px) {
  section.feature .feature_image .feature_txt h3 {
    font-size: 1rem;
    line-height: 1.2rem;
  }
  section.feature .feature_image .feature_txt p {
    font-size: 1.2rem;
    line-height: 1.7rem;
  }
}

@media only screen and (max-width: 480px) {
  section.feature .feature_image {
    /*background-image:unset;*/
    background-image: none;
    position: relative;
    /*height: 40vh;*/
    height: fit-content;
  }

  section.feature .feature_image img {
    position: static;
    display: block;
  }
  section.feature .feature_image .feature_txt {
    width: 80vw;
    padding: 30px 10vw;
    margin-top: 0;
    opacity: 1;
  }
  section.feature .feature_image .feature_txt h3 {
    font-size: 1rem;
    line-height: 1.2rem;
  }
  section.feature .feature_image .feature_txt p {
    font-size: 1rem;
    line-height: 1.5rem;
  }
}

section.feature h1 {
  padding: 0 5%;
  font-size: 15vw;
  line-height: 15.2vw;
  font-weight: 100;
  /*font-style: italic;*/
  text-transform: uppercase;
  text-align: center;
  letter-spacing: -2px;
  color: #777;
  margin-top: 15vh;
  font-family: azo-sans-web, sans-serif;
}

section.feature .feature_description {
  width: 60%;
  margin: 10vh auto 10vh auto;
  /*border-top: 9px solid var(--color_app_orange);*/
  border-top: 5px double #ccc;
  /*border-bottom: 1px solid #ccc;*/
  border-bottom: 5px double #ccc;
  padding: 30px 0;
  max-width: 900px;
}

section.feature.person .feature_description {
  border: none;
  padding: 0;
}

section.feature .feature_description h2 {
  font-size: 5rem;
  line-height: 4.5rem;
  font-weight: 100;
  /*font-style: italic;*/
  text-transform: lowercase;
  font-variant: small-caps;
  text-align: center;
  letter-spacing: 3px;
  /*color: #777;*/
  margin-bottom: 1rem;
  color: var(--color_app_orange);
}

section.feature .feature_description p,
section.feature .feature_description a {
  font-size: 1.5rem;
  line-height: 2.2rem;
  font-weight: 400;
  color: #555;
  margin-bottom: 1.5rem;
}

section.feature .feature_description a.seemore,
section.feature .feature_description a.seemore:link,
section.feature .feature_description a.seemore:visited {
  font-family: var(--font-main_sans);
  font-size: 0.8rem;
  text-decoration: none;
  color: var(--color_app_gold);
  text-transform: uppercase;
  letter-spacing: 2px;
  transition: 0.3s;
}

section.feature .feature_description a.seemore:hover {
  color: var(--color_app_orange);
}

section.feature .feature_description p:first-of-type::first-line {
  font-size: 1.9rem;
  text-transform: lowercase !important;
  font-variant: all-small-caps;
  color: #000;
  font-weight: 700;
  letter-spacing: 1px;
}

section.feature.person .feature_description h2 {
  color: white;
}
section.feature.person .feature_description p {
  color: #aaa;
}
section.feature.person .feature_description p:first-of-type::first-line  {
  color: var(--color_app_orange);
}

@media only screen and (max-width: 1024px) {
  section.feature h1 {
    margin-top: 8vh;
  }
  section.feature .feature_description {
    width: 83.3%;
    margin: 5vh auto 5vh auto;
  }
  section.feature .feature_description h2 {
    font-size: 3rem;
    line-height: 2.7rem;
    letter-spacing: 1px;
  }
  section.feature .feature_description p {
    font-size: 1.3rem;
    line-height: 2rem;
  }
  section.feature .feature_description p:first-of-type::first-line {
    font-size: 1.4rem;
  }  
  
}

@media only screen and (max-width: 768px) {
  section.feature .feature_description h2 {
    font-size: 2.5rem;
    line-height: 2.3rem;
    letter-spacing: 1px;
  }
  section.feature .feature_description p {
    font-size: 1.1rem;
    line-height: 1.6rem;
  }
  section.feature .feature_description p:first-of-type::first-line {
    font-size: 1.2rem;
  }
  
}

.feature_stack {
  display: grid;
  width: 100%;
  grid-template-columns: repeat(3, 1fr);
}

.feature_stack > div {
  width: calc(100vw / 3);
  height: calc(100vw / 4);
  overflow: hidden;
}

.feature_stack > div img,
.feature_stack > div video {
  object-fit: cover;
  object-position: center;
  height: 100%;
  width: 100%;
}

.feature_quote {
  /*padding: 10vh 20%;*/
  padding: 10vh 12.5%;
  display: block;
  background-color: #333;
}

.feature_quote.quote_light {
  background-color: #fff;
}
.feature_quote p {
  font-weight: 300;
  font-size: 2.5rem;
  line-height: 3.5rem;
  margin: 0;
  color: #ddd;
  font-family: study, serif;
}

.feature_quote.quote_light p {
  color: #777;
}

.feature_quote p::first-line {
  font-family: study, serif;
  font-size: 3rem;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: lowercase;
  font-variant: all-small-caps;
  color: var(--color_app_orange);
  /*color: #222;*/
}

.feature_quote span.quote_attrib {
  font-family: azo-sans-web, sans-serif;
  font-weight: 400;
  font-size: 1.2rem;
  line-height: 1.6rem;
  text-transform: uppercase;
  letter-spacing: 3px;
  margin-top: 2rem;
  display: block;
  text-align: right;
  clear: both;
  color: var(--color_app_gold);
  /*color: black;*/
}
.feature_quote span.quote_attrib::before {
  content: "// ";
  color: var(--color_app_orange);
}

@media only screen and (max-width: 1024px) {
  .feature_quote {
    /*padding: 7vh 15%;*/
    padding: 7vh 12.5%;
  }
  .feature_quote p {
    font-size: 2rem;
    line-height: 3rem;
  }
  .feature_quote p::first-line {
    font-size: 2.5rem;
  }
  .feature_quote span.quote_attrib {
    font-size: 0.9rem;
    line-height: 1.4rem;
  }
}

@media only screen and (max-width: 768px) {
  .feature_quote {
    /*padding: 7vh 15%;*/
    padding: 7vh 12.5%;
  }
  .feature_quote p {
    font-size: 1.5rem;
    line-height: 2.3rem;
  }
  .feature_quote p::first-line {
    font-size: 1.7rem;
  }
  .feature_quote span.quote_attrib {
    font-size: 0.8rem;
    line-height: 1.3rem;
  }
}

@media only screen and (max-width: 580px) {
  .feature_quote {
    padding: 7vh 12.5%;
  }
  .feature_quote p {
    font-size: 1.2rem;
    line-height: 1.6rem;
  }
  .feature_quote p::first-line {
    font-size: 1.4rem;
  }
  .feature_quote span.quote_attrib {
    font-size: 0.7rem;
    line-height: 1.2rem;
  }
}

.full_image {
  width: 100%;
  height: auto;
  box-sizing: content-box;
}
.full_image img {
  display: block;
}

/*pager__item is-active*/

nav.pager li.is-active a,
nav.pager li.is-active a:visited {
  font-weight: 700;
  color: #333;
}

.page_content.error_page {
  min-height: 60vh;
}

.user-login-form div {
  margin-bottom: 1rem;
}

/***** EVENTS *****/

ul.localist-widget-customer {
  grid-gap: 3rem !important;
}

@media only screen and (max-width: 480px) {
  ul.localist-widget-customer {
    grid-template-columns: repeat(auto-fit, minmax(1fr, 1fr));
  }
  ul.localist-widget-customer li.widget-event {
    max-width: 100% !important;
  }
}
.localist-widget link {
  display: none;
  visibility: hidden;
  content: "";
}

.localist-widget div.widget-content,
.localist-widget div.widget-content div.title,
.localist-widget div.widget-content div.des,
.localist-widget div.widget-content div.time,
.localist-widget div.widget-content div.place {
  font-family: var(--font-main_sans) !important;
  font-size: 16px !important;
  line-height: 22px !important;
}
.localist-widget div.widget-content div a {
  border-bottom: none;
}
.localist-widget div.widget-content div.title,
.localist-widget div.widget-content div.title h4,
.localist-widget div.widget-content div.title h4 a {
  font-family: var(--font-main_sans) !important;
  font-weight: 900 !important;
  letter-spacing: 1px !important;
}

.maintenance-page {
  background-color: #000;
  color: #ccc;
  font-size: 4rem;
  line-height: 5rem;
}
.maintenance-page .page_head {
  height: fit-content;
}
