@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&display=swap');

h1,h2,h3,h4,h5,h6,
blockquote.testimonial-big .title,
.de-box-price span{
	font-family: "Cormorant Garamond";
	font-weight: 600;
	text-transform: none;
	letter-spacing: normal;
}

body{
	font-size: 16px;
	font-weight: 300;
}


blockquote.testimonial-big .d-testi{
	font-size: 32px;
	font-family: "Cormorant Garamond";
	font-style: italic;
	line-height: 1.5em;
}

#back-to-top:before{
	color: #ffffff;
}

.de_tab.tab_steps .de_nav li span{
	font-family: "Cormorant Garamond";
}

.de-card-room .d-price span{
	font-family: "Cormorant Garamond";
	font-size: 24px;
}

.expand h4{
	font-size: 15px;
}

h1{
	letter-spacing: 0;
	font-size: 46px;
	text-transform: none;
	letter-spacing: -2px;
}

h2{
	font-size: 48px;
	letter-spacing: -1.15px;
	margin-bottom: 20px;
}

h2 span{
	display: block;
	font-size: 20px;
	letter-spacing: 0;
	line-height: 1.2em;
}

h3{
	font-size: 24px;
}

h4{
	font-size: 20px;
}

header.transparent{
	border-bottom: solid 1px rgba(255, 255, 255, .2);
}

header.smaller:not(.header-bottom):not(.side-header):not(.force-header-mobile),
header.smaller,
header.header-mobile{
	background: rgba(34, 34, 34, .75);
	border: none;
}

#mainmenu,
#mainmenu li a{
	font-size: 15px;
	font-weight: 500;
	text-transform: none;
	letter-spacing: 0;
}

.de_count.ultra-big{
	padding: 0;
}

.de_count.ultra-big h3{
	letter-spacing: -10px;
	margin-bottom: 0;
}

.de_count.ultra-big span{
	letter-spacing: 0;
	font-size: 16px;
}

.de_phone-simple .d-num{
	color: #000000;
}

.box-number.square i{
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
}

.de_tab.tab_steps .de_nav li span{
	text-transform: none;
}

.de_light #contact_form input[type=text], .de_light #contact_form textarea, .de_light #contact_form input[type=email], .de_light #search, .de_light #contact_form select{
	background: none;
	border: solid 1px rgba(0, 0, 0, .2);
}

#contact_form label span{
	display: block;
	font-weight: bold;
	font-size: 18px;
}

p.lead{
	font-size: 17px;
}

footer .widget ul li{
	padding: 2px 0;
}

footer address span{
	padding: 2px 0;
}

.de_light section{
	background: #F7F5F0;
}

.ultra-big-white{
	font-size: 84px;
	font-family: "Cormorant Garamond";
	text-transform: none;
	letter-spacing: 0;
	line-height: .95em;
}

/* ===== Galerie masonry 3 colonnes ===== */
.fg-masonry {
    column-count: 3;
    column-gap: 20px;
    margin-top: 40px;
}

.fg-item {
    display: block;
    margin-bottom: 20px;
    break-inside: avoid;
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    overflow: hidden;
    border-radius: 4px;
    position: relative;
}

.fg-item img {
    display: block;
    width: 100%;
    height: auto;
    transition: transform .4s ease, opacity .4s ease;
}

.fg-item:hover img {
    transform: scale(1.05);
    opacity: .9;
}

/* Tablette : 2 colonnes */
@media (max-width: 991px) {
    .fg-masonry { column-count: 2; }
}

/* Mobile : 1 colonne */
@media (max-width: 575px) {
    .fg-masonry { column-count: 1; }
}

/* ===== Lightbox ===== */
.fg-lightbox {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.9);
    z-index: 99999;
    align-items: center;
    justify-content: center;
}

.fg-lightbox.is-open {
    display: flex;
}

.fg-lightbox-img {
    max-width: 90vw;
    max-height: 88vh;
    width: auto;
    height: auto;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.6);
    border-radius: 4px;
}

.fg-close,
.fg-prev,
.fg-next {
    position: absolute;
    background: transparent;
    border: none;
    color: #fff;
    cursor: pointer;
    font-size: 42px;
    line-height: 1;
    padding: 10px 16px;
    transition: color .2s ease, opacity .2s ease;
    opacity: .8;
}

.fg-close:hover,
.fg-prev:hover,
.fg-next:hover {
    color: #c8a165;
    opacity: 1;
}

.fg-close {
    top: 15px;
    right: 20px;
    font-size: 48px;
}

.fg-prev { left: 20px;  top: 50%; transform: translateY(-50%); }
.fg-next { right: 20px; top: 50%; transform: translateY(-50%); }