/* place.getsarai.com — SaraiPlace tanıtım sitesi.
   Uygulamanın kendi dili: koyu ray, lime vurgu, Inter. Tokenlar sarai-instagram/public/panel.html'den.
   Tek görünüm (uygulamanın tema anahtarı yok). Hareket yalnız transform/opacity, prefers-reduced-motion kapatır. */

:root {
  --zemin:#F3F4EF; --kart:#FFFFFF; --raf:#EDEFEA;
  --metin:#15171A; --soluk:#5F646B; --cizgi:#E4E6E1;
  --koyu:#121417; --koyu-2:#1B1E22; --lime:#C8F04A; --lime-koyu:#B9E33A; --lime-acik:#EDF7CF;
  --iyi:#16A34A;
  --bosluk:8px;
  --yaricap:18px; --yaricap-kucuk:12px;
  --sure:180ms; --easing:cubic-bezier(.22,.61,.36,1);
  --font:'Inter', system-ui, 'Segoe UI', sans-serif;
  --kagit: linear-gradient(rgba(18,20,23,.035) 1px, transparent 1px),
           linear-gradient(90deg, rgba(18,20,23,.035) 1px, transparent 1px);
  color-scheme: light;
}
*, *::before, *::after { box-sizing:border-box; }
html { -webkit-text-size-adjust:100%; scroll-behavior:smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior:auto; } }
body {
  margin:0; font-family:var(--font); font-size:16px; line-height:1.6; color:var(--metin);
  background-color:var(--zemin); background-image:var(--kagit); background-size:22px 22px;
  -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
img, svg { max-width:100%; }
a { color:inherit; }
h1, h2, h3, h4 { text-wrap:balance; margin:0; letter-spacing:-.02em; }
p { text-wrap:pretty; }
.kutu { max-width:1180px; margin:0 auto; padding:0 calc(var(--bosluk) * 3); }
@media (max-width:480px) { .kutu { padding:0 16px; } }
.gizli-metin { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.gizli-metin:focus { position:fixed; left:16px; top:12px; width:auto; height:auto; clip:auto; z-index:30; background:var(--lime); color:var(--koyu); padding:10px 16px; border-radius:999px; font-weight:600; }
:focus-visible { outline:2px solid var(--lime); outline-offset:3px; }

/* ---------- üst bar ---------- */
.ust {
  position:sticky; top:0; z-index:20; background:rgba(18,20,23,.94); backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(255,255,255,.08); color:#fff;
}
.ust .kutu { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:64px; }
.marka { display:flex; align-items:center; gap:10px; text-decoration:none; color:#fff; flex:none; }
.marka b { font-size:1.06rem; letter-spacing:-.02em; }
.marka small { display:block; font-size:.56rem; font-weight:700; letter-spacing:.16em; color:var(--lime); line-height:1; }
.menu { display:flex; align-items:center; gap:4px; }
.menu a {
  text-decoration:none; color:rgba(255,255,255,.7); font-size:14.5px; font-weight:500;
  padding:10px 12px; border-radius:10px; min-height:44px; display:inline-flex; align-items:center;
  transition:color var(--sure) linear, background var(--sure) linear;
}
.menu a:hover { color:#fff; background:rgba(255,255,255,.06); }
.menu a[aria-current="page"] { color:#fff; }
.menu a[aria-current="page"] { box-shadow:inset 0 -2px 0 var(--lime); border-radius:10px 10px 0 0; }
.ust-sag { display:flex; align-items:center; gap:8px; }
.menu-dugme {
  display:none; width:44px; height:44px; border-radius:12px; border:1px solid rgba(255,255,255,.16);
  background:none; color:#fff; cursor:pointer; place-items:center;
}
.menu-dugme svg { width:20px; height:20px; }
@media (max-width:1080px) {
  .menu-dugme { display:grid; }
  .menu {
    position:absolute; left:0; right:0; top:100%; flex-direction:column; align-items:stretch; gap:2px;
    background:var(--koyu-2); border-bottom:1px solid rgba(255,255,255,.1); padding:10px 16px 16px;
    opacity:0; transform:translateY(-6px); pointer-events:none;
    transition:opacity var(--sure) var(--easing), transform var(--sure) var(--easing);
  }
  .menu[data-acik] { opacity:1; transform:none; pointer-events:auto; }
  .ust-sag .dugme--kucuk { display:none; }
}

/* ---------- düğmeler ---------- */
.dugme {
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  min-height:46px; padding:12px 22px; border-radius:999px; border:0; cursor:pointer;
  font:inherit; font-size:15px; font-weight:600; text-decoration:none; white-space:nowrap;
  background:var(--lime); color:var(--koyu);
  transition:transform var(--sure) var(--easing), background var(--sure) linear;
}
.dugme:hover { background:var(--lime-koyu); transform:translateY(-2px); }
.dugme:active { transform:translateY(0) scale(.985); }
.dugme--koyu { background:var(--koyu); color:#fff; }
.dugme--koyu:hover { background:#24272C; }
.dugme--hayalet { background:rgba(255,255,255,.09); color:#fff; box-shadow:inset 0 0 0 1px rgba(255,255,255,.22); }
.dugme--hayalet:hover { background:rgba(255,255,255,.16); }
.dugme--cizgi { background:transparent; color:var(--metin); box-shadow:inset 0 0 0 1px var(--cizgi); }
.dugme--cizgi:hover { background:#fff; }
.dugme--kucuk { min-height:44px; padding:10px 18px; font-size:14px; }

/* ---------- bölümler ---------- */
.bolum { padding:calc(var(--bosluk) * 12) 0; }
.bolum--koyu { background:var(--koyu); color:#fff; }
.bolum--beyaz { background:#fff; }
@media (max-width:700px) { .bolum { padding:calc(var(--bosluk) * 8) 0; } }
.bolum-bas { max-width:62ch; margin-bottom:calc(var(--bosluk) * 6); }
.bolum-bas h2 { font-size:clamp(1.6rem, 2.4vw + .8rem, 2.5rem); line-height:1.15; }
.bolum-bas p { margin:14px 0 0; font-size:1.06rem; color:var(--soluk); }
.bolum--koyu .bolum-bas p { color:rgba(255,255,255,.66); }
.cip {
  display:inline-flex; align-items:center; gap:6px; font-size:12.5px; font-weight:700;
  padding:5px 12px; border-radius:999px; background:var(--lime); color:var(--koyu);
}

/* ---------- hero ---------- */
.hero { position:relative; overflow:hidden; background:var(--koyu); color:#fff; padding:calc(var(--bosluk) * 12) 0 calc(var(--bosluk) * 11); }
.hero::before {
  content:""; position:absolute; inset:0;
  background-image:linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),
                   linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
  background-size:22px 22px;
  mask-image:radial-gradient(120% 90% at 20% 0%, #000 35%, transparent 75%);
  -webkit-mask-image:radial-gradient(120% 90% at 20% 0%, #000 35%, transparent 75%);
}
.hero > * { position:relative; }
.hero-ic { display:grid; gap:calc(var(--bosluk) * 3); max-width:70ch; }
.hero .cip { justify-self:start; }
.hero h1 { font-size:clamp(2.1rem, 4.6vw + .6rem, 4rem); line-height:1.2; letter-spacing:-.035em; }
.hero h1 em { font-style:normal; color:var(--lime); }
.hero p { margin:0; font-size:1.12rem; line-height:1.6; color:rgba(255,255,255,.74); max-width:60ch; }
.hero-eylem { display:flex; gap:10px; flex-wrap:wrap; }
.hero-not { font-size:13.5px !important; color:rgba(255,255,255,.52) !important; }
.hero--kisa { padding:calc(var(--bosluk) * 10) 0 calc(var(--bosluk) * 8); }

/* ---------- kartlar ---------- */
.izgara { display:grid; gap:16px; }
.izgara--3 { grid-template-columns:repeat(3, minmax(0,1fr)); }
.izgara--2 { grid-template-columns:repeat(2, minmax(0,1fr)); }
@media (max-width:980px) { .izgara--3 { grid-template-columns:repeat(2, minmax(0,1fr)); } }
@media (max-width:680px) { .izgara--3, .izgara--2 { grid-template-columns:1fr; } }
.kart {
  background:var(--kart); border:1px solid rgba(18,20,23,.06); border-radius:var(--yaricap);
  padding:24px; min-width:0;
}
.kart h3 { font-size:1.12rem; line-height:1.3; }
.kart p { margin:10px 0 0; color:var(--soluk); font-size:15px; line-height:1.6; }
.kart--koyu { background:rgba(255,255,255,.045); border-color:rgba(255,255,255,.08); }
.kart--koyu p { color:rgba(255,255,255,.64); }
.kart--lime { background:var(--lime); border-color:transparent; }
.kart--lime p { color:rgba(18,20,23,.74); }
.ikon {
  width:42px; height:42px; border-radius:12px; display:grid; place-items:center; margin-bottom:16px;
  background:var(--lime); color:var(--koyu);
}
.ikon svg { width:20px; height:20px; }
.kart .devam { display:inline-flex; align-items:center; gap:6px; margin-top:14px; font-weight:600; font-size:14.5px; text-decoration:none; min-height:44px; color:var(--metin); }
.kart a.devam:hover, a.kart:hover .devam { text-decoration:underline; }
a.kart { color:inherit; transition:transform var(--sure) var(--easing), box-shadow var(--sure) var(--easing); }
a.kart:hover { transform:translateY(-3px); box-shadow:0 10px 28px rgba(18,20,23,.08); }

/* ---------- adımlar ---------- */
.adimlar { counter-reset:adim; display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:16px; }
@media (max-width:860px) { .adimlar { grid-template-columns:1fr; } }
.adim { position:relative; padding:24px; border-radius:var(--yaricap); background:#fff; border:1px solid rgba(18,20,23,.06); }
.adim::before {
  counter-increment:adim; content:counter(adim);
  display:grid; place-items:center; width:34px; height:34px; border-radius:50%;
  background:var(--koyu); color:var(--lime); font-weight:700; font-size:14px; margin-bottom:14px;
}
.adim h3 { font-size:1.08rem; }
.adim p { margin:8px 0 0; color:var(--soluk); font-size:15px; }

/* ---------- özellik ayrıntı satırları ---------- */
.ozellik { display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); gap:calc(var(--bosluk) * 6); align-items:start; padding:calc(var(--bosluk) * 8) 0; border-top:1px solid var(--cizgi); }
.ozellik:first-of-type { border-top:0; padding-top:0; }
@media (max-width:900px) { .ozellik { grid-template-columns:1fr; gap:calc(var(--bosluk) * 3); } }
.ozellik-bas { position:sticky; top:96px; }
@media (max-width:900px) { .ozellik-bas { position:static; } }
.ozellik-bas h2 { font-size:clamp(1.45rem, 1.6vw + .9rem, 2rem); line-height:1.2; }
.ozellik-bas p { margin:12px 0 0; color:var(--soluk); font-size:1.02rem; }
.ozellik-bas .ikon { margin-bottom:18px; }
.liste { list-style:none; padding:0; margin:0; display:grid; gap:12px; }
.liste li {
  display:grid; grid-template-columns:24px minmax(0,1fr); gap:12px; align-items:start;
  background:#fff; border:1px solid rgba(18,20,23,.06); border-radius:14px; padding:16px 18px; font-size:15px; line-height:1.55;
}
.liste li::before {
  content:""; width:22px; height:22px; margin-top:1px; border-radius:50%;
  background:var(--lime) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23121417' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/14px no-repeat;
}
.liste li b { display:block; font-size:15.5px; color:var(--metin); margin-bottom:2px; }
.liste li span { color:var(--soluk); }
.etiketler { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }
.etiketler span { font-size:13px; font-weight:600; padding:6px 12px; border-radius:999px; background:#fff; border:1px solid var(--cizgi); }

/* ---------- fiyat ---------- */
.fiyatlar { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:16px; max-width:980px; }
@media (max-width:760px) { .fiyatlar { grid-template-columns:1fr; } }
.fiyat { border-radius:22px; padding:28px; background:#fff; border:1px solid rgba(18,20,23,.08); display:flex; flex-direction:column; gap:16px; min-width:0; }
.fiyat--one { background:var(--koyu); color:#fff; border-color:transparent; }
.fiyat h3 { font-size:1.2rem; }
.fiyat .aciklama { margin:0; color:var(--soluk); font-size:15px; }
.fiyat--one .aciklama { color:rgba(255,255,255,.66); }
.tutar { display:flex; align-items:baseline; gap:8px; flex-wrap:wrap; }
.tutar b { font-size:clamp(2.2rem, 2vw + 1.4rem, 3rem); letter-spacing:-.04em; line-height:1; font-variant-numeric:tabular-nums; }
.tutar span { color:var(--soluk); font-size:15px; }
.fiyat--one .tutar span { color:rgba(255,255,255,.6); }
.fiyat ul { list-style:none; padding:0; margin:0; display:grid; gap:10px; font-size:15px; }
.fiyat li { display:grid; grid-template-columns:20px minmax(0,1fr); gap:10px; }
.fiyat li::before { content:"✓"; font-weight:700; color:var(--iyi); }
.fiyat--one li::before { color:var(--lime); }
.fiyat .dugme { align-self:stretch; margin-top:auto; }
.donem { display:inline-flex; background:var(--koyu); border-radius:999px; padding:4px; gap:2px; margin-bottom:24px; }
.donem button {
  border:0; background:none; color:rgba(255,255,255,.72); font:inherit; font-size:14px; font-weight:600;
  padding:9px 18px; border-radius:999px; cursor:pointer; min-height:40px;
}
.donem button[aria-pressed="true"] { background:var(--lime); color:var(--koyu); }
.kucuk-not { font-size:13.5px; color:var(--soluk); margin:16px 0 0; max-width:70ch; }

/* ---------- tablo ---------- */
.tablo-sar { overflow-x:auto; border-radius:var(--yaricap); border:1px solid rgba(18,20,23,.08); background:#fff; }
table { width:100%; border-collapse:collapse; font-size:15px; }
th, td { text-align:left; padding:14px 18px; border-bottom:1px solid var(--cizgi); vertical-align:top; }
th { font-size:13px; text-transform:none; color:var(--soluk); font-weight:600; background:#FAFBF8; }
tr:last-child td { border-bottom:0; }
td.ortala, th.ortala { text-align:center; }
@media (max-width:620px) {
  table { font-size:13.5px; }
  th, td { padding:12px 10px; }
  th:first-child, td:first-child { width:46%; }
}
.var { color:var(--iyi); font-weight:700; }

/* ---------- sss ---------- */
.sss { display:grid; gap:10px; max-width:860px; }
.sss details { background:#fff; border:1px solid rgba(18,20,23,.07); border-radius:14px; }
.sss summary {
  cursor:pointer; list-style:none; padding:18px 20px; font-weight:600; font-size:16px; min-height:44px;
  display:flex; justify-content:space-between; gap:16px; align-items:center;
}
.sss summary::-webkit-details-marker { display:none; }
.sss summary::after { content:"+"; font-size:22px; line-height:1; color:var(--soluk); transition:transform var(--sure) var(--easing); flex:none; }
.sss details[open] summary::after { transform:rotate(45deg); }
.sss details p { margin:0; padding:0 20px 18px; color:var(--soluk); font-size:15px; }

/* ---------- kapanış ---------- */
.kapanis { background:var(--lime); border-radius:26px; padding:calc(var(--bosluk) * 7) calc(var(--bosluk) * 4); text-align:center; }
.kapanis h2 { font-size:clamp(1.5rem, 2vw + .8rem, 2.2rem); color:var(--koyu); }
.kapanis p { margin:12px auto 0; max-width:56ch; color:rgba(18,20,23,.74); }
.kapanis .hero-eylem { justify-content:center; margin-top:24px; }

/* ---------- vurgu şeridi (Sarai otelleri) ---------- */
.serit { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:20px; align-items:center; background:var(--koyu); color:#fff; border-radius:22px; padding:24px 28px; }
.serit p { margin:4px 0 0; color:rgba(255,255,255,.66); font-size:15px; }
.serit .ikon { margin:0; }
@media (max-width:760px) { .serit { grid-template-columns:1fr; } }

/* ---------- alt bilgi ---------- */
.alt { background:var(--koyu); color:rgba(255,255,255,.62); padding:calc(var(--bosluk) * 8) 0 calc(var(--bosluk) * 4); font-size:14.5px; }
.alt-izgara { display:grid; grid-template-columns:minmax(0,2fr) repeat(3, minmax(0,1fr)); gap:32px; }
@media (max-width:760px) { .alt-izgara { grid-template-columns:repeat(2, minmax(0,1fr)); } .alt-izgara > :first-child { grid-column:1 / -1; } }
.alt h4 { font-size:12px; letter-spacing:.12em; color:rgba(255,255,255,.4); margin-bottom:12px; font-weight:700; }
.alt ul { list-style:none; padding:0; margin:0; display:grid; gap:4px; }
.alt a { text-decoration:none; display:inline-flex; min-height:36px; align-items:center; }
.alt a:hover { color:var(--lime); }
.alt-son { display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; border-top:1px solid rgba(255,255,255,.08); margin-top:40px; padding-top:20px; font-size:13px; color:rgba(255,255,255,.4); }

/* ---------- belirme ---------- */
[data-belir] { opacity:0; transform:translateY(14px); transition:opacity 420ms var(--easing), transform 420ms var(--easing); }
[data-belir][data-gorundu] { opacity:1; transform:none; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition-duration:1ms !important; animation-duration:1ms !important; }
  [data-belir] { opacity:1; transform:none; }
}
