/**
 * ASEKA Mühendislik — Site geneli kurumsal tipografi ve renk sistemi
 * Anasayfa (aseka-home.css) ile uyumlu; tüm iç sayfalarda geçerli.
 * Renkler: #1F3F77 (lacivert), #C32026 (kırmızı vurgu)
 */

@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&family=Roboto:wght@400;500;700&display=swap");

:root {
    --aseka-navy: #1F3F77;
    --aseka-navy-dark: #162f5c;
    --aseka-red: #C32026;
    --aseka-red-hover: #a81b20;
    --aseka-gray-bg: #f4f6f9;
    --aseka-gray-border: #e2e8f0;
    --aseka-text: #374151;
    --aseka-text-muted: #4b5563;
    --aseka-heading: #000000;
    --aseka-heading-black: #000000;
    --aseka-heading-on-dark: #ffffff;
    --aseka-text-on-dark: rgba(255, 255, 255, 0.88);
    --aseka-heading-font: "Montserrat", sans-serif;
    --aseka-body-font: "Roboto", sans-serif;
    /* Section başlık sistemi */
    --aseka-label-size: 13px;
    --aseka-label-weight: 700;
    --aseka-label-lh: 1.35;
    --aseka-label-spacing: 0.06em;
    --aseka-label-pb: 8px;
    --aseka-label-mb: 12px;
    --aseka-label-border: 2px;
    --aseka-title-size: 3.438rem;
    --aseka-title-weight: 700;
    --aseka-title-lh: 1.2;
    --aseka-title-spacing: -0.02em;
    --aseka-title-mb: 0;
    --aseka-page-h1-size: 2.75rem;
    --aseka-page-h1-lh: 1.15;
    --aseka-content-h1-size: 2.25rem;
    --aseka-content-h2-size: 1.875rem;
    --aseka-content-h3-size: 1.5rem;
    --aseka-content-h4-size: 1.25rem;
    --aseka-lead-size: 1rem;
    --aseka-card-title-size: 1.125rem;
    --aseka-card-desc-size: 0.9375rem;
    /* Crafto tema değişkenleri */
    --primary-font: var(--aseka-heading-font);
    --alt-font: var(--aseka-heading-font);
    --base-color: var(--aseka-red);
    --dark-gray: var(--aseka-navy);
    --medium-gray: var(--aseka-text-muted);
}

/* ----- Temel tipografi ----- */
body {
    font-family: var(--aseka-body-font);
    font-size: 1rem;
    line-height: 1.7;
    color: var(--aseka-text);
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
.alt-font,
.btn {
    font-family: var(--aseka-heading-font);
    color: var(--aseka-heading);
}

p,
.last-paragraph-no-margin p,
article p,
ul li,
ol li,
.accordion .accordion-body,
.accordion .accordion-body p {
    font-family: var(--aseka-body-font);
    font-size: 1rem;
    line-height: 1.7;
    color: var(--aseka-text-muted);
}

/* İçerik başlık ölçeği (Crafto 70px yerine kurumsal ölçek) */
body h1 {
    font-size: var(--aseka-content-h1-size);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

body h2 {
    font-size: var(--aseka-content-h2-size);
    font-weight: 700;
    line-height: 1.25;
}

body h3 {
    font-size: var(--aseka-content-h3-size);
    font-weight: 700;
    line-height: 1.3;
}

body h4 {
    font-size: var(--aseka-content-h4-size);
    font-weight: 700;
    line-height: 1.35;
}

body h5,
body h6 {
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 1.4;
}

/* Section vitrin başlıkları (anasayfa ölçeği) */
.aseka-section-title,
h2.aseka-section-title {
    font-size: var(--aseka-title-size);
    line-height: var(--aseka-title-lh);
    letter-spacing: var(--aseka-title-spacing);
}

/* ----- Section başlık sistemi (anasayfa ile ortak) ----- */
.aseka-section-label,
.row.justify-content-center.mb-3 > .col-lg-7 > span.text-uppercase.border-bottom {
    display: inline-block;
    font-family: var(--aseka-heading-font);
    font-size: var(--aseka-label-size);
    font-weight: var(--aseka-label-weight);
    line-height: var(--aseka-label-lh);
    letter-spacing: var(--aseka-label-spacing);
    text-transform: uppercase;
    color: var(--aseka-red);
    margin: 0 0 var(--aseka-label-mb);
    padding: 0 0 var(--aseka-label-pb);
    border: none;
    border-bottom: var(--aseka-label-border) solid var(--aseka-red);
}

.aseka-section-title,
.row.justify-content-center.mb-3 > .col-lg-7 > h2.fw-700 {
    font-family: var(--aseka-heading-font);
    font-size: var(--aseka-title-size);
    font-weight: var(--aseka-title-weight);
    line-height: var(--aseka-title-lh);
    letter-spacing: var(--aseka-title-spacing);
    color: var(--aseka-heading);
    margin: 0 0 var(--aseka-title-mb);
}

.aseka-section-title.fw-700,
.aseka-section-title.mb-0,
.aseka-section-title.mb-15px,
.aseka-section-title.mb-20px,
.aseka-section-title.mb-45px {
    font-size: var(--aseka-title-size);
    font-weight: var(--aseka-title-weight);
    line-height: var(--aseka-title-lh);
}

.aseka-section-lead {
    font-family: var(--aseka-body-font);
    font-size: var(--aseka-lead-size);
    font-weight: 400;
    line-height: 1.7;
    color: var(--aseka-text);
}

.aseka-card-title,
.card-title.aseka-card-title,
a.aseka-card-title,
a.card-title {
    font-family: var(--aseka-heading-font);
    font-size: var(--aseka-card-title-size) !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    color: var(--aseka-heading) !important;
}

.aseka-card-title:hover,
a.aseka-card-title:hover,
a.card-title.text-dark-gray:hover {
    color: var(--aseka-red) !important;
}

.aseka-card-desc {
    font-family: var(--aseka-body-font);
    font-size: var(--aseka-card-desc-size);
    font-weight: 400;
    line-height: 1.65;
    color: var(--aseka-text);
}

/* Açık zemin: alt başlık / etiket kırmızı */
.fs-15.fw-600.text-uppercase.text-base-color,
.fs-16.lh-22.fw-700.text-uppercase.text-dark-gray.border-bottom.border-color-base-color,
span.text-uppercase.border-bottom.border-color-base-color,
.text-uppercase.text-base-color.d-block {
    font-family: var(--aseka-heading-font);
    color: var(--aseka-red) !important;
    border-color: var(--aseka-red) !important;
}

/* Sidebar / yan menü alt başlıkları */
.fs-22.text-dark-gray.fw-600,
.fs-20.text-dark-gray.fw-600 {
    font-family: var(--aseka-heading-font);
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--aseka-red) !important;
}

/* ----- Sayfa başlığı (banner) ----- */
.page-title-big-typography h1,
.page-title-double-large h1,
.page-title-extra-small h1 {
    font-family: var(--aseka-heading-font);
    font-size: var(--aseka-page-h1-size) !important;
    font-weight: 700 !important;
    line-height: var(--aseka-page-h1-lh) !important;
    color: var(--aseka-heading-on-dark) !important;
    letter-spacing: -0.02em;
}

.page-title-big-typography h2,
.page-title-double-large h2 {
    font-family: var(--aseka-body-font);
    font-size: 1rem !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
    color: var(--aseka-text-on-dark) !important;
}

/* İç sayfa başlıkları (beyaz zemin) — siyah */
h1.fw-700.text-dark-gray,
h2.fw-700.text-dark-gray:not(.aseka-section-title),
h3.fw-700.text-dark-gray,
h4.fw-700.text-dark-gray,
h1.text-dark-gray,
h2.text-dark-gray:not(.aseka-section-title),
h3.text-dark-gray,
h4.text-dark-gray {
    color: var(--aseka-heading-black) !important;
}

/* İçerik alanı (CMS HTML): tüm başlıklar eşit boyut, siyah */
.aseka-content-section .page-html h1,
.aseka-content-section .page-html h2,
.aseka-content-section .page-html h3,
.aseka-content-section .page-html h4,
.aseka-content-section .page-html h5,
.aseka-content-section .page-html h6,
.content-prose .page-html h1,
.content-prose .page-html h2,
.content-prose .page-html h3,
.content-prose .page-html h4,
.content-prose .page-html h5,
.content-prose .page-html h6,
.project-detail-prose .page-html h1,
.project-detail-prose .page-html h2,
.project-detail-prose .page-html h3,
.project-detail-prose .page-html h4,
.project-detail-prose .page-html h5,
.project-detail-prose .page-html h6,
.projects-intro-prose .page-html h1,
.projects-intro-prose .page-html h2,
.projects-intro-prose .page-html h3,
.projects-intro-prose .page-html h4,
.projects-intro-prose .page-html h5,
.projects-intro-prose .page-html h6 {
    font-family: var(--aseka-heading-font);
    font-size: 1.5rem !important;
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: -0.01em;
    color: var(--aseka-heading-black) !important;
    margin-top: 1.5rem;
    margin-bottom: 0.75rem;
}

.aseka-content-section .page-html > :first-child,
.content-prose .page-html > :first-child,
.aseka-content-section .page-html h1:first-child,
.aseka-content-section .page-html h2:first-child,
.aseka-content-section .page-html h3:first-child,
.content-prose .page-html h1:first-child,
.content-prose .page-html h2:first-child,
.content-prose .page-html h3:first-child,
.project-detail-prose .page-html h1:first-child,
.project-detail-prose .page-html h2:first-child,
.project-detail-prose .page-html h3:first-child {
    margin-top: 0;
}

/* ----- Breadcrumb ve küçük metinler ----- */
.breadcrumb {
    font-family: var(--aseka-body-font);
    font-size: 0.875rem;
    line-height: 1.5;
}

.breadcrumb-item a {
    color: var(--aseka-navy);
    font-weight: 500;
    text-decoration: none;
}

.breadcrumb-item a:hover {
    color: var(--aseka-red);
}

.breadcrumb-item.active {
    color: var(--aseka-text-muted);
    font-weight: 500;
}

.breadcrumb-item + .breadcrumb-item::before {
    color: var(--aseka-text-muted);
}

/* ----- Sayfa banner (demo logistics — başlık + breadcrumb) ----- */
.page-title-big-typography.aseka-page-title {
    position: relative;
    isolation: isolate;
}

.page-title-big-typography.aseka-page-title::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: rgba(31, 63, 119, 0.42);
    pointer-events: none;
}

.page-title-big-typography.aseka-page-title .container {
    position: relative;
    z-index: 2;
}

.page-title-big-typography.aseka-page-title--fallback {
    background-color: var(--aseka-navy);
    background-image: linear-gradient(135deg, var(--aseka-navy-dark) 0%, var(--aseka-navy) 100%);
}

.page-title-big-typography.aseka-page-title--fallback::before {
    background: rgba(31, 63, 119, 0.28);
}

.page-title-big-typography .page-title-double-large h1.text-white {
    color: #fff !important;
}

.page-title-big-typography .aseka-page-banner-breadcrumb .breadcrumb-item {
    color: #fff;
    font-size: 0.875rem;
    font-weight: 500;
}

.page-title-big-typography .aseka-page-banner-breadcrumb .breadcrumb-item a {
    color: rgba(255, 255, 255, 1) !important;
    text-decoration: none;
}

.page-title-big-typography .aseka-page-banner-breadcrumb .breadcrumb-item a:hover {
    color: #fff;
}

.page-title-big-typography .aseka-page-banner-breadcrumb .breadcrumb-item.active {
    color: #fff;
    font-weight: 600;
    cursor: default;
}

.page-title-big-typography .aseka-page-banner-breadcrumb .breadcrumb-item.active span {
    pointer-events: none;
}

.page-title-big-typography .aseka-page-banner-breadcrumb .breadcrumb-item + .breadcrumb-item::before {
    color: rgba(255, 255, 255, 0.5);
}

/* ----- Metin linkleri ----- */
a:not(.btn):not(.nav-link):not(.dropdown-item):not(.card-title):not(.aseka-card-title) {
    color: var(--aseka-navy);
    transition: color 0.2s ease;
}

a:not(.btn):not(.nav-link):not(.dropdown-item):hover {
    color: var(--aseka-red);
}

footer.aseka-footer a:not(.btn):not(.nav-link):not(.dropdown-item) {
    color: #fff !important;
}

footer.aseka-footer a:not(.btn):not(.nav-link):not(.dropdown-item):hover {
    color: var(--aseka-red) !important;
}

.text-base-color,
.text-base-color-hover:hover,
a.text-base-color-hover:hover {
    color: var(--aseka-red) !important;
}

.text-dark-gray {
    color: var(--aseka-navy);
}

/* Başlık ve kartlarda text-dark-gray → siyah */
h1.text-dark-gray,
h2.text-dark-gray,
h3.text-dark-gray,
h4.text-dark-gray,
h5.text-dark-gray,
h6.text-dark-gray,
.aseka-section-title.text-dark-gray,
.aseka-card-title,
.card-title,
.accordion-title.text-dark-gray {
    color: var(--aseka-heading-black) !important;
}

.text-dark-gray-hover:hover {
    color: var(--aseka-red) !important;
}

.fw-600.text-dark-gray.text-base-color-hover,
.fs-14.fw-600.text-dark-gray.text-base-color-hover {
    font-family: var(--aseka-heading-font);
    font-weight: 600;
    color: var(--aseka-navy);
}

.fw-600.text-dark-gray.text-base-color-hover:hover,
.fs-14.fw-600.text-dark-gray.text-base-color-hover:hover {
    color: var(--aseka-red) !important;
}

.btn-link {
    color: var(--aseka-navy);
    font-weight: 600;
}

.btn-link:hover {
    color: var(--aseka-red);
}

/* ----- Butonlar ----- */
.btn {
    font-family: var(--aseka-heading-font);
    font-weight: 600;
    letter-spacing: 0.02em;
    border-radius: 4px;
    text-transform: inherit;
}

.btn-dark-gray {
    background-color: var(--aseka-navy) !important;
    border-color: var(--aseka-navy) !important;
    color: #fff !important;
}

.btn-dark-gray:hover,
.btn-dark-gray:focus {
    background-color: var(--aseka-navy-dark) !important;
    border-color: var(--aseka-navy-dark) !important;
    color: #fff !important;
}

.btn-base-color,
.btn.btn-box-shadow.btn-base-color {
    background-color: var(--aseka-red) !important;
    border-color: var(--aseka-red) !important;
    color: #fff !important;
}

.btn-base-color:hover,
.btn.btn-box-shadow.btn-base-color:hover {
    background-color: var(--aseka-red-hover) !important;
    border-color: var(--aseka-red-hover) !important;
    color: #fff !important;
}

.btn-small {
    min-height: 44px;
    padding: 11px 22px;
    font-size: 0.875rem;
}

.btn-medium {
    padding: 12px 24px;
    font-size: 0.9375rem;
}

.btn-large {
    min-height: 52px;
    padding: 14px 28px;
    font-size: 0.9375rem;
}

.btn-aseka-primary {
    background-color: var(--aseka-red) !important;
    color: #fff !important;
    border: 2px solid var(--aseka-red) !important;
    border-radius: 4px !important;
    font-weight: 600 !important;
    padding: 14px 28px !important;
}

.btn-aseka-primary:hover {
    background-color: var(--aseka-red-hover) !important;
    border-color: var(--aseka-red-hover) !important;
    color: #fff !important;
}

.btn-aseka-secondary {
    background: transparent !important;
    color: #fff !important;
    border: 2px solid rgba(255, 255, 255, 0.85) !important;
    border-radius: 4px !important;
    font-weight: 600 !important;
    padding: 14px 28px !important;
}

.btn-aseka-secondary:hover {
    background: rgba(255, 255, 255, 0.1) !important;
    color: #fff !important;
}

/* ----- Navigasyon ----- */
.navbar .navbar-nav .nav-link {
    font-family: var(--aseka-heading-font);
    font-size: 17px;
    font-weight: 600;
    color: #000;
    letter-spacing: 0.01em;
}

.navbar .navbar-nav .nav-link:hover,
.navbar .navbar-nav .nav-link.active {
    color: var(--aseka-red) !important;
    opacity: 1;
}

.header-button .btn-base-color {
    background-color: var(--aseka-red) !important;
    color: #fff !important;
    border-radius: 4px;
}

.header-button .btn-base-color:hover {
    background-color: var(--aseka-red-hover) !important;
    color: #fff !important;
}

/* ----- Mavi / koyu zemin: başlıklar beyaz ----- */
.aseka-strength-section,
.aseka-home-newsletter,
.aseka-project-hero,
.bg-dark-gray,
.bg-dark-slate-blue,
section[class*="bg-dark"],
.page-title-big-typography.cover-background {
    --aseka-surface: dark;
}

.aseka-strength-section h1,
.aseka-strength-section h2,
.aseka-strength-section h3,
.aseka-strength-section h4,
.aseka-strength-section h5,
.aseka-strength-section h6,
.aseka-strength-section .aseka-section-title,
.aseka-strength-section .aseka-card-title,
.aseka-strength-section .fw-700.text-dark-gray,
.aseka-home-newsletter h1,
.aseka-home-newsletter h2,
.aseka-home-newsletter h3,
.aseka-home-newsletter .aseka-section-title,
.aseka-home-newsletter__title,
.aseka-project-hero h1,
.aseka-project-hero h2,
.aseka-project-hero h3,
.aseka-project-hero .aseka-section-title,
.aseka-project-hero__title,
.aseka-project-hero__title-main,
.bg-dark-gray h1,
.bg-dark-gray h2,
.bg-dark-gray h3,
.bg-dark-gray h4,
.bg-dark-gray h5,
.bg-dark-gray h6,
.bg-dark-slate-blue h1,
.bg-dark-slate-blue h2,
.bg-dark-slate-blue h3,
.bg-dark-slate-blue h4,
.bg-dark-slate-blue h5,
.bg-dark-slate-blue h6 {
    color: var(--aseka-heading-on-dark) !important;
}

.aseka-strength-section p,
.aseka-strength-section li,
.aseka-strength-section .aseka-section-lead,
.aseka-strength-section .aseka-card-desc,
.aseka-home-newsletter p,
.aseka-home-newsletter .aseka-section-lead,
.aseka-project-hero p,
.aseka-project-hero .aseka-card-desc,
.bg-dark-gray p,
.bg-dark-gray li,
.bg-dark-slate-blue p {
    color: var(--aseka-text-on-dark);
}

.aseka-strength-section .aseka-section-label,
.aseka-home-newsletter .aseka-section-label,
.aseka-home-newsletter__label {
    color: #fff;
    border-bottom-color: var(--aseka-red);
}

/* ----- Footer: tüm linkler beyaz ----- */
footer.aseka-footer a:not(.btn) {
    color: #fff !important;
}

footer.aseka-footer .aseka-footer-menu a {
    color: #fff !important;
}

footer.aseka-footer .aseka-footer-menu a:hover,
footer.aseka-footer a.aseka-footer-contact-link:hover {
    color: var(--aseka-red) !important;
}

footer.aseka-footer .aseka-footer-contact-link,
footer.aseka-footer .aseka-footer-contact-link-static {
    color: #fff !important;
}

footer.aseka-footer .aseka-footer-social a {
    color: #fff !important;
}

footer.aseka-footer .aseka-footer-social a:hover {
    color: var(--aseka-red) !important;
}

footer.aseka-footer .aseka-footer-legal a {
    color: #fff !important;
}

footer.aseka-footer .aseka-footer-legal a:hover {
    color: var(--aseka-red) !important;
}

.barca-slider-slide h1 {
    color: #fff !important;
    font-family: var(--aseka-heading-font);
    font-size: clamp(1.85rem, 4vw, 3.25rem) !important;
    line-height: 1.15 !important;
}

.barca-slider-slide .fs-20 {
    color: #fff !important;
    font-family: var(--aseka-body-font);
    font-size: 1.05rem !important;
    line-height: 1.6;
    opacity: 0.92;
}

/* Accordion */
.accordion .accordion-header,
.accordion .accordion-title {
    font-family: var(--aseka-heading-font);
    font-size: 1rem;
    font-weight: 600;
    color: var(--aseka-heading-black);
}

/* Kart listeleri (alt-font link başlıkları) */
a.fs-18.alt-font.fw-500.text-dark-gray {
    font-family: var(--aseka-heading-font);
    font-size: 1.125rem !important;
    font-weight: 600 !important;
    color: var(--aseka-heading-black) !important;
}

a.fs-18.alt-font.fw-500.text-dark-gray:hover {
    color: var(--aseka-red) !important;
}

/* Form etiketleri */
label,
.form-label {
    font-family: var(--aseka-heading-font);
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--aseka-heading);
}

/* ----- Hizmet / ürün detay (sidebar + CTA + form) ----- */
.service-detail-cta-stack {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.service-detail-cta-card {
    padding: 22px 28px;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.service-detail-cta-card:hover {
    transform: translateY(-2px);
    color: #fff;
}

.service-detail-cta-card--blue {
    background-color: var(--aseka-navy);
}

.service-detail-cta-card--blue:hover {
    background-color: var(--aseka-navy-dark);
    color: #fff;
}

.service-detail-cta-card--whatsapp {
    background-color: #25d366;
}

.service-detail-cta-card--whatsapp:hover {
    background-color: #1da851;
    color: #fff;
}

.service-detail-cta-label {
    color: rgba(255, 255, 255, 0.92);
    font-size: 14px;
    line-height: 1.35;
    margin-bottom: 4px;
}

.service-detail-cta-value {
    color: #fff;
    line-height: 1.3;
    word-break: break-word;
}

.service-detail-content-header h1 {
    font-size: var(--aseka-content-h1-size);
    line-height: var(--aseka-page-h1-lh);
}

.service-detail-featured-img {
    display: block;
}

.content-sidebar-sticky {
    position: sticky;
    top: 120px;
}

.content-sidebar-list {
    list-style: none;
}

.content-sidebar-list li a {
    color: inherit;
    text-decoration: none;
    transition: color 0.2s ease;
}

.content-sidebar-list li a:hover {
    color: var(--aseka-red);
}

.content-sidebar-list li.active-item {
    background: rgba(31, 63, 119, 0.06);
    margin-left: -15px;
    margin-right: -15px;
    padding-left: 15px;
    padding-right: 15px;
    border-radius: 6px;
}

.content-sidebar-list li.active-item a {
    color: var(--aseka-red);
}

.content-faq-section {
    border-top: 1px solid var(--aseka-gray-border);
    padding-top: 30px;
    background: var(--aseka-gray-bg);
    margin: 30px -20px -20px -20px;
    padding: 30px 20px 20px 20px;
    border-radius: 0 0 8px 8px;
}

.content-faq-accordion .accordion-item {
    background: #fff;
    border-radius: 8px;
    margin-bottom: 10px;
    overflow: hidden;
    border: 1px solid var(--aseka-gray-border);
}

.content-faq-accordion .accordion-header a {
    display: block;
    padding: 18px 20px;
    text-decoration: none;
    transition: background 0.2s ease;
}

.content-faq-accordion .accordion-header a:hover {
    background: rgba(0, 0, 0, 0.02);
}

.content-faq-accordion .accordion-title {
    display: flex;
    align-items: center;
    gap: 12px;
}

.content-faq-accordion .accordion-title i {
    width: 28px;
    height: 28px;
    background: var(--aseka-red);
    color: #fff;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    flex-shrink: 0;
    transition: all 0.3s ease;
}

.content-faq-accordion .accordion-item:not(.active-accordion) .accordion-title i {
    background: #f0f0f0;
    color: #666;
}

.content-faq-accordion .accordion-body {
    padding: 15px 20px 20px 60px;
    color: var(--aseka-text-muted);
    line-height: 1.7;
}

.contact-form-style-01 .form-icon {
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    color: #9ca3af;
    z-index: 1;
}

.contact-form-style-01 .form-control {
    padding-left: 45px;
}

.contact-form-style-01 .form-textarea .form-icon {
    top: 20px;
    transform: none;
}

.privacy-checkbox-label {
    position: relative;
}

.privacy-checkbox {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

.privacy-checkbox-custom {
    width: 18px;
    height: 18px;
    min-width: 18px;
    border: 2px solid #d1d5db;
    border-radius: 4px;
    background: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
    margin-top: 2px;
}

.privacy-checkbox-custom::after {
    content: '';
    width: 5px;
    height: 9px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg) scale(0);
    transition: transform 0.15s ease;
    margin-top: -2px;
}

.privacy-checkbox:checked + .privacy-checkbox-custom {
    background: var(--aseka-red);
    border-color: var(--aseka-red);
}

.privacy-checkbox:checked + .privacy-checkbox-custom::after {
    transform: rotate(45deg) scale(1);
}

/* Ürün detay sayfa düzeni */
.product-detail-page .product-detail-media-frame {
    background: var(--aseka-gray-bg);
}

.product-detail-slide-img {
    display: block;
    width: 100%;
    height: 480px;
    object-fit: cover;
}

.product-detail-slide-counter {
    background: rgba(0, 0, 0, 0.55);
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    padding: 6px 12px;
    border-radius: 20px;
    backdrop-filter: blur(4px);
}

.product-detail-zoom-badge {
    background: rgba(255, 255, 255, 0.92);
    color: var(--aseka-navy);
    font-size: 13px;
    font-weight: 600;
    padding: 8px 14px;
    border-radius: 6px;
    z-index: 2;
    transition: background 0.2s ease, color 0.2s ease;
}

.product-detail-lightbox-trigger:hover .product-detail-zoom-badge {
    background: var(--aseka-red);
    color: #fff;
}

.product-detail-thumb-img {
    height: 72px;
    object-fit: cover;
    display: block;
}

.product-detail-thumb-slider .swiper-slide.swiper-slide-thumb-active .product-detail-thumb-img {
    outline: 2px solid var(--aseka-red);
    outline-offset: 1px;
}

.product-detail-media-placeholder {
    min-height: 400px;
    background: var(--aseka-gray-bg);
    border: 1px dashed var(--aseka-gray-border);
}

.product-detail-placeholder-icon {
    width: 72px;
    height: 72px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);
}

.product-detail-info-card {
    border: 1px solid var(--aseka-gray-border);
}

.product-detail-title {
    font-size: var(--aseka-content-h1-size);
    line-height: var(--aseka-page-h1-lh);
    letter-spacing: -0.02em;
}

.product-detail-lead {
    max-width: 52ch;
}

.product-detail-hero-spec-item {
    padding: 12px 14px;
    border-radius: 8px;
    background: var(--aseka-gray-bg);
    border: 1px solid var(--aseka-gray-border);
}

.product-detail-hero-spec-label {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--aseka-navy);
    margin-bottom: 4px;
}

.product-detail-hero-spec-value {
    font-size: 15px;
    font-weight: 600;
    color: var(--aseka-text);
    line-height: 1.35;
}

.product-detail-cta-btn {
    display: inline-flex !important;
    align-items: center;
    gap: 12px;
    color: #fff;
}

.product-detail-cta-btn i {
    flex-shrink: 0;
    line-height: 1;
}

.product-detail-cta-btn--whatsapp {
    background-color: #25d366 !important;
    border-color: #25d366 !important;
    color: #fff !important;
}

.product-detail-cta-btn--whatsapp:hover,
.product-detail-cta-btn--whatsapp:focus {
    background-color: #1da851 !important;
    border-color: #1da851 !important;
    color: #fff !important;
}

.product-detail-cta-btn--email {
    background-color: var(--aseka-navy) !important;
    border-color: var(--aseka-navy) !important;
    color: #fff !important;
}

.product-detail-cta-btn--email:hover,
.product-detail-cta-btn--email:focus {
    background-color: var(--aseka-navy-dark) !important;
    border-color: var(--aseka-navy-dark) !important;
    color: #fff !important;
}

.product-detail-tabs-head {
    padding: 0 40px;
    background: #fafbfc;
    border-bottom: 1px solid var(--aseka-gray-border);
}

.product-detail-nav {
    gap: 0;
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
}

.product-detail-nav::-webkit-scrollbar {
    display: none;
}

.product-detail-nav-link {
    border: none !important;
    border-radius: 0 !important;
    padding: 22px 28px !important;
    font-size: 15px;
    font-weight: 600;
    color: #6f757c !important;
    background: transparent !important;
    position: relative;
    white-space: nowrap;
    transition: color 0.25s ease;
}

.product-detail-nav-link::after {
    content: '';
    position: absolute;
    left: 28px;
    right: 28px;
    bottom: 0;
    height: 3px;
    background: var(--aseka-red);
    transform: scaleX(0);
    transition: transform 0.3s cubic-bezier(0.23, 1, 0.32, 1);
}

.product-detail-nav-link.active,
.product-detail-nav-link:hover {
    color: var(--aseka-heading-black) !important;
}

.product-detail-nav-link.active::after {
    transform: scaleX(1);
}

.product-detail-prose .page-html h2,
.product-detail-prose .page-html h3 {
    font-weight: 700;
    color: var(--aseka-heading);
    margin-top: 1.75em;
    margin-bottom: 0.65em;
}

.product-detail-faq-accordion {
    margin: 0;
}

.product-detail-faq-accordion .accordion-item {
    background: #fff;
    border-radius: 8px;
    margin-bottom: 10px;
    overflow: hidden;
    border: 1px solid var(--aseka-gray-border);
}

.product-detail-faq-accordion .accordion-header a {
    display: block;
    padding: 18px 20px;
    text-decoration: none;
}

.product-detail-faq-accordion .accordion-title {
    display: flex;
    align-items: center;
    gap: 12px;
}

.product-detail-faq-accordion .accordion-title i {
    width: 28px;
    height: 28px;
    background: var(--aseka-red);
    color: #fff;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    flex-shrink: 0;
}

.product-detail-faq-accordion .accordion-item:not(.active-accordion) .accordion-title i {
    background: #f0f0f0;
    color: #666;
}

.product-detail-faq-accordion .accordion-body {
    padding: 15px 20px 20px 60px;
    color: var(--aseka-text-muted);
    line-height: 1.7;
}

.product-detail-video-thumb,
.product-detail-video-fallback {
    height: min(50vw, 440px);
    object-fit: cover;
    width: 100%;
}

.product-detail-video-fallback {
    background: linear-gradient(135deg, #2b2f38 0%, #1a1d24 100%);
    min-height: 320px;
}

.product-detail-video-fallback i {
    font-size: 72px;
    opacity: 0.9;
}

.product-detail-video-poster::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0.55) 100%);
    z-index: 1;
}

.product-detail-video-play {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.95);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.25s ease;
}

.product-detail-video-play i {
    font-size: 32px;
    color: #232323;
    margin-left: 4px;
}

.product-detail-video-poster:hover .product-detail-video-play {
    transform: translate(-50%, -50%) scale(1.08);
}

.product-detail-video-label {
    z-index: 2;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.65) 0%, transparent 100%);
}

.product-detail-video-empty {
    background: var(--aseka-gray-bg);
    border: 1px dashed var(--aseka-gray-border);
}

.product-detail-video-empty-icon {
    width: 72px;
    height: 72px;
    background: #fff;
    color: var(--aseka-navy);
    font-size: 28px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);
}

/* Ürün detay galeri */
.product-detail-gallery .product-image-slider {
    background: var(--aseka-gray-bg);
}

.product-detail-gallery__img {
    display: block;
}

.product-detail-gallery__nav {
    position: absolute;
    bottom: 15px;
    right: 15px;
    z-index: 10;
    display: flex;
    gap: 8px;
}

.product-detail-gallery__btn {
    width: 42px;
    height: 42px;
    border-radius: 6px;
    border: none;
    background: rgba(255, 255, 255, 0.95);
    color: var(--aseka-navy);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
    font-size: 15px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
}

.product-detail-gallery__btn:hover {
    background: var(--aseka-red);
    color: #fff;
}

.product-image-thumb .swiper-slide {
    cursor: pointer;
    border: 2px solid transparent;
    border-radius: 6px;
    overflow: hidden;
    transition: border-color 0.2s ease;
    width: auto !important;
}

.product-image-thumb .swiper-slide.swiper-slide-thumb-active {
    border-color: var(--aseka-red);
}

/* Ürün özellikleri */
.product-detail-specs {
    background: var(--aseka-gray-bg);
    border: 1px solid var(--aseka-gray-border);
    border-radius: 8px;
    padding: 24px 28px;
}

.product-detail-specs__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px 28px;
}

.product-detail-specs__label {
    font-family: var(--aseka-heading-font);
    font-size: 0.8125rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--aseka-navy);
    margin-bottom: 4px;
}

.product-detail-specs__value {
    font-size: 1rem;
    color: var(--aseka-text);
    font-weight: 500;
}

.product-detail-related-card {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.product-detail-related-card:hover {
    transform: translateY(-3px);
}

.aseka-products-section .card {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.aseka-products-section .card:hover {
    transform: translateY(-4px);
}

@media (max-width: 991px) {
    .content-sidebar-sticky {
        position: static;
    }

    .service-detail-cta-card {
        padding: 20px 22px;
    }

    .service-detail-cta-card .feature-box-icon {
        width: 56px !important;
        height: 56px !important;
    }

    .product-detail-specs__grid {
        grid-template-columns: 1fr;
    }

    .product-detail-gallery__img,
    .product-detail-slide-img {
        height: 300px !important;
    }

    .product-detail-tabs-head {
        padding: 0 20px;
    }

    .product-detail-nav-link {
        padding: 18px 20px !important;
        font-size: 14px;
    }

    .product-detail-nav-link::after {
        left: 20px;
        right: 20px;
    }
}

@media (max-width: 767px) {
    .content-faq-accordion .accordion-header a {
        padding: 15px;
    }

    .content-faq-accordion .accordion-body {
        padding: 12px 15px 15px 15px;
    }
}

@media (max-width: 575px) {
    .product-detail-gallery__btn {
        width: 36px;
        height: 36px;
    }
}

/* Responsive: section başlık ölçeği */
@media (max-width: 991px) {
    :root {
        --aseka-title-size: 2.25rem;
        --aseka-page-h1-size: 2.125rem;
        --aseka-content-h1-size: 1.875rem;
        --aseka-content-h2-size: 1.5rem;
    }
}

@media (max-width: 575px) {
    :root {
        --aseka-title-size: 1.75rem;
        --aseka-page-h1-size: 1.75rem;
        --aseka-content-h1-size: 1.625rem;
        --aseka-content-h2-size: 1.375rem;
    }

    .navbar .navbar-nav .nav-link {
        font-size: 16px;
    }
}
