.elementor-935 .elementor-element.elementor-element-65b76e3{--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:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-935 .elementor-element.elementor-element-825caf2{--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;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-935 .elementor-element.elementor-element-b3df62a .elementor-heading-title{font-family:"Yaldevi", Sans-serif;font-size:24px;font-weight:600;text-transform:uppercase;color:#E3423A;}.elementor-935 .elementor-element.elementor-element-cd5857f .elementor-heading-title{font-family:"Yaldevi", Sans-serif;font-size:52px;font-weight:600;text-transform:uppercase;line-height:62px;color:#000000;}.elementor-935 .elementor-element.elementor-element-8a45221{--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;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-935 .elementor-element.elementor-element-69b3ad3{--display:flex;}.elementor-935 .elementor-element.elementor-element-d49dc27{--display:flex;}.elementor-935 .elementor-element.elementor-element-355eb34{--spacer-size:50px;}@media(min-width:768px){.elementor-935 .elementor-element.elementor-element-825caf2{--width:50%;}.elementor-935 .elementor-element.elementor-element-8a45221{--width:50%;}}@media(max-width:767px){.elementor-935 .elementor-element.elementor-element-65b76e3{--flex-direction:column-reverse;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-935 .elementor-element.elementor-element-b3df62a .elementor-heading-title{font-size:16px;}.elementor-935 .elementor-element.elementor-element-cd5857f .elementor-heading-title{font-size:29px;line-height:1.5em;}.elementor-935 .elementor-element.elementor-element-909b012 > .elementor-widget-container{margin:0px 0px 0px 0px;}}/* Start custom CSS for shortcode, class: .elementor-element-909b012 */.esti-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: left;
}

.esti-card {
    width: 260px;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0,0,0,0.15);
}

.esti-image {
    position: relative;
}

.esti-image img {
    width: 100%;
    height: 200px;
    object-fit: cover;
}

.esti-placeholder {
    width: 100%;
    height: 180px;
    background: #ddd;
}

.esti-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 10px;
    color: #fff;
    background: linear-gradient(to top, rgba(0,0,0,0.7), transparent);
}
/* --- Kafle responsywne --- */
.esti-grid{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap:20px;
  justify-items: stretch;   /* ładne rozciągnięcie kart */
}

/* karty nie mają już sztywnej szerokości */
.esti-card{
  width:auto;
  border-radius:15px;
  overflow:hidden;
  box-shadow:0 2px 8px rgba(0,0,0,.15);
}

/* obraz z proporcjami i lepszym wypełnieniem */
.esti-image img{
  width:100%;
  height:auto;
  aspect-ratio: 16/9;     /* stałe proporcje zamiast stałej wysokości */
  object-fit:cover;
}

/* overlay */
.esti-overlay{
  position:absolute;
  inset:auto 0 0 0;
  padding:12px 14px;
  color:#fff;
  background:linear-gradient(to top, rgba(0,0,0,.7), rgba(0,0,0,0));
}

/* --- Mobile first: pełna szerokość na telefonie + większe foty i tekst --- */
@media (max-width: 767px){
  .esti-grid{
    grid-template-columns: 1fr;      /* jedna kolumna = 100% szerokości */
    gap:18px;
  }
  .esti-image img{
    aspect-ratio: 4/3;               /* wyższe zdjęcie na telefonie */
  }
  .esti-overlay h3{
    font-size: clamp(18px, 6vw, 28px);
    line-height: 1.1;
    margin: 0 0 6px;
  }
  .esti-overlay p{
    font-size: clamp(14px, 4vw, 18px);
    margin:0;
  }
}

/* --- Duże ekrany (ładniejsze karty 2–3 w rzędzie) --- */
@media (min-width: 1100px){
  .esti-grid{
    grid-template-columns: repeat(3, 1fr);
  }
}/* End custom CSS */