@charset "UTF-8";

#zone-encarts .container .promotion, #zone-prefooter .container .box3::before, #zone-prefooter .container .box3::after, #zone-prefooter .container .box3 p:nth-child(4)::before {
  background: url("https://www.residence-saintmalo.com/default/CMS/css/common/../../images/site/sprite_pictos.png") no-repeat 0 0; }

.cs-copyright {
  /* colors */
  --copyrightColorText: #4075a9;
  --copyrightColorLink: var(--copyrightColorText);
  --copyrightColorSeparator: #b20f3e;
  --copyrightColorSvg: var(--copyrightColorText);
  --copyrightTooltipBackground: #000000;
  --copyrightTooltipColor: var(--copyrightColorText);
  /* size */
  --copyrightFontSize: 11px;
  --copyrightSizeSvg: 15px;
  --copyrightSizeSeparator: 11px;
  --copyrightSizeSeparatorIcon: 10px;
  /* position, direction */
  --copyrightAlignPosition: center;
  /* flex-start, center, flex-end */
  --copyrightPosition: center;
  /* flex-start, center, flex-end, space-between */
  --copyrightDirection: column;
  /* row, column */
  /* padding */
  --copyrightTooltipPadding: 10px 0 15px; }

body, td, pre, input[type="text"], textarea, select {
  font-family: "Lato", Arial, Tahoma, Verdana, Helvetica, sans-serif;
  font-size: 1.4rem;
  line-height: 1.4;
  color: #606060; }

html {
  font-size: 10px; }

.cms_bloc_text table:not(.cms_bloc_text_two_column) {
  border-collapse: collapse;
  border: none; }
  .cms_bloc_text table:not(.cms_bloc_text_two_column) tr {
    border: none; }
  .cms_bloc_text table:not(.cms_bloc_text_two_column) th, .cms_bloc_text table:not(.cms_bloc_text_two_column) td {
    border: 1px solid #e4e4e4;
    line-height: 1.2; }
  .cms_bloc_text table:not(.cms_bloc_text_two_column) td {
    padding: .8rem;
    text-align: left;
    vertical-align: middle; }

.content ul, .content ol {
  position: relative;
  padding: .5rem 0; }
.content ol {
  list-style-position: inside; }
  .content ol li {
    padding-bottom: .6rem;
    padding-left: .7rem; }
.content ul {
  list-style-type: none; }
.content .cms_bloc ul.sitemap li, .content .cms_bloc.cms_bloc_form .cms_bloc_form_field_content ul li, .content .cms_bloc.cms_bloc_module .bl-product-long-description ul li, .content .cms_bloc.cms_bloc_text ul li {
  text-align: left;
  line-height: 1.4;
  padding-top: 2px;
  padding-bottom: 2px; }
  .content .cms_bloc ul.sitemap li:before, .content .cms_bloc.cms_bloc_form .cms_bloc_form_field_content ul li:before, .content .cms_bloc.cms_bloc_module .bl-product-long-description ul li:before, .content .cms_bloc.cms_bloc_text ul li:before {
    content: '';
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 6px;
    border-color: transparent transparent transparent #b20f3e;
    position: relative;
    left: -1.2rem;
    top: 0;
    margin: 0 -.4rem 0 0; }
.content a.bouton_bordeaux {
  text-decoration: none;
  display: inline-block;
  text-transform: uppercase;
  color: white;
  background: #b20f3e;
  border-radius: .5rem;
  padding: 0.5em 1em;
  border: 0.1rem solid #b20f3e;
  vertical-align: middle;
  transition: all .25s ease-out;
  transition-property: color, border, background, opacity, font-size; }
  .content a.bouton_bordeaux:hover {
    background: rgba(178, 15, 62, 0.1);
    color: #b20f3e; }
.content a.bouton_bleu {
  text-decoration: none;
  display: inline-block;
  text-transform: uppercase;
  color: white;
  background: #14385c;
  border-radius: .5rem;
  padding: 0.5em 1em;
  border: 0.1rem solid #14385c;
  vertical-align: middle;
  transition: all .25s ease-out;
  transition-property: color, border, background, opacity, font-size; }
  .content a.bouton_bleu:hover {
    background: rgba(20, 56, 92, 0.1);
    color: #14385c; }

a {
  color: #454545;
  font-weight: inherit;
  text-decoration: underline; }
  a:hover {
    text-decoration: none; }

.container {
  margin: 0 auto;
  width: 110rem;
  text-align: left; }

body, [id^='zone'] {
  min-width: 110rem; }

.cms_bloc_title h2 {
  color: #14385b;
  font-size: 2rem;
  line-height: 1.15;
  font-family: "merriweather", Arial, Tahoma, Verdana, Helvetica, sans-serif; }

.cms_bloc_text {
  line-height: 2.4rem;
  color: #606060;
  font-weight: 400; }

.cms_bloc_title h2 {
  text-transform: uppercase;
  font-weight: 400;
  text-align: center;
  margin-bottom: 1.5rem; }
  .cms_bloc_title h2::after {
    content: "";
    width: 8rem;
    height: .3rem;
    background-color: #14385c;
    display: block;
    margin-left: 50%;
    transform: translateX(-50%);
    margin-top: 1.5rem; }

.Bouton {
  padding: 1.5rem 2rem;
  border-radius: 5px;
  background-color: #b20f3e;
  color: white;
  text-transform: uppercase;
  font-weight: 700;
  text-decoration: none;
  border: .5px solid transparent;
  transition: color .2s ease, background-color .2s ease, border .2s ease; }
  .Bouton:hover {
    color: #b20f3e;
    background-color: transparent;
    border: 0.5px solid #b20f3e; }

#zone-footer > .container > div:nth-child(2) ul, #zone-prefooter ul {
  list-style-type: none;
  border-bottom: 1px solid transparent; }
  #zone-footer > .container > div:nth-child(2) ul li, #zone-prefooter ul li {
    padding: .5rem 0;
    border-bottom: 1px solid #5181b1;
    padding-left: 2rem; }
    #zone-footer > .container > div:nth-child(2) ul li:hover::before a, #zone-prefooter ul li:hover::before a {
      transform: translateX(0.4rem); }
    #zone-footer > .container > div:nth-child(2) ul li::before, #zone-prefooter ul li::before {
      content: '';
      display: inline-block;
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 5px 0 5px 6px;
      border-color: transparent transparent transparent #b20f3e;
      position: relative;
      left: -1.2rem;
      top: 0;
      margin: 0 -.4rem 0 0;
      transition: transform .2s ease; }

.content .cms_bloc ul.sitemap li {
  border-bottom: none; }

.content .cms_bloc_text ul li {
  display: inline-block;
  color: #606060;
  font-size: 1.4rem;
  font-weight: 400;
  border-bottom: none; }

#zone-preheader {
  background-color: #e7eaef; }
  #zone-preheader > .container {
    display: flex; }
  #zone-preheader h1 {
    color: #aebbc9;
    font-size: 1.1rem;
    font-weight: 400;
    display: block;
    align-self: center;
    flex: 1 1 auto; }
  #zone-preheader > .container > div {
    display: inline-flex;
    vertical-align: middle; }
    #zone-preheader > .container > div .socialLinks {
      display: flex; }
    #zone-preheader > .container > div ul {
      display: inline-block;
      vertical-align: middle;
      list-style-type: none;
      margin: 0;
      margin-left: 1rem;
      padding: 0; }
      #zone-preheader > .container > div ul li {
        background: rgba(0, 0, 0, 0.1); }
        #zone-preheader > .container > div ul li a {
          display: flex;
          justify-content: center;
          align-items: center;
          width: 2rem;
          height: 100%;
          text-align: center;
          text-decoration: none; }
          #zone-preheader > .container > div ul li a svg {
            width: 1.5rem;
            height: 1.5rem; }
      #zone-preheader > .container > div ul li span {
        display: none; }
    #zone-preheader > .container > div > a {
      text-decoration: none;
      color: #aebbc9;
      margin-left: 2rem;
      font-size: 1.2rem;
      align-self: center; }
      #zone-preheader > .container > div > a:hover::before {
        transform: translateX(0.2rem); }
      #zone-preheader > .container > div > a::before {
        content: '';
        display: inline-block;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 5px 0 5px 6px;
        border-color: transparent transparent transparent #14385c;
        position: relative;
        left: -1.2rem;
        top: 0;
        margin: 0 -.4rem 0 0;
        transition: transform .2s ease; }

#zone-header {
  position: relative;
  z-index: 10;
  background: white; }
  #zone-header > .container {
    position: relative; }
    #zone-header > .container .logContainer {
      float: left;
      padding-right: 3rem; }
    #zone-header > .container .logo {
      margin: 2rem 0;
      display: inline-block;
      vertical-align: middle;
      z-index: 5;
      transition: all .2s ease-in-out; }
      #zone-header > .container .logo:hover {
        transform: translateX(0.4rem); }
    #zone-header > .container .slogContainer {
      display: inline-block;
      padding-left: 3rem;
      line-height: 110px;
      position: relative; }
      #zone-header > .container .slogContainer::before {
        content: '';
        border-left: 1px solid #d7dee6;
        position: absolute;
        height: calc(11rem - 5rem);
        left: 0;
        top: 3rem; }
      #zone-header > .container .slogContainer h3 {
        color: #336699;
        font-size: 2.2rem;
        font-weight: 300;
        font-family: "merriweather", Arial, Tahoma, Verdana, Helvetica, sans-serif; }
    #zone-header > .container .reservButton {
      position: absolute;
      right: 0;
      top: 50%;
      transform: translateY(-50%); }

#zone-menu {
  height: 7rem;
  position: relative;
  z-index: 7; }
  #zone-menu::before {
    content: "";
    background-color: #14385c;
    width: 100%;
    height: 60px;
    position: absolute;
    left: 0;
    top: .6rem; }

#menu .menu {
  height: 7rem;
  width: 100%;
  position: relative; }
  #menu .menu ul.niv1 {
    height: 7rem; }
  #menu .menu ul.niv2 {
    width: 100%;
    min-width: 20rem;
    z-index: 70; }
    #menu .menu ul.niv2.hover li.niv2 {
      opacity: 1;
      transform: translateY(0); }
      #menu .menu ul.niv2.hover li.niv2:nth-child(1) {
        transition: transform 0.3s ease-in-out 0.01s, opacity 0.3s ease-in-out 0.01s; }
      #menu .menu ul.niv2.hover li.niv2:nth-child(2) {
        transition: transform 0.3s ease-in-out 0.02s, opacity 0.3s ease-in-out 0.02s; }
      #menu .menu ul.niv2.hover li.niv2:nth-child(3) {
        transition: transform 0.3s ease-in-out 0.03s, opacity 0.3s ease-in-out 0.03s; }
      #menu .menu ul.niv2.hover li.niv2:nth-child(4) {
        transition: transform 0.3s ease-in-out 0.04s, opacity 0.3s ease-in-out 0.04s; }
      #menu .menu ul.niv2.hover li.niv2:nth-child(5) {
        transition: transform 0.3s ease-in-out 0.05s, opacity 0.3s ease-in-out 0.05s; }
      #menu .menu ul.niv2.hover li.niv2:nth-child(6) {
        transition: transform 0.3s ease-in-out 0.06s, opacity 0.3s ease-in-out 0.06s; }
      #menu .menu ul.niv2.hover li.niv2:nth-child(7) {
        transition: transform 0.3s ease-in-out 0.07s, opacity 0.3s ease-in-out 0.07s; }
      #menu .menu ul.niv2.hover li.niv2:nth-child(8) {
        transition: transform 0.3s ease-in-out 0.08s, opacity 0.3s ease-in-out 0.08s; }
      #menu .menu ul.niv2.hover li.niv2:nth-child(9) {
        transition: transform 0.3s ease-in-out 0.09s, opacity 0.3s ease-in-out 0.09s; }
      #menu .menu ul.niv2.hover li.niv2:nth-child(10) {
        transition: transform 0.3s ease-in-out 0.1s, opacity 0.3s ease-in-out 0.1s; }
      #menu .menu ul.niv2.hover li.niv2:nth-child(11) {
        transition: transform 0.3s ease-in-out 0.11s, opacity 0.3s ease-in-out 0.11s; }
      #menu .menu ul.niv2.hover li.niv2:nth-child(12) {
        transition: transform 0.3s ease-in-out 0.12s, opacity 0.3s ease-in-out 0.12s; }
      #menu .menu ul.niv2.hover li.niv2:nth-child(13) {
        transition: transform 0.3s ease-in-out 0.13s, opacity 0.3s ease-in-out 0.13s; }
      #menu .menu ul.niv2.hover li.niv2:nth-child(14) {
        transition: transform 0.3s ease-in-out 0.14s, opacity 0.3s ease-in-out 0.14s; }
      #menu .menu ul.niv2.hover li.niv2:nth-child(15) {
        transition: transform 0.3s ease-in-out 0.15s, opacity 0.3s ease-in-out 0.15s; }
      #menu .menu ul.niv2.hover li.niv2:nth-child(16) {
        transition: transform 0.3s ease-in-out 0.16s, opacity 0.3s ease-in-out 0.16s; }
      #menu .menu ul.niv2.hover li.niv2:nth-child(17) {
        transition: transform 0.3s ease-in-out 0.17s, opacity 0.3s ease-in-out 0.17s; }
      #menu .menu ul.niv2.hover li.niv2:nth-child(18) {
        transition: transform 0.3s ease-in-out 0.18s, opacity 0.3s ease-in-out 0.18s; }
      #menu .menu ul.niv2.hover li.niv2:nth-child(19) {
        transition: transform 0.3s ease-in-out 0.19s, opacity 0.3s ease-in-out 0.19s; }
      #menu .menu ul.niv2.hover li.niv2:nth-child(20) {
        transition: transform 0.3s ease-in-out 0.2s, opacity 0.3s ease-in-out 0.2s; }
  #menu .menu ul.niv3 {
    width: 90%;
    min-width: 16rem; }
    #menu .menu ul.niv3.toLeft li.niv3 {
      transform: translateX(1rem); }
    #menu .menu ul.niv3.hover li.niv3 {
      opacity: 1;
      transform: translateX(0); }
      #menu .menu ul.niv3.hover li.niv3:nth-child(1) {
        transition: transform 0.3s ease-in-out 0.02s, opacity 0.3s ease-in-out 0.02s; }
      #menu .menu ul.niv3.hover li.niv3:nth-child(2) {
        transition: transform 0.3s ease-in-out 0.04s, opacity 0.3s ease-in-out 0.04s; }
      #menu .menu ul.niv3.hover li.niv3:nth-child(3) {
        transition: transform 0.3s ease-in-out 0.06s, opacity 0.3s ease-in-out 0.06s; }
      #menu .menu ul.niv3.hover li.niv3:nth-child(4) {
        transition: transform 0.3s ease-in-out 0.08s, opacity 0.3s ease-in-out 0.08s; }
      #menu .menu ul.niv3.hover li.niv3:nth-child(5) {
        transition: transform 0.3s ease-in-out 0.1s, opacity 0.3s ease-in-out 0.1s; }
      #menu .menu ul.niv3.hover li.niv3:nth-child(6) {
        transition: transform 0.3s ease-in-out 0.12s, opacity 0.3s ease-in-out 0.12s; }
      #menu .menu ul.niv3.hover li.niv3:nth-child(7) {
        transition: transform 0.3s ease-in-out 0.14s, opacity 0.3s ease-in-out 0.14s; }
      #menu .menu ul.niv3.hover li.niv3:nth-child(8) {
        transition: transform 0.3s ease-in-out 0.16s, opacity 0.3s ease-in-out 0.16s; }
      #menu .menu ul.niv3.hover li.niv3:nth-child(9) {
        transition: transform 0.3s ease-in-out 0.18s, opacity 0.3s ease-in-out 0.18s; }
      #menu .menu ul.niv3.hover li.niv3:nth-child(10) {
        transition: transform 0.3s ease-in-out 0.2s, opacity 0.3s ease-in-out 0.2s; }
      #menu .menu ul.niv3.hover li.niv3:nth-child(11) {
        transition: transform 0.3s ease-in-out 0.22s, opacity 0.3s ease-in-out 0.22s; }
      #menu .menu ul.niv3.hover li.niv3:nth-child(12) {
        transition: transform 0.3s ease-in-out 0.24s, opacity 0.3s ease-in-out 0.24s; }
      #menu .menu ul.niv3.hover li.niv3:nth-child(13) {
        transition: transform 0.3s ease-in-out 0.26s, opacity 0.3s ease-in-out 0.26s; }
      #menu .menu ul.niv3.hover li.niv3:nth-child(14) {
        transition: transform 0.3s ease-in-out 0.28s, opacity 0.3s ease-in-out 0.28s; }
      #menu .menu ul.niv3.hover li.niv3:nth-child(15) {
        transition: transform 0.3s ease-in-out 0.3s, opacity 0.3s ease-in-out 0.3s; }
      #menu .menu ul.niv3.hover li.niv3:nth-child(16) {
        transition: transform 0.3s ease-in-out 0.32s, opacity 0.3s ease-in-out 0.32s; }
      #menu .menu ul.niv3.hover li.niv3:nth-child(17) {
        transition: transform 0.3s ease-in-out 0.34s, opacity 0.3s ease-in-out 0.34s; }
      #menu .menu ul.niv3.hover li.niv3:nth-child(18) {
        transition: transform 0.3s ease-in-out 0.36s, opacity 0.3s ease-in-out 0.36s; }
      #menu .menu ul.niv3.hover li.niv3:nth-child(19) {
        transition: transform 0.3s ease-in-out 0.38s, opacity 0.3s ease-in-out 0.38s; }
      #menu .menu ul.niv3.hover li.niv3:nth-child(20) {
        transition: transform 0.3s ease-in-out 0.4s, opacity 0.3s ease-in-out 0.4s; }
  #menu .menu a {
    position: relative;
    text-decoration: none;
    font-weight: normal; }
    #menu .menu a.niv1 {
      color: white;
      font-size: 1.6rem;
      padding: 0 1rem;
      position: relative; }
      #menu .menu a.niv1.home {
        border-left: none; }
    #menu .menu a.niv2 {
      color: white;
      font-size: 1.4rem;
      min-height: 3rem;
      padding: 0.6rem 1rem; }
    #menu .menu a.niv3 {
      color: white;
      font-size: 1.2rem;
      min-height: 3rem;
      padding: 0.7rem 1rem; }
  #menu .menu li.niv1 {
    height: 100%;
    position: relative;
    z-index: 7; }
    #menu .menu li.niv1:hover + li::before, #menu .menu li.niv1.on + li::before {
      content: none; }
    #menu .menu li.niv1:not(:first-of-type)::before {
      content: '';
      border-right: 1px solid #335d85;
      position: absolute;
      height: 5rem;
      left: 0;
      top: 1rem; }
  #menu .menu li.niv2 {
    transform: translateY(-1rem);
    opacity: 0;
    width: 100%;
    background: #102e4b; }
  #menu .menu li.niv3 {
    transform: translateX(-1rem);
    opacity: 0;
    width: 100%;
    background: #0d243a; }
  #menu .menu li:hover > a.niv1, #menu .menu li.on > a.niv1, #menu .menu li > a:hover.niv1, #menu .menu li > a.on.niv1 {
    background: #b20f3e;
    color: white;
    border-color: transparent; }
    #menu .menu li:hover > a.niv1 span::before, #menu .menu li.on > a.niv1 span::before, #menu .menu li > a:hover.niv1 span::before, #menu .menu li > a.on.niv1 span::before {
      content: "";
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 6px 0 0 8px;
      border-color: transparent transparent transparent #700221;
      position: absolute;
      top: 0;
      right: -8px; }
    #menu .menu li:hover > a.niv1 span::after, #menu .menu li.on > a.niv1 span::after, #menu .menu li > a:hover.niv1 span::after, #menu .menu li > a.on.niv1 span::after {
      content: "";
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 6px 8px 0 0;
      border-color: #700221 transparent transparent transparent;
      position: absolute;
      bottom: 0;
      right: -8px; }
  #menu .menu li:hover > a.niv2, #menu .menu li.on > a.niv2, #menu .menu li > a:hover.niv2, #menu .menu li > a.on.niv2 {
    background: #8c0c31;
    color: white; }
  #menu .menu li:hover > a.niv3, #menu .menu li.on > a.niv3, #menu .menu li > a:hover.niv3, #menu .menu li > a.on.niv3 {
    background: #c51145;
    color: white; }

#breadcrumb {
  font-size: 1.2rem;
  text-align: center;
  position: absolute;
  bottom: 1rem;
  left: calc((100% - 110rem) / 2); }
  #breadcrumb, #breadcrumb a {
    color: white; }

#zone-page {
  position: relative;
  z-index: 5;
  background: white;
  padding: 2rem 0;
  background-image: url("https://www.residence-saintmalo.com/default/CMS/css/common/../../images/site/texture.png");
  background-position: center top; }
  .pageHome #zone-page {
    padding-top: 4rem; }
  #zone-page > .container main, #zone-page > .container aside {
    display: inline-block;
    vertical-align: top; }
  #zone-page > .container main {
    width: 100%;
    margin-right: 4rem; }
  #zone-page > .container aside {
    width: 25rem; }

#zone-encarts {
  position: relative;
  z-index: 5;
  background: white;
  padding: 5rem 0 8rem; }
  #zone-encarts h3 {
    font-weight: 300;
    text-transform: uppercase;
    font-size: 2rem;
    color: #14385b;
    text-align: center;
    font-family: "merriweather", Arial, Tahoma, Verdana, Helvetica, sans-serif;
    margin-bottom: 3.5rem; }
    #zone-encarts h3::before, #zone-encarts h3::after {
      content: "";
      display: inline-block;
      width: 30rem;
      height: 1px;
      background-color: #e4e4e4;
      margin: 0 1rem;
      vertical-align: middle; }
  #zone-encarts .container {
    display: flex;
    justify-content: center; }
    .pageType #zone-encarts .container {
      flex-direction: column;
      gap: 3rem; }
    #zone-encarts .container .cms_bloc {
      padding-top: 0; }
    #zone-encarts .container .encarts {
      display: flex;
      margin: 0;
      justify-content: space-between;
      list-style-type: none;
      position: relative;
      flex-wrap: wrap; }
      .pageType #zone-encarts .container .encarts {
        width: 110rem;
        justify-content: space-around; }
      #zone-encarts .container .encarts a {
        text-decoration: none; }
      #zone-encarts .container .encarts p {
        text-align: center; }
      #zone-encarts .container .encarts-item {
        background-color: #f5f5f5;
        border: 10px solid white;
        box-shadow: 0px 0px 2px #808080;
        width: 267px;
        height: 320px;
        padding-left: 0; }
        .pageType #zone-encarts .container .encarts-item {
          height: auto;
          padding-bottom: 2rem; }
        #zone-encarts .container .encarts-item:hover .encarts-itemKnowmore {
          color: #b20f3e;
          background-color: transparent;
          border: 0.5px solid #b20f3e; }
        #zone-encarts .container .encarts-item:nth-child(1) .encarts-itemLink::before {
          background-position: -247px 0; }
        #zone-encarts .container .encarts-item:nth-child(2) .encarts-itemLink::before {
          background-position: -495px 0; }
      #zone-encarts .container .encarts-itemLink {
        display: block; }
        .pageType #zone-encarts .container .encarts-itemLink::before {
          content: none; }
        #zone-encarts .container .encarts-itemLink::before {
          content: "";
          background-image: url("https://www.residence-saintmalo.com/default/CMS/css/common/../../images/site/encarts.png");
          position: relative;
          height: 135px;
          width: 100%;
          display: block;
          text-decoration: none;
          background-position: 0 bottom; }
        #zone-encarts .container .encarts-itemLink img {
          height: 135px;
          width: 100%;
          display: block;
          text-decoration: none; }
      #zone-encarts .container .encarts-itemTitle {
        text-transform: uppercase;
        color: white;
        font-size: 1.5rem;
        background-color: #14385c;
        padding: 1.3rem 0;
        font-weight: 500; }
      #zone-encarts .container .encarts-itemDescribe {
        font-weight: 700;
        font-size: 1.6rem;
        color: #555555;
        margin: 2.1rem 0 1.2rem;
        line-height: 1.6rem; }
        #zone-encarts .container .encarts-itemDescribe span:nth-child(1) {
          color: #14385c; }
        #zone-encarts .container .encarts-itemDescribe span:nth-child(2) {
          font-weight: 400;
          font-size: 1.4rem; }
      #zone-encarts .container .encarts-itemKnowmore {
        width: 16.5rem;
        font-weight: 500;
        font-size: 1.1rem;
        margin: 0 auto;
        padding: 1rem 0; }
    #zone-encarts .container .promotion {
      text-decoration: none;
      width: 267px;
      height: 320px;
      border: 10px solid white;
      box-shadow: 0px 0px 2px #808080;
      background-position: -872px 0; }
      .pageType #zone-encarts .container .promotion {
        display: none; }
      #zone-encarts .container .promotion p:nth-child(1) {
        color: #14385c;
        text-transform: uppercase;
        font-weight: 700;
        font-size: 2.6rem;
        margin-top: 6rem;
        margin-bottom: 3.5rem;
        text-align: center;
        line-height: 2.5rem; }
        #zone-encarts .container .promotion p:nth-child(1) span {
          font-weight: 600; }
      #zone-encarts .container .promotion p:nth-child(2) {
        background-color: #fff;
        color: #7c7c7c;
        padding: 1rem;
        text-align: center;
        margin: 0 3rem; }

#zone-prefooter {
  position: relative;
  z-index: 5;
  background: white;
  padding: 2.5rem 0 4rem 0;
  background-color: #1e456e; }
  #zone-prefooter .container {
    display: flex;
    justify-content: space-between; }
    #zone-prefooter .container > div {
      margin: 1.75rem; }
      #zone-prefooter .container > div h3 {
        text-transform: uppercase;
        text-align: center;
        color: white;
        font-size: 1.6rem;
        font-family: "merriweather", Arial, Tahoma, Verdana, Helvetica, sans-serif;
        padding: 1rem 0; }
      #zone-prefooter .container > div:first-child {
        margin-left: 0; }
      #zone-prefooter .container > div:last-child {
        margin-right: 0; }
    #zone-prefooter .container > div {
      width: 34.5rem; }
    #zone-prefooter .container .box2, #zone-prefooter .container .box3 {
      background-color: #3a6693;
      padding: 2rem;
      height: 15rem; }
    #zone-prefooter .container .box2 ul {
      columns: 2;
      -moz-columns: 2;
      position: relative; }
      #zone-prefooter .container .box2 ul::after {
        content: '';
        width: 100%;
        height: .2rem;
        position: absolute;
        bottom: 0;
        left: 0;
        background: #3a6693; }
    #zone-prefooter .container .box2 li {
      line-height: 1.7rem; }
      #zone-prefooter .container .box2 li:hover::before {
        transform: translateX(0.3rem); }
    #zone-prefooter .container .box2 a {
      color: white;
      text-decoration: none; }
    #zone-prefooter .container .box3 {
      position: relative;
      text-decoration: none;
      display: block; }
      #zone-prefooter .container .box3::before {
        content: "";
        width: 190px;
        height: 139px;
        background-position: -515px 0;
        position: absolute;
        bottom: 0;
        right: 0; }
      #zone-prefooter .container .box3::after {
        content: "";
        width: 142px;
        height: 104px;
        background-position: -705px 0;
        position: absolute;
        bottom: -12px;
        right: -45px; }
      #zone-prefooter .container .box3 p {
        color: white;
        line-height: 1.5rem; }
        #zone-prefooter .container .box3 p:first-of-type {
          padding-bottom: .5rem; }
        #zone-prefooter .container .box3 p:nth-child(2), #zone-prefooter .container .box3 p:nth-child(3) {
          transform: translateX(25px);
          padding-top: 5px;
          position: relative; }
          #zone-prefooter .container .box3 p:nth-child(2)::before, #zone-prefooter .container .box3 p:nth-child(3)::before {
            font-family: 'wgfont';
            font-size: 2rem;
            color: #b20f3e;
            position: absolute;
            left: -25px;
            top: 3px; }
          #zone-prefooter .container .box3 p:nth-child(2)::after, #zone-prefooter .container .box3 p:nth-child(3)::after {
            content: "";
            display: block;
            border-bottom: 1px solid #5181b1;
            transform: translateX(-25px);
            padding-top: 5px;
            width: 12.5rem; }
        #zone-prefooter .container .box3 p:nth-child(2)::before {
          content: "\E017";
          top: 5px; }
        #zone-prefooter .container .box3 p:nth-child(3)::before {
          display: inline-block;
          content: "\E016";
          left: -20px;
          top: 5px; }
        #zone-prefooter .container .box3 p:nth-child(4) {
          transform: translateX(25px);
          position: relative; }
          #zone-prefooter .container .box3 p:nth-child(4)::before {
            content: "";
            width: 8px;
            height: 14px;
            display: inline-block;
            background-position: -1120px 0;
            position: absolute;
            left: -20px;
            top: 5px; }

#zone-footer {
  background: #0a1825;
  position: relative;
  z-index: 5;
  padding: 3.5rem 0 3rem; }
  #zone-footer > .container {
    color: white;
    display: flex;
    justify-content: space-around; }
    #zone-footer > .container h4 {
      font-family: "merriweather", Arial, Tahoma, Verdana, Helvetica, sans-serif;
      text-transform: uppercase;
      font-size: 1.6rem;
      color: white;
      padding-bottom: 2.5rem; }
    #zone-footer > .container > div:first-child img {
      margin-bottom: 1rem; }
    #zone-footer > .container > div:first-child p {
      color: #233b53;
      width: 23.6rem;
      text-align: center; }
    #zone-footer > .container > div:nth-child(2) {
      width: 45rem; }
      #zone-footer > .container > div:nth-child(2) ul {
        columns: 2;
        -moz-columns: 2;
        position: relative; }
        #zone-footer > .container > div:nth-child(2) ul::after {
          content: '';
          width: 100%;
          height: .2rem;
          position: absolute;
          bottom: 0;
          left: 0;
          background: #0a1825; }
        #zone-footer > .container > div:nth-child(2) ul li {
          border-bottom: 1px solid #1c3147; }
          #zone-footer > .container > div:nth-child(2) ul li:hover::before {
            transform: translateX(0.3rem); }
      #zone-footer > .container > div:nth-child(2) a {
        color: white;
        text-decoration: none; }
    #zone-footer > .container .tripadvisor {
      overflow: hidden;
      margin-top: 1rem;
      margin-bottom: -3rem;
      margin-left: 1.2rem;
      transform: scale(0.75);
      transform-origin: 0 0;
      filter: grayscale(1);
      opacity: .6;
      width: 64px;
      height: 64px; }
      #zone-footer > .container .tripadvisor:hover {
        filter: grayscale(0);
        opacity: 1; }
    #zone-footer > .container .socialLinks {
      display: flex; }
      #zone-footer > .container .socialLinks, #zone-footer > .container .socialLinks > li {
        margin: 0;
        padding: 0;
        list-style-type: none; }
      #zone-footer > .container .socialLinks > li {
        margin: 0 .2rem;
        color: #fff; }
      #zone-footer > .container .socialLinks a {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 7rem;
        height: 5rem;
        text-align: center;
        overflow: hidden;
        font-size: 0;
        color: inherit;
        border-radius: 3px;
        background: #09131d;
        text-decoration: none; }
        #zone-footer > .container .socialLinks a svg {
          fill: white;
          width: 4rem; }
        #zone-footer > .container .socialLinks a i {
          font-size: 3rem; }
        #zone-footer > .container .socialLinks a.facebookLink:hover {
          background: #3c5a99; }
        #zone-footer > .container .socialLinks a.twitterLink:hover {
          background: #5ea9dd; }
        #zone-footer > .container .socialLinks a.googleLink:hover {
          background: #d74536; }
        #zone-footer > .container .socialLinks a.youtubeLink:hover {
          background: #e62117; }
        #zone-footer > .container .socialLinks a.pinterestLink:hover {
          background: #cb2026; }
        #zone-footer > .container .socialLinks a.viadeoLink:hover {
          background: #f4982b; }
        #zone-footer > .container .socialLinks a.linkedinLink:hover {
          background: #1a85bc; }
        #zone-footer > .container .socialLinks a.tripadvisorLink:hover {
          background: #00af87; }
        #zone-footer > .container .socialLinks a:hover {
          color: #fff; }

#zone-postFooter {
  background: #050e15;
  position: relative;
  z-index: 5;
  padding: 2rem 0 1.5rem;
  color: #4075a9; }
  #zone-postFooter p {
    text-align: center; }
  #zone-postFooter a {
    text-decoration: none;
    color: #4075a9; }
  #zone-postFooter a:hover {
    text-decoration: underline; }
  #zone-postFooter img {
    margin-bottom: -3px; }
  #zone-postFooter p:nth-child(2), #zone-postFooter p:nth-child(2) a {
    color: #b20f3e; }

.ct-neutralite-carbone {
  position: relative;
  width: 100%;
  display: flex;
  justify-content: center;
  margin: 2rem 0; }
  .ct-neutralite-carbone img {
    width: 15rem;
    height: auto; }

/*# sourceMappingURL=common.css.map */

#zone-diaporama {
  margin-top: -0.4rem;
  position: relative;
  z-index: 6; }
  #zone-diaporama .cms_bloc_media {
    padding: 0; }
  #zone-diaporama .bandeau {
    height: 35rem;
    background-size: cover;
    background-position: center;
    padding: 0; }
  #zone-diaporama #mc-diaporama {
    height: 50rem;
    width: 100%;
    background-size: cover;
    background-image: url("https://www.residence-saintmalo.com/default/CMS/css/common/../../images/site/imgDeFond.jpg");
    position: relative; }
    #zone-diaporama #mc-diaporama .mc-diaporama-container, #zone-diaporama #mc-diaporama .bx-wrapper, #zone-diaporama #mc-diaporama .bx-viewport, #zone-diaporama #mc-diaporama .mc-diaporama-slider, #zone-diaporama #mc-diaporama .mc-diaporama-slide {
      width: 100% !important;
      height: 100% !important;
      border-radius: 100%; }
    #zone-diaporama #mc-diaporama .mc-diaporama-slider {
      background: black; }
    #zone-diaporama #mc-diaporama .mc-diaporama-slide {
      background-size: cover; }
    #zone-diaporama #mc-diaporama .container {
      height: 100%; }
    #zone-diaporama #mc-diaporama .diapo, #zone-diaporama #mc-diaporama .diapo2 {
      border-radius: 100%;
      border: 1.5rem solid white;
      position: absolute; }
    #zone-diaporama #mc-diaporama .diapo {
      height: 23.5rem;
      width: 23.5rem;
      margin-top: 5.5rem;
      margin-left: -3rem;
      z-index: 60; }
    #zone-diaporama #mc-diaporama .diapo2 {
      height: 41.5rem;
      width: 41.5rem;
      margin-top: 12.5rem;
      margin-left: 5.5rem;
      z-index: 6; }
    #zone-diaporama #mc-diaporama #reservation {
      width: 30rem;
      height: 22rem;
      float: right;
      margin-top: 6rem;
      background-color: rgba(48, 82, 116, 0.8);
      border-radius: 8px; }
      #zone-diaporama #mc-diaporama #reservation h3 {
        text-transform: uppercase;
        text-align: center;
        color: white;
        font-size: 2rem;
        padding: 2.5rem 0 1.7rem;
        border-bottom: 1px dashed #5883ad;
        margin-bottom: 1.5rem; }
      #zone-diaporama #mc-diaporama #reservation form {
        width: 24.5rem;
        margin: auto; }
        #zone-diaporama #mc-diaporama #reservation form p {
          font-size: 1.1rem;
          color: white;
          font-weight: 100;
          text-align: center;
          margin-top: .8rem; }
        #zone-diaporama #mc-diaporama #reservation form input[type="submit"],
        #zone-diaporama #mc-diaporama #reservation form .button-reservation {
          background: #b20f3e;
          padding: 1rem 2rem;
          font-size: 1.3rem;
          color: white;
          margin: auto;
          display: block;
          margin-top: 2rem;
          cursor: pointer;
          transition: .4s ease-out;
          border-radius: .3rem;
          text-align: center;
          text-decoration: none; }
          #zone-diaporama #mc-diaporama #reservation form input[type="submit"]:hover,
          #zone-diaporama #mc-diaporama #reservation form .button-reservation:hover {
            background: #14385c; }
        #zone-diaporama #mc-diaporama #reservation form input, #zone-diaporama #mc-diaporama #reservation form select {
          border-radius: .3rem;
          border: none; }
        #zone-diaporama #mc-diaporama #reservation form select {
          height: 3.4rem;
          width: 100%;
          appearance: none;
          -webkit-appearance: none;
          -moz-appearance: none;
          border: none; }
        #zone-diaporama #mc-diaporama #reservation form label {
          display: block;
          color: white;
          margin-bottom: .5rem;
          font-size: 1.1rem; }
        #zone-diaporama #mc-diaporama #reservation form .selects {
          display: flex;
          margin-top: 1rem; }
          #zone-diaporama #mc-diaporama #reservation form .selects label {
            text-align: center;
            width: 100%; }
            #zone-diaporama #mc-diaporama #reservation form .selects label::after {
              content: "";
              background-color: white;
              position: absolute;
              bottom: 0;
              height: 3.4rem;
              color: white;
              width: 100%;
              left: 0;
              border-radius: .3rem; }
          #zone-diaporama #mc-diaporama #reservation form .selects .form-group {
            flex-grow: 1;
            width: 30%;
            position: relative; }
            #zone-diaporama #mc-diaporama #reservation form .selects .form-group select {
              background-color: white;
              z-index: 2;
              position: relative;
              padding-left: 1rem;
              background-image: url("https://www.residence-saintmalo.com/default/CMS/css/common/../../images/site/flecheselect.png");
              background-position: right;
              background-repeat: no-repeat; }
            #zone-diaporama #mc-diaporama #reservation form .selects .form-group:not(:last-child):not(:first-child) {
              margin: 0rem 1rem; }
      #zone-diaporama #mc-diaporama #reservation .picker {
        width: 100%;
        height: 100%;
        position: absolute;
        left: 0;
        top: 0;
        text-align: center;
        overflow: hidden; }
        #zone-diaporama #mc-diaporama #reservation .picker[aria-hidden="true"] {
          z-index: -1; }
        #zone-diaporama #mc-diaporama #reservation .picker[aria-hidden="false"] {
          z-index: 999; }
        #zone-diaporama #mc-diaporama #reservation .picker .picker__holder {
          height: 50rem;
          max-height: 68rem;
          width: 100%;
          max-width: 100%;
          top: 0;
          position: absolute; }
        #zone-diaporama #mc-diaporama #reservation .picker .picker__nav--prev {
          left: 0 !important;
          right: auto; }
          #zone-diaporama #mc-diaporama #reservation .picker .picker__nav--prev::before {
            border-left: none; }
        #zone-diaporama #mc-diaporama #reservation .picker .picker__frame {
          top: 6rem !important; }

/*# sourceMappingURL=mc-diaporama.css.map */

.ma-container img {
  margin-right: .5rem; }
.ma-container.ma-aside {
  position: relative;
  line-height: 1.3; }
  .ma-container.ma-aside .ma-title {
    font-size: 1.5rem;
    font-weight: 300;
    padding: 1.4rem 2rem;
    border: 1px;
    border-bottom: 0;
    border-style: solid;
    border-color: #ededed;
    text-transform: uppercase;
    font-weight: 600;
    background-color: white; }
  .ma-container.ma-aside .ma-news-container {
    padding: 2rem;
    background: white;
    border: 1px solid #ededed;
    height: 150px !important; }
    .ma-container.ma-aside .ma-news-container .ma-news-image {
      float: left;
      margin-right: .5rem; }
    .ma-container.ma-aside .ma-news-container .ma-news .ma-news-date {
      font-size: 1.2rem;
      text-transform: uppercase;
      font-weight: normal; }
    .ma-container.ma-aside .ma-news-container .ma-news .ma-news-title {
      text-transform: uppercase;
      font-size: 1.5rem;
      font-weight: 700; }
      .ma-container.ma-aside .ma-news-container .ma-news .ma-news-title, .ma-container.ma-aside .ma-news-container .ma-news .ma-news-title a {
        color: #1d456d; }
      .ma-container.ma-aside .ma-news-container .ma-news .ma-news-title a:hover {
        color: #454545; }
    .ma-container.ma-aside .ma-news-container .ma-news .ma-news-title:hover {
      color: #454545;
      cursor: pointer; }
    .ma-container.ma-aside .ma-news-container .ma-news .ma-news-resume {
      font-size: 1.1rem;
      font-weight: normal;
      line-height: 1.4;
      margin: .5rem 0;
      color: #75808a; }
    .ma-container.ma-aside .ma-news-container .ma-news .ma-know-more-link {
      display: none;
      margin: 0.5rem 0;
      font-size: 1.3rem;
      font-weight: 600; }
  .ma-container.ma-aside .ma-all-news-link {
    position: absolute;
    bottom: 1.5rem;
    left: 2rem; }
    .ma-container.ma-aside .ma-all-news-link a {
      font-size: 1rem;
      font-weight: normal;
      color: inherit;
      text-decoration: none; }
      .ma-container.ma-aside .ma-all-news-link a:hover {
        color: #b20f3e; }
  .ma-container.ma-aside .ma-pagination {
    position: absolute;
    bottom: 3rem;
    left: 50%;
    transform: translateX(-50%);
    height: 1.2rem; }
    .ma-container.ma-aside .ma-pagination .ma-pager .bx-pager-item {
      display: inline-block;
      width: 1.2rem;
      height: 1.2rem;
      margin-right: .4rem; }
      .ma-container.ma-aside .ma-pagination .ma-pager .bx-pager-item a {
        display: inline-block;
        width: 1rem;
        height: 1rem;
        border-radius: 100%;
        text-decoration: none;
        font-size: 0;
        background-color: #d5d5d5; }
      .ma-container.ma-aside .ma-pagination .ma-pager .bx-pager-item a.active {
        background-color: #14385c; }
      .ma-container.ma-aside .ma-pagination .ma-pager .bx-pager-item a::after {
        content: "/";
        padding-left: 3px; }
      .ma-container.ma-aside .ma-pagination .ma-pager .bx-pager-item a.active::after {
        font-weight: normal; }
      .ma-container.ma-aside .ma-pagination .ma-pager .bx-pager-item:last-child a::after {
        content: ""; }
  .ma-container.ma-aside .bx-controls-direction {
    position: absolute;
    bottom: 2rem;
    right: 2rem; }
    .ma-container.ma-aside .bx-controls-direction a {
      display: inline-block;
      width: 2.6rem;
      height: 2.6rem;
      margin-left: .6rem; }
      .ma-container.ma-aside .bx-controls-direction a::before {
        content: '';
        display: inline-block;
        width: 1rem;
        height: 1rem;
        margin: 0.7rem 0 0;
        line-height: 2.4rem;
        transform: rotate(-45deg); }
      .ma-container.ma-aside .bx-controls-direction a.bx-prev {
        padding-left: 0.9rem; }
        .ma-container.ma-aside .bx-controls-direction a.bx-prev::before {
          border-top: 1px solid #bbbbbb;
          border-left: 1px solid #bbbbbb; }
      .ma-container.ma-aside .bx-controls-direction a.bx-next {
        padding-left: 0.5rem; }
        .ma-container.ma-aside .bx-controls-direction a.bx-next::before {
          border-bottom: 1px solid #bbbbbb;
          border-right: 1px solid #bbbbbb; }
  .ma-container.ma-aside .bx-viewport {
    overflow: initial; }
.ma-container.ma-allNews {
  font-size: 1.4rem; }
  .ma-container.ma-allNews ul {
    padding: 1rem 0; }
  .ma-container.ma-allNews li.news {
    *zoom: 1;
    padding-left: 0;
    padding: 1rem 0;
    border-bottom: 1px solid #eee; }
    .ma-container.ma-allNews li.news:before, .ma-container.ma-allNews li.news:after {
      content: ' ';
      display: table; }
    .ma-container.ma-allNews li.news:after {
      clear: both; }
    .ma-container.ma-allNews li.news .ma-news-image {
      display: inline-block;
      vertical-align: top;
      margin: .5rem 2rem 0 0; }
      .ma-container.ma-allNews li.news .ma-news-image a {
        display: block; }
        .ma-container.ma-allNews li.news .ma-news-image a img {
          border: .6rem solid white;
          max-width: 100%;
          box-shadow: 0 0 0.4rem rgba(0, 0, 0, 0.2); }
    .ma-container.ma-allNews li.news div.ma-news-right {
      display: inline-block;
      vertical-align: top;
      width: calc(100% - 21.2rem); }
    .ma-container.ma-allNews li.news .ma-news-date {
      font-size: 1.2rem;
      text-transform: uppercase;
      font-weight: normal;
      margin: .4rem 0; }
    .ma-container.ma-allNews li.news .ma-news-title {
      font-size: 1.8rem;
      margin-bottom: 0.4rem;
      line-height: 1.3;
      color: #14385c; }
      .ma-container.ma-allNews li.news .ma-news-title, .ma-container.ma-allNews li.news .ma-news-title a {
        font-weight: 400;
        text-decoration: none; }
    .ma-container.ma-allNews li.news .ma-news-resume {
      font-size: 1.1rem;
      font-weight: normal;
      line-height: 1.4;
      color: #75808a; }
    .ma-container.ma-allNews li.news .ma-know-more-link {
      display: inline-block;
      margin: 0.5rem 0;
      font-size: 1.3rem;
      font-weight: 600; }
  .ma-container.ma-allNews div.ma-all-news-pagination {
    *zoom: 1;
    text-align: center;
    padding: 1rem 0 0; }
    .ma-container.ma-allNews div.ma-all-news-pagination:before, .ma-container.ma-allNews div.ma-all-news-pagination:after {
      content: ' ';
      display: table; }
    .ma-container.ma-allNews div.ma-all-news-pagination:after {
      clear: both; }
    .ma-container.ma-allNews div.ma-all-news-pagination > span {
      display: inline-block;
      vertical-align: top;
      padding: 0 .4rem; }
      .ma-container.ma-allNews div.ma-all-news-pagination > span span, .ma-container.ma-allNews div.ma-all-news-pagination > span a {
        display: inline-block;
        vertical-align: top;
        padding: 0 .2rem; }
.ma-container.ma-detail .ma-news-date {
  margin: .4rem 0;
  text-transform: uppercase;
  font-size: 1.2rem;
  font-weight: normal; }
.ma-container.ma-detail .ma-news-resume {
  margin: .6rem 0;
  font-weight: 600; }
.ma-container.ma-detail .ma-news-image {
  margin: 1.4rem 0; }
  .ma-container.ma-detail .ma-news-image img {
    border: .6rem solid white;
    max-width: 100%;
    box-shadow: 0 0 0.4rem rgba(0, 0, 0, 0.2); }

/*# sourceMappingURL=ma.css.map */