/* self-hosted fonts (restored after polish strip) */
@font-face {
  font-family: 'Anton';
  font-style: normal;
  font-weight: 400;
  font-display: optional;
  src: url(../fonts/Anton-400-normal-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Anton';
  font-style: normal;
  font-weight: 400;
  font-display: optional;
  src: url(../fonts/Anton-400-normal-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'JetBrains Mono';
  font-style: italic;
  font-weight: 400;
  font-display: optional;
  src: url(../fonts/JetBrainsMono-400-italic-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'JetBrains Mono';
  font-style: italic;
  font-weight: 400;
  font-display: optional;
  src: url(../fonts/JetBrainsMono-400-italic-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'JetBrains Mono';
  font-style: italic;
  font-weight: 600;
  font-display: optional;
  src: url(../fonts/JetBrainsMono-600-italic-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'JetBrains Mono';
  font-style: italic;
  font-weight: 600;
  font-display: optional;
  src: url(../fonts/JetBrainsMono-600-italic-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: optional;
  src: url(../fonts/JetBrainsMono-400-normal-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: optional;
  src: url(../fonts/JetBrainsMono-400-normal-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500;
  font-display: optional;
  src: url(../fonts/JetBrainsMono-500-normal-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500;
  font-display: optional;
  src: url(../fonts/JetBrainsMono-500-normal-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 600;
  font-display: optional;
  src: url(../fonts/JetBrainsMono-600-normal-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 600;
  font-display: optional;
  src: url(../fonts/JetBrainsMono-600-normal-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 700;
  font-display: optional;
  src: url(../fonts/JetBrainsMono-700-normal-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 700;
  font-display: optional;
  src: url(../fonts/JetBrainsMono-700-normal-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* =========================================================================
   PAFTA KOLEKTİF — Mimari kolaj pafta atölyesi
   Retro afiş-kırpıntı / full-coleaj panel sistemi
   Palet: bg #F4EEE4 · surface #FFFFFF · ink #16181C · accent #163E8C · accent-2 #F0B41E
   ========================================================================= */

/* ---------- Tokens ---------- */
:root{
  --bg:#F4EEE4;
  --surface:#FFFFFF;
  --paper:#F6F1E6;
  --kraft:#D8C6A6;
  --ink:#16181C;
  --ink-soft:#44474E;
  --muted:#5C5F67;
  --accent:#163E8C;          /* dolgu / çerçeve / dekor */
  --accent-text:#153873;     /* koyu metin için (kontrast) */
  --accent-2:#F0B41E;        /* vurgu sarı — sadece dolgu, üstüne koyu metin */
  --accent-2-deep:#B9820A;   /* sarı tonun metin karşılığı */
  --line:rgba(22,24,28,.16);
  --line-strong:rgba(22,24,28,.34);
  --tape:rgba(240,180,30,.42);
  --tape-blue:rgba(22,62,140,.20);
  --shadow:0 18px 40px -26px rgba(22,24,28,.55);
  --shadow-soft:0 10px 26px -20px rgba(22,24,28,.5);
  --header-h:72px;
  --sec-pad:clamp(56px,8vw,104px);
  --maxw:1400px;

  --serif:"Anton","Arial Narrow",Impact,sans-serif;
  --body:"Barlow",system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"JetBrains Mono",ui-monospace,"Consolas",monospace;
  --hand:"Permanent Marker","Comic Sans MS",cursive;

  interpolate-size: allow-keywords;
}

*,*::before,*::after{box-sizing:border-box}
html,body{margin:0;padding:0;overflow-x:clip;max-width:100%}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

body{
  font-family:var(--body);
  color:var(--ink);
  background:var(--bg);
  line-height:1.6;
  font-size:clamp(15px,1.05vw,17px);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

figure,figcaption,blockquote{margin:0}
img{max-width:100%;height:auto;display:block}
a{color:var(--accent-text);text-underline-offset:3px}
h1,h2,h3,h4{line-height:1.14;margin:0;font-weight:400}
p{margin:0 0 1em}
button{font-family:inherit}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}
::selection{background:var(--accent-2);color:var(--ink)}

main,.site-footer{position:relative;z-index:1}

/* word wrap guards */
.break{word-break:break-word;overflow-wrap:anywhere}

/* ---------- Skip link ---------- */
.skip-link{position:absolute;left:12px;top:-60px;z-index:2000;background:var(--ink);color:#fff;
  padding:10px 16px;border-radius:4px;transition:top .2s;text-decoration:none;font-weight:600}
.skip-link:focus{top:12px}

/* ---------- Container ---------- */
.container{width:100%;max-width:var(--maxw);margin-inline:auto;
  padding-left:clamp(16px,4vw,52px);padding-right:clamp(16px,4vw,52px)}

/* =========================================================================
   PAPER / COLLAGE PRIMITIVES
   ========================================================================= */
/* paper textures via layered gradients (fallback) + image bg where set inline */
.paper-kraft{background-color:#D9C8A8;
  background-image:linear-gradient(135deg,rgba(255,255,255,.10),rgba(0,0,0,.04))}
.paper-karton{background-color:#E7DDC9;
  background-image:linear-gradient(135deg,rgba(255,255,255,.12),rgba(0,0,0,.04))}
.paper-gazete{background-color:#EEE8DA;
  background-image:linear-gradient(135deg,rgba(255,255,255,.14),rgba(0,0,0,.03))}
.paper-mukavva{background-color:#CBB68E;
  background-image:linear-gradient(135deg,rgba(255,255,255,.10),rgba(0,0,0,.05))}

/* matbaa mürekkebi sheen — ince parlak doku zeminler üstünde */
.ink-sheen{position:relative}
.ink-sheen::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.14) 48%,transparent 56%);
  mix-blend-mode:screen;opacity:.5}

/* yırtık afiş kenarı — ayraç */
.torn-edge{position:relative}
.torn-edge::before,.torn-edge::after{content:"";position:absolute;left:0;right:0;height:16px;
  background-repeat:repeat-x;background-size:24px 16px;pointer-events:none;z-index:3}
.torn-edge::before{top:-1px;
  background-image:linear-gradient(135deg,var(--bg) 25%,transparent 25%),linear-gradient(225deg,var(--bg) 25%,transparent 25%);
  background-position:0 0}
.torn-edge::after{bottom:-1px;transform:scaleY(-1);
  background-image:linear-gradient(135deg,var(--bg) 25%,transparent 25%),linear-gradient(225deg,var(--bg) 25%,transparent 25%)}

/* scrap — yapışık klçtır. Her scrap KENDİ padding'ine sahip */
.scrap{position:relative;background:var(--surface);padding:clamp(18px,2.2vw,26px);
  box-shadow:var(--shadow);border:1px solid rgba(22,24,28,.08)}
.scrap--tilt-l{transform:rotate(-2.2deg)}
.scrap--tilt-r{transform:rotate(2deg)}
.scrap--tilt-l2{transform:rotate(-1.2deg)}

/* tape (washi/koli bandı) */
.tape{position:absolute;width:104px;height:30px;background:var(--tape);
  box-shadow:0 2px 6px -3px rgba(0,0,0,.4);pointer-events:none;z-index:4;
  background-image:repeating-linear-gradient(90deg,rgba(255,255,255,.18) 0 2px,transparent 2px 7px)}
.tape--tl{top:-14px;left:16px;transform:rotate(-7deg)}
.tape--tr{top:-14px;right:16px;transform:rotate(6deg)}
.tape--bl{bottom:-12px;left:24px;transform:rotate(5deg)}
.tape--blue{background:var(--tape-blue)}

/* pin (raptiye) */
.pin{position:absolute;width:20px;height:20px;border-radius:50%;z-index:5;pointer-events:none;
  background:radial-gradient(circle at 34% 30%,#ff7a6b,#c0352a 60%,#8a221a);
  box-shadow:0 4px 7px -2px rgba(0,0,0,.5),inset -2px -2px 3px rgba(0,0,0,.35)}
.pin--blue{background:radial-gradient(circle at 34% 30%,#5f8be0,var(--accent) 60%,#0d245a)}
.pin--gold{background:radial-gradient(circle at 34% 30%,#ffe08a,var(--accent-2) 55%,#a9790a)}
.pin--tc{top:-9px;left:50%;transform:translateX(-50%)}
.pin--tl{top:-9px;left:14px}
.pin--tr{top:-9px;right:14px}

/* clip (ataş) */
.clip{position:absolute;top:-10px;left:28px;width:16px;height:40px;border-radius:9px;
  border:3px solid #9aa0ab;border-bottom-color:transparent;z-index:5;pointer-events:none;
  transform:rotate(-8deg);box-shadow:0 2px 3px -1px rgba(0,0,0,.3)}

/* registration / crop marks */
.reg-mark{position:absolute;width:20px;height:20px;pointer-events:none;z-index:2;opacity:.5}
.reg-mark::before,.reg-mark::after{content:"";position:absolute;background:var(--ink)}
.reg-mark::before{left:50%;top:0;width:1.5px;height:100%;transform:translateX(-50%)}
.reg-mark::after{top:50%;left:0;height:1.5px;width:100%;transform:translateY(-50%)}

/* stamp (damga) */
.stamp{position:absolute;z-index:6;pointer-events:none;font-family:var(--mono);font-weight:700;
  text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:var(--accent);
  border:2.5px solid var(--accent);border-radius:4px;padding:5px 10px;
  transform:rotate(-11deg);opacity:.82;background:rgba(255,255,255,.35);mix-blend-mode:multiply}
.stamp--gold{color:var(--accent-2-deep);border-color:var(--accent-2-deep)}
.stamp--round{border-radius:50%;width:92px;height:92px;display:grid;place-items:center;text-align:center;line-height:1.1;font-size:11px}

/* handwriting scrawl */
.scrawl{font-family:var(--hand);color:var(--accent);line-height:1.1}
.scrawl--ink{color:var(--ink)}

/* mono typewriter label */
.rumuz-label{display:inline-block;font-family:var(--mono);font-size:12px;font-weight:600;
  letter-spacing:.12em;text-transform:uppercase;background:var(--ink);color:#F4EEE4;
  padding:5px 11px;transform:rotate(-1.5deg)}
.rumuz-label--gold{background:var(--accent-2);color:var(--ink)}
.rumuz-label--blue{background:var(--accent);color:#fff}

/* ransom / cut-out title pieces */
.cutout{display:inline-block;padding:.02em .16em;line-height:1;transform:rotate(-1deg)}
.cutout--a{background:var(--accent);color:#fff;transform:rotate(1.4deg)}
.cutout--b{background:var(--accent-2);color:var(--ink);transform:rotate(-2deg)}
.cutout--c{background:var(--surface);color:var(--ink);transform:rotate(.8deg);box-shadow:var(--shadow-soft)}
.cutout--ink{background:var(--ink);color:#F4EEE4;transform:rotate(-1deg)}

/* deckle / torn paper via clip-path */
.deckle{clip-path:polygon(0 4%,6% 0,16% 3%,28% 1%,41% 4%,55% 0,68% 3%,82% 1%,94% 4%,100% 1%,
  100% 96%,93% 100%,80% 97%,66% 100%,52% 97%,38% 100%,24% 97%,12% 100%,4% 97%,0 100%)}

/* price bira / tag */
.price-tag{position:relative;display:inline-block;background:var(--accent-2);color:var(--ink);
  font-family:var(--mono);font-weight:700;padding:7px 14px 7px 22px;transform:rotate(-3deg);
  box-shadow:var(--shadow-soft);clip-path:polygon(10% 0,100% 0,100% 100%,10% 100%,0 50%)}
.price-tag::before{content:"";position:absolute;left:6px;top:50%;transform:translateY(-50%);
  width:7px;height:7px;border-radius:50%;background:var(--ink)}

/* =========================================================================
   HEADER
   ========================================================================= */
.site-header{position:fixed;top:0;left:0;right:0;z-index:1080;height:var(--header-h);
  background:rgba(244, 238, 228, 0.92);backdrop-filter:saturate(1.1) blur(6px);
  border-bottom:2px solid var(--ink);transition:background .24s ease,box-shadow .24s ease,height .24s ease}
.site-header.is-scrolled{background:rgba(244,238,228,.98);
  box-shadow:0 8px 24px -16px rgba(0,0,0,.4);height:62px}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:100%;gap:18px}

.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);flex-shrink:0}
.brand__mark{font-family:var(--serif);font-size:22px;background:var(--accent);color:#fff;
  padding:3px 9px 1px;transform:rotate(-3deg);letter-spacing:.02em}
.brand__name{font-family:var(--serif);font-size:clamp(17px,1.6vw,21px);letter-spacing:.03em;
  text-transform:uppercase;white-space:nowrap}
.brand__name b{color:var(--accent-text)}

.nav-desktop{display:none}
@media (min-width:1024px){
  .nav-desktop{display:flex;align-items:center;gap:26px}
  .nav-desktop a{position:relative;text-decoration:none;color:var(--ink);font-weight:600;
    font-size:15px;padding:6px 0;letter-spacing:.01em;white-space:nowrap}
  .nav-desktop a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:3px;
    background:var(--accent-2);transition:right .26s cubic-bezier(.2,.7,.2,1)}
  .nav-desktop a:hover::after,.nav-desktop a.is-active::after{right:0}
  .nav-desktop a.is-active{color:var(--accent-text)}
}
/* header CTA */
.nav-desktop a.nav-cta,header a.nav-cta{padding:10px 20px;color:#fff;background:var(--accent);
  white-space:nowrap;display:inline-flex;align-items:center;gap:7px;font-weight:700;
  border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);transform:rotate(-1deg);
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.nav-desktop a.nav-cta::after{display:none}
.nav-desktop a.nav-cta:hover,header a.nav-cta:hover,
.nav-desktop a.nav-cta:focus-visible,header a.nav-cta:focus-visible{
  background:var(--accent-2);color:var(--ink);transform:rotate(-1deg) translateY(-2px);
  box-shadow:5px 5px 0 var(--ink)}

/* hamburger */
.nav-toggle{position:relative;width:46px;height:46px;padding:0;display:inline-block;
  border:2px solid var(--ink);background:var(--surface);cursor:pointer;color:var(--ink);
  border-radius:4px;z-index:1100;flex-shrink:0}
.nav-toggle span{position:absolute;left:50%;top:50%;width:22px;height:2.5px;translate:-50% -50%;
  background:currentColor;border-radius:2px;transition:transform .25s ease,opacity .2s ease}
.nav-toggle span:nth-child(1){transform:translateY(-7px)}
.nav-toggle span:nth-child(3){transform:translateY(7px)}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:rotate(45deg)}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0;transform:scaleX(0)}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:rotate(-45deg)}
@media (min-width:1024px){.nav-toggle{display:none}}

/* drawer */
.drawer-backdrop{position:fixed;inset:0;background:rgba(10,10,12,.55);opacity:0;visibility:hidden;
  transition:opacity .24s ease,visibility .24s ease;z-index:1040}
.drawer-backdrop.is-open{opacity:1;visibility:visible}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(360px,92vw);z-index:1050;
  background:#1b1d22;color:#F4EEE4;transform:translateX(100%);
  transition:transform .32s cubic-bezier(.2,.7,.2,1);padding:92px 28px 32px;
  display:flex;flex-direction:column;gap:6px;overflow-y:auto;border-left:3px solid var(--accent-2)}
.drawer.is-open{transform:translateX(0)}
.drawer a{text-decoration:none;color:#F4EEE4;font-family:var(--serif);font-size:26px;
  letter-spacing:.03em;text-transform:uppercase;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.14)}
.drawer a:hover,.drawer a.is-active{color:var(--accent-2)}
.drawer .drawer-cta{font-family:var(--body);font-size:16px;text-transform:none;margin-top:18px;
  background:var(--accent-2);color:var(--ink);text-align:center;border:none;padding:14px;
  font-weight:700;border-radius:4px}
.drawer .drawer-meta{margin-top:auto;font-family:var(--mono);font-size:12px;color:#b9bcc4;
  line-height:1.7;border:none;padding-top:20px}

/* =========================================================================
   PANEL SYSTEM (index) — fullscreen collage swap
   ========================================================================= */
body.panels{--header-h:72px}
body.panels main{scroll-snap-type:unset}
/* proximity (not mandatory) keeps the panel-swap feel without trapping the scroll
   position — mandatory snap fights programmatic scroll/hover and breaks deep links */
html.snap{scroll-snap-type:y proximity}
.panel{min-height:100svh;scroll-snap-align:start;scroll-snap-stop:normal;position:relative;
  display:grid;align-content:center;overflow:clip;
  padding:calc(var(--header-h) + 3vh) 0 7vh}
.panel .container{position:relative;z-index:2}

/* scattered decor layer inside panel */
.panel-decor{position:absolute;inset:0;pointer-events:none;z-index:1;overflow:clip}

/* panel head */
.panel-eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--mono);
  font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  color:var(--accent-text);margin-bottom:14px}
.panel-eyebrow::before{content:"";width:34px;height:2px;background:var(--accent-2-deep)}
.panel-title{font-family:var(--serif);text-transform:uppercase;letter-spacing:.01em;
  font-size:clamp(2.1rem,6vw,5rem);color:var(--ink)}

/* panel dots nav */
.panel-dots{position:fixed;right:clamp(10px,1.4vw,22px);top:50%;transform:translateY(-50%);
  z-index:1030;display:flex;flex-direction:column;gap:12px}
.panel-dots button{width:13px;height:13px;border-radius:50%;border:2px solid var(--ink);
  background:transparent;cursor:pointer;padding:0;transition:background .2s,transform .2s;position:relative}
.panel-dots button::after{content:attr(data-label);position:absolute;right:22px;top:50%;
  transform:translateY(-50%);white-space:nowrap;font-family:var(--mono);font-size:11px;
  background:var(--ink);color:#F4EEE4;padding:3px 8px;border-radius:3px;opacity:0;pointer-events:none;
  transition:opacity .2s}
.panel-dots button:hover::after{opacity:1}
.panel-dots button.is-active{background:var(--accent-2);transform:scale(1.25)}
@media (max-width:760px){.panel-dots{display:none}}

/* scroll cue */
.scroll-cue{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);z-index:3;
  font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--ink);display:flex;flex-direction:column;align-items:center;gap:6px;text-decoration:none}
.scroll-cue span{font-size:20px;animation:bob 1.8s ease-in-out infinite}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}

/* =========================================================================
   PANEL 1 — HERO
   ========================================================================= */
.hero{background:var(--bg)}
.hero__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:clamp(24px,4vw,56px);align-items:center}
.hero__copy{position:relative}
.hero__h1{font-family:var(--serif);text-transform:uppercase;line-height:.96;
  font-size:clamp(2.7rem, 7.4vw, 4.5rem);margin:14px 0 18px;letter-spacing:.005em}
.hero__h1 .ln{display:block}
.hero__sub{font-size:clamp(1rem,1.4vw,1.22rem);max-width:46ch;color:var(--ink-soft);margin-bottom:24px}
.hero__cta{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.hero__trust{display:flex;flex-wrap:wrap;gap:8px 10px;margin-top:22px}
.trust-badge{font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.04em;
  background:var(--surface);border:1.5px solid var(--ink);padding:6px 11px;transform:rotate(-1deg);
  box-shadow:2px 2px 0 rgba(22,24,28,.18)}
.trust-badge:nth-child(even){transform:rotate(1.4deg)}

/* hero poster wall */
.hero__wall{position:relative;min-height:clamp(340px,52vh,560px)}
.hero__poster{position:absolute;background:var(--surface);padding:10px 10px 36px;
  box-shadow:var(--shadow);border:1px solid rgba(0,0,0,.08)}
.hero__poster img{width:100%;height:100%;object-fit:cover;display:block}
.hp-1{inset:2% 14% 20% 2%;transform:rotate(-3deg);z-index:2}
.hp-2{width:48%;height:46%;right:2%;top:4%;transform:rotate(4deg);z-index:3}
.hp-3{width:44%;height:40%;right:6%;bottom:2%;transform:rotate(-2deg);z-index:4;padding-bottom:28px}
.hero__poster figcaption{position:absolute;left:10px;bottom:8px;font-family:var(--hand);
  font-size:15px;color:var(--ink)}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;
  font-weight:700;font-size:15px;text-decoration:none;padding:14px 24px;border:2px solid var(--ink);
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease;
  line-height:1.1;text-align:center}
.btn-primary{background:var(--accent);color:#fff;box-shadow:4px 4px 0 var(--ink);transform:rotate(-1deg)}
.btn-primary:hover,.btn-primary:focus-visible{background:var(--accent-2);color:var(--ink);
  transform:rotate(-1deg) translateY(-2px);box-shadow:6px 6px 0 var(--ink)}
.btn-ghost{background:var(--surface);color:var(--ink);box-shadow:4px 4px 0 rgba(22,24,28,.25)}
.btn-ghost:hover,.btn-ghost:focus-visible{background:var(--ink);color:#F4EEE4;
  transform:translateY(-2px);box-shadow:6px 6px 0 rgba(22,24,28,.3)}
.btn--lg{padding:16px 30px;font-size:16px}

/* =========================================================================
   PANEL 2 — KİMİZ (rumuz kimlik etiketleri)
   ========================================================================= */
.kimiz__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(22px,4vw,52px);
  align-items:center}
.kimiz__photo{position:relative}
.kimiz__photo img{width:100%;max-height:480px;object-fit:cover;border:1px solid rgba(0,0,0,.1)}
.id-cards{display:flex;flex-direction:column;gap:16px;max-width:520px}
.id-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-soft);
  padding:18px 20px;position:relative}
.id-card:nth-child(odd){transform:rotate(-1.2deg)}
.id-card:nth-child(even){transform:rotate(1deg)}
.id-card h3{font-family:var(--serif);font-size:1.35rem;text-transform:uppercase;letter-spacing:.02em;margin-bottom:6px}
.id-card p{margin:0;color:var(--ink-soft);font-size:.96rem}
.kimiz__lead{font-size:clamp(1.05rem,1.6vw,1.3rem);color:var(--ink);max-width:48ch}
.kimiz__lead b{color:var(--accent-text)}

/* =========================================================================
   PANEL 3 — SÜREÇ (numaralı yapışık afiş fişi)
   ========================================================================= */
.surec__list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin-top:14px}
.surec-slip{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-soft);
  padding:18px 16px 20px;position:relative;min-width:0}
.surec-slip:nth-child(1){transform:rotate(-2deg)}
.surec-slip:nth-child(2){transform:rotate(1.4deg)}
.surec-slip:nth-child(3){transform:rotate(-1deg)}
.surec-slip:nth-child(4){transform:rotate(2deg)}
.surec-slip:nth-child(5){transform:rotate(-1.6deg)}
.surec-slip__no{font-family:var(--serif);font-size:2.4rem;line-height:1;color:var(--accent);
  -webkit-text-stroke:0;display:block;margin-bottom:6px}
.surec-slip__t{font-family:var(--mono);font-weight:700;font-size:.92rem;text-transform:uppercase;
  letter-spacing:.04em;margin-bottom:7px;display:block}
.surec-slip p{font-size:.86rem;color:var(--ink-soft);margin:0}
.surec-slip__when{display:inline-block;margin-top:10px;font-family:var(--mono);font-size:11px;
  background:var(--accent-2);color:var(--ink);padding:3px 8px;transform:rotate(-1.5deg)}

/* =========================================================================
   PANEL 4 — PAFTA ARŞİVİ (katalog kareleri + fiyat etiketi)
   ========================================================================= */
.arsiv__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,26px);margin-top:14px}
.arsiv-card{position:relative;background:var(--surface);padding:10px 10px 46px;box-shadow:var(--shadow);
  border:1px solid rgba(0,0,0,.08)}
.arsiv-card:nth-child(1){transform:rotate(-1.6deg)}
.arsiv-card:nth-child(2){transform:rotate(1deg)}
.arsiv-card:nth-child(3){transform:rotate(-.6deg)}
.arsiv-card:nth-child(4){transform:rotate(1.4deg)}
.arsiv-card:nth-child(5){transform:rotate(-1.2deg)}
.arsiv-card:nth-child(6){transform:rotate(.8deg)}
.arsiv-card .ph{aspect-ratio:3/4;overflow:hidden}
.arsiv-card .ph img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.arsiv-card:hover .ph img{transform:scale(1.05)}
.arsiv-card figcaption{position:absolute;left:12px;bottom:12px;right:12px;display:flex;
  justify-content:space-between;align-items:flex-end;gap:8px}
.arsiv-card__name{font-family:var(--hand);font-size:1.05rem;color:var(--ink);line-height:1.1}
.arsiv-card__name small{display:block;font-family:var(--mono);font-size:10px;color:var(--muted)}

/* =========================================================================
   PANEL 5 — TESLİM TAKVİMİ (araç)
   ========================================================================= */
.takvim__grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:clamp(22px,3.5vw,48px);align-items:start}
.takvim__intro p{color:var(--ink-soft);max-width:44ch}
.tool{background:var(--surface);border:2px solid var(--ink);box-shadow:var(--shadow);
  padding:clamp(20px,2.4vw,30px);position:relative}
.tool legend,.tool .tool-h{font-family:var(--serif);font-size:1.4rem;text-transform:uppercase;
  letter-spacing:.02em;margin-bottom:4px}
.tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:16px 0}
.tfield{display:flex;flex-direction:column;gap:6px;min-width:0}
.tfield label{font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.05em;
  text-transform:uppercase;color:var(--ink-soft)}
.tfield input,.tfield select{font-family:var(--body);font-size:15px;padding:11px 12px;
  border:1.5px solid var(--line-strong);border-radius:4px;background:var(--paper);color:var(--ink);width:100%}
.tfield input:focus,.tfield select:focus{outline:none;border-color:var(--accent)}
.seg{display:flex;gap:8px;flex-wrap:wrap}
.seg button{flex:1;min-width:92px;font-family:var(--mono);font-size:13px;font-weight:600;
  padding:10px 8px;border:1.5px solid var(--line-strong);background:var(--paper);cursor:pointer;
  border-radius:4px;transition:.18s;text-transform:uppercase;letter-spacing:.03em}
.seg button[aria-pressed="true"]{background:var(--accent);color:#fff;border-color:var(--ink)}
.stepper{display:flex;align-items:stretch;gap:0}
.stepper button{width:44px;font-size:20px;font-weight:700;border:1.5px solid var(--line-strong);
  background:var(--paper);cursor:pointer}
.stepper button:first-child{border-radius:4px 0 0 4px}
.stepper button:last-child{border-radius:0 4px 4px 0}
.stepper input{text-align:center;border-left:0;border-right:0;border-radius:0;
  font-variant-numeric:tabular-nums;max-width:70px}
.tool-out{margin-top:18px;border-top:2px dashed var(--line-strong);padding-top:16px}
.tool-out dl{display:grid;grid-template-columns:1fr auto;gap:8px 14px;margin:0 0 12px;
  font-family:var(--mono);font-size:14px}
.tool-out dt{color:var(--ink-soft)}
.tool-out dd{margin:0;font-weight:700;text-align:right;font-variant-numeric:tabular-nums}
.tool-out .tprice{font-family:var(--serif);font-size:2rem;color:var(--accent-text)}
.tool-warn{display:none;background:#FBE6C8;border:1.5px solid var(--accent-2-deep);
  color:#7a5806;padding:11px 14px;border-radius:4px;font-size:.9rem;margin-bottom:12px}
.tool-warn.is-on{display:block}
.tool .disc{font-family:var(--mono);font-size:11px;color:var(--muted);margin-top:8px}

/* =========================================================================
   PANEL 6 — PAKETLER (3 yırtık bilet)
   ========================================================================= */
.paket__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.4vw,30px);
  margin-top:16px;align-items:start}
.ticket{position:relative;background:var(--surface);border:2px solid var(--ink);padding:24px 22px 26px;
  box-shadow:var(--shadow)}
.ticket:nth-child(1){transform:rotate(-1.4deg)}
.ticket:nth-child(2){transform:rotate(.6deg)}
.ticket:nth-child(3){transform:rotate(1.6deg)}
.ticket--feature{background:#1b1d22;color:#F4EEE4;border-color:var(--accent-2)}
.ticket--feature .ticket__price{color:var(--accent-2)}
.ticket--feature .ticket li::before{background:var(--accent-2)}
.ticket::before,.ticket::after{content:"";position:absolute;width:22px;height:22px;border-radius:50%;
  background:var(--bg);top:50%;transform:translateY(-50%)}
.ticket::before{left:-13px}
.ticket::after{right:-13px}
.ticket--feature::before,.ticket--feature::after{background:var(--bg)}
.ticket__tier{font-family:var(--mono);font-size:12px;font-weight:700;letter-spacing:.12em;
  text-transform:uppercase;color:var(--accent-text)}
.ticket--feature .ticket__tier{color:var(--accent-2)}
.ticket__price{font-family:var(--serif);font-size:2.6rem;line-height:1;margin:8px 0 2px;color:var(--accent-text)}
.ticket__price small{font-family:var(--mono);font-size:12px;font-weight:600;color:var(--muted)}
.ticket__sub{font-size:.9rem;color:var(--ink-soft);margin-bottom:14px}
.ticket--feature .ticket__sub{color:#c9ccd4}
.ticket ul{list-style:none;padding:0;margin:0 0 16px;display:flex;flex-direction:column;gap:8px}
.ticket li{position:relative;padding-left:20px;font-size:.9rem;line-height:1.4}
.ticket li::before{content:"";position:absolute;left:0;top:9px;width:9px;height:9px;border-radius:50%;
  background:var(--accent)}
.ticket li.no{opacity:.6}
.ticket li.no::before{background:transparent;border:2px solid var(--line-strong);width:8px;height:8px}
.ticket .btn{width:100%}
.ticket__note{font-family:var(--mono);font-size:11px;color:var(--muted);margin-top:10px;text-align:center}

/* =========================================================================
   PANEL 7 — JÜRİ NOTU + SSS
   ========================================================================= */
.juri__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(22px,3.5vw,48px);
  align-items:start}
.juri-notes{display:flex;flex-direction:column;gap:18px}
.juri-note{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-soft);
  padding:18px 20px;position:relative}
.juri-note:nth-child(odd){transform:rotate(-1deg)}
.juri-note:nth-child(even){transform:rotate(1deg)}
.juri-note blockquote{font-size:.98rem;line-height:1.55;color:var(--ink)}
.juri-note .scrawl{font-size:1.15rem;margin-bottom:6px}
.juri-note cite{display:block;margin-top:10px;font-family:var(--mono);font-size:12px;
  color:var(--accent-text);font-style:normal}
.stars{color:var(--accent-2-deep);letter-spacing:2px;font-size:13px}

.faq{display:flex;flex-direction:column;gap:10px}
.faq-item{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-soft)}
.faq-item summary{cursor:pointer;list-style:none;padding:15px clamp(16px,2vw,22px);
  font-weight:700;font-size:.98rem;display:flex;justify-content:space-between;gap:14px;align-items:center}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";font-family:var(--serif);font-size:1.5rem;color:var(--accent);
  transition:transform .3s ease;line-height:1}
.faq-item[open] summary::after{transform:rotate(45deg)}
/* JS animates height between 0 and the measured content height (see main.js).
   Padding lives on the inner <p> so the measured height stays exact. The no-js
   rule below keeps the accordion usable (and the interpolate-size keyword
   animation as a fallback) when scripting is off. */
.faq-item > .answer{height:0;overflow:hidden;
  transition:height 320ms cubic-bezier(.2,.7,.2,1)}
.faq-item > .answer p{margin:0;padding:2px clamp(16px,2vw,22px) 20px;font-size:.93rem;color:var(--ink-soft)}
html.no-js .faq-item[open] > .answer{height:auto}
@media (prefers-reduced-motion:reduce){.faq-item > .answer{transition:none}}

/* =========================================================================
   PANEL 8 — KÜNYE / CTA (daktilo dipnot)
   ========================================================================= */
.kunye__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,52px);
  align-items:center}
.kunye__card{background:var(--surface);border:2px solid var(--ink);box-shadow:var(--shadow);
  padding:clamp(22px,3vw,34px);position:relative}
.kunye h2{font-family:var(--serif);font-size:clamp(2rem,4.5vw,3.4rem);text-transform:uppercase;
  line-height:1;margin-bottom:14px}
.kunye__meta{font-family:var(--mono);font-size:13px;line-height:1.9;color:var(--ink-soft)}
.kunye__meta a{color:var(--accent-text);text-decoration:none}
.kunye__meta b{color:var(--ink)}

/* =========================================================================
   FOOTER
   ========================================================================= */
.site-footer{background:#1b1d22;color:#cfd2d8;scroll-snap-align:end;scroll-snap-stop:normal;
  border-top:4px solid var(--accent-2);position:relative;overflow:hidden}
.footer-inner{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:clamp(22px,3vw,44px);
  padding-block:clamp(44px,6vw,72px)}
.footer-col h4{font-family:var(--serif);font-size:1.1rem;text-transform:uppercase;letter-spacing:.04em;
  color:#fff;margin-bottom:14px}
.footer-col .scrap{background:#24262c;border-color:rgba(255,255,255,.08);color:#cfd2d8;box-shadow:none;
  padding:18px}
.footer-col a{color:#cfd2d8;text-decoration:none;display:block;padding:5px 0;font-size:.92rem}
.footer-col a:hover{color:var(--accent-2)}
.footer-brand .brand__name{color:#fff}
.footer-about{font-size:.9rem;line-height:1.7;color:#aeb2ba;margin-top:10px}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding-block:20px;
  display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:space-between;align-items:center;
  font-family:var(--mono);font-size:12px;color:#9397a0}
.footer-legal a{display:inline;color:#9397a0;text-decoration:none;margin-right:16px}
.footer-legal a:hover{color:var(--accent-2)}
.footer-stamp{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;
  border:2px solid var(--accent-2);color:var(--accent-2);padding:5px 10px;transform:rotate(-3deg);
  display:inline-block}
@media (max-width:760px){.footer-inner{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.footer-inner{grid-template-columns:1fr}}

/* =========================================================================
   SUBPAGES (page layout, no snap)
   ========================================================================= */
body.page{background:var(--bg)}
.page main{padding-top:var(--header-h)}
.page-hero{padding-block:clamp(48px,7vw,96px) clamp(30px,4vw,52px);position:relative;overflow:hidden;
  background:var(--bg)}
.page-hero .container{position:relative;z-index:2}
.page-hero .panel-eyebrow{margin-bottom:12px}
.page-hero h1{font-family:var(--serif);text-transform:uppercase;font-size:clamp(2.4rem, 6vw, 4.5rem);
  line-height:1;letter-spacing:.01em}
.page-hero p{max-width:60ch;margin-top:16px;color:var(--ink-soft);font-size:1.05rem}
.page-section{padding-block:var(--sec-pad)}
.page-section.alt{background:var(--paper)}
.prose{max-width:74ch}
/* When .prose is also the .container, keep the container centered (so its left
   edge lines up with the page-hero heading) and cap the reading width per child
   — otherwise the whole block centers in the viewport and looks detached. */
.page-section > .container.prose{max-width:var(--maxw)}
.page-section > .container.prose > *{max-width:74ch}
/* anchor targets clear the fixed header (e.g. iletisim.html#form) */
:target{scroll-margin-top:calc(var(--header-h) + 20px)}
.prose h2{font-family:var(--serif);font-size:clamp(1.5rem,3vw,2.2rem);text-transform:uppercase;
  margin:1.6em 0 .5em;letter-spacing:.01em}
.prose h2:first-child{margin-top:0}
.prose h3{font-family:var(--mono);font-size:1.05rem;font-weight:700;margin:1.4em 0 .4em;text-transform:uppercase;letter-spacing:.03em}
.prose p,.prose li{color:var(--ink-soft)}
.prose ul{padding-left:22px}
.prose li{margin-bottom:.4em}
.prose a{color:var(--accent-text)}
.prose .updated{font-family:var(--mono);font-size:12px;color:var(--muted);margin-bottom:2em;
  display:inline-block;border:1px solid var(--line);padding:5px 10px}

/* table */
.table-scroll{display:block;width:100%;max-width:100%;min-width:0;overflow-x:auto;
  -webkit-overflow-scrolling:touch;margin:18px 0;border:1px solid var(--line);border-radius:6px}
.table-scroll > table{margin:0 !important;min-width:480px;width:100%;border-collapse:collapse}
:where(*:has(> .table-scroll),*:has(> * > .table-scroll),*:has(> * > * > .table-scroll)){min-width:0}
table th,table td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--line);font-size:.92rem}
table th{background:var(--paper);font-family:var(--mono);font-size:12px;text-transform:uppercase;
  letter-spacing:.04em}
table tbody tr:last-child td{border-bottom:0}

/* =========================================================================
   CONTACT PAGE
   ========================================================================= */
.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.contact-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-soft);
  padding:22px;position:relative;transition:transform .22s ease,box-shadow .22s ease}
.contact-card:nth-child(3n+1){transform:rotate(-1deg)}
.contact-card:nth-child(3n+2){transform:rotate(.8deg)}
.contact-card:hover{transform:translateY(-4px) rotate(0deg);box-shadow:var(--shadow)}
.contact-card .ch{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--accent-text);margin-bottom:8px;display:block}
.contact-card .val{font-family:var(--serif);font-size:1.3rem;color:var(--ink);text-decoration:none;
  display:block;word-break:break-word}
.contact-card a.val:hover{color:var(--accent-text)}
.contact-card .sub{font-size:.85rem;color:var(--muted);margin-top:6px}

.hours-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-top:8px}
.hours-grid .day{background:var(--surface);border:1px solid var(--line);padding:12px 14px;
  font-family:var(--mono);font-size:13px}
.hours-grid .day b{display:block;text-transform:uppercase;font-size:11px;color:var(--accent-text);margin-bottom:3px}
.hours-grid .day .t{font-variant-numeric:tabular-nums}
.hours-grid .day.today{background:var(--accent-2);border-color:var(--ink)}

/* =========================================================================
   RESPONSIVE CARD ROWS (team / sitemap / stats)
   Replaces per-page INLINE grid-template-columns overrides — inline styles
   can't be overridden by media queries, so those rows stayed multi-column
   and cramped on phones. These collapse properly.
   ========================================================================= */
.cards-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,26px);margin-top:14px}
.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:18px}
@media (max-width:900px){
  .cards-3{grid-template-columns:1fr 1fr}
  .stats-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:600px){
  .cards-3{grid-template-columns:1fr;max-width:460px;margin-inline:auto}
}
@media (max-width:480px){
  .stats-grid{grid-template-columns:1fr;max-width:420px;margin-inline:auto}
}

/* =========================================================================
   FORMS
   ========================================================================= */
.form-wrap{background:var(--surface);border:2px solid var(--ink);box-shadow:var(--shadow);
  padding:clamp(22px,3vw,36px);position:relative}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.field{display:flex;flex-direction:column;gap:6px;min-width:0}
.field.full{grid-column:1/-1}
.field label{font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.04em;
  text-transform:uppercase;color:var(--ink-soft)}
.field input,.field select,.field textarea{font-family:var(--body);font-size:15px;padding:12px 13px;
  border:1.5px solid var(--line-strong);border-radius:4px;background:var(--paper);color:var(--ink);width:100%}
.field textarea{min-height:130px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--accent);
  box-shadow:0 0 0 3px rgba(22,62,140,.12)}
.field.kvkk{flex-direction:row;align-items:flex-start;gap:10px;grid-column:1/-1}
.field.kvkk label{text-transform:none;font-family:var(--body);font-size:.9rem;color:var(--ink-soft);
  font-weight:400;letter-spacing:0}
.field input[type="checkbox"]{appearance:auto;-webkit-appearance:auto;width:18px;height:18px;
  min-width:18px;min-height:18px;padding:0;border:0;margin:3px 0 0;accent-color:var(--accent)}
.form-wrap .btn{margin-top:4px}
@media (max-width:640px){.form-grid{grid-template-columns:1fr}}

/* thank you */
.thanks{min-height:60vh;display:grid;place-items:center;text-align:center;padding-block:var(--sec-pad)}
.thanks .scrap{max-width:560px}
.thanks h1{font-family:var(--serif);font-size:clamp(2.2rem, 6vw, 4rem);text-transform:uppercase;margin-bottom:14px}

/* 404 */
.nf{min-height:72vh;display:grid;place-items:center;text-align:center;padding-block:var(--sec-pad)}
.nf h1{font-family:var(--serif);font-size:clamp(5rem, 20vw, 4.5rem);line-height:.9;color:var(--accent)}

/* =========================================================================
   COOKIE BANNER
   ========================================================================= */
.cookie-banner{position:fixed;bottom:16px;left:16px;right:16px;max-width:520px;margin:0 auto;
  background:var(--surface);border:2px solid var(--ink);box-shadow:var(--shadow);padding:20px 22px;
  transform:translateY(140%);opacity:0;transition:transform 280ms cubic-bezier(.2,.7,.2,1),opacity 240ms;
  z-index:9999;border-radius:6px}
.cookie-banner.is-visible{transform:translateY(0);opacity:1}
.cookie-banner h2{font-family:var(--serif);font-size:1.3rem;text-transform:uppercase;margin-bottom:6px}
.cookie-banner p{font-size:.88rem;color:var(--ink-soft);margin-bottom:14px}
.cookie-banner p a{color:var(--accent-text)}
.cookie-actions{display:flex;flex-wrap:wrap;gap:10px}
.cookie-actions button{flex:1;min-width:92px;min-height:44px;font-weight:700;font-size:14px;cursor:pointer;
  border:2px solid var(--ink);border-radius:4px;padding:11px 14px;transition:.18s}
.cookie-actions .c-accept{background:var(--accent);color:#fff}
.cookie-actions .c-accept:hover{background:var(--accent-2);color:var(--ink)}
/* "Reddet" carries the same visual weight as "Kabul et" (solid, not a weak outline)
   so the reject choice is equally easy to find — consent-fairness, not a dark pattern */
.cookie-actions .c-reject{background:var(--ink);color:#fff}
.cookie-actions .c-reject:hover{background:var(--accent-2);color:var(--ink)}
.cookie-actions .c-settings{background:var(--paper);color:var(--ink);flex-basis:100%}
.cookie-actions .c-settings:hover{background:var(--kraft)}
@media (min-width:768px){.cookie-banner{left:24px;right:auto;max-width:420px}}

/* =========================================================================
   REVEAL / MOTION
   ========================================================================= */
.reveal{opacity:0;transform:translateY(28px);
  transition:opacity 600ms cubic-bezier(.2,.7,.2,1),transform 600ms cubic-bezier(.2,.7,.2,1);
  transition-delay:calc(var(--i,0) * 80ms)}
.reveal.is-in{opacity:1;transform:none}
html.no-js .reveal{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  .reveal{opacity:1 !important;transform:none !important;transition:none !important}
  .scroll-cue span{animation:none}
}

/* paper breathing — tematik ambient (afiş hafif dalgalanma) */
@keyframes paper-breathe{0%,100%{transform:rotate(var(--rot,-3deg)) translateY(0)}
  50%{transform:rotate(var(--rot,-3deg)) translateY(-5px)}}
.hero__poster{animation:paper-breathe 9s ease-in-out infinite}
.hp-1{--rot:-3deg}.hp-2{--rot:4deg;animation-delay:-3s}.hp-3{--rot:-2deg;animation-delay:-5s}
@media (prefers-reduced-motion:reduce){.hero__poster{animation:none}}

/* damga oturma reveal (kesik) */
@keyframes stamp-in{0%{opacity:0;transform:rotate(-11deg) scale(1.4)}
  60%{opacity:.9;transform:rotate(-11deg) scale(.94)}100%{opacity:.82;transform:rotate(-11deg) scale(1)}}
.reveal.is-in .stamp{animation:stamp-in .5s ease both}

/* =========================================================================
   RESPONSIVE
   ========================================================================= */
@media (max-width:1023px){
  .hero__grid{grid-template-columns:1fr;gap:28px}
  .hero__wall{min-height:360px;order:-1}
  .kimiz__grid,.takvim__grid,.juri__grid,.kunye__grid{grid-template-columns:1fr}
  .surec__list{grid-template-columns:repeat(2,1fr)}
  .arsiv__grid{grid-template-columns:repeat(2,1fr)}
  .paket__grid{grid-template-columns:1fr;max-width:460px;margin-inline:auto}
}
@media (max-width:760px){
  html.snap{scroll-snap-type:none}
  .panel{min-height:auto;scroll-snap-align:none;scroll-snap-stop:normal;
    padding:calc(var(--header-h) + 32px) 0 48px}
  .site-footer{scroll-snap-align:none}
  .hero__h1{font-size:clamp(2.4rem, 11vw, 3.4rem)}
  .scroll-cue{display:none}
  .hero__poster{transform:rotate(var(--rot,-2deg))}
  .hp-1{inset:2% 20% 24% 2%}
  /* free-floating text decor (percent-positioned) can land on top of body copy
     on narrow screens — keep only the corner stamps/reg-marks as atmosphere */
  .panel-decor .scrawl,.panel-decor .rumuz-label{display:none}
}
@media (max-width:560px){
  .surec__list{grid-template-columns:1fr}
  .arsiv__grid{grid-template-columns:1fr 1fr}
  .tool-grid{grid-template-columns:1fr}
  .form-grid{grid-template-columns:1fr}
  .surec-slip,.id-card,.arsiv-card,.ticket,.juri-note{transform:none !important}
}
@media (max-width:400px){
  :root{--header-h:64px}
  .arsiv__grid{grid-template-columns:1fr}
  .brand__name{font-size:16px}
}

/* =========================================================================
   INTERACTION POLISH — "pick up the pinned scrap" hover
   (straighten + lift the tilted collage pieces; theme-consistent)
   ========================================================================= */
.surec-slip,.id-card,.ticket,.juri-note,.arsiv-card,.kimiz__photo,.hero__poster,.kunye__card{
  transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s cubic-bezier(.2,.7,.2,1)}

@media (hover:hover){
  .surec-slip:hover,.id-card:hover,.juri-note:hover{
    transform:translateY(-5px) rotate(0deg);box-shadow:var(--shadow);z-index:3}
  .ticket:hover{
    transform:translateY(-7px) rotate(0deg);
    box-shadow:0 30px 54px -28px rgba(22,24,28,.62)}
  .arsiv-card:hover,.kimiz__photo:hover{
    transform:translateY(-6px) rotate(0deg);
    box-shadow:0 30px 54px -28px rgba(22,24,28,.6)}
  /* warm print-ink glow under the primary CTA on hover */
  .btn-primary:hover,.btn-primary:focus-visible,
  .nav-desktop a.nav-cta:hover,header a.nav-cta:hover{
    box-shadow:6px 6px 0 var(--ink),0 10px 26px -10px rgba(240,180,30,.75)}
  /* FAQ summary nudges on hover */
  .faq-item summary:hover{color:var(--accent-text)}
  .faq-item:hover{box-shadow:var(--shadow)}
  /* sitemap / link cards (.scrap in a card row) lift like the other collage
     pieces — straighten, rise, and pick up a blue-tinted print shadow */
  .cards-3 .scrap{
    transition:transform .24s cubic-bezier(.2,.7,.2,1),box-shadow .24s cubic-bezier(.2,.7,.2,1)}
  .cards-3 .scrap:hover{transform:translateY(-6px) rotate(0deg);
    box-shadow:0 26px 48px -26px rgba(22,62,140,.55);z-index:3}
}

/* sticker / cut-out micro-life: price tags peel up with their card, trust badges
   straighten on hover — small theme-consistent touches, not generic UI motion */
@media (hover:hover) and (prefers-reduced-motion:no-preference){
  .price-tag{transition:transform .28s cubic-bezier(.2,.7,.2,1),box-shadow .28s ease}
  .arsiv-card:hover .price-tag{transform:rotate(-3deg) translateY(-2px) scale(1.05);
    box-shadow:0 10px 18px -10px rgba(22,24,28,.5)}
  .trust-badge{transition:transform .2s cubic-bezier(.2,.7,.2,1),box-shadow .2s ease}
  .trust-badge:hover{transform:translateY(-3px) rotate(0deg);
    box-shadow:3px 4px 0 rgba(22,24,28,.26)}
  .contact-card .val{transition:color .18s ease}
}

/* hero posters settle flat on hover (desktop), pausing the breathing drift */
@media (hover:hover) and (prefers-reduced-motion:no-preference){
  .hero__poster:hover{animation-play-state:paused;transform:rotate(0deg) translateY(-6px);z-index:9;
    box-shadow:0 30px 56px -26px rgba(22,24,28,.6)}
}

/* stronger, theme-tinted focus ring for keyboard users */
:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
a:focus-visible,button:focus-visible,.btn:focus-visible,summary:focus-visible{
  outline:3px solid var(--accent);outline-offset:3px;
  box-shadow:0 0 0 6px rgba(22,62,140,.18)}

@media (prefers-reduced-motion:reduce){
  .surec-slip,.id-card,.ticket,.juri-note,.arsiv-card,.kimiz__photo,
  .hero__poster,.kunye__card,.contact-card,.cards-3 .scrap{transition:none}
}

.scroll-progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--accent);z-index:9998;transition:width 80ms linear;pointer-events:none}


/* =========================================================================
   COLLAGE KIT (kk-*) — site palette hooks + reconciliation
   styles.css loads BEFORE collage-kit.css, so variable overrides use
   :root:root (specificity 0,2,0) to beat the kit's :root defaults, and
   reconciliation rules carry specificity > the kit rule they adjust.
   ========================================================================= */
:root:root{
  --kk-paper:#F4EEE4;
  --kk-paper-2:#E7DDC9;
  --kk-kraft:#D9C8A8;
  --kk-cork:#B2894F;
  --kk-ink:#16181C;
  --kk-accent:#163E8C;
  --kk-tape:rgba(240,180,30,.60);
  --kk-hand-font:var(--hand);
  --kk-stamp-font:var(--serif);
}
/* let kit paper beat flat site tiles (drop site borders/blur on scraps) */
.panel .kk-scrap,.page main .kk-scrap{border:0;backdrop-filter:none}
/* header: paper plate logo keeps crisp, no heavy radius */
.site-header .brand.kk-scrap{border-radius:3px}
/* cork panel heading contrast (dark ink on brown) */
.kk-cork > .container .panel-eyebrow,
.kk-cork > .container .panel-title{color:var(--kk-ink)}
/* künye finale: both columns are light paper notes pinned on the dark wall,
   so their text stays dark (kit handles it) — no relight needed here. */
/* footer: contact column becomes a light paper note pinned to the dark wall */
.site-footer .footer-col .scrap.kk-scrap{
  background:#F4ECD8;color:#221c17;border-color:transparent;
  box-shadow:2px 6px 16px rgba(0,0,0,.45)}
.site-footer .footer-col .scrap.kk-scrap p{color:#221c17}

/* autofit(panels): every panel fits one screen */
@media (min-width:761px){#arsiv{padding-top:calc(var(--header-h,72px) + clamp(12px,2.4vh,32px)) !important;padding-bottom:clamp(20px,3.2vh,44px) !important}}

@media (max-width:760px){#hero,#kimiz,#surec,#arsiv,#takvim,#paketler,#sss,#kunye{padding-top:calc(var(--header-h,72px) + clamp(12px,2.4vh,32px)) !important;padding-bottom:clamp(20px,3.2vh,44px) !important}}
@media (max-width:760px){#hero{min-height:auto !important;scroll-snap-align:none !important;scroll-snap-stop:normal !important}}
@media (max-width:760px){#kimiz{min-height:auto !important;scroll-snap-align:none !important;scroll-snap-stop:normal !important}}
@media (max-width:760px){#surec{min-height:auto !important;scroll-snap-align:none !important;scroll-snap-stop:normal !important}}
@media (max-width:760px){#arsiv{min-height:auto !important;scroll-snap-align:none !important;scroll-snap-stop:normal !important}}
@media (max-width:760px){#takvim{min-height:auto !important;scroll-snap-align:none !important;scroll-snap-stop:normal !important}}
@media (max-width:760px){#paketler{min-height:auto !important;scroll-snap-align:none !important;scroll-snap-stop:normal !important}}
@media (max-width:760px){#sss{min-height:auto !important;scroll-snap-align:none !important;scroll-snap-stop:normal !important}}
@media (max-width:760px){#kunye{min-height:auto !important;scroll-snap-align:none !important;scroll-snap-stop:normal !important}}

/* autofix(panels) */
html:has(.panel){scroll-snap-type:y mandatory !important;scroll-padding-top:var(--header-h,72px)}
html:not(:has(.panel)){scroll-snap-type:none !important}
.panel{scroll-snap-stop:always}
@media (max-width:760px){html:has(.panel){scroll-snap-type:y proximity !important}}

/* panels that cannot fit a phone screen: let them scroll normally instead of clipping */
@media (max-width:760px){#sss{min-height:auto !important;scroll-snap-align:none !important;scroll-snap-stop:normal !important;padding-top:calc(var(--header-h,72px) + clamp(16px,4vh,40px)) !important;padding-bottom:clamp(48px,9vh,80px) !important}}

/* панель выше экрана: mandatory-snap заблокировал бы прокрутку — proximity */
@media (min-width:761px){html:has(.panel){scroll-snap-type:y proximity !important}}

@media (max-width:760px){html:has(.panel){scroll-snap-type:y proximity !important}}

/* autofix(contrast): текст, не проходивший WCAG на своей подложке */
footer.site-footer.kk-dark b{color:#F4ECD8 !important}   /* 1.51 -> 14.55 */
section.page-hero.kk-paper span.stamp.stamp--gold{color:#1E1710 !important}   /* 2.91 -> 15.35 */
#hero span.stamp.stamp--gold{color:#1E1710 !important}   /* 2.91 -> 15.35 */
#surec span.stamp.stamp--gold{color:#1E1710 !important}   /* 2.04 -> 10.78 */
#takvim span.stamp.stamp--gold{color:#1E1710 !important}   /* 2.91 -> 15.35 */
article.ticket.ticket--feature small{color:#F4ECD8 !important}   /* 2.64 -> 14.32 */
article.ticket.ticket--feature p.ticket__note{color:#F4ECD8 !important}   /* 2.64 -> 14.32 */
div.scrap.scrap--tilt-l span.stamp.stamp--gold{color:#1E1710 !important}   /* 2.91 -> 15.35 */

/* архив: карточки в один ряд — панель помещается в экран */
@media (min-width:1100px){
  #arsiv .panel-title{font-size:clamp(1.9rem,3.4vw,2.8rem);line-height:1.06;margin-bottom:8px}
  #arsiv .arsiv__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(10px,1.1vw,16px)}
  #arsiv .arsiv-card{max-height:min(56vh,500px)}
  #arsiv .arsiv-card img{max-height:min(32vh,290px);object-fit:cover}
  #arsiv .arsiv-card p{font-size:.9rem;line-height:1.4}
}

/* autofit(panels): every panel fits one screen */
@media (min-width:761px){#arsiv{padding-top:calc(var(--header-h,72px) + clamp(12px,2.4vh,32px)) !important;padding-bottom:clamp(20px,3.2vh,44px) !important}}

@media (max-width:760px){#hero,#kimiz,#surec,#arsiv,#takvim,#paketler,#sss,#kunye{padding-top:calc(var(--header-h,72px) + clamp(12px,2.4vh,32px)) !important;padding-bottom:clamp(20px,3.2vh,44px) !important}}
@media (max-width:760px){#hero{min-height:auto !important;scroll-snap-align:none !important;scroll-snap-stop:normal !important}}
@media (max-width:760px){#kimiz{min-height:auto !important;scroll-snap-align:none !important;scroll-snap-stop:normal !important}}
@media (max-width:760px){#surec{min-height:auto !important;scroll-snap-align:none !important;scroll-snap-stop:normal !important}}
@media (max-width:760px){#arsiv{min-height:auto !important;scroll-snap-align:none !important;scroll-snap-stop:normal !important}}
@media (max-width:760px){#takvim{min-height:auto !important;scroll-snap-align:none !important;scroll-snap-stop:normal !important}}
@media (max-width:760px){#paketler{min-height:auto !important;scroll-snap-align:none !important;scroll-snap-stop:normal !important}}
@media (max-width:760px){#sss{min-height:auto !important;scroll-snap-align:none !important;scroll-snap-stop:normal !important}}
@media (max-width:760px){#kunye{min-height:auto !important;scroll-snap-align:none !important;scroll-snap-stop:normal !important}}
@media (min-width:1100px){
  #arsiv .arsiv-card{max-height:min(46vh,420px)}
  #arsiv .arsiv-card img{max-height:min(24vh,220px)}
  #arsiv .arsiv-card figcaption,#arsiv .arsiv-card p{font-size:.86rem;line-height:1.35}
}

/* autofit(panels): every panel fits one screen */
@media (min-width:761px){#arsiv{padding-top:calc(var(--header-h,72px) + clamp(12px,2.4vh,32px)) !important;padding-bottom:clamp(20px,3.2vh,44px) !important}}
@media (min-width:761px){#arsiv{min-height:auto !important;scroll-snap-align:none !important;scroll-snap-stop:normal !important}}

@media (max-width:760px){#hero,#kimiz,#surec,#arsiv,#takvim,#paketler,#sss,#kunye{padding-top:calc(var(--header-h,72px) + clamp(12px,2.4vh,32px)) !important;padding-bottom:clamp(20px,3.2vh,44px) !important}}
@media (max-width:760px){#hero{min-height:auto !important;scroll-snap-align:none !important;scroll-snap-stop:normal !important}}
@media (max-width:760px){#kimiz{min-height:auto !important;scroll-snap-align:none !important;scroll-snap-stop:normal !important}}
@media (max-width:760px){#surec{min-height:auto !important;scroll-snap-align:none !important;scroll-snap-stop:normal !important}}
@media (max-width:760px){#arsiv{min-height:auto !important;scroll-snap-align:none !important;scroll-snap-stop:normal !important}}
@media (max-width:760px){#takvim{min-height:auto !important;scroll-snap-align:none !important;scroll-snap-stop:normal !important}}
@media (max-width:760px){#paketler{min-height:auto !important;scroll-snap-align:none !important;scroll-snap-stop:normal !important}}
@media (max-width:760px){#sss{min-height:auto !important;scroll-snap-align:none !important;scroll-snap-stop:normal !important}}
@media (max-width:760px){#kunye{min-height:auto !important;scroll-snap-align:none !important;scroll-snap-stop:normal !important}}
