
/* --------------------------------------------------
	SKIP LINK, SHORTCUT TO CONTENT
-------------------------------------------------- */

.skip-link {

    /* Base positioning (onscreen, but visually hidden via transform) */
    position: absolute;
    left: 12px;
    top: 12px;
    z-index: 100000; /* above sticky header */

    padding: 10px 14px;
    border-radius: 10px;

    background: var(--light);
    color: var(--brand-dark);

    font-family: var(--font-ui);
    font-weight: 700;
    font-size: 16px;
    line-height: 1;

    text-decoration: none;
    box-shadow: 0 10px 26px rgba(0, 0, 0, .25);

    /* Hidden state (off-screen via transform instead of -9999px) */
    transform: translateY(-140%);
    opacity: 0;
    pointer-events: none;

    transition: transform .2s ease, opacity .2s ease;

    /* Accessibility: only show on keyboard focus */

    &:focus-visible {
        transform: translateY(0);
        opacity: 1;
        pointer-events: auto;

        outline: 3px solid var(--brand-light);
        outline-offset: 2px;
    }

    /* Prevent mouse click focus showing it */

    &:focus:not(:focus-visible) {
        outline: none;
    }

    /* Optional subtle polish */
    letter-spacing: 0.02em;
    backdrop-filter: blur(6px);
}




/* --------------------------------------------------
	Yoast SEO
-------------------------------------------------- */
.schema-faq-answer {
    margin-top: 0;
}

/* --------------------------------------------------
	BOOK A TABLE
-------------------------------------------------- */
.book-a-table {
    position: fixed;
    inset: 0;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: 0;
    background: rgba(0, 0, 0, 0.45);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
    z-index: 9999;
}

.book-a-table.is-open {
    opacity: 1;
    pointer-events: auto;
}

.book-a-table__panel {
    position: relative;
    width: min(960px, 100%);
    max-height: 100vh;
    background: #fff;
    transform: translateY(-100%);
    transition: transform 0.35s ease;
    overflow: auto;
}

.book-a-table.is-open .book-a-table__panel {
    transform: translateY(30px);
}

.book-a-table__close {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 2;
    border: 0;
    background: transparent;
    font-size: 32px;
    line-height: 1;
    cursor: pointer;
}

body.booking-open {
    overflow: hidden;
}

.booking-shell {
    background: var(--brand-light, #021c24);
    border-radius: 25px;
    padding: 15px;
}

.booking-shell__inner {
    border: none;
    border-radius: 15px;
    padding: 15px 15px 15px;
}

.booking-shell__intro {
    text-align: center;
    margin-bottom: 24px;
}

.booking-shell__title {
    margin: 0 47px 20px;
    padding-top: 12px;
    font-family: var(--font-ui);
    font-size: 36px !important;
    line-height: 40px;
    color: #021c24;
    width: calc(100% - 94px);
    text-shadow: none;
    color: #F7F5F5;
    font-weight: bold;
    text-transform: unset;
}

.booking-shell__copy {
    margin: 0 0 8px;
    font-family: var(--font-ui);
    font-size: 20px;
    line-height: 1.45;
    color: #f0b32e;
}

.booking-shell__widget {
    background: #12103A;
    border-radius: 5px;
    padding: 18px;
}

.book-a-table__panel {
    position: relative;
    width: min(1240px, calc(100vw - 40px));
    max-height: calc(100vh - 40px);
    margin-top: 20px;
    background: transparent;
    transform: translateY(-120%);
    transition: transform 0.35s ease;
    overflow: auto;
}

.book-a-table__close {
    position: absolute;
    top: 28px;
    right: 28px;
    z-index: 20;
    border: 0;
    background: transparent;
    line-height: 1;
    cursor: pointer;
    color: #021c24;
    padding: 0;
    width: 42px;
    height: 42px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 21px;
}

.book-a-table__close svg {
    width: 42px;
    height: 42px;
    top: 0px;
    position: relative;
}

#dmn-partner-widget .footer {
    display: none;
}

#dmn-partner-widget {
    max-width: 100%;
}

#dmn-partner-widget #dmn-widget-inner {
    border: 0;
    background: transparent;
}

#dmn-partner-widget #dmn-widget-inner .stage {
    background: transparent;
}

#dmn-partner-widget .stage .dropdown {
    background: transparent;
}

#dmn-partner-widget .list-slot {
    background: transparent;
}

#dmn-partner-widget .list-slot:hover:not(.list-slot--disabled) {
    background: rgba(0, 0, 0, 0.1);
}

#dmn-partner-widget #dmn-widget-inner .date-selector .date-selector__quick-buttons button {
    background: rgba(0, 0, 0, 0.1);
}

#dmn-partner-widget #dmn-widget-inner .date-selector .date-selector__quick-buttons button:hover {
    background: rgba(0, 0, 0, 0.2);
}

#dmn-partner-widget .date-selector .vdp-datepicker .vdp-datepicker__calendar .cell:not(.blank):not(.disabled).day:hover {
    color: var(--brand-dark);
}

#dmn-partner-widget #dmn-widget-inner .time-header {
    background: rgba(0, 0, 0, 0.1);
}

#dmn-partner-widget #dmn-widget-inner .time-selection-columns .from-list .time-list--blurred,
#dmn-partner-widget #dmn-widget-inner .time-selection-columns .until-list .time-list--blurred {
    background: rgba(0, 0, 0, 0.1);
}

/* --------------------------------------------------
	NEWSLETTER
-------------------------------------------------- */
.neos-newsletter .newsletter-headline {
    font-size: clamp(34px, 7vw, 58px);
    width: 300px;
    max-width: 300px;
    color: var(--grey-light) !important;
    margin: 0;
}

.neos-newsletter .newsletter-label-text {
    font-size: var(--paragraph-font-size) !important;
    font-family: var(--font-ui) !important;
    font-weight: 600 !important;
}

.neos-newsletter .newsletter-field input {
    font-family: var(--font-ui) !important;
    font-weight: 400 !important;
    font-size: 20px;
}

.neos-newsletter .newsletter-consent > span {
    font-size: var(--paragraph-font-size) !important;
    font-family: var(--font-ui) !important;
    font-weight: 400 !important;
}

.neos-newsletter .newsletter-consent input {
    margin-top: 8px;
}

.neos-article-aside .neos-newsletter .newsletter-layout-shell {
    display: flex;
    flex-direction: column;
    gap: var(--newsletter-gap);
    padding: var(--newsletter-shell-padding);
    max-width: 1400px;
    margin: 0 auto;
    min-height: 100%;
}

.newsletter-venue-selector-body {
    font-family: var(--font-ui) !important;
}

/* --------------------------------------------------
	PHOTOBOOTH GALLERY
-------------------------------------------------- */
.neos-rogue-gallery__item {
    position: relative;
    overflow: hidden;
}

.neos-rogue-gallery__item img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.neos-rogue-gallery__img {
    position: relative;
    z-index: 2;
}

.neos-rogue-gallery__img--incoming {
    position: absolute;
    inset: 0;
    z-index: 1;
    opacity: 1;
    transform: scale(1.02);
    filter: blur(6px);
    transition: filter 600ms ease,
    transform 600ms ease;
}

.neos-rogue-gallery__img--incoming.is-visible {
    filter: blur(0);
    transform: scale(1);
}

.neos-rogue-gallery__img--outgoing {
    position: relative;
    z-index: 2;
    opacity: 1;
    filter: blur(0);
    transform: scale(1);
    transition: opacity 700ms ease,
    filter 700ms ease,
    transform 700ms ease;
}

.neos-rogue-gallery__img--outgoing.is-hiding {
    opacity: 0;
    filter: blur(14px);
    transform: scale(1.04);
}


@media (prefers-reduced-motion: reduce) {
    .neos-rogue-gallery__img--incoming,
    .neos-rogue-gallery__img--outgoing {
        transition: none;
    }
}

/* --------------------------------------------------
	ARTICLE ASIDE
-------------------------------------------------- */
.neos-article-aside ul,
.neos-article-aside li {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
}

.neos-article-aside ul {
    gap: 20px;
}

.neos-article-aside__related-link {
    display: block;
    position: relative;
    text-decoration: none;
    overflow: hidden;
    border-radius: 0.75rem;
    min-height: 170px; /* card height lives here, not on content */
}

/* full image layer */
.neos-article-aside__related-media {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: block;
}

.neos-article-aside__related-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

/* bottom text area only */
.neos-article-aside__related-content {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;

    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 16px;
    color: white;
}

.neos-article-aside__related-link {
    display: block;
    position: relative;
    text-decoration: none;
    overflow: hidden;
    border-radius: 0.75rem;
    min-height: 170px;
}

.neos-article-aside__related-media {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: block;
}

.neos-article-aside__related-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.neos-article-aside__related-content::before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: -64px;
    z-index: -1;
    pointer-events: none;

    background: linear-gradient(
            to top,
            rgba(0, 0, 0, 0.78) 0%,
            rgba(0, 0, 0, 0.56) 30%,
            rgba(0, 0, 0, 0.28) 60%,
            rgba(0, 0, 0, 0.10) 82%,
            rgba(0, 0, 0, 0) 100%
    );
}

.neos-article-aside__related-title {
    position: relative;
    z-index: 1;
    display: block;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.45);
}

.neos-article-aside__related-link:hover .neos-article-aside__related-image {
    transform: scale(1.05);
}

/* --------------------------------------------------
	ARTICLE ASIDE - COMING UP
-------------------------------------------------- */

.neos-article-aside__coming-up-list,
.neos-article-aside__coming-up-item,
.neos-article-aside__coming-up-venues-list,
.neos-article-aside__coming-up-venue-item {
    list-style: none;
    margin: 0;
    padding: 0;
}

.neos-article-aside__coming-up-list {
    display: grid;
    gap: 1rem;
}

.neos-article-aside__coming-up-group + .neos-article-aside__coming-up-group {
    margin-top: 1.5rem;
}

.neos-article-aside__coming-up-card {
    position: relative;
    overflow: hidden;
    border-radius: 1rem;
    min-height: 220px;
    background: #111;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.12);
    isolation: isolate;
}

.neos-article-aside__coming-up-media {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: block;
}

.neos-article-aside__coming-up-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.35s ease;
}

.neos-article-aside__coming-up-content {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    padding: 1rem;
    color: #fff;
}

/* dark fade behind text only */
.neos-article-aside__coming-up-content::before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: -80px;
    z-index: -1;
    background: linear-gradient(
            to top,
            rgba(0, 0, 0, 0.82) 0%,
            rgba(0, 0, 0, 0.58) 34%,
            rgba(0, 0, 0, 0.24) 68%,
            rgba(0, 0, 0, 0.00) 100%
    );
    pointer-events: none;
}

.neos-article-aside__coming-up-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0.75rem;
    padding: 0.42rem 0.75rem;
    border-radius: 999px;
    background: rgba(255, 248, 239, 0.92);
    color: #3c342d;
    font-size: 0.82rem;
    font-weight: 600;
    line-height: 1;
}

.neos-article-aside__coming-up-title {
    margin: 0 0 0.45rem;
    color: #fff;
    font-size: 1.8rem;
    line-height: 1;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.45);
}

.neos-article-aside__coming-up-trigger {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0;
    border: 0;
    background: transparent;
    color: #fff;
    font: inherit;
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.2;
    cursor: pointer;
    text-decoration: none;
}

.neos-article-aside__coming-up-trigger::after {
    content: '›';
    font-size: 1.35em;
    line-height: 1;
}

/* venue overlay */
.neos-article-aside__coming-up-venues {
    position: absolute;
    inset: 0;
    z-index: 3;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    padding: 1rem;
    background: rgba(0, 0, 0, 0.52);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.22s ease;
}

.neos-article-aside__coming-up-venues-panel {
    width: min(280px, 100%);
    padding: 1rem;
    border-radius: 1rem;
    background: rgba(32, 28, 26, 0.92);
    box-shadow: 0 14px 30px rgba(0, 0, 0, 0.24);
    transform: translateY(10px);
    transition: transform 0.22s ease;
}

.neos-article-aside__coming-up-venues-label {
    display: block;
    margin-bottom: 0.75rem;
    color: #fff;
    font-size: 0.92rem;
    font-weight: 600;
}

.neos-article-aside__coming-up-venues-list {
    display: grid;
    gap: 0.6rem;
}

.neos-article-aside__coming-up-venue-link {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 0.7rem 1rem;
    border-radius: 999px;
    background: #f6f0e8;
    color: #d66a1e;
    text-decoration: none;
    font-weight: 700;
    line-height: 1.1;
    transition: transform 0.18s ease, background 0.18s ease;
}

.neos-article-aside__coming-up-venue-link:hover,
.neos-article-aside__coming-up-venue-link:focus {
    transform: translateY(-1px);
    background: #fff8f2;
}

/* interaction */
.neos-article-aside__coming-up-card:hover .neos-article-aside__coming-up-image,
.neos-article-aside__coming-up-card:focus-within .neos-article-aside__coming-up-image {
    transform: scale(1.05);
}

.neos-article-aside__coming-up-card:hover .neos-article-aside__coming-up-venues,
.neos-article-aside__coming-up-card:focus-within .neos-article-aside__coming-up-venues {
    opacity: 1;
    pointer-events: auto;
}

.neos-article-aside__coming-up-card:hover .neos-article-aside__coming-up-venues-panel,
.neos-article-aside__coming-up-card:focus-within .neos-article-aside__coming-up-venues-panel {
    transform: translateY(0);
}

.neos-rogue-gallery img {
    width: 100%;
    display: block;
}

/* BRAND OVERVIEW VIDEO */
.neos-brand-overview-video {
    min-height: 75vh !important;
    height: 75vh !important;
    position: relative;
    display: block;
}

.neos-brand-overview-video .wp-block-cover__inner-container {
    left: 15px;
    right: 15px;
    top: 15px;
    bottom: 15px;
    position: absolute;
    width: auto;
}

.neos-brand-overview-video .yellowBorder {
    left: 15px;
    right: 15px;
    top: 15px;
    bottom: 15px;
    position: absolute;
    width: auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* mobile */
@media (max-width: 767px) {
    .neos-article-aside__coming-up-card {
        min-height: 200px;
    }

    .neos-article-aside__coming-up-title {
        font-size: 1.5rem;
    }

    .neos-article-aside__coming-up-venues {
        align-items: stretch;
        justify-content: stretch;
        padding: 0.75rem;
    }

    .neos-article-aside__coming-up-venues-panel {
        width: 100%;
        margin-top: auto;
    }
}

.hero-framed__title {
    font-weight: 400;
}


/* --------------------------------------------------
	BRUNCH SLIDER
-------------------------------------------------- */
.neos-themed-brunch-gallery {
    display: flex;

    border-top-left-radius: 0px;
    border-top-right-radius: 0px;
    border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0px;
    padding-top: 30px;
    padding-bottom: 50px;
    min-height: 500px;
    aspect-ratio: unset;
    background-image: url(/wp-content/uploads/2026/03/Bonnie-Body-Wall-Blue.jpg);
    align-items: center;
    justify-content: center;
    background-attachment: fixed;

    & .neos-themed-brunch-gallery__heading {
        font-size: var(--heading-size-s);
    }
}

.neos-themed-brunch-gallery-inner {
    max-width: 1240px;
    display: flex;
    flex-direction: column;
    margin: 0 20px;
    width: 100%;
    padding: 20px 0;
}

.neos-themed-brunch-gallery__grid {
    display: flex;
    flex-direction: column;
    gap: 20px;
    justify-content: center;
}

.neos-themed-brunch-gallery__block {
    width: 100%;
    max-width: 100%;
    min-width: 100%;
    border: 2px solid var(--brand-light);
    border-radius: 15px;
    padding: 15px 15px 20px 15px;
    position: relative;
    overflow: hidden;
}

@media all and (min-width: 600px) {
    .neos-themed-brunch-gallery__grid {
        flex-direction: row;
        flex-wrap: wrap;
    }

    .neos-themed-brunch-gallery__block {
        width: calc(100% / 2);
        max-width: calc(100% / 2);
        min-width: calc(100% / 2);
    }
}

@media all and (min-width: 900px) {
    .neos-themed-brunch-gallery__block {
        width: calc(100% / 3);
        max-width: calc(100% / 3);
        min-width: calc(100% / 3);
    }
}

@media all and (min-width: 1200px) {
    .neos-themed-brunch-gallery__block {
        width: calc(100% / 4);
        max-width: calc(100% / 4);
        min-width: calc(100% / 4);
    }
}

/* Hide slide when not active */
.neos-themed-brunch-gallery__slide {
    display: none;
}

.neos-themed-brunch-gallery h3 {
    color: var(--wp--preset--color--brand-light) !important;
}

.neos-themed-brunch-gallery h3,
.neos-themed-brunch-gallery h4,
.neos-themed-brunch-gallery p {
    margin: 10px auto;
}

.neos-themed-brunch-gallery__promotion-headline {
    font-size: 30px !important;
}

.neos-themed-brunch-gallery__body p {
    max-width: 960px;
    font-weight: 600;
    margin: 0 auto;
    font-size: var(--paragraph-font-size);
    padding: 20px 0;
}

.neos-themed-brunch-gallery__slide.is-active {
    display: grid;
    border: solid 2px #f49b2d;
    border-radius: var(--border-border-radius);
    padding: 2rem;
    width: 50%;
    margin: auto;
}

figure.neos-themed-brunch-gallery__image {
    display: inherit !important;
    aspect-ratio: 16/9;
    width: 100%;
    margin: auto;
    margin-bottom: 20px;

    & img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover;
    }
}

p.neos-themed-brunch-gallery-dates {
    display: none;
}

p.neos-themed-brunch-gallery-text {
    text-align: center;
    align-content: center;
    font-size: 20px;
    font-weight: 600;
    font-family: var(--font-hero);
    line-height: 20px;
    color: var(--wp--preset--color--cream) !important;
}

.neos-themed-brunch-gallery-text > span {
    display: block;
}

.neos-themed-brunch-gallery-text .highlighted {
    color: var(--brand-light);
}

.neos-themed-brunch-gallery__grid.is-limited .neos-themed-brunch-gallery__block:nth-child(n+7) {
    display: none;
}

.neos-themed-brunch-gallery__grid:not(.is-limited) + .neos-themed-brunch-gallery__more-wrap {
    display: none;
}

.neos-themed-brunch-gallery__more-wrap {
    padding-top: 40px;
    margin: 0 auto;
    text-align: center;
}

/* Brunch Slider - navigation icons */

.neos-themed-brunch-gallery__nav {
    position: absolute;
    top: 40%;
    z-index: 10;
    cursor: pointer;
    width: 100%;
}


.neos-themed-brunch-gallery__promotion-description {
    opacity: 0;
    position: absolute;
    top: -100%;
    width: 100%;
    height: calc(100%);
    pointer-events: none;
    transform: scale(1.05);
    transform-origin: center;
    display: flex;
    align-items: top;
    justify-content: center;
    left: 0;
    overflow: hidden;
    padding: 20px 15px;

    transition: opacity 0.3s ease, transform 0.4s ease, top 0.2s ease-in-out;
    will-change: opacity, transform;
}

.neos-themed-brunch-gallery__promotion-description > div {
    z-index: 2;
    position: relative;
}

.neos-themed-brunch-gallery__promotion-description::before {
    content: '';
    position: absolute;
    inset: 0;
    opacity: 0.8;
    background: var(--brand-dark);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    z-index: 1;
}

.neos-themed-brunch-gallery__block:hover .neos-themed-brunch-gallery__promotion-description {
    opacity: 1;
    pointer-events: auto;
    transform: scale(1);
    top: 0;
    border-radius: 15px;
}

.neos-themed-brunch-gallery .neos-themed-brunch-gallery__next {
    background: url(/wp-content/uploads/2026/03/Carousel-right-light.svg) !important;
    position: absolute;
    left: 70%;
}

.neos-themed-brunch-gallery .neos-themed-brunch-gallery__prev {
    background: url(/wp-content/uploads/2026/03/Carousel-left-light.svg) !important;
    position: absolute;
    left: 21%;
}

/*.neos-themed-brunch-gallery .neos-themed-brunch-gallery__next,
.neos-themed-brunch-gallery .neos-themed-brunch-gallery__prev {
	background-size: contain !important;
	background-repeat: no-repeat !important;
	width: 65px;
	height: 65px;
	border: none;
	color: #132439;
}*/

.neos-themed-brunch-gallery__block .book-line {
    position: relative;
    z-index: 2;
}

.neos-themed-brunch-gallery__block .book-line a {
    display: block;
    margin: 0 auto;
    width: 180px;
    text-align: center;
}

.neos-venue-locations a {
    text-decoration: none;
}

.neos-venue-locations .wp-block-cover {
    cursor: pointer;

}

.neos-venue-locations .wp-block-cover__inner-container {
    height: auto;
    position: absolute;
    top: 15px;
    left: 15px;
    right: 15px;
    bottom: 15px;
    width: auto;
}

.neos-venue-locations .yellowBorder {
    width: 100%;
}

.list-slot__inner .list-slot__title,
#dmn-partner-widget #dmn-widget-inner .number-people.number-people-dropdown span,
#dmn-partner-widget #dmn-widget-inner .number-people-dropdown.number-people-dropdown span {
    color: #f7f5f5 !important;
    font-size: 20px !important;
    font-family: var(--font-ui) !important;
    font-weight: bold !important;
}

#dmn-partner-widget #dmn-widget-inner .number-people-dropdown.number-people-dropdown .number-people-dropdown--caret:after {
    border-top: 8px solid #021c24;
}

/* --------------------------------------------------
	BLOG POST ASIDE - VENUE SELECTOR
-------------------------------------------------- */
.neos-article-aside__section--book-table {
    background: #021c24;
    border-radius: var(--border-border-radius);
    padding: 20px;
    color: #f2f4e2;
    margin-top: 20px;

    & .neos-card--book-table h3.neos-article-aside__heading {
        margin: 10px 0;
    }

    & .neos-article-aside__section--book-table p.neos-article-aside__text,
    p.neos-article-aside__text {
        margin: 0;
    }
}

.neos-article-aside__section--book-table ul.neos-article-aside__venue-list {
    line-height: 40px;
    margin: 0 auto;
    margin-top: 10px;
    width: 100%;

    & li.neos-article-aside__venue-item a {
        text-decoration: none;
    }
}

.hidden-shell {
    display: none;
}


.content-slot p {
    font-size: 1.2rem;
}

.rev_times {
    font-size: 1rem;
}

.rev_times dl {
    margin: 0;
}

.rev_times dt {
    float: left;
}

.rev_times dd {
    float: right;
}

.rev_times p {
    margin: 0;
    font-size: 1rem;
}

.revolution_find_out_info {
    justify-content: center;
}

.revolution_find_out_info details {
    font-size: 1rem;
}

.revolution_brand_yellow {
    color: var(--brand-yellow)
}

/* Outer wrapper */
#dmn-partner-widget {
    width: 100% !important;
    max-width: 100% !important;
}

/* Inner widget wrapper */
#dmn-partner-widget #dmn-widget-inner {
    width: 100% !important;
    max-width: 100% !important;
}

/* ================================
   HERO WRAPPER
   ================================ */
.revolution_hero {
    position: relative;
    width: 100%;
    min-height: 70vh;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    overflow: hidden;
    padding: 4rem 1rem;
    color: #ffffff;
}

/* ================================
   VIDEO BACKGROUND
   ================================ */
.revolution_hero video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: -2;
}

/* ================================
   IMAGE FALLBACK
   ================================ */
.revolution_hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: -3;
    opacity: 1;
}

/* Example: set via inline style or PHP
   <div class="revolution_hero" style="--fallback-image:url('/path/to/image.jpg')">
*/
.revolution_hero {
    --fallback-image: none;
}

.revolution_hero::before {
    background-image: var(--fallback-image);
}

/* ================================
   CONTENT WRAPPER
   ================================ */
.revolution_hero_content {
    max-width: 900px;
    margin: 0 auto;
    position: relative;
    z-index: 5;
}

/* ================================
   HEADINGS & TEXT
   ================================ */
.revolution_hero h1 {
    font-size: clamp(2rem, 6vw, 4rem);
    font-weight: 700;
    text-transform: uppercase; /* decorative capitalisation */
    margin-bottom: 1rem;
    color: #edfc70;
}

.revolution_hero p {
    font-size: clamp(1rem, 2.5vw, 1.25rem);
    margin-bottom: 2rem;
    color: #ffffff;
}

/* ================================
   CTA BUTTONS
   ================================ */
.revolution_hero_ctas {
    display: flex;
    justify-content: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.revolution_hero_ctas a,
.revolution_hero_ctas button {
    background: #ffffff;
    color: #000000;
    padding: 0.75rem 1.5rem;
    border-radius: 4px;
    font-weight: 600;
    text-decoration: none;
    display: inline-block;
    transition: background 0.2s ease, color 0.2s ease;
}

.revolution_hero_ctas a:hover,
.revolution_hero_ctas button:hover {
    background: #000000;
    color: #ffffff;
}


/* =========================================
   CARD SLIDER LAYOUT
   ========================================= */
.card-carousel {
    position: relative;
    width: 100%;
}

/* Each slide is a row of cards */
.mobile-promo-slide {
    display: none;
    gap: 1.5rem;
    padding: 1rem;
    flex-wrap: wrap;
}

.mobile-promo-slide.is-active {
    display: flex;
}

/* =========================================
   CARD COMPONENT
   ========================================= */
.revolution_card {
    background: #ffffff;
    border-radius: 6px;
    overflow: hidden;
    color: #0a1a1f;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
    padding: 1rem;
}

/* 3 per row on medium screens */
@media (max-width: 1100px) {
    .revolution_card {
        flex: 1 1 calc(33.333% - 1.5rem);
    }
}

/* 2 per row on small screens */
@media (max-width: 800px) {
    .revolution_card {
        flex: 1 1 calc(50% - 1.5rem);
    }
}

/* 1 per row on mobile */
@media (max-width: 500px) {
    .revolution_card {
        flex: 1 1 100%;
    }
}

/* =========================================
   CARD IMAGE
   ========================================= */
.revolution_card img {
    width: 100%;
    height: auto;
    display: block;
}

/* =========================================
   CARD BODY
   ========================================= */
.revolution_card_body {
    padding: 1rem 1.25rem;
    flex: 1 1 auto; /* allows body to grow */
}

.revolution_card_body h3 {
    margin: 0 0 0.5rem;
    font-size: 1.25rem;
    font-weight: 700;
}

.revolution_card_body p {
    margin: 0 0 1rem;
    font-size: 1rem;
}

/* =========================================
   CTA
   ========================================= */
.revolution_card_cta {
    display: inline-block;
    background: var(--brand-yellow);
    color: #000 !important;
    padding: 0.5rem 1rem;
    border-radius: 4px;
    text-decoration: none;
    font-weight: 600;
    transition: background 0.2s ease;
    margin-top: auto; /* pushes CTA to bottom */
    text-transform: uppercase;
    text-align: center;
    width: 100%;
}

.revolution_card_cta:hover {
}


/* =========================================
   GRID WRAPPER
   ========================================= */
.revolution_event_grid {
    /*display: grid;*/
    /*grid-template-columns: repeat(3, 1fr);*/
    /*/*gap: 1.5rem;*/*/
    /*padding: 1rem;*/
    /*margin: 2.5rem 0;*/
    cursor: pointer;
}

@media (max-width: 1100px) {
    .revolution_event_grid {
        /*grid-template-columns: repeat(2, 1fr);*/
    }
}

@media (max-width: 700px) {
    .revolution_event_grid {
        /*grid-template-columns: 1fr;*/
    }
}

.revolution_event_grid_static {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
}

@media (max-width: 1100px) {
    .revolution_event_grid_static {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 700px) {
    .revolution_event_grid_static {
        grid-template-columns: 1fr;
    }
}

.revolution_event_grid_static .revolution_event {
    margin-right: 0;
}

.tns-nav {
    margin: 0 auto;
    padding:1.4rem 0;
    display: flex;
    justify-content: center;
}
.tns-controls {
    display: none;
}
.tns-nav button {
    width: 40px;
    height: 10px;
    background: #eaeaea;
    border: 1px solid #eaeaea;
    border-radius: 5%;
    margin-right: 0.3rem;
}
.tns-nav button.tns-nav-active {
    width: 100px;
    background: var(--brand-yellow);
 }
.tns-slider {
    display: flex;
}
.tns-item {
    flex: 1;
}

/* =========================================
   CARD
   ========================================= */
.revolution_event {
    background: #ffffff;
    border: 1px solid #ddd;
    overflow: hidden;
    display: flex;
    flex-direction: column; /* allows CTA to pin to bottom */
    color: #4a2c6e; /* coloured text */
    margin-right: 30px;
}

/* =========================================
   IMAGE
   ========================================= */
.revolution_event img {
    width: 100%;
    height: auto;
    display: block;
}

.revolution_event_card {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.revolution_event_body h3 {
    text-transform: uppercase!important;
    font-size: 1.4rem!important;
    margin: 0.5rem 0;
}

/* =========================================
   BODY
   ========================================= */
.revolution_event_body {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 1rem 1.25rem;
}

.revolution_event_body p {
    font-size: 1.1rem!important;
}

/* Venue name (sub lead) */
.revolution_event_venue {
    font-size: 0.9rem;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 0.5rem;
}

/* Event title (lead) */
.revolution_event_title {
    font-size: 1.25rem;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 0.75rem;
}

/* Description */
.revolution_event_description {
    font-size: 1rem;
    margin-bottom: 1rem;
}

/* =========================================
   CTA (always at bottom)
   ========================================= */

.revolution_event_cta_container {
    margin-top: auto;
    padding: 1.5rem;
}

.revolution_event_cta {
    margin-top: auto; /* pins CTA to bottom */
    display: block;
    text-align: center;
    background: #c39be8; /* light purple */
    color: #ffffff;
    padding: 0.75rem 1rem;
    text-decoration: none;
    font-weight: 700;
    text-transform: uppercase;
    border-radius: 0 0 6px 6px;
    transition: background 0.2s ease;
    width: 100%;
}

.revolution_event_cta:hover {
    background: #a874d8;
}


.header-bar .header-links a {
    color: white;
    text-transform: uppercase;
    text-decoration: none;
    padding: 0 0.8rem;
    font-size: 1.1rem;
}

.mega-inner .header-links {
    margin: 3rem auto;
    width: 30%;
}
@media (max-width: 781px) {
    .mega-inner .header-links {
        margin: 1rem auto;
        width: 100%;
    }
}

.revolution_menu_flyout__primary {
    padding-bottom: 2rem;
}
.revolution_menu_flyout__secondary {
    padding: 2rem 0;
    border-top: 1px solid #5C5C5C;
    border-bottom: 1px solid #5C5C5C;
}
.revolution_menu_flyout__tertiary {
    padding-top: 2rem;
}

.mega-inner .header-links a {
    display: block;
    text-decoration: none;
    color: #fff;
    text-align: center;
    font-size: 2rem;
    padding: 0.4rem 0;
}

.mega-inner .header-links a:hover {
    text-decoration: underline;
    color: #fff;
}


/* =========================================
   FILTER GRID WRAPPER
   ========================================= */
/* 2 columns on normal screens */
.revolution_event_filters {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
    padding: 1rem;
    margin-bottom: 2rem;
}

/* 1 column on mobile */
@media (max-width: 600px) {
    .revolution_event_filters {
        grid-template-columns: 1fr;
    }
}

/* Filter field wrapper */
.revolution_event_filter {
    display: flex;
    flex-direction: column;
}

/* Label styling */
.revolution_event_filter label {
    font-weight: 700;
    margin-bottom: 0.5rem;
    color: var(--brand-yellow);
    text-transform: uppercase;
}

/* Inputs + selects */
.revolution_event_filter input,
.revolution_event_filter select {
    padding: 0.75rem;
    border: 1px solid #ccc;
    border-radius: 6px;
    font-size: 1rem;
    background: #fff;
    color: #333;
}

/* Date group: two fields side-by-side */
.revolution_event_date_group {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem;
}

/* Mobile: stack date fields */
@media (max-width: 600px) {
    .revolution_event_date_group {
        grid-template-columns: 1fr;
    }
}


/* =========================================
   WRAPPER
   ========================================= */
.revolution_block {
    margin: 2rem 0;
}

/* White background variant */
.revolution_block--white {
    background: #ffffff;
    color: #222; /* forced dark text */
}

/* Transparent variant inherits page colours */
.revolution_block:not(.revolution_block--white) {
    background: transparent;
}

/* =========================================
   TITLE
   ========================================= */
.revolution_block_title {
    text-transform: uppercase;
    margin-bottom: 1.5rem;
    font-size: 2rem;
    font-weight: 700;
}

/* =========================================
   INNER TWO-COLUMN LAYOUT
   ========================================= */
.revolution_block_inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
}

/* Mobile: stack columns */
@media (max-width: 700px) {
    .revolution_block_inner {
        grid-template-columns: 1fr;
    }
}

/* =========================================
   COLUMN TYPES
   ========================================= */
.revolution_block_col--text {
    padding: 2rem;
}

.revolution_block_col--media {
    padding: 0; /* no padding for images/widgets */
}

/* Optional: if right column ever needs text */
.revolution_block_col--media.revolution_block_col--text {
    padding: 2rem;
}

/* =========================================
   CTA BUTTON
   ========================================= */
.revolution_block_cta {
    display: inline-block;
    margin-top: 1.5rem;
    padding: 0.75rem 1.5rem;
    background: var(--brand-yellow);
    color: #000 !important;
    border-radius: 4px;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 600;
    text-align: center;
    border: 1px solid #ccc;
}

/* Transparent mode CTA inherits text colour */
.revolution_block:not(.revolution_block--white) .revolution_block_cta {
    background: #fff;
    color: #000;
}

/* =========================================
   IMAGE / MEDIA
   ========================================= */
.revolution_block_image {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}


.revolution_disclaimer {
    color: #7E7E84;
}


/* =========================================
   BASE CONTAINER
   ========================================= */
.rev_container {
    width: 100%;
    margin: 2rem 0;
    display: grid;
    gap: 2rem;
}

/* One-column mode */
.rev_container--one {
    grid-template-columns: 1fr;
}

/* Two-column mode */
.rev_container--two {
    grid-template-columns: 1fr 1fr;
}

/* Two-column mode */
.rev_container--three {
    grid-template-columns: 1fr 1fr 1fr;
}

/* Mobile: always collapse to one column */
@media (max-width: 700px) {
    .rev_container--two, .rev_container--three {
        grid-template-columns: 1fr;
    }
}

/* =========================================
   COLUMN
   ========================================= */
.rev_col {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

/* Optional padding for text columns */
.rev_col--padded {
    padding: 1.5rem;
}

/* =========================================
   OPTIONAL BACKGROUND VARIANT
   ========================================= */
.rev_container--white {
    background: #fff;
    color: #222;
    padding: 2rem;
    border-radius: 8px;
}

/* Transparent mode inherits page colours */
.rev_container:not(.rev_container--white) {
    background: transparent;
}

/* =========================================
   CTA
   ========================================= */
.rev_cta {
    display: inline-block;
    margin-top: 1rem;
    padding: 0.75rem 1.5rem;
    background: #fff;
    color: #000;
    border-radius: 4px;
    text-transform: uppercase;
    text-align: center;
    border: 1px solid #ccc;
}


/* =========================================
   DATE STRIP WRAPPER
   ========================================= */
.rev_date_strip_wrapper {
    margin: 2rem 0;
}

/* Header with month + arrows */
.rev_date_strip_header {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem;
}

.rev_date_nav {
    background: #eee;
    border: none;
    padding: 0.5rem 1rem;
    border-radius: 6px;
    cursor: pointer;
    font-size: 1.2rem;
}

/* =========================================
   DATE STRIP (7 circles)
   ========================================= */
.rev_date_strip {
    display: flex;
    gap: 1rem;
    overflow: hidden;
    justify-content: center;
}

.rev_date_circle {
    width: 45px;
    height: 45px;
    border-radius: 50%;
    background: #9d5cbe;
    color: #4a2c6e;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: 700;
    cursor: not-allowed;
    transition: background 0.2s;
}

.rev_date_circle--active {
    width: 48px;
    height: 48px;
    background: #4a2c6e;
    color: #fff;
    cursor: pointer;
}

/* =========================================
   SCROLLER CARD WRAPPER
   ========================================= */
.rev_event_scroller {
    display: flex;
    flex-direction: row;
    gap: 1rem;
    overflow-x: auto;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    margin-left: 10rem;
    padding: 1rem;
}


.rev_event_card_scroller {
    min-width: 300px;
    max-width: 320px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    flex-shrink: 0; /* CRITICAL */
    color: #000;
}

.rev_event_card_date h3 {
    font-size: 1.3rem;
    color: #fff;
    text-transform: uppercase;
    text-align: center;
}

.rev_event_card_date h3 span {
    border-bottom: 3px solid #fff;
}

/* =========================================
   IMAGE
   ========================================= */
.rev_event_card_image {
    width: 100%;
    height: auto;
    display: block;
    border: 1px solid #ddd;
}

/* =========================================
   BODY
   ========================================= */
.rev_event_card_body {
    padding: 1rem 1.25rem;
    flex: 1 1 auto;
    color: #000;
    background: #ffffff;
    border: 1px solid #ddd;
}

.rev_event_card_venue {
    font-size: 0.9rem;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 0.5rem;
    color: #4a2c6e;
}

.rev_event_card_title {
    font-size: 1.25rem;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 0.75rem;
    color: #4a2c6e;
}

.rev_event_card_description {
    font-size: 1rem;
    margin-bottom: 1rem;
}

/* =========================================
   CTA CONTAINER
   ========================================= */
.rev_event_card_cta_container {
    margin-top: auto;
    padding: 1rem 1.25rem;
    border-top: 1px solid #eee;
    background: #fafafa;
}

.rev_event_card_date p {
    margin: 0 0 0.75rem 0;
    font-size: 0.95rem;
    color: #4a2c6e;
}

/* CTA */
.rev_event_card_cta {
    display: block;
    text-align: center;
    background: #c39be8;
    color: #ffffff;
    padding: 0.75rem 1rem;
    text-decoration: none;
    font-weight: 700;
    text-transform: uppercase;
    border-radius: 4px;
    transition: background 0.2s ease;
}

.rev_event_card_cta:hover {
    background: #a874d8;
}


/* =========================================
GRID
========================================= */
.revolution_feature_grid {
    display: grid;
    gap: 1rem;
    margin: 5rem 0 1rem 0;
    grid-template-columns: 1fr;
}

.revolution_feature_grid__two {
    grid-template-columns: repeat(2, 1fr);
}

.revolution_feature_grid__three {
    grid-template-columns: repeat(3, 1fr);
}

@media (max-width: 768px) {
    .revolution_feature_grid,
    .revolution_feature_grid__two,
    .revolution_feature_grid__three {
        grid-template-columns: 1fr;
    }
}


/* =========================================
BLOCK
========================================= */
.revolution_feature_block {
    position: relative;
    min-height: 400px;
    border-radius: 8px;
    overflow: hidden;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat;
    text-decoration: none;
    display: flex;
}

/* Dark overlay for readability */
.revolution_feature_block::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
            to top,
            rgba(0, 0, 0, 0.65),
            rgba(0, 0, 0, 0.2)
    );
}

.revolution_feature_content {
    position: relative;
    z-index: 1;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 2rem;
}

/* =========================================
TITLE
========================================= */
.revolution_feature_title {
    margin: 0 auto;
    color: #ffffff;
    text-transform: uppercase;
    text-align: left;
    font-size: clamp(1rem, 3vw, 1.75rem);
    line-height: 1.1;
    align-content: center;
    width: 85%;
}

@media (max-width: 768px) {
    .revolution_feature_title {
        width: 100%;
    }
}

/* =========================================
CTA
========================================= */
.revolution_feature_cta {
    align-self: center;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.875rem 1.5rem;
    background: var(--brand-yellow);
    color: #000;
    font-weight: 700;
    text-transform: uppercase;
    border-radius: 4px;
    transition: opacity 0.2s ease;
}

.revolution_feature_block:hover .revolution_feature_cta {
    opacity: 0.9;
}


.facebook_link {
    background: #4267B2;
    color: #fff;
    padding: 2rem;
    max-width: 70%;
    margin-left: auto;
    margin-top: 4rem;
}

.facebook_link p {
    padding: 0;
    margin: 0;
}

.facebook_link a {
    color: #fff;
}

.facebook_link a:hover {
    color: var(--brand-yellow);
    background: none;
}

.facebook_link__icon {
    float: left;
    padding: 0 1.5rem 0 0;
}


.revolution_blog_date {
    color: #D5D5D5;
}

.revolution_blog_categories ul {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 0;
    list-style: none;
    padding: 0;
}

.revolution_blog_categories ul li {
    text-align: center;
    padding: 0;
    margin: 0;
}

.revolution_blog_categories ul li a {
    text-decoration: none;
    color: #fff;
    border-bottom: none;
    display: block;
    padding: 40px 25px;
}

.revolution_blog_categories ul li a:hover {
    text-decoration: none;
    background: none;
    color: #fff;
    border-bottom: none;
}


.revolution_bar_list {
    list-style-type: none;
}

.revolution_bar_list li {
    padding: 1.3rem 1rem;
    margin: 0;
    text-transform: uppercase;
    font-weight: bold;
    border-bottom: 1px solid #fff;
}

.revolution_bar_list li.revolution_bar_list__letter {
    background: #e8b5de;
    color: #000;
    padding: 0.6rem 1rem;
}

.revolution_bar_list li a {
    display: block;
    color: #fff;
    text-decoration: none;
    border-bottom: none;
}

.revolution_bar_list li a:hover {
    color: #fff;
    text-decoration: underline;
    border-bottom: none;
    background: none;
}


#revolution_menu {
}

.revolution_menu__pdf {
    margin: 0 auto;
    text-align: center;
    text-transform: uppercase;
    background: var(--brand-yellow);
    color: black !important;
    text-decoration: none;
    font-size: 0.8rem;
    padding: 1.2rem;
    font-weight: bold;
    border-bottom: none;
}

.revolution_menu__pdf:hover {
    border-bottom: none;
    text-decoration: none;
}

.revolution_menu__container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 100px;
}

@media (max-width: 767px) {
    .revolution_menu__container {
        display: grid;
        grid-template-columns: repeat(1, 1fr);
        gap: 0;
    }
}

.revolution_menu__section h3 {
    text-transform: uppercase;
    text-decoration: underline;
    padding: 1rem 0;
    font-size: 2rem;
    margin: 4rem 0 2rem 0;
}

.revolution_menu_section__item {
    border-bottom: 1px solid #fff;
    padding: 1rem 0;
}

.revolution_menu_section__item:last-of-type {
    border-bottom: none;
}

.revolution_menu_section__item p {
    margin: 0;
    padding: 0;
}

.revolution_menu_section_item__price {
    float: right;
}

.revolution_menu_section_item_dietary {
    color: #fff;
    border-radius: 50%;
    padding: 0.4rem;
    font-size: 0.6rem;
}

.revolution_menu_section__item_vegan {
    background: olivedrab;
}

.revolution_menu_section__item_vegetarian {
    background: lightskyblue;
}


#revolution_menu__nav {
    background: #000;
}

#revolution_menu__nav ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

#revolution_menu__nav > .content-slot > .container > ul {
    display: flex;
    align-items: center;
}

#revolution_menu__nav li {
    position: relative;
    white-space: nowrap;
    padding: 0;
    margin: 0;
}

#revolution_menu__nav a,
#revolution_menu__nav li {
    color: #fff;
    text-transform: uppercase;
    text-decoration: none;
    font-weight: 500;
    border-bottom: none;
}

#revolution_menu__nav a,
#revolution_menu__nav span {
    display: block;
    padding: 1rem 2rem;

}

#revolution_menu__nav a:hover {
    opacity: 0.8;
    background: none;
    border-bottom: none;
    color: var(--brand-yellow);
}

/* Dropdown */
#revolution_menu__nav li ul {
    position: absolute;
    top: 100%;
    left: 0;
    display: none;
    min-width: 220px;
    background: rgba(0, 0, 0, 0.95);
    padding: 0.75rem 0;
    z-index: 1000;
}

#revolution_menu__nav li ul li {
    display: block;
}

#revolution_menu__nav li ul a {
    display: block;
    padding: 0.75rem 1rem;
}

#revolution_menu__nav li ul a:hover {
    background: rgba(255, 255, 255, 0.1);
}

/* Show dropdown on hover */
#revolution_menu__nav li:hover > ul {
    display: block;
}

/* Mobile */
@media (max-width: 768px) {
    #revolution_menu__nav > .content-slot > .container > ul {
        flex-direction: column;
        align-items: flex-start;
        gap: 0;
    }

    #revolution_menu__nav li ul {
        position: static;
        display: block;
        background: transparent;
        padding-left: 1rem;
    }

    #revolution_menu__nav li ul a {
        padding: 0.5rem 0;
    }
}


.revolution_video {
    position: relative;
    padding-top: 56.25%; /* 16:9 aspect ratio */
}

.revolution_video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}



#locationsToggle {
    /*background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBpZD0ibWVudSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgNDAwIDQwMCI+CiAgPGxpbmUgeDE9IjUwIiB5MT0iMTAwLjIxOSIgeDI9IjM1MCIgeTI9IjEwMC4yMTkiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzE5MTkxOSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBzdHJva2Utd2lkdGg9IjEyIi8+CiAgPGxpbmUgeDE9IjUwIiB5MT0iMjAwIiB4Mj0iMzUwIiB5Mj0iMjAwIiBmaWxsPSJub25lIiBzdHJva2U9IiM0ZjQ2ZTUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSIxMiIvPgogIDxsaW5lIHgxPSI1MCIgeTE9IjI5OS43ODEiIHgyPSIzNTAiIHkyPSIyOTkuNzgxIiBmaWxsPSJub25lIiBzdHJva2U9IiMxOTE5MTkiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSIxMiIvPgo8L3N2Zz4=");*/
    /*background-size: contain;*/
    /*background-repeat: no-repeat;*/
    width: 24px;
    height: 24px;
    background: none;
    border: none;
    color: var(--brand-yellow);
}

