@font-face{font-family:'Albert Sans';font-style:normal;font-weight:300 700;font-display:swap;src:url(/assets/fonts/albert-sans-normal-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Albert Sans';font-style:normal;font-weight:300 700;font-display:swap;src:url(/assets/fonts/albert-sans-normal-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Bodoni Moda';font-style:italic;font-weight:400 800;font-display:swap;src:url(/assets/fonts/bodoni-moda-italic-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Bodoni Moda';font-style:italic;font-weight:400 800;font-display:swap;src:url(/assets/fonts/bodoni-moda-italic-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Bodoni Moda';font-style:normal;font-weight:400 800;font-display:swap;src:url(/assets/fonts/bodoni-moda-normal-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Bodoni Moda';font-style:normal;font-weight:400 800;font-display:swap;src:url(/assets/fonts/bodoni-moda-normal-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
/* ==========================================================================
   Nişantaşı Hastanesi — tasarım sistemi (v2)
   Palet: logodaki lacivert, buz mavisi zeminler ve turkuaz vurgular.
   Tipografi: Albert Sans (tek aile, 400–700).
   Biçim dili: yuvarlak köşeli büyük kartlar, görsel üstü başlıklar, hap düğmeler.
   ========================================================================== */

@layer reset, base, layout, components, pages, motion;

@view-transition { navigation: auto; }

@layer reset {
  *, *::before, *::after { box-sizing: border-box; }
  html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; interpolate-size: allow-keywords; }
  body, h1, h2, h3, h4, p, figure, blockquote, dl, dd, ul, ol { margin: 0; }
  ul[class], ol[class], nav ul, nav ol, .vm__vals ul, .branches ul { list-style: none; padding: 0; }
  img, svg, video { display: block; max-width: 100%; }
  img { height: auto; }
  input, button, textarea, select { font: inherit; color: inherit; }
  button { cursor: pointer; background: none; border: 0; padding: 0; }
  a { color: inherit; }
  [hidden] { display: none !important; }
}

@layer base {
  :root {
    --navy: #102A56; --navy-2: #1A3B73; --navy-deep: #0A1C3D; --logo: #19263E;
    --blue: #1A82A6; --blue-2: #136B8B; --cyan: #29B1DA; --cyan-soft: #E0F3FA;
    --ice: #EDF8FC; --ice-2: #D8EFF8;
    --gray: #F4F6F9; --gray-2: #EAEEF3; --line: #E1E7EF; --line-2: #CBD5E1;
    --text: #172036; --mute: #5D6B80; --mute-2: #8D99AB;
    --red: #D12B3E; --wa: #25D366;
    --c0: #3D6FC0; --c1: #29B1DA; --c2: #E35D6F; --c3: #4DB591;
    --f: 'Albert Sans', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
    --wrap: 1320px; --gut: clamp(16px, 4vw, 40px);
    --r-sm: 0; --r: 0; --r-lg: 0; --r-xl: 0;
    --sec: clamp(56px, 7vw, 104px);
    --hdr-h: 64px;
    --ease: cubic-bezier(.2, .7, .2, 1);
    --ease-out: cubic-bezier(.16, 1, .3, 1);
    --spring: linear(0, .009, .035 2.1%, .141, .281 6.7%, .723 12.9%, .938 16.7%, 1.017, 1.077, 1.121, 1.149 24.3%, 1.159, 1.163, 1.161, 1.154 29.9%, 1.129 32.8%, 1.051 39.6%, 1.017 43.1%, .991, .977 51%, .974 53.8%, .975 57.1%, .997 69.8%, 1.003 76.9%, 1.004 83.8%, 1);
    --sh-1: 0 1px 2px rgba(16, 42, 86, .05), 0 8px 24px -10px rgba(16, 42, 86, .14);
    --sh-2: 0 2px 6px rgba(16, 42, 86, .06), 0 24px 48px -18px rgba(16, 42, 86, .30);
    --fs-h1: clamp(1.95rem, 1.3rem + 2.3vw, 3.1rem);
    --fs-h2: clamp(1.55rem, 1.2rem + 1.3vw, 2.25rem);
    --fs-h3: clamp(1.25rem, 1.1rem + .6vw, 1.6rem);
    color-scheme: light;
    accent-color: var(--blue);
  }
  @media (min-width: 1180px) { :root { --hdr-h: 76px; } }

  html { scroll-behavior: smooth; scroll-padding-top: calc(var(--hdr-h) + 64px); }
  body {
    background: #fff; color: var(--text);
    font: 400 1rem/1.65 var(--f);
    -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility; overflow-x: clip;
  }
  ::selection { background: var(--ice-2); color: var(--navy); }
  :focus-visible { outline: 2px solid var(--cyan); outline-offset: 3px; border-radius: 0; }
  h1, h2, h3, h4 { font-weight: 700; line-height: 1.15; letter-spacing: -.018em; color: var(--navy); text-wrap: balance; }
  p, li { text-wrap: pretty; }
  em { font-style: normal; }
  small { font-size: .82em; }
  address { font-style: normal; }
  .sr-only { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .skip { position: fixed; left: 12px; top: -60px; z-index: 100; background: var(--navy); color: #fff; padding: 10px 16px; border-radius: 0; text-decoration: none; transition: top .2s; }
  .skip:focus { top: 12px; }
  main:focus { outline: none; }
}

/* ========================================================================== */
@layer layout {
  .wrap { width: min(var(--wrap), 100% - var(--gut) * 2); margin-inline: auto; }
  .sec { padding-block: var(--sec); position: relative; }
  .sec--flush { padding-top: clamp(28px, 4vw, 48px); }
  .sec--gray { background: var(--gray); }
  .sec--ice { background: var(--ice); }
  .sec--navy {
    color: #DCE6F3;
    background: radial-gradient(circle at 88% 12%, rgba(41, 177, 218, .28), transparent 46%), linear-gradient(135deg, var(--navy-deep), #12306A 70%, #164B84);
  }
  .sec--navy h2, .sec--navy h3 { color: #fff; }
  .sec__head { margin-bottom: clamp(24px, 3vw, 36px); max-width: 820px; }
  .sec__head--row { display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: 16px 32px; max-width: none; }
  .split { display: grid; gap: clamp(28px, 4vw, 64px); align-items: start; }
  @media (min-width: 1024px) {
    .split { grid-template-columns: 5fr 6fr; }
    .split--form { grid-template-columns: 7fr 5fr; }
    .split--top { grid-template-columns: 1fr 1fr; }
  }
  .split--top { margin-top: 48px; }

  .eyebrow { display: inline-flex; align-items: center; gap: 10px; margin-bottom: 12px; font: 700 .74rem/1.3 var(--f); letter-spacing: .12em; text-transform: uppercase; color: var(--blue); }
  .eyebrow::before { content: ''; width: 8px; height: 8px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 0 4px var(--cyan-soft); }
  .eyebrow--light { color: #8FD8F0; }
  .eyebrow--light::before { box-shadow: 0 0 0 4px rgba(41, 177, 218, .2); }
  .h2 { font-size: var(--fs-h2); }
  .h3 { font-size: var(--fs-h3); }
  .h2 em, .h3 em, .phero__title em, .cta-band__title em { color: var(--blue); }
  .sec--navy .h2 em { color: var(--cyan); }
  .lead { margin-top: 14px; max-width: 62ch; font-size: clamp(1.02rem, .98rem + .25vw, 1.14rem); color: var(--mute); }
  .sec--navy .lead { color: #B5C6DC; }
}

/* ========================================================================== */
@layer components {
  .ico { width: 1.25em; height: 1.25em; flex: none; }

  /* ---- Düğmeler ---- */
  .btn {
    --b: var(--navy); --c: #fff; --bd: var(--b);
    display: inline-flex; align-items: center; justify-content: center; gap: 9px;
    min-height: 50px; padding: 0 22px; border-radius: 0; border: 1px solid var(--bd);
    background: var(--b); color: var(--c); font: 600 .95rem/1 var(--f); text-decoration: none; white-space: nowrap;
    transition: background .2s, color .2s, border-color .2s, box-shadow .25s, transform .4s var(--spring);
    -webkit-tap-highlight-color: transparent;
  }
  .btn .ico { width: 18px; height: 18px; transition: transform .3s var(--ease-out); }
  .btn:hover > .ico:last-child:not(:first-child) { transform: translateX(3px); }
  .btn:active { transform: scale(.97); }
  .btn--navy:hover { --b: var(--navy-2); box-shadow: 0 10px 22px -10px rgba(16, 42, 86, .6); }
  .btn--blue { --b: var(--blue); }
  .btn--blue:hover { --b: var(--blue-2); box-shadow: 0 10px 22px -10px rgba(26, 130, 166, .7); }
  .btn--white { --b: #fff; --c: var(--navy); }
  .btn--white:hover { --b: var(--ice); }
  .btn--ghost { --b: transparent; --c: var(--navy); --bd: var(--line-2); }
  .btn--ghost:hover { --bd: var(--navy); --b: #fff; }
  .btn--glass { --b: rgba(255, 255, 255, .12); --c: #fff; --bd: rgba(255, 255, 255, .35); backdrop-filter: blur(8px); }
  .btn--glass:hover { --b: rgba(255, 255, 255, .22); }
  .btn--line-light { --b: transparent; --c: #fff; --bd: rgba(255, 255, 255, .35); }
  .btn--line-light:hover { --bd: #fff; --b: rgba(255, 255, 255, .08); }
  .btn--sm { min-height: 42px; padding: 0 16px; font-size: .88rem; }
  .btn--block { width: 100%; }

  .icon-btn {
    width: 44px; height: 44px; border-radius: 0; display: inline-grid; place-items: center; flex: none;
    border: 1px solid var(--line); background: #fff; color: var(--navy); text-decoration: none; transition: border-color .2s, background .2s;
  }
  .icon-btn:hover { border-color: var(--navy); }
  .icon-btn .ico { width: 20px; height: 20px; }
  .sq-btn { width: 44px; height: 44px; border-radius: 0; display: inline-grid; place-items: center; background: var(--cyan); color: #fff; transition: background .2s, transform .3s var(--spring); text-decoration: none; }
  .sq-btn:hover { background: var(--blue); }
  .sq-btn .ico { width: 20px; height: 20px; }
  .lang-btn { height: 44px; padding: 0 14px; border-radius: 0; display: inline-grid; place-items: center; background: var(--navy); color: #fff; font: 700 .8rem/1 var(--f); letter-spacing: .06em; text-decoration: none; }
  .lang-btn:hover { background: var(--navy-2); }
  .pill { display: inline-flex; align-items: center; justify-content: center; gap: 8px; height: 46px; min-width: 64px; padding: 0 22px; border-radius: 0; font: 600 .9rem/1 var(--f); text-decoration: none; transition: background .2s, transform .3s var(--spring); }
  .pill .ico { width: 20px; height: 20px; }
  .pill--navy { background: var(--navy); color: #fff; }
  .pill--navy:hover { background: var(--navy-2); }
  .pill--blue { background: var(--blue); color: #fff; padding: 0 20px; }
  .pill--blue:hover { background: var(--blue-2); }
  .pill:active { transform: scale(.95); }
  .mini { display: inline-flex; align-items: center; gap: 6px; height: 36px; padding: 0 12px; border-radius: 0; border: 1px solid var(--line); font: 600 .8rem/1 var(--f); color: var(--navy); text-decoration: none; background: #fff; transition: all .2s; }
  .mini .ico { width: 15px; height: 15px; }
  .mini:hover { border-color: var(--navy); }
  .mini--blue { color: var(--blue); border-color: var(--ice-2); background: var(--ice); }
  .mini--blue:hover { background: var(--blue); color: #fff; border-color: var(--blue); }

  /* ---- Çipler ve sekmeler ---- */
  .chips { display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; padding-bottom: 4px; margin-bottom: 24px; }
  .chips::-webkit-scrollbar { display: none; }
  @media (min-width: 1024px) { .chips { flex-wrap: wrap; } }
  .chip {
    flex: none; display: inline-flex; align-items: center; gap: 8px; height: 42px; padding: 0 18px; border-radius: 0;
    border: 1px solid var(--line-2); background: #fff; font: 600 .88rem/1 var(--f); color: var(--navy); text-decoration: none; transition: all .2s;
  }
  .chip span { font-size: .74rem; color: var(--mute-2); font-variant-numeric: tabular-nums; }
  .chip:hover { border-color: var(--navy); }
  .chip[aria-pressed='true'] { background: var(--navy); border-color: var(--navy); color: #fff; }
  .chip[aria-pressed='true'] span { color: #8FD8F0; }
  .tabs { display: inline-flex; padding: 5px; border-radius: 0; background: var(--gray); border: 1px solid var(--line); }
  .tab { height: 40px; padding: 0 20px; border-radius: 0; font: 600 .9rem/1 var(--f); color: var(--mute); transition: all .25s; }
  .tab[aria-selected='true'] { background: var(--navy); color: #fff; box-shadow: var(--sh-1); }

  /* ---- Görsel çerçeveleri ---- */
  .media, .stele, .arch { position: relative; overflow: hidden; isolation: isolate; margin: 0; border-radius: 0; background: var(--gray-2); }
  .media img, .stele img, .arch img { width: 100%; height: 100%; object-fit: cover; }
  .media__cap { position: absolute; left: 14px; bottom: 14px; z-index: 2; padding: 6px 12px; border-radius: 0; background: rgba(10, 28, 61, .65); color: #fff; font: 600 .75rem/1 var(--f); backdrop-filter: blur(6px); }
  [data-parallax] { overflow: hidden; }
  [data-parallax] img { transform: translate3d(0, var(--py, 0px), 0) scale(1.14); will-change: transform; }

  /* ---- Breadcrumb ---- */
  .crumbs ol { display: flex; flex-wrap: wrap; gap: 4px 0; font-size: .82rem; color: var(--mute); margin-bottom: 14px; }
  .crumbs li + li::before { content: '/'; margin: 0 9px; color: var(--line-2); }
  .crumbs a { text-decoration: none; }
  .crumbs a:hover { color: var(--blue); }
  .crumbs [aria-current] { color: var(--navy); font-weight: 600; max-width: 30ch; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

  /* ---- Ray (yatay kaydırma) ---- */
  .rail { position: relative; }
  .rail__track {
    display: grid; grid-auto-flow: column; grid-auto-columns: 80%; gap: 18px;
    overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scrollbar-width: none;
    margin-inline: calc(var(--gut) * -1); padding: 4px var(--gut) 16px; scroll-padding-inline: var(--gut);
  }
  .rail__track::-webkit-scrollbar { display: none; }
  .rail__track > * { scroll-snap-align: start; }
  @media (min-width: 640px) { .rail__track { grid-auto-columns: 46%; } }
  @media (min-width: 1024px) { .rail__track { grid-auto-columns: calc((100% - 3 * 20px) / 4); gap: 20px; margin-inline: 0; padding-inline: 0; } }
  @media (min-width: 1024px) { .rail--3 .rail__track { grid-auto-columns: calc((100% - 2 * 20px) / 3); } }
  .rail--docs .rail__track { grid-auto-columns: 70%; }
  @media (min-width: 640px) { .rail--docs .rail__track { grid-auto-columns: 40%; } }
  @media (min-width: 1024px) { .rail--docs .rail__track { grid-auto-columns: calc((100% - 3 * 20px) / 4); } }
  .rail--3 .ucard { height: clamp(240px, 26vw, 330px); }
  .rail__ctrl { display: flex; justify-content: flex-end; gap: 10px; margin-top: 18px; }

  /* ---- Görsel üstü yazılı kart ---- */
  .ucard { position: relative; display: block; height: 100%; min-height: 220px; border-radius: 0; overflow: hidden; isolation: isolate; text-decoration: none; color: #fff; background: var(--navy); }
  .ucard__img { position: absolute; inset: 0; z-index: -1; }
  .ucard__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .9s var(--ease-out); }
  .ucard::after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(10, 28, 61, 0) 35%, rgba(10, 28, 61, .82) 100%); transition: background .3s; }
  .ucard:hover .ucard__img img { transform: scale(1.06); }
  .ucard:hover::after { background: linear-gradient(180deg, rgba(10, 28, 61, .1) 20%, rgba(10, 28, 61, .9) 100%); }
  .ucard__body { position: absolute; left: 0; right: 0; bottom: 0; display: grid; justify-items: start; gap: 10px; padding: 22px; }
  .ucard__tag { padding: 5px 11px; border-radius: 0; background: rgba(41, 177, 218, .9); font: 700 .7rem/1 var(--f); letter-spacing: .04em; }
  .ucard__title { font: 700 clamp(1.1rem, 1rem + .45vw, 1.35rem)/1.2 var(--f); text-wrap: balance; }
  .ucard__more { display: inline-flex; align-items: center; gap: 4px; height: 32px; padding: 0 12px; border-radius: 0; border: 1px solid rgba(255, 255, 255, .6); font: 600 .76rem/1 var(--f); transition: background .2s, color .2s; }
  .ucard__more .ico { width: 14px; height: 14px; }
  .ucard:hover .ucard__more { background: #fff; color: var(--navy); }
  .bento { display: grid; gap: 18px; grid-template-columns: 1fr; }
  .bento__i { height: 240px; }
  @media (min-width: 640px) { .bento { grid-template-columns: repeat(2, 1fr); } .bento__i--0 { grid-column: span 2; } }
  @media (min-width: 1024px) {
    .bento { grid-template-columns: repeat(6, 1fr); }
    .bento__i { height: 300px; grid-column: span 2; }
    .bento__i--0 { grid-column: span 2; }
    .bento__i--3, .bento__i--4 { grid-column: span 3; height: 280px; }
  }

  /* ---- Tedavi kartı ---- */
  .tcard { display: grid; gap: 14px; align-content: start; text-decoration: none; color: inherit; }
  .tcard__img { position: relative; display: block; aspect-ratio: 4 / 3; border-radius: 0; overflow: hidden; background: var(--gray-2); }
  .tcard__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .9s var(--ease-out); }
  .tcard__go { position: absolute; right: 14px; bottom: 14px; width: 46px; height: 46px; border-radius: 0; display: grid; place-items: center; background: var(--blue); color: #fff; box-shadow: 0 8px 20px -8px rgba(26, 130, 166, .8); transition: transform .45s var(--spring), background .2s; }
  .tcard__go .ico { width: 20px; height: 20px; }
  .tcard:hover .tcard__img img { transform: scale(1.06); }
  .tcard:hover .tcard__go { transform: translateX(4px); background: var(--navy); }
  .tcard__body { display: grid; gap: 4px; padding-inline: 4px; }
  .tcard__cat { font: 700 .7rem/1.2 var(--f); letter-spacing: .1em; text-transform: uppercase; color: var(--blue); }
  .tcard__name { font: 700 1.14rem/1.25 var(--f); color: var(--navy); }
  .tcard__ex { font-size: .9rem; color: var(--mute); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
  .tgrid { display: grid; gap: 34px 20px; grid-template-columns: 1fr; }
  @media (min-width: 640px) { .tgrid { grid-template-columns: repeat(2, 1fr); } }
  @media (min-width: 1024px) { .tgrid { grid-template-columns: repeat(4, 1fr); } }
  .tgrid > .is-hidden, .dgrid > .is-hidden, .pkgs > .is-hidden, .posts > .is-hidden { display: none; }
  .more-cats { margin-top: 40px; color: var(--mute); }
  .more-cats a { color: var(--blue); font-weight: 600; }

  /* ---- Doktor kartı ---- */
  .dcard { display: grid; grid-template-rows: auto 1fr auto; border-radius: 0; border: 1px solid var(--line); background: #fff; overflow: hidden; transition: box-shadow .3s, transform .45s var(--spring), border-color .3s; }
  .dcard:hover { box-shadow: var(--sh-2); transform: translateY(-4px); border-color: transparent; }
  .dcard__img { display: block; aspect-ratio: 4 / 4.3; background: linear-gradient(180deg, #E5F3FA, #F6FAFC); overflow: hidden; }
  .dcard__img img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 12%; transition: transform .9s var(--ease-out); }
  .dcard:hover .dcard__img img { transform: scale(1.04); }
  .dcard__body { padding: 16px 16px 10px; text-align: center; }
  .dcard__name { font-size: 1.04rem; line-height: 1.3; }
  .dcard__name a { text-decoration: none; }
  .dcard__name a:hover { color: var(--blue); }
  .dcard__title { margin-top: 4px; font-size: .84rem; color: var(--mute); line-height: 1.4; }
  .dcard__btns { display: flex; justify-content: center; flex-wrap: wrap; gap: 8px; padding: 6px 14px 18px; }
  .dgrid { display: grid; gap: 20px; grid-template-columns: repeat(2, 1fr); }
  @media (min-width: 768px) { .dgrid { grid-template-columns: repeat(3, 1fr); } }
  @media (min-width: 1024px) { .dgrid { grid-template-columns: repeat(4, 1fr); } }
  @media (max-width: 479px) { .dgrid { gap: 12px; } .dcard__btns .mini { padding: 0 9px; } }
  .doc-mini { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }

  /* ---- Bölüm kartı ---- */
  .depgrid { display: grid; gap: 20px; grid-template-columns: 1fr; }
  @media (min-width: 640px) { .depgrid { grid-template-columns: repeat(2, 1fr); } }
  @media (min-width: 1024px) { .depgrid { grid-template-columns: repeat(3, 1fr); } }
  .depcard { position: relative; display: grid; grid-template-rows: auto 1fr; border-radius: 0; border: 1px solid var(--line); background: #fff; overflow: hidden; text-decoration: none; color: inherit; transition: box-shadow .3s, transform .45s var(--spring), border-color .3s; }
  .depcard:hover { box-shadow: var(--sh-2); transform: translateY(-4px); border-color: transparent; }
  .depcard__img { display: block; aspect-ratio: 16 / 8.5; overflow: hidden; background: var(--gray-2); }
  .depcard__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .9s var(--ease-out); }
  .depcard:hover .depcard__img img { transform: scale(1.05); }
  .depcard__ico { position: relative; z-index: 1; width: 52px; height: 52px; margin: -26px 0 0 20px; border-radius: 0; display: grid; place-items: center; background: #fff; color: var(--blue); box-shadow: var(--sh-1); }
  .depcard { grid-template-rows: auto auto 1fr; }
  .depcard__ico .ico { width: 24px; height: 24px; }
  .depcard__body { display: grid; gap: 6px; align-content: start; padding: 12px 20px 22px; padding-right: 64px; }
  .depcard__name { font: 700 1.12rem/1.25 var(--f); color: var(--navy); }
  .depcard__ex { font-size: .88rem; color: var(--mute); }
  .depcard__go { position: absolute; right: 18px; bottom: 20px; width: 40px; height: 40px; border-radius: 0; display: grid; place-items: center; background: var(--ice); color: var(--blue); transition: all .3s; }
  .depcard__go .ico { width: 18px; height: 18px; }
  .depcard:hover .depcard__go { background: var(--blue); color: #fff; }
  .depcard--feat { background: var(--navy); color: #fff; border-color: var(--navy); grid-template-rows: auto; align-content: start; padding: 24px 64px 24px 24px; gap: 8px; }
  .depcard--feat .depcard__ico { position: static; margin: 0 0 6px; background: rgba(255, 255, 255, .1); color: var(--cyan); box-shadow: none; }
  .depcard--feat .depcard__name { color: #fff; }
  .depcard--feat .depcard__ex { color: #B5C6DC; }
  .depcard--feat .depcard__go { background: rgba(255, 255, 255, .1); color: #fff; }
  .branches { margin-top: 48px; padding: 24px; border-radius: 0; background: var(--gray); }
  .branches__h { font: 700 .76rem/1 var(--f); letter-spacing: .1em; text-transform: uppercase; color: var(--blue); margin-bottom: 14px; }
  .branches ul { display: flex; flex-wrap: wrap; gap: 8px; }
  .branches li { padding: 8px 14px; border-radius: 0; background: #fff; border: 1px solid var(--line); font-size: .88rem; font-weight: 500; }

  /* ---- Sağlık rehberi kartı ---- */
  .posts { display: grid; gap: 32px 20px; }
  @media (min-width: 768px) { .posts--3, .posts--grid { grid-template-columns: repeat(3, 1fr); } .posts--2 { grid-template-columns: repeat(2, 1fr); } }
  .pcard { display: grid; gap: 10px; align-content: start; text-decoration: none; color: inherit; }
  .pcard__img { position: relative; display: block; aspect-ratio: 16 / 10; border-radius: 0; overflow: hidden; background: var(--gray-2); }
  .pcard__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .9s var(--ease-out); }
  .pcard__go { position: absolute; right: 14px; bottom: 14px; width: 46px; height: 46px; border-radius: 0; display: grid; place-items: center; background: var(--blue); color: #fff; transition: transform .45s var(--spring); }
  .pcard__go .ico { width: 20px; height: 20px; }
  .pcard:hover .pcard__img img { transform: scale(1.05); }
  .pcard:hover .pcard__go { transform: translateX(4px); }
  .pcard__meta { display: flex; gap: 12px; font-size: .78rem; color: var(--mute); }
  .pcard__meta span { color: var(--blue); font-weight: 700; text-transform: uppercase; letter-spacing: .08em; font-size: .7rem; }
  .pcard__title { font: 700 1.1rem/1.3 var(--f); color: var(--navy); }
  .pcard:hover .pcard__title { color: var(--blue); }
  @media (min-width: 768px) { .pcard--big { grid-column: span 2; grid-row: span 2; } .pcard--big .pcard__title { font-size: 1.6rem; } }

  /* ---- Check-up paket kartı ---- */
  .pkgs { display: grid; gap: 12px; }
  .pkgs--grid { grid-template-columns: 1fr; }
  @media (min-width: 768px) { .pkgs--grid { grid-template-columns: repeat(2, 1fr); } }
  @media (min-width: 1180px) { .pkgs--grid { grid-template-columns: repeat(3, 1fr); } }
  .pkg { display: grid; gap: 12px; padding: 20px; border-radius: 0; background: #fff; border: 1px solid var(--line); text-decoration: none; color: inherit; transition: box-shadow .3s, transform .45s var(--spring), border-color .3s; }
  .pkg:hover { box-shadow: var(--sh-2); transform: translateY(-3px); border-color: transparent; }
  .pkg__top { display: flex; justify-content: space-between; gap: 16px; align-items: baseline; }
  .pkg__name { font: 700 1.02rem/1.3 var(--f); color: var(--navy); }
  .pkg__total { flex: none; font-size: .8rem; color: var(--mute); }
  .pkg__total strong { font: 700 1.4rem/1 var(--f); color: var(--navy); font-variant-numeric: tabular-nums; }
  .pkg__legend { display: flex; flex-wrap: wrap; gap: 6px 14px; font-size: .78rem; color: var(--mute); }
  .pkg__legend span { display: inline-flex; align-items: center; gap: 6px; }
  .pkg__go { display: inline-flex; gap: 6px; align-items: center; font-size: .85rem; font-weight: 700; color: var(--blue); }
  .pkg__go .ico { width: 16px; height: 16px; transition: transform .3s; }
  .pkg:hover .pkg__go .ico { transform: translateX(4px); }
  .sec--navy .pkg { background: rgba(255, 255, 255, .06); border-color: rgba(255, 255, 255, .12); color: #fff; backdrop-filter: blur(6px); }
  .sec--navy .pkg__name, .sec--navy .pkg__total strong { color: #fff; }
  .sec--navy .pkg__total, .sec--navy .pkg__legend { color: #A9BBD3; }
  .sec--navy .pkg__go { color: var(--cyan); }
  .sec--navy .pkg:hover { background: rgba(255, 255, 255, .1); }
  .bar { display: flex; height: 10px; border-radius: 0; background: var(--gray-2); overflow: hidden; gap: 2px; }
  .sec--navy .bar { background: rgba(255, 255, 255, .1); }
  .bar__seg { width: var(--w); height: 100%; transform-origin: left; }
  .bar__seg--0, .dot--0 { background: var(--c0); }
  .bar__seg--1, .dot--1 { background: var(--c1); }
  .bar__seg--2, .dot--2 { background: var(--c2); }
  .bar__seg--3, .dot--3 { background: var(--c3); }
  .dot { width: 8px; height: 8px; border-radius: 50%; display: inline-block; flex: none; }
  .legend { display: flex; flex-wrap: wrap; gap: 6px 16px; font-size: .8rem; color: var(--mute); margin-bottom: 14px; }
  .legend span { display: inline-flex; gap: 6px; align-items: center; }
  .sec--navy .legend { color: #A9BBD3; }

  /* ---- Adımlar ---- */
  .steps { display: grid; gap: 0; }
  .steps li { display: grid; grid-template-columns: 44px 1fr; gap: 14px; padding: 16px 0; border-top: 1px solid var(--line); }
  .steps__n { width: 38px; height: 38px; border-radius: 0; display: grid; place-items: center; font: 700 1rem/1 var(--f); background: var(--ice); color: var(--blue); }
  .steps strong { display: block; font-weight: 700; color: var(--navy); margin-bottom: 2px; }
  .steps span:not(.steps__n) { color: var(--mute); font-size: .93rem; }
  .steps--light li { border-color: rgba(255, 255, 255, .14); }
  .steps--light .steps__n { background: rgba(41, 177, 218, .18); color: #8FD8F0; }
  .steps--light strong { color: #fff; }
  .steps--light span:not(.steps__n) { color: #A9BBD3; }
  @media (min-width: 1024px) { .steps--row { grid-template-columns: repeat(3, 1fr); gap: 0 32px; } }

  /* ---- SSS ---- */
  .faq { display: grid; gap: 10px; }
  .faq__item { border-radius: 0; background: #fff; border: 1px solid var(--line); transition: border-color .2s, box-shadow .3s; }
  .faq__item[open] { border-color: var(--ice-2); box-shadow: var(--sh-1); }
  .faq__item summary { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 18px 20px; cursor: pointer; list-style: none; font: 700 1.02rem/1.35 var(--f); color: var(--navy); }
  .faq__item summary::-webkit-details-marker { display: none; }
  .faq__ico { width: 34px; height: 34px; padding: 8px; border-radius: 0; background: var(--ice); color: var(--blue); transition: transform .45s var(--spring), background .25s, color .25s; }
  .faq__item[open] .faq__ico { transform: rotate(45deg); background: var(--blue); color: #fff; }
  .faq__item::details-content { block-size: 0; overflow: hidden; transition: block-size .4s var(--ease-out), content-visibility .4s allow-discrete; }
  .faq__item[open]::details-content { block-size: auto; }
  .faq__a { padding: 0 20px 20px; color: var(--mute); }
  .faq__a p + p, .faq__a ul { margin-top: 10px; }
  .faq__a ul { padding-left: 1.1em; }

  .contact-card { margin-top: 24px; padding: 24px; border-radius: 0; background: var(--navy); color: #C8D6E8; }
  .contact-card__big { display: block; font: 700 2.1rem/1.1 var(--f); color: #fff; text-decoration: none; margin: 6px 0 16px; letter-spacing: -.01em; }
  .contact-card__row { display: flex; gap: 18px; flex-wrap: wrap; }
  .contact-card__row a { display: inline-flex; align-items: center; gap: 8px; color: #fff; text-decoration: none; font-weight: 600; font-size: .92rem; }
  .contact-card__row a:hover { color: var(--cyan); }

  .checklist { display: grid; gap: 12px; }
  .checklist li { display: grid; grid-template-columns: 28px 1fr; gap: 12px; align-items: start; }
  .checklist .ico { width: 28px; height: 28px; padding: 6px; border-radius: 0; background: var(--ice); color: var(--blue); }
  .checklist--rules li { padding: 14px 16px; border-radius: 0; background: var(--gray); }

  /* ---- CTA bandı ---- */
  .sec--cta { padding-block: clamp(40px, 5vw, 72px); }
  .cta-band {
    position: relative; overflow: hidden; display: grid; gap: 26px; padding: clamp(28px, 4vw, 52px); border-radius: 0; color: #DCE6F3;
    background: radial-gradient(circle at 90% 0%, rgba(41, 177, 218, .45), transparent 50%), linear-gradient(120deg, var(--navy), #164B84);
  }
  .cta-band::after { content: ''; position: absolute; right: -60px; bottom: -120px; width: 320px; height: 320px; border-radius: 0; border: 50px solid rgba(255, 255, 255, .05); }
  @media (min-width: 1024px) { .cta-band { grid-template-columns: 1.15fr 1fr; align-items: center; } }
  .cta-band__title { font-size: var(--fs-h2); color: #fff; margin-bottom: 10px; }
  .cta-band__title em { color: #8FD8F0; }
  .cta-band p { max-width: 52ch; color: #B5C6DC; }
  .cta-band__actions { position: relative; z-index: 1; display: flex; flex-wrap: wrap; gap: 10px; }
  @media (min-width: 1024px) { .cta-band__actions { justify-content: flex-end; } }

  /* ---- Formlar ---- */
  .form { display: grid; gap: 16px; }
  .form--card { padding: clamp(20px, 3vw, 32px); border-radius: 0; background: #fff; border: 1px solid var(--line); box-shadow: var(--sh-1); }
  .form__row { display: grid; gap: 16px; }
  @media (min-width: 640px) { .form__row { grid-template-columns: 1fr 1fr; } }
  .field { display: grid; gap: 7px; border: 0; padding: 0; margin: 0; min-width: 0; }
  .field__l { font: 600 .82rem/1.2 var(--f); color: var(--navy); }
  .field__l small { font-weight: 400; color: var(--mute); }
  .field input, .field select, .field textarea, .dsearch input {
    width: 100%; min-height: 50px; padding: 13px 15px; border-radius: 0; border: 1px solid var(--line-2); background: #fff;
    font-size: 1rem; transition: border-color .2s, box-shadow .2s; appearance: none;
  }
  .field select { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23102A56' stroke-width='1.8' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 14px center; padding-right: 40px; }
  .field textarea { resize: vertical; min-height: 110px; }
  .field input:focus, .field select:focus, .field textarea:focus, .dsearch input:focus { outline: none; border-color: var(--blue); box-shadow: 0 0 0 4px rgba(41, 177, 218, .18); }
  .field__err { display: none; font-size: .8rem; color: var(--red); }
  .is-invalid .field__err, .field__err.is-on { display: block; }
  .is-invalid input, .is-invalid select, .is-invalid textarea { border-color: var(--red); }
  .seg { display: flex; flex-wrap: wrap; gap: 8px; }
  .seg label { position: relative; }
  .seg input { position: absolute; opacity: 0; inset: 0; cursor: pointer; }
  .seg span { display: inline-flex; align-items: center; height: 42px; padding: 0 16px; border-radius: 0; border: 1px solid var(--line-2); font-size: .88rem; font-weight: 500; transition: all .2s; }
  .seg input:checked + span { background: var(--navy); color: #fff; border-color: var(--navy); }
  .seg input:focus-visible + span { outline: 2px solid var(--cyan); outline-offset: 2px; }
  .check { display: grid; grid-template-columns: 22px 1fr; gap: 10px; align-items: start; font-size: .84rem; color: var(--mute); }
  .check input { width: 20px; height: 20px; margin-top: 1px; accent-color: var(--blue); }
  .check a { color: var(--blue); }
  .check.is-invalid span { color: var(--red); }
  .form__note { font-size: .82rem; color: var(--mute); text-align: center; }
  .form__note a { color: var(--blue); }
  .form__ok { text-align: center; padding: 28px 12px; }
  .form__ok h3 { font-size: 1.5rem; margin: 14px 0 8px; }
  .form__ok p { color: var(--mute); max-width: 44ch; margin-inline: auto; }
  .form__ok-ico { display: inline-grid; place-items: center; width: 68px; height: 68px; border-radius: 0; background: var(--ice); color: var(--blue); }
  .form__ok-ico .ico { width: 32px; height: 32px; }
  .dsearch { position: relative; display: block; }
  .dsearch .ico { position: absolute; left: 16px; top: 50%; translate: 0 -50%; width: 20px; height: 20px; color: var(--mute); pointer-events: none; }
  .dsearch input { padding-left: 46px; border-radius: 0; }
  .dsearch--lg input { min-height: 62px; font-size: 1.1rem; }
  .empty { padding: 28px 0; color: var(--mute); }
}

/* ========================================================================== */
/* Header                                                                     */
@layer components {
  /* Menü (Lotus tipi): en üstte tam genişlik cam şerit; sayfa kayınca üstten ayrılır,
     daralıp yüzen lacivert cam kutuya dönüşür ve her zaman görünür kalır. */
  .hdr { --morph: .95s cubic-bezier(.62, .01, .2, 1); position: sticky; top: 0; z-index: 50; height: var(--hdr-h); pointer-events: none; view-transition-name: hdr; }
  .hdr__surface {
    position: absolute; top: 0; left: 0; right: 0; margin-inline: auto; width: 100%; height: var(--hdr-h); pointer-events: auto;
    background: rgba(255, 255, 255, .64); -webkit-backdrop-filter: saturate(1.8) blur(22px); backdrop-filter: saturate(1.8) blur(22px);
    box-shadow: 0 1px 0 rgba(16, 42, 86, .08);
    transition: width var(--morph), height var(--morph), top var(--morph), background .6s var(--ease), box-shadow .6s var(--ease);
  }
  .hdr.is-float .hdr__surface {
    top: 14px; width: min(1260px, 100% - 32px); height: 62px;
    background: rgba(10, 28, 61, .82); -webkit-backdrop-filter: saturate(1.6) blur(24px); backdrop-filter: saturate(1.6) blur(24px);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .12), 0 22px 44px -22px rgba(10, 28, 61, .7);
  }
  @media (max-width: 1179px) { .hdr.is-float .hdr__surface { top: 8px; width: calc(100% - 16px); height: 54px; } }
  @supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) { .hdr__surface { background: rgba(255, 255, 255, .97); } .hdr.is-float .hdr__surface { background: rgba(10, 28, 61, .97); } }
  .hdr__in { display: flex; align-items: center; gap: 16px; height: 100%; width: min(var(--wrap), 100% - var(--gut) * 2); margin-inline: auto; transition: width var(--morph); }
  .hdr.is-float .hdr__in { width: calc(100% - 20px); }
  @media (max-width: 1179px) { .hdr.is-float .hdr__in { width: calc(100% - 16px); } }
  /* Yüzen hâlde lacivert cam üzerinde açık renkler */
  .hdr .logo, .hdr .nav__link, .hdr .lang-btn, .hdr .burger { transition: color .5s var(--ease), background .5s var(--ease), box-shadow .5s var(--ease); }
  .hdr.is-float .logo { background: transparent; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .55); }
  .hdr.is-float .nav__link { color: #E4ECF6; }
  .hdr.is-float .nav__link:hover, .hdr.is-float .nav__link[aria-expanded='true'], .hdr.is-float .nav__link[aria-current], .hdr.is-float .nav__link[data-current] { color: #fff; }
  .hdr.is-float .lang-btn, .hdr.is-float .burger { background: rgba(255, 255, 255, .1); }
  .hdr.is-float .lang-btn:hover { background: rgba(255, 255, 255, .2); }
  @media (max-width: 1179px) { .hdr.is-float .logo { padding: 7px 11px; } .hdr.is-float .sq-btn, .hdr.is-float .burger { width: 40px; height: 40px; } }
  .logo { display: inline-grid; justify-items: center; gap: 2px; padding: 9px 13px; background: var(--logo); color: #fff; text-decoration: none; font: 500 .74rem/1 var(--f); letter-spacing: .3em; text-indent: .3em; border-radius: 0; flex: none; }
  .logo span:last-child { font-size: .62rem; letter-spacing: .38em; text-indent: .38em; }
  @media (min-width: 1180px) { .logo { padding: 11px 16px; font-size: .84rem; } .logo span:last-child { font-size: .7rem; } }
  .logo--sm { padding: 8px 12px; font-size: .7rem; }
  .logo--light { background: transparent; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .5); }
  .pulse-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--red); box-shadow: 0 0 0 0 rgba(209, 43, 62, .5); animation: pulse 2s infinite; }
  @keyframes pulse { 70% { box-shadow: 0 0 0 7px rgba(209, 43, 62, 0); } 100% { box-shadow: 0 0 0 0 rgba(209, 43, 62, 0); } }
  .nav { display: none; }
  @media (min-width: 1180px) { .nav { display: block; margin-left: auto; } }
  .nav__list { display: flex; gap: 2px; }
  .nav__link { --np: clamp(6px, calc((100vw - 1100px) * .05), 11px); position: relative; display: inline-flex; align-items: center; gap: 5px; height: 44px; padding: 0 var(--np); font: 600 .93rem/1 var(--f); color: var(--navy); text-decoration: none; white-space: nowrap; transition: color .2s; }
  /* Üzerine gelince alttan açılan çizgi */
  .nav__link::after { content: ''; position: absolute; left: var(--np); right: var(--np); bottom: 4px; height: 2px; background: var(--cyan); transform: scaleX(0); transform-origin: left; transition: transform .35s var(--ease-out); }
  .nav__link:hover, .nav__link[aria-expanded='true'], .nav__link[aria-current], .nav__link[data-current] { color: var(--blue); }
  .nav__link:hover::after, .nav__link[aria-expanded='true']::after, .nav__link[aria-current]::after, .nav__link[data-current]::after { transform: scaleX(1); }
  .nav__chev { width: 14px; height: 14px; transition: transform .3s; }
  .nav__link[aria-expanded='true'] .nav__chev { transform: rotate(180deg); }
  .hdr__actions { display: flex; align-items: center; gap: 8px; margin-left: auto; }
  @media (min-width: 1180px) { .hdr__actions { margin-left: 4px; } }
  .hdr__actions { flex: none; }
  @media (max-width: 1023px) { .hide-m { display: none !important; } }
  @media (min-width: 1024px) { .hide-d { display: none !important; } }
  .burger { width: 44px; height: 44px; border-radius: 0; display: grid; place-content: center; gap: 5px; background: var(--navy); }
  .burger span { display: block; width: 18px; height: 2px; background: #fff; border-radius: 0; }
  .burger span:nth-child(2) { width: 13px; }
  @media (min-width: 1180px) { .burger { display: none; } }

  .mega {
    position: absolute; left: 0; right: 0; top: calc(100% + 1px); background: rgba(255, 255, 255, .96); -webkit-backdrop-filter: saturate(1.8) blur(22px); backdrop-filter: saturate(1.8) blur(22px); border-top: 1px solid var(--line); box-shadow: 0 34px 60px -30px rgba(16, 42, 86, .35);
    padding-block: 32px 36px; opacity: 0; translate: 0 -8px; transition: opacity .25s, translate .35s var(--ease-out), display .3s allow-discrete;
  }
  .mega.is-open { opacity: 1; translate: 0 0; }
  @starting-style { .mega.is-open { opacity: 0; translate: 0 -8px; } }
  .mega__in { display: grid; grid-template-columns: 1fr 280px; gap: 40px; }
  .mega__cols { display: grid; grid-template-columns: repeat(5, 1fr); gap: 24px; }
  .mega__cols--2 { grid-template-columns: repeat(2, minmax(0, 260px)); }
  .mega__cat { display: block; font: 700 .98rem/1.25 var(--f); color: var(--navy); text-decoration: none; padding-bottom: 10px; margin-bottom: 8px; border-bottom: 2px solid var(--ice-2); }
  .mega__cat:hover { color: var(--blue); }
  .mega__col ul { display: grid; gap: 1px; }
  .mega__col a:not(.mega__cat) { display: block; padding: 6px 0; font-size: .9rem; color: var(--mute); text-decoration: none; transition: color .2s, translate .25s; }
  .mega__col a:hover { color: var(--blue); translate: 3px 0; }
  .mega__feature { display: grid; gap: 12px; text-decoration: none; }
  .mega__img { display: block; aspect-ratio: 4 / 3; border-radius: 0; overflow: hidden; }
  .mega__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--ease-out); }
  .mega__feature:hover .mega__img img { transform: scale(1.05); }
  .mega__ft { display: grid; grid-template-columns: 1fr auto; align-items: center; color: var(--navy); }
  .mega__ft .eyebrow { grid-column: 1 / -1; margin: 0 0 2px; }
  .mega__ftitle { font: 700 1.05rem/1.25 var(--f); }
  .mega__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 4px 14px; }
  .mega__grid a { display: flex; align-items: center; gap: 12px; padding: 10px; border-radius: 0; text-decoration: none; font-weight: 600; font-size: .92rem; color: var(--navy); transition: background .2s; }
  .mega__grid a:hover { background: var(--ice); }
  .mega__grid .ico { width: 38px; height: 38px; padding: 9px; border-radius: 0; background: var(--ice); color: var(--blue); }
  .mega__side { display: grid; gap: 10px; align-content: start; }
  .mega__pill { display: flex; gap: 14px; align-items: center; padding: 14px 16px; border-radius: 0; background: var(--navy); color: #fff; text-decoration: none; }
  .mega__pill:nth-child(n + 2) { background: var(--gray); color: var(--navy); }
  .mega__pill .ico { width: 24px; height: 24px; color: var(--cyan); }
  .mega__pill span { display: grid; }
  .mega__pill small { opacity: .7; }

  /* Mobil menü */
  .mnav {
    position: fixed; inset: 0; width: 100%; max-width: 100%; height: 100dvh; max-height: 100dvh; margin: 0; padding: 0; border: 0; background: #fff; overflow-y: auto; overscroll-behavior: contain;
    opacity: 0; translate: 0 12px; transition: opacity .3s, translate .4s var(--ease-out), display .4s allow-discrete, overlay .4s allow-discrete;
  }
  .mnav[open] { opacity: 1; translate: 0 0; }
  @starting-style { .mnav[open] { opacity: 0; translate: 0 12px; } }
  .mnav::backdrop { background: transparent; }
  .mnav__top { position: sticky; top: 0; z-index: 2; display: flex; justify-content: space-between; align-items: center; padding: 12px var(--gut); background: #fff; border-bottom: 1px solid var(--line); }
  .mnav__nav { padding: 6px var(--gut) 20px; }
  .mnav__grp, .mnav__link { border-bottom: 1px solid var(--line); }
  .mnav__grp summary, .mnav__link { display: flex; justify-content: space-between; align-items: center; padding: 17px 0; font: 700 1.15rem/1.2 var(--f); color: var(--navy); list-style: none; cursor: pointer; text-decoration: none; }
  .mnav__grp summary::-webkit-details-marker { display: none; }
  .mnav__grp summary .ico { width: 30px; height: 30px; padding: 6px; border-radius: 0; background: var(--ice); color: var(--blue); transition: transform .35s var(--spring); }
  .mnav__grp[open] summary .ico { transform: rotate(45deg); }
  .mnav__body { padding-bottom: 16px; }
  .mnav__body ul { display: grid; }
  .mnav__body li a { display: block; padding: 8px 0; color: var(--mute); text-decoration: none; }
  .mnav__cat { margin: 12px 0 2px; font: 700 .74rem/1 var(--f); letter-spacing: .1em; text-transform: uppercase; color: var(--blue); }
  .mnav__cat a { text-decoration: none; }
  .mnav__all a { display: inline-flex; align-items: center; gap: 8px; margin-top: 10px; font-weight: 700; color: var(--blue); text-decoration: none; }
  .mnav__foot { padding: 18px var(--gut) calc(26px + env(safe-area-inset-bottom)); display: grid; gap: 10px; background: var(--gray); }
  .mnav__row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
  .mnav__lang { text-align: center; font-size: .88rem; color: var(--mute); }
  .mnav__lang a { text-decoration: none; }
  .mnav__lang a[aria-current] { color: var(--navy); font-weight: 700; }

  .scroll-progress { position: fixed; top: 0; left: 0; right: 0; height: 3px; z-index: 70; background: linear-gradient(90deg, var(--cyan), var(--blue)); transform-origin: 0 50%; transform: scaleX(0); pointer-events: none; }
}

/* ========================================================================== */
/* Sayfalar                                                                   */
@layer pages {
  /* ---- Ana sayfa: slider ---- */
  /* Slider kenardan kenara; yazı ve kontroller sitenin içerik hizasında */
  .hero { --edge: max(var(--gut), (100% - var(--wrap)) / 2); padding-bottom: clamp(28px, 3.5vw, 48px); }
  .hero__slider { position: relative; height: clamp(560px, 72vh, 640px); border-radius: 0; overflow: hidden; background: var(--navy-deep); isolation: isolate; touch-action: pan-y; }
  @media (max-width: 767px) { .hero__slider { height: auto; min-height: 600px; border-radius: 0; } }
  .hero__slide { position: absolute; inset: 0; display: flex; align-items: center; opacity: 0; visibility: hidden; transition: opacity .9s var(--ease), visibility 0s .9s; }
  .hero__slide.is-active { opacity: 1; visibility: visible; transition: opacity .9s var(--ease), visibility 0s; z-index: 1; }
  .hero__img { position: absolute; inset: 0; z-index: -1; }
  .hero__img img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.1); transition: transform 8s linear; }
  .hero__slide.is-active .hero__img img { transform: scale(1); }
  .hero__slide::before {
    content: ''; position: absolute; inset: 0; z-index: 0;
    background: linear-gradient(90deg, rgba(10, 28, 61, .94) 0%, rgba(10, 28, 61, .78) 34%, rgba(10, 28, 61, .2) 70%, rgba(10, 28, 61, .05) 100%);
  }
  @media (max-width: 767px) {
    .hero__slide { align-items: flex-end; }
    .hero__slide::before { background: linear-gradient(0deg, rgba(10, 28, 61, .96) 30%, rgba(10, 28, 61, .55) 65%, rgba(10, 28, 61, .2)); }
  }
  .hero__txt { position: relative; z-index: 1; width: 100%; padding: clamp(28px, 5vw, 72px) var(--edge) clamp(96px, 9vw, 120px); color: #fff; }
  .hero__txt > * { max-width: 600px; }
  .hero__tag { display: inline-flex; align-items: center; gap: 8px; padding: 7px 14px; border-radius: 0; background: rgba(255, 255, 255, .12); border: 1px solid rgba(255, 255, 255, .22); font: 700 .78rem/1 var(--f); letter-spacing: .04em; backdrop-filter: blur(6px); }
  .hero__tag::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: var(--cyan); }
  .hero__title { margin-top: 18px; font-size: clamp(2.05rem, 1.2rem + 3.3vw, 3.75rem); line-height: 1.06; letter-spacing: -.028em; color: #fff; }
  .hero__list { display: grid; gap: 8px; margin-top: 20px; font-size: clamp(.95rem, .9rem + .2vw, 1.05rem); color: #D9E5F2; }
  .hero__list li { display: flex; align-items: center; gap: 10px; }
  .hero__list .ico { width: 20px; height: 20px; color: var(--cyan); }
  .hero__actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
  .js .hero__slide .hero__txt > * { opacity: 0; transform: translateY(18px); transition: opacity .7s var(--ease-out), transform .9s var(--ease-out); }
  .js .hero__slide.is-active .hero__txt > * { opacity: 1; transform: none; }
  .js .hero__slide.is-active .hero__txt > :nth-child(2) { transition-delay: .1s; }
  .js .hero__slide.is-active .hero__txt > :nth-child(3) { transition-delay: .2s; }
  .js .hero__slide.is-active .hero__txt > :nth-child(4) { transition-delay: .3s; }
  .hero__ctrl { position: absolute; z-index: 3; left: var(--edge); right: var(--edge); bottom: 26px; display: flex; align-items: center; gap: 8px; }
  @media (min-width: 1024px) { .hero__ctrl { bottom: 96px; } }
  .hero__dots { display: flex; gap: 8px; margin-right: auto; }
  .hero__dot { position: relative; width: 34px; height: 6px; border-radius: 0; background: rgba(255, 255, 255, .3); overflow: hidden; }
  .hero__dot span { position: absolute; inset: 0; background: #fff; transform: scaleX(0); transform-origin: left; }
  .hero__dot[aria-current] { width: 54px; }
  .hero__dot[aria-current] span { animation: dotfill var(--dur, 7s) linear forwards; }
  .hero__slider.is-paused .hero__dot[aria-current] span { animation-play-state: paused; }
  @keyframes dotfill { to { transform: scaleX(1); } }
  .hero__arrow { width: 46px; height: 46px; border-radius: 0; display: grid; place-items: center; background: rgba(255, 255, 255, .14); border: 1px solid rgba(255, 255, 255, .28); color: #fff; backdrop-filter: blur(8px); transition: background .2s; }
  .hero__arrow:hover { background: rgba(255, 255, 255, .28); }
  .hero__arrow .ico { width: 22px; height: 22px; }

  /* Hızlı işlem paneli */
  .qpanel { position: relative; z-index: 4; display: grid; margin-top: 14px; border-radius: 0; background: #fff; border: 1px solid var(--line); box-shadow: var(--sh-2); overflow: hidden; }
  @media (min-width: 1024px) { .qpanel { grid-template-columns: 1fr 300px; margin: -72px 40px 0; } }
  .qpanel__main { padding: 8px 18px 18px; min-width: 0; }
  .qpanel__tabs { display: flex; gap: 4px; border-bottom: 1px solid var(--line); overflow-x: auto; scrollbar-width: none; }
  .qtab { flex: none; display: inline-flex; align-items: center; gap: 8px; height: 52px; padding: 0 14px; font: 700 .92rem/1 var(--f); color: var(--mute); border-bottom: 3px solid transparent; margin-bottom: -1px; transition: color .2s, border-color .2s; }
  .qtab .ico { width: 18px; height: 18px; }
  .qtab[aria-selected='true'] { color: var(--navy); border-color: var(--cyan); }
  .qpanel__body { padding-top: 16px; }
  .qform { display: grid; gap: 10px; align-items: end; }
  @media (min-width: 768px) { .qform { grid-template-columns: 1fr 1fr auto; } .qform--links { display: flex; flex-wrap: wrap; align-items: center; } }
  .qform__f { display: grid; gap: 4px; padding: 9px 14px; border-radius: 0; border: 1px solid var(--line-2); background: #fff; transition: border-color .2s, box-shadow .2s; }
  .qform__f:focus-within { border-color: var(--blue); box-shadow: 0 0 0 4px rgba(41, 177, 218, .15); }
  .qform__f--wide { grid-column: 1 / 3; }
  @media (max-width: 767px) { .qform__f--wide { grid-column: auto; } }
  .qform__f span { font: 700 .68rem/1 var(--f); letter-spacing: .08em; text-transform: uppercase; color: var(--mute); }
  .qform__f select, .qform__f input { border: 0; padding: 4px 22px 2px 0; background: transparent; font-weight: 600; color: var(--navy); appearance: none; width: 100%; }
  .qform__f select { cursor: pointer; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none' stroke='%23102A56' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 2px center; }
  .qform__f select:focus, .qform__f input:focus { outline: none; }
  .qform .btn { min-height: 60px; border-radius: 0; }
  .qform__lbl { font-weight: 700; color: var(--navy); margin-right: 4px; }
  .qform--links .btn { margin-left: auto; min-height: 48px; border-radius: 0; }
  .qpanel__call { display: flex; align-items: center; gap: 14px; padding: 20px 22px; background: linear-gradient(135deg, var(--navy), #164B84); color: #fff; text-decoration: none; }
  .qpanel__call > span:last-child { display: grid; gap: 2px; }
  .qpanel__call small { color: #A9BBD3; font-size: .78rem; }
  .qpanel__call strong { font: 700 1.9rem/1 var(--f); letter-spacing: -.01em; }
  .qpanel__call em { font-size: .78rem; color: #8FD8F0; font-weight: 600; }
  .qpanel__call-ico { width: 54px; height: 54px; flex: none; border-radius: 0; display: grid; place-items: center; background: rgba(41, 177, 218, .2); color: var(--cyan); }
  .qpanel__call-ico .ico { width: 26px; height: 26px; }

  /* Hızlı erişim kutucukları */
  .tiles { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; margin-top: 22px; }
  @media (min-width: 768px) { .tiles { grid-template-columns: repeat(3, 1fr); } }
  @media (min-width: 1180px) { .tiles { grid-template-columns: repeat(6, 1fr); } }
  .tile { display: grid; gap: 2px; height: 100%; padding: 16px; border-radius: 0; background: var(--ice); text-decoration: none; transition: background .25s, transform .45s var(--spring), box-shadow .3s; }
  .tile__ico { width: 44px; height: 44px; margin-bottom: 10px; border-radius: 0; display: grid; place-items: center; background: #fff; color: var(--blue); transition: background .25s, color .25s; }
  .tile__ico .ico { width: 22px; height: 22px; }
  .tile__t { font-weight: 700; color: var(--navy); }
  .tile__s { font-size: .8rem; color: var(--mute); }
  .tile:hover { background: var(--navy); transform: translateY(-3px); box-shadow: var(--sh-2); }
  .tile:hover .tile__t { color: #fff; }
  .tile:hover .tile__s { color: #A9BBD3; }
  .tile:hover .tile__ico { background: var(--cyan); color: #fff; }

  /* ---- Neden biz ---- */
  .why__grid { display: grid; gap: 48px; }
  @media (min-width: 1024px) { .why__grid { grid-template-columns: 1fr 1fr; gap: 72px; align-items: center; } }
  .why__media { position: relative; }
  .why__img { aspect-ratio: 5 / 4.6; border-radius: 0; box-shadow: var(--sh-2); }
  .why__badge { position: absolute; display: flex; align-items: center; gap: 12px; padding: 14px 18px; border-radius: 0; background: #fff; box-shadow: var(--sh-2); }
  .why__badge > .ico { width: 44px; height: 44px; padding: 10px; border-radius: 0; background: var(--ice); color: var(--blue); }
  .why__badge span { display: grid; }
  .why__badge strong { color: var(--navy); font-size: .95rem; }
  .why__badge small { color: var(--mute); }
  .why__badge--a { left: -12px; bottom: 28px; }
  .why__badge--b { right: -12px; top: 28px; }
  @media (max-width: 639px) { .why__badge { position: relative; left: auto; right: auto; top: auto; bottom: auto; margin-top: 12px; } }
  .assure { display: grid; gap: 12px; margin-top: 26px; }
  .assure li { display: grid; grid-template-columns: 46px 1fr; gap: 14px; padding: 16px; border-radius: 0; background: #fff; }
  .assure .ico { width: 46px; height: 46px; padding: 11px; border-radius: 0; background: var(--ice); color: var(--blue); }
  .assure strong { display: block; color: var(--navy); }
  .assure span { color: var(--mute); font-size: .92rem; }
  .assure a { color: var(--blue); font-weight: 600; }
  .counts { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; margin-top: clamp(32px, 4vw, 56px); }
  @media (min-width: 768px) { .counts { grid-template-columns: repeat(3, 1fr); } }
  @media (min-width: 1180px) { .counts { grid-template-columns: repeat(6, 1fr); } }
  .counts div { display: flex; flex-direction: column-reverse; gap: 4px; padding: 20px; border-radius: 0; background: #fff; border: 1px solid var(--line); }
  .counts dd { font: 700 clamp(2rem, 1.6rem + 1.2vw, 2.7rem)/1 var(--f); color: var(--navy); font-variant-numeric: tabular-nums; letter-spacing: -.02em; }
  .counts dt { font-size: .84rem; color: var(--mute); line-height: 1.35; }
  .counts--light { margin-top: 0; }

  /* ---- Check-up (ana sayfa) ---- */
  .cu__grid { display: grid; gap: 48px; }
  @media (min-width: 1024px) { .cu__grid { grid-template-columns: 1fr 1fr; gap: 72px; } }
  .cu__txt .steps { margin-top: 28px; }
  .cu__cap { font: 700 1.2rem/1.2 var(--f); color: #fff; margin-bottom: 12px; }
  .cu__cap span { font-weight: 400; font-size: .88rem; color: #A9BBD3; margin-left: 6px; }
  .cu__pk .btn { margin-top: 20px; }

  /* ---- Galeri ---- */
  .gal { overflow: hidden; }
  .gal__strip { overflow-x: auto; scrollbar-width: none; scroll-snap-type: x mandatory; }
  .gal__strip::-webkit-scrollbar { display: none; }
  .gal__track { display: flex; gap: 16px; padding-inline: var(--gut); width: max-content; transform: translate3d(var(--hx, 0px), 0, 0); will-change: transform; }
  @media (min-width: 1024px) { .gal__strip { overflow: visible; } .gal__track { padding-inline: max(var(--gut), (100vw - var(--wrap)) / 2); gap: 20px; } }
  .gal__item { position: relative; flex: none; width: clamp(260px, 72vw, 440px); aspect-ratio: 4 / 3; border-radius: 0; overflow: hidden; scroll-snap-align: center; margin: 0; }
  .gal__item:nth-child(even) { width: clamp(220px, 60vw, 330px); }
  .gal__item img { width: 100%; height: 100%; object-fit: cover; }
  .gal__item figcaption { position: absolute; left: 14px; bottom: 14px; padding: 7px 12px; border-radius: 0; background: rgba(255, 255, 255, .92); color: var(--navy); font: 700 .78rem/1 var(--f); }

  /* ---- Video ---- */
  .vids__grid { display: grid; gap: 20px; }
  @media (min-width: 1024px) { .vids__grid { grid-template-columns: 2fr 1fr; } .yt--big { grid-row: span 2; } }
  .yt { display: grid; gap: 10px; align-content: start; }
  .yt__btn { position: relative; display: block; width: 100%; aspect-ratio: 16 / 9; border-radius: 0; overflow: hidden; background: var(--navy); }
  .yt__btn img { width: 100%; height: 100%; object-fit: cover; transition: transform .9s var(--ease-out), opacity .3s; }
  .yt__btn:hover img { transform: scale(1.04); opacity: .9; }
  .yt__play { position: absolute; inset: 0; margin: auto; width: 72px; height: 72px; border-radius: 0; display: grid; place-items: center; background: rgba(255, 255, 255, .95); color: var(--blue); box-shadow: 0 0 0 10px rgba(255, 255, 255, .25); transition: transform .45s var(--spring); }
  .yt__play .ico { width: 26px; height: 26px; margin-left: 4px; fill: currentColor; }
  .yt__btn:hover .yt__play { transform: scale(1.1); }
  .yt iframe { width: 100%; aspect-ratio: 16 / 9; border: 0; border-radius: 0; background: #000; }
  .yt__title { font: 700 1.05rem/1.35 var(--f); color: var(--navy); }
  .yt--big .yt__title { font-size: 1.3rem; }
  .yt__desc { color: var(--mute); font-size: .92rem; }

  /* ---- Sigorta şeridi ---- */
  .ins__head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: end; gap: 18px; margin-bottom: 28px; }
  .ins__head .h3 { max-width: 26ch; }
  .marquee { overflow: hidden; -webkit-mask: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); mask: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
  .marquee__track { display: flex; gap: 14px; width: max-content; animation: marquee 60s linear infinite; }
  .marquee:hover .marquee__track { animation-play-state: paused; }
  @keyframes marquee { to { transform: translateX(calc(-50% - 7px)); } }
  .marquee__item { flex: none; width: 150px; height: 82px; padding: 12px 18px; border-radius: 0; background: #fff; display: grid; place-items: center; box-shadow: var(--sh-1); }
  .marquee__item img { max-height: 54px; width: auto; object-fit: contain; filter: grayscale(1); opacity: .8; transition: filter .3s, opacity .3s; mix-blend-mode: multiply; }
  .marquee__item:hover img { filter: none; opacity: 1; }

  /* ---- SSS bölümü ---- */
  .faqsec__grid { display: grid; gap: 36px; }
  @media (min-width: 1024px) { .faqsec__grid { grid-template-columns: 4fr 7fr; gap: 72px; } .faqsec__side { position: sticky; top: calc(var(--hdr-h) + 24px); align-self: start; } }

  /* ---- Popüler içerikler ---- */
  .pop__h { margin-bottom: 22px; text-align: center; }
  .pop__list { columns: 2 160px; column-gap: 24px; }
  @media (min-width: 1024px) { .pop__list { columns: 5; } }
  .pop__list li { break-inside: avoid; }
  .pop__list a { display: block; padding: 5px 0; font-size: .88rem; color: var(--mute); text-decoration: none; }
  .pop__list a:hover { color: var(--blue); }

  /* ---- Konum ---- */
  .loc { position: relative; display: grid; }
  .loc__map {
    grid-area: 1 / 1; min-height: 500px; background-color: var(--ice);
    background-image: linear-gradient(rgba(16, 42, 86, .05) 1px, transparent 1px), linear-gradient(90deg, rgba(16, 42, 86, .05) 1px, transparent 1px),
      radial-gradient(circle at 70% 50%, var(--cyan) 0 7px, transparent 8px), repeating-radial-gradient(circle at 70% 50%, transparent 0 39px, rgba(41, 177, 218, .22) 40px 41px);
    background-size: 44px 44px, 44px 44px, auto, auto; display: grid; place-items: center end; padding-right: 12%;
  }
  .loc__map iframe { width: 100%; height: 100%; min-height: 500px; border: 0; grid-area: 1 / 1; place-self: stretch; }
  .loc__load { display: grid; justify-items: center; gap: 4px; padding: 18px 26px; border-radius: 0; background: #fff; box-shadow: var(--sh-2); font-weight: 700; color: var(--navy); }
  .loc__load .ico { width: 26px; height: 26px; color: var(--blue); }
  .loc__load small { color: var(--mute); font-weight: 400; }
  .loc__in { grid-area: 1 / 1; align-self: center; pointer-events: none; padding-block: 40px; }
  .loc__card { pointer-events: auto; max-width: 450px; padding: clamp(22px, 3vw, 34px); border-radius: 0; background: #fff; box-shadow: var(--sh-2); }
  @media (max-width: 767px) { .loc__map { min-height: 280px; place-items: center; padding: 0; } .loc__map iframe { min-height: 280px; } .loc__in { grid-area: 2 / 1; margin-top: -40px; } }
  .loc__addr { font-size: 1.08rem; font-weight: 600; color: var(--navy); margin: 10px 0 16px; }
  .loc__hours { display: grid; gap: 8px; padding: 14px 0; border-block: 1px solid var(--line); font-size: .92rem; }
  .loc__hours div { display: flex; justify-content: space-between; gap: 16px; }
  .loc__hours dt { color: var(--mute); }
  .loc__hours dd { text-align: right; font-weight: 600; }
  .loc__hours a { text-decoration: none; color: var(--blue); }
  .loc__btns { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
  .loc--page { margin-top: clamp(32px, 4vw, 56px); }

  /* ---- Sayfa başlığı (gri bant) ---- */
  .phero { background: var(--gray); padding-block: clamp(22px, 3vw, 36px) clamp(30px, 4vw, 52px); }
  .phero__grid { display: grid; gap: 28px; align-items: center; }
  @media (min-width: 1024px) { .phero__grid:has(.phero__media) { grid-template-columns: 7fr 5fr; gap: 56px; } .phero--t .phero__grid { grid-template-columns: 1fr 1fr; } }
  .phero__title { font-size: var(--fs-h1); letter-spacing: -.025em; view-transition-name: page-title; }
  .phero__title--post { max-width: 26ch; }
  .phero__lead { margin-top: 14px; font-size: clamp(1rem, .96rem + .3vw, 1.15rem); color: var(--mute); max-width: 62ch; }
  .phero__lead a { color: var(--blue); }
  .phero__actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 22px; }
  .phero__media { position: relative; }
  .stele--hero { aspect-ratio: 4 / 3.4; box-shadow: var(--sh-1); }
  .phero__arch { aspect-ratio: 16 / 9.5; box-shadow: var(--sh-1); }
  .stele-trio { display: flex; gap: 14px; align-items: flex-end; }
  .stele-trio > * { flex: 1; }
  .stele-trio .stele--a { aspect-ratio: 3 / 4; }
  .stele-trio .stele--b { aspect-ratio: 3 / 3.4; }
  .phero--post .eyebrow { margin-bottom: 12px; }
  .post__img { margin-top: 28px; aspect-ratio: 21 / 8; }
  @media (max-width: 767px) { .post__img { aspect-ratio: 16 / 10; } }

  /* Sayfa içi sekmeler */
  .subnav { position: sticky; top: var(--hdr-h); z-index: 30; background: rgba(255, 255, 255, .78); -webkit-backdrop-filter: saturate(1.8) blur(18px); backdrop-filter: saturate(1.8) blur(18px); border-bottom: 1px solid var(--line); transition: top .4s var(--ease-out); }
  .subnav__in { display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; }
  .subnav__in::-webkit-scrollbar { display: none; }
  .subnav a { flex: none; display: inline-flex; align-items: center; height: 54px; padding: 0 14px; font: 600 .92rem/1 var(--f); color: var(--mute); text-decoration: none; border-bottom: 3px solid transparent; transition: color .2s, border-color .2s; }
  .subnav a:hover { color: var(--navy); }
  .subnav a[aria-current] { color: var(--navy); border-color: var(--cyan); }

  /* ---- Makale düzeni ---- */
  .art__grid { display: grid; gap: 32px; }
  @media (min-width: 1024px) {
    .art__grid { grid-template-columns: minmax(0, 1fr) 360px; gap: 56px; }
    .art__grid--nav { grid-template-columns: 280px minmax(0, 1fr); }
    .art__side { position: sticky; top: calc(var(--hdr-h) + 72px); align-self: start; }
    .art__grid--nav .art__side { top: calc(var(--hdr-h) + 24px); }
  }
  .art__main { min-width: 0; }
  .art__side { display: grid; gap: 18px; align-content: start; min-width: 0; }
  .toc { margin-bottom: 28px; padding: 26px 28px; border-radius: 0; background: var(--navy); color: #fff; }
  .toc__h { font: 700 1.15rem/1.2 var(--f); margin-bottom: 14px; }
  .toc ol { display: grid; gap: 2px; }
  @media (min-width: 768px) { .toc ol:has(> li:nth-child(7)) { grid-template-columns: 1fr 1fr; column-gap: 24px; } }
  .toc a { display: block; padding: 6px 0; color: #C8D6E8; text-decoration: none; font-size: .92rem; line-height: 1.35; transition: color .2s; }
  .toc a:hover, .toc a.is-active { color: var(--cyan); }
  .toc--nav { margin: 0; padding: 20px; background: var(--gray); color: var(--navy); }
  .toc--nav .toc__h { font-size: .76rem; letter-spacing: .1em; text-transform: uppercase; color: var(--blue); }
  .toc--nav ol { grid-template-columns: 1fr !important; }
  .toc--nav a { color: var(--mute); padding: 8px 12px; border-radius: 0; }
  .toc--nav a:hover { color: var(--navy); background: #fff; }
  .toc--nav a[aria-current] { color: var(--navy); background: #fff; font-weight: 700; box-shadow: inset 3px 0 0 var(--cyan); }
  .side-form { display: grid; gap: 14px; padding: 24px; border-radius: 0; background: var(--ice); border: 1px solid var(--ice-2); }
  .side-form__h { font: 700 1.25rem/1.2 var(--f); color: var(--navy); }
  .side-form__sub { margin-top: -8px; font-size: .9rem; color: var(--mute); }
  .side-form .form { gap: 12px; }
  .side-form .field input { min-height: 46px; padding: 11px 14px; }
  .side-form__alt { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
  .side-form__alt a { display: inline-flex; align-items: center; justify-content: center; gap: 7px; height: 44px; border-radius: 0; background: #fff; color: var(--navy); font: 700 .88rem/1 var(--f); text-decoration: none; border: 1px solid var(--ice-2); }
  .side-form__alt a:hover { border-color: var(--blue); color: var(--blue); }
  .side-form__alt .ico { width: 17px; height: 17px; }
  .side-form .form__ok { padding: 12px 0; }
  .tldr { margin-bottom: 22px; padding: 20px 22px; border-radius: 0; background: var(--ice); border-left: 4px solid var(--cyan); }
  .tldr__h { display: flex; align-items: center; gap: 8px; font: 700 .76rem/1 var(--f); letter-spacing: .1em; text-transform: uppercase; color: var(--blue); margin-bottom: 8px; }
  .tldr__h .ico { width: 16px; height: 16px; }
  .tldr p:last-child { font-size: 1.04rem; color: var(--text); }
  .facts { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; margin-bottom: 28px; }
  @media (min-width: 768px) { .facts { grid-template-columns: repeat(4, 1fr); } }
  .facts div { padding: 14px 16px; border-radius: 0; background: var(--gray); }
  .facts dt { font: 700 .68rem/1.2 var(--f); letter-spacing: .08em; text-transform: uppercase; color: var(--blue); margin-bottom: 4px; }
  .facts dd { font-weight: 600; font-size: .93rem; line-height: 1.35; color: var(--navy); }
  .art__meta { display: flex; align-items: center; gap: 8px; font-size: .84rem; color: var(--mute); margin-bottom: 16px; }
  .art__meta .ico { width: 16px; height: 16px; }
  .art__h { font-size: var(--fs-h3); margin-bottom: 18px; }
  .art__faqh { font-size: var(--fs-h3); margin: 48px 0 16px; }

  .prose { font-size: 1.04rem; line-height: 1.75; color: #2A3448; }
  .prose > * + * { margin-top: 1em; }
  .prose h2 { font-size: clamp(1.4rem, 1.2rem + .8vw, 1.85rem); margin-top: 1.9em; }
  .prose h2:first-child { margin-top: 0; }
  .prose h3 { font-size: 1.15rem; margin-top: 1.6em; }
  .prose h4 { font-size: 1rem; margin-top: 1.3em; }
  .prose ul, .prose ol { padding-left: 0; display: grid; gap: .45em; }
  .prose ul li { position: relative; padding-left: 24px; list-style: none; }
  .prose ul li::before { content: ''; position: absolute; left: 4px; top: .62em; width: 8px; height: 8px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 0 3px var(--cyan-soft); }
  .prose ol { counter-reset: o; }
  .prose ol li { list-style: none; position: relative; padding-left: 34px; counter-increment: o; }
  .prose ol li::before { content: counter(o); position: absolute; left: 0; top: .12em; width: 24px; height: 24px; border-radius: 0; display: grid; place-items: center; font: 700 .75rem/1 var(--f); background: var(--ice); color: var(--blue); }
  .prose strong { font-weight: 700; color: var(--navy); }
  .prose a { color: var(--blue); text-underline-offset: 3px; }
  .prose--lg { font-size: clamp(1.06rem, 1rem + .3vw, 1.18rem); }
  .prose--cv h3 { padding-top: 1em; border-top: 1px solid var(--line); }
  .prose--cv h3:first-child { border: 0; padding-top: 0; margin-top: 0; }
  .orgchart { border-radius: 0; overflow: hidden; border: 1px solid var(--line); }
  .by { margin-top: 40px; }
  .by__h { font: 700 .78rem/1 var(--f); letter-spacing: .1em; text-transform: uppercase; color: var(--blue); margin-bottom: 14px; }
  .by__list { display: grid; gap: 10px; }
  @media (min-width: 768px) { .by__list { grid-template-columns: 1fr 1fr; } }
  .by__doc { display: grid; grid-template-columns: 64px 1fr auto; align-items: center; gap: 14px; padding: 10px 16px 10px 10px; border-radius: 0; background: #fff; border: 1px solid var(--line); text-decoration: none; color: inherit; transition: box-shadow .3s, transform .4s var(--spring); }
  .by__doc:hover { box-shadow: var(--sh-1); transform: translateY(-2px); }
  .by__doc img { width: 64px; height: 72px; border-radius: 0; object-fit: cover; object-position: 50% 10%; background: var(--ice); }
  .by__doc--link > .ico:first-child { width: 64px; height: 64px; padding: 18px; border-radius: 0; background: var(--ice); color: var(--blue); }
  .by__doc span { display: grid; }
  .by__doc strong { color: var(--navy); }
  .by__doc small { color: var(--mute); }
  .by__doc > .ico:last-child { color: var(--blue); }
  .medref { margin-top: 36px; padding: 16px 18px; border-radius: 0; background: var(--gray); font-size: .85rem; color: var(--mute); }
  .medref p { display: grid; grid-template-columns: 20px 1fr; gap: 12px; }
  .medref .ico { width: 20px; height: 20px; color: var(--blue); }
  .medref a { color: var(--blue); }
  .share { padding: 18px 20px; border-radius: 0; background: var(--gray); }
  .share .toc__h { font-size: .76rem; letter-spacing: .1em; text-transform: uppercase; color: var(--blue); margin-bottom: 10px; }
  .share__row { display: flex; gap: 8px; }

  /* ---- Doktor profili ---- */
  .prof { background: var(--gray); padding-block: clamp(22px, 3vw, 36px) clamp(36px, 4vw, 56px); }
  .prof__grid { display: grid; gap: 32px; align-items: center; }
  @media (min-width: 1024px) { .prof__grid { grid-template-columns: 380px 1fr; gap: 64px; } }
  .prof__media { max-width: 380px; width: 100%; margin-inline: auto; }
  .stele--portrait { aspect-ratio: 4 / 4.6; background: linear-gradient(180deg, #E1F1F9, #FAFCFD); box-shadow: var(--sh-1); }
  .stele--portrait img { object-position: 50% 10%; }
  .prof__title { margin-top: 10px; font-size: 1.1rem; color: var(--blue); font-weight: 600; }
  .prof__facts { display: grid; gap: 8px; margin-top: 22px; max-width: 580px; }
  .prof__facts div { display: grid; grid-template-columns: 110px 1fr; gap: 16px; padding: 12px 16px; border-radius: 0; background: #fff; font-size: .94rem; }
  .prof__facts dt { color: var(--mute); }
  .prof__facts dd { font-weight: 600; color: var(--navy); }
  .prof__facts a { color: var(--blue); }

  /* ---- Check-up detay ---- */
  .pkgsum { padding: 20px; border-radius: 0; background: var(--gray); margin-bottom: 24px; }
  .pkgsum .bar { height: 14px; background: #fff; }
  .pkgcols { display: grid; gap: 16px; }
  @media (min-width: 768px) { .pkgcols { grid-template-columns: repeat(2, 1fr); } }
  @media (min-width: 1180px) { .pkgcols { grid-template-columns: repeat(4, 1fr); } }
  .pkgcol { padding: 22px; border-radius: 0; background: #fff; border: 1px solid var(--line); }
  .pkgcol__h { display: flex; align-items: center; gap: 10px; font-size: 1.05rem; margin-bottom: 12px; padding-bottom: 12px; border-bottom: 1px solid var(--line); }
  .pkgcol__h span { margin-left: auto; padding: 4px 9px; border-radius: 0; background: var(--ice); font-size: .78rem; color: var(--blue); }
  .pkgcol ul { display: grid; gap: 7px; font-size: .92rem; }
  .pkgcol li { padding-left: 14px; position: relative; }
  .pkgcol li::before { content: ''; position: absolute; left: 0; top: .62em; width: 5px; height: 5px; border-radius: 50%; background: var(--cyan); }

  /* ---- Anlaşmalı kurumlar ---- */
  .logos { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
  @media (min-width: 640px) { .logos { grid-template-columns: repeat(4, 1fr); } }
  @media (min-width: 1024px) { .logos { grid-template-columns: repeat(5, 1fr); } }
  .logos__item { aspect-ratio: 16 / 9; display: grid; place-items: center; padding: 14px 22px; border-radius: 0; background: #fff; border: 1px solid var(--line); margin: 0; }
  .logos__item img { max-height: 70px; width: auto; object-fit: contain; mix-blend-mode: multiply; }
  .inslist { margin-top: 48px; padding: clamp(20px, 3vw, 32px); border-radius: 0; background: var(--gray); }
  .inslist__head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 18px; }
  .inslist__head .dsearch { width: min(100%, 380px); }
  .inslist__ul { columns: 1; column-gap: 24px; }
  @media (min-width: 640px) { .inslist__ul { columns: 2; } }
  @media (min-width: 1024px) { .inslist__ul { columns: 3; } }
  .inslist__ul li { break-inside: avoid; display: grid; grid-template-columns: 20px 1fr; gap: 10px; padding: 10px 0; border-bottom: 1px solid var(--line); font-size: .94rem; }
  .inslist__ul .ico { width: 18px; height: 18px; color: var(--blue); margin-top: 3px; }

  .dfilter { display: grid; gap: 14px; margin-bottom: 32px; padding: 16px; border-radius: 0; background: var(--gray); }
  @media (min-width: 1024px) { .dfilter { grid-template-columns: 340px 1fr; align-items: center; } .dfilter .chips { margin: 0; } }
  .dfilter .chips { margin-bottom: 0; }

  /* ---- Hakkımızda ---- */
  .about__grid { display: grid; gap: 36px; }
  @media (min-width: 1024px) { .about__grid { grid-template-columns: 7fr 5fr; gap: 64px; align-items: start; } }
  .about__grid .counts { grid-template-columns: repeat(2, 1fr); margin-top: 0; }
  .vm__grid { display: grid; gap: 40px; }
  @media (min-width: 1024px) { .vm__grid { grid-template-columns: 1fr 1fr; gap: 48px 80px; } .vm__vals { grid-column: 1 / -1; } }
  .vm__q { font: 700 clamp(1.5rem, 1.2rem + 1.2vw, 2.2rem)/1.2 var(--f); color: #fff; letter-spacing: -.02em; }
  .vm__p { font-size: 1.06rem; color: #C8D6E8; }
  .vm__vals ul { display: flex; flex-wrap: wrap; gap: 10px; }
  .vm__vals li { padding: 10px 16px; border-radius: 0; background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .16); color: #E2EAF4; }
  .quote-fig { aspect-ratio: 3 / 3.6; max-width: 360px; }
  .quote-fig img { object-position: 50% 12%; }
  .quote p { font: 600 clamp(1.2rem, 1rem + .7vw, 1.6rem)/1.45 var(--f); color: var(--navy); }
  .quote p::before { content: '“'; color: var(--cyan); }
  .quote footer { margin: 14px 0 22px; color: var(--mute); font-size: .92rem; }
  .docs3 { display: grid; gap: 14px; }
  @media (min-width: 768px) { .docs3 { grid-template-columns: repeat(3, 1fr); } }
  .doc3 { display: grid; gap: 6px; align-content: start; padding: 26px; border-radius: 0; background: #fff; border: 1px solid var(--line); }
  .doc3 > .ico { width: 52px; height: 52px; padding: 13px; border-radius: 0; background: var(--ice); color: var(--blue); margin-bottom: 10px; }
  .doc3__img img { height: 60px; width: auto; margin-bottom: 8px; }
  .doc3 strong { font-size: 1.1rem; color: var(--navy); }
  .doc3 span { color: var(--mute); font-size: .92rem; }
  .doc3 a { color: var(--blue); }
  .corp { display: grid; grid-template-columns: 1fr; gap: 10px; }
  @media (min-width: 640px) { .corp { grid-template-columns: repeat(2, 1fr); } }
  @media (min-width: 1024px) { .corp { grid-template-columns: repeat(3, 1fr); } }
  .corp__a { display: flex; justify-content: space-between; align-items: center; padding: 18px 20px; border-radius: 0; background: var(--gray); font-weight: 700; color: var(--navy); text-decoration: none; transition: background .2s, color .2s; }
  .corp__a .ico { color: var(--blue); transition: transform .35s var(--spring); }
  .corp__a:hover { background: var(--navy); color: #fff; }
  .corp__a:hover .ico { color: var(--cyan); transform: translate(2px, -2px); }

  /* ---- İletişim ---- */
  .cgrid { display: grid; gap: 12px; grid-template-columns: 1fr; }
  @media (min-width: 640px) { .cgrid { grid-template-columns: repeat(2, 1fr); } }
  @media (min-width: 1024px) { .cgrid { grid-template-columns: repeat(3, 1fr); } }
  .ccard { display: grid; gap: 3px; padding: 22px; border-radius: 0; background: #fff; border: 1px solid var(--line); text-decoration: none; color: inherit; transition: box-shadow .3s, transform .4s var(--spring); }
  a.ccard:hover { box-shadow: var(--sh-2); transform: translateY(-3px); }
  .ccard > .ico { width: 46px; height: 46px; padding: 11px; border-radius: 0; background: var(--ice); color: var(--blue); margin-bottom: 10px; }
  .ccard__l { font-size: .82rem; color: var(--mute); }
  .ccard__v { font: 700 1.2rem/1.25 var(--f); color: var(--navy); overflow-wrap: anywhere; }
  .ask__side { display: grid; gap: 24px; align-content: start; }
  .ask__side .contact-card { margin-top: 0; }
  .social { display: flex; gap: 8px; }
  .social a { width: 42px; height: 42px; border-radius: 0; display: grid; place-items: center; background: rgba(255, 255, 255, .08); color: #fff; transition: background .2s; }
  .social a:hover { background: var(--cyan); }
  .social .ico { width: 18px; height: 18px; }
  .social--ink { margin-top: 24px; }
  .social--ink a { background: var(--ice); color: var(--blue); }
  .social--ink a:hover { background: var(--blue); color: #fff; }

  /* ---- Randevu sihirbazı ---- */
  .book { padding-block: clamp(24px, 3vw, 44px) var(--sec); background: linear-gradient(180deg, var(--gray) 0, var(--gray) 280px, #fff 280px); }
  .book__grid { display: grid; gap: 32px; }
  @media (min-width: 1024px) { .book__grid { grid-template-columns: minmax(0, 1fr) 360px; gap: 56px; align-items: start; } .book__side { position: sticky; top: calc(var(--hdr-h) + 24px); } }
  .book__title { font-size: var(--fs-h1); }
  .book__progress { display: flex; gap: 8px; margin: 24px 0 28px; overflow-x: auto; scrollbar-width: none; }
  .book__progress li { flex: 1; min-width: 90px; display: grid; gap: 6px; font-size: .82rem; font-weight: 600; color: var(--mute); padding-top: 12px; border-top: 4px solid var(--line); transition: border-color .3s, color .3s; }
  .book__progress li span { font-size: 1.1rem; font-weight: 700; }
  .book__progress li.is-done { border-color: var(--cyan); color: var(--navy); }
  .book__progress li[aria-current] { border-color: var(--navy); color: var(--navy); }
  .book__form { padding: clamp(20px, 3vw, 32px); border-radius: 0; background: #fff; border: 1px solid var(--line); box-shadow: var(--sh-1); }
  .bstep { border: 0; padding: 0; margin: 0; min-width: 0; display: grid; gap: 16px; }
  .bstep__h { font: 700 var(--fs-h3)/1.2 var(--f); color: var(--navy); margin-bottom: 6px; padding: 0; }
  .bstep__note { display: flex; gap: 10px; align-items: flex-start; font-size: .86rem; color: var(--mute); }
  .bstep__note .ico { width: 18px; height: 18px; margin-top: 2px; color: var(--blue); }
  .bstep > .field__err { display: none; }
  .bstep.is-invalid > .field__err { display: block; }
  .opts { display: grid; gap: 10px; }
  .opts--dept { grid-template-columns: repeat(auto-fill, minmax(min(100%, 210px), 1fr)); }
  .opts--doc { grid-template-columns: repeat(auto-fill, minmax(min(100%, 230px), 1fr)); }
  .opt { position: relative; }
  .opt input { position: absolute; opacity: 0; inset: 0; cursor: pointer; }
  .opt__in { display: flex; align-items: center; gap: 12px; min-height: 62px; padding: 12px 14px; border-radius: 0; border: 1px solid var(--line-2); background: #fff; font-weight: 600; color: var(--navy); transition: all .2s; line-height: 1.3; }
  .opt__in > .ico { width: 38px; height: 38px; padding: 9px; border-radius: 0; background: var(--ice); color: var(--blue); }
  .opt__in img { width: 48px; height: 56px; border-radius: 0; object-fit: cover; object-position: 50% 10%; flex: none; background: var(--ice); }
  .opt__in small { display: block; color: var(--mute); font-weight: 400; font-size: .8rem; }
  .opt:hover .opt__in { border-color: var(--blue); }
  .opt input:checked + .opt__in { border-color: var(--navy); background: var(--navy); color: #fff; box-shadow: var(--sh-1); }
  .opt input:checked + .opt__in small { color: #A9BBD3; }
  .opt input:checked + .opt__in > .ico { background: rgba(41, 177, 218, .2); color: var(--cyan); }
  .opt input:focus-visible + .opt__in { outline: 2px solid var(--cyan); outline-offset: 2px; }
  .days { display: grid; grid-auto-flow: column; grid-auto-columns: 78px; gap: 8px; overflow-x: auto; padding-bottom: 6px; scrollbar-width: thin; }
  .day { position: relative; }
  .day input, .slot input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
  .day span { display: grid; justify-items: center; gap: 2px; padding: 12px 6px; border-radius: 0; border: 1px solid var(--line-2); background: #fff; transition: all .2s; }
  .day b { font-size: 1.5rem; color: var(--navy); }
  .day small { font-size: .72rem; color: var(--mute); text-transform: uppercase; letter-spacing: .06em; }
  .day input:checked + span { background: var(--navy); border-color: var(--navy); }
  .day input:checked + span b { color: #fff; }
  .day input:checked + span small { color: var(--cyan); }
  .day input:focus-visible + span, .slot input:focus-visible + span { outline: 2px solid var(--cyan); outline-offset: 2px; }
  .slots { display: grid; grid-template-columns: repeat(auto-fill, minmax(82px, 1fr)); gap: 8px; }
  .slot { position: relative; }
  .slot span { display: block; text-align: center; padding: 11px 0; border-radius: 0; border: 1px solid var(--line-2); background: #fff; font-variant-numeric: tabular-nums; font-weight: 600; transition: all .2s; }
  .slot input:checked + span { background: var(--blue); color: #fff; border-color: var(--blue); }
  .slot input:disabled + span { opacity: .35; text-decoration: line-through; cursor: not-allowed; }
  .book__nav { display: flex; gap: 10px; justify-content: space-between; margin-top: 10px; padding-top: 20px; border-top: 1px solid var(--line); }
  .book__nav [data-next], .book__nav [data-submit] { margin-left: auto; }
  .book__ok { padding: 36px 0; }
  .book__ok p { color: var(--mute); max-width: 52ch; margin-top: 10px; }
  .sum { padding: 22px; border-radius: 0; background: #fff; border: 1px solid var(--line); box-shadow: var(--sh-1); }
  .sum + .sum { margin-top: 14px; }
  .sum__h { font: 700 .76rem/1 var(--f); letter-spacing: .1em; text-transform: uppercase; color: var(--blue); margin-bottom: 12px; }
  .sum dl div { display: flex; justify-content: space-between; gap: 16px; padding: 10px 0; border-bottom: 1px solid var(--line); font-size: .93rem; }
  .sum dt { color: var(--mute); }
  .sum dd { text-align: right; font-weight: 600; color: var(--navy); }
  .sum__ctx { margin-top: 12px; font-size: .86rem; color: var(--blue); font-weight: 600; }
  .sum--alt { background: linear-gradient(135deg, var(--navy), #164B84); color: #fff; border: 0; }
  .sum--alt .sum__h { color: #8FD8F0; }
  .sum__tel { display: block; font: 700 2rem/1 var(--f); color: #fff; text-decoration: none; margin-bottom: 14px; }
  .sum--alt .btn--ghost { --c: #fff; --bd: rgba(255, 255, 255, .3); }
  .sum__note { font-size: .8rem; color: #A9BBD3; margin-top: 12px; }

  .bigsearch { margin-top: 22px; max-width: 760px; }
  .search-count { margin-top: 18px; color: var(--mute); }
  .nf { padding-block: clamp(40px, 7vw, 100px); }
  .nf__in { display: grid; gap: 4px; }
  .nf__code { font: 800 clamp(5rem, 3rem + 10vw, 11rem)/.9 var(--f); color: var(--ice-2); letter-spacing: -.04em; }
  .nf .corp { margin-top: 48px; }
}

/* ========================================================================== */
/* Footer                                                                     */
@layer components {
  .ftr { background: var(--navy-deep); color: #A9BBD3; padding-top: clamp(48px, 6vw, 80px); }
  .ftr__top { display: grid; gap: 24px; padding-bottom: 36px; border-bottom: 1px solid rgba(255, 255, 255, .1); }
  @media (min-width: 1024px) { .ftr__top { grid-template-columns: 1fr auto; align-items: center; } }
  .ftr__brand { display: grid; gap: 14px; justify-items: start; }
  .ftr__brand p { max-width: 46ch; font-size: .92rem; }
  .ftr__cta { display: flex; flex-wrap: wrap; align-items: center; gap: 18px; }
  .ftr__phone { display: inline-flex; align-items: center; gap: 12px; color: #fff; text-decoration: none; }
  .ftr__phone > .ico { width: 46px; height: 46px; padding: 12px; border-radius: 0; background: rgba(41, 177, 218, .18); color: var(--cyan); }
  .ftr__phone span { display: grid; font: 700 1.6rem/1.1 var(--f); }
  .ftr__phone small { font: 500 .76rem/1.2 var(--f); color: #A9BBD3; }
  .ftr__grid { display: grid; gap: 32px 20px; padding-block: 40px; grid-template-columns: repeat(2, 1fr); }
  @media (min-width: 768px) { .ftr__grid { grid-template-columns: repeat(3, 1fr); } }
  @media (min-width: 1180px) { .ftr__grid { grid-template-columns: repeat(4, 1fr) 1.3fr; } }
  .ftr__contact { grid-column: 1 / -1; }
  @media (min-width: 1180px) { .ftr__contact { grid-column: auto; } }
  .ftr__h { font: 700 .82rem/1 var(--f); color: var(--cyan); margin-bottom: 14px; }
  .ftr__col ul { display: grid; gap: 2px; }
  .ftr__col a { display: inline-block; padding: 4px 0; font-size: .88rem; color: #C8D6E8; text-decoration: none; transition: color .2s; }
  .ftr__col a:hover { color: #fff; }
  .ftr address { display: grid; gap: 10px; margin-bottom: 18px; }
  .ftr address > * { display: grid; grid-template-columns: 20px 1fr; gap: 10px; font-size: .88rem; color: #C8D6E8; text-decoration: none; }
  .ftr address .ico { width: 18px; height: 18px; margin-top: 2px; color: var(--cyan); }
  .ftr__legal { display: grid; gap: 16px; padding-block: 22px calc(28px + env(safe-area-inset-bottom)); border-top: 1px solid rgba(255, 255, 255, .1); font-size: .8rem; }
  @media (min-width: 1024px) { .ftr__legal { grid-template-columns: 1.4fr 1fr auto; align-items: center; gap: 28px; } }
  .ftr__org { display: flex; gap: 16px; align-items: center; }
  .ftr__parent { flex: none; padding: 7px 11px; border-radius: 0; background: #fff; }
  .ftr__parent img { height: 24px; width: auto; }
  .ftr__note { color: #8497B3; }
  .ftr__links { display: flex; flex-wrap: wrap; gap: 6px 16px; }
  .ftr__links a, .ftr__links button { text-decoration: none; color: #C8D6E8; font-size: .8rem; }
  .ftr__links a:hover, .ftr__links button:hover { color: #fff; }
}

/* ========================================================================== */
/* Yüzen tek buton                                                            */
@layer components {
  .fab {
    --r: 120px; --s: 62px;
    position: fixed; z-index: 60; right: max(16px, env(safe-area-inset-right)); bottom: calc(max(16px, env(safe-area-inset-bottom)) + var(--consent-h, 0px));
    width: var(--s); height: var(--s); view-transition-name: fab; transition: bottom .4s var(--ease-out), opacity .3s;
  }
  @media (min-width: 1024px) { .fab { --r: 132px; --s: 66px; right: 28px; bottom: calc(28px + var(--consent-h, 0px)); } }
  .fab__scrim { position: fixed; inset: 0; z-index: 0; background: linear-gradient(300deg, rgba(10, 28, 61, .55), rgba(10, 28, 61, .12) 60%); opacity: 0; pointer-events: none; transition: opacity .35s; }
  .fab.is-open .fab__scrim { opacity: 1; pointer-events: auto; }
  .fab__main { position: relative; z-index: 3; width: 100%; height: 100%; border-radius: 50%; display: grid; place-items: center; background: linear-gradient(135deg, var(--blue), var(--navy)); color: #fff; box-shadow: 0 14px 30px -10px rgba(16, 42, 86, .7); transition: transform .5s var(--spring); }
  .fab__main:hover { transform: scale(1.06); }
  .fab__main:active { transform: scale(.94); }
  .fab.is-open .fab__main { background: var(--navy); }
  .fab__ico { position: absolute; width: 26px; height: 26px; transition: transform .5s var(--spring), opacity .25s; }
  .fab__ico--close { opacity: 0; transform: rotate(-90deg) scale(.5); }
  .fab.is-open .fab__ico--open { opacity: 0; transform: rotate(90deg) scale(.5); }
  .fab.is-open .fab__ico--close { opacity: 1; transform: none; }
  .fab__ring { position: absolute; inset: 0; border-radius: 50%; border: 2px solid var(--cyan); opacity: 0; animation: fab-ring 5s var(--ease-out) infinite; pointer-events: none; }
  .fab__ring + .fab__ring { animation-delay: 1.1s; }
  @keyframes fab-ring { 0% { transform: scale(1); opacity: .8; } 60%, 100% { transform: scale(2.1); opacity: 0; } }
  .fab.is-open .fab__ring { animation: none; }
  /* Açılınca: öğeler butondan kayarak çıkar, okunur kartlar hâlinde üst üste dizilir */
  .fab__menu {
    position: absolute; z-index: 2; right: 0; bottom: calc(100% + 14px); margin: 0; padding: 0; list-style: none;
    display: flex; flex-direction: column-reverse; align-items: flex-end; gap: 10px; width: max-content; max-width: calc(100vw - 32px);
  }
  .fab__menu li {
    transform-origin: 100% 100%; opacity: 0;
    transform: translate3d(calc(var(--s) * -.1), calc((var(--i) + 1) * 46px), 0) scale(.55);
    transition: transform .35s var(--ease-out), opacity .2s; transition-delay: calc((4 - var(--i)) * 25ms);
  }
  .fab.is-open .fab__menu li { opacity: 1; transform: none; transition: transform .7s var(--spring), opacity .3s; transition-delay: calc(var(--i) * 60ms); }
  .fab__head { padding: 0 6px 2px; font: 700 .82rem/1.2 var(--f); color: #fff; text-shadow: 0 1px 10px rgba(10, 28, 61, .5); }
  .fab__item {
    display: flex; align-items: center; gap: 12px; width: min(300px, calc(100vw - 32px)); padding: 9px 14px 9px 9px; border-radius: 0;
    background: #fff; color: var(--navy); text-align: left; text-decoration: none; border: 1px solid rgba(255, 255, 255, .7);
    box-shadow: 0 18px 40px -18px rgba(10, 28, 61, .65), 0 2px 6px rgba(10, 28, 61, .08);
    transition: transform .4s var(--spring), box-shadow .25s, background .2s;
  }
  .fab__item:hover, .fab__item:focus-visible { transform: translateX(-4px); box-shadow: 0 22px 44px -16px rgba(10, 28, 61, .7); }
  .fab__ico-box { flex: none; width: 46px; height: 46px; border-radius: 0; display: grid; place-items: center; color: #fff; }
  .fab__ico-box .ico { width: 24px; height: 24px; }
  .fab__item--randevu .fab__ico-box { background: linear-gradient(135deg, var(--blue), var(--navy)); }
  .fab__item--wa .fab__ico-box { background: var(--wa); }
  .fab__item--chat .fab__ico-box { background: var(--cyan); }
  .fab__item--ms .fab__ico-box { background: radial-gradient(circle at 30% 110%, #FF6968 0, #A334FA 45%, #0695FF 100%); }
  .fab__txt { display: grid; gap: 2px; min-width: 0; }
  .fab__txt strong { font: 700 .98rem/1.2 var(--f); }
  .fab__txt small { font-size: .8rem; color: var(--mute); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .fab__go { margin-left: auto; width: 18px; height: 18px; color: var(--mute-2); transition: transform .3s, color .2s; }
  .fab__item:hover .fab__go { color: var(--blue); transform: translateX(3px); }
  .fab__hint { position: absolute; right: calc(100% + 12px); top: 50%; translate: 8px -50%; white-space: nowrap; padding: 9px 14px; border-radius: 0; background: var(--navy); color: #fff; font: 700 .82rem/1 var(--f); opacity: 0; pointer-events: none; transition: opacity .25s, translate .35s var(--ease-out); }
  @media (hover: hover) { .fab:not(.is-open) .fab__main:hover + .fab__hint { opacity: 1; translate: 0 -50%; } }
  body:has(.chat:not([hidden])) .fab, body:has(dialog[open]) .fab { opacity: 0; pointer-events: none; }

  /* Hızlı randevu penceresi */
  .sheet { width: min(580px, 100% - 32px); max-height: min(92dvh, 820px); padding: 0; border: 0; border-radius: 0; background: #fff; box-shadow: 0 40px 80px -20px rgba(10, 28, 61, .5); overflow: auto; overscroll-behavior: contain; opacity: 0; translate: 0 24px; transition: opacity .3s, translate .5s var(--ease-out), display .5s allow-discrete, overlay .5s allow-discrete; }
  .sheet[open] { opacity: 1; translate: 0 0; }
  @starting-style { .sheet[open] { opacity: 0; translate: 0 24px; } }
  .sheet::backdrop { background: rgba(10, 28, 61, 0); transition: background .35s, display .35s allow-discrete, overlay .35s allow-discrete; }
  .sheet[open]::backdrop { background: rgba(10, 28, 61, .5); backdrop-filter: blur(4px); }
  @starting-style { .sheet[open]::backdrop { background: rgba(10, 28, 61, 0); } }
  @media (max-width: 639px) {
    .sheet { margin: auto 0 0; width: 100%; max-width: 100%; border-radius: 0; translate: 0 100%; padding-bottom: env(safe-area-inset-bottom); }
    .sheet[open] { translate: 0 0; }
    @starting-style { .sheet[open] { translate: 0 100%; } }
  }
  .sheet__grab { width: 44px; height: 5px; border-radius: 0; background: var(--line-2); margin: 10px auto 0; }
  @media (min-width: 640px) { .sheet__grab { display: none; } }
  .sheet__x { position: absolute; right: 16px; top: 16px; z-index: 2; }
  .sheet__body { padding: 26px clamp(20px, 4vw, 34px) 30px; }
  .sheet__title { font-size: clamp(1.35rem, 1.15rem + .8vw, 1.75rem); margin-bottom: 22px; padding-right: 44px; }

  /* Canlı yardım */
  .chat { position: fixed; z-index: 65; right: 12px; left: 12px; bottom: calc(12px + env(safe-area-inset-bottom)); height: min(72dvh, 600px); display: grid; grid-template-rows: auto 1fr auto auto; border-radius: 0; background: #fff; box-shadow: 0 30px 70px -20px rgba(10, 28, 61, .55); overflow: hidden; animation: chat-in .5s var(--ease-out); }
  @media (min-width: 640px) { .chat { left: auto; right: 28px; bottom: 28px; width: 390px; } }
  @keyframes chat-in { from { opacity: 0; transform: translateY(16px) scale(.96); } }
  .chat__head { display: flex; align-items: center; gap: 12px; padding: 14px 14px 14px 16px; background: linear-gradient(135deg, var(--navy), #164B84); color: #fff; }
  .chat__head .icon-btn { margin-left: auto; background: transparent; border-color: rgba(255, 255, 255, .25); color: #fff; }
  .chat__av { width: 42px; height: 42px; border-radius: 0; display: grid; place-items: center; background: var(--cyan); font: 800 1.2rem/1 var(--f); }
  .chat__title { font-weight: 700; }
  .chat__sub { font-size: .78rem; color: #A9BBD3; }
  .chat__log { overflow-y: auto; padding: 16px; display: flex; flex-direction: column; gap: 10px; background: var(--gray); }
  .msg { max-width: 85%; padding: 11px 14px; border-radius: 0; font-size: .92rem; line-height: 1.45; animation: msg-in .35s var(--ease-out); }
  @keyframes msg-in { from { opacity: 0; transform: translateY(6px); } }
  .msg--bot { background: #fff; border: 1px solid var(--line); border-bottom-left-radius: 0; }
  .msg--me { align-self: flex-end; background: var(--blue); color: #fff; border-bottom-right-radius: 0; }
  .msg a { color: inherit; font-weight: 700; }
  .msg--typing { display: flex; gap: 4px; }
  .msg--typing i { width: 6px; height: 6px; border-radius: 50%; background: var(--mute-2); animation: dot 1.2s infinite; }
  .msg--typing i:nth-child(2) { animation-delay: .15s; } .msg--typing i:nth-child(3) { animation-delay: .3s; }
  @keyframes dot { 30% { transform: translateY(-4px); opacity: .5; } }
  .chat__quick { display: flex; gap: 6px; overflow-x: auto; padding: 10px 12px 2px; scrollbar-width: none; background: var(--gray); }
  .chat__quick button { flex: none; padding: 8px 12px; border-radius: 0; border: 1px solid var(--line-2); background: #fff; font-size: .82rem; font-weight: 600; color: var(--navy); }
  .chat__quick button:hover { border-color: var(--blue); color: var(--blue); }
  .chat__form { display: flex; gap: 8px; padding: 10px 12px 12px; background: var(--gray); }
  .chat__form input { flex: 1; min-height: 46px; padding: 0 16px; border-radius: 0; border: 1px solid var(--line-2); background: #fff; }
  .chat__form input:focus { outline: none; border-color: var(--blue); }
  .chat__form .icon-btn { background: var(--blue); color: #fff; border-color: var(--blue); }

  /* Arama penceresi */
  .search { width: min(720px, 100% - 24px); margin: 10vh auto auto; padding: 0; border: 0; border-radius: 0; background: #fff; box-shadow: 0 40px 80px -20px rgba(10, 28, 61, .5); opacity: 0; translate: 0 -12px; transition: opacity .25s, translate .4s var(--ease-out), display .4s allow-discrete, overlay .4s allow-discrete; }
  .search[open] { opacity: 1; translate: 0 0; }
  @starting-style { .search[open] { opacity: 0; translate: 0 -12px; } }
  .search::backdrop { background: rgba(10, 28, 61, .45); backdrop-filter: blur(4px); }
  .search__box { display: flex; align-items: center; gap: 12px; padding: 8px 12px 8px 20px; border-bottom: 1px solid var(--line); }
  .search__box > .ico { width: 22px; height: 22px; color: var(--blue); }
  .search__box input { flex: 1; min-height: 58px; border: 0; font-size: 1.1rem; background: transparent; }
  .search__box input:focus { outline: none; }
  .search__esc { font: 700 .72rem/1 var(--f); padding: 7px 9px; border: 1px solid var(--line); border-radius: 0; color: var(--mute); }
  .search__res { max-height: 56vh; overflow: auto; padding: 8px; }
  .search__res:empty { display: none; }
  .search__res a { display: grid; grid-template-columns: 1fr auto; gap: 2px 16px; padding: 12px 14px; border-radius: 0; text-decoration: none; }
  .search__res a:hover, .search__res a.is-active { background: var(--ice); }
  .search__res strong { font-weight: 700; color: var(--navy); }
  .search__res small { grid-column: 1; color: var(--mute); font-size: .82rem; }
  .search__res em { grid-row: 1 / 3; grid-column: 2; align-self: center; font: 700 .66rem/1 var(--f); letter-spacing: .1em; text-transform: uppercase; color: var(--blue); }
  .search__res mark { background: var(--ice-2); color: inherit; border-radius: 0; }
  .search__res--page { max-height: none; padding: 0; margin-top: 12px; }
  .search__hint { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; padding: 16px 20px 20px; font-size: .85rem; color: var(--mute); }
  .search__hint a { padding: 7px 12px; border-radius: 0; background: var(--ice); color: var(--blue); font-weight: 600; text-decoration: none; }

  /* Çerez bandı */
  .consent { position: fixed; z-index: 58; left: 12px; right: 12px; bottom: 12px; display: grid; gap: 12px; padding: 18px; border-radius: 0; background: #fff; border: 1px solid var(--line); box-shadow: 0 20px 50px -16px rgba(10, 28, 61, .4); font-size: .86rem; color: var(--mute); }
  @media (min-width: 768px) { .consent { right: auto; max-width: 430px; left: 24px; bottom: 24px; } }
  .consent a { color: var(--blue); }
  .consent__btns { display: flex; gap: 8px; justify-content: flex-end; }
}

/* ========================================================================== */
/* Hareket                                                                    */
@layer motion {
  .js [data-reveal] { opacity: 0; transform: translate3d(0, 24px, 0); transition: opacity .8s var(--ease-out), transform 1s var(--ease-out); transition-delay: calc(var(--i, 0) * 70ms); }
  .js [data-reveal].is-in { opacity: 1; transform: none; }
  .js .bar__seg { transform: scaleX(0); transition: transform 1.1s var(--ease-out); }
  .js .is-in .bar__seg, .js .bar.is-in .bar__seg { transform: none; }
  @supports (animation-timeline: scroll()) {
    .scroll-progress { animation: progress linear both; animation-timeline: scroll(root); }
    @keyframes progress { to { transform: scaleX(1); } }
  }
  ::view-transition-old(root) { animation: vt-out .25s var(--ease) both; }
  ::view-transition-new(root) { animation: vt-in .45s var(--ease-out) both; }
  @keyframes vt-out { to { opacity: 0; } }
  @keyframes vt-in { from { opacity: 0; transform: translateY(10px); } }
  @media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; transition-delay: 0s !important; }
    .js [data-reveal] { opacity: 1; transform: none; }
    .hero__img img, [data-parallax] img { transform: none !important; }
    .js .hero__slide .hero__txt > * { opacity: 1; transform: none; }
    .marquee__track { animation: none; flex-wrap: wrap; width: auto; }
  }
}
@media (prefers-reduced-motion: reduce) { @view-transition { navigation: none; } }
