/* ==========================================================================
   Bandırma Manlift — manliftbandirma.com
   Tema: "Liman / Okyanus Mavisi + Mercan" — YUMUŞAK OVERLAP arketipi
   (full-bleed carousel + üzerine bindirilmiş yuvarlak beyaz kart, pill'ler,
    noktalı süreç bandı, dalga kenarlı saha bandı, gradyan CTA kartı)
   Tek dosya: reset + grid primitive + utility + bileşenler + ikon mask sistemi
   Bağımlılık: YOK (Bootstrap / jQuery / Font Awesome kullanılmaz)
   ========================================================================== */

/* ---------- Tasarım token'ları ---------- */
:root {
    --ink: #0c2236;
    --teal-900: #0b2a45;
    --teal-800: #103a5c;
    --teal-700: #15507e;
    --teal-600: #1d6aa3;
    --teal-500: #2e8fcc;
    --amber: #ff6a3d;
    --amber-600: #e44e22;
    --sand: #eef4f8;
    --paper: #ffffff;
    --line: #dde7ee;
    --muted: #5a6e7d;
    --text: #14313f;
    --radius: 8px;
    --shadow: 0 10px 30px rgba(11, 42, 69, .12);
    --shadow-lg: 0 24px 60px rgba(11, 42, 69, .22);
    --ff: ui-sans-serif, system-ui, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    --maxw: 1200px;
    --header-h: 84px;
}

/* ---------- Reset / temel ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
    margin: 0;
    font-family: var(--ff);
    color: var(--text);
    background: var(--paper);
    line-height: 1.65;
    font-size: 16px;
    overflow-x: hidden;
}
img { max-width: 100%; height: auto; display: block; }
a { color: var(--teal-600); text-decoration: none; transition: color .2s ease; }
a:hover { color: var(--amber-600); }
h1, h2, h3, h4, h5 { margin: 0 0 .5em; line-height: 1.15; color: var(--ink); font-weight: 800; }
h1 { font-size: clamp(1.7rem, 3.5vw, 2.7rem); letter-spacing: -.01em; }
h2 { font-size: clamp(1.4rem, 2.6vw, 2.1rem); }
h3 { font-size: 1.3rem; }
p { margin: 0 0 1rem; }
ul { margin: 0 0 1rem; padding-left: 1.1rem; }
hr { border: 0; border-top: 1px solid var(--line); margin: 2.5rem 0; }
:focus-visible { outline: 3px solid var(--amber); outline-offset: 2px; }

/* ---------- Hareket azaltma tercihi ---------- */
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
    }
}

/* ==========================================================================
   İKON SİSTEMİ — <i class="fa-... / bi-..."> mask-image ile SVG
   ========================================================================== */
.fa-solid, .fa-brands, .fa-regular, .fas, .fab, .bi,
i[class^="fa-"], i[class*=" fa-"], i[class^="bi-"], i[class*=" bi-"] {
    display: inline-block;
    width: 1em; height: 1em;
    vertical-align: -0.125em;
    background-color: currentColor;
    -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat;
    -webkit-mask-position: center; mask-position: center;
    -webkit-mask-size: contain; mask-size: contain;
    flex: none;
}
.fa-phone, .bi-telephone, .bi-telephone-fill { -webkit-mask-image: var(--i-phone); mask-image: var(--i-phone); }
.fa-envelope { -webkit-mask-image: var(--i-mail); mask-image: var(--i-mail); }
.fa-bars { -webkit-mask-image: var(--i-bars); mask-image: var(--i-bars); }
.fa-house { -webkit-mask-image: var(--i-house); mask-image: var(--i-house); }
.fa-chevron-up { -webkit-mask-image: var(--i-cup); mask-image: var(--i-cup); }
.fa-chevron-left, .fa-angle-left { -webkit-mask-image: var(--i-cleft); mask-image: var(--i-cleft); }
.fa-chevron-right, .fa-angle-right { -webkit-mask-image: var(--i-cright); mask-image: var(--i-cright); }
.fa-arrow-right, .bi-arrow-right { -webkit-mask-image: var(--i-aright); mask-image: var(--i-aright); }
.fa-angles-right { -webkit-mask-image: var(--i-aaright); mask-image: var(--i-aaright); }
.fa-location-dot { -webkit-mask-image: var(--i-geo); mask-image: var(--i-geo); }
.fa-truck { -webkit-mask-image: var(--i-truck); mask-image: var(--i-truck); }
.fa-clock { -webkit-mask-image: var(--i-clock); mask-image: var(--i-clock); }
.fa-plus { -webkit-mask-image: var(--i-plus); mask-image: var(--i-plus); }
.fa-link { -webkit-mask-image: var(--i-link); mask-image: var(--i-link); }
.fa-external-link, .bi-arrow-up-right { -webkit-mask-image: var(--i-ext); mask-image: var(--i-ext); }
.fa-whatsapp { -webkit-mask-image: var(--i-wa); mask-image: var(--i-wa); }
.fa-instagram { -webkit-mask-image: var(--i-ig); mask-image: var(--i-ig); }
.fa-facebook { -webkit-mask-image: var(--i-fb); mask-image: var(--i-fb); }

:root {
    --i-phone: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M1.885.511a1.745 1.745 0 0 1 2.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 0 0 .178.643l2.457 2.457a.678.678 0 0 0 .644.178l2.189-.547a1.745 1.745 0 0 1 1.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 0 1-7.01-4.42 18.634 18.634 0 0 1-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511z'/%3E%3C/svg%3E");
    --i-mail: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M.05 3.555A2 2 0 0 1 2 2h12a2 2 0 0 1 1.95 1.555L8 8.414.05 3.555ZM0 4.697v7.104l5.803-3.558zM6.761 8.83l-6.57 4.027A2 2 0 0 0 2 14h12a2 2 0 0 0 1.808-1.144l-6.57-4.027L8 9.586l-1.239-.757Zm3.436-.586L16 11.801V4.697l-5.803 3.546Z'/%3E%3C/svg%3E");
    --i-bars: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M2.5 12a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5m0-4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5m0-4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5'/%3E%3C/svg%3E");
    --i-house: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8.707 1.5a1 1 0 0 0-1.414 0L.646 8.146a.5.5 0 0 0 .708.708L8 2.207l6.646 6.647a.5.5 0 0 0 .708-.708L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293z'/%3E%3Cpath d='m8 3.293 6 6V13.5a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 2 13.5V9.293l6-6Z'/%3E%3C/svg%3E");
    --i-cup: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M7.646 4.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1-.708.708L8 5.707l-5.646 5.647a.5.5 0 0 1-.708-.708l6-6z'/%3E%3C/svg%3E");
    --i-cleft: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3E%3C/svg%3E");
    --i-cright: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3E%3C/svg%3E");
    --i-aright: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M1 8a.5.5 0 0 1 .5-.5h11.793l-3.147-3.146a.5.5 0 0 1 .708-.708l4 4a.5.5 0 0 1 0 .708l-4 4a.5.5 0 0 1-.708-.708L13.293 8.5H1.5A.5.5 0 0 1 1 8'/%3E%3C/svg%3E");
    --i-aaright: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L9.293 8 3.646 2.354a.5.5 0 0 1 0-.708z'/%3E%3Cpath d='M7.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L13.293 8 7.646 2.354a.5.5 0 0 1 0-.708z'/%3E%3C/svg%3E");
    --i-geo: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 16s6-5.686 6-10A6 6 0 0 0 2 6c0 4.314 6 10 6 10m0-7a3 3 0 1 1 0-6 3 3 0 0 1 0 6'/%3E%3C/svg%3E");
    --i-truck: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M0 3.5A1.5 1.5 0 0 1 1.5 2h9A1.5 1.5 0 0 1 12 3.5V5h1.02a1.5 1.5 0 0 1 1.17.563l1.481 1.85a1.5 1.5 0 0 1 .329.938V10.5a1.5 1.5 0 0 1-1.5 1.5H14a2 2 0 1 1-4 0H5a2 2 0 1 1-3.998-.085A1.5 1.5 0 0 1 0 10.5zm1.294 7.456A1.999 1.999 0 0 1 4.732 11h5.536a2.01 2.01 0 0 1 .732-.732V3.5a.5.5 0 0 0-.5-.5h-9a.5.5 0 0 0-.5.5v7a.5.5 0 0 0 .294.456M12 10a2 2 0 0 1 1.732 1h.768a.5.5 0 0 0 .5-.5V8.35a.5.5 0 0 0-.11-.312l-1.48-1.85A.5.5 0 0 0 13.02 6H12zm-9 1a1 1 0 1 0 0 2 1 1 0 0 0 0-2m9 0a1 1 0 1 0 0 2 1 1 0 0 0 0-2'/%3E%3C/svg%3E");
    --i-clock: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M8 3.5a.5.5 0 0 0-1 0V9a.5.5 0 0 0 .252.434l3.5 2a.5.5 0 0 0 .496-.868L8 8.71z'/%3E%3C/svg%3E");
    --i-plus: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 2a.5.5 0 0 1 .5.5v5h5a.5.5 0 0 1 0 1h-5v5a.5.5 0 0 1-1 0v-5h-5a.5.5 0 0 1 0-1h5v-5A.5.5 0 0 1 8 2'/%3E%3C/svg%3E");
    --i-link: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.715 6.542 3.343 7.914a3 3 0 1 0 4.243 4.243l1.828-1.829A3 3 0 0 0 8.586 5.5L8 6.086a1.002 1.002 0 0 0-.154.199 2 2 0 0 1 .861 3.337L6.88 11.45a2 2 0 1 1-2.83-2.83l.793-.792a4.018 4.018 0 0 1-.128-1.287z'/%3E%3Cpath d='M6.586 4.672A3 3 0 0 0 7.414 9.5l.775-.776a2 2 0 0 1-.896-3.346L9.12 3.55a2 2 0 1 1 2.83 2.83l-.793.792c.112.42.155.855.128 1.287l1.372-1.372a3 3 0 1 0-4.243-4.243z'/%3E%3C/svg%3E");
    --i-ext: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M14 2.5a.5.5 0 0 0-.5-.5h-6a.5.5 0 0 0 0 1h4.793L2.146 13.146a.5.5 0 0 0 .708.708L13 3.707V8.5a.5.5 0 0 0 1 0z'/%3E%3C/svg%3E");
    --i-wa: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M13.601 2.326A7.854 7.854 0 0 0 7.994 0C3.627 0 .068 3.558.064 7.926c0 1.399.366 2.76 1.057 3.965L0 16l4.204-1.102a7.933 7.933 0 0 0 3.79.965h.004c4.368 0 7.926-3.558 7.93-7.93A7.898 7.898 0 0 0 13.6 2.326zM7.994 14.521a6.573 6.573 0 0 1-3.356-.92l-.24-.144-2.494.654.666-2.433-.156-.251a6.56 6.56 0 0 1-1.007-3.505c0-3.626 2.957-6.584 6.591-6.584a6.56 6.56 0 0 1 4.66 1.931 6.557 6.557 0 0 1 1.928 4.66c-.004 3.639-2.961 6.592-6.592 6.592zm3.615-4.934c-.197-.099-1.17-.578-1.353-.646-.182-.065-.315-.099-.445.099-.133.197-.513.646-.627.775-.114.133-.232.148-.43.05-.197-.1-.836-.308-1.592-.985-.59-.525-.985-1.175-1.103-1.372-.114-.198-.011-.304.088-.403.087-.088.197-.232.296-.346.1-.114.133-.198.198-.33.065-.134.034-.248-.015-.347-.05-.099-.445-1.076-.612-1.47-.16-.389-.323-.335-.445-.34-.114-.007-.247-.007-.38-.007a.729.729 0 0 0-.529.247c-.182.198-.691.677-.691 1.654 0 .977.71 1.916.81 2.049.098.133 1.394 2.132 3.383 2.992.47.205.84.326 1.129.418.475.152.904.129 1.246.08.38-.058 1.171-.48 1.338-.943.164-.464.164-.86.114-.943-.049-.084-.182-.133-.38-.232z'/%3E%3C/svg%3E");
    --i-ig: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 0C5.829 0 5.556.01 4.703.048 3.85.088 3.269.222 2.76.42a3.917 3.917 0 0 0-1.417.923A3.927 3.927 0 0 0 .42 2.76C.222 3.268.087 3.85.048 4.7.01 5.555 0 5.827 0 8.001c0 2.172.01 2.444.048 3.297.04.852.174 1.433.372 1.942.205.526.478.972.923 1.417.444.445.89.719 1.416.923.51.198 1.09.333 1.942.372C5.555 15.99 5.827 16 8 16s2.444-.01 3.298-.048c.851-.04 1.434-.174 1.943-.372a3.916 3.916 0 0 0 1.416-.923c.445-.445.718-.891.923-1.417.197-.509.332-1.09.372-1.942C15.99 10.445 16 10.173 16 8s-.01-2.445-.048-3.299c-.04-.851-.175-1.433-.372-1.941a3.926 3.926 0 0 0-.923-1.417A3.911 3.911 0 0 0 13.24.42c-.51-.198-1.092-.333-1.943-.372C10.443.01 10.172 0 7.998 0h.003zm-.717 1.442h.718c2.136 0 2.389.007 3.232.046.78.035 1.204.166 1.486.275.373.145.64.319.92.599.28.28.453.546.598.92.11.281.24.705.275 1.485.039.843.047 1.096.047 3.231s-.008 2.389-.047 3.232c-.035.78-.166 1.203-.275 1.485a2.47 2.47 0 0 1-.599.919c-.28.28-.546.453-.92.598-.28.11-.704.24-1.485.276-.843.038-1.096.047-3.232.047s-2.39-.009-3.233-.047c-.78-.036-1.203-.166-1.485-.276a2.478 2.478 0 0 1-.92-.598 2.48 2.48 0 0 1-.6-.92c-.109-.281-.24-.705-.275-1.485-.038-.843-.046-1.096-.046-3.233 0-2.136.008-2.388.046-3.231.036-.78.166-1.204.276-1.486.145-.373.319-.64.599-.92.28-.28.546-.453.92-.598.282-.11.705-.24 1.485-.276.738-.034 1.024-.044 2.515-.045v.002z'/%3E%3Cpath d='M12.27 2.77a.96.96 0 1 0 0 1.92.96.96 0 0 0 0-1.92zM8 3.892a4.109 4.109 0 1 0 0 8.217 4.109 4.109 0 0 0 0-8.217zm0 1.441a2.667 2.667 0 1 1 0 5.334 2.667 2.667 0 0 1 0-5.334'/%3E%3C/svg%3E");
    --i-fb: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M16 8.049c0-4.446-3.582-8.05-8-8.05C3.58 0-.002 3.603-.002 8.05c0 4.017 2.926 7.347 6.75 7.951v-5.625h-2.03V8.05H6.75V6.275c0-2.017 1.195-3.131 3.022-3.131.876 0 1.791.157 1.791.157v1.98h-1.009c-.993 0-1.303.621-1.303 1.258v1.51h2.218l-.354 2.326H9.25V16c3.824-.604 6.75-3.934 6.75-7.951'/%3E%3C/svg%3E");
}

/* ==========================================================================
   GRID PRIMITIVE (Bootstrap grid yerine — flexbox, bp: sm 576 / md 768)
   ========================================================================== */
.container { width: 100%; max-width: var(--maxw); margin-inline: auto; padding-inline: 18px; }
.row { display: flex; flex-wrap: wrap; margin-inline: -12px; }
.row > [class*="col"] { padding-inline: 12px; } /* sadece gutter — genişlik kolon sınıflarında (specificity eşit) */

/* Mobil-first: tüm kolonlar tam genişlik (alt alta) */
.col, .col-md, .col-sm,
.col-sm-4, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-12 { width: 100%; }
/* .col her zaman eşit paylaşımlı (otomatik) */
.col { flex: 1 0 0%; width: auto; }

@media (min-width: 576px) {
    .col-sm { flex: 1 0 0%; width: auto; }
    .col-sm-4 { width: 33.3333%; }
}
@media (min-width: 768px) {
    .col-md { flex: 1 0 0%; width: auto; }
    .col-md-2 { width: 16.6667%; }
    .col-md-3 { width: 25%; }
    .col-md-4 { width: 33.3333%; }
    .col-md-5 { width: 41.6667%; }
    .col-md-6 { width: 50%; }
    .col-md-12 { width: 100%; }
}

/* ---------- Utility ---------- */
.d-flex { display: flex; }
.d-sm-inline-flex { display: flex; }
.flex-column { flex-direction: column; }
.flex-row { flex-direction: row; }
.flex-grow-1 { flex-grow: 1; }
.justify-content-center { justify-content: center; }
.align-center, .align-items-center { align-items: center; }
.text-center { text-align: center; }
.text-left { text-align: left; }
.text-right { text-align: right; }
.text-muted { color: var(--muted) !important; }
.text-light { color: #e7efed !important; }
.text-white { color: #fff !important; }
.text-danger { color: #c0392b !important; }
.w-100 { width: 100%; }
.border-top { border-top: 1px solid var(--line); }
.pb-3 { padding-bottom: 1rem; }
.pt-5 { padding-top: 3rem; }
.p-4 { padding: 1.5rem; }
.m-3 { margin: 1rem; }
.mr-5 { margin-right: 0; }
.mt-2 { margin-top: .5rem; }
.mt-4 { margin-top: 1.5rem; }
.mb-2 { margin-bottom: .5rem; }
.mb-3 { margin-bottom: 1rem; }
.mb-4 { margin-bottom: 1.5rem; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
@media (max-width: 767px) { .mobile-top-margin { margin-top: 1.5rem; } }

/* ==========================================================================
   TOP BAR + HEADER + NAV
   ========================================================================== */
.top-header { background: var(--teal-900); color: #cfe3e0; font-size: .82rem; }
.header-links { max-width: var(--maxw); margin-inline: auto; padding: 7px 18px; display: flex; gap: 1.4rem; justify-content: flex-end; flex-wrap: wrap; }
.top-header .footer-link { color: #cfe3e0; display: inline-flex; align-items: center; gap: .4rem; }
.top-header .footer-link:hover { color: var(--amber); }
.top-note { margin-right: auto; color: #9fc0d8; display: inline-flex; align-items: center; gap: .45rem; }
.top-note i { color: var(--amber); }

header { position: sticky; top: 0; z-index: 50; background: var(--paper); border-bottom: 1px solid var(--line); }
.main-header { transition: padding .25s ease, box-shadow .25s ease; }
.main-header .container { display: flex; align-items: center; justify-content: space-between; min-height: var(--header-h); gap: 1rem; }
/* yumuşak mercan imza çizgisi */
header::after { content: ""; position: absolute; left: 18px; bottom: -2px; height: 4px; width: 84px; background: var(--amber); border-radius: 999px; }
.sticky-header { box-shadow: var(--shadow); }
.brand-logo { width: 90px; height: auto; transition: width .25s ease; }
.navbar-brand { display: inline-flex; align-items: center; }

.navbar-collapse { display: flex; align-items: center; gap: .6rem; flex: 1 1 auto; justify-content: flex-end; }
.nav-list { list-style: none; display: flex; align-items: center; gap: .35rem; margin: 0; padding: 0; justify-content: flex-end; }
.nav-link { display: inline-flex; align-items: center; gap: .4rem; padding: .55rem .85rem; font-weight: 700; font-size: .9rem; letter-spacing: .03em; color: var(--ink); text-transform: uppercase; border-radius: 999px; position: relative; transition: background .2s ease, color .2s ease; }
.nav-link > i { font-size: 1.1rem; }
.nav-link:hover { color: var(--teal-700); background: var(--sand); }

.nav-cta { display: inline-flex; align-items: center; gap: .5rem; background: var(--amber); color: #fff; font-weight: 800; font-size: .88rem; letter-spacing: .02em; padding: .58rem 1.25rem; border-radius: 999px; margin-left: .4rem; white-space: nowrap; box-shadow: 0 10px 22px rgba(255, 106, 61, .32); transition: background .2s ease, transform .15s ease, color .2s ease; }
.nav-cta:hover { background: var(--teal-700); color: #fff; transform: translateY(-1px); }

.navbar-toggler { display: none; background: var(--teal-700); color: #fff; border: 0; width: 46px; height: 42px; border-radius: 999px; cursor: pointer; align-items: center; justify-content: center; }
.navbar-toggler-icon { display: inline-flex; font-size: 1.3rem; }

@media (max-width: 960px) {
    .navbar-toggler { display: inline-flex; }
    .navbar-collapse { display: none; position: absolute; left: 0; right: 0; top: 100%; background: var(--paper); border-bottom: 1px solid var(--line); box-shadow: var(--shadow); border-radius: 0 0 18px 18px; }
    .nav-list { flex-direction: column; align-items: stretch; gap: 0; padding: .5rem 1rem 0; }
    .nav-link { padding: .9rem .4rem; border-bottom: 1px solid var(--line); border-radius: 0; }
    .navbar-collapse .nav-cta { display: flex; justify-content: center; margin: .9rem 1.1rem 1.1rem; }
}

/* ==========================================================================
   HERO — full-bleed carousel + sol-alta bindirilmiş yuvarlak beyaz kart
   (imza motifi: overlap eden yumuşak kart)
   ========================================================================== */
.hero { position: relative; }
.carousel { position: relative; min-height: clamp(400px, 62vh, 660px); overflow: hidden; background: var(--teal-900); border-radius: 0 0 28px 28px; }
.carousel-inner { position: absolute; inset: 0; }
.carousel-item { position: absolute; inset: 0; opacity: 0; transition: opacity 1s ease; }
.carousel-item.active { opacity: 1; }
.carousel-image { width: 100%; height: 100%; object-fit: cover; filter: saturate(1.03) brightness(.88); }
.carousel::after { content: ""; position: absolute; inset: 0; z-index: 2; pointer-events: none; background: linear-gradient(180deg, rgba(11,42,69,.3) 0%, rgba(11,42,69,0) 32%, rgba(11,42,69,.38) 100%); }
.carousel-indicators { position: absolute; z-index: 4; bottom: 20px; right: 24px; display: flex; gap: 8px; list-style: none; margin: 0; padding: .5rem .7rem; background: rgba(11,42,69,.38); border-radius: 999px; }
.carousel-indicator { width: 20px; height: 6px; background: rgba(255,255,255,.45); cursor: pointer; border-radius: 999px; transition: background .2s ease, width .2s ease; }
.carousel-indicator.active { background: var(--amber); width: 32px; }
.carousel-control-prev, .carousel-control-next { position: absolute; z-index: 4; top: 44%; transform: translateY(-50%); width: 48px; height: 48px; display: flex; align-items: center; justify-content: center; color: var(--ink); background: rgba(255,255,255,.88); border-radius: 50%; cursor: pointer; box-shadow: var(--shadow); transition: background .2s ease, color .2s ease; }
.carousel-control-prev { left: 18px; } .carousel-control-next { right: 18px; }
.carousel-control-prev:hover, .carousel-control-next:hover { background: var(--amber); color: #fff; }

/* Overlap kart — carousel'in alt kenarından taşar */
.hero-card-wrap { position: relative; z-index: 6; max-width: var(--maxw); margin-inline: auto; padding-inline: 18px; }
.hero-card { max-width: 660px; margin-top: -180px; background: var(--paper); border-radius: 20px; box-shadow: var(--shadow-lg); padding: clamp(1.5rem, 3.2vw, 2.5rem) clamp(1.3rem, 3.2vw, 2.7rem); }
.hero-card h1 { font-size: clamp(1.55rem, 3vw, 2.35rem); letter-spacing: -.015em; margin: .6rem 0 .55rem; }
.hero-lead { color: var(--muted); font-size: clamp(.95rem, 1.25vw, 1.06rem); max-width: 54ch; margin-bottom: 1.15rem; }
.hero-cta { display: flex; gap: .7rem; flex-wrap: wrap; align-items: center; }
.trust-chips { list-style: none; display: flex; flex-wrap: wrap; gap: .5rem; margin: 1.35rem 0 0; padding: 0; }
.trust-chips li { display: inline-flex; align-items: center; gap: .45rem; font-size: .78rem; font-weight: 700; color: var(--teal-800); background: var(--sand); border-radius: 999px; padding: .38rem .85rem; }
.trust-chips i { color: var(--amber); font-size: .85rem; }

@media (max-width: 760px) {
    .carousel { min-height: min(64vw, 420px); border-radius: 0 0 20px 20px; }
    .carousel-indicators { right: 50%; transform: translateX(50%); }
    .hero-card { margin-top: 1rem; max-width: none; padding: 1.4rem 1.2rem 1.5rem; }
}

/* ==========================================================================
   BÖLÜM BAŞLIKLARI / HEADING — iç sayfalar ESKİ sistemi kullanır (korundu)
   ========================================================================== */
.section-header, .heading { text-align: center; }
.section-header { margin: 2.6rem 0 1.8rem; }
.section-header > p, .section-header p { color: var(--muted); max-width: 70ch; margin-inline: auto; }
.section-header-text, .heading h1, .heading h2 { display: inline-block; position: relative; }
.section-header-text::after, .heading h1::after, .heading h2::after { content: ""; display: block; width: 64px; height: 4px; background: var(--amber); margin: .6rem auto 0; border-radius: 999px; }
.home-presentation { padding: 2.4rem 0; }
.home-presentation .heading { margin-bottom: 1.6rem; }

/* ---------- Yeni bölüm sistemi (anasayfa) ---------- */
.sec { padding: 2.5rem 0 .6rem; }
.sec--tight { padding-bottom: 0; }
.eyebrow { display: inline-flex; align-items: center; gap: .5rem; margin: 0 0 .45rem; text-transform: uppercase; letter-spacing: .13em; font-size: .7rem; font-weight: 800; color: var(--teal-700); background: var(--sand); border-radius: 999px; padding: .34rem .95rem; }
.eyebrow::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--amber); flex: none; }
.eyebrow--light { color: #fff; background: rgba(255,255,255,.14); }
.sec-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 1.2rem; margin-bottom: 1.6rem; }
.sec-head h2 { margin: .15rem 0 0; font-size: clamp(1.45rem, 2.4vw, 2rem); letter-spacing: -.01em; }
.sec-sub { color: var(--muted); margin: .55rem 0 0; max-width: 62ch; }
.sec-link { display: inline-flex; align-items: center; gap: .5rem; font-weight: 800; font-size: .85rem; color: var(--teal-700); border: 1.5px solid var(--line); border-radius: 999px; padding: .5rem 1.15rem; white-space: nowrap; transition: border-color .2s ease, color .2s ease, transform .15s ease; }
.sec-link:hover { border-color: var(--amber); color: var(--amber-600); transform: translateY(-1px); }
@media (max-width: 640px) { .sec-head { flex-direction: column; align-items: flex-start; gap: .7rem; } }

/* ---------- Butonlar (pill — arketip imzası) ---------- */
.xf-btn, .custom-btn, .contact-button { display: inline-flex; align-items: center; gap: .5rem; font-weight: 800; text-transform: uppercase; letter-spacing: .03em; cursor: pointer; border: 0; border-radius: 999px; transition: transform .15s ease, background .2s ease, color .2s ease, box-shadow .2s ease; }
.xf-btn { background: var(--amber); color: #fff; padding: .8rem 1.6rem; font-size: .92rem; box-shadow: 0 12px 26px rgba(255, 106, 61, .28); }
.xf-btn:hover { background: var(--ink); color: #fff; transform: translateY(-2px); }
.xf-btn--lg { padding: .95rem 1.9rem; font-size: 1rem; }
.xf-btn--ghost { background: transparent; color: var(--teal-700); box-shadow: inset 0 0 0 2px var(--line); }
.xf-btn--ghost:hover { background: var(--teal-700); color: #fff; box-shadow: inset 0 0 0 2px var(--teal-700); transform: translateY(-2px); }
.x-btn-details, .x-btn-prev { background: var(--amber); color: #fff; }
.x-btn-prev { padding: .85rem 1.6rem; }
.custom-btn.read-more { background: var(--amber); color: #fff; padding: .38rem 1rem; font-size: .78rem; }
.contact-button { background: var(--amber); color: #fff; padding: .7rem 1.5rem; }
.internal-link { color: var(--teal-600); font-weight: 700; text-decoration: underline; text-decoration-color: var(--amber); text-underline-offset: 3px; }
.internal-link.text-white { color: #fff; }

/* ==========================================================================
   SÜREÇ BANDI — 3 yuvarlak rozet + noktalı bağlantı çizgisi
   ========================================================================== */
.steps-band { background: var(--paper); border-bottom: 1px solid var(--line); }
.steps { list-style: none; margin: 0; padding: 2.3rem 0 1.9rem; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.4rem; }
.step { position: relative; text-align: center; padding: 0 1.1rem; }
.step-no { display: inline-flex; align-items: center; justify-content: center; width: 54px; height: 54px; border-radius: 50%; border: 2px solid var(--amber); color: var(--amber-600); background: #fff; font-weight: 800; font-size: 1.2rem; margin-bottom: .7rem; position: relative; z-index: 2; box-shadow: 0 10px 22px rgba(255, 106, 61, .22); }
.step:not(:last-child)::after { content: ""; position: absolute; top: 27px; left: calc(50% + 44px); right: calc(-50% + 22px); border-top: 2px dashed var(--line); }
.step strong { display: block; color: var(--ink); font-size: 1rem; margin-bottom: .25rem; }
.step p { color: var(--muted); font-size: .9rem; margin: 0 auto; max-width: 36ch; }
@media (max-width: 860px) {
    .steps { grid-template-columns: 1fr; gap: 1.5rem; padding: 1.8rem 0 1.5rem; }
    .step:not(:last-child)::after { display: none; }
}

/* ==========================================================================
   KATALOG / PLATFORM KARTLARI — radius 16, görsel + beyaz gövde, yumuşak lift
   (restyle Blog/Index ve Platform/Index kartlarını da yükseltir — istenen)
   ========================================================================== */
.catalog { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
@media (max-width: 900px) { .catalog { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 580px) { .catalog { grid-template-columns: 1fr; } }
.catalog .platform-section { padding: 0; }

.platform-area { padding: 1rem 0 1.5rem; }
.platform-wrapper { margin-top: .5rem; }
.platform-section { height: 100%; padding: 6px 0; }
.platform-link { display: flex; flex-direction: column; position: relative; overflow: hidden; border-radius: 16px; border: 1px solid var(--line); background: var(--paper); box-shadow: 0 8px 26px rgba(11, 42, 69, .08); height: 100%; transition: transform .25s ease, box-shadow .25s ease; }
.platform-link:hover { transform: translateY(-6px); box-shadow: var(--shadow-lg); }
.platform-image { width: 100%; aspect-ratio: 4/3; object-fit: cover; transition: transform .4s ease; }
.platform-link:hover .platform-image { transform: scale(1.04); }
.platform-info, .platform.info { position: static; display: block; flex: 1; padding: 1.05rem 1.15rem 1.25rem; background: var(--paper); color: var(--text); }
.platform-info p, .platform.info p { margin: 0 0 .35rem; font-weight: 800; font-size: 1rem; color: var(--ink); letter-spacing: .01em; }
.platform-note { display: block; color: var(--muted); font-size: .86rem; line-height: 1.5; margin-bottom: .7rem; }
.platform-link:hover .custom-btn.read-more { background: var(--amber-600); }

/* ---------- Geçiş overlay (dönen metin — site.js hook) ---------- */
.transition-overlay { background: linear-gradient(100deg, var(--teal-700), var(--teal-600)); margin-top: 2.4rem; }
.overlay-content { max-width: var(--maxw); margin-inline: auto; padding: 2.4rem 18px; display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; flex-wrap: wrap; }
.overlay-content h3 { color: #fff; margin: 0; font-size: clamp(1.3rem,2.6vw,2rem); text-transform: uppercase; }
.slide-in { animation: slideIn .8s ease; }
@keyframes slideIn { from { opacity: 0; transform: translateX(-24px); } to { opacity: 1; transform: none; } }

/* ---------- Tanıtım (hakkımızda split — ofset yumuşak katman) ---------- */
.presentation-image { width: 100%; border-radius: var(--radius); box-shadow: var(--shadow); }
.about-split { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: clamp(1.5rem, 4vw, 3rem); align-items: center; padding-bottom: 1rem; }
.about-media { position: relative; }
.about-media::before { content: ""; position: absolute; inset: 22px -16px -16px 22px; background: var(--sand); border-radius: 24px; }
.about-media .presentation-image { position: relative; border-radius: 20px; box-shadow: var(--shadow-lg); }
.about-body h2 { margin-top: .15rem; }
.about-actions { display: flex; gap: .7rem; flex-wrap: wrap; margin-top: 1.1rem; }
@media (max-width: 820px) { .about-split { grid-template-columns: 1fr; } }

/* ==========================================================================
   SAHA BANDI — okyanus koyusu, üstte dalga kenarı, içinde açık yuvarlak kartlar
   ========================================================================== */
.fields-band { position: relative; background: linear-gradient(180deg, var(--teal-900) 0%, var(--teal-800) 100%); color: #d8e6f2; padding: 3rem 0 2.7rem; margin-top: 3.2rem; }
.fields-band::before { content: ""; position: absolute; top: -14px; left: 0; right: 0; height: 15px; background-image: radial-gradient(circle at 12px 16px, var(--teal-900) 13px, transparent 13.5px); background-size: 24px 15px; background-repeat: repeat-x; }
.fields-band .sec-head h2 { color: #fff; }
.fields-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.field-card { background: var(--paper); border-radius: 16px; padding: 1.25rem 1.3rem 1.15rem; box-shadow: 0 16px 36px rgba(4, 16, 30, .35); }
.field-card h3 { color: var(--teal-700); font-size: 1rem; text-transform: uppercase; letter-spacing: .03em; margin-bottom: .45rem; }
.field-card p { color: var(--muted); font-size: .92rem; margin: 0; }
.field-card .internal-link.text-white { color: var(--teal-600) !important; }
.field-media { border-radius: 16px; overflow: hidden; box-shadow: 0 16px 36px rgba(4, 16, 30, .35); min-height: 190px; }
.field-media img { width: 100%; height: 100%; object-fit: cover; }
.fields-cta { margin-top: 1.4rem; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.12); border-radius: 16px; padding: 1.2rem 1.4rem; display: flex; align-items: center; justify-content: space-between; gap: 1.2rem; flex-wrap: wrap; }
.fields-cta p { margin: 0; color: #d8e6f2; font-size: .95rem; max-width: 62ch; }
.fields-cta strong { color: #fff; }
@media (max-width: 900px) { .fields-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .fields-grid { grid-template-columns: 1fr; } .field-media { min-height: 160px; } }

/* ==========================================================================
   SAYAÇLAR — tek yuvarlak beyaz kart-bant, hairline bölmeli
   ========================================================================== */
.counter-wrapper { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--line); border: 1px solid var(--line); border-radius: 18px; overflow: hidden; box-shadow: var(--shadow); }
.counter { text-align: center; padding: 1.9rem 1rem 1.6rem; background: var(--paper); }
.counter > i { font-size: 1.6rem; color: var(--amber); }
.count { font-size: 2.5rem; font-weight: 800; color: var(--ink); margin: .3rem 0 0; line-height: 1; }
.counter-info { color: var(--muted); font-weight: 600; font-size: .9rem; margin: .3rem 0 0; }
@media (max-width: 700px) { .counter-wrapper { grid-template-columns: repeat(2, 1fr); } }

/* ==========================================================================
   GALERİ / NEWS ÖNİZLEME
   ========================================================================== */
.news-main-container { max-width: var(--maxw); margin-inline: auto; padding: 0 18px; }
.news-link { display: block; padding: 8px; }
.news-container { overflow: hidden; border-radius: 16px; box-shadow: var(--shadow); position: relative; }
.news-wrapper { position: relative; }
.news-image { width: 100%; aspect-ratio: 1/1; object-fit: cover; transition: transform .4s ease; }
.news-link:hover .news-image { transform: scale(1.08); }
.news-image-footer { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; color: #fff; background: rgba(11,42,69,.55); opacity: 0; transition: opacity .3s ease; font-size: 1.6rem; }
.news-link:hover .news-image-footer { opacity: 1; }

/* ---------- Sayfa sonu iletişim (iç sayfalar) ---------- */
.page-end-container { text-align: center; padding: .4rem; }
.page-end-link { display: inline-flex; align-items: center; gap: .5rem; font-weight: 700; color: var(--ink); font-size: 1.05rem; }
.page-end-link:hover { color: var(--amber-600); }

/* ==========================================================================
   CTA BANDI — mercan→okyanus gradyan, container-içi yuvarlak KART (imza)
   ========================================================================== */
.cta-band { position: relative; max-width: var(--maxw); margin: 3rem auto 0; padding-inline: 18px; }
.cta-band::before { content: ""; position: absolute; left: 48px; right: 6px; top: 20px; bottom: -14px; background: var(--sand); border-radius: 22px; }
.cta-band-in { position: relative; background: linear-gradient(115deg, var(--amber) 0%, var(--amber-600) 30%, var(--teal-700) 78%, var(--teal-900) 100%); border-radius: 22px; box-shadow: var(--shadow-lg); padding: clamp(1.7rem, 4vw, 2.6rem) clamp(1.3rem, 4vw, 2.8rem); display: flex; align-items: center; justify-content: space-between; gap: 1.6rem; flex-wrap: wrap; }
.cta-band h2 { color: #fff; margin: .35rem 0 0; font-size: clamp(1.25rem, 2.2vw, 1.75rem); max-width: 28ch; }
.cta-band .eyebrow--light { background: rgba(255,255,255,.18); }
.cta-actions { display: flex; align-items: center; gap: 1.1rem; flex-wrap: wrap; }
.cta-band .xf-btn { background: #fff; color: var(--teal-800); box-shadow: 0 12px 26px rgba(4, 16, 30, .3); }
.cta-band .xf-btn:hover { background: var(--ink); color: #fff; }
.cta-mail { display: inline-flex; align-items: center; gap: .5rem; color: #fff; font-weight: 700; }
.cta-mail:hover { color: var(--sand); }
@media (max-width: 640px) {
    .cta-band-in { flex-direction: column; align-items: flex-start; }
    .cta-band::before { left: 26px; }
}

/* ==========================================================================
   FLOATING BUTONLAR
   ========================================================================== */
#top-btn { position: fixed; right: 18px; bottom: 84px; z-index: 60; display: none; width: 46px; height: 46px; border-radius: 50%; background: var(--teal-700); color: #fff; align-items: center; justify-content: center; cursor: pointer; box-shadow: var(--shadow); }
#top-btn:hover { background: var(--amber); color: #fff; }
#top-btn > i { display: inline-flex; }
#wp-btn { position: fixed; right: 18px; bottom: 24px; z-index: 60; }
.wp-btn-link { display: inline-flex; align-items: center; gap: .5rem; background: #25d366; color: #fff; padding: .7rem .95rem; border-radius: 30px; font-weight: 700; box-shadow: var(--shadow); }
.wp-btn-link:hover { color: #fff; filter: brightness(1.05); }
.wp-btn-link > i { font-size: 1.3rem; }
@media (max-width: 600px) { .wp-btn-contact { display: none; } }

/* ==========================================================================
   FOOTER
   ========================================================================== */
.footer { background: var(--teal-900); color: #b9cecb; margin-top: 3rem; padding: 2.6rem 0 1.2rem; border-top: 4px solid var(--amber) !important; }
.footer-wrapper { gap: 1rem 0; }
.footer-header { color: #fff; text-transform: uppercase; font-size: 1rem; letter-spacing: .04em; margin-bottom: .8rem; }
.footer-header::after { content: ""; display: block; width: 36px; height: 3px; background: var(--amber); margin-top: .4rem; border-radius: 999px; }
.footer-header.text-center::after { margin-inline: auto; }
#footer-about { font-weight: 400; font-size: .9rem; line-height: 1.7; color: #aec5c1; }
.footer-link-container { list-style: none; padding: 0; margin: 0 0 1rem; }
.footer-link-container li { margin-bottom: .35rem; }
.footer-link { color: #b9cecb; display: inline-flex; align-items: center; gap: .45rem; font-size: .92rem; }
.footer-link:hover { color: var(--amber); }
.footer-link-container p { color: #aec5c1; font-size: .9rem; margin: 0; }
.contact-link { color: #fff; font-weight: 700; }
.section-division-white { border-top: 1px solid rgba(255,255,255,.14); margin: 1.5rem 0 1rem; }
.footer-alt { padding: .4rem 0; }
.footer .text-center a { color: #9fb8b4; }

/* ==========================================================================
   BREADCRUMB + SAYFA BAŞLIĞI (references-page)
   ========================================================================== */
.references-page { background: var(--sand); border-bottom: 1px solid var(--line); }
.page-header-container-references { padding: 1.4rem 18px 2rem; }
.breadcrumb-container { padding: .4rem 0 1rem; }
.breadcrumb-list { list-style: none; display: flex; align-items: center; flex-wrap: wrap; gap: .5rem; padding: 0; margin: 0; font-size: .85rem; }
.breadcrumb-list li { display: inline-flex; align-items: center; }
.breadcrumb-list a { color: var(--muted); font-weight: 600; }
.breadcrumb-list a:hover { color: var(--amber-600); }
.breadcrumb-list i { font-size: .7rem; color: var(--muted); }
.references-page .heading { text-align: left; }
.references-page h1 { margin-top: .4rem; }
.references-page h1::after { content: ""; display: block; width: 64px; height: 4px; background: var(--amber); margin: .6rem 0 0; border-radius: 999px; }
.references-page p, .references-page li { color: #2c413e; }
.references-page h3 { color: var(--teal-700); margin-top: 1.2rem; }
#about-image { width: 100%; max-width: 500px; border-radius: 8px; box-shadow: var(--shadow); display: flex; height: 400px; }

/* ==========================================================================
   PLATFORM DETAY — SEKMELER + TABLO
   ========================================================================== */
.tab-pane-wrapper { max-width: var(--maxw); margin: 1.5rem auto; padding: 0 18px; }
.tab-pane-nav { overflow-x: auto; }
.nav-tabs { display: flex; flex-wrap: wrap; gap: .4rem; border-bottom: 2px solid var(--line); padding: 0 0 .4rem; list-style: none; margin: 0; }
.nav-tabs .nav-link, .nav-tabs .nav-item { background: var(--sand); color: var(--ink); font-weight: 700; padding: .5rem .9rem; border-radius: 999px; text-transform: none; cursor: pointer; }
.nav-tabs .nav-link.active { background: var(--teal-700); color: #fff; }
.tab-content { padding: 1.4rem 0; }
.tab-pane { display: none; }
.tab-pane.active, .tab-pane.show.active { display: block; }
.table { width: 100%; border-collapse: collapse; }
.table td { border: 1px solid var(--line); padding: .55rem .8rem; }
.table tr td:first-child { font-weight: 700; color: var(--teal-700); background: var(--sand); width: 55%; }
.tab-pane img { border-radius: var(--radius); }
.tab-pane-end { border-top: 1px solid var(--line); margin-top: 1rem; padding-top: 1rem; color: var(--muted); }
.tab-pane-end a { font-weight: 700; }

/* ==========================================================================
   İLETİŞİM
   ========================================================================== */
.contact-container .heading { text-align: center; margin-bottom: 1rem; }
.contact-form-wrapper { display: flex; }
.contact-form { width: 100%; background: var(--sand); border-radius: 8px; box-shadow: var(--shadow); border-top: 4px solid var(--amber); }
.contact iframe { width: 100%; border-radius: 8px; min-height: 420px; box-shadow: var(--shadow); }
.x-group { margin-bottom: 1rem; }
.x-group.x-hidden { position: absolute; left: -9999px; }
.x-lbl-sm { display: block; font-weight: 700; font-size: .85rem; margin-bottom: .35rem; color: var(--teal-700); }
.x-inpt { width: 100%; padding: .7rem .85rem; border: 1px solid var(--line); border-radius: var(--radius); font: inherit; background: #fff; color: var(--text); }
.x-inpt:focus { border-color: var(--teal-500); outline: none; box-shadow: 0 0 0 3px rgba(23,138,127,.15); }
.x-inpt:user-invalid { border-color: #c0392b; }
textarea.x-inpt { resize: vertical; min-height: 130px; }
.contact-links { margin-top: 1.5rem; }
.contact-links .page-end-link { font-size: 1rem; }

/* ==========================================================================
   BLOG / İÇERİK
   ========================================================================== */
.content-container { padding: 1.5rem 0; }
.blog-wrapper { max-width: 820px; margin: 1.5rem auto; padding: 0 18px; }
.blog-wrapper h1, .blog-wrapper h2, .blog-wrapper h3 { color: var(--teal-800); }
.blog-wrapper img { border-radius: 8px; margin: 1rem 0; }

/* ==========================================================================
   GALERİ SAYFASI
   ========================================================================== */
.gallery, .gallery-container { max-width: var(--maxw); margin-inline: auto; padding: 1rem 18px; }
.project-gallery { display: grid; gap: 12px; }
.project-image { width: 100%; aspect-ratio: 4/3; object-fit: cover; border-radius: var(--radius); cursor: pointer; box-shadow: var(--shadow); transition: transform .25s ease; }
.project-image:hover { transform: scale(1.03); }
.project-gallery-modal { display: none; position: fixed; inset: 0; z-index: 100; background: rgba(11,42,69,.9); align-items: center; justify-content: center; padding: 2rem; }
.project-gallery-modal-img { max-width: 92vw; max-height: 86vh; border-radius: 6px; }
.close-project-gallery { position: absolute; top: 18px; right: 26px; color: #fff; font-size: 2.4rem; cursor: pointer; line-height: 1; }
.project { max-width: var(--maxw); margin: 1.5rem auto; padding: 0 18px; }
.project .gallery { gap: 0; }
.project-image-info { padding: .5rem 0 1rem; color: var(--muted); font-size: .9rem; text-align: center; }

/* ==========================================================================
   ALERT / BİLDİRİM
   ========================================================================== */
.alert, .x-alert { max-width: var(--maxw); margin: 1rem auto; padding: .9rem 1.2rem; border-radius: var(--radius); display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.x-alert-success { background: #e6f4ea; color: #1e6b3a; border: 1px solid #bfe3cb; }
.x-alert-danger { background: #fdecea; color: #a5281b; border: 1px solid #f3c6c0; }
.x-alert-close, .close { background: none; border: 0; font-size: 1.3rem; cursor: pointer; color: inherit; line-height: 1; }
.bm-center-message { position: fixed; inset: 0; z-index: 120; display: flex; align-items: center; justify-content: center; background: rgba(11,42,69,.55); padding: 1rem; }
.bm-center-message-inner { background: #fff; padding: 1.6rem 2rem; border-radius: 8px; box-shadow: var(--shadow-lg); border-top: 4px solid var(--amber); max-width: 420px; text-align: center; position: relative; }
#global-close { position: absolute; top: 8px; right: 12px; }

/* ==========================================================================
   POLİTİKA / HATA SAYFALARI
   ========================================================================== */
.cookie-policy-page, .policy-content, .page-content { max-width: 860px; margin: 1.5rem auto; padding: 1.5rem 18px; }
.policy-content h1, .cookie-policy-page h1 { color: var(--teal-800); }
.error-container { max-width: 760px; margin: 4rem auto; padding: 2rem 18px; text-align: center; }
.error-header { font-size: clamp(2.5rem, 8vw, 5rem); color: var(--teal-700); }
.error-text { color: var(--muted); font-size: 1.1rem; }

/* ---------- Animasyonlar ---------- */
.fade { transition: opacity .3s ease; }
.fade-product { animation: fadeIn .5s ease; }
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
.page, .references-page { animation: fadeIn .4s ease; }

/* ---------- Mobil ince ayarlar ---------- */
@media (max-width: 767px) {
    .overlay-content { flex-direction: column; text-align: center; }
    .header-links { justify-content: center; gap: 1rem; }
}
@media (max-width: 700px) { .top-note { display: none; } }

/* Anasayfa "Sahadan Kareler" vitrini — tek satır, sarma yok */
.news .row { flex-wrap: nowrap; overflow-x: auto; }
