/**
 * Accessibility: text resize & reflow overrides
 * Softens fixed-height / overflow clipping so content remains readable
 * at 200%/400% zoom and ~320 CSS-pixel viewports.
 * Decorative media keeps fixed sizing; text containers grow with content.
 */

/* --- Shared text containers that previously clipped --- */
.feature-wrap .content h3,
.pre-footer-widgets .feature-wrap .content h3 {
  max-height: none;
  overflow: visible;
  height: auto;
}

.ask-the-ag-experts-section .container {
  height: auto;
  min-height: 0;
  padding-top: 40px;
  padding-bottom: 40px;
  flex-wrap: wrap;
}

/* Header / footer / buttons wrap instead of clipping */
.header-logo {
  max-height: none;
  height: auto;
  max-width: 100%;
}

.menu-search-container,
.search-container-no-segmented,
.top-navigation-links,
.header-new-content,
.footer .row,
.pre-footer-widgets .row {
  flex-wrap: wrap;
}

.btn-blue,
.btn-white,
a.btn-blue,
a.btn-white,
.feature-wrap .content .read-more,
.pre-footer-widgets .feature-wrap .content .read-more {
  white-space: normal;
  height: auto;
  min-height: 0;
  max-height: none;
  line-height: 1.4;
}

/* Cards / news / trial teaser text: prefer content height */
.news-item .content,
.news-item .title,
.trial-item .content,
.trial-item .title,
.card .card-title,
.card .card-text,
.feature-wrap .content p {
  max-height: none;
  overflow: visible;
  height: auto;
  -webkit-line-clamp: unset;
}

/* Carousel / slider text areas should not clip body copy */
.slick-slide .content,
.slick-slide h2,
.slick-slide h3,
.slick-slide p,
[class*="carousel"] h2,
[class*="carousel"] h3,
[class*="carousel"] p {
  max-height: none;
  overflow: visible;
  height: auto;
}

/* Allow main layout to reflow at narrow widths without horizontal scroll from layout */
@media (max-width: 320px) {
  html,
  body {
    overflow-x: auto;
  }

  .container,
  .container-fluid {
    max-width: 100%;
    padding-left: 12px;
    padding-right: 12px;
  }

  .row {
    margin-left: 0;
    margin-right: 0;
  }

  .row > [class*="col-"] {
    flex: 0 0 100%;
    max-width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  .navbar,
  .header-new-content,
  .logo-and-hamburger-menu-container,
  .top-navigation-links {
    flex-wrap: wrap;
    max-width: 100%;
  }

  #btn-back-to-top {
    width: 44px;
    height: 44px;
    bottom: 12px;
    right: 12px;
  }

  [dir="rtl"] #btn-back-to-top {
    right: auto;
    left: 12px;
  }
}

/* Prefer readable typography when user zooms (approx. via narrow effective width) */
@media (max-width: 480px) {
  .feature-wrap .content h3 {
    font-size: clamp(1.25rem, 5vw, 2rem);
    line-height: 1.3;
  }

  .page-newsletter-bar .gform_title,
  .title-section-Demo {
    font-size: clamp(1.5rem, 6vw, 2.5rem);
    line-height: 1.25;
    max-height: none;
    overflow: visible;
  }
}

/* Homepage / shared blocks: allow titles and descriptions to reflow at high zoom */
.section-news .post-title,
.section-news .post-desc,
.section-service .post-title,
.section-service .post-desc,
.title-section-Demo.trials,
.guides-articles-block .post-title,
.guides-articles-block .post-desc,
.related-post-block .post-title,
[class*="trial"] .post-title,
[class*="trial"] .post-desc {
  max-height: none !important;
  height: auto !important;
  overflow: visible !important;
  -webkit-line-clamp: unset !important;
  line-clamp: unset !important;
  white-space: normal;
}

div#nav-tab-menu .nav-link,
a.nav-link.menu-tabs {
  max-height: none;
  height: auto;
  white-space: normal;
}
.section-global-leader .content,
.section-global-leader h1,
.section-global-leader h2,
.section-global-leader p,
.hero .content,
.hero h1,
.hero p {
  max-height: none;
  overflow: visible;
  height: auto;
}
