:root {
  --sea: #0e4a63;
  --sea-2: #1f6f8b;
  --sand: #f6f1e7;
  --sand-2: #ece3d2;
  --sunset: #e07a3a;
  --olive: #6b7a3a;
  --ink: #1b2a33;
  --muted: #5d6b73;
  --card: #ffffff;
  --line: #e2dccf;
  --ok: #2e8b57;
  --closed: #b0453a;
  --radius: 18px;
  --shadow: 0 10px 30px rgba(14, 74, 99, .12);
  --serif: 'Fraunces', Georgia, serif;
  --sans: 'Manrope', system-ui, -apple-system, Segoe UI, sans-serif;
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: var(--sans);
  color: var(--ink);
  background: var(--sand);
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}
img { max-width: 100%; display: block; }
a { color: inherit; }
button { font: inherit; cursor: pointer; }
.wrap { width: min(1180px, 100% - 32px); margin-inline: auto; }
h1, h2, h3 { font-family: var(--serif); font-weight: 600; line-height: 1.15; margin: 0 0 .4em; letter-spacing: -.01em; }
h2 { font-size: clamp(1.8rem, 3.5vw, 2.6rem); }
.eyebrow { text-transform: uppercase; letter-spacing: .14em; font-size: .75rem; font-weight: 700; color: var(--sunset); margin-bottom: .6rem; }
.lead { color: var(--muted); font-size: 1.05rem; max-width: 60ch; }
section { padding: 88px 0; }
.skip { position: absolute; left: -999px; }
.skip:focus { left: 16px; top: 16px; z-index: 100; background: #fff; padding: 8px 12px; border-radius: 8px; }
:focus-visible { outline: 3px solid var(--sunset); outline-offset: 2px; }

/* Demo şeridi */
.demo-bar { background: var(--ink); color: #fff; font-size: .8rem; text-align: center; padding: 6px 12px; }

/* Header */
header.site {
  position: sticky; top: 0; z-index: 50;
  background: rgba(246, 241, 231, .88);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid transparent;
  transition: border-color .3s, background .3s;
}
header.site.scrolled { border-color: var(--line); background: rgba(246, 241, 231, .96); }
.nav { display: flex; align-items: center; justify-content: space-between; height: 72px; gap: 16px; }
.brand { display: flex; align-items: center; gap: 10px; text-decoration: none; }
.brand img { height: 44px; width: auto; }
.brand span { font-family: var(--serif); font-size: 1.35rem; font-weight: 600; color: var(--sea); }
.nav ul { display: flex; gap: 28px; list-style: none; margin: 0; padding: 0; }
.nav ul a { text-decoration: none; font-weight: 600; font-size: .95rem; color: var(--ink); position: relative; }
.nav ul a::after { content: ''; position: absolute; left: 0; right: 100%; bottom: -6px; height: 2px; background: var(--sunset); transition: right .25s; }
.nav ul a:hover::after { right: 0; }
.nav-actions { display: flex; align-items: center; gap: 10px; }
.lang { display: flex; border: 1px solid var(--line); border-radius: 999px; overflow: hidden; background: #fff; }
.lang button { border: 0; background: none; padding: 6px 12px; font-weight: 700; font-size: .8rem; color: var(--muted); }
.lang button.on { background: var(--sea); color: #fff; }
.btn { display: inline-flex; align-items: center; gap: 8px; border: 0; border-radius: 999px; padding: 12px 20px; font-weight: 700; text-decoration: none; transition: transform .15s, box-shadow .2s, background .2s; min-height: 44px; }
.btn:hover { transform: translateY(-1px); }
.btn-primary { background: var(--sunset); color: #fff; box-shadow: 0 6px 18px rgba(224, 122, 58, .35); }
.btn-ghost { background: rgba(255, 255, 255, .18); color: #fff; border: 1px solid rgba(255, 255, 255, .5); backdrop-filter: blur(6px); }
.btn-line { background: #fff; color: var(--sea); border: 1px solid var(--line); }
.menu-toggle { display: none; background: none; border: 0; width: 44px; height: 44px; }
.menu-toggle span { display: block; width: 22px; height: 2px; background: var(--ink); margin: 5px auto; transition: .25s; }

/* Hero */
.hero { position: relative; min-height: min(88vh, 760px); display: grid; align-items: end; color: #fff; padding: 0; overflow: hidden; }
.hero-bg { position: absolute; inset: 0; background-size: cover; background-position: center; transform: scale(1.06); animation: heroZoom 18s ease-out forwards; }
@keyframes heroZoom { to { transform: scale(1); } }
.hero::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10, 35, 48, .2) 0%, rgba(10, 35, 48, .35) 45%, rgba(10, 35, 48, .85) 100%), linear-gradient(90deg, rgba(10, 35, 48, .45), transparent 60%); }
.hero-inner { position: relative; z-index: 2; padding: 0 0 72px; text-shadow: 0 2px 18px rgba(0, 0, 0, .45); }
.hero .eyebrow { display: inline-block; background: rgba(10, 35, 48, .55); color: #ffcfae !important; padding: 6px 12px; border-radius: 999px; text-shadow: none; backdrop-filter: blur(6px); }
.hero h1 { font-size: clamp(2.4rem, 6vw, 4.6rem); max-width: 14ch; }
.hero p { font-size: 1.15rem; max-width: 52ch; opacity: .92; }
.hero-cta { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.hero-chips { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
.chip-glass { background: rgba(255, 255, 255, .14); border: 1px solid rgba(255, 255, 255, .3); border-radius: 999px; padding: 8px 14px; font-size: .88rem; backdrop-filter: blur(8px); }
.wave { position: absolute; bottom: -1px; left: 0; width: 100%; z-index: 3; color: var(--sand); }

/* Şimdi açık */
.now { padding: 48px 0 24px; }
.now-head { display: flex; justify-content: space-between; align-items: end; gap: 16px; flex-wrap: wrap; }
.weather { display: flex; gap: 18px; align-items: center; background: #fff; border-radius: var(--radius); padding: 14px 20px; box-shadow: var(--shadow); font-size: .92rem; }
.weather b { font-family: var(--serif); font-size: 1.5rem; color: var(--sea); }
.now-strip { display: flex; gap: 14px; overflow-x: auto; padding: 18px 2px 8px; scroll-snap-type: x mandatory; }
.now-pill { scroll-snap-align: start; flex: 0 0 auto; display: flex; align-items: center; gap: 10px; background: #fff; border: 1px solid var(--line); border-radius: 999px; padding: 6px 16px 6px 6px; text-decoration: none; font-weight: 600; font-size: .9rem; transition: border-color .2s; }
.now-pill:hover { border-color: var(--sea-2); }
.now-pill img { width: 34px; height: 34px; border-radius: 50%; object-fit: cover; }

/* Status rozeti */
.status { display: inline-flex; align-items: center; gap: 6px; font-size: .78rem; font-weight: 700; padding: 4px 10px; border-radius: 999px; }
.status::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.status.open { color: var(--ok); background: rgba(46, 139, 87, .12); }
.status.open::before { animation: pulse 1.8s infinite; }
.status.closed { color: var(--closed); background: rgba(176, 69, 58, .1); }
@keyframes pulse { 0% { box-shadow: 0 0 0 0 rgba(46, 139, 87, .5); } 70% { box-shadow: 0 0 0 7px rgba(46, 139, 87, 0); } 100% { box-shadow: 0 0 0 0 rgba(46, 139, 87, 0); } }

/* Keşfet: filtre + harita + kartlar */
.explore-grid { display: grid; grid-template-columns: 1.05fr 1fr; gap: 28px; margin-top: 28px; align-items: start; }
.filters { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.filter { border: 1px solid var(--line); background: #fff; border-radius: 999px; padding: 8px 14px; font-weight: 600; font-size: .88rem; color: var(--ink); min-height: 40px; transition: .2s; }
.filter:hover { border-color: var(--sea-2); }
.filter.on { background: var(--sea); border-color: var(--sea); color: #fff; }
.near-btn { border-style: dashed; }
#map { height: 640px; border-radius: var(--radius); box-shadow: var(--shadow); position: sticky; top: 96px; z-index: 1; }
.cards { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.card { background: var(--card); border-radius: var(--radius); overflow: hidden; box-shadow: 0 2px 0 var(--line); border: 1px solid var(--line); display: flex; flex-direction: column; transition: transform .25s, box-shadow .25s; text-decoration: none; }
.card:hover, .card.hl { transform: translateY(-4px); box-shadow: var(--shadow); }
.card-img { position: relative; aspect-ratio: 4 / 3; overflow: hidden; background: var(--sand-2); }
.card-img img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s; }
.card:hover .card-img img { transform: scale(1.06); }
.card-img .status { position: absolute; top: 12px; left: 12px; background: rgba(255, 255, 255, .95); }
.card-img .dist { position: absolute; top: 12px; right: 12px; background: rgba(27, 42, 51, .8); color: #fff; font-size: .75rem; font-weight: 700; padding: 4px 10px; border-radius: 999px; }
.card-body { padding: 16px 18px 18px; display: flex; flex-direction: column; gap: 6px; flex: 1; }
.card-body h3 { font-size: 1.25rem; margin: 0; }
.card-type { color: var(--muted); font-size: .88rem; }
.tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 4px; }
.tag { font-size: .72rem; font-weight: 700; color: var(--sea); background: rgba(31, 111, 139, .08); padding: 3px 8px; border-radius: 6px; }
.card-foot { margin-top: auto; padding-top: 10px; display: flex; justify-content: space-between; align-items: center; font-size: .85rem; font-weight: 700; color: var(--sunset); }
.empty { grid-column: 1 / -1; text-align: center; padding: 40px; color: var(--muted); background: #fff; border-radius: var(--radius); }

/* Leaflet pin */
.pin { width: 38px; height: 38px; border-radius: 50% 50% 50% 0; transform: rotate(-45deg); border: 3px solid #fff; box-shadow: 0 4px 10px rgba(0, 0, 0, .3); display: grid; place-items: center; transition: transform .2s; }
.pin span { transform: rotate(45deg); color: #fff; font-weight: 800; font-size: .8rem; font-family: var(--sans); }
.pin.active { transform: rotate(-45deg) scale(1.25); }
.leaflet-popup-content-wrapper { border-radius: 14px; }
.leaflet-popup-content { margin: 0; width: 240px !important; font-family: var(--sans); }
.pop img { width: 100%; height: 120px; object-fit: cover; border-radius: 14px 14px 0 0; }
.pop div { padding: 10px 14px 14px; }
.pop h4 { margin: 0 0 4px; font-family: var(--serif); font-size: 1.1rem; }
.pop a { color: var(--sunset); font-weight: 700; text-decoration: none; font-size: .85rem; margin-right: 10px; }

/* Adalı Kart bandı */
.adali { background: linear-gradient(120deg, var(--sea) 0%, #0b3a4f 100%); color: #fff; border-radius: 28px; padding: 48px; display: grid; grid-template-columns: 1.3fr 1fr; gap: 32px; align-items: center; position: relative; overflow: hidden; }
.adali::before { content: ''; position: absolute; right: -80px; top: -80px; width: 320px; height: 320px; border-radius: 50%; background: radial-gradient(circle, rgba(224, 122, 58, .45), transparent 70%); }
.adali h2 { color: #fff; }
.adali p { opacity: .85; }
.adali .big { font-family: var(--serif); font-size: clamp(4rem, 9vw, 6.5rem); line-height: 1; color: #ffb27d; }
.cardmock { position: relative; aspect-ratio: 1.6; border-radius: 18px; background: linear-gradient(135deg, #f7c59f, var(--sunset) 60%, #b5532a); box-shadow: 0 20px 40px rgba(0, 0, 0, .35); padding: 22px; display: flex; flex-direction: column; justify-content: space-between; transform: rotate(-4deg); transition: transform .4s; }
.cardmock:hover { transform: rotate(0) scale(1.03); }
.cardmock b { font-family: var(--serif); font-size: 1.6rem; }
.cardmock small { opacity: .85; letter-spacing: .2em; }
.calc { margin-top: 18px; background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .2); border-radius: 14px; padding: 14px 16px; }
.calc label { font-size: .85rem; opacity: .85; display: block; margin-bottom: 6px; }
.calc input[type=range] { width: 100%; accent-color: var(--sunset); }
.calc output { font-weight: 800; }

/* Online rezervasyon */
.res { display: grid; grid-template-columns: 1fr 1.15fr; gap: 36px; align-items: start; }
.res-venues { display: grid; gap: 14px; margin-top: 22px; }
.res-venue { display: flex; gap: 14px; align-items: center; background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 10px; text-decoration: none; transition: border-color .2s; }
.res-venue:hover { border-color: var(--sunset); }
.res-venue img { width: 84px; height: 64px; object-fit: cover; border-radius: 12px; }
.res-venue b { font-family: var(--serif); font-size: 1.1rem; display: block; }
.steps { list-style: none; padding: 0; margin: 22px 0 0; display: grid; gap: 10px; counter-reset: s; }
.steps li { counter-increment: s; display: flex; gap: 12px; align-items: center; font-weight: 600; }
.steps li::before { content: counter(s); width: 30px; height: 30px; border-radius: 50%; background: var(--sunset); color: #fff; display: grid; place-items: center; font-weight: 800; font-size: .85rem; }
.res-form { background: #fff; border-radius: 24px; padding: 28px; box-shadow: var(--shadow); border: 1px solid var(--line); }
.res-form .row3 { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 12px; }
.stepper { display: flex; align-items: center; border: 1px solid var(--line); border-radius: 12px; background: var(--sand); }
.stepper button { width: 40px; height: 46px; border: 0; background: none; font-size: 1.2rem; font-weight: 700; color: var(--sea); }
.stepper input { border: 0; background: none; text-align: center; padding: 0; width: 100%; }
.res-form .btn { width: 100%; justify-content: center; margin-top: 16px; }
.fine { font-size: .78rem; color: var(--muted); margin-top: 10px; }
.walkin { display: flex; gap: 12px; align-items: center; background: rgba(46, 139, 87, .08); border: 1px solid rgba(46, 139, 87, .25); color: #1f6b43; border-radius: 16px; padding: 16px; font-weight: 600; }
@media (max-width: 1024px) { .res { grid-template-columns: 1fr; } }
@media (max-width: 760px) { .res-form .row3 { grid-template-columns: 1fr 1fr; } .res-form { padding: 20px; } }

/* Etkinlikler */
.events { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-top: 28px; }
.event { background: #fff; border: 1px solid var(--line); border-radius: var(--radius); padding: 20px; display: flex; flex-direction: column; gap: 6px; }
.event .d { font-family: var(--serif); font-size: 2.2rem; color: var(--sea); line-height: 1; }
.event .m { text-transform: uppercase; font-size: .75rem; letter-spacing: .12em; color: var(--muted); font-weight: 700; }
.event h3 { font-size: 1.1rem; margin: 8px 0 0; }
.event a { margin-top: auto; padding-top: 8px; font-size: .85rem; font-weight: 700; color: var(--sunset); text-decoration: none; }

/* Kurumsal */
.about { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; }
.about-img { border-radius: 28px; overflow: hidden; aspect-ratio: 4 / 5; box-shadow: var(--shadow); }
.about-img img { width: 100%; height: 100%; object-fit: cover; }
.stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin: 24px 0; }
.stat b { display: block; font-family: var(--serif); font-size: 2.2rem; color: var(--sea); }
.stat span { font-size: .85rem; color: var(--muted); }
.board { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.board span { background: #fff; border: 1px solid var(--line); border-radius: 10px; padding: 8px 12px; font-size: .85rem; }
.board span small { display: block; color: var(--muted); }

/* İletişim + geri bildirim */
.contact { display: grid; grid-template-columns: 1fr 1.1fr; gap: 28px; }
.panel { background: #fff; border-radius: var(--radius); padding: 28px; border: 1px solid var(--line); }
.contact-list { list-style: none; padding: 0; margin: 0; display: grid; gap: 14px; }
.contact-list li { display: flex; gap: 12px; align-items: flex-start; }
.ic { width: 40px; height: 40px; border-radius: 12px; background: rgba(31, 111, 139, .1); color: var(--sea); display: grid; place-items: center; flex: 0 0 auto; }
form .row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
form label { display: block; font-size: .85rem; font-weight: 600; margin: 12px 0 6px; }
form input, form select, form textarea { width: 100%; border: 1px solid var(--line); border-radius: 12px; padding: 12px 14px; font: inherit; background: var(--sand); }
form textarea { min-height: 110px; resize: vertical; }
.stars { display: flex; gap: 4px; }
.stars button { background: none; border: 0; font-size: 1.7rem; color: var(--line); padding: 0 2px; line-height: 1; }
.stars button.on { color: #f2a33a; }
.check { display: flex; gap: 8px; align-items: flex-start; font-size: .82rem; color: var(--muted); margin-top: 12px; }
.check input { width: auto; margin-top: 3px; }
.toast { position: fixed; left: 50%; bottom: 96px; transform: translateX(-50%) translateY(20px); background: var(--ink); color: #fff; padding: 12px 20px; border-radius: 999px; opacity: 0; transition: .3s; z-index: 200; pointer-events: none; font-weight: 600; }
.toast.show { opacity: 1; transform: translateX(-50%) translateY(0); }

/* Footer */
footer { background: #0b2b3a; color: rgba(255, 255, 255, .8); padding: 56px 0 120px; font-size: .9rem; }
.foot { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 28px; }
footer h4 { color: #fff; font-family: var(--serif); font-size: 1.05rem; margin: 0 0 12px; }
footer ul { list-style: none; padding: 0; margin: 0; display: grid; gap: 8px; }
footer a { text-decoration: none; }
footer a:hover { color: #fff; }
.apps { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 10px; }
.apps a { border: 1px solid rgba(255, 255, 255, .3); border-radius: 10px; padding: 8px 12px; font-size: .8rem; }
.legal { border-top: 1px solid rgba(255, 255, 255, .12); margin-top: 36px; padding-top: 18px; display: flex; justify-content: space-between; flex-wrap: wrap; gap: 12px; font-size: .8rem; }

/* Mobil alt bar */
.dock { display: none; position: fixed; left: 12px; right: 12px; bottom: 12px; z-index: 60; background: rgba(27, 42, 51, .94); backdrop-filter: blur(10px); border-radius: 20px; padding: 6px; grid-template-columns: repeat(4, 1fr); box-shadow: 0 10px 30px rgba(0, 0, 0, .3); }
.dock a { color: #fff; text-decoration: none; display: flex; flex-direction: column; align-items: center; gap: 2px; font-size: .7rem; font-weight: 700; padding: 8px 4px; border-radius: 14px; min-height: 52px; justify-content: center; }
.dock a:active { background: rgba(255, 255, 255, .1); }
.dock a.wa { background: #25d366; }

/* Tesis detay sayfası */
.p-hero { position: relative; height: min(70vh, 600px); color: #fff; display: grid; align-items: end; overflow: hidden; }
.p-hero img.bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.p-hero::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0, 0, 0, .05), rgba(0, 0, 0, .7)); }
.p-hero .wrap { position: relative; z-index: 2; padding-bottom: 48px; }
.p-hero h1 { font-size: clamp(2.4rem, 6vw, 4.2rem); }
.crumb { font-size: .85rem; margin-bottom: 12px; }
.crumb a { background: rgba(0, 0, 0, .35); padding: 6px 12px; border-radius: 999px; backdrop-filter: blur(6px); }
.p-hero .status { background: rgba(255, 255, 255, .95); }
.crumb a { text-decoration: none; }
.quick { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-top: -36px; position: relative; z-index: 5; }
.quick a { background: #fff; border-radius: 16px; padding: 16px; text-decoration: none; display: flex; align-items: center; gap: 12px; box-shadow: var(--shadow); font-weight: 700; transition: transform .2s; }
.quick a:hover { transform: translateY(-3px); }
.p-grid { display: grid; grid-template-columns: 1.6fr 1fr; gap: 36px; margin-top: 48px; }
.menu-tabs { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 6px; margin: 16px 0; }
.menu-tabs button { flex: 0 0 auto; border: 1px solid var(--line); background: #fff; border-radius: 999px; padding: 8px 14px; font-weight: 700; font-size: .88rem; }
.menu-tabs button.on { background: var(--accent, var(--sea)); color: #fff; border-color: transparent; }
.menu-toggle-price { display: flex; align-items: center; gap: 10px; font-size: .88rem; font-weight: 600; background: #fff; border: 1px solid var(--line); border-radius: 14px; padding: 10px 14px; }
.switch { position: relative; width: 44px; height: 26px; flex: 0 0 auto; }
.switch input { opacity: 0; width: 0; height: 0; }
.switch span { position: absolute; inset: 0; background: var(--line); border-radius: 999px; transition: .2s; cursor: pointer; }
.switch span::before { content: ''; position: absolute; width: 20px; height: 20px; left: 3px; top: 3px; background: #fff; border-radius: 50%; transition: .2s; }
.switch input:checked + span { background: var(--sunset); }
.switch input:checked + span::before { transform: translateX(18px); }
.menu-list { list-style: none; padding: 0; margin: 0; }
.menu-list li { display: flex; justify-content: space-between; gap: 16px; padding: 14px 0; border-bottom: 1px dashed var(--line); }
.menu-list .nm { font-weight: 700; }
.menu-list .al { display: flex; gap: 4px; margin-top: 4px; flex-wrap: wrap; }
.menu-list .al span { font-size: .68rem; background: var(--sand-2); padding: 2px 6px; border-radius: 4px; color: var(--muted); }
.price { text-align: right; white-space: nowrap; font-weight: 800; color: var(--sea); }
.price s { display: block; color: var(--muted); font-weight: 500; font-size: .8rem; }
.side { display: grid; gap: 16px; align-content: start; }
.hours { width: 100%; border-collapse: collapse; font-size: .9rem; }
.hours td { padding: 6px 0; border-bottom: 1px solid var(--line); }
.hours td:last-child { text-align: right; font-weight: 600; }
.hours tr.today td { color: var(--sea); font-weight: 800; }
.mini-map { height: 220px; border-radius: 14px; margin-top: 12px; }
.gallery { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 16px; }
.gallery button { padding: 0; border: 0; border-radius: 14px; overflow: hidden; aspect-ratio: 1; background: var(--sand-2); }
.gallery img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.gallery button:hover img { transform: scale(1.06); }
.lightbox { position: fixed; inset: 0; background: rgba(0, 0, 0, .9); display: none; place-items: center; z-index: 300; padding: 24px; }
.lightbox.on { display: grid; }
.lightbox img { max-height: 86vh; border-radius: 12px; }
.lightbox button { position: absolute; top: 16px; right: 16px; background: #fff; border: 0; border-radius: 50%; width: 44px; height: 44px; font-size: 1.3rem; }
.nearby { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 20px; }

/* Görünür olunca animasyon */
.reveal { opacity: 0; transform: translateY(24px); transition: opacity .7s ease, transform .7s ease; }
.reveal.in { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; }
  .reveal { opacity: 1; transform: none; }
}

/* Responsive */
@media (max-width: 1024px) {
  .explore-grid { grid-template-columns: 1fr; }
  #map { position: relative; top: 0; height: 420px; order: -1; }
  .events { grid-template-columns: repeat(2, 1fr); }
  .foot { grid-template-columns: 1fr 1fr; }
  .p-grid { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  section { padding: 64px 0; }
  .nav ul { display: none; position: absolute; top: 72px; left: 0; right: 0; background: var(--sand); flex-direction: column; padding: 16px 24px 24px; gap: 18px; border-bottom: 1px solid var(--line); }
  .nav ul.open { display: flex; }
  .menu-toggle { display: block; }
  .nav-actions .btn { display: none; }
  .cards { grid-template-columns: 1fr; }
  .adali { grid-template-columns: 1fr; padding: 32px 24px; }
  .about { grid-template-columns: 1fr; }
  .about-img { aspect-ratio: 16 / 10; }
  .contact { grid-template-columns: 1fr; }
  form .row { grid-template-columns: 1fr; }
  .events { grid-template-columns: 1fr; }
  .foot { grid-template-columns: 1fr; }
  .dock { display: grid; }
  .quick { grid-template-columns: 1fr 1fr; }
  .nearby { grid-template-columns: 1fr; }
  .weather { width: 100%; justify-content: space-between; }
  .stats { grid-template-columns: repeat(3, 1fr); }
}

/* ---- Karşılaştırma sonrası eklenenler ---- */
/* Sayaç bandı (Bodrum Belediye AŞ'den uyarlandı) */
.stats-band { padding: 8px 0 0; }
.stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.stat-box { background: #fff; border: 1px solid var(--line); border-radius: var(--radius); padding: 22px 24px; display: flex; flex-direction: column; gap: 4px; }
.stat-box b { font-family: var(--serif); font-size: clamp(2rem, 4vw, 2.8rem); color: var(--sea); line-height: 1; }
.stat-box span { color: var(--muted); font-size: .9rem; font-weight: 600; }
.stat-box.accent { background: var(--sea); border-color: var(--sea); }
.stat-box.accent b { color: #ffb27d; }
.stat-box.accent span { color: #d3e3e8; }
.price-promise { display: inline-block; margin: 6px 0 0; font-size: .9rem; font-weight: 600; color: #1f6b43; background: rgba(46, 139, 87, .1); padding: 8px 14px; border-radius: 999px; }

/* İki satırlı filtre: Tür + Özellik */
.filters { flex-direction: column; align-items: flex-start; }
.filter-row { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.filter-label { font-size: .75rem; font-weight: 800; text-transform: uppercase; letter-spacing: .12em; color: var(--muted); width: 72px; }
.filter.type.on { background: var(--sunset); border-color: var(--sunset); }

/* Etkinlik etiketleri (Kültür AŞ'den uyarlandı) */
.ev-top { display: flex; justify-content: space-between; align-items: flex-start; gap: 8px; }
.ev-tag { font-size: .72rem; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; padding: 4px 10px; border-radius: 999px; }
.ev-tag.ucretsiz { color: #1f6b43; background: rgba(46, 139, 87, .12); }
.ev-tag.biletli { color: #8a3f12; background: rgba(224, 122, 58, .15); }

/* Kurumsal linkler */
.corp-links { display: flex; flex-wrap: wrap; gap: 8px 20px; margin-bottom: 16px; font-size: .85rem; }
.corp-links a:hover { color: #fff; }

/* Alt sayfa başlığı */
.sub-hero { background: linear-gradient(120deg, var(--sea), #0b3a4f); color: #fff; padding: 72px 0 64px; }
.sub-hero h1 { font-size: clamp(2.2rem, 5vw, 3.6rem); max-width: 18ch; }
.sub-hero p { color: #d3e3e8; max-width: 60ch; font-size: 1.08rem; }
.sub-nav { position: sticky; top: 72px; z-index: 40; background: rgba(246, 241, 231, .96); border-bottom: 1px solid var(--line); }
.sub-nav .wrap { display: flex; gap: 8px; overflow-x: auto; padding-top: 10px; padding-bottom: 10px; }
.sub-nav a { flex: 0 0 auto; text-decoration: none; font-weight: 700; font-size: .88rem; padding: 8px 14px; border-radius: 999px; border: 1px solid var(--line); background: #fff; }
.sub-nav a:hover { border-color: var(--sea-2); }

/* Adalı Kart sayfası */
.a-grid { display: grid; grid-template-columns: 1.1fr 1fr; gap: 28px; align-items: start; }
.a-steps { list-style: none; padding: 0; margin: 0; display: grid; gap: 14px; counter-reset: s; }
.a-steps li { counter-increment: s; display: flex; gap: 14px; background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 16px 18px; }
.a-steps li::before { content: counter(s); flex: 0 0 34px; height: 34px; border-radius: 50%; background: var(--sunset); color: #fff; font-weight: 800; display: grid; place-items: center; }
.a-table { width: 100%; border-collapse: collapse; background: #fff; border-radius: 16px; overflow: hidden; border: 1px solid var(--line); }
.a-table th, .a-table td { text-align: left; padding: 14px 16px; border-bottom: 1px solid var(--line); font-size: .95rem; }
.a-table th { background: var(--sand-2); font-size: .8rem; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); }
.a-table td:last-child { font-weight: 800; color: var(--sea); }
.a-venues { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.a-venue { display: flex; gap: 12px; align-items: center; background: #fff; border: 1px solid var(--line); border-radius: 14px; padding: 8px; text-decoration: none; }
.a-venue:hover { border-color: var(--sunset); }
.a-venue img { width: 72px; height: 56px; object-fit: cover; border-radius: 10px; }
.a-venue b { display: block; font-family: var(--serif); }
.a-venue span { font-size: .8rem; color: var(--muted); }
.faq details { background: #fff; border: 1px solid var(--line); border-radius: 14px; padding: 14px 18px; margin-bottom: 10px; }
.faq summary { font-weight: 700; cursor: pointer; }
.faq p { color: var(--muted); margin: 10px 0 0; }

/* Kurumsal sayfa */
.corp-sec { padding: 56px 0; border-bottom: 1px solid var(--line); scroll-margin-top: 140px; }
.corp-sec:last-of-type { border-bottom: 0; }
.info-table { width: 100%; border-collapse: collapse; background: #fff; border: 1px solid var(--line); border-radius: 16px; overflow: hidden; }
.info-table td { padding: 12px 16px; border-bottom: 1px solid var(--line); font-size: .95rem; vertical-align: top; }
.info-table td:first-child { width: 38%; color: var(--muted); font-weight: 600; }
.ph { color: #b4541c; font-weight: 700; }
.notice { background: #fff; border: 1px dashed var(--line); border-radius: 16px; padding: 20px; color: var(--muted); }

@media (max-width: 760px) {
  .stats { grid-template-columns: 1fr 1fr; }
  .filter-label { width: 100%; }
  .a-grid { grid-template-columns: 1fr; }
  .a-venues { grid-template-columns: 1fr; }
}
/* Menü öğeleri tek satırda kalsın */
.nav ul a { white-space: nowrap; }
@media (max-width: 1100px) and (min-width: 761px) { .nav ul { gap: 18px; } .nav ul a { font-size: .88rem; } }
/* Tesis: adres ve dış profiller */
.addr { margin: 0 0 6px; font-size: .92rem; }
.addr a { color: var(--sea); font-weight: 700; text-decoration: none; }
.ext-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 10px; }
.ext { display: flex; flex-direction: column; gap: 2px; text-decoration: none; border: 1px solid var(--line); border-radius: 12px; padding: 10px 12px; background: var(--sand); transition: border-color .2s, transform .15s; }
.ext:hover { transform: translateY(-2px); }
.ext b { font-size: .9rem; }
.ext span { font-size: .72rem; color: var(--muted); }
.ext.google b { color: #1a73e8; } .ext.google:hover { border-color: #1a73e8; }
.ext.ta b { color: #00875a; } .ext.ta:hover { border-color: #00aa6c; }
.ext.ig b { color: #c13584; } .ext.ig:hover { border-color: #c13584; }
@media (max-width: 420px) { .ext-row { grid-template-columns: 1fr; } }
/* Tesis: araçlar, bilmeniz gerekenler, QR */
.tools { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.tool { border: 1px solid var(--line); background: #fff; border-radius: 999px; padding: 8px 14px; font-weight: 700; font-size: .85rem; text-decoration: none; color: var(--ink); min-height: 40px; display: inline-flex; align-items: center; gap: 6px; }
.tool:hover { border-color: var(--sea-2); }
.facts { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; margin-top: 12px; }
.fact { display: flex; gap: 12px; align-items: center; background: #fff; border: 1px solid var(--line); border-radius: 14px; padding: 12px 14px; }
.fi { width: 40px; height: 40px; flex: 0 0 auto; border-radius: 12px; background: rgba(31, 111, 139, .1); display: grid; place-items: center; font-weight: 800; color: var(--sea); }
.fact small { display: block; color: var(--muted); font-size: .75rem; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; }
.fact b { font-size: .92rem; }
.sub-h { font-size: 1.15rem; margin: 22px 0 10px; }
.amen { display: flex; flex-wrap: wrap; gap: 8px; }
.amen span { background: #fff; border: 1px solid var(--line); border-radius: 999px; padding: 6px 12px; font-size: .85rem; font-weight: 600; }
.qr-card { background: #fff; border-radius: 20px; padding: 28px; text-align: center; position: relative; max-width: 320px; }
.qr-card button { position: absolute; top: 10px; right: 10px; width: 36px; height: 36px; border-radius: 50%; border: 0; background: var(--sand); }
.qr-card #qr-box { display: grid; place-items: center; margin: 12px 0; }
.qr-card p { font-size: .82rem; color: var(--muted); margin: 0; }
@media (max-width: 760px) { .facts { grid-template-columns: 1fr; } }
/* İletişim ve ulaşım rehberi */
.c-search { width: 100%; max-width: 520px; display: block; border: 1px solid var(--line); border-radius: 14px; padding: 14px 16px; font: inherit; background: #fff; margin: 8px 0 20px; }
.c-list { display: grid; gap: 14px; }
.c-row { display: grid; grid-template-columns: 140px 1fr auto; gap: 18px; align-items: center; background: #fff; border: 1px solid var(--line); border-radius: 18px; padding: 12px; }
.c-img img { width: 140px; height: 104px; object-fit: cover; border-radius: 12px; }
.c-main h3 { margin: 0 0 4px; font-size: 1.2rem; }
.c-main h3 a { text-decoration: none; }
.c-main .card-type { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-bottom: 6px; }
.c-act { display: flex; flex-direction: column; gap: 6px; }
@media (max-width: 760px) { .c-row { grid-template-columns: 90px 1fr; } .c-img img { width: 90px; height: 80px; } .c-act { grid-column: 1 / -1; flex-direction: row; flex-wrap: wrap; } }
/* Menü kategori fotoğrafları */
.menu-photos { display: flex; gap: 10px; overflow-x: auto; padding: 4px 2px 12px; scroll-snap-type: x mandatory; }
.menu-photos button { flex: 0 0 auto; width: 150px; aspect-ratio: 1; padding: 0; border: 0; border-radius: 14px; overflow: hidden; background: var(--sand-2); scroll-snap-align: start; }
.menu-photos img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.menu-photos button:hover img { transform: scale(1.06); }
/* Sayaç bandı ortalansın (kurumsal .stats kuralının margin'i ezmesin) */
.stats-band .stats { margin: 0 auto; }
/* Örnek Adalı Kart görseli */
.adali-card-img { display: block; width: 100%; max-width: 420px; height: auto; border-radius: 18px; box-shadow: 0 24px 50px rgba(0, 0, 0, .35); transform: rotate(-3deg); transition: transform .4s; }
.adali-card-img:hover { transform: rotate(0) scale(1.02); }
.adali .big + .adali-card-img { margin-top: 12px; }
.a-hero { position: relative; }
.a-hero .adali-card-img { position: absolute; right: 0; top: 50%; transform: translateY(-50%) rotate(-4deg); max-width: 380px; }
.a-hero .adali-card-img:hover { transform: translateY(-50%) rotate(0) scale(1.02); }
.a-hero > :not(.adali-card-img) { max-width: calc(100% - 420px); }
@media (max-width: 960px) {
  .a-hero .adali-card-img { position: static; transform: rotate(-3deg); max-width: 320px; margin: 0 0 24px; }
  .a-hero > :not(.adali-card-img) { max-width: none; }
}
/* Adalı Kart: tesis bazında oran */
.a-venue span.a-rate { display: block; font-weight: 800; color: var(--sunset); margin-top: 2px; }
.a-venue span.a-rate.pending { color: var(--muted); font-weight: 600; }
/* Öne çıkan lezzetler vitrini */
.featured { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-top: 24px; }
.dish { position: relative; display: block; border-radius: var(--radius); overflow: hidden; aspect-ratio: 4 / 5; text-decoration: none; color: #fff; background: var(--sand-2); }
.dish img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s; }
.dish:hover img { transform: scale(1.06); }
.dish::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 45%, rgba(10, 35, 48, .85)); }
.dish-body { position: absolute; left: 0; right: 0; bottom: 0; z-index: 1; padding: 16px; display: flex; flex-direction: column; gap: 4px; }
.dish-body b { font-family: var(--serif); font-size: 1.15rem; }
.dish-body span:not(.status) { font-size: .82rem; opacity: .85; }
.dish-body .status { align-self: flex-start; background: rgba(255, 255, 255, .95); }
.dish-body em { font-style: normal; font-weight: 800; font-size: .8rem; color: #ffcfae; }
@media (max-width: 1024px) { .featured { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 480px) { .featured { grid-template-columns: 1fr 1fr; gap: 10px; } .dish-body { padding: 10px; } .dish-body b { font-size: 1rem; } }
/* Kent Lokantası bandı */
.kent-band-wrap { padding: 20px 0 0; }
.kent-band { display: grid; grid-template-columns: auto 1fr auto; gap: 24px; align-items: center; background: linear-gradient(120deg, #1c4f8f, #0b2b3a); color: #fff; border-radius: 24px; padding: 22px 28px; text-decoration: none; box-shadow: var(--shadow); transition: transform .2s; }
.kent-band:hover { transform: translateY(-2px); }
.kb-price { background: #fff; color: var(--ink); border-radius: 18px; padding: 12px 18px; text-align: center; min-width: 120px; }
.kb-price s { display: block; color: var(--muted); font-size: .85rem; }
.kb-price b { display: block; font-family: var(--serif); font-size: 2rem; color: #1c4f8f; line-height: 1.1; }
.kb-price span { font-size: .72rem; font-weight: 700; color: var(--muted); }
.kb-text h3 { font-size: 1.35rem; margin: 2px 0 4px; color: #fff; }
.kb-text p { margin: 0; color: #d3e3e8; font-size: .9rem; }
.kb-cta { font-weight: 800; background: var(--sunset); padding: 10px 16px; border-radius: 999px; white-space: nowrap; }
.menu-list .incl { font-size: .8rem; font-weight: 700; color: var(--muted); }
@media (max-width: 760px) { .kent-band { grid-template-columns: auto 1fr; } .kb-cta { grid-column: 1 / -1; text-align: center; } }
/* Logo kapaklı tesisler: logoyu kırpmadan göster */
.card-img img[src$="uploads/logo/logo.png"], .c-img img[src$="uploads/logo/logo.png"], .now-pill img[src$="uploads/logo/logo.png"], .a-venue img[src$="uploads/logo/logo.png"], .gallery img[src$="uploads/logo/logo.png"], .dish img[src$="uploads/logo/logo.png"] { object-fit: contain; background: #f6f1e7; padding: 12%; }
.p-hero img.bg[src$="uploads/logo/logo.png"] { object-fit: contain; background: #f6f1e7; padding: 90px 25% 200px; }
/* Arya logo palette — 18.10.2026 */
:root{
 --sea:#084d59;--sea-2:#007da6;--sand:#f7faf9;--sand-2:#eaf3f0;
 --sunset:#c82738;--olive:#2f7c3c;--ink:#183b43;--muted:#536d73;
 --line:#dce8e5;--ok:#28763b;--closed:#b62434;
 --arya-red:#c82738;--arya-green:#2f7c3c;--arya-blue:#007da6;--arya-lime:#8ac64b;
 --shadow:0 10px 30px rgba(8,77,89,.10);
}
body{background:var(--sand)}
header.site,header.site.scrolled{background:rgba(255,255,255,.97);border-bottom-color:var(--line)}
header.site::before{content:'';display:block;height:4px;background:linear-gradient(90deg,var(--sea) 0 40%,var(--arya-blue) 40% 60%,var(--arya-green) 60% 80%,var(--arya-red) 80%)}
.nav ul a{color:var(--sea)}
.nav ul a::after{background:linear-gradient(90deg,var(--arya-blue),var(--arya-green),var(--arya-red));height:3px}
.demo-bar{background:var(--sea)}
.btn-primary{background:var(--arya-red);box-shadow:0 6px 18px rgba(200,39,56,.20)}
.btn-primary:hover{background:#a61d2d;box-shadow:0 8px 22px rgba(200,39,56,.26)}
.btn-line{color:var(--arya-blue);border-color:#b9dce7}
.hero::after{background:linear-gradient(180deg,rgba(4,48,57,.15),rgba(4,48,57,.35) 45%,rgba(4,48,57,.91)),linear-gradient(90deg,rgba(4,48,57,.40),transparent 70%)}
.hero .eyebrow{color:#fff!important;background:rgba(8,77,89,.80);border-left:3px solid var(--arya-lime)}
.hero-chips .chip-glass:nth-child(1){border-bottom:3px solid #54b7d2}
.hero-chips .chip-glass:nth-child(2){border-bottom:3px solid #8ac64b}
.hero-chips .chip-glass:nth-child(3){border-bottom:3px solid #f16d77}
.eyebrow{color:var(--arya-blue)}
.stats-band .stat-box{border-top:3px solid var(--sea)}
.stats-band .stat-box:nth-child(2){border-top-color:var(--arya-green)}
.stats-band .stat-box:nth-child(2) b{color:var(--arya-green)}
.stats-band .stat-box:nth-child(3){border-top-color:var(--arya-blue)}
.stats-band .stat-box:nth-child(3) b{color:var(--arya-blue)}
.stat-box.accent{background:var(--arya-red);border-color:var(--arya-red)}
.stat-box.accent b,.stat-box.accent span{color:#fff}
.kent-band{background:linear-gradient(115deg,var(--arya-blue),var(--sea));border-left:5px solid var(--arya-green)}
.kb-price b{color:var(--arya-blue)}
.kb-text .eyebrow{color:#d6f0f5!important}
.kb-cta{background:var(--arya-red);color:#fff}
.filter.on,.filter.type.on{background:var(--arya-blue);border-color:var(--arya-blue);color:#fff}
.filter[data-f].on{background:var(--arya-green);border-color:var(--arya-green)}
.filter[data-f=all].on{background:var(--sea);border-color:var(--sea)}
.filter:hover{border-color:var(--arya-blue)}
.price-promise,.walkin{color:#246333;background:#e9f4e9;border-color:#c6dfc8}
.status.open{color:var(--arya-green);background:#e9f4e9}
.status.closed{color:var(--closed);background:#fbecef}
.card{border-top:3px solid var(--arya-blue)}
.cards .card:nth-child(3n+2){border-top-color:var(--arya-green)}
.cards .card:nth-child(3n){border-top-color:var(--arya-red)}
.card:hover,.card.hl{border-color:var(--arya-blue)}
.tag{color:#056584;background:#eaf5f9}
.tags .tag:nth-child(2n){color:#286335;background:#edf5e9}
.card-foot{color:var(--arya-blue)}
.card-foot .tag{color:#286335!important;background:#edf5e9!important}
.adali{background:linear-gradient(120deg,var(--sea),#126c69);border-top:4px solid var(--arya-green)}
.adali::before{background:radial-gradient(circle,rgba(138,198,75,.28),transparent 70%)}
.adali .big{color:#c3e89c;font-size:clamp(2.6rem,6vw,4.5rem)}
.adali .eyebrow{color:#c3e89c!important}
.adali #bill-save{color:#d7f0ba!important}
#bill-save{color:var(--arya-green)!important}
.calc input[type=range]{accent-color:var(--arya-green)}
.steps li:nth-child(3n+1)::before,.a-steps li:nth-child(3n+1)::before{background:var(--arya-blue)}
.steps li:nth-child(3n+2)::before,.a-steps li:nth-child(3n+2)::before{background:var(--arya-green)}
.steps li:nth-child(3n)::before,.a-steps li:nth-child(3n)::before{background:var(--arya-red)}
form input,form select,form textarea{background:#f7faf9}
form input:focus,form select:focus,form textarea:focus{outline:2px solid var(--arya-blue);outline-offset:2px}
.sub-hero{background:linear-gradient(120deg,var(--sea),#126c69);border-bottom:4px solid var(--arya-green)}
.sub-hero .eyebrow{color:#d7f0ba!important}
.sub-nav{background:rgba(247,250,249,.97)}
.quick a:nth-child(1){border-bottom:3px solid var(--arya-blue)}
.quick a:nth-child(2){border-bottom:3px solid var(--arya-green)}
.quick a:nth-child(3){border-bottom:3px solid var(--arya-blue)}
.quick a:nth-child(4){border-bottom:3px solid var(--arya-red)}
.menu-tabs button.on{background:var(--arya-blue);border-color:var(--arya-blue);color:#fff}
.a-venue span.a-rate{color:var(--arya-green)}
.dish-body em{color:#c9ecfa}
footer{background:#073f49;border-top:4px solid;border-image:linear-gradient(90deg,var(--arya-blue),var(--arya-green),var(--arya-red)) 1}
.dock{background:rgba(8,77,89,.97)}
.dock a.wa{background:var(--arya-green)}
.dock a:nth-child(3){background:var(--arya-red)}
.card-img img[src$="uploads/logo/logo.png"],.c-img img[src$="uploads/logo/logo.png"],.now-pill img[src$="uploads/logo/logo.png"],.a-venue img[src$="uploads/logo/logo.png"],.gallery img[src$="uploads/logo/logo.png"],.p-hero img.bg[src$="uploads/logo/logo.png"]{background:#fff}
@media(max-width:1024px){.nav ul{background:#fff}}

/* Featured dishes: single-row, swipeable gallery */
#lezzetler{scroll-margin-top:100px}
#lezzetler .gallery-controls{display:flex;justify-content:flex-end;gap:10px;margin:12px 0}
#lezzetler .gallery-controls button{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--sea);font-size:1.5rem;display:grid;place-items:center}
#lezzetler .gallery-controls button:hover{background:var(--sea);color:#fff}
#lezzetler #featured{display:grid;grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:calc((100% - 48px)/4);gap:16px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:0;padding:0 0 16px;margin-top:14px;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--sea-2) var(--sand-2)}
#lezzetler .dish{scroll-snap-align:start;min-width:0;aspect-ratio:4/5}
#lezzetler #featured::-webkit-scrollbar{height:7px}
#lezzetler #featured::-webkit-scrollbar-track{background:var(--sand-2);border-radius:8px}
#lezzetler #featured::-webkit-scrollbar-thumb{background:var(--sea-2);border-radius:8px}
@media(max-width:1024px){#lezzetler #featured{grid-auto-columns:calc((100% - 32px)/3)}}
@media(max-width:760px){#lezzetler #featured{grid-auto-columns:calc((100% - 16px)/2)}}
@media(max-width:480px){#lezzetler #featured{grid-auto-columns:82%;gap:12px}#lezzetler .dish{aspect-ratio:4/4.4}#lezzetler .dish-body{padding:18px}#lezzetler .dish-body b{font-size:1.2rem}}
@media(prefers-reduced-motion:reduce){#lezzetler #featured{scroll-behavior:auto}}

#menu-search{width:100%;padding:14px 16px;margin:18px 0;border:1px solid #bbcbd0;border-radius:12px;font:inherit}.menu-category{background:#eef4f3;scroll-margin-top:110px}.menu-category h3{margin:8px 0}.menu-tabs{flex-wrap:wrap}#menu-list small{display:block;color:#51636c;margin-top:5px}

/* Arya navigation and menu review — 30 October 2026 */
.wrap{width:min(1180px,calc(100% - 32px))}
.p-grid{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}
.p-grid>*,.explore-grid>*,.contact>*,.res>*,.a-grid>*,.c-main,.fact>div{min-width:0}
.facts{grid-template-columns:repeat(2,minmax(0,1fr))}
.fact b,.addr,.info-table td,.a-table td{overflow-wrap:anywhere}
.nav{position:relative;gap:16px}.nav ul{gap:22px}.nav-actions{flex-shrink:0}
.nav ul a[aria-current=page]{color:var(--arya-blue,var(--sea));text-decoration:underline;text-underline-offset:8px}
.nav-book{white-space:nowrap}.nav ul .mobile-book{display:none}
section[id],#map{scroll-margin-top:100px}
#menu-controls{position:sticky;top:74px;z-index:12;padding:12px 0;background:var(--sand);border-bottom:1px solid var(--line)}
#menu-controls .menu-toggle-price{margin-bottom:10px}
#menu-search{display:block;width:100%;min-height:48px;padding:12px 16px;margin:0 0 12px;border:1px solid #bbcbd0;border-radius:12px;background:#fff;font:inherit;color:var(--ink)}
#menu-tabs{display:flex;flex-wrap:wrap;gap:8px;max-width:100%;margin:0;padding:0;overflow:visible}
#menu-tabs button{min-height:40px;padding:8px 12px;white-space:normal;text-align:left}
#menu-tabs button:disabled{opacity:.45;cursor:default}
#menu-category-select{display:none;width:100%;min-height:48px;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#fff;font:inherit;color:var(--ink)}
#menu-results{margin:16px 0 8px;font-weight:600}
.menu-list .menu-category{background:#eaf2f1;border:0;border-radius:12px;padding:16px;margin-top:8px}
.menu-category h3{margin:0;font-size:1.25rem}
.menu-list li>div:first-child{min-width:0;overflow-wrap:anywhere}
.menu-list .price{flex-shrink:0;font-size:1.05rem}
.menu-list .al{font-size:.8rem;color:var(--muted);line-height:1.6}
.menu-list li:not(.menu-category){padding:18px 4px;align-items:start}
.menu-list .menu-empty{display:block;padding:24px;border:1px solid var(--line);border-radius:12px;background:#fff}
.menu-directory{margin:24px 0}.menu-directory-label{font-weight:800;color:var(--sea)}
.menu-directory>div{display:flex;flex-wrap:wrap;gap:10px}.menu-directory a{min-height:44px;align-items:center}
.request-unavailable>:not(.form-fallback):not(h3){display:none!important}
.form-fallback{padding:16px 0}.form-fallback p{margin:0 0 18px}.form-fallback .btn{white-space:normal}
.sub-nav{max-width:100%}.info-table,.a-table{width:100%;table-layout:fixed}
.c-search{max-width:100%}footer .foot>div{min-width:0}
@media(max-width:1024px){
 .p-grid{grid-template-columns:minmax(0,1fr)}
 .nav ul{display:none;position:absolute;top:100%;left:-16px;right:-16px;max-height:calc(100dvh - 85px);overflow-y:auto;background:#fff;flex-direction:column;padding:16px 24px 24px;gap:0;border-bottom:1px solid var(--line);box-shadow:0 12px 20px #0e4a6314}
 .nav ul.open{display:flex}.nav ul a{display:block;padding:12px 0;font-size:1rem}.nav ul a::after{display:none}
 .nav ul .mobile-book{display:block}.menu-toggle{display:block}.nav-actions .nav-book{display:none}
 #menu-controls{top:72px}.facts{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
 #menu-tabs{display:none}#menu-category-select{display:block}
 .facts{grid-template-columns:minmax(0,1fr)}
 .quick{grid-template-columns:repeat(2,minmax(0,1fr))}.quick>a{min-width:0;padding:14px}
 .res-form .row,.res-form .row3,.res-form>div[style*="grid-template-columns"]{grid-template-columns:minmax(0,1fr)!important}
 .menu-list .price{font-size:.95rem}.menu-list li{gap:12px}
 .menu-directory a{font-size:.85rem}.sub-nav .wrap{flex-wrap:wrap;overflow:visible}
 .sub-nav{position:static}section[id]{scroll-margin-top:92px}
 .dock{padding-bottom:env(safe-area-inset-bottom,0px)}body{padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.status.unknown{background:#edf1f3;color:#425b66}
