:root{--site-nav-h:80px;--site-hero-gap:64px;--site-gold:#dfd097;--site-red:#9f050b;--site-ink:#2a2418}

body{padding-top:var(--site-nav-h)}
body.body-hero-nav,
body:has(main>.page-hero:first-child),
body:has(main>.header.hero:first-child),
body:has(main>.header.ny-hero:first-child),
body:has(main>.header.wed-hero:first-child),
body:has(main>.header.bd-hero:first-child),
body:has(main>.header.menu-hero:first-child),
body:has(main>.header.cat-hero:first-child){padding-top:0}
main>.header.hero:first-child,main>.header.ny-hero:first-child,main>.header.wed-hero:first-child,main>.header.bd-hero:first-child,main>.header.menu-hero:first-child,main>.header.cat-hero:first-child,main>.page-hero:first-child{
	margin-top:0;padding-top:calc(var(--site-nav-h) + var(--site-hero-gap))!important;
}
@media(max-width:767.98px){
	:root{--site-hero-gap:48px}
}

.site-nav{
	position:fixed;top:0;left:0;right:0;z-index:1000;height:var(--site-nav-h);
	background:rgba(0,0,0,.38);
	border-bottom:1px solid rgba(223,208,151,.4);
	box-shadow:0 4px 20px rgba(0,0,0,.12);
	-webkit-backdrop-filter:blur(4px);
	backdrop-filter:blur(4px);
	overflow:visible;
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
	.site-nav{background:rgba(20,14,10,.82)}
}
.site-nav__inner{
	max-width:1240px;height:100%;margin:0 auto;padding:0 16px;
	display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px 14px;
	position:relative;overflow:visible;
}
.site-nav__brand{grid-column:1;grid-row:1;display:flex;align-items:center;gap:12px;min-width:0}
.site-nav__logo{display:flex;align-items:center;flex-shrink:0;line-height:0;text-decoration:none!important}
.site-nav__logo img{
	display:block;height:46px;width:auto;max-width:min(132px,28vw);
	padding:0;border-radius:0;background:transparent;box-shadow:none;
}
.site-nav__addr{margin:0;font-family:Philosopher,sans-serif;font-size:16px;font-weight:700;line-height:1.35;letter-spacing:.05em;color:rgba(255,255,255,.96);white-space:nowrap}
.site-nav__list{grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:center;gap:2px;min-width:0;margin:0;padding:0;list-style:none}
.site-nav__aside{grid-column:3;grid-row:1;display:flex;flex-shrink:0;align-items:center;justify-self:end;min-width:max-content;overflow:visible}
.site-nav__phones{display:flex;flex-direction:column;align-items:flex-end;font-family:Philosopher,sans-serif;line-height:1.25}
.site-nav__phones-row{display:flex;align-items:center;gap:10px;justify-content:flex-end}
.site-nav__phones-stack{display:flex;flex-direction:column;align-items:flex-end;gap:1px;flex-shrink:0}
.site-nav__phones a,.site-nav__phone-main,.site-nav__phone-local{
	color:#fff!important;font-size:16px;font-weight:700;letter-spacing:.05em;
	text-decoration:none!important;white-space:nowrap;transition:color .2s ease;
}
.site-nav__phone-local{opacity:1}
.site-nav__phones a:hover{color:var(--site-gold)!important}
.site-nav__toggle{grid-column:3;grid-row:1;display:none;width:42px;height:42px;border:1px solid rgba(223,208,151,.35);border-radius:10px;background:rgba(255,255,255,.06);color:var(--site-gold);cursor:pointer;padding:0;justify-self:end}
.site-nav__social{display:flex;align-items:center;gap:8px}
.site-nav__social a{display:inline-flex;line-height:0;opacity:.95;transition:opacity .2s ease,transform .2s ease}
.site-nav__social a:hover{opacity:1;transform:translateY(-1px)}
.site-nav__mobile-extra{display:none}
.site-nav__link,.site-nav__drop-btn{
	display:inline-flex;align-items:center;gap:7px;
	padding:10px 16px;border:0;border-radius:999px;background:transparent;
	color:#fff!important;font-family:Philosopher,sans-serif;
	font-size:16px;font-weight:700;letter-spacing:.05em;
	text-transform:uppercase;text-decoration:none!important;cursor:pointer;line-height:1;
	transition:color .2s ease,background .2s ease;
}
.site-nav__link:hover,.site-nav__drop-btn:hover,
.site-nav__link.is-active,.site-nav__item--drop.is-open .site-nav__drop-btn,
.site-nav__item--drop:hover .site-nav__drop-btn{
	color:var(--site-gold)!important;background:rgba(255,255,255,.08);
}
.site-nav__drop-btn::after{
	content:"";width:6px;height:6px;margin-top:-2px;
	border-right:2px solid currentColor;border-bottom:2px solid currentColor;
	transform:rotate(45deg);transition:transform .2s ease;
}
.site-nav__item--drop.is-open .site-nav__drop-btn::after,
.site-nav__item--drop:hover .site-nav__drop-btn::after{transform:rotate(-135deg);margin-top:2px}

.site-nav__item{position:relative}
.site-nav__item--drop::after{
	content:"";position:absolute;left:0;right:0;top:100%;height:18px;z-index:39;
}
.site-nav__sub{
	display:none;position:absolute;top:calc(100% + 8px);left:50%;transform:translateX(-50%) translateY(4px);
	min-width:320px;margin:0;padding:14px;list-style:none;opacity:0;
	background:linear-gradient(180deg,#fff8e8 0%,#fff 100%);
	border:1px solid rgba(223,208,151,.9);border-radius:18px;
	box-shadow:0 22px 50px rgba(42,18,14,.24),inset 0 1px 0 rgba(255,255,255,.85);
	z-index:40;pointer-events:none;
	transition:opacity .18s ease,transform .18s ease;
}
.site-nav__sub::before{
	content:"";display:block;width:220px;height:28px;margin:0 auto 8px;
	background:url(/img/venzel_top.svg) center/contain no-repeat;opacity:.75;
}
.site-nav__sub-head{
	padding:0 12px 10px;margin:0 0 6px;
	font-family:Philosopher,sans-serif;font-size:12px;font-weight:700;
	letter-spacing:.12em;text-transform:uppercase;color:#888;text-align:center;
	border-bottom:1px solid rgba(223,208,151,.55);
}
.site-nav__item--drop:hover .site-nav__sub,
.site-nav__item--drop:focus-within .site-nav__sub,
.site-nav__item--drop.is-open .site-nav__sub{
	display:block;opacity:1;transform:translateX(-50%) translateY(0);pointer-events:auto;
}
.site-nav__sub li+li{margin-top:4px}
.site-nav__sub a{
	display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:12px;
	color:var(--site-ink)!important;font-family:Philosopher,sans-serif;
	font-size:16px;font-weight:700;text-transform:none;letter-spacing:0;
	text-decoration:none!important;white-space:nowrap;
	transition:background .18s ease,color .18s ease,padding-left .18s ease;
}
.site-nav__sub a::before{
	content:"";flex-shrink:0;width:8px;height:8px;border-radius:50%;
	background:var(--site-red);box-shadow:0 0 0 3px rgba(159,5,11,.12);
}
.site-nav__sub a:hover{
	background:rgba(159,5,11,.08);color:var(--site-red)!important;padding-left:18px;
}

.site-nav__toggle span,.site-nav__toggle span::before,.site-nav__toggle span::after{
	display:block;width:18px;height:2px;margin:0 auto;background:var(--site-gold);position:relative;
}
.site-nav__toggle span::before,.site-nav__toggle span::after{content:"";position:absolute;left:0}
.site-nav__toggle span::before{top:-6px}
.site-nav__toggle span::after{top:6px}

@media(max-width:1100px){.site-nav__addr:not(.site-nav__addr--mobile){display:none}}

@media(max-width:1280px){
	.site-nav__link,.site-nav__drop-btn{padding:10px 12px;font-size:15px}
	.site-nav__logo img{height:42px;max-width:120px}
}

@media(max-width:991.98px){
	:root{--site-nav-h:64px}
	.site-nav__aside{display:none}
	.site-nav__logo img{height:40px;max-width:112px;padding:2px 5px}
	.site-nav__link,.site-nav__drop-btn{font-size:15px;padding:10px 14px}
}

@media(max-width:767.98px){
	.site-nav__brand{gap:0}
	.site-nav__toggle{display:block}
	.site-nav__list{
		display:none;position:absolute;top:100%;left:0;right:0;
		flex-direction:column;align-items:stretch;gap:0;
		grid-column:1/-1;grid-row:2;
		background:rgba(0,0,0,.52);border-bottom:1px solid rgba(223,208,151,.4);
		-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);
		padding:10px 12px 14px;box-shadow:0 16px 32px rgba(0,0,0,.22);
	}
	.site-nav.is-open .site-nav__list{display:flex}
	.site-nav__mobile-extra{display:block;padding-top:8px;margin-top:8px;border-top:1px solid rgba(223,208,151,.22)}
	.site-nav__addr--mobile{margin:0 4px 10px;font-size:16px;font-weight:700;color:rgba(255,255,255,.94);white-space:normal}
	.site-nav__phones--mobile{align-items:flex-start;padding:0 4px}
	.site-nav__phones--mobile .site-nav__phones-row{justify-content:flex-start;align-items:flex-start}
	.site-nav__phones--mobile .site-nav__phones-stack{align-items:flex-start}
	.site-nav__phones--mobile a{color:#fff!important;font-size:16px;font-weight:700;text-decoration:none!important}
	.site-nav__social--mobile{padding:0}
	.site-nav__link,.site-nav__drop-btn{width:100%;justify-content:space-between;border-radius:12px}
	.site-nav__sub{
		position:static;transform:none!important;opacity:1!important;pointer-events:auto!important;
		min-width:0;margin:6px 0 8px;padding:10px;display:none;
		box-shadow:none;border-radius:14px;
	}
	.site-nav__sub::before{width:150px;height:22px;margin-bottom:6px}
	.site-nav__item--drop::after{display:none}
	.site-nav__item--drop:hover .site-nav__sub{display:none}
	.site-nav__item--drop.is-open .site-nav__sub{display:block}
}

.map-shell{max-width:1140px;margin:0 auto;position:relative}
.map-frame{
	position:relative;overflow:hidden;height:560px;
	background:#e8e4dc;border:1px solid rgba(223,208,151,.55);
	box-shadow:0 12px 32px rgba(42,36,24,.08);
}
.map-frame iframe{display:block;width:100%;height:100%;border:0}
.map-frame.map-inactive iframe{pointer-events:none}
.map-frame.map-active iframe{pointer-events:auto}
.map-hint{
	position:absolute;inset:0;z-index:4;display:flex;align-items:center;justify-content:center;
	margin:0;padding:0;border:0;background:transparent;cursor:pointer;
}
.map-hint span{
	margin:0;padding:12px 20px;border:1px solid #2a2418;border-radius:8px;
	background:rgba(255,255,255,.96);color:#2a2418;font-family:Philosopher,sans-serif;
	font-size:15px;font-weight:700;line-height:1.35;box-shadow:0 4px 18px rgba(0,0,0,.14);
}
@media(max-width:991.98px){.map-frame{height:320px}}
@media(max-width:576px){.map-hint span{max-width:calc(100% - 32px);text-align:center}}

.page-hero{
	position:relative;padding:0 0 48px;color:#fff;text-align:center;
	background:#3a2018 url(/img/home.webp) center/cover no-repeat;
}
.page-hero::before{
	content:"";position:absolute;inset:0;
	background:linear-gradient(180deg,rgba(0,0,0,.55) 0%,rgba(0,0,0,.72) 100%);
}
.page-hero .container{position:relative;z-index:1}
.page-hero .h1{
	margin:0;font-family:"Ruslan Display",serif;font-size:clamp(26px,4.2vw,44px);
	line-height:1.2;font-weight:400;color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.5);
}
.page-hero .h1::first-letter{color:#9f050b}
.page-hero__lead{max-width:720px;margin:16px auto 0;font-size:18px;line-height:1.55;color:rgba(255,255,255,.95)}
@media(max-width:576px){.page-hero{padding-bottom:36px}.page-hero .h1{font-size:24px}.page-hero__lead{font-size:16px}}

.soon-card{
	max-width:640px;margin:0 auto;padding:36px 28px;text-align:center;
	background:#fff;border:1px solid rgba(223,208,151,.75);border-radius:18px;
	box-shadow:0 12px 34px rgba(42,36,24,.08);
}
.soon-card p{margin:0 0 18px;font-size:18px;line-height:1.55;color:#333}
.soon-card .ny-ornament,.soon-card .page-ornament{margin:0 auto 18px}

.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:32px}
.contact-card{
	padding:22px 18px;border-radius:16px;background:#fff;
	border:1px solid rgba(223,208,151,.7);box-shadow:0 8px 22px rgba(42,36,24,.06);text-align:center;
}
.contact-card strong{display:block;margin:0 0 8px;font-size:19px;color:#9f050b;font-family:Philosopher,serif}
.contact-card p,.contact-card a{margin:0;font-size:17px;line-height:1.45;color:#444}
.contact-card a{color:#9f050b;font-weight:700;text-decoration:none}
.contact-card a:hover{text-decoration:underline}
.lsi-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:28px}
.lsi-card{
	padding:24px 22px;border-radius:16px;background:#fff;
	border:1px solid rgba(223,208,151,.7);
}
.lsi-card h3{margin:0 0 10px;font-size:22px;line-height:1.3;font-family:"Ruslan Display",serif;font-weight:400;color:#1a1a1a}
.lsi-card h3::first-letter{color:#9f050b}
.lsi-card p{margin:0 0 12px;font-size:18px;line-height:1.55;color:#333}
.lsi-card p:last-child{margin:0}
.lsi-card--wide{grid-column:1/-1}
@media(max-width:900px){.contact-grid,.lsi-grid{grid-template-columns:1fr}}
.page-cta{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px}
.page-btn{
	display:inline-block;padding:16px 40px;border-radius:999px;background:#9f050b;
	color:#fff!important;font-weight:700;text-decoration:none;font-size:17px;font-family:Philosopher,sans-serif;
}
.page-btn:hover{background:#7a0408;color:#fff!important;text-decoration:none}
.page-btn--gold{background:#dfd097;color:#2a2418!important}
.page-btn--gold:hover{background:#cbb87a;color:#2a2418!important;text-decoration:none}
.page-section{padding:56px 0;background:#fff}
.page-section--warm{background:#fbf6ea;background-image:radial-gradient(ellipse at top,rgba(223,208,151,.35),transparent 55%)}
.page-ornament{display:block;width:220px;height:52px;margin:16px auto 0;background:url(/img/venzel_top.svg) center/contain no-repeat;opacity:.8}
.page-heading{margin:0;font-family:"Ruslan Display",serif;font-size:30px;line-height:1.3;font-weight:400;color:#1a1a1a;text-align:center}
.page-heading::first-letter{color:#9f050b}
.page-lead{max-width:760px;margin:18px auto 0;text-align:center;font-size:18px;line-height:1.55;color:#444}
@media(max-width:768px){
	.page-heading{font-size:24px}
	.page-lead,.lsi-card p,.soon-card p{font-size:16px}
	.page-ornament{width:170px;height:40px}
	.page-section{padding:40px 0}
}
