/*
 Theme Name:     Textile Events
 Description:    Custom theme for Textile Month websites. Uses Divi as a base.
 Author:         Procyon 55
 Author URI:     www.procyon55.com
 Template:       Divi
 Version:        1.0.0
*/

/* Theme customizations
------------------------------------------------------- */

/* Custom Styles */

.divider {
  margin: 1.75em 0;
  height: 1px;
  border: none;
  width: 100%;
  clear: both;
}

.separator {
  height: 1px;
  margin: 0;
  border: none;
  width: 100%;
  clear: both;
  visibility: hidden;
}

.hidden-collapsed {
  display: none !important;
}

/**/

@media(min-width: 768px){
  .small-screens-only {
    display: none !important;
  }
}

@media(max-width: 767px){
  .large-screens-only {
    display: none !important;
  }

  .block-xs {
    display: block !important;
  }
}

/**/

#mobile-check-hook {
  display: none;
}

@media(max-width: 767px){
  #mobile-check-hook {
    display: inline-block;
    width: 1px;
    height: 1px;
    position: fixed;
    bottom: 0;
    right: 0;
  }
}

/* Video Embeds */

.video-embed-container {
  margin: 2px;
  padding-top: 56.25% !important;
  position: relative;
  background-color: #000000;
}

.video-embed-container .fluid-width-video-wrapper,
.video-embed-container iframe {
  padding: 0 !important;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* Custom CSS Animations */

@-webkit-keyframes loading-text {
  0% { opacity: 1; }
  50% { opacity: 0.1; }
  100% { opacity: 1; }
}

@-moz-keyframes loading-text {
  0% { opacity: 1; }
  50% { opacity: 0.1; }
  100% { opacity: 1; }
}

@-o-keyframes loading-text {
  0% { opacity: 1; }
  50% { opacity: 0.1; }
  100% { opacity: 1; }
}

@keyframes loading-text {
  0% { opacity: 1; }
  50% { opacity: 0.1; }
  100% { opacity: 1; }
}

/* Theme Customizations - Global */

body .container,
body .et_pb_section {
  width: 55vw;
  max-width: 999%;
}

body {
  max-width: 100vw;
  min-width: 320px;
}

@media(max-width: 1365px){
  body .container,
  body .et_pb_section {
    width: 75.55vw;
  }
}

@media(max-width: 767px){
  body .container,
  body .et_pb_section {
    width: 90vw;
  }
}

body .et_pb_section {
  padding: 0;
  margin-left: auto;
  margin-right: auto;
}

.et_pb_row {
  width: 100%;
  max-width: 100%;
}

/**/

body .viewport-based-text-size {
  font-size: 0.775vw;
}

@media(max-width: 1365px){
  body .viewport-based-text-size {
    font-size: 1.13vw;
  }
}

@media(max-width: 980px){
  body .viewport-based-text-size {
    font-size: 1.215vw;
  }
}

@media(max-width: 767px){
  body .viewport-based-text-size {
    font-size: 3vw;
  }
}

body .viewport-based-text-size .et_pb_text {
  font-size: 1.33em;
}

body .viewport-based-text-size h1 {
  font-size: 2.66em;
}

body .viewport-based-text-size h2 {
  font-size: 2.394em;
}

body .viewport-based-text-size h3 {
  font-size: 2.128em;
}

body .viewport-based-text-size h4 {
  font-size: 1.862em;
}

body .viewport-based-text-size h5 {
  font-size: 1.596em;
}

body .viewport-based-text-size h6 {
  font-size: 1.33em;
}

/**/

html body {
  font-family: 'Montserrat', 'Lucida Grande', 'Lucida Sans', helvetica, arial, sans-serif;
}

body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
body button,
body input[type="submit"],
body input[type="reset"] {
  font-family: "Calluna", helvetica, arial, sans-serif;
}

body button,
body input[type="submit"],
body input[type="reset"] {
  font-weight: bold;
}

/* Theme Customizations - Header */

body #main-header {
  box-shadow: none;
  z-index: 9999 !important;
}

@media(min-width: 981px){
  body #main-header {
    font-size: 1.6vw;
    padding-bottom: 2.2em;
  }
}

@media(min-width: 1200px){
  body #main-header {
    font-size: 1vw;
  }
}

/* Theme Customizations - Logo */

@media(min-width: 981px){
  body #logo {
    width: 8.75em;
    max-height: 3.4em;
  }

  body span.logo_helper {
    display: none;
  }

  body.et_header_style_left .logo_container {
    width: auto;
    height: auto;
    float: left;
    top: 2.86em;
    left: 0;
  }
}

/* Theme Customizations - Navigation */

.et_mobile_menu li a:hover,
.nav ul li a:hover {
  opacity: 1;
  background-color: rgba(0, 0, 0, 0.05);
}

@media(min-width: 981px){
  body.et_header_style_left #et-top-navigation,
  body.et_header_style_split #et-top-navigation {
    padding-top: 1.6em;
  }

  body.et_header_style_left #et-top-navigation nav > ul > li > a,
  body.et_header_style_split #et-top-navigation nav > ul > li > a {
    padding-bottom: 0;
  }

  /**/

  body #top-menu,
  body .fullwidth-menu,
  body nav#top-menu-nav,
  body nav.fullwidth-menu-nav {
    width: 100%;
    float: none;
    clear: both;
  }

  body nav#top-menu-nav {
    width: 100%;
    text-align: right;
    padding-top: 1.55em;
    padding-right: 0.2em;
  }

    /*
    body #top-menu-nav li:first-child {
      float: left;
    }
    */

  body #et-top-navigation {
    float: none;
    width: 100%;
    padding-left: 0 !important;
  }

  /**/

  body #top-menu li {
    padding: 0;
    font-size: 1em;
    line-height: 1.2;
  }

  body #top-menu li + li {
    padding-left: 0.25vw;
  }

  body #top-menu li:first-child {
    padding-top: 0.05em;
  }

  body #top-menu li:first-child a {
    font-size: 1.025em;
  }

  body #top-menu li a {
    text-transform: uppercase;
    font-family: 'Montserrat', 'Lucida Grande', 'Lucida Sans', helvetica, arial, sans-serif;
    color: #042D3E;
    font-size: 0.945em;
    letter-spacing: 0.055em;
    font-weight: normal;
  }
}

/* Theme Customizations - Header Search */

#et_top_search {
  float: right;
}

@media(min-width: 981px){
  body #et_top_search {
    width: auto;
    margin-top: 0;
    margin-right: 1.1%;
  }

  body #et_top_search i {
    font-size: 180%;
  }

  body span.et_close_search_field {
    width: 1em;
    height: 1em;
    bottom: 1.3em;
  }

  body .et-search-form {
    bottom: 2.4em;
  }

  body .et-search-form input {
    right: 1.25em;
    width: 70%;
    font-size: 1.8em !important;
  }

  /**/

  body #et_search_icon,
  body span.et_close_search_field {
    font-size: 1.8em !important;
    text-align: center;
  }

  body #et_search_icon::before,
  body span.et_close_search_field::after {
    position: static !important;
    margin: 0 !important;
    font-family: "Font Awesome 5 Pro" !important;
    font-size: 100% !important;
  }

  body #et_search_icon::before {
    content: "\f002" !important;

  }

  body span.et_close_search_field::after {
    content: "\f00d" !important;

  }
}

/* Theme Customizations - Footer */

body #footer-bottom {
  padding: 36px 0;
}

#et-footer-nav {
  background-color: transparent;
}

#main-footer .container {
  width: 88.75%;
}

#main-footer.sticky {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
}

#footer-widgets {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  padding: 0;
  align-items: center;
}

#footer-widgets,
.bottom-nav li {
  font-size: 0.81vw;
  font-weight: 600;
  line-height: 1.5;
}

#footer-widgets,
#footer-info,
#footer-widgets a,
#footer-widgets .footer-section .footer-widget,
#footer-widgets .footer-section .footer-widget a {
  color: #042D3E;
}

body #et-footer-nav .bottom-nav li.current-menu-item a {
  color: #042D3E !important;
}

#main-footer #footer-widgets .footer-widget {
  margin: 0 0 1.25em 0 !important;
  width: 100% !important;
}

#footer-widgets a {
  text-decoration: underline;
}

.footer-section {
  margin: 0;
  padding: 0;
  flex-direction: column;
  flex-grow: 1;
  flex-shrink: 1;
  width: 30%;
}

#footer-widgets .footer-section .footer-widget {
  width: 100%;
}

#footer-section_contribute,
#footer-section_newsletter-signup {
  text-align: center;
}

#footer-section_contribute img {
  width: 100%;
}

.et-social-icon.et-social-textilex .icon::before {
  content: "";
  display: block;
  width: 1.4em;
  height: 1em;
  background: url('images/textile-exchange-icon.svg') center center no-repeat;
  background-size: contain;
}

.icon-pixel-heart {
  margin: 0 0.1em;
}

.icon-pixel-heart::before {
  content: "";
  width: 1.5em;
  height: 1.35em;
  display: inline-block;
  background: url('images/pixel-heart.svg') center center no-repeat;
  background-size: contain;
  position: relative;
  top: 0.3em;
}

#footer-section_copyright-and-social {
  text-align: right;
  flex-grow: 1;
  flex-shrink: 1;
}

#footer-section_copyright-and-social .et-social-icons {
  float: none;
  margin: 0 auto;
  padding: 0.9em 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  width: 100%;
}

#footer-section_copyright-and-social .et-social-icons a {
  display: flex;
  text-decoration: none;
  font-size: 2.6vw !important;
}

#footer-section_copyright-and-social .et-social-icons li {
  margin-left: 1.725em;
}

#footer-section_copyright-and-social .et-social-icons li.et-social-textilex {
  margin-left: 2.35em;
}

#footer-section_copyright-and-social .et-social-icons li:first-child {
  margin-left: 0;
}

#footer-info {
  float: none;
  margin: 0 auto;
  padding: 0.4em 0 0 0 !important;
  text-align: right;
  font-size: 0.785vw;
}

#main-footer .bottom-nav {
  padding: 0;
  text-align: left;
}

@media(max-width: 1365px){
  #footer-widgets,
  .bottom-nav li {
    font-size: 1.15vw;
  }

  #footer-info {
    font-size: 0.9vw;
  }
}

@media(max-width: 767px){
  #footer-widgets,
  .bottom-nav li {
    font-size: 14px;
  }

  #et-footer-nav {
    margin-bottom: 0.75em;
  }

  #footer-info {
    font-size: 12px;
  }

  #footer-widgets {
    flex-direction: column;
  }

  #footer-widgets .footer-section {
    width: 100%;
  }

  .footer-section {
    text-align: center;
  }

  #footer-info {
    text-align: center;
  }

  #footer-section_copyright-and-social .et-social-icons {
    justify-content: center;
    margin: 1em auto;
  }

  #footer-section_copyright-and-social .et-social-icons li {
    margin: 0 0.5em;
  }

  #footer-section_copyright-and-social .et-social-icons li.et-social-textilex {
    margin-left: 0.75em;
  }

  #footer-section_copyright-and-social .et-social-icons a {
    font-size: 40px !important;
  }

  .bottom-nav {
    text-align: center;
  }

  #footer-widgets, .bottom-nav li {
    padding: 0;
  }

  #main-footer .bottom-nav {
    text-align: center;
  }

  #main-footer .et_pb_widget {
    width: 100%;
    text-align: center;
  }

  /**/

  #footer-section_contribute {
    order: 2;
  }

  #footer-section_contribute img {
    max-width: 320px;
  }

  #footer-section_copyright-and-social {
    order: 2;
  }

  #footer-section_info-and-links {
    margin-top: 2em;
    order: 3;
  }
}

/* Custom Styles
------------------------------------------------------- */

/* Buttons */

.tribe-events-nav-pagination .tribe-events-sub-nav a,
#tribe-events .tribe-events-button,
.tribe-events-button,
.event-button {
  display: inline-flex;
  border: 1px solid #000000;
  background-color: #FFFFFF;
  font-weight: normal;
  color: #000000;
  padding: 0.55em 1em 0.4em 1em;
  font-size: 0.9em;
  flex-grow: 0;
  flex-shrink: 0;
  width: auto;
  text-align: center;
  justify-content: center;
  align-content: center;
  align-items: center;
  line-height: 1.65;
  transition: 0.25s all ease-in-out;
  border-radius: 0;
}

.tribe-events-nav-pagination .tribe-events-sub-nav a.translated,
#tribe-events .tribe-events-button.translated,
.tribe-events-button.translated,
.event-button.translated {
  flex-direction: column;
}

.tribe-events-nav-pagination .tribe-events-sub-nav a,
#tribe-events .tribe-events-button.hollow,
.tribe-events-button.hollow,
.event-button.hollow {
  background-color: transparent;
}

#tribe-events .tribe-events-button,
.tribe-events-button {
  padding:0.33em 0.5em;
}

.event-button.medium {
  font-size: 1.15em;
  padding: 0.75em 1.25em;
}

.event-button.big {
  font-size: 1.33em;
  padding-left: 1.5em;
  padding-right: 1.5em;
}

#tribe-events .tribe-events-button:hover,
.tribe-events-button:hover,
.event-button:hover {
  background-color: #E2C0D0;
  color: #07074E;
  border-color: #07074E;
}

/* Hero Buttons */

.hero-buttons .row {
	display: flex;
	justify-content: center;
}

body #page-container .hero-buttons .hero-button {
	display: inline-block;
	background-color: #F4F4BA !important;
	opacity: 1 !important;
	text-align: center !important;
	margin: 0.3em;
	padding: 0.3em 1em !important;
	font-size: 1em !important;
	max-width: 200px;
	width: 40%;
	color: #002d3d !important;
	border: 1px solid #002d3d !important;
}

body #page-container .hero-buttons  .hero-button.active,
body #page-container .hero-buttons  .hero-button:hover {
  background-color: #002d3d !important;
  color: #f4f4ba !important;
}

/* Bloom Popups */

.et_bloom .et_bloom_optin_1 .et_bloom_form_container .et_bloom_form_content { padding-top: 0 !important; }

.et_bloom .et_bloom_optin_1 .et_bloom_form_container h2,
.et_bloom .et_bloom_optin_1 .et_bloom_form_container h2 span,
.et_bloom .et_bloom_optin_1 .et_bloom_form_container h2 strong,
.et_bloom .et_bloom_optin_1 .et_bloom_form_container p,
.et_bloom .et_bloom_optin_1 .et_bloom_form_container p span,
.et_bloom .et_bloom_optin_1 .et_bloom_form_container p strong,
.et_bloom .et_bloom_optin_1 .et_bloom_form_container form input,
.et_bloom .et_bloom_optin_1 .et_bloom_form_container form button span {
  font-family: 'Montserrat', 'Lucida Grande', 'Lucida Sans', helvetica, arial, sans-serif !important;
}

.et_bloom .et_bloom_optin_1 .et_bloom_form_container h2 {
  text-transform: uppercase;
}

.et_bloom h2.et_bloom_success_message::after {
  display: none;
}

.et_bloom .et_bloom_form_container {
  background-color: #173c4d !important;
}

.et_bloom_success_message {
  margin-top: 0 !important;
  background-color: #173c4d !important;
  color: #a0c2b2 !important;
}

.et_bloom h2.et_bloom_success_message.et_bloom_animate_message {
  max-width: 100%;
  width: auto;
  text-transform: none;
  background-color: rgba(0, 0, 0, 0.25) !important;
  color: #a0c2b2 !important;
}

.et_bloom .et_bloom_success_container.et_bloom_animate_success {
  display: none !important;
}

.et_bloom .et_bloom_form_container .et_bloom_close_button {
  background-color: #F5F4BA !important;
  color: #000000 !important;
}

.et_bloom .et_bloom_form_container.et_bloom_form_text_light .et_bloom_form_content input, .et_bloom .et_bloom_form_container.et_bloom_form_text_light .et_bloom_form_content textarea, .et_bloom .et_bloom_form_container.et_bloom_form_text_light .et_bloom_form_content #mc_embed_signup .mc-field-group input, .et_bloom .et_bloom_form_content .af-body input.text, .et_bloom .et_bloom_form_container.et_bloom_form_text_light .et_bloom_form_content select, .et_bloom_form_container.et_bloom_form_text_light .et_bloom_form_content .et_bloom_custom_field input[type="checkbox"] + label i, .et_bloom_form_container.et_bloom_form_text_light .et_bloom_form_content .et_bloom_custom_field input[type="radio"] + label i {
  color: #F5F4BA !important;
}

/* Contact Form */

@media(min-width: 768px){
  p.et_pb_contact_field:not(.et_pb_contact_field_last_tablet),
  p.et_pb_contact_field_half_tablet + p.et_pb_contact_field_last_tablet:not(.et_pb_contact_field_half_tablet) {
    clear: none !important;
  }
}

@media(max-width: 767px){
  .et_contact_bottom_container .et_pb_contact_right {
    width: 100%;
    margin-bottom: 1.25em;
  }
}

.et-pb-contact-message {
  font-size: 1.33em;
  text-align: center;
  font-weight: bold;
  line-height: 1.4;
}

.et-pb-contact-message p {
  padding-bottom: 0.5em !important;
}

.et-pb-contact-message ul {
  list-style-type: none;
  padding-left: 0;
  font-weight: normal;
  line-height: 1.4;
}

.et_pb_contact_right p input {
  max-width: 55px;
}

/* Event Tags */

.event-tags {
  list-style-type: none !important;
  margin: 0;
  padding: 0 !important;
  display: flex;
  flex-direction: row;
  align-content: flex-start;
  justify-content: flex-start;
  position: relative;
  flex-grow: 1;
  flex-shrink: 1;
}

@media(max-width: 767px){
  .event-tags {
    min-height: 1px;
    flex-direction: column;
  }
}

.event-tags li {
  flex-grow: 1;
  flex-shrink: 1;
  margin: 0.1em 0;
}

@media(max-width: 767px){
  .event-tags li {
    max-width: 100%;
    flex-basis: 100%;
  }
}

.event-tags li a {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  background-color: #BFBFBF;
  color: #042D3E;
  padding: 0.55em 1em 0.4em 1em;
  font-size: 0.9em;
  line-height: 1.65;
  transition: 0.25s all ease-in-out;
  border: 1px solid;
}

@media(max-width: 767px){
  .event-tags li a {
    font-size: 1em;
  }
}

.event-tags li a span {
  display: inline-block;
  max-width: 100%;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.event-tags li + li {
  margin-left: 2%;
}

@media(max-width: 767px){
  .event-tags li + li  {
    margin-left: 0;
  }
}

.event-tags li + li a {
  background-color: #878787;
}

.event-tags li + li + li a {
  background-color: #000000;
}

.event-tags.hollow li a {
  background-color: transparent;
}

.event-tags.hollow li a:hover {
  background-color: #BFBFBF;
}

/* Translations */

.translated ~ .translated {
  padding-top: 0.5em;
}

h1 .translated,
h2 .translated,
h3 .translated,
h4 .translated,
h5 .translated,
h6 .translated {
  display: inline-block;
}

h1 .translated ~ .translated,
h2 .translated ~ .translated,
h3 .translated ~ .translated,
h4 .translated ~ .translated,
h5 .translated ~ .translated,
h6 .translated ~ .translated {
  padding-top: 0.25em;
}

.event-button .translated ~ .translated {
  padding-top: 0;
}

/* Fancybox */

.fancybox-bg {
  background-color: #042D3E !important;
}

.fancybox-is-open .fancybox-bg {
  opacity: 1 !important;
}

body .fancybox-inner {
  overflow: hidden !important;
}

/* Photonic */

body .photonic-loading {
  display: none !important;
}

.gallery .photonic-stream {
  margin: 0;
}

/* End of page callouts */

.page-callouts {
  margin: 0 auto;
}

#galleries-wrapper .page-callouts {
  position: relative;
  top: -3px;
}

.page-callout {
  margin: 1em 0;
}

/* Footer Email Signup Form */

#main-footer #mc-embedded-subscribe-form {
  max-width: 450px;
  margin: 0 auto;
}

#main-footer #mc-embedded-subscribe-form .form-ui {
  display: flex;
  flex-direction: row;
}

#main-footer #mc-embedded-subscribe-form .form-ui .inputs {
  display: flex;
  width: 70%;
  flex-grow: 1;
  flex-shrink: 1;
}

#main-footer #mc-embedded-subscribe-form .form-ui .actions {
  display: flex;
  width: 30%;
  flex-grow: 1;
  flex-shrink: 0;
}

/**/

#main-footer #mc-embedded-subscribe-form label {
  font-size: 1.3em;
  line-height: 1.2;
  display: block;
  margin-bottom: 0.5em;
}

/**/

#main-footer #mc-embedded-subscribe-form .form-ui input,
#main-footer #mc-embedded-subscribe-form .form-ui button {
  width: 100%;
  height: 100%;
  flex-grow: 1;
  flex-shrink: 1;
}

#main-footer #mc-embedded-subscribe-form .form-ui input::-webkit-input-placeholder {
  color: #042D3E;
  opacity: 1;
}

#main-footer #mc-embedded-subscribe-form .form-ui input::-moz-placeholder {
  color: #042D3E;
  opacity: 1;
}

#main-footer #mc-embedded-subscribe-form .form-ui input:-ms-input-placeholder {
  color: #042D3E;
  opacity: 1;
}

#main-footer #mc-embedded-subscribe-form .form-ui input:-moz-placeholder {
  color: #042D3E;
  opacity: 1;
}

#main-footer #mc-embedded-subscribe-form .form-ui input {
  padding: 1em;
  border: 1px solid #042D3E;
  font-size: 1em;
}

#main-footer #mc-embedded-subscribe-form .form-ui input[type="submit"] {
  font-family: 'Montserrat', 'Lucida Grande', 'Lucida Sans', helvetica, arial, sans-serif;
  padding: 0;
  background-color: #042D3E;
  color: #EA927C;
  text-transform: uppercase;
}

/**/

#main-footer #mc_embed_signup #mce-responses {
  margin-top: 0.75em;
}

#main-footer #mc_embed_signup div.mce_inline_error {
  background-color: #C81313;
  margin: 0;
}