/* 112, 10817 = RV Exterior */

/* Warranty Landing Pages */
.warranty-head {
	position: relative;
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 0;
	padding-left: 50px;
	padding-right: 50px;
	color: #162958;
	text-align: center;
}

.warranty-head h1 {
	margin-bottom: 30px;
	font-size: 44px;
}

.warranty-head p {
	font-size: 18px;
	line-height: 1.5;
	margin-left: auto;
	margin-right: auto;
}

@media only screen and (min-width: 768px) {
	.warranty-head {
		margin-top: 90px;
	}

	.warranty-head p {
		padding-bottom: 50px;
	}
}

.subheader {
	margin-left: 5%;
	margin-right: 5%;
}

.warranties-row {
	margin: 0 5% 45px;
}

.warranties-row .industry-box {
	padding: 15px;
	display: flex;
	flex-direction: column;
}

.warranties-row .industry-img {
	background: #fff;
	margin: 0 auto;
	flex-shrink: 0; /* IE */
}

.warranties-row .industry-text {
	width: 100%;
	height: 100%;
	margin: -30px 0 0;
	padding: 10px 20px;
	color: #fff;
	background: #162958;
}

@media only screen and (min-width: 480px) {
	.warranties-row .industry-text {
		padding: 10px 30px;
	}
}

/* IE 10 */
@media all and (-ms-high-contrast: active), all and (-ms-high-contrast: none) {
	.warranties-row .industry-text {
		height: auto;
		min-height: 300px;
	}
}

.warranties-row .industry-text h2 {
	color: inherit;
}

.warranties-row .industry-text p:last-child {
	margin-top: 20px;
	text-align: right;
}

@media only screen and (min-width: 768px) {
	.warranties-row {
		display: flex;
		justify-content: space-between;
	}

	.warranties-row .industry-text {
		display: flex;
		flex-direction: column;
	}

	.warranties-row .industry-text p:first-of-type {
		flex-grow: 1;
	}

	.warranties-row .industry-box {
		flex: 0 1 32%;
	}
}

/* Warranty Product pages */
.product-header {
	position: relative;
	/* header @ 50px + sticky menu at 1.5 * 82px = 171 */
	min-height: calc(100vh - 171px);
	padding: 35px 0;
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
}

.product-header .header-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to right, rgba(255,255,255,0.4), rgba(255,255,255,0));
}

.product-header .header-content {
	position: relative;
	padding: 0 5%;
}

.product-header .breadcrumb-nav {
	display: inline-block;
	margin-bottom: 45px;
	padding: 8px 7px;
	font-size: 12px;
	color: #162958;
	font-weight: 600;
	border-radius: 50px;
	background: #fff;
	box-shadow: 0px 1px 5px #777;
}

.product-header .breadcrumb-nav a {
	margin: 0px 10px;
	color: inherit;
	white-space: nowrap;
	transition: opacity 0.3s;
}

.product-header .breadcrumb-nav a:hover {
	opacity: 0.6;
}

.product-header .header-review {
	min-height: 18px;
}

.product-header h1 {
	width: 240px;
	margin: 0 0 13px 0;
	font-size: 30px;
	color: #162958;
	font-weight: bold;
	line-height: .8em;
}

.product-header .header-text-container {
	position: relative;
	margin-top: 35px;
	padding: 0 5%;
}

.product-header .header-text {
	display: inline-block;
	color: #fff;
	padding-bottom: 46px;
}

.product-header .header-text p {
	width: 100%;
	max-width: 430px;
	line-height: 1.35;
}

@media only screen and (min-width: 480px) {
	.product-header .breadcrumb-nav {
		margin-left: -15px;
	}

	.product-header h1 {
		font-size: 46px;
	}

	.product-header .header-text-container {
		padding-left: 0;
	}

	.product-header .header-text {
		padding-left: 5%;
	}
}

@media only screen and (min-width: 768px) {
	.product-header {
		/* header @ 50px + sticky menu @ 1.5 * 52px = 128 */
		min-height: calc(100vh - 128px);
	}
}

@media only screen and (min-width: 1200px) {
	.product-header {
		/* header @ 80px + sticky menu @ 62px = 142 */
		min-height: calc(100vh - 142px);
	}
}

.submenu-nav.hide-reviews .menu-item-978,
.submenu-nav.hide-reviews .menu-item-11365 {
	display: none;
}

.plan-reviews {
	position: relative;
	margin-top: 50px;
	margin-bottom: 50px;
}

.aux-styles h2 {
	margin: 0 0 25px;
	font-size: 21px;
	font-weight: bold;
}

.aux-styles h3 {
	margin: 0 0 22px 0;
	font-size: 18px;
	font-weight: 600;
}


.aux-styles p,
.aux-styles ul,
.aux-styles ol {
	margin: 0 0 0.5rem;
	line-height: 1.35;
}

.coverage,
.plan-features,
.plan-benefits,
.plan-type-static {
	position: relative;
	display: flex;
	align-items: center;
	padding-top: 40vw;
}

.plan-type-static {
	padding-top: 42vw;
}

.page-id-112 .plan-type-static,
.page-id-10817 .plan-type-static {
	padding-top: 40vw;
}

.coverage {
	margin-bottom: 35px;
}

.plan-features,
.plan-benefits,
.plan-type-static {
	margin-top: 50px;
	margin-bottom: 50px;
}

.coverage-bg,
.features-bg,
.benefits-bg,
.static-bg {
	position: absolute;
	top: 0;
	right: -15px;
	bottom: 0;
	left: -15px;
	background-position: center top;
	background-repeat: no-repeat;
	background-size: contain;
}

.static-bg {
	right: 8%;
	left: 8%;
}

.page-id-112 .static-bg,
.page-id-10817 .static-bg {
	right: 0;
	left: 0;
}


.coverage-content,
.feature-content,
.benefits-content,
.static-content {
	position: relative;
	width: 100%; /* IE 10 */
}

.coverage-header {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	align-content: center;
	flex-wrap: wrap;
	color: #162958;
}

.coverage-header h2 {
	margin-right: 5%;
	margin-bottom: 0.5em;
}

.coverage-header h3 {
	padding: 0.4em 1.25em 0.45em;
    background-color: #162958;
    font-size: 14px;
	color: #fff;
	font-weight: bold;
    line-height: 1.2;
	text-align: center;
    border-radius: 25px;
}

.plan-addons {
	margin-top: 50px;
	margin-bottom: 80px;
}

.plan-addons h2	{
	text-align: center;
}

.addons-row {
	display: flex;
	justify-content: center;
	flex-direction: column;
	position: relative;
}

.plan-addons.addons .addons-row > div:last-child {
	margin: 25px 0;
}

.plan-addons.addons .addons-row .center-addon {
	order: 3;
}

.addons-row h3 {
	margin: 0 0 25px 0;
	font-size: 18px;
	font-weight: 600;
}

@media screen and (min-width: 480px) {
	.plan-features {
		margin-top: 100px;
	}

	.plan-benefits {
		margin-top: 70px;
		margin-bottom: 160px;
	}
}

@media screen and (min-width: 768px) {
	.plan-reviews {
		margin-top: 100px;
		margin-bottom: 100px;
	}

	.coverage,
	.plan-features,
	.plan-benefits,
	.plan-type-static {
		min-height: 45vw;
		padding: 0 33px;
	}

	.plan-type-static {
		margin-top: 100px;
		margin-bottom: 100px;
	}

	.page-id-112 .plan-type-static,
	.page-id-10817 .plan-type-static {
		padding-top: 0;
	}

	.plan-type-carousel {
		margin-top: 130px;
		margin-bottom: 100px;
	}

	.plan-features {
		justify-content: flex-end;
		margin-top: 150px;
		margin-bottom: 100px;
	}

	.plan-benefits {
		margin-top: 150px;
		margin-bottom: 160px;
	}

	.coverage {
		margin-top: 110px;
		margin-bottom: 100px;
	}

	.coverage-bg,
	.features-bg,
	.benefits-bg,
	.static-bg {
		right: 0;
		left: 0;
		max-height: 440px;
		margin: auto 75px;
	}

	.coverage-bg {
		background-position: 60% center;
	}

	.features-bg {
		background-position: 40% center;
	}

	.benefits-bg,
	.static-bg {
		background-position: right center;
	}

	.static-bg {
		margin-right: 31px;
		background-size: 64%;
	}

	.page-id-112 .static-bg,
	.page-id-10817 .static-bg {
		background-size: contain;
	}

	.coverage-content,
	.feature-content,
	.benefits-content {
		width: 430px;
	}

	.static-content {
		width: 40%;
		max-width: 430px;
	}

	.plan-addons {
		margin-top: 160px;
		margin-bottom: 90px;
	}

	.addons-row {
		flex-direction: row;
	}

	.plan-addons.addon .addons-row > div {
		flex-basis: 630px;
	}

	.plan-addons.addons .addons-row > div {
		flex: 0 1 30%; /* IE 10 */
		margin: 2.5% 0;
	}

	.plan-addons.addons .addons-row .center-addon {
		order: 0;
		margin: 0 2%;
	}
}

@media screen and (min-width: 980px) {
	.coverage,
	.plan-features,
	.plan-benefits,
	.plan-type-static {
		min-height: 440px;
		padding: 0 33px;
	}
}

/* IE 10+ */
@media all and (-ms-high-contrast: active) and (min-width: 768px), all and (-ms-high-contrast: none) and (min-width: 768px) {
	.coverage,
	.plan-features,
	.plan-benefits,
	.plan-type-static {
		height: 1px;
	}
}

/* Type Carousels */
.plan-type-carousel .blue-box {
	position: relative;
	padding: 30px 35px;
}

.plan-type-carousel h2,
.plan-type-carousel .carousel-paragraph {
	margin-bottom: 30px;
	text-align: center;
}

.plan-type-carousel .carousel-paragraph,
.type-carousel {
	width: 100%;
}

.plan-type-carousel .carousel-switch {
	position: absolute;
    left: 0;
    right: 0;
    margin-left: -30px;
    margin-right: -30px;
    padding: 0 30px;
    background: linear-gradient(to right, transparent 0%, #fff 30px, #dae1e6 calc(100% - 30px), transparent 100%);
}

/* IE 10+ */
@media all and (-ms-high-contrast: active), all and (-ms-high-contrast: none) {
	.plan-type-carousel .carousel-switch {
		background: linear-gradient(to right, #dae1e6 0%, #fff 2%, #dae1e6 98%, #fff 100%);
		box-shadow: 5px 5px 10px rgba(0,0,0,0.4);
	}
}

.plan-type-carousel .switch-wrapper {
	display: flex;
	position: relative;
}

.plan-type-carousel .switch-shadow {
	position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    filter: drop-shadow(0 5px 5px rgba(0, 0, 0, 0.5));
    background-color: #fff;
    z-index: -1;
}

.plan-type-carousel .carousel-switch button {
	flex: 0 1 50%; /* IE 10 */
	height: 50px;
	color: #162958;
	border: none;
	box-shadow: none;
}

.plan-type-carousel .carousel-switch button:first-child {
	border-right: 1px solid #4773BA;
}

.plan-type-carousel .carousel-switch button[aria-selected=true] span {
	border-bottom: 4px solid #4773BA;
}

.plan-type-carousel .carousel-switch button:hover {
	color: #FFF;
	background-color: rgba(44, 72, 120, 0.8);
}

.plan-type-carousel .carousel-switch button[aria-selected=true]:hover span {
	border-bottom-color: #FFF;
}

.plan-type-carousels .type-carousel {
	margin-top: 110px;
}

/* equal height slides on mobile */
.type-carousel .slick-track {
	display: flex;
}

.type-carousel .slick-slide {
	height: auto;
}

.type-carousel .slick-slide > div,
.type-carousel .carousel-slide,
.type-carousel .carousel-content {
	height: 100%;
}

.type-carousel .carousel-copy {
	flex: 0 1 auto; /* IE 10 */
}

/* Slick Arrows */
.type-carousel .slick-prev,
.type-carousel .slick-next {
    font-size: 0;
    line-height: 0;

    position: absolute;
    top: 50%;

    display: block;

	width: 16px;
	height: 32px;
    padding: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);

    cursor: pointer;

    color: transparent;
    border: none;
    background: transparent;
}
.type-carousel .slick-prev:hover,
.type-carousel .slick-prev:focus,
.type-carousel .slick-next:hover,
.type-carousel .slick-next:focus {
    color: transparent;
    background: transparent;
}
.type-carousel .slick-prev:hover:before,
.type-carousel .slick-prev:focus:before,
.type-carousel .slick-next:hover:before,
.type-carousel .slick-next:focus:before {
    opacity: 1;
}
.type-carousel .slick-prev.slick-disabled,
.type-carousel .slick-next.slick-disabled {
    cursor: default;
}
.type-carousel .slick-prev.slick-disabled:before,
.type-carousel .slick-next.slick-disabled:before {
    opacity: .25;
}

.type-carousel .slick-prev:before,
.type-carousel .slick-next:before {
    font-size: 1rem;
    line-height: 1;

    opacity: .75;
}

.type-carousel .slick-prev:before,
.type-carousel .slick-next:before {
    content: '';
	display: block;
	width: 100%;
	height: 100%;
	background-position: center center;
    background-repeat: no-repeat;
	background-size: contain;
}

.type-carousel .slick-prev {
    left: -25px;
}
.type-carousel .slick-prev:before {
	background-image: url('data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJMYXllcl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCINCgkgd2lkdGg9IjU0LjFweCIgaGVpZ2h0PSIxMDEuMXB4IiB2aWV3Qm94PSIwIDAgNTQuMSAxMDEuMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNTQuMSAxMDEuMTsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4NCgkuc3Qwe2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NTtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9DQo8L3N0eWxlPg0KPHBvbHlsaW5lIGNsYXNzPSJzdDAiIHBvaW50cz0iNTIuMywxLjggMy41LDUwLjYgNTIuMyw5OS40ICIvPg0KPC9zdmc+DQo=');
}

.type-carousel .slick-next {
    right: -25px;
}
.type-carousel .slick-next:before {
    background-image: url('data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJMYXllcl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCINCgkgd2lkdGg9IjU0LjFweCIgaGVpZ2h0PSIxMDEuMXB4IiB2aWV3Qm94PSIwIDAgNTQuMSAxMDEuMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNTQuMSAxMDEuMTsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4NCgkuc3Qwe2ZpbGw6bm9uZTtzdHJva2U6I0ZGRkZGRjtzdHJva2Utd2lkdGg6NTtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9DQo8L3N0eWxlPg0KPHBvbHlsaW5lIGNsYXNzPSJzdDAiIHBvaW50cz0iMS44LDk5LjQgNTAuNiw1MC42IDEuOCwxLjggIi8+DQo8L3N2Zz4NCg==');
}

/* Slick Dots */
.type-carousel.slick-dotted.slick-slider {
    margin-bottom: 60px;
}

.type-carousel .slick-dots {
    position: absolute;
    bottom: -37px;

    display: block;

    width: 100%;
    padding: 0;
    margin: 0;

    list-style: none;

    text-align: center;
}
.type-carousel .slick-dots li {
    position: relative;

    display: inline-block;

    width: 20px;
    height: 20px;
    margin: 0;
    padding: 0;
}
.type-carousel .slick-dots li button {
    font-size: 0;
    line-height: 0;

    display: block;

    width: 100%;
    height: 100%;
    padding: 0;

    cursor: pointer;

    color: transparent;
    border: 0;
    background: transparent;
}
.type-carousel .slick-dots li button:hover:before,
.type-carousel .slick-dots li button:focus:before {
    opacity: 1;
}
.type-carousel .slick-dots li button:before {
    font-size: 22px;
    line-height: 18px;

    position: absolute;
    top: 0;
    left: 0;

    width: 20px;
    height: 20px;

    content: '\25CB';
    text-align: center;

	opacity: .75;
    color: #fff;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.type-carousel .slick-dots li.slick-active button:before {
	content: '\25CF';
}

.type-carousel .carousel-slide {
	position: relative;
	padding-top: 34.5vw;
	background-position: center top;
	background-repeat: no-repeat;
	background-size: contain;
}

@media screen and (min-width: 480px) {
	.type-carousel .carousel-slide {
		padding-top: 40vw;
	}
}

.type-carousel .carousel-content {
	display: flex;
    flex-direction: column;
    justify-content: space-between;
	width: 100.1%; /* round-off error */
	padding: 24px 18px;
	color: #FFF;
	background: linear-gradient(135deg, rgba(22, 41, 88, 1) 0, rgba(44, 72, 120, 1) 100%);
}

.type-carousel .carousel-video {
	margin-top: 16px;
}

.type-carousel .carousel-video a {
	width: 100%;
}

@media screen and (min-width: 768px) {
	.plan-type-carousel .blue-box {
		padding: 40px 12.7%;
	}

	.plan-type-carousel .carousel-paragraph,
	.type-carousel {
		max-width: 785px;
		margin-right: auto;
		margin-left: auto;
	}

	.type-carousel .slick-prev,
	.type-carousel .slick-next {
		width: 25px;
		height: 50px;
	}

	.type-carousel .slick-prev {
		left: -10%;
	}
	.type-carousel .slick-next {
		right: -10%;
	}

	.type-carousel .slick-slide {
		height: initial;
	}

	.type-carousel .slick-slide > div,
	.type-carousel .carousel-slide,
	.type-carousel .carousel-content {
		height: auto;
	}

	.type-carousel .carousel-slide {
		height: 420px;
		padding-top: 0;
		background-size: cover;
	}

	.type-carousel .carousel-content {
		flex-direction: row;
		align-items: center;
		position: absolute;
		bottom: 0;
		left: 0;
		min-height: 145px;
		padding: 3.5% 5%;
		border-bottom: 1px solid rgba(22, 41, 88, 0.8);  /* cover round-off error */
		background: linear-gradient(135deg, rgba(22, 41, 88, 0.8) 0, rgba(44, 72, 120, 0.8) 100%);
	}

	.type-carousel .carousel-video {
		margin-top: 0;
		margin-left: 30px;
		flex: 0 0 auto;
	}
}

/* blue trapezoids */
.plan-type-carousel,
.plan-addons {
	position: relative;
}

.plan-type-carousel .trapezoid-right {
	display: none;
}

.plan-features .trapezoid-right {
	display: none;
}

.plan-benefits  .trapezoid-left {
	display: none;
}

.plan-addons.addon .trapezoid-right {
	display: none;
}

.plan-addons.addons .trapezoid-right {
    left: -15px;
    right: -15px;
	width: 105%;
    min-width: 360px;
    height: 100%;
    background-size: 100% 50%;
}

@media screen and (min-width: 480px) {
	.plan-features .trapezoid-right {
		display: block;
		top: -50px;
		right: -150px;
		width: 0;
		height: 100%;
		padding-right: 200%;
		background-position: right top;
	}

	.plan-benefits .trapezoid-left {
		display: block;
		top: -20px;
		left: -300px;
		width: 0;
		height: 150%;
		padding-left: 200%;
		background-position: left top;
	}
}

@media screen and (min-width: 768px) {
	.plan-type-carousel .trapezoid-right {
		display: block;
		width: 1000px;
		height: 811px;
		background-position: right top;
		top: -400px;
		left: 66%;
	}

	.plan-features .trapezoid-right {
		top: -75px;
		right: 15px;
		width: 80%;
		max-width: 762px;
		height: 0;
		padding-right: 0;
		padding-bottom: 60%;
	}

	.plan-benefits  .trapezoid-left {
		top: -10%;
		left: -300px;
		width: 80%;
		max-width: 762px;
		height: 0;
		padding-bottom: 60%;
		padding-left: 0;
	}

	.plan-addons.addon .trapezoid-right,
	.plan-addons.addons .trapezoid-right {
		display: block;
		top: -130px;
		right: auto;
		left: 61.666%;
		width: 756px;
		height: 613px;
		min-width: 0;
		background-size: contain;
	}
}
