.ghome-services-grid {
    width: 100%;
    background: #fff;
}

.ghome-services-grid__inner {
    width: 100%;
    margin: 0 auto;
}

.ghome-services-grid__header {
    text-align: center;
    margin: 0 auto 34px;
}

.ghome-services-grid__heading {
    margin: 0;
    font-family: "Tungsten", "Arial Narrow", sans-serif;
    font-size: clamp(34px, 3.1vw, 54px);
    line-height: .95;
    font-weight: 700;
    letter-spacing: .01em;
    text-transform: uppercase;
}

.ghome-services-grid__divider {
    display: block;
    height: 4px;
    margin: 10px auto 12px;
}

.ghome-services-grid__intro {
    max-width: 1020px;
    margin: 0 auto;
    font-family: "Titillium Web", Arial, sans-serif;
    font-size: 16px;
    line-height: 1.45;
}

.ghome-services-grid__cards {
    display: grid;
    align-items: stretch;
}

.ghome-service-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    overflow: visible;
    border: 1px solid;
    border-radius: 5px;
    color: inherit;
    text-decoration: none;
    box-shadow: 0 2px 6px rgba(0,0,0,.06);
    transition: transform .2s ease, box-shadow .2s ease;
}

a.ghome-service-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 9px 20px rgba(0,0,0,.12);
}

.ghome-service-card__image {
    width: 100%;
    overflow: hidden;
    border-radius: 4px 4px 0 0;
}

.ghome-service-card__image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.ghome-service-card__icon {
    position: relative;
    z-index: 2;
    width: 52px;
    height: 52px;
    margin: -26px auto 0;
    border: 3px solid #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    box-shadow: 0 1px 5px rgba(0,0,0,.16);
}

.ghome-service-card__icon svg {
    width: 25px;
    height: 25px;
}

.ghome-service-card__content {
    position: relative;
    flex: 1;
    display: flex;
    flex-direction: column;
    padding: 15px 20px 18px;
    text-align: center;
}

.ghome-service-card__title {
    margin: 0 0 9px;
    font-family: "Tungsten", "Arial Narrow", sans-serif;
    font-size: 22px;
    line-height: 1.03;
    font-weight: 700;
    letter-spacing: .01em;
    text-transform: uppercase;
}

.ghome-service-card__description {
    margin-bottom: 14px;
    font-family: "Titillium Web", Arial, sans-serif;
    font-size: 14px;
    line-height: 1.4;
}

.ghome-service-card__arrow {
    margin-top: auto;
    align-self: flex-end;
    font-size: 26px;
    line-height: 1;
    font-weight: 700;
}

.ghome-services-grid__callout {
    max-width: 990px;
    margin: 24px auto 0;
    min-height: 88px;
    display: flex;
    align-items: center;
    gap: 28px;
    padding: 18px 42px;
    border-radius: 3px;
}

.ghome-services-grid__callout-icon {
    width: 78px;
    height: 78px;
    flex: 0 0 78px;
    margin-top: -26px;
    margin-bottom: -26px;
    border-radius: 50%;
    border: 2px solid rgba(239,49,35,.25);
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 38px;
}

.ghome-services-grid__callout-icon svg {
    width: 42px;
    height: 42px;
}

.ghome-services-grid__callout-copy {
    font-family: "Titillium Web", Arial, sans-serif;
    font-size: 16px;
    line-height: 1.4;
}

.ghome-services-grid__callout-emphasis {
    font-weight: 700;
}


@media (min-width: 1025px) {
    .ghome-services-grid__cards--count-7 {
        grid-template-columns: repeat(8, minmax(0, 1fr)) !important;
    }

    .ghome-services-grid__cards--count-7 .ghome-service-card {
        grid-column: span 2;
    }

    .ghome-services-grid__cards--count-7 .ghome-service-card:nth-child(5) {
        grid-column: 2 / span 2;
    }

    .ghome-services-grid__cards--count-7 .ghome-service-card:nth-child(6) {
        grid-column: 4 / span 2;
    }

    .ghome-services-grid__cards--count-7 .ghome-service-card:nth-child(7) {
        grid-column: 6 / span 2;
    }
}

@media (max-width: 1024px) {
    .ghome-services-grid__callout {
        max-width: 100%;
    }
}

@media (max-width: 767px) {
    .ghome-services-grid__header {
        margin-bottom: 26px;
    }

    .ghome-services-grid__heading {
        font-size: 36px;
    }

    .ghome-services-grid__intro {
        font-size: 16px;
    }

    .ghome-service-card__title {
        font-size: 21px;
    }

    .ghome-services-grid__callout {
        flex-direction: column;
        text-align: center;
        gap: 12px;
        padding: 24px;
    }

    .ghome-services-grid__callout-icon {
        margin: 0;
    }
}

/* v1.2 intentional mobile slider */
.ghome-services-grid__slider{position:relative;min-width:0}
.ghome-services-grid__controls{display:none;align-items:center;justify-content:space-between;margin-top:20px;font-family:"Titillium Web",Arial,sans-serif;font-weight:700;color:#555}
.ghome-services-grid__controls>div{display:flex;gap:12px}.ghome-services-grid__controls button{width:48px;height:48px;border:2px solid #ef3123;border-radius:50%;background:#fff;color:#ef3123;font-size:30px;display:flex;align-items:center;justify-content:center;padding:0}.ghome-services-grid__controls button:disabled{opacity:.28}
@media(max-width:767px){
 .ghome-services-grid{overflow:hidden}
 .ghome-services-grid__inner{max-width:100%!important}
 .ghome-services-grid__cards{display:flex!important;width:100%;overflow-x:auto;overflow-y:visible;gap:16px!important;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:28px 1px 2px!important}
 .ghome-services-grid__cards::-webkit-scrollbar{display:none}
 .ghome-service-card{flex:0 0 calc(100% - 2px);width:calc(100% - 2px);max-width:calc(100% - 2px);scroll-snap-align:center;overflow:visible;min-height:0}
 .ghome-service-card__image{height:auto!important;aspect-ratio:16/9}
 .ghome-service-card__content{min-height:240px;padding:22px 20px 24px}
 .ghome-service-card__title{font-size:27px;overflow-wrap:normal;word-break:normal;hyphens:none}
 .ghome-service-card__description{font-size:17px;line-height:1.45}
 .ghome-services-grid__controls{display:flex}
}
