.page-title.style-2.nik5-hero {
    display: flex;
    align-items: center;
    min-height: 790px;
    padding: 265px 0 145px;
    overflow: hidden;
    isolation: isolate;
    background-image: url("../images/nik5/locale-cocktail.jpg");
    background-position: center 53%;
    background-size: cover;
}

.page-title.style-2.nik5-hero::before {
    z-index: -1;
    background: linear-gradient(90deg, rgba(22, 18, 15, .83) 0%, rgba(22, 18, 15, .62) 49%, rgba(22, 18, 15, .25) 100%);
    opacity: 1;
}

.nik5-hero .content {
    max-width: 900px;
    margin: 0 auto;
}

.nik5-hero .nik5-hero-mark {
    display: inline-block;
    margin: 0 auto 13px;
    color: #fff;
    font-family: "CormorantInfant", Georgia, serif;
    font-size: 37px;
    font-weight: 700;
    letter-spacing: 1px;
    line-height: 1;
}

.nik5-hero .nik5-hero-mark span {
    color: var(--Primary);
    font-style: italic;
}

.nik5-hero .content .sub-title {
    margin: 0 0 12px;
    color: #e3bd7a;
    font-family: "DM Sans", sans-serif;
    font-size: 11px;
    font-style: normal;
    font-weight: 600;
    letter-spacing: 2.2px;
}

.nik5-hero .content .title {
    margin: 0 0 22px;
    font-family: "CormorantInfant", Georgia, serif;
    font-size: clamp(48px, 7vw, 82px);
    font-weight: 600;
    letter-spacing: 4px;
    line-height: .98;
    text-shadow: 0 3px 22px rgba(0, 0, 0, .22);
}

.nik5-hero .content .under-line {
    max-width: 185px;
    margin: 0 auto 20px;
    opacity: .85;
}

.nik5-hero-copy {
    max-width: 470px;
    margin: 0 auto 25px;
    color: rgba(255, 255, 255, .88);
    font-size: 15px;
    line-height: 1.8;
}

.nik5-hero-actions {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 25px;
    margin-bottom: 30px;
}

.nik5-hero-actions .tf-btn {
    margin: 0 !important;
    transition: transform .25s ease, box-shadow .25s ease;
}

.nik5-hero-actions .tf-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 9px 25px rgba(0, 0, 0, .22);
}

.nik5-hero-phone {
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .3px;
    transition: color .2s ease;
}

.nik5-hero-phone i {
    margin-right: 7px;
    color: var(--Primary);
}

.nik5-hero-phone:hover {
    color: var(--Primary);
}

.nik5-hero .content .breadcrumbs {
    color: rgba(255, 255, 255, .8);
}

.nik5-hero .content .breadcrumbs li {
    font-size: 10px;
    letter-spacing: 1.5px;
}

.nik5-hero .content .breadcrumbs li:last-child {
    text-decoration: none;
}

.nik5-categories .our-menu-item .wrap-image {
    height: 480px;
    border-radius: 200px 200px 0 0;
}

.nik5-categories .our-menu-item .wrap-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .8s cubic-bezier(.2, .7, .2, 1);
}

.nik5-categories .our-menu-item:hover .wrap-image img,
.nik5-categories .our-menu-item:focus-within .wrap-image img {
    transform: scale(1.055);
}

.nik5-categories .our-menu-item .content {
    background: rgba(31, 30, 30, .94);
}

.nik5-categories .our-menu-item:focus-within .content {
    transform: scale(1);
    opacity: 1;
    visibility: visible;
}

.section-menu .wrap-menu-item {
    margin-left: 0;
}

.section-menu .wg-menu-item .wrap-image {
    display: none;
}

.section-menu .wg-menu-item .content {
    margin-right: 0;
}

.section-menu .wg-menu-item .content .top h4 {
    flex-shrink: 0;
    max-width: 72%;
    font-size: 17px;
}

.section-menu .wg-menu-item .content .top .price {
    flex-shrink: 0;
}

.nik5-location-image {
    border: 9px solid rgba(255, 255, 255, .75);
    box-shadow: 0 18px 45px rgba(59, 45, 33, .13);
}

.nik5-location-image a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
}

.nik5-location-image a::after {
    position: absolute;
    inset: 45% 0 0;
    content: "";
    background: linear-gradient(transparent, rgba(24, 20, 17, .7));
}

.nik5-location-image a img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .7s ease;
}

.nik5-location-image a:hover img {
    transform: scale(1.045);
}

.nik5-location-image a span {
    position: absolute;
    z-index: 1;
    right: 22px;
    bottom: 20px;
    left: 22px;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.7px;
}

.nik5-location-image a span i {
    margin-right: 8px;
    color: var(--Primary);
}

.section-location.page-contact-us {
    background-color: #f7f2eb;
    background-image: linear-gradient(135deg, #faf7f2 0%, #eee5da 100%);
}

.nik5-events {
    background: #f7f2eb;
}

.nik5-events .heading-section {
    margin-bottom: 42px;
}

.nik5-events-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px;
}

.nik5-event-card {
    overflow: hidden;
    background: #fff;
    box-shadow: 0 12px 35px rgba(59, 45, 33, .09);
}

.nik5-event-card-image {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
}

.nik5-event-card-content {
    padding: 24px 26px 28px;
}

.nik5-event-date {
    display: block;
    margin-bottom: 10px;
    color: #a77a34;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.nik5-event-title {
    margin: 0 0 12px;
    color: #292522;
    font-family: "CormorantInfant", Georgia, serif;
    font-size: 27px;
    line-height: 1.15;
}

.nik5-event-description {
    margin: 0;
    color: #68615b;
    font-size: 14px;
    line-height: 1.75;
    white-space: pre-line;
}

.nik5-events-message {
    grid-column: 1 / -1;
    margin: 0;
    padding: 30px;
    color: #68615b;
    text-align: center;
}

.nik5-hero-phone:focus-visible,
.nik5-hero-actions .tf-btn:focus-visible,
.nik5-location-image a:focus-visible {
    outline: 2px solid var(--Primary);
    outline-offset: 4px;
}

@media (max-width: 991px) {
    .page-title.style-2.nik5-hero {
        min-height: 690px;
        padding: 225px 0 110px;
    }

    .nik5-categories .our-menu-item .wrap-image {
        height: 390px;
    }

    .nik5-events-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .page-title.style-2.nik5-hero {
        min-height: 650px;
        padding: 185px 0 85px;
        background-position: 56% center;
    }

    .page-title.style-2.nik5-hero::before {
        background: linear-gradient(90deg, rgba(22, 18, 15, .76), rgba(22, 18, 15, .44));
    }

    .nik5-hero .content .title {
        font-size: clamp(44px, 12vw, 64px);
        letter-spacing: 2px;
    }

    .nik5-hero .content .breadcrumbs {
        flex-wrap: wrap;
        row-gap: 0;
    }

    .nik5-hero .content .breadcrumbs li {
        font-size: 9px;
    }

    .nik5-categories .our-menu-item .wrap-image {
        height: min(118vw, 500px);
        border-radius: 190px 190px 0 0;
    }

    .nik5-location-image {
        width: min(100%, 409px);
        margin-right: auto;
    }

    .nik5-events-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .nik5-event-card-content {
        padding: 21px 22px 24px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .nik5-categories .our-menu-item .wrap-image img,
    .nik5-location-image a img,
    .nik5-hero-actions .tf-btn {
        transition: none;
    }
}


.page-title.style-2.nik5-hero {
    background-image: url(../images/nik5/facciata.jpg);
    background-position: center 36%;
    background-size: cover;
}

.nik5-map {
    line-height: 0;
    background: #eee5da;
}

.nik5-map iframe {
    display: block;
    width: 100%;
    height: 450px;
    filter: saturate(.85);
}

@media (max-width: 767px) {
    .nik5-map iframe {
        height: 320px;
    }
}

.main-content:has(.nik5-map) {
    padding-bottom: 0 !important;
}

.footer .footer-menu-list a {
    color: #fff;
}

.footer .footer-menu-list a:hover {
    color: var(--Primary);
}

/* Menu completo */
.nik5-fullmenu { padding-bottom: 20px; background: linear-gradient(180deg, #fff 0%, #f8f3ec 100%); }
.nik5-fullmenu [hidden] { display: none !important; }
.nik5-fullmenu .ico { font-style: normal; }

.nik5-menu-controls { max-width: 1040px; margin: 0 auto; }
.nik5-tabs { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; padding: 4px 4px 14px; }
.nik5-tab {
    display: inline-flex; align-items: center; gap: 8px; padding: 10px 18px;
    border: 1px solid #e3d6c3; border-radius: 999px; background: #fff; color: #3a2f26;
    font: 600 14px/1 "DM Sans", sans-serif; white-space: nowrap; cursor: pointer;
    transition: transform .25s ease, box-shadow .25s ease, background .25s ease, color .25s ease, border-color .25s ease;
}
.nik5-tab .ico { font-size: 17px; line-height: 1; }
.nik5-tab:hover { transform: translateY(-2px); border-color: #c8963e; }
.nik5-tab:focus-visible { outline: 2px solid #c8963e; outline-offset: 3px; }
.nik5-tab.is-active { background: #1f1a16; border-color: #1f1a16; color: #fff; box-shadow: 0 10px 24px rgba(31, 26, 22, .24); transform: translateY(-2px); }

.nik5-panels { max-width: 980px; margin: 26px auto 0; }
.nik5-panel {
    margin: 0 0 22px; overflow: hidden; border-radius: 18px; background: #fff;
    box-shadow: 0 22px 60px rgba(59, 45, 33, .10);
}
.nik5-panel.is-active { animation: nikPanelIn .5s cubic-bezier(.22, .8, .3, 1) both; }
.nik5-panel-banner { position: relative; height: 210px; background-size: cover; }
.nik5-panel-banner::after { position: absolute; inset: 0; content: ""; background: linear-gradient(180deg, rgba(22, 18, 15, .05) 0%, rgba(22, 18, 15, .72) 100%); }
.nik5-panel-banner h3 {
    position: absolute; z-index: 1; right: 28px; bottom: 20px; left: 28px; margin: 0; color: #fff;
    font-family: "CormorantInfant", Georgia, serif; font-size: 40px; font-weight: 700; letter-spacing: 3px; text-transform: uppercase;
    text-shadow: 0 2px 14px rgba(0, 0, 0, .35);
}
.nik5-panel-banner h3::after { display: block; width: 56px; height: 3px; margin-top: 10px; content: ""; background: #d2a452; border-radius: 2px; }
.nik5-panel-banner h3 .ico { margin-right: 6px; font-size: 30px; }

.nik5-menu-body { padding: 10px 24px 30px; }
.nik5-menu-sub {
    display: flex; align-items: baseline; margin: 26px 0 6px; padding: 0 16px; color: #8a3b2e;
    font: 700 13px "DM Sans", sans-serif; letter-spacing: 1.8px; text-transform: uppercase;
}
.nik5-menu-sub > span:first-child { flex: 1; }
.nik5-menu-sub > span:first-child::before { display: inline-block; width: 22px; height: 2px; margin-right: 10px; vertical-align: middle; content: ""; background: #d2a452; }
.nik5-menu-sub .nik5-col, .nik5-two .nik5-mi-price { width: 86px; text-align: right; }
.nik5-menu-sub .nik5-col { color: #8f8578; font-size: 11px; font-weight: 500; letter-spacing: .8px; }

.nik5-menu-list { margin: 8px 0 0; padding: 0; list-style: none; }
.nik5-mi { padding: 11px 16px; border-radius: 12px; transition: background .2s ease, transform .2s ease; }
.nik5-panel.is-active .nik5-mi { animation: nikRise .5s ease both; animation-delay: var(--d, 0ms); }
.nik5-mi:hover { background: #faf4e9; transform: translateX(5px); }
.nik5-mi-top { display: flex; align-items: baseline; gap: 10px; }
.nik5-mi-name { color: #1f1a16; font-size: 15px; font-weight: 500; }
.nik5-mi-dots { flex: 1; min-width: 14px; border-bottom: 1px dotted #cfc4b3; transform: translateY(-4px); }
.nik5-mi-price {
    padding: 2px 11px; border-radius: 999px; background: #f6ecd9; color: #7a5416;
    font-family: "CormorantInfant", Georgia, serif; font-size: 18px; font-weight: 700; white-space: nowrap; text-align: right;
}
.nik5-mi-price:empty { padding: 0; background: none; }
.nik5-two .nik5-mi-price { padding: 0; background: none; color: #1f1a16; }
.nik5-two .nik5-mi-dots { display: none; }
.nik5-two .nik5-mi-name { flex: 1; }
.nik5-mi-desc { margin: 4px 0 0; color: #77695a; font-size: 13px; font-style: italic; line-height: 1.5; }
.nik5-menu-note { margin: 16px 16px 0; color: #77695a; font-size: 13px; font-style: italic; }
.nik5-menu-foot { margin: 26px auto 0; }

@media (min-width: 992px) {
    .nik5-menu-list:not(.nik5-two) { column-count: 2; column-gap: 36px; }
    .nik5-menu-list:not(.nik5-two) .nik5-mi { break-inside: avoid; }
}

@media (max-width: 767px) {
    .nik5-tabs { flex-wrap: nowrap; justify-content: flex-start; overflow-x: auto; scroll-snap-type: x proximity; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
    .nik5-tabs::-webkit-scrollbar { display: none; }
    .nik5-tab { scroll-snap-align: start; padding: 9px 15px; font-size: 13px; }
    .nik5-panel-banner { height: 150px; }
    .nik5-panel-banner h3 { right: 18px; bottom: 14px; left: 18px; font-size: 28px; letter-spacing: 2px; }
    .nik5-panel-banner h3 .ico { font-size: 22px; }
    .nik5-menu-body { padding: 4px 8px 20px; }
    .nik5-mi { padding: 10px 10px; }
    .nik5-menu-sub { padding: 0 10px; }
    .nik5-menu-sub .nik5-col, .nik5-two .nik5-mi-price { width: 64px; }
}

@keyframes nikPanelIn { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }
@keyframes nikRise { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }

@media (prefers-reduced-motion: reduce) {
    .nik5-panel.is-active, .nik5-panel.is-active .nik5-mi { animation: none; }
    .nik5-tab, .nik5-mi { transition: none; }
}



/* Rifinitura generale */
html { scroll-behavior: smooth; scroll-padding-top: 84px; }
body { overflow-x: hidden; }

.nik5-skip {
    position: absolute; top: -64px; left: 12px; z-index: 10000; padding: 10px 16px;
    border-radius: 6px; background: #fff; color: #1f1a16; font: 600 14px "DM Sans", sans-serif;
    transition: top .2s ease;
}
.nik5-skip:focus { top: 12px; }

.nik5-logo {
    display: inline-block; color: #fff; font-family: "CormorantInfant", Georgia, serif;
    font-size: 38px; font-weight: 700; letter-spacing: 1px; line-height: 1;
}
.nik5-logo span { color: #d2a452; }
.nik5-logo.nik5-logo-dark { color: #fff; font-size: 34px; }

.nik5-hero .content .title span { display: block; }
.page-title.style-2.nik5-hero::before {
    background: linear-gradient(180deg, rgba(22, 18, 15, .62) 0%, rgba(22, 18, 15, .58) 40%, rgba(22, 18, 15, .78) 100%);
}
.nik5-hero .content { text-shadow: 0 2px 18px rgba(0, 0, 0, .35); }

.tf-top-bar .list-sosial a { color: #fff; }
.header .mobile-button { border: 0; background: none; padding: 0; color: inherit; cursor: pointer; }

.our-menu-item .wrap-image { display: block; }
.our-menu-item .wrap-image img { transition: transform .6s ease; }
.our-menu-item:hover .wrap-image img { transform: scale(1.05); }
.our-menu-item .content .title a:hover { color: #c8963e; }

.nik5-events-empty { max-width: 560px; margin: 0 auto; text-align: center; }
.nik5-events-empty .nik5-events-message { margin-bottom: 22px; }

.nik5-callbar { display: none; }

a:focus-visible, button:focus-visible { outline: 2px solid #c8963e; outline-offset: 3px; }

@media (max-width: 767px) {
    .tf-top-bar { display: none; }
    .nik5-callbar {
        position: fixed; right: 0; bottom: 0; left: 0; z-index: 999; display: grid;
        grid-template-columns: 1fr 1fr; box-shadow: 0 -6px 22px rgba(0, 0, 0, .2);
    }
    .nik5-callbar a {
        display: flex; align-items: center; justify-content: center; gap: 8px; padding: 14px 8px;
        background: #1f1a16; color: #fff; font: 600 14px "DM Sans", sans-serif; letter-spacing: .4px;
    }
    .nik5-callbar a:first-child { background: #c8963e; color: #1f1a16; }
    body { padding-bottom: 50px; }
}

.nik5-line { display: block; }

/* Correzioni dopo revisione */
.nik5-categories::before { background-size: 100% 100%; }

#header-main .header-inner-wrap .header-right .header-contact .content .number a { color: #fff; }

.nik5-events-empty { grid-column: 1 / -1; }

@media (min-width: 992px) {
    .section-welcome .content .heading-section .title.text-4 { font-size: 34px; letter-spacing: 1.6px; line-height: 1.2; }
}

.nik5-location-image a span { text-align: center; letter-spacing: 1.2px; }

@media (max-width: 991px) {
    .section-welcome .wrapper { flex-direction: column; align-items: center; gap: 36px; }
    .section-welcome .wrapper .wrap-image.left { width: min(100%, 400px); max-width: 400px; height: 500px; }
    .section-welcome .wrapper .wrap-image.right { width: min(100%, 320px); height: 320px; margin-top: 0; }
    .section-welcome .wrapper .content { padding-top: 0; text-align: center; }
    .nik5-hero .content .sub-title { font-size: 12px; letter-spacing: 2px; }
}

.nik5-hero .content .sub-title { font-size: 12px; letter-spacing: 2.4px; }

/* Card "Cosa trovi da Nik5": didascalia sempre visibile, card interamente cliccabile */
.nik5-categories .our-menu-item .content,
.nik5-categories .our-menu-item:hover .content {
    position: static; visibility: visible; opacity: 1; transform: none;
    padding: 24px 10px 0; border-radius: 0; background: none; text-align: center;
}
.nik5-categories .our-menu-item .content .icon {
    position: static; display: block; margin: 0 0 8px; color: #c8963e; font-size: 30px; line-height: 1;
}
.nik5-categories .our-menu-item .content .title { margin: 0 0 8px; color: #1f1a16; font-size: 28px; line-height: 1.15; }
.nik5-categories .our-menu-item .content .title a { color: #1f1a16; transition: color .25s ease; }
.nik5-categories .our-menu-item .content .title a::after { position: absolute; inset: 0; z-index: 2; content: ""; }
.nik5-categories .our-menu-item:hover .content .title a { color: #b07a22; }
.nik5-categories .our-menu-item .content p { max-width: 340px; margin: 0 auto; color: #5d5247; font-size: 15px; line-height: 1.65; }
.nik5-categories .our-menu-item { margin-bottom: 18px; }
.nik5-categories .our-menu-item:focus-within { outline: 2px solid #c8963e; outline-offset: 6px; }

.nik5-tab { flex: 0 0 auto; }
@media (max-width: 767px) {
    .nik5-categories .our-menu-item .wrap-image { height: min(92vw, 380px); }
    .nik5-categories .our-menu-item { margin-bottom: 34px; }
}
.nik5-categories .our-menu-item .content { display: flex; flex-direction: column; align-items: center; }
.nik5-categories .our-menu-item .content .icon { order: -1; }
.nik5-fullmenu { padding-top: 90px; }
@media (max-width: 767px) { .nik5-fullmenu { padding-top: 60px; } }

.nik5-events-empty { display: flex; flex-direction: column; align-items: center; }

.inner-mobile-nav #menu-mobile-menu li a { font-size: 19px; letter-spacing: .5px; }

@media (min-width: 768px) and (max-width: 991px) {
    .nik5-categories .row { justify-content: center; }
}

/* ===== Look moderno: ombre, angoli morbidi, profondita ===== */
:root {
    --nik-shadow-sm: 0 4px 14px rgba(41, 29, 18, .09);
    --nik-shadow-md: 0 14px 36px rgba(41, 29, 18, .15);
    --nik-shadow-lg: 0 28px 64px rgba(41, 29, 18, .22);
}

/* Intestazione: telefono all'estremita destra, in un "pill" */
.header-inner-wrap .header-right { margin-left: auto; }
#header-main .header-inner-wrap .header-right .header-contact {
    gap: 14px; padding: 6px 24px 6px 6px; border: 1px solid rgba(255, 255, 255, .24);
    border-radius: 999px; background: rgba(255, 255, 255, .12);
    -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, .22); transition: background .3s ease, transform .3s ease;
}
#header-main .header-inner-wrap .header-right .header-contact:hover { background: rgba(255, 255, 255, .2); transform: translateY(-1px); }
#header-main .header-inner-wrap .header-right .header-contact .icon { height: 44px; width: 44px; box-shadow: 0 6px 16px rgba(0, 0, 0, .28); }
#header-main .header-inner-wrap .header-right .header-contact .icon i { line-height: 44px; font-size: 18px; }
#header-main .header-inner-wrap .header-right .header-contact .content .number { font-size: 20px; line-height: 1; }
.header.is-fixed .header-inner { box-shadow: 0 12px 34px rgba(0, 0, 0, .28); }

/* Pulsanti */
.tf-btn { border-radius: 12px; box-shadow: var(--nik-shadow-sm); }
.tf-btn:hover { transform: translateY(-2px); box-shadow: var(--nik-shadow-md); }
.nik5-hero-actions .tf-btn { box-shadow: 0 12px 30px rgba(0, 0, 0, .32); }

/* Foto ad arco e cerchi */
.section-welcome .wrap-image.left,
.section-welcome .wrap-image.right,
.nik5-categories .our-menu-item .wrap-image { box-shadow: var(--nik-shadow-lg); }
.section-location .wrap-image img { border-radius: 50%; }
.section-location .wrap-image { filter: drop-shadow(0 22px 34px rgba(41, 29, 18, .22)); }
.nik5-location-image { box-shadow: var(--nik-shadow-lg); }

/* Card "Cosa trovi da Nik5" */
.nik5-categories .our-menu-item { transition: transform .4s cubic-bezier(.2, .7, .2, 1); }
.nik5-categories .our-menu-item:hover { transform: translateY(-8px); }

/* Menu */
.nik5-tab { box-shadow: var(--nik-shadow-sm); }
.nik5-tab.is-active { box-shadow: 0 12px 28px rgba(31, 26, 22, .32); }
.nik5-panel { border-radius: 22px; box-shadow: var(--nik-shadow-lg); }
.nik5-mi:hover { box-shadow: var(--nik-shadow-sm); }
.nik5-mi-price { box-shadow: inset 0 0 0 1px rgba(200, 150, 62, .18); }

/* Eventi */
.nik5-event-card { border-radius: 18px; box-shadow: var(--nik-shadow-md); }

/* Mappa: riquadro con angoli morbidi e ombra */
.nik5-map { padding: 6px 24px 76px; background: #eee5da; }
.nik5-map iframe { max-width: 1200px; margin: 0 auto; height: 460px; border-radius: 22px; box-shadow: var(--nik-shadow-lg); filter: none; }
.main-content:has(.nik5-map) .section-location { padding-bottom: 60px; }

/* Barra rapida su telefono */
@media (max-width: 767px) {
    .nik5-map { padding: 0 14px 56px; }
    .nik5-map iframe { height: 320px; border-radius: 18px; }
    .nik5-panel { border-radius: 18px; }
    .nik5-categories .our-menu-item:hover { transform: none; }
}

@media (prefers-reduced-motion: reduce) {
    .tf-btn:hover, .nik5-categories .our-menu-item:hover, #header-main .header-contact:hover { transform: none; }
}
.main-content:has(.nik5-map) .section-location.page-contact-us { background: #f1e9de; }
.nik5-map { background: #f1e9de; }

/* Barman: inquadratura che mette la persona al centro del cerchio */
.section-welcome .wrap-image.right img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 38%; }

/* Orari di apertura */
.nik5-today-link { color: inherit; }
.nik5-today-link:hover { color: #d2a452; }
.nik5-hours { max-width: 340px; margin: 0 auto 26px; padding: 0; list-style: none; }
.nik5-hours li { display: flex; flex-wrap: wrap; justify-content: center; gap: 2px 10px; padding: 7px 0; border-bottom: 1px dotted rgba(31, 26, 22, .22); color: #1f1a16; font-size: 15px; line-height: 1.4; }
.nik5-hours li:last-child { border-bottom: 0; }
.nik5-hours strong { font-weight: 700; }
.nik5-hours span { color: #5d5247; }
.footer .footer-menu-list ul li { line-height: 1.5; }

.tf-top-bar .list-info li .nik5-today-link { display: flex; align-items: center; gap: 12px; }
