/* ==========================================================================
   NORDO — Dijital Tasarım Stüdyosu
   Ortak stil dosyası
   ========================================================================== */

:root{
  /* Buz paleti */
  --ink:        #08161F;
  --ink-2:      #4A6472;
  --ink-3:      #90A6B4;
  --white:      #FFFFFF;
  --bg:         #F6FAFC;
  --tint:       #E9F2F7;
  --tint-2:     #DAE8F0;
  --glacier:    #0F5A76;
  --glacier-lt: #1B7C9E;
  --ice:        #6FC0DC;
  --ice-pale:   #B9E0EE;
  --line:       rgba(8,22,31,.09);
  --line-2:     rgba(8,22,31,.16);
  --glow:       rgba(111,192,220,.28);

  /* Ölçü */
  --max:        1180px;
  --gut:        24px;
  --r-sm:       10px;
  --r:          16px;
  --r-lg:       24px;

  /* Hareket */
  --ease:       cubic-bezier(.22,.61,.36,1);
  --t-fast:     220ms var(--ease);
  --t:          360ms var(--ease);
  --t-slow:     640ms var(--ease);
}

/* ---------- Sıfırlama ---------- */
*,*::before,*::after{box-sizing:border-box;}
html,body,h1,h2,h3,h4,p,ul,ol,li,figure,blockquote{margin:0;padding:0;}
ul,ol{list-style:none;}
img,svg{display:block;max-width:100%;}
button{font:inherit;color:inherit;background:none;border:none;cursor:pointer;}
a{color:inherit;text-decoration:none;}

html{
  scroll-behavior:smooth;
  -webkit-text-size-adjust:100%;
}

body{
  background:var(--bg);
  color:var(--ink);
  font-family:'Inter',system-ui,-apple-system,sans-serif;
  font-weight:400;
  font-size:16px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  overflow-x:hidden;
  position:relative;
}

/* ---------- Tipografi ---------- */
h1,h2,h3,h4,.display{
  font-family:'Sora',system-ui,sans-serif;
  font-weight:600;
  line-height:1.12;
  letter-spacing:-.028em;
  color:var(--ink);
}

h1{font-size:clamp(2.4rem,5.4vw,4.1rem);font-weight:700;}
h2{font-size:clamp(1.85rem,3.4vw,2.85rem);}
h3{font-size:clamp(1.15rem,1.7vw,1.4rem);letter-spacing:-.018em;}

p{color:var(--ink-2);}

.lede{
  font-size:clamp(1.02rem,1.35vw,1.18rem);
  color:var(--ink-2);
  line-height:1.7;
  max-width:58ch;
  font-weight:300;
}

.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:9px;
  font-family:'Inter',sans-serif;
  font-size:.7rem;
  font-weight:500;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--glacier);
}
.eyebrow::before{
  content:'';
  width:20px;
  height:1px;
  background:var(--ice);
}

.mono{
  font-family:'JetBrains Mono',ui-monospace,'SF Mono',monospace;
  font-size:.78rem;
  letter-spacing:.02em;
}

/* ---------- Yerleşim ---------- */
.wrap{
  width:100%;
  max-width:var(--max);
  margin-inline:auto;
  padding-inline:var(--gut);
}

.section{padding:clamp(72px,9vw,124px) 0;}
.section--tight{padding:clamp(56px,6vw,84px) 0;}

.section-head{max-width:660px;margin-bottom:clamp(40px,5vw,64px);}
.section-head h2{margin:18px 0 16px;}

.rule{height:1px;background:var(--line);border:none;}

/* ---------- Erişilebilirlik ---------- */
:focus-visible{
  outline:2px solid var(--glacier);
  outline-offset:3px;
  border-radius:4px;
}
.skip{
  position:absolute;
  left:-9999px;
  top:0;
  z-index:999;
  background:var(--glacier);
  color:#fff;
  padding:12px 20px;
  border-radius:0 0 var(--r-sm) 0;
}
.skip:focus{left:0;}
.sr-only{
  position:absolute;width:1px;height:1px;
  overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;
}

/* ==========================================================================
   ARKA PLAN — Buz kristali kafesi + kar taneleri
   ========================================================================== */

/* Tüm dekoratif katmanlar bu kutuda kırpılır — yatay kaydırma oluşmaz */
.bg-layer{
  position:fixed;
  inset:0;
  overflow:hidden;
  pointer-events:none;
  z-index:0;
}

#frost-canvas{
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:.55;
}

.lattice{
  position:absolute;
  pointer-events:none;
  opacity:.5;
}
.lattice svg{width:100%;height:100%;overflow:visible;}
.lattice line,.lattice circle,.lattice path{
  stroke:var(--ice);
  fill:none;
  vector-effect:non-scaling-stroke;
}

.lattice--a{
  top:-260px;right:-220px;
  width:760px;height:760px;
  animation:spin 150s linear infinite;
}
.lattice--b{
  bottom:-320px;left:-280px;
  width:880px;height:880px;
  opacity:.34;
  animation:spin 210s linear infinite reverse;
}

@keyframes spin{
  from{transform:rotate(0deg);}
  to{transform:rotate(360deg);}
}

.aurora{
  position:absolute;
  border-radius:50%;
  filter:blur(90px);
  pointer-events:none;
}
.aurora--1{
  top:-14%;left:8%;
  width:44vw;height:44vw;
  background:radial-gradient(circle,rgba(111,192,220,.34),transparent 68%);
  animation:float1 34s ease-in-out infinite alternate;
}
.aurora--2{
  top:32%;right:-6%;
  width:38vw;height:38vw;
  background:radial-gradient(circle,rgba(15,90,118,.16),transparent 68%);
  animation:float2 42s ease-in-out infinite alternate;
}
.aurora--3{
  bottom:-10%;left:24%;
  width:40vw;height:40vw;
  background:radial-gradient(circle,rgba(185,224,238,.42),transparent 68%);
  animation:float3 38s ease-in-out infinite alternate;
}

@keyframes float1{
  from{transform:translate(0,0) scale(1);}
  to{transform:translate(6vw,5vh) scale(1.14);}
}
@keyframes float2{
  from{transform:translate(0,0) scale(1.08);}
  to{transform:translate(-7vw,-4vh) scale(1);}
}
@keyframes float3{
  from{transform:translate(0,0) scale(1);}
  to{transform:translate(5vw,-6vh) scale(1.1);}
}

/* İçerik arka planın üstünde */
.page-shell{position:relative;z-index:1;}

/* ==========================================================================
   ÜST BAR + GEZİNTİ
   ========================================================================== */

.topbar{
  position:sticky;
  top:0;
  z-index:60;
  background:rgba(246,250,252,.72);
  backdrop-filter:blur(18px) saturate(1.4);
  -webkit-backdrop-filter:blur(18px) saturate(1.4);
  border-bottom:1px solid transparent;
  transition:border-color var(--t),background var(--t);
}
.topbar.is-stuck{
  border-bottom-color:var(--line);
  background:rgba(246,250,252,.88);
}

.nav{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  height:74px;
}

.brand{
  display:inline-flex;
  align-items:center;
  gap:11px;
  flex-shrink:0;
}
.brand-mark{
  width:30px;height:30px;
  color:var(--glacier);
  flex-shrink:0;
}
.brand-mark .crystal{
  transform-origin:16px 16px;
  animation:spin 44s linear infinite;
}
.brand-word{
  font-family:'Sora',sans-serif;
  font-size:1.12rem;
  font-weight:600;
  letter-spacing:.13em;
  color:var(--ink);
}

.nav-links{
  display:flex;
  align-items:center;
  gap:4px;
  margin-left:auto;
}
.nav-links a{
  position:relative;
  padding:9px 15px;
  font-size:.9rem;
  font-weight:400;
  color:var(--ink-2);
  border-radius:var(--r-sm);
  transition:color var(--t-fast),background var(--t-fast);
}
.nav-links a:hover{color:var(--ink);background:var(--tint);}
.nav-links a[aria-current="page"]{
  color:var(--glacier);
  font-weight:500;
}
.nav-links a[aria-current="page"]::after{
  content:'';
  position:absolute;
  left:15px;right:15px;bottom:3px;
  height:1.5px;
  background:var(--glacier);
  border-radius:2px;
}

.nav-cta{flex-shrink:0;}

.nav-burger{
  display:none;
  width:42px;height:42px;
  align-items:center;
  justify-content:center;
  border:1px solid var(--line);
  border-radius:var(--r-sm);
  background:var(--white);
}
.nav-burger span{
  display:block;
  width:17px;height:1.5px;
  background:var(--ink);
  border-radius:2px;
  position:relative;
  transition:background var(--t-fast);
}
.nav-burger span::before,
.nav-burger span::after{
  content:'';
  position:absolute;
  left:0;
  width:17px;height:1.5px;
  background:var(--ink);
  border-radius:2px;
  transition:transform var(--t);
}
.nav-burger span::before{top:-5.5px;}
.nav-burger span::after{top:5.5px;}
.nav-burger[aria-expanded="true"] span{background:transparent;}
.nav-burger[aria-expanded="true"] span::before{transform:translateY(5.5px) rotate(45deg);}
.nav-burger[aria-expanded="true"] span::after{transform:translateY(-5.5px) rotate(-45deg);}

.nav-drawer{
  display:none;
  flex-direction:column;
  gap:2px;
  padding:12px 0 22px;
  border-top:1px solid var(--line);
}
.nav-drawer.is-open{display:flex;}
.nav-drawer a{
  padding:13px 4px;
  font-size:1rem;
  color:var(--ink-2);
  border-bottom:1px solid var(--line);
}
.nav-drawer a[aria-current="page"]{color:var(--glacier);font-weight:500;}
.nav-drawer .btn{margin-top:16px;justify-content:center;}

@media (max-width:900px){
  .nav-links{display:none;}
  .nav-cta{display:none;}
  .nav-burger{display:flex;}
}

/* ==========================================================================
   DÜĞMELER
   ========================================================================== */

.btn{
  display:inline-flex;
  align-items:center;
  gap:9px;
  padding:13px 24px;
  border-radius:999px;
  font-family:'Inter',sans-serif;
  font-size:.88rem;
  font-weight:500;
  letter-spacing:.005em;
  border:1px solid transparent;
  transition:transform var(--t-fast),background var(--t-fast),
             border-color var(--t-fast),box-shadow var(--t-fast),color var(--t-fast);
  will-change:transform;
}
.btn svg{width:16px;height:16px;flex-shrink:0;}
.btn:hover{transform:translateY(-1.5px);}
.btn:active{transform:translateY(0);}

.btn--primary{
  background:var(--glacier);
  color:#fff;
  box-shadow:0 1px 2px rgba(8,22,31,.14);
}
.btn--primary:hover{
  background:var(--glacier-lt);
  box-shadow:0 8px 22px rgba(15,90,118,.24);
}

.btn--ghost{
  background:var(--white);
  border-color:var(--line-2);
  color:var(--ink);
}
.btn--ghost:hover{
  border-color:var(--glacier);
  color:var(--glacier);
  box-shadow:0 6px 18px rgba(8,22,31,.07);
}

.btn--plain{
  padding:13px 6px;
  color:var(--glacier);
}
.btn--plain:hover{color:var(--glacier-lt);gap:13px;}

.btn--wide{width:100%;justify-content:center;}
.btn--sm{padding:10px 18px;font-size:.82rem;}

/* ==========================================================================
   KAHRAMAN BÖLÜMÜ
   ========================================================================== */

.hero{
  position:relative;
  padding:clamp(64px,9vw,120px) 0 clamp(56px,7vw,96px);
}
.hero-grid{
  display:grid;
  grid-template-columns:1.08fr .92fr;
  gap:clamp(40px,5vw,72px);
  align-items:center;
}
.hero h1{margin:22px 0 24px;}
.hero .lede{margin-bottom:36px;}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;}

.hero-note{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:30px;
  font-size:.84rem;
  color:var(--ink-3);
}
.hero-note svg{width:15px;height:15px;color:var(--ice);flex-shrink:0;}

@media (max-width:940px){
  .hero-grid{grid-template-columns:1fr;gap:44px;}
}

/* Kahraman görseli — dönen kristal disk */
.hero-visual{
  position:relative;
  aspect-ratio:1;
  display:grid;
  place-items:center;
}
.hero-visual svg{width:100%;height:100%;overflow:visible;}
.ring-outer{transform-origin:center;animation:spin 62s linear infinite;}
.ring-mid{transform-origin:center;animation:spin 44s linear infinite reverse;}
.ring-inner{transform-origin:center;animation:spin 28s linear infinite;}
.ring-core{transform-origin:center;animation:pulse 6s ease-in-out infinite;}

@keyframes pulse{
  0%,100%{opacity:.85;transform:scale(1);}
  50%{opacity:1;transform:scale(1.035);}
}

/* ==========================================================================
   KARTLAR & IZGARALAR
   ========================================================================== */

.card{
  background:var(--white);
  border:1px solid var(--line);
  border-radius:var(--r);
  padding:30px 28px;
  transition:transform var(--t),border-color var(--t),box-shadow var(--t);
}
.card:hover{
  transform:translateY(-3px);
  border-color:var(--tint-2);
  box-shadow:0 14px 38px rgba(8,22,31,.07);
}
.card h3{margin-bottom:10px;}
.card p{font-size:.92rem;}

.card-num{
  font-family:'JetBrains Mono',monospace;
  font-size:.72rem;
  color:var(--ice);
  letter-spacing:.08em;
  display:block;
  margin-bottom:16px;
}

.card-icon{
  width:42px;height:42px;
  display:grid;
  place-items:center;
  border-radius:11px;
  background:var(--tint);
  color:var(--glacier);
  margin-bottom:20px;
}
.card-icon svg{width:20px;height:20px;}

.grid-3{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.grid-4{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
}
.grid-2{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:20px;
}
@media (max-width:940px){
  .grid-3,.grid-4{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:620px){
  .grid-3,.grid-4,.grid-2{grid-template-columns:1fr;}
}

/* ==========================================================================
   İSTATİSTİK ŞERİDİ
   ========================================================================== */

.stats{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:1px;
  background:var(--line);
  border:1px solid var(--line);
  border-radius:var(--r);
  overflow:hidden;
}
.stat{
  background:var(--white);
  padding:28px 24px;
}
.stat-val{
  font-family:'Sora',sans-serif;
  font-size:clamp(1.8rem,3vw,2.5rem);
  font-weight:600;
  letter-spacing:-.03em;
  color:var(--glacier);
  line-height:1;
}
.stat-lbl{
  margin-top:9px;
  font-size:.82rem;
  color:var(--ink-2);
}
@media (max-width:760px){
  .stats{grid-template-columns:repeat(2,1fr);}
}

/* ==========================================================================
   ÇALIŞMA KARTLARI
   ========================================================================== */

.work{
  display:block;
  background:var(--white);
  border:1px solid var(--line);
  border-radius:var(--r);
  overflow:hidden;
  transition:transform var(--t),box-shadow var(--t),border-color var(--t);
}
.work:hover{
  transform:translateY(-4px);
  border-color:var(--tint-2);
  box-shadow:0 18px 44px rgba(8,22,31,.09);
}
.work-swatch{
  height:132px;
  position:relative;
  overflow:hidden;
}
.work-swatch::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(105deg,rgba(255,255,255,.22),transparent 55%);
}
.work-body{padding:22px 24px 26px;}
.work-meta{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:.74rem;
  color:var(--ink-3);
  letter-spacing:.04em;
  text-transform:uppercase;
  margin-bottom:9px;
}
.work-meta span{width:3px;height:3px;border-radius:50%;background:var(--ice);}
.work h3{font-size:1.22rem;margin-bottom:7px;}
.work p{font-size:.88rem;}

/* ---- Küçük, tıklanabilir örnek kartları (showcase) ---- */
.showcase-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  max-width:640px;
}
@media (max-width:620px){
  .showcase-grid{grid-template-columns:1fr;}
}
.showcase{
  display:block;
  background:var(--white);
  border:1px solid var(--line);
  border-radius:var(--r);
  overflow:hidden;
  cursor:pointer;
  transition:transform var(--t),box-shadow var(--t),border-color var(--t);
}
.showcase:hover{
  transform:translateY(-3px);
  border-color:var(--tint-2);
  box-shadow:0 14px 34px rgba(8,22,31,.09);
}
.showcase-thumb{
  position:relative;
  aspect-ratio:4/3;
  overflow:hidden;
  background:var(--tint);
}
.showcase-thumb img{
  width:100%;height:100%;
  object-fit:cover;
  display:block;
  transition:transform 500ms var(--ease);
}
.showcase:hover .showcase-thumb img{transform:scale(1.05);}
.showcase-thumb::after{
  content:'';
  position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 55%,rgba(8,22,31,.5));
}
.showcase-zoom{
  position:absolute;
  top:10px;right:10px;
  width:26px;height:26px;
  border-radius:50%;
  background:rgba(255,255,255,.92);
  display:grid;place-items:center;
  color:var(--glacier);
  opacity:0;
  transform:scale(.85);
  transition:opacity var(--t-fast),transform var(--t-fast);
}
.showcase-zoom svg{width:13px;height:13px;}
.showcase:hover .showcase-zoom{opacity:1;transform:scale(1);}
.showcase-body{padding:13px 15px 15px;}
.showcase-meta{
  font-size:.68rem;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--ink-3);
  margin-bottom:3px;
}
.showcase-body h3{font-size:.98rem;font-weight:600;letter-spacing:-.01em;}

/* ---- Tam ekran önizleme ---- */
.lightbox{
  position:fixed;
  inset:0;
  z-index:200;
  background:rgba(8,22,31,.86);
  display:none;
  align-items:center;
  justify-content:center;
  padding:28px;
  backdrop-filter:blur(6px);
}
.lightbox.is-open{display:flex;}
.lightbox-inner{
  position:relative;
  max-width:720px;
  width:100%;
  background:var(--white);
  border-radius:var(--r-lg);
  overflow:hidden;
  max-height:88vh;
  display:flex;
  flex-direction:column;
}
.lightbox-img{
  width:100%;
  max-height:64vh;
  object-fit:cover;
  display:block;
}
.lightbox-body{padding:22px 26px 26px;}
.lightbox-body h3{font-size:1.3rem;margin-bottom:8px;}
.lightbox-body p{font-size:.92rem;}
.lightbox-close{
  position:absolute;
  top:14px;right:14px;
  width:40px;height:40px;
  border-radius:50%;
  background:rgba(8,22,31,.55);
  color:#fff;
  display:grid;place-items:center;
  transition:background var(--t-fast);
  z-index:2;
}
.lightbox-close:hover{background:rgba(8,22,31,.75);}
.lightbox-close svg{width:18px;height:18px;}

/* ==========================================================================
   SÜREÇ
   ========================================================================== */

.steps{
  display:grid;
  gap:1px;
  background:var(--line);
  border:1px solid var(--line);
  border-radius:var(--r);
  overflow:hidden;
}
.step{
  background:var(--white);
  padding:30px 30px;
  display:grid;
  grid-template-columns:76px 1fr;
  gap:24px;
  align-items:start;
  transition:background var(--t-fast);
}
.step:hover{background:var(--tint);}
.step-idx{
  font-family:'JetBrains Mono',monospace;
  font-size:.76rem;
  color:var(--glacier);
  letter-spacing:.06em;
  padding-top:5px;
}
.step h3{margin-bottom:8px;}
.step p{font-size:.93rem;max-width:62ch;}
@media (max-width:620px){
  .step{grid-template-columns:1fr;gap:12px;padding:26px 22px;}
}

/* ==========================================================================
   FİYAT KARTLARI
   ========================================================================== */

.price-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
  align-items:start;
}
@media (max-width:1100px){
  .price-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:640px){
  .price-grid{grid-template-columns:1fr;max-width:480px;margin-inline:auto;}
}

.price{
  background:var(--white);
  border:1px solid var(--line);
  border-radius:var(--r-lg);
  padding:28px 24px 26px;
  display:flex;
  flex-direction:column;
  height:100%;
  transition:transform var(--t),box-shadow var(--t),border-color var(--t);
}
.price:hover{
  transform:translateY(-3px);
  box-shadow:0 16px 42px rgba(8,22,31,.08);
}
.price--lead{
  border-color:var(--glacier);
  box-shadow:0 12px 36px rgba(15,90,118,.12);
  position:relative;
}
.price-tag{
  position:absolute;
  top:-11px;left:30px;
  background:var(--glacier);
  color:#fff;
  font-size:.68rem;
  font-weight:500;
  letter-spacing:.1em;
  text-transform:uppercase;
  padding:5px 13px;
  border-radius:999px;
}
.price-name{
  font-family:'Sora',sans-serif;
  font-size:1.02rem;
  font-weight:600;
  letter-spacing:-.01em;
  margin-bottom:6px;
}
.price-sub{font-size:.86rem;color:var(--ink-2);margin-bottom:24px;}
.price-fig{
  display:flex;
  align-items:baseline;
  gap:7px;
  padding-bottom:24px;
  border-bottom:1px solid var(--line);
  margin-bottom:24px;
}
.price-num{
  font-family:'Sora',sans-serif;
  font-size:2.1rem;
  font-weight:700;
  letter-spacing:-.03em;
  color:var(--ink);
  line-height:1;
}
.price-unit{font-size:.86rem;color:var(--ink-3);}
.price-list{display:flex;flex-direction:column;gap:12px;margin-bottom:30px;}
.price-list li{
  display:flex;
  gap:11px;
  font-size:.9rem;
  color:var(--ink-2);
  line-height:1.5;
}
.price-list svg{
  width:16px;height:16px;
  color:var(--ice);
  flex-shrink:0;
  margin-top:3px;
}
.price .btn{margin-top:auto;}

/* Fiyat tablosu */
.ptable{
  width:100%;
  border-collapse:collapse;
  background:var(--white);
  border:1px solid var(--line);
  border-radius:var(--r);
  overflow:hidden;
}
.ptable th,.ptable td{
  padding:17px 22px;
  text-align:left;
  font-size:.92rem;
  border-bottom:1px solid var(--line);
}
.ptable th{
  font-family:'Sora',sans-serif;
  font-weight:600;
  font-size:.82rem;
  letter-spacing:.02em;
  color:var(--ink);
  background:var(--tint);
}
.ptable td{color:var(--ink-2);}
.ptable td:last-child{
  font-family:'Sora',sans-serif;
  font-weight:600;
  color:var(--ink);
  white-space:nowrap;
}
.ptable tr:last-child td{border-bottom:none;}
.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;}

/* ==========================================================================
   SSS
   ========================================================================== */

.faq{
  border-top:1px solid var(--line);
}
.faq-item{border-bottom:1px solid var(--line);}
.faq-q{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:22px 4px;
  text-align:left;
  font-family:'Sora',sans-serif;
  font-size:1.02rem;
  font-weight:500;
  letter-spacing:-.012em;
  color:var(--ink);
  transition:color var(--t-fast);
}
.faq-q:hover{color:var(--glacier);}
.faq-ic{
  width:22px;height:22px;
  flex-shrink:0;
  position:relative;
}
.faq-ic::before,.faq-ic::after{
  content:'';
  position:absolute;
  top:50%;left:50%;
  background:var(--glacier);
  border-radius:2px;
  transform:translate(-50%,-50%);
  transition:transform var(--t);
}
.faq-ic::before{width:12px;height:1.5px;}
.faq-ic::after{width:1.5px;height:12px;}
.faq-q[aria-expanded="true"] .faq-ic::after{transform:translate(-50%,-50%) scaleY(0);}
.faq-a{
  display:grid;
  grid-template-rows:0fr;
  transition:grid-template-rows var(--t);
}
.faq-a.is-open{grid-template-rows:1fr;}
.faq-a > div{overflow:hidden;}
.faq-a p{
  padding:0 4px 24px;
  font-size:.94rem;
  max-width:70ch;
}

/* ==========================================================================
   İLETİŞİM
   ========================================================================== */

.contact-grid{
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:clamp(32px,4vw,56px);
  align-items:start;
}
@media (max-width:940px){
  .contact-grid{grid-template-columns:1fr;}
}

.ch{
  display:flex;
  align-items:center;
  gap:16px;
  padding:20px 22px;
  background:var(--white);
  border:1px solid var(--line);
  border-radius:var(--r);
  transition:border-color var(--t),transform var(--t),box-shadow var(--t);
}
.ch:hover{
  border-color:var(--glacier);
  transform:translateY(-2px);
  box-shadow:0 10px 28px rgba(8,22,31,.07);
}
.ch-ic{
  width:44px;height:44px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:var(--tint);
  color:var(--glacier);
  flex-shrink:0;
}
.ch-ic svg{width:19px;height:19px;}
.ch-lbl{
  font-size:.76rem;
  letter-spacing:.09em;
  text-transform:uppercase;
  color:var(--ink-3);
}
.ch-val{
  font-family:'Sora',sans-serif;
  font-size:1.04rem;
  font-weight:600;
  letter-spacing:-.015em;
  color:var(--ink);
  margin-top:2px;
}

.form{
  background:var(--white);
  border:1px solid var(--line);
  border-radius:var(--r-lg);
  padding:clamp(26px,3.4vw,38px);
}
.field{margin-bottom:19px;}
.field label{
  display:block;
  font-size:.83rem;
  font-weight:500;
  color:var(--ink);
  margin-bottom:8px;
}
.field input,
.field select,
.field textarea{
  width:100%;
  padding:13px 15px;
  font-family:'Inter',sans-serif;
  font-size:.94rem;
  color:var(--ink);
  background:var(--bg);
  border:1px solid var(--line-2);
  border-radius:var(--r-sm);
  transition:border-color var(--t-fast),box-shadow var(--t-fast),background var(--t-fast);
}
.field textarea{resize:vertical;min-height:118px;line-height:1.6;}
.field input:focus,
.field select:focus,
.field textarea:focus{
  outline:none;
  background:var(--white);
  border-color:var(--glacier);
  box-shadow:0 0 0 3px var(--glow);
}
.field-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
@media (max-width:560px){
  .field-row{grid-template-columns:1fr;}
}
.form-note{
  font-size:.8rem;
  color:var(--ink-3);
  margin-top:14px;
  line-height:1.55;
}

/* ==========================================================================
   ÇAĞRI ŞERİDİ
   ========================================================================== */

.cta-band{
  position:relative;
  background:var(--glacier);
  border-radius:var(--r-lg);
  padding:clamp(40px,5vw,62px) clamp(28px,4vw,58px);
  overflow:hidden;
  color:#fff;
}
.cta-band h2{color:#fff;margin-bottom:14px;}
.cta-band p{
  color:rgba(255,255,255,.78);
  max-width:52ch;
  margin-bottom:30px;
  font-weight:300;
}
.cta-band .eyebrow{color:var(--ice-pale);}
.cta-band .eyebrow::before{background:var(--ice);}
.cta-actions{display:flex;gap:12px;flex-wrap:wrap;}
.cta-band .btn--primary{background:#fff;color:var(--glacier);}
.cta-band .btn--primary:hover{background:var(--ice-pale);box-shadow:0 10px 28px rgba(0,0,0,.18);}
.cta-band .btn--ghost{
  background:transparent;
  border-color:rgba(255,255,255,.34);
  color:#fff;
}
.cta-band .btn--ghost:hover{
  border-color:#fff;
  background:rgba(255,255,255,.09);
  color:#fff;
}
.cta-crystal{
  position:absolute;
  right:-90px;top:-90px;
  width:340px;height:340px;
  opacity:.16;
  color:#fff;
  animation:spin 90s linear infinite;
  pointer-events:none;
}
.cta-crystal svg{width:100%;height:100%;}

/* ==========================================================================
   ALT BİLGİ
   ========================================================================== */

.footer{
  border-top:1px solid var(--line);
  margin-top:clamp(72px,9vw,120px);
  padding:clamp(48px,6vw,72px) 0 34px;
}
.footer-grid{
  display:grid;
  grid-template-columns:1.6fr 1fr 1fr;
  gap:44px;
  margin-bottom:48px;
}
@media (max-width:800px){
  .footer-grid{grid-template-columns:1fr;gap:34px;}
}
.footer-about p{
  font-size:.9rem;
  max-width:38ch;
  margin-top:16px;
}
.footer h4{
  font-size:.76rem;
  letter-spacing:.13em;
  text-transform:uppercase;
  color:var(--ink-3);
  font-weight:500;
  margin-bottom:16px;
}
.footer-links{display:flex;flex-direction:column;gap:11px;}
.footer-links a{
  font-size:.9rem;
  color:var(--ink-2);
  transition:color var(--t-fast);
  width:fit-content;
}
.footer-links a:hover{color:var(--glacier);}
.footer-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding-top:26px;
  border-top:1px solid var(--line);
  flex-wrap:wrap;
}
.footer-bottom p{font-size:.82rem;color:var(--ink-3);}

/* ==========================================================================
   BELİRME ANİMASYONU
   ========================================================================== */

.rise{
  opacity:0;
  transform:translateY(20px);
  transition:opacity var(--t-slow),transform var(--t-slow);
}
.rise.is-in{opacity:1;transform:none;}
.rise[data-d="1"]{transition-delay:70ms;}
.rise[data-d="2"]{transition-delay:140ms;}
.rise[data-d="3"]{transition-delay:210ms;}
.rise[data-d="4"]{transition-delay:280ms;}

/* ==========================================================================
   HAREKET AZALTMA
   ========================================================================== */

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
  }
  .rise{opacity:1;transform:none;}
  #frost-canvas{display:none;}
  .aurora{animation:none;}
}
