@font-face {
    font-family: "Niramit";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("../fonts/niramit/niramit-v12-latin-ext-400.woff2") format("woff2");
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: "Niramit";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("../fonts/niramit/niramit-v12-latin-400.woff2") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: "Niramit";
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url("../fonts/niramit/niramit-v12-latin-ext-500.woff2") format("woff2");
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: "Niramit";
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url("../fonts/niramit/niramit-v12-latin-500.woff2") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: "Niramit";
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url("../fonts/niramit/niramit-v12-latin-ext-600.woff2") format("woff2");
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: "Niramit";
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url("../fonts/niramit/niramit-v12-latin-600.woff2") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: "Niramit";
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url("../fonts/niramit/niramit-v12-latin-ext-700.woff2") format("woff2");
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: "Niramit";
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url("../fonts/niramit/niramit-v12-latin-700.woff2") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: "Niramit";
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url("../fonts/niramit/niramit-v12-latin-ext-400italic.woff2") format("woff2");
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
    font-family: "Niramit";
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url("../fonts/niramit/niramit-v12-latin-400italic.woff2") format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

html.pf-theme-brioude-pizza,
body.pf-public-page.pf-theme-brioude-pizza,
html:has(body.pf-public-page.pf-theme-brioude-pizza) {
    background: #f4f1ec !important;
    background-color: #f4f1ec !important;
}

html.pf-theme-brioude-pizza,
html.pf-theme-geo-classic,
.pf-public-page.pf-theme-brioude-pizza,
.pf-public-page.pf-theme-geo-classic {
    --pf-font-family: "Niramit", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --bs-body-bg: #f4f1ec;
    --bs-body-color: #2e2927;
    --pf-bg: #f4f1ec;
    --pf-brown: #7a3445;
    --pf-brown-hover: #572633;
    --pf-accent: #c59438;
    --pf-plum: #7a3445;
    --pf-plum-deep: #40232d;
    --pf-sage: #536553;
    --pf-sage-deep: #30443a;
    --pf-gold: #c59438;
    --pf-text: #2e2927;
    --pf-text-strong: #211d1c;
    --pf-text-muted: #746b66;
    --pf-text-soft: #746b66;
    --pf-muted: #746b66;
    --pf-ink: #211d1c;
    --pf-line: #cfc4b8;
    --pf-on-accent: #ffffff;
    --pf-on-accent-muted: rgba(255, 255, 255, 0.84);
    --pf-surface: #fffdf9;
    --pf-surface-warm: #fff9f1;
    --pf-surface-soft: #eef1eb;
    --pf-surface-subtle: #f3e8e4;
    --pf-surface-neutral: #efede8;
    --pf-soft-line: #ddd4ca;
    --pf-control-border: #c9bdb1;
    --pf-control-border-hover: #7a3445;
    --pf-label-border: transparent;
    --pf-label-shadow: none;
    --pf-important-border: rgba(33, 29, 28, 0.12);
    --pf-important-inset: transparent;
    --pf-important-green: #536553;
    --pf-important-orange: #e1b34e;
    --pf-important-red: #ad4948;
    --pf-important-blue: #5f7882;
    --pf-breadcrumb-divider: rgba(255, 255, 255, 0.5);
    --pf-breadcrumb-hover-border: rgba(255, 255, 255, 0.5);
    --pf-image-placeholder-bg: #dfe5dc;
    --pf-image-empty-bg: #ece9e2;
    --pf-photo-title-bg: rgba(64, 35, 45, 0.94);
    --pf-photo-title-shadow: none;
    --pf-photo-nav-border: rgba(255, 255, 255, 0.7);
    --pf-photo-nav-bg: rgba(64, 35, 45, 0.88);
    --pf-photo-nav-bg-hover: #40232d;
    --pf-photo-nav-shadow: 0 7px 18px rgba(45, 28, 32, 0.2);
    --pf-status-open: #3f7356;
    --pf-status-soon: #9b6717;
    --pf-status-closed: #ad4948;
    --pf-hours-line: #ced8cc;
    --pf-hours-row-line: #d7ded5;
    --pf-phone-shadow: 0 10px 24px rgba(89, 38, 53, 0.17);
    --pf-phone-shadow-hover: 0 12px 28px rgba(89, 38, 53, 0.23);
    --pf-hours-card-border: #ccd6ca;
    --pf-menu-separator: #dfd5ca;
    min-height: 100vh;
    background: #f4f1ec !important;
    color: #2e2927;
    font-family: var(--pf-font-family);
    font-size: 1rem;
    line-height: 1.6;
    letter-spacing: 0;
}

.pf-public-page.pf-theme-brioude-pizza *,
.pf-public-page.pf-theme-brioude-pizza *::before,
.pf-public-page.pf-theme-brioude-pizza *::after {
    letter-spacing: 0;
}

.pf-public-page.pf-theme-brioude-pizza h1,
.pf-public-page.pf-theme-brioude-pizza h2,
.pf-public-page.pf-theme-brioude-pizza h3,
.pf-public-page.pf-theme-brioude-pizza h4,
.pf-public-page.pf-theme-brioude-pizza h5,
.pf-public-page.pf-theme-brioude-pizza h6,
.pf-public-page.pf-theme-brioude-pizza strong,
.pf-public-page.pf-theme-brioude-pizza b {
    font-weight: 700;
}

.pf-public-page.pf-theme-brioude-pizza :focus-visible {
    outline: 3px solid rgba(197, 148, 56, 0.42);
    outline-offset: 3px;
}

.pf-public-page.pf-theme-brioude-pizza > main.container-xl,
.pf-public-page.pf-theme-brioude-pizza .pf-topbar > .container-xl,
.pf-public-page.pf-theme-brioude-pizza .gp-site-footer > .container-xl {
    max-width: 1240px;
}

.pf-public-page.pf-theme-brioude-pizza > main.container-xl {
    padding-top: 1.8rem !important;
    padding-bottom: 3rem !important;
}

/* Header */
.pf-public-page.pf-theme-brioude-pizza .pf-topbar {
    padding-top: 0.62rem !important;
    padding-bottom: 0.62rem !important;
    border-bottom: 3px solid #c59438;
    background: #40232d;
    box-shadow: 0 7px 22px rgba(46, 30, 35, 0.1);
    --pf-topbar-breadcrumb-link: rgba(255, 255, 255, 0.76);
    --pf-topbar-breadcrumb-text: #ffffff;
    --pf-topbar-breadcrumb-divider: rgba(255, 255, 255, 0.46);
    --pf-topbar-breadcrumb-hover: #f3dfb8;
    --pf-topbar-breadcrumb-hover-border: transparent;
}

.pf-public-page.pf-theme-brioude-pizza .pf-top-logo-link {
    border-radius: 0;
}

.pf-public-page.pf-theme-brioude-pizza .pf-top-logo-link:hover,
.pf-public-page.pf-theme-brioude-pizza .pf-top-logo-link:focus {
    opacity: 1;
}

.pf-public-page.pf-theme-brioude-pizza .pf-toplink {
    color: #ffffff;
    font-weight: 700;
}

.pf-public-page.pf-theme-brioude-pizza .pf-toplink:hover {
    color: #f3dfb8;
    text-decoration: none;
}

.pf-public-page.pf-theme-brioude-pizza .pf-breadcrumb {
    font-size: 0.85rem;
}

.pf-public-page.pf-theme-brioude-pizza .pf-breadcrumb a {
    color: #746b66;
    font-weight: 500;
}

.pf-public-page.pf-theme-brioude-pizza .pf-breadcrumb a:hover,
.pf-public-page.pf-theme-brioude-pizza .pf-breadcrumb a:focus {
    color: #7a3445;
}

.pf-public-page.pf-theme-brioude-pizza .pf-breadcrumb .active {
    color: #40232d;
    font-weight: 700;
}

.pf-public-page.pf-theme-brioude-pizza .pf-topbar .pf-breadcrumb a {
    color: rgba(255, 255, 255, 0.76);
}

.pf-public-page.pf-theme-brioude-pizza .pf-topbar .pf-breadcrumb a:hover,
.pf-public-page.pf-theme-brioude-pizza .pf-topbar .pf-breadcrumb a:focus {
    color: #f3dfb8;
}

.pf-public-page.pf-theme-brioude-pizza .pf-topbar .pf-breadcrumb .active {
    color: #ffffff;
    font-weight: 700;
}

/* Important message */
.pf-public-page.pf-theme-brioude-pizza .pf-important-banner {
    border-top: 0;
    border-bottom: 1px solid var(--pf-important-border);
    box-shadow: none;
}

.pf-public-page.pf-theme-brioude-pizza .pf-important-item {
    padding-top: 0.48rem;
    padding-bottom: 0.48rem;
    font-size: 0.82rem;
    font-weight: 700;
}

.pf-public-page.pf-theme-brioude-pizza .pf-important-banner-orange .pf-important-item,
.pf-public-page.pf-theme-brioude-pizza .pf-important-banner-orange .pf-important-sep {
    color: #4c3815;
}

/* Panels */
.pf-public-page.pf-theme-brioude-pizza .pf-box {
    border-radius: 8px;
    color: #2e2927;
}

.pf-public-page.pf-theme-brioude-pizza .pf-hours-card,
.pf-public-page.pf-theme-brioude-pizza .pf-info-card,
.pf-public-page.pf-theme-brioude-pizza .pf-description-card,
.pf-public-page.pf-theme-brioude-pizza .pf-menu-summary-card,
.pf-public-page.pf-theme-brioude-pizza .pf-empty {
    border: 1px solid #ddd4ca;
    background: #fffdf9;
    box-shadow: 0 12px 30px rgba(50, 39, 35, 0.07);
}

.pf-public-page.pf-theme-brioude-pizza .pf-hours-card {
    border-color: #ccd6ca;
    background: #eef1eb;
    box-shadow: 0 11px 28px rgba(48, 68, 58, 0.075);
}

.pf-public-page.pf-theme-brioude-pizza .pf-hours-card > .card-body,
.pf-public-page.pf-theme-brioude-pizza .pf-info-card > .card-body,
.pf-public-page.pf-theme-brioude-pizza .pf-description-card > .card-body,
.pf-public-page.pf-theme-brioude-pizza .pf-menu-summary-card > .card-body,
.pf-public-page.pf-theme-brioude-pizza .pf-empty > .card-body {
    padding: 1.5rem;
}

.pf-public-page.pf-theme-brioude-pizza .pf-labelled-card,
.pf-public-page.pf-theme-brioude-pizza .pf-labelled-card.mt-3 {
    margin-top: 1rem !important;
}

.pf-public-page.pf-theme-brioude-pizza .pf-labelled-card > .card-body {
    padding-top: 1.5rem;
}

.pf-public-page.pf-theme-brioude-pizza .pf-side-stack {
    gap: 1rem !important;
}

.pf-public-page.pf-theme-brioude-pizza .pf-card-label,
.pf-public-page.pf-theme-brioude-pizza .pf-hours-title.pf-card-label {
    position: static;
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 0;
    margin: 0 0 0.85rem;
    padding: 0 0 0.72rem;
    border: 0;
    border-bottom: 1px solid #d6ddd3;
    border-radius: 0;
    background: transparent;
    color: #536553;
    box-shadow: none;
    font-size: 0.83rem;
    font-weight: 700;
    line-height: 1.3;
    text-transform: uppercase;
}

.pf-public-page.pf-theme-brioude-pizza .pf-card-label::before,
.pf-public-page.pf-theme-brioude-pizza .pf-hours-title.pf-card-label::before {
    content: "";
    display: block;
    flex: 0 0 3px;
    width: 3px;
    height: 1.05rem;
    margin-right: 0.55rem;
    background: #c59438;
}

/* Photo */
.pf-public-page.pf-theme-brioude-pizza .pf-photo-card {
    overflow: hidden;
    border: 1px solid #d7cdc2;
    border-radius: 8px;
    background: #dfe5dc;
    box-shadow: 0 16px 36px rgba(50, 39, 35, 0.11);
}

.pf-public-page.pf-theme-brioude-pizza .pf-photo-wrap,
.pf-public-page.pf-theme-brioude-pizza .pf-cover-image,
.pf-public-page.pf-theme-brioude-pizza .pf-cover-placeholder {
    min-height: 290px;
}

.pf-public-page.pf-theme-brioude-pizza .pf-cover-placeholder {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.7rem;
    padding: 1.5rem 1.5rem 5.5rem;
    background: #dfe5dc;
    color: #536553;
    font-weight: 700;
    text-shadow: none;
}

.pf-public-page.pf-theme-brioude-pizza .pf-cover-placeholder::before {
    content: "";
    display: block;
    width: 4rem;
    height: 4rem;
    background: url("../images/brand/miammap-logo-64.png") center / contain no-repeat;
}

.pf-public-page.pf-theme-brioude-pizza.pf-demo-public-page .pf-demo-cover-image {
    min-height: 290px;
}

.pf-public-page.pf-theme-brioude-pizza .pf-photo-title {
    top: auto;
    right: auto;
    bottom: 1rem;
    left: 1rem;
    max-width: calc(100% - 2rem);
    padding: 0.78rem 1rem 0.82rem;
    border: 1px solid rgba(243, 223, 184, 0.38);
    border-left: 5px solid #c59438;
    border-radius: 6px;
    background: var(--pf-photo-title-bg);
    color: #ffffff;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.12;
    text-shadow: none;
}

.pf-public-page.pf-theme-brioude-pizza .pf-photo-carousel .owl-nav button.owl-prev,
.pf-public-page.pf-theme-brioude-pizza .pf-photo-carousel .owl-nav button.owl-next,
.pf-public-page.pf-theme-brioude-pizza .pf-demo-photo-nav {
    width: 2.55rem;
    height: 2.55rem;
    border: 1px solid var(--pf-photo-nav-border) !important;
    border-radius: 6px;
    background: var(--pf-photo-nav-bg) !important;
    box-shadow: var(--pf-photo-nav-shadow);
    backdrop-filter: none;
}

.pf-public-page.pf-theme-brioude-pizza .pf-photo-carousel .owl-nav button.owl-prev:hover,
.pf-public-page.pf-theme-brioude-pizza .pf-photo-carousel .owl-nav button.owl-next:hover,
.pf-public-page.pf-theme-brioude-pizza .pf-demo-photo-nav:hover {
    background: var(--pf-photo-nav-bg-hover) !important;
    transform: translateY(-50%);
}

/* Hours and actions */
.pf-public-page.pf-theme-brioude-pizza .pf-status {
    display: flex;
    align-items: center;
    gap: 0.58rem;
    margin: 0 0 0.62rem;
    font-size: 1.3rem;
    font-weight: 700;
    line-height: 1.25;
}

.pf-public-page.pf-theme-brioude-pizza .pf-status::before {
    content: "";
    flex: 0 0 auto;
    width: 0.68rem;
    height: 0.68rem;
    border: 2px solid #eef1eb;
    border-radius: 50%;
    background: currentColor;
    box-shadow: 0 0 0 3px currentColor;
}

.pf-public-page.pf-theme-brioude-pizza .pf-today-slots-heading,
.pf-public-page.pf-theme-brioude-pizza .pf-today-slot-time,
.pf-public-page.pf-theme-brioude-pizza .pf-hours-slot-time {
    font-weight: 700;
}

.pf-public-page.pf-theme-brioude-pizza .pf-hours-weekly {
    margin-top: 0.9rem !important;
    padding-top: 0.8rem;
}

.pf-public-page.pf-theme-brioude-pizza .pf-hours-row {
    padding: 0.46rem 0;
    border-bottom-style: solid;
}

.pf-public-page.pf-theme-brioude-pizza .pf-hours-day {
    color: #746b66;
    font-weight: 500;
}

.pf-public-page.pf-theme-brioude-pizza .pf-hours-row.is-today .pf-hours-day {
    color: #536553;
    font-weight: 700;
}

.pf-public-page.pf-theme-brioude-pizza .btn {
    border-radius: 6px;
    font-weight: 700;
}

.pf-public-page.pf-theme-brioude-pizza .pf-hours-toggle {
    padding: 0.38rem 0.72rem;
    border: 1px solid #b9c5b7;
    border-radius: 6px;
    background: #fffdf9;
    color: #536553;
    font-size: 0.82rem;
}

.pf-public-page.pf-theme-brioude-pizza .pf-hours-toggle:hover,
.pf-public-page.pf-theme-brioude-pizza .pf-hours-toggle:focus {
    border-color: #536553;
    background: #e3e9e1;
    color: #30443a;
}

.pf-public-page.pf-theme-brioude-pizza .pf-phone-sticky-shell {
    width: 100%;
}

.pf-public-page.pf-theme-brioude-pizza .pf-phone-btn {
    width: 100%;
    min-height: 3.2rem;
    gap: 0.65rem;
    padding: 0.82rem 1.15rem;
    border: 1px solid #7a3445;
    border-bottom-color: #c59438;
    border-radius: 6px;
    background: #7a3445;
    color: #ffffff;
    box-shadow: var(--pf-phone-shadow);
    font-size: 1.08rem;
    font-weight: 700;
}

.pf-public-page.pf-theme-brioude-pizza .pf-phone-btn:hover,
.pf-public-page.pf-theme-brioude-pizza .pf-phone-btn:focus {
    border-color: #572633;
    border-bottom-color: #c59438;
    background: #572633;
    color: #ffffff;
    box-shadow: var(--pf-phone-shadow-hover);
}

.pf-public-page.pf-theme-brioude-pizza .pf-phone-btn.is-fixed {
    width: auto;
    min-width: min(20rem, calc(100vw - 1.56rem));
}

.pf-public-page.pf-theme-brioude-pizza .pf-phone-icon {
    width: 1.22em;
    height: 1.22em;
    transform: none;
}

.pf-public-page.pf-theme-brioude-pizza .pf-phone-number {
    font-weight: 700;
}

.pf-public-page.pf-theme-brioude-pizza .pf-route-actions {
    margin-top: 1rem;
}

.pf-public-page.pf-theme-brioude-pizza .pf-route-btn,
.pf-public-page.pf-theme-brioude-pizza .pf-site-btn,
.pf-public-page.pf-theme-brioude-pizza .pf-download-menu-btn {
    min-height: 2.45rem;
    padding: 0.45rem 0.8rem;
    border: 1px solid #7a3445;
    border-radius: 6px;
    background: #fffdf9;
    color: #7a3445;
    font-size: 0.84rem;
}

.pf-public-page.pf-theme-brioude-pizza .pf-route-btn:hover,
.pf-public-page.pf-theme-brioude-pizza .pf-route-btn:focus,
.pf-public-page.pf-theme-brioude-pizza .pf-site-btn:hover,
.pf-public-page.pf-theme-brioude-pizza .pf-site-btn:focus,
.pf-public-page.pf-theme-brioude-pizza .pf-download-menu-btn:hover,
.pf-public-page.pf-theme-brioude-pizza .pf-download-menu-btn:focus {
    border-color: #7a3445;
    background: #7a3445;
    color: #ffffff;
}

/* Fine local icons */
.pf-public-page.pf-theme-brioude-pizza .pf-icon-svg {
    display: block;
    overflow: visible;
    color: currentColor;
    stroke-width: 1.5 !important;
}

.pf-public-page.pf-theme-brioude-pizza .pf-service-type-icon-frame {
    width: 3.2rem;
    height: 3.2rem;
    border: 1px solid #e2cfa8;
    border-radius: 6px;
    background: #f3e6c9;
}

.pf-public-page.pf-theme-brioude-pizza .pf-service-type-icon {
    width: 1.85rem;
    height: 1.85rem;
    color: #7a3445;
}

.pf-public-page.pf-theme-brioude-pizza .pf-service-type {
    gap: 0.9rem;
    margin-bottom: 1rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid #e4dbd1;
}

.pf-public-page.pf-theme-brioude-pizza .pf-service-type-value {
    color: #211d1c;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.35;
}

.pf-public-page.pf-theme-brioude-pizza .pf-service-type-value small {
    color: #746b66;
    font-weight: 500;
}

.pf-public-page.pf-theme-brioude-pizza .pf-service-list {
    --bs-gutter-x: 1rem;
    --bs-gutter-y: 0.58rem;
}

.pf-public-page.pf-theme-brioude-pizza .pf-service-item {
    min-height: 2.35rem;
    gap: 0.72rem;
    padding: 0.2rem 0;
    color: #2e2927;
    font-size: 0.92rem;
    line-height: 1.35;
}

.pf-public-page.pf-theme-brioude-pizza .pf-service-icon {
    width: 1.75rem;
    height: 1.75rem;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #536553;
}

.pf-public-page.pf-theme-brioude-pizza .pf-services-extra {
    margin-top: 0.9rem;
    padding-top: 0.95rem;
    border-top: 1px solid #e4dbd1;
}

.pf-public-page.pf-theme-brioude-pizza .pf-social-actions {
    justify-content: center;
    gap: 0.6rem;
}

.pf-public-page.pf-theme-brioude-pizza .pf-social-btn {
    width: 2.45rem;
    height: 2.45rem;
    padding: 0.48rem;
    border: 1px solid #bdc8bb;
    border-radius: 6px;
    background: #fffdf9;
    color: #536553;
}

.pf-public-page.pf-theme-brioude-pizza .pf-social-btn:hover,
.pf-public-page.pf-theme-brioude-pizza .pf-social-btn:focus {
    border-color: #536553;
    background: #e3e9e1;
    color: #30443a;
    opacity: 1;
    transform: none;
}

.pf-public-page.pf-theme-brioude-pizza .pf-social-icon {
    width: 1.4rem;
    height: 1.4rem;
    color: currentColor;
}

/* Presentation */
.pf-public-page.pf-theme-brioude-pizza .pf-description-card-short.is-gap-fill {
    margin-top: 0;
}

.pf-public-page.pf-theme-brioude-pizza .pf-description-card-short.is-gap-fill .card-body::before {
    display: none;
}

.pf-public-page.pf-theme-brioude-pizza .pf-description-card {
    border-left: 4px solid #c59438;
    background: #fff9f1;
}

.pf-public-page.pf-theme-brioude-pizza .pf-description-card p {
    color: #4a423e;
    line-height: 1.7;
}

.pf-public-page.pf-theme-brioude-pizza .pf-description-card-short.is-side-positioned {
    width: 100%;
    margin-bottom: 0 !important;
}

.pf-public-page.pf-theme-brioude-pizza .pf-description-card-short.is-side-positioned-left {
    margin-top: 1rem !important;
}

.pf-public-page.pf-theme-brioude-pizza .pf-description-card-short.is-side-positioned-right {
    margin-top: 0 !important;
}

.pf-public-page.pf-theme-brioude-pizza .pf-description-card-short p {
    font-weight: 500;
}

/* Menu */
.pf-public-page.pf-theme-brioude-pizza .pf-menu-heading-row {
    display: grid;
    grid-template-columns: auto auto minmax(2rem, 1fr);
    align-items: center;
    justify-content: stretch;
    gap: 0.85rem;
    margin-top: 1.2rem;
    margin-bottom: 1rem;
    text-align: left;
}

.pf-public-page.pf-theme-brioude-pizza .pf-menu-heading-row::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background: #d9c9b6;
}

.pf-public-page.pf-theme-brioude-pizza .pf-menu-heading-icon {
    width: 2.9rem;
    height: 2.9rem;
    padding: 0.57rem;
    border: 1px solid #e2cfa8;
    border-radius: 6px;
    background: #f3e6c9;
    color: #7a3445;
}

.pf-public-page.pf-theme-brioude-pizza .pf-menu-heading-title {
    color: #40232d;
    font-size: 1.55rem;
    font-weight: 700;
    line-height: 1.25;
}

.pf-public-page.pf-theme-brioude-pizza .pf-menu-summary-card {
    border-top: 3px solid #7a3445;
}

.pf-public-page.pf-theme-brioude-pizza .pf-menu-summary-card > .card-body {
    padding: 1.75rem;
}

.pf-public-page.pf-theme-brioude-pizza .wizard-subtitle {
    margin-top: 1.85rem;
    color: #40232d;
    font-size: 1.08rem;
    font-weight: 700;
    text-align: left;
}

.pf-public-page.pf-theme-brioude-pizza .wizard-pizza-summary-list > .wizard-subtitle:first-child,
.pf-public-page.pf-theme-brioude-pizza .ft-public-menu-section > .wizard-subtitle {
    margin-top: 0;
}

.pf-public-page.pf-theme-brioude-pizza .wizard-pizza-summary-item,
.pf-public-page.pf-theme-brioude-pizza .ft-public-menu-item {
    padding-top: 0.58rem;
    padding-bottom: 0.92rem;
}

.pf-public-page.pf-theme-brioude-pizza .wizard-pizza-name,
.pf-public-page.pf-theme-brioude-pizza .ft-public-menu-formula-title {
    color: #211d1c;
    font-weight: 700;
}

.pf-public-page.pf-theme-brioude-pizza .wizard-pizza-ingredients,
.pf-public-page.pf-theme-brioude-pizza .wizard-pizza-note,
.pf-public-page.pf-theme-brioude-pizza .ft-public-menu-formula-note,
.pf-public-page.pf-theme-brioude-pizza .ft-public-menu-formula-section p {
    color: #746b66;
}

.pf-public-page.pf-theme-brioude-pizza .ft-public-menu-badges .badge {
    padding: 0.27rem 0.44rem;
    border: 1px solid #bdc8bb;
    border-radius: 3px;
    background: #e7ece5 !important;
    color: #465a48 !important;
    font-size: 0.7rem;
    font-weight: 700;
}

.pf-public-page.pf-theme-brioude-pizza .wizard-pizza-name .badge {
    padding: 0.27rem 0.44rem;
    border: 1px solid #e4c9c2;
    border-radius: 3px;
    background: #f3e8e4 !important;
    color: #7a3445 !important;
    font-size: 0.68rem;
    font-weight: 700;
}

.pf-public-page.pf-theme-brioude-pizza .wizard-pizza-cell-price,
.pf-public-page.pf-theme-brioude-pizza .ft-public-menu-price strong,
.pf-public-page.pf-theme-brioude-pizza .ft-public-menu-formula-price,
.pf-public-page.pf-theme-brioude-pizza .ft-public-menu-tariff strong,
.pf-public-page.pf-theme-brioude-pizza .ft-public-menu-choice-supplement {
    color: #7a3445;
    font-weight: 700;
}

.pf-public-page.pf-theme-brioude-pizza .ft-public-menu-formula {
    padding: 1rem 0;
    border: 0;
    border-top: 1px solid #dfd5ca;
    border-radius: 0;
    background: transparent;
}

.pf-public-page.pf-theme-brioude-pizza .ft-public-menu-formula:last-child {
    border-bottom: 1px solid #dfd5ca;
}

.pf-public-page.pf-theme-brioude-pizza .ft-public-menu-formula.is-fixed-complete-menu {
    text-align: left;
}

.pf-public-page.pf-theme-brioude-pizza .ft-public-menu-formula.is-fixed-complete-menu .ft-public-menu-fixed-title-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.8rem;
    align-items: baseline;
    justify-content: stretch;
}

.pf-public-page.pf-theme-brioude-pizza .ft-public-menu-formula.is-fixed-complete-menu .ft-public-menu-formula-sections {
    justify-items: stretch;
}

.pf-public-page.pf-theme-brioude-pizza .ft-public-menu-formula.is-fixed-complete-menu .ft-public-menu-formula-section {
    width: 100%;
    padding-left: 0.9rem;
    border-left: 3px solid #e2cfa8;
    justify-items: start;
}

.pf-public-page.pf-theme-brioude-pizza .ft-public-menu-formula.is-fixed-complete-menu .ft-public-menu-formula-section ul {
    width: 100%;
    padding-left: 0;
}

.pf-public-page.pf-theme-brioude-pizza .ft-public-menu-formula.is-fixed-complete-menu .ft-public-menu-formula-section li {
    justify-content: flex-start;
    text-align: left;
}

.pf-public-page.pf-theme-brioude-pizza .ft-public-menu-formula.is-fixed-complete-menu .ft-public-menu-tariff strong {
    justify-self: end;
}

.pf-public-page.pf-theme-brioude-pizza .pf-field,
.pf-public-page.pf-theme-brioude-pizza .pf-mini-box {
    border: 1px solid #ddd4ca;
    border-radius: 6px;
    background: #f3f0ea;
}

.pf-public-page.pf-theme-brioude-pizza .pf-field {
    padding: 0.72rem 0.8rem;
    margin-bottom: 0.72rem;
}

.pf-public-page.pf-theme-brioude-pizza .pf-mini-box {
    min-height: 2.45rem;
    font-weight: 700;
}

.pf-public-page.pf-theme-brioude-pizza .pf-mini-head {
    background: #e7ece5;
    color: #30443a;
}

.pf-public-page.pf-theme-brioude-pizza .pf-post-menu-links {
    padding-top: 0;
}

.pf-public-page.pf-theme-brioude-pizza .pf-post-menu-links > .card-body {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
}

.pf-public-page.pf-theme-brioude-pizza .pf-description-content {
    gap: 1rem;
}

.pf-public-page.pf-theme-brioude-pizza .pf-description-content h2,
.pf-public-page.pf-theme-brioude-pizza .pf-description-content h3 {
    color: #40232d;
    font-weight: 700;
}

/* Footer and modal */
.pf-public-page.pf-theme-brioude-pizza .gp-site-footer {
    margin-top: 2.5rem !important;
    border-top: 4px solid #c59438 !important;
    background: #30443a !important;
    color: #ffffff;
}

.pf-public-page.pf-theme-brioude-pizza .gp-site-footer .gp-footer-inner {
    padding-top: 2rem !important;
    padding-bottom: 1.65rem !important;
}

.pf-public-page.pf-theme-brioude-pizza .gp-site-footer .text-dark,
.pf-public-page.pf-theme-brioude-pizza .gp-site-footer .fw-bold {
    color: #ffffff !important;
}

.pf-public-page.pf-theme-brioude-pizza .gp-site-footer .text-secondary,
.pf-public-page.pf-theme-brioude-pizza .gp-site-footer .link-secondary {
    color: #d4ddd6 !important;
}

.pf-public-page.pf-theme-brioude-pizza .gp-site-footer a.link-secondary:hover,
.pf-public-page.pf-theme-brioude-pizza .gp-site-footer a.link-secondary:focus {
    color: #f3dfb8 !important;
}

.pf-public-page.pf-theme-brioude-pizza .gp-site-footer .gp-footer-legal,
.pf-public-page.pf-theme-brioude-pizza .gp-site-footer .border-top {
    border-color: rgba(255, 255, 255, 0.14) !important;
}

.pf-public-page.pf-theme-brioude-pizza .modal-content {
    overflow: hidden;
    border: 1px solid #ddd4ca;
    border-radius: 8px;
    box-shadow: 0 20px 50px rgba(45, 31, 35, 0.22);
}

.pf-public-page.pf-theme-brioude-pizza .modal-header,
.pf-public-page.pf-theme-brioude-pizza .modal-footer {
    border-color: #ddd4ca;
}

.pf-public-page.pf-theme-brioude-pizza .public-page-report-choice-label {
    border-color: #ddd4ca;
    border-radius: 6px;
    color: #211d1c;
}

.pf-public-page.pf-theme-brioude-pizza .public-page-report-choice-label:hover {
    border-color: #c9bdb1;
    background: #f3f0ea;
}

.pf-public-page.pf-theme-brioude-pizza .public-page-report-choice-input:focus-visible + .public-page-report-choice-label {
    box-shadow: 0 0 0 0.2rem rgba(197, 148, 56, 0.22);
}

.pf-public-page.pf-theme-brioude-pizza .public-page-report-choice-input:checked + .public-page-report-choice-label {
    border-color: #7a3445;
    background: #f3e8e4;
    box-shadow: none;
}

@media (max-width: 991.98px) {
    .pf-public-page.pf-theme-brioude-pizza > main.container-xl {
        padding-right: 1.1rem;
        padding-left: 1.1rem;
    }

    .pf-public-page.pf-theme-brioude-pizza .pf-phone-btn.is-fixed {
        width: auto;
    }
}

@media (max-width: 767.98px) {
    .pf-public-page.pf-theme-brioude-pizza > main.container-xl {
        padding-top: 1.2rem !important;
        padding-bottom: 1.9rem !important;
    }

    .pf-public-page.pf-theme-brioude-pizza .pf-photo-wrap,
    .pf-public-page.pf-theme-brioude-pizza .pf-photo-carousel,
    .pf-public-page.pf-theme-brioude-pizza .pf-photo-carousel .owl-stage-outer,
    .pf-public-page.pf-theme-brioude-pizza .pf-photo-carousel .owl-stage,
    .pf-public-page.pf-theme-brioude-pizza .pf-photo-carousel .owl-item,
    .pf-public-page.pf-theme-brioude-pizza .pf-photo-carousel .pf-carousel-item,
    .pf-public-page.pf-theme-brioude-pizza .pf-cover-image,
    .pf-public-page.pf-theme-brioude-pizza .pf-cover-placeholder,
    .pf-public-page.pf-theme-brioude-pizza.pf-demo-public-page .pf-demo-cover-image {
        min-height: 225px;
    }

    .pf-public-page.pf-theme-brioude-pizza .pf-photo-title {
        right: 0.75rem;
        bottom: 0.75rem;
        left: 0.75rem;
        max-width: none;
        padding: 0.72rem 0.82rem;
        font-size: 1.4rem;
    }

    .pf-public-page.pf-theme-brioude-pizza .pf-hours-card > .card-body,
    .pf-public-page.pf-theme-brioude-pizza .pf-info-card > .card-body,
    .pf-public-page.pf-theme-brioude-pizza .pf-description-card > .card-body,
    .pf-public-page.pf-theme-brioude-pizza .pf-menu-summary-card > .card-body,
    .pf-public-page.pf-theme-brioude-pizza .pf-empty > .card-body {
        padding: 1.25rem;
    }

    .pf-public-page.pf-theme-brioude-pizza .pf-labelled-card > .card-body {
        padding-top: 1.25rem;
    }
}

@media (max-width: 575.98px) {
    .pf-public-page.pf-theme-brioude-pizza .pf-topbar {
        padding-top: 0.48rem !important;
        padding-bottom: 0.48rem !important;
    }

    .pf-public-page.pf-theme-brioude-pizza .pf-top-logo {
        width: 40px;
        height: 40px;
    }

    .pf-public-page.pf-theme-brioude-pizza .pf-important-item {
        padding-top: 0.42rem;
        padding-bottom: 0.42rem;
        font-size: 0.75rem;
    }

    .pf-public-page.pf-theme-brioude-pizza .pf-important-marquee.is-static .pf-important-track {
        display: flex;
        width: 100%;
        white-space: normal;
    }

    .pf-public-page.pf-theme-brioude-pizza .pf-important-marquee.is-static .pf-important-item {
        justify-content: center;
        width: 100%;
        line-height: 1.4;
    }

    .pf-public-page.pf-theme-brioude-pizza .pf-status {
        font-size: 1.15rem;
    }

    .pf-public-page.pf-theme-brioude-pizza .pf-phone-btn {
        min-height: 3rem;
        font-size: 1rem;
    }

    .pf-public-page.pf-theme-brioude-pizza .pf-phone-btn.is-fixed {
        right: 0.65rem;
        left: 0.65rem;
        width: calc(100vw - 1.3rem);
        min-width: 0;
        max-width: none;
    }

    .pf-public-page.pf-theme-brioude-pizza .pf-menu-heading-row {
        grid-template-columns: auto minmax(0, 1fr);
        gap: 0.68rem;
    }

    .pf-public-page.pf-theme-brioude-pizza .pf-menu-heading-row::after {
        display: none;
    }

    .pf-public-page.pf-theme-brioude-pizza .pf-menu-heading-icon {
        width: 2.5rem;
        height: 2.5rem;
        padding: 0.48rem;
    }

    .pf-public-page.pf-theme-brioude-pizza .pf-menu-heading-title {
        min-width: 0;
        font-size: 1.14rem;
        overflow-wrap: anywhere;
    }

    .pf-public-page.pf-theme-brioude-pizza .pf-service-type-icon-frame {
        width: 2.85rem;
        height: 2.85rem;
    }

    .pf-public-page.pf-theme-brioude-pizza .pf-service-type-icon {
        width: 1.65rem;
        height: 1.65rem;
    }

    .pf-public-page.pf-theme-brioude-pizza .pf-menu-summary-card > .card-body {
        padding: 1.1rem;
    }

    .pf-public-page.pf-theme-brioude-pizza .gp-site-footer .gp-footer-inner {
        padding-top: 1.65rem !important;
    }
}
