:root {
	--accent: #cd1c18;
	--bg: #f7f9fb;
	--ink: #1f2937;
}

.maincontent {
    max-width: 100%;
    margin: 0 auto;
    padding: 0;
    border: none;
}  

.interior-banner {
    background-image: url(/imageserver/UserMedia/hernandezcon/res-roof-hero001.jpg);
    background-size: cover;
    background-position: center 15%;
}

.services-offered-wrapper {
	position: relative;
	padding: 30px 3%;
	background: #f7f7f7;
}

.services-container.main-wrapper {
	align-items: flex-start;
}

.home-intro-image.main-left.global-image {
	margin-block: 0;
}

.home-intro-list-container {
	margin-block: 10px;
	background: #fff;
	border-radius: 7px;
	padding: 12px;
	box-shadow: 0 0 5px 2px #00000008;
}

.home-intro-list-item p {
	font-size: 20px;
	margin-block: 12px;
	text-align: start;
}

.services-container {
	max-width: 1600px;
	width: 100%;
	border-radius: 10px;
	padding: 20px;
	margin: 40px auto;
    display: flex;
}

.services-info {
	background: #fff;
	border-radius: 7px;
	padding: 20px;
	box-shadow: 0 0 5px 2px #00000008;
}

/* Service Options */
.service-options-container {
background: #fff;
}

.service-options {
	display: flex;
	gap: 20px;
	margin-block: 20px;
}

.service-option {
	cursor: pointer;
	transition: background-color 0.3s ease;
	font-size: 16px;
	position: relative;
	transition: background .2s ease, color .2s ease, transform .2s ease;
	padding: 15px 50px;
	border-radius: 30px;
	border: 2px solid #eaeaea;
}

.service-options h3{
    text-align: center;
}

.services-underline {
	height: 2px;
	background: var(--accent);
	width: 25%;
	margin-top: -8px;
}


.service-option span{
	display: flex;
	gap: 12px;
    align-items: center;
    justify-content: flex-start;
}

.service-option.active {
	color: #fff;
	background: #a2a2a2;
}

.service-option:hover {
    background: var(--accent-color);
    opacity: 0.85;
}

.main-wrapper.product-wrapper {
	flex-flow: row wrap;
	margin-block: 35px;
}

.main-left.product-logo {
	flex: 1 250px;
	text-align: center;
}
.main-right.product-info {
	flex: 3 350px;
}

.product-logo img {
max-width: 200px;
width: 100%;
}

@keyframes fadeUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* Service Content */
.service-content {
	padding: 0px 12px;
}

.service-details {
    display: none;
    font-size: 16px;
}

.intro-image-wrapper {
	text-align: center;
}

.intro-image-wrapper img {
	margin: 0px auto 35px;
	max-width: 860px;
	width: 100%;
}

.service-details.active {
    display: block;
}
.service-offered-text {
	text-align: start;
}

.services-features-wrapper {
	display: flex;
	gap: 20px;
	justify-content: space-around;
}

.services-para {
    text-align: center;
}

.service-offered-list-title {
	font-weight: 600;
	text-align: start;
	margin: 30px auto 20px;
}
.service-offered-image {
	text-align: center;
}

.services-features-container h3 {
    color: var(--accent);
}

.services-list-item p{
	display: flex;
	align-items: center;
}

.products-section {
    background: var(--navy-color);
    color: #fff;
}

.products-wrapper {
	display: flex;
	align-items: stretch;
	justify-content: space-around;
	gap: 20px;
}

.service-card {
	align-content: center;
	display: flex;
	flex-flow: column;
	justify-content: space-between;
}

.service-card:hover {
    transform: translateY(-10px) !important;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
    color: #fff;
    background-color: #828282;
}

.service-card:hover .site-button {
	background: var(--red-color);
}

.card-logo {
    height: 40%;
}

.card-logo img {
    max-width: 180px;
    width: 100%;
    height: auto;
    margin: auto;
}

#certainteed-card .card-logo img {
	max-width: 300px;
}

.card-content {
    height: 60%;
}

.svc-title {
	font-size: 26px !important;
	margin: 15px 0 5px;
	font-weight: 600;
}

.service-details:focus {
  outline: none !important;
  box-shadow: none !important;
}

.locations-global {
    background-color: #f0f0f0;
}
.contact-list {
    margin-bottom: 10px;
}

/* Mobile / Tablet */
@media (max-width: 982px) {
    .services-container {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .service-option {
        flex: 0 0 auto;
    }

    .services-container {
	flex-direction: column;
}
.products-wrapper {
	flex-wrap: wrap;
}

.service-card {
	flex: 1 1 450px;
	max-width: 600px;
}

}


@media (max-width: 900px) {
.service-options {
	grid-template-columns: repeat(2, 1fr);
	margin-bottom: 20px;
}

.service-option {
	font-size: 14px;
}
.services-features-wrapper {
	flex-flow: column;
}
}




@media (max-width: 500px) {
.service-option {
	font-size: 12px;
}
}

@media (max-width: 400px) {
.services-container {
	margin: 10px auto;
}
}