/* self-hosted fonts (restored after polish strip) */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: italic;
  font-weight: 400;
  font-display: optional;
  src: url(../fonts/IBMPlexMono-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-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: italic;
  font-weight: 400;
  font-display: optional;
  src: url(../fonts/IBMPlexMono-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: 'IBM Plex Mono';
  font-style: italic;
  font-weight: 600;
  font-display: optional;
  src: url(../fonts/IBMPlexMono-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-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: italic;
  font-weight: 600;
  font-display: optional;
  src: url(../fonts/IBMPlexMono-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: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: optional;
  src: url(../fonts/IBMPlexMono-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-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: optional;
  src: url(../fonts/IBMPlexMono-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: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: optional;
  src: url(../fonts/IBMPlexMono-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-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: optional;
  src: url(../fonts/IBMPlexMono-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: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 600;
  font-display: optional;
  src: url(../fonts/IBMPlexMono-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-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 600;
  font-display: optional;
  src: url(../fonts/IBMPlexMono-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: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 700;
  font-display: optional;
  src: url(../fonts/IBMPlexMono-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-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 700;
  font-display: optional;
  src: url(../fonts/IBMPlexMono-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;
}
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: italic;
  font-weight: 400;
  font-stretch: 100%;
  font-display: optional;
  src: url(../fonts/IBMPlexSans-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-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: italic;
  font-weight: 400;
  font-stretch: 100%;
  font-display: optional;
  src: url(../fonts/IBMPlexSans-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: 'IBM Plex Sans';
  font-style: italic;
  font-weight: 600;
  font-stretch: 100%;
  font-display: optional;
  src: url(../fonts/IBMPlexSans-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-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: italic;
  font-weight: 600;
  font-stretch: 100%;
  font-display: optional;
  src: url(../fonts/IBMPlexSans-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: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: optional;
  src: url(../fonts/IBMPlexSans-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-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: optional;
  src: url(../fonts/IBMPlexSans-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: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: optional;
  src: url(../fonts/IBMPlexSans-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-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: optional;
  src: url(../fonts/IBMPlexSans-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: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: optional;
  src: url(../fonts/IBMPlexSans-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-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: optional;
  src: url(../fonts/IBMPlexSans-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: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: optional;
  src: url(../fonts/IBMPlexSans-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-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: optional;
  src: url(../fonts/IBMPlexSans-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;
}

/* local alias so IBM Plex Mono is reachable under a short name */
@font-face { font-family:"Plex Mono"; src:local("IBM Plex Mono"); font-weight:400 700; font-display:optional; }

/* ============================================================
   KUPÜRHANE — Medya Takip / Basın Kupürü Servisi
   LUXURY WALL-TO-WALL NEWSPRINT COLLAGE
   Palette: aged bone/ivory newsprint ground + deep press-ink
   + exactly ONE metallic (antique gold-foil). No loud primaries.
   Display: high-contrast serif (Georgia).  Labels/dateline/tickers: IBM Plex Mono.
   Body: IBM Plex Sans.  Signature mechanic: MANŞET cut-letter ransom assembly.
   ============================================================ */

:root{
  /* ---- warm aged newsprint board ---- */
  --bg:#ECE3D1;              /* aged newsprint bone */
  --surface:#E5DAC3;         /* champagne clipping card */
  --surface-2:#DBCEB2;       /* deeper bone */
  --surface-3:#D2C3A2;
  --paper-a:#EBE1CC; --paper-b:#E1D5BB; --paper-c:#F2EAD6; --paper-d:#D6C7A5;
  --paper-deep:#CFC0A0;

  --ink:#181510;            /* deep press-ink ground */
  --ink-2:#241E16;
  --ink-soft:#3A332A;
  --ink-faint:#6C6252;
  --muted:#6C6252;
  --label:#7A6F5C;

  /* THE one metallic — antique gold-foil */
  --gold:#B0862F;
  --gold-deep:#8C6A28;
  --gold-hi:#E7CE94;
  --gold-soft:#C9A867;
  --accent:var(--gold);
  --accent-hi:#C9A24B;
  --accent-text:#8A6522;    /* gold-brown, legible on bone (AA) */
  --accent-2:#4A4038;       /* restrained deep slate (sparing depth) */
  --accent2:#4A4038; --accent2-text:#4A4038;

  --line:rgba(24,21,16,.15);
  --line-strong:rgba(24,21,16,.28);
  --line-amber:rgba(176,134,47,.5);
  --gold-line:rgba(176,134,47,.5);

  --tissue:rgba(255,251,242,.5);
  --foil:linear-gradient(135deg,#8C6A28 0%,#C9A867 26%,#E7CE94 46%,#B0862F 62%,#8C6A28 100%);
  --foil-soft:linear-gradient(135deg,#B0862F,#E7CE94 50%,#9C7A30);
  --silk-ink:#2A2320; --silk-bone:#E1D6C0; --silk-slate:#4A4038;
  --hand:#7A5F26;

  --header-h:76px;
  --maxw:1180px; --wrap:1180px;
  --pad:clamp(16px,4vw,36px);

  --mono:"IBM Plex Mono","Plex Mono",ui-monospace,"SFMono-Regular",Consolas,monospace;
  --sans:"IBM Plex Sans",-apple-system,"Segoe UI",Roboto,sans-serif;
  --body:var(--sans);
  --serif:Georgia,"Times New Roman","Palatino Linotype",serif;

  --mx:50%; --my:50%; --sheen:0;
  interpolate-size: allow-keywords;
}

/* ---- sticky-fix: clip (NOT hidden) so position:sticky pinning survives ---- */
*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; -webkit-text-size-adjust:100%; overflow-x:clip; overflow-y:visible; max-width:100vw; }
body{ overflow-x:clip; overflow-y:visible; max-width:100vw; margin:0; }
@media (prefers-reduced-motion:reduce){ html{ scroll-behavior:auto; } }

body{
  background-color:var(--bg);
  color:var(--ink);
  font-family:var(--sans);
  font-weight:400; font-size:16px; line-height:1.62;
  letter-spacing:.003em;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
  /* wall-to-wall newsprint substrate: halftone dots + faint column grid + gold aura */
  background-image:
    radial-gradient(rgba(24,21,16,.05) 20%, transparent 22%),
    radial-gradient(120% 80% at 6% 0%, rgba(176,134,47,.06), transparent 46%),
    radial-gradient(120% 90% at 96% 100%, rgba(24,21,16,.06), transparent 52%),
    linear-gradient(rgba(24,21,16,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(24,21,16,.04) 1px, transparent 1px);
  background-size:5px 5px, 100% 100%, 100% 100%, 100% 34px, 33.333% 100%;
  background-attachment:fixed, scroll, scroll, scroll, fixed;
}
body::before{
  content:""; position:fixed; inset:0; z-index:1; pointer-events:none; mix-blend-mode:multiply;
  background:
    radial-gradient(120% 80% at 12% -8%, rgba(176,134,47,.06), transparent 58%),
    radial-gradient(120% 80% at 100% 108%, rgba(74,64,56,.06), transparent 60%);
  opacity:.8;
}

figure,figcaption,blockquote,dl,dd{ margin:0; }
img{ display:block; max-width:100%; height:auto; }
p{ overflow-wrap:anywhere; }

h1,h2,h3,h4,h5{
  font-family:var(--serif); font-weight:700; font-style:italic;
  line-height:1.12; letter-spacing:-.012em; margin:0 0 .5em; color:var(--ink);
}

a{ color:var(--accent-text); text-decoration:none; }
a:hover{ color:var(--gold-deep); }

::selection{ background:var(--gold); color:#1a1206; }
:focus-visible{ outline:2px solid var(--gold); outline-offset:3px; border-radius:2px; }

.container{ width:100%; max-width:var(--maxw); margin-inline:auto; padding-inline:var(--pad); position:relative; z-index:3; }
main{ padding-top:var(--header-h); }
section{ position:relative; }
main [id]{ scroll-margin-top:calc(var(--header-h) + 16px); }

.skip-link{ position:absolute; left:-9999px; top:8px; z-index:10000; background:var(--ink); color:var(--bg);
  padding:10px 16px; font-family:var(--mono); font-size:.85rem; font-weight:600; border-radius:3px; }
.skip-link:focus{ left:12px; }

/* mono eyebrow / label */
.eyebrow{
  font-family:var(--mono); font-weight:600; font-style:normal; font-size:.72rem;
  letter-spacing:.24em; text-transform:uppercase; color:var(--accent-text);
  display:inline-flex; align-items:center; gap:.8ch; margin:0 0 1rem;
}
.eyebrow::before{ content:""; width:26px; height:2px; background:var(--gold); }
.mono-tag{ font-family:var(--mono); font-size:.66rem; letter-spacing:.16em; text-transform:uppercase; color:var(--accent-text); }
.lead{ font-size:clamp(1.04rem,2.1vw,1.24rem); color:var(--ink-soft); }

/* gold-foil highlighted words inside headings (couture cut-strip) */
.rk{ position:relative; display:inline-block; padding:0 .12em; color:#2E2410; font-style:normal; }
.rk::before{ content:""; position:absolute; inset:-.04em -.02em; z-index:-1; background:var(--foil);
  transform:rotate(-1.1deg); clip-path:polygon(2% 14%,98% 5%,100% 82%,96% 98%,3% 93%,0 22%); opacity:.95;
  box-shadow:0 3px 10px -5px rgba(24,21,16,.4); }
.rk.ink{ color:var(--gold-hi); }
.rk.ink::before{ background:linear-gradient(135deg,#241E16,#3A332A); }

/* ============================================================ HEADER / MASTHEAD */
.site-header{
  position:fixed; top:0; left:0; right:0; z-index:1080; height:var(--header-h);
  display:flex; align-items:center;
  background:rgba(236,227,209,.9); backdrop-filter:blur(10px) saturate(1.05);
  border-bottom:1px solid transparent;
  transition:height .24s ease, background .24s ease, box-shadow .24s ease;
}
.site-header.is-scrolled{ height:62px; background:rgba(236,227,209,.98);
  border-bottom:1px solid var(--line); box-shadow:0 8px 24px -18px rgba(24,21,16,.4); }
.site-header::after{ content:""; position:absolute; left:0; right:0; bottom:-3px; height:3px; z-index:-1;
  background:var(--foil); opacity:.85;
  -webkit-mask:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
  mask:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent); }
.header-inner{ width:100%; max-width:var(--maxw); margin-inline:auto; padding-inline:var(--pad);
  height:100%; display:flex; align-items:center; justify-content:space-between; gap:18px; }

/* masthead nameplate */
.brand{ position:relative; font-family:var(--serif); font-style:italic; font-weight:700; font-size:1.34rem;
  letter-spacing:-.01em; color:var(--ink); display:inline-flex; align-items:baseline; gap:.5ch; white-space:nowrap; }
.brand:hover{ color:var(--ink); }
.brand .mark{ color:var(--accent-text); font-style:normal; font-size:1.1rem; }
.brand .sub{ font-family:var(--mono); font-style:normal; font-size:.56rem; letter-spacing:.22em;
  color:var(--muted); text-transform:uppercase; }
.brand::before{ content:""; position:absolute; left:-9px; top:-4px; width:28px; height:15px; z-index:-1;
  background:var(--foil); transform:rotate(-8deg); opacity:.9;
  clip-path:polygon(4% 0,96% 0,100% 18%,97% 50%,100% 84%,96% 100%,4% 100%,0 82%,3% 50%,0 16%); }

.nav-desktop{ display:none; }
@media (min-width:1024px){
  .nav-desktop{ display:flex; align-items:center; gap:clamp(16px,2.2vw,28px); }
  .nav-desktop a{ position:relative; font-family:var(--mono); font-weight:500; font-size:.8rem;
    letter-spacing:.03em; color:var(--ink-soft); padding:5px 0; white-space:nowrap; }
  .nav-desktop a::after{ content:""; position:absolute; left:0; bottom:-2px; width:0; height:2px;
    background:var(--gold); transition:width .22s ease; }
  .nav-desktop a:hover{ color:var(--ink); }
  .nav-desktop a:hover::after, .nav-desktop a.is-active::after{ width:100%; }
  .nav-desktop a.is-active{ color:var(--ink); }
  .nav-desktop .nav-cta::after{ display:none; }
}
.nav-cta{ font-family:var(--mono); font-weight:600; font-size:.78rem; letter-spacing:.03em;
  background:var(--ink); color:var(--bg)!important; padding:10px 16px; border-radius:2px; border:1px solid var(--ink);
  transition:background .2s ease,color .2s ease,transform .2s ease; }
.nav-cta:hover, .nav-cta:focus-visible{ background:var(--gold); border-color:var(--gold-deep); color:#1e1508!important; transform:translateY(-1px); }

.nav-toggle{ display:inline-flex; flex-direction:column; justify-content:center; gap:5px;
  width:44px; height:44px; padding:11px; background:transparent; border:1px solid var(--line-strong);
  border-radius:3px; cursor:pointer; position:relative; z-index:1100; }
@media (min-width:1024px){ .nav-toggle{ display:none; } }
.nav-toggle span{ display:block; height:2px; width:100%; background:var(--ink);
  transition:transform .24s ease, opacity .2s ease; }
.nav-toggle[aria-expanded="true"] span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.nav-toggle[aria-expanded="true"] span:nth-child(2){ opacity:0; }
.nav-toggle[aria-expanded="true"] span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

.drawer-backdrop{ position:fixed; inset:0; background:rgba(24,21,16,.5); 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); background:var(--surface);
  border-left:4px solid var(--gold); transform:translateX(100%); transition:transform .32s cubic-bezier(.2,.7,.2,1);
  z-index:1050; padding:calc(var(--header-h) + 20px) 30px 30px; display:flex; flex-direction:column; gap:6px; overflow-y:auto; }
.drawer.is-open{ transform:translateX(0); }
.drawer a{ font-family:var(--serif); font-style:italic; font-size:1.28rem; color:var(--ink);
  padding:13px 0; border-bottom:1px solid var(--line); }
.drawer a:hover, .drawer a.is-active{ color:var(--accent-text); }
.drawer .nav-cta{ font-family:var(--mono); font-style:normal; text-align:center; justify-content:center;
  display:flex; margin-top:18px; }

/* ============================================================ BUTTONS */
.btn{ display:inline-flex; align-items:center; justify-content:center; gap:.6ch;
  font-family:var(--mono); font-weight:600; font-size:.85rem; letter-spacing:.03em;
  padding:14px 24px; border-radius:2px; border:1px solid transparent; cursor:pointer; text-align:center;
  transition:background .2s ease,color .2s ease,transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.btn-primary{ background:var(--ink); color:var(--gold-hi); border-color:var(--gold-deep); position:relative; overflow:hidden; }
.btn-primary::after{ content:""; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(115deg,transparent 30%,rgba(231,206,148,.3) 48%,transparent 66%);
  transform:translateX(-120%); transition:transform .72s ease; }
.btn-primary:hover, .btn-primary:focus-visible{ background:var(--ink-2); color:#FBF3DE; border-color:var(--gold);
  transform:translateY(-2px); box-shadow:0 16px 34px -20px rgba(24,21,16,.8); }
.btn-primary:hover::after{ transform:translateX(120%); }
.btn-ghost{ background:transparent; color:var(--ink); border-color:var(--gold-line); }
.btn-ghost:hover, .btn-ghost:focus-visible{ background:var(--ink); color:var(--gold-hi); border-color:var(--ink); transform:translateY(-2px); }
.btn .arrow, .btn .arw{ transition:transform .2s ease; }
.btn:hover .arrow, .btn:hover .arw{ transform:translateX(3px); }

/* ============================================================ REVEAL */
.reveal{ opacity:0; transform:translateY(26px);
  transition:opacity .6s cubic-bezier(.2,.7,.2,1), transform .6s 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; } }

/* torn newsprint divider */
.torn-div{ position:relative; height:32px; background:var(--surface); z-index:2;
  clip-path:polygon(0 40%,4% 55%,8% 38%,12% 58%,17% 42%,22% 60%,27% 44%,32% 62%,38% 46%,43% 64%,48% 44%,54% 60%,60% 42%,66% 58%,72% 40%,78% 56%,84% 40%,90% 58%,95% 42%,100% 56%,100% 100%,0 100%); }
.torn-div::after{ content:""; position:absolute; left:8%; right:8%; top:3px; height:1px;
  background:linear-gradient(90deg,transparent,var(--gold) 12%,var(--gold) 88%,transparent); opacity:.55; pointer-events:none; }

/* ============================================================ GENERIC SECTION */
.section{ padding:clamp(56px,9vw,108px) 0; position:relative; overflow:visible; }
.section::after{ content:""; position:absolute; inset:0; z-index:0; pointer-events:none; opacity:.5;
  background-image:repeating-linear-gradient(90deg, rgba(24,21,16,.02) 0 1px, transparent 1px 60px);
  -webkit-mask-image:linear-gradient(180deg,#000 0 84%, transparent); mask-image:linear-gradient(180deg,#000 0 84%, transparent); }
.section-head{ max-width:660px; margin-bottom:clamp(30px,5vw,54px); position:relative; z-index:3; }
.section-head h2{ font-size:clamp(1.9rem,4.6vw,3rem); line-height:1.06; }
.section-head p{ color:var(--ink-soft); font-size:1.02rem; margin:.5rem 0 0; }
.section-index{ font-family:var(--mono); font-size:.72rem; letter-spacing:.2em; color:var(--accent-text);
  text-transform:uppercase; display:block; margin-bottom:.9rem; }
.section-head::before{ content:""; position:absolute; z-index:-1; left:-18px; top:-14px;
  width:min(300px,66%); height:calc(100% + 24px);
  background:linear-gradient(180deg, rgba(255,252,244,.6), rgba(229,218,195,.5));
  box-shadow:0 24px 48px -34px rgba(24,21,16,.4); transform:rotate(-.5deg);
  clip-path:polygon(1% 4%,97% 1%,100% 8%,99% 92%,96% 99%,2% 97%,0 88%,1% 12%); }

hr.rule, .rule{ height:1px; border:0; margin:0;
  background:repeating-linear-gradient(90deg, var(--line-strong) 0 8px, transparent 8px 16px); }

/* ============================================================ HERO */
.hero{ position:relative; overflow:hidden; padding:clamp(40px,7vw,84px) 0 clamp(48px,7vw,88px); border-bottom:1px solid var(--line); }
.hero .container{ position:relative; z-index:3; }
.hero-grid{ display:grid; grid-template-columns:1.05fr .95fr; gap:clamp(28px,5vw,56px); align-items:center; }
.hero-left .eyebrow{ margin-bottom:1.3rem; }
.hero h1{ font-size:clamp(2.2rem,5.6vw,4rem); line-height:1.04; letter-spacing:-.02em; margin:0 0 1.1rem; }
.hero h1 .hl{ position:relative; display:inline-block; color:#2E2410; padding:0 .1em; white-space:nowrap; font-style:normal; }
.hero h1 .hl::before{ content:""; position:absolute; inset:-.02em -.02em; z-index:-1; background:var(--foil);
  transform:rotate(-1deg); clip-path:polygon(2% 14%,98% 5%,100% 82%,96% 98%,3% 93%,0 22%); opacity:.95;
  box-shadow:0 3px 10px -5px rgba(24,21,16,.4); }
.hero-sub{ font-size:clamp(1rem,1.6vw,1.16rem); color:var(--ink-soft); max-width:44ch; margin:0 0 1.8rem; }
.hero-actions{ display:flex; flex-wrap:wrap; gap:12px; margin-bottom:2rem; }
.trust-strip{ display:flex; flex-wrap:wrap; gap:10px 22px; list-style:none; padding:0; margin:0; }
.trust-strip li{ font-family:var(--mono); font-size:.74rem; letter-spacing:.03em; color:var(--ink-soft);
  display:flex; align-items:center; gap:.6ch; }
.trust-strip li::before{ content:""; width:7px; height:7px; background:var(--gold); border-radius:1px; }

/* hero ticker panel */
.ticker-panel{ position:relative; border:1px solid var(--gold-line); border-radius:3px; overflow:hidden;
  background:var(--surface); box-shadow:0 40px 80px -50px rgba(24,21,16,.7); isolation:isolate; transform:rotate(.5deg); }
.ticker-panel::after{ content:""; position:absolute; top:-11px; left:16%; width:110px; height:24px; z-index:6;
  background:var(--foil); transform:rotate(-4deg); opacity:.92; pointer-events:none;
  clip-path:polygon(4% 0,96% 0,100% 18%,97% 50%,100% 84%,96% 100%,4% 100%,0 82%,3% 50%,0 16%); }
.ticker-photo{ position:relative; aspect-ratio:4/3; overflow:hidden; }
.ticker-photo img{ width:100%; height:100%; object-fit:cover; filter:grayscale(.42) contrast(1.06) sepia(.12); }
.ticker-photo::after{ content:""; position:absolute; inset:0; background:linear-gradient(200deg, rgba(24,21,16,.08), rgba(24,21,16,.68)); }
.ticker-photo::before{ content:""; position:absolute; inset:-30%; z-index:2; pointer-events:none;
  background:radial-gradient(circle at var(--mx) var(--my), rgba(255,244,214,.28), transparent 42%);
  mix-blend-mode:soft-light; transition:opacity .3s ease; }
.caught-line{ position:absolute; z-index:3; left:8%; font-family:var(--mono); font-size:.72rem;
  padding:2px 7px; background:var(--foil); color:#241a08; font-weight:600; box-shadow:0 2px 8px rgba(24,21,16,.4);
  letter-spacing:.01em; opacity:0; transform:translateX(-8px); animation:caughtIn .5s forwards; }
.caught-line.l1{ top:28%; animation-delay:1.1s; }
.caught-line.l2{ top:52%; left:16%; animation-delay:1.9s; }
.caught-line.l3{ top:72%; left:11%; animation-delay:2.7s; }
@keyframes caughtIn{ to{ opacity:1; transform:none; } }
@media (prefers-reduced-motion:reduce){ .caught-line{ opacity:1; transform:none; animation:none; } }
.ticker-feed{ border-top:1px solid var(--gold-line); background:var(--surface-2); }
.ticker-feed-head{ display:flex; align-items:center; justify-content:space-between; padding:9px 14px; border-bottom:1px solid var(--line); }
.ticker-feed-head .dot{ width:8px; height:8px; border-radius:50%; background:#3f8f5b; box-shadow:0 0 8px rgba(63,143,91,.8); }
.ticker-live{ font-family:var(--mono); font-size:.66rem; letter-spacing:.18em; text-transform:uppercase; color:var(--ink-soft); display:flex; align-items:center; gap:.7ch; }
.ticker-clock{ font-family:var(--mono); font-size:.7rem; color:var(--accent-text); font-variant-numeric:tabular-nums; }
.ticker-line{ padding:11px 14px; min-height:72px; font-family:var(--mono); font-size:.82rem; line-height:1.5; color:var(--ink); display:flex; flex-direction:column; gap:4px; }
.ticker-src{ font-size:.64rem; letter-spacing:.12em; text-transform:uppercase; color:var(--label); }
.ticker-text::after{ content:"▌"; color:var(--accent-text); animation:caret 1s steps(1) infinite; }
@keyframes caret{ 50%{ opacity:0; } }

/* ============================================================ STAT BAND */
.stat-band{ position:relative; border-top:1px solid var(--line); border-bottom:1px solid var(--line);
  background:linear-gradient(180deg, rgba(219,206,178,.7), rgba(210,195,162,.55)); overflow:hidden; }
.stat-band .container{ display:grid; grid-template-columns:repeat(4,1fr); }
.stat-cell{ padding:clamp(22px,3.4vw,34px) 18px; border-right:1px solid var(--line); position:relative; z-index:3; }
.stat-cell:last-child{ border-right:0; }
.stat-num{ font-family:var(--serif); font-style:italic; font-weight:700; font-size:clamp(1.9rem,3.8vw,2.7rem);
  color:var(--accent-text); font-variant-numeric:tabular-nums; min-width:3ch; display:inline-block; line-height:1.05; }
.stat-label{ font-family:var(--mono); font-size:.72rem; letter-spacing:.05em; color:var(--ink-soft); margin-top:.45rem; }

/* ============================================================ KAPSAM sources */
.source-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(18px,2.6vw,28px); }
.source-card{ position:relative; border:1px solid var(--line); border-radius:3px; overflow:hidden; background:var(--surface);
  min-width:0; box-shadow:0 26px 54px -36px rgba(24,21,16,.45); transform:rotate(-.4deg);
  transition:transform .28s cubic-bezier(.2,.7,.2,1), box-shadow .28s ease, border-color .28s ease; }
.source-card:nth-child(2n){ transform:rotate(.5deg); }
.source-card:nth-child(3n){ transform:rotate(-.2deg); }
.source-card:hover{ transform:translateY(-5px) rotate(0deg); border-color:var(--gold-line); box-shadow:0 34px 64px -32px rgba(24,21,16,.55); }
.source-card::before{ content:""; position:absolute; top:-9px; left:50%; margin-left:-38px; width:76px; height:20px;
  background:var(--foil); transform:rotate(-3deg); box-shadow:0 4px 10px -5px rgba(24,21,16,.4); z-index:5; pointer-events:none; opacity:.94;
  clip-path:polygon(4% 0,96% 0,100% 20%,97% 50%,100% 82%,96% 100%,4% 100%,0 82%,3% 50%,0 18%); }
.source-card:nth-child(2n)::before{ transform:rotate(4deg); }
.source-card .photo{ aspect-ratio:16/10; overflow:hidden; position:relative; }
.source-card .photo img{ width:100%; height:100%; object-fit:cover; filter:grayscale(.35) contrast(1.06) sepia(.1); transition:transform .5s ease; }
.source-card:hover .photo img{ transform:scale(1.05); }
.source-card .photo::after{ content:""; position:absolute; inset:0; background:linear-gradient(transparent 42%, rgba(24,21,16,.5)); }
.source-card .count{ font-family:var(--mono); font-size:.72rem; letter-spacing:.12em; color:#241a08; position:absolute; top:12px; left:14px; z-index:2;
  background:var(--foil-soft); padding:4px 9px; box-shadow:0 3px 8px -4px rgba(24,21,16,.4); }
.source-card .body{ padding:20px clamp(18px,2.4vw,24px) 24px; }
.source-card h3{ font-size:1.24rem; margin-bottom:.5rem; }
.source-card p{ color:var(--ink-soft); font-size:.92rem; margin:0; }
.source-card ul{ list-style:none; padding:0; margin:.9rem 0 0; display:flex; flex-wrap:wrap; gap:6px; }
.source-card ul li{ font-family:var(--mono); font-size:.68rem; color:var(--ink-soft); border:1px solid var(--line); padding:3px 8px; border-radius:2px; }

/* ============================================================ AKIŞ */
.akis{ border-block:1px solid var(--line); }
.akis-grid{ display:grid; grid-template-columns:.9fr 1.1fr; gap:clamp(26px,4vw,50px); align-items:center; }
.scan-window{ border:1px solid var(--gold-line); border-radius:4px; overflow:hidden; background:var(--ink); box-shadow:0 40px 80px -50px rgba(24,21,16,.7); }
.scan-window-head{ display:flex; align-items:center; gap:8px; padding:10px 14px; background:var(--ink-2);
  border-bottom:1px solid rgba(231,206,148,.16); font-family:var(--mono); font-size:.7rem; color:var(--gold-soft); letter-spacing:.08em; }
.scan-window-head .lamp{ width:9px; height:9px; border-radius:50%; background:var(--gold); box-shadow:0 0 8px var(--gold); }
.scan-body{ position:relative; padding:0; }
.scan-body img{ width:100%; display:block; filter:grayscale(.55) contrast(1.08) brightness(.92) sepia(.12); }
.scanbar{ position:absolute; left:0; right:0; height:36px; z-index:2; pointer-events:none;
  background:linear-gradient(rgba(176,134,47,0), rgba(176,134,47,.3), rgba(176,134,47,0));
  border-top:1px solid var(--gold); border-bottom:1px solid var(--gold); animation:scanMove 4.4s cubic-bezier(.5,0,.5,1) infinite; }
@keyframes scanMove{ 0%{ top:-8%; } 100%{ top:100%; } }
@media (prefers-reduced-motion:reduce){ .scanbar{ animation:none; top:40%; } }
.scan-hit{ position:absolute; z-index:3; font-family:var(--mono); font-size:.68rem; font-weight:600;
  background:var(--foil); color:#241a08; padding:2px 7px; opacity:0; animation:hitPulse 4.4s infinite; }
.scan-hit.h1{ top:34%; left:12%; animation-delay:1.2s; }
.scan-hit.h2{ top:58%; left:22%; animation-delay:2.6s; }
@keyframes hitPulse{ 0%,18%{ opacity:0; } 24%,72%{ opacity:1; } 90%,100%{ opacity:0; } }
.akis-list{ list-style:none; padding:0; margin:1.6rem 0 0; display:grid; gap:2px; }
.akis-list li{ font-family:var(--mono); font-size:.85rem; color:var(--ink); padding:12px 14px; border:1px solid var(--line);
  background:var(--surface); display:grid; grid-template-columns:auto 1fr auto; gap:12px; align-items:center; }
.akis-list .t{ color:var(--label); font-size:.72rem; letter-spacing:.06em; }
.akis-list .src{ color:var(--accent-text); font-size:.7rem; letter-spacing:.09em; text-transform:uppercase; justify-self:end; }

/* ============================================================ TABLES */
.metrik-note{ font-family:var(--mono); font-size:.74rem; color:var(--ink-faint); margin-top:14px; letter-spacing:.02em; }
.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(--gold-line); border-radius:3px; box-shadow:0 26px 54px -40px rgba(24,21,16,.4); }
.table-scroll > table{ margin:0!important; min-width:520px; width:100%; }
:where(*:has(> .table-scroll), *:has(> * > .table-scroll), *:has(> * > * > .table-scroll)){ min-width:0; }
table{ border-collapse:collapse; width:100%; font-size:.92rem; }
thead th{ font-family:var(--mono); font-size:.7rem; letter-spacing:.11em; text-transform:uppercase; text-align:left;
  color:var(--accent-text); background:var(--surface-2); padding:13px 16px; border-bottom:1px solid var(--line-strong); font-weight:600; white-space:nowrap; }
tbody td{ padding:13px 16px; border-bottom:1px solid var(--line); color:var(--ink-soft); vertical-align:top; }
tbody tr:last-child td{ border-bottom:0; }
tbody tr:nth-child(even){ background:rgba(24,21,16,.02); }
td.num, th.num{ font-family:var(--mono); font-variant-numeric:tabular-nums; text-align:right; white-space:nowrap; }
.metrik-table tbody th{ text-align:left; font-family:var(--mono); font-weight:600; color:var(--ink); padding:13px 16px;
  border-bottom:1px solid var(--line); background:var(--surface); white-space:nowrap; }

/* ============================================================ FIYAT + CALC */
.fiyat{ border-block:1px solid var(--line); }
.price-table td.pkg{ font-family:var(--mono); font-weight:600; color:var(--ink); }
.price-table td .pkg-sub{ display:block; font-family:var(--sans); font-size:.78rem; color:var(--ink-faint); margin-top:2px; }
.price-table td.price{ font-family:var(--mono); font-weight:700; color:var(--accent-text); font-variant-numeric:tabular-nums; font-size:1.02rem; text-align:right; white-space:nowrap; }
.price-table .featured td{ background:rgba(176,134,47,.1); }
.price-table .badge{ font-family:var(--mono); font-size:.6rem; letter-spacing:.13em; background:var(--foil-soft); color:#241a08; padding:2px 7px; margin-left:8px; vertical-align:middle; }
.fiyat-disclaimer{ font-family:var(--mono); font-size:.74rem; color:var(--ink-faint); margin-top:10px; }

.calc{ margin-top:clamp(30px,5vw,50px); border:1px solid var(--gold-line); border-radius:4px; background:var(--bg); overflow:hidden;
  box-shadow:0 40px 90px -56px rgba(24,21,16,.6); }
.calc-head{ padding:18px clamp(18px,3vw,28px); border-bottom:1px solid var(--line); background:var(--surface-2);
  display:flex; align-items:baseline; justify-content:space-between; gap:14px; flex-wrap:wrap; }
.calc-head h3{ margin:0; font-size:1.28rem; }
.calc-head .mono-tag{ color:var(--accent-text); }
.calc-grid{ display:grid; grid-template-columns:1fr .82fr; gap:0; }
.calc-controls{ padding:clamp(20px,3vw,30px); border-right:1px solid var(--line); display:grid; gap:24px; }
.calc-field label.q{ display:block; font-family:var(--mono); font-size:.8rem; letter-spacing:.02em; color:var(--ink); margin-bottom:12px; }
.calc-field label.q .hint{ display:block; font-family:var(--sans); font-size:.74rem; color:var(--ink-faint); margin-top:3px; letter-spacing:0; }
.kw-row{ display:flex; align-items:center; gap:12px; }
.kw-row input[type="number"]{ width:96px; background:var(--surface); border:1px solid var(--line-strong); color:var(--ink);
  font-family:var(--mono); font-size:1.05rem; padding:11px 12px; border-radius:3px; text-align:center; font-variant-numeric:tabular-nums; }
.stepper{ width:42px; height:42px; border:1px solid var(--line-strong); background:var(--surface); color:var(--ink);
  font-family:var(--mono); font-size:1.3rem; cursor:pointer; border-radius:3px; transition:background .18s, border-color .18s, color .18s; line-height:1; }
.stepper:hover{ background:var(--ink); border-color:var(--ink); color:var(--gold-hi); }
.toggle-set{ display:flex; flex-wrap:wrap; gap:8px; }
.toggle-set .chip{ font-family:var(--mono); font-size:.78rem; letter-spacing:.02em; padding:9px 14px; border:1px solid var(--line-strong);
  background:var(--surface); color:var(--ink-soft); border-radius:3px; cursor:pointer; transition:all .18s ease; user-select:none;
  display:inline-flex; align-items:center; gap:.6ch; }
.toggle-set .chip::before{ content:"+"; color:var(--accent-text); font-weight:700; }
.toggle-set .chip[aria-pressed="true"]{ background:var(--ink); color:var(--gold-hi); border-color:var(--gold-deep); }
.toggle-set .chip[aria-pressed="true"]::before{ content:"✓"; color:var(--gold-hi); }
.toggle-set .chip .kc{ opacity:.7; font-size:.66rem; }
.radio-set{ display:flex; flex-wrap:wrap; gap:8px; }
.radio-set label{ font-family:var(--mono); font-size:.78rem; padding:9px 14px; border:1px solid var(--line-strong);
  background:var(--surface); color:var(--ink-soft); border-radius:3px; cursor:pointer; transition:all .18s ease; }
.radio-set input{ position:absolute; opacity:0; width:0; height:0; }
.radio-set input:checked + label{ background:var(--ink); color:var(--gold-hi); border-color:var(--gold-deep); }
.radio-set input:focus-visible + label{ outline:2px solid var(--gold); outline-offset:2px; }
.calc-out{ padding:clamp(20px,3vw,30px); background:linear-gradient(180deg,var(--ink-2),var(--ink)); color:var(--gold-hi);
  display:flex; flex-direction:column; gap:18px; position:relative; }
.calc-out::after{ content:""; position:absolute; inset:12px; border:1px solid rgba(231,206,148,.2); pointer-events:none; }
.out-label{ font-family:var(--mono); font-size:.68rem; letter-spacing:.16em; text-transform:uppercase; color:var(--gold-soft); }
.out-amount{ font-family:var(--serif); font-style:italic; font-weight:700; font-size:clamp(2.1rem,5vw,2.9rem); color:#FBF3DE; font-variant-numeric:tabular-nums; line-height:1.06; margin-top:4px; }
.out-amount .unit{ font-family:var(--mono); font-style:normal; font-size:.9rem; color:var(--gold-soft); font-weight:500; }
.out-vol{ font-family:var(--mono); font-size:1.05rem; color:#F1E6CC; font-variant-numeric:tabular-nums; margin-top:4px; }
.calc-msg{ font-family:var(--mono); font-size:.76rem; color:var(--gold-soft); min-height:1.2em; letter-spacing:.02em; }
.calc-msg.warn{ color:#E7CE94; }
.calc-out .rule{ margin:2px 0; background:repeating-linear-gradient(90deg, rgba(231,206,148,.3) 0 8px, transparent 8px 16px); }
.calc-out .btn{ margin-top:2px; width:100%; }
.calc-out .btn-primary{ background:var(--foil); color:#241a08; border-color:var(--gold-deep); }
.calc-out .btn-primary:hover{ background:#FBF3DE; color:var(--ink); }
.calc-note{ font-family:var(--mono); font-size:.68rem; color:var(--gold-soft); letter-spacing:.02em; }

/* ============================================================ SIGNATURE MECHANIC
   MANŞET — cut-letter ransom headline assembles on a pinned scroll scene.
   Each glyph is an individual cut-paper / foil / ink / marble chip that flies in
   from a scattered rotated position and locks into the word. TYPE-AS-COLLAGE.
   ============================================================ */
.manset-track{ position:relative; height:360vh; }
.manset-pin{ position:sticky; top:0; height:100vh; overflow:hidden; display:grid; place-items:center;
  background:
    radial-gradient(rgba(24,21,16,.05) 1px, transparent 1.7px) 0 0/6px 6px,
    repeating-linear-gradient(90deg, rgba(24,21,16,.03) 0 1px, transparent 1px 46px),
    radial-gradient(150% 100% at 50% 32%, #F4ECDB, var(--bg) 78%); }
.manset-pin::after{ content:""; position:absolute; inset:0; pointer-events:none; box-shadow:0 0 200px 46px rgba(24,21,16,.06) inset; }
.manset-inner{ position:relative; z-index:3; width:100%; max-width:var(--maxw); margin-inline:auto;
  padding-inline:clamp(18px,5vw,44px); display:grid; grid-template-columns:1fr; gap:clamp(22px,4vw,44px); align-items:center; }
@media (min-width:980px){ .manset-inner{ grid-template-columns:1.35fr .8fr; } }
.manset-stage{ position:relative; z-index:2; min-width:0; }
.ml-line{ display:flex; flex-wrap:wrap; align-items:flex-end; gap:.16em .34em; margin:.06em 0; }
.mw{ display:inline-flex; gap:.05em; }
/* cut-letter ransom chip */
.gl{ display:inline-block; will-change:transform,opacity; opacity:0;
  font-family:var(--serif); font-weight:700; font-style:normal;
  font-size:clamp(1.5rem,4.4vw,3.9rem); line-height:.9; letter-spacing:-.015em;
  padding:.04em .1em .02em; border-radius:2px;
  box-shadow:0 16px 30px -18px rgba(24,21,16,.55), 0 1px 0 rgba(255,255,255,.3) inset;
  clip-path:polygon(3% 6%,26% 2%,52% 5%,80% 1%,98% 7%,96% 34%,100% 66%,97% 96%,72% 99%,44% 96%,20% 100%,3% 94%,0 60%,4% 30%); }
.gl-paper{ background:var(--paper-a); color:var(--ink);
  background-image:repeating-linear-gradient(0deg, rgba(24,21,16,.045) 0 2px, transparent 2px 6px); }
.gl-marble{ background:linear-gradient(135deg,#F3ECDB 0%,#E4D9C0 44%,#D3C4A2 100%); color:var(--ink);
  background-image:repeating-linear-gradient(58deg, rgba(255,255,255,.4) 0 1px, transparent 1px 7px); }
.gl-ink{ background:linear-gradient(150deg,#241E16,#12100b); color:var(--gold-hi);
  text-shadow:0 1px 0 rgba(0,0,0,.5); box-shadow:0 18px 32px -18px rgba(24,21,16,.7); }
.gl-foil{ background:var(--foil); color:#2a1e08; text-shadow:0 1px 0 rgba(255,255,255,.35); }
html.no-js .gl{ opacity:1; }

.manset-cap{ position:relative; z-index:4; min-width:0; }
.manset-cap .eyebrow{ margin-bottom:14px; }
.manset-cap h2{ font-size:clamp(1.7rem,4.4vw,2.7rem); color:var(--ink); line-height:1.06; }
.manset-cap .lead{ margin-top:16px; color:var(--ink-soft); max-width:44ch; }
.manset-readout{ margin-top:22px; display:inline-flex; align-items:center; gap:14px; flex-wrap:wrap;
  font-family:var(--mono); font-weight:700; font-size:13px; color:var(--ink);
  border:1px solid var(--gold-line); background:rgba(255,252,244,.5); padding:12px 16px; border-radius:2px;
  box-shadow:0 14px 30px -20px rgba(24,21,16,.4); }
.manset-readout b{ color:var(--accent-text); font-size:1.4rem; font-variant-numeric:tabular-nums; min-width:1.6ch; text-align:right; }
.manset-readout .mbar{ width:120px; height:6px; background:var(--surface-2); border-radius:3px; overflow:hidden; }
.manset-readout .mbar > i{ display:block; height:100%; width:0; background:var(--foil); border-radius:3px; }
.manset-readout .mpct{ color:var(--accent-text); }
.manset-readout.done b, .manset-readout.done .mpct{ color:var(--accent2-text); }
.manset-chips{ margin-top:20px; display:flex; gap:10px; align-items:center; flex-wrap:wrap; }
.manset-scroll{ position:absolute; bottom:22px; left:50%; transform:translateX(-50%); z-index:6;
  font-family:var(--mono); font-weight:700; font-size:10px; letter-spacing:.3em; text-transform:uppercase;
  color:#241a08; background:var(--foil-soft); padding:6px 12px; animation:msBob 2.4s ease-in-out infinite; }
@keyframes msBob{ 0%,100%{ transform:translate(-50%,0); } 50%{ transform:translate(-50%,7px); } }

/* ============================================================ SÜREÇ timeline */
.timeline{ display:grid; gap:0; margin-top:20px; }
.timeline .step{ display:grid; grid-template-columns:auto 1fr; gap:clamp(16px,3vw,30px); padding:clamp(20px,3vw,30px) 0;
  border-top:1px solid var(--line); align-items:start; }
.timeline .step:last-child{ border-bottom:1px solid var(--line); }
.step .marker{ font-family:var(--mono); font-size:.72rem; letter-spacing:.09em; color:var(--accent-text); padding-top:6px; white-space:nowrap; }
.step h3{ font-size:1.32rem; margin-bottom:.4rem; }
.step p{ color:var(--ink-soft); margin:0; max-width:60ch; }
.step .when{ font-family:var(--mono); font-size:.7rem; color:var(--ink-faint); display:inline-block; margin-top:.5rem; letter-spacing:.05em;
  background:rgba(74,64,56,.08); padding:3px 9px; }

/* ============================================================ TESTIMONIALS */
.testi-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(18px,2.4vw,26px); }
.testi{ position:relative; border:1px solid var(--line); border-top:3px solid var(--gold); border-radius:3px; padding:26px 24px; background:var(--surface);
  display:flex; flex-direction:column; gap:14px; min-width:0; box-shadow:0 24px 48px -34px rgba(24,21,16,.45); transform:rotate(-.3deg); }
.testi:nth-child(2n){ transform:rotate(.4deg); }
.testi::before{ content:""; position:absolute; top:-10px; left:50%; margin-left:-38px; width:76px; height:22px;
  background:var(--foil); transform:rotate(-3deg); box-shadow:0 4px 10px -5px rgba(24,21,16,.45); z-index:5; pointer-events:none; opacity:.94;
  clip-path:polygon(4% 0,96% 0,100% 20%,97% 50%,100% 82%,96% 100%,4% 100%,0 82%,3% 50%,0 18%); }
.testi:nth-child(2n)::before{ background:var(--foil-soft); transform:rotate(4deg); }
.testi .quote{ font-family:var(--serif); font-style:italic; color:var(--ink); font-size:1.02rem; line-height:1.56; }
.testi .quote::before{ content:"«"; color:var(--accent-text); font-family:var(--serif); font-size:1.4rem; margin-right:.2ch; }
.testi .who{ font-family:var(--mono); font-size:.74rem; color:var(--accent-text); letter-spacing:.02em; margin-top:auto; font-style:normal; }
.testi .who .meta{ display:block; color:var(--ink-faint); font-size:.68rem; margin-top:3px; letter-spacing:.03em; }

/* ============================================================ FAQ */
.faq{ display:grid; gap:12px; margin-top:20px; max-width:860px; }
.faq details{ border:1px solid var(--line); border-radius:3px; background:var(--surface); overflow:hidden; }
.faq summary{ cursor:pointer; list-style:none; padding:18px clamp(16px,2.5vw,24px); font-family:var(--serif); font-style:italic; font-weight:700;
  font-size:1.06rem; color:var(--ink); display:flex; justify-content:space-between; gap:14px; align-items:center; }
.faq summary::-webkit-details-marker{ display:none; }
.faq summary::after{ content:"+"; color:var(--accent-text); font-family:var(--mono); font-style:normal; font-size:1.3rem; transition:transform .3s ease; line-height:1; }
.faq details[open] summary::after{ transform:rotate(45deg); }
.faq .body{ height:0; overflow:hidden; padding:0 clamp(16px,2.5vw,24px); color:var(--ink-soft); font-size:.94rem; line-height:1.65;
  transition:height .36s cubic-bezier(.4,0,.2,1), padding-block-end .36s cubic-bezier(.4,0,.2,1); }
.faq details[open] .body{ height:auto; padding-block-end:22px; }
@media (prefers-reduced-motion:reduce){ .faq .body{ transition:none; } }

/* ============================================================ NOTES */
.notes-list{ list-style:none; padding:0; margin:20px 0 0; display:grid; gap:0; max-width:820px; }
.notes-list li{ display:grid; grid-template-columns:auto 1fr; gap:18px; padding:16px 0; border-top:1px solid var(--line); align-items:baseline; }
.notes-list li:last-child{ border-bottom:1px solid var(--line); }
.notes-list .date{ font-family:var(--mono); font-size:.72rem; color:var(--accent-text); letter-spacing:.03em; white-space:nowrap; }
.notes-list .txt{ color:var(--ink-soft); font-size:.94rem; }

/* ============================================================ ILETISIM */
.contact-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:clamp(14px,2.2vw,20px); }
.contact-card{ border:1px solid var(--line); border-radius:3px; padding:22px; background:var(--surface);
  transition:transform .26s cubic-bezier(.2,.7,.2,1), border-color .26s ease; min-width:0; box-shadow:0 20px 44px -34px rgba(24,21,16,.4); }
.contact-card:hover{ transform:translateY(-3px); border-color:var(--gold-line); }
.contact-card .ch{ font-family:var(--mono); font-size:.68rem; letter-spacing:.13em; text-transform:uppercase; color:var(--label); margin-bottom:10px; }
.contact-card .val{ font-family:var(--mono); font-size:.98rem; color:var(--ink); word-break:break-word; }
.contact-card a.val:hover{ color:var(--accent-text); }
.contact-card .note{ font-size:.8rem; color:var(--ink-faint); margin-top:8px; }

.cta-panel{ position:relative; border:1px solid var(--gold-line); border-radius:4px;
  background:linear-gradient(180deg,var(--ink-2),var(--ink)); color:var(--gold-hi);
  padding:clamp(28px,4vw,44px); text-align:center; max-width:660px; margin-inline:auto; overflow:hidden;
  box-shadow:0 44px 90px -54px rgba(24,21,16,.8); }
.cta-panel::before{ content:""; position:absolute; inset:0; z-index:0; pointer-events:none; opacity:.45;
  background-image:radial-gradient(rgba(231,206,148,.1) 18%, transparent 20%), repeating-linear-gradient(90deg, rgba(231,206,148,.06) 0 1px, transparent 1px 56px);
  background-size:6px 6px, auto; }
.cta-panel > *{ position:relative; z-index:2; }
.cta-panel h3{ font-size:clamp(1.3rem,3vw,1.7rem); margin-bottom:.6rem; color:#FBF3DE; }
.cta-panel p{ color:#C9BFA6; max-width:52ch; margin:0 auto 1.6rem; }
.cta-panel .btn-primary{ background:var(--foil); color:#241a08; border-color:var(--gold-deep); }
.cta-panel .btn-primary:hover{ background:#FBF3DE; color:var(--ink); }

/* ============================================================ FORMS (subpages) */
.form-wrap{ border:1px solid var(--gold-line); border-radius:4px; background:var(--surface); padding:clamp(22px,3.4vw,36px); box-shadow:0 30px 60px -46px rgba(24,21,16,.5); }
.form-row{ display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.field{ display:flex; flex-direction:column; gap:7px; margin-bottom:16px; min-width:0; }
.field label:not(.kvkk){ font-family:var(--mono); font-size:.76rem; letter-spacing:.03em; color:var(--ink-soft); }
.field label .opt{ color:var(--ink-faint); font-weight:400; letter-spacing:.02em; }
.field input, .field select, .field textarea{ background:var(--bg); border:1px solid var(--line-strong); color:var(--ink);
  font-family:var(--sans); font-size:.95rem; padding:12px 14px; border-radius:3px; width:100%; transition:border-color .2s ease; }
.field input::placeholder, .field textarea::placeholder{ color:var(--ink-faint); }
.field input:focus, .field select:focus, .field textarea:focus{ outline:none; border-color:var(--gold); }
.field textarea{ min-height:130px; resize:vertical; }
.field.kvkk{ flex-direction:row; align-items:flex-start; gap:10px; font-size:.85rem; color:var(--ink-soft); }
.field.kvkk label{ font-size:.85rem; line-height:1.5; }
.field input[type="checkbox"]{ appearance:auto; -webkit-appearance:auto; width:18px; height:18px; min-width:18px; min-height:18px;
  padding:0; border:0; margin:2px 0 0; accent-color:var(--gold); }
.form-wrap .btn{ width:100%; margin-top:6px; }
@media (min-width:560px){ .form-wrap .btn{ width:auto; } }

/* ============================================================ FOOTER */
.site-footer{ position:relative; overflow:hidden; background:var(--ink); border-top:1px solid var(--gold-line);
  padding:clamp(46px,6vw,74px) 0 30px; margin-top:0; }
.site-footer::before{ content:""; position:absolute; inset:0; z-index:0; pointer-events:none; opacity:.35;
  background-image:radial-gradient(rgba(231,206,148,.08) 18%, transparent 20%), repeating-linear-gradient(0deg, rgba(231,206,148,.05) 0 1px, transparent 1px 52px);
  background-size:6px 6px, auto; }
.site-footer::after{ content:""; position:absolute; top:-3px; left:0; right:0; height:3px; z-index:4; background:var(--foil); opacity:.85;
  -webkit-mask:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent); mask:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent); }
.site-footer .container{ position:relative; z-index:3; }
.footer-grid{ display:grid; grid-template-columns:1.4fr 1fr 1fr 1.3fr; gap:clamp(24px,4vw,44px); }
.footer-col h4{ font-family:var(--mono); font-size:.72rem; letter-spacing:.15em; text-transform:uppercase; color:var(--gold-soft); margin-bottom:16px; }
.footer-col a{ display:block; color:#C9BFA6; font-size:.9rem; padding:5px 0; transition:color .18s ease; }
.footer-col a:hover{ color:#FBF3DE; }
.footer-col p{ color:#C9BFA6; font-size:.88rem; margin:.3rem 0; }
.footer-brand .brand{ margin-bottom:14px; color:#FBF3DE; }
.footer-brand .brand .mark{ color:var(--gold-hi); }
.footer-brand .brand .sub{ color:#8C8272; }
.footer-brand p{ color:#C9BFA6; }
.footer-brand .estd{ font-family:var(--mono); font-size:.72rem; color:var(--gold-soft); letter-spacing:.05em; }
.footer-bottom{ margin-top:clamp(34px,5vw,54px); padding-top:22px; border-top:1px solid rgba(231,206,148,.14);
  display:flex; flex-wrap:wrap; gap:12px 24px; align-items:center; justify-content:space-between; }
.footer-bottom .legal a{ display:inline; color:#8C8272; font-size:.8rem; margin-right:16px; }
.footer-bottom .legal a:hover{ color:#FBF3DE; }
.footer-bottom .copy{ font-family:var(--mono); font-size:.74rem; color:#8C8272; letter-spacing:.03em; }
.footer-reg{ font-family:var(--mono); font-size:.68rem; color:var(--gold-soft); letter-spacing:.04em; margin-top:6px; }

/* ============================================================ COOKIE */
.cookie-banner{ position:fixed; bottom:16px; left:16px; right:16px; max-width:520px; margin:0 auto;
  background:var(--ink); color:var(--bg); border-top:3px solid var(--gold); border-radius:5px; padding:20px 22px; z-index:9999;
  box-shadow:0 24px 60px -24px rgba(24,21,16,.7); transform:translateY(140%); opacity:0;
  transition:transform .28s cubic-bezier(.2,.7,.2,1), opacity .24s; }
.cookie-banner.is-visible{ transform:translateY(0); opacity:1; }
@media (min-width:768px){ .cookie-banner{ left:24px; right:auto; max-width:420px; } }
.cookie-banner h3{ font-size:1.1rem; margin-bottom:.5rem; color:#FBF3DE; }
.cookie-banner p{ font-size:.84rem; color:#C9BFA6; margin:0 0 16px; line-height:1.55; }
.cookie-banner p a{ color:var(--gold-hi); text-decoration:underline; }
.cookie-actions{ display:flex; flex-wrap:wrap; gap:10px; }
.cookie-actions button{ font-family:var(--mono); font-size:.78rem; font-weight:600; padding:11px 16px; min-height:44px;
  border-radius:3px; cursor:pointer; border:1px solid transparent; flex:1; min-width:120px; transition:background .18s, color .18s, border-color .18s; }
.cookie-actions [data-consent="accept"]{ background:var(--gold); color:#241a08; border-color:var(--gold-deep); }
.cookie-actions [data-consent="accept"]:hover{ background:#FBF3DE; color:var(--ink); }
.cookie-actions [data-consent="reject"]{ background:transparent; color:var(--bg); border-color:rgba(236,227,209,.4); }
.cookie-actions [data-consent="reject"]:hover{ background:rgba(236,227,209,.12); }
.cookie-actions [data-consent="settings"]{ background:transparent; color:#C9BFA6; border-color:rgba(236,227,209,.4); flex:0 0 auto; }
.cookie-actions [data-consent="settings"]:hover{ background:rgba(236,227,209,.12); color:#FBF3DE; }

/* ============================================================ INTERIOR PAGES */
.page-hero{ position:relative; overflow:hidden; padding:clamp(40px,7vw,72px) 0 clamp(28px,4vw,44px); border-bottom:1px solid var(--line); }
.page-hero .container{ position:relative; z-index:3; }
.page-hero h1{ font-size:clamp(2rem,5vw,3.2rem); }
.page-hero p{ color:var(--ink-soft); max-width:56ch; font-size:1.05rem; margin:.5rem 0 0; }
.page-hero::before{ content:""; position:absolute; z-index:0; pointer-events:none; right:6%; top:24px; width:min(150px,32vw); height:90px;
  background:var(--surface); background-image:linear-gradient(rgba(176,134,47,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(176,134,47,.16) 1px,transparent 1px);
  background-size:12px 12px; border:1px solid var(--gold-line); box-shadow:0 16px 32px -22px rgba(24,21,16,.5); transform:rotate(3deg); }

.prose{ max-width:760px; }
.prose h2{ font-size:clamp(1.4rem,3vw,1.9rem); margin-top:2.4rem; }
.prose h3{ font-size:1.16rem; margin-top:1.8rem; }
.prose p{ color:var(--ink-soft); margin:0 0 1.1rem; }
.prose ul{ color:var(--ink-soft); padding-left:0; list-style:none; margin:0 0 1.1rem; }
.prose ul li{ position:relative; padding-left:20px; margin-bottom:8px; }
.prose ul li::before{ content:""; position:absolute; left:0; top:.6em; width:6px; height:6px; background:var(--gold); border-radius:1px; }
.prose a{ text-decoration:underline; text-underline-offset:3px; }

.team-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(16px,2.4vw,26px); }
.team-card{ border:1px solid var(--line); border-radius:3px; overflow:hidden; background:var(--surface); min-width:0; box-shadow:0 24px 48px -36px rgba(24,21,16,.4); }
.team-card .photo{ aspect-ratio:4/5; overflow:hidden; }
.team-card .photo img{ width:100%; height:100%; object-fit:cover; filter:grayscale(.4) contrast(1.05) sepia(.1); }
.team-card .body{ padding:24px; }
.team-card .avatar{ width:54px; height:54px; border-radius:50%; display:flex; align-items:center; justify-content:center;
  font-family:var(--serif); font-style:italic; font-weight:700; font-size:1.1rem; color:var(--accent-text); background:var(--surface-2);
  border:1px solid var(--gold-line); margin-bottom:16px; }
.team-card h3{ font-size:1.14rem; margin-bottom:.2rem; }
.team-card .role{ font-family:var(--mono); font-size:.7rem; letter-spacing:.07em; color:var(--accent-text); text-transform:uppercase; margin-bottom:.8rem; }
.team-card p{ color:var(--ink-soft); font-size:.86rem; margin:0; line-height:1.6; }

.center-panel{ min-height:60vh; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:60px var(--pad); }
.center-panel .code{ font-family:var(--serif); font-style:italic; font-size:clamp(4rem,14vw,9rem); color:var(--accent-text); font-weight:700; line-height:1; }
.center-panel h1{ font-size:clamp(1.7rem,4vw,2.5rem); margin:1rem 0 .5rem; }
.center-panel p{ color:var(--ink-soft); max-width:44ch; margin:0 0 1.8rem; }

/* ============================================================ MIXED-MEDIA NEWSPRINT DECOR (.km = pointer-events:none) */
.km{ position:absolute; pointer-events:none; z-index:1; }
.tc-ink{ color:var(--ink); } .tc-gold{ color:var(--gold); } .tc-slate{ color:var(--accent2); } .tc-cream{ color:#FBF4E4; }
.km-scrap{ width:120px; height:92px; background:var(--paper-a);
  box-shadow:0 16px 34px -20px rgba(24,21,16,.5), 0 1px 0 rgba(255,255,255,.4) inset;
  clip-path:polygon(3% 6%,26% 2%,54% 5%,82% 1%,98% 8%,95% 36%,100% 66%,96% 96%,70% 99%,42% 95%,18% 100%,2% 92%,0 60%,5% 30%); }
.km-scrap.pb{ background:var(--paper-b); } .km-scrap.pc{ background:var(--paper-c); } .km-scrap.pd{ background:var(--paper-d); }
.km-scrap.ink{ background:var(--ink); } .km-scrap.slate{ background:var(--accent2); }
.km-scrap.col{ background-image:repeating-linear-gradient(0deg, rgba(24,21,16,.5) 0 1px, transparent 1px 4px); }
.km-scrap.laid{ background-image:repeating-linear-gradient(0deg, rgba(24,21,16,.05) 0 2px, transparent 2px 5px); }
/* halftone dot patch */
.km-half{ width:110px; height:80px; opacity:.6;
  background:radial-gradient(rgba(24,21,16,.55) 32%, transparent 34%) 0 0/8px 8px, var(--paper-c);
  box-shadow:0 14px 30px -20px rgba(24,21,16,.45);
  clip-path:polygon(2% 6%,30% 2%,64% 5%,98% 2%,96% 40%,100% 74%,95% 98%,66% 94%,32% 99%,3% 95%,0 60%,4% 30%); }
.km-silk{ width:74px; height:92px; background:var(--silk-slate);
  box-shadow:0 14px 30px -18px rgba(24,21,16,.55), 0 1px 0 rgba(255,255,255,.14) inset;
  clip-path:polygon(4% 2%,96% 5%,99% 40%,97% 96%,60% 99%,8% 97%,1% 60%,3% 20%); }
.km-silk::after{ content:""; position:absolute; inset:0;
  background:repeating-linear-gradient(24deg, rgba(255,255,255,.05) 0 2px, transparent 2px 5px), radial-gradient(70% 50% at 34% 24%, rgba(255,255,255,.12), transparent 62%); }
.km-silk.bone{ background:var(--silk-bone); } .km-silk.ink{ background:var(--silk-ink); } .km-silk.gold{ background:#9C7A30; }
.km-tape{ width:96px; height:28px; background:var(--foil);
  box-shadow:0 4px 12px -5px rgba(24,21,16,.5), 0 1px 0 rgba(255,255,255,.25) inset;
  clip-path:polygon(4% 0,96% 0,100% 18%,97% 50%,100% 84%,96% 100%,4% 100%,0 82%,3% 50%,0 16%); }
.km-tape.tissue{ background:var(--tissue); box-shadow:0 3px 10px -6px rgba(24,21,16,.3); }
.km-tape.ink{ background:linear-gradient(135deg,#241E16,#3A332A); }
.km-tape.lbl{ display:flex; align-items:center; justify-content:center; height:26px; font-family:var(--mono); font-size:11px;
  letter-spacing:.15em; text-transform:uppercase; color:#2A2013; background:var(--foil-soft); }
.km-tissue{ width:180px; height:130px; background:rgba(255,251,242,.42); border:1px solid rgba(255,255,255,.28);
  box-shadow:0 8px 24px -16px rgba(24,21,16,.4);
  clip-path:polygon(2% 8%,30% 2%,64% 6%,98% 1%,96% 40%,100% 74%,95% 98%,66% 94%,32% 99%,3% 95%,0 60%,4% 30%); }
.km-tissue.gold{ background:linear-gradient(135deg, rgba(231,206,148,.28), rgba(176,134,47,.12)); }
.km-rule{ width:180px; height:1px; background:linear-gradient(90deg, transparent, var(--gold) 12%, var(--gold) 88%, transparent); opacity:.75; }
.km-rule.v{ width:1px; height:180px; background:linear-gradient(180deg, transparent, var(--gold) 12%, var(--gold) 88%, transparent); }
.km-reg{ width:34px; height:34px; background:radial-gradient(circle, transparent 4px, currentColor 4px, currentColor 5.2px, transparent 6px); }
.km-reg::before{ content:""; position:absolute; left:50%; top:-5px; bottom:-5px; width:1px; background:currentColor; transform:translateX(-50%); }
.km-reg::after{ content:""; position:absolute; top:50%; left:-5px; right:-5px; height:1px; background:currentColor; transform:translateY(-50%); }
.km-crop{ width:26px; height:26px; }
.km-crop::before{ content:""; position:absolute; left:0; top:0; width:26px; height:1px; background:currentColor; }
.km-crop::after{ content:""; position:absolute; left:0; top:0; width:1px; height:26px; background:currentColor; }
.km-seal{ width:60px; height:60px; border-radius:50%;
  background:radial-gradient(circle at 36% 30%, #C9A867, #8C6A28 62%, #6E521E);
  box-shadow:0 12px 26px -12px rgba(24,21,16,.6), 0 1px 0 rgba(255,255,255,.3) inset;
  display:flex; align-items:center; justify-content:center; font-family:var(--serif); font-style:italic; font-weight:700; font-size:1.5rem;
  color:#5A4418; text-shadow:0 1px 0 rgba(255,255,255,.28); }
.km-seal::before{ content:""; position:absolute; inset:5px; border-radius:50%; border:1px solid rgba(90,68,24,.5); }
.km-seal.ink{ background:radial-gradient(circle at 36% 30%, #3A332A, #241E16 66%, #181510); color:var(--gold-hi); text-shadow:0 1px 0 rgba(0,0,0,.4); }
.km-seal.ink::before{ border-color:rgba(231,206,148,.35); }
.km-stamp{ font-family:var(--mono); font-weight:700; font-size:11px; letter-spacing:.15em; text-transform:uppercase; color:currentColor;
  border:1px solid currentColor; border-radius:2px; padding:5px 10px; opacity:.72; white-space:nowrap; transform:rotate(-4deg); background:rgba(236,227,209,.2); }
.km-stamp.foil{ color:#3A2C10; border-color:transparent; background:var(--foil-soft); opacity:.92; box-shadow:0 3px 8px -4px rgba(24,21,16,.4); }
.km-hand{ font-family:var(--serif); font-style:italic; font-weight:700; color:var(--hand); font-size:1.1rem; line-height:1;
  transform:rotate(-6deg); white-space:nowrap; opacity:.85; text-shadow:0 1px 0 rgba(255,255,255,.4); }
.km-num{ font-family:var(--serif); font-style:italic; font-weight:700; font-size:clamp(120px,20vw,270px); line-height:.7; color:var(--gold);
  opacity:.1; letter-spacing:-.04em; text-shadow:1px 1px 0 rgba(255,255,255,.3); }
.km-ticket{ width:120px; height:42px; background:var(--paper-c); border:1px solid var(--gold-line); box-shadow:0 10px 22px -14px rgba(24,21,16,.5);
  display:flex; align-items:center; justify-content:center; font-family:var(--mono); font-size:10px; letter-spacing:.15em; text-transform:uppercase; color:var(--accent-text);
  -webkit-mask:radial-gradient(7px 7px at 0 50%, transparent 6px, #000 7px), radial-gradient(7px 7px at 100% 50%, transparent 6px, #000 7px); -webkit-mask-composite:source-in;
  mask:radial-gradient(7px 7px at 0 50%, transparent 6px, #000 7px), radial-gradient(7px 7px at 100% 50%, transparent 6px, #000 7px); mask-composite:intersect; }
.km-photo{ background:#FBF4E4; padding:6px; box-shadow:0 26px 50px -26px rgba(24,21,16,.55), 0 0 0 1px var(--gold-line);
  clip-path:polygon(2% 5%,24% 1%,52% 4%,80% 0,99% 6%,96% 34%,100% 66%,97% 96%,72% 99%,44% 96%,20% 100%,2% 94%,0 60%,4% 30%); }
.km-photo img{ width:100%; height:100%; object-fit:cover; display:block; filter:grayscale(.28) contrast(1.05) sepia(.12); }
.km-photo .tp{ position:absolute; top:-9px; left:24%; width:60px; height:20px; background:var(--foil); transform:rotate(-6deg);
  clip-path:polygon(4% 0,96% 0,100% 18%,97% 50%,100% 84%,96% 100%,4% 100%,0 82%,3% 50%,0 16%); }
.km-photo .tp.b{ left:auto; right:20%; transform:rotate(7deg); }

/* ============================================================ IN-FLOW GILT-FRAMED NEWSPRINT-COLLAGE PHOTOS
   Real photographs mounted as torn cut-out clippings: bone mount + antique gold-foil ring,
   hand-torn edge, foil tape, folio caption. Always visible (not decor). */
.photo-plate{ position:relative; display:block; background:#FBF4E4; padding:8px; border-radius:2px; min-width:0;
  box-shadow:0 30px 60px -34px rgba(24,21,16,.55), 0 0 0 1px var(--gold-line);
  clip-path:polygon(2% 4%,22% 1%,50% 4%,78% 0,99% 5%,97% 33%,100% 64%,98% 95%,72% 99%,46% 96%,22% 100%,3% 95%,0 62%,2% 30%);
  transform:rotate(-.7deg); transition:transform .3s cubic-bezier(.2,.7,.2,1), box-shadow .3s ease; }
.photo-plate.rt{ transform:rotate(.8deg); }
.photo-plate.flat{ transform:none; }
.photo-plate:hover{ transform:rotate(0deg) translateY(-4px); box-shadow:0 42px 74px -32px rgba(24,21,16,.62), 0 0 0 1px var(--line-amber); }
.photo-plate::after{ content:""; position:absolute; inset:8px; z-index:2; pointer-events:none;
  background:linear-gradient(200deg, rgba(24,21,16,.02) 40%, rgba(24,21,16,.34)); }
.photo-plate img{ width:100%; height:100%; aspect-ratio:4/3; object-fit:cover; display:block;
  filter:grayscale(.3) contrast(1.06) sepia(.12); }
.photo-plate.portrait img{ aspect-ratio:4/5; }
.photo-plate.wide img{ aspect-ratio:16/7; }
.photo-plate .tp{ position:absolute; top:-11px; left:20%; width:78px; height:23px; z-index:4; background:var(--foil);
  transform:rotate(-5deg); box-shadow:0 4px 10px -5px rgba(24,21,16,.42); opacity:.94;
  clip-path:polygon(4% 0,96% 0,100% 18%,97% 50%,100% 84%,96% 100%,4% 100%,0 82%,3% 50%,0 16%); }
.photo-plate .tp.r{ left:auto; right:18%; transform:rotate(6deg); }
.photo-plate .folio{ position:absolute; left:12px; bottom:12px; z-index:4; font-family:var(--mono);
  font-size:.62rem; letter-spacing:.13em; text-transform:uppercase; color:#241a08;
  background:var(--foil-soft); padding:3px 9px; box-shadow:0 3px 8px -4px rgba(24,21,16,.4); }
.photo-plate .pin{ position:absolute; top:8px; right:12px; z-index:4; width:12px; height:12px; border-radius:50%;
  background:radial-gradient(circle at 36% 30%, #E7CE94, #8C6A28 68%); box-shadow:0 3px 7px -2px rgba(24,21,16,.6); }

/* collage bands: 1–3 plates in flow */
.photo-band{ display:grid; gap:clamp(18px,2.6vw,30px); margin:clamp(24px,3.6vw,44px) 0 0; position:relative; z-index:3; }
.photo-band.duo{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.photo-band.trio{ grid-template-columns:repeat(3,minmax(0,1fr)); }
.photo-band.lead{ margin:0 0 clamp(24px,3.6vw,44px); }
@media (max-width:680px){ .photo-band.duo, .photo-band.trio{ grid-template-columns:1fr; gap:22px; } }

/* ============================================================ PRELOADER + GOLD-DUST MOTES */
#pre{ position:fixed; inset:0; z-index:10000; background:var(--bg); display:grid; place-items:center; transition:opacity .7s ease, visibility .7s; }
#pre.done{ opacity:0; visibility:hidden; pointer-events:none; }
#pre .pl-in{ text-align:center; }
#pre .pl-mark{ font-family:var(--serif); font-style:italic; font-weight:700; font-size:clamp(34px,7vw,64px); letter-spacing:-.02em; color:var(--ink); }
#pre .pl-mark b{ color:var(--accent-text); font-style:normal; }
#pre .pl-sub{ font-family:var(--mono); font-size:11px; letter-spacing:.32em; text-transform:uppercase; color:var(--muted); margin-top:10px; }
#pre .pl-bar{ margin:24px auto 0; width:min(220px,58vw); height:2px; background:var(--line-strong); overflow:hidden; position:relative; }
#pre .pl-bar i{ position:absolute; inset:0; width:0; background:var(--foil); animation:plFill 1.15s cubic-bezier(.5,0,.2,1) forwards; }
@keyframes plFill{ to{ width:100%; } }
#motes{ position:fixed; inset:0; z-index:2; pointer-events:none; mix-blend-mode:multiply; opacity:.5; }

.scroll-progress{ position:fixed; top:0; left:0; height:3px; width:0; background:var(--foil); z-index:9998; transition:width 80ms linear; pointer-events:none; }

/* ============================================================ RESPONSIVE */
@media (max-width:1024px){
  .hero-grid{ grid-template-columns:1fr; }
  .akis-grid{ grid-template-columns:1fr; }
  .calc-grid{ grid-template-columns:1fr; }
  .calc-controls{ border-right:0; border-bottom:1px solid var(--line); }
  .footer-grid{ grid-template-columns:1fr 1fr; }
}
@media (max-width:768px){
  :root{ --header-h:64px; }
  .source-grid{ grid-template-columns:1fr; }
  .testi-grid{ grid-template-columns:1fr; }
  .team-grid{ grid-template-columns:1fr; }
  .stat-band .container{ grid-template-columns:repeat(2,1fr); }
  .stat-cell:nth-child(2){ border-right:0; }
  .stat-cell:nth-child(1), .stat-cell:nth-child(2){ border-bottom:1px solid var(--line); }
  .form-row{ grid-template-columns:1fr; }
}
@media (max-width:560px){
  .footer-grid{ grid-template-columns:1fr; }
  .akis-list li{ grid-template-columns:1fr; gap:4px; }
  .akis-list .src{ justify-self:start; }
  .contact-card, .source-card .body, .testi{ padding:18px; }
  .footer-bottom{ flex-direction:column; align-items:flex-start; }
}
@media (max-width:400px){
  .stat-band .container{ grid-template-columns:1fr; }
  .stat-cell{ border-right:0; border-bottom:1px solid var(--line); }
  .stat-cell:last-child{ border-bottom:0; }
}

/* ============================================================ MOBILE CURATION — keep whole-page collage, curate ~45% */
@media (max-width:900px){ .km-bleed{ display:none!important; } }
@media (max-width:768px){
  .km:not(.km-keep){ display:none!important; }
  .km-keep.km-scrap{ transform:scale(.72); }
  .km-keep.km-half{ transform:scale(.72); }
  .km-keep.km-silk{ transform:scale(.74); }
  .km-keep.km-tape{ width:74px; }
  .km-keep.km-rule{ width:120px; }
  .km-keep.km-num{ font-size:104px; }
  .km-keep.km-tissue{ width:120px; height:88px; }
  .km-keep.km-ticket{ transform:scale(.82); }
  .km-keep.km-seal{ transform:scale(.82); }
  .km-keep.km-hand{ font-size:.92rem; max-width:44vw; white-space:normal; }
  .section-head::before{ width:min(230px,84%); left:-10px; }
  .manset-track{ height:270vh; }
  .gl{ font-size:clamp(1.3rem,6vw,2.6rem); }
}
@media (max-width:480px){
  .km-num{ font-size:86px; }
  .manset-track{ height:240vh; }
  .gl{ font-size:clamp(1.05rem,6.6vw,1.8rem); }
}

@media (prefers-reduced-motion:reduce){
  .manset-scroll{ animation:none; }
  .gl{ opacity:1!important; transform:none!important; }
  #motes{ display:none; }
  .btn-primary::after{ display:none; }
}
