:root {
    --gt-primary: #0d6efd; /* Bootstrap primary */
    --gt-primary-700: #0a58ca; /* darker */
    --gt-deep: #0b2a4a; /* deep navy */
    --gt-accent: #23b7ff; /* light accent */
}

body {
    scroll-behavior: smooth;
}
/* Navbar */
.navbar {
    background: rgba(255,255,255,.9);
    backdrop-filter: blur(6px);
}

    .navbar .nav-link {
        font-weight: 600;
    }

.navbar-brand span {
    color: var(--gt-primary);
}

/* Hero */
.hero {
    background: linear-gradient(135deg, #e9f3ff 0%, #ffffff 40%, #e9f3ff 100%);
    position: relative;
    overflow: hidden;
    padding-top: 6.5rem; /* başlık ve rozet için daha fazla boşluk */
    padding-bottom: 10rem; /* dalga yüksekliğini fazlasıyla tolere et */
}

    .hero .badge {
        letter-spacing: .5px;
    }

.hero-wave {
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    width: 100%;
    height: 180px;
    display: block;
    z-index: 0;
    pointer-events: none;
}

/* Feature icons */
.feature-icon {
    width: 56px;
    height: 56px;
    border-radius: 14px;
    display: grid;
    place-items: center;
    font-size: 1.6rem;
    background: linear-gradient(135deg, var(--gt-primary), var(--gt-accent));
    color: #fff;
    box-shadow: 0 6px 20px rgba(13,110,253,.25);
}

/* Section spacing */
section {
    padding: 72px 0;
}

/* Cards */
.service-card {
    transition: transform .2s ease, box-shadow .2s ease;
}

    .service-card:hover {
        transform: translateY(-4px);
        box-shadow: 0 .75rem 2rem rgba(13,110,253,.15);
    }

/* Contact */
.contact-card {
    border: 0;
    box-shadow: 0 .75rem 2rem rgba(0,0,0,.06);
}

/* Footer */
footer {
    background: #f8fbff;
    border-top: 1px solid #e8eef6;
}

/* Login modal */
.modal-header {
    border-bottom: 0;
}

.hero .container {
    position: relative;
    z-index: 1;
}

.hero h1.display-5 {
    font-size: clamp(2.2rem, 3.2vw + 1rem, 3.4rem);
    line-height: 1.15;
}

@media (max-width: 576px) {
    .hero {
        padding-top: 5.5rem;
        padding-bottom: 9rem;
    }
}
