/* !@group variables */

:root {

	/* colors */

	--text: #2b2b2b;
	/* dk grey */
	--text-light: #edead9;
	/* off white */
	--text-grey: #728a9f;
	/* grey */
	--page: #f5f3ef;
	/* off white */
	--title: #9ec9c4;
	/* teal */
	--section-text: #f9f0d2;
	/* beige */

	--subtitle: #b2bac5;
	/* grey */
	/* <-- NOT USED */

	--selection: rgba(113, 161, 163, .15);
	/* teal */
	--cta: #c4b05f;
	/* gold */
	--cta-hover: #daba49;
	/* yellow */
	--cta2: #6db2af;
	/* turquoise */
	--cta2-hover: #42a19d;
	/* turquoise */
	--menu: rgba(113, 161, 163, .66);
	/* teal */
	--attention: #F61254;
	/* red */

	--gold: #c4b05f;
	/* gold */
	--yellow: #f7c600;
	/* yellow */
	--teal: #abd9d6;
	/* teal */
	--grey: #565d61;
	/* grey */
	--charcoal: #565d61;
	/* dk grey */

	/* fonts */

	--font1: 'Dosis', sans-serif;
	--font-base: 10px;

	/* other */

	--site-width: 180rem;
	/* site width */
	--header: 16.8rem;
	/* header height */
	--scroll: 11rem;
	/* scrolled header height */

	--cta-height: 8rem;
	/* mobile cta height */
	/* <-- NOT USED */
}

@media screen and (max-width: 767px) {

	:root {

		--header: 12rem;
		--scroll: 7rem;
		--cta-height: 8rem;
	}
}

/* @end */

/* !@group reset */

/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block;
}

body {
	line-height: 1;
}

ol,
ul {
	list-style: none;
}

blockquote,
q {
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* @end */

/* !@group common */

[data-aos] {
	visibility: hidden;
}

[data-aos].animate__animated {

	visibility: visible;
	pointer-events: initial;
}

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

::-moz-selection {
	background: var(--selection);
}

::selection {
	background: var(--selection);
}

html {

	-webkit-tap-highlight-color: transparent;
	font-size: var(--font-base);
	scroll-behavior: smooth;
}

:target::before {

	content: '';
	display: block;
	height: var(--scroll);
	margin: calc(var(--scroll) * -1) 0 0;
}

body {

	-webkit-font-smoothing: antialiased;
	background: var(--page);
	color: var(--text);
	font-family: var(--font1);
	font-size: 1.9rem;
	line-height: 1.57;
	letter-spacing: .1ch;
}

img {

	display: block;
	max-width: 100%;
	height: auto;
}

img.static {

	min-width: auto;
	max-width: none;
	display: inline-block;
}

a:any-link {
	color: var(--gold);
}

a:hover,
a:active,
a:focus {

	text-decoration: none;
	outline: none;
}

button {

	appearance: none;
	-webkit-appearance: none;
	border: 0;
	padding: 0;
	background: transparent;
	font-family: var(--font1);
	outline: none;
}

#site {

	margin: 0 auto;
	position: relative;
	overflow: hidden;
}

#page {

	transition:
		transform .35s ease-in,
		filter .35s ease-in;
}

.no-slider #page {
	padding-top: var(--scroll);
}

/* @end */

/* !@group header */

#site-header {

	display: flex;
	flex-direction: row;
	position: fixed;
	justify-content: space-between;
	align-items: center;
	left: 0;
	top: 0;
	right: 0;
	height: var(--header);
	background-color: rgba(245, 243, 239, 0);
	box-shadow: 0 0 0 rgba(0, 0, 0, 0);
	transition:
		background-color .35s ease,
		box-shadow .35s ease;
	z-index: 5;
	pointer-events: none;
}

#site-header a,
#site-header button {
	pointer-events: all;
}

#site-header>.inner {

	display: flex;
	flex-direction: row;
	width: 100%;
}

#site-header .left {

	padding-left: min(8rem, 4vw);
	display: flex;
	align-items: center;
}

#site-header .center {

	padding-left: min(17rem, 8.5vw);
	display: flex;
	align-items: center;
}

.logo {

	display: inherit;
	transition: opacity .35s ease;
}

.logo-header {
	transform: scale(0.7);
}

@media screen and (min-width: 1025px) and (max-width: 1680px) {
	.logo-header {
		transform: scale(1);
	}
}

@media screen and (max-width: 767px) {
	.logo-header {
		transform: scale(0.9);
	}
}

.logo svg {

	display: inline-block;
	/* fill: var(--text-light); */
	filter: brightness(0) saturate(100%) invert(89%) sepia(21%) saturate(117%) hue-rotate(14deg) brightness(100%) contrast(96%);
	transition: fill .35s ease;
}

body.scroll .logo svg {
	filter: brightness(0) saturate(100%) invert(55%) sepia(24%) saturate(388%) hue-rotate(166deg) brightness(93%) contrast(84%);
}

#site-header .right {

	margin-left: auto;
	display: flex;
	flex-direction: row;
}

.header-contacts {

	display: flex;
	flex-direction: row;
	align-items: center;
	margin: -3rem min(8.5rem, 4.25vw) 0 0;
	transition: margin-top .35s ease;
}

.header-contacts li+li {
	margin-left: min(5rem, 2.5vw);
}

.header-contacts a {

	display: flex;
	flex-direction: row;
	color: var(--text-light);
	text-decoration: none;
	transition: color .35s ease;
}

.header-contacts .label {

	font-size: 1.7rem;
	padding-left: 1.5rem;
}

.header-icon {

	display: block;
	width: 3.8rem;
	height: 3.8rem;
	background-color: var(--text-light);
	-webkit-mask-position: center;
	-webkit-mask-repeat: no-repeat;
	mask-position: center;
	mask-repeat: no-repeat;
	transition: background-color .35s ease;
}

.scroll #site-header,
.no-slider #site-header {

	--text-light: var(--text-grey);
	height: var(--scroll);
	background-color: var(--page);
	box-shadow: 0 0 1.5rem rgba(0, 0, 0, .1);
	pointer-events: all;
}

.scroll #site-header .header-contacts,
.no-slider #site-header .header-contacts {
	margin-top: 0;
}


#add_payment_method #payment,
.woocommerce-cart #payment,
.woocommerce-checkout #payment {
	background: #f5f3ef !important;
	border-radius: 5px;
}

#order_review_heading {
	margin-top: 80px;
}

ins {
	text-decoration: none !important;
}

ul.product_list li.product .price:first-child {
	font-size: min(3.8rem, 2.2vw) !important;
	text-align: center;
}

@media screen and (max-width: 1399px) {

	.header-contacts li+li {
		margin-left: 2rem;
	}

	.header-contacts .label {
		display: none;
	}
}

@media screen and (max-width: 767px) {

	.logo {
		margin-top: -1.8rem;
	}

	.scroll .logo {
		margin-top: .5rem;
	}

	.logo svg {
		max-width: 15rem;
	}

	.header-contacts li+li {
		margin-left: 1rem;
	}

	.icon-webcam {
		display: none;
	}
}

/* @end */

/* !@group main cta */

#main-cta {

	text-decoration: none;
	display: flex;
	width: 21rem;
	height: 16.8rem;
	color: #f8f4dd;
	background-color: var(--cta);
	border-radius: 8.4rem 0 8.4rem 8.4rem;
	margin-bottom: 0;
	transition: margin-bottom .35s ease;
}

#main-cta.offerta-cta {
	width: 26rem;
}

#main-cta>span {

	margin: auto;
	text-align: center;
	font-size: 3rem;
	line-height: 1;
	font-weight: 300;
}

#main-cta>span b {
	font-weight: 700;
}

.scroll #main-cta,
.no-slider #main-cta {
	margin-bottom: -5.8rem;
}

@media screen and (max-width: 1023px) {

	#main-cta,
	#main-cta.offerta-cta {

		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		border-radius: 0;
		width: initial;
		height: var(--cta-height);
		margin: 0;
		padding-bottom: 1rem;
	}

	.scroll #main-cta,
	.no-slider #main-cta {
		margin-bottom: 0;
	}
}

@media screen and (max-width: 767px) {

	#main-cta span,
	#main-cta.offerta-cta span {
		font-size: 2.8rem;
	}

	#main-cta span br,
	#main-cta.offerta-cta span br {
		display: none;
	}

	.woocommerce-additional-fields h3 {
		margin-top: 30px;
	}
}

/* @end */

/* !@group menu */

#open-menu {

	display: flex;
	flex-direction: row;
	align-items: flex-start;
	margin-top: -3rem;
	transition: margin-top .35s ease;
}

#open-menu svg {
	margin-top: -.8rem;
}

#open-menu .bar {
	fill: var(--text-light);
}

#open-menu .label {

	padding-left: 1.5rem;
	color: var(--text-light);
	font-size: 1.7rem;
	font-weight: 800;
	line-height: .5;
	text-transform: uppercase;
	transition: color .35s ease, opacity .35s ease;
}

.scroll #open-menu,
.no-slider #open-menu {

	--text-light: var(--text-grey);
	margin-top: 0;
}

@media screen and (max-width: 767px) {

	#open-menu .label {
		display: none;
	}
}

/* @end */

/* !@group header slider */

#combo-slider {

	width: 100%;
	margin: 0 auto;
	position: relative;
	background: #2e5668;
}

.page-template-template-camere #combo-slider {
	background: #75736f;
}

.header-slideshow {

	position: relative;
	cursor: grab;
}

.header-slideshow .glide__slides {

	transform: translate3d(0, 0, 0) !important;
	width: 100vw !important;
	height: 100vh;
	max-height: 125rem;
}

.header-slideshow .slide {

	opacity: 0;
	z-index: 0;
	position: absolute;
	top: 0;
	left: 0;
	transition: opacity 1.5s ease;
	height: 100vh;
	max-height: 125rem;
}

.header-slideshow .slide.is-active {

	opacity: 1;
	z-index: 1;
}

#combo-slider .slide img {

	width: 100%;
	height: 100vh;
	max-height: 125rem;
	object-fit: cover;
	opacity: .7;
}

.payoff {

	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	pointer-events: none;
	display: flex;
	flex-direction: row;
	justify-content: center;
	text-align: center;
	pointer-events: none !important;
}

.page-template-default:not(.home) .payoff,
.single-camere .payoff {

	justify-content: flex-start;
	padding-left: max(3rem, calc((100% - 150rem) / 2));
}

.payoff span {

	color: #d9d2ba;
	font-size: 7vw;
	line-height: 1;
	font-weight: 200;
	text-transform: uppercase;
	letter-spacing: .2ch;
	margin-bottom: -.55ch;
}

#combo-slider .feedback-links {
	position: absolute;
	left: 2.4rem;
	bottom: 0;
	transform: translateY(20%);
	display: flex;
	flex-direction: row;
	gap: .1rem;
}

@media screen and (max-width: 1023px) {

	.header-slideshow .glide__slides,
	.header-slideshow .slide,
	#combo-slider .slide img {
		height: calc(100vh - var(--cta-height));
	}

	#combo-slider .payoff {
		bottom: 20%;
	}

	.page-template-default:not(.home) .payoff,
	.single-camere .payoff {
		justify-content: center;
		padding-left: initial;
	}

	.payoff span {
		margin-bottom: 2rem;
	}

	#combo-slider .feedback-links {
		left: 50%;
		transform: translateX(-50%);
	}
}

@media screen and (max-width: 767px) {

	.payoff span {
		font-size: 12vw;
	}
}

/* @end */

/* !@group main content */

h1.site-title {

	color: var(--title);
	font-size: 5rem;
	font-weight: 200;
	line-height: 1;
	text-transform: uppercase;
}

.main-header {
	padding-bottom: min(7rem, 3.5vw);
}

.single-offerte .main-header,
.single-landing .main-header {
	padding-bottom: 4rem;
}

.main-header p {

	color: #aca598;
	font-size: 2.9rem;
	line-height: 1.3;
	font-weight: 300;
	padding-top: min(7rem, 3.5vw);
}

.single-offerte .main-header p,
.single-landing .main-header p {
	padding-top: 3rem;
}

.page-template-template-camere .main-header p,
.page-template-template-offerte .main-header p {

	text-align: center;
	max-width: 86rem;
	margin-left: auto;
	margin-right: auto;
}

#page-content {
	padding: min(15rem, 7.5vw) 3rem min(13rem, 6.5vw);
}

.single-offerte #page-content,
.single-landing #page-content {
	padding: 7rem 3rem 4rem;
}

#page-content>.inner {

	max-width: 140rem;
	margin-left: auto;
	margin-right: auto;
}

.page-template-template-camere #page-content>.inner,
.page-template-template-offerte #page-content>.inner {
	max-width: 122rem;
}

.page-template-template-camere #page-content .editor-content,
.page-template-template-offerte #page-content .editor-content {

	columns: 2;
	column-gap: 9%;
}

#page-content.with-featured>.inner {
	max-width: 180rem;
}

.with-featured .main-columns {

	max-width: 160rem;
	margin-left: auto;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	gap: 5rem;
}

.with-featured .main-columns .main-header,
.with-featured .main-columns main {
	width: 67.2rem;
}

.with-featured .main-columns aside {

	display: flex;
	flex: 0 0 42%;
}

.single-camere .with-featured .main-columns aside {
	flex-direction: column;
}

body:not(.single-camere):not(.home) .with-featured .main-columns aside {

	margin-top: max(-15rem, -7.5vw);
	margin-bottom: 0;

}

.home .with-featured .main-columns aside {

	margin-top: 0;
	margin-bottom: max(-25vw, -50rem);
}

body:not(.home) .main-columns aside .featured-image {

	position: relative;
	top: calc(-12% + max(-5rem, -2.5vw));
}

.main-footer {

	display: flex;
	justify-content: space-between;
	padding-top: 7rem;
}

.featured-image {

	margin: 0 0 auto auto;
	position: relative;
	z-index: 1;
}

@media screen and (max-width: 1023px) {

	.with-featured .main-columns .main-header,
	.with-featured .main-columns main {
		width: 100%;
	}

	.with-featured .main-columns {
		flex-direction: column;
	}

	body:not(.single-camere) .with-featured .main-columns aside,
	.with-featured .main-columns aside {
		margin: 0;
		padding-top: 5rem;
	}

	.page-template-template-camere .main-header p,
	.page-template-template-offerte .main-header p {
		text-align: left;
	}

	.page-template-template-camere #page-content .editor-content,
	.page-template-template-offerte #page-content .editor-content {
		columns: 1;
	}
}

@media screen and (max-width: 767px) {

	#page-content {

		padding-top: 4rem;
		padding-bottom: 6rem;
	}

	.main-header {
		padding-bottom: 3rem;
	}

	h1.site-title {
		font-size: 3.6rem;
	}

	.main-header p {
		padding-top: 3rem;
	}

	.main-footer {

		padding-top: 3rem;
		flex-direction: column;
	}

	.main-footer a+a {
		margin-top: 2rem;
	}

	.with-featured .main-columns aside {
		display: block;
	}

	.single-camere .with-featured .main-columns aside {
		padding-top: 0;
	}
}

/* @end */