/* Lüks dijital menü — renkler index.php içinde menu_ayar.php değerleriyle ezilir */
:root{
	--ink:#0b0a08;
	--surface:#13110d;
	--surface-2:#1a1712;
	--gold:#c9a75f;
	--gold-hi:#ecd9a8;
	--gold-lo:#8a6f3a;
	--text:#f3ecdf;
	--muted:#a39a88;
	--line:color-mix(in srgb, var(--gold) 18%, transparent);
	--serif:"Cormorant Garamond", "Times New Roman", serif;
	--sans:"Manrope", system-ui, -apple-system, sans-serif;
	--ease:cubic-bezier(.2,.7,.2,1);
	--gutter:clamp(16px, 5vw, 40px);
	--maxw:760px;
}

*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; scroll-padding-top:76px; -webkit-text-size-adjust:100%; }
body{
	margin:0;
	background:var(--ink);
	color:var(--text);
	font:400 15px/1.55 var(--sans);
	-webkit-font-smoothing:antialiased;
	overflow-x:hidden;
}
img{ display:block; max-width:100%; }
a{ color:inherit; text-decoration:none; }
h1,h2,h3,p{ margin:0; }

/* Film greni */
.grain{
	position:fixed; inset:0; z-index:100; pointer-events:none; opacity:.06; mix-blend-mode:overlay;
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* Süsleme */
.ornament{ display:flex; align-items:center; justify-content:center; gap:14px; color:var(--gold); }
.ornament span{ height:1px; width:64px; background:linear-gradient(90deg, transparent, var(--gold)); }
.ornament span:last-child{ background:linear-gradient(90deg, var(--gold), transparent); }
.ornament i{ font-style:normal; font-size:11px; }
.ornament.small span{ width:40px; }
.ornament.small i{ font-size:9px; }

/* Üst bar */
.topbar{
	position:fixed; top:0; left:0; right:0; z-index:50;
	background:rgba(11,10,8,.78);
	-webkit-backdrop-filter:saturate(140%) blur(14px);
	backdrop-filter:saturate(140%) blur(14px);
	border-bottom:1px solid var(--line);
	transform:translateY(-100%);
	transition:transform .45s var(--ease);
	padding-top:env(safe-area-inset-top);
}
.topbar.show{ transform:none; }
.topbar-inner{ display:flex; align-items:center; gap:14px; max-width:var(--maxw); margin:0 auto; padding:10px 0 10px var(--gutter); }
.topbar-brand{ font:italic 500 24px/1 var(--serif); color:var(--gold-hi); flex:none; }
.chips{
	display:flex; gap:8px; overflow-x:auto; scrollbar-width:none;
	padding-right:var(--gutter);
	-webkit-mask-image:linear-gradient(90deg, transparent 0, #000 12px, #000 calc(100% - 28px), transparent);
	mask-image:linear-gradient(90deg, transparent 0, #000 12px, #000 calc(100% - 28px), transparent);
	padding-left:12px;
}
.chips::-webkit-scrollbar{ display:none; }
.chip{
	flex:none; padding:7px 14px; border-radius:999px;
	font-size:12px; letter-spacing:.06em; text-transform:uppercase; white-space:nowrap;
	color:var(--muted); border:1px solid var(--line);
	transition:color .3s, background .3s, border-color .3s;
}
.chip.active{ color:var(--ink); background:linear-gradient(135deg, var(--gold-hi), var(--gold)); border-color:transparent; }

/* Hero */
.hero{
	position:relative; text-align:center;
	padding:calc(56px + env(safe-area-inset-top)) var(--gutter) 40px;
	max-width:var(--maxw); margin:0 auto;
}
.hero-glow{
	position:absolute; inset:-20% -30% auto; height:520px; z-index:-1; pointer-events:none;
	background:radial-gradient(ellipse at 50% 30%, color-mix(in srgb, var(--gold) 22%, transparent), transparent 62%);
}
.hero-logo{
	width:auto; max-width:min(100%, 360px); max-height:180px; height:auto;
	margin:0 auto;
	animation:rise 1.2s var(--ease) both;
}
/* logonun geniş boş kenarlarını kırp, amblemi büyüt */
.hero-logo.crop{ width:100%; max-width:520px; max-height:none; aspect-ratio:2.3; object-fit:cover; }
/* logonun siyah zeminini sayfayla eritir */
.hero-logo.on-black{ mix-blend-mode:screen; }
.hero-name{
	font:italic 500 clamp(52px, 15vw, 84px)/1 var(--serif); color:var(--gold-hi);
	animation:rise 1.2s var(--ease) both; margin-bottom:18px;
}
.hero-name small{
	display:block; margin-top:10px;
	font:500 12px/1.4 var(--sans); font-style:normal; letter-spacing:.32em; text-transform:uppercase; color:var(--gold);
}
.hero-kicker{
	margin-top:14px;
	font:500 12px/1 var(--sans); letter-spacing:.5em; text-transform:uppercase; color:var(--gold);
	padding-left:.5em;
}
.hero .ornament{ animation:fade 1.4s .3s var(--ease) both; }

.contact{ display:flex; justify-content:center; flex-wrap:wrap; gap:10px; margin-top:30px; animation:fade 1.2s .5s var(--ease) both; }
.pill{
	display:inline-flex; align-items:center; gap:8px;
	padding:10px 18px; border-radius:999px;
	font-size:13px; letter-spacing:.04em; color:var(--gold-hi);
	border:1px solid var(--line);
	background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,0));
	transition:border-color .3s, background .3s, transform .3s var(--ease);
}
.pill svg{ width:14px; height:14px; }
.pill:hover, .pill:focus-visible{ border-color:var(--gold); background:color-mix(in srgb, var(--gold) 8%, transparent); transform:translateY(-1px); }

.search{
	display:flex; align-items:center; gap:10px;
	margin:26px auto 0; max-width:420px;
	padding:0 18px; height:48px; border-radius:999px;
	background:var(--surface); border:1px solid var(--line);
	color:var(--muted);
	transition:border-color .3s, box-shadow .3s;
	animation:fade 1.2s .7s var(--ease) both;
}
.search:focus-within{ border-color:var(--gold); box-shadow:0 0 0 4px color-mix(in srgb, var(--gold) 12%, transparent); }
.search svg{ width:15px; height:15px; flex:none; }
.search input{
	flex:1; min-width:0; height:100%; border:0; outline:0; background:transparent;
	color:var(--text); font:400 15px var(--sans);
}
.search input::placeholder{ color:var(--muted); }
.search input::-webkit-search-cancel-button{ filter:sepia(1) saturate(3) hue-rotate(5deg); }

/* Kategori vitrini */
.showcase{
	display:grid; grid-template-columns:repeat(2, 1fr); gap:12px;
	max-width:var(--maxw); margin:12px auto 0; padding:0 var(--gutter);
}
.showcase[hidden]{ display:none; }
@media (min-width:640px){ .showcase{ grid-template-columns:repeat(3, 1fr); gap:16px; } }
.tile{
	position:relative; aspect-ratio:4/5; overflow:hidden; border-radius:18px;
	background:var(--surface-2);
	border:1px solid var(--line);
	isolation:isolate;
}
.tile img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform 1.2s var(--ease); filter:saturate(.9) contrast(1.05); }
.tile:hover img{ transform:scale(1.06); }
.tile-mono{
	position:absolute; inset:0; display:grid; place-items:center;
	font:italic 500 92px/1 var(--serif); color:color-mix(in srgb, var(--gold) 35%, transparent);
	background:radial-gradient(circle at 50% 35%, #2a2318, var(--surface-2) 70%);
}
.tile-shade{ position:absolute; inset:0; background:linear-gradient(180deg, rgba(11,10,8,0) 35%, rgba(11,10,8,.92)); }
.tile::after{
	content:""; position:absolute; inset:6px; border-radius:13px; pointer-events:none;
	border:1px solid color-mix(in srgb, var(--gold-hi) 16%, transparent);
}
.tile-text{ position:absolute; left:16px; right:16px; bottom:16px; display:flex; flex-direction:column; gap:4px; }
.tile-name{ font:500 22px/1.05 var(--serif); color:var(--text); }
.tile-count{ font-size:10.5px; letter-spacing:.22em; text-transform:uppercase; color:var(--gold); }

/* Bölümler */
.category{ max-width:var(--maxw); margin:0 auto; padding:64px var(--gutter) 8px; }
.category.hidden{ display:none; }
.cat-head{ position:relative; text-align:center; margin-bottom:22px; }
.cat-banner{
	height:180px; border-radius:20px; margin-bottom:-46px;
	background-size:cover; background-position:center;
	-webkit-mask-image:linear-gradient(180deg, #000 30%, transparent);
	mask-image:linear-gradient(180deg, #000 30%, transparent);
	opacity:.75;
}
.cat-title{
	position:relative;
	font:500 clamp(34px, 8vw, 46px)/1 var(--serif); letter-spacing:.01em;
	background:linear-gradient(180deg, var(--gold-hi), var(--gold) 70%);
	-webkit-background-clip:text; background-clip:text; color:transparent;
	margin-bottom:12px;
}

.items{ list-style:none; margin:0; padding:0; }
.item{
	display:flex; gap:14px; align-items:center;
	padding:16px 2px;
	border-bottom:1px solid color-mix(in srgb, var(--gold) 9%, transparent);
}
.item:last-child{ border-bottom:0; }
.item.hidden{ display:none; }
.item-thumb{ flex:none; padding:0; border:0; background:none; cursor:zoom-in; border-radius:16px; }
.item-thumb:focus-visible{ outline:2px solid var(--gold); outline-offset:3px; }
.item-img{ width:76px; height:76px; border-radius:16px; object-fit:cover; border:1px solid var(--line); transition:transform .5s var(--ease); }
.item-thumb:hover .item-img{ transform:scale(1.04); }

/* Fotoğraf büyütme */
.lightbox{
	width:min(92vw, 560px); max-height:90vh; padding:0; border:1px solid var(--line); border-radius:22px;
	background:var(--surface); color:var(--text); overflow:hidden;
	box-shadow:0 30px 80px rgba(0,0,0,.7);
}
.lightbox::backdrop{ background:rgba(5,4,3,.82); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); }
.lightbox[open]{ animation:pop .45s var(--ease); }
.lightbox img{ width:100%; max-height:70vh; object-fit:cover; }
.lightbox-title{ padding:16px 20px 20px; text-align:center; font:500 24px/1.2 var(--serif); color:var(--gold-hi); }
.lightbox-close{
	position:absolute; top:12px; right:12px; width:38px; height:38px; border-radius:50%;
	border:1px solid color-mix(in srgb, var(--gold-hi) 35%, transparent); background:rgba(11,10,8,.6); color:var(--gold-hi);
	font-size:22px; line-height:1; cursor:pointer;
}
@keyframes pop{ from{ opacity:0; transform:scale(.96); } to{ opacity:1; transform:none; } }
.item-body{ flex:1; min-width:0; }
.item-line{ display:flex; align-items:baseline; gap:10px; }
.item-name{ font:500 19px/1.25 var(--serif); color:var(--text); letter-spacing:.005em; }
.item-dots{ flex:1; min-width:16px; border-bottom:1px dotted color-mix(in srgb, var(--gold) 40%, transparent); transform:translateY(-4px); }
.item-price{
	flex:none; font:500 15px/1 var(--sans); color:var(--gold-hi);
	font-variant-numeric:tabular-nums; letter-spacing:.02em;
}
.item-price small{ font-size:12px; margin-left:3px; color:var(--gold); }
.item-opts{ margin-top:5px; font-size:12.5px; color:var(--muted); letter-spacing:.02em; }

.empty{ text-align:center; color:var(--muted); font:italic 20px var(--serif); padding:48px var(--gutter); }

/* Alt bilgi */
.footer{ text-align:center; padding:72px var(--gutter) calc(48px + env(safe-area-inset-bottom)); margin-top:48px; border-top:1px solid var(--line); }
.footer-brand{ margin-top:18px; font:italic 500 36px/1 var(--serif); color:var(--gold-hi); }
.footer-note{ margin-top:8px; color:var(--muted); font:italic 17px var(--serif); }
.footer-copy{ margin-top:22px; font-size:11px; letter-spacing:.12em; text-transform:uppercase; color:rgba(163,154,136,.6); }
.footer-copy a{ color:var(--gold); border-bottom:1px solid var(--line); transition:color .3s, border-color .3s; }
.footer-copy a:hover, .footer-copy a:focus-visible{ color:var(--gold-hi); border-color:var(--gold); }

/* Başa dön */
.to-top{
	position:fixed; right:18px; bottom:calc(18px + env(safe-area-inset-bottom)); z-index:40;
	width:46px; height:46px; border-radius:50%; display:grid; place-items:center;
	color:var(--ink); background:linear-gradient(135deg, var(--gold-hi), var(--gold));
	box-shadow:0 10px 30px rgba(0,0,0,.5), 0 0 0 1px color-mix(in srgb, var(--gold-hi) 30%, transparent) inset;
	opacity:0; transform:translateY(12px) scale(.9); pointer-events:none;
	transition:opacity .4s, transform .4s var(--ease);
}
.to-top.show{ opacity:1; transform:none; pointer-events:auto; }
.to-top svg{ width:18px; height:18px; }

/* Hareket */
.reveal{ opacity:0; transform:translateY(18px); transition:opacity .9s var(--ease) var(--d, 0ms), transform .9s var(--ease) var(--d, 0ms); }
.reveal.in{ opacity:1; transform:none; }
.no-js .reveal{ opacity:1; transform:none; }
@keyframes rise{ from{ opacity:0; transform:translateY(16px); } to{ opacity:1; transform:none; } }
@keyframes fade{ from{ opacity:0; } to{ opacity:1; } }

@media (prefers-reduced-motion:reduce){
	html{ scroll-behavior:auto; }
	*,*::before,*::after{ animation:none !important; transition:none !important; }
	.reveal{ opacity:1; transform:none; }
}
