* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html {
    scroll-behavior: smooth;
}

body {
    overflow-x: hidden;
    background: var(--body-bg);
    color: var(--text-color);
    font-family: "Inter", sans-serif;
}

body.menu-open {
    overflow: hidden;
}

a {
    color: inherit;
    text-decoration: none;
}

button {
    font: inherit;
}

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

.container {
    width: min(
        calc(100% - 40px),
        var(--container-width)
    );
    margin-inline: auto;
}

/* =========================
   HEADER
========================= */

.site-header {
    position: fixed;
    z-index: 1000;
    top: 0;
    right: 0;
    left: 0;
    height: var(--header-height);
    background: linear-gradient(
        180deg,
        rgba(5, 5, 5, 0.82) 0%,
        rgba(5, 5, 5, 0.40) 55%,
        rgba(5, 5, 5, 0) 100%
    );
    transition:
        height 0.3s ease,
        background-color 0.3s ease,
        border-color 0.3s ease,
        box-shadow 0.3s ease,
        backdrop-filter 0.3s ease;
}

.site-header.is-scrolled {
    height: var(--header-height-scrolled);
	border-bottom: 1px solid transparent;
    background: rgba(9, 9, 9, 0.96);
    border-bottom-color: rgba(255, 255, 255, 0.10);
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.22);
    backdrop-filter: blur(16px);
}

.header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    height: 100%;
}

/* Logo */

.brand {
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
    gap: 14px;
}

.brand-symbol {
    display: grid;
    width: 42px;
    height: 42px;
    flex-shrink: 0;
    place-items: center;
    border-radius: 50%;
    background: var(--theme-color);
    color: #080808;
    font-family: "Barlow Condensed", sans-serif;
    font-size: 21px;
    font-weight: 900;
    line-height: 1;
}

.brand-text {
    display: flex;
    flex-direction: column;
}

.brand-name {
    font-family: "Barlow Condensed", sans-serif;
    font-size: 18px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

.brand-description {
    margin-top: 5px;
    color: rgba(255, 255, 255, 0.50);
    font-size: 8px;
    font-weight: 600;
    letter-spacing: 3px;
    line-height: 1;
    text-transform: uppercase;
}

/* Navigation */

.main-navigation {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 44px;
    margin-left: auto;
}

.nav-list {
    display: flex;
    align-items: center;
    gap: 34px;
    list-style: none;
}

.nav-link {
    position: relative;
    display: inline-flex;
    padding-block: 12px;
    color: rgba(255, 255, 255, 0.90);
    font-family: "Barlow Condensed", sans-serif;
    font-size: 17px;
    font-weight: 400;
    letter-spacing: 0.5px;
    transition: color 0.25s ease;
}

.nav-link::after {
    position: absolute;
    right: 0;
    bottom: 4px;
    left: 0;
    width: 0;
    height: 2px;
    margin-inline: auto;
    background: var(--theme-color);
    content: "";
    transition: width 0.25s ease;
}

.nav-link:hover,
.nav-link.active {
    color: #ffffff;
}

.nav-link:hover::after,
.nav-link.active::after {
    width: 100%;
}

/* Buttons */

.primary-button,
.secondary-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 11px;
    min-height: 52px;
    padding: 14px 28px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 14px;
    font-weight: 700;
    white-space: nowrap;
    cursor: pointer;
    transition:
        transform 0.25s ease,
        background-color 0.25s ease,
        border-color 0.25s ease,
        color 0.25s ease,
        box-shadow 0.25s ease;
}

.primary-button {
    background: var(--theme-color);
    color: #080808;
}

.primary-button:hover {
    transform: translateY(-2px);
    background: #ffe34c;
    box-shadow:
        0 14px 35px rgba(var(--theme-color-rgb), 0.22);
}

.secondary-button {
    border-color: rgba(255, 255, 255, 0.19);
    background: rgba(255, 255, 255, 0.06);
    color: #ffffff;
    backdrop-filter: blur(10px);
}

.secondary-button:hover {
    transform: translateY(-2px);
    border-color: rgba(255, 255, 255, 0.38);
    background: rgba(255, 255, 255, 0.11);
}

.header-login-btn{
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    max-height:64px;
    padding:0 18px;
    border-radius:10px;
    text-decoration:none;
    line-height:1;
}

/* Ana yazı */
.header-login-title{
    font-size:18px;
    font-weight:600;
    letter-spacing:-.2px;
    color:#111;
    transition:.30s;
}

/* Alt yazı */
.header-login-subtitle{
    margin-top:0px;
	margin-top:-5px;
    font-size:6px;
    font-weight:700;
    letter-spacing:1px;
    text-transform:uppercase;
    white-space:nowrap;
    color:rgba(17,17,17,.65);
    transition:.30s;
}

/* Hover */

.header-login-btn:hover .header-login-title{
    transform:translateY(-1px);
}

.header-login-btn:hover .header-login-subtitle{
    color:#111;
}

/* Mobile menu button */

.menu-toggle {
    display: none;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.06);
    color: #ffffff;
    cursor: pointer;
}

.menu-toggle i {
    font-size: 24px;
    line-height: 1;
}

/* =========================
   HERO
========================= */

.hero {
    position: relative;
    display: flex;
    min-height: 820px;
    overflow: hidden;
    isolation: isolate;
}

/* Sol sarı ışık */

.hero::before {
    position: absolute;
    z-index: -1;
    top: 32%;
    bottom: -20%;
    left: -18%;
    width: 65%;
    background: radial-gradient(
        ellipse at center,
        rgba(var(--theme-color-rgb), 0.28) 0%,
        rgba(var(--theme-color-rgb), 0.13) 30%,
        rgba(var(--theme-color-rgb), 0.03) 60%,
        transparent 76%
    );
    filter: blur(20px);
    content: "";
    pointer-events: none;
}

/* Alt karartma */

.hero::after {
    position: absolute;
    z-index: -1;
    right: 0;
    bottom: 0;
    left: 0;
    height: 34%;
    background: linear-gradient(
        180deg,
        transparent 0%,
        rgba(8, 8, 8, 0.62) 48%,
        #080808 100%
    );
    content: "";
    pointer-events: none;
}

[data-theme="light"] .hero::after {
    background: linear-gradient(
        180deg,
        transparent 0%,
        rgba(247,247,245,.55) 48%,
        var(--body-bg) 100%
    );
}

.hero-container {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding-top: calc(var(--header-height) + 75px);
    padding-bottom: 72px;
}

.hero-content {
    width: min(100%, 720px);
    margin-bottom: 62px;
}

.hero-eyebrow {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 20px;
    color: var(--theme-color);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 4px;
    line-height: 1.5;
    text-transform: uppercase;
}

.hero-eyebrow::before {
    width: 28px;
    height: 2px;
    background: var(--theme-color);
    content: "";
}

.hero-title {
    max-width: 800px;
    font-family: "Barlow Condensed", sans-serif;
    font-size: clamp(60px, 4.8vw, 92px);
    font-weight: 700;
    letter-spacing: -2px;
    line-height: 1.1;
    text-transform: uppercase;
}

.hero-title span {
    display: block;
    color: var(--theme-color);
}

.hero-description {
    max-width: 620px;
    margin-top: 20px;
    color: rgba(255, 255, 255, 0.58);
    font-size: 16px;
    line-height: 1.8;
}

[data-theme="light"] .hero-title {
    color: #111111;
}

[data-theme="light"] .hero-title span {
    color: var(--theme-color);
}

[data-theme="light"] .hero-description {
    color: rgba(17,17,17,.65);
}

/* =========================================
   HERO SECONDARY BUTTON - LIGHT MODE
========================================= */

[data-theme="light"] .hero .secondary-button {
    color: #171717;

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

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

    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.08);

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

[data-theme="light"] .hero .secondary-button i {
    color: #171717;
}

[data-theme="light"] .hero .secondary-button:hover {
    color: #111111;

    background: #ffffff;

    border-color: rgba(17, 17, 17, 0.45);

    box-shadow: 0 7px 22px rgba(0, 0, 0, 0.12);

    transform: translateY(-2px);
}

.hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 34px;
}

.hero-actions .primary-button {
    min-width: 205px;
}

.hero-actions .secondary-button {
    min-width: 190px;
}

/* =========================
   STATISTICS
========================= */

.statistics {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.stat-card {
    position: relative;
    min-height: 126px;
    padding: 25px 30px;
    overflow: hidden;
    border: 1px solid var(--border-color);
    border-radius: 18px;
    background:
        linear-gradient(
            135deg,
            rgba(255, 255, 255, 0.055),
            rgba(255, 255, 255, 0.018)
        ),
        var(--card-bg);

    backdrop-filter: blur(14px);
    transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        background-color 0.3s ease;
}

.stat-card::after {
    position: absolute;
    right: -50px;
    bottom: -70px;
    width: 130px;
    height: 130px;
    border-radius: 50%;
    background: rgba(var(--theme-color-rgb), 0.08);
    content: "";
    filter: blur(18px);
    transition: transform 0.3s ease;
}

.stat-card:hover {
    transform: translateY(-6px);
    border-color: rgba(var(--theme-color-rgb), 0.45);
}

.stat-card:hover::after {
    transform: scale(1.3);
}

.stat-value {
    position: relative;
    z-index: 1;
    color: var(--theme-color);
    font-family: "Barlow Condensed", sans-serif;
    font-size: 46px;
    font-weight: 800;
    letter-spacing: -1px;
    line-height: 0.9;
}

.stat-label {
    position: relative;
    z-index: 1;
    display: block;
    margin-top: 14px;
    color: rgba(255, 255, 255, 0.45);
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 3px;
    line-height: 1.4;
    text-transform: uppercase;
}

[data-theme="light"] .stat-label {
    color: rgba(10, 10, 10, 0.45);
}

/* Demo section */

.demo-section {
    min-height: 700px;
    padding: 120px 0;
    background: #080808;
}

.demo-section h2 {
    max-width: 650px;
    font-family: "Barlow Condensed", sans-serif;
    font-size: clamp(42px, 5vw, 72px);
    line-height: 0.95;
    text-transform: uppercase;
}

/* =========================
   RESPONSIVE
========================= */

@media (max-width: 1100px) {
    .main-navigation {
        gap: 25px;
    }

    .nav-list {
        gap: 22px;
    }

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

    .hero {
        min-height: 980px;
    }
}

@media (max-width: 900px) {
    :root {
        --header-height: 82px;
        --header-height-scrolled: 68px;
    }

    .menu-toggle {
        display: inline-flex;
    }

    .main-navigation {
        position: fixed;
        top: var(--header-height-scrolled);
        right: 18px;
        left: 18px;
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 20px;
        max-height: 0;
        padding: 0 24px;
        overflow: hidden;
        visibility: hidden;
        opacity: 0;
        border: 1px solid rgba(255, 255, 255, 0.12);
        border-radius: 20px;
        background: rgba(10, 10, 10, 0.98);
        box-shadow: 0 25px 50px rgba(0, 0, 0, 0.4);
        transform: translateY(-12px);
        transition:
            max-height 0.35s ease,
            padding 0.35s ease,
            opacity 0.25s ease,
            visibility 0.25s ease,
            transform 0.35s ease;
    }

    .main-navigation.is-open {
        max-height: 600px;
        padding: 24px;
        visibility: visible;
        opacity: 1;
        transform: translateY(0);
    }

    .nav-list {
        flex-direction: column;
        align-items: stretch;
        gap: 2px;
    }

    .nav-link {
        width: 100%;
        padding: 14px 6px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    }

    .nav-link::after {
        display: none;
    }

    .header-button {
        width: 100%;
    }

    .hero {
        min-height: auto;
        background:
            linear-gradient(
                90deg,
                rgba(5, 5, 5, 0.96) 0%,
                rgba(5, 5, 5, 0.76) 52%,
                rgba(5, 5, 5, 0.38) 100%
            ),
            url("assets/images/hero.jpg") 63% center / cover no-repeat;
    }

    .hero-container {
        min-height: 930px;
        padding-bottom: 50px;
    }

    .hero-content {
        margin-bottom: 50px;
    }
}

@media (max-width: 640px) {
    .container {
        width: min(calc(100% - 28px), var(--container-width));
    }

    .brand-description {
        display: none;
    }

    .brand-symbol {
        width: 38px;
        height: 38px;
    }

    .hero {
        background:
            linear-gradient(
                180deg,
                rgba(5, 5, 5, 0.60) 0%,
                rgba(5, 5, 5, 0.72) 38%,
                rgba(5, 5, 5, 0.96) 78%,
                #080808 100%
            ),
            url("assets/images/hero.jpg") 65% top / auto 63% no-repeat;
    }

    .hero-container {
        min-height: 1020px;
        justify-content: flex-end;
        padding-top: 260px;
        padding-bottom: 35px;
    }

    .hero-content {
        margin-bottom: 35px;
    }

    .hero-eyebrow {
        font-size: 10px;
        letter-spacing: 2.7px;
    }

    .hero-title {
        font-size: clamp(48px, 15vw, 66px);
        letter-spacing: -1px;
    }

    .hero-description {
        margin-top: 22px;
        font-size: 14px;
        line-height: 1.7;
    }

    .hero-actions {
        display: grid;
        grid-template-columns: 1fr;
        margin-top: 26px;
    }

    .hero-actions .primary-button,
    .hero-actions .secondary-button {
        width: 100%;
    }

    .statistics {
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }

    .stat-card {
        min-height: 108px;
        padding: 20px 18px;
        border-radius: 14px;
    }

    .stat-value {
        font-size: 36px;
    }

    .stat-label {
        margin-top: 11px;
        font-size: 8px;
        letter-spacing: 1.8px;
    }
}

@media (max-width: 420px) {
    .brand-name {
        font-size: 16px;
    }

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

    .hero-container {
        min-height: 1200px;
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }

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

/* =========================
   ABOUT SECTION
========================= */

.about-section {
	position: relative;
	overflow: hidden;
	padding: 130px 0;
	background: #080808;
}

/* Bölüm arka planında hafif ışık */

.about-section::before {
	position: absolute;
	top: 5%;
	right: -18%;
	width: 580px;
	height: 580px;
	border-radius: 50%;
	background: radial-gradient(
		circle,
		rgba(var(--theme-color-rgb), 0.08) 0%,
		rgba(var(--theme-color-rgb), 0.025) 42%,
		transparent 70%
	);
	content: "";
	pointer-events: none;
}

.about-grid {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.08fr);
	align-items: center;
	gap: clamp(60px, 7vw, 115px);
}

.about-flow {
	position: relative;
	z-index: 1;
	display: flow-root;
}

.about-flow .about-image-column {
	float: left;
	width: 44%;
	margin-right: clamp(40px, 5vw, 75px);
	margin-bottom: 30px;
}

.about-flow .about-description {
	max-width: none;
	margin-top: 31px;
}

.about-flow .about-description p {
	max-width: none;
}

.about-flow .about-features {
	clear: both;
}

/* =========================
   LEFT IMAGE
========================= */

.about-image-column {
	min-width: 0;
}

.about-image-wrapper {
	position: relative;
	min-height: 650px;
	overflow: hidden;
	border-radius: 10px;
	background: #111111;
}

.about-image {
	width: 100%;
	height: 100%;
	min-height: 650px;
	object-fit: cover;
	object-position: center;
	transition: transform 0.8s ease;
}

.about-image-wrapper:hover .about-image {
	transform: scale(1.035);
}

.about-image-overlay {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(
			180deg,
			rgba(0, 0, 0, 0.02) 40%,
			rgba(0, 0, 0, 0.62) 100%
		),
		linear-gradient(
			90deg,
			rgba(0, 0, 0, 0.08),
			transparent 45%
		);
	pointer-events: none;
}

/* Deneyim kartı */

.about-experience-card {
	position: absolute;
	right: 0;
	bottom: 0;
	display: flex;
	align-items: center;
	gap: 17px;
	min-width: 265px;
	padding: 24px 28px;
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	border-left: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 18px 0 0 0;
	background: rgba(17, 17, 17, 0.91);
	backdrop-filter: blur(15px);
}

.about-experience-card strong {
	color: var(--theme-color);

	font-family: "Barlow Condensed", sans-serif;
	font-size: 50px;
	font-weight: 800;
	line-height: 0.9;
}

.about-experience-card span {
	color: rgba(255, 255, 255, 0.55);

	font-size: 10px;
	font-weight: 700;
	letter-spacing: 1.7px;
	line-height: 1.6;
	text-transform: uppercase;
}

/* =========================
   RIGHT CONTENT
========================= */

.about-content {
	min-width: 0;
}

.section-eyebrow {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 5px;
	color: var(--theme-color);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 4px;
	line-height: 1.4;
	text-transform: uppercase;
}

.section-eyebrow::before {
	width: 28px;
	height: 2px;
	flex-shrink: 0;
	background: var(--theme-color);
	content: "";
}

.section-title {
	max-width: 650px;
	color: #ffffff;
	font-family: "Barlow Condensed", sans-serif;
	font-size: clamp(40px, 4.2vw, 60px);
	font-weight: 700;
	letter-spacing: -1.1px;
	line-height: 0.96;
	text-transform: uppercase;
}

.section-title span {
	display: block;
}

.about-description {
	max-width: 680px;
	margin-top: 31px;
}

.about-description p {
	color: rgba(255, 255, 255, 0.57);

	font-size: 15px;
	line-height: 1.82;
}

.about-description p + p {
	margin-top: 17px;
}

/* =========================
   FEATURES
========================= */

.about-features {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 31px 34px;

	margin-top: 49px;
}

.about-feature {
	display: grid;
	grid-template-columns: 52px minmax(0, 1fr);
	align-items: flex-start;
	gap: 17px;
}

.about-feature-icon {
	display: grid;
	width: 52px;
	height: 52px;

	flex-shrink: 0;
	place-items: center;

	border: 1px solid rgba(var(--theme-color-rgb), 0.16);
	border-radius: 50%;

	background: rgba(var(--theme-color-rgb), 0.12);
	color: var(--theme-color);

	transition:
		transform 0.3s ease,
		background-color 0.3s ease,
		box-shadow 0.3s ease;
}

.about-feature-icon i {
	font-size: 21px;
	line-height: 1;
}

.about-feature:hover .about-feature-icon {
	transform: translateY(-4px);

	background: var(--theme-color);
	color: #080808;

	box-shadow:
		0 12px 30px rgba(var(--theme-color-rgb), 0.15);
}

.about-feature-content h3 {
	margin-top: 1px;

	color: #ffffff;

	font-family: "Barlow Condensed", sans-serif;
	font-size: 21px;
	font-weight: 700;
	letter-spacing: 0.2px;
	line-height: 1.15;
	text-transform: uppercase;
}

.about-feature-content p {
	margin-top: 10px;

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

	font-size: 13px;
	line-height: 1.75;
}

/* =========================
   RESPONSIVE
========================= */

@media (max-width: 1100px) {
	.about-grid {
		gap: 55px;
	}

	.about-image-wrapper,
	.about-image {
		min-height: 590px;
	}

	.about-features {
		grid-template-columns: 1fr;
		gap: 27px;
	}
}

@media (max-width: 900px) {
	.about-section {
		padding: 95px 0;
	}

	.about-grid {
		grid-template-columns: 1fr;
		gap: 60px;
	}

	.about-image-wrapper,
	.about-image {
		min-height: 650px;
	}

	.about-content {
		max-width: 720px;
	}

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

@media (max-width: 640px) {
	.about-section {
		padding: 75px 0;
	}

	.about-grid {
		gap: 44px;
	}

	.about-image-wrapper,
	.about-image {
		min-height: 470px;
	}

	.about-image-wrapper {
		border-radius: 3px;
	}

	.about-experience-card {
		min-width: auto;
		padding: 18px 20px;
	}

	.about-experience-card strong {
		font-size: 40px;
	}

	.about-experience-card span {
		font-size: 8px;
		letter-spacing: 1.2px;
	}

	.section-eyebrow {
		margin-bottom: 16px;
		font-size: 10px;
		letter-spacing: 3px;
	}

	.section-title {
		font-size: clamp(42px, 13vw, 57px);
		letter-spacing: -0.8px;
	}

	.about-description {
		margin-top: 24px;
	}

	.about-description p {
		font-size: 14px;
		line-height: 1.75;
	}

	.about-features {
		grid-template-columns: 1fr;
		gap: 28px;

		margin-top: 39px;
	}

	.about-feature {
		grid-template-columns: 48px minmax(0, 1fr);
		gap: 15px;
	}

	.about-feature-icon {
		width: 48px;
		height: 48px;
	}
	
	.about-flow .about-image-column {
		float: none;
		width: 100%;
		margin-right: 0;
		margin-bottom: 40px;
	}
}

@media (max-width: 420px) {
	.about-image-wrapper,
	.about-image {
		min-height: 410px;
	}

	.about-experience-card {
		right: 12px;
		bottom: 12px;

		border: 1px solid rgba(255, 255, 255, 0.12);
		border-radius: 13px;
	}

	.about-experience-card strong {
		font-size: 35px;
	}
}

/* =========================
   PROGRAMS SECTION
========================= */

.programs-section {
	position: relative;
	overflow: hidden;
	padding: 125px 0;
	background: #090909;
}

.programs-section::before {
	position: absolute;
	top: -250px;
	left: 50%;
	width: 800px;
	height: 500px;
	border-radius: 50%;
	background: radial-gradient(
		ellipse,
		rgba(var(--theme-color-rgb), 0.075) 0%,
		rgba(var(--theme-color-rgb), 0.02) 45%,
		transparent 72%
	);
	content: "";
	pointer-events: none;
	transform: translateX(-50%);
}

/* Başlık */

.programs-header {
	position: relative;
	z-index: 1;
	max-width: 760px;
	margin: 0 auto 68px;
	text-align: center;
}

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

.programs-eyebrow::before {
	display: none;
}

.programs-title {
	margin-top: 0px;
	color: #ffffff;
	font-family: "Barlow Condensed", sans-serif;
	font-size: clamp(40px, 4.2vw, 60px);
	font-weight: 700;
	letter-spacing: -1.3px;
	line-height: 0.95;
	text-transform: uppercase;
}

.programs-description {
	max-width: 680px;
	margin: 25px auto 0;

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

	font-size: 15px;
	line-height: 1.8;
}

/* Kart Grid */

.programs-grid {
    display: grid;
    grid-template-columns: repeat(
        auto-fit,
        minmax(300px, 1fr)
    );

    gap: 24px;

    max-width: 1220px;
    margin: 0 auto;
}

.programs-grid:has(> :nth-child(2):last-child) {
    max-width: 820px;
}

/* Kart */

.program-card {
	position: relative;
	display: flex;
	flex-direction: column;
	min-width: 0;
	min-height: 350px;
	padding: 36px 32px 30px;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 20px;
	background:
		linear-gradient(
			145deg,
			rgba(255, 255, 255, 0.04),
			rgba(255, 255, 255, 0.012)
		),
		#151515;
	transition:
		transform 0.3s ease,
		border-color 0.3s ease,
		box-shadow 0.3s ease;
}

.program-card::before {
	position: absolute;
	top: 0;
	left: 0;

	width: 100%;
	height: 3px;

	background: var(--theme-color);
	content: "";

	opacity: 0;
	transform: scaleX(0);
	transform-origin: left;

	transition:
		opacity 0.3s ease,
		transform 0.3s ease;
}

.program-card::after {
	position: absolute;
	right: -100px;
	bottom: -120px;

	width: 240px;
	height: 240px;

	border-radius: 50%;
	background: rgba(var(--theme-color-rgb), 0.055);

	content: "";
	filter: blur(30px);
	pointer-events: none;
}

.program-card:hover {
	transform: translateY(-8px);

	border-color: rgba(var(--theme-color-rgb), 0.48);

	box-shadow:
		0 24px 60px rgba(0, 0, 0, 0.28);
}

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

/* Öne çıkan kart */

.program-card.is-featured {
	border-color: rgba(var(--theme-color-rgb), 0.58);

	box-shadow:
		inset 0 0 0 1px rgba(var(--theme-color-rgb), 0.05);
}

.program-card.is-featured::before {
	opacity: 1;
	transform: scaleX(1);
}

/* Kart üstü */

.program-card-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;

	min-height: 28px;
}

.program-branch {
	color: var(--theme-color);

	font-size: 11px;
	font-weight: 800;
	letter-spacing: 3px;
	line-height: 1.4;
	text-transform: uppercase;
}

.program-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	min-height: 25px;
	padding: 5px 14px;

	border-radius: 999px;

	background: var(--theme-color);
	color: #080808;

	font-size: 9px;
	font-weight: 800;
	letter-spacing: 2px;
	text-transform: uppercase;
}

.program-name {
	margin-top: 17px;

	color: #ffffff;

	font-family: "Barlow Condensed", sans-serif;
	font-size: 33px;
	font-weight: 700;
	letter-spacing: -0.4px;
	line-height: 1;
	text-transform: uppercase;
}

/* Detaylar */

.program-details {
	display: flex;
	flex-direction: column;
	gap: 20px;

	margin-top: 36px;
	padding: 0;

	list-style: none;
}

.program-details li {
	display: grid;
	grid-template-columns: 22px minmax(0, 1fr);
	align-items: flex-start;
	gap: 13px;

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

	font-size: 13px;
	line-height: 1.5;
}

.program-details li > i {
	margin-top: 2px;

	color: var(--theme-color);

	font-size: 17px;
	line-height: 1;
}

.program-details li span {
	display: flex;
	flex-direction: column;
	gap: 3px;
}

.program-details small {
	color: rgba(255, 255, 255, 0.34);

	font-size: 9px;
	font-weight: 700;
	letter-spacing: 1.5px;
	line-height: 1.3;
	text-transform: uppercase;
}

/* Kart altı */

.program-card-footer {
	position: relative;
	z-index: 1;

	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;

	margin-top: auto;
	padding-top: 29px;

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

.program-capacity {
	display: inline-flex;
	align-items: center;
	gap: 8px;

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

	font-size: 10px;
	font-weight: 600;
	line-height: 1.4;
}

.program-capacity i {
	color: var(--theme-color);
	font-size: 14px;
}

.program-capacity.is-full {
	color: rgba(255, 255, 255, 0.4);
}

.program-capacity.is-full i {
	color: #ef5350;
}

.program-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;

	min-height: 42px;
	padding: 10px 17px;

	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 999px;

	background: rgba(255, 255, 255, 0.04);
	color: #ffffff;

	font-size: 11px;
	font-weight: 700;
	white-space: nowrap;

	transition:
		background-color 0.25s ease,
		border-color 0.25s ease,
		color 0.25s ease,
		transform 0.25s ease;
}

.program-button:hover {
	transform: translateY(-2px);

	border-color: var(--theme-color);
	background: var(--theme-color);
	color: #080808;
}

/* =========================
   RESPONSIVE
========================= */

@media (max-width: 1100px) {
	.programs-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 768px) {
	.programs-section {
		padding: 90px 0;
	}

	.programs-header {
		margin-bottom: 48px;
	}

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

	.program-card {
		min-height: 450px;
	}
}

@media (max-width: 480px) {
	.programs-section {
		padding: 75px 0;
	}

	.programs-title {
		font-size: clamp(45px, 14vw, 60px);
	}

	.programs-description {
		margin-top: 20px;

		font-size: 14px;
		line-height: 1.7;
	}

	.program-card {
		min-height: auto;
		padding: 29px 23px 24px;
		border-radius: 16px;
	}

	.program-name {
		font-size: 29px;
	}

	.program-details {
		gap: 18px;
		margin-top: 30px;
	}

	.program-card-footer {
		align-items: stretch;
		flex-direction: column;

		margin-top: 35px;
	}

	.program-button {
		width: 100%;
	}
}

/* =========================
   BENEFITS SECTION
========================= */

.benefits-section {
	position: relative;
	overflow: hidden;
	padding: 120px 0;
	background: #090909;
}

/* Ortadaki hafif sarı ışık */

.benefits-section::before {
	position: absolute;
	top: -250px;
	left: 50%;
	width: 800px;
	height: 500px;
	border-radius: 50%;
	background: radial-gradient(
		ellipse,
		rgba(var(--theme-color-rgb), 0.075) 0%,
		rgba(var(--theme-color-rgb), 0.02) 45%,
		transparent 72%
	);
	content: "";
	pointer-events: none;
	transform: translateX(-50%);
}

/* Başlık alanı */

.benefits-header {
	position: relative;
	z-index: 1;

	max-width: 760px;
	margin: 0 auto 62px;

	text-align: center;
}

.benefits-eyebrow {
	color: var(--theme-color);

	font-size: 11px;
	font-weight: 800;
	letter-spacing: 3.5px;
	line-height: 1.4;
	text-transform: uppercase;
}

.benefits-title {
	margin-top: 0px;
	color: #ffffff;
	font-family: "Barlow Condensed", sans-serif;
	font-size: clamp(40px, 4.2vw, 60px);
	font-weight: 700;
	letter-spacing: -1.3px;
	line-height: 0.95;
	text-transform: uppercase;
}

.benefits-description {
	max-width: 630px;
	margin: 24px auto 0;

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

	font-size: 14px;
	line-height: 1.8;
}

/* Grid */

.benefits-grid {
	position: relative;
	z-index: 1;

	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
}

/* Kart */

.benefit-card {
	position: relative;
	min-height: 235px;
	padding: 30px;

	overflow: hidden;

	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 18px;

	background:
		linear-gradient(
			140deg,
			rgba(255, 255, 255, 0.035),
			rgba(255, 255, 255, 0.012)
		),
		rgba(24, 24, 24, 0.9);

	transition:
		transform 0.3s ease,
		border-color 0.3s ease,
		box-shadow 0.3s ease,
		background-color 0.3s ease;
}

.benefit-card::before {
	position: absolute;
	right: -80px;
	bottom: -110px;

	width: 210px;
	height: 210px;

	border-radius: 50%;
	background: rgba(var(--theme-color-rgb), 0.06);

	content: "";
	filter: blur(25px);
	pointer-events: none;

	transition: transform 0.35s ease;
}

.benefit-card:hover {
	transform: translateY(-7px);

	border-color: rgba(var(--theme-color-rgb), 0.42);

	box-shadow:
		0 20px 45px rgba(0, 0, 0, 0.26);
}

.benefit-card:hover::before {
	transform: scale(1.25);
}

/* İkon */

.benefit-icon {
	position: relative;
	z-index: 1;

	display: grid;
	width: 52px;
	height: 52px;

	place-items: center;

	border: 1px solid rgba(var(--theme-color-rgb), 0.14);
	border-radius: 50%;

	background: rgba(var(--theme-color-rgb), 0.13);
	color: var(--theme-color);

	transition:
		transform 0.3s ease,
		background-color 0.3s ease,
		color 0.3s ease,
		box-shadow 0.3s ease;
}

.benefit-icon i {
	font-size: 21px;
	line-height: 1;
}

.benefit-card:hover .benefit-icon {
	transform: rotate(-5deg) scale(1.06);

	background: var(--theme-color);
	color: #090909;

	box-shadow:
		0 12px 28px rgba(var(--theme-color-rgb), 0.18);
}

/* Metin */

.benefit-card h3 {
	position: relative;
	z-index: 1;

	margin-top: 24px;

	color: #ffffff;

	font-family: "Barlow Condensed", sans-serif;
	font-size: 24px;
	font-weight: 700;
	letter-spacing: -0.2px;
	line-height: 1.1;
	text-transform: uppercase;
}

.benefit-card p {
	position: relative;
	z-index: 1;

	margin-top: 14px;

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

	font-size: 13px;
	line-height: 1.75;
}

/* =========================
   RESPONSIVE
========================= */

@media (max-width: 1024px) {
	.benefits-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 768px) {
	.benefits-section {
		padding: 90px 0;
	}

	.benefits-header {
		margin-bottom: 45px;
	}

	.benefits-title {
		font-size: clamp(48px, 11vw, 66px);
	}
}

@media (max-width: 640px) {
	.benefits-section {
		padding: 75px 0;
	}

	.benefits-grid {
		grid-template-columns: 1fr;
		gap: 14px;
	}

	.benefit-card {
		min-height: auto;
		padding: 26px 23px;
		border-radius: 15px;
	}

	.benefit-icon {
		width: 48px;
		height: 48px;
	}

	.benefit-card h3 {
		margin-top: 21px;
		font-size: 22px;
	}

	.benefit-card p {
		font-size: 13px;
	}
}

/* =========================
   COACHES SECTION
========================= */

.coaches-section {
	position: relative;
	overflow: hidden;
	padding: 125px 0;
	background: #080808;
}

/* Bölümün üst kısmındaki hafif ışık */

.coaches-section::before {
	position: absolute;
	top: -250px;
	left: 50%;
	width: 800px;
	height: 500px;
	border-radius: 50%;
	background: radial-gradient(
		ellipse,
		rgba(var(--theme-color-rgb), 0.075) 0%,
		rgba(var(--theme-color-rgb), 0.02) 45%,
		transparent 72%
	);
	content: "";
	pointer-events: none;
	transform: translateX(-50%);
}

/* =========================
   SECTION HEADER
========================= */

.coaches-header {
	position: relative;
	z-index: 1;

	max-width: 780px;
	margin: 0 auto 65px;

	text-align: center;
}

.coaches-eyebrow {
	color: var(--theme-color);

	font-size: 11px;
	font-weight: 800;
	letter-spacing: 3.5px;
	line-height: 1.4;
	text-transform: uppercase;
}

.coaches-title {
	max-width: 760px;
	margin: 18px auto 0;

	color: #ffffff;

	font-family: "Barlow Condensed", sans-serif;
	font-size: clamp(52px, 5vw, 76px);
	font-weight: 800;
	letter-spacing: -1.5px;
	line-height: 0.95;
	text-transform: uppercase;
}

.coaches-description {
	max-width: 670px;
	margin: 25px auto 0;

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

	font-size: 14px;
	line-height: 1.8;
}

/* =========================
   GRID
========================= */

.coaches-grid {
	position: relative;
	z-index: 1;

	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 26px;
}

/* =========================
   COACH CARD
========================= */

.coach-card {
	position: relative;
	min-width: 0;
	min-height: 320px;

	overflow: hidden;

	border: 1px solid rgba(255, 255, 255, 0.15);
	border-radius: 26px;

	background: #101010;

	transition:
		transform 0.35s ease,
		border-color 0.35s ease,
		box-shadow 0.35s ease;
}

.coach-card::before {
	position: absolute;
	z-index: 3;
	top: 0;
	right: 0;
	left: 0;

	height: 3px;

	background: var(--theme-color);

	content: "";
	opacity: 0;
	transform: scaleX(0);
	transform-origin: left;

	transition:
		opacity 0.35s ease,
		transform 0.35s ease;
}

.coach-card:hover {
	transform: translateY(-9px);

	border-color: rgba(var(--theme-color-rgb), 0.48);

	box-shadow:
		0 28px 65px rgba(0, 0, 0, 0.35);
}

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

/* =========================
   IMAGE
========================= */

.coach-image-wrapper {
	position: absolute;
	inset: 0;

	overflow: hidden;

	background:
		radial-gradient(
			circle at 50% 36%,
			rgba(30, 45, 55, 0.55),
			rgba(6, 8, 10, 0.98) 70%
		);
}

.coach-image {
	width: 100%;
	height: 100%;

	object-fit: cover;
	object-position: center top;

	filter:
		saturate(0.88)
		contrast(1.04);

	transition:
		transform 0.7s ease,
		filter 0.5s ease;
}

.coach-card:hover .coach-image {
	transform: scale(1.045);

	filter:
		saturate(1)
		contrast(1.06);
}

.coach-image-overlay {
	position: absolute;
	inset: 0;

	background:
		linear-gradient(
			180deg,
			rgba(0, 0, 0, 0.04) 28%,
			rgba(0, 0, 0, 0.20) 52%,
			rgba(0, 0, 0, 0.90) 85%,
			rgba(0, 0, 0, 0.98) 100%
		),
		linear-gradient(
			90deg,
			rgba(0, 0, 0, 0.12),
			transparent 45%,
			rgba(0, 0, 0, 0.08)
		);

	pointer-events: none;
}

/* Alt kısımdaki tema ışığı */

.coach-image-wrapper::after {
	position: absolute;
	right: -90px;
	bottom: -110px;

	width: 250px;
	height: 250px;

	border-radius: 50%;

	background: rgba(var(--theme-color-rgb), 0.08);

	content: "";
	filter: blur(38px);
	pointer-events: none;
}

/* =========================
   CONTENT
========================= */

.coach-content {
	position: absolute;
	z-index: 2;
	right: 0;
	bottom: 0;
	left: 0;

	padding: 34px 30px 28px;
}

.coach-position {
	display: block;

	color: var(--theme-color);

	font-size: 10px;
	font-weight: 800;
	letter-spacing: 2.6px;
	line-height: 1.4;
	text-transform: uppercase;
}

.coach-name {
	margin-top: 9px;

	color: #ffffff;

	font-family: "Barlow Condensed", sans-serif;
	font-size: 34px;
	font-weight: 800;
	letter-spacing: -0.6px;
	line-height: 1;
	text-transform: uppercase;
}

/* =========================
   SOCIAL LINKS
========================= */

.coach-socials {
	display: flex;
	align-items: center;
	gap: 10px;

	margin-top: 24px;
}

.coach-socials a {
	display: grid;
	width: 38px;
	height: 38px;

	place-items: center;

	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 50%;

	background: rgba(255, 255, 255, 0.055);
	color: rgba(255, 255, 255, 0.64);

	backdrop-filter: blur(10px);

	transition:
		transform 0.25s ease,
		border-color 0.25s ease,
		background-color 0.25s ease,
		color 0.25s ease;
}

.coach-socials a:hover {
	transform: translateY(-3px);

	border-color: var(--theme-color);
	background: var(--theme-color);
	color: #080808;
}

.coach-socials i {
	font-size: 14px;
	line-height: 1;
}

/* =========================
   RESPONSIVE
========================= */

@media (max-width: 1100px) {
	.coaches-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.coach-card {
		min-height: 560px;
	}
}

@media (max-width: 768px) {
	.coaches-section {
		padding: 90px 0;
	}

	.coaches-header {
		margin-bottom: 48px;
	}

	.coaches-grid {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.coach-card {
		min-height: 640px;
	}
}

@media (max-width: 540px) {
	.coaches-section {
		padding: 75px 0;
	}

	.coaches-title {
		font-size: clamp(46px, 13vw, 61px);
	}

	.coaches-description {
		font-size: 14px;
		line-height: 1.7;
	}

	.coach-card {
		min-height: 520px;
		border-radius: 20px;
	}

	.coach-content {
		padding: 28px 23px 24px;
	}

	.coach-name {
		font-size: 30px;
	}

	.coach-socials {
		margin-top: 20px;
	}

	.coach-socials a {
		width: 36px;
		height: 36px;
	}
}

@media (max-width: 400px) {
	.coach-card {
		min-height: 470px;
	}
}

/* =========================
   SHOP SECTION
========================= */

.shop-section {
    position: relative;
    overflow: hidden;
    padding: 125px 0;

    background: #080808;
}

/* Hafif tema ışığı */

.shop-section::before {
    position: absolute;

    top: -260px;
    left: 50%;

    width: 850px;
    height: 520px;

    border-radius: 50%;

    background: radial-gradient(
        ellipse,
        rgba(var(--theme-color-rgb), 0.075) 0%,
        rgba(var(--theme-color-rgb), 0.02) 45%,
        transparent 72%
    );

    content: "";

    transform: translateX(-50%);

    pointer-events: none;
}

/* =========================
   HEADER
========================= */

.shop-header {
    position: relative;
    z-index: 1;

    max-width: 760px;

    margin: 0 auto 65px;

    text-align: center;
}

.shop-eyebrow {
    color: var(--theme-color);

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 3.5px;

    text-transform: uppercase;
}

.shop-title {
    margin-top: 12px;

    color: #ffffff;

    font-family: "Barlow Condensed", sans-serif;

    font-size: clamp(40px, 4.2vw, 60px);

    font-weight: 700;

    letter-spacing: -1.3px;

    line-height: 0.95;

    text-transform: uppercase;
}

.shop-description {
    max-width: 630px;

    margin: 24px auto 0;

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

    font-size: 14px;

    line-height: 1.8;
}

/* =========================
   GRID
========================= */

.shop-grid {
    position: relative;
    z-index: 1;

    display: grid;

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

    gap: 20px;
}

/* =========================
   PRODUCT CARD
========================= */

.product-card {
    position: relative;

    min-width: 0;

    overflow: hidden;

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

    border-radius: 20px;

    background: #151515;

    transition:
        transform .3s ease,
        border-color .3s ease,
        box-shadow .3s ease;
}

.product-card:hover {
    transform: translateY(-7px);

    border-color: rgba(var(--theme-color-rgb), .45);

    box-shadow:
        0 24px 55px rgba(0,0,0,.28);
}

/* =========================
   IMAGE
========================= */

.product-image-wrapper {
    position: relative;

    aspect-ratio: 1 / 1;

    overflow: hidden;

    background: #111111;
}

.product-image {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform .6s ease;
}

.product-card:hover .product-image {
    transform: scale(1.035);
}

.product-badge {
    position: absolute;

    top: 16px;
    left: 16px;

    display: inline-flex;

    align-items: center;

    min-height: 25px;

    padding: 5px 13px;

    border-radius: 999px;

    background: var(--theme-color);

    color: #111111;

    font-size: 9px;

    font-weight: 800;

    letter-spacing: 1.5px;

    text-transform: uppercase;
}

.product-badge-sale {
    background: #ffffff;
}

/* =========================
   CONTENT
========================= */

.product-content {
    padding: 24px;
}

.product-category {
    color: var(--theme-color);

    font-size: 9px;

    font-weight: 800;

    letter-spacing: 2.2px;

    text-transform: uppercase;
}

.product-name {
    margin-top: 8px;

    color: #ffffff;

    font-family: "Barlow Condensed", sans-serif;

    font-size: 25px;

    font-weight: 700;

    line-height: 1.1;

    text-transform: uppercase;
}

.product-description {
    margin-top: 13px;

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

    font-size: 12px;

    line-height: 1.7;
}

/* =========================
   FOOTER
========================= */

.product-footer {
    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    gap: 14px;

    margin-top: 26px;

    padding-top: 20px;

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

.product-price {
    display: flex;

    flex-direction: column;

    gap: 4px;
}

.product-price-label {
    color: rgba(255,255,255,.35);

    font-size: 8px;

    font-weight: 700;

    letter-spacing: 1.5px;

    text-transform: uppercase;
}

.product-price strong {
    color: #ffffff;

    font-family: "Barlow Condensed", sans-serif;

    font-size: 25px;

    font-weight: 700;
}

.product-stock {
    display: inline-flex;

    align-items: center;

    gap: 6px;

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

    font-size: 9px;

    font-weight: 600;
}

.product-stock i {
    color: #4caf50;
}

.product-stock.is-low i {
    color: #ff9800;
}

/* =========================
   LIGHT MODE
========================= */

[data-theme="light"] .shop-section {
    background: var(--section-bg-alt);
}

[data-theme="light"] .shop-title {
    color: var(--heading-color);
}

[data-theme="light"] .shop-description {
    color: var(--muted-color);
}

[data-theme="light"] .product-card {
    border-color: var(--border-color);

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.98),
            rgba(246,246,243,.95)
        ),
        var(--card-bg);

    box-shadow:
        0 12px 35px rgba(0,0,0,.035);
}

[data-theme="light"] .product-card:hover {
    border-color:
        rgba(var(--theme-color-rgb), .55);

    box-shadow:
        0 20px 45px rgba(0,0,0,.08);
}

[data-theme="light"] .product-image-wrapper {
    background: #eeeeeb;
}

[data-theme="light"] .product-name {
    color: var(--heading-color);
}

[data-theme="light"] .product-description {
    color: var(--muted-color);
}

[data-theme="light"] .product-footer {
    border-top-color: rgba(17,17,17,.08);
}

[data-theme="light"] .product-price-label {
    color: rgba(17,17,17,.38);
}

[data-theme="light"] .product-price strong {
    color: var(--heading-color);
}

[data-theme="light"] .product-stock {
    color: rgba(17,17,17,.52);
}

/* =========================
   RESPONSIVE
========================= */

@media (max-width: 1100px) {

    .shop-grid {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));
    }

}

@media (max-width: 850px) {

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

}

@media (max-width: 540px) {

    .shop-section {
        padding: 75px 0;
    }

    .shop-header {
        margin-bottom: 45px;
    }

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

    .product-card {
        border-radius: 17px;
    }

    .product-content {
        padding: 22px;
    }

}

/* =========================
   GALLERY SECTION
========================= */

.gallery-section {
    position: relative;
    overflow: hidden;

    padding: 125px 0;

    background: #080808;
}


/* Hafif tema ışığı */

.gallery-section::before {
    position: absolute;

    top: -260px;
    left: 50%;

    width: 850px;
    height: 520px;

    border-radius: 50%;

    background: radial-gradient(
        ellipse,
        rgba(var(--theme-color-rgb), 0.075) 0%,
        rgba(var(--theme-color-rgb), 0.02) 45%,
        transparent 72%
    );

    content: "";

    transform: translateX(-50%);

    pointer-events: none;
}


/* =========================
   HEADER
========================= */

.gallery-header {
    position: relative;
    z-index: 1;

    max-width: 760px;

    margin: 0 auto 60px;

    text-align: center;
}

.gallery-eyebrow {
    margin-bottom: 10px;

    color: var(--theme-color);

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 3.5px;

    line-height: 1.4;

    text-transform: uppercase;
}

.gallery-description {
    max-width: 650px;

    margin: 22px auto 0;

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

    font-size: 14px;

    line-height: 1.8;
}


/* =========================
   GRID
========================= */

.gallery-grid {
    position: relative;
    z-index: 1;

    display: grid;

    grid-template-columns:
        repeat(12, minmax(0, 1fr));

    grid-auto-flow: dense;

    grid-auto-rows: 40px;

    gap: 16px;
}


/* =========================
   ITEM
========================= */

.gallery-item {
    position: relative;

    grid-column: span 4;
    grid-row: span 7;

    min-width: 0;

    margin: 0;

    overflow: hidden;

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

    border-radius: 20px;

    background: #111111;

    box-shadow:
        0 15px 35px rgba(0,0,0,.16);
}


/* Bazı kartlar dikey */

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


/* Bazı kartlar geniş */

.gallery-item-wide {
    grid-column: span 8;
    grid-row: span 7;
}


/* =========================
   IMAGE
========================= */

.gallery-item img {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
    object-position: center;

    transition:
        transform .7s ease,
        filter .5s ease;
}


/* Çok hafif overlay */

.gallery-item::after {
    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            180deg,
            transparent 55%,
            rgba(0,0,0,.18) 100%
        );

    content: "";

    pointer-events: none;
}


/* Hover sadece görsel efekt.
   Tıklama yok. */

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


/* =========================
   LIGHT MODE
========================= */

[data-theme="light"] .gallery-section {
    background: var(--section-bg);
}

[data-theme="light"] .gallery-description {
    color: var(--muted-color);
}

[data-theme="light"] .gallery-item {
    border-color: var(--border-color);

    background: #ececea;

    box-shadow:
        0 12px 30px rgba(0,0,0,.05);
}


/* =========================
   TABLET
========================= */

@media (max-width: 1000px) {

    .gallery-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        grid-auto-rows: auto;
    }

    .gallery-item,
    .gallery-item-tall,
    .gallery-item-wide {
        grid-column: auto;
        grid-row: auto;

        aspect-ratio: 4 / 3;
    }

    .gallery-item-tall {
        aspect-ratio: 3 / 4;
    }

}


/* =========================
   MOBILE
========================= */

@media (max-width: 640px) {

    .gallery-section {
        padding: 75px 0;
    }

    .gallery-header {
        margin-bottom: 42px;
    }

    .gallery-grid {
        grid-template-columns: 1fr;

        gap: 12px;
    }

    .gallery-item,
    .gallery-item-wide {
        aspect-ratio: 4 / 3;

        border-radius: 16px;
    }

    .gallery-item-tall {
        aspect-ratio: 4 / 5;
    }

}

/* =========================================================
   GOOGLE REVIEWS
========================================================= */

.google-reviews-section {
    position: relative;

    overflow: hidden;

    padding: 115px 0 120px;

    background: #080808;
}


/* Arka plandaki çok hafif tema ışığı */

.google-reviews-section::before {
    position: absolute;

    top: -260px;
    left: 50%;

    width: 850px;
    height: 520px;

    border-radius: 50%;

    background: radial-gradient(
        ellipse,
        rgba(var(--theme-color-rgb), .06) 0%,
        rgba(var(--theme-color-rgb), .015) 46%,
        transparent 72%
    );

    content: "";

    transform: translateX(-50%);

    pointer-events: none;
}


/* =========================================================
   HEADER
========================================================= */

.google-reviews-header {
    position: relative;
    z-index: 1;

    max-width: 760px;

    margin: 0 auto 48px;

    text-align: center;
}


.google-reviews-eyebrow {
    display: inline-flex;

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

    gap: 9px;

    margin-bottom: 7px;

    color: var(--theme-color);

    font-size: 12px;
    font-weight: 800;

    letter-spacing: 2.4px;

    text-transform: uppercase;
}


.google-reviews-eyebrow i {
    font-size: 14px;
}


.google-reviews-title {
    margin: 0;

    color: #fff;

    font-family: "Barlow Condensed", sans-serif;

    font-size: clamp(44px, 4.6vw, 64px);

    font-weight: 700;

    letter-spacing: -1px;

    line-height: 1;

    text-transform: uppercase;
}


.google-reviews-description {
    max-width: 640px;

    margin: 14px auto 0;

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

    font-size: 14px;

    line-height: 1.7;
}


/* =========================================================
   GOOGLE SCORE
========================================================= */

.google-score-box {
    display: inline-flex;

    align-items: center;

    gap: 14px;

    margin-top: 28px;

    padding: 11px 14px 11px 17px;

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

    border-radius: 14px;

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.065),
            rgba(255,255,255,.025)
        );

    backdrop-filter: blur(12px);
}


.google-score-number {
    color: #fff;

    font-size: 25px;

    font-weight: 800;

    line-height: 1;
}


.google-score-content {
    display: flex;

    flex-direction: column;

    align-items: flex-start;

    gap: 1px;
}


.google-score-stars {
    display: flex;

    gap: 2px;

    color: #fbbc04;

    font-size: 12px;

    line-height: 1;
}


.google-score-content span {
    margin-top: 3px;

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

    font-size: 10px;

    font-weight: 600;

    white-space: nowrap;
}


.google-score-logo {
    display: flex;

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

    width: 36px;
    height: 36px;

    margin-left: 3px;

    overflow: hidden;

    border-radius: 50%;

    background: #fff;
}


.google-score-logo img {
    display: block;

    width: 21px;
    height: 21px;

    object-fit: contain;
}


/* =========================================================
   SLIDER
========================================================= */

.google-reviews-slider {
    position: relative;
    z-index: 1;

    width: min(100%, 790px);

    margin: 0 auto;

    overflow: hidden;
}


.google-reviews-track {
    display: flex;

    align-items: stretch;

    width: 100%;

    transition:
        transform .55s cubic-bezier(.22,.61,.36,1);

    will-change: transform;
}


.google-review-slide {
    flex: 0 0 100%;

    width: 100%;

    padding: 0;
}


/* =========================================================
   REVIEW CARD
========================================================= */

.google-review-card {
    position: relative;

    min-height: 215px;

    padding: 33px 75px 36px;

    overflow: hidden;

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

    border-radius: 21px;

    background:
        linear-gradient(
            130deg,
            rgba(255,255,255,.065),
            rgba(255,255,255,.018)
        ),
        #111;

    box-shadow:
        0 22px 60px rgba(0,0,0,.18);
}


/* Üstte ince tema rengi */

.google-review-card::before {
    position: absolute;

    top: 0;
    left: 0;

    width: 100%;
    height: 2px;

    background: linear-gradient(
        90deg,
        transparent 0%,
        rgba(var(--theme-color-rgb), .25) 12%,
        var(--theme-color) 50%,
        rgba(var(--theme-color-rgb), .25) 88%,
        transparent 100%
    );

    content: "";

    opacity: .7;
}


/* Çok hafif ışık */

.google-review-card::after {
    position: absolute;

    top: -100px;
    left: 40px;

    width: 300px;
    height: 220px;

    border-radius: 50%;

    background:
        rgba(var(--theme-color-rgb), .035);

    filter: blur(55px);

    content: "";

    pointer-events: none;
}


/* =========================================================
   TOP
========================================================= */

.google-review-top {
    position: relative;
    z-index: 2;

    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 25px;

    margin-bottom: 23px;
}


.google-review-person {
    display: flex;

    align-items: center;

    gap: 14px;
}


/* Avatar */

.google-review-avatar {
    display: flex;

    flex: 0 0 46px;

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

    width: 46px;
    height: 46px;

    border: 1px solid
        rgba(var(--theme-color-rgb), .32);

    border-radius: 50%;

    background:
        linear-gradient(
            135deg,
            rgba(var(--theme-color-rgb), .22),
            rgba(var(--theme-color-rgb), .06)
        );

    color: var(--theme-color);

    font-size: 15px;
    font-weight: 800;
}


/* İsim */

.google-review-author {
    display: flex;

    flex-direction: column;

    align-items: flex-start;

    gap: 2px;
}


.google-review-author strong {
    color: #fff;

    font-size: 14px;

    font-weight: 700;

    line-height: 1.3;
}


.google-review-author span {
    color: rgba(255,255,255,.70);

    font-size: 11px;

    font-weight: 600;
}


/* Google Logo */

.google-review-logo {
    display: flex;

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

    width: 85px;
}


.google-review-logo img {
    display: block;

    width: 80px;
    height: auto;
}


/* =========================================================
   STARS
========================================================= */

.google-review-stars {
    position: relative;
    z-index: 2;

    display: flex;

    align-items: center;

    gap: 3px;

    margin-bottom: 17px;

    color: #fbbc04;

    font-size: 16px;

    line-height: 1;
}


/* =========================================================
   COMMENT
========================================================= */

.google-review-text {
    position: relative;
    z-index: 2;

    max-width: 640px;

    margin: 0;

    padding: 0;

    border: 0;

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

    font-size: 15px;

    font-style: normal;

    font-weight: 600;

    line-height: 1.7;
}


/* =========================================================
   ARROWS
========================================================= */

.google-review-arrow {
    position: absolute;

    z-index: 5;

    top: 50%;

    display: flex;

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

    width: 42px;
    height: 42px;

    padding: 0;

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

    border-radius: 50%;

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

    color: #fff;

    cursor: pointer;

    transform: translateY(-50%);

    transition:
        background .25s ease,
        border-color .25s ease,
        color .25s ease,
        transform .25s ease;
}


.google-review-prev {
    left: 21px;
}


.google-review-next {
    right: 21px;
}


.google-review-arrow:hover {
    border-color: var(--theme-color);

    background: var(--theme-color);

    color: #080808;
}


.google-review-prev:hover {
    transform:
        translateY(-50%)
        translateX(-2px);
}


.google-review-next:hover {
    transform:
        translateY(-50%)
        translateX(2px);
}


/* =========================================================
   LIGHT MODE
========================================================= */

[data-theme="light"] .google-reviews-section {
    background: var(--section-bg-alt);
}


[data-theme="light"] .google-reviews-title {
    color: var(--heading-color);
}


[data-theme="light"] .google-reviews-description {
    color: var(--muted-color);
}


[data-theme="light"] .google-score-box {
    border-color: rgba(17,17,17,.12);

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

    box-shadow:
        0 8px 24px rgba(0,0,0,.04);
}


[data-theme="light"] .google-score-number {
    color: #111;
}


[data-theme="light"] .google-score-content span {
    color: rgba(17,17,17,.65);
}

[data-theme="light"] .google-review-card {
    border-color: rgba(17,17,17,.12);

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.98),
            rgba(247,247,244,.98)
        );

    box-shadow: none;
}

[data-theme="light"] .google-review-author strong {
    color: #111;
}


[data-theme="light"] .google-review-author span {
    color: rgba(17,17,17,.55);
}


[data-theme="light"] .google-review-text {
    color: rgba(17,17,17,.85);
}


[data-theme="light"] .google-review-arrow {
    border-color: rgba(17,17,17,.14);

    background: rgba(17,17,17,.025);

    color: #111;
}


[data-theme="light"] .google-review-arrow:hover {
    border-color: var(--theme-color);

    background: var(--theme-color);

    color: #111;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767.98px) {

    .google-reviews-section {
        padding: 80px 0;
    }


    .google-reviews-header {
        margin-bottom: 38px;
    }


    .google-reviews-title {
        font-size:
            clamp(40px, 12vw, 54px);
    }


    .google-reviews-description {
        font-size: 13px;
    }


    .google-score-box {
        margin-top: 23px;
    }


    .google-review-card {
        min-height: 250px;

        padding:
            28px 58px
            30px;
    }


    .google-review-prev {
        left: 10px;
    }


    .google-review-next {
        right: 10px;
    }


    .google-review-arrow {
        width: 38px;
        height: 38px;
    }


    .google-review-logo {
        width: 67px;
    }


    .google-review-logo img {
        width: 65px;
    }


    .google-review-text {
        font-size: 14px;

        line-height: 1.7;
    }

}


@media (max-width: 480px) {

    .google-score-box {
        gap: 10px;

        padding:
            10px 12px;
    }


    .google-score-number {
        font-size: 22px;
    }


    .google-score-content span {
        font-size: 9px;
    }


    .google-review-card {
        padding:
            27px 53px
            28px;
    }


    .google-review-avatar {
        flex-basis: 40px;

        width: 40px;
        height: 40px;
    }


    .google-review-author strong {
        font-size: 13px;
    }


    .google-review-logo {
        width: 55px;
    }


    .google-review-logo img {
        width: 55px;
    }


    .google-review-stars {
        font-size: 14px;
    }

}

/* =========================
   CONTACT SECTION
========================= */

.contact-section {
	position: relative;
	overflow: hidden;
	padding: 125px 0;
	background: #080808;
}

.contact-section::before {
	position: absolute;
	top: -250px;
	left: 50%;
	width: 800px;
	height: 500px;
	border-radius: 50%;
	background: radial-gradient(
		ellipse,
		rgba(var(--theme-color-rgb), 0.075) 0%,
		rgba(var(--theme-color-rgb), 0.02) 45%,
		transparent 72%
	);
	content: "";
	pointer-events: none;
	transform: translateX(-50%);
}

/* Başlık */

.contact-header {
	position: relative;
	z-index: 1;
	max-width: 760px;
	margin-bottom: 58px;
}

.contact-eyebrow {
	color: var(--theme-color);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 3.5px;
	line-height: 1.4;
	text-transform: uppercase;
	margin-bottom:5px;
}

.contact-title {
	margin-top: 17px;

	color: #ffffff;

	font-family: "Barlow Condensed", sans-serif;
	font-size: clamp(52px, 5vw, 76px);
	font-weight: 800;
	letter-spacing: -1.4px;
	line-height: 0.95;
	text-transform: uppercase;
}

.contact-description {
	max-width: 650px;
	margin-top: 24px;

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

	font-size: 14px;
	line-height: 1.8;
}

/* Ana düzen */

.contact-layout {
	position: relative;
	z-index: 1;

	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
	gap: 26px;
	align-items: stretch;
}

/* Harita */

.contact-map {
	min-height: 500px;
	overflow: hidden;

	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 24px;

	background: #141414;
}

.contact-map iframe {
	display: block;

	width: 100%;
	height: 100%;
	min-height: 500px;

	border: 0;

	filter:
		grayscale(1)
		invert(0.9)
		contrast(0.88)
		brightness(0.82);
}

/* Kartlar */

.contact-cards {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

.contact-card {
	position: relative;
	min-width: 0;
	min-height: 242px;
	padding: 27px 25px;

	overflow: hidden;

	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 20px;

	background:
		linear-gradient(
			145deg,
			rgba(255, 255, 255, 0.035),
			rgba(255, 255, 255, 0.01)
		),
		#161616;

	transition:
		transform 0.3s ease,
		border-color 0.3s ease,
		box-shadow 0.3s ease;
}

.contact-card::after {
	position: absolute;
	right: -90px;
	bottom: -100px;

	width: 210px;
	height: 210px;

	border-radius: 50%;

	background: rgba(var(--theme-color-rgb), 0.055);

	content: "";
	filter: blur(28px);
	pointer-events: none;
}

.contact-card:hover {
	transform: translateY(-6px);

	border-color: rgba(var(--theme-color-rgb), 0.4);

	box-shadow:
		0 22px 50px rgba(0, 0, 0, 0.27);
}

/* İkon */

.contact-card-icon {
	position: relative;
	z-index: 1;

	display: grid;
	width: 48px;
	height: 48px;

	place-items: center;

	border: 1px solid rgba(var(--theme-color-rgb), 0.14);
	border-radius: 50%;

	background: rgba(var(--theme-color-rgb), 0.13);
	color: var(--theme-color);

	transition:
		transform 0.3s ease,
		background-color 0.3s ease,
		color 0.3s ease;
}

.contact-card:hover .contact-card-icon {
	transform: translateY(-3px);

	background: var(--theme-color);
	color: #080808;
}

.contact-card-icon i {
	font-size: 19px;
	line-height: 1;
}

/* Metin */

.contact-card-label {
	position: relative;
	z-index: 1;

	display: block;
	margin-top: 24px;

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

	font-size: 9px;
	font-weight: 700;
	letter-spacing: 2.4px;
	line-height: 1.4;
	text-transform: uppercase;
}

.contact-card-value {
	position: relative;
	z-index: 1;

	display: block;
	margin-top: 11px;

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

	font-size: 13px;
	font-style: normal;
	font-weight: 500;
	line-height: 1.7;

	transition: color 0.25s ease;
}

a.contact-card-value:hover {
	color: var(--theme-color);
}

/* =========================
   RESPONSIVE
========================= */

@media (max-width: 1050px) {
	.contact-layout {
		grid-template-columns: 1fr;
	}

	.contact-map,
	.contact-map iframe {
		min-height: 460px;
	}

	.contact-card {
		min-height: 210px;
	}
}

@media (max-width: 768px) {
	.contact-section {
		padding: 90px 0;
	}

	.contact-header {
		margin-bottom: 45px;
	}

	.contact-cards {
		grid-template-columns: 1fr;
	}

	.contact-card {
		min-height: auto;
	}

	.contact-map,
	.contact-map iframe {
		min-height: 420px;
	}
}

@media (max-width: 540px) {
	.contact-section {
		padding: 75px 0;
	}

	.contact-title {
		font-size: clamp(46px, 13vw, 61px);
	}

	.contact-description {
		font-size: 14px;
		line-height: 1.7;
	}

	.contact-layout {
		gap: 16px;
	}

	.contact-map,
	.contact-map iframe {
		min-height: 360px;
	}

	.contact-map {
		border-radius: 18px;
	}

	.contact-cards {
		gap: 12px;
	}

	.contact-card {
		padding: 24px 22px;
		border-radius: 16px;
	}
}

/*==================================
			FOOTER
==================================*/

.footer{
	position:relative;
	overflow:hidden;
	padding:70px 0 45px;
	background:#060606;
	border-top:1px solid rgba(255,255,255,.08);
}

/* hafif ışık */

.footer::before{
	position: absolute;
	top: -250px;
	left: 50%;
	width: 800px;
	height: 500px;
	border-radius: 50%;
	background: radial-gradient(
		ellipse,
		rgba(var(--theme-color-rgb), 0.075) 0%,
		rgba(var(--theme-color-rgb), 0.02) 45%,
		transparent 72%
	);
	content: "";
	pointer-events: none;
	transform: translateX(-50%);
	
}


/************************
SOSYAL
************************/

.footer-social{

	position:relative;

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

	gap:18px;

	margin-bottom:38px;

}

.footer-social a{

	width:52px;
	height:52px;

	display:flex;

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

	border-radius:50%;

	color:#ffffff;

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

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

	text-decoration:none;

	transition:.30s;

}

.footer-social a i{

	font-size:20px;

}

.footer-social a:hover{

	color:#090909;

	background:var(--theme-color);

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

	transform:translateY(-4px);

	box-shadow:0 10px 25px rgba(var(--theme-color-rgb),.20);

}

/************************
COPYRIGHT
************************/

.footer-copy{

	position:relative;

	text-align:center;

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

	font-size:15px;

	line-height:1.9;

}

.footer-copy strong{

	color:#ffffff;

	font-weight:700;

}

/************************
SPORTIX
************************/

.footer-powered{

	position:relative;

	max-width:720px;

	margin:45px auto 0;

	padding-top:35px;

	text-align:center;

}

.footer-powered img{

	display:block;

	height:44px;

	margin:0 auto 22px;

}

.footer-powered p{

	margin:0;

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

	font-size:14px;

	line-height:1.9;

}

.footer-powered strong{

	color:#ffffff;

	font-weight:600;

}

/************************
RESPONSIVE
************************/

@media(max-width:768px){

	.footer{

		padding:55px 0 35px;

	}

	.footer-social{

		gap:14px;

		margin-bottom:30px;

	}

	.footer-social a{

		width:46px;
		height:46px;

	}

	.footer-copy{

		font-size:14px;

	}

	.footer-powered{

		margin-top:35px;

	}

	.footer-powered img{

		height:36px;

	}

	.footer-powered p{

		font-size:13px;

		line-height:1.8;

	}

}

.footer-powered{

	position:relative;

	max-width:760px;

	margin:45px auto 0;

	padding-top:38px;

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

	text-align:center;

}

.footer-powered-logo{

	height:44px;

	margin-bottom:20px;

}

.footer-powered-title{

	display:flex;

	align-items:center;

	justify-content:center;

	gap:14px;

	margin-bottom:18px;

}

.footer-powered-title span{

	width:70px;
	height:1px;

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

}

.footer-powered-title small{

	color:var(--theme-color);

	font-size:11px;

	letter-spacing:3px;

	font-weight:700;

}

.footer-powered p{

	margin:0 auto;

	max-width:620px;

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

	font-size:14px;

	line-height:1.9;

}

.footer-powered strong{

	color:#ffffff;

	font-weight:600;

}

/* =========================
   FLOATING CONTACT BUTTONS
========================= */

.floating-contact {
    position: fixed;
    right: 26px;
    bottom: 26px;
    z-index: 9998;

    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 13px;
}

.floating-action {
    position: relative;

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

    color: #ffffff;
    text-decoration: none;

    filter: drop-shadow(0 13px 24px rgba(0, 0, 0, 0.3));
}

.floating-action-icon {
    position: relative;
    z-index: 2;

    display: grid;
    width: 58px;
    height: 58px;
    flex-shrink: 0;
    place-items: center;

    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 50%;

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.floating-action-icon i {
    font-size: 24px;
    line-height: 1;
}

.floating-action-label {
    position: absolute;
    right: 29px;
    z-index: 1;

    display: flex;
    align-items: center;

    min-width: max-content;
    height: 46px;
    padding: 0 43px 0 18px;

    border: 1px solid rgba(255, 255, 255, 0.13);
    border-radius: 999px 0 0 999px;

    background: rgba(18, 18, 18, 0.96);
    color: rgba(255, 255, 255, 0.92);

    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.2px;
    white-space: nowrap;

    opacity: 0;
    visibility: hidden;

    transform: translateX(14px) scaleX(0.88);
    transform-origin: right center;

    backdrop-filter: blur(14px);

    transition:
        opacity 0.25s ease,
        visibility 0.25s ease,
        transform 0.3s ease,
        border-color 0.25s ease;
}

/* Telefon */

.floating-action-call .floating-action-icon {
    background: var(--theme-color);
    color: #0a0a0a;

    box-shadow:
        0 12px 28px rgba(var(--theme-color-rgb), 0.22);
}

/* WhatsApp */

.floating-action-whatsapp .floating-action-icon {
    background: #25d366;
    color: #ffffff;

    box-shadow:
        0 12px 28px rgba(37, 211, 102, 0.23);
}

/* Hover */

.floating-action:hover .floating-action-label,
.floating-action:focus-visible .floating-action-label {
    opacity: 1;
    visibility: visible;

    transform: translateX(0) scaleX(1);
}

.floating-action:hover .floating-action-icon,
.floating-action:focus-visible .floating-action-icon {
    transform: translateY(-3px) scale(1.05);
}

.floating-action-call:hover .floating-action-label,
.floating-action-call:focus-visible .floating-action-label {
    border-color: rgba(var(--theme-color-rgb), 0.4);
}

.floating-action-whatsapp:hover .floating-action-label,
.floating-action-whatsapp:focus-visible .floating-action-label {
    border-color: rgba(37, 211, 102, 0.4);
}

/* WhatsApp pulse */

.floating-action-whatsapp .floating-action-icon::before,
.floating-action-whatsapp .floating-action-icon::after {
    position: absolute;
    inset: -1px;

    border: 1px solid rgba(37, 211, 102, 0.55);
    border-radius: inherit;

    content: "";
    pointer-events: none;

    animation: floating-whatsapp-pulse 2.4s infinite;
}

.floating-action-whatsapp .floating-action-icon::after {
    animation-delay: 1.2s;
}

@keyframes floating-whatsapp-pulse {
    0% {
        opacity: 0.75;
        transform: scale(1);
    }

    70%,
    100% {
        opacity: 0;
        transform: scale(1.55);
    }
}

/* Mobil */

@media (max-width: 768px) {
    .floating-contact {
        right: 16px;
        bottom: 16px;
        gap: 11px;
    }

    .floating-action-icon {
        width: 52px;
        height: 52px;
    }

    .floating-action-icon i {
        font-size: 22px;
    }

    .floating-action-label {
        display: none;
    }
}

/* Çok küçük ekran */

@media (max-width: 380px) {
    .floating-contact {
        right: 12px;
        bottom: 12px;
    }

    .floating-action-icon {
        width: 48px;
        height: 48px;
    }

    .floating-action-icon i {
        font-size: 20px;
    }
}

/* Hareket azaltma tercihi */

@media (prefers-reduced-motion: reduce) {
    .floating-action,
    .floating-action-icon,
    .floating-action-label,
    .floating-action-icon::before,
    .floating-action-icon::after {
        animation: none !important;
        transition: none !important;
    }
}

.footer-apps {
    position: relative;

    margin-bottom: 42px;

    text-align: center;
}

.footer-apps-title {
    margin-bottom: 18px;

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

    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2.5px;

    text-transform: uppercase;
}

.footer-app-buttons {
    display: flex;
    justify-content: center;
    align-items: center;

    gap: 12px;
}

.app-store-button {
    display: flex;
    align-items: center;

    min-width: 165px;
    height: 56px;

    padding: 0 18px;

    border: 1px solid rgba(255,255,255,.14);
    border-radius: 12px;

    background: #111;

    color: #fff;
    text-decoration: none;

    transition: .25s ease;
}

.app-store-button:hover {
    transform: translateY(-3px);

    border-color: rgba(var(--theme-color-rgb), .45);

    background: #171717;
}

.app-store-button > i {
    margin-right: 12px;

    font-size: 26px;
}

.app-store-button span {
    display: flex;
    flex-direction: column;
    align-items: flex-start;

    line-height: 1;
}

.app-store-button small {
    margin-bottom: 4px;

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

    font-size: 9px;
}

.app-store-button strong {
    color: #fff;

    font-size: 15px;
    font-weight: 700;
}

@media (max-width: 540px) {

    .footer-app-buttons {
        flex-direction: column;
    }

    .app-store-button {
        width: 210px;
    }

}

.section-divider {
    position: relative;
    z-index: 2;

    width: min(calc(100% - 80px), 1220px);
    height: 1px;

    margin: 0 auto;

    background: linear-gradient(
        90deg,
        transparent 0%,
        rgba(255,255,255,.08) 20%,
        rgba(255,255,255,.14) 50%,
        rgba(255,255,255,.08) 80%,
        transparent 100%
    );
}

.section-divider span {
    position: absolute;
    top: 50%;
    left: 50%;

    width: 64px;
    height: 3px;

    border-radius: 999px;

    background: var(--theme-color);

    box-shadow:
        0 0 20px rgba(var(--theme-color-rgb), .32);

    transform: translate(-50%, -50%);
}

/* =========================================================
   THEME SYSTEM
   Dark mode mevcut tasarımın varsayılan halidir.
   Light mode, <html data-theme="light"> ile aktif olur.
========================================================= */

/* Tema geçişini yumuşat */
body,
.site-header,
.about-section,
.programs-section,
.benefits-section,
.coaches-section,
.gallery-section,
.testimonials-section,
.contact-section,
.program-card,
.benefit-card,
.testimonials-slider,
.contact-card,
.about-experience-card,
.main-navigation,
.menu-toggle,
.section-divider {
    transition:
        background-color .3s ease,
        background .3s ease,
        color .3s ease,
        border-color .3s ease,
        box-shadow .3s ease;
}

/* ---------------------------------------------------------
   LIGHT MODE
--------------------------------------------------------- */

[data-theme="light"] body {
    background: var(--body-bg);
    color: var(--text-color);
}

/* Hero ve footer bilinçli olarak koyu bırakılır.
   Böylece fotoğraflı hero ve Sportix footer görünümü korunur. */

/* HEADER - Hero üzerindeyken koyu kalır */
[data-theme="light"] .site-header:not(.is-scrolled) {
    color: #ffffff;
}

/* Scroll sonrası light header */
[data-theme="light"] .site-header.is-scrolled {
    background: rgba(255, 255, 255, 0.96);
    border-bottom-color: rgba(17, 17, 17, 0.10);
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.08);
}

[data-theme="light"] .site-header.is-scrolled .brand-name {
    color: var(--text-color);
}

[data-theme="light"] .site-header.is-scrolled .brand-description {
    color: var(--muted-color);
}

[data-theme="light"] .site-header.is-scrolled .nav-link {
    color: rgba(17, 17, 17, 0.78);
}

[data-theme="light"] .site-header.is-scrolled .nav-link:hover,
[data-theme="light"] .site-header.is-scrolled .nav-link.active {
    color: #111111;
}

[data-theme="light"] .site-header.is-scrolled .menu-toggle {
    border-color: var(--border-color);
    background: rgba(17, 17, 17, 0.04);
    color: #111111;
}

/* Mobil menü */
@media (max-width: 900px) {
    [data-theme="light"] .main-navigation {
        border-color: var(--border-color);
        background: rgba(255, 255, 255, 0.98);
        box-shadow: 0 25px 50px rgba(0, 0, 0, 0.12);
    }

    [data-theme="light"] .main-navigation .nav-link {
        color: rgba(17, 17, 17, 0.80);
        border-bottom-color: rgba(17, 17, 17, 0.08);
    }

    [data-theme="light"] .main-navigation .nav-link:hover,
    [data-theme="light"] .main-navigation .nav-link.active {
        color: #111111;
    }
}

/* SECTION BACKGROUNDS */
[data-theme="light"] .demo-section,
[data-theme="light"] .about-section,
[data-theme="light"] .coaches-section,
[data-theme="light"] .gallery-section,
[data-theme="light"] .contact-section {
    background: var(--section-bg);
}

[data-theme="light"] .programs-section,
[data-theme="light"] .testimonials-section,
[data-theme="light"] .benefits-section {
    background: var(--section-bg-alt);
}

/* SECTION HEADINGS */
[data-theme="light"] .section-title,
[data-theme="light"] .programs-title,
[data-theme="light"] .benefits-title,
[data-theme="light"] .coaches-title,
[data-theme="light"] .gallery-title,
[data-theme="light"] .testimonials-title,
[data-theme="light"] .contact-title,
[data-theme="light"] .demo-section h2 {
    color: var(--heading-color);
}

/* SECTION DESCRIPTIONS */
[data-theme="light"] .about-description p,
[data-theme="light"] .programs-description,
[data-theme="light"] .benefits-description,
[data-theme="light"] .coaches-description,
[data-theme="light"] .gallery-description,
[data-theme="light"] .testimonials-description,
[data-theme="light"] .contact-description {
    color: var(--muted-color);
}

/* ABOUT */
[data-theme="light"] .about-image-wrapper {
    background: #ececec;
}

[data-theme="light"] .about-experience-card {
    border-color: rgba(17, 17, 17, 0.10);
    background: rgba(255, 255, 255, 0.92);
}

[data-theme="light"] .about-experience-card span {
    color: var(--muted-color);
}

[data-theme="light"] .about-feature-content h3 {
    color: var(--heading-color);
}

[data-theme="light"] .about-feature-content p {
    color: var(--muted-color);
}

/* PROGRAM CARDS */
[data-theme="light"] .program-card {
    border-color: var(--border-color);
    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.90),
            rgba(245, 245, 242, 0.90)
        ),
        var(--card-bg);
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.04);
}

[data-theme="light"] .program-card:hover {
    border-color: rgba(var(--theme-color-rgb), 0.65);
    box-shadow: 0 22px 55px rgba(0, 0, 0, 0.09);
}

[data-theme="light"] .program-name {
    color: var(--heading-color);
}

[data-theme="light"] .program-details li {
    color: rgba(17, 17, 17, 0.70);
}

[data-theme="light"] .program-details small {
    color: rgba(17, 17, 17, 0.42);
}

[data-theme="light"] .program-card-footer {
    border-top-color: rgba(17, 17, 17, 0.09);
}

[data-theme="light"] .program-capacity {
    color: rgba(17, 17, 17, 0.58);
}

[data-theme="light"] .program-capacity.is-full {
    color: rgba(17, 17, 17, 0.48);
}

[data-theme="light"] .program-button {
    border-color: rgba(17, 17, 17, 0.14);
    background: rgba(17, 17, 17, 0.035);
    color: #111111;
}

/* BENEFITS */
[data-theme="light"] .benefit-card {
    border-color: var(--border-color);
    background:
        linear-gradient(
            140deg,
            rgba(255, 255, 255, 0.96),
            rgba(246, 246, 243, 0.92)
        ),
        var(--card-bg);
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.035);
}

[data-theme="light"] .benefit-card:hover {
    border-color: rgba(var(--theme-color-rgb), 0.55);
    box-shadow: 0 20px 45px rgba(0, 0, 0, 0.08);
}

[data-theme="light"] .benefit-card h3 {
    color: var(--heading-color);
}

[data-theme="light"] .benefit-card p {
    color: var(--muted-color);
}

/* COACHES
   Kartların fotoğraf-overlay tasarımı koyu kalır.
   Sadece bölüm arka planı ve bölüm metinleri light olur. */
[data-theme="light"] .coach-card {
    border-color: rgba(17, 17, 17, 0.12);
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.06);
}

/* GALLERY */
[data-theme="light"] .gallery-item {
    border-color: rgba(17, 17, 17, 0.12);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.045);
}

/* TESTIMONIALS */
[data-theme="light"] .testimonials-slider {
    border-color: var(--border-color);
    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.96),
            rgba(246, 246, 243, 0.92)
        ),
        var(--card-bg);
    box-shadow: 0 22px 60px rgba(0, 0, 0, 0.07);
}

[data-theme="light"] .testimonial-quote {
    color: rgba(17, 17, 17, 0.88);
}

[data-theme="light"] .testimonial-author-info strong {
    color: var(--heading-color);
}

[data-theme="light"] .testimonial-author-info span {
    color: var(--muted-color);
}

[data-theme="light"] .testimonials-footer {
    border-top-color: rgba(17, 17, 17, 0.10);
}

[data-theme="light"] .testimonial-pagination-button {
    background: rgba(17, 17, 17, 0.16);
}

[data-theme="light"] .testimonial-navigation-button {
    border-color: rgba(17, 17, 17, 0.13);
    background: rgba(17, 17, 17, 0.04);
    color: #111111;
}

/* CONTACT */
[data-theme="light"] .contact-map {
    border-color: var(--border-color);
    background: #eeeeeb;
}

[data-theme="light"] .contact-map iframe {
    filter: grayscale(1) contrast(0.94) brightness(1.03);
}

[data-theme="light"] .contact-card {
    border-color: var(--border-color);
    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.96),
            rgba(246, 246, 243, 0.92)
        ),
        var(--card-bg);
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.035);
}

[data-theme="light"] .contact-card:hover {
    border-color: rgba(var(--theme-color-rgb), 0.55);
    box-shadow: 0 20px 45px rgba(0, 0, 0, 0.08);
}

[data-theme="light"] .contact-card-label {
    color: rgba(17, 17, 17, 0.45);
}

[data-theme="light"] .contact-card-value {
    color: rgba(17, 17, 17, 0.88);
}

/* SECTION DIVIDER */
[data-theme="light"] .section-divider {
    background: linear-gradient(
        90deg,
        transparent 0%,
        rgba(17,17,17,.06) 20%,
        rgba(17,17,17,.14) 50%,
        rgba(17,17,17,.06) 80%,
        transparent 100%
    );
}

/* FOOTER bilinçli olarak daima dark */
[data-theme="light"] .footer {
    background: #060606;
    color: #ffffff;
}

/* ---------------------------------------------------------
   THEME TOGGLE BUTTON
--------------------------------------------------------- */

.theme-toggle {
    display: grid;
    width: 42px;
    height: 42px;
    flex-shrink: 0;
    place-items: center;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.05);
    color: #ffffff;
    cursor: pointer;
    transition:
        transform .25s ease,
        background-color .25s ease,
        border-color .25s ease,
        color .25s ease;
}

.theme-toggle:hover {
    transform: translateY(-2px);
    border-color: var(--theme-color);
    background: var(--theme-color);
    color: #111111;
}

.theme-toggle i {
    font-size: 16px;
    line-height: 1;
}

[data-theme="light"] .site-header.is-scrolled .theme-toggle {
    border-color: rgba(17, 17, 17, 0.13);
    background: rgba(17, 17, 17, 0.04);
    color: #111111;
}

[data-theme="light"] .site-header.is-scrolled .theme-toggle:hover {
    border-color: var(--theme-color);
    background: var(--theme-color);
    color: #111111;
}

/* =========================
   THEME SELECTOR
========================= */

.theme-selector {
    position: relative;
    flex: 0 0 auto;
}


/* Ana yuvarlak buton */

.theme-selector-button {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 42px;
    height: 42px;

    padding: 0;

    border: 1px solid rgba(255,255,255,.15);
    border-radius: 50%;

    background: rgba(255,255,255,.05);
    color: #fff;

    cursor: pointer;

    transition:
        background .25s ease,
        border-color .25s ease,
        color .25s ease,
        transform .25s ease;
}

.theme-selector-button i {
    font-size: 16px;
}

.theme-selector-button:hover,
.theme-selector.is-open .theme-selector-button {
    border-color: var(--theme-color);
    background: var(--theme-color);
    color: #111;
}


/* =========================
   DROPDOWN
========================= */

.theme-dropdown {
    position: absolute;

    top: calc(100% + 12px);
    right: 0;

    z-index: 10000;

    display: flex;
    flex-direction: column;

    width: 175px;

    padding: 8px;

    border: 1px solid rgba(255,255,255,.12);
    border-radius: 14px;

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

    box-shadow:
        0 20px 50px rgba(0,0,0,.35);

    backdrop-filter: blur(15px);

    /* Kapalı */
    opacity: 0;
    visibility: hidden;

    transform: translateY(-8px);

    pointer-events: none;

    transition:
        opacity .2s ease,
        visibility .2s ease,
        transform .2s ease;
}


/* Açık */

.theme-selector.is-open .theme-dropdown {
    opacity: 1;
    visibility: visible;

    transform: translateY(0);

    pointer-events: auto;
}


/* =========================
   OPTIONS
========================= */

.theme-mode-item {
    display: flex;
    align-items: center;

    width: 100%;
    min-height: 42px;

    gap: 11px;

    padding: 9px 12px;

    border: 0;
    border-radius: 9px;

    background: transparent;

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

    font-family: inherit;
    font-size: 12px;
    font-weight: 600;

    text-align: left;

    cursor: pointer;

    transition:
        background .2s ease,
        color .2s ease;
}

.theme-mode-item i {
    display: flex;

    width: 18px;

    justify-content: center;

    color: var(--theme-color);

    font-size: 14px;
}

.theme-mode-item:hover {
    background: rgba(255,255,255,.07);
    color: #fff;
}


/* Seçili tema */

.theme-mode-item.active {
    background: rgba(var(--theme-color-rgb), .13);
    color: var(--theme-color);
}


/* =========================
   LIGHT MODE
========================= */

[data-theme="light"] .theme-dropdown {
    border-color: rgba(17,17,17,.10);

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

    box-shadow:
        0 20px 50px rgba(0,0,0,.12);
}

[data-theme="light"] .theme-mode-item {
    color: rgba(17,17,17,.65);
}

[data-theme="light"] .theme-mode-item:hover {
    background: rgba(17,17,17,.05);
    color: #111;
}

[data-theme="light"] .theme-mode-item.active {
    background: rgba(var(--theme-color-rgb), .18);
    color: #111;
}


/* Header scroll olduğunda */

[data-theme="light"]
.site-header.is-scrolled
.theme-selector-button {
    border-color: rgba(17,17,17,.12);
    background: rgba(17,17,17,.04);
    color: #111;
}

[data-theme="light"]
.site-header.is-scrolled
.theme-selector-button:hover,

[data-theme="light"]
.site-header.is-scrolled
.theme-selector.is-open
.theme-selector-button {
    border-color: var(--theme-color);
    background: var(--theme-color);
    color: #111;
}

/* =========================
   SPORT / BRANCH CARDS
========================= */

.sport-card {
    min-height: auto;
    padding: 0;

    overflow: hidden;
}

/* Görsel alanı */

.sport-card-image {
    position: relative;

    aspect-ratio: 16 / 10;

    overflow: hidden;

    background: #111;
}

.sport-card-image::after {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            180deg,
            transparent 45%,
            rgba(0,0,0,.45) 100%
        );

    content: "";
    pointer-events: none;
}

.sport-card-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform .6s ease;
}

.sport-card:hover .sport-card-image img {
    transform: scale(1.04);
}


/* İçerik */

.sport-card-content {
    display: flex;
    flex-direction: column;

    padding: 28px 30px 26px;
}

.sport-card-category {
    color: var(--theme-color);

    font-size: 9px;
    font-weight: 800;

    letter-spacing: 2.5px;

    text-transform: uppercase;
}

.sport-card .program-name {
    margin-top: 8px;
}


/* SEO açıklaması */

.sport-card-description {
    margin-top: 17px;

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

    font-size: 13px;
    line-height: 1.8;
}


/* Alt bölüm */

.sport-card-footer {
    margin-top: 25px;
    padding-top: 19px;

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

.sport-card-link {
    display: inline-flex;
    align-items: center;

    gap: 9px;

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

    font-size: 11px;
    font-weight: 700;

    transition:
        color .25s ease,
        gap .25s ease;
}

.sport-card:hover .sport-card-link {
    gap: 13px;
    color: var(--theme-color);
}


/* =========================
   LIGHT MODE
========================= */

[data-theme="light"] .sport-card-image {
    background: #eeeeeb;
}

[data-theme="light"] .sport-card-description {
    color: var(--muted-color);
}

[data-theme="light"] .sport-card-footer {
    border-top-color: rgba(17,17,17,.08);
}

[data-theme="light"] .sport-card-link {
    color: rgba(17,17,17,.72);
}

[data-theme="light"] .sport-card:hover .sport-card-link {
    color: #111;
}


/* =========================
   RESPONSIVE
========================= */

@media (max-width: 768px) {

    .sport-card-content {
        padding: 24px;
    }

}

@media (max-width: 480px) {

    .sport-card-image {
        aspect-ratio: 16 / 9;
    }

}

/* LIGHT MODE */
[data-theme="light"] .section-odd {
    background-color: #FFFFFF;
}

[data-theme="light"] .section-even {
    background-color: #F0F4F8;
}


/* DARK MODE */
[data-theme="dark"] .section-odd {
    background-color: #080808;
}

[data-theme="dark"] .section-even {
    background-color: #101010;
}

/* =========================
   DIGITAL PARENT EXPERIENCE
========================= */

.digital-parent-section {
	position: relative;
	padding: 95px 0;
	overflow: hidden;
}

.digital-parent-header {
	max-width: 720px;
	margin: 0 auto 55px;
	text-align: center;
}

.digital-parent-header .section-eyebrow {
	justify-content: center;
}

.digital-parent-description {
	max-width: 620px;
	margin: 14px auto 0;
	color: var(--muted-color);
	font-size: 15px;
	line-height: 1.7;
}

.digital-parent-description strong {
	color: var(--text-color);
	font-weight: 700;
}


/* FEATURES */

.digital-parent-section .about-features {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 36px 70px;
	max-width: 1050px;
	margin: 0 auto;
}

.digital-parent-section .about-feature {
	display: flex;
	align-items: flex-start;
	gap: 18px;
}

.digital-parent-section .about-feature-icon {
	display: flex;
	flex: 0 0 48px;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border: 1px solid rgba(var(--theme-color-rgb), .28);
	border-radius: 50%;
	background: rgba(var(--theme-color-rgb), .08);
	color: var(--theme-color);
	font-size: 19px;
}

.digital-parent-section .about-feature-content {
	padding-top: 2px;
}

.digital-parent-section .about-feature-content h3 {
	margin: 0 0 7px;
	color: var(--heading-color);
	font-size: 17px;
	font-weight: 800;
	text-transform: uppercase;
}

.digital-parent-section .about-feature-content p {
	margin: 0;
	color: var(--muted-color);
	font-size: 13px;
	line-height: 1.7;
}


/* MOBILE */

@media (max-width: 767.98px) {

	.digital-parent-section {
		padding: 70px 0;
	}

	.digital-parent-header {
		margin-bottom: 40px;
	}

	.digital-parent-section .about-features {
		grid-template-columns: 1fr;
		gap: 28px;
	}

	.digital-parent-section .about-feature-icon {
		flex-basis: 44px;
		width: 44px;
		height: 44px;
		font-size: 17px;
	}

	.digital-parent-section .about-feature-content h3 {
		font-size: 15px;
	}

}

/* =========================================================
   SPORTS / BRANCHES - COMPACT
========================================================= */

.sports-section {
	position: relative;
	padding: 85px 0 95px;
	overflow: hidden;
}


/* =========================================================
   HEADER
========================================================= */

.sports-header {
	max-width: 720px;
	margin: 0 auto 58px;
	text-align: center;
}

.sports-header .section-eyebrow {
	justify-content: center;
}

.sports-description {
	max-width: 620px;
	margin: 14px auto 0;
	color: var(--muted-color);
	font-size: 14px;
	line-height: 1.75;
}


/* =========================================================
   LIST
========================================================= */

.sports-list {
	display: flex;
	flex-direction: column;
	gap: 0;

	max-width: 900px;
	margin: 0 auto;
}


/* =========================================================
   ITEM
========================================================= */

.sports-item {
	position: relative;
	display: grid;
	grid-template-columns: 320px minmax(0, 1fr);
	align-items: center;
	gap: 48px;
	padding:10px 0px;
}


/* Her ikinci branş ters */

.sports-item-reverse {
	grid-template-columns: minmax(0, 1fr) 320px;
}

.sports-item-reverse .sports-image-column {
	order: 2;
}

.sports-item-reverse .sports-content {
	order: 1;
}


/* =========================================================
   IMAGE
========================================================= */

.sports-image-column {
	position: relative;
	min-width: 0;
}

.sports-image-wrapper {
	position: relative;

	width: 100%;
	height: 230px;

	overflow: hidden;

	border: 1px solid var(--border-color);
	border-radius: 18px;

	background: var(--card-bg);

	box-shadow: 0 16px 38px rgba(0, 0, 0, .12);
}

.sports-image {
	display: block;

	width: 100%;
	height: 100%;

	object-fit: cover;

	transition: transform .5s ease;
}

.sports-item:hover .sports-image {
	transform: scale(1.025);
}


/* Hafif gradient */

.sports-image-overlay {
	position: absolute;
	inset: 0;

	background:
		linear-gradient(
			180deg,
			transparent 65%,
			rgba(0, 0, 0, .30) 100%
		);

	pointer-events: none;
}


/* Branş sıra numarası */

.sports-image-number {
	position: absolute;

	right: 17px;
	bottom: 14px;

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

	font-size: 10px;
	font-weight: 800;

	letter-spacing: 2px;
}


/* =========================================================
   CONTENT
========================================================= */

.sports-content {
	position: relative;
	padding: 10px 0;
}


/* SPOR EĞİTİMİ */

.sports-content-eyebrow {
	display: flex;
	align-items: center;

	gap: 10px;

	margin-bottom: 11px;

	color: var(--theme-color);

	font-size: 10px;
	font-weight: 800;

	letter-spacing: 2.5px;
	text-transform: uppercase;
}

.sports-content-eyebrow::before {
	display: block;

	width: 24px;
	height: 2px;

	background: var(--theme-color);

	content: "";
}


/* =========================================================
   BRANŞ BAŞLIĞI
========================================================= */

.sports-name {
	margin: 0;

	color: var(--heading-color);

	font-size: 30px;
	font-weight: 900;

	line-height: 1.08;
	letter-spacing: -.4px;

	text-transform: uppercase;
}


/* Basketbol Eğitimi */

.sports-small-title {
	margin-top: 18px;

	color: var(--text-color);

	font-size: 14px;
	font-weight: 800;
}


/* Açıklama */

.sports-text {
	max-width: 470px;

	margin-top: 9px;

	color: var(--muted-color);

	font-size: 14px;
	line-height: 1.75;
}

.sports-text p {
	margin: 0 0 10px;
}

.sports-text p:last-child {
	margin-bottom: 0;
}


/* =========================================================
   LIGHT MODE
========================================================= */

[data-theme="light"] .sports-image-wrapper {
	box-shadow:
		0 18px 45px rgba(20, 20, 20, .08);
}


/* =========================================================
   DARK MODE
========================================================= */

[data-theme="dark"] .sports-image-wrapper {
	box-shadow:
		0 20px 50px rgba(0, 0, 0, .28);
}


/* =========================================================
   LARGE TABLET / SMALL LAPTOP
========================================================= */

@media (max-width: 1199.98px) {

	.sports-section {
		padding: 75px 0 85px;
	}

	.sports-list {
		max-width: 900px;
		gap: 52px;
	}

	.sports-item {
		grid-template-columns: 330px minmax(0, 1fr);
		gap: 45px;
	}

	.sports-item-reverse {
		grid-template-columns: minmax(0, 1fr) 330px;
	}

	.sports-image-wrapper {
		height: 245px;
	}

	.sports-name {
		font-size: 31px;
	}

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991.98px) {

	.sports-header {
		margin-bottom: 48px;
	}

	.sports-list {
		max-width: 760px;
		gap: 48px;
	}

	.sports-item {
		grid-template-columns: 290px minmax(0, 1fr);
		gap: 35px;
	}

	.sports-item-reverse {
		grid-template-columns: minmax(0, 1fr) 290px;
	}

	.sports-image-wrapper {
		height: 220px;
	}

	.sports-name {
		font-size: 28px;
	}

	.sports-small-title {
		margin-top: 14px;
	}

	.sports-text {
		font-size: 13px;
	}

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767.98px) {

	.sports-section {
		padding: 65px 0 75px;
	}

	.sports-header {
		margin-bottom: 38px;
	}

	.sports-description {
		font-size: 14px;
		line-height: 1.7;
	}

	.sports-list {
		gap: 35px;
	}


	/* Mobilde kart düzeni */

	.sports-item,
	.sports-item.sports-item-reverse {
		display: flex;
		flex-direction: column;

		align-items: stretch;

		gap: 0;
	}


	.sports-item .sports-image-column,
	.sports-item-reverse .sports-image-column {
		order: 1;
	}


	.sports-item .sports-content,
	.sports-item-reverse .sports-content {
		order: 2;
	}


	/* IMAGE */

	.sports-image-wrapper {
		height: 220px;

		border-radius: 18px 18px 0 0;

		border-bottom: 0;
	}


	/* CONTENT */

	.sports-content {
		padding: 23px 21px 25px;

		border: 1px solid var(--border-color);
		border-top: 0;

		border-radius: 0 0 18px 18px;

		background: var(--card-bg);
	}


	.sports-content-eyebrow {
		margin-bottom: 9px;

		font-size: 9px;
		letter-spacing: 2px;
	}


	.sports-name {
		font-size: 27px;
	}


	.sports-small-title {
		margin-top: 14px;

		font-size: 14px;
	}


	.sports-text {
		margin-top: 8px;

		font-size: 13px;
		line-height: 1.7;
	}

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 479.98px) {

	.sports-section {
		padding: 55px 0 65px;
	}

	.sports-image-wrapper {
		height: 195px;
	}

	.sports-content {
		padding: 21px 18px 23px;
	}

	.sports-name {
		font-size: 25px;
	}

}

/* =========================================================
   FAQ / SIKÇA SORULAN SORULAR
========================================================= */

.faq-section {
	position: relative;
	padding: 95px 0;
	overflow: hidden;
}

.faq-header {
	max-width: 720px;
	margin: 0 auto 48px;
	text-align: center;
}

.faq-header .section-eyebrow {
	justify-content: center;
}

.faq-description {
	max-width: 620px;
	margin: 14px auto 0;

	color: var(--muted-color);

	font-size: 14px;
	line-height: 1.75;
}


/* =========================================================
   LIST
========================================================= */

.faq-list {
	max-width: 880px;
	margin: 0 auto;

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


/* =========================================================
   ITEM
========================================================= */

.faq-item {
	position: relative;

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


/* =========================================================
   QUESTION
========================================================= */

.faq-question {
	display: flex;
	align-items: center;
	justify-content: space-between;

	width: 100%;

	gap: 30px;

	padding: 25px 4px;

	border: 0;
	outline: 0;

	background: transparent;

	color: var(--heading-color);

	font-family: inherit;
	font-size: 17px;
	font-weight: 800;
	line-height: 1.4;

	text-align: left;

	cursor: pointer;

	transition:
		color .25s ease,
		padding-left .25s ease;
}

.faq-question:hover {
	color: var(--theme-color);
	padding-left: 8px;
}


/* =========================================================
   ICON
========================================================= */

.faq-icon {
	display: flex;
	flex: 0 0 38px;
	align-items: center;
	justify-content: center;

	width: 38px;
	height: 38px;

	border: 1px solid var(--border-color);
	border-radius: 50%;

	color: var(--heading-color);

	font-size: 16px;

	transition:
		background .25s ease,
		border-color .25s ease,
		color .25s ease,
		transform .35s ease;
}

.faq-item.is-active .faq-icon {
	border-color: var(--theme-color);
	background: var(--theme-color);
	color: #080808;

	transform: rotate(45deg);
}


/* =========================================================
   ACTIVE QUESTION
========================================================= */

.faq-item.is-active .faq-question {
	color: var(--theme-color);
}


/* =========================================================
   ANSWER
========================================================= */

.faq-answer {
	display: grid;
	grid-template-rows: 0fr;

	overflow: hidden;

	transition: grid-template-rows .35s ease;
}

.faq-item.is-active .faq-answer {
	grid-template-rows: 1fr;
}

.faq-answer-inner {
	min-height: 0;

	padding: 0 70px 0 4px;

	color: var(--muted-color);

	font-size: 14px;
	line-height: 1.8;

	opacity: 0;

	transition:
		opacity .25s ease,
		padding-bottom .35s ease;
}

.faq-item.is-active .faq-answer-inner {
	padding-bottom: 26px;
	opacity: 1;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767.98px) {

	.faq-section {
		padding: 65px 0;
	}

	.faq-header {
		margin-bottom: 34px;
	}

	.faq-description {
		font-size: 13px;
		line-height: 1.7;
	}

	.faq-question {
		gap: 18px;

		padding: 19px 0;

		font-size: 15px;
		line-height: 1.45;
	}

	.faq-question:hover {
		padding-left: 0;
	}

	.faq-icon {
		flex-basis: 34px;

		width: 34px;
		height: 34px;

		font-size: 14px;
	}

	.faq-answer-inner {
		padding-right: 48px;

		font-size: 13px;
		line-height: 1.7;
	}

	.faq-item.is-active .faq-answer-inner {
		padding-bottom: 20px;
	}

}