/* ========================================================
   SOLIDA.DEV · SOLIDAI · INTRA MUROS
   Ocakta bir taş kesildi: kilit taşı, surun içinde ışır.
   Bazalt #111C22 · Pirinç #A87F3C · Kireç #EAE4D8 · Obsidyen #0A1216
   ======================================================== */
:root{
  --obsidyen:#0A1216;
  --bazalt:#111C22;
  --pirinc:#A87F3C;
  --kirec:#EAE4D8;
  --lum:#E6E0D4;
  --lum-2:rgba(234,228,216,.56);
  --lum-3:rgba(234,228,216,.34);
  --hair:rgba(234,228,216,.13);
  --hair-2:rgba(234,228,216,.28);
  --stone:#15222A;              /* sur içi taş */
  --stone-2:#1C2E37;            /* ışık alan taş */
  --patina:#7FA8A0;             /* bilgi · oksitlenmiş tunç */
  --uyari:#C0755C;              /* reddedilen çağrı */
  --maxw:1100px;
  --pad:32px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--obsidyen);color:var(--lum);
  font-family:"Crimson Pro",Georgia,serif;
  font-size:18px;line-height:1.55;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
::selection{background:var(--kirec);color:var(--obsidyen)}
a{color:inherit}
a:focus-visible,button:focus-visible{outline:1px solid var(--pirinc);outline-offset:4px}
img,svg{display:block}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad)}

/* — sistem etiketi — */
.sys{
  font-family:"Geist Mono",ui-monospace,monospace;
  font-weight:400;font-size:10.5px;letter-spacing:.3em;
  text-transform:uppercase;color:var(--lum-2);
}
.sys b{font-weight:500;color:var(--lum)}
.versal{font-family:"Libre Baskerville",Georgia,serif;letter-spacing:.3em;text-transform:uppercase;font-weight:400}

/* ============ ÜST KİLİT ============ */
.topbar{
  position:sticky;top:0;z-index:60;
  background:rgba(10,18,22,.88);backdrop-filter:blur(9px);
  border-bottom:1px solid var(--hair);
}
.topbar-in{display:flex;align-items:center;justify-content:space-between;height:72px;gap:22px}
.lock{display:flex;align-items:center;gap:13px;text-decoration:none;flex:none}
.lock svg{width:21px;height:auto}
.lock .name{font-size:17px;font-weight:400;letter-spacing:.28em;padding-top:2px}
.lock .name .ai{color:var(--pirinc)}
.nav{display:flex;align-items:center;gap:26px}
.nav a{text-decoration:none;font-size:10.5px;font-weight:400;letter-spacing:.2em;color:var(--lum-2);transition:color .25s}
.nav>a:not(.cta){position:relative;padding-bottom:5px}
.nav>a:not(.cta)::after{
  content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;
  background:var(--pirinc);transform:scaleX(0);transform-origin:left;
  transition:transform .35s cubic-bezier(.2,.7,.2,1);
}
.nav a:hover{color:var(--lum)}
.nav>a:not(.cta):hover::after{transform:scaleX(1)}
.nav a.cta{
  display:inline-flex;align-items:center;gap:10px;
  color:var(--obsidyen);background:var(--kirec);border:1px solid var(--kirec);
  padding:11px 17px;white-space:nowrap;
  clip-path:polygon(0 0,100% 0,100% 100%,0 100%);
  transition:background .45s ease,color .45s ease,clip-path .45s cubic-bezier(.2,.7,.2,1);
}
.nav a.cta .sq{width:4px;height:4px;background:var(--pirinc);flex:none;transition:background .45s ease}
.nav a.cta:hover{background:var(--pirinc);color:var(--obsidyen);border-color:var(--pirinc);clip-path:polygon(0 0,100% 0,88% 100%,12% 100%)}
.nav a.cta:hover .sq{background:var(--obsidyen)}
.nav a.cta .lbl-s{display:none}
@media (max-width:400px){
  .nav a.cta .lbl-l{display:none}
  .nav a.cta .lbl-s{display:inline}
}
/* dil kilidi */
.lang{display:inline-flex;align-items:center;gap:9px;flex:none}
.lang a{
  text-decoration:none;padding:2px 1px;
  font-family:"Geist Mono",ui-monospace,monospace;
  font-size:10.5px;letter-spacing:.2em;color:var(--lum-3);
  transition:color .3s ease;
}
.lang a:hover{color:var(--lum)}
.lang a[aria-current="page"]{color:var(--pirinc)}
.lang .sep{width:1px;height:11px;background:var(--hair-2);flex:none}

/* ============ PLAKA BAŞLIĞI ============ */
/* Çapa hizası: bölümün kendi üst iç boşluğu (104px) üst kilidin altında
   payı zaten bırakır; bölüm başlığı kilidin ~32px altına oturur. */
.plate{padding:104px 0 0;scroll-margin-top:0}
.plate-head{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:20px;margin-bottom:44px}
.plate-head .sys{font-size:14px;letter-spacing:.22em;display:flex;align-items:center}
.plate-head .sys::before{content:"";width:6px;height:6px;flex:none;background:var(--pirinc);margin-right:14px}
.plate-head .num{color:var(--lum-3);margin-right:14px}
.plate-head .rule{height:1px;background:var(--hair)}
.plate-note{margin:0 0 44px;font-size:17.5px;line-height:1.62;color:var(--lum-2);max-width:64ch}
.plate-note b{font-weight:500;color:var(--lum)}

/* ============ I · GİRİŞ ============ */
.hero{padding:78px 0 0}
.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:56px;align-items:center}
.hero .kicker{margin:0 0 22px;display:flex;align-items:center}
.hero .kicker::before{content:"";width:5px;height:5px;flex:none;background:var(--pirinc);margin-right:13px}
.hero h1{
  font-weight:400;font-size:clamp(28px,3.5vw,42px);
  line-height:1.18;letter-spacing:-0.012em;margin:0 0 24px;
}
.hero .sublede{font-size:19.5px;line-height:1.55;color:var(--lum);font-weight:400;max-width:46ch;margin:0 0 18px}
.hero .lede{font-size:16.5px;line-height:1.65;color:var(--lum-2);max-width:54ch;margin:0}
.status{display:inline-flex;align-items:center;gap:12px;margin-top:26px}
.status .dot{width:5px;height:5px;background:var(--pirinc);flex:none}
.status .cur{display:inline-block;width:7px;height:12px;background:var(--lum-3);vertical-align:-1px}

/* — buton — */
.btn{
  display:inline-flex;align-items:center;gap:12px;text-decoration:none;
  font-family:"Geist Mono",ui-monospace,monospace;
  font-size:10.5px;letter-spacing:.28em;text-transform:uppercase;
  padding:16px 24px;border:1px solid var(--hair-2);color:var(--lum);
  transition:background .25s,color .25s,border-color .25s;
}
.btn:hover{background:var(--kirec);color:var(--obsidyen);border-color:var(--kirec)}
.btn.solid{background:var(--kirec);color:var(--obsidyen);border-color:var(--kirec)}
.btn.solid:hover{background:var(--pirinc);border-color:var(--pirinc)}
.btn .sq{width:4px;height:4px;background:var(--pirinc);flex:none}
button.btn{appearance:none;cursor:pointer;font-family:"Geist Mono",ui-monospace,monospace}
button.btn:disabled{opacity:.5;cursor:default}

/* ============ SUR · HERO LEVHASI ============ */
.wall-fig{margin:0;position:relative}
.wall-fig svg{width:100%;max-width:540px;height:auto;margin:0 auto;overflow:visible}
.fig-cap{display:block;margin-top:18px;text-align:center;font-size:9px;letter-spacing:.22em;color:var(--lum-3);line-height:2}
.fig-cap b{color:var(--pirinc);font-weight:400}
/* çizim katmanları */
.svg-hair{stroke:var(--lum);stroke-opacity:.3;fill:none}
.svg-lbl{
  font-family:"Geist Mono",ui-monospace,monospace;
  font-size:4.4px;letter-spacing:.7px;fill:var(--lum-3);text-transform:uppercase;
}
.wall-fig .stone{fill:var(--stone);stroke:rgba(234,228,216,.22);stroke-width:.7}
.wall-fig .key{fill:var(--pirinc);stroke:none}
/* kesit taşı — poché: mimari kesitte kesilen kütle taranır */
.wall-fig .mass{fill:var(--stone);stroke:rgba(234,228,216,.2);stroke-width:.8}
.wall-fig .poche{fill:url(#poche);stroke:none;pointer-events:none}
.wall-fig .shaft{fill:url(#shaft);stroke:none;pointer-events:none}
/* mühürlü kapı — holün tek açıklığı */
.wall-fig .door{fill:#1D2E36;stroke:rgba(234,228,216,.3);stroke-width:.8;transition:stroke .5s ease}
.wall-fig .door-j{stroke:rgba(234,228,216,.22);stroke-width:.6}
.wall-fig .band{fill:var(--pirinc);opacity:.7}
.wall-fig .bolt{fill:var(--pirinc)}
.wall-fig:hover .door{stroke:var(--pirinc)}
.wall-fig .mote{fill:var(--patina);opacity:0}
@supports (offset-path:path("M0,0 L1,1")){.wall-fig .mote{opacity:1}}
.wall-fig .flare{fill:none;stroke:var(--uyari);stroke-width:1.6;opacity:0;transform-box:fill-box;transform-origin:center}
.wall-fig .esc{fill:var(--uyari);opacity:0}
.wall-fig .esc-lbl{fill:var(--uyari);opacity:0}
.wall-fig .halo{fill:url(#glow);opacity:.5;transform-box:fill-box;transform-origin:center}

/* ============ ÖLÇÜLER ============ */
.measures{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:76px}
.m-card{
  position:relative;z-index:0;overflow:hidden;
  border:1px solid var(--hair-2);padding:28px 26px 24px;
  transition:border-color .6s ease,border-radius .85s cubic-bezier(.2,.7,.2,1),background-color .6s ease;
}
.m-card::before{
  content:"";position:absolute;top:0;left:50%;z-index:1;
  width:44px;height:18px;transform:translate(-50%,-13px);opacity:0;
  background:var(--pirinc);clip-path:polygon(8% 0,92% 0,71% 100%,29% 100%);
  transition:opacity .9s ease .2s,transform .9s cubic-bezier(.2,.7,.2,1) .2s;
}
.m-card:hover{border-color:var(--lum-3);border-radius:70px 70px 0 0;background-color:rgba(234,228,216,.022)}
.m-card:hover::before{opacity:1;transform:translate(-50%,0)}
.m-num{font-weight:300;font-size:46px;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:-0.02em}
.m-num small{font-size:15px;font-weight:400;letter-spacing:.16em;color:var(--lum-2);margin-left:6px;text-transform:uppercase;font-family:"Geist Mono",ui-monospace,monospace}
.m-txt{margin:16px 0 0;font-size:15.5px;color:var(--lum-2);line-height:1.55}
.m-lbl{display:block;font-size:9.5px;letter-spacing:.26em;color:var(--lum-3);margin-bottom:20px}
.m-lbl::before{content:"";display:inline-block;width:4px;height:4px;background:var(--pirinc);margin-right:10px;vertical-align:2px}

/* — sur şeridi — */
.strip{
  margin-top:34px;padding-top:24px;border-top:1px solid var(--hair);
  display:flex;flex-wrap:wrap;gap:14px 30px;
}
.strip span{display:inline-flex;align-items:center;gap:9px;white-space:nowrap;font-size:9.5px;letter-spacing:.2em;color:var(--lum-2)}
.strip i{width:4px;height:4px;background:var(--pirinc);flex:none}

/* ============ II · PLATFORM · TAŞLAR ============ */
.svc-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.svc-card{
  position:relative;z-index:0;border:1px solid var(--hair-2);
  padding:32px 30px 28px;display:flex;flex-direction:column;overflow:hidden;
  transition:border-color .6s ease,border-radius .85s cubic-bezier(.2,.7,.2,1),background-color .6s ease;
}
/* kilit taşı — hover'da yerine oturur */
.svc-card::before{
  content:"";position:absolute;top:0;left:50%;z-index:1;
  width:62px;height:26px;transform:translate(-50%,-17px);opacity:0;
  background:var(--pirinc);clip-path:polygon(8% 0,92% 0,71% 100%,29% 100%);
  transition:opacity .9s ease .22s,transform .9s cubic-bezier(.2,.7,.2,1) .22s;
}
/* kemer filigranı */
.svc-card::after{
  content:"";position:absolute;right:-38px;bottom:-38px;z-index:-1;
  width:210px;height:235px;pointer-events:none;
  background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 112"><path fill="%23EAE4D8" d="M0,50%20A50,50%200%200%201%20100,50%20L100,112%20L75,112%20L75,50%20A25,25%200%200%200%2025,50%20L25,112%20L0,112%20Z"/></svg>') no-repeat center/contain;
  opacity:0;transform:translateY(28px);
  transition:opacity .85s ease,transform .85s cubic-bezier(.2,.7,.2,1);
}
.svc-card:nth-of-type(5){grid-column:1/-1}
.svc-card:hover{border-color:var(--lum-3);border-radius:88px 88px 0 0;background-color:rgba(234,228,216,.022)}
.svc-card:hover::before{opacity:1;transform:translate(-50%,0)}
.svc-card:hover::after{opacity:.045;transform:translateY(0)}
.svc-head{display:flex;align-items:center;gap:16px;margin-bottom:20px}
.svc-no{font-family:"Geist Mono",ui-monospace,monospace;font-size:10px;letter-spacing:.24em;color:var(--lum-3);flex:none}
.svc-glyph{height:26px;color:var(--lum-3);transition:color .6s ease}
.svc-card:hover .svc-glyph{color:var(--lum)}
.svc-glyph svg{height:100%;width:auto;overflow:visible}
.svc-glyph .gk{fill:var(--pirinc)}
.svc-glyph .gh{stroke:currentColor;fill:none;stroke-width:1.1}
.svc-glyph .gd{stroke:currentColor;fill:none;stroke-width:1;stroke-dasharray:2.4 2.6}
.svc-glyph .gx{stroke:var(--uyari);stroke-width:1.1;fill:none}
.svc-card h3{font-weight:500;font-size:22px;letter-spacing:-0.006em;margin:0 0 12px;line-height:1.28}
.svc-card p{margin:0 0 24px;color:var(--lum-2);font-size:16px;line-height:1.6;max-width:52ch}
.svc-tags{margin-top:auto;display:flex;flex-wrap:wrap;gap:8px}
.svc-tags span{
  border:1px solid var(--hair);padding:7px 11px;
  font-size:9px;letter-spacing:.16em;color:var(--lum-3);white-space:nowrap;
  transition:color .45s ease,border-color .45s ease;
}
.svc-card:hover .svc-tags span{color:var(--lum-2);border-color:var(--hair-2)}

/* ============ AKIŞ TUVALİ ============ */
.canvas{
  grid-column:1/-1;
  margin-top:14px;border:1px solid var(--hair-2);padding:34px 30px 26px;
  background:
    linear-gradient(rgba(234,228,216,.045) 1px,transparent 1px) 0 0/26px 26px,
    linear-gradient(90deg,rgba(234,228,216,.045) 1px,transparent 1px) 0 0/26px 26px;
}
.canvas-lbl{display:flex;align-items:center;font-size:9.5px;letter-spacing:.24em;color:var(--lum-3);margin-bottom:26px}
.canvas-lbl::before{content:"";width:4px;height:4px;flex:none;background:var(--pirinc);margin-right:12px}
.canvas-lbl::after{content:"";flex:1;height:1px;background:var(--hair);margin-left:18px}
.flow{display:flex;align-items:stretch;gap:0}
.fn{
  position:relative;flex:1 1 0;min-width:0;
  border:1px solid var(--hair-2);background:var(--stone);
  padding:14px 14px 13px;text-align:center;
  transition:border-color .5s ease,background-color .5s ease,transform .5s ease;
}
.fn b{display:block;font-weight:500;font-size:14.5px;letter-spacing:.01em;margin-bottom:4px;color:var(--lum-2);transition:color .5s ease}
.fn i{display:block;font-style:normal;font-family:"Geist Mono",ui-monospace,monospace;font-size:8.5px;letter-spacing:.16em;color:var(--lum-3);text-transform:uppercase}
.fn .fk{
  position:absolute;top:0;left:50%;width:22px;height:9px;
  transform:translate(-50%,-5px);background:var(--pirinc);opacity:0;
  clip-path:polygon(10% 0,90% 0,70% 100%,30% 100%);
  transition:opacity .5s ease;
}
.fn.dec{clip-path:polygon(7% 0,93% 0,100% 50%,93% 100%,7% 100%,0 50%)}
.fl{flex:0 0 46px;position:relative;align-self:center;height:1px;background:linear-gradient(90deg,var(--hair-2) 0 4px,transparent 4px 9px);background-size:9px 1px}
.fl::after{
  content:"";position:absolute;top:-2px;left:0;width:5px;height:5px;background:var(--patina);opacity:0;
}
.fn.on{border-color:var(--pirinc);background-color:#18262E;transform:translateY(-2px)}
.fn.on b{color:var(--lum)}
.fn.on .fk{opacity:1}
.fl.on::after{opacity:1;animation:flrun .7s linear}
@keyframes flrun{from{transform:translateX(0)}to{transform:translateX(41px)}}
.canvas-cap{margin:24px 0 0;font-size:14.5px;color:var(--lum-2);line-height:1.6;max-width:60ch}

/* ============ REVAK · ÇOK BİRİMLİ KULLANIM ============ */
.arcade{margin:0}
.arcade svg{width:100%;height:auto;overflow:visible}
.arcade .mass{fill:var(--stone);stroke:rgba(234,228,216,.18);stroke-width:1}
.arcade .trim{fill:#18262E;stroke:rgba(234,228,216,.18);stroke-width:1}
.arcade .imp{stroke:rgba(234,228,216,.14);stroke-width:.9;fill:none}
.arcade .arch-l{fill:none;stroke:rgba(234,228,216,.22);stroke-width:.9}
.arcade .bglow{fill:url(#bayglow);opacity:0;transition:opacity .55s ease}
.arcade .bkey{fill:var(--pirinc);opacity:.42;transition:opacity .55s ease,filter .55s ease}
.arcade .a-no{font-family:"Geist Mono",ui-monospace,monospace;font-size:8px;letter-spacing:1.4px;fill:var(--lum-3);transition:fill .45s ease}
.arcade .bay.hot .bkey{opacity:1;animation:none;filter:drop-shadow(0 0 5px rgba(168,127,60,.85))}
.arcade .bay.hot .bglow{opacity:1}
.arcade .bay.hot .arch-l{stroke:var(--pirinc);stroke-opacity:.8}
.arcade .bay.hot .a-no{fill:var(--pirinc)}
.bays{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:30px}
.bay-row{border-top:1px solid var(--hair);padding-top:16px;transition:border-color .45s ease}
.bay-row.hot{border-color:var(--pirinc)}
.bay-row .no{display:block;font-family:"Geist Mono",ui-monospace,monospace;font-size:9px;letter-spacing:.22em;color:var(--lum-3);margin-bottom:8px;transition:color .45s ease}
.bay-row.hot .no{color:var(--pirinc)}
.bay-row h3{margin:0 0 5px;font-weight:500;font-size:16.5px;letter-spacing:-0.004em;line-height:1.25}
.bay-row p{margin:0;font-size:13.5px;line-height:1.5;color:var(--lum-2)}
.arcade-foot{margin:34px 0 0;font-size:16px;line-height:1.62;color:var(--lum-2);max-width:64ch}

/* ============ III · MİMARİ · ARŞİVOLT ============ */
.vault-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center}
.vault svg{width:100%;height:auto;overflow:visible}
.vault .vb{fill:var(--stone);stroke:rgba(234,228,216,.2);stroke-width:.9;transition:fill .5s ease,stroke .5s ease}
.vault .vb.hot{stroke:var(--pirinc);stroke-width:1.8;stroke-opacity:1}
.vault .vkey{fill:var(--pirinc)}
.vault .vwall{stroke:var(--lum);stroke-opacity:.3;stroke-width:.9;fill:none;stroke-dasharray:4 5}
.vault .vout{fill:none;stroke:var(--lum);stroke-opacity:.16;stroke-width:.9;stroke-dasharray:4 4}
.vault .vcut{stroke:var(--uyari);stroke-width:1.6}
.vault .vbox{fill:none;stroke:var(--lum);stroke-opacity:.2;stroke-width:.9}
.vault .vno{font-family:"Geist Mono",ui-monospace,monospace;font-size:8px;letter-spacing:.5px;fill:var(--lum-3)}
.lay-row{
  display:grid;grid-template-columns:34px 1fr;gap:16px;align-items:baseline;
  padding:16px 0;border-bottom:1px solid var(--hair);cursor:default;
  transition:border-color .4s ease;
}
.lay-row:first-of-type{border-top:1px solid var(--hair)}
.lay-row .no{font-family:"Geist Mono",ui-monospace,monospace;font-size:9.5px;letter-spacing:.2em;color:var(--lum-3);transition:color .4s ease}
.lay-row h3{margin:0 0 4px;font-weight:500;font-size:17px;letter-spacing:-0.004em;transition:color .4s ease}
.lay-row p{margin:0;font-size:14.5px;color:var(--lum-2);line-height:1.55}
.lay-row.hot{border-color:var(--pirinc)}
.lay-row.hot .no{color:var(--pirinc)}
.vault-foot{margin:22px 0 0;font-size:14px;color:var(--lum-3);letter-spacing:.02em}

/* ============ KAYIT DEFTERİ ============ */
.ledger-box{margin-top:14px;border:1px solid var(--hair-2);padding:26px 26px 22px}
.ledger-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px;flex-wrap:wrap}
.ledger-head span{font-size:9.5px;letter-spacing:.24em;color:var(--lum-3)}
.ledger-head b{color:var(--lum-2);font-weight:400}
.ledger{font-family:"Geist Mono",ui-monospace,monospace;font-size:11.5px;letter-spacing:.02em;overflow-x:auto}
.lg-row{
  display:grid;grid-template-columns:78px 132px 1fr auto;gap:18px;
  padding:7px 0;border-bottom:1px solid rgba(234,228,216,.06);
  white-space:nowrap;color:var(--lum-2);
}
.lg-row .t{color:var(--lum-3)}
.lg-row .op{color:var(--lum)}
.lg-row .tg{color:var(--patina);font-size:10px;letter-spacing:.16em;text-transform:uppercase}
.lg-row.deny .op,.lg-row.deny .tg{color:var(--uyari)}
.lg-cur{display:inline-block;width:7px;height:12px;background:var(--lum-3);margin-top:12px;vertical-align:-1px}

/* ============ IV · NEDEN · SATIRLAR ============ */
.why-row{
  position:relative;display:grid;grid-template-columns:210px 1fr;
  gap:40px;padding:34px 0;border-bottom:1px solid var(--hair);
}
.why-row:first-of-type{border-top:1px solid var(--hair)}
.why-row::before{
  content:"";position:absolute;left:-28px;top:22px;bottom:22px;width:11px;
  background:var(--pirinc);
  clip-path:polygon(0 0,100% 0,100% 6%,70% 9%,70% 91%,100% 94%,100% 100%,0 100%,0 94%,30% 91%,30% 9%,0 6%);
  transform:scaleY(0);transform-origin:bottom;
  transition:transform .5s cubic-bezier(.2,.7,.2,1);
}
.why-row:hover::before{transform:scaleY(1)}
.why-row .no{display:block;font-size:9.5px;letter-spacing:.24em;color:var(--lum-3);margin-bottom:10px;font-family:"Geist Mono",ui-monospace,monospace}
.why-row h3{margin:0;font-weight:500;font-size:20px;line-height:1.3;letter-spacing:-0.006em}
.why-row p{margin:0;color:var(--lum-2);font-size:16px;line-height:1.62;max-width:60ch}
.why-row p+p{margin-top:12px}

/* ============ V · SAFHALAR ============ */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.step{position:relative;border:1px solid var(--hair-2);padding:26px 22px 24px;overflow:hidden;transition:border-color .5s ease,background-color .5s ease}
.step::before{
  content:"";position:absolute;top:0;left:0;right:0;height:2px;
  background:var(--pirinc);transform:scaleX(0);transform-origin:left;
  transition:transform .7s cubic-bezier(.2,.7,.2,1);
}
.step:hover{border-color:var(--lum-3);background-color:rgba(234,228,216,.02)}
.step:nth-child(1):hover::before{transform:scaleX(.25)}
.step:nth-child(2):hover::before{transform:scaleX(.5)}
.step:nth-child(3):hover::before{transform:scaleX(.75)}
.step:nth-child(4):hover::before{transform:scaleX(1)}
.step-fig{margin-bottom:20px}
.step-fig svg{width:100%;height:auto}
.step svg .st-s{fill:var(--stone);stroke:rgba(234,228,216,.22);stroke-width:.7}
.step svg .svg-hair,.step svg .hlf *{transition:stroke .5s ease,stroke-opacity .5s ease,fill .5s ease}
.step svg .key{transition:fill .5s ease,filter .5s ease}
.step:hover svg .hl .svg-hair{stroke:var(--pirinc);stroke-opacity:1}
.step:hover svg .hlf *{fill:var(--pirinc);stroke:var(--pirinc)}
.step:hover svg .key{fill:var(--pirinc);filter:drop-shadow(0 0 4px rgba(168,127,60,.8))}
.step .no{display:block;font-size:9.5px;letter-spacing:.26em;margin-bottom:12px;color:var(--lum-3);font-family:"Geist Mono",ui-monospace,monospace}
.step h3{font-weight:500;font-size:18px;margin:0 0 8px;letter-spacing:-0.005em}
.step p{margin:0;font-size:14.5px;color:var(--lum-2);line-height:1.58}

/* ============ VI · KİMLER İÇİN ============ */
.who-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.who-chips{display:flex;flex-wrap:wrap;gap:8px}
.who-chips span{
  position:relative;z-index:0;
  border:1px solid var(--hair-2);padding:9px 13px;white-space:nowrap;
  font-family:"Libre Baskerville",Georgia,serif;
  font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--lum-2);
  clip-path:polygon(0 0,33% 0,66% 0,100% 0,100% 40%,100% 75%,100% 100%,66% 100%,33% 100%,0 100%,0 70%,0 35%);
  transition:clip-path .55s cubic-bezier(.2,.7,.2,1),color .55s ease,background-color .55s ease,transform .55s ease,border-color .55s ease;
}
.who-chips span::before{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:0;
  background:
    linear-gradient(115deg,transparent 44%,rgba(234,228,216,.1) 45.2%,transparent 46.8%),
    linear-gradient(28deg,transparent 62%,rgba(234,228,216,.07) 63.2%,transparent 64.6%),
    radial-gradient(50% 80% at 82% 75%,rgba(168,127,60,.3),transparent 60%),
    radial-gradient(60% 90% at 18% 25%,rgba(234,228,216,.06),transparent 60%);
  transition:opacity .55s ease;
}
.who-chips span:hover{
  clip-path:polygon(3% 11%,31% 4%,65% 0,96% 6%,100% 42%,97% 72%,93% 90%,64% 96%,32% 100%,5% 94%,0 66%,2% 32%);
  background-color:rgba(234,228,216,.035);border-color:var(--lum-3);color:var(--lum);
}
.who-chips span:hover::before{opacity:1}
.who-chips span:nth-child(odd):hover{transform:rotate(-1.1deg) translateY(2px)}
.who-chips span:nth-child(even):hover{transform:rotate(.9deg) translateY(2px)}
.who-note{margin:0;font-size:16px;line-height:1.62;color:var(--lum-2)}
.who-note+.who-note{margin-top:16px}
.creed{margin-top:76px;text-align:center;border-top:1px solid var(--hair);padding-top:56px}
.creed .lat{font-family:"Libre Baskerville",Georgia,serif;font-size:11.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--lum-3);margin-bottom:24px}
.creed blockquote{margin:0 auto;max-width:34ch;font-size:clamp(20px,2.5vw,27px);font-weight:400;line-height:1.45}
.creed .src{margin-top:22px;font-size:9.5px;letter-spacing:.24em;color:var(--lum-3)}

/* ============ VII · ERİŞİM ============ */
.band{
  margin-top:116px;border:1px solid var(--hair-2);scroll-margin-top:88px;
  padding:64px 40px 56px;text-align:center;background:rgba(234,228,216,.018);
  position:relative;overflow:hidden;
}
.band::after{
  content:"";position:absolute;right:-60px;bottom:-70px;z-index:0;
  width:300px;height:336px;pointer-events:none;opacity:.03;
  background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 112"><path fill="%23EAE4D8" d="M0,50%20A50,50%200%200%201%20100,50%20L100,112%20L75,112%20L75,50%20A25,25%200%200%200%2025,50%20L25,112%20L0,112%20Z"/></svg>') no-repeat center/contain;
}
.band>*{position:relative;z-index:1}
.bkey{width:44px;margin:0 auto 26px}
.bkey svg{width:100%;height:auto;overflow:visible}
.band h2{margin:0 0 14px;font-weight:400;font-size:clamp(24px,3.4vw,33px);line-height:1.28;letter-spacing:-0.012em}
.band .band-note{margin:0 auto;max-width:52ch;font-size:16.5px;color:var(--lum-2);line-height:1.62}
/* form */
.wl{margin:38px auto 0;max-width:520px}
.wl form{display:flex;gap:10px}
.wl .field{
  flex:1;display:flex;align-items:center;
  border:1px solid var(--hair-2);background:rgba(234,228,216,.03);
  padding:0 16px;transition:border-color .25s,background .25s;
}
.wl .field:focus-within{border-color:var(--pirinc);background:rgba(234,228,216,.055)}
.wl input[type=email]{
  flex:1;min-width:0;background:transparent;border:0;outline:none;color:var(--lum);
  font-family:"Geist Mono",ui-monospace,monospace;font-size:13px;letter-spacing:.05em;padding:16px 0;
}
.wl input[type=email]::placeholder{color:var(--lum-3)}
.hp{position:absolute;left:-9999px;opacity:0}
.form-msg{display:block;margin-top:14px;min-height:18px;font-size:9.5px;letter-spacing:.2em}
.form-msg.ok{color:var(--pirinc)}
.form-msg.err{color:var(--uyari)}
.form-note{margin:8px auto 0;max-width:62ch;font-size:9px;letter-spacing:.13em;color:var(--lum-3);line-height:2.2}
.band .or{
  margin:34px auto 26px;max-width:520px;display:flex;align-items:center;
  font-size:9px;letter-spacing:.26em;color:var(--lum-3);
}
.band .or::before,.band .or::after{content:"";flex:1;height:1px;background:var(--hair)}
.band .or::before{margin-right:18px}
.band .or::after{margin-left:18px}

/* ============ GELİŞTİRİCİ ALANI ============ */
.dev{margin-top:96px;border-top:1px solid var(--hair);padding-top:34px;display:grid;grid-template-columns:auto 1fr;gap:34px;align-items:center}
.dev-lbl{font-size:9.5px;letter-spacing:.26em;color:var(--lum-3);display:flex;align-items:center}
.dev-lbl::before{content:"";width:4px;height:4px;flex:none;background:var(--pirinc);margin-right:12px}
.dev-items{display:flex;flex-wrap:wrap;gap:10px 26px}
.dev-items span{display:inline-flex;align-items:baseline;gap:10px;font-size:14.5px;color:var(--lum-2)}
.dev-items em{font-style:normal;font-family:"Geist Mono",ui-monospace,monospace;font-size:8.5px;letter-spacing:.2em;color:var(--lum-3);text-transform:uppercase}

/* ============ MÜHÜR ============ */
footer{margin-top:104px;border-top:1px solid var(--hair);padding:44px 0 52px}
.foot{display:grid;grid-template-columns:auto 1fr auto;gap:34px;align-items:center}
.foot .seal svg{width:30px;height:auto;opacity:.85}
.foot .mid{text-align:center;font-size:9.5px;line-height:2.1;letter-spacing:.22em;color:var(--lum-3)}
.foot .mid b{color:var(--lum-2);font-weight:400}
.foot .right{text-align:right;font-size:9.5px;line-height:2.1;letter-spacing:.22em;color:var(--lum-3)}
.foot a{text-decoration:none;border-bottom:1px solid var(--hair-2);padding-bottom:1px;transition:border-color .25s,color .25s}
.foot a:hover{color:var(--lum);border-color:var(--pirinc)}

/* ============ ORTAYA ÇIKIŞ ============ */
@media (prefers-reduced-motion:no-preference){
  .reveal{opacity:0;transform:translateY(16px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.25,1);transition-delay:var(--d,0s)}
  .reveal.in{opacity:1;transform:none}
  /* sur — kemerin taşları sırayla ışığı taşır */
  .wall-fig .stone{animation:load 7s ease-in-out infinite}
  .wall-fig .s-1{animation-delay:0s}.wall-fig .s-2{animation-delay:.16s}.wall-fig .s-3{animation-delay:.32s}
  .wall-fig .s-4{animation-delay:.64s}.wall-fig .s-5{animation-delay:.8s}.wall-fig .s-6{animation-delay:.96s}
  @keyframes load{0%,22%,100%{fill:var(--stone)}8%{fill:var(--stone-2)}}
  .wall-fig .key{animation:keyglow 7s ease-in-out infinite .48s}
  @keyframes keyglow{0%,26%,100%{filter:none}10%{filter:drop-shadow(0 0 5px rgba(168,127,60,.9))}}
  .wall-fig .halo{animation:halo 7s ease-in-out infinite .48s}
  @keyframes halo{0%,26%,100%{opacity:.35;transform:scale(1)}10%{opacity:.85;transform:scale(1.28)}}
  .wall-fig .mote{offset-rotate:0deg;animation:circuit 14s linear infinite}
  .wall-fig .m-2{animation-delay:-4.6s}
  .wall-fig .m-3{animation-delay:-9.2s}
  @keyframes circuit{from{offset-distance:0%}to{offset-distance:100%}}
  /* dışarı sızmaya çalışan istek — duvarda durur */
  .wall-fig .esc{animation:escape 9s cubic-bezier(.3,0,.5,1) infinite 2s}
  @keyframes escape{
    0%{opacity:0;transform:translateX(0)}
    5%{opacity:1;transform:translateX(0)}
    26%{opacity:1;transform:translateX(27px)}
    31%{opacity:1;transform:translateX(23px)}
    46%{opacity:.5;transform:translateX(4px)}
    52%,100%{opacity:0;transform:translateX(0)}
  }
  .wall-fig .flare{animation:flare 9s ease-out infinite 2s}
  @keyframes flare{0%,25%{opacity:0;transform:scaleY(.4)}28%{opacity:1;transform:scaleY(1)}40%,100%{opacity:0;transform:scaleY(1)}}
  .wall-fig .esc-lbl{animation:escl 9s ease-out infinite 2s}
  @keyframes escl{0%,26%{opacity:0}30%,42%{opacity:1}52%,100%{opacity:0}}
  .status .cur,.lg-cur{animation:blink 1.15s steps(1) infinite}
  @keyframes blink{50%{opacity:0}}
  /* revak — ışık kemerden kemere geçer */
  .arcade .bkey{animation:bwave 9s ease-in-out infinite}
  .arcade .bay[data-bay="2"] .bkey{animation-delay:.5s}
  .arcade .bay[data-bay="3"] .bkey{animation-delay:1s}
  .arcade .bay[data-bay="4"] .bkey{animation-delay:1.5s}
  .arcade .bay[data-bay="5"] .bkey{animation-delay:2s}
  @keyframes bwave{0%,20%,100%{opacity:.42}7%{opacity:1}}
  /* arşivolt — sorgu içeri doğru iner */
  .vault .vb{animation:vpulse 6.5s ease-in-out infinite}
  .vault .vb-a{animation-delay:0s}.vault .vb-b{animation-delay:.32s}
  .vault .vb-c{animation-delay:.64s}.vault .vb-d{animation-delay:.96s}
  @keyframes vpulse{0%,24%,100%{fill:var(--stone)}10%{fill:#1B2C34}}
  .vault .vcut{animation:cut 6.5s ease-in-out infinite}
  @keyframes cut{0%,60%,100%{opacity:.35}68%{opacity:1}}
  .lg-row{opacity:0;animation:lgin 7s ease-in-out infinite;animation-delay:calc(var(--i,0)*.4s)}
  @keyframes lgin{0%{opacity:0}7%{opacity:1}86%{opacity:1}94%,100%{opacity:0}}
}
@media (prefers-reduced-motion:reduce){
  .lg-row{opacity:1}
  .wall-fig .esc,.wall-fig .flare,.wall-fig .esc-lbl{display:none}
}

/* ============ DUYARLI ============ */
@media (max-width:980px){
  .hero-grid{grid-template-columns:1fr;gap:52px}
  .svc-grid{grid-template-columns:1fr}
  .vault-grid{grid-template-columns:1fr;gap:36px}
  .who-grid{grid-template-columns:1fr;gap:32px}
  .steps{grid-template-columns:1fr 1fr}
  .measures{grid-template-columns:1fr}
  .why-row{grid-template-columns:1fr;gap:12px}
  .nav{gap:20px}
  .nav>a:not(.cta){font-size:10px;letter-spacing:.14em}
  .flow{flex-wrap:wrap;gap:12px}
  .fn{flex:1 1 40%}
  .fl{display:none}
  .bays{grid-template-columns:repeat(2,1fr);gap:14px}
}
@media (max-width:640px){
  :root{--pad:22px}
  .plate{padding-top:76px;scroll-margin-top:22px}
  .hero{padding-top:44px}
  .nav>a:not(.cta){display:none}
  .nav{gap:13px}
  .topbar-in{gap:12px;height:66px}
  .lock{gap:10px}
  .lock svg{width:19px}
  .lock .name{font-size:13.5px;letter-spacing:.16em}
  .nav a.cta{padding:10px 13px;font-size:9.5px;letter-spacing:.16em}
  .lang a{font-size:10px;letter-spacing:.14em}
  .steps{grid-template-columns:1fr}
  .lg-row{grid-template-columns:66px 118px 1fr;font-size:10.5px;gap:12px}
  .lg-row .tg{display:none}
  .band{padding:48px 22px 44px;scroll-margin-top:82px}
  .wl form{flex-direction:column}
  .wl button.btn{justify-content:center}
  .dev{grid-template-columns:1fr;gap:18px}
  .foot{grid-template-columns:1fr;justify-items:center;text-align:center;gap:22px}
  .foot .right{text-align:center}
  .fn{flex:1 1 100%}
  .bays{grid-template-columns:1fr}
  .arcade .a-no{display:none}
  .creed{margin-top:56px;padding-top:44px}
}
