.elementor-41 .elementor-element.elementor-element-c97e3ff{--display:flex;}.elementor-41 .elementor-element.elementor-element-a978353{--display:flex;}.elementor-41 .elementor-element.elementor-element-8184387{--display:flex;}.elementor-41 .elementor-element.elementor-element-e63271d{--divider-border-style:solid;--divider-color:#000;--divider-border-width:1px;}.elementor-41 .elementor-element.elementor-element-e63271d .elementor-divider-separator{width:100%;}.elementor-41 .elementor-element.elementor-element-e63271d .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-41 .elementor-element.elementor-element-c78c608{--display:flex;}.elementor-41 .elementor-element.elementor-element-b9c2f04{--display:flex;}.elementor-41 .elementor-element.elementor-element-deb3bb9{--display:flex;}.elementor-41 .elementor-element.elementor-element-e4739f4{--grid-columns:2;}.elementor-41 .elementor-element.elementor-element-e4739f4 .elementor-loop-container{grid-auto-rows:1fr;}.elementor-41 .elementor-element.elementor-element-e4739f4 .e-loop-item > .elementor-section, .elementor-41 .elementor-element.elementor-element-e4739f4 .e-loop-item > .elementor-section > .elementor-container, .elementor-41 .elementor-element.elementor-element-e4739f4 .e-loop-item > .e-con, .elementor-41 .elementor-element.elementor-element-e4739f4 .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}.elementor-41 .elementor-element.elementor-element-f1368ff{--display:flex;}.elementor-41 .elementor-element.elementor-element-24fd597{--display:flex;}.elementor-41 .elementor-element.elementor-element-ddb422c{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-41 .elementor-element.elementor-element-8846f14{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;}.elementor-41 .elementor-element.elementor-element-5eb3fbd{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:stretch;}.elementor-41 .elementor-element.elementor-element-906f035{--display:flex;}.elementor-41 .elementor-element.elementor-element-390c87d{--display:flex;}.elementor-41 .elementor-element.elementor-element-58b99c5{--display:flex;}.elementor-41 .elementor-element.elementor-element-92da336{--display:flex;}.elementor-41 .elementor-element.elementor-element-2ed89b5{--display:flex;}@media(max-width:1024px){.elementor-41 .elementor-element.elementor-element-e4739f4{--grid-columns:2;}}@media(max-width:767px){.elementor-41 .elementor-element.elementor-element-e4739f4{--grid-columns:1;}}/* Start custom CSS *//* =================================
   ELK IDEA PAGE
================================= */

.elk-idea-page {
  background: var(--elk-white);
  color: var(--elk-black);
}

/* =================================
   HERO
================================= */

.elk-idea-hero {
  width: min(var(--elk-wide-width), calc(100% - 40px));
  margin: 0 auto;
  padding: 72px 0 64px;

  display: grid;
  grid-template-columns: 320px 1fr;
  gap: 80px;
  align-items: start;

  border-bottom: 1px solid rgba(0,0,0,.35);
}

.elk-idea-hero-text h1,
.elk-idea-hero-text .elementor-heading-title {
  margin: 0;

  font-family: var(--elk-font-heading);
  font-size: clamp(72px, 8vw, 120px);
  font-weight: 800;
  line-height: .82;
  letter-spacing: -.09em;
}

.elk-idea-hero-text .elementor-divider {
  width: 48px;
  margin: 24px 0 26px;
}

.elk-idea-hero-text p {
  margin: 0;

  font-size: 15px;
  line-height: 1.35;
}

.elk-idea-hero-image img {
  display: block;
  width: 100%;
  height: 360px;

  object-fit: cover;
  object-position: center;

  filter: saturate(35%) contrast(1.05) brightness(.98);
}

/* =================================
   TEXT BLOCK
================================= */

.elk-idea-text-block {
  width: min(620px, calc(100% - 40px));
  margin: 0 auto;
  padding: 56px 0;
}

.elk-idea-text-block p {
  margin: 0 0 1.6em;

  font-size: 14px;
  line-height: 1.65;
}

/* =================================
   PARTNERS GRID
================================= */

.elk-idea-partners-grid {
  width: min(var(--elk-wide-width), calc(100% - 40px));
  margin: 0 auto;
  padding: 24px 0 56px;

  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: 0;

  border-top: 1px solid rgba(0,0,0,.25);
}

.elk-idea-partner-card {
  padding: 36px 48px 40px 0;
  border-bottom: 1px solid rgba(0,0,0,.18);
}

.elk-idea-partner-card:nth-child(even) {
  padding-left: 48px;
}

.elk-idea-partner-card h2,
.elk-idea-partner-card .elementor-heading-title {
  margin: 0 0 18px;

  font-family: var(--elk-font-heading);
  font-size: 24px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -.05em;
}

.elk-idea-partner-card p {
  margin: 0 0 1.4em;

  font-size: 13px;
  line-height: 1.55;
}

.elk-idea-partner-card a {
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* =================================
   IMAGE BLOCKS
================================= */

.elk-idea-image-wide {
  width: min(var(--elk-wide-width), calc(100% - 40px));
  margin: 32px auto 0px;
}

.elk-idea-image-wide img {
  display: block;
  width: 100%;
  height: 260px;

  object-fit: cover;
  object-position: center;

  filter: saturate(35%) contrast(1.05) brightness(.98);
}

.elk-idea-image-split {
  width: min(var(--elk-wide-width), calc(100% - 40px));
  margin: 12px auto 64px;

  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.elk-idea-image-split img {
  display: block;
  width: 100%;
  height: 320px;

  object-fit: cover;
  object-position: center;

  filter: saturate(0%) contrast(1.05) brightness(.98);
}

/* =================================
   QUOTE STRIP
================================= */

.elk-idea-quote {
  width: min(var(--elk-wide-width), calc(100% - 40px));
  margin: 48px auto;
  padding: 48px 56px;

  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;

  background: var(--elk-paper);
}

.elk-idea-quote h2,
.elk-idea-quote .elementor-heading-title {
  margin: 0;

  font-family: var(--elk-font-serif);
  font-size: clamp(30px, 3vw, 46px);
  font-weight: 400;
  line-height: 1.08;
  letter-spacing: -.04em;
}

.elk-idea-quote p {
  margin: 0;
  max-width: 360px;

  font-size: 14px;
  line-height: 1.5;
}

/* =================================
   TIMELINE
================================= */

.elk-idea-timeline {
  width: min(var(--elk-wide-width), calc(100% - 40px));
  margin: 72px auto 96px;

  display: grid;
  grid-template-columns: 260px 1fr;
  gap: 64px;
  align-items: start;
}

.elk-idea-timeline-list {
  border-left: 1px solid rgba(0,0,0,.3);
  padding-left: 28px;
}

.elk-idea-timeline-item {
  position: relative;
  margin-bottom: 32px;
}

.elk-idea-timeline-item::before {
  content: "";
  position: absolute;
  left: -34px;
  top: 4px;

  width: 9px;
  height: 9px;

  border-radius: 50%;
  background: var(--elk-black);
}

.elk-idea-timeline-year {
  font-size: 13px;
  font-weight: 800;
  margin-bottom: 8px;
}

.elk-idea-timeline-text {
  font-size: 13px;
  line-height: 1.45;
}

.elk-idea-timeline-image img {
  display: block;
  width: 100%;
  height: 420px;

  object-fit: cover;
  object-position: center;

  filter: saturate(35%) contrast(1.05) brightness(.98);
}

/* =================================
   BOTTOM LIST
================================= */

.elk-idea-bottom-list {
  width: min(var(--elk-wide-width), calc(100% - 40px));
  margin: 72px auto 96px;

  border-top: 1px solid rgba(0,0,0,.28);
}

.elk-idea-bottom-row {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 32px;

  padding: 24px 0;
  border-bottom: 1px solid rgba(0,0,0,.22);
}

.elk-idea-bottom-title,
.elk-idea-bottom-title .elementor-heading-title,
.elk-idea-bottom-row h2,
.elk-idea-bottom-row .elementor-heading-title {
  margin: 0;

  font-size: 22px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -.04em;
}

.elk-idea-bottom-link {
  justify-self: end;
}

.elk-idea-bottom-link,
.elk-idea-bottom-link .elementor-button-wrapper,
.elk-idea-bottom-link .elementor-button {
  width: auto !important;
  min-height: 0 !important;

  padding: 0 !important;

  background: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

.elk-idea-bottom-link .elementor-button {
  display: inline-flex !important;
  align-items: center;

  color: var(--elk-black) !important;

  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1 !important;

  letter-spacing: 0 !important;
  text-transform: none !important;
  text-decoration: none !important;

  white-space: nowrap;
}

.elk-idea-bottom-link .elementor-button-text::after {
  content: " →";
}

.elk-idea-bottom-link:hover .elementor-button {
  opacity: .6;
}

/* =================================
   MOBILE
================================= */

@media (max-width: 768px) {

  .elk-idea-hero,
  .elk-idea-partners-grid,
  .elk-idea-image-split,
  .elk-idea-quote,
  .elk-idea-timeline {
    width: calc(100% - 32px);
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .elk-idea-hero {
    padding: 48px 0;
  }

  .elk-idea-hero-image img,
  .elk-idea-image-wide img,
  .elk-idea-image-split img,
  .elk-idea-timeline-image img {
    height: 260px;
  }

  .elk-idea-partner-card,
  .elk-idea-partner-card:nth-child(even) {
    padding: 28px 0;
    border-left: 0;
  }

  .elk-idea-quote {
    padding: 32px 24px;
  }

  .elk-idea-bottom-list {
    width: calc(100% - 32px);
    margin: 56px auto 72px;
  }

  .elk-idea-bottom-row {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .elk-idea-bottom-link {
    justify-self: start;
  }
}/* End custom CSS */