/* Temel ayarlar */
html {
    font-size: 16px;
}

@media (max-width: 767.98px) {
    html {
        font-size: 14px;
    }
}

/* Tema değişkenleri */
:root {
    /* Light */
    --bg-page: #f7f7fb;
    --bg-surface: #ffffff;
    --bg-surface-2: #f2f4f7;
    --text-100: #0f172a;
    --text-200: #334155;
    --border-color: rgba(15,23,42,.12);
    --primary-500: #6d7cff;
    --primary-600: #5b6bff;
    --primary-700: #4a58ee;
}

body[data-theme="light"], body[data-theme="dark"] {
    font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji";
}

body[data-theme="light"] {
    color: var(--text-100);
    background: radial-gradient(900px 420px at -10% -10%, rgba(109,124,255,.12), transparent 65%), radial-gradient(800px 400px at 110% -10%, rgba(160,70,255,.10), transparent 60%), var(--bg-page);
    /* Bootstrap renkleri */
    --bs-body-bg: var(--bg-page);
    --bs-body-color: var(--text-100);
    --bs-secondary-color: var(--text-200);
    --bs-heading-color: var(--text-100);
}

/* Dark tema override */
body[data-theme="dark"] {
    --bg-page: #0b0d12;
    --bg-surface: #10131a;
    --bg-surface-2: #141927;
    --text-100: #e6e8ee;
    --text-200: #c5cada;
    --border-color: rgba(255,255,255,.08);
    color: var(--text-100);
    background: radial-gradient(1200px 600px at 20% -10%, rgba(109,124,255,.25), transparent 60%), radial-gradient(900px 500px at 90% -10%, rgba(160,70,255,.2), transparent 60%), var(--bg-page);
    /* Bootstrap renkleri */
    --bs-body-bg: var(--bg-page);
    --bs-body-color: var(--text-100);
    --bs-secondary-color: var(--text-200);
    --bs-heading-color: var(--text-100);
}

/* Navbar */
.custom-nav {
    border-bottom: 1px solid var(--border-color);
    background: var(--bg-surface);
}

    .custom-nav .navbar-brand {
        color: var(--text-100) !important;
    }

    .custom-nav .nav-link {
        color: var(--text-200);
    }

        .custom-nav .nav-link:hover {
            color: var(--text-100);
        }

/* Hero */
.hero-section {
    min-height: calc(100vh - 251px);
    padding: 140px 0 48px; /* sabit navbar yüksekliği kadar üst boşluk */
}

.gradient-text {
    background: linear-gradient(90deg, var(--primary-500), #a046ff);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    white-space: nowrap;
}

/* Bölüm aralıkları */
.section-spacing {
    padding: 145px 0;
}

.section-title {
    font-weight: 800;
}

/* Bölümler arası renk geçişi/tint */
.section-contrast {
    position: relative;
    background: linear-gradient(180deg, rgba(109,124,255,.06), rgba(160,70,255,.04)), var(--bg-surface-2);
    border-top: 1px solid var(--border-color);
    border-bottom: 1px solid var(--border-color);
}

body[data-theme="dark"] .section-contrast {
    background: linear-gradient(180deg, rgba(109,124,255,.14), rgba(160,70,255,.10)), var(--bg-surface-2);
}

.section-contrast::before, .section-contrast::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    height: 24px;
    pointer-events: none;
}

.section-contrast::before {
    top: -24px;
    background: linear-gradient(180deg, var(--bg-page) 0%, rgba(0,0,0,0) 100%);
}

.section-contrast::after {
    bottom: -24px;
    background: linear-gradient(0deg, var(--bg-page) 0%, rgba(0,0,0,0) 100%);
}

/* Kartlar */
.services-grid {
    align-items: stretch;
}

.service-card {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 16px;
}

body[data-theme="dark"] .service-card {
    background: #121621;
}

.service-card .card-body {
    padding: 28px;
}

.service-title {
    font-weight: 700;
    margin: 12px 0 8px 0;
}

.service-desc {
    color: var(--text-200);
    margin-bottom: 16px;
}

.service-list {
    list-style: none;
    padding-left: 0;
    margin: 0;
}

    .service-list li {
        position: relative;
        padding-left: 20px;
        margin: 8px 0;
    }

        .service-list li::before {
            content: "";
            position: absolute;
            left: 0;
            top: 10px;
            width: 8px;
            height: 8px;
            border-radius: 50%;
            background: linear-gradient(90deg, var(--primary-600), #a046ff);
        }

.service-card:hover {
    box-shadow: 0 8px 28px rgba(0,0,0,.35);
    border-color: rgba(109,124,255,.5);
    transform: translateY(-2px);
    transition: all .2s ease;
}

.service-icon {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    background: rgba(109,124,255,.15);
    border: 1px solid rgba(109,124,255,.35);
    border-radius: 12px;
}

body[data-theme="light"] .service-icon {
    background: rgba(109,124,255,.12);
}

.about-card {
    background: var(--bg-surface-2);
    border: 1px solid var(--border-color);
    border-radius: 16px;
}

body[data-theme="dark"] .about-card {
    background: rgba(255,255,255,.03);
}

.highlight-card {
    background: linear-gradient(90deg, rgba(109,124,255,.18), rgba(160,70,255,.18));
    border: 1px solid var(--border-color);
    border-radius: 16px;
}

body[data-theme="dark"] .highlight-card {
    background: linear-gradient(90deg, rgba(109,124,255,.25), rgba(160,70,255,.25));
}

.contact-card {
    background: var(--bg-surface-2);
    border: 1px solid var(--border-color);
    border-radius: 16px;
}

body[data-theme="dark"] .contact-card {
    background: rgba(255,255,255,.03);
}

.form-card {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 16px;
}

body[data-theme="dark"] .form-card {
    background: rgba(255,255,255,.02);
}

/* İletişim bilgi satırları */
.contact-info .ci {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    padding: 12px 0;
}

.contact-info .ci-icon {
    width: 36px;
    height: 36px;
    display: grid;
    place-items: center;
    color: var(--primary-600);
    border: 1px solid var(--primary-600);
    border-radius: 10px;
    background: transparent;
}

.contact-info .ci-title {
    font-weight: 600;
}

.contact-info .ci-text {
    color: var(--text-200);
}

/* Formlar */
.form-control, .form-select {
    background-color: #ffffff;
    border: 1px solid var(--border-color);
    color: var(--text-100);
}

body[data-theme="dark"] .form-control, body[data-theme="dark"] .form-select {
    background-color: #0f1422;
    border-color: var(--border-color);
    color: var(--text-100);
}

.form-control::placeholder {
    color: var(--text-200);
    opacity: .7;
}

.form-control:focus {
    border-color: var(--primary-600);
    box-shadow: 0 0 0 .25rem rgba(109,124,255,.2);
}

/* Footer */
.site-footer {
    background: var(--bg-surface);
    border-top: 1px solid var(--border-color);
    color: var(--text-100);
}

    .site-footer p, .site-footer li, .site-footer small, .site-footer span {
        color: var(--text-200);
    }

    .site-footer h5, .site-footer h6 {
        color: var(--text-100);
    }

.footer-link {
    color: var(--text-200);
    text-decoration: none;
}

    .footer-link:hover {
        color: var(--primary-600);
        text-decoration: underline;
    }

body[data-theme="dark"] .footer-link:hover {
    color: #fff;
}

/* Butonlar */
.btn-primary {
    background: linear-gradient(90deg, var(--primary-600), #a046ff);
    border-color: transparent;
}

    .btn-primary:hover {
        filter: brightness(1.05);
    }

.btn-outline-theme {
    color: var(--text-100);
    border: 1px solid var(--border-color);
    background: transparent;
}

    .btn-outline-theme:hover {
        background: var(--bg-surface-2);
    }

body[data-theme="light"] .btn-outline-theme {
    color: var(--text-100);
}

/* Başlık renkleri tutarlılığı */
h1, h2, h3, h4, h5, h6 {
    color: var(--bs-heading-color);
}

p, li, small, span, a {
    color: inherit;
}

/* Tema butonu */
.theme-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 10px;
    border: none;
    background: transparent;
    padding: 6px;
}

    .theme-toggle:hover {
        background: transparent;
    }

    .theme-toggle img {
        width: 100%;
        height: 100%;
        object-fit: contain;
        filter: none;
    }

body[data-theme="dark"] .theme-toggle img {
    filter: invert(1) brightness(1.2);
}

/* About section */
.about-section .about-left {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 16px;
    padding: 24px;
    text-align: justify;
}

body[data-theme="dark"] .about-section .about-left {
    background: rgba(255,255,255,.03);
}

.about-section .about-left p {
    color: var(--text-200);
}

.about-feature .feature-icon {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    background: transparent;
    border: 1px solid var(--primary-600);
    color: var(--primary-600);
    border-radius: 50%;
}

.about-feature-title {
    font-weight: 700;
}

.about-feature-text {
    color: var(--text-200);
}
/* why-card: light mode'da varsayılan metin rengi kullanılır */
body[data-theme="dark"] .why-card {
    color: #fff;
}

.why-list {
    list-style: none;
    padding-left: 0;
}

    .why-list li {
        display: flex;
        align-items: center;
        gap: 10px;
        margin: 12px 0;
    }

.why-icon {
    width: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--primary-600);
    filter: drop-shadow(0 2px 8px rgba(0,0,0,.15));
}

body[data-theme="dark"] .why-icon {
    color: #fff;
    opacity: .95;
}

.social-links {
    margin-top: 20px;
}

.social-links a {
    color: var(--primary-color);
    font-size: 1.5rem;
    margin: 0 10px;
    text-decoration: none;
    transition: color 0.3s ease-in-out, transform 0.3s ease-in-out;
}

.refimgs {
    width: 229px;
    border-radius: 16px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: auto;
    height: 100%;
}
.redtextcolor {
    color: #dc3545;
}