@font-face {
    font-family: 'PlayfairDisplay-Regular';
    src: url('../fonts/playfair/PlayfairDisplay-Regular.woff2') format('woff2'),
         url('../fonts/playfair/PlayfairDisplay-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Montserrat-Light';
    src: url('../fonts/montserrat/Montserrat-Light.woff2') format('woff2'),
         url('../fonts/montserrat/Montserrat-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Montserrat-Regular';
    src: url('../fonts/montserrat/Montserrat-Regular.woff2') format('woff2'),
         url('../fonts/montserrat/Montserrat-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

/*
:root {
	--primario: #4C5646;
    --secondario: #DAD3CD;
    --arancio: #F0AF45;
    --marrone: #B99D75;
    --bianco: #ffffff;
	--nero: #000000;
}
*/
:root {
    --rosso: #660000;
    --gold: #B99D75;
    --beige: #dbd7cc;
    --grey: #C2BBBB;
    --verde: #67923b;
    --bianco: #ffffff;
	--nero: #000000;
}

.bianco {
    color: var(--bianco) !important;
}
.nero {
    color: var(--nero) !important;
}
.rosso {
    color: var(--rosso) !important;
}
.gold {
    color: var(--gold) !important;
}
.beige {
    color: var(--beige) !important;
}
.grey {
    color: var(--grey) !important;
}
/*
.primario {
    color: var(--primario) !important;
}
.secondario {
    color: var(--secondario) !important;
}
.arancio {
    color: var(--arancio) !important;
}
*/
.bg_rosso {
    background-color: var(--rosso) !important;
}
.bg_gold {
    background-color: var(--gold) !important;
}
.bg_beige {
    background-color: var(--beige) !important;
}
.bg_grey {
    background-color: var(--grey) !important;
}
.bg_bianco {
    background-color: var(--bianco) !important;
}
.bg_nero {
    background-color: var(--nero) !important;
}

/*
.bg_primario {
    background-color: var(--primario) !important;
}
.bg_secondario {
    background-color: var(--secondario) !important;
}
.bg_arancio {
    background-color: var(--arancio) !important;
}
*/

body {
	color: var(--nero);
	font-family: 'Montserrat-Light';
    /*
    font-size: clamp(0.875rem, 0.8387rem + 0.1613vw, 1rem);
    line-height: clamp(1.75rem, 1.5323rem + 0.9677vw, 2.5rem);
    */
    font-size: 0.875rem;
    line-height: 1.75rem;
}
/*
@media (min-width: 361px) and (max-width: 1599px){
	body {
		font-size: calc(14px + (18 - 14) * ((100vw - 361px) / (1599 - 361)));
        line-height: calc(28px + (40 - 28) * ((100vw - 361px) / (1599 - 361)));
	}
}
@media (min-width: 1600px){
	body {
		font-size: 18px;
	    line-height: 40px;
	}
}
*/


h1,h2,h3,h4,h5,h6 {
    font-weight: 400; 
    margin-bottom: 1rem;   
}

.heading_montserrat {
    font-family: 'Montserrat-Regular';
    text-transform: uppercase;
}
.heading_playfair {
    font-family: 'PlayfairDisplay-Regular';
}


.heading_1_playfair {
    /*
    font-size: clamp(4.375rem, 1.6532rem + 12.0968vw, 13.75rem);
    line-height: clamp(0.875rem, -2.9536rem + 17.0161vw, 14.0625rem);
    */
    /*font-size: clamp(4.375rem, 3.8306rem + 2.4194vw, 6.25rem);*/
    font-size: clamp(2.5rem, 1.4113rem + 4.8387vw, 6.25rem);
    line-height: clamp(5.375rem, 4.7581rem + 2.7419vw, 7.5rem);
    font-family: 'PlayfairDisplay-Regular';
}
.heading_1_montserrat {
    font-family: 'Montserrat-Regular';
    text-transform: uppercase;
    font-size: clamp(0.9375rem, 0.7742rem + 0.7258vw, 1.5rem);
    line-height: clamp(1.25rem, 0.9778rem + 1.2097vw, 2.1875rem);
}


.heading_2_montserrat {
    font-family: 'Montserrat-Regular';
    text-transform: uppercase;
    font-size: clamp(1.25rem, 1.1774rem + 0.3226vw, 1.5rem);
    line-height: clamp(2.125rem, 2.0524rem + 0.3226vw, 2.375rem);
    letter-spacing: 9.5px;
}
.heading_2_playfair {
    font-family: 'PlayfairDisplay-Regular';
    /*
    font-size: clamp(3.125rem, 2.7258rem + 1.7742vw, 4.5rem);
    line-height: clamp(4rem, 3.6008rem + 1.7742vw, 5.375rem);
    */
    font-size: clamp(2.125rem, 1.4355rem + 3.0645vw, 4.5rem);
    line-height: clamp(2.875rem, 2.1492rem + 3.2258vw, 5.375rem);
	letter-spacing: 4.5px;
}


.heading_3_montserrat {
    font-family: 'Montserrat-Regular';
    text-transform: uppercase;
    font-size: clamp(0.9375rem, 0.8831rem + 0.2419vw, 1.125rem);
    line-height: 1.6rem;
    letter-spacing: 7.5px;
}
.heading_3_playfair {
    font-family: 'PlayfairDisplay-Regular';
    font-size: clamp(1.875rem, 1.5484rem + 1.4516vw, 3rem);
    line-height: clamp(2.625rem, 2.2984rem + 1.4516vw, 3.75rem);
    letter-spacing: 2.2px;
}


.heading_4_montserrat {
    font-family: 'Montserrat-Regular';
    text-transform: uppercase;
    font-size: 1.125rem;
    line-height: 1.875rem;
    letter-spacing: 6.8px;
}




@media (min-width: 1025px){
    a.cta_btn.cta_mobile {
        display: none !important;
    }
}
@media (max-width: 1024px){
    a.cta_btn.cta_desktop {
        display: none !important;
    }
}
a.cta_btn {
    /*
    font-size: clamp(0.875rem, 0.8387rem + 0.1613vw, 1rem);
    line-height: clamp(1.25rem, 1.1593rem + 0.4032vw, 1.5625rem);
    */
    
}
a.cta_btn {
	font-size: 1rem;
    line-height: 1.6;
    text-transform: uppercase;
    padding: 0.5rem 1.5rem;
	text-decoration: none !important;
}
a.cta_btn.fit {
	display: block;
	max-width: fit-content;
}
a.cta_btn.center {
	margin-left: auto;
	margin-right: auto;
}
a.cta_btn.full {
	display: block;
	width: 100%;
}
a.cta_btn.center {
	display: block;
	max-width: fit-content;
	margin-left: auto;
	margin-right: auto;
}

a.cta_btn {
    border: 1px solid var(--nero);
    color: var(--nero);
    background-color: transparent;

    transition: all 500ms ease;
    -moz-transition: all 500ms ease;
    -webkit-transition: all 500ms ease;
    -ms-transition: all 500ms ease;
    -o-transition: all 500ms ease;
}
a.cta_btn:hover {
    color: var(--bianco);
    background-color: var(--nero);

    transition: all 500ms ease;
    -moz-transition: all 500ms ease;
    -webkit-transition: all 500ms ease;
    -ms-transition: all 500ms ease;
    -o-transition: all 500ms ease;
}
section#hero a.cta_btn {
    border: 1px solid var(--bianco) !important;
    color: var(--bianco) !important;
}
section#hero a.cta_btn:hover {
    color: var(--nero) !important;
    background-color: var(--bianco) !important;
}