/*
 * Tüm temaların paylaştığı blok temelleri. Temalar renk/tipografi değişkenlerini kendi theme.css dosyalarında ezer.
 * Müşteri özel CSS'i (Aşama 3) yalnızca .hs-site kapsamında çalışır.
 */
/* Görseller: width/height öznitelikleri yalnızca en/boy oranı içindir (yerleşim kayması olmaz); WebP sarmalayıcısı düzeni etkilemez.
   :where → özgüllük 0, temaların kendi kuralları her zaman geçerli. */
:where(img[width][height]) { height: auto; }
:where(picture.hs-pic) { display: contents; }

:root {
  --hs-site-primary: #3b5bdb;
  --hs-site-primary-dark: #2f4ac0;
  --hs-site-accent: #ff7a1a;
  --hs-site-text: #1f2937;
  --hs-site-muted: #6b7280;
  --hs-site-light: #f5f7fb;
  --hs-site-dark: #111827;
  --hs-site-radius: 14px;
  --hs-site-font: "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --hs-site-heading-font: var(--hs-site-font);
}

body {
  font-family: var(--hs-site-font);
  color: var(--hs-site-text);
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, .hs-heading, .hs-hero-title { font-family: var(--hs-site-heading-font); }

.btn-primary {
  --bs-btn-bg: var(--hs-site-primary);
  --bs-btn-border-color: var(--hs-site-primary);
  --bs-btn-hover-bg: var(--hs-site-primary-dark);
  --bs-btn-hover-border-color: var(--hs-site-primary-dark);
  --bs-btn-active-bg: var(--hs-site-primary-dark);
  --bs-btn-active-border-color: var(--hs-site-primary-dark);
}
.btn-outline-primary {
  --bs-btn-color: var(--hs-site-primary);
  --bs-btn-border-color: var(--hs-site-primary);
  --bs-btn-hover-bg: var(--hs-site-primary);
  --bs-btn-hover-border-color: var(--hs-site-primary);
  --bs-btn-active-bg: var(--hs-site-primary-dark);
}
.btn-accent {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--hs-site-accent);
  --bs-btn-border-color: var(--hs-site-accent);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: color-mix(in srgb, var(--hs-site-accent) 85%, #000);
  --bs-btn-hover-border-color: color-mix(in srgb, var(--hs-site-accent) 85%, #000);
}
a { color: var(--hs-site-primary); }

/* Bölümler */
.hs-section { position: relative; }
.hs-space-none { padding: 0; }
.hs-space-sm { padding: 2rem 0; }
.hs-space-md { padding: 4rem 0; }
.hs-space-lg { padding: 6rem 0; }
.hs-bg-light { background: var(--hs-site-light); }
.hs-bg-dark { background: var(--hs-site-dark); color: #f3f4f6; }
.hs-bg-dark .hs-subtitle, .hs-bg-dark .hs-feature-text { color: #cbd5e1; }
.hs-bg-primary { background: var(--hs-site-primary); color: #fff; }
.hs-bg-accent { background: var(--hs-site-accent); color: #fff; }
.hs-bg-primary a, .hs-bg-accent a, .hs-bg-dark a { color: inherit; }
.hs-block + .hs-block { margin-top: 1.5rem; }

/* Tipografi */
.hs-heading { font-weight: 700; letter-spacing: -0.02em; margin-bottom: .5rem; }
.hs-subtitle { color: var(--hs-site-muted); font-size: 1.125rem; margin-bottom: 0; }
.hs-richtext { font-size: 1.0625rem; line-height: 1.75; }
.hs-richtext p:last-child { margin-bottom: 0; }
.hs-richtext .ql-align-center { text-align: center; }
.hs-richtext .ql-align-right { text-align: right; }
.hs-richtext .ql-align-justify { text-align: justify; }
.hs-richtext blockquote { border-left: 4px solid var(--hs-site-primary); padding: .25rem 0 .25rem 1rem; color: var(--hs-site-muted); }

/* Hero */
.hs-hero { padding: 2rem 0; }
.hs-hero-md { padding: 3rem 0; }
.hs-hero-lg { padding: 5rem 0; }
.hs-hero-full { min-height: 80vh; display: flex; align-items: center; }
.hs-hero-full > .row { width: 100%; }
.hs-hero-title { font-size: clamp(2rem, 4vw + 1rem, 3.5rem); font-weight: 800; letter-spacing: -0.03em; line-height: 1.1; }
.hs-hero-subtitle { font-size: 1.25rem; color: var(--hs-site-muted); margin-top: 1rem; }
.hs-hero-image { border-radius: var(--hs-site-radius); box-shadow: 0 20px 50px rgba(15, 23, 42, .15); }

/* Özellik kartları */
.hs-feature { padding: 1.75rem; border-radius: var(--hs-site-radius); background: #fff; border: 1px solid rgba(15, 23, 42, .08); transition: transform .2s ease, box-shadow .2s ease; }
.hs-feature:hover { transform: translateY(-3px); box-shadow: 0 12px 30px rgba(15, 23, 42, .08); }
.hs-bg-dark .hs-feature { background: rgba(255, 255, 255, .04); border-color: rgba(255, 255, 255, .1); }
.hs-feature-icon { display: inline-flex; align-items: center; justify-content: center; width: 3rem; height: 3rem; border-radius: 12px; background: color-mix(in srgb, var(--hs-site-primary) 12%, transparent); color: var(--hs-site-primary); font-size: 1.5rem; margin-bottom: 1rem; }
.hs-feature-title { font-size: 1.15rem; font-weight: 700; }
.hs-feature-text { color: var(--hs-site-muted); margin-bottom: 0; }

/* Görsel */
.hs-rounded { border-radius: var(--hs-site-radius); }
.hs-figure { margin: 0 auto; }
.hs-figure figcaption { color: var(--hs-site-muted); font-size: .9rem; margin-top: .5rem; text-align: center; }
.hs-w-wide { max-width: 1000px; }
.hs-w-narrow { max-width: 640px; }

/* SSS */
.hs-faq { max-width: 860px; margin: 0 auto; }
.hs-faq .accordion-button { font-weight: 600; }

/* İletişim */
.hs-contact-label { font-size: .8rem; text-transform: uppercase; letter-spacing: .06em; color: var(--hs-site-muted); margin-bottom: .25rem; }

/* Boşluk */
.hs-spacer-sm { height: 1rem; }
.hs-spacer-md { height: 2.5rem; }
.hs-spacer-lg { height: 4rem; }
.hs-spacer-xl { height: 6rem; }
.hs-spacer hr { margin: 0; position: relative; top: 50%; }

/* Önizleme çubuğu */
.hs-preview-bar { position: sticky; top: 0; z-index: 1030; background: #ff7a1a; color: #fff; text-align: center; font-weight: 600; padding: .5rem 1rem; font-size: .9rem; }
.hs-preview-bar a { color: #fff; margin-left: .75rem; }
.hs-preview-bar .hs-dot { display: inline-block; width: .5rem; height: .5rem; border-radius: 50%; background: #fff; margin-right: .5rem; vertical-align: middle; }

/* Platform imzası */
.hs-branding { font-size: .85rem; opacity: .75; text-decoration: none; }
.hs-branding:hover { opacity: 1; }

/* Türetilmiş tema seçenekleri (K-74): logo ve üst bilgi stili. body.hs-header-* taban temanın üst bilgisini ezer. */
.hs-brand-logo { display: block; max-height: 44px; max-width: 220px; width: auto; height: auto; }
body.hs-header-light .hs-header { background: rgba(255, 255, 255, .96); border-bottom: 1px solid rgba(15, 23, 42, .06); }
body.hs-header-light .hs-header .hs-brand { color: var(--hs-site-text); }
body.hs-header-light .hs-header .nav-link { color: #475569; box-shadow: none; }
body.hs-header-light .hs-header .nav-link:hover, body.hs-header-light .hs-header .nav-link.active { color: var(--hs-site-primary); }
body.hs-header-light .hs-header .navbar {
  --bs-navbar-toggler-border-color: rgba(15, 23, 42, .15);
  --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
body.hs-header-dark .hs-header { background: var(--hs-site-dark); border-bottom: 0; }
body.hs-header-primary .hs-header { background: var(--hs-site-primary); border-bottom: 0; }
body.hs-header-dark .hs-header .hs-brand, body.hs-header-primary .hs-header .hs-brand { color: #fff; }
body.hs-header-dark .hs-header .nav-link, body.hs-header-primary .hs-header .nav-link { color: rgba(255, 255, 255, .8); }
body.hs-header-dark .hs-header .nav-link:hover, body.hs-header-dark .hs-header .nav-link.active,
body.hs-header-primary .hs-header .nav-link:hover, body.hs-header-primary .hs-header .nav-link.active { color: #fff; }
body.hs-header-dark .hs-header .navbar, body.hs-header-primary .hs-header .navbar {
  --bs-navbar-toggler-border-color: rgba(255, 255, 255, .25);
  --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.85%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

/* Galeri */
.hs-gallery-item { margin: 0; }
.hs-gallery-item img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--hs-site-radius); transition: transform .2s ease, box-shadow .2s ease; }
.hs-gallery-item a:hover img { transform: translateY(-2px); box-shadow: 0 10px 24px rgba(15, 23, 42, .12); }
.hs-gallery-item figcaption { color: var(--hs-site-muted); font-size: .9rem; margin-top: .4rem; }

/* Harita */
.hs-map iframe { display: block; width: 100%; border: 0; }

/* Sayılar */
.hs-counter-value { font-size: clamp(2rem, 3vw + 1rem, 3rem); font-weight: 800; letter-spacing: -0.03em; color: var(--hs-site-primary); line-height: 1.1; }
.hs-counter-label { color: var(--hs-site-muted); margin-top: .35rem; }
.hs-bg-primary .hs-counter-value, .hs-bg-dark .hs-counter-value, .hs-bg-accent .hs-counter-value { color: inherit; }
.hs-bg-primary .hs-counter-label, .hs-bg-dark .hs-counter-label, .hs-bg-accent .hs-counter-label { color: inherit; opacity: .8; }

/* Ekip */
.hs-person-photo { width: 128px; height: 128px; border-radius: 50%; object-fit: cover; display: inline-block; }
.hs-person-initial { display: inline-flex; align-items: center; justify-content: center; font-size: 2.5rem; font-weight: 700; color: var(--hs-site-primary); background: color-mix(in srgb, var(--hs-site-primary) 12%, transparent); }
.hs-person-role { color: var(--hs-site-muted); font-size: .95rem; }

/* Yorumlar */
.hs-testimonial { margin: 0; padding: 1.75rem; border-radius: var(--hs-site-radius); background: #fff; border: 1px solid rgba(15, 23, 42, .08); display: flex; flex-direction: column; gap: 1rem; color: var(--hs-site-text); }
.hs-testimonial-quote { margin: 0; font-size: 1.05rem; line-height: 1.7; flex: 1; }
.hs-testimonial-photo { width: 48px; height: 48px; border-radius: 50%; object-fit: cover; }
.hs-rating { color: #f59f00; }

/* Fiyat tablosu */
.hs-plan { display: flex; flex-direction: column; padding: 2rem; border-radius: var(--hs-site-radius); background: #fff; border: 1px solid rgba(15, 23, 42, .1); color: var(--hs-site-text); }
.hs-plan.is-highlighted { border: 2px solid var(--hs-site-primary); box-shadow: 0 16px 40px rgba(15, 23, 42, .12); }
.hs-plan-name { font-size: 1.2rem; font-weight: 700; }
.hs-plan-price { font-size: 2.25rem; font-weight: 800; letter-spacing: -0.02em; margin: .5rem 0 1rem; }
.hs-plan-period { font-size: 1rem; font-weight: 500; color: var(--hs-site-muted); }
.hs-plan-features { list-style: none; padding: 0; margin: 0 0 1.5rem; }
.hs-plan-features li { padding: .35rem 0; }
.hs-plan-features .ti-check { color: var(--hs-site-primary); }

/* Sekmeler */
.hs-tabs .nav-link { font-weight: 600; }
.hs-tabs .nav-pills .nav-link.active { background: var(--hs-site-primary); }
.hs-tabs .nav-tabs .nav-link.active { color: var(--hs-site-primary); }

/* Menüler ve global bölge */
.hs-header .dropdown-menu { border-radius: var(--hs-site-radius); border-color: rgba(15, 23, 42, .08); box-shadow: 0 12px 30px rgba(15, 23, 42, .1); }
.hs-header .dropdown-item.active, .hs-header .dropdown-item:active { background: var(--hs-site-primary); }
.hs-footer-menu li { display: inline-block; margin-right: 1rem; }
.hs-region-footer { border-top: 1px solid rgba(15, 23, 42, .06); }

/* Dil değiştirici */
.hs-lang { display: flex; gap: .25rem; margin-left: .75rem; }
.hs-lang .list-inline-item { margin: 0; }
.hs-lang a { display: inline-block; padding: .2rem .45rem; border-radius: 6px; font-size: .8rem; font-weight: 700; letter-spacing: .04em; color: inherit; opacity: .65; text-decoration: none; }
.hs-lang a:hover { opacity: 1; }
.hs-lang a.is-current { opacity: 1; background: color-mix(in srgb, var(--hs-site-primary) 12%, transparent); color: var(--hs-site-primary); }
body.hs-header-dark .hs-lang a.is-current, body.hs-header-primary .hs-lang a.is-current, .hs-theme-kurumsal:not(.hs-header-light) .hs-lang a.is-current { background: rgba(255, 255, 255, .15); color: #fff; }
.hs-theme-kurumsal:not(.hs-header-light) .hs-lang a { color: #fff; }

/* Çerez bildirimi (KVKK) */
.hs-consent { position: fixed; left: 1rem; right: 1rem; bottom: 1rem; z-index: 1080; max-width: 720px; margin: 0 auto; display: flex; flex-wrap: wrap; align-items: center; gap: .75rem 1rem; padding: 1rem 1.25rem; background: #fff; color: #1f2937; border-radius: 14px; box-shadow: 0 16px 40px rgba(15, 23, 42, .18); font-size: .925rem; }
.hs-consent[hidden] { display: none; }
.hs-consent-text { flex: 1 1 320px; }
.hs-consent-text a { color: var(--hs-site-primary); }
.hs-consent-actions { display: flex; gap: .5rem; }

/* Formlar modülü: bot tuzağı alanı görünmez (ekran okuyucudan da gizli), gönderim sonucu */
.hs-hp { position: absolute; left: -10000px; top: auto; width: 1px; height: 1px; overflow: hidden; }
.hs-form-success { margin: 0; }
.hs-form .form-label.required::after { content: " *"; color: #d63939; }

/* Blog modülü: kartlar, liste, yazı */
.hs-post-card { display: flex; flex-direction: column; overflow: hidden; background: #fff; border: 1px solid rgba(0, 0, 0, .08); }
.hs-post-card-image { display: block; aspect-ratio: 16 / 9; overflow: hidden; background: var(--hs-site-light); position: relative; }
.hs-post-card-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s; }
.hs-post-card:hover .hs-post-card-image img { transform: scale(1.03); }
.hs-post-card-video::after { content: ""; position: absolute; inset: 50% auto auto 50%; width: 58px; height: 58px; margin: -29px 0 0 -29px; border-radius: 50%;
  background: rgba(0, 0, 0, .55) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M8 5v14l11-7z'/%3E%3C/svg%3E") center / 28px no-repeat; }
.hs-post-card-body { padding: 1.25rem; display: flex; flex-direction: column; gap: .4rem; flex: 1; }
.hs-post-card-list { flex-direction: row; }
.hs-post-card-list .hs-post-card-image { width: 34%; flex-shrink: 0; aspect-ratio: 4 / 3; }
.hs-post-date { font-size: .85rem; color: var(--hs-site-muted); }
.hs-post-title { font-size: 1.15rem; margin: 0; line-height: 1.35; }
.hs-post-title a { color: inherit; text-decoration: none; }
.hs-post-title a:hover { color: var(--hs-site-primary); }
.hs-post-summary { color: var(--hs-site-muted); margin: 0; }
.hs-post-more { margin-top: auto; font-weight: 600; text-decoration: none; color: var(--hs-site-primary); }
.hs-post { max-width: 860px; }
.hs-post-nav a { text-decoration: none; font-weight: 600; }
@media (max-width: 576px) { .hs-post-card-list { flex-direction: column; } .hs-post-card-list .hs-post-card-image { width: 100%; } }
.hs-post-body .container { max-width: 860px; }
.hs-post-body .hs-section:first-child { padding-top: 0; }

/* Slider bloğu */
.hs-slider .carousel-item { position: relative; }
.hs-slider-image { display: block; width: 100%; object-fit: cover; height: 420px; }
.hs-slider-sm .hs-slider-image { height: 300px; }
.hs-slider-lg .hs-slider-image { height: 560px; }
.hs-slider-full .hs-slider-image { height: min(86vh, 820px); }
.hs-slider-caption { position: absolute; inset: 0; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: .75rem;
  padding: 2rem 8%; color: #fff; background: linear-gradient(90deg, rgba(0, 0, 0, .55), rgba(0, 0, 0, .05)); }
.hs-slider-title { font-size: clamp(1.6rem, 3.5vw, 3rem); margin: 0; color: #fff; max-width: 760px; }
.hs-slider-text { font-size: 1.1rem; max-width: 640px; margin: 0; }
@media (max-width: 576px) { .hs-slider-image { height: 300px; } }
