/* ================================================================

   main.css — Mavi Tutkum

   Maritime Blue Theme | Mobile-first | Pure CSS

   Font: Montserrat (Google Fonts)

   ================================================================ */



@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;0,9..40,800;1,9..40,400;1,9..40,600&family=Inter:wght@300;400;500;600;700;800&display=swap');



/* ----------------------------------------------------------------

   1. CSS DEĞİŞKENLERİ — Design Tokens

   Palette: #0B1F2A · #1E6FA8 · #4D96C9 · #00B4D8 (turkuaz)

   Fonts: DM Sans (başlıklar) · Inter (açıklamalar/body)

   ---------------------------------------------------------------- */

:root {

    /* ═══ MATERIAL DESIGN TOKENS — Surface Hierarchy ═══ */



    /* Primary — Derin lacivert */

    --primary:               #0B1F2A;

    --primary-container:     #0B1F2A;

    --on-primary:            #ffffff;



    /* Secondary — Orta mavi */

    --secondary:             #1E6FA8;

    --secondary-container:   #0B1F2A;

    --secondary-fixed:       #c8e4f5;

    --on-secondary-container:#d6eeff;



    /* Tertiary — Açık mavi */

    --tertiary:              #4D96C9;

    --on-tertiary:           #ffffff;



    /* Turkuaz vurgu */

    --turquoise:             #00B4D8;

    --turquoise-dim:         #0096b7;

    --turquoise-pale:        #cdf4fc;

    --turquoise-bg:          rgba(0, 180, 216, 0.07);



    /* Surface Hierarchy — Beyaz arka plan */

    --surface:                    #ffffff;   /* Ana arka plan: saf beyaz */

    --surface-bright:             #ffffff;

    --surface-container-lowest:   #ffffff;   /* Float eden kartlar */

    --surface-container-low:      #f0f7fc;   /* Geniş içerik alanları */

    --surface-container:          #e2eff8;   /* Standart container */

    --surface-container-high:     #cde0f0;   /* Yüksek kontrast alan */

    --surface-container-highest:  #b8d2e6;   /* Aktif alanlar */



    /* On-Surface */

    --on-surface:            #0B1F2A;   /* Metin — ana lacivert */

    --on-surface-variant:    #3d5a6a;



    /* Outline */

    --outline:               #6b8a99;

    --outline-variant:       rgba(11, 31, 42, 0.10); /* Ghost Border */



    /* ═══ Geriye dönük uyumluluk aliases ═══ */

    --navy-950:  #050f15;

    --navy-900:  #0B1F2A;

    --navy-800:  #1E6FA8;

    --navy-700:  #2680bd;

    --navy-600:  #3a8fc8;

    --blue-500:  #4D96C9;

    --blue-400:  #00B4D8;

    --blue-300:  #29c6e8;

    --blue-200:  #7dddf0;



    /* ═══ Vurgu renkleri ═══ */

    --electric:      #1E6FA8;

    --electric-dim:  #0B1F2A;

    --electric-pale: #c8e4f5;

    --electric-bg:   rgba(30, 111, 168, 0.07);



    /* Sky */

    --sky-200:   #b3d9f0;

    --sky-100:   #e0f0fb;

    --sky-50:    #f0f7fc;



    /* ═══ Arka Planlar (Surface Hierarchy) ═══ */

    --bg-body:      #ffffff;

    --bg-soft:      var(--surface-container-low);

    --bg-muted:     var(--surface-container);

    --bg-ocean:     var(--surface-container-high);

    --bg-card:      var(--surface-container-lowest);

    --bg-card-alt:  var(--surface-container-low);



    /* ═══ Metin ═══ */

    --text-dark:    #0B1F2A;

    --text-body:    #1a3547;

    --text-muted:   #3d5a6a;

    --text-light:   #7a9bae;

    --text-accent:  #1E6FA8;



    /* ═══ Sınırlar (No-Line Rule — ghost only) ═══ */

    --border:        rgba(11, 31, 42, 0.10);

    --border-mid:    rgba(11, 31, 42, 0.18);

    --border-focus:  #1E6FA8;

    --border-bright: rgba(30, 111, 168, 0.25);



    /* ═══ Gölgeler ═══ */

    --shadow-xs:   0 1px 3px rgba(11, 31, 42, 0.04);

    --shadow-sm:   0 2px 8px rgba(11, 31, 42, 0.06);

    --shadow-md:   0 4px 20px rgba(11, 31, 42, 0.08);

    --shadow-lg:   0 8px 40px rgba(11, 31, 42, 0.10);

    --shadow-xl:   0 16px 60px rgba(11, 31, 42, 0.14);

    --shadow-card: 0px 12px 32px rgba(11, 31, 42, 0.06);

    --shadow-blue: 0 4px 24px rgba(30, 111, 168, 0.18);

    --shadow-navy: 0 8px 40px rgba(11, 31, 42, 0.22);



    /* ═══ Tipografi — DM Sans başlıklar, Inter body ═══ */

    --font:         'Inter', system-ui, -apple-system, sans-serif;

    --font-display: 'DM Sans', system-ui, -apple-system, sans-serif;



    /* ═══ Font Boyutları ═══ */

    --text-xs:   0.75rem;

    --text-sm:   0.875rem;

    --text-base: 1rem;

    --text-lg:   1.125rem;

    --text-xl:   1.25rem;

    --text-2xl:  1.5rem;

    --text-3xl:  1.875rem;

    --text-4xl:  2.25rem;

    --text-5xl:  3rem;

    --text-hero: clamp(2.8rem, 6vw, 5.5rem);



    /* ═══ Boşluk — "Plenty of whitespace is our primary tool for Trust" ═══ */

    --sp-1:  0.25rem;   --sp-2:  0.5rem;

    --sp-3:  0.75rem;   --sp-4:  1rem;

    --sp-5:  1.25rem;   --sp-6:  1.5rem;

    --sp-8:  2rem;      --sp-10: 2.5rem;

    --sp-12: 3rem;      --sp-16: 4rem;

    --sp-20: 5rem;      --sp-24: 6rem;

    --sp-32: 8rem;



    /* ═══ Köşe Yarıçapları — "Sea-worn, smooth" ═══ */

    --r-sm:   6px;

    --r-md:   12px;    /* DESIGN.md: 12px rounding for buttons & cards */

    --r-lg:   14px;

    --r-xl:   24px;    /* DESIGN.md: xl = 1.5rem for image containers */

    --r-2xl:  28px;

    --r-full: 9999px;



    /* ═══ Geçişler ═══ */

    --ease:   cubic-bezier(0.16, 1, 0.3, 1);

    --t-fast: 160ms cubic-bezier(0.16, 1, 0.3, 1);

    --t-base: 280ms cubic-bezier(0.16, 1, 0.3, 1);

    --t-slow: 480ms cubic-bezier(0.16, 1, 0.3, 1);



    /* ═══ Layout ═══ */

    --navbar-h:    72px;

    --logo-size:   92px;

    --container:   1280px;



    /* ═══ Glassmorphism tokens ═══ */

    --glass-bg:   rgba(255, 255, 255, 0.80);

    --glass-blur: blur(20px);

}



/* ----------------------------------------------------------------

   2. RESET & BASE

   ---------------------------------------------------------------- */

*, *::before, *::after {

    box-sizing: border-box;

    margin: 0;

    padding: 0;

}



html {

    font-size: 16px;

    scroll-behavior: smooth;

    -webkit-text-size-adjust: 100%;

    scrollbar-width: thin;

    overflow-x: hidden;

    scrollbar-color: var(--navy-700) var(--sky-100);

}



::-webkit-scrollbar { width: 6px; }

::-webkit-scrollbar-track { background: var(--sky-100); }

::-webkit-scrollbar-thumb { background: var(--blue-300); border-radius: 3px; }

::-webkit-scrollbar-thumb:hover { background: var(--blue-400); }



body {

    font-family: var(--font);

    font-size: var(--text-base);

    font-weight: 400;

    line-height: 1.7;

    color: var(--on-surface);

    background-color: #ffffff;

    min-height: 100vh;

}



img   { max-width: 100%; height: auto; display: block; }

a     { color: var(--electric); text-decoration: none; transition: color var(--t-fast); }

a:hover { color: var(--navy-800); }

ul, ol { list-style: none; }

button, input, select, textarea { font-family: var(--font); }

button { cursor: pointer; }



/* ----------------------------------------------------------------

   3. TİPOGRAFİ

   DM Sans = Başlıklar (display)

   Inter   = Açıklamalar / body

   ---------------------------------------------------------------- */

h1, h2, h3, h4, h5, h6 {

    font-family: var(--font-display);

    font-weight: 700;

    line-height: 1.2;

    color: var(--on-surface);

    letter-spacing: -0.02em;

}



h1 { font-size: clamp(2.2rem, 5vw, 3.75rem); font-weight: 800; }

h2 { font-size: clamp(1.75rem, 3.5vw, 2.75rem); }

h3 { font-size: clamp(1.25rem, 2.2vw, 1.75rem); font-weight: 600; }

h4 { font-size: var(--text-xl); font-weight: 600; }

h5 { font-size: var(--text-lg); font-weight: 600; }

h6 { font-size: var(--text-base); font-weight: 600; }



p { color: var(--text-body); line-height: 1.75; font-family: var(--font); }



/* Magazine-style sub-header kombinasyonu: Playfair headline + Inter all-caps label */

.subheader-editorial {

    display: flex;

    flex-direction: column;

    gap: var(--sp-2);

}

.subheader-editorial .label-md {

    font-family: var(--font);

    font-size: 0.72rem;

    font-weight: 700;

    letter-spacing: 0.05em;

    text-transform: uppercase;

    color: var(--secondary);

}



/* Gradyan metin */

.text-gradient {

    color: var(--on-surface);

    -webkit-text-fill-color: var(--on-surface);

}



.text-gradient-light {

    color: var(--secondary);

    -webkit-text-fill-color: var(--secondary);

}



/* ----------------------------------------------------------------

   4. LAYOUT

   ---------------------------------------------------------------- */

.container {

    width: 100%;

    max-width: var(--container);

    margin: 0 auto;

    padding: 0 var(--sp-6);

}



.section     { padding: var(--sp-24) 0; position: relative; }

.section--lg { padding: var(--sp-32) 0; }

.section--sm { padding: var(--sp-16) 0; }

.section--dark {

    background: var(--primary-container);

    color: rgba(255,255,255,0.8);

}

.section--mid {

    background: var(--navy-800);

}

.section--soft  { background: var(--surface-container-low); }

.section--muted { background: var(--surface-container); }



/* Section başlık grubu */

.section-header {

    text-align: center;

    margin-bottom: var(--sp-16);

}



.section-label {

    display: inline-flex;

    align-items: center;

    gap: var(--sp-2);

    font-size: 0.7rem;

    font-weight: 700;

    letter-spacing: 0.16em;

    text-transform: uppercase;

    color: var(--secondary);

    margin-bottom: var(--sp-4);

    padding: 6px var(--sp-4);

    border: 1px solid var(--outline-variant);   /* ghost border fallback */

    border-radius: var(--r-full);

    background: var(--electric-bg);

}

.section-label--dark {

    color: var(--electric-pale);

    border-color: rgba(255,255,255,0.2);

    background: rgba(255,255,255,0.07);

}



.section-title {

    font-size: clamp(1.75rem, 3.5vw, 2.75rem);

    color: var(--text-dark);

    margin-bottom: var(--sp-4);

    font-weight: 700;

}

.section-title--white { color: #ffffff; }



.section-desc {

    font-size: var(--text-lg);

    color: var(--text-muted);

    max-width: 560px;

    margin: 0 auto;

    line-height: 1.7;

    font-weight: 400;

}

.section-desc--white { color: rgba(255,255,255,0.7); }



/* Dekoratif çizgi */

.section-line {

    display: block;

    width: 48px;

    height: 3px;

    background: var(--electric);

    border-radius: 2px;

    margin: var(--sp-5) auto 0;

}

.section-line--white {

    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.6), transparent);

}



/* ----------------------------------------------------------------

   5. NAVBAR — Transparent/Sticky + Logo Overflow + Full-Screen Mobil

   Redesign v2 — Nisan 2026

   ---------------------------------------------------------------- */



/*

 * Tasarım kuralları:

 * - Anasayfa: tam transparent başlar, scroll > 80px → beyaz + shadow

 * - Diğer sayfalar: direkt beyaz (.scrolled)

 * - Logo: 116×116px, navbar'dan aşağıya taşar (overflow tekniği)

 *   → transparent modda: beyaz logo (.navbar__logo--white)

 *   → scrolled/normal modda: renkli logo (.navbar__logo--color)

 * - CTA: transparent modda glassmorphism, scrolled modda gradient mavi

 * - Mobil: tam ekran overlay, navy zemin, büyük linkler

 */



/* ── Temel navbar ── */

.navbar {

    position: fixed;

    top: 0;

    left: 0;

    right: 0;

    height: var(--navbar-h);

    z-index: 1000;

    overflow: visible;

    background: #ffffff;

    border-bottom: 1px solid var(--border);

    box-shadow: var(--shadow-sm);

    transition:

        background      420ms cubic-bezier(0.16, 1, 0.3, 1),

        box-shadow      420ms cubic-bezier(0.16, 1, 0.3, 1),

        border-color    420ms cubic-bezier(0.16, 1, 0.3, 1),

        backdrop-filter 420ms cubic-bezier(0.16, 1, 0.3, 1);

}



/* ── Anasayfa başlangıcı: tam saydam ── */

.navbar--transparent {

    background: transparent;

    border-bottom-color: transparent;

    box-shadow: none;

}



/* ── Scroll sonrası: yarı saydam buzlu cam → tam beyaz ── */

.navbar.scrolled {

    background: rgba(255, 255, 255, 0.97);

    border-bottom-color: var(--border);

    box-shadow:

        0 1px 0 rgba(255,255,255,0.8),

        0 4px 32px rgba(11, 31, 42, 0.09);

    backdrop-filter: blur(12px);

    -webkit-backdrop-filter: blur(12px);

}



/* ── İç satır ── */

.navbar__inner {

    display: flex;

    align-items: center;

    justify-content: space-between;

    height: 100%;

    padding: 0 var(--sp-8);

    max-width: var(--container);

    margin: 0 auto;

    overflow: visible;

}



/* ----------------------------------------------------------------

   LOGO — Overflow tekniği

   116×116px logo, navbar'ın (72px) dışına aşağı doğru taşar.

   top: 6px → aşağıya taşma: 116 + 6 − 72 = 50px

   ---------------------------------------------------------------- */

.navbar__logo {

    display: block;

    flex-shrink: 0;

    overflow: visible;

    position: relative;

    z-index: 2;

    text-decoration: none;

    width: 116px;

    height: var(--navbar-h);

}



/* İki logo üst üste, opacity geçişiyle değişir */

.navbar__logo-img {

    width: 116px;

    height: 116px;

    object-fit: contain;

    position: absolute;

    top: 6px;

    left: 0;

    transition:

        opacity     380ms cubic-bezier(0.16, 1, 0.3, 1),

        transform   380ms cubic-bezier(0.16, 1, 0.3, 1),

        filter      380ms cubic-bezier(0.16, 1, 0.3, 1);

    flex-shrink: 0;

    pointer-events: none;

}



/* Beyaz logo: transparent modda görünür */

.navbar__logo--white {

    opacity: 1;

    filter: drop-shadow(0 3px 14px rgba(0, 0, 0, 0.28)) brightness(1.05);

}



/* Renkli logo: başlangıçta gizli */

.navbar__logo--color {

    opacity: 0;

    filter: drop-shadow(0 2px 10px rgba(0, 180, 216, 0.22));

}



/* Scrolled / normal modda: renkli görünür, beyaz gizlenir */

.navbar.scrolled .navbar__logo--white,

.navbar:not(.navbar--transparent) .navbar__logo--white {

    opacity: 0;

    filter: none;

}

.navbar.scrolled .navbar__logo--color,

.navbar:not(.navbar--transparent) .navbar__logo--color {

    opacity: 1;

}



/* Logo hover: hafif büyüme */

.navbar__logo:hover .navbar__logo-img {

    transform: scale(1.05) translateY(-2px);

}



/* ----------------------------------------------------------------

   MASAÜSTÜ NAVİGASYON

   ---------------------------------------------------------------- */

.navbar__nav {

    display: flex;

    align-items: center;

    gap: 0;

}



.navbar__link {

    position: relative;

    display: flex;

    align-items: center;

    gap: var(--sp-2);

    padding: 8px 14px;

    font-size: 0.80rem;

    font-weight: 600;

    color: var(--text-muted);

    border-radius: var(--r-md);

    transition: color var(--t-fast), background var(--t-fast);

    white-space: nowrap;

    letter-spacing: 0.05em;

    text-transform: uppercase;

    text-decoration: none;

}



.navbar__link i {

    font-size: 0.75em;

    opacity: 0.5;

    transition: opacity var(--t-fast), transform var(--t-fast);

}



/* Normal mod: hover & aktif */

.navbar__link:hover,

.navbar__link.active {

    color: var(--electric);

    background: var(--electric-bg);

}

.navbar__link:hover i,

.navbar__link.active i {

    opacity: 1;

    transform: translateY(-1px);

}



/* Transparent mod: beyaz linkler */

.navbar--transparent .navbar__link {

    color: rgba(255, 255, 255, 0.85);

}

.navbar--transparent .navbar__link:hover {

    color: #ffffff;

    background: rgba(255, 255, 255, 0.10);

}

.navbar--transparent .navbar__link.active {

    color: #ffffff;

    background: rgba(255, 255, 255, 0.14);

}



/* Alt çizgi animasyonu */

.navbar__link::after {

    content: '';

    position: absolute;

    bottom: 3px;

    left: 50%;

    transform: translateX(-50%) scaleX(0);

    width: 16px;

    height: 2px;

    background: var(--electric);

    border-radius: 1px;

    transition: transform var(--t-base);

    transform-origin: center;

}

.navbar__link:hover::after,

.navbar__link.active::after {

    transform: translateX(-50%) scaleX(1);

}

.navbar--transparent .navbar__link::after {

    background: rgba(255, 255, 255, 0.80);

    height: 1.5px;

}



/* ----------------------------------------------------------------

   CTA — "Rezervasyon Yap" butonu

   Transparent modda: glassmorphism pill

   Scrolled modda: gradient mavi

   ---------------------------------------------------------------- */

.navbar__cta {

    display: inline-flex;

    align-items: center;

    gap: var(--sp-2);

    padding: 10px 22px;

    font-family: var(--font);

    font-weight: 700;

    font-size: 0.775rem;

    letter-spacing: 0.07em;

    text-transform: uppercase;

    border-radius: var(--r-full);

    white-space: nowrap;

    flex-shrink: 0;

    cursor: pointer;

    text-decoration: none;

    transition:

        background     320ms cubic-bezier(0.16, 1, 0.3, 1),

        color          320ms cubic-bezier(0.16, 1, 0.3, 1),

        box-shadow     320ms cubic-bezier(0.16, 1, 0.3, 1),

        border-color   320ms cubic-bezier(0.16, 1, 0.3, 1),

        transform      320ms cubic-bezier(0.16, 1, 0.3, 1);



    /* Scrolled / normal mod: dolu mavi */

    background: var(--navy-800);

    color: #ffffff !important;

    border: 1.5px solid transparent;

    box-shadow: 0 3px 18px rgba(11, 31, 42, 0.25);

}



.navbar__cta:hover {

    color: #ffffff !important;

    transform: translateY(-2px);

    box-shadow: 0 6px 28px rgba(11, 31, 42, 0.35);

    background: var(--navy-700);

}



/* Transparent modda: glassmorphism */

.navbar--transparent .navbar__cta {

    background: rgba(255, 255, 255, 0.12);

    color: #ffffff !important;

    border-color: rgba(255, 255, 255, 0.40);

    box-shadow: none;

    backdrop-filter: blur(8px);

    -webkit-backdrop-filter: blur(8px);

}

.navbar--transparent .navbar__cta:hover {

    background: rgba(255, 255, 255, 0.22);

    border-color: rgba(255, 255, 255, 0.70);

    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);

    transform: translateY(-2px);

}



/* ── Sağ grup: CTA + hamburger ── */

.navbar__right {

    display: flex;

    align-items: center;

    gap: var(--sp-4);

    flex-shrink: 0;

}



/* ----------------------------------------------------------------

   HAMBURGEr BUTONU (Mobil)

   ---------------------------------------------------------------- */

.navbar__toggle {

    display: none;

    flex-direction: column;

    justify-content: center;

    align-items: center;

    gap: 5px;

    width: 42px;

    height: 42px;

    background: none;

    border: none;

    border-radius: var(--r-md);

    cursor: pointer;

    transition: background var(--t-fast);

    flex-shrink: 0;

    padding: 0;

}

.navbar__toggle:hover {

    background: var(--electric-bg);

}

.navbar--transparent .navbar__toggle:hover {

    background: rgba(255, 255, 255, 0.10);

}



.navbar__toggle span {

    display: block;

    width: 22px;

    height: 2px;

    background: var(--navy-800);

    border-radius: 2px;

    transition: all 300ms cubic-bezier(0.16, 1, 0.3, 1);

    transform-origin: center;

}



/* Transparent modda: beyaz çizgiler */

.navbar--transparent .navbar__toggle span {

    background: rgba(255, 255, 255, 0.92);

}

.navbar.scrolled .navbar__toggle span {

    background: var(--navy-800);

}



/* Hamburger → X */

.navbar__toggle.open span:nth-child(1) {

    transform: rotate(45deg) translate(5px, 5px);

}

.navbar__toggle.open span:nth-child(2) {

    opacity: 0;

    transform: scaleX(0);

}

.navbar__toggle.open span:nth-child(3) {

    transform: rotate(-45deg) translate(5px, -5px);

}



/* ----------------------------------------------------------------

   MOBİL MENÜ — Tam Ekran Overlay

   Navy arka plan, fade+scale animasyon, z-index: 1100

   ---------------------------------------------------------------- */

.navbar__mobile {

    position: fixed;

    top: 0; left: 0; right: 0; bottom: 0;

    width: 100%; height: 100%; height: 100dvh;

    background: #124970;

    z-index: 1050;

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: flex-start;

    padding: 0 var(--sp-6) var(--sp-8);

    overflow-y: auto;

    -webkit-overflow-scrolling: touch;

    opacity: 0;

    pointer-events: none;

    transform: translateY(-16px);

    transition:

        opacity   340ms cubic-bezier(0.16, 1, 0.3, 1),

        transform 340ms cubic-bezier(0.16, 1, 0.3, 1);

}



.navbar__mobile.open {

    opacity: 1;

    pointer-events: auto;

    transform: translateY(0);

}



/* Kapat butonu — sağ üst köşe */

.navbar__mobile-close {

    position: absolute;

    top: 20px;

    right: 20px;

    width: 40px;

    height: 40px;

    display: flex;

    align-items: center;

    justify-content: center;

    background: rgba(255, 255, 255, 0.06);

    border: 1px solid rgba(255, 255, 255, 0.12);

    border-radius: 50%;

    color: rgba(255, 255, 255, 0.70);

    font-size: 1rem;

    cursor: pointer;

    z-index: 1060;

    transition: all 0.25s;

}

.navbar__mobile-close:hover {

    background: rgba(255, 255, 255, 0.12);

    border-color: rgba(255, 255, 255, 0.28);

    color: #ffffff;

    transform: rotate(90deg);

}



/* Logo bölümü — üst orta */

.navbar__mobile-header {

    display: flex;

    justify-content: center;

    align-items: center;

    padding-top: 52px;

    padding-bottom: 28px;

    width: 100%;

}



.navbar__mobile-logo {

    display: block;

    width: 82px;

    height: auto;

    object-fit: contain;

    filter: brightness(1);

    opacity: 0.95;

}



/* Linkler wrapper — ortaya hizalı */

.navbar__mobile-nav {

    display: flex;

    flex-direction: column;

    align-items: center;

    gap: 0;

    width: 100%;

    max-width: 320px;

}



/* Mobil linkler — orta boy, temiz */

.navbar__mobile .navbar__link {

    font-size: 1.05rem;

    font-weight: 600;

    color: rgba(255, 255, 255, 0.60);

    letter-spacing: 0.01em;

    text-transform: none;

    width: 100%;

    text-align: center;

    padding: 13px var(--sp-4);

    border-radius: 0;

    background: transparent;

    border-bottom: 1px solid rgba(255, 255, 255, 0.06);

    transition: color 0.2s;

    justify-content: center;

    display: flex;

    align-items: center;

}

.navbar__mobile .navbar__link:first-child {

    border-top: 1px solid rgba(255, 255, 255, 0.06);

}

.navbar__mobile .navbar__link i { display: none; }

.navbar__mobile .navbar__link:hover {

    color: #ffffff;

    background: transparent;

}

.navbar__mobile .navbar__link.active {

    color: #4D96C9;

    font-weight: 700;

}

.navbar__mobile .navbar__link::after { display: none; }



/* Ayraç */

.navbar__mobile-divider {

    width: 40px;

    height: 1px;

    background: rgba(255, 255, 255, 0.10);

    margin: 20px auto;

}



/* Sosyal Medya ikonları */

.navbar__mobile-socials {

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 10px;

    margin-top: 4px;

    margin-bottom: 20px;

}

.navbar__mobile-social {

    width: 42px;

    height: 42px;

    display: flex;

    align-items: center;

    justify-content: center;

    background: rgba(255, 255, 255, 0.07);

    border: 1px solid rgba(255, 255, 255, 0.10);

    border-radius: 50%;

    color: rgba(255, 255, 255, 0.55);

    font-size: 0.9rem;

    text-decoration: none;

    transition: all 0.22s;

}

.navbar__mobile-social:hover {

    background: rgba(77, 150, 201, 0.20);

    border-color: rgba(77, 150, 201, 0.45);

    color: #4D96C9;

    transform: translateY(-2px);

}



/* Mobil CTA */

.navbar__mobile .navbar__cta {

    margin-top: 0;

    padding: 13px 32px;

    font-size: 0.78rem;

    border-radius: 50px;

    width: auto;

    justify-content: center;

    letter-spacing: 0.1em;

    background: #4D96C9 !important;

    color: #ffffff !important;

    border-color: transparent !important;

    box-shadow: 0 6px 24px rgba(77, 150, 201, 0.30) !important;

    backdrop-filter: none !important;

    -webkit-backdrop-filter: none !important;

    font-weight: 700;

}

.navbar__mobile .navbar__cta:hover {

    background: #3a7fb5 !important;

    color: #ffffff !important;

    box-shadow: 0 8px 28px rgba(77, 150, 201, 0.40) !important;

    transform: translateY(-1px);

}



/* Navbar spacer — transparent olmayan sayfalarda içerik kaymasını önler */

.navbar-spacer {

    height: var(--navbar-h);

    display: block;

}



/* ----------------------------------------------------------------

/* ----------------------------------------------------------------

   6. BUTONLAR

   ---------------------------------------------------------------- */

.btn {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: var(--sp-2);

    padding: 10px 20px;

    font-family: var(--font);

    font-size: var(--text-sm);

    font-weight: 700;

    letter-spacing: 0.03em;

    border: none;

    border-radius: var(--r-md);

    cursor: pointer;

    text-decoration: none;

    transition: all var(--t-base);

    white-space: nowrap;

    position: relative;

    overflow: hidden;

}



.btn::before {

    content: '';

    position: absolute;

    inset: 0;

    background: linear-gradient(rgba(255,255,255,0.18), rgba(255,255,255,0));

    opacity: 0;

    transition: opacity var(--t-fast);

}

.btn:hover::before { opacity: 1; }



/* Primary — DESIGN.md: solid primary-container, on-primary text, 12px rounding, no border */

.btn-primary {

    background: var(--primary-container);

    color: var(--on-primary);

    border: none;

    box-shadow: var(--shadow-card);

    border-radius: var(--r-md);

}

.btn-primary:hover {

    color: var(--on-primary);

    transform: translateY(-2px);

    box-shadow: 0px 12px 32px rgba(9, 30, 41, 0.12);

    background: var(--navy-800);

}



/* Secondary — DESIGN.md: surface-container-highest bg, on-secondary-container text, "integrated" feel */

.btn-secondary {

    background: var(--surface-container-highest);

    color: var(--on-secondary-container);

    border: none;

}

.btn-secondary:hover {

    background: var(--surface-container-high);

    color: var(--on-surface);

}



/* Tertiary — DESIGN.md: pure text + 2px underline in secondary */

.btn-outline-blue {

    background: transparent;

    color: var(--secondary);

    border: none;

    border-bottom: 2px solid var(--secondary);

    border-radius: 0;

    padding-left: 0;

    padding-right: 0;

    box-shadow: none;

}

.btn-outline-blue:hover {

    background: transparent;

    color: var(--electric-dim);

    border-bottom-color: var(--electric-dim);

}



/* White — koyu zemin üstünde */

.btn-white {

    background: #ffffff;

    color: var(--navy-800);

    box-shadow: var(--shadow-md);

}

.btn-white:hover {

    color: var(--electric);

    transform: translateY(-2px);

    box-shadow: var(--shadow-lg);

}



/* White outline — koyu zemin üstünde */

.btn-white-outline {

    background: transparent;

    color: #ffffff;

    border: 2px solid rgba(255, 255, 255, 0.55);

}

.btn-white-outline:hover {

    color: #ffffff;

    border-color: #ffffff;

    background: rgba(255, 255, 255, 0.12);

}



/* Navy — koyu mavi dolgu */

.btn-navy {

    background: var(--navy-900);

    color: #ffffff;

}

.btn-navy:hover {

    color: #ffffff;

    background: var(--navy-800);

    transform: translateY(-2px);

    box-shadow: var(--shadow-navy);

}



/* Danger */

.btn-danger {

    background: #ef4444;

    color: #ffffff;

}

.btn-danger:hover {

    color: #ffffff;

    transform: translateY(-2px);

    box-shadow: 0 8px 24px rgba(239,68,68,0.35);

}



/* Boyutlar */

.btn-xs    { padding: 4px 10px;   font-size: var(--text-xs); }

.btn-sm    { padding: 6px 14px;   font-size: var(--text-xs); }

.btn-lg    { padding: 12px 24px;  font-size: var(--text-base); }

.btn-xl    { padding: 14px 28px;  font-size: var(--text-lg); }

.btn-block { width: 100%; }

.btn:disabled { opacity: 0.45; cursor: not-allowed; transform: none !important; box-shadow: none !important; }



/* İkon butonu */

.btn-icon {

    width: 44px;

    height: 44px;

    padding: 0;

    border-radius: var(--r-md);

    background: var(--bg-muted);

    color: var(--text-muted);

    border: 1px solid var(--border);

}

.btn-icon:hover { background: var(--bg-ocean); color: var(--electric); border-color: var(--electric-pale); }



/* ----------------------------------------------------------------

   7. KARTLAR — DESIGN.md: "Experience" Card

   Kural: border yasak (No-Line Rule). 12px radius. Görsel %60 üst.

   Hover: tonal → ambient shadow geçişi, renk değişmez.

   ---------------------------------------------------------------- */

.card {

    background: var(--surface-container-lowest);  /* float eden beyaz */

    border: none;                                  /* NO-LINE RULE */

    border-radius: var(--r-md);                   /* 12px — DESIGN.md */

    overflow: hidden;

    transition: all var(--t-base);

    position: relative;

    box-shadow: var(--shadow-card);               /* ambient başlangıç */

}



.card:hover {

    border: none;

    transform: translateY(-5px);

    box-shadow: 0px 20px 48px rgba(9, 30, 41, 0.12); /* daha derin ambient */

    /* DESIGN.md: hover'da bg rengi değişmez */

}



/* Üstten renk çizgisi — DESIGN.md "No border" ruhuna uygun, ince vurgu */

.card::before {

    content: '';

    position: absolute;

    top: 0; left: 0; right: 0;

    height: 2px;

    background: linear-gradient(90deg, var(--secondary), var(--secondary-fixed));

    transform: scaleX(0);

    transform-origin: left;

    transition: transform var(--t-base);

    z-index: 1;

}

.card:hover::before { transform: scaleX(1); }



.card__image-wrap { overflow: hidden; position: relative; }

.card__image {

    width: 100%;

    aspect-ratio: 4/3;

    object-fit: cover;

    display: block;

    transition: transform var(--t-slow);

}

.card:hover .card__image { transform: scale(1.05); }



.card__badge {

    position: absolute;

    top: var(--sp-3);

    right: var(--sp-3);

    padding: 4px var(--sp-3);

    border-radius: var(--r-full);

    font-size: 0.68rem;

    font-weight: 700;

    letter-spacing: 0.08em;

    text-transform: uppercase;

    z-index: 2;

}

.card__badge--available   { background: rgba(220,252,231,0.95); color: #15803d; backdrop-filter: blur(4px); }

.card__badge--unavailable { background: rgba(254,226,226,0.95); color: #b91c1c; backdrop-filter: blur(4px); }

.card__badge--featured    { background: linear-gradient(135deg, var(--electric), var(--blue-400)); color: #fff; }



.card__body   { padding: var(--sp-5) var(--sp-6); }

/* DESIGN.md: divider gerekirse ghost border (outline-variant @ 15%) */

.card__footer { display: flex; align-items: center; justify-content: space-between; padding: var(--sp-4) var(--sp-6); border-top: 1px solid var(--outline-variant); }



.card__title { font-size: var(--text-xl); font-weight: 700; color: var(--text-dark); margin-bottom: var(--sp-2); letter-spacing: -0.01em; }

.card__desc  { font-size: var(--text-sm); color: var(--text-muted); line-height: 1.65; margin-bottom: var(--sp-4); font-weight: 400; }



.card__meta { display: flex; flex-wrap: wrap; gap: var(--sp-3); margin-bottom: var(--sp-4); }

.card__meta-item { display: flex; align-items: center; gap: var(--sp-2); font-size: var(--text-xs); color: var(--text-muted); font-weight: 500; }

.card__meta-item i { color: var(--electric); font-size: 0.82rem; }



.card__price { display: flex; align-items: baseline; gap: var(--sp-2); }

.card__price-value { font-size: var(--text-2xl); font-weight: 800; color: var(--navy-800); letter-spacing: -0.02em; }

.card__price-unit  { font-size: var(--text-sm); color: var(--text-muted); font-weight: 400; }



.card__price-row { display: flex; align-items: center; justify-content: space-between; gap: var(--sp-4); margin-top: var(--sp-2); }



/* Kapasite rozeti (görsel üzerinde sol-alt) */

.card__capacity {

    position: absolute;

    bottom: var(--sp-3);

    left: var(--sp-3);

    background: rgba(11, 31, 42, 0.8);

    color: #fff;

    font-size: 0.7rem;

    font-weight: 600;

    padding: 3px var(--sp-3);

    border-radius: var(--r-full);

    backdrop-filter: blur(6px);

    display: flex;

    align-items: center;

    gap: var(--sp-2);

    z-index: 2;

}

.card__capacity i { color: var(--electric); font-size: 0.75rem; }



/* ----------------------------------------------------------------

   8. FORM ELEMANLARI

   ---------------------------------------------------------------- */

.form-group { display: flex; flex-direction: column; gap: var(--sp-2); }

.form-row   { display: grid; grid-template-columns: 1fr 1fr; gap: var(--sp-4); }



.form-label {

    font-size: var(--text-sm);

    font-weight: 600;

    color: var(--text-dark);

    letter-spacing: 0.01em;

}

.form-label .req { color: #ef4444; margin-left: 2px; }



.form-control {

    width: 100%;

    padding: 11px var(--sp-5);

    background: var(--surface-container-low);  /* DESIGN.md: surface-variant filled */

    border: none;                               /* DESIGN.md: No bottom line or full border */

    border-radius: var(--r-md);

    color: var(--text-dark);

    font-family: var(--font);

    font-size: var(--text-base);

    font-weight: 400;

    transition: all var(--t-fast);

    -webkit-appearance: none;

    appearance: none;

}

.form-control::placeholder { color: var(--text-light); }

.form-control:hover:not(:focus) { background: var(--surface-container); }

.form-control:focus {

    outline: none;

    background: var(--surface-container-lowest); /* DESIGN.md: focus → lowest */

    box-shadow: 0 0 0 1px var(--secondary); /* DESIGN.md: Ghost Border in secondary */

}



select.form-control {

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2300b4d8' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");

    background-repeat: no-repeat;

    background-position: right var(--sp-4) center;

    padding-right: var(--sp-10);

    cursor: pointer;

}

textarea.form-control { resize: vertical; min-height: 130px; }

.form-hint  { font-size: var(--text-xs); color: var(--text-muted); }

.form-error { font-size: var(--text-xs); color: #ef4444; margin-top: 2px; }



.form-card {

    background: var(--surface-container-lowest);

    border: none;                               /* No-Line Rule */

    border-radius: var(--r-2xl);

    padding: var(--sp-8);

    box-shadow: var(--shadow-card);

}



/* ----------------------------------------------------------------

   9. ALERTS

   ---------------------------------------------------------------- */

.alert {

    display: flex;

    align-items: flex-start;

    gap: var(--sp-3);

    padding: var(--sp-4) var(--sp-5);

    border-radius: var(--r-lg);

    border: 1px solid;

    font-size: var(--text-sm);

    margin-bottom: var(--sp-4);

    font-weight: 500;

}

.alert i { flex-shrink: 0; margin-top: 1px; }

.alert-success { background: #f0fdf4; border-color: #bbf7d0; color: #15803d; }

.alert-danger  { background: #fef2f2; border-color: #fecaca; color: #b91c1c; }

.alert-warning { background: #fffbeb; border-color: #fde68a; color: #92400e; }

.alert-info    { background: var(--sky-50); border-color: var(--electric-pale); color: var(--electric-dim); }



/* ----------------------------------------------------------------

   10. BADGE

   ---------------------------------------------------------------- */

.badge {

    display: inline-flex;

    align-items: center;

    gap: var(--sp-1);

    padding: 3px var(--sp-3);

    border-radius: var(--r-full);

    font-size: var(--text-xs);

    font-weight: 700;

    letter-spacing: 0.06em;

    text-transform: uppercase;

}

.badge-blue  { background: var(--bg-ocean); color: var(--navy-700); border: 1px solid var(--sky-200); }

.badge-cyan  { background: var(--electric-bg); color: var(--electric-dim); border: 1px solid var(--electric-pale); }

.badge-navy  { background: var(--navy-900); color: #fff; }

.badge-green { background: #f0fdf4; color: #15803d; border: 1px solid #bbf7d0; }

.badge-red   { background: #fef2f2; color: #b91c1c; border: 1px solid #fecaca; }

.badge-gray  { background: #f3f4f6; color: #4b5563; border: 1px solid #e5e7eb; }

.badge-gold  { background: #fffbeb; color: #b45309; border: 1px solid #fde68a; }



/* ----------------------------------------------------------------

   11. YILDIZLAR

   ---------------------------------------------------------------- */

.stars        { display: inline-flex; gap: 2px; color: #f59e0b; font-size: var(--text-sm); }

.stars .empty { color: #d1d5db; }



/* ----------------------------------------------------------------

   12. PAGINATION

   ---------------------------------------------------------------- */

.pagination { display: flex; justify-content: center; gap: var(--sp-2); margin-top: var(--sp-12); flex-wrap: wrap; }

.pagination__item {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    min-width: 44px;

    height: 44px;

    padding: 0 var(--sp-3);

    border-radius: var(--r-md);

    font-size: var(--text-sm);

    font-weight: 600;

    color: var(--text-muted);

    background: var(--surface-container-low);

    border: 1px solid var(--outline-variant);   /* ghost border */

    transition: all var(--t-fast);

    cursor: pointer;

}

.pagination__item:hover { background: var(--surface-container); color: var(--secondary); border-color: var(--outline-variant); }

.pagination__item.active { background: var(--primary-container); color: var(--on-primary); border-color: transparent; box-shadow: var(--shadow-card); }



/* ----------------------------------------------------------------

   13. LIGHTBOX

   ---------------------------------------------------------------- */

.lightbox {

    position: fixed;

    inset: 0;

    background: rgba(11, 31, 42, 0.96);

    backdrop-filter: blur(20px);

    -webkit-backdrop-filter: blur(20px);

    z-index: 9999;

    display: flex;

    align-items: center;

    justify-content: center;

    opacity: 0;

    pointer-events: none;

    transition: opacity var(--t-base);

}

.lightbox.open { opacity: 1; pointer-events: all; }

.lightbox-content img,

.lightbox-content video {

    max-width: 90vw;

    max-height: 85vh;

    object-fit: contain;

    border-radius: var(--r-lg);

    box-shadow: var(--shadow-xl);

}

.lightbox-close {

    position: absolute;

    top: var(--sp-6);

    right: var(--sp-6);

    width: 44px;

    height: 44px;

    display: flex;

    align-items: center;

    justify-content: center;

    background: rgba(255,255,255,0.1);

    border: 1px solid rgba(255,255,255,0.2);

    border-radius: var(--r-full);

    color: #fff;

    font-size: 1.1rem;

    cursor: pointer;

    transition: all var(--t-fast);

}

.lightbox-close:hover { background: rgba(239,68,68,0.3); border-color: #ef4444; }

.lightbox-prev,

.lightbox-next {

    position: absolute;

    top: 50%;

    transform: translateY(-50%);

    width: 52px;

    height: 52px;

    display: flex;

    align-items: center;

    justify-content: center;

    background: rgba(255,255,255,0.1);

    border: 1px solid rgba(255,255,255,0.2);

    border-radius: var(--r-full);

    color: #fff;

    font-size: 1.1rem;

    cursor: pointer;

    transition: all var(--t-fast);

}

.lightbox-prev { left: var(--sp-6); }

.lightbox-next { right: var(--sp-6); }

.lightbox-prev:hover,

.lightbox-next:hover { background: rgba(0,180,216,0.25); border-color: var(--electric); }



/* ----------------------------------------------------------------

   14. İÇ SAYFA HERO (Banner)

   ---------------------------------------------------------------- */

.page-hero {

    min-height: 38vh;

    display: flex;

    align-items: center;

    position: relative;

    overflow: hidden;

    padding-top: var(--navbar-h);

    background: var(--navy-900);

}

.page-hero__bg {

    position: absolute;

    inset: 0;

    background: center/cover no-repeat;

    opacity: 0.12;

}

.page-hero__overlay {

    position: absolute;

    inset: 0;

    background: rgba(11,31,42,0.85);

}

.page-hero__content {

    position: relative;

    z-index: 1;

    padding: var(--sp-16) 0;

}

.page-hero__label {

    display: inline-flex;

    align-items: center;

    gap: var(--sp-2);

    font-size: 0.68rem;

    font-weight: 700;

    letter-spacing: 0.16em;

    text-transform: uppercase;

    color: rgba(255,255,255,0.65);

    margin-bottom: var(--sp-3);

}

.page-hero__title { color: #ffffff; margin-bottom: var(--sp-3); }

.page-hero__desc  { font-size: var(--text-lg); color: rgba(255,255,255,0.7); max-width: 520px; font-weight: 300; }



.breadcrumb { display: flex; align-items: center; gap: var(--sp-2); font-size: var(--text-sm); color: rgba(255,255,255,0.55); margin-top: var(--sp-5); flex-wrap: wrap; font-weight: 500; }

.breadcrumb a { color: rgba(255,255,255,0.55); }

.breadcrumb a:hover { color: #ffffff; }

.breadcrumb i { font-size: 0.55em; }



/* ----------------------------------------------------------------

   15. FOOTER

   ---------------------------------------------------------------- */

.footer {

    background: var(--navy-900);

    color: rgba(255,255,255,0.65);

    position: relative;

    overflow: hidden;

}



/* Üst kenar vurgusu — mavi spektrum çizgisi */

.footer::before {

    content: '';

    position: absolute;

    top: 0; left: 0; right: 0;

    height: 2px;

    background: linear-gradient(90deg, transparent 0%, var(--navy-600) 30%, var(--navy-600) 70%, transparent 100%);

}



/* Arka plan dekoratif desen */

.footer::after {

    content: '';

    position: absolute;

    inset: 0;

    background-image: radial-gradient(circle at 80% 20%, rgba(0,180,216,0.06) 0%, transparent 50%),

                      radial-gradient(circle at 10% 80%, rgba(30,111,168,0.08) 0%, transparent 40%);

    pointer-events: none;

}



.footer__top {

    padding: var(--sp-20) 0 var(--sp-12);

    position: relative;

    z-index: 1;

}



.footer__grid {

    display: grid;

    grid-template-columns: 2fr 1fr 1fr 1.5fr;

    gap: var(--sp-12);

}



/* Logo + Marka */

.footer__logo-wrap {

    display: flex;

    align-items: center;

    gap: var(--sp-3);

    margin-bottom: var(--sp-5);

}

.footer__logo-wrap img {

    width: 56px;

    height: 56px;

    object-fit: contain;

    /* Logoyu saf beyaza çevir (koyu zemin için) */

    filter: brightness(0) invert(1) drop-shadow(0 0 8px rgba(0,180,216,0.4));

    flex-shrink: 0;

}

.footer__brand-name {

    font-size: 1.1rem;

    font-weight: 700;

    color: #ffffff;

    letter-spacing: 0.01em;

    line-height: 1.2;

}

.footer__brand-sub {

    font-size: 0.62rem;

    letter-spacing: 0.14em;

    text-transform: uppercase;

    color: var(--electric);

    margin-top: 2px;

    font-weight: 600;

}



.footer__desc {

    font-size: var(--text-sm);

    line-height: 1.8;

    margin-bottom: var(--sp-6);

    color: rgba(255,255,255,0.5);

    font-weight: 400;

    max-width: 280px;

}



/* Sosyal medya ikonları */

.footer__socials { display: flex; gap: var(--sp-3); flex-wrap: wrap; }

.footer__social {

    width: 40px;

    height: 40px;

    display: flex;

    align-items: center;

    justify-content: center;

    background: rgba(255,255,255,0.06);

    border: 1px solid rgba(255,255,255,0.1);

    border-radius: var(--r-md);

    color: rgba(255,255,255,0.55);

    font-size: 0.95rem;

    transition: all var(--t-base);

}

.footer__social:hover {

    background: rgba(0,180,216,0.2);

    border-color: rgba(0,180,216,0.4);

    color: var(--electric);

    transform: translateY(-2px);

}



/* Sütun başlıkları */

.footer__col-title {

    font-size: var(--text-sm);

    font-weight: 700;

    color: #ffffff;

    letter-spacing: 0.06em;

    text-transform: uppercase;

    margin-bottom: var(--sp-5);

    padding-bottom: var(--sp-3);

    border-bottom: 1px solid rgba(255,255,255,0.08);

    position: relative;

}

.footer__col-title::after {

    content: '';

    position: absolute;

    bottom: -1px;

    left: 0;

    width: 28px;

    height: 2px;

    background: var(--electric);

    border-radius: 1px;

}



/* Footer linkleri */

.footer__links { display: flex; flex-direction: column; gap: var(--sp-3); }

.footer__link {

    display: flex;

    align-items: center;

    gap: var(--sp-2);

    font-size: var(--text-sm);

    color: rgba(255,255,255,0.5);

    transition: all var(--t-fast);

    font-weight: 400;

}

.footer__link i { color: var(--electric); font-size: 0.7rem; width: 12px; flex-shrink: 0; transition: transform var(--t-fast); }

.footer__link:hover { color: #ffffff; }

.footer__link:hover i { transform: translateX(3px); }



/* İletişim bilgileri */

.footer__contact-item {

    display: flex;

    gap: var(--sp-3);

    margin-bottom: var(--sp-4);

}

.footer__contact-icon {

    width: 36px;

    height: 36px;

    display: flex;

    align-items: center;

    justify-content: center;

    background: rgba(0,180,216,0.12);

    border: 1px solid rgba(0,180,216,0.22);

    border-radius: var(--r-md);

    color: var(--electric);

    font-size: 0.85rem;

    flex-shrink: 0;

}

.footer__contact-info strong {

    display: block;

    font-size: var(--text-sm);

    color: #ffffff;

    margin-bottom: 2px;

    font-weight: 600;

}

.footer__contact-info span {

    font-size: var(--text-sm);

    color: rgba(255,255,255,0.5);

    font-weight: 400;

}

.footer__contact-info a {

    color: rgba(255,255,255,0.5);

    transition: color var(--t-fast);

}

.footer__contact-info a:hover { color: var(--electric); }



/* Alt çizgi */

.footer__bottom {

    border-top: 1px solid rgba(255,255,255,0.07);

    padding: var(--sp-5) 0;

    position: relative;

    z-index: 1;

}

.footer__bottom-inner {

    display: flex;

    align-items: center;

    justify-content: space-between;

    flex-wrap: wrap;

    gap: var(--sp-4);

}

.footer__copyright {

    font-size: var(--text-xs);

    color: rgba(255,255,255,0.35);

    font-weight: 400;

}

.footer__legal { display: flex; gap: var(--sp-6); }

.footer__legal a {

    font-size: var(--text-xs);

    color: rgba(255,255,255,0.35);

    transition: color var(--t-fast);

    font-weight: 400;

}

.footer__legal a:hover { color: var(--electric); }



/* ----------------------------------------------------------------

   16. FLOATING BUTONLAR (WhatsApp + Telefon)

   ---------------------------------------------------------------- */

.floating-btns {

    position: fixed;

    bottom: var(--sp-6);

    right: var(--sp-6);

    display: flex;

    flex-direction: column;

    gap: var(--sp-3);

    z-index: 900;

}



.floating-btn {

    width: 52px;

    height: 52px;

    border-radius: 50%;

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 1.35rem;

    color: #ffffff;

    box-shadow: 0 4px 20px rgba(0,0,0,0.22);

    transition: all var(--t-base);

    position: relative;

    border: none;

    cursor: pointer;

    text-decoration: none;

}



.floating-btn:hover {

    transform: scale(1.12) translateY(-2px);

    color: #ffffff;

}



/* Tooltip */

.floating-btn::before {

    content: attr(data-tooltip);

    position: absolute;

    right: calc(100% + 10px);

    top: 50%;

    transform: translateY(-50%);

    background: rgba(11,31,42,0.88);

    color: #fff;

    font-size: 0.72rem;

    font-weight: 600;

    font-family: var(--font);

    padding: 5px 10px;

    border-radius: var(--r-sm);

    white-space: nowrap;

    opacity: 0;

    pointer-events: none;

    transition: opacity var(--t-fast);

    letter-spacing: 0.03em;

}

.floating-btn:hover::before { opacity: 1; }



.floating-btn--whatsapp {

    background: linear-gradient(135deg, #25d366, #128c7e);

    box-shadow: 0 4px 20px rgba(37,211,102,0.35);

}

.floating-btn--whatsapp:hover {

    box-shadow: 0 8px 32px rgba(37,211,102,0.45);

}



.floating-btn--phone {

    background: linear-gradient(135deg, var(--electric), var(--blue-400));

    box-shadow: var(--shadow-blue);

}

.floating-btn--phone:hover {

    box-shadow: 0 8px 32px rgba(0,180,216,0.45);

}



/* ----------------------------------------------------------------

   17. ANİMASYONLAR — Scroll Reveal

   ---------------------------------------------------------------- */

.reveal {

    opacity: 0;

    transform: translateY(30px);

    transition: opacity 0.65s var(--ease), transform 0.65s var(--ease);

}

.reveal.visible { opacity: 1; transform: translateY(0); }



.reveal-left {

    opacity: 0;

    transform: translateX(-36px);

    transition: opacity 0.65s var(--ease), transform 0.65s var(--ease);

}

.reveal-left.visible { opacity: 1; transform: translateX(0); }



.reveal-right {

    opacity: 0;

    transform: translateX(36px);

    transition: opacity 0.65s var(--ease), transform 0.65s var(--ease);

}

.reveal-right.visible { opacity: 1; transform: translateX(0); }



.reveal-scale {

    opacity: 0;

    transform: scale(0.93);

    transition: opacity 0.65s var(--ease), transform 0.65s var(--ease);

}

.reveal-scale.visible { opacity: 1; transform: scale(1); }



/* Gecikme sınıfları */

.delay-100 { transition-delay: 0.10s; }

.delay-150 { transition-delay: 0.15s; }

.delay-200 { transition-delay: 0.20s; }

.delay-300 { transition-delay: 0.30s; }

.delay-400 { transition-delay: 0.40s; }

.delay-500 { transition-delay: 0.50s; }

.delay-600 { transition-delay: 0.60s; }

.delay-700 { transition-delay: 0.70s; }



/* Diğer animasyonlar */

@keyframes float {

    0%, 100% { transform: translateY(0) rotate(0deg); }

    33%  { transform: translateY(-10px) rotate(1deg); }

    66%  { transform: translateY(-6px) rotate(-0.5deg); }

}

.float-anim { animation: float 6s ease-in-out infinite; }



@keyframes shimmer {

    0%   { background-position: -200% center; }

    100% { background-position: 200% center; }

}

.skeleton {

    background: linear-gradient(90deg, var(--bg-soft) 25%, var(--bg-muted) 50%, var(--bg-soft) 75%);

    background-size: 200% 100%;

    animation: shimmer 1.5s infinite;

    border-radius: var(--r-md);

}



@keyframes spin { to { transform: rotate(360deg); } }

.spin { animation: spin 1s linear infinite; }



@keyframes pulse-slow { 0%, 100% { opacity: 1; } 50% { opacity: 0.55; } }

.pulse-slow { animation: pulse-slow 2.5s ease-in-out infinite; }



@keyframes bounce-in {

    0%   { transform: scale(0.8); opacity: 0; }

    70%  { transform: scale(1.05); }

    100% { transform: scale(1); opacity: 1; }

}

.bounce-in { animation: bounce-in 0.5s var(--ease) forwards; }



/* ----------------------------------------------------------------

   18. YARDIMCI SINIFLAR

   ---------------------------------------------------------------- */

.text-center  { text-align: center; }

.text-left    { text-align: left; }

.text-right   { text-align: right; }



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

.text-navy     { color: var(--navy-900) !important; }

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

.text-white    { color: #ffffff !important; }

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



.fw-300 { font-weight: 300; }

.fw-400 { font-weight: 400; }

.fw-500 { font-weight: 500; }

.fw-600 { font-weight: 600; }

.fw-700 { font-weight: 700; }

.fw-800 { font-weight: 800; }



.d-flex   { display: flex; }

.d-grid   { display: grid; }

.d-none   { display: none; }

.d-block  { display: block; }



.flex-col        { flex-direction: column; }

.flex-wrap       { flex-wrap: wrap; }

.align-center    { align-items: center; }

.align-start     { align-items: flex-start; }

.justify-center  { justify-content: center; }

.justify-between { justify-content: space-between; }

.justify-end     { justify-content: flex-end; }

.flex-1          { flex: 1; }

.flex-shrink-0   { flex-shrink: 0; }



.gap-2 { gap: var(--sp-2); } .gap-3 { gap: var(--sp-3); }

.gap-4 { gap: var(--sp-4); } .gap-6 { gap: var(--sp-6); }

.gap-8 { gap: var(--sp-8); }



.w-full   { width: 100%; }

.h-full   { height: 100%; }

.mt-auto  { margin-top: auto; }



.mb-2 { margin-bottom: var(--sp-2); } .mb-3 { margin-bottom: var(--sp-3); }

.mb-4 { margin-bottom: var(--sp-4); } .mb-6 { margin-bottom: var(--sp-6); }

.mb-8 { margin-bottom: var(--sp-8); } .mb-12 { margin-bottom: var(--sp-12); }

.mt-2 { margin-top: var(--sp-2); } .mt-3 { margin-top: var(--sp-3); }

.mt-4 { margin-top: var(--sp-4); } .mt-6 { margin-top: var(--sp-6); }

.mt-8 { margin-top: var(--sp-8); } .mt-12 { margin-top: var(--sp-12); }

.mx-auto { margin-left: auto; margin-right: auto; }

.p-4 { padding: var(--sp-4); } .p-6 { padding: var(--sp-6); } .p-8 { padding: var(--sp-8); }



.relative { position: relative; }

.absolute { position: absolute; }

.overflow-hidden { overflow: hidden; }



.rounded      { border-radius: var(--r-md); }

.rounded-lg   { border-radius: var(--r-lg); }

.rounded-xl   { border-radius: var(--r-xl); }

.rounded-full { border-radius: var(--r-full); }



.shadow    { box-shadow: var(--shadow-sm); }

.shadow-md { box-shadow: var(--shadow-md); }

.shadow-lg { box-shadow: var(--shadow-lg); }



.border     { border: 1px solid var(--border); }

.border-top { border-top: 1px solid var(--border); }



.bg-soft    { background: var(--bg-soft); }

.bg-muted   { background: var(--bg-muted); }

.bg-ocean   { background: var(--bg-ocean); }

.bg-white   { background: #ffffff; }

.bg-navy    { background: var(--navy-900); }



/* Grid shortcuts */

.grid-2 { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--sp-6); }

.grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--sp-6); }

.grid-4 { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--sp-6); }



/* ----------------------------------------------------------------

   19. DEKORATIF ELEMENTLER

   ---------------------------------------------------------------- */



/* SVG dalga bölücü */

.wave-divider { width: 100%; overflow: hidden; line-height: 0; }

.wave-divider svg { display: block; width: 100%; }



.section-wave {

    position: absolute;

    bottom: -1px;

    left: 0; right: 0;

    overflow: hidden;

    line-height: 0;

}

.section-wave svg { display: block; width: 100%; }



/* Nokta grid deseni */

.dot-pattern {

    background-image: radial-gradient(circle, rgba(0,180,216,0.15) 1px, transparent 1px);

    background-size: 24px 24px;

}



/* ----------------------------------------------------------------

   20. MOBİL UYUMLULUK — Responsive

   ---------------------------------------------------------------- */

@media (max-width: 1200px) {

    .footer__grid { grid-template-columns: 1fr 1fr; gap: var(--sp-8); }

}



@media (max-width: 1024px) {

    /* Masaüstü nav ve CTA gizlenir, hamburger gösterilir */

    .navbar__nav    { display: none; }

    .navbar__cta    { display: none; }

    .navbar__toggle { display: flex; }



    .grid-4 { grid-template-columns: repeat(2, 1fr); }



    .section     { padding: var(--sp-16) 0; }

    .section--lg { padding: var(--sp-20) 0; }



    .form-row { grid-template-columns: 1fr; }

}



@media (max-width: 768px) {

    .container { padding: 0 var(--sp-4); }



    .grid-2,

    .grid-3,

    .grid-4 { grid-template-columns: 1fr; }



    .footer__grid { grid-template-columns: 1fr; gap: var(--sp-8); }

    .footer__bottom-inner { flex-direction: column; text-align: center; }

    .footer__legal { justify-content: center; }



    .section     { padding: var(--sp-12) 0; }

    .section--lg { padding: var(--sp-16) 0; }

    .section-header { margin-bottom: var(--sp-10); }



    .floating-btn { width: 46px; height: 46px; font-size: 1.2rem; }

    .floating-btns { bottom: var(--sp-5); right: var(--sp-4); }

}



@media (max-width: 480px) {

    .navbar__logo,

    .navbar__logo-img { width: 88px; height: 88px; }



    .btn-xl { padding: 12px 22px; font-size: var(--text-base); }

    .btn-lg { padding: var(--sp-3) var(--sp-6); font-size: var(--text-base); }



    .lightbox-prev { left: var(--sp-3); }

    .lightbox-next { right: var(--sp-3); }

    .floating-btn { width: 44px; height: 44px; font-size: 1.1rem; }

    .floating-btns { bottom: 16px; right: 14px; gap: 10px; }

    .floating-btn::before { display: none; }

}



/* ----------------------------------------------------------------

   21. PRINT

   ---------------------------------------------------------------- */

@media print {

    .navbar, .footer, .btn, .floating-btns { display: none !important; }

    body { background: white; color: black; font-size: 12pt; font-family: sans-serif; }

    a { color: inherit; }

}

/* ----------------------------------------------------------------

/* ══════════════════════════════════════════════════════════════

   22. ANA SAYFA — HERO

   Sol alt: büyük başlık + butonlar + stats (Sea teması)

   Sağ üst: açıklama kutusu

   ══════════════════════════════════════════════════════════════ */



.home-hero {

    position: relative;

    height: 100vh;

    min-height: 680px;

    display: flex;

    align-items: flex-end;

    overflow: hidden;

    background: var(--navy-900);

}



.home-hero__bg {

    position: absolute;

    inset: 0;

    z-index: 0;

}

.home-hero__bg-img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    object-position: center 30%;

    opacity: 1;

    transform: scale(1.03);

    animation: hero-ken-burns 20s ease-in-out infinite alternate;

}

@keyframes hero-ken-burns {

    0%   { transform: scale(1.03) translateX(0); }

    100% { transform: scale(1.08) translateX(-1%); }

}



/* Hafif alt karartma — yazılar okunur, fotoğraf görünür */

.home-hero__overlay {

    position: absolute;

    inset: 0;

    z-index: 1;

    background:

        linear-gradient(to bottom, rgba(1, 10, 25, 0.55) 0%, rgba(1, 10, 25, 0.35) 40%, rgba(1, 10, 25, 0.75) 100%),

        linear-gradient(to right, rgba(1, 10, 25, 0.5) 0%, transparent 60%);

}



.home-hero__watermark {

    position: absolute;

    bottom: 6%;

    right: -1%;

    font-size: clamp(5rem, 13vw, 12rem);

    font-weight: 900;

    letter-spacing: .06em;

    color: rgba(255, 255, 255, 0.04);

    white-space: nowrap;

    pointer-events: none;

    z-index: 2;

    user-select: none;

    line-height: 1;

}



.home-hero__lines {

    position: absolute;

    inset: 0;

    z-index: 2;

    overflow: hidden;

    pointer-events: none;

}

.home-hero__line {

    position: absolute;

    left: 0; right: 0;

    height: 1px;

    background: linear-gradient(90deg, transparent 0%, rgba(0,180,216,.15) 25%, rgba(0,180,216,.28) 55%, transparent 100%);

}

.home-hero__line--1 { top: 28%; animation: hero-wave-line 8s  ease-in-out infinite; }

.home-hero__line--2 { top: 52%; animation: hero-wave-line 10s ease-in-out infinite reverse; opacity: .5; }

.home-hero__line--3 { top: 72%; animation: hero-wave-line 12s ease-in-out infinite; opacity: .28; }

@keyframes hero-wave-line {

    0%,100% { transform: translateX(0)   scaleX(1);   opacity: .35; }

    50%      { transform: translateX(2%) scaleX(.94); opacity: .70; }

}



/* ── Sol alt: ana içerik ── */

.home-hero__container {

    position: relative;

    z-index: 3;

    width: 100%;

    max-width: var(--container);

    margin: 0 auto;

    padding: 0 var(--sp-8) 6.25rem;

    height: 100%;

    display: flex;

    flex-direction: column;

    justify-content: flex-end;

    align-items: flex-start;

}



/* Başlık: sol alt köşe */

.home-hero__title {

    font-size: 70px;

    font-weight: 800;

    color: #ffffff;

    line-height: 1.12;

    letter-spacing: -.04em;

    margin-bottom: 1.25rem;

    text-shadow: 0 2px 40px rgba(11, 31, 42, 0.45);

    max-width: 75%;

}



/* ── Sağ üst: açıklama — masaüstünde absolute, navbar altında ── */

.home-hero__desc-box {

    position: absolute;

    top: calc(var(--navbar-h, 72px) + 2.5rem);

    right: var(--sp-8);

    width: min(300px, 26%);

    z-index: 3;

    text-align: right;

}

.home-hero__desc {

    font-size: clamp(.82rem, 1.1vw, 0.96rem);

    font-weight: 400;

    color: rgba(255, 255, 255, 0.80);

    line-height: 1.85;

    margin: 0;

}



/* Rezervasyon CTA butonu */

.home-hero__cta {

    display: inline-block;

    padding: 0.65rem 1.6rem;

    background: transparent;

    border: 1.5px solid rgba(255, 255, 255, 0.70);

    color: #ffffff;

    font-size: 0.82rem;

    font-weight: 600;

    letter-spacing: 0.06em;

    text-decoration: none;

    border-radius: 4px;

    margin-bottom: 0;

    transition: background 0.2s, border-color 0.2s, color 0.2s;

    white-space: nowrap;

}

.home-hero__cta:hover,

.home-hero__cta:active {

    background: var(--electric);

    border-color: var(--electric);

    color: #ffffff;

}



.home-hero__wave {

    position: absolute;

    bottom: 0; left: 0; right: 0;

    z-index: 4; line-height: 0;

    display: none;

}

.home-hero__wave svg { display: block; width: 100%; }



/* Hero alt düz çizgi */

.home-hero::after {

    content: '';

    position: absolute;

    bottom: 0; left: 0; right: 0;

    height: 1px;

    background: rgba(255,255,255,0.15);

    z-index: 5;

}



/* ── Tablet ── */

@media (max-width: 1024px) {

    .home-hero__title    { font-size: clamp(2.2rem, 5vw, 4rem); max-width: 65%; }

    .home-hero__desc-box { width: min(240px, 28%); top: calc(var(--navbar-h, 72px) + 2rem); }

    .home-hero__container { padding-bottom: 4rem; }

}



/* ── Mobil ── */

@media (max-width: 768px) {

    .home-hero {

        height: 100dvh;

        min-height: 580px;

        align-items: stretch;

    }



    .home-hero__container {

        flex-direction: column;

        justify-content: flex-start;

        align-items: flex-start;

        padding: calc(var(--navbar-h) + 1rem) var(--sp-5) 4rem;

        max-width: 100%;

        gap: 0;

    }



    /* Açıklama: margin-top:auto ile ortaya iter */

    .home-hero__desc-box {

        position: static;

        transform: none;

        width: 100%;

        text-align: left;

        margin-top: auto;

        margin-bottom: 1.25rem;

        order: 1;

    }



    .home-hero__desc {

        font-size: 0.88rem;

        line-height: 1.75;

    }



    /* Başlık: daha büyük, biraz boşluklu */

    .home-hero__title {

        font-size: clamp(2.8rem, 11vw, 3.8rem);

        line-height: 1.12;

        max-width: 100%;

        margin-bottom: 1rem;

        order: 2;

    }



    /* CTA butonu mobilde */

    .home-hero__cta {

        order: 3;

        margin-bottom: 2.5rem;

        font-size: 0.80rem;

        padding: 0.60rem 1.4rem;

    }

}





@media (max-width: 480px) {

    .home-hero__title { font-size: clamp(2.5rem, 10.5vw, 3.2rem); line-height: 1.12; }

}



/* ══════════════════════════════════════════════════════════════

   NEDEN BİZ — 6 özellik kartı

   ══════════════════════════════════════════════════════════════ */



.features-grid {

    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 1.5rem;

    margin-top: 3rem;

}



.feature-card {

    background: var(--bg-card);

    border: 1px solid var(--border);

    border-radius: var(--r-xl);

    padding: 2rem 1.75rem;

    transition: all var(--t-base);

    position: relative;

    overflow: hidden;

}

.feature-card::before {

    content: '';

    position: absolute;

    top: 0; left: 0; right: 0;

    height: 3px;

    background: linear-gradient(90deg, var(--electric), var(--blue-300));

    opacity: 0;

    transition: opacity var(--t-base);

}

.feature-card:hover {

    border-color: var(--electric);

    transform: translateY(-4px);

    box-shadow: var(--shadow-lg);

}

.feature-card:hover::before { opacity: 1; }



.feature-card__icon-wrap {

    width: 52px;

    height: 52px;

    border-radius: var(--r-lg);

    background: var(--electric-bg);

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 1.35rem;

    color: var(--electric);

    margin-bottom: 1.25rem;

    transition: all var(--t-base);

}

.feature-card:hover .feature-card__icon-wrap {

    background: var(--electric);

    color: #fff;

    transform: scale(1.08);

}

.feature-card__icon-wrap--gold  { background: rgba(245,158,11,.1);  color: #d97706; }

.feature-card__icon-wrap--teal  { background: rgba(0,180,216,.1);   color: var(--electric); }

.feature-card__icon-wrap--coral { background: rgba(239,68,68,.08);  color: #dc2626; }

.feature-card__icon-wrap--green { background: rgba(34,197,94,.1);   color: #16a34a; }

.feature-card__icon-wrap--blue  { background: rgba(59,130,246,.1);  color: #2563eb; }

.feature-card__title {

    font-size: 1.05rem;

    font-weight: 700;

    margin-bottom: .6rem;

    color: var(--text-dark);

}

.feature-card__desc {

    font-size: .875rem;

    color: var(--text-muted);

    line-height: 1.7;

}



/* ══════════════════════════════════════════════════════════════

   STATS — İstatistik sayaçları bölümü

   ══════════════════════════════════════════════════════════════ */

.stats-section {

    background: var(--navy-900);

    padding: 0;

    position: relative;

    overflow: hidden;

}

.stats-section::before {

    content: '';

    position: absolute;

    inset: 0;

    background:

        radial-gradient(ellipse at 20% 50%, rgba(0,180,216,.18) 0%, transparent 60%),

        radial-gradient(ellipse at 80% 50%, rgba(30,111,168,.25) 0%, transparent 60%);

    pointer-events: none;

}

.stats-section::after {

    content: '';

    position: absolute;

    bottom: 0;

    left: 0;

    right: 0;

    height: 2px;

    background: linear-gradient(90deg, transparent, var(--electric), transparent);

}

.stats-section__inner {

    display: grid;

    grid-template-columns: repeat(4, 1fr);

    gap: 0;

    position: relative;

    z-index: 1;

    max-width: var(--container);

    margin: 0 auto;

    padding: 0 var(--sp-6);

}

.stat-card {

    display: flex;

    align-items: center;

    gap: 1.25rem;

    padding: 2.5rem 2rem;

    border-right: 1px solid rgba(255,255,255,.15);

    transition: background var(--t-base);

}

.stat-card:last-child { border-right: none; }

.stat-card:hover { background: rgba(255,255,255,.06); }

.stat-card__icon {

    width: 3.5rem;

    height: 3.5rem;

    border-radius: 50%;

    background: rgba(255,255,255,.15);

    display: flex;

    align-items: center;

    justify-content: center;

    flex-shrink: 0;

    font-size: 1.3rem;

    color: #fff;

    transition: background var(--t-base), transform var(--t-base);

}

.stat-card:hover .stat-card__icon {

    background: rgba(255,255,255,.28);

    transform: scale(1.1) rotate(-5deg);

}

.stat-card__body { flex: 1; min-width: 0; }

.stat-card__number {

    font-size: 2.4rem;

    font-weight: 800;

    color: #fff;

    line-height: 1;

    letter-spacing: -1px;

    white-space: nowrap;

}

.stat-card__label {

    font-size: .85rem;

    color: rgba(255,255,255,.75);

    margin-top: .35rem;

    font-weight: 500;

    text-transform: uppercase;

    letter-spacing: .5px;

}



/* ══════════════════════════════════════════════════════════════

   EMPTY STATE — Boş liste gösterimi

   ══════════════════════════════════════════════════════════════ */

.empty-state {

    text-align: center;

    padding: 4rem 2rem;

    background: var(--bg-soft);

    border-radius: var(--r-xl);

    border: 2px dashed var(--border);

    margin-top: 2rem;

}

.empty-state__icon {

    font-size: 3rem;

    color: var(--primary);

    opacity: .4;

    display: block;

    margin-bottom: 1rem;

}

.empty-state__title {

    font-size: 1.25rem;

    font-weight: 700;

    color: var(--text-dark);

    margin-bottom: .5rem;

}

.empty-state__desc {

    color: var(--text-muted);

    margin-bottom: 1.5rem;

}



/* ══════════════════════════════════════════════════════════════

   TEKNELERİMİZ — grid

   ══════════════════════════════════════════════════════════════ */

.boats-grid {

    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 1.75rem;

    margin-top: 3rem;

}



/* ══════════════════════════════════════════════════════════════

   NASIL ÇALIŞIR — koyu bölüm

   ══════════════════════════════════════════════════════════════ */

.how-section {

    position: relative;

    padding: var(--sp-24) 0;

    background: var(--navy-900);

    overflow: hidden;

}

.how-section__deco {

    position: absolute;

    inset: 0;

    background-image:

        radial-gradient(ellipse at 5% 50%,  rgba(0,180,216,.12) 0%, transparent 55%),

        radial-gradient(ellipse at 95% 20%, rgba(30,111,168,.18)  0%, transparent 50%);

    pointer-events: none;

}

.how-section__inner { position: relative; z-index: 1; }



.steps-row {

    display: flex;

    align-items: flex-start;

    gap: 1rem;

    margin-top: 3rem;

}

.step-item {

    flex: 1;

    background: rgba(255,255,255,.04);

    border: 1px solid rgba(255,255,255,.08);

    border-radius: var(--r-xl);

    padding: 2rem 1.75rem;

    text-align: center;

    transition: all var(--t-base);

}

.step-item:hover {

    background: rgba(0,180,216,.08);

    border-color: rgba(0,180,216,.25);

    transform: translateY(-4px);

}

.step-item__num {

    font-size: 3.5rem;

    font-weight: 900;

    color: rgba(0,180,216,.15);

    line-height: 1;

    letter-spacing: -.04em;

    margin-bottom: .5rem;

}

.step-item__icon {

    width: 60px;

    height: 60px;

    border-radius: 50%;

    background: rgba(0,180,216,.12);

    border: 1px solid rgba(0,180,216,.25);

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 1.5rem;

    color: var(--electric);

    margin: 0 auto 1.25rem;

    transition: all var(--t-base);

}

.step-item:hover .step-item__icon {

    background: var(--electric);

    color: #fff;

    border-color: var(--electric);

}

.step-item__title {

    font-size: 1.1rem;

    font-weight: 700;

    color: #fff;

    margin-bottom: .65rem;

}

.step-item__desc {

    font-size: .86rem;

    color: rgba(255,255,255,.55);

    line-height: 1.75;

    margin-bottom: 1.25rem;

}

.step-item__link {

    font-size: .78rem;

    font-weight: 700;

    letter-spacing: .06em;

    text-transform: uppercase;

    color: var(--electric);

    text-decoration: none;

    transition: color var(--t-fast);

}

.step-item__link:hover { color: var(--blue-200); }

.step-item__connector {

    flex-shrink: 0;

    color: rgba(0,180,216,.3);

    font-size: 1.1rem;

    margin-top: 5rem;

    align-self: flex-start;

}



/* ══════════════════════════════════════════════════════════════

   GALERİ — masonry grid

   ══════════════════════════════════════════════════════════════ */

.gallery-masonry {

    display: grid;

    grid-template-columns: repeat(3, 1fr);

    grid-template-rows: repeat(2, 260px);

    gap: 12px;

    margin-top: 3rem;

}

.gallery-item {

    position: relative;

    overflow: hidden;

    border-radius: var(--r-xl);

    cursor: pointer;

    background: var(--bg-muted);

    border: none;

    padding: 0;

    display: block;

    width: 100%;

}

.gallery-item--tall { grid-row: span 2; }

.gallery-item img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: transform 600ms cubic-bezier(0.16,1,0.3,1);

    display: block;

}

.gallery-item__overlay {

    position: absolute;

    inset: 0;

    background: linear-gradient(to top, rgba(11,31,42,.65) 0%, transparent 55%);

    display: flex;

    align-items: center;

    justify-content: center;

    opacity: 0;

    transition: opacity var(--t-base);

    color: #fff;

    font-size: 1.4rem;

}

.gallery-item:hover img              { transform: scale(1.07); }

.gallery-item:hover .gallery-item__overlay { opacity: 1; }

.gallery-item__caption {

    display: block;

    font-size: .8rem;

    margin-top: .5rem;

    color: rgba(255,255,255,.85);

    font-weight: 500;

    white-space: nowrap;

    overflow: hidden;

    text-overflow: ellipsis;

    max-width: 90%;

}



/* ══════════════════════════════════════════════════════════════

   YORUMLAR — 2×2 grid

   ══════════════════════════════════════════════════════════════ */

.reviews-grid {

    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 1.5rem;

    margin-top: 3rem;

}

.review-card {

    background: var(--surface-container-lowest);

    border: none;                           /* No-Line Rule */

    border-radius: var(--r-xl);

    padding: 1.75rem 1.75rem 1.5rem;

    position: relative;

    transition: all var(--t-base);

    box-shadow: var(--shadow-card);

}

.review-card:hover {

    box-shadow: 0px 20px 48px rgba(9, 30, 41, 0.10);

    transform: translateY(-3px);

}

.review-card__icon {

    position: absolute;

    top: 1.5rem;

    right: 1.75rem;

    font-size: 1.75rem;

    color: var(--electric);

    opacity: .12;

}

.review-card__text {

    font-size: .9rem;

    line-height: 1.8;

    color: var(--text-body);

    margin-bottom: 1.25rem;

}

.review-card__footer {

    display: flex;

    align-items: center;

    gap: .875rem;

}

.review-card__avatar {

    width: 40px;

    height: 40px;

    border-radius: 50%;

    background: linear-gradient(135deg, var(--electric), var(--navy-800));

    color: #fff;

    font-size: .95rem;

    font-weight: 700;

    display: flex;

    align-items: center;

    justify-content: center;

    flex-shrink: 0;

}

.review-card__name {

    font-size: .85rem;

    font-weight: 700;

    color: var(--text-dark);

    display: block;

    margin-bottom: 2px;

}

.review-card__date {

    margin-left: auto;

    font-size: .72rem;

    color: var(--text-light);

    font-weight: 500;

}



/* Yıldızlar */

.stars { display: flex; gap: 2px; }

.stars .fa-star       { font-size: .68rem; color: #f59e0b; }

.stars .fa-star.empty { color: var(--border-mid); }



/* ══════════════════════════════════════════════════════════════

   CTA BANNER — Sayfa sonu tam ekran

   ══════════════════════════════════════════════════════════════ */

.cta-section {

    position: relative;

    overflow: hidden;

    padding: var(--sp-24) 0;

    min-height: 420px;

    display: flex;

    align-items: center;

}

.cta-section__bg {

    position: absolute;

    inset: 0;

    z-index: 0;

}

.cta-section__bg img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    object-position: center 55%;

}

.cta-section__overlay {

    position: absolute;

    inset: 0;

    background: linear-gradient(

        135deg,

        rgba(11,31,42,.88) 0%,

        rgba(11,31,42,.78) 60%,

        rgba(30,111,168,.55) 100%

    );

}

.cta-section__inner {

    position: relative;

    z-index: 1;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 3rem;

    flex-wrap: wrap;

}

.cta-section__title {

    font-size: clamp(1.7rem, 3.5vw, 2.8rem);

    font-weight: 800;

    color: #fff;

    line-height: 1.15;

    letter-spacing: -.025em;

    margin-bottom: .75rem;

}

.cta-section__title em {

    font-style: italic;

    color: var(--electric);

    -webkit-text-fill-color: var(--electric);

    background: none;

}

.cta-section__desc {

    font-size: 1rem;

    color: rgba(255,255,255,.70);

    font-weight: 300;

    margin: 0;

    line-height: 1.7;

}

.cta-section__actions {

    display: flex;

    gap: 1rem;

    flex-wrap: wrap;

    flex-shrink: 0;

}



/* Section başlık yardımcıları (koyu bölüm için) */

.section-title--white { color: #ffffff; }

.section-desc--white  { color: rgba(255,255,255,.60); }

.section-label--dark  { border-color: rgba(0,180,216,.3); background: rgba(0,180,216,.08); color: var(--electric); }

.section-line--white  { background: var(--electric); opacity: .5; }

.how-accent {

    color: var(--electric);

    -webkit-text-fill-color: var(--electric);

    background: none;

}



/* ── RESPONSIVE ────────────────────────────────────────────── */

@media (max-width: 1024px) {

    .features-grid   { grid-template-columns: repeat(2, 1fr); }

    .boats-grid      { grid-template-columns: repeat(2, 1fr); }

    .reviews-grid    { grid-template-columns: repeat(2, 1fr); }

    .steps-row       { flex-wrap: wrap; }

    .step-item__connector { display: none; }

    .stats-grid      { grid-template-columns: repeat(2, 1fr); }

    .stat-card       { border-right: none; border-bottom: 1px solid rgba(255,255,255,.15); }

    .stat-card:nth-child(odd) { border-right: 1px solid rgba(255,255,255,.15); }

    .stat-card:nth-last-child(-n+2) { border-bottom: none; }

}



@media (max-width: 768px) {

    .features-grid   { grid-template-columns: 1fr; }

    .boats-grid      { grid-template-columns: 1fr; }

    .reviews-grid    { grid-template-columns: 1fr; }

    .stats-grid      { grid-template-columns: repeat(2, 1fr); }

    .stat-card__number { font-size: 2rem; }

    .gallery-masonry {

        grid-template-columns: 1fr 1fr;

        grid-template-rows: auto;

    }

    .gallery-item--tall { grid-row: span 1; }



    .cta-section__inner   { flex-direction: column; text-align: center; }

    .cta-section__actions { justify-content: center; }

}



@media (max-width: 480px) {

    .gallery-masonry { grid-template-columns: 1fr; grid-template-rows: auto; }

    .stats-grid      { grid-template-columns: 1fr 1fr; gap: 0; }

    .stat-card       { padding: 1.5rem 1rem; border-right: none; border-bottom: 1px solid rgba(255,255,255,.15); }

    .stat-card:nth-child(odd) { border-right: 1px solid rgba(255,255,255,.15); }

}



/* ================================================================

   LX — LUXURY NAUTICAL HOMEPAGE SYSTEM v8

   Temiz, editorial, lüks. Gökkuşağı yok. Yapay zeka estetiği yok.

   Palette: #0B1F2A · #1E6FA8 · #4D96C9 · #00B4D8 (turkuaz)

   Fonts: DM Sans (display) · Inter (body)

   ================================================================ */



/* ── Ortak değişkenler (zaten :root'ta var ama kısayol) ── */

:root {

    --lx-ink:     #0B1F2A;

    --lx-navy:    #0B1F2A;

    --lx-gold:    #1E6FA8;

    --lx-gold2:   #175d8e;

    --lx-cream:   #f0f7fc;

    --lx-cream2:  #ddedf8;

    --lx-slate:   #3d5a6a;

    --lx-border:  #cde0f0;

    --lx-ease:    cubic-bezier(0.16,1,0.3,1);

}



/* ─────────────────────────────────────────────────────────────────

   MARQUEE

───────────────────────────────────────────────────────────────── */

.lx-marquee {

    background: var(--lx-ink);

    overflow: hidden;

    border-top: 1px solid rgba(30,111,168,.15);

    border-bottom: 1px solid rgba(30,111,168,.15);

    position: relative;

}

.lx-marquee::before,

.lx-marquee::after {

    content: '';

    position: absolute;

    top: 0; bottom: 0;

    width: 100px;

    z-index: 2;

    pointer-events: none;

}

.lx-marquee::before { left: 0;  background: linear-gradient(to right, var(--lx-ink), transparent); }

.lx-marquee::after  { right: 0; background: linear-gradient(to left,  var(--lx-ink), transparent); }



.lx-marquee__track {

    display: flex;

    width: max-content;

    animation: lxMarquee 28s linear infinite;

}

.lx-marquee__track:hover { animation-play-state: paused; }

.lx-marquee__list {

    display: flex;

    align-items: center;

    list-style: none;

    padding: 0; margin: 0;

}

.lx-marquee__list li {

    padding: .75rem 2.25rem;

    font-size: .67rem;

    font-weight: 700;

    letter-spacing: .2em;

    text-transform: uppercase;

    color: rgba(255,255,255,.38);

    white-space: nowrap;

    font-family: var(--font);

    transition: color .2s;

}

.lx-marquee__list li:hover { color: var(--lx-gold); }



@keyframes lxMarquee {

    from { transform: translateX(0); }

    to   { transform: translateX(-50%); }

}



/* ─────────────────────────────────────────────────────────────────

   HİZMET ŞERİDİ

───────────────────────────────────────────────────────────────── */

/* ═══════════════════════════════════════════════════════════════

   HİZMET ŞERİDİ — Seafarer Editorial Tarzı

   ═══════════════════════════════════════════════════════════════ */

.lx-services {

    background: var(--surface-container-lowest);

    border-top: none;

    border-bottom: none;

    position: relative;

    z-index: 2;

}

.lx-services__inner {

    display: grid;

    grid-template-columns: repeat(4, 1fr);

    align-items: stretch;

    max-width: 960px;

    margin: 0 auto;

}

.lx-service {

    display: flex;

    flex-direction: column;

    align-items: flex-start;

    gap: 1rem;

    padding: 2.5rem 2rem;

    cursor: default;

    transition: background var(--t-base);

    position: relative;

    border-right: 1px solid var(--outline-variant);

}

.lx-service:last-child { border-right: none; }

.lx-service::before {

    content: '';

    position: absolute;

    top: 0; left: 0; right: 0;

    height: 2px;

    background: var(--lx-gold);

    transform: scaleX(0);

    transition: transform var(--t-base);

    transform-origin: left;

}

.lx-service:hover { background: var(--surface-container-low); }

.lx-service:hover::before { transform: scaleX(1); }



.lx-service__icon {

    width: 52px; height: 52px;

    border-radius: 6px;

    background: rgba(30,111,168,.07);

    border: 1px solid rgba(30,111,168,.18);

    color: var(--lx-gold);

    display: flex; align-items: center; justify-content: center;

    font-size: 1.25rem; flex-shrink: 0;

    transition: background var(--t-base), color var(--t-base), transform var(--t-base), border-color var(--t-base);

}

.lx-service:hover .lx-service__icon {

    background: var(--lx-gold);

    color: #fff;

    border-color: var(--lx-gold);

    transform: translateY(-3px);

}

.lx-service__text {

    flex: 1;

}

.lx-service__text strong {

    display: block;

    font-size: .9rem;

    font-weight: 700;

    color: var(--lx-ink);

    font-family: var(--font);

    margin-bottom: .3rem;

    letter-spacing: -.01em;

}

.lx-service__text span {

    font-size: .75rem;

    color: var(--lx-slate);

    line-height: 1.55;

    display: block;

}

/* Eski divider — artık kullanılmıyor */

.lx-service__div { display: none; }



@media(max-width:1100px){

    .lx-services__inner { grid-template-columns: repeat(2,1fr); }

    .lx-service { border-bottom: 1px solid var(--outline-variant); }

    .lx-service:nth-child(2n) { border-right: none; }

    .lx-service:nth-child(odd) { border-right: 1px solid var(--outline-variant); }

}

@media(max-width:640px) {

    .lx-services__inner { grid-template-columns: repeat(2,1fr); }

    .lx-service { padding: 1.5rem 1.25rem; }

    .lx-service:nth-child(2n) { border-right: none; }

    .lx-service:nth-child(odd) { border-right: 1px solid var(--outline-variant); }

}



/* ─────────────────────────────────────────────────────────────────

   GENEL TYPOGRAPHY YARDIMCILARI

───────────────────────────────────────────────────────────────── */

.lx-overline {

    display: inline-flex;

    align-items: center;

    gap: .75rem;

    font-size: .67rem;

    font-weight: 700;

    letter-spacing: .2em;

    text-transform: uppercase;

    color: var(--lx-gold);

    margin-bottom: .9rem;

    font-family: var(--font);

}

.lx-overline span {

    display: block;

    width: 28px; height: 1px;

    background: var(--lx-gold);

    flex-shrink: 0;

}

.lx-overline--center { justify-content: center; }

.lx-overline--light  { color: rgba(255,255,255,.5); }

.lx-overline--light span { background: rgba(255,255,255,.3); }



.lx-h2 {

    font-family: var(--font-display);

    font-size: clamp(2rem, 3.8vw, 3.1rem);

    font-weight: 700;

    color: var(--lx-ink);

    line-height: 1.15;

    letter-spacing: -.02em;

    margin-bottom: .85rem;

}

.lx-h2 em { font-style: normal; color: var(--lx-gold); -webkit-text-fill-color: var(--lx-gold); background: none; }

.lx-h2--white { color: #fff; }

.lx-h2--white em { color: var(--lx-gold); -webkit-text-fill-color: var(--lx-gold); }



.lx-lead {

    font-size: .97rem;

    color: var(--lx-slate);

    line-height: 1.85;

    max-width: 480px;

    margin: 0;

}

.lx-lead--light { color: rgba(255,255,255,.55); max-width: 520px; }



.lx-section-head {

    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    gap: 2rem;

    margin-bottom: 3.5rem;

    flex-wrap: wrap;

}

.lx-section-head__left { flex: 1; }

.lx-section-head--center {

    flex-direction: column;

    align-items: center;

    text-align: center;

}

.lx-section-head--center .lx-lead { margin: 0 auto; }



.lx-text-link {

    display: inline-flex;

    align-items: center;

    gap: .5rem;

    font-size: .73rem;

    font-weight: 700;

    letter-spacing: .1em;

    text-transform: uppercase;

    color: var(--lx-ink);

    text-decoration: none;

    border-bottom: 1.5px solid var(--lx-gold);

    padding-bottom: 2px;

    white-space: nowrap;

    flex-shrink: 0;

    align-self: flex-end;

    margin-bottom: .2rem;

    transition: color var(--t-fast), border-color var(--t-fast);

    font-family: var(--font);

}

.lx-text-link:hover { color: var(--lx-gold); }

.lx-text-link i { transition: transform var(--t-fast); }

.lx-text-link:hover i { transform: translateX(4px); }



/* ─────────────────────────────────────────────────────────────────

   BUTONLAR

───────────────────────────────────────────────────────────────── */

.lx-btn-primary {

    display: inline-flex; align-items: center; gap: .55rem;

    background: var(--primary-container); color: var(--on-primary);

    font-size: .78rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase;

    padding: .85rem 2rem; border-radius: var(--r-md);

    border: none;

    text-decoration: none;

    box-shadow: var(--shadow-card);

    transition: background var(--t-fast), transform var(--t-fast), box-shadow var(--t-fast);

    font-family: var(--font);

}

.lx-btn-primary:hover { background: var(--navy-800); transform: translateY(-2px); color: var(--on-primary); box-shadow: 0px 12px 32px rgba(9,30,41,.12); }



.lx-btn-reserve {

    display: inline-flex; align-items: center; gap: .4rem;

    background: var(--primary-container); color: var(--on-primary);

    font-size: .72rem; font-weight: 700; letter-spacing: .04em;

    padding: .55rem 1.1rem; border-radius: var(--r-md);

    border: none;

    text-decoration: none; white-space: nowrap;

    box-shadow: var(--shadow-card);

    transition: background var(--t-fast), transform var(--t-fast);

    font-family: var(--font);

}

.lx-btn-reserve:hover { background: var(--navy-800); transform: translateY(-1px); color: var(--on-primary); }



.lx-btn-outline-light {

    display: inline-flex; align-items: center; gap: .55rem;

    background: transparent;

    border: 1px solid rgba(255,255,255,.35);

    color: #fff;

    font-size: .75rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase;

    padding: .8rem 1.85rem; border-radius: 4px;

    text-decoration: none;

    transition: background var(--t-base), border-color var(--t-base);

    font-family: var(--font);

}

.lx-btn-outline-light:hover { background: var(--lx-gold); border-color: var(--lx-gold); color: #fff; }



.lx-btn-outline-white {

    display: inline-flex; align-items: center; gap: .55rem;

    background: transparent; border: 1px solid rgba(255,255,255,.5);

    color: #fff;

    font-size: .75rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase;

    padding: .8rem 1.85rem; border-radius: 4px; text-decoration: none;

    transition: background var(--t-base), border-color var(--t-base);

    font-family: var(--font);

}

.lx-btn-outline-white:hover { background: rgba(255,255,255,.1); border-color: rgba(255,255,255,.8); color: #fff; }



.lx-btn-outline-navy {

    display: inline-flex; align-items: center; gap: .55rem;

    background: transparent;

    border: 2px solid var(--lx-navy);

    color: var(--lx-navy);

    font-size: .75rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;

    padding: .85rem 2.25rem; border-radius: var(--r-md); text-decoration: none;

    transition: background var(--t-base), color var(--t-base), border-color var(--t-base);

    font-family: var(--font);

}

.lx-btn-outline-navy:hover { background: var(--lx-navy); color: #fff; border-color: var(--lx-navy); }



/* ─────────────────────────────────────────────────────────────────

   FLO & CHIP — genel bileşenler

───────────────────────────────────────────────────────────────── */

.lx-chip {

    font-size: .68rem; font-weight: 600;

    color: var(--on-surface-variant);

    background: var(--surface-container-high);

    border: none;

    padding: .22rem .7rem;

    border-radius: var(--r-full);

    display: inline-flex; align-items: center; gap: .3rem;

    font-family: var(--font);

    transition: background var(--t-fast), color var(--t-fast);

}

.lx-chip i { color: var(--secondary); font-size: .62rem; }

.lx-chip.active,

.lx-chip:hover {

    background: var(--secondary-fixed);

    color: var(--on-surface);

}



.lx-avail-badge {

    font-size: .64rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase;

    padding: .28rem .7rem;

    border-radius: 3px;

    display: inline-flex; align-items: center; gap: .3rem;

    backdrop-filter: blur(8px);

}

.lx-avail-badge i { font-size: .38rem; }

.lx-avail-badge--yes { background: rgba(16,185,129,.85); color: #fff; }

.lx-avail-badge--no  { background: rgba(220,38,38,.8);   color: #fff; }



.lx-type-badge {

    font-size: .64rem; font-weight: 600; letter-spacing: .05em; text-transform: uppercase;

    padding: .28rem .7rem; border-radius: 3px;

    background: rgba(13,27,42,.65); color: #fff;

    backdrop-filter: blur(6px);

}



.lx-price { display: flex; align-items: baseline; gap: .25rem; }

.lx-price__num  { font-family: var(--font-display); font-size: 1.3rem; font-weight: 700; color: var(--lx-ink); letter-spacing: -.02em; }

.lx-price__per  { font-size: .7rem; color: var(--lx-slate); }

.lx-price__call { font-size: .82rem; color: var(--lx-slate); font-style: italic; }



.lx-empty {

    text-align: center; padding: 4rem 2rem;

    background: var(--lx-cream); border: 2px dashed var(--lx-cream2);

    border-radius: 8px; margin-top: 2rem;

}

.lx-empty i    { font-size: 3rem; color: var(--lx-gold); opacity: .4; display: block; margin-bottom: 1rem; }

.lx-empty h3   { font-size: 1.25rem; font-weight: 700; color: var(--lx-ink); margin-bottom: .5rem; }

.lx-empty p    { color: var(--lx-slate); margin-bottom: 1.5rem; }



.lx-center-cta { text-align: center; margin-top: 3rem; }



/* ─────────────────────────────────────────────────────────────────

   FİLO — TEKNE GRID

───────────────────────────────────────────────────────────────── */

.lx-fleet {

    padding: 6rem 0;

    background: var(--surface-container-low);

    position: relative;

}

.lx-fleet::before {

    content: '';

    position: absolute; top: 0; left: 0; right: 0;

    height: 3px;

    background: linear-gradient(90deg, transparent, var(--lx-gold), transparent);

}



.lx-fleet__grid {

    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 1.75rem;

}

.lx-boat-card--hero { grid-column: span 1; box-shadow: 0 0 0 2px var(--primary, #1e6fa8), 0 8px 32px rgba(30,111,168,0.18); }

.lx-boat-card--hero .lx-boat-card__media { height: 300px; }



.lx-boat-card {

    background: var(--surface-container-lowest);

    border: none;

    border-radius: var(--r-md);

    overflow: hidden;

    box-shadow: var(--shadow-card);

    display: flex; flex-direction: column;

    transition: transform var(--t-base), box-shadow var(--t-base);

}

.lx-boat-card:hover {

    transform: translateY(-8px);

    box-shadow: 0px 20px 56px rgba(9, 30, 41, 0.12);

}



.lx-boat-card__media {

    position: relative; height: 230px; overflow: hidden;

    background: var(--lx-cream2); flex-shrink: 0;

}

.lx-boat-card__media img {

    width: 100%; height: 100%; object-fit: cover; display: block;

    transition: transform .8s var(--lx-ease);

}

.lx-boat-card:hover .lx-boat-card__media img { transform: scale(1.07); }



.lx-boat-card__badges {

    position: absolute; top: .85rem; left: .85rem;

    display: flex; gap: .5rem; flex-wrap: wrap;

}



.lx-boat-card__hover {

    position: absolute; inset: 0;

    background: linear-gradient(to top, rgba(13,27,42,.75) 0%, transparent 60%);

    display: flex; align-items: flex-end; justify-content: center;

    padding-bottom: 1.4rem;

    opacity: 0; transition: opacity var(--t-base);

}

.lx-boat-card:hover .lx-boat-card__hover { opacity: 1; }



.lx-hover-btn {

    background: var(--lx-gold); color: #fff;

    font-size: .73rem; font-weight: 700; letter-spacing: .04em;

    padding: .6rem 1.4rem; border-radius: 4px; text-decoration: none;

    display: inline-flex; align-items: center; gap: .4rem;

    transform: translateY(10px); transition: transform var(--t-base), background var(--t-fast);

    font-family: var(--font);

}

.lx-boat-card:hover .lx-hover-btn { transform: translateY(0); }

.lx-hover-btn:hover { background: var(--lx-gold2); color: #fff; }



.lx-boat-card__body {

    padding: 1.5rem 1.6rem 1.75rem;

    display: flex; flex-direction: column; flex: 1;

}

.lx-boat-card__chips { display: flex; gap: .45rem; flex-wrap: wrap; margin-bottom: .85rem; }

.lx-boat-card__name {

    font-family: var(--font-display);

    font-size: 1.2rem; font-weight: 600; color: var(--lx-ink);

    margin-bottom: .45rem; line-height: 1.3;

}

.lx-boat-card__desc {

    font-size: .84rem; color: var(--lx-slate);

    line-height: 1.7; flex: 1; margin-bottom: 1rem;

}

.lx-boat-card__footer {

    display: flex; align-items: center; justify-content: space-between; gap: .75rem;

    padding-top: 1rem; border-top: 1px solid var(--outline-variant);

}



@media(max-width:1023px) {

    .lx-fleet__grid { grid-template-columns: repeat(2,1fr); }

    .lx-boat-card--hero { grid-column: span 1; }

    .lx-boat-card--hero .lx-boat-card__media { height: 260px; }

}

@media(max-width:639px) {

    .lx-fleet__grid { grid-template-columns: 1fr; }

    .lx-boat-card--hero { grid-column: span 1; }

    .lx-boat-card--hero .lx-boat-card__media { height: 230px; }

}



/* ─────────────────────────────────────────────────────────────────

   HAKKIMIZDA — Split

───────────────────────────────────────────────────────────────── */

/* ═══════════════════════════════════════════════════════════════

   HAKKIMIZDA — "Sizinle Denizi Keşfedelim" — Full Redesign

   ═══════════════════════════════════════════════════════════════ */

.lx-about {

    position: relative;

    background: #0B1F2A;

    overflow: hidden;

    padding: 0;

}



/* Arka plan foto */

.lx-about__bg-wrap {

    position: absolute;

    inset: 0;

    z-index: 0;

}

.lx-about__bg-img {

    width: 100%; height: 100%;

    object-fit: cover; object-position: center 40%;

    display: block;

    filter: brightness(.28) saturate(.9);

    transform: scale(1.04);

    transition: transform 10s ease;

}

.lx-about:hover .lx-about__bg-img { transform: scale(1); }



/* Renk overlay katmanı */

.lx-about__overlay {

    position: absolute; inset: 0; z-index: 1;

    background:

        linear-gradient(135deg, rgba(11,31,42,.96) 0%, rgba(11,31,42,.88) 50%, rgba(11,31,42,.94) 100%);

}



/* Altın dekoratif çerçeve */

.lx-about__frame {

    position: absolute;

    top: 3rem; left: 3rem; right: 3rem; bottom: 3rem;

    border: 1px solid rgba(30,111,168,.1);

    border-radius: 4px;

    pointer-events: none; z-index: 2;

}

.lx-about__frame::before {

    content: '';

    position: absolute;

    top: -1px; left: 2rem; right: 2rem;

    height: 2px;

    background: linear-gradient(90deg, transparent, rgba(30,111,168,.45), transparent);

}

.lx-about__frame::after {

    content: '';

    position: absolute;

    bottom: -1px; left: 2rem; right: 2rem;

    height: 2px;

    background: linear-gradient(90deg, transparent, rgba(30,111,168,.45), transparent);

}



/* İçerik wrapper */

.lx-about__inner {

    position: relative; z-index: 3;

    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 5rem;

    align-items: center;

    max-width: 1280px;

    margin: 0 auto;

    padding: 7rem 4rem;

}



/* Sol: metin + stat */

.lx-about__content {}



.lx-about__desc {

    font-size: 1rem; color: rgba(255,255,255,.6);

    line-height: 1.9; max-width: 440px;

    margin-bottom: 3rem;

    font-weight: 300;

}



.lx-stats-grid {

    display: grid; grid-template-columns: 1fr 1fr;

    margin-bottom: 3rem;

    gap: 0;

    border: 1px solid rgba(255,255,255,.08);

    border-radius: 6px;

    overflow: hidden;

}

.lx-stat {

    padding: 1.85rem 1.5rem;

    border-right: 1px solid rgba(255,255,255,.08);

    border-bottom: 1px solid rgba(255,255,255,.08);

    transition: background var(--t-base);

}

.lx-stat:hover { background: rgba(255,255,255,.04); }

.lx-stat:nth-child(even) { border-right: none; }

.lx-stat:nth-last-child(-n+2) { border-bottom: none; }

.lx-stat__val {

    font-family: var(--font-display);

    font-size: clamp(2.2rem,3vw,2.8rem);

    font-weight: 700; color: #fff; line-height: 1;

    letter-spacing: -.03em; margin-bottom: .4rem;

    display: flex; align-items: baseline; gap: .06em;

}

.lx-stat:nth-child(odd) .lx-stat__val { color: var(--lx-gold); }

.lx-stat__lbl {

    font-size: .7rem; color: rgba(255,255,255,.38);

    font-weight: 600; text-transform: uppercase; letter-spacing: .12em;

    font-family: var(--font);

}



/* Sağ: görsel kolaj */

.lx-about__visuals {

    position: relative;

    height: 520px;

}

.lx-about__img-main {

    position: absolute;

    top: 0; left: 0;

    width: 75%; height: 80%;

    border-radius: 6px; overflow: hidden;

    border: 3px solid rgba(255,255,255,.12);

    box-shadow: 0 40px 80px rgba(0,0,0,.6);

}

.lx-about__img-main img {

    width: 100%; height: 100%;

    object-fit: cover; display: block;

    transition: transform 8s ease;

}

.lx-about:hover .lx-about__img-main img { transform: scale(1.05); }



.lx-about__img-inset {

    position: absolute;

    bottom: 0; right: 0;

    width: 52%; height: 54%;

    border-radius: 6px; overflow: hidden;

    border: 3px solid rgba(255,255,255,.12);

    box-shadow: 0 24px 60px rgba(0,0,0,.5);

}

.lx-about__img-inset img {

    width: 100%; height: 100%;

    object-fit: cover; display: block;

    transition: transform 8s ease;

}

.lx-about:hover .lx-about__img-inset img { transform: scale(1.05); }



/* Floating badge */

.lx-about__badge {

    position: absolute;

    top: 52%; left: 62%;

    transform: translate(-50%, -50%);

    background: var(--lx-gold);

    color: #fff;

    border-radius: 6px;

    padding: 1.1rem 1.4rem;

    text-align: center;

    z-index: 5;

    box-shadow: 0 12px 40px rgba(30,111,168,.5);

    animation: lxBadgeFloat 3.5s ease-in-out infinite;

    min-width: 100px;

}

@keyframes lxBadgeFloat { 0%,100%{transform:translate(-50%,-50%) translateY(0)} 50%{transform:translate(-50%,-50%) translateY(-8px)} }

.lx-about__badge strong {

    display: block; font-family: var(--font-display);

    font-size: 2rem; font-weight: 700; line-height: 1; letter-spacing: -.02em;

}

.lx-about__badge span {

    display: block; font-size: .6rem; font-weight: 700; letter-spacing: .1em;

    text-transform: uppercase; opacity: .9; margin-top: .35rem; font-family: var(--font);

}



/* Altın dekoratif köşe */

.lx-about__corner {

    position: absolute; bottom: 1rem; left: 0;

    width: 48px; height: 48px;

    border-bottom: 1px solid rgba(30,111,168,.4);

    border-left: 1px solid rgba(30,111,168,.4);

}



@media(max-width:1023px) {

    .lx-about__inner { grid-template-columns:1fr; gap:3rem; padding:5rem 2rem; }

    .lx-about__visuals { height:360px; }

    .lx-about__frame { top:1.5rem; left:1.5rem; right:1.5rem; bottom:1.5rem; }

}

@media(max-width:639px) {

    .lx-about__inner { padding:4rem 1.5rem; }

    .lx-about__visuals { height:280px; }

    .lx-about__img-inset { display:none; }

    .lx-about__img-main { width:100%; height:100%; }

    .lx-about__badge { top:auto; bottom:-1.5rem; left:auto; right:1.5rem; transform:none; animation:none; }

    .lx-about__frame { display:none; }

}



/* Eski sınıflar - geriye dönük uyumluluk */

.lx-about__media { display:none; }

.lx-about__panel { display:none; }

.lx-about__panel-inner { display:none; }

.lx-about__inset { display:none; }

.lx-about__media-overlay { display:none; }

.lx-about__main-img { display:none; }



/* ─────────────────────────────────────────────────────────────────

   GALERİ

───────────────────────────────────────────────────────────────── */

.lx-gallery {

    padding: 6rem 0;

    background: var(--lx-ink);

}

.lx-gallery__grid {

    display: grid;

    grid-template-columns: repeat(3,1fr);

    grid-template-rows: 240px 240px;

    gap: 10px;

    margin-top: 3rem;

    border-radius: 8px; overflow: hidden;

}

.lx-gallery__item {

    position: relative; overflow: hidden;

    cursor: pointer; background: #0B1F2A;

    border: none; padding: 0; display: block; width: 100%;

}

.lx-gallery__item--large { grid-column: span 1; grid-row: span 2; }

.lx-gallery__item img {

    width: 100%; height: 100%; object-fit: cover; display: block;

    transition: transform .7s var(--lx-ease);

}

.lx-gallery__item:hover img { transform: scale(1.08); }

.lx-gallery__ov {

    position: absolute; inset: 0;

    background: linear-gradient(to top, rgba(13,27,42,.75) 0%, rgba(13,27,42,.15) 50%, transparent 100%);

    display: flex; flex-direction: column; align-items: center; justify-content: flex-end;

    padding-bottom: 1.25rem; gap: .5rem;

    opacity: 0; transition: opacity var(--t-base);

}

.lx-gallery__item:hover .lx-gallery__ov { opacity: 1; }

.lx-gallery__ov-icon {

    width: 44px; height: 44px; border-radius: 50%;

    background: rgba(255,255,255,.12); backdrop-filter: blur(6px);

    display: flex; align-items: center; justify-content: center;

    color: #fff; font-size: 1.1rem;

    transform: scale(.8); transition: transform var(--t-base);

}

.lx-gallery__item:hover .lx-gallery__ov-icon { transform: scale(1); }

.lx-gallery__cap { font-size: .78rem; color: rgba(255,255,255,.85); font-weight: 500; }



.lx-gallery__cta { text-align: center; margin-top: 3rem; }



@media(max-width:768px) {

    .lx-gallery__grid { grid-template-columns:1fr 1fr; grid-template-rows:auto; }

    .lx-gallery__item { height:180px; }

    .lx-gallery__item--large { grid-row:span 1; }

}

@media(max-width:480px) {

    .lx-gallery__grid { grid-template-columns:1fr; }

    .lx-gallery__item { height:200px; }

}



/* ─────────────────────────────────────────────────────────────────

   NEDEN BİZ — 6 kart

───────────────────────────────────────────────────────────────── */

.lx-why {

    padding: 6rem 0;

    background: #fff;

}

.lx-why__grid {

    display: grid;

    grid-template-columns: repeat(3,1fr);

    gap: 1.75rem;

    margin-top: 3rem;

}

.lx-why__card {

    background: #fff;

    border: 1px solid var(--outline-variant);

    border-radius: 6px;

    padding: 2.25rem 2rem;

    transition: all var(--t-base);

    position: relative; overflow: hidden;

}

.lx-why__card::before {

    content: '';

    position: absolute; top: 0; left: 0; right: 0; height: 2px;

    background: var(--lx-gold);

    transform: scaleX(0); transition: transform var(--t-base); transform-origin: left;

}

.lx-why__card:hover {

    border-color: transparent;

    box-shadow: 0 10px 40px rgba(13,27,42,.09);

    transform: translateY(-5px);

}

.lx-why__card:hover::before { transform: scaleX(1); }



.lx-why__icon {

    width: 54px; height: 54px; border-radius: 6px;

    background: rgba(30,111,168,.09); color: var(--lx-gold);

    display: flex; align-items: center; justify-content: center;

    font-size: 1.4rem; margin-bottom: 1.35rem;

    transition: background var(--t-base), color var(--t-base), transform var(--t-base);

}

.lx-why__card:hover .lx-why__icon {

    background: var(--lx-gold); color: #fff;

    transform: scale(1.08) rotate(-5deg);

}

.lx-why__title {

    font-family: var(--font-display);

    font-size: 1.1rem; font-weight: 600; color: var(--lx-ink); margin-bottom: .6rem;

}

.lx-why__desc { font-size: .86rem; color: var(--lx-slate); line-height: 1.8; }



@media(max-width:1023px) { .lx-why__grid { grid-template-columns:repeat(2,1fr); } }

@media(max-width:599px)  { .lx-why__grid { grid-template-columns:1fr; } }



/* ─────────────────────────────────────────────────────────────────

   NASIL ÇALIŞIR — Split

───────────────────────────────────────────────────────────────── */

.lx-how {

    display: grid;

    grid-template-columns: 1fr 1fr;

    min-height: 560px;

    overflow: hidden;

}

.lx-how__photo {

    position: relative; overflow: hidden;

}

.lx-how__photo img { width:100%;height:100%;object-fit:cover;display:block; }

.lx-how__photo-dim {

    position: absolute; inset: 0;

    background: linear-gradient(to right, rgba(13,27,42,.3) 0%, transparent 55%);

}

.lx-how__panel {

    background: #0B1F2A;

    display: flex; align-items: center;

    position: relative; overflow: hidden;

}

.lx-how__panel::before {

    content:''; position:absolute; inset:0;

    background: radial-gradient(ellipse at 100% 0%, rgba(30,111,168,.08) 0%, transparent 55%);

    pointer-events:none;

}

.lx-how__panel::after {

    content:''; position:absolute;

    bottom: 2rem; left: 2rem;

    width: 64px; height: 64px;

    border-bottom: 1px solid rgba(30,111,168,.2);

    border-left:  1px solid rgba(30,111,168,.2);

    pointer-events:none;

}

.lx-how__panel-inner {

    position: relative; z-index: 1;

    padding: 4.5rem 4rem 4.5rem 4.5rem;

    width: 100%;

}

.lx-how__sub {

    font-size: .92rem; color: rgba(255,255,255,.48);

    line-height: 1.8; margin-bottom: 2.75rem; max-width: 380px;

}



.lx-steps { list-style: none; display: flex; flex-direction: column; gap: 0; padding: 0; margin: 0; }

.lx-step {

    display: flex; align-items: flex-start; gap: 1.35rem;

    padding: 1.6rem 0;

    border-bottom: 1px solid rgba(255,255,255,.07);

    transition: padding var(--t-base);

}

.lx-step:last-child { border-bottom: none; }

.lx-step:hover { padding-left: .6rem; }



.lx-step__num {

    font-family: var(--font-display);

    font-size: 3rem; font-weight: 700;

    color: rgba(30,111,168,.12); line-height: 1;

    letter-spacing: -.04em; min-width: 3rem; flex-shrink: 0;

    transition: color var(--t-base);

}

.lx-step:hover .lx-step__num { color: rgba(30,111,168,.3); }

.lx-step__body { flex: 1; }

.lx-step__icon {

    width: 38px; height: 38px; border-radius: 50%;

    background: rgba(30,111,168,.1); border: 1px solid rgba(30,111,168,.22);

    display: flex; align-items: center; justify-content: center;

    font-size: .95rem; color: var(--lx-gold);

    margin-bottom: .6rem;

    transition: background var(--t-base), border-color var(--t-base);

}

.lx-step:hover .lx-step__icon { background: var(--lx-gold); border-color: var(--lx-gold); color: #fff; }

.lx-step__title {

    font-family: var(--font-display);

    font-size: 1rem; font-weight: 600; color: #fff; margin-bottom: .4rem;

}

.lx-step__desc  { font-size: .84rem; color: rgba(255,255,255,.45); line-height: 1.7; margin-bottom: .65rem; }

.lx-step__link  {

    font-size: .7rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;

    color: var(--lx-gold); text-decoration: none;

    display: inline-flex; align-items: center; gap: .35rem;

    transition: gap var(--t-fast), color var(--t-fast);

    font-family: var(--font);

}

.lx-step__link:hover { gap: .6rem; color: rgba(30,111,168,.75); }



@media(max-width:1023px) {

    .lx-how { grid-template-columns:1fr; min-height:auto; }

    .lx-how__photo { height:300px; }

    .lx-how__panel-inner { padding:3.5rem 2rem; }

}

@media(max-width:639px) {

    .lx-how__photo { height:220px; }

    .lx-how__panel-inner { padding:2.5rem 1.5rem; }

}



/* ─────────────────────────────────────────────────────────────────

   YORUMLAR

───────────────────────────────────────────────────────────────── */

.lx-reviews {

    padding: 6rem 0;

    background: var(--surface-container-low);

}

.lx-reviews__grid {

    display: grid;

    grid-template-columns: repeat(2,1fr);

    gap: 1.75rem;

    margin-top: 3rem;

}

.lx-review {

    background: var(--surface-container-lowest);

    border: none;

    border-radius: var(--r-md);

    padding: 2.25rem 2.25rem 2rem;

    position: relative;

    display: flex; flex-direction: column; gap: .9rem;

    transition: all var(--t-base); overflow: hidden;

    box-shadow: var(--shadow-card);

}

.lx-review::before {

    content: ''; position: absolute;

    top: 0; left: 0; right: 0; height: 2px;

    background: linear-gradient(90deg, var(--lx-gold), transparent);

    opacity: 0; transition: opacity var(--t-base);

}

.lx-review:hover {

    box-shadow: 0px 20px 48px rgba(9, 30, 41, 0.10);

    transform: translateY(-4px);

}

.lx-review:hover::before { opacity: 1; }



.lx-review__quote {

    position: absolute; top: 1.5rem; right: 2rem;

    font-family: var(--font-display);

    font-size: 3.5rem; line-height: 1;

    color: var(--lx-gold); opacity: .08;

}

.lx-review__stars { display: flex; gap: .28rem; }

.lx-review__stars .fa-star       { color: var(--lx-gold); font-size: .85rem; }

.lx-review__stars .fa-star.empty { color: #ddd; }

.lx-review__text {

    font-family: var(--font-display);

    font-style: italic;

    font-size: .92rem; line-height: 1.85; color: var(--lx-slate); flex: 1;

}

.lx-review__author { display: flex; align-items: center; gap: .9rem; }

.lx-review__avatar {

    width: 44px; height: 44px; border-radius: 50%; flex-shrink: 0;

    background: var(--lx-navy); color: #fff;

    font-size: 1rem; font-weight: 700;

    display: flex; align-items: center; justify-content: center;

    font-family: var(--font-display);

}

.lx-review__name { font-size: .85rem; font-weight: 700; color: var(--lx-ink); display: block; margin-bottom: 2px; font-family: var(--font); }

.lx-review__date { font-size: .72rem; color: var(--lx-slate); }



@media(max-width:768px) { .lx-reviews__grid { grid-template-columns:1fr; } }



/* ─────────────────────────────────────────────────────────────────

   ÜRÜNLER

───────────────────────────────────────────────────────────────── */

.lx-products {

    padding: 6rem 0;

    background: var(--surface-container-lowest);

    overflow: hidden;

}

.lx-carousel-wrap { position: relative; overflow: visible; margin: 2.5rem 0 0; padding: 0 2.5rem; }

.lx-carousel {

    display: flex; gap: 1.25rem;

    transition: transform .45s var(--lx-ease);

    will-change: transform;

    overflow: hidden;

}

.lx-product-slide { flex: 0 0 calc(25% - 1rem); min-width: 0; }

@media(max-width:1023px) { .lx-product-slide { flex: 0 0 calc(50% - .625rem); } }

@media(max-width:639px)  { .lx-product-slide { flex: 0 0 100%; } }



.lx-product-card {

    display: block; background: var(--surface-container-lowest); border-radius: var(--r-md); overflow: hidden;

    box-shadow: var(--shadow-card);

    border: none;

    text-decoration: none;

    transition: transform var(--t-base), box-shadow var(--t-base);

}

.lx-product-card:hover { transform: translateY(-5px); box-shadow: 0px 20px 48px rgba(9, 30, 41, 0.12); }



.lx-product-card__img { position: relative; height: 200px; overflow: hidden; }

.lx-product-card__img img { width:100%;height:100%;object-fit:cover; transition: transform .6s var(--lx-ease); }

.lx-product-card:hover .lx-product-card__img img { transform: scale(1.08); }

.lx-product-card__discount {

    position: absolute; top: .6rem; right: .6rem;

    background: #dc2626; color: #fff;

    font-size: .68rem; font-weight: 800; padding: .2rem .55rem; border-radius: 3px;

}

.lx-product-card__cat {

    position: absolute; bottom: .6rem; left: .6rem;

    background: rgba(13,27,42,.7); color: #fff;

    font-size: .66rem; font-weight: 600; padding: .2rem .55rem; border-radius: 3px;

    backdrop-filter: blur(6px); letter-spacing: .04em; text-transform: uppercase;

}

.lx-product-card__body { padding: 1rem 1.1rem 1.25rem; }

.lx-product-card__name {

    font-size: .9rem; font-weight: 700; color: var(--lx-ink);

    margin-bottom: .5rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;

}

.lx-product-card__price-row { display: flex; align-items: center; gap: .5rem; }

.lx-product-card__price { font-size: 1.05rem; font-weight: 800; color: var(--lx-ink); }

.lx-product-card__old { font-size: .82rem; color: var(--lx-slate); text-decoration: line-through; }



.lx-carousel-btn {

    position: absolute; top: 50%; transform: translateY(-50%);

    width: 2.8rem; height: 2.8rem; border-radius: 50%;

    background: #fff; border: none; box-shadow: 0 4px 20px rgba(13,27,42,.12);

    color: var(--lx-ink); font-size: 1rem;

    display: flex; align-items: center; justify-content: center;

    cursor: pointer; z-index: 10;

    transition: background var(--t-fast), color var(--t-fast), transform var(--t-fast);

}

.lx-carousel-btn:hover { background: var(--lx-gold); color: #fff; transform: translateY(-50%) scale(1.1); }

.lx-carousel-btn--prev { left: 0; }

.lx-carousel-btn--next { right: 0; }

@media(max-width:639px) { .lx-carousel-btn { display:none; } }



.lx-carousel-dots { display: flex; align-items: center; justify-content: center; gap: .5rem; margin-top: 1.5rem; }

.lx-dot {

    width: .55rem; height: .55rem; border-radius: 50%;

    background: #ccc; border: none; cursor: pointer; padding: 0;

    transition: background var(--t-fast), width var(--t-fast);

}

.lx-dot.active { background: var(--lx-gold); width: 1.6rem; border-radius: 3px; }



/* ─────────────────────────────────────────────────────────────────

   CTA

───────────────────────────────────────────────────────────────── */

.lx-cta {

    position: relative; overflow: hidden;

    padding: 7rem 0; min-height: 460px;

    display: flex; align-items: center;

}

.lx-cta__bg { position: absolute; inset: 0; z-index: 0; }

.lx-cta__bg img { width:100%;height:100%;object-fit:cover;object-position:center 55%; }

.lx-cta__overlay {

    position: absolute; inset: 0;

    background: linear-gradient(135deg, rgba(13,27,42,.93) 0%, rgba(11,31,42,.87) 60%, rgba(1,57,100,.65) 100%);

}

.lx-cta__frame {

    position: absolute;

    top: 2.5rem; left: 2.5rem; right: 2.5rem; bottom: 2.5rem;

    border: 1px solid rgba(30,111,168,.15);

    border-radius: 6px;

    pointer-events: none; z-index: 1;

}

.lx-cta__inner {

    position: relative; z-index: 2;

    display: flex; align-items: center;

    justify-content: space-between;

    gap: 3rem; flex-wrap: wrap;

}

.lx-cta__title {

    font-family: var(--font-display);

    font-size: clamp(1.85rem, 3.5vw, 2.9rem);

    font-weight: 700; color: #fff;

    line-height: 1.2; letter-spacing: -.01em;

    margin-bottom: .9rem;

}

.lx-cta__title em { font-style: normal; color: var(--lx-gold); -webkit-text-fill-color: var(--lx-gold); background: none; }

.lx-cta__desc { font-size: 1rem; color: rgba(255,255,255,.6); font-weight: 300; margin: 0; line-height: 1.75; }

.lx-cta__actions { display: flex; gap: 1rem; flex-wrap: wrap; flex-shrink: 0; }



.lx-cta-btn-primary {

    display: inline-flex; align-items: center; gap: .55rem;

    background: #fff; color: var(--lx-ink);

    font-size: .78rem; font-weight: 700; letter-spacing: .05em; text-transform: uppercase;

    padding: .9rem 2rem; border-radius: 4px; text-decoration: none;

    transition: background var(--t-fast), color var(--t-fast), transform var(--t-fast);

    font-family: var(--font); white-space: nowrap;

}

.lx-cta-btn-primary:hover { background: var(--lx-gold); color: #fff; transform: translateY(-2px); }



.lx-cta-btn-outline {

    display: inline-flex; align-items: center; gap: .55rem;

    background: transparent; color: #fff;

    border: 1px solid rgba(255,255,255,.38);

    font-size: .78rem; font-weight: 600; letter-spacing: .05em; text-transform: uppercase;

    padding: .9rem 2rem; border-radius: 4px; text-decoration: none;

    transition: background var(--t-base), border-color var(--t-base), transform var(--t-fast);

    font-family: var(--font); white-space: nowrap;

}

.lx-cta-btn-outline:hover { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.7); color: #fff; transform: translateY(-2px); }



@media(max-width:768px) {

    .lx-cta__inner { flex-direction: column; text-align: center; }

    .lx-cta__actions { justify-content: center; }

    .lx-cta__frame { display: none; }

}

/* ================================================================

   BOATS INDEX PAGE — boats/index.php

   Tema: Maritime Blue | Palette & font: main.css tokens

================================================================ */



/* ─────────────────────────────────────────────────────────────────

   HERO

───────────────────────────────────────────────────────────────── */

.boats-hero {

    position: relative;

    height: 100vh;

    min-height: 600px;

    max-height: 860px;

    display: flex;

    align-items: center;

    overflow: hidden;

    background: var(--navy-900);

}

.boats-hero__bg { position: absolute; inset: 0; }

.boats-hero__img {

    width: 100%; height: 100%;

    object-fit: cover; object-position: center 40%;

    transform: scale(1.04);

    animation: boatsHeroZoom 12s ease-out forwards;

}

@keyframes boatsHeroZoom {

    from { transform: scale(1.04); }

    to   { transform: scale(1.0); }

}

.boats-hero__overlay {

    position: absolute; inset: 0;

    background:

        linear-gradient(to bottom, rgba(11,31,42,0.55) 0%, rgba(11,31,42,0.3) 40%, rgba(11,31,42,0.80) 100%),

        linear-gradient(to right,  rgba(11,31,42,0.55) 0%, transparent 60%);

}

.boats-hero__container {

    position: relative; z-index: 2;

    display: flex; flex-direction: column; justify-content: flex-end;

    height: 100%; padding-bottom: 80px; padding-top: 140px;

}

.boats-breadcrumb {

    display: flex; align-items: center; gap: var(--sp-3); margin-bottom: var(--sp-10);

    font-size: 0.68rem; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase;

    color: rgba(255,255,255,0.4);

}

.boats-breadcrumb__link {

    color: rgba(255,255,255,0.4); text-decoration: none;

    transition: color var(--t-fast);

}

.boats-breadcrumb__link:hover { color: var(--turquoise); }

.boats-breadcrumb__sep { opacity: 0.3; }

.boats-breadcrumb__current { color: rgba(255,255,255,0.7); }



.boats-hero__content { max-width: 680px; }

.boats-hero__eyebrow {

    display: flex; align-items: center; gap: var(--sp-4); margin-bottom: var(--sp-5);

    font-size: 0.68rem; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase;

    color: var(--turquoise);

}

.boats-eyebrow-line {

    display: block; width: 36px; height: 1px;

    background: var(--turquoise); opacity: 0.6;

}

.boats-hero__title {

    font-family: var(--font-display);

    font-size: var(--text-hero); font-weight: 800;

    color: #fff; line-height: 1.0; margin-bottom: var(--sp-5); letter-spacing: -0.03em;

}

.boats-hero__subtitle {

    color: rgba(255,255,255,0.6);

    font-size: var(--text-lg); line-height: 1.75;

    max-width: 480px; font-weight: 300;

}

.boats-hero__scroll {

    position: absolute; bottom: 36px; right: 0;

    display: flex; flex-direction: column; align-items: center; gap: var(--sp-3);

    font-size: 9px; font-weight: 700; letter-spacing: 3px; text-transform: uppercase;

    color: rgba(255,255,255,0.35); writing-mode: vertical-rl;

}

.boats-scroll-line {

    width: 1px; height: 50px;

    background: linear-gradient(to bottom, rgba(255,255,255,0.35), transparent);

    animation: boatsScrollPulse 2s ease-in-out infinite;

}

@keyframes boatsScrollPulse {

    0%,100% { transform: scaleY(1); opacity: .35; }

    50%      { transform: scaleY(.6); opacity: .6; }

}



/* ─────────────────────────────────────────────────────────────────

   MAIN LISTING

───────────────────────────────────────────────────────────────── */

.boats-main {

    background: var(--surface-container-low);

    padding: 0 0 var(--sp-20);

}



.boats-header-bar {

    display: flex; align-items: center; justify-content: space-between;

    flex-wrap: wrap; gap: var(--sp-4);

    padding: var(--sp-8) 0 var(--sp-6);

    border-bottom: 1px solid var(--border);

    margin-bottom: var(--sp-10);

}

.boats-header-bar__left { display: flex; align-items: baseline; gap: var(--sp-4); }

.boats-header-bar__title {

    font-family: var(--font-display);

    font-size: var(--text-xl); font-weight: 700; color: var(--text-dark);

}

.boats-header-bar__count { font-size: var(--text-sm); color: var(--text-muted); font-weight: 500; }

.boats-header-bar__count strong { color: var(--secondary); font-size: var(--text-lg); font-weight: 800; }

.boats-header-bar__filters { display: flex; align-items: center; gap: var(--sp-3); }



/* Filter tabs */

.filter-tabs {

    display: flex;

    background: var(--surface);

    border: 1px solid var(--border);

    border-radius: var(--r-md);

    overflow: hidden;

}

.filter-tab {

    padding: 8px 16px;

    background: transparent; border: none; border-right: 1px solid var(--border);

    font-family: var(--font); font-size: var(--text-xs); font-weight: 700;

    color: var(--text-muted); cursor: pointer; letter-spacing: 0.04em;

    transition: all var(--t-fast); white-space: nowrap;

}

.filter-tab:last-child { border-right: none; }

.filter-tab:hover { color: var(--text-dark); background: var(--surface-container-low); }

.filter-tab--active { background: var(--navy-900); color: #fff; }



/* Sort */

.sort-wrap { position: relative; }

.sort-select {

    appearance: none; -webkit-appearance: none;

    padding: 8px 32px 8px 12px;

    border: 1px solid var(--border); border-radius: var(--r-md);

    background: var(--surface); color: var(--text-muted);

    font-family: var(--font); font-size: var(--text-xs); font-weight: 600;

    cursor: pointer; outline: none; transition: border-color var(--t-fast);

}

.sort-select:focus { border-color: var(--border-focus); }

.sort-wrap__icon {

    position: absolute; right: 10px; top: 50%; transform: translateY(-50%);

    font-size: 10px; color: var(--text-muted); pointer-events: none;

}

.mobile-filter-toggle {

    display: none; align-items: center; justify-content: center;

    width: 38px; height: 38px;

    border: 1px solid var(--border); border-radius: var(--r-md);

    background: var(--surface); color: var(--text-dark); font-size: 14px; cursor: pointer;

}



/* ─────────────────────────────────────────────────────────────────

   LAYOUT & SIDEBAR

───────────────────────────────────────────────────────────────── */

.boats-layout { display: grid; grid-template-columns: 240px 1fr; gap: var(--sp-10); align-items: start; }



.boats-sidebar__inner { position: sticky; top: 88px; display: flex; flex-direction: column; gap: 0; }



.filter-block {

    background: var(--surface);

    border: 1px solid var(--border); border-bottom: none;

    padding: var(--sp-5) var(--sp-5);

}

.filter-block:last-of-type { border-bottom: 1px solid var(--border); }

.filter-block__title {

    font-size: 0.65rem; font-weight: 800; letter-spacing: 0.18em;

    text-transform: uppercase; color: var(--secondary); margin-bottom: var(--sp-3);

}

.filter-block__options { display: flex; flex-direction: column; gap: 2px; }



.filter-opt {

    display: flex; align-items: center; gap: var(--sp-3); padding: 9px 10px;

    border: 1px solid transparent; border-radius: var(--r-sm);

    background: transparent; color: var(--text-muted);

    font-family: var(--font); font-size: var(--text-xs); font-weight: 600;

    cursor: pointer; transition: all var(--t-fast); text-align: left;

}

.filter-opt:hover { color: var(--text-dark); border-color: var(--border); background: var(--surface-container-low); }

.filter-opt--active { background: var(--navy-900); border-color: var(--navy-900); color: #fff; }

.filter-opt__dot {

    width: 6px; height: 6px; border-radius: 50%;

    background: currentColor; opacity: 0.4; flex-shrink: 0;

}

.filter-opt--active .filter-opt__dot { opacity: 0.8; }

.filter-opt__count {

    margin-left: auto; font-size: 10px; font-weight: 700; padding: 1px 6px; border-radius: 3px;

    background: var(--surface-container); color: var(--text-muted);

}

.filter-opt--active .filter-opt__count { background: rgba(255,255,255,0.15); color: rgba(255,255,255,0.9); }



.filter-select {

    width: 100%; padding: 8px 30px 8px 10px;

    border: 1px solid var(--border); border-radius: var(--r-sm);

    background: var(--surface-container-low); color: var(--text-muted);

    font-size: var(--text-xs); font-family: var(--font); font-weight: 600;

    cursor: pointer; outline: none; appearance: none; -webkit-appearance: none;

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 10l5 5 5-5z' fill='%233d5a6a'/%3E%3C/svg%3E");

    background-repeat: no-repeat; background-position: right 6px center; background-size: 18px;

}



/* Sidebar CTA */

.sidebar-cta {

    background: var(--navy-900);

    padding: var(--sp-6) var(--sp-5); margin-top: var(--sp-4); text-align: center;

    border-radius: var(--r-md);

}

.sidebar-cta__icon {

    width: 44px; height: 44px;

    border: 1px solid rgba(0,180,216,0.3);

    border-radius: var(--r-sm);

    display: flex; align-items: center; justify-content: center;

    margin: 0 auto var(--sp-4); color: var(--turquoise); font-size: 1.1rem;

}

.sidebar-cta__title {

    font-family: var(--font-display);

    font-size: var(--text-base); font-weight: 700; color: #fff; margin-bottom: var(--sp-2);

}

.sidebar-cta__desc { font-size: var(--text-xs); color: rgba(255,255,255,0.5); line-height: 1.6; margin-bottom: var(--sp-5); }

.sidebar-cta__btn {

    display: inline-flex; align-items: center; gap: var(--sp-2);

    border: 1px solid var(--turquoise); color: var(--turquoise);

    padding: 8px 16px; border-radius: var(--r-sm);

    font-size: 11px; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase;

    text-decoration: none; transition: all var(--t-fast);

}

.sidebar-cta__btn:hover { background: var(--turquoise); color: var(--navy-900); }



/* Sidebar trust badges */

.sidebar-trust { margin-top: var(--sp-3); display: flex; flex-direction: column; gap: 0; }

.trust-item {

    display: flex; align-items: center; gap: var(--sp-3); padding: 10px 12px;

    border: 1px solid var(--border); border-top: none;

    background: var(--surface);

    font-size: var(--text-xs); font-weight: 600; color: var(--text-muted);

}

.trust-item:first-child { border-top: 1px solid var(--border); border-radius: var(--r-sm) var(--r-sm) 0 0; }

.trust-item:last-child  { border-radius: 0 0 var(--r-sm) var(--r-sm); }

.trust-item i { color: var(--secondary); font-size: 12px; width: 16px; }



/* ─────────────────────────────────────────────────────────────────

   BOATS GRID & EMPTY STATE

───────────────────────────────────────────────────────────────── */

.boats-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: var(--sp-5); }



.boats-empty {

    text-align: center; padding: var(--sp-20) var(--sp-6);

    background: var(--surface); border-radius: var(--r-xl);

    border: 1px solid var(--border);

}

.boats-empty__icon-wrap {

    width: 72px; height: 72px; border: 1px solid var(--border);

    border-radius: var(--r-md);

    display: flex; align-items: center; justify-content: center;

    margin: 0 auto var(--sp-6); font-size: 1.8rem; color: var(--secondary);

}

.boats-empty__title {

    font-family: var(--font-display); font-size: var(--text-2xl);

    font-weight: 700; color: var(--text-dark); margin-bottom: var(--sp-3);

}

.boats-empty__desc { color: var(--text-muted); margin-bottom: var(--sp-8); font-size: var(--text-sm); }



/* ─────────────────────────────────────────────────────────────────

   WHY / HOW TO JOIN SECTION

───────────────────────────────────────────────────────────────── */

.boats-why {

    position: relative; padding: var(--sp-24) 0;

    background: var(--navy-900); overflow: hidden;

}

.boats-why__bg {

    position: absolute; inset: 0;

    background-image:

        radial-gradient(circle at 10% 50%, rgba(0,180,216,0.06) 0%, transparent 50%),

        radial-gradient(circle at 90% 30%, rgba(30,111,168,0.07) 0%, transparent 45%);

}

.boats-why__inner { position: relative; z-index: 1; }

.boats-why__header { text-align: center; margin-bottom: var(--sp-16); }

.boats-why__eyebrow {

    display: flex; align-items: center; justify-content: center; gap: var(--sp-4);

    margin-bottom: var(--sp-4); font-size: 0.68rem; font-weight: 700;

    letter-spacing: 0.18em; text-transform: uppercase; color: var(--turquoise);

}

.boats-why__title {

    font-family: var(--font-display);

    font-size: clamp(1.8rem, 3.5vw, 2.75rem); font-weight: 700;

    color: #fff; letter-spacing: -0.03em;

}

.boats-why__grid {

    display: grid; grid-template-columns: repeat(3, 1fr);

    gap: 1px; background: rgba(255,255,255,0.06);

    border: 1px solid rgba(255,255,255,0.06); border-radius: var(--r-md); overflow: hidden;

}



.why-card {

    background: var(--navy-900); padding: var(--sp-10) var(--sp-8);

    position: relative; transition: background var(--t-base);

}

.why-card:hover { background: rgba(255,255,255,0.03); }

.why-card--featured {

    background: rgba(30,111,168,0.08);

    border-top: 2px solid var(--secondary);

}

.why-card__featured-badge {

    position: absolute; top: 18px; right: 18px;

    font-size: 9px; font-weight: 800; letter-spacing: 0.15em; text-transform: uppercase;

    color: var(--turquoise); border: 1px solid rgba(0,180,216,0.3); padding: 3px 10px;

    border-radius: var(--r-full);

}

.why-card__num {

    font-family: var(--font-display); font-size: 3.5rem; font-weight: 800;

    color: rgba(255,255,255,0.05); line-height: 1; margin-bottom: var(--sp-4); letter-spacing: -0.05em;

}

.why-card__icon {

    width: 48px; height: 48px;

    border: 1px solid rgba(30,111,168,0.3); border-radius: var(--r-sm);

    display: flex; align-items: center; justify-content: center;

    color: var(--secondary); font-size: 1.1rem; margin-bottom: var(--sp-5);

    transition: background var(--t-fast);

}

.why-card:hover .why-card__icon { background: rgba(30,111,168,0.12); }

.why-card__title {

    font-family: var(--font-display); font-size: var(--text-xl);

    font-weight: 700; color: #fff; margin-bottom: var(--sp-4);

}

.why-card__desc {

    color: rgba(255,255,255,0.45); font-size: var(--text-sm);

    line-height: 1.8; margin-bottom: var(--sp-5);

}

.why-card__list { list-style: none; padding: 0; display: flex; flex-direction: column; gap: var(--sp-2); }

.why-card__list li {

    font-size: var(--text-xs); color: rgba(255,255,255,0.4);

    padding-left: var(--sp-4); position: relative; font-weight: 500;

}

.why-card__list li::before { content: '—'; position: absolute; left: 0; color: var(--secondary); font-weight: 700; }

.why-card__cta {

    display: inline-flex; align-items: center; gap: var(--sp-2);

    color: var(--turquoise); font-size: var(--text-xs); font-weight: 700;

    letter-spacing: 0.05em; text-transform: uppercase; text-decoration: none;

    border-bottom: 1px solid rgba(0,180,216,0.3); padding-bottom: 3px;

    margin-top: var(--sp-2); transition: border-color var(--t-fast), color var(--t-fast);

}

.why-card__cta:hover { border-color: var(--turquoise); color: #fff; }



/* ─────────────────────────────────────────────────────────────────

   RESPONSIVE

───────────────────────────────────────────────────────────────── */

@media (max-width: 1100px) {

    .boats-layout { grid-template-columns: 210px 1fr; gap: var(--sp-6); }

    .boats-why__grid { grid-template-columns: 1fr 1fr; }

    .why-card:last-child { grid-column: 1 / -1; border-top: 1px solid rgba(255,255,255,0.06); }

}

@media (max-width: 768px) {

    .boats-hero { height: 70vh; min-height: 480px; }

    .boats-hero__title { font-size: clamp(2.2rem, 8vw, 3rem); }

    .boats-hero__scroll { display: none; }

    .boats-layout { grid-template-columns: 1fr; }

    .boats-sidebar { display: none; }

    .boats-sidebar.is-open { display: block; }

    .mobile-filter-toggle { display: flex; }

    .filter-tabs { display: none; }

    .boats-grid { grid-template-columns: 1fr; gap: var(--sp-3); }

    .boats-why__grid { grid-template-columns: 1fr; }

    .why-card:last-child { grid-column: auto; }

    .why-card { padding: var(--sp-8) var(--sp-6); }

    .boats-why { padding: var(--sp-16) 0; }

    .boats-header-bar { flex-direction: column; align-items: flex-start; }

}

@media (max-width: 480px) {

    .boats-hero__title { font-size: 2rem; }

    .boats-main { padding-bottom: var(--sp-12); }

}



/* ── Mobil: logo üst boşluk 10px ── */

@media (max-width: 768px) {

    .navbar__logo-img {

        top: 16px;

    }

}
/* ── Lokasyon Filtresi ── */
.lx-location-filter {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 32px;
    padding: 18px 20px;
    background: var(--surface-container-lowest, #fff);
    border: 1.5px solid var(--outline-variant, rgba(11,31,42,0.10));
    border-radius: 14px;
    box-shadow: 0 2px 8px rgba(11,31,42,0.06);
}

.lx-loc-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 18px;
    border-radius: 40px;
    border: 1.5px solid var(--outline, #6b8a99);
    background: transparent;
    color: var(--text-muted, #3d5a6a);
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.22s ease;
    font-family: inherit;
    letter-spacing: 0.01em;
    line-height: 1;
}

.lx-loc-btn:hover {
    border-color: var(--secondary, #1E6FA8);
    color: var(--secondary, #1E6FA8);
    background: rgba(30, 111, 168, 0.07);
}

.lx-loc-btn--active {
    background: var(--secondary, #1E6FA8);
    border-color: var(--secondary, #1E6FA8);
    color: #fff !important;
    font-weight: 700;
    box-shadow: 0 2px 10px rgba(30,111,168,0.25);
}

.lx-loc-btn--active:hover {
    background: var(--navy-700, #2680bd);
    border-color: var(--navy-700, #2680bd);
    color: #fff !important;
}

.lx-loc-map-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: rgba(255,255,255,0.18);
    color: inherit;
    text-decoration: none;
    font-size: 10px;
    margin-left: 4px;
    transition: background 0.15s, color 0.15s;
    vertical-align: middle;
}
.lx-loc-btn--active .lx-loc-map-link {
    background: rgba(255,255,255,0.25);
    color: #fff;
}
.lx-loc-map-link:hover {
    background: rgba(30,111,168,0.18);
    color: var(--secondary, #1E6FA8) !important;
}
.lx-loc-btn--active .lx-loc-map-link:hover {
    background: rgba(255,255,255,0.4);
    color: #fff !important;
}


.lx-boat-card--hidden {
    display: none !important;
}

/* ── Bireysel / Kapatma badge renkleri ── */
.lx-type-badge--individual {
    background: rgba(16, 185, 129, 0.12);
    color: #059669;
    border: 1px solid rgba(16, 185, 129, 0.30);
}

.lx-type-badge--full {
    background: rgba(30, 111, 168, 0.10);
    color: var(--secondary, #1E6FA8);
    border: 1px solid rgba(30, 111, 168, 0.25);
}

@media (max-width: 600px) {
    .lx-location-filter { padding: 12px 12px; gap: 7px; }
    .lx-loc-btn { font-size: 12px; padding: 6px 13px; }
}