/* ==========================================================================
   Nest — global tokens and shared components (reference: Sudes Nest
   main.scss.css / index.scss.css / breadcrumb_style.scss.css). Values are the
   reference values with 1rem = 10px. Breakpoints: 1200 1199 1024 992 991 768
   767 480 350.
   Sections owned elsewhere: chrome (header/footer/floating) is appended by
   assets/css/header.css; product card lives here because every list uses it.
   ========================================================================== */

/* --------------------------------------------------------------------------
   A.1 Tokens, base, layout
   -------------------------------------------------------------------------- */
:root {
	--mainColor: #053024;
	--subColor: #fdc97d;
	--supColor: #fdc97d;
	--textColor: #333333;
	--hover: #d0a73c;
	--price: #d31100;
	--nest-font: 'Montserrat', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	--nest-font-alt: 'Roboto Slab', serif;
}

html {
	overflow-x: hidden;
}

body {
	background: #f1e8d7;
	word-break: break-word;
	font-family: var(--nest-font);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.7;
	color: var(--textColor);
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
}

input,
textarea,
button,
select {
	font-family: var(--nest-font);
	line-height: 1.7;
	color: var(--textColor);
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
	line-height: 1.4;
	font-family: var(--nest-font);
	color: var(--textColor);
	letter-spacing: 0;
	text-transform: none;
}

p {
	margin: 0 0 15px;
}

a {
	color: var(--textColor);
	text-decoration: none;
}

a:hover {
	color: var(--hover);
	text-decoration: none;
	cursor: pointer;
}

a:focus,
button:focus,
input:focus,
textarea:focus,
select:focus {
	outline: none;
	box-shadow: none;
}

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

/* Container used by our own markup. Flatsome's global .container/site_width
   stay at 1349px and are never restyled. */
.nest-container {
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
	padding: 0 14px;
}

/* UX Blocks use [section class="nest-section"] whose .section-content gets the
   same rule; rows inside get a 10px gutter (7px ≤480). */
.nest-section {
	padding: 30px 0;
	display: block;
	min-height: 0;
}

.nest-section > .section-content {
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
	padding: 0 14px;
}

.nest-section > .section-content > .row,
.nest-section .row.nest-row {
	max-width: none;
	margin: 0 -10px;
}

.nest-section > .section-content > .row > .col,
.nest-section .row.nest-row > .col {
	padding: 0 10px;
}

@media (min-width: 1200px) {
	.nest-container,
	.nest-section > .section-content {
		max-width: 1349px;
		padding: 0 45px;
	}
}

@media (max-width: 767px) {
	.nest-section {
		padding: 25px 0;
	}
}

@media (max-width: 480px) {
	.nest-section > .section-content > .row,
	.nest-section .row.nest-row {
		margin: 0 -14px;
	}

	.nest-section > .section-content > .row > .col,
	.nest-section .row.nest-row > .col {
		padding: 0 7px;
	}
}

/* Flatsome paints #wrapper/#main white; the reference shows the cream body
   background around every card. No extra page padding either. */
#wrapper,
#main {
	background-color: transparent;
}

.page-wrapper {
	padding-top: 0;
	padding-bottom: 0;
}

/* --------------------------------------------------------------------------
   A.6 Buttons (reference .btn.btn-primary / .frame / .btn-extent / .btn-circle)
   -------------------------------------------------------------------------- */
.nest-btn,
.nest-btn:visited {
	position: relative;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	height: 40px;
	line-height: 40px;
	background: var(--mainColor);
	color: #fff;
	text-decoration: none;
	font-family: var(--nest-font);
	font-size: 16px;
	font-weight: 600;
	padding: 0 20px;
	margin: 0;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	text-transform: none;
	letter-spacing: 0;
	cursor: pointer;
	transition-duration: .3s;
	-webkit-appearance: none;
	appearance: none;
}

.nest-btn::before {
	content: "";
	position: absolute;
	display: block;
	top: 4px;
	left: 4px;
	right: 4px;
	bottom: 4px;
	border: 1px solid #fff;
	opacity: .5;
	transition: opacity .3s cubic-bezier(.37, .01, 0, .98);
	z-index: 1;
	pointer-events: none;
}

.nest-btn:hover,
.nest-btn:focus {
	background: var(--subColor);
	color: var(--mainColor);
}

.nest-btn:hover::before {
	border: 1px solid var(--mainColor);
}

.nest-btn--frame {
	padding: 0 30px;
	box-shadow: #333 0 15px 20px -15px;
}

.nest-btn--frame::before {
	opacity: 1;
	border-left: 0;
	border-right: 0;
}

.nest-btn__deco {
	position: absolute;
	width: 14px;
	height: 32px;
	margin: 0;
	top: 4px;
}

.nest-btn__deco--left {
	left: 4px;
}

.nest-btn__deco--right {
	right: 4px;
	transform: scaleX(-100%);
}

.nest-btn--frame:hover .nest-btn__deco path {
	stroke: var(--mainColor);
}

.nest-btn--extent,
.nest-btn--extent:visited {
	background: var(--subColor);
	color: var(--mainColor);
}

.nest-btn--extent::before {
	border-color: var(--mainColor);
	z-index: 10;
}

.nest-btn--extent:hover,
.nest-btn--extent:focus {
	background: var(--hover);
	color: #fff;
}

.nest-btn--extent:hover::before {
	border: 1px solid #fff;
}

.nest-btn--extent .nest-btn__deco path {
	stroke: var(--mainColor);
}

.nest-btn--extent:hover .nest-btn__deco path {
	stroke: #fff;
}

.nest-btn--circle {
	border-radius: 50%;
	padding: 0;
	width: 36px;
	height: 36px;
	line-height: 36px;
}

.nest-btn--sm {
	height: 36px;
	line-height: 36px;
	padding: 0 16px;
	font-size: 14px;
}

.nest-btn--block {
	width: 100%;
}

.nest-btn svg:not(.nest-btn__deco) {
	width: 18px;
	height: 18px;
	flex: none;
}

.nest-btn > * + *:not(.nest-btn__deco) {
	margin-left: 6px;
}

/* --------------------------------------------------------------------------
   A.6 Form controls
   -------------------------------------------------------------------------- */
input[type="text"],
input[type="search"],
input[type="password"],
input[type="email"],
input[type="file"],
input[type="number"],
input[type="tel"],
input[type="date"],
input[type="url"],
textarea,
select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: 1px solid #e9e9e9;
	color: #1c1c1c;
	margin: 0 0 19px;
	min-height: 40px;
	height: 40px;
	padding: 0 20px;
	border-radius: 0;
	width: 100%;
	max-width: 100%;
	display: block;
	background: #fff;
	box-shadow: none;
	font-size: 14px;
	line-height: 1.7;
	transition: none;
}

input[type="text"]:focus,
input[type="search"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="date"]:focus,
textarea:focus,
select:focus {
	outline: none;
	box-shadow: none;
	border-color: #e9e9e9;
}

textarea {
	min-height: 100px;
	height: auto;
	color: var(--textColor);
	padding: 6px 15px;
	border-color: #ebebeb;
}

select {
	background: #fff var(--nest-asset-ico-select, none) right 10px center no-repeat;
	padding-right: 28px;
	padding-left: 15px;
	border-color: #ebebeb;
	cursor: pointer;
	text-indent: .01px;
	text-overflow: '';
}

select::-ms-expand {
	display: none;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

input.error,
textarea.error,
select.error {
	border-color: red;
	color: red;
}

label.error {
	color: red;
	font-size: 12px;
}

button,
input[type="submit"] {
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
}

/* Custom checkbox: <span class="nest-checkbox"><input id><label for>…</label></span> */
.nest-checkbox {
	display: inline-flex;
	align-items: center;
	position: relative;
}

.nest-checkbox input[type="checkbox"] {
	position: absolute;
	opacity: 0;
	width: 100%;
	height: 100%;
	margin: 0;
	left: 0;
	top: 0;
	cursor: pointer;
	z-index: 1;
}

.nest-checkbox label {
	display: inline-flex;
	align-items: center;
	margin: 0;
	font-weight: 400;
	font-size: 14px;
	cursor: pointer;
	position: relative;
	line-height: 1.5;
}

.nest-checkbox label::before {
	content: "";
	display: inline-block;
	width: 16px;
	height: 16px;
	border: 1px solid #ccc;
	background: #fff;
	margin-right: 8px;
	flex: none;
	box-sizing: border-box;
}

.nest-checkbox input:checked + label {
	color: var(--mainColor);
}

.nest-checkbox input:checked + label::before {
	background: var(--mainColor) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2' d='M3.5 8.5l3 3 6-6'/%3E%3C/svg%3E") center/12px no-repeat;
	border-color: var(--mainColor);
}

/* --------------------------------------------------------------------------
   A.6 Section title (reference .section-index .section-title)
   -------------------------------------------------------------------------- */
.nest-section-title {
	text-align: center;
	position: relative;
	margin-bottom: 24px;
}

.nest-section-title__eyebrow {
	display: block;
	width: 100%;
	font-weight: 500;
	font-size: 16px;
	text-transform: uppercase;
	color: var(--mainColor);
	line-height: 1.7;
}

.nest-section-title h2,
.nest-section-title h3 {
	display: inline-block;
	font-family: var(--nest-font-alt);
	font-weight: 800;
	font-size: 26px;
	text-transform: uppercase;
	margin: 0;
	color: var(--textColor);
	line-height: 1.4;
}

.nest-section-title h2 span,
.nest-section-title h3 span {
	color: var(--supColor);
}

.nest-section-title h2 a,
.nest-section-title h3 a {
	color: inherit;
}

.nest-section-title h2 a:hover,
.nest-section-title h3 a:hover {
	color: var(--hover);
}

.nest-section-title__desc {
	font-size: 16px;
	margin: 4px auto 0;
	max-width: 760px;
	color: var(--textColor);
}

.nest-title-separator {
	display: flex;
	justify-content: center;
	position: relative;
	text-align: center;
	margin-top: 10px;
}

.nest-title-separator::before,
.nest-title-separator::after {
	content: "";
	display: block;
	width: 30px;
	height: 1px;
	background: var(--mainColor);
	position: absolute;
	top: calc(50% - 1px);
}

.nest-title-separator::before {
	left: calc(50% - 50px);
}

.nest-title-separator::after {
	right: calc(50% - 50px);
}

.nest-title-separator__center {
	display: block;
	width: 32px;
	height: 12px;
	position: relative;
}

.nest-title-separator__center::before,
.nest-title-separator__center::after {
	content: "";
	display: block;
	width: 10px;
	height: 10px;
	border: 1px solid var(--mainColor);
	transform: rotate(45deg);
	position: absolute;
	top: 0;
}

.nest-title-separator__center::before {
	left: 8px;
}

.nest-title-separator__center::after {
	right: 8px;
}

/* Light variant (about / testimonials sections) */
.nest-section-title--light .nest-section-title__eyebrow,
.nest-section-title--light h2,
.nest-section-title--light h3,
.nest-section-title--light .nest-section-title__desc {
	color: #fff;
}

.nest-section-title--light .nest-title-separator::before,
.nest-section-title--light .nest-title-separator::after {
	background: var(--subColor);
}

.nest-section-title--light .nest-title-separator__center::before,
.nest-section-title--light .nest-title-separator__center::after {
	border-color: var(--subColor);
}

/* Left aligned variant */
.nest-section-title--left {
	text-align: left;
}

.nest-section-title--left .nest-title-separator {
	justify-content: flex-start;
}

.nest-section-title--left .nest-title-separator::before {
	left: 0;
}

.nest-section-title--left .nest-title-separator::after {
	left: 62px;
	right: auto;
}

.nest-section-title--left .nest-title-separator__center {
	margin-left: 30px;
}

.nest-section-title--left .nest-section-title__desc {
	margin-left: 0;
}

@media (max-width: 767px) {
	.nest-section-title__eyebrow {
		font-size: 14px;
	}

	.nest-section-title h2,
	.nest-section-title h3 {
		font-size: 20px;
	}

	.nest-section-title__desc {
		font-size: 14px;
	}
}

/* --------------------------------------------------------------------------
   A.6 Breadcrumb (reference breadcrumb_style.scss.css)
   -------------------------------------------------------------------------- */
.nest-breadcrumb {
	background: transparent;
}

.nest-breadcrumb ul {
	margin: 0;
	font-size: 14px;
	padding: 10px 0;
	border-radius: 0;
	font-weight: 500;
	line-height: 24px;
	background-color: transparent;
	width: 100%;
	text-align: left;
	word-break: break-word;
	list-style: none;
}

.nest-breadcrumb li {
	display: inline;
	margin: 0;
}

.nest-breadcrumb li > a,
.nest-breadcrumb li > a > span,
.nest-breadcrumb li span {
	color: #666;
	display: inline;
}

.nest-breadcrumb li .mr_lr {
	padding: 0 3px;
	color: #666;
}

.nest-breadcrumb li .mr_lr svg {
	width: 10px;
	height: 10px;
	margin-top: -2px;
	display: inline-block;
	vertical-align: middle;
}

.nest-breadcrumb li a:hover,
.nest-breadcrumb li.active,
.nest-breadcrumb li strong {
	color: #d0a73c;
	font-weight: 500;
	text-decoration: none;
}

.nest-breadcrumb li a:hover span,
.nest-breadcrumb li.active span,
.nest-breadcrumb li strong span {
	color: var(--mainColor);
}

/* --------------------------------------------------------------------------
   A.6 Pagination (reference .nav_pagi .pagination)
   -------------------------------------------------------------------------- */
.nest-pagination {
	position: relative;
	z-index: 1;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	list-style: none;
	margin: 0 0 20px;
	padding: 0;
	width: 100%;
}

.nest-pagination li {
	margin: 0;
	list-style: none;
}

.nest-pagination a.page-numbers,
.nest-pagination span.page-numbers,
.nest-pagination .page-link {
	font-weight: 400;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 2.5px 5px;
	width: 30px;
	height: 30px;
	background: transparent;
	border: 1px solid var(--mainColor);
	text-align: center;
	font-size: 14px;
	padding: 0;
	line-height: 28px;
	color: #053024;
	text-decoration: none;
	border-radius: 0;
	min-width: 0;
}

.nest-pagination a.page-numbers:hover,
.nest-pagination .page-link:hover,
.nest-pagination .current,
.nest-pagination .page-item.active .page-link {
	background-color: var(--mainColor);
	border-color: var(--mainColor);
	color: #fff;
}

.nest-pagination .prev,
.nest-pagination .next,
.nest-pagination .link-next-pre {
	line-height: 26px;
}

.nest-pagination .page-item.disabled .page-link,
.nest-pagination .dots {
	border: 0;
}

.nest-pagination .page-item.disabled .page-link {
	display: none;
}

/* --------------------------------------------------------------------------
   A.6 Tabs (reference .tab-wrap .tabs-title)
   -------------------------------------------------------------------------- */
.nest-tabs {
	display: inline-block;
	position: relative;
	z-index: 9;
	margin: 0 0 26px;
	padding: 0;
	list-style: none;
}

.nest-tabs::after {
	content: "";
	display: table;
	clear: both;
}

.nest-tabs li {
	font-size: 22px;
	font-weight: 700;
	text-transform: uppercase;
	position: relative;
	line-height: 40px;
	float: left;
	cursor: pointer;
	background: none;
	display: inline-block;
	margin: 0;
}

.nest-tabs li::before {
	content: "|";
	color: #1c1c1c;
	padding: 0 16px;
}

.nest-tabs li:first-child::before {
	display: none;
}

.nest-tabs li.current,
.nest-tabs li.is-active {
	color: #212121;
}

/* --------------------------------------------------------------------------
   A.6 Slider arrows & dots on Flatsome flickity (add `nest-slider` to the
   slider/row-slider). Diamond SVG replaces the Flatsome chevron.
   -------------------------------------------------------------------------- */
.nest-slider .flickity-prev-next-button {
	font-size: 0;
	line-height: 0;
	position: absolute;
	top: 50%;
	bottom: auto;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 36px;
	height: 36px;
	padding: 0;
	margin: 0;
	cursor: pointer;
	color: #fff;
	outline: none;
	border: 0;
	border-radius: 0;
	background: transparent;
	text-align: center;
	z-index: 2;
	opacity: 0;
	box-shadow: none;
	transition: all .25s ease;
}

.nest-slider .flickity-prev-next-button.next {
	right: -35px;
	left: auto;
	transform: translate(32px, -50%);
}

.nest-slider .flickity-prev-next-button.previous {
	left: -35px;
	right: auto;
	transform: translate(-32px, -50%) rotate(180deg);
}

.nest-slider .flickity-prev-next-button .flickity-button-icon,
.nest-slider .flickity-prev-next-button svg {
	display: none;
}

.nest-slider .flickity-prev-next-button::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='58' height='58' viewBox='0 0 58 58' fill='none'%3E%3Crect x='2.13003' y='29' width='38' height='38' transform='rotate(-45 2.13003 29)' stroke='%23053024' fill='%23fff' stroke-width='2'/%3E%3Crect x='8' y='29.2133' width='30' height='30' transform='rotate(-45 8 29.2133)' fill='%23053024'/%3E%3Cpath d='M18.5 29H39.5' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M29 18.5L39.5 29L29 39.5' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
}

.nest-slider .flickity-prev-next-button:hover::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='58' height='58' viewBox='0 0 58 58' fill='none'%3E%3Crect x='2.13003' y='29' width='38' height='38' transform='rotate(-45 2.13003 29)' stroke='%23d0a73c' fill='%23fff' stroke-width='2'/%3E%3Crect x='8' y='29.2133' width='30' height='30' transform='rotate(-45 8 29.2133)' fill='%23d0a73c'/%3E%3Cpath d='M18.5 29H39.5' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M29 18.5L39.5 29L29 39.5' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.nest-slider:hover .flickity-prev-next-button.next,
.nest-slider.slider-show-nav .flickity-prev-next-button.next {
	right: 8px;
	visibility: visible;
	opacity: 1;
	transform: translateY(-50%) !important;
}

.nest-slider:hover .flickity-prev-next-button.previous,
.nest-slider.slider-show-nav .flickity-prev-next-button.previous {
	left: 8px;
	visibility: visible;
	opacity: 1;
	transform: translateY(-50%) rotate(180deg) !important;
}

.nest-slider:hover .flickity-prev-next-button:disabled,
.nest-slider:hover .flickity-prev-next-button[disabled] {
	opacity: .35;
}

.nest-slider .flickity-page-dots {
	left: 0;
	right: 0;
	bottom: 10px;
}

.nest-slider .flickity-page-dots .dot {
	width: 10px;
	height: 10px;
	border: 1px solid #ddd;
	border-radius: 0;
	background: rgba(255, 255, 255, .2);
	transform: rotate(45deg);
	opacity: 1;
	margin: 0 5px;
}

.nest-slider .flickity-page-dots .dot.is-selected {
	background: var(--mainColor);
	border-color: var(--mainColor);
	opacity: 1;
}

@media (max-width: 767px) {
	.nest-slider .flickity-prev-next-button {
		display: none;
	}
}

/* --------------------------------------------------------------------------
   A.6 Toast (reference #js-global-alert) + alerts
   -------------------------------------------------------------------------- */
@keyframes alert-fade-in-up {
	from {
		opacity: 0;
		transform: translate3d(0, 100%, 0);
	}

	to {
		opacity: 1;
		transform: none;
	}
}

@keyframes alert-fade-out {
	from {
		opacity: 1;
	}

	to {
		opacity: 0;
	}
}

.nest-toast {
	position: fixed;
	top: 5%;
	right: 15px;
	width: 290px;
	z-index: 9999;
	padding: 10px;
	margin-bottom: 0;
	opacity: 0;
	display: none;
	border: 1px solid transparent;
	border-radius: 5px;
	font-size: 14px;
	color: #155724;
	background-color: #d4edda;
	border-color: #c3e6cb;
	animation-duration: .3s;
	animation-timing-function: ease-out;
	animation-fill-mode: forwards;
}

.nest-toast.active {
	display: block;
	animation-name: alert-fade-in-up;
}

.nest-toast.inactive {
	animation-name: alert-fade-out;
}

.nest-toast--danger {
	color: #721c24;
	background-color: #f8d7da;
	border-color: #f5c6cb;
}

.nest-toast__heading {
	margin: 0;
	font-size: 16px;
	font-weight: 700;
	color: inherit;
}

.nest-toast__content {
	font-size: 14px;
	margin: 0;
	line-height: initial;
}

.nest-toast__close {
	position: absolute;
	top: 0;
	right: 10px;
	background: none;
	border: 0;
	padding: 0;
	font-size: 21px;
	line-height: 1;
	color: inherit;
	opacity: .5;
	margin: 0;
}

.nest-alert {
	position: relative;
	padding: 7.5px 12.5px;
	margin-bottom: 10px;
	border: 1px solid transparent;
	border-radius: 5px;
	font-size: 14px;
}

.nest-alert p {
	margin: 0;
}

.nest-alert-warning,
.nest-alert--warning {
	color: #856404;
	background-color: #fff3cd;
	border-color: #ffeeba;
}

.nest-alert-success,
.nest-alert--success {
	color: #155724;
	background-color: #d4edda;
	border-color: #c3e6cb;
}

.nest-alert-danger,
.nest-alert--danger {
	color: #721c24;
	background-color: #f8d7da;
	border-color: #f5c6cb;
}

/* --------------------------------------------------------------------------
   A.6 White card (reference .bg-shadow), page title, rich text
   -------------------------------------------------------------------------- */
.nest-card-shadow {
	padding: 14px;
	background: #fff;
	box-shadow: 0 1.25px 2.5px rgba(0, 0, 0, .075);
	border-radius: 0;
}

.nest-card-shadow + .nest-card-shadow {
	margin-top: 20px;
}

.nest-page-title .nest-title-head,
h1.nest-title-head {
	font-size: 20px;
	text-transform: uppercase;
	font-weight: 700;
	margin: 0 0 16px;
}

.nest-content {
	min-height: 400px;
	margin-bottom: 40px;
}

.rte,
.nest-content {
	line-height: 1.7;
	color: var(--textColor);
	font-size: 16px;
}

.rte p,
.nest-content p {
	margin: 0 0 15px;
}

.rte ul,
.nest-content ul {
	list-style: initial;
	padding-left: 25px;
	margin: 0 0 15px;
}

.rte ol,
.nest-content ol {
	list-style: decimal;
	padding-left: 25px;
	margin: 0 0 15px;
}

.rte img,
.nest-content img {
	max-width: 100%;
	height: auto;
}

.rte iframe,
.nest-content iframe {
	max-width: 100%;
}

.rte table,
.nest-content table {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 15px;
}

.rte table td,
.rte table th,
.nest-content table td,
.nest-content table th {
	border: 1px solid #eee;
	padding: 8px;
	text-align: left;
}

@media (max-width: 767px) {
	.nest-card-shadow {
		padding: 14px;
		margin: 0 -14px;
	}

	.nest-card-shadow + .nest-card-shadow {
		margin-top: 20px;
	}

	.nest-page-title .nest-title-head,
	h1.nest-title-head {
		font-size: 18px;
		margin-bottom: 10px;
	}

	.rte iframe,
	.nest-content iframe {
		width: 100%;
	}
}

/* Utility spacing used by templates (reference helpers). */
.nest-mb-20 {
	margin-bottom: 20px !important;
}

.nest-mt-20 {
	margin-top: 20px !important;
}

.nest-center {
	text-align: center;
}

/* --------------------------------------------------------------------------
   A.8 Product card (woocommerce/content-product.php). Structure:
   .nest-card > form.nest-card__box > [.nest-badge-*] .nest-card__thumb
   .nest-card__info(.nest-card__name .nest-card__prices) .nest-card__buttons
   -------------------------------------------------------------------------- */
.nest-card {
	height: 100%;
	padding-bottom: 28px;
	position: relative;
	margin: 0;
}

.nest-card__box {
	background: #fff;
	height: 100%;
	box-shadow: 0 0 6px 0 rgba(50, 50, 93, .15), 1px 1px 5px rgba(0, 0, 0, .05);
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	overflow: hidden;
	position: relative;
	border-radius: 0;
	margin: 0;
	transition: box-shadow .3s;
}

.nest-badge-sale,
.nest-badge-soldout {
	position: absolute;
	top: 14px;
	left: 8px;
	z-index: 1;
	width: 63px;
	aspect-ratio: 63 / 24;
	background: var(--nest-asset-tag-sale, var(--price)) center/contain no-repeat;
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	text-align: center;
	padding-right: 8px;
	line-height: 24px;
}

.nest-badge-soldout {
	filter: grayscale(1);
	font-size: 9px;
	font-weight: 400;
}

.nest-badge-gift {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #ffc865;
	border: 1px solid #ffc55e;
	margin: 8px 8px -48px 0;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 0 6px rgba(50, 50, 93, .15);
	position: relative;
	cursor: pointer;
}

.nest-badge-gift img,
.nest-badge-gift svg {
	width: 24px;
	height: 24px;
}

.nest-badge-gift__content {
	position: absolute;
	top: 57px;
	right: 8px;
	width: calc(100% - 16px);
	background: var(--mainColor);
	color: #f8f8f8;
	padding: 8px;
	font-size: 12px;
	z-index: 2;
	display: none;
	text-align: left;
	line-height: 1.5;
}

.nest-badge-gift:hover ~ .nest-badge-gift__content,
.nest-badge-gift__content:hover {
	display: block;
}

.nest-card__thumb {
	width: 100%;
	aspect-ratio: 1;
	position: relative;
	overflow: hidden;
	display: block;
}

.nest-card__thumb img {
	position: absolute;
	inset: 0;
	margin: auto;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
	transition: .3s;
}

.nest-card__box:hover .nest-card__thumb img {
	transform: scale(1.03);
}

.nest-card__info {
	width: 100%;
	border-top: 2px solid var(--mainColor);
	padding: 12px 10px;
	text-align: center;
	display: flex;
	flex-direction: column;
	flex: 1 1 0%;
	position: relative;
	background: #fff;
	transition-duration: .3s;
	z-index: 1;
}

.nest-card__name {
	flex: 1 1 0%;
	font-size: 16px;
	font-weight: 500;
	margin: 0;
	line-height: 1.4;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-transform: none;
}

.nest-card__name a {
	color: var(--textColor);
}

.nest-card__name a:hover {
	color: var(--hover);
}

/* wc_price() output inherits the surrounding .nest-* price styling
   (flatsome-shop.css forces span.amount to #111 / 700). */
span.amount,
span.amount bdi,
del span.amount {
	color: inherit;
	font-weight: inherit;
	font-size: inherit;
	white-space: nowrap;
	opacity: 1;
}

.price del,
del .amount {
	opacity: 1;
}

.nest-card__prices {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	margin-top: 4px;
	flex-wrap: wrap;
}

.nest-card__compare {
	color: #9aa5b3;
	font-size: 14px;
	text-decoration: line-through;
	font-weight: 400;
}

.nest-card__price {
	color: var(--price);
	font-weight: 700;
	font-size: 18px;
}

.nest-card__buttons {
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	padding: 12px 10px 0;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 8px;
}

.nest-card__buttons .nest-btn {
	min-width: 160px;
	height: 36px;
	line-height: 36px;
	padding: 0 16px;
	font-size: 14px;
	gap: 6px;
	white-space: nowrap;
}

.nest-card__buttons .nest-btn svg {
	width: 18px;
	height: 18px;
}

.nest-card__buttons .nest-btn--disabled,
.nest-card__buttons .nest-btn.is-soldout {
	background: #878787;
	pointer-events: none;
}

.nest-wish-btn {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: var(--mainColor);
	color: #fff;
	position: relative;
	z-index: 1;
	font-size: 0;
	border: 0;
	padding: 0;
	margin: 0;
	flex: none;
	cursor: pointer;
	transition: background .3s;
}

.nest-wish-btn::before {
	content: "";
	position: absolute;
	display: block;
	border: 1px solid #fff;
	opacity: .5;
	transition: opacity .3s cubic-bezier(.37, .01, 0, .98);
	z-index: 1;
	top: 4px;
	left: 4px;
	right: 4px;
	bottom: 4px;
	border-radius: 50%;
}

.nest-wish-btn img,
.nest-wish-btn svg {
	width: 18px;
	height: 18px;
}

.nest-wish-btn:not(.is-active) img {
	filter: brightness(100);
}

.nest-wish-btn:hover,
.nest-wish-btn.is-active {
	background: var(--subColor);
}

.nest-wish-btn:hover::before {
	border-color: var(--mainColor);
}

.nest-wish-btn:hover:not(.is-active) img {
	filter: brightness(0);
}

/* Sold bar — flash sale only. */
.nest-card__sold {
	height: 18px;
	background: #fde7cf;
	border-radius: 9px;
	position: relative;
	font-size: 11px;
	text-align: center;
	line-height: 18px;
	margin-top: 8px;
	overflow: hidden;
	color: var(--textColor);
}

.nest-card__sold-fill {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	background: var(--hover);
	border-radius: 9px;
}

.nest-card__sold span {
	position: relative;
	z-index: 1;
}

@media (min-width: 1200px) {
	.nest-card__box:hover {
		box-shadow: rgba(60, 64, 67, .1) 0 1px 2px 0, rgba(60, 64, 67, .15) 0 2px 6px 2px;
	}

	.nest-card__box:hover .nest-card__info {
		transform: translateY(-58px);
	}
}

@media (max-width: 1199px) {
	.nest-card {
		padding-bottom: 0;
	}

	.nest-card__buttons {
		position: static;
		padding: 0 10px 12px;
		background: #fff;
	}

	.nest-card__buttons .nest-btn {
		flex: 1 1 0;
		min-width: 0;
		padding: 0 10px;
		overflow: hidden;
	}
}

@media (max-width: 991px) {
	.nest-badge-sale,
	.nest-badge-soldout {
		width: 58px;
	}

	.nest-card__price {
		font-size: 16px;
	}

	.nest-card__compare {
		font-size: 14px;
	}

	.nest-card__buttons {
		padding: 0 7px 12px;
		gap: 6px;
	}

	.nest-card__buttons .nest-btn {
		font-size: 12px;
		padding: 0 6px;
		white-space: nowrap;
	}

	.nest-card__buttons .nest-btn svg {
		width: 16px;
		height: 16px;
	}
}

@media (max-width: 480px) {
	.nest-card__price {
		font-size: 14px;
	}

	.nest-card__name {
		font-size: 14px;
	}

	/* Two 174px cells: no room for the bag glyph next to the 36px heart. */
	.nest-card__buttons .nest-btn svg {
		display: none;
	}

	.nest-card__buttons .nest-btn > * + * {
		margin-left: 0;
	}
}

/* Product grids shared by archive / search / wishlist / tabs. */
.nest-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 20px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.nest-grid > * {
	margin: 0;
	list-style: none;
}

.nest-grid--3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (max-width: 991px) {
	.nest-grid--3 {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.nest-grid,
	.nest-grid--3 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 480px) {
	.nest-grid,
	.nest-grid--3 {
		gap: 14px;
	}
}

/* Horizontal scroll-snap row used ≤767 by home sliders (60% cells). */
.nest-scroll-row {
	display: flex;
	gap: 20px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
}

.nest-scroll-row::-webkit-scrollbar {
	display: none;
}

.nest-scroll-row > * {
	flex: 0 0 60%;
	scroll-snap-align: start;
}

/* ==========================================================================
   Chrome (header / footer / floating widgets / promo modal) — see header.css
   ========================================================================== */

/* --------------------------------------------------------------------------
   A.4 Footer — UX block `footer` ([section class="nest-footer"]), four columns
   30/20/20/30, accordion titles ≤767, dark copyright bar.
   -------------------------------------------------------------------------- */
.nest-footer {
	position: relative;
	border-top: 4px solid var(--hover);
	background-color: #053024;
	background-image: var(--nest-asset-footer_pattent);
}

.nest-footer > .section-content {
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
	padding: 0 14px;
}

@media (min-width: 1200px) {
	.nest-footer > .section-content {
		max-width: 1349px;
		padding: 0 45px;
	}
}

.nest-footer__mid {
	position: relative;
	width: auto;
	max-width: none;
	margin: 0 -10px;
	padding: 60px 0 40px;
}

.nest-footer .col {
	padding: 0 10px;
	margin-bottom: 20px;
}

.nest-footer .col:last-child {
	margin-bottom: 0;
}

@media (min-width: 992px) {
	.nest-footer__col--info,
	.nest-footer__col--pay {
		flex-basis: 30%;
		max-width: 30%;
	}

	.nest-footer__col--links {
		flex-basis: 20%;
		max-width: 20%;
	}
}

@media (min-width: 768px) and (max-width: 991px) {
	.nest-footer__col--info {
		flex-basis: 100%;
		max-width: 100%;
		margin-bottom: 30px;
	}

	.nest-footer__col--links,
	.nest-footer__col--pay {
		flex-basis: 33.3333%;
		max-width: 33.3333%;
	}
}

@media (max-width: 767px) {
	.nest-footer .col {
		flex-basis: 100%;
		max-width: 100%;
	}
}

.nest-footer-logo {
	margin-bottom: 15px;
}

.nest-footer-logo a {
	display: inline-block;
	width: 300px;
	max-width: 220px;
	aspect-ratio: 300 / 96;
}

.nest-footer-logo img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: left center;
}

.nest-footer-contact__row {
	position: relative;
	margin-bottom: 8px;
	padding-left: 24px;
	font-weight: 500;
	color: #fff;
}

.nest-footer-contact__row:last-child {
	margin-bottom: 0;
}

.nest-footer-contact__row svg {
	position: absolute;
	top: 4px;
	left: 0;
	width: 18px;
	height: 18px;
	color: var(--subColor);
}

.nest-footer-contact__row a {
	color: var(--subColor);
}

.nest-footer-contact__row a:hover {
	color: var(--hover);
}

.nest-footer-social {
	margin-top: 20px;
}

.nest-footer-social a {
	display: inline-block;
	position: relative;
	width: 35px;
	height: 35px;
	line-height: 35px;
	margin-right: 5px;
	border-radius: 50%;
	background-color: transparent;
	text-align: center;
}

.nest-footer-social a + a {
	margin-left: 5px;
}

.nest-footer-social img {
	position: absolute;
	inset: 0;
	margin: auto;
	width: 35px;
	height: 35px;
}

.nest-footer-social a:hover img {
	filter: brightness(1.3);
	transition-duration: .3s;
}

.nest-footer__title {
	position: relative;
	margin: 0 0 12px;
	line-height: normal;
	letter-spacing: .5px;
	font-family: var(--nest-font-alt);
	font-size: 16px;
	font-weight: 800;
	color: #fff;
	text-transform: uppercase;
}

.nest-footer__title span {
	display: block;
	position: relative;
	padding-left: 24px;
}

.nest-footer__title span::before,
.nest-footer__title span::after {
	content: "";
	display: block;
	position: absolute;
	top: 6px;
	width: 10px;
	height: 10px;
	border: 1px solid var(--subColor);
	transform: rotate(45deg);
}

.nest-footer__title span::before {
	left: 0;
}

.nest-footer__title span::after {
	left: 6px;
}

.nest-footer__links {
	display: block;
	margin: 0;
	padding-left: 0;
	line-height: 30px;
}

.nest-footer__links .ux-menu-link {
	display: block;
	margin: 0;
}

/* Flatsome's ux-menu link is a 2.5em flex row with a hairline border; the
   reference list item is a plain 5px-padded block. */
.nest-footer__links .ux-menu-link__link {
	display: block;
	position: relative;
	min-height: 0;
	padding: 5px 0;
	border: 0;
	color: #f1f1f1;
	line-height: normal;
	font-size: 16px;
	transition: all ease .2s;
}

.nest-footer__links .ux-menu-link__text {
	line-height: normal;
	font-size: 16px;
}

.nest-footer__links .ux-menu-link__link:hover {
	color: var(--hover);
}

.nest-footer-payment {
	margin-top: 20px;
	max-width: 220px;
}

.nest-footer-payment__item {
	display: inline-block;
	position: relative;
	overflow: hidden;
	width: 63px;
	height: 29px;
	margin: 0 5px 5px 0;
	border-radius: 5px;
}

.nest-footer-payment__item img {
	position: absolute;
	inset: 0;
	margin: auto;
	width: 63px;
	height: 29px;
	object-fit: cover;
}

.nest-footer-payment + .nest-footer__title {
	margin-top: 20px;
}

.nest-footer-cert {
	margin-top: 15px;
}

.nest-footer-cert__item {
	display: inline-block;
	position: relative;
	width: auto;
	height: 70px;
	margin-right: 5px;
}

.nest-footer-cert__item img {
	max-height: 100%;
	width: auto;
}

@media (max-width: 991px) {
	.nest-footer-cert__item {
		height: 60px;
	}
}

/* ≤767 the two link columns collapse into plus/minus accordions. */
@media (max-width: 767px) {
	.nest-footer__mid {
		padding: 30px 0 20px;
	}

	.nest-footer__title {
		margin-top: 0;
		padding-top: 0;
	}

	.nest-footer__title.clicked {
		cursor: pointer;
	}

	.nest-footer__title.clicked::before,
	.nest-footer__title.clicked::after {
		position: absolute;
		content: "";
		top: 50%;
		right: 0;
		transform: translate(-50%, -50%) rotate(-90deg);
		background-color: currentColor;
		transition: transform .4s ease-in-out, opacity .4s ease-in-out;
	}

	.nest-footer__title.clicked::before {
		width: 11px;
		height: 1.5px;
		opacity: 1;
	}

	.nest-footer__title.clicked::after {
		width: 1.5px;
		height: 11px;
		right: 10px;
	}

	.nest-footer__title.clicked.cls_mn::before {
		opacity: 0;
	}

	.nest-footer__title.clicked.cls_mn::after {
		transform: translate(-50%, -50%) rotate(90deg);
	}

	.nest-footer__title.clicked + .nest-footer__links {
		display: none;
	}

	.nest-footer__title.clicked + .nest-footer__links.is-open {
		display: block;
	}
}

/* Copyright bar (Flatsome absolute footer). */
.absolute-footer {
	padding: 0;
	margin: 0;
	border: 0;
	background-color: #031913;
	color: #fff;
	font-size: 14px;
	text-align: center;
}

.absolute-footer .container {
	padding: 10px 14px;
}

.absolute-footer .footer-primary {
	float: none;
	width: 100%;
	margin: 0;
	padding: 0;
	text-align: center;
}

.absolute-footer .copyright-footer {
	margin: 0;
	padding: 0;
	color: #fff;
	opacity: 1;
	font-size: 16px;
	line-height: 27.2px;
}

.absolute-footer a {
	color: #fff;
	font-weight: 700;
}

.absolute-footer a:hover {
	color: var(--subColor);
	text-decoration: underline;
}

/* --------------------------------------------------------------------------
   A.5 Floating chrome — back to top, contact dial, promo modal
   (printed by inc/footer-widgets.php).
   -------------------------------------------------------------------------- */
@keyframes zoomzoom {
	from { transform: scale(0); }
	to { transform: scale(1.2); }
}

@keyframes popup-fade-in-up {
	0% { opacity: 0; transform: translateY(100px); }
	100% { opacity: 1; transform: translateY(0); }
}

.nest-backtop {
	position: fixed;
	bottom: 100px;
	right: 15px;
	top: auto;
	z-index: 99;
	width: 40px;
	height: 40px;
	display: flex;
	background: transparent;
	text-decoration: none;
	transition: all .3s ease-out 0s;
	transform: translateY(-20px);
	opacity: 0;
	visibility: hidden;
}

.nest-backtop.show {
	transform: translateY(0);
	opacity: 1;
	visibility: visible;
}

.nest-backtop svg {
	width: 100%;
	height: 100%;
	transform: rotate(270deg);
}

.nest-backtop svg rect:nth-child(1) {
	stroke: var(--mainColor);
}

.nest-backtop svg rect:nth-child(2) {
	fill: var(--mainColor);
}

.nest-backtop:hover svg rect:nth-child(1) {
	stroke: var(--subColor);
}

.nest-backtop:hover svg rect:nth-child(2) {
	fill: var(--subColor);
}

@media (max-width: 767px) {
	.nest-backtop {
		bottom: 130px;
	}
}

/* -------- contact dial */
.nest-widget {
	position: fixed;
	right: 14px;
	bottom: 20px;
	top: auto;
	z-index: 99;
}

@media (max-width: 767px) {
	.nest-widget {
		bottom: 56px;
	}
}

.nest-widget__el.is-hidden {
	opacity: 0;
	transform: scale(0);
}

/* The white icon disc and the panel must not paint at all when closed
   (Safari keeps compositing scaled/transitioned layers). */
.nest-widget__ser.is-hidden,
.nest-widget__content.is-hidden {
	visibility: hidden;
	pointer-events: none;
}

.nest-widget__circle {
	position: relative;
	overflow: hidden;
	width: 60px;
	height: 60px;
	padding: 17px;
	border-radius: 100%;
	background: #004e3e;
	isolation: isolate;
	-webkit-mask-image: -webkit-radial-gradient(#fff, #000);
	transform: translateZ(0);
}

.nest-widget__ring {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
	border-radius: 100%;
	background: #003f32;
	opacity: .6;
	animation: zoomzoom 3s linear .2s infinite;
}

.nest-widget__ring:first-child {
	animation-delay: .5s;
}

.nest-widget__icon {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 32px;
	line-height: 0;
	text-align: center;
	color: #fff;
	z-index: 1;
}

.nest-widget__icon svg {
	width: 20px;
	height: 20px;
	fill: #fff;
	margin-bottom: 5px;
}

.nest-widget__icon p {
	font-size: 10px;
	color: #fff;
	margin: 0;
	line-height: 1;
}

.nest-widget__ser {
	position: absolute;
	top: 0;
	left: 0;
	width: 70%;
	height: 70%;
	margin: 15%;
	padding: 10%;
	overflow: hidden;
	display: inline-flex;
	border-radius: 100%;
	background: #fff;
	color: #004e3e;
	transition: .2s all;
	z-index: 2;
}

.nest-widget__process {
	display: flex;
	transform: translateX(0);
	transition: .15s linear transform;
	line-height: 0;
}

.nest-widget__ser-item {
	flex: none;
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #004e3e;
}

.nest-widget__ser-item svg {
	width: 25px;
	height: 25px;
	fill: #004e3e;
}

.nest-widget__toggle {
	position: absolute;
	top: 0;
	left: 0;
	width: 60px;
	height: 60px;
	padding: 10px;
	margin: 0;
	border: 0;
	border-radius: 100%;
	box-shadow: none;
	background: #004e3e;
	color: #fff;
	line-height: 1;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	transition: .2s all;
	cursor: pointer;
	z-index: 3;
	min-height: 0;
}

.nest-widget__toggle svg {
	width: 25px;
	height: 25px;
	fill: #fff;
}

/* Closed state: transparent but still the click target, like the reference. */
.nest-widget__toggle.is-hidden {
	opacity: 0;
	transform: rotate(180deg);
}

.nest-widget__content {
	position: absolute;
	right: 0;
	bottom: 62px;
	width: 300px;
	z-index: 1;
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 0 10px rgba(0, 0, 0, .2);
	transition: .2s all;
}

.nest-widget__content::before {
	content: "";
	position: absolute;
	right: 22px;
	bottom: -8px;
	display: inline-block;
	border-left: 8px solid transparent;
	border-right: 8px solid transparent;
	border-top: 8px solid #fff;
}

.nest-widget__header {
	position: relative;
	padding: 10px;
	border-radius: 8px 8px 0 0;
	background: #004e3e;
	color: #fff;
	font-weight: 700;
}

.nest-widget__panel-close {
	position: absolute;
	right: 10px;
	top: 10px;
	width: 26px;
	height: 26px;
	padding: 0;
	margin: 0;
	border: 0;
	border-radius: 50%;
	box-shadow: none;
	background: #004e3e;
	color: #fff;
	line-height: 1;
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	min-height: 0;
}

.nest-widget__panel-close svg {
	width: 16px;
	height: 16px;
	fill: #fff;
}

.nest-widget__item > a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	padding: 5px 10px;
	transition: .3s linear all;
	color: var(--textColor);
}

.nest-widget__item:hover {
	background: #f1f1f1;
}

.nest-widget__item:last-child > a {
	border-radius: 0 0 8px 8px;
}

.nest-widget__ico {
	flex: none;
	width: 34px;
	height: 34px;
	margin-right: 10px;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
}

.nest-widget__ico svg {
	width: 20px;
	height: 20px;
	fill: #fff;
}

.nest-widget__item--phone .nest-widget__ico { background: #4EB625; }
.nest-widget__item--mess .nest-widget__ico { background: #31ADFF; }
.nest-widget__item--zalo .nest-widget__ico { background: #0165f8; }
.nest-widget__item--map .nest-widget__ico { background: #d94234; }

.nest-widget__detail {
	flex-grow: 1;
	line-height: normal;
}

.nest-widget__item-title {
	display: block;
	font-weight: 700;
	font-size: 14px;
	line-height: normal;
}

.nest-widget__item-sub {
	display: block;
	font-size: 13px;
	color: #787878;
}

/* -------- promo modal */
.nest-modal-banner {
	position: fixed;
	inset: 0;
	top: 0;
	z-index: 9999;
	overflow: auto;
	display: none;
}

.nest-modal-banner.is-open {
	display: block;
}

.nest-modal-banner__overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	z-index: 1040;
	background-color: #000;
	opacity: .8;
}

.nest-modal-banner__promo {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 500px;
	height: auto;
	margin: 0 auto;
	padding: 5px;
	background-color: transparent;
	z-index: 8011;
}

@media (max-width: 767px) {
	.nest-modal-banner__promo {
		width: calc(100% - 40px);
		max-width: 480px;
	}
}

.nest-modal-banner__body {
	position: relative;
	width: 100%;
	animation: popup-fade-in-up .3s ease-out .2s both;
}

.nest-modal-banner__banner {
	display: block;
	aspect-ratio: 1 / 1;
	background: #ddd;
}

.nest-modal-banner__banner img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border: 1px solid var(--subColor);
}

.nest-modal-banner__banner .img,
.nest-modal-banner__banner .img-inner,
.nest-modal-banner__banner .ux-image-overlay {
	height: 100%;
}

.nest-modal-banner__check {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 12px;
	color: #fff;
}

.nest-modal-banner__check input {
	display: inline-block;
	width: 20px;
	height: 20px;
	margin: 0 8px 0 0;
	background: #fff;
	opacity: 1;
	position: relative;
	cursor: pointer;
}

.nest-modal-banner__check label {
	margin: 0;
	color: #fff;
	text-shadow: 0 2px 4px rgba(0, 0, 0, .25);
	cursor: pointer;
}

.nest-modal-banner__close {
	position: absolute;
	top: 0;
	right: 0;
	width: 30px;
	height: 30px;
	padding: 0;
	margin: 0;
	border: 1px solid var(--subColor);
	border-radius: 0;
	box-shadow: none;
	background-color: var(--mainColor);
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	min-height: 0;
}

.nest-modal-banner__close svg {
	width: 20px;
	height: 20px;
	fill: currentColor;
}

.nest-modal-banner__close:hover {
	background: var(--hover);
}
