/* ============================================================
   DZG Transfer — Editorial Premium Theme
   Poppins (UI + display) · Marka rengi: Altın #F8B71E
   ============================================================ */

:root {
    --sh-primary: #051036;
    --sh-primary-700: #02081f;
    --sh-primary-soft: #f0f4fd;
    --sh-on-primary: #FFFFFF;
    --sh-accent: #10b981;
    --sh-danger: #EF4444;

    /* Marka Altını ve VIP Mavi Tonları */
    --sh-gold: #F8B71E;
    --sh-gold-700: #e0a00e;
    --sh-gold-soft: #fef6e1;
    --sh-gold-light: #fbd46d;

    --sh-bg: #FFFFFF;
    --sh-bg-soft: #F6F8FB;
    --sh-bg-muted: #EEF1F6;

    --sh-ink: #051036;
    --sh-ink-2: #1F2A3D;
    --sh-text: #2A3344;
    --sh-text-2: #4B5566;
    --sh-muted: #6E7689;
    --sh-muted-2: #9CA3AF;

    --sh-border: #E5E8EE;
    --sh-border-2: #D4D9E2;
    --sh-divider: #EEF0F4;

    --sh-shadow: 0 12px 30px rgba(5, 16, 54, .08), 0 2px 6px rgba(5, 16, 54, .04);
    --sh-shadow-lg: 0 30px 70px rgba(5, 16, 54, .14), 0 10px 24px rgba(5, 16, 54, .06);

    --sh-r-sm: 10px;
    --sh-r: 14px;
    --sh-r-lg: 20px;
    --sh-r-xl: 28px;

    --sh-trans: .22s cubic-bezier(.4, 0, .2, 1);
    --sh-container: 1300px;

    /* Modern & Net Tipografi: Poppins & Plus Jakarta Sans */
    --sh-font-ui: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    --sh-font-display: "Poppins", "Plus Jakarta Sans", -apple-system, sans-serif;
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
    -webkit-text-size-adjust: 100%;
}

body {
    font-family: var(--sh-font-ui);
    font-size: 15px;
    line-height: 1.6;
    color: var(--sh-text);
    background: var(--sh-bg);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    overflow-x: hidden;
    font-feature-settings: "ss01", "cv11";
}

img,
svg {
    max-width: 100%;
    display: block;
}

a {
    color: var(--sh-text);
    text-decoration: none;
    transition: color var(--sh-trans);
}

a:hover {
    color: var(--sh-ink);
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--sh-font-display);
    font-weight: 600;
    color: var(--sh-ink);
    letter-spacing: -.02em;
    line-height: 1.2;
    margin: 0 0 .5em;
}

button,
input,
select,
textarea {
    font-family: inherit;
}

::selection {
    background: var(--sh-primary);
    color: var(--sh-on-primary);
}

.container {
    max-width: var(--sh-container);
}

/* Helpers */
.btn-primary-yellow {
    background: var(--sh-gold);
    color: var(--sh-ink);
    border: 0;
    border-radius: 999px;
    padding: .8rem 1.4rem;
    font-weight: 600;
    transition: all var(--sh-trans);
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    line-height: 1;
}

.btn-primary-yellow:hover {
    background: var(--sh-gold-700);
    color: var(--sh-ink);
    transform: translateY(-1px);
}

.btn-ghost {
    background: transparent;
    border: 1px solid var(--sh-border);
    color: var(--sh-text);
    border-radius: 999px;
    padding: .55rem .9rem;
    font-weight: 500;
    transition: all var(--sh-trans);
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    line-height: 1;
}

.btn-ghost:hover {
    background: var(--sh-bg-soft);
    border-color: var(--sh-border-2);
    color: var(--sh-ink);
}

/* ============================================================
   Header
   ============================================================ */
.sh-header {
    position: sticky;
    top: 0;
    z-index: 1030;
    background: rgba(255, 255, 255, .82);
    backdrop-filter: saturate(180%) blur(14px);
    -webkit-backdrop-filter: saturate(180%) blur(14px);
    border-bottom: 1px solid transparent;
    transition: border-color var(--sh-trans), background var(--sh-trans);
    box-shadow: 0 0 25px 0 rgba(11, 18, 32, .15);
}

.sh-header.is-scrolled {
    background: rgba(255, 255, 255, .96);
    border-bottom-color: var(--sh-border);
}

.sh-topbar {
    color: var(--sh-muted);
    font-size: .78rem;
    border-bottom: 1px solid var(--sh-divider);
}

.sh-topbar__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: .45rem 0;
}

.sh-topbar__left,
.sh-topbar__right {
    display: inline-flex;
    align-items: center;
    gap: 1.15rem;
}

.sh-topbar__item {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    color: var(--sh-text-2);
}

.sh-topbar__item:hover {
    color: var(--sh-ink);
}

.sh-topbar__item i {
    color: var(--sh-muted);
    font-size: .85rem;
}

.sh-topbar__sep {
    width: 1px;
    height: 12px;
    background: var(--sh-border);
}

.sh-header__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.25rem;
    padding: .65rem 0;
    min-height: 72px;
}

.sh-brand {
    display: inline-flex;
    align-items: center;
    gap: .7rem;
    flex-shrink: 0;
    color: var(--sh-ink);
}

.sh-brand:hover {
    color: var(--sh-ink);
}

.sh-brand__icon {
    height: 42px;
    width: auto;
    transition: height var(--sh-trans);
    display: block;
}

.sh-brand__text {
    font-family: var(--sh-font-display);
    font-size: 1.15rem;
    font-weight: 700;
    letter-spacing: -.015em;
    color: var(--sh-ink);
    line-height: 1;
    white-space: nowrap;
}

.sh-header.is-scrolled .sh-brand__icon {
    height: 36px;
}

.sh-header.is-scrolled .sh-brand__text {
    font-size: 1.05rem;
}

.sh-nav {
    display: flex;
    align-items: center;
    gap: .15rem;
    flex: 1;
    justify-content: center;
}

.sh-nav__item {
    position: relative;
}

.sh-nav__link {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    padding: .6rem .95rem;
    color: var(--sh-text-2);
    font-weight: 500;
    font-size: .9rem;
    border-radius: 999px;
    transition: color var(--sh-trans), background var(--sh-trans);
}

.sh-nav__link:hover {
    color: var(--sh-ink);
    background: var(--sh-bg-soft);
}

.sh-nav__link.is-active {
    color: var(--sh-ink);
    font-weight: 600;
}

.sh-actions {
    display: flex;
    align-items: center;
    gap: .4rem;
    flex-shrink: 0;
}

.sh-auth {
    display: inline-flex;
    align-items: center;
    gap: .15rem;
}

.sh-auth__btn {
    padding: .5rem .85rem;
    font-weight: 500;
    color: var(--sh-text);
    border-radius: 999px;
    transition: all var(--sh-trans);
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    font-size: .9rem;
}

.sh-auth__btn:hover {
    background: var(--sh-bg-soft);
    color: var(--sh-ink);
}

.sh-auth__btn--primary {
    background: var(--sh-ink);
    color: #fff;
    padding: .55rem 1.05rem;
    border-radius: 999px;
}

.sh-auth__btn--primary:hover {
    background: #000;
    color: #fff;
}

.sh-lang {
    position: relative;
}

.sh-lang__toggle {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    padding: .45rem .75rem;
    background: transparent;
    border: 1px solid var(--sh-border);
    border-radius: 999px;
    color: var(--sh-ink);
    font-weight: 500;
    font-size: .82rem;
    cursor: pointer;
    transition: all var(--sh-trans);
}

.sh-lang__toggle:hover {
    border-color: var(--sh-border-2);
    background: var(--sh-bg-soft);
}

.sh-lang__caret {
    font-size: .65rem;
    opacity: .55;
}

.sh-lang__menu {
    position: absolute;
    top: calc(100% + .5rem);
    right: 0;
    min-width: 200px;
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r);
    box-shadow: var(--sh-shadow-lg);
    padding: .35rem;
    opacity: 0;
    transform: translateY(-6px);
    pointer-events: none;
    transition: opacity var(--sh-trans), transform var(--sh-trans);
    z-index: 1040;
    list-style: none;
}

.sh-lang.is-open .sh-lang__menu {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

.sh-lang__item {
    display: flex;
    align-items: center;
    gap: .55rem;
    padding: .55rem .75rem;
    border-radius: 8px;
    color: var(--sh-text);
    font-weight: 500;
    font-size: .88rem;
}

.sh-lang__item:hover {
    background: var(--sh-bg-soft);
    color: var(--sh-ink);
}

.sh-lang__item.is-active {
    background: var(--sh-bg-muted);
    color: var(--sh-ink);
}

.sh-burger {
    display: none;
    width: 40px;
    height: 40px;
    background: transparent;
    border: 1px solid var(--sh-border);
    border-radius: 12px;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: var(--sh-ink);
}

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

/* Drawer */
.sh-drawer {
    position: fixed;
    inset: 0;
    background: rgba(11, 18, 32, .55);
    opacity: 0;
    pointer-events: none;
    transition: opacity .25s ease;
    z-index: 1050;
}

.sh-drawer__panel {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: min(86vw, 360px);
    background: #fff;
    box-shadow: -10px 0 40px rgba(0, 0, 0, .15);
    transform: translateX(100%);
    transition: transform .3s cubic-bezier(.4, 0, .2, 1);
    display: flex;
    flex-direction: column;
}

.sh-drawer.is-open {
    opacity: 1;
    pointer-events: auto;
}

.sh-drawer.is-open .sh-drawer__panel {
    transform: translateX(0);
}

.sh-drawer__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--sh-border);
}

.sh-drawer__close {
    width: 38px;
    height: 38px;
    background: var(--sh-bg-soft);
    border: 0;
    border-radius: 10px;
    cursor: pointer;
    color: var(--sh-ink);
    font-size: 1rem;
}

.sh-drawer__nav {
    padding: .75rem;
    flex: 1;
    overflow-y: auto;
}

.sh-drawer__link {
    display: block;
    padding: .85rem 1rem;
    border-radius: 10px;
    color: var(--sh-text);
    font-weight: 500;
}

.sh-drawer__link.is-active {
    background: var(--sh-bg-muted);
    color: var(--sh-ink);
}

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

.sh-drawer__foot {
    padding: 1rem 1.25rem;
    border-top: 1px solid var(--sh-border);
    display: flex;
    flex-direction: column;
    gap: .55rem;
}

@media (max-width: 1199.98px) {
    .sh-nav__link {
        padding: .55rem .7rem;
        font-size: .88rem;
    }
}

@media (max-width: 991.98px) {

    .sh-nav,
    .sh-auth,
    .sh-topbar {
        display: none;
    }

    .sh-burger {
        display: inline-flex;
    }

    .sh-header__inner {
        min-height: 58px;
        padding: .35rem 0;
    }

    .sh-brand__icon {
        height: 34px;
        width: auto;
    }

    .sh-brand__text {
        display: none;
    }

    .sh-actions {
        gap: 0.4rem;
    }

    .sh-lang__toggle {
        padding: 0.35rem 0.6rem;
        font-size: 0.78rem;
    }

    .sh-currency-btn {
        padding: 0.35rem 0.6rem;
        font-size: 0.78rem;
    }
}

/* ============================================================
   HERO
   ============================================================ */
.sh-hero {
    position: relative;
    background: var(--sh-ink);
    overflow: visible;
    padding: clamp(3.5rem, 7vw, 5rem) 0 clamp(8rem, 13vw, 11rem);
    margin-bottom: -7rem;
    max-width: 1500px;
    margin-inline: auto;
    border-radius: 30px;
    margin-top: 30px;
    box-shadow: 0 30px 60px -20px rgba(7, 13, 25, .35);
}

/* Video tam ekran arka plan olarak .sh-hero'yu doldurur ve köşe ovalliğini korur */
.sh-hero__bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
    opacity: .9;
    filter: saturate(.92) contrast(1.02);
    pointer-events: none;
    user-select: none;
    border-radius: inherit;
}

/* Videonun üstündeki karartma katmanı — yazının okunması için */
.sh-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    border-radius: inherit;
    background:
        radial-gradient(75% 60% at 18% 38%, rgba(7, 13, 25, .9) 0%, rgba(7, 13, 25, .55) 45%, transparent 78%),
        linear-gradient(180deg, rgba(7, 13, 25, .45) 0%, rgba(7, 13, 25, .15) 28%, rgba(7, 13, 25, .92) 100%);
}

.sh-hero::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 1px;
    z-index: 3;
    border-bottom-left-radius: inherit;
    border-bottom-right-radius: inherit;
    background: linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, .18) 50%, transparent 100%);
}

/* Stage — metni karartma katmanının üstünde tutan şeffaf sarmal */
.sh-hero__stage {
    position: relative;
    z-index: 4;
    padding-bottom: 25px;
}

.sh-hero__inner {
    position: relative;
    z-index: 4;
    max-width: 100%;
}

.sh-hero__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    color: var(--sh-gold);
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .2em;
    text-transform: uppercase;
    margin-bottom: 1.25rem;
}

.sh-hero__eyebrow::before {
    content: "";
    width: 28px;
    height: 1px;
    background: var(--sh-gold);
}

.sh-hero__title {
    font-family: var(--sh-font-display);
    color: #fff;
    font-size: clamp(2rem, 4.8vw, 3.85rem);
    font-weight: 600;
    line-height: 1.08;
    letter-spacing: -.025em;
    margin: 0 0 1.25rem;
    font-size: 2rem;
}

/* Hero başlık slaytı — tüm sloganlar aynı grid hücresinde üst üste durur,
   böylece yükseklik en uzun slogana göre sabit kalır (zıplama olmaz). */
.sh-hero__title--slider {
    display: grid;
}

.sh-hero__title--slider>.sh-hero__title-slide {
    grid-area: 1 / 1;
    opacity: 0;
    visibility: hidden;
    transform: translateY(14px);
    transition: opacity .6s ease, transform .6s ease, visibility 0s linear .6s;
}

.sh-hero__title--slider>.sh-hero__title-slide.is-active {
    opacity: 1;
    visibility: visible;
    transform: none;
    transition: opacity .6s ease, transform .6s ease, visibility 0s;
}

@media (prefers-reduced-motion: reduce) {
    .sh-hero__title--slider>.sh-hero__title-slide {
        transition: none;
        transform: none;
    }
}

.sh-hero__title .accent {
    font-style: italic;
    font-weight: 400;
    color: #fff;
    background-image: linear-gradient(90deg, var(--sh-primary) 0%, rgba(11, 18, 32, .25) 100%);
    background-repeat: no-repeat;
    background-position: 0 88%;
    background-size: 100% .14em;
    padding: 0 .05em;
}

.sh-hero__sub {
    color: rgba(255, 255, 255, .8);
    font-size: clamp(.98rem, 1.25vw, 1.1rem);
    line-height: 1.6;
    max-width: 560px;
    margin: 0 0 1.75rem;
    font-weight: 400;
}

.sh-hero__meta {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 1.75rem;
    color: rgba(255, 255, 255, .88);
    font-size: .85rem;
    font-weight: 500;
}

.sh-hero__meta-item {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
}

.sh-hero__meta-item i {
    color: rgba(255, 255, 255, .85);
    font-size: 1rem;
}

/* ============================================================
   BOOKING â€” editorial floating
   ============================================================ */
.sh-booking {
    position: relative;
    z-index: 10;
    padding-bottom: clamp(2rem, 4vw, 3.5rem);
}

.sh-booking__card {
    position: relative;
    background: #ffffff;
    border-radius: clamp(16px, 1.8vw, 24px);
    box-shadow:
        0 1px 0 rgba(255, 255, 255, .6) inset,
        0 24px 50px -16px rgba(7, 13, 25, .28),
        0 8px 24px -10px rgba(7, 13, 25, .15);
    padding: 1.25rem 1.5rem 1.5rem;
    border: 1px solid rgba(0, 0, 0, 0.06);
}

.sh-booking__card::before {
    content: "";
    position: absolute;
    left: 50%;
    top: -10px;
    transform: translateX(-50%);
    width: 64px;
    height: 4px;
    border-radius: 999px;
    background: linear-gradient(90deg, transparent, var(--sh-bg), transparent);
    opacity: .85;
    pointer-events: none;
}

/* Tabs Header Bar */
.sh-tabs-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    border-bottom: 1px solid var(--sh-divider);
    margin-bottom: 1.25rem;
    padding-bottom: 0.35rem;
    flex-wrap: wrap;
}

.sh-tabs {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    margin: 0;
    border-bottom: none;
    padding: 0;
}

.sh-tab {
    background: transparent;
    border: none;
    padding: 0.6rem 1rem;
    color: var(--sh-muted);
    font-weight: 600;
    font-size: 0.88rem;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    border-radius: 10px;
    transition: all var(--sh-trans);
    white-space: nowrap;
}

.sh-tab:hover {
    color: var(--sh-ink);
    background: var(--sh-bg-soft);
}

.sh-tab.is-active {
    color: var(--sh-ink);
    background: rgba(18, 18, 20, 0.06);
    font-weight: 700;
}

.sh-tab i {
    font-size: 0.95rem;
    opacity: 0.65;
}

.sh-tab.is-active i {
    opacity: 1;
    color: var(--sh-gold);
}

/* Top Bar Roundtrip Toggle */
.sh-roundtrip-top {
    display: inline-flex;
    align-items: center;
    gap: 0.65rem;
    cursor: pointer;
    user-select: none;
    padding: 0.45rem 0.85rem;
    border-radius: 10px;
    background: var(--sh-bg-soft);
    border: 1px solid var(--sh-border);
    transition: all var(--sh-trans);
    white-space: nowrap;
    margin-left: auto;
}

.sh-roundtrip-top:hover {
    background: #ffffff;
    border-color: rgba(0, 0, 0, 0.15);
}

.sh-roundtrip-top .sh-roundtrip-label {
    font-size: 0.84rem;
    font-weight: 600;
    color: var(--sh-ink);
}

/* Form Container - Single row flex layout */
.sh-booking .sh-form,
.sh-form {
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 0.5rem;
    width: 100%;
}

.sh-booking .sh-form.is-hourly .sh-field--place,
.sh-form.is-hourly .sh-field--place {
    flex: 1.8 1 0;
    min-width: 120px;
}

/* Base Field Box */
.sh-field {
    position: relative;
    flex: 2 1 0;
    min-width: 120px;
    background: var(--sh-bg-soft);
    border: 1px solid var(--sh-border);
    border-radius: 12px;
    padding: 0.5rem 0.75rem;
    min-height: 60px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    cursor: pointer;
    transition: all var(--sh-trans);
    margin: 0;
}

.sh-field:hover {
    background: #ffffff;
    border-color: rgba(0, 0, 0, 0.16);
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.05);
}

.sh-field:focus-within,
.sh-field.is-open {
    background: #ffffff;
    border-color: var(--sh-gold);
    box-shadow: 0 0 0 3px rgba(248, 183, 30, 0.22);
    z-index: 50;
}

.sh-field__label {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 0.66rem;
    font-weight: 700;
    color: var(--sh-muted);
    text-transform: uppercase;
    letter-spacing: 0.06em;
    margin-bottom: 0.18rem;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sh-field__label i {
    font-size: 0.8rem;
    color: var(--sh-gold);
    flex-shrink: 0;
}

.sh-field__input,
.sh-field__value {
    width: 100%;
    min-width: 0;
    border: none;
    background: transparent;
    font-size: 0.88rem;
    font-weight: 600;
    color: var(--sh-ink);
    padding: 0;
    outline: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.3;
}

/* BoÅŸ placeholder gÃ¶rÃ¼ntÃ¼sÃ¼ iÃ§in input'u gizle, value gÃ¶sterilsin */
.sh-field__input--hidden {
    position: absolute;
    opacity: 0;
    pointer-events: all;
    left: 0;
    right: 0;
    top: 0;
    height: 100%;
    width: 100%;
}

/* ============================================================
   CUSTOM VIP DATE & TIME PICKER
   ============================================================ */
.sh-dt-display {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    gap: 0.35rem;
    cursor: pointer;
}

.sh-dt-text {
    font-size: 0.88rem;
    font-weight: 600;
    color: var(--sh-ink);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.3;
}

.sh-dt-text.is-empty {
    color: var(--sh-muted);
    font-weight: 500;
}

.sh-dt-icon {
    font-size: 0.85rem;
    color: var(--sh-gold);
    flex-shrink: 0;
    transition: transform var(--sh-trans);
}

.sh-field.is-open .sh-dt-icon {
    transform: rotate(180deg);
}

/* Picker Dropdown Panel */
.sh-dt-picker {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    background: #ffffff;
    border: 1px solid rgba(11, 18, 32, 0.08);
    border-radius: 18px;
    box-shadow: 0 20px 45px -10px rgba(7, 13, 25, 0.22), 0 4px 14px rgba(0, 0, 0, 0.04);
    padding: 1rem;
    z-index: 1050;
    display: none;
    width: 340px;
    max-width: 95vw;
    max-height: min(540px, calc(100vh - 120px));
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: rgba(0, 0, 0, 0.2) transparent;
    animation: shDtFadeIn 0.2s cubic-bezier(0.16, 1, 0.3, 1);
    user-select: none;
}

.sh-dt-picker::-webkit-scrollbar {
    width: 6px;
}

.sh-dt-picker::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.18);
    border-radius: 999px;
}

.sh-field.is-open>.sh-dt-picker {
    display: block;
}

.sh-dt-picker.is-right {
    left: auto;
    right: 0;
}

@keyframes shDtFadeIn {
    from {
        opacity: 0;
        transform: translateY(-6px) scale(0.98);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* Quick chips */
.sh-dt-quick {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    margin-bottom: 0.75rem;
}

.sh-dt-chip {
    background: var(--sh-bg-soft);
    border: 1px solid var(--sh-border);
    border-radius: 999px;
    padding: 0.22rem 0.65rem;
    font-size: 0.74rem;
    font-weight: 600;
    color: var(--sh-ink);
    cursor: pointer;
    transition: all var(--sh-trans);
}

.sh-dt-chip:hover {
    background: #ffffff;
    border-color: var(--sh-gold);
    color: #0b1220;
}

.sh-dt-chip.is-active {
    background: #0b1220;
    color: #ffffff;
    border-color: #0b1220;
}

/* Calendar Header */
.sh-dt-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.65rem;
}

.sh-dt-title {
    font-size: 0.92rem;
    font-weight: 700;
    color: var(--sh-ink);
    letter-spacing: -0.01em;
}

.sh-dt-nav {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.sh-dt-nav-btn {
    width: 28px;
    height: 28px;
    border-radius: 8px;
    border: 1px solid var(--sh-border);
    background: #ffffff;
    color: var(--sh-ink);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-size: 0.78rem;
    transition: all var(--sh-trans);
}

.sh-dt-nav-btn:hover {
    background: var(--sh-bg-soft);
    border-color: rgba(0, 0, 0, 0.18);
}

/* Weekdays */
.sh-dt-weekdays {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    text-align: center;
    gap: 2px;
    margin-bottom: 0.35rem;
}

.sh-dt-weekday {
    font-size: 0.68rem;
    font-weight: 700;
    color: var(--sh-muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: 0.2rem 0;
}

/* Days Grid */
.sh-dt-days {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 2px;
    margin-bottom: 0.75rem;
}

.sh-dt-day {
    aspect-ratio: 1;
    border-radius: 9px;
    border: 1px solid transparent;
    background: transparent;
    color: var(--sh-ink);
    font-size: 0.82rem;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.15s ease;
    padding: 0;
}

.sh-dt-day:hover:not(.is-disabled):not(.is-selected) {
    background: rgba(248, 183, 30, 0.18);
    color: #0b1220;
}

.sh-dt-day.is-today {
    border-color: rgba(248, 183, 30, 0.7);
    font-weight: 700;
}

.sh-dt-day.is-selected {
    background: linear-gradient(135deg, #ffc82c 0%, #f8b71e 100%) !important;
    color: #0d1322 !important;
    font-weight: 800;
    box-shadow: 0 3px 8px rgba(248, 183, 30, 0.35);
}

.sh-dt-day.is-disabled {
    color: rgba(0, 0, 0, 0.2);
    cursor: not-allowed;
    background: transparent;
}

.sh-dt-day.is-other-month {
    color: rgba(0, 0, 0, 0.25);
}

/* Step Indicator / Header */
.sh-dt-step-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.65rem;
    padding-bottom: 0.45rem;
    border-bottom: 1px dashed var(--sh-border);
}

.sh-dt-step-label {
    font-size: 0.76rem;
    font-weight: 700;
    color: var(--sh-ink);
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

.sh-dt-step-num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #0b1220;
    color: #ffffff;
    font-size: 0.68rem;
    font-weight: 800;
}

.sh-dt-step-hint {
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--sh-muted);
}

/* Step 2: Time View */
.sh-dt-time-view {
    animation: shDtSlideIn 0.18s cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes shDtSlideIn {
    from {
        opacity: 0;
        transform: translateX(8px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.sh-dt-time-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    margin-bottom: 0.85rem;
    padding-bottom: 0.65rem;
    border-bottom: 1px solid var(--sh-border);
}

.sh-dt-back-btn {
    background: var(--sh-bg-soft);
    border: 1px solid var(--sh-border);
    border-radius: 9px;
    padding: 0.35rem 0.75rem;
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--sh-ink);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    transition: all var(--sh-trans);
}

.sh-dt-back-btn:hover {
    background: #0b1220;
    color: #ffffff;
    border-color: #0b1220;
}

.sh-dt-time-selected-date {
    font-size: 0.82rem;
    font-weight: 700;
    color: #0b1220;
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

.sh-dt-time-selected-date i {
    color: var(--sh-gold);
    font-size: 0.9rem;
}

/* Large Time Pickers */
.sh-dt-time-inputs-large {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.6rem;
    background: var(--sh-bg-soft);
    border: 1px solid var(--sh-border);
    border-radius: 14px;
    padding: 0.75rem 1rem;
    margin-bottom: 0.95rem;
}

.sh-dt-time-group {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    flex: 1;
}

.sh-dt-time-label {
    font-size: 0.66rem;
    font-weight: 700;
    color: var(--sh-muted);
    text-transform: uppercase;
    letter-spacing: 0.06em;
    text-align: center;
}

.sh-dt-time-select--lg {
    background: #ffffff;
    border: 1px solid var(--sh-border);
    border-radius: 10px;
    padding: 0.45rem 0.6rem;
    font-size: 1.05rem;
    font-weight: 700;
    color: #0b1220;
    outline: none;
    cursor: pointer;
    text-align: center;
    transition: all var(--sh-trans);
}

.sh-dt-time-select--lg:focus {
    border-color: var(--sh-gold);
    box-shadow: 0 0 0 3px rgba(248, 183, 30, 0.2);
}

.sh-dt-time-colon-lg {
    font-weight: 800;
    font-size: 1.4rem;
    color: var(--sh-muted);
    margin-top: 0.85rem;
}

/* Presets */
.sh-dt-presets-title {
    font-size: 0.68rem;
    font-weight: 700;
    color: var(--sh-muted);
    text-transform: uppercase;
    letter-spacing: 0.06em;
    margin-bottom: 0.5rem;
}

.sh-dt-time-presets--grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 0.4rem;
}

.sh-dt-preset-btn {
    background: #ffffff;
    border: 1px solid var(--sh-border);
    border-radius: 9px;
    padding: 0.45rem 0.2rem;
    font-size: 0.76rem;
    font-weight: 600;
    color: var(--sh-ink);
    cursor: pointer;
    text-align: center;
    transition: all var(--sh-trans);
}

.sh-dt-preset-btn:hover {
    background: rgba(248, 183, 30, 0.15);
    border-color: var(--sh-gold);
    color: #0b1220;
}

.sh-dt-preset-btn.is-active {
    background: #0b1220;
    color: #ffffff;
    border-color: #0b1220;
    font-weight: 700;
}

/* Mobile backdrop & bottom sheet */
.sh-dt-backdrop {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(7, 13, 25, 0.45);
    backdrop-filter: blur(3px);
    z-index: 1040;
}

.sh-dt-backdrop.is-open {
    display: block;
}

@media (max-width: 575.98px) {
    .sh-dt-picker {
        position: fixed;
        top: auto;
        bottom: 0;
        left: 0;
        right: 0;
        width: 100%;
        max-width: 100%;
        border-radius: 20px 20px 0 0;
        z-index: 1050;
        max-height: 85vh;
        overflow-y: auto;
        padding: 1.25rem 1.25rem 2rem;
        box-shadow: 0 -10px 40px rgba(0, 0, 0, 0.25);
    }
}

/* Custom select panel */
.sh-select__panel {
    position: absolute;
    top: calc(100% + .5rem);
    left: -.5rem;
    right: -.5rem;
    min-width: 320px;
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r);
    box-shadow: var(--sh-shadow-lg);
    padding: .5rem;
    max-height: 360px;
    overflow-y: auto;
    z-index: 1020;
    display: none;
}

.sh-field.is-open>.sh-select__panel {
    display: block;
}

.sh-select__search {
    width: 100%;
    border: 1px solid var(--sh-border);
    border-radius: 10px;
    padding: .6rem .75rem;
    font: inherit;
    font-size: .9rem;
    margin-bottom: .35rem;
    outline: none;
    background: var(--sh-bg-soft);
    transition: border-color var(--sh-trans), background var(--sh-trans);
}

.sh-select__search:focus {
    border-color: var(--sh-ink-2);
    background: #fff;
}

.sh-select__opt {
    display: flex;
    align-items: center;
    gap: .85rem;
    padding: .6rem .7rem;
    border-radius: 8px;
    cursor: pointer;
    color: var(--sh-text);
    transition: background var(--sh-trans);
}

.sh-select__opt:hover,
.sh-select__opt.is-active {
    background: var(--sh-bg-soft);
}

.sh-select__opt.is-selected {
    background: var(--sh-bg-muted);
}

.sh-select__opt i.opt-icon {
    width: 18px;
    color: var(--sh-muted);
    font-size: 1rem;
    flex-shrink: 0;
    text-align: center;
}

.sh-select__opt[data-type="airport"] i.opt-icon {
    color: var(--sh-ink);
}

.sh-select__opt .name {
    font-size: .92rem;
    color: var(--sh-ink);
    font-weight: 500;
    line-height: 1.25;
}

.sh-select__opt .meta {
    display: block;
    font-size: .74rem;
    color: var(--sh-muted);
    margin-top: .1rem;
    font-weight: 400;
}

.sh-select__empty {
    padding: 1.5rem 1rem;
    text-align: center;
    color: var(--sh-muted);
    font-size: .85rem;
}

.sh-select__group {
    padding: .8rem .7rem .3rem;
    font-size: .65rem;
    font-weight: 600;
    color: var(--sh-muted);
    text-transform: uppercase;
    letter-spacing: .1em;
    border-top: 1px solid var(--sh-divider);
    margin-top: .25rem;
}

.sh-select__group:first-child {
    border-top: 0;
    margin-top: 0;
}

/* Round-trip â€” inline text + switch (footer iÃ§inde) */
.sh-trip {
    display: inline-flex;
    align-items: center;
    gap: .6rem;
    cursor: pointer;
    user-select: none;
    color: var(--sh-muted);
    font-size: .88rem;
    font-weight: 500;
    padding: .25rem .15rem;
    transition: color var(--sh-trans);
    position: absolute;
    top: 20px;
    right: 25px;
}

.sh-trip:hover {
    color: var(--sh-ink);
}

.sh-trip__icon i {
    font-size: 1rem;
    color: var(--sh-muted-2);
    transition: color var(--sh-trans);
}

.sh-trip:hover .sh-trip__icon i,
.sh-trip.is-on .sh-trip__icon i {
    color: var(--sh-ink);
}

.sh-trip.is-on {
    color: var(--sh-ink);
    font-weight: 600;
}

.sh-trip__text {
    line-height: 1;
}

.sh-toggle {
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    user-select: none;
}

.sh-switch {
    position: relative;
    width: 34px;
    height: 20px;
    background: var(--sh-bg-muted);
    border-radius: 999px;
    transition: background var(--sh-trans);
    flex-shrink: 0;
    border: 1px solid var(--sh-border);
}

.sh-switch::after {
    content: "";
    position: absolute;
    top: 1px;
    left: 1px;
    width: 16px;
    height: 16px;
    background: #fff;
    border-radius: 50%;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .25);
    transition: transform var(--sh-trans);
}

.sh-toggle input {
    display: none;
}

.sh-toggle input:checked+.sh-switch {
    background: var(--sh-ink);
    border-color: var(--sh-ink);
}

.sh-toggle input:checked+.sh-switch::after {
    transform: translateX(14px);
}

/* Special Field Sizes */
.sh-field--place {
    flex: 2.2 1 0;
    min-width: 125px;
}

.sh-field--pickup,
.sh-field--return {
    flex: 1.6 1 0;
    min-width: 125px;
}

.sh-field--people {
    flex: 1.1 1 0;
    min-width: 100px;
    max-width: 135px;
}

.sh-field--hours {
    flex: 1 1 0;
    min-width: 85px;
    max-width: 120px;
}

.sh-form.has-return #sh-return-wrapper {
    display: flex !important;
}

/* Stepper */
.sh-stepper {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    margin-top: 0;
}

.sh-stepper__btn {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: #ffffff;
    border: 1px solid var(--sh-border);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
    cursor: pointer;
    color: var(--sh-ink);
    font-weight: 700;
    line-height: 1;
    transition: all var(--sh-trans);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.82rem;
    padding: 0;
}

.sh-stepper__btn:hover:not(:disabled),
.sh-stepper__btn:focus-visible {
    background: var(--sh-ink);
    color: #ffffff;
    border-color: var(--sh-ink);
    transform: scale(1.08);
}

.sh-stepper__btn:active:not(:disabled) {
    transform: scale(0.95);
}

.sh-stepper__btn:disabled {
    opacity: .35;
    cursor: not-allowed;
    background: var(--sh-bg-soft);
    color: var(--sh-ink);
    border-color: var(--sh-border);
}

.sh-stepper__val {
    min-width: 20px;
    text-align: center;
    font-weight: 700;
    font-size: 0.96rem;
    color: var(--sh-ink);
}

/* Submit Button */
.sh-submit {
    flex: 0 0 auto;
    min-width: auto;
    height: 60px;
    background: linear-gradient(135deg, #ffc82c 0%, #f8b71e 100%);
    color: #0d1322;
    border: none;
    border-radius: 12px;
    padding: 0 1.25rem;
    font-weight: 700;
    font-size: .92rem;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    box-shadow: 0 8px 20px rgba(248, 183, 30, .32);
    transition: all var(--sh-trans);
    white-space: nowrap;
    margin-left: 0;
}

.sh-submit i {
    font-size: 1rem;
    transition: transform 0.2s ease;
}

.sh-submit:hover {
    background: linear-gradient(135deg, #f8b71e 0%, #e5a40f 100%);
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(248, 183, 30, .48);
}

.sh-submit:hover i {
    transform: translateX(3px);
}

/* Hata durumu */
.sh-field.has-error {
    box-shadow: inset 0 0 0 1px var(--sh-danger);
}

/* Booking responsive */
@media (max-width: 1199.98px) {
    .sh-booking__card {
        padding: 1rem 1.15rem 1.15rem;
    }
}

@media (max-width: 767.98px) {
    .sh-hero {
        /* Mobilde video yerine hafif, modern ve kaynak tüketmeyen koyu degrade arka plan */
        background: linear-gradient(135deg, #051036 0%, #0d1e4c 100%) !important;
        padding: 1.25rem 0 1.5rem !important;
        margin-top: 10px;
        margin-bottom: 1.25rem;
        border-radius: 20px;
        margin-inline: 10px;
        min-height: auto !important;
        box-shadow: 0 10px 30px rgba(5, 16, 54, 0.15);
    }

    /* Mobilde video ve karartma katmanlarını tamamen kapat — gereksiz CPU, pil ve veri tüketimini engelle */
    .sh-hero__bg,
    .sh-hero::before,
    .sh-hero::after,
    .sh-hero__stage {
        display: none !important;
    }

    .sh-booking {
        padding-bottom: 0.5rem;
        margin-top: 0 !important;
    }

    .sh-booking__card {
        padding: 1rem;
        border-radius: 18px;
        box-shadow: 0 10px 30px rgba(5, 16, 54, 0.12);
    }

    .sh-tabs-bar {
        flex-direction: column;
        align-items: stretch;
        gap: 0.6rem;
        padding-bottom: 0.85rem !important;
        margin-bottom: 0.85rem !important;
        border-bottom: 1px solid var(--sh-divider);
    }

    /* Mobilde sekmeler: kompakt ve düzenli */
    .sh-tabs {
        display: flex;
        flex-direction: column;
        overflow-x: visible;
        width: 100%;
        gap: 0.45rem;
        padding-bottom: 0;
    }

    .sh-tab {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        padding: 0.65rem 0.9rem;
        font-size: 0.85rem;
        border-radius: 10px;
        background: var(--sh-bg-soft);
        color: var(--sh-muted);
        box-sizing: border-box;
        border: 1px solid rgba(5, 16, 54, 0.05);
    }

    .sh-tab i {
        font-size: 1rem;
    }

    .sh-tab.is-active {
        background: #051036;
        color: #ffffff;
        font-weight: 700;
        border-color: #051036;
        box-shadow: 0 4px 14px rgba(5, 16, 54, 0.18);
    }

    .sh-tab.is-active i {
        color: var(--sh-gold);
    }

    .sh-roundtrip-top {
        margin-left: 0;
        justify-content: space-between;
        width: 100%;
        padding: 0.65rem 0.9rem;
        border-radius: 10px;
        background: var(--sh-bg-soft);
        border: 1px solid rgba(5, 16, 54, 0.05);
        box-sizing: border-box;
    }

    /* SEÇENEK 1: Mobilde Dikey ve Kullanışlı Form Düzeni (Yatay kaydırma kalktı) */
    .sh-booking .sh-form {
        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        overflow-x: visible !important;
        gap: 0.65rem !important;
        width: 100% !important;
        padding-bottom: 0 !important;
    }

    /* Nereden ve Nereye: Tam genişlik */
    .sh-booking .sh-field {
        flex: 1 1 auto !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        min-height: 56px !important;
        padding: 0.55rem 0.9rem !important;
        border-radius: 12px;
        box-sizing: border-box;
    }

    /* Saatlik Kiralama için Süre seçimi */
    .sh-booking .sh-field--hours {
        width: 100% !important;
        flex: 1 1 auto !important;
    }

    /* Tarih & Saat ve Dönüş */
    .sh-booking .sh-field--pickup {
        width: 100% !important;
    }

    .sh-booking .sh-field--return {
        width: 100% !important;
    }

    /* Kişi Sayısı Kutusu: Diğer kutularla %100 aynı genişlik, yükseklik ve orantı */
    .sh-booking .sh-field--people {
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        min-height: 56px !important;
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 0.55rem 0.9rem !important;
        box-sizing: border-box !important;
    }

    .sh-booking .sh-field--people .sh-field__label {
        margin-bottom: 0 !important;
        font-size: 0.88rem !important;
        font-weight: 600 !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 0.5rem !important;
        color: var(--sh-ink) !important;
    }

    .sh-booking .sh-field--people .sh-field__label i {
        font-size: 1rem !important;
        color: var(--sh-gold) !important;
    }

    .sh-stepper {
        display: inline-flex !important;
        align-items: center !important;
        gap: 0.6rem !important;
        margin-top: 0 !important;
    }

    .sh-stepper__btn {
        width: 32px !important;
        height: 32px !important;
        border-radius: 50% !important;
        background: #ffffff !important;
        border: 1px solid var(--sh-border) !important;
        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08) !important;
        color: var(--sh-ink) !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        -webkit-tap-highlight-color: transparent;
    }

    .sh-stepper__btn i {
        color: inherit !important;
        font-size: 1rem !important;
        line-height: 1 !important;
        display: inline-block !important;
        pointer-events: none;
    }

    .sh-stepper__btn:active:not(:disabled) {
        background: #f1f5f9 !important;
        color: var(--sh-ink) !important;
        transform: scale(0.92) !important;
    }

    .sh-stepper__btn:disabled {
        opacity: 0.35 !important;
        background: #f8fafc !important;
        color: #94a3b8 !important;
        cursor: not-allowed !important;
    }

    .sh-stepper__val {
        font-size: 1.05rem !important;
        font-weight: 700 !important;
        min-width: 26px !important;
        text-align: center !important;
        color: var(--sh-ink) !important;
    }

    .sh-field:focus-within {
        border-color: var(--sh-gold);
        background: #ffffff;
    }

    .sh-field__label {
        font-size: 0.72rem;
        margin-bottom: 0.15rem;
    }

    .sh-field__value,
    .sh-field__input {
        font-size: 0.92rem;
    }

    /* Fiyat Al Butonu: En altta, dikkat çekici ve tam genişlik */
    .sh-booking .sh-submit {
        position: static !important;
        transform: none !important;
        width: 100% !important;
        height: 52px !important;
        font-size: 1rem !important;
        font-weight: 700 !important;
        border-radius: 12px !important;
        margin-top: 0.4rem !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0.6rem !important;
        box-shadow: 0 6px 18px rgba(220, 160, 20, 0.28) !important;
    }

    .sh-submit:hover {
        background: var(--sh-gold-700);
        color: var(--sh-ink);
        transform: translateY(-1px);
    }

    .sh-brand__text {
        display: none;
    }

    .sh-drawer__panel .flex-wrap .btn-ghost {
        padding: .55rem .74rem;
    }
}

@media (max-width: 480px) {
    .sh-hero {
        margin-inline: 8px;
        padding: 6.5rem 0 3.5rem;
        border-radius: 18px;
    }

    .sh-booking__card {
        padding: 0.85rem;
    }

    .sh-demo-bar {
        font-size: 0.75rem;
        padding: 8px 10px;
    }
}

/* ============================================================
   WHY US â€” 3 deÄŸer kartÄ±
   ============================================================ */
.sh-why {
    padding: clamp(3rem, 5vw, 4.5rem) 0 clamp(3rem, 5vw, 4.5rem);
    background: var(--sh-bg-soft);
    position: relative;
}

.sh-why__head {
    max-width: 720px;
    margin: 0 auto clamp(2.5rem, 4vw, 3.5rem);
    text-align: center;
}

.sh-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    color: var(--sh-ink);
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .18em;
    text-transform: uppercase;
    margin-bottom: 1rem;
}

.sh-eyebrow::before,
.sh-eyebrow::after {
    content: "";
    width: 24px;
    height: 2px;
    border-radius: 2px;
    background: var(--sh-gold);
}

.sh-why__title {
    font-family: var(--sh-font-display);
    font-size: clamp(1.75rem, 3vw, 2.4rem);
    font-weight: 600;
    color: var(--sh-ink);
    margin: 0 0 .85rem;
    letter-spacing: -.02em;
}

.sh-why__sub {
    color: var(--sh-text-2);
    font-size: clamp(.95rem, 1.1vw, 1.05rem);
    line-height: 1.65;
    margin: 0;
}

.sh-why__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
}

.sh-why__card {
    position: relative;
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r-lg);
    padding: 2.25rem 1.75rem 1.75rem;
    transition: transform var(--sh-trans), box-shadow var(--sh-trans), border-color var(--sh-trans);
    overflow: hidden;
}

.sh-why__card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, var(--sh-primary) 0%, var(--sh-primary-700) 100%);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .35s cubic-bezier(.4, 0, .2, 1);
}

.sh-why__card:hover {
    transform: translateY(-4px);
    box-shadow: var(--sh-shadow);
    border-color: var(--sh-border-2);
}

.sh-why__card:hover::before {
    transform: scaleX(1);
}

.sh-why__num {
    position: absolute;
    top: 1.25rem;
    right: 1.5rem;
    font-family: var(--sh-font-display);
    font-size: 2rem;
    font-weight: 700;
    color: var(--sh-bg-muted);
    line-height: 1;
    letter-spacing: -.03em;
    transition: color var(--sh-trans);
}

.sh-why__card:hover .sh-why__num {
    color: var(--sh-primary-soft);
}

.sh-why__ic {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: var(--sh-bg-soft);
    color: var(--sh-ink);
    font-size: 1.45rem;
    margin-bottom: 1.25rem;
    transition: background var(--sh-trans), color var(--sh-trans);
}

.sh-why__card:hover .sh-why__ic {
    background: var(--sh-ink);
    color: #fff;
}

.sh-why__h {
    font-family: var(--sh-font-display);
    font-size: 1.15rem;
    font-weight: 600;
    color: var(--sh-ink);
    margin: 0 0 .55rem;
    letter-spacing: -.01em;
}

.sh-why__p {
    color: var(--sh-text-2);
    font-size: .92rem;
    line-height: 1.65;
    margin: 0;
}

@media (max-width: 991.98px) {
    .sh-why__grid {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
}

/* Floating widgets */
.back-to-top {
    position: fixed;
    right: 1rem;
    bottom: 1rem;
    width: 42px;
    height: 42px;
    background: var(--sh-ink);
    color: #fff;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    opacity: 0;
    pointer-events: none;
    transition: opacity .2s ease, transform .2s ease;
    box-shadow: var(--sh-shadow);
}

.back-to-top.is-visible {
    opacity: 1;
    pointer-events: auto;
}

.back-to-top:hover {
    transform: translateY(-2px);
    color: #fff;
}

.whatsapp-fab {
    position: fixed;
    right: 1rem;
    bottom: 4rem;
    width: 50px;
    height: 50px;
    background: var(--sh-accent);
    color: #fff;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.45rem;
    box-shadow: 0 10px 26px rgba(37, 211, 102, .4);
    z-index: 1000;
    transition: transform .2s ease;
}

.whatsapp-fab:hover {
    color: #fff;
    transform: scale(1.05);
}

.maintenance-bar {
    background: #FEF3C7;
    color: #92400E;
    padding: .5rem 1rem;
    text-align: center;
    font-size: .82rem;
    border-bottom: 1px solid #FDE68A;
    font-weight: 500;
}

/* ============================================================
   GLOBAL SECTION SYSTEM (yeni sayfalar iÃ§in ortak)
   ============================================================ */
.sh-sect-head {
    margin: 0 0 clamp(2.25rem, 4vw, 3.25rem);
}

.sh-sect-head--center {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

.sh-sect-head--row {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1.5rem;
    flex-wrap: wrap;
}

.sh-sect-head--row>div {
    max-width: 640px;
}

.sh-sect-title {
    font-family: var(--sh-font-display);
    font-size: clamp(1.7rem, 2.9vw, 2.35rem);
    font-weight: 600;
    color: var(--sh-ink);
    margin: 0 0 .75rem;
    letter-spacing: -.02em;
    line-height: 1.18;
    text-wrap: balance;
}

.sh-sect-sub {
    color: var(--sh-text-2);
    font-size: clamp(.95rem, 1.05vw, 1.02rem);
    line-height: 1.65;
    margin: 0;
}

.sh-eyebrow--dark {
    color: var(--sh-ink);
}

.sh-eyebrow--dark::before,
.sh-eyebrow--dark::after {
    background: var(--sh-ink);
}

.sh-eyebrow--light {
    color: rgba(255, 255, 255, .85);
}

.sh-eyebrow--light::before,
.sh-eyebrow--light::after {
    background: rgba(255, 255, 255, .55);
}

/* Buttons */
.sh-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .55rem;
    padding: .8rem 1.35rem;
    border-radius: 999px;
    border: 0;
    cursor: pointer;
    font-family: inherit;
    font-weight: 600;
    font-size: .92rem;
    line-height: 1;
    white-space: nowrap;
    transition: all var(--sh-trans);
}

.sh-btn i {
    font-size: 1rem;
    transition: transform var(--sh-trans);
}

.sh-btn:hover i {
    transform: translateX(2px);
}

.sh-btn--lg {
    padding: 1rem 1.65rem;
    font-size: 1rem;
}

.sh-btn--dark {
    background: var(--sh-ink);
    color: #fff;
}

.sh-btn--dark:hover {
    background: #000;
    color: #fff;
    transform: translateY(-1px);
}

.sh-btn--ghost {
    background: #fff;
    color: var(--sh-ink);
    border: 1px solid var(--sh-border-2);
}

.sh-btn--ghost:hover {
    background: var(--sh-bg-soft);
    border-color: var(--sh-ink);
    color: var(--sh-ink);
}

.sh-btn--gold {
    background: var(--sh-bg);
    color: var(--sh-ink);
    border: 1px solid var(--sh-bg);
    box-shadow: 0 14px 30px rgba(255, 255, 255, .25);
}

.sh-btn--gold:hover {
    background: var(--sh-ink);
    color: var(--sh-bg);
    transform: translateY(-1px);
}

.sh-btn--outline-light {
    background: transparent;
    color: #fff;
    border: 1px solid rgba(255, 255, 255, .35);
}

.sh-btn--outline-light:hover {
    background: rgba(255, 255, 255, .08);
    border-color: #fff;
    color: #fff;
}

.sh-link-arrow {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    color: var(--sh-ink);
    font-weight: 600;
    font-size: .92rem;
    border-bottom: 1px solid transparent;
    padding-bottom: 2px;
    transition: border-color var(--sh-trans), gap var(--sh-trans);
}

.sh-link-arrow:hover {
    color: var(--sh-ink);
    border-color: var(--sh-ink);
    gap: .65rem;
}

.sh-link-arrow--sm {
    font-size: .85rem;
}

/* ============================================================
   TRUST BADGES â€” kompakt gÃ¼ven ÅŸeridi
   ============================================================ */
.sh-trust {
    padding: 1.5rem 0 0;
}

.sh-trust__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: .25rem;
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r-lg);
    padding: .25rem;
    box-shadow: 0 6px 20px rgba(11, 18, 32, .04);
}

.sh-trust__item {
    display: flex;
    align-items: center;
    gap: .85rem;
    padding: 1.1rem 1.15rem;
    border-radius: var(--sh-r);
    transition: background var(--sh-trans);
}

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

.sh-trust__ic {
    flex-shrink: 0;
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: var(--sh-ink);
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
}

.sh-trust__txt {
    display: flex;
    flex-direction: column;
    gap: .15rem;
    line-height: 1.2;
    min-width: 0;
}

.sh-trust__txt strong {
    color: var(--sh-ink);
    font-size: .92rem;
    font-weight: 600;
}

.sh-trust__txt span {
    color: var(--sh-muted);
    font-size: .78rem;
}

@media (max-width: 991.98px) {
    .sh-trust__grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .sh-trust__grid {
        grid-template-columns: 1fr;
    }
}

/* ============================================================
   HOW IT WORKS â€” 4 adÄ±m
   ============================================================ */
.sh-how {
    padding: clamp(3rem, 5vw, 4.5rem) 0;
}

.sh-how__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
    position: relative;
}

.sh-how__step {
    position: relative;
    padding: 2rem 1.4rem 1.5rem;
    border-radius: var(--sh-r-lg);
    background: var(--sh-bg-soft);
    transition: background var(--sh-trans), transform var(--sh-trans);
}

.sh-how__step:hover {
    background: var(--sh-ink);
    transform: translateY(-3px);
}

.sh-how__step:hover .sh-how__num {
    color: rgba(255, 255, 255, .25);
}

.sh-how__step:hover .sh-how__ic {
    background: #fff;
    color: var(--sh-ink);
}

.sh-how__step:hover .sh-how__h,
.sh-how__step:hover .sh-how__p {
    color: #fff;
}

.sh-how__step:hover .sh-how__p {
    color: rgba(255, 255, 255, .7);
}

.sh-how__num {
    position: absolute;
    top: 1.1rem;
    right: 1.25rem;
    font-family: var(--sh-font-display);
    font-size: 2.4rem;
    font-weight: 700;
    color: var(--sh-bg-muted);
    line-height: 1;
    letter-spacing: -.04em;
    transition: color var(--sh-trans);
}

.sh-how__ic {
    width: 50px;
    height: 50px;
    border-radius: 14px;
    background: #fff;
    color: var(--sh-ink);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.35rem;
    margin-bottom: 1.25rem;
    transition: background var(--sh-trans), color var(--sh-trans);
    box-shadow: 0 6px 16px rgba(11, 18, 32, .06);
}

.sh-how__h {
    font-family: var(--sh-font-display);
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--sh-ink);
    margin: 0 0 .45rem;
    letter-spacing: -.01em;
    transition: color var(--sh-trans);
}

.sh-how__p {
    color: var(--sh-text-2);
    font-size: .9rem;
    line-height: 1.6;
    margin: 0;
    transition: color var(--sh-trans);
}

@media (max-width: 991.98px) {
    .sh-how__grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .sh-how__grid {
        grid-template-columns: 1fr;
    }
}

/* ============================================================
   SERVICE PRIVILEGES
   ============================================================ */
.sh-priv {
    padding: clamp(3rem, 5vw, 4.5rem) 0;
    background: var(--sh-bg-soft);
}

.sh-priv__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
}

.sh-priv__card {
    display: flex;
    gap: 1rem;
    align-items: flex-start;
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r);
    padding: 1.4rem 1.25rem;
    transition: transform var(--sh-trans), border-color var(--sh-trans), box-shadow var(--sh-trans);
}

.sh-priv__card:hover {
    transform: translateY(-3px);
    border-color: var(--sh-ink);
    box-shadow: 0 14px 30px rgba(11, 18, 32, .08);
}

.sh-priv__ic {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: var(--sh-bg-muted);
    color: var(--sh-ink);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.15rem;
    transition: background var(--sh-trans), color var(--sh-trans);
}

.sh-priv__card:hover .sh-priv__ic {
    background: var(--sh-ink);
    color: #fff;
}

.sh-priv__h {
    font-family: var(--sh-font-display);
    font-size: 1rem;
    font-weight: 600;
    color: var(--sh-ink);
    margin: .15rem 0 .3rem;
    letter-spacing: -.01em;
}

.sh-priv__p {
    color: var(--sh-text-2);
    font-size: .85rem;
    line-height: 1.55;
    margin: 0;
}

@media (max-width: 991.98px) {
    .sh-priv__grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .sh-priv__grid {
        grid-template-columns: 1fr;
    }
}

/* ============================================================
   PRICE COMPARISON
   ============================================================ */
/* ---- Karşılaştırma: "VS" karşı karşıya düzeni ---- */
.sh-cmp {
    padding: clamp(3rem, 5vw, 4.5rem) 0;
}

.sh-cmp__head {
    max-width: 680px;
    margin: 0 auto clamp(2rem, 4vw, 3rem);
    text-align: center;
}

.sh-cmp__head .sh-eyebrow {
    justify-content: center;
    margin-bottom: 1rem;
}

.sh-vs {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: clamp(1rem, 3vw, 2.25rem);
    align-items: stretch;
}

.sh-vs__card {
    display: flex;
    flex-direction: column;
    border-radius: var(--sh-r-xl);
    padding: clamp(1.5rem, 3vw, 2.5rem);
}

.sh-vs__card--others {
    background: var(--sh-bg-soft);
    border: 1px solid var(--sh-border);
}

.sh-vs__card--us {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(120% 90% at 85% 0%, rgba(255, 255, 255, .10) 0%, transparent 55%),
        linear-gradient(160deg, var(--sh-ink) 0%, var(--sh-ink-2) 100%);
    color: #fff;
    box-shadow: var(--sh-shadow-lg);
}

.sh-vs__top {
    padding-bottom: 1.1rem;
    margin-bottom: 1.1rem;
    border-bottom: 1px solid var(--sh-border);
}

.sh-vs__card--us .sh-vs__top {
    border-bottom-color: rgba(255, 255, 255, .14);
}

.sh-vs__icons {
    display: inline-flex;
    gap: .5rem;
    margin-bottom: .85rem;
}

.sh-vs__icons i {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    display: grid;
    place-items: center;
    font-size: 1.3rem;
    background: #fff;
    color: var(--sh-muted);
    border: 1px solid var(--sh-border);
}

.sh-vs__card--us .sh-vs__icons i {
    background: rgba(255, 255, 255, .12);
    color: #fff;
    border-color: rgba(255, 255, 255, .18);
}

.sh-vs__name {
    font-family: var(--sh-font-display);
    font-size: 1.3rem;
    font-weight: 600;
    margin: 0 0 .3rem;
    color: inherit;
}

.sh-vs__card--others .sh-vs__name {
    color: var(--sh-ink);
}

.sh-vs__tag {
    margin: 0;
    font-size: .9rem;
    color: var(--sh-muted);
}

.sh-vs__card--us .sh-vs__tag {
    color: rgba(255, 255, 255, .75);
}

.sh-vs__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: .15rem;
}

.sh-vs__item {
    display: flex;
    align-items: center;
    gap: .75rem;
    padding: .6rem 0;
    font-size: .95rem;
    line-height: 1.35;
    border-bottom: 1px dashed var(--sh-divider);
}

.sh-vs__item:last-child {
    border-bottom: 0;
}

.sh-vs__card--us .sh-vs__item {
    border-bottom-color: rgba(255, 255, 255, .08);
}

.sh-vs__mark {
    flex-shrink: 0;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    font-size: .8rem;
    font-weight: 700;
}

.is-no {
    color: var(--sh-muted);
}

.is-no .sh-vs__mark {
    background: rgba(239, 68, 68, .10);
    color: var(--sh-danger);
}

.is-no span:last-child {
    text-decoration: line-through;
    text-decoration-color: rgba(110, 118, 137, .45);
}

.is-yes .sh-vs__mark {
    background: var(--sh-accent);
    color: #fff;
}

.sh-vs__cta {
    margin-top: 1.6rem;
    align-self: flex-start;
}

.sh-vs__ribbon {
    position: absolute;
    top: 1.25rem;
    right: 1.25rem;
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    background: #fff;
    color: var(--sh-ink);
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    padding: .35rem .7rem;
    border-radius: 999px;
    box-shadow: 0 6px 16px rgba(0, 0, 0, .25);
}

.sh-vs__ribbon i {
    font-size: .72rem;
    color: var(--sh-primary);
}

.sh-vs__badge {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 5;
    transform: translate(-50%, -50%);
    width: 58px;
    height: 58px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #fff;
    color: var(--sh-ink);
    font-family: var(--sh-font-display);
    font-weight: 800;
    font-size: .95rem;
    letter-spacing: .04em;
    border: 1px solid var(--sh-border);
    box-shadow: 0 10px 26px rgba(11, 18, 32, .18);
}

@media (max-width: 767.98px) {
    .sh-vs {
        grid-template-columns: 1fr;
        gap: 1.25rem;
    }

    .sh-vs__badge {
        position: static;
        transform: none;
        margin: -.35rem auto;
        width: 50px;
        height: 50px;
        font-size: .85rem;
    }
}

/* ============================================================
   POPULAR ROUTES
   ============================================================ */
.sh-routes {
    padding: clamp(3rem, 5vw, 4.5rem) 0;
    background: var(--sh-bg-soft);
}

.sh-routes__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
}

.sh-route {
    display: block;
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r-lg);
    overflow: hidden;
    transition: transform var(--sh-trans), box-shadow var(--sh-trans), border-color var(--sh-trans);
}

.sh-route:hover {
    transform: translateY(-4px);
    box-shadow: var(--sh-shadow-lg);
    border-color: var(--sh-ink);
}

.sh-route__media {
    height: 180px;
    background: var(--sh-bg-muted);
    position: relative;
    overflow: hidden;
}

.sh-route__media img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .5s ease;
}

.sh-route:hover .sh-route__media img {
    transform: scale(1.04);
}

.sh-route__media::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 50%, rgba(11, 18, 32, .3) 100%);
}

.sh-route__body {
    padding: 1.1rem 1.25rem 1.25rem;
}

.sh-route__head {
    display: flex;
    align-items: center;
    gap: .55rem;
    color: var(--sh-ink);
    font-size: 1.05rem;
    font-weight: 600;
    margin-bottom: .55rem;
}

.sh-route__from {
    background: var(--sh-ink);
    color: #fff;
    padding: .2rem .55rem;
    border-radius: 6px;
    font-size: .8rem;
    font-weight: 700;
    letter-spacing: .04em;
}

.sh-route__head i {
    color: var(--sh-muted);
    font-size: .9rem;
}

.sh-route__to {
    color: var(--sh-ink);
}

.sh-route__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: .85rem;
    color: var(--sh-muted);
}

.sh-route__meta i {
    margin-right: .35rem;
}

.sh-route__price {
    color: var(--sh-ink);
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: -.01em;
}

@media (max-width: 991.98px) {
    .sh-routes__grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .sh-routes__grid {
        grid-template-columns: 1fr;
    }
}

/* ============================================================
   MEETING POINTS
   ============================================================ */
.sh-meet {
    padding: clamp(3rem, 5vw, 4.5rem) 0;
}

.sh-meet__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
}

.sh-meet__card {
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r-lg);
    overflow: hidden;
    box-shadow: 0 14px 36px rgba(11, 18, 32, .05);
    display: flex;
    flex-direction: column;
}

.sh-meet__media {
    position: relative;
    aspect-ratio: 16/9;
    background: var(--sh-bg-muted);
}

.sh-meet__media img,
.sh-meet__media iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: 0;
}

.sh-meet__code {
    position: absolute;
    top: 1rem;
    left: 1rem;
    background: var(--sh-ink);
    color: #fff;
    padding: .35rem .75rem;
    border-radius: 6px;
    font-size: .82rem;
    font-weight: 700;
    letter-spacing: .06em;
    z-index: 2;
}

.sh-meet__body {
    padding: 1.5rem 1.5rem 1.6rem;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.sh-meet__h {
    font-family: var(--sh-font-display);
    font-size: 1.2rem;
    font-weight: 600;
    color: var(--sh-ink);
    margin: 0 0 1rem;
    letter-spacing: -.015em;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .55rem;
}

.sh-meet__side {
    background: var(--sh-bg-soft);
    color: var(--sh-text);
    padding: .25rem .65rem;
    border-radius: 999px;
    font-size: .72rem;
    font-weight: 500;
    letter-spacing: .04em;
}

.sh-meet__list {
    list-style: none;
    padding: 0;
    margin: 0 0 1.25rem;
    display: flex;
    flex-direction: column;
    gap: .55rem;
    flex: 1;
}

.sh-meet__list li {
    display: flex;
    align-items: flex-start;
    gap: .55rem;
    color: var(--sh-text-2);
    font-size: .92rem;
    line-height: 1.45;
}

.sh-meet__list i {
    color: var(--sh-ink);
    flex-shrink: 0;
    margin-top: .15rem;
    font-size: .95rem;
}

.sh-meet__list a {
    color: var(--sh-ink);
    font-weight: 500;
}

.sh-meet__actions {
    display: flex;
    gap: .6rem;
    flex-wrap: wrap;
}

@media (max-width: 991.98px) {
    .sh-meet__grid {
        grid-template-columns: 1fr;
    }
}

/* ============================================================
   TESTIMONIALS
   ============================================================ */
.sh-rv {
    padding: clamp(3rem, 5vw, 4.5rem) 0;
    background: var(--sh-bg-soft);
}

.sh-rv__score {
    display: inline-flex;
    align-items: center;
    gap: .85rem;
    background: #fff;
    border: 1px solid var(--sh-border);
    padding: .75rem 1.15rem;
    border-radius: 999px;
    box-shadow: 0 8px 20px rgba(11, 18, 32, .05);
}

.sh-rv__score>div:last-child {
    display: flex;
    flex-direction: column;
    line-height: 1.15;
}

.sh-rv__score strong {
    color: var(--sh-ink);
    font-size: 1rem;
}

.sh-rv__score span {
    color: var(--sh-muted);
    font-size: .75rem;
}

.sh-rv__stars {
    display: inline-flex;
    gap: .15rem;
    color: var(--sh-primary);
    font-size: .9rem;
}

.sh-rv__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
}

.sh-rv__card {
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r-lg);
    padding: 1.5rem 1.5rem 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    transition: transform var(--sh-trans), box-shadow var(--sh-trans);
}

.sh-rv__card:hover {
    transform: translateY(-3px);
    box-shadow: var(--sh-shadow);
}

.sh-rv__top {
    display: flex;
    align-items: center;
    gap: .75rem;
}

.sh-rv__avatar {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: var(--sh-ink);
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 1.1rem;
    flex-shrink: 0;
}

.sh-rv__who {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    line-height: 1.25;
}

.sh-rv__who strong {
    color: var(--sh-ink);
    font-size: .95rem;
    font-weight: 600;
}

.sh-rv__who span {
    color: var(--sh-muted);
    font-size: .78rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sh-rv__txt {
    color: var(--sh-text);
    font-size: .94rem;
    line-height: 1.65;
    margin: 0;
    flex: 1;
}

.sh-rv__src {
    color: var(--sh-muted);
    font-size: .8rem;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    border-top: 1px solid var(--sh-divider);
    padding-top: .85rem;
}

.sh-rv__src i {
    color: #4285F4;
    font-size: .95rem;
}

@media (max-width: 991.98px) {
    .sh-rv__grid {
        display: flex;
        flex-direction: column;
    }
}

/* ============================================================
   FAQ
   ============================================================ */
.sh-faq {
    padding: clamp(3rem, 5vw, 4.5rem) 0;
}

.sh-faq__wrap {
    display: grid;
    grid-template-columns: .9fr 1.4fr;
    gap: clamp(2rem, 4vw, 4rem);
    align-items: start;
}

.sh-faq__intro {
    position: sticky;
    top: 100px;
}

.sh-faq__intro .sh-btn {
    margin-top: 1.25rem;
}

.sh-faq__list {
    display: flex;
    flex-direction: column;
    gap: .55rem;
}

.sh-faq__item {
    background: var(--sh-bg-soft);
    border: 1px solid transparent;
    border-radius: var(--sh-r);
    transition: background var(--sh-trans), border-color var(--sh-trans);
    overflow: hidden;
}

.sh-faq__item[open] {
    background: #fff;
    border-color: var(--sh-border);
    box-shadow: 0 8px 22px rgba(11, 18, 32, .05);
}

.sh-faq__q {
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    cursor: pointer;
    padding: 1.15rem 1.4rem;
    font-family: var(--sh-font-display);
    font-size: 1rem;
    font-weight: 600;
    color: var(--sh-ink);
    letter-spacing: -.01em;
}

.sh-faq__q::-webkit-details-marker {
    display: none;
}

.sh-faq__chev {
    flex-shrink: 0;
    transition: transform var(--sh-trans);
    color: var(--sh-muted);
    font-size: 1rem;
}

.sh-faq__item[open] .sh-faq__chev {
    transform: rotate(45deg);
    color: var(--sh-ink);
}

.sh-faq__a {
    padding: 0 1.4rem 1.25rem;
}

.sh-faq__a p {
    margin: 0;
    color: var(--sh-text-2);
    line-height: 1.7;
    font-size: .94rem;
}

@media (max-width: 991.98px) {
    .sh-faq__wrap {
        grid-template-columns: 1fr;
    }

    .sh-faq__intro {
        position: static;
    }
}

/* ============================================================
   BLOG
   ============================================================ */
.sh-blog {
    padding: clamp(3rem, 5vw, 4.5rem) 0;
    background: var(--sh-bg-soft);
}

.sh-blog__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
}

.sh-blog__card {
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r-lg);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: transform var(--sh-trans), box-shadow var(--sh-trans), border-color var(--sh-trans);
}

.sh-blog__card:hover {
    transform: translateY(-4px);
    box-shadow: var(--sh-shadow-lg);
    border-color: var(--sh-ink);
}

.sh-blog__media {
    aspect-ratio: 16/10;
    background: var(--sh-bg-muted);
    display: block;
    overflow: hidden;
}

.sh-blog__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .5s ease;
}

.sh-blog__card:hover .sh-blog__media img {
    transform: scale(1.05);
}

.sh-blog__body {
    padding: 1.4rem 1.5rem 1.5rem;
    display: flex;
    flex-direction: column;
    gap: .65rem;
    flex: 1;
}

.sh-blog__date {
    color: var(--sh-muted);
    font-size: .78rem;
    display: inline-flex;
    align-items: center;
    gap: .35rem;
}

.sh-blog__h {
    font-family: var(--sh-font-display);
    font-size: 1.15rem;
    font-weight: 600;
    margin: 0;
    line-height: 1.35;
    letter-spacing: -.01em;
}

.sh-blog__h a {
    color: var(--sh-ink);
}

.sh-blog__h a:hover {
    color: var(--sh-primary-700);
}

.sh-blog__p {
    color: var(--sh-text-2);
    font-size: .9rem;
    line-height: 1.6;
    margin: 0;
    flex: 1;
}

@media (max-width: 991.98px) {
    .sh-blog__grid {
        grid-template-columns: 1fr;
    }
}

/* ============================================================
   CTA
   ============================================================ */
.sh-cta {
    padding: clamp(3rem, 5vw, 4.5rem) 0 clamp(3.5rem, 6vw, 5.5rem);
}

.sh-cta__card {
    position: relative;
    background: var(--sh-ink);
    color: #fff;
    border-radius: clamp(20px, 2.5vw, 32px);
    padding: clamp(2.5rem, 5vw, 4rem) clamp(2rem, 5vw, 4rem);
    overflow: hidden;
    display: grid;
    grid-template-columns: 1.5fr 1fr;
    gap: 2rem;
    align-items: center;
}

.sh-cta__card::before {
    content: "";
    position: absolute;
    top: -40%;
    right: -10%;
    width: 60%;
    height: 180%;
    background: radial-gradient(ellipse at center, rgba(255, 255, 255, .06) 0%, transparent 60%);
    pointer-events: none;
}

.sh-cta__card::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .35) 50%, transparent);
}

.sh-cta__txt {
    position: relative;
    z-index: 1;
}

.sh-cta__h {
    font-family: var(--sh-font-display);
    font-size: clamp(1.6rem, 2.6vw, 2.2rem);
    font-weight: 600;
    margin: .85rem 0 .85rem;
    letter-spacing: -.02em;
    line-height: 1.18;
    color: #fff;
}

.sh-cta__p {
    color: rgba(255, 255, 255, .75);
    font-size: 1rem;
    line-height: 1.65;
    margin: 0;
    max-width: 560px;
}

.sh-cta__actions {
    display: flex;
    gap: .75rem;
    flex-wrap: wrap;
    justify-content: flex-end;
    position: relative;
    z-index: 1;
}

@media (max-width: 991.98px) {
    .sh-cta__card {
        grid-template-columns: 1fr;
    }

    .sh-cta__actions {
        justify-content: flex-start;
    }
}

/* ============================================================
   FOOTER (yenilenmiş)
   ============================================================ */
.sh-footer {
    background: #051036;
    color: rgba(255, 255, 255, .75);
    padding: clamp(3rem, 5vw, 4.5rem) 0 0;
    position: relative;
}

.sh-footer__top {
    display: grid;
    grid-template-columns: 1.6fr 1fr 1fr 1.2fr;
    gap: clamp(1.5rem, 3vw, 3rem);
    padding-bottom: 3rem;
}

.sh-footer__brand {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.sh-footer__logo {
    display: inline-flex;
    align-items: center;
    gap: .65rem;
    color: #fff;
}

.sh-footer__logo img {
    height: 38px;
    width: auto;
    filter: brightness(0) invert(1);
}

.sh-footer__name {
    font-family: var(--sh-font-display);
    font-size: 1.15rem;
    font-weight: 700;
    letter-spacing: -.015em;
    color: #fff;
}

.sh-footer__about {
    color: rgba(255, 255, 255, .65);
    font-size: .92rem;
    line-height: 1.65;
    margin: 0;
    max-width: 380px;
}

.sh-footer__social {
    display: flex;
    gap: .5rem;
    margin-top: .5rem;
}

.sh-footer__social a {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    background: rgba(255, 255, 255, .06);
    color: rgba(255, 255, 255, .85);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    transition: all var(--sh-trans);
}

.sh-footer__social a:hover {
    background: #fff;
    color: #000;
    transform: translateY(-2px);
}

.sh-footer__tursab {
    display: inline-block;
    margin-top: .35rem;
    transition: transform var(--sh-trans);
}

.sh-footer__tursab img {
    display: block;
    width: auto;
    height: auto;
    max-width: 180px;
    border-radius: 8px;
}

.sh-footer__tursab:hover {
    transform: translateY(-2px);
}

.sh-footer__title {
    font-family: var(--sh-font-display);
    color: #fff;
    font-size: .82rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .12em;
    margin: 0 0 1.15rem;
}

.sh-footer__list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: .65rem;
}

.sh-footer__list a {
    color: rgba(255, 255, 255, .7);
    font-size: .92rem;
    transition: color var(--sh-trans);
    display: inline-flex;
    align-items: center;
    gap: .45rem;
}

.sh-footer__list a:hover {
    color: #fff;
}

.sh-footer__contact {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: .85rem;
}

.sh-footer__contact li {
    display: flex;
    align-items: flex-start;
    gap: .65rem;
    color: rgba(255, 255, 255, .7);
    font-size: .9rem;
    line-height: 1.5;
}

.sh-footer__contact i {
    color: #fff;
    font-size: .95rem;
    flex-shrink: 0;
    margin-top: .2rem;
}

.sh-footer__contact a {
    color: rgba(255, 255, 255, .85);
}

.sh-footer__contact a:hover {
    color: #fff;
}

.sh-footer__seo {
    border-top: 1px solid rgba(255, 255, 255, .08);
    padding: 1.1rem 0 .25rem;
    color: rgba(255, 255, 255, .55);
}

.sh-footer__seo-title {
    font-size: .78rem;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, .7);
    margin: 0 0 .4rem;
}

.sh-footer__seo-text {
    margin: 0;
    font-size: .82rem;
    line-height: 1.7;
    color: rgba(255, 255, 255, .5);
}

.sh-footer__seo-text a {
    color: rgba(255, 255, 255, .7);
    text-decoration: none;
    transition: color var(--sh-trans);
}

.sh-footer__seo-text a:hover {
    color: #fff;
}

.sh-footer__bottom {
    border-top: 1px solid rgba(255, 255, 255, .08);
    padding: 1.25rem 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 1rem;
    font-size: .82rem;
    color: rgba(255, 255, 255, .55);
}

.sh-footer__bottom-links {
    display: flex;
    gap: 1.25rem;
    flex-wrap: wrap;
}

.sh-footer__bottom-links a {
    color: rgba(255, 255, 255, .65);
}

.sh-footer__bottom-links a:hover {
    color: #fff;
}

.sh-footer__credit {
    border-top: 1px solid rgba(255, 255, 255, .06);
    padding: .85rem 0;
    text-align: center;
    font-size: .78rem;
    color: rgba(255, 255, 255, .5);
    letter-spacing: .02em;
}

.sh-footer__credit a {
    color: rgba(255, 255, 255, .85);
    font-weight: 600;
    text-decoration: none;
    transition: color .2s ease;
}

.sh-footer__credit a:hover {
    color: #60a5fa;
}

@media (max-width: 991.98px) {
    .sh-footer__top {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 575.98px) {
    .sh-footer__top {
        grid-template-columns: 1fr;
    }

    .sh-footer__bottom {
        justify-content: flex-start;
    }
}

/* ============================================================
   PAGE HERO (iÃ§ sayfa Ã¼st bÃ¶lÃ¼mÃ¼) â€” reusable
   ============================================================ */
.sh-phead {
    position: relative;
    background: var(--sh-gold);
    color: var(--sh-ink);
    padding: clamp(3.5rem, 6vw, 5.5rem) 0 clamp(3rem, 5vw, 4.5rem);
    overflow: hidden;
    isolation: isolate;
}

.sh-phead.has-bg::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    background:
        radial-gradient(80% 70% at 50% 20%, rgba(7, 13, 25, .55) 0%, rgba(7, 13, 25, .85) 60%, rgba(7, 13, 25, .98) 100%),
        linear-gradient(180deg, rgba(7, 13, 25, .35) 0%, rgba(7, 13, 25, .85) 100%);
}

.sh-phead__bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
    opacity: .55;
    filter: saturate(.92);
}

.sh-phead .container {
    position: relative;
    z-index: 3;
}

.sh-phead__inner {
    max-width: 760px;
}

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

.sh-phead--center .sh-phead__inner {
    margin-left: auto;
    margin-right: auto;
}

.sh-phead--center .sh-crumbs ol {
    justify-content: center;
}

.sh-phead__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    color: rgba(5, 16, 54, .8);
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .2em;
    text-transform: uppercase;
    margin-bottom: 1rem;
}

.sh-phead__eyebrow::before {
    content: "";
    width: 26px;
    height: 1px;
    background: rgba(5, 16, 54, .55);
}

.sh-phead--center .sh-phead__eyebrow::after {
    content: "";
    width: 26px;
    height: 1px;
    background: rgba(5, 16, 54, .55);
}

.sh-phead__title {
    font-family: var(--sh-font-display);
    font-size: clamp(1.85rem, 3.6vw, 2.85rem);
    font-weight: 600;
    color: var(--sh-ink);
    margin: 0 0 .85rem;
    letter-spacing: -.02em;
    line-height: 1.15;
    text-wrap: balance;
}

.sh-phead__sub {
    color: rgba(5, 16, 54, .82);
    font-size: clamp(.98rem, 1.15vw, 1.05rem);
    line-height: 1.65;
    margin: 0;
    max-width: 620px;
}

.sh-phead--center .sh-phead__sub {
    margin-left: auto;
    margin-right: auto;
}

/* Breadcrumbs */
.sh-crumbs {
    margin-bottom: 1.5rem;
}

.sh-crumbs ol {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    font-size: .78rem;
    color: rgba(5, 16, 54, .6);
}

.sh-crumbs li {
    display: inline-flex;
    align-items: center;
}

.sh-crumbs li+li::before {
    content: "/";
    margin-right: .5rem;
    opacity: .5;
}

.sh-crumbs a {
    color: rgba(5, 16, 54, .75);
}

.sh-crumbs a:hover {
    color: var(--sh-ink);
}

.sh-crumbs span[aria-current="page"] {
    color: var(--sh-ink);
    font-weight: 600;
}

/* Görselli hero (has-bg) — koyu zemin üzerinde metinler beyaz kalsın */
.sh-phead.has-bg {
    color: #fff;
}

.sh-phead.has-bg .sh-phead__title {
    color: #fff;
}

.sh-phead.has-bg .sh-phead__sub {
    color: rgba(255, 255, 255, .78);
}

.sh-phead.has-bg .sh-phead__eyebrow {
    color: rgba(255, 255, 255, .78);
}

.sh-phead.has-bg .sh-phead__eyebrow::before,
.sh-phead.has-bg .sh-phead__eyebrow::after {
    background: rgba(255, 255, 255, .55);
}

.sh-phead.has-bg .sh-crumbs ol {
    color: rgba(255, 255, 255, .55);
}

.sh-phead.has-bg .sh-crumbs a {
    color: rgba(255, 255, 255, .7);
}

.sh-phead.has-bg .sh-crumbs a:hover {
    color: #fff;
}

.sh-phead.has-bg .sh-crumbs span[aria-current="page"] {
    color: #fff;
}

/* ============================================================
   ABOUT â€” story + stats + timeline
   ============================================================ */
.sh-about-story {
    padding: clamp(3.5rem, 6vw, 5rem) 0;
}

.sh-about-story__grid {
    display: grid;
    grid-template-columns: 1.3fr 1fr;
    gap: clamp(2.5rem, 5vw, 4.5rem);
    align-items: start;
}

.sh-about-story__txt .sh-eyebrow {
    margin-bottom: 1rem;
}

.sh-about-story__p {
    color: var(--sh-text-2);
    font-size: 1rem;
    line-height: 1.75;
    margin: 0 0 1.1rem;
}

.sh-about-story__cta {
    display: flex;
    gap: .65rem;
    flex-wrap: wrap;
    margin-top: 1.6rem;
}

.sh-about-story__stats {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .85rem;
    background: var(--sh-ink);
    color: #fff;
    border-radius: clamp(20px, 2vw, 28px);
    padding: 1.6rem;
    position: relative;
    overflow: hidden;
}

.sh-about-story__stats::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 100% 0%, rgba(11, 18, 32, .08) 0%, transparent 50%);
    pointer-events: none;
}

.sh-about-stat {
    background: rgba(255, 255, 255, .04);
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 14px;
    padding: 1.15rem 1.1rem;
    position: relative;
    z-index: 1;
}

.sh-about-stat strong {
    display: block;
    font-family: var(--sh-font-display);
    font-size: 1.85rem;
    font-weight: 700;
    color: #fff;
    letter-spacing: -.02em;
    line-height: 1.05;
    margin-bottom: .35rem;
}

.sh-about-stat span {
    color: rgba(255, 255, 255, .65);
    font-size: .82rem;
    line-height: 1.4;
    display: block;
}

.sh-about-values {
    padding: clamp(3rem, 5vw, 4.5rem) 0;
    background: var(--sh-bg-soft);
}

.sh-timeline {
    padding: clamp(3rem, 5vw, 4.5rem) 0;
}

.sh-timeline__list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
    counter-reset: tl;
    position: relative;
}

.sh-timeline__item {
    background: #fff;
    border: 1px solid var(--sh-border);
    border-top: 3px solid var(--sh-ink);
    border-radius: var(--sh-r);
    padding: 1.5rem 1.25rem 1.25rem;
    position: relative;
}

.sh-timeline__year {
    display: inline-block;
    font-family: var(--sh-font-display);
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--sh-ink);
    letter-spacing: -.01em;
    margin-bottom: .5rem;
}

.sh-timeline__txt {
    color: var(--sh-text-2);
    font-size: .92rem;
    line-height: 1.6;
    margin: 0;
}

.sh-about-rich {
    padding: clamp(2.5rem, 4vw, 4rem) 0;
}

.sh-about-rich__wrap {
    max-width: 760px;
    margin: 0 auto;
}

.sh-rte h2,
.sh-rte h3 {
    font-family: var(--sh-font-display);
    color: var(--sh-ink);
    margin-top: 1.5em;
    margin-bottom: .5em;
}

.sh-rte p {
    color: var(--sh-text-2);
    line-height: 1.75;
    margin: 0 0 1em;
}

.sh-rte ul,
.sh-rte ol {
    color: var(--sh-text-2);
    line-height: 1.75;
    padding-left: 1.4em;
}

.sh-rte a {
    color: var(--sh-ink);
    text-decoration: underline;
    text-underline-offset: 3px;
}

.sh-rte img {
    max-width: 100%;
    height: auto;
    border-radius: var(--sh-r);
    margin: 1em 0;
}

.sh-rte blockquote {
    border-left: 3px solid var(--sh-ink);
    padding-left: 1.2rem;
    margin: 1.5rem 0;
    color: var(--sh-text);
    font-style: italic;
}

@media (max-width: 991.98px) {
    .sh-about-story__grid {
        grid-template-columns: 1fr;
    }

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

@media (max-width: 575.98px) {
    .sh-about-story__stats {
        grid-template-columns: 1fr 1fr;
        padding: 1.2rem;
    }

    .sh-about-stat strong {
        font-size: 1.5rem;
    }

    .sh-timeline__list {
        grid-template-columns: 1fr;
    }
}

/* ============================================================
   FLEET (Vehicles)
   ============================================================ */
.sh-fleet {
    padding: clamp(3rem, 5vw, 4.5rem) 0;
}

.sh-fleet__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
}

.sh-fleet__card {
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r-lg);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: transform var(--sh-trans), box-shadow var(--sh-trans), border-color var(--sh-trans);
}

.sh-fleet__card:hover {
    transform: translateY(-4px);
    box-shadow: var(--sh-shadow-lg);
    border-color: var(--sh-ink);
}

.sh-fleet__media {
    aspect-ratio: 16/10;
    background: var(--sh-bg-muted);
    position: relative;
    overflow: hidden;
}

.sh-fleet__media img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .5s ease;
}

.sh-fleet__card:hover .sh-fleet__media img {
    transform: scale(1.04);
}

.sh-fleet__badge {
    position: absolute;
    top: 1rem;
    left: 1rem;
    background: var(--sh-primary);
    color: var(--sh-on-primary);
    font-size: .68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .12em;
    padding: .3rem .65rem;
    border-radius: 999px;
    z-index: 2;
    box-shadow: 0 6px 16px rgba(11, 18, 32, .28);
}

.sh-fleet__body {
    padding: 1.5rem 1.5rem 1.5rem;
    display: flex;
    flex-direction: column;
    flex: 1;
    gap: .65rem;
}

.sh-fleet__class {
    color: var(--sh-muted);
    font-size: .72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .14em;
}

.sh-fleet__h {
    font-family: var(--sh-font-display);
    font-size: 1.35rem;
    font-weight: 600;
    color: var(--sh-ink);
    margin: 0;
    letter-spacing: -.015em;
}

.sh-fleet__p {
    color: var(--sh-text-2);
    font-size: .92rem;
    line-height: 1.6;
    margin: 0;
}

.sh-fleet__specs {
    list-style: none;
    padding: 0;
    margin: .35rem 0 .25rem;
    display: flex;
    gap: 1.25rem;
    flex-wrap: wrap;
    font-size: .85rem;
    color: var(--sh-text);
}

.sh-fleet__specs li {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    font-weight: 500;
}

.sh-fleet__specs i {
    color: var(--sh-ink);
    font-size: 1rem;
}

.sh-fleet__more {
    border-top: 1px solid var(--sh-divider);
    padding-top: .75rem;
    margin-top: .25rem;
}

.sh-fleet__more summary {
    list-style: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: .85rem;
    font-weight: 600;
    color: var(--sh-ink);
}

.sh-fleet__more summary::-webkit-details-marker {
    display: none;
}

.sh-fleet__more summary i {
    transition: transform var(--sh-trans);
    font-size: .9rem;
    color: var(--sh-muted);
}

.sh-fleet__more[open] summary i {
    transform: rotate(180deg);
    color: var(--sh-ink);
}

.sh-fleet__feat {
    list-style: none;
    padding: .75rem 0 .25rem;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: .45rem;
}

.sh-fleet__feat li {
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    color: var(--sh-text-2);
    font-size: .85rem;
}

.sh-fleet__feat i {
    color: var(--sh-ink);
    font-size: .9rem;
    flex-shrink: 0;
}

.sh-fleet__cta {
    margin-top: .5rem;
    align-self: flex-start;
}

@media (max-width: 991.98px) {
    .sh-fleet__grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 575.98px) {
    .sh-fleet__grid {
        grid-template-columns: 1fr;
    }
}

/* ============================================================
   MEETING POINTS DETAIL (alt sayfa)
   ============================================================ */
.sh-mpdet {
    padding: clamp(3rem, 5vw, 4.5rem) 0;
}

.sh-mpdet__card {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: clamp(1.5rem, 3vw, 3rem);
    align-items: center;
    padding: clamp(1.5rem, 3vw, 2.5rem) 0;
    border-bottom: 1px solid var(--sh-divider);
}

.sh-mpdet__card:last-child {
    border-bottom: 0;
}

.sh-mpdet__card.is-rev .sh-mpdet__media {
    order: 2;
}

.sh-mpdet__media {
    aspect-ratio: 4/3;
    border-radius: clamp(16px, 2vw, 24px);
    overflow: hidden;
    background: var(--sh-bg-muted);
    position: relative;
    box-shadow: 0 18px 40px rgba(11, 18, 32, .08);
}

.sh-mpdet__media img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.sh-mpdet__code {
    position: absolute;
    top: 1.1rem;
    left: 1.1rem;
    background: var(--sh-ink);
    color: #fff;
    font-weight: 700;
    font-size: .82rem;
    letter-spacing: .08em;
    padding: .35rem .75rem;
    border-radius: 8px;
    box-shadow: 0 6px 14px rgba(0, 0, 0, .25);
}

.sh-mpdet__body .sh-eyebrow {
    margin-bottom: .85rem;
}

.sh-mpdet__desc {
    color: var(--sh-text-2);
    font-size: .98rem;
    line-height: 1.65;
    margin: 0 0 1.25rem;
    max-width: 52ch;
}

.sh-mpdet__h {
    font-family: var(--sh-font-display);
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--sh-ink);
    margin: 1.5rem 0 .65rem;
    letter-spacing: -.01em;
}

.sh-mpdet__tips {
    list-style: none;
    padding: 0;
    margin: 0 0 1.5rem;
    display: flex;
    flex-direction: column;
    gap: .55rem;
}

.sh-mpdet__tips li {
    display: flex;
    align-items: flex-start;
    gap: .55rem;
    color: var(--sh-text-2);
    font-size: .92rem;
    line-height: 1.55;
}

.sh-mpdet__tips i {
    color: var(--sh-ink);
    flex-shrink: 0;
    margin-top: .15rem;
}

@media (max-width: 991.98px) {
    .sh-mpdet__card {
        grid-template-columns: 1fr;
    }

    .sh-mpdet__card.is-rev .sh-mpdet__media {
        order: 0;
    }
}

/* ============================================================
   BLOG LIST
   ============================================================ */
.sh-bloglist {
    padding: clamp(3rem, 5vw, 4.5rem) 0;
}

.sh-bloglist .sh-blog__grid {
    background: transparent;
}

.sh-empty {
    text-align: center;
    padding: 4rem 1rem;
    background: var(--sh-bg-soft);
    border-radius: var(--sh-r-lg);
    color: var(--sh-text-2);
}

.sh-empty i {
    font-size: 2.4rem;
    color: var(--sh-muted);
    margin-bottom: .75rem;
    display: inline-block;
}

.sh-empty h3 {
    font-family: var(--sh-font-display);
    color: var(--sh-ink);
    margin: 0 0 .35rem;
    font-size: 1.15rem;
}

.sh-empty p {
    margin: 0;
    font-size: .92rem;
}

/* ============================================================
   CONTACT PAGE
   ============================================================ */
.sh-contact {
    padding: clamp(3rem, 5vw, 4.5rem) 0;
}

.sh-contact__grid {
    display: grid;
    grid-template-columns: .85fr 1.15fr;
    gap: clamp(1.5rem, 3vw, 2.5rem);
    align-items: start;
}

.sh-contact__side {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.sh-contact__card {
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r-lg);
    padding: 1.75rem 1.6rem;
}

.sh-contact__card--dark {
    background: var(--sh-ink);
    color: #fff;
    border-color: var(--sh-ink);
    position: relative;
    overflow: hidden;
}

.sh-contact__card--dark::before {
    content: "";
    position: absolute;
    top: -50%;
    right: -20%;
    width: 60%;
    height: 200%;
    background: radial-gradient(ellipse at center, rgba(11, 18, 32, .08) 0%, transparent 60%);
    pointer-events: none;
}

.sh-contact__h {
    font-family: var(--sh-font-display);
    font-size: 1.4rem;
    font-weight: 600;
    margin: 0 0 .85rem;
    letter-spacing: -.015em;
    line-height: 1.2;
    color: inherit;
}

.sh-contact__card--dark .sh-contact__h {
    color: #fff;
}

.sh-contact__sub {
    font-family: var(--sh-font-display);
    font-size: .82rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .14em;
    color: var(--sh-muted);
    margin: 0 0 .85rem;
}

.sh-contact__card--dark .sh-contact__sub {
    color: rgba(255, 255, 255, .65);
}

.sh-contact__lead {
    color: var(--sh-text-2);
    font-size: .94rem;
    line-height: 1.6;
    margin: 0 0 1.5rem;
}

.sh-contact__quick {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: .5rem;
    position: relative;
    z-index: 1;
}

.sh-contact__quick a {
    display: grid;
    grid-template-columns: 38px 1fr;
    grid-template-rows: auto auto;
    column-gap: .85rem;
    align-items: center;
    padding: .85rem 1rem;
    background: rgba(255, 255, 255, .04);
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 12px;
    color: rgba(255, 255, 255, .85);
    transition: all var(--sh-trans);
}

.sh-contact__quick a:hover {
    background: rgba(255, 255, 255, .08);
    border-color: rgba(255, 255, 255, .2);
    transform: translateX(2px);
    color: #fff;
}

.sh-contact__quick i {
    grid-row: 1 / span 2;
    width: 38px;
    height: 38px;
    background: rgba(255, 255, 255, .08);
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.05rem;
}

.sh-contact__quick span {
    font-size: .72rem;
    color: rgba(255, 255, 255, .55);
    text-transform: uppercase;
    letter-spacing: .1em;
}

.sh-contact__quick strong {
    font-size: .95rem;
    font-weight: 600;
    color: #fff;
}

.sh-contact__list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: .65rem;
}

.sh-contact__list li {
    display: flex;
    align-items: flex-start;
    gap: .65rem;
    color: var(--sh-text-2);
    font-size: .94rem;
    line-height: 1.5;
}

.sh-contact__list i {
    color: var(--sh-ink);
    margin-top: .15rem;
    flex-shrink: 0;
}

.sh-contact__social {
    display: flex;
    gap: .5rem;
}

.sh-contact__social a {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    background: var(--sh-bg-soft);
    color: var(--sh-ink);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    transition: all var(--sh-trans);
}

.sh-contact__social a:hover {
    background: var(--sh-ink);
    color: #fff;
    transform: translateY(-2px);
}

.sh-contact__form-wrap {
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r-lg);
    padding: clamp(1.5rem, 3vw, 2.5rem);
    box-shadow: 0 14px 36px rgba(11, 18, 32, .05);
}

.sh-cform {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.sh-cform__row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

.sh-cform__field {
    display: flex;
    flex-direction: column;
    gap: .35rem;
}

.sh-cform__field span {
    font-size: .78rem;
    font-weight: 600;
    color: var(--sh-text);
    letter-spacing: .02em;
}

.sh-cform__field input,
.sh-cform__field textarea {
    width: 100%;
    padding: .85rem 1rem;
    border: 1px solid var(--sh-border-2);
    border-radius: 10px;
    background: #fff;
    font: inherit;
    font-size: .94rem;
    color: var(--sh-ink);
    transition: border-color var(--sh-trans), box-shadow var(--sh-trans);
}

.sh-cform__field textarea {
    min-height: 140px;
    resize: vertical;
    line-height: 1.5;
}

.sh-cform__field input:focus,
.sh-cform__field textarea:focus {
    outline: 0;
    border-color: var(--sh-ink);
    box-shadow: 0 0 0 3px rgba(11, 18, 32, .06);
}

.sh-alert {
    display: flex;
    align-items: center;
    gap: .75rem;
    padding: 1rem 1.2rem;
    border-radius: var(--sh-r);
    margin-bottom: 1.5rem;
    font-size: .94rem;
    font-weight: 500;
}

.sh-alert i {
    font-size: 1.1rem;
}

.sh-alert--ok {
    background: #ECFDF5;
    color: #065F46;
    border: 1px solid #A7F3D0;
}

.sh-alert--err {
    background: #FEF2F2;
    color: #991B1B;
    border: 1px solid #FECACA;
}

.sh-contact__map {
    margin-top: clamp(1.5rem, 3vw, 2.5rem);
    border-radius: var(--sh-r-lg);
    overflow: hidden;
    border: 1px solid var(--sh-border);
    aspect-ratio: 21/9;
}

.sh-contact__map iframe {
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
}

@media (max-width: 991.98px) {
    .sh-contact__grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 575.98px) {
    .sh-cform__row {
        grid-template-columns: 1fr;
    }
}

/* ============================================================
   WIZARD STEP BAR â€” koyu zemin / aktif: beyaz pill + shadow
   ============================================================ */
.sh-stepbar {
    background: var(--sh-ink);
    color: #fff;
    padding: 1.5rem 0;
    border-bottom: 1px solid rgba(255, 255, 255, .06);
}

.sh-stepbar__list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
}

.sh-stepbar__step {
    display: flex;
    align-items: center;
    gap: .85rem;
    padding: .75rem 1rem;
    border-radius: 14px;
    border: 1px solid rgba(255, 255, 255, .08);
    background: rgba(255, 255, 255, .03);
    color: rgba(255, 255, 255, .6);
    transition: all var(--sh-trans);
    min-width: 0;
}

.sh-stepbar__num {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .18);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 1rem;
    color: rgba(255, 255, 255, .85);
    flex-shrink: 0;
    transition: all var(--sh-trans);
}

.sh-stepbar__label {
    display: flex;
    flex-direction: column;
    line-height: 1.25;
    min-width: 0;
}

.sh-stepbar__label strong {
    color: rgba(255, 255, 255, .78);
    font-size: .9rem;
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sh-stepbar__label small {
    color: rgba(255, 255, 255, .45);
    font-size: .72rem;
    margin-top: .15rem;
}

/* AKTÄ°F: beyaz pill + koyu yazÄ± + shadow */
.sh-stepbar__step.is-current {
    background: #fff;
    border-color: #fff;
    box-shadow: 0 14px 28px rgba(0, 0, 0, .35), 0 2px 6px rgba(0, 0, 0, .18);
    color: var(--sh-ink);
}

.sh-stepbar__step.is-current .sh-stepbar__num {
    background: var(--sh-ink);
    color: #fff;
    border-color: var(--sh-ink);
}

.sh-stepbar__step.is-current .sh-stepbar__label strong {
    color: var(--sh-ink);
}

.sh-stepbar__step.is-current .sh-stepbar__label small {
    color: var(--sh-muted);
}

.sh-stepbar__step.is-done .sh-stepbar__num {
    background: rgba(255, 255, 255, .18);
    color: #fff;
    border-color: rgba(255, 255, 255, .18);
}

@media (max-width: 767.98px) {
    .sh-stepbar__list {
        grid-template-columns: 1fr;
        gap: .65rem;
    }
}

/* ============================================================
   ALERT â€” uyarÄ± (sarÄ± yerine soft amber/dark text)
   ============================================================ */
.sh-alert--warn {
    background: #FFF7ED;
    color: #7C2D12;
    border: 1px solid #FED7AA;
}

/* ============================================================
   ARAÃ‡ SEÃ‡Ä°MÄ° â€” 2 kolon (sol araÃ§lar / saÄŸ sticky Ã¶zet)
   ============================================================ */
.sh-vsel {
    padding: clamp(2.5rem, 4vw, 4rem) 0 clamp(3rem, 5vw, 5rem);
}

.sh-vsel__head {
    text-align: center;
    max-width: 720px;
    margin: 0 auto 2rem;
}

.sh-vsel__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: clamp(1.25rem, 2.5vw, 2rem);
    align-items: start;
}

.sh-vsel__main {
    min-width: 0;
}

.sh-vsel__list {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.sh-vsel__side {
    position: sticky;
    top: 90px;
    /* header iÃ§in tampon */
    align-self: start;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

@media (max-width: 1199.98px) {
    .sh-vsel__grid {
        grid-template-columns: 1fr;
    }

    .sh-vsel__side {
        position: static;
    }
}

/* ============================================================
   TRIP SUMMARY (saÄŸ sticky kart)
   ============================================================ */
.sh-tripsum {
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r-lg);
    box-shadow: 0 18px 40px rgba(11, 18, 32, .06);
    padding: 1.5rem;
}

.sh-tripsum__head {
    margin-bottom: 1.25rem;
}

.sh-tripsum__eyebrow {
    color: var(--sh-muted);
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.sh-tripsum__h {
    font-family: var(--sh-font-display);
    font-size: 1.2rem;
    font-weight: 600;
    color: var(--sh-ink);
    margin: .3rem 0 0;
    letter-spacing: -.015em;
}

/* Rota â€” vertical timeline benzeri */
.sh-tripsum__route {
    display: grid;
    grid-template-columns: 22px 1fr;
    gap: 0 .75rem;
    padding-bottom: 1.1rem;
    margin-bottom: 1.1rem;
    border-bottom: 1px dashed var(--sh-divider);
    position: relative;
}

.sh-tripsum__pt {
    display: contents;
}

.sh-tripsum__dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    margin-top: .35rem;
    justify-self: center;
    align-self: start;
    grid-column: 1;
    box-shadow: 0 0 0 4px #fff;
    z-index: 2;
}

.sh-tripsum__dot--from {
    background: #fff;
    border: 2px solid var(--sh-ink);
}

.sh-tripsum__dot--to {
    background: var(--sh-ink);
    border: 2px solid var(--sh-ink);
}

.sh-tripsum__pt-txt {
    grid-column: 2;
    padding-bottom: 1rem;
    min-width: 0;
}

.sh-tripsum__pt:last-child .sh-tripsum__pt-txt {
    padding-bottom: 0;
}

.sh-tripsum__line {
    grid-column: 1;
    grid-row: 1 / -1;
    width: 2px;
    background: linear-gradient(180deg, var(--sh-ink) 0%, var(--sh-ink) 100%);
    justify-self: center;
    margin-top: .85rem;
    margin-bottom: .85rem;
    border-radius: 2px;
    opacity: .25;
    z-index: 1;
}

.sh-tripsum__lbl {
    display: block;
    font-size: .68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .12em;
    color: var(--sh-muted);
    margin-bottom: .25rem;
}

.sh-tripsum__pt-txt strong {
    display: block;
    font-size: .92rem;
    font-weight: 600;
    color: var(--sh-ink);
    letter-spacing: -.005em;
    line-height: 1.4;
    word-break: break-word;
}

/* Meta */
.sh-tripsum__meta {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: .85rem .85rem;
}

.sh-tripsum__meta li {
    display: flex;
    align-items: flex-start;
    gap: .55rem;
    min-width: 0;
}

.sh-tripsum__meta i {
    color: var(--sh-ink);
    font-size: .95rem;
    flex-shrink: 0;
    width: 30px;
    height: 30px;
    background: var(--sh-bg-soft);
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.sh-tripsum__meta div {
    display: flex;
    flex-direction: column;
    line-height: 1.25;
    min-width: 0;
}

.sh-tripsum__meta span {
    font-size: .66rem;
    text-transform: uppercase;
    letter-spacing: .1em;
    color: var(--sh-muted);
    font-weight: 600;
}

.sh-tripsum__meta strong {
    font-size: .85rem;
    color: var(--sh-ink);
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin-top: .15rem;
}

.sh-tripsum__edit {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    margin-top: 1.25rem;
    padding: .65rem 1rem;
    border: 1px solid var(--sh-border-2);
    border-radius: 999px;
    color: var(--sh-ink);
    font-weight: 600;
    font-size: .82rem;
    transition: all var(--sh-trans);
    width: 100%;
    justify-content: center;
}

.sh-tripsum__edit:hover {
    background: var(--sh-ink);
    color: #fff;
    border-color: var(--sh-ink);
}

/* ============================================================
   VEHICLE CARD â€” 2 kolon (medya + body), Swiper
   ============================================================ */
.sh-vcard {
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r-lg);
    overflow: hidden;
    /* display: grid; */
    /* grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.2fr); */
    box-shadow: 0 14px 32px rgba(11, 18, 32, .05);
    transition: box-shadow var(--sh-trans), border-color var(--sh-trans), transform var(--sh-trans);
    position: relative;
    display: flex;
    justify-content: flex-end;
}

.sh-vcard:hover {
    border-color: var(--sh-ink);
    box-shadow: 0 28px 50px rgba(11, 18, 32, .12);
    transform: translateY(-2px);
}

.sh-vcard.is-disabled {
    opacity: .65;
}

.sh-vcard.is-disabled .sh-vcard__cta {
    pointer-events: none;
    background: var(--sh-muted);
    border-color: var(--sh-muted);
    color: #fff;
}

/* media */
.sh-vcard__media {
    background: var(--sh-bg-muted);
    overflow: hidden;
    position: absolute;
    left: 0;
    height: 100%;
    width: 44.2%;
    max-height: 552px;
}

.sh-vswiper {
    width: 100%;
    height: 100%;
}

.sh-vswiper .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.sh-vcard__badge {
    position: absolute;
    top: 1rem;
    left: 1rem;
    z-index: 5;
    background: var(--sh-ink);
    color: #fff;
    font-size: .68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .12em;
    padding: .35rem .75rem;
    border-radius: 999px;
    box-shadow: 0 8px 20px rgba(0, 0, 0, .25);
}

.sh-vcard__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 6;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .92);
    border: 0;
    color: var(--sh-ink);
    font-size: 1.1rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    backdrop-filter: blur(6px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, .18);
    opacity: 0;
    transition: opacity .25s ease, background var(--sh-trans), color var(--sh-trans);
}

.sh-vcard__media:hover .sh-vcard__nav {
    opacity: 1;
}

.sh-vcard__nav:hover {
    background: var(--sh-ink);
    color: #fff;
}

.sh-vcard__nav--prev {
    left: .75rem;
}

.sh-vcard__nav--next {
    right: .75rem;
}

.sh-vcard__nav.swiper-button-disabled {
    opacity: 0 !important;
    pointer-events: none;
}

/* Swiper pagination override
   NOTE: Swiper'Ä±n `.swiper-horizontal > .swiper-pagination-bullets` kuralÄ±
   `left:0; width:100%` olarak set ediyor â€” daha spesifik selector ile geÃ§eriz */
.sh-vcard__media .sh-vcard__pagination,
.sh-vswiper .sh-vcard__pagination {
    position: absolute;
    bottom: .75rem !important;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%);
    z-index: 5;
    display: flex;
    gap: .35rem;
    justify-content: center;
    width: auto !important;
}

.sh-vcard__pagination .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    background: rgba(255, 255, 255, .55);
    opacity: 1;
    margin: 0 !important;
    transition: all var(--sh-trans);
}

.sh-vcard__pagination .swiper-pagination-bullet-active {
    width: 22px;
    border-radius: 4px;
    background: #fff;
}

/* body */
.sh-vcard__body {
    padding: 1.75rem 1.85rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    min-width: 0;
    width: calc(100% - 44.2%);
}

.sh-vcard__head {
    display: flex;
    flex-direction: column;
    gap: .35rem;
}

.sh-vcard__class {
    color: var(--sh-muted);
    font-size: .72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .14em;
}

.sh-vcard__h {
    font-family: var(--sh-font-display);
    font-size: clamp(1.25rem, 1.6vw, 1.5rem);
    font-weight: 600;
    color: var(--sh-ink);
    margin: 0;
    letter-spacing: -.015em;
}

.sh-vcard__p {
    color: var(--sh-text-2);
    font-size: .92rem;
    line-height: 1.6;
    margin: 0;
}

.sh-vcard__specs {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}

.sh-vcard__specs li {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    padding: .4rem .75rem;
    background: var(--sh-bg-soft);
    border-radius: 8px;
    font-size: .83rem;
    font-weight: 600;
    color: var(--sh-ink);
}

.sh-vcard__specs i {
    color: var(--sh-ink);
    font-size: .95rem;
}

.sh-vcard__perks {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .5rem .75rem;
    border-top: 1px dashed var(--sh-divider);
    padding-top: 1rem;
}

.sh-vcard__perks li {
    display: flex;
    align-items: center;
    gap: .5rem;
    font-size: .85rem;
    color: var(--sh-text-2);
}

.sh-vcard__perks i {
    color: var(--sh-ink);
    font-size: .95rem;
}

.sh-vcard__warn {
    display: flex;
    align-items: center;
    gap: .5rem;
    padding: .65rem .85rem;
    background: #FFF7ED;
    border: 1px solid #FED7AA;
    color: #7C2D12;
    border-radius: 10px;
    font-size: .85rem;
    font-weight: 500;
}

.sh-vcard__warn i {
    font-size: 1rem;
}

/* foot: price + cta â€” foot'u her zaman kartÄ±n tabanÄ±na yasla */
.sh-vcard__foot {
    margin-top: auto;
    border-top: 1px solid var(--sh-divider);
    padding-top: 1.1rem;
    display: flex;
    flex-direction: column;
    gap: .85rem;
}

.sh-vcard__foot-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    flex-wrap: wrap;
}

.sh-vcard__currencies {
    display: inline-flex;
    align-items: center;
    gap: .15rem;
    padding: .25rem;
    background: var(--sh-bg-soft);
    border-radius: 10px;
    width: max-content;
}

.sh-vcard__cur {
    border: 0;
    background: transparent;
    padding: .35rem .65rem;
    border-radius: 8px;
    font: inherit;
    font-size: .76rem;
    font-weight: 600;
    color: var(--sh-text-2);
    cursor: pointer;
    transition: all var(--sh-trans);
}

.sh-vcard__cur:hover {
    color: var(--sh-ink);
}

.sh-vcard__cur.is-active {
    background: #fff;
    color: var(--sh-ink);
    box-shadow: 0 2px 6px rgba(11, 18, 32, .10), 0 0 0 1px rgba(11, 18, 32, .05);
}

.sh-vcard__price-meta {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    font-size: .78rem;
    color: var(--sh-muted);
    font-weight: 500;
    text-align: right;
}

.sh-vcard__price-meta i {
    color: var(--sh-ok, #16a34a);
    font-size: .95rem;
}

/* Para birimi seçici barı (araç seçimi) */
.sh-vsel__curbar {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: .6rem;
    flex-wrap: wrap;
    margin: 0 0 1rem;
}

.sh-vsel__curlbl {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    font-size: .8rem;
    font-weight: 600;
    color: var(--sh-muted);
}

.sh-vsel__cur {
    display: inline-flex;
    gap: .25rem;
    background: var(--sh-bg-soft);
    border-radius: 10px;
    padding: .25rem;
}

.sh-vsel__cur-btn {
    border: 0;
    background: transparent;
    cursor: pointer;
    font: inherit;
    font-size: .8rem;
    font-weight: 700;
    color: var(--sh-text-2);
    padding: .35rem .7rem;
    border-radius: 8px;
    line-height: 1;
    white-space: nowrap;
    transition: background .15s, color .15s;
}

.sh-vsel__cur-btn:hover {
    color: var(--sh-ink);
}

.sh-vsel__cur-btn.is-on {
    background: #fff;
    color: var(--sh-ink);
    box-shadow: 0 1px 4px rgba(0, 0, 0, .14);
}

/* CTA: tam geniÅŸlik, fiyat solda â€” etiket saÄŸda */
.sh-vcard__cta {
    width: 100%;
    display: inline-flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    white-space: nowrap;
}

.sh-vcard__cta-price {
    font-family: var(--sh-font-display);
    font-size: clamp(1.15rem, 1.6vw, 1.4rem);
    font-weight: 700;
    letter-spacing: -.01em;
    line-height: 1;
}

.sh-vcard__cta-label {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    font-weight: 600;
}

.sh-vcard__cta-label i {
    font-size: 1rem;
}

/* responsive */
@media (max-width: 991.98px) {
    .sh-vcard {
        grid-template-columns: 1fr;
    }

    .sh-vcard__media {
        aspect-ratio: 16/9;
        min-height: 220px;
    }
}

@media (max-width: 575.98px) {
    .sh-vcard__body {
        padding: 1.25rem 1.25rem 1.5rem;
    }

    .sh-vcard__perks {
        grid-template-columns: 1fr 1fr;
    }

    .sh-vcard__foot-top {
        flex-direction: column;
        align-items: flex-start;
    }

    .sh-vcard__price-meta {
        text-align: left;
    }
}

/* ============================================================
   EK HÄ°ZMETLER (Ã¶nizleme)
   ============================================================ */
.sh-extras {
    margin: 3rem 0 1rem;
    padding: 2rem clamp(1.25rem, 3vw, 2.25rem);
    background: var(--sh-bg-soft);
    border-radius: var(--sh-r-lg);
}

.sh-extras__head {
    text-align: center;
    max-width: 620px;
    margin: 0 auto 1.5rem;
}

.sh-extras__h {
    font-family: var(--sh-font-display);
    font-size: clamp(1.4rem, 2vw, 1.7rem);
    font-weight: 600;
    color: var(--sh-ink);
    margin: .5rem 0 .35rem;
    letter-spacing: -.015em;
}

.sh-extras__p {
    color: var(--sh-text-2);
    margin: 0;
    font-size: .94rem;
}

.sh-extras__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: .85rem;
}

.sh-extras__opt {
    display: flex;
    align-items: center;
    gap: .85rem;
    padding: 1rem 1.1rem;
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r);
    transition: all var(--sh-trans);
}

.sh-extras__opt:hover {
    border-color: var(--sh-ink);
    transform: translateY(-1px);
}

.sh-extras__icon {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    background: var(--sh-bg-soft);
    color: var(--sh-ink);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.15rem;
    flex-shrink: 0;
}

.sh-extras__txt {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.sh-extras__txt strong {
    color: var(--sh-ink);
    font-size: .92rem;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sh-extras__txt span {
    color: var(--sh-muted);
    font-size: .8rem;
    margin-top: .15rem;
    font-weight: 500;
}

@media (max-width: 991.98px) {
    .sh-extras__grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 575.98px) {
    .sh-extras__grid {
        grid-template-columns: 1fr;
    }
}

/* ============================================================
   TRUST CARDS (saÄŸ panel altÄ± kompakt gÃ¼ven kartlarÄ±)
   ============================================================ */
.sh-vsel__trust {
    display: flex;
    flex-direction: column;
    gap: .65rem;
}

.sh-vsel__tcard {
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: 14px;
    padding: .9rem 1rem;
    display: flex;
    align-items: flex-start;
    gap: .65rem;
}

.sh-vsel__tcard i {
    color: var(--sh-ink);
    font-size: 1.1rem;
    width: 34px;
    height: 34px;
    background: var(--sh-bg-soft);
    border-radius: 9px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.sh-vsel__tcard>div {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.sh-vsel__tcard strong {
    display: block;
    color: var(--sh-ink);
    font-size: .82rem;
    font-weight: 600;
    line-height: 1.25;
}

.sh-vsel__tcard span {
    color: var(--sh-text-2);
    font-size: .72rem;
    line-height: 1.4;
}

@media (max-width: 575.98px) {
    .sh-vsel__trust {
        grid-template-columns: 1fr;
    }
}

/* ============================================================
   CHECKOUT (Step 2 â€” /rezervasyon-bilgileri)
   ============================================================ */
.sh-checkout {
    padding: clamp(2rem, 4vw, 3.5rem) 0 clamp(3rem, 5vw, 5rem);
}

.sh-checkout__head {
    text-align: center;
    max-width: 720px;
    margin: 0 auto 2rem;
}

.sh-alert {
    display: flex;
    align-items: flex-start;
    gap: .6rem;
    padding: .85rem 1rem;
    border-radius: 10px;
    font-size: .95rem;
    line-height: 1.4;
    margin: 0 0 1.25rem;
    border: 1px solid transparent;
}

.sh-alert i {
    font-size: 1.1rem;
    line-height: 1.2;
    flex-shrink: 0;
}

.sh-alert--error {
    background: #fdecea;
    color: #8a1c12;
    border-color: #f5b3ab;
}

.sh-alert--ok {
    background: #e8f5ee;
    color: #1f6d3a;
    border-color: #b5dec6;
}

.sh-checkout__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 380px;
    gap: clamp(1.25rem, 2vw, 2rem);
    align-items: start;
}

.sh-checkout__main {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.sh-checkout__side {
    /* position: sticky; top: 88px; */
    display: flex;
    flex-direction: column;
    gap: 1rem;
    align-self: start;
    height: 100%;
}

@media (max-width: 991.98px) {
    .sh-checkout__grid {
        grid-template-columns: 1fr;
    }

    .sh-checkout__side {
        position: static;
    }
}

/* --- Generic card --- */
.sh-card {
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r-lg);
    padding: 1.5rem clamp(1.25rem, 2vw, 1.85rem);
    box-shadow: 0 14px 32px rgba(11, 18, 32, .05);
}

.sh-card__head {
    margin-bottom: 1.25rem;
}

.sh-card__h {
    font-family: var(--sh-font-display);
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--sh-ink);
    margin: 0;
    display: flex;
    align-items: center;
    gap: .55rem;
    letter-spacing: -.01em;
}

.sh-card__h i {
    color: var(--sh-ink);
    font-size: 1.15rem;
}

.sh-card__sub {
    color: var(--sh-text-2);
    font-size: .88rem;
    margin: .35rem 0 0;
}

/* --- Vehicle mini summary --- */
.sh-vmini {
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r-lg);
    padding: .85rem;
    display: grid;
    grid-template-columns: 120px 1fr auto;
    gap: 1rem;
    align-items: center;
    box-shadow: 0 14px 32px rgba(11, 18, 32, .05);
}

.sh-vmini__img {
    width: 120px;
    height: 80px;
    border-radius: 12px;
    overflow: hidden;
    background: var(--sh-bg-muted);
}

.sh-vmini__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.sh-vmini__body {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: .25rem;
}

.sh-vmini__class {
    color: var(--sh-muted);
    font-size: .68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .14em;
}

.sh-vmini__name {
    font-family: var(--sh-font-display);
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--sh-ink);
    margin: 0;
    letter-spacing: -.01em;
}

.sh-vmini__specs {
    list-style: none;
    padding: 0;
    margin: .35rem 0 0;
    display: flex;
    flex-wrap: wrap;
    gap: .35rem .75rem;
    color: var(--sh-text-2);
    font-size: .82rem;
}

.sh-vmini__specs li {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
}

.sh-vmini__specs i {
    color: var(--sh-ink);
    font-size: .9rem;
}

.sh-vmini__change {
    display: inline-flex;
    align-items: center;
    gap: .25rem;
    color: var(--sh-text-2);
    font-size: .82rem;
    font-weight: 600;
    padding: .5rem .75rem;
    border-radius: 10px;
    border: 1px solid var(--sh-border);
    transition: all var(--sh-trans);
    white-space: nowrap;
}

.sh-vmini__change:hover {
    color: var(--sh-ink);
    border-color: var(--sh-ink);
    background: var(--sh-bg-soft);
}

.sh-vmini__change i {
    font-size: 1rem;
}

@media (max-width: 575.98px) {
    .sh-vmini {
        grid-template-columns: 88px 1fr;
        gap: .75rem;
    }

    .sh-vmini__img {
        width: 88px;
        height: 70px;
    }

    .sh-vmini__change {
        grid-column: 1 / -1;
        justify-content: center;
    }
}

/* --- Form (2 sütun) --- */
.sh-card .sh-form,
.sh-checkout .sh-form,
.sh-paxlist .sh-form,
.sh-form--2,
.sh-form--3 {
    display: grid;
    gap: 1rem;
}

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

@media (max-width: 575.98px) {
    .sh-form--2 {
        grid-template-columns: 1fr;
    }
}

/* Checkout form: legacy .sh-field (ana sayfa booking) stillerini iptal et */
.sh-form--2 .sh-field,
.sh-card .sh-field {
    background: transparent !important;
    padding: 0;
    min-height: 0;
    border: 0;
    border-radius: 0;
    cursor: auto;
    display: flex;
    flex-direction: column;
    gap: .35rem;
    margin: 0;
    transition: none;
}

.sh-form--2 .sh-field:hover,
.sh-card .sh-field:hover {
    background: transparent !important;
}

.sh-field {
    display: flex;
    flex-direction: column;
    gap: .35rem;
    min-width: 0;
}

.sh-field--full {
    grid-column: 1 / -1;
}

.sh-field__lbl {
    font-size: .82rem;
    font-weight: 600;
    color: var(--sh-ink);
    display: flex;
    align-items: center;
    gap: .35rem;
}

.sh-field__lbl em {
    color: #DC2626;
    font-style: normal;
    font-weight: 700;
}

.sh-field__opt {
    color: var(--sh-muted);
    font-weight: 500;
    font-size: .75rem;
}

.sh-field__inp,
.sh-field textarea.sh-field__inp {
    width: 100%;
    padding: .8rem 1rem;
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: 12px;
    font: inherit;
    font-size: .92rem;
    color: var(--sh-ink);
    transition: border-color var(--sh-trans), box-shadow var(--sh-trans), background var(--sh-trans);
    appearance: none;
}

.sh-field__inp:focus {
    outline: 0;
    border-color: var(--sh-ink);
    box-shadow: 0 0 0 3px rgba(11, 18, 32, .08);
    background: #fff;
}

.sh-field textarea.sh-field__inp {
    resize: vertical;
    min-height: 84px;
    line-height: 1.5;
}

/* Telefon input grup */
.sh-phone {
    display: grid;
    grid-template-columns: 160px 1fr;
    border: 1px solid var(--sh-border);
    border-radius: 12px;
    overflow: hidden;
    background: #fff;
    transition: border-color var(--sh-trans), box-shadow var(--sh-trans);
}

.sh-phone:focus-within {
    border-color: var(--sh-ink);
    box-shadow: 0 0 0 3px rgba(11, 18, 32, .08);
}

.sh-phone__dial {
    appearance: none;
    -webkit-appearance: none;
    border: 0;
    border-right: 1px solid var(--sh-border);
    background: var(--sh-bg-soft);
    padding: .8rem .85rem;
    font: inherit;
    font-size: .85rem;
    color: var(--sh-ink);
    cursor: pointer;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 16 16'><path fill='%236E7689' d='M3.2 5.8a.7.7 0 011-.05L8 9.13l3.8-3.38a.7.7 0 11.94 1.05l-4.27 3.8a.7.7 0 01-.94 0L3.25 6.8a.7.7 0 01-.05-1z'/></svg>");
    background-repeat: no-repeat;
    background-position: right .65rem center;
    padding-right: 1.85rem;
}

.sh-phone__num {
    border: 0;
    padding: .8rem 1rem;
    font: inherit;
    font-size: .92rem;
    color: var(--sh-ink);
    background: #fff;
}

.sh-phone__num:focus {
    outline: 0;
}

@media (max-width: 575.98px) {
    .sh-phone {
        grid-template-columns: 130px 1fr;
    }
}

/* Checkbox satÄ±rÄ± */
.sh-check {
    display: flex;
    align-items: flex-start;
    gap: .65rem;
    padding: .65rem 0;
    color: var(--sh-text-2);
    font-size: .88rem;
    line-height: 1.5;
    cursor: pointer;
}

.sh-check input[type="checkbox"] {
    appearance: none;
    -webkit-appearance: none;
    width: 18px;
    height: 18px;
    border: 1.5px solid var(--sh-border-2);
    border-radius: 5px;
    cursor: pointer;
    flex-shrink: 0;
    background: #fff;
    margin-top: .15rem;
    position: relative;
    transition: all var(--sh-trans);
}

.sh-check input[type="checkbox"]:checked {
    background: var(--sh-ink);
    border-color: var(--sh-ink);
}

.sh-check input[type="checkbox"]:checked::after {
    content: '';
    position: absolute;
    left: 5px;
    top: 1px;
    width: 5px;
    height: 10px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.sh-check a {
    color: var(--sh-ink);
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.sh-check--terms {
    padding-top: 1rem;
    margin-top: .5rem;
    border-top: 1px solid var(--sh-divider);
}

/* --- Opsiyonlar (option satÄ±rÄ±) --- */
.sh-opt {
    display: grid;
    grid-template-columns: 42px 1fr auto;
    align-items: center;
    gap: .85rem;
    padding: .85rem .25rem;
    border-bottom: 1px dashed var(--sh-divider);
    cursor: pointer;
}

.sh-opt:last-child {
    border-bottom: 0;
    padding-bottom: .25rem;
}

.sh-opt__icon {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    background: var(--sh-bg-soft);
    color: var(--sh-ink);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.15rem;
    flex-shrink: 0;
}

.sh-opt__txt {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.sh-opt__txt strong {
    color: var(--sh-ink);
    font-size: .92rem;
    font-weight: 600;
}

.sh-opt__txt small {
    color: var(--sh-muted);
    font-size: .8rem;
    margin-top: .15rem;
    font-weight: 500;
}

.sh-opt__divider {
    margin: 1rem 0 .25rem;
    display: flex;
    align-items: center;
    gap: .75rem;
    color: var(--sh-muted);
    font-size: .72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .14em;
}

.sh-opt__divider::before,
.sh-opt__divider::after {
    content: '';
    flex: 1;
    height: 1px;
    background: var(--sh-divider);
}

/* Quantity stepper */
.sh-qty {
    display: inline-flex;
    align-items: center;
    gap: 0;
    background: var(--sh-bg-soft);
    border-radius: 10px;
    padding: .25rem;
}

.sh-qty__btn {
    width: 32px;
    height: 32px;
    border: 0;
    background: #fff;
    border-radius: 8px;
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--sh-ink);
    cursor: pointer;
    transition: all var(--sh-trans);
    box-shadow: 0 1px 2px rgba(11, 18, 32, .08);
}

.sh-qty__btn:hover {
    background: var(--sh-ink);
    color: #fff;
}

.sh-qty__val {
    width: 36px;
    text-align: center;
    border: 0;
    background: transparent;
    font: inherit;
    font-size: .95rem;
    font-weight: 700;
    color: var(--sh-ink);
    pointer-events: none;
}

/* Switch (toll on/off) â€” kendi class'Ä± (.sh-switch legacy ile Ã§akÄ±ÅŸÄ±yor) */
.sh-tgl {
    display: inline-block;
    flex-shrink: 0;
    position: relative;
}

.sh-tgl input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.sh-tgl__track {
    display: inline-flex;
    align-items: center;
    width: 44px;
    height: 24px;
    background: var(--sh-border-2);
    border-radius: 999px;
    padding: 0;
    transition: background var(--sh-trans);
    cursor: pointer;
}

.sh-tgl__dot {
    display: block;
    width: 24px;
    height: 24px;
    background: #fff;
    border-radius: 50%;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .25), 0 0 0 1px rgba(0, 0, 0, .06);
    transform: translateX(0);
    transition: transform var(--sh-trans);
}

.sh-tgl input:checked+.sh-tgl__track {
    background: var(--sh-ink);
}

.sh-tgl input:checked+.sh-tgl__track .sh-tgl__dot {
    transform: translateX(20px);
}

.sh-tgl input:focus-visible+.sh-tgl__track {
    box-shadow: 0 0 0 3px rgba(11, 18, 32, .15);
}

/* --- Tip --- */
.sh-tip {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.sh-tip__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(82px, 1fr));
    gap: .55rem;
}

.sh-tip__opt {
    position: relative;
    min-height: 58px;
    border: 1.5px solid var(--sh-border);
    background: #fff;
    border-radius: 12px;
    padding: .5rem .5rem;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .1rem;
    color: var(--sh-ink);
    transition: all var(--sh-trans);
}

.sh-tip__opt strong {
    font-family: var(--sh-font-display);
    font-size: 1.1rem;
    font-weight: 700;
    line-height: 1.05;
    letter-spacing: -.01em;
}

.sh-tip__opt span {
    font-size: .6rem;
    color: var(--sh-muted);
    font-weight: 600;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.sh-tip__opt:hover {
    border-color: var(--sh-ink);
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(11, 18, 32, .08);
}

.sh-tip__opt:active {
    transform: translateY(0);
}

.sh-tip__opt.is-active {
    border-color: var(--sh-ink);
    background: var(--sh-ink);
    color: #fff;
    box-shadow: 0 8px 20px rgba(11, 18, 32, .22);
}

.sh-tip__opt.is-active span {
    color: rgba(255, 255, 255, .72);
}

/* Akıllı yuvarlama önerisi */
.sh-tip__opt--round {
    border-style: dashed;
    border-color: color-mix(in srgb, var(--sh-accent) 45%, var(--sh-border-2));
    background: linear-gradient(135deg, color-mix(in srgb, var(--sh-accent) 12%, #fff), color-mix(in srgb, var(--sh-accent) 4%, #fff));
    color: color-mix(in srgb, var(--sh-accent) 72%, var(--sh-ink));
}

.sh-tip__opt--round i {
    position: absolute;
    top: .35rem;
    right: .4rem;
    font-size: .72rem;
    color: var(--sh-accent);
    margin: 0;
}

.sh-tip__opt--round strong {
    font-size: 1.05rem;
    color: inherit;
}

.sh-tip__opt--round span {
    color: color-mix(in srgb, var(--sh-accent) 60%, var(--sh-muted));
}

.sh-tip__opt--round:hover {
    border-color: var(--sh-accent);
    box-shadow: 0 6px 16px color-mix(in srgb, var(--sh-accent) 22%, transparent);
}

.sh-tip__opt--round.is-active {
    border-style: solid;
    border-color: var(--sh-accent);
    background: var(--sh-accent);
    color: #fff;
    box-shadow: 0 8px 20px color-mix(in srgb, var(--sh-accent) 35%, transparent);
}

.sh-tip__opt--round.is-active i,
.sh-tip__opt--round.is-active span {
    color: #fff;
}

.sh-tip__foot {
    display: flex;
    align-items: center;
    gap: .85rem;
    flex-wrap: wrap;
}

.sh-tip__custom {
    display: inline-flex;
    align-items: center;
}

.sh-tip__custom label {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    border: 1.5px solid var(--sh-border);
    background: var(--sh-soft, #f6f7f9);
    border-radius: 12px;
    padding: .5rem .9rem;
    color: var(--sh-text-2);
    font-size: .85rem;
    font-weight: 600;
    transition: border-color var(--sh-trans), box-shadow var(--sh-trans), background var(--sh-trans);
}

.sh-tip__custom label:focus-within {
    border-color: var(--sh-ink);
    box-shadow: 0 0 0 3px rgba(11, 18, 32, .1);
    background: #fff;
}

.sh-tip__custom label>i {
    color: var(--sh-muted);
    font-size: .9rem;
}

.sh-tip__custom input {
    width: 76px;
    border: 0;
    background: transparent;
    font: inherit;
    font-size: 1rem;
    font-weight: 700;
    color: var(--sh-ink);
    text-align: right;
    padding: .2rem 0;
    appearance: textfield;
    -moz-appearance: textfield;
}

.sh-tip__custom input::-webkit-outer-spin-button,
.sh-tip__custom input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    appearance: none;
    margin: 0;
}

.sh-tip__custom input:focus {
    outline: 0;
}

.sh-tip__custom em {
    font-size: .72rem;
    color: var(--sh-muted);
    font-weight: 600;
    letter-spacing: .08em;
    font-style: normal;
}

.sh-tip__clear {
    margin-left: auto;
    border: 0;
    background: transparent;
    color: var(--sh-muted);
    font: inherit;
    font-size: .82rem;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    padding: .5rem .25rem;
    transition: color var(--sh-trans);
}

.sh-tip__clear:hover {
    color: var(--sh-danger, #d23b3b);
}

/* --- Payment options --- */
.sh-pay {
    display: flex;
    flex-direction: column;
    gap: .85rem;
}

.sh-pay__opt {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 1rem;
    align-items: center;
    padding: 1.1rem 1.15rem;
    border: 1.5px solid var(--sh-border);
    border-radius: var(--sh-r);
    background: #fff;
    cursor: pointer;
    transition: all var(--sh-trans);
}

.sh-pay__opt:hover {
    border-color: var(--sh-ink);
}

.sh-pay__opt.is-active {
    border-color: var(--sh-ink);
    box-shadow: 0 0 0 3px rgba(11, 18, 32, .08);
    background: #FAFBFC;
}

.sh-pay__opt input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.sh-pay__head {
    display: grid;
    grid-template-columns: 44px 1fr;
    align-items: center;
    gap: .85rem;
    min-width: 0;
}

.sh-pay__icon {
    width: 44px;
    height: 44px;
    border-radius: 11px;
    background: var(--sh-bg-soft);
    color: var(--sh-ink);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
}

.sh-pay__opt.is-active .sh-pay__icon {
    background: var(--sh-ink);
    color: #fff;
}

.sh-pay__title {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.sh-pay__title strong {
    color: var(--sh-ink);
    font-size: .98rem;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    gap: .35rem;
}

.sh-pay__title small {
    color: var(--sh-text-2);
    font-size: .8rem;
    margin-top: .2rem;
    line-height: 1.45;
}

.sh-pay__fee {
    color: #DC2626;
    font-size: .78rem;
    font-weight: 700;
}

.sh-pay__cta {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: .5rem;
}

.sh-pay__total {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0;
}

.sh-pay__total em {
    font-size: .68rem;
    color: var(--sh-muted);
    font-style: normal;
    text-transform: uppercase;
    letter-spacing: .1em;
    font-weight: 600;
}

.sh-pay__total strong {
    font-family: var(--sh-font-display);
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--sh-ink);
    line-height: 1.1;
}

.sh-pay__cta .sh-btn {
    white-space: nowrap;
    padding-left: 1.1rem;
    padding-right: 1.1rem;
}

@media (max-width: 575.98px) {
    .sh-pay__opt {
        display: flex;
        flex-direction: column;
    }

    .sh-pay__opt .sh-cardpay {
        margin: 0;
    }

    .sh-pay__cta {
        flex-direction: column;
        align-items: flex-start;
    }

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

    .sh-pay__cta .sh-btn {
        flex: 1;
        justify-content: center;
    }

    .sh-form--2 .sh-field,
    .sh-card .sh-field {
        padding: 0 !important;
    }
}

/* --- Price breakdown sidebar --- */
.sh-bdown {
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r-lg);
    padding: 1.25rem 1.4rem;
    box-shadow: 0 14px 32px rgba(11, 18, 32, .05);
}

.sh-bdown__head {
    margin-bottom: .85rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    flex-wrap: wrap;
}

.sh-bdown__head h3 {
    font-family: var(--sh-font-display);
    font-size: 1rem;
    font-weight: 600;
    color: var(--sh-ink);
    margin: 0;
    display: flex;
    align-items: center;
    gap: .5rem;
}

.sh-bdown__cur {
    display: inline-flex;
    gap: .25rem;
    background: var(--sh-bg-soft);
    border-radius: 9px;
    padding: .2rem;
}

.sh-bdown__cur-btn {
    border: 0;
    background: transparent;
    cursor: pointer;
    font: inherit;
    font-size: .76rem;
    font-weight: 600;
    color: var(--sh-text-2);
    padding: .28rem .55rem;
    border-radius: 7px;
    line-height: 1;
    white-space: nowrap;
    transition: background .15s, color .15s;
}

.sh-bdown__cur-btn:hover {
    color: var(--sh-ink);
}

.sh-bdown__cur-btn.is-on {
    background: #fff;
    color: var(--sh-ink);
    box-shadow: 0 1px 3px rgba(0, 0, 0, .12);
}

.sh-bdown__list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.sh-bdown__row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: .55rem 0;
    border-bottom: 1px dashed var(--sh-divider);
    font-size: .88rem;
    color: var(--sh-text-2);
}

.sh-bdown__row:last-child {
    border-bottom: 0;
}

.sh-bdown__row strong {
    color: var(--sh-ink);
    font-weight: 600;
    font-variant-numeric: tabular-nums;
}

.sh-bdown__row em {
    font-style: normal;
    color: var(--sh-ink);
    font-weight: 600;
}

.sh-bdown__row--fee strong {
    color: #DC2626;
}

.sh-bdown__row--surcharge {
    color: #b45309;
}

.sh-bdown__row--surcharge i {
    margin-right: .25rem;
}

.sh-bdown__row--surcharge strong {
    color: #b45309;
}

.sh-bdown__row--note {
    font-size: .82rem;
    color: #92400e;
    padding-top: 0;
    padding-bottom: .25rem;
}

.sh-bdown__row--note em {
    font-style: normal;
    color: #92400e;
    font-weight: 500;
    margin-left: .15rem;
}

/* Gece / saatlik ek Ã¼cret â€” transfer Ã¼cretine dahil bilgisi */
.sh-bdown__surcharge {
    display: flex;
    align-items: center;
    gap: .65rem;
    margin: .5rem 0;
    padding: .6rem .7rem;
    border: 1px solid #fde4c4;
    background: linear-gradient(180deg, #fffaf3, #fff6ea);
    border-radius: 12px;
}

.sh-bdown__surcharge-ico {
    flex: 0 0 auto;
    width: 30px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #fde9c9;
    color: #b45309;
    font-size: .95rem;
}

.sh-bdown__surcharge-text {
    display: flex;
    flex-direction: column;
    line-height: 1.25;
    min-width: 0;
    flex: 1 1 auto;
}

.sh-bdown__surcharge-text strong {
    font-size: .86rem;
    font-weight: 600;
    color: #7c3a06;
}

.sh-bdown__surcharge-text small {
    font-size: .72rem;
    color: #b07636;
}

.sh-bdown__surcharge-amt {
    flex: 0 0 auto;
    font-size: .86rem;
    font-weight: 700;
    color: #b45309;
    font-variant-numeric: tabular-nums;
}

.sh-bdown__total {
    margin-top: .85rem;
    padding-top: .85rem;
    border-top: 2px solid var(--sh-ink);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.sh-bdown__total span {
    font-size: .82rem;
    font-weight: 600;
    color: var(--sh-ink);
    text-transform: uppercase;
    letter-spacing: .08em;
}

.sh-bdown__total strong {
    font-family: var(--sh-font-display);
    font-size: 1.4rem;
    font-weight: 700;
    color: var(--sh-ink);
    letter-spacing: -.01em;
    font-variant-numeric: tabular-nums;
}

.sh-bdown__vatnote {
    margin: .55rem 0 0;
    display: flex;
    align-items: center;
    gap: .4rem;
    font-size: .72rem;
    color: #6b7280;
    line-height: 1.4;
}

.sh-bdown__vatnote i {
    color: #9ca3af;
}

/* --- Step bar: tamamlanmÄ±ÅŸ adÄ±m --- */
.sh-stepbar__step.is-done .sh-stepbar__num {
    background: var(--sh-ink);
    color: #fff;
}

.sh-stepbar__step.is-done .sh-stepbar__num i {
    font-size: 1rem;
}

/* ============================================================
   intl-tel-input (telefon alanÄ±) â€” kendi inputumuza uyarla
   ============================================================ */
.iti {
    width: 100%;
    display: block;
}

.iti__tel-input,
input.sh-iti__inp.iti__tel-input {
    width: 100%;
    padding: .8rem 1rem;
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: 12px;
    font: inherit;
    font-size: .92rem;
    color: var(--sh-ink);
    transition: border-color var(--sh-trans), box-shadow var(--sh-trans);
}

.iti__tel-input:focus {
    outline: 0;
    border-color: var(--sh-ink);
    box-shadow: 0 0 0 3px rgba(11, 18, 32, .08);
}

.iti--separate-dial-code .iti__selected-flag {
    background: var(--sh-bg-soft);
    border-radius: 12px 0 0 12px;
    padding: 0 8px 0 12px;
}

.iti--separate-dial-code .iti__selected-dial-code {
    color: var(--sh-ink);
    font-weight: 600;
}

.iti__country-list {
    border: 1px solid var(--sh-border);
    border-radius: 12px;
    box-shadow: 0 18px 38px rgba(11, 18, 32, .14);
    padding: .35rem;
    font-size: .9rem;
    max-height: 260px;
}

.iti__country.iti__highlight {
    background: var(--sh-bg-soft);
    border-radius: 8px;
}

.iti__divider {
    border-bottom: 1px solid var(--sh-divider);
    margin: .25rem 0;
}

input.sh-iti--error.iti__tel-input,
input.sh-iti__inp.sh-iti--error {
    border-color: #DC2626 !important;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, .12) !important;
}


/* ============================================================
   STEP 2 â€” DiÄŸer Yolcular (paxlist)
   ============================================================ */
.sh-card__count {
    font-size: .82rem;
    font-weight: 600;
    color: var(--sh-muted);
    margin-left: .25rem;
    font-family: var(--sh-font);
}

.sh-form--3 {
    display: grid;
    gap: 1rem;
    grid-template-columns: 1.4fr 1fr 1.2fr;
}

@media (max-width: 767.98px) {
    .sh-form--3 {
        grid-template-columns: 1fr;
    }
}

.sh-paxlist {
    display: flex;
    flex-direction: column;
    gap: .75rem;
}

.sh-paxlist__row {
    display: grid;
    grid-template-columns: 32px 1fr;
    gap: .85rem;
    padding: .85rem;
    background: var(--sh-bg-soft);
    border: 1px solid var(--sh-divider);
    border-radius: var(--sh-r);
}

.sh-paxlist__no {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #fff;
    color: var(--sh-ink);
    border: 1px solid var(--sh-border-2);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-family: var(--sh-font-display);
    font-weight: 700;
    font-size: .82rem;
    line-height: 1;
    margin-top: .35rem;
}

.sh-paxlist__fields {
    min-width: 0;
}

.sh-paxlist .sh-field__inp {
    background: #fff !important;
}

/* ============================================================
   STEP 3 â€” /rezervasyon-tamamlandi  (Quiet Luxury, single column)
   ============================================================ */
.sh-thx {
    padding: clamp(2rem, 4vw, 3.5rem) 0 clamp(3rem, 5vw, 5rem);
    background: var(--sh-bg-soft);
}

.sh-thx__paper {
    max-width: 1000px;
    margin: 0 auto;
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r-lg);
    box-shadow: 0 1px 0 rgba(11, 18, 32, .02), 0 12px 32px rgba(11, 18, 32, .05);
    padding: clamp(1.25rem, 3vw, 2.5rem);
}

/* ---- top bar (PDF) ---- */
.sh-thx__topbar {
    display: flex;
    justify-content: flex-end;
    margin-bottom: .5rem;
}

.sh-thx__pdf {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    padding: .45rem .8rem;
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: 999px;
    color: var(--sh-ink);
    font-size: .82rem;
    font-weight: 600;
    cursor: pointer;
    transition: background .2s, border-color .2s;
}

.sh-thx__pdf:hover {
    background: var(--sh-bg-soft);
    border-color: var(--sh-border-2);
}

.sh-thx__pdf i {
    font-size: .95rem;
}

/* ---- HERO ---- */
.sh-thx__hero {
    text-align: center;
    padding: .5rem 0 1.75rem;
    border-bottom: 1px solid var(--sh-divider);
    margin-bottom: 2rem;
}

.sh-thx__seal {
    width: 64px;
    height: 64px;
    margin: 0 auto 1.25rem;
    border-radius: 50%;
    background: #fff;
    border: 1.5px solid var(--sh-ink);
    color: var(--sh-ink);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.sh-thx__seal::after {
    content: '';
    position: absolute;
    inset: -8px;
    border-radius: 50%;
    border: 1px solid var(--sh-divider);
    pointer-events: none;
}

.sh-thx__kicker {
    font-size: .72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .22em;
    color: var(--sh-muted);
    margin: 0 0 .65rem;
}

.sh-thx__h {
    font-family: var(--sh-font-display);
    font-size: clamp(1.7rem, 3.4vw, 2.35rem);
    font-weight: 600;
    color: var(--sh-ink);
    letter-spacing: -.015em;
    margin: 0 0 .85rem;
    line-height: 1.15;
}

.sh-thx__lead {
    color: var(--sh-text-2);
    font-size: .95rem;
    line-height: 1.6;
    max-width: 480px;
    margin: 0 auto 1.5rem;
}

/* Reference */
.sh-thx__refbox {
    display: inline-flex;
    align-items: center;
    gap: .9rem;
    padding: .55rem .55rem .55rem 1rem;
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: 999px;
}

.sh-thx__reflbl {
    font-size: .68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .14em;
    color: var(--sh-muted);
}

.sh-thx__refcode {
    font-family: var(--sh-font-display);
    font-size: 1.05rem;
    font-weight: 700;
    letter-spacing: .04em;
    color: var(--sh-ink);
    font-variant-numeric: tabular-nums;
}

.sh-thx__refcopy {
    width: 32px;
    height: 32px;
    border: 1px solid var(--sh-border);
    background: #fff;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--sh-ink);
    cursor: pointer;
    transition: background .2s, border-color .2s;
    font-size: .9rem;
}

.sh-thx__refcopy:hover {
    background: var(--sh-ink);
    color: #fff;
    border-color: var(--sh-ink);
}

.sh-thx__refcopy.is-copied {
    background: var(--sh-ink);
    color: #fff;
    border-color: var(--sh-ink);
}

/* ---- BONUS ---- */
.sh-thx__bonus {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.15rem;
    background: #F6F8FB;
    border: 1px solid #EFE6CE;
    border-radius: var(--sh-r);
    margin-bottom: 1.75rem;
}

.sh-thx__bonus-ic {
    width: 40px;
    height: 40px;
    flex: 0 0 auto;
    border-radius: 50%;
    background: #fff;
    border: 1px solid #E7DBB6;
    color: var(--sh-primary-700);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
}

.sh-thx__bonus-txt {
    flex: 1;
    min-width: 0;
}

.sh-thx__bonus-txt strong {
    display: block;
    color: var(--sh-ink);
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    margin-bottom: .15rem;
}

.sh-thx__bonus-txt small {
    color: var(--sh-text-2);
    font-size: .82rem;
    line-height: 1.45;
    display: block;
}

.sh-thx__bonus-link {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: .1rem;
    color: var(--sh-ink);
    font-size: .85rem;
    font-weight: 600;
    text-decoration: none;
    border-bottom: 1px solid var(--sh-ink);
    padding-bottom: 1px;
    white-space: nowrap;
}

.sh-thx__bonus-link:hover {
    color: var(--sh-primary-700);
    border-color: var(--sh-primary-700);
}

.sh-thx__bonus-link i {
    font-size: 1.1rem;
}

@media (max-width: 575.98px) {
    .sh-thx__bonus {
        flex-wrap: wrap;
    }

    .sh-thx__bonus-link {
        width: 100%;
        justify-content: center;
        padding-top: .25rem;
        border-bottom: 0;
    }
}

/* ---- Sections ---- */
.sh-thx__sect {
    padding: 1.5rem 0;
    border-bottom: 1px solid var(--sh-divider);
}

.sh-thx__sect:first-of-type {
    padding-top: 0;
}

.sh-thx__sect--last {
    border-bottom: 0;
    padding-bottom: .5rem;
}

.sh-thx__sect-h {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.sh-thx__sect-h h2 {
    font-family: var(--sh-font-display);
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--sh-ink);
    margin: 0;
    letter-spacing: -.005em;
}

.sh-thx__sect-meta {
    font-size: .78rem;
    color: var(--sh-muted);
    font-variant-numeric: tabular-nums;
    text-transform: uppercase;
    letter-spacing: .08em;
}

/* Route */
.sh-thx__route {
    display: flex;
    flex-direction: column;
    gap: .25rem;
}

.sh-thx__pt {
    display: grid;
    grid-template-columns: 18px 1fr;
    gap: .85rem;
    align-items: flex-start;
    padding: .25rem 0;
}

.sh-thx__pt>div {
    min-width: 0;
}

.sh-thx__dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #fff;
    border: 2px solid var(--sh-ink);
    margin-top: .35rem;
    justify-self: center;
}

.sh-thx__dot--from {
    border-color: var(--sh-ink);
}

.sh-thx__dot--to {
    background: var(--sh-ink);
}

.sh-thx__line {
    width: 2px;
    margin: -.15rem 0 -.15rem 8px;
    height: 18px;
    background: var(--sh-divider);
    align-self: flex-start;
}

.sh-thx__lbl {
    display: block;
    font-size: .7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .12em;
    color: var(--sh-muted);
    margin-bottom: .15rem;
}

.sh-thx__pt strong {
    display: block;
    color: var(--sh-ink);
    font-weight: 600;
    line-height: 1.4;
    word-break: break-word;
}

.sh-thx__pt small {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    color: var(--sh-text-2);
    font-size: .85rem;
    margin-top: .35rem;
}

.sh-thx__pt small i {
    color: var(--sh-muted);
}

/* Pax tablosu */
.sh-thx__tablewrap {
    overflow-x: auto;
}

.sh-thx__table {
    width: 100%;
    border-collapse: collapse;
    font-size: .92rem;
    min-width: 540px;
}

.sh-thx__table thead th {
    text-align: left;
    padding: .6rem .85rem;
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--sh-muted);
    border-bottom: 1px solid var(--sh-border);
    background: transparent;
}

.sh-thx__table tbody td {
    padding: .85rem;
    border-bottom: 1px solid var(--sh-divider);
    vertical-align: middle;
    color: var(--sh-text);
}

.sh-thx__table tbody tr:last-child td {
    border-bottom: 0;
}

.sh-thx__table strong {
    color: var(--sh-ink);
    font-weight: 600;
}

.sh-thx__table a {
    color: inherit;
    text-decoration: none;
    border-bottom: 1px solid var(--sh-divider);
    transition: border-color .2s;
}

.sh-thx__table a:hover {
    border-color: var(--sh-ink);
}

.sh-thx__table-no {
    width: 36px;
    text-align: center !important;
    color: var(--sh-muted) !important;
    font-weight: 600;
    font-variant-numeric: tabular-nums;
    font-size: .85rem;
}

.sh-thx__dash {
    color: var(--sh-muted-2);
}

.sh-thx__badge {
    display: inline-block;
    margin-left: .5rem;
    padding: .1rem .5rem;
    background: var(--sh-bg-muted);
    color: var(--sh-ink);
    border-radius: 999px;
    font-size: .65rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    vertical-align: middle;
}

/* Pay */
.sh-thx__status {
    display: inline-block;
    padding: .22rem .55rem;
    font-size: .65rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .12em;
    border-radius: 999px;
    border: 1px solid var(--sh-border-2);
    color: var(--sh-text-2);
    background: #fff;
}

.sh-thx__status--pending {
    border-color: #E7DBB6;
    color: var(--sh-primary-700);
    background: #F6F8FB;
}

.sh-thx__status--ok {
    border-color: #C9E5D2;
    color: #1F7A3F;
    background: #F0F8F2;
}

.sh-thx__pay {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 1.5rem;
    align-items: center;
    padding: 1rem 1.15rem;
    background: var(--sh-bg-soft);
    border: 1px solid var(--sh-divider);
    border-radius: var(--sh-r);
}

@media (max-width: 575.98px) {
    .sh-thx__pay {
        grid-template-columns: 1fr;
    }
}

.sh-thx__pay-method {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    color: var(--sh-ink);
    font-weight: 700;
    font-size: 1rem;
    margin-bottom: .35rem;
}

.sh-thx__pay-method i {
    color: var(--sh-text-2);
    font-size: 1.05rem;
}

.sh-thx__pay-note {
    color: var(--sh-text-2);
    font-size: .85rem;
    line-height: 1.5;
    margin: 0;
}

.sh-thx__bank {
    margin: .85rem 0 0;
    padding: .75rem .9rem;
    background: var(--sh-surface-2, #f6f8fb);
    border: 1px solid var(--sh-divider);
    border-radius: var(--sh-r);
    display: grid;
    gap: .45rem;
}

.sh-thx__bank-row {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 1rem;
    font-size: .88rem;
}

.sh-thx__bank-k {
    color: var(--sh-text-2);
    font-weight: 600;
    flex: 0 0 auto;
}

.sh-thx__bank-v {
    color: var(--sh-ink);
    font-weight: 600;
    text-align: right;
    word-break: break-word;
}

.sh-thx__bank-iban {
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    letter-spacing: .04em;
    user-select: all;
}

.sh-thx__items {
    list-style: none;
    margin: .9rem 0 0;
    padding: .65rem 0 0;
    border-top: 1px dashed var(--sh-divider);
    display: grid;
    gap: .35rem;
}

.sh-thx__items li {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    font-size: .88rem;
    color: var(--sh-text-2);
}

.sh-thx__items li strong {
    color: var(--sh-text);
    font-weight: 600;
}

.sh-thx__pay-r {
    text-align: right;
}

@media (max-width: 575.98px) {
    .sh-thx__pay-r {
        text-align: left;
        border-top: 1px solid var(--sh-divider);
        padding-top: .85rem;
    }
}

.sh-thx__pay-tot-lbl {
    display: block;
    font-size: .68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .12em;
    color: var(--sh-muted);
    margin-bottom: .15rem;
}

.sh-thx__pay-tot {
    font-family: var(--sh-font-display);
    font-size: 1.6rem;
    font-weight: 700;
    color: var(--sh-ink);
    font-variant-numeric: tabular-nums;
    line-height: 1.1;
}

/* Contact */
.sh-thx__contact {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: .9rem;
}

.sh-thx__contact li {
    display: grid;
    grid-template-columns: 36px 1fr;
    gap: .85rem;
    align-items: flex-start;
}

.sh-thx__contact-ic {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: var(--sh-bg-soft);
    border: 1px solid var(--sh-divider);
    color: var(--sh-ink);
    font-size: .95rem;
    display: flex !important;
    align-items: center;
    justify-content: center;
}

.sh-thx__contact span {
    display: block;
    font-size: .68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .12em;
    color: var(--sh-muted);
    margin-bottom: .1rem;
}

.sh-thx__contact strong {
    color: var(--sh-ink);
    font-weight: 600;
    line-height: 1.45;
}

.sh-thx__contact a {
    color: inherit;
    text-decoration: none;
    border-bottom: 1px solid var(--sh-divider);
}

.sh-thx__contact a:hover {
    border-color: var(--sh-ink);
}

/* Foot buttons */
.sh-thx__foot {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    justify-content: center;
    padding-top: 1.75rem;
    margin-top: .5rem;
    border-top: 1px solid var(--sh-divider);
}

.sh-thx__btn {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    padding: .65rem 1.1rem;
    border-radius: 999px;
    font-size: .88rem;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    transition: background .2s, border-color .2s, color .2s;
}

.sh-thx__btn--ghost {
    background: #fff;
    border: 1px solid var(--sh-border);
    color: var(--sh-ink);
}

.sh-thx__btn--ghost:hover {
    background: var(--sh-bg-soft);
    border-color: var(--sh-border-2);
    color: var(--sh-ink);
}

.sh-thx__btn--ink {
    background: var(--sh-ink);
    border: 1px solid var(--sh-ink);
    color: #fff;
}

.sh-thx__btn--ink:hover {
    background: #000;
    color: #fff;
}

/* Print */
@media print {

    .sh-stepbar,
    .sh-thx__topbar,
    .sh-thx__foot,
    header,
    footer {
        display: none !important;
    }

    .sh-thx {
        background: #fff;
        padding: 0;
    }

    .sh-thx__paper {
        box-shadow: none;
        border: 0;
        max-width: 100%;
        padding: 0;
    }
}

/* =====================================================================
   AUTH PAGES â€” Quiet luxury single-column auth card
   /giris  /uye-ol  /sifremi-unuttum  /sifre-sifirla
   ===================================================================== */
.sh-auth-page {
    position: relative;
    background: var(--sh-bg-soft);
    padding: clamp(28px, 5vw, 64px) 0 clamp(48px, 7vw, 96px);
    min-height: calc(100vh - 80px);
}

.sh-auth-page__bg {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(1200px 320px at 50% -10%, rgba(11, 18, 32, .05), transparent 60%),
        radial-gradient(900px 280px at 90% 110%, rgba(11, 18, 32, .04), transparent 60%);
    pointer-events: none;
}

.sh-auth-page>.sh-container {
    position: relative;
    z-index: 1;
}

.sh-auth-card {
    max-width: 480px;
    margin: 0 auto;
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r-xl);
    padding: clamp(28px, 4vw, 44px) clamp(22px, 4vw, 40px);
    box-shadow: 0 1px 0 rgba(11, 18, 32, .02), 0 24px 60px -32px rgba(11, 18, 32, .12);
}

.sh-auth-card--wide {
    max-width: 560px;
}

.sh-auth-card__head {
    text-align: center;
    margin-bottom: 28px;
}

.sh-auth-card__kicker {
    margin: 0 0 10px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .22em;
    text-transform: uppercase;
    color: var(--sh-muted, #6E7689);
}

.sh-auth-card__h {
    margin: 0 0 10px;
    font-family: var(--sh-font-display);
    font-size: clamp(26px, 3.4vw, 34px);
    font-weight: 600;
    letter-spacing: -.01em;
    color: var(--sh-ink);
    line-height: 1.15;
}

.sh-auth-card__lead {
    margin: 0;
    color: var(--sh-muted, #6E7689);
    font-size: 14px;
    line-height: 1.55;
}

/* Alerts */
.sh-auth-alert {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px 14px;
    border-radius: var(--sh-r);
    border: 1px solid var(--sh-border);
    background: var(--sh-bg-soft);
    color: var(--sh-ink);
    font-size: 13.5px;
    line-height: 1.5;
    margin-bottom: 18px;
}

.sh-auth-alert i {
    flex: 0 0 auto;
    margin-top: 2px;
    font-size: 16px;
}

.sh-auth-alert--error {
    background: #FEF6F4;
    border-color: #F5D6CD;
    color: #8A2A14;
}

.sh-auth-alert--ok {
    background: #F2F9F4;
    border-color: #CFE6D6;
    color: #1F5D33;
}

/* Form */
.sh-auth-form {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.sh-auth-grid {
    display: grid;
    gap: 16px;
}

.sh-auth-grid--2 {
    grid-template-columns: 1fr 1fr;
}

@media (max-width: 540px) {
    .sh-auth-grid--2 {
        grid-template-columns: 1fr;
    }
}

.sh-auth-field {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.sh-auth-field__lbl-row {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
}

.sh-auth-field__lbl {
    font-size: 12.5px;
    font-weight: 600;
    color: var(--sh-ink);
    letter-spacing: .01em;
}

.sh-auth-field__opt {
    font-weight: 400;
    color: var(--sh-muted, #6E7689);
    font-size: 11.5px;
    margin-left: 4px;
}

.sh-auth-field__hint {
    font-size: 12px;
    color: var(--sh-muted, #6E7689);
    text-decoration: none;
    transition: color .15s ease;
}

.sh-auth-field__hint:hover {
    color: var(--sh-ink);
    text-decoration: underline;
}

.sh-auth-field__help {
    color: var(--sh-muted, #6E7689);
    font-size: 11.5px;
    line-height: 1.4;
}

.sh-auth-field input[type="text"],
.sh-auth-field input[type="email"],
.sh-auth-field input[type="tel"],
.sh-auth-field input[type="password"] {
    width: 100%;
    height: 48px;
    padding: 10px 14px;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r);
    background: #fff;
    color: var(--sh-ink);
    font-size: 15px;
    font-family: inherit;
    line-height: 1.4;
    transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
    -webkit-appearance: none;
    appearance: none;
}

.sh-auth-field input::placeholder {
    color: #B5BBC8;
}

.sh-auth-field input:hover {
    border-color: #C9CFDB;
}

.sh-auth-field input:focus {
    outline: none;
    border-color: var(--sh-ink);
    box-shadow: 0 0 0 3px rgba(11, 18, 32, .08);
}

.sh-auth-field input:autofill,
.sh-auth-field input:-webkit-autofill {
    box-shadow: 0 0 0 1000px #fff inset;
    -webkit-text-fill-color: var(--sh-ink);
}

/* Password input + reveal button */
.sh-auth-input-wrap {
    position: relative;
    display: block;
}

.sh-auth-input-wrap input {
    padding-right: 44px;
}

.sh-auth-pw-toggle {
    position: absolute;
    right: 6px;
    top: 50%;
    transform: translateY(-50%);
    width: 36px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: 0;
    border-radius: var(--sh-r);
    color: var(--sh-muted, #6E7689);
    cursor: pointer;
    transition: color .15s ease, background .15s ease;
}

.sh-auth-pw-toggle:hover {
    color: var(--sh-ink);
    background: var(--sh-bg-soft);
}

/* Checkbox */
.sh-auth-check {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 13.5px;
    line-height: 1.5;
    color: var(--sh-ink);
    cursor: pointer;
    user-select: none;
}

.sh-auth-check input[type="checkbox"] {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    margin-top: 2px;
    accent-color: var(--sh-ink);
    cursor: pointer;
}

.sh-auth-check a {
    color: var(--sh-ink);
    text-decoration: underline;
    text-underline-offset: 2px;
}

.sh-auth-check a:hover {
    color: #000;
}

/* Button */
.sh-auth-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    height: 50px;
    padding: 0 18px;
    border: 1px solid transparent;
    border-radius: var(--sh-r);
    font-size: 15px;
    font-weight: 600;
    letter-spacing: .01em;
    cursor: pointer;
    transition: background .15s ease, color .15s ease, border-color .15s ease, transform .05s ease;
    margin-top: 6px;
}

.sh-auth-btn:active {
    transform: translateY(1px);
}

.sh-auth-btn--primary {
    background: var(--sh-ink);
    color: #fff;
    border-color: var(--sh-ink);
}

.sh-auth-btn--primary:hover {
    background: #000;
}

/* Card alt link */
.sh-auth-card__alt {
    margin: 22px 0 0;
    text-align: center;
    font-size: 13.5px;
    color: var(--sh-muted, #6E7689);
}

.sh-auth-card__alt a {
    color: var(--sh-ink);
    font-weight: 600;
    text-decoration: none;
    margin-left: 4px;
}

.sh-auth-card__alt a:hover {
    text-decoration: underline;
    text-underline-offset: 3px;
}

.sh-auth-card__alt a i {
    font-size: 12px;
    vertical-align: -1px;
    margin-right: 2px;
}

/* Logged-in state in header */
.sh-auth__user {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border-radius: var(--sh-r);
    background: transparent;
    color: var(--sh-ink);
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    line-height: 1;
    transition: background .15s ease;
    max-width: 220px;
}

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

.sh-auth__user-avatar {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--sh-bg-soft);
    border: 1px solid var(--sh-border);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 12.5px;
    font-weight: 700;
    color: var(--sh-ink);
    overflow: hidden;
    flex: 0 0 auto;
}

.sh-auth__user-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.sh-auth__user-name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 140px;
}

.sh-auth__logout {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: var(--sh-r);
    color: var(--sh-muted, #6E7689);
    text-decoration: none;
    transition: color .15s ease, background .15s ease;
}

.sh-auth__logout:hover {
    color: var(--sh-ink);
    background: var(--sh-bg-soft);
}

/* =====================================================================
   ACCOUNT â€” /hesabim
   Sol nav (sticky) + SaÄŸ panel; sessiz lÃ¼ks ink/hairline temalÄ±
   ===================================================================== */
.sh-acct {
    position: relative;
    background: var(--sh-bg-soft);
    padding: clamp(28px, 4vw, 56px) 0 clamp(48px, 6vw, 96px);
    min-height: calc(100vh - 80px);
}

.sh-acct__bg {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(1200px 320px at 50% -10%, rgba(11, 18, 32, .05), transparent 60%),
        radial-gradient(900px 280px at 90% 110%, rgba(11, 18, 32, .04), transparent 60%);
    pointer-events: none;
}

.sh-acct__wrap {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 280px minmax(0, 1fr);
    gap: clamp(20px, 3vw, 36px);
    align-items: start;
}

@media (max-width: 900px) {
    .sh-acct__wrap {
        grid-template-columns: 1fr;
    }
}

/* Sidebar */
.sh-acct__side {
    position: sticky;
    top: 96px;
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r-xl);
    padding: 18px;
    box-shadow: 0 1px 0 rgba(11, 18, 32, .02), 0 24px 60px -32px rgba(11, 18, 32, .10);
}

@media (max-width: 900px) {
    .sh-acct__side {
        position: static;
    }
}

.sh-acct__me {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 8px 8px 16px;
    border-bottom: 1px solid var(--sh-divider);
    margin-bottom: 12px;
}

.sh-acct__avatar {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: var(--sh-bg-soft);
    border: 1px solid var(--sh-border);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: 700;
    color: var(--sh-ink);
    overflow: hidden;
    flex: 0 0 auto;
}

.sh-acct__avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.sh-acct__me-text {
    min-width: 0;
}

.sh-acct__me-name {
    margin: 0;
    font-weight: 600;
    color: var(--sh-ink);
    font-size: 14.5px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sh-acct__me-mail {
    margin: 2px 0 0;
    font-size: 12.5px;
    color: var(--sh-muted, #6E7689);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sh-acct__nav {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.sh-acct__navlnk {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 11px 12px;
    border-radius: var(--sh-r);
    color: var(--sh-ink);
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    transition: background .15s ease, color .15s ease;
    line-height: 1;
}

.sh-acct__navlnk i {
    font-size: 16px;
    color: var(--sh-muted, #6E7689);
    transition: color .15s ease;
}

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

.sh-acct__navlnk.is-active {
    background: var(--sh-ink);
    color: #fff;
}

.sh-acct__navlnk.is-active i {
    color: #fff;
}

.sh-acct__navlnk>span:first-of-type {
    flex: 1 1 auto;
    min-width: 0;
}

.sh-acct__navlnk-amt {
    flex: 0 0 auto;
    font-size: 12px;
    font-weight: 600;
    color: var(--sh-ink);
    background: #F6F8FB;
    border: 1px solid #E5E8EE;
    padding: 3px 8px;
    border-radius: 999px;
    line-height: 1.2;
    white-space: nowrap;
}

.sh-acct__navlnk.is-active .sh-acct__navlnk-amt {
    background: rgba(11, 18, 32, .92);
    border-color: rgba(11, 18, 32, 1);
    color: #ffffff;
}

.sh-acct__navlnk--out {
    margin-top: 8px;
    padding-top: 14px;
    border-top: 1px solid var(--sh-divider);
    border-radius: 0;
    color: var(--sh-muted, #6E7689);
    font-weight: 500;
}

.sh-acct__navlnk--out:hover {
    color: var(--sh-ink);
    background: transparent;
}

/* Main panel */
.sh-acct__main {
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r-xl);
    padding: clamp(24px, 3vw, 40px);
    box-shadow: 0 1px 0 rgba(11, 18, 32, .02), 0 24px 60px -32px rgba(11, 18, 32, .10);
    min-width: 0;
}

.sh-acct__head {
    margin-bottom: 18px;
}

.sh-acct__kicker {
    margin: 0 0 6px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .22em;
    text-transform: uppercase;
    color: var(--sh-muted, #6E7689);
}

.sh-acct__h {
    margin: 0;
    font-family: var(--sh-font-display);
    font-size: clamp(22px, 2.6vw, 28px);
    font-weight: 600;
    letter-spacing: -.01em;
    color: var(--sh-ink);
}

.sh-acct__lead {
    margin: 0 0 22px;
    color: var(--sh-muted, #6E7689);
    font-size: 14px;
    line-height: 1.6;
}

/* Sections */
.sh-acct__sect {
    margin-top: 28px;
}

.sh-acct__sect-h {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
}

.sh-acct__sect-h h2 {
    margin: 0;
    font-family: var(--sh-font-display);
    font-size: 16px;
    font-weight: 600;
    color: var(--sh-ink);
    letter-spacing: -.005em;
}

.sh-acct__sect-link {
    font-size: 13px;
    color: var(--sh-muted, #6E7689);
    text-decoration: none;
}

.sh-acct__sect-link:hover {
    color: var(--sh-ink);
}

.sh-acct__sect-link i {
    font-size: 11px;
    vertical-align: -1px;
    margin-left: 2px;
}

/* Stats grid */
.sh-acct__stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
    margin-bottom: 8px;
}

@media (max-width: 720px) {
    .sh-acct__stats {
        grid-template-columns: 1fr;
    }
}

.sh-acct__stat {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 18px 18px 14px;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r-lg);
    background: #fff;
    color: var(--sh-ink);
    text-decoration: none;
    transition: border-color .15s ease, transform .12s ease;
}

a.sh-acct__stat:hover {
    border-color: var(--sh-ink);
    transform: translateY(-1px);
}

.sh-acct__stat-lbl {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: var(--sh-muted, #6E7689);
}

.sh-acct__stat-val {
    font-family: var(--sh-font-display);
    font-size: 30px;
    font-weight: 600;
    color: var(--sh-ink);
    line-height: 1;
    letter-spacing: -.01em;
}

.sh-acct__stat-val small {
    font-size: 13px;
    font-weight: 600;
    color: var(--sh-muted, #6E7689);
    margin-left: 4px;
}

.sh-acct__stat-foot {
    font-size: 12.5px;
    color: var(--sh-muted, #6E7689);
    margin-top: 4px;
}

.sh-acct__stat-foot i {
    font-size: 11px;
    vertical-align: -1px;
    margin-right: 3px;
}

.sh-acct__stat--accent {
    background: #F6F8FB;
    border-color: #E5E8EE;
}

/* Upcoming reservation */
.sh-acct__upcoming {
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r-lg);
    padding: 18px;
}

.sh-acct__upcoming-route {
    display: flex;
    align-items: center;
    gap: 10px;
    padding-bottom: 14px;
    border-bottom: 1px dashed var(--sh-divider);
    margin-bottom: 14px;
}

.sh-acct__route-pt {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.sh-acct__route-lbl {
    font-weight: 600;
    color: var(--sh-ink);
    font-size: 14px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sh-acct__dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    border: 2px solid var(--sh-ink);
    background: #fff;
    flex: 0 0 auto;
}

.sh-acct__dot--from {
    background: var(--sh-ink);
}

.sh-acct__dot--to {
    border-color: var(--sh-primary, #051036);
}

.sh-acct__route-line {
    flex: 1;
    height: 1px;
    background: var(--sh-divider);
}

.sh-acct__upcoming-meta {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    margin: 0;
}

@media (max-width: 720px) {
    .sh-acct__upcoming-meta {
        grid-template-columns: repeat(2, 1fr);
    }
}

.sh-acct__upcoming-meta dt {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--sh-muted, #6E7689);
    margin: 0 0 4px;
}

.sh-acct__upcoming-meta dd {
    margin: 0;
    font-size: 14px;
    color: var(--sh-ink);
    font-weight: 500;
}

.sh-acct__mono {
    font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;
    font-size: 13.5px;
    letter-spacing: .02em;
}

/* Pills */
.sh-acct__pill {
    display: inline-flex;
    align-items: center;
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 11.5px;
    font-weight: 600;
    letter-spacing: .03em;
    border: 1px solid transparent;
    line-height: 1.4;
    white-space: nowrap;
}

.sh-acct__pill--ok {
    background: #F2F9F4;
    color: #1F5D33;
    border-color: #CFE6D6;
}

.sh-acct__pill--err {
    background: #FEF6F4;
    color: #8A2A14;
    border-color: #F5D6CD;
}

.sh-acct__pill--mute {
    background: var(--sh-bg-soft);
    color: var(--sh-muted, #6E7689);
    border-color: var(--sh-border);
}

.sh-acct__pill--warn {
    background: #FFF7E0;
    color: #7A5A00;
    border-color: #F0DBA0;
}

/* Quick actions */
.sh-acct__quick {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
}

@media (max-width: 720px) {
    .sh-acct__quick {
        grid-template-columns: repeat(2, 1fr);
    }
}

.sh-acct__quick-itm {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 18px 12px;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r);
    background: #fff;
    color: var(--sh-ink);
    text-decoration: none;
    text-align: center;
    font-size: 13px;
    font-weight: 500;
    transition: border-color .15s ease, background .15s ease;
}

.sh-acct__quick-itm:hover {
    border-color: var(--sh-ink);
    background: var(--sh-bg-soft);
}

.sh-acct__quick-itm i {
    font-size: 18px;
    color: var(--sh-muted, #6E7689);
}

.sh-acct__quick-itm:hover i {
    color: var(--sh-ink);
}

/* Tables */
.sh-acct__tablewrap {
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r-lg);
    overflow: hidden;
    overflow-x: auto;
}

.sh-acct__table {
    width: 100%;
    border-collapse: collapse;
    font-size: 13.5px;
    min-width: 720px;
}

.sh-acct__table thead th {
    text-align: left;
    padding: 12px 14px;
    background: var(--sh-bg-soft);
    border-bottom: 1px solid var(--sh-border);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: var(--sh-muted, #6E7689);
    white-space: nowrap;
}

.sh-acct__table tbody td {
    padding: 14px;
    border-bottom: 1px solid var(--sh-divider);
    color: var(--sh-ink);
    vertical-align: middle;
}

.sh-acct__table tbody tr:last-child td {
    border-bottom: 0;
}

.sh-acct__table tbody tr:hover td {
    background: #FAFBFD;
}

.sh-acct__table .t-c {
    text-align: center;
}

.sh-acct__table .t-r {
    text-align: right;
}

.sh-acct__sub {
    color: var(--sh-muted, #6E7689);
    font-size: 12px;
    display: block;
}

.sh-acct__cell-route {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--sh-ink);
    font-size: 13px;
}

.sh-acct__cell-route i {
    font-size: 11px;
    color: var(--sh-muted, #6E7689);
}

.sh-acct__rowlink {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: var(--sh-r);
    color: var(--sh-muted, #6E7689);
    text-decoration: none;
    transition: background .15s ease, color .15s ease;
}

.sh-acct__rowlink:hover {
    background: var(--sh-bg-soft);
    color: var(--sh-ink);
}

.sh-acct__amt--in {
    color: #1F5D33;
}

.sh-acct__amt--out {
    color: var(--sh-ink);
}

/* Empty state */
.sh-acct__empty {
    text-align: center;
    padding: 40px 20px;
    border: 1px dashed var(--sh-border);
    border-radius: var(--sh-r-lg);
    color: var(--sh-muted, #6E7689);
}

.sh-acct__empty i {
    font-size: 32px;
    color: var(--sh-muted, #6E7689);
    display: block;
    margin-bottom: 10px;
}

.sh-acct__empty p {
    margin: 0 0 14px;
    font-size: 14px;
}

/* Reservation card list */
.sh-acct__rsvlist {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.sh-acct__rsv {
    position: relative;
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r-lg);
    padding: 18px 20px;
    display: grid;
    grid-template-columns: 1fr;
    gap: 14px;
    transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.sh-acct__rsv:hover {
    border-color: var(--sh-ink);
    box-shadow: 0 4px 16px rgba(15, 23, 42, .06);
    transform: translateY(-1px);
}

.sh-acct__rsv--upcoming {
    border-left: 3px solid var(--sh-primary, #051036);
    padding-left: 18px;
}

.sh-acct__rsv-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
}

.sh-acct__rsv-ref {
    display: inline-flex;
    align-items: baseline;
    gap: 8px;
    min-width: 0;
}

.sh-acct__rsv-ref-lbl {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: var(--sh-muted, #6E7689);
    font-weight: 600;
}

.sh-acct__rsv-ref .sh-acct__mono {
    font-size: 14px;
    font-weight: 600;
    color: var(--sh-ink);
}

.sh-acct__rsv-route {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 12px;
    padding: 12px 14px;
    background: var(--sh-bg-soft);
    border-radius: var(--sh-r-md, 10px);
}

.sh-acct__rsv-route .sh-acct__route-pt {
    min-width: 0;
}

.sh-acct__rsv-route .sh-acct__route-lbl {
    font-size: 13px;
    color: var(--sh-ink);
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sh-acct__rsv-route .sh-acct__route-line {
    width: 28px;
    height: 1px;
    background: var(--sh-border);
    position: relative;
}

.sh-acct__rsv-route .sh-acct__route-line::after {
    content: '';
    position: absolute;
    right: -3px;
    top: 50%;
    width: 6px;
    height: 6px;
    border-top: 1px solid var(--sh-muted, #6E7689);
    border-right: 1px solid var(--sh-muted, #6E7689);
    transform: translateY(-50%) rotate(45deg);
}

.sh-acct__rsv-meta {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
    margin: 0;
}

.sh-acct__rsv-meta>div {
    min-width: 0;
}

.sh-acct__rsv-meta dt {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    margin: 0 0 4px;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--sh-muted, #6E7689);
    font-weight: 600;
}

.sh-acct__rsv-meta dt i {
    font-size: 12px;
}

.sh-acct__rsv-meta dd {
    margin: 0;
    font-size: 14px;
    color: var(--sh-ink);
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sh-acct__rsv-meta dd .sh-acct__sub {
    display: inline-block;
    margin-left: 4px;
}

.sh-acct__rsv-amt {
    font-weight: 600 !important;
}

.sh-acct__rsv-amt small {
    font-size: 11px;
    font-weight: 600;
    color: var(--sh-muted, #6E7689);
    margin-left: 3px;
    text-transform: uppercase;
}

.sh-acct__rsv-foot {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding-top: 12px;
    border-top: 1px solid var(--sh-divider, #EEF1F4);
}

.sh-acct__rsv-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    font-weight: 600;
    color: var(--sh-ink);
    text-decoration: none;
    padding: 7px 14px;
    border: 1px solid var(--sh-border);
    border-radius: 999px;
    transition: all .15s ease;
}

.sh-acct__rsv-btn i {
    font-size: 12px;
    transition: transform .15s ease;
}

.sh-acct__rsv-btn:hover {
    background: var(--sh-ink);
    color: #fff;
    border-color: var(--sh-ink);
}

.sh-acct__rsv-btn:hover i {
    transform: translateX(2px);
}

@media (max-width: 720px) {
    .sh-acct__rsv {
        padding: 16px;
    }

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

    .sh-acct__rsv-route {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .sh-acct__rsv-route .sh-acct__route-line {
        width: 1px;
        height: 14px;
        margin-left: 4px;
    }

    .sh-acct__rsv-route .sh-acct__route-line::after {
        display: none;
    }
}

/* Form footer */
.sh-acct__form-foot {
    margin-top: 6px;
    padding-top: 18px;
    border-top: 1px solid var(--sh-divider);
}

/* Disabled input */
.sh-auth-field input:disabled {
    background: var(--sh-bg-soft);
    color: var(--sh-muted, #6E7689);
    cursor: not-allowed;
}

/* Balance card */
.sh-acct__balance {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    padding: 0;
    margin-bottom: 8px;
}

@media (max-width: 720px) {
    .sh-acct__balance {
        grid-template-columns: 1fr;
    }
}

.sh-acct__balance-main {
    padding: 24px;
    border-radius: var(--sh-r-lg);
    background: var(--sh-ink);
    color: #fff;
}

.sh-acct__balance-lbl {
    margin: 0 0 8px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .22em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, .7);
}

.sh-acct__balance-val {
    margin: 0;
    font-family: var(--sh-font-display);
    font-size: 42px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: -.01em;
}

.sh-acct__balance-val small {
    font-size: 16px;
    font-weight: 600;
    opacity: .75;
    margin-left: 6px;
}

.sh-acct__balance-sub {
    margin: 12px 0 0;
    font-size: 12.5px;
    color: rgba(255, 255, 255, .7);
}

.sh-acct__balance-sub i {
    vertical-align: -1px;
    margin-right: 4px;
}

.sh-acct__balance-info {
    padding: 24px;
    border-radius: var(--sh-r-lg);
    background: #F6F8FB;
    border: 1px solid #E5E8EE;
    color: var(--sh-ink);
}

.sh-acct__balance-info p {
    margin: 10px 0 0;
    font-size: 13.5px;
    line-height: 1.6;
    color: #5C4A1F;
}

.sh-acct__balance-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    border-radius: 999px;
    background: #fff;
    border: 1px solid #E5E8EE;
    font-size: 11.5px;
    font-weight: 600;
    color: #7A5A00;
    letter-spacing: .04em;
}

.sh-acct__balance-badge i {
    font-size: 12px;
}

/* Generic container (auth + account + thx pages) */
.sh-container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding-left: 16px;
    padding-right: 16px;
}

@media (min-width: 576px) {
    .sh-container {
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media (min-width: 1200px) {
    .sh-container {
        padding-left: 24px;
        padding-right: 24px;
    }
}

/* --- Card payment fields (Online Ã–deme) --- */
.sh-cardpay {
    margin-top: 1.1rem;
    padding: 1.1rem 1.15rem 1.15rem;
    border: 1.5px solid var(--sh-border);
    border-radius: var(--sh-r);
    background: linear-gradient(180deg, #FAFBFC 0%, #fff 100%);
}

.sh-cardpay[hidden] {
    display: none !important;
}

.sh-cardpay__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    flex-wrap: wrap;
    margin-bottom: .9rem;
}

.sh-cardpay__h {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
    color: var(--sh-ink);
    display: inline-flex;
    align-items: center;
    gap: .5rem;
}

.sh-cardpay__h i {
    color: var(--sh-ink);
}

.sh-cardpay__secure {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    font-size: .78rem;
    color: #047857;
    font-weight: 600;
    background: #ECFDF5;
    border: 1px solid #A7F3D0;
    padding: .3rem .55rem;
    border-radius: 999px;
}

.sh-cardpay__note {
    margin: .85rem 0 0;
    font-size: .78rem;
    color: var(--sh-text-2);
    line-height: 1.5;
    display: flex;
    align-items: flex-start;
    gap: .4rem;
}

.sh-cardpay__note i {
    color: var(--sh-muted);
    margin-top: .12rem;
}

.sh-field__wrap {
    position: relative;
    display: block;
}

.sh-field__inp--cc {
    padding-right: 2.6rem;
    letter-spacing: .04em;
    font-variant-numeric: tabular-nums;
}

.sh-field__cc-brand {
    position: absolute;
    right: .75rem;
    top: 50%;
    transform: translateY(-50%);
    color: var(--sh-muted);
    font-size: 1.25rem;
    pointer-events: none;
}

.sh-field__cc-brand[data-brand="visa"] {
    color: #1A1F71;
}

.sh-field__cc-brand[data-brand="mc"] {
    color: #EB001B;
}

.sh-field__cc-brand[data-brand="amex"] {
    color: #2E77BB;
}

.sh-field__cc-brand[data-brand="discover"] {
    color: #FF6000;
}

.sh-field__cc-brand[data-brand="troy"] {
    color: #00A0DF;
}

.sh-field__inp--error,
.sh-field__inp--error:focus {
    border-color: #DC2626 !important;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, .12) !important;
}

/* --- Pay option layout (radio + clickable label row) --- */
.sh-pay__opt {
    position: relative;
}

.sh-pay__row {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 1rem;
    align-items: center;
    cursor: pointer;
    margin: 0;
}

.sh-pay__opt>input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
    width: 1px;
    height: 1px;
}

/* Smaller submit button inside payment options */
.sh-pay__submit {
    padding: .55rem 1rem;
    font-size: .85rem;
    font-weight: 600;
    border-radius: 10px;
    white-space: nowrap;
    line-height: 1.2;
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    transition: opacity .18s ease, transform .12s ease;
}

.sh-pay__submit i {
    font-size: .95rem;
}

/* Disabled (option not selected) state */
.sh-pay__submit.is-disabled,
.sh-pay__submit:disabled {
    opacity: .45;
    cursor: pointer;
    /* tÄ±klanabilir kalsÄ±n â†’ seÃ§im yapsÄ±n */
    pointer-events: auto;
    pointer-events: none;
}

.sh-pay__opt:not(.is-active) .sh-pay__row {
    cursor: pointer;
}

.sh-pay__opt:not(.is-active):hover .sh-pay__submit {
    opacity: .65;
}

/* Embedded card box inside online option */
.sh-pay__opt .sh-cardpay {
    grid-column: 1 / -1;
    margin: 1rem -.25rem -.25rem;
    background: #fff;
    border-color: var(--sh-border);
}

.sh-pay__opt:not(.is-active) .sh-cardpay {
    display: none !important;
}

@media (max-width: 575.98px) {
    .sh-pay__row {
        grid-template-columns: 1fr;
    }

    /* .sh-pay__cta { flex-direction: row; align-items: center; justify-content: space-between; width: 100%; } */
    .sh-pay__total {
        align-items: flex-start;
    }

    .sh-pay__submit {
        flex: 0 0 auto;
    }
}

/* --- Sticky breakdown wrapper (sh-tripsum NOT sticky) --- */
.sh-checkout__side {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    align-self: start;
}

.sh-checkout__stick {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    position: sticky;
    top: 90px;
}

@media (max-width: 1199.98px) {
    .sh-checkout__stick {
        position: static;
    }
}

/* --- Header sticky'i AraÃ§ SeÃ§imi & Rezervasyon Bilgileri sayfalarÄ±nda devre dÄ±ÅŸÄ± bÄ±rak --- */
body:has(#page > .sh-vsel) .sh-header,
body:has(#page > .sh-checkout) .sh-header,
body:has(#page .sh-stepbar + .sh-checkout) .sh-header {
    position: static;
}

/* Bu sayfalarda sticky sidebar offset'ini de kaldÄ±r (header artÄ±k akÄ±yor) */
body:has(#page > .sh-vsel) .sh-vsel__side,
body:has(#page .sh-checkout) .sh-checkout__stick {
    top: 16px;
}

/* ------------------------------------------------------------- *
 *  Panel sayfasÄ± (sh-page) â€” yasal sayfalar, kurumsal vb.        *
 * ------------------------------------------------------------- */
.sh-page {
    padding: clamp(2rem, 4vw, 3.5rem) 0 clamp(2.5rem, 5vw, 4.5rem);
}

.sh-page__wrap {
    max-width: 820px;
    margin: 0 auto;
}

.sh-page__cover {
    margin: 0 0 1.75rem;
    border-radius: var(--sh-r-lg);
    overflow: hidden;
    aspect-ratio: 16/9;
    background: var(--sh-bg-muted);
    box-shadow: var(--sh-shadow);
}

.sh-page__cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.sh-page__body {
    font-size: 1.02rem;
}

.sh-page__body> :first-child {
    margin-top: 0;
}

.sh-page__body h2 {
    font-size: clamp(1.25rem, 1.6vw, 1.5rem);
    padding-top: .25rem;
}

.sh-page__body h3 {
    font-size: 1.1rem;
}

.sh-page__body strong {
    color: var(--sh-ink);
}

/* ------------------------------------------------------------- *
 *  Blog detay (sh-post)                                          *
 * ------------------------------------------------------------- */
.sh-post {
    padding: clamp(2rem, 4vw, 3.5rem) 0 clamp(2.5rem, 5vw, 4.5rem);
}

.sh-post__wrap {
    max-width: 820px;
    margin: 0 auto;
}

.sh-post__cover {
    margin: 0 0 1.5rem;
    border-radius: var(--sh-r-lg);
    overflow: hidden;
    aspect-ratio: 16/9;
    background: var(--sh-bg-muted);
    box-shadow: var(--sh-shadow);
}

.sh-post__cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.sh-post__meta {
    display: flex;
    flex-wrap: wrap;
    gap: .85rem 1.25rem;
    align-items: center;
    color: var(--sh-muted);
    font-size: .85rem;
    margin: 0 0 1.5rem;
    padding-bottom: 1.25rem;
    border-bottom: 1px solid var(--sh-line);
}

.sh-post__meta i {
    margin-right: .35rem;
}

.sh-post__chip {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    padding: .25rem .7rem;
    border-radius: 999px;
    background: var(--sh-primary-soft);
    color: var(--sh-primary-700);
    font-weight: 600;
    font-size: .78rem;
}

.sh-post__body {
    font-size: 1.02rem;
}

.sh-post__share {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .55rem;
    padding: 1.5rem 0 0;
    margin-top: 2rem;
    border-top: 1px solid var(--sh-line);
}

.sh-post__share-label {
    color: var(--sh-muted);
    font-size: .85rem;
    margin-right: .35rem;
}

.sh-post__share-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: var(--sh-bg-muted);
    color: var(--sh-ink);
    border: 1px solid var(--sh-line);
    transition: all .2s ease;
    text-decoration: none;
}

.sh-post__share-btn:hover {
    background: var(--sh-ink);
    color: #fff;
    border-color: var(--sh-ink);
    transform: translateY(-2px);
}

.sh-post__back {
    margin-top: 1.75rem;
}

.sh-bloglist--related {
    padding-top: 1rem;
}

/* =============================================================
   Bakiye YÃ¼kleme Formu â€” .sh-topup
   ============================================================= */
.sh-topup {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r-lg);
    padding: 22px;
}

@media (max-width: 860px) {
    .sh-topup {
        grid-template-columns: 1fr;
        padding: 18px;
    }
}

.sh-topup__col {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 0;
}

.sh-topup__col--card {
    padding-left: 18px;
    border-left: 1px solid var(--sh-divider, #EEF1F4);
}

@media (max-width: 860px) {
    .sh-topup__col--card {
        padding-left: 0;
        border-left: 0;
        padding-top: 18px;
        border-top: 1px solid var(--sh-divider, #EEF1F4);
    }
}

.sh-topup__lbl {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: var(--sh-muted, #6E7689);
    font-weight: 600;
    margin: 0;
}

/* Preset chip'ler */
.sh-topup__presets {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
}

@media (max-width: 480px) {
    .sh-topup__presets {
        grid-template-columns: repeat(2, 1fr);
    }
}

.sh-topup__chip {
    position: relative;
    cursor: pointer;
}

.sh-topup__chip input {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
}

.sh-topup__chip span {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px 8px;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r-md, 10px);
    font-size: 14px;
    font-weight: 600;
    color: var(--sh-ink);
    background: #fff;
    transition: all .15s ease;
    text-align: center;
}

.sh-topup__chip:hover span {
    border-color: var(--sh-ink);
}

.sh-topup__chip input:checked+span {
    background: var(--sh-ink);
    color: #fff;
    border-color: var(--sh-ink);
}

.sh-topup__chip input:focus-visible+span {
    outline: 2px solid var(--sh-primary, #051036);
    outline-offset: 2px;
}

/* Custom amount + kart input'larÄ± */
.sh-topup__custom {
    position: relative;
}

.sh-topup__cur {
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 14px;
    font-weight: 600;
    color: var(--sh-muted, #6E7689);
    pointer-events: none;
}

.sh-topup__input {
    width: 100%;
    padding: 11px 14px;
    font-size: 14px;
    color: var(--sh-ink);
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r-md, 10px);
    transition: border-color .15s ease, box-shadow .15s ease;
    font-family: inherit;
}

.sh-topup__input:focus {
    outline: none;
    border-color: var(--sh-ink);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, .06);
}

.sh-topup__custom .sh-topup__input {
    padding-right: 36px;
}

.sh-topup__hint {
    margin: 4px 0 0;
    font-size: 12px;
    color: var(--sh-muted, #6E7689);
    display: inline-flex;
    align-items: flex-start;
    gap: 5px;
}

.sh-topup__hint i {
    font-size: 13px;
    margin-top: 1px;
}

/* Kart kolonu */
.sh-topup__cardhead {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
}

.sh-topup__brands {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 10px;
    font-weight: 700;
    color: var(--sh-muted, #6E7689);
    text-transform: uppercase;
    letter-spacing: .06em;
}

.sh-topup__brands i {
    font-size: 16px;
}

.sh-topup__brands span {
    padding: 2px 6px;
    border: 1px solid var(--sh-border);
    border-radius: 4px;
    background: #fff;
}

.sh-topup__field {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.sh-topup__field label {
    font-size: 12px;
    color: var(--sh-muted, #6E7689);
    font-weight: 500;
}

.sh-topup__row {
    display: grid;
    grid-template-columns: 1fr 110px;
    gap: 10px;
}

.sh-topup__pay {
    margin-top: 6px;
    width: 100%;
    padding: 13px 18px;
    background: var(--sh-ink);
    color: #fff;
    border: 0;
    border-radius: var(--sh-r-md, 10px);
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: transform .15s ease, background .15s ease, box-shadow .15s ease;
}

.sh-topup__pay:hover {
    background: #000;
    transform: translateY(-1px);
    box-shadow: 0 6px 18px rgba(0, 0, 0, .15);
}

.sh-topup__pay i {
    font-size: 15px;
}

.sh-topup__safe {
    margin: 0;
    text-align: center;
    font-size: 11px;
    color: var(--sh-muted, #6E7689);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
}

.sh-topup__safe i {
    font-size: 12px;
}

/* =============================================================
   Ä°ÅŸlem GeÃ§miÅŸi Timeline â€” .sh-txlog
   ============================================================= */
.sh-txlog {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.sh-txlog__item {
    display: grid;
    grid-template-columns: 44px 1fr auto;
    gap: 14px;
    align-items: flex-start;
    background: #fff;
    border: 1px solid var(--sh-border);
    border-radius: var(--sh-r-lg);
    padding: 16px 18px;
    transition: border-color .15s ease, box-shadow .15s ease;
}

.sh-txlog__item:hover {
    border-color: var(--sh-ink);
    box-shadow: 0 4px 14px rgba(15, 23, 42, .05);
}

.sh-txlog__icon {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--sh-bg-soft);
    color: var(--sh-ink);
    font-size: 18px;
    flex-shrink: 0;
}

.sh-txlog__item--topup_bonus .sh-txlog__icon {
    background: #F6F8FB;
    color: #8a6d00;
}

.sh-txlog__item--usage .sh-txlog__icon {
    background: #F4F6FA;
    color: var(--sh-ink);
}

.sh-txlog__item--topup .sh-txlog__icon {
    background: #F2F9F4;
    color: #1F5D33;
}

.sh-txlog__item--failed .sh-txlog__icon {
    background: #FEF6F4;
    color: #8A2A14;
}

.sh-txlog__item--pending .sh-txlog__icon {
    background: #FFF7E0;
    color: #7A5A00;
}

.sh-txlog__body {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.sh-txlog__title {
    font-size: 14px;
    font-weight: 600;
    color: var(--sh-ink);
    line-height: 1.3;
}

.sh-txlog__meta {
    font-size: 12px;
    color: var(--sh-muted, #6E7689);
    line-height: 1.4;
}

.sh-txlog__date {
    font-size: 12px;
    color: var(--sh-muted, #6E7689);
    font-variant-numeric: tabular-nums;
}

.sh-txlog__desc {
    font-size: 13px;
    color: var(--sh-ink);
    line-height: 1.4;
    margin-top: 2px;
}

.sh-txlog__body .sh-acct__pill {
    align-self: flex-start;
    margin-top: 6px;
}

.sh-txlog__amt {
    font-size: 16px;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
    align-self: center;
    text-align: right;
}

.sh-txlog__amt small {
    font-size: 11px;
    font-weight: 600;
    margin-left: 3px;
    color: var(--sh-muted, #6E7689);
}

.sh-txlog__amt--in {
    color: #1F5D33;
}

.sh-txlog__amt--out {
    color: var(--sh-ink);
}

.sh-txlog__item--failed .sh-txlog__amt {
    color: #8A2A14;
    opacity: .85;
    text-decoration: line-through;
    text-decoration-thickness: 1px;
}

.sh-txlog__item--pending .sh-txlog__amt {
    color: #7A5A00;
}

@media (max-width: 600px) {
    .sh-txlog__item {
        grid-template-columns: 36px 1fr;
        padding: 14px;
        gap: 12px;
    }

    .sh-txlog__icon {
        width: 36px;
        height: 36px;
        font-size: 15px;
    }

    .sh-txlog__amt {
        grid-column: 2 / 3;
        text-align: left;
        align-self: flex-start;
        margin-top: 6px;
    }
}

/* === VIP pill rozeti (rezervasyon opsiyonlarÄ±) === */
.sh-opt__pill {
    display: inline-block;
    margin-left: .4rem;
    padding: .08rem .42rem;
    font-size: .65rem;
    font-weight: 700;
    letter-spacing: .04em;
    color: #fff;
    background: linear-gradient(135deg, #b9892b, #f4cf6b);
    border-radius: 999px;
    vertical-align: middle;
    text-transform: uppercase;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .18);
}

/* === Zorunlu (kilitli) opsiyon gÃ¶rÃ¼nÃ¼mÃ¼ === */
.sh-opt__pill--req {
    background: #fef3c7;
    color: #92400e;
    box-shadow: inset 0 0 0 1px rgba(245, 158, 11, .35);
}

.sh-opt__pill--req i {
    font-size: .6rem;
    margin-right: .15rem;
}

.sh-opt--locked {
    background: linear-gradient(90deg, rgba(245, 158, 11, .06) 0%, transparent 60%);
    cursor: not-allowed;
}

.sh-opt--locked .sh-opt__icon {
    background: #fef3c7;
    color: #b45309;
}

.sh-opt--locked .sh-tgl {
    pointer-events: none;
}

.sh-opt--locked .sh-tgl__track {
    background: #10b981 !important;
    opacity: .55;
}

.sh-opt--locked .sh-tgl__dot {
    background: #fff !important;
}

/* === AraÃ§ kartÄ±: saatlik ek Ã¼cret bilgi rozeti === */
.sh-vcard__surcharge {
    margin-top: .55rem;
    display: flex;
    align-items: flex-start;
    gap: .45rem;
    padding: .55rem .7rem;
    background: #fff7ed;
    color: #9a3412;
    border: 1px solid #fed7aa;
    border-radius: 10px;
    font-size: .78rem;
    line-height: 1.35;
}

.sh-vcard__surcharge i {
    font-size: .95rem;
    margin-top: .1rem;
    color: #c2410c;
}

.sh-vcard__surcharge strong {
    color: #9a3412;
    font-weight: 700;
    margin-left: .15rem;
}

.sh-vcard__surcharge em {
    font-style: normal;
    color: #7c2d12;
    opacity: .85;
}

/* ============ Wallet (Bakiye) ============ */
.sh-bdown__row--balance {
    color: #047857;
    background: linear-gradient(90deg, rgba(16, 185, 129, .06), rgba(16, 185, 129, 0));
    border-radius: 8px;
    padding: 6px 10px;
    margin: 2px 0;
}

.sh-bdown__row--balance i {
    margin-right: 4px;
}

.sh-bdown__row--balance strong {
    color: #047857;
}

.sh-walletuse {
    margin: 12px 0 16px;
    padding: 12px 14px;
    border: 1px dashed #10B981;
    background: linear-gradient(135deg, rgba(16, 185, 129, .08), rgba(16, 185, 129, .02));
    border-radius: 12px;
}

.sh-walletuse__row {
    display: flex;
    align-items: center;
    gap: 12px;
    cursor: pointer;
    margin: 0;
}

.sh-walletuse__row input[type="checkbox"] {
    -webkit-appearance: none;
    appearance: none;
    width: 22px;
    height: 22px;
    flex: 0 0 auto;
    border: 2px solid #10B981;
    border-radius: 6px;
    background: #fff;
    cursor: pointer;
    position: relative;
    transition: background-color .15s ease, border-color .15s ease, box-shadow .15s ease;
    display: inline-grid;
    place-content: center;
    margin: 0;
}

.sh-walletuse__row input[type="checkbox"]:hover {
    border-color: #059669;
    box-shadow: 0 0 0 3px rgba(16, 185, 129, .15);
}

.sh-walletuse__row input[type="checkbox"]:checked {
    background: #10B981;
    border-color: #10B981;
}

.sh-walletuse__row input[type="checkbox"]:checked::after {
    content: "";
    width: 6px;
    height: 11px;
    border: solid #fff;
    border-width: 0 2.5px 2.5px 0;
    transform: rotate(45deg) translate(-1px, -1px);
    display: block;
}

.sh-walletuse__row input[type="checkbox"]:focus-visible {
    outline: none;
    box-shadow: 0 0 0 3px rgba(16, 185, 129, .25);
}

.sh-walletuse__body {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.sh-walletuse__body strong {
    font-size: 14.5px;
    color: #065F46;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.sh-walletuse__body small {
    font-size: 12.5px;
    color: #475569;
}

.sh-walletuse__body small b {
    color: #047857;
}

.sh-walletuse__amt {
    font-weight: 800;
    color: #047857;
    font-size: 15px;
    white-space: nowrap;
}

/* ===== Vehicle card loyalty bonus badge ===== */
.sh-vcard__bonus {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 10px;
    padding: 9px 12px;
    border-radius: 10px;
    font-size: 13px;
    line-height: 1.35;
    text-decoration: none;
}

.sh-vcard__bonus i {
    font-size: 16px;
    flex-shrink: 0;
}

.sh-vcard__bonus strong {
    font-weight: 800;
    margin: 0 2px;
}

.sh-vcard__bonus em {
    font-style: normal;
    color: inherit;
    opacity: .9;
}

.sh-vcard__bonus--ok {
    background: linear-gradient(180deg, #ecfdf5, #d1fae5);
    color: #065f46;
    border: 1px solid #a7f3d0;
}

.sh-vcard__bonus--cta {
    background: linear-gradient(180deg, #eff6ff, #dbeafe);
    color: #1e40af;
    border: 1px solid #bfdbfe;
    transition: background .15s ease, border-color .15s ease;
}

.sh-vcard__bonus--cta:hover {
    background: #dbeafe;
    border-color: #93c5fd;
}

/* ===== Breakdown / total altÄ± bonus satÄ±rÄ± ===== */
.sh-bdown__bonus {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 10px;
    padding: 10px 12px;
    border-radius: 10px;
    font-size: 13px;
    line-height: 1.35;
    text-decoration: none;
}

.sh-bdown__bonus i {
    font-size: 16px;
    flex-shrink: 0;
}

.sh-bdown__bonus strong {
    font-weight: 800;
    margin: 0 2px;
}

.sh-bdown__bonus em {
    font-style: normal;
    opacity: .9;
}

.sh-bdown__bonus--ok {
    background: linear-gradient(180deg, #ecfdf5, #d1fae5);
    color: #065f46;
    border: 1px solid #a7f3d0;
}

.sh-bdown__bonus--cta {
    background: linear-gradient(180deg, #eff6ff, #dbeafe);
    color: #1e40af;
    border: 1px solid #bfdbfe;
    transition: background .15s ease, border-color .15s ease;
}

.sh-bdown__bonus--cta:hover {
    background: #dbeafe;
    border-color: #93c5fd;
}

/* ============================================================
   BuluÅŸma NoktasÄ± â€” Video Modal & Play overlay
   ============================================================ */
.sh-meet__media {
    position: relative;
    cursor: default;
}

.sh-meet__card--video .sh-meet__media {
    cursor: pointer;
}

.sh-meet__card--video .sh-meet__media::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 40%, rgba(11, 18, 32, .45) 100%);
    transition: background .25s ease;
    pointer-events: none;
}

.sh-meet__card--video .sh-meet__media:hover::after,
.sh-meet__card--video .sh-meet__media:focus-visible::after {
    background: linear-gradient(180deg, rgba(0, 0, 0, .15) 0%, rgba(11, 18, 32, .55) 100%);
}

.sh-meet__play {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(1);
    width: 68px;
    height: 68px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .96);
    color: #051036;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 12px 32px rgba(11, 18, 32, .35);
    transition: transform .25s ease, background .25s ease;
    pointer-events: none;
    z-index: 2;
}

.sh-meet__play svg {
    width: 28px;
    height: 28px;
    margin-left: 4px;
}

.sh-meet__card--video .sh-meet__media:hover .sh-meet__play,
.sh-meet__card--video .sh-meet__media:focus-visible .sh-meet__play {
    transform: translate(-50%, -50%) scale(1.08);
}

.sh-meet__video-badge {
    position: absolute;
    left: 12px;
    bottom: 12px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 10px;
    background: rgba(11, 18, 32, .85);
    color: #fff;
    font-size: 11.5px;
    font-weight: 600;
    border-radius: 999px;
    letter-spacing: .02em;
    z-index: 2;
}

.sh-meet__media:focus-visible {
    outline: 3px solid var(--sh-primary);
    outline-offset: 3px;
}

.sh-meet-modal {
    position: fixed;
    inset: 0;
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    padding: 24px;
}

.sh-meet-modal.is-open {
    display: flex;
    animation: shMeetFadeIn .18s ease;
}

.sh-meet-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(8, 12, 22, .82);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
}

.sh-meet-modal__dialog {
    position: relative;
    width: 100%;
    max-width: 960px;
    background: #051036;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 30px 80px rgba(0, 0, 0, .6);
    animation: shMeetPopIn .22s cubic-bezier(.2, .7, .3, 1.2);
}

.sh-meet-modal__title {
    padding: 14px 56px 12px 18px;
    font-size: 14px;
    font-weight: 600;
    color: #fff;
    letter-spacing: .02em;
    border-bottom: 1px solid rgba(255, 255, 255, .08);
}

.sh-meet-modal__title:empty {
    display: none;
}

.sh-meet-modal__close {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .10);
    color: #fff;
    border: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background .15s ease, transform .15s ease;
    z-index: 3;
}

.sh-meet-modal__close:hover {
    background: rgba(255, 255, 255, .20);
    transform: scale(1.05);
}

.sh-meet-modal__frame {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    background: #000;
}

.sh-meet-modal__frame iframe,
.sh-meet-modal__frame video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

@keyframes shMeetFadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes shMeetPopIn {
    from {
        transform: scale(.94);
        opacity: .4;
    }

    to {
        transform: scale(1);
        opacity: 1;
    }
}

@media (max-width: 640px) {
    .sh-meet-modal {
        padding: 12px;
    }

    .sh-meet-modal__dialog {
        border-radius: 14px;
    }

    .sh-meet__play {
        width: 54px;
        height: 54px;
    }

    .sh-meet__play svg {
        width: 22px;
        height: 22px;
    }
}

/* ============================================================
   MOBILE RESPONSIVE FIXES â€” 2026-05-18
   Genel mobil iyileÅŸtirmeler. BEM kurallarÄ±na dokunmadan
   eklenen override'lar burada toplandÄ±.
   ============================================================ */

/* 1) AraÃ§ kartÄ± â€” mobilde resim Ã¼stte, gÃ¶vde altta dikey yÄ±ÄŸÄ±n
   (.sh-vcard__media position:absolute olduÄŸu iÃ§in body ile Ã¼st Ã¼ste
    biniyordu; <992px'te normal akÄ±ÅŸa alÄ±nÄ±yor). */
@media (max-width: 991.98px) {
    .sh-vcard {
        flex-direction: column;
        justify-content: flex-start;
    }

    .sh-vcard__media {
        position: relative;
        left: auto;
        width: 100%;
        height: auto;
        max-height: none;
        /* aspect-ratio: 16/9; */
        aspect-ratio: 1.4;
    }

    .sh-vcard__body {
        width: 100%;
        padding: 1.25rem 1.25rem 1.5rem;
    }

    /* Navigasyon oklarÄ± mobilde her zaman gÃ¶rÃ¼nÃ¼r (hover yok) */
    .sh-vcard__nav {
        opacity: 1;
    }

    /* CTA mobilde wrap edebilsin: uzun fiyat + uzun etiket sÄ±ÄŸsÄ±n */
    .sh-vcard__cta {
        flex-wrap: wrap;
        white-space: normal;
        justify-content: center;
        gap: .55rem .9rem;
    }
}

@media (max-width: 767.98px) {
    .sh-card .sh-form>.sh-submit,
    .sh-form--2>.sh-submit,
    .sh-form--3>.sh-submit {
        grid-column: 1 / -1;
    }
}

/* 3) Header marka adÄ± â€” dar telefonlarda taÅŸmasÄ±n. */
.sh-brand {
    min-width: 0;
}

.sh-brand__text {
    overflow: hidden;
    text-overflow: ellipsis;
}

@media (max-width: 380px) {
    .sh-brand__text {
        font-size: .9rem;
        max-width: 130px;
    }

    .sh-header__inner {
        gap: .5rem;
    }

    .sh-burger {
        width: 38px;
        height: 38px;
    }
}

/* 4) Header aksiyonlarÄ± â€” kÃ¼Ã§Ã¼k ekranda gap'i daralt */
@media (max-width: 480px) {
    .sh-actions {
        gap: .25rem;
    }

    .sh-lang__toggle {
        padding: .4rem .55rem;
        font-size: .78rem;
    }
}

/* 5) WhatsApp/Back-to-top butonlarÄ± Ã§akÄ±ÅŸmasÄ±n */
.whatsapp-fab {
    bottom: 4.5rem;
}

.back-to-top {
    bottom: 1.1rem;
}

/* 6) CÃ¼zdan kullan satÄ±rÄ± â€” dar ekranda taÅŸmasÄ±n */
@media (max-width: 480px) {
    .sh-walletuse__row {
        flex-wrap: wrap;
    }

    .sh-walletuse__row .sh-btn,
    .sh-walletuse__amt {
        width: 100%;
        text-align: left;
    }
}

/* 7) Yan panel (trip-summary) â€” geÃ§ersiz grid kuralÄ±nÄ± flex'le dÃ¼zelt */
@media (max-width: 575.98px) {
    .sh-vsel__trust {
        display: flex;
        flex-direction: column;
        gap: .65rem;
    }
}

/* 8) Step bar â€” kÃ¼Ã§Ã¼k ekranda padding/font biraz daha kompakt */
@media (max-width: 575.98px) {
    .sh-stepbar {
        padding: 1rem 0;
    }

    .sh-stepbar__step {
        padding: .65rem .8rem;
        gap: .65rem;
    }

    .sh-stepbar__num {
        width: 32px;
        height: 32px;
        font-size: .92rem;
    }

    .sh-stepbar__label strong {
        font-size: .82rem;
    }

    .sh-stepbar__label small {
        font-size: .68rem;
    }
}

/* 9) Auth + Hesap konteyner padding'i mobilde dar */
@media (max-width: 480px) {
    .sh-auth-card {
        padding: 24px 18px;
        border-radius: 18px;
    }

    .sh-acct__main {
        padding: 18px;
        border-radius: 18px;
    }

    .sh-acct__side {
        padding: 14px;
        border-radius: 18px;
    }
}

/* 10) Tarih/saat alanÄ± â€” iOS Safari'de native picker rahat tÄ±klansÄ±n */
@media (max-width: 575.98px) {

    .sh-field input[type="datetime-local"],
    .sh-field__input[type="datetime-local"] {
        min-height: 28px;
    }
}

/* 11) Vehicle mini summary (Step 2 Ã¼stÃ¼ndeki seÃ§ili araÃ§ Ã¶zeti)
   â€” mobilde "DeÄŸiÅŸtir" linki tek satÄ±ra sÄ±ÄŸmazsa alta otomatik geÃ§sin */
@media (max-width: 575.98px) {
    .sh-vmini {
        grid-template-columns: 88px 1fr;
    }

    .sh-vmini__change {
        grid-column: 1 / -1;
        justify-self: stretch;
        justify-content: center;
    }
}

/* 12) Footer alt alan â€” mobilde linkler wrap edebilsin */
@media (max-width: 575.98px) {
    .sh-footer__bottom {
        font-size: .76rem;
        gap: .55rem;
    }

    .sh-footer__bottom-links {
        gap: .85rem;
    }
}

/* 13) Vehicle selection debug paneli â€” mobilde overflow kontrolÃ¼ */
.sh-vcard__debug {
    overflow-x: auto;
}

/* 14) Hero meta info â€” mobilde dikey ve daha az boÅŸluk */
@media (max-width: 480px) {
    .sh-hero__meta {
        gap: .85rem 1.1rem;
    }
}

/* 15) Reservation completed (teÅŸekkÃ¼r) â€” kart padding'i mobilde dar */
@media (max-width: 480px) {
    .sh-thx__paper {
        padding: 18px;
        border-radius: 18px;
    }

    .sh-thx__pay {
        padding: .85rem;
    }
}

/* 16) Form alanlarÄ±nda 16px font (iOS'ta zoom'u Ã¶nler) */
@media (max-width: 575.98px) {

    .sh-field__inp,
    .sh-field textarea.sh-field__inp,
    .sh-cform__field input,
    .sh-cform__field textarea,
    .sh-topup__input,
    .iti__tel-input,
    .sh-phone__num {
        font-size: 16px;
    }
}

/* 17) PAC autocomplete dropdown â€” header sticky deÄŸil ama mobilde
   container max-width'i tam ekran geniÅŸliÄŸine sÄ±ÄŸsÄ±n */
@media (max-width: 575.98px) {
    .pac-container {
        min-width: 0;
        max-width: calc(100vw - 24px) !important;
        left: 12px !important;
        right: 12px !important;
    }
}

/* 18) Mail secim kutusu (varsayilan mail programi yoksa acilir) */
.sh-mailpick {
    z-index: 2000;
    min-width: 250px;
    max-width: calc(100vw - 24px);
    padding: 12px;
    border-radius: 12px;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .08);
    box-shadow: 0 12px 32px rgba(0, 0, 0, .16);
    font-size: 14px;
    color: #1f2937;
    animation: sh-mailpick-in .14s ease-out;
}

@keyframes sh-mailpick-in {
    from {
        opacity: 0;
        transform: translateY(-4px);
    }

    to {
        opacity: 1;
        transform: none;
    }
}

.sh-mailpick__title {
    font-size: 12.5px;
    font-weight: 700;
    color: #6b7280;
    padding: 2px 6px 8px;
    text-align: start;
}

.sh-mailpick__list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.sh-mailpick__list li+li {
    margin-top: 2px;
}

.sh-mailpick__list a,
.sh-mailpick__copy {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 9px 10px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: inherit;
    font: inherit;
    text-align: start;
    /* RTL (Arapça) sayfalarda da doğru hizalanır */
    text-decoration: none;
    cursor: pointer;
    transition: background .12s ease;
}

.sh-mailpick__list a:hover,
.sh-mailpick__copy:hover {
    background: #f3f4f6;
}

.sh-mailpick__list i {
    color: #6b7280;
    font-size: 15px;
}

.sh-mailpick__addr {
    margin-top: 8px;
    padding: 7px 10px 2px;
    border-top: 1px solid #f0f0f0;
    font-size: 12px;
    color: #9ca3af;
    word-break: break-all;
}

/* ============================================================
   19) YENİ TASARIM SİSTEMİ BİLEŞENLERİ (Redesign Enhancements)
   ============================================================ */

/* --- A. Canlı Güven Sayaçları (Trust Counters) --- */
.sh-trust-counters {
    background: var(--sh-primary, #051036);
    color: #ffffff;
    padding: 2.2rem 0;
    position: relative;
    z-index: 5;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 10px 30px rgba(5, 16, 54, 0.15);
}

.sh-counters-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
    align-items: center;
}

.sh-counter-item {
    display: flex;
    align-items: center;
    gap: 1.1rem;
    padding: 0.5rem 1rem;
    border-right: 1px solid rgba(255, 255, 255, 0.12);
}

.sh-counter-item:last-child {
    border-right: none;
}

.sh-counter-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: rgba(248, 183, 30, 0.14);
    border: 1px solid rgba(248, 183, 30, 0.35);
    color: var(--sh-gold, #F8B71E);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    flex-shrink: 0;
}

.sh-counter-num {
    font-family: var(--sh-font-display);
    font-size: 1.55rem;
    font-weight: 700;
    color: #ffffff;
    line-height: 1.1;
    letter-spacing: -0.02em;
}

.sh-counter-label {
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.75);
    margin-top: 3px;
    font-weight: 500;
}

@media (max-width: 991.98px) {
    .sh-counters-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 1rem;
    }

    .sh-counter-item:nth-child(2) {
        border-right: none;
    }
}

@media (max-width: 575.98px) {
    .sh-counters-grid {
        grid-template-columns: 1fr;
        gap: 0.75rem;
    }

    .sh-counter-item {
        border-right: none;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08);
        padding-bottom: 0.75rem;
    }

    .sh-counter-item:last-child {
        border-bottom: none;
    }
}

/* --- C. Çift Sıralı Sonsuz Yorum Marquee (Testimonials) --- */
.sh-rv__marquee-container {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    overflow: hidden;
    padding: 1.5rem 0;
    position: relative;
    mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent);
    -webkit-mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent);
}

.sh-rv__marquee-track {
    display: flex;
    gap: 1.25rem;
    width: max-content;
    will-change: transform;
}

.sh-rv__marquee-track:hover {
    animation-play-state: paused;
}

.sh-rv__marquee-track--left {
    animation: sh-scroll-left 40s linear infinite;
}

.sh-rv__marquee-track--right {
    animation: sh-scroll-right 40s linear infinite;
}

.sh-rv__marquee-container .sh-rv__card {
    width: 380px;
    flex-shrink: 0;
    background: #ffffff;
    border: 1px solid var(--sh-border);
    border-radius: 16px;
    padding: 1.35rem 1.5rem;
    box-shadow: 0 4px 16px rgba(5, 16, 54, 0.04);
}

@keyframes sh-scroll-left {
    0% {
        transform: translateX(0);
    }

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

@keyframes sh-scroll-right {
    0% {
        transform: translateX(-50%);
    }

    100% {
        transform: translateX(0);
    }
}

/* --- D. Popüler Rotalar Yatay Kaydırılabilir Kartlar --- */
.sh-routes__scroll-wrapper {
    overflow-x: auto;
    padding-bottom: 1rem;
    scrollbar-width: thin;
    scrollbar-color: var(--sh-gold) var(--sh-bg-muted);
}

.sh-routes__scroll-wrapper::-webkit-scrollbar {
    height: 6px;
}

.sh-routes__scroll-wrapper::-webkit-scrollbar-thumb {
    background: var(--sh-gold);
    border-radius: 999px;
}

.sh-routes__grid--scrollable {
    display: flex;
    gap: 1.25rem;
    min-width: min-content;
}

.sh-route--premium {
    width: 300px;
    flex-shrink: 0;
    border-radius: 16px;
    overflow: hidden;
    background: #ffffff;
    border: 1px solid var(--sh-border);
    box-shadow: 0 4px 18px rgba(5, 16, 54, 0.05);
    transition: transform 0.25s, box-shadow 0.25s;
    text-decoration: none;
    display: flex;
    flex-direction: column;
}

.sh-route--premium:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 36px rgba(5, 16, 54, 0.12);
    border-color: var(--sh-gold);
}

.sh-route__badge {
    position: absolute;
    top: 12px;
    left: 12px;
    background: rgba(5, 16, 54, 0.88);
    backdrop-filter: blur(6px);
    color: var(--sh-gold);
    font-size: 0.72rem;
    font-weight: 700;
    padding: 3px 9px;
    border-radius: 6px;
    border: 1px solid rgba(248, 183, 30, 0.3);
}

.sh-route__arrow-line {
    color: var(--sh-gold);
    font-size: 1.1rem;
}

/* --- E. CTA Mouse Spotlight & Modern Arka Plan --- */
.sh-cta__card {
    background: linear-gradient(135deg, #051036 0%, #0c1c4d 100%);
    border: 1px solid rgba(248, 183, 30, 0.25);
    box-shadow: 0 24px 60px rgba(5, 16, 54, 0.35);
    border-radius: 24px;
    position: relative;
    overflow: hidden;
}

.sh-cta__card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 80% 20%, rgba(248, 183, 30, 0.18) 0%, transparent 60%);
    pointer-events: none;
}

.sh-btn--gold {
    background: var(--sh-gold, #F8B71E) !important;
    color: var(--sh-ink, #051036) !important;
    font-weight: 700;
    box-shadow: 0 8px 24px rgba(248, 183, 30, 0.35);
}

.sh-btn--gold:hover {
    background: var(--sh-gold-700, #e0a00e) !important;
    transform: translateY(-2px);
    color: var(--sh-ink, #051036) !important;
}

/* --- F. Footer Arkaplan Nokta Deseni (Dot Grid) --- */
.sh-footer {
    background-color: #051036 !important;
    background-image: radial-gradient(rgba(255, 255, 255, 0.08) 1px, transparent 1px);
    background-size: 24px 24px;
}