/* ============================================================
   QUANTELIO — oyun kültürü dergisi
   Görsel yön: İsviçre ızgarası, antikva, toprak tonları,
   fotoğraf, bol boşluk, sakin ve pahalı bir ton.
   ============================================================ */

:root{
  --paper:   #f4efe6;
  --paper-2: #eae2d4;
  --card:    #fbf8f2;
  --ink:     #23201b;
  --ink-2:   #4e4941;
  --ink-3:   #7d7568;
  --rule:    #d6ccb9;
  --rule-2:  #bcae95;
  --terra:   #9d4a2c;
  --terra-2: #853d23;
  --olive:   #57683f;
  --slate:   #445769;

  --f-disp: 'Fraunces', Georgia, 'Times New Roman', serif;
  --f-body: 'Spectral', Georgia, serif;

  --shell: 1180px;
  --gut: 24px;
  --pad: clamp(56px, 8vw, 128px);
}

*,*::before,*::after{ box-sizing:border-box; }
[hidden]{ display:none !important; }

html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; }
@media (prefers-reduced-motion: reduce){ html{ scroll-behavior:auto; } }

body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:var(--f-body);
  font-weight:400;
  font-size:17px;
  line-height:1.72;
  overflow-wrap:break-word;
}

img{ max-width:100%; height:auto; display:block; }
a{ color:inherit; }
button{ font:inherit; color:inherit; }

h1,h2,h3,h4{
  font-family:var(--f-disp);
  font-weight:600;
  line-height:1.14;
  letter-spacing:-.012em;
  margin:0 0 .55em;
}
h1{ font-size:clamp(2.2rem, 4.6vw, 3.9rem); }
h2{ font-size:clamp(1.55rem, 2.7vw, 2.35rem); }
h3{ font-size:clamp(1.1rem, 1.6vw, 1.35rem); }
p{ margin:0 0 1.15em; }

::selection{ background:var(--terra); color:#fff; }
:focus-visible{ outline:2px solid var(--terra); outline-offset:3px; }

.shell{ width:100%; max-width:var(--shell); margin:0 auto; padding:0 var(--gut); }

.skip{
  position:absolute; left:-9999px; top:0; z-index:200;
  background:var(--ink); color:var(--paper); padding:12px 20px;
}
.skip:focus{ left:0; }

/* ─── Başlık kütüğü ───────────────────────────────────────── */
.mast{ border-bottom:1px solid var(--rule); background:var(--paper); }
.mast .shell{
  display:grid; grid-template-columns:1fr auto 1fr; align-items:center;
  gap:20px; padding-top:26px; padding-bottom:24px;
}
.mast__logo{
  text-decoration:none; text-align:center;
  font-family:var(--f-disp); font-weight:600;
  font-size:clamp(2rem, 4.6vw, 3.1rem); letter-spacing:.02em; line-height:1;
}
.mast__logo span{ display:block; }
.mast__line{
  margin:0; font-size:.74rem; letter-spacing:.14em; text-transform:uppercase;
  color:var(--ink-3);
}
.mast__line--r{ text-align:right; }
@media (max-width:820px){
  .mast .shell{ grid-template-columns:1fr; text-align:center; gap:10px; padding-top:20px; padding-bottom:18px; }
  .mast__line--r{ text-align:center; }
  .mast__line--l{ display:none; }
}

/* ─── Menü çubuğu ─────────────────────────────────────────── */
.navbar{
  position:sticky; top:0; z-index:70;
  background:rgba(244,239,230,.94);
  backdrop-filter:blur(6px);
  border-bottom:1px solid var(--rule);
}
.navbar__in{ display:flex; align-items:center; justify-content:center; gap:20px; min-height:52px; position:relative; }
.navbar__mini{
  position:absolute; left:var(--gut); top:50%; transform:translateY(-50%);
  font-family:var(--f-disp); font-size:1.05rem; text-decoration:none;
  opacity:0; transition:opacity .2s; pointer-events:none;
}
.navbar.is-stuck .navbar__mini{ opacity:1; }
@media (max-width:980px){ .navbar__mini{ opacity:1; } }

.menu ul{ display:flex; gap:30px; list-style:none; margin:0; padding:0; }
.menu a{
  display:inline-block; padding:14px 0;
  font-size:.82rem; letter-spacing:.15em; text-transform:uppercase;
  text-decoration:none; color:var(--ink-2); position:relative;
}
.menu a::after{
  content:''; position:absolute; left:0; right:0; bottom:9px; height:1px;
  background:var(--terra); transform:scaleX(0); transform-origin:left; transition:transform .2s;
}
.menu a:hover{ color:var(--ink); }
.menu a:hover::after, .menu a.on::after{ transform:scaleX(1); }
.menu a.on{ color:var(--terra); }

.burger{
  display:none; position:absolute; right:var(--gut); top:50%; transform:translateY(-50%);
  width:44px; height:44px; background:none; border:1px solid var(--rule-2); cursor:pointer; padding:0;
}
.burger span{ display:block; width:18px; height:1px; background:var(--ink); margin:5px auto; transition:transform .2s, opacity .2s; }
.burger[aria-expanded="true"] span:nth-child(1){ transform:translateY(6px) rotate(45deg); }
.burger[aria-expanded="true"] span:nth-child(2){ opacity:0; }
.burger[aria-expanded="true"] span:nth-child(3){ transform:translateY(-6px) rotate(-45deg); }

@media (max-width:980px){
  .burger{ display:block; }
  .navbar__in{ min-height:56px; justify-content:flex-start; }
  .menu{
    position:absolute; left:0; right:0; top:100%;
    background:var(--paper); border-bottom:1px solid var(--rule);
    max-height:0; overflow:hidden; transition:max-height .28s ease;
  }
  .menu.is-open{ max-height:70vh; overflow:auto; }
  .menu ul{ flex-direction:column; gap:0; padding:6px var(--gut) 20px; }
  .menu a{ display:block; padding:15px 0; border-bottom:1px solid var(--rule); font-size:.95rem; letter-spacing:.08em; }
  .menu a::after{ display:none; }
}

/* ─── Ortak parçalar ──────────────────────────────────────── */
.eyebrow{
  font-size:.72rem; letter-spacing:.2em; text-transform:uppercase;
  color:var(--terra); margin:0 0 12px;
}
.eyebrow--muted{ color:var(--ink-3); }

.band{ padding:var(--pad) 0; }
.band + .band{ padding-top:0; }
.band--rule{ border-top:1px solid var(--rule); }

.head{ margin-bottom:clamp(28px,4vw,52px); max-width:44ch; }
.head--wide{ max-width:none; display:flex; justify-content:space-between; align-items:flex-end; gap:24px; flex-wrap:wrap; }
.head h2{ margin:0; }
.head p{ color:var(--ink-2); margin:14px 0 0; }
.more{
  font-size:.78rem; letter-spacing:.16em; text-transform:uppercase;
  text-decoration:none; color:var(--terra); border-bottom:1px solid transparent; white-space:nowrap;
}
.more:hover{ border-bottom-color:var(--terra); }

.btn{
  display:inline-flex; align-items:center; justify-content:center;
  min-height:46px; padding:12px 26px; cursor:pointer;
  font-family:var(--f-body); font-size:.8rem; font-weight:600;
  letter-spacing:.14em; text-transform:uppercase; text-decoration:none;
  border:1px solid var(--terra); transition:background .18s, color .18s, border-color .18s;
}
.btn--solid{ background:var(--terra); color:#fff; }
.btn--solid:hover{ background:var(--terra-2); border-color:var(--terra-2); }
.btn--out{ background:transparent; color:var(--terra); }
.btn--out:hover{ background:var(--terra); color:#fff; }
.btn--text{ background:transparent; color:var(--ink-2); border-color:transparent; text-decoration:underline; text-underline-offset:4px; }
.btn--text:hover{ color:var(--terra); }
.linklike{ background:none; border:0; padding:0; cursor:pointer; text-decoration:underline; text-underline-offset:3px; }
.acts{ display:flex; gap:14px; flex-wrap:wrap; margin-top:26px; }

/* ─── Giriş bölümü ────────────────────────────────────────── */
.opener{ padding:clamp(40px,6vw,84px) 0 clamp(32px,4vw,56px); }
.opener__grid{ display:grid; grid-template-columns:1.02fr 1fr; gap:clamp(30px,5vw,72px); align-items:center; }
@media (max-width:900px){ .opener__grid{ grid-template-columns:1fr; } }
.opener__h{ font-size:clamp(2.3rem,5vw,4.2rem); margin:0 0 22px; }
.opener__h em{ font-style:italic; color:var(--terra); }
.opener__p{ font-size:clamp(1.02rem,1.3vw,1.16rem); color:var(--ink-2); max-width:46ch; }
.opener__fig{ margin:0; }
.opener__fig img{ width:100%; aspect-ratio:4/3; object-fit:cover; }
.opener__cap{
  font-size:.76rem; font-style:italic; color:var(--ink-3);
  margin-top:10px; padding-top:8px; border-top:1px solid var(--rule);
}
.facts{
  display:grid; grid-template-columns:repeat(4,1fr); gap:24px;
  border-top:1px solid var(--rule); margin-top:clamp(34px,5vw,64px); padding-top:26px;
}
@media (max-width:760px){ .facts{ grid-template-columns:repeat(2,1fr); gap:20px; } }
.fact b{ display:block; font-family:var(--f-disp); font-size:clamp(1.7rem,3vw,2.4rem); line-height:1; }
.fact span{ display:block; margin-top:8px; font-size:.74rem; letter-spacing:.14em; text-transform:uppercase; color:var(--ink-3); }

/* ─── Yazı girişleri ──────────────────────────────────────── */
.cols{ display:grid; gap:clamp(28px,3.4vw,46px); }
.cols--2{ grid-template-columns:repeat(2,1fr); }
.cols--3{ grid-template-columns:repeat(3,1fr); }
@media (max-width:980px){ .cols--3{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:680px){ .cols--2,.cols--3{ grid-template-columns:1fr; } }

.entry{ display:flex; flex-direction:column; }
.entry__body{ display:flex; flex-direction:column; flex:1; min-width:0; }
.idx__body{ display:block; min-width:0; }

/* uzun kelimelerin ızgarayı taşırmasını engelle */
.opener__grid > *, .duo > *, .article__grid > *, .cols > *, .entry--lead > *,
.legal__grid > *, .signup__in > *, .foot__top > *{ min-width:0; }
.entry__fig{ display:block; position:relative; margin-bottom:16px; background:var(--paper-2); }
.entry__fig img{ width:100%; aspect-ratio:3/2; object-fit:cover; transition:opacity .25s; }
.entry:hover .entry__fig img{ opacity:.9; }
.entry__g{
  position:absolute; right:12px; bottom:12px;
  min-width:46px; height:46px; padding:0 8px;
  display:grid; place-items:center;
  background:var(--paper); color:var(--ink);
  border:1px solid var(--ink);
  font-family:var(--f-disp); font-size:1.02rem; font-weight:600;
  border-radius:50%;
}
.kicker{
  font-size:.7rem; letter-spacing:.18em; text-transform:uppercase;
  margin:0 0 9px; color:var(--ink-3);
}
.kicker--inceleme{ color:var(--terra); }
.kicker--haber{ color:var(--slate); }
.kicker--rehber{ color:var(--olive); }
.entry__t{ font-size:1.28rem; margin:0 0 10px; line-height:1.24; }
.entry__t a{ text-decoration:none; }
.entry__t a:hover{ color:var(--terra); }
.entry__d{ color:var(--ink-2); margin:0 0 14px; font-size:.97rem; }
.byline{
  margin:auto 0 0; font-size:.76rem; letter-spacing:.06em;
  color:var(--ink-3); padding-top:12px; border-top:1px solid var(--rule);
}
.byline__a{ color:var(--ink-2); }

/* büyük giriş */
.entry--lead{ display:grid; grid-template-columns:1.25fr 1fr; gap:clamp(24px,3.5vw,52px); align-items:center; }
@media (max-width:860px){ .entry--lead{ grid-template-columns:1fr; } }
.entry--lead .entry__fig{ margin-bottom:0; }
.entry--lead .entry__fig img{ aspect-ratio:4/3; }
.entry--lead .entry__t{ font-size:clamp(1.6rem,3vw,2.5rem); }
.entry--lead .entry__d{ font-size:1.05rem; }

/* numaralı sıra */
.idx{
  display:grid; grid-template-columns:44px 1fr auto; gap:20px; align-items:baseline;
  padding:20px 0; border-top:1px solid var(--rule); text-decoration:none;
}
.idx:last-child{ border-bottom:1px solid var(--rule); }
.idx__n{ font-family:var(--f-disp); font-size:1.05rem; color:var(--ink-3); }
.idx__kicker{ display:block; font-size:.68rem; letter-spacing:.18em; text-transform:uppercase; color:var(--ink-3); margin-bottom:6px; }
.idx__t{ display:block; font-family:var(--f-disp); font-size:1.16rem; font-weight:600; line-height:1.24; }
.idx:hover .idx__t{ color:var(--terra); }
.idx__m{ display:block; font-size:.78rem; color:var(--ink-3); margin-top:6px; }
.idx__g{
  font-family:var(--f-disp); font-size:1.05rem; font-weight:600; color:var(--terra);
  min-width:38px; text-align:right;
}
@media (max-width:560px){
  .idx{ grid-template-columns:34px 1fr auto; gap:12px; }
}

/* ─── Rubrikler ───────────────────────────────────────────── */
.rubrics{ display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--rule); border:1px solid var(--rule); }
@media (max-width:860px){ .rubrics{ grid-template-columns:1fr; } }
.rubric{ background:var(--card); padding:clamp(24px,3vw,36px); text-decoration:none; display:block; transition:background .18s; }
.rubric:hover{ background:#fff; }
.rubric h3{ margin:0 0 10px; }
.rubric p{ margin:0; color:var(--ink-2); font-size:.94rem; }
.rubric .eyebrow{ margin-bottom:14px; }

/* ─── Alıntı bandı ────────────────────────────────────────── */
.pull{
  border-top:1px solid var(--rule); border-bottom:1px solid var(--rule);
  padding:clamp(34px,5vw,64px) 0; margin:0;
}
.pull blockquote{
  margin:0 auto; max-width:26ch; text-align:center;
  font-family:var(--f-disp); font-size:clamp(1.5rem,3vw,2.3rem); line-height:1.24; font-style:italic;
}
.pull figcaption{ text-align:center; margin-top:18px; font-size:.78rem; letter-spacing:.14em; text-transform:uppercase; color:var(--ink-3); }

/* ─── Sayfa başlığı ───────────────────────────────────────── */
.phead{ padding:clamp(40px,5vw,76px) 0 clamp(28px,3vw,44px); border-bottom:1px solid var(--rule); }
.crumbs{ font-size:.74rem; letter-spacing:.14em; text-transform:uppercase; color:var(--ink-3); margin:0 0 18px; }
.crumbs a{ text-decoration:none; }
.crumbs a:hover{ color:var(--terra); }
.crumbs span{ margin:0 8px; color:var(--rule-2); }
.phead h1{ margin:0 0 16px; }
.phead p{ margin:0; color:var(--ink-2); max-width:56ch; font-size:1.04rem; }

/* ─── Filtre ──────────────────────────────────────────────── */
.filters{ display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-bottom:clamp(26px,3vw,40px); }
.filters__l{ font-size:.72rem; letter-spacing:.16em; text-transform:uppercase; color:var(--ink-3); margin-right:6px; }
.fbtn{
  min-height:38px; padding:8px 18px; background:transparent; cursor:pointer;
  border:1px solid var(--rule-2); color:var(--ink-2);
  font-family:var(--f-body); font-size:.78rem; letter-spacing:.1em; text-transform:uppercase;
  transition:.18s;
}
.fbtn:hover{ border-color:var(--ink); color:var(--ink); }
.fbtn.is-on{ background:var(--ink); border-color:var(--ink); color:var(--paper); }
.fempty{ border:1px dashed var(--rule-2); padding:24px; text-align:center; color:var(--ink-2); font-style:italic; }

/* ─── Makale ──────────────────────────────────────────────── */
.article{ padding:clamp(34px,4vw,64px) 0 0; }
.article__head{ max-width:760px; margin:0 auto clamp(26px,3vw,42px); text-align:center; }
.article__head h1{ margin:12px 0 18px; }
.article__lead{ font-size:1.14rem; color:var(--ink-2); font-style:italic; }
.article__by{
  font-size:.78rem; letter-spacing:.1em; color:var(--ink-3);
  border-top:1px solid var(--rule); border-bottom:1px solid var(--rule);
  padding:12px 0; margin-top:26px;
}
.article__by b{ font-weight:600; color:var(--ink-2); }
.article__fig{ margin:0 0 clamp(28px,4vw,48px); }
.article__fig img{ width:100%; aspect-ratio:3/2; object-fit:cover; }
.article__fig figcaption{ font-size:.78rem; font-style:italic; color:var(--ink-3); margin-top:10px; }

.article__grid{ display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:clamp(30px,4vw,64px); align-items:start; }
@media (max-width:1020px){ .article__grid{ grid-template-columns:1fr; } }

.prose{ font-size:1.06rem; max-width:70ch; }
.prose > p:first-of-type::first-letter{
  float:left; font-family:var(--f-disp); font-size:3.4em; line-height:.84;
  padding:.08em .1em 0 0; color:var(--terra); font-weight:600;
}
.prose h2{ font-size:clamp(1.3rem,2vw,1.75rem); margin:1.9em 0 .5em; }
.prose h3{ margin:1.5em 0 .4em; }
.prose blockquote{
  margin:1.8em 0; padding:0 0 0 24px; border-left:2px solid var(--terra);
  font-family:var(--f-disp); font-size:1.2rem; font-style:italic; line-height:1.4; color:var(--ink);
}
.prose ul, .prose ol{ padding-left:1.2em; margin:0 0 1.3em; }
.prose li{ margin-bottom:.5em; }
.prose li::marker{ color:var(--terra); }
.prose strong{ font-weight:600; }
.prose a{ color:var(--terra); }

/* değerlendirme */
.verdict{ border-top:2px solid var(--ink); border-bottom:1px solid var(--rule); margin:clamp(34px,4vw,54px) 0; padding:26px 0 6px; }
.verdict__top{ display:flex; gap:24px; align-items:center; flex-wrap:wrap; margin-bottom:24px; }
.grade{
  width:86px; height:86px; flex:0 0 86px; border-radius:50%;
  border:1px solid var(--ink); display:grid; place-items:center;
  font-family:var(--f-disp); font-size:2.1rem; font-weight:600; background:var(--card);
}
.verdict__line{ margin:0; font-family:var(--f-disp); font-size:1.24rem; line-height:1.35; max-width:34ch; }
.verdict__scale{ margin:6px 0 0; font-size:.78rem; letter-spacing:.1em; text-transform:uppercase; color:var(--ink-3); }
.vcols{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(20px,3vw,40px); }
@media (max-width:680px){ .vcols{ grid-template-columns:1fr; } }
.vcols h3{ font-size:.78rem; letter-spacing:.16em; text-transform:uppercase; margin:0 0 12px; font-family:var(--f-body); font-weight:600; }
.vcols ul{ list-style:none; margin:0 0 20px; padding:0; font-size:.95rem; color:var(--ink-2); }
.vcols li{ padding-left:20px; position:relative; margin-bottom:9px; }
.vgood h3{ color:var(--olive); }
.vbad h3{ color:var(--terra); }
.vgood li::before{ content:'—'; position:absolute; left:0; color:var(--olive); }
.vbad li::before{ content:'—'; position:absolute; left:0; color:var(--terra); }
.vnote{ border-top:1px solid var(--rule); padding-top:18px; margin-bottom:22px; }
.vnote h3{ font-size:.78rem; letter-spacing:.16em; text-transform:uppercase; font-family:var(--f-body); font-weight:600; margin:0 0 8px; color:var(--ink-3); }
.vnote p{ margin:0; color:var(--ink-2); font-size:.97rem; }

/* künye kutusu */
.box{ border:1px solid var(--rule); background:var(--card); }
.box + .box{ margin-top:22px; }
.box__h{
  margin:0; padding:14px 18px; border-bottom:1px solid var(--rule);
  font-family:var(--f-body); font-weight:600;
  font-size:.74rem; letter-spacing:.16em; text-transform:uppercase; color:var(--ink-3);
}
.box dl{ margin:0; padding:6px 18px 14px; }
.box .r{ display:grid; grid-template-columns:104px 1fr; gap:14px; padding:9px 0; border-bottom:1px solid var(--rule); font-size:.87rem; }
.box .r:last-child{ border-bottom:0; }
.box dt{ color:var(--ink-3); font-size:.76rem; letter-spacing:.08em; text-transform:uppercase; }
.box dd{ margin:0; color:var(--ink-2); }
.box p{ padding:16px 18px; margin:0; font-size:.9rem; color:var(--ink-2); }
.side{ position:sticky; top:80px; }
@media (max-width:1020px){ .side{ position:static; } }

.authorcard{ display:flex; gap:18px; align-items:flex-start; border-top:1px solid var(--rule); margin-top:clamp(34px,4vw,52px); padding-top:24px; }
.mono-av{
  width:54px; height:54px; flex:0 0 54px; border-radius:50%;
  border:1px solid var(--rule-2); display:grid; place-items:center;
  font-family:var(--f-disp); font-size:1.05rem; background:var(--card);
}
.authorcard h3{ margin:0 0 2px; font-size:1.1rem; }
.authorcard .role{ font-size:.74rem; letter-spacing:.14em; text-transform:uppercase; color:var(--terra); margin:0 0 10px; }
.authorcard p{ margin:0; color:var(--ink-2); font-size:.94rem; }

.tagline{ display:flex; gap:10px; flex-wrap:wrap; margin-top:26px; }
.tagchip{ font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; color:var(--ink-3); border:1px solid var(--rule); padding:5px 12px; }

/* ─── Ekip / künye ────────────────────────────────────────── */
.people{ display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(26px,3vw,44px); }
@media (max-width:900px){ .people{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:600px){ .people{ grid-template-columns:1fr; } }
.person{ border-top:1px solid var(--rule); padding-top:20px; }
.person .mono-av{ margin-bottom:14px; }
.person h3{ margin:0 0 3px; font-size:1.1rem; }
.person .role{ font-size:.74rem; letter-spacing:.14em; text-transform:uppercase; color:var(--terra); margin:0 0 12px; }
.person p{ margin:0; color:var(--ink-2); font-size:.93rem; }
.person .since{ display:block; margin-top:12px; font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; color:var(--ink-3); }

/* zaman çizelgesi */
.years{ list-style:none; margin:0; padding:0; }
.years li{ display:grid; grid-template-columns:96px 1fr; gap:24px; padding:20px 0; border-top:1px solid var(--rule); }
@media (max-width:600px){ .years li{ grid-template-columns:1fr; gap:6px; } }
.years b{ font-family:var(--f-disp); font-size:1.3rem; color:var(--terra); }
.years h3{ margin:0 0 4px; font-size:1.08rem; }
.years p{ margin:0; color:var(--ink-2); font-size:.95rem; }

/* ─── İki sütun ───────────────────────────────────────────── */
.duo{ display:grid; grid-template-columns:1.05fr .95fr; gap:clamp(30px,4.5vw,70px); align-items:start; }
@media (max-width:900px){ .duo{ grid-template-columns:1fr; } }
.figure{ margin:0; }
.figure img{ width:100%; object-fit:cover; }
.figure figcaption{ font-size:.78rem; font-style:italic; color:var(--ink-3); margin-top:10px; padding-top:8px; border-top:1px solid var(--rule); }

/* ─── Formlar ─────────────────────────────────────────────── */
.field{ display:block; margin-bottom:20px; }
.field__l{ display:block; font-size:.74rem; letter-spacing:.14em; text-transform:uppercase; color:var(--ink-3); margin-bottom:8px; }
.field__l b{ color:var(--terra); font-weight:400; }
input[type=text], input[type=email], select, textarea{
  width:100%; min-height:48px; padding:12px 14px;
  background:var(--card); color:var(--ink);
  border:1px solid var(--rule-2); border-radius:0;
  font-family:var(--f-body); font-size:1rem;
}
textarea{ min-height:160px; resize:vertical; }
input:focus, select:focus, textarea:focus{ outline:none; border-color:var(--terra); background:#fff; }
input::placeholder, textarea::placeholder{ color:var(--ink-3); }

.check{ display:flex; gap:12px; align-items:flex-start; margin-bottom:18px; font-size:.9rem; color:var(--ink-2); cursor:pointer; }
.check input{
  appearance:none; -webkit-appearance:none; flex:0 0 20px; width:20px; height:20px; margin-top:3px;
  border:1px solid var(--rule-2); background:var(--card); cursor:pointer; display:grid; place-items:center;
}
.check input:checked{ background:var(--terra); border-color:var(--terra); }
.check input:checked::after{ content:'✓'; color:#fff; font-size:.78rem; }
.check a{ color:var(--terra); }
.err{ display:block; color:var(--terra); font-size:.8rem; font-style:italic; margin-top:6px; }
.formnote{ border:1px solid var(--terra); background:rgba(157,74,44,.06); padding:14px 18px; margin-bottom:24px; font-size:.94rem; }

/* ─── İletişim bilgileri ──────────────────────────────────── */
.contactlist{ list-style:none; margin:0; padding:0; }
.contactlist li{ border-top:1px solid var(--rule); padding:16px 0; }
.contactlist h3{ font-size:.72rem; letter-spacing:.16em; text-transform:uppercase; color:var(--ink-3); margin:0 0 6px; font-family:var(--f-body); font-weight:600; }
.contactlist p, .contactlist address{ margin:0; font-style:normal; }
.contactlist a{ color:var(--terra); text-decoration:none; }
.contactlist a:hover{ text-decoration:underline; }

/* ─── Hukuki sayfalar ─────────────────────────────────────── */
.legal{ padding:clamp(34px,4vw,60px) 0 0; }
.legal__grid{ display:grid; grid-template-columns:240px minmax(0,1fr); gap:clamp(28px,4vw,64px); align-items:start; }
@media (max-width:900px){ .legal__grid{ grid-template-columns:1fr; } }
.toc{ position:sticky; top:80px; border-top:1px solid var(--ink); padding-top:16px; }
@media (max-width:900px){ .toc{ position:static; } }
.toc h2{ font-size:.74rem; letter-spacing:.16em; text-transform:uppercase; color:var(--ink-3); font-family:var(--f-body); font-weight:600; margin:0 0 12px; }
.toc ol{ margin:0; padding-left:1.3em; font-size:.88rem; }
.toc li{ margin-bottom:8px; }
.toc a{ text-decoration:none; color:var(--ink-2); }
.toc a:hover{ color:var(--terra); }
.stamp{ font-size:.8rem; letter-spacing:.08em; color:var(--ink-3); border-bottom:1px solid var(--rule); padding-bottom:14px; margin-bottom:28px; }

/* ─── Bülten bandı ────────────────────────────────────────── */
.signup{ background:var(--paper-2); border-top:1px solid var(--rule); margin-top:var(--pad); }
.signup__in{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(28px,4vw,64px); padding-top:clamp(44px,5vw,72px); padding-bottom:clamp(44px,5vw,72px); align-items:start; }
@media (max-width:860px){ .signup__in{ grid-template-columns:1fr; } }
.signup__h{ margin:0 0 12px; }
.signup__p{ margin:0; color:var(--ink-2); max-width:42ch; }
.signup__form .btn{ width:100%; }

/* ─── Alt bilgi ───────────────────────────────────────────── */
.foot{ background:var(--paper-2); padding:clamp(40px,5vw,64px) 0 30px; border-top:1px solid var(--rule); }
.foot__top{ display:grid; grid-template-columns:1.2fr 2fr; gap:clamp(28px,4vw,60px); }
@media (max-width:860px){ .foot__top{ grid-template-columns:1fr; } }
.foot__logo{ font-family:var(--f-disp); font-size:1.7rem; text-decoration:none; display:inline-block; margin-bottom:12px; }
.foot__brand p{ color:var(--ink-2); font-size:.92rem; max-width:40ch; margin:0; }
.foot__nav{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
@media (max-width:600px){ .foot__nav{ grid-template-columns:1fr; } }
.foot__nav h2{ font-size:.72rem; letter-spacing:.16em; text-transform:uppercase; color:var(--ink-3); font-family:var(--f-body); font-weight:600; margin:0 0 14px; }
.foot__nav ul{ list-style:none; margin:0; padding:0; }
.foot__nav li{ margin-bottom:9px; }
.foot__nav a{ text-decoration:none; color:var(--ink-2); font-size:.92rem; }
.foot__nav a:hover{ color:var(--terra); }
.foot__nav address{ font-style:normal; color:var(--ink-2); font-size:.9rem; line-height:1.8; }
.foot__nav address a{ text-decoration:none; }
.foot__legal{
  display:flex; justify-content:space-between; align-items:flex-end; gap:20px; flex-wrap:wrap;
  border-top:1px solid var(--rule); margin-top:40px; padding-top:22px;
}
.foot__legal p{ margin:0; font-size:.8rem; color:var(--ink-3); }
.foot__legal ul{ list-style:none; display:flex; gap:20px; flex-wrap:wrap; margin:0; padding:0; }
.foot__legal a, .foot__legal button{ font-size:.8rem; color:var(--ink-2); text-decoration:none; }
.foot__legal a:hover, .foot__legal button:hover{ color:var(--terra); }
.foot__note{ margin:22px 0 0; font-size:.78rem; color:var(--ink-3); max-width:90ch; }

/* ─── Çerez bildirimi ─────────────────────────────────────── */
.cookie{
  position:fixed; left:24px; bottom:24px; z-index:120; width:min(400px, calc(100vw - 48px));
  background:var(--card); border:1px solid var(--ink); padding:22px;
  box-shadow:14px 14px 0 rgba(35,32,27,.08);
}
.cookie h2{ font-size:1.1rem; margin:0 0 10px; }
.cookie p{ font-size:.88rem; color:var(--ink-2); margin:0 0 18px; }
.cookie a{ color:var(--terra); }
.cookie__btns{ display:flex; flex-direction:column; gap:9px; }
.cookie__btns .btn{ width:100%; }
@media (max-width:520px){ .cookie{ left:12px; right:12px; bottom:12px; width:auto; padding:18px; } }

/* ─── Ayar penceresi ──────────────────────────────────────── */
.sheet{ position:fixed; inset:0; z-index:140; display:grid; place-items:center; padding:20px; }
.sheet__bg{ position:absolute; inset:0; background:rgba(35,32,27,.42); }
.sheet__box{
  position:relative; width:min(660px,100%); max-height:86vh; overflow:auto;
  background:var(--paper); border:1px solid var(--ink); padding:clamp(24px,3.4vw,40px);
}
.sheet__x{ position:absolute; right:12px; top:8px; width:40px; height:40px; background:none; border:0; font-size:1.7rem; cursor:pointer; line-height:1; }
.sheet__x:hover{ color:var(--terra); }
.sheet__h{ margin:0 0 12px; }
.sheet__lead{ color:var(--ink-2); font-size:.94rem; }
.row2{ display:flex; gap:24px; justify-content:space-between; align-items:flex-start; border-top:1px solid var(--rule); padding:20px 0; }
.row2 h3{ font-size:1.02rem; margin:0 0 5px; }
.row2 p{ margin:0; font-size:.88rem; color:var(--ink-2); max-width:44ch; }
.sheet__acts{ display:flex; gap:12px; flex-wrap:wrap; border-top:1px solid var(--rule); padding-top:22px; }

.toggle{ display:flex; flex-direction:column; align-items:center; gap:7px; cursor:pointer; flex:0 0 auto; }
.toggle input{ position:absolute; opacity:0; width:0; height:0; }
.toggle span{ width:52px; height:28px; border:1px solid var(--rule-2); background:var(--card); position:relative; display:block; transition:.18s; }
.toggle span::after{ content:''; position:absolute; left:3px; top:3px; width:20px; height:20px; background:var(--rule-2); transition:.18s; }
.toggle input:checked + span{ border-color:var(--terra); }
.toggle input:checked + span::after{ transform:translateX(24px); background:var(--terra); }
.toggle input:focus-visible + span{ outline:2px solid var(--terra); outline-offset:3px; }
.toggle em{ font-style:normal; font-size:.68rem; letter-spacing:.1em; text-transform:uppercase; color:var(--ink-3); }
.toggle.is-locked{ opacity:.7; cursor:default; }

/* ─── Teşekkür ────────────────────────────────────────────── */
.thanks{ text-align:center; padding:clamp(64px,10vw,130px) 0; }
.thanks__mark{ width:78px; height:78px; margin:0 auto 26px; border:1px solid var(--ink); border-radius:50%; display:grid; place-items:center; font-family:var(--f-disp); font-size:1.9rem; }
.thanks p{ color:var(--ink-2); max-width:52ch; margin:0 auto 12px; }
.thanks__acts{ display:flex; gap:14px; justify-content:center; flex-wrap:wrap; margin-top:30px; }

/* ─── Görünürlük ──────────────────────────────────────────── */
.js .reveal{ opacity:0; transform:translateY(14px); transition:opacity .55s ease, transform .55s ease; }
.js .reveal.is-in{ opacity:1; transform:none; }
@media (prefers-reduced-motion: reduce){
  .js .reveal{ opacity:1; transform:none; transition:none; }
}

/* ─── Yardımcılar ─────────────────────────────────────────── */
.muted{ color:var(--ink-2); }
.center{ text-align:center; }
.mt0{ margin-top:0; }
.mt24{ margin-top:24px; }
.mt40{ margin-top:40px; }
.measure{ max-width:64ch; }
.vh{ position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0; }
