/*
 * Beslist Feminist — page completion / overrides
 * Loads after the existing WordPress, Astra and Elementor styles.
 */

/* Base page */
html {
  overflow-x: hidden;
}

body {
  overflow-x: hidden;
}

#page {
  width: 100%;
  min-height: 100%;
}

#content {
  width: 100%;
}

.site-content {
  overflow: hidden;
}

.elementor-44 {
  width: 100%;
  overflow: hidden;
}

.elementor-44 .elementor-section {
  width: 100%;
}

.elementor-44 .elementor-container {
  width: 100%;
}

.elementor-44 .elementor-widget-container {
  box-sizing: border-box;
}

/* Header and navigation */
#masthead {
  position: relative;
  z-index: 100;
}

#masthead .main-header-bar {
  width: 100%;
}

#masthead .site-primary-header-wrap,
#masthead .ast-builder-grid-row {
  width: 100%;
}

#masthead .site-logo-img img {
  display: block;
  max-width: 100%;
  height: auto;
}

#masthead .main-header-menu {
  align-items: center;
}

#masthead .main-header-menu > .menu-item > a {
  display: flex;
  align-items: center;
}

#masthead .main-header-menu .sub-menu {
  z-index: 1000;
}

#ast-mobile-header .main-header-bar {
  width: 100%;
}

#ast-mobile-header .ast-builder-menu-mobile,
#ast-mobile-header .main-navigation {
  width: 100%;
}

#ast-mobile-header .main-header-menu {
  width: 100%;
}

#ast-mobile-header .main-header-menu > .menu-item > a {
  display: flex;
  align-items: center;
}

/* Hero / first two photos */
.elementor-44 .elementor-element-43a508a {
  width: 100%;
}

.elementor-44 .elementor-element-43a508a > .elementor-container {
  width: 100%;
}

.elementor-44 .elementor-element-0284048 {
  width: 100%;
  max-width: 100%;
}

.elementor-44 .elementor-element-0284048 > .elementor-widget-container {
  width: 100%;
  margin: 0;
}

.elementor-44 .elementor-element-0284048 .elementor-image-carousel-wrapper {
  width: 100%;
  overflow: hidden;
}

.elementor-44 .elementor-element-0284048 .elementor-image-carousel {
  display: flex !important;
  align-items: stretch;
  justify-content: center;
  gap: 0;
  width: 100% !important;
  max-width: none;
  transform: none !important;
  transition: none !important;
}

.elementor-44 .elementor-element-0284048 .swiper-slide {
  display: none;
  flex: 0 0 50%;
  width: 50% !important;
  max-width: 50% !important;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  transform: none !important;
}

.elementor-44 .elementor-element-0284048 .swiper-slide:has(.swiper-slide-image) {
  display: block;
}

.elementor-44 .elementor-element-0284048 .swiper-slide-inner,
.elementor-44 .elementor-element-0284048 figure {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
}

.elementor-44 .elementor-element-0284048 .swiper-slide-image {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  margin: 0;
  object-fit: cover;
}

.elementor-44 .elementor-element-0284048 .elementor-swiper-button,
.elementor-44 .elementor-element-0284048 .swiper-pagination {
  display: none;
}

/* Welcome section */
.elementor-44 .elementor-element-86ebe68 {
  width: 100%;
}

.elementor-44 .elementor-element-86ebe68 > .elementor-container {
  align-items: center;
}

.elementor-44 .elementor-element-2a8ab01,
.elementor-44 .elementor-element-b1dac36,
.elementor-44 .elementor-element-1defef7 {
  width: 100%;
}

.elementor-44 .elementor-element-2a8ab01 .elementor-widget-container {
  width: 100%;
}

.elementor-44 .elementor-element-2a8ab01 .elementor-heading-title {
  margin: 0;
}

.elementor-44 .elementor-element-b1dac36 .elementor-widget-container {
  width: 100%;
}

.elementor-44 .elementor-element-b1dac36 p:last-child {
  margin-bottom: 0;
}

.elementor-44 .elementor-element-b1dac36 a {
  overflow-wrap: anywhere;
}

.elementor-44 .elementor-element-1defef7 .elementor-widget-container {
  width: 100%;
}

.elementor-44 .elementor-element-1defef7 .elementor-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}

.elementor-44 .elementor-element-1defef7 .elementor-button-content-wrapper {
  display: inline-flex;
  align-items: center;
}

/* Initiative section */
.elementor-44 .elementor-element-ed190fa {
  width: 100%;
}

.elementor-44 .elementor-element-ed190fa > .elementor-container {
  width: 100%;
  max-width: 1600px;
  align-items: center;
}

.elementor-44 .elementor-element-cb37acd,
.elementor-44 .elementor-element-c2e58bc {
  box-sizing: border-box;
}

.elementor-44 .elementor-element-e4cd203 {
  width: 100%;
  max-width: 100%;
}

.elementor-44 .elementor-element-e4cd203 .elementor-widget-container {
  width: 100%;
}

.elementor-44 .elementor-element-e4cd203 p:first-child {
  margin-top: 0;
}

.elementor-44 .elementor-element-e4cd203 p:last-child {
  margin-bottom: 0;
}

.elementor-44 .elementor-element-fc23ff8 {
  width: 100%;
}

.elementor-44 .elementor-element-fc23ff8 .elementor-widget-container {
  width: 100%;
  min-height: 1px;
}

.elementor-44 .elementor-element-fc23ff8 img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}

/* Social icons */
.elementor-44 .elementor-element-4029382 {
  width: 100%;
}

.elementor-44 .elementor-element-588442d {
  width: 100%;
}

.elementor-44 .elementor-element-588442d .elementor-widget-container {
  width: 100%;
  text-align: center;
}

.elementor-44 .elementor-element-588442d .elementor-social-icons-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 7px;
}

.elementor-44 .elementor-element-588442d .elementor-grid-item {
  display: flex;
}

.elementor-44 .elementor-element-588442d .elementor-social-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}

.elementor-44 .elementor-element-588442d .elementor-social-icon i,
.elementor-44 .elementor-element-588442d .elementor-social-icon svg {
  display: block;
}

.elementor-44 .elementor-element-b689520 {
  width: 100%;
}

.elementor-44 .elementor-element-b689520 .elementor-widget-container {
  width: 100%;
}

.elementor-44 .elementor-element-b689520 .elementor-divider {
  width: 100%;
}

/* Newsletter intro */
.elementor-44 .elementor-element-f7fbeeb {
  width: 100%;
}

.elementor-44 .elementor-element-f7fbeeb > .elementor-container {
  width: 100%;
}

.elementor-44 .elementor-element-3f3dbfb {
  width: 100%;
}

.elementor-44 .elementor-element-3f3dbfb .elementor-widget-container {
  width: 100%;
}

.elementor-44 .elementor-element-3f3dbfb p {
  margin-top: 0;
  margin-bottom: 0;
}

/* Newsletter form */
.elementor-44 .elementor-element-1f0a103 {
  width: 100%;
}

.elementor-44 .elementor-element-1f0a103 > .elementor-container {
  width: 100%;
}

.elementor-44 .elementor-element-4d538c1,
.elementor-44 .elementor-element-4d538c1 > .elementor-widget-container {
  width: 100%;
}

.elementor-44 .elementor-element-4d538c1 > .elementor-widget-container > p {
  margin: 0;
}

#mailpoet_form_1 {
  box-sizing: border-box;
  width: 100%;
  max-width: 720px;
  margin: 0 auto;
  padding: 28px;
  background: var(--e-global-color-astglobalcolor4, #f4f6f4);
  border: 1px solid rgba(20, 38, 28, 0.08);
  border-radius: 0;
}

#mailpoet_form_1 form.mailpoet_form {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  flex-wrap: wrap;
  gap: 16px;
  width: 100%;
  margin: 0;
  padding: 0;
}

#mailpoet_form_1 .mailpoet_hp_email_label {
  display: none !important;
}

#mailpoet_form_1 .mailpoet_paragraph {
  box-sizing: border-box;
  margin: 0;
}

#mailpoet_form_1 form.mailpoet_form > .mailpoet_paragraph:first-of-type {
  flex: 1 1 280px;
  min-width: 220px;
}

#mailpoet_form_1 form.mailpoet_form > .mailpoet_paragraph:last-of-type {
  flex: 0 0 auto;
}

#mailpoet_form_1 .mailpoet_text_label {
  display: block;
  margin: 0 0 7px;
  color: var(--e-global-color-astglobalcolor2, #14261c);
  font-size: 14px;
  line-height: 1.4;
  font-weight: 700;
}

#mailpoet_form_1 .mailpoet_required {
  color: var(--e-global-color-astglobalcolor0, #1bae70);
}

#mailpoet_form_1 .mailpoet_text {
  display: block;
  box-sizing: border-box;
  width: 100%;
  min-height: 48px;
  margin: 0;
  padding: 11px 14px;
  color: var(--e-global-color-astglobalcolor2, #14261c);
  background: #ffffff;
  border: 1px solid rgba(20, 38, 28, 0.22);
  border-radius: 0;
  outline: 0;
  box-shadow: none;
  font: inherit;
  line-height: 1.4;
  opacity: 1;
}

#mailpoet_form_1 .mailpoet_text::placeholder {
  color: var(--e-global-color-astglobalcolor3, #4e5652);
}

#mailpoet_form_1 .mailpoet_text:hover {
  border-color: rgba(20, 38, 28, 0.4);
}

#mailpoet_form_1 .mailpoet_text:focus {
  border-color: var(--e-global-color-astglobalcolor0, #1bae70);
  outline: 0;
  box-shadow: 0 0 0 2px rgba(27, 174, 112, 0.12);
}

#mailpoet_form_1 .mailpoet_submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  min-height: 48px;
  margin: 0;
  padding: 11px 24px;
  color: #ffffff;
  background: var(--e-global-color-astglobalcolor0, #1bae70);
  border: 1px solid var(--e-global-color-astglobalcolor0, #1bae70);
  border-radius: 0;
  box-shadow: none;
  cursor: pointer;
  font: inherit;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

#mailpoet_form_1 .mailpoet_submit:hover,
#mailpoet_form_1 .mailpoet_submit:focus {
  color: #ffffff;
  background: var(--e-global-color-astglobalcolor1, #06752e);
  border-color: var(--e-global-color-astglobalcolor1, #06752e);
  outline: 0;
}

#mailpoet_form_1 .mailpoet_submit:focus-visible {
  outline: 2px solid var(--e-global-color-astglobalcolor0, #1bae70);
  outline-offset: 2px;
}

#mailpoet_form_1 .mailpoet_form_loading {
  display: none;
  width: 30px;
  margin-left: 6px;
}

#mailpoet_form_1 .mailpoet_message,
#mailpoet_form_1 .mailpoet_validate_success,
#mailpoet_form_1 .mailpoet_validate_error {
  flex: 1 0 100%;
  box-sizing: border-box;
  width: 100%;
  margin: 4px 0 0;
  padding: 0;
  color: var(--e-global-color-astglobalcolor2, #14261c);
  line-height: 1.5;
}

#mailpoet_form_1 .mailpoet_validate_error {
  color: #b42318;
}

#mailpoet_form_1 .mailpoet_validate_success {
  color: var(--e-global-color-astglobalcolor1, #06752e);
}

#mailpoet_form_1 .mailpoet_validate_success p,
#mailpoet_form_1 .mailpoet_validate_error p {
  margin: 0;
}

/* Prevent the paragraph wrapper around MailPoet from adding unexpected gaps */
.elementor-44 .elementor-element-4d538c1 .mailpoet_form_shortcode {
  vertical-align: top;
}

/* Footer */
#colophon {
  width: 100%;
}

#colophon .site-primary-footer-wrap {
  width: 100%;
}

#colophon .ast-builder-grid-row {
  width: 100%;
}

#colophon .site-footer-section {
  min-width: 0;
}

#colophon .footer-widget-area,
#colophon .footer-widget-area-inner {
  width: 100%;
}

#colophon a {
  overflow-wrap: anywhere;
}

#colophon .site-footer-primary-section-1,
#colophon .site-footer-primary-section-2,
#colophon .site-footer-primary-section-3 {
  min-height: 1px;
}

/* WordPress / Jetpack carousel overlay should not affect the page layout */
#jp-carousel-loading-overlay,
.jp-carousel-overlay {
  box-sizing: border-box;
}

.jp-carousel-overlay {
  z-index: 100000;
}

.jp-carousel-overlay input,
.jp-carousel-overlay textarea {
  box-sizing: border-box;
}

/* Accessibility */
.elementor-44 a:focus-visible,
#masthead a:focus-visible,
#colophon a:focus-visible {
  outline: 2px solid var(--e-global-color-astglobalcolor0, #1bae70);
  outline-offset: 3px;
}

/* Tablet */
@media (max-width: 1024px) {
  .elementor-44 .elementor-element-0284048 .swiper-slide {
    flex-basis: 50%;
    width: 50% !important;
    max-width: 50% !important;
  }

  .elementor-44 .elementor-element-ed190fa > .elementor-container {
    max-width: 100%;
  }

  #mailpoet_form_1 {
    max-width: 100%;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .elementor-44 .elementor-element-0284048 .elementor-image-carousel {
    flex-wrap: nowrap;
  }

  .elementor-44 .elementor-element-0284048 .swiper-slide {
    flex: 0 0 50%;
    width: 50% !important;
    max-width: 50% !important;
  }

  .elementor-44 .elementor-element-0284048 .swiper-slide-image {
    width: 100%;
  }

  .elementor-44 .elementor-element-86ebe68 > .elementor-container,
  .elementor-44 .elementor-element-ed190fa > .elementor-container {
    align-items: stretch;
  }

  #mailpoet_form_1 {
    padding: 22px 18px;
  }

  #mailpoet_form_1 form.mailpoet_form {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 14px;
  }

  #mailpoet_form_1 form.mailpoet_form > .mailpoet_paragraph:first-of-type,
  #mailpoet_form_1 form.mailpoet_form > .mailpoet_paragraph:last-of-type {
    flex: 1 1 auto;
    width: 100%;
    min-width: 0;
  }

  #mailpoet_form_1 .mailpoet_submit {
    width: 100%;
  }

  #colophon .ast-builder-grid-row {
    width: 100%;
  }
}

/* Small mobile */
@media (max-width: 480px) {
  .elementor-44 .elementor-element-0284048 .swiper-slide {
    flex-basis: 50%;
    width: 50% !important;
    max-width: 50% !important;
  }

  #mailpoet_form_1 {
    padding: 18px 14px;
  }
}