/* Section 06 — see resources/design/homepage/sections/06-services/brief.md
   Extended beyond the static slice: cards are now CMS-driven (title/excerpt/
   CTA), not bare image links, so .service-card gained a body area the
   original slice didn't have. */
.services { 
	padding: 0 0 100px; position: relative; z-index: 1; 
	background: url('/wp-content/themes/h2-conveyancing/assets/img/bg_hotboxes.png') no-repeat 0 100px; 
	
}
.services-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    margin-top: 56px;
}
.services-grid--cols-1 { grid-template-columns: repeat(1, 1fr); }
.services-grid--cols-2 { grid-template-columns: repeat(2, 1fr); }
.services-grid--cols-3 { grid-template-columns: repeat(3, 1fr); }
.services-grid--cols-4 { grid-template-columns: repeat(4, 1fr); }

.service-card {
    display: flex;
    flex-direction: column;
    border-radius: 12px;
    overflow: hidden;
    background: var(--skin-white);
    box-shadow: 0 4px 9px rgba(35,31,32,0.08)!important;
    text-decoration: none;
}

.services-grid--cols-1,
.services-grid--cols-2 {
    gap: 30px;
}

.services-grid--cols-1 .service-card,
.services-grid--cols-2 .service-card {
    flex-direction: row;
}

.services-grid--cols-1 .service-card .service-card-body,
.services-grid--cols-2 .service-card .service-card-body {
    position: relative;
    padding: 45px 35px 45px;
}

.services-grid--cols-1 .service-card .service-card-body {
    position: relative;
    padding: 45px 50px 45px;
}

.services-grid--cols-1 .service-card .service-card-title,
.services-grid--cols-2 .service-card .service-card-title {
    color: var(--skin-red);
}

.services-grid--cols-1 .service-card p,
.services-grid--cols-2 .service-card p {
    color: var(--skin-black);
}

/* Col style */
.services-grid--cols-1 .service-card-img,
.services-grid--cols-2 .service-card-img {
    z-index: 4;
    width: 370px;
    flex-shrink: 0;
}

.services-grid--cols-1 .service-card img,
.services-grid--cols-2 .service-card img {
    height: 100%;    
    width: 100%;    
    object-fit: cover;
}

.service-card-img { display: block; line-height: 0; }
.service-card-img img { width: 100%; height: auto; display: block; }
.service-card-body { display: flex; flex-direction: column; gap: 12px; padding: 24px; flex: 1; }

.service-card p {
    color: white;
}
.service-card-title { margin: 0; }
.service-card-title a { color: var(--skin-red); text-decoration: none; }
.service-card-excerpt { font-size: 16px; line-height: 24px; color: var(--skin-black); margin: 0; flex: 1; }
.service-card-cta {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-family: var(--font-heading);
    font-weight: 600;
    font-size: 16px;
    color: var(--skin-red);
    text-decoration: none;
    margin-top: auto;
}

/* Services */
.home-content-wrap  .services {
	padding-top: var(--pt60);
}
.services-grid.services-grid--cols-3 .service-card-body p {
	min-height: 90px;
} 
.services-grid.services-grid--cols-4 .service-card-body p {
	display: none;
}
.service-card {
	position: relative;
}

/* Dark-overlay card style  */
.services-grid--cols-3 .service-card h4,
.services-grid--cols-3 .service-card h4 a,
.services-grid--cols-4 .service-card h4,
.services-grid--cols-4 .service-card h4 a {
	color: white;
}

.service-card img {
	position: relative;
	z-index: 1;
	transition: all ease-in-out 0.3s;
}

.service-card:focus img,
.service-card:hover img {
	transform: scale(1.03);
}

.services-grid--cols-3 .service-card:after,
.services-grid--cols-4 .service-card:after {
	z-index: 2;
	position: absolute;
	content: '';
	bottom: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 55%);
}

.services-grid--cols-3 .service-card-body,
.services-grid--cols-4 .service-card-body {
	position: absolute;
	bottom: 0;
	width: 100%;
	z-index: 3;
}

@media (max-width: 1024px) {
    .services-grid--cols-3,
    .services-grid--cols-4 { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 767px) {
	.services {
		padding: 0 20px 40px;
		background-size: 100px;
	}
	
    .services-grid--cols-2,
    .services-grid--cols-3,
    .services-grid--cols-4 { grid-template-columns: 1fr; }
}
