/* =========================================================
   VENÜS SİGORTA — v3: "MERİDYEN FERAH"
   Meridyen çatısının aydınlık yorumu. Beyaz zemin, bol boşluk,
   köşeleri yumuşatılmış kart-hero, yüzen kapsül header ve hero
   altına bindirilmiş danışmanlık formu. Kırmızı yalnızca vurgu.
   ========================================================= */

/* ---------- 1. TOKENS ---------- */
:root{
  /* marka */
  --brand:        #D0201A;   /* logo kırmızısı */
  --brand-600:    #B31812;
  --brand-700:    #8E120E;
  --brand-tint:   #FBE9E8;   /* pembe dolgu (Ray'in "Beni arayın" tonu gibi) */
  --brand-wash:   #FDF4F3;   /* bölüm zemini için en soluk yıkama */

  --ink:          #14171C;
  --ink-2:        #1D2128;
  --ink-3:        #31353E;   /* logo mürekkebi */
  --ink-soft:     #5A616D;

  --paper:        #FFFFFF;
  --paper-2:      #F6F7F9;
  --line:         #E7EAEF;
  --line-dark:    rgba(255,255,255,.16);

  --wa:           #1FAF54;   /* WhatsApp yeşili (AA için koyultuldu) */

  /* tipografi */
  --font: "Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --h1: clamp(2.05rem, 4.1vw, 3.7rem);
  --h2: clamp(1.9rem, 3.4vw, 3rem);
  --h3: clamp(1.15rem, 1.5vw, 1.4rem);
  --body: 1.0625rem;

  /* ritim — Meridyen'den daha ferah */
  --gutter: clamp(1.25rem, 4vw, 4.5rem);
  --maxw: 1440px;
  --r-sm: 10px;
  --r-md: 16px;
  --r-lg: 24px;
  --r-xl: clamp(20px, 2.6vw, 34px);
  --r-pill: 999px;

  /* motion */
  --e-out: cubic-bezier(.22,.61,.36,1);
  --e-soft: cubic-bezier(.4,0,.2,1);
  --t-fast: 180ms;
  --t: 320ms;

  --shadow-card: 0 1px 2px rgba(20,23,28,.04), 0 12px 32px -12px rgba(20,23,28,.12);
  --shadow-lift: 0 2px 4px rgba(20,23,28,.05), 0 28px 56px -20px rgba(20,23,28,.22);
  --shadow-pill: 0 1px 2px rgba(20,23,28,.06), 0 16px 40px -16px rgba(20,23,28,.25);
}

/* ---------- 2. RESET / BASE ---------- */
*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; }
body{
  margin:0;
  font-family:var(--font);
  font-size:var(--body);
  line-height:1.65;
  color:var(--ink-3);
  background:var(--paper);
  -webkit-font-smoothing:antialiased;
}
/* height:auto şart: CLS için <img> etiketlerine width/height özniteliği
   yazıyoruz, o öznitelikler sunum ipucu olarak aspect-ratio'yu ezip
   görseli gerçek piksel yüksekliğine çekiyor. Bileşenler kendi
   height:100% kuralıyla bunu yine geçersiz kılabiliyor. */
img{ max-width:100%; display:block; height:auto; }
a{ color:inherit; }
button{ font:inherit; cursor:pointer; }
h1,h2,h3,h4{ margin:0; color:var(--ink); line-height:1.12; letter-spacing:-.02em; font-weight:800; }
p{ margin:0; }
ul{ margin:0; padding:0; list-style:none; }
fieldset{ margin:0; padding:0; border:0; }
blockquote{ margin:0; }
:focus-visible{ outline:2px solid var(--brand); outline-offset:3px; border-radius:4px; }

.sr-only{ position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0; }
.skip{
  position:fixed; top:-100%; left:1rem; z-index:200;
  background:var(--ink); color:#fff; padding:.7rem 1.2rem; border-radius:var(--r-sm);
  transition:top var(--t-fast) var(--e-out);
}
.skip:focus{ top:1rem; }

.wrap{ max-width:var(--maxw); margin-inline:auto; padding-inline:var(--gutter); }

/* ---------- 3. ORTAK PARÇALAR ---------- */
.eyebrow{
  display:inline-flex; align-items:center; gap:.6rem;
  font-size:.8rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase;
  color:var(--brand);
}
.eyebrow::before{ content:""; width:26px; height:2px; background:currentColor; border-radius:2px; }
.eyebrow--light{ color:#fff; }
.eyebrow--light::before{ background:var(--brand); }

.sechead{ max-width:760px; margin-bottom:clamp(2.5rem, 5vw, 4rem); }
.sechead .eyebrow{ margin-bottom:1.1rem; }
.sechead h2{ font-size:var(--h2); }
.sechead p{ margin-top:1.1rem; color:var(--ink-soft); max-width:60ch; }
.sechead--split{
  max-width:none; display:flex; align-items:flex-end; justify-content:space-between;
  gap:2rem; flex-wrap:wrap;
}
h1 em, h2 em{ font-style:normal; color:var(--brand); }
.accent{ color:var(--brand); }
.hero .accent{
  color:#fff;
  background:linear-gradient(transparent 62%, rgba(208,32,26,.85) 62%);
  padding-inline:.08em;
}

.sec{ padding-block:clamp(4.5rem, 8.5vw, 8rem); }
.sec--tight{ padding-block:clamp(3.5rem, 6.5vw, 6rem); }
.sec--paper{ background:var(--paper-2); }

/* butonlar */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:.6rem;
  padding:.95rem 1.7rem; border-radius:var(--r-pill);
  font-weight:700; font-size:.98rem; line-height:1; text-decoration:none;
  border:1.5px solid transparent;
  transition:background var(--t-fast) var(--e-out), color var(--t-fast) var(--e-out),
             border-color var(--t-fast) var(--e-out), transform var(--t-fast) var(--e-out),
             box-shadow var(--t-fast) var(--e-out);
}
.btn svg{ width:18px; height:18px; flex:none; transition:transform var(--t-fast) var(--e-out); }
.btn:hover svg{ transform:translateX(3px); }
.btn:active{ transform:scale(.98); }
.btn--primary{ background:var(--brand); color:#fff; }
.btn--primary:hover{ background:var(--brand-600); }
.btn--ghost{
  border-color:var(--line); color:var(--ink);
  background:var(--paper);
}
.btn--ghost:hover{ border-color:var(--ink); }
.btn--ghost-light{
  border-color:rgba(255,255,255,.45); color:#fff; background:rgba(255,255,255,.06);
  backdrop-filter:blur(6px);
}
.btn--ghost-light:hover{ background:rgba(255,255,255,.16); border-color:#fff; }

/* yuvarlak ok butonları */
.circ{
  width:46px; height:46px; border-radius:50%;
  display:inline-flex; align-items:center; justify-content:center;
  border:1.5px solid rgba(255,255,255,.4); background:rgba(255,255,255,.08);
  color:#fff; backdrop-filter:blur(6px);
  transition:background var(--t-fast) var(--e-out), border-color var(--t-fast) var(--e-out), color var(--t-fast) var(--e-out);
}
.circ svg{ width:19px; height:19px; }
.circ:hover{ background:#fff; color:var(--ink); border-color:#fff; }
.circ.is-dark{
  border-color:var(--line); background:var(--paper); color:var(--ink);
}
.circ.is-dark:hover{ background:var(--ink); color:#fff; border-color:var(--ink); }
.count{ font-size:.9rem; font-weight:600; color:var(--ink-soft); letter-spacing:.06em; }
.count [id]{ color:var(--ink); }

/* ---------- 4. HEADER ---------- */
.hdr{
  position:fixed; inset:0 0 auto 0; z-index:100;
  padding:clamp(.8rem, 1.6vw, 1.1rem) var(--gutter);
  transition:transform var(--t) var(--e-out), padding var(--t) var(--e-out);
}
.hdr__pill{
  max-width:calc(var(--maxw) - var(--gutter) * 2);
  margin-inline:auto;
  display:flex; align-items:center; gap:clamp(1rem, 2.5vw, 2.5rem);
  background:transparent; border:1.5px solid transparent; border-radius:var(--r-pill);
  padding:.55rem .5rem .55rem 1.1rem;
  transition:background var(--t) var(--e-out), box-shadow var(--t) var(--e-out),
             border-color var(--t) var(--e-out), backdrop-filter var(--t) var(--e-out);
}
.hdr.is-stuck .hdr__pill{
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(14px);
  border-color:var(--line);
  box-shadow:var(--shadow-pill);
}
.hdr.is-hidden{ transform:translateY(-115%); }

.hdr__logo{ display:block; flex:none; }
/* dikey kilit: genişlik değil yükseklik sabitlenir, kapsül dengede kalsın */
.hdr__logo img{ width:auto; height:clamp(52px, 5vw, 64px); }

.nav{ margin-left:auto; }
.nav ul{ display:flex; gap:clamp(.2rem, 1vw, .6rem); }
.nav a{
  display:block; padding:.55rem .8rem; border-radius:var(--r-pill);
  font-size:.92rem; font-weight:600; color:var(--ink-2); text-decoration:none;
  white-space:nowrap;
  transition:background var(--t-fast) var(--e-out), color var(--t-fast) var(--e-out);
}
.nav a:hover{ background:var(--paper-2); color:var(--ink); }
.nav a[aria-current="page"]{ color:var(--brand); }

.hdr__actions{ display:flex; align-items:center; gap:1rem; flex:none; }
.hdr__tel{
  display:inline-flex; align-items:center; gap:.5rem;
  font-weight:700; font-size:.94rem; color:var(--ink); text-decoration:none;
  transition:color var(--t-fast) var(--e-out);
}
.hdr__tel svg{ width:17px; height:17px; color:var(--brand); }
.hdr__tel:hover{ color:var(--brand); }

.burger{
  display:none; position:relative; width:46px; height:46px; flex:none;
  border:1.5px solid var(--line); border-radius:50%; background:var(--paper);
}
.burger span, .burger span::before, .burger span::after{
  content:""; position:absolute; left:50%; top:50%;
  width:18px; height:2px; background:var(--ink); border-radius:2px;
  transform:translate(-50%,-50%);
  transition:transform var(--t-fast) var(--e-out), opacity var(--t-fast) var(--e-out);
}
.burger span::before{ transform:translate(-50%, calc(-50% - 6px)); }
.burger span::after{ transform:translate(-50%, calc(-50% + 6px)); }
.burger[aria-expanded="true"] span{ background:transparent; }
.burger[aria-expanded="true"] span::before{ transform:translate(-50%,-50%) rotate(45deg); }
.burger[aria-expanded="true"] span::after{ transform:translate(-50%,-50%) rotate(-45deg); }

/* mobil menü */
.mnav{
  position:fixed; inset:0; z-index:99;
  display:flex; flex-direction:column; justify-content:center; gap:.4rem;
  padding:6rem var(--gutter) 3rem;
  background:var(--paper);
  opacity:0; visibility:hidden; transform:translateY(-2%);
  transition:opacity var(--t) var(--e-out), transform var(--t) var(--e-out), visibility 0s var(--t);
}
.mnav.is-open{ opacity:1; visibility:visible; transform:none; transition-delay:0s; }
.mnav a{
  font-size:clamp(1.5rem, 5vw, 2.1rem); font-weight:800; color:var(--ink);
  text-decoration:none; padding:.45rem 0; letter-spacing:-.02em;
}
.mnav a:hover{ color:var(--brand); }
.mnav .btn{ margin-top:1.5rem; align-self:flex-start; font-size:1.05rem; }

/* ---------- 5. HERO ---------- */
.hero{ padding:calc(clamp(4.6rem, 8vw, 6rem) + .4rem) var(--gutter) 0; }
.hero__card{
  position:relative; max-width:calc(var(--maxw) - var(--gutter) * 2); margin-inline:auto;
  border-radius:var(--r-xl); overflow:hidden;
  background:var(--ink);
  min-height:clamp(560px, 84vh, 800px);
}
.hero-swiper{ position:absolute; inset:0; }
.hero-swiper .swiper-slide{ overflow:hidden; }
.hero__media{ position:absolute; inset:0; }
.hero__media::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(72deg, rgba(14,16,21,.72) 8%, rgba(14,16,21,.38) 46%, rgba(14,16,21,.06) 78%),
             linear-gradient(0deg, rgba(14,16,21,.5), transparent 38%);
}
.hero__media img{ width:100%; height:100%; object-fit:cover; }
.hero-swiper .swiper-slide-active .hero__media img{ animation:heroZoom 9s var(--e-soft) forwards; }
@keyframes heroZoom{ from{ transform:scale(1.06); } to{ transform:scale(1); } }

.hero__copy{
  position:absolute; z-index:2;
  left:clamp(1.6rem, 4.5vw, 4.5rem);
  right:clamp(1.6rem, 4.5vw, 4.5rem);
  bottom:clamp(8.6rem, 13vw, 10.2rem);
  max-width:760px; color:#fff;
}
.hero__copy .eyebrow{ margin-bottom:1.2rem; }
.hero__copy h1, .hero__copy .hero__title{
  color:#fff; font-size:var(--h1); letter-spacing:-.025em; text-wrap:balance;
}
.hero__copy p{
  margin-top:1.2rem; max-width:56ch; font-size:clamp(1rem, 1.3vw, 1.15rem);
  color:rgba(255,255,255,.88);
}
.hero__cta{ display:flex; flex-wrap:wrap; gap:.9rem; margin-top:1.9rem; }

.hero__ctrl{
  position:absolute; z-index:3;
  left:clamp(1.6rem, 4.5vw, 4.5rem); right:clamp(1.6rem, 4.5vw, 4.5rem);
  /* qbar kartı hero'nun altına bindiği için kontroller bindirme payının üstünde durur */
  bottom:calc(clamp(3rem, 5vw, 4rem) + 1.3rem);
  display:flex; align-items:center; gap:1.4rem;
}
.hero__count{ display:flex; align-items:baseline; gap:.35rem; color:#fff; font-weight:700; }
.hero__count .cur{ font-size:1.05rem; }
.hero__count .sep, .hero__count .tot{ font-size:.85rem; color:rgba(255,255,255,.55); }
.hero__prog{
  flex:1; max-width:220px; height:2px; border-radius:2px;
  background:rgba(255,255,255,.25); overflow:hidden;
}
.hero__prog i{
  display:block; height:100%; background:#fff; border-radius:2px;
  transform-origin:left; transform:scaleX(var(--p, 0));
}
.hero__arrows{ display:flex; gap:.6rem; margin-left:auto; }

/* ---------- 6. HIZLI DANIŞMANLIK (qbar) ---------- */
.qbar{ position:relative; z-index:5; margin-top:calc(clamp(3rem, 5vw, 4rem) * -1); }
.qbar__card{
  background:var(--paper); border:1px solid var(--line); border-radius:var(--r-lg);
  box-shadow:var(--shadow-lift);
  padding:clamp(1.6rem, 3.2vw, 2.8rem);
}
.qbar__grid{
  display:grid; grid-template-columns:minmax(260px, .9fr) 1.6fr;
  gap:clamp(1.6rem, 3.5vw, 3.5rem); align-items:start;
}
.qbar__head .eyebrow{ margin-bottom:.9rem; }
.qbar__head h2{ font-size:clamp(1.5rem, 2.3vw, 2.05rem); }
.qbar__head p{ margin-top:.85rem; color:var(--ink-soft); font-size:.98rem; max-width:44ch; }

.qbar__form{ display:flex; flex-direction:column; gap:1.1rem; }
.qbar__fields{
  display:grid; grid-template-columns:repeat(3, 1fr); gap:1rem;
}
.f{ display:flex; flex-direction:column; gap:.45rem; }
.f label{ font-size:.82rem; font-weight:700; color:var(--ink-2); }
.f input, .f select{
  width:100%; padding:.85rem 1rem;
  border:1.5px solid var(--line); border-radius:var(--r-sm);
  background:var(--paper); color:var(--ink);
  font:inherit; font-size:.95rem;
  transition:border-color var(--t-fast) var(--e-out), box-shadow var(--t-fast) var(--e-out);
}
.f input::placeholder{ color:#9AA1AC; }
.f input:focus, .f select:focus{
  outline:none; border-color:var(--brand);
  box-shadow:0 0 0 3px rgba(208,32,26,.12);
}
.f input[aria-invalid="true"]{ border-color:var(--brand); }
.f select{
  appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%235A616D' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:right 1rem center;
  padding-right:2.6rem; cursor:pointer;
}

/* iletişim tercihi: kapsül radiolar */
.qbar__pref{ display:flex; align-items:center; flex-wrap:wrap; gap:.7rem; }
.qbar__pref legend{
  float:left; padding:0; margin-right:.4rem;
  font-size:.82rem; font-weight:700; color:var(--ink-2);
}
.pref input{ position:absolute; opacity:0; pointer-events:none; }
.pref__chip{
  display:inline-flex; align-items:center; gap:.5rem;
  padding:.6rem 1.1rem; border-radius:var(--r-pill);
  border:1.5px solid var(--line); background:var(--paper);
  font-size:.9rem; font-weight:600; color:var(--ink-2);
  cursor:pointer;
  transition:border-color var(--t-fast) var(--e-out), background var(--t-fast) var(--e-out), color var(--t-fast) var(--e-out);
}
.pref__chip svg{ width:16px; height:16px; }
.pref:hover .pref__chip{ border-color:var(--ink-soft); }
.pref input:checked + .pref__chip{
  border-color:var(--brand); background:var(--brand-tint); color:var(--brand-700);
}
.pref--wa input:checked + .pref__chip{
  border-color:var(--wa); background:#E8F7EE; color:#116B33;
}
.pref input:focus-visible + .pref__chip{ outline:2px solid var(--brand); outline-offset:2px; }

.qbar__kvkk{
  display:flex; gap:.65rem; align-items:flex-start;
  font-size:.82rem; color:var(--ink-soft); max-width:64ch; cursor:pointer;
}
.qbar__kvkk input{
  margin-top:.2rem; width:16px; height:16px; flex:none;
  accent-color:var(--brand); cursor:pointer;
}
.qbar__kvkk a{ color:var(--ink-2); font-weight:600; }
.qbar__kvkk input[aria-invalid="true"]{ outline:2px solid var(--brand); outline-offset:2px; }

.qbar__submit{ align-self:flex-start; }

.qbar__meta{
  display:flex; flex-wrap:wrap; gap:1rem 2rem; align-items:center;
  margin-top:clamp(1.4rem, 2.5vw, 2rem); padding-top:clamp(1.2rem, 2vw, 1.6rem);
  border-top:1px solid var(--line);
  font-size:.9rem; color:var(--ink-soft);
}
.qbar__meta li{ display:flex; align-items:center; gap:.5rem; }
.qbar__meta svg{ width:16px; height:16px; color:var(--brand); flex:none; }
.qbar__meta b{ color:var(--ink); font-weight:700; }
.qbar__note{ margin-left:auto; font-size:.82rem; }

/* ---------- 7. BİREYSEL SİGORTALAR (services) ---------- */
.services{ padding-block:clamp(4.5rem, 8.5vw, 8rem) clamp(4rem, 7vw, 6.5rem); overflow:hidden; }
.services__grid{
  display:grid; grid-template-columns:minmax(300px, .85fr) 1.6fr;
  gap:clamp(2rem, 4vw, 4rem); align-items:end;
}
.services__head .eyebrow{ margin-bottom:1.1rem; }
.services__head h2{ font-size:var(--h2); }
.services__head p{ margin-top:1.1rem; color:var(--ink-soft); }
.services__tools{ display:flex; align-items:center; gap:.8rem; margin-top:1.8rem; }
.services__tools .count{ margin-left:.4rem; }

.services__rail{ min-width:0; }
.svc-swiper{ overflow:visible; }
.scard{
  display:flex; flex-direction:column; height:100%;
  background:var(--paper); border:1px solid var(--line); border-radius:var(--r-lg);
  overflow:hidden; text-decoration:none;
  transition:box-shadow var(--t) var(--e-out), transform var(--t) var(--e-out), border-color var(--t) var(--e-out);
}
.scard:hover{ box-shadow:var(--shadow-lift); transform:translateY(-4px); border-color:transparent; }
.scard__media{ position:relative; display:block; aspect-ratio:4/2.9; overflow:hidden; }
.scard__media img{
  width:100%; height:100%; object-fit:cover;
  transition:transform 600ms var(--e-out);
}
.scard:hover .scard__media img{ transform:scale(1.05); }
.scard__no{
  position:absolute; top:1rem; right:1rem;
  padding:.3rem .7rem; border-radius:var(--r-pill);
  background:rgba(255,255,255,.85); backdrop-filter:blur(6px);
  font-size:.8rem; font-weight:800; color:var(--ink);
}
.scard__body{ display:flex; flex-direction:column; gap:.55rem; padding:1.3rem 1.4rem 1.5rem; flex:1; }
.scard__icon{
  width:44px; height:44px; border-radius:var(--r-md);
  display:flex; align-items:center; justify-content:center;
  background:var(--brand-wash); color:var(--brand);
  margin-bottom:.35rem;
}
.scard__icon svg{ width:22px; height:22px; }
.scard__body h3{ font-size:var(--h3); }
.scard__body p{ color:var(--ink-soft); font-size:.93rem; line-height:1.55; }
.scard__link{
  display:inline-flex; align-items:center; gap:.45rem; margin-top:auto; padding-top:.7rem;
  font-size:.9rem; font-weight:700; color:var(--brand);
}
.scard__link svg{ width:16px; height:16px; transition:transform var(--t-fast) var(--e-out); }
.scard:hover .scard__link svg{ transform:translateX(3px); }

.services__bar{
  position:relative; margin-top:2rem; height:2px; border-radius:2px;
  background:var(--line); overflow:hidden;
}
.services__bar .swiper-pagination-progressbar-fill{ background:var(--brand); }

/* ---------- 8. SAĞLIK SPOT (sg) ---------- */
.sg{ background:var(--brand-wash); padding-block:clamp(4.5rem, 8.5vw, 8rem); }
.sg__grid{
  display:grid; grid-template-columns:1.08fr .92fr;
  gap:clamp(2.5rem, 5vw, 5rem); align-items:center;
}
.sg__content .eyebrow{ margin-bottom:1.1rem; }
.sg__content h2{ font-size:var(--h2); max-width:24ch; }
.sg__content > p{ margin-top:1.1rem; color:var(--ink-soft); max-width:62ch; }
.sg__quote{
  margin-top:1.6rem; padding:1.1rem 1.4rem;
  border-left:3px solid var(--brand); border-radius:0 var(--r-md) var(--r-md) 0;
  background:var(--paper);
  font-size:clamp(1.05rem, 1.5vw, 1.2rem); font-weight:700; color:var(--ink);
  letter-spacing:-.01em;
}
.sg__topics{ display:flex; flex-wrap:wrap; gap:.6rem; margin-top:1.6rem; }
.sg__topics li{
  padding:.55rem 1rem; border-radius:var(--r-pill);
  background:var(--paper); border:1px solid var(--line);
  font-size:.88rem; font-weight:600; color:var(--ink-2);
}
.sg__cta{ display:flex; align-items:center; flex-wrap:wrap; gap:1.1rem; margin-top:2rem; }
.sg__ctanote{ font-size:.88rem; font-weight:600; color:var(--ink-soft); }

.sg__frame{ position:relative; }
.sg__frame img{
  width:100%; aspect-ratio:4/4.6; object-fit:cover;
  border-radius:var(--r-xl);
}
.sg__tag{
  position:absolute; left:clamp(1rem, 2vw, 1.6rem); bottom:clamp(1rem, 2vw, 1.6rem);
  right:clamp(1rem, 2vw, 1.6rem);
  display:flex; flex-direction:column; gap:.15rem;
  background:rgba(255,255,255,.94); backdrop-filter:blur(8px);
  border-radius:var(--r-md); padding:.95rem 1.2rem;
  box-shadow:var(--shadow-card);
}
.sg__tag b{ font-size:.95rem; color:var(--ink); }
.sg__tag span{ font-size:.83rem; color:var(--ink-soft); }

/* ---------- 9. KURUMSAL RİSK (kr) ---------- */
.kr{ padding:clamp(2rem, 4vw, 3rem) var(--gutter); }
.kr__grid{
  max-width:calc(var(--maxw) - var(--gutter) * 2); margin-inline:auto;
  background:var(--ink); color:rgba(255,255,255,.82);
  border-radius:var(--r-xl);
  padding:clamp(2.5rem, 5vw, 4.5rem);
  display:grid; grid-template-columns:1.15fr .85fr;
  gap:clamp(2.5rem, 5vw, 4.5rem); align-items:center;
}
.kr__content .eyebrow{ margin-bottom:1.1rem; }
.kr__content h2{ color:#fff; font-size:var(--h2); max-width:22ch; }
.kr__content h2 em{ color:#FF6B64; }
.kr__content > p{ margin-top:1.1rem; max-width:60ch; }
.kr__list{
  display:grid; grid-template-columns:repeat(3, 1fr); gap:.6rem;
  margin-top:1.8rem;
}
.kr__list li{
  padding:.65rem .9rem; border-radius:var(--r-sm);
  border:1px solid var(--line-dark);
  font-size:.86rem; font-weight:600; color:rgba(255,255,255,.9);
}
.kr__cta{ margin-top:2.2rem; }

.kr__media{ position:relative; }
.kr__media img{
  width:100%; aspect-ratio:4/4.4; object-fit:cover;
  border-radius:var(--r-lg);
}
.kr__note{
  position:absolute; left:1.2rem; right:1.2rem; bottom:1.2rem;
  display:flex; flex-direction:column; gap:.15rem;
  background:rgba(20,23,28,.82); backdrop-filter:blur(8px);
  border:1px solid var(--line-dark);
  border-radius:var(--r-md); padding:.95rem 1.2rem;
}
.kr__note b{ color:#fff; font-size:.95rem; }
.kr__note span{ font-size:.83rem; color:rgba(255,255,255,.65); }

/* ---------- 10. NEDEN VENÜS (nd) ---------- */
.nd{ display:grid; grid-template-columns:.85fr 1.15fr; gap:clamp(2.5rem, 5.5vw, 6rem); align-items:start; }
.nd__media{ position:sticky; top:110px; }
.nd__frame{ position:relative; }
.nd__frame img{
  width:100%; aspect-ratio:4/5; object-fit:cover; border-radius:var(--r-xl);
}
.nd__tag{
  position:absolute; left:clamp(1rem, 2vw, 1.6rem); bottom:clamp(1rem, 2vw, 1.6rem);
  right:clamp(1rem, 2vw, 1.6rem);
  display:flex; flex-direction:column; gap:.15rem;
  background:rgba(255,255,255,.94); backdrop-filter:blur(8px);
  border-radius:var(--r-md); padding:.95rem 1.2rem;
  box-shadow:var(--shadow-card);
}
.nd__tag b{ font-size:.95rem; color:var(--ink); }
.nd__tag span{ font-size:.83rem; color:var(--ink-soft); }

.nd__list{ display:flex; flex-direction:column; }
.nd__item{
  display:flex; gap:clamp(1.2rem, 2.5vw, 2rem);
  padding-block:clamp(1.2rem, 2vw, 1.6rem);
  border-top:1px solid var(--line);
}
.nd__item:last-child{ border-bottom:1px solid var(--line); }
.nd__no{
  flex:none; font-size:.9rem; font-weight:800; color:var(--brand);
  padding-top:.25rem; font-variant-numeric:tabular-nums;
}
.nd__item h3{ font-size:var(--h3); }
.nd__item p{ margin-top:.5rem; color:var(--ink-soft); font-size:.95rem; max-width:62ch; }

.nd__stats{
  display:grid; grid-template-columns:repeat(4, 1fr); gap:1rem;
  margin-top:clamp(2rem, 3.5vw, 3rem);
}
.nd__stat{ display:flex; flex-direction:column; gap:.2rem; }
.nd__stat b{
  font-size:clamp(1.7rem, 2.6vw, 2.4rem); font-weight:800; color:var(--ink);
  letter-spacing:-.03em; font-variant-numeric:tabular-nums;
}
.nd__stat b i{ font-style:normal; color:var(--brand); }
.nd__stat > span{ font-size:.86rem; color:var(--ink-soft); }

/* ---------- 11. SÜREÇ (pr) ---------- */
.pr__track{ position:relative; }
.pr__line{
  position:absolute; left:0; right:0; top:23px; height:2px;
  background:var(--line); border-radius:2px;
}
.pr__line i{
  display:block; height:100%; background:var(--brand); border-radius:2px;
  transform-origin:left; transform:scaleX(var(--p, 0));
}
.pr__steps{
  position:relative; display:grid; grid-template-columns:repeat(4, 1fr);
  gap:clamp(1.5rem, 3vw, 2.5rem);
}
.pr__dot{
  display:inline-flex; align-items:center; justify-content:center;
  width:46px; height:46px; border-radius:50%;
  background:var(--paper); border:2px solid var(--line);
  font-size:.9rem; font-weight:800; color:var(--ink-soft);
  transition:background var(--t) var(--e-out), border-color var(--t) var(--e-out), color var(--t) var(--e-out);
}
.pr__step.is-on .pr__dot{ background:var(--brand); border-color:var(--brand); color:#fff; }
.pr__step h3{ font-size:1.1rem; margin-top:1.1rem; }
.pr__step p{ margin-top:.5rem; font-size:.92rem; color:var(--ink-soft); max-width:30ch; }

/* ---------- 12. ANLAŞMALI ŞİRKETLER (mq) ---------- */
.mq{ padding-block:clamp(3.5rem, 6vw, 5.5rem); border-block:1px solid var(--line); overflow:hidden; }
.mq__lbl{
  display:block; text-align:center; margin-bottom:2rem; padding-inline:var(--gutter);
  font-size:.85rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase;
  color:var(--ink-soft);
}
.mq__row{ display:flex; width:max-content; animation:mq 44s linear infinite; }
.mq__row ul{ display:flex; align-items:center; gap:clamp(2.5rem, 5vw, 4.5rem); padding-inline:clamp(1.25rem, 2.5vw, 2.25rem); }
.mq__row li{
  white-space:nowrap; font-size:clamp(1.15rem, 2vw, 1.55rem); font-weight:800;
  letter-spacing:-.02em; color:#B4BBC7;
  transition:color var(--t-fast) var(--e-out);
}
.mq__row li:hover{ color:var(--ink); }
@keyframes mq{ to{ transform:translateX(-50%); } }
.mq__note{
  margin-top:2rem; text-align:center; padding-inline:var(--gutter);
  font-size:.8rem; color:#9AA1AC;
}

/* ---------- 13. HASAR MERKEZİ (hc) ---------- */
.hc{ position:relative; padding:clamp(2rem, 4vw, 3rem) var(--gutter); }
.hc__inner{
  position:relative; max-width:calc(var(--maxw) - var(--gutter) * 2); margin-inline:auto;
  border-radius:var(--r-xl); overflow:hidden;
}
.hc__bg{ display:none; }
.hc__inner::before{
  content:""; position:absolute; inset:0; z-index:0;
  background:url("assets/foto/p-eksper.jpg") center/cover no-repeat;
}
.hc__inner::after{
  content:""; position:absolute; inset:0; z-index:1;
  background:linear-gradient(80deg, rgba(14,16,21,.88) 20%, rgba(14,16,21,.55) 60%, rgba(14,16,21,.35));
}
.hc__grid{
  position:relative; z-index:2;
  display:grid; grid-template-columns:1.1fr .9fr;
  gap:clamp(2.5rem, 5vw, 5rem); align-items:center;
  padding:clamp(2.5rem, 5.5vw, 5rem) clamp(1.8rem, 4vw, 4rem);
}
.hc h2{ color:#fff; font-size:var(--h2); max-width:22ch; }
.hc h2 em{ color:#FF6B64; }
.hc .eyebrow{ margin-bottom:1.1rem; }
.hc p{ margin-top:1.1rem; color:rgba(255,255,255,.85); max-width:54ch; }
.hc__cta{ display:flex; flex-wrap:wrap; gap:.9rem; margin-top:1.9rem; }

.hc__steps{ display:flex; flex-direction:column; gap:.7rem; }
.hc__steps li{
  display:flex; align-items:flex-start; gap:1rem;
  background:rgba(255,255,255,.07); border:1px solid var(--line-dark);
  border-radius:var(--r-md); padding:.95rem 1.2rem;
  backdrop-filter:blur(8px);
}
.hc__steps .n{
  flex:none; width:30px; height:30px; border-radius:50%;
  display:inline-flex; align-items:center; justify-content:center;
  background:var(--brand); color:#fff; font-size:.85rem; font-weight:800;
}
.hc__steps b{ display:block; color:#fff; font-size:.95rem; }
.hc__steps li > span:last-child span{ display:block; font-size:.85rem; color:rgba(255,255,255,.65); margin-top:.1rem; }

/* ---------- 14. BİLGİ MERKEZİ (bl) ---------- */
.bl__grid{ display:grid; grid-template-columns:repeat(3, 1fr); gap:clamp(1.2rem, 2.5vw, 2rem); }
.bl__card{
  display:flex; flex-direction:column;
  background:var(--paper); border:1px solid var(--line); border-radius:var(--r-lg);
  overflow:hidden; text-decoration:none;
  transition:box-shadow var(--t) var(--e-out), transform var(--t) var(--e-out), border-color var(--t) var(--e-out);
}
.bl__card:hover{ box-shadow:var(--shadow-lift); transform:translateY(-4px); border-color:transparent; }
.bl__media{ position:relative; display:block; aspect-ratio:16/10; overflow:hidden; }
.bl__media img{ width:100%; height:100%; object-fit:cover; transition:transform 600ms var(--e-out); }
.bl__card:hover .bl__media img{ transform:scale(1.05); }
.bl__chip{
  position:absolute; top:1rem; left:1rem;
  padding:.3rem .8rem; border-radius:var(--r-pill);
  background:rgba(255,255,255,.9); backdrop-filter:blur(6px);
  font-size:.8rem; font-weight:700; color:var(--ink);
}
.bl__body{ display:flex; flex-direction:column; gap:.55rem; padding:1.3rem 1.4rem 1.5rem; flex:1; }
.bl__meta{ font-size:.82rem; font-weight:600; color:var(--brand); letter-spacing:.02em; }
.bl__body h3{ font-size:1.15rem; line-height:1.3; }
.bl__body p{ color:var(--ink-soft); font-size:.92rem; }
.bl__more{
  display:inline-flex; align-items:center; gap:.45rem; margin-top:auto; padding-top:.7rem;
  font-size:.9rem; font-weight:700; color:var(--ink);
}
.bl__more svg{ width:16px; height:16px; transition:transform var(--t-fast) var(--e-out); }
.bl__card:hover .bl__more{ color:var(--brand); }
.bl__card:hover .bl__more svg{ transform:translateX(3px); }

/* ---------- 15. SSS (fq) ---------- */
.fq{ display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(2.5rem, 5vw, 5rem); align-items:start; }
.fq__side{ position:sticky; top:110px; }
.fq__side h2{ font-size:var(--h2); }
.fq__side .eyebrow{ margin-bottom:1.1rem; }
.fq__lead{ margin-top:1.1rem; color:var(--ink-soft); max-width:38ch; }
.fq__side .btn{ margin-top:1.8rem; }

.fq__item{ border-bottom:1px solid var(--line); }
.fq__item:first-child{ border-top:1px solid var(--line); }
.fq__q{
  width:100%; display:flex; align-items:center; justify-content:space-between; gap:1.5rem;
  padding:1.25rem 0; text-align:left;
  background:none; border:0; color:var(--ink);
  font-size:clamp(1rem, 1.4vw, 1.15rem); font-weight:700; letter-spacing:-.01em;
  transition:color var(--t-fast) var(--e-out);
}
.fq__q:hover{ color:var(--brand); }
.fq__ico{
  flex:none; width:34px; height:34px; border-radius:50%;
  display:inline-flex; align-items:center; justify-content:center;
  border:1.5px solid var(--line); color:var(--ink);
  transition:transform var(--t) var(--e-out), background var(--t) var(--e-out),
             color var(--t) var(--e-out), border-color var(--t) var(--e-out);
}
.fq__ico svg{ width:15px; height:15px; }
.fq__q[aria-expanded="true"] .fq__ico{
  transform:rotate(45deg); background:var(--brand); border-color:var(--brand); color:#fff;
}
.fq__a{ height:0; overflow:hidden; transition:height var(--t) var(--e-out); }
.fq__a p{ padding:0 3.4rem 1.4rem 0; color:var(--ink-soft); max-width:70ch; }

/* ---------- 16. FOOTER (ft) ---------- */
.ft{ background:var(--ink); color:rgba(255,255,255,.72); margin-top:clamp(3rem, 6vw, 5rem); }
.ft__mark{ padding-top:clamp(2.5rem, 5vw, 4rem); color:rgba(255,255,255,.05); }
.ft__mark svg{ width:100%; height:auto; display:block; }

.ft__main{
  display:grid; grid-template-columns:1.4fr 1fr 1fr 1.2fr;
  gap:clamp(2rem, 4vw, 3.5rem);
  padding-block:clamp(2.5rem, 5vw, 4rem);
}
.ft__brand img{ width:110px; height:auto; margin-bottom:1.2rem; }
.ft__brand p{ font-size:.92rem; max-width:34ch; }
.ft__badges{ display:flex; flex-direction:column; gap:.55rem; margin-top:1.4rem; }
.ft__badges li{ display:flex; align-items:center; gap:.55rem; font-size:.85rem; }
.ft__badges svg{ width:16px; height:16px; color:#FF6B64; flex:none; }

.ft__col h4{
  color:#fff; font-size:.95rem; letter-spacing:.02em; margin-bottom:1.1rem;
}
.ft__col ul{ display:flex; flex-direction:column; gap:.55rem; }
.ft__col a{
  font-size:.92rem; text-decoration:none; color:rgba(255,255,255,.72);
  transition:color var(--t-fast) var(--e-out);
}
.ft__col a:hover{ color:#fff; }
.ft__contact li{ display:flex; gap:.7rem; align-items:flex-start; }
.ft__contact svg{ width:17px; height:17px; margin-top:.2rem; color:#FF6B64; flex:none; }
.ft__contact b{ display:block; color:#fff; font-size:.93rem; }
.ft__contact li > span span{ display:block; font-size:.8rem; color:rgba(255,255,255,.5); }

.ft__news{
  display:flex; align-items:center; justify-content:space-between; gap:2rem; flex-wrap:wrap;
  padding-block:clamp(1.6rem, 3vw, 2.2rem);
  border-block:1px solid var(--line-dark);
}
.ft__news h4{ color:#fff; font-size:1.05rem; }
.ft__news p{ font-size:.88rem; margin-top:.3rem; }
.ft__form{ display:flex; gap:.7rem; flex-wrap:wrap; }
.ft__form input{
  min-width:min(280px, 100%); padding:.85rem 1.1rem;
  background:rgba(255,255,255,.07); color:#fff;
  border:1.5px solid var(--line-dark); border-radius:var(--r-pill);
  font:inherit; font-size:.93rem;
}
.ft__form input::placeholder{ color:rgba(255,255,255,.45); }
.ft__form input:focus{ outline:none; border-color:rgba(255,255,255,.5); }

.ft__bar{
  display:flex; align-items:center; justify-content:space-between; gap:1.5rem; flex-wrap:wrap;
  padding-block:1.6rem 2rem; font-size:.83rem;
}
.ft__legal{ display:flex; gap:1.4rem; flex-wrap:wrap; }
.ft__legal a{ color:rgba(255,255,255,.6); text-decoration:none; }
.ft__legal a:hover{ color:#fff; }
.ft__social{ display:flex; gap:.7rem; }
.ft__social a{
  width:38px; height:38px; border-radius:50%;
  display:inline-flex; align-items:center; justify-content:center;
  border:1px solid var(--line-dark); color:rgba(255,255,255,.75);
  transition:background var(--t-fast) var(--e-out), color var(--t-fast) var(--e-out), border-color var(--t-fast) var(--e-out);
}
.ft__social a:hover{ background:#fff; color:var(--ink); border-color:#fff; }
.ft__social svg{ width:17px; height:17px; }

/* ---------- 17. YÜZEN ELEMANLAR ---------- */
.wafab{
  position:fixed; right:clamp(1rem, 3vw, 2rem); bottom:clamp(1rem, 3vw, 2rem); z-index:90;
  width:54px; height:54px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  background:var(--wa); color:#fff;
  box-shadow:0 6px 20px -6px rgba(31,175,84,.55);
  transition:transform var(--t-fast) var(--e-out), box-shadow var(--t-fast) var(--e-out);
}
.wafab:hover{ transform:translateY(-3px); box-shadow:0 10px 26px -6px rgba(31,175,84,.6); }
.wafab svg{ width:26px; height:26px; }

.totop{
  position:fixed; right:clamp(1rem, 3vw, 2rem); bottom:calc(clamp(1rem, 3vw, 2rem) + 54px + .8rem);
  z-index:90;
  width:46px; height:46px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  background:var(--paper); color:var(--ink); border:1.5px solid var(--line);
  box-shadow:var(--shadow-card);
  opacity:0; visibility:hidden; transform:translateY(8px);
  transition:opacity var(--t) var(--e-out), transform var(--t) var(--e-out),
             visibility 0s var(--t), background var(--t-fast) var(--e-out), color var(--t-fast) var(--e-out);
}
.totop.is-on{ opacity:1; visibility:visible; transform:none; transition-delay:0s; }
.totop:hover{ background:var(--ink); color:#fff; border-color:var(--ink); }
.totop svg{ width:18px; height:18px; }

/* ---------- 18. REVEAL ---------- */
[data-reveal]{
  opacity:0; transform:translateY(22px);
  transition:opacity 640ms var(--e-out) var(--d, 0ms), transform 640ms var(--e-out) var(--d, 0ms);
}
[data-reveal].is-in{ opacity:1; transform:none; }

@media (prefers-reduced-motion: reduce){
  html{ scroll-behavior:auto; }
  [data-reveal]{ opacity:1; transform:none; transition:none; }
  .mq__row{ animation:none; }
  .hero-swiper .swiper-slide-active .hero__media img{ animation:none; }
  *,*::before,*::after{ transition-duration:.01ms !important; animation-duration:.01ms !important; }
}

/* ---------- 19. RESPONSIVE ---------- */
@media (max-width: 1280px){
  .nav a{ padding-inline:.55rem; font-size:.88rem; }
  .hdr__tel{ display:none; }
}

@media (max-width: 1024px){
  .nav{ display:none; }
  .burger{ display:block; }
  .hdr__tel{ display:none; }

  .services__grid{ grid-template-columns:1fr; align-items:start; }
  .qbar__grid{ grid-template-columns:1fr; }
  .sg__grid, .kr__grid, .hc__grid{ grid-template-columns:1fr; }
  .nd{ grid-template-columns:1fr; }
  .nd__media{ position:static; max-width:560px; }
  .fq{ grid-template-columns:1fr; }
  .fq__side{ position:static; }
  .kr__list{ grid-template-columns:repeat(2, 1fr); }
  .pr__steps{ grid-template-columns:repeat(2, 1fr); gap:2.5rem 1.5rem; }
  .pr__line{ display:none; }
  .bl__grid{ grid-template-columns:1fr 1fr; }
  .ft__main{ grid-template-columns:1fr 1fr; }
}

/* dokunmatikte footer bağlantıları 44px hedefe ulaşsın */
@media (max-width: 1024px){
  .ft__col ul{ gap:0; }
  .ft__col ul a{ display:inline-flex; align-items:center; min-height:44px; }
  .ft__legal a{ display:inline-flex; align-items:center; min-height:44px; }
  .ft__legal{ gap:.4rem 1.4rem; }
  .ft__social a{ width:44px; height:44px; }
}

@media (max-width: 640px){
  .hdr__actions .btn{ padding:.8rem 1.2rem; font-size:.9rem; }
  .hero{ padding-inline:.75rem; }
  .hero__card{ min-height:min(92vh, 720px); }
  .hero__copy{ left:1.4rem; right:1.4rem; bottom:9rem; }
  .hero__cta .btn{ width:100%; }
  .hero__ctrl{ left:1.4rem; right:1.4rem; bottom:4.4rem; }
  .hero__prog{ display:none; }

  .qbar__fields{ grid-template-columns:1fr; }
  .qbar__submit{ width:100%; }
  .qbar__note{ margin-left:0; }

  .kr{ padding-inline:.75rem; }
  .kr__list{ grid-template-columns:1fr 1fr; }
  .hc{ padding-inline:.75rem; }
  .pr__steps{ grid-template-columns:1fr; gap:2rem; }
  .bl__grid{ grid-template-columns:1fr; }
  .nd__stats{ grid-template-columns:repeat(2, 1fr); gap:1.5rem 1rem; }
  .ft__main{ grid-template-columns:1fr; }
  .ft__bar{ justify-content:center; text-align:center; }
}
