/* 2EA Kalıp — anasayfa CNC hikâyesi. Kalıcı karanlık tema, mavi/çelik palet ve mavi LED aydınlatma (Yusuf, 29 Eylül).
   Varsayılan: JS/WebGL yoksa veya hareket azaltılmışsa içerik normal akışta okunur.
   .is-live: sahne sabitlenir, katmanlar story.js tarafından kaydırmaya göre sürülür. */
.story{--hdr:90px;--stage-h:calc(100svh - var(--hdr));--led:#3fa9ff;--glass:#0d1219db;position:relative;background:radial-gradient(70% 60% at 64% 45%,#0c1a2e 0%,#0a0e14 45%,#05070a 100%)}
.story-stage{position:relative;padding:40px var(--pad) 70px;max-width:var(--max);margin:auto;display:grid;gap:56px}
.story-canvas,.story-lines,.story-hud,.story-loader{display:none}
.story-poster{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border:1px solid var(--line);border-radius:4px;background:#0d1014}
.story .eyebrow{font:500 12px/1.4 'IBM Plex Mono',monospace;letter-spacing:.14em;color:var(--accent);margin:0 0 18px}
.story h1{margin:0}
.story h2{font-family:Alike,Georgia,serif;font-size:clamp(34px,3.6vw,58px);line-height:1.02;letter-spacing:-.05em;margin:0;color:var(--ink)}
.story h2 em{color:var(--accent);text-shadow:0 0 28px #3fa9ff40}
.story p{color:var(--muted);font-size:16px;line-height:1.65;margin:18px 0 0;max-width:46ch}
.story-beat{max-width:560px}
.scroll-cue{display:none}
.hero-logo{line-height:1}
.hero-logo .logo{margin-left:-.04em}
.text-link{display:inline-flex;align-items:center;gap:10px;margin-top:22px;color:var(--accent);font-weight:600;font-size:14px}
.text-link::after{content:'';width:28px;height:1px;background:currentColor;box-shadow:0 0 8px var(--led);transition:width .4s var(--ease)}
.text-link:hover::after{width:44px}

/* cam kart: koyu, ince çelik kenar, üstte mavi LED çizgisi */
.part-card,.mould-panel,.mould-chip,.beat-quote,.story-hud{background:var(--glass);border:1px solid #ffffff17;box-shadow:inset 0 1px 0 #a8d4ff2e,0 24px 60px -34px #000}
.story-parts{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.part-card{display:flex;gap:16px;align-items:flex-start;border-radius:4px;padding:18px 20px;color:var(--ink)}
.part-icon{flex:none;width:44px;height:44px;display:grid;place-items:center;border-radius:3px;background:linear-gradient(140deg,#9fd0ff,#3d8cf0 55%,#1f53b8);color:#04101f;box-shadow:inset 0 1px 0 #fff6,0 0 22px -4px #3fa9ff88}
.part-icon svg{width:24px;height:24px}
.part-card h3{font-family:Alike,Georgia,serif;font-size:20px;letter-spacing:-.03em;margin:6px 0 4px}
.part-card .mono{color:var(--accent)}
.part-card p{font-size:14px;margin:0;line-height:1.55}

.story-moulds{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px}
.mould-panel{border-radius:4px;padding:18px;display:flex;flex-direction:column;color:var(--ink)}
.mould-panel figure{margin:0 0 20px;position:relative;overflow:hidden;border-radius:3px;background:#0d1014}
.mould-panel img{display:block;width:100%;height:190px;object-fit:cover}
.mould-panel figcaption{position:absolute;left:0;bottom:0;background:#0a0c0fe6;color:var(--accent);padding:8px 12px;font-size:11px;border-top:1px solid #3fa9ff55}
.mould-panel h2{font-size:clamp(26px,2.2vw,34px)}
.mould-panel p{font-size:15px;margin-top:12px}
.mould-panel ul{list-style:none;padding:0;margin:16px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.mould-panel li{font:12px/1.3 'IBM Plex Mono',monospace;color:var(--ink);border:1px solid #ffffff21;border-radius:3px;padding:6px 9px;background:#ffffff08}
.mould-panel .text-link{margin-top:auto;padding-top:22px}

.service-track{list-style:none;margin:28px 0 0;padding:0;border-top:1px solid var(--line)}
.service-track a{display:grid;grid-template-columns:44px 1fr;column-gap:14px;padding:16px 0;border-bottom:1px solid var(--line);color:var(--ink)}
.service-track .mono{grid-row:1/3;color:var(--accent);padding-top:3px}
.service-track strong{font-family:Alike,Georgia,serif;font-weight:500;font-size:21px;letter-spacing:-.03em}
.service-track span:last-child{color:var(--muted);font-size:14px}
.beat-quote .actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}
.quote-phone{display:inline-block;margin-top:24px;color:var(--ink)}

/* ---------------- canlı sahne ---------------- */
.story.is-live{height:var(--story-h,1400vh);overflow-anchor:none}
.story.is-live *{overflow-anchor:none}
.story.is-live .story-stage{position:sticky;top:var(--hdr);height:var(--stage-h);max-width:none;padding:0;margin:0;display:block;overflow:hidden;contain:layout paint}
.story-night{display:none}
/* LED ortamı: makinenin arkasında sıcak ışık havuzu + ince teknik ızgara */
.story.is-live .story-night{display:block;position:absolute;inset:0;pointer-events:none;background:radial-gradient(46% 42% at 64% 52%,#3fa9ff1f 0%,#3fa9ff08 45%,transparent 70%),radial-gradient(90% 80% at 60% 40%,#0b1119 0%,#07090c 60%,#040609 100%)}
.story.is-live .story-night::after{content:'';position:absolute;inset:0;background-image:linear-gradient(#8ec8ff0d 1px,transparent 1px),linear-gradient(90deg,#8ec8ff0d 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(70% 65% at 62% 48%,#000 15%,transparent 78%);mask-image:radial-gradient(70% 65% at 62% 48%,#000 15%,transparent 78%)}
.story.is-live .story-canvas{display:block;position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity .8s var(--ease)}
.story.is-ready .story-canvas{opacity:1}
.story.is-live .story-poster{display:none}
.story.is-live .story-lines{display:block;position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.story-lines line{stroke:var(--accent);stroke-width:1.2;stroke-dasharray:3 4;filter:drop-shadow(0 0 3px #3fa9ff)}
.story-lines circle{fill:#04101f;stroke:var(--accent);stroke-width:2;filter:drop-shadow(0 0 6px #3fa9ff)}

.story.is-live .story-beat,.story.is-live .part-card,.story.is-live .mould-panel{position:absolute;opacity:0;visibility:hidden;will-change:opacity,transform}
.story.is-live .story-beat{left:var(--pad);top:50%;transform:translateY(-50%);width:min(520px,38vw)}
.story.is-live .beat-intro{width:min(560px,42vw)}
.beat-intro .intro-lead{margin-top:22px;max-width:44ch;font-size:16px;line-height:1.65;color:#b9c5d1}
/* sertifika şeridi: küçük, tanıtıcı; Referanslar ve Sertifikalar sayfasına gider */
.intro-certs{display:grid;gap:10px;margin-top:22px;width:max-content;max-width:100%;color:var(--muted)}
.intro-cert-list{display:flex;flex-wrap:wrap;gap:8px}
.intro-cert-list b{display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border:1px solid #5aa9ff40;border-radius:999px;background:#0d1117b3;font:500 11px/1 'IBM Plex Mono',monospace;letter-spacing:.06em;color:#cfe3f7;transition:border-color .3s,box-shadow .3s}
.intro-cert-list b::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--led);box-shadow:0 0 7px var(--led)}
.intro-certs small{font-size:12px;letter-spacing:.02em}
.intro-certs:hover b{border-color:var(--accent);box-shadow:0 0 18px -8px var(--led)}
/* Kaydırın: hikâye boyunca hem masaüstünde hem telefonda sabit görünür (Yusuf, 30 Eylül); tıklayınca bir ekran iner */
.story.is-live .scroll-cue{position:absolute;left:50%;bottom:26px;z-index:4;display:inline-flex;align-items:center;gap:12px;transform:translateX(-50%);padding:9px 16px 9px 18px;border:1px solid #5aa9ff40;border-radius:999px;background:#0b1119cc;color:var(--ink);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 12px 30px -16px #000,0 0 22px -12px var(--led);cursor:pointer;transition:border-color .3s,box-shadow .3s}
.story.is-live .scroll-cue:hover{border-color:var(--accent);box-shadow:0 12px 30px -16px #000,0 0 26px -8px var(--led)}
.scroll-cue .mono{font-size:11px;letter-spacing:.16em;text-transform:uppercase}
.scroll-cue i{position:relative;width:1px;height:22px;background:#a9c3e033;overflow:hidden}
.scroll-cue i::after{content:'';position:absolute;left:0;top:0;width:1px;height:100%;background:linear-gradient(var(--led),transparent);box-shadow:0 0 8px var(--led);animation:hint 2s var(--ease) infinite}
@keyframes hint{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
.story.is-live .story-parts{display:block}
.story.is-live .part-card{left:var(--pad);bottom:clamp(90px,14vh,150px);width:min(380px,34vw);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.story.is-live .story-moulds{display:block}
.mould-dock{display:none}
/* büyük kart dönüşüm olmadan ortalanır (top/bottom + margin:auto); böylece özet karta küçülme ölçüsü kesin olur */
.story.is-live .mould-panel{left:var(--pad);top:0;bottom:var(--dock-space,232px);margin:auto 0;height:max-content;width:min(420px,34vw);transform-origin:0 0;padding:16px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.story.is-live .mould-panel img{height:clamp(110px,16vh,170px)}
@media (min-width:901px) and (max-height:860px){.story.is-live .mould-panel ul{display:none}.story.is-live .mould-panel .text-link{padding-top:14px}}
.story.is-live .mould-dock{display:grid;position:absolute;left:var(--pad);bottom:28px;width:min(420px,34vw);grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:0;list-style:none;z-index:2}
.mould-chip{display:flex;align-items:center;gap:10px;padding:6px 10px 6px 6px;border-radius:4px;color:var(--ink);opacity:0;visibility:hidden;transition:border-color .25s var(--ease),box-shadow .25s var(--ease),transform .25s var(--ease);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.mould-chip:hover,.mould-chip:focus-visible{border-color:#3fa9ff99;box-shadow:inset 0 1px 0 #a8d4ff4d,0 0 26px -6px #3fa9ff88;transform:translateY(-2px)}
.mould-chip img{flex:none;width:44px;height:44px;object-fit:cover;border-radius:3px;background:#0d1014}
.mould-chip>span{display:grid;min-width:0}
.mould-chip .mono{font-size:10px;color:var(--accent);letter-spacing:.08em}
.mould-chip strong{font-family:Alike,Georgia,serif;font-weight:500;font-size:14px;letter-spacing:-.02em;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mould-chip .chip-short{display:none}
/* İşlenen ürün rafta belirginleşir; ışık bir kez yerleşir, sürekli animasyon yok. */
.mould-chip{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 100% 0,#2479d738,transparent 72%),linear-gradient(135deg,#172638,#0d131c);border-color:#6bb6ff40;box-shadow:inset 0 1px 0 #c6e6ff26,0 6px 18px #0005;color:#f1f7ff}
.mould-chip::before{content:'';position:absolute;left:0;top:12%;bottom:12%;width:2px;background:#69b9ff;box-shadow:0 0 12px #369cff;opacity:0;transition:opacity .5s}
.mould-chip::after{content:'↗';margin-left:auto;color:#8dcaff;font:18px/1 Jost,sans-serif;opacity:.55;transition:opacity .3s,translate .3s}
.mould-chip img{filter:saturate(1.18) contrast(1.06);border:1px solid #c6e6ff3d;box-shadow:0 2px 12px #0005;transition:filter .5s,scale .5s}
.mould-chip.is-docked{border-color:#65b6ff66;animation:dock-settle .85s var(--ease) both}
.mould-chip.is-docked::before{opacity:1}
.mould-chip.is-docked .mono{color:#92ceff}
.mould-chip:hover::after,.mould-chip:focus-visible::after{opacity:1;translate:2px -2px}
.mould-chip:hover img{filter:saturate(1.3) contrast(1.08);scale:1.04}
.story.is-live .mould-dock li:last-child:nth-child(odd){grid-column:1/-1}
@keyframes dock-settle{from{box-shadow:inset 0 1px 0 #fff8,0 0 28px #369cff66;background-color:#285b88}to{box-shadow:inset 0 1px 0 #c6e6ff26,0 6px 18px #0005;background-color:#0d131c}}
@media(max-width:900px){.mould-chip::after{font-size:13px}.story.is-live .mould-dock li:last-child{grid-column:1/-1}.story.is-live .mould-dock li:last-child .mould-chip{justify-content:center}.story.is-live .mould-dock li:last-child .mould-chip::after{margin-left:6px}}
@media(prefers-reduced-motion:reduce){.mould-chip,.mould-chip img{animation:none!important;transition:none!important}}
.story.is-live .beat-services{width:min(560px,40vw)}
.story.is-live .service-track li{opacity:.3;transition:opacity .45s var(--ease)}
.story.is-live .service-track li.is-on{opacity:1}
.story.is-live .service-track li.is-on .mono{color:var(--accent);text-shadow:0 0 10px var(--led)}
.story.is-live .beat-quote{width:min(600px,42vw);padding:44px clamp(24px,3vw,48px);border-radius:6px;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}

.story.is-live .story-hud{display:flex;position:absolute;right:var(--pad);bottom:28px;gap:4px;align-items:center;z-index:3;border-radius:4px;padding:6px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.story-hud a{font:12px/1 'IBM Plex Mono',monospace;letter-spacing:.04em;color:var(--muted);padding:9px 10px;border-radius:3px;white-space:nowrap}
.story-hud a:hover{color:var(--ink);background:#ffffff0d}
.story-hud a.is-on{color:#04101f;background:linear-gradient(140deg,#9fd0ff,#3d8cf0);box-shadow:0 0 16px -4px var(--led)}
.story-progress{position:absolute;left:6px;right:6px;top:-1px;height:2px;background:#ffffff14;overflow:hidden;border-radius:2px}
.story-progress span{display:block;height:100%;width:100%;background:var(--led);box-shadow:0 0 8px var(--led);transform-origin:left;transform:scaleX(0)}
.story.is-live .story-loader{display:block;position:absolute;left:50%;top:50%;width:180px;height:2px;margin-left:-90px;background:#ffffff1a;transition:opacity .5s}
.story-loader span{display:block;height:100%;background:var(--led);transform-origin:left;transform:scaleX(0);transition:transform .3s}
.story.is-ready .story-loader{opacity:0}

@media (max-width:900px){
 .story{--hdr:76px}
 .story.is-live .story-night::after{background-size:40px 40px}
 .story.is-live .story-beat,.story.is-live .beat-intro,.story.is-live .beat-services{left:var(--pad);right:var(--pad);width:auto;top:auto;bottom:calc(env(safe-area-inset-bottom) + 100px);transform:none}

 .story.is-live .beat-intro p{font-size:14px;margin-top:12px}
 .story.is-live .beat-intro .intro-lead{font-size:14px;margin-top:12px}
 .intro-certs{margin-top:14px;gap:8px}
 .intro-cert-list{gap:6px}
 .intro-cert-list b{padding:5px 9px;font-size:10px}
 .intro-certs small{font-size:11px}
 .story.is-live .scroll-cue{bottom:calc(env(safe-area-inset-bottom) + 62px);padding:6px 12px 6px 14px;gap:9px}
 .scroll-cue .mono{font-size:10px}
 .scroll-cue i{height:14px}
 .story.is-live .part-card{left:var(--pad);right:var(--pad);width:auto;bottom:calc(env(safe-area-inset-bottom) + 100px);padding:14px 16px}
 .story.is-live .mould-panel{left:var(--pad);right:var(--pad);width:auto;top:auto;height:auto;margin:0;bottom:calc(env(safe-area-inset-bottom) + 100px);display:grid;grid-template-columns:96px 1fr;column-gap:14px;padding:12px}
 .story.is-live .mould-dock{left:var(--pad);right:var(--pad);top:10px;bottom:auto;width:auto;grid-template-columns:repeat(3,1fr);gap:6px}
 .mould-chip{gap:7px;padding:4px 8px 4px 4px}
 .mould-chip img{width:30px;height:30px}
 .mould-chip .mono,.mould-chip .chip-long{display:none}
 .mould-chip .chip-short{display:block;font-size:13px}
 .story.is-live .mould-panel figure{grid-row:1/4;margin:0}
 .story.is-live .mould-panel img{height:100%;min-height:96px}
 .story.is-live .mould-panel figcaption{display:none}
 .story.is-live .mould-panel h2{font-size:22px}
 .story.is-live .mould-panel p{font-size:13px;margin-top:6px;line-height:1.45}
 .story.is-live .mould-panel ul{display:none}
 .story.is-live .mould-panel .text-link{padding-top:6px;margin-top:0}
 .story.is-live .beat-about p{font-size:14px;margin-top:10px}
 .story.is-live .beat-about h2,.story.is-live .beat-ready h2,.story.is-live .beat-services h2{font-size:32px}
 .story.is-live .service-track{margin-top:14px}
 .story.is-live .service-track a{padding:9px 0;grid-template-columns:34px 1fr}
 .story.is-live .service-track strong{font-size:16px}
 .story.is-live .service-track span:last-child{display:none}
 .story.is-live .beat-quote{padding:26px 20px}
 .story.is-live .story-hud{left:var(--pad);right:var(--pad);bottom:calc(env(safe-area-inset-bottom) + 14px);justify-content:space-between;overflow-x:auto;scrollbar-width:none}
 .story-hud a{padding:9px 7px;font-size:11px}
}
@media (max-width:520px){.story-hud a[data-chapter="about"]{display:none}}

/* JS gelene kadar hikâye alanı boş/koyu (yanıp sönme olmasın); JS başarısızsa story-js 4 sn içinde kalkar */
html.story-js .story:not(.is-live){min-height:calc(100svh - 90px)}
html.story-js .story:not(.is-live) .story-stage{visibility:hidden}

/* ---------------- hizmet çemberi: 6 daire, tezgâhın çevresindeki çembere oturur ve döner ---------------- */
.service-ring{--orb:200px}
.orbs{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:18px}
.orb{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;aspect-ratio:1;border-radius:50%;padding:22px 24px;color:var(--ink);background:radial-gradient(circle at 50% 28%,#172231 0%,#0c1119 68%);border:1px solid #5aa9ff3d;box-shadow:inset 0 0 34px #3fa9ff12,0 22px 50px -30px #000;transition:border-color .35s var(--ease),box-shadow .35s var(--ease)}
.orb .mono{font-size:11px;color:var(--accent);letter-spacing:.12em}
.orb strong{font-family:Alike,Georgia,serif;font-weight:500;font-size:17px;letter-spacing:-.02em;line-height:1.15;margin:6px 0 0}
.orb-desc{font-size:12px;line-height:1.45;color:var(--muted);margin-top:8px}
.orb:hover,.orb:focus-visible,.orb.is-front{border-color:#5aa9ffd0;box-shadow:inset 0 0 34px #3fa9ff26,0 0 36px -8px #3fa9ffb0}
.orb.is-front .mono{text-shadow:0 0 10px var(--led)}
.ring-line,.orb-caption{display:none}
.story.is-live .service-ring{position:absolute;inset:0;pointer-events:none;z-index:2}
.story.is-live .orbs{display:block}
.story.is-live .orb{position:absolute;left:0;top:0;width:var(--orb);height:var(--orb);pointer-events:auto;opacity:0;visibility:hidden;will-change:transform,opacity;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.story.is-live .ring-line{display:block;position:absolute;inset:0;width:100%;height:100%;overflow:visible;opacity:0}
.ring-line circle:first-child{fill:none;stroke:#3fa9ff66;stroke-width:1.2;stroke-dasharray:2 7;filter:drop-shadow(0 0 4px #3fa9ff)}
.ring-dot{fill:#d8efff;filter:drop-shadow(0 0 4px #3fa9ff) drop-shadow(0 0 10px #3fa9ff)}
@media (max-width:900px){
 .service-ring{--orb:96px}
 .story.is-live .orb{padding:10px}
 .story.is-live .orb strong{font-size:12px;margin-top:3px}
 .story.is-live .orb .mono{font-size:10px}
 .story.is-live .orb-desc{display:none}
 .story.is-live .beat-services>p:not(.orb-caption){display:none}
 .story.is-live .orb-caption{display:grid;gap:4px;margin-top:14px;padding:12px 14px;border-left:2px solid var(--led);background:#0d1219cc}
 .orb-caption strong{font-family:Alike,Georgia,serif;font-weight:500;font-size:17px;color:var(--ink)}
 .orb-caption span{font-size:13px;line-height:1.45}
}

/* ---------------- Hizmetlerimiz başlığı: baştaki yörünge işareti (dönen hizmet çemberinin minyatürü) ---------------- */
.svc-title{display:flex;align-items:center;gap:.28em;font-size:clamp(42px,4.4vw,72px)!important;letter-spacing:-.045em}
.svc-stop{color:var(--accent);text-shadow:0 0 22px #3fa9ff88}
.svc-mark{position:relative;flex:none;width:.72em;height:.72em;border-radius:50%;border:2px solid #5aa9ff66;box-shadow:inset 0 0 14px #3fa9ff33,0 0 18px -4px #3fa9ff88}
.svc-mark::before{content:'';position:absolute;inset:34%;border-radius:50%;background:radial-gradient(circle,#d8efff,#3fa9ff 60%,transparent 70%);box-shadow:0 0 12px #3fa9ff}
.svc-mark i{position:absolute;inset:-2px;border-radius:50%;animation:svc-orbit 3.2s linear infinite}
.svc-mark i::after{content:'';position:absolute;top:-4px;left:50%;width:8px;height:8px;margin-left:-4px;border-radius:50%;background:#eaf6ff;box-shadow:0 0 6px #3fa9ff,0 0 14px #3fa9ff}
@keyframes svc-orbit{to{transform:rotate(360deg)}}
.svc-lead{font-size:17px!important;max-width:40ch!important;margin-top:16px!important}

/* ---------------- Teklif Al: hikâyeden sonra, normal akışta tam ekran ---------------- */
.quote-stage{--led:#3fa9ff;position:relative;overflow:hidden;min-height:calc(100svh - 90px);display:flex;flex-direction:column;justify-content:center;padding:clamp(60px,10vh,120px) var(--pad) 0;background:radial-gradient(60% 70% at 78% 40%,#0e2036 0%,#090d13 55%,#06080b 100%);border-top:1px solid #3fa9ff26}
.qs-bg{position:absolute;inset:0;pointer-events:none}
.qs-ring{position:absolute;right:-12vw;top:50%;width:min(78vw,1100px);aspect-ratio:1;translate:0 -50%;border-radius:50%;border:1px dashed #3fa9ff2e;animation:svc-orbit 90s linear infinite}
.qs-ring-2{width:min(54vw,760px);right:0;border-style:solid;border-color:#3fa9ff14;animation-duration:140s;animation-direction:reverse}
.qs-inner{position:relative;max-width:var(--max);width:100%;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:clamp(40px,6vw,110px);align-items:end}
.qs-eyebrow{display:inline-flex;align-items:center;gap:12px;font:500 13px/1 'IBM Plex Mono',monospace;letter-spacing:.2em;color:var(--accent);margin:0 0 26px}
.qs-dot{width:9px;height:9px;border-radius:50%;background:var(--led);box-shadow:0 0 10px var(--led),0 0 22px var(--led);animation:qs-blink 1.6s ease-in-out infinite}
@keyframes qs-blink{50%{opacity:.35}}
.qs-title{position:relative;margin:0;font:500 clamp(52px,6.4vw,118px)/.98 Alike,Georgia,serif;letter-spacing:-.06em;color:var(--ink)}
.qs-line{display:block;overflow:hidden;padding-bottom:.06em}
.qs-line>span{display:inline-block}
.qs-accent{color:transparent;background:linear-gradient(100deg,#5aa9ff,#b3dbff 45%,#3d8cf0 70%,#8cc6ff);-webkit-background-clip:text;background-clip:text;filter:drop-shadow(0 0 26px #3fa9ff44)}
.qs-scan{position:absolute;top:-4%;bottom:-4%;left:0;width:3px;border-radius:3px;background:linear-gradient(#3fa9ff00,#d8efff,#3fa9ff00);box-shadow:0 0 14px #3fa9ff,0 0 36px #3fa9ff;opacity:0;pointer-events:none}
.qs-lead{max-width:48ch;margin:30px 0 0;font-size:clamp(16px,1.25vw,19px);line-height:1.65;color:var(--muted)}
.qs-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:38px}
.qs-steps{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.qs-steps li{position:relative;display:grid;grid-template-columns:52px 1fr;column-gap:16px;padding:20px 22px;border:1px solid #a9c3e01f;border-radius:6px;background:#0d1219cc;transition:transform .45s var(--ease),border-color .45s var(--ease),background .45s}
.qs-steps li::before{content:'';position:absolute;left:0;top:14px;bottom:14px;width:2px;background:var(--led);box-shadow:0 0 10px var(--led);transform:scaleY(.25);transition:transform .45s var(--ease)}
.qs-steps li:hover{transform:translateX(6px);border-color:#5aa9ff55;background:#101824}
.qs-steps li:hover::before{transform:scaleY(1)}
.qs-steps .mono{grid-row:1/3;font-size:22px;color:var(--accent);letter-spacing:.04em;padding-top:2px}
.qs-steps strong{font:500 20px/1.2 Alike,Georgia,serif;letter-spacing:-.02em;color:var(--ink)}
.qs-steps li>span:last-child{font-size:14px;color:var(--muted);margin-top:4px}
.qs-contact{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}

/* butonlar: her biri farklı efekt */
.qs-btn{position:relative;display:inline-flex;align-items:center;gap:16px;min-height:60px;padding:0 26px;border-radius:8px;font:600 16px/1 Jost,sans-serif;color:var(--ink);isolation:isolate;overflow:hidden;transition:transform .35s var(--ease),box-shadow .35s var(--ease),color .35s}
.qs-label{position:relative;display:grid;gap:4px}
.qs-label small{font:500 11px/1 'IBM Plex Mono',monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
/* 1) Teklif al: etrafında dönen LED çerçeve + mıknatıs (story-quote.js) + kayan ok */
@property --qs-a{syntax:'<angle>';initial-value:0deg;inherits:false}
.qs-primary{min-height:66px;padding:0 30px;font-size:18px;color:#fff;background:linear-gradient(140deg,#2f7ae6,#1f53b8);box-shadow:0 18px 40px -18px #3fa9ffaa}
.qs-primary::before{content:'';position:absolute;inset:-2px;z-index:-2;border-radius:inherit;background:conic-gradient(from var(--qs-a),#3fa9ff00 0deg,#d8efff 40deg,#3fa9ff 80deg,#3fa9ff00 140deg,#3fa9ff00 360deg);animation:qs-spin 2.6s linear infinite}
.qs-primary::after{content:'';position:absolute;inset:2px;z-index:-1;border-radius:6px;background:linear-gradient(140deg,#2f7ae6,#1b4aa8)}
@keyframes qs-spin{to{--qs-a:360deg}}
.qs-arrow{position:relative;display:inline-grid;width:1.1em;height:1.1em;overflow:hidden;font-size:22px}
.qs-arrow i{grid-area:1/1;font-style:normal;transition:transform .45s var(--ease)}
.qs-arrow i:last-child{transform:translateX(-120%)}
.qs-primary:hover .qs-arrow i:first-child,.qs-primary:focus-visible .qs-arrow i:first-child{transform:translateX(120%)}
.qs-primary:hover .qs-arrow i:last-child,.qs-primary:focus-visible .qs-arrow i:last-child{transform:none}
.qs-primary:hover,.qs-primary:focus-visible{box-shadow:0 22px 50px -16px #3fa9ffcc}
/* 2) Kalıpları keşfet: soldan dolan zemin, yazı rengi döner */
.qs-ghost{border:1px solid #a9c3e040;background:#0d1219}
.qs-ghost::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#e7edf3,#b3dbff);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
.qs-ghost:hover::before,.qs-ghost:focus-visible::before{transform:scaleX(1)}
.qs-ghost:hover,.qs-ghost:focus-visible{color:#07090c}
/* 3) Telefon: radar gibi atan nokta */
.qs-call,.qs-wa{min-height:74px;border:1px solid #a9c3e026;background:#0d1219cc;font-size:17px}
.qs-ping{position:relative;flex:none;width:12px;height:12px;border-radius:50%;background:var(--led);box-shadow:0 0 10px var(--led)}
.qs-ping::before,.qs-ping::after{content:'';position:absolute;inset:0;border-radius:50%;border:2px solid var(--led);animation:qs-ping 2s ease-out infinite}
.qs-ping::after{animation-delay:1s}
@keyframes qs-ping{from{transform:scale(1);opacity:.9}to{transform:scale(3.6);opacity:0}}
.qs-call:hover,.qs-call:focus-visible{border-color:#5aa9ff88;transform:translateY(-3px)}
/* 4) WhatsApp: yeşil parıltı yayılır */
.qs-wa::before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at var(--mx,50%) var(--my,50%),#25d36633,transparent 60%);opacity:0;transition:opacity .35s}
.qs-wa:hover::before,.qs-wa:focus-visible::before{opacity:1}
.qs-wa:hover,.qs-wa:focus-visible{border-color:#25d36677;transform:translateY(-3px)}

/* akan kalıp bandı */
.qs-marquee{position:relative;margin:clamp(50px,9vh,100px) calc(var(--pad) * -1) 0;padding:22px 0;border-top:1px solid #a9c3e01a;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.qs-marquee>div{display:flex;width:max-content;gap:34px;align-items:center;animation:qs-marquee 38s linear infinite}
.qs-marquee:hover>div{animation-play-state:paused}
.qs-marquee span{font:500 clamp(22px,2.4vw,38px)/1 Alike,Georgia,serif;letter-spacing:-.03em;color:#a9b7c6}
.qs-marquee b{color:var(--led);font-size:14px;text-shadow:0 0 10px var(--led)}
@keyframes qs-marquee{to{transform:translateX(-50%)}}

/* açılış: satırlar alttan, LED tarama çizgisi başlığın üzerinden geçer (story-quote.js .is-armed/.is-in) */
.quote-stage.is-armed .qs-line>span{transform:translateY(105%);filter:blur(6px)}
.quote-stage.is-armed .qs-lead,.quote-stage.is-armed .qs-actions,.quote-stage.is-armed .qs-steps li,.quote-stage.is-armed .qs-contact,.quote-stage.is-armed .qs-eyebrow{opacity:0;transform:translateY(24px)}
.quote-stage.is-in .qs-line>span{transform:none;filter:none;transition:transform 1s var(--ease),filter 1s var(--ease)}
.quote-stage.is-in .qs-line:nth-child(2)>span{transition-delay:.12s}
.quote-stage.is-in .qs-line:nth-child(3)>span{transition-delay:.24s}
.quote-stage.is-in .qs-scan{animation:qs-scan 1.4s cubic-bezier(.5,0,.3,1) .15s both}
@keyframes qs-scan{0%{left:0;opacity:0}10%{opacity:1}90%{opacity:1}100%{left:100%;opacity:0}}
.quote-stage.is-in .qs-eyebrow,.quote-stage.is-in .qs-lead,.quote-stage.is-in .qs-actions,.quote-stage.is-in .qs-steps li,.quote-stage.is-in .qs-contact{opacity:1;transform:none;transition:opacity .8s var(--ease),transform .8s var(--ease)}
.quote-stage.is-in .qs-lead{transition-delay:.45s}.quote-stage.is-in .qs-actions{transition-delay:.6s}
.quote-stage.is-in .qs-steps li:nth-child(1){transition-delay:.5s}.quote-stage.is-in .qs-steps li:nth-child(2){transition-delay:.62s}.quote-stage.is-in .qs-steps li:nth-child(3){transition-delay:.74s}
.quote-stage.is-in .qs-contact{transition-delay:.86s}
@media (max-width:900px){
 .quote-stage{min-height:auto;padding-top:64px}
 .qs-inner{grid-template-columns:1fr;gap:40px}
 .qs-title{font-size:clamp(40px,10.6vw,64px)}
 .qs-ring{right:-40vw;width:120vw}
 .qs-contact{grid-template-columns:1fr}
 .qs-btn{width:100%;justify-content:space-between}
 .qs-steps li{grid-template-columns:40px 1fr;padding:16px}
}
@media (prefers-reduced-motion:reduce){.qs-ring,.qs-dot,.qs-ping::before,.qs-ping::after,.qs-primary::before,.qs-marquee>div,.svc-mark i{animation:none!important}}

.story h2,.part-card h3,.mould-panel h2,.orb strong,.mould-chip strong,.qs-title,.qs-steps strong,.qs-marquee span,.svc-title,.orb-caption strong,.service-track strong{font-weight:400;letter-spacing:-.015em}
.qs-title{letter-spacing:-.03em}
.svc-stop{margin-left:-.26em}
