@charset "UTF-8";

@import url("https://fonts.googleapis.com/css?family=Sacramento");
.container {
  width: 100% !important;
  max-width: 1170px !important;
}
p {
  margin: 0 0 15px 0;
}
header .container {
  width: 100%;
  max-width: 1170px;
}
.wrapper_table {
  display: table;
  width: 100%;
  table-layout: fixed;
}
.wrapper_table > div {
  display: table-cell;
}
.wrapper_logo {
  width: 225px;
}
.wrapper_logo img {
  max-width: 100%;
  height: auto;
}
header .wrapper_table > div {
  vertical-align: top;
}
.header_top {
  text-align: right;
  padding-bottom: 10px;
}
.header_right {
  padding: 20px 0 10px 0;
}

.menu-3 nav > ul > li:last-child a,
.menu-3 nav > ul > li:last-child {
  padding-right: 0;
}
.c-button {
  padding: 8px 20px;
  font-size: 14px;
  text-transform: none;
  line-height: 100%;
  font-weight: normal;
  color: #146ed3;
  border: 1px solid #146ed3;
}
.c-button:hover {
  background-color: #146ed3;
  color: #fff;
}
.menu-3 nav > ul > li {
  padding-top: 10px;
  padding-bottom: 10px;
}

.menu-3 nav > ul > li {
  border-top: none !important;
}
.phone_box {
  display: inline-block;
  font-size: 18px;
  font-weight: bold;
  margin-left: 10px;
}
.phone_box a {
  color: #146ed3;
}
.phone_box span {
  display: inline-block;
  border-radius: 50%;
  background: #146ed3;
  color: #fff;
  padding: 9px 11px;
  margin-right: 12px;
  font-size: 14px;
  font-weight: normal;
}
.homecall_action .tour-caption .vertical-bottom {
  padding: 10px 30px;
  text-align: center;
}
.homecall_action .tour-caption .vertical-bottom {
  background: rgba(0, 0, 0, 0.5);
}
.homecall_action .tour-caption h3 {
  padding-bottom: 0;
  font-weight: normal;
  letter-spacing: 0;
}
.bg-cus-1 {
  background: #f5f7f7;
}
.bg-cus-2 {
  background: #e8f4ff;
}
.second-title {
  padding-top: 0;
  padding-bottom: 65px;
}
.padd-30-30 {
  padding: 30px 0px;
}
.padd-50-30 {
  padding: 50px 30px 0px;
}
.padd-50-50 {
  padding: 50px 0px;
}
.padd-100-100 {
  padding: 100px 0px;
}
.padd-100-0 {
  padding-top: 100px;
}
.popular-dest p {
  font-size: 18px;
  max-width: 550px;
  margin: 0 auto;
}
.popular-dest .popular-img .vertical-bottom {
  padding: 15px 20px;
  background: rgba(0, 0, 0, 0.5);
}
.popular-dest .popular-img h4 {
  letter-spacing: 0;
  padding-bottom: 0;
}
.popular-dest .popular-img {
  min-height: 0;
  padding: 0 0 100% 0;
}
underlinetitle {
  position: relative;
  display: block;
}
.underlinetitle:after {
  content: "";
  width: 36px;
  background: #333333;
  height: 2px;
  position: relative;
  display: block;
  float: none;
  margin: 20px auto 0px;
  -webkit-transition: all 0.3s ease-in;
  -moz-transition: all 0.3s ease-in;
  -o-transition: all 0.3s ease-in;
  transition: all 0.3s ease-in;
}
.home_txt {
  font-size: 18px;
  text-align: center;
  max-width: 990px;
  margin: 0 auto;
}
.home_txt p {
  font-size: 18px;
  line-height: 180%;
}
.home_txt i {
  font-style: italic;
}
.news_wrapper {
  background: url(/assets/img/bg_news.jpg) no-repeat;
  -moz-background-size: cover;
  background-size: cover;
  background-position: center center;
}
.news_wrapper .subtitle {
  font-size: 32px;
  text-transform: none;
  margin: 0 0 50px 0;
}
.news_box {
  color: #fff;
  text-align: center;
  max-width: 590px;
  margin: 0 auto;
}
.txt_news {
  color: #fff;
  text-align: center;
  font-size: 18px;
  margin: 0 0 50px 0;
  line-height: 140%;
}
.news_wrapper form {
  position: relative;
}
.news_wrapper input[type="email"] {
  background: #fff;
  width: 100%;
  color: #000;
}
.news_wrapper input[type="submit"] {
  background: #fd732e;
  color: #fff;
  position: absolute;
  right: 0;
  top: 0;
}
.news_wrapper input[type="email"],
.news_wrapper input[type="submit"] {
  padding: 10px 20px;
  font-size: 18px;
  display: block;
  margin: 0;
}
.news_wrapper input[type="email"] {
  padding-right: 140px;
}
footer {
  padding: 90px 0 45px;
}
.footer_block {
}

footer .wrapper_table > div {
  vertical-align: top;
}
footer .phone_box a {
  color: #181818;
  font-size: 22px;
  font-weight: normal;
}
footer .phone_box span {
  background: none;
  color: #146ed3;
  padding: 0;
  font-size: 26px;
  vertical-align: middle;
  margin-right: 20px;
}
footer .logo_footer a {
  margin-top: -30px;
  float: none;
  display: inline-block;
}
footer .logo_footer a img {
  max-width: 180px;
}
footer .footer_block {
  padding-bottom: 40px;
  text-align: center;
}
.wrpper_address {
  display: inline-block;
  text-align: left;
  position: relative;
  padding-left: 35px;
}
footer .phone_box {
  width: 220px;
  text-align: left;
}
footer .wrpper_address span {
  color: #146ed3;
  font-size: 26px;
  position: absolute;
  left: 0;
  top: 0;
}
.footer-link {
  text-align: center;
  font-size: 14px;
  padding: 20px 0;
  background-color: #f7f7f7;
}
.links_footer a {
  color: #146ed3;
  display: inline-block;
  vertical-align: top;
  white-space: nowrap;
  border-left: 1px solid #000;
  padding: 0 9px;
}
.footer_bottom > div {
  display: inline-block;
  vertical-align: top;
  margin-bottom: 5px;
}
.copy_footer {
  margin-right: 10px;
}
.inner-banner.page-banner {
  margin-top: 123px;
  min-height: 437px;
}
.inner-banner.page-banner h2 {
  font-size: 48px;
  font-family: "PT Sans", sans-serif;
  text-transform: none;
}

.inner-banner.page-banner h2.color-white {
  text-shadow: rgba(0, 0, 0, 0.85) 4px 4px 20px;
}

.list-tour {
}
.tour-item {
  margin-bottom: 30px;
  padding: 0px 0 30px;
}
.tour-item:last-child {
  margin-bottom: 0;
}
.tour-item .wrapper_table {
  background-color: #f5f7f7;
}
.tour-item .tour_content {
  width: 40%;
  padding: 20px 35px 80px 35px;
  font-size: 14px;
  position: relative;
}
.tour_tit {
  font-size: 24px;
  padding: 0 0 20px 0;
}
.tour_tit a:link {
  color: #000;
  text-decoration: none;
}
.tour_tit a:visited {
  color: #000;
  text-decoration: none;
}
.tour_tit a:hover {
  color: #fd732e;
  text-decoration: none;
}
.tour_tit a:active {
  color: #000;
  text-decoration: none;
}

.wrapper_price {
  padding: 0 0 15px 0;
}
.price_txt {
  display: inline-block;
  vertical-align: bottom;
  white-space: nowrap;
}
.tour_price {
  display: inline-block;
  font-size: 30px;
  vertical-align: bottom;
  font-weight: bold;
  color: #fd732e;
  line-height: 100%;
}
.tour_price span {
  font-weight: normal;
}
.tour_dest {
}
.tour_date {
  margin: 7px 0;
}
.tour_date span {
  display: inline-block;
  color: #fff;
  background-color: #000000;
  padding: 5px 10px;
  white-space: nowrap;
}
.tour_note1 {
  margin-bottom: 10px;
  line-height: 1.2em;
  max-height: 2.4em;
}
.tour_note2 {
  margin-bottom: 10px;
  line-height: 1.2em;
  max-height: 3.6em;
}
.wrap_note1 {
  min-height: 2.4em;
}
.wrap_note2 {
  min-height: 3.6em;
}
.txt_trunc {
  overflow: hidden;
  position: relative;
  margin-right: -1em;
  padding-right: 1em;
}
/* create the ... */
.txt_trunc:before {
  content: "...";
  position: absolute;
  right: 0;
  bottom: 0;
}
.txt_trunc:after {
  content: "";
  position: absolute;
  right: 0;
  width: 1em;
  height: 1em;
  margin-top: 0.2em;
  background: #f5f7f7;
}
.tour_more {
  position: absolute;
  left: 0;
  bottom: 0;
  padding: 0 0 20px 35px;
}
.tour_more a:link {
  color: #fd732e;
  text-decoration: underline;
}
.tour_more a:visited {
  color: #fd732e;
  text-decoration: none;
}
.tour_more a:hover {
  color: #146ed3;
  text-decoration: underline;
}
.tour_more a:active {
  color: #fd732e;
  text-decoration: underline;
}

.no_bg_r {
  background-repeat: no-repeat !important;
}
.tour_photo {
  position: relative;
}
.tour_photo_tit {
  padding: 20px;
}
.tour_photo_tit .top-weather-info {
  padding-bottom: 25px;
}
.tour_photo_tit h3 {
  font-size: 32px;
  text-transform: none;
  letter-spacing: 0;
}
.tour_photo_tit h3 span {
  display: block;
  font-size: 14px;
  font-weight: normal;
}
.tour_photo_tit .underlineslide:after {
  width: 49px;
  height: 1px;
  margin: 12px auto 0px;
}
.tour_photo .tour-layer {
  opacity: 0.5;
}
.new_tour {
  position: absolute;
  left: 30px;
  top: 20px;
  z-index: 9;
}
.new_tour span {
  display: block;
  text-align: center;
}
.linebefore:before {
  content: "";
  width: 12px;
  background: #fff;
  height: 1px;
  position: relative;
  display: block;
  float: none;
  margin: 0 auto 8px;
  -webkit-transition: all 0.3s ease-in;
  -moz-transition: all 0.3s ease-in;
  -o-transition: all 0.3s ease-in;
  transition: all 0.3s ease-in;
}
.new_tour i {
  font-size: 8px;
  display: inline-block;
  margin: 0 2px 0 0;
}
.new_tour {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 80px;
  height: 80px;
  font-size: 12px;
  text-align: center;
}

/* Tag 1 - Nouveauté - Bleu 146ed3 */
.new_tour.tag-1 {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 318.12 318.12'%3E%3Cg%3E%3Cpath fill='%23146ed3' d='M184.11,115.68c89.05-154.24-139.14-154.24-50.09,0-89.05-154.24-203.15,43.38-25.05,43.38-178.1,0-64.01,197.62,25.05,43.38-89.05,154.24,139.14,154.24,50.09,0,89.05,154.24,203.15-43.38,25.05-43.38,178.1,0,64.01-197.62-25.05-43.38Z'/%3E%3Cpath fill='%23146ed3' d='M184.11,115.68c89.05-154.24-139.14-154.24-50.09,0-89.05-154.24-203.15,43.38-25.05,43.38-178.1,0-64.01,197.62,25.05,43.38-89.05,154.24,139.14,154.24,50.09,0,89.05,154.24,203.15-43.38,25.05-43.38,178.1,0,64.01-197.62-25.05-43.38Z'/%3E%3Cpath fill='%23146ed3' d='M159.06,108.97c0-178.1-197.62-64.01-43.38,25.05-154.24-89.05-154.24,139.14,0,50.09-154.24,89.05,43.38,203.15,43.38,25.05,0,178.1,197.62,64.01,43.38-25.05,154.24,89.05,154.24-139.14,0-50.09,154.24-89.05-43.38-203.15-43.38-25.05Z'/%3E%3C/g%3E%3C/svg%3E");
}

/* Tag 2 - Complet Rouge e63946  */
.new_tour.tag-2 {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 318.12 318.12'%3E%3Cg%3E%3Cpath fill='%23e63946' d='M184.11,115.68c89.05-154.24-139.14-154.24-50.09,0-89.05-154.24-203.15,43.38-25.05,43.38-178.1,0-64.01,197.62,25.05,43.38-89.05,154.24,139.14,154.24,50.09,0,89.05,154.24,203.15-43.38,25.05-43.38,178.1,0,64.01-197.62-25.05-43.38Z'/%3E%3Cpath fill='%23e63946' d='M184.11,115.68c89.05-154.24-139.14-154.24-50.09,0-89.05-154.24-203.15,43.38-25.05,43.38-178.1,0-64.01,197.62,25.05,43.38-89.05,154.24,139.14,154.24,50.09,0,89.05,154.24,203.15-43.38,25.05-43.38,178.1,0,64.01-197.62-25.05-43.38Z'/%3E%3Cpath fill='%23e63946' d='M159.06,108.97c0-178.1-197.62-64.01-43.38,25.05-154.24-89.05-154.24,139.14,0,50.09-154.24,89.05,43.38,203.15,43.38,25.05,0,178.1,197.62,64.01,43.38-25.05,154.24,89.05,154.24-139.14,0-50.09,154.24-89.05-43.38-203.15-43.38-25.05Z'/%3E%3C/g%3E%3C/svg%3E");
}

/* Tag 3 - Depart garanti Green #28a745 */
.new_tour.tag-3 {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 318.12 318.12'%3E%3Cg%3E%3Cpath fill='%2328a745' d='M184.11,115.68c89.05-154.24-139.14-154.24-50.09,0-89.05-154.24-203.15,43.38-25.05,43.38-178.1,0-64.01,197.62,25.05,43.38-89.05,154.24,139.14,154.24,50.09,0,89.05,154.24,203.15-43.38,25.05-43.38,178.1,0,64.01-197.62-25.05-43.38Z'/%3E%3Cpath fill='%2328a745' d='M184.11,115.68c89.05-154.24-139.14-154.24-50.09,0-89.05-154.24-203.15,43.38-25.05,43.38-178.1,0-64.01,197.62,25.05,43.38-89.05,154.24,139.14,154.24,50.09,0,89.05,154.24,203.15-43.38,25.05-43.38,178.1,0,64.01-197.62-25.05-43.38Z'/%3E%3Cpath fill='%2328a745' d='M159.06,108.97c0-178.1-197.62-64.01-43.38,25.05-154.24-89.05-154.24,139.14,0,50.09-154.24,89.05,43.38,203.15,43.38,25.05,0,178.1,197.62,64.01,43.38-25.05,154.24,89.05,154.24-139.14,0-50.09,154.24-89.05-43.38-203.15-43.38-25.05Z'/%3E%3C/g%3E%3C/svg%3E");
}

/* Tag 4 - Limitée - Jaune f4c430 */
.new_tour.tag-4 {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 318.12 318.12'%3E%3Cg%3E%3Cpath fill='%23f4c430' d='M184.11,115.68c89.05-154.24-139.14-154.24-50.09,0-89.05-154.24-203.15,43.38-25.05,43.38-178.1,0-64.01,197.62,25.05,43.38-89.05,154.24,139.14,154.24,50.09,0,89.05,154.24,203.15-43.38,25.05-43.38,178.1,0,64.01-197.62-25.05-43.38Z'/%3E%3Cpath fill='%23f4c430' d='M184.11,115.68c89.05-154.24-139.14-154.24-50.09,0-89.05-154.24-203.15,43.38-25.05,43.38-178.1,0-64.01,197.62,25.05,43.38-89.05,154.24,139.14,154.24,50.09,0,89.05,154.24,203.15-43.38,25.05-43.38,178.1,0,64.01-197.62-25.05-43.38Z'/%3E%3Cpath fill='%23f4c430' d='M159.06,108.97c0-178.1-197.62-64.01-43.38,25.05-154.24-89.05-154.24,139.14,0,50.09-154.24,89.05,43.38,203.15,43.38,25.05,0,178.1,197.62,64.01,43.38-25.05,154.24,89.05,154.24-139.14,0-50.09,154.24-89.05-43.38-203.15-43.38-25.05Z'/%3E%3C/g%3E%3C/svg%3E");
}
.new_tour.tag-4 .new_tour_txt {
  color:black!important;
}
/* Tag 5 - Individuel Orange ff6600 */
.new_tour.tag-5 {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 318.12 318.12'%3E%3Cg%3E%3Cpath fill='%23ff6600' d='M184.11,115.68c89.05-154.24-139.14-154.24-50.09,0-89.05-154.24-203.15,43.38-25.05,43.38-178.1,0-64.01,197.62,25.05,43.38-89.05,154.24,139.14,154.24,50.09,0,89.05,154.24,203.15-43.38,25.05-43.38,178.1,0,64.01-197.62-25.05-43.38Z'/%3E%3Cpath fill='%23ff6600' d='M184.11,115.68c89.05-154.24-139.14-154.24-50.09,0-89.05-154.24-203.15,43.38-25.05,43.38-178.1,0-64.01,197.62,25.05,43.38-89.05,154.24,139.14,154.24,50.09,0,89.05,154.24,203.15-43.38,25.05-43.38,178.1,0,64.01-197.62-25.05-43.38Z'/%3E%3Cpath fill='%23ff6600' d='M159.06,108.97c0-178.1-197.62-64.01-43.38,25.05-154.24-89.05-154.24,139.14,0,50.09-154.24,89.05,43.38,203.15,43.38,25.05,0,178.1,197.62,64.01,43.38-25.05,154.24,89.05,154.24-139.14,0-50.09,154.24-89.05-43.38-203.15-43.38-25.05Z'/%3E%3C/g%3E%3C/svg%3E");
}
/* Tag 6 - Violet Pastel #b19cd9 */
.new_tour.tag-6 {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 318.12 318.12'%3E%3Cg%3E%3Cpath fill='%23b19cd9' d='M184.11,115.68c89.05-154.24-139.14-154.24-50.09,0-89.05-154.24-203.15,43.38-25.05,43.38-178.1,0-64.01,197.62,25.05,43.38-89.05,154.24,139.14,154.24,50.09,0,89.05,154.24,203.15-43.38,25.05-43.38,178.1,0,64.01-197.62-25.05-43.38Z'/%3E%3Cpath fill='%23b19cd9' d='M184.11,115.68c89.05-154.24-139.14-154.24-50.09,0-89.05-154.24-203.15,43.38-25.05,43.38-178.1,0-64.01,197.62,25.05,43.38-89.05,154.24,139.14,154.24,50.09,0,89.05,154.24,203.15-43.38,25.05-43.38,178.1,0,64.01-197.62-25.05-43.38Z'/%3E%3Cpath fill='%23b19cd9' d='M159.06,108.97c0-178.1-197.62-64.01-43.38,25.05-154.24-89.05-154.24,139.14,0,50.09-154.24,89.05,43.38,203.15,43.38,25.05,0,178.1,197.62,64.01,43.38-25.05,154.24,89.05,154.24-139.14,0-50.09,154.24-89.05-43.38-203.15-43.38-25.05Z'/%3E%3C/g%3E%3C/svg%3E");
}

/* Alternative - Tag 6 Rose Pastel #f8b2d0 */
.new_tour.tag-6-rose {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 318.12 318.12'%3E%3Cg%3E%3Cpath fill='%23f8b2d0' d='M184.11,115.68c89.05-154.24-139.14-154.24-50.09,0-89.05-154.24-203.15,43.38-25.05,43.38-178.1,0-64.01,197.62,25.05,43.38-89.05,154.24,139.14,154.24,50.09,0,89.05,154.24,203.15-43.38,25.05-43.38,178.1,0,64.01-197.62-25.05-43.38Z'/%3E%3Cpath fill='%23f8b2d0' d='M184.11,115.68c89.05-154.24-139.14-154.24-50.09,0-89.05-154.24-203.15,43.38-25.05,43.38-178.1,0-64.01,197.62,25.05,43.38-89.05,154.24,139.14,154.24,50.09,0,89.05,154.24,203.15-43.38,25.05-43.38,178.1,0,64.01-197.62-25.05-43.38Z'/%3E%3Cpath fill='%23f8b2d0' d='M159.06,108.97c0-178.1-197.62-64.01-43.38,25.05-154.24-89.05-154.24,139.14,0,50.09-154.24,89.05,43.38,203.15,43.38,25.05,0,178.1,197.62,64.01,43.38-25.05,154.24,89.05,154.24-139.14,0-50.09,154.24-89.05-43.38-203.15-43.38-25.05Z'/%3E%3C/g%3E%3C/svg%3E");
}

.c_pagination {
  margin-top: 50px;
}
.c_pagination .cp_content a {
  width: 30px;
  height: 30px;
  line-height: 30px;
}

.wrapper_gall {
  position: relative;
  margin-top: 123px;
}
.wrapper_gall .txt_gall {
  z-index: 10;
}
.wrapper_gall .tour-layer {
  z-index: 9;
  opacity: 0.5;
}

.top-baner .tour-layer {
  z-index: 2;
  opacity: 0.5;
}
.top-baner .swiper-slide .vertical-align {
  z-index: 3;
}
.wrapper_gall h1 {
  font-size: 52px;
  max-width: 800px;
  margin: 0 auto;
  letter-spacing: 0;
}
.dest_gall {
  font-family: "Sacramento", cursive;
  font-size: 152px;
  line-height: 150%;
}
.head_det_page {
  background-color: #f5f7f7;
}
.head_det_page.container {
  padding: 0;
}
.head_det_tit {
  padding: 50px 40px 0 15px;
  vertical-align: top;
}
.head_det_price {
  background-color: #000;
  color: #fff;
  padding: 25px 15px 20px 35px;
  width: 340px;
  font-size: 55px;
  font-weight: bold;
  vertical-align: top;
}
.head_det_price span {
  display: block;
  font-size: 18px;
  font-weight: normal;
}
.head_det_date {
  font-size: 18px;
}
.head_det_date:after {
  content: "";
  width: 45px;
  background: #626363;
  height: 1px;
  position: relative;
  display: block;
  float: none;
  margin: 8px 0 0 0;
}
.bg_li_gr {
  background-color: #f5f7f7;
}
.head_det_tit h2 {
  max-width: 600px;
  margin: 0 0 20px 0;
  font-size: 35px;
  line-height: 120%;
}
.wrapper_desc {
  padding: 0 0 30px 0;
  max-width: 550px;
}
.print_link {
  width: 325px;
  margin: 20px 0 0 auto;
  font-size: 18px;
  padding: 0 0 20px 35px;
  line-height: 200%;
}
.print_link a {
  display: block;
}
.desc_note1 {
  font-size: 24px;
  line-height: 120%;
  padding: 10px 0 50px 0;
}
.desc_note2 {
  font-size: 18px;
  line-height: 120%;
  padding: 0 0 40px 0;
  font-style: italic;
}
.blue_box {
  background: #146ed3;
  color: #fff;
  font-size: 34px;
  font-weight: bold;
  text-align: center;
  padding: 30px;
}
.margin_neg_det {
  margin-bottom: -40px;
}
.wrapper_prices {
  margin: 80px 0 60px 0;
}
.header_prices {
  padding: 40px;
  background-color: #fd732e;
  color: #fff;
  font-size: 24px;
  text-transform: uppercase;
  text-align: center;
}
.header_prices span {
  text-transform: none;
  font-size: 16px;
  display: block;
}
.box_prices {
  padding: 30px 20px;
  background-color: #f5f7f7;
  color: #7e7e7e;
}
.tit_prices {
  font-weight: bold;
  color: #010101;
  text-transform: uppercase;
  margin-bottom: 15px;
}
.wrapper_box_prices {
  max-width: 800px;
  margin: 0 auto;
  line-height: 200%;
  font-size: 18px;
}
.detail_p {
  text-align: right;
  color: #fd732e;
}
.detail_p.demande {
  color: #000;
}
.first_price_table {
  padding: 0 0 20px 0;
}
.first_price_table > .wrapper_table {
  padding: 0 0 10px 0;
}
.second_price_table {
  padding: 20px 0 20px 0;
}
.second_price_table .date_p {
  font-style: italic;
}
.wrapper_prices_note {
  color: #000000;
  font-style: italic;
  font-size: 18px;
  padding: 0 0 100px 0;
  line-height: 200%;
}
.wrapper_itin {
  padding: 60px 0;
}
h3.itin_tit {
  font-size: 40px;
  margin: 0 0 40px 0;
  letter-spacing: 0;
  line-height: 100%;
}
h3.itin_tit:after {
  content: "";
  width: 45px;
  background: #626363;
  height: 1px;
  position: relative;
  display: block;
  float: none;
  margin: 30px 0 0 0;
}
.detail_itin h4 {
  color: #146ed3;
  font-size: 14px;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 0;
  padding: 15px 0 0 0;
}
h3.itin_tit span {
  text-transform: none;
  display: block;
  font-weight: normal;
}
.txt_forfait ul {
  list-style: initial;
  margin: 0 0 0 20px;
}
.txt_forfait li {
  font-size: 14px;
  line-height: 180%;
  font-weight: normal;
}
.header.menu-3 .nav-menu-icon a i,
header.menu-3 .nav-menu-icon a i:before,
header.menu-3 .nav-menu-icon a i:after,
.nav-menu-icon a i {
  background: #146ed3 !important;
}

@media screen and (max-width: 991px) {
  header .nav-menu-icon a.active i {
    background: none !important;
  }
}

.wrap_head_det {
  background: rgba(245, 247, 247, 1);
  background: -moz-linear-gradient(left, rgba(245, 247, 247, 1) 0%, rgba(0, 0, 0, 1) 0%, rgba(255, 255, 255, 1) 0%, rgba(245, 247, 247, 1) 0%, rgba(245, 247, 247, 1) 49%, rgba(0, 0, 0, 1) 51%, rgba(0, 0, 0, 1) 100%);
  background: -webkit-gradient(
    left top,
    right top,
    color-stop(0%, rgba(245, 247, 247, 1)),
    color-stop(0%, rgba(0, 0, 0, 1)),
    color-stop(0%, rgba(255, 255, 255, 1)),
    color-stop(0%, rgba(245, 247, 247, 1)),
    color-stop(49%, rgba(245, 247, 247, 1)),
    color-stop(51%, rgba(0, 0, 0, 1)),
    color-stop(100%, rgba(0, 0, 0, 1))
  );
  background: -webkit-linear-gradient(left, rgba(245, 247, 247, 1) 0%, rgba(0, 0, 0, 1) 0%, rgba(255, 255, 255, 1) 0%, rgba(245, 247, 247, 1) 0%, rgba(245, 247, 247, 1) 49%, rgba(0, 0, 0, 1) 51%, rgba(0, 0, 0, 1) 100%);
  background: -o-linear-gradient(left, rgba(245, 247, 247, 1) 0%, rgba(0, 0, 0, 1) 0%, rgba(255, 255, 255, 1) 0%, rgba(245, 247, 247, 1) 0%, rgba(245, 247, 247, 1) 49%, rgba(0, 0, 0, 1) 51%, rgba(0, 0, 0, 1) 100%);
  background: -ms-linear-gradient(left, rgba(245, 247, 247, 1) 0%, rgba(0, 0, 0, 1) 0%, rgba(255, 255, 255, 1) 0%, rgba(245, 247, 247, 1) 0%, rgba(245, 247, 247, 1) 49%, rgba(0, 0, 0, 1) 51%, rgba(0, 0, 0, 1) 100%);
  background: linear-gradient(to right, rgba(245, 247, 247, 1) 0%, rgba(0, 0, 0, 1) 0%, rgba(255, 255, 255, 1) 0%, rgba(245, 247, 247, 1) 0%, rgba(245, 247, 247, 1) 49%, rgba(0, 0, 0, 1) 51%, rgba(0, 0, 0, 1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f5f7f7', endColorstr='#000000', GradientType=1 );
}

.wrap_head_det.bg_white_title {
  background: #f5f7f7 !important;
}

.container-content {
  font-size: 14px;
}
.container-content a:link {
  color: #146ed3;
  text-decoration: none;
}
.container-content a:visited {
  color: #146ed3;
  text-decoration: none;
}
.container-content a:not(.team-entry-link):hover {
  color: #ff6600;
  text-decoration: underline;
}
.container-content a:active {
  color: #146ed3;
  text-decoration: underline;
}

.container-content h2 {
  color: #146ed3;
  font-size: 16px;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 0;
  padding: 0 0 10px 0;
}
.container-content ul {
  list-style: inside;
  margin: 0 0 15px 0;
}
.contact-form .c-button-contact {
  float: right;
  margin: 15px 0 30px 0;
}

.callaction_link a,
.destination_link a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  z-index: 2;
}
.popular-dest .popular-img:hover h4 {
  color: #ff6600;
}
.wrapper_table .width_50 {
  width: 50%;
}
a.tour_link {
  position: absolute;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 13;
}
.tour-dest-tit {
  text-align: center;
  padding: 10px 20px;
  margin: 0 0 15px 0;
  border: 1px solid #146ed3;
  color: #146ed3;
  font-weight: bold;
  font-size: 22px;
  text-transform: uppercase;
}
.list-tour > .tour-dest-tit {
  margin-top: 20px;
}
.list-tour > .tour-dest-tit:first-child {
  margin-top: 0;
}
.more_dest {
  text-align: center;
}

.c-button.c-more-dest {
  padding: 12px 45px;
  font-size: 18px;
  border: 1px solid #146ed3;
  background-color: #146ed3;
  color: #fff;
  margin: 20px 0 0 0;
}
.c-button.c-more-dest:hover {
  background-color: transparent;
  color: #146ed3;
}
.wrapper_cir_video {
  text-align: center;
  margin-bottom: 80px;
}
.wrapper_video {
  text-align: center;
}
.wrapper_equiupe > .row {
  display: flex;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
}
.wrapper_equiupe > .row > .col-md-3 {
  margin-bottom: 20px;
}
.wrapper_equiupe .team-entry .image img {
  width: 100%;
  height: auto;
  display: block;
}
.wrapper_equiupe .team-entry .team-name {
  margin-bottom: 5px;
  font-size: 17px;
  letter-spacing: 2px;
}
.c_pagination {
  text-align: center;
}
.c_pagination .pagination {
  position: relative;
  width: auto;
}

.main-wraper .alert-success {
  color: #fff;
  background-color: #9acc85;
  border-color: #9acc85;
}
.main-wraper .alert span {
  padding-right: 0;
  display: block;
}
.voyage_temoin {
  margin-bottom: 5px;
  font-size: 17px;
  letter-spacing: 2px;
  color: #146ed3;
  line-height: 30px;
  font-weight: 700;
  text-transform: uppercase;
}
.nom_temoin {
  margin-bottom: 5px;
  font-size: 17px;
  letter-spacing: 2px;
  color: #000;
  line-height: 30px;
  font-weight: 700;
}
.ville_temoin {
  font-family: "Open Sans", sans-serif;
  font-size: 14px;
  line-height: 22px;
  font-weight: 400;
  color: #222;
}
.txt_temoin {
  font-family: "Open Sans", sans-serif;
  font-size: 14px;
  line-height: 22px;
  font-weight: 400;
  color: #7b7b7b;
  margin-bottom: 10px;
}
.wrapper_temoin {
  display: flex;
  flex-wrap: wrap;
}
.item_temoin {
  width: 50%;
  padding-bottom: 20px;
  margin-bottom: 30px;
  box-sizing: border-box;
}
.item_temoin:nth-child(odd) {
  padding-right: 15px;
}
.item_temoin:nth-child(even) {
  padding-left: 15px;
}

.video_wrapper {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 */
  height: 0;
}
.video_wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.home_video_section {
  width: 700px;
  max-width: 100%;
  margin: 0 auto;
}
.home_video_wrapper a {
  width: 100%;
  display: block;
}
.home_video_wrapper img {
  width: 100%;
}
.home_video_tit.second-title h2 {
  font-size: 24px;
}
.home_video_tit.second-title {
  padding-bottom: 30px;
}
.home_video_btn {
  text-align: center;
}
.home_audio_wrapper {
  width: 400px;
  max-width: 100%;
  margin: 0 auto 30px;
}
.wrapper_balado_detail audio,
.home_audio_wrapper audio {
  width: 100%;
}
.videos_list {
}
.wrapper_video_im {
  position: relative;
  overflow: hidden;
}

.wrapper_video_img a {
  display: block;
  overflow: hidden;
  height: 100%;
}
.wrapper_video_img img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  object-position: center;
  transition: all 0.4s;
}
.wrapper_video_img a:after {
  content: "";
  width: 60px;
  height: 60px;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-image: url(/assets/img/playbtn.png);
  background-size: cover;
  transition: all 0.4s;
}
.wrapper_video_img a:hover img {
  transform: scale(1.1);
  opacity: 0.6;
}
.container_video_img {
}
.wrapper_video_img {
  background-color: #000;
  position: relative;
}
.wrapper_video_content {
  padding: 15px 20px 30px 20px;
}
.wrapper_video_title {
  color: #146ed3;
  font-family: "PT Sans", sans-serif;
  font-weight: bold;
  font-size: 20px;
  margin-bottom: 5px;
}
.wrapper_video_date {
  font-style: italic;
  font-size: 14px;
  margin-bottom: 20px;
}
.wrapper_video_description {
  color: #7e7e7e;
  line-height: 140%;
  font-size: 15px;
}
.wrapper_three_cols {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(3, 1fr);
  width: 100%;
  text-align: left;
}
.wrapper_one_col {
  background-color: #f5f7f7;
}
.wrapper_balado_detail audio {
}

.balados_list .wrapper_one_col {
  background-color: transparent;
}
@media screen and (max-width: 900px) {
  .wrapper_three_cols {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 600px) {
  .wrapper_three_cols {
    grid-template-columns: repeat(1, 1fr);
  }
}

@media screen and (max-width: 800px) {
  .item_temoin {
    width: 100%;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}
@media screen and (min-width: 769px) {
  .tour-item .tour_content {
    height: 400px;
  }
}

.header_social {
  display: inline-block;
  margin-left: 20px;
}
.header_social .fa-pinterest {
  display: inline-block;
  border-radius: 50%;
  border: 1px solid #146ed3;
  color: #146ed3;
  padding: 7px 8px;
  margin-right: 5px;
  font-size: 15px;
  font-weight: normal;
}
.header_social .fa-instagram {
  display: inline-block;
  border-radius: 50%;
  border: 1px solid #146ed3;
  color: #146ed3;
  padding: 7px 8px;
  margin-right: 5px;
  font-size: 15px;
  font-weight: bold;
}
.header_social .fa-facebook {
  display: inline-block;
  border-radius: 50%;
  border: 1px solid #146ed3;
  color: #146ed3;
  padding: 7px 10px;
  margin-right: 5px;
  font-size: 15px;
  font-weight: bold;
}
.header_social .fa-youtube {
  display: inline-block;
  border-radius: 50%;
  border: 1px solid #146ed3;
  color: #146ed3;
  padding: 5px 6px;
  margin-right: 5px;
}

.menu-3 nav .header_social {
  display: none;
}
.txt_contact1 {
  background: #146ed3;
  color: #fff;
  padding: 25px;
  border-radius: 10px;
  margin-bottom: 25px;
}
.txt_required_fields {
  font-size: 14px;
  color: #7e7e7e;
  padding: 25px 0 50px 0;
}
.fancybox-active .fancybox-slide--iframe .fancybox-content {
  max-width: 1024px;
}
.form_tit {
  font-size: 27px;
  margin: 0 0 40px 0;
  letter-spacing: 0;
  line-height: 120%;
  color: #ff6600;
}
.box_reserve_bottom.blue_box,
.box_reserve.blue_box {
  padding-top: 45px;
  padding-bottom: 45px;
}

.ass-voy p {
  font-size: 16px;
  margin: 30px 0;
}

/* Member detail page */
.team-entry-link {
  display: block;
  text-decoration: none;
  color: inherit;
}
.team-entry-link:hover,
.team-entry-link:visited {
  text-decoration: none;
  color: inherit;
}
.team-view-profile {
  margin-top: 8px;
  display: block;
  font-size: 12px;
  width: fit-content;
  margin:8px auto 0
}
.team-entry-link:hover .team-view-profile {
  background-color: #146ed3;
  color: #fff;
  text-decoration: none;
}
.team-entry-link:hover .team-name {
  color: #146ed3 !important;
}
.member-detail {
  display: flex;
  gap: 40px;
  align-items: flex-start;
}
.member-detail-photo {
  flex: 0 0 300px;
  max-width: 300px;
}
.member-detail-photo img {
  width: 100%;
  height: auto;
  display: block;
}
.member-detail-info {
  flex: 1;
}
.member-detail-info h1 {
  font-size: 32px;
  margin: 0 0 10px 0;
  letter-spacing: 0;
}
.member-detail-fonction {
  font-size: 18px;
  color: #146ed3;
  margin: 0 0 25px 0;
  font-weight: bold;
}
.member-detail-description {
  line-height: 180%;
  font-size: 15px;
  color: #555;
}
.member-detail-departures {
  margin-top: 50px;
  padding-top: 30px;
  border-top: 1px solid #e0e0e0;
}
.member-detail-departures h2 {
  font-size: 24px;
  margin: 0 0 20px 0;
}
.member-detail-back {
  margin-top: 40px;
  padding-top: 25px;
  border-top: 1px solid #e0e0e0;
}
.member-detail-back a {
  font-size: 16px;
}
@media screen and (max-width: 768px) {
  .member-detail {
    flex-direction: column;
    gap: 25px;
  }
  .member-detail-photo {
    flex: 0 0 auto;
    max-width: 250px;
    margin: 0 auto;
  }
  .member-detail-info {
    text-align: center;
  }
}

@media print {
  a[href]:after {
    content: "";
  }
  header {
    position: static !important;
  }
  .no-print {
    display: none !important;
  }
  .logo {
    float: none !important;
    position: static !important;
    display: block !important;
  }
  .wrapper_gall, .wrapper_prices {
    margin-top: 0;
  }
  .header_prices {
	padding: 0;
  }
   .padd-100-100, .padd-b-100 {
	padding: 20px 0;
  }
}

/* ===== Ruban d'angle - Categorie de circuit (coin haut-droit, 45deg) ===== */
.cat-corner {
  position: absolute;
  top: 0;
  right: 0;
  width: 150px;
  height: 150px;
  overflow: hidden;
  z-index: 10;
  pointer-events: none;
}
.cat-corner .cat-corner-txt {
  position: absolute;
  top: 40px;
  right: -42px;
  width: 200px;
  padding: 7px 0;
  background: #146ed3;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.1;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  white-space: normal;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.25);
}
/* Categorie 1 */
.cat-corner.cat-corner-1 .cat-corner-txt {
  background: #e63946;
}
/* Categorie 2 */
.cat-corner.cat-corner-2 .cat-corner-txt {
  background: #e63946;
}

/* Carte d'itineraire (page voyage, visible si connecte) */
.carte_itineraire {
  margin-bottom: 20px;
}
.carte_itineraire img {
  display: block;
  width: 100%;
  height: auto;
  border: 1px solid #d9dee2;
  border-radius: 4px;
  cursor: zoom-in;
}

/* Sécurité : l'écrans de chargement plein écran (.loading, z-index 5000, all.js:84) ne se retire
   qu'après plusieurs autres fonctions JS (initFullPage, initSwiper, etc.) au chargement de la page.
   Si l'une d'elles échoue (page sans les scripts qu'elle attend), le fadeOut ne s'exécute jamais et
   l'écran reste invisible mais actif, bloquant tous les clics sur toute la page. On neutralise son
   interception des clics sans toucher à son apparence pendant le chargement normal. */
.loading {
  pointer-events: none;
}

/* Formulaire de satisfaction (satisfaction.group) */
.sat-header h1 {
  margin-bottom: 30px;
  font-size: 30px;
  line-height: 2.5rem;
}
.sat-form .sat-question {
  margin-bottom: 25px;
}
.sat-form label {
  display: block;
  font-size: 1.1.rem;
  font-weight: 700;
  margin-bottom: 8px!important
}
.sat-form .sat-req {
  color: #e63946;
}
.sat-form .sat-champs-obligatoires {
  font-size: 13px;
  color: #777;
}
.sat-form .sat-error-summary {
  background: #fdecea;
  border: 1px solid #e63946;
  color: #b71c1c;
  padding: 12px 15px;
  border-radius: 4px;
  margin-bottom: 20px;
}
.sat-form .sat-error {
  color: #e63946;
  font-size: 13px;
  margin-top: 5px;
}
.sat-form .sat-deja-repondu {
  padding: 60px 20px;
  font-size: 18px;
}
.sat-form .sat-choix-type {
  padding: 60px 20px;
}
.sat-form .sat-choix-type .c-button {
  margin: 10px;
}
.sat-form .sat-input,
.sat-form .sat-select {
  display: block;
  width: 100%;
  height: 44px;
  padding: 0 15px;
  margin-bottom: 10px;
  border: 1px solid rgba(219, 219, 219, 0.6);
  border-radius: 4px;
  font-family: 'Open Sans', sans-serif;
  font-size: 14px;
  color: #222;
}
.sat-form .sat-input:last-child,
.sat-form .sat-select:last-child {
  margin-bottom: 0;
}
.sat-form .sat-input::-webkit-input-placeholder {
  color: rgba(34, 34, 34, 0.6);
  opacity: 1;
}
.sat-form .sat-input::-moz-placeholder {
  color: rgba(34, 34, 34, 0.6);
  opacity: 1;
}
.sat-form .sat-input:-ms-input-placeholder {
  color: rgba(34, 34, 34, 0.6);
  opacity: 1;
}

/* Widget de notation (etoiles / echelle 1-10) */
.sat-rating {
  position: relative;
  display: inline-flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
}
.sat-rating input {
  position: absolute;
  opacity: 0;
  width: 1px;
  height: 1px;
}
.sat-rating label {
  cursor: pointer;
  margin: 0;
  font-weight: 400;
}
.sat-rating-5 label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  font-size: 30px;
  line-height: 1;
  color: #d9dee2;
}
.sat-rating-5 input:checked ~ label,
.sat-rating-5 label:hover,
.sat-rating-5 label:hover ~ label {
  color: #f5a623;
}
.sat-rating-10 label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  margin: 0 3px;
  border: 1px solid #d9dee2;
  border-radius: 4px;
  color: #555;
  font-size: 14px;
}
.sat-rating-10 input:checked ~ label,
.sat-rating-10 label:hover,
.sat-rating-10 label:hover ~ label {
  background: #146ed3;
  border-color: #146ed3;
  color: #fff;
}
.sat-radio-oui-non {
  position: relative;
}
.sat-radio-oui-non input[type="radio"] {
  position: absolute;
  opacity: 0;
  width: 1px;
  height: 1px;
}
.sat-radio-oui-non label {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  font-weight: 400;
  margin-right: 25px;
}
.sat-radio-oui-non label:before {
  content: "";
  display: inline-block;
  width: 18px;
  height: 18px;
  margin-right: 8px;
  border: 2px solid #d9dee2;
  border-radius: 50%;
  box-sizing: border-box;
}
.sat-radio-oui-non input:checked + label:before {
  border-color: #146ed3;
  background: #146ed3;
  box-shadow: inset 0 0 0 3px #fff;
}
.sat-form input[type="submit"] {
  -webkit-appearance: none;
  appearance: none;
  padding: 16px 30px;
  border: 2px solid #022c54;
  border-radius: 25px;
  background: #022c54;
  color: #fff;
  font-size: 12px;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 0.5px;
  cursor: pointer;
}
.sat-form input[type="submit"]:hover {
  background: transparent;
  color: #022c54;
}
@media (max-width: 767px) {
  .sat-rating-5 label {
    width: 34px;
    height: 34px;
    font-size: 26px;
  }
  .sat-rating-10 label {
    width: 30px;
    height: 30px;
    margin: 0 2px;
    font-size: 13px;
  }
}


.margin-header-fix {
  margin-top: 165px
}


/* ============================================================
   Impression de la carte d'itinéraire (format lettre)
   Bouton « Imprimer la carte » + feuille d'impression dédiée.
   ============================================================ */

.carte-print-actions {
  margin-bottom: 10px;
  text-align: right;
}
.btn-print-carte {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #146ed3;
  color: #fff;
  border: none;
  padding: 8px 14px;
  border-radius: 4px;
  font-size: 14px;
  line-height: 1;
  cursor: pointer;
}
.btn-print-carte:hover,
.btn-print-carte:focus {
  background: #0f579f;
  color: #fff;
}
.btn-print-carte .fa {
  font-size: 15px;
}

/* Cachée à l'écran ; révélée uniquement à l'impression. */
.carte-print-sheet {
  display: none;
}

@media print {
  @page {
    size: letter portrait;
    margin: 1.4cm 1.4cm 0.6cm;
  }

  /* La feuille est un enfant direct de <body> (placée au niveau racine du
     template). On masque donc simplement tous les AUTRES enfants de <body> :
     le document se réduit à la seule feuille → une page, pleine largeur, sans
     répétition (fini le position:fixed qui se répétait sur chaque page). */
  body > *:not(.carte-print-sheet) {
    display: none !important;
  }

  .carte-print-sheet {
    display: flex !important;
    flex-direction: column;
    /* Occupe toute la hauteur de la zone imprimable (letter 27.94cm − marges
       1.4cm haut − 0.6cm bas ≈ 25.9cm), avec une petite réserve pour éviter le
       débordement sur une 2e page. Combiné à margin-top:auto sur le footer,
       celui-ci reste toujours collé au bas, peu importe la quantité de texte. */
    min-height: 25.6cm;
    color: #000;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .cps-header {
    margin-bottom: 10px;
  }
  .cps-title {
    margin: 0;
    font-size: 18pt;
    line-height: 1.15;
    color: #000;
  }

  .cps-texts {
    font-size: 11pt;
    line-height: 1.35;
    margin-bottom: 14px;
  }
  .cps-desc {
    margin-bottom: 6px;
  }
  .cps-villes {
    color: #333;
  }
  .cps-texts p {
    margin: 6px 0 0;
    line-height: 1;
  }

  /* Carte : pleine largeur de page, ratio conservé. Plafond de hauteur pour
     garder titre + textes + carte sur une seule page (une description très
     longue peut malgré tout déborder sur une 2e page). */
  .cps-map {
    display: block;
    margin: 0 auto;
    max-width: 100%;
    max-height: 16.5cm;
    width: auto;
    height: auto;
    page-break-inside: avoid;
    border: 3px solid #0f579f;
    border-radius: 14px;
  }

  /* Footer minimal : logo + adresse/téléphone de l'agence. */
  .cps-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    /* auto = pousse le footer au bas de la page (la feuille est une colonne
       flex pleine hauteur) ; il reste donc collé au bas même s'il y a peu de
       texte. Le 12px sert de garde minimale sous une carte très haute. */
    margin-top: auto;
    padding-top: 12px;
    border-top: 1px solid #0f579f;
    page-break-inside: avoid;
  }
  .cps-footer-logo {
    height: 1.3cm;
    width: auto;
  }
  .cps-footer-coords {
    text-align: right;
    font-size: 9pt;
    line-height: 1.3;
    color: #333;
  }
  .cps-footer-coords span {
    display: block;
  }
  .cps-footer-tel {
    font-weight: bold;
    color: #000;
  }
}
/* ---- Consentement signé (consentement.group, 2026-10-27) — hérite de .sat-form ---- */
.cons-form .cons-texte {
  max-height: 320px;
  overflow-y: auto;
  padding: 16px 20px;
  border: 1px solid #ddd;
  border-radius: 4px;
  background: #fafafa;
  font-size: 15px;
  line-height: 1.6;
}
.cons-form .cons-texte p:last-child { margin-bottom: 0; }
.cons-form .cons-accepte {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-weight: normal;
  cursor: pointer;
}
.cons-form .cons-accepte input { margin-top: 4px; }
.cons-form .autograph { max-width: 520px; background: #fff; }
.cons-form .autograph__toolbar button {
  margin: 8px 8px 0 0;
  padding: 6px 14px;
  border: 1px solid #ccc;
  border-radius: 4px;
  background: #f5f5f5;
  cursor: pointer;
}
.cons-form .autograph > canvas.ft-autograph {
  background: #fff;
  border: 1px solid #a1a0a0;
}
/* Case à cocher native : style.css:56 met -webkit-appearance:none + border:0 sur tous les
   input, ce qui la rend invisible (même contournement que .sat-radio-oui-non). */
.cons-form .cons-accepte input[type="checkbox"] {
  -webkit-appearance: checkbox;
  -moz-appearance: checkbox;
  appearance: checkbox;
  width: 20px;
  height: 20px;
  min-width: 20px;
  margin: 2px 0 0;
  border: 1px solid #a1a0a0;
  accent-color: #022C54;
  cursor: pointer;
}
