:root {
    --header-size: clamp(1.75rem, 1.6107rem + 0.6369vw, 2.375rem);
    --header-font-type: "franklin-gothic-extra-compre";
    --header-font-weight: 600;
    --header-font-height: 1;
    --header-font-spacing: .03em;

    --subhead--size: clamp(1.125rem, 1.0135rem + 0.5096vw, 1.625rem);
    --subhead--font-type: "franklin-gothic-compressed";
    --subhead--font-weight: 400;
    --subhead--font-height: 1;

    --body-large-font-size: clamp(1.125rem, 1.0693rem + 0.2548vw, 1.375rem);
    --body-large-type: "franklin-gothic-compressed";
    --body-large-weight: 400;
    --body-large-height: 1;
    --body-large-spacing: 0;

    --body-small-font-size: clamp(1.125rem, 1.0971rem + 0.1274vw, 1.25rem);

    --body-note-font-size: clamp(1.125rem, 1.0135rem + 0.5096vw, 1.625rem);

    --accordion-text-font-size: clamp(1.125rem, 1.0971rem + 0.1274vw, 1.25rem);

    --gigi-green: #003E21;
    --lucia: #5B242B;

    --spacing: 20px;
}

/* CAREERS CSS */

.accordion-title {
    font-size: var(--header-size);
    font-family: var(--header-font-type);
    font-weight: var(--header-font-weight);
    line-height: var(--header-font-height);
    letter-spacing: var(--header-font-spacing);
    text-transform: uppercase;
    color: var(--gigi-green);
}

.accordion-emp-length {
    font-size: var(--subhead--size);
    font-family: var(--subhead--font-type);
    font-weight: var(--subhead--font-weight);
    line-height: var(--subhead--font-height);
}

.accordion-content {
    font-size: var(--accordion-text-font-size);
    font-family: var(--subhead--font-type);
    font-weight: var(--subhead--font-weight);
    line-height: var(--subhead--font-height);

}

.accordion-item {
    padding: 0 0 40px 0;
}

.accordion-item:last-of-type {
    border-bottom: 1px solid #000;
}

.accordion-header {
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 20px 0 0 0;
    border-top: 1px solid #000;
    cursor: pointer;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.accordion-header .acc-text {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 20px;
}

.accordion-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out;
    padding: 0 0 0 40px;
}

.accordion-content ul {
    list-style: none;
    /* remove default bullets */
    padding-left: 1.2em;
    /* space for custom bullets */
}

.accordion-content ul li {
    position: relative;
}

.accordion-content ul li::before {
    content: "▪";
    position: absolute;
    left: -10px;
    top: 50%;
    transform: translateY(-50%);
    /* centers vertically */
    font-size: 0.5em;
    /* whatever small size you want */
    line-height: 1;
}

.accordion-content.acc-open {
    /* JS sets max-height inline */
}

.accordion-static-text {
    padding-top: 20px;

    a {
        color: #000;
        border-bottom: 1px solid currentColor;
    }

    a:hover {
        border-bottom: none;
        /* margin-bottom: 1px; */
    }

}

.accordion-header {
    justify-content: space-between;
}

.accordion-icon {
    transition: transform 200ms ease;
    transform-origin: 50% 50%;
    cursor: pointer;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.accordion-item.open .accordion-icon {
    transform: rotate(180deg);
}

@media (prefers-reduced-motion: reduce) {
    .accordion-icon {
        transition: none;
    }
}

/* MENU CSS */

.rm-heading,
.rm-center-heading {
    font-size: var(--header-size);
    font-family: var(--header-font-type);
    font-weight: var(--header-font-weight);
    line-height: var(--header-font-height);
    letter-spacing: var(--header-font-spacing);
    text-transform: uppercase;
    color: var(--gigi-lucia);
}

.rm-item,
.rm-heading-note {
    font-size: var(--body-large-font-size);
    font-family: var(--body-large-type);
    font-weight: var(--body-large-weight);
    line-height: var(--body-large-height);
    letter-spacing: var(--body-large-spacing);
}

.rm-bottom-note {
    font-size: var(--body-small-font-size);
    font-family: var(--body-large-type);
    font-weight: var(--body-large-weight);
    line-height: var(--body-large-height);
    letter-spacing: var(--body-large-spacing);
}

.rm-center-note {
    font-size: var(--body-note-font-size);
    font-family: var(--body-large-type);
    font-weight: var(--body-large-weight);
    line-height: var(--body-large-height);
    letter-spacing: var(--body-large-spacing);
}

#food,
#drinks,
#aperitivo-hour,
#bar-lucia {
    scroll-margin-top: 100px;
}

/* root */
.rm {
    color: var(--gigi-green);
}

.rm-section--lucia {
    color: var(--lucia);
}

.rm-section--lucia .rm-heading,
.rm-section--lucia .rm-center-heading {
    color: var(--lucia);
}

/* sections */
/* .rm-section {
    margin-top: calc(var(--spacing) *3);
} */

.rm-section--two {}

.rm-section--one {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.rm-section--food {}

.rm-section--drink {}

/* headings */
.rm-heading {
    white-space: pre-wrap;
    text-wrap: balance;
    margin-bottom: calc(var(--spacing)*2);
    margin-top: 0;
}

.rm-heading-note {
    margin-bottom: calc(var(--spacing)*2);

}

.rm-center-heading {
    text-align: center;
    white-space: pre-wrap;
    text-wrap: balance;
    margin-bottom: calc(var(--spacing)*2);
    margin-top: 0;
}

.rm-center-note {
    text-align: center;
    white-space: pre-wrap;
    text-wrap: balance;
    margin-top: -20px;
    margin-bottom: calc(var(--spacing)*2);
}

/* layout */
.rm-grid {
    display: flex;
    gap: calc(var(--spacing)*5);
}

.rm-col {}

.rm-col--left {
    flex: 0 1 50%;
}

.rm-col--right {
    flex: 0 1 50%;
}

.rm-group.rm-group--two.rm-group--column-pairs {
    margin-top: calc(var(--spacing)*2);
}

/* lists/items */
.rm-list {
    padding-inline-start: 0;
}

.rm-item {
    list-style: none;
    margin-bottom: var(--spacing);
}

.rm-list>.rm-item:last-of-type {
    margin-bottom: 0;
}


.rm-item__row {}

.rm-item__row--drink {
    display: flex;
    align-items: baseline;
    flex-direction: column;
    /* keeps text aligned nicely */
}

.rm-item__row.rm-item__row--between {
    width: 100%;
    display: flex;
    justify-content: space-between;
    margin-top: calc(var(--spacing) / 4);
    flex: 0;

}

.rm-item__row--food {
    display: flex;
    justify-content: space-between;
    /* flex-wrap: wrap; */
    /* align-content: flex-start; */
    margin-top: calc(var(--spacing)/4);
}

.rm-item__row--compact {
    display: flex;
    justify-content: space-between;
}

.rm-item__name-row {}

/* text bits */
.rm-item__name {
    margin-right: .15em;
    font-weight: 600;
}

.rm-item__desc {}

.rm-item__desc--inline {
    margin-right: var(--spacing);
}

.rm-section.rm-section--two .rm-item .rm-item__desc--block {
    max-width: 85%;
}

.rm-bottom-note {
    text-align: center;
    max-width: 750px;
    margin: calc(var(--spacing)*2) auto 0;
    white-space: pre-wrap;
    text-wrap: balance;
}

/* prices */
.rm-item__price {}

.rm-item__prices {
    margin-left: auto;
    /* pushes prices to far right */
}

.rm-price-pair {
    font-weight: 600;
}

.rm-price-amount {
    font-weight: 400;
}

.rm-steak-lines {
    margin-top: var(--spacing);
    display: flex;
    flex-direction: column;
}

.rm-steak-line {
    display: flex;
    justify-content: space-between;
}

/* (from helper variant) */
.rm-item-header__row {}

.rm-logo {
    display: block;
    max-width: 200px;
    height: auto;
    margin-bottom: calc(var(--spacing)*2);
    margin: 0 auto calc(var(--spacing)*2);
}




/* CUSTOM */
/* CENTERED COLUMN */

.rm-onecol-wrap .rm-item__row--food {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

.rm-onecol-wrap .rm-item__row--food .rm-item__desc--block {
    margin-right: var(--spacing);
}

#lucia-beer .rm-item__row.rm-item__row--drink {
    display: flex;
    flex-direction: row;
}

#lucia-beer .rm-item__row.rm-item__row--drink .rm-item__name {
    margin-right: var(--spacing);
    padding-left: var(--spacing);
    flex: 1 1 100%;
}


/* APERITIVO DIGESTIVO GRID INSTEAD OF FLEX */

#aperitivo-digestivo .rm-group.rm-group--two .rm-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
    row-gap: 0;
    column-gap: calc(var(--spacing)*2);
}

#aperitivo-digestivo .rm-col {
    display: contents;
}

#aperitivo-digestivo .rm-col--left .rm-heading {
    grid-column: 1;
    grid-row: 1;
}

#aperitivo-digestivo .rm-col--left .rm-heading-note {
    grid-column: 1;
    grid-row: 2;
    max-width: 85%;
}

#aperitivo-digestivo .rm-col--right .rm-heading {
    grid-column: 2;
    grid-row: 1;
}

/* if ever used */
#aperitivo-digestivo .rm-col--right .rm-list {
    grid-column: 2;
    grid-row: 2;
}

.rm-sep {
    margin-top: calc(var(--spacing)*2.5);
    margin-bottom: calc(var(--spacing)*2.5);
}

.rm-sep.rm-sep--tight {
    margin-top: calc(var(--spacing)*2);
    margin-bottom: 0;
}


.rm-ornament-wrap {
    display: block;
    margin-top: var(--spacing);
    text-align: center;
    line-height: 0;
}

.rm-ornament-wrap img {
    max-width: 100%;
    height: auto;
    max-height: 200px;
}

.rm-ornament-wrap--long {
    margin-top: calc(var(--spacing)/2)
}

.rm-ornament-wrap--long img {
    max-height: 150px;
}



/* responsive */
@media screen and (max-width: 1150px) {
    .rm-item__prices {
        margin-left: auto;
        display: flex;
        gap: calc(var(--spacing)/2);
        /* flex-direction: column; */
        /* flex-wrap: nowrap; */
        /* white-space: nowrap; */
    }

    .rm-grid {
        display: flex;
        gap: calc(var(--spacing) * 2);
    }

    .rm-item__desc--inline {
        margin-right: calc(var(--spacing)/2);
    }

    .rm-item__name {
        white-space: nowrap;
    }
}

@media screen and (max-width: 1024px) {

    #food,
    #drinks,
    #aperitivo-hour,
    #bar-lucia {
        scroll-margin-top: 200px;
    }
}

@media screen and (max-width: 768px) {

    :root {
        --spacing: 15px;
    }

    .rm-grid {
        display: flex !important;
        gap: var(--spacing);
        flex-direction: column;
    }

    .rm-section--one {
        justify-content: start;
        align-items: flex-start;
        text-align: start;
    }

    .rm-onecol-wrap {
        width: 100%;

    }

    .rm-onecol-wrap .rm-item__row--food {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }

    .rm-center-heading {
        text-align: left;
        margin-top: var(--spacing);
    }

    .rm-heading {
        margin-top: var(--spacing);

    }

    .rm-center-note {
        text-align: left;
    }

    .rm-onecol-wrap .rm-item__row--food .rm-item__desc--block {
        max-width: 90%;
    }

    .rm-item__prices {
        margin-left: auto;
        display: flex;
        flex-direction: row;
        white-space: nowrap;
        gap: calc(var(--spacing)/2);
    }

    #lucia-beer .rm-item__row.rm-item__row--drink {
        display: flex;
        flex-direction: row;
    }

    #lucia-beer .rm-item__row.rm-item__row--drink .rm-item__name {
        padding-left: 0;
    }

    #aperitivo-digestivo .rm-col--left .rm-heading-note {
        max-width: 100%;
        margin-bottom: 0;
    }
}