.desantis-residential-roofing .t02-page-section,
.desantis-residential-roofing .t02-page-section * {
	box-sizing: border-box;
}

.desantis-residential-roofing .t02-page-section {
	position: relative;
	width: 100%;
	margin: 0;
	overflow: hidden;
	background: var(--color-white);
	color: var(--color-dark);
	font-family: var(--type-font-body);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.desantis-residential-roofing .t02-page-section :where(h2, h3, p) {
	margin: 0;
}

.desantis-residential-roofing .t02-page-section a {
	color: inherit;
	text-decoration: none;
}

.t02-copy--mobile {
	display: none;
}

.t02-section-heading {
	position: absolute;
	left: 50%;
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 1100px;
	height: 178px;
	transform: translateX(-50%);
}

.t02-section-heading__eyebrow {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
	height: 24px;
	color: var(--color-brand-gold);
	font-size: 20px;
	font-weight: 700;
	line-height: 24px;
	text-align: center;
}

.t02-section-heading__eyebrow span {
	display: block;
	width: 50px;
	height: 1px;
	background: var(--color-brand-gold);
}

.desantis-residential-roofing .t02-section-heading__title {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin-top: 22px;
	color: var(--color-dark);
	font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
	font-size: var(--section-heading-font-size, 60px);
	font-weight: var(--section-heading-font-weight, 900);
	line-height: var(--section-heading-line-height, 65px);
	letter-spacing: 0;
	text-align: center;
	text-transform: none;
}

.t02-section-heading__title > span:first-child {
	display: block;
	margin-bottom: -3px;
	white-space: nowrap;
}

.t02-section-heading__highlight {
	display: block;
	padding: 2.5px 14px;
	background: var(--color-brand-red);
	color: var(--color-white);
	white-space: nowrap;
}

.t02-section-cta {
	display: flex;
	align-items: center;
	justify-content: center;
	border: 0;
	border-radius: var(--button-border-radius, 4px);
	background: var(--button-background, var(--color-button-gold));
	color: var(--button-color, var(--color-dark));
	font-family: var(--type-font-body);
	font-weight: var(--button-font-weight, 700);
	text-align: center;
	text-transform: uppercase;
	cursor: pointer;
}

.t02-section-cta:hover,
.t02-section-cta:focus-visible {
	background: var(--button-background, var(--color-sand));
}

.t02-s10 {
	height: 820px;
}

.t02-s10__panel {
	position: absolute;
	top: 80px;
	left: 50%;
	width: 1280px;
	height: 660px;
	transform: translateX(-50%);
}

.t02-s10__header,
.t02-s10__eyebrow,
.t02-s10__title,
.t02-s10__description,
.t02-s10__note,
.t02-s10__locations,
.t02-s10__map {
	position: absolute;
}

.t02-s10__header {
	inset: 0 auto auto 0;
	width: 580px;
	height: 222px;
}

.t02-s10__eyebrow {
	top: 44px;
	left: 0;
	display: flex;
	align-items: center;
	gap: 16px;
	height: 24px;
	color: var(--color-brand-gold);
	font-size: 20px;
	font-weight: 700;
	line-height: 24px;
	text-transform: uppercase;
}

.t02-s10__eyebrow span {
	display: block;
	width: 50px;
	height: 1px;
	background: var(--color-brand-gold);
}

.desantis-residential-roofing .t02-s10__title {
	top: 88px;
	left: 0;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 560px;
	color: var(--color-dark);
	font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
	font-size: var(--section-heading-font-size, 60px);
	font-weight: var(--section-heading-font-weight, 900);
	line-height: var(--section-heading-line-height, 65px);
}

.t02-s10__title > span:first-child {
	height: 65px;
	white-space: nowrap;
}

.t02-s10__highlight {
	display: block;
	width: 382px;
	height: 66px;
	margin-top: 3px;
	padding: 0 14px;
	background: var(--color-brand-red);
	color: var(--color-white);
	white-space: nowrap;
}

.t02-s10__description {
	top: 266px;
	left: 0;
	display: flex;
	align-items: center;
	width: 580px;
	height: 88px;
	color: #292929;
	font-size: 18px;
	font-weight: 500;
	line-height: 24px;
}

.t02-s10__note {
	top: 382px;
	left: 0;
	width: 580px;
	height: 24px;
	color: var(--color-dark);
	font-size: 16px;
	font-weight: 500;
	line-height: 24px;
}

.t02-s10__locations {
	top: 430px;
	left: 0;
	display: grid;
	grid-template-columns: repeat(2, 280px);
	gap: 20px;
	width: 580px;
	height: 178px;
}

.t02-location-card {
	position: relative;
	width: 280px;
	height: 178px;
	overflow: hidden;
	border: 1px solid #e0d9cc;
	border-radius: 10px;
	background: #f9f8f6;
}

.desantis-residential-roofing .t02-location-card h3 {
	position: absolute;
	top: 16px;
	left: 18px;
	width: 240px;
	height: 18px;
	color: var(--color-brand-red);
	font-family: var(--type-font-body);
	font-size: 14px;
	font-weight: 700;
	line-height: 18px;
	text-transform: uppercase;
}

.t02-location-card address {
	position: absolute;
	top: 44px;
	left: 18px;
	width: 240px;
	height: 36px;
	color: #292929;
	font-size: 14px;
	font-style: normal;
	font-weight: 700;
	line-height: 18px;
}

.t02-location-card__phone {
	position: absolute;
	top: 99px;
	left: 18px;
	display: flex;
	align-items: center;
	gap: 8px;
	width: 241px;
	height: 20px;
	font-size: 15px;
	font-weight: 700;
	line-height: 20px;
}

.t02-location-card__phone img,
.t02-location-card__text img {
	flex: 0 0 auto;
	width: 16px;
	height: 16px;
}

.t02-location-card__actions {
	position: absolute;
	top: 126px;
	left: 18px;
	display: flex;
	gap: 12px;
}

.t02-location-card__actions a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 108px;
	height: 32px;
	border-radius: 6px;
	font-size: 12px;
	font-weight: 700;
	line-height: 16px;
	text-transform: uppercase;
}

.t02-location-card__call { background: var(--button-background, var(--color-button-gold)); }

.t02-location-card__text {
	gap: 8px;
	background: #edece8;
}

.t02-s10__map {
	top: 40px;
	left: 720px;
	width: 560px;
	height: 560px;
	margin: 0;
	overflow: hidden;
	border-radius: 14px;
	background: var(--color-white);
	box-shadow: 0 12px 28px rgba(0, 0, 0, .12);
}

.t02-s10__map-image {
	position: absolute;
	inset: 0;
	overflow: hidden;
	border-radius: inherit;
}

.t02-s10__map-embed {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
	border-radius: inherit;
}

.t02-s10__map-image img {
	position: absolute;
	top: -175.56px;
	left: -214.76px;
	display: block;
	width: 980.73px;
	height: 980.73px;
	max-width: none;
}

.t02-s11 {
	height: 850px;
}

.t02-s11 .t02-section-heading {
	top: 22px;
}

.t02-s11 .t02-section-heading__eyebrow {
	text-transform: uppercase;
}

.t02-s11__description {
	position: absolute;
	top: 229px;
	left: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 680px;
	height: 48px;
	transform: translateX(-50%);
	color: #4d4d4d;
	font-size: 18px;
	font-weight: 500;
	line-height: 24px;
	text-align: center;
}

.t02-s11__grid {
	position: absolute;
	top: 340px;
	left: 50%;
	display: grid;
	grid-template-columns: repeat(4, 308px);
	gap: 16px;
	width: 1280px;
	height: 330px;
	transform: translateX(-50%);
}

.t02-project-card,
.t02-project-card > a {
	position: relative;
	display: block;
	width: 308px;
	height: 330px;
}

.t02-project-card {
	overflow: hidden;
	border-radius: 3px;
}

.t02-project-card__image,
.t02-project-card__shade {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
}

.t02-project-card__image {
	object-fit: cover;
}

.t02-project-card__shade {
	background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .08) 52%, rgba(0, 0, 0, .88) 100%);
}

.t02-project-card:nth-child(4) .t02-project-card__shade {
	background:
		linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .08) 52%, rgba(0, 0, 0, .88) 100%),
		linear-gradient(208.19deg, rgba(0, 0, 0, 0) 29.518%, rgba(0, 0, 0, .691) 87.674%);
}

.t02-project-card__title,
.t02-project-card__location,
.t02-project-card__category {
	position: absolute;
	left: 18px;
	display: flex;
	align-items: center;
}

.t02-project-card__title {
	top: 214px;
	width: 272px;
	height: 56px;
	color: var(--color-white);
	font-size: 22px;
	font-weight: 700;
	line-height: 28px;
	text-transform: uppercase;
}

.t02-project-card__location {
	top: 282px;
	width: 220px;
	height: 16px;
	color: #e0e0e0;
	font-size: 12px;
	font-weight: 700;
	line-height: 16px;
	letter-spacing: .4px;
	text-transform: uppercase;
}

.t02-project-card__category {
	top: 303px;
	width: 190px;
	height: 16px;
	color: var(--color-brand-gold);
	font-size: 12px;
	font-weight: 700;
	line-height: 16px;
	letter-spacing: .4px;
	text-transform: uppercase;
}

.t02-project-card__open {
	position: absolute;
	top: 286px;
	left: 266px;
	display: block;
	width: 28px;
	height: 28px;
}

.t02-project-card__open img {
	display: block;
	width: 28px;
	height: 28px;
}

.t02-project-card__open span {
	position: absolute;
	top: -2px;
	left: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 30px;
	color: var(--color-white);
	font-size: 18px;
	font-weight: 400;
	line-height: 20px;
}

.t02-s11__cta {
	position: absolute;
	top: 728px;
	left: 50%;
	width: 320px;
	height: 48px;
	transform: translateX(-50%);
	font-size: 16px;
	line-height: 20px;
}

.t02-s12 {
	height: 830px;
}

.t02-s12 .t02-section-heading {
	top: 20px;
}

.t02-s12 .t02-section-heading__eyebrow {
	text-transform: uppercase;
}

.t02-s12__description {
	position: absolute;
	top: 229px;
	left: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 860px;
	height: 48px;
	transform: translateX(-50%);
	color: #242424;
	font-size: 18px;
	font-weight: 500;
	line-height: 24px;
	text-align: center;
}

.t02-s12__ratings {
	position: absolute;
	top: 314px;
	left: 50%;
	display: flex;
	gap: 80px;
	width: 940px;
	height: 63px;
	transform: translateX(-50%);
}

.t02-rating {
	position: relative;
	width: 260px;
	height: 63px;
	text-align: center;
}

.t02-rating:not(:last-child)::after {
	content: "";
	position: absolute;
	top: 2px;
	right: -40px;
	width: 1px;
	height: 60px;
	background: #e3e0db;
}

.t02-rating__stars,
.t02-rating strong,
.t02-rating > span:last-child {
	position: absolute;
	left: 0;
	display: block;
	width: 260px;
	font-weight: 700;
	text-align: center;
}

.t02-rating__stars {
	top: 0;
	height: 24px;
	color: #f0ad4f;
	font-size: 21px;
	line-height: 24px;
	letter-spacing: 0;
}

.t02-rating strong {
	top: 28px;
	height: 18px;
	color: var(--color-brand-red);
	font-size: 12px;
	line-height: 16px;
	text-transform: uppercase;
}

.t02-rating > span:last-child {
	top: 47px;
	height: 16px;
	color: #6b6b6b;
	font-size: 12px;
	line-height: 16px;
	text-transform: uppercase;
}

.t02-s12__carousel {
	position: absolute;
	top: 406px;
	left: 50%;
	width: 1146px;
	height: 302px;
	transform: translateX(-50%);
}

.t02-s12__carousel .fgrw-theme-card-slider,
.t02-s12__carousel .fgrw-theme-card-slider .fgrw-slider-shell,
.t02-s12__carousel .fgrw-theme-card-slider .fgrw-reviews {
	height: 302px;
}

.t02-s12__carousel .fgrw-theme-card-slider {
	width: 1146px;
	max-width: none;
}

.t02-s12__carousel .fgrw-theme-card-slider .fgrw-slider-shell {
	padding: 0 57px;
}

.t02-s12__carousel .fgrw-theme-card-slider .fgrw-reviews {
	gap: 20px;
	padding: 24px 16px 32px;
	scroll-padding-right: 16px;
	scroll-padding-left: 16px;
}

@media (min-width: 1101px) {
	.t02-s12__carousel .fgrw-theme-card-slider .fgrw-reviews {
		-webkit-mask-image: linear-gradient(to right, transparent 0, #000 16px, #000 calc(100% - 16px), transparent 100%);
		mask-image: linear-gradient(to right, transparent 0, #000 16px, #000 calc(100% - 16px), transparent 100%);
	}
}

.t02-s12__carousel .fgrw-theme-card-slider .fgrw-review {
	flex: 0 0 235px;
	height: 246px;
	min-height: 246px;
	overflow: hidden;
	border: 0;
	border-radius: 14px;
	background: var(--color-white);
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04), 0 8px 24px rgba(0, 0, 0, 0.08);
	padding: 15px 14px;
}

.t02-s12__carousel .fgrw-theme-card-slider .fgrw-review header {
	gap: 10px;
	height: 39px;
	min-height: 39px;
	margin: 0 0 10px;
	padding-right: 23px;
}

.t02-s12__carousel .fgrw-theme-card-slider .fgrw-review img,
.t02-s12__carousel .fgrw-theme-card-slider .fgrw-avatar-placeholder {
	align-self: flex-start;
	flex-basis: 34px;
	width: 34px;
	height: 34px;
	font-size: 12px;
}

.t02-s12__carousel .fgrw-theme-card-slider .fgrw-review header > div {
	position: absolute;
	top: -2px;
	left: 44px;
	display: grid;
	gap: 3px;
	width: 132px;
}

.t02-s12__carousel .fgrw-theme-card-slider .fgrw-author {
	max-width: 132px;
	overflow: hidden;
	font-size: 15px;
	font-weight: 700;
	line-height: 20px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.t02-s12__carousel .fgrw-theme-card-slider .fgrw-date {
	color: #6b6b6b;
	font-size: 13px;
	font-weight: 500;
	line-height: 18px;
	margin-top: 0;
}

.t02-s12__carousel .fgrw-theme-card-slider .fgrw-google-mark {
	top: -1px;
	width: 23px;
	height: 23px;
}

.t02-s12__carousel .fgrw-theme-card-slider .fgrw-meta {
	height: 18px;
	gap: 0;
	margin: 0 0 10px;
}

.t02-s12__carousel .fgrw-theme-card-slider .fgrw-stars {
	color: #f0ad4f;
	font-size: 16px;
	font-weight: 700;
	line-height: 18px;
	letter-spacing: 1px;
}

.t02-s12__carousel .fgrw-theme-card-slider .fgrw-verified {
	display: none;
}

.t02-s12__carousel .fgrw-theme-card-slider .fgrw-review-text {
	height: 88px;
	max-height: 88px;
	margin: 0;
	color: #242424;
	font-size: 15px;
	font-weight: 500;
	line-height: 22px;
	-webkit-line-clamp: 4;
}

.t02-s12__carousel .fgrw-theme-card-slider .fgrw-read-more {
	position: absolute;
	bottom: 16px;
	left: 14px;
	color: var(--color-brand-red);
	font-size: 14px;
	font-weight: 700;
	line-height: 18px;
	text-transform: uppercase;
}

.t02-s12__carousel .fgrw-theme-card-slider .fgrw-read-more::after {
	content: "  →";
}

.t02-s12__carousel .fgrw-theme-card-slider .fgrw-nav {
	top: 125px;
	width: 44px;
	height: 44px;
	border-color: #e5e0d6;
	box-shadow: 0 5px 14px rgba(0, 0, 0, 0.08);
	color: #242424;
	transform: none;
}

.t02-s12__carousel .fgrw-theme-card-slider .fgrw-nav-prev { left: 0; }
.t02-s12__carousel .fgrw-theme-card-slider .fgrw-nav-next { right: 0; }

.t02-s12__carousel .fgrw-theme-card-slider .fgrw-nav::before {
	width: auto;
	height: auto;
	margin: 0;
	border: 0;
	font-family: var(--type-font-body);
	font-size: 20px;
	font-weight: 700;
	line-height: 20px;
	transform: none;
}

.t02-s12__carousel .fgrw-theme-card-slider .fgrw-nav-prev::before { content: "←"; }
.t02-s12__carousel .fgrw-theme-card-slider .fgrw-nav-next::before { content: "→"; }

.t02-s12__carousel .fgrw-theme-card-slider .fgrw-nav:focus-visible,
.t02-s12__carousel .fgrw-theme-card-slider a:focus-visible {
	outline: 3px solid #b82520;
	outline-offset: 2px;
}

.t02-s12__track {
	position: absolute;
	top: 0;
	left: 52px;
	display: grid;
	grid-template-columns: repeat(4, 235px);
	gap: 20px;
	width: 1000px;
	height: 184px;
}

.t02-review-card {
	position: relative;
	width: 235px;
	height: 184px;
	overflow: hidden;
	border: 1px solid #e3e0db;
	border-radius: 10px;
	background: #f6f6f6;
}

.t02-review-card__avatar {
	position: absolute;
	top: 14px;
	left: 13px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: var(--review-avatar);
	color: var(--color-white);
	font-size: 12px;
	font-weight: 700;
	line-height: 14px;
}

.t02-review-card__name {
	position: absolute;
	top: 12px;
	left: 57px;
	display: flex;
	align-items: center;
	width: 132px;
	height: 19px;
	color: #242424;
	font-size: 14px;
	font-weight: 700;
	line-height: 17px;
}

.t02-review-card__date {
	position: absolute;
	top: 31px;
	left: 57px;
	display: flex;
	align-items: center;
	width: 132px;
	height: 15px;
	color: #6b6b6b;
	font-size: 10px;
	font-style: normal;
	font-weight: 400;
	line-height: 12px;
}

.t02-review-card__source {
	position: absolute;
	top: 14px;
	left: 197px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 23px;
	height: 23px;
	color: #3878e0;
	font-size: 15px;
	font-weight: 700;
	line-height: 18px;
}

.t02-review-card__stars {
	position: absolute;
	top: 58px;
	left: 13px;
	display: flex;
	align-items: center;
	width: 150px;
	height: 19px;
	color: #f0ad4f;
	font-size: 16px;
	font-weight: 700;
	line-height: 18px;
}

.t02-review-card > p {
	position: absolute;
	top: 81px;
	left: 13px;
	display: flex;
	align-items: center;
	width: 207px;
	height: 66px;
	color: #242424;
	font-size: 11px;
	font-weight: 400;
	line-height: 16px;
}

.t02-review-card__more {
	position: absolute;
	top: 150px;
	left: 13px;
	display: flex;
	align-items: center;
	width: 85px;
	height: 18px;
	color: #6b6b6b;
	font-size: 10px;
	font-weight: 400;
	line-height: 14px;
}

.t02-carousel-arrow {
	position: absolute;
	top: 69px;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	padding: 0 0 3px;
	border: 1px solid #e3e0db;
	border-radius: 50%;
	background: var(--color-white);
	color: #242424;
	font-family: var(--type-font-body);
	font-size: 24px;
	font-weight: 400;
	line-height: 28px;
	opacity: 1;
}

.t02-carousel-arrow--previous {
	left: 0;
}

.t02-carousel-arrow--next {
	right: 0;
}

.t02-s12__cta {
	position: absolute;
	top: 710px;
	left: 50%;
	width: 240px;
	height: 48px;
	transform: translateX(-50%);
	font-size: 16px;
	line-height: 20px;
	opacity: 1;
}

.desantis-residential-roofing .t02-s13 {
	height: 720px;
	background: #f9f7f4;
}

.t02-s13 .t02-section-heading {
	top: 28px;
}

.t02-guide-featured {
	position: absolute;
	top: 270px;
	left: 50%;
	width: 750px;
	height: 370px;
	margin-left: -640px;
	overflow: hidden;
	border: 1px solid #dfd5c5;
	border-radius: 14px;
	background: var(--color-white);
}

.t02-guide-featured > img {
	position: absolute;
	top: -1px;
	left: -1px;
	width: 310px;
	height: 370px;
	border-radius: 14px 0 0 14px;
	object-fit: cover;
}

.t02-guide-featured::after,
.t02-guide-compact::after {
	content: "";
	position: absolute;
	pointer-events: none;
	background: linear-gradient(210.84deg, rgba(0, 0, 0, 0) 29.518%, rgba(0, 0, 0, .691) 87.674%);
}

.t02-guide-featured::after {
	top: -1px;
	left: -1px;
	width: 310px;
	height: 370px;
	border-radius: 14px 0 0 14px;
}

.t02-guide-featured__content {
	position: absolute;
	inset: 0;
}

.t02-guide-category {
	position: absolute;
	color: var(--color-brand-gold);
	font-weight: 700;
	text-transform: uppercase;
}

.t02-guide-featured .t02-guide-category {
	top: 25px;
	left: 343px;
	width: 370px;
	height: 16px;
	font-size: 12px;
	line-height: 16px;
}

.desantis-residential-roofing .t02-guide-featured h3 {
	position: absolute;
	top: 57px;
	left: 343px;
	width: 370px;
	height: 102px;
	color: var(--color-dark);
	font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
	font-size: 30px;
	font-weight: 900;
	line-height: 34px;
}

.t02-guide-featured .t02-guide-description {
	position: absolute;
	top: 169px;
	left: 343px;
	width: 370px;
	height: 72px;
	color: #424242;
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
}

.t02-guide-featured a {
	position: absolute;
	top: 299px;
	left: 343px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 182px;
	height: 46px;
	border-radius: 8px;
	background: var(--color-brand-gold);
	font-size: 13px;
	font-weight: 700;
	line-height: 18px;
	text-transform: uppercase;
}

.t02-guides-compact {
	position: absolute;
	top: 270px;
	left: 50%;
	width: 510px;
	height: 370px;
	margin-left: 130px;
}

.t02-guide-compact {
	position: absolute;
	left: 0;
	width: 510px;
	height: 175px;
	overflow: hidden;
	border: 1px solid #dfd5c5;
	border-radius: 14px;
	background: var(--color-white);
}

.t02-guide-compact:first-child {
	top: 0;
}

.t02-guide-compact:last-child {
	top: 195px;
}

.t02-guide-compact > img {
	position: absolute;
	top: -1px;
	left: -1px;
	width: 176px;
	height: 175px;
	border-radius: 14px 0 0 14px;
	object-fit: cover;
}

.t02-guide-compact::after {
	top: -1px;
	left: -1px;
	width: 176px;
	height: 175px;
	border-radius: 14px 0 0 14px;
	background: linear-gradient(206.45deg, rgba(0, 0, 0, 0) 29.518%, rgba(0, 0, 0, .691) 87.674%);
}

.t02-guide-compact > div {
	position: absolute;
	inset: 0;
}

.t02-guide-compact .t02-guide-category {
	top: 19px;
	left: 203px;
	width: 280px;
	height: 14px;
	font-size: 11px;
	line-height: 14px;
}

.desantis-residential-roofing .t02-guide-compact h3 {
	position: absolute;
	top: 43px;
	left: 203px;
	width: 280px;
	height: 52px;
	color: var(--color-dark);
	font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
	font-size: 22px;
	font-weight: 900;
	line-height: 25px;
}

.t02-guide-compact .t02-guide-description {
	position: absolute;
	top: 99px;
	left: 203px;
	width: 260px;
	height: 38px;
	color: #424242;
	font-size: 14px;
	font-weight: 400;
	line-height: 19px;
}

.t02-guide-compact a {
	position: absolute;
	top: 141px;
	left: 371px;
	width: 120px;
	height: 16px;
	color: var(--color-brand-red);
	font-size: 12px;
	font-weight: 700;
	line-height: 16px;
	text-align: right;
	text-transform: uppercase;
}

@media (min-width: 1101px) {
	.desantis-residential-roofing .t02-s13 {
		height: 820px;
		background: #090a09 url("../images/residential-sections/guides-editorial-bg.png") center / cover no-repeat;
	}

	.t02-s13 .t02-section-heading {
		top: 79px;
	}

	.t02-s13 .t02-section-heading__title > span:first-child {
		color: var(--color-white);
	}

	.t02-guide-featured {
		top: 330px;
		height: 410px;
		border: 0;
		box-shadow: 0 14px 34px rgba(0, 0, 0, 0.3);
	}

	.t02-guide-featured > img,
	.t02-guide-featured::after {
		top: 0;
		left: 0;
		height: 410px;
	}

	.t02-guide-featured::after {
		background: linear-gradient(213.491deg, rgba(0, 0, 0, 0) 29.518%, rgba(0, 0, 0, 0.691) 87.674%);
	}

	.t02-guide-featured .t02-guide-category,
	.t02-guide-compact .t02-guide-category {
		display: none;
	}

	.desantis-residential-roofing .t02-guide-featured h3 {
		top: 32px;
		left: 344px;
		height: 68px;
	}

	.t02-guide-featured .t02-guide-description {
		top: 116px;
		left: 344px;
		height: auto;
		font-size: 18px;
		font-weight: 500;
		line-height: 24px;
	}

	.t02-guide-featured .t02-guide-description .t02-copy--desktop,
	.t02-guide-featured .t02-guide-description .t02-copy--desktop > span {
		display: block;
	}

	.t02-guide-featured .t02-guide-description .t02-copy--desktop > span + span {
		margin-top: 24px;
	}

	.t02-guide-featured a {
		top: 332px;
		left: 344px;
		width: 210px;
		height: 48px;
		border-radius: 4px;
		background: var(--color-button-gold);
		font-size: 16px;
		line-height: 20px;
	}

	.t02-guides-compact {
		top: 330px;
		height: 410px;
	}

	.t02-guide-compact {
		height: 195px;
		border: 0;
		box-shadow: 0 14px 34px rgba(0, 0, 0, 0.3);
	}

	.t02-guide-compact:last-child {
		top: 215px;
	}

	.t02-guide-compact > img,
	.t02-guide-compact::after {
		top: 0;
		left: 0;
		height: 195px;
	}

	.t02-guide-compact::after {
		background: linear-gradient(208.999deg, rgba(0, 0, 0, 0) 29.518%, rgba(0, 0, 0, 0.691) 87.674%);
	}

	.desantis-residential-roofing .t02-guide-compact h3 {
		top: 22px;
		left: 204px;
		height: 56px;
		font-family: var(--type-font-body);
		font-size: 22px;
		font-weight: 700;
		line-height: 28px;
	}

	.t02-guide-compact .t02-guide-description {
		top: 86px;
		left: 204px;
		height: auto;
		font-size: 14px;
		font-weight: 500;
		line-height: 20px;
	}

	.desantis-residential-roofing .t02-guide-compact a {
		top: 161px;
		left: 372px;
		height: 18px;
		color: var(--color-brand-red);
		font-size: 14px;
		line-height: 18px;
	}
}

.t02-s14 {
	height: 1085px;
}

.t02-s14 .t02-section-heading {
	top: 82px;
}

.t02-s14__list {
	position: absolute;
	top: 345px;
	left: calc(50% + .5px);
	width: 859px;
	height: 658px;
	transform: translateX(-50%);
}

.t02-faq-item {
	position: absolute;
	left: 0;
	width: 859px;
	height: 74px;
}

.t02-faq-item:nth-child(1) {
	top: 0;
	height: 98px;
}

.t02-faq-item:nth-child(2) { top: 136px; }
.t02-faq-item:nth-child(3) { top: 248px; }
.t02-faq-item:nth-child(4) { top: 360px; }
.t02-faq-item:nth-child(5) { top: 472px; }
.t02-faq-item:nth-child(6) { top: 584px; }

.desantis-residential-roofing .t02-faq-item h3 {
	position: absolute;
	top: 0;
	left: 0;
	width: 859px;
	height: 14px;
	color: var(--color-dark);
	font-family: var(--type-font-body);
	font-size: 20px;
	font-weight: 900;
	line-height: 28px;
	text-transform: uppercase;
}

.t02-faq-item p {
	position: absolute;
	top: 26px;
	left: 0;
	width: 859px;
	color: #333;
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
}

.t02-faq-item:first-child p {
	height: 72px;
}

.t02-faq-item:not(:first-child) p {
	height: 48px;
}

@media (min-width: 1101px) {
	.desantis-residential-roofing .t02-faq-item h3 {
		height: 28px;
	}

	.t02-faq-item p,
	.t02-faq-item:first-child p,
	.t02-faq-item:not(:first-child) p {
		top: 40px;
	}

	.t02-faq-item:nth-child(6) {
		height: 116px;
	}

	.desantis-residential-roofing .t02-faq-item:nth-child(6) h3 {
		height: 56px;
	}

	.t02-faq-item:nth-child(6) p {
		top: 68px;
	}
}

@media (max-width: 1100px) {
	.desantis-residential-roofing .t02-page-section {
		height: auto;
		padding: 64px 20px;
		overflow: visible;
	}

	.t02-s10__panel {
		position: relative;
		top: auto;
		left: auto;
		display: flex;
		flex-direction: column;
		width: min(100%, 720px);
		height: auto;
		margin: 0 auto;
		transform: none;
	}

	.t02-s10__header,
	.t02-s10__description,
	.t02-s10__note,
	.t02-s10__locations,
	.t02-s10__map {
		position: relative;
		top: auto;
		left: auto;
	}

	.t02-s10__header { flex: 0 0 222px; }

	.t02-s10__description {
		width: min(100%, 580px);
		height: auto;
		margin-top: 44px;
	}

	.t02-s10__note {
		width: min(100%, 580px);
		height: auto;
		margin-top: 24px;
	}

	.t02-s10__locations {
		width: min(100%, 580px);
		margin-top: 24px;
	}

	.t02-s10__map {
		width: min(100%, 560px);
		height: auto;
		aspect-ratio: 1;
		margin: 48px auto 0;
	}

	.t02-s12 .t02-section-heading__eyebrow {
		text-transform: none;
	}

	.t02-section-heading,
	.t02-s11 .t02-section-heading,
	.t02-s12 .t02-section-heading,
	.t02-s13 .t02-section-heading,
	.t02-s14 .t02-section-heading {
		position: relative;
		top: auto;
		left: auto;
		width: 100%;
		height: auto;
		transform: none;
	}

	.desantis-residential-roofing .t02-section-heading__title {
		font-size: var(--section-heading-font-size, clamp(38px, 8vw, 54px));
		line-height: var(--section-heading-line-height, 1.05);
	}

	.t02-section-heading__title > span:first-child,
	.t02-section-heading__highlight {
		white-space: normal;
	}

	.t02-s11__description,
	.t02-s12__description {
		position: relative;
		top: auto;
		left: auto;
		width: min(100%, 860px);
		height: auto;
		margin: 36px auto 0;
		transform: none;
	}

	.t02-s12__description {
		font-size: 17px;
		font-weight: 400;
		line-height: 26px;
	}

	.t02-s11__grid {
		position: relative;
		top: auto;
		left: auto;
		grid-template-columns: repeat(2, 308px);
		width: min-content;
		height: auto;
		margin: 48px auto 0;
		transform: none;
	}

	.t02-s11__cta,
	.t02-s12__cta {
		position: relative;
		top: auto;
		left: auto;
		margin: 48px auto 0;
		transform: none;
	}

	.t02-s12__ratings {
		position: relative;
		top: auto;
		left: auto;
		width: min(100%, 940px);
		margin: 32px auto 0;
		transform: none;
	}

	.t02-rating > span:last-child {
		font-size: 11px;
		line-height: 14px;
	}

	.t02-s12__carousel {
		position: relative;
		top: auto;
		left: auto;
		width: min(100%, 1104px);
		margin: 26px auto 0;
		transform: none;
	}

	.t02-s12__carousel .fgrw-theme-card-slider,
	.t02-s12__carousel .fgrw-slider-shell {
		height: 248px;
	}

	.t02-s12__carousel .fgrw-theme-card-slider {
		width: 100%;
	}

	.t02-s12__carousel .fgrw-theme-card-slider .fgrw-slider-shell {
		height: 248px;
		padding: 0;
	}

	.t02-s12__carousel .fgrw-theme-card-slider .fgrw-reviews {
		height: 210px;
		gap: 16px;
		box-sizing: border-box;
		padding: 0 24px;
		overflow-x: auto;
		scroll-padding-right: 24px;
		scroll-padding-left: 24px;
	}

	.t02-s12__carousel .fgrw-theme-card-slider .fgrw-review {
		flex-basis: 304px;
		height: 210px;
		min-height: 210px;
		border: 1px solid #d6d1c9;
		border-radius: 10px;
		background: #f6f5f2;
		box-shadow: none;
		padding: 13px;
	}

	.t02-s12__carousel .fgrw-theme-card-slider .fgrw-review header {
		height: 38px;
		min-height: 38px;
		margin-bottom: 11px;
	}

	.t02-s12__carousel .fgrw-theme-card-slider .fgrw-review img,
	.t02-s12__carousel .fgrw-theme-card-slider .fgrw-avatar-placeholder {
		flex-basis: 38px;
		width: 38px;
		height: 38px;
	}

	.t02-s12__carousel .fgrw-theme-card-slider .fgrw-author { max-width: 206px; font-weight: 800; }
	.t02-s12__carousel .fgrw-theme-card-slider .fgrw-date { color: var(--fgrw-date); font-size: 11px; font-weight: 400; line-height: 15px; margin-top: 3px; }
	.t02-s12__carousel .fgrw-theme-card-slider .fgrw-google-mark { width: 20px; height: 20px; }
	.t02-s12__carousel .fgrw-theme-card-slider .fgrw-meta { gap: 8px; margin-bottom: 7px; }
	.t02-s12__carousel .fgrw-theme-card-slider .fgrw-stars { font-size: 17px; letter-spacing: 0; }
	.t02-s12__carousel .fgrw-theme-card-slider .fgrw-verified { display: inline-flex; }
	.t02-s12__carousel .fgrw-theme-card-slider .fgrw-review-text {
		height: 72px;
		font-size: 13px;
		line-height: 18px;
		-webkit-line-clamp: 4;
	}
	.t02-s12__carousel .fgrw-theme-card-slider .fgrw-read-more {
		position: static;
		color: var(--fgrw-read-more);
		font-size: 10px;
		line-height: 13px;
		text-transform: none;
	}
	.t02-s12__carousel .fgrw-theme-card-slider .fgrw-read-more::after { content: none; }
	.t02-s12__carousel .fgrw-theme-card-slider .fgrw-nav { display: none; }

	.t02-s12__cta {
		font-size: 13px;
		line-height: 16px;
	}

	.t02-s12__track {
		overflow-x: auto;
	}

	.t02-guide-featured,
	.t02-guides-compact {
		position: relative;
		top: auto;
		left: auto;
		margin: 48px auto 0;
	}

	.t02-guides-compact {
		margin-top: 20px;
	}

	.t02-s14__list {
		position: relative;
		top: auto;
		left: auto;
		width: min(100%, 859px);
		height: auto;
		margin: 64px auto 0;
		transform: none;
	}

	.t02-faq-item,
	.t02-faq-item:nth-child(n) {
		position: relative;
		top: auto;
		width: 100%;
		height: auto;
		min-height: 98px;
		margin-bottom: 38px;
	}

	.desantis-residential-roofing .t02-faq-item h3,
	.t02-faq-item p {
		width: 100%;
	}
}

@media (min-width: 1024px) and (max-width: 1100px) {
	.t02-s12__ratings {
		gap: clamp(24px, 7.8vw, 80px);
	}

	.t02-rating {
		flex: 1 1 0;
		width: auto;
		min-width: 0;
	}

	.t02-rating__stars,
	.t02-rating strong,
	.t02-rating > span:last-child {
		width: 100%;
	}

	.t02-rating:not(:last-child)::after {
		right: calc(clamp(24px, 7.8vw, 80px) * -.5);
	}
}

@media (max-width: 1023px) {
	.t02-copy--desktop {
		display: none;
	}

	.t02-copy--mobile {
		display: inline;
	}

	.desantis-residential-roofing .t02-page-section {
		width: 100%;
		padding: 0;
		overflow: hidden;
	}

	.desantis-residential-roofing .t02-s10 {
		height: auto;
		padding: 56px 24px 64px;
	}

	.t02-s10__panel { width: 100%; }
	.t02-s10__header { width: 100%; height: 180px; flex-basis: 180px; }
	.t02-s10__eyebrow { top: 0; font-size: 13px; line-height: 17px; }
	.t02-s10__eyebrow span { width: 36px; }

	.desantis-residential-roofing .t02-s10__title {
		top: 42px;
		width: 100%;
		font-size: var(--section-heading-font-size, 42px);
		line-height: var(--section-heading-line-height, 47px);
	}

	.t02-s10__title > span:first-child { height: 47px; }
	.t02-s10__highlight { width: auto; height: 50px; padding: 1px 10px 2px; }
	.t02-s10__description { margin-top: 24px; font-size: 17px; line-height: 24px; }
	.t02-s10__locations { grid-template-columns: 1fr; height: auto; }
	.t02-location-card { width: 100%; }
	.t02-s10__map { margin-top: 40px; }
	.t02-s10__map-image img { top: -31.35%; left: -38.35%; width: 175.13%; height: 175.13%; }
	.desantis-residential-roofing .t02-s11 { height: 850px; }
	.desantis-residential-roofing .t02-s12 { height: 700px; }
	.desantis-residential-roofing .t02-s13 { height: 760px; }
	.desantis-residential-roofing .t02-s14 { height: 1105px; }

	.t02-section-heading,
	.t02-s11 .t02-section-heading,
	.t02-s12 .t02-section-heading,
	.t02-s13 .t02-section-heading,
	.t02-s14 .t02-section-heading {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 180px;
		transform: none;
	}

	.t02-section-heading__eyebrow {
		position: absolute;
		left: 50%;
		gap: 16px;
		width: max-content;
		height: 17px;
		transform: translateX(-50%);
		font-size: 13px;
		line-height: 17px;
		text-transform: uppercase;
		white-space: nowrap;
	}

	.t02-section-heading__eyebrow span {
		width: 36px;
	}

	.desantis-residential-roofing .t02-section-heading__title {
		position: absolute;
		left: 0;
		display: flex;
		width: 100%;
		height: auto;
		margin: 0;
		font-size: var(--section-heading-font-size, 38px);
		line-height: var(--section-heading-line-height, 43px);
	}

	.t02-section-heading__title > span:first-child,
	.t02-section-heading__highlight {
		white-space: nowrap;
	}

	.t02-section-heading__title > span:first-child {
		width: 100%;
		margin: 0;
	}

	.t02-section-heading__highlight {
		box-sizing: border-box;
		margin-top: -1px;
		padding: 2px 0 0;
		background: #b82520;
		line-height: inherit;
	}

	.t02-section-cta {
		background: var(--button-background, #e3b26b);
	}

	.t02-s11 .t02-section-heading__eyebrow { top: 40px; }
	.t02-s11 .t02-section-heading__title { top: 77px; }
	.t02-s11 .t02-section-heading__highlight { width: 278px; height: 50px; }

	.t02-s12 .t02-section-heading__eyebrow { top: 40px; }
	.t02-s12 .t02-section-heading__title {
		top: 77px;
		font-size: var(--section-heading-font-size, 35px);
		line-height: var(--section-heading-line-height, 39px);
	}
	.t02-s12 .t02-section-heading__highlight { width: 330px; height: 47px; }

	.t02-s13 .t02-section-heading__eyebrow { top: 40px; }
	.t02-s13 .t02-section-heading__title {
		top: 77px;
		font-size: var(--section-heading-font-size, 36px);
		line-height: var(--section-heading-line-height, 41px);
	}
	.t02-s13 .t02-section-heading__highlight { width: 122px; height: 48px; }

	.t02-s14 .t02-section-heading__eyebrow { top: 40px; }
	.t02-s14 .t02-section-heading__title {
		top: 77px;
		font-size: var(--section-heading-font-size, 35px);
		line-height: var(--section-heading-line-height, 40px);
	}
	.t02-s14 .t02-section-heading__highlight { width: 314px; height: 47px; }

	.t02-s11__description {
		position: absolute;
		top: 189px;
		left: 50%;
		width: 342px;
		height: 66px;
		margin: 0;
		transform: translateX(-50%);
		font-size: 15px;
		line-height: 22px;
	}

	.t02-s11__grid {
		position: absolute;
		top: 279px;
		left: 0;
		display: flex;
		gap: 16px;
		box-sizing: border-box;
		width: 100%;
		height: 350px;
		margin: 0;
		padding: 0 24px;
		overflow-x: auto;
		overflow-y: hidden;
		scroll-padding-left: 24px;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
		transform: none;
		-webkit-overflow-scrolling: touch;
	}

	.t02-s11__grid::-webkit-scrollbar,
	.t02-s12__track::-webkit-scrollbar { display: none; }

	.t02-s11__grid .t02-project-card,
	.t02-s12__track .t02-review-card {
		flex: 0 0 auto;
		scroll-snap-align: start;
	}

	.t02-project-card,
	.t02-project-card > a {
		width: 300px;
		height: 350px;
	}

	.t02-project-card { border-radius: 8px; }

	.t02-project-card__title {
		top: 250px;
		left: 18px;
		width: 244px;
		height: 38px;
		font-size: 15px;
		line-height: 19px;
	}

	.t02-project-card__location {
		top: 292px;
		left: 18px;
		width: 230px;
		height: 18px;
		font-size: 13px;
		line-height: 18px;
	}

	.t02-project-card__category {
		top: 318px;
		left: 18px;
		width: 240px;
		height: 14px;
		font-size: 11px;
		line-height: 14px;
	}

	.t02-project-card__open {
		top: 290px;
		left: 242px;
		width: 44px;
		height: 44px;
		border: 1px solid var(--color-white);
		border-radius: 50%;
		background: #2e2e2e;
	}

	.t02-project-card__open > img { display: none; }

	.t02-project-card__open img,
	.t02-project-card__open span {
		width: 44px;
		height: 44px;
	}

	.t02-project-card__open span {
		top: 0;
		font-size: 22px;
		line-height: 22px;
	}

	.t02-s11::after,
	.t02-s12__carousel::after {
		position: absolute;
		left: 50%;
		color: #b82520;
		font-size: 18px;
		font-weight: 700;
		line-height: 18px;
		transform: translateX(-50%);
		white-space: pre;
		content: "●  ○  ○  ○";
	}

	.t02-s11::after {
		top: 651px;
	}

	.t02-s11__cta {
		position: absolute;
		top: 693px;
		left: 50%;
		width: 266px;
		height: 52px;
		margin: 0;
		transform: translateX(-50%);
		font-size: 14px;
		line-height: 20px;
	}

	.t02-s12__description {
		position: absolute;
		top: 182px;
		left: 50%;
		width: 334px;
		height: 42px;
		margin: 0;
		transform: translateX(-50%);
		font-size: 14px;
		line-height: 21px;
	}

	.t02-s12__ratings {
		position: absolute;
		top: 235px;
		left: 50%;
		display: grid;
		grid-template-columns: repeat(3, 110px);
		gap: 12px;
		width: 354px;
		height: 53px;
		margin: 0;
		transform: translateX(-50%);
	}

	.t02-rating {
		width: 110px;
		height: 53px;
	}

	.t02-rating:not(:last-child)::after { display: none; }

	.t02-rating__stars,
	.t02-rating strong,
	.t02-rating > span:last-child {
		width: 110px;
	}

	.t02-rating__stars {
		top: 0;
		height: 20px;
		font-size: 18px;
		line-height: 20px;
	}

	.t02-rating strong {
		top: 24px;
		height: 13px;
		font-size: 10px;
		line-height: 13px;
	}

	.t02-rating > span:last-child {
		top: 40px;
		height: 13px;
		font-size: 10px;
		line-height: 13px;
	}

	.t02-s12__carousel {
		position: absolute;
		top: 321px;
		left: 0;
		width: 100%;
		height: 248px;
		margin: 0;
		overflow: hidden;
		transform: none;
	}

	.t02-s12__track {
		top: 0;
		left: 0;
		display: flex;
		gap: 16px;
		box-sizing: border-box;
		width: 100%;
		height: 210px;
		padding: 0 24px;
		overflow-x: auto;
		overflow-y: hidden;
		scroll-padding-left: 24px;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
	}

	.t02-review-card {
		width: 304px;
		height: 210px;
		border-color: #d6d1c9;
		background: #f6f5f2;
	}

	.t02-review-card__avatar {
		top: 13px;
		left: 13px;
		width: 38px;
		height: 38px;
		font-size: 12px;
		line-height: 14px;
	}

	.t02-review-card__name {
		top: 13px;
		left: 61px;
		width: 206px;
		height: 18px;
		font-size: 14px;
		line-height: 18px;
	}

	.t02-review-card__date {
		top: 33px;
		left: 61px;
		width: 206px;
		height: 15px;
		font-size: 11px;
		line-height: 15px;
	}

	.t02-review-card__source {
		top: 14px;
		left: 269px;
		width: 20px;
		height: 16px;
		font-size: 15px;
		line-height: 16px;
	}

	.t02-review-card__stars {
		top: 62px;
		left: 13px;
		width: 276px;
		height: 19px;
		font-size: 17px;
		line-height: 19px;
	}

	.t02-review-card > p {
		top: 90px;
		left: 13px;
		width: 276px;
		height: 72px;
		font-size: 13px;
		line-height: 18px;
	}

	.t02-review-card__more {
		top: 182px;
		left: 13px;
		width: 276px;
		height: 13px;
		font-size: 10px;
		line-height: 13px;
	}

	.t02-carousel-arrow { display: none; }

	.t02-s12__carousel::after {
		top: 229px;
	}

	.t02-s12__cta {
		position: absolute;
		top: 593px;
		left: 50%;
		width: 240px;
		height: 52px;
		margin: 0;
		transform: translateX(-50%);
		font-size: 14px;
		line-height: 20px;
	}

	.t02-guide-featured,
	.t02-guides-compact,
	.t02-guide-compact {
		position: absolute;
		left: 50%;
		width: 350px;
		margin: 0;
		transform: translateX(-50%);
	}

	.t02-guide-featured {
		top: 193px;
		height: 188px;
		border-color: #d1bda1;
		border-radius: 10px;
	}

	.t02-guide-featured > img {
		top: -1px;
		left: -1px;
		width: 118px;
		height: 188px;
		border-radius: 10px 0 0 10px;
	}

	.t02-guide-featured::after,
	.t02-guide-compact::after { display: none; }

	.t02-guide-featured .t02-guide-category,
	.t02-guide-compact .t02-guide-category {
		top: 11px;
		left: 133px;
		width: 202px;
		height: 13px;
		font-size: 10px;
		line-height: 13px;
	}

	.desantis-residential-roofing .t02-guide-featured h3,
	.desantis-residential-roofing .t02-guide-compact h3 {
		top: 28px;
		left: 133px;
		width: 202px;
		height: auto;
		font-size: 18px;
		line-height: 20px;
	}

	.desantis-residential-roofing .t02-guide-featured h3 { width: 202px; }

	.t02-guide-featured .t02-guide-description {
		top: 100px;
		left: 133px;
		width: 202px;
		height: 51px;
		font-size: 12px;
		line-height: 17px;
	}

	.desantis-residential-roofing .t02-guide-featured a,
	.desantis-residential-roofing .t02-guide-compact a {
		top: 164px;
		left: 133px;
		display: block;
		width: 202px;
		height: 14px;
		border-radius: 0;
		background: transparent;
		color: #b82520;
		font-size: 11px;
		line-height: 14px;
		text-align: left;
	}

	.t02-guides-compact {
		top: 393px;
		height: 348px;
	}

	.t02-guide-compact {
		left: 0;
		height: 168px;
		transform: none;
		border-color: #d1bda1;
		border-radius: 10px;
	}

	.t02-guide-compact:first-child { top: 0; }
	.t02-guide-compact:last-child { top: 180px; }

	.t02-guide-compact > img {
		top: -1px;
		left: -1px;
		width: 118px;
		height: 168px;
		border-radius: 10px 0 0 10px;
	}

	.t02-guide-compact .t02-guide-description {
		top: 80px;
		left: 133px;
		width: 202px;
		height: 51px;
		font-size: 12px;
		line-height: 17px;
	}

	.desantis-residential-roofing .t02-guide-compact a { top: 144px; }

	.t02-s14__list {
		position: absolute;
		top: 191px;
		left: 50%;
		width: 358px;
		height: 866px;
		margin: 0;
		transform: translateX(-50%);
	}

	.t02-faq-item,
	.t02-faq-item:nth-child(n) {
		position: absolute;
		left: 0;
		width: 358px;
		margin: 0;
		min-height: 0;
	}

	.t02-faq-item:nth-child(1) { top: 0; height: 154px; }
	.t02-faq-item:nth-child(2) { top: 154px; height: 119px; }
	.t02-faq-item:nth-child(3) { top: 273px; height: 158px; }
	.t02-faq-item:nth-child(4) { top: 431px; height: 158px; }
	.t02-faq-item:nth-child(5) { top: 589px; height: 158px; }
	.t02-faq-item:nth-child(6) { top: 747px; height: 119px; }

	.desantis-residential-roofing .t02-faq-item h3 {
		top: 22px;
		left: 0;
		width: 358px;
		height: auto;
		font-size: 16px;
		letter-spacing: -.3px;
		line-height: 21px;
	}

	.desantis-residential-roofing .t02-faq-item:first-child h3 { top: 0; }
	.desantis-residential-roofing .t02-faq-item:nth-child(2) h3 {
		font-size: 15.8px;
		letter-spacing: -.4px;
		white-space: nowrap;
	}
	.desantis-residential-roofing .t02-faq-item:nth-child(3) h3 { width: 330px; }

	.t02-faq-item p,
	.t02-faq-item:first-child p,
	.t02-faq-item:not(:first-child) p {
		top: 72px;
		left: 0;
		width: 358px;
		height: auto;
		font-size: 12.5px;
		line-height: 18px;
	}

	.t02-faq-item:first-child p { top: 50px; }
	.t02-faq-item:nth-child(2) p,
	.t02-faq-item:nth-child(6) p { top: 51px; }

	.t02-faq-item:not(:last-child)::after {
		position: absolute;
		right: 0;
		bottom: 0;
		left: 0;
		height: 1px;
		background: rgba(219, 209, 194, .68);
		content: "";
	}
}

@media (prefers-reduced-motion: reduce) {
	.t02-page-section * {
		scroll-behavior: auto !important;
	}
}
