.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS *//* Mirror of the ftr-* global classes. Elementor caches class CSS per page, so these rules make the footer render on every page even when a page's cached class file predates the footer. Edit styles HERE (the Class Manager copies are kept only so the classes stay attached). */
.elementor.elementor-108906 .ftr-root .ftr-fine{font-family:"sole-serif-small-variable", Georgia, serif;font-size:13px;line-height:1.4;font-style:italic;color:#e6ebe2;margin:12px 0px 0px 0px;}
.elementor.elementor-108906 .ftr-root .ftr-tlink{font-family:"sole-serif-small-variable", Georgia, serif;display:inline-block;font-size:15px;line-height:1.3;color:#235327;padding:12px 4px;text-decoration:underline;text-decoration-color:#86A088;text-decoration-thickness:1px;text-underline-offset:4px;transition:text-decoration-color 0.6s, text-decoration-thickness 0.6s, text-underline-offset 0.6s;}
.elementor.elementor-108906 .ftr-root .ftr-tlink:hover,.elementor.elementor-108906 .ftr-root .ftr-tlink:focus-visible{text-decoration-color:#235327;text-decoration-thickness:2px;text-underline-offset:5px;color:#235327;}
.elementor.elementor-108906 .ftr-root .ftr-btn{font-family:"Flexa Mono", monospace;font-weight:400;font-style:normal;font-size:12px;line-height:18px;letter-spacing:0.6px;text-transform:uppercase;color:#235327;background:#ffffff;border:1px solid #235327;border-radius:7px;padding:12px 24px;min-height:48px;text-decoration:none;white-space:nowrap;transition:background-color 0.6s, border-color 0.6s;}
.elementor.elementor-108906 .ftr-root .ftr-btn:hover,.elementor.elementor-108906 .ftr-root .ftr-btn:focus-visible{background:#F3EFE6;border-color:#86A088;color:#235327;}
.elementor.elementor-108906 .ftr-root .ftr-buy-row{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:0px;}
.elementor.elementor-108906 .ftr-root .ftr-group-4{min-width:0px;}
.elementor.elementor-108906 .ftr-root .ftr-group-3{min-width:0px;}
.elementor.elementor-108906 .ftr-root .ftr-group-2{min-width:0px;}
.elementor.elementor-108906 .ftr-root .ftr-group-1{min-width:0px;}
.elementor.elementor-108906 .ftr-root .ftr-legal-link{font-family:"Flexa Mono", monospace;display:inline-block;font-size:11px;line-height:1.5;letter-spacing:0.12em;text-transform:uppercase;font-style:normal;color:#b8d6bf;padding:12px 0px;text-decoration:underline;text-underline-offset:3px;}
.elementor.elementor-108906 .ftr-root .ftr-legal-link:hover,.elementor.elementor-108906 .ftr-root .ftr-legal-link:focus-visible{color:#ffffff;}
.elementor.elementor-108906 .ftr-root .ftr-legal-links{display:flex;flex-direction:row;gap:20px;padding:0px;width:auto;flex:0 0 auto;}
.elementor.elementor-108906 .ftr-root .ftr-legal{font-family:"Flexa Mono", monospace;font-size:11px;line-height:1.5;letter-spacing:0.12em;text-transform:uppercase;font-style:normal;color:#b8d6bf;margin:0px;}
.elementor.elementor-108906 .ftr-root .ftr-link{font-family:"sole-serif-small-variable", Georgia, serif;display:inline-block;font-size:15px;line-height:1.3;color:#ffffff;padding:6px 0px;text-decoration:none;white-space:nowrap;}
.elementor.elementor-108906 .ftr-root .ftr-link:hover,.elementor.elementor-108906 .ftr-root .ftr-link:focus-visible{text-decoration:underline;color:#ffffff;}
.elementor.elementor-108906 .ftr-root .ftr-col-eyebrow{font-family:"Flexa Mono", monospace;font-size:11px;line-height:1.4;letter-spacing:0.18em;text-transform:uppercase;font-style:normal;color:#b8d6bf;margin:0px 0px 6px 0px;}
.elementor.elementor-108906 .ftr-root .ftr-cols{display:grid;grid-template-columns:auto auto auto auto;justify-content:space-between;gap:24px 28px;padding:0px;min-width:0px;}
.elementor.elementor-108906 .ftr-root .ftr-sr{position:absolute;width:1px;height:1px;overflow:hidden;white-space:nowrap;clip-path:inset(50%);margin:0px;}
.elementor.elementor-108906 .ftr-root .ftr-icon{width:20px;height:20px;color:#ffffff;}
.elementor.elementor-108906 .ftr-root .ftr-social-link{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0px;border-radius:999px;border:1px solid #8fb89a;color:#ffffff;position:relative;transition:background-color 0.6s;}
.elementor.elementor-108906 .ftr-root .ftr-social-link:hover,.elementor.elementor-108906 .ftr-root .ftr-social-link:focus-visible{background:rgba(255,255,255,0.1);}
.elementor.elementor-108906 .ftr-root .ftr-social{display:flex;flex-direction:row;gap:10px;padding:0px;}
.elementor.elementor-108906 .ftr-root .ftr-blurb{font-family:"sole-serif-small-variable", Georgia, serif;font-size:15px;line-height:1.5;color:#e6ebe2;margin:0px 0px 18px 0px;max-width:26em;}
.elementor.elementor-108906 .ftr-root .ftr-tag{font-family:"sole-serif-small-variable", Georgia, serif;font-size:17px;line-height:1.4;font-style:italic;color:#b8d6bf;margin:0px 0px 14px 0px;max-width:18em;}
.elementor.elementor-108906 .ftr-root .ftr-mark{display:block;width:210px;height:auto;color:#ffffff;margin:0px 0px 22px 0px;}
.elementor.elementor-108906 .ftr-root .ftr-disc{font-family:"sole-serif-small-variable", Georgia, serif;font-size:11px;line-height:1.45;color:#6D6F5C;margin:10px 0px 0px 0px;max-width:36em;}
.elementor.elementor-108906 .ftr-root .ftr-buy{display:block;padding:0px;width:100%;}
.elementor.elementor-108906 .ftr-root .ftr-book-b{font-family:"sole-serif-small-variable", Georgia, serif;font-size:15px;line-height:1.5;color:#1E1E1E;margin:0px 0px 14px 0px;}
.elementor.elementor-108906 .ftr-root .ftr-book-sub{font-family:"sole-serif-small-variable", Georgia, serif;font-size:15px;line-height:1.4;color:#4E5243;margin:0px;}
.elementor.elementor-108906 .ftr-root .ftr-book-h{font-family:Gooper, Georgia, serif;font-weight:400;font-style:normal;font-size:28px;line-height:1.05;color:#235327;margin:0px 0px 6px 0px;}
.elementor.elementor-108906 .ftr-root .ftr-book-eyebrow{font-family:"Flexa Mono", monospace;font-size:11px;line-height:1.4;letter-spacing:0.18em;text-transform:uppercase;font-style:normal;color:#4E5243;margin:0px 0px 12px 0px;}
.elementor.elementor-108906 .ftr-root .ftr-book-rest{display:flex;flex-direction:column;align-items:flex-start;padding:0px;gap:0px;min-width:0px;}
.elementor.elementor-108906 .ftr-root .ftr-book-top{display:flex;flex-direction:column;padding:0px;gap:0px;min-width:0px;}
.elementor.elementor-108906 .ftr-root .ftr-cover{width:96px;height:auto;border-radius:3px;box-shadow:0px 14px 26px -16px rgba(35,83,39,.55);}
.elementor.elementor-108906 .ftr-root .ftr-book{display:grid;grid-template-columns:96px minmax(0,1fr);column-gap:22px;row-gap:14px;align-items:start;background:#F9F7F3;color:#1E1E1E;border-radius:15px;padding:22px;min-width:0px;}
.elementor.elementor-108906 .ftr-root .ftr-form{display:block;padding:0px;width:100%;}
.elementor.elementor-108906 .ftr-root .ftr-lede{font-family:"sole-serif-small-variable", Georgia, serif;font-size:17px;line-height:1.5;color:#e6ebe2;margin:0px 0px 22px 0px;max-width:30em;}
.elementor.elementor-108906 .ftr-root .ftr-news-h{font-family:Gooper, Georgia, serif;font-weight:400;font-style:normal;font-size:36px;line-height:1.06;letter-spacing:-0.01em;color:#ffffff;margin:0px 0px 16px 0px;}
.elementor.elementor-108906 .ftr-root .ftr-eyebrow{font-family:"Flexa Mono", monospace;font-size:11px;line-height:1.4;letter-spacing:0.18em;text-transform:uppercase;font-style:normal;color:#b8d6bf;margin:0px 0px 12px 0px;}
.elementor.elementor-108906 .ftr-root .ftr-col{display:flex;flex-direction:column;align-items:flex-start;padding:0px;gap:0px;min-width:0px;}
.elementor.elementor-108906 .ftr-root .ftr-s3{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 24px;padding:22px 48px;}
.elementor.elementor-108906 .ftr-root .ftr-s2{display:grid;grid-template-columns:290px 1fr;gap:40px;padding:56px 48px;border-bottom:1px solid #8fb89a;}
.elementor.elementor-108906 .ftr-root .ftr-s1{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:36px;padding:72px 48px 56px 48px;border-bottom:1px solid #8fb89a;}
.elementor.elementor-108906 .ftr-root .ftr-shelf{min-width:0px;}
.elementor.elementor-108906 .ftr-root .ftr-shelves{display:flex;flex-direction:column;padding:0px;gap:0px;border-left:1px solid #8fb89a;min-width:0px;}
.elementor.elementor-108906 .ftr-root .ftr-anchor{position:relative;overflow:hidden;padding:0px;min-height:100%;}
.elementor.elementor-108906 .ftr-root{background:#235327;color:#ffffff;padding:0px;margin:0px;display:grid;grid-template-columns:28% 1fr;gap:0px;width:100%;max-width:100%;overflow:hidden;position:relative;}
@media (max-width: 767px) {
  .elementor.elementor-108906 .ftr-root .ftr-btn{font-size:14px;letter-spacing:1px;padding:12px 14px;width:100%;}
  .elementor.elementor-108906 .ftr-root .ftr-link{padding:12px 0px;white-space:normal;font-size:15px;}
  .elementor.elementor-108906 .ftr-root .ftr-col-eyebrow{margin:0px 0px 2px 0px;}
  .elementor.elementor-108906 .ftr-root .ftr-cols{grid-template-columns:1fr 1fr;gap:18px 16px;}
  .elementor.elementor-108906 .ftr-root .ftr-blurb{display:none;}
  .elementor.elementor-108906 .ftr-root .ftr-book-b{display:none;}
  .elementor.elementor-108906 .ftr-root .ftr-book-h{font-size:28px;}
  .elementor.elementor-108906 .ftr-root .ftr-cover{width:84px;}
  .elementor.elementor-108906 .ftr-root .ftr-book{grid-template-columns:84px minmax(0,1fr);column-gap:16px;padding:18px;}
  .elementor.elementor-108906 .ftr-root .ftr-lede{font-size:17px;}
  .elementor.elementor-108906 .ftr-root .ftr-news-h{font-size:36px;}
  .elementor.elementor-108906 .ftr-root .ftr-s3{flex-direction:column;align-items:flex-start;gap:0px;padding:16px 20px;}
  .elementor.elementor-108906 .ftr-root .ftr-s2{grid-template-columns:1fr;gap:28px;padding:40px 20px;}
  .elementor.elementor-108906 .ftr-root .ftr-s1{grid-template-columns:1fr;gap:28px;padding:40px 20px;}
  .elementor.elementor-108906 .ftr-root .ftr-shelves{border-left:0px solid #8fb89a;}
  .elementor.elementor-108906 .ftr-root .ftr-anchor{order:2;height:130px;min-height:130px;border-top:1px solid #8fb89a;}
  .elementor.elementor-108906 .ftr-root{grid-template-columns:1fr;}
}

/* Token alignment (2026-09-27): type sizes on the scale, eyebrows 0.18em, card radius 15px, white-button hover cream, small print --tpn-muted-small. */
/* Alignment fixes (2026-09-27): icons sat 4px low (inline SVG on a 32px line box); button text sat high (block box taller than its content) */
.elementor.elementor-108906 .ftr-root .ftr-icon{line-height:0;display:flex;align-items:center;justify-content:center;}
.elementor.elementor-108906 .ftr-root .ftr-icon svg{display:block;width:100%;height:100%;}
.elementor.elementor-108906 .ftr-root .ftr-btn{display:inline-flex;align-items:center;justify-content:center;text-align:center;}

/* ===== TPN footer "Night Garden" (2026-09-27) =====
   All footer styles are in this Custom CSS (see the mirror block at the top).
   This block holds the coneflower, the signup form, the tablet layout, and the
   sitewide Raptive + image rules carried over from Footer (26). */

/* Coneflower: sized to the footer height so the bloom is never cropped */
.ftr-anchor { background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 420 900' xmlns='http://www.w3.org/2000/svg' fill='%23D6EA88'%3E%3Cpath d='M196 900 C186 700 214 520 200 300 L212 300 C226 520 200 700 212 900Z'/%3E%3Cpath d='M204 760 C140 720 90 650 72 570 C130 620 180 690 204 760Z'/%3E%3Cpath d='M206 620 C262 580 300 520 310 450 C270 500 232 560 206 620Z'/%3E%3Cpath d='M206 250 C184 300 180 380 198 450 C222 380 226 300 206 250Z' transform='rotate%28-84 206 250%29'/%3E%3Cpath d='M206 250 C184 300 180 380 198 450 C222 380 226 300 206 250Z' transform='rotate%28-60 206 250%29'/%3E%3Cpath d='M206 250 C184 300 180 380 198 450 C222 380 226 300 206 250Z' transform='rotate%28-36 206 250%29'/%3E%3Cpath d='M206 250 C184 300 180 380 198 450 C222 380 226 300 206 250Z' transform='rotate%28-12 206 250%29'/%3E%3Cpath d='M206 250 C184 300 180 380 198 450 C222 380 226 300 206 250Z' transform='rotate%2812 206 250%29'/%3E%3Cpath d='M206 250 C184 300 180 380 198 450 C222 380 226 300 206 250Z' transform='rotate%2836 206 250%29'/%3E%3Cpath d='M206 250 C184 300 180 380 198 450 C222 380 226 300 206 250Z' transform='rotate%2860 206 250%29'/%3E%3Cpath d='M206 250 C184 300 180 380 198 450 C222 380 226 300 206 250Z' transform='rotate%2884 206 250%29'/%3E%3Cpath d='M150 258 C150 190 180 146 206 138 C232 146 262 190 262 258 Z'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-size: auto 94%; background-position: 50% 103%; }
.ftr-news-h span { color: #f4d58d; }
.ftr-mark svg, .ftr-mark svg * { fill: #ffffff !important; }
.ftr-mark text { display: none; }
.ftr-book .ftr-cover { grid-row: 1; grid-column: 1; }
.ftr-book .ftr-book-top { grid-row: 1; grid-column: 2; }
.ftr-book .ftr-book-rest { grid-column: 1 / -1; }
.ftr-cover img { width: 100%; height: auto; border-radius: 3px; display: block; }
.ftr-root a:focus-visible { outline: 3px solid #FFB300; outline-offset: 3px; }
.ftr-book a:focus-visible { outline-color: #235327; }

/* Signup form (MC4WP 47648, shortcode text in the paragraph inside ftr-form). */
.ftr-form > p { width: 100%; margin: 0; }
.ftr-form .mc4wp-form { margin: 0; width: 100%; }
.ftr-form .mc4wp-form-fields p { margin: 0; }
.ftr-form .tpn-ftr-lbl { display: block; font-family: "Flexa Mono", monospace; font-size: 11px; line-height: 1.4; letter-spacing: .18em; text-transform: uppercase; color: #b8d6bf; margin: 0 0 8px; }
.ftr-form .tpn-ftr-row, .ftr-form .mc4wp-form-fields { display: flex; flex-wrap: wrap; gap: 10px; }
.ftr-form .mc4wp-form-fields > * { min-width: 0; }
.ftr-form .tpn-ftr-lbl { flex-basis: 100%; }
.ftr-form label:has(input[type="email"]) { display: block; flex: 1 1 220px; }
.ftr-form p:has(input[type="email"]) { flex: 1 1 220px; }
.ftr-form input[type="email"] { width: 100%; flex: 1 1 220px; min-height: 48px; margin: 0; border-radius: 7px; border: 1px solid transparent; background: #fff; padding: 0 16px; font-family: "sole-serif-small-variable", Georgia, serif; font-size: 16px; color: #1E1E1E; box-shadow: none; }
.ftr-form input[type="email"]::placeholder { color: #6D6F5C; opacity: 1; }
.ftr-form button[type="submit"], .ftr-form input[type="submit"] {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px; white-space: nowrap; width: auto;
  font-family: "Flexa Mono", monospace; font-weight: 400; font-style: normal !important; font-size: 12px; line-height: 18px; letter-spacing: .6px; text-transform: uppercase;
  color: #235327 !important; background: #FFB300 !important; border: 1px solid transparent !important; border-radius: 7px !important;
  padding: 12px 24px !important; min-height: 48px; margin: 0; cursor: pointer; box-shadow: none; text-shadow: none;
  transition: background-color .6s cubic-bezier(.25,.1,.25,1);
}
.ftr-form button[type="submit"]:hover, .ftr-form input[type="submit"]:hover, .ftr-form button[type="submit"]:focus { background: #F7E2AF !important; color: #235327 !important; }
.ftr-form .mc4wp-response { margin-top: 10px; }
.ftr-form .mc4wp-alert, .ftr-form .mc4wp-alert p { font-family: "sole-serif-small-variable", Georgia, serif; font-size: 15px; line-height: 1.4; margin: 0; color: #f4d58d; }
.ftr-form .mc4wp-error, .ftr-form .mc4wp-notice { color: #fff; padding-left: 12px; border-left: 3px solid #FFB300; }

@media (prefers-reduced-motion: reduce) { .ftr-root * { transition: none !important; } }

/* Tablet */
@media (max-width: 1100px) and (min-width: 768px) {
  .ftr-s1, .ftr-s2 { grid-template-columns: 1fr !important; }
  .ftr-cols { grid-template-columns: auto auto !important; justify-content: start !important; gap: 24px 48px !important; }
}
/* Small desktop: four link columns overlap below ~1400px, so they go two by two */
@media (max-width: 1399px) and (min-width: 1101px) {
  .ftr-cols { grid-template-columns: auto auto !important; justify-content: start !important; gap: 24px 56px !important; }
}
/* Phone */
@media (max-width: 767px) {
  .ftr-anchor { background-size: 220px auto; background-position: right -20px top 0; }
  .ftr-cols .ftr-group-2 { grid-row: span 2; }
  .ftr-form .tpn-ftr-row, .ftr-form .mc4wp-form-fields { flex-direction: column; }
  .ftr-form button[type="submit"], .ftr-form input[type="submit"] { width: 100%; font-size: 14px; letter-spacing: 1.5px; }
  .ftr-form p:has(input[type="email"]), .ftr-form label:has(input[type="email"]), .ftr-form input[type="email"] { flex: none; }
}
@media (max-width: 360px) { .ftr-btn { white-space: normal; text-align: center; } }

/* ===== Carried from Footer (26) Custom CSS: sitewide Raptive disclosure + image standard ===== */
/* Raptive footer message: tidy, quiet layout */
.adthrive-footer-message {
  max-width: 640px;
  margin: 0 auto 130px !important;  /* clears Raptive's ~100px desktop sticky ad so the whole disclosure shows */
  padding: 4px 20px 0 !important;
  text-align: center;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  font-size: 12px;
  line-height: 1.5;
  color: #6D6F5C;                    /* --tpn-muted-small, 5.2:1 on white */
}
.adthrive-footer-message br { display: none; }
.adthrive-footer-message .adthrive-ccpa-link {
  margin: 0 0 6px !important;
  font-family: inherit !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
  color: #6D6F5C !important;
}
.adthrive-footer-message .raptive-content-terms-footer {
  display: inline;
  font-family: inherit !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
  color: #6D6F5C !important;
}
/* Links: dark gray with a light underline */
.adthrive-footer-message a {
  font-family: inherit !important;
  font-size: 12px !important;
  color: #4E5243 !important;         /* muted dark gray */
  text-decoration: underline !important;
  text-decoration-color: #cfd0c4 !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 3px;
  transition: text-decoration-color 0.2s ease;
}
.adthrive-footer-message a:hover,
.adthrive-footer-message a:focus-visible { text-decoration-color: #4E5243 !important; }
.adthrive-footer-message > span {
  display: inline;
  padding: 0 !important;
  border: 0 !important;
  font-family: inherit !important;
  font-size: 12px !important;
  color: #6D6F5C !important;         /* --tpn-muted-small; Raptive's #a9a9a9 was near-invisible on white */
}
.adthrive-device-phone .adthrive-footer-message,
.adthrive-device-tablet .adthrive-footer-message { margin-bottom: 110px !important; }
.adthrive-footer-message > span::before {
  content: "\00B7";
  margin: 0 8px;
}
/* =========================================================
   Image standard for guides, FAQs, interviews and pages - 2026-09-27
   Same rules as the plant template (post 105006): tpn-rounded
   treatment everywhere, no local margins, padding, widths, masks
   or crops, 15px corners (10px mobile), one caption style.
   Former circles and masks become rounded squares (listed by
   element ID). New side-by-side images: add the class tpn-square.
   ========================================================= */
body:not(.single-plant) :is([data-elementor-type="wp-page"], [data-elementor-type="wp-post"]) .elementor-widget-image:not(.e-loop-item *),
body:not(.single-plant) :is([data-elementor-type="wp-page"], [data-elementor-type="wp-post"]) .elementor-widget-image:not(.e-loop-item *) > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  --container-widget-width: 100% !important;
  -webkit-mask-image: none !important;
  mask-image: none !important;
}
body:not(.single-plant) :is([data-elementor-type="wp-page"], [data-elementor-type="wp-post"]) .elementor-widget-image:not(.e-loop-item *) figure { margin: 0 !important; }
body:not(.single-plant) :is([data-elementor-type="wp-page"], [data-elementor-type="wp-post"]) .elementor-widget-image:not(.e-loop-item *) img {
  display: block;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  object-fit: initial !important;
  border-radius: 15px !important;
  margin: 0 !important;
  -webkit-mask-image: none !important;
  mask-image: none !important;
}
body:not(.single-plant) :is([data-elementor-type="wp-page"], [data-elementor-type="wp-post"]) .elementor-widget-image:not(.e-loop-item *):is(.tpn-square, .elementor-element-02b234c, .elementor-element-07a3521, .elementor-element-196168f, .elementor-element-20b6629, .elementor-element-2bd9990, .elementor-element-4802932, .elementor-element-4a9864c, .elementor-element-728fbce, .elementor-element-80d0746, .elementor-element-88bb0f6, .elementor-element-ab6c9bb, .elementor-element-d83d5ad, .elementor-element-e5f64fc, .elementor-element-e91b467, .elementor-element-eef16d7, .elementor-element-f06d333, .elementor-element-fe2e419) img {
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  object-fit: cover !important;
  object-position: center !important;
}
body:not(.single-plant) :is([data-elementor-type="wp-page"], [data-elementor-type="wp-post"]) .elementor-widget-image:not(.e-loop-item *) figcaption,
body:not(.single-plant) :is([data-elementor-type="wp-page"], [data-elementor-type="wp-post"]) .elementor-widget-image:not(.e-loop-item *) .widget-image-caption {
  margin: 15px 0 0 !important;
  padding: 0 !important;
  font-family: var(--e-global-typography-1dd06cc-font-family), Georgia, serif !important;
  font-size: var(--e-global-typography-1dd06cc-font-size) !important;
  font-weight: var(--e-global-typography-1dd06cc-font-weight) !important;
  font-style: var(--e-global-typography-1dd06cc-font-style) !important;
  line-height: var(--e-global-typography-1dd06cc-line-height) !important;
  letter-spacing: var(--e-global-typography-1dd06cc-letter-spacing, normal) !important;
  color: #333333 !important;
  text-align: center !important;
}
@media (max-width: 767px) {
  body:not(.single-plant) :is([data-elementor-type="wp-page"], [data-elementor-type="wp-post"]) .elementor-widget-image:not(.e-loop-item *) img { border-radius: 10px !important; }
  body:not(.single-plant) :is([data-elementor-type="wp-page"], [data-elementor-type="wp-post"]) .elementor-widget-image:not(.e-loop-item *) figcaption,
  body:not(.single-plant) :is([data-elementor-type="wp-page"], [data-elementor-type="wp-post"]) .elementor-widget-image:not(.e-loop-item *) .widget-image-caption { margin-top: 10px !important; }
}
/* ===== In-text links (2026-09-27) =====
   Body-copy links in text editor and post content widgets: link green text,
   soft 1px underline in the same green at 50%, purple on hover and keyboard focus.
   Headings, cards, buttons, the table of contents and V4 paragraph links are untouched. */
:is(.elementor-widget-text-editor, .elementor-widget-theme-post-content) :is(p, li) a:not(.elementor-toc__list-item-text, .e-paragraph-link-base, .elementor-button):not(.elementor-widget-table-of-contents *) {
  color: #046D3C;
  text-decoration-line: underline;
  text-decoration-color: rgb(4 109 60 / .5);
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  text-decoration-skip-ink: auto;
  transition: color .15s ease, text-decoration-color .15s ease;
}
:is(.elementor-widget-text-editor, .elementor-widget-theme-post-content) :is(p, li) a:not(.elementor-toc__list-item-text, .e-paragraph-link-base, .elementor-button):not(.elementor-widget-table-of-contents *):is(:hover, :focus-visible) {
  color: #5B047E;
  text-decoration-color: #5B047E;
}
:is(.elementor-widget-text-editor, .elementor-widget-theme-post-content) :is(p, li) a:not(.elementor-toc__list-item-text, .e-paragraph-link-base, .elementor-button):not(.elementor-widget-table-of-contents *):focus-visible {
  outline: 2px solid #5B047E;
  outline-offset: 2px;
  border-radius: 2px;
}
@media (prefers-reduced-motion: reduce) {
  :is(.elementor-widget-text-editor, .elementor-widget-theme-post-content) :is(p, li) a { transition: none; }
}/* End custom CSS */