/* Atlas — atlasmaster.app · ölçüm föyü dili: mine zemin, mürekkep, kılavuz mavisi, ölçü kırmızısı */
/* yazı tipleri yerelden (fonts/) */
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/ibm-plex-mono-400-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:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/ibm-plex-mono-400-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:swap;src:url(fonts/ibm-plex-mono-500-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:"IBM Plex Mono";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/ibm-plex-mono-500-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 600;font-display:swap;src:url(fonts/ibm-plex-sans-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:"IBM Plex Sans";font-style:normal;font-weight:400 600;font-display:swap;src:url(fonts/ibm-plex-sans-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:"Instrument Serif";font-style:italic;font-weight:400;font-display:swap;src:url(fonts/instrument-serif-400i-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:"Instrument Serif";font-style:italic;font-weight:400;font-display:swap;src:url(fonts/instrument-serif-400i-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:"Instrument Serif";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/instrument-serif-400-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:"Instrument Serif";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/instrument-serif-400-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}
:root{
  color-scheme:light;
  --bg:#f5f3ee;--surface:#fbfaf7;--fg:#141922;--mut:#535b66;
  --line:rgba(20,25,34,.14);--line2:rgba(20,25,34,.34);--grid:rgba(20,25,34,.05);
  --acc:#1b45cf;--acc-fg:#fff;--warn:#b93217;--tooth:#fff;
  --serif:"Instrument Serif","Iowan Old Style","Palatino Linotype",Georgia,serif;
  --sans:"IBM Plex Sans",-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,"SF Mono",Menlo,Consolas,monospace;
  --pad:16px;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    color-scheme:dark;
    --bg:#0c1016;--surface:#121821;--fg:#ece9e2;--mut:#a0a8b3;
    --line:rgba(236,233,226,.14);--line2:rgba(236,233,226,.36);--grid:rgba(236,233,226,.045);
    --acc:#8fb0ff;--acc-fg:#0c1016;--warn:#ff9076;--tooth:#161d28;
  }
}
:root[data-theme="dark"]{
  color-scheme:dark;
  --bg:#0c1016;--surface:#121821;--fg:#ece9e2;--mut:#a0a8b3;
  --line:rgba(236,233,226,.14);--line2:rgba(236,233,226,.36);--grid:rgba(236,233,226,.045);
  --acc:#8fb0ff;--acc-fg:#0c1016;--warn:#ff9076;--tooth:#161d28;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:72px}
body{margin:0;background:var(--bg);color:var(--fg);font:400 1rem/1.6 var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,p,ol,ul,figure{margin:0}
ol,ul{padding:0;list-style:none}
svg{display:block;max-width:100%;height:auto}
a{color:var(--acc);text-underline-offset:.18em;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:2px solid var(--acc);outline-offset:3px}
::selection{background:var(--acc);color:var(--acc-fg)}

.wrap{max-width:1120px;margin-inline:auto;padding-inline:var(--pad)}
.skip{position:absolute;left:-999px;top:0;background:var(--fg);color:var(--bg);padding:10px 14px;z-index:20}
.skip:focus{left:var(--pad);top:8px}
.mono,.eyebrow,.idx,.tag,.pipe b,.stat span,.nav a,.cap,.btn,.foot{font-family:var(--mono);font-size:.75rem;letter-spacing:.06em;text-transform:uppercase}

/* üst şerit */
.top{position:sticky;top:0;z-index:10;background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.top .wrap{display:flex;align-items:center;gap:20px;height:56px}
.brand{display:flex;align-items:center;gap:10px;color:var(--fg);text-decoration:none;font:400 1.6rem/1 var(--serif);margin-right:auto}
.brand svg{width:22px;height:22px}
.nav{display:none;gap:22px}
.nav a,.lang{color:var(--mut);text-decoration:none}
.nav a:hover,.lang:hover{color:var(--fg)}
.lang{font-family:var(--mono);font-size:.75rem;letter-spacing:.06em;border:1px solid var(--line2);padding:6px 10px;color:var(--fg)}
.theme{appearance:none;background:none;border:1px solid var(--line2);color:var(--fg);width:34px;height:34px;padding:0;display:grid;place-items:center;cursor:pointer}
.theme svg{width:16px;height:16px}
.theme[hidden]{display:none}
/* mobil menü */
.menu{appearance:none;background:none;border:1px solid var(--line2);color:var(--fg);width:34px;height:34px;padding:0;display:grid;place-items:center;cursor:pointer}
.menu svg{width:16px;height:16px}
.menu[hidden]{display:none}
@media (max-width:759.98px){
  .nav.open{display:flex;flex-direction:column;gap:0;position:absolute;left:0;right:0;top:56px;background:var(--bg);border-bottom:1px solid var(--line2);padding:4px var(--pad) 10px}
  .nav.open a{padding:13px 0;border-top:1px solid var(--line)}
  .nav.open a:first-child{border-top:0}
}

/* cetvel */
.ruler{height:9px;background:
  repeating-linear-gradient(90deg,var(--line2) 0 1px,transparent 1px 40px),
  repeating-linear-gradient(90deg,var(--line) 0 1px,transparent 1px 8px);
  background-size:auto 9px,auto 5px;background-repeat:repeat-x;background-position:0 0,0 0}

/* giriş */
.hero{padding:44px 0 40px}
.hero-grid{display:grid;gap:36px}
.eyebrow{color:var(--mut);display:flex;align-items:center;gap:10px;margin-bottom:18px}
.eyebrow::before{content:"";width:28px;height:1px;background:var(--warn)}
h1{font:400 clamp(2.5rem,10.4vw,5rem)/1.02 var(--serif);letter-spacing:-.012em;text-wrap:balance}
h1 em,h2 em{font-style:italic;color:var(--acc)}
.lead{font-size:1.125rem;line-height:1.55;color:var(--mut);max-width:34em;margin-top:20px}
.lead strong{color:var(--fg);font-weight:500}
.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:22px}
.tag{border:1px solid var(--line2);padding:4px 9px;color:var(--fg);font-size:.6875rem}
.cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.btn{display:inline-flex;align-items:center;gap:10px;min-height:46px;padding:0 18px;border:1px solid var(--fg);color:var(--fg);text-decoration:none;font-weight:500;transition:background .15s,color .15s}
.btn:hover{background:var(--fg);color:var(--bg)}
.btn.pri{background:var(--acc);border-color:var(--acc);color:var(--acc-fg)}
.btn.pri:hover{background:var(--fg);border-color:var(--fg);color:var(--bg)}

/* föy (şekil çerçevesi) */
.sheet{position:relative;border:1px solid var(--line2);background:
  linear-gradient(var(--grid) 1px,transparent 1px) 0 0/100% 20px,
  linear-gradient(90deg,var(--grid) 1px,transparent 1px) 0 0/20px 100%,var(--surface)}
.sheet::before,.sheet::after{content:"";position:absolute;width:11px;height:11px;border:solid var(--warn);pointer-events:none}
.sheet::before{left:-1px;top:-1px;border-width:2px 0 0 2px}
.sheet::after{right:-1px;bottom:-1px;border-width:0 2px 2px 0}
.sheet svg{width:100%}
.cap{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:9px 12px;border-top:1px solid var(--line);color:var(--mut);font-size:.6875rem;background:var(--surface)}

/* svg sınıfları */
.s{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.s .a,.a{stroke:var(--acc)}
.t{fill:var(--tooth);stroke:var(--fg);stroke-width:1.6;stroke-linejoin:round}
.r{fill:none;stroke:var(--fg);stroke-width:1;opacity:.3}
.g{fill:none;stroke:var(--acc);stroke-width:1.5;stroke-dasharray:5 5}
.gs{fill:none;stroke:var(--acc);stroke-width:1.2}
.gd{fill:var(--surface);stroke:var(--acc);stroke-width:1.5}
.d{fill:none;stroke:var(--warn);stroke-width:1.3}
.ld{fill:none;stroke:var(--mut);stroke-width:1}
.lb{font:500 17px var(--mono);fill:var(--mut);letter-spacing:.04em}
.lb.ac{fill:var(--acc)}.lb.wn{fill:var(--warn)}
.bx{fill:var(--surface);stroke:var(--fg);stroke-width:1.3}
.bx.dash{stroke:var(--mut);stroke-dasharray:4 4}
.bx.core{fill:var(--fg)}
.wire{fill:none;stroke:var(--fg);stroke-width:1.2}
.wire.back{stroke:var(--warn);stroke-dasharray:4 4}
.wire.br{stroke:var(--mut);stroke-dasharray:3 3}
.ah{fill:var(--fg)}.ah.back{fill:var(--warn)}
.gate{fill:var(--bg);stroke:var(--acc);stroke-width:1.6}
.k{font:500 10px var(--mono);fill:var(--mut);letter-spacing:.08em}
.k.inv{fill:var(--bg);opacity:.72}.k.ac{fill:var(--acc)}.k.wn{fill:var(--warn)}
.n{font:600 14px var(--sans);fill:var(--fg)}
.n.inv{fill:var(--bg);font-size:16px}
.m{font:400 11px var(--sans);fill:var(--mut)}
.m.inv{fill:var(--bg);opacity:.8}

/* bölümler */
.sec{padding:52px 0;border-top:1px solid var(--line)}
.sec-grid{display:grid;gap:26px}
.idx{color:var(--warn);display:block;margin-bottom:10px}
h2{font:400 clamp(1.9rem,6.4vw,2.75rem)/1.08 var(--serif);letter-spacing:-.008em;text-wrap:balance}
.sec-head p{color:var(--mut);margin-top:12px;max-width:30em}
.prose{font-size:1.0625rem;line-height:1.65;max-width:40em}
.prose+.prose{margin-top:14px}

/* hücreler */
.cells{display:grid;gap:1px;background:var(--line);border:1px solid var(--line)}
.cell{background:var(--bg);padding:22px 18px 24px}
.cell .idx{color:var(--mut);margin-bottom:14px}
h3{font:600 1.0625rem/1.3 var(--sans);margin-bottom:8px}
.cell p{color:var(--mut);font-size:.9688rem}
.cell.wide p{font-size:1rem;line-height:1.65}

/* boru hattı */
.pipe{counter-reset:p}
.pipe li{position:relative;display:grid;grid-template-columns:56px 1fr;gap:4px 16px;padding-bottom:26px}
.pipe li:last-child{padding-bottom:0}
.pipe li:not(:last-child)::before{content:"";position:absolute;left:27.5px;top:56px;bottom:0;width:1px;background:var(--line2)}
.pipe li:not(:last-child)::after{content:"";position:absolute;left:24px;bottom:2px;width:8px;height:8px;border:solid var(--line2);border-width:0 1px 1px 0;transform:rotate(45deg)}
.ico{grid-row:span 2;width:56px;height:56px;border:1px solid var(--line2);background:var(--surface);display:grid;place-items:center;color:var(--fg)}
.ico svg{width:32px;height:32px}
.pipe b{counter-increment:p;font-weight:500;color:var(--fg);align-self:end;padding-top:6px}
.pipe b::before{content:"0" counter(p) " ";color:var(--warn)}
.pipe p{color:var(--mut);font-size:.9688rem}

/* teknoloji */
.tech{display:grid;gap:28px}
.schema{max-width:520px}
.schema svg{padding:14px 10px}

/* ölçek */
.stats{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line)}
.stat{background:var(--bg);padding:18px 14px 20px;min-width:0}
.stat strong{display:block;font:400 clamp(2.4rem,11vw,4rem)/1 var(--serif);letter-spacing:-.02em}
.stat span{display:block;color:var(--mut);margin-top:10px;font-size:.6875rem;line-height:1.5}

/* kılavuz kartı */
.guide{display:block;border:1px solid var(--fg);padding:22px 18px;text-decoration:none;color:var(--fg);background:var(--surface);transition:background .15s,color .15s}
.guide:hover{background:var(--fg);color:var(--bg)}
.guide .ticks{display:flex;gap:0;justify-content:space-between;height:26px;align-items:flex-end;margin-bottom:18px}
.guide .ticks i{width:1px;height:100%;background:currentColor;opacity:.55}
.guide .ticks i:nth-child(even){height:55%}
.guide .ticks i:nth-child(10){background:var(--warn);opacity:1;width:2px}
.guide strong{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font:400 clamp(1.7rem,6.6vw,2.4rem)/1.1 var(--serif)}
.guide small{display:block;font:500 .6875rem var(--mono);letter-spacing:.06em;text-transform:uppercase;margin-top:10px;opacity:.75}

/* alıntı, iletişim */
.pull{font:400 clamp(1.5rem,5.6vw,2.2rem)/1.2 var(--serif);border-left:2px solid var(--warn);padding-left:16px;margin-top:26px;max-width:24em;text-wrap:balance}
.mail{font:400 clamp(1.45rem,6.6vw,3rem)/1.15 var(--serif);color:var(--fg);text-decoration-color:var(--acc);overflow-wrap:anywhere}
.more{margin-top:18px;color:var(--mut)}

footer{border-top:1px solid var(--line2);padding:26px 0 40px}
.foot{display:flex;flex-wrap:wrap;gap:8px 22px;color:var(--mut);font-size:.6875rem;margin-top:16px}
.foot a{color:var(--mut)}
.privacy{font:400 1.25rem/1.3 var(--serif);max-width:26em}

@media (min-width:600px){
  .cells.two,.cells.four{grid-template-columns:1fr 1fr}
  .stats{grid-template-columns:repeat(3,1fr)}
}
@media (min-width:760px){
  :root{--pad:32px}
  .nav{display:flex}
  .menu{display:none}
  .hero{padding:72px 0 64px}
  .sec{padding:84px 0}
  .cell{padding:28px 26px 30px}
  .stat{padding:26px 22px 28px}
  .guide{padding:30px 28px}
}
@media (min-width:980px){
  .hero-grid{grid-template-columns:1.08fr .92fr;align-items:end;gap:56px}
  .sec-grid{grid-template-columns:260px 1fr;gap:56px}
  .sec-head{position:sticky;top:88px;align-self:start}
  .pipe{display:grid;grid-template-columns:repeat(5,1fr);gap:22px}
  .pipe li{display:block;padding-bottom:0}
  .pipe li:not(:last-child)::before{left:56px;right:-22px;top:28px;bottom:auto;width:auto;height:1px}
  .pipe li:not(:last-child)::after{left:auto;right:-21px;top:24px;bottom:auto;transform:rotate(-45deg)}
  .pipe b{display:block;margin:16px 0 6px;padding:0}
  .tech{grid-template-columns:1fr 1fr;align-items:start;gap:40px}
  .cells.four{grid-template-columns:1fr 1fr}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{.top,.theme,.cta{display:none}body{background:#fff;color:#000}}

/* ajan evrimi */
#evrim .evrim{display:grid;gap:28px}
#evrim .cells.three{grid-template-columns:1fr}
#evrim .evsteps{list-style:none;counter-reset:e;display:grid;gap:14px;margin-bottom:22px}
#evrim .evsteps li{counter-increment:e;display:grid;grid-template-columns:34px 1fr;align-items:start}
#evrim .evsteps li::before{content:counter(e);font:500 .75rem var(--mono);color:var(--acc);border:1px solid var(--acc);width:24px;height:24px;display:grid;place-items:center}
#evrim .evsteps b{font-weight:600}
#evrim .evsteps i{font:500 .6875rem var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--warn);font-style:normal}
#evrim .evsteps span{color:var(--mut);font-size:.9688rem}
#evrim .evsteps b{color:var(--fg)}
#evrim .pull{margin-bottom:14px}
#evrim .evtime{list-style:none;display:grid;gap:0}
#evrim .evtime li{position:relative;padding:0 0 18px 22px;border-left:1px solid var(--line2)}
#evrim .evtime li:last-child{padding-bottom:0}
#evrim .evtime li::before{content:"";position:absolute;left:-5px;top:4px;width:9px;height:9px;background:var(--bg);border:1px solid var(--acc)}
#evrim .evtime b{display:block;font:500 .75rem var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--warn)}
#evrim .evtime span{color:var(--mut);font-size:.9688rem}
@media (min-width:600px){#evrim .cells.three{grid-template-columns:repeat(3,1fr)}}
@media (min-width:760px){
  #evrim .evtime{grid-template-columns:repeat(4,1fr);gap:22px}
  #evrim .evtime li{border-left:0;border-top:1px solid var(--line2);padding:18px 0 0}
  #evrim .evtime li::before{left:0;top:-5px}
}

/* genel: üçlü hücre, SSS, örnek bloğu, marka feragatı */
@media (min-width:600px){.cells.three{grid-template-columns:repeat(3,1fr)}}
.sec-head p[data-icerik]{max-width:30em}
.disclaimer{color:var(--mut);font-size:.8125rem;line-height:1.55;max-width:44em;margin-top:12px}
.exbox{margin-top:36px;display:grid;gap:18px}
.ba img{display:block;width:100%;height:auto}
.ba-stage{display:grid;gap:1px;background:var(--line)}
.ba-pane{position:relative;background:var(--bg)}
.ba-lab{position:absolute;left:10px;top:10px;font:500 .6875rem var(--mono);letter-spacing:.08em;background:var(--bg);color:var(--fg);padding:3px 8px;border:1px solid var(--line2)}
@media (min-width:600px){.ba-stage:not(.js){grid-template-columns:1fr 1fr}}
.ba-stage.js{display:block;position:relative;overflow:hidden;background:var(--bg);aspect-ratio:16/9;touch-action:pan-y}
.ba-stage.js .ba-pane{position:absolute;inset:0}
.ba-stage.js .ba-pane:first-child{clip-path:inset(0 calc(100% - var(--p,50%)) 0 0);z-index:2}
.ba-stage.js .ba-pane img{height:100%;object-fit:cover}
.ba-stage.js .ba-pane:nth-child(2) .ba-lab{left:auto;right:10px}
.ba-bar{position:absolute;top:0;bottom:0;left:var(--p,50%);width:2px;margin-left:-1px;background:var(--acc);z-index:3;pointer-events:none}
.ba-bar::after{content:"";position:absolute;top:50%;left:50%;width:22px;height:22px;margin:-11px 0 0 -11px;border:2px solid var(--acc);background:var(--bg);border-radius:50%}
.ba-range{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;z-index:4}
.strip{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.strip li{border:1px solid var(--line2);background:var(--surface)}
.strip img{display:block;width:100%;height:auto}
.strip span{display:block;font:500 .625rem var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mut);padding:6px 8px;border-top:1px solid var(--line)}
