/* Marka renk paleti — web.mytv.com.tr taslağından alınmıştır */
:root {
    --mytv-primary: #4d61d6;
    --mytv-primary-light: #6878d6;
    --mytv-dark: #242a56;
    --mytv-dark-alt: #393a56;
    --mytv-bg-light: #eff2ff;
    --mytv-accent: #bfd1ff;

    --bs-primary: var(--mytv-primary);
    --bs-primary-rgb: 77, 97, 214;
}

body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    color: var(--mytv-dark);
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Poppins', 'Inter', sans-serif;
    font-weight: 600;
}

.btn-primary {
    background-color: var(--mytv-primary);
    border-color: var(--mytv-primary);
}

.btn-primary:hover,
.btn-primary:focus {
    background-color: var(--mytv-dark);
    border-color: var(--mytv-dark);
}

.btn-outline-primary {
    color: var(--mytv-primary);
    border-color: var(--mytv-primary);
}

.btn-outline-primary:hover {
    background-color: var(--mytv-primary);
    border-color: var(--mytv-primary);
}

.text-primary {
    color: var(--mytv-primary) !important;
}

.bg-light {
    background-color: var(--mytv-bg-light) !important;
}

.bg-primary {
    background-color: var(--mytv-primary) !important;
}

.breadcrumb-nav {
    background-color: var(--mytv-bg-light);
}

.hero-eyebrow {
    color: var(--mytv-primary-light);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    font-weight: 600;
    font-size: 0.9rem;
}

.logo-strip img {
    max-height: 44px;
    width: auto;
}

/* Site navigasyonu — koyu tema, marka logosu üzerinde */
.site-nav {
    background-color: var(--mytv-dark);
}

.site-nav-logo {
    height: 34px;
    width: auto;
}

/* Ana sayfada nav, hero fotoğrafının üzerine şeffaf biner (referans tasarım) */
body.has-overlay-nav .site-nav {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    background: transparent;
    box-shadow: none;
}

body.has-overlay-nav .site-nav .navbar-collapse.show,
body.has-overlay-nav .site-nav .navbar-collapse.collapsing {
    background-color: var(--mytv-dark);
}

/* Sabit oranlı görsel çerçevesi — farklı en-boy oranlı ürün/kullanım
   fotoğraflarının bozulmadan (distortion olmadan) tek boyutta gösterilmesi için */
.thumb-frame {
    aspect-ratio: 1 / 1;
    background-color: var(--mytv-bg-light);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.thumb-frame img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.thumb-frame.thumb-frame-cover img {
    object-fit: cover;
}

.site-nav .site-nav-tagline {
    font-size: 0.7rem;
    color: rgba(255, 255, 255, 0.6);
}

.site-nav .nav-link {
    color: rgba(255, 255, 255, 0.85);
}

.site-nav .nav-link:hover,
.site-nav .nav-link.active {
    color: #ffffff;
}

.btn-pill-light {
    background-color: var(--mytv-accent);
    border-color: var(--mytv-accent);
    color: var(--mytv-dark);
    border-radius: 50rem;
    font-weight: 600;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
}

.btn-pill-light:hover {
    background-color: #ffffff;
    border-color: #ffffff;
    color: var(--mytv-dark);
}

/* Hero — tam genişlik arka plan fotoğraf banner */
.hero-banner {
    position: relative;
    background-size: cover;
    background-position: center;
    padding-top: 10rem;
    padding-bottom: 7rem;
    min-height: 560px;
    display: flex;
    align-items: center;
}

/* Masaüstünde hero'ya referans tasarımdaki (web.mytv.com.tr) gibi daha baskın,
   neredeyse tam ekran bir görünüm kazandırır. */
@media (min-width: 992px) {
    .hero-banner {
        min-height: min(100vh, 980px);
        padding-top: 12rem;
        padding-bottom: 9rem;
    }
}

.hero-banner::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(36, 42, 86, 0.55) 0%, rgba(36, 42, 86, 0.92) 100%);
}

.hero-banner .container {
    position: relative;
    z-index: 1;
    width: 100%;
}

.hero-banner .hero-eyebrow {
    color: var(--mytv-accent);
}

.hero-banner h1,
.hero-banner p {
    color: #ffffff;
}

/* Bölüm başlığı bloğu (ortalı) */
.section-heading {
    max-width: 720px;
}

/* Büyük ekranlarda Bootstrap .container'ın varsayılan genişliği (xl: 1140px,
   xxl: 1320px) fazla geniş kalıyor; sitenin tamamında hafifçe daraltılır. */
@media (min-width: 1200px) {
    .container {
        max-width: 1100px;
    }
}

@media (min-width: 1400px) {
    .container {
        max-width: 1200px;
    }
}

/* Masaüstünde ardışık bölümler arasına referans tasarımdaki gibi daha geniş
   düşey boşluk ekler; sıkışık/üst üste görünen geçiş hissini azaltır. */
@media (min-width: 992px) {
    /* Bootstrap'ın py-5 utility'si !important ile geldiği için burada da
       !important gerekiyor, aksi halde geçersiz kalır. */
    main section.py-5 {
        padding-top: 7rem !important;
        padding-bottom: 7rem !important;
    }
}

/* Özellik kartı ikon rozeti */
.feature-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 0.75rem;
    background-color: var(--mytv-bg-light);
    color: var(--mytv-primary);
    font-size: 1.25rem;
}

/* Daha belirgin/vurgulu ikon rozeti — büyük boy, koyu zemin üzerinde beyaz ikon */
.feature-icon-lg {
    width: 64px;
    height: 64px;
    border-radius: 1rem;
    background-color: var(--mytv-primary);
    color: #ffffff;
    font-size: 1.75rem;
}

/* Kapanış CTA — split düzen */
.cta-split {
    background-color: #ffffff;
    border-top: 1px solid rgba(0, 0, 0, 0.06);
}

.cta-split h2 {
    color: var(--mytv-dark);
}

/* Video facade — tıklanana kadar YouTube iframe'i yüklemez (performans),
   tıklandığında gerçek gömülü videoya dönüşür. */
.video-facade {
    position: relative;
    aspect-ratio: 16 / 9;
    border-radius: 0.75rem;
    overflow: hidden;
    cursor: pointer;
    background-color: #000;
}

.video-facade img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.85;
    transition: opacity 0.15s ease;
}

.video-facade:hover img {
    opacity: 0.65;
}

.video-facade .video-play-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background-color: var(--mytv-primary);
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
}

.video-facade iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

/* İletişim formu honeypot alanı — gerçek kullanıcılardan ve ekran okuyuculardan
   gizlenir (mytv-technical-seo-checklist.md §31), botlar için hâlâ doldurulabilir. */
.hp-field {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}
