body.services-page .services-hero-compact{
  min-height:0;
  position:relative;
  overflow:hidden;
  color:#fff;
  background:linear-gradient(135deg,var(--burgundy),var(--burgundy-dark));
}
body.services-page .services-hero-compact::after{
  content:"";
  position:absolute;
  right:-90px;
  bottom:-170px;
  width:380px;
  height:380px;
  border-radius:50%;
  background:rgba(232,117,33,.13);
}
body.services-page .services-hero-inner{
  position:relative;
  z-index:1;
  display:block;
  padding:46px 0 42px;
}
body.services-page .services-hero-copy{max-width:900px;}
body.services-page .services-hero h1{
  margin:0 0 12px;
  color:#fff;
  font-size:clamp(38px,5vw,58px);
  line-height:1;
  letter-spacing:-1px;
}
body.services-page .services-hero .eyebrow{color:#f4b07c;}
body.services-page .services-hero .lead{
  max-width:860px;
  margin:0;
  color:rgba(255,255,255,.86);
  font-size:17px;
}
body.services-page .archive-services-catalog{
  padding-top:38px;
  padding-bottom:70px;
}
body.services-page .compact-services-catalog .section-head{margin-bottom:26px;}

/* Katalog: na desktopie 4 x 2, tekst od góry, zdjęcie wypełnia resztę kafelka. */
body.services-page .archive-service-grid-compact{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  align-items:stretch;
}
body.services-page .archive-service-card-compact{
  position:relative;
  display:flex;
  min-width:0;
  min-height:430px;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
  box-shadow:var(--shadow-soft);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
body.services-page .archive-service-card-compact::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  z-index:3;
  width:100%;
  height:4px;
  background:linear-gradient(90deg,var(--burgundy),var(--orange));
}
body.services-page .archive-service-card-compact:hover{
  transform:translateY(-4px);
  border-color:#dec9d5;
  box-shadow:var(--shadow);
}
body.services-page .archive-service-card-compact .archive-service-body{
  display:flex;
  flex-direction:column;
  width:100%;
  min-height:100%;
  padding:0;
}
body.services-page .archive-service-card-compact h3{
  margin:0;
  padding:25px 22px 13px;
  color:var(--burgundy);
  font-size:20px;
  line-height:1.22;
}
body.services-page .archive-service-card-compact h3 a{color:inherit;}

/* Podusługi ustawione pionowo, bez „chipów”. */
body.services-page .archive-service-links{
  display:block;
  list-style:none;
  margin:0;
  padding:0 22px 16px;
  border:0;
}
body.services-page .archive-service-links li{
  position:relative;
  margin:0;
  padding:0 0 8px 15px;
  border:0;
}
body.services-page .archive-service-links li::before{
  content:"•";
  position:absolute;
  left:0;
  top:.05em;
  color:var(--burgundy);
  font-weight:900;
}
body.services-page .archive-service-links a{
  display:block;
  padding:0;
  border:0;
  border-radius:0;
  background:none;
  color:var(--graphite);
  font-size:14.5px;
  font-weight:400;
  line-height:1.34;
}
body.services-page .archive-service-links a::before,
body.services-page .archive-service-links a::after{content:none;}
body.services-page .archive-service-links a:hover,
body.services-page .archive-service-links a:focus-visible{
  padding:0;
  border:0;
  background:none;
  box-shadow:none;
  color:var(--burgundy);
  text-decoration:underline;
  text-underline-offset:2px;
  outline:none;
}
body.services-page .archive-service-summary{
  margin:0;
  padding:0 22px 18px;
  color:var(--graphite);
  font-size:14.5px;
  font-weight:400;
  line-height:1.5;
}

/* Zdjęcie jest tłem dolnej, elastycznej części kafelka. Zaczyna się dokładnie po tekście. */
body.services-page .archive-service-visual{
  position:relative;
  flex:1 1 auto;
  width:100%;
  min-height:145px;
  margin:0;
  overflow:hidden;
  border-top:1px solid rgba(99,37,62,.08);
  background-color:#f2f0ef;
  background-repeat:no-repeat;
  background-position:center;
  background-size:cover;
}
body.services-page .archive-service-visual::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to bottom,rgba(255,255,255,.80) 0%,rgba(255,255,255,.25) 24%,rgba(255,255,255,0) 52%);
  pointer-events:none;
}
body.services-page #materialy .archive-service-visual{background-position:center 42%;}
body.services-page #historyczne .archive-service-visual{background-position:center 55%;}
body.services-page #porzadkowanie .archive-service-visual{background-position:center 44%;}

body.services-page .services-secondary{
  margin-top:34px;
  padding-top:26px;
  border-top:1px solid var(--line);
}
body.services-page .services-secondary-head{
  display:flex;
  justify-content:center;
  margin-bottom:20px;
}
body.services-page .services-secondary-head h2{
  margin:0;
  color:var(--burgundy);
  font-size:25px;
  line-height:1.2;
}
body.services-page .services-secondary-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
body.services-page .services-secondary-card{
  display:flex;
  flex-direction:column;
  min-height:285px;
  padding:20px;
  border:1px solid var(--line);
  border-radius:16px;
  background:var(--soft);
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
body.services-page .services-secondary-card:hover{
  transform:translateY(-4px);
  border-color:#dec9d5;
  box-shadow:var(--shadow-soft);
}
body.services-page .services-secondary-card h3{
  margin:0 0 8px;
  color:var(--burgundy);
  font-size:17px;
  line-height:1.25;
}
body.services-page .services-secondary-card p{
  margin:0 0 14px;
  color:var(--muted);
  font-size:13px;
  line-height:1.5;
}
body.services-page .services-secondary-card span{
  color:var(--orange-dark);
  font-size:13px;
  font-weight:400;
}
body.services-page .services-secondary-visual{
  flex:1 1 auto;
  width:calc(100% + 40px);
  min-height:125px;
  margin:16px -20px -20px;
  border-top:1px solid rgba(99,37,62,.08);
  border-radius:0 0 15px 15px;
  background-color:#f2f0ef;
  background-repeat:no-repeat;
  background-position:center;
  background-size:cover;
}
body.services-page #asoa .services-secondary-visual{background-position:center 58%;}
body.services-page #mobilne .services-secondary-visual{background-position:center 54%;}
body.services-page #szkolenia .services-secondary-visual{background-position:center 46%;}
body.services-page .services-contact-strip{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin-top:28px;
  padding:18px 20px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
  box-shadow:var(--shadow-soft);
}
body.services-page .services-contact-strip div{display:grid;gap:2px;}
body.services-page .services-contact-strip strong{color:var(--burgundy);font-size:18px;}
body.services-page .services-contact-strip span{color:var(--muted);font-size:14px;}

@media(max-width:1180px){
  body.services-page .archive-service-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr));}
  body.services-page .archive-service-card-compact{min-height:420px;}
}
@media(max-width:760px){
  body.services-page .services-secondary-grid{grid-template-columns:1fr;}
  body.services-page .services-contact-strip{align-items:flex-start;flex-direction:column;}
}
@media(max-width:620px){
  body.services-page .services-hero-inner{padding:38px 0 34px;}
  body.services-page .archive-service-grid-compact{grid-template-columns:1fr;}
  body.services-page .archive-service-card-compact{min-height:470px;}
  body.services-page .archive-service-card-compact h3{padding:23px 20px 12px;font-size:21px;}
  body.services-page .archive-service-links{padding:0 20px 16px;}
  body.services-page .archive-service-links a{font-size:15px;}
  body.services-page .archive-service-summary{padding:0 20px 18px;font-size:15px;}
  body.services-page .archive-service-visual{min-height:175px;}
}

body.services-page .archive-service-card-custom{
  grid-column:3 / -1;
  min-width:0;
  min-height:0;
  overflow:hidden;
  border:1px solid #96999d;
  border-radius:18px;
  background:#b9bbbe;
  box-shadow:var(--shadow-soft);
}
body.services-page .archive-service-card-custom::before{display:none;}
body.services-page .archive-service-custom-body{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:34px;
  width:100%;
  padding:30px 34px;
}
body.services-page .archive-service-card-custom .eyebrow{
  margin:0 0 6px;
  color:var(--burgundy);
}
body.services-page .archive-service-card-custom h3{
  margin:0 0 12px;
  padding:0;
  color:var(--burgundy);
  font-size:26px;
  line-height:1.15;
}
body.services-page .archive-service-card-custom p:not(.eyebrow){
  max-width:none;
  margin:0 0 10px;
  color:#25272a;
  font-size:15px;
  font-weight:400;
  line-height:1.58;
}
body.services-page .archive-service-card-custom p:not(.eyebrow):last-child{margin-bottom:0;}
body.services-page .archive-service-custom-cta{
  min-width:190px;
  text-align:center;
  white-space:nowrap;
}
@media(max-width:1180px){
  body.services-page .archive-service-card-custom{grid-column:1 / -1;}
}
@media(max-width:760px){
  body.services-page .archive-service-custom-body{grid-template-columns:1fr;gap:20px;padding:24px;}
  body.services-page .archive-service-custom-cta{justify-self:start;min-width:0;}
}
@media(max-width:620px){
  body.services-page .archive-service-card-custom{grid-column:1;}
  body.services-page .archive-service-card-custom h3{font-size:23px;}
}
