/* Fallback CSS for Elementor page 1710 — original not archived in any
 * web archive (Wayback / archive.ph / CommonCrawl all checked). This provides
 * reasonable structural styling derived from the page HTML and brand styles
 * extracted from working pages (post-1374, post-1420, etc.).
 */

/* Container layout */
.elementor-1710 .elementor-element[data-element_type="container"] {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
}
.elementor-1710 .e-con.e-parent {
  padding: 60px 20px;
}
.elementor-1710 .e-con-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 20px 0;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 30px;
}

/* Two-column rows */
.elementor-1710 .e-con-full.e-flex.e-child,
.elementor-1710 .e-con-boxed.e-flex.e-child {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 40px;
}
@media (max-width: 768px) {
  .elementor-1710 .e-con-full.e-flex.e-child,
  .elementor-1710 .e-con-boxed.e-flex.e-child {
    flex-direction: column;
    text-align: center;
  }
}

/* Headings */
.elementor-1710 .elementor-widget-heading .elementor-heading-title {
  font-family: "Playfair Display", "Noto Serif Display", serif;
  font-weight: 500;
  color: #2c5f5d;
  text-align: center;
  margin: 0;
  line-height: 1.2;
  font-size: 32px;
}
.elementor-1710 > .e-con:first-child .elementor-widget-heading .elementor-heading-title,
.elementor-1710 > .e-con.e-parent:first-of-type .elementor-widget-heading:first-of-type .elementor-heading-title {
  font-size: 48px;
  margin-bottom: 30px;
  color: #2c5f5d;
}

/* Body text */
.elementor-1710 .elementor-widget-text-editor,
.elementor-1710 .elementor-widget-text-editor p {
  font-family: "Lato", sans-serif;
  font-size: 16px;
  line-height: 1.7;
  color: #444;
  text-align: center;
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}

/* Images */
.elementor-1710 .elementor-widget-image {
  text-align: center;
}
.elementor-1710 .elementor-widget-image img {
  max-width: 240px;
  height: auto;
  margin: 0 auto;
  display: block;
}
/* Larger hero/feature images */
.elementor-1710 > .e-con.e-parent:first-of-type .elementor-widget-image img {
  max-width: 480px;
}

/* Section background alternation */
.elementor-1710 > .e-con.e-parent:nth-of-type(odd) {
  background-color: #FFF2D5;
}
.elementor-1710 > .e-con.e-parent:nth-of-type(even) {
  background-color: #ffffff;
}

/* Buttons */
.elementor-1710 .elementor-button {
  background-color: #2c5f5d;
  color: #fff !important;
  padding: 12px 32px;
  border-radius: 4px;
  font-family: "Lato", sans-serif;
  font-weight: 600;
  letter-spacing: 0.5px;
  text-decoration: none;
  display: inline-block;
}
.elementor-1710 .elementor-button:hover {
  background-color: #1a4040;
}

/* Widget vertical spacing */
.elementor-1710 .elementor-widget {
  margin-bottom: 20px;
}
.elementor-1710 .elementor-widget:last-child {
  margin-bottom: 0;
}

/* Lists (used on sustainability page) */
.elementor-1710 .elementor-widget-text-editor ul,
.elementor-1710 .elementor-widget-text-editor ol {
  text-align: left;
  max-width: 720px;
  margin: 16px auto;
  padding-left: 24px;
  color: #444;
  font-family: "Lato", sans-serif;
  line-height: 1.8;
}
.elementor-1710 .elementor-widget-text-editor li {
  margin-bottom: 8px;
}
