.d-flex {
   display: flex;
}

@media (max-width: 992px) {
   .d-flex {
   display: block;
   }
}

.align-center {
   align-items: center;
}

.ct-inner-content {
   overflow: hidden;
}

.wl-cta-button {
   background: #9a7c70;
   color: #FFF;
   padding: 10px 20px;
   border-radius: 3px;
   margin: 20px 0 0 0;
   display: inline-block;
}

.wl-cta-button:hover {
   background: #000;
}

/* ============================= */
/* Sekcja główna                 */
/* ============================= */

.weblegend-stats,
.wl-section-features {
  background: #F3F4F6;
  margin: 6rem 0;
  padding-bottom: 6rem;
  padding-top: 6rem;
  position: relative;
}

.wl-section-features.style-3::before,
.wl-section-features.style-3::after,
.wl-section-features.style-3 {
  background: #FFF;
  padding-bottom: 0rem;
  padding-top: 0rem;
}


.wl-steps {
  position: relative;
  background: #F3F4F6;
  margin: 6rem 0;
}

.weblegend-stats::before,
.weblegend-stats::after,
.wl-steps::before,
.wl-steps::after,
.wl-section-features::before,
.wl-section-features::after {
  background: #F3F4F6;
  content: "";
  height: 100%;
  left: -1000%;
  position: absolute;
  top: 0;
  width: 1000%;
}

.weblegend-stats::after,
.wl-steps::after,
.wl-section-features::after {
  left: unset;
  right: -1000%;
}

.wl-section-features.style-2,
.wl-section-features.style-2::before,
.wl-section-features.style-2::after {
  background: #FFF;
  margin: 0;
}


/* ============================= */
/* Kontener                      */
/* ============================= */
.wl-container {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}


/* ============================= */
/* Nagłówek i CTA                */
/* ============================= */
.wl-intro {
  align-items: center;
  column-gap: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin-bottom: 2.5rem;
  row-gap: 1.5rem;
}

.style-2 .wl-intro {
  display: block;
}

@media (min-width: 1024px) {
  .wl-intro {
    flex-direction: row;
    justify-content: space-between;
    margin-bottom: 1rem;
    row-gap: 0;
  }
}



/* ----- Tekst nagłówka ----- */
.wl-intro-text {
  position: relative;
  text-align: center;
  width: 100%;
}

@media (min-width: 1024px) {
  .wl-intro-text {
    text-align: left;
    width: 50%;
  }

  .style-2 .wl-intro-text {
    width: 100%;
  }
}

#headline-311-46,
.wl-heading {
  color: #111827;           /* gray-900 */
  display: block;
  font-weight: 700;
  max-width: max-content;
  position: relative;
  font-size: 35px;
  line-height: 40px;
  margin: 0 0 15px 0;
}

#text_block-106-46 {
  max-width: 100%;
}


/* ----- Podtytuł i przycisk ----- */
.wl-intro-cta {
  position: relative;
  text-align: center;
}

@media (min-width: 1024px) {
  .wl-intro-cta {
    text-align: left;
    width: 50%;
  }

  .style-2 .wl-intro-cta {
    width: 100%;
  }
}

.wl-subheading {
  color: #6B7280;           /* gray-500 */
  font-size: 1.125rem;      /* text-lg */
  font-weight: 400;
  margin-bottom: 1.25rem;
}

.wl-button {
  align-items: center;
  column-gap: 0.5rem;
  display: flex;
  font-size: 1rem;          /* text-base */
  font-weight: 600;
  justify-content: center;
  text-decoration: none;
  transition: color .2s;
}

.wl-button:hover {
  color: #4338CA;           /* indigo-700 */
}

@media (min-width: 1024px) {
  .wl-button {
    justify-content: flex-start;
  }
}


/* ============================= */
/* Kontener kart                 */
/* ============================= */
.wl-cards {
  align-items: center;
  column-gap: 1.25rem;
  display: flex;
  flex-wrap: wrap;
  row-gap: 2rem;
}

.style-2 .wl-cards {
  display: block;
  margin-left: 25px;
}

@media (max-width: 992px) {
   .style-2 .wl-cards {
      margin-left: 0px;
  }
  
  .style-2 .wl-card .d-flex {
      display: flex!important; 
  }
  
  
  .wl-section-features .img-wrap img {
     display: none;
  }
}

.wl-cards-style-3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-auto-rows: 1fr;   /* każdy wiersz rozciągnie się równomiernie */
  grid-gap: 8rem 3rem; /* odstęp między wierszami i kolumnami */
}

@media (max-width: 992px) {

   .wl-cards-style-3 .wl-card,
   .wl-cards-style-3 {
      display: block!important;
   }
   
   .wl-cards-style-3 .wl-card-icon-wrapper {
      width: 100%!important;
      aspect-ratio: 16 / 9;
   }
}


.wl-cards-style-3 .wl-card {
  background: #fff;
  padding: 0rem;
  border-radius: 4px;
  /* jeśli chcesz wyrównać wysokość wszystkich kart: */
  grid-template-columns: repeat(2);
   width: 100%;
   gap: 30px;
   min-height: 285px;
}

.wl-cards-style-3 .wl-card-icon-wrapper {
  margin-bottom: 0.5rem;
  text-align: center;
  height: 50%;
  width: 100%;
  background-position: center !important;
  background-size: cover !important;
  border-radius: 5px;
}

.wl-cards-style-3 .wl-card-icon-wrapper img {
   max-width: 100%;
}

.wl-cards-style-3 .wl-card-title {
  margin: 0.5rem 0;
  font-size: 18px;
  font-weight: 600;
}

.wl-cards-style-3 .text-link {
  color: #9a7c70;
  font-weight: 600;
    position: relative;
    font-size: 16px; 
    text-decoration: underline;

}

.wl-cards-style-3 .text-link:hover {
   color: #000;
}

.wl-cards-style-3 .text-link::after {
  content: '';
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  margin-left: 0.5em;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(-45deg);
  transition: transform 0.2s ease;
}


.wl-cards-style-3 .wl-card-text {
  flex: 1; /* rozciąga tekst na całą dostępną przestrzeń przed linkiem */
  margin-bottom: 1rem;
  min-height: 76px;
}

.wl-cards-style-3 .wl-card p:last-child {
  text-align: right;
  font-weight: 600;
}


@media (min-width: 768px) {
  .wl-cards {
    flex-wrap: wrap;
  }
}

@media (min-width: 1024px) {
  .wl-cards {
    column-gap: 2rem;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    row-gap: 0;
  }
}


/* ============================= */
/* Pojedyncza karta              */
/* ============================= */
.wl-card {
  background-color: #FFF;    /* gray-100 */
  border-radius: 1rem;       /* rounded-2xl */
  min-height: 266px;
  padding: 1rem;
  position: relative;
  transition: all .5s;
  width: 100%;
}

@media (max-width: 992px) { 
  .wl-card {
    min-height: 100%;
    padding: 2rem;
  } 
}


.style-2 .wl-card {
  min-height: auto;
}

@media (max-width: 768px) {
  .wl-card {
    margin-left: auto;
    margin-right: auto;
  }
}



@media (min-width: 1280px) {
  .wl-card {
    padding: 1.75rem;        /* xl:p-7 */
    width: 25%;
  }
  
  .style-2 .wl-card {
    width: 100%;
    border: 2px solid #F3F4F6;
    border-radius: 5px;
    margin-bottom: 15px;
  }
}


/* ----- Ikona w karcie ----- */
.wl-card-icon-wrapper {
  background-color: #ffffff;   /* rounded-full */
  display: flex;
  width: 40px;             /* w-14 */
  height: 40px;            /* h-14 */
}

.style-2 .wl-card-icon-wrapper {
  background: rgba(228,173,116,0.73);
  padding: 3px;
  border-radius: 3px;
}

.wl-card-title {
  color: #111827;            /* gray-900 */
  font-size: 21px;
  font-weight: 600;
  line-height: 26px;
  text-align: left;
  transition: all .5s;
  margin: 10px 0 0 0;
}

.wl-card-text {
  color: #404040;            /* gray-500 */
  font-size: 16px;           /* text-sm */
  font-weight: 400;
  text-align: left;
  transition: all .5s;
}

.style-2 .wl-card-text {
  margin: 10px 0 0 0;
}

.style-2 .wl-card-title {
  margin: 0 0 0 10px;
}

/* ============================= */
/* Blok treści (tekst + obraz)   */
/* ============================= */
.wl-block-content {
  display: flex;
}


@media (max-width: 992px) {
  .wl-block-content {
     display: block;
  }
  
  .wl-block-content .wl-image {
     margin: 30px 0 0 0;
  
  }
  

}

.wl-block-content .wl-image img,
.wl-section-features .img-wrap img {
  border-radius: 20px;
  
}

.wl-block-content .wl-image,
.wl-section-features .img-wrap {
   position: relative;
   z-index: 2;
   height: 100%;
}

.wl-block-content .wl-image:after,
.wl-section-features .img-wrap:after {
  content: "";
  height: 100%;
  width: 100%;
  position: absolute;
  top: -10px;
  right: -10px;
  background: #F3F4F6;
  z-index: -1;
  border-radius: 20px;
}

.wl-section-features .img-wrap:after {
  right: unset;
  left: -10px;
}


.wl-block-content .left-wrap {
  margin-right: 30px;
  text-align: left;
}

.wl-block-content .left-wrap .wl-title h2 {
  color: #000;
  font-size: 35px;
  line-height: 40px;
}

.wl-block-content .left-wrap .wl-title span {
  color: #000;
  display: block;
  line-height: 19px;
  margin-bottom: 10px;
  padding-left: 28px;
  position: relative;
  font-size: 16px;
}

.wl-block-content .left-wrap .wl-title span::before {
  background-color: brown;
  content: "";
  display: block;
  height: 3px;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 15px;
}


/* -------------------------------- */
/* Sekcja kroków                    */
/* -------------------------------- */
.wl-steps {
  padding: 6rem 0;
  position: relative;
}

/* Kontener z ograniczoną szerokością */
.wl-container {
  width: 100%;
  max-width: 1120px;
  margin: 0 auto;
}

/* Wprowadzenie: tytuł i podtytuł */
.wl-steps__intro {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  margin-bottom: 3rem;
  text-align: center;
}

.wl-steps__title {
  font-size: 2.25rem;
  font-weight: 700;
  line-height: 1.2;
  color: #1F2937;
}

.wl-steps__subtitle {
  max-width: 800px;
  font-size: 18px;
  font-weight: 400;
  line-height: 23px;
  color: #6B7280;
}

/* Lista kroków */
.wl-steps__list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

/* Jeden krok */
.wl-steps__item {
  position: relative;
  align-items: center;
  gap: 1rem;
  background: #FFF;
  border-radius: 5px;
  margin: 0 10px;
  padding: 20px 10px;
}

/* Numer markera */
.wl-steps__marker {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 60px;
  background-color: #9a7c70;
  color: #FFF;
  font-size: 22px;
  font-weight: 700;
  border-radius: 9999px;
  transition: background-color .3s ease;
  margin:auto;
}



/* Tytuł kroku */
.wl-steps__item-title {
  font-size: 17px;
  line-height: 23px;
  color: #404040;
  text-align: center;
  margin: 10px 0 0 0;
}

.weblegend-hero-block {
   display: flex;
  gap: 30px;
  margin: 30px 0;
}

@media (max-width: 992px) {
	.weblegend-hero-block {
		display: block;
	}
	
	.weblegend-hero-form {
	   margin-top: 30px; 
	}
}
/* -------------------------------- */
/* Responsywność                    */
/* -------------------------------- */
@media (min-width: 640px) {
  .wl-steps__list {
    flex-direction: row;
    gap: 0;
  }
  .wl-steps__item {
    flex: 1;
    padding-left: 2rem;
  }
  .wl-steps__item:not(:last-child)::after {
    width: calc(100% - 2rem);
    top: 1.75rem;
    left: 1rem;
  }
}

@media (min-width: 1024px) {
  .wl-steps__intro {
    margin-bottom: 2rem;
  }
  .wl-steps__title {
    font-size: 2.5rem;
  }
}

.ct-shortcode {
   width: 100%;
}

.weblegend-cta {
   background: rgba(228,173,116,0.73);
   border-radius: 5px;
   padding:  30px;
   display: flex;
   justify-content: space-around;
   align-items: center;
}

@media (max-width: 992px) {
   .weblegend-cta {
      display: block;
   }
}

.cta-button {
    background: #FFF;
    color: #000;
    border-radius: 3px;
    padding: 10px 20px;
    display: inline-block;
}

.cta-button:hover {
    background: #000;
    color: #FFF;
}

.weblegend-cta__title {
  color: #000;
  text-align: left;
}

.weblegend-cta__content {
  text-align: left;
  color: #000;
}

.weblegend-hero-form {
    min-width: 42%;
}

.weblegend-hero-form,
.contact-form {
   background: #FFF;
   padding: 5px 30px;
   border: 1px solid #9a7c70;
   border-radius: 10px;
}

.weblegend-hero-form label,
.contact-form label {
   text-align: left;
   display: block;
   color: #000;
   font-weight: 500;
   margin: 15px 0;
}

.weblegend-hero-form label span,
.contact-form label span {
    color: red; 
    margin-left: 2px;
    
}

.wpcf7 textarea {
   height: 100px!important;
}

.weblegend-hero-form label span.wpcf7-form-control-wrap ,
.contact-form label span.wpcf7-form-control-wrap {
  
   margin: 5px 0 0 0;
}

.wpcf7 input, .wpcf7 textarea {
   border-radius: 5px;
   text-transform: none!important;
   color: #000;
   padding: 15px 20px!important;
   font-size: 16px!important;
   font-weight: 500!important;
}

.wpcf7 input::placeholder {
  color: #999;        /* możesz też użyć #aaa lub #6c757d */
  opacity: 1;         /* żeby w FF była taka sama intensywność */
}

/* vendor-prefixy, jeśli potrzebujesz wsparcia starszych przeglądarek */
.wpcf7 input::-webkit-input-placeholder {
  color: #999;
}
.wpcf7 input::-moz-placeholder {
  color: #999;
}
.wpcf7 input::-ms-input-placeholder {
  color: #999;
}
.wpcf7 input:::-moz-placeholder{
  color: #999;
} 



#new_columns-12-39 {
   background: #F3F4F6;
   position: relative;
   padding: 30px 0px;
}

#new_columns-12-39::after,
#new_columns-12-39::before {
   background: #F3F4F6;
   position: absolute;
   height: 100%;
   top: 0px;
   width: 10000%;
   left: -10000%;
   content: "";
}

#new_columns-12-39::after {
   left: unset;
   right: -10000%;
}

.weblegend-hero-form .wpcf7 :focus,
.contact-form .wpcf7 :focus {
    background-color: #dedede;
    color: #000;
    text-transform: none;
}

.weblegend-hero-form .wpcf7-select,
.contact-form .wpcf7-select {
    
  appearance: none;           /* usuwa natywny strzałkę (dla WebKit/Blink) */
  -webkit-appearance: none;   /* usuwa natywny strzałkę w Safari/Chrome */
  -moz-appearance: none;      /* usuwa natywny strzałkę w Firefox */
  width: 100%;
  padding: 15px 20px!important;
   font-size: 16px!important;
  transition: border-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
  cursor: pointer;
  background-color: whitesmoke;
  border: none;
  border-radius: 5px;

}

.weblegend-hero-form [data-name="menu-143"],
.contact-form [data-name="menu-143"] {
  position: relative;
  display: inline-block;
  width: 100%;
}

.weblegend-hero-form .wpcf7-checkbox label ,
.contact-form .wpcf7-checkbox label {
   font-size: 12px;
   color: #000;
   line-height: 16px;
   cursor: pointer;
}

.weblegend-hero-form .wpcf7-checkbox label span,
.contact-form .wpcf7-checkbox label span {
  color: #000;
}

.weblegend-hero-form .wpcf7-checkbox label span::after,
.contact-form .wpcf7-checkbox label span::after {
  color: red;
  font-size: 18px;
  content: "*";
}

.wpcf7 span.wpcf7-not-valid-tip {
   background-color: #FFCCCC!important;
   color: #000!important
}

.weblegend-hero-form [data-name="menu-143"]::after,
.contact-form [data-name="menu-143"]::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 1em;
  width: 0.6em;
  height: 0.6em;
  pointer-events: none;
  transform: translateY(-50%) rotate(45deg);
  border-right: 2px solid #666;
  border-bottom: 2px solid #666;
}

.ct-new-columns::after {
   left: unset;
   right: -10000%;
}

.weblegend-hero-form .wpcf7-form-control-wrap,
.contact-form .wpcf7-form-control-wrap {
  display: block;
}

.wpcf7 input[type="submit"] {
  background: #9a7c70;
}

.page-id-39 .ct-inner-content {
   overflow: hidden;
}


/* style stats */


.weblegend-stats .stats-grid {
   display: flex;
   margin: 20px 0 0 0;
   justify-content: space-between;
}

.weblegend-stats .stat-item {
   background: #FFF;
   padding: 20px;
   border-radius: 1rem;
   display: flex;
   gap: 20px;
   max-width: 30%;
}

.weblegend-stats .stat-item-title {
   color: #000;
   font-weight: 600;
   font-size: 19px;
}


.weblegend-stats .stat-number {
   font-size: 30px;
   font-weight: 600;
   color: #9a7c70;
}


.postid-79 .ct-section-inner-wrap,
.postid-631 .ct-section-inner-wrap {
padding-top: clamp(5rem, calc(5rem + ((1vw - 0.32rem) * 4.1667)), 5rem);
}


.postid-79 #div_block-78-135,

.postid-631 #div_block-54-135 {
   display: none;
}

#section-51-135 {
   overflow: hidden;
}
.postid-79 #div_block-53-135,
.postid-631 #div_block-53-135 {
   width: 100%;
}

.weblegend-hero-text  a {
   color: #9a7c70;
}

