/*
 * Uzmansoft v5 — ana sayfa stilleri (yalnız views/home'dan bağlanır).
 */

/* ---------- Hero ----------
   Sol: slider metni ve tek CTA (alan adı arama kendi bölümünde). Sağ: tema görseli + başlangıç fiyatları kartı.
   Zemin desensiz: görselin arkasında yumuşak marka ışığı, altta bir sonraki bölümün tonuna geçiş. */
/* .uz-hero kabuğu ve .uz-hero-backdrop zemini partials/critical-style.tpl içinde (header–hero geçişiyle birlikte). */
.uz-hero-grid { display: grid; align-items: center; gap: 3rem; }
.uz-hero-copy { max-width: 640px; }
/* Bölüm başlıklarındaki .uz-eyebrow ile aynı dil: logodaki slogan çizgisi + küçük büyük harf */
.uz-hero-eyebrow {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin: 0 0 1.4rem;
    font-size: 0.8125rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    line-height: 1.4;
    text-transform: uppercase;
    color: var(--uz-accent-text);
}
/* Çizgi ilk satırın ortasında durur; metin mobilde iki satıra inse de kaymaz */
.uz-hero-eyebrow::before { content: ""; flex-shrink: 0; align-self: flex-start; width: 28px; height: 2px; margin-top: calc(0.7em - 1px); border-radius: 2px; background: currentColor; }
.uz-hero-title {
    margin: 0 0 1.25rem;
    font-size: clamp(2.25rem, 1.4rem + 3vw, 3.625rem);
    font-weight: 700;
    letter-spacing: -0.03em;
    line-height: 1.06;
    color: var(--uz-heading);
    text-wrap: balance;
}
.uz-hero-title em { display: block; font-style: normal; color: var(--uz-primary-text); }
.uz-hero-lead { max-width: 33em; margin: 0; font-size: clamp(1.0625rem, 1rem + 0.3vw, 1.1875rem); line-height: 1.65; color: var(--uz-text); }
.uz-hero-proof { display: flex; flex-wrap: wrap; gap: 0.6rem 1.5rem; margin: 2rem 0 0; padding: 0; list-style: none; font-size: 0.875rem; font-weight: 600; color: var(--uz-heading); }
.uz-hero-proof li { display: inline-flex; align-items: center; gap: 0.45rem; }
.uz-hero-proof i { color: var(--uz-accent); }
/* Slayt teknoloji logoları (.uz-hero-marks): stili partials/critical-style.tpl içinde, HTML ile gelir (CDN önbelleği). */

/* Alan adı arama */
.uz-domain { width: 100%; max-width: 620px; }
.uz-domain-field {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 6px;
    padding-inline-start: 1rem;
    border: 1px solid var(--uz-border-strong);
    border-radius: 14px;
    background: var(--uz-surface);
    box-shadow: 0 1px 2px rgba(14, 24, 38, 0.06), 0 16px 36px -22px rgba(14, 24, 38, 0.4);
    transition: border-color 0.2s var(--uz-ease), box-shadow 0.2s var(--uz-ease);
}
.uz-domain-field:focus-within {
    border-color: var(--uz-primary-fill);
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--uz-primary) 15%, transparent), 0 16px 36px -22px rgba(14, 24, 38, 0.4);
}
.uz-domain-ico { font-size: 1.1rem; color: var(--uz-muted); }
.uz-domain-input {
    flex: 1;
    min-width: 0;
    height: 48px;
    border: 0;
    outline: 0;
    background: transparent;
    font: 500 1.0625rem var(--uz-font);
    color: var(--uz-heading);
}
.uz-domain-input::placeholder { color: var(--uz-muted); opacity: 1; }
.uz-domain-btn { height: 48px; padding: 0 1.35rem; border-radius: 10px; }
.uz-domain.is-lg .uz-domain-input { height: 52px; font-size: 1.125rem; }
.uz-domain.is-lg .uz-domain-btn { height: 52px; padding: 0 1.5rem; }
@media (max-width: 575.98px) {
    .uz-domain-field { padding-inline-start: 0.85rem; }
    .uz-domain-btn { width: 48px; padding: 0; }
    .uz-domain.is-lg .uz-domain-btn { width: 52px; padding: 0; }
    .uz-domain-btn span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
}
/* Gönderim sonrası bekleme: arama simgesi dönen halkaya dönüşür (js/home.js; Bootstrap'in spinner-border animasyonu) */
.uz-domain-btn.is-loading { pointer-events: none; }
.uz-domain-btn.is-loading i::before {
    content: "";
    display: block;
    width: 1em;
    height: 1em;
    border: 2px solid currentColor;
    border-inline-end-color: transparent;
    border-radius: 50%;
    animation: spinner-border 0.75s linear infinite;
}
@media (prefers-reduced-motion: reduce) {
    .uz-domain-btn.is-loading i::before { animation-duration: 1.6s; }
}

/* Sağ kolon: görsel + başlangıç fiyatları şeridi.
   Görsel şeffaf zeminli; arkasındaki ışık ve gölge onu zemine oturtur. Şerit yalnız görselin alt bandına
   (sunucunun altındaki kapüşon) biner: yüz, eller ve sunucu açık kalır. */
.uz-hero-aside { position: relative; width: min(100%, 540px); justify-self: end; }
.uz-hero-visual { position: relative; isolation: isolate; }
.uz-hero-visual::before {
    content: "";
    position: absolute;
    inset: 4% -10% 0;
    z-index: -1;
    border-radius: 50%;
    background: radial-gradient(closest-side, color-mix(in srgb, var(--uz-primary) 13%, transparent), color-mix(in srgb, var(--uz-sky) 5%, transparent) 62%, transparent);
}
.uz-hero-img { display: block; width: 100%; height: auto; filter: drop-shadow(0 32px 40px rgba(14, 24, 38, 0.16)); }
[data-bs-theme="dark"] .uz-hero-img { filter: drop-shadow(0 32px 48px rgba(0, 0, 0, 0.5)); }

.uz-hero-card {
    position: absolute;
    bottom: -2%;
    inset-inline: -1.75rem 0;
    padding: 0.35rem;
    border: 1px solid var(--uz-border);
    border-radius: var(--uz-r-lg);
    background: var(--uz-surface);
    box-shadow: 0 2px 4px rgba(14, 24, 38, 0.05), 0 30px 60px -24px rgba(14, 24, 38, 0.38);
}
/* Logodaki lacivert-gök-yeşil geçişi */
.uz-hero-card::before {
    content: "";
    position: absolute;
    inset-inline: 1.1rem;
    top: -1px;
    height: 2px;
    border-radius: 2px;
    background: linear-gradient(90deg, var(--uz-primary-fill), var(--uz-sky) 55%, var(--uz-leaf));
}
.uz-hero-card-head { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; margin: 0; padding: 0.6rem 0.75rem 0.3rem; }
.uz-hero-card-label { font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--uz-heading); }
.uz-hero-card-hint { font-size: 0.75rem; color: var(--uz-muted); }
/* Kart sayısı kadar eşit sütun (1–3) */
.uz-hero-card-list { display: grid; grid-auto-columns: minmax(0, 1fr); grid-auto-flow: column; margin: 0; padding: 0; list-style: none; }
.uz-hero-card-list li { position: relative; }
.uz-hero-card-list li + li::before { content: ""; position: absolute; inset-block: 0.7rem; inset-inline-start: 0; width: 1px; background: var(--uz-border); }
.uz-hero-card-item {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    height: 100%;
    padding: 0.55rem 0.6rem;
    border-radius: 11px;
    color: inherit;
    text-decoration: none;
    transition: background-color 0.18s var(--uz-ease);
}
.uz-hero-card-item:hover { background: var(--uz-soft); color: inherit; }
.uz-hero-card-copy { display: flex; flex-direction: column; min-width: 0; line-height: 1.3; }
.uz-hero-card-ico {
    --tile: var(--uz-primary-fill);
    display: grid;
    place-items: center;
    flex-shrink: 0;
    width: 34px;
    height: 34px;
    border-radius: 10px;
    background: color-mix(in srgb, var(--tile) 10%, transparent);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--tile) 18%, transparent);
    color: var(--tile);
    font-size: 1rem;
}
.uz-hero-card-list li:nth-child(3n + 2) .uz-hero-card-ico { --tile: var(--uz-accent); }
.uz-hero-card-list li:nth-child(3n + 3) .uz-hero-card-ico { --tile: #0b8fc4; }
[data-bs-theme="dark"] .uz-hero-card-ico { --tile: var(--uz-primary-text); }
[data-bs-theme="dark"] .uz-hero-card-list li:nth-child(3n + 2) .uz-hero-card-ico { --tile: var(--uz-leaf); }
[data-bs-theme="dark"] .uz-hero-card-list li:nth-child(3n + 3) .uz-hero-card-ico { --tile: #38bdf8; }
.uz-hero-card-ico img { width: 18px; height: 18px; object-fit: contain; }
.uz-hero-card-title { overflow: hidden; font-size: 0.8125rem; font-weight: 600; color: var(--uz-text); text-overflow: ellipsis; white-space: nowrap; transition: color 0.18s var(--uz-ease); }
.uz-hero-card-item:hover .uz-hero-card-title { color: var(--uz-primary-text); }
.uz-hero-card-price { font-size: 1rem; font-weight: 800; letter-spacing: -0.01em; color: var(--uz-heading); }
/* Panel slaytlarının görseli zemindeyken şerit sağ kolonun altında tek başına durur */
.uz-hero.has-media .uz-hero-aside { align-self: end; }
.uz-hero.has-media .uz-hero-card { position: relative; inset: auto; }

@media (min-width: 992px) {
    .uz-hero.has-aside .uz-hero-grid { grid-template-columns: minmax(0, 1.12fr) minmax(0, 0.88fr); gap: clamp(2.5rem, 4vw, 4.5rem); }
}
/* Dar masaüstünde sağ kolon küçülür: başlıklar kesilmesin diye şerit ikonsuz kalır */
@media (min-width: 992px) and (max-width: 1199.98px) {
    .uz-hero-card-ico { display: none; }
    .uz-hero-card-item { padding-inline: 0.75rem; }
}
@media (max-width: 991.98px) {
    .uz-hero-aside { width: min(100%, 520px); justify-self: center; }
    .uz-hero-card { position: relative; inset: auto; margin-top: -17%; }
    .uz-hero.has-media .uz-hero-card { margin-top: 0; }
}
/* Telefonda şerit satırlara döner */
@media (max-width: 575.98px) {
    .uz-hero-card-list { grid-auto-flow: row; }
    .uz-hero-card-list li + li::before { inset-block: 0 auto; inset-inline: 3.4rem 0.6rem; width: auto; height: 1px; }
    .uz-hero-card-copy { flex: 1; flex-direction: row; align-items: baseline; justify-content: space-between; gap: 0.75rem; }
}

/* ---------- Hero slider ----------
   Slaytlar aynı ızgara hücresinde üst üste durur: yükseklik en uzun slayta göre sabitlenir, geçişte zıplama olmaz.
   Geçiş kısa tutulur: çıkan slayt 0.2 sn'de söner, gelen hemen ardından 0.4 sn'de yükselerek belirir. */
.uz-hero-slides { display: grid; }
.uz-hero-slide {
    grid-area: 1 / 1;
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px);
    transition: opacity 0.2s ease, transform 0.2s ease, visibility 0s linear 0.2s;
}
.uz-hero-slide.is-active {
    opacity: 1;
    visibility: visible;
    transform: none;
    transition: opacity 0.4s var(--uz-ease) 0.06s, transform 0.4s var(--uz-ease) 0.06s, visibility 0s;
}

.uz-hero-meta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem 1.5rem; margin: 2rem 0 2.25rem; }
/* Butonlar üst üste durur; her biri kendi genişliğinde kalır */
.uz-hero-ctas { display: grid; justify-items: start; }
.uz-hero-cta {
    grid-area: 1 / 1;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.18s ease, visibility 0s linear 0.18s, background-color 0.18s var(--uz-ease), transform 0.18s var(--uz-ease);
}
.uz-hero-cta.is-active { opacity: 1; visibility: visible; transition: opacity 0.35s var(--uz-ease) 0.1s, visibility 0s, background-color 0.18s var(--uz-ease), transform 0.18s var(--uz-ease); }

.uz-hero-ctrl { display: flex; align-items: center; gap: 0.9rem; }
.uz-hero-steps { display: flex; align-items: center; gap: 0.25rem; }
.uz-hero-step { position: relative; width: 34px; height: 26px; padding: 0; border: 0; background: transparent; cursor: pointer; }
.uz-hero-step::before,
.uz-hero-step-fill { position: absolute; top: 50%; height: 3px; margin-top: -1.5px; border-radius: 3px; }
.uz-hero-step::before { content: ""; inset-inline: 0; background: var(--uz-border-strong); transition: background-color 0.2s var(--uz-ease); }
.uz-hero-step:hover::before { background: color-mix(in srgb, var(--uz-primary) 35%, var(--uz-border-strong)); }
.uz-hero-step-fill { inset-inline-start: 0; width: 0; background: var(--uz-primary-fill); }
.uz-hero-step.is-done .uz-hero-step-fill,
.uz-hero-step.is-active .uz-hero-step-fill { width: 100%; }
.uz-hero.is-playing .uz-hero-step.is-active .uz-hero-step-fill { animation: uz-step var(--uz-interval, 5s) linear both; }
@keyframes uz-step {
    from { width: 0; }
    to { width: 100%; }
}
.uz-hero-count { font-size: 0.8125rem; font-weight: 700; letter-spacing: 0.04em; color: var(--uz-heading); }
.uz-hero-count-sep { margin: 0 0.3rem; font-weight: 500; color: var(--uz-muted); }
.uz-hero-btns { display: flex; gap: 0.35rem; }
.uz-icon-btn.is-sm { width: 34px; height: 34px; border-radius: 9px; font-size: 0.95rem; }
.uz-when-paused { display: none; }
[data-uz-toggle].is-paused .uz-when-playing { display: none; }
[data-uz-toggle].is-paused .uz-when-paused { display: inline; }
[dir="rtl"] .uz-hero-btns .bi-chevron-left,
[dir="rtl"] .uz-hero-btns .bi-chevron-right { transform: scaleX(-1); }

/* Panel slaytlarındaki görsel/video: hero zemininde çapraz geçiş, metin tarafı açık örtüyle okunur kalır */
.uz-hero-media { position: absolute; inset: 0; z-index: -1; }
.uz-hero-media-item { position: absolute; inset: 0; opacity: 0; transition: opacity 0.5s var(--uz-ease); }
.uz-hero-media-item.is-active { opacity: 1; }
.uz-hero-media-item img,
.uz-hero-media-item video { width: 100%; height: 100%; object-fit: cover; }
.uz-hero-media-scrim {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, var(--uz-bg) 0%, color-mix(in srgb, var(--uz-bg) 94%, transparent) 40%, color-mix(in srgb, var(--uz-bg) 55%, transparent) 72%, color-mix(in srgb, var(--uz-bg) 25%, transparent) 100%);
}
[dir="rtl"] .uz-hero-media-scrim { transform: scaleX(-1); }

@media (max-width: 991.98px) {
    .uz-hero-media-scrim { background: color-mix(in srgb, var(--uz-bg) 88%, transparent); }
}
@media (max-width: 575.98px) {
    .uz-hero-meta { margin: 1.5rem 0 1.75rem; }
    .uz-hero-ctrl { width: 100%; justify-content: space-between; }
}

/* ---------- Alan adı sorgulama ----------
   Panelin blok sırasına göre basılır; varsayılan sırada hero ile paketler arasında durur.
   Kompakt beyaz panel: ince kenar, üst ortada çok hafif marka ışığı, desen yok. Tek satırlık başlık (700 + ince ikinci yarı),
   içinde Tescil/Transfer seçimi olan arama çubuğu (lacivert düğme), sakin güvenceler. Altta uzantı fiyat cetveli: kart yığını
   değil, kılcal çizgilerle bölünmüş tek parça; çubuk genişliğine yakın ortalanır, panelin alt kenarına --uz-dsearch-hang kadar taşar.
   Renk: beyaz, lacivert, soğuk griler; marka mavisi yalnız ışıkta, ikonlarda ve uzantı noktasında; yeşil yalnız "İndirim". */
.uz-dsearch {
    --uz-dsearch-hang: 2rem;
    padding: clamp(1.5rem, 1rem + 2vw, 2.5rem) 0;
    background: var(--uz-soft);
}
.uz-dsearch.has-ledger { padding-bottom: calc(var(--uz-dsearch-hang) + 1rem); }
.uz-hero + .uz-dsearch { padding-top: 0; }
.uz-dsearch + .uz-plans { padding-top: clamp(2rem, 1.5rem + 2vw, 3.5rem); }

.uz-dsearch-panel {
    padding: clamp(1.75rem, 1.25rem + 1.5vw, 2.75rem) clamp(1rem, 0.25rem + 2.5vw, 2.75rem);
    border: 1px solid var(--uz-border);
    border-radius: var(--uz-r-xl);
    background:
        radial-gradient(55% 80% at 50% 0%, color-mix(in srgb, var(--uz-primary) 6%, transparent), transparent 72%),
        var(--uz-surface);
    text-align: center;
}
.uz-dsearch.has-ledger .uz-dsearch-panel { padding-bottom: 0; }
[data-bs-theme="dark"] .uz-dsearch-panel {
    background:
        radial-gradient(55% 80% at 50% 0%, color-mix(in srgb, var(--uz-primary-fill) 14%, transparent), transparent 72%),
        var(--uz-surface);
}

.uz-dsearch-head { max-width: 880px; margin: 0 auto 1.5rem; }
.uz-dsearch-title { margin: 0 0 0.5rem; font-size: clamp(1.375rem, 1.05rem + 1.1vw, 1.875rem); font-weight: 700; letter-spacing: -0.03em; line-height: 1.2; color: var(--uz-heading); text-wrap: balance; }
.uz-dsearch-title em { font-style: normal; font-weight: 400; color: var(--uz-muted); }
.uz-dsearch-lead { max-width: 76ch; margin: 0 auto; font-size: 0.9375rem; line-height: 1.6; color: var(--uz-text); text-wrap: pretty; }

.uz-dsearch-form { max-width: 720px; margin: 0 auto; }
.uz-dsearch .uz-domain { max-width: none; text-align: start; }

/* Arama çubuğu: solda Tescil/Transfer seçimi (ayrı satır yerine çubuğun içinde), lacivert düğme (bileşende uz-btn-ink) */
.uz-dsearch .uz-domain-field { gap: 0.6rem; padding: 6px; border-radius: 14px; box-shadow: 0 1px 2px rgba(14, 24, 38, 0.05), 0 16px 36px -24px rgba(14, 24, 38, 0.32); }
.uz-dsearch .uz-domain.is-lg .uz-domain-input { height: 48px; padding-inline-start: 0.25rem; font-size: 1.0625rem; }
.uz-dsearch .uz-domain.is-lg .uz-domain-btn { height: 48px; padding: 0 1.3rem; border-radius: 10px; }

/* Seçim: gri ray üzerinde beyaz çip (çubuktaki lacivert düğmeyle yarışmaz) */
.uz-dmode { position: relative; display: flex; flex-shrink: 0; gap: 2px; margin: 0; padding: 3px; border: 0; border-radius: 10px; background: var(--uz-soft); }
.uz-dmode-input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.uz-dmode-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 42px;
    padding: 0 0.9rem;
    border-radius: 8px;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--uz-muted);
    cursor: pointer;
    user-select: none;
    transition: background-color 0.15s var(--uz-ease), color 0.15s var(--uz-ease), box-shadow 0.15s var(--uz-ease);
}
.uz-dmode-btn:hover { color: var(--uz-heading); }
.uz-dmode-input:checked + .uz-dmode-btn { background: var(--uz-surface); color: var(--uz-heading); box-shadow: 0 1px 2px rgba(14, 24, 38, 0.1), 0 0 0 1px var(--uz-border); }
.uz-dmode-input:focus-visible + .uz-dmode-btn { outline: 2px solid var(--uz-focus); outline-offset: 1px; }
[data-bs-theme="dark"] .uz-dmode-input:checked + .uz-dmode-btn { background: var(--uz-raised); }

.uz-dsearch-perks { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.4rem 1.5rem; margin: 0.85rem 0 0; padding: 0; list-style: none; font-size: 0.8125rem; font-weight: 500; color: var(--uz-text); }
.uz-dsearch-perks li { display: inline-flex; align-items: center; gap: 0.45rem; }
.uz-dsearch-perks i { color: var(--uz-primary-text); }

/* Fiyat cetveli: zemin çizgi rengindedir, hücreler arasındaki 1px boşluk kılcal çizgi olur; satır sonları boşluk bırakmaz
   (hücreler esner). Uzantı adı tek tip yazı + marka mavisi nokta. Son hücre fiyat listesine (#tld-pricing) gider. */
.uz-dsearch-ledger {
    display: flex;
    flex-wrap: wrap;
    gap: 1px;
    max-width: 960px;
    margin: clamp(1.5rem, 1.25rem + 1vw, 2rem) auto calc(var(--uz-dsearch-hang) * -1);
    padding: 0;
    overflow: hidden;
    border: 1px solid var(--uz-border);
    border-radius: 14px;
    background: var(--uz-border);
    box-shadow: 0 1px 2px rgba(14, 24, 38, 0.05), 0 20px 40px -28px rgba(14, 24, 38, 0.38);
    list-style: none;
    text-align: start;
}
.uz-dsearch-ledger li { display: flex; flex: 1 1 8.5rem; }
.uz-dsearch-tld {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: 0.3rem;
    min-width: 0;
    padding: 0.8rem 1.05rem;
    background: var(--uz-surface);
    color: var(--uz-text);
    text-decoration: none;
    transition: background-color 0.18s var(--uz-ease);
}
.uz-dsearch-tld:hover { background: var(--uz-soft); color: var(--uz-text); }
/* Cetvel köşeleri overflow:hidden ile yuvarlanır; odak çizgisi kesilmesin diye hücrenin içine çizilir */
.uz-dsearch-tld:focus-visible { outline-offset: -3px; }
.uz-dsearch-tld-name { display: flex; flex-wrap: wrap; align-items: center; gap: 0.3rem 0.45rem; font-size: 1.125rem; font-weight: 800; letter-spacing: -0.02em; line-height: 1.15; color: var(--uz-heading); }
.uz-dsearch-tld-dot { color: var(--uz-primary-text); }
.uz-dsearch-tld-tag { padding: 0.15rem 0.4rem; border-radius: 5px; background: var(--uz-accent-soft); font-size: 0.625rem; font-weight: 700; letter-spacing: 0.04em; line-height: 1.2; text-transform: uppercase; color: var(--uz-accent-text); }
.uz-dsearch-tld-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0.1rem 0.45rem; font-size: 0.875rem; font-weight: 700; color: var(--uz-heading); }
.uz-dsearch-tld-amount { white-space: nowrap; }
.uz-dsearch-tld-per { margin-inline-start: 0.15rem; font-size: 0.6875rem; font-weight: 500; color: var(--uz-muted); }
.uz-dsearch-tld-was { font-size: 0.6875rem; font-weight: 500; color: var(--uz-muted); }
.uz-dsearch-tld.is-all { justify-content: center; background: var(--uz-soft); }
.uz-dsearch-tld.is-all:hover { background: color-mix(in srgb, var(--uz-ink) 4%, var(--uz-soft)); }
.uz-dsearch-tld-all { font-size: 0.875rem; font-weight: 700; color: var(--uz-heading); }
.uz-dsearch-tld-link { display: inline-flex; align-items: center; gap: 0.3rem; font-size: 0.75rem; font-weight: 600; color: var(--uz-primary-text); }
.uz-dsearch-tld-link i { transition: transform 0.2s var(--uz-ease); }
.uz-dsearch-tld.is-all:hover .uz-dsearch-tld-link i { transform: translateX(3px); }
[dir="rtl"] .uz-dsearch-tld-link i { transform: scaleX(-1); }
[dir="rtl"] .uz-dsearch-tld.is-all:hover .uz-dsearch-tld-link i { transform: scaleX(-1) translateX(3px); }
[data-bs-theme="dark"] .uz-dsearch-tld { background: var(--uz-raised); }
[data-bs-theme="dark"] .uz-dsearch-tld:hover,
[data-bs-theme="dark"] .uz-dsearch-tld.is-all { background: var(--uz-soft); }

/* Telefon: seçim çubuğun üst satırına yayılır, alan + simge düğme alt satırda; cetvel iki sütun */
@media (max-width: 575.98px) {
    .uz-dsearch { --uz-dsearch-hang: 1.5rem; }
    .uz-dsearch .uz-domain-field { flex-wrap: wrap; row-gap: 6px; }
    .uz-dmode { flex-basis: 100%; }
    .uz-dmode-btn { flex: 1 1 0; height: 40px; }
    .uz-dsearch .uz-domain.is-lg .uz-domain-input { padding-inline-start: 0.6rem; }
    .uz-dsearch .uz-domain.is-lg .uz-domain-btn { width: 48px; padding: 0; }
    .uz-dsearch-perks { gap: 0.4rem 1.1rem; }
    .uz-dsearch-ledger li { flex-basis: calc(50% - 1px); }
    .uz-dsearch-tld { padding: 0.75rem 0.95rem; }
}

/* ---------- Paketler ----------
   Ortalanmış başlık → konsol (kategori sekmeleri + ödeme dönemi) → kartlar ya da satırlar.
   Zemin desensiz: hero'daki gibi üstte yumuşak marka ışığı. */
.uz-plans {
    position: relative;
    isolation: isolate;
    background:
        radial-gradient(1100px 480px at 50% 0%, color-mix(in srgb, var(--uz-primary) 6%, transparent), transparent 70%),
        var(--uz-soft);
}
.uz-plans .uz-head { margin-bottom: clamp(1.75rem, 1.25rem + 1.5vw, 2.5rem); }
.uz-plans .tab-pane:focus-visible { outline-offset: 6px; border-radius: 12px; }

/* Konsol: geniş ekranda tek çubuk (sekmeler solda, dönem sağda), dar ekranda alt alta */
.uz-plans-console {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem 1.5rem;
    margin: 0 0 clamp(1.75rem, 1.25rem + 1.5vw, 2.5rem);
    padding: 0.5rem;
    border: 1px solid var(--uz-border);
    border-radius: 18px;
    background: var(--uz-surface);
    box-shadow: var(--uz-shadow);
}
.uz-plans-console.is-cycles-only { width: fit-content; max-width: 100%; margin-inline: auto; padding-inline-start: 1rem; }

.uz-tabs { display: flex; flex: 0 1 auto; gap: 0.25rem; min-width: 0; overflow-x: auto; scroll-snap-type: x proximity; scrollbar-width: none; }
.uz-tabs::-webkit-scrollbar { display: none; }
.uz-tab {
    display: inline-flex;
    flex-shrink: 0;
    align-items: center;
    gap: 0.75rem;
    min-height: 60px;
    padding: 0.5rem;
    padding-inline-end: 1.25rem;
    border: 1px solid transparent;
    border-radius: 12px;
    background: transparent;
    font: inherit;
    text-align: start;
    color: var(--uz-text);
    cursor: pointer;
    scroll-snap-align: start;
    transition: background-color 0.18s var(--uz-ease), border-color 0.18s var(--uz-ease);
}
.uz-tab:hover { background: var(--uz-soft); }
.uz-tab-ico {
    display: grid;
    place-items: center;
    flex-shrink: 0;
    width: 42px;
    height: 42px;
    border: 1px solid var(--uz-border);
    border-radius: 10px;
    background: var(--uz-surface);
    color: var(--uz-heading);
    font-size: 1.15rem;
    transition: background-color 0.18s var(--uz-ease), color 0.18s var(--uz-ease), border-color 0.18s var(--uz-ease), box-shadow 0.18s var(--uz-ease);
}
.uz-tab-text { display: flex; flex-direction: column; gap: 0.2rem; }
.uz-tab-title { font-size: 0.9375rem; font-weight: 700; line-height: 1.2; letter-spacing: -0.01em; color: var(--uz-heading); white-space: nowrap; }
.uz-tab-meta { font-size: 0.75rem; font-weight: 500; line-height: 1.2; color: var(--uz-muted); white-space: nowrap; }
.uz-tab.active { border-color: var(--uz-border); background: var(--uz-soft); }
.uz-tab.active .uz-tab-ico {
    border-color: transparent;
    background: var(--uz-primary-fill);
    color: #fff;
    box-shadow: 0 8px 16px -10px color-mix(in srgb, var(--uz-primary) 85%, transparent);
}
.uz-tab.active .uz-tab-meta { color: var(--uz-primary-text); }

.uz-billing { display: flex; align-items: center; gap: 0.85rem; margin-inline-start: auto; }
.uz-billing-label { font-size: 0.8125rem; font-weight: 600; color: var(--uz-muted); white-space: nowrap; }
.uz-segment { display: inline-flex; gap: 2px; padding: 4px; border: 1px solid var(--uz-border); border-radius: 12px; background: var(--uz-soft); }
.uz-segment-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    height: 42px;
    padding: 0 0.95rem;
    border: 0;
    border-radius: 9px;
    background: transparent;
    font: 600 0.875rem/1 var(--uz-font);
    color: var(--uz-muted);
    white-space: nowrap;
    cursor: pointer;
    transition: background-color 0.15s var(--uz-ease), color 0.15s var(--uz-ease), box-shadow 0.15s var(--uz-ease);
}
.uz-segment-btn:hover { color: var(--uz-heading); }
.uz-segment-btn:disabled { opacity: 0.38; cursor: not-allowed; }
.uz-segment-btn:disabled:hover { color: var(--uz-muted); }
.uz-segment-btn.active { background: var(--uz-ink); color: #fff; box-shadow: 0 1px 2px rgba(14, 24, 38, 0.25), 0 8px 16px -10px rgba(14, 24, 38, 0.7); }
[data-bs-theme="dark"] .uz-segment-btn.active { background: var(--uz-primary-fill); }
.uz-segment-save {
    display: inline-flex;
    align-items: center;
    padding: 0.22rem 0.42rem;
    border-radius: 6px;
    background: var(--uz-accent-soft);
    color: var(--uz-accent-text);
    font-size: 0.6875rem;
    font-weight: 700;
    line-height: 1;
}
.uz-segment-btn.active .uz-segment-save { background: rgba(95, 211, 106, 0.18); color: #7ee08b; }

@media (max-width: 991.98px) {
    .uz-plans-console { flex-direction: column; align-items: stretch; gap: 0.25rem; }
    .uz-tab { flex-grow: 1; }
    .uz-billing { flex-direction: column; align-items: stretch; gap: 0.6rem; margin: 0; padding: 0.85rem 0.25rem 0.25rem; border-top: 1px solid var(--uz-border); }
    .uz-billing-label { padding-inline: 0.25rem; }
    .uz-segment { display: flex; }
    .uz-segment-btn { flex: 1 1 0; padding: 0 0.5rem; }
    .uz-plans-console.is-cycles-only { width: auto; padding-inline-start: 0.5rem; }
    .uz-plans-console.is-cycles-only .uz-billing { padding-top: 0.25rem; border-top: 0; }
}
@media (max-width: 575.98px) {
    .uz-tab { gap: 0.6rem; min-height: 56px; padding-inline-end: 0.85rem; }
    .uz-tab-ico { width: 38px; height: 38px; font-size: 1.05rem; }
    .uz-segment-btn { flex-direction: column; gap: 0.3rem; height: 54px; font-size: 0.8125rem; }
    .uz-segment-save { padding: 0.18rem 0.35rem; font-size: 0.625rem; }
}

/* Izgara kartlar. Bölümler sabit satırlarda: head, price, cta, body (içerik), stack (altyapı logoları), foot (dönem tablosu).
   subgrid destekleyen tarayıcılarda yan yana kartların aynı bölümleri aynı hizada başlar. */
.uz-plan-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 250px), 1fr)); gap: 1.25rem; }
.uz-plan-cell { display: flex; }
.uz-plan {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    padding: 1.75rem;
    border: 1px solid var(--uz-border);
    border-radius: var(--uz-r-xl);
    background: var(--uz-surface);
    box-shadow: var(--uz-shadow-sm);
    transition: transform 0.25s var(--uz-ease), box-shadow 0.25s var(--uz-ease), border-color 0.25s var(--uz-ease);
}
.uz-plan:hover { border-color: var(--uz-border-strong); box-shadow: var(--uz-shadow-lg); transform: translateY(-4px); }
@supports (grid-template-rows: subgrid) {
    .uz-plan-cell,
    .uz-plan { display: grid; grid-row: span 6; grid-template-rows: subgrid; row-gap: 0; }
    .uz-plan-head { grid-row: 1; }
    .uz-plan-price { grid-row: 2; }
    .uz-plan-cta { grid-row: 3; }
    .uz-plan-body { grid-row: 4; }
    .uz-plan-stack { grid-row: 5; }
    .uz-plan-cycles { grid-row: 6; }
}

.uz-plan-head { padding-bottom: 1.35rem; }
.uz-plan-name { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5rem 0.75rem; margin-bottom: 0.6rem; }
/* Kategori ikonu; sunucu paketlerinde işlemci markası (cpu_logo) */
.uz-plan-ico {
    display: grid;
    place-items: center;
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    overflow: hidden;
    border: 1px solid var(--uz-primary-line);
    border-radius: 11px;
    background: var(--uz-primary-soft);
    color: var(--uz-primary-text);
    font-size: 1.1rem;
}
.uz-plan-ico.is-brand { border: 0; background: transparent; }
.uz-plan-ico img { display: block; width: 100%; height: 100%; object-fit: cover; }
.uz-plan-title { margin: 0; font-size: 1.1875rem; font-weight: 700; letter-spacing: -0.02em; }
.uz-plan-tagline { margin: 0; font-size: 0.9rem; line-height: 1.5; color: var(--uz-muted); }
.uz-plan-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.3rem 0.65rem;
    margin-inline-start: auto;
    border: 1px solid rgba(95, 211, 106, 0.3);
    border-radius: 999px;
    background: rgba(95, 211, 106, 0.12);
    color: #7ee08b;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1.2;
    white-space: nowrap;
}

.uz-plan-price { padding-block: 1.35rem 1.5rem; border-top: 1px solid var(--uz-border); }
.uz-plan-save { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5rem; min-height: 1.5rem; margin: 0 0 0.5rem; }
.uz-plan-was { font-size: 0.9rem; color: var(--uz-muted); }
.uz-plan-savings { display: inline-flex; align-items: center; padding: 0.18rem 0.55rem; border-radius: 999px; background: var(--uz-accent-soft); color: var(--uz-accent-text); font-size: 0.75rem; font-weight: 700; }
.uz-plan-now { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0.35rem; margin: 0; }
.uz-plan-amount { font-size: clamp(2.25rem, 1.8rem + 1.2vw, 2.875rem); font-weight: 800; letter-spacing: -0.04em; line-height: 1; color: var(--uz-heading); }
.uz-plan-suffix,
.uz-plan-onetime { font-size: 0.9375rem; font-weight: 600; color: var(--uz-muted); }
/* Boşken de satır yüksekliğini korur: dönem değişince buton ve liste zıplamaz */
.uz-plan-billed { min-height: 1.4em; margin: 0.7rem 0 0; font-size: 0.8125rem; font-weight: 500; line-height: 1.4; color: var(--uz-muted); }

.uz-plan-cta { display: flex; flex-direction: column; gap: 0.5rem; padding-bottom: 1.6rem; }
.uz-plan-cta .uz-btn { --uz-btn-h: 48px; border-radius: 12px; }

.uz-plan-body { flex: 1; padding-top: 1.5rem; border-top: 1px solid var(--uz-border); }
.uz-plan-includes { margin: 0 0 1rem; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--uz-muted); }
.uz-plan-features { display: flex; flex-direction: column; gap: 0.8rem; margin: 0; padding: 0; list-style: none; font-size: 0.9375rem; color: var(--uz-text); }
.uz-plan-features li { display: flex; align-items: flex-start; gap: 0.7rem; line-height: 1.45; }
/* Özelliğe göre ikon (hooks.php → feature_icons) */
.uz-plan-features i {
    display: grid;
    place-items: center;
    flex-shrink: 0;
    width: 26px;
    height: 26px;
    margin-top: -0.12rem;
    border-radius: 8px;
    background: var(--uz-primary-soft);
    color: var(--uz-primary-text);
    font-size: 0.85rem;
}

/* Altyapı logoları: zemin her temada beyaz, marka renkleri lacivert kartta da okunur */
.uz-plan-stack { padding-top: 1.5rem; }
.uz-stack { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.5rem; margin: 0; padding: 0; list-style: none; }
.uz-stack li { display: grid; place-items: center; height: 48px; padding: 0.4rem 0.65rem; border: 1px solid var(--uz-border); border-radius: 10px; background: #fff; }
.uz-stack img { display: block; width: auto; height: auto; max-width: 100%; max-height: 28px; }
.uz-stack.is-inline { display: flex; flex-wrap: wrap; gap: 0.4rem; }
.uz-stack.is-inline li { width: 96px; height: 38px; padding: 0.3rem 0.55rem; }
.uz-stack.is-inline img { max-height: 22px; }
[data-bs-theme="dark"] .uz-stack li { border-color: transparent; }

.uz-plan-cycles { margin-top: 1.5rem; padding-top: 1.1rem; border-top: 1px dashed var(--uz-border); font-size: 0.8125rem; }
.uz-plan-cycles summary { display: inline-flex; align-items: center; gap: 0.35rem; font-weight: 600; color: var(--uz-primary-text); list-style: none; cursor: pointer; }
.uz-plan-cycles summary::-webkit-details-marker { display: none; }
.uz-plan-cycles summary i { font-size: 0.7rem; transition: transform 0.2s var(--uz-ease); }
.uz-plan-cycles[open] summary i { transform: rotate(180deg); }
.uz-cycle-table { width: 100%; margin-top: 0.75rem; border-collapse: collapse; color: var(--uz-text); }
.uz-cycle-table th,
.uz-cycle-table td { padding: 0.42rem 0.25rem; border-bottom: 1px dashed var(--uz-border); text-align: end; }
.uz-cycle-table th:first-child { font-weight: 500; text-align: start; }
.uz-cycle-table thead th { font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: var(--uz-muted); }
.uz-cycle-table tr.is-current { font-weight: 700; color: var(--uz-heading); }
.uz-cycle-table tr.is-current th { font-weight: 700; }

.uz-plan.is-soldout .uz-plan-head,
.uz-plan.is-soldout .uz-plan-price,
.uz-plan.is-soldout .uz-plan-body { opacity: 0.6; }

/* Tablet: üç kart tek sırada kalsın (ikili ızgarada üçüncü kart tek başına alta düşüyordu); telefonda alt alta */
@media (min-width: 768px) and (max-width: 991.98px) {
    .uz-plan-grid { grid-template-columns: repeat(auto-fit, minmax(212px, 1fr)); gap: 1rem; }
    .uz-plan { padding: 1.35rem 1.25rem; }
    .uz-plan-badge { margin-inline-start: 0; }
    .uz-plan-amount { font-size: 2rem; }
    .uz-plan-features { font-size: 0.875rem; }
}
@media (max-width: 767.98px) {
    .uz-plan-grid { grid-template-columns: minmax(0, 1fr); }
}
/* Masaüstü: kartlar %85 ölçekte (kullanıcı onaylı; %90 hâlâ büyük bulundu). zoom yazı, boşluk, ikon,
   logo ve köşeleri birlikte küçültür; ızgara genişliği konteynerle hizalı kalır. Tablet/telefon
   ayarları yukarıda ayrı; okunabilirlik için orada küçültülmez. */
@media (min-width: 992px) {
    .uz-plan-grid { zoom: 0.85; }
}

/* Popüler paket: duyuru şeridiyle aynı lacivert, logodaki mavi-yeşil ince çerçeve */
.uz-plan.is-popular {
    border-color: transparent;
    background:
        radial-gradient(520px 260px at 100% 0%, rgba(0, 27, 164, 0.55), transparent 70%),
        radial-gradient(380px 240px at 0% 100%, rgba(23, 174, 235, 0.1), transparent 70%),
        var(--uz-ink);
    box-shadow: 0 40px 72px -36px rgba(14, 24, 38, 0.8);
    color: var(--uz-ink-text);
}
.uz-plan.is-popular::before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 1px;
    border-radius: inherit;
    background: linear-gradient(160deg, rgba(23, 174, 235, 0.75), rgba(23, 174, 235, 0) 38%, rgba(95, 211, 106, 0) 62%, rgba(95, 211, 106, 0.6));
    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    pointer-events: none;
}
.uz-plan.is-popular:hover { border-color: transparent; box-shadow: 0 46px 80px -36px rgba(14, 24, 38, 0.85); }
.uz-plan.is-popular .uz-plan-title,
.uz-plan.is-popular .uz-plan-amount { color: #fff; }
.uz-plan.is-popular .uz-plan-tagline,
.uz-plan.is-popular .uz-plan-suffix,
.uz-plan.is-popular .uz-plan-onetime,
.uz-plan.is-popular .uz-plan-was,
.uz-plan.is-popular .uz-plan-billed,
.uz-plan.is-popular .uz-plan-includes,
.uz-plan.is-popular .uz-cycle-table thead th { color: var(--uz-ink-muted); }
.uz-plan.is-popular .uz-plan-price,
.uz-plan.is-popular .uz-plan-body,
.uz-plan.is-popular .uz-plan-cycles { border-color: var(--uz-ink-line); }
.uz-plan.is-popular .uz-plan-features,
.uz-plan.is-popular .uz-cycle-table { color: var(--uz-ink-text); }
.uz-plan.is-popular .uz-plan-features i { background: rgba(143, 176, 255, 0.12); color: #a9bdff; }
.uz-plan.is-popular .uz-plan-ico:not(.is-brand) { border-color: rgba(255, 255, 255, 0.14); background: rgba(255, 255, 255, 0.08); color: #fff; }
.uz-plan.is-popular .uz-stack li { border-color: transparent; }
.uz-plan.is-popular .uz-plan-cycles summary { color: #a9bdff; }
.uz-plan.is-popular .uz-cycle-table th,
.uz-plan.is-popular .uz-cycle-table td { border-color: var(--uz-ink-line); }
.uz-plan.is-popular .uz-cycle-table tr.is-current { color: #fff; }
.uz-plan.is-popular .uz-plan-savings { background: rgba(95, 211, 106, 0.16); color: #7ee08b; }
.uz-plan.is-popular :focus-visible { outline-color: #8fb0ff; }
[data-bs-theme="dark"] .uz-plan.is-popular { background: radial-gradient(520px 260px at 100% 0%, rgba(0, 27, 164, 0.6), transparent 70%), var(--uz-raised); }

/* Satır düzeni (sunucu / VDS): kimlik, teknik özellik paneli, fiyat, buton; altta dahil olanlar */
.uz-plan-rows { display: flex; flex-direction: column; gap: 0.875rem; }
.uz-row {
    display: grid;
    grid-template-areas: "id specs price cta" "chips chips chips chips";
    grid-template-columns: minmax(140px, 0.9fr) minmax(0, 2.6fr) minmax(9.5rem, auto) 9.5rem;
    align-items: center;
    gap: 1rem 1.75rem;
    padding: 1.25rem;
    padding-inline-start: 1.5rem;
    border: 1px solid var(--uz-border);
    border-radius: var(--uz-r-lg);
    background: var(--uz-surface);
    box-shadow: var(--uz-shadow-sm);
    transition: border-color 0.2s var(--uz-ease), box-shadow 0.2s var(--uz-ease);
}
.uz-row:hover { border-color: var(--uz-border-strong); box-shadow: var(--uz-shadow); }
.uz-row-id { grid-area: id; display: flex; align-items: center; gap: 0.85rem; min-width: 0; }
/* Satırın marka karesi: sunucularda işlemci logosu (cpu_logo), yoksa kategori ikonu */
.uz-row-brand {
    display: grid;
    place-items: center;
    flex-shrink: 0;
    width: 46px;
    height: 46px;
    overflow: hidden;
    border: 1px solid var(--uz-primary-line);
    border-radius: 12px;
    background: var(--uz-primary-soft);
    color: var(--uz-primary-text);
    font-size: 1.2rem;
}
.uz-row-brand.is-brand { border: 0; background: transparent; }
.uz-row-brand img { display: block; width: 100%; height: 100%; object-fit: cover; }
.uz-row-ident { min-width: 0; }
.uz-row-name { display: flex; flex-wrap: wrap; align-items: center; gap: 0.35rem 0.6rem; }
.uz-row-title { margin: 0; font-size: 1.125rem; font-weight: 700; letter-spacing: -0.02em; }
.uz-row-tagline { margin: 0.3rem 0 0; font-size: 0.8125rem; line-height: 1.45; color: var(--uz-muted); }
.uz-row-specs {
    grid-area: specs;
    display: grid;
    grid-auto-columns: minmax(0, 1fr);
    grid-auto-flow: column;
    margin: 0;
    padding: 0.75rem 0;
    border: 1px solid var(--uz-border);
    border-radius: 12px;
    background: var(--uz-soft);
}
.uz-row-spec { display: flex; flex-direction: column; gap: 0.25rem; min-width: 0; padding-inline: 1rem; }
.uz-row-spec + .uz-row-spec { border-inline-start: 1px solid var(--uz-border); }
.uz-row-spec dt { display: flex; align-items: center; gap: 0.35rem; font-size: 0.6875rem; font-weight: 600; letter-spacing: 0.06em; line-height: 1.2; text-transform: uppercase; color: var(--uz-muted); }
.uz-row-spec dt i { font-size: 0.875rem; letter-spacing: 0; color: var(--uz-primary-text); }
.uz-row-spec dd { margin: 0; font-size: 0.9375rem; font-weight: 700; line-height: 1.3; color: var(--uz-heading); }
.uz-row-price { grid-area: price; text-align: end; }
.uz-row-price .uz-plan-save { justify-content: flex-end; min-height: 1.375rem; margin: 0 0 0.25rem; }
.uz-row-price .uz-plan-now { justify-content: flex-end; }
.uz-row-price .uz-plan-amount { font-size: 1.625rem; letter-spacing: -0.03em; }
.uz-row-price .uz-plan-billed { margin-top: 0.4rem; font-size: 0.75rem; }
.uz-row-cta { grid-area: cta; }
.uz-row-cta .uz-btn { --uz-btn-h: 46px; width: 100%; border-radius: 12px; }
.uz-row-foot { grid-area: chips; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 0.75rem 1.5rem; padding-top: 0.9rem; border-top: 1px solid var(--uz-border); }
.uz-row-chips { display: flex; flex-wrap: wrap; gap: 0.5rem 1.5rem; margin: 0; padding: 0; list-style: none; }
.uz-row-chips li { display: inline-flex; align-items: center; gap: 0.45rem; font-size: 0.8125rem; font-weight: 500; color: var(--uz-text); }
.uz-row-chips i { font-size: 0.95rem; color: var(--uz-primary-text); }
.uz-row.is-popular {
    border-color: var(--uz-primary-line);
    background: linear-gradient(90deg, color-mix(in srgb, var(--uz-primary) 5%, var(--uz-surface)), var(--uz-surface) 45%);
    box-shadow: inset 3px 0 0 var(--uz-primary-fill), var(--uz-shadow);
}
[dir="rtl"] .uz-row.is-popular {
    background: linear-gradient(270deg, color-mix(in srgb, var(--uz-primary) 5%, var(--uz-surface)), var(--uz-surface) 45%);
    box-shadow: inset -3px 0 0 var(--uz-primary-fill), var(--uz-shadow);
}
.uz-row.is-popular .uz-row-specs { background: var(--uz-surface); }
.uz-row.is-soldout .uz-row-specs,
.uz-row.is-soldout .uz-row-price,
.uz-row.is-soldout .uz-row-tagline { opacity: 0.6; }
@media (max-width: 1199.98px) {
    .uz-row { grid-template-areas: "id price cta" "specs specs specs" "chips chips chips"; grid-template-columns: minmax(0, 1fr) auto 10rem; }
}
@media (max-width: 767.98px) {
    .uz-row { grid-template-areas: "id price" "specs specs" "chips chips" "cta cta"; grid-template-columns: minmax(0, 1fr) auto; gap: 1rem; padding: 1.25rem; }
    .uz-row-specs { grid-auto-flow: row; grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 0.85rem; }
    .uz-row-spec + .uz-row-spec { border-inline-start: 0; }
    .uz-row-spec:nth-child(even) { border-inline-start: 1px solid var(--uz-border); }
    .uz-row-price .uz-plan-amount { font-size: 1.375rem; }
    .uz-row-chips { gap: 0.45rem 1.1rem; }
}
/* Telefon: fiyat adın altına iner, paket adı ve açıklama tam genişlikte kalır */
@media (max-width: 575.98px) {
    .uz-row { grid-template-areas: "id" "price" "specs" "chips" "cta"; grid-template-columns: minmax(0, 1fr); }
    .uz-row-price { text-align: start; }
    .uz-row-price .uz-plan-save,
    .uz-row-price .uz-plan-now { justify-content: flex-start; }
}

.uz-plans-foot { display: flex; justify-content: center; margin-top: clamp(2rem, 1.5rem + 1vw, 2.75rem); }

/* VDS bilgi alanları ("VDS nedir?" + "VDS kiralama hizmeti"; paket rafı ile danışmanlık kutusu arasında).
   Zig-zag: geniş ekranda görsel (7 pay) / metin (5 pay) yan yana, ikinci alanda yer değiştirir; dar ekranda görsel hep üstte.
   Görsel: 1920×1300 oranı, yuvarlak köşe, ince iç kontur; kırpma gerekirse soldan (sunucular sağda). Metin: h2 (~32px), koyu giriş paragrafı, okunur satır boyu (≤ 40rem ≈ 70 karakter),
   ardından kıl çizgili 2×2 bilgi alanı (ikon yalnız renkli glif; karo yok) ve ikinci alanda tek birincil düğme. */
.uz-vds { display: grid; gap: clamp(4.5rem, 3rem + 5vw, 8rem); margin: clamp(4.5rem, 3rem + 4vw, 7rem) 0 clamp(2rem, 1rem + 3vw, 4rem); text-align: start; }
.uz-vds-item { display: grid; gap: clamp(1.75rem, 1rem + 2vw, 2.5rem); align-items: center; }
.uz-vds-media { position: relative; overflow: hidden; aspect-ratio: 1920 / 1300; border-radius: var(--uz-r-xl); background: var(--uz-soft); box-shadow: var(--uz-shadow); }
.uz-vds-media::after { content: ""; position: absolute; inset: 0; border-radius: inherit; box-shadow: inset 0 0 0 1px rgba(14, 24, 38, 0.08); pointer-events: none; }
[data-bs-theme="dark"] .uz-vds-media::after { box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08); }
.uz-vds-media img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: right center; }
.uz-vds-body { min-width: 0; max-width: 40rem; }
.uz-vds-title { margin: 0 0 2rem; font-size: clamp(1.625rem, 1.3rem + 1vw, 2rem); font-weight: 700; letter-spacing: -0.025em; line-height: 1.2; }
.uz-vds-lead { margin: 0 0 1.8rem; font-size: 1.0625rem; line-height: 1.7; color: var(--uz-heading); }
.uz-vds-lead strong { font-weight: 700; }
.uz-vds-text { margin: 0; font-size: 1rem; line-height: 1.75; color: var(--uz-text); }
.uz-vds-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2.5rem 1.75rem; margin: 3.5rem 0 0; }
.uz-vds-fact { padding-top: 1.25rem; border-top: 1px solid var(--uz-border); }
.uz-vds-fact dt { display: flex; align-items: center; gap: 0.55rem; margin: 0 0 0.6rem; font-size: 0.9375rem; font-weight: 700; line-height: 1.35; color: var(--uz-heading); }
.uz-vds-fact dt i { flex-shrink: 0; font-size: 1.05rem; color: var(--uz-primary-text); }
.uz-vds-fact dd { margin: 0; font-size: 0.875rem; line-height: 1.6; color: var(--uz-text); }
.uz-vds-cta { margin-top: 3.5rem; }
@media (max-width: 575.98px) {
    .uz-vds-facts { grid-template-columns: minmax(0, 1fr); }
    .uz-vds-cta { width: 100%; }
}
@media (min-width: 992px) {
    .uz-vds-item { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(2.5rem, 1rem + 3vw, 4.5rem); }
    .uz-vds-item.is-reverse { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); }
    .uz-vds-item.is-reverse .uz-vds-media { order: 2; }
}

/* Sanal sunucu paketleri (VDS bilgi alanları ile danışmanlık kutusu arası): başlık solda, kendi ödeme dönemi seçimi sağda,
   altında paket rafıyla aynı kartlar, en altta kategori sayfasına bağlantı. Üst boşluk .uz-vds alt boşluğuyla birlikte satır aralığına eşit. */
.uz-vds-plans { margin-top: clamp(2.5rem, 1.5rem + 3vw, 4rem); text-align: start; }
.uz-vds-plans-head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 1.25rem 2rem; margin-bottom: clamp(1.5rem, 1rem + 1.5vw, 2.25rem); }
.uz-vds-plans-title { margin: 0; font-size: clamp(1.625rem, 1.3rem + 1vw, 2rem); font-weight: 700; letter-spacing: -0.025em; line-height: 1.2; }
.uz-vds-plans-head .uz-billing { margin: 0; padding: 0; border-top: 0; }
.uz-vds-plans-foot { display: flex; justify-content: center; margin-top: clamp(1.5rem, 1rem + 1vw, 2rem); }
@media (max-width: 991.98px) {
    .uz-vds-plans-head { flex-direction: column; align-items: stretch; }
}

/* Paket danışmanlığı ("Seçim yapmakta zorlanıyor musunuz?"): sade, kurumsal kart.
   Solda ofis fotoğrafı (alanı tamamen doldurur, odak temsilcinin yüzü ve tableti), ortada başlık ve
   üç adımlı danışmanlık süreci, sağda tek birincil eylem (lacivert düğme) ve telefon.
   Renk yalnız lacivert + nötr gri; marka mavisi yalnız üst etikette ve adım numaralarında. Gradyan çizgi, ikon karosu yok.
   Fotoğraf object-fit: cover ile kırpılır; dar sütunda (≥992) ve geniş şeritte (telefon/tablet) yüz ve tablet görünür kalır.
   Yerleşim: telefon/tablet alt alta (portre üstte şerit) → lg iki sütun (eylemler metnin altında) → xl üç sütun. */
.uz-help {
    --uz-help-pad: clamp(1.5rem, 1.1rem + 1.4vw, 2.5rem);
    display: grid;
    grid-template-areas: "media" "body" "actions";
    overflow: hidden;
    margin-top: clamp(2.5rem, 2rem + 1.5vw, 3.5rem);
    border: 1px solid var(--uz-border);
    border-radius: var(--uz-r-xl);
    background: var(--uz-surface);
    box-shadow: var(--uz-shadow-sm);
}

.uz-help-media {
    grid-area: media;
    position: relative;
    overflow: hidden;
    height: clamp(12.5rem, 8rem + 16vw, 16rem);
    background: var(--uz-soft);
}
.uz-help-photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 30% 34%; }

.uz-help-body { grid-area: body; min-width: 0; padding: var(--uz-help-pad) var(--uz-help-pad) 0; overflow-wrap: break-word; }
.uz-help-eyebrow { margin: 0 0 0.5rem; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--uz-primary-text); }
.uz-help-title { margin: 0 0 0.6rem; font-size: clamp(1.375rem, 1.15rem + 0.75vw, 1.75rem); font-weight: 700; letter-spacing: -0.025em; line-height: 1.2; text-wrap: balance; }
.uz-help-text { max-width: 56ch; margin: 0; font-size: 1rem; line-height: 1.6; color: var(--uz-text); text-wrap: pretty; }

/* Süreç: numara + etiket, üstte ince çizgi; telefonda alt alta liste */
.uz-help-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin: 1.5rem 0 0; padding: 0; list-style: none; counter-reset: uz-help-step; }
.uz-help-steps li { padding-top: 0.75rem; border-top: 1px solid var(--uz-border-strong); font-size: 0.875rem; font-weight: 600; line-height: 1.35; color: var(--uz-heading); counter-increment: uz-help-step; }
.uz-help-steps li::before { content: counter(uz-help-step, decimal-leading-zero); display: block; margin-bottom: 0.3rem; font-size: 0.75rem; font-weight: 700; font-variant-numeric: tabular-nums; letter-spacing: 0.04em; color: var(--uz-primary-text); }

.uz-help-actions { grid-area: actions; display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 2rem; padding: 1.5rem var(--uz-help-pad) var(--uz-help-pad); }
.uz-help-cta i { font-size: 1.1em; }
.uz-help-phone { display: flex; align-items: center; gap: 0.75rem; color: var(--uz-heading); text-decoration: none; }
.uz-help-phone:hover { color: var(--uz-heading); }
.uz-help-phone-ico {
    display: grid;
    place-items: center;
    flex-shrink: 0;
    width: 44px;
    height: 44px;
    border: 1px solid var(--uz-border-strong);
    border-radius: 50%;
    color: var(--uz-heading);
    font-size: 1.05rem;
    transition: border-color 0.18s var(--uz-ease);
}
.uz-help-phone:hover .uz-help-phone-ico { border-color: var(--uz-heading); }
.uz-help-phone-label { display: block; font-size: 0.75rem; font-weight: 600; color: var(--uz-muted); }
.uz-help-phone-num { display: block; font-size: 1.125rem; font-weight: 700; letter-spacing: -0.01em; white-space: nowrap; }

@media (min-width: 992px) {
    .uz-help { grid-template-columns: 15rem minmax(0, 1fr); grid-template-areas: "media body" "media actions"; }
    .uz-help-media { height: auto; }
}
@media (min-width: 1200px) {
    .uz-help { grid-template-columns: 16rem minmax(0, 1fr) 21rem; grid-template-areas: "media body actions"; }
    .uz-help-body { align-self: center; padding: var(--uz-help-pad); }
    .uz-help-actions { flex-direction: column; flex-wrap: nowrap; align-items: stretch; justify-content: center; gap: 1.25rem; padding: var(--uz-help-pad) 2rem; border-inline-start: 1px solid var(--uz-border); }
}
@media (max-width: 575.98px) {
    .uz-help-steps { grid-template-columns: minmax(0, 1fr); gap: 0; }
    .uz-help-steps li { display: flex; align-items: baseline; gap: 0.75rem; padding: 0.65rem 0; }
    .uz-help-steps li:last-child { padding-bottom: 0; }
    .uz-help-steps li::before { margin: 0; }
    .uz-help-cta { width: 100%; }
}

/* ---------- Neden biz ----------
   Merkez düzeni: ortada logolu çekirdek (hizmet uyduları, kuyruklu ışık, çift dalga), iki yanda özellikler.
   Geniş ekranda her özellik çekirdeğe ince bir bağlantı çizgisiyle bağlanır; çizgi boyunca merkeze sinyal akar. Desen yok; renk lacivert + soğuk gri,
   marka mavisi/yeşili yalnız halka ve noktalarda. Hareket azaltma tercihinde tüm animasyonlar durur. */
.uz-why { position: relative; isolation: isolate; overflow: hidden; }
.uz-why-head { margin-bottom: clamp(2.5rem, 1.75rem + 2.5vw, 4rem); }

.uz-why-hub { display: grid; gap: 2.5rem; align-items: center; }
.uz-why-col { display: grid; gap: 1.75rem; margin: 0; padding: 0; list-style: none; }
.uz-why-node { position: relative; display: flex; align-items: flex-start; gap: 1rem; }
.uz-why-ico {
    display: grid;
    place-items: center;
    flex-shrink: 0;
    width: 46px;
    height: 46px;
    border: 1px solid var(--uz-border);
    border-radius: 13px;
    background: var(--uz-surface);
    color: var(--uz-heading);
    font-size: 1.15rem;
    box-shadow: var(--uz-shadow-sm);
    transition: background-color 0.2s var(--uz-ease), color 0.2s var(--uz-ease), border-color 0.2s var(--uz-ease);
}
.uz-why-node:hover .uz-why-ico { border-color: transparent; background: var(--uz-ink); color: #fff; }
[data-bs-theme="dark"] .uz-why-node:hover .uz-why-ico { background: var(--uz-primary-fill); }
.uz-why-copy { min-width: 0; padding-top: 0.15rem; }
.uz-why-title { margin: 0 0 0.35rem; font-size: 1rem; font-weight: 700; letter-spacing: -0.01em; }
.uz-why-title a { color: inherit; text-decoration: none; }
.uz-why-title a:hover { color: var(--uz-primary-text); }
.uz-why-desc { margin: 0; font-size: 0.875rem; line-height: 1.6; color: var(--uz-text); }

/* Çekirdek — katmanlar dıştan içe: nefes alan ışık, hizmet uydularını taşıyan yörünge (60 sn), kesikli iz + kuyruklu ışık
   (9 sn), içte hafif tonlu hale, logodan yayılan iki dalga, beyaz logo diski. Uydular dairesel olduğundan yörüngeyle
   dönmeleri görünmez; ikonları ters dönerek dik kalır. Bölüm ekrana gelmeden (reveal) animasyonlar duraklar. */
.uz-core { --uz-sat: 42px; position: relative; justify-self: center; width: min(19rem, 78vw); aspect-ratio: 1; }
.uz-core > span { position: absolute; border-radius: 50%; }
.uz-core-glow {
    inset: -14%;
    background: radial-gradient(closest-side, color-mix(in srgb, var(--uz-primary) 13%, transparent), color-mix(in srgb, var(--uz-sky) 6%, transparent) 55%, transparent);
    animation: uz-core-breathe 7s ease-in-out infinite alternate;
}
.uz-core-orbit { inset: 6%; border: 1px solid var(--uz-border); animation: uz-core-spin 60s linear infinite; }
.uz-core-sat {
    position: absolute;
    display: grid;
    place-items: center;
    width: var(--uz-sat);
    height: var(--uz-sat);
    margin: calc(var(--uz-sat) / -2) 0 0 calc(var(--uz-sat) / -2);
    border: 1px solid var(--uz-border);
    border-radius: 50%;
    background: var(--uz-surface);
    color: var(--uz-primary-text);
    font-size: 1rem;
    box-shadow: 0 1px 2px rgba(14, 24, 38, 0.06), 0 10px 22px -12px rgba(14, 24, 38, 0.35);
}
.uz-core-sat i { display: block; line-height: 1; animation: uz-core-spin 60s linear infinite reverse; }
.uz-core-sat.is-n { top: 0; left: 50%; }
.uz-core-sat.is-e { top: 50%; left: 100%; }
.uz-core-sat.is-s { top: 100%; left: 50%; }
.uz-core-sat.is-w { top: 50%; left: 0; }
.uz-core-track { inset: 17%; border: 1px dashed color-mix(in srgb, var(--uz-primary) 24%, transparent); }
/* Kuyruklu ışık: konik geçiş 2px'lik halkaya maskelenir; parlak baş saat yönünde önde gider */
.uz-core-comet {
    inset: 17%;
    background: conic-gradient(from 0deg, transparent 0deg 200deg, color-mix(in srgb, var(--uz-primary) 55%, transparent) 330deg, var(--uz-sky) 360deg);
    -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 2px), #000 calc(100% - 2px));
    mask: radial-gradient(farthest-side, transparent calc(100% - 2px), #000 calc(100% - 2px));
    animation: uz-core-spin 9s linear infinite;
}
.uz-core-halo { inset: 21%; border: 1px solid var(--uz-primary-line); background: color-mix(in srgb, var(--uz-primary) 3%, var(--uz-surface)); }
.uz-core-ripple { inset: 25%; border: 1px solid color-mix(in srgb, var(--uz-primary) 42%, transparent); animation: uz-core-ripple 4.2s var(--uz-ease) infinite; }
.uz-core-ripple.is-late { animation-delay: 2.1s; }
.uz-core-disc {
    inset: 25%;
    display: grid;
    place-items: center;
    border: 1px solid var(--uz-border);
    background: radial-gradient(120% 120% at 50% 0%, var(--uz-surface) 55%, color-mix(in srgb, var(--uz-primary) 4%, var(--uz-surface)));
    box-shadow: 0 1px 2px rgba(14, 24, 38, 0.06), 0 24px 48px -20px rgba(14, 24, 38, 0.35);
}
.uz-core-disc img { width: 80%; height: auto; }
[data-bs-theme="dark"] .uz-core-sat { background: var(--uz-raised); }
@keyframes uz-core-spin { to { transform: rotate(360deg); } }
@keyframes uz-core-breathe {
    from { opacity: 0.7; transform: scale(0.96); }
    to { opacity: 1; transform: scale(1.04); }
}
@keyframes uz-core-ripple {
    0% { opacity: 0.75; transform: scale(1); }
    85%, 100% { opacity: 0; transform: scale(1.5); }
}
.uz-reveal-on .uz-why:not(.is-in) .uz-core *,
.uz-reveal-on .uz-why:not(.is-in) .uz-why-node::before { animation-play-state: paused; }
@media (prefers-reduced-motion: reduce) {
    .uz-core *, .uz-why-node::before { animation: none !important; }
    .uz-core-ripple { display: none; }
}
@media (max-width: 991.98px) {
    .uz-core { --uz-sat: 36px; }
    .uz-core-sat { font-size: 0.875rem; }
}

.uz-why-foot { display: flex; justify-content: center; margin-top: clamp(2.5rem, 2rem + 1.5vw, 3.5rem); }

/* Tablet/telefon: çekirdek üstte, özellikler altında */
@media (max-width: 991.98px) {
    .uz-core { order: -1; width: min(16rem, 72vw); }
    .uz-why-col { gap: 1.5rem; }
}
@media (min-width: 576px) and (max-width: 991.98px) {
    .uz-why-hub { grid-template-columns: 1fr 1fr; column-gap: 2.5rem; }
    .uz-core { grid-column: 1 / -1; }
}

/* Geniş ekran: sol sütun metni çekirdeğe doğru hizalanır; her özellik çekirdeğe ince çizgi + noktayla bağlanır */
@media (min-width: 992px) {
    .uz-why-hub { grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); gap: 3.5rem; }
    .uz-core { width: clamp(17rem, 12rem + 8vw, 21rem); }
    .uz-why-col { gap: 2.25rem; }
    .uz-why-col.is-start .uz-why-node { flex-direction: row-reverse; text-align: end; }
    .uz-why-node::after {
        content: "";
        position: absolute;
        top: 22px;
        width: 2.75rem;
        height: 1px;
        pointer-events: none;
    }
    .uz-why-col.is-start .uz-why-node::after { inset-inline-end: -3.25rem; background: linear-gradient(90deg, var(--uz-border-strong), transparent); }
    .uz-why-col.is-end .uz-why-node::after { inset-inline-start: -3.25rem; background: linear-gradient(270deg, var(--uz-border-strong), transparent); }
    [dir="rtl"] .uz-why-col.is-start .uz-why-node::after { background: linear-gradient(270deg, var(--uz-border-strong), transparent); }
    [dir="rtl"] .uz-why-col.is-end .uz-why-node::after { background: linear-gradient(90deg, var(--uz-border-strong), transparent); }
    .uz-why-node:hover::after { background: var(--uz-primary-line); }
    /* Sinyal: çizginin özellik tarafından çekirdeğe akan küçük nokta; özellikler sırayla, sağ sütun yarım adım geride */
    .uz-why-node::before {
        content: "";
        position: absolute;
        top: 20px;
        width: 5px;
        height: 5px;
        border-radius: 50%;
        background: var(--uz-sky);
        box-shadow: 0 0 0 3px color-mix(in srgb, var(--uz-sky) 22%, transparent);
        opacity: 0;
        pointer-events: none;
        animation: uz-why-signal 3.6s var(--uz-ease) infinite;
    }
    .uz-why-col.is-start .uz-why-node::before { --uz-sig-dx: 2.4rem; inset-inline-end: -0.85rem; }
    .uz-why-col.is-end .uz-why-node::before { --uz-sig-dx: -2.4rem; inset-inline-start: -0.85rem; animation-delay: 0.6s; }
    [dir="rtl"] .uz-why-col.is-start .uz-why-node::before { --uz-sig-dx: -2.4rem; }
    [dir="rtl"] .uz-why-col.is-end .uz-why-node::before { --uz-sig-dx: 2.4rem; }
    .uz-why-col.is-start .uz-why-node:nth-child(2)::before { animation-delay: 1.2s; }
    .uz-why-col.is-start .uz-why-node:nth-child(3)::before { animation-delay: 2.4s; }
    .uz-why-col.is-end .uz-why-node:nth-child(2)::before { animation-delay: 1.8s; }
    .uz-why-col.is-end .uz-why-node:nth-child(3)::before { animation-delay: 3s; }
    .uz-why-node:hover::before { background: var(--uz-primary-fill); }
}

@keyframes uz-why-signal {
    0% { opacity: 0; transform: translateX(0); }
    20%, 75% { opacity: 1; }
    100% { opacity: 0; transform: translateX(var(--uz-sig-dx, 2.4rem)); }
}

/* ---------- Rakamlar ---------- */
.uz-stats {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: clamp(3.5rem, 2.5rem + 3vw, 5rem) 0;
    background: var(--uz-ink);
    color: var(--uz-ink-text);
}
.uz-stats::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        radial-gradient(760px 320px at 88% -12%, rgba(0, 27, 164, 0.5), transparent 70%),
        radial-gradient(560px 260px at 4% 112%, rgba(23, 174, 235, 0.13), transparent 70%);
}
.uz-stats.has-band-bg::before { display: none; }
.uz-stats-heading { margin: 0 0 clamp(2rem, 1.5rem + 1.5vw, 3rem); font-size: clamp(1.5rem, 1.25rem + 0.9vw, 2rem); font-weight: 700; letter-spacing: -0.025em; line-height: 1.2; color: #fff; }
.uz-stats-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2.5rem 1.5rem; margin: 0; }
/* Her rakam: üstte kıl çizgi, çizginin başında kısa kalın vurgu; etiket üstte, rakam altta iri */
.uz-stat { position: relative; display: flex; flex-direction: column; gap: 1.1rem; padding-top: 1.5rem; border-top: 1px solid var(--uz-ink-line); }
.uz-stat::before { content: ""; position: absolute; top: -1px; inset-inline-start: 0; width: 2.75rem; height: 2px; border-radius: 2px; background: var(--uz-sky); }
.uz-stat-label { display: flex; align-items: center; gap: 0.7rem; font-size: 0.9375rem; font-weight: 600; line-height: 1.35; color: var(--uz-ink-text); }
.uz-stat-ico { display: grid; flex-shrink: 0; place-items: center; width: 34px; height: 34px; border: 1px solid var(--uz-ink-line); border-radius: 50%; color: var(--uz-sky); font-size: 0.9375rem; }
.uz-stat-value {
    margin: 0;
    font-size: clamp(2.5rem, 1.9rem + 2.4vw, 4rem);
    font-weight: 700;
    letter-spacing: -0.045em;
    line-height: 1;
    color: #fff;
    background: linear-gradient(180deg, #fff 35%, #a9bfd9 135%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
@media (forced-colors: active) {
    .uz-stat-value { background: none; -webkit-text-fill-color: currentColor; }
}
@media (min-width: 992px) {
    /* Rakam sayısı panelden gelir (3, 4, 5…): tek satırda eşit sütunlara bölünür */
    .uz-stats-grid { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: 2.5rem 3rem; }
}

/* Operatör arka planı (görsel/video) olan bantlar */
.uz-band-bg { position: absolute; inset: 0; z-index: -1; }
.uz-band-bg-media { width: 100%; height: 100%; object-fit: cover; }
.uz-band-bg-scrim { position: absolute; inset: 0; background: rgba(14, 24, 38, 0.82); }
.uz-plans.has-band-bg .uz-band-bg-scrim { background: color-mix(in srgb, var(--uz-soft) 90%, transparent); }

/* ---------- Hakkımızda ---------- */
.uz-about-panel {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    display: grid;
    align-items: center;
    gap: 2.5rem;
    padding: clamp(2rem, 1.25rem + 3.5vw, 4rem);
    border: 1px solid var(--uz-border);
    border-radius: var(--uz-r-2xl);
    background:
        radial-gradient(520px 300px at 100% 0%, color-mix(in srgb, var(--uz-primary) 8%, transparent), transparent 70%),
        var(--uz-soft);
}
.uz-about { padding-top: 0; }
.uz-about-head .uz-h2 { margin-bottom: 0; }
.uz-about-lead { max-width: 56ch; margin: 0 0 1.75rem; font-size: 1.0625rem; line-height: 1.7; color: var(--uz-text); }
.uz-about-media { margin: 0; overflow: hidden; border-radius: 18px; aspect-ratio: 4 / 3; box-shadow: var(--uz-shadow-lg); }
.uz-about-media img { width: 100%; height: 100%; object-fit: cover; }
@media (min-width: 992px) {
    .uz-about-panel { grid-template-columns: 1fr 1fr; align-items: end; column-gap: 4rem; }
    .uz-about-panel.has-media { grid-template-areas: "head media" "body media"; grid-template-columns: 1.05fr 0.95fr; align-items: start; row-gap: 1.5rem; }
    .uz-about-panel.has-media .uz-about-head { grid-area: head; align-self: end; }
    .uz-about-panel.has-media .uz-about-body { grid-area: body; }
    .uz-about-panel.has-media .uz-about-media { grid-area: media; align-self: center; }
}

/* ---------- Yazılımlar ---------- */
.uz-sw-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 1fr)); gap: 1.25rem; margin: 0; padding: 0; list-style: none; }
.uz-sw {
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
    border: 1px solid var(--uz-border);
    border-radius: 18px;
    background: var(--uz-surface);
    transition: transform 0.25s var(--uz-ease), box-shadow 0.25s var(--uz-ease);
}
.uz-sw:hover { box-shadow: var(--uz-shadow-lg); transform: translateY(-3px); }
.uz-sw-thumb { position: relative; display: grid; place-items: center; aspect-ratio: 16 / 9; background: var(--uz-soft); font-size: 2rem; color: var(--uz-muted); }
.uz-sw-thumb img { width: 100%; height: 100%; object-fit: cover; }
.uz-sw-thumb .uz-pill { position: absolute; top: 0.75rem; inset-inline-start: 0.75rem; }
.uz-sw-body { display: flex; flex: 1; flex-direction: column; gap: 0.4rem; padding: 1.1rem 1.25rem 1.25rem; }
.uz-sw-title { margin: 0; font-size: 1.0625rem; }
.uz-sw-title a { color: var(--uz-heading); text-decoration: none; }
.uz-stretched::after { content: ""; position: absolute; inset: 0; }
.uz-sw-tags { margin: 0; font-size: 0.8125rem; color: var(--uz-muted); }
.uz-sw-meta { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin: auto 0 0; padding-top: 0.8rem; border-top: 1px solid var(--uz-border); font-size: 0.8125rem; color: var(--uz-muted); }
.uz-sw-meta i { margin-inline-end: 0.35rem; }
.uz-sw-price { font-size: 1rem; font-weight: 800; color: var(--uz-heading); }
.uz-sw-price small { font-size: 0.75rem; font-weight: 500; color: var(--uz-muted); }

/* ---------- Müşteri yorumları ----------
   Baş (başlık + avatar yığını ve ortalama puan) → platform cetveli (Google · Trustpilot · HostAdvice) → kaydırılabilir yorum
   kartları → alt satır (değerlendirme bağlantısı + oklar). Renk, platformların kendi marka renklerinden (hücre üst çizgisi ve
   yıldızlar) ve avatar tonlarından gelir; geçişli zemin, desen ya da parlama yok. */
.uz-quotes { background: var(--uz-soft); border-block: 1px solid var(--uz-border); }
.uz-quotes-head { align-items: center; }

/* 5 üzerinden yıldız: --score kadar dolu, gerisi boş renk. Boyut ve renkler değişkenle ayarlanır (platform hücreleri kendi rengini verir). */
.uz-stars {
    --score: 5;
    --uz-star: #f5b301;
    --uz-star-off: var(--uz-border-strong);
    --uz-star-size: 1.05rem;
    --uz-star-tile: calc(var(--uz-star-size) * 1.16);
    display: block;
    flex-shrink: 0;
    width: calc(var(--uz-star-tile) * 5);
    height: var(--uz-star-size);
    background: linear-gradient(90deg, var(--uz-star) calc(var(--score) / 5 * 100%), var(--uz-star-off) 0);
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10 1.5l2.6 5.5 6 .7-4.5 4.1 1.2 5.9L10 14.8l-5.3 2.9 1.2-5.9L1.4 7.7l6-.7z'/%3E%3C/svg%3E") 0 0 / var(--uz-star-tile) var(--uz-star-size) repeat-x;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10 1.5l2.6 5.5 6 .7-4.5 4.1 1.2 5.9L10 14.8l-5.3 2.9 1.2-5.9L1.4 7.7l6-.7z'/%3E%3C/svg%3E") 0 0 / var(--uz-star-tile) var(--uz-star-size) repeat-x;
}
[dir="rtl"] .uz-stars { transform: scaleX(-1); }

/* Avatarlar: fotoğraf yoksa baş harfler, altı tonlu döngüde (marka mavisi, gök, yeşil, kehribar, mor, gül) açık zemin + koyu harf */
.uz-quote-avatar {
    --uz-tone: var(--uz-primary);
    display: grid;
    place-items: center;
    flex-shrink: 0;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background: color-mix(in srgb, var(--uz-tone) 12%, var(--uz-surface));
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--uz-tone) 22%, transparent);
    color: color-mix(in srgb, var(--uz-tone) 84%, #000);
    font-size: 0.875rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    object-fit: cover;
}
/* Fotoğraflı avatar: kart zemininden 2px boşlukla ayrılan ince halka */
img.uz-quote-avatar { background: var(--uz-soft); box-shadow: 0 0 0 2px var(--uz-surface), 0 0 0 3px var(--uz-border); }
.uz-quote-avatar.is-tone-1 { --uz-tone: #0b88bd; }
.uz-quote-avatar.is-tone-2 { --uz-tone: var(--uz-accent); }
.uz-quote-avatar.is-tone-3 { --uz-tone: #c2610c; }
.uz-quote-avatar.is-tone-4 { --uz-tone: #6d3ad6; }
.uz-quote-avatar.is-tone-5 { --uz-tone: #c0264f; }
[data-bs-theme="dark"] .uz-quote-avatar { background: color-mix(in srgb, var(--uz-tone) 28%, var(--uz-surface)); color: color-mix(in srgb, var(--uz-tone) 30%, #fff); }
[data-bs-theme="dark"] .uz-quote-avatar.is-tone-0 { --uz-tone: #5b7cff; }
[data-bs-theme="dark"] img.uz-quote-avatar { background: var(--uz-raised); }
[data-bs-theme="dark"] .uz-quote img.uz-quote-avatar { box-shadow: 0 0 0 2px var(--uz-raised), 0 0 0 3px var(--uz-border-strong); }

/* Baş sağı: avatar yığını | ortalama puan */
.uz-quotes-sum {
    display: flex;
    align-items: center;
    gap: 1.1rem;
    padding: 0.8rem 1.35rem 0.8rem 0.85rem;
    border: 1px solid var(--uz-border);
    border-radius: 18px;
    background: var(--uz-surface);
    box-shadow: var(--uz-shadow-sm);
}
.uz-quotes-faces { display: flex; margin: 0; padding: 0; list-style: none; }
.uz-quotes-faces li + li { margin-inline-start: -10px; }
.uz-quotes-faces .uz-quote-avatar { width: 40px; height: 40px; font-size: 0.75rem; box-shadow: 0 0 0 3px var(--uz-surface), inset 0 0 0 1px color-mix(in srgb, var(--uz-tone) 22%, transparent); }
.uz-quotes-faces img.uz-quote-avatar { box-shadow: 0 0 0 3px var(--uz-surface); }
.uz-quotes-sum-score { display: flex; align-items: center; gap: 0.8rem; padding-inline-start: 1.1rem; border-inline-start: 1px solid var(--uz-border); }
.uz-quotes-sum-num { font-size: 2.125rem; font-weight: 800; letter-spacing: -0.04em; line-height: 1; color: var(--uz-heading); }
.uz-quotes-sum-meta { display: flex; flex-direction: column; gap: 0.35rem; }
.uz-quotes-sum-note { font-size: 0.8125rem; font-weight: 500; line-height: 1.3; color: var(--uz-muted); white-space: nowrap; }
.uz-quotes-sum-label { font-size: 0.9375rem; font-weight: 700; line-height: 1.2; color: var(--uz-heading); white-space: nowrap; }

/* Platform cetveli: zemin çizgi rengindedir, hücreler arasındaki 1px boşluk kılcal çizgi olur (alan adı cetveliyle aynı dil).
   Her hücrenin üstünde markasının renk çizgisi (Google'ınki dört renkli), yıldızlar da marka renginde; Trustpilot kendi kutulu yıldızıyla. */
.uz-rp-list {
    display: flex;
    flex-wrap: wrap;
    gap: 1px;
    margin: 0 0 clamp(1.75rem, 1.5rem + 1vw, 2.5rem);
    padding: 0;
    overflow: hidden;
    border: 1px solid var(--uz-border);
    border-radius: 18px;
    background: var(--uz-border);
    box-shadow: 0 1px 2px rgba(14, 24, 38, 0.05), 0 20px 40px -30px rgba(14, 24, 38, 0.36);
    list-style: none;
}
.uz-rp-list > li { display: flex; flex: 1 1 15rem; }
.uz-rp {
    --uz-rp-brand: var(--uz-primary);
    position: relative;
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: 1rem;
    min-width: 0;
    padding: 1.4rem 1.5rem 1.3rem;
    background: var(--uz-surface);
    color: var(--uz-text);
    text-decoration: none;
    transition: background-color 0.18s var(--uz-ease);
}
.uz-rp::before { content: ""; position: absolute; inset: 0 0 auto; height: 3px; background: var(--uz-rp-brand); }
.uz-rp.is-google { --uz-rp-brand: linear-gradient(90deg, #4285f4 0 25%, #ea4335 0 50%, #fbbc05 0 75%, #34a853 0); }
.uz-rp.is-google .uz-stars { --uz-star: #fbbc04; }
.uz-rp.is-trustpilot { --uz-rp-brand: #00b67a; }
.uz-rp.is-trustpilot .uz-stars {
    --uz-star: #00b67a;
    --uz-star-off: #dcdce6;
    --uz-star-tile: calc(var(--uz-star-size) * 1.12);
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill-rule='evenodd' d='M0 0h20v20H0zM10 5.1l1.6 3.3 3.6.5-2.7 2.4.7 3.6-3.2-1.8-3.2 1.8.7-3.6-2.7-2.4 3.6-.5z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill-rule='evenodd' d='M0 0h20v20H0zM10 5.1l1.6 3.3 3.6.5-2.7 2.4.7 3.6-3.2-1.8-3.2 1.8.7-3.6-2.7-2.4 3.6-.5z'/%3E%3C/svg%3E");
}
.uz-rp.is-hostadvice { --uz-rp-brand: #fb781d; }
.uz-rp.is-hostadvice .uz-stars { --uz-star: #fb781d; }
a.uz-rp:hover { background: color-mix(in srgb, var(--uz-soft) 65%, var(--uz-surface)); color: var(--uz-text); }
/* Cetvel köşeleri overflow:hidden ile yuvarlanır; odak çizgisi kesilmesin diye hücrenin içine çizilir */
.uz-rp:focus-visible { outline-offset: -3px; }
.uz-rp-head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; min-height: 30px; }
.uz-rp-go { font-size: 0.9375rem; color: var(--uz-muted); transition: transform 0.2s var(--uz-ease), color 0.2s var(--uz-ease); }
a.uz-rp:hover .uz-rp-go { color: var(--uz-heading); transform: translate(2px, -2px); }
[dir="rtl"] .uz-rp-go { transform: scaleX(-1); }
[dir="rtl"] a.uz-rp:hover .uz-rp-go { transform: scaleX(-1) translate(2px, -2px); }
.uz-rp-body { display: flex; flex-direction: column; gap: 0.45rem; }
.uz-rp-rate { display: flex; align-items: center; gap: 0.75rem; }
.uz-rp-rate .uz-stars { --uz-star-size: 1.15rem; }
.uz-rp-score { font-size: 1.75rem; font-weight: 800; letter-spacing: -0.03em; line-height: 1; color: var(--uz-heading); }
.uz-rp-meta { font-size: 0.8125rem; font-weight: 500; color: var(--uz-muted); }
[data-bs-theme="dark"] .uz-rp { background: var(--uz-raised); }
[data-bs-theme="dark"] a.uz-rp:hover { background: var(--uz-soft); }
[data-bs-theme="dark"] .uz-rp.is-trustpilot .uz-stars { --uz-star-off: var(--uz-border-strong); }

/* Platform logoları (components/review-logo.tpl): optik olarak denk boylar; kelime logolarının koyu kısmı başlık rengini alır */
.uz-rlogo { display: block; flex-shrink: 0; color: var(--uz-heading); }
.uz-rlogo.is-google { width: 74px; height: 25px; }
.uz-rlogo.is-trustpilot { width: 98px; height: 24px; }
.uz-rlogo.is-hostadvice { display: flex; align-items: center; gap: 0.35rem; }
.uz-rlogo-fox { display: block; width: 32px; height: auto; }
.uz-rlogo-word { display: block; width: 90px; height: 14px; }

/* Yorum şeridi */
/* Kart genişliği şeride tam bölünür (telefon 1, tablet 2, geniş ekran 3 kart): kenarda yarım kart kalmaz, kayma hep tam bir kart.
   Kaydırma çubuğu gizli; şerit oklarla, dokunmayla ve otomatik dönüşle ilerler. */
.uz-quote-track {
    --uz-q-per: 1;
    --uz-q-gap: 1.25rem;
    display: grid;
    grid-auto-columns: calc((100% - (var(--uz-q-per) - 1) * var(--uz-q-gap)) / var(--uz-q-per));
    grid-auto-flow: column;
    gap: var(--uz-q-gap);
    margin: 0;
    padding: 0.25rem 0 1rem;
    overflow-x: auto;
    list-style: none;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}
.uz-quote-track::-webkit-scrollbar { display: none; }
@media (min-width: 768px) { .uz-quote-track { --uz-q-per: 2; } }
@media (min-width: 1200px) { .uz-quote-track:not(.is-few) { --uz-q-per: 3; } }
.uz-quote-track:focus-visible { outline-offset: 4px; border-radius: 12px; }
.uz-quote { scroll-snap-align: start; }
.uz-quote figure {
    display: flex;
    flex-direction: column;
    gap: 1.1rem;
    height: 100%;
    margin: 0;
    min-height: 21rem;
    padding: 1.85rem 1.85rem 1.5rem;
    border: 1px solid var(--uz-border);
    border-radius: var(--uz-r-xl);
    background: var(--uz-surface);
    box-shadow: var(--uz-shadow-sm);
    transition: border-color 0.2s var(--uz-ease), box-shadow 0.2s var(--uz-ease);
}
.uz-quote figure:hover { border-color: var(--uz-border-strong); box-shadow: var(--uz-shadow); }
.uz-quote-top { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.uz-quote-mark { font-size: 2.75rem; line-height: 0.5; color: var(--uz-primary-text); opacity: 0.16; }
.uz-quote-text { flex: 1; margin: 0; font-size: 1.0625rem; line-height: 1.75; color: var(--uz-heading); text-wrap: pretty; }
.uz-quote-by { display: flex; align-items: center; gap: 0.8rem; padding-top: 1.1rem; border-top: 1px solid var(--uz-border); }
.uz-quote-name { display: block; font-size: 0.9375rem; font-weight: 700; color: var(--uz-heading); }
.uz-quote-company { display: block; font-size: 0.8125rem; color: var(--uz-muted); }
[data-bs-theme="dark"] .uz-quote figure { background: var(--uz-raised); }

.uz-quotes-foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem; margin-top: 1rem; }
.uz-quotes-nav { display: flex; gap: 0.5rem; margin-inline-start: auto; }

/* Telefon: özet tam genişlik; platform hücreleri satır düzenine geçer (logo solda, puan sağda) */
@media (max-width: 575.98px) {
    .uz-quotes-sum { width: 100%; padding-inline-end: 1rem; }
    .uz-quotes-sum-score { flex: 1; min-width: 0; }
    .uz-quotes-sum-note { white-space: normal; }
    .uz-rp { flex-direction: row; align-items: center; justify-content: space-between; gap: 0.75rem; padding: 1.05rem 1.1rem 0.95rem; }
    .uz-rp-go { display: none; }
    .uz-rp-body { align-items: flex-end; gap: 0.3rem; text-align: end; }
    .uz-rp-rate { gap: 0.55rem; }
    .uz-rp-rate .uz-stars { --uz-star-size: 0.95rem; }
    .uz-rp-score { font-size: 1.375rem; }
    .uz-quote figure { padding: 1.35rem 1.3rem 1.2rem; }
}

/* ---------- Duyurular & blog ----------
   Kap yok: iki sütun, her biri başlık + arşiv bağlantısı ve kıl çizgili satırlar. Satır: 3:2 görsel | tarih + başlık + tek satır özet.
   Üstüne gelinen satırda görsel hafifçe yakınlaşır, başlık marka rengine döner. Bölüm diğerlerinden daha kısa tutulur. */
.uz-posts.uz-section { padding-block: clamp(3rem, 2.4rem + 2.4vw, 4.5rem); }
.uz-posts-grid { display: flex; flex-direction: column; gap: 2.75rem; }
.uz-posts-col { flex: 1 1 0; min-width: 0; }
.uz-posts-head { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; margin-bottom: 0.85rem; }
.uz-posts-title { margin: 0; font-size: 1.375rem; font-weight: 700; letter-spacing: -0.02em; }
.uz-posts-all { flex-shrink: 0; font-size: 0.875rem; }
.uz-post-list { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--uz-border); }
.uz-post { display: flex; align-items: center; gap: 1.25rem; padding: 1rem 0; border-bottom: 1px solid var(--uz-border); color: inherit; text-decoration: none; }
.uz-post:focus-visible { outline-offset: 4px; border-radius: var(--uz-r-sm); }
/* Görsel: sabit 3:2 kutu (yüklenen kapak hangi oranda olursa olsun kırpılır), ince iç kontur, yüklenirken yumuşak zemin */
.uz-post-media { position: relative; flex-shrink: 0; width: 7.5rem; aspect-ratio: 3 / 2; overflow: hidden; border-radius: var(--uz-r); background: var(--uz-soft); }
.uz-post-media::after { content: ""; position: absolute; inset: 0; border-radius: inherit; box-shadow: inset 0 0 0 1px rgba(14, 24, 38, 0.08); pointer-events: none; }
[data-bs-theme="dark"] .uz-post-media::after { box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08); }
.uz-post-media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s var(--uz-ease); }
.uz-post-copy { display: flex; flex: 1; flex-direction: column; gap: 0.2rem; min-width: 0; }
.uz-post-date { font-size: 0.75rem; font-weight: 600; letter-spacing: 0.02em; color: var(--uz-muted); }
.uz-post-title { display: -webkit-box; overflow: hidden; font-size: 1rem; font-weight: 600; line-height: 1.4; color: var(--uz-heading); -webkit-line-clamp: 2; -webkit-box-orient: vertical; transition: color 0.15s var(--uz-ease); }
.uz-post-summary { display: -webkit-box; overflow: hidden; font-size: 0.875rem; line-height: 1.5; color: var(--uz-muted); -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.uz-post:hover .uz-post-title { color: var(--uz-primary-text); }
.uz-post:hover .uz-post-media img { transform: scale(1.05); }
@media (max-width: 575.98px) {
    .uz-post { gap: 1rem; }
    .uz-post-media { width: 6rem; }
}
@media (min-width: 768px) {
    .uz-post-summary { -webkit-line-clamp: 1; }
}
@media (min-width: 992px) {
    .uz-posts-grid { flex-direction: row; gap: 4rem; }
}

/* ---------- Platform logoları ---------- */
.uz-logos { padding: 3rem 0 3.5rem; border-top: 1px solid var(--uz-border); }
.uz-logos-title { margin: 0 0 clamp(1.75rem, 1.4rem + 1.2vw, 2.5rem); font-size: clamp(1.375rem, 1.15rem + 0.8vw, 1.75rem); font-weight: 700; letter-spacing: -0.02em; text-align: center; color: var(--uz-heading); }
.uz-logos-row { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2.25rem; margin: 0; padding: 0; list-style: none; }
/* Dar ekran: her öğe logo → ok uçlu çizgi → kart olarak üst üste; telefon dışında iki sütun, çift sıralılar aşağı kaydırılır (serpiştirilmiş görünüm) */
.uz-tech { display: flex; flex-direction: column; align-items: center; }
.uz-tech-logo { display: flex; align-items: center; height: 28px; }
.uz-tech-logo img { display: block; width: auto; height: 28px; }
/* Ok uçlu çizgi: logonun altından kartın üstüne iner. Çizgi ::before (yukarıdan aşağı çizilir), ok ucu ::after (çizgi bitince belirir) */
.uz-tech-link { position: relative; flex-shrink: 0; width: 2px; height: 2.25rem; margin-block: 0.6rem 0; }
.uz-tech-link::before { content: ""; position: absolute; inset: 0; border-radius: 2px; background: var(--uz-border-strong); transform-origin: top center; transition: transform 0.8s var(--uz-ease) calc(0.2s + var(--uz-i, 0) * 0.12s), background-color 0.2s var(--uz-ease); }
.uz-tech-link::after {
    content: "";
    position: absolute;
    top: 100%;
    inset-inline-start: 50%;
    width: 9px;
    height: 9px;
    margin: -10.5px 0 0 -4.5px;
    border-right: 2px solid var(--uz-primary-fill);
    border-bottom: 2px solid var(--uz-primary-fill);
    transform: rotate(45deg);
    transition: opacity 0.4s var(--uz-ease) calc(0.8s + var(--uz-i, 0) * 0.12s), border-color 0.2s var(--uz-ease);
}
[dir="rtl"] .uz-tech-link::after { margin: -10.5px -4.5px 0 0; }
.uz-tech:hover .uz-tech-link::before { background: var(--uz-sky); }
.uz-tech:hover .uz-tech-link::after { border-color: var(--uz-sky); }
/* Kart: ad, ne işe yarar, altta çizgiyle ayrılmış "nerede kullanıyoruz" */
.uz-tech-card {
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
    align-self: stretch;
    padding: 1.35rem 1.4rem 1.45rem;
    border: 1px solid var(--uz-border);
    border-radius: var(--uz-r-xl);
    background: var(--uz-surface);
    box-shadow: var(--uz-shadow-sm);
    transition: border-color 0.2s var(--uz-ease), box-shadow 0.2s var(--uz-ease), opacity 0.6s var(--uz-ease) calc(0.7s + var(--uz-i, 0) * 0.12s), translate 0.6s var(--uz-ease) calc(0.7s + var(--uz-i, 0) * 0.12s);
}
.uz-tech:hover .uz-tech-card { border-color: var(--uz-border-strong); box-shadow: var(--uz-shadow); }
.uz-tech-name { margin: 0; font-size: 1.0625rem; font-weight: 700; letter-spacing: -0.01em; color: var(--uz-heading); }
.uz-tech-what { margin: 0; font-size: 0.9375rem; line-height: 1.65; color: var(--uz-text); }
.uz-tech-use { display: flex; flex-direction: column; gap: 0.25rem; margin: 0.35rem 0 0; padding-top: 0.9rem; border-top: 1px solid var(--uz-border); font-size: 0.875rem; font-weight: 600; line-height: 1.55; color: var(--uz-heading); }
.uz-tech-use-label { display: flex; align-items: center; gap: 0.4rem; font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.08em; line-height: 1.4; text-transform: uppercase; color: var(--uz-muted); }
.uz-tech-use-label i { font-size: 0.8125rem; color: var(--uz-primary-text); }
.uz-tech:nth-child(2) { --uz-i: 1; }
.uz-tech:nth-child(3) { --uz-i: 2; }
.uz-tech:nth-child(4) { --uz-i: 3; }
.uz-tech:nth-child(5) { --uz-i: 4; }
.uz-tech:nth-child(6) { --uz-i: 5; }
.uz-tech:nth-child(7) { --uz-i: 6; }
.uz-tech:nth-child(n+8) { --uz-i: 7; }
/* Bölüm görünür olunca: çizgi iner, ok ucu belirir, kart yerine yükselir (JS yoksa hepsi hazır durur) */
.uz-reveal-on .uz-logos:not(.is-in) .uz-tech-link::before { transform: scaleY(0); }
.uz-reveal-on .uz-logos:not(.is-in) .uz-tech-link::after { opacity: 0; }
.uz-reveal-on .uz-logos:not(.is-in) .uz-tech-card { opacity: 0; translate: 0 10px; }
/* Koyu temada koyu tonlu logolar (AlmaLinux, WordPress…) kaybolmasın diye logo açık, yuvarlak köşeli bir zemine oturur */
[data-bs-theme="dark"] .uz-tech-logo { height: auto; padding: 0.55rem 0.9rem; border-radius: var(--uz-r-sm); background: #e9eef5; }
[data-bs-theme="dark"] .uz-tech-card { background: var(--uz-raised); }
@media (min-width: 768px) {
    .uz-logos-row { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2.25rem 1.5rem; }
    .uz-tech:nth-child(even) { margin-top: 2.5rem; }
}
/* Geniş ekran: logolar üst satırda; çizgiler farklı boylarda inip serpiştirilmiş kartlara ulaşır.
   Izgara 2 × logo sayısı sütun; --c0 logonun, --c1/--c2 kartın sütun çizgileri, --off kartın üst boşluğu (çizginin ek boyu) */
@media (min-width: 1200px) {
    .uz-logos-row { grid-template-columns: repeat(calc(var(--uz-n) * 2), minmax(0, 1fr)); gap: 0; }
    .uz-tech { display: contents; }
    .uz-tech:nth-child(even) { margin-top: 0; }
    .uz-tech-logo { grid-row: 1; grid-column: var(--c0) / span 2; justify-self: center; margin-bottom: 0.6rem; }
    .uz-tech-link { grid-row: 2; grid-column: var(--c0) / span 2; justify-self: center; align-self: start; height: var(--off); margin-top: 0; }
    .uz-tech.is-lo .uz-tech-link { align-self: stretch; height: auto; margin-bottom: calc(var(--off) * -1); }
    .uz-tech-card { grid-column: var(--c1) / var(--c2); align-self: start; margin: var(--off) 0.75rem 0; }
    .uz-tech.is-hi .uz-tech-card { grid-row: 2; }
    .uz-tech.is-lo .uz-tech-card { grid-row: 3; }
}

/* ---------- Özel blok ---------- */
.uz-prose { max-width: 820px; margin-inline: auto; color: var(--uz-text); }
.uz-prose > * + * { margin-top: 1em; }
.uz-prose img { height: auto; border-radius: var(--uz-r); }

/* ---------- Sıkça sorulan sorular ----------
   Kapanış bandının altında; üst boşluğu bandın alt boşluğu verir. Sol: başlık + destek bağlantısı (masaüstünde yapışkan).
   Sağ: kılcal çizgilerle ayrılmış akordeon — sıra numarası, soru, artı/eksi düğmesi. Açık soruda numara marka renginde,
   düğme dolgulu. Destekleyen tarayıcıda yükseklik yumuşak açılır (interpolate-size); diğerlerinde cevap yalnız belirir. */
.uz-faq { padding-top: 0; }
.uz-faq-grid { display: grid; gap: 2rem; }
.uz-faq-intro .uz-h2 { margin-bottom: 0.75rem; }
.uz-faq-more { display: flex; flex-wrap: wrap; align-items: center; gap: 0.35rem 0.75rem; margin: 1.5rem 0 0; font-size: 0.9375rem; color: var(--uz-muted); }
.uz-faq-list { border-top: 1px solid var(--uz-border); }
.uz-faq-item { border-bottom: 1px solid var(--uz-border); }
.uz-faq-q {
    display: grid;
    grid-template-columns: 2.5rem minmax(0, 1fr) 34px;
    align-items: center;
    gap: 0.75rem;
    padding: 1.3rem 0;
    list-style: none;
    cursor: pointer;
}
.uz-faq-q::-webkit-details-marker { display: none; }
.uz-faq-q:focus-visible { outline-offset: 2px; border-radius: 8px; }
.uz-faq-num { font-size: 0.8125rem; font-weight: 700; letter-spacing: 0.04em; color: var(--uz-muted); transition: color 0.2s var(--uz-ease); }
.uz-faq-text { font-size: 1.0625rem; font-weight: 600; letter-spacing: -0.01em; line-height: 1.4; color: var(--uz-heading); transition: color 0.2s var(--uz-ease); }
.uz-faq-q:hover .uz-faq-text { color: var(--uz-primary-text); }
/* Artı → eksi: iki çizgi; açılınca dikey çizgi yatar */
.uz-faq-icon { position: relative; width: 34px; height: 34px; border-radius: 50%; box-shadow: inset 0 0 0 1px var(--uz-border-strong); transition: background-color 0.25s var(--uz-ease), box-shadow 0.25s var(--uz-ease); }
.uz-faq-icon::before,
.uz-faq-icon::after { content: ""; position: absolute; inset: 50% auto auto 50%; width: 12px; height: 1.5px; margin: -0.75px 0 0 -6px; border-radius: 2px; background: var(--uz-heading); transition: transform 0.3s var(--uz-ease), background-color 0.25s var(--uz-ease); }
.uz-faq-icon::after { transform: rotate(90deg); }
.uz-faq-q:hover .uz-faq-icon { box-shadow: inset 0 0 0 1px var(--uz-heading); }
.uz-faq-item[open] .uz-faq-num { color: var(--uz-primary-text); }
.uz-faq-item[open] .uz-faq-icon { background: var(--uz-heading); box-shadow: none; }
.uz-faq-item[open] .uz-faq-icon::before,
.uz-faq-item[open] .uz-faq-icon::after { background: var(--uz-bg); }
.uz-faq-item[open] .uz-faq-icon::after { transform: rotate(0deg); }
.uz-faq-a { padding: 0 calc(34px + 0.75rem) 1.5rem calc(2.5rem + 0.75rem); }
.uz-faq-a p { max-width: 64ch; margin: 0; font-size: 0.9875rem; line-height: 1.75; color: var(--uz-text); }
.uz-faq-item[open] .uz-faq-a { animation: uz-faq-in 0.35s var(--uz-ease); }
@keyframes uz-faq-in { from { opacity: 0; transform: translateY(-4px); } }
@supports (interpolate-size: allow-keywords) {
    .uz-faq-list { interpolate-size: allow-keywords; }
    .uz-faq-item::details-content { block-size: 0; overflow: hidden; transition: block-size 0.35s var(--uz-ease), content-visibility 0.35s allow-discrete; }
    .uz-faq-item[open]::details-content { block-size: auto; }
}
@media (min-width: 992px) {
    .uz-faq-grid { grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.6fr); gap: 4.5rem; align-items: start; }
    .uz-faq-intro { position: sticky; top: calc(var(--uz-header-h) + 2rem); }
}
@media (max-width: 575.98px) {
    .uz-faq-q { grid-template-columns: 1.9rem minmax(0, 1fr) 32px; gap: 0.6rem; padding: 1.1rem 0; }
    .uz-faq-icon { width: 32px; height: 32px; }
    .uz-faq-text { font-size: 1rem; }
    .uz-faq-a { padding: 0 0 1.25rem calc(1.9rem + 0.6rem); }
}
