/* Sermon page overrides. */
body.single-imi_isermons .content-container,
body.single-imi_isermons .blog_post_preview,
body.single-imi_isermons .blog_post_preview .item_wrapper,
body.single-imi_isermons .blog_post_preview.format-standard .blog_content {
  background: transparent !important;
  box-shadow: none !important;
}

body.single-imi_isermons .blog_post_preview.format-standard .blog_content {
  padding: 0 !important;
}

body.single-imi_isermons .isermons-media {
  box-shadow: none !important;
}

body.single-imi_isermons .elementor-7182 .elementor-element.elementor-element-4602dc4e {
  margin-top: 3em !important;
  margin-bottom: 3em !important;
}

/* Elementor GT3 stripes: let Elementor's title color win over theme h4 color. */
.elementor-widget-gt3-core-stripes .gt3-stripe-title h4 {
  color: inherit !important;
}

/* Fix GT3 hover_type5 buttons: force full-width hover covers. */
.elementor-widget-gt3-core-button .gt3_module_button_elementor .hover_type5 .gt3_module_button__container .gt3_module_button__cover.front:before,
.elementor-widget-gt3-core-button .gt3_module_button_elementor .hover_type5 .gt3_module_button__container .gt3_module_button__cover.back:before {
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
}

/* Sermon player: remove global button margin that misaligns controls. */
body .isermons .plyr button,
body .isermons .plyr input[type='submit'],
body .isermons .plyr input[type="submit"] {
  margin: 0 !important;
}

/* Preacher terms (style1 grid): set name size without touching other headings. */
.isermons-taxonomy-imi_isermons-preachers .isermons-grid-item-in h4,
.isermons-taxonomy-imi_isermons-preachers .isermons-grid-item-in h5 {
  font-size: 20px !important;
}

/* Preacher grid: keep shadow only on photo, not on text card. */
.isermons-taxonomy-imi_isermons-preachers .isermons-grid-item {
  background: transparent !important;
  box-shadow: none !important;
}

.isermons-taxonomy-imi_isermons-preachers .isermons-media-box,
.isermons-taxonomy-imi_isermons-preachers .isermons-term-image {
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.15);
  display: block;
}

.isermons-taxonomy-imi_isermons-preachers .isermons-series-grid-item .isermons-meta-data {
  /* Remove top gap above sermons count on preacher cards. */
  margin-top: 0 !important;
}

/* Sermon single: add spacing between player and meta info. */
body.single-imi_isermons .isermons-single-cont .isermons-meta-data {
  margin-top: 15px;
}

body.page-id-5673 .isermons-grid-item-in {
  padding: 15px !important;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

body.page-id-5673 .isermons-inline-title,
body.page-id-5673 .isermons-icon-feed {
  display: none !important;
}

.wpcf7 form .wpcf7-response-output {
  margin: 0em 0em 0em;
  padding: 0.2em 1em;
  border: 0px solid #00a0d2;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
  border-color: #ffb900;
}

.content-container ul>li:before {
  content: none !important;
  font: normal normal normal 7px/1 FontAwesome;
  font-size: 7px;
  position: relative;
  display: inline-block;
  vertical-align: middle;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin-right: 10px;
}

.isermons a.isermons-modal-close {
  background: #d95622 !important;
  position: absolute;
  top: -10px;
  right: 0;
  display: block;
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  font-size: 0;
  color: #fff;
}

/* iSermons form inputs: increase minimum height for better touch target. */
.isermons input[type="text"],
.isermons input[type="email"],
.isermons input[type="password"],
.isermons input[type="tel"],
.isermons input[type="url"],
.isermons input[type="number"],
.isermons input[type="date"],
.isermons select,
.isermons textarea {
  min-height: 50px !important;
}

/* Modal title inside iSermons player. */
.isermons-modal-title {
  color: #ffffff;
  font-size: 18px;
  line-height: 1.3;
  margin: 0;
  position: absolute;
  top: 0;
  left: 0;
  right: 48px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.isermons-sermons-list-minimal .isermons-list-item>div:first-child {
  flex-basis: 140px;
  flex-grow: 0;
  display: none !important;
}

.shareIcon {
  display: inline-block;
  margin-right: 10px;
  /* Abstand zwischen den Symbolen */
  width: 70px;
  /* Breite der Symbole */
  height: auto;
  /* Automatische Höhe zur Beibehaltung des Seitenverhältnisses */
  padding: 10px;
  cursor: pointer;
}

.copy-button {
  background-color: #f7f7f7;
  color: #000;
  font-family: Raleway;
  padding: 20px;
  border: none;
  border-radius: 10px;
  cursor: pointer;
  margin: 10px;
  /* відступ */
}

.copy-button:hover {
  background-color: #e7e7e7;
  /* колір при наведенні */
  color: #000;
}

.tribe-events-meta-group .tribe-events-single-section-title {
  font-size: 16px;
  line-height: 20px;
  letter-spacing: 0px;
  font-weight: 600;
  margin: 20px.0.0.0;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-month__day--current {
  border-color: #D95622;
  border-style: 1px;
  border-width: 2px;
}

.tribe-events .tribe-events-calendar-month__day--current .tribe-events-calendar-month__day-date-link {
  color: #D95622;
  font-weight: 700;
}

.tribe-events .tribe-events-calendar-month__day--current .tribe-events-calendar-month__day-date {
  font-size: 28px;
}

.single-tribe_events .tribe-events .tribe-events-c-subscribe-dropdown,
.tribe-block__events-link .tribe-events .tribe-events-c-subscribe-dropdown {
  position: relative;
  display: none;
}


.single-tribe_events .tribe-events-c-subscribe-dropdown__container,
.tribe-events .tribe-events-c-subscribe-dropdown__container {
  display: none;
  flex-flow: column;
  justify-content: flex-end;
}

.tribe-events-meta-group {
  width: 250px;
}

.elementor-widget-gt3-core-events .gt3-tribe-events-list.type1 .gt3-tribe-item>div.gt3-tribe-date {
  width: 280px;
}

.wpcf7 form .wpcf7-response-output {
  margin: 0em 0em 0em 0em;
  padding: 0.2em 1em;
  border: 0px solid #072633;
}

.font-awesome-4-shim div.wpcf7-response-output:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  display: none;
}

/* Hide the reCAPTCHA badge */
.grecaptcha-badge {
  visibility: hidden;
}

/* Page title size: global, consistent across pages. */
.gt3-page-title__content .page_title h1,
h1.portfolio_title_content {
  font-size: 55px !important;
  line-height: 1.2 !important;
}

@media (max-width: 767px) {
  .gt3-page-title__content .page_title h1,
  h1.portfolio_title_content {
    font-size: 40px !important;
    line-height: 1.2 !important;
  }
}

/* Tablet: disable iSermons grid columns. */
@media (max-width: 992px) and (min-width: 768px) {
  .isermons-grid > ul {
    display: block !important;
    grid-template-columns: none !important;
    gap: 0 !important;
  }
}

/* Sermon pages: consistent gutters without breaking full-width blocks site-wide. */
@media (max-width: 1024px) {
  body.single-imi_isermons .site_wrapper .container,
  body.single-imi_isermons .site_wrapper .container-fluid,
  body.page-id-5673 .site_wrapper .container,
  body.page-id-5673 .site_wrapper .container-fluid,
  body.page-id-5673 .single_prev_next_posts .container {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.single-imi_isermons .site_wrapper .container .content-container,
  body.single-imi_isermons .site_wrapper .container-fluid .content-container,
  body.single-imi_isermons .site_wrapper .container .row [class*=span],
  body.single-imi_isermons .site_wrapper .container-fluid .row [class*=span],
  body.single-imi_isermons .site_wrapper .container .elementor-column > .elementor-element-populated,
  body.single-imi_isermons .site_wrapper .container-fluid .elementor-column > .elementor-element-populated,
  body.page-id-5673 .site_wrapper .container .content-container,
  body.page-id-5673 .site_wrapper .container-fluid .content-container,
  body.page-id-5673 .site_wrapper .container .row [class*=span],
  body.page-id-5673 .site_wrapper .container-fluid .row [class*=span],
  body.page-id-5673 .site_wrapper .container .elementor-column > .elementor-element-populated,
  body.page-id-5673 .site_wrapper .container-fluid .elementor-column > .elementor-element-populated {
    padding-left: 15px !important;
    padding-right: 15px !important;
  }
}

/* Mobile/tablet: prevent burger sidebar body shift that leaves a right gap. */
@media (max-width: 1024px) {
  body.active_burger_sidebar {
    right: 0 !important;
  }
}

/* iSermons modal: force full-viewport overlay (fix right gap + header/footer coverage). */
.isermons-modal-static {
  position: fixed !important;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
}

/* Preacher term page: remove fixed media height on mobile and add outer spacing. */
@media (max-width: 767px) {
  body.tax-imi_isermons-preachers .isermons-single-content .isermons-media-box {
    min-height: 0 !important;
  }

  body.tax-imi_isermons-preachers .isermons-single-content .isermons-media {
    margin-bottom: 0 !important;
  }

  body.tax-imi_isermons-preachers .isermons-single-content .isermons-col1by3.equah-item {
    margin-top: 30px;
  }
}

.isermons-modal-static:before {
  position: fixed !important;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
}

.isermons-modal-body {
  position: fixed !important;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
  margin: 0 !important;
  padding-top: 48px;
  box-sizing: border-box;
}

/* Mobile: move sermon modal into lower third for easier reach. */
@media (max-width: 767px) {
  .isermons-modal-body {
    top: 75% !important;
    transform: translate(-50%, -50%) !important;
  }
}

/* iOS Safari: prevent right gap caused by dynamic viewport/100vw. */
@supports (-webkit-touch-callout: none) {
  html,
  body {
    width: 100%;
    overflow-x: hidden;
  }

  .site_wrapper,
  .main_wrapper,
  .gt3-page-title_wrapper {
    width: 100%;
    max-width: 100%;
  }
}

/* Mobile: align back-to-top button with cookie button. */
@media (max-width: 767px) {
  .back_to_top_container {
    right: 20px !important;
    bottom: 20px !important;
  }

  #back_to_top {
    width: 40px;
    height: 40px;
    border-radius: 8px;
  }
}

/* MOBILE SERMON LIST v2: minimal row with play pill (rollback by removing this block). */
@media (max-width: 767px) {
  .isermons-sermons-list-minimal .isermons-list-item {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-areas:
      "title action"
      "meta action";
    align-items: center;
    row-gap: 6px;
    column-gap: 12px;
    padding: 14px 0;
    border-bottom: 1px solid rgba(7, 38, 51, 0.12);
  }

  .isermons-sermons-list-minimal .isermons-list-item > div:nth-child(2) {
    grid-area: title;
  }

  .isermons-sermons-list-minimal .isermons-sermon-actions-wrapper {
    grid-area: action;
    order: 0;
    align-self: center;
  }

  .isermons-sermons-list-minimal .isermons-list-item > div:first-child,
  .isermons-sermons-list-minimal .isermons-list-item .isermons-media {
    display: none !important;
  }

  .isermons-sermons-list-minimal .series-title {
    font-size: 20px;
    line-height: 1.35;
    margin: 0;
  }

  .isermons-sermons-list-minimal .isermons-meta-data {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 10px;
    font-size: 14px;
  }

  .isermons-sermons-list-minimal .isermons-sermon-actions {
    display: flex;
    justify-content: flex-end;
  }

  .isermons-sermons-list-minimal .isermons-sermon-actions ul {
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .isermons-sermons-list-minimal .isermons-sermon-actions li {
    margin: 0;
  }

  .isermons-sermons-list-minimal .isermons-pl-audio a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    border-radius: 999px;
    background: #072633;
    color: #fff;
    font-size: 14px;
    line-height: 1;
  }

  .isermons-sermons-list-minimal .isermons-pl-audio a i {
    font-size: 16px;
  }

  .isermons-sermons-list-minimal .isermons-pl-audio a:hover,
  .isermons-sermons-list-minimal .isermons-pl-audio a:focus {
    background: #d95622;
    color: #fff;
  }

  .isermons-sermons-list-minimal .isermons-pl-audio a:hover i,
  .isermons-sermons-list-minimal .isermons-pl-audio a:focus i {
    color: #fff;
  }

  .isermons-sermons-list-minimal .isermons-list-item > div:nth-child(4) {
    display: none !important;
  }

  .isermons-sermons-list-minimal .isermons-btn-play {
    display: none !important;
  }
}
