:root {
	--font1:'Josefin Sans', san-serif;
	--font2:'Rancho', cursive;
	--font3:'Audiowide', cursive;
}
::placeholder { color:var(--dark); }
::selection { color:var(--primary); background:var(--dark); }
::-webkit-scrollbar { width:5px; }
::-webkit-scrollbar-track { background:var(--primary); }
::-webkit-scrollbar-thumb { background:var(--light); }
section.home-about img {
    margin-bottom: 10px;
}
html,
body { min-height:100vh; font-family:var(--font1); font-size:16px; font-weight:400; line-height:1.2; color:var(--dark); background-color:var(--light); background-image:url("img/background.png"); background-repeat:repeat; background-position:0 0; background-size:auto; background-attachment:fixed; }
body { padding-top:100px; }
h1, h2, h3, h4, h5, h6 { font-weight:400; }
a { color:inherit; transition:all 0.3s; }
a:hover { text-decoration:none; }
img { width:100%; }
p { font-size:18px; }
section { margin:0 0 100px; }
@media (max-width:992px) {
	body { padding-top:60px; }
	section { margin:0 0 50px; }
}

.btn { padding:10px 20px; box-shadow:0 0 0 1px var(--primary) inset; color:var(--dark); border-radius:0; font-size:14px; font-weight:700; line-height:20px; position:relative; letter-spacing:2px; transition:all 0.8s ease-in-out; }
.btn.light { color:var(--light); background:none; }
.btn:hover { ouline:none; color:var(--dark); background:var(--primary); }
.btn .h { position:absolute; left:50%; top:50%; transform:translateX(-50%) translateY(-50%); border:1px solid var(--primary); width:100%; height:calc(100% + 20px); transition:all 0.6s ease-in; }
.btn .v { position:absolute; left:50%; top:50%; transform:translateX(-50%) translateY(-50%); border:1px solid var(--primary); width:calc(100% + 20px); height:100%; transition:all 0.6s ease-in; }
.btn:hover .h { width:calc(100% + 20px); height:100%; }
.btn:hover .v { width:100%; height:calc(100% + 20px); }
.btn:focus { outline:none; box-shadow:none; }

#btt { position:fixed; right:10px; bottom:-70px; width:40px; height:40px; line-height:40px; border-radius:0 10px 0 10px; background:var(--primary); text-align:center; color:var(--dark); cursor:pointer; transition:all 0.3s cubic-bezier(0,.82,.49,1.59); z-index:2000; }
#btt.show { bottom:10px; }
#btt:hover { background:var(--light); color:var(--dark); border-radius:10px 0 10px 0; }

header { position:absolute; bottom:0; z-index:500; width:100%; transition:all 0.5s; }
header.fixed { position:fixed; bottom:auto; top:0; background:var(--light); }
header .container { padding:10px 0; display:flex; align-items:center; justify-content:space-between; }
header .add div { display:flex; width:100%; justify-content:flex-end; }
header .add div a { margin-left:10px; font-size:13px; }
header .add { padding:2px 10px; border-bottom:1px solid var(--primary); }
header .logo { display:block; width:180px; margin-right:10vw; position:relative; }
header .logo img { width:100%; position:relative; z-index:510; transition:all 0.5s; }
header .logo .hover { position:absolute; left:0; top:0; z-index:520; opacity:0; }
header .logo:hover img { opacity:0; }
header .logo:hover .hover { opacity:1; }
header nav { flex-grow:1; }
header nav ul { display:flex; align-items:center; justify-content:space-between; list-style:none; margin:0; padding:0; }
header nav ul li a { font-size:15px; text-transform:uppercase; letter-spacing:1px; position:relative; }
header nav ul li a:before,
header nav ul li a:after { content:""; display:block; position:absolute; bottom:-3px; left:0; width:0%; height:1px; background:var(--primary); transition:all 0.4s cubic-bezier(.48,.57,.33,.89); }
header nav ul li a:after { bottom:0; transition:all 0.4s cubic-bezier(.48,.57,.33,.89) 0.1s; }
header nav ul li a.active,
header nav ul li a:hover { color:var(--primary); }
header nav ul li a.active:before,
header nav ul li a.active:after,
header nav ul li a:hover:before,
header nav ul li a:hover:after { width:100%; }
header .toggler { display:none; }
@media (max-width:992px) {
	.header_area { padding:0px 10px; }
	.add div { flex-flow:column; }
	header { }
	header .logo { width:auto; }
	header .logo img { width:auto; height:50px; }
	header nav { position:fixed; left:0; top:-110%; background:var(--light8); width:100%; padding:15px; opacity:0; transition:all 0.6s ease-out; }
	header nav.show { opacity:1; top:115px; }
	header nav ul { display:block; }
	header nav ul li a { display:table; margin:0 auto 15px; text-align:center; }
	header nav ul li a.btn { margin-bottom:0; display:block; text-align:center; }
	header .toggler { display:block; width:40px; height:40px; border:1px solid var(--primary); text-align:center; color:var(--primary); font-size:24px; }
	header .toggler i { line-height:38px; }
	header .toggler i:last-child { display:none; }
	header .toggler.show i:first-child { display:none; }
	header .toggler.show i:last-child { display:block; }
}

#voucher { position:fixed; left:0; bottom:50px; width:150px; z-index:2000; transition:all 0.5s; animation:switcher 3s infinite; }
#voucher .hover { fill:var(--dark); transition:all 0.3s; }
#voucher:hover .hover { fill:#0f1d22; }
#voucher.small { left:-130px; }
.vCloser { position:fixed; left:130px; bottom:50px; width:20px; height:100px; padding:20px 0; line-height:20px; text-align:center; color:var(--primary); z-index:2100; transition:all 0.5s; cursor:pointer; }
.vCloser .la-angle-right { display:none; }
.vCloser.small .la-angle-right { display:inline-block; }
.vCloser.small .la-angle-left { display:none; }
.vCloser.small { left:0; }
@keyframes switcher {
	0% { box-shadow:0 0 0 0px var(--primary3); }
	100% { box-shadow:0 0 0 35px rgba(255, 255, 255, 0); }
}

#home-banner { position:relative; height:calc(100vh - 100px); }
#home-banner .item { height:calc(100vh - 100px); position:relative; z-index:100; }
#home-banner .item img { width:100%; height:100%; object-fit:cover; }
#home-banner .item .cover { padding:30px 0 130px; position:absolute; width:100%; height:100%; top:0; left:0; display:flex; align-items:center; }
#home-banner .item .cover .header-content { position:relative; padding:56px; overflow:hidden; }
#home-banner .item .cover .header-content .line { content:""; display:inline-block; width:100%; height:100%; left:0; top:0; position:absolute; border:9px solid var(--primary); -webkit-clip-path:polygon(0 0, 60% 0, 20% 100%, 0 100%); clip-path:polygon(0 0, 60% 0, 20% 100%, 0 100%); }
#home-banner .item .cover .header-content h2 { font-family:var(--font2); font-size:32px; color:var(--primary); margin:0; }
#home-banner .item .cover .header-content h1 { font-family:var(--font3); font-size:52px; margin:-10px 0 0; letter-spacing:-2px; color:var(--primary); }
#home-banner .item .cover .header-content h4 { font-size:20px; max-width:400px; line-height:20px; color:var(--light); margin:0 0 20px; }
#home-banner .owl-item.active h2 { animation-duration:1.5s; animation-fill-mode:both; animation-name:fadeInDown; animation-delay:0.5s; }
#home-banner .owl-item.active h1 { animation-duration:1.5s; animation-fill-mode:both; animation-name:fadeInDown; animation-delay:1.0s; }
#home-banner .owl-item.active h4 { animation-duration:1.5s; animation-fill-mode:both; animation-name:fadeInDown; animation-delay:1.5s; }
#home-banner .owl-item.active p { animation-duration:1.5s; animation-fill-mode:both; animation-name:fadeInDown; animation-delay:1.5s; }
#home-banner .owl-item.active .d-bs { animation-duration:1.5s; animation-fill-mode:both; animation-name:fadeInDown; animation-delay:1.5s; }
#home-banner .owl-item.active .line { animation-duration:2s; animation-fill-mode:both; animation-name:fadeInLeft; animation-delay:1s; }
#home-banner .owl-nav .owl-prev,
#home-banner .owl-nav .owl-next { position:absolute; right:25px; top:43%; opacity:0; transition:all 0.4s ease-out; cursor:pointer; height:40px; position:absolute; display:block; z-index:200; border-radius:0; font-size:60px; color:var(--primary); width:40px; border-top:2px solid var(--primary); border-right:2px solid var(--primary); transform:rotate(45deg); }
#home-banner .owl-nav .owl-prev { right:auto; left:25px; transform:rotate(225deg); }
#home-banner .owl-nav .owl-prev:focus,
#home-banner .owl-nav .owl-next:focus { outline:0; }
#home-banner .owl-nav .owl-prev:hover { background:transparent; left:15px; }
#home-banner .owl-nav .owl-next:hover { background:transparent; right:15px; }
#home-banner:hover .owl-prev { left:20px; opacity:1; }
#home-banner:hover .owl-next { right:20px; opacity:1; }
@media (max-width:992px) {
	#home-banner,
	#home-banner .item { height:60vw; margin-top:28px; }
	#home-banner .owl-item.active h2,
	#home-banner .owl-item.active h1,
	#home-banner .owl-item.active h4,
	#home-banner .owl-item.active p,
	#home-banner .item .cover .header-content .line { display:none !important; }
	#home-banner .owl-item.active .d-bs { animation-name:none; max-width:200px; }
	#home-banner .item .cover .header-content { position:absolute; left:0; bottom:0; padding:30px; }
}

.title { display:flex; width:100%; justify-content:center; align-items:center; padding:0 0 40px; }
.title h2 { font-size:48px; letter-spacing:5px; color:var(--primary); margin:0 40px; text-transform:uppercase; text-align:center; }
.subtitle { font-size:18px; letter-spacing:2px; margin:0 auto 60px; text-align:center; width:50%; display:table; }
@media (max-width:992px) {
	.title h2 { font-size:30px; }
	.subtitle { width:100%; }
}

.home-about .btn { display:table; margin:0 auto 60px; }
@media (max-width:992px) {
	.home-about { margin:0; }
}

.quote { display:flex; align-items:center; justify-content:space-between; background:var(--primary4); overflow:hidden; margin:0; }
.quote img { width:50%; }
.quote #testimonial-slider { width:50%; text-align:center; padding:20px 12vw; transition:all 0.3s ease-out; background:var(--light5); }
.quote #testimonial-slider q { font-size:24px; line-height:1.5; font-family:var(--font2); letter-spacing:1px; }
.quote #testimonial-slider p { font-size:16px; color:var(--primary); margin:30px 0 15px; text-transform:uppercase; letter-spacing:2px; }
.quote #testimonial-slider .owl-dot { width:10px; height:10px; border-radius:50%; display:inline-block; background:var(--light); margin:0 5px; opacity:1; }
.quote #testimonial-slider .owl-dot.active { background:var(--primary); }
@media (max-width:992px) {
	.quote { display:block; }
	.quote #testimonial-slider { width:100%; padding:15px; }
	.quote img { width:100%; }
}

.offer { overflow:hidden; position:relative; margin:0; padding:50px 0; min-height:70vh; }
.offer:after { content:""; background:var(--light5); background-blend-mode:screen; position:absolute; left:0; top:0; width:100%; height:100%; z-index:200; }
.offer .container { position:relative; z-index:300; }
.offer .item { box-shadow:0 0 0 1px var(--primary) inset; padding:30px; background:var(--light5); min-height:400px; display:flex; align-items:center; }
.offer .item > div { width:100%; }
.offer .item h2 { font-size:28px; color:var(--primary); }
.offer .item h5 { font-size:30px; font-weight:400; margin:0; }
.offer .item h6 { font-size:18px; font-weight:700; }
.offer .item ul { padding:0 0 0 20px;}
.offer .item .btn { margin-top:30px; text-transform:uppercase; }
.offer video { position:absolute; left:50%; top:50%; transform:translateX(-50%) translateY(-50%); min-width:100%; min-height:100%; z-index:100; }
@media (max-width:992px) {
	.offer { padding:50px 0; }
}

.meals { padding:100px 0; }

footer { background:var(--dark); position:relative; padding:30px 0 0; z-index:10; }
footer:after { content:""; display:block; background:var(--dark6); position:absolute; left:0; top:0; width:100%; height:100%; z-index:20; }
footer .container { position:relative; z-index:30; }
footer p { margin:0 0 10px; color:var(--light); font-weight:400; text-align:left; }
footer a { display:block; margin:0 0 10px; color:var(--light); font-weight:400; font-size:15px; }
footer a:last-child { margin:0; }
footer a:hover { color:var(--primary); }
footer .content { margin-bottom:10px; }
footer .content img { width:100%; max-width:200px; margin:0 0 15px; }
footer .link { display:flex; justify-content:space-around; }
footer .time p { margin:0 0 10px; font-size:20px; }
footer .time table { width:100%; }
footer .time table tr td { padding:2px 10px; color:var(--light); font-weight:400; font-size:15px; }
footer .time table tr td:first-child { font-weight:700; text-align:right; }
footer .time table tr.active td { background:var(--light2); }
footer .copy { background:var(--dark5); padding:10px; font-size:12px; text-align:center; color:var(--light); position:relative; z-index:20; }
@media (max-width:992px) {
	footer { margin:0; }
	footer .content { padding:5px 0; }
	footer .content a,
	footer .content p { display:block; text-align:center; margin:0 0 5px; }
	footer .content .contacts { text-align:center; }
	footer .content .contacts img { max-width:200px; margin:0 auto 30px; display:table; }
	footer .content .time { display:none; }
	footer a,
	footer .time p { text-align:center; }
	footer .content img { display:table; margin:0 auto 10px; }
	footer .copy { padding:5px; }
}

.booking { padding:100px 0 0; }
.booking h2 { font-size:50px; }
.booking h2 span { font-family:var(--font2); font-size:30px; display:block; }
.booking .text { margin-bottom:10px; }
.booking .text .btn { margin-bottom:20px; }
@media (max-width:992px) {
	.booking { padding-top:80px; text-align:center; }
	.booking .text .btn { display:inline-block; margin:0; }
	footer { text-align:center; }
	footer .logo { margin-bottom:40px; }
	footer p strong { font-size:30px; }
	footer .social { margin-top:40px; }
}

.contact { position:relative; }
.contact-details { padding:0 0 40px; margin:0; }
.contact-details iframe { width:100%; border:0; height:350px; position:relative; z-index:10; }
.contact-details > p { text-align:center; }
.contact-details form input,
.contact-details form textarea { width:100%; height:40px; line-height:40px; padding:0 10px; background:var(--light8); border:1px solid var(--primary); border-bottom:0; margin:0; }
.contact-details form textarea { height:150px; min-height:150px; resize:vertical; }
.contact-details form input:focus,
.contact-details form textarea:focus { box-shadow:none; outline:none; background:#ddd; }
.contact-details form button { width:100%; height:40px; line-height:40px; padding:0 15px; border:1px solid var(--light); margin-top:-4px; border-radius:0; }
.contact-details .social a { font-size:30px; color:var(--primary); margin-right:5px; }
.contact-details a:hover { color:var(--primary); }
.contact-details .msg { margin-top:20px; }
.contact-details .msg.success { color:green; }
.contact-details .msg.error { color:red; }

.gallery { padding:0 0 100px; }
.gallery #gallery { display:flex; flex-wrap:wrap; }
.gallery #gallery a { display:block; background:var(--dark); margin:10px; position:relative; width:calc(33% - 20px); box-shadow:0 0 0 3px var(--primary) inset; }
.gallery #gallery a img { width:100%; transition:all 0.4s; opacity:0.8; }
.gallery #gallery a:hover img { opacity:1; }
@media (max-width:992px) {
	#menu .item { width: 100% !important;; padding:0 10px 20px; }
	.gallery { padding:50px 0; }
	.gallery #gallery a { width:calc(50% - 10px); margin:0 5px 10px; }
}

.order { padding:20px 0 60px; }
.order label { display:block; width:100%; margin:30px 0 3px; font-size:16px; }
.order select,
.order input { display:block; width:100%; height:40px; line-height:40px; border:1px solid var(--primary); padding:0 15px; }
.order select:focus,
.order input:focus { outline:1px solid var(--primary); outline-offset:2px; }

#menu .item { width:33%; padding:0 10px 20px; }
#menu .item .title { background:var(--primary); color:var(--light); padding:10px; border:1px solid var(--primary); }
#menu .item .title p { font-size:20px; font-weight:700; margin:0; text-transform:capitalize; }
#menu .item .title small { font-size:12px; display:block; margin:0; font-weight:700; font-style:italic; opacity:0.8; }
#menu .content { padding:20px 15px 10px; border:1px solid var(--primary); border-top:0; }
#menu .content .meal { display:flex; align-items:center; justify-content:space-between; margin:0 0 15px; }
#menu .content .meal .name { font-size:14px; font-weight:600; text-transform:capitalize; }
#menu .content .meal .dots { flex-grow:1; border-bottom:2px dashed var(--primary); height:15px; margin:0 10px; }
#menu .content .meal .price { font-size:14px; font-weight:700; color:var(--primary); }
#menu .content .detail { font-size:13px; font-weight:400; font-style:italic; margin:-15px 0 15px; color:var(--primary); margin-top: 2px;}
#menu .content .meal.sub { padding-left:15px; }
.christmas-booking .btn {
    display: table;
    margin: 0 auto 60px;
}
section.christmas-booking {
    margin: 50px 0 0 0;
}
@media (max-width:992px) {
	section.christmas-booking img{
		margin-top: 10px;
	}
	.menu { padding:50px 0; }
	.menu .menu-active { width:100%; margin:0 0 15px; }
}



