@import url("./base.css");

@import url("./sections/hero.css");
@import url("./sections/menus-offers.css");
@import url("./sections/bring-wheels.css");
@import url("./sections/food-gallery.css");
@import url("./sections/skittles-club.css");
@import url("./sections/location.css");
@import url("./sections/footer.css");
@import url("./components/modal.css");
@import url("./sections/contact.css");
/* Shared CTA sizing: desktop buttons size to their content.
   Section classes continue to own placement/margins. */
.hero__button.btn,
.menus-offers__download.btn,
.bring-wheels__button.btn,
.skittles-club__button.btn,
.location-section__button.btn,
.site-footer__book.btn,
.booking-form__submit.btn {
    width: fit-content;
    min-width: 0;
}

@media (max-width: 767px) {
    .hero__button.btn,
    .menus-mobile__download.btn,
    .bring-wheels__button.btn,
    .skittles-club__button.btn,
    .location-section__button.btn,
    .booking-form__submit.btn {
        width: 100%;
    }
}

/* =========================================================
   SHARED CTA APPEARANCE
   Section classes keep their own positioning/margins.
   This final override prevents older section button rules
   from changing the shared button geometry or typography.
   ========================================================= */
.hero__button.btn,
.menus-offers__download.btn,
.menus-mobile__download.btn,
.bring-wheels__button.btn,
.skittles-club__button.btn,
.location-section__button.btn,
.site-footer__book.btn,
.booking-form__submit.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: fit-content;
    min-width: 0;
    height: 56px;

    padding: 0 24px;
    box-sizing: border-box;

    border: 0;
    border-radius: 100px;

    background: #dca958;
    color: #05202e;

    font-family: "Alegreya SC", serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 22px;
    letter-spacing: 0.04em;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;
    white-space: nowrap;

    cursor: pointer;
    transition: none;
}

.hero__button.btn > span,
.menus-offers__download.btn > span,
.menus-mobile__download.btn > span,
.bring-wheels__button.btn > span,
.skittles-club__button.btn > span,
.location-section__button.btn > span,
.site-footer__book.btn > span,
.booking-form__submit.btn > span {
    display: block;
    transform: translateY(2px);
}

.hero__button.btn:hover,
.menus-offers__download.btn:hover,
.menus-mobile__download.btn:hover,
.bring-wheels__button.btn:hover,
.skittles-club__button.btn:hover,
.location-section__button.btn:hover,
.site-footer__book.btn:hover,
.booking-form__submit.btn:hover {
    background: #083248;
    color: #fff;
}

@media (max-width: 767px) {
    .hero__button.btn,
    .menus-mobile__download.btn,
    .bring-wheels__button.btn,
    .skittles-club__button.btn,
    .location-section__button.btn,
    .booking-form__submit.btn {
        width: 100%;
    }
}

@media (max-width: 767px) {
    /* Prevent text/intrinsic widths from creating a document-level horizontal scrollbar. */
    .hero, .menus-mobile, .bring-wheels, .food-gallery,
    .skittles-club, .location-section, .site-footer {
        max-width: 100%;
    }
    .site-footer__legal {
        flex-wrap: wrap;
        white-space: normal;
        row-gap: 4px;
    }
    .footer-hours p { white-space: normal; }
}

@media (min-width: 768px) and (max-width: 1200px) {
    .menus-offers__header > div:first-child {
        padding-right: 150px;
    }

    .menus-offers__download.btn {
        height: 48px;
        padding: 0 12px;
        font-size: 11px;
    }
}
@media (min-width: 768px) and (max-width: 850px) {
    .menus-offers__header {
        height: 120px;
    }

    .menus-offers__title {
        font-size: 44px;
        line-height: 0.9;
    }

    .menus-offers__subtitle {
        margin-top: 8px;
        font-size: 11px;
        line-height: 1.3;
    }
}