.elementor-12612 .elementor-element.elementor-element-2d14f8c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}/* Start custom CSS for html, class: .elementor-element-98a0d0e */.flexiborder-competition-winner {
      max-width: 1120px;
      margin: 0 auto;
      padding: 24px 16px;
      font-family: inherit;
      line-height: 1.65;
      color: #222;
    }
    .flexiborder-competition-winner h1,
    .flexiborder-competition-winner h2,
    .flexiborder-competition-winner h3 {
      line-height: 1.2;
      margin: 0 0 16px;
    }
    .flexiborder-competition-winner h1 {
      font-size: clamp(2rem, 4vw, 3.2rem);
      margin-bottom: 20px;
    }
    .flexiborder-competition-winner h2 {
      font-size: clamp(1.5rem, 3vw, 2.2rem);
      margin-top: 40px;
    }
    .flexiborder-competition-winner p {
      margin: 0 0 18px;
    }
    .flexi-hero {
      background: #f5f1ea;
      border-radius: 20px;
      padding: clamp(24px, 5vw, 48px);
      margin-bottom: 32px;
    }
    .flexi-hero .winner-label {
      display: inline-block;
      margin-bottom: 14px;
      padding: 7px 14px;
      border-radius: 999px;
      background: #3f5f37;
      color: #fff;
      font-weight: 700;
      font-size: 0.9rem;
      letter-spacing: 0.02em;
    }
    .flexi-button {
      display: inline-block;
      margin-top: 8px;
      padding: 12px 18px;
      border-radius: 999px;
      background: #3f5f37;
      color: #fff !important;
      text-decoration: none;
      font-weight: 700;
    }
    .flexi-quote {
      margin: 24px 0;
      padding: 20px 22px;
      border-left: 5px solid #3f5f37;
      background: #fafafa;
      font-size: 1.05rem;
      font-style: italic;
    }
    .flexi-section {
      margin-top: 36px;
    }
    .flexi-slider {
      display: grid;
      grid-auto-flow: column;
      grid-auto-columns: minmax(260px, 32%);
      gap: 16px;
      overflow-x: auto;
      padding: 10px 4px 20px;
      scroll-snap-type: x mandatory;
      -webkit-overflow-scrolling: touch;
    }
    .flexi-slide {
      scroll-snap-align: start;
      margin: 0;
      border-radius: 16px;
      overflow: hidden;
      background: #fff;
      box-shadow: 0 8px 24px rgba(0,0,0,0.10);
    }
    .flexi-slide img {
      width: 100%;
      height: 280px;
      object-fit: cover;
      display: block;
      background: #eee;
    }
    .flexi-slide figcaption {
      padding: 12px 14px;
      font-size: 0.95rem;
      color: #333;
      background: #fff;
    }
    .runner-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 18px;
      margin: 22px 0 8px;
    }
    .runner-card {
      background: #fafafa;
      border-radius: 16px;
      padding: 18px;
      border: 1px solid #e8e8e8;
    }
    .runner-card h3 {
      margin-bottom: 8px;
      font-size: 1.15rem;
    }
    @media (max-width: 800px) {
      .flexi-slider {
        grid-auto-columns: minmax(240px, 82%);
      }
      .runner-grid {
        grid-template-columns: 1fr;
      }
    }/* End custom CSS */