.elementor-661 .elementor-element.elementor-element-qr44vyz{--display:flex;--position:fixed;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;box-shadow:0px 2px 10px 0px rgba(0,0,0,0.08);--padding-top:10px;--padding-bottom:10px;--padding-left:40px;--padding-right:40px;top:0px;--z-index:9999;}.elementor-661 .elementor-element.elementor-element-qr44vyz:not(.elementor-motion-effects-element-type-background), .elementor-661 .elementor-element.elementor-element-qr44vyz > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:rgba(255,255,255,0.97);}body:not(.rtl) .elementor-661 .elementor-element.elementor-element-qr44vyz{left:0px;}body.rtl .elementor-661 .elementor-element.elementor-element-qr44vyz{right:0px;}.elementor-widget-theme-site-logo .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-661 .elementor-element.elementor-element-88c51ec{width:var( --container-widget-width, 6% );max-width:6%;--container-widget-width:6%;--container-widget-flex-grow:0;}.elementor-661 .elementor-element.elementor-element-88c51ec.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-661 .elementor-element.elementor-element-88c51ec img{width:100%;max-width:100%;}.elementor-widget-polylang-language-switcher .cpel-switcher__lang a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );color:var( --e-global-color-text );}.elementor-widget-polylang-language-switcher .cpel-switcher__icon{color:var( --e-global-color-text );}.elementor-widget-polylang-language-switcher .cpel-switcher__lang a:hover, .elementor-widget-polylang-language-switcher .cpel-switcher__lang a:focus{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );color:var( --e-global-color-accent );}.elementor-widget-polylang-language-switcher .cpel-switcher__lang.cpel-switcher__lang--active a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );}.elementor-661 .elementor-element.elementor-element-28023c7{width:var( --container-widget-width, 0% );max-width:0%;--container-widget-width:0%;--container-widget-flex-grow:0;}.elementor-661 .elementor-element.elementor-element-28023c7.elementor-element{--align-self:center;--flex-grow:1;--flex-shrink:0;}.elementor-661 .elementor-element.elementor-element-28023c7.cpel-switcher--layout-dropdown .cpel-switcher__lang a{background-color:#FFFFFF;}.elementor-661 .elementor-element.elementor-element-28023c7.cpel-switcher--layout-dropdown .cpel-switcher__lang a:hover, .elementor-661 .elementor-element.elementor-element-28023c7.cpel-switcher--layout-dropdown .cpel-switcher__lang a:focus{background-color:#D9D9D9;}.elementor-661 .elementor-element.elementor-element-28023c7 .cpel-switcher__lang a{padding-left:0px;padding-right:0px;padding-top:0px;padding-bottom:0px;}.elementor-661 .elementor-element.elementor-element-28023c7 .cpel-switcher__icon{padding-left:10px;}.elementor-661 .elementor-element.elementor-element-28023c7.cpel-switcher--aspect-ratio-11 .cpel-switcher__flag{width:20px;height:20px;}.elementor-661 .elementor-element.elementor-element-28023c7.cpel-switcher--aspect-ratio-43 .cpel-switcher__flag{width:20px;height:calc(20px * 0.75);}.elementor-661 .elementor-element.elementor-element-28023c7 .cpel-switcher__flag img{border-radius:0px;}.elementor-661 .elementor-element.elementor-element-28023c7 .cpel-switcher__code{padding-left:10px;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );}.elementor-661 .elementor-element.elementor-element-p7uwjak{width:auto;max-width:auto;}.elementor-661 .elementor-element.elementor-element-p7uwjak.elementor-element{--order:99999 /* order end hack */;--flex-grow:0;--flex-shrink:0;}.elementor-661 .elementor-element.elementor-element-p7uwjak .elementor-menu-toggle{margin-left:auto;}.elementor-661 .elementor-element.elementor-element-p7uwjak .elementor-nav-menu--main .elementor-item{color:#3f3f46;fill:#3f3f46;}.elementor-661 .elementor-element.elementor-element-p7uwjak .elementor-nav-menu--main .elementor-item:hover,
					.elementor-661 .elementor-element.elementor-element-p7uwjak .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-661 .elementor-element.elementor-element-p7uwjak .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-661 .elementor-element.elementor-element-p7uwjak .elementor-nav-menu--main .elementor-item:focus{color:#F35D57;fill:#F35D57;}.elementor-661 .elementor-element.elementor-element-p7uwjak .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-661 .elementor-element.elementor-element-p7uwjak .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:#F35D57;}.elementor-661 .elementor-element.elementor-element-p7uwjak .e--pointer-framed .elementor-item:before,
					.elementor-661 .elementor-element.elementor-element-p7uwjak .e--pointer-framed .elementor-item:after{border-color:#F35D57;}.elementor-661 .elementor-element.elementor-element-p7uwjak .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#F35D57;}.elementor-661 .elementor-element.elementor-element-p7uwjak .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item.elementor-item-active:before,
					.elementor-661 .elementor-element.elementor-element-p7uwjak .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item.elementor-item-active:after{background-color:#F35D57;}.elementor-661 .elementor-element.elementor-element-p7uwjak .e--pointer-framed .elementor-item.elementor-item-active:before,
					.elementor-661 .elementor-element.elementor-element-p7uwjak .e--pointer-framed .elementor-item.elementor-item-active:after{border-color:#F35D57;}.elementor-661 .elementor-element.elementor-element-b7e883c{--display:flex;}.elementor-661 .elementor-element.elementor-element-e47c17d.cpel-switcher--layout-dropdown .cpel-switcher__lang a{background-color:#FFFFFF;}.elementor-661 .elementor-element.elementor-element-e47c17d.cpel-switcher--layout-dropdown .cpel-switcher__lang a:hover, .elementor-661 .elementor-element.elementor-element-e47c17d.cpel-switcher--layout-dropdown .cpel-switcher__lang a:focus{background-color:#D9D9D9;}.elementor-661 .elementor-element.elementor-element-e47c17d .cpel-switcher__icon{padding-left:10px;}.elementor-661 .elementor-element.elementor-element-e47c17d.cpel-switcher--aspect-ratio-11 .cpel-switcher__flag{width:20px;height:20px;}.elementor-661 .elementor-element.elementor-element-e47c17d.cpel-switcher--aspect-ratio-43 .cpel-switcher__flag{width:20px;height:calc(20px * 0.75);}.elementor-661 .elementor-element.elementor-element-e47c17d .cpel-switcher__flag img{border-radius:0px;}.elementor-661 .elementor-element.elementor-element-e47c17d .cpel-switcher__name{padding-left:10px;}.elementor-661 .elementor-element.elementor-element-f64c5a5{--display:flex;}.elementor-661 .elementor-element.elementor-element-d7f0b4a.cpel-switcher--layout-dropdown .cpel-switcher__lang a{background-color:#FFFFFF;}.elementor-661 .elementor-element.elementor-element-d7f0b4a.cpel-switcher--layout-dropdown .cpel-switcher__lang a:hover, .elementor-661 .elementor-element.elementor-element-d7f0b4a.cpel-switcher--layout-dropdown .cpel-switcher__lang a:focus{background-color:#D9D9D9;}.elementor-661 .elementor-element.elementor-element-d7f0b4a .cpel-switcher__icon{padding-left:10px;}.elementor-661 .elementor-element.elementor-element-d7f0b4a.cpel-switcher--aspect-ratio-11 .cpel-switcher__flag{width:20px;height:20px;}.elementor-661 .elementor-element.elementor-element-d7f0b4a.cpel-switcher--aspect-ratio-43 .cpel-switcher__flag{width:20px;height:calc(20px * 0.75);}.elementor-661 .elementor-element.elementor-element-d7f0b4a .cpel-switcher__flag img{border-radius:0px;}.elementor-661 .elementor-element.elementor-element-d7f0b4a .cpel-switcher__name{padding-left:10px;}.elementor-661 .elementor-element.elementor-element-fafbc8d{--display:flex;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-widget-theme-site-logo .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );}}@media(max-width:767px){.elementor-661 .elementor-element.elementor-element-qr44vyz{--justify-content:flex-start;top:0px;}body:not(.rtl) .elementor-661 .elementor-element.elementor-element-qr44vyz{left:0px;}body.rtl .elementor-661 .elementor-element.elementor-element-qr44vyz{right:0px;}.elementor-widget-theme-site-logo .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-661 .elementor-element.elementor-element-88c51ec img{width:300%;max-width:300%;}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );}.elementor-661 .elementor-element.elementor-element-p7uwjak{width:var( --container-widget-width, 107px );max-width:107px;--container-widget-width:107px;--container-widget-flex-grow:0;}}/* Start custom CSS for nav-menu, class: .elementor-element-p7uwjak *//* Force mobile menu to be full screen width with a white background - By Karine Or 26/04/26 */
.elementor-661 .elementor-element.elementor-element-p7uwjak .elementor-nav-menu--dropdown {
    width: 100vw !important;
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    top: 60px !important; /* Adjust this if there is a gap above the menu */
    z-index: 9999 !important;
    background-color: #ffffff !important; /* Brand White */
}

/* Ensure menu text is visible on the white background - By Karine Or 26/04/26 */
.elementor-661 .elementor-element.elementor-element-p7uwjak .elementor-nav-menu--dropdown a {
    color: #1a1a1a !important; /* Brand Primary Dark */
    padding-left: 20px !important;
    padding-right: 20px !important;
    font-size: 16px !important; /* Meets mobile minimum standard */
    border-bottom: 1px solid #f5f5f5; /* Light Grey separator */
}

/* Ensure the 'X' close icon is also dark and visible - By Karine Or 26/04/26 */
.elementor-661 .elementor-element.elementor-element-p7uwjak .elementor-menu-toggle.elementor-active i {
    color: #1a1a1a !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-qr44vyz *//* ============================================ 
   MOBILE HEADER REDESIGN - THE PLACE HOSTEL
   Karine Or 22/04/2026
   ============================================ */
@media (max-width: 767px) {

  /* 1. Structure de la Grille et Hauteur */
  .elementor-location-header .elementor-element.elementor-element-qr44vyz {
    display: grid !important;
    grid-template-columns: auto 1fr auto auto; 
    grid-template-rows: auto;
    grid-template-areas: "logo . lang burger"; 
    align-items: center;
    justify-items: start;
    column-gap: 12px;
    /* reduce le padding vertical au minimum (4px en haut, 2px en bas) */
    padding: 4px 15px 2px 15px !important;
    min-height: 0 !important;
  }

  /* 2. Logo - Suppress unneeded space */
  .elementor-location-header .elementor-element-yrc1i5r {
    grid-area: logo;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    justify-self: start;
  }
  
  .elementor-location-header .elementor-element-yrc1i5r img {
    display: block;
    height: auto !important;
    max-width: 130px; /* slight reduction to be lighter */
  }

  /* 3. Language Switcher - Alignement et position */
  .elementor-location-header .elementor-element-28023c7 {
    grid-area: lang;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    justify-self: end !important;
    align-self: center !important;
  }

  .elementor-location-header .elementor-element-28023c7 .elementor-widget-container {
    width: auto !important;
    display: flex !important;
    justify-content: flex-end !important;
    margin-bottom: 0 !important; /* Nettoyage de l'espace sous le widget */
  }

  /* 4. Hamburger Menu - Position et Style */
  .elementor-location-header .elementor-element-p7uwjak {
    grid-area: burger;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    justify-self: end !important; 
  }

  .elementor-location-header .elementor-element-p7uwjak .elementor-widget-container {
    margin-bottom: 0 !important; /* Nettoyage de l'espace sous le burger */
  }

  .elementor-location-header .elementor-element-p7uwjak .elementor-menu-toggle {
    margin: 0 !important;
    padding: 5px !important; /* Padding for click but remove background */
    display: inline-flex !important;
    background: none !important;
    border: none !important;
    box-shadow: none !important;
  }

  /* 5. Menu opening - Correction de l'affichage */
  .elementor-location-header .elementor-element-p7uwjak nav.elementor-nav-menu--dropdown {
    left: 0 !important;
    right: 0 !important;
    width: 100vw !important;
    position: absolute !important;
    top: 100% !important; /* opens under the header end */
  }
}

/* ============================================ 
   DESKTOP ONLY - FORCE THE MENU TO CENTER 
   arine Or 22/04/2026
   ============================================ */
@media (min-width: 1025px) {
  
  /* 1. force the menu widget to center */
  .elementor-nav-menu--main {
    margin-left: auto !important;
    margin-right: auto !important;
    width: fit-content !important;
    display: flex !important;
    justify-content: center !important;
    /* move the menu 2cm more  (75px) to the right */
    transform: translateX(75px) !important;
  }

  /* 2. check middle column takes all possible space */
  /* target the element class for safety */
  .elementor-widget-nav-menu {
    flex-grow: 1 !important;
    display: flex !important;
    justify-content: center !important;
  }

  /* 3. Prevent the menu to crash on the logo or the flag */
  .elementor-widget-nav-menu .elementor-widget-container {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
  }
}

/* ============================================ 
   DESKTOP ONLY - SLIM HEADER & ORIGINAL LOGO
   Karine Or 22/04/2026
   ============================================ */
@media (min-width: 1025px) {
  
  /* 1. Force the Header Container to be thin */
  .elementor-location-header .elementor-element.elementor-element-qr44vyz {
    padding-top: 5px !important;    /* Minimal top space */
    padding-bottom: 5px !important; /* Minimal bottom space */
    min-height: 0 !important;        /* Removes Elementor default height */
    display: flex !important;
    align-items: center !important; /* Keeps everything vertically centered */
  }

  /* 2. Restore Logo to its original scale */
  .elementor-location-header .elementor-element-yrc1i5r img {
    height: auto !important;
    max-height: 150px !important; /* Adjust this number to match your desired logo size */
    width: auto !important;
    margin: 0 !important;
  }

  /* 3. Menu Alignment and Positioning */
  .elementor-widget-nav-menu {
    flex-grow: 1 !important;
    display: flex !important;
    justify-content: center !important;
    transform: translateX(75px) !important; /* Your 2cm shift to the right */
  }

  .elementor-nav-menu--main {
    display: flex !important;
    justify-content: center !important;
    margin: 0 !important;
  }
  
  /* 4. Remove all internal widget gaps that cause extra height */
  .elementor-widget-nav-menu .elementor-widget-container,
  .elementor-widget-image .elementor-widget-container,
  .elementor-widget-image figure {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    line-height: 0 !important; /* Critical for removing invisible vertical space */
  }
}

/* ============================================ 
   DESKTOP & MOBILE -  Remove the grey background highlight/bar from all menu items
   Karine Or 27/04/2026
   ============================================ */
   
/* 1. Remove all background bars & keep text dark */
.elementor-661 .elementor-element.elementor-element-qr44vyz .elementor-item:hover,
.elementor-661 .elementor-element.elementor-element-qr44vyz .elementor-item.elementor-item-active,
.elementor-661 .elementor-element.elementor-element-qr44vyz .elementor-sub-item:hover,
.elementor-661 .elementor-element.elementor-element-qr44vyz .elementor-sub-item.elementor-item-active,
.elementor-661 .elementor-element.elementor-element-qr44vyz .current-menu-item > a {
    background-color: transparent !important;
    color: #1a1a1a !important;
}

/* 2. MATCH SUB-MENU UNDERLINE TO MAIN MENU (#F35D57) */
.elementor-661 .elementor-element.elementor-element-qr44vyz .elementor-sub-item:hover,
.elementor-661 .elementor-element.elementor-element-qr44vyz .elementor-sub-item.elementor-item-active,
.elementor-661 .elementor-element.elementor-element-qr44vyz .current-menu-item > .elementor-sub-item {
    text-decoration: none !important; 
    border-bottom: 3px solid #F35D57 !important; /* Your specific Orange-Red */
    padding-bottom: 2px !important; 
    display: inline-block !important;
}

/* 3. Mobile Dropdown - Keep clean */
.elementor-661 .elementor-element.elementor-element-qr44vyz .elementor-nav-menu--dropdown .elementor-item:hover,
.elementor-661 .elementor-element.elementor-element-qr44vyz .elementor-nav-menu--dropdown .elementor-item.elementor-item-active {
    background-color: transparent !important;
    color: #1a1a1a !important;
    border-bottom: none !important;
}

/* Apply this fix ONLY to screens wider than 1024px (Desktop) - Karine Or 29/04/26 */
@media (min-width: 1025px) {
    /* Anchors the 'More' sub-menu to the right so it stays on screen */
    .elementor-661 .elementor-element.elementor-element-qr44vyz .elementor-nav-menu--main .elementor-nav-menu .sub-menu {
        left: auto !important;
        right: 0 !important;
        width: 220px !important;
    }

    /* Sets the 'More' link as the anchor point */
    .elementor-661 .elementor-element.elementor-element-qr44vyz .elementor-nav-menu--main .elementor-nav-menu > .menu-item-has-children {
        position: relative !important;
    }
}/* End custom CSS */