/*
Theme Name: House Plans Online
Theme URI: https://www.redspotdesign.com/
Author: Redspot Design
Author URI: https://wordpress.org/
Description: A theme for WordPress 5.
Requires at least: WordPress 4.9.6
Version: 1.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: wp5default
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

House Plans Online is based on Underscores https://underscores.me/, (C) 2012-2018 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

:root {
	--white: #FFFFFF;
	--darkblue: #013281;
	--blue: #1D84FE;
	--red: #BF0832;
	--black: #181818;
	--lightblue: #EEF6FF;
	--lightgray: #EEEEEE;
	--gray: #D6D6D6;
}

html {
	box-sizing: border-box;
	-webkit-text-size-adjust: 100%;
}

.red {
	color: var(--red);
}

.blue {
	color: var(--blue);
}

*,
::before,
::after {
	box-sizing: inherit;
}

body {
	margin: 0 auto;
	width: 100%;
	min-width: 320px;
}

.grecaptcha-badge {
	bottom: 70px !important;
}

img {
	height: auto;
	max-width: 100%;
}

p:first-of-type {
	margin-top: 0;
}

p:last-of-type {
	margin-bottom: 0;
}

/* Custom Styles */

/* Buttons */
.elementor-button-wrapper > .elementor-button {
	min-width: 185px !important;
}

.button-small .elementor-button-wrapper > .elementor-button {
	min-width: unset !important;
}

.elementor-button-wrapper > .elementor-button#elementor-menu-cart__toggle_button {
	min-width: unset !important;
	padding: 0 !important;
	background: none !important;
	border: none !important
}

.elementor-widget-icon {
	line-height: 1;
}

.elementor-widget-image .elementor-widget-container {
	line-height: 0;
}

@media screen and (max-width: 1024px) {
	.elementor-button-wrapper > .elementor-button {
		min-width: 150px !important;
	}
}

/* Header */
#site-header {
	position: fixed !important;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 9999;
}

body.elementor-editor-active #site-header {
	position: relative !important;
	background: var(--lightgray);
}

#site-header .search-form input[id*=search] {
	width: 100%;
}

#site-header ul.elementor-nav-menu--dropdown a, 
#site-header ul.elementor-nav-menu--dropdown a:focus,
#site-header ul.elementor-nav-menu--dropdown a:hover {
	border-inline-start: 0;
}

#site-header ul.sub-menu {
	min-width: 200px !important;
	left: 50% !important;
	padding: 10px;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	-o-transform: translateX(-50%);
}

#site-header ul.sub-menu li.menu-item a {
	white-space: pre-wrap;
}

@media screen and (max-width: 1024px) {
	#site-header ul.sub-menu {
		min-width: 200px !important;
		left: 0 !important;
		transform: translateX(0);
		-webkit-transform: translateX(0);
		-moz-transform: translateX(0);
		-ms-transform: translateX(0);
		-o-transform: translateX(0);
	}
	#site-header ul.sub-menu li.menu-item a {
		justify-content: flex-start;
		white-space: pre-wrap;
		text-align: left;
		padding-left: 20px;
	}
}

/* Sticky Header */
#site-header#sticky {
	background: var(--white);
	padding: 10px;
	border-top: 5px solid var(--darkblue);
}

/* WooCommerce */

/* Cart - Lightbox */
.elementor-menu-cart__container.elementor-lightbox dl.variation dt,
.elementor-menu-cart__container.elementor-lightbox dl.variation dd {
	grid-column: 1 / -1;
	margin-inline-start: 0;
}

/* Product Taxonomy - Style */

.style-image img {
	object-fit: cover;
	object-position: center;
}

/* Woocommerce - Single Product / Plan  */

/* Plan - Share */
.copy-link {
	cursor: pointer;
}

.copy-link small.copied {
	display: none;
}

/* Plan - Wishlist */
.yith-add-to-wishlist-button-block {
	width: 100%;
}

a.yith-wcwl-add-to-wishlist-button {
	flex-direction: column !important;
	gap: 5px !important;
	width: 100%;
}

a.yith-wcwl-add-to-wishlist-button span.yith-wcwl-add-to-wishlist-button__label {
	font-family: 'Arimo', sans-serif;
	font-size: 14px;
	color: var(--blue);
	line-height: 1;
}

/* Plan - Swiper */
.swiper {
	overflow: visible;
}
.swiper-slide {
	width: auto;
	box-sizing: border-box;
}

.swiper-wrapper {
	transition-timing-function: ease;
}

.dialog-lightbox-widget .swiper-wrapper {
	z-index: -1;
}

/* Plan - Gallery */
.gallery-main-slider {
	margin-bottom: 10px;
}

.gallery-main-slider .swiper-slide {
	padding: 0 40px;
}

.gallery-main-slider .swiper-slide img {
	aspect-ratio: 16 / 9;
	object-fit: contain;
	object-position: center;
	display: block;
	width: 100%;
	height: auto;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	background-color: #F5F8FB;
	-webkit-user-select: none; /* Safari */
    -moz-user-select: none; /* Firefox */
    -ms-user-select: none; /* IE 10+ */
    user-select: none; /* Standard syntax */
}

.gallery-main-slider .swiper-button-next {
	right: 0;
}

.gallery-main-slider .swiper-button-prev {
	left: 0;
}

.gallery-thumb-slider {
	padding: 0 40px !important;
}

/* .gallery-thumb-slider .swiper-button-prev,
.gallery-thumb-slider .swiper-button-next {
	display: none;
} */

.gallery-thumb-slider .swiper-slide img {
	aspect-ratio: 1 / 1;
	object-fit: cover;
	object-position: center;
	display: block;
	width: 100%;
	height: 200px;
	cursor: pointer;
	border: 2px solid rgba(0,0,0,0);
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	-webkit-user-select: none; /* Safari */
    -moz-user-select: none; /* Firefox */
    -ms-user-select: none; /* IE 10+ */
    user-select: none; /* Standard syntax */
}

.gallery-thumb-slider .swiper-slide.swiper-slide-thumb-active img,
.gallery-thumb-slider .swiper-slide img:hover {
	border: 2px solid var(--blue);
}

@media screen and (max-width: 1024px) {
	.gallery-thumb-slider .swiper-slide img {
		height: 100px;
	}
}

/* Force Elementor lightbox navigation arrows to show */
.elementor-slideshow--ui-hidden .elementor-swiper-button {
	display: flex !important;
	align-items: center;
	justify-content: center;
	opacity: 1 !important;
	pointer-events: auto;
	z-index: 9999;
}

.elementor-swiper-button {
	color: white;
	font-size: 2rem;
	width: 50px;
	height: 100%;
	top: 0;
	transform: none !important;
	-webkit-transform: none !important;
	-moz-transform: none !important;
	-ms-transform: none !important;
	-o-transform: none !important;
}

.elementor-swiper-button-prev {
	left: 0;
	position: absolute;
}

.elementor-swiper-button-next {
	right: 0;
	position: absolute;
}

/* Plan - Floor Plans */
.floor-plans-main-slider {
	margin-bottom: 10px;
}

/* .floor-plans-thumb-slider .swiper-button-prev,
.floor-plans-thumb-slider .swiper-button-next {
	display: none;
} */

.floor-plans-main-slider .swiper-slide img {
	aspect-ratio: 4 / 3;
	object-fit: contain;
	object-position: center;
	display: block;
	width: 100%;
	height: auto;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	-webkit-user-select: none; /* Safari */
    -moz-user-select: none; /* Firefox */
    -ms-user-select: none; /* IE 10+ */
    user-select: none; /* Standard syntax */
}

.floor-plans-thumb-slider .swiper-slide img {
	aspect-ratio: 1 / 1;
	object-fit: contain;
	object-position: center;
	display: block;
	width: 100%;
	height: 200px;
	cursor: pointer;
	border: 2px solid rgba(0,0,0,0);
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	-webkit-user-select: none; /* Safari */
    -moz-user-select: none; /* Firefox */
    -ms-user-select: none; /* IE 10+ */
    user-select: none; /* Standard syntax */
}

.floor-plans-thumb-slider .swiper-slide.swiper-slide-thumb-active img,
.floor-plans-thumb-slider .swiper-slide img:hover {
	border: 2px solid var(--blue);
}

@media screen and (max-width: 1024px) {
	.floor-plans-thumb-slider .swiper-slide img {
		height: 100px;
	}
}

/* Plan - Unique Features */
.unique-feature {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-wrap: wrap;
	border-bottom: 1px solid var(--gray);
	padding-bottom: 10px;
	margin-bottom: 10px;
}

.unique-feature:last-of-type {
	border-bottom: 0;
	padding-bottom: 0;
	margin-bottom: 0;
}

.unique-feature .feature-title {
	flex-basis: 35%;
}

.unique-feature .feature-title h3 {
	line-height: 1.2;
	font-size: 13px;
	font-weight: 400;
	text-transform: uppercase;
	color: #6680AC;
	margin: 0;
}

.unique-feature .feature-list {
	flex-basis: 60%;
}

.unique-feature .feature-list ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.unique-feature .feature-list ul li {
	line-height: 1.2;
	margin-bottom: 5px;
    font-size: 14px;
}

/* Plan - Specific Details */
.details-list ul li span.elementor-icon-list-text {
	display: flex !important;
	justify-content: space-between;
	align-items: flex-end;
	width: 100%;
}

.details-list ul li small {
	font-size: 13px;
}

.details-list ul li strong {
	color: var(--black);
}

.details-list .custom-yesno-field {
	display: block;
	font-size: 13px;
	width: 100%;
}

.plan-collections-list ul li span,
.plan-styles-list ul li span  {
	display: flex !important;
    flex-direction: column;
    align-items: flex-start;
	row-gap: 5px;
}

.plan-collections-list ul li a,
.plan-styles-list ul li a {
	display: inline-block !important;
	border: 1px solid var(--blue);
	padding: 10px;
}

/* Plan - Modify Plan Popup */
.modify-popup-number h2 {
	text-align: center;
    padding: 15px;
	background-color: var(--red);
	width: 50px;
	height: 50px;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	-o-border-radius: 50%;
}

#form-field-field_modify_plan_number {
	border: 0;
	background-color: none !important;
	pointer-events: none;
}

/* Plan - Product Add Ons */
.wc-pao-addon-container {
	padding-bottom: 20px;
	margin-bottom: 20px;
	border-bottom: 1px solid var(--gray);
}

h2.wc-pao-addon-name {
	font-size: 20px !important;
	color: #6681AC;
}

h2.wc-pao-addon-name .number {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	vertical-align: middle;
	width: 30px;
	height: 30px;
	background-color: var(--red);
	color: var(--white);
	margin-right: 10px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
}

.woocommerce .wc-pao-addon .wc-pao-addon-wrap > div {
	position: relative;
}

.woocommerce .wc-pao-addon .wc-pao-addon-wrap > div > input[type="checkbox"],
.woocommerce .wc-pao-addon .wc-pao-addon-wrap > div > input[type="radio"] {
	position: absolute;
	top: 10px;
	left: 2.5px;
	accent-color: var(--blue);
}

.woocommerce .wc-pao-addon .wc-pao-addon-wrap label {
	display: block;
	position: relative;
	font-size: 20px;
	font-weight: 700;
	color: var(--blue);
	padding-left: 40px;
}

.woocommerce .wc-pao-addon .wc-pao-addon-wrap label .wc-pao-addon-price {
	position: absolute;
	top: 0;
	right: 0;
	background: var(--white);
	color: var(--red);
	padding: 10px;
	font-size: 16px;
	line-height: 1;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
}

.custom-addon-description {
	font-size: 18px; 
	font-weight: 400;
	line-height: 1.4em;
	color: var(--black);
}

.woocommerce div.product-addon-totals .wc-pao-subtotal-line {
	justify-content: space-between;
	align-items: center;
	font-size: 16px;
	font-weight: 700;
}

.woocommerce div.product-addon-totals .wc-pao-subtotal-line p.price {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	color: var(--black);
}

.woocommerce div.product-addon-totals .wc-pao-subtotal-line p.price span.amount {
	font-size: 30px;
}

/* Plan - Recently Viewed Products */
.plan-recently-viewed-products ul.products li.product {
	border: 1px solid #EEEEEE;
	border-radius: 15px;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
	-ms-border-radius: 15px;
	-o-border-radius: 15px;
}

.plan-recently-viewed-products ul.products li.product img {
	max-height: 240px;
	border-top-left-radius: 15px;
	border-top-right-radius: 15px;
	margin-bottom: 0 !important;
}

.plan-recently-viewed-products ul.products li.product h2 {
	padding: 20px !important;
	color: var(--black);
	font-size: 18px !important;
}

.plan-recently-viewed-products ul.products li.product span.price,
.plan-recently-viewed-products ul.products li.product a.add_to_cart_button,
.plan-recently-viewed-products ul.products li.product .yith-add-to-wishlist-button-block {
	display: none;
}

@media screen and (max-width: 767px) {
	.plan-recently-viewed-products ul.products li.product {
		width: 100% !important;
		margin: 0 0 20px !important;
	}

	.plan-recently-viewed-products ul.products li.product img {
		object-fit: cover;
		object-position: center;
	}
}

/* WooCommerce - Cart */
.woocommerce-cart .woocommerce-cart-form thead tr th.product-price,
.woocommerce-cart .woocommerce-cart-form tbody tr td.product-price {
	display: none;
}

/* Woocommerce - Checkout  */
.woocommerce-checkout form.woocommerce-checkout #billing_termsofpurchaseparagraph_field label p {
	font-size: 14px !important;
	line-height: 1.2;
	color: var(--black);
}

.woocommerce-checkout form.woocommerce-checkout #billing_builderorrealestateagent_field,
.woocommerce-checkout form.woocommerce-checkout #billing_termsagree_field {
	padding: 0 !important;
	border: 0 !important;
}

#order_review dl.variation dt {
	display: block;
	margin: 0;
	float: none;
}

#order_review dl.variation dd {
	display: block;
	margin: 0;
	float: none;
	color: var(--blue);
}

ul.payment_methods li {
	padding: 10px 0;
}

button#place_order {
	margin-top: 20px;
}

/* Wishlist Page */
.woocommerce-wishlist .wishlist_table {
	border: 1px solid var(--gray) !important;
	border-collapse: collapse !important;
	border-radius: 15px !important;
	-webkit-border-radius: 15px !important;
	-moz-border-radius: 15px !important;
	-ms-border-radius: 15px !important;
	-o-border-radius: 15px !important;
}

.woocommerce-wishlist .wishlist_table thead tr th {
	background-color: var(--white) !important;
}

.woocommerce-wishlist .yith_wcwl_wishlist_footer,
.woocommerce-wishlist .wishlist_table thead tr th.product-price,
.woocommerce-wishlist .wishlist_table tbody tr td.product-price,
.woocommerce-wishlist .wishlist_table tbody tr td.product-name a br,
.woocommerce-wishlist .wishlist-page-links,
.woocommerce-wishlist .wishlist_table br {
	display: none;
}

/* Wishlist Page - Mobile Responsive View */
.woocommerce-wishlist ul.wishlist_table.responsive.mobile {
	padding: 30px;
	margin: 10px 0;
}

.woocommerce-wishlist ul.wishlist_table.responsive.mobile li {
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-bottom: 1px solid var(--gray);
}

.woocommerce-wishlist ul.wishlist_table.responsive.mobile li .item-wrapper {
	width: 50%;
	display: flex;
    justify-content: space-between;
    align-items: center;
}

.woocommerce-wishlist ul.wishlist_table.responsive.mobile li .item-wrapper a > br {
	display: none;
}

.woocommerce-wishlist ul.wishlist_table.responsive.mobile li .item-wrapper .product-name h3 {
	line-height: 1;
	margin: 0;
}

.woocommerce-wishlist ul.wishlist_table.responsive.mobile li .additional-info-wrapper {
	width: 50%;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.woocommerce-wishlist ul.wishlist_table.responsive.mobile li .additional-info-wrapper .product-add-to-cart .button {
	padding: 0 !important;
}

.woocommerce-wishlist ul.wishlist_table.responsive.mobile li .item-wrapper .item-details .item-details-table {
	display: none;
}

.wishlist_table.mobile li .additional-info-wrapper .product-add-to-cart, 
.wishlist_table.mobile li .additional-info-wrapper .move-to-another-wishlist {
	margin-bottom: 0;
}

@media screen and (max-width: 767px) {
	.woocommerce-wishlist ul.wishlist_table.responsive.mobile li {
		flex-wrap: wrap;
	}
	.woocommerce-wishlist ul.wishlist_table.responsive.mobile li .item-wrapper,
	.woocommerce-wishlist ul.wishlist_table.responsive.mobile li .additional-info-wrapper {
		width: 100%;
		flex-wrap: wrap;
	}

}

/* Blogs Page */

/* Filter Everything Pro OVERRIDES */
.widget_wpc_filters_widget .wpc-filters-widget-wrapper {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 15px;
}

.widget_wpc_filters_widget .wpc-filters-widget-wrapper .wpc-instead-of-posts-found {
	width: 100%;
}

.widget_wpc_filters_widget .wpc-filters-widget-wrapper .wpc-filter-layout-search-field {
	width: 100%;
	margin: 0;
}

.widget_wpc_filters_widget .wpc-filters-widget-wrapper .wpc-filter-category {
	width: 100%;
	margin: 0;
}

.widget_wpc_filters_widget .wpc-filters-widget-wrapper .wpc-filter-category .wpc-filter-content {
	width: 100%;
	margin: 0;
}

.widget_wpc_filters_widget .wpc-filters-widget-wrapper .wpc-filter-category .widget-title {
	margin-bottom: 0;
}

.widget_wpc_filters_widget .wpc-filters-widget-wrapper .wpc-filter-category select {
	padding: 15px;
	width: 100%;
	border: 1px solid #DDDDDD;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
	margin-bottom: 0;
}

.widget_wpc_filters_widget .wpc-filters-widget-wrapper .wpc-filter-layout-submit-button {
	width: 100%;
	margin: 0;
}

/* Blogs Category Filter */
ul.wpc-filters-ul-list li {
	width: 100% !important;
	margin: 0 !important;
}

ul.wpc-filters-ul-list li .wpc-term-item-content-wrapper label {
	display: block;
	width: 100%;
	border: 0 !important;
	border-bottom: 1px solid #F5F8FB !important;
	border-radius: 0 !important;
	-webkit-border-radius: 0 !important;
	-moz-border-radius: 0 !important;
	-ms-border-radius: 0 !important;
	-o-border-radius: 0 !important;
}

ul.wpc-filters-ul-list li .wpc-term-item-content-wrapper label > span {
	padding: 15px !important;
	border-radius: 0 !important;
	-webkit-border-radius: 0 !important;
	-moz-border-radius: 0 !important;
	-ms-border-radius: 0 !important;
	-o-border-radius: 0 !important;
}

ul.wpc-filters-ul-list li .wpc-term-item-content-wrapper label > span a {
	color: var(--black);
}

/* Blogs Loop */
.blogs-archive-loop-grid .elementor-posts .elementor-post__card a.elementor-post__thumbnail__link {
	order: 1;
	margin-bottom: 0;
}

.blogs-archive-loop-grid .elementor-posts .elementor-post__card .elementor-post__text {
	order: 3;
}

.blogs-archive-loop-grid .elementor-posts .elementor-post__card .elementor-post__meta-data {
	order: 2;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 15px;
}

.blogs-archive-loop-grid .elementor-posts .elementor-post__card .elementor-post__meta-data span.elementor-post-author {
	order: 2;
	color: var(--blue);
	font-weight: 700;
}

.blogs-archive-loop-grid .elementor-posts .elementor-post__card .elementor-post__meta-data span.elementor-post-date {
	order: 1;
}

.blogs-archive-loop-grid nav.elementor-pagination a.page-numbers {
	background: #FFFFFF;
	padding: 10px 15px;
	border: 1px solid #D6D6D6;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
}

.blogs-archive-loop-grid nav.elementor-pagination span.page-numbers.current,
.blogs-archive-loop-grid nav.elementor-pagination a.page-numbers:hover {
	background: #FFFFFF;
	border: 1px solid var(--blue);
	padding: 10px 15px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
}

.blogs-archive-loop-grid nav.elementor-pagination span.page-numbers.prev,
.blogs-archive-loop-grid nav.elementor-pagination span.page-numbers.next {
	background: #F5F8FB;
	color: #A4A4A4;
	padding: 10px 15px;
	border: 1px solid #F5F8FB;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
}

.blogs-archive-loop-grid nav.elementor-pagination a.page-numbers.prev,
.blogs-archive-loop-grid nav.elementor-pagination a.page-numbers.next {
	background: var(--blue);
	color: #FFFFFF !important;
	padding: 10px 15px;
	border: 1px solid #D6D6D6;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
}

@media screen and (max-width: 767px) {
	.author-box .elementor-author-box {
		flex-wrap: wrap;
	}
	.author-box .elementor-author-box > div {
		flex-basis: 100%;
	}
}

/* --- Print-friendly layout overrides --- */
@media print {

  /* Reset Elementor / WooCommerce layout quirks */
  * {
    /* background: transparent !important; */
    box-shadow: none !important;
  }

  body, html {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* General container fix */
  .elementor-section,
  .elementor-container,
  .elementor-column,
  .elementor-widget {
    position: static !important;
    float: none !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Image scaling */
  img {
    max-width: 100% !important;
    height: auto !important;
    display: block !important;
    page-break-inside: avoid !important;
  }

  /* Avoid overlapping text */
  p, h1, h2, h3, h4, h5, h6 {
    line-height: 1.4em !important;
    page-break-inside: avoid !important;
    margin: 0 0 10px 0 !important;
  }

  /* Remove headers/footers if browser supports it */
  @page {
    margin: 10mm;
  }
}