#plato-header { height: auto !important; position: fixed; top: 0; left: 0; width: 100%; z-index: 1000; }
#plato-header .navbar { min-height: 72px; position: relative !important; top: 0 !important; width: 100%; background: rgba(28, 34, 38, 0.85); border: 0; }
#plato-header .above_top_bar { position: relative; }
#plato-header .navbar > .container {
    width: 100%; max-width: 1320px; padding: 0 32px; margin: auto;
    display: grid; grid-template-columns: 180px minmax(0, 1fr) 102px;
    align-items: center; gap: 20px; min-height: 72px;
}
#plato-header .navbar::before,
#plato-header .navbar::after,
#plato-header .navbar-header::before,
#plato-header .navbar-header::after,
#plato-header .navbar > .container::before,
#plato-header .navbar > .container::after { display: none; }
#plato-header .navbar-header { display: contents; }
#plato-header .navbar-brand { grid-column: 1; grid-row: 1; float: none; margin: 0; padding: 12px 0 !important; }
#plato-header .navbar-brand img { width: auto !important; height: auto !important; max-width: 180px !important; max-height: 48px !important; border-radius: 0; object-fit: contain; }
#plato-header .navbar-collapse { grid-column: 2; grid-row: 1; padding: 0; }
.plato-header-contact { grid-column: 3; grid-row: 1; display: flex; align-items: center; justify-content: flex-end; gap: 14px; }
#plato-header .plato-contact-button {
    display: inline-flex; align-items: center; justify-content: center;
    box-sizing: border-box; flex: 0 0 44px; width: 44px; height: 44px;
    border: 1px solid currentColor; border-radius: 50%;
    color: var(--classic-color-1, #ff5968); transition: background-color .2s ease;
}
#plato-header .plato-contact-button--whatsapp { color: #25d366; }
#plato-header .plato-contact-button i { font-size: 22px; color: inherit; }
#plato-header .plato-contact-button:hover { background: var(--classic-color-1, #ff5968); }
#plato-header .plato-contact-button--whatsapp:hover { background: #25d366; }
#plato-header .plato-contact-button:hover i { color: #fff; }
#plato-header .plato-contact-button:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
#carousel-home .center.margin-top-15 { display: inline-flex; margin-right: 12px; margin-top: 16px; }
@media (min-width: 768px) {
    #plato-header .navbar-nav { display: flex; justify-content: center; align-items: center; float: none !important; margin: 0; }
    #plato-header .navbar-nav > li > a { padding: 23px 14px; font: 500 22px/26px 'Alumni Sans', Lato, Helvetica, Arial, sans-serif; white-space: nowrap; }
    #plato-header .navbar-nav > li > a::before { display: none; }
    #plato-header .navbar-nav > .plato-mobile-action { display: none; }
}
@media (max-width: 991px) and (min-width: 768px) {
    #plato-header .navbar-brand img { max-width: 160px !important; }
    #plato-header .navbar > .container { padding: 0 20px; gap: 10px; grid-template-columns: 160px minmax(0, 1fr); }
    #plato-header .navbar-nav > li > a { padding: 23px 8px; font-size: 12px; }
}
@media (max-width: 767px) {
    #plato-header .navbar > .container { grid-template-columns: minmax(0, 1fr) auto auto; gap: 0 20px; min-height: 72px; padding: 0 20px; }
    #plato-header .navbar-brand { padding: 12px 0 !important; }
    #plato-header .plato-header-contact { grid-column: 2; }
    #plato-header .navbar-toggle { grid-column: 3; grid-row: 1; margin: 0; float: none; }
    #plato-header .navbar-toggle .icon-bar { background: #fff; }
    #plato-header .navbar-collapse { grid-column: 1 / -1; grid-row: 2; width: 100%; margin: 0; }
}

/* Use the platform font for desktop, submenus and mobile navigation. */
#plato-header .navbar-nav a { font-family: 'Alumni Sans', Lato, Helvetica, Arial, sans-serif; }

#plato-header .navbar-nav > li > a { font-size: 22px; line-height: 26px; }

/* Keep the video and its caption in one normal-flow banner above the service tiles. */
#carousel-home[data-banner-type="video"] {
    padding-top: var(--plato-header-height, 112px);
}
#carousel-home .header-video {
    position: relative;
    overflow: hidden;
    width: 100% !important;
    height: clamp(440px, calc(100vh - var(--plato-header-height, 112px)), 800px) !important;
}
#carousel-home .header-video video {
    width: 100%; height: 100%; object-fit: cover;
}
#carousel-home .header-video--media { display: none; }
#carousel-home #hero_video .opacity-mask {
    display: flex; align-items: center; justify-content: center;
    padding: 32px 20px;
    background: rgba(0, 0, 0, .35);
}
#carousel-home #hero_video .container { width: 100%; margin: 0 auto; }
#carousel-home #hero_video .row {
    display: flex; justify-content: center; text-align: center; margin: 0;
}
#carousel-home #hero_video .row > div {
    float: none; width: 100%; max-width: 960px; margin: 0 auto;
}

/* Allow the logo to share narrow headers with contact buttons and the menu toggle. */
@media (max-width: 767px) {
    #plato-header .navbar-brand { min-width: 0; }
    #plato-header .navbar-brand img { max-width: min(180px, 100%) !important; }
}

/* Keep appearance controls on the header row and in the mobile menu. */
#plato-header .navbar > .container { grid-template-columns: 150px minmax(0, 1fr) auto; gap: 12px; }
#plato-header .plato-header-controls { grid-column: 3; grid-row: 1; display: flex; align-items: center; gap: 12px; }
#plato-header .plato-mobile-tone { display: none; }
#plato-header[data-tone="light"] .navbar { background: #fff; }
/* The legacy theme forces white menu text with !important in both palettes. */
#plato-header[data-tone="light"] .navbar-nav > li > a { color: #222 !important; }
#plato-header[data-tone="light"] .navbar-nav > li > a:hover,
#plato-header[data-tone="light"] .navbar-nav > li > a:focus,
#plato-header[data-tone="light"] .navbar-nav > li > a.active,
#plato-header[data-tone="light"] .navbar-nav > li.active > a { color: var(--classic-color-1, #c73535) !important; }
@media (max-width: 1200px) and (min-width: 768px) {
    #plato-header .navbar > .container { grid-template-columns: 110px minmax(0, 1fr) auto; padding-inline: 16px; gap: 8px; }
    #plato-header .navbar-nav > li > a { padding-inline: 7px; font-size: 18px; }
    #plato-header .navbar-brand img { max-width: 110px !important; }
    #plato-header .plato-header-controls { gap: 6px; }
    #plato-header .plato-header-contact { gap: 6px; }
    #plato-header .plato-contact-button { flex-basis: 34px; width: 34px; height: 34px; }
}
@media (max-width: 767px) {
    #plato-header .navbar > .container { grid-template-columns: minmax(0, 1fr) auto auto; }
    #plato-header .plato-header-controls { grid-column: 2; }
    #plato-header .plato-header-controls > .restaurant-tone-switch { display: none; }
    #plato-header .plato-mobile-tone { display: block; padding: 16px 20px; }
    #plato-header[data-tone="light"] .navbar-toggle .icon-bar { background: #222; }
}
