body{
	font-size: 14px;
	line-height: 24px;
}
h1,h2{
    font-family: 'Saira Semi Condensed', sans-serif;
    font-size: 30px !important;
    font-weight: 700 !important;
    line-height: 1.2;
    color: inherit;
}

h3{
	font-size: 26px;
	margin: 0 !important;
}
a,
a:hover{
  color: #2AA11D;
}

/*header*/
#sp-header {
    box-shadow: none;
}

#sp-top-bar,
#sp-header {
    background: #2AA11D;
    color: #fff;
}
.sp-megamenu-parent > li > a {
    color: #fff;
}
.sp-megamenu-parent > li.active > a, 
.sp-megamenu-parent > li.active:hover > a,
.sp-megamenu-parent > li:hover > a {
    color: #00271A;
}
/*sub-menu*/
.sp-megamenu-parent .sp-dropdown .sp-dropdown-inner {
    background: #2AA11D;
}
.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a{
  color: #fff;
}
.sp-megamenu-parent .sp-dropdown li.sp-menu-item.active > a,
.sp-megamenu-parent .sp-dropdown li.sp-menu-item > a:hover {
    color: #00271A;
}
/*logo slogan*/
#sp-header .logo a, #sp-header .logo a h1{
  color: #fff;
  font-size: 18px !important;
}

#sp-header .logo a h1{
  font-weight: 400 !important;
  line-height: 1;
  margin-bottom: 0;
}

/*menu mobile*/
.offcanvas-menu .offcanvas-inner .sp-module ul > li a {
    text-transform: uppercase;
}
.offcanvas-menu {
    background-color: #2AA11D;
    color: #ffffff;
}
.offcanvas-menu .offcanvas-inner .sp-module ul > li.menu-parent > a > .menu-toggler:after {
    font-family: "FontAwesome";
    content: "\f107";
    float: right;
    margin-left: 7px;
}
.offcanvas-menu .offcanvas-inner .sp-module ul > li.menu-parent.menu-parent-open > a > .menu-toggler:after{
    font-family: "FontAwesome";
    content: "\f107";
    float: right;
    margin-left: 7px;
    color: #ffffff;
    transform: rotate(180deg);
}
.offcanvas-menu .offcanvas-inner {
  padding: 100px 18px 0 30px;
}
#offcanvas-toggler > .fa,
.offcanvas-menu .offcanvas-inner .sp-module ul > li a, 
.offcanvas-menu .offcanvas-inner .sp-module ul > li span,
.offcanvas-menu .offcanvas-inner .sp-module ul > li.menu-parent > a > .menu-toggler:after,
#offcanvas-toggler > .fa:hover, 
#offcanvas-toggler > .fa:focus, 
#offcanvas-toggler > .fa:active 
{
    color: #ffffff;
}
body.ltr .close-offcanvas {
    right: 12px;
}
.close-offcanvas {
    top: 50px;
    background: transparent;
    color: #ffffff;
}
.offcanvas-menu .offcanvas-inner .sp-module ul > li {
    padding-bottom: 8px !important;
}
.offcanvas-menu .offcanvas-inner .sp-module ul > li.active,
.offcanvas-menu .offcanvas-inner .sp-module ul > li a:hover,
.offcanvas-menu .offcanvas-inner .sp-module ul > li ul li a{
	color: #00271A;
}

/*slider*/
#sp-main-body .rev_slider .ossona-slider-home .slotholder{
  opacity: 0.4 !important;
  background-color: white !important;
}



/*button*/
.btn-ramoneur{
	text-transform: uppercase;
  background-color: #2AA11D;
  border-color: #2AA11D;
  color: #fff;
  width: 300px;
  border-radius: 0px;
}

.btn-ramoneur:hover {
    border-color: #2AA11D;
    color: #2AA11D;
    background-color: #fff;
}

/*separate line*/
.separate-line{
	border-top: 1px solid #c21723;
  padding-top: 15px;
  margin-top: 30px;
}


/*************FOOTER***************/
#sp-footer, #sp-bottom {
    background: #100b00;
}
#sp-bottom{
	padding-bottom: 0;
}
#sp-bottom .sp-module{
  margin-bottom: 0;
}
#sp-footer .container-inner {
  border-top: none;
}

#sp-footer{
  padding: 0;
  margin: 0;
}
#sp-footer .container-inner {
  padding: 10px 0;
}
.copyright_text a{
  font-weight: bold;
}

#sp-bottom a:hover,
#sp-footer a:hover{
  color: #2AA11D; 
}
/*icons réseaux sociaux*/
#sp-footer a:hover, #sp-bottom a:hover, #sp-footer a:active, #sp-bottom a:active, #sp-footer a:focus, #sp-bottom a:focus{
	color: #2AA11D; 
}

/************FORMULAIRE****************/
#userForm {
  position: relative;
  z-index: 99;
  margin: 0 20px 0 0;
}

#userForm h2{
  padding-bottom: 10px;
}

#userForm h3{
    padding-bottom: 10px;
    padding-top: 20px;
}
#userForm h4{
  font-size: 18px;
  font-weight: 400;
  padding-top: 20px;
  line-height: 22px;
}

/*general settings*/
/*PLACEHOLDER*/
#userForm .control-group .controls input::placeholder,
#userForm .control-group .controls textarea::placeholder  {
  color: #3e3e3e !important;
  opacity: 1; /* Firefox */
  text-transform: uppercase;
}
#userForm .control-group .controls input:-ms-input-placeholder,
#userForm .control-group .controls textarea:-ms-input-placeholder { /* Internet Explorer 10-11 */
 color: #3e3e3e !important;
 text-transform: uppercase;
}

#userForm .control-group .controls input::-ms-input-placeholder,
#userForm .control-group .controls textarea::-ms-input-placeholder  { /* Microsoft Edge */
 color: #3e3e3e !important;
 text-transform: uppercase;
}

.formControlLabel{
  text-transform: uppercase !important;
}
/*element state*/
#userForm .control-group .controls input:hover,
#userForm .control-group .controls input:focus,
#userForm .control-group .controls input[type="tel"]:focus,
#userForm .control-group .controls input[type="email"]:focus,
#userForm .control-group .controls textarea:hover,
#userForm .control-group .controls textarea:focus{
  border-color: #2AA11D;
  box-shadow: none;
}

#userForm .control-group {
	margin: auto;
}

#userForm .control-group label {
  display: none;
}

/****radiobutton******/
#userForm .control-group .controls input[type=radio],
#userForm .control-group .controls input[type=checkbox] {
	min-height: auto;
	width: auto;
}
#userForm .control-group label.radio{
	display: inline-block;
}
#userForm .control-group label.radio:first-child{
	display: block;
}
.radio.inline+.radio.inline{
	margin-left: 0px;
}
.radio.inline+.radio.inline:nth-of-type(3){
	margin-left: 10px;
}
/********Checkbox*********/
#userForm .control-group label.checkbox{
	display: inline-block;
}
#userForm .control-group label.checkbox:first-child{
	display: block;
}
.checkbox.inline+.checkbox.inline{
	margin-left: 0px;
}
.checkbox.inline+.checkbox.inline:nth-of-type(3){
	margin-left: 10px;
}


/*******datepicker*********/
#userForm .control-group .controls .rsform-calendar-button{
	display: none;
}
#userForm .rsform-block-date-de-naissance{
	margin-top: 20px;
}



#userForm .control-group .controls {
    margin: 8px 0;
    width: auto;
}

#userForm .control-group .controls input {
    min-height: 36px;
}

input[type="text"]:focus, textarea:focus{
  box-shadow: none;
}

#userForm .control-group .controls input, 
#userForm .control-group .controls textarea {
  max-width: 100%;
  background: #f1f1f1;
  border-radius: 0;
  border: 1px solid #f1f1f1;
  width: 100%;
  padding: 0 0 0 12px;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  color: #3e3e3e;
  box-shadow: none;
}

/*textarea*/
#userForm .control-group .controls textarea {
	min-height: 100px;
  font-size: 1rem;
  padding: 6px 0 0 12px !important;
}
textarea {
  resize: none;
}

/*button send*/
#userForm button[type="submit"]{
	text-transform: uppercase;
  padding: 10px 50px;
  font-size: 20px;
  border-radius: 0px;
  border: 1px solid #2AA11D;
  color: #FFF;
  background: #2AA11D;
  text-shadow: none;
  box-shadow: none;
  transition: all .15s ease-in-out;
}


#userForm button[type="submit"]:hover, 
#userForm button[type="submit"]:active,
#userForm button[type="submit"]:focus{
	background: transparent !important;
  color: #2AA11D !important;
  border: 1px solid #2AA11D !important;
}
.btn-primary.focus, .btn-primary:focus, .btn:focus {
    box-shadow: none;
}
/*button position*/
#userForm .rsform-block-envoyer{
  text-align: right;
}


/***************error***********/
/*overall sentence*/
.formRed {
    color: #CF4D4D;
    font-weight: bold;
	margin-bottom: 6px;
}
#userForm .formValidation {
    width: 100%;
    display: block !important;
}
#userForm .formError {
  color: #CF4D4D;
  margin-top: -34px;
  margin-right: 12px;
  position: relative;
  float: right;
  font-size: 13px;
  font-weight: normal;
}
.control-group.error input{
	color: #CF4D4D;
}
#userForm .control-group .controls input.rsform-error,
#userForm .control-group .controls textarea.rsform-error {
    border-color: #CF4D4D;
    box-shadow: none;
}

/*radiobutton error*/
#userForm .rsform-block-sexe .formError,
#userForm .rsform-block-inscription-ski-snowboard .formError {
	margin-top: -20px;
}
.control-group.error .radio{
	color: #CF4D4D;
}


/***RECAPTCHA**/
.grecaptcha-badge{
	visibility: collapse !important;  
}



/*responsive*/
@media (max-width: 767px) {
  #userForm h2 {
    font-size: 22px;
    padding: 0;
    margin: 0;
  }
 
  /*good margin*/
  #userForm .formContainer {
    margin-left: 0;
    margin-right: 0;
  }
  #userForm {
    margin-top: -30px;
    padding: 15px;
  }
  #userForm .control-group {
    width: 100%;
  }
  #userForm .control-group .controls {
    margin: 15px 0;
  }
  
}
/*FIN FORMULAIRE*/


/****************Vik Booking******************/
.com-vikbooking #sp-main-body {
    padding: 50px 0;
}
.vblistroomnamediv .vblistroomname {
    font-family: 'Saira Semi Condensed', sans-serif;
    font-size: 24px;
    font-weight: 600;
    color: #3e3e3e;
}
.room_cost {
    color: #2AA11D;
}
.vbcaltrmonth td {
    background: #2AA11D;
}

.vbo-search-submit .btn{
text-transform: uppercase;
  background-color: #2AA11D;
  border-color: #2AA11D;
  color: #fff;
  width: 300px;
  border-radius: 0px;
}
.vbo-search-submit .btn:hover {
    border-color: #2AA11D;
    color: #2AA11D;
    background-color: #fff;
}

/******PAGE 404 - ERROR*******/
html.error-page .error-logo {
    width: 50%;
    margin-top: 20px;
}
/****************RESPONSIVE******************/


@media screen and (max-width: 992px){
  .ramoneur-map-row .sppb-col-md-9{
    width: 70%;
  }
  .ramoneur-map-row .sppb-col-md-3{
    width: 30%;
  }
  #sp-top2 .text-center{
      text-align: right !important;
  }
  .sp-module-content .mod-languages ul.lang-inline li {
    margin: 0;
  }
  #sp-top-bar{
    padding: 8px 0 0;
  }

}

@media (max-width: 767px){
	body {
	    padding-right: 0;
	    padding-left: 0;
	}
}


@media (max-width: 500px){
  .logo-image-phone {
      width: 100%;
  }
}




/*VIK BOOKING*/
/*design page*/
.view-roomdetails .vbroomimgdesc{
    width: 40%;
    float: left;
}
.view-roomdetails .vbo-rdet-descprice-block{
	width: 58%;
    float: right;
}
.view-roomdetails .vbo-rdet-descprice-block .vbo-rdet-desc-cont {
    width: 70%;
}
.view-roomdetails .vbo-rdet-descprice-block .vb_detcostroomdet {
    width: 30%;
}
.view-roomdetails .vblistroomname .room_cost {
    line-height: 32px;
}
.view-roomdetails .vikfx-gallery-container .vikfx-gallery img {
    max-height: 100px;
    max-width: 100px;
}
.com-vikbooking form .vbcustomfields .iti--allow-dropdown input[type="tel"]:not(.form-control){
    padding-left: 40px;
}

/*désactivé info checkin checkout sur agenda*/
.vblegendediv .vblegenda:nth-of-type(2), .vblegendediv .vblegenda:nth-of-type(3) {
   display: none;
}
/*checkin-checkout background*/
tr.vbcalnumdays td.vbtdbusyforcheckout,
tr.vbcalnumdays td.vbtdbusyforcheckin {
    background: #B20000 !important;
    text-shadow: none;
}
/*btn Stripe*/
.com-vikbooking .vbvordpaybutton form .stripe-button-el{
    min-height: 40px;
    text-transform: uppercase;
    background: #2AA11D;
    border-color: #2AA11D;
    color: #fff;
    width: 300px;
    border-radius: 0px;
    background-image: none;
    text-shadow: none;
    box-shadow: none;
}
.com-vikbooking .vbvordpaybutton form .stripe-button-el span{
  background: #2AA11D;
  border-color: #2AA11D;
  color: #fff;
  box-shadow: none;
}

.com-vikbooking .room_options .vbo-showprc-optionstable .vbo-showprc-option-entry-input input{
    margin: 0 auto;
}
.vbo-booking-details-head.vbo-booking-details-head-pending h4{
   margin: 0;
}

/*btn reserver maintenant*/
.com-vikbooking .vbo-room-details-booking-wrapper .vb-search-inner .vbo-search-submit {
    align-self: flex-end;
}
/*nb nuits*/
.com-vikbooking .vbo-room-details-booking-wrapper .vb-search-inner .vbo-search-num-racblock #vbjstotnights {
    font-size: 18px;
    padding-left: 30px;
    align-self: flex-end;
}

/*age enfant*/   
.vbageintervals {
    font-weight: bold;
}  

/*module de recherche sur page d'accueil*/
.vbsearchinputmodhors {
    background: white;
    border-radius: 0px;
    color: #2AA11D;
    margin: 23px 0 0 0px;
} 
.vbo-horizsearch-numnights-inner{
  font-weight: bold;
}

@media only screen and (max-width: 600px){
	.view-roomdetails .vbroomimgdesc{
	    width: 100%;
	    float: left;
	}
	.view-roomdetails .vbo-rdet-descprice-block{
		width: 100%;
	    float: right;
	}

	.view-roomdetails .vbo-rdet-descprice-block .vbo-rdet-desc-cont {
	    width: 100%;
	}
	.view-roomdetails .vbo-rdet-descprice-block .vb_detcostroomdet {
	    width: 100%;
	}
}






