.elementor-539 .elementor-element.elementor-element-23f9fd07{--display:flex;--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:space-between;--align-items:center;--flex-wrap:nowrap;--padding-top:12px;--padding-bottom:12px;--padding-left:24px;--padding-right:24px;}.elementor-539 .elementor-element.elementor-element-23f9fd07:not(.elementor-motion-effects-element-type-background), .elementor-539 .elementor-element.elementor-element-23f9fd07 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFAF3;}.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-weight:var( --e-global-typography-text-font-weight );}.elementor-539 .elementor-element.elementor-element-752543f2 img{width:165px;}.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 );}.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-weight:var( --e-global-typography-accent-font-weight );font-style:var( --e-global-typography-accent-font-style );}.elementor-539 .elementor-element.elementor-element-9dfddd6 .elementor-menu-toggle{margin:0 auto;}.elementor-539 .elementor-element.elementor-element-9dfddd6 .elementor-nav-menu .elementor-item{font-family:"Inter", Sans-serif;font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:0.4px;}.elementor-539 .elementor-element.elementor-element-9dfddd6 .elementor-nav-menu--main .elementor-item{color:#1D3A4C;fill:#1D3A4C;}.elementor-539 .elementor-element.elementor-element-9dfddd6 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-539 .elementor-element.elementor-element-9dfddd6 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-539 .elementor-element.elementor-element-9dfddd6 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-539 .elementor-element.elementor-element-9dfddd6 .elementor-nav-menu--main .elementor-item:focus{color:#C1A36D;fill:#C1A36D;}.elementor-539 .elementor-element.elementor-element-9dfddd6 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-539 .elementor-element.elementor-element-9dfddd6 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:#C1A36D;}.elementor-539 .elementor-element.elementor-element-9dfddd6 .e--pointer-framed .elementor-item:before,
					.elementor-539 .elementor-element.elementor-element-9dfddd6 .e--pointer-framed .elementor-item:after{border-color:#C1A36D;}.elementor-539 .elementor-element.elementor-element-9dfddd6 .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#C1A36D;}.elementor-539 .elementor-element.elementor-element-9dfddd6 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item.elementor-item-active:before,
					.elementor-539 .elementor-element.elementor-element-9dfddd6 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item.elementor-item-active:after{background-color:#C1A36D;}.elementor-539 .elementor-element.elementor-element-9dfddd6 .e--pointer-framed .elementor-item.elementor-item-active:before,
					.elementor-539 .elementor-element.elementor-element-9dfddd6 .e--pointer-framed .elementor-item.elementor-item-active:after{border-color:#C1A36D;}.elementor-539 .elementor-element.elementor-element-500198f{--grid-template-columns:repeat(0, auto);text-align:center;--icon-size:23px;--grid-column-gap:14px;--grid-row-gap:0px;}.elementor-539 .elementor-element.elementor-element-500198f .elementor-social-icon{background-color:#00000000;--icon-padding:0em;border-style:none;}.elementor-539 .elementor-element.elementor-element-500198f .elementor-social-icon i{color:#1D3A4C;}.elementor-539 .elementor-element.elementor-element-500198f .elementor-social-icon svg{fill:#1D3A4C;}.elementor-539 .elementor-element.elementor-element-500198f .elementor-icon{border-radius:50px 50px 50px 50px;}.elementor-539 .elementor-element.elementor-element-500198f .elementor-social-icon:hover{background-color:#00000000;}.elementor-539 .elementor-element.elementor-element-500198f .elementor-social-icon:hover i{color:var( --e-global-color-secondary );}.elementor-539 .elementor-element.elementor-element-500198f .elementor-social-icon:hover svg{fill:var( --e-global-color-secondary );}.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 );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 );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 );}.elementor-539 .elementor-element.elementor-element-21a3b09f.cpel-switcher--layout-dropdown .cpel-switcher__lang a{background-color:#FFFFFF;}.elementor-539 .elementor-element.elementor-element-21a3b09f.cpel-switcher--layout-dropdown .cpel-switcher__lang a:hover, .elementor-539 .elementor-element.elementor-element-21a3b09f.cpel-switcher--layout-dropdown .cpel-switcher__lang a:focus{background-color:#D9D9D9;}.elementor-539 .elementor-element.elementor-element-21a3b09f .cpel-switcher__icon{padding-left:10px;}.elementor-539 .elementor-element.elementor-element-21a3b09f.cpel-switcher--aspect-ratio-11 .cpel-switcher__flag{width:20px;height:20px;}.elementor-539 .elementor-element.elementor-element-21a3b09f.cpel-switcher--aspect-ratio-43 .cpel-switcher__flag{width:20px;height:calc(20px * 0.75);}.elementor-539 .elementor-element.elementor-element-21a3b09f .cpel-switcher__flag img{border-radius:0px;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );font-style:var( --e-global-typography-accent-font-style );}.elementor-539 .elementor-element.elementor-element-20478cb2 .elementor-button{background-color:#1D3A4C;font-family:"Inter", Sans-serif;font-size:12px;font-weight:600;text-transform:uppercase;font-style:italic;letter-spacing:1px;fill:#FFFFFF;color:#FFFFFF;transition-duration:0.25s;border-style:none;border-radius:6px 6px 6px 6px;padding:12px 22px 12px 22px;}.elementor-539 .elementor-element.elementor-element-20478cb2 .elementor-button:hover, .elementor-539 .elementor-element.elementor-element-20478cb2 .elementor-button:focus{background-color:#C1A36D;color:#1D3A4C;border-color:#C1A36D;}.elementor-539 .elementor-element.elementor-element-20478cb2 .elementor-button:hover svg, .elementor-539 .elementor-element.elementor-element-20478cb2 .elementor-button:focus svg{fill:#1D3A4C;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:768px){.elementor-539 .elementor-element.elementor-element-23f9fd07{--content-width:1240px;}}@media(max-width:1024px){.elementor-539 .elementor-element.elementor-element-23f9fd07{--padding-top:10px;--padding-bottom:10px;--padding-left:20px;--padding-right:20px;}}@media(max-width:767px){.elementor-539 .elementor-element.elementor-element-23f9fd07{--padding-top:10px;--padding-bottom:10px;--padding-left:16px;--padding-right:16px;}.elementor-539 .elementor-element.elementor-element-752543f2 img{width:125px;}}/* Start custom CSS for nav-menu, class: .elementor-element-9dfddd6 *//* ==========================================================================
   LA FRENCH RIVIERA — HEADER RESPONSIVE
   Elementor → Configuración del sitio → CSS personalizado

   Requiere:
   - Clase CSS "lfr-header" en el contenedor principal del header.
   - Widget Social Icons dentro del header.
   - Breakpoint de tablet configurado en 1024px.
   ========================================================================== */


/* --------------------------------------------------------------------------
   TABLET — hasta 1024px

   Orden:
   Logo | Redes | Idioma | Reservar | Hamburguesa
   -------------------------------------------------------------------------- */

@media (max-width: 1024px) {

  .lfr-header {
    position: relative;
    z-index: 1000;

    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;

    gap: 10px;
    min-height: 76px;
    padding-inline: 24px;
  }


  /* LOGO */

  .lfr-header .elementor-widget-theme-site-logo,
  .lfr-header .elementor-widget-image {
    order: 1;

    flex: 0 0 auto;
    width: auto !important;
    margin-right: auto;
  }

  .lfr-header .elementor-widget-image img,
  .lfr-header .elementor-widget-theme-site-logo img {
    display: block;

    width: auto;
    height: 44px;
    max-width: 100%;
    object-fit: contain;
  }


  /* REDES SOCIALES */

  .lfr-header .elementor-widget-social-icons,
  .lfr-header .lfr-header__socials {
    order: 2;

    flex: 0 0 auto;
    width: auto !important;
    margin: 0;
  }

  .lfr-header .elementor-social-icons-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: nowrap;

    gap: 4px;
  }

  .lfr-header .elementor-social-icons-wrapper .elementor-grid-item {
    display: flex;
    margin: 0;
  }

  .lfr-header .elementor-social-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 28px;
    height: 28px;
    margin: 0;
    padding: 0;

    color: var(--lfr-navy, #1d3a4c);
    background: transparent !important;
    border: 0;
    border-radius: 50%;

    font-size: 14px;

    transition:
      color 0.2s ease,
      background-color 0.2s ease,
      transform 0.2s ease;
  }

  .lfr-header .elementor-social-icon i {
    color: currentColor !important;
  }

  .lfr-header .elementor-social-icon svg {
    width: 14px;
    height: 14px;
    fill: currentColor !important;
  }

  .lfr-header .elementor-social-icon:hover,
  .lfr-header .elementor-social-icon:focus-visible {
    color: var(--lfr-gold, #c1a36d);
    background-color: rgba(193, 163, 109, 0.1) !important;
    transform: translateY(-1px);
  }


  /* SELECTOR DE IDIOMA */

  .lfr-header .lfr-lang {
    order: 3;

    flex: 0 0 auto;
    width: auto;
    margin: 0;
  }


  /* BOTÓN RESERVAR */

  .lfr-header .elementor-widget-button {
    order: 4;

    flex: 0 0 auto;
    width: auto !important;
    margin: 0;
  }

  .lfr-header .elementor-widget-button .elementor-button {
    min-height: 42px;
    padding: 11px 18px;

    font-size: 12px;
    line-height: 1;
    white-space: nowrap;
  }


  /* MENÚ HAMBURGUESA */

  .lfr-header .elementor-widget-nav-menu {
    order: 5;

    flex: 0 0 auto;
    width: auto !important;
    margin: 0;
  }

  .lfr-header .elementor-menu-toggle {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 42px;
    min-height: 42px;
    margin: 0;
    padding: 8px;

    color: var(--lfr-navy, #1d3a4c);
    background: transparent;
    border: 0;
    border-radius: 4px;

    transition:
      color 0.2s ease,
      background-color 0.2s ease;
  }

  .lfr-header .elementor-menu-toggle:hover,
  .lfr-header .elementor-menu-toggle:focus-visible {
    color: var(--lfr-gold, #c1a36d);
    background-color: rgba(193, 163, 109, 0.1);
  }

  .lfr-header .elementor-menu-toggle svg {
    width: 26px;
    height: 26px;
    fill: currentColor;
  }


  /* PANEL DESPLEGABLE */

  .lfr-header .elementor-nav-menu--dropdown {
    position: fixed;
    top: 76px;
    right: 0;
    left: 0;
    z-index: 999;

    width: 100%;
    height: calc(100dvh - 76px);
    margin: 0;
    padding: 24px 0 40px;

    overflow-x: hidden;
    overflow-y: auto;

    background-color: var(--lfr-cream, #fffaf3) !important;
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }


  /* ENLACES DEL MENÚ EN AZUL MARINO */

  .lfr-header .elementor-nav-menu--dropdown a {
    padding: 18px 32px;

    color: var(--lfr-navy, #1d3a4c) !important;
    background-color: transparent;

    border-bottom: 1px solid rgba(193, 163, 109, 0.24);

    font-family: "Montserrat", "Inter", sans-serif;
    font-size: 17px;
    font-weight: 500;
    line-height: 1.3;
    letter-spacing: 0.05em;
    text-transform: uppercase;

    transition:
      color 0.2s ease,
      background-color 0.2s ease;
  }


  /* SUBMENÚ */

  .lfr-header .elementor-nav-menu--dropdown .sub-menu {
    background-color: rgba(193, 163, 109, 0.05);
  }

  .lfr-header .elementor-nav-menu--dropdown .sub-menu a {
    padding-left: 52px;

    color: var(--lfr-navy, #1d3a4c) !important;
    background-color: transparent;

    font-size: 15px;
    letter-spacing: 0.02em;
    text-transform: none;
  }


  /* HOVER Y PÁGINA ACTIVA */

  .lfr-header .elementor-nav-menu--dropdown a:hover,
  .lfr-header .elementor-nav-menu--dropdown a:focus-visible,
  .lfr-header .elementor-nav-menu--dropdown .current-menu-item > a,
  .lfr-header .elementor-nav-menu--dropdown .elementor-item-active {
    color: var(--lfr-gold, #c1a36d) !important;
    background-color: rgba(193, 163, 109, 0.12);
  }


  /* Bloquea el scroll cuando el menú está abierto.
     Requiere que el snippet JS agregue esta clase al body. */

  body.lfr-menu-open {
    overflow: hidden;
  }
}


/* --------------------------------------------------------------------------
   MÓVIL — hasta 767px

   Orden:
   Logo | Redes | Idioma | Hamburguesa

   El botón Reservar desaparece porque será reemplazado por la barra inferior.
   -------------------------------------------------------------------------- */

@media (max-width: 767px) {

  .lfr-header {
    min-height: 64px;
    gap: 6px;
    padding-inline: 16px;
  }


  /* Logo */

  .lfr-header .elementor-widget-image img,
  .lfr-header .elementor-widget-theme-site-logo img {
    width: auto;
    height: 34px;
  }


  /* Redes sociales */

  .lfr-header .elementor-social-icons-wrapper {
    gap: 1px;
  }

  .lfr-header .elementor-social-icon {
    width: 25px;
    height: 25px;
    font-size: 13px;
  }

  .lfr-header .elementor-social-icon svg {
    width: 13px;
    height: 13px;
  }


  /* Botón fuera del header */

  .lfr-header .elementor-widget-button {
    display: none !important;
  }


  /* Hamburguesa */

  .lfr-header .elementor-menu-toggle {
    width: 38px;
    min-height: 38px;
    padding: 7px;
  }

  .lfr-header .elementor-menu-toggle svg {
    width: 23px;
    height: 23px;
  }


  /* Panel móvil */

  .lfr-header .elementor-nav-menu--dropdown {
    top: 64px;

    height: calc(100dvh - 64px);
    padding-top: 18px;
    padding-bottom: 96px;

    background-color: var(--lfr-cream, #fffaf3) !important;
  }

  .lfr-header .elementor-nav-menu--dropdown a {
    padding: 16px 24px;

    color: var(--lfr-navy, #1d3a4c) !important;
    font-size: 16px;
  }

  .lfr-header .elementor-nav-menu--dropdown .sub-menu a {
    padding-left: 44px;

    color: var(--lfr-navy, #1d3a4c) !important;
  }


  /* Idioma más discreto */

  .lfr-header .lfr-lang .wpml-ls-link {
    padding: 4px 5px;
    font-size: 11px;
  }
}


/* --------------------------------------------------------------------------
   PANTALLAS MUY ESTRECHAS — hasta 380px

   Orden:
   Logo | Redes | Hamburguesa
   -------------------------------------------------------------------------- */

@media (max-width: 380px) {

  .lfr-header {
    gap: 4px;
    padding-inline: 12px;
  }

  .lfr-header .elementor-widget-image img,
  .lfr-header .elementor-widget-theme-site-logo img {
    height: 28px;
  }

  .lfr-header .elementor-social-icon {
    width: 23px;
    height: 23px;
    font-size: 12px;
  }

  .lfr-header .elementor-social-icon svg {
    width: 12px;
    height: 12px;
  }

  .lfr-header .lfr-lang {
    display: none;
  }

  .lfr-header .elementor-menu-toggle {
    width: 35px;
    min-height: 35px;
    padding: 6px;
  }

  .lfr-header .elementor-menu-toggle svg {
    width: 21px;
    height: 21px;
  }
}


/* ==========================================================================
   BARRA INFERIOR FIJA — MÓVIL
   ========================================================================== */

.lfr-bar {
  display: none;
}

@media (max-width: 767px) {

  .lfr-bar {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 998;

    display: grid;
    grid-template-columns: repeat(3, 1fr);

    padding-bottom: env(safe-area-inset-bottom, 0);

    background-color: var(--lfr-navy, #1d3a4c);
    box-shadow: 0 -2px 20px rgba(29, 58, 76, 0.22);
  }

  .lfr-bar__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    gap: 4px;
    min-height: 56px;
    padding: 9px 6px;

    color: var(--lfr-light, #ffffff);

    font-family: "Montserrat", "Inter", sans-serif;
    font-size: 11px;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: 0.04em;
    text-align: center;
    text-decoration: none;
  }

  .lfr-bar__item svg {
    width: 19px;
    height: 19px;

    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  .lfr-bar__item--primary {
    color: var(--lfr-navy, #1d3a4c);
    background-color: var(--lfr-gold, #c1a36d);
  }

  .lfr-bar__item:focus-visible {
    outline: 2px solid var(--lfr-cream, #fffaf3);
    outline-offset: -3px;
  }

  .lfr-bar__item:active {
    filter: brightness(0.92);
  }


  /* Evita que la barra tape el final de la página */

  body {
    padding-bottom:
      calc(56px + env(safe-area-inset-bottom, 0px));
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-23f9fd07 *//* ==========================================================
   LA FRENCH RIVIERA — HEADER GLOBAL
   Menú + Submenú + Language Switcher
   DESKTOP / TABLET / MOBILE
   ========================================================== */

.elementor-539 .elementor-element.elementor-element-23f9fd07{
    --lfr-navy:#1D3A4C;
    --lfr-navy-deep:#082A41;
    --lfr-gold:#C1A36D;
    --lfr-cream:#FFFAF3;
    --lfr-line:rgba(193,163,109,.32);

    position:relative;
    z-index:999;

    width:100%;

    min-height:82px;

    padding:
        10px
        clamp(22px,3vw,48px);

    background:var(--lfr-cream);

    transition:
        min-height .25s ease,
        background-color .25s ease,
        box-shadow .25s ease;
}


/* ==========================================================
   ELEMENTOS GENERALES
   ========================================================== */

.elementor-539 .elementor-element.elementor-element-23f9fd07,
.elementor-539 .elementor-element.elementor-element-23f9fd07 *{
    box-sizing:border-box;
}


/* ==========================================================
   LOGO
   ========================================================== */

.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__logo{
    flex:0 0 auto;
}

.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__logo img{
    display:block;

    width:175px;
    max-width:100%;

    height:auto;

    object-fit:contain;
}


/* ==========================================================
   MENÚ PRINCIPAL
   ========================================================== */

.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__menu{
    position:relative;

    flex:0 1 auto;

    margin:0;
}


/* Links principales */

.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__menu .elementor-item{
    position:relative;

    min-height:48px;

    display:flex;
    align-items:center;

    padding:
        0 17px !important;

    color:var(--lfr-navy) !important;

    font-family:Inter,sans-serif;

    font-size:12px !important;
    font-weight:500 !important;

    line-height:1;

    letter-spacing:.65px;

    text-transform:uppercase;

    transition:
        color .22s ease !important;
}


/* Hover / actual */

.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__menu .elementor-item:hover,
.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__menu .elementor-item.elementor-item-active,
.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__menu .elementor-item.highlighted{
    color:var(--lfr-gold) !important;
}


/* Underline elegante */

.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__menu
.elementor-nav-menu--main
> ul
> li
> .elementor-item::after{

    content:"";

    position:absolute;

    left:17px;
    right:17px;
    bottom:2px;

    height:1px;

    background:var(--lfr-gold);

    transform:scaleX(0);
    transform-origin:center;

    transition:transform .25s ease;
}


.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__menu
.elementor-nav-menu--main
> ul
> li:hover
> .elementor-item::after,

.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__menu
.elementor-nav-menu--main
> ul
> li.current-menu-item
> .elementor-item::after,

.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__menu
.elementor-nav-menu--main
> ul
> li.current-menu-ancestor
> .elementor-item::after{

    transform:scaleX(1);
}


/* ==========================================================
   FLECHA DEL MENÚ CON SUBMENÚ
   ========================================================== */

.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__menu
.menu-item-has-children
> .elementor-item{

    gap:7px;
}


/* Elementor submenu arrow */

.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__menu
.sub-arrow{

    margin-left:3px !important;

    color:var(--lfr-gold);

    font-size:10px;

    transition:
        transform .2s ease;
}


.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__menu
.menu-item-has-children:hover
> .elementor-item
.sub-arrow{

    transform:rotate(180deg);
}


/* ==========================================================
   SUBMENÚ DESKTOP
   ========================================================== */

.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__menu
.elementor-nav-menu--main
.elementor-nav-menu
ul{

    min-width:205px !important;

    margin-top:0 !important;

    padding:
        7px 0 !important;

    background:
        rgba(255,250,243,.98) !important;

    border:
        1px solid
        rgba(193,163,109,.24) !important;

    border-top:
        2px solid
        var(--lfr-gold) !important;

    border-radius:
        0 0 8px 8px !important;

    box-shadow:
        0 14px 30px
        rgba(29,58,76,.12) !important;

    overflow:hidden;

    backdrop-filter:
        blur(12px);
}


/* Links del submenu */

.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__menu
.elementor-nav-menu--main
.elementor-nav-menu
ul
.elementor-sub-item{

    min-height:42px;

    padding:
        12px 18px !important;

    display:flex;
    align-items:center;

    border:0 !important;

    background:
        transparent !important;

    color:
        var(--lfr-navy) !important;

    font-family:
        Inter,
        sans-serif;

    font-size:
        11px !important;

    font-weight:
        500 !important;

    letter-spacing:
        .5px;

    text-transform:none;

    transition:
        color .2s ease,
        background-color .2s ease,
        padding-left .2s ease;
}


.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__menu
.elementor-nav-menu--main
.elementor-nav-menu
ul
.elementor-sub-item:hover{

    padding-left:
        22px !important;

    color:
        var(--lfr-gold) !important;

    background:
        rgba(193,163,109,.07) !important;
}


/* ==========================================================
   REDES SOCIALES
   ========================================================== */

.elementor-539 .elementor-element.elementor-element-23f9fd07 .elementor-social-icon{

    font-size:22px !important;

    transition:
        transform .2s ease,
        color .2s ease;
}


.elementor-539 .elementor-element.elementor-element-23f9fd07 .elementor-social-icon:hover{

    transform:
        translateY(-2px);
}


/* ==========================================================
   SELECTOR DE IDIOMA
   ========================================================== */

.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__lang{

    position:relative;

    flex:
        0 0 auto;

    margin:0 !important;
}


/* Si Polylang está usando SELECT */

.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__lang select{

    min-width:
        86px;

    height:
        40px;

    padding:
        0 30px 0 12px;

    border:
        1px solid
        rgba(193,163,109,.24);

    border-radius:
        5px;

    outline:
        none;

    background-color:
        rgba(255,255,255,.52);

    color:
        var(--lfr-navy);

    cursor:
        pointer;

    font-family:
        Inter,
        sans-serif;

    font-size:
        11px;

    font-weight:
        600;

    letter-spacing:
        .5px;
}


/* Polylang dentro de WordPress Menu */

.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__lang
.lang-item,
.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__lang
.pll-parent-menu-item{

    margin:
        0 !important;
}


.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__lang
a{

    min-height:
        40px;

    display:
        flex !important;

    align-items:
        center;

    gap:
        8px;

    padding:
        8px 12px !important;

    border:
        1px solid
        rgba(193,163,109,.22);

    border-radius:
        5px;

    background:
        rgba(255,255,255,.45);

    color:
        var(--lfr-navy) !important;

    font-family:
        Inter,
        sans-serif;

    font-size:
        11px;

    font-weight:
        600;

    letter-spacing:
        .5px;

    text-decoration:
        none !important;

    transition:
        border-color .2s ease,
        background-color .2s ease;
}


.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__lang
a:hover{

    border-color:
        var(--lfr-gold);

    background:
        rgba(193,163,109,.07);
}


/* Bandera */

.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__lang
img{

    display:block;

    width:21px !important;
    height:auto !important;

    margin:0 !important;
}


/* Dropdown del idioma */

.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__lang
.sub-menu{

    min-width:
        105px !important;

    padding:
        5px !important;

    background:
        var(--lfr-cream) !important;

    border:
        1px solid
        var(--lfr-line) !important;

    border-radius:
        6px !important;

    box-shadow:
        0 12px 25px
        rgba(29,58,76,.10) !important;
}


.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__lang
.sub-menu
a{

    border:
        0 !important;

    border-radius:
        4px !important;
}


/* ==========================================================
   BOTÓN RESERVAR
   ========================================================== */

.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__cta{

    flex:
        0 0 auto;
}


.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__cta
.elementor-button{

    min-width:
        132px;

    min-height:
        48px;

    padding:
        13px 22px;

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    border:
        1px solid
        var(--lfr-navy);

    border-radius:
        6px;

    background:
        var(--lfr-navy);

    color:
        #fff;

    font-family:
        Inter,
        sans-serif;

    font-size:
        11px;

    font-weight:
        650;

    line-height:
        1;

    letter-spacing:
        1.1px;

    text-transform:
        uppercase;

    transition:
        color .22s ease,
        background-color .22s ease,
        border-color .22s ease,
        transform .22s ease;
}


.elementor-539 .elementor-element.elementor-element-23f9fd07 .lfr-header__cta
.elementor-button:hover{

    color:
        var(--lfr-navy);

    background:
        var(--lfr-gold);

    border-color:
        var(--lfr-gold);

    transform:
        translateY(-1px);
}


/* ==========================================================
   STICKY
   ========================================================== */

.elementor-539 .elementor-element.elementor-element-23f9fd07.elementor-sticky--effects{

    min-height:
        72px;

    background:
        rgba(255,250,243,.96);

    box-shadow:
        0 8px 28px
        rgba(29,58,76,.09);

    backdrop-filter:
        blur(12px);

    -webkit-backdrop-filter:
        blur(12px);
}


/* ==========================================================
   TABLET
   ========================================================== */

@media(max-width:1024px){

    .elementor-539 .elementor-element.elementor-element-23f9fd07{

        min-height:
            72px;

        padding:
            9px 18px;
    }


    .elementor-539 .elementor-element.elementor-element-23f9fd07
    .lfr-header__logo img{

        width:
            145px;
    }


    /* Quitamos CTA para evitar saturación */

    .elementor-539 .elementor-element.elementor-element-23f9fd07
    .lfr-header__cta{

        display:none;
    }


    .elementor-539 .elementor-element.elementor-element-23f9fd07
    .lfr-header__menu{

        margin-left:auto;
    }


    /* Hamburger */

    .elementor-539 .elementor-element.elementor-element-23f9fd07
    .lfr-header__menu
    .elementor-menu-toggle{

        width:
            42px;

        height:
            42px;

        display:flex;

        align-items:center;

        justify-content:center;

        padding:
            0;

        border:
            1px solid
            rgba(193,163,109,.24);

        border-radius:
            5px;

        background:
            transparent;

        color:
            var(--lfr-navy);

        font-size:
            22px;
    }


    /* Dropdown principal */

    .elementor-539 .elementor-element.elementor-element-23f9fd07
    .lfr-header__menu
    .elementor-nav-menu--dropdown{

        position:absolute !important;

        top:
            calc(100% + 9px);

        right:
            0;

        left:
            auto !important;

        width:
            min(320px,88vw) !important;

        padding:
            8px !important;

        background:
            var(--lfr-cream) !important;

        border:
            1px solid
            rgba(193,163,109,.28);

        border-radius:
            8px;

        box-shadow:
            0 14px 32px
            rgba(29,58,76,.12);
    }


    .elementor-539 .elementor-element.elementor-element-23f9fd07
    .lfr-header__menu
    .elementor-nav-menu--dropdown
    .elementor-item{

        min-height:
            46px;

        padding:
            13px 14px !important;

        border-radius:
            5px;

        font-size:
            12px !important;
    }


    /* Submenu dentro del mobile menu */

    .elementor-539 .elementor-element.elementor-element-23f9fd07
    .lfr-header__menu
    .elementor-nav-menu--dropdown
    .sub-menu{

        margin:
            2px 0 5px
            13px !important;

        padding-left:
            9px !important;

        border-left:
            1px solid
            rgba(193,163,109,.42) !important;

        background:
            transparent !important;

        box-shadow:
            none !important;
    }


    .elementor-539 .elementor-element.elementor-element-23f9fd07
    .lfr-header__menu
    .elementor-nav-menu--dropdown
    .sub-menu
    .elementor-item{

        min-height:
            40px;

        padding:
            10px 12px !important;

        font-size:
            11px !important;
    }


    /* Idioma más compacto */

    .elementor-539 .elementor-element.elementor-element-23f9fd07
    .lfr-header__lang a{

        min-height:
            38px;

        padding:
            7px 10px !important;
    }


    .elementor-539 .elementor-element.elementor-element-23f9fd07
    .lfr-header__lang img{

        width:
            20px !important;
    }

}


/* ==========================================================
   MOBILE
   ========================================================== */

@media(max-width:767px){

    .elementor-539 .elementor-element.elementor-element-23f9fd07{

        min-height:
            64px;

        padding:
            7px 13px;
    }


    .elementor-539 .elementor-element.elementor-element-23f9fd07
    .lfr-header__logo img{

        width:
            122px;
    }


    .elementor-539 .elementor-element.elementor-element-23f9fd07
    .lfr-header__menu
    .elementor-menu-toggle{

        width:
            39px;

        height:
            39px;

        font-size:
            21px;
    }


    /* Selector de idioma */

    .elementor-539 .elementor-element.elementor-element-23f9fd07
    .lfr-header__lang a{

        min-width:
            46px;

        min-height:
            38px;

        justify-content:center;

        padding:
            6px 8px !important;

        gap:
            5px;

        font-size:
            10px;
    }


    .elementor-539 .elementor-element.elementor-element-23f9fd07
    .lfr-header__lang img{

        width:
            19px !important;
    }


    .elementor-539 .elementor-element.elementor-element-23f9fd07
    .lfr-header__lang select{

        min-width:
            68px;

        height:
            38px;

        padding:
            0 24px 0 8px;

        font-size:
            10px;
    }


    .elementor-539 .elementor-element.elementor-element-23f9fd07
    .lfr-header__menu
    .elementor-nav-menu--dropdown{

        width:
            min(300px,92vw) !important;
    }

}


/* ==========================================================
   MOBILE MUY PEQUEÑO
   ========================================================== */

@media(max-width:380px){

    .elementor-539 .elementor-element.elementor-element-23f9fd07{

        padding-left:
            10px;

        padding-right:
            10px;
    }


    .elementor-539 .elementor-element.elementor-element-23f9fd07
    .lfr-header__logo img{

        width:
            108px;
    }


    .elementor-539 .elementor-element.elementor-element-23f9fd07
    .lfr-header__lang a{

        min-width:
            42px;

        padding:
            5px 6px !important;
    }

}/* End custom CSS */