.elementor-kit-8{--e-global-color-primary:#073020;--e-global-color-secondary:#F4F1E9;--e-global-color-text:#000000;--e-global-color-accent:#073020;--e-global-color-fe8616e:#688F4E;--e-global-color-dd8a9b3:#3F5638;--e-global-color-9d3aff7:#E8E4D9;--e-global-color-7cc4527:#F9F9F6;--e-global-typography-primary-font-family:"Poppins";--e-global-typography-primary-font-size:1rem;--e-global-typography-primary-line-height:1.375rem;--e-global-typography-secondary-font-family:"Poppins";--e-global-typography-secondary-font-size:0.875rem;--e-global-typography-secondary-font-weight:400;--e-global-typography-secondary-line-height:1.188rem;--e-global-typography-text-font-family:"Poppins";--e-global-typography-text-font-size:1rem;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.2rem;--e-global-typography-accent-font-family:"Poppins";--e-global-typography-accent-font-size:1rem;--e-global-typography-accent-line-height:1rem;--e-global-typography-717f9ac-font-family:"Instrument Serif";--e-global-typography-717f9ac-font-size:5rem;--e-global-typography-717f9ac-font-weight:normal;--e-global-typography-717f9ac-line-height:5.313rem;--e-global-typography-fc8d39b-font-family:"Instrument Serif";--e-global-typography-fc8d39b-font-size:4.063rem;--e-global-typography-fc8d39b-font-weight:normal;--e-global-typography-fc8d39b-line-height:4.375rem;--e-global-typography-ce4e09e-font-family:"Poppins";--e-global-typography-ce4e09e-font-size:2.5rem;--e-global-typography-ce4e09e-font-weight:600;--e-global-typography-ce4e09e-line-height:2.813rem;--e-global-typography-cf7442e-font-family:"Poppins";--e-global-typography-cf7442e-font-size:2.188rem;--e-global-typography-cf7442e-font-weight:600;--e-global-typography-cf7442e-line-height:2.5rem;--e-global-typography-075c600-font-family:"Poppins";--e-global-typography-075c600-font-size:1.875rem;--e-global-typography-075c600-font-weight:600;--e-global-typography-075c600-line-height:2.188rem;--e-global-typography-665a915-font-family:"Poppins";--e-global-typography-665a915-font-size:1.563rem;--e-global-typography-665a915-font-weight:400;--e-global-typography-665a915-line-height:1.875rem;--e-global-typography-ca02dd5-font-family:"Poppins";--e-global-typography-ca02dd5-font-size:1.25rem;--e-global-typography-ca02dd5-font-weight:400;--e-global-typography-ca02dd5-line-height:1.563rem;--e-global-typography-ca02dd5-letter-spacing:0px;--e-global-typography-fbeab00-font-size:1.125rem;--e-global-typography-fbeab00-font-weight:400;--e-global-typography-fbeab00-text-transform:uppercase;--e-global-typography-fbeab00-line-height:1.438rem;--e-global-typography-63cd4f9-font-family:"Poppins";--e-global-typography-63cd4f9-font-size:0.875rem;--e-global-typography-63cd4f9-line-height:1rem;--e-global-typography-b5bee40-font-family:"Instrument Serif";--e-global-typography-b5bee40-font-size:1.875rem;--e-global-typography-b5bee40-font-weight:400;--e-global-typography-b5bee40-line-height:2.188rem;--e-global-typography-9a75feb-font-size:0.875rem;--e-global-typography-9a75feb-font-weight:400;--e-global-typography-9a75feb-text-transform:uppercase;--e-global-typography-9a75feb-line-height:1.438rem;--e-global-typography-9a75feb-letter-spacing:0.8px;background-color:var( --e-global-color-7cc4527 );color:var( --e-global-color-text );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-8 button,.elementor-kit-8 input[type="button"],.elementor-kit-8 input[type="submit"],.elementor-kit-8 .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-secondary );border-radius:50px 50px 50px 50px;padding:0px 0px 0px 0px;}.elementor-kit-8 button:hover,.elementor-kit-8 button:focus,.elementor-kit-8 input[type="button"]:hover,.elementor-kit-8 input[type="button"]:focus,.elementor-kit-8 input[type="submit"]:hover,.elementor-kit-8 input[type="submit"]:focus,.elementor-kit-8 .elementor-button:hover,.elementor-kit-8 .elementor-button:focus{background-color:var( --e-global-color-fe8616e );color:var( --e-global-color-secondary );}.elementor-kit-8 e-page-transition{background-color:#FFBC7D;}.elementor-kit-8 p{margin-block-end:12px;}.elementor-kit-8 a{color:var( --e-global-color-dd8a9b3 );}.elementor-kit-8 a:hover{color:var( --e-global-color-fe8616e );}.elementor-kit-8 h1{color:var( --e-global-color-dd8a9b3 );font-family:var( --e-global-typography-ce4e09e-font-family ), Sans-serif;font-size:var( --e-global-typography-ce4e09e-font-size );font-weight:var( --e-global-typography-ce4e09e-font-weight );line-height:var( --e-global-typography-ce4e09e-line-height );}.elementor-kit-8 h2{color:var( --e-global-color-dd8a9b3 );font-family:var( --e-global-typography-075c600-font-family ), Sans-serif;font-size:var( --e-global-typography-075c600-font-size );font-weight:var( --e-global-typography-075c600-font-weight );line-height:var( --e-global-typography-075c600-line-height );}.elementor-kit-8 h3{color:#3F5638;font-family:var( --e-global-typography-ca02dd5-font-family ), Sans-serif;font-size:var( --e-global-typography-ca02dd5-font-size );font-weight:var( --e-global-typography-ca02dd5-font-weight );line-height:var( --e-global-typography-ca02dd5-line-height );letter-spacing:var( --e-global-typography-ca02dd5-letter-spacing );}.elementor-kit-8 h4{color:var( --e-global-color-dd8a9b3 );font-family:var( --e-global-typography-ca02dd5-font-family ), Sans-serif;font-size:var( --e-global-typography-ca02dd5-font-size );font-weight:var( --e-global-typography-ca02dd5-font-weight );line-height:var( --e-global-typography-ca02dd5-line-height );letter-spacing:var( --e-global-typography-ca02dd5-letter-spacing );}.elementor-kit-8 h5{color:var( --e-global-color-dd8a9b3 );font-size:var( --e-global-typography-fbeab00-font-size );font-weight:var( --e-global-typography-fbeab00-font-weight );text-transform:var( --e-global-typography-fbeab00-text-transform );line-height:var( --e-global-typography-fbeab00-line-height );}.elementor-kit-8 h6{color:var( --e-global-color-dd8a9b3 );font-size:var( --e-global-typography-fbeab00-font-size );font-weight:var( --e-global-typography-fbeab00-font-weight );text-transform:var( --e-global-typography-fbeab00-text-transform );line-height:var( --e-global-typography-fbeab00-line-height );}.elementor-kit-8 label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-8 input:not([type="button"]):not([type="submit"]),.elementor-kit-8 textarea,.elementor-kit-8 .elementor-field-textual{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );line-height:var( --e-global-typography-secondary-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){margin-block-end:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1366px){.elementor-kit-8{--e-global-typography-text-letter-spacing:1.2px;font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-8 h1{font-size:var( --e-global-typography-ce4e09e-font-size );line-height:var( --e-global-typography-ce4e09e-line-height );}.elementor-kit-8 h2{font-size:var( --e-global-typography-075c600-font-size );line-height:var( --e-global-typography-075c600-line-height );}.elementor-kit-8 h3{font-size:var( --e-global-typography-ca02dd5-font-size );line-height:var( --e-global-typography-ca02dd5-line-height );letter-spacing:var( --e-global-typography-ca02dd5-letter-spacing );}.elementor-kit-8 h4{font-size:var( --e-global-typography-ca02dd5-font-size );line-height:var( --e-global-typography-ca02dd5-line-height );letter-spacing:var( --e-global-typography-ca02dd5-letter-spacing );}.elementor-kit-8 h5{font-size:var( --e-global-typography-fbeab00-font-size );line-height:var( --e-global-typography-fbeab00-line-height );}.elementor-kit-8 h6{font-size:var( --e-global-typography-fbeab00-font-size );line-height:var( --e-global-typography-fbeab00-line-height );}.elementor-kit-8 button,.elementor-kit-8 input[type="button"],.elementor-kit-8 input[type="submit"],.elementor-kit-8 .elementor-button{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-8 label{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-8 input:not([type="button"]):not([type="submit"]),.elementor-kit-8 textarea,.elementor-kit-8 .elementor-field-textual{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}}@media(max-width:1024px){.elementor-kit-8{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-8 h1{font-size:var( --e-global-typography-ce4e09e-font-size );line-height:var( --e-global-typography-ce4e09e-line-height );}.elementor-kit-8 h2{font-size:var( --e-global-typography-075c600-font-size );line-height:var( --e-global-typography-075c600-line-height );}.elementor-kit-8 h3{font-size:var( --e-global-typography-ca02dd5-font-size );line-height:var( --e-global-typography-ca02dd5-line-height );letter-spacing:var( --e-global-typography-ca02dd5-letter-spacing );}.elementor-kit-8 h4{font-size:var( --e-global-typography-ca02dd5-font-size );line-height:var( --e-global-typography-ca02dd5-line-height );letter-spacing:var( --e-global-typography-ca02dd5-letter-spacing );}.elementor-kit-8 h5{font-size:var( --e-global-typography-fbeab00-font-size );line-height:var( --e-global-typography-fbeab00-line-height );}.elementor-kit-8 h6{font-size:var( --e-global-typography-fbeab00-font-size );line-height:var( --e-global-typography-fbeab00-line-height );}.elementor-kit-8 button,.elementor-kit-8 input[type="button"],.elementor-kit-8 input[type="submit"],.elementor-kit-8 .elementor-button{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-8 label{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-8 input:not([type="button"]):not([type="submit"]),.elementor-kit-8 textarea,.elementor-kit-8 .elementor-field-textual{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-8{--e-global-typography-717f9ac-font-size:4rem;--e-global-typography-717f9ac-line-height:4.333rem;--e-global-typography-fc8d39b-font-size:2.667rem;--e-global-typography-fc8d39b-line-height:3rem;--e-global-typography-ce4e09e-font-size:2rem;--e-global-typography-ce4e09e-line-height:2.333rem;--e-global-typography-ca02dd5-font-size:1.2rem;--e-global-typography-fbeab00-font-size:1rem;--e-global-typography-9a75feb-font-size:1rem;font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-8 h1{font-size:var( --e-global-typography-ce4e09e-font-size );line-height:var( --e-global-typography-ce4e09e-line-height );}.elementor-kit-8 h2{font-size:var( --e-global-typography-075c600-font-size );line-height:var( --e-global-typography-075c600-line-height );}.elementor-kit-8 h3{font-size:var( --e-global-typography-ca02dd5-font-size );line-height:var( --e-global-typography-ca02dd5-line-height );letter-spacing:var( --e-global-typography-ca02dd5-letter-spacing );}.elementor-kit-8 h4{font-size:var( --e-global-typography-ca02dd5-font-size );line-height:var( --e-global-typography-ca02dd5-line-height );letter-spacing:var( --e-global-typography-ca02dd5-letter-spacing );}.elementor-kit-8 h5{font-size:var( --e-global-typography-fbeab00-font-size );line-height:var( --e-global-typography-fbeab00-line-height );}.elementor-kit-8 h6{font-size:var( --e-global-typography-fbeab00-font-size );line-height:var( --e-global-typography-fbeab00-line-height );}.elementor-kit-8 button,.elementor-kit-8 input[type="button"],.elementor-kit-8 input[type="submit"],.elementor-kit-8 .elementor-button{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-8 label{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-8 input:not([type="button"]):not([type="submit"]),.elementor-kit-8 textarea,.elementor-kit-8 .elementor-field-textual{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */.balance{
    text-wrap: balance;
}

.pretty{
    text-wrap: pretty;
}

/* Force button text left-aligned */
.btn-left .elementor-button,
.btn-left .elementor-button-content-wrapper {
  justify-content: flex-start !important; /* pushes text to left */
  text-align: left !important;
}

.one-line {
  display: -webkit-box !important;
  -webkit-line-clamp: 1;
  line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  white-space: normal;
  word-break: break-word;
}

.two-lines {
  display: -webkit-box !important;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  white-space: normal;
  word-break: break-word;
}

.three-lines {
  display: -webkit-box !important;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  white-space: normal;
  word-break: break-word;
}


.four-lines {
  display: -webkit-box !important;
  -webkit-line-clamp: 4;
  line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
  white-space: normal;
  word-break: break-word;
}

.five-lines {
  display: -webkit-box !important;
  -webkit-line-clamp: 5;
  line-clamp: 5;
  -webkit-box-orient: vertical;
  overflow: hidden;
  white-space: normal;
  word-break: break-word;
}

/* 
Mobile Horizontal Scroll Carousel

This CSS converts an Elementor container into a horizontally scrolling
carousel on mobile devices. The parent container becomes a single-row
flex layout with horizontal overflow enabled, allowing cards to be
swiped sideways. Each child item is given a fixed viewport-based width
so only one card (plus a partial preview of the next) is visible at a
time. Scroll snapping is applied so cards align cleanly as the user
swipes, creating a smooth carousel-like experience without using
JavaScript.
*/

@media (max-width: 767px) {
  .mobile-scroll-row {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    gap: 16px;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    padding-bottom: 10px;
  }

  .mobile-scroll-row > * {
    flex: 0 0 80vw;
    min-width: 80vw;
    scroll-snap-align: start;
  }

  .mobile-scroll-row::-webkit-scrollbar {
    display: none;
  }
}


.rectangle-text {
    display: inline-block;
    font-size: 14px;
    line-height: 18px;
    font-weight: 600;
    text-transform: uppercase;
    background-color: #688F4E;
    padding: 4px 10px;
    margin: 0px 0px 25px 0px;
}

.image-overlay-hover {
    position: relative;
    overflow: hidden;
    border-radius: 20px;
}

.image-overlay-hover::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 245px;
    background: rgba(7, 48, 32, 0.95);
    pointer-events: none;
    transition: opacity 0.3s ease;
    opacity: 1;
}

.image-overlay-hover:hover::after {
    opacity: 0;
}

.image-overlay-hover-2 {
    position: relative;
    overflow: hidden;
}

.image-overlay-hover-2::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 216px;
    background: rgba(7, 48, 32, 0.95);
    pointer-events: none;
    transition: opacity 0.3s ease;
    opacity: 1;
}

.image-overlay-hover-2:hover::after {
    opacity: 0;
}

@media (max-width: 1837px) {

  .horizontal-scroll-container {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    gap: 23px;

    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;

    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none;

    cursor: grab;
    user-select: none;
  }

  .horizontal-scroll-container:active {
    cursor: grabbing;
  }

  .horizontal-scroll-container > .e-con {
    flex: 0 0 390px;
    scroll-snap-align: start;
  }

  .horizontal-scroll-container::-webkit-scrollbar {
    display: none;
  }
}

/* Tablet */
@media (max-width: 1024px) {

  .horizontal-scroll-container > .e-con {
    flex-basis: 350px;
  }
}

/* Mobile */
@media (max-width: 767px) {

  .horizontal-scroll-container {
    gap: 11px;
  }

  .horizontal-scroll-container > .e-con {
    flex-basis: 80vw;
  }
}

.horizontal-scroll-container-2 {
  display: flex;
  flex-wrap: nowrap;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}

.horizontal-scroll-container-2::-webkit-scrollbar {
  display: none;
}

.horizontal-scroll-container-2 > .e-con {
  flex: 0 0 90%;
  scroll-snap-align: start;
  scroll-snap-stop: always;
}

/* Last slide fills the viewport */
.horizontal-scroll-container-2 > .e-con:last-child {
  flex-basis: 96%;
}

.carousel-icon-nav .elementor-icon-list-item a {
  font-weight: 400;
  text-decoration: none;
  border-bottom: 1px solid transparent;
  padding-bottom: 2px;
  transition:
    border-color 0.3s ease,
    font-weight 0.3s ease;
}

.carousel-icon-nav .elementor-icon-list-item.is-active a {
  font-weight: 900;
  border-bottom-color: #000000;
}

.carousel-icon-nav .elementor-icon-list-item:hover a {
  border-bottom-color: #000000;
}

#Strategy,
#Partnership,
#Providers,
#Growth {
  scroll-margin-top: 100px;
}

.scroll-margin {
    scroll-margin-inline-start: 6vw;
}

.horizontal-scroll-prev.is-disabled,
.horizontal-scroll-next.is-disabled {
    opacity: 0.5;
    pointer-events: none;
}

/* Smooth transition */
.horizontal-scroll-prev,
.horizontal-scroll-next {
    border-radius: 100px;
    transition:
        background-color 0.3s ease,
        color 0.3s ease,
        border-color 0.3s ease,
        opacity 0.3s ease;
}

/* Hover only when enabled */
.horizontal-scroll-prev:not(.is-disabled):hover,
.horizontal-scroll-next:not(.is-disabled):hover {
    background-color: #688f4e;
    border-color: #688f4e;
    color: #fff;
    border-radius: 100px;
}

/* Hover only when enabled */
.horizontal-scroll-prev:not(.is-disabled):hover,
.horizontal-scroll-next:not(.is-disabled):hover {
    background-color: #688f4e;
    border-color: #688f4e;
    color: #fff;
    border-radius: 100px;
}

/* Force the chevrons white on hover */
.horizontal-scroll-prev:not(.is-disabled):hover .fas,
.horizontal-scroll-next:not(.is-disabled):hover .fas {
    color: #fff !important;
}

@media (max-width:767px){

.shrink-logo-mobile{
    display:flex;
    justify-content:flex-start;
}

.shrink-logo-mobile img{
    width:140px;
    transition:width .3s ease;
}

body.mobile-logo-shrunk .shrink-logo-mobile img{
    width:100px;
}

}

.link-underline {
  text-decoration: none!important;
}

.link-underline:hover {
  text-decoration: underline!important;
  color: #073020;
}

.excel-sticky-header {
  transition: box-shadow 0.3s ease;
}

.excel-sticky-header.is-scrolled {
  box-shadow: 0 4px 12px rgba(7, 48, 32, 0.08);
}

/* ==============================
   BLOG POST TYPOGRAPHY + SPACING
   Tight Editorial Rhythm
   ============================== */

.elementor-widget-theme-post-content {
    line-height: 1.65;
    
    /* Consistent spacing at the top of every post */
    padding-top: 1.8em;
}

/* Paragraphs */
.elementor-widget-theme-post-content p {
    margin-top: 0;
    margin-bottom: 0.45em;
}

/* Headings */
.elementor-widget-theme-post-content h2,
.elementor-widget-theme-post-content h3,
.elementor-widget-theme-post-content h4,
.elementor-widget-theme-post-content h5,
.elementor-widget-theme-post-content h6 {
    line-height: 1.2;
    margin-bottom: 0.45em;
}

/* Major section breaks */
.elementor-widget-theme-post-content h2 {
    margin-top: 1.8em;
}

/* Subsections */
.elementor-widget-theme-post-content h3 {
    margin-top: 1.35em;
}

.elementor-widget-theme-post-content h4 {
    margin-top: 1.15em;
}

.elementor-widget-theme-post-content h5,
.elementor-widget-theme-post-content h6 {
    margin-top: 1em;
}

/* Keep headings visually connected to the content below */
.elementor-widget-theme-post-content h2 + p,
.elementor-widget-theme-post-content h3 + p,
.elementor-widget-theme-post-content h4 + p,
.elementor-widget-theme-post-content h5 + p,
.elementor-widget-theme-post-content h6 + p {
    margin-top: 0;
}

/* Lists */
.elementor-widget-theme-post-content ul,
.elementor-widget-theme-post-content ol {
    margin-top: 0.1em;
    margin-bottom: 0.5em;
    padding-left: 1.4em;
}

/* Tight spacing between list items */
.elementor-widget-theme-post-content li {
    margin-bottom: 0.1em;
}

.elementor-widget-theme-post-content li:last-child {
    margin-bottom: 0;
}

/* Prevent paragraph margins from affecting list spacing */
.elementor-widget-theme-post-content li p {
    margin-top: 0;
    margin-bottom: 0.1em;
}

/* Blockquotes */
.elementor-widget-theme-post-content blockquote {
    margin: 1.5em 0;
    padding-left: 1.25em;
}

/* Images and figures */
.elementor-widget-theme-post-content img,
.elementor-widget-theme-post-content figure {
    margin-top: 0.75em;
    margin-bottom: 1.5em;
}

.elementor-widget-theme-post-content figure img {
    margin-bottom: 0.5em;
}

/* Captions */
.elementor-widget-theme-post-content figcaption,
.elementor-widget-theme-post-content .wp-caption-text {
    margin-top: 0.4em;
    line-height: 1.45;
}

/* Horizontal rules */
.elementor-widget-theme-post-content hr {
    margin: 2.25em 0;
}

/* Tables */
.elementor-widget-theme-post-content table {
    margin-top: 1em;
    margin-bottom: 1.5em;
}

/* ==============================
   FIRST + LAST ELEMENT CLEANUP
   ============================== */

/*
   The container controls the top spacing.
   The first element does not add its own spacing,
   regardless of whether it's a paragraph, heading,
   list, image, etc.
*/
.elementor-widget-theme-post-content > *:first-child {
    margin-top: 0 !important;
}

.elementor-widget-theme-post-content > *:last-child {
    margin-bottom: 0;
}

.elementor-widget-theme-post-content a {
    text-decoration: underline;
}

/* Tablet */
@media (min-width: 768px) and (max-width: 1024px) {
  .logo-gallery-grid .gallery {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 20px !important;
  }

  .logo-gallery-grid .gallery-item {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .logo-gallery-grid .gallery-item img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .logo-gallery-grid .gallery {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
  }

  .logo-gallery-grid .gallery-item {
    width: 100% !important;
    max-width: none !important;
    padding: 10 !important;
    margin: 0 !important;
  }

  .logo-gallery-grid .gallery-item img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
  }
}

/* ========================================
   LLM INFO PAGE
   Content spacing + readability
   ======================================== */

/* Base text */
.llm-info {
    line-height: 1.7;
}

/* Paragraph rhythm */
.llm-info p {
    margin-top: 0;
    margin-bottom: 1em;
}

/* ----------------------------------------
   MAIN SECTION HEADINGS — H2
   ---------------------------------------- */

.llm-info h2 {
    margin-top: 3.5rem;
    margin-bottom: 1.25rem;
}

/* Don't add giant space above the first H2 */
.llm-info h2:first-child {
    margin-top: 0;
}

/* ----------------------------------------
   SUBSECTION HEADINGS — H3
   ---------------------------------------- */

.llm-info h3 {
    margin-top: 2rem;
    margin-bottom: 0.65rem;
}

/* ----------------------------------------
   CONTENT DIRECTLY AFTER HEADINGS
   Keep it visually connected
   ---------------------------------------- */

.llm-info h2 + p,
.llm-info h3 + p {
    margin-top: 0;
}

/* ----------------------------------------
   LISTS
   ---------------------------------------- */

.llm-info ul,
.llm-info ol {
    margin-top: 0.75rem;
    margin-bottom: 1.5rem;
    padding-left: 1.5rem;
}

.llm-info li {
    margin-bottom: 0.4rem;
}

/* ----------------------------------------
   LINKS
   ---------------------------------------- */

/* Give standalone "Learn more" links
   some breathing room before next section */
.llm-info p:has(a):has(+ h2) {
    margin-bottom: 0;
}

/* ----------------------------------------
   STRONG / FACT LABELS
   ---------------------------------------- */

.llm-info strong {
    font-weight: 600;
}

/* ----------------------------------------
   MOBILE
   ---------------------------------------- */

@media (max-width: 767px) {

    .llm-info {
        line-height: 1.65;
    }

    .llm-info h2 {
        margin-top: 2.75rem;
        margin-bottom: 1rem;
    }

    .llm-info h3 {
        margin-top: 1.75rem;
        margin-bottom: 0.6rem;
    }
}/* End custom CSS */