/* ============================================================
   MODERN CSS RESET
   ============================================================ */

/* 1. Use a more-intuitive box-sizing model. */
*,
*::before,
*::after {
    box-sizing: border-box;
}

/* 2. Remove default margin and tap highlight */
* {
    margin: 0;
    -webkit-tap-highlight-color: transparent;
    outline: none;
}

/* 3. Allow percentage-based heights in the application */
html,
body {
    height: 100%;
}

/* 4. Typographic tweaks!
  - Add accessible line-height
  - Improve text rendering
*/
body {
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* 5. Improve media defaults */
img,
picture,
video,
canvas,
svg {
    display: block;
    max-width: 100%;
}

/* 6. Remove built-in form typography styles */
input,
button,
textarea,
select {
    font: inherit;
}

/* 7. Avoid text overflows */
p,
h1,
h2,
h3,
h4,
h5,
h6 {
    overflow-wrap: break-word;
}

/* 8. Create a root stacking context */
#root,
#__next,
#app {
    isolation: isolate;
}

/* 9. Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul[role='list'],
ol[role='list'] {
    list-style: none;
}

/* 10. A elements that don't have a class get default styles */
a:not([class]) {
    text-decoration-skip-ink: auto;
}

/* 11. Remove all animations, transitions and smooth scroll for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
    html:focus-within {
        scroll-behavior: auto;
    }

    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
}

:root,
:host {

    /* Spacing */
    --space-xs: 3px;
    --space-s: 6px;
    --space-m: 12px;
    --space-l: 18px;
    --space-xl: 24px;

    /* Border Radius */
    --radius-xs: 2px;
    --radius-s: 4px;
    --radius-m: 8px;
    --radius-l: 12px;
    --radius-xl: 16px;
    --radius-full: 9999px;

    /* Font Sizes */
    --fs-xs: 0.75rem;
    --fs-s: 0.875rem;
    --fs-m: 1rem;
    --fs-l: 1.125rem;
    --fs-xl: 1.25rem;
    --fs-2xl: 1.5rem;
    --fs-3xl: 1.875rem;
    --fs-4xl: 2.25rem;
    --fs-5xl: 3rem;
    --fs-6xl: 3.75rem;
    --fs-7xl: 4.5rem;
    --fs-8xl: 6rem;
    --fs-9xl: 7.5rem;
}

/* DISPLAY */

.flex {
    display: flex;
}

.grid {
    display: grid;
}

.grid-1-column {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--space-m);
}

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

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

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

.grid-5-columns {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: var(--space-m);
}

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

.grid-auto-fit-2 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: var(--space-m);
}

.grid-auto-fit-3 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: var(--space-m);
}

.grid-auto-fit-4 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: var(--space-m);
}

.grid-auto-fit-5 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: var(--space-m);
}

.grid-auto-fit-6 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: var(--space-m);
}

.right-sidebar {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--space-l);
    align-items: start;
    max-width: var(--container);
    margin: auto;
    padding: 0 var(--space-m);

    @media(max-width: 992px) {
        grid-template-columns: 1fr;
        padding: 0px;

    }
}


/* GAP */
.gap-xs {
    gap: var(--space-xs);
}

.gap-s {
    gap: var(--space-s);
}

.gap-m {
    gap: var(--space-m);
}

.gap-l {
    gap: var(--space-l);
}

.gap-xl {
    gap: var(--space-xl);
}

.gap-2xl {
    gap: var(--space-2xl);
}

/* ALIGN */

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

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

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

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

/* PADDING */
.pt-m {
    padding-top: var(--space-m) !important;
}

.pt-s {
    padding-top: var(--space-s) !important;
}

.pt-l {
    padding-top: var(--space-l) !important;
}

.pt-xl {
    padding-top: var(--space-xl) !important;
}


.py-m {
    padding-top: var(--space-m) !important;
    padding-bottom: var(--space-m) !important;
}

.py-l {
    padding-top: var(--space-l) !important;
    padding-bottom: var(--space-l) !important;
}

.py-xl {
    padding-top: var(--space-xl) !important;
    padding-bottom: var(--space-xl) !important;
}

.py-2xl {
    padding-top: var(--space-2xl) !important;
    padding-bottom: var(--space-2xl) !important;
}

.py-3xl {
    padding-top: var(--space-3xl) !important;
    padding-bottom: var(--space-3xl) !important;
}

.py-4xl {
    padding-top: var(--space-4xl) !important;
    padding-bottom: var(--space-4xl) !important;
}

.py-compact {
    padding-top: var(--space-2xl) !important;
    padding-bottom: var(--space-2xl) !important;

    @media(max-width: 992px) {
        padding-top: var(--space-xl) !important;
        padding-bottom: var(--space-xl) !important;
    }

    @media(max-width: 768px) {
        padding-top: var(--space-m) !important;
        padding-bottom: var(--space-m) !important;
    }
}

/* MARGIN */
.mt-s {
    margin-top: var(--space-s) !important;
}

.mt-m {
    margin-top: var(--space-m) !important;
}

.mt-l {
    margin-top: var(--space-l) !important;
}

.mt-xl {
    margin-top: var(--space-xl) !important;
}

.mt-2xl {
    margin-top: var(--space-2xl) !important;
}

.mb-s {
    margin-bottom: var(--space-s) !important;
}

.mb-m {
    margin-bottom: var(--space-m) !important;
}

.mb-l {
    margin-bottom: var(--space-l) !important;
}

.mb-xl {
    margin-bottom: var(--space-xl) !important;
}

.mb-2xl {
    margin-bottom: var(--space-2xl) !important;
}

:root {
    --container: 1280px;

    --space-xs: 0.25em;
    --space-s: 0.5em;
    --space-m: 1em;
    --space-l: 1.5em;
    --space-xl: 2em;
    --space-2xl: 3em;
    --space-3xl: 4em;
    --space-4xl: 6em;

    --fs-default: 15px;

    --fs-xs: 0.70em;
    --fs-s: 0.80em;
    --fs-m: 1.1em;
    --fs-l: 1.4em;
    --fs-xl: 2em;
    --fs-2xl: 3em;

    --radius-sm: 4px;
    --radius-md: 6px;
    --radius-lg: 8px;
    --radius-xl: 12px;

    --input-s: 24px;
    --input-m: 32px;
    --input-l: 40px;

    --color-border: #e2e8f0;
    --color-bg: #ffffff;
    --color-bg-elevated: #f8fafc;
}

.text-xs {
    font-size: var(--fs-xs);
}

.text-s {
    font-size: var(--fs-s);
}

.text-m {
    font-size: var(--fs-m);
}

.text-l {
    font-size: var(--fs-l);
}

.text-xl {
    font-size: var(--fs-xl);
}

.text-2xl {
    font-size: var(--fs-2xl);
}

.text-3xl {
    font-size: var(--fs-3xl);
}

.text-4xl {
    font-size: var(--fs-4xl);
}

/* ==========================================================================
   SPA MODAL / DRAWER SYSTEM
   ========================================================================== */
body.spa-modal-open {
    overflow: hidden;
    /* Arkadaki sayfanın kaymasını engelle */
}

#spa-modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    /* Fallback for older browsers */
    height: 100dvh;
    background: rgba(0, 0, 0, 0.9);
    z-index: 999998;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

#spa-modal-overlay.active {
    opacity: 1;
    visibility: visible;
}

#spa-modal-container {
    position: fixed;
    bottom: 0;
    left: 50%;
    /* Tam ortaya hizalamak için */
    width: 100%;
    height: calc(100vh - 48px);
    z-index: 999999;

    /* Aşağıdan yukarı kayma animasyonu (Bottom Sheet) */
    transform: translate(-50%, 100%);
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    display: flex;
    flex-direction: column;

    /* Üst köşeleri yuvarlat */
    border-radius: 24px 24px 0 0;
}

#spa-modal-container.active {
    transform: translate(-50%, 0);
}

#spa-modal-header {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    position: absolute;
    left: 0px;
    right: 0px;
    width: 100%;
    top: 0px;
    z-index: 10;
    pointer-events: none;
    /* Header'ın arkasındaki (altındaki) içeriğe tıklanabilmesi için */
}

#spa-modal-header>* {
    pointer-events: auto;
    /* Header içindeki buton gibi elemanların tıklanabilir kalması için */
}

#spa-modal-title {
    visibility: hidden;
}

#spa-modal-close {
    position: absolute;
    bottom: 100%;
    border: none;
    background: transparent;
    color: white;
    cursor: pointer;
    align-items: center;
    justify-content: flex-end;
    display: flex;
    width: 100%;

    &:hover {
        color: white;
    }

    i {
        font-size: var(--fs-3xl);
    }

    .backicon {
        display: none;
    }

    @media(max-width: 992px) {
        justify-content: flex-start;

        .closeicon {
            display: none;
        }

        .backicon {
            display: block;
        }
    }
}

#spa-modal-content {
    flex: 1;
    overflow-y: auto;
    padding: 0;
    position: relative;
    -webkit-overflow-scrolling: touch;
    background: white;
    border-radius: 12px;
}

/* Yükleme animasyonu */
#spa-modal-loader {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: none;
}

#spa-modal-loader.active {
    display: block;
}

@media (max-width: 768px) {
    #spa-modal-container {
        max-width: 100%;
        border-radius: 0px;
    }

    #spa-modal-header {
        border-radius: 0px 0px 0 0;
    }
}


/* CONTENT TOOLS TOOLBAR */
.content-tools-toolbar {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: center;
    gap: 16px;
    user-select: none;
    margin-top: var(--space-l);
}

.content-tool-group {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.content-tool-label {
    font-size: 0.85rem;
    color: #666;
    margin-right: 4px;
    font-weight: 500;
}

.content-tool-btn {
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 4px;
    padding: 4px 10px;
    font-size: 0.9rem;
    font-weight: 600;
    color: #444;
    cursor: pointer;
    transition: all 0.2s ease;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;

}

.content-tool-btn:hover {
    background: #f0f0f0;
}

.content-tool-btn.active {
    background: var(--color-primary, #0d6efd);
    color: #fff;
    border-color: var(--color-primary-light, #0d6efd);
}

.share-btn {
    padding: 4px 8px;
    font-size: 1rem;
}

.share-btn.whatsapp:hover {
    color: #25D366;
    border-color: #25D366;
}

.share-btn.twitter:hover {
    color: #14171a;
    border-color: #14171a;
}

.share-btn.facebook:hover {
    color: #1877F2;
    border-color: #1877F2;
}

.share-btn.copy-link:hover {
    color: #0d6efd;
    border-color: #0d6efd;
}

.resize-content {
    transition: font-size 0.3s ease, line-height 0.3s ease;
}




/* Türkiye Gündemi Kartları */

.gundem-widget .section-title {
    padding-bottom: 12px;
    display: flex;
    align-items: center;
    gap: 12px;
}

.gundem-widget .section-title i {
    font-size: 1.7rem;
    color: var(--color-primary);
}

.gundem-widget .section-title h2 {
    font-size: 1.4rem;
    margin: 0;
    color: var(--color-dark);
    font-weight: 700;
}

.gundem-grid {
    display: flex;
    overflow-x: auto;
    gap: 20px;
    padding-bottom: 20px;
    scroll-snap-type: x mandatory;
    scrollbar-width: thin;
    scrollbar-color: var(--color-primary-light) transparent;
}

.gundem-grid::-webkit-scrollbar {
    height: 4px;
}

.gundem-grid::-webkit-scrollbar-thumb {
    background-color: var(--color-primary-light);
    border-radius: 4px;
}

.gundem-card {
    flex: 0 0 280px;
    scroll-snap-align: start;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: transform 0.3s;
    cursor: pointer;
    gap: var(--space-m);
}

.gundem-card-img-wrap {
    display: block;
    height: 180px;
    overflow: hidden;
    position: relative;
    border-radius: var(--radius-m);
}

.gundem-card-badge {
    position: absolute;
    top: 12px;
    left: 12px;
    background: var(--color-primary);
    color: #fff;
    z-index: 2;
    padding: 2px 8px;
    border-radius: 100px;
    font-size: 0.65rem;
    font-weight: bold;
    text-transform: uppercase;
}

.gundem-card-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s;
}

.gundem-card:hover .gundem-card-img {
    transform: scale(1.05);
}

.gundem-card-body {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.gundem-card-meta {
    font-size: 0.8rem;
    color: var(--color-secondary);
    margin-bottom: 12px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.gundem-card-meta span {
    display: flex;
    align-items: center;
    gap: 4px;
}

.gundem-card-meta strong {
    color: var(--color-primary-dark);
}

.gundem-card-title {
    font-size: 1.15rem;
    margin-bottom: 12px;
    line-height: 1.4;
    color: var(--color-dark);
    text-decoration: none;
    transition: color 0.2s;
}

.gundem-card:hover .gundem-card-title {
    color: var(--color-primary);
}

.gundem-card-desc {
    font-size: 0.95rem;
    color: var(--color-secondary-dark);
    flex: 1;
    line-height: 1.5;
    margin: 0;
}

.gundem-card-action {
    margin-top: 20px;
    width: 100%;
}


.gundem-container {
    width: 100%;
    max-width: var(--container);
    margin: auto;
    padding: var(--space-m);
}

@media(max-width: 992px) {
    .gundem-container {
        padding: 0;
    }

    .gundem-container .section-title {
        margin-left: var(--space-m);
        margin-right: var(--space-m);
    }

    .gundem-container .gundem-grid {
        padding-left: 0 !important;
        padding-right: 0 !important;
        scroll-padding-left: var(--space-m);
        scroll-padding-right: var(--space-m);
    }

    .gundem-container .gundem-grid .card:first-child {
        margin-left: var(--space-m);
    }

    .gundem-container .gundem-grid .card:last-child {
        margin-right: var(--space-m);
    }
}


/* Story Modal */
.story-modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    /* Fallback */
    height: 100dvh;
    height: 100dvh;
    background: rgba(0, 0, 0, 0.95);
    z-index: 9999999;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.story-modal-overlay.active {
    opacity: 1;
    visibility: visible;
}

.story-modal-container {
    position: relative;
    width: 100%;
    max-width: 450px;
    height: 100%;
    background: #000;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    opacity: 0;
    transform: translateY(40px) scale(0.95);
    transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.4s ease-out;
}

.story-modal-overlay.active .story-modal-container {
    opacity: 1;
    transform: translateY(0) scale(1);
}

@media (min-width: 768px) {
    .story-modal-container {
        height: 85vh;
        border-radius: 16px;
        box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5);
    }
}

.story-modal-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 50%;
    object-fit: cover;
    z-index: 1;
    -webkit-mask-image: linear-gradient(to bottom, black 50%, transparent 100%);
    mask-image: linear-gradient(to bottom, black 50%, transparent 100%);
}

.story-modal-content {
    position: relative;
    z-index: 3;
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.95) 0%, rgba(0, 0, 0, 0.7) 40%, transparent 100%);
    pointer-events: none;
    padding: 12px;
    gap: var(--space-s);
}

.story-modal-content * {
    pointer-events: auto;
}

.story-badge {
    background: var(--color-primary);
    color: #fff;
    padding: 3px 12px;
    border-radius: 100px;
    font-size: 0.65rem;
    font-weight: bold;
    text-transform: uppercase;
    display: inline-block;
    align-self: flex-start;
}

.story-title {
    color: #fff;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.35;
    margin: 0px;
}

.story-meta {
    color: rgba(255, 255, 255, 0.8);
    font-size: 0.85rem;
    display: flex;
    gap: 12px;
    align-items: center;
}

.story-desc {
    margin-bottom: 12px;
    padding: 0px;
    color: rgba(255, 255, 255, 0.9);
    font-size: 0.95rem;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.story-btn {
    display: block;
    width: 100%;
    background: var(--color-primary);
    color: #fff !important;
    text-align: center;
    padding: 8px;
    border-radius: var(--radius-md);
    text-decoration: none;
    font-weight: 600;
    transition: background 0.2s;
    border: none;
}

.story-btn:hover {
    background: var(--color-primary-dark);
}

.story-nav-zone {
    position: absolute;
    top: 0;
    height: 100%;
    z-index: 2;
    cursor: pointer;
}

.story-nav-prev {
    left: 0;
    width: 30%;
}

.story-nav-next {
    right: 0;
    width: 70%;
}

/* DESKTOP ARROWS */
.story-arrow-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    background: rgba(0, 0, 0, 0.5);
    border: none;
    color: #fff;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: none;
    /* Mobile'de gizli */
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    cursor: pointer;
    backdrop-filter: blur(4px);
    transition: background 0.2s, transform 0.2s;
}

.story-arrow-btn:hover {
    background: rgba(0, 0, 0, 0.8);
    transform: translateY(-50%) scale(1.1);
}

@media (min-width: 768px) {
    .story-arrow-btn {
        display: flex;
    }

    .story-arrow-prev {
        left: calc(50% - 225px - 70px);
        /* 450px max-width yarısı (225) + dış boşluk */
    }

    .story-arrow-next {
        right: calc(50% - 225px - 70px);
    }
}

.story-close {
    position: absolute;
    top: 30px;
    right: 18px;
    z-index: 10;
    background: rgba(0, 0, 0, 0.5);
    border: none;
    color: #fff;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    cursor: pointer;
    backdrop-filter: blur(4px);
    transition: background 0.2s;
}

.story-close:hover {
    background: rgba(0, 0, 0, 0.8);
}

.story-playpause {
    position: absolute;
    top: 30px;
    right: 64px;
    z-index: 10;
    background: rgba(0, 0, 0, 0.5);
    border: none;
    color: #fff;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    cursor: pointer;
    backdrop-filter: blur(4px);
    transition: background 0.2s;
}

.story-playpause:hover {
    background: rgba(0, 0, 0, 0.8);
}

.story-progress-container {
    position: absolute;
    top: 12px;
    left: 12px;
    right: 12px;
    display: flex;
    gap: 6px;
    z-index: 10;
}

.story-progress-bar {
    flex: 1;
    height: 3px;
    background: rgba(255, 255, 255, 0.3);
    border-radius: 2px;
    overflow: hidden;
    position: relative;
}

.story-progress-bar.completed {
    background: #fff;
}

.story-progress-fill {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 0%;
    background: #fff;
}

.story-progress-bar.active .story-progress-fill {
    animation: storyProgress 4s linear forwards;
}

.story-progress-container.paused .story-progress-bar.active .story-progress-fill {
    animation-play-state: paused;
}

@keyframes storyProgress {
    0% {
        width: 0%;
    }

    100% {
        width: 100%;
    }
}

/* PHARMACY */
.pharmacy-widget {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    background-color: var(--color-primary);
    color: white;
    padding: var(--space-m) 0px;

    .container {
        display: grid;
        grid-template-columns: 50px auto;
        gap: var(--space-m);
        align-items: center;
        position: relative;

        @media(max-width: 992px) {
            align-items: flex-start;
            grid-template-columns: 1fr;

            .e-icon {
                position: absolute;
                right: 12px;
                top: -32px;
                width: 40px;
                background-color: var(--color-primary);
                box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
                padding: 3px;
                border-radius: 3px;
            }
        }
    }

    .pharmacy-card {
        display: flex;
        justify-content: space-between;
        align-items: center;

        @media(max-width: 992px) {
            flex-direction: column;
            justify-content: flex-start;
            align-items: flex-start;
            gap: var(--space-s);
            width: 100%;

            .pharmacy-card-footer {
                display: grid;
                grid-template-columns: 1fr 1fr;
                gap: var(--space-s);
                width: 100%;
            }
        }

    }

}

/* BUTTONS */

.btn {
    height: var(--input-l);
    padding: 0px calc(var(--input-s) / 1.5);
    display: inline-flex;
    gap: var(--space-s);
    align-items: center;
    justify-content: center;
    outline: none !important;
    font-size: var(--fs-default);
    font-weight: 500;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.2s ease;
    position: relative;
    border: 1px solid transparent;
    border-radius: var(--radius);
}

/* BTN PRIMARY (Animasyonlu) */
.btn-primary {
    background-color: var(--color-primary);
    color: var(--color-dark);
    border: 2px solid rgba(var(--color-primary-rgb), 0.6);

    &:after {
        content: "";
        position: absolute;
        inset: -6px;
        padding: 2px;
        border-radius: calc(var(--radius) + 4px);
        background: linear-gradient(45deg,
                rgba(var(--color-primary-rgb), 0.5) 0%,
                rgba(var(--color-primary-rgb), 0.5) 40%,
                rgba(var(--color-primary-light-rgb), 0.9) 47%,
                rgba(255, 255, 255, 0.6) 50%,
                rgba(var(--color-primary-light-rgb), 0.9) 53%,
                rgba(var(--color-primary-rgb), 0.5) 60%,
                rgba(var(--color-primary-rgb), 0.5) 100%);
        background-size: 300% 300%;
        background-position: 0% 100%;
        -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
        -webkit-mask-composite: xor;
        mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
        mask-composite: exclude;
        pointer-events: none;
        transition: filter 0.3s ease;
    }

    &:hover {
        border: 2px solid rgba(var(--color-primary-rgb), 0.3);
        background-color: var(--color-primary-light);

        &:after {
            animation: borderGlowSweep 1.2s cubic-bezier(0.2, 0, 0.2, 1);
            filter: drop-shadow(0 0 3px rgba(var(--color-primary-light-rgb), 0.6));
        }
    }
}

@keyframes borderGlowSweep {
    0% {
        background-position: 0% 100%;
    }

    100% {
        background-position: 100% 0%;
    }
}

/* BTN SHINE (İlk açılışta ve 5 saniyede bir otomatik tekrarlayan parlama) */
.btn-shine:after {
    animation: borderGlowSweepRepeat 5s cubic-bezier(0.2, 0, 0.2, 1) infinite;
}

.btn-shine:hover:after {
    animation: borderGlowSweep 1.2s cubic-bezier(0.2, 0, 0.2, 1) infinite;
}

@keyframes borderGlowSweepRepeat {
    0% {
        background-position: 0% 100%;
        filter: drop-shadow(0 0 0px transparent);
    }

    10% {
        filter: drop-shadow(0 0 3px rgba(var(--color-primary-light-rgb), 0.6));
    }

    24% {
        background-position: 100% 0%;
        filter: drop-shadow(0 0 0px transparent);
    }

    24.01%,
    100% {
        background-position: 0% 100%;
        filter: drop-shadow(0 0 0px transparent);
    }
}

/* BTN LIGHT */
.btn-light {
    background-color: var(--color-light);
    color: var(--color-dark);
    border: 1px solid var(--color-light);

    &:hover {
        background-color: var(--color-light-light);
        border-color: var(--color-light-light);
        color: var(--color-dark);
    }
}

/* BTN DARK */
.btn-dark {
    background-color: var(--color-dark);
    color: var(--color-light);
    border: 1px solid var(--color-dark-light);

    &:hover {
        background-color: var(--color-dark-light);
        border-color: var(--color-dark-light);
        color: var(--color-light);
    }
}

/* BTN OUTLINE LIGHT */
.btn-outline-light {
    background-color: transparent;
    color: var(--color-light);
    border: 1px solid rgba(var(--color-light-rgb), 0.3);

    &:hover {
        background-color: var(--color-light);
        border-color: var(--color-light);
        color: var(--color-dark);
    }
}

/* BTN OUTLINE DARK */
.btn-outline-dark {
    background-color: transparent;
    color: var(--color-dark);
    border: 1px solid rgba(var(--color-dark-rgb), 0.3);

    &:hover {
        background-color: var(--color-dark);
        border-color: var(--color-dark);
        color: var(--color-light);
    }
}

/* BTN OUTLINE PRIMARY */
.btn-outline {
    background-color: rgba(var(--color-primary-rgb), 0.1);
    border: 1px solid rgba(var(--color-primary-rgb), 0.3);
    color: var(--color-primary);

    &:hover {
        background-color: rgba(var(--color-primary-rgb), 1);
        border-color: var(--color-primary);
        color: var(--color-light);
    }
}

.btn.active {
    background-color: var(--color-primary);
    border: 1px solid var(--color-primary-light);
    color: var(--color-light);
}

.btn-s {
    height: var(--input-m);
    padding: 0px calc(var(--input-s) / 3);
    font-size: var(--fs-default);
}

/* INPUTS */
input {
    height: var(--input-m);
    padding: 0px calc(var(--input-s) /1.8);
    border-radius: var(--radius);
    border: 1px solid var(--color-light-dark);
    outline: none !important;
    font-size: var(--fs-default);
    font-weight: 500;
    transition: all 0.2s;
    position: relative;

}

.iti__flag {
    border-radius: var(--radius-s);
}

.iti__dropdown-content {
    border-radius: var(--radius-m) !important;
}

.iti__search-input {
    border-radius: var(--radius-m) !important;
}

.iti__country-name {
    font-size: var(--fs-s);
}

/* ============================================================ */
/* CORE LAYOUT & ELEMENTS                                       */
/* ============================================================ */
body {
    font-size: var(--fs-default);
    font-family: 'Inter', sans-serif;
    background-color: var(--color-dark);
    color: var(--color-light-dark);

    a {
        color: var(--color-dark);
        text-decoration: none;
    }
}

/* CONTAINERS */

.container {
    position: relative;
    max-width: var(--container);
    margin: 0 auto;
    padding: 0px var(--space-m);
    width: 100%;
}

/* ITEMS */
.item-card {
    display: flex;
    flex-direction: column;
    gap: var(--space-m);

    img {
        width: 100%;
        height: auto;
        aspect-ratio: 5/3;
        object-fit: cover;
        border-radius: var(--radius-m);
    }

    h3 {
        font-size: var(--fs-m);
    }
}

/* CONTENTS */

.article-image {
    width: 100%;
    aspect-ratio: 5/3;
    object-fit: cover;
    border-radius: var(--radius);
}

.article-title {
    font-size: var(--fs-5xl);
    line-height: 1.3;
    font-weight: 700;
    font-family: 'Inter', sans-serif;
    letter-spacing: -1px;
    max-width: 900px;

    @media(max-width: 992px) {
        font-size: var(--fs-xl);
        line-height: 1.3em;
        letter-spacing: -0.5px;
    }
}

.article-content {
    display: flex;
    flex-direction: column;
    gap: var(--space-l);

    img {
        max-width: 100% !important;
        min-width: none !important;
    }

    iframe {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 16 / 9 !important;
    }

    a {
        text-decoration: underline;
    }

    p {
        line-height: 1.7em;
        font-size: var(--fs-m);
    }
}

/* REKLAMLAR */
.renderAd {
    position: relative;
    overflow: hidden;

    img {
        object-fit: cover;
        border-radius: var(--radius-m);
    }

    /*AspectRatio */
    .ar-11 {
        aspect-ratio: 1/1;
        width: 100%;
    }

    .ar-43 {
        aspect-ratio: 4/3;
        width: 100%;
    }

    .ar-164 {
        aspect-ratio: 16/4;
        width: 100%;
    }

    .ar-169 {
        aspect-ratio: 16/9;
        width: 100%;
    }

    .ar-35 {
        aspect-ratio: 3/5;
        width: 100%;
    }

    .ar-32 {
        aspect-ratio: 3/2;
        width: 100%;
    }
}


.home-section-header {
    display: flex;
    flex-direction: column;
    gap: var(--space-2xl);
    align-items: center;

    h2 {
        font-weight: 400;
        color: var(--color-secondary);
        line-height: 1.3;
        font-family: 'Inter', sans-serif;
    }

    .vline {
        height: 60px;
        width: 2px;
        background-color: var(--color-primary);
    }
}

/* ============================================================ */
/* THEME CONSTANTS & COMPONENTS                                  */
/* ============================================================ */
footer {
    background-color: rgba(var(--color-dark-dark-rgb), 0.4);
    color: var(--color-light);
    padding: var(--space-xl) 0;
}

header {
    color: var(--color-light);
    display: flex;
    align-items: center;
    position: sticky;
    height: 80px;
    position: sticky;
    backdrop-filter: blur(20px);
    background-color: rgba(var(--color-dark-rgb), 0.6);
    top: 0px;
    z-index: 999;

    transition: background-color 0.3s ease, backdrop-filter 0.3s ease, -webkit-backdrop-filter 0.3s ease;

    .container {
        display: grid;
        grid-template-columns: 300px auto 300px;
        align-items: center;

        @media(max-width: 992px) {
            grid-template-columns: 1fr 1fr;
        }

        .logo {
            height: 75px;
            outline: none;
            position: relative;
            z-index: 9999999;
            cursor: pointer;

            @media(max-width: 992px) {
                height: 55px;
            }
        }

        .get-offer {
            display: flex;
            align-items: center;
            gap: var(--space-l) !important;
            justify-content: flex-end;

            .bi {
                font-size: var(--fs-l);
                color: var(--color-light-dark);
                transition: all 0.3s;

                &:hover {
                    color: var(--color-light);
                }
            }

            .bi-list {
                display: none;
                cursor: pointer;
                user-select: none;

                @media(max-width: 992px) {
                    display: flex;
                    align-items: center;
                    font-size: var(--fs-xl);
                }

                &.active:before {
                    content: "\f62a";
                }
            }
        }
    }

    nav {
        display: flex;
        justify-content: center;

        @media(max-width: 992px) {
            position: fixed;
            top: 0;
            left: 0;
            bottom: 0;
            width: 280px;
            max-width: 80vw;
            height: 100vh;
            height: 100dvh;
            background-color: rgba(var(--color-dark-dark-rgb), 0.95);
            backdrop-filter: blur(25px);
            -webkit-backdrop-filter: blur(25px);
            box-shadow: 20px 0 50px rgba(0, 0, 0, 0.5);
            padding: var(--space-2xl) var(--space-m);
            padding-top: 140px;
            transform: translateX(-100%);
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            overflow-y: auto;
            z-index: 9999;
            transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.3s ease, visibility 0.35s ease;

            &.open {
                display: flex;
                transform: translateX(0);
                opacity: 1;
                visibility: visible;
                pointer-events: auto;
            }
        }

        ul {
            display: flex;
            padding: 0px;
            margin: 0px;
            list-style: none;
            gap: var(--space-s);

            @media(max-width: 992px) {
                flex-direction: column;
                width: 100%;
                gap: var(--space-xs);
            }

            li {
                display: flex;

                @media(max-width: 992px) {
                    width: 100%;
                }

                a {
                    color: var(--color-light-dark);
                    padding: 4px 10px;
                    text-decoration: none;
                    transition: all 0.2s ease;
                    border-bottom: 2px solid transparent;

                    @media(max-width: 992px) {
                        width: 100%;
                        padding: 12px 16px;
                        font-size: var(--fs-m);
                    }

                    &:hover {
                        color: var(--color-light-light);

                        @media(max-width: 992px) {
                            background-color: rgba(var(--color-primary-rgb), 0.15);
                        }
                    }
                }

                .active {
                    color: var(--color-light-light);
                    border-bottom: 2px solid var(--color-primary);


                    @media(max-width: 992px) {
                        background-color: rgba(var(--color-primary-rgb), 0.2);
                        border: none;
                    }

                    &:hover {

                        @media(max-width: 992px) {
                            background-color: rgba(var(--color-primary-rgb), 0.3);
                            border: none;
                        }
                    }
                }

                ul {
                    display: none;
                }
            }
        }
    }
}

.header-home {
    position: fixed;
    left: 0px;
    right: 0px;
    top: 0px;
    background: transparent;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;

    &.scrolled {
        background-color: rgba(var(--color-dark-rgb), 0.6);
        backdrop-filter: blur(20px);
        -webkit-backdrop-filter: blur(20px);
    }
}

@media(max-width: 992px) {
    body.nav-open {
        overflow: hidden;
    }
}

.about-section {
    padding: var(--space-2xl) var(--space-m);
    max-width: var(--container);
    margin: auto;

    .container {
        display: flex;
        flex-direction: column;
        gap: var(--space-l);
        padding: 0px;

        &.no-faqs {
            grid-template-columns: 1fr;
        }

        @media(max-width: 768px) {
            grid-template-columns: 1fr;
            gap: var(--space-l);
        }

        img {
            max-width: 120px;
            margin: auto;
        }

        nav {
            display: flex;
            justify-content: center;

            ul {
                list-style: none;
                margin: 0px;
                padding: 0px;
                display: flex;
                gap: var(--space-m);

                li {
                    display: flex;
                    gap: var(--space-s);
                    align-items: center;

                    ul {
                        display: none;
                    }

                    a {
                        color: var(--color-light);
                        transition: all 0.3s;
                        position: relative;

                        &:after {
                            content: " ";
                            position: absolute;
                            left: 0px;
                            right: 100%;
                            bottom: -5px;
                            height: 2px;
                            background-color: var(--color-primary);
                            transition: all 0.3s;
                        }

                        &:hover {
                            &:after {
                                left: 0px;
                                right: 0px;
                            }
                        }
                    }
                }
            }
        }


        .faqs {
            display: flex;
            flex-direction: column;
            background-color: var(--color-secondary);
            position: relative;
            padding: var(--space-l);

            &:after {
                content: "";
                position: absolute;
                left: -10px;
                top: -10px;
                right: 10px;
                bottom: 10px;
                border: 1px solid var(--color-primary);
                z-index: -1;

                @media(max-width: 768px) {
                    left: 10px;
                }
            }
        }
    }
}

.bodrum-map-section {
    width: 100%;
    display: flex;
    justify-content: center;
    margin: 0 auto;
    padding: var(--space-l) 0;
    margin-bottom: var(--space-2xl);

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

    .map-content {
        position: relative;
        display: flex;
        flex-direction: column;
        gap: var(--space-2xl);
        justify-items: center;
        justify-content: center;
        align-content: center;
        align-items: center;
        max-width: 1400px;
        width: 100%;
    }

    .map {
        position: relative;
        width: 100%;
        max-width: var(--container);
    }

    .marker {
        position: absolute;
        left: 27%;
        bottom: 45%;
        transform: translate(-50%, 50%);
        z-index: 2;

        span {
            display: flex;
            width: 12px;
            height: 12px;
            background-color: var(--color-primary-light);
            border-radius: 50%;
            position: relative;
            box-shadow: 0 0 12px rgba(var(--color-primary-rgb), 0.9);

            &:after {
                content: " ";
                position: absolute;
                left: -6px;
                top: -6px;
                width: 24px;
                height: 24px;
                border: 2px solid var(--color-primary-light);
                background: none;
                border-radius: 100%;
                animation: markerPulse 2s ease-out infinite;
            }
        }
    }

    .map-connector-svg {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        pointer-events: none;
        z-index: 1;
        overflow: visible;

        .line-bg {
            fill: none;
            stroke: var(--color-primary-light);
            stroke-width: 2px;
            stroke-linecap: square;
            stroke-linejoin: miter;
            opacity: 0.75;
        }

        .line-trail {
            fill: none;
            stroke: #ffffff;
            stroke-width: 2.5px;
            stroke-linecap: round;
            stroke-linejoin: miter;
            filter: drop-shadow(0 0 3px #ffffff) drop-shadow(0 0 8px rgba(var(--color-primary-light-rgb), 0.95)) drop-shadow(0 0 16px rgba(var(--color-primary-rgb), 0.8));
            opacity: 0;
        }

        .electric-spark {
            pointer-events: none;

            .spark-halo {
                animation: sparkPulse 0.5s infinite alternate ease-in-out;
            }

            .spark-core {
                filter: drop-shadow(0 0 4px #ffffff) drop-shadow(0 0 10px rgba(var(--color-primary-light-rgb), 1));
            }
        }
    }
}

@keyframes markerPulse {
    0% {
        transform: scale(0.8);
        opacity: 1;
    }

    100% {
        transform: scale(1.7);
        opacity: 0;
    }
}

@keyframes sparkPulse {
    from {
        transform: scale(0.8);
        opacity: 0.4;
    }

    to {
        transform: scale(1.5);
        opacity: 0.9;
    }
}

/* FAQ */
.faq-section {
    color: var(--color-dark);

    .faq-accordion {
        .faq-item {
            .faq-question {
                display: flex;
                justify-content: space-between;
                cursor: pointer;
                border-bottom: 1px solid var(--color-dark-light);
                padding: 12px 0px;
            }

            .faq-answer {
                padding-top: var(--space-m);
            }
        }
    }
}

.home-hero-content {
    justify-items: center;
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: 32px;
    padding: var(--space-4xl) var(--space-m);

    @media(max-width: 768px) {
        padding: var(--space-3xl) var(--space-m);
    }

    img {
        width: 170px;
        margin: auto;
        opacity: 0.7;
    }

    p {
        max-width: 800px;
        margin: auto;
        color: var(--color-secondary-light);
        font-size: var(--fs-m);
        line-height: 1.8;
    }
}

/* MANŞET SLIDER & YAZARLAR SIDEBAR */
.manset-container {
    display: grid;
    grid-template-columns: 2fr 1fr;
    margin: var(--space-l) auto;
    width: 100%;
    max-width: var(--container);
    padding: 0 var(--space-m);

    @media(max-width: 992px) {
        padding: 0px;
        margin-top: 0px;
    }
}

@media(max-width: 992px) {
    .manset-container {
        grid-template-columns: 1fr;
        padding: 0 !important;
        /* Mobilde tam genişlik (bleed) yapmak için sıfır */
    }

    .manset-sidebar {
        margin: 0px !important;
        /* Sidebar mobilde biraz içeride kalsın */
    }
}

/* Slider */
.manset-slider {
    display: flex;
    flex-direction: column;
    gap: 8px;
    background: #000;
    border-radius: var(--radius-m) 0px 0px var(--radius-m);
    overflow: hidden;
    position: relative;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

@media(max-width: 992px) {
    .manset-slider {
        border-radius: 0;
    }
}

.manset-main-view {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    touch-action: pan-y;
    /* Yalnızca dikey kaydırmaya izin ver (yatay swipe'ı carousel alsın) */
    cursor: grab;

    @media(max-width: 992px) {
        aspect-ratio: 1 / 1;
    }
}

.manset-main-view:active {
    cursor: grabbing;
}

.manset-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0, 0, 0, 0.5);
    color: #fff;
    border: none;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: none;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    cursor: pointer;
    z-index: 10;
    backdrop-filter: blur(4px);
    transition: background 0.2s, transform 0.2s;
}

.manset-arrow:hover {
    background: rgba(0, 0, 0, 0.8);
    transform: translateY(-50%) scale(1.1);
}

.manset-arrow.prev {
    left: 10px;
}

.manset-arrow.next {
    right: 10px;
}

@media(min-width: 768px) {
    .manset-arrow {
        display: flex;
    }
}


.manset-track {
    display: flex;
    width: 100%;
    height: 100%;
    transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}

.manset-slide {
    flex: 0 0 100%;
    width: 100%;
    height: 100%;
    position: relative;
    display: block;
    text-decoration: none;
}

.manset-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.manset-slide-content {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0.6) 40%, transparent 100%);
    padding: var(--space-xl) var(--space-m) var(--space-m);
    color: #fff;
    pointer-events: none;
}

.manset-slide-badge {
    background: var(--color-primary);
    color: #fff;
    padding: 4px 8px;
    font-size: 0.75rem;
    font-weight: 700;
    border-radius: 4px;
    margin-bottom: 8px;
    display: inline-block;
}

.manset-slide-title {
    font-size: 1.5rem;
    font-weight: 700;
    margin: 0;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
}

@media(max-width: 768px) {
    .manset-slide-title {
        font-size: 1.2rem;
    }
}

/* Thumbnails */
.manset-thumbnails {
    display: flex;
    gap: 8px;
    padding: 8px 8px 8px 8px;
    background: #000;
    overflow-x: auto;
    scroll-behavior: smooth;
    scrollbar-width: none;
    /* Firefox */
    -ms-overflow-style: none;
    /* IE/Edge */
    position: relative;
}

.manset-thumbnails::-webkit-scrollbar {
    display: none;
    /* Chrome/Safari */
}

.manset-thumb {
    flex: 0 0 calc(20% - 6.4px);
    /* Masaüstünde 5 resim göster */
    cursor: pointer;
    position: relative;
    border-radius: 4px;
    overflow: hidden;
    aspect-ratio: 16 / 9;
    opacity: 0.5;
    transition: opacity 0.3s ease, box-shadow 0.3s ease;
}

@media(max-width: 768px) {
    .manset-thumb {
        flex: 0 0 calc(30% - 5.3px);
        /* Mobilde 3.3 resim göster, yatay scroll hissiyatı artsın */
    }
}

.manset-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.manset-thumb.active {
    opacity: 1;
    box-shadow: 0 0 0 2px var(--color-primary);
}

.manset-thumb:hover {
    opacity: 0.8;
}

/* Sidebar (Yazarlar) */
.manset-sidebar {
    background: var(--color-dark);
    border-radius: 0px var(--radius-m) var(--radius-m) 0px;
    padding: var(--space-m) var(--space-l);
    display: flex;
    flex-direction: column;
    gap: var(--space-s);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.02);

    @media(max-width: 992px) {
        border-radius: 0px;
        padding: var(--space-m);
        gap: 0px;
    }
}

.manset-sidebar-header {
    display: flex;
    align-items: center;
    border-bottom: 2px solid rgba(var(--color-primary-rgb), 0.2);
    margin-bottom: var(--space-xs);
    padding-bottom: 8px;
}

.manset-sidebar-title {
    font-size: 1.25rem;
    font-weight: 800;
    color: var(--color-light-light);
    margin: 0;
    border-bottom: 2px solid var(--color-primary);
    margin-bottom: -10px;
    /* Border overlap trick */
    padding-bottom: 8px;
}

.author-card {
    display: flex;
    align-items: center;
    gap: 12px;
    text-decoration: none;
    transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
    color: white;
    height: 100%;
    border-bottom: 1px solid rgba(var(--color-dark-light-rgb), 0.3);

    &:last-child {
        border: none;
    }

    @media(max-width: 992px) {
        padding: var(--space-m) 0px;
    }
}

.author-card:hover {
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05);
}

.author-avatar {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid var(--color-light-light);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.author-info {
    display: flex;
    flex-direction: column;
    gap: 4px;
    flex: 1;
}

.author-name {
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--color-primary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.author-article {
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--color-light-light);
    line-height: 1.3;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.page-header {
    background-color: rgba(var(--color-dark-dark-rgb), 0.3);
    border-bottom: 1px solid var(--color-primary);
    min-height: 7rem;
    display: flex;
    align-items: center;

    h1 {
        font-weight: 300;
        text-align: center;
        color: var(--color-light);

        @media(max-width: 768px) {
            font-size: var(--fs-l);
        }
    }
}

.quote-cta-section {
    padding: var(--space-xl) 0;
    position: relative;
    z-index: 2;

    @media(max-width: 768px) {
        padding: var(--space-xl) 0;
    }

    .quote-cta-card {
        position: relative;
        background-color: rgba(var(--color-primary-rgb), 0.08);
        border: 1px solid rgba(var(--color-primary-rgb), 0.4);
        padding: var(--space-xl);
        display: flex;
        flex-direction: column;
        gap: var(--space-l);
        overflow: hidden;
        box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2);
        border-radius: var(--radius);

        @media(max-width: 768px) {
            padding: var(--space-m);
        }

        /* Elektrik Animasyonlu Çerçeve Işıltısı */
        &:after {
            content: "";
            position: absolute;
            inset: -2px;
            padding: 2px;
            border-radius: inherit;
            z-index: 1;
            animation: borderGlowSweepRepeat 6s cubic-bezier(0.2, 0, 0.2, 1) infinite;
        }

        .cta-glow-bg {
            position: absolute;
            top: -60%;
            right: -20%;
            width: 80%;
            height: 200%;
            pointer-events: none;
            z-index: 0;
        }

        .quote-cta-content {
            position: relative;
            z-index: 2;
            display: flex;
            flex-direction: column;
            gap: var(--space-xs);

            .cta-title {
                font-size: var(--fs-xl);
                font-weight: 600;
                color: var(--color-light-light);
                line-height: 1.3;
                margin: 0;
            }

            .cta-desc {
                font-size: var(--fs-s);
                color: var(--color-secondary-light);
                line-height: 1.5;
                margin: 0;
            }
        }

        .quote-cta-contacts {
            position: relative;
            z-index: 2;
            display: flex;
            flex-direction: column;
            gap: var(--space-s);
            width: 100%;

            .cta-contact-item {
                display: flex;
                align-items: center;
                gap: var(--space-m);
                padding: 12px 16px;
                background: rgba(var(--color-dark-dark-rgb), 0.35);
                border: 1px solid rgba(var(--color-primary-rgb), 0.2);
                text-decoration: none;
                transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
                color: var(--color-light-light);
                border-radius: var(--radius-s);

                .contact-icon {
                    width: 38px;
                    height: 38px;
                    border-radius: 50%;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    background: rgba(var(--color-primary-rgb), 0.2);
                    color: var(--color-primary-light);
                    font-size: 1.1rem;
                    flex-shrink: 0;
                    transition: all 0.3s ease;
                }

                .contact-details {
                    display: flex;
                    flex-direction: column;
                    gap: 2px;
                    overflow: hidden;

                    .contact-label {
                        font-size: 0.75rem;
                        color: var(--color-secondary-light);
                        text-transform: uppercase;
                        letter-spacing: 0.5px;
                        line-height: 1;
                    }

                    .contact-value {
                        font-size: var(--fs-s);
                        font-weight: 600;
                        color: var(--color-light-light);
                        line-height: 1.3;
                        word-break: break-all;
                    }
                }

                &:hover {
                    background: rgba(var(--color-primary-rgb), 0.18);
                    border-color: var(--color-primary-light);
                    transform: translateY(-2px);
                    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.25);

                    .contact-icon {
                        background: var(--color-primary);
                        color: #ffffff;
                        transform: scale(1.08);
                    }
                }

                &.whatsapp-link:hover {
                    border-color: #25D366;

                    .contact-icon {
                        background: #25D366;
                        color: #ffffff;
                    }
                }
            }
        }
    }
}

.services-wrapper {
    padding: var(--space-m);
    width: 100%;
    max-width: var(--container);
    margin: auto;
    position: relative;

    @media(max-width: 768px) {
        padding: var(--space-m) 0;
    }

    /* CAROUSEL GÖRÜNÜMÜ */
    &.carousel {
        .carousel-nav-btn {
            position: absolute;
            top: calc(50% - 35px);
            transform: translateY(-50%);
            z-index: 10;
            width: 44px;
            height: 44px;
            border-radius: 50%;
            background: rgba(var(--color-primary-rgb), 0.95);
            backdrop-filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
            border: 1px solid rgba(var(--color-primary-light-rgb), 0.25);
            color: var(--color-light-light);
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            font-size: 1.15rem;
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
            box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);

            &.prev-btn {
                left: -10px;
            }

            &.next-btn {
                right: -10px;
            }

            &:hover:not(:disabled) {
                background: var(--color-primary);
                color: var(--color-light-light);
                border-color: var(--color-primary-light);
                box-shadow: 0 0 20px rgba(var(--color-primary-rgb), 0.6);
                transform: translateY(-50%) scale(1.1);
            }

            &:disabled,
            &.disabled {
                opacity: 0;
                pointer-events: none;
                cursor: default;
            }

            @media(max-width: 768px) {
                display: none !important;
            }
        }

        .services-track {
            display: flex;
            overflow-x: auto;
            scroll-snap-type: x mandatory;
            gap: var(--space-l);
            padding: var(--space-l) 0 var(--space-l) 0;
            scrollbar-width: none;
            -webkit-overflow-scrolling: touch;

            &::-webkit-scrollbar {
                display: none;
            }

            @media(max-width: 768px) {
                padding: var(--space-s) var(--space-m) var(--space-l) var(--space-m);
                scroll-padding: 0 var(--space-m);
                gap: var(--space-m);
            }

            .service-card {
                flex: 0 0 340px;
                scroll-snap-align: start;

                @media(max-width: 768px) {
                    flex: 0 0 80vw;
                    max-width: 320px;
                }
            }
        }
    }

    /* GRID GÖRÜNÜMÜ */
    &.grid {
        .services-track {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
            gap: var(--space-l);
            padding: var(--space-xl) 0px;

            @media(max-width: 768px) {
                grid-template-columns: 1fr;
                gap: var(--space-l);
                padding: 0px var(--space-m);
            }
        }
    }

    /* KART TASARIMI */
    .service-card {
        display: flex;
        flex-direction: column;
        gap: var(--space-m);
        overflow: hidden;
        text-decoration: none;
        transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
        position: relative;

        &:hover {

            .card-title {
                color: var(--color-primary-light);
            }

            .card-image-wrap img,
            .card-image-wrap picture img {
                transform: scale(1.05);
            }
        }

        .card-image-wrap {
            position: relative;
            aspect-ratio: 16 / 10;
            width: 100%;
            overflow: hidden;
            background-color: rgba(var(--color-dark-rgb), 0.5);
            border-radius: var(--radius);

            picture {
                display: block;
                width: 100%;
                height: 100%;
            }

            img {
                width: 100%;
                height: 100%;
                object-fit: cover;
                transition: transform 0.4s ease;
                display: block;
            }

            .card-no-img {
                width: 100%;
                height: 100%;
                background: linear-gradient(135deg, rgba(var(--color-dark-rgb), 0.8), rgba(var(--color-dark-dark-rgb), 0.9));
            }
        }

        .card-info {
            display: flex;
            flex-direction: column;
            gap: var(--space-xs);

            .card-header-row {
                display: flex;
                flex-direction: column;
                gap: var(--space-2xs);

                .card-title {
                    font-size: var(--fs-m);
                    font-weight: 600;
                    color: var(--color-light-light);
                    line-height: 1.4;
                    transition: color 0.3s;
                    margin: 0;
                }

                .card-date {
                    font-size: var(--fs-s);
                    color: var(--color-secondary-light);
                }
            }
        }
    }

    .service-card-active {
        .card-image-wrap {
            border: 2px solid var(--color-primary);
        }
    }

}

.services {
    margin-top: 60px;
    position: relative;
    z-index: 3;

    @media(max-width: 768px) {
        height: auto;
        margin-top: 0px;
    }

    .services-content {
        background-color: rgba(var(--color-dark-dark-rgb), 0.2);
        backdrop-filter: blur(12px);
        border-radius: var(--radius);
        height: 100%;
        padding: var(--space-m);
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        gap: var(--space-xl);
        position: relative;

        &:after {
            content: "";
            position: absolute;
            inset: -5px;
            padding: 2px;
            border-radius: calc(var(--radius) + 4px);
            background: linear-gradient(45deg,
                    rgba(var(--color-primary-rgb), 0.5) 0%,
                    rgba(var(--color-primary-rgb), 0.5) 40%,
                    rgba(var(--color-primary-light-rgb), 0.9) 47%,
                    rgba(255, 255, 255, 0.7) 50%,
                    rgba(var(--color-primary-light-rgb), 0.9) 53%,
                    rgba(var(--color-primary-rgb), 0.5) 60%,
                    rgba(var(--color-primary-rgb), 0.5) 100%);
            background-size: 300% 300%;
            background-position: 0% 100%;
            -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
            -webkit-mask-composite: xor;
            mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
            mask-composite: exclude;
            pointer-events: none;
            z-index: 0;
            animation: borderGlowSweepRepeat 5s cubic-bezier(0.2, 0, 0.2, 1) infinite;
            transition: filter 0.3s ease;
        }

        @media(max-width: 768px) {
            grid-template-columns: 1fr;
            gap: var(--space-3xl);
            padding: 0px;
            background: none;
            border-bottom: 2px solid var(--color-primary);

            &:after {
                display: none;
            }
        }

        .service-item {
            display: grid;
            grid-template-columns: 1fr 1fr;
            align-items: flex-end;
            gap: var(--space-l);
            position: relative;
            z-index: 1;


            &:hover {

                img,
                picture img {
                    transform: translate(0px, -10px);
                }
            }

            @media(max-width: 768px) {
                grid-template-columns: 1fr;
            }

            picture {
                display: block;
                width: 100%;
            }

            img {
                margin-top: -50px;
                aspect-ratio: 16/9;
                width: 100%;
                object-fit: cover;
                transition: all 0.3s;
                display: block;
                border-radius: var(--radius-s);

                @media(max-width: 992px) {
                    aspect-ratio: 1/1;
                    margin-top: 0px;
                }

                @media(max-width: 768px) {
                    aspect-ratio: 16/9;
                }
            }

            .service-item-content {
                display: flex;
                flex-direction: column;
                gap: var(--space-m);
                padding-bottom: var(--space-m);

                h3 {
                    color: var(--color-primary);
                }

                p {
                    color: var(--color-secondary-light);
                }
            }
        }

    }
}

.slider {
    height: 700px;
    background-color: var(--color-dark-light);
    display: flex;
    flex-direction: column;
    align-content: flex-end;
    justify-content: flex-end;
    padding: 0px var(--space-l);
    position: relative;
    overflow: hidden;

    @media(max-width: 768px) {
        height: 80vh;
        padding: 0px var(--space-m);
    }

    .slider-bg-wrapper {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        z-index: 0;
        pointer-events: none;
    }

    .slider-bg-slide {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        opacity: 0;
        transition: opacity 1s ease-in-out;
        z-index: 0;

        &.active {
            opacity: 1;
            z-index: 1;
        }
    }

    .slider-overlay {
        position: absolute;
        inset: 0;
        background: linear-gradient(to bottom,
                rgba(var(--color-dark-rgb), 0.35) 0%,
                rgba(var(--color-dark-rgb), 0.15) 30%,
                rgba(var(--color-dark-rgb), 0.85) 100%);
        z-index: 2;
        pointer-events: none;
    }

    .container {
        position: relative;
        z-index: 3;
        padding-bottom: calc(var(--space-2xl) + 100px);

        @media(max-width: 768px) {
            padding: 0px;
            padding-bottom: calc(var(--space-l) + 50px);
            justify-items: center;
        }

        h1 {
            font-size: var(--fs-6xl);
            font-weight: 700;
            line-height: 1.3;
            font-family: 'Inter', sans-serif;
            letter-spacing: -1px;
            max-width: 600px;
            color: var(--color-light-dark);

            @media(max-width: 768px) {
                font-size: 12vw;
                line-height: 1.2em;
            }
        }

        p {
            font-size: var(--fs-m);
            line-height: 1.6em;
            max-width: 600px;
            color: rgba(var(--color-light-dark-rgb), 0.7);

            @media(max-width: 768px) {
                display: none;
            }
        }

        .actions {
            display: flex;
            gap: var(--space-m);
            margin-top: var(--space-l);

            @media(max-width: 768px) {
                width: 100%;
                display: grid;
                grid-template-columns: 1fr 1fr;
            }
        }
    }

}