:root {
  --sea: #0b4f6c;
  --sea-deep: #073248;
  --sun: #e8b931;
  --sand: #f3efe6;
  --stone: #1a1c19;
  --foam: #f8faf9;
  --line: #d7dde3;
  --ok: #2f6b4f;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: Outfit, system-ui, sans-serif;
  color: var(--stone);
  background:
    radial-gradient(1200px 500px at 10% -10%, rgba(11,79,108,.18), transparent 60%),
    radial-gradient(900px 400px at 100% 0%, rgba(232,185,49,.18), transparent 55%),
    var(--sand);
}
a { color: inherit; text-decoration: none; }
.top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem 1rem;
  padding: .85rem clamp(1rem, 4vw, 2.5rem);
  position: sticky;
  top: 0;
  z-index: 20;
  backdrop-filter: blur(10px);
  background: rgba(243,239,230,.92);
  border-bottom: 1px solid rgba(11,79,108,.08);
  flex-wrap: wrap;
}
.brand {
  font-family: Fraunces, Georgia, serif;
  font-weight: 700;
  font-size: 1.35rem;
  letter-spacing: .04em;
  color: var(--sea-deep);
  flex: 0 0 auto;
}
.top-search {
  display: flex;
  flex: 1 1 220px;
  min-width: 160px;
  max-width: 420px;
  gap: 0;
  margin: 0 auto;
  border: 1px solid var(--line);
  border-radius: 999px;
  overflow: hidden;
  background: #fff;
}
.top-search input {
  flex: 1;
  border: 0;
  padding: .55rem 1rem;
  font: inherit;
  min-width: 0;
  background: transparent;
}
.top-search button {
  border: 0;
  background: var(--sea);
  color: #fff;
  font-weight: 700;
  padding: .55rem 1rem;
  cursor: pointer;
  font: inherit;
}
.top nav {
  display: flex;
  align-items: center;
  gap: .85rem;
  font-weight: 600;
  font-size: .92rem;
  flex: 0 0 auto;
}
.nav-drop {
  position: relative;
}
.nav-drop-btn {
  border: 0;
  background: transparent;
  font: inherit;
  font-weight: 600;
  color: inherit;
  cursor: pointer;
  padding: .35rem .2rem;
}
.nav-drop-menu {
  position: absolute;
  right: 0;
  top: calc(100% + .45rem);
  min-width: 220px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 14px;
  box-shadow: 0 12px 28px rgba(7,50,72,.14);
  padding: .45rem;
  z-index: 40;
  display: flex;
  flex-direction: column;
  gap: .1rem;
}
.nav-drop-menu[hidden] { display: none !important; }
.nav-drop-head {
  font-size: .78rem;
  font-weight: 700;
  color: var(--sea);
  padding: .45rem .65rem .55rem;
  border-bottom: 1px solid var(--line);
  margin-bottom: .25rem;
}
.nav-drop-menu a {
  display: block;
  padding: .5rem .65rem;
  border-radius: 8px;
  font-size: .9rem;
  font-weight: 600;
  color: var(--sea-deep);
}
.nav-drop-menu a:hover { background: rgba(11,79,108,.07); }
.nav-drop-menu a.nav-drop-out { color: #8b1e1e; }
.top .btn, .btn-primary {
  background: var(--sea);
  color: #fff !important;
  padding: .55rem 1rem;
  border-radius: 999px;
  font-weight: 700;
  border: 0;
  cursor: pointer;
  display: inline-block;
}
.cat-strip {
  display: flex;
  gap: .35rem;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  padding: .55rem clamp(1rem, 4vw, 2.5rem);
  background: #fff;
  border-bottom: 1px solid var(--line);
  scrollbar-width: thin;
}
.cat-strip a {
  flex: 0 0 auto;
  padding: .4rem .9rem;
  border-radius: 999px;
  font-weight: 700;
  font-size: .85rem;
  color: var(--sea-deep);
  background: var(--foam);
  border: 1px solid transparent;
  white-space: nowrap;
}
.cat-strip a:hover,
.cat-strip a.is-active {
  border-color: rgba(11,79,108,.25);
  background: rgba(11,79,108,.08);
  color: var(--sea);
}
.hero {
  min-height: 0;
  display: grid;
  align-content: center;
  padding: clamp(1.6rem, 4vw, 2.8rem) clamp(1rem, 4vw, 2.5rem);
  position: relative;
  overflow: hidden;
  color: #fff;
  background:
    linear-gradient(180deg, rgba(7,50,72,.35) 0%, rgba(7,50,72,.82) 70%, rgba(7,50,72,.92) 100%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1600' height='900' viewBox='0 0 1600 900'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop stop-color='%230b4f6c'/%3E%3Cstop offset='1' stop-color='%231a7a8c'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect fill='url(%23g)' width='1600' height='900'/%3E%3Ccircle cx='1200' cy='180' r='220' fill='%23e8b931' fill-opacity='.22'/%3E%3Cpath d='M0 620 Q400 520 800 640 T1600 600 V900 H0Z' fill='%23073248' fill-opacity='.45'/%3E%3C/svg%3E") center/cover;
}
.hero--compact {
  min-height: clamp(200px, 32vh, 280px);
}
.hero .eyebrow {
  text-transform: uppercase;
  letter-spacing: .18em;
  font-size: .72rem;
  font-weight: 700;
  color: var(--sun);
  margin-bottom: .55rem;
}
.hero h1 {
  font-family: Fraunces, Georgia, serif;
  font-size: clamp(1.85rem, 4.5vw, 2.75rem);
  line-height: 1.08;
  max-width: 16ch;
  margin: 0 0 .65rem;
}
.hero p {
  max-width: 42ch;
  font-size: 1rem;
  line-height: 1.45;
  opacity: .92;
  margin: 0 0 1.1rem;
}
.cta-row { display: flex; flex-wrap: wrap; gap: .75rem; }
.btn-sun {
  background: var(--sun);
  color: var(--sea-deep);
  padding: .7rem 1.2rem;
  border-radius: 999px;
  font-weight: 800;
}
.btn-ghost {
  border: 1.5px solid rgba(255,255,255,.55);
  color: #fff;
  padding: .7rem 1.2rem;
  border-radius: 999px;
  font-weight: 700;
}
.link-btn {
  background: none;
  border: none;
  padding: 0;
  color: var(--sea);
  font-weight: 700;
  cursor: pointer;
  font: inherit;
  font-size: .88rem;
}
.vitrin-filters {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin-bottom: 1.2rem;
  align-items: center;
}
.vitrin-filters input[type="search"],
.vitrin-filters select {
  padding: .65rem .8rem;
  border: 1px solid #d7dde3;
  border-radius: 10px;
  font: inherit;
}
.vitrin-filters input[type="search"] {
  flex: 1;
  min-width: 180px;
}
.vitrin-clear {
  align-self: center;
  font-weight: 700;
  color: var(--sea);
}
.panel-tabs {
  display: flex;
  gap: .15rem;
  overflow-x: auto;
  padding: .75rem clamp(1rem, 4vw, 2.5rem) 0;
  border-bottom: 1px solid var(--line);
  background: rgba(255,255,255,.55);
  scrollbar-width: thin;
}
.panel-tabs a {
  flex: 0 0 auto;
  padding: .65rem 1.1rem;
  font-weight: 700;
  font-size: .95rem;
  color: #5a635c;
  border-bottom: 2.5px solid transparent;
  margin-bottom: -1px;
}
.panel-tabs a.is-active {
  color: var(--sea-deep);
  border-bottom-color: var(--sun);
}
.shop-shell {
  max-width: 1100px;
  margin: 0 auto;
}
.shop-alert {
  max-width: 1100px;
  margin: 1rem auto 0;
  width: calc(100% - 2rem);
}
.hesap-links {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin: 0 0 1.5rem;
}
.hesap-links a {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: .45rem .95rem;
  font-weight: 700;
  font-size: .88rem;
  color: var(--sea-deep);
}
.hesap-links a:hover {
  border-color: var(--sea);
  color: var(--sea);
}
.section {
  padding: clamp(2.5rem, 6vw, 4.5rem) clamp(1rem, 4vw, 2.5rem);
}
.section h2 {
  font-family: Fraunces, Georgia, serif;
  font-size: clamp(1.6rem, 3vw, 2.2rem);
  margin: 0 0 .4rem;
  color: var(--sea-deep);
}
.section .lead {
  color: #5a635c;
  max-width: 48ch;
  margin: 0 0 1.5rem;
}
.grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 1rem;
}
.card {
  background: var(--foam);
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 1.1rem;
  transition: transform .2s ease, border-color .2s ease;
  border-top: 4px solid var(--sea);
}
.card:hover {
  transform: translateY(-3px);
  border-left-color: #9bb8c6;
  border-right-color: #9bb8c6;
  border-bottom-color: #9bb8c6;
}
.card--yerel {
  background: linear-gradient(180deg, #f4fafc 0%, #eef6f9 100%);
  border-top-color: var(--sea);
}
.card--platform {
  background: linear-gradient(180deg, #f7faf7 0%, #eef4f0 100%);
  border-top-color: var(--ok);
}
.card--birlikte {
  background: linear-gradient(180deg, #fffbf0 0%, #f8f1de 100%);
  border-top-color: var(--sun);
}
.card-media {
  display: block;
  margin: -1.1rem -1.1rem .85rem;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  border-radius: 14px 14px 0 0;
  background: linear-gradient(145deg, #d7e6ec, #b8cdd6);
}
.card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.card-media--empty {
  background:
    radial-gradient(circle at 30% 30%, rgba(232,185,49,.35), transparent 50%),
    linear-gradient(145deg, #0b4f6c, #1a7a8c);
}
.urun-hero {
  display: block;
  width: 100%;
  max-height: 360px;
  object-fit: cover;
  border-radius: 18px;
  margin: 1.2rem 0 0;
}
.urun-galeri { margin: 1.2rem 0 0; }
.urun-galeri .urun-hero { margin: 0; }
.urun-thumbs {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin-top: .65rem;
}
.urun-thumb {
  padding: 0;
  border: 2px solid #d7dde3;
  border-radius: 10px;
  overflow: hidden;
  background: #fff;
  cursor: pointer;
  width: 64px;
  height: 64px;
}
.urun-thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.urun-thumb.is-active {
  border-color: var(--sea);
}
.ug-galeri {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
  margin: 0 0 1rem;
}
.ug-thumb {
  position: relative;
  width: 96px;
  border: 2px solid #d7dde3;
  border-radius: 12px;
  overflow: hidden;
  background: #f5f7f9;
}
.ug-thumb.is-ana { border-color: var(--sea); }
.ug-thumb img {
  display: block;
  width: 96px;
  height: 96px;
  object-fit: cover;
}
.ug-ana-badge {
  position: absolute;
  top: 4px;
  left: 4px;
  font-size: .65rem;
  font-weight: 800;
  background: var(--sea);
  color: #fff;
  padding: .15rem .35rem;
  border-radius: 6px;
}
.ug-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .2rem;
  padding: .25rem;
  background: #fff;
}
.ug-actions button {
  font: inherit;
  font-size: .68rem;
  font-weight: 700;
  border: none;
  background: none;
  color: var(--sea);
  cursor: pointer;
  padding: .15rem .2rem;
}
.card .kanal {
  display: inline-block;
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--sea);
  background: rgba(11,79,108,.08);
  padding: .2rem .5rem;
  border-radius: 999px;
  margin-bottom: .55rem;
}
.card .kanal--yerel {
  color: #fff;
  background: var(--sea);
}
.card .kanal--platform {
  color: #fff;
  background: var(--ok);
}
.card .kanal--birlikte {
  color: var(--sea-deep);
  background: var(--sun);
}
.card h3 {
  font-family: Fraunces, Georgia, serif;
  font-size: 1.15rem;
  margin: 0 0 .35rem;
}
.card p { margin: 0; color: #5a635c; font-size: .92rem; line-height: 1.4; }
.card .price {
  margin-top: .85rem;
  font-weight: 800;
  color: var(--sea-deep);
  font-size: 1.15rem;
}
.sec-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: .35rem;
}
.sec-head h2 { margin: 0; }
.sec-head .all {
  font-weight: 700;
  color: var(--sea);
  white-space: nowrap;
}
.showcase-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
  margin-top: .5rem;
}
.showcase-card {
  position: relative;
  margin-top: 40px;
  text-decoration: none;
  color: inherit;
  display: block;
}
.showcase-govde {
  position: relative;
  border-radius: 18px;
  overflow: hidden;
  background: linear-gradient(165deg, var(--sea-deep), #0b4f6c 55%, #1a7a8c);
  box-shadow: 0 10px 26px rgba(7,50,72,.22);
  padding: 1rem .9rem .95rem;
  min-height: 170px;
  display: flex;
  flex-direction: column;
}
.showcase-rozet {
  position: absolute;
  top: -40px;
  left: 50%;
  transform: translateX(-50%);
  width: 84px;
  height: 84px;
  border-radius: 50%;
  background: var(--sea-deep);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  z-index: 5;
  box-shadow: 0 6px 16px rgba(7,50,72,.28);
}
.showcase-rozet .etiket {
  font-size: .62rem;
  font-weight: 900;
  letter-spacing: .03em;
  text-transform: uppercase;
  text-align: center;
  line-height: 1.15;
  padding: 0 .25rem;
}
.rozet-yerel { border: 3px solid #5eb3d1; }
.rozet-yerel .etiket { color: #9ad4e8; }
.rozet-platform { border: 3px solid #6aaa88; }
.rozet-platform .etiket { color: #9fd4b5; }
.rozet-birlikte { border: 3px solid var(--sun); }
.rozet-birlikte .etiket { color: var(--sun); }
.rozet-hizmet { border: 3px solid #c9a45a; }
.rozet-hizmet .etiket { color: #e8c98a; }
.showcase-badge {
  display: inline-block;
  font-weight: 900;
  font-size: .62rem;
  letter-spacing: .03em;
  padding: .2rem .55rem;
  border-radius: 999px;
  text-transform: uppercase;
  margin-bottom: .55rem;
  align-self: flex-start;
}
.showcase-badge.yerel { background: #5eb3d1; color: var(--sea-deep); }
.showcase-badge.platform { background: #6aaa88; color: #fff; }
.showcase-badge.birlikte { background: var(--sun); color: var(--sea-deep); }
.showcase-badge.hizmet { background: #c9a45a; color: var(--sea-deep); }
.showcase-badge.giyim { background: #6b8cae; color: #fff; }
.showcase-badge.cok { background: #e07a3a; color: #fff; }
.kategori-bolumu { margin-bottom: .5rem; }
.kategori-baslik {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: .75rem;
  flex-wrap: wrap;
  background: var(--sea-deep);
  color: #fff;
  padding: .65rem .95rem;
  border-radius: 12px;
  font-weight: 800;
  font-size: .95rem;
  margin-bottom: .85rem;
  border-left: 4px solid var(--sun);
}
.kategori-baslik a {
  color: var(--sun);
  font-size: .8rem;
  font-weight: 700;
  white-space: nowrap;
}
.card-media { position: relative; }
.card-rozet {
  position: absolute;
  top: .55rem;
  left: .55rem;
  font-size: .65rem;
  font-weight: 900;
  letter-spacing: .03em;
  text-transform: uppercase;
  padding: .2rem .5rem;
  border-radius: 999px;
  z-index: 2;
}
.card-rozet--yeni { background: var(--sun); color: var(--sea-deep); }
.card-rozet--cok { background: #e07a3a; color: #fff; }
.card-rozet--ozel { background: var(--sea); color: #fff; }

/* ?? Bavsla tarz? ?r?n kart? (KKTC paleti) ?? */
.hz-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  gap: 1.4rem 1rem;
  padding-top: .35rem;
}
@media (min-width: 720px) {
  .hz-grid { grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 1.6rem 1.2rem; }
}
.hz-card3 { position: relative; margin-top: 38px; overflow: visible; }
.hz-card3-govde {
  position: relative;
  border-radius: 18px;
  overflow: hidden;
  background: var(--sea-deep);
  box-shadow: 0 10px 26px rgba(7,50,72,.22);
}
.hz-rozet {
  position: absolute;
  top: -38px;
  left: 50%;
  transform: translateX(-50%);
  width: 78px;
  height: 78px;
  border-radius: 50%;
  background: #062636;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  z-index: 5;
  box-shadow: 0 6px 16px rgba(7,50,72,.28);
}
.hz-rozet .etiket {
  font-size: .58rem;
  font-weight: 900;
  letter-spacing: .02em;
  text-transform: uppercase;
  text-align: center;
  line-height: 1.15;
  padding: 0 .2rem;
}
.hz-rozet.yeni { border: 3px solid var(--sun); }
.hz-rozet.yeni .etiket { color: var(--sun); }
.hz-rozet.cok { border: 3px solid #e07a3a; }
.hz-rozet.cok .etiket { color: #f0a070; }
.hz-rozet.ozel { border: 3px solid #5eb3d1; }
.hz-rozet.ozel .etiket { color: #9ad4e8; }
.hz-rozet.herzaman { border: 3px solid #6aaa88; }
.hz-rozet.herzaman .etiket { color: #9fd4b5; }
.hz-rozet.yerel { border: 3px solid #5eb3d1; }
.hz-rozet.yerel .etiket { color: #9ad4e8; }
.hz-rozet.ornek { border: 3px solid #c9a227; }
.hz-rozet.ornek .etiket { color: #e8b931; }
.hz-badge.ornek { background: #fff3c4; color: #6b5200; }
.hz-card3--ornek .hz-card3-govde {
  outline: 1px dashed rgba(232,185,49,.55);
  outline-offset: -1px;
}
.hz-hizmet-card { text-decoration: none; color: inherit; display: block; }
.hz-hizmet-ozet {
  margin: .35rem 0 .55rem;
  font-size: .78rem;
  line-height: 1.35;
  color: rgba(255,255,255,.78);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.ornek-banner {
  margin: .35rem 0 .75rem;
  padding: .55rem .75rem;
  border-radius: 12px;
  background: #fff8e1;
  border: 1px solid #e8b931;
  color: #5c4a12;
  font-size: .82rem;
  font-weight: 600;
}
.showcase-preview .pv { position: relative; }
.showcase-preview .pv--ornek img { opacity: .92; }
.showcase-preview .pv-etiket {
  position: absolute;
  left: .25rem;
  bottom: .25rem;
  font-size: .55rem;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
  background: rgba(232,185,49,.95);
  color: #073248;
  padding: .12rem .35rem;
  border-radius: 999px;
}
.masa-ornek-etiket {
  position: absolute;
  top: .55rem;
  left: .55rem;
  z-index: 3;
  font-size: .65rem;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
  background: rgba(232,185,49,.95);
  color: #073248;
  padding: .2rem .5rem;
  border-radius: 999px;
}
.masa-slide--ornek { border-style: dashed; }
.hz-icerik { padding: .85rem .8rem .8rem; }
.hz-badge {
  display: inline-block;
  font-weight: 900;
  font-size: .6rem;
  letter-spacing: .03em;
  padding: .18rem .5rem;
  border-radius: 999px;
  text-transform: uppercase;
  margin-bottom: .45rem;
}
.hz-badge.yeni { background: var(--sun); color: var(--sea-deep); }
.hz-badge.cok { background: #e07a3a; color: #fff; }
.hz-badge.ozel { background: #5eb3d1; color: var(--sea-deep); }
.hz-badge.herzaman { background: #6aaa88; color: #fff; }
.hz-badge.yerel { background: #5eb3d1; color: var(--sea-deep); }
.hz-pimg {
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  background: #0a3a50;
  margin-bottom: .5rem;
}
.hz-pimg img {
  width: 100%;
  height: 120px;
  object-fit: cover;
  display: block;
}
.ic-overlay {
  position: absolute;
  top: 6px;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  border: none;
  background: rgba(255,255,255,.92);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: .82rem;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 2px 6px rgba(0,0,0,.18);
  padding: 0;
  z-index: 2;
  color: var(--sea);
}
.ic-fav, .ic-fav-form { right: 6px; left: auto; }
.ic-fav-form { position: absolute; top: 6px; right: 6px; margin: 0; }
.ic-fav-form .ic-fav { position: static; }
.hz-ad {
  color: #fff;
  font-weight: 800;
  font-size: .84rem;
  margin: 0 0 .4rem;
  line-height: 1.3;
  min-height: 2.15em;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-shadow: 0 1px 3px rgba(0,0,0,.35);
}
.hz-panel {
  background: rgba(7,50,72,.55);
  border-radius: 12px;
  padding: .55rem .6rem;
}
/* panel.css satıcı form kutularını section.hz-panel ile sınırlar; kart içi paneli koru */
.hz-card3 .hz-panel,
.hz-magaza-card .hz-panel,
.hz-hizmet-card .hz-panel {
  background: rgba(7,50,72,.55);
  border: none;
  border-radius: 12px;
  padding: .55rem .6rem;
  margin: 0;
  color: inherit;
}
.uk-chips { display: flex; flex-wrap: wrap; gap: .3rem; margin-bottom: .35rem; }
.uk-chip {
  font-size: .6rem;
  font-weight: 700;
  padding: .12rem .4rem;
  border-radius: 6px;
}
.stok-ok { background: rgba(106,170,136,.25); color: #9fd4b5; }
.stok-az { background: rgba(232,185,49,.25); color: var(--sun); }
.stok-yok { background: rgba(224,122,58,.25); color: #f0a070; }
.kargo-h { background: rgba(94,179,209,.2); color: #9ad4e8; }
.hz-fiyat {
  display: block;
  color: #9ad4e8;
  font-weight: 900;
  font-size: 1.05rem;
  font-family: ui-monospace, Consolas, monospace;
  margin-bottom: .45rem;
}
.hz-incele {
  display: block;
  width: 100%;
  text-align: center;
  border: 1.5px solid #5eb3d1;
  color: #9ad4e8;
  background: transparent;
  font-weight: 800;
  padding: .45rem;
  border-radius: 10px;
  text-decoration: none;
  font-size: .78rem;
  cursor: pointer;
  font: inherit;
  font-weight: 800;
}
.hz-incele:hover { background: #5eb3d1; color: var(--sea-deep); }
.hz-incele--disabled {
  border-color: #667079;
  color: #84896f;
  cursor: default;
  pointer-events: none;
}
@media (max-width: 680px) {
  .hz-card3 { margin-top: 32px; }
  .hz-rozet { width: 70px; height: 70px; top: -34px; }
  .hz-pimg img { height: 100px; }
}

/* ?? Ma?aza kartlar? ?? */
.magaza-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: .85rem;
}
.magaza-card {
  display: flex;
  gap: .75rem;
  align-items: flex-start;
  background: #fff;
  border: 1.5px solid var(--line);
  border-radius: 16px;
  padding: .95rem;
  transition: transform .15s, border-color .15s;
  border-top: 4px solid var(--sea);
}
.magaza-card:hover { transform: translateY(-2px); border-color: var(--sea); }
.magaza-card--yemek { border-top-color: #e07a3a; }
.magaza-card--market { border-top-color: #6aaa88; }
.magaza-card--genel { border-top-color: var(--sea); }
.magaza-card--meyhane { border-top-color: #c9a227; }
a.magaza-card { text-decoration: none; color: inherit; }
.magaza-avatar {
  flex: none;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background: linear-gradient(145deg, var(--sea), #1a7a8c);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 1.1rem;
}
.magaza-tur {
  display: inline-block;
  font-size: .65rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: var(--sea);
  margin-bottom: .2rem;
}
.magaza-ad {
  font-family: Fraunces, Georgia, serif;
  font-weight: 700;
  color: var(--sea-deep);
  font-size: 1.05rem;
  margin-bottom: .2rem;
}
.magaza-desc {
  margin: 0;
  font-size: .8rem;
  color: #667079;
  line-height: 1.35;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.magaza-meta {
  display: block;
  margin-top: .4rem;
  font-size: .75rem;
  font-weight: 700;
  color: var(--sea);
}

/* Yerel magaza / mekan kartlari + yatay kaydirma seritleri */
.yk-carousel,
.hz-carousel,
.strip-carousel {
  display: flex;
  gap: .85rem;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  padding: .2rem .1rem .75rem;
  scrollbar-width: thin;
  -webkit-overflow-scrolling: touch;
}
.yk-carousel::-webkit-scrollbar,
.hz-carousel::-webkit-scrollbar,
.strip-carousel::-webkit-scrollbar { height: 6px; }
.yk-carousel::-webkit-scrollbar-thumb,
.hz-carousel::-webkit-scrollbar-thumb,
.strip-carousel::-webkit-scrollbar-thumb {
  background: rgba(11, 79, 108, .35);
  border-radius: 99px;
}
.yk-carousel .yk-card {
  flex: 0 0 min(260px, 78vw);
  scroll-snap-align: start;
}
.hz-carousel .hz-card3,
.hz-carousel .hz-hizmet-card,
.hz-carousel .hz-magaza-card {
  flex: 0 0 min(200px, 62vw);
  scroll-snap-align: start;
}
@media (min-width: 720px) {
  .yk-carousel .yk-card { flex-basis: 270px; }
  .hz-carousel .hz-card3,
  .hz-carousel .hz-hizmet-card,
  .hz-carousel .hz-magaza-card { flex-basis: 220px; }
}

a.hz-magaza-card { text-decoration: none; color: inherit; display: block; }
.hz-magaza-card .hz-pimg img { height: 130px; }
.hz-magaza-card .hz-ad { min-height: 2.15em; }

.yk-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(248px, 1fr));
  gap: .85rem;
}
.yk-card {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1.5px solid var(--line);
  border-radius: 18px;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  box-shadow: 0 6px 18px rgba(7, 50, 72, .07);
  transition: transform .15s, border-color .15s, box-shadow .15s;
}
.yk-card:hover {
  transform: translateY(-3px);
  border-color: var(--sea);
  box-shadow: 0 12px 26px rgba(7, 50, 72, .14);
}
.yk-card--ornek { border-style: dashed; }
.yk-kapak {
  position: relative;
  display: block;
  aspect-ratio: 16 / 9;
  background: #eef3f5;
}
.yk-kapak img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.yk-tur {
  position: absolute;
  left: .55rem;
  bottom: .55rem;
  z-index: 2;
  font-size: .64rem;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
  background: rgba(255, 255, 255, .94);
  color: var(--sea-deep);
  padding: .22rem .55rem;
  border-radius: 999px;
}
.yk-durum,
.yk-ornek {
  position: absolute;
  right: .55rem;
  top: .55rem;
  z-index: 2;
  font-size: .66rem;
  font-weight: 900;
  letter-spacing: .02em;
  padding: .24rem .55rem;
  border-radius: 999px;
  white-space: nowrap;
}
.yk-durum--ok { background: #1f7a55; color: #fff; }
.yk-durum--dolu { background: #b4451f; color: #fff; }
.yk-ornek { background: rgba(232, 185, 49, .96); color: var(--sea-deep); text-transform: uppercase; }
.yk-govde {
  display: flex;
  flex-direction: column;
  gap: .32rem;
  padding: .75rem .8rem .85rem;
  flex: 1;
}
.yk-ad {
  font-family: Fraunces, Georgia, serif;
  font-weight: 700;
  font-size: 1.02rem;
  line-height: 1.25;
  color: var(--sea-deep);
}
.yk-desc {
  font-size: .8rem;
  color: #667079;
  line-height: 1.35;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.yk-chips { display: flex; flex-wrap: wrap; gap: .3rem; margin-top: .1rem; }
.yk-chip {
  font-size: .7rem;
  font-weight: 700;
  color: #45525c;
  background: #f1f5f7;
  border: 1px solid #e2eaee;
  padding: .2rem .5rem;
  border-radius: 999px;
}
.yk-chip--kurye { background: #fff4e2; border-color: #f3ddb9; color: #8a5320; }
.yk-chip--masa { background: #eaf6f0; border-color: #cbe7d9; color: #1f6b4f; }
.yk-chip--tag { background: #fff8e8; border-color: #eed9a8; color: #7a4e12; }
.yk-cta {
  margin-top: auto;
  padding-top: .5rem;
  font-size: .8rem;
  font-weight: 800;
  color: var(--sea);
}
.yk-card--yemek .yk-cta,
.yk-card--meyhane .yk-cta { color: #b4551f; }

/* Mekan profil (detay sayfasi) */
.mekan-profil {
  display: grid;
  gap: 1rem;
  background: #fff;
  border: 1.5px solid var(--line);
  border-radius: 18px;
  overflow: hidden;
}
@media (min-width: 720px) {
  .mekan-profil { grid-template-columns: minmax(220px, 38%) 1fr; align-items: stretch; }
}
.mekan-profil-kapak {
  position: relative;
  min-height: 180px;
  background: #eef3f5;
}
.mekan-profil-kapak img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.mekan-profil-govde { padding: 1rem 1.05rem 1.15rem; }
.mekan-profil-detay {
  font-size: .92rem;
  line-height: 1.55;
  color: #3a4650;
  white-space: pre-line;
}
.masa-plan-card--ornek { opacity: .92; border-style: dashed; }

.showcase-title {
  color: #fff;
  font-family: Fraunces, Georgia, serif;
  font-weight: 700;
  font-size: 1.05rem;
  margin: 0 0 .35rem;
}
.showcase-text {
  color: rgba(255,255,255,.82);
  font-size: .78rem;
  line-height: 1.4;
  margin: 0 0 .7rem;
  flex: 1;
}
.showcase-preview {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: .35rem;
  margin-bottom: .7rem;
}
.showcase-preview .pv {
  aspect-ratio: 1 / 1;
  border-radius: 10px;
  overflow: hidden;
  background: rgba(255,255,255,.12);
}
.showcase-preview .pv img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.showcase-preview .pv.placeholder {
  background: linear-gradient(135deg, rgba(11,79,108,.5), rgba(26,122,140,.45));
}
.showcase-cta {
  display: block;
  text-align: center;
  border: 1.5px solid var(--sun);
  color: var(--sun);
  font-weight: 800;
  padding: .5rem;
  border-radius: 10px;
  font-size: .8rem;
  margin-top: auto;
}
.showcase-card:hover .showcase-cta {
  background: var(--sun);
  color: var(--sea-deep);
}
.showcase-govde { transition: transform .15s, box-shadow .15s; }
.showcase-card:hover .showcase-govde {
  transform: translateY(-2px);
  box-shadow: 0 14px 28px rgba(7,50,72,.32);
}
.kat-carousel {
  display: flex;
  gap: 1rem;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  padding: .15rem .1rem 1rem;
  scrollbar-width: thin;
}
.kat-carousel .showcase-card {
  flex: 0 0 min(250px, 78vw);
  scroll-snap-align: start;
}
.rozet-cok { border: 3px solid #e07a3a; }
.rozet-cok .etiket { color: #f0a070; }
.vitrin-inline-title {
  font-family: Fraunces, Georgia, serif;
  font-size: clamp(1.35rem, 2.5vw, 1.75rem);
  color: var(--sea-deep);
  margin: 0 0 .25rem;
}
.channels {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: .9rem;
}
.ch {
  padding: 1.2rem;
  border-radius: 16px;
  background: linear-gradient(160deg, #fff, #eef5f7);
  border: 1px solid var(--line);
}
.ch strong { display: block; font-family: Fraunces, Georgia, serif; font-size: 1.1rem; margin-bottom: .3rem; color: var(--sea-deep); }
.ch span { color: #5a635c; font-size: .9rem; }
.foot {
  display: flex;
  flex-wrap: wrap;
  gap: 1.15rem 2rem;
  justify-content: space-between;
  align-items: flex-start;
  padding: 1.5rem clamp(1rem, 4vw, 2.5rem);
  border-top: 1px solid var(--line);
  color: #667079;
  font-size: .88rem;
  background: #ebe6db;
}
.foot-col {
  display: flex;
  flex-direction: column;
  gap: .45rem;
  min-width: min(100%, 220px);
  flex: 1 1 220px;
}
.foot-brand strong {
  color: var(--sea-deep);
  font-family: Fraunces, Georgia, serif;
  font-size: 1.05rem;
}
.foot-tagline,
.foot-meta,
.foot-contact {
  display: block;
  line-height: 1.45;
}
.foot-op {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  color: inherit;
  text-decoration: none;
  width: fit-content;
}
.foot-op:hover,
.foot-op:focus-visible {
  color: var(--sea-deep);
}
.foot-op-logo {
  display: block;
  height: 22px;
  width: auto;
  max-width: 96px;
}
.foot-group-title {
  display: block;
  font-weight: 700;
  font-size: .78rem;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--sea-deep);
}
.foot-links {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem .85rem;
  line-height: 1.5;
}
.foot-links a {
  color: inherit;
  text-decoration: none;
}
.foot-links a:hover,
.foot-links a:focus-visible,
.foot-contact a:hover,
.foot-contact a:focus-visible {
  color: var(--sea-deep);
  text-decoration: underline;
}
.foot-demo {
  flex: 1 0 100%;
  opacity: .85;
}
@media (max-width: 720px) {
  .foot {
    gap: 1.1rem;
  }
  .foot-col {
    flex: 1 1 100%;
    min-width: 0;
  }
}
.auth {
  max-width: 420px;
  margin: 3rem auto;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 1.5rem;
}
.auth h1 { font-family: Fraunces, Georgia, serif; color: var(--sea-deep); margin-top: 0; }
.auth label { display: block; font-weight: 600; margin: .8rem 0 .3rem; font-size: .9rem; }
.auth input, .auth select, .auth textarea {
  width: 100%;
  padding: .65rem .8rem;
  border: 1px solid var(--line);
  border-radius: 10px;
  font: inherit;
  margin-top: .25rem;
}
.auth textarea { resize: vertical; min-height: 96px; }
.auth .hint { font-size: .82rem; color: #667079; margin-top: 1rem; }
.alert {
  background: #e8f3ec;
  border: 1px solid #b7d7c4;
  color: var(--ok);
  padding: .7rem .9rem;
  border-radius: 10px;
  margin-bottom: 1rem;
}
.site-banner {
  text-align: center;
  font-weight: 700;
  font-size: .92rem;
  letter-spacing: .01em;
  color: var(--sea-deep);
  background: linear-gradient(90deg, rgba(232,185,49,.55), rgba(232,185,49,.28));
  border-bottom: 1px solid rgba(11,79,108,.12);
  padding: .65rem 1rem;
}
.nav-toggle {
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  width: 42px;
  height: 42px;
  padding: 0;
  border: 1px solid rgba(11,79,108,.2);
  border-radius: 10px;
  background: rgba(255,255,255,.7);
  cursor: pointer;
}
.nav-toggle span {
  display: block;
  width: 18px;
  height: 2px;
  margin: 0 auto;
  background: var(--sea-deep);
  border-radius: 2px;
  transition: transform .2s ease, opacity .2s ease;
}
.nav-toggle.is-open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.nav-toggle.is-open span:nth-child(2) { opacity: 0; }
.nav-toggle.is-open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
@media (max-width: 720px) {
  .nav-toggle { display: flex; }
  .top { flex-wrap: wrap; overflow: visible; }
  /* Open hamburger: scrollable sticky header so nested menus can expand downward */
  .top.nav-is-open,
  .top:has(#siteNav.is-open) {
    max-height: 100vh;
    max-height: 100dvh;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    align-items: flex-start;
  }
  .top-search {
    order: 3;
    flex: 1 1 100%;
    max-width: none;
    margin: 0;
  }
  .top nav {
    display: none;
    width: 100%;
    flex-direction: column;
    align-items: stretch;
    gap: .35rem;
    padding-bottom: .4rem;
    order: 4;
  }
  .top nav.is-open { display: flex; }
  .top nav a {
    display: block;
    padding: .65rem .75rem;
    border-radius: 10px;
    background: rgba(255,255,255,.65);
  }
  .top nav a.btn { text-align: center; }
  .nav-drop,
  .lang-switch,
  .lang-drop {
    width: 100%;
    display: block;
    position: relative;
  }
  .nav-drop-btn,
  .lang-drop-btn {
    width: 100%;
    text-align: left;
    justify-content: flex-start;
    padding: .65rem .75rem;
    border-radius: 10px;
    background: rgba(255,255,255,.65);
  }
  /* Accordion submenu: in-flow downward expand (not absolute popup) */
  .top nav .nav-drop-menu,
  .top nav .lang-drop-menu {
    position: static !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    bottom: auto !important;
    transform: none !important;
    box-shadow: none;
    margin-top: .35rem;
    width: 100%;
    min-width: 0;
    max-height: none;
    z-index: auto;
  }
  .hero--compact { min-height: 180px; }
  .panel-tabs { padding-left: 1rem; padding-right: 1rem; }
  .showcase-grid {
    display: flex;
    gap: 1rem;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    padding: .2rem .1rem 1rem;
  }
  .showcase-grid .showcase-card {
    flex: 0 0 min(240px, 78vw);
    scroll-snap-align: start;
  }
}

/* ?? Topluluk ke?fet listesi (bavsla kesfet / hz-list) ?? */
.kf-wrap { max-width: 720px; }
.kf-item {
  display: flex;
  gap: .7rem;
  align-items: stretch;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: .65rem;
  margin: 0;
}
.kf-main {
  flex: 1;
  min-width: 0;
  display: flex;
  gap: .7rem;
  text-decoration: none;
  color: inherit;
}
.kf-avatar {
  flex: 0 0 56px;
  width: 56px;
  height: 56px;
  border-radius: 12px;
  background: linear-gradient(145deg, var(--sea), #1a7a8c);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 1.1rem;
}
.kf-info {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
}
.kf-top { display: flex; gap: .35rem; align-items: center; margin-bottom: .15rem; }
.kf-badge {
  display: inline-block;
  font-size: .62rem;
  font-weight: 800;
  padding: .12rem .45rem;
  border-radius: 999px;
  color: #fff;
  background: var(--sea);
  line-height: 1.2;
}
.kf-badge.uye { background: var(--ok); }
.kf-badge.bekliyor { background: #8a6d1f; }
.kf-badge.onay { background: #1a4d8f; }
.kf-badge.davetli { background: #5a635c; }
.kf-info h5 {
  font-size: .95rem;
  font-weight: 800;
  margin: 0;
  color: var(--sea-deep);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.kf-desc {
  font-size: .76rem;
  color: #4a5560;
  margin: .2rem 0 .15rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.kf-meta {
  font-size: .7rem;
  color: #6a7580;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.kf-cta {
  margin-top: auto;
  padding-top: .3rem;
  font-size: .75rem;
  font-weight: 800;
  color: var(--sea);
}
.kf-actions {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
}
.kf-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .45rem .85rem;
  border-radius: 999px;
  font-size: .78rem;
  font-weight: 800;
  text-decoration: none;
  border: 1.5px solid var(--sea);
  background: #fff;
  color: var(--sea);
  cursor: pointer;
  font-family: inherit;
  white-space: nowrap;
}
.kf-btn.primary {
  background: var(--sea);
  color: #fff;
  border-color: var(--sea);
}
.kf-form-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 1.1rem 1.2rem;
  margin: 0 0 1.1rem;
}
.kf-form-card h3 {
  margin: 0 0 .35rem;
  font-family: Fraunces, Georgia, serif;
  color: var(--sea-deep);
  font-size: 1.1rem;
}
.kf-form-card .hint { margin: 0 0 .75rem; }
.kf-form-card label {
  display: block;
  font-weight: 700;
  font-size: .85rem;
  color: var(--sea-deep);
  margin: .55rem 0 .25rem;
}
.kf-form-card input,
.kf-form-card textarea,
.kf-form-card select {
  width: 100%;
  padding: .65rem .8rem;
  border: 1.5px solid var(--line);
  border-radius: 12px;
  font: inherit;
}
.tp-mine { margin: 0 0 .9rem; }
.tp-mine h4 {
  font-size: .82rem;
  font-weight: 800;
  margin: 0 0 .45rem;
  color: var(--sea-deep);
}
.tp-mine-row {
  display: flex;
  gap: .45rem;
  overflow-x: auto;
  padding-bottom: .25rem;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.tp-mine-row::-webkit-scrollbar { display: none; }
.tp-mine-chip {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: .45rem;
  background: #fff;
  border: 1.5px solid var(--line);
  border-radius: 12px;
  padding: .4rem .65rem .4rem .4rem;
  text-decoration: none;
  color: inherit;
  max-width: 200px;
}
.tp-mine-chip .av {
  width: 36px;
  height: 36px;
  border-radius: 9px;
  background: linear-gradient(145deg, var(--sea), #1a7a8c);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: .85rem;
}
.tp-mine-chip .t {
  display: block;
  font-size: .76rem;
  font-weight: 800;
  line-height: 1.15;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 130px;
  color: var(--sea-deep);
}
.tp-mine-chip .s {
  display: block;
  font-size: .68rem;
  color: #6a7580;
}
.tp-top {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
  justify-content: space-between;
  align-items: center;
  margin-bottom: .85rem;
}
.tp-top h2 {
  font-weight: 800;
  margin: 0;
  font-size: 1.2rem;
  color: var(--sea-deep);
  font-family: Fraunces, Georgia, serif;
}
.tp-links {
  display: flex;
  gap: .4rem;
  flex-wrap: nowrap;
  overflow-x: auto;
}
.tp-links a {
  flex: 0 0 auto;
  font-size: .78rem;
  font-weight: 700;
  color: var(--sea);
  text-decoration: none;
  border: 1.5px solid var(--sea);
  border-radius: 999px;
  padding: .32rem .75rem;
  white-space: nowrap;
}
.tp-note {
  font-size: .78rem;
  color: #3a4a52;
  margin: 0 0 .85rem;
  background: #e8f4f8;
  border: 1px solid #b7d5e0;
  border-radius: 12px;
  padding: .65rem .85rem;
  line-height: 1.35;
}
.ob-card {
  display: flex;
  align-items: center;
  gap: .8rem;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: .85rem 1rem;
}
.ob-info { flex: 1; min-width: 0; }
.ob-name { font-weight: 800; color: var(--sea-deep); font-size: .9rem; }
.ob-meta { font-size: .75rem; color: #6a7580; margin-top: .15rem; }
.ob-actions { flex: none; display: flex; gap: .4rem; }
.ob-btn {
  border: none;
  border-radius: 999px;
  padding: .4rem .8rem;
  font-weight: 700;
  font-size: .78rem;
  cursor: pointer;
  font-family: inherit;
}
.ob-btn.approve { background: var(--ok); color: #fff; }
.ob-btn.reject {
  background: transparent;
  color: #c4451f;
  border: 1.5px solid #c4451f;
}
@media (min-width: 768px) {
  .kf-avatar { flex-basis: 72px; width: 72px; height: 72px; }
  .kf-info h5 { font-size: 1.05rem; }
  .tp-top h2 { font-size: 1.35rem; }
}
.dl-group-heading {
  font-weight: 800;
  font-size: .88rem;
  color: var(--sea);
  margin: 1rem 0 .35rem;
  padding-bottom: .3rem;
  border-bottom: 1.5px solid var(--line);
}
.dl-topluluk-adres {
  font-size: .78rem;
  color: #6a7580;
  margin: 0 0 .65rem;
}
.dl-card {
  display: flex;
  align-items: center;
  gap: .8rem;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: .8rem 1rem;
  margin-bottom: .55rem;
}
.dl-card.done { opacity: .55; }
.dl-info { flex: 1; min-width: 0; }
.dl-uye { font-weight: 800; color: var(--sea-deep); font-size: .88rem; }
.dl-urun { font-size: .82rem; color: #4a5560; margin-top: .12rem; }
.dl-meta { font-size: .7rem; color: #6a7580; margin-top: .15rem; }
.dl-btn {
  flex: none;
  border: none;
  border-radius: 999px;
  padding: .4rem .9rem;
  font-weight: 800;
  font-size: .78rem;
  cursor: pointer;
  font-family: inherit;
}
.dl-btn.mark { background: var(--sea-deep); color: #fff; }
.sepet-wrap { max-width: 720px; }
.sepet-ozet { font-size: .95rem; color: var(--sea-deep); margin: 0 0 .5rem; }
.sepet-magaza {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 1rem;
  margin: 0 0 1rem;
}
.sepet-magaza-baslik {
  display: flex;
  flex-wrap: wrap;
  gap: .6rem;
  justify-content: space-between;
  align-items: center;
  margin-bottom: .85rem;
  padding-bottom: .7rem;
  border-bottom: 1px solid var(--line);
}
.sepet-magaza-baslik strong {
  display: block;
  font-size: 1rem;
  color: var(--sea-deep);
  font-family: Fraunces, Georgia, serif;
}
.sepet-magaza-meta {
  display: block;
  font-size: .78rem;
  color: #6a7580;
  margin-top: .15rem;
}
.sepet-ode-btn {
  flex: none;
  text-decoration: none;
  padding: .5rem 1rem;
  font-size: .85rem;
}
.sepet-satir {
  display: flex;
  gap: .75rem;
  align-items: flex-start;
  padding: .65rem 0;
  border-bottom: 1px solid #eef2f5;
}
.sepet-satir:last-child { border-bottom: none; padding-bottom: 0; }
.sepet-gorsel {
  flex: 0 0 64px;
  width: 64px;
  height: 64px;
  border-radius: 12px;
  overflow: hidden;
  background: #e8f4f8;
}
.sepet-gorsel img { width: 100%; height: 100%; object-fit: cover; display: block; }
.sepet-bilgi { flex: 1; min-width: 0; }
.sepet-ad {
  font-weight: 800;
  color: var(--sea-deep);
  text-decoration: none;
  display: block;
  font-size: .92rem;
}
.sepet-meta { font-size: .75rem; color: #6a7580; margin: .2rem 0; }
.sepet-fiyat { font-size: .84rem; color: #3a4a52; }
.sepet-adet {
  flex: none;
  display: flex;
  align-items: center;
  gap: .3rem;
}
.sepet-qbtn {
  width: 2rem;
  height: 2rem;
  border-radius: 999px;
  border: 1.5px solid var(--line);
  background: #fff;
  font-weight: 800;
  font-size: 1rem;
  cursor: pointer;
  color: var(--sea-deep);
  font-family: inherit;
}
.sepet-qbtn:disabled { opacity: .4; cursor: not-allowed; }
.sepet-q {
  min-width: 1.4rem;
  text-align: center;
  font-weight: 800;
  color: var(--sea-deep);
}
.sepet-sil {
  border: none;
  background: none;
  color: #c4451f;
  font-weight: 700;
  font-size: .75rem;
  cursor: pointer;
  font-family: inherit;
  margin-left: .25rem;
}
.odeme-ozet {
  list-style: none;
  margin: 0 0 1rem;
  padding: .85rem 1rem;
  background: #f4f8fb;
  border: 1px solid #d7e3ec;
  border-radius: 12px;
}
.odeme-ozet li {
  font-size: .88rem;
  color: #3a4a52;
  padding: .2rem 0;
}

/* ?? Topluluk ak??? (Bavsla tarz?, KKTC paleti) ?? */
.tp-wrap { max-width: 720px; }
.tp-intro { font-size: .9rem; color: #5a635c; margin: 0 0 1rem; line-height: 1.45; }
.top-action-row { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: .6rem; margin-bottom: 1rem; }
.top-menu-btn {
  display: inline-flex; align-items: center; gap: .35rem;
  padding: .5rem 1rem; border-radius: 999px; font: inherit; font-size: .85rem; font-weight: 700;
  border: 1.5px solid var(--line); background: #fff; color: var(--sea-deep); cursor: pointer;
}
.top-compose-btn {
  width: 2.6rem; height: 2.6rem; border-radius: 50%; border: none;
  background: var(--sea); color: #fff; font-size: 1.35rem; line-height: 1;
  display: inline-flex; align-items: center; justify-content: center; cursor: pointer;
  transition: transform .15s ease, background .15s;
}
.top-compose-btn.is-open { background: var(--sea-deep); transform: rotate(45deg); }
.top-divider { border: none; border-top: 1px solid var(--line); margin: 1.2rem 0; }
.tp-kampanya-serit {
  border: 1.5px solid var(--line); border-radius: 14px; background: #fff;
  padding: .9rem 1rem; margin: 1rem 0;
}
.tp-kampanya-baslik {
  display: flex; justify-content: space-between; gap: .6rem; flex-wrap: wrap;
  font-size: .86rem; color: var(--sea-deep); margin-bottom: .7rem;
}
.tp-kampanya-baslik a { font-weight: 700; }
.tp-kampanya-satir { margin-bottom: .7rem; }
.tp-kampanya-satir:last-child { margin-bottom: 0; }
.tp-kampanya-ad { font-size: .84rem; font-weight: 700; color: #073248; }
.tp-kampanya-bar {
  height: 7px; background: #e8ecef; border-radius: 999px; overflow: hidden; margin: .3rem 0;
}
.tp-kampanya-bar span {
  display: block; height: 100%;
  background: linear-gradient(90deg, #0b4f6c, #2f9e7e);
}
.tp-kampanya-not { font-size: .76rem; color: #667079; }
.top-empty { color: #667079; font-size: .9rem; padding: .5rem 0 1rem; }
.top-type-filters { display: flex; gap: .4rem; overflow-x: auto; margin-bottom: 1rem; scrollbar-width: thin; }
.top-btn {
  flex: none; display: inline-flex; align-items: center; gap: .35rem;
  padding: .4rem .85rem; border-radius: 999px; font-size: .8rem; font-weight: 700;
  text-decoration: none; border: 1.5px solid var(--line); background: #fff; color: var(--sea-deep); white-space: nowrap;
}
.top-btn:hover { border-color: var(--sea); color: var(--sea); }
.top-btn-primary { background: var(--sea-deep); color: #fff; border-color: var(--sea-deep); }
.top-btn-primary:hover { background: var(--sea); border-color: var(--sea); color: #fff; }
.top-form-card {
  background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 1.2rem; margin-bottom: 1rem;
}
.top-form-card .form-label { display: block; font-weight: 700; color: var(--sea-deep); font-size: .85rem; margin: .75rem 0 .3rem; }
.top-form-card .form-label:first-of-type { margin-top: 0; }
.top-form-card select,
.top-form-card input[type="text"],
.top-form-card input[type="url"],
.top-form-card input[type="file"],
.top-form-card textarea {
  width: 100%; padding: .65rem .8rem; border: 1px solid var(--line); border-radius: 10px; font: inherit;
}
.top-form-title { font-weight: 800; font-size: 1.05rem; color: var(--sea-deep); margin-bottom: .75rem; font-family: Fraunces, Georgia, serif; }
.top-form-submit {
  border: none; background: var(--sea); color: #fff; border-radius: 999px;
  padding: .6rem 1.4rem; font-weight: 700; font-size: .9rem; cursor: pointer; margin-top: .9rem;
}
.form-text { font-size: .78rem; color: #667079; margin: .25rem 0 .5rem; }
.tp-uyari {
  background: rgba(232,185,49,.15); border: 1px solid rgba(232,185,49,.4);
  border-radius: 10px; padding: .65rem .8rem; font-size: .82rem; color: var(--sea-deep); margin: .5rem 0;
}
.mb-tp { margin-bottom: 1rem; }
.top-post-card {
  background: #fff; border: 1px solid var(--line); border-radius: 16px;
  padding: 1.1rem 1.2rem; margin-bottom: 1.1rem;
}
.top-post-authorrow { display: flex; align-items: center; gap: .65rem; margin-bottom: .7rem; }
.top-post-avatar {
  width: 2.6rem; height: 2.6rem; border-radius: 50%; flex: none;
  background: linear-gradient(145deg, var(--sea), #1a7a8c); color: #fff;
  display: flex; align-items: center; justify-content: center; font-weight: 800; font-size: .95rem;
}
.top-post-authorinfo { min-width: 0; flex: 1; }
.top-post-author-line { display: flex; align-items: center; gap: .45rem; flex-wrap: wrap; }
.top-post-author-name { font-weight: 700; font-size: .88rem; color: var(--stone); }
.top-post-author-meta { font-size: .72rem; color: #84896f; }
.top-post-community { flex: none; display: flex; flex-direction: column; align-items: center; gap: .15rem; }
.top-post-community-avatar {
  width: 2rem; height: 2rem; border-radius: 50%;
  background: var(--sand); border: 1px solid var(--line); color: var(--sea-deep);
  display: flex; align-items: center; justify-content: center; font-weight: 800; font-size: .75rem;
}
.top-post-community-name {
  font-size: .62rem; font-weight: 700; color: #84896f; max-width: 4.2rem; text-align: center;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.top-post-badge {
  flex: none; font-size: .65rem; font-weight: 800; letter-spacing: .03em;
  color: var(--sea); background: rgba(11,79,108,.1); border: 1px solid var(--sea);
  border-radius: 999px; padding: .15rem .55rem;
}
.top-post-badge--ilan { color: #1a4d8f; background: #e7f1ff; border-color: #8bb4e8; }
.top-post-title { font-weight: 800; font-size: 1rem; color: var(--sea-deep); margin-bottom: .3rem; }
.top-post-body { color: #5a635c; font-size: .92rem; line-height: 1.5; margin: 0 0 .6rem; word-break: break-word; }
.top-post-img { width: 100%; border-radius: 12px; display: block; margin-bottom: .6rem; object-fit: cover; max-height: 420px; }
.top-post-link {
  display: inline-flex; align-items: center; gap: .3rem; font-size: .8rem; font-weight: 700;
  color: var(--sea); border: 1.5px solid var(--sea); border-radius: 999px; padding: .3rem .8rem; margin-bottom: .6rem;
}
.top-action-bar {
  display: flex; flex-wrap: wrap; align-items: center; gap: .3rem;
  padding-top: .6rem; border-top: 1px solid var(--line);
}
.top-action-spacer { flex: 1 1 auto; }
.top-vote-btn {
  flex: none; display: inline-flex; align-items: center; gap: .25rem;
  font: inherit; font-size: .78rem; font-weight: 700; border-radius: 999px;
  padding: .35rem .7rem; border: 1px solid var(--line); background: #fff; color: #5a635c; cursor: pointer;
}
.top-vote-btn.yes.active, .top-vote-btn.yes:hover { color: var(--ok); border-color: var(--ok); background: rgba(47,107,79,.1); }
.top-vote-btn.no.active, .top-vote-btn.no:hover { color: #c4451f; border-color: #c4451f; background: rgba(196,69,31,.08); }
.top-vote-btn.maybe.active, .top-vote-btn.maybe:hover { color: #667079; border-color: #667079; background: rgba(102,112,121,.08); }
.top-icon-btn {
  flex: none; display: inline-flex; align-items: center; justify-content: center;
  width: 1.9rem; height: 1.9rem; border-radius: 999px; border: none; background: transparent;
  color: #84896f; cursor: pointer; font-size: .85rem; padding: 0;
}
.top-icon-btn.danger:hover { background: rgba(196,69,31,.08); color: #c4451f; }
.top-comment-form { display: flex; gap: .5rem; margin-top: .9rem; }
.top-comment-input {
  flex: 1; min-width: 0; border: 1.5px solid var(--line); border-radius: 999px;
  padding: .45rem 1rem; font: inherit; font-size: .85rem;
}
.top-comment-send {
  flex: none; border: none; background: var(--sea-deep); color: #fff;
  border-radius: 999px; padding: .45rem 1.1rem; font: inherit; font-size: .8rem; font-weight: 700; cursor: pointer;
}
.top-comment { background: var(--foam); border-radius: 12px; padding: .55rem .7rem; margin-top: .5rem; }
.top-comment-author { font-weight: 700; color: var(--stone); font-size: .85rem; margin-right: .35rem; }
.top-comment-text { font-size: .85rem; color: #5a635c; line-height: 1.4; }
.top-comment-footer { display: flex; align-items: center; gap: .3rem; margin-top: .25rem; }
.top-comment-meta { font-size: .7rem; color: #84896f; flex: 1; }
.tp-vote-bars { margin: .55rem 0 .7rem; display: grid; gap: .35rem; }
.tp-vote-row { display: grid; grid-template-columns: 6.5rem 1fr 4.2rem; gap: .45rem; align-items: center; }
.tp-vote-lab { font-size: .72rem; font-weight: 700; color: #5a635c; }
.tp-bar { height: .45rem; background: #e8edf0; border-radius: 999px; overflow: hidden; }
.tp-bar i { display: block; height: 100%; border-radius: 999px; }
.tp-vote-n { font-size: .7rem; font-weight: 700; color: #667079; text-align: right; }
.tp-vote-total { font-size: .75rem; font-weight: 700; color: var(--sea); margin-top: .15rem; }
.tp-vote-actions { border-top: none; padding-top: 0; margin-bottom: .4rem; }
.tp-vote-actions form { margin: 0; }
@media (max-width: 520px) {
  .tp-vote-row { grid-template-columns: 1fr; gap: .2rem; }
  .tp-vote-n { text-align: left; }
}

/* ?? Ba?lam ?ubu?u (mahalle / topluluk) ?? */
.ctx-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .55rem;
  max-width: 1100px;
  margin: .75rem auto .35rem;
  width: calc(100% - 2rem);
  background: #fff;
  border: 1.5px solid var(--sea);
  border-radius: 14px;
  padding: .55rem .65rem .55rem .85rem;
  box-shadow: 0 0 0 3px rgba(11,79,108,.08);
}
.ctx-info {
  font-size: .82rem;
  color: #5a635c;
  min-width: 0;
  line-height: 1.35;
}
.ctx-info strong { color: var(--sea-deep); font-weight: 800; }
.ctx-info .ctx-count { color: var(--sea); font-weight: 700; }
.ctx-info .ctx-hint {
  display: none;
  font-size: .72rem;
  color: #84896f;
  margin-top: .12rem;
}
@media (min-width: 768px) {
  .ctx-info .ctx-hint { display: block; }
}
.ctx-note {
  font-size: .72rem;
  color: #84896f;
  max-width: 1100px;
  margin: .15rem auto .55rem;
  width: calc(100% - 2rem);
  padding: 0 .2rem;
}
.ctx-switch-btn {
  flex: none;
  display: inline-flex;
  align-items: center;
  gap: .3rem;
  border-radius: 999px;
  border: none;
  background: var(--sea);
  color: #fff;
  font: inherit;
  font-size: .75rem;
  font-weight: 800;
  padding: .45rem .75rem;
  cursor: pointer;
  white-space: nowrap;
}
.ctx-switch-btn:hover { background: var(--sea-deep); }
.ctx-switch-btn .ic { font-size: .95rem; }
.ctx-drop { position: relative; }
.ctx-dropdown {
  right: 0;
  left: auto;
  min-width: 240px;
  max-height: 320px;
  overflow-y: auto;
}
.ctx-drop-head {
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .04em;
  color: #84896f;
  text-transform: uppercase;
  padding: .45rem .65rem .2rem;
}
.ctx-dropdown a.is-active {
  background: rgba(11,79,108,.1);
  color: var(--sea);
}
@media (max-width: 680px) {
  .ctx-bar { border-radius: 12px; margin-top: .5rem; }
}

/* ?? Masa ay?rt carousel (Yerel) ?? */
.masa-car { margin: 1rem 0 1.25rem; }
.masa-car-head {
  display: flex; align-items: center; justify-content: space-between;
  gap: .5rem; margin: 0 0 .55rem .1rem; flex-wrap: wrap;
}
.masa-car-head h3 {
  margin: 0; font-size: .95rem; font-weight: 800; color: var(--sea-deep);
  font-family: Fraunces, Georgia, serif;
}
.masa-car-head .loc { font-size: .75rem; font-weight: 700; color: var(--sea); }
.masa-car-track {
  display: flex; gap: .75rem; overflow-x: auto; scroll-snap-type: x mandatory;
  padding: .15rem .1rem .55rem; scrollbar-width: none; -webkit-overflow-scrolling: touch;
}
.masa-car-track::-webkit-scrollbar { display: none; }
.masa-slide {
  flex: 0 0 min(86%, 340px); scroll-snap-align: center; position: relative;
  border-radius: 18px; overflow: hidden; min-height: 168px; text-decoration: none; color: #fff;
  border: 1px solid var(--line); box-shadow: 0 10px 24px rgba(7,50,72,.12);
}
@media (min-width: 768px) {
  .masa-slide { flex-basis: calc(50% - .4rem); min-height: 190px; }
}
.masa-slide img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.masa-slide .shade {
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(7,50,72,.15), rgba(7,50,72,.88));
}
.masa-slide--sun .shade { background: linear-gradient(180deg, rgba(232,185,49,.2), rgba(7,50,72,.9)); }
.masa-slide--terra .shade { background: linear-gradient(180deg, rgba(224,122,58,.25), rgba(7,50,72,.9)); }
.masa-slide .body {
  position: relative; z-index: 1; min-height: 168px; padding: 1rem .95rem;
  display: flex; flex-direction: column; justify-content: flex-end;
}
@media (min-width: 768px) { .masa-slide .body { min-height: 190px; } }
.masa-slide .q {
  font-size: 1.05rem; font-weight: 800; line-height: 1.25; margin: 0 0 .3rem;
  font-family: Fraunces, Georgia, serif; text-shadow: 0 1px 4px rgba(0,0,0,.4);
}
.masa-slide .s { font-size: .78rem; font-weight: 600; opacity: .92; margin: 0; }
.masa-slide .go {
  margin-top: .55rem; align-self: flex-start; background: var(--sun); color: var(--sea-deep);
  font-size: .72rem; font-weight: 800; padding: .35rem .7rem; border-radius: 999px;
}
.masa-dots { display: flex; justify-content: center; gap: .35rem; margin-top: .15rem; }
.masa-dots button {
  width: 7px; height: 7px; border-radius: 50%; border: none; background: #c5d0d6; padding: 0;
}
.masa-dots button.on { background: var(--sea); width: 18px; border-radius: 999px; }

/* ?? Masa listesi / koltuk plan? ?? */
.masa-tur-tabs { display: flex; flex-wrap: wrap; gap: .4rem; margin: .6rem 0 1rem; }
.masa-tur-tabs a {
  padding: .35rem .75rem; border-radius: 999px; border: 1.5px solid var(--line);
  font-size: .78rem; font-weight: 700; color: var(--sea-deep); background: #fff;
}
.masa-tur-tabs a.is-on { background: var(--sea); color: #fff; border-color: var(--sea); }
.mekan-grid {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: .85rem;
}
.mekan-card {
  display: block; background: #fff; border: 1.5px solid var(--line); border-radius: 16px;
  padding: 1rem; border-top: 4px solid var(--sea); transition: transform .15s, border-color .15s;
}
.mekan-card:hover { transform: translateY(-2px); border-color: var(--sea); }
.mekan-card--meyhane { border-top-color: #c45c26; }
.mekan-card--restaurant { border-top-color: var(--sea); }
.mekan-card--lokanta { border-top-color: #6aaa88; }
.mekan-card--cafe { border-top-color: #b8892e; }
.mekan-tur {
  font-size: .65rem; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; color: var(--sea);
}
.mekan-ad {
  font-family: Fraunces, Georgia, serif; font-weight: 700; color: var(--sea-deep);
  font-size: 1.1rem; margin: .2rem 0;
}
.mekan-desc { margin: 0; font-size: .8rem; color: #667079; line-height: 1.35; }
.mekan-meta { display: block; margin-top: .45rem; font-size: .75rem; font-weight: 700; color: var(--sea); }
.masa-slot-bar {
  display: flex; flex-wrap: wrap; gap: .55rem; align-items: flex-end; margin: .8rem 0 1.1rem;
  padding: .85rem; background: #f4f8fa; border-radius: 14px; border: 1px solid var(--line);
}
.masa-slot-bar label { display: block; font-size: .72rem; font-weight: 700; color: #667079; margin-bottom: .25rem; }
.masa-slot-bar select, .masa-slot-bar input {
  border: 1.5px solid var(--line); border-radius: 10px; padding: .4rem .55rem; font-weight: 600;
}
.masa-plan-grid {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 1rem;
}
.masa-plan-card {
  background: #fff; border: 1.5px solid var(--line); border-radius: 16px; padding: 1rem;
}
.masa-plan-card h3 {
  margin: 0 0 .25rem; font-family: Fraunces, Georgia, serif; font-size: 1.05rem; color: var(--sea-deep);
}
.masa-plan-meta { font-size: .78rem; color: #667079; margin: 0 0 .75rem; }
.koltuk-grid {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(72px, 1fr)); gap: .45rem;
}
.koltuk-btn {
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  min-height: 64px; border-radius: 12px; border: 1.5px solid var(--line); background: #fff;
  font-size: .72rem; font-weight: 700; color: var(--sea-deep); cursor: pointer; padding: .35rem;
  transition: border-color .15s, background .15s;
}
.koltuk-btn.bos:hover, .koltuk-btn.bos.is-secili {
  border-color: var(--sea); background: rgba(11,79,108,.08);
}
.koltuk-btn.dolu {
  background: #f0f2f3; color: #8a9196; cursor: default; border-style: dashed;
}
.koltuk-btn .k-etiket { font-size: .85rem; font-weight: 800; color: var(--sea); }
.koltuk-btn.dolu .k-etiket { color: #8a9196; }
.koltuk-btn .k-ad {
  font-size: .62rem; font-weight: 600; line-height: 1.2; text-align: center;
  max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.masa-ayir-form {
  margin-top: 1.2rem; padding: 1rem; background: #fff; border: 1.5px solid var(--line);
  border-radius: 16px; max-width: 420px;
}
.masa-ayir-form h3 { margin: 0 0 .75rem; font-size: 1rem; color: var(--sea-deep); }
.masa-ayir-form .gor-sec { display: flex; flex-direction: column; gap: .4rem; margin: .5rem 0 .8rem; }
.masa-ayir-form .gor-sec label { font-weight: 600; font-size: .85rem; display: flex; align-items: center; gap: .4rem; }

.masa-shell .masa-h1 {
  font-family: Fraunces, Georgia, serif; color: var(--sea-deep);
  font-size: 1.55rem; margin: 0 0 .35rem;
}
.masa-shell .masa-h2 {
  font-family: Fraunces, Georgia, serif; font-size: 1.12rem;
  color: var(--sea-deep); margin: 1.15rem 0 .4rem;
}
.masa-back { margin: 0 0 .75rem; font-size: .9rem; }
.masa-list-head { margin-bottom: .35rem; }
.masa-list-hint, .masa-select-hint, .masa-benim-lead {
  margin: .25rem 0 .65rem; font-size: .86rem; color: #667079;
}
.masa-rating-line {
  margin: 0 0 .4rem; font-weight: 800; color: var(--sea-deep); font-size: .95rem;
}
.masa-rating-line span { font-weight: 500; color: #667079; }
.masa-rating-line--empty { font-weight: 600; color: #889; font-size: .85rem; }
.yk-chip--ozel {
  background: rgba(180, 120, 30, .12); color: #8a5a12; border-color: rgba(180, 120, 30, .28);
}
.masa-benim {
  margin: 0 0 1.25rem; padding: 1rem; background: #f4f8fa;
  border: 1.5px solid var(--line); border-radius: 16px;
}
.masa-benim-list { list-style: none; margin: 0; padding: 0; display: grid; gap: .55rem; }
.masa-benim-item {
  display: flex; justify-content: space-between; gap: .75rem; align-items: flex-start;
  background: #fff; border: 1px solid var(--line); border-radius: 12px; padding: .7rem .8rem;
}
.masa-benim-item.is-iptal { opacity: .65; }
.masa-benim-meta { display: block; font-size: .78rem; color: #667079; margin-top: .15rem; }
.masa-badge {
  display: inline-block; margin-top: .3rem; font-size: .72rem; font-weight: 800;
  padding: .15rem .45rem; border-radius: 999px; background: #eef2f4; color: #556;
}
.masa-badge--wait { background: #fff3d6; color: #8a5a00; }
.masa-badge--quote { background: rgba(11,79,108,.1); color: var(--sea-deep); }
.masa-badge--ok { background: #e4f6ec; color: #1a7a4c; }
.masa-mini-btn { font-size: .75rem; padding: .28rem .55rem; }
.masa-inline-forms { display: flex; flex-wrap: wrap; gap: .35rem; margin-top: .4rem; }
.masa-secim-sayac { font-size: .82rem; font-weight: 700; color: var(--sea); margin: 0 0 .45rem; }
.masa-misafir-label { display: block; font-size: .78rem; font-weight: 700; color: #667079; margin-bottom: .25rem; }
.masa-ozel-kutu {
  margin: .55rem 0 .8rem; padding: .7rem .8rem; border-radius: 12px;
  border: 1.5px dashed rgba(180, 120, 30, .45); background: rgba(255, 244, 220, .55);
}
.masa-ozel-kutu label { font-weight: 700; font-size: .88rem; display: flex; gap: .45rem; align-items: flex-start; }
.masa-yorum-form-blok, .masa-yorumlar {
  margin-top: 1.4rem; padding-top: .2rem;
}
.masa-yorum-form {
  max-width: 420px; background: #fff; border: 1.5px solid var(--line);
  border-radius: 16px; padding: 1rem;
}
.masa-yorum-form label { display: block; font-size: .78rem; font-weight: 700; color: #667079; margin: .45rem 0 .25rem; }
.masa-yorum-form select,
.masa-yorum-form textarea {
  width: 100%; border: 1.5px solid var(--line); border-radius: 10px;
  padding: .45rem .55rem; font: inherit;
}
.masa-yorum-list { list-style: none; margin: 0; padding: 0; display: grid; gap: .65rem; }
.masa-yorum-list li {
  background: #fff; border: 1.5px solid var(--line); border-radius: 14px; padding: .8rem .9rem;
}
.masa-yorum-head {
  display: flex; justify-content: space-between; gap: .5rem;
  font-size: .9rem; margin-bottom: .25rem; color: var(--sea-deep);
}
.masa-yorum-list p { margin: 0; font-size: .88rem; color: #3a4650; line-height: 1.45; }
.masa-yorum-list time { display: block; margin-top: .35rem; font-size: .72rem; color: #889; }
.koltuk-btn.bos.is-secili {
  border-color: var(--sea); background: rgba(11,79,108,.12);
  box-shadow: 0 0 0 2px rgba(11,79,108,.18);
}
.masa-cta-hizmet {
  display: flex; gap: 1rem; align-items: center; flex-wrap: wrap;
  background: linear-gradient(120deg, var(--sea-deep), var(--sea));
  color: #fff; border-radius: 18px; padding: 1.15rem 1.25rem; margin-bottom: 1.1rem;
  text-decoration: none;
}
.masa-cta-hizmet:hover { color: #fff; opacity: .96; }
.masa-cta-hizmet h3 {
  margin: 0 0 .25rem; font-family: Fraunces, Georgia, serif; font-size: 1.25rem; color: #fff;
}
.masa-cta-hizmet p { margin: 0; font-size: .85rem; opacity: .9; }
.masa-cta-hizmet .go {
  margin-left: auto; background: var(--sun); color: var(--sea-deep);
  font-weight: 800; font-size: .8rem; padding: .45rem .9rem; border-radius: 999px;
}

/* ?? Kanal / mod?l tan?t?m ?? */
.kanal-intro {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
  flex-wrap: wrap;
  margin: .85rem clamp(1rem, 4vw, 2rem) 1rem;
  padding: 1.1rem 1.2rem;
  border-radius: 18px;
  border: 1px solid var(--line);
  background: #fff;
}
.kanal-intro--sea {
  background: linear-gradient(135deg, #e8f3f7 0%, #fff 55%);
  border-color: #c5dde8;
}
.kanal-intro--sun {
  background: linear-gradient(135deg, #fff6e0 0%, #fff 55%);
  border-color: #f0d9a0;
}
.kanal-intro--terra {
  background: linear-gradient(135deg, #f3ebe4 0%, #fff 55%);
  border-color: #e2d0c0;
}
.kanal-intro-body { flex: 1; min-width: 220px; }
.kanal-intro-eyebrow {
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--sea);
  margin-bottom: .25rem;
}
.kanal-intro-title {
  margin: 0 0 .35rem;
  font-family: Fraunces, Georgia, serif;
  font-size: 1.35rem;
  color: var(--sea-deep);
}
.kanal-intro-ozet {
  margin: 0;
  font-size: .92rem;
  color: #3d4a52;
  line-height: 1.45;
  max-width: 52ch;
}
.kanal-intro-detay {
  margin: .55rem 0 0;
  font-size: .84rem;
  color: #667079;
  line-height: 1.5;
  max-width: 58ch;
}
.kanal-intro-cta {
  margin-left: auto;
  align-self: center;
  background: var(--sea-deep);
  color: #fff;
  font-weight: 800;
  font-size: .82rem;
  padding: .55rem 1rem;
  border-radius: 999px;
  text-decoration: none;
  white-space: nowrap;
}
.kanal-intro-cta:hover { color: #fff; opacity: .94; }

.modul-tanitim-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: .85rem;
  margin: .5rem 0 1.2rem;
}
.modul-tanitim-card {
  display: block;
  padding: 1rem 1.05rem;
  border-radius: 16px;
  border: 1px solid var(--line);
  background: #fff;
  text-decoration: none;
  color: inherit;
  transition: transform .15s ease, box-shadow .15s ease;
}
.modul-tanitim-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 22px rgba(7, 50, 72, .08);
  color: inherit;
}
.modul-tanitim-card--sea { border-top: 3px solid var(--sea); }
.modul-tanitim-card--sun { border-top: 3px solid var(--sun); }
.modul-tanitim-card--terra { border-top: 3px solid #b07a4f; }
.modul-tanitim-label {
  display: block;
  font-family: Fraunces, Georgia, serif;
  font-weight: 700;
  font-size: 1.1rem;
  color: var(--sea-deep);
  margin-bottom: .35rem;
}
.modul-tanitim-card p {
  margin: 0;
  font-size: .86rem;
  color: #5a635c;
  line-height: 1.45;
}
.modul-tanitim-more {
  display: inline-block;
  margin-top: .65rem;
  font-size: .8rem;
  font-weight: 800;
  color: var(--sea);
}

.showcase-aciklama {
  margin: .25rem 0 .55rem;
  font-size: .78rem;
  color: #667079;
  line-height: 1.35;
  min-height: 2.4em;
}
.detay-aciklama {
  display: flex;
  flex-direction: column;
  gap: .2rem;
  margin: 0 0 .85rem;
  padding: .75rem .9rem;
  border-radius: 12px;
  background: #f3f8fa;
  border: 1px solid #d7e6ed;
  font-size: .88rem;
  color: #4a585f;
  line-height: 1.4;
}
.detay-aciklama strong {
  color: var(--sea-deep);
  font-size: .78rem;
  letter-spacing: .04em;
  text-transform: uppercase;
}

/* ?? Birlikte indirim ?? */
.birlikte-box {
  margin: 1rem 0 1.2rem;
  padding: .95rem 1rem;
  border-radius: 16px;
  border: 1.5px solid #c5dde8;
  background: linear-gradient(160deg, #f3f9fc, #fff);
}
.birlikte-head {
  font-size: .68rem; font-weight: 800; letter-spacing: .05em; text-transform: uppercase;
  color: var(--sea); margin-bottom: .25rem;
}
.birlikte-title {
  font-family: Fraunces, Georgia, serif; font-weight: 700; color: var(--sea-deep);
  font-size: 1.05rem; margin-bottom: .25rem;
}
.birlikte-desc { margin: 0 0 .55rem; font-size: .8rem; color: #667079; }
.birlikte-bar {
  height: 8px; border-radius: 999px; background: #d9e8ef; overflow: hidden; margin-bottom: .45rem;
}
.birlikte-bar span {
  display: block; height: 100%; background: linear-gradient(90deg, var(--sea), #1a7a8c); border-radius: 999px;
}
.birlikte-meta { margin: 0; font-size: .78rem; color: #4a5560; line-height: 1.4; }
.birlikte-fiyat { margin: .5rem 0 0; display: flex; align-items: baseline; gap: .55rem; }
.birlikte-fiyat .eski {
  text-decoration: line-through; color: #8a9196; font-size: .9rem; font-weight: 600;
}
.birlikte-fiyat .yeni {
  font-size: 1.25rem; font-weight: 800; color: var(--sea-deep);
}
/* ?? Birlikte = Bavsla BAVS ?r?n kart? (bavs-card3) ?? */
.bavs-sec .sec-head h2 { font-size: 1.05rem; }
.bavs-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 2.2rem 1.3rem;
  margin: .35rem 0 1rem;
}
.bavs-carousel {
  display: flex;
  gap: 1.2rem;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  padding: .3rem .2rem 1rem;
  scrollbar-width: thin;
}
.bavs-carousel::-webkit-scrollbar { height: 6px; }
.bavs-carousel::-webkit-scrollbar-thumb { background: rgba(11,79,108,.35); border-radius: 99px; }
.bavs-carousel .bavs-card3 { flex: 0 0 265px; scroll-snap-align: start; }
.bavs-daha-fazla-kart {
  flex: 0 0 190px;
  scroll-snap-align: start;
  margin-top: 46px;
  border-radius: 18px;
  background: linear-gradient(160deg, #073248 0%, #0b4f6c 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  min-height: 220px;
}
.bavs-daha-fazla-kart a {
  color: var(--sun);
  font-weight: 800;
  text-decoration: none;
  font-size: .85rem;
  padding: 1rem;
}
.bavs-daha-fazla-kart small { color: #c7d5dd; font-weight: 400; }
.bavs-card3 { position: relative; margin-top: 46px; overflow: visible; }
.bavs-card3--ornek > .yk-ornek { top: .55rem; z-index: 4; }
.bavs-card3--ornek .bavs-card3-govde { outline: 2px dashed rgba(232, 185, 49, .75); outline-offset: -3px; }
.bavs-card3-govde {
  position: relative;
  border-radius: 18px;
  overflow: hidden;
  background: #073248;
  box-shadow: 0 10px 26px rgba(0,0,0,.22);
}
.bavs-saat-rozet {
  position: absolute;
  top: -46px;
  left: 50%;
  transform: translateX(-50%);
  width: 92px;
  height: 92px;
  border-radius: 50%;
  z-index: 5;
  perspective: 520px;
  animation: bavsSaatYanip 1.4s ease-in-out infinite;
}
.bavs-saat-flip {
  position: relative;
  width: 100%;
  height: 100%;
  transform-style: preserve-3d;
  animation: bavsSaatDon 6s ease-in-out infinite;
}
.bavs-saat-yuz {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: #041e2a;
  border: 3px solid #ff5b3d;
  box-shadow: 0 6px 18px rgba(255,91,61,.4);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
.bavs-saat-on { transform: rotateY(0deg); }
.bavs-saat-arka {
  transform: rotateY(180deg);
  background: linear-gradient(145deg, #073248 0%, #0b4f6c 55%, #041e2a 100%);
  border-color: var(--sun);
}
@keyframes bavsSaatDon {
  0%, 42% { transform: rotateY(0deg); }
  50%, 92% { transform: rotateY(180deg); }
  100% { transform: rotateY(360deg); }
}
@keyframes bavsSaatYanip {
  0%, 100% { filter: drop-shadow(0 6px 10px rgba(255,91,61,.35)); }
  50% { filter: drop-shadow(0 8px 16px rgba(255,210,63,.55)); }
}
.bavs-saat-rozet .etiket {
  color: #ff5b3d;
  font-size: .55rem;
  font-weight: 900;
  letter-spacing: .03em;
  text-transform: uppercase;
}
.bavs-saat-metin {
  color: #fff;
  font-weight: 900;
  font-size: .92rem;
  font-variant-numeric: tabular-nums;
  margin-top: .1rem;
}
.bavs-saat-marka {
  color: var(--sun);
  font-weight: 900;
  font-size: .72rem;
  letter-spacing: .02em;
  text-transform: lowercase;
  line-height: 1.05;
  text-align: center;
  padding: 0 .35rem;
}
.bavs-alev-taban {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(180deg, #ffd23f 0%, #ff8a2b 40%, #ff5b3d 75%, #c4451f 100%);
  transition: height 1.2s ease;
  animation: bavsAlevTitre 1.6s ease-in-out infinite;
  z-index: 1;
}
@keyframes bavsAlevTitre {
  0%, 100% { filter: brightness(1); }
  50% { filter: brightness(1.2); }
}
.bavs-alev-yazi {
  position: absolute;
  left: 50%;
  transform: translate(-50%, 50%);
  color: #c4111b;
  font-weight: 800;
  font-size: .95rem;
  font-family: 'Comic Sans MS', 'Chalkboard SE', cursive;
  text-shadow: 0 1px 0 rgba(255,255,255,.6);
  background: #fff;
  border-radius: 999px;
  padding: .15rem .6rem;
  z-index: 2;
  transition: bottom 1.2s ease;
}
.bavs-alev-yazi--soft {
  color: #8a5a12;
  font-weight: 700;
  font-size: .78rem;
  font-family: Outfit, system-ui, sans-serif;
  background: rgba(255, 248, 225, .95);
  border: 1px solid rgba(232, 185, 49, .45);
  text-shadow: none;
}
.bavs-icerik3 { position: relative; z-index: 3; padding: 1.1rem .95rem .95rem; }
.bavs-urun-sayisi-chip {
  display: inline-block;
  background: rgba(232,185,49,.18);
  color: var(--sun);
  font-weight: 800;
  font-size: .68rem;
  padding: .15rem .55rem;
  border-radius: 999px;
  margin-bottom: .4rem;
}
.bavs-badge2 {
  display: inline-block;
  background: var(--sun);
  color: #0b0c0a;
  font-weight: 900;
  font-size: .62rem;
  letter-spacing: .03em;
  padding: .2rem .55rem;
  border-radius: 999px;
  text-transform: uppercase;
  margin-bottom: .5rem;
}
.bavs-resim2 {
  width: 100%;
  height: 130px;
  object-fit: cover;
  border-radius: 12px;
  display: block;
}
.bavs-magaza2 {
  color: #fff;
  font-weight: 800;
  font-size: .92rem;
  margin: .6rem 0 0;
  text-shadow: 0 1px 3px rgba(0,0,0,.5);
}
.bavs-urun-adi2 {
  color: #e9ecdf;
  font-size: .78rem;
  margin: .1rem 0 .5rem;
  text-shadow: 0 1px 3px rgba(0,0,0,.5);
}
.bavs-cumle2 {
  color: #f2f4ea;
  font-size: .7rem;
  line-height: 1.4;
  margin: 0 0 .6rem;
  background: rgba(11,12,10,.55);
  border-radius: 10px;
  padding: .45rem .55rem;
}
.bavs-panel3 {
  background: rgba(11,12,10,.62);
  border-radius: 14px;
  padding: .7rem .75rem;
}
.bavs-eski-fiyat2 {
  display: block;
  color: #c7cabb;
  text-decoration: line-through;
  font-size: .82rem;
}
.bavs-yeni-fiyat2 {
  display: block;
  color: var(--sun);
  font-weight: 900;
  font-size: 1.35rem;
  font-family: ui-monospace, "Cascadia Code", Consolas, monospace;
}
.bavs-stok2 { color: #e9ecdf; font-size: .74rem; margin: .35rem 0 .7rem; }
.bavs-stok2.tukendi { color: #ff8a72; font-weight: 800; }
.bavs-buton-satir2 { display: flex; gap: .5rem; }
.bavs-incele-btn2 {
  flex: 1;
  text-align: center;
  background: transparent;
  border: 1.5px solid var(--sun);
  color: var(--sun);
  font-weight: 800;
  padding: .5rem;
  border-radius: 10px;
  text-decoration: none;
  font-size: .8rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.bavs-sepet-btn2 {
  width: 100%;
  border: none;
  background: var(--sun);
  color: #0b0c0a;
  font-weight: 800;
  padding: .5rem;
  border-radius: 10px;
  font-size: .8rem;
  cursor: pointer;
}
.bavs-sepet-btn2:disabled { opacity: .5; cursor: not-allowed; }
@media (max-width: 680px) {
  .bavs-grid { grid-template-columns: 1fr; }
}

/* ?? Hizmet listesi (bavsla.com paneli stili) ?? */
.hz-wrap { padding: 0; }
.hz-top {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
  justify-content: space-between;
  align-items: center;
  margin-bottom: .85rem;
}
.hz-top h2,
.hz-top h3 {
  font-weight: 800;
  margin: 0;
  font-size: 1.15rem;
  color: var(--sea-deep);
  font-family: Fraunces, Georgia, serif;
}
.hz-links {
  display: flex;
  gap: .4rem;
  flex-wrap: nowrap;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.hz-links a {
  flex: 0 0 auto;
  font-size: .78rem;
  font-weight: 700;
  color: var(--sea);
  text-decoration: none;
  border: 1.5px solid var(--sea);
  border-radius: 999px;
  padding: .32rem .75rem;
  white-space: nowrap;
}
.hz-note {
  font-size: .78rem;
  color: #3a4a52;
  margin: 0 0 .85rem;
  background: #e8f4f8;
  border: 1px solid #b7d5e0;
  border-radius: 12px;
  padding: .65rem .85rem;
  line-height: 1.35;
}
.hz-toolbar {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: .45rem;
  margin: 0 0 .7rem;
}
.hz-toolbar input[type=search] {
  width: 100%;
  border: 1.5px solid var(--line);
  border-radius: 12px;
  padding: .7rem .95rem;
  font-size: 16px;
  background: #fff;
  min-width: 0;
  font-family: inherit;
}
.hz-toolbar input:focus {
  outline: none;
  border-color: var(--sea);
  box-shadow: 0 0 0 3px rgba(11, 79, 108, .12);
}
.hz-toolbar .hz-go {
  border: none;
  background: var(--sea-deep);
  color: #fff;
  border-radius: 12px;
  padding: .7rem 1rem;
  font-weight: 800;
  font-size: .88rem;
  cursor: pointer;
  font-family: inherit;
}
.hz-sortrow {
  display: flex;
  align-items: center;
  gap: .5rem;
  margin: 0 0 .75rem;
}
.hz-sortrow label {
  font-size: .78rem;
  font-weight: 700;
  color: #6a7580;
  white-space: nowrap;
}
.hz-sortrow select {
  flex: 1;
  border: 1.5px solid var(--line);
  border-radius: 12px;
  padding: .55rem .75rem;
  font-size: .88rem;
  font-weight: 700;
  background: #fff;
  min-width: 0;
  font-family: inherit;
}
.hz-clear {
  font-size: .78rem;
  font-weight: 700;
  color: #6a7580;
  text-decoration: none;
  white-space: nowrap;
}
.hz-cat-row {
  display: flex;
  gap: .4rem;
  margin-bottom: .85rem;
  overflow-x: auto;
  flex-wrap: nowrap;
  -webkit-overflow-scrolling: touch;
  padding-bottom: .15rem;
  scrollbar-width: none;
}
.hz-cat-row::-webkit-scrollbar { display: none; }
.hz-cat-chip {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  padding: .38rem .85rem;
  border-radius: 100px;
  font-size: .8rem;
  font-weight: 700;
  border: 1.5px solid var(--line);
  background: #fff;
  color: var(--stone);
  text-decoration: none;
  white-space: nowrap;
}
.hz-cat-chip.active {
  background: var(--sea);
  border-color: var(--sea);
  color: #fff;
}
.hz-count {
  font-size: .78rem;
  font-weight: 700;
  color: #6a7580;
  margin: 0 0 .55rem;
}
.hz-list {
  display: flex;
  flex-direction: column;
  gap: .55rem;
}
.hz-item {
  display: flex;
  gap: .7rem;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: .65rem;
  text-decoration: none;
  color: inherit;
  align-items: stretch;
  transition: background .15s ease;
}
.hz-item:hover,
.hz-item:active { background: #f0f5f7; }
.hz-item .pic {
  flex: 0 0 72px;
  width: 72px;
  height: 72px;
  border-radius: 11px;
  object-fit: cover;
  background: #e8f4f8;
}
.hz-item .info {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
}
.hz-item .top {
  display: flex;
  gap: .35rem;
  align-items: center;
  margin-bottom: .2rem;
}
.hz-item .hz-badge {
  display: inline-block;
  font-size: .62rem;
  font-weight: 800;
  padding: .12rem .45rem;
  border-radius: 999px;
  color: #fff;
  line-height: 1.2;
}
.hz-item .hz-badge.randevu { background: var(--sea); }
.hz-item .hz-badge.kod { background: var(--ok); }
.hz-item .hz-badge.ornek { background: #8a6d1f; }
.hz-item h5 {
  font-size: .9rem;
  font-weight: 800;
  margin: 0;
  line-height: 1.25;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: var(--sea-deep);
}
.hz-item .desc {
  font-size: .76rem;
  color: #4a5560;
  margin: .2rem 0 .25rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.hz-item .meta {
  font-size: .7rem;
  color: #6a7580;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.hz-item .cta {
  margin-top: auto;
  padding-top: .35rem;
  font-size: .75rem;
  font-weight: 800;
  color: var(--sea);
}
.hz-item .cta.kod { color: var(--ok); }
.hz-empty {
  text-align: center;
  padding: 1.25rem 1rem;
  background: #fff;
  border: 1px dashed var(--line);
  border-radius: 14px;
  color: #6a7580;
  font-size: .9rem;
}
.hz-book {
  margin: 0 0 1.4rem;
  padding: 1.1rem 1rem 1.15rem;
  background: linear-gradient(165deg, #f4f9fb 0%, #fff 55%);
  border: 1.5px solid var(--line);
  border-radius: 18px;
}
.hz-book-title {
  margin: 0 0 .35rem;
  font-family: Fraunces, Georgia, serif;
  color: var(--sea-deep);
  font-size: 1.25rem;
}
.hz-book-meta, .hz-book-desc {
  margin: 0 0 .55rem;
  font-size: .88rem;
  color: #667079;
  line-height: 1.45;
}
.hz-cal { display: grid; gap: .85rem; margin: .85rem 0 1rem; }
.hz-cal-label {
  font-weight: 800;
  color: var(--sea-deep);
  margin-bottom: .4rem;
  font-size: .9rem;
}
.hz-cal-slots { display: flex; flex-wrap: wrap; gap: .4rem; }
.hz-slot {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 3.4rem;
  padding: .4rem .7rem;
  border-radius: 12px;
  font-size: .86rem;
  font-weight: 700;
  border: 1.5px solid var(--line);
  background: #fff;
  color: var(--sea-deep);
  cursor: default;
  transition: border-color .15s, background .15s, transform .12s;
}
.hz-slot--open {
  cursor: pointer;
  border-color: rgba(11, 79, 108, .35);
  background: rgba(11, 79, 108, .07);
}
.hz-slot--open:hover,
.hz-slot--open:has(input:checked) {
  border-color: var(--sea);
  background: rgba(11, 79, 108, .14);
  transform: translateY(-1px);
}
.hz-slot--open input { position: absolute; opacity: 0; pointer-events: none; }
.hz-slot--open { position: relative; }
.hz-slot--busy {
  background: #f0f2f3;
  color: #8a9196;
  text-decoration: line-through;
  border-style: dashed;
}
.hz-slot--blok {
  background: #fff4e8;
  color: #a05a20;
  text-decoration: line-through;
  border-color: rgba(180, 100, 30, .35);
}
.hz-book-note {
  width: 100%;
  margin-bottom: .65rem;
  padding: .55rem .7rem;
  border: 1.5px solid var(--line);
  border-radius: 10px;
  font: inherit;
}
.hz-item-rating { font-weight: 700; color: var(--sea-deep); }
.hz-item-rating span { font-weight: 500; color: #889; }
.hz-appt-list { margin: 0 0 1.5rem; }
.hz-seller-lead {
  margin: 0 0 1rem;
  font-size: .9rem;
  color: #667079;
}
.hz-seller-card {
  margin: 0 0 1.35rem;
  padding: 1rem;
  background: #fff;
  border: 1.5px solid var(--line);
  border-radius: 16px;
}
.hz-seller-h {
  margin: 0 0 .45rem;
  font-family: Fraunces, Georgia, serif;
  color: var(--sea-deep);
  font-size: 1.15rem;
}
@media (min-width: 768px) {
  .hz-top h2,
  .hz-top h3 { font-size: 1.35rem; }
  .hz-toolbar { grid-template-columns: 1fr 110px; }
  .hz-item .pic { flex-basis: 96px; width: 96px; height: 96px; }
  .hz-item h5 { font-size: 1rem; }
  .hz-item .desc { font-size: .84rem; }
  .hz-list { gap: .7rem; }
  .hz-cat-row { flex-wrap: wrap; overflow: visible; }
  .hz-book { padding: 1.25rem 1.25rem 1.35rem; }
}

/* ?? Harita (Leaflet + Carto Positron) ?? */
.harita-widget,
.harita-nearby {
  margin: 1rem 0 1.25rem;
}
.harita-label {
  display: block;
  font-weight: 700;
  color: var(--sea-deep);
  margin-bottom: .25rem;
}
.harita-hint {
  margin: 0 0 .55rem;
  font-size: .82rem;
  color: #5b6b76;
  line-height: 1.4;
}
.harita-nearby-head {
  margin-bottom: .5rem;
}
.harita-nearby-title {
  margin: 0 0 .2rem;
  font-family: Fraunces, Georgia, serif;
  font-size: 1.15rem;
  color: var(--sea-deep);
}
.harita-map {
  width: 100%;
  height: 300px;
  border-radius: 12px;
  border: 1px solid var(--line, #d7dde3);
  overflow: hidden;
  background: #e8eef1;
  z-index: 1;
}
.harita-map--nearby {
  height: 320px;
}
@media (min-width: 768px) {
  .harita-map { height: 340px; }
  .harita-map--nearby { height: 360px; }
}
.harita-actions {
  margin-top: .45rem;
}
.harita-btn {
  background: none;
  border: 1px solid var(--line, #d7dde3);
  border-radius: 8px;
  padding: .35rem .75rem;
  font: inherit;
  font-size: .82rem;
  font-weight: 600;
  color: var(--sea);
  cursor: pointer;
}
.harita-btn:hover {
  border-color: var(--sea);
  background: #e8f4f8;
}
.harita-pin-dot,
.harita-svc-dot,
.harita-user-dot {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  box-sizing: border-box;
}
.harita-pin-dot {
  background: var(--sea);
  border: 2px solid #fff;
  box-shadow: 0 1px 4px rgba(7, 50, 72, .35);
}
.harita-svc-dot {
  background: #c9a45a;
  border: 2px solid #fff;
  box-shadow: 0 1px 3px rgba(7, 50, 72, .3);
}
.harita-user-dot {
  background: #2f6b4f;
  border: 2px solid #fff;
  box-shadow: 0 1px 3px rgba(7, 50, 72, .3);
}
.leaflet-container {
  font: inherit;
}
.harita-pin,
.harita-svc,
.harita-user {
  background: transparent !important;
  border: none !important;
}

/* ?? ?evrende (liste ?ncelikli ke?if) ?? */
.cevre-kesif {
  margin: 0 0 1.5rem;
}
.cevre-kesif-title {
  margin: 0 0 .35rem;
  font-family: Fraunces, Georgia, serif;
  font-size: clamp(1.35rem, 3vw, 1.85rem);
  color: var(--sea-deep);
}
.cevre-kesif-lead {
  margin: 0 0 .9rem;
  color: #5b6b76;
  line-height: 1.45;
  max-width: 48ch;
}
.cevre-idle {
  display: grid;
  gap: .75rem;
  justify-items: start;
  margin: .25rem 0 1rem;
}
.cevre-btn-start {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  border: none;
  cursor: pointer;
  font: inherit;
  font-weight: 700;
  font-size: 1.05rem;
  padding: .85rem 1.35rem;
  border-radius: 12px;
  min-height: 3rem;
}
.cevre-idle-hint {
  margin: 0;
  font-size: .9rem;
  color: #667079;
  max-width: 42ch;
}
.cevre-il-label--idle {
  margin-top: .15rem;
}
.cevre-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem .75rem;
  align-items: flex-end;
  margin-bottom: .55rem;
}
.cevre-btn-geo {
  text-decoration: none;
  border: none;
  cursor: pointer;
  font: inherit;
  font-weight: 700;
  padding: .45rem .95rem;
  border-radius: 10px;
}
.cevre-il-label,
.cevre-r-label {
  display: flex;
  flex-direction: column;
  gap: .2rem;
  font-size: .72rem;
  font-weight: 600;
  color: #5b6b76;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.cevre-il-label select,
.cevre-r-label select {
  font: inherit;
  font-size: .9rem;
  font-weight: 600;
  text-transform: none;
  letter-spacing: 0;
  color: var(--sea-deep);
  border: 1px solid var(--line, #d7dde3);
  border-radius: 8px;
  padding: .4rem .55rem;
  background: #fff;
  min-width: 7.5rem;
}
.cevre-map-panel {
  margin-top: 1rem;
}
.cevre-btn-map {
  font: inherit;
  font-weight: 600;
  font-size: .9rem;
  cursor: pointer;
  padding: .4rem .75rem;
  border-radius: 8px;
}
.cevre-map-wrap {
  margin-top: .65rem;
}
.harita-map--cevre {
  height: 340px;
}
@media (min-width: 768px) {
  .harita-map--cevre { height: 420px; }
}
.cevre-liste {
  list-style: none;
  margin: .85rem 0 0;
  padding: 0;
  display: grid;
  gap: .55rem;
}
.cevre-liste-item a {
  display: grid;
  gap: .2rem;
  padding: .85rem 1rem;
  border: 1px solid var(--line, #d7dde3);
  border-radius: 12px;
  text-decoration: none;
  color: inherit;
  background: #fff;
  box-shadow: 0 1px 0 rgba(11, 79, 108, .04);
}
.cevre-liste-item a:hover {
  border-color: var(--sea);
  background: #f3f8fa;
}
.cevre-liste-item strong {
  color: var(--sea-deep);
  font-size: 1.02rem;
}
.cevre-tip {
  font-size: .78rem;
  font-weight: 600;
  color: var(--sea);
}
.cevre-meta {
  font-size: .8rem;
  color: #667079;
}
.cevre-more {
  margin: .75rem 0 0;
  font-weight: 600;
}
.cevre-page {
  padding-top: 1.25rem;
  padding-bottom: 2rem;
}
.cevre-teaser {
  padding-top: 1.5rem;
  padding-bottom: 1.25rem;
}
.cevre-teaser-inner {
  display: grid;
  gap: .35rem;
  justify-items: start;
  max-width: 36rem;
}
.cevre-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .65rem .75rem;
  margin-top: .35rem;
}
.cevre-il-label--teaser {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  font-size: .85rem;
  color: #5a635c;
}
.cevre-il-label--teaser select {
  min-width: 8.5rem;
  padding: .45rem .55rem;
  border-radius: 10px;
  border: 1.5px solid rgba(11, 79, 108, .22);
  background: #fff;
}
.ilan-konum-hint {
  margin: .35rem 0 0;
  font-size: .82rem;
  color: #5a635c;
}
.ctx-geo-btn {
  white-space: nowrap;
}
.cevre-teaser .cevre-btn-start {
  margin-top: 0;
}
.cevre-actions .btn-taxi {
  padding: .7rem 1.2rem;
  font-size: inherit;
}
.cevre-teaser .cevre-status {
  margin: .55rem 0 0;
  max-width: 48ch;
}
.cevre-teaser-results {
  margin-top: 1rem;
  width: 100%;
  max-width: 100%;
}
.cevre-teaser-carousel {
  margin-top: .15rem;
}
.cevre-liste-wrap {
  margin: .85rem 0 0;
}

/* ?? KKTC Rehberi (turist & ??renci) ?? */
.hero--rehber {
  min-height: clamp(280px, 48vh, 420px);
  animation: rehberHeroIn .7s ease-out both;
}
@keyframes rehberHeroIn {
  from { opacity: 0; transform: translateY(12px); }
  to { opacity: 1; transform: none; }
}
.btn-sea {
  background: var(--sea);
  color: #fff !important;
  padding: .7rem 1.2rem;
  border-radius: 999px;
  font-weight: 800;
  display: inline-block;
  border: 0;
}
.btn-outline {
  border: 1.5px solid rgba(11,79,108,.35);
  color: var(--sea-deep);
  padding: .65rem 1.15rem;
  border-radius: 999px;
  font-weight: 700;
  display: inline-block;
  background: rgba(255,255,255,.55);
}
.btn-outline:hover {
  border-color: var(--sea);
  background: #fff;
}
.rehber-jump {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem .55rem;
  padding: .85rem clamp(1rem, 4vw, 2.5rem);
  background: rgba(255,255,255,.72);
  border-bottom: 1px solid var(--line);
  position: sticky;
  top: 64px;
  z-index: 15;
  backdrop-filter: blur(8px);
}
.rehber-jump a {
  font-size: .82rem;
  font-weight: 700;
  color: var(--sea-deep);
  padding: .35rem .75rem;
  border-radius: 999px;
  background: var(--foam);
  border: 1px solid transparent;
}
.rehber-jump a:hover {
  border-color: rgba(11,79,108,.28);
  color: var(--sea);
}
.rehber-need {
  padding-top: clamp(2rem, 5vw, 3.2rem);
  padding-bottom: clamp(2rem, 5vw, 3.2rem);
}
.rehber-need--alt {
  background: rgba(255,255,255,.45);
}
.rehber-need-inner {
  max-width: 640px;
  animation: rehberNeedIn .55s ease-out both;
}
@media (prefers-reduced-motion: no-preference) {
  .rehber-need:nth-of-type(odd) .rehber-need-inner { animation-delay: .04s; }
  .rehber-need:nth-of-type(even) .rehber-need-inner { animation-delay: .08s; }
}
@keyframes rehberNeedIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: none; }
}
.rehber-en {
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: .68rem;
  font-weight: 700;
  color: var(--sea);
  margin-bottom: .4rem;
}
.rehber-list {
  margin: 0 0 1.25rem;
  padding: 0 0 0 1.15rem;
  color: #4a534c;
  line-height: 1.55;
  max-width: 54ch;
}
.rehber-list li { margin-bottom: .45rem; }
.rehber-ctas { margin-top: .25rem; }
.rehber-close {
  background:
    linear-gradient(135deg, rgba(11,79,108,.08), rgba(232,185,49,.12));
  border-top: 1px solid var(--line);
}
.rehber-teaser {
  padding-top: 1.75rem;
  padding-bottom: 1.25rem;
}
.rehber-teaser-inner {
  max-width: 560px;
  padding: 1.35rem 0 0;
  border-top: 1px solid rgba(11,79,108,.12);
  animation: rehberNeedIn .6s ease-out .15s both;
}
.rehber-teaser-eyebrow {
  text-transform: uppercase;
  letter-spacing: .16em;
  font-size: .7rem;
  font-weight: 700;
  color: var(--sea);
  margin-bottom: .45rem;
}
.rehber-teaser h2 {
  font-family: Fraunces, Georgia, serif;
  font-size: clamp(1.35rem, 2.8vw, 1.75rem);
  color: var(--sea-deep);
  margin: 0 0 .35rem;
}
.rehber-teaser .lead {
  margin-bottom: 1rem;
}

/* ?? Turist rehberi (KKTC guide) ?? */
.hero--turist-rehber {
  background:
    radial-gradient(900px 420px at 85% 10%, rgba(232,185,49,.22), transparent 55%),
    radial-gradient(700px 380px at 5% 80%, rgba(11,79,108,.2), transparent 50%),
    linear-gradient(160deg, rgba(11,79,108,.12), rgba(243,239,230,.4));
}
.hero--ogrenci-rehber {
  background:
    radial-gradient(880px 400px at 12% 15%, rgba(11,79,108,.28), transparent 55%),
    radial-gradient(720px 360px at 90% 75%, rgba(232,185,49,.16), transparent 50%),
    linear-gradient(155deg, rgba(7,50,72,.14), rgba(243,239,230,.45));
}
.turist-rehber-note {
  max-width: 54ch;
  font-size: .92rem;
  color: #4a534c;
  margin: .35rem 0 1rem;
  padding: .65rem .85rem;
  border-left: 3px solid var(--sun);
  background: rgba(255,255,255,.55);
  border-radius: 0 10px 10px 0;
}
html[dir="rtl"] .turist-rehber-note {
  border-left: 0;
  border-right: 3px solid var(--sun);
  border-radius: 10px 0 0 10px;
}
.turist-rehber-tip-badge {
  display: inline-block;
  margin-top: .85rem;
  font-size: .82rem;
  font-weight: 700;
  color: var(--sea-deep);
  background: rgba(255,255,255,.7);
  border: 1px solid rgba(11,79,108,.18);
  padding: .35rem .75rem;
  border-radius: 999px;
}
.turist-rehber-inner { max-width: 920px; }
.turist-op-grid {
  display: grid;
  gap: 1rem;
  margin-top: 1.25rem;
}
@media (min-width: 760px) {
  .turist-op-grid { grid-template-columns: 1fr 1fr; }
}
.turist-op-card,
.turist-info-card,
.turist-city-card {
  background: rgba(255,255,255,.78);
  border: 1px solid rgba(11,79,108,.12);
  border-radius: 16px;
  padding: 1.1rem 1.15rem 1.2rem;
  box-shadow: 0 8px 24px rgba(7,50,72,.04);
}
.turist-op-brand {
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: .68rem;
  font-weight: 800;
  color: var(--sea);
  margin: 0 0 .35rem;
}
.turist-op-card h3,
.turist-info-card h3,
.turist-city-card h3 {
  font-family: Fraunces, Georgia, serif;
  color: var(--sea-deep);
  margin: 0 0 .45rem;
  font-size: 1.2rem;
}
.turist-op-sub {
  margin: 1rem 0 .35rem;
  font-size: .78rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--sea);
}
.turist-info-card { margin: 1rem 0; }
.turist-city-grid {
  display: grid;
  gap: .85rem;
  margin: 1rem 0 1.25rem;
}
@media (min-width: 640px) {
  .turist-city-grid { grid-template-columns: 1fr 1fr; }
}
.turist-pratik-grid {
  display: grid;
  gap: .85rem;
  margin: 1rem 0 1.25rem;
}
@media (min-width: 720px) {
  .turist-pratik-grid { grid-template-columns: 1fr 1fr; }
}
.turist-kaynaklar {
  margin-top: 1.75rem;
}
.turist-kaynaklar h3 {
  font-family: Fraunces, Georgia, serif;
  color: var(--sea-deep);
  margin: 0 0 .35rem;
  font-size: 1.15rem;
}
.turist-kaynak-list {
  list-style: none;
  padding: 0;
  margin: .5rem 0 0;
  display: flex;
  flex-wrap: wrap;
  gap: .45rem .85rem;
}
.turist-kaynak-list a {
  font-weight: 600;
  color: var(--sea);
}

/* ?? Turist rehberi hub (ihtiya? odakl?) ?? */
.tr-hero {
  position: relative;
  min-height: min(88vh, 720px);
  display: grid;
  align-items: end;
  overflow: hidden;
  color: #fff;
  animation: rehberHeroIn .75s ease-out both;
}
.tr-hero-media {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.tr-hero-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transform: scale(1.04);
  animation: trHeroZoom 12s ease-out both;
}
@keyframes trHeroZoom {
  from { transform: scale(1.08); }
  to { transform: scale(1.02); }
}
.tr-hero-veil {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(7, 32, 48, .15) 0%, rgba(7, 32, 48, .55) 48%, rgba(7, 32, 48, .82) 100%),
    radial-gradient(600px 320px at 80% 20%, rgba(232, 185, 49, .22), transparent 60%);
}
.tr-hero-copy {
  position: relative;
  z-index: 2;
  padding: clamp(2.5rem, 8vw, 5rem) clamp(1.1rem, 5vw, 3rem) clamp(2rem, 5vw, 3.2rem);
  max-width: 720px;
}
.tr-brand {
  font-family: Fraunces, Georgia, serif;
  font-size: clamp(1.65rem, 4.2vw, 2.4rem);
  font-weight: 700;
  letter-spacing: .02em;
  margin: 0 0 .35rem;
  color: #fff;
  text-shadow: 0 2px 24px rgba(0,0,0,.25);
}
.tr-hero-copy h1 {
  font-family: Fraunces, Georgia, serif;
  font-size: clamp(1.35rem, 3.2vw, 1.85rem);
  font-weight: 500;
  margin: 0 0 .65rem;
  color: rgba(255,255,255,.92);
  max-width: 18ch;
}
.tr-hero-lead {
  margin: 0 0 1.25rem;
  font-size: 1.05rem;
  line-height: 1.5;
  color: rgba(255,255,255,.88);
  max-width: 42ch;
}
.tr-hero-badge {
  margin-top: 1rem;
  background: rgba(255,255,255,.14) !important;
  color: #fff !important;
  border-color: rgba(255,255,255,.28) !important;
}
.tr-needs {
  padding-top: clamp(2rem, 5vw, 3.5rem);
  padding-bottom: clamp(2rem, 5vw, 3.5rem);
  background:
    linear-gradient(180deg, #f2f7f8 0%, #eaf3f5 100%);
}
.tr-needs-head {
  max-width: 640px;
  margin: 0 auto 1.5rem;
  padding: 0 clamp(1rem, 4vw, 2rem);
}
.tr-needs-head h2 {
  font-family: Fraunces, Georgia, serif;
  font-size: clamp(1.5rem, 3vw, 2rem);
  color: var(--sea-deep);
  margin: 0 0 .4rem;
}
.tr-needs-head p {
  margin: 0;
  color: #4a5d68;
  font-size: 1.02rem;
}
.tr-need-grid {
  display: grid;
  gap: 1rem;
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 clamp(1rem, 4vw, 2rem);
}
@media (min-width: 640px) {
  .tr-need-grid { grid-template-columns: 1fr 1fr; }
}
@media (min-width: 980px) {
  .tr-need-grid { grid-template-columns: 1fr 1fr 1fr; }
}
.tr-need-card {
  display: flex;
  flex-direction: column;
  text-decoration: none;
  color: inherit;
  background: #fff;
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid rgba(11, 79, 108, .1);
  box-shadow: 0 10px 28px rgba(7, 50, 72, .06);
  transition: transform .28s ease, box-shadow .28s ease;
  animation: rehberNeedIn .55s ease-out both;
  animation-delay: calc(var(--tr-i, 0) * .05s);
}
.tr-need-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 36px rgba(7, 50, 72, .12);
}
.tr-need-visual {
  display: block;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: #dceef4;
}
.tr-need-visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .45s ease;
}
.tr-need-card:hover .tr-need-visual img {
  transform: scale(1.05);
}
.tr-need-body {
  display: flex;
  flex-direction: column;
  gap: .35rem;
  padding: 1rem 1.05rem 1.15rem;
  flex: 1;
}
.tr-need-title {
  font-family: Fraunces, Georgia, serif;
  font-size: 1.2rem;
  font-weight: 700;
  color: var(--sea-deep);
}
.tr-need-blurb {
  font-size: .92rem;
  line-height: 1.45;
  color: #4a5d68;
  flex: 1;
}
.tr-need-go {
  margin-top: .45rem;
  font-size: .86rem;
  font-weight: 800;
  color: var(--sea);
  letter-spacing: .02em;
}
.tr-need-go::after { content: ' ?'; }
.tr-disclaimer {
  max-width: 720px;
  margin: 1.75rem auto 0;
  padding: 0 clamp(1rem, 4vw, 2rem);
  font-size: .88rem;
  color: #5b6b76;
  line-height: 1.45;
}
.tr-hub-close {
  background:
    linear-gradient(135deg, rgba(11,79,108,.1), rgba(232,185,49,.14));
}
.tr-hub-close-inner {
  max-width: 640px;
  margin: 0 auto;
  padding: 0 clamp(1rem, 4vw, 2rem);
}
.tr-hub-close h2 {
  font-family: Fraunces, Georgia, serif;
  color: var(--sea-deep);
  margin: 0 0 .4rem;
}
.tr-section-hero {
  position: relative;
  min-height: clamp(220px, 38vh, 340px);
  display: grid;
  align-items: end;
  overflow: hidden;
  color: #fff;
}
.tr-section-hero-media {
  position: absolute;
  inset: 0;
}
.tr-section-hero-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: saturate(1.05);
}
.tr-section-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(7,32,48,.2), rgba(7,32,48,.78));
}
.tr-section-hero-copy {
  position: relative;
  z-index: 1;
  padding: 1.5rem clamp(1rem, 4vw, 2.5rem) 1.75rem;
  max-width: 720px;
}
.tr-back {
  display: inline-block;
  margin-bottom: .65rem;
  font-size: .9rem;
  font-weight: 700;
  color: rgba(255,255,255,.9);
  text-decoration: none;
  border-bottom: 1px solid rgba(255,255,255,.35);
}
.tr-back:hover { color: #fff; border-color: #fff; }
.tr-section-hero-copy .tr-brand {
  font-size: clamp(1.35rem, 3vw, 1.75rem);
  margin-bottom: .15rem;
}
.tr-section-hero-copy h1 {
  font-family: Fraunces, Georgia, serif;
  font-size: clamp(1.45rem, 3.2vw, 1.95rem);
  margin: 0 0 .4rem;
  color: #fff;
}
.tr-section-hero-copy p {
  margin: 0;
  color: rgba(255,255,255,.88);
  max-width: 42ch;
}
.tr-section-nav a.is-active {
  background: var(--sea);
  color: #fff;
  border-color: transparent;
}
.tr-detail .turist-rehber-inner { max-width: 920px; margin: 0 auto; }
.turist-op-logo-row {
  margin: 0 0 .75rem;
}
.turist-op-logo {
  display: block;
  height: 42px;
  width: auto;
  max-width: 160px;
  object-fit: contain;
}
.tr-logo-strip {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
  align-items: center;
  margin: 1rem 0 1.25rem;
}
.tr-logo-strip img {
  height: 40px;
  width: auto;
  border-radius: 8px;
}
.turist-city-card--visual {
  padding: 0;
  overflow: hidden;
}
.turist-city-cover {
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #dceef4;
}
.turist-city-cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.turist-city-body {
  padding: 1rem 1.1rem 1.15rem;
}
.tr-detail-foot {
  padding-top: 1.5rem;
}
@media (prefers-reduced-motion: reduce) {
  .tr-hero,
  .tr-hero-media img,
  .tr-need-card { animation: none !important; }
  .tr-need-card:hover { transform: none; }
}

/* ?? ??renci rehberi hub (turist ile ayn? iskelet) ?? */
.or-hero-veil {
  background:
    linear-gradient(180deg, rgba(5, 28, 48, .2) 0%, rgba(5, 28, 48, .58) 45%, rgba(5, 28, 48, .86) 100%),
    radial-gradient(560px 300px at 18% 18%, rgba(11, 79, 108, .35), transparent 55%) !important;
}
.or-needs {
  background:
    linear-gradient(180deg, #eef4f8 0%, #e6eef3 100%) !important;
}
.hosgeldin-guide-cta {
  margin-top: 1rem;
  padding: .9rem 1rem;
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(11,79,108,.1), rgba(232,185,49,.14));
  border: 1px solid rgba(11,79,108,.14);
  animation: rehberNeedIn .5s ease-out both;
}
.hosgeldin-guide-lead {
  margin: 0 0 .65rem;
  font-size: .9rem;
  color: var(--sea-deep);
  font-weight: 600;
  line-height: 1.4;
}
.info-carousel-slide--tip .hosgeldin-guide-cta {
  text-align: center;
}
.info-carousel-slide--tip .hosgeldin-guide-cta .cta-row {
  justify-content: center;
}

/* ?? Language switcher (custom dropdown + SVG flags) ?? */
.lang-switch {
  display: inline-flex;
  align-items: center;
}
.lang-drop {
  position: relative;
}
.lang-drop-btn {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  border: 1px solid rgba(11,79,108,.22);
  background: rgba(255,255,255,.72);
  font: inherit;
  font-size: .78rem;
  font-weight: 700;
  color: var(--sea-deep);
  cursor: pointer;
  padding: .28rem .5rem;
  border-radius: 8px;
  line-height: 1;
}
.lang-drop--panel .lang-drop-btn {
  padding: .22rem .42rem;
  font-size: .74rem;
}
.lang-drop-btn:hover,
.lang-drop-btn[aria-expanded="true"] {
  background: #fff;
  border-color: rgba(11,79,108,.4);
}
.lang-flag {
  width: 18px;
  height: 12px;
  object-fit: cover;
  border-radius: 2px;
  flex-shrink: 0;
  box-shadow: 0 0 0 1px rgba(0,0,0,.08);
  display: block;
}
.lang-drop-code {
  letter-spacing: .02em;
}
.lang-drop-caret {
  opacity: .65;
  font-size: .7rem;
}
.lang-drop-menu {
  min-width: 11.5rem;
  right: 0;
  left: auto;
}
.lang-drop-item {
  display: flex !important;
  align-items: center;
  gap: .5rem;
  padding: .48rem .6rem !important;
}
.lang-drop-item.is-active {
  background: rgba(11,79,108,.09);
}
.lang-drop-name {
  flex: 1;
  font-weight: 600;
}
.lang-drop-code-sm {
  font-size: .72rem;
  opacity: .55;
  font-weight: 700;
}
.visually-hidden {
  position: absolute !important;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0);
  white-space: nowrap; border: 0;
}

/* ?? Arabic RTL (minimal overrides) ?? */
html[dir="rtl"] body {
  text-align: right;
}
html[dir="rtl"] .top {
  flex-direction: row-reverse;
}
html[dir="rtl"] .top-search {
  flex-direction: row-reverse;
}
html[dir="rtl"] .top nav {
  flex-direction: row-reverse;
}
@media (max-width: 720px) {
  html[dir="rtl"] .top nav,
  html[dir="rtl"] .top nav.is-open {
    flex-direction: column;
    text-align: right;
  }
  html[dir="rtl"] .nav-drop-btn,
  html[dir="rtl"] .lang-drop-btn {
    text-align: right;
    justify-content: flex-end;
  }
}
html[dir="rtl"] .nav-drop-menu {
  right: auto;
  left: 0;
  text-align: right;
}
html[dir="rtl"] .rehber-list {
  padding: 0 1.15rem 0 0;
}
html[dir="rtl"] .cta-row {
  flex-direction: row-reverse;
}
html[dir="rtl"] .cevre-actions {
  flex-direction: row-reverse;
}
html[dir="rtl"] .foot {
  text-align: right;
}
html[dir="rtl"] .auth {
  text-align: right;
}
html[dir="rtl"] .sec-head {
  flex-direction: row-reverse;
}
html[dir="rtl"] .ctx-bar {
  flex-direction: row-reverse;
  text-align: right;
}
html[dir="rtl"] .lang-drop-menu {
  right: auto;
  left: 0;
  text-align: right;
}
html[dir="rtl"] .lang-drop-item {
  flex-direction: row-reverse;
}
html[dir="rtl"] .panel-user {
  flex-direction: row-reverse;
}
html[dir="rtl"] .cevre-toolbar {
  flex-direction: row-reverse;
}
html[dir="rtl"] .showcase-cta,
html[dir="rtl"] .btn-sea,
html[dir="rtl"] .btn-outline,
html[dir="rtl"] .btn-ghost,
html[dir="rtl"] .btn-sun {
  direction: rtl;
}
@media (max-width: 860px) {
  html[dir="rtl"] .top nav.is-open {
    text-align: right;
  }
}

/* ?? Taksi CTA ?? */
.btn-taxi {
  background: #e8a317;
  color: #073248 !important;
  padding: .75rem 1.35rem;
  border-radius: 999px;
  font-weight: 800;
  display: inline-block;
  border: 0;
  box-shadow: 0 4px 14px rgba(232, 163, 23, .35);
  letter-spacing: .01em;
  transition: transform .15s ease, box-shadow .15s ease;
}
.btn-taxi:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 18px rgba(232, 163, 23, .45);
  color: #042536 !important;
}
a.nav-taksi {
  font-weight: 800 !important;
  color: #e8a317 !important;
}
.taksi-strip {
  background: linear-gradient(105deg, #073248 0%, #0b4f6c 55%, #0a6a7a 100%);
  color: #fff;
  padding: .95rem clamp(1rem, 4vw, 2.5rem);
}
.taksi-strip-inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: .85rem 1.25rem;
  max-width: 1100px;
  margin: 0 auto;
}
.taksi-strip-inner strong {
  display: block;
  font-family: Fraunces, Georgia, serif;
  font-size: 1.15rem;
  margin-bottom: .15rem;
}
.taksi-strip-cta {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
  align-items: center;
}
.taksi-strip .btn-outline-on-dark {
  border: 1.5px solid rgba(255, 255, 255, .75);
  color: #fff !important;
  background: transparent;
  padding: .65rem 1.15rem;
  border-radius: 999px;
  font-weight: 700;
  display: inline-block;
  text-decoration: none;
  transition: background .15s ease, border-color .15s ease;
}
.taksi-strip .btn-outline-on-dark:hover {
  background: rgba(255, 255, 255, .12);
  border-color: #fff;
  color: #fff !important;
}
.taksi-driver-cta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: .65rem 1rem;
  margin: 0 0 1.15rem;
  padding: .85rem 1rem;
  border-radius: 12px;
  border: 1px solid rgba(11, 79, 108, .22);
  background: rgba(11, 79, 108, .05);
}
.taksi-driver-cta p {
  margin: 0;
  color: #3d5563;
  font-size: .95rem;
  flex: 1 1 12rem;
}
.taksi-page {
  padding-top: 1.5rem;
}
.taksi-page-inner {
  max-width: 640px;
  margin: 0 auto;
}
.taksi-page h1 {
  font-family: Fraunces, Georgia, serif;
  color: #073248;
  margin: .2rem 0 .55rem;
  font-size: clamp(1.7rem, 4vw, 2.2rem);
}
.taksi-page .lead {
  color: #3d5563;
  margin: 0 0 1rem;
}
.taksi-geo-block {
  margin: 0 0 1rem;
  padding: 1rem;
  background: linear-gradient(135deg, rgba(232,163,23,.14), rgba(11,79,108,.08));
  border: 1px solid rgba(232,163,23,.35);
  border-radius: 14px;
}
.taksi-geo-block .btn-taxi {
  width: 100%;
  text-align: center;
  font-size: 1.05rem;
  padding: .9rem 1.2rem;
}
.taksi-status {
  border: 1.5px solid #0b4f6c;
  border-radius: 14px;
  padding: 1rem 1.15rem;
  background: rgba(11,79,108,.05);
  margin-bottom: 1rem;
}
.taksi-status h2 {
  margin: 0 0 .65rem;
  font-family: Fraunces, Georgia, serif;
  color: #073248;
  font-size: 1.2rem;
}
.alert-error {
  background: #fde8e8;
  border: 1px solid #f0b4b4;
  color: #8b1e1e;
  padding: .75rem 1rem;
  border-radius: 10px;
  margin: .75rem 0;
}
.taksi-map-fallback summary {
  cursor: pointer;
  font-weight: 700;
  color: #0b4f6c;
  margin-bottom: .5rem;
}
.taksi-region-optional summary {
  cursor: pointer;
  font-weight: 600;
  color: #0b4f6c;
  margin-bottom: .5rem;
}
.btn-taxi-submit:disabled {
  opacity: .55;
  cursor: not-allowed;
}
html[dir="rtl"] .btn-taxi {
  direction: rtl;
}
@media (max-width: 640px) {
  .taksi-strip-inner {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* ?? Welcome / onboarding (turist & ??renci) ?? */
.hosgeldin {
  padding-top: 1.5rem;
  padding-bottom: 1.75rem;
}
.hosgeldin-inner {
  max-width: 640px;
  margin: 0 auto;
  text-align: center;
  padding: 1.5rem 0 0;
  border-top: 1px solid rgba(11, 79, 108, .12);
}
.hosgeldin--rehber .hosgeldin-inner {
  border-top: 0;
  padding-top: .5rem;
  max-width: 680px;
}
.hosgeldin-brand {
  font-family: Fraunces, Georgia, serif;
  font-weight: 700;
  font-size: 1.15rem;
  letter-spacing: .06em;
  color: var(--sea-deep);
  margin-bottom: .35rem;
}
.hosgeldin-eyebrow {
  text-transform: uppercase;
  letter-spacing: .16em;
  font-size: .68rem;
  font-weight: 700;
  color: var(--sea);
  margin: 0 0 .85rem;
}
.hosgeldin-banner {
  position: relative;
  min-height: 3.2rem;
  margin: 0 0 1.15rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.hosgeldin-banner-line {
  margin: 0;
  font-family: Fraunces, Georgia, serif;
  font-size: clamp(1.25rem, 3.2vw, 1.7rem);
  font-weight: 600;
  color: var(--sea-deep);
  line-height: 1.25;
  transition: opacity .45s ease;
}
.hosgeldin-banner-line:not(.is-active) {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.hosgeldin-banner-line.is-active {
  opacity: 1;
}
.hosgeldin-flags {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: .65rem;
  margin: 0 0 .55rem;
}
.bayrak-yuvarlak {
  display: inline-flex;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  overflow: hidden;
  border: 2px solid rgba(11, 79, 108, .2);
  background: #fff;
  box-shadow: 0 1px 3px rgba(7, 50, 72, .08);
  transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease;
  flex-shrink: 0;
}
.bayrak-yuvarlak img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.bayrak-yuvarlak:hover,
.bayrak-yuvarlak:focus-visible {
  transform: scale(1.08);
  border-color: var(--sea);
  box-shadow: 0 2px 8px rgba(11, 79, 108, .18);
  outline: none;
}
.bayrak-yuvarlak.is-current {
  border-color: var(--sun);
  box-shadow: 0 0 0 2px rgba(232, 185, 49, .45);
}
.hosgeldin-flag-hint {
  margin: 0 0 1.25rem;
  font-size: .85rem;
  color: #5a635c;
}
.hosgeldin-soru {
  margin: 0 auto 1.25rem;
  padding: 1.15rem 1rem;
  background: rgba(255, 255, 255, .55);
  border: 1px solid rgba(11, 79, 108, .1);
  border-radius: 14px;
  max-width: 520px;
  animation: hosgeldinIn .45s ease-out both;
}
.hosgeldin-soru-title {
  font-family: Fraunces, Georgia, serif;
  font-size: 1.2rem;
  color: var(--sea-deep);
  margin: 0 0 .35rem;
}
.hosgeldin-soru-lead {
  margin: 0 0 1rem;
  font-size: .92rem;
  color: #4a534c;
}
.hosgeldin-tip-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: .65rem;
}
.hosgeldin-tip-btn {
  display: inline-block;
  padding: .65rem 1.25rem;
  border-radius: 999px;
  font-weight: 750;
  background: var(--sea);
  color: #fff !important;
  border: 2px solid transparent;
  transition: background .15s ease, transform .15s ease;
}
.hosgeldin-tip-btn:hover {
  background: var(--sea-deep);
  transform: translateY(-1px);
}
.hosgeldin-tip-btn.is-active {
  background: var(--sea-deep);
  border-color: var(--sun);
}
.hosgeldin-bilgi {
  text-align: left;
  margin-top: .25rem;
  animation: hosgeldinIn .5s ease-out .08s both;
}
html[dir="rtl"] .hosgeldin-bilgi {
  text-align: right;
}
html[dir="rtl"] .info-carousel-slide {
  transform: translateX(-18px);
}
html[dir="rtl"] .info-carousel-slide.is-active {
  transform: none;
}
.hosgeldin-panel {
  padding: 1.15rem 1.2rem;
  background: rgba(255, 255, 255, .62);
  border: 1px solid rgba(11, 79, 108, .1);
  border-radius: 14px;
}
.hosgeldin-panel h3 {
  font-family: Fraunces, Georgia, serif;
  font-size: 1.15rem;
  color: var(--sea-deep);
  margin: 0 0 .4rem;
}
.hosgeldin-panel > p {
  margin: 0 0 .75rem;
  color: #4a534c;
  font-size: .94rem;
  line-height: 1.5;
}
.hosgeldin-list {
  margin: 0 0 1rem;
  padding: 0 0 0 1.1rem;
  color: #4a534c;
  line-height: 1.55;
  font-size: .92rem;
}
html[dir="rtl"] .hosgeldin-list {
  padding: 0 1.1rem 0 0;
}
.hosgeldin-list li {
  margin-bottom: .4rem;
}
.hosgeldin-ctas {
  margin-top: .15rem;
}
.hosgeldin-ctas .btn-outline {
  border: 1px solid rgba(11, 79, 108, .28);
  padding: .55rem 1rem;
  border-radius: 999px;
  font-weight: 700;
  font-size: .88rem;
  background: rgba(255, 255, 255, .7);
}
.hosgeldin-ctas .btn-outline:hover {
  border-color: var(--sea);
  background: #fff;
}
.hosgeldin-change {
  text-align: center;
  margin: .25rem 0 0;
  font-size: .88rem;
}
.hosgeldin-change a {
  color: var(--sea);
  font-weight: 650;
  text-decoration: underline;
  text-underline-offset: 2px;
}
@keyframes hosgeldinIn {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  .hosgeldin-banner-line,
  .hosgeldin-soru,
  .hosgeldin-bilgi,
  .bayrak-yuvarlak {
    transition: none;
    animation: none;
  }
}
@media (max-width: 480px) {
  .bayrak-yuvarlak {
    width: 40px;
    height: 40px;
  }
  .hosgeldin-flags {
    gap: .5rem;
  }
}


/* Legal pages */
.legal {
  max-width: 760px;
  margin: 0 auto;
}
.legal > h1 {
  font-family: Fraunces, Georgia, serif;
  font-size: clamp(1.55rem, 3.2vw, 2rem);
  color: var(--sea-deep);
  margin: 0 0 .35rem;
  line-height: 1.2;
}
.legal > .lead {
  max-width: 58ch;
  margin-bottom: 1rem;
}
.legal-meta {
  font-size: .82rem;
  color: #7a8480;
  margin: 0 0 1.25rem;
}
.legal-card {
  background: var(--foam, #fff);
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: clamp(1.15rem, 3vw, 1.65rem) clamp(1.1rem, 3vw, 1.75rem);
}
.legal-card h2 {
  font-family: Fraunces, Georgia, serif;
  font-size: 1.15rem;
  color: var(--sea-deep);
  margin: 1.45rem 0 .45rem;
  line-height: 1.3;
}
.legal-card h2:first-child {
  margin-top: 0;
}
.legal-card p,
.legal-card li {
  font-size: .93rem;
  color: #5a635c;
  line-height: 1.65;
  margin: 0 0 .65rem;
}
.legal-card ul {
  margin: 0 0 .85rem;
  padding-left: 1.15rem;
}
.legal-card a {
  color: var(--sea);
  font-weight: 650;
}
.legal-note {
  background: linear-gradient(180deg, #f4fafc, #eef6f9);
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: .85rem 1rem;
  font-size: .88rem;
  color: #5a635c;
  margin: .85rem 0 0;
  line-height: 1.55;
}
.legal-ph {
  background: #fff8e6;
  border: 1px dashed #d4b85a;
  border-radius: 6px;
  padding: .1rem .35rem;
  font-weight: 650;
  color: #6b5a1e;
  white-space: normal;
}
.legal-brand {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .85rem 1.1rem;
  margin: 0 0 1rem;
  padding-bottom: .85rem;
  border-bottom: 1px solid var(--line);
}
.legal-brand-logo {
  display: block;
  height: 37px;
  width: auto;
  max-width: 160px;
}
.legal-brand-tag {
  margin: 0;
  font-size: .9rem;
  color: #3d4744;
}
.legal-brand-tag strong {
  color: #0b0c0a;
}
.legal-dl {
  margin: 0 0 .5rem;
  display: grid;
  gap: .55rem;
}
.legal-dl > div {
  display: grid;
  gap: .1rem;
}
.legal-dl dt {
  font-size: .75rem;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: #8a9490;
  font-weight: 700;
}
.legal-dl dd {
  margin: 0;
  font-size: .92rem;
  color: #3d4744;
  line-height: 1.5;
}
.legal-nav {
  margin-top: 1.5rem;
  display: flex;
  flex-wrap: wrap;
  gap: .35rem .55rem;
  font-size: .82rem;
  color: #7a8480;
  line-height: 1.7;
}
.legal-nav a {
  color: var(--sea);
  font-weight: 600;
  text-decoration: none;
}
.legal-nav a:hover {
  text-decoration: underline;
  text-underline-offset: 2px;
}
.legal-lang-note {
  font-size: .8rem;
  color: #8a9490;
  margin: 0 0 1rem;
  font-style: italic;
}

/* ?? Cookie consent banner ?? */
.cerez-banner {
  position: fixed;
  z-index: 1200;
  left: 0;
  right: 0;
  bottom: 0;
  padding: .75rem clamp(.85rem, 3vw, 1.4rem) calc(.85rem + env(safe-area-inset-bottom, 0px));
  background: linear-gradient(180deg, rgba(7, 50, 72, .94) 0%, rgba(11, 79, 108, .97) 100%);
  color: #f4fafc;
  box-shadow: 0 -6px 24px rgba(7, 50, 72, .28);
  border-top: 1px solid rgba(232, 185, 49, .35);
  transform: translateY(0);
  opacity: 1;
  transition: transform .28s ease, opacity .28s ease;
}
.cerez-banner[hidden] {
  display: none !important;
}
.cerez-banner.is-hiding {
  transform: translateY(110%);
  opacity: 0;
  pointer-events: none;
}
.cerez-banner-inner {
  max-width: 1100px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: .75rem 1.1rem;
}
.cerez-banner-text {
  margin: 0;
  flex: 1 1 16rem;
  font-size: .9rem;
  line-height: 1.45;
  color: rgba(248, 250, 249, .94);
}
.cerez-banner-link {
  color: var(--sun);
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 2px;
  white-space: nowrap;
}
.cerez-banner-link:hover {
  color: #fff;
}
.cerez-banner-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  flex: 0 0 auto;
}
.cerez-banner-accept {
  appearance: none;
  border: 0;
  cursor: pointer;
  background: var(--sun);
  color: var(--sea-deep);
  font-weight: 800;
  font-size: .88rem;
  padding: .55rem 1.15rem;
  border-radius: 999px;
  font-family: inherit;
  line-height: 1.2;
}
.cerez-banner-accept:hover {
  filter: brightness(1.05);
}
.cerez-banner-accept:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 2px;
}
html[dir="rtl"] .cerez-banner-inner {
  flex-direction: row-reverse;
}
html[dir="rtl"] .cerez-banner-text {
  text-align: right;
}
html[dir="rtl"] .cerez-banner-actions {
  flex-direction: row-reverse;
}
@media (max-width: 560px) {
  .cerez-banner-inner {
    flex-direction: column;
    align-items: stretch;
  }
  .cerez-banner-actions {
    width: 100%;
  }
  .cerez-banner-accept {
    width: 100%;
    text-align: center;
  }
  html[dir="rtl"] .cerez-banner-inner {
    flex-direction: column;
  }
}

/* ??? Ev & Ara? ilanlar? ??? */
.ilan-page .ilan-head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
}
.ilan-page h1 {
  margin: 0 0 .35rem;
  font-family: Fraunces, Georgia, serif;
  color: var(--sea-deep);
}
.ilan-card-badge {
  display: inline-block;
  background: rgba(7, 50, 72, .82);
  color: #fff;
  font-size: .72rem;
  font-weight: 600;
  padding: .25rem .5rem;
  border-radius: 6px;
}
.ilan-quick-cats {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  margin-bottom: .9rem;
}
.ilan-chip {
  display: inline-flex;
  align-items: center;
  padding: .45rem .9rem;
  border-radius: 999px;
  border: 1px solid #c5dde8;
  background: #fff;
  color: var(--sea-deep);
  font-weight: 650;
  font-size: .88rem;
  text-decoration: none;
  transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
}
.ilan-chip:hover {
  border-color: var(--sea);
  transform: translateY(-1px);
}
.ilan-chip.is-active {
  background: var(--sea);
  border-color: var(--sea);
  color: #fff;
}
.ilan-filters {
  background: linear-gradient(160deg, #f4fafc 0%, #e8f3f7 100%);
  border: 1px solid #c5dde8;
  border-radius: 14px;
  padding: .85rem 1rem 1rem;
  margin-bottom: 1rem;
}
.ilan-filters.is-sticky {
  position: sticky;
  top: 4.25rem;
  z-index: 12;
  box-shadow: 0 8px 24px rgba(7, 50, 72, .06);
}
.ilan-filters-bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: .65rem;
  margin-bottom: .65rem;
}
.ilan-filters-toggle {
  display: none;
  align-items: center;
  gap: .55rem;
  border: 1px solid #b7cdd8;
  background: #fff;
  border-radius: 10px;
  padding: .5rem .75rem;
  font: inherit;
  font-weight: 650;
  color: var(--sea-deep);
  cursor: pointer;
}
.ilan-filters-toggle-hint {
  font-size: .78rem;
  font-weight: 600;
  color: #5a7380;
}
.ilan-filters-bar-search {
  display: flex;
  flex: 1 1 220px;
  gap: .45rem;
  min-width: 0;
}
.ilan-filters-bar-search input {
  flex: 1;
  min-width: 0;
  font: inherit;
  padding: .55rem .7rem;
  border: 1px solid #b7cdd8;
  border-radius: 8px;
  background: #fff;
}
.ilan-filters-row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .75rem;
  margin-bottom: .75rem;
}
.ilan-filters-row:last-child { margin-bottom: 0; }
.ilan-filters label {
  display: flex;
  flex-direction: column;
  gap: .3rem;
  font-size: .82rem;
  font-weight: 600;
  color: var(--sea-deep);
}
.ilan-filters input,
.ilan-filters select {
  font: inherit;
  padding: .55rem .65rem;
  border: 1px solid #b7cdd8;
  border-radius: 8px;
  background: #fff;
}
.ilan-filter-actions {
  display: flex;
  align-items: flex-end;
  gap: .5rem;
  flex-wrap: wrap;
  grid-column: span 2;
}
.ilan-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: .65rem;
  margin: 0 0 1rem;
}
.ilan-count { color: #4a6673; font-size: .92rem; margin: 0; }
.ilan-active-filters {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem;
  margin: 0;
}
.ilan-tag {
  display: inline-flex;
  align-items: center;
  padding: .2rem .5rem;
  border-radius: 6px;
  background: rgba(11, 79, 108, .1);
  color: var(--sea-deep);
  font-size: .72rem;
  font-weight: 650;
  max-width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ilan-tag--muted { background: #eef3f5; color: #4a6673; }
.ilan-tag--loc { background: rgba(232, 185, 49, .18); color: #6a5310; }
.ilan-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
  gap: 1rem;
}
.ilan-grid--similar {
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
}
.ilan-card {
  display: flex;
  flex-direction: column;
  text-decoration: none;
  color: inherit;
  background: #fff;
  border: 1px solid #d5e4eb;
  border-radius: 14px;
  overflow: hidden;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
@media (prefers-reduced-motion: no-preference) {
  .ilan-card {
    animation: ilanCardIn .45s ease both;
    animation-delay: calc(var(--ilan-i, 0) * 35ms);
  }
  @keyframes ilanCardIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
  }
}
.ilan-card:hover {
  transform: translateY(-4px);
  border-color: var(--sea);
  box-shadow: 0 12px 30px rgba(11, 79, 108, .14);
}
.ilan-card-img {
  position: relative;
  aspect-ratio: 4/3;
  background: linear-gradient(145deg, #0b4f6c, #125a78);
  overflow: hidden;
}
.ilan-card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .35s ease;
}
.ilan-card:hover .ilan-card-img img { transform: scale(1.04); }
.ilan-card-img.is-placeholder img { opacity: .55; }
.ilan-card-ph {
  position: absolute;
  inset: auto 0 .7rem 0;
  text-align: center;
  color: rgba(255,255,255,.9);
  font-size: .78rem;
  font-weight: 650;
  pointer-events: none;
}
.ilan-card-body {
  display: flex;
  flex-direction: column;
  gap: .3rem;
  padding: .8rem .85rem 1rem;
}
.ilan-card-chips {
  display: flex;
  flex-wrap: wrap;
  gap: .3rem;
  margin-bottom: .15rem;
}
.ilan-card-price {
  color: var(--sea);
  font-size: 1.12rem;
  font-weight: 750;
  letter-spacing: -.01em;
}
.ilan-card-title {
  font-weight: 600;
  color: var(--sea-deep);
  line-height: 1.3;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.ilan-card-loc,
.ilan-card-meta {
  font-size: .8rem;
  color: #5a7380;
}

/* Profesyonel emlakçı / galerici ilan kartları */
.ilan-pro-cta-links {
  margin: .35rem 0 0;
  font-size: .85rem;
}
.ilan-pro-cta-links a { color: var(--sea); font-weight: 600; }
.ilan-card--pro {
  border: 2px solid transparent;
  box-shadow: 0 8px 24px rgba(7, 50, 72, .1);
}
.ilan-card--pro.ilan-card--emlakci {
  border-color: #0b6e4f;
  background: linear-gradient(180deg, #f3fbf7 0%, #fff 42%);
}
.ilan-card--pro.ilan-card--galerici {
  border-color: #1e40af;
  background: linear-gradient(180deg, #f0f5ff 0%, #fff 42%);
}
.ilan-pro-head {
  display: flex;
  align-items: center;
  gap: .5rem;
  padding: .55rem .65rem;
  margin-bottom: .45rem;
  border-radius: 10px;
  flex-wrap: wrap;
}
.ilan-pro-head--emlakci {
  background: rgba(11, 110, 79, .1);
  border: 1px solid rgba(11, 110, 79, .2);
}
.ilan-pro-head--galerici {
  background: rgba(30, 64, 175, .1);
  border: 1px solid rgba(30, 64, 175, .2);
}
.ilan-pro-logo {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  object-fit: cover;
  background: #fff;
  border: 1px solid rgba(0,0,0,.06);
}
.ilan-pro-firma {
  font-weight: 700;
  font-size: .82rem;
  color: var(--sea-deep);
  flex: 1;
  min-width: 0;
}
.ilan-pro-badge {
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
  padding: .15rem .45rem;
  border-radius: 999px;
  background: rgba(7, 50, 72, .08);
  color: var(--sea-deep);
}
.ilan-card--emlakci .ilan-pro-badge { background: rgba(11, 110, 79, .15); color: #0b6e4f; }
.ilan-card--galerici .ilan-pro-badge { background: rgba(30, 64, 175, .12); color: #1e40af; }
.ilan-pro-profile-link {
  font-size: .75rem;
  font-weight: 700;
  color: var(--sea);
}
.ilan-pro-owner {
  display: flex;
  gap: .75rem;
  align-items: center;
  margin-top: 1rem;
  padding: .85rem;
  border-radius: 12px;
}
.ilan-pro-owner--emlakci {
  background: rgba(11, 110, 79, .08);
  border: 1px solid rgba(11, 110, 79, .18);
}
.ilan-pro-owner--galerici {
  background: rgba(30, 64, 175, .08);
  border: 1px solid rgba(30, 64, 175, .18);
}
.ilan-pro-owner-logo {
  border-radius: 10px;
  object-fit: cover;
  background: #fff;
}
.ilan-pro-owner-name {
  display: block;
  font-size: 1rem;
  color: var(--sea-deep);
}
.ilan-pro-owner-link {
  font-size: .82rem;
  font-weight: 700;
  color: var(--sea);
}
.pro-ilan-nav {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  margin: 0 0 1.1rem;
}
.pro-ilan-nav-link {
  padding: .35rem .75rem;
  border-radius: 999px;
  border: 1px solid #c5dde8;
  font-size: .82rem;
  font-weight: 700;
  color: var(--sea);
  background: #fff;
}
.pro-ilan-nav-link.is-active {
  background: var(--sea);
  color: #fff;
  border-color: var(--sea);
}
.pro-ilan-panel-hero {
  display: flex;
  gap: 1rem;
  align-items: center;
  padding: 1rem;
  border-radius: 14px;
  margin-bottom: 1rem;
}
.pro-ilan-panel-hero--emlakci {
  background: linear-gradient(135deg, rgba(11,110,79,.12), rgba(11,110,79,.04));
  border: 1px solid rgba(11,110,79,.2);
}
.pro-ilan-panel-hero--galerici {
  background: linear-gradient(135deg, rgba(30,64,175,.12), rgba(30,64,175,.04));
  border: 1px solid rgba(30,64,175,.2);
}
.pro-ilan-panel-logo {
  border-radius: 12px;
  object-fit: cover;
  background: #fff;
}
.pro-ilan-panel-firma {
  margin: 0;
  font-family: Fraunces, Georgia, serif;
  font-size: 1.2rem;
}
.pro-ilan-stats {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
}
.pro-ilan-stat {
  padding: .75rem 1rem;
  border-radius: 12px;
  background: #f4f8fa;
  border: 1px solid #dde8ee;
  min-width: 120px;
}
.pro-ilan-stat strong {
  display: block;
  font-size: 1.35rem;
  color: var(--sea-deep);
}
.pro-ilan-public-head {
  display: flex;
  gap: 1.25rem;
  align-items: flex-start;
  padding: 1.25rem;
  border-radius: 16px;
  margin-bottom: 1.5rem;
}
.pro-ilan-public--emlakci .pro-ilan-public-head {
  background: linear-gradient(135deg, rgba(11,110,79,.1), #fff);
  border: 1px solid rgba(11,110,79,.2);
}
.pro-ilan-public--galerici .pro-ilan-public-head {
  background: linear-gradient(135deg, rgba(30,64,175,.1), #fff);
  border: 1px solid rgba(30,64,175,.2);
}
.pro-ilan-public-logo {
  border-radius: 14px;
  object-fit: cover;
  background: #fff;
}
.pro-ilan-ayar-logo { margin-bottom: 1rem; }
.pro-ilan-ayar-logo-img { border-radius: 12px; object-fit: cover; }
.ilan-kat-locked {
  display: block;
  padding: .5rem .65rem;
  background: #f4f8fa;
  border-radius: 8px;
  font-weight: 700;
  color: var(--sea-deep);
}

.ilan-empty {
  text-align: center;
  padding: 2.75rem 1.25rem;
  background: linear-gradient(160deg, #f7fbfd, #eef6f9);
  border: 1px dashed #b7cdd8;
  border-radius: 16px;
}
.ilan-empty-title {
  margin: 0 0 .4rem;
  font-family: Fraunces, Georgia, serif;
  font-size: 1.25rem;
  color: var(--sea-deep);
}
.ilan-empty-lead { margin: 0 0 1.1rem; color: #4a6673; }
.ilan-empty-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
  justify-content: center;
}
.ilan-pager {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem;
  margin-top: 1.5rem;
  justify-content: center;
}
.ilan-pager a,
.ilan-pager span {
  min-width: 2.2rem;
  text-align: center;
  padding: .4rem .55rem;
  border-radius: 8px;
  border: 1px solid #c5dde8;
  text-decoration: none;
  color: var(--sea);
  font-weight: 600;
}
.ilan-pager .is-active {
  background: var(--sea);
  color: #fff;
  border-color: var(--sea);
}
.ilan-detail-grid {
  display: grid;
  grid-template-columns: 1.45fr 1fr;
  gap: 1.5rem;
  align-items: start;
}
.ilan-gallery-main {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  background: #0b4f6c;
  aspect-ratio: 16/11;
  box-shadow: 0 10px 28px rgba(7, 50, 72, .1);
}
.ilan-gallery-main img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.ilan-gallery-main.is-placeholder img { opacity: .5; }
.ilan-gallery-thumbs {
  display: flex;
  gap: .45rem;
  margin-top: .65rem;
  overflow-x: auto;
  padding-bottom: .15rem;
}
.ilan-thumb {
  border: 2px solid transparent;
  padding: 0;
  border-radius: 8px;
  overflow: hidden;
  width: 76px;
  height: 56px;
  cursor: pointer;
  background: none;
  flex: 0 0 auto;
  transition: border-color .15s ease, transform .15s ease;
}
.ilan-thumb:hover { transform: translateY(-1px); }
.ilan-thumb.is-active { border-color: var(--sea); }
.ilan-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ilan-side {
  background: linear-gradient(165deg, #f7fbfd, #eaf4f8);
  border: 1px solid #c9dde7;
  border-radius: 16px;
  padding: 1.25rem 1.3rem;
  position: sticky;
  top: 5rem;
}
.ilan-price {
  font-family: Fraunces, Georgia, serif;
  font-size: clamp(1.6rem, 3vw, 2rem);
  font-weight: 700;
  color: var(--sea);
  margin-bottom: .35rem;
  letter-spacing: -.02em;
}
.ilan-side h1 {
  margin: 0 0 .4rem;
  font-size: 1.35rem;
  color: var(--sea-deep);
  line-height: 1.25;
}
.ilan-loc { color: #4a6673; margin: 0 0 .9rem; }
.ilan-facts-strip {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .5rem;
  margin: 0 0 1rem;
}
.ilan-fact-chip {
  background: #fff;
  border: 1px solid #d5e4eb;
  border-radius: 10px;
  padding: .55rem .65rem;
  display: flex;
  flex-direction: column;
  gap: .15rem;
  min-width: 0;
}
.ilan-fact-chip span {
  font-size: .72rem;
  font-weight: 650;
  color: #5a7380;
  text-transform: uppercase;
  letter-spacing: .03em;
}
.ilan-fact-chip strong {
  font-size: .92rem;
  color: var(--sea-deep);
  line-height: 1.25;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ilan-facts {
  list-style: none;
  margin: 0 0 1.1rem;
  padding: 0;
}
.ilan-facts li {
  display: flex;
  justify-content: space-between;
  gap: .75rem;
  padding: .45rem 0;
  border-bottom: 1px solid #d5e4eb;
  font-size: .9rem;
}
.ilan-facts span { color: #5a7380; }
.ilan-contact {
  display: flex;
  flex-direction: column;
  gap: .45rem;
  margin-bottom: .75rem;
  padding: .85rem;
  background: rgba(255,255,255,.7);
  border: 1px solid #d5e4eb;
  border-radius: 12px;
}
.ilan-contact-label {
  margin: 0;
  font-size: .8rem;
  font-weight: 700;
  color: var(--sea-deep);
}
.ilan-phone-masked { margin: 0; font-size: .92rem; }
.ilan-contact-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
}
.ilan-owner { font-size: .85rem; color: #5a7380; margin: 0; }
.ilan-desc { margin-top: 2rem; }
.ilan-desc h2,
.ilan-similar h2 {
  font-family: Fraunces, Georgia, serif;
  color: var(--sea-deep);
  margin: 0 0 .85rem;
}
.ilan-desc-body {
  line-height: 1.65;
  color: #2a4250;
  max-width: 48rem;
  background: #fff;
  border: 1px solid #e2ebf0;
  border-radius: 14px;
  padding: 1rem 1.15rem;
}
.ilan-similar { margin-top: 2.25rem; }
.ilan-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem;
  align-items: center;
  font-size: .88rem;
  color: #5a7380;
  margin-bottom: 1rem;
}
.ilan-breadcrumb a { color: var(--sea); font-weight: 600; }
.ilan-back { margin-top: 1.5rem; }
.ilan-back a { color: var(--sea); font-weight: 700; }
.ilan-mobile-cta {
  display: none;
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 30;
  background: rgba(248, 250, 249, .96);
  backdrop-filter: blur(10px);
  border-top: 1px solid #c5dde8;
  padding: .7rem 1rem calc(.7rem + env(safe-area-inset-bottom));
  gap: .75rem;
  align-items: center;
  justify-content: space-between;
  box-shadow: 0 -8px 24px rgba(7, 50, 72, .08);
}
.ilan-mobile-cta strong {
  display: block;
  color: var(--sea);
  font-size: 1.05rem;
}
.ilan-mobile-cta span {
  font-size: .75rem;
  color: #5a7380;
}
.ilan-teaser {
  background: linear-gradient(120deg, rgba(11,79,108,.08), rgba(232,185,49,.12));
  border-radius: 18px;
  padding: 1.5rem 1.4rem;
  margin: 0 0 1.5rem;
}
.ilan-teaser h2 {
  margin-top: 0;
  font-family: Fraunces, Georgia, serif;
  color: var(--sea-deep);
}

/* Homepage info carousel ? equal-height teal hero slides (all match slide 1) */
.info-carousel {
  margin: 0 0 1.25rem;
  padding: 0;
}
.info-carousel--home {
  margin-top: .5rem;
}
.info-carousel-shell {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  background: #073248;
  border: 1px solid rgba(7, 50, 72, .5);
  box-shadow: 0 12px 32px rgba(7, 50, 72, .18);
}
.info-carousel-shell::before {
  content: "";
  display: block;
  height: 4px;
  background: linear-gradient(90deg, var(--sea), var(--sun));
}
.info-carousel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  padding: .85rem clamp(1.1rem, 3vw, 1.75rem) 0;
  position: relative;
  z-index: 2;
  color: #fff;
}
.info-carousel-label {
  margin: 0;
  text-transform: uppercase;
  letter-spacing: .16em;
  font-size: .68rem;
  font-weight: 800;
  color: var(--sun);
}
.info-carousel-count {
  margin: 0;
  font-size: .8rem;
  font-weight: 700;
  color: rgba(255, 255, 255, .85);
  font-variant-numeric: tabular-nums;
}
.info-carousel-viewport {
  position: relative;
  overflow: hidden;
}
.info-carousel-track {
  display: grid;
  grid-template-columns: 1fr;
  align-items: stretch;
}
.info-carousel-slide {
  grid-area: 1 / 1;
  padding: 1rem clamp(1.1rem, 3vw, 1.75rem) 1.1rem;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  z-index: 0;
  transform: translateX(18px);
  transition: opacity .45s ease, transform .45s ease, visibility .45s;
  min-height: 14.5rem;
  height: 100%;
  display: flex;
  flex-direction: column;
  color: #fff !important;
  background:
    linear-gradient(165deg, rgba(7,50,72,.78) 0%, rgba(7,50,72,.92) 45%, rgba(7,50,72,.96) 100%),
    linear-gradient(120deg, #0b4f6c, #073248 60%, #0a6a7a);
  border-radius: 0;
  margin: 0;
}
.info-carousel-slide.is-active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: none;
  z-index: 1;
}
.info-carousel-card {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 1rem;
  flex: 1 1 auto;
  min-height: 100%;
  height: 100%;
}
.info-carousel-card-body {
  flex: 1 1 auto;
}
.info-carousel-card-cta {
  margin-top: auto;
}
.info-carousel-card--center {
  text-align: center;
}
.info-carousel-card--center .info-carousel-card-body {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.info-carousel-slide--welcome .hosgeldin-welcome {
  width: 100%;
  max-width: 28rem;
}
.info-carousel-slide--welcome .hosgeldin-flags {
  justify-content: center;
}
.info-carousel-slide--lang .hosgeldin-welcome,
.info-carousel-slide--tip .hosgeldin-welcome {
  max-width: 26rem;
}
.info-carousel-slide--tip .hosgeldin-soru--compact {
  margin-top: 0;
}
.info-carousel-slide--tip .hosgeldin-soru-title {
  font-size: clamp(1.25rem, 3vw, 1.55rem);
}
.info-carousel-slide--tip .hosgeldin-soru-lead {
  margin-bottom: .85rem;
}
.info-carousel-slide--panel .hosgeldin-panel--bare {
  background: transparent;
  border: 0;
  padding: 0;
  text-align: left;
  width: 100%;
}
.info-carousel-slide--panel .hosgeldin-panel--bare h3 {
  font-family: Fraunces, Georgia, serif;
  font-size: clamp(1.25rem, 2.8vw, 1.55rem);
  color: #fff !important;
  margin: 0 0 .4rem;
  text-shadow: 0 2px 12px rgba(0, 0, 0, .45);
}
.info-carousel-slide--panel .hosgeldin-change {
  text-align: center;
  margin: 0;
}
.info-carousel-kicker {
  margin: 0 0 .45rem;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: .68rem;
  font-weight: 750;
  color: var(--sun) !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, .35);
}
.info-carousel-slide h2 {
  margin: 0 0 .45rem;
  font-family: Fraunces, Georgia, serif;
  font-size: clamp(1.55rem, 3.6vw, 2.15rem);
  color: #fff !important;
  line-height: 1.2;
  text-shadow: 0 2px 12px rgba(0, 0, 0, .45);
}
.info-carousel-slide .lead {
  margin: 0;
  max-width: 46ch;
  color: #fff !important;
  opacity: .95;
  font-size: .96rem;
  line-height: 1.5;
  text-shadow: 0 1px 8px rgba(0, 0, 0, .4);
}
/* Unified CTA buttons (same as slide 1): btn-sun primary + btn-ghost secondary */
.info-carousel-slide .btn-sun {
  background: var(--sun);
  color: var(--sea-deep) !important;
  padding: .7rem 1.2rem;
  border-radius: 999px;
  font-weight: 800;
  border: 0;
}
.info-carousel-slide .btn-ghost {
  border: 1.5px solid rgba(255, 255, 255, .7);
  color: #fff !important;
  background: rgba(0, 0, 0, .18);
  padding: .7rem 1.2rem;
  border-radius: 999px;
  font-weight: 700;
}
.info-carousel-slide .btn-ghost:hover {
  background: rgba(255, 255, 255, .16);
  border-color: #fff;
}
/* Welcome / tip slide text on teal */
.info-carousel-slide .hosgeldin-eyebrow {
  color: var(--sun) !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, .35);
}
.info-carousel-slide .hosgeldin-banner-static,
.info-carousel-slide .hosgeldin-banner-line {
  color: #fff !important;
  text-shadow: 0 2px 12px rgba(0, 0, 0, .45);
}
.info-carousel-slide .hosgeldin-flag-hint {
  color: rgba(255, 255, 255, .88) !important;
}
.info-carousel-slide .bayrak-yuvarlak {
  border-color: rgba(255, 255, 255, .45);
  box-shadow: 0 2px 8px rgba(0, 0, 0, .25);
}
.info-carousel-slide .bayrak-yuvarlak.is-current {
  border-color: var(--sun);
  box-shadow: 0 0 0 2px rgba(232, 185, 49, .55);
}
.info-carousel-slide .hosgeldin-soru {
  background: rgba(0, 0, 0, .18);
  border-color: rgba(255, 255, 255, .22);
}
.info-carousel-slide .hosgeldin-soru-title {
  color: #fff !important;
  text-shadow: 0 2px 12px rgba(0, 0, 0, .45);
}
.info-carousel-slide .hosgeldin-soru-lead {
  color: rgba(255, 255, 255, .92) !important;
}
.info-carousel-slide .hosgeldin-tip-btn {
  background: var(--sun);
  color: var(--sea-deep) !important;
  border: 2px solid transparent;
  padding: .7rem 1.2rem;
  border-radius: 999px;
  font-weight: 800;
}
.info-carousel-slide .hosgeldin-tip-btn:hover {
  background: #f0c84d;
  transform: translateY(-1px);
}
.info-carousel-slide .hosgeldin-tip-btn.is-active {
  background: var(--sun);
  border-color: #fff;
  box-shadow: 0 0 0 2px rgba(255, 255, 255, .25);
}
.info-carousel-slide .hosgeldin-change a {
  color: var(--sun) !important;
}
.info-carousel-controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .75rem;
  padding: .2rem 1rem 1.15rem;
  background: rgba(7, 50, 72, .65);
  margin-top: -.25rem;
  position: relative;
  z-index: 2;
}
.info-carousel-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.6rem;
  height: 2.6rem;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, .5);
  background: rgba(255, 255, 255, .16);
  color: #fff;
  font-size: 1.45rem;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 2px 8px rgba(7, 50, 72, .18);
  transition: background .18s ease, border-color .18s ease, transform .18s ease, color .18s ease;
}
.info-carousel-btn:hover,
.info-carousel-btn:focus-visible {
  background: var(--sun);
  color: var(--sea-deep);
  border-color: var(--sun);
  outline: none;
  transform: translateY(-1px);
}
.info-carousel-dots {
  display: flex;
  align-items: center;
  gap: .45rem;
  min-height: 1.25rem;
}
.info-carousel-dot {
  width: .6rem;
  height: .6rem;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, .4);
  cursor: pointer;
  transition: width .25s ease, background .25s ease;
}
.info-carousel-dot.is-active {
  width: 1.5rem;
  background: var(--sun);
}
.info-carousel-dot:focus-visible {
  outline: 2px solid var(--sun);
  outline-offset: 2px;
}

.hosgeldin--home .hosgeldin-inner {
  max-width: 520px;
  padding-top: 1rem;
  border-top: 0;
}
.hosgeldin--home {
  padding-top: .35rem;
  padding-bottom: 1.15rem;
}
.hosgeldin-banner-static {
  margin: 0 0 .75rem;
  font-family: Fraunces, Georgia, serif;
  font-size: clamp(1.1rem, 2.6vw, 1.35rem);
  font-weight: 600;
  color: var(--sea-deep);
  line-height: 1.3;
}
.hosgeldin-bilgi--stack {
  text-align: left;
  display: grid;
  gap: 1rem;
  margin-top: .25rem;
}
.hosgeldin-soru--compact {
  margin-top: .2rem;
}

@media (prefers-reduced-motion: reduce) {
  .info-carousel-slide {
    transition: none;
    transform: none;
  }
}
@media (max-width: 560px) {
  .info-carousel-slide {
    min-height: 15.25rem;
    padding: 1rem 1rem .95rem;
  }
  .info-carousel-btn {
    width: 2.4rem;
    height: 2.4rem;
  }
}

.ilan-form {
  max-width: 44rem;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.ilan-form-section {
  margin: 0;
  padding: 1rem 1.05rem 1.1rem;
  border: 1px solid #d5e4eb;
  border-radius: 14px;
  background: #fff;
  display: flex;
  flex-direction: column;
  gap: .65rem;
}
.ilan-form-section legend {
  padding: 0 .35rem;
  font-family: Fraunces, Georgia, serif;
  font-weight: 700;
  color: var(--sea-deep);
  font-size: 1.05rem;
}
.ilan-form-section label {
  display: flex;
  flex-direction: column;
  gap: .3rem;
  font-weight: 600;
  font-size: .9rem;
  color: var(--sea-deep);
}
.ilan-form-section input,
.ilan-form-section select,
.ilan-form-section textarea {
  font: inherit;
  padding: .6rem .7rem;
  border: 1px solid #b7cdd8;
  border-radius: 8px;
  background: #fff;
  width: 100%;
}
.ilan-form-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .75rem;
}
.ilan-ozellikler {
  margin-top: 1rem;
}
.ilan-ozellikler > strong {
  display: block;
  margin-bottom: .25rem;
  color: var(--sea-deep, #0b3a4a);
}
.ilan-ozellik-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
  gap: .35rem .75rem;
  margin-top: .45rem;
}
.ilan-ozellik-item {
  display: flex !important;
  flex-direction: row !important;
  align-items: center;
  gap: .45rem;
  font-weight: 500;
  margin: 0;
}
.ilan-ozellik-item input {
  width: auto;
  margin: 0;
}
.ilan-ozellik-chips {
  margin-top: 1rem;
}
.ilan-ozellik-chips .ilan-facts-strip {
  flex-wrap: wrap;
}
.ilan-form textarea {
  width: 100%;
  font: inherit;
  padding: .65rem .75rem;
  border: 1px solid #b7cdd8;
  border-radius: 8px;
  resize: vertical;
}
.ilan-form-actions {
  margin-top: .25rem;
  padding: 1rem 1.05rem;
  border-radius: 14px;
  background: linear-gradient(160deg, #f4fafc, #e8f3f7);
  border: 1px solid #c5dde8;
}
.ilan-form-actions-label {
  margin: 0 0 .55rem;
  font-weight: 700;
  color: var(--sea-deep);
}
.ilan-form-actions-row {
  display: flex;
  flex-wrap: wrap;
  gap: .6rem;
}
.ilan-mine-page { max-width: 52rem; }
.ilan-mine-head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: .85rem;
  margin-bottom: 1rem;
}
.ilan-mine-head-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
}
.ilan-mine-stats {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .4rem;
  margin: 0 0 1rem;
}
.ilan-mine-stat {
  font-size: .9rem;
  color: #4a6673;
  margin-right: .25rem;
}
.ilan-mine-list { display: flex; flex-direction: column; gap: .85rem; }
.ilan-mine-card {
  display: grid;
  grid-template-columns: 132px 1fr;
  gap: 1rem;
  border: 1px solid #d5e4eb;
  border-radius: 14px;
  padding: .85rem;
  background: #fff;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
@media (prefers-reduced-motion: no-preference) {
  .ilan-mine-card {
    animation: ilanCardIn .4s ease both;
    animation-delay: calc(var(--ilan-i, 0) * 30ms);
  }
}
.ilan-mine-card:hover {
  border-color: var(--sea);
  box-shadow: 0 8px 22px rgba(11, 79, 108, .08);
  transform: translateY(-2px);
}
.ilan-mine-media {
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  background: linear-gradient(145deg, #0b4f6c, #125a78);
  aspect-ratio: 4/3;
  align-self: start;
}
.ilan-mine-media.is-placeholder .ilan-mine-img { opacity: .55; }
.ilan-mine-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.ilan-mine-body {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: .75rem;
  min-width: 0;
  font-size: .9rem;
}
.ilan-mine-top {
  display: flex;
  flex-direction: column;
  gap: .3rem;
  min-width: 0;
}
.ilan-mine-title {
  color: var(--sea-deep);
  font-size: 1.02rem;
  line-height: 1.3;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.ilan-mine-price {
  color: var(--sea);
  font-weight: 750;
  font-size: 1.08rem;
}
.ilan-mine-meta {
  font-size: .8rem;
  color: #5a7380;
}
.ilan-mine-status,
.ilan-tag.durum-aktif,
.ilan-tag.durum-pasif,
.ilan-tag.durum-taslak,
.ilan-tag.durum-suresi_doldu {
  display: inline-flex;
  align-items: center;
  padding: .2rem .5rem;
  border-radius: 6px;
  font-size: .72rem;
  font-weight: 700;
}
.ilan-mine-status.durum-aktif,
.ilan-tag.durum-aktif { background: rgba(26, 122, 76, .12); color: #1a7a4c; }
.ilan-mine-status.durum-pasif,
.ilan-tag.durum-pasif,
.ilan-mine-status.durum-suresi_doldu,
.ilan-tag.durum-suresi_doldu { background: rgba(139, 90, 30, .12); color: #8b5a1e; }
.ilan-mine-status.durum-taslak,
.ilan-tag.durum-taslak { background: #eef3f5; color: #5a7380; }
.ilan-mine-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  align-items: center;
}
.ilan-mine-form { display: inline; margin: 0; }
.ilan-mine-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .42rem .7rem;
  border-radius: 8px;
  border: 1px solid #c5dde8;
  background: #fff;
  color: var(--sea);
  font: inherit;
  font-weight: 700;
  font-size: .82rem;
  text-decoration: none;
  cursor: pointer;
  transition: background .15s ease, border-color .15s ease;
}
.ilan-mine-btn:hover { border-color: var(--sea); background: #f4fafc; }
.ilan-mine-btn--sun {
  background: var(--sun);
  border-color: #d4a61f;
  color: var(--sea-deep);
}
.ilan-mine-btn--sun:hover { filter: brightness(.97); }
.ilan-mine-btn--muted { color: #5a7380; }
.ilan-mine-empty { margin-top: .25rem; }
.alert-error {
  background: #fde8e8;
  border-color: #f0b4b4;
  color: #8b1e1e;
}
.link-btn {
  background: none;
  border: none;
  padding: 0;
  color: var(--sea);
  font-weight: 700;
  cursor: pointer;
  font: inherit;
  text-decoration: none;
}
.ilan-edit-thumbs {
  display: flex;
  flex-wrap: wrap;
  gap: .6rem;
  margin: .35rem 0 0;
}
.ilan-edit-thumb {
  width: 88px;
  text-align: center;
}
.ilan-edit-thumb img {
  width: 88px;
  height: 66px;
  object-fit: cover;
  border-radius: 8px;
  display: block;
  margin-bottom: .25rem;
}
.admin-ilan-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem;
  margin: 0 0 1rem;
}
.admin-ilan-tabs a {
  display: inline-flex;
  align-items: center;
  padding: .4rem .7rem;
  border-radius: 999px;
  border: 1px solid #d5e4eb;
  background: #fff;
  text-decoration: none;
  font-size: .86rem;
  font-weight: 650;
  color: var(--sea-deep);
}
.admin-ilan-tabs a.is-active {
  background: var(--sea);
  border-color: var(--sea);
  color: #fff;
}
@media (max-width: 900px) {
  .ilan-filters-row { grid-template-columns: 1fr 1fr; }
  .ilan-filter-actions { grid-column: span 2; }
  .ilan-detail-grid { grid-template-columns: 1fr; }
  .ilan-side { position: static; }
  .ilan-form-row { grid-template-columns: 1fr 1fr; }
  .ilan-facts-strip { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 720px) {
  .ilan-filters.is-sticky { top: 3.6rem; }
  .ilan-filters-toggle { display: inline-flex; }
  .ilan-filters-bar { margin-bottom: .35rem; }
  .ilan-filters-body[hidden] { display: none !important; }
  .ilan-filters-row { grid-template-columns: 1fr; }
  .ilan-filter-actions { grid-column: auto; }
  .ilan-mobile-cta { display: flex; }
  .ilan-detail { padding-bottom: 5.5rem; }
}
@media (max-width: 560px) {
  .ilan-form-row { grid-template-columns: 1fr; }
  .ilan-mine-card { grid-template-columns: 88px 1fr; gap: .75rem; padding: .7rem; }
  .ilan-mine-head { align-items: stretch; }
  .ilan-mine-head-actions { width: 100%; }
  .ilan-mine-head-actions .btn-sun,
  .ilan-mine-head-actions .btn-ghost { flex: 1; text-align: center; justify-content: center; }
  .ilan-facts-strip { grid-template-columns: 1fr; }
  .ilan-gallery-main { aspect-ratio: 4/3; }
}
@media (prefers-reduced-motion: reduce) {
  .ilan-card,
  .ilan-chip,
  .ilan-mine-card,
  .ilan-thumb { transition: none; animation: none; }
  .ilan-card:hover,
  .ilan-mine-card:hover { transform: none; }
  .ilan-card:hover .ilan-card-img img { transform: none; }
}

/* ??? ?? ilanlar? (Ev & Ara? diline uyumlu) ??? */
.is-ilan-card .ilan-card-body { padding-top: .55rem; }
.is-ilan-card-top {
  display: flex;
  gap: .65rem;
  align-items: flex-start;
  padding: .85rem .85rem 0;
}
.is-ilan-avatar,
.is-ilan-mine-avatar {
  flex: 0 0 auto;
  width: 2.6rem;
  height: 2.6rem;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: Fraunces, Georgia, serif;
  font-weight: 700;
  font-size: 1.15rem;
  color: #fff;
  background: linear-gradient(145deg, var(--sea), #14708f);
}
.is-ilan-mine-card {
  grid-template-columns: 64px 1fr;
}
.is-ilan-mine-avatar {
  width: 64px;
  height: 64px;
  border-radius: 14px;
  font-size: 1.45rem;
  align-self: start;
}
.is-ilan-detail-grid {
  grid-template-columns: 1.35fr minmax(16rem, 22rem);
}
.is-ilan-title {
  font-family: Fraunces, Georgia, serif;
  color: var(--sea-deep);
  margin: 0 0 .4rem;
  font-size: clamp(1.45rem, 3vw, 2rem);
  line-height: 1.2;
}
.is-ilan-role {
  margin: 0 0 1rem;
  color: #4a6673;
  font-size: 1.05rem;
}
.is-ilan-mail {
  margin-top: .35rem;
  display: inline-flex;
  align-self: flex-start;
}
.is-ilan-check {
  display: flex !important;
  flex-direction: row !important;
  align-items: center;
  gap: .55rem;
  font-weight: 600;
}
.is-ilan-check input { width: auto; }
@media (max-width: 900px) {
  .is-ilan-detail-grid { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  .is-ilan-detail { padding-bottom: 5.5rem; }
}
@media (max-width: 560px) {
  .is-ilan-mine-card { grid-template-columns: 52px 1fr; }
  .is-ilan-mine-avatar { width: 52px; height: 52px; font-size: 1.2rem; }
}

/* Seller signup ? prominent tip cards */
.auth--seller-signup {
  max-width: 720px;
}
.satici-tip-step {
  margin: 0 0 1.15rem;
  padding: 1rem 1rem 1.05rem;
  border: 2px solid rgba(11, 79, 108, .22);
  border-radius: 16px;
  background:
    linear-gradient(165deg, rgba(11, 79, 108, .07), transparent 55%),
    linear-gradient(0deg, #fff, #fff);
}
.satici-tip-step__legend {
  font-family: Fraunces, Georgia, serif;
  font-size: 1.15rem;
  font-weight: 700;
  color: var(--sea-deep);
  padding: 0 .35rem;
}
.satici-tip-step__lead {
  margin: .35rem 0 .85rem;
  font-size: .9rem;
  color: #4d5b66;
  line-height: 1.45;
}
.satici-tip-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: .7rem;
}
@media (min-width: 640px) {
  .satici-tip-grid { grid-template-columns: 1fr 1fr; }
  .satici-tip-card--alisveris { grid-column: 1 / -1; }
}
.satici-tip-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: .35rem;
  margin: 0;
  padding: .95rem 1rem .95rem 2.55rem;
  border: 2px solid var(--line);
  border-radius: 14px;
  background: #fff;
  cursor: pointer;
  transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease, background .15s ease;
  font-weight: 500;
}
.satici-tip-card:hover {
  border-color: rgba(11, 79, 108, .45);
  transform: translateY(-1px);
}
.satici-tip-card input {
  position: absolute;
  left: .85rem;
  top: 1.1rem;
  width: auto;
  margin: 0;
  accent-color: var(--sea);
}
.satici-tip-card__badge {
  display: inline-block;
  align-self: flex-start;
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--sea);
  background: rgba(11, 79, 108, .1);
  padding: .18rem .45rem;
  border-radius: 6px;
}
.satici-tip-card__title {
  font-size: 1.02rem;
  font-weight: 700;
  color: var(--sea-deep);
  line-height: 1.25;
}
.satici-tip-card__desc {
  font-size: .84rem;
  color: #5b6b76;
  line-height: 1.4;
}
.satici-tip-card.is-selected {
  border-color: var(--sea);
  background: rgba(11, 79, 108, .06);
  box-shadow: 0 0 0 3px rgba(11, 79, 108, .12);
}
.satici-tip-card--alisveris.is-selected { border-color: #0b4f6c; }
.satici-tip-card--yerel.is-selected { border-color: #2f6b4f; }
.satici-tip-card--masa.is-selected { border-color: #b07a1a; }
.satici-tip-card--hizmet.is-selected { border-color: #3d5a80; }
.satici-tip-card--taksi.is-selected { border-color: #c47a12; }
.satici-tip-warn {
  margin: .75rem 0 0;
  padding: .7rem .85rem;
  border-radius: 10px;
  font-size: .86rem;
  line-height: 1.4;
  background: #fff6e8;
  border: 1px solid #efd2a0;
  color: #7a4e0e;
}
.satici-tip-warn--shop {
  background: #eaf4f8;
  border-color: #b7d3e0;
  color: #0b4f6c;
}

/* ---- Haberler + N?bet?i eczane ---- */
.hero--info-util {
  background:
    radial-gradient(ellipse 80% 60% at 12% 20%, rgba(255,255,255,.12), transparent 55%),
    linear-gradient(145deg, #0b4f6c 0%, #14698a 48%, #0a3d54 100%);
  color: #fff;
}
.hero--info-util .eyebrow,
.hero--info-util h1,
.hero--info-util p { color: #fff !important; }
.info-util-meta {
  margin: .75rem 0 0;
  font-size: .85rem;
  opacity: .88;
}
.info-util-inner { max-width: 960px; margin: 0 auto; }
.info-util-filters a.is-active {
  background: var(--sea, #0b4f6c);
  color: #fff;
  border-color: var(--sea, #0b4f6c);
}
.info-util-count {
  display: inline-block;
  margin-inline-start: .25rem;
  font-size: .78rem;
  opacity: .85;
}
.info-util-section { padding-top: 1.25rem; }
.info-util-section h2 {
  margin: 0 0 1rem;
  font-size: 1.25rem;
}
.info-util-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: .9rem;
}
.info-util-card {
  border: 1px solid rgba(11, 79, 108, .14);
  border-radius: 14px;
  padding: 1rem 1.05rem;
  background: #fff;
  box-shadow: 0 8px 22px rgba(11, 40, 60, .05);
}
.info-util-card h3 {
  margin: 0 0 .45rem;
  font-size: 1.02rem;
  color: #0b4f6c;
}
.info-util-hours {
  margin: 0 0 .4rem;
  font-size: .86rem;
  color: #4a5d68;
  display: flex;
  flex-wrap: wrap;
  gap: .35rem .7rem;
}
.info-util-addr {
  margin: 0 0 .35rem;
  font-size: .9rem;
  line-height: 1.45;
  color: #334048;
}
.info-util-phone { margin: 0; font-size: .95rem; }
.info-util-phone a { color: #0b4f6c; font-weight: 600; }
.info-util-source {
  font-size: .88rem;
  color: #5b6b76;
  padding-bottom: 2rem;
}
.info-util-empty {
  text-align: center;
  padding: 2rem 1rem;
}
.info-util-subh { margin: 0 0 .75rem; font-size: 1.05rem; }
.info-util-sources {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem .9rem;
  list-style: none;
  margin: 0 0 1.5rem;
  padding: 0;
}
.info-util-sources a { font-weight: 600; color: #0b4f6c; }
.info-util-loc {
  padding-top: .5rem;
  padding-bottom: .25rem;
}
.info-util-loc-lead {
  margin: 0 0 1rem;
  color: #4a5d68;
  font-size: .95rem;
}
.info-util-loc-lead a { color: #0b4f6c; font-weight: 600; }
.info-util-loc-form label {
  display: block;
  font-weight: 600;
  margin-bottom: .4rem;
  color: #12222c;
}
.info-util-loc-row {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
  align-items: stretch;
}
.info-util-loc-row select {
  flex: 1 1 180px;
  min-width: 160px;
  max-width: 320px;
  padding: .65rem .8rem;
  border: 1px solid rgba(11, 79, 108, .22);
  border-radius: 10px;
  background: #fff;
  font-size: 1rem;
}
.info-util-loc-row .btn-sun,
.info-util-loc-row .btn-ghost {
  flex: 0 0 auto;
}
.info-util-geo-status {
  margin: .65rem 0 0;
  font-size: .9rem;
  color: #0b4f6c;
}
.info-util-loc-hint {
  margin: .85rem 0 0;
  font-size: .88rem;
  color: #5b6b76;
}
.info-util-loc-hint a { color: #0b4f6c; font-weight: 600; }
.info-news-list {
  display: flex;
  flex-direction: column;
  gap: .85rem;
  padding-bottom: 1.5rem;
}
.info-news-card {
  border: 1px solid rgba(11, 79, 108, .12);
  border-radius: 14px;
  padding: 1rem 1.1rem;
  background: #fff;
}
.info-news-meta {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem .8rem;
  font-size: .8rem;
  color: #5b6b76;
  margin-bottom: .35rem;
}
.info-news-source { font-weight: 700; color: #0b4f6c; }
.info-news-card h3 {
  margin: 0 0 .4rem;
  font-size: 1.05rem;
  line-height: 1.35;
}
.info-news-card h3 a { color: #12222c; text-decoration: none; }
.info-news-card h3 a:hover { color: #0b4f6c; }
.info-news-card p {
  margin: 0 0 .55rem;
  font-size: .9rem;
  line-height: 1.45;
  color: #4a5d68;
}
.info-news-open {
  font-size: .86rem;
  font-weight: 600;
  color: #0b4f6c;
}
