/* OPLIXO – USŁUGI (styl zgodny z "Wyróżnia") */

.oplixo-uslugi{
  /* spójne zmienne (możesz nadpisywać inline lub w :root) */
  --bg: #f6f8ff;
  --card: #ffffff;
  --text: #0f172a;
  --muted: #475569;
  --dash: #dbeafe;
  --accent: #0b51c5;
  --shadow: 0 18px 40px rgba(15, 23, 42, .07);
  --radius: 18px;
  --maxw: 1320px;

  /* siatka */
  --cols: 3;
  --cols-t: 2;

  /* ikony */
  --ic: var(--accent);

  width: 100%;
  font-family: 'Montserrat', sans-serif;
}

/* wrapper jak w "Wyróżnia" */
.oplixo-uslugi__wrap{
  background: var(--bg);
  padding: 70px 14px;
  position: relative;
  overflow: hidden;
}

.oplixo-uslugi__wrap:before{
  content: '';
  position: absolute;
  inset: -60px -120px auto -120px;
  height: 220px;
  background: linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.55));
  transform: skewY(-4deg);
}

.oplixo-uslugi__wrap:after{
  content: '';
  position: absolute;
  right: -180px;
  top: 80px;
  width: 520px;
  height: 520px;
  border-radius: 60px;
  background: linear-gradient(180deg, rgba(11,81,197,.06), rgba(11,81,197,0));
  transform: skewX(-12deg);
}

.oplixo-uslugi__in{
  max-width: var(--maxw);
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

/* wspólny nagłówek sekcji – standard */
.oplixo-sec__head{
  text-align: center;
  margin-bottom: 34px;
}

.oplixo-sec__h{
  margin: 0;
  color: var(--text);
  font-size: 42px;
  line-height: 1.02;
  font-weight: 600;
  letter-spacing: -2px;
}

.oplixo-sec__divider{
  width: 120px;
  height: 4px;
  background: rgba(11,81,197,.18);
  margin: 14px auto 0;
  border-radius: 999px;
  position: relative;
}

.oplixo-sec__divider:after{
  content: '';
  position: absolute;
  left: 50%;
  top: -2px;
  transform: translateX(-50%);
  width: 42px;
  height: 4px;
  background: var(--accent);
  border-radius: 999px;
}

.oplixo-sec__sub{
  margin: 10px 0 0;
  color: var(--muted);
  font-size: 16px;
  line-height: 1.6;
}

/* siatka */
.oplixo-uslugi-grid{
  display: grid;
  grid-template-columns: repeat(var(--cols), minmax(0, 1fr));
  gap: 22px;
  align-items: stretch;
}

/* karta jak w "Wyróżnia" */
.oplixo-usluga-item{
  position: relative;
  background: var(--card);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  border: 1px solid rgba(11,81,197,.08);
  padding: 28px 22px;
  min-height: 260px;
  text-align: center;
  transition: transform .18s ease, box-shadow .18s ease;
}

.oplixo-usluga-item:hover{
  transform: translateY(-2px);
  box-shadow: 0 22px 50px rgba(15,23,42,.10);
}

.oplixo-usluga-item:active{
  transform: translateY(0);
  box-shadow: var(--shadow);
}

.oplixo-usluga-item:before{
  content: '';
  position: absolute;
  inset: 12px;
  border: 1px dashed rgba(219,234,254,.95);
  border-radius: calc(var(--radius) - 6px);
  pointer-events: none;
}

/* ikona */
.oplixo-usluga-icon{
  height: 84px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 4px auto 10px;
}

.oplixo-usluga-svg svg{
  width: 74px;
  height: 74px;
}

.oplixo-usluga-i{
  display: inline-flex;
  width: 74px;
  height: 74px;
  align-items: center;
  justify-content: center;
  color: var(--ic);
}

/* obraz z galerii */
.oplixo-usluga-img{
  display: inline-flex;
  width: 74px;
  height: 74px;
  align-items: center;
  justify-content: center;
}

.oplixo-usluga-img img{
  max-width: 74px;
  max-height: 74px;
  width: auto;
  height: auto;
  object-fit: contain;
}

/* jeśli używasz dashicons */
.oplixo-usluga-i.dashicons{
  font-size: 74px;
  width: 74px;
  height: 74px;
  color: var(--ic);
}

/* tytuł jak w "Wyróżnia" (bez wymuszonego uppercase) */
.oplixo-usluga-title{
  margin: 0;
  color: var(--text);
  font-size: 20px;
  font-weight: 600;
  line-height: 1.2;
}

/* mini divider jak w kartach */
.oplixo-usluga-mini{
  width: 26px;
  height: 4px;
  background: rgba(11,81,197,.14);
  border-radius: 999px;
  margin: 10px auto 14px;
}

.oplixo-usluga-desc{
  margin: 0 auto;
  max-width: 44ch;
  font-size: 14px;
  line-height: 1.75;
  color: #141414;
  padding: 0 10px;
}

.oplixo-usluga-list{
  list-style: none;
  margin: 10px 0 0;
  padding: 0;
  display: grid;
  gap: 6px;
  color: #141414;
  font-size: 13px;
}

.oplixo-usluga-list li::before{
  content: "• ";
  color: var(--accent);
  font-weight: 900;
}

/* CTA – styl jak przycisk w topbarze „+ Umów konsultację” */
.oplixo-usluga-cta{
  --oplixo-btn-bg: #2596be;
  --oplixo-btn-color: #fff;
  --oplixo-btn-padding: 10px 16px;
  --oplixo-btn-font-size: 14px;
  --oplixo-btn-font-weight: 700;
  --oplixo-btn-radius: 0px;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;

  margin-top: 14px;
  text-decoration: none;
  white-space: nowrap;

  background: var(--oplixo-btn-bg);
  color: var(--oplixo-btn-color);
  border: 0;
  padding: var(--oplixo-btn-padding);
  font-size: var(--oplixo-btn-font-size);
  font-weight: var(--oplixo-btn-font-weight);
  border-radius: var(--oplixo-btn-radius);

  box-shadow: 0 10px 18px rgba(11,81,197,.18);
  transition: transform .12s ease, filter .12s ease, box-shadow .12s ease;

  text-transform: none;
  font-family: 'Montserrat', sans-serif;
}

.oplixo-usluga-cta:hover{
  filter: brightness(.95);
  transform: translateY(-1px);
}

.oplixo-usluga-cta:active{
  transform: translateY(0);
}

/* Tablet */
@media (max-width: 991px){
  .oplixo-sec__h{ font-size: 36px; }
  .oplixo-uslugi-grid{ grid-template-columns: repeat(var(--cols-t), minmax(0, 1fr)); }
}

/* Mobile */
@media (max-width: 575px){
  .oplixo-uslugi__wrap{ padding: 56px 12px; }
  .oplixo-sec__h{ font-size: 28px; }
  .oplixo-sec__sub{ font-size: 16px; }

  .oplixo-uslugi-grid{ grid-template-columns: 1fr; gap: 14px; }

  .oplixo-usluga-icon{ height: 76px; }

  .oplixo-usluga-svg svg,
  .oplixo-usluga-i,
  .oplixo-usluga-img{
    width: 66px;
    height: 66px;
  }

  .oplixo-usluga-img img{
    max-width: 66px;
    max-height: 66px;
  }

  .oplixo-usluga-item{
    padding: 22px 16px;
    min-height: auto;
  }
}

/* LINKS VIEW – kafle (same nazwy + linki, bez opisów) */
.oplixo-uslugi-links-wrap{
  max-width: var(--maxw);
  margin: 0 auto;
}

.oplixo-uslugi-links{
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.oplixo-uslugi-links__item{
  position: relative;
  background: var(--card);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  border: 1px solid rgba(11,81,197,.08);
  padding: 26px 22px;
  text-align: center;
  transition: transform .18s ease, box-shadow .18s ease;
}

.oplixo-uslugi-links__item:hover{
  transform: translateY(-2px);
  box-shadow: 0 22px 50px rgba(15,23,42,.10);
}

.oplixo-uslugi-links__item:before{
  content: '';
  position: absolute;
  inset: 12px;
  border: 1px dashed rgba(219,234,254,.95);
  border-radius: calc(var(--radius) - 6px);
  pointer-events: none;
}

.oplixo-uslugi-links__a,
.oplixo-uslugi-links__s{
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;

  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 20px;
  line-height: 1.25;
  letter-spacing: -0.3px;

  color: var(--text);
  text-decoration: none;
}

/* marker */
.oplixo-uslugi-links__a:before,
.oplixo-uslugi-links__s:before{
  content: '';
  width: 10px;
  height: 10px;
  background: var(--accent);
  border-radius: 0;
  display: inline-block;
}

.oplixo-uslugi-links__s:before{
  background: rgba(37,150,190,.30);
}

.oplixo-uslugi-links__a{
  color: #141414;
}

.oplixo-uslugi-links__a:hover{
  color: #000;
}

/* Tablet */
@media (max-width: 991px){
  .oplixo-uslugi-links{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Mobile */
@media (max-width: 575px){
  .oplixo-uslugi-links{
    grid-template-columns: 1fr;
    gap: 14px;
  }
}