/* ----------------------------------------------------------------
	Custom CSS

	Add all your Custom Styled CSS here for New Styles or
	Overwriting Default Theme Styles for Better Handling Updates
-----------------------------------------------------------------*/

#footer {
    background: url('../images/footer-bg.jpg') repeat center center;
    background-size: auto 100%;
    padding: 20px 0 22px;
}

.sketch-separator {
    position: absolute;
    left: 0;
    width: 100%;
    z-index: 3;
    height: 40px;
    background-repeat: repeat;
    background-position: center bottom;
    background-size: auto 100%;
}

.sketch-top {
    top: 0;
    margin-top: -40px;
    /* Pamiętaj, aby podmienić ścieżkę na właściwą */
    background-image: url('../images/sketch.png');
}

.sketch-bottom {
    bottom: 0;
    margin-bottom: -10px;
    /* Pamiętaj, aby podmienić ścieżkę na właściwą */
    background-image: url('../images/sketch-header.png');
	background-repeat: no-repeat !important;
	background-position: center bottom !important;
	background-size: auto 100% !important;
}

/* Kontener karty */
.rev-hover-card {
    perspective: 1000px; /* Kluczowe dla efektu 3D */
    overflow: hidden;    /* Ukrywa wystające krawędzie */
    position: relative;
    cursor: pointer;
    background: #000;
}

/* Obraz tła */
.rev-bg-image {
    position: absolute;
    /* Obrazek musi być większy, żeby przy przesuwaniu nie było widać dziur */
    top: -10%;
    left: -10%;
    width: 120%;
    height: 120%;
    background-size: cover;
    background-position: center;
    
    /* Domyślny stan */
    transform: scale(1) rotateX(0) rotateY(0);
    transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94); /* Płynny powrót */
    will-change: transform; /* Optymalizacja wydajności */
}

/* Nakładka z tekstem */
.rev-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to bottom, rgba(0,0,0,0) 40%, rgba(0,0,0,0.8) 100%);
    z-index: 2;
    pointer-events: none;
}

/* Wymuszamy klikalność linków */
.custom-link {
    position: relative !important;
    z-index: 100 !important;
    pointer-events: auto !important;
    display: inline-block;
    text-decoration: none !important;
}

/* Opcjonalnie: upewniamy się, że cały overlay nie blokuje środka */
.rev-overlay {
    pointer-events: none; /* Overlay jako kontener przepuszcza kliknięcia dalej */
}

.cb-content {
    pointer-events: auto; /* Ale treść wewnątrz overlay ma z powrotem przywrócone kliknięcia */
}

.full-link {
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    z-index: 10;
}

.top-links-item span {
	display: block;
	padding: 12px;
	line-height: calc(var(--cnvs-topbar-height) - 24px);
	font-weight: var(--cnvs-topbar-font-weight);
	text-transform: var(--cnvs-topbar-font-transform);
	color: var(--cnvs-topbar-color);
}

p.font-primary {
  text-align: left !important;
  padding-left: 10px;
}

.block-list  {
	padding-left: 15px;
}

.imgpion {
	padding-bottom: 8px;
}

#sec56_ve0UpLJgPk {
	background: rgba(239, 97, 11, 0.89) url(/gfx/7.jpg) no-repeat top right; 
	background-size: auto;
	background-size: cover;
	color: #ffffff;
}

.font-index-header {
  font-family: 'Great Vibes' !important;
  font-size: 2.875rem !important;
  line-height: 1.2;
}
.menu-item:hover > .menu-link {
    color: color: #ffffff;
	background-color: #4a0000;
	border-radius: 4px;
	
}

.font-secondary {
/*  font-family: var(--cnvs-secondary-font) !important; */
	font-family: 'Great Vibes' !important;
}
.is-expanded-menu .menu-link {
    --cnvs-primary-menu-padding-y: calc(calc(var(--cnvs-sticky-header-height) - 52px) * 0.5);
}
.rounded-pill {
  /*border-radius: var(--bs-border-radius-pill) !important;*/
  border-radius: 4px !important;
}
.menu-link {
    --cnvs-primary-menu-padding-y: 14px;
    --cnvs-primary-menu-padding-x: 5px;
    display: block;
    line-height: 22px;
    padding: var(--cnvs-primary-menu-padding-y) var(--cnvs-primary-menu-padding-x);
    color: var(--cnvs-primary-menu-color);
    font-weight: 500;
    font-size: 1.195rem;
    font-family: var(--cnvs-primary-menu-font);
    text-transform: none !important; 
    letter-spacing: var(--cnvs-primary-menu-ls);
}
#header {
  --cnvs-sticky-header-height: var(--cnvs-header-height);
  --cnvs-header-border-color: rgba(var(--cnvs-contrast-rgb), .1);
  --cnvs-header-transparent-border-color: rgba(var(--cnvs-contrast-rgb), .1);
  --cnvs-primary-menu-padding-x: 15px;
  --cnvs-header-floating-top-offset: 60px;
  --cnvs-header-floating-padding: 30px;
  --cnvs-side-header-padding-gutters: 30px;
  --cnvs-primary-menu-color: #fff;
  --cnvs-primary-menu-hover-color: #fff;
  --cnvs-primary-menu-submenu-width: 200px !important;
  --cnvs-primary-menu-submenu-padding-x: 4px;
    --cnvs-primary-menu-submenu-padding-y: 10px;
}
.heading-block h3, .heading-block .h3 {
    font-size: 3.9rem !important;
}
@media (min-width: 992px) {
    .slider-caption h2 {
        font-size: 76px;
        /*background-color: #410818b3;*/
		background-color: #95662b6e;
    }
}
.is-expanded-menu .primary-menu:not(.on-click).primary-menu-init .menu-item:not(.mega-menu) .sub-menu-container, .is-expanded-menu .primary-menu:not(.on-click).primary-menu-init .mega-menu-content {
    display: block;
    background-color: #230606b3;

}
.is-expanded-menu .sub-menu-container .menu-item > .menu-link {
    padding: var(--cnvs-primary-menu-submenu-padding-y) var(--cnvs-primary-menu-submenu-padding-x);
    font-weight: var(--cnvs-primary-menu-submenu-font-weight);
    text-transform: var(--cnvs-primary-menu-submenu-tt);
    border: 0;
    transition: all 0.2s ease-in-out;
    color: #fff;
}
.text-larger {
    font-size: 150% !important;
    font-family: 'Great Vibes';
}
.primary-menu-trigger, #page-menu-trigger {
    --cnvs-menu-trigger-gap: 0.75rem;
    display: flex;
    opacity: 1;
    pointer-events: auto;
    z-index: 1;
    cursor: pointer;
    justify-content: center;
    align-items: center;
    /* padding: var(--cnvs-menu-trigger-gap); */
    padding: 26px;
    background-color: #c5a174;
    transition: opacity 0.3s ease;
}
.is-expanded-menu #header.transparent-header {
  --cnvs-header-bg: #ae997f !important;
  border-bottom: 0;
}
@media (min-width: 992px) {
  #header.sticky-header #header-wrap {
    background-color: #381212cc;
    box-shadow: none;
  }
}

/* Testimonials Carousel
-----------------------------------------------------------------*/
#sec47_UQ6scjmP4d {
  background: url('../../../gfx/sections/3.jpg') no-repeat top center;
    background-size: auto;
  background-size: cover;
  padding: 80px 0 70px;
}

.testimonials-carousel .owl-stage {
	padding: 2rem 0 1.5rem;
}

.testimonials-carousel .owl-item {
	opacity: .6;
	transition: transform .3s ease;
	transform: scale(0.8);
}

.testimonials-carousel .owl-item.active.center {
	opacity: 1;
	transform: scale(1);
}

.testimonial {
	border: 0;
	box-shadow: 0 0 35px rgba(140, 152, 164, 0.2);
	border-radius: 0.25rem;
	padding: 25px;
}

.testimonial-image {
	width: 2rem !important;
	height: auto !important;
	margin: -2.5rem auto 0;
}

.slider-caption, .flex-caption {
	margin-top: 120px;
	height: 80%;
}

#sec12_9q5O4rGZxc {
	margin: 1rem;
	padding: 1rem;
}

#top-bar {
	z-index: 10000;
	background-color: #ffffff;
	border: none;
}

#slider {
  margin-top: -147px !important;
}

.top-links-item:hover {
  background-color:  transparent;
}

.copy_realizacja {
  color: #8e8e8e;
}

/* --- MENU RESTAURACYJNE STYLE --- */

/* Reset */
.menu-section {
    background-color: #3b0505; /* Ciemne tło */
    color: #fff;
    padding: 60px 0;
    border-bottom: 1px solid #4a0a0a;
}

/* Nagłówki */
.menu-section h2 {
    /*font-family: 'Playfair Display', serif;*/ 
    color: #ebe2cf;
    font-size: 2.5rem;
    margin-bottom: 0;
    text-transform: uppercase;
}

.menu-section .subtitle {
    display: block;
    color: #dbcebe; /* Złoty */
    font-style: italic;
    margin-bottom: 30px;
    font-size: 2.3rem;
	font-family: 'Great Vibes', sans-serif !important;
}

/* Pozycje menu */
.dish-item {
    margin-bottom: 25px;
}

.dish-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end; /* Ważne dla kropek */
    width: 100%;
}

.dish-name {
    font-size: 1.3rem;
    color: #d4a976;
    font-weight: 500;
    flex-shrink: 0; /* Nazwa się nie zwija */
    margin-right: 10px;
}

/* Magiczne kropki CSS */
.dish-dots {
    flex-grow: 1; /* Wypełnia przestrzeń */
    border-bottom: 1px dotted #888;
    position: relative;
    bottom: 6px; /* Korekta w pionie */
    opacity: 0.6;
}

.dish-price {
    font-size: 1.3rem;
    font-weight: bold;
    color: #fff;
    margin-left: 10px;
    flex-shrink: 0;
}

.dish-desc {
    font-size: 0.95rem;
    color: #ccc;
    margin-top: 5px;
    line-height: 1.4;
}

/* Zdjęcie w ramce */
.frame-image-wrapper {
    display: inline-block;
    padding: 15px;
    /*background: linear-gradient(45deg, #b88a4d, #fdfc47, #b88a4d);*/ /* Złota rama */
    box-shadow: 0 10px 25px rgba(0,0,0,0.6);
    max-width: 100%;
}

.frame-image-wrapper img {
    display: block;
    max-width: 100%;
    height: auto;
    border: 5px solid #2a0303;
}

/* Nawigacja górna */
.restaurant-nav {
/*    background: #e5e5e5;*/
    padding: 20px 0;
    z-index: 100;
}
.btn-menu {
    display: block;
    text-align: center;
    background: #dbcebe;
    padding: 12px;
    margin-bottom: 20px;
    color: #000;
    font-weight: bold;
    text-transform: uppercase;
    text-decoration: none;
    transition: 0.3s;
}
.btn-menu:hover {
    background: #aaa;
    color: #fff;
}

.menu-section {
    /* ... poprzednie style ... */
    
    /* Dodaj to (wartość powinna być nieco większa niż wysokość paska nawigacji) */
    scroll-margin-top: 100px; 
}

#sec41_GpQwA8raZv {
	background-color: #3b0505;
}	


@media (max-width: 991px) {
	.menu-link {
		color: #000000 !important;
	}
	.menu-link:hover {
		color: #000000 !important;
	}
}

.goorder-frame {
	z-index: 140000 !important;
}