/* ============================================================
   SAĞLAM TEMEL — Global Styles
   Shared CSS variables, resets, and utilities used site-wide.
   ============================================================ */

/* ===== SHARED DESIGN TOKENS ===== */
:root {
    --navy:       #1B2A4A;
    --navy-light: #2c3e6b;
    /* Vurgu rengi. Eski altin sarisi kaldirildi; --gold adi geriye donuk
       uyum icin duruyor ve artik maviye cozuluyor, boylece gozden kacan
       bir kullanim bile sari basmiyor. */
    --accent:      #2C6AA8;   /* soluk lacivert — açık zeminde etiket, vurgu, dolgu */
    --accent-soft: #8FB3D9;   /* lacivert/koyu zeminde okunabilir açık ton */
    --accent-wash: rgba(44,106,168,0.10);
    --gold:      var(--accent);
    --gold-soft: var(--accent-wash);
    --cream:      #f5efe2;
    --border:     #e2ddd4;
    --text:       #1a1a1a;
    --muted:      #888;
    --bg:         #f8f8f6;
    --dark-footer:#111;
}

/* ===== RESET & BASE ===== */
html {
    font-size: 16px;
    position: relative;
    min-height: 100%;
}

* { box-sizing: border-box; }

body {
    font-family: 'Open Sans', sans-serif;
    color: var(--text);
    margin: 0;
    padding: 0;
    background: #fff;
}

img { max-width: 100%; }

/* ===== BOOTSTRAP FOCUS OVERRIDES ===== */
.btn:focus, .btn:active:focus,
.btn-link.nav-link:focus,
.form-control:focus,
.form-check-input:focus {
    box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

/* ===== FORM FLOATING PLACEHOLDERS ===== */
.form-floating > .form-control-plaintext::placeholder,
.form-floating > .form-control::placeholder {
    color: var(--bs-secondary-color);
    text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder,
.form-floating > .form-control:focus::placeholder {
    text-align: start;
}

/* ===== SHARED UTILITY CLASSES ===== */

/* Section label — gold uppercase tag used across multiple pages */
.st-label {
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: var(--gold);
    display: block;
}

/* Serif heading */
.st-serif {
    font-family: 'Playfair Display', serif;
}

/* Gold bottom border divider */
.st-divider-gold {
    width: 48px;
    height: 2px;
    background: var(--navy);
    border-radius: 1px;
}

/* Page max-width container */
.st-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 40px;
}

@media (max-width: 768px) {
    .st-container { padding: 0 20px; }
}
