#header-menu {
    display: flex;
    flex-flow: column;
    justify-content: space-between;
    height: 90%;
    align-items: center;
    position: relative;
    z-index: 998;
}

#header-menu ul {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    place-items: center;
    place-content: center;
    max-width: 1280px;
    width: 100%;
    margin: 0 auto;
    padding: 1em 0;
    border-top: solid 1px var(--light-grey);
    margin: 1em auto 0;
}

.servicios-page .big-bg.header-bar.bg-image {
    height: 280px;
}

#header-menu ul a {
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 200;
    color: var(--black);
}

.abs-menu {
    height: 339px;
    position: absolute;
    top: 0;
}

.header-bar {
    position: relative;
}

.header-bar.big-bg {
    height: 530px;
} 

.header-bar.small-bg {
    height: 400px;
}

.header-content-container {
    padding: 1em 0 0;
    height: 100%;
}

.abs-menu.bg-image.text-center {
    z-index: 1;
}


.central-section {
    position: relative;
    max-width: 1180px;
    width: 100%;
    margin: auto;
    z-index: 3;
}

.buttons {
    position: absolute;
    top: 0;
    right: 15px;
    display: flex;
    flex-flow: row;
    gap: 2em;
    align-items: start;
    justify-content: center;
    height: 25px;
}

.language-selector details {
    vertical-align: text-top;
    bottom: 1px;
    position: relative;
}

div#menu img {
    vertical-align: text-top;
}

.lang-switcher summary {
    direction: rtl;
}

.lang-switcher summary::marker {
    content: "▾";         /* triángulo */
    color: var(--red);          /* color del triángulo */
    font-size: 1em;       /* tamaño */
    float: right;         /* mover a la derecha */
}

header h1 {
    font-weight: 200;
    font-size: 28px;
    text-transform: uppercase;
    margin: 0;
    transform: translate(0, 10px);
}

header .logo-link {
    display: block;
    position: relative;
    z-index: 2;
    width: fit-content;
    margin: auto;
}

.header-title {
    max-width: 300px !important;
    height: 55px !important;
    margin: 0 auto !important;
    display: grid;
    place-content: center;
    place-items: center;
}

section.menu {
    position: relative;
    z-index: 400;
    max-width: 800px;
    width: 100%;
    margin: auto;
}

section.menu .content-container {
    display: flex;
    flex-flow: row;
    justify-content: space-between;
    height: 100%;
    min-height: 250px;
    transform: translate(0, 75px);
}

section.menu .content-container ul {
    display: flex;
    flex-flow: column;
    justify-content: space-between;
}

section.menu .content-container ul:first-of-type {
    align-items: start;
}

section.menu .content-container ul:last-of-type {
    align-items: end;
}

.text-container.home {
    position: absolute;
    bottom: 0;
    width: 100%;
    padding: 0 0px 1em;
    display: grid;
    gap: .45em;
}

.text-container.home * {
    font-size: 16px;
    font-weight: 400;
    color: var(--black);
}

.text-container.home h2, .text-container.home h1 {
    margin: 0;
    color: var(--black);
    font-weight: 200;
    font-size: 27px;
}

section.menu .content-container ul li {
    display: flex;
    align-items: center;
}

section.menu .content-container ul:first-of-type li {
    flex-flow: row;
}

section.menu .content-container ul li div {
    display: grid;
    place-content: center;
}

section.menu .content-container ul li a {
    font-size: 14px;
    font-weight: 200;
    color: var(--black);
    text-transform: uppercase;
}

/* Primer enlace parte izquierda home */
section.menu .content-container ul:first-of-type li:first-of-type a {
    transform: translate(35px, 0);
}

section.menu .content-container ul:first-of-type li:first-of-type div {
    transform: translate(60px, 22px);
}

/* Segundo enlace parte izquierda home */
section.menu .content-container ul:first-of-type li:nth-of-type(2) a {
    transform: translate(0, 0);
}

section.menu .content-container ul:first-of-type li:nth-of-type(2) div {
    transform: translate(30px, 0);
}

/* Tercer enlace parte izquierda home */
section.menu .content-container ul:first-of-type li:last-of-type a {
    transform: translate(40px, 0);
}

section.menu .content-container ul:first-of-type li:last-of-type div {
    transform: translate(60px, -22px);
}

section.menu .content-container ul:last-of-type li {
    flex-flow: row-reverse;
}

/* Primer enlace parte izquierda home */
section.menu .content-container ul:last-of-type li:first-of-type a {
    transform: translate(-20px, 0);
}

section.menu .content-container ul:last-of-type li:first-of-type div {
    transform: translate(-40px, 22px);
}

/* Segundo enlace parte izquierda home */
section.menu .content-container ul:last-of-type li:nth-of-type(2) a {
    transform: translate(0px, 0);
}

section.menu .content-container ul:last-of-type li:nth-of-type(2) div {
    transform: translate(-60px, 0);
}

/* Tercer enlace parte izquierda home */
section.menu .content-container ul:last-of-type li:last-of-type a {
    transform: translate(-35px, 0);
}

section.menu .content-container ul:last-of-type li:last-of-type div {
    transform: translate(-60px, -22px);
}

#menu-toggle {
    display: flex;
    flex-flow: column;
    gap: 4px;
    z-index: 99999;
    transform: translate(0, 5px);
}

body.open {
    position: fixed;
    width: 100%;
}

.menu-bar {
    width: 30px;
    height: 3px;
    background: var(--black);
    transition: transform 0.3s ease, opacity 0.3s ease;
}

body.open .menu-icon .menu-bar:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
}

body.open .menu-icon .menu-bar:nth-child(2) {
    opacity: 0;
}

body.open .menu-icon .menu-bar:nth-child(3) {
    transform: translateY(-6px) rotate(-45deg);
}

.main_menu_hidden {
    display: none;
}

body.open .main_menu_hidden {
    position: absolute;
    height: 100vh;
    width: 100%;
    top: 0;
    left: 0;
    background-color: rgba(222, 222, 222, .9);
    z-index: 999;
    display: grid;
    place-content: start center;
    padding: 6em 0 0;
}

body.open .central-section {
    z-index: 1000;
}

.menu-main_menu-container ul {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2em;
    text-align: center;
}

.menu-main_menu-container ul a {
    text-transform: uppercase;
}

@media(max-width: 1220px) {
    #header-menu ul {
        display: none;
    }

    #header-menu {
        display: flex;
        flex-flow: column;
        justify-content: space-between;
        align-items: center;
        position: absolute;
        z-index: 998;
        bottom: 0px;
        height: 55px;
        width: 100%;
    }
}

@media(max-width: 1100px) {
    #header-menu ul {
        display: none;
    }
}

@media(max-width: 860px) {
    .header-content-container.text-center section.menu {
        display: none;
    }
}

@media(max-width: 600px) {
    .central-section {
        display: flex;
        flex-flow: column-reverse;
    }

    .buttons {
        position: unset;
        transform: translate(0, 20px);
    }

    .central-section {
        display: flex;
        flex-flow: column-reverse;
    }

    body.open .buttons {
        padding: 0 1em;
    }

    body.open .main_menu_hidden {
        padding: 8em 0 0;
    }
}