@import url('https://fonts.googleapis.com/css?family=Roboto+Condensed:300,300i,400,400i,700,700i&display=swap');

@font-face {
    font-family: 'Akzidenz';
    src: url('../fonts/akzidenz-grotesk.eot');
    src: url('../fonts/akzidenz-grotesk.eot?#iefix') format('embedded-opentype'),
         url('../fonts/akzidenz-grotesk.woff2') format('woff2'),
         url('../fonts/akzidenz-grotesk.woff') format('woff'),
         url('../fonts/akzidenz-grotesk.ttf') format('truetype'),
         url('../fonts/akzidenz-grotesk.svg#Akzidenz') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Castro';
    src: url('../fonts/castroscript.eot');
    src: url('../fonts/castroscript.eot?#iefix') format('embedded-opentype'),
         url('../fonts/castroscript.woff2') format('woff2'),
         url('../fonts/castroscript.woff') format('woff'),
         url('../fonts/castroscript.ttf') format('truetype'),
         url('../fonts/castroscript.svg#Castro') format('svg');
    font-weight: normal;
    font-style: normal;
}

body, html { height: 100%; margin: 0; padding: 0; }
html { font-size: 62.5%; }
body { color: #444; background-color: #fff; font-family: 'Roboto Condensed', sans-serif; font-weight: 300; letter-spacing: 0.02rem; font-size: 1.7rem; }

p { line-height: 1.40 }
img { margin-bottom: 10px; }
.contacts img { margin-bottom: 5px !important; }
a { text-decoration: underline; }
a.no-underline { text-decoration: none }
a, a:hover, a:visited { color: #666; }
a.download::before { content: '\f019 \0020 \0020'; font-family:'FontAwesome'; color: #000; white-space: pre }

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { line-height: 1.4; }
h1 { font-family: "Akzidenz"; font-size: 3.4rem; text-transform: uppercase; color: #000; line-height: 3.4rem; margin-top: 0; margin-bottom: 5px; padding-bottom: 2px; } 
h1.home-cat, h2.room-type { font-family: Castro; font-size: 4.0rem; text-transform: none; margin: 0; padding-bottom: 0; border: none; color: #000; } 
h1.home-cat { margin-top: 10px; margin-bottom: 5px; font-size: 5.0rem; }
h1.home-cat.hotel { margin-bottom: 15px; }
h1.home-cat::before, h2.room-type::before { content: '\25a0'; font-family: Arial, Helvetica, sans-serif; font-size: 55%; margin-right: 10px; }
h2 { text-transform: uppercase; font-size: 2.2rem; line-height: 2.4rem; font-weight: 300; border-bottom: 1px solid #666; margin-bottom: 5px; padding-bottom: 2px; }
h2.room-type { line-height: 4.0rem; font-size: 4.4rem; }
h3 { font-size: 2.0rem; font-weight: normal; }
h4 { font-size: 1.8rem; font-weight: normal; }
h5 { font-size: 1.8rem; font-weight: normal; margin-bottom: 5px; }
h6 { font-size: 1.4rem; font-weight: normal; }

.alignleft {float: left; margin-right: 15px;}
.alignright {float: right; margin-left: 15px}
.aligncenter {display: block; margin-left: auto; margin-right: auto; }
.wp-caption-text {background-color: #f0f0f0; text-align: center; padding:5px 0;font-size: 0.85em }
.wp-caption img {margin-bottom: 0; }

/* GENERAL */
.content { margin-top: 105px; }

.img-responsive { width: 100%; }
.img-not-responsive { width: auto; }

.row-equalheight { overflow: hidden; }
.col-equalheight { margin-bottom: -1000px; padding-bottom: 1000px; }

.vcenter { position: absolute; top: 50%; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -os-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.vhcenter { position: absolute; top: 50%; left: 50%; -moz-transform: translateX(-50%) translateY(-50%); -ms-transform: translateX(-50%) translateY(-50%); -o-transform: translateX(-50%) translateY(-50%); -webkit-transform: translateX(-50%) translateY(-50%); transform: translateX(-50%) translateY(-50%); width: 100%; }

.dummy { height: 10px; width: 10px; display: inline-block; background-color: #f00;  }
.valign-middle { display: inline-block; vertical-align: middle; }

.fullwh { width: 100%; height: 100%; }
.nopadlr { padding-left: 0; padding-right: 0; }

.castro { font-family: "Castro", Arial, Helvetica, sans-serif; color: #000; }

.language a, .language span { display: inline-block; vertical-align: middle; }
.language span { color: #999; margin-left: 2px; margin-right: 2px; font-size: 2.0rem; }
.language a { color: #434343; font-size: 1.6rem; }

.grey { color: #666; }
.dark-grey { color: #434343; }

/* RTE */
.rte .mt0 { margin-top: 0px; }
.rte .mt1 { margin-top: 5px; }
.rte .mt2 { margin-top: 10px; }
.rte .mt3 { margin-top: 15px; }
.rte .mt4 { margin-top: 20px; }
.rte .mb1 { margin-bottom: 5px; }
.rte .mb2 { margin-bottom: 10px; }
.rte .mb3 { margin-bottom: 15px; }
.rte .mb4 { margin-bottom: 20px; }
  
.rte h1 { line-height: 3.6rem; }
.rte h3 { margin-top: 15px; margin-bottom: 3px; }
.rte h4 { margin-bottom: 5px; }
.rte p + h3 { margin-top: 15px; }
.rte p + h4 { margin-top: 15px; }

.rte ul { padding-left: 20px; }
.rte ul li { margin-bottom: 5px; }

.rte strong { font-weight: 400; }

.rte .caps { text-transform: uppercase; }
.rte .big { font-size: 1.6rem; font-weight: 400; margin-top: 10px; margin-bottom: 5px; line-height: 2.1rem; }
.rte .important-banner { background-color: #434343; color: #fff; padding: 10px; }
.rte .important-banner a { color: #fff; }
.rte .important-small { color: #434343; font-weight: 400; }
.rte .important-big { font-size: 1.8rem; color: #434343; font-weight: 400; }
.rte .citation { font-size: 1.8rem; color: #434343; font-weight: 400; margin-top: 15px; margin-bottom: 15px; }
.rte .smaller { font-size: 75%; }
.rte .no-margin-bottom { margin-bottom: 2px; }
.rte .no-margin-top { margin-top: 2px; }
.rte .reset-clear { clear: both; margin-top: 3px; }

.rte .note { margin-top: 20px; margin-bottom: 20px; padding: 0 0 5px 0; border-top: 4px solid #000; padding-top: 10px; position: relative; }
.rte .note::after { content: ''; position: absolute; bottom: 0; right: 0; display: block; width: 10px; height: 10px; background-color: #000; }
.rte .note p { line-height: 1.5; }
.rte .note p.medium { font-size: 1.7rem; }
.rte .note p.big { font-size: 2.0rem; }

.rte .room-description { margin-bottom: 20px; }
.rte .room-equipment { margin-bottom: 10px; }

/* Modal 
.modal-header, .modal-footer {background-color: black; color: white}
*/

/* SUB HOME */
#sub-home h3, #sub-home .words { font-weight: 300; text-transform: uppercase; font-size: 2.4rem; margin-top: 5px; margin-bottom: 15px; }
#sub-home .logo-hotel { width: 60%; margin-left: auto; margin-right: auto; }
#sub-home .logo-cave { width: 70%; margin-left: auto; margin-right: auto; }
#sub-home .logo-restaurant { width: 70%; margin-left: auto; margin-right: auto; }

/* REST. MENU */
#menu-all .menu-list { overflow: hidden; margin: 0; padding: 0; }
#menu-all .menu-list li { list-style: none; margin-bottom: 40px; }
#menu-all .menu-list h2 { border-bottom: none; margin-top: 15px; margin-bottom: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
#menu-all .menu-list p.number { font-size: 1.6rem; margin-bottom: 0; height: 30px; }
#menu-all .menu-list p { font-size: 1.5rem; }
#menu-all .menu-list .infos { overflow: hidden; }
#menu-all .menu-list .price { float: left; font-weight: 400; font-size: 2.2rem; line-height: 2.6rem; }
#menu-all .menu-list .more { float: right; font-weight: 400; line-height: 2.6rem; }
#menu-all .menu-list a { text-decoration: none; }
#menu-all .menu-list hr { border-top: 1px solid #434343; margin-top: 10px; margin-bottom: 10px; }

#menu .logo-restaurant { width: 60%; margin-left: auto; margin-right: auto; }

#menu #nav a { text-decoration: none; }
#menu .price { font-size: 2.2rem; font-weight: normal; line-height: 2.0rem; text-align: right; margin-top: 4px; } 
#menu .option { font-size: 1.6rem; line-height: 2.0rem; line-height: 2.2rem; }
#menu .option strong { font-size: 1.8rem; font-weight: 300; }

#menu .inside { margin-top: 10px; }
#menu .inside p { font-size: 1.8rem; font-weight: normal; margin-bottom: 15px; line-height: 2.0rem; }
#menu .inside p span.detail { font-size: 1.4rem; font-weight: 300; }
#menu .inside p.price_only_menu { position: relative; }
#menu .inside p span.price-menu {font-size: 1.4rem; font-weight: 300; position: absolute; right: 0; top: 0px; }
#menu .list { list-style: none; font-size: 1.7rem; font-weight: 300; text-transform: uppercase; padding: 0 20px 0 0; }
#menu .list li { border-bottom: 1px solid #666; padding: 3px 0 6px 0; margin: 6px 0; }
#menu .list li a:hover { color: #000; text-decoration: none; }
#menu .list li:not(.selected) a::after { content: ''; display: inline-block; width: 9px; height: 9px; background-color: #000; opacity: 0; margin-left: 0px; margin-bottom: 1px; -webkit-transition: all 0.8s; transition: all 0.8s; }
#menu .list li:not(.selected) a:hover::after { opacity: 1; margin-left: 12px; transform: rotate(90deg); }
#menu .list li.selected a::after { content: ''; display: inline-block; width: 9px; height: 9px; background-color: #000; margin-left: 12px; margin-bottom: 1px; }
#menu .list .small { font-size: 85%; }

#menu .image img { margin-top: 15px; margin-bottom: 0; } 

#menu .informations { font-size: 1.5rem; }
#menu .informations hr { border-top: 1px solid #888; margin: 5px 0 10px 0; }
#menu .informations .important { font-weight: 400; }

/* ROOMS */
#room .price-low, #room .price-top { text-transform: uppercase; font-size: 1.7rem; }
#room .price-low { padding-top: 10px; }
#room .price-low span, #room .price-top span { padding-left: 2px; }
#room hr { border-top: 1px solid #666; margin: 8px 0; }
#room h4 { margin-top: 15px; }

#room .col-slideshow { padding-top: 15px; }
#room .slideshow::after { content: url('../images/swipe-hand.png'); position: absolute; top: -5px; right: -5px; -webkit-transform: scale(0.6); transform: scale(0.6); opacity: 0.5; z-index: 100; }
#room .slideshow .check-in a { background-color: #000; padding: 4px 10px; color: #fff; line-height: 2.0rem; font-size: 1.4rem; transition: all 0.3s; }
#room .slideshow .check-in a:hover { text-decoration: none; background-color: #666; }
#room .slideshow .cycle-pager span { font-size: 3.5rem; line-height: 2.6rem; margin-left: 4px; color: #ccc; cursor: pointer; }
#room .slideshow .cycle-pager span.cycle-pager-active { color: #888; }

/* SURROUNDINGS */
.surroundings p.link { margin-top: 5px; margin-bottom: 15px; text-align: right; }
.surroundings p.link a { background-color: #000; padding: 3px 8px; color: #fff; transition: all 0.3s }
.surroundings p.link a:hover { text-decoration: none; background-color: #666; }

/* WINE */
#wine .category { text-align: center; text-transform: uppercase; font-size: 2.2rem; font-weight: 300; margin-top: 20px; margin-bottom: 0; }
#wine .price { font-size: 1.8rem; line-height: 2.4rem; font-weight: normal; border-bottom: 1px solid #666; margin-top: 20px; margin-bottom: 5px; padding-bottom: 2px; }

#wine .quote { font-family: "Castro"; font-size: 2.4rem; margin-top: 2px; margin-bottom: 5px; }
#wine .author { text-align: right; font-size: 1.4rem; padding-right: 10px; font-style: italic; }
#win .author span::before { content: '[ '; }
#win .author span::after { content: ' ]'; }
#wine img.bottle { width: 70%; margin: 5px auto 0 auto; }
#wine .features-more-button { background-color: #000; padding: 3px 8px; color: #fff; cursor: pointer; margin-top: 10px; margin-bottom: 15px; } 
#wine .features-more { display: none; }
#wine .features { list-style: none; padding-left: 0; }
#wine .features li { margin-bottom: 6px; }
#wine .features li span { font-weight: normal; }
#wine h5 { text-decoration: underline; font-size: 2.0rem; }
#wine h5:first-child { margin-top: 5px; }
#wime .technical-doc { position: relative; }

/* OFFER */
#offers .mt0 { margin-top: 0px !important; }
#offers .mt0 a { text-decoration: underline; }
#offers hr { border-top: 0px solid #ccc; margin: 40px 15% 30px 15%; }
#offers hr:last-child { border: none; margin: 0 0 20px 0; }
#offers .offer { margin-top: 10px; margin-bottom: 0; }
#offers .offer .now-xs { display: inline-block; color: #fff; text-transform: uppercase; font-weight: 400; font-size: 1.8rem; line-height: 1.6rem ; padding: 6px 10px; margin-bottom: 8px; background-color: #666; }
#offers .offer .now-md { display: none; background-color: #666; }
#offers .offer h2 { clear: both; margin-top: 10px; font-size: 3.0rem; line-height: 3.4rem; margin-bottom: 15px; }
#offers .offer .detail { margin-bottom: 8px; }
#offers .offer .detail p { margin-bottom: 5px; }
#offers .offer .date-price { overflow: auto; margin-top: 15px; }
#offers .offer .date { position: relative; font-size: 1.6rem; margin-top: 8px; margin-bottom: 5px; font-weight: 400; padding-left: 22px; text-transform: lowercase;  }
#offers .offer .date i { position: absolute; left: 0; top: 1px; }
#offers .offer .date.offremoment { color: #fff; line-height: 1em; margin-left: 10px; margin-right: 14px; margin-top: 5px; }
#offers .offer .price-booking { font-weight: 400; color: #fff; text-align: center; overflow: hidden; }
#offers .offer .price { float: right; font-size: 1.5rem; line-height: 35px; height: 35px; color: #434343; }
#offers .offer .price span { font-size: 2.2rem; padding-left: 3px; padding-right: 3px; }
#offers .offer .price i { font-size: 1.8rem; font-style: normal; font-family: Arial; }
#offers .offer .price span span { font-size: 70%; padding: 0; }
#offers .offer .booking, #offers .offer .contact-us { float: right; font-size: 1.8rem; line-height: 35px; height: 35px; background-color: #434343; padding: 0 15px; margin-left: 12px; -webkit-transition: 0.3s; transition: 0.3s; }
#offers .offer .booking a, #offers .offer .contact-us a { text-decoration: none; color: #fff; }
#offers .offer .booking:hover, #offers .offer .contact-us:hover { background-color: #666; }

/* SHOP */
.shop-product img { margin-top: 0px; }

/* CONTACT */
#contact .contact-form { margin-top: 10px; }

#contact form p { margin-bottom: 0; }
#contact form label { text-transform: uppercase; font-size: 2.0rem; font-weight: normal; }
#contact form input, #contact form select, #contact form textarea { margin-bottom: 20px; }
#contact form input, #contact form textarea { background-color: #d5d5d5; border: none; font-size: 1.8rem; width: 100%; resize: none; }
#contact form textarea { height: 180px; padding: 5px 8px; }
#contact form input { height: 40px; line-height: 4.0rem; padding-left: 8px; padding-right: 8px; }
#contact form input:hover, #contact form textarea:hover { background-color: #e0e0e0; }
#contact form input.captcha { width: 200px; }
#contact form span.captcha span { display: block; margin-bottom: 2px; }
#contact form input.submit { background-color: #000; color: #fff; text-transform: uppercase; font-size: 2.0rem; font-weight: normal; letter-spacing: 1px; padding: 0; margin-bottom: 5px; }
#contact form select { height: 40px; background-color: #d5d5d5; border: none; width: 100%; font-size: 2.0rem; line-height: 3.0rem; padding-left: 8px; }
#contact form select option { margin-bottom: 2px; padding-top: 4px; padding-bottom: 4px; border: none; }
#contact form .ajax-loader { display: none; }
#contact form .needed-xs { text-align: right; color: #000; }
#contact form { }
#contact form .wpcf7-not-valid-tip { margin-top: -12px; margin-bottom: 15px; }
#contact form .captcha .wpcf7-not-valid-tip { margin-top: -25px; }

#contact .contacts { margin-top: 20px; margin-bottom: 15px; }
#contact .contacts .name { font-family: "Akzidenz"; font-size: 3.0rem; line-height: 2.1rem; text-transform: uppercase; color: #000; margin-bottom: 5px; }
#contact .contacts .name .small { font-size: 1.6rem; }
#contact .contacts .name .medium { font-size: 2.2rem; }
#contact .contacts .name-and-tel { line-height: 2.0rem; }
#contact .contacts .order-document { }
#contact .contacts strong { font-weight: normal; }

#contact .google-maps { position: relative; padding-bottom: 75%; /* This is the aspect ratio */ height: 0; overflow: hidden; }
#contact .google-maps iframe { position: absolute; top: 0; left: 0; width: 100% !important; height: 100% !important; }

#contact .situation .name { font-size: 2.8rem; color: #000; font-weight: normal; margin-bottom: 0; }
#contact .situation .address { font-size: 2.0rem; color: #000; font-weight: normal; }
#contact .situation strong { font-weight: normal; }

#contact div.wpcf7-validation-errors { border: none !important; display: none !important; }
#contact div.wpcf7-mail-sent-ok { border: none !important; text-align: right !important; font-size: 20px !important; }

.alert-success { background: none !important; border: none !important; color: #fff !important; }


/* BLOG INDEX */
#blog-index { margin-top: 10px; }
#blog-index .item { padding-left: 10px; padding-right: 10px; }
#blog-index h4 { font-weight: 300; font-size: 2.0rem; text-transform: uppercase; margin-top: 0; margin-bottom: 0; }
#blog-index h4 a { text-decoration: none; }
#blog-index .date { font-size: 1.2rem; }
 #nav-above.navigation {top: -21px; left: 14px; position: absolute; display: none;}
/*#nav-below.navigation {bottom: -10px; left: 14px; position: absolute; } */

.nav-next > a, .nav-previous > a {font-family: akzidenz; text-decoration: none}
.nav-next > a:hover, .nav-previous > a:hover {color: #999 !important; text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);}

.nav-previous {bottom: -10px; position: absolute; right: 10px !important; }
.nav-next {bottom: -10px; position: absolute; left: 10px !important; }
#blog-index .box { border: 1px solid #d7d7d7; margin-bottom: 20px; padding: 15px; -webkit-transition: all 200ms linear; transition: all 200ms linear; }
#blog-index .box:hover { -webkit-box-shadow: 0px 0px 3px rgba(0,0,0,0.5); box-shadow: 0px 0px 3px rgba(0,0,0,0.5); }

/* BLOG */
#blog { margin-bottom: 40px }
#blog h1 { margin-bottom: 4px; }
#blog h2 { margin-top: 20px; }
#blog .date { margin-top: -4px; margin-bottom: 10px; }
#blog .content { margin-top: 10px; }

.widget-sidebar { margin-top: 25px; }
.widget-sidebar a { text-decoration: none; }
.widget-sidebar .return { font-size: 3.0rem; text-transform: uppercase; border-top: 1px solid #666666; border-bottom: 1px solid #666666; }
.widget-sidebar .widget { margin-top: 15px; }
.widget-sidebar .widget h5 { font-size: 2.4rem; border-bottom: 1px solid #666666; margin-bottom: 8px; }
.widget-sidebar .widget ul { list-style: none; padding-left: 0; }
.widget-sidebar .widget ul li { margin-bottom: 5px; -webkit-transition: all 0.2s; transition: all 0.2s; }
.widget-sidebar .widget ul li:hover { padding-left: 5px; }
.widget-sidebar .widget.widget_recent_entries ul { list-style: square; margin-left: 15px; }

/* COOKIES */
#cn-notice-text { display: block; padding-bottom: 5px; font-family: Arial, Helvetica, sans-serif; }

@media only screen and (min-width : 320px){

}


@media only screen and (min-width : 480px){

}


@media only screen and (min-width : 768px){
  h1 { font-size: 3.8rem; line-height: 3.8rem; }
  h1.home-cat, h2.room-type { font-size: 5.6rem; margin-bottom: 20px; }
  h1.home-cat.hotel { margin-top: 10px; margin-bottom: 20px; }
  h1.home-cat::before, h2.room-type::before { margin-right: 15px; }
  h2.snail-close::after { content: url('../images/picto-snail-close.png'); position: absolute; bottom: 2px; padding-left: 20px; -webkit-transform: scale(0.9); transform: scale(0.9); }
  h2.snail-open::after { content: url('../images/picto-snail-open.png'); position: absolute; bottom: 2px; padding-left: 20px; -webkit-transform: scale(0.9); transform: scale(0.9); }
  h2 { font-size: 2.4rem; line-height: 2.6rem }
  h2.room-type { margin-bottom: 5px; font-size: 5.0rem; margin-top: 5px; }
  h3 { font-size: 2.2rem; }
  h4 { font-size: 2.0rem; }
  
  /* GENERAL */ 
  .content { margin-top: 20px; margin-bottom: 20px }

  /* RTE */
  .rte .mt1 { margin-top: 10px; }
  .rte .mt2 { margin-top: 20px; }
  .rte .mt3 { margin-top: 30px; }
  .rte .mt4 { margin-top: 40px; }
  .rte .mb1 { margin-bottom: 10px; }
  .rte .mb2 { margin-bottom: 20px; }
  .rte .mb3 { margin-bottom: 30px; }
  .rte .mb4 { margin-bottom: 40px; }
  
  .rte ul { padding-left: 30px; }

  .rte .room-description { margin-bottom: 25px; }
  .rte .room-equipment { margin-bottom: 15px; }
  
  /* SUB HOME */
  #sub-home .logo-hotel { width: 70%; margin-top: -35px; margin-left: auto; margin-right: auto; }
  #sub-home .logo-cave { width: 70%; margin-top: -35px; margin-left: auto; margin-right: auto; }
  #sub-home .logo-restaurant { width: 70%; margin-top: -35px; margin-left: auto; margin-right: auto; }
  #sub-home .visible-sm .logo-hotel { width: 40%; margin-top: -150px; margin-left: 60%; }
  #sub-home .visible-sm .logo-cave { width: 60%; margin-top: -145px; margin-left: 40%; }
  #sub-home .visible-sm .logo-restaurant { width: 50%; margin-top: -160px; margin-left: 50%; }
  #sub-home .visible-sm hr { border-top: 4px solid #000; margin-top: -10px; }
  #sub-home .people { margin-top: 20px; }
  #sub-home .illustration-01, #sub-home .illustration-02 { padding-top: 10px; padding-bottom: 20px; }
  #sub-home .citation { font-family: Castro; font-size: 3.0rem; margin-top: 20px; line-height: 3.4rem }
  #sub-home .citation span.space1 { font-size: 1.0rem; }
  #sub-home .citation span.space2 { font-size: 1.8rem; }
  
  /* REST. MENU */
  #menu-all .menu-list p { height: 65px; overflow: hidden; }

  #menu .logo-restaurant { width: 60%; margin-top: -85px; margin-right: 0; }
  #menu .price { text-align: left; font-weight: normal; line-height: 2.6rem; border-bottom: 1px solid #666; margin-top: 20px; margin-bottom: 5px; padding-bottom: 2px; text-align: right }
  #menu .inside { margin-top: 20px; }
  #menu .inside p { margin-bottom: 20px; } 
  #menu .list { padding-left: 25px; padding-right: 0; font-size: 1.6rem; }
  #menu .list li { border-top: 1px solid #666; border-bottom: none; padding: 10px 0 6px 0; margin: 3px 0; }
  #menu .list li:not(.selected) a::after { width: 11px; height: 11px; margin-bottom: 0px; }
  #menu .list li.selected a::after { width: 11px; height: 11px; margin-bottom: 0px; }
  #menu .list .small { font-size: 75%; }
  #menu .image img { margin-top: 45px; margin-bottom: 10px; }
  #menu .informations { margin-bottom: 10px; }
  #menu .citation { border-top: 4px solid #000; font-size: 1.6rem; padding-top: 20px; margin-top: 20px; margin-bottom: 10px; position: relative }
  #menu .citation .author { font-weight: normal; font-size: 1.4rem; }
  #menu .citation::after { content: ''; display: block; width: 10px; height: 10px; background-color: #000; position: absolute; right: 0; bottom: 10px; }
  
  /* ROOMS */
  #room .room-description { margin-bottom: 15px; }
  #room .room-equipment { margin-bottom: 0; }
  #room .price-low, #room .price-top { font-size: 1.8rem; }
  #room .price-top { margin-bottom: 40px; }
  #room .col-slideshow { margin-top: 0; padding-bottom: 65px; }
  #room .col-bottom { vertical-align: top; }
  #room .col-bottom .slideshow { margin-top: 32px; }
  
  /* SURROUNDINGS */
  .surroundings p.link { margin-top: 20px; text-align: left; }  
  
  /* WINE */
  #wine .category { font-size: 3.2rem; margin-top: 10px; margin-bottom: 10px; }
  #wine h2 { font-size: 3.0rem; }
  #wine .price { font-size: 2.2rem; line-height: 2.6rem; }
  #wine .quote { font-size: 2.5rem; margin-top: 10px; margin-bottom: 8px; }
  #wine .author { font-size: 1.6rem; }
  #wine img.bottle { margin-top: 15px; width: 100%; }
  #wine .features-more-button { display: none; } 
  #wine .features-more { display: block; }
  #wine .features li { margin-bottom: 2px; }
  #wine h5 { text-decoration: none; margin-top: 20px; }
  #wine .presentation { margin-bottom: 20px; }
  #wine .technical-doc { margin-bottom: 40px; }
  #wine .technical-doc::before { content: ''; display: block; width: 15px; height: 15px; background-color: #000; position: absolute; left: 0; }
  
  /* OFFER */
  #offers .offer .now { color: #fff; text-transform: uppercase; font-weight: 400; float: left; font-size: 1.6rem; line-height: 1.8rem ; padding: 3px 6px 2px 6px; margin-bottom: 5px; }
  #offers .offer .img-responsive { margin-top: 45px; }
  #offers .offer .date { font-size: 1.5rem; margin-top: 7px; }
  #offers .offer .price span { font-size: 2.4rem; }
  #offers .offer .price i { font-size: 2.0rem; }
  #offers .offer .booking { font-size: 1.7rem; }
  #offers .offer .booking-price a.contact-us { font-size: 1.7rem; }
  
  /* CONTACT */
  #contact h1 { margin-top: 10px; }
  #contact .contact-form { margin-top: 20px; }
  #contact form textarea { height: 130px; }
  #contact form .phone-number { margin-bottom: 5px; }
  #contact form .needed-sm { color: #000; }
  #contact .captcha-container { margin-top: 10px; text-align: right; }
  #contact .submit-container { margin-top: 41px; }
  #contact .google-maps-container { margin-bottom: 30px; }
  
  #activetrail-return.alert { font-size: 1.8rem; padding-bottom: 0px !important; }
  
  /* BLOG */
  #blog .content { margin-top: 0px; }
  .widget-sidebar { margin-top: 55px; }
  .widget-sidebar .return {  border-top: none; }
  .widget-sidebar .widget { margin-top: 25px; }
  
  /* SHOP */
  .shop-product img { margin-top: 40px; }  
  
  /* OTHER */
  .mt1-restaurant-chef { margin-top: 20px; }
  .mt2-restaurant-chef { margin-top: 30px; }
  .mt3-restaurant-chef { margin-top: 30px !important; }
}


@media only screen and (min-width : 992px){
  h1 { font-size: 4.4rem; line-height: 4.2rem; margin-top: 10px; margin-bottom: 9px; }
  h1.home-cat, h2.room-type { font-size: 6.4rem; margin-bottom: 15px; }
  h2.snail-close::after { bottom: 4px; -webkit-transform: scale(1.0); transform: scale(1.0); }
  h2.snail-open::after { bottom: 6px; -webkit-transform: scale(0.95); transform: scale(0.95); }
  h2 { font-size: 2.8rem; line-height: 2.8rem; margin-top: 30px; }
  h2.room-type { font-size: 5.8rem; margin-top: 30px; margin-bottom: 5px !important; }
  h3 { font-size: 2.4rem; }
  h4 { font-size: 2.2rem; }
  
  /* GENERAL */ 
  .sub-home .content { margin-top: 10px; }
  
  body { background: url(../images/background-md-2.png) center top repeat-y; }
  body.home { background: none; }
  body.sub-home { background: url(../images/background-md-5.png) center top repeat-y; }
  
  /* RTE */
  .rte .room-description { margin-bottom: 30px; }
  .rte .room-equipment { margin-bottom: 35px; }
  .rte ul { padding-left: 35px; }
  
  /* SUB HOME */
  #sub-home .row-1 > div { height: 220px; }
  #sub-home .logo-hotel { width: 140px; position: absolute; left: 15px; bottom: 5px; }
  #sub-home .logo-cave { width: 190px; position: absolute; left: 15px; bottom: 5px; }
  #sub-home .logo-restaurant { width: 200px; position: absolute; left: 15px; bottom: 10px; }
  #sub-home .logo .line { position: absolute; bottom: -4px; width: 100%; height: 4px; background-color: #000; }
  #sub-home .row-2 h3:first-child { margin-top: 30px; }
  #sub-home .texte-2 { padding-right: 15px; }  
  #sub-home .people { bottom: -15px; }
  #sub-home .illustration-01 { margin-top: -10px; }
  #sub-home .illustration-02 { margin-top: -110px; }
  #sub-home .illustration-03 { margin-top: -30px; }
  #sub-home .illustration-04 { margin-top: 50px; }
  #sub-home .citation { margin-top: -15px; margin-left: 10px; font-size: 3.4rem; line-height: 3.8rem }
  #sub-home .citation span.space1 { font-size: 1.0rem; }
  #sub-home .citation span.space2 { font-size: 1.8rem; }
  #sub-home h3, #sub-home .words { font-size: 2.5rem; margin-bottom: 18px; }
  
  /* REST. MENU */
  #menu-all .menu-list p.number { font-size: 1.8rem; height: 35px; }
  #menu-all .menu-list p { font-size: 1.6rem; height: 45px; }
  #menu-all .menu-list .price { font-size: 2.4rem; line-height: 2.6rem; }
  #menu-all .menu-list .more { line-height: 2.6rem; }
  #menu-all .menu-list a { text-decoration: none; }
  #menu-all .menu-list hr { border-top: 1px solid #434343; margin-top: 15px; margin-bottom: 15px; }

  #menu .logo-restaurant { width: 200px; margin-top: -84px; margin-right: 0; padding-right: 15px; }
  #menu .price { font-size: 2.6rem; font-weight: normal; line-height: 2.8rem; margin-top: 30px; }
  #menu .inside { margin-top: 30px; }
  #menu .list { padding-left: 80px; padding-right: 15px; font-size: 2.0rem; }
  #menu .list li { padding: 12px 0 8px 0; }
  #menu .list li:not(.selected) a::after { width: 13px; height: 13px; margin-bottom: 0px; }
  #menu .list li:not(.selected) a:hover::after { margin-left: 15px; }
  #menu .list li.selected a::after { width: 13px; height: 13px; margin-left: 15px; margin-bottom: 0px; }
  #menu .informations { font-size: 1.5rem; margin-bottom: 20px; }
  #menu .citation { font-size: 1.7rem; }
  #menu .citation .author { font-size: 1.5rem; }
  #menu .citation::after { width: 12px; height: 12px; bottom: 12px; }
  
  /* ROOMS */
  #room h2 { margin-bottom: 25px; }
  #room .room-description { margin-bottom: 25px; }
  #room .room-equipment { margin-bottom: 15px; }
  #room .price-low, #room .price-top { font-size: 2.0rem; }
  #room .price-top { margin-bottom: 40px; }
  #room .col-slideshow { padding-bottom: 35px; padding-left: 35px; }
  #room .slideshow::after { display: none; }
  #room .col-bottom .slideshow { margin-top: 45px; }
  
  /* WINE */
  #wine .category { font-size: 3.5rem; margin-top: 10px; margin-bottom: 0; }
  #wine .price { font-size: 2.4rem; line-height: 2.8rem; margin-top: 30px; }
  #wine .quote { font-size: 2.7rem; margin-top: 5px; margin-bottom: 0; }
  #wine h5:first-child { margin-top: 12px; }
  #wine img.bottle { margin-top: 0; padding-left: 1px; padding-right: 1px; }
  #wine img.illustration { margin-top: 20px; }
  #wine .technical-doc::before { left: 15px; width: 15px; height: 15px; }
  
  /* OFFER */
  #offers .offer .now-xs { display: none; }
  #offers .offer .now-md-container { position: relative; }
  #offers .offer .now-md { position: absolute; display: block; top: 7px; left: -150px; width: 150px; color: #fff; text-transform: uppercase; text-align: center; font-weight: 400; float: left; font-size: 1.8rem; line-height: 1.8rem ; padding: 5px 0 5px 0; -webkit-transform-origin: 100% 0; -ms-transform-origin: 0 0; transform-origin: 100% 0; -webkit-transform: rotate(-90deg); -ms-transform: rotate(-90deg); transform: rotate(-90deg); }
  #offers .offer .infos-offer { padding-left: 40px; }
  #offers .offer .date { font-size: 1.7rem; font-weight: 400; padding-left: 25px; }
  #offers .offer .price span { font-size: 2.4rem; }
  #offers .offer .price i { font-size: 2.0rem; }
  #offers .offer .booking-price a.contact-us { font-size: 1.8rem; }
  #offers .offer .img-responsive { margin-top: 35px; }
  #offers .offer .detail { min-height: 110px; }
  #offers .offer .detail p:first-child { margin-top: 10px; }
  
  /* CONTACT */
  #contact h1 { margin-top: 15px; }
  #contact .contacts { margin-top: 30px; margin-bottom: 50px; }
  #contact .contacts .last { padding-left: 60px; }
  #contact .contacts .last .name { margin-bottom: 9px; }
  #contact .contacts .name { font-size: 4.0rem; line-height: 2.8rem; }
  #contact .contacts .name .small { font-size: 2.0rem; }
  #contact .contacts .name .medium { font-size: 2.6rem; }
  #contact .contacts .name-and-tel { line-height: 2.2rem; }
  #contact .google-maps { padding-bottom: 50%; }
  #contact .situation .name { font-size: 3.0rem; }
  #contact .situation .address { font-size: 2.2rem; }
  #contact .situation .gps { margin-bottom: 15px; }
  
  #contact .captcha-container { margin-top: 10px; }
  #contact .captcha-container label span, #contact .captcha-container label input { float: left; vertical-align: middle; line-height: 4.0rem; }
  #contact .captcha-container #captcha { margin-left: 15px; }
  #contact .submit-container { margin-top: 11px; }

  /* BLOG */
  .widget-sidebar { margin-top: 55px; }
  .widget-sidebar .widget { margin-top: 35px; }
  
  /* OTHER */
  .mt1-restaurant-chef { margin-top: 30px; }
  .mt2-restaurant-chef { margin-top: 40px; }
  .mt3-restaurant-chef { margin-top: 50px !important; }
  
  /* COOKIES */
  #cn-notice-text { display: inline; font-size: 1.3rem; }
}

@media only screen and (min-width : 1200px) {
  h1 { font-size: 4.8rem; line-height: 4.6rem; margin-bottom: 12px; }
  h1.home-cat { font-size: 6.5rem; margin-top: 10px; }
  h2 { font-size: 3.0rem; line-height: 3.0rem; }
  h3 { font-size: 2.6rem; }
  h4 { font-size: 2.2rem; }
  
  /* GENERAL */
  body { background: url(../images/background-lg-2.png) center top repeat-y; }
  body.sub-home { background: url(../images/background-lg-5.png) center top repeat-y; }
  
  /* RTE */
  .rte .room-description { margin-bottom: 40px; }
  .rte .room-equipment { margin-bottom: 40px; }
  .rte ul { padding-left: 40px; }
  
  /* SUB HOME */
  #sub-home .logo .line { margin-left: -15px; }
  #sub-home .texte-2 { padding-bottom: 10px; }
  #sub-home .illustration-02 { margin-top: -120px; }
  #sub-home .illustration-04 { margin-top: 90px; }
  #sub-home .citation { margin-top: -15px; font-size: 3.6rem; line-height: 3.8rem }
  #sub-home .citation span.space1 { font-size: 1.4rem; }
  #sub-home .citation span.space2 { font-size: 2.0rem; }
  #sub-home h3, #sub-home .words { font-size: 2.9rem; padding-top: 5px; margin-bottom: 20px; }
  
  /* REST. MENU */
  #menu .logo-restaurant { width: 220px; margin-top: -94px; }
  #menu .price { font-size: 2.8rem; line-height: 3.0rem; }
  #menu .list { padding-left: 100px; font-size: 2.4rem; }
  #menu .list li { padding: 12px 0 8px 0; }
  #menu .list li:not(.selected) a::after { width: 16px; height: 16px; margin-bottom: 0px; }
  #menu .list li:not(.selected) a:hover::after { margin-left: 18px; }
  #menu .list li.selected a::after { width: 16px; height: 16px; margin-left: 18px; margin-bottom: 0px; }
  #menu .informations { font-size: 1.5rem; margin-bottom: 20px; }
  #menu .citation::after { width: 12px; height: 12px; bottom: 12px; }
  
  /* ROOMS */
  #room h2 { margin-bottom: 30px; }
  #room .col-slideshow { padding-left: 50px; }
  #room .col-bottom { vertical-align: bottom; }
  #room .col-bottom .slideshow { margin-top: 0; }
  
  /* WINE */
  #wine .category { font-size: 3.7rem; margin-top: 20px; margin-bottom: 0; }
  #wine .price { line-height: 3.0rem; }

  #wine .quote { font-size: 2.9rem; }
  #wine img.bottle { margin-top: 0; }
  #wine img.illustration { margin-top: 30px; }
  
  /* OFFER */
  #offers .offer .now-md { left: -170px; width: 170px; font-size: 1.9rem; line-height: 1.8rem; letter-spacing: 0.5px; }
  #offers .offer .now-md.es {font-size: 1.5rem;}
  #offers .offer .price span { font-size: 2.6rem; }
  #offers .offer .price i { font-size: 2.2rem; }
  #offers .offer .date-price a.contact-us { font-size: 1.8rem; }
  #offers .offer .img-responsive { margin-top: 30px; }
  #offers .offer .detail { min-height: 125px; }
  #offers .offer .detail p:first-child { margin-top: 12px; }
  
  /* CONTACT */
  #contact .google-maps { padding-bottom: 40%; }
  #contact .situation .name { font-size: 3.2rem; }
  #contact .situation .address { font-size: 2.4rem; }
  #contact .situation .gps, #contact .situation .come { line-height: 2.0rem; }
  
  /* BLOG */
  .widget-sidebar { margin-top: 55px; }
  .widget-sidebar .widget { margin-top: 40px; }
  
  /* SHOP */
  .shop-product img { margin-top: 35px; }  
  
  /* OTHER */
  .mt3-restaurant-chef { margin-top: 80px !important; }
  
}