/* ============================================================
   DÖNÜŞÜM MERKEZİ — Ana Stil Dosyası
   ============================================================ */

/* ---------- Değişkenler ---------- */
:root {
  --primary:       #1b4332;
  --primary-mid:   #2d6a4f;
  --primary-light: #40916c;
  --accent:        #e9a820;
  --accent-hover:  #d4921a;
  --dark:          #111827;
  --text:          #374151;
  --text-light:    #6b7280;
  --border:        #e5e7eb;
  --bg-light:      #f8faf9;
  --bg-green:      #edf7f1;
  --white:         #ffffff;
  --shadow-sm:     0 1px 6px rgba(0,0,0,.08);
  --shadow-md:     0 4px 20px rgba(0,0,0,.10);
  --shadow-lg:     0 8px 40px rgba(0,0,0,.14);
  --radius:        8px;
  --radius-lg:     14px;
  --transition:    all .25s ease;
}

/* ---------- Reset & Base ---------- */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

html { scroll-behavior: smooth; font-size: 16px; }

body {
  font-family: 'Inter', 'Segoe UI', system-ui, sans-serif;
  color: var(--text);
  background: var(--white);
  line-height: 1.65;
  overflow-x: hidden;
}

img { max-width: 100%; height: auto; display: block; }

a { color: inherit; text-decoration: none; transition: var(--transition); }

ul { list-style: none; }

/* ---------- Tipografi ---------- */
h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
  line-height: 1.25;
  color: var(--dark);
}
h1 { font-size: clamp(1.9rem, 4vw, 3rem); }
h2 { font-size: clamp(1.5rem, 3vw, 2.25rem); }
h3 { font-size: clamp(1.15rem, 2vw, 1.5rem); }
h4 { font-size: 1.15rem; }

p { color: var(--text); }

.text-primary  { color: var(--primary) !important; }
.text-accent   { color: var(--accent) !important; }
.text-white    { color: var(--white) !important; }
.text-muted    { color: var(--text-light) !important; }

/* ---------- Butonlar ---------- */
.btn {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  padding: .7rem 1.6rem;
  border-radius: var(--radius);
  font-size: .95rem;
  font-weight: 600;
  cursor: pointer;
  border: 2px solid transparent;
  transition: var(--transition);
  white-space: nowrap;
}
.btn-primary {
  background: var(--primary);
  color: var(--white);
  border-color: var(--primary);
}
.btn-primary:hover {
  background: var(--primary-mid);
  border-color: var(--primary-mid);
  color: var(--white);
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(27,67,50,.35);
}
.btn-accent {
  background: var(--accent);
  color: var(--dark);
  border-color: var(--accent);
}
.btn-accent:hover {
  background: var(--accent-hover);
  border-color: var(--accent-hover);
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(233,168,32,.4);
}
.btn-outline {
  background: transparent;
  color: var(--primary);
  border-color: var(--primary);
}
.btn-outline:hover {
  background: var(--primary);
  color: var(--white);
}
.btn-outline-white {
  background: transparent;
  color: var(--white);
  border-color: var(--white);
}
.btn-outline-white:hover {
  background: var(--white);
  color: var(--primary);
}
.btn-lg { padding: .9rem 2rem; font-size: 1.05rem; }
.btn-sm { padding: .45rem 1rem; font-size: .85rem; }

/* ---------- Layout Yardımcıları ---------- */
.container {
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 1.25rem;
}
.section { padding: 5rem 0; }
.section-sm { padding: 3rem 0; }

.section-label {
  display: inline-block;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--primary-light);
  background: var(--bg-green);
  padding: .35rem .9rem;
  border-radius: 50px;
  margin-bottom: .85rem;
}
.section-title {
  font-size: clamp(1.6rem, 3vw, 2.3rem);
  color: var(--dark);
  margin-bottom: .9rem;
}
.section-desc {
  font-size: 1.05rem;
  color: var(--text-light);
  max-width: 640px;
}
.text-center .section-desc { margin: 0 auto; }

/* Grid */
.grid { display: grid; gap: 1.5rem; }
.grid-2 { grid-template-columns: repeat(2, 1fr); }
.grid-3 { grid-template-columns: repeat(3, 1fr); }
.grid-4 { grid-template-columns: repeat(4, 1fr); }

/* ---------- TOP BAR ---------- */
.top-bar {
  background: var(--primary);
  color: rgba(255,255,255,.85);
  font-size: .82rem;
  font-weight: 500;
  padding: .5rem 0;
  overflow: hidden;
}
.top-bar__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.top-bar__ticker {
  flex: 1;
  overflow: hidden;
  position: relative;
}
.top-bar__ticker span {
  display: inline-block;
  white-space: nowrap;
  animation: tickerScroll 30s linear infinite;
  color: rgba(255,255,255,.9);
}
.top-bar__ticker span::before {
  content: '⬤ ';
  color: var(--accent);
  font-size: .6rem;
  margin-right: .4rem;
}
@keyframes tickerScroll {
  0%   { transform: translateX(100%); }
  100% { transform: translateX(-100%); }
}
.top-bar__contacts {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  flex-shrink: 0;
}
.top-bar__contacts a {
  color: rgba(255,255,255,.85);
  display: flex;
  align-items: center;
  gap: .35rem;
  transition: var(--transition);
}
.top-bar__contacts a:hover { color: var(--accent); }

/* ---------- HEADER ---------- */
.site-header {
  background: var(--white);
  box-shadow: 0 2px 14px rgba(0,0,0,.07);
  position: sticky;
  top: 0;
  z-index: 1000;
}
.header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: .75rem 0;
  gap: 1rem;
}

/* Logo */
.site-logo {
  display: flex;
  align-items: center;
  gap: .65rem;
  flex-shrink: 0;
}
.site-logo img {
  height: 52px;
  width: auto;
}
.logo-text {
  display: flex;
  flex-direction: column;
  line-height: 1.2;
}
.logo-text strong {
  font-size: 1.15rem;
  font-weight: 800;
  color: var(--primary);
}
.logo-text span {
  font-size: .7rem;
  color: var(--text-light);
  letter-spacing: .04em;
}

/* Primary Navigation */
.primary-nav {
  display: flex;
  align-items: center;
  gap: .15rem;
}
.nav-item {
  position: relative;
}
.nav-link {
  display: flex;
  align-items: center;
  gap: .3rem;
  padding: .6rem .85rem;
  font-size: .9rem;
  font-weight: 600;
  color: var(--dark);
  border-radius: var(--radius);
  transition: var(--transition);
  white-space: nowrap;
}
.nav-link:hover,
.nav-link.active,
.nav-item:hover > .nav-link {
  color: var(--primary);
  background: var(--bg-green);
}
.nav-link .caret {
  font-size: .65rem;
  transition: transform .2s;
}
.nav-item:hover > .nav-link .caret { transform: rotate(180deg); }

/* Dropdown */
.dropdown {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  min-width: 240px;
  background: var(--white);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-lg);
  border: 1px solid var(--border);
  padding: .6rem;
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: all .22s ease;
  z-index: 999;
}
.nav-item:hover > .dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.dropdown-item {
  display: flex;
  align-items: center;
  gap: .65rem;
  padding: .6rem .85rem;
  border-radius: var(--radius);
  font-size: .88rem;
  font-weight: 500;
  color: var(--text);
  transition: var(--transition);
}
.dropdown-item:hover {
  background: var(--bg-green);
  color: var(--primary);
}
.dropdown-item i {
  font-size: 1rem;
  color: var(--primary-light);
  width: 1.1rem;
  text-align: center;
  flex-shrink: 0;
}

/* Mega Menu */
.mega-menu {
  position: absolute;
  top: calc(100% + 8px);
  left: 50%;
  transform: translateX(-50%) translateY(10px);
  width: min(960px, 94vw);
  background: var(--white);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-lg);
  border: 1px solid var(--border);
  padding: 1.5rem;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.25rem;
  opacity: 0;
  visibility: hidden;
  transition: all .22s ease;
  z-index: 999;
}
.nav-item:hover > .mega-menu {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}
.mega-col__title {
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--primary-light);
  padding: 0 .5rem .65rem;
  border-bottom: 2px solid var(--bg-green);
  margin-bottom: .5rem;
}
.mega-link {
  display: flex;
  align-items: center;
  gap: .6rem;
  padding: .45rem .5rem;
  border-radius: var(--radius);
  font-size: .85rem;
  font-weight: 500;
  color: var(--text);
  transition: var(--transition);
}
.mega-link:hover {
  background: var(--bg-green);
  color: var(--primary);
}
.mega-link i {
  font-size: .95rem;
  color: var(--primary-light);
  width: 1.1rem;
  flex-shrink: 0;
}

/* Header CTA */
.header-cta {
  display: flex;
  align-items: center;
  gap: .65rem;
  flex-shrink: 0;
}

/* Mobile Toggle */
.mobile-toggle {
  display: none;
  background: none;
  border: none;
  cursor: pointer;
  padding: .4rem;
  color: var(--dark);
  font-size: 1.5rem;
}

/* Mobile Nav */
.mobile-nav {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,.5);
  z-index: 9999;
  opacity: 0;
  transition: opacity .3s;
}
.mobile-nav.open {
  display: block;
  opacity: 1;
}
.mobile-nav__panel {
  position: absolute;
  top: 0;
  right: 0;
  width: min(320px, 90vw);
  height: 100%;
  background: var(--white);
  padding: 1.5rem;
  overflow-y: auto;
  transform: translateX(100%);
  transition: transform .3s ease;
}
.mobile-nav.open .mobile-nav__panel { transform: translateX(0); }
.mobile-nav__close {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1.5rem;
}
.mobile-nav__close button {
  background: var(--bg-light);
  border: none;
  border-radius: 50%;
  width: 36px;
  height: 36px;
  font-size: 1.1rem;
  cursor: pointer;
  color: var(--dark);
}
.mobile-menu { border-top: 1px solid var(--border); }
.mobile-menu > li { border-bottom: 1px solid var(--border); }
.mobile-menu a, .mobile-menu button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: .85rem .25rem;
  font-size: .93rem;
  font-weight: 600;
  color: var(--dark);
  background: none;
  border: none;
  cursor: pointer;
  text-align: left;
}
.mobile-menu a:hover, .mobile-menu button:hover { color: var(--primary); }
.mobile-submenu {
  display: none;
  background: var(--bg-light);
  border-radius: var(--radius);
  margin-bottom: .5rem;
  padding: .4rem;
}
.mobile-submenu.open { display: block; }
.mobile-submenu a {
  font-size: .86rem;
  font-weight: 500;
  padding: .55rem .75rem;
  border-bottom: none;
}
.mobile-submenu-group { margin-bottom: .75rem; }
.mobile-submenu-group__title {
  font-size: .72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--primary-light);
  padding: .5rem .75rem .25rem;
}

/* ---------- HOME SLIDER ---------- */
.home-slider {
  padding: 1.1rem 0 0;
  background:
    radial-gradient(circle at top left, rgba(233,168,32,.14), transparent 26%),
    linear-gradient(180deg, #f8fbf9 0%, #ffffff 100%);
}
.home-slider__shell {
  position: relative;
  border: 1px solid rgba(27,67,50,.1);
  border-radius: 24px;
  background: linear-gradient(135deg, #ffffff 0%, #f7fbf8 100%);
  box-shadow: 0 20px 50px rgba(17,24,39,.08);
  overflow: hidden;
}
.home-slider__shell::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at top right, rgba(64,145,108,.14), transparent 28%),
    radial-gradient(circle at bottom left, rgba(233,168,32,.12), transparent 24%);
  pointer-events: none;
}
.home-slider__track {
  display: flex;
  transition: transform .5s ease;
  will-change: transform;
}
.home-slide {
  position: relative;
  flex: 0 0 100%;
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(340px, .85fr);
  align-items: center;
  gap: 2rem;
  padding: 2rem;
  min-width: 0;
}
.home-slide.is-active {
  opacity: 1;
}
.home-slide__content,
.home-slide__media {
  position: relative;
  z-index: 1;
}
.home-slide__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: .45rem .9rem;
  border-radius: 999px;
  background: rgba(27,67,50,.08);
  color: var(--primary-mid);
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  margin-bottom: 1rem;
}
.home-slide__eyebrow::before {
  content: '';
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--accent);
  box-shadow: 0 0 0 6px rgba(233,168,32,.15);
}
.home-slide h2 {
  font-size: clamp(1.8rem, 4vw, 3rem);
  line-height: 1.12;
  color: var(--dark);
  max-width: 12ch;
  margin-bottom: 1rem;
}
.home-slide p {
  max-width: 62ch;
  font-size: 1.02rem;
  color: var(--text-light);
  line-height: 1.8;
}
.home-slide__chips {
  display: flex;
  flex-wrap: wrap;
  gap: .6rem;
  margin-top: 1.25rem;
}
.home-slide__chips span {
  display: inline-flex;
  align-items: center;
  padding: .45rem .75rem;
  border-radius: 999px;
  background: rgba(255,255,255,.9);
  border: 1px solid rgba(27,67,50,.12);
  color: var(--primary);
  font-size: .82rem;
  font-weight: 600;
  box-shadow: 0 8px 18px rgba(17,24,39,.04);
}
.home-slide__actions {
  display: flex;
  flex-wrap: wrap;
  gap: .9rem;
  margin-top: 1.6rem;
}
.home-slide__media {
  min-width: 0;
}
.home-slide__media img {
  width: 100%;
  height: 340px;
  object-fit: cover;
  border-radius: 20px;
  box-shadow: 0 18px 36px rgba(17,24,39,.14);
}
.home-slide__media-badge {
  position: absolute;
  left: 1rem;
  right: 1rem;
  bottom: 1rem;
  padding: .95rem 1rem;
  border-radius: 16px;
  background: rgba(17,24,39,.72);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(255,255,255,.18);
}
.home-slide__media-badge strong {
  display: block;
  color: var(--white);
  font-size: .95rem;
  margin-bottom: .2rem;
}
.home-slide__media-badge span {
  color: rgba(255,255,255,.82);
  font-size: .84rem;
  line-height: 1.5;
}
.home-slider__controls {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0 2rem 1.4rem;
  position: relative;
  z-index: 1;
}
.home-slider__arrow {
  width: 46px;
  height: 46px;
  border-radius: 50%;
  border: 1px solid rgba(27,67,50,.12);
  background: var(--white);
  color: var(--primary);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
  cursor: pointer;
  transition: var(--transition);
  box-shadow: 0 8px 18px rgba(17,24,39,.06);
}
.home-slider__arrow:hover {
  background: var(--primary);
  color: var(--white);
  border-color: var(--primary);
}
.home-slider__dots {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .6rem;
  flex: 1;
}
.home-slider__dot {
  width: 12px;
  height: 12px;
  border-radius: 999px;
  border: none;
  background: rgba(27,67,50,.18);
  cursor: pointer;
  transition: width .25s ease, background .25s ease;
}
.home-slider__dot.is-active {
  width: 34px;
  background: var(--accent);
}

/* ---------- HERO SECTION ---------- */
.hero {
  position: relative;
  min-height: 620px;
  display: flex;
  align-items: center;
  background: var(--primary);
  overflow: hidden;
}
.hero-bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  opacity: .22;
}
.hero-pattern {
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}
.hero__content {
  position: relative;
  z-index: 1;
  max-width: 700px;
}
.hero__badge {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.25);
  color: rgba(255,255,255,.9);
  padding: .4rem 1rem;
  border-radius: 50px;
  font-size: .8rem;
  font-weight: 600;
  letter-spacing: .06em;
  text-transform: uppercase;
  margin-bottom: 1.25rem;
}
.hero__badge .dot {
  width: 6px;
  height: 6px;
  background: var(--accent);
  border-radius: 50%;
  animation: pulse 2s infinite;
}
@keyframes pulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: .5; transform: scale(1.3); }
}
.hero h1 {
  color: var(--white);
  font-size: clamp(2rem, 4.5vw, 3.2rem);
  line-height: 1.18;
  margin-bottom: 1.25rem;
}
.hero h1 span { color: var(--accent); }
.hero__desc {
  color: rgba(255,255,255,.8);
  font-size: 1.1rem;
  line-height: 1.7;
  margin-bottom: 2rem;
}
.hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  align-items: center;
}
.hero__trust {
  display: flex;
  gap: 2.5rem;
  margin-top: 2.5rem;
  padding-top: 2.5rem;
  border-top: 1px solid rgba(255,255,255,.15);
  flex-wrap: wrap;
}
.hero__trust-item strong {
  display: block;
  font-size: 1.6rem;
  font-weight: 800;
  color: var(--accent);
}
.hero__trust-item span {
  font-size: .82rem;
  color: rgba(255,255,255,.7);
}
.hero__image-side {
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: 42%;
  overflow: hidden;
}
.hero__image-side img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: .45;
}

/* ---------- STATS BAR ---------- */
.stats-bar {
  background: var(--accent);
  padding: 1.5rem 0;
}
.stats-bar__inner {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
  text-align: center;
}
.stat-item strong {
  display: block;
  font-size: 2rem;
  font-weight: 800;
  color: var(--dark);
  line-height: 1;
}
.stat-item span {
  font-size: .82rem;
  font-weight: 600;
  color: rgba(0,0,0,.65);
  margin-top: .3rem;
}
.stat-divider {
  border-left: 1px solid rgba(0,0,0,.15);
}

/* ---------- HOW IT WORKS ---------- */
.section.steps {
  background:
    radial-gradient(900px 280px at 50% -120px, rgba(45,106,79,.14), transparent 60%),
    var(--bg-light);
}
.section.steps .steps-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
  align-items: stretch;
}
.section.steps .step-card {
  background: linear-gradient(180deg, #ffffff 0%, #f5faf8 100%);
  border-radius: 16px;
  padding: 1.2rem 1.1rem 1rem;
  box-shadow: 0 10px 22px rgba(7, 20, 14, .08);
  border: 1px solid rgba(26,62,48,.16);
  position: relative;
  transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease;
  height: 100%;
  overflow: hidden;
}
.section.steps .step-card::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  background: linear-gradient(180deg, var(--primary-light), var(--accent));
}
.section.steps .step-card:hover {
  box-shadow: 0 16px 30px rgba(7,20,14,.14);
  transform: translateY(-6px);
  border-color: rgba(42,95,72,.35);
}
.section.steps .step-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: linear-gradient(180deg, #e8f4ed 0%, #d9ecdf 100%);
  border: 1px solid rgba(42,95,72,.2);
  color: var(--primary);
  font-size: 1.45rem;
  font-weight: 900;
  line-height: 1;
  margin-bottom: .75rem;
  font-variant-numeric: tabular-nums;
}
.section.steps .step-card h3 {
  font-size: 1.24rem;
  color: var(--primary);
  margin-bottom: .5rem;
}
.section.steps .step-card p {
  font-size: .98rem;
  color: var(--text-light);
  line-height: 1.62;
}
.step-card .step-link {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  font-size: .85rem;
  font-weight: 600;
  color: var(--primary);
  margin-top: 1.25rem;
}
.step-card .step-link:hover { color: var(--accent); gap: .55rem; }

/* ---------- HIZMETLER (SERVICES) SECTION ---------- */
.services-section { background: var(--white); }
.service-items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.75rem;
}
.service-card {
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  overflow: hidden;
  transition: var(--transition);
  box-shadow: var(--shadow-sm);
}
.service-card:hover {
  box-shadow: var(--shadow-md);
  transform: translateY(-5px);
  border-color: var(--primary-light);
}
.service-card__img {
  height: 200px;
  overflow: hidden;
}
.service-card__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .4s ease;
}
.service-card:hover .service-card__img img { transform: scale(1.06); }
.service-card__body {
  padding: 1.5rem;
}
.service-card__body h3 {
  font-size: 1.1rem;
  color: var(--dark);
  margin-bottom: .6rem;
}
.service-card__body p {
  font-size: .88rem;
  color: var(--text-light);
  line-height: 1.6;
  margin-bottom: 1rem;
}
.service-card__link {
  font-size: .85rem;
  font-weight: 600;
  color: var(--primary);
  display: inline-flex;
  align-items: center;
  gap: .35rem;
}
.service-card__link:hover { color: var(--accent); }

/* ---------- PRODUCTS GRID ---------- */
.products-section { background: var(--bg-light); }
.products-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 1.25rem;
}
.product-card {
  background: linear-gradient(180deg, #ffffff 0%, #f8fbfa 100%);
  border: 1px solid rgba(26, 62, 48, .14);
  border-radius: 16px;
  overflow: hidden;
  transition: transform .26s ease, box-shadow .26s ease, border-color .26s ease;
  box-shadow: 0 8px 22px rgba(7, 20, 14, .06);
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: .65rem;
  min-height: 128px;
  padding: 1.05rem 1rem;
  position: relative;
}
.product-card:hover {
  box-shadow: 0 14px 26px rgba(7, 20, 14, .12);
  transform: translateY(-5px);
  border-color: rgba(42,95,72,.35);
}
.product-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--primary-light), var(--accent));
}
.product-icon {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(180deg, #edf7f1 0%, #dceee4 100%);
  border: 1px solid rgba(42,95,72,.18);
  color: var(--primary);
  font-size: 1.12rem;
}
.product-card h3 {
  margin: 0;
  font-size: clamp(1.02rem, 1.7vw, 1.12rem);
  line-height: 1.32;
  color: var(--dark);
  font-weight: 800;
}
.product-card__img {
  height: 160px;
  overflow: hidden;
  background: var(--bg-green);
}
.product-card__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .4s;
}
.product-card:hover .product-card__img img { transform: scale(1.08); }
.product-card__body {
  padding: 1.1rem;
}
.product-card__body h4 {
  font-size: .92rem;
  color: var(--dark);
  font-weight: 600;
}

/* ---------- HOME PRODUCTS REFRESH ---------- */
.products-refresh-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1.25rem;
}
.products-refresh-tags {
  display: flex;
  flex-wrap: wrap;
  gap: .6rem;
}
.products-refresh-tags span {
  display: inline-flex;
  align-items: center;
  gap: .38rem;
  padding: .45rem .72rem;
  border-radius: 999px;
  border: 1px solid rgba(26,62,48,.14);
  background: #fff;
  color: var(--primary);
  font-size: .8rem;
  font-weight: 600;
}
.products-refresh-tags span i {
  color: var(--primary-light);
  font-size: .83rem;
}
.products-grid-refresh {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
}
.product-card--refresh {
  min-height: 100%;
  padding: 0;
  align-items: stretch;
  text-align: left;
  border-radius: 18px;
}
.product-card--refresh::before {
  display: none;
}
.product-card--refresh .product-card__img {
  height: 152px;
}
.product-card--refresh .product-card__body {
  padding: .85rem .95rem 1rem;
}
.product-card__tag {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  background: #edf7f1;
  color: var(--primary-mid);
  font-size: .68rem;
  letter-spacing: .07em;
  text-transform: uppercase;
  font-weight: 700;
  padding: .32rem .55rem;
  margin-bottom: .5rem;
}
.product-card--refresh .product-card__body h4 {
  font-size: .94rem;
  font-weight: 700;
}
.product-card__cta {
  margin-top: .72rem;
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  color: var(--primary);
  font-size: .82rem;
  font-weight: 700;
}
.product-card--refresh:hover .product-card__cta {
  color: var(--accent);
}

/* ---------- RELATED ALT (URUNLER) ---------- */
.related-alt {
  background:
    radial-gradient(900px 300px at 0% -40%, rgba(45,106,79,.12), transparent 60%),
    var(--bg-light);
}
.related-alt-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 1rem;
}
.related-alt-card {
  background: linear-gradient(180deg, #ffffff 0%, #f7fbf9 100%);
  border: 1px solid rgba(26,62,48,.14);
  border-radius: 16px;
  padding: 1rem 1rem .95rem;
  box-shadow: 0 10px 22px rgba(7,20,14,.07);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  position: relative;
  overflow: hidden;
  display: block;
}
.related-alt-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--primary-light), var(--accent));
}
.related-alt-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 30px rgba(7,20,14,.12);
  border-color: rgba(42,95,72,.35);
}
.related-alt-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .6rem;
  margin-bottom: .55rem;
}
.related-alt-icon {
  width: 40px;
  height: 40px;
  border-radius: 11px;
  border: 1px solid rgba(42,95,72,.18);
  background: linear-gradient(180deg, #eaf6ef 0%, #dceee4 100%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--primary);
  font-size: 1.02rem;
  flex-shrink: 0;
}
.related-alt-arrow {
  color: var(--primary-light);
  font-size: 1rem;
  transition: transform .22s ease;
}
.related-alt-card:hover .related-alt-arrow {
  transform: translateX(4px);
}
.related-alt-card h3 {
  margin: 0;
  color: var(--dark);
  font-size: 1.06rem;
  line-height: 1.34;
}
.related-alt-card p {
  margin: 0;
  color: var(--text-light);
  font-size: .88rem;
  line-height: 1.55;
}

/* ---------- PROCESS ALT (URUNLER) ---------- */
.process-alt {
  background:
    radial-gradient(980px 260px at 50% -80px, rgba(45,106,79,.12), transparent 60%),
    var(--white);
}
.process-alt-head {
  text-align: center;
  margin-bottom: 1.25rem;
}
.process-alt-cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}
.process-alt-card {
  background: linear-gradient(180deg, #ffffff 0%, #f7fbf9 100%);
  border: 1px solid rgba(26,62,48,.14);
  border-radius: 16px;
  box-shadow: 0 10px 22px rgba(7,20,14,.07);
  padding: 1rem;
  position: relative;
  overflow: hidden;
  transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}
.process-alt-badge {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(180deg, #eaf6ef 0%, #dceee4 100%);
  color: var(--primary);
  border: 1px solid rgba(42,95,72,.2);
  font-size: 1.05rem;
  font-weight: 900;
  margin-bottom: .75rem;
}
.process-alt-card h3 {
  margin: 0 0 .35rem;
  color: var(--primary);
  font-size: 1.04rem;
}
.process-alt-card p {
  margin: 0;
  color: var(--text-light);
  font-size: .92rem;
  line-height: 1.55;
}
.process-alt-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 30px rgba(7,20,14,.13);
  border-color: rgba(42,95,72,.34);
}

/* ---------- SEO ARTICLE (URUNLER) ---------- */
.seo-article {
  background:
    radial-gradient(860px 280px at 100% -120px, rgba(45,106,79,.10), transparent 62%),
    var(--bg-light);
}
.seo-article-card {
  background: linear-gradient(180deg, #ffffff 0%, #f9fcfa 100%);
  border: 1px solid rgba(26,62,48,.16);
  border-radius: 18px;
  box-shadow: 0 14px 34px rgba(8,21,15,.08);
  padding: 1.4rem;
}
.seo-article-card h2 {
  margin: 0 0 1rem;
  font-size: clamp(1.42rem, 2.7vw, 2rem);
  line-height: 1.3;
}
.seo-article-card h3 {
  margin: 1.2rem 0 .65rem;
  font-size: clamp(1.12rem, 1.9vw, 1.38rem);
  color: var(--dark);
  display: inline-block;
  padding-bottom: .2rem;
  border-bottom: 2px solid rgba(64,145,108,.32);
}
.seo-article-card p {
  margin: 0 0 .85rem;
  color: var(--text);
  line-height: 1.85;
}
.seo-article-card p strong {
  color: var(--dark);
  font-weight: 800;
}
.seo-article-points {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .9rem;
  margin-top: .85rem;
}
.seo-article-point {
  background: #ffffff;
  border: 1px solid rgba(26,62,48,.16);
  border-radius: 12px;
  padding: .9rem .95rem;
  display: flex;
  align-items: flex-start;
  gap: .65rem;
  box-shadow: 0 8px 18px rgba(8,21,15,.06);
}
.seo-article-point i {
  color: var(--primary-light);
  font-size: 1rem;
  margin-top: .15rem;
  flex-shrink: 0;
}
.seo-article-point span {
  color: var(--text);
  line-height: 1.6;
  font-size: .94rem;
}
.seo-article-point strong {
  color: var(--dark);
}
.seo-article-note {
  margin-top: 1.1rem;
  padding: .9rem 1rem;
  background: #f2f8f5;
  border: 1px solid rgba(64,145,108,.22);
  border-left: 4px solid var(--primary-light);
  border-radius: 10px;
  color: var(--text);
  line-height: 1.75;
}
.seo-article-note strong {
  color: var(--dark);
}

/* ---------- BLOG CARD LINK ---------- */
a.blog-card {
  display: block;
  text-decoration: none;
  color: inherit;
  transition: transform .2s, box-shadow .2s;
}
a.blog-card:hover { transform: translateY(-4px); box-shadow: 0 8px 28px rgba(0,0,0,.12); }
.blog-read-more {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  font-size: .8rem;
  font-weight: 600;
  color: var(--primary);
  margin-left: auto;
}

/* ---------- BLOG ARTICLE PAGE ---------- */
.blog-article-section { background: var(--white); }
.blog-article-layout {
  display: grid;
  grid-template-columns: 1fr 320px;
  grid-template-rows: auto 1fr;
  gap: 2rem 2.5rem;
}
.blog-article-cover {
  box-shadow: 0 10px 18px rgba(7, 20, 14, .08);
  border-radius: var(--radius-lg);
  overflow: hidden;
}
.blog-article-cover img {
  width: 100%;
  max-height: 420px;
  object-fit: cover;
  display: block;
}
.blog-article-body {
  grid-column: 1 / 2;
}
.blog-article-sidebar {
  grid-column: 2 / 3;
  grid-row: 1 / 3;
}
.blog-article-meta-top {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: .75rem;
}
.blog-article-date {
  font-size: .82rem;
  color: var(--text-light);
  display: flex;
  align-items: center;
  gap: .35rem;
}

/* Article body typography */
.blog-article-body h2 {
  font-size: 1.35rem;
  font-weight: 700;
  color: var(--dark);
  margin: 2rem 0 .75rem;
  padding-bottom: .4rem;
  border-bottom: 2px solid var(--bg-light);
}
.blog-article-lead {
  font-size: 1.08rem;
  line-height: 1.8;
  color: var(--text);
  margin-bottom: 1.5rem;
}
.blog-article-highlight {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  background: var(--bg-light);
  border-left: 4px solid var(--primary);
  border-radius: 0 var(--radius) var(--radius) 0;
  padding: 1rem 1.25rem;
  margin: 1.5rem 0;
  font-size: .93rem;
  line-height: 1.7;
}
.blog-article-highlight > i {
  font-size: 1.4rem;
  color: var(--primary);
  flex-shrink: 0;
  margin-top: .1rem;
}

/* Article grids */
.blog-article-grid-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.25rem;
  margin: 1.25rem 0;
}
.blog-article-grid-3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.25rem;
  margin: 1.25rem 0;
}
.blog-article-box {
  background: var(--bg-light);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 1.25rem;
}
.blog-article-box i {
  font-size: 1.5rem;
  color: var(--primary);
  display: block;
  margin-bottom: .6rem;
}
.blog-article-box h4 {
  font-size: .95rem;
  font-weight: 700;
  color: var(--dark);
  margin-bottom: .5rem;
  display: flex;
  align-items: center;
  gap: .4rem;
}
.blog-article-box h4 i { font-size: 1rem; display: inline; }
.blog-article-box p { font-size: .88rem; line-height: 1.65; color: var(--text); }

/* Article list */
.blog-article-list {
  list-style: none;
  padding: 0;
  margin: .75rem 0 1rem;
}
.blog-article-list li {
  display: flex;
  align-items: flex-start;
  gap: .6rem;
  font-size: .93rem;
  line-height: 1.65;
  padding: .35rem 0;
  border-bottom: 1px solid var(--border);
  color: var(--text);
}
.blog-article-list li:last-child { border-bottom: none; }
.blog-article-list li > i {
  color: var(--primary);
  flex-shrink: 0;
  margin-top: .2rem;
  font-size: .9rem;
}

/* Article inner CTA */
.blog-article-cta {
  background: var(--dark);
  color: var(--white);
  border-radius: var(--radius-lg);
  padding: 2rem;
  margin: 2rem 0;
  text-align: center;
}
.blog-article-cta h3 {
  font-size: 1.2rem;
  font-weight: 700;
  margin-bottom: .5rem;
  color: var(--white);
}
.blog-article-cta p { font-size: .92rem; opacity: .85; margin-bottom: 1.25rem; }
.blog-article-cta div { display: flex; gap: .75rem; justify-content: center; flex-wrap: wrap; }
.blog-article-cta .btn-outline {
  border-color: rgba(255,255,255,.5);
  color: var(--white);
}
.blog-article-cta .btn-outline:hover { background: rgba(255,255,255,.1); border-color: var(--white); }

/* Sidebar */
.blog-article-sidebar { display: flex; flex-direction: column; gap: 1.25rem; }
.blog-sidebar-sticky {
  position: sticky;
  top: 108px;
  align-self: start;
}
.blog-sidebar-box {
  background: var(--bg-light);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 1.25rem;
}
.blog-sidebar-box h4 {
  font-size: .92rem;
  font-weight: 700;
  color: var(--dark);
  margin-bottom: .85rem;
  text-transform: uppercase;
  letter-spacing: .05em;
}
.blog-sidebar-links {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: .5rem;
}
.blog-sidebar-links li a {
  font-size: .88rem;
  color: var(--primary);
  text-decoration: none;
  display: flex;
  align-items: flex-start;
  gap: .4rem;
  line-height: 1.5;
}
.blog-sidebar-links li a::before { content: '›'; font-weight: 700; flex-shrink: 0; }
.blog-sidebar-links li a:hover { text-decoration: underline; }
.blog-sidebar-tags {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
}
.blog-sidebar-tags a {
  display: inline-flex;
  align-items: center;
  padding: .34rem .62rem;
  border-radius: 999px;
  border: 1px solid var(--border);
  background: var(--white);
  color: var(--text);
  font-size: .78rem;
  text-decoration: none;
  transition: all .15s ease;
}
.blog-sidebar-tags a:hover {
  background: var(--primary);
  border-color: var(--primary);
  color: var(--white);
}
.blog-sidebar-checklist {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: .55rem;
}
.blog-sidebar-checklist li {
  display: flex;
  align-items: flex-start;
  gap: .45rem;
  color: var(--text);
  font-size: .86rem;
  line-height: 1.5;
}
.blog-sidebar-checklist li i {
  color: var(--primary);
  margin-top: .08rem;
}
.blog-sidebar-cats {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: .4rem;
}
.blog-sidebar-cats li a {
  font-size: .88rem;
  color: var(--text);
  text-decoration: none;
  padding: .3rem .6rem;
  background: var(--white);
  border-radius: var(--radius-sm);
  display: block;
  transition: background .15s, color .15s;
}
.blog-sidebar-cats li a:hover { background: var(--primary); color: var(--white); }
.blog-sidebar-cta {
  background: var(--primary);
  border-color: var(--primary);
  color: var(--white);
  text-align: center;
}
.blog-sidebar-cta > i { font-size: 2rem; display: block; margin-bottom: .5rem; opacity: .9; }
.blog-sidebar-cta h4 { color: var(--white); margin-bottom: .4rem; }
.blog-sidebar-cta p { font-size: .86rem; opacity: .9; margin-bottom: 1rem; }
.blog-sidebar-cta .btn-primary { background: var(--white); color: var(--primary); }
.blog-sidebar-cta .btn-primary:hover { background: var(--bg-light); }
.blog-sidebar-cta .btn {
  width: 100%;
  justify-content: center;
}
.blog-sidebar-phone {
  margin-top: .5rem;
  border-color: rgba(255,255,255,.6);
  color: var(--white);
}
.blog-sidebar-phone:hover {
  border-color: var(--white);
  background: rgba(255,255,255,.1);
}
.about-section { background: var(--white); }
.about-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
  align-items: center;
}
.about-img-wrapper {
  position: relative;
  border-radius: var(--radius-lg);
  overflow: hidden;
}
.about-img-wrapper img {
  width: 100%;
  height: 480px;
  object-fit: cover;
  border-radius: var(--radius-lg);
}
.about-badge {
  position: absolute;
  bottom: 1.5rem;
  right: 1.5rem;
  background: var(--accent);
  color: var(--dark);
  font-weight: 800;
  font-size: .85rem;
  padding: 1rem 1.5rem;
  border-radius: var(--radius-lg);
  text-align: center;
  box-shadow: var(--shadow-md);
}
.about-badge strong { font-size: 2rem; display: block; line-height: 1; }
.about-features {
  margin-top: 1.75rem;
  display: flex;
  flex-direction: column;
  gap: .85rem;
}
.about-feature {
  display: flex;
  align-items: flex-start;
  gap: .85rem;
  padding: .85rem 1rem;
  background: var(--bg-green);
  border-radius: var(--radius);
  border-left: 3px solid var(--primary-light);
}
.about-feature i {
  font-size: 1.25rem;
  color: var(--primary);
  margin-top: .15rem;
  flex-shrink: 0;
}
.about-feature h4 {
  font-size: .93rem;
  margin-bottom: .2rem;
  color: var(--primary);
}
.about-feature p {
  font-size: .83rem;
  color: var(--text-light);
  line-height: 1.5;
}

/* ---------- CTA BANNER ---------- */
.cta-banner {
  background: linear-gradient(135deg, var(--primary) 0%, var(--primary-mid) 100%);
  position: relative;
  overflow: hidden;
  padding: 5rem 0;
}
.cta-banner::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -5%;
  width: 500px;
  height: 500px;
  border-radius: 50%;
  background: rgba(255,255,255,.04);
}
.cta-banner::after {
  content: '';
  position: absolute;
  bottom: -30%;
  left: -3%;
  width: 300px;
  height: 300px;
  border-radius: 50%;
  background: rgba(255,255,255,.03);
}
.cta-banner__inner {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  flex-wrap: wrap;
}
.cta-banner h2 {
  color: var(--white);
  font-size: clamp(1.4rem, 3vw, 2rem);
}
.cta-banner p {
  color: rgba(255,255,255,.75);
  margin-top: .5rem;
  font-size: 1rem;
}
.cta-banner__actions { display: flex; gap: 1rem; flex-wrap: wrap; align-items: center; }

/* ---------- MARQUEE STRIP ---------- */
.marquee-strip {
  background: var(--bg-green);
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  padding: .85rem 0;
  overflow: hidden;
}
.marquee-track {
  display: flex;
  animation: marquee 35s linear infinite;
  white-space: nowrap;
}
.marquee-track:hover { animation-play-state: paused; }
.marquee-item {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: 0 1.5rem;
  font-size: .85rem;
  font-weight: 600;
  color: var(--primary);
}
.marquee-item::before {
  content: '✓';
  color: var(--accent);
  font-weight: 900;
}
@keyframes marquee {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* ---------- REFERANSLAR ---------- */
.refs-section { background: var(--white); padding: 4rem 0; }
.refs-track-wrapper { overflow: hidden; }
.refs-track {
  display: flex;
  align-items: center;
  gap: 2rem;
  animation: marquee 40s linear infinite;
  width: max-content;
}
.refs-track:hover { animation-play-state: paused; }
.ref-logo {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 56px;
  padding: .5rem 1.25rem;
  background: var(--bg-light);
  border-radius: var(--radius);
  border: 1px solid var(--border);
  transition: var(--transition);
  flex-shrink: 0;
}
.ref-logo:hover {
  border-color: var(--primary-light);
  background: var(--bg-green);
}
.ref-logo img {
  height: 36px;
  width: auto;
  object-fit: contain;
  filter: grayscale(70%);
  opacity: .7;
  transition: var(--transition);
}
.ref-logo:hover img { filter: grayscale(0); opacity: 1; }

/* ---------- BLOG SECTION ---------- */
.blog-section { background: var(--bg-light); }
.blog-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
.blog-card {
  background: var(--white);
  border-radius: var(--radius-lg);
  overflow: hidden;
  border: 1px solid var(--border);
  transition: var(--transition);
  box-shadow: var(--shadow-sm);
}
.blog-card:hover {
  box-shadow: var(--shadow-md);
  transform: translateY(-4px);
}
.blog-card__img {
  height: 200px;
  overflow: hidden;
  background: var(--bg-green);
}
.blog-card__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .4s;
}
.blog-card:hover .blog-card__img img { transform: scale(1.06); }
.blog-card__body { padding: 1.5rem; }
.blog-cat {
  font-size: .72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: var(--primary-light);
  margin-bottom: .5rem;
}
.blog-card__body h3 {
  font-size: 1rem;
  line-height: 1.4;
  margin-bottom: .65rem;
  color: var(--dark);
}
.blog-card__body h3 a:hover { color: var(--primary); }
.blog-meta {
  font-size: .8rem;
  color: var(--text-light);
  display: flex;
  align-items: center;
  gap: .5rem;
}

/* ---------- FOOTER ---------- */
.site-footer {
  background:
    radial-gradient(860px 360px at 12% -12%, rgba(244, 180, 0, .16), transparent 56%),
    radial-gradient(720px 340px at 92% -20%, rgba(45, 106, 79, .22), transparent 58%),
    #0b1511;
  color: rgba(255,255,255,.7);
  position: relative;
  overflow: hidden;
}
.footer-main {
  padding: 3.4rem 0 2.6rem;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.footer-premium {
  display: grid;
  grid-template-columns: 1.45fr 1fr;
  gap: 1.35rem;
  margin-bottom: 2rem;
}
.footer-brand-card,
.footer-metrics {
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 20px;
  background: linear-gradient(180deg, rgba(255,255,255,.06) 0%, rgba(255,255,255,.02) 100%);
  backdrop-filter: blur(3px);
}
.footer-brand-card {
  padding: 1.6rem;
  box-shadow: 0 16px 36px rgba(3, 10, 7, .35);
}
.footer-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}
.footer-grid > * {
  min-width: 0;
}
.footer-col {
  min-width: 0;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 16px;
  padding: 1.15rem 1.05rem;
  background: rgba(255,255,255,.02);
}
.footer-brand img {
  height: 48px;
  width: auto;
  margin-bottom: 1rem;
  filter: brightness(0) invert(1);
  opacity: .85;
}
.footer-brand p {
  font-size: .88rem;
  line-height: 1.7;
  color: rgba(255,255,255,.6);
  margin-bottom: 1.25rem;
}
.footer-brand-card img {
  height: 46px;
  width: auto;
  margin-bottom: .8rem;
  filter: brightness(0) invert(1);
  opacity: .92;
}
.footer-brand-card p {
  font-size: .9rem;
  line-height: 1.72;
  color: rgba(255,255,255,.75);
  max-width: 64ch;
  margin-bottom: 1.1rem;
}
.footer-cta-group {
  display: flex;
  gap: .65rem;
  flex-wrap: wrap;
  margin-bottom: 1rem;
}
.footer-cta {
  justify-content: center;
}
.footer-socials {
  display: flex;
  gap: .6rem;
}
.footer-socials a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: var(--radius);
  background: rgba(255,255,255,.12);
  color: rgba(255,255,255,.7);
  font-size: 1rem;
  transition: var(--transition);
}
.footer-socials a:hover {
  background: linear-gradient(135deg, var(--primary-light), var(--primary));
  color: var(--white);
  transform: translateY(-2px);
}
.footer-metrics {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .7rem;
  padding: .95rem;
}
.footer-metric-box {
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  background: rgba(10, 26, 19, .52);
  padding: .95rem .9rem;
}
.footer-metric-box strong {
  display: block;
  font-size: 1.28rem;
  line-height: 1.1;
  color: var(--white);
  margin-bottom: .28rem;
}
.footer-metric-box span {
  font-size: .78rem;
  color: rgba(255,255,255,.72);
}
.footer-col h4 {
  font-size: .85rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--white);
  margin-bottom: 1.1rem;
}
.footer-links { display: flex; flex-direction: column; gap: .5rem; }
.footer-links a {
  font-size: .87rem;
  color: rgba(255,255,255,.6);
  display: flex;
  align-items: center;
  gap: .4rem;
  transition: color .25s ease, transform .25s ease;
  transform: translateX(0);
}
.footer-links a:hover {
  color: #ffd970;
  transform: translateX(4px);
}
.footer-links a::before {
  content: '›';
  color: #9fe2b8;
}
.footer-contact { list-style: none; display: flex; flex-direction: column; gap: .85rem; }
.footer-contact li {
  display: flex;
  align-items: flex-start;
  gap: .85rem;
  font-size: .87rem;
  color: rgba(255,255,255,.74);
}
.footer-contact li i {
  color: #ffd970;
  font-size: 1rem;
  margin-top: .15rem;
  flex-shrink: 0;
}
.footer-contact li a { color: rgba(255,255,255,.78); }
.footer-contact li a:hover { color: #ffd970; }
.footer-contact li > div {
  min-width: 0;
}
.footer-contact-label {
  color: rgba(255,255,255,.92);
  font-size: .8rem;
  display: block;
  margin-bottom: .2rem;
}
.footer-contact-text,
.footer-contact li a {
  line-height: 1.5;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.footer-bottom {
  padding: 1.5rem 0;
  font-size: .82rem;
  color: rgba(255,255,255,.56);
  background: rgba(0,0,0,.22);
}
.footer-bottom-row {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1rem;
  text-align: center;
}
.footer-bottom-row p {
  color: rgba(255,255,255,.62);
  margin: 0;
}
.footer-bottom-links {
  display: flex;
  align-items: center;
  gap: .85rem;
  flex-wrap: wrap;
}
.footer-bottom a { color: rgba(255,255,255,.7); }
.footer-bottom a:hover { color: #ffd970; }

/* ---------- PAGE HERO (İç Sayfalar) ---------- */
.page-hero {
  background: linear-gradient(135deg, var(--primary) 0%, var(--primary-mid) 100%);
  padding: 3.5rem 0;
  position: relative;
  overflow: hidden;
}
.page-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}
.page-hero__inner {
  position: relative;
  z-index: 1;
}
.page-hero h1 { color: var(--white); font-size: clamp(1.75rem, 3.5vw, 2.5rem); }
.page-hero p { color: rgba(255,255,255,.75); margin-top: .65rem; font-size: 1.05rem; }
.breadcrumb {
  display: flex;
  align-items: center;
  gap: .5rem;
  font-size: .83rem;
  color: rgba(255,255,255,.6);
  margin-bottom: .85rem;
}
.breadcrumb a { color: rgba(255,255,255,.6); }
.breadcrumb a:hover { color: var(--accent); }
.breadcrumb span { color: rgba(255,255,255,.4); }

/* ---------- CARD GENEL ---------- */
.info-card {
  background: var(--white);
  border-radius: var(--radius-lg);
  border: 1px solid var(--border);
  padding: 2rem;
  box-shadow: var(--shadow-sm);
  transition: var(--transition);
}
.info-card:hover { box-shadow: var(--shadow-md); border-color: var(--primary-light); }
.icon-box {
  width: 56px;
  height: 56px;
  background: var(--bg-green);
  border-radius: var(--radius);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.4rem;
  color: var(--primary);
  margin-bottom: 1.1rem;
}
.icon-box-lg {
  width: 72px;
  height: 72px;
  font-size: 1.8rem;
  background: var(--bg-green);
  border-radius: var(--radius-lg);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--primary);
  margin-bottom: 1.25rem;
}

/* Ürün Listesi */
.feature-list {
  display: flex;
  flex-direction: column;
  gap: .65rem;
  margin: 1.25rem 0;
}
.feature-list li {
  display: flex;
  align-items: flex-start;
  gap: .65rem;
  font-size: .92rem;
  color: var(--text);
}
.feature-list li i {
  color: var(--primary-light);
  font-size: .9rem;
  margin-top: .2rem;
  flex-shrink: 0;
}

/* ---------- FORM ---------- */
.contact-form .form-group { margin-bottom: 1.25rem; }
.contact-form label {
  display: block;
  font-size: .87rem;
  font-weight: 600;
  color: var(--dark);
  margin-bottom: .4rem;
}
.contact-form input,
.contact-form textarea,
.contact-form select {
  width: 100%;
  padding: .75rem 1rem;
  border: 1.5px solid var(--border);
  border-radius: var(--radius);
  font-size: .93rem;
  color: var(--dark);
  background: var(--white);
  transition: var(--transition);
  font-family: inherit;
}
.contact-form input:focus,
.contact-form textarea:focus,
.contact-form select:focus {
  outline: none;
  border-color: var(--primary-light);
  box-shadow: 0 0 0 3px rgba(45,106,79,.12);
}
.contact-form textarea { resize: vertical; min-height: 150px; }

/* İletişim Kutu */
.contact-info-box {
  background: var(--primary);
  border-radius: var(--radius-lg);
  padding: 2.5rem;
  color: var(--white);
  height: 100%;
}
.contact-info-box h3 { color: var(--white); margin-bottom: 1.5rem; }
.contact-detail {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  margin-bottom: 1.5rem;
}
.contact-detail__icon {
  width: 44px;
  height: 44px;
  background: rgba(255,255,255,.12);
  border-radius: var(--radius);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.1rem;
  color: var(--accent);
  flex-shrink: 0;
}
.contact-detail h4 {
  font-size: .83rem;
  color: rgba(255,255,255,.6);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .06em;
  margin-bottom: .25rem;
}
.contact-detail a,
.contact-detail p {
  color: var(--white);
  font-size: .95rem;
  font-weight: 500;
  line-height: 1.5;
}
.contact-detail a:hover { color: var(--accent); }

/* ---------- ACCORDION (SSS) ---------- */
.accordion-item {
  border: 1px solid var(--border);
  border-radius: var(--radius);
  margin-bottom: .75rem;
  overflow: hidden;
}
.accordion-btn {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 1.1rem 1.4rem;
  background: var(--white);
  border: none;
  cursor: pointer;
  font-size: .95rem;
  font-weight: 600;
  color: var(--dark);
  text-align: left;
  transition: var(--transition);
}
.accordion-btn:hover { background: var(--bg-green); color: var(--primary); }
.accordion-btn.active { background: var(--bg-green); color: var(--primary); }
.accordion-btn i { font-size: .85rem; transition: transform .25s; flex-shrink: 0; }
.accordion-btn.active i { transform: rotate(180deg); }
.accordion-body {
  display: none;
  padding: 0 1.4rem 1.25rem;
  background: var(--bg-green);
  font-size: .91rem;
  color: var(--text);
  line-height: 1.7;
}
.accordion-body.open { display: block; animation: fadeIn .2s ease; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: translateY(0); } }

/* ---------- BADGE / TAG ---------- */
.tag {
  display: inline-block;
  padding: .25rem .75rem;
  border-radius: 50px;
  font-size: .75rem;
  font-weight: 600;
  letter-spacing: .06em;
}
.tag-green { background: var(--bg-green); color: var(--primary); }
.tag-amber { background: #fef3c7; color: #92400e; }

/* ---------- BACK TO TOP ---------- */
#back-to-top {
  position: fixed;
  bottom: 1.5rem;
  right: 1.5rem;
  width: 42px;
  height: 42px;
  background: var(--primary);
  color: var(--white);
  border: none;
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.1rem;
  box-shadow: var(--shadow-md);
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px);
  transition: var(--transition);
  z-index: 800;
}
#back-to-top.visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
#back-to-top:hover { background: var(--primary-mid); }

/* ============================================================
   PREMIUM KURUMSAL SECTION COMPONENTS
   ============================================================ */

/* --- Stat Band (dark full-width) --- */
.stat-band {
  background: linear-gradient(135deg, #0d2b1d 0%, #1b4332 60%, #2d6a4f 100%);
  padding: 4.5rem 0;
  position: relative;
  overflow: hidden;
}
.stat-band::before {
  content: '';
  position: absolute;
  top: -80px; right: -120px;
  width: 420px; height: 420px;
  border-radius: 50%;
  background: rgba(233,168,32,.07);
  pointer-events: none;
}
.stat-band::after {
  content: '';
  position: absolute;
  bottom: -100px; left: -80px;
  width: 300px; height: 300px;
  border-radius: 50%;
  background: rgba(64,145,108,.12);
  pointer-events: none;
}
.stat-band__grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 1px;
  background: rgba(255,255,255,.1);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 16px;
  overflow: hidden;
  position: relative;
  z-index: 1;
}
.stat-band__item {
  padding: 2.5rem 2rem;
  background: rgba(255,255,255,.04);
  text-align: center;
  transition: background .25s;
}
.stat-band__item:hover { background: rgba(255,255,255,.09); }
.stat-band__num {
  font-size: clamp(2.4rem,4vw,3.5rem);
  font-weight: 900;
  color: var(--accent);
  line-height: 1;
  display: block;
  letter-spacing: -.02em;
}
.stat-band__label {
  margin-top: .6rem;
  font-size: 1.05rem;
  font-weight: 600;
  color: #fff;
}
.stat-band__sub {
  margin-top: .35rem;
  font-size: .82rem;
  color: rgba(255,255,255,.6);
  line-height: 1.5;
}

/* --- Value Pillars (icon + accent top border) --- */
.value-pillars {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 1.2rem;
}
.value-pillar {
  background: var(--white);
  border-radius: 14px;
  padding: 2rem 1.5rem;
  border-top: 4px solid var(--primary-light);
  box-shadow: 0 4px 24px rgba(27,67,50,.08);
  transition: transform .25s, box-shadow .25s;
}
.value-pillar:nth-child(2) { border-top-color: var(--accent); }
.value-pillar:nth-child(3) { border-top-color: var(--primary-mid); }
.value-pillar:hover { transform: translateY(-4px); box-shadow: 0 10px 36px rgba(27,67,50,.14); }
.value-pillar__icon {
  width: 52px; height: 52px;
  border-radius: 12px;
  background: var(--bg-green);
  display: flex; align-items: center; justify-content: center;
  margin-bottom: 1.1rem;
  font-size: 1.4rem;
  color: var(--primary);
}
.value-pillar__title {
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--dark);
  margin-bottom: .5rem;
}
.value-pillar__text {
  font-size: .88rem;
  color: var(--text-light);
  line-height: 1.75;
}

/* --- Accent Split Banner (dark left, light right) --- */
.accent-split {
  display: grid;
  grid-template-columns: 1fr 1.4fr;
  min-height: 380px;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: var(--shadow-lg);
}
.accent-split__dark {
  background: linear-gradient(160deg, #1b4332 0%, #0d2b1d 100%);
  padding: 3rem 2.5rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1rem;
  position: relative;
}
.accent-split__dark::before {
  content: '';
  position: absolute;
  top: -60px; right: -60px;
  width: 220px; height: 220px;
  border-radius: 50%;
  background: rgba(233,168,32,.08);
}
.accent-split__tag {
  display: inline-block;
  background: var(--accent);
  color: #fff;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  padding: .22rem .75rem;
  border-radius: 50px;
  width: fit-content;
}
.accent-split__dark h3 {
  color: #fff;
  font-size: clamp(1.3rem, 2.2vw, 1.75rem);
  line-height: 1.3;
}
.accent-split__dark p {
  color: rgba(255,255,255,.7);
  font-size: .9rem;
  line-height: 1.7;
}
.accent-split__light {
  background: var(--bg-light);
  padding: 3rem 2.5rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: .75rem;
}
.accent-split__row {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  padding: .85rem 1rem;
  background: var(--white);
  border-radius: 10px;
  box-shadow: var(--shadow-sm);
  transition: box-shadow .2s;
}
.accent-split__row:hover { box-shadow: var(--shadow-md); }
.accent-split__row-icon {
  width: 38px; height: 38px; flex-shrink: 0;
  border-radius: 8px;
  background: var(--bg-green);
  display: flex; align-items: center; justify-content: center;
  font-size: 1rem;
  color: var(--primary);
}
.accent-split__row-body strong {
  display: block;
  font-size: .92rem;
  color: var(--dark);
  margin-bottom: .15rem;
}
.accent-split__row-body span {
  font-size: .82rem;
  color: var(--text-light);
  line-height: 1.5;
}

/* --- Premium Timeline --- */
.premium-timeline {
  position: relative;
  padding-left: 2.8rem;
}
.premium-timeline::before {
  content: '';
  position: absolute;
  left: 1rem;
  top: .5rem;
  bottom: .5rem;
  width: 2px;
  background: linear-gradient(to bottom, var(--accent) 0%, var(--primary-light) 100%);
}
.p-timeline-item {
  position: relative;
  padding: 0 0 2.2rem 1.6rem;
}
.p-timeline-item:last-child { padding-bottom: 0; }
.p-timeline-dot {
  position: absolute;
  left: -2.15rem;
  top: .15rem;
  width: 32px; height: 32px;
  border-radius: 50%;
  background: var(--primary);
  border: 3px solid var(--accent);
  display: flex; align-items: center; justify-content: center;
  font-size: .72rem;
  font-weight: 800;
  color: #fff;
  z-index: 1;
}
.p-timeline-card {
  background: var(--white);
  border-radius: 12px;
  padding: 1.3rem 1.5rem;
  box-shadow: var(--shadow-sm);
  border-left: 3px solid var(--accent);
  transition: box-shadow .2s, transform .2s;
}
.p-timeline-card:hover { box-shadow: var(--shadow-md); transform: translateX(4px); }
.p-timeline-card h4 {
  color: var(--primary);
  font-size: 1rem;
  margin-bottom: .35rem;
}
.p-timeline-card p {
  color: var(--text-light);
  font-size: .87rem;
  line-height: 1.65;
}

/* --- Process Rail (horizontal numbered steps with line) --- */
.process-rail {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 0;
  position: relative;
}
.process-rail::before {
  content: '';
  position: absolute;
  top: 28px; left: 12.5%; right: 12.5%;
  height: 2px;
  background: linear-gradient(to right, var(--accent), var(--primary-light));
  z-index: 0;
}
.process-rail__step {
  position: relative;
  z-index: 1;
  padding: 0 .75rem;
  text-align: center;
}
.process-rail__num {
  width: 56px; height: 56px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--primary), var(--primary-mid));
  border: 3px solid var(--accent);
  display: inline-flex; align-items: center; justify-content: center;
  font-size: 1.15rem;
  font-weight: 800;
  color: #fff;
  margin: 0 auto 1rem;
  position: relative;
  box-shadow: 0 4px 16px rgba(27,67,50,.25);
}
.process-rail__title {
  font-size: .95rem;
  font-weight: 700;
  color: var(--dark);
  margin-bottom: .4rem;
}
.process-rail__text {
  font-size: .82rem;
  color: var(--text-light);
  line-height: 1.6;
}

/* --- KPI Strip --- */
.kpi-strip {
  background: var(--bg-green);
  border: 1px solid rgba(27,67,50,.1);
  border-radius: 18px;
  padding: 3rem 2.5rem;
}
.kpi-strip__grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 0;
  position: relative;
}
.kpi-strip__item {
  padding: 1.5rem 2rem;
  text-align: center;
  position: relative;
}
.kpi-strip__item + .kpi-strip__item::before {
  content: '';
  position: absolute;
  left: 0; top: 10%; bottom: 10%;
  width: 1px;
  background: rgba(27,67,50,.15);
}
.kpi-strip__num {
  font-size: clamp(2rem,3.5vw,3rem);
  font-weight: 900;
  color: var(--primary);
  display: block;
  line-height: 1;
  letter-spacing: -.02em;
}
.kpi-strip__num sup {
  font-size: .55em;
  vertical-align: top;
  margin-top: .2em;
}
.kpi-strip__label {
  margin-top: .55rem;
  font-size: .9rem;
  font-weight: 600;
  color: var(--dark);
}
.kpi-strip__sub {
  font-size: .78rem;
  color: var(--text-light);
  margin-top: .25rem;
  line-height: 1.45;
}

/* --- Premium Section Dark Intro --- */
.section-dark-intro {
  background: linear-gradient(135deg, #0d2b1d 0%, #1b4332 100%);
  padding: 3.5rem 0;
  text-align: center;
}
.section-dark-intro .section-label { color: var(--accent); border-color: rgba(233,168,32,.3); }
.section-dark-intro h2 { color: #fff; }
.section-dark-intro p { color: rgba(255,255,255,.75); }

/* --- Responsive: premium components --- */
@media (max-width: 900px) {
  .stat-band__grid { grid-template-columns: 1fr; }
  .value-pillars { grid-template-columns: 1fr 1fr; }
  .accent-split { grid-template-columns: 1fr; }
  .kpi-strip__grid { grid-template-columns: 1fr; }
  .kpi-strip__item + .kpi-strip__item::before { display: none; }
  .kpi-strip__item { padding: 1.2rem 1rem; }
  .process-rail { grid-template-columns: 1fr 1fr; gap: 1.5rem 0; }
  .process-rail::before { display: none; }
}
@media (max-width: 600px) {
  .stat-band { padding: 2.5rem 0; }
  .stat-band__item { padding: 1.75rem 1rem; }
  .value-pillars { grid-template-columns: 1fr; }
  .accent-split__dark, .accent-split__light { padding: 2rem 1.5rem; }
  .process-rail { grid-template-columns: 1fr; }
  .premium-timeline { padding-left: 2.2rem; }
}

/* --- SEO Editorial Article Block --- */
.seo-article {
  background: #f0f4f2;
  padding: 4rem 0;
  border-top: 1px solid rgba(27,67,50,.1);
}
.seo-article__card {
  max-width: 860px;
  margin: 0 auto;
  background: #fff;
  border-radius: 16px;
  padding: 2.8rem 3rem;
  box-shadow: 0 2px 20px rgba(27,67,50,.08);
}
.seo-article__tag {
  display: inline-block;
  font-size: .68rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: var(--primary-light);
  background: rgba(64,145,108,.1);
  border: 1px solid rgba(64,145,108,.2);
  padding: .25rem .85rem;
  border-radius: 50px;
  margin-bottom: 1rem;
}
.seo-article__title {
  font-size: clamp(1.35rem, 2.2vw, 1.9rem);
  color: var(--dark);
  line-height: 1.28;
  margin-bottom: 1.1rem;
  font-weight: 800;
}
.seo-article__lead {
  font-size: 1rem;
  color: var(--text);
  line-height: 1.85;
  margin-bottom: 1.2rem;
}
.seo-article__lead strong { color: var(--dark); font-weight: 700; }
.seo-article__body p {
  color: var(--text-light);
  font-size: .97rem;
  line-height: 1.88;
  margin-bottom: 1.2rem;
}
.seo-article__body p:last-child { margin-bottom: 0; }
.seo-article__h3 {
  font-size: 1.15rem;
  font-weight: 700;
  color: var(--dark);
  margin: 1.8rem 0 .8rem;
  padding-bottom: .55rem;
  border-bottom: 2px solid var(--primary-light);
}
.seo-article__features {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .75rem;
  margin: 1.2rem 0 1.6rem;
}
.seo-article__feature {
  display: flex;
  align-items: flex-start;
  gap: .75rem;
  background: #f8faf9;
  border: 1px solid #e5ede8;
  border-radius: 10px;
  padding: .9rem 1rem;
}
.seo-article__feature-icon {
  width: 28px; height: 28px; flex-shrink: 0;
  color: var(--primary-light);
  font-size: 1rem;
  margin-top: .1rem;
}
.seo-article__feature-text {
  font-size: .88rem;
  color: var(--text-light);
  line-height: 1.65;
}
.seo-article__feature-text strong {
  color: var(--dark);
  font-weight: 700;
}
.seo-article__note {
  background: rgba(64,145,108,.06);
  border-left: 4px solid var(--primary-light);
  border-radius: 0 8px 8px 0;
  padding: .9rem 1.2rem;
  font-size: .9rem;
  color: var(--text-light);
  line-height: 1.7;
}
.seo-article__note strong { color: var(--primary); }
.seo-article a {
  color: var(--primary-mid);
  text-decoration: underline;
  text-underline-offset: 3px;
  font-weight: 600;
  transition: color .2s;
}
.seo-article a:hover { color: var(--primary); }
@media (max-width: 700px) {
  .seo-article { padding: 2.5rem 0; }
  .seo-article__card { padding: 1.8rem 1.4rem; }
  .seo-article__features { grid-template-columns: 1fr; }
  .seo-article__title { font-size: 1.25rem; }
}

/* ---------- FLOATING CONTACT ACTIONS ---------- */
.floating-contact-actions {
  position: fixed;
  left: 1rem;
  bottom: 1rem;
  z-index: 920;
  display: flex;
  flex-direction: column;
  gap: .55rem;
}
.floating-contact-btn {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  min-width: 122px;
  padding: .55rem .8rem;
  border-radius: 999px;
  color: #fff;
  font-size: .82rem;
  font-weight: 700;
  box-shadow: 0 10px 20px rgba(17,24,39,.18);
  border: 1px solid rgba(255,255,255,.18);
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.floating-contact-btn i {
  font-size: .95rem;
}
.floating-contact-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 24px rgba(17,24,39,.24);
  filter: brightness(1.03);
}
.floating-contact-btn--whatsapp {
  background: #25d366;
}
.floating-contact-btn--phone {
  background: #2563eb;
}
.floating-contact-btn--mail {
  background: #ea580c;
}

/* ---------- LEGAL CONTENT ---------- */
.legal-content h2 {
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--primary);
  margin: 2rem 0 0.75rem;
}
.legal-content p,
.legal-content li {
  color: var(--text-light);
  line-height: 1.9;
  margin-bottom: 0.5rem;
}
.legal-content ul {
  padding-left: 1.5rem;
  margin-bottom: 1rem;
}
.legal-content a { color: var(--primary); text-decoration: underline; }

/* ---------- RESPONSIVE ---------- */
@media (max-width: 1100px) {
  .mega-menu { grid-template-columns: repeat(2, 1fr); }
  .products-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 992px) {
  .top-bar { display: none; }
  .container { padding: 0 1rem; }
  .header-inner { padding: .55rem 0; }
  .site-logo img { height: 44px; }
  .btn-lg { padding: .78rem 1.35rem; font-size: .96rem; }
  .primary-nav { display: none; }
  .header-cta .btn-outline { display: none; }
  .mobile-toggle { display: flex; align-items: center; }
  .home-slide {
    grid-template-columns: 1fr;
    gap: 1.25rem;
    padding: 1.35rem;
  }
  .home-slide h2 { font-size: clamp(1.6rem, 3.8vw, 2.2rem); }
  .home-slide h2 { max-width: none; }
  .home-slide__media img { height: 280px; }
  .hero { min-height: 560px; }
  .hero .container { padding-top: 3.75rem !important; padding-bottom: 3.75rem !important; }
  .hero__desc { font-size: 1rem; }
  .hero__badge { font-size: .74rem; }
  .home-slider__shell,
  .products-grid-refresh { overflow: hidden; }
  .products-grid-refresh {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .hero__image-side { display: none; }
  .stats-bar__inner { grid-template-columns: repeat(2, 1fr); }
  .section.steps .steps-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .95rem; }
  .service-items { grid-template-columns: 1fr 1fr; }
  .products-refresh-head {
    flex-direction: column;
    align-items: flex-start;
  }
  .products-grid-refresh {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .about-grid { grid-template-columns: 1fr; gap: 2rem; }
  .about-img-wrapper img { height: 320px; }
  .footer-premium { grid-template-columns: 1fr; }
  .footer-metrics { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 2rem; }
  .footer-bottom-row { flex-direction: column; align-items: flex-start; }
  .blog-grid { grid-template-columns: 1fr 1fr; }
  .grid-4 { grid-template-columns: repeat(2, 1fr); }
  .grid-3 { grid-template-columns: repeat(2, 1fr); }
  .hero__trust { gap: 1.5rem; }
  .process-alt-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .seo-article-points { grid-template-columns: 1fr 1fr; }
  .blog-article-layout { grid-template-columns: 1fr; }
  .blog-article-cover { grid-column: 1; }
  .blog-article-body { grid-column: 1; }
  .blog-article-sidebar { grid-column: 1; grid-row: auto; }
  .blog-sidebar-sticky { position: static; top: auto; }
  .blog-article-grid-3 { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 680px) {
  .top-bar__contacts { display: none; }
  .container { padding: 0 .85rem; }
  .section { padding: 3.2rem 0; }
  .home-slider { padding-top: .8rem; }
  .home-slider__shell { border-radius: 18px; }
  .home-slide { padding: 1.15rem; }
  .home-slide__eyebrow { font-size: .68rem; letter-spacing: .08em; }
  .home-slide p { font-size: .96rem; }
  .home-slide__chips { display: none; }
  .home-slide__actions { flex-direction: column; align-items: stretch; }
  .home-slide__actions .btn { justify-content: center; }
  .home-slide__media img { height: 220px; }
  .home-slide__media-badge { left: .65rem; right: .65rem; bottom: .65rem; }
  .home-slide__media-badge span { font-size: .78rem; }
  .home-slider__controls { padding: 0 1.15rem 1.15rem; }
  .products-refresh-head {
    margin-bottom: 1rem;
  }
  .products-grid-refresh {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem;
  }
  .product-card--refresh .product-card__img {
    height: 138px;
  }
  .section.steps .steps-grid { grid-template-columns: 1fr; max-width: 560px; margin: 0 auto; }
  .service-items { grid-template-columns: 1fr; }
  .products-grid { grid-template-columns: repeat(2, 1fr); }
  .stats-bar__inner { grid-template-columns: repeat(2, 1fr); }
  .blog-grid { grid-template-columns: 1fr; }
  .footer-brand-card { padding: 1.2rem; }
  .footer-cta-group { flex-direction: column; }
  .footer-cta { width: 100%; }
  .footer-metrics { grid-template-columns: 1fr 1fr; }
  .footer-grid { grid-template-columns: 1fr; }
  .footer-bottom-row { align-items: center; text-align: center; }
  .footer-bottom-links { flex-wrap: wrap; justify-content: center; }
  .cta-banner__inner { flex-direction: column; text-align: center; }
  .cta-banner__actions { justify-content: center; }
  .hero__trust { flex-direction: column; gap: 1rem; }
  .hero__actions { flex-direction: column; align-items: flex-start; }
  .grid-2 { grid-template-columns: 1fr; }
  .process-alt-cards { grid-template-columns: 1fr; }
  .seo-article-card { padding: 1.1rem; }
  .seo-article-points { grid-template-columns: 1fr; }
  .blog-article-grid-2 { grid-template-columns: 1fr; }
  .blog-article-grid-3 { grid-template-columns: 1fr; }
  .page-hero { padding: 2.5rem 0; }
  .floating-contact-actions {
    left: .7rem;
    bottom: calc(.7rem + env(safe-area-inset-bottom));
    gap: .45rem;
  }
  .floating-contact-btn {
    min-width: auto;
    padding: .58rem .62rem;
    border-radius: 14px;
  }
  .floating-contact-btn span {
    display: none;
  }
  .floating-contact-btn i {
    font-size: 1rem;
  }
}

@media (max-width: 480px) {
  .section { padding: 2.9rem 0; }
  .site-logo img { height: 40px; }
  .hero { min-height: 500px; }
  .hero h1 { font-size: 1.72rem; }
  .hero__actions .btn { width: 100%; justify-content: center; }
  .home-slide h2 { font-size: 1.55rem; }
  .home-slide__chips span { font-size: .76rem; }
  .home-slider__arrow {
    width: 40px;
    height: 40px;
  }
  .products-refresh-tags span {
    font-size: .72rem;
  }
  .products-grid-refresh {
    grid-template-columns: 1fr;
  }
  .product-card--refresh .product-card__img {
    height: 172px;
  }
  .products-grid { grid-template-columns: 1fr 1fr; }
}
