
 :root {
	--font-color: #000;
	--darkgreen: #164529;
	--lightgreen: #1FB25A;
 }

@font-face {
	font-family: 'Montserrat';
	src: url('/_font/Montserrat-Regular.ttf');
	font-display: swap;
}
@font-face {
	font-family: 'PlayfairDisplay';
	src: url('/_font/PlayfairDisplay-Regular.ttf');
	font-display: swap;
}
@font-face {
	font-family: 'Poppins';
	src: url('/_font/Poppins-Regular.ttf');
	font-display: swap;
}

html {
	font-family:Montserrat, Helvetica, "Trebuchet MS";
	color:var(--font-color);
	font-size:18px;
}

p {
	/* font-size: 0.875rem; */
}

.justify {
	text-align:justify;
}

.all_content {
	margin:auto;
	background-color: white;
}

.container {
	max-width:1320px;
}

img {
	max-width:100%;
	border:0;
}

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

a:hover {
	color:var(--lightgreen);
}

h1,h2,h3,h4,h5 {
	font-family:Poppins;
}

h1 {
	font-size:2.5rem;
}
h2 {
	font-size:1.8rem;
}
h3 {
	font-size:1.5rem;
}
h4 {
	font-size:1.2rem;
}
h5 {
	font-size:1rem;
}
.huge-text {
	font-size:2.5rem;
	font-weight:700;
	line-height:1em;
}
.small-text {
	font-size:0.8rem;
}
.tiny-text {
	font-size:0.7rem;
}
.compact-text {
	line-height:1rem;
}
.playfair {
	font-family:PlayfairDisplay;
}
.montserrat {
	font-family:Montserrat;
}
.big-text, .big-text > p {
	font-size:1.2rem !important;
}

ul.jelix-msg {
	list-style: none;
	padding-left: 0;
}
 
.quote {
	font-family:Montserrat;
}
.left {
	float:left;
}	
.right {
	float:right;
}
.clear {
	clear:both;
}
 
/*** COLORS ***/
.bgBlanc { 
	background: rgba(255,255,255);
}
.bgGris { 
	background-color:#f4f4f4;
}
.bgDark {
/*	background-color:rgba(0,0,0,0.15);	*/
	border-radius:10px;
	padding: 10px 16px;
	color:#fff;
}
.bgDVert { 
	background-color:var(--darkgreen);
	color:#fff;
}
.bgLVert { 
	background-color:var(--lightgreen);
	color:#fff;
}
.bgLVert:hover {
	background-color:var(--darkgreen);
}
.bgDVert a {
	color:#fff;	
}

.lVert {
	color:var(--lightgreen);
}
.dVert {
	color:var(--darkgreen);
}

/*** POSITION ***/
.center { 
	text-align:center;
}
.clear { 
	clear:both;
}
.align-bottom {
	position:absolute;
	bottom:0;
	/* padding:1rem; */
}

/*** FORMS ***/

.btn-primary {
	background-color:var(--darkgreen);	
	border:none;
}
.btn-primary:hover {
	background-color:var(--lightgreen);
}
.btn-secondary {
	background-color:var(--lightgreen);	
	border:none;
}
.btn-secondary:hover {
	background-color:var(--darkgreen);
}
.btn-big {
margin:1rem; 
padding:1rem 3rem;
}
.btn-header {
	font-size:0.8rem;
	border-radius:2rem;
	border: 1px solid #000;
	padding:0.3rem 2rem;
	background-color:#fff;
}
.btn-header:hover {
	color:#fff;
	background-color:var(--lightgreen);
	border: 1px solid #000;
}
.btn-semi-transp {
	background-color:rgba(255, 255, 255, 0.8);
	padding:0.5rem 1rem;
	border-radius:2rem;
}
.btn-semi-transp:hover {
	background-color:var(--lightgreen);
}

#volSelectGroup > label {
	border-radius:2em;
	padding:0.5em 2em;
	margin:0.5em 0.5em 0.5em -2.5em;
	background-color:white;
}
#volSelectGroup > input:checked + label {
	background-color:var(--darkgreen);
	color:white;
}
#volSelectGroup > input:not(:checked) + label {
	border:1px solid var(--darkgreen);
}
.form-floating > label {
	left:20px;
}
.form-floating > .form-control {
	border: var(--bs-border-width) solid var(--font-color);
}
.form-select {
	padding:1rem;
	border: var(--bs-border-width) solid var(--font-color);	
}
/*** CAROUSSEL ***/

.carousel-indicators [data-bs-target] {
	background-color:var(--darkgreen);
	width: 25px;
	height: 25px;
	border-radius: 100%;
	margin-right:1rem;
}
.carousel-indicators {
	bottom: -65px;
}
.gallery-nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	border: none;
	width: 50px;
	height: 50px;
	display: flex;
	cursor: pointer;
	z-index: 10;
	background:transparent;
	opacity:1;
}

.gallery-nav:hover {
	transform: translateY(-50%) scale(1.2);
}

.gallery-nav.prev {
	left: 10px;
}
.gallery-nav.next {
	right: 10px;
}

.gallery-nav svg {
	width: 50px;
	height: 50px;
	stroke: var(--lightgreen);
	stroke-width: 5;
}
/*** HEADER ***/
/* .topLogo { 
	max-width:120px;
	margin: 0px 1rem;
} */

header {
	/* box-shadow: 0 2px 5px 0 rgba(0,0,0,.16),0 2px 10px 0 rgba(0,0,0,.12); */
}
header ul {
	padding-left: 0;
}
header li {
	list-style: none;
}
header .topLogo {
	width:120px;
	height:42px;
	background: url('/_img/logo_gallia-golf_small.png');
}
header .nav-link, .dropdown-toggle {
	color:var(--font-color) !important;
	text-transform:uppercase;
	font-size:0.8rem;
	margin: 6px 20px 0 20px;
	font-family:poppins;
}

header .navbar, .dropdown a {
	font-size:0.8rem;
}
	
header a {
	font-family:poppins;
}
header .nav-link:hover, .dropdown-toggle.show {
	text-decoration:underline;
/* color:#fff !important;
 background-color:var(--lightgreen); */
}
header .nav-pills	.nav-link.active {
/* color:#fff;
 background-color:var(--darkgreen); */
	text-decoration:underline;
}
header .dropdown-menu {
	border-radius:0;
	margin-top:-1px !important;
}
header .dropdown-menu.show {
	margin-left:15px;
	z-index:1050;
}
header .headerPhone {
	width:25px;
	height:23px;
	background: url('/_img/_icons/telephone_b.png');
}
.navbar-toggler {
/*	width:64px;	*/
	border:none;
	box-shadow:none !important;
}
#navbarNavDropdown .navbar-toggler {
    display: block !important;
}

header.scroll-top:not(:hover) {
	background-color:transparent;
		color: #fff;
}
header.scroll-top:not(:hover) .navbar  .nav-link, header.scroll-top:not(:hover) .navbar-nav > li > .small-text > a, .dropdown-toggle li a {
	color: #fff !important;
}
header .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 0, 0, 1)' stroke-width='3' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}
header.scroll-top:not(:hover) .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 1)' stroke-width='3' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}
header.scroll-top:not(:hover) .btn-primary {
	background-color:transparent;
	border:1px solid #fff;
}
header.scroll-top:not(:hover) .btn-primary:hover {
	background-color:var(--lightgreen);
}
header.scroll-top:not(:hover) .headerPhone {
	background: url('/_img/_icons/telephone_white.png');
}
header.scroll-top:not(:hover) .topLogo {
	background: url('/_img/logo_gallia-golf_small_white.png');
}
.offcanvas, .offcanvas-body {
	width:500px !important;
	max-width:100% !important;
}
#submenu {
	font-size:0.8rem;
}
#submenu ul {
	padding:0;	
}
#submenu li {
	list-style: none;
	margin-bottom:0.5rem;
}
/*** FOOTER ***/

.footer-partners-container {
	margin: 0;
	text-align: center;
}

.footer-partner-item {
	display: inline-block;
	margin: 10px 68px;
}

/*** BREADCRUMB ***/
ul.breadcrumb {
	display:inline-block;
	margin: 10px;
	list-style: none;
	font-size:0.9rem;
}
ul.breadcrumb li {
	color:#fff;	
	display: inline;
/*	font-family:montserrat;	*/
}
ul.breadcrumb li+li:before {
	padding: 8px;
	content: ">";
}
ul.breadcrumb > li > a {
	color:#fff;	
}
ul.breadcrumb.bcBlk > li {
	color:#000;	
}
ul.breadcrumb.bcBlk > li > a {
	color:#000;	
}
/*** MODAL ***/

.modal {
	--bs-modal-width:950px;
}

/*** products ***/
.golf-listing .card {
	border:none;
}
.card-img-container  {
	border-radius:25px;	
	overflow:hidden;
}
.card-sejour .card-img-top {
	transition: all 0.3s;
}
.card-sejour:hover .card-img-top {
	transform: scale(1.1);
}
.card-sejour:hover .card-price {
	text-decoration:underline;
}
/*
.card-sejour:hover a {
	color:var(--lightgreen);
}
*/
.card-sejour > .card-footer {
	border:0;
}
.card {
	background-color:transparent;
}
.lazy-map-img {
	width:100%;
	aspect-ratio:1.42;
}

/*** MAP ***/
#mapContainer {
	padding-top:1rem;
}

.mapConsent {
	display:inline-block;
	background-color:#fff;
	border-radius:15px;
	padding:1em 2em;
	margin:5em 2em;
}
.infoBox{
	background: #f6f6f6 !important;
	padding: 10px !important;
	font-size: 10px !important;
	z-index: 10 !important;
	border:2px solid var(--lightgreen);
	border-radius: 10px;
}

.infobox-title {
	font-size: 14px !important;
	font-weight: bold !important;
}

.infoBox p{
	text-align: center;
	margin: 0 !important;
}

.clickable{
	cursor:pointer;
}

/*** PAGE HOME ***/

.hero-content-home {
	padding: 2rem 0 16rem 0;
}
.hero-content {
	padding: 7rem 0 11rem 0;
}
.search-section {
	max-width: 600px;
	margin: 0 auto 1.5rem;
}
.search-section.whiteBtn {
	background-color: rgba(255, 255, 255, 0.50);
	border-radius: 50px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.07);
}
.search-section.whiteBtn:hover {
	background-color: rgba(255, 255, 255, 0.60);	
}
.search-select {
	border: none;
	font-family:Poppins;
	background-color: transparent;
	padding: 1rem;
	width:240px;
}
.search-container {
	width:240px;
}

.search-container ::placeholder {
  color: var(--font-color);
  opacity: 1; /* Firefox */
}

.search-container ::-ms-input-placeholder { /* Edge 12 -18 */
  color: var(--font-color);
}

.blkBtn {
	border-radius: 50px;
	margin:5px;
	padding:0.5rem 2rem;
	border: 2px solid;
	font-weight: 700;
}

.action-buttons > .whiteBtn {
	color:#fff;
	background-color: rgba(255, 255, 255, 0.50);
	border-radius: 50px;
	margin:5px;
	padding:0.5rem 2rem;
}

.action-buttons > .whiteBtn:hover, .blkBtn:hover {
	color:#fff;
	background-color: var(--lightgreen);
}
.action-buttons > .whiteTransBtn {
	color:#fff;
	border: 1px solid #fff;
	border-radius: 50px;
}
.action-buttons > .whiteTransBtn:hover {
	background-color: var(--lightgreen);
}
.podcast-card {
	border-radius: 15px;
	background-size: cover;
	background-position: center;
	min-height: 485px;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: 2rem;
	color: white;
}
.title-expertise {
	display:flex;
	align-items: center;
}
.title-expertise hr {
	flex: 1;
	border-top: 2px solid #000;
	color:#000;
}
.icon_vert {
	border-radius:50%;
	background-color:#fff;
	width:60px;
	height:60px;
	text-align:center;
	padding:10px;
	margin:auto;
}
.golf-hero-section-text {
	/* background: rgba(255,255,255,0.4); */
	color:#fff;
	padding:2rem;
	margin:6rem 0;
	border-radius:15px;
}
#golfDestinationsCarousel h5 {
	font-size:2.5rem;
	font-weight:700;
}

/*** PAGE DESTINATION CONTINENT ***/
.icon_continent {
	background-color:#f4f4f4;
	border-radius:15px;
	padding:1rem;
}
.icon_continent ul {
	padding-left: 0;
}
.icon_continent li {
	list-style: none;
}

.img_continent {
	border-radius:15px;
	margin-top:2em;
}

/*** PAGE DESTINATION ***/
.hero-banner, .hero-section {
	padding-top:75px;
	margin-top:-75px;
}
.hero-banner .title {
	margin-top: 7rem;
}
.hero-banner .title > h1 {
	font-family:'PlayfairDisplay';
	font-size:3.2rem;
	font-weight:700;
	margin-bottom:1.2rem;
}
.hero-banner .title > h2 {
	font-family:'PlayfairDisplay';
}
.bgDVert .title > h1 {
	font-size: 1.4rem;
}
.sejour-top-button {
	text-align:right;
}
.pays-buttons .whiteBtn {
	color: #fff;
	text-transform:uppercase;
	font-weight:700;
	border: #fff 2px solid;
	border-radius: 50px;
	padding: 0.5rem 2.5rem;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.07);
	margin:0px 10px 10px 0px;
}
.pays-buttons > .whiteBtn:hover {
	background-color: var(--lightgreen);
}
.highlight-card {
	border-radius: 15px;
	background-size: cover;
	background-position: center;
	height: 392px;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: 2rem;
	color: white;
}
.partirIcons > div {
	display:inline-block;
	margin-right:16px;
}
.partirIcons img {
	width:36px;
	margin-top:10px;
}

/* --- GOLF --- */
.golf-pics img {
	border-radius:35px;
}
#videoCarouselBody {
max-width: 100% !important;
  width: 1250px;
  height: 650px;
}
/* --- SEJOUR --- */
.pills-feature > .nav-item > .nav-link {
	border:1px solid var(--font-color);
	color:var(--font-color);
	border-radius:25px;
	margin-right:2rem;
}.pills-feature > .nav-item > .nav-link:hover {
	border:1px solid var(--lightgreen);
	color:var(--lightgreen);
}
.pills-feature > .nav-item > .nav-link.active {
	border-radius:25px;
	color:#fff;
	background-color:var(--lightgreen);
	border:1px solid var(--lightgreen);
}
.feature-round {
	border-radius:25px;
}
.mega-round {
	border-radius:50px;
}

/* --- EQUIPE --- */
#staffCarousel img {
	border-radius:10px;
}

#carouselPreview, #carouselPays {
	position: relative; padding: 20px 0; }
#carouselPreview .carousel-inner, #carouselPays .carousel-inner {
	display: flex; overflow: visible; }
#carouselPreview .carousel-item,#carouselPays .carousel-item {
	width: 50%; transition: transform 0s ease; margin: 0 0px; }
#carouselPreview .carousel-item img{
	object-fit: cover; 
	width: 100%; 
	border-radius: 8px; 
	box-shadow: 0 4px 10px rgba(0,0,0,.2); 
}

#zoneExperts #carouselPreview .carousel-inner .carousel-item {
	margin:0 10px;
}
#zoneExperts #carouselPreview .carousel-inner .carousel-item:not(.active) {
opacity:0.5; display:inline-block;}

#carouselPays .carousel-inner .carousel-item:not(.active) {
display:inline-block; }

.mobile-only {
	display:none;
}	

#sousMenuVol {
	margin-left:300px;
}

@media (max-width: 1170px) {
	header .nav-link, .dropdown-toggle, .dropdown-menu {
		font-size:0.7rem;
		margin: 6px 10px 0 10px;
	}
	#sousMenuVol {
		margin-left:220px;
	}
}
@media (max-width: 991px) {
	.mobile-only {
		display:block;
	}
/*
	.dropdown-menu img {
		display:none;
	}
	.dropdown-menu > div > div:after {
		border-right:1px solid #000;
	}
*/
}

@media (max-width: 768px) {
	
	.desktop-only {
		display:none;
	}
	h1 {
		font-size:3rem;
	}
	.search-container  {
		width:150px;
	}
	.search-select {
		font-size: 1rem;
		width:150px;
		padding:0.5rem;
	}
	#videoCarouselBody {
		height:400px;
	}
	#mapContainer {
		display:none;
	}
	.search-select {
		padding:0.5rem;
	}
	.btn-big {
		font-size:0.9rem;
	}
	.hotel-buttons .nav-link {
		margin-right : 1rem !important;
		margin-bottom : 1rem !important;
	}
	.hero-banner .title {
		margin-top: 0.5rem;
	}
	.hero-banner {
		min-height: 250px !important;
	}
	#mapListing .trip-listing, #mapListing .golf-listing {
		padding-right:0;
	}
	#agenceEngagements .agenceImgCont {
		padding-left:0px !important;
		padding-right:0px !important;
	}
	.sejour-top-button {
		text-align:center;
	}
	.sejour-top-button > button {
		margin-top:0 !important;
	}
}

@media (max-width: 576px) {
	h1 {
		font-size:2rem;
	}
	.search-select {
		font-size: 0.8rem;
	}
	#videoCarouselBody {
		height:300px;
	}
}