@charset "UTF-8";
/*!
 * Solimpeks — main.css
 * Mevcut solimpeks.com.tr tasarımının birebir HTML prototipi.
 * WordPress temasına dönüştürülmek üzere hazırlanmıştır.
 *
 * İÇİNDEKİLER
 *  01. Tokens
 *  02. Reset & Base
 *  03. Layout
 *  04. Yardımcı sınıflar
 *  05. Bileşenler
 *  06. Header / Navigasyon
 *  07. Hero
 *  08. Giriş bölümü
 *  09. Ürün grupları
 *  10. Showcase
 *  11. Isı pompası
 *  12. Referanslar
 *  13. Footer
 *  14. Sabit öğeler
 *  15. Responsive
 */

@import url("../fonts/fonts.css");

/* ==========================================================================
   01. TOKENS  — ölçümler _research/DESIGN-TOKENS.md
   ========================================================================== */

:root {
  /* Marka renkleri */
  --soli-blue: #0076c0;
  --soli-blue-600: #1389d3;
  --soli-blue-400: #0d85d0;
  --soli-blue-300: #4aa7e2;
  --soli-navy: #1e3e62;
  --soli-tint: #f0f7ff;
  --soli-yellow: #f7cf07;
  --soli-orange: #ef7d00;

  /* Nötr */
  --soli-ink: #101621;
  --soli-ink-2: #222222;
  --soli-muted: #657078;
  --soli-line: #e6eaee;
  --soli-surface: #ffffff;
  --soli-surface-2: #fafafa;
  --soli-surface-3: #f2f6f9;

  /* Cam katman (mavi zemin üstü) */
  --soli-glass: rgba(255, 255, 255, 0.11);
  --soli-on-blue-soft: rgba(255, 255, 255, 0.5);
}

:root {
  /* Tipografi */
  /* Tek kurumsal aile — IBM Plex Sans.
     --soli-font-display geriye donuk uyumluluk icin duruyor, ayni aileyi
     isaret ediyor. Bkz. DESIGN-ISSUES.md B1. */
  --soli-font-sans: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --soli-font-display: var(--soli-font-sans);

  --soli-fs-display: clamp(2.75rem, 1rem + 5.4vw, 5.625rem);   /* 44 → 90 */
  /* Mobilde olculen degerler: h1 50.4px, logo 265px genislik */
  --soli-fs-h1: clamp(3.15rem, 2.86rem + 1.2vw, 3.9375rem);   /* 50.4 → 63 */
  --soli-fs-h2: clamp(1.75rem, 1rem + 2.4vw, 3.125rem);        /* 28 → 50 */
  --soli-fs-h2-lg: clamp(2rem, 1rem + 3.2vw, 4rem);            /* 32 → 64 */
  --soli-fs-h3: clamp(1.375rem, 1.1rem + 0.9vw, 1.75rem);      /* 22 → 28 */
  --soli-fs-h4: 1.125rem;                                       /* 18 */
  --soli-fs-lead: 1.125rem;                                     /* 18 */
  --soli-fs-body: 1rem;                                         /* 16 */
  --soli-fs-sm: 0.9375rem;                                      /* 15 */
  --soli-fs-xs: 0.875rem;                                       /* 14 */

  --soli-lh-tight: 1.1;
  --soli-lh-heading: 1.24;
  --soli-lh-body: 1.6;
  --soli-ls-label: 0.235em;

  /* Geometri */
  --soli-radius: 16px;
  --soli-radius-sm: 8px;
  --soli-radius-lg: 20px;
  --soli-radius-pill: 999px;

  /* Düzen */
  --soli-container: 1210px;
  --soli-container-wide: 1310px;
  --soli-measure: 720px;
  --soli-gutter: clamp(1.25rem, 0.5rem + 2.5vw, 3.5rem);
  --soli-header-h: 90px;

  /* Ritim */
  --soli-s1: 8px;   --soli-s2: 16px;  --soli-s3: 24px;  --soli-s4: 32px;
  --soli-s5: 48px;  --soli-s6: 64px;  --soli-s7: 96px;  --soli-s8: 128px;

  /* Gölge */
  --soli-shadow-sm: 0 2px 8px rgba(16, 22, 33, 0.06);
  --soli-shadow: 0 8px 30px rgba(16, 22, 33, 0.08);
  --soli-shadow-lg: 0 18px 50px rgba(16, 22, 33, 0.12);

  /* Hareket */
  --soli-ease: cubic-bezier(0.4, 0, 0.2, 1);
  --soli-dur: 0.3s;

  /* Katmanlar */
  --soli-z-header: 100;
  --soli-z-drawer: 200;
  --soli-z-fixed: 90;
}

/* ==========================================================================
   02. RESET & BASE
   ========================================================================== */

*,
*::before,
*::after { box-sizing: border-box; }

html {
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--soli-header-h) + 16px);
}

body {
  margin: 0;
  font-family: var(--soli-font-sans);
  font-size: var(--soli-fs-body);
  line-height: var(--soli-lh-body);
  color: var(--soli-ink);
  background: var(--soli-surface);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
}

body.is-locked { overflow: hidden; }

/* Sabit header icin yer birakilir; hero negatif margin ile altina girer */
body { padding-top: var(--soli-header-h); }

h1, h2, h3, h4, h5, h6 {
  margin: 0;
  font-weight: 600;
  line-height: var(--soli-lh-heading);
  color: var(--soli-ink);
  text-wrap: balance;
}

p { margin: 0 0 1em; }
p:last-child { margin-bottom: 0; }

a {
  color: var(--soli-blue);
  text-decoration: none;
  transition: color var(--soli-dur) var(--soli-ease);
}
a:hover { color: var(--soli-blue-600); }

img, svg, video { display: block; max-width: 100%; height: auto; }

ul, ol { margin: 0; padding: 0; list-style: none; }

button {
  font: inherit;
  color: inherit;
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
}

:focus-visible {
  outline: 3px solid var(--soli-blue-300);
  outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* ==========================================================================
   03. LAYOUT
   ========================================================================== */

.soli-container {
  width: 100%;
  max-width: calc(var(--soli-container) + var(--soli-gutter) * 2);
  margin-inline: auto;
  padding-inline: var(--soli-gutter);
}

.soli-container--wide {
  max-width: calc(var(--soli-container-wide) + var(--soli-gutter) * 2);
}

.soli-container--narrow {
  max-width: calc(var(--soli-measure) + var(--soli-gutter) * 2);
}

.soli-section {
  padding-block: clamp(3rem, 1.5rem + 5vw, 7rem);
}
/* Canli olculere gore bolum bosluklari */
.soli-section.soli-hp { padding-top: clamp(2.5rem, 1rem + 6vw, 125px); }

.soli-section--tight { padding-block: clamp(2rem, 1rem + 3vw, 4rem); }
.soli-section--tight.soli-groups { padding-bottom: clamp(1.5rem, 0.5rem + 4.7vw, 76px); }
.soli-section--tight.soli-groups { padding-top: clamp(1.5rem, 0.5rem + 7.6vw, 132px); }   /* canli olcum */
.soli-section--blue  { background: var(--soli-blue); color: #fff; }
.soli-section--tint  { background: var(--soli-tint); }
.soli-section--flush { padding-block: 0; }

.soli-section--blue :is(h1, h2, h3, h4, h5, h6) { color: #fff; }

/* ==========================================================================
   04. YARDIMCI SINIFLAR
   ========================================================================== */

.soli-visually-hidden {
  position: absolute;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}

.soli-skip-link {
  position: absolute;
  top: 0; left: 50%;
  transform: translate(-50%, -120%);
  z-index: 999;
  padding: 12px 24px;
  background: var(--soli-blue);
  color: #fff;
  border-radius: 0 0 var(--soli-radius-sm) var(--soli-radius-sm);
  transition: transform var(--soli-dur) var(--soli-ease);
}
.soli-skip-link:focus { transform: translate(-50%, 0); color: #fff; }

.soli-eyebrow {
  display: block;
  font-size: var(--soli-fs-sm);
  font-weight: 500;
  letter-spacing: var(--soli-ls-label);
  text-transform: uppercase;
  color: var(--soli-blue);
  margin-bottom: var(--soli-s2);
}

.soli-section--blue .soli-eyebrow { color: rgba(255, 255, 255, 0.72); }

/* ==========================================================================
   05. BİLEŞENLER
   ========================================================================== */

/* --- Butonlar --- */
.soli-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 14px 28px;
  font-size: var(--soli-fs-xs);
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  border-radius: var(--soli-radius-pill);
  transition: background-color var(--soli-dur) var(--soli-ease),
              color var(--soli-dur) var(--soli-ease),
              transform var(--soli-dur) var(--soli-ease);
}
.soli-btn:hover { transform: translateY(-2px); }

.soli-btn--white { background: #fff; color: var(--soli-ink); }
.soli-btn--white:hover { color: var(--soli-blue); }

.soli-btn--blue { background: var(--soli-blue); color: #fff; }
.soli-btn--blue:hover { background: var(--soli-blue-600); color: #fff; }

.soli-btn--navy { background: var(--soli-navy); color: #fff; }
.soli-btn--navy:hover { background: var(--soli-ink); color: #fff; }

.soli-btn--dark { background: var(--soli-ink); color: #fff; }
.soli-btn--yellow { background: var(--soli-yellow); color: var(--soli-ink); }

.soli-btn--square { border-radius: var(--soli-radius-sm); }

/* Yuvarlak ok butonu */
.soli-btn-circle {
  display: inline-grid;
  place-items: center;
  width: 48px; height: 48px;
  border-radius: 50%;
  background: var(--soli-blue);
  color: #fff;
  flex: 0 0 auto;
  transition: background-color var(--soli-dur) var(--soli-ease),
              transform var(--soli-dur) var(--soli-ease);
}
.soli-btn-circle:hover { background: var(--soli-blue-600); color: #fff; transform: scale(1.06); }
.soli-btn-circle--orange { background: var(--soli-orange); }
.soli-btn-circle--orange:hover { background: #d96f00; }
.soli-btn-circle .soli-icon { width: 20px; height: 20px; }

/* CTA çifti: pill + yuvarlak ok */
.soli-cta-pair { display: inline-flex; align-items: center; gap: var(--soli-s2); }

/* --- İkon --- */
.soli-icon {
  width: 24px; height: 24px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  flex: 0 0 auto;
}
.soli-icon--fill { fill: currentColor; stroke: none; }

/* --- Hayalet başlık (mevcut sitedeki dev arka plan metni) --- */
.soli-ghost {
  position: relative;
  display: block;
  text-align: center;
}
.soli-ghost__bg {
  position: absolute;
  inset-inline: 0;
  top: 50%;
  translate: 0 -50%;
  /* Canli sitede olculdu: Cormorant Upright, 45px @390 -> 115px @1440, #F6F3EF */
  font-family: var(--soli-font-display);
  font-size: clamp(2.8125rem, 1.19rem + 6.67vw, 7.1875rem);
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.01em;
  color: #f6f3ef;
  white-space: nowrap;
  pointer-events: none;
  user-select: none;
}
.soli-ghost__bg--sand { color: #f6f3ef; }
.soli-ghost__bg--onblue { color: rgba(255, 255, 255, 0.12); }
.soli-ghost > :not(.soli-ghost__bg) { position: relative; }

/* --- Dönen rozet --- */
.soli-badge {
  position: relative;
  display: grid;
  place-items: center;
  width: 200px; height: 200px;          /* canli: 200x200 */
  border-radius: 50%;
  background: #fff;
}
.soli-badge__ring { position: absolute; inset: 0; animation: soli-spin 22s linear infinite; }
.soli-badge__ring text {
  font-family: var(--soli-font-sans);
  font-size: 15px;                      /* canli: 15px / ls 5px / w600 */
  font-weight: 600;
  letter-spacing: 5px;
  fill: #000;
}
.soli-badge__core {
  position: relative;
  display: grid; place-items: center;
  width: 60px; height: 60px;          /* canli: 60x60 */
  border-radius: 50%;
  background: var(--soli-blue);
  color: #fff;
  transition: background-color 0.35s var(--soli-ease),
              scale 0.35s var(--soli-ease),
              box-shadow 0.35s var(--soli-ease);
}
.soli-badge__core .soli-icon {
  position: relative;
  z-index: 1;                 /* yayilan halkanin uzerinde kalsin */
  transition: translate 0.35s var(--soli-ease),
              scale 0.35s var(--soli-ease);
}

/* Yayilan halka — hover'da disari dogru acilir */
.soli-badge__core::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 2px solid var(--soli-blue);
  opacity: 0;
  scale: 1;
  transition: scale 0.55s var(--soli-ease), opacity 0.55s var(--soli-ease);
  pointer-events: none;
}

/* Hover: buton buyur, koyulasir, ok saga kayar, halka acilir */
/* NOT: global "a:hover" kurali (0,1,1) bu ogenin beyaz rengini eziyordu ve
   ok ikonu arka planla ayni maviye donup kayboluyordu. Renk burada sabitlendi. */
.soli-badge:hover .soli-badge__core,
.soli-badge__core:hover,
.soli-badge__core:focus-visible {
  background: var(--soli-blue-600);
  color: #fff;
  scale: 1.12;
  box-shadow: 0 8px 24px rgba(0, 118, 192, 0.38);
}
/* Ok hem buyur hem saga kayar. Daire zaten 1.12 olceklendigi icin
   okun toplam buyumesi 1.12 x 1.2 = ~1.34 olur. */
.soli-badge:hover .soli-badge__core .soli-icon,
.soli-badge__core:hover .soli-icon,
.soli-badge__core:focus-visible .soli-icon { translate: 3px 0; scale: 1.2; }

.soli-badge:hover .soli-badge__core::before,
.soli-badge__core:focus-visible::before { scale: 1.7; opacity: 0; animation: soli-halka 1.4s var(--soli-ease) infinite; }

/* Hover'da donen yazi hizlanir */
.soli-badge:hover .soli-badge__ring { animation-duration: 9s; }
.soli-badge__ring { transition: none; }

@keyframes soli-spin { to { rotate: 360deg; } }
@keyframes soli-halka {
  0%   { scale: 1;   opacity: 0.55; }
  100% { scale: 1.7; opacity: 0; }
}

/* ==========================================================================
   06. HEADER / NAVİGASYON
   ========================================================================== */

/* Canli sitede header position:fixed — akista yer kaplamaz, gorselin uzerine biner.
   Bu sayede header kuculdugunde icerik kaymaz. */
.soli-header {
  position: fixed;
  inset-inline: 0;
  top: 0;
  z-index: var(--soli-z-header);
  background: #fff;
  transition: box-shadow var(--soli-dur) var(--soli-ease);
}
.soli-header.is-stuck { box-shadow: var(--soli-shadow-sm); }

/* Enfold'daki gibi scroll'da kucullen header (logo 337 -> 200px) */
.soli-header__inner,
.soli-logo img { transition: all var(--soli-dur) var(--soli-ease); }
.soli-header.is-stuck .soli-header__inner { min-height: 62px; }
.soli-header.is-stuck .soli-logo img { width: 200px; height: 53px; }

.soli-header .soli-container { max-width: 100%; padding-inline: 29px; }

.soli-header__inner {
  position: relative;   /* genis mega menu buna hizalanir */
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--soli-s4);
  min-height: var(--soli-header-h);
}

.soli-logo { display: block; flex: 0 0 auto; }
/* Mobilde canli sitede logo 265px; hamburger icin ~70px yer kalmali */
.soli-logo img { width: 337px; height: 90px; max-width: min(68vw, 337px); object-fit: contain; }

/* --- Ana menü --- */
.soli-nav { display: flex; }
.soli-nav__list { display: flex; align-items: center; gap: clamp(16px, 2vw, 34px); }
.soli-nav__item { position: relative; }

.soli-nav__link {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding-block: 12px;
  font-size: var(--soli-fs-body);
  font-weight: 600;
  color: var(--soli-ink);
  white-space: nowrap;
  transition: color var(--soli-dur) var(--soli-ease);
}

/* Hover efekti: soldan acilan 2px alt cizgi + renk gecisi */
.soli-nav__link::after {
  content: "";
  position: absolute;
  inset-inline: 0;
  bottom: 4px;
  height: 2px;
  border-radius: 2px;
  background: var(--soli-blue);
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.28s var(--soli-ease);
}
.soli-nav__link:hover::after,
.soli-nav__link:focus-visible::after,
.soli-nav__item.is-open > .soli-nav__link::after,
.soli-nav__link[aria-current="page"]::after { transform: scaleX(1); }

/* Aktif sayfada cizgi kalici, soldan degil tam genislikte */
.soli-nav__link[aria-current="page"]::after { transform-origin: left center; }

.soli-nav__link:hover,
.soli-nav__item.is-open > .soli-nav__link,
.soli-nav__item[aria-current="page"] > .soli-nav__link,
.soli-nav__link[aria-current="page"] { color: var(--soli-blue); }

.soli-nav__caret { width: 14px; height: 14px; transition: rotate var(--soli-dur) var(--soli-ease); }
.soli-nav__item.is-open .soli-nav__caret { rotate: 180deg; }

/* --- Mega menü --- */
.soli-mega {
  position: absolute;
  top: 100%;
  left: 50%;
  translate: -50% 0;
  min-width: 260px;
  padding: var(--soli-s3);
  background: #fff;
  border-radius: var(--soli-radius);
  box-shadow: var(--soli-shadow-lg);
  opacity: 0;
  visibility: hidden;
  translate: -50% 10px;
  transition: opacity var(--soli-dur) var(--soli-ease),
              translate var(--soli-dur) var(--soli-ease),
              transform var(--soli-dur) var(--soli-ease),
              visibility var(--soli-dur);
}
.soli-nav__item.is-open > .soli-mega { opacity: 1; visibility: visible; translate: -50% 0; }

/* Genis mega menu: ogeye degil, header konteynerine hizalanir.
   Boylece sag kenardan tasmaz, header'in 29px ic boslugu kadar bosluk kalir. */
.soli-nav__item:has(> .soli-mega--wide) { position: static; }

.soli-mega--wide {
  left: auto;
  right: 0;
  translate: none;
  width: min(1100px, calc(100vw - 58px));
  min-width: 0;
  padding: var(--soli-s5);
}
.soli-nav__item.is-open > .soli-mega--wide { translate: none; }

/* Acilis animasyonu translate yerine opacity + hafif kayma ile */
.soli-mega--wide { transform: translateY(10px); }
.soli-nav__item.is-open > .soli-mega--wide { transform: translateY(0); }

.soli-mega__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: var(--soli-s5) var(--soli-s4);
}

.soli-mega__title {
  font-size: var(--soli-fs-xs);
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--soli-blue);
  padding-bottom: var(--soli-s2);
  margin-bottom: var(--soli-s2);
  border-bottom: 1px solid var(--soli-line);
}

.soli-mega__sub {
  font-size: var(--soli-fs-xs);
  font-weight: 700;
  color: var(--soli-ink);
  margin: var(--soli-s3) 0 6px;
}
.soli-mega__group:first-child .soli-mega__sub { margin-top: 0; }

.soli-mega__link {
  display: block;
  padding: 6px 0;
  font-size: var(--soli-fs-sm);
  color: var(--soli-muted);
}
.soli-mega__link:hover { color: var(--soli-blue); }

/* --- Hamburger --- */
.soli-burger {
  display: none;
  width: 44px; height: 44px;
  place-items: center;
  color: var(--soli-ink);
}
.soli-burger__box { display: grid; gap: 5px; width: 24px; }
.soli-burger__box span {
  display: block; height: 2px;
  background: currentColor;
  border-radius: 2px;
  transition: translate var(--soli-dur) var(--soli-ease),
              rotate var(--soli-dur) var(--soli-ease),
              opacity var(--soli-dur) var(--soli-ease);
}
.soli-burger[aria-expanded="true"] .soli-burger__box span:nth-child(1) { translate: 0 7px; rotate: 45deg; }
.soli-burger[aria-expanded="true"] .soli-burger__box span:nth-child(2) { opacity: 0; }
.soli-burger[aria-expanded="true"] .soli-burger__box span:nth-child(3) { translate: 0 -7px; rotate: -45deg; }

/* --- Mobil çekmece --- */
.soli-drawer {
  position: fixed;
  inset: var(--soli-header-h) 0 0 auto;
  width: min(420px, 100%);
  z-index: var(--soli-z-drawer);
  background: #fff;
  border-left: 1px solid var(--soli-line);
  overflow-y: auto;
  overscroll-behavior: contain;
  translate: 100% 0;
  visibility: hidden;
  transition: translate var(--soli-dur) var(--soli-ease), visibility var(--soli-dur);
}
.soli-drawer.is-open { translate: 0 0; visibility: visible; }

.soli-drawer__body { padding: var(--soli-s3) var(--soli-gutter) var(--soli-s7); }

.soli-drawer__overlay {
  position: fixed;
  inset: var(--soli-header-h) 0 0;
  z-index: calc(var(--soli-z-drawer) - 1);
  background: rgba(16, 22, 33, 0.45);
  opacity: 0;
  visibility: hidden;
  transition: opacity var(--soli-dur) var(--soli-ease), visibility var(--soli-dur);
}
.soli-drawer__overlay.is-open { opacity: 1; visibility: visible; }

.soli-acc__item { border-bottom: 1px solid var(--soli-line); }

.soli-acc__trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--soli-s2);
  width: 100%;
  padding: 16px 0;
  font-size: var(--soli-fs-body);
  font-weight: 500;
  text-align: left;
  color: var(--soli-ink);
}
.soli-acc__trigger[aria-expanded="true"] { color: var(--soli-blue); }
.soli-acc__trigger .soli-icon { width: 18px; height: 18px; transition: rotate var(--soli-dur) var(--soli-ease); }
.soli-acc__trigger[aria-expanded="true"] .soli-icon { rotate: 180deg; }

.soli-acc__panel { display: none; padding: 0 0 var(--soli-s2) var(--soli-s2); }
.soli-acc__panel.is-open { display: block; }
.soli-acc__panel .soli-acc__panel { padding-left: var(--soli-s3); }

.soli-acc__link {
  display: block;
  padding: 9px 0;
  font-size: var(--soli-fs-sm);
  color: var(--soli-muted);
}
.soli-acc__link:hover { color: var(--soli-blue); }

/* ==========================================================================
   07. HERO
   ========================================================================== */

.soli-hero { position: relative; margin-top: calc(-1 * var(--soli-header-h)); }   /* canli: header gorselin uzerine biner */

.soli-hero__viewport { position: relative; overflow: hidden; }

.soli-hero__slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 1s var(--soli-ease);
}
.soli-hero__slide.is-active { opacity: 1; }
.soli-hero__slide:first-child { position: relative; }

.soli-hero__img {
  width: 100%;
  /* Canli sitede 664px; header'in ortttugu 90px telafi edilerek 754px yapildi,
     boylece header altinda tam 664px gorunur. */
  height: clamp(360px, 56.9vw, 820px);
  object-fit: cover;
  object-position: center;
}

/* Rozet — hero ile sonraki bölümün sınırına oturur */
.soli-hero__badge {
  position: absolute;
  left: 50%;
  bottom: 0;
  translate: -50% 50%;
  z-index: 2;
}

/* Slider noktaları */
.soli-hero__dots {
  position: absolute;
  left: 50%;
  bottom: var(--soli-s4);
  translate: -50% 0;
  z-index: 3;
  display: flex;
  gap: 10px;
}
.soli-hero__dot {
  width: 10px; height: 10px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.5);
  transition: background-color var(--soli-dur) var(--soli-ease),
              width var(--soli-dur) var(--soli-ease);
}
.soli-hero__dot.is-active { background: #fff; width: 28px; border-radius: var(--soli-radius-pill); }

/* ==========================================================================
   08. GİRİŞ BÖLÜMÜ
   ========================================================================== */

.soli-intro {
  /* canli: hero alti 664, etiket 734 -> ust bosluk 70px */
  padding-top: clamp(2rem, 0.4rem + 4.5vw, 71px);   /* canli: etiket 734, h1 770 */
  padding-bottom: clamp(1rem, 0.2rem + 1.5vw, 2.05rem);
  text-align: center;
}

.soli-intro__title {
  font-family: var(--soli-font-display);
  font-size: var(--soli-fs-h1);
  font-weight: 500;
  letter-spacing: 1px;
  line-height: 1.143;      /* canli: 2 satir = 144px @63px */
  color: #222;
  text-wrap: normal;       /* canli sitede balance yok, dogal satir kirilimi */
  margin-top: 13px;   /* canli sitede etiket ile baslik arasi olculdu */
}

/* Canli sitede etiket rengi #C0A989 (kum tonu), mavi degil */
.soli-intro__eyebrow {
  margin-bottom: 0;
  color: #c0a989;          /* canli site: rgb(192,169,137) */
  line-height: 23.1px;
  letter-spacing: 3.75px;
}

/* Canli sitede olculdu: 17px/29.41px, w300, text-align:center, konteyner genisligi */
.soli-intro__body {
  /* Olcu genisligi sinirli: IBM Plex Inter'den dar oldugu icin 1210px'de
     satirlar 150+ karaktere ciriyordu. 900px'te canlidaki gibi 3+2 satir. */
  max-width: 900px;
  margin: 25px auto 0;          /* canli sitede h1 ile arasi 25px */
  font-size: 17px;
  font-weight: 300;
  line-height: 1.73;
  color: var(--soli-muted);
  text-align: center;
}

/* ==========================================================================
   09. ÜRÜN GRUPLARI  (01–04 numaralı kartlar)
   ========================================================================== */

.soli-groups__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--soli-s4);
}

.soli-group { display: block; color: inherit; }
.soli-group:hover { color: inherit; }

.soli-group__media {
  position: relative;
  aspect-ratio: 1 / 1;
  border-radius: var(--soli-radius);
  overflow: hidden;
  background: linear-gradient(160deg, #1a2f4d 0%, #0f1c30 100%);
}
.soli-group__media--empty { background: #d9d6d1; }

/* Canli sitedeki hover efekti birebir:
   ::after katman rgba(62,39,11,.5), opacity .5 -> 1 (gecis .5s)
   gorsel scale(1.1) (gecis .7s) */
.soli-group__media::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: rgba(62, 39, 11, 0.5);
  opacity: 0.5;
  transition: opacity 0.5s var(--soli-ease);
  pointer-events: none;
}
.soli-group:hover .soli-group__media::after,
.soli-group:focus-visible .soli-group__media::after { opacity: 1; }

.soli-group__img {
  width: 100%; height: 100%;
  object-fit: cover;
  transition: transform 0.7s var(--soli-ease);
}
.soli-group:hover .soli-group__img,
.soli-group:focus-visible .soli-group__img { transform: scale(1.1); }

.soli-group__num {
  position: absolute;
  z-index: 2;
  left: 20px; bottom: 14px;
  font-family: var(--soli-font-display);
  font-size: 40px;
  font-weight: 300;
  line-height: 1;
  color: rgba(255, 255, 255, 0.85);
}
.soli-group__media--empty .soli-group__num { color: rgba(255, 255, 255, 0.7); }

.soli-group__title {
  font-size: clamp(1.25rem, 1rem + 0.7vw, 1.5625rem);   /* 20 → 25 */
  font-weight: 300;
  line-height: 1.8;
  margin: var(--soli-s3) 0 var(--soli-s2);
}
.soli-group:hover .soli-group__title { color: var(--soli-blue); }

/* Canli sitede 16px/26.4px, -webkit-line-clamp:3 ile 3 satirda kirpiliyor */
.soli-group__text {
  font-size: var(--soli-fs-body);
  line-height: 1.65;
  color: var(--soli-muted);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* ==========================================================================
   10. SHOWCASE  (tam ekran görsel + 4 dikey sütun)
   Canlı sitede ölçüldü: bölüm 1440×900, 4×360px sütun, sütun içeriği alta
   hizalı (align-items:flex-end), padding 20px. Açıklamalar hover'da belirir
   (opacity 0 → 1, transition .4s).
   ========================================================================== */

.soli-showcase {
  position: relative;
  height: 900px;
  isolation: isolate;
}

.soli-showcase__bg {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%; height: 100%;
  object-fit: cover;
  transition: opacity 0.5s var(--soli-ease);   /* canli: background .5s */
}
/* Canli sitede gorsel uzerinde %50 siyah katman var
   (olculen parlaklik orani tam 0.500) */
.soli-showcase::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: rgba(0, 0, 0, 0.5);
  pointer-events: none;
}

/* Üst başlık bloğu — x:360 w:720, bölüm üstünden 135px */
.soli-showcase__head {
  position: absolute;
  top: 135px;
  left: 50%;
  translate: -50% 0;
  width: min(720px, 92vw);
  text-align: center;
}
.soli-showcase__eyebrow {
  display: block;
  font-size: 12px;
  font-weight: 600;
  line-height: 58px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--soli-blue);
}
.soli-showcase__title {
  font-size: clamp(2rem, 0.8rem + 2.6vw, 3rem);          /* 32 -> 48 */
  font-weight: 500;
  line-height: 1.208;
  color: #fff;
}

/* 4 sütun */
.soli-showcase__cols {
  position: absolute;
  inset: 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

/* Canli olculer: sutun 360x900; ic blok 359x278, padding 15px 45px;
   baslik 269x82; aciklama 269x55, margin-top 10px.
   Blok altta hizali, sutun alt bosluğu 40px. */
.soli-showcase__col {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: 0 0 40px;
  color: #fff;
  text-align: center;
  transition: background-color var(--soli-dur) var(--soli-ease);
}
.soli-showcase__body {
  display: block;
  width: 100%;
  padding: 15px 45px;
  min-height: 278px;    /* canli sitede olculen ic blok yuksekligi */
  box-sizing: border-box;
}
.soli-showcase__col:hover { background: rgba(255, 255, 255, 0.08); color: #fff; }
/* Sutun ayrac cizgileri — canli sitede rgba(255,255,255,.15) civari */
.soli-showcase__col + .soli-showcase__col { border-left: 1px solid rgba(255, 255, 255, 0.15); }

.soli-showcase__label {
  display: block;
  font-family: var(--soli-font-display);
  font-size: clamp(1.375rem, 0.6rem + 1.6vw, 2rem);      /* 22 -> 32 */
  font-weight: 400;
  line-height: 1.286;
  color: #fff;
}

/* Açıklama: canlı sitede gizli, hover'da beliriyor */
.soli-showcase__desc {
  margin: 10px 0 0;
  font-size: var(--soli-fs-body);
  line-height: 1.73;
  color: #fff;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s var(--soli-ease), visibility 0.4s;
}
.soli-showcase__col:hover .soli-showcase__desc,
.soli-showcase__col:focus-within .soli-showcase__desc {
  opacity: 1;
  visibility: visible;
}
/* ==========================================================================
   11. ISI POMPASI  (yapışkan sol sütun + yatay marka kartları)
   ========================================================================== */

.soli-hp__layout {
  display: grid;
  grid-template-columns: minmax(0, 570px) minmax(0, 1fr);
  /* canli: sol sutun 216-685, sag ray 720 -> aralik 35px */
  gap: clamp(1.5rem, 0.5rem + 1.9vw, 35px);
  align-items: start;
}

/* Orijinalde sol sutun icerigi konteyner kenarindan 101px iceride başlar */
.soli-hp__aside { padding-inline-start: clamp(0px, 7.01vw, 101px); }

.soli-hp__aside { position: sticky; top: calc(var(--soli-header-h) + 40px); }

.soli-hp__title {
  font-size: clamp(1.75rem, 0.7rem + 2.4vw, 2.8125rem); /* 28 → 45 */
  line-height: 1.244;                                    /* canli: 56/45 */
  color: #222;
  font-weight: 300;
  margin-bottom: var(--soli-s4);
}

/* Canli sitede 16px/26.4px, text-align:start (justify degil) */
.soli-hp__text {
  font-size: var(--soli-fs-body);
  line-height: 1.65;
  color: var(--soli-muted);
  text-align: start;
}
.soli-hp__text p + p { margin-top: 1em; }

.soli-hp__rail {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: clamp(240px, 28.5vw, 410px);   /* canli: 410px @1440 */
  gap: 30px;                                 /* canli aralik */
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  padding-bottom: var(--soli-s1);
  /* Canli sitede ray konteynerde degil, ekranin sag kenarinda biter (720->1440).
     Konteynerin sag bosluguna tasarak ayni davranisi verir; dar ekranda etkisiz. */
  margin-right: min(0px, calc(605px - 50vw));
}
.soli-hp__rail::-webkit-scrollbar { display: none; }

.soli-brand {
  position: relative;
  scroll-snap-align: start;
  display: flex;
  align-items: flex-end;
  aspect-ratio: 410 / 512;      /* canli: 410x512 */
  padding: var(--soli-s4);
  border-radius: 20px;          /* canli: 20px */
  overflow: hidden;
  background: #0b0c0d;
  color: #fff;
}

.soli-brand__img {
  position: absolute;
  inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;          /* canli: 410x512 gorsel karti tam doldurur */
}

.soli-brand__body { position: relative; }

.soli-brand__title {
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: #fff;
}

/* Canli sitede 16px/22.4px opak beyaz, opacity:0 — hover'da beliriyor */
.soli-brand__text {
  margin-top: 6px;
  font-size: var(--soli-fs-body);
  line-height: 1.4;
  color: #fff;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s var(--soli-ease), visibility 0.4s;
}
.soli-brand:hover .soli-brand__text,
.soli-brand:focus-within .soli-brand__text { opacity: 1; visibility: visible; }

/* ==========================================================================
   12. REFERANSLAR  (mavi blok, yapışkan sol sütun + dikey kart yığını)
   ========================================================================== */

.soli-refs { background: var(--soli-blue); color: #fff; position: relative; }   /* overflow:hidden sticky'yi bozuyordu */
.soli-refs .soli-container { max-width: 1440px; padding-inline: 30px; }   /* canli: kartlar 750..1410 */

.soli-refs__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 660px);
  gap: clamp(2rem, 0rem + 4.2vw, 60px);
  max-width: 1380px;            /* canli: kartlar 750..1410 */
  margin-inline: auto;
  padding-block: clamp(0.5rem, 0.2rem + 0.2vw, 3px) clamp(1.5rem, 0.5rem + 2.5vw, 37px);
  align-items: start;
}

/* Canli sitede bu sutun bg23.jpg icine gomulu bir GORSEL (metin degil) ve
   6 kart satirinin her birinde tekrar ettigi icin sabit gorunur.
   Prototipte gercek metin kullanildi; konum canliyla eslesecek sekilde
   ayarlandi ve sticky ile ayni gorsel etki saglandi.
   Bkz. DESIGN-ISSUES.md K1 — metnin gorsele gomulmesi. */
.soli-refs__aside {
  position: sticky;
  top: calc(var(--soli-header-h) + 60px);
  padding-left: clamp(0px, 13.2vw, 190px);   /* sola cekildi (canli 277px idi) */
  padding-bottom: var(--soli-s5);
}

.soli-refs__title {
  font-family: var(--soli-font-display);
  font-size: clamp(2rem, 1rem + 3vw, 3.375rem);   /* canli olcum: 54px */
  font-weight: 500;
  line-height: 1.074;                              /* canli: 58px / 54px */
  color: #fff;
  max-width: 14ch;
}

.soli-refs__text {
  margin: var(--soli-s5) 0 var(--soli-s5);
  /* Sutunda 470px yer var; metin 360px'te kaliyordu. Tam genislige acildi
     ve govde boyutuna cikarildi (canli 15px idi). */
  font-size: var(--soli-fs-body);
  line-height: 1.7;
  color: #fff;                /* kontrast 4.83:1 */
  text-align: left;          /* canli: sola yasli */
  max-width: 470px;
}

.soli-refs__stack { display: grid; gap: 60px; }   /* canli: kart araligi 60px */

.soli-ref {
  position: relative;
  display: flex;
  align-items: flex-end;
  min-height: clamp(260px, 34.4vw, 495px);   /* canli: 495px */
  padding: 0 clamp(20px, 4.2vw, 60px) clamp(20px, 4vw, 58px);   /* canli olcum */
  border-radius: var(--soli-radius);
  overflow: hidden;
  background: #0e1620;
  color: #fff;
}
.soli-ref:hover { color: #fff; }

.soli-ref__img {
  position: absolute;
  inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  transition: scale 0.7s var(--soli-ease);
}
.soli-ref:hover .soli-ref__img { scale: 1.04; }

.soli-ref::after {
  content: "";
  position: absolute;
  /* Canli olcum: alt 248px (kartin yarisi), linear-gradient(0deg, #000 0%, transparent 98.1%) */
  top: 50%;
  bottom: 0;
  inset-inline: 0;
  background: linear-gradient(0deg, rgb(0, 0, 0) 0%, rgba(255, 255, 255, 0) 98.1%);
}

.soli-ref__body {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--soli-s3);
  width: 100%;
}

/* Canli sitede 16px/26.4px, w400, opak beyaz */
/* Kart basligi ve alt metni alt alta — canlida iki ayri satir */
/* Kart uzeri metinler: canlidan bir tik buyuk ve kalin */
.soli-ref__title { display: block; font-size: 1.125rem; font-weight: 600; line-height: 1.45; color: #fff; }
.soli-ref__meta { display: block; margin-top: 4px; font-size: var(--soli-fs-sm); font-weight: 500; line-height: 1.5; color: #fff; }

/* ==========================================================================
   13. FOOTER
   ========================================================================== */

.soli-footer { background: var(--soli-blue); color: #fff; }

.soli-footer__manifesto {
  padding-top: clamp(1.5rem, 0.6rem + 2vw, 40px);
  padding-bottom: clamp(1.5rem, 0.6rem + 2.1vw, 41px);
  text-align: center;
}

.soli-footer__eyebrow {
  font-size: 1.1875rem;        /* 15 -> 19px, iki tik buyuk */
  font-weight: 700;
  letter-spacing: var(--soli-ls-label);
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.7);
}

.soli-footer__claim {
  position: relative;
  max-width: 1089px;
  margin: var(--soli-s4) auto 0;
  font-family: var(--soli-font-display);
  font-size: clamp(1.5rem, 0.7rem + 1.6vw, 2rem);       /* 24 → 32px, 2 satira sigar */
  font-weight: 500;
  line-height: normal;                                   /* canli site */
  color: #fff;
}

.soli-footer__cols {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--soli-s5);
  padding-bottom: clamp(2.5rem, 1rem + 4vw, 5rem);
  text-align: center;
}

.soli-footer__coltitle {
  display: flex;
  align-items: center;
  justify-content: center;          /* baslik altindaki icerikle ayni hizada, ortali */
  gap: var(--soli-s3);
  padding-bottom: 12px;
  margin-bottom: 18px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.28);   /* baslik alti cizgi */
  font-size: var(--soli-fs-body);   /* 14 -> 16px */
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #fff;
  margin-bottom: var(--soli-s4);
}
.soli-footer__coltitle .soli-icon { width: 22px; height: 22px; opacity: 1; }

.soli-footer__list { display: grid; gap: 4px; }   /* metin/link arasi daraltildi */
.soli-footer__list a,
.soli-footer__list span {
  font-size: var(--soli-fs-body);   /* 15 -> 16px */
  font-weight: 500;
  line-height: 1.6;
  color: #fff;                      /* kontrast 4.83:1 (yari saydam 4.33 idi) */
}
.soli-footer__list a:hover { color: #fff; text-decoration: underline; }

.soli-footer__brands {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: var(--soli-s3) var(--soli-s5);
  padding-block: var(--soli-s5);
  border-top: 1px solid rgba(255, 255, 255, 0.18);
}
.soli-footer__brands img { height: 34px; width: auto; opacity: 0.9; filter: brightness(0) invert(1); }

.soli-footer__bottom {
  /* canli: kayan bant alti 61px, alt bar sonrasi 135px */
  padding-block: clamp(1.5rem, 0.5rem + 2.6vw, 52px) clamp(1.5rem, 0.5rem + 3.3vw, 66px);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--soli-s2);
  border-top: 1px solid rgba(255, 255, 255, 0.18);
  font-size: var(--soli-fs-xs);
  color: #fff;                      /* kontrast 4.83:1 (3.55 idi) */
}
.soli-footer__social { display: flex; gap: var(--soli-s2); }
.soli-footer__social a {
  display: grid; place-items: center;
  width: 34px; height: 34px;
  border-radius: 50%;
  background: var(--soli-glass);
  color: #fff;
}
.soli-footer__social a:hover { background: rgba(255, 255, 255, 0.24); color: #fff; }

/* Anahtar kelime kayan bandi (footer sutunlari ile alt bar arasi) */
.soli-marquee {
  position: relative;
  overflow: hidden;
  height: clamp(140px, 15.6vw, 224px);   /* canli: footerzemin 1440x224 */
  display: grid;
  align-items: center;
  isolation: isolate;
}
.soli-marquee__bg {
  position: absolute; inset: 0; z-index: -1;
  width: 100%; height: 100%;
  object-fit: cover;
}
.soli-marquee__track {
  display: flex;
  width: max-content;
  animation: soli-marquee 46s linear infinite;
}
.soli-marquee__track span {
  padding-inline: 1rem;
  font-size: clamp(1.75rem, 1rem + 3.6vw, 4.375rem);
  font-weight: 700;
  line-height: 1;
  color: rgba(255, 255, 255, 0.62);
  white-space: nowrap;
}
@keyframes soli-marquee { to { transform: translateX(-50%); } }


/* ==========================================================================
   14. SABİT ÖĞELER
   ========================================================================== */

.soli-consultant {
  position: fixed;
  left: 20px; bottom: 20px;
  z-index: var(--soli-z-fixed);
  width: 62px; height: 62px;
  border-radius: 50%;
  overflow: hidden;
  border: 2px solid #fff;
  box-shadow: var(--soli-shadow);
}
.soli-consultant {
  display: grid;
  place-items: center;
  background: var(--soli-surface-3);
  color: var(--soli-muted);
}
.soli-consultant img { width: 100%; height: 100%; object-fit: cover; }
.soli-consultant .soli-icon { width: 28px; height: 28px; }

.soli-totop {
  position: fixed;
  right: 20px; bottom: 20px;
  z-index: var(--soli-z-fixed);
  display: grid; place-items: center;
  width: 38px; height: 38px;
  border-radius: var(--soli-radius-sm);
  background: var(--soli-blue);
  color: #fff;
  opacity: 0;
  visibility: hidden;
  transition: opacity var(--soli-dur) var(--soli-ease), visibility var(--soli-dur);
}
.soli-totop.is-visible { opacity: 1; visibility: visible; }
.soli-totop .soli-icon { width: 18px; height: 18px; }

/* --- Breadcrumb --- */
.soli-crumbs {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  padding-block: var(--soli-s2);
  font-size: 11px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--soli-muted);
}
.soli-crumbs a { color: var(--soli-blue); }
.soli-crumbs .soli-icon { width: 14px; height: 14px; }

/* ==========================================================================
   15. RESPONSIVE
   ========================================================================== */

@media (max-width: 1200px) {
  .soli-groups__grid { grid-template-columns: repeat(2, 1fr); gap: var(--soli-s5) var(--soli-s3); }
  .soli-hp__layout { grid-template-columns: 1fr; }
  .soli-hp__aside { position: static; }
  .soli-refs__layout { grid-template-columns: 1fr; }
  .soli-refs__aside { position: static; }
}

@media (max-width: 1080px) {
  .soli-nav { display: none; }
  .soli-burger { display: grid; }
  .soli-showcase__cols { grid-template-columns: repeat(2, 1fr); }
  .soli-showcase__col { min-height: 180px; }
  .soli-showcase__col:nth-child(-n + 2) { border-bottom: 1px solid rgba(255, 255, 255, 0.28); }
}

@media (max-width: 860px) {
  :root { --soli-header-h: 76px; }
  .soli-footer__cols { grid-template-columns: 1fr; gap: var(--soli-s5); }
  .soli-ref { padding: var(--soli-s3) var(--soli-s4); }
  .soli-ref__body { flex-direction: column; align-items: flex-start; gap: var(--soli-s2); }
}

@media (max-width: 640px) {
  .soli-groups__grid { grid-template-columns: 1fr; }
  .soli-showcase__cols { grid-template-columns: 1fr; }
  .soli-showcase__col { min-height: 120px; border-left: 0; border-bottom: 1px solid rgba(255, 255, 255, 0.28); }
  .soli-showcase__col:last-child { border-right: 0; }
  .soli-hero__badge { width: 104px; }
  .soli-badge { width: 104px; height: 104px; }
  .soli-badge__core { width: 42px; height: 42px; }
  .soli-footer__bottom { flex-direction: column; text-align: center; }
  .soli-consultant { width: 52px; height: 52px; }
}

/* ==========================================================================
   YAZDIRMA
   ========================================================================== */

@media print {
  .soli-header, .soli-drawer, .soli-drawer__overlay,
  .soli-consultant, .soli-totop, .soli-hero__dots { display: none !important; }
  body { color: #000; }
}


/* ==========================================================================
   16. ÜRÜN DETAY  (single-urun.php)
   ========================================================================== */

/* Noktali arka plan — mevcut sitedeki desenli zemin */
.soli-dotted {
  background-image: radial-gradient(rgba(16, 22, 33, 0.13) 1px, transparent 1px);
  background-size: 22px 22px;
}

.soli-phero { padding-block: clamp(2rem, 1rem + 3vw, 3.5rem); }

.soli-phero__card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(24px, 3vw, 56px);
  align-items: center;
  padding: clamp(24px, 3vw, 56px);
  background: var(--soli-surface-2);
  border-radius: var(--soli-radius-lg);
}

.soli-phero__title {
  font-size: clamp(2rem, 0.8rem + 3.7vw, 4rem);   /* canli: 64px @1440 */
  font-weight: 600;
  line-height: normal;
  color: #111;
  text-wrap: normal;
}
.soli-phero__text { margin-top: var(--soli-s4); color: var(--soli-muted); }
.soli-phero__text a { color: var(--soli-blue); }

.soli-phero__media {
  border-radius: var(--soli-radius);
  overflow: hidden;
  background: #fff;
  aspect-ratio: 1 / 1;
}
.soli-phero__media img { width: 100%; height: 100%; object-fit: contain; }

/* Guven satiri: uc avatar + kisa metin */
.soli-trust {
  display: flex;
  align-items: center;
  gap: var(--soli-s3);
  margin-top: var(--soli-s5);
}
/* Canli sitede avatar satiri tek gorsel: 100x50, konteynerden 10px disari tasar */
.soli-trust__faces { display: block; flex: 0 0 auto; margin-left: -10px; }
.soli-trust__faces img { width: 100px; height: 50px; object-fit: contain; }
.soli-trust__text { font-size: var(--soli-fs-sm); color: var(--soli-muted); margin: 0; }

/* CTA seridi: Satin Al / Teklif Al / Kapasite Hesapla / Randevu */
.soli-actionbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 4px;
  margin-block: var(--soli-s3) 0;
}
.soli-actionbar a {
  padding: 12px 26px;
  font-size: var(--soli-fs-xs);
  font-weight: 600;
  border-radius: var(--soli-radius-sm) var(--soli-radius-sm) 0 0;
  color: #fff;
}
.soli-actionbar a:hover { filter: brightness(1.08); color: #fff; }
.soli-actionbar a:nth-child(1) { background: #2d2d30; }
.soli-actionbar a:nth-child(2) { background: var(--soli-blue); }
.soli-actionbar a:nth-child(3) { background: var(--soli-yellow); color: var(--soli-ink); }
.soli-actionbar a:nth-child(4) { background: var(--soli-blue-600); }

/* Numarali urun listesi (mavi blok) */
.soli-plist { background: var(--soli-blue); padding-block: clamp(2.5rem, 1.5rem + 4vw, 5rem); }
.soli-plist__items { display: grid; gap: 20px; }   /* canli: 150px oge, 170px aralik */

.soli-pitem {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--soli-s3);
  min-height: 150px;                 /* canli olcum */
  padding: clamp(20px, 2.8vw, 40px);
  background: #1389d3;               /* canli: duz zemin, yari saydam degil */
  border-radius: 10px;
  color: #fff;
}
.soli-pitem__num {
  font-size: 1.5rem;
  font-weight: 700;
  color: #fff;
  text-align: center;
}
.soli-pitem__title { font-size: 1.25rem; font-weight: 700; color: #fff; }
.soli-pitem__tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.soli-pitem__tags span {
  padding: 5px 12px;
  font-size: var(--soli-fs-xs);
  border-radius: var(--soli-radius-sm);
  background: rgba(255, 255, 255, 0.16);
  color: #fff;
}
.soli-pitem__go {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 11px 20px;
  font-size: var(--soli-fs-xs);
  font-weight: 600;
  border-radius: var(--soli-radius-sm);
  background: var(--soli-navy);
  color: #fff;
}
.soli-pitem__go:hover { background: var(--soli-ink); color: #fff; }
.soli-pitem__go .soli-icon { width: 15px; height: 15px; }

/* Iki sutunlu aciklama + alintili kutu */
.soli-pcopy__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(24px, 3vw, 56px);
  align-items: start;
}
.soli-pcopy__title {
  font-size: clamp(1.75rem, 0.9rem + 2.9vw, 3.125rem);   /* canli: 50px */
  font-weight: 600;
  line-height: normal;
  color: #111;
  margin-bottom: var(--soli-s4);
}
.soli-pcopy__text { color: var(--soli-muted); }

.soli-pcopy__note {
  position: relative;
  padding: clamp(24px, 2.6vw, 44px);
  background: var(--soli-surface-2);
  border-radius: var(--soli-radius);
  color: var(--soli-muted);
  text-align: justify;
}
.soli-pcopy__note::before,
.soli-pcopy__note::after {
  content: "";
  position: absolute;
  width: 12px; height: 12px;
  border: 1px solid rgba(16, 22, 33, 0.18);
  border-radius: 50%;
}
.soli-pcopy__note::before { top: 14px; left: 14px; }
.soli-pcopy__note::after { bottom: 14px; right: 14px; }

/* Ozellik ikonlari seridi */
.soli-features {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: var(--soli-s3);
  padding: clamp(20px, 2vw, 32px);
  border: 1px solid var(--soli-line);
  border-radius: var(--soli-radius-lg);
  background: #fff;
}
.soli-feature {
  display: grid;
  justify-items: center;
  gap: var(--soli-s2);
  padding: var(--soli-s3);
  border-right: 1px solid var(--soli-line);
  text-align: center;
}
.soli-feature:last-child { border-right: 0; }
.soli-feature .soli-icon { width: 34px; height: 34px; color: var(--soli-blue); stroke-width: 1.5; }
.soli-feature span { font-size: var(--soli-fs-body); font-weight: 500; line-height: normal; color: #222; }   /* canli olcum */

/* Sabit ic-sayfa navigasyonu.
   NOT: Mevcut sitedeki davranis birebir kopyalanmistir — icerigin uzerine biner.
   Duzeltme onerisi icin bkz. DESIGN-ISSUES.md A1 / E3. */
.soli-pnav {
  position: fixed;
  right: 0;
  top: 50%;
  translate: 0 -50%;
  z-index: var(--soli-z-fixed);
  display: grid;
  gap: 3px;
  width: 240px;
}
.soli-pnav a {
  display: block;
  padding: 9px 14px;
  font-size: 13px;
  font-weight: 500;
  background: var(--soli-blue);
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.35);
}
.soli-pnav a:hover { background: var(--soli-blue-600); color: #fff; }
.soli-pnav a:first-child { font-weight: 700; }

@media (max-width: 1024px) {
  .soli-phero__card,
  .soli-pcopy__grid { grid-template-columns: minmax(0, 1fr); }
  .soli-features { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .soli-feature { border-right: 0; border-bottom: 1px solid var(--soli-line); }
}

@media (max-width: 720px) {
  .soli-pitem { grid-template-columns: 56px minmax(0, 1fr); }
  .soli-pitem__go { grid-column: 2; justify-self: start; }
  .soli-pitem__num { text-align: left; font-size: 1.125rem; }
  .soli-features { grid-template-columns: minmax(0, 1fr); }
  .soli-pnav { width: 200px; }
  .soli-actionbar a { padding: 10px 16px; }
}

/* ==========================================================================
   17. İÇ SAYFA ORTAK  (page hero + breadcrumb)
   ========================================================================== */

.soli-pagehead {
  padding-block: clamp(2rem, 1rem + 2.7vw, 55px) clamp(2rem, 1rem + 3vw, 4rem);   /* canli: iletisim basligi y195 */
  text-align: center;
}

/* Dev hayalet arka plan basligi — mevcut sitedeki desen.
   Bkz. DESIGN-ISSUES.md C3 (kontrast sorunu, duzeltilmedi). */
.soli-pagehead__wrap { position: relative; }
.soli-pagehead__ghost {
  position: absolute;
  inset-inline: 0;
  top: 50%;
  translate: 0 -50%;
  font-size: clamp(3rem, 1rem + 9vw, 9.5rem);
  font-weight: 700;
  line-height: 1;
  color: rgba(0, 118, 192, 0.08);
  white-space: nowrap;
  pointer-events: none;
  user-select: none;
}
.soli-pagehead__title {
  position: relative;
  font-size: clamp(1.875rem, 0.9rem + 2.9vw, 3.125rem);   /* canli: 50px */
  font-weight: 600;
  line-height: normal;      /* canli */
  color: #111;              /* canli: rgb(17,17,17) */
}
/* Kucuk bolum basligi — canli: 28px */
.soli-pagehead__title--sm { font-size: clamp(1.375rem, 0.9rem + 1.1vw, 1.75rem); }
.soli-pagehead__lead {
  position: relative;
  max-width: var(--soli-measure);
  margin: var(--soli-s3) auto 0;
  font-size: var(--soli-fs-lead);
  color: var(--soli-muted);
}

/* ==========================================================================
   18. REFERANS ARŞİVİ  (archive-referans.php)
   ========================================================================== */

.soli-filter {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: var(--soli-s3);
  padding-block: var(--soli-s5) var(--soli-s4);
}
.soli-filter__field { display: grid; gap: 6px; min-width: 190px; }
.soli-filter__label {
  font-size: var(--soli-fs-xs);
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--soli-muted);
}
/* NOT: native <select> birebir korundu. Bkz. DESIGN-ISSUES.md E2. */
.soli-filter__field select {
  font: inherit;
  font-size: var(--soli-fs-sm);
  padding: 7px 10px;
  border: 1px solid var(--soli-line);
  border-radius: 3px;
  background: #fff;
  color: var(--soli-ink);
}
.soli-filter__submit {
  padding: 10px 22px;
  font-size: var(--soli-fs-xs);
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  border-radius: 3px;
  background: var(--soli-blue);
  color: #fff;
}
.soli-filter__submit:hover { background: var(--soli-blue-600); }

.soli-refgrid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(14px, 1.4vw, 22px);
  padding-bottom: clamp(2.5rem, 1.5rem + 4vw, 5rem);
}

.soli-refcard {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid var(--soli-line);
  color: inherit;
  overflow: hidden;
}
.soli-refcard:hover { color: inherit; box-shadow: var(--soli-shadow); }
.soli-refcard__media { aspect-ratio: 4 / 3; overflow: hidden; background: var(--soli-surface-3); }
.soli-refcard__media img {
  width: 100%; height: 100%;
  object-fit: cover;
  transition: scale 0.5s var(--soli-ease);
}
.soli-refcard:hover .soli-refcard__media img { scale: 1.05; }
.soli-refcard__body { padding: 16px; }
.soli-refcard__title {
  font-size: var(--soli-fs-body);
  font-weight: 600;
  line-height: 1.1;          /* canli sitede 17.6px / 16px */
  text-transform: uppercase;
  color: #444;               /* canli: rgb(68,68,68) */
}
.soli-refcard__meta { margin-top: 10px; font-size: var(--soli-fs-xs); color: var(--soli-muted); }

/* ==========================================================================
   19. REFERANS DETAY  (single-referans.php)
   ========================================================================== */

.soli-refdetail__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.35fr);
  gap: clamp(20px, 2.4vw, 40px);
  align-items: start;
}

.soli-gallery__main {
  border: 1px solid var(--soli-line);
  padding: 8px;
  background: #fff;
}
.soli-gallery__main img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.soli-gallery__thumbs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 8px;
}
.soli-gallery__thumbs button,
.soli-gallery__thumbs a {
  display: block;
  border: 1px solid var(--soli-line);
  padding: 4px;
  background: #fff;
  cursor: zoom-in;
}
.soli-gallery__thumbs img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.soli-gallery__thumbs button[aria-current="true"],
.soli-gallery__thumbs a[aria-current="true"] { border-color: var(--soli-blue); }
a.soli-gallery__main { display: block; cursor: zoom-in; }
a.soli-gallery__main img { transition: opacity 0.25s var(--soli-ease); }

/* Proje meta kartlari */
.soli-meta {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--soli-s2);
  padding: var(--soli-s3);
  border: 1px solid var(--soli-line);
  border-radius: var(--soli-radius-sm);
}
.soli-meta__item {
  display: grid;
  justify-items: center;
  gap: 6px;
  padding: var(--soli-s3) var(--soli-s2);
  border: 1px solid var(--soli-line);
  border-radius: var(--soli-radius-sm);
  text-align: center;
}
/* canli: "referans" ikon fontu 40px #0076C0; baslik 16px w600 #222; deger 13px #333 */
.soli-meta__item .soli-icon { width: 40px; height: 40px; color: var(--soli-blue); }
.soli-meta__label { font-size: var(--soli-fs-body); font-weight: 600; color: #222; }
.soli-meta__value { font-size: 13px; line-height: 20px; color: #333; }

/* ==========================================================================
   20. İLETİŞİM  (page-iletisim.php)
   ========================================================================== */

.soli-contact__pills {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: var(--soli-s2);
  margin-block: clamp(2rem, 1rem + 3vw, 3.5rem);
}
.soli-contact__pill { display: grid; justify-items: center; gap: 12px; }
.soli-contact__pill b {
  padding: 7px 22px;
  font-size: var(--soli-fs-xs);
  font-weight: 600;
  border-radius: var(--soli-radius-pill);
  background: var(--soli-yellow);
  color: var(--soli-ink);
}
.soli-contact__pill a { font-size: var(--soli-fs-sm); font-weight: 600; color: var(--soli-ink); }
.soli-contact__pill a:hover { color: var(--soli-blue); }
.soli-contact__sep {
  flex: 0 1 120px;
  border-top: 1px dotted var(--soli-line);
  margin-bottom: 26px;
}

.soli-contact__base { text-align: center; }
.soli-contact__base p { font-size: var(--soli-fs-sm); color: var(--soli-muted); }

/* Satis agi kartlari */
.soli-staff {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(14px, 1.4vw, 22px);
}
.soli-staff__card {
  display: grid;
  gap: 6px;
  padding: var(--soli-s3);
  border: 1px solid var(--soli-line);
  border-radius: var(--soli-radius-sm);
  text-align: center;
}
.soli-staff__role { font-size: var(--soli-fs-xs); color: var(--soli-muted); }
.soli-staff__name { font-size: var(--soli-fs-body); font-weight: 700; text-transform: uppercase; }
.soli-staff__card a { font-size: var(--soli-fs-sm); color: var(--soli-blue); word-break: break-word; }

/* ==========================================================================
   21. DOKÜMANLAR  (archive-dokuman.php)
   ========================================================================== */

/* Canli olcum: gölgeli beyaz kap (radius 10, padding 20); kart 1px #E1E1E1
   radius 10, padding 25px 15px; ikon 40px mavi; etiket 16px w500 #222 */
.soli-doccard-wrap {
  padding: 20px;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}
.soli-docgrid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 20px 23px;
}
.soli-doccard {
  display: grid;
  justify-items: center;
  align-content: start;
  gap: 6px;
  min-height: 142px;
  padding: 25px 15px;
  background: #fff;
  border: 1px solid #e1e1e1;
  border-radius: 10px;
  text-align: center;
  color: #222;
}
.soli-doccard:hover { border-color: var(--soli-blue); color: var(--soli-blue); }
.soli-doccard .soli-icon { width: 40px; height: 40px; color: var(--soli-blue); }
.soli-doccard span { font-size: var(--soli-fs-body); font-weight: 500; line-height: 1.3; }
/* NOT: 9 oge / 5 sutun -> 10. hucre bos kalir. Birebir korundu, bkz. J4. */
.soli-doccard--empty { border-color: var(--soli-line); pointer-events: none; }

/* ==========================================================================
   22. BLOG  (home.php / single.php)
   ========================================================================== */

.soli-postlist { max-width: 780px; margin-inline: auto; }

.soli-post {
  padding-block: clamp(2rem, 1rem + 3vw, 3.5rem);
  border-bottom: 1px solid var(--soli-line);
}
.soli-post:last-child { border-bottom: 0; }
/* Canli sitede olculdu: baslik 30px/39px, ozet 18.4px/31.28px — mobilde de ayni */
.soli-post__title { font-size: 1.875rem; font-weight: 600; line-height: 1.3; }
.soli-post__title a { color: inherit; }
.soli-post__title a:hover { color: var(--soli-blue); }
.soli-post__date { margin-top: var(--soli-s2); font-size: var(--soli-fs-xs); color: var(--soli-muted); }
.soli-post__excerpt {
  margin-top: var(--soli-s3);
  font-size: 1.15rem;
  line-height: 1.7;
  color: var(--soli-muted);
  text-align: justify;   /* mevcut sitede boyle — bkz. B3 */
}
.soli-post__more { display: flex; justify-content: flex-end; margin-top: var(--soli-s3); }
.soli-post__more a {
  padding: 9px 20px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-radius: var(--soli-radius-pill);
  background: var(--soli-surface-2);
  border: 1px solid var(--soli-line);
  color: var(--soli-ink);
}
.soli-post__more a:hover { background: var(--soli-blue); border-color: var(--soli-blue); color: #fff; }

/* Tekil yazi govdesi */
.soli-entry { max-width: var(--soli-measure); margin-inline: auto; }
.soli-entry h2 { font-size: clamp(1.375rem, 1rem + 1.4vw, 1.75rem); margin-block: 1.6em 0.6em; }
.soli-entry h3 { font-size: 1.25rem; margin-block: 1.4em 0.5em; }
.soli-entry ul { list-style: disc; padding-left: 1.25em; margin-block: 1em; }
.soli-entry li { margin-bottom: 0.4em; }
.soli-entry img { border-radius: var(--soli-radius-sm); margin-block: 1.5em; }

/* ==========================================================================
   23. FOTO GALERİ  (page-galeri.php)
   ========================================================================== */

.soli-galwrap { position: relative; padding-left: clamp(0px, 5vw, 74px); }
.soli-galwrap__label {
  position: absolute;
  left: 0; top: 0;
  font-size: clamp(1.5rem, 1rem + 2vw, 2.5rem);
  font-weight: 700;
  letter-spacing: 0.06em;
  color: var(--soli-blue);
  writing-mode: vertical-rl;
  rotate: 180deg;
}
.soli-gal {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 15px;
}
.soli-gal a {
  display: block;
  overflow: hidden;
  background: var(--soli-surface-3);
  aspect-ratio: 261 / 206;   /* canli sitede olculen hucre orani */
}
.soli-gal img {
  width: 100%; height: 100%;
  object-fit: cover;
  transition: scale 0.5s var(--soli-ease);
}
.soli-gal a:hover img { scale: 1.05; }
/* Genis oge 2 sutun kaplar ama satir yuksekligi ayni kalmali:
   537 = 261*2 + 15 (bosluk) */
.soli-gal a.is-wide { grid-column: span 2; aspect-ratio: 537 / 206; }

/* ==========================================================================
   24. METİN SAYFASI / KAMPANYA / 404
   ========================================================================== */

.soli-prose { max-width: 960px; margin-inline: auto; text-align: center; }
/* Sola yasli varyant — uzun kurumsal metinlerde okuma kolayligi icin */
.soli-prose--left { text-align: left; }
.soli-prose--left .soli-prose__kicker,
.soli-prose--left .soli-prose__title { text-align: left; }
.soli-prose p { color: var(--soli-muted); margin-bottom: 1.4em; }
.soli-prose strong { color: var(--soli-blue); }
.soli-prose .soli-prose__kicker {   /* (0,2,0) > .soli-prose p (0,1,1) */
  font-size: var(--soli-fs-body);
  font-weight: 700;
  color: var(--soli-ink);
  margin-bottom: 12px;
}
.soli-prose__title {
  font-family: var(--soli-font-sans);
  font-size: clamp(2rem, 1rem + 3.2vw, 3.5rem);
  font-weight: 700;
  line-height: 1.16;
  color: var(--soli-ink);
}
.soli-prose__underline {
  display: inline-block;
  border-bottom: 2px solid var(--soli-blue-300);
  padding-bottom: 4px;
}

/* Kampanya başlığı — canlı: 28px w300 #2D70B3, ortalı, büyük harf */
.soli-campaign__head { text-align: center; max-width: 1210px; margin-inline: auto; }
.soli-campaign__title {
  font-size: clamp(1.375rem, 1rem + 1.1vw, 1.75rem);   /* 22 → 28px */
  font-weight: 300;
  line-height: normal;
  text-transform: uppercase;
  color: #2d70b3;
}
.soli-campaign__lead { margin-top: 10px; font-size: var(--soli-fs-body); line-height: 1.65; font-weight: 700; color: var(--soli-blue); }
.soli-campaign__lead + .soli-campaign__lead { margin-top: 0; }
.soli-campaign__note { margin-top: 10px; font-size: 14px; color: #68737d; }

.soli-campaign__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(24px, 3vw, 56px);
  margin-top: clamp(2rem, 1rem + 3vw, 3.5rem);
}
.soli-campaign__card { text-align: center; }
.soli-campaign__card img { width: 100%; border-radius: var(--soli-radius-sm); }
.soli-campaign__card h3 {
  margin-top: var(--soli-s3);
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--soli-blue);
}
.soli-campaign__card p { margin-top: var(--soli-s2); font-size: var(--soli-fs-sm); color: var(--soli-muted); }

.soli-404 { text-align: center; padding-block: clamp(4rem, 2rem + 8vw, 9rem); }
.soli-404__code {
  font-family: var(--soli-font-display);
  font-size: clamp(5rem, 2rem + 14vw, 12rem);
  font-weight: 700;
  line-height: 1;
  color: var(--soli-blue);
}
.soli-404__text { margin-block: var(--soli-s3) var(--soli-s5); color: var(--soli-muted); }

/* ==========================================================================
   25. RESPONSIVE — iç sayfalar
   ========================================================================== */

@media (max-width: 1024px) {
  .soli-refgrid,
  .soli-staff,
  .soli-gal { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .soli-docgrid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .soli-refdetail__grid,
  .soli-campaign__grid { grid-template-columns: minmax(0, 1fr); }
  .soli-meta { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
  /* Canli sitede mobil kart 272px genisliginde, tam genislik degil */
  .soli-refgrid {
    grid-template-columns: minmax(0, 1fr);
    max-width: 272px;
    margin-inline: auto;
  }
  .soli-staff,
  .soli-docgrid,
  .soli-gal { grid-template-columns: minmax(0, 1fr); }
  .soli-meta { grid-template-columns: minmax(0, 1fr); }
  .soli-filter__field { min-width: 100%; }
  .soli-filter__submit { width: 100%; }
  .soli-gal a.is-wide { grid-column: span 1; }
  .soli-galwrap { padding-left: 0; }
  .soli-galwrap__label { position: static; writing-mode: horizontal-tb; rotate: none; margin-bottom: var(--soli-s3); }
  .soli-contact__sep { display: none; }
}

/* ==========================================================================
   26. KİLOMETRE TAŞLARI  (tarihçe zaman çizelgesi)
   Canlı sitede ölçülen yapı: 1210px kapsayıcı, 2×605 sütun, 900px sabit
   yükseklik, sağ sütun iç kaydırmalı (overflow-y:auto).
   ========================================================================== */

.soli-tl__badge {
  display: block;
  width: fit-content;
  margin: 0 auto 0;   /* canli: rozet ile cizelge bitisik */
  padding: 10px 26px;
  font-size: var(--soli-fs-xs);
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--soli-blue);
  background: var(--soli-tint);
  border-radius: var(--soli-radius-pill);
}

.soli-tl {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  height: 900px;
  overflow: hidden;
}

.soli-tl__media { overflow: hidden; }
.soli-tl__media img { width: 100%; height: 100%; object-fit: cover; }

.soli-tl__scroll {
  height: 900px;
  overflow-y: auto;
  padding-left: 30px;
  border-left: 1px dashed var(--soli-line);
  scrollbar-width: thin;
}

.soli-tl__event {
  display: grid;
  grid-template-columns: 70px minmax(0, 1fr) 90px;
  align-items: center;
  gap: 20px;
  min-height: 94px;
  padding-block: 14px;
}
.soli-tl__year {
  font-size: 1.5rem;
  font-weight: 600;
  color: var(--soli-ink);
}
.soli-tl__text { margin: 0; font-size: var(--soli-fs-body); color: var(--soli-muted); }
.soli-tl__logo { display: grid; place-items: center; min-height: 40px; }
.soli-tl__logo img { max-height: 40px; width: auto; object-fit: contain; }

@media (max-width: 1024px) {
  /* Mobilde ic kaydirma yok, liste tam acilir (canli sitedeki davranis) */
  .soli-tl { grid-template-columns: minmax(0, 1fr); height: auto; }
  .soli-tl__media { max-height: 320px; }
  .soli-tl__scroll { height: auto; max-height: none; overflow-y: visible; padding-left: 20px; }
}

@media (max-width: 720px) {
  .soli-tl__event { grid-template-columns: 62px minmax(0, 1fr); }
  .soli-tl__logo { grid-column: 2; justify-items: start; }
  .soli-tl__year { font-size: 1.25rem; }
}

/* ==========================================================================
   27. SAYFALAMA
   ========================================================================== */

.soli-pager {
  display: grid;
  justify-items: center;
  gap: var(--soli-s2);
  max-width: 780px;
  margin: 0 auto;
  padding-block: clamp(2rem, 1rem + 3vw, 3.5rem);
}
.soli-pager__info { font-size: var(--soli-fs-xs); color: var(--soli-muted); }
.soli-pager__list { display: flex; gap: 6px; }
.soli-pager__link {
  display: grid;
  place-items: center;
  min-width: 34px; height: 34px;
  padding-inline: 8px;
  font-size: var(--soli-fs-sm);
  border: 1px solid var(--soli-line);
  border-radius: var(--soli-radius-sm);
  color: var(--soli-ink);
}
.soli-pager__link:hover { border-color: var(--soli-blue); color: var(--soli-blue); }
.soli-pager__link.is-current {
  background: var(--soli-blue);
  border-color: var(--soli-blue);
  color: #fff;
}

/* Isı pompası bölümü etiketi — canlı sitede 14px/18.2px, w600, ls 2px
   (giriş bölümündeki etiketten farklı) */
.soli-hp .soli-eyebrow {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: 2px;
}

/* ==========================================================================
   28. KURUMSAL — DEĞERLERİMİZ
   Canlı ölçüm: başlık 50px/w600/#111 ortalı; arkasında 176px/193.6px w700
   #F0F7FF hayalet başlık. Altında 3 sütun: 387 / 307 / 387, aralık 65px.
   Orta sütunda istatistikler üst üste — sırayla değişen sayaç.
   ========================================================================== */

.soli-values { position: relative; }

.soli-values__head { position: relative; text-align: center; }
.soli-values__ghost {
  position: absolute;
  z-index: 0;                 /* metinlerin altinda kalmali */
  inset-inline: 0;
  top: 50%;
  translate: 0 -50%;
  font-size: clamp(3.5rem, 0.5rem + 8.6vw, 11rem);   /* 56 → 176 */
  font-weight: 700;
  line-height: 1.1;
  color: #f0f7ff;
  white-space: nowrap;
  pointer-events: none;
  user-select: none;
}
.soli-values__title {
  position: relative;
  z-index: 1;
  font-size: clamp(1.75rem, 0.9rem + 2.9vw, 3.125rem);   /* 28 → 50 */
  font-weight: 600;
  line-height: normal;
  color: #111;
}

.soli-values__grid {
  display: grid;
  grid-template-columns: minmax(0, 387fr) minmax(0, 307fr) minmax(0, 387fr);
  gap: 65px;
  margin-top: clamp(2rem, 1rem + 3vw, 3.5rem);
  align-items: start;
}

.soli-values__sub {
  font-size: 1.25rem;          /* canli: 20px */
  font-weight: 300;
  line-height: normal;
  color: var(--soli-blue);
  margin-bottom: var(--soli-s3);
}
.soli-values__col p { font-size: var(--soli-fs-body); color: var(--soli-muted); }
.soli-values__col--left { text-align: center; }
.soli-values__col--right { text-align: right; }
.soli-values__col--right .soli-values__sub { text-align: right; }

/* Sayac — canli sitedeki dairesel diyagram (Enfold "icon circles")
   Olculer: cember 387px, ikonlar 60px, merkez logo 232x160,
   sayi 45px/58.5px, etiket 24px/26.4px, renk #657078, cizgi #e1e1e1. */
.soli-stats {
  position: relative;
  width: 387px;              /* canli olcum; sutundan (307px) tasar */
  aspect-ratio: 1;
  justify-self: center;      /* sutundan genis; margin:auto justify-self i ezdigi icin kaldirildi */
  border: 1px solid #e1e1e1;
  border-radius: 50%;
}

/* Merkezdeki Akademi logosu — varsayilan icerik */
.soli-stats__logo {
  position: absolute;
  top: 50%; left: 50%;
  translate: -50% -50%;
  width: 232px; height: 160px;
  max-width: 62%;
  object-fit: contain;
  transition: opacity 0.35s var(--soli-ease);
}
.soli-stats.is-active .soli-stats__logo { opacity: 0; }

/* Cember uzerindeki 4 ikon butonu */
.soli-stat-btn {
  position: absolute;
  display: grid;
  place-items: center;
  width: 60px; height: 60px;
  border: 1px solid #e1e1e1;
  border-radius: 50%;
  background: #fff;
  color: var(--soli-blue);
  cursor: pointer;
  transition: background-color 0.3s var(--soli-ease),
              border-color 0.3s var(--soli-ease),
              color 0.3s var(--soli-ease),
              scale 0.3s var(--soli-ease);
}
.soli-stat-btn .soli-icon { width: 26px; height: 26px; }
/* Aktif/hover: sari zemin. Sari uzerine beyaz ikon kontrast vermedigi icin
   ikon koyu renge doner (kontrast ~13:1). */
.soli-stat-btn:hover,
.soli-stat-btn:focus-visible,
.soli-stat-btn[aria-expanded="true"] {
  background: var(--soli-yellow);
  border-color: var(--soli-yellow);
  color: var(--soli-ink);
  scale: 1.08;
}

.soli-stat-btn--ust    { top: 0;  left: 50%; translate: -50% -50%; }
.soli-stat-btn--sag    { top: 50%; right: 0; translate: 50% -50%; }
.soli-stat-btn--alt    { bottom: 0; left: 50%; translate: -50% 50%; }
.soli-stat-btn--sol    { top: 50%; left: 0;  translate: -50% -50%; }

/* Sayi paneli — ikona gelince merkezde belirir */
.soli-stat {
  position: absolute;
  inset: 2px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 12px;
  border-radius: 50%;
  background: #fff;
  text-align: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.35s var(--soli-ease), visibility 0.35s;
  pointer-events: none;
}
.soli-stat.is-active { opacity: 1; visibility: visible; }

.soli-stat__num {
  font-size: 2.8125rem;        /* 45px */
  font-weight: 400;
  line-height: 1.3;
  color: var(--soli-muted);
}
.soli-stat__label {
  margin: 0;
  font-size: 1.5rem;           /* 24px */
  font-weight: 400;
  line-height: 1.1;
  color: var(--soli-muted);
  max-width: 70%;
}

@media (max-width: 900px) {
  .soli-values__grid { grid-template-columns: minmax(0, 1fr); gap: var(--soli-s5); }
  .soli-stats { width: min(387px, calc(100% - 70px)); }   /* ikonlar 30px disari tasiyor */
  .soli-values__col--right,
  .soli-values__col--right .soli-values__sub { text-align: center; }
}

/* Değerler bölümü giriş paragrafları — canlı: başlık altında, ortalı */
.soli-values__intro {
  position: relative;
  z-index: 1;                 /* hayalet basligin ustunde */
  max-width: 900px;
  margin: 16px auto 0;          /* baslikla arasi daraltildi (32 -> 16px) */
  text-align: center;
}
.soli-values__intro p { color: var(--soli-muted); margin-bottom: 0.25em; }   /* paragraf arasi 13 -> 4px */



/* Kurumsal — tanıtım metni ile Değerlerimiz bölümü arasındaki boşluk.
   Varsayılan bölüm boşluğu (96+96) burada 214px'lik bir aralık bırakıyordu. */
.soli-section#tanitim { padding-bottom: clamp(1rem, 0.5rem + 1.2vw, 28px); }
.soli-section.soli-values { padding-top: 2px; }   /* baslik yukari cekildi */

/* ==========================================================================
   29. TARİHÇE — üst bölüm
   Canlı sayfadan ölçüldü (1440px):
   - kicker "Tarihçemiz": h3, 20px / 22px, w600, #222, y=195
   - başlık: 90px / 72px, w700, ls 1px, #222, y=225 (2 satır = 144px)
   - "Zirvedeyiz" altında elips kenarlıklı mavi yay (Enfold .highlight.style2)
   - metin: tam konteyner (1210px), 16px / 26.4px, paragraf arası ~13px,
     başlık bitişinden 74px aşağıda
   Not: Canlıda başlık Cormorant Upright; tek-aile kararı gereği IBM Plex Sans.
   ========================================================================== */

.soli-section.soli-history { padding-top: clamp(1.5rem, 0.5rem + 3.4vw, 55px); }

.soli-history__prose { max-width: none; }

.soli-history__kicker {
  margin: 0;
  font-size: 1.25rem;          /* 20px */
  font-weight: 600;
  line-height: 1.1;            /* 22px */
  color: #222;
}

.soli-history__title {
  margin: 8px 0 0;
  font-size: clamp(2.75rem, 0.6rem + 5.6vw, 5.625rem);   /* 44 → 90px @1440 */
  font-weight: 700;
  line-height: 0.8;            /* 72px / 90px */
  letter-spacing: 1px;
  color: #222;
  text-wrap: normal;
}

/* "Zirvedeyiz" — altında yay çizgi (canlıdaki elips kenarlık tekniği) */
.soli-history__hl {
  position: relative;
  display: inline-block;
  z-index: 1;
}
/* Canlidaki gorunum: harf tabanina degen, yukari kavisli (tepe seklinde)
   ince bir yay; soldan saga hafif yukselir, "y" kuyrugunu keser.
   Elipsin yalnizca UST kenarligi gorunur -> uclari incelen yay. */
.soli-history__hl::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 94%;
  width: 106%;
  height: 46px;
  translate: -50% 0;
  rotate: -2deg;
  border-top: 3px solid var(--soli-blue);
  border-radius: 50%;
  z-index: -1;
  pointer-events: none;
}

.soli-history__text {
  margin-top: clamp(2rem, 1rem + 3.5vw, 74px);
}
.soli-history__text p {
  margin: 0 0 13px;
  font-size: var(--soli-fs-body);
  line-height: 1.65;           /* 26.4px */
}
.soli-history__text p:last-child { margin-bottom: 0; }

/* Kicker: .soli-prose p kuralı (0,1,1) margin-bottom:1.4em ekliyordu */
.soli-history__prose .soli-history__kicker { margin: 0; }

/* Tarihçe bölümü alt boşluk + zaman çizelgesi üst boşluk = canlıdaki 113px */
.soli-section.soli-history { padding-bottom: clamp(1.5rem, 0.5rem + 3.4vw, 56px); }
.soli-section.soli-timeline { padding-top: clamp(1.5rem, 0.5rem + 4.2vw, 69px); }

/* ==========================================================================
   30. ZAMAN ÇİZELGESİ — canlı ölçüm (1440px)
   Kapsayıcı 1210×900; sol hücre 605×900 içinde görsel 532×640 ORTALI;
   sağ liste padding 30px 30px 0; her olay 545×94, padding 20px,
   satır aralığı 134px (94 + 40); yıl x=770, metin x=840.
   Rozet ile kapsayıcı arasında boşluk yok.
   ========================================================================== */

.soli-tl__media {
  display: grid;
  place-items: center;
  overflow: hidden;
}
.soli-tl__media img {
  width: min(532px, 100%);
  height: auto;
  aspect-ratio: 532 / 640;
  object-fit: cover;
}

.soli-tl__scroll { padding: 30px 30px 0; }

.soli-tl__event {
  /* logo sutunu 'auto': logosuz olaylarda yer tutmaz, metin genisler */
  grid-template-columns: 55px minmax(0, 1fr) auto;
  gap: 15px;
  align-items: baseline;       /* yil, metnin ilk satiriyla ayni hizada */
  min-height: 94px;
  padding: 20px;
  margin-bottom: 40px;
  box-sizing: border-box;
}
.soli-tl__event .soli-tl__logo { align-self: center; }
.soli-tl__logo:empty { display: none; }
.soli-tl__year { line-height: 1.1; color: #222; }
.soli-tl__text { line-height: 1.65; }

/* Zaman çizelgesi — mobil. Yukarıdaki masaüstü ölçüleri (liste 30px, olay 20px
   iç boşluk) kaynak sırası nedeniyle önceki mobil kuralı eziyordu. */
@media (max-width: 720px) {
  .soli-tl__scroll { padding: 16px 0 0 16px; }
  .soli-tl__event {
    grid-template-columns: 52px minmax(0, 1fr);
    padding: 12px 0;
    margin-bottom: 12px;
    min-height: 0;
  }
  .soli-tl__event .soli-tl__logo { grid-column: 2; justify-self: start; }
}

/* ==========================================================================
   31. YASAL / POLİTİKA SAYFA ŞABLONU  (politikalar, KVKK)
   Canlı ölçüm (1440px):
   - Politika alt menüsü: tam genişlik 1440×52, #F0F7FF, header altında yapışkan;
     linkler 13px / #111, padding 15px 0, ortalı
   - Hayalet kelime 176px / 193.6px, w700, #F0F7FF; başlık 50px w600 #111 ortalı
   - Gövde: 1210px, 16px / 26.4px, #657078, sola yaslı; tek <p> içinde <br> ile satırlar
   - Vurgu satırları (ÇEVRE TAAHHÜDÜMÜZ; vb.) kalın italik mavi, imza italik
   - KVKK butonları: 16px, radius 12px, padding 12px 16px 10px;
     mavi #0076C0 / beyaz, sarı #F7CF07 / #1D2327
   WP karşılığı: page-politika.php + template-parts/legal/*
   ========================================================================== */

.soli-subnav {
  position: sticky;
  top: var(--soli-header-h);
  z-index: 50;
  background: #f0f7ff;
}
.soli-subnav__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0 22px;
}
.soli-subnav__list a {
  display: block;
  padding: 15px 0;
  font-size: 13px;
  line-height: 1.65;
  color: #111;
  transition: color var(--soli-dur) var(--soli-ease);
}
.soli-subnav__list a:hover,
.soli-subnav__list a[aria-current="page"] { color: var(--soli-blue); }
.soli-subnav__list a[aria-current="page"] { font-weight: 600; }

.soli-legal { padding-block: 0 clamp(3rem, 1.5rem + 5vw, 96px); }

.soli-legal__head {
  position: relative;
  text-align: center;
  padding-block: clamp(1.5rem, 0.5rem + 3vw, 52px) clamp(2rem, 1rem + 4.2vw, 72px);
}
.soli-legal__ghost {
  position: absolute;
  inset-inline: 0;
  top: 50%;
  translate: 0 -50%;
  z-index: 0;
  font-size: clamp(3.5rem, 0.5rem + 11.7vw, 11rem);   /* 56 → 176px @1440 */
  font-weight: 700;
  line-height: 1.1;
  color: #f0f7ff;
  white-space: nowrap;
  overflow: hidden;
  pointer-events: none;
  user-select: none;
}
.soli-legal__title {
  position: relative;
  z-index: 1;
  font-size: clamp(1.75rem, 0.9rem + 2.9vw, 3.125rem);   /* 28 → 50px */
  font-weight: 600;
  line-height: normal;
  color: #111;
}

/* KVKK düğmeleri */
.soli-legal__actions {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin-top: 8px;
}
.soli-legal__btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 16px 10px;
  font-size: var(--soli-fs-body);
  line-height: 1.2;
  border-radius: 12px;
  transition: filter var(--soli-dur) var(--soli-ease), transform var(--soli-dur) var(--soli-ease);
}
.soli-legal__btn:hover { filter: brightness(1.07); transform: translateY(-1px); }
.soli-legal__btn .soli-icon { width: 16px; height: 16px; }
.soli-legal__btn--mavi { background: var(--soli-blue); color: #fff; }
.soli-legal__btn--mavi:hover { color: #fff; }
.soli-legal__btn--sari { background: var(--soli-yellow); color: #1d2327; }
.soli-legal__btn--sari:hover { color: #1d2327; }

/* Gövde */
.soli-legal__body {
  font-size: var(--soli-fs-body);
  line-height: 1.65;            /* 26.4px */
  color: var(--soli-muted);
}
.soli-legal__body p { margin: 0 0 16px; }
.soli-legal__body p:last-child { margin-bottom: 0; }
.soli-legal__body strong { color: var(--soli-ink); }
/* Mavi kalın vurgu (ÇEVRE TAAHHÜDÜMÜZ;, AÇIK RIZA BEYANI vb.) */
.soli-legal__body .soli-legal__vurgu,
.soli-legal__body .soli-legal__vurgu strong,
.soli-legal__body em strong,
.soli-legal__body strong em { color: var(--soli-blue); font-weight: 700; }
.soli-legal__body .soli-legal__vurgu--italik { font-style: italic; }
.soli-legal__body em { font-style: italic; }
.soli-legal__vurgu strong { font-weight: inherit; }   /* bolder -> 900 olmasin */
.soli-legal__body ul,
.soli-legal__body ol { margin: 0 0 16px; padding-left: 1.3em; list-style: disc; }
.soli-legal__body ol { list-style: decimal; }
.soli-legal__body li { margin-bottom: 4px; }
.soli-legal__body h2,
.soli-legal__body h3,
.soli-legal__body h4 {
  margin: 28px 0 10px;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.4;
  color: var(--soli-ink);
}

/* ==========================================================================
   32. SOLİMPEKS ORMANI  (page-solimpeks-ormani.php)
   Canlı ölçüm (1440px):
   - Video: 1440×900, iframe 1600×900 ortadan kırpılmış, header altında y=0
   - Başlık 35px w300, #7EBD28 + dönen kelime #0072BC, y=950
   - Paragraf 17px / 28.05px, ortalı; istatistik 40px / ls -2px / #222,
     "kg" 32px, etiket 15px / 19.5px; iki 303px sütun ortalı
   - Akordeon 1210×46, 1px #E1E1E1, 16px w500 #0076C0, padding 9px 3px 9px 35px
   - Tablo: 13px / 28px büyük harf; başlık #F0F7FF / #504C89, hücre #919191
   - Galeri: 5 sütun, 245×245 kare, boşluksuz
   ========================================================================== */

.soli-ormani-video {
  position: relative;
  height: clamp(320px, 62.5vw, 900px);
  margin-top: calc(-1 * var(--soli-header-h));   /* header videonun üstüne biner */
  overflow: hidden;
  background: #0e1620;
}
.soli-ormani-video iframe {
  position: absolute;
  top: 50%; left: 50%;
  width: max(100%, 177.78vh, 1600px);
  aspect-ratio: 16 / 9;
  height: auto;
  translate: -50% -50%;
  border: 0;
  pointer-events: none;
}

.soli-ormani { padding-block: 50px clamp(3rem, 1.5rem + 5vw, 96px); text-align: center; }

.soli-ormani__title {
  font-size: clamp(1.5rem, 1rem + 1.4vw, 2.1875rem);   /* 24 → 35px */
  font-weight: 300;
  line-height: 1.1;
  color: #7ebd28;
}
/* Donen kelime: aktif kelime akista (genisligi o belirler), digerleri ustte
   gizli durur. inline-grid en uzun kelimeye gore genislik aliyordu. */
.soli-rotator {
  position: relative;
  display: inline-block;
  color: #0072bc;
}
.soli-rotator > span {
  display: inline-block;
  transition: opacity 0.5s var(--soli-ease), transform 0.5s var(--soli-ease);
}
.soli-rotator > span:not(.is-active) {
  position: absolute;
  left: 0; top: 0;
  opacity: 0;
  transform: translateY(30px);
  white-space: nowrap;
}

.soli-ormani__text {
  margin: 14px auto 0;
  font-size: 17px;
  line-height: 1.65;           /* 28.05px */
  color: var(--soli-muted);
}

.soli-ormani__stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 303px));
  justify-content: center;
  margin-top: 36px;
}
.soli-ormani__num {
  display: inline-flex;
  align-items: flex-start;
  gap: 4px;
  font-size: 40px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: -2px;
  color: #222;
}
.soli-ormani__num small { font-size: 32px; letter-spacing: -2px; align-self: flex-end; }
.soli-ormani__num .soli-icon { width: 30px; height: 30px; color: #222; stroke-width: 1.4; }
.soli-ormani__label {
  display: block;
  margin-top: 6px;
  font-size: 15px;
  line-height: 1.3;
  color: var(--soli-muted);
}

/* Akordeon */
.soli-acc-kutu { margin-top: 55px; text-align: left; }
.soli-acc-kutu__btn {
  position: relative;
  display: block;
  width: 100%;
  padding: 9px 3px 9px 35px;
  font-size: var(--soli-fs-body);
  font-weight: 500;
  line-height: 1.65;
  color: var(--soli-blue);
  text-align: left;
  background: #fff;
  border: 1px solid #e1e1e1;
  border-radius: 2px 2px 0 0;
}
.soli-acc-kutu__btn .soli-icon {
  position: absolute;
  left: 11px; top: 50%;
  width: 15px; height: 15px;
  translate: 0 -50%;
  transition: rotate 0.3s var(--soli-ease);
}
.soli-acc-kutu__btn[aria-expanded="true"] .soli-icon { rotate: 45deg; }
.soli-acc-kutu__panel {
  border: 1px solid #e1e1e1;
  border-top: 0;
  background: #fcfcfc;
  max-height: 460px;
  overflow-y: auto;
}
.soli-acc-kutu__panel[hidden] { display: none; }

.soli-sertifika {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
  line-height: 28px;
  text-transform: uppercase;
}
.soli-sertifika th,
.soli-sertifika td {
  padding: 9px 12px;
  border: 1px solid #e1e1e1;
  text-align: left;
  font-weight: 400;
}
.soli-sertifika th { background: #f0f7ff; color: #504c89; position: sticky; top: 0; }
.soli-sertifika td { color: #919191; }
.soli-sertifika__not {
  margin: 0;
  padding: 12px;
  font-size: 13px;
  color: var(--soli-muted);
  text-transform: none;
}

/* Galeri */
.soli-ormani__galeri {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin-top: clamp(3rem, 2rem + 5.6vw, 113px);
}
.soli-ormani__galeri a { display: block; aspect-ratio: 1; overflow: hidden; }
.soli-ormani__galeri img {
  width: 100%; height: 100%;
  object-fit: cover;
  transition: transform 0.6s var(--soli-ease), filter 0.4s var(--soli-ease);
}
.soli-ormani__galeri a:hover img { transform: scale(1.06); filter: brightness(1.05); }

@media (max-width: 900px) {
  .soli-ormani__galeri { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .soli-ormani__galeri { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .soli-ormani__stats { grid-template-columns: minmax(0, 1fr); gap: 24px; }
}

/* ==========================================================================
   33. KAMPANYALAR — canlı ölçüm (1440px)
   Başlık 28px w300 #2D70B3; kartlar iki 569px sütunda 400px ortalı.
   ========================================================================== */
.soli-kampanya-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 72px;
  justify-items: center;
  align-items: start;
  margin-top: 52px;
}
.soli-kampanya {
  width: min(400px, 100%);
  border: 1px solid #e1e1e1;
  background: #fff;
}
.soli-kampanya__img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 400 / 267;
  object-fit: cover;
  border-radius: 3px 3px 0 0;
}
.soli-kampanya__body { padding: 22px 20px 10px; }
.soli-kampanya__title {
  font-size: 22px;
  font-weight: 700;
  line-height: 1.1;
  color: #971d36;
  text-align: center;
}
.soli-kampanya__kapsam {
  margin-top: 14px;
  font-size: 15px;
  line-height: 1.65;
  color: #555;
  text-align: center;
}
.soli-kampanya__alt { margin-top: 12px; text-align: center; }
.soli-kampanya__alt strong { font-size: var(--soli-fs-body); color: var(--soli-blue); }
.soli-kampanya__body > p:not([class]) {
  margin-top: 12px;
  font-size: var(--soli-fs-body);
  line-height: 1.65;
  color: var(--soli-muted);
}
.soli-kampanya__pdf { margin-top: 16px; text-align: center; }
.soli-kampanya__pdf a {
  font-size: 13px;
  font-weight: 600;
  color: #444;
  text-decoration: underline;
}
.soli-kampanya__pdf a:hover { color: var(--soli-blue); }

.soli-kampanya__foot {
  display: grid;
  justify-items: center;
  gap: 10px;
  margin: 0 20px 20px;
  padding: 12px 10px;
  background: #f5f5f5;
  border-top: 1px solid #e1e1e1;
}
.soli-kampanya__btn {
  display: block;
  width: min(250px, 100%);
  padding: 10px 15px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  color: #fff;
  background: #971d36;
  border-radius: 4px;
  transition: background-color var(--soli-dur) var(--soli-ease);
}
.soli-kampanya__btn:hover { background: #7c172c; color: #fff; }
.soli-kampanya__gecerlilik { font-size: 11px; color: #767676; }

@media (max-width: 860px) {
  .soli-kampanya-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
}

/* ==========================================================================
   34. İLETİŞİM — satış ağı + yurtdışı (canlı ölçüm, 1440px)
   ========================================================================== */
.soli-contact__cta { margin-top: 32px; }
.soli-map iframe { display: block; width: 100%; border: 0; }

.soli-agents { padding-block: clamp(2rem, 1rem + 1.5vw, 38px) 0; }   /* canli olcum */
.soli-agents__head { position: relative; text-align: center; margin-bottom: clamp(1.5rem, 1rem + 2.5vw, 60px); }
.soli-agents__ghost {
  position: absolute;
  inset-inline: 0;
  top: 50%;
  translate: 0 -50%;
  font-size: clamp(3.5rem, 0.5rem + 11.7vw, 11rem);   /* 56 → 176px */
  font-weight: 700;
  line-height: 1.1;
  color: #f0f7ff;
  white-space: nowrap;
  overflow: hidden;
  pointer-events: none;
  user-select: none;
}
.soli-agents__title {
  position: relative;
  font-size: clamp(1.75rem, 0.9rem + 2.9vw, 3.125rem);   /* 28 → 50px */
  font-weight: 600;
  line-height: normal;
  color: #111;
}

/* Beyaz gölgeli kap — kartlar 4'lü satırlar, son satır genişler */
.soli-agents__box {
  display: flex;
  flex-wrap: wrap;
  gap: 20px 23px;
  padding: 20px;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}
.soli-agent {
  flex: 1 1 calc(25% - 18px);
  min-width: 220px;
  display: grid;
  justify-items: center;
  align-content: start;
  gap: 0;
  padding: 25px 15px;
  text-align: center;
  background: #fff;
  border: 1px solid #e1e1e1;
  border-radius: 10px;
}
.soli-agent__icon { width: 40px; height: 40px; margin-bottom: 8px; color: var(--soli-blue); }
.soli-agent__role {
  font-size: var(--soli-fs-body);
  font-weight: 500;
  line-height: 1.3;
  color: #222;
}
.soli-agent__name { margin-top: 5px; font-size: 13px; font-weight: 700; line-height: 20px; color: #333; }
.soli-agent__line { font-size: 13px; line-height: 20px; color: #333; }
.soli-agent__name + .soli-agent__line,
.soli-agent__role + .soli-agent__line { margin-top: 13px; }   /* canli: isim -> telefon 13px */
a.soli-agent__line:hover { color: var(--soli-blue); }

/* Yurtdışı */
.soli-abroad { padding-block: clamp(2rem, 1rem + 2.4vw, 50px) clamp(3rem, 1.5rem + 5vw, 96px); }   /* kap alti -> baslik 50px */
.soli-abroad__title {
  display: flex;
  align-items: center;
  gap: 24px;
  font-size: clamp(1.375rem, 0.9rem + 1.1vw, 1.75rem);   /* 22 → 28px */
  font-weight: 600;
  line-height: normal;
  color: #111;
  text-align: center;
}
.soli-abroad__title::before,
.soli-abroad__title::after { content: ""; flex: 1; height: 1px; background: #e1e1e1; }
.soli-abroad__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 32px 72px;
  margin-top: 20px;
}
.soli-abroad__item { display: grid; justify-items: center; gap: 8px; text-align: center; }
.soli-abroad__company {
  padding: 10px 20px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;
  text-transform: uppercase;
  color: var(--soli-blue);
  background: #f0f7ff;
  border-radius: 12px;
}
.soli-abroad__country { font-size: var(--soli-fs-body); font-weight: 700; color: var(--soli-blue); text-transform: uppercase; }
.soli-abroad__lines { font-size: 14px; line-height: 1.75; color: var(--soli-muted); }
.soli-abroad__lines a { color: inherit; }
.soli-abroad__lines a:hover { color: var(--soli-blue); }

@media (max-width: 720px) {
  .soli-abroad__grid { grid-template-columns: minmax(0, 1fr); }
  .soli-agent { flex-basis: 100%; }
}

/* ==========================================================================
   35. ÜRÜN — TEKNİK ÖZELLİK ŞABLONU  (single-urun-spec.php)
   Canlıda /yenilenebilir-enerji-sistemleri/* altındaki ürünler (PV-T, KOPP,
   ISO* montaj setleri, Excellent, Varmeks Havuz). Ölçüm: PV-T Panel, 1440px.
   - Hayalet şerit: anahtar kelimeler 152px w700 #F0F7FF, 350s kayan
   - Üst başlık 18px #0076C0, başlık 50px w600 #111
   - Butonlar 41px, radius 12: koyu #3F3F46 / mavi / sarı #F7CF07 / mavi
   - Özellik şeridi: beyaz kap radius 10, gölge 0 4px 8px rgba(0,0,0,.2),
     padding 20; 5 kart 220×169, 1px #E1E1E1 radius 10, ikon 40px mavi
   - Rozet ("ÜRÜN DETAY"): #F0F7FF / mavi, 14px w700, radius 12, padding 10px 20px
   - Teknik tablo: satır 588px, 14px, alt çizgi 1px #EEE; değer w500 mavi
   - Galeri: ana görsel 571×571, küçük görseller 117×98
   - Diğer ürünler: kart 379×307, #FCFCFC, 1px rgba(2,1,1,.17), radius 16,
     gölge 0 6px 16px rgba(0,0,0,.1)
   ========================================================================== */

.soli-spec { position: relative; overflow: hidden; }
.soli-spec__head { position: relative; padding-top: clamp(2rem, 1rem + 5.4vw, 93px); text-align: center; }

/* kayan hayalet şerit */
.soli-spec__ticker {
  position: absolute;
  left: 0; top: clamp(0px, 2.4vw, 35px);
  z-index: 0;
  display: flex;
  gap: 0.35em;
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: clamp(3.5rem, 0.5rem + 10vw, 9.5rem);   /* 56 → 152px */
  font-weight: 700;
  line-height: 1;
  color: #f0f7ff;
  white-space: nowrap;
  pointer-events: none;
  user-select: none;
  animation: soli-ticker 350s linear infinite;
}
@keyframes soli-ticker { to { transform: translateX(-50%); } }

.soli-spec__kicker {
  position: relative;
  z-index: 1;
  font-size: 18px;
  line-height: 1.3;
  color: var(--soli-blue);
}
.soli-spec__title {
  position: relative;
  z-index: 1;
  margin-top: 8px;
  font-size: clamp(1.75rem, 0.9rem + 2.9vw, 3.125rem);   /* 28 → 50px */
  font-weight: 600;
  line-height: normal;
  color: #111;
}

.soli-spec__actions {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin-top: 19px;
}
.soli-spec__btn {
  display: inline-flex;
  align-items: center;
  min-height: 41px;
  padding: 8px 16px;
  font-size: var(--soli-fs-body);
  line-height: 1.2;
  color: #fff;
  border-radius: 12px;
  transition: filter var(--soli-dur) var(--soli-ease), transform var(--soli-dur) var(--soli-ease);
}
.soli-spec__btn:hover { color: #fff; filter: brightness(1.08); transform: translateY(-1px); }
.soli-spec__btn--koyu { background: #3f3f46; }
.soli-spec__btn--mavi { background: var(--soli-blue); }
.soli-spec__btn--sari { background: var(--soli-yellow); color: #1d2327; }
.soli-spec__btn--sari:hover { color: #1d2327; }

/* özellik şeridi */
.soli-spec__features {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 17px;
  margin-top: 51px;
  padding: 20px;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}
.soli-spec__feature {
  display: grid;
  justify-items: center;
  align-content: start;
  min-height: 169px;
  padding: 25px 15px;
  text-align: center;
  border: 1px solid #e1e1e1;
  border-radius: 10px;
}
.soli-spec__feature .soli-icon { width: 40px; height: 40px; margin-bottom: 10px; color: var(--soli-blue); }
.soli-spec__feature h3 { font-size: var(--soli-fs-body); font-weight: 500; line-height: 1.3; color: #222; }
.soli-spec__feature p { margin-top: 6px; font-size: 13px; line-height: 20px; color: #333; }

.soli-spec__desc {
  max-width: 860px;
  margin: 34px auto 0;
  text-align: center;
}
.soli-spec__desc p { margin: 0 0 14px; font-size: var(--soli-fs-body); line-height: 1.65; color: var(--soli-muted); }

.soli-spec__badge {
  display: block;
  width: fit-content;
  margin: 0 auto;
  padding: 10px 20px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;
  color: var(--soli-blue);
  text-transform: uppercase;
  background: #f0f7ff;
  border-radius: 12px;
}
.soli-spec__detail { margin-top: clamp(4rem, 2rem + 14.1vw, 235px); }   /* canlıda açıklama ile rozet arası ~234px */

.soli-spec__grid {
  display: grid;
  grid-template-columns: minmax(0, 579px) minmax(0, 588px);
  justify-content: space-between;
  gap: 40px;
  margin-top: 50px;
  align-items: center;         /* canli: galeri tabloya gore dikey ortali */
}

/* galeri */
.soli-spec__gallery { padding-left: 8px; }
.soli-spec__main {
  display: block;
  aspect-ratio: 1;
  border: 1px solid #e1e1e1;
  overflow: hidden;
}
.soli-spec__main img { width: 100%; height: 100%; object-fit: contain; background: #fff; }
.soli-spec__thumbs { display: flex; gap: 0; margin-top: 0; }
.soli-spec__thumbs button {
  width: 117px; height: 98px;
  padding: 3px;
  border: 1px solid #e1e1e1;
  background: #fff;
  cursor: pointer;
}
.soli-spec__thumbs button[aria-pressed="true"] { border-color: var(--soli-blue); }
.soli-spec__thumbs img { width: 100%; height: 100%; object-fit: cover; }

/* teknik tablo */
.soli-spec__table { width: 100%; border-collapse: collapse; font-size: 14px; }
.soli-spec__table th,
.soli-spec__table td {
  padding: 5px 0;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid #eee;
}
.soli-spec__table th { width: 300px; font-weight: 400; color: var(--soli-muted); }
.soli-spec__table td { font-weight: 500; color: var(--soli-blue); }

/* diğer ürünler */
.soli-spec__related { margin-top: 87px; padding-bottom: clamp(3rem, 1.5rem + 5vw, 96px); }
.soli-spec__cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 379px));
  justify-content: space-between;
  gap: 36px;
  margin-top: 30px;
}
.soli-spec__card { display: block; text-align: center; color: #111; }
.soli-spec__card-media {
  display: block;
  aspect-ratio: 379 / 307;
  overflow: hidden;
  background: #fcfcfc;
  border: 1px solid rgba(2, 1, 1, 0.17);
  border-radius: 16px;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.1);
}
.soli-spec__card-media img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s var(--soli-ease); }
.soli-spec__card:hover .soli-spec__card-media img { transform: scale(1.05); }
.soli-spec__card-title { display: block; margin-top: 12px; font-size: var(--soli-fs-body); line-height: 1.4; }
.soli-spec__card:hover .soli-spec__card-title { color: var(--soli-blue); }

@media (max-width: 1024px) {
  .soli-spec__features { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .soli-spec__grid { grid-template-columns: minmax(0, 1fr); }
  .soli-spec__table th { width: 45%; }
  .soli-spec__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
  .soli-spec__features { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .soli-spec__cards { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) { .soli-spec__ticker { animation: none; } }

/* Mega menüde kategori başlığı bağlantı olduğunda (canlıda kategori sayfasına gider) */
a.soli-mega__sub,
a.soli-mega__title { display: block; color: inherit; transition: color var(--soli-dur) var(--soli-ease); }
a.soli-mega__sub:hover,
a.soli-mega__title:hover { color: var(--soli-blue); }

/* Kategori (hub) başlık kartı — ortalı varyant. Canlı: başlık 64px tam genişlik,
   giriş metni 1210px / 16px / 26.4px (3 satır). */
.soli-phero__card--center { grid-template-columns: minmax(0, 1fr); text-align: center; }
.soli-phero__card--center .soli-phero__title { max-width: none; }
.soli-phero__card--center .soli-phero__text { max-width: none; margin-inline: auto; }
.soli-phero__card--center .soli-phero__text p { line-height: 1.65; }
/* Canlıda ortalı kategori kartı konteynerden 50px taşar (1310px), metin 1210px kalır */
@media (min-width: 1400px) {
  .soli-phero__card--center { margin-inline: -50px; }
}
.soli-phero__card--center .soli-trust { justify-content: center; }

/* Dokümanlar — canlı: başlık y175, kart etiketi y476 */
.soli-pagehead--dok { padding-top: clamp(1.5rem, 0.5rem + 1.4vw, 35px); }
.soli-section--tight.soli-docs { padding-top: clamp(1rem, 0.4rem + 0.9vw, 20px); }
/* İletişim — başlık → haplar arası canlıda 140px (pagehead üst boşluğu düşünce dengelendi) */
.soli-pagehead .soli-contact__pills { margin-top: clamp(2.5rem, 1rem + 4.2vw, 76px); }
/* Dokümanlar — kap altı ile footer arası canlıda daha geniş */
.soli-section--tight.soli-docs { padding-bottom: clamp(3rem, 1.5rem + 7.2vw, 128px); }

/* ==========================================================================
   36. DOKÜMAN ALT SAYFASI — akordeon listesi (canlı ölçüm, 1440px)
   Başlık y175 → ilk akordeon y326; akordeonlar 46px, çerçeveler üst üste biner.
   Panel: padding 12px 30px 11px, #FCFCFC, 18px; alt başlık w700 #222, bağlantı mavi.
   ========================================================================== */
.soli-acc-list .soli-acc-kutu { margin-top: 0; }
.soli-acc-list .soli-acc-kutu + .soli-acc-kutu .soli-acc-kutu__btn { border-top-width: 0; border-radius: 0; }
.soli-docs--alt { padding-top: clamp(1rem, 0.5rem + 2.2vw, 39px); }   /* canli: baslik -> ilk akordeon 151px */

.soli-doclist { padding: 12px 30px 11px; max-height: none; font-size: 18px; line-height: 1.55; }
.soli-doclist__sub { margin: 10px 0 4px; font-size: 18px; font-weight: 700; color: #222; }
.soli-doclist__sub:first-child { margin-top: 0; }
.soli-doclist__links { margin: 0 0 8px; padding: 0; list-style: none; }
.soli-doclist__links a { color: var(--soli-blue); }
.soli-doclist__links a:hover { text-decoration: underline; }

/* ==========================================================================
   37. MAKALE SAYFASI (/isi-pompasi/) — canlı ölçüm (1440px)
   H1 64px w600 büyük harf; H2 28px w300 #222 büyük harf; H3 20px w600 #222;
   metin 16px / 26.4px; madde işaretli listelerde kalın mavi başlangıç.
   Model listesi başlığı 28px w600.
   ========================================================================== */
.soli-phero__title--upper { text-transform: uppercase; }

.soli-fade { position: relative; }
.soli-fade img { transition: opacity 0.8s var(--soli-ease); }
.soli-fade img:not(.is-active) { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; opacity: 0; }

.soli-article { padding-block: clamp(2rem, 1rem + 3vw, 50px); }
.soli-article h2 {
  margin: 122px 0 14px;              /* canlida her H2 ayri section + ic bosluk */
  font-size: clamp(1.375rem, 0.9rem + 1.1vw, 1.75rem);   /* 22 → 28px */
  font-weight: 300;
  line-height: 1.25;
  text-transform: uppercase;
  color: #222;
}
.soli-article h2:first-child { margin-top: 0; }
.soli-article h3 { margin: 22px 0 8px; font-size: 20px; font-weight: 600; line-height: 1.3; color: #222; }
.soli-article p { margin: 0 0 13.6px; font-size: var(--soli-fs-body); line-height: 1.65; color: var(--soli-muted); }
.soli-article ul,
.soli-article ol { margin: 0 0 16px; padding-left: 24px; list-style: disc; color: var(--soli-muted); }
.soli-article ol { list-style: decimal; }
.soli-article li { margin-bottom: 8px; line-height: 1.65; }
.soli-article li strong,
.soli-article li b { color: var(--soli-blue); }
.soli-article a { color: var(--soli-blue); }

.soli-plist__heading {
  margin-bottom: 30px;
  font-size: clamp(1.375rem, 0.9rem + 1.1vw, 1.75rem);
  font-weight: 600;
  line-height: 1.25;
  text-transform: uppercase;
  color: #fff;
}

/* Satır içi stillerden taşınan kurallar */
.soli-cta-pair--center { justify-content: center; }
.soli-hero__center { position: absolute; inset: 0; display: grid; place-items: center; }
.soli-ref-detail__cta { margin-top: clamp(32px, 4vw, 64px); text-align: center; }
.soli-features--spaced { margin-top: clamp(32px, 4vw, 64px); }
.soli-entry__title { text-align: left; }
.soli-entry__date { margin-top: 16px; }
.soli-entry__lead { margin-top: 32px; }
.soli-entry p,
.soli-entry ul { color: var(--soli-muted); }
.soli-entry__cta { margin-top: 40px; }
.soli-sprite { position: absolute; width: 0; height: 0; overflow: hidden; }

/* ==========================================================================
   38. BLOG YAZISI (single.php) — canlı ölçüm (1440px)
   ========================================================================== */
.soli-single { padding-block: clamp(24px, 1rem + 2.2vw, 56px) clamp(3rem, 1.5rem + 5vw, 96px); }
.soli-single__media { margin: 0; }
.soli-single__media img { display: block; width: 100%; height: auto; aspect-ratio: 1210 / 436; object-fit: contain; }
.soli-single__col { max-width: 736px; margin: 10px auto 0; }
.soli-single__title { font-size: clamp(1.5rem, 1.1rem + 1vw, 1.875rem); font-weight: 600; line-height: 1.3; color: #222; text-align: center; }
.soli-single__date { margin-top: 0; font-size: 14.9px; line-height: 31.28px; color: #919191; text-align: center; }
.soli-single__body { margin-top: 43px; font-size: 1.15rem; line-height: 1.7; color: var(--soli-muted); text-align: justify; }
.soli-single__body p { margin: 0 0 20px; }
.soli-single__body h2 { margin: 42px 0 10px; font-size: clamp(1.375rem, 0.9rem + 1.1vw, 1.75rem); font-weight: 600; line-height: 1.1; color: var(--soli-blue); }
.soli-single__body h3 { margin: 0 0 8px; font-size: 20px; font-weight: 600; line-height: 1.1; color: #222; }
.soli-single__body ul,
.soli-single__body ol { margin: 0 0 20px; padding-left: 25px; list-style: disc; }
.soli-single__body ol { list-style: decimal; }
.soli-single__body li { margin-bottom: 5.7px; }   /* canli: madde 37px (lh 31.28 + 5.7) */
.soli-single__body a { color: var(--soli-blue); }

.soli-share__title { margin-top: 64px; font-size: 18px; font-weight: 600; color: #222; }
.soli-share { margin-top: 14px; border: 1px solid #e1e1e1; }
.soli-share ul { display: grid; grid-template-columns: repeat(6, 1fr); margin: 0; padding: 0; list-style: none; }
.soli-share li + li { border-left: 1px solid #e1e1e1; }
.soli-share a { display: grid; place-items: center; height: 62px; color: #919191; transition: color var(--soli-dur) var(--soli-ease), background-color var(--soli-dur) var(--soli-ease); }
.soli-share a:hover { color: #fff; background: var(--soli-blue); }
.soli-share .soli-icon { width: 18px; height: 18px; }

/* Yorumlar (comments.php) — canlı ölçüm */
.soli-comments { max-width: 800px; margin: 102px auto 0; }
.soli-comments__count { position: relative; display: grid; justify-items: center; gap: 6px; }
.soli-comments__count::before {
  content: ""; position: absolute; left: 0; right: 0; top: 30px; height: 1px; background: #e1e1e1;
  -webkit-mask: linear-gradient(90deg, #000 42%, transparent 42%, transparent 58%, #000 58%);
          mask: linear-gradient(90deg, #000 42%, transparent 42%, transparent 58%, #000 58%);
}
.soli-comments__bubble {
  display: grid; place-items: center; width: 60px; height: 60px;
  font-size: 24px; color: #fff; background: var(--soli-blue); border-radius: 50%;
}
.soli-comments__label { font-size: 12px; color: #919191; text-transform: uppercase; }
.soli-comments__title { margin-top: 18px; font-size: 20px; font-weight: 600; line-height: 1.1; color: #222; }
.soli-comments__intro { margin-top: 8px; font-size: 13.6px; line-height: 1.8; color: var(--soli-muted); }
.soli-comments__form { margin-top: 20px; }
.soli-field { display: flex; align-items: center; gap: 25px; margin: 0 0 30px; }
.soli-field input[type="text"],
.soli-field input[type="email"],
.soli-field input[type="url"] {
  width: 220px; height: 38px; padding: 6px 10px;
  font: inherit; font-size: 16px; color: #333; background: #fcfcfc; border: 1px solid #e1e1e1;
}
.soli-field label { font-size: 11px; font-weight: 700; color: var(--soli-muted); }
.soli-field label span { color: var(--soli-blue); }
.soli-field--check { align-items: flex-start; gap: 15px; margin-bottom: 14px; }
.soli-field--check input { margin-top: 3px; }
.soli-field--full { display: block; }
.soli-field textarea {
  display: block; width: 100%; height: 150px; padding: 10px;
  font: inherit; font-size: 16px; color: #333; background: #fcfcfc; border: 1px solid #e1e1e1; resize: vertical;
}
.soli-field input:focus-visible, .soli-field textarea:focus-visible { outline: 2px solid var(--soli-blue); outline-offset: 1px; }
.soli-comments__submit {
  padding: 8px 20px; font-size: 13.3px; color: #fff; background: var(--soli-blue); border: 0; cursor: pointer;
  transition: background-color var(--soli-dur) var(--soli-ease);
}
.soli-comments__submit:hover { background: var(--soli-blue-600); }
@media (max-width: 600px) { .soli-field { flex-direction: column; align-items: flex-start; gap: 6px; } }

/* ==========================================================================
   39. LIGHTBOX — genel bileşen (data-lightbox="grup" / data-lightbox-open="grup")
   Canlıdaki Magnific Popup'a göre: zemin #000 %80, kapat ×, sayaç "1 / 3",
   önceki/sonraki okları, alt yazı. Klavye: Esc, ←, →. Dokunmatik: kaydırma.
   ========================================================================== */
.soli-lb {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: grid;
  place-items: center;
  padding: 60px 70px;
  background: rgba(0, 0, 0, 0.8);
  opacity: 0;
  visibility: hidden;
  /* kapanista gorunurluk opaklik bittikten sonra kalkar... */
  transition: opacity 0.25s var(--soli-ease), visibility 0s linear 0.25s;
}
/* ...acilista aninda gelir: aksi halde ilk karede 'hidden' kalir ve kapat butonu odak alamaz */
.soli-lb.is-open { opacity: 1; visibility: visible; transition: opacity 0.25s var(--soli-ease), visibility 0s; }
.soli-lb__figure { position: relative; margin: 0; max-width: 100%; max-height: 100%; }
.soli-lb__img {
  display: block;
  max-width: min(1200px, calc(100vw - 140px));
  max-height: calc(100vh - 140px);
  width: auto; height: auto;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  transition: opacity 0.2s var(--soli-ease);
}
.soli-lb__img.is-loading { opacity: 0.3; }
.soli-lb__bar {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding-top: 8px;
  font-size: 13px;
  line-height: 1.4;
  color: #f3f3f3;
}
.soli-lb__counter { color: #ccc; white-space: nowrap; }
.soli-lb button {
  position: absolute;
  display: grid;
  place-items: center;
  color: #fff;
  background: none;
  border: 0;
  cursor: pointer;
  opacity: 0.75;
  transition: opacity var(--soli-dur) var(--soli-ease);
}
.soli-lb button:hover,
.soli-lb button:focus-visible { opacity: 1; }
.soli-lb button:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
.soli-lb__close { top: 12px; right: 16px; width: 44px; height: 44px; font-size: 36px; line-height: 1; }
.soli-lb__prev,
.soli-lb__next { top: 50%; width: 60px; height: 90px; translate: 0 -50%; }
.soli-lb__prev { left: 6px; }
.soli-lb__next { right: 6px; }
.soli-lb__prev .soli-icon,
.soli-lb__next .soli-icon { width: 34px; height: 34px; }
.soli-lb__prev .soli-icon { rotate: 180deg; }
.soli-lb[data-tek="true"] .soli-lb__prev,
.soli-lb[data-tek="true"] .soli-lb__next,
.soli-lb[data-tek="true"] .soli-lb__counter { display: none; }
html.soli-lb-acik { overflow: hidden; }
@media (max-width: 600px) {
  .soli-lb { padding: 56px 8px; }
  .soli-lb__img { max-width: calc(100vw - 16px); }
  .soli-lb__prev, .soli-lb__next { width: 44px; }
}

/* Harita kapağı — tıklayınca yüklenen Google Haritalar (hız + KVKK) */
.soli-map__kapak {
  display: grid; justify-items: center; align-content: center; gap: 14px;
  min-height: 460px; padding: 40px 20px; text-align: center;
  background: linear-gradient(180deg, #f0f7ff, #e3eef9);
}
.soli-map__ikon { width: 56px; height: 56px; color: var(--soli-blue); }
.soli-map__adres { font-size: 1.0625rem; line-height: 1.6; color: var(--soli-ink); }
.soli-map__eylem { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; }
.soli-map__btn, .soli-map__yol {
  display: inline-flex; align-items: center; min-height: 48px; padding: 0 22px;
  font: inherit; font-weight: 600; border-radius: 8px; cursor: pointer;
}
.soli-map__btn { color: #fff; background: var(--soli-blue); border: 0; }
.soli-map__btn:hover { background: #005a94; }
.soli-map__yol { color: var(--soli-blue); border: 1.5px solid var(--soli-blue); }
.soli-map__yol:hover { background: #fff; }
.soli-map__not { max-width: 52ch; font-size: 0.8125rem; color: var(--soli-muted); }
.soli-map__kapak.is-yuklendi { display: block; min-height: 0; padding: 0; }
.soli-map__kapak iframe { display: block; width: 100%; height: 460px; border: 0; }
