/* ============================================================
   Sandline Theme — Main Stylesheet
   Dark e-commerce theme for Sandline textile/garment brand
   ============================================================ */

/* CSS Variables */
:root {
    --bg-primary: #1b130a;        /* koyu gri — siyah değil */
    --bg-secondary: #231a0f;
    --bg-tertiary: #2b2014;
    --bg-card: #251b10;
    --bg-elevated: #2f2416;

    --text-primary: #f5f5f5;
    --text-secondary: #c0c0c0;
    --text-muted: #888888;
    --text-faint: #555555;

    --accent: #c9a96e;           /* warm gold */
    --accent-hover: #d8b87f;
    --accent-dark: #a88a55;

    --border: #3a2e1d;
    --border-light: #473827;

    --shadow-sm: 0 2px 8px rgba(0,0,0,0.4);
    --shadow-md: 0 8px 24px rgba(0,0,0,0.5);
    --shadow-lg: 0 16px 48px rgba(0,0,0,0.6);

    --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --font-display: 'Inter', sans-serif;

    --radius-sm: 4px;
    --radius-md: 8px;
    --radius-lg: 16px;

    --max-width: 1280px;
    --transition: 0.25s ease;
}

/* Reset / Base */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-font-smoothing: antialiased; }
body {
    margin: 0;
    font-family: var(--font-sans);
    font-size: 16px;
    line-height: 1.6;
    color: var(--text-primary);
    background: var(--bg-primary);
    overflow-x: hidden;
}
img, svg, video { max-width: 100%; height: auto; display: block; }
a { color: var(--accent); text-decoration: none; transition: color var(--transition); }
a:hover { color: var(--accent-hover); }
button { font-family: inherit; cursor: pointer; }
h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-display);
    font-weight: 700;
    line-height: 1.2;
    color: var(--text-primary);
    margin: 0 0 0.6em;
}
h1 { font-size: clamp(2rem, 5vw, 3.5rem); }
h2 { font-size: clamp(1.6rem, 3.5vw, 2.4rem); }
h3 { font-size: clamp(1.25rem, 2.5vw, 1.6rem); }
h4 { font-size: 1.15rem; }
p { margin: 0 0 1em; }
ul, ol { padding-left: 1.5em; }

/* Layout */
.container {
    width: 100%;
    max-width: var(--max-width);
    margin: 0 auto;
    padding: 0 24px;
}
.skip-link {
    position: absolute; left: -9999px; top: 0;
    background: var(--accent); color: #000;
    padding: 8px 16px; z-index: 9999;
}
.skip-link:focus { left: 0; }

/* ============================================================
   HEADER — Professional 2-tier
   ============================================================ */
.site-header {
    position: fixed; top: 0; left: 0; right: 0; z-index: 1000;
    /* Front-page'de scroll öncesi — TAMAMEN ŞEFFAF, video net görünür */
    background: transparent;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    border-bottom: 1px solid transparent;
    transition: background 0.4s ease, backdrop-filter 0.4s ease, border-color 0.4s ease, box-shadow 0.4s ease, top 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    will-change: transform;
    transform: translateZ(0);
}
/* Front-page: topbar üstte, header onun ALTINDA başlar; scroll'da topbar
   doğal olarak görünmez olur ve .scrolled ile header top:0'a çıkar */
body.is-front-page .site-header { top: 40px; }
body.is-front-page .site-header.scrolled { top: 0; }
/* Scroll sonrası — solda ÇOK AÇIK (logo zemini), sağa doğru koyulaşan dramatik gradient */
.site-header.scrolled {
    background:
        linear-gradient(90deg,
            rgba(232, 226, 214, 0.96) 0%,
            rgba(190, 178, 158, 0.95) 14%,
            rgba(128, 94, 50, 0.94) 30%,
            rgba(66, 46, 24, 0.95) 50%,
            rgba(46, 34, 19, 0.97) 72%,
            rgba(32, 23, 12, 0.98) 100%);
    backdrop-filter: blur(22px) saturate(180%);
    -webkit-backdrop-filter: blur(22px) saturate(180%);
    border-bottom-color: rgba(201, 169, 110, 0.32);
    box-shadow: 0 6px 28px rgba(0, 0, 0, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.08);
}
/* Front-page dışındaki sayfalarda — aynı yatay gradient sürekli aktif */
body:not(.is-front-page) .site-header {
    position: sticky;
    background: linear-gradient(90deg,
        rgba(232, 226, 214, 0.96) 0%,
        rgba(190, 178, 158, 0.95) 14%,
        rgba(128, 94, 50, 0.94) 30%,
        rgba(66, 46, 24, 0.95) 50%,
        rgba(46, 34, 19, 0.97) 72%,
        rgba(32, 23, 12, 0.98) 100%);
    backdrop-filter: blur(22px) saturate(180%);
    -webkit-backdrop-filter: blur(22px) saturate(180%);
    border-bottom-color: rgba(201, 169, 110, 0.3);
}
body:not(.is-front-page) .site-header.scrolled {
    background: linear-gradient(90deg,
        rgba(225, 218, 204, 0.97) 0%,
        rgba(180, 168, 148, 0.96) 14%,
        rgba(120, 86, 44, 0.95) 30%,
        rgba(58, 40, 20, 0.96) 50%,
        rgba(42, 31, 17, 0.98) 72%,
        rgba(30, 21, 11, 0.99) 100%);
    box-shadow: 0 6px 28px rgba(0, 0, 0, 0.55), inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

/* === Topbar (üst dar şerit) — header DIŞINDA, scroll'da header ile gelmez === */
.topbar {
    position: relative;
    z-index: 999;
    background: linear-gradient(90deg, #2e2114 0%, #231a0f 55%, #1c140b 100%);
    border-bottom: 1px solid rgba(201, 169, 110, 0.18);
    font-size: 12px;
    color: var(--text-muted);
}
/* Front-page'de topbar hero'nun üstüne absolute oturur (hero'yu aşağı itmesin) */
body.is-front-page .topbar {
    position: absolute;
    top: 0; left: 0; right: 0;
    background: transparent;
    border-bottom-color: rgba(255, 255, 255, 0.08);
}
.topbar-inner {
    display: flex; justify-content: space-between; align-items: center;
    min-height: 40px; gap: 24px;
}
.topbar-left, .topbar-right {
    display: flex; align-items: center; gap: 18px;
    letter-spacing: 0.03em;
}
.topbar-info {
    display: inline-flex; align-items: center; gap: 8px;
    color: var(--text-secondary);
    text-decoration: none;
    transition: color var(--transition);
}
.topbar-info svg { color: var(--accent); opacity: 0.85; }
.topbar-info:hover { color: var(--accent); }
.topbar-divider {
    width: 1px; height: 14px; background: var(--border-light); opacity: 0.6;
}
.topbar-tagline {
    color: var(--text-muted);
    font-style: italic;
    font-size: 12px;
}

/* === Main bar (logo + nav + tools) === */
.header-main {
    transition: padding 0.3s ease;
}
.header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    padding: 8px 24px;
    min-height: 156px;
    transition: min-height 0.35s cubic-bezier(0.4, 0, 0.2, 1),
                padding 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}
.site-header.scrolled .header-inner {
    min-height: 114px;
    padding: 6px 24px;
}

/* Logo — BÜYÜK + arkasında subtle dark backdrop (ön plana çıkarmak için) */
.site-branding {
    display: flex; align-items: center;
    flex-shrink: 0;
    position: relative;
}
/* Şeffaf header (front-page üst kısım) — logonun arkasında güçlü beyaz parıltı */
.site-branding::before {
    content: '';
    position: absolute;
    inset: -65px -100px;
    background:
        radial-gradient(ellipse 55% 65% at center,
            rgba(255, 255, 255, 0.75) 0%,
            rgba(255, 255, 255, 0.45) 18%,
            rgba(255, 255, 255, 0.22) 35%,
            rgba(255, 250, 235, 0.08) 55%,
            transparent 75%),
        radial-gradient(ellipse 75% 85% at center,
            rgba(201, 169, 110, 0.22) 0%,
            rgba(201, 169, 110, 0.10) 40%,
            transparent 78%);
    filter: blur(12px);
    pointer-events: none;
    z-index: -1;
    opacity: 1;
    transition: opacity 0.4s ease;
    animation: sandline-logo-shimmer 4.5s ease-in-out infinite;
}
/* Scroll edilince parıltı tamamen kalkar (header zaten kendi gradientiyle çerçeveyi sağlıyor) */
.site-header.scrolled .site-branding::before { opacity: 0; }
body:not(.is-front-page) .site-branding::before { opacity: 0; }

@keyframes sandline-logo-shimmer {
    0%, 100% { transform: scale(1); filter: blur(8px) brightness(1); }
    50%      { transform: scale(1.05); filter: blur(10px) brightness(1.15); }
}
.site-branding a {
    display: inline-flex; align-items: center;
    text-decoration: none;
    position: relative;
}
.site-branding .custom-logo,
.site-branding img {
    max-height: 145px; width: auto;
    transition: max-height 0.35s cubic-bezier(0.4, 0, 0.2, 1), filter 0.3s ease;
    filter: drop-shadow(0 4px 14px rgba(0, 0, 0, 0.55));
}
.site-header.scrolled .site-branding .custom-logo,
.site-header.scrolled .site-branding img {
    max-height: 105px;
    filter: drop-shadow(0 3px 10px rgba(0, 0, 0, 0.45));
}
.site-branding .site-title-link {
    font-size: 1.5rem; font-weight: 800;
    color: var(--text-primary);
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

/* Navigation */
.main-navigation { display: flex; align-items: center; }
.main-navigation .nav-menu {
    list-style: none; margin: 0; padding: 0;
    display: flex; gap: 4px; align-items: center;
}
.main-navigation .nav-menu > li { position: relative; }
.main-navigation .nav-menu > li > a {
    display: inline-flex; align-items: center; gap: 6px;
    color: var(--text-primary);
    font-size: 13px; font-weight: 600;
    text-transform: uppercase; letter-spacing: 0.08em;
    padding: 12px 18px;
    border-radius: var(--radius-sm);
    position: relative;
    transition: color var(--transition), background var(--transition);
}
.main-navigation .nav-menu > li.menu-item-has-children > a::after {
    content: ''; width: 8px; height: 8px;
    border-right: 1.5px solid currentColor;
    border-bottom: 1.5px solid currentColor;
    transform: rotate(45deg) translateY(-2px);
    margin-left: 4px;
    transition: transform var(--transition);
}
.main-navigation .nav-menu > li > a:hover,
.main-navigation .nav-menu > li.current-menu-item > a,
.main-navigation .nav-menu > li.current-menu-parent > a,
.main-navigation .nav-menu > li.current-menu-ancestor > a {
    color: var(--accent);
}
.main-navigation .nav-menu > li > a::before {
    content: ''; position: absolute;
    bottom: 6px; left: 50%; transform: translateX(-50%);
    width: 0; height: 2px; background: var(--accent);
    transition: width var(--transition);
}
.main-navigation .nav-menu > li > a:hover::before,
.main-navigation .nav-menu > li.current-menu-item > a::before,
.main-navigation .nav-menu > li.current-menu-parent > a::before {
    width: calc(100% - 36px);
}

/* Submenu (dropdown) */
.main-navigation .nav-menu .sub-menu {
    position: absolute; top: calc(100% + 8px); left: 50%;
    transform: translateX(-50%) translateY(8px);
    list-style: none; padding: 10px 0; margin: 0;
    background: var(--bg-elevated);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    min-width: 220px;
    opacity: 0; visibility: hidden;
    transition: all 0.25s ease;
    box-shadow: var(--shadow-lg);
    z-index: 100;
}
.main-navigation .nav-menu .sub-menu::before {
    content: ''; position: absolute;
    top: -6px; left: 50%; transform: translateX(-50%) rotate(45deg);
    width: 12px; height: 12px;
    background: var(--bg-elevated);
    border-left: 1px solid var(--border);
    border-top: 1px solid var(--border);
}
.main-navigation .nav-menu > li:hover > .sub-menu,
.main-navigation .nav-menu > li:focus-within > .sub-menu {
    opacity: 1; visibility: visible;
    transform: translateX(-50%) translateY(0);
}
.main-navigation .nav-menu .sub-menu li { display: block; }
.main-navigation .nav-menu .sub-menu a {
    display: block; padding: 10px 20px;
    color: var(--text-secondary);
    font-size: 13px; font-weight: 500;
    text-transform: none; letter-spacing: 0.02em;
    transition: color var(--transition), background var(--transition), padding var(--transition);
}
.main-navigation .nav-menu .sub-menu a:hover {
    color: var(--accent);
    background: rgba(201, 169, 110, 0.08);
    padding-left: 26px;
}

/* === Header tools (search/account/cart/menu toggle) === */
.header-tools {
    display: flex; align-items: center; gap: 4px;
    flex-shrink: 0;
}
.tool-btn {
    color: var(--text-primary);
    background: transparent;
    border: 1px solid transparent;
    display: inline-flex; align-items: center; justify-content: center;
    width: 44px; height: 44px;
    border-radius: var(--radius-sm);
    position: relative;
    transition: all var(--transition);
    cursor: pointer; padding: 0;
    /* Video üstünde okunabilirlik için ikon koyu glow */
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.7));
}
.site-header.scrolled .tool-btn { filter: none; }
/* Front-page'de header transparant + nav linkler için text shadow */
body.is-front-page .site-header:not(.scrolled) .main-navigation .nav-menu > li > a {
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.6);
}
body.is-front-page .site-header:not(.scrolled) .topbar-info,
body.is-front-page .site-header:not(.scrolled) .topbar-tagline {
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
}
.tool-btn:hover {
    background: rgba(201, 169, 110, 0.1);
    border-color: rgba(201, 169, 110, 0.25);
    color: var(--accent);
}
.tool-btn svg { transition: transform var(--transition); }
.tool-btn:hover svg { transform: scale(1.08); }

.header-cart { position: relative; }
.cart-count {
    position: absolute; top: 6px; right: 6px;
    background: var(--accent); color: #000;
    font-size: 10px; font-weight: 800;
    min-width: 18px; height: 18px;
    border-radius: 9px;
    display: flex; align-items: center; justify-content: center;
    padding: 0 5px;
    border: 2px solid var(--bg-primary);
    line-height: 1;
}
.cart-count[data-count="0"] { display: none; }

/* === Language switcher (topbar) — TranslatePress v3 shortcode === */
.lang-switcher { display: inline-flex; align-items: center; position: relative; }
.lang-switcher .trp-shortcode-switcher__wrapper,
.lang-switcher .trp-language-switcher-container,
.lang-switcher .trp-floater-ls { display: inline-flex; position: relative; }

/* Override TP inline CSS variables for dark theme */
.lang-switcher .trp-shortcode-switcher__wrapper {
    --bg: transparent !important;
    --bg-hover: rgba(201, 169, 110, 0.12) !important;
    --text: #d8d8d8 !important;
    --text-hover: #c9a96e !important;
    --border: 1px solid rgba(255, 255, 255, 0.14) !important;
    --border-width: 1px !important;
    --border-color: rgba(255, 255, 255, 0.14) !important;
    --border-radius: 6px !important;
    --flag-radius: 3px !important;
    --flag-size: 18px !important;
    --aspect-ratio: 4/3 !important;
    --font-size: 12px !important;
    --transition-duration: 0.25s !important;
}

/* Switcher containers */
.lang-switcher .trp-shortcode-anchor,
.lang-switcher .trp-shortcode-overlay {
    background: transparent !important;
}

/* Anchor — sadece layout için (TP overlay'i bunun üstüne render ediyor) */
.lang-switcher .trp-shortcode-anchor .trp-current-language-item__wrapper {
    background: transparent !important;
    border: 1px solid transparent !important;
    border-radius: 6px !important;
    padding: 6px 10px !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
}

/* Overlay — görünen ve etkileşimli buton */
.lang-switcher .trp-shortcode-overlay .trp-current-language-item__wrapper {
    background: rgba(255, 255, 255, 0.02) !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    border-radius: 6px !important;
    padding: 6px 10px !important;
    transition: all 0.25s ease !important;
    cursor: pointer;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    box-sizing: border-box !important;
}
.lang-switcher .trp-shortcode-overlay .trp-current-language-item__wrapper:hover,
.lang-switcher .trp-shortcode-overlay .trp-current-language-item__wrapper[aria-expanded="true"] {
    background: rgba(201, 169, 110, 0.1) !important;
    border-color: rgba(201, 169, 110, 0.4) !important;
}

/* Each language item (in anchor + dropdown) */
.lang-switcher .trp-language-item {
    background: transparent !important;
    color: #d8d8d8 !important;
    padding: 4px 6px !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    letter-spacing: 0.02em !important;
    border-radius: 4px !important;
    transition: color 0.2s ease, background 0.2s ease !important;
}
.lang-switcher .trp-language-item__current,
.lang-switcher .trp-shortcode-anchor .trp-language-item {
    color: var(--text-primary) !important;
    padding: 0 !important;
}
.lang-switcher .trp-current-language-item__wrapper:hover .trp-language-item {
    color: #c9a96e !important;
}

/* Flag */
.lang-switcher .trp-flag-image {
    width: 18px !important;
    height: 14px !important;
    border-radius: 2px !important;
    object-fit: cover !important;
    display: inline-block !important;
    flex-shrink: 0;
    box-shadow: 0 1px 2px rgba(0,0,0,0.3);
}

/* Caret arrow */
.lang-switcher .trp-shortcode-arrow {
    width: 12px !important;
    height: 12px !important;
    margin-left: 4px;
    color: #888 !important;
    transition: transform 0.25s ease, color 0.25s ease !important;
}
.lang-switcher .trp-shortcode-arrow path { stroke: currentColor !important; }
.lang-switcher .trp-current-language-item__wrapper:hover .trp-shortcode-arrow {
    color: #c9a96e !important;
    transform: rotate(180deg);
}

/* Anchor (in-flow, inert) — görünmez yap, sadece layout için */
.lang-switcher .trp-shortcode-anchor {
    visibility: hidden !important;
    pointer-events: none !important;
}

/* Dropdown list — KAPALIYKEN tam görünmez (hidden attribute respect) */
.lang-switcher .trp-switcher-dropdown-list[hidden],
.lang-switcher .trp-switcher-dropdown-list[inert] {
    display: none !important;
}

/* Dropdown list — AÇIKKEN — sadece görsel override, TP pozisyonuna dokunma */
.lang-switcher .trp-switcher-dropdown-list {
    background: #18110a !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: 8px !important;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.6),
                0 4px 12px rgba(0, 0, 0, 0.3) !important;
    padding: 6px !important;
    min-width: 160px;
    z-index: 1100;
    margin-top: 6px !important;
}
/* Combobox border-radius temiz */
.lang-switcher .trp-shortcode-overlay .trp-current-language-item__wrapper {
    border-radius: 6px !important;
}
.lang-switcher .trp-switcher-dropdown-list .trp-language-item {
    background: transparent !important;
    padding: 8px 12px !important;
    border-radius: 5px !important;
    color: #d8d8d8 !important;
    text-decoration: none !important;
}
.lang-switcher .trp-switcher-dropdown-list .trp-language-item:hover {
    background: rgba(201, 169, 110, 0.12) !important;
    color: #c9a96e !important;
}
.lang-switcher .trp-language-item-name {
    font-size: 12px !important;
    font-weight: 500 !important;
    letter-spacing: 0.03em !important;
    line-height: 1.2 !important;
}

/* Mobile toggle */
.mobile-toggle {
    display: none;
    flex-direction: column; justify-content: center; align-items: center;
    gap: 5px;
}
.mobile-toggle span {
    display: block; width: 22px; height: 2px;
    background: var(--text-primary);
    border-radius: 2px;
    transition: all var(--transition);
}
.mobile-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.mobile-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.mobile-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* === Mobile menu panel === */
.mobile-menu-panel {
    position: fixed; top: 0; right: -100%;
    width: min(90vw, 380px); height: 100vh;
    /* Açık ton sadece logo bölgesinde (üst 10-15%), kalan kısım koyu */
    background: linear-gradient(180deg,
        rgba(232, 226, 214, 0.98) 0%,
        rgba(186, 158, 120, 0.97) 5%,
        rgba(108, 74, 38, 0.97) 12%,
        rgba(50, 33, 17, 0.98) 22%,
        rgba(31, 21, 11, 0.99) 42%,
        rgba(18, 12, 7, 1) 100%);
    border-left: 1px solid rgba(201, 169, 110, 0.25);
    padding: 0;
    transition: right 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    overflow-y: auto; z-index: 1100;
    box-shadow: var(--shadow-lg);
    display: flex; flex-direction: column;
}
.mobile-menu-panel.open { right: 0; }
.mobile-menu-head {
    display: flex; align-items: center; justify-content: space-between;
    padding: 20px 24px;
    border-bottom: 1px solid rgba(40, 30, 20, 0.18);
    flex-shrink: 0;
}
.mobile-menu-brand {
    display: inline-flex;
    align-items: center;
    flex: 1 1 auto;
    min-width: 0;
    max-width: calc(100% - 70px);
    overflow: hidden;
}
.mobile-menu-brand img {
    max-height: 32px;
    width: auto;
    max-width: 100%;
    object-fit: contain;
}
.mobile-close {
    background: rgba(30, 22, 14, 0.12);
    border: 1px solid rgba(30, 22, 14, 0.25);
    color: rgba(25, 18, 10, 0.92);
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
    position: relative;
    overflow: hidden;
    padding: 0;
    flex-shrink: 0;
    margin-left: 12px;
}
.mobile-close::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at center, var(--accent) 0%, transparent 70%);
    opacity: 0;
    transition: opacity 0.3s ease;
    border-radius: 50%;
}
.mobile-close svg {
    position: relative;
    z-index: 1;
    width: 22px;
    height: 22px;
    stroke-width: 2.5;
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.mobile-close:hover {
    background: var(--accent);
    border-color: var(--accent);
    color: #000;
    transform: rotate(90deg);
    box-shadow: 0 4px 20px rgba(201, 169, 110, 0.4);
}
.mobile-close:hover::before { opacity: 0.15; }
.mobile-close:active { transform: rotate(90deg) scale(0.92); }
.mobile-close:focus-visible {
    outline: 2px solid var(--accent);
    outline-offset: 3px;
}
.mobile-menu-list { list-style: none; margin: 0; padding: 16px 0; flex: 1; }
.mobile-menu-list li { border-bottom: 1px solid rgba(201, 169, 110, 0.08); }
.mobile-menu-list li:last-child { border-bottom: none; }
.mobile-menu-list a {
    display: block; padding: 14px 24px;
    color: rgba(245, 240, 230, 0.92); font-size: 15px; font-weight: 600;
    text-transform: uppercase; letter-spacing: 0.05em;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.4);
    transition: all var(--transition);
}
.mobile-menu-list a:hover, .mobile-menu-list .current-menu-item > a {
    color: var(--accent); padding-left: 32px; background: rgba(201, 169, 110, 0.1);
}
.mobile-menu-list .sub-menu {
    list-style: none; padding: 0; margin: 0;
    background: rgba(0, 0, 0, 0.3);
}
.mobile-menu-list .sub-menu a {
    padding: 10px 24px 10px 40px;
    font-size: 13px;
    text-transform: none;
    color: var(--text-secondary);
}
.mobile-menu-foot {
    padding: 20px 24px;
    border-top: 1px solid rgba(201, 169, 110, 0.12);
    background: rgba(10, 10, 10, 0.5);
    display: flex; flex-direction: column; gap: 12px;
    flex-shrink: 0;
}
.mobile-foot-link {
    display: inline-flex; align-items: center; gap: 8px;
    color: var(--text-secondary); font-size: 13px;
    text-decoration: none;
}
.mobile-foot-link svg { color: var(--accent); }
.mobile-foot-link:hover { color: var(--accent); }
.mobile-lang { display: inline-flex; }

/* Mobile menu overlay backdrop — SADECE panel'in dışındaki alanı kaplar,
   yoksa z-index:-1 + parent stacking context kuralı yüzünden panel'in
   kendi gradient'ini üzerinden çizer ve karartırdı. */
.mobile-menu-panel.open::before {
    content: '';
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: min(90vw, 380px);
    background: rgba(0, 0, 0, 0.65);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    z-index: 1099;
}

/* Responsive */
@media (max-width: 1024px) {
    .main-navigation { display: none; }
    .mobile-toggle { display: flex; }
    .topbar-tagline { display: none; }
    .header-inner {
        min-height: 140px;
        padding: 12px 20px;
        gap: 16px;
    }
    /* Mobil şeffaf header'da logo daha büyük durur */
    .site-branding .custom-logo, .site-branding img { max-height: 120px; }
    .site-header.scrolled .site-branding .custom-logo,
    .site-header.scrolled .site-branding img { max-height: 78px; }
    .site-header.scrolled .header-inner { min-height: 96px; }
    /* Mobile/tablet'te .site-branding logo etrafına büzülür ki ::before glow
       gerçekten logonun ARKASINDA hizalansın (ortada açık leke kalmasın) */
    .site-branding {
        flex: 0 0 auto;
        justify-content: flex-start;
    }
    /* Logo backdrop mobile'da daha küçük — sığdırılmış glow */
    .site-branding::before {
        inset: -22px -34px;
        filter: blur(10px);
    }
}
/* Mobile menü içindeki dil switcher bloğu (İletişim'in altında) */
.mobile-menu-lang {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 18px 24px;
    border-bottom: 1px solid rgba(201, 169, 110, 0.12);
    background: rgba(201, 169, 110, 0.04);
}
.mobile-menu-lang-label {
    color: rgba(220, 210, 195, 0.85);
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}
.lang-switcher--inmenu {
    display: inline-flex;
    align-items: center;
}
/* Tabletten küçük ekranlarda topbar tamamen gizli — header top:0 sabit */
@media (max-width: 1024px) {
    .topbar { display: none; }
    body.is-front-page .site-header,
    body.is-front-page .site-header.scrolled { top: 0; }
}
@media (max-width: 768px) {
    .header-inner {
        min-height: 118px;
        padding: 10px 16px;
        gap: 10px;
    }
    .site-branding .custom-logo, .site-branding img { max-height: 100px; }
    .site-header.scrolled .site-branding .custom-logo,
    .site-header.scrolled .site-branding img { max-height: 64px; }
    .site-header.scrolled .header-inner { min-height: 84px; }
    .tool-btn { width: 38px; height: 38px; }
    .header-tools { gap: 2px; }
    /* Mobile header — front-page üstte tamamen şeffaf (desktop ile aynı) */
    body.is-front-page .site-header:not(.scrolled) {
        background: transparent;
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
        border-bottom-color: transparent;
        box-shadow: none;
    }
    /* Mobile scroll edildiğinde — dikey değil yatay gradient kısa olduğu için
       daha doğal görünür şekilde aynı açık→koyu gradient'i koru */
    .site-header.scrolled,
    body:not(.is-front-page) .site-header {
        background: linear-gradient(90deg,
            rgba(232, 226, 214, 0.96) 0%,
            rgba(180, 168, 148, 0.95) 22%,
            rgba(100, 90, 74, 0.96) 50%,
            rgba(46, 34, 19, 0.97) 78%,
            rgba(32, 23, 12, 0.98) 100%);
        backdrop-filter: blur(18px) saturate(170%);
        -webkit-backdrop-filter: blur(18px) saturate(170%);
        border-bottom: 1px solid rgba(201, 169, 110, 0.28);
    }
}
@media (max-width: 480px) {
    .header-inner { padding: 8px 14px; min-height: 104px; }
    .site-branding .custom-logo, .site-branding img { max-height: 88px; }
    .site-header.scrolled .site-branding .custom-logo,
    .site-header.scrolled .site-branding img { max-height: 56px; }
    .site-header.scrolled .header-inner { min-height: 74px; }
    .header-account { display: none; }
    .tool-btn { width: 36px; height: 36px; }
    .tool-btn svg { width: 18px; height: 18px; }
}

/* ============================================================
   BUTTONS
   ============================================================ */
.btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    padding: 14px 32px;
    font-size: 14px; font-weight: 600;
    text-transform: uppercase; letter-spacing: 0.05em;
    border-radius: var(--radius-sm);
    border: 1px solid transparent;
    transition: all var(--transition);
    cursor: pointer; text-decoration: none;
    line-height: 1;
}
.btn-primary { background: var(--accent); color: #000; }
.btn-primary:hover { background: var(--accent-hover); color: #000; transform: translateY(-2px); box-shadow: var(--shadow-md); }
.btn-outline { background: transparent; color: var(--text-primary); border-color: var(--text-primary); }
.btn-outline:hover { background: var(--text-primary); color: var(--bg-primary); }
.btn-sm { padding: 10px 20px; font-size: 12px; }

/* ============================================================
   HERO (Front Page) — Professional animated dark hero
   ============================================================ */
.hero {
    position: relative;
    min-height: 100vh;
    display: flex;
    align-items: center;
    background:
        radial-gradient(1200px 600px at 80% 10%, rgba(201,169,110,0.10), transparent 60%),
        radial-gradient(900px 500px at 10% 90%, rgba(201,169,110,0.06), transparent 65%),
        linear-gradient(135deg, #181009 0%, #0c0703 55%, #070402 100%);
    background-size: cover;
    background-position: center;
    color: var(--text-primary);
    padding: 180px 0 100px;
    overflow: hidden;
    isolation: isolate;
}

/* === Hero video arka plan === */
.hero-video-bg {
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 100%;
    object-fit: cover;
    object-position: center;
    z-index: 0;
    pointer-events: none;
    /* Hafif desature ve karart — okunabilirlik için */
    filter: brightness(0.65) saturate(0.85) contrast(1.05);
}
.hero--video .hero-overlay {
    background:
        linear-gradient(180deg, rgba(0,0,0,0.45) 0%, rgba(10,10,10,0.6) 50%, rgba(5,5,5,0.92) 100%),
        linear-gradient(90deg, rgba(0,0,0,0.55) 0%, rgba(0,0,0,0.15) 70%, rgba(0,0,0,0) 100%);
}
/* Hero--video varken ken burns image animasyonunu kapat (video kendisi hareket ediyor) */
.hero--video.hero--has-image::before { display: none; }
/* Reduced motion */
.hero--has-image::before {
    content: "";
    position: absolute; inset: 0;
    background: inherit;
    background-image: inherit;
    background-size: cover;
    background-position: center;
    transform: scale(1.08);
    animation: heroKenBurns 22s ease-in-out infinite alternate;
    z-index: 0;
    opacity: 0.55;
}
.hero-overlay {
    position: absolute; inset: 0;
    background:
        linear-gradient(180deg, rgba(10,10,10,0.55) 0%, rgba(10,10,10,0.85) 70%, rgba(5,5,5,0.96) 100%),
        linear-gradient(90deg, rgba(10,10,10,0.7) 0%, rgba(10,10,10,0.15) 60%, rgba(10,10,10,0) 100%);
    z-index: 1;
}

/* Decorative grid — sadece görsel hero'da göster, video hero'da gizle */
.hero-bg-grid {
    position: absolute; inset: 0;
    background-image:
        linear-gradient(rgba(255,255,255,0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,0.04) 1px, transparent 1px);
    background-size: 64px 64px;
    mask-image: radial-gradient(ellipse 70% 60% at 50% 40%, #000 40%, transparent 80%);
    -webkit-mask-image: radial-gradient(ellipse 70% 60% at 50% 40%, #000 40%, transparent 80%);
    z-index: 1;
    opacity: 0.7;
    pointer-events: none;
}
/* Video hero'da grid + glow + shapes gizle — video netliği bozulmasın */
.hero--video .hero-bg-grid,
.hero--video .hero-bg-glow,
.hero--video .hero-shapes { display: none !important; }
/* Video filter — daha açık, daha net görünür */
.hero--video .hero-video-bg {
    filter: brightness(0.9) saturate(1) contrast(1.05);
}
.hero--video .hero-overlay {
    background:
        /* SOLDAN sağa: solda metin için koyu-sıcak katman, sağda şeffaf → video net görünür */
        linear-gradient(90deg,
            rgba(20,18,14,0.86) 0%,
            rgba(20,18,14,0.70) 32%,
            rgba(20,18,14,0.40) 56%,
            rgba(20,18,14,0.12) 78%,
            rgba(20,18,14,0) 92%),
        /* hafif üst/alt derinlik (orta-sağ şeffaf kalır) */
        linear-gradient(180deg, rgba(0,0,0,0.28) 0%, rgba(0,0,0,0) 30%, rgba(0,0,0,0) 70%, rgba(0,0,0,0.45) 100%);
}

/* Soft glows */
.hero-bg-glow {
    position: absolute;
    width: 520px; height: 520px;
    border-radius: 50%;
    filter: blur(110px);
    z-index: 1;
    pointer-events: none;
    will-change: transform;
}
.hero-bg-glow--1 {
    top: -120px; right: -140px;
    background: radial-gradient(circle, rgba(201,169,110,0.35), transparent 70%);
    animation: heroGlowFloat 14s ease-in-out infinite alternate;
}
.hero-bg-glow--2 {
    bottom: -160px; left: -120px;
    background: radial-gradient(circle, rgba(120,90,40,0.30), transparent 70%);
    animation: heroGlowFloat 18s ease-in-out -6s infinite alternate-reverse;
}

/* Floating geometric shapes */
.hero-shapes { position: absolute; inset: 0; z-index: 1; pointer-events: none; }
.hero-shape {
    position: absolute;
    display: block;
    border: 1px solid rgba(201,169,110,0.25);
    border-radius: 4px;
    opacity: 0.6;
}
.hero-shape--1 {
    width: 140px; height: 140px;
    top: 18%; right: 8%;
    transform: rotate(18deg);
    animation: heroFloat 12s ease-in-out infinite;
}
.hero-shape--2 {
    width: 80px; height: 80px;
    bottom: 22%; right: 22%;
    border-color: rgba(201,169,110,0.18);
    border-radius: 50%;
    animation: heroFloat 9s ease-in-out -3s infinite reverse;
}
.hero-shape--3 {
    width: 60px; height: 60px;
    top: 26%; left: 6%;
    border-color: rgba(245,245,245,0.10);
    transform: rotate(45deg);
    animation: heroFloat 15s ease-in-out -5s infinite;
}

/* Content — SOLA HİZALI (header logosuyla aynı hizada) */
.hero-content {
    position: relative;
    z-index: 2;
    text-align: left;
    /* .container'dan max-width:1280px + padding:0 24px miras alır → logo ile birebir hiza */
}
.hero-actions { justify-content: flex-start; }
.hero-stats { justify-content: flex-start; }
.hero-title { text-align: left; }
.hero-subtitle { margin-left: 0; margin-right: 0; }

/* Eyebrow — belirgin pill rozet */
.hero-eyebrow {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    gap: 14px;
    font-size: 13px;
    letter-spacing: 0.32em;
    color: var(--accent);
    margin: 0 0 32px;
    padding: 10px 24px;
    font-weight: 700;
    text-transform: uppercase;
    background: rgba(0, 0, 0, 0.4);
    border: 1px solid rgba(201, 169, 110, 0.4);
    border-radius: 999px;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.6);
    box-shadow:
        0 4px 16px rgba(0, 0, 0, 0.3),
        inset 0 1px 0 rgba(201, 169, 110, 0.1);
    opacity: 0;
    transform: translateY(20px);
    animation: heroFadeUp 0.8s 0.15s ease-out forwards;
}
.hero-eyebrow-line {
    display: inline-block;
    width: 28px; height: 1.5px;
    background: linear-gradient(90deg, transparent, var(--accent));
    transform-origin: left;
    animation: heroLineGrow 1s 0.25s ease-out backwards;
}
/* Line sağda da olsun — sembolik şıklık */
.hero-eyebrow::after {
    content: '';
    display: inline-block;
    width: 28px; height: 1.5px;
    background: linear-gradient(90deg, var(--accent), transparent);
}

/* Title */
/* "30 YIL TECRÜBE" etiketi gizlendi (kullanıcı isteği) — geri almak için bu satırı sil */
.hero-eyebrow { display: none !important; }

.hero-title {
    font-size: clamp(2rem, 4.4vw, 3.5rem);
    line-height: 1.1;
    margin: 0 0 28px;
    font-weight: 700;
    letter-spacing: -0.025em;
    max-width: 860px;
}
.hero-title-line {
    display: block;
    opacity: 0;
    transform: translateY(24px);
    animation: heroFadeUp 0.9s ease-out forwards;
}
.hero-title-line:nth-child(1) { animation-delay: 0.3s; }
.hero-title-line:nth-child(2) { animation-delay: 0.55s; }
.hero-title-accent {
    font-style: normal;
    background: linear-gradient(135deg, var(--accent) 0%, #f0d9a3 50%, var(--accent) 100%);
    background-size: 200% auto;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    animation: heroShimmer 4s linear infinite;
}

/* Typewriter line — sola hizalı */
.hero-title-line--type {
    display: flex;
    align-items: baseline;
    justify-content: flex-start;
    min-height: 1.15em;
    color: var(--accent);
    margin-top: 0.1em;
    text-align: left;
}
.hero-typer {
    display: inline-block;
    white-space: pre;
    background: linear-gradient(135deg, var(--accent) 0%, #f0d9a3 50%, var(--accent) 100%);
    background-size: 200% auto;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    animation: heroShimmer 5s linear infinite;
}
.hero-caret {
    display: inline-block;
    width: 3px;
    height: 0.95em;
    margin-left: 6px;
    background: var(--accent);
    border-radius: 1px;
    transform: translateY(0.1em);
    animation: heroCaretBlink 0.9s steps(2, start) infinite;
}

@keyframes heroCaretBlink {
    to { opacity: 0; }
}

/* Subtitle — ortalı */
.hero-subtitle {
    font-size: clamp(0.95rem, 1.15vw, 1.1rem);
    line-height: 1.7;
    color: var(--text-secondary);
    max-width: 560px;
    margin: 0 0 44px;
    text-align: left;
    opacity: 0;
    transform: translateY(20px);
    animation: heroFadeUp 0.9s 0.6s ease-out forwards;
}

/* Actions */
.hero-actions {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
    opacity: 0;
    transform: translateY(20px);
    animation: heroFadeUp 0.9s 0.75s ease-out forwards;
}

/* Hero primary CTA — refined, no arrow */
.btn-hero {
    position: relative;
    overflow: hidden;
    padding: 16px 36px;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.12em;
    color: #0c0703;
    background: linear-gradient(180deg, #d6b87a 0%, var(--accent) 55%, #b69458 100%);
    border: 1px solid rgba(255,255,255,0.18);
    border-radius: var(--radius-sm);
    box-shadow:
        0 1px 0 rgba(255,255,255,0.35) inset,
        0 -1px 0 rgba(0,0,0,0.18) inset,
        0 10px 24px -10px rgba(201,169,110,0.45),
        0 2px 0 rgba(0,0,0,0.3);
    transition: transform 0.35s cubic-bezier(0.22,1,0.36,1),
                box-shadow 0.35s ease,
                color 0.35s ease;
    isolation: isolate;
}
.btn-hero .btn-label {
    position: relative;
    z-index: 2;
}
.btn-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, #e1c388 0%, #c9a96e 50%, #ac8b50 100%);
    opacity: 0;
    transition: opacity 0.35s ease;
    z-index: 1;
}
.btn-hero::after {
    content: "";
    position: absolute;
    top: 0; left: -120%;
    width: 60%; height: 100%;
    background: linear-gradient(120deg, transparent 0%, rgba(255,255,255,0.5) 50%, transparent 100%);
    transform: skewX(-20deg);
    transition: left 0.8s cubic-bezier(0.22,1,0.36,1);
    z-index: 1;
    pointer-events: none;
}
.btn-hero:hover {
    color: #0c0703;
    transform: translateY(-2px);
    box-shadow:
        0 1px 0 rgba(255,255,255,0.45) inset,
        0 -1px 0 rgba(0,0,0,0.22) inset,
        0 18px 36px -12px rgba(201,169,110,0.55),
        0 3px 0 rgba(0,0,0,0.3);
}
.btn-hero:hover::before { opacity: 1; }
.btn-hero:hover::after { left: 120%; }
.btn-hero:active {
    transform: translateY(0);
    box-shadow:
        0 1px 0 rgba(255,255,255,0.25) inset,
        0 6px 16px -8px rgba(201,169,110,0.4);
}
.btn-hero:focus-visible {
    outline: 2px solid var(--accent);
    outline-offset: 3px;
}

/* Hero ghost CTA — refined outline */
.btn-hero-ghost {
    padding: 16px 32px;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.12em;
    color: var(--text-primary);
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.18);
    border-radius: var(--radius-sm);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    transition: all 0.3s ease;
}
.btn-hero-ghost:hover {
    color: var(--accent);
    background: rgba(201,169,110,0.08);
    border-color: rgba(201,169,110,0.55);
    transform: translateY(-2px);
}

/* Stats — ortalı */
.hero-stats {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 56px;
    margin: 80px 0 0;
    padding-top: 36px;
    border-top: 1px solid rgba(255,255,255,0.08);
    max-width: 720px;
    text-align: left;
    opacity: 0;
    transform: translateY(20px);
    animation: heroFadeUp 0.9s 0.95s ease-out forwards;
}
.hero-stat { display: flex; flex-direction: column; align-items: center; gap: 8px; }
.hero-stat-num {
    font-size: clamp(1.5rem, 2.4vw, 2rem);
    font-weight: 700;
    line-height: 1;
    color: var(--text-primary);
    letter-spacing: -0.02em;
}
.hero-stat-suffix {
    color: var(--accent);
    margin-left: 2px;
}
.hero-stat-label {
    font-size: 11px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--text-muted);
    font-weight: 500;
}

/* Hero animations */
@keyframes heroFadeUp {
    to { opacity: 1; transform: translateY(0); }
}
@keyframes heroLineGrow {
    from { transform: scaleX(0); opacity: 0; }
    to   { transform: scaleX(1); opacity: 1; }
}
@keyframes heroShimmer {
    0%   { background-position: 0% 50%; }
    100% { background-position: 200% 50%; }
}
@keyframes heroPulse {
    0%   { box-shadow: 0 0 0 0 rgba(201,169,110,0.55); }
    70%  { box-shadow: 0 0 0 12px rgba(201,169,110,0); }
    100% { box-shadow: 0 0 0 0 rgba(201,169,110,0); }
}
@keyframes heroFloat {
    0%, 100% { transform: translate(0, 0) rotate(var(--rot, 0deg)); }
    50%      { transform: translate(10px, -18px) rotate(calc(var(--rot, 0deg) + 6deg)); }
}
.hero-shape--1 { --rot: 18deg; }
.hero-shape--3 { --rot: 45deg; }
@keyframes heroGlowFloat {
    0%   { transform: translate(0, 0) scale(1); opacity: 0.9; }
    100% { transform: translate(-40px, 30px) scale(1.15); opacity: 0.7; }
}
@keyframes heroKenBurns {
    0%   { transform: scale(1.08) translate(0, 0); }
    100% { transform: scale(1.18) translate(-1.5%, -1.5%); }
}

/* ============================================================
   SECTIONS
   ============================================================ */
.section { padding: 96px 0; }
.section-services { background: var(--bg-secondary); }
.section-categories { background: var(--bg-primary); }
.section-products { background: var(--bg-secondary); }
.section-why-us { background: var(--bg-primary); }
.section-cta {
    background: linear-gradient(135deg, var(--accent) 0%, var(--accent-dark) 100%);
    color: #000; text-align: center; padding: 80px 0;
}
.section-cta h2 { color: #000; font-size: clamp(2rem, 4vw, 3rem); margin-bottom: 12px; }
.section-cta p { color: #1c140c; font-size: 1.1rem; margin-bottom: 28px; }
.section-cta .btn-primary { background: #000; color: var(--accent); border-color: #000; }
.section-cta .btn-primary:hover { background: var(--bg-tertiary); color: var(--accent); }

.section-header {
    text-align: center; margin-bottom: 56px;
}
.section-title { margin-bottom: 12px; }
.section-subtitle {
    color: var(--text-secondary); font-size: 1.1rem;
    max-width: 600px; margin: 0 auto;
}

/* Services Grid */
.services-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 24px;
}
.service-card {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    padding: 32px;
    transition: all var(--transition);
    text-align: left;
}
.service-card:hover {
    border-color: var(--accent);
    transform: translateY(-4px);
    box-shadow: var(--shadow-md);
}
.service-icon {
    color: var(--accent); margin-bottom: 16px;
    width: 56px; height: 56px;
    background: rgba(201, 169, 110, 0.1);
    border-radius: var(--radius-md);
    display: flex; align-items: center; justify-content: center;
}
.service-title { margin-bottom: 8px; font-size: 1.25rem; }
.service-card p { color: var(--text-secondary); margin: 0; }

/* Categories Grid */
.categories-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 20px;
}
.category-card {
    position: relative; aspect-ratio: 4/3;
    background: var(--bg-card) center/cover no-repeat;
    border-radius: var(--radius-md);
    overflow: hidden;
    display: block;
    transition: transform var(--transition);
}
.category-card::before {
    content: ''; position: absolute; inset: 0;
    background: linear-gradient(180deg, transparent 40%, rgba(0,0,0,0.85) 100%);
}
.category-card:hover { transform: scale(1.02); }
.category-overlay {
    position: absolute; bottom: 0; left: 0; right: 0;
    padding: 24px; z-index: 1;
    color: #fff;
}
.category-name { color: #fff; margin: 0 0 4px; font-size: 1.3rem; }
.category-count { color: var(--accent); font-size: 14px; font-weight: 500; }

/* Products Grid (front page + shop) */
.products-grid,
.woocommerce ul.products,
ul.products {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important;
    gap: 20px !important;
    list-style: none;
    padding: 0;
    margin: 0;
}
/* On wide screens cap columns to 4 so cards don't get tiny */
@media (min-width: 1100px) {
    .woocommerce ul.products,
    ul.products,
    .products-grid {
        grid-template-columns: repeat(4, 1fr) !important;
    }
}
@media (max-width: 600px) {
    .woocommerce ul.products,
    ul.products,
    .products-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 14px !important;
    }
}
.product-card,
.woocommerce ul.products li.product,
ul.products li.product {
    background: var(--bg-card) !important;
    border: 1px solid var(--border) !important;
    border-radius: var(--radius-md) !important;
    overflow: hidden !important;
    transition: all var(--transition) !important;
    width: auto !important; margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
}
.product-card:hover,
.woocommerce ul.products li.product:hover {
    border-color: var(--accent) !important;
    transform: translateY(-4px);
    box-shadow: var(--shadow-md);
}
.product-thumb, .woocommerce ul.products li.product a img {
    width: 100%; aspect-ratio: 1/1; object-fit: cover;
    margin: 0 !important;
    background: var(--bg-tertiary);
}
.product-info { padding: 12px 14px; }
.product-name {
    font-size: 0.95rem; margin: 0 0 6px;
    line-height: 1.3;
}
.product-name a { color: var(--text-primary); }
.product-name a:hover { color: var(--accent); }
.product-price,
.woocommerce ul.products li.product .price,
.woocommerce .product .price {
    color: var(--accent) !important;
    font-weight: 700 !important; font-size: 1rem !important;
    margin: 0 0 10px !important;
}
.call-for-price { color: var(--text-secondary); font-style: italic; font-size: 0.85rem; }

/* WC product loop tweaks */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart {
    background: var(--accent) !important; color: #000 !important;
    border: none !important; padding: 8px 14px !important;
    border-radius: var(--radius-sm) !important;
    font-weight: 600 !important; text-transform: uppercase !important;
    font-size: 11px !important; letter-spacing: 0.05em !important;
    margin: 8px 14px 14px !important;
    transition: background var(--transition) !important;
}
.woocommerce ul.products li.product .button:hover { background: var(--accent-hover) !important; }
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product .woocommerce-loop-product__title {
    color: var(--text-primary) !important;
    font-size: 0.95rem !important;
    padding: 12px 14px 0 !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
}
.woocommerce ul.products li.product .price { padding: 0 14px !important; font-size: 1rem !important; }

/* Features Grid (Why Us) */
.features-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 24px;
}
.feature-item {
    padding: 28px;
    background: var(--bg-card);
    border-left: 3px solid var(--accent);
    border-radius: var(--radius-sm);
}
.feature-num {
    display: inline-block; font-size: 1.1rem; font-weight: 700;
    color: var(--accent); margin-bottom: 8px; letter-spacing: 0.05em;
}
.feature-item h4 { margin: 0 0 8px; font-size: 1.15rem; }
.feature-item p { color: var(--text-secondary); margin: 0; font-size: 0.95rem; }

/* ============================================================
   PAGE (default page template)
   ============================================================ */
.page-hero {
    position: relative;
    background-size: cover; background-position: center;
    background-color: #231a0f;
    padding: 120px 0 100px;
    margin-bottom: 0;
}
.page-hero::before {
    content: ''; position: absolute; inset: 0;
    background:
        radial-gradient(1200px 600px at 80% 10%, rgba(201,169,110,0.08), transparent 60%),
        linear-gradient(180deg, rgba(24,24,24,0.4) 0%, rgba(31,31,31,0.85) 100%);
}
.page-hero .container { position: relative; z-index: 1; }
.page-hero-title { color: #fff; margin: 0; font-size: clamp(2.5rem, 5vw, 4rem); }
.page-header-plain {
    padding: 80px 0 40px;
    background: linear-gradient(135deg, var(--bg-secondary), var(--bg-primary));
    border-bottom: 1px solid var(--border);
}
.page-header-plain .page-title { margin: 0; }
.page-article { padding: 60px 0 96px; }
.page-article .container { max-width: 820px; }
.entry-content {
    color: var(--text-secondary); font-size: 1.05rem; line-height: 1.8;
}
.entry-content h2 {
    color: var(--text-primary);
    margin: 2em 0 0.6em;
    padding-bottom: 0.4em;
    border-bottom: 1px solid var(--border);
}
.entry-content h3 { color: var(--text-primary); margin-top: 1.5em; }
.entry-content a { color: var(--accent); border-bottom: 1px solid var(--accent); }
.entry-content a.btn { border-bottom: none; }
.entry-content a.btn-primary { color: #000; }
.entry-content a.btn-primary:hover { color: #000; }
.entry-content a.btn-outline { color: var(--text-primary); }
.entry-content a.btn-outline:hover { color: var(--bg-primary); }
.entry-content img { border-radius: var(--radius-md); margin: 1.5em 0; }
.entry-content blockquote {
    border-left: 3px solid var(--accent);
    background: var(--bg-card);
    padding: 20px 24px; margin: 1.5em 0;
    border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
    font-style: italic;
}
.entry-content ul, .entry-content ol { padding-left: 1.5em; margin-bottom: 1em; }
.entry-content li { margin-bottom: 0.5em; }

/* Posts grid (blog/archive) */
.posts-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 24px;
    margin: 40px 0;
}
.post-card {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    overflow: hidden;
    transition: all var(--transition);
}
.post-card:hover { border-color: var(--accent); transform: translateY(-4px); box-shadow: var(--shadow-md); }
.post-card .post-thumb img { width: 100%; aspect-ratio: 16/10; object-fit: cover; }
.post-card-body { padding: 20px; }
.post-title { margin: 0 0 8px; font-size: 1.2rem; }
.post-title a { color: var(--text-primary); }
.post-title a:hover { color: var(--accent); }
.post-meta { color: var(--text-muted); font-size: 13px; margin-bottom: 12px; }
.post-excerpt { color: var(--text-secondary); margin-bottom: 16px; font-size: 0.95rem; }

/* Single post */
.single-post-wrap { padding: 60px 0 96px; max-width: 800px; }
.single-post .entry-header { margin-bottom: 32px; }
.single-post .entry-title { margin-bottom: 12px; }
.single-post .entry-meta { color: var(--text-muted); font-size: 14px; }
.entry-thumbnail { margin: 24px 0; border-radius: var(--radius-md); overflow: hidden; }
.entry-footer { padding-top: 32px; margin-top: 40px; border-top: 1px solid var(--border); color: var(--text-secondary); font-size: 14px; }

/* 404 */
.error-404 { padding: 120px 0; text-align: center; min-height: 60vh; display: flex; align-items: center; }
.error-content { width: 100%; }
.error-code {
    font-size: clamp(6rem, 20vw, 10rem); color: var(--accent);
    line-height: 1; margin: 0 0 16px;
}
.error-title { margin-bottom: 16px; }
.error-message { color: var(--text-secondary); margin-bottom: 32px; }

/* Pagination */
.navigation.pagination {
    display: flex; justify-content: center; gap: 8px; margin: 48px 0;
}
.navigation.pagination .nav-links { display: flex; gap: 8px; }
.navigation.pagination a, .navigation.pagination span {
    padding: 10px 16px; border-radius: var(--radius-sm);
    background: var(--bg-card); color: var(--text-primary);
    text-decoration: none; min-width: 44px; text-align: center;
    border: 1px solid var(--border);
    transition: all var(--transition);
}
.navigation.pagination a:hover { background: var(--accent); color: #000; border-color: var(--accent); }
.navigation.pagination .current { background: var(--accent); color: #000; border-color: var(--accent); }

/* ============================================================
   WOOCOMMERCE OVERRIDES
   ============================================================ */
/* .wc-main sits on the same element as .container — use long-form padding
   so it does NOT reset the horizontal padding coming from .container. */
.wc-main {
    padding-top: 56px;
    padding-bottom: 80px;
    max-width: 1200px;
}
@media (max-width: 768px) {
    .wc-main {
        padding-top: 32px;
        padding-bottom: 56px;
    }
}
/* Shop archive: tighten gutter at the very edges, but keep breathing room */
@media (max-width: 480px) {
    .wc-main {
        padding-left: 16px;
        padding-right: 16px;
    }
}
.woocommerce { color: var(--text-primary); }
.woocommerce .page-title,
.woocommerce-products-header__title { color: var(--text-primary); margin-bottom: 16px; }
.woocommerce .woocommerce-result-count { color: var(--text-muted); }
.woocommerce-ordering select,
.woocommerce form .form-row select {
    background: var(--bg-card) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border) !important;
    padding: 10px 14px !important;
    border-radius: var(--radius-sm) !important;
    font-family: inherit !important;
}
/* === WooCommerce notices (sepete eklendi, vb.) — icon + text + button hizalı === */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-notice,
.woocommerce-noreviews,
.wc-block-components-notice-banner {
    background: var(--bg-card) !important;
    color: var(--text-primary) !important;
    border-top: 3px solid var(--accent) !important;
    border-left: none !important;
    padding: 18px 24px 18px 56px !important;
    border-radius: var(--radius-sm) !important;
    margin: 0 0 24px !important;
    list-style: none !important;
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    position: relative !important;
    line-height: 1.5 !important;
    min-height: 56px !important;
}
.woocommerce-error { border-top-color: #d63638 !important; }

/* Icon (pseudo) — absolutely positioned, vertically centered */
.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before,
.woocommerce-notice::before {
    color: var(--accent) !important;
    position: absolute !important;
    top: 50% !important;
    left: 20px !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    font-size: 18px !important;
    line-height: 1 !important;
}
.woocommerce-error::before { color: #d63638 !important; }

/* Sepetim / devam et butonu — sağa yaslı */
.woocommerce .button.wc-forward,
.woocommerce-message .wc-forward,
.woocommerce-info .wc-forward {
    background: var(--accent) !important;
    color: #000 !important;
    padding: 10px 20px !important;
    border-radius: var(--radius-sm) !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    text-decoration: none !important;
    border: none !important;
    margin-left: auto !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
    order: 2 !important;
    transition: background var(--transition) !important;
}
.woocommerce .button.wc-forward:hover { background: var(--accent-hover) !important; }

/* Mesaj metni esnesin, butonu sağa itsin */
.woocommerce-message > :not(.button):not(::before),
.woocommerce-info > :not(.button):not(::before) {
    flex: 1 1 auto;
}

/* Liste içindeki mesajlar (ul.woocommerce-error) */
.woocommerce-error li,
ul.woocommerce-error li {
    margin: 0 !important;
    padding: 0 !important;
}

/* Single product */
.woocommerce div.product .product_title { color: var(--text-primary); font-size: 2rem; }
.woocommerce div.product p.price, .woocommerce div.product span.price {
    color: var(--accent); font-size: 1.5rem; font-weight: 700;
}
.woocommerce div.product .woocommerce-product-details__short-description { color: var(--text-secondary); margin-bottom: 24px; }
.woocommerce div.product form.cart .button {
    background: var(--accent) !important; color: #000 !important;
    padding: 14px 32px !important;
    border-radius: var(--radius-sm) !important;
    font-weight: 600 !important; text-transform: uppercase !important;
    font-size: 14px !important; letter-spacing: 0.05em !important;
    border: none !important;
}
.woocommerce div.product form.cart .button:hover { background: var(--accent-hover) !important; }
.woocommerce div.product .quantity input {
    background: var(--bg-card) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border) !important;
    padding: 10px !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs {
    border-bottom: 1px solid var(--border) !important;
    padding: 0 !important; margin-bottom: 24px !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li {
    background: transparent !important;
    border: none !important;
    border-bottom: 2px solid transparent !important;
    margin: 0 !important; padding: 0 !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    color: var(--text-secondary) !important;
    padding: 12px 20px !important;
    font-weight: 500 !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
    border-bottom-color: var(--accent) !important;
    background: transparent !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--accent) !important; }
.woocommerce div.product .woocommerce-tabs .panel {
    background: transparent !important; color: var(--text-secondary) !important;
}

/* ============================================================
   CART — Profesyonel iki kolonlu sepet (Dark / Gold)
   Scope: body.woocommerce-cart. Klasik shortcode + WC Cart Block.
   ============================================================ */

/* Çekirdek shop_table (cart + checkout paylaşır) */
.woocommerce table.shop_table {
    background: var(--bg-card) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border) !important;
    border-radius: var(--radius-md) !important;
    overflow: hidden;
    border-collapse: separate !important;
    border-spacing: 0 !important;
}
.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
    color: var(--text-primary) !important;
    border-color: var(--border-light) !important;
    padding: 16px !important;
}
.woocommerce a.remove { color: var(--accent) !important; }
.woocommerce a.remove:hover { background: var(--accent) !important; color: #000 !important; }

/* Sayfa kabı — diğer WC sayfalarıyla uyumlu nefes alanı.
   NOT: page.php sepeti .page-article > .container içine sarar; default
   container max-width: 820px'tir ve iki kolonlu grid'i sıkıştırarak tablo'nun
   özet kutusunun altına taşmasına yol açar. Checkout ile aynı şekilde
   container'ı genişletip grid'in nefes almasını sağlıyoruz. */
.woocommerce-cart .wc-main,
.woocommerce-cart main,
.woocommerce-cart .site-main {
    padding: 0 0 90px !important;
}
.woocommerce-cart .page-article {
    padding: 0 0 100px !important;
}
/* Sepet basligi ile header arasindaki fazla bosluk giderildi (banner ust padding kuculdu) */
.woocommerce-cart .page-header-plain {
    padding: 40px 0 28px !important;
}
.woocommerce-cart .page-article .container {
    max-width: 1240px !important;
}
.woocommerce-cart .entry-content {
    color: var(--text-primary);
    font-size: 1rem;
    line-height: 1.5;
}
.woocommerce-cart .entry-title,
.woocommerce-cart .page-title {
    font-size: clamp(28px, 3vw, 38px);
    font-weight: 700;
    letter-spacing: -0.015em;
    color: var(--text-primary);
    margin: 0 0 28px;
}

/* ---------- İki kolonlu yerleşim: ürünler (sol) + özet (sağ) ---------- */
.woocommerce-cart .entry-content > .woocommerce,
.woocommerce-cart .woocommerce {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 360px);
    column-gap: 28px;
    row-gap: 24px;
    align-items: start;
    margin: 0;
}
.woocommerce-cart .woocommerce > .woocommerce-notices-wrapper,
.woocommerce-cart .woocommerce > .return-to-shop,
.woocommerce-cart .woocommerce > .cart-empty,
.woocommerce-cart .woocommerce > .wc-empty-cart-message {
    grid-column: 1 / -1;
}
.woocommerce-cart form.woocommerce-cart-form {
    grid-column: 1 / 2;
    grid-row: auto;
    float: none !important;
    width: auto !important;
    max-width: 100%;
    margin: 0 !important;
    min-width: 0;
    overflow: hidden !important;
}
.woocommerce-cart .cart-collaterals {
    grid-column: 2 / 3;
    grid-row: auto;
    width: auto !important;
    max-width: 100%;
    float: none !important;
    position: sticky;
    top: 96px;
    min-width: 0;
}
.woocommerce-cart .cart-collaterals .cross-sells {
    grid-column: 1 / -1;
    width: 100% !important;
    float: none !important;
    margin-top: 24px;
}

/* ---------- Ürün tablosu — kart yüzeyi ---------- */
.woocommerce-cart table.shop_table.cart {
    box-shadow: var(--shadow-md);
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
}
.woocommerce-cart table.shop_table.cart thead {
    background: var(--bg-secondary) !important;
}
.woocommerce-cart table.shop_table.cart thead th {
    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px solid var(--border) !important;
    padding: 14px 16px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    color: var(--text-muted) !important;
}
.woocommerce-cart table.shop_table.cart tbody tr.cart_item {
    transition: background var(--transition);
}
.woocommerce-cart table.shop_table.cart tbody tr.cart_item:hover {
    background: rgba(255, 255, 255, 0.015);
}
.woocommerce-cart table.shop_table.cart tbody tr.cart_item td {
    border: 0 !important;
    border-bottom: 1px solid var(--border) !important;
    padding: 20px 16px !important;
    vertical-align: middle !important;
    background: transparent !important;
}
.woocommerce-cart table.shop_table.cart tbody tr.cart_item:last-child td {
    border-bottom: 0 !important;
}

/* Kaldır butonu — yuvarlak, kırmızı hover */
.woocommerce-cart table.shop_table.cart td.product-remove {
    width: 48px;
    padding-right: 0 !important;
}
.woocommerce-cart table.shop_table.cart td.product-remove a.remove {
    width: 30px !important;
    height: 30px !important;
    line-height: 28px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.04) !important;
    border: 1px solid var(--border) !important;
    color: var(--text-muted) !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    text-align: center;
    display: inline-block;
    text-decoration: none !important;
    transition: background var(--transition), color var(--transition), border-color var(--transition);
}
.woocommerce-cart table.shop_table.cart td.product-remove a.remove:hover {
    background: #ef4444 !important;
    border-color: #ef4444 !important;
    color: #fff !important;
}

/* Ürün görseli */
.woocommerce-cart table.shop_table.cart td.product-thumbnail {
    width: 100px;
    padding-right: 8px !important;
}
.woocommerce-cart table.shop_table.cart td.product-thumbnail a { display: block; }
.woocommerce-cart table.shop_table.cart td.product-thumbnail img {
    width: 84px !important;
    height: 84px !important;
    object-fit: cover;
    border-radius: var(--radius-sm);
    border: 1px solid var(--border);
    background: var(--bg-secondary);
    display: block;
}

/* Ürün adı + varyasyon */
.woocommerce-cart table.shop_table.cart td.product-name a {
    color: var(--text-primary) !important;
    font-weight: 600;
    font-size: 15px;
    line-height: 1.35;
    text-decoration: none;
    letter-spacing: -0.005em;
}
.woocommerce-cart table.shop_table.cart td.product-name a:hover {
    color: var(--accent) !important;
}
.woocommerce-cart table.shop_table.cart td.product-name .variation,
.woocommerce-cart table.shop_table.cart td.product-name dl.variation {
    margin: 6px 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
    font-size: 12px;
    color: var(--text-muted);
}
.woocommerce-cart table.shop_table.cart td.product-name .variation dt,
.woocommerce-cart table.shop_table.cart td.product-name .variation dd {
    display: inline !important;
    margin: 0 6px 0 0 !important;
    padding: 0 !important;
    font-weight: 400 !important;
    color: var(--text-muted) !important;
    background: transparent !important;
}

/* Fiyat ve satır toplamı */
.woocommerce-cart table.shop_table.cart td.product-price,
.woocommerce-cart table.shop_table.cart td.product-subtotal {
    font-size: 15px !important;
    font-weight: 600 !important;
    color: var(--text-primary) !important;
    white-space: nowrap;
}
.woocommerce-cart table.shop_table.cart td.product-subtotal {
    color: var(--accent) !important;
    font-weight: 700 !important;
}

/* Miktar seçici — pill stil */
.woocommerce-cart table.shop_table.cart td.product-quantity { width: 140px; }
.woocommerce-cart .quantity,
.woocommerce .quantity {
    display: inline-flex !important;
    align-items: center;
    background: var(--bg-secondary);
    border: 1px solid var(--border);
    border-radius: 999px;
    overflow: hidden;
    height: 42px;
}
.woocommerce-cart .quantity input.qty,
.woocommerce .quantity input.qty {
    width: 50px !important;
    height: 100% !important;
    min-height: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--text-primary) !important;
    text-align: center;
    font-weight: 600;
    font-size: 14px;
    padding: 0 !important;
    -moz-appearance: textfield;
    box-shadow: none !important;
}
.quantity input.qty::-webkit-outer-spin-button,
.quantity input.qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.quantity .qty-button,
.quantity .plus,
.quantity .minus,
.quantity button {
    width: 36px;
    height: 100%;
    border: 0;
    background: transparent;
    color: var(--text-secondary);
    font-size: 16px;
    cursor: pointer;
    transition: color var(--transition), background var(--transition);
}
.quantity .qty-button:hover,
.quantity .plus:hover,
.quantity .minus:hover,
.quantity button:hover {
    background: rgba(201, 169, 110, 0.12);
    color: var(--accent);
}

/* ---------- Actions satırı (kupon + güncelle) ---------- */
.woocommerce-cart table.shop_table.cart tfoot td,
.woocommerce-cart table.shop_table.cart td.actions {
    background: var(--bg-secondary) !important;
    border: 0 !important;
    border-top: 1px solid var(--border) !important;
    padding: 18px 16px !important;
}
.woocommerce-cart td.actions .coupon {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}
.woocommerce-cart td.actions .coupon label { display: none; }
.woocommerce-cart td.actions .coupon input[type="text"],
.woocommerce-cart td.actions #coupon_code {
    width: 240px !important;
    min-height: 42px !important;
    padding: 10px 16px !important;
    border-radius: 999px !important;
    background: var(--bg-card) !important;
    border: 1px solid var(--border) !important;
    color: var(--text-primary) !important;
    font-size: 14px;
}
.woocommerce-cart td.actions .coupon input[type="text"]:focus,
.woocommerce-cart td.actions #coupon_code:focus {
    outline: 0 !important;
    border-color: var(--accent) !important;
    box-shadow: 0 0 0 3px rgba(201, 169, 110, 0.18) !important;
}
.woocommerce-cart td.actions .button,
.woocommerce-cart td.actions button[name="apply_coupon"],
.woocommerce-cart td.actions button[name="update_cart"] {
    min-height: 42px !important;
    padding: 0 22px !important;
    border-radius: 999px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0.02em !important;
}
.woocommerce-cart td.actions button[name="update_cart"]:disabled {
    opacity: 0.45 !important;
    cursor: not-allowed;
}

/* ---------- Cart totals (sağ özet kutusu) ---------- */
.woocommerce-cart .cart_totals {
    background: var(--bg-card) !important;
    border: 1px solid var(--border) !important;
    border-radius: var(--radius-md) !important;
    padding: 26px 26px 22px !important;
    box-shadow: var(--shadow-md);
    margin: 0 !important;
}
.woocommerce-cart .cart_totals h2 {
    margin: 0 0 18px !important;
    padding: 0 0 14px !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    letter-spacing: -0.01em !important;
    color: var(--text-primary) !important;
    border-bottom: 1px solid var(--border);
    text-transform: none !important;
}
.woocommerce-cart .cart_totals table {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    margin: 0 !important;
    border-radius: 0 !important;
    border-collapse: collapse !important;
}
.woocommerce-cart .cart_totals table th,
.woocommerce-cart .cart_totals table td {
    border: 0 !important;
    border-bottom: 1px dashed var(--border) !important;
    background: transparent !important;
    padding: 12px 0 !important;
    font-size: 14px !important;
    vertical-align: middle !important;
    color: var(--text-primary) !important;
}
.woocommerce-cart .cart_totals table th {
    font-weight: 500 !important;
    color: var(--text-secondary) !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    width: 50%;
}
.woocommerce-cart .cart_totals table td {
    text-align: right;
    font-weight: 600;
}
.woocommerce-cart .cart_totals table tr.shipping td,
.woocommerce-cart .cart_totals table tr.shipping th { vertical-align: top; }
.woocommerce-cart .cart_totals table tr.shipping ul#shipping_method {
    margin: 0; padding: 0; list-style: none;
}
.woocommerce-cart .cart_totals table tr.shipping ul#shipping_method li {
    margin: 0 0 6px;
    text-align: right;
    font-size: 14px;
}
.woocommerce-cart .cart_totals table tr.shipping ul#shipping_method li label {
    color: var(--text-primary);
    margin-left: 6px;
}
.woocommerce-cart .cart_totals .shipping-calculator-button {
    color: var(--accent) !important;
    font-weight: 600;
    text-decoration: none;
    font-size: 13px;
}

/* Toplam satırı — vurgulu */
.woocommerce-cart .cart_totals table tr.order-total th,
.woocommerce-cart .cart_totals table tr.order-total td {
    border-bottom: 0 !important;
    border-top: 1px solid var(--border) !important;
    padding-top: 18px !important;
    padding-bottom: 6px !important;
    font-size: 16px !important;
}
.woocommerce-cart .cart_totals table tr.order-total th {
    color: var(--text-primary) !important;
    font-weight: 700 !important;
}
.woocommerce-cart .cart_totals table tr.order-total td,
.woocommerce-cart .cart_totals table tr.order-total .amount,
.woocommerce-cart .cart_totals table tr.order-total .woocommerce-Price-amount {
    color: var(--accent) !important;
    font-weight: 800 !important;
    font-size: 22px !important;
    letter-spacing: -0.015em;
}
.woocommerce-cart .cart_totals table tr.order-total small {
    display: block;
    margin-top: 4px;
    color: var(--text-muted) !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    letter-spacing: 0;
}

/* Checkout butonu — tam genişlik altın CTA */
.woocommerce-cart .wc-proceed-to-checkout {
    padding: 16px 0 0 !important;
    margin: 14px 0 0 !important;
    border-top: 1px solid var(--border);
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
    display: block !important;
    width: 100% !important;
    min-height: 54px !important;
    padding: 14px 20px !important;
    text-align: center !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: 0.02em !important;
    border-radius: var(--radius-sm) !important;
    background: var(--accent) !important;
    color: #000 !important;
    border: 0 !important;
    box-shadow: 0 4px 20px rgba(201, 169, 110, 0.25);
    transition: background var(--transition), transform var(--transition), box-shadow var(--transition);
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
    background: var(--accent-hover) !important;
    transform: translateY(-1px);
    box-shadow: 0 8px 28px rgba(201, 169, 110, 0.35);
}

/* ---------- Boş sepet ---------- */
.woocommerce-cart .cart-empty.woocommerce-info,
.woocommerce-cart p.cart-empty {
    background: var(--bg-card) !important;
    border: 1px solid var(--border) !important;
    border-radius: var(--radius-md) !important;
    padding: 60px 30px !important;
    text-align: center !important;
    font-size: 18px !important;
    color: var(--text-secondary) !important;
    margin: 0 !important;
    box-shadow: var(--shadow-sm);
}
.woocommerce-cart .cart-empty.woocommerce-info::before,
.woocommerce-cart p.cart-empty::before { display: none !important; }
.woocommerce-cart .return-to-shop {
    text-align: center;
    margin: 20px 0 0 !important;
    padding: 0 !important;
}
.woocommerce-cart .return-to-shop a.button {
    display: inline-block !important;
    min-height: 50px;
    padding: 14px 32px !important;
    border-radius: var(--radius-sm) !important;
    background: var(--accent) !important;
    color: #000 !important;
    font-weight: 700 !important;
    font-size: 15px !important;
}
.woocommerce-cart .return-to-shop a.button:hover {
    background: var(--accent-hover) !important;
}

.woocommerce-cart .cross-sells > h2 {
    font-size: 22px;
    font-weight: 700;
    letter-spacing: -0.01em;
    color: var(--text-primary);
    margin: 0 0 18px;
}

/* ---------- WooCommerce CART BLOCK (yeni Gutenberg cart) ---------- */
.wp-block-woocommerce-cart,
.wc-block-cart { color: var(--text-primary) !important; }
.wc-block-cart .wc-block-cart-items,
.wc-block-cart table.wc-block-cart-items {
    background: var(--bg-card) !important;
    border: 1px solid var(--border) !important;
    border-radius: var(--radius-md) !important;
    overflow: hidden;
    box-shadow: var(--shadow-md);
}
.wc-block-cart-items__header {
    background: var(--bg-secondary) !important;
    border-bottom: 1px solid var(--border) !important;
}
.wc-block-cart-items__header th {
    color: var(--text-muted) !important;
    font-size: 11px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.08em !important;
    padding: 14px 16px !important;
    border: 0 !important;
}
.wc-block-cart-items__row,
tr.wc-block-cart-items__row {
    border-bottom: 1px solid var(--border) !important;
}
.wc-block-cart-items__row td {
    padding: 20px 16px !important;
    border: 0 !important;
    background: transparent !important;
    vertical-align: middle !important;
}
.wc-block-cart-item__image img {
    border-radius: var(--radius-sm);
    border: 1px solid var(--border);
    width: 84px !important;
    height: 84px !important;
    object-fit: cover;
}
.wc-block-components-product-name {
    color: var(--text-primary) !important;
    font-weight: 600 !important;
    font-size: 15px !important;
    text-decoration: none !important;
}
.wc-block-components-product-name:hover { color: var(--accent) !important; }
.wc-block-components-product-metadata,
.wc-block-components-product-details {
    color: var(--text-muted) !important;
    font-size: 12px !important;
}
.wc-block-components-product-price,
.wc-block-components-product-price__value {
    color: var(--text-primary) !important;
    font-weight: 600 !important;
}
.wc-block-cart-item__total .wc-block-components-product-price__value {
    color: var(--accent) !important;
    font-weight: 700 !important;
}
.wp-block-woocommerce-cart-order-summary-block,
.wc-block-components-sidebar {
    background: var(--bg-card) !important;
    border: 1px solid var(--border) !important;
    border-radius: var(--radius-md) !important;
    padding: 26px !important;
    box-shadow: var(--shadow-md);
}
.wc-block-components-totals-item,
.wc-block-components-totals-wrapper {
    color: var(--text-primary) !important;
    border-color: var(--border) !important;
}
.wc-block-components-totals-item__label { color: var(--text-secondary) !important; }
.wc-block-components-totals-footer-item,
.wc-block-components-totals-footer-item .wc-block-formatted-money-amount {
    color: var(--accent) !important;
    font-weight: 800 !important;
    font-size: 20px !important;
}
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button,
button.wc-block-components-button:not(.wc-block-components-button--link) {
    background: var(--accent) !important;
    color: #000 !important;
    border: 0 !important;
    border-radius: var(--radius-sm) !important;
    padding: 14px 24px !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    box-shadow: 0 4px 20px rgba(201, 169, 110, 0.25);
    transition: background var(--transition), transform var(--transition);
}
.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover {
    background: var(--accent-hover) !important;
    transform: translateY(-1px);
}
.wc-block-components-quantity-selector {
    background: var(--bg-secondary) !important;
    border: 1px solid var(--border) !important;
    border-radius: 999px !important;
    overflow: hidden;
}
.wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input {
    background: transparent !important;
    color: var(--text-primary) !important;
    border: 0 !important;
    font-weight: 600;
}
.wc-block-components-quantity-selector__button {
    color: var(--text-secondary) !important;
    background: transparent !important;
    border: 0 !important;
    transition: color var(--transition), background var(--transition);
}
.wc-block-components-quantity-selector__button:hover {
    color: var(--accent) !important;
    background: rgba(201, 169, 110, 0.12) !important;
}
.wc-block-components-totals-coupon input[type="text"] {
    background: var(--bg-secondary) !important;
    border: 1px solid var(--border) !important;
    color: var(--text-primary) !important;
    border-radius: 999px !important;
    padding: 10px 16px !important;
}

/* ---------- Cart — tablet/mobil ---------- */
@media (max-width: 1024px) {
    .woocommerce-cart .page-article { padding: 30px 0 80px !important; }
    .woocommerce-cart .entry-content > .woocommerce,
    .woocommerce-cart .woocommerce {
        grid-template-columns: minmax(0, 1fr);
        row-gap: 20px;
    }
    .woocommerce-cart form.woocommerce-cart-form,
    .woocommerce-cart .cart-collaterals {
        grid-column: 1 / -1;
    }
    .woocommerce-cart .cart-collaterals {
        position: static !important;
        top: auto !important;
    }
}

@media (max-width: 600px) {
    .woocommerce-cart .page-article { padding: 20px 0 60px !important; }
    .woocommerce-cart .page-article .container { padding-left: 14px; padding-right: 14px; }
    .woocommerce-cart .entry-content > .woocommerce,
    .woocommerce-cart .woocommerce { row-gap: 16px; }

    /* Tablo'yu kart yığını gibi göster (klasik shortcode) */
    .woocommerce-cart table.shop_table.cart {
        display: block;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        overflow: visible !important;
    }
    .woocommerce-cart table.shop_table.cart thead { display: none; }
    .woocommerce-cart table.shop_table.cart tbody { display: block; }
    .woocommerce-cart table.shop_table.cart tbody tr.cart_item {
        display: grid;
        grid-template-columns: 84px 1fr 32px;
        grid-template-areas:
            "thumb name   remove"
            "thumb price  remove"
            "thumb qty    remove"
            "thumb sub    remove";
        gap: 4px 14px;
        padding: 16px;
        margin: 0 0 12px;
        background: var(--bg-card) !important;
        border: 1px solid var(--border) !important;
        border-radius: var(--radius-md) !important;
        box-shadow: var(--shadow-sm);
    }
    .woocommerce-cart table.shop_table.cart tbody tr.cart_item:last-child { margin-bottom: 0; }
    .woocommerce-cart table.shop_table.cart tbody tr.cart_item td {
        border: 0 !important;
        padding: 2px 0 !important;
        background: transparent !important;
        width: auto !important;
    }
    .woocommerce-cart table.shop_table.cart td.product-remove    { grid-area: remove; padding-right: 0 !important; }
    .woocommerce-cart table.shop_table.cart td.product-thumbnail { grid-area: thumb; padding: 0 !important; }
    .woocommerce-cart table.shop_table.cart td.product-thumbnail img {
        width: 84px !important;
        height: 84px !important;
    }
    .woocommerce-cart table.shop_table.cart td.product-name      { grid-area: name; font-size: 14px !important; }
    .woocommerce-cart table.shop_table.cart td.product-price     { grid-area: price; font-size: 13px !important; color: var(--text-muted) !important; }
    .woocommerce-cart table.shop_table.cart td.product-quantity  { grid-area: qty; }
    .woocommerce-cart table.shop_table.cart td.product-subtotal  { grid-area: sub; font-size: 15px !important; }

    /* Actions (kupon + güncelle) — mobilde tablo değil, blok */
    .woocommerce-cart table.shop_table.cart tfoot { display: block; }
    .woocommerce-cart table.shop_table.cart tfoot tr,
    .woocommerce-cart table.shop_table.cart tr:has(td.actions) {
        display: block;
        background: var(--bg-card) !important;
        border: 1px solid var(--border) !important;
        border-radius: var(--radius-md) !important;
        margin-top: 4px;
    }
    .woocommerce-cart table.shop_table.cart td.actions {
        display: block;
        width: 100% !important;
        padding: 14px !important;
        border-top: 0 !important;
        background: transparent !important;
    }
    .woocommerce-cart td.actions .coupon {
        display: flex;
        width: 100%;
        gap: 8px;
        flex-wrap: wrap;
    }
    .woocommerce-cart td.actions .coupon input[type="text"],
    .woocommerce-cart td.actions #coupon_code {
        flex: 1 1 180px;
        min-width: 0;
        width: auto !important;
    }
    .woocommerce-cart td.actions button[name="apply_coupon"] { flex: 0 0 auto; }
    .woocommerce-cart td.actions button[name="update_cart"] {
        width: 100% !important;
        margin-top: 8px !important;
    }

    /* Sepet toplamları — mobilde kompakt */
    .woocommerce-cart .cart_totals { padding: 20px 16px !important; }
    .woocommerce-cart .cart_totals h2 { font-size: 17px !important; }
    .woocommerce-cart .cart_totals table tr.order-total td,
    .woocommerce-cart .cart_totals table tr.order-total .amount,
    .woocommerce-cart .cart_totals table tr.order-total .woocommerce-Price-amount {
        font-size: 20px !important;
    }
}

/* ============================================================
   WC "Coming Soon" (Store Only) — Sandline diline uyumlu splash
   Site şu an store-only modunda; /shop, /cart, /checkout bu bloğu render eder.
   ============================================================ */
.wp-block-woocommerce-coming-soon.woocommerce-coming-soon-store-only {
    min-height: calc(100vh - 80px);
    display: flex;
    align-items: center;
    justify-content: center;
    background:
        radial-gradient(ellipse at 50% 0%, rgba(201, 169, 110, 0.08), transparent 60%),
        var(--bg-primary);
    padding: 60px 24px;
}
.wp-block-woocommerce-coming-soon .wp-block-group {
    max-width: 720px;
    margin: 0 auto;
    text-align: center;
}
.wp-block-woocommerce-coming-soon h1.wp-block-heading {
    font-size: clamp(34px, 5vw, 56px) !important;
    line-height: 1.1 !important;
    letter-spacing: -0.02em !important;
    color: var(--text-primary) !important;
    margin: 0 0 18px !important;
    font-weight: 700 !important;
}
.wp-block-woocommerce-coming-soon h1.wp-block-heading.has-cardo-font-family {
    font-family: 'Cardo', Georgia, serif !important;
}
.wp-block-woocommerce-coming-soon p.wp-block-paragraph {
    font-size: 17px !important;
    color: var(--text-secondary) !important;
    max-width: 540px;
    margin: 0 auto !important;
    line-height: 1.65;
}
.wp-block-woocommerce-coming-soon .wp-block-spacer { height: 28px !important; }
.woocommerce input[type="text"], .woocommerce input[type="email"], .woocommerce input[type="tel"],
.woocommerce input[type="number"], .woocommerce input[type="password"], .woocommerce textarea,
input[type="text"], input[type="email"], input[type="tel"], input[type="url"],
input[type="number"], input[type="password"], input[type="search"], textarea, select {
    background: var(--bg-card) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border) !important;
    padding: 12px 14px !important;
    border-radius: var(--radius-sm) !important;
    font-family: inherit !important;
    width: 100%;
}
input::placeholder, textarea::placeholder { color: var(--text-muted) !important; }
.woocommerce form .form-row { margin-bottom: 16px; }
.woocommerce form .form-row label { color: var(--text-primary); margin-bottom: 6px; display: block; font-weight: 500; font-size: 14px; }

/* ============================================================
   CHECKOUT — Profesyonel iki kolonlu yerleşim (Dark / Gold)
   Sayfa şablonu: page.php
     <main class="site-main">
       <div class="page-header-plain"><div class="container"><h1 class="page-title">
       <article class="page-article"><div class="container"><div class="entry-content">
         [woocommerce_checkout]  →  <form class="checkout woocommerce-checkout">
   WooCommerce ve WordPress markup'ı KORUNUR. Sadece görsel CSS katmanı.
   ============================================================ */

/* --- Sayfa başlığı: "Ödeme" (the_title filter ile Türkçeleştirildi) --- */
.woocommerce-checkout .page-header-plain {
    padding: 56px 0 28px !important;
    background: linear-gradient(180deg, var(--bg-secondary) 0%, var(--bg-primary) 100%);
    border-bottom: 1px solid var(--border);
    margin-bottom: 0 !important;
}
.woocommerce-checkout .page-header-plain .page-title {
    font-family: var(--font-display) !important;
    font-size: clamp(28px, 3.4vw, 40px) !important;
    font-weight: 700 !important;
    letter-spacing: -0.015em !important;
    text-align: center;
    margin: 0 !important;
    color: var(--text-primary) !important;
    text-transform: none !important;
    line-height: 1.2 !important;
    position: relative;
    padding-bottom: 18px;
}
.woocommerce-checkout .page-header-plain .page-title::after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 56px;
    height: 2px;
    background: var(--accent);
}

/* --- İçerik kabı --- */
.woocommerce-checkout .page-article {
    background: var(--bg-primary);
    padding: 40px 0 100px !important;
}
.woocommerce-checkout .page-article .container {
    max-width: 1240px !important;
}
.woocommerce-checkout .entry-content {
    color: var(--text-primary);
}

/* --- Üst bildirimler (login / kupon ipucu) --- */
.woocommerce-checkout .entry-content .woocommerce-form-login-toggle,
.woocommerce-checkout .entry-content .woocommerce-form-coupon-toggle {
    background: var(--bg-card) !important;
    border: 1px solid var(--border) !important;
    border-left: 3px solid var(--accent) !important;
    border-radius: var(--radius-md) !important;
    padding: 16px 20px !important;
    box-shadow: var(--shadow-sm);
    margin: 0 0 18px !important;
    color: var(--text-secondary) !important;
    font-size: 14px;
}
.woocommerce-checkout .entry-content .woocommerce-form-login-toggle .woocommerce-info,
.woocommerce-checkout .entry-content .woocommerce-form-coupon-toggle .woocommerce-info {
    background: transparent !important;
    border: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    color: inherit !important;
    box-shadow: none !important;
}
.woocommerce-checkout .entry-content .woocommerce-form-login-toggle .woocommerce-info::before,
.woocommerce-checkout .entry-content .woocommerce-form-coupon-toggle .woocommerce-info::before {
    display: none !important;
}
.woocommerce-checkout .entry-content .woocommerce-form-login-toggle a,
.woocommerce-checkout .entry-content .woocommerce-form-coupon-toggle a,
.woocommerce-checkout .entry-content .showcoupon {
    color: var(--accent) !important;
    font-weight: 600;
    text-decoration: none;
}
.woocommerce-checkout .entry-content .woocommerce-form-login-toggle a:hover,
.woocommerce-checkout .entry-content .woocommerce-form-coupon-toggle a:hover,
.woocommerce-checkout .entry-content .showcoupon:hover {
    color: var(--accent-hover) !important;
}

/* Login & kupon açılır formları */
.woocommerce-checkout .entry-content .woocommerce-form-login,
.woocommerce-checkout .entry-content form.login,
.woocommerce-checkout .entry-content .checkout_coupon,
.woocommerce-checkout .entry-content form.checkout_coupon {
    background: var(--bg-card) !important;
    border: 1px solid var(--border) !important;
    border-radius: var(--radius-md) !important;
    padding: 24px !important;
    margin: 0 0 20px !important;
    box-shadow: var(--shadow-sm);
}

/* ============================================================
   İki kolonlu grid (sol: fatura+kargo, sağ: yapışkan sipariş özeti)
   ============================================================ */
.woocommerce-checkout .entry-content form.checkout.woocommerce-checkout {
    display: grid !important;
    grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr);
    gap: 28px;
    align-items: flex-start;
    margin-top: 8px;
}

.woocommerce-checkout .entry-content form.checkout #customer_details,
.woocommerce-checkout .entry-content form.checkout .customer-details {
    grid-column: 1;
    display: flex;
    flex-direction: column;
    gap: 20px;
    min-width: 0;
}
.woocommerce-checkout .entry-content form.checkout #customer_details > .col-1,
.woocommerce-checkout .entry-content form.checkout #customer_details > .col-2 {
    width: 100% !important;
    max-width: none !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.woocommerce-checkout .entry-content form.checkout .checkout-order-review {
    grid-column: 2;
    position: sticky;
    top: 96px;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* --- Kart yüzeyleri --- */
.woocommerce-checkout .entry-content form.checkout #customer_details .col-1,
.woocommerce-checkout .entry-content form.checkout #customer_details .col-2,
.woocommerce-checkout .entry-content form.checkout #order_review {
    background: var(--bg-card) !important;
    border: 1px solid var(--border) !important;
    border-radius: var(--radius-md) !important;
    padding: 28px 28px 26px !important;
    box-shadow: var(--shadow-md);
}

/* --- Bölüm başlıkları + numara rozetleri --- */
.woocommerce-checkout .entry-content form.checkout .woocommerce-billing-fields > h3,
.woocommerce-checkout .entry-content form.checkout .woocommerce-shipping-fields > h3,
.woocommerce-checkout .entry-content form.checkout .woocommerce-additional-fields > h3,
.woocommerce-checkout .entry-content form.checkout #order_review_heading {
    margin: 0 0 22px !important;
    padding: 0 0 16px !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    letter-spacing: -0.005em !important;
    color: var(--text-primary) !important;
    border-bottom: 1px solid var(--border) !important;
    display: flex !important;
    align-items: center;
    gap: 12px;
    line-height: 1.3 !important;
    text-transform: none !important;
    font-family: var(--font-display) !important;
}

.woocommerce-checkout .entry-content form.checkout .woocommerce-billing-fields > h3::before,
.woocommerce-checkout .entry-content form.checkout .woocommerce-shipping-fields > h3::before,
.woocommerce-checkout .entry-content form.checkout #order_review_heading::before {
    flex: 0 0 30px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: var(--accent);
    color: #000;
    font-size: 13px;
    font-weight: 800;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}
.woocommerce-checkout .entry-content form.checkout .woocommerce-billing-fields > h3::before { content: "1"; }
.woocommerce-checkout .entry-content form.checkout .woocommerce-shipping-fields > h3::before { content: "2"; }
.woocommerce-checkout .entry-content form.checkout #order_review_heading::before { content: "3"; }

/* "Farklı bir adrese kargolansın" */
.woocommerce-checkout .entry-content form.checkout #ship-to-different-address {
    margin: 0 0 18px !important;
    padding: 0 !important;
    border: 0 !important;
    font-size: 15px;
}
.woocommerce-checkout .entry-content form.checkout #ship-to-different-address::before { display: none !important; }
.woocommerce-checkout .entry-content form.checkout #ship-to-different-address label {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    font-weight: 600;
    color: var(--text-primary) !important;
    cursor: pointer;
    margin: 0;
}

/* ============================================================
   Form alanları — 2 kolon grid + büyük, belirgin inputlar
   ============================================================ */
.woocommerce-checkout .entry-content form.checkout .form-row {
    margin: 0 0 18px !important;
    padding: 0 !important;
}
.woocommerce-checkout .entry-content form.checkout .woocommerce-billing-fields__field-wrapper,
.woocommerce-checkout .entry-content form.checkout .woocommerce-shipping-fields__field-wrapper,
.woocommerce-checkout .entry-content form.checkout .woocommerce-additional-fields__field-wrapper {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 18px;
}
.woocommerce-checkout .entry-content form.checkout .form-row-wide,
.woocommerce-checkout .entry-content form.checkout #order_comments_field,
.woocommerce-checkout .entry-content form.checkout #billing_address_1_field,
.woocommerce-checkout .entry-content form.checkout #billing_address_2_field,
.woocommerce-checkout .entry-content form.checkout #shipping_address_1_field,
.woocommerce-checkout .entry-content form.checkout #shipping_address_2_field,
.woocommerce-checkout .entry-content form.checkout #billing_company_field,
.woocommerce-checkout .entry-content form.checkout #shipping_company_field,
.woocommerce-checkout .entry-content form.checkout #billing_country_field,
.woocommerce-checkout .entry-content form.checkout #shipping_country_field,
.woocommerce-checkout .entry-content form.checkout #billing_email_field,
.woocommerce-checkout .entry-content form.checkout #billing_phone_field {
    grid-column: 1 / -1;
}

.woocommerce-checkout .entry-content form.checkout .form-row label {
    display: block !important;
    margin: 0 0 8px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: var(--text-secondary) !important;
    letter-spacing: 0;
}
.woocommerce-checkout .entry-content form.checkout .form-row label .required {
    color: #ef4444 !important;
    text-decoration: none;
    margin-left: 2px;
}
.woocommerce-checkout .entry-content form.checkout .form-row label .optional {
    color: var(--text-muted) !important;
    font-weight: 400;
    margin-left: 4px;
}

/* Input & textarea — daha açık fon ki sayfa fonundan ayrışsın */
.woocommerce-checkout .entry-content form.checkout .form-row .input-text,
.woocommerce-checkout .entry-content form.checkout .form-row input[type="text"],
.woocommerce-checkout .entry-content form.checkout .form-row input[type="email"],
.woocommerce-checkout .entry-content form.checkout .form-row input[type="tel"],
.woocommerce-checkout .entry-content form.checkout .form-row input[type="number"],
.woocommerce-checkout .entry-content form.checkout .form-row input[type="password"],
.woocommerce-checkout .entry-content form.checkout .form-row textarea {
    display: block !important;
    width: 100% !important;
    min-height: 50px !important;
    height: auto !important;
    padding: 13px 16px !important;
    background: var(--bg-elevated) !important;
    border: 1px solid var(--border-light) !important;
    border-radius: var(--radius-sm) !important;
    color: var(--text-primary) !important;
    font-size: 15px !important;
    font-family: inherit !important;
    line-height: 1.4 !important;
    box-shadow: none !important;
    transition: border-color var(--transition), box-shadow var(--transition), background var(--transition);
}
.woocommerce-checkout .entry-content form.checkout .form-row textarea {
    min-height: 120px !important;
    line-height: 1.5 !important;
    resize: vertical;
}
.woocommerce-checkout .entry-content form.checkout .form-row .input-text::placeholder,
.woocommerce-checkout .entry-content form.checkout .form-row textarea::placeholder {
    color: var(--text-muted) !important;
}
.woocommerce-checkout .entry-content form.checkout .form-row .input-text:hover,
.woocommerce-checkout .entry-content form.checkout .form-row textarea:hover {
    border-color: var(--accent-dark) !important;
}
.woocommerce-checkout .entry-content form.checkout .form-row .input-text:focus,
.woocommerce-checkout .entry-content form.checkout .form-row textarea:focus {
    outline: 0 !important;
    border-color: var(--accent) !important;
    background: #2f2416 !important;
    box-shadow: 0 0 0 3px rgba(201, 169, 110, 0.22) !important;
}

/* Select2 */
.woocommerce-checkout .entry-content .select2-container--default .select2-selection--single {
    min-height: 50px !important;
    height: 50px !important;
    background: var(--bg-elevated) !important;
    border: 1px solid var(--border-light) !important;
    border-radius: var(--radius-sm) !important;
    display: flex !important;
    align-items: center;
    padding: 0 16px !important;
    transition: border-color var(--transition), box-shadow var(--transition);
}
.woocommerce-checkout .entry-content .select2-container--default .select2-selection--single:hover {
    border-color: var(--accent-dark) !important;
}
.woocommerce-checkout .entry-content .select2-container--default.select2-container--open .select2-selection--single,
.woocommerce-checkout .entry-content .select2-container--default.select2-container--focus .select2-selection--single {
    border-color: var(--accent) !important;
    box-shadow: 0 0 0 3px rgba(201, 169, 110, 0.22) !important;
}
.woocommerce-checkout .entry-content .select2-container--default .select2-selection--single .select2-selection__rendered {
    padding: 0 !important;
    line-height: 1.5 !important;
    color: var(--text-primary) !important;
    font-size: 15px;
}
.woocommerce-checkout .entry-content .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 100% !important;
    right: 12px !important;
}
.woocommerce-checkout .entry-content .select2-container--default .select2-selection--single .select2-selection__arrow b {
    border-color: var(--text-secondary) transparent transparent transparent !important;
}
body .select2-dropdown {
    background: var(--bg-elevated) !important;
    border: 1px solid var(--border-light) !important;
    color: var(--text-primary) !important;
}
body .select2-container--default .select2-results__option--highlighted[aria-selected],
body .select2-container--default .select2-results__option--highlighted {
    background: var(--accent) !important;
    color: #000 !important;
}
body .select2-search--dropdown .select2-search__field {
    background: var(--bg-secondary) !important;
    border: 1px solid var(--border-light) !important;
    color: var(--text-primary) !important;
    padding: 8px 12px !important;
}

/* Hata durumu */
.woocommerce-checkout .entry-content form.checkout .form-row.woocommerce-invalid .input-text,
.woocommerce-checkout .entry-content form.checkout .form-row.woocommerce-invalid textarea,
.woocommerce-checkout .entry-content form.checkout .form-row.woocommerce-invalid .select2-container--default .select2-selection--single {
    border-color: #ef4444 !important;
    box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.18) !important;
}

/* ============================================================
   Sipariş özeti (sağ kolon)
   ============================================================ */
.woocommerce-checkout .entry-content form.checkout #order_review table.shop_table {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    margin: 0 0 8px !important;
    overflow: visible !important;
    box-shadow: none !important;
    border-collapse: collapse !important;
    width: 100%;
}
.woocommerce-checkout .entry-content form.checkout #order_review table.shop_table thead {
    display: none;
}
.woocommerce-checkout .entry-content form.checkout #order_review table.shop_table tbody tr.cart_item td,
.woocommerce-checkout .entry-content form.checkout #order_review table.shop_table tfoot tr th,
.woocommerce-checkout .entry-content form.checkout #order_review table.shop_table tfoot tr td {
    border: 0 !important;
    border-bottom: 1px solid var(--border) !important;
    background: transparent !important;
    padding: 14px 0 !important;
    font-size: 14px !important;
    vertical-align: middle !important;
    color: var(--text-primary) !important;
}
.woocommerce-checkout .entry-content form.checkout #order_review table.shop_table tbody tr.cart_item td.product-name {
    font-weight: 500 !important;
    line-height: 1.45 !important;
    padding-right: 12px !important;
}
.woocommerce-checkout .entry-content form.checkout #order_review table.shop_table tbody tr.cart_item td.product-name .product-quantity {
    color: var(--text-muted) !important;
    font-weight: 600;
    margin-left: 4px;
}
.woocommerce-checkout .entry-content form.checkout #order_review table.shop_table tbody tr.cart_item td.product-total {
    text-align: right !important;
    white-space: nowrap;
    font-weight: 600 !important;
}
.woocommerce-checkout .entry-content form.checkout #order_review table.shop_table tfoot tr th {
    color: var(--text-muted) !important;
    font-weight: 500 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    text-align: left !important;
}
.woocommerce-checkout .entry-content form.checkout #order_review table.shop_table tfoot tr td {
    text-align: right !important;
    font-weight: 600 !important;
}
.woocommerce-checkout .entry-content form.checkout #order_review table.shop_table tfoot tr.order-total th,
.woocommerce-checkout .entry-content form.checkout #order_review table.shop_table tfoot tr.order-total td {
    border-bottom: 0 !important;
    padding-top: 20px !important;
    padding-bottom: 4px !important;
    font-size: 16px !important;
}
.woocommerce-checkout .entry-content form.checkout #order_review table.shop_table tfoot tr.order-total th {
    font-weight: 700 !important;
    color: var(--text-primary) !important;
}
.woocommerce-checkout .entry-content form.checkout #order_review table.shop_table tfoot tr.order-total .amount,
.woocommerce-checkout .entry-content form.checkout #order_review table.shop_table tfoot tr.order-total .woocommerce-Price-amount {
    font-size: 24px !important;
    font-weight: 800 !important;
    letter-spacing: -0.015em;
    color: var(--accent) !important;
    font-family: var(--font-display) !important;
}
.woocommerce-checkout .entry-content form.checkout #order_review table.shop_table tfoot tr.order-total small.includes_tax,
.woocommerce-checkout .entry-content form.checkout #order_review table.shop_table tfoot tr.order-total small {
    display: block;
    margin-top: 6px;
    font-size: 12px;
    font-weight: 400;
    color: var(--text-muted) !important;
}

/* ============================================================
   Ödeme yöntemleri
   ============================================================ */
.woocommerce-checkout .entry-content form.checkout #payment {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin-top: 20px !important;
}
.woocommerce-checkout .entry-content form.checkout #payment::before { display: none !important; }

.woocommerce-checkout .entry-content form.checkout #payment ul.payment_methods {
    border: 0 !important;
    padding: 0 !important;
    margin: 0 0 16px !important;
    list-style: none !important;
    display: flex !important;
    flex-direction: column;
    gap: 10px;
}
.woocommerce-checkout .entry-content form.checkout #payment ul.payment_methods > li {
    list-style: none !important;
    background: var(--bg-elevated) !important;
    border: 1px solid var(--border-light) !important;
    border-radius: var(--radius-md) !important;
    padding: 14px 16px !important;
    margin: 0 !important;
    transition: border-color var(--transition), background var(--transition), box-shadow var(--transition);
}
.woocommerce-checkout .entry-content form.checkout #payment ul.payment_methods > li:hover {
    border-color: var(--accent-dark) !important;
}
.woocommerce-checkout .entry-content form.checkout #payment ul.payment_methods > li:has(input[type="radio"]:checked) {
    border-color: var(--accent) !important;
    box-shadow: 0 0 0 3px rgba(201, 169, 110, 0.18) !important;
    background: #2b2014 !important;
}
.woocommerce-checkout .entry-content form.checkout #payment ul.payment_methods > li > label {
    display: inline-flex !important;
    align-items: center;
    gap: 10px;
    margin: 0 !important;
    font-weight: 600;
    color: var(--text-primary) !important;
    cursor: pointer;
    font-size: 14px;
}
.woocommerce-checkout .entry-content form.checkout #payment ul.payment_methods > li input[type="radio"] {
    accent-color: var(--accent);
    width: 16px;
    height: 16px;
}
.woocommerce-checkout .entry-content form.checkout #payment ul.payment_methods > li img {
    max-height: 24px;
    width: auto;
    margin-left: 8px;
    vertical-align: middle;
}
.woocommerce-checkout .entry-content form.checkout #payment ul.payment_methods .payment_box {
    background: var(--bg-tertiary) !important;
    border: 1px solid var(--border) !important;
    border-radius: var(--radius-sm) !important;
    color: var(--text-secondary) !important;
    font-size: 13px !important;
    line-height: 1.55 !important;
    padding: 12px 14px !important;
    margin: 12px 0 0 !important;
}
.woocommerce-checkout .entry-content form.checkout #payment ul.payment_methods .payment_box::before {
    display: none !important;
}
.woocommerce-checkout .entry-content form.checkout #payment ul.payment_methods .payment_box a {
    color: var(--accent) !important;
}

/* Şartlar & koşullar */
.woocommerce-checkout .entry-content form.checkout .woocommerce-terms-and-conditions-wrapper {
    background: transparent !important;
    border: 0 !important;
    padding: 0 !important;
    margin: 0 0 14px !important;
    font-size: 13px;
    color: var(--text-secondary) !important;
}
.woocommerce-checkout .entry-content form.checkout .woocommerce-terms-and-conditions {
    margin: 0 0 12px !important;
    padding: 14px !important;
    max-height: 160px;
    overflow-y: auto;
    border: 1px solid var(--border) !important;
    border-radius: var(--radius-sm) !important;
    background: var(--bg-tertiary) !important;
    font-size: 12px;
    line-height: 1.55;
    color: var(--text-secondary);
}

/* --- "Siparişi Tamamla" CTA --- */
.woocommerce-checkout .entry-content form.checkout #payment .form-row.place-order {
    margin: 18px 0 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
}
.woocommerce-checkout .entry-content form.checkout #payment #place_order {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 18px 24px !important;
    min-height: 60px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: var(--accent) !important;
    color: #000 !important;
    box-shadow: 0 8px 24px rgba(201, 169, 110, 0.28) !important;
    cursor: pointer !important;
    transition: transform var(--transition), box-shadow var(--transition), background var(--transition);
    font-family: var(--font-sans) !important;
}
.woocommerce-checkout .entry-content form.checkout #payment #place_order:hover {
    background: var(--accent-hover) !important;
    transform: translateY(-1px);
    box-shadow: 0 12px 32px rgba(201, 169, 110, 0.4) !important;
}
.woocommerce-checkout .entry-content form.checkout #payment #place_order:active {
    transform: translateY(0);
}
.woocommerce-checkout .entry-content form.checkout #payment #place_order:disabled {
    opacity: 0.55;
    cursor: not-allowed;
    transform: none;
}

/* Güven şeridi */
.woocommerce-checkout .entry-content form.checkout #payment .place-order::after {
    content: "🔒  256-bit SSL ile şifrelenmiş güvenli ödeme";
    display: block;
    margin-top: 14px;
    text-align: center;
    font-size: 12px;
    color: var(--text-muted);
    letter-spacing: 0.03em;
}

/* Checkbox */
.woocommerce-checkout .entry-content input[type="checkbox"] {
    accent-color: var(--accent);
    width: 16px;
    height: 16px;
    vertical-align: middle;
}

/* WC notice kartları */
.woocommerce-checkout .entry-content .woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-checkout .entry-content .woocommerce-notices-wrapper .woocommerce-info,
.woocommerce-checkout .entry-content .woocommerce-notices-wrapper .woocommerce-error,
.woocommerce-checkout .entry-content .woocommerce-NoticeGroup {
    background: var(--bg-card) !important;
    border: 1px solid var(--border) !important;
    border-left: 3px solid var(--accent) !important;
    border-radius: var(--radius-md) !important;
    color: var(--text-primary) !important;
    padding: 14px 18px !important;
    box-shadow: var(--shadow-sm);
    margin: 0 0 18px !important;
}
.woocommerce-checkout .entry-content .woocommerce-notices-wrapper .woocommerce-error {
    border-left-color: #ef4444 !important;
}
.woocommerce-checkout .entry-content .woocommerce-notices-wrapper .woocommerce-message {
    border-left-color: #22c55e !important;
}

/* Yükleme overlay'i */
.woocommerce-checkout .entry-content .blockUI.blockOverlay {
    border-radius: var(--radius-md) !important;
    background-color: rgba(10, 10, 10, 0.65) !important;
}

/* ============================================================
   Responsive
   ============================================================ */
@media (max-width: 1024px) {
    .woocommerce-checkout .entry-content form.checkout.woocommerce-checkout {
        grid-template-columns: 1fr !important;
        gap: 20px;
    }
    .woocommerce-checkout .entry-content form.checkout #customer_details,
    .woocommerce-checkout .entry-content form.checkout .customer-details,
    .woocommerce-checkout .entry-content form.checkout .checkout-order-review {
        grid-column: 1;
    }
    .woocommerce-checkout .entry-content form.checkout .checkout-order-review {
        position: static !important;
        top: auto !important;
    }
}

@media (max-width: 600px) {
    .woocommerce-checkout .page-header-plain { padding: 36px 0 22px !important; }
    .woocommerce-checkout .page-article { padding: 28px 0 70px !important; }
    .woocommerce-checkout .entry-content form.checkout .woocommerce-billing-fields__field-wrapper,
    .woocommerce-checkout .entry-content form.checkout .woocommerce-shipping-fields__field-wrapper,
    .woocommerce-checkout .entry-content form.checkout .woocommerce-additional-fields__field-wrapper {
        grid-template-columns: 1fr;
    }
    .woocommerce-checkout .entry-content form.checkout #customer_details .col-1,
    .woocommerce-checkout .entry-content form.checkout #customer_details .col-2,
    .woocommerce-checkout .entry-content form.checkout #order_review {
        padding: 22px 18px !important;
    }
    .woocommerce-checkout .entry-content form.checkout .woocommerce-billing-fields > h3,
    .woocommerce-checkout .entry-content form.checkout .woocommerce-shipping-fields > h3,
    .woocommerce-checkout .entry-content form.checkout #order_review_heading {
        font-size: 16px !important;
    }
    .woocommerce-checkout .entry-content form.checkout #payment #place_order {
        font-size: 14px !important;
        min-height: 54px !important;
    }
}

/* ============================================================
   MY ACCOUNT — Lüks dark dashboard
   WC default markup korunur: yalnızca görsel katman
   ============================================================ */

/* ----- Layout: sayfa container'ını genişlet ve grid'e geçir ---- */

/* page-article 820px max-width default — my-account için başlık genişliğine eşitle */
.woocommerce-account .page-article .container,
.woocommerce-account .page-header-plain .container {
    max-width: min(1480px, calc(100% - 32px));
}

/* WC default float (30%/68%) yerine kontrollü grid:
   sidebar sabit 260px sol kenarda (başlık hizasında),
   content 1fr sağa yayılır.
   .logged-in ile sınırlandı — login formunu bozmaz. */
.woocommerce-account.logged-in .entry-content .woocommerce {
    display: grid;
    grid-template-columns: 260px 1fr;
    grid-template-areas:
        "notices notices"
        "nav     content";
    gap: 32px;
    align-items: start;
}
.woocommerce-account.logged-in .entry-content .woocommerce > .woocommerce-notices-wrapper {
    grid-area: notices;
    margin: 0 !important;
}
.woocommerce-account.logged-in .entry-content .woocommerce > .woocommerce-MyAccount-navigation {
    grid-area: nav;
    width: auto !important;
    float: none !important;
    margin: 0 !important;
}
.woocommerce-account.logged-in .entry-content .woocommerce > .woocommerce-MyAccount-content {
    grid-area: content;
    width: auto !important;
    float: none !important;
    margin: 0 !important;
    min-width: 0; /* grid item'ın taşmasını engeller */
}

/* ----- Görsel katman ----- */

/* Sidebar nav — kart container */
.woocommerce-account .woocommerce-MyAccount-navigation {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    padding: 12px;
    position: relative;
    overflow: hidden;
}
.woocommerce-account .woocommerce-MyAccount-navigation::before {
    content: "";
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--accent), transparent);
    pointer-events: none;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul {
    list-style: none;
    margin: 0;
    padding: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li {
    list-style: none;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li:last-child {
    border-bottom: none;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 13px 18px;
    border-radius: var(--radius-sm);
    color: var(--text-secondary);
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.01em;
    text-decoration: none;
    background: transparent;
    border: 0;
    position: relative;
    transition: background var(--transition), color var(--transition), padding-left var(--transition);
}

/* Endpoint ikonları (gold stroke, hover'da opaklık artar, active'de siyah'a invert) */
.woocommerce-account .woocommerce-MyAccount-navigation ul li a::before {
    content: "";
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    opacity: 0.65;
    transition: opacity var(--transition), filter var(--transition);
}
.woocommerce-account .woocommerce-MyAccount-navigation-link--dashboard a::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c9a96e' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='3' width='7' height='9' rx='1.5'/><rect x='14' y='3' width='7' height='5' rx='1.5'/><rect x='14' y='12' width='7' height='9' rx='1.5'/><rect x='3' y='16' width='7' height='5' rx='1.5'/></svg>");
}
.woocommerce-account .woocommerce-MyAccount-navigation-link--orders a::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c9a96e' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M6 2 3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4Z'/><path d='M3 6h18'/><path d='M16 10a4 4 0 1 1-8 0'/></svg>");
}
.woocommerce-account .woocommerce-MyAccount-navigation-link--downloads a::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c9a96e' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/><polyline points='7 10 12 15 17 10'/><line x1='12' y1='15' x2='12' y2='3'/></svg>");
}
.woocommerce-account .woocommerce-MyAccount-navigation-link--edit-address a::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c9a96e' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0Z'/><circle cx='12' cy='10' r='3'/></svg>");
}
.woocommerce-account .woocommerce-MyAccount-navigation-link--payment-methods a::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c9a96e' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><rect x='2' y='5' width='20' height='14' rx='2'/><line x1='2' y1='10' x2='22' y2='10'/></svg>");
}
.woocommerce-account .woocommerce-MyAccount-navigation-link--edit-account a::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c9a96e' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='8' r='4'/><path d='M4 21a8 8 0 0 1 16 0'/></svg>");
}
.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout a::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d97a7a' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/><polyline points='16 17 21 12 16 7'/><line x1='21' y1='12' x2='9' y2='12'/></svg>");
}

/* Hover */
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover {
    background: var(--bg-elevated);
    color: var(--text-primary);
    padding-left: 22px;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover::before {
    opacity: 1;
}

/* Aktif */
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a {
    background: var(--accent);
    color: #0c0703;
    font-weight: 600;
    box-shadow: 0 4px 14px rgba(201, 169, 110, 0.22);
    padding-left: 18px;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a::before {
    opacity: 1;
    filter: brightness(0);
}

/* Çıkış */
.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout {
    margin-top: 8px;
    padding-top: 10px;
    border-top: 1px solid var(--border);
}
.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout a {
    color: #d97a7a;
}
.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout a:hover {
    background: rgba(217, 122, 122, 0.08);
    color: #e8a0a0;
}
.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout.is-active a {
    background: #d97a7a;
    color: #0c0703;
}

/* ------------------------------------------------------------
   Content panel (sağ)
   ------------------------------------------------------------ */
.woocommerce-account .woocommerce-MyAccount-content {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    padding: 32px;
    color: var(--text-primary);
    min-height: 400px;
}
.woocommerce-account .woocommerce-MyAccount-content > p,
.woocommerce-account .woocommerce-MyAccount-content > div > p {
    color: var(--text-secondary);
    line-height: 1.7;
    margin: 0 0 14px;
    font-size: 15px;
}
.woocommerce-account .woocommerce-MyAccount-content p strong {
    color: var(--text-primary);
    font-weight: 600;
}
.woocommerce-account .woocommerce-MyAccount-content a {
    color: var(--accent);
    text-decoration: none;
    border-bottom: 1px solid rgba(201, 169, 110, 0.3);
    transition: color var(--transition), border-color var(--transition);
}
.woocommerce-account .woocommerce-MyAccount-content a:hover {
    color: var(--accent-hover);
    border-bottom-color: var(--accent);
}
.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3 {
    color: var(--text-primary);
    margin: 0 0 18px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--border);
    position: relative;
    font-weight: 600;
}
.woocommerce-account .woocommerce-MyAccount-content h2::after,
.woocommerce-account .woocommerce-MyAccount-content h3::after {
    content: "";
    position: absolute;
    left: 0; bottom: -1px;
    width: 40px;
    height: 2px;
    background: var(--accent);
}

/* Tablolar — Siparişler / İndirmeler */
.woocommerce-account .woocommerce-MyAccount-content table.shop_table {
    width: 100%;
    background: var(--bg-secondary);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    border-collapse: separate;
    border-spacing: 0;
    overflow: hidden;
    margin: 0 0 20px;
    font-size: 14px;
}
.woocommerce-account .woocommerce-MyAccount-content table.shop_table thead th {
    background: var(--bg-tertiary);
    color: var(--text-muted);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 14px 18px;
    border: 0;
    border-bottom: 1px solid var(--border);
    text-align: left;
}
.woocommerce-account .woocommerce-MyAccount-content table.shop_table tbody td {
    padding: 16px 18px;
    border: 0;
    border-bottom: 1px solid var(--border);
    color: var(--text-secondary);
    vertical-align: middle;
}
.woocommerce-account .woocommerce-MyAccount-content table.shop_table tbody tr:last-child td {
    border-bottom: 0;
}
.woocommerce-account .woocommerce-MyAccount-content table.shop_table tbody tr:hover td {
    background: rgba(255, 255, 255, 0.02);
    color: var(--text-primary);
}
.woocommerce-account .woocommerce-MyAccount-content table.shop_table mark.order-status,
.woocommerce-account .woocommerce-MyAccount-content table.shop_table .woocommerce-orders-table__cell-order-status {
    display: inline-flex;
    align-items: center;
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
    background: var(--bg-tertiary);
    color: var(--text-secondary);
    border: 1px solid var(--border);
}

/* Adresler — WC default .u-columns.col2-set float layout'unu grid ile ez */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses,
.woocommerce-account .woocommerce-MyAccount-content .u-columns.col2-set.woocommerce-Addresses {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)) !important;
    gap: 20px !important;
    margin: 0 !important;
    width: 100% !important;
    float: none !important;
}
/* WC clearfix ::before/::after grid'i bozar — gizle */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses::before,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses::after {
    display: none !important;
    content: none !important;
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .u-column1,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .u-column2,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .col-1,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .col-2 {
    background: var(--bg-secondary);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    padding: 24px;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    float: none !important;
    margin: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin: 0 0 16px !important;
    padding: 0 !important;
    border: 0 !important;
}
/* Başlık (h2 — WC modern templatede h2, eski h3) küçük, tek satır, uppercase rozet stili.
   Tema'nın global clamp h2/h3 stilini ezer. */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title :is(h2, h3),
.woocommerce-account .entry-content .woocommerce-Address-title :is(h2, h3) {
    border-bottom: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 1.3 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    color: var(--text-muted) !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
    flex: 0 1 auto !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title :is(h2, h3)::after {
    display: none !important;
    content: none !important;
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title .edit {
    color: var(--accent) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    padding: 6px 12px !important;
    border: 1px solid var(--border) !important;
    border-radius: 999px !important;
    background: transparent !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
    transition: all var(--transition);
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title .edit:hover {
    background: var(--accent) !important;
    color: #0c0703 !important;
    border-color: var(--accent) !important;
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address address {
    font-style: normal;
    color: var(--text-secondary);
    line-height: 1.75;
    margin: 0;
    font-size: 14px;
}

/* Formlar (Hesap Detayları / Adres Düzenle) */
.woocommerce-account .woocommerce-MyAccount-content form .form-row {
    margin: 0 0 16px;
    padding: 0;
    float: none;
    width: 100%;
}
.woocommerce-account .woocommerce-MyAccount-content form .form-row-first,
.woocommerce-account .woocommerce-MyAccount-content form .form-row-last {
    width: calc(50% - 8px);
    display: inline-block;
    vertical-align: top;
}
.woocommerce-account .woocommerce-MyAccount-content form .form-row-first {
    margin-right: 12px;
}
.woocommerce-account .woocommerce-MyAccount-content form label:not(.checkbox) {
    display: block;
    color: var(--text-muted);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin: 0 0 8px;
}
.woocommerce-account .woocommerce-MyAccount-content form .required {
    color: var(--accent);
    text-decoration: none;
}
.woocommerce-account .woocommerce-MyAccount-content form input.input-text,
.woocommerce-account .woocommerce-MyAccount-content form input[type="text"],
.woocommerce-account .woocommerce-MyAccount-content form input[type="email"],
.woocommerce-account .woocommerce-MyAccount-content form input[type="tel"],
.woocommerce-account .woocommerce-MyAccount-content form input[type="password"],
.woocommerce-account .woocommerce-MyAccount-content form select,
.woocommerce-account .woocommerce-MyAccount-content form textarea {
    width: 100%;
    padding: 13px 16px;
    background: var(--bg-primary);
    border: 1px solid var(--border);
    border-radius: var(--radius-sm);
    color: var(--text-primary);
    font-size: 15px;
    line-height: 1.4;
    transition: border-color var(--transition), box-shadow var(--transition);
}
.woocommerce-account .woocommerce-MyAccount-content form input.input-text:focus,
.woocommerce-account .woocommerce-MyAccount-content form select:focus,
.woocommerce-account .woocommerce-MyAccount-content form textarea:focus {
    outline: 0;
    border-color: var(--accent);
    box-shadow: 0 0 0 3px rgba(201, 169, 110, 0.12);
}
.woocommerce-account .woocommerce-MyAccount-content form fieldset {
    margin: 28px 0 20px;
    padding: 22px;
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    background: var(--bg-secondary);
}
.woocommerce-account .woocommerce-MyAccount-content form fieldset legend {
    padding: 0 10px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--accent);
}

/* Butonlar — submit / view / order again */
.woocommerce-account .woocommerce-MyAccount-content button[type="submit"],
.woocommerce-account .woocommerce-MyAccount-content .button,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 28px;
    background: var(--accent);
    color: #0c0703;
    border: 1px solid var(--accent);
    border-radius: 999px;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    text-decoration: none;
    cursor: pointer;
    transition: all var(--transition);
}
.woocommerce-account .woocommerce-MyAccount-content table.shop_table .button {
    padding: 8px 16px;
    font-size: 11px;
    text-decoration: none;
}
.woocommerce-account .woocommerce-MyAccount-content button[type="submit"]:hover,
.woocommerce-account .woocommerce-MyAccount-content .button:hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Button:hover {
    background: var(--accent-hover);
    border-color: var(--accent-hover);
    color: #0c0703;
    transform: translateY(-1px);
    box-shadow: 0 6px 18px rgba(201, 169, 110, 0.22);
}

/* WC bildirimleri */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-error {
    background: var(--bg-secondary);
    border: 1px solid var(--border);
    border-left: 3px solid var(--accent);
    color: var(--text-secondary);
    padding: 14px 18px;
    border-radius: var(--radius-sm);
    margin: 0 0 16px;
    font-size: 14px;
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-error {
    border-left-color: #d97a7a;
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message {
    border-left-color: #7ad99a;
}

/* Pagination */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-pagination ul {
    display: flex;
    gap: 6px;
    justify-content: center;
    list-style: none;
    padding: 0;
    margin: 24px 0 0;
    background: transparent;
    border: 0;
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-pagination ul li {
    border: 0;
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-pagination ul li a,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-pagination ul li span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 10px;
    border: 1px solid var(--border);
    border-radius: var(--radius-sm);
    background: var(--bg-secondary);
    color: var(--text-secondary);
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    transition: all var(--transition);
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-pagination ul li a:hover {
    border-color: var(--accent);
    color: var(--accent);
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-pagination ul li .current {
    background: var(--accent);
    color: #0c0703;
    border-color: var(--accent);
}

/* Responsive — tablet ve mobilde tek sütun + yatay nav grid */
@media (max-width: 900px) {
    .woocommerce-account.logged-in .entry-content .woocommerce {
        grid-template-columns: 1fr;
        grid-template-areas:
            "notices"
            "nav"
            "content";
        gap: 20px;
    }
}

@media (max-width: 768px) {
    .woocommerce-account.logged-in .entry-content .woocommerce {
        gap: 16px;
    }
    .woocommerce-account .woocommerce-MyAccount-navigation {
        padding: 8px;
    }
    .woocommerce-account .woocommerce-MyAccount-navigation ul {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 4px;
    }
    .woocommerce-account .woocommerce-MyAccount-navigation ul li {
        flex: 1 1 calc(50% - 4px);
    }
    .woocommerce-account .woocommerce-MyAccount-navigation ul li a {
        padding: 10px 12px;
        font-size: 13px;
        justify-content: center;
    }
    .woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout {
        flex-basis: 100%;
        margin-top: 6px;
        padding-top: 8px;
    }
    .woocommerce-account .woocommerce-MyAccount-content {
        padding: 20px;
    }
    .woocommerce-account .woocommerce-MyAccount-content form .form-row-first,
    .woocommerce-account .woocommerce-MyAccount-content form .form-row-last {
        width: 100%;
        margin-right: 0;
        display: block;
    }
    /* Address kartı dar ekranda tek sütun grid + başlık/pill alt alta */
    .woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses {
        grid-template-columns: 1fr;
    }
    .woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 10px !important;
    }
    .woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title :is(h2, h3) {
        white-space: normal !important;
    }
}

/* Breadcrumb */
.woocommerce-breadcrumb {
    color: var(--text-muted) !important;
    font-size: 14px;
    padding: 16px 0;
    margin-bottom: 24px;
    border-bottom: 1px solid var(--border);
}
.woocommerce-breadcrumb a { color: var(--accent) !important; }

/* ============================================================
   SHOP — Refined product listing (additive overrides)
   ============================================================ */

/* Wrap padding */
.woocommerce .wc-main,
.woocommerce-page .wc-main {
    padding: 50px 0 90px !important;
}

/* Hide WC's default page header — we render our own .sandline-shop-hero */
.woocommerce .woocommerce-products-header,
.woocommerce-page .woocommerce-products-header {
    display: none !important;
}

/* Custom Shop Hero — luxury fashion editorial header */
.sandline-shop-hero {
    text-align: center;
    max-width: 720px;
    margin: 0 auto 56px;
    padding: 8px 0 36px;
    position: relative;
}
.sandline-shop-hero::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 64px;
    height: 1px;
    background: var(--accent);
}
.shop-hero-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.35em;
    text-transform: uppercase;
    color: var(--accent);
    margin: 0 0 18px;
}
.shop-hero-eyebrow::before,
.shop-hero-eyebrow::after {
    content: '';
    display: inline-block;
    width: 28px;
    height: 1px;
    background: var(--accent);
    opacity: 0.55;
}
.shop-hero-title {
    font-size: clamp(2rem, 4.5vw, 3.2rem) !important;
    line-height: 1.05 !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--text-primary) !important;
    text-align: center !important;
    text-transform: uppercase !important;
}
.shop-hero-tagline {
    max-width: 520px;
    margin: 18px auto 0 !important;
    padding: 0 !important;
    color: var(--text-secondary) !important;
    font-size: 0.95rem !important;
    font-style: italic !important;
    line-height: 1.7 !important;
    font-weight: 300 !important;
}

/* Ürün sayısı rozeti — tagline'ın altında, ince çizginin üstünde */
.shop-hero-count {
    display: inline-block;
    margin-top: 18px;
    padding: 5px 14px;
    border: 1px solid var(--border);
    border-radius: 999px;
    background: var(--bg-card);
    color: var(--text-muted);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

/* Toolbar'daki "TEK BİR SONUÇ GÖSTERİLİYOR" — artık hero'da rozet var,
   dublike olmasın diye gizliyoruz. Sıralama dropdown'u sağda kalır. */
.woocommerce .sandline-shop-toolbar .woocommerce-result-count {
    display: none !important;
}
.woocommerce .sandline-shop-toolbar {
    justify-content: flex-end !important;
}
@media (max-width: 600px) {
    .sandline-shop-hero {
        margin-bottom: 36px;
        padding-bottom: 28px;
    }
    .shop-hero-eyebrow {
        font-size: 10px;
        letter-spacing: 0.25em;
        gap: 10px;
    }
    .shop-hero-eyebrow::before,
    .shop-hero-eyebrow::after {
        width: 18px;
    }
    .shop-hero-tagline {
        font-size: 0.88rem !important;
    }
}

/* Toolbar: wrapped in .sandline-shop-toolbar for reliable flex layout */
.sandline-shop-toolbar {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px;
    margin: 0 0 28px !important;
    padding: 0 !important;
    width: 100%;
    clear: both;
}
.sandline-shop-toolbar .woocommerce-result-count {
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 12px !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    color: var(--text-muted) !important;
}
.sandline-shop-toolbar .woocommerce-ordering {
    float: none !important;
    margin: 0 !important;
}
.sandline-shop-toolbar .woocommerce-ordering select {
    min-width: 200px;
    padding: 8px 14px !important;
    font-size: 13px !important;
    cursor: pointer;
}
/* Fallback if PHP wrapper isn't applied yet (older cached pages) */
.woocommerce .woocommerce-result-count,
.woocommerce-page .woocommerce-result-count {
    margin-bottom: 16px;
}

/* Product grid — pack from start, hide any phantom non-product children */
.woocommerce ul.products,
.woocommerce-page ul.products {
    clear: both !important;
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)) !important;
    grid-auto-flow: row dense !important;
    justify-items: stretch !important;
    justify-content: start !important;
    align-items: stretch !important;
    gap: 24px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    padding-inline-start: 0 !important;
    margin-inline-start: 0 !important;
    text-align: left !important;
    list-style: none !important;
}
/* No pseudo-elements eating a grid cell */
.woocommerce ul.products::before,
.woocommerce ul.products::after,
.woocommerce-page ul.products::before,
.woocommerce-page ul.products::after {
    content: none !important;
    display: none !important;
}
/* Kill any phantom child that isn't a real product/category list-item
   (TranslatePress wrappers, plugin-injected divs, empty spans, etc.) */
.woocommerce ul.products > *:not(li) {
    display: none !important;
}
.woocommerce ul.products > li:not(.product):not(.product-category) {
    display: none !important;
}
/* Belt-and-suspenders: anchor the first real product to column 1 */
.woocommerce ul.products > li.product:first-of-type {
    grid-column-start: 1 !important;
}

/* Product card */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
    position: relative;
    background: var(--bg-card) !important;
    border: 1px solid var(--border) !important;
    border-radius: var(--radius-md) !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    transition: transform var(--transition), border-color var(--transition), box-shadow var(--transition) !important;
}
.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover {
    transform: translateY(-4px);
    border-color: var(--accent) !important;
    box-shadow: 0 14px 32px rgba(0,0,0,0.5);
}

/* Image wrapper + zoom on hover */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link {
    display: block;
    overflow: hidden;
    background: var(--bg-tertiary);
}
.woocommerce ul.products li.product a img,
.woocommerce-page ul.products li.product a img {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
    object-fit: cover !important;
    margin: 0 !important;
    display: block;
    transition: transform 0.5s ease;
}
.woocommerce ul.products li.product:hover a img {
    transform: scale(1.05);
}

/* Title */
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title {
    font-size: 0.95rem !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    letter-spacing: 0.01em !important;
    color: var(--text-primary) !important;
    padding: 16px 16px 4px !important;
    margin: 0 !important;
    min-height: 2.8em;
}

/* Price */
.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price {
    color: var(--accent) !important;
    font-weight: 700 !important;
    font-size: 1.05rem !important;
    padding: 0 16px 14px !important;
    margin: 0 !important;
    display: block;
}
.woocommerce ul.products li.product .price .call-for-price {
    color: var(--text-secondary) !important;
    font-style: italic !important;
    font-weight: 400 !important;
    font-size: 0.9rem !important;
}
.woocommerce ul.products li.product .price del {
    color: var(--text-muted) !important;
    opacity: 0.7;
    margin-right: 8px;
    font-weight: 500 !important;
}
.woocommerce ul.products li.product .price ins {
    background: transparent !important;
    text-decoration: none !important;
    color: var(--accent) !important;
}

/* Button — outline style, pinned to bottom */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart,
.woocommerce-page ul.products li.product .button {
    margin: auto 16px 16px !important;
    padding: 10px 16px !important;
    background: transparent !important;
    color: var(--accent) !important;
    border: 1px solid var(--accent) !important;
    border-radius: var(--radius-sm) !important;
    font-weight: 600 !important;
    font-size: 11px !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
    text-align: center !important;
    display: block !important;
    transition: background var(--transition), color var(--transition) !important;
}
.woocommerce ul.products li.product .button:hover,
.woocommerce ul.products li.product .added_to_cart:hover {
    background: var(--accent) !important;
    color: #000 !important;
}

/* Sale badge */
.woocommerce span.onsale,
.woocommerce ul.products li.product .onsale {
    background: var(--accent) !important;
    color: #000 !important;
    border-radius: 999px !important;
    min-height: auto !important;
    min-width: auto !important;
    padding: 5px 12px !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
    line-height: 1 !important;
    top: 12px !important;
    left: 12px !important;
    right: auto !important;
    margin: 0 !important;
    position: absolute !important;
    z-index: 2;
    box-shadow: 0 4px 12px rgba(0,0,0,0.4);
}

/* Pagination */
.woocommerce nav.woocommerce-pagination,
.woocommerce-page nav.woocommerce-pagination {
    margin-top: 48px;
    text-align: center;
    border: none;
    clear: both;
}
.woocommerce nav.woocommerce-pagination ul {
    border: none !important;
    display: inline-flex;
    gap: 6px;
}
.woocommerce nav.woocommerce-pagination ul li {
    border: none !important;
    margin: 0 !important;
}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
    min-width: 38px;
    height: 38px;
    line-height: 38px !important;
    padding: 0 10px !important;
    border: 1px solid var(--border) !important;
    border-radius: var(--radius-sm) !important;
    color: var(--text-secondary) !important;
    background: transparent !important;
    transition: all var(--transition);
}
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current {
    background: var(--accent) !important;
    color: #000 !important;
    border-color: var(--accent) !important;
}

/* Tablet — 3 cards per row */
@media (min-width: 768px) and (max-width: 1199px) {
    .woocommerce ul.products,
    .woocommerce-page ul.products {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}

/* Mobile — 2 cards per row, stacked toolbar */
@media (max-width: 600px) {
    .woocommerce .wc-main,
    .woocommerce-page .wc-main {
        padding: 30px 0 60px !important;
    }
    .woocommerce .woocommerce-products-header,
    .woocommerce-page .woocommerce-products-header {
        margin-bottom: 28px !important;
    }
    .woocommerce .woocommerce-result-count,
    .woocommerce-page .woocommerce-result-count,
    .woocommerce .woocommerce-ordering,
    .woocommerce-page .woocommerce-ordering {
        float: none !important;
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        margin: 0 0 12px !important;
        padding: 0 !important;
    }
    .woocommerce .woocommerce-ordering select,
    .woocommerce-page .woocommerce-ordering select {
        width: 100%;
        min-width: 0;
    }
    .woocommerce ul.products,
    .woocommerce-page ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 14px !important;
        margin-top: 16px !important;
    }
    .woocommerce ul.products li.product h2,
    .woocommerce ul.products li.product .woocommerce-loop-product__title {
        font-size: 0.85rem !important;
        padding: 12px 10px 4px !important;
        min-height: 2.6em;
    }
    .woocommerce ul.products li.product .price {
        font-size: 0.95rem !important;
        padding: 0 10px 10px !important;
    }
    .woocommerce ul.products li.product .button,
    .woocommerce ul.products li.product .added_to_cart {
        margin: auto 10px 12px !important;
        padding: 9px 8px !important;
        font-size: 10px !important;
        letter-spacing: 0.05em !important;
    }
}

/* ============================================================
   FOOTER — Professional with prominent brand row
   ============================================================ */
.site-footer {
    background: linear-gradient(180deg,
        rgba(232, 226, 214, 0.98) 0%,
        rgba(190, 178, 158, 0.97) 14%,
        rgba(128, 94, 50, 0.96) 30%,
        rgba(66, 46, 24, 0.97) 50%,
        rgba(46, 34, 19, 0.98) 72%,
        rgba(32, 23, 12, 1) 100%);
    border-top: 1px solid rgba(201, 169, 110, 0.3);
    padding: 0 0 28px;
    margin-top: 0;
    position: relative;
}
/* Brand row vurgusunu kaldır — siteye uyumlu, geçişsiz */
.site-footer::before {
    content: ''; position: absolute; top: 0; left: 0; right: 0; height: 1px;
    background: linear-gradient(90deg, transparent 0%, var(--accent) 50%, transparent 100%);
    opacity: 0.4;
}

/* === Brand row (büyük logo + tagline + altın çizgi) === */
.footer-brand-row {
    text-align: center;
    padding: 40px 24px 36px;
    position: relative;
}
.footer-brand-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    margin-bottom: 20px;
    transition: transform var(--transition);
}
.footer-brand-link:hover { transform: translateY(-2px); }
.footer-logo-img {
    max-height: 210px;
    width: auto;
    max-width: min(780px, 92vw);
    filter: drop-shadow(0 8px 28px rgba(0, 0, 0, 0.55));
    transition: filter 0.4s ease;
}
.footer-brand-link:hover .footer-logo-img {
    filter: drop-shadow(0 8px 24px rgba(0, 0, 0, 0.6));
}
.footer-brand-tagline {
    color: rgba(35, 28, 18, 0.85);
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 0.04em;
    max-width: 580px;
    margin: 0 auto 32px;
    font-style: italic;
}
.footer-brand-divider {
    width: 80px; height: 2px; margin: 0 auto;
    background: linear-gradient(90deg, transparent 0%, var(--accent) 50%, transparent 100%);
    border-radius: 2px;
}

.footer-brand-text {
    font-size: 2.5rem;
    font-weight: 800;
    color: rgba(25, 20, 12, 0.95);
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

/* === Links grid === */
.footer-grid {
    display: grid;
    grid-template-columns: 1.3fr 0.9fr 1.6fr 0.9fr 0.8fr;
    gap: 28px;
    padding: 0 0 48px;
    border-bottom: 1px solid var(--border);
}
.footer-col h4.widget-title {
    color: var(--text-primary);
    margin: 0 0 20px;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-weight: 700;
    position: relative;
    padding-bottom: 12px;
}
.footer-col h4.widget-title::after {
    content: ''; position: absolute; bottom: 0; left: 0;
    width: 32px; height: 2px; background: var(--accent);
    border-radius: 2px;
}
.footer-col .footer-links,
.footer-col ul {
    list-style: none; padding: 0; margin: 0;
}
.footer-col .footer-links li,
.footer-col ul li { margin-bottom: 12px; }
.footer-col .footer-links a,
.footer-col ul a {
    color: var(--text-secondary);
    font-size: 14px;
    text-decoration: none;
    transition: color var(--transition), padding-left var(--transition);
    display: inline-block;
    position: relative;
}
.footer-col .footer-links a::before {
    content: '→'; position: absolute;
    left: -16px; top: 0;
    color: var(--accent); opacity: 0;
    transition: opacity var(--transition), left var(--transition);
}
.footer-col .footer-links a:hover {
    color: var(--accent);
    padding-left: 6px;
}
.footer-col .footer-links a:hover::before {
    opacity: 1;
    left: -12px;
}

/* === Contact list (iconlu) === */
.footer-contact-list {
    list-style: none; padding: 0; margin: 0;
}
.footer-contact-list li {
    display: flex; align-items: flex-start; gap: 12px;
    margin-bottom: 14px;
    color: var(--text-secondary);
    font-size: 14px;
    line-height: 1.5;
}
.footer-contact-list li svg {
    color: var(--accent);
    flex-shrink: 0;
    margin-top: 3px;
}
.footer-contact-list li a {
    color: var(--text-secondary);
    text-decoration: none;
    transition: color var(--transition);
}
.footer-contact-list li a:hover { color: var(--accent); }

/* === Footer bottom (copyright) === */
.footer-bottom {
    padding-top: 28px;
    display: flex; justify-content: space-between; align-items: center;
    flex-wrap: wrap; gap: 16px;
    color: var(--text-muted); font-size: 13px;
}
.footer-copyright { margin: 0; letter-spacing: 0.03em; }
.footer-copyright strong { color: var(--accent); font-weight: 600; }
.footer-bottom-menu {
    list-style: none; padding: 0; margin: 0;
    display: flex; gap: 24px;
}
.footer-bottom-menu a {
    color: var(--text-muted);
    font-size: 13px;
    text-decoration: none;
    transition: color var(--transition);
}
.footer-bottom-menu a:hover { color: var(--accent); }

/* === ZNG Dijital credit (sağ alt) === */
.footer-credit {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--text-muted);
    font-size: 11px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-decoration: none;
    padding: 6px 10px;
    border-radius: var(--radius-sm);
    transition: all var(--transition);
    margin-left: auto;
}
.footer-credit:hover {
    color: var(--text-primary);
    background: rgba(255, 255, 255, 0.03);
}
.footer-credit-label {
    opacity: 0.7;
    transition: opacity var(--transition);
}
.footer-credit:hover .footer-credit-label { opacity: 1; }
.footer-credit-logo {
    height: 28px !important;
    width: auto !important;
    max-width: 80px !important;
    max-height: 28px !important;
    object-fit: contain;
    display: inline-block !important;
    opacity: 0.7;
    transition: opacity var(--transition);
}
.footer-credit:hover .footer-credit-logo {
    opacity: 1;
}

@media (max-width: 600px) {
    .footer-credit { margin-left: 0; justify-content: center; }
    .footer-credit-label { font-size: 10px; }
}

/* === Responsive === */
@media (max-width: 1200px) {
    .footer-grid {
        grid-template-columns: 1fr 1fr 1fr;
        gap: 40px 32px;
    }
    .footer-col-blog { grid-column: span 3; }
}
@media (max-width: 1024px) {
    .footer-grid {
        grid-template-columns: 1fr 1fr;
        gap: 40px 32px;
    }
    .footer-col-blog { grid-column: span 2; }
    .footer-brand-row { padding: 32px 24px 28px; }
    .footer-logo-img { max-height: 160px; }
}
@media (max-width: 600px) {
    .footer-grid {
        grid-template-columns: 1fr;
        gap: 32px;
        padding-bottom: 32px;
    }
    .footer-col-blog { grid-column: span 1; }
    .footer-brand-row { padding: 24px 24px 20px; }
    .footer-logo-img { max-height: 130px; }
    .footer-brand-tagline { font-size: 14px; }
    .footer-bottom {
        flex-direction: column;
        text-align: center;
        padding-top: 20px;
    }
    .footer-bottom-menu { flex-wrap: wrap; justify-content: center; }
}

/* ============================================================
   CONTACT PAGE (custom layout via blocks/HTML)
   ============================================================ */
.contact-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 24px; margin: 40px 0;
}
.contact-item {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    padding: 28px; text-align: center;
}
.contact-item .contact-icon {
    color: var(--accent); margin: 0 auto 12px;
    width: 48px; height: 48px;
    background: rgba(201, 169, 110, 0.1);
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
}
.contact-item h3 { margin: 0 0 8px; font-size: 1.1rem; color: var(--text-primary); }
.contact-item p { color: var(--text-secondary); margin: 0; }

/* CF7 form styling */
.wpcf7-form { background: var(--bg-card); padding: 32px; border-radius: var(--radius-md); border: 1px solid var(--border); }
.wpcf7-form p { margin-bottom: 16px; }
.wpcf7-form label { display: block; color: var(--text-primary); font-weight: 500; margin-bottom: 6px; }
.wpcf7-form input, .wpcf7-form textarea, .wpcf7-form select {
    width: 100%; margin-top: 4px;
}
.wpcf7-form input[type="submit"], .wpcf7-submit {
    background: var(--accent) !important; color: #000 !important;
    border: none !important; padding: 14px 32px !important;
    border-radius: var(--radius-sm) !important;
    font-weight: 600 !important; text-transform: uppercase !important;
    font-size: 14px !important; letter-spacing: 0.05em !important;
    cursor: pointer; width: auto !important;
    transition: background var(--transition) !important;
}
.wpcf7-form input[type="submit"]:hover { background: var(--accent-hover) !important; }
.wpcf7-response-output {
    border: 1px solid var(--border) !important;
    color: var(--text-primary) !important;
    border-radius: var(--radius-sm) !important;
    padding: 12px 16px !important;
}
.wpcf7 form.sent .wpcf7-response-output { border-color: var(--accent) !important; }

/* Stat / vision / mission blocks for About page */
.about-pillars {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 24px;
    margin: 40px 0;
}
.about-pillar {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    padding: 32px;
}
.about-pillar h3 {
    color: var(--accent);
    margin-bottom: 12px;
    font-size: 1.4rem;
}
.about-pillar p { color: var(--text-secondary); margin: 0; }

/* Why us list */
.why-list {
    list-style: none !important; padding: 0 !important;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 16px;
}
.why-list li {
    background: var(--bg-card);
    border-left: 3px solid var(--accent);
    padding: 16px 20px;
    margin: 0 !important;
    color: var(--text-primary);
    border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
}

/* Services page list */
.services-list {
    display: grid;
    gap: 32px;
    margin: 40px 0;
}
.service-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 48px;
    align-items: center;
}
.service-row:nth-child(even) .service-row-text { order: -1; }
.service-row-image img { border-radius: var(--radius-md); aspect-ratio: 4/3; object-fit: cover; }
.service-row-text h3 { color: var(--accent); font-size: 1.6rem; }
.service-row-text p { color: var(--text-secondary); font-size: 1.05rem; line-height: 1.7; }
@media (max-width: 768px) {
    .service-row { grid-template-columns: 1fr; gap: 24px; }
    .service-row:nth-child(even) .service-row-text { order: 0; }
}



/* ============================================================
   SERVICES PAGE (page-hizmetlerimiz.php)
   Dark-theme, animated, professional — namespace: .srv-*
   ============================================================ */

/* Reveal-on-scroll base */
.services-page .reveal {
    opacity: 0;
    transform: translateY(28px);
    transition:
        opacity 0.8s cubic-bezier(0.22, 1, 0.36, 1),
        transform 0.8s cubic-bezier(0.22, 1, 0.36, 1);
    transition-delay: var(--delay, 0ms);
    will-change: opacity, transform;
}
.services-page .reveal.is-visible {
    opacity: 1;
    transform: translateY(0);
}

/* ---------- HERO ---------- */
.srv-hero {
    position: relative;
    min-height: 86vh;
    display: flex;
    align-items: center;
    padding: 140px 0 120px;
    overflow: hidden;
    isolation: isolate;
    background:
        radial-gradient(1200px 600px at 78% 12%, rgba(201,169,110,0.12), transparent 60%),
        radial-gradient(900px 500px at 8% 88%, rgba(201,169,110,0.07), transparent 65%),
        linear-gradient(135deg, #181009 0%, #0c0703 55%, #070402 100%);
    background-size: cover;
    background-position: center;
    color: var(--text-primary);
}
.srv-hero--has-image::before {
    content: "";
    position: absolute; inset: 0;
    background: inherit;
    background-image: inherit;
    background-size: cover;
    background-position: center;
    transform: scale(1.08);
    animation: srvKenBurns 24s ease-in-out infinite alternate;
    z-index: 0;
    opacity: 0.45;
}
.srv-hero-overlay {
    position: absolute; inset: 0;
    background:
        linear-gradient(180deg, rgba(10,10,10,0.55) 0%, rgba(10,10,10,0.85) 70%, rgba(5,5,5,0.96) 100%),
        linear-gradient(90deg, rgba(10,10,10,0.65) 0%, rgba(10,10,10,0.1) 60%, rgba(10,10,10,0) 100%);
    z-index: 1;
}
.srv-hero-grid {
    position: absolute; inset: 0;
    background-image:
        linear-gradient(rgba(255,255,255,0.045) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,0.045) 1px, transparent 1px);
    background-size: 64px 64px;
    mask-image: radial-gradient(ellipse 70% 60% at 50% 45%, #000 40%, transparent 80%);
    -webkit-mask-image: radial-gradient(ellipse 70% 60% at 50% 45%, #000 40%, transparent 80%);
    z-index: 1; opacity: 0.6; pointer-events: none;
}
.srv-hero-glow {
    position: absolute;
    width: 540px; height: 540px;
    border-radius: 50%;
    filter: blur(120px);
    z-index: 1;
    pointer-events: none;
    will-change: transform;
}
.srv-hero-glow--1 {
    top: -140px; right: -160px;
    background: radial-gradient(circle, rgba(201,169,110,0.38), transparent 70%);
    animation: srvGlowFloat 14s ease-in-out infinite alternate;
}
.srv-hero-glow--2 {
    bottom: -180px; left: -140px;
    background: radial-gradient(circle, rgba(120,90,40,0.32), transparent 70%);
    animation: srvGlowFloat 18s ease-in-out -6s infinite alternate-reverse;
}
.srv-hero-shapes { position: absolute; inset: 0; z-index: 1; pointer-events: none; }
.srv-hero-shape {
    position: absolute; display: block;
    border: 1px solid rgba(201,169,110,0.22);
    border-radius: 4px;
    opacity: 0.55;
}
.srv-hero-shape--1 {
    width: 150px; height: 150px;
    top: 18%; right: 9%;
    transform: rotate(18deg);
    animation: srvFloat 12s ease-in-out infinite;
    --rot: 18deg;
}
.srv-hero-shape--2 {
    width: 84px; height: 84px;
    bottom: 22%; right: 24%;
    border-color: rgba(201,169,110,0.16);
    border-radius: 50%;
    animation: srvFloat 9s ease-in-out -3s infinite reverse;
}
.srv-hero-shape--3 {
    width: 62px; height: 62px;
    top: 28%; left: 6%;
    border-color: rgba(245,245,245,0.10);
    transform: rotate(45deg);
    animation: srvFloat 15s ease-in-out -5s infinite;
    --rot: 45deg;
}
.srv-hero-content {
    position: relative; z-index: 2;
    max-width: 900px;
}
.srv-badge {
    display: inline-flex; align-items: center; gap: 10px;
    padding: 8px 16px;
    background: rgba(201, 169, 110, 0.08);
    border: 1px solid rgba(201, 169, 110, 0.25);
    border-radius: 999px;
    color: var(--accent);
    font-size: 12px; font-weight: 600;
    letter-spacing: 0.08em; text-transform: uppercase;
    margin-bottom: 28px;
    opacity: 0;
    transform: translateY(20px);
    animation: srvFadeUp 0.8s 0.1s ease-out forwards;
    backdrop-filter: blur(6px);
}
.srv-badge-dot {
    width: 8px; height: 8px;
    background: var(--accent);
    border-radius: 50%;
    box-shadow: 0 0 0 0 rgba(201,169,110,0.55);
    animation: srvPulse 2.2s ease-out infinite;
}
.srv-eyebrow {
    display: flex; align-items: center; gap: 16px;
    font-size: 11px; font-weight: 600;
    letter-spacing: 0.32em; text-transform: uppercase;
    color: var(--accent);
    margin: 0 0 28px;
    opacity: 0;
    transform: translateY(20px);
    animation: srvFadeUp 0.8s 0.2s ease-out forwards;
}
.srv-eyebrow-line {
    display: inline-block;
    width: 56px; height: 1px;
    background: linear-gradient(90deg, var(--accent), transparent);
    transform-origin: left;
    animation: srvLineGrow 1s 0.3s ease-out backwards;
}
.srv-hero-title {
    font-size: clamp(2.25rem, 5vw, 4.2rem);
    line-height: 1.05;
    margin: 0 0 28px;
    font-weight: 700;
    letter-spacing: -0.025em;
    color: var(--text-primary);
}
.srv-hero-title-line {
    display: block; overflow: hidden;
    opacity: 0; transform: translateY(40px);
    animation: srvFadeUp 0.9s ease-out forwards;
}
.srv-hero-title-line:nth-child(1) { animation-delay: 0.35s; }
.srv-hero-title-line:nth-child(2) { animation-delay: 0.5s; }
.srv-hero-title-accent {
    font-style: normal;
    background: linear-gradient(135deg, var(--accent) 0%, #f0d9a3 50%, var(--accent) 100%);
    background-size: 200% auto;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    animation: srvShimmer 4s linear infinite;
}
.srv-hero-subtitle {
    font-size: clamp(1rem, 1.2vw, 1.15rem);
    line-height: 1.7;
    color: var(--text-secondary);
    max-width: 620px;
    margin: 0 0 44px;
    opacity: 0;
    transform: translateY(20px);
    animation: srvFadeUp 0.9s 0.65s ease-out forwards;
}
.srv-hero-actions {
    display: flex; gap: 16px; flex-wrap: wrap;
    opacity: 0; transform: translateY(20px);
    animation: srvFadeUp 0.9s 0.8s ease-out forwards;
}
.srv-hero-actions .btn { position: relative; overflow: hidden; }
.srv-hero-actions .btn .btn-icon { transition: transform 0.35s ease; }
.srv-hero-actions .btn:hover .btn-icon { transform: translateX(4px); }
.srv-hero-actions .btn-primary::after {
    content: ""; position: absolute; inset: 0;
    background: linear-gradient(120deg, transparent 30%, rgba(255,255,255,0.28) 50%, transparent 70%);
    transform: translateX(-120%);
    transition: transform 0.75s ease;
    pointer-events: none;
}
.srv-hero-actions .btn-primary:hover::after { transform: translateX(120%); }

.srv-hero-scroll {
    position: absolute;
    bottom: 32px; left: 50%;
    transform: translateX(-50%);
    display: flex; flex-direction: column; align-items: center;
    gap: 12px; z-index: 2;
    color: var(--text-muted);
    font-size: 11px; letter-spacing: 0.25em;
    text-transform: uppercase; text-decoration: none;
    opacity: 0;
    animation: srvFadeUp 0.9s 1.1s ease-out forwards;
    transition: color var(--transition);
}
.srv-hero-scroll:hover { color: var(--accent); }
.srv-hero-scroll-label { color: inherit; }
.srv-hero-scroll-line {
    width: 1px; height: 48px;
    background: linear-gradient(180deg, var(--accent), transparent);
    position: relative; overflow: hidden;
}
.srv-hero-scroll-line::after {
    content: ""; position: absolute; top: -100%; left: 0;
    width: 100%; height: 50%;
    background: linear-gradient(180deg, transparent, var(--accent));
    animation: srvScrollDot 2.2s ease-in-out infinite;
}

/* ---------- STAT BAR ---------- */
.srv-statbar {
    background: linear-gradient(180deg, var(--bg-primary) 0%, var(--bg-secondary) 100%);
    border-bottom: 1px solid var(--border);
    padding: 56px 0;
    position: relative;
}
.srv-statbar::before {
    content: ""; position: absolute;
    top: 0; left: 50%; transform: translateX(-50%);
    width: min(720px, 70%); height: 1px;
    background: linear-gradient(90deg, transparent, rgba(201,169,110,0.45), transparent);
}
.srv-statbar-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 32px;
}
.srv-stat {
    display: flex; flex-direction: column;
    align-items: center; text-align: center;
    gap: 10px;
    position: relative;
    padding: 0 12px;
}
.srv-stat + .srv-stat::before {
    content: ""; position: absolute;
    left: 0; top: 20%; height: 60%; width: 1px;
    background: linear-gradient(180deg, transparent, var(--border-light), transparent);
}
.srv-stat-num {
    font-size: clamp(2rem, 4vw, 3rem);
    font-weight: 800;
    line-height: 1;
    background: linear-gradient(135deg, #f5e9d0 0%, var(--accent) 50%, #b08d50 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    letter-spacing: -0.02em;
    font-feature-settings: "tnum";
}
.srv-stat-label {
    font-size: 12px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--text-muted);
    font-weight: 500;
}

/* ---------- SECTIONS GENERIC ---------- */
.srv-section { padding: 110px 0; position: relative; }
.srv-section--services    { background: var(--bg-primary); }
.srv-section--process     { background: var(--bg-secondary); overflow: hidden; }
.srv-section--capabilities{ background: var(--bg-primary); }
.srv-section--content     { background: var(--bg-secondary); }
.srv-section--cta         { background: var(--bg-primary); padding: 80px 0 120px; }

.srv-section--process::before {
    content: ""; position: absolute;
    top: -100px; right: -120px;
    width: 420px; height: 420px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(201,169,110,0.10), transparent 70%);
    filter: blur(60px);
    z-index: 0;
    pointer-events: none;
}
.srv-section--process > .container { position: relative; z-index: 1; }

.srv-section-header {
    text-align: center;
    max-width: 720px;
    margin: 0 auto 64px;
}
.srv-section-eyebrow {
    display: inline-block;
    font-size: 11px; font-weight: 600;
    letter-spacing: 0.32em; text-transform: uppercase;
    color: var(--accent);
    margin-bottom: 16px;
    position: relative;
    padding: 6px 0;
}
.srv-section-eyebrow::before,
.srv-section-eyebrow::after {
    content: ""; position: absolute; top: 50%;
    width: 40px; height: 1px;
    background: linear-gradient(90deg, transparent, var(--accent));
}
.srv-section-eyebrow::before { right: calc(100% + 16px); transform: scaleX(-1); }
.srv-section-eyebrow::after  { left:  calc(100% + 16px); }
.srv-section-title {
    font-size: clamp(1.8rem, 3.5vw, 2.6rem);
    margin: 0 0 16px;
    letter-spacing: -0.02em;
}
.srv-section-subtitle {
    color: var(--text-secondary);
    font-size: 1.05rem;
    line-height: 1.7;
    margin: 0;
}

/* ---------- SERVICES GRID (CARDS) ---------- */
.srv-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 24px;
}
.srv-card {
    position: relative;
    background: linear-gradient(180deg, var(--bg-card) 0%, var(--bg-secondary) 100%);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    padding: 40px 32px 36px;
    overflow: hidden;
    isolation: isolate;
    transition:
        transform 0.5s cubic-bezier(0.22, 1, 0.36, 1),
        border-color 0.4s ease,
        box-shadow 0.4s ease;
    cursor: default;
}
.srv-card::before {
    content: "";
    position: absolute; inset: 0;
    background: radial-gradient(600px circle at var(--mx, 50%) var(--my, 50%), rgba(201,169,110,0.10), transparent 40%);
    opacity: 0;
    transition: opacity 0.4s ease;
    pointer-events: none;
    z-index: -1;
}
.srv-card::after {
    content: "";
    position: absolute; inset: 0;
    border-radius: inherit;
    padding: 1px;
    background: linear-gradient(135deg, rgba(201,169,110,0.5), transparent 35%, transparent 65%, rgba(201,169,110,0.3));
    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
            mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
            mask-composite: exclude;
    opacity: 0;
    transition: opacity 0.4s ease;
    pointer-events: none;
}
.srv-card:hover {
    transform: translateY(-6px);
    border-color: rgba(201,169,110,0.35);
    box-shadow: 0 24px 60px -16px rgba(0,0,0,0.7), 0 0 0 1px rgba(201,169,110,0.08);
}
.srv-card:hover::before,
.srv-card:hover::after { opacity: 1; }
.srv-card-num {
    position: absolute;
    top: 24px; right: 28px;
    font-size: 13px; font-weight: 700;
    letter-spacing: 0.12em;
    color: var(--text-faint);
    transition: color 0.4s ease;
}
.srv-card:hover .srv-card-num { color: var(--accent); }
.srv-card-icon {
    width: 64px; height: 64px;
    border-radius: var(--radius-md);
    display: flex; align-items: center; justify-content: center;
    background: linear-gradient(135deg, rgba(201,169,110,0.18), rgba(201,169,110,0.04));
    border: 1px solid rgba(201,169,110,0.2);
    color: var(--accent);
    margin-bottom: 24px;
    transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1), background 0.4s ease, border-color 0.4s ease;
    position: relative;
}
.srv-card:hover .srv-card-icon {
    transform: scale(1.06) rotate(-3deg);
    background: linear-gradient(135deg, rgba(201,169,110,0.28), rgba(201,169,110,0.08));
    border-color: rgba(201,169,110,0.45);
}
.srv-card-icon svg { transition: transform 0.5s ease; }
.srv-card:hover .srv-card-icon svg { transform: scale(1.05); }
.srv-card-title {
    font-size: 1.35rem;
    margin: 0 0 12px;
    color: var(--text-primary);
    letter-spacing: -0.01em;
    transition: color 0.3s ease;
}
.srv-card:hover .srv-card-title { color: var(--accent-hover); }
.srv-card-desc {
    color: var(--text-secondary);
    font-size: 0.97rem;
    line-height: 1.7;
    margin: 0 0 20px;
}
.srv-card-list {
    list-style: none;
    padding: 0;
    margin: 0 0 8px;
    display: flex; flex-direction: column;
    gap: 8px;
}
.srv-card-list li {
    position: relative;
    padding-left: 22px;
    color: var(--text-secondary);
    font-size: 0.9rem;
    line-height: 1.5;
}
.srv-card-list li::before {
    content: "";
    position: absolute; left: 0; top: 0.55em;
    width: 12px; height: 1px;
    background: var(--accent);
    transition: width 0.35s ease;
}
.srv-card:hover .srv-card-list li::before { width: 16px; }
.srv-card-arrow {
    position: absolute;
    bottom: 24px; right: 24px;
    width: 40px; height: 40px;
    border-radius: 50%;
    background: rgba(201,169,110,0.08);
    border: 1px solid rgba(201,169,110,0.25);
    color: var(--accent);
    display: flex; align-items: center; justify-content: center;
    opacity: 0;
    transform: translate(-6px, 6px) scale(0.85);
    transition: all 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}
.srv-card:hover .srv-card-arrow {
    opacity: 1;
    transform: translate(0, 0) scale(1);
    background: var(--accent);
    color: #000;
    border-color: var(--accent);
}

/* ---------- PROCESS / TIMELINE ---------- */
.srv-timeline {
    position: relative;
    max-width: 880px;
    margin: 0 auto;
    padding: 12px 0;
}
.srv-timeline-line {
    position: absolute;
    left: 31px; top: 0; bottom: 0;
    width: 2px;
    background: linear-gradient(180deg, transparent 0%, rgba(201,169,110,0.5) 8%, rgba(201,169,110,0.5) 92%, transparent 100%);
    border-radius: 2px;
}
.srv-step {
    position: relative;
    display: grid;
    grid-template-columns: 64px 1fr;
    gap: 28px;
    align-items: flex-start;
    padding: 16px 0 40px;
}
.srv-step:last-child { padding-bottom: 0; }
.srv-step-marker {
    width: 64px; height: 64px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--bg-elevated), var(--bg-card));
    border: 1px solid rgba(201,169,110,0.35);
    color: #f5e9d0;
    display: flex; align-items: center; justify-content: center;
    font-weight: 800;
    font-size: 1.15rem;
    letter-spacing: 0.05em;
    position: relative;
    z-index: 1;
    box-shadow: 0 0 0 4px var(--bg-secondary), 0 8px 24px rgba(0,0,0,0.4);
    transition: transform 0.4s ease, background 0.4s ease, color 0.4s ease;
}
.srv-step-marker > span {
    position: relative;
    z-index: 2;
    color: inherit;
    line-height: 1;
    text-shadow: 0 1px 2px rgba(0,0,0,0.45);
}
.srv-step-marker::before {
    content: "";
    position: absolute; inset: -6px;
    border-radius: 50%;
    border: 1px solid rgba(201,169,110,0.18);
    opacity: 0;
    transition: opacity 0.4s ease, transform 0.4s ease;
}
.srv-step.is-visible .srv-step-marker {
    background: linear-gradient(135deg, var(--accent), var(--accent-dark));
    color: #0c0703;
}
.srv-step.is-visible .srv-step-marker > span {
    text-shadow: 0 1px 0 rgba(255,255,255,0.25);
}
.srv-step.is-visible .srv-step-marker::before { opacity: 1; transform: scale(1.05); }
.srv-step-body { padding-top: 8px; }
.srv-step-title {
    color: var(--text-primary);
    margin: 0 0 8px;
    font-size: 1.2rem;
    letter-spacing: -0.01em;
}
.srv-step-body p {
    color: var(--text-secondary);
    margin: 0;
    font-size: 0.98rem;
    line-height: 1.7;
}

/* ---------- CAPABILITIES ---------- */
.srv-cap-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 20px;
}
.srv-cap {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    padding: 22px;
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-left: 3px solid var(--accent);
    border-radius: var(--radius-sm);
    transition: transform 0.35s ease, background 0.35s ease, border-color 0.35s ease;
}
.srv-cap:hover {
    transform: translateX(4px);
    background: var(--bg-elevated);
    border-color: var(--border-light);
    border-left-color: var(--accent-hover);
}
.srv-cap-icon {
    width: 36px; height: 36px;
    border-radius: 50%;
    background: rgba(201,169,110,0.12);
    color: var(--accent);
    display: flex; align-items: center; justify-content: center;
    flex-shrink: 0;
    transition: transform 0.35s ease;
}
.srv-cap:hover .srv-cap-icon { transform: scale(1.08) rotate(-6deg); }
.srv-cap h4 {
    margin: 0 0 4px;
    font-size: 1rem;
    color: var(--text-primary);
}
.srv-cap p {
    margin: 0;
    color: var(--text-secondary);
    font-size: 0.92rem;
    line-height: 1.55;
}

/* ---------- CONTENT SECTION (optional WP content) ---------- */
.srv-content-inner { max-width: 820px; }

/* ---------- CTA ---------- */
.srv-cta {
    position: relative;
    background: linear-gradient(135deg, var(--bg-secondary) 0%, var(--bg-card) 100%);
    border: 1px solid var(--border-light);
    border-radius: var(--radius-lg);
    padding: 64px clamp(28px, 5vw, 56px);
    display: grid;
    grid-template-columns: 1.4fr 1fr;
    gap: 32px;
    align-items: center;
    overflow: hidden;
    isolation: isolate;
}
.srv-cta::before {
    content: "";
    position: absolute; inset: 0;
    background:
        radial-gradient(700px 320px at 100% 50%, rgba(201,169,110,0.12), transparent 65%),
        radial-gradient(500px 280px at 0% 100%, rgba(201,169,110,0.08), transparent 70%);
    z-index: -1;
    pointer-events: none;
}
.srv-cta::after {
    content: "";
    position: absolute; inset: 0;
    border-radius: inherit;
    padding: 1px;
    background: linear-gradient(135deg, rgba(201,169,110,0.6), transparent 40%, transparent 60%, rgba(201,169,110,0.4));
    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
            mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
            mask-composite: exclude;
    opacity: 0.7;
    z-index: -1;
    pointer-events: none;
}
.srv-cta-glow {
    position: absolute;
    width: 380px; height: 380px;
    top: -120px; right: -120px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(201,169,110,0.22), transparent 70%);
    filter: blur(70px);
    z-index: -1;
    animation: srvGlowFloat 16s ease-in-out infinite alternate;
}
.srv-cta-text .srv-section-eyebrow { margin-bottom: 14px; }
.srv-cta-text .srv-section-eyebrow::before,
.srv-cta-text .srv-section-eyebrow::after { display: none; }
.srv-cta-text h2 {
    font-size: clamp(1.5rem, 3vw, 2.2rem);
    margin: 0 0 12px;
    line-height: 1.2;
    color: var(--text-primary);
}
.srv-cta-text p {
    color: var(--text-secondary);
    margin: 0;
    font-size: 1.02rem;
    line-height: 1.7;
}
.srv-cta-actions {
    display: flex; justify-content: flex-end;
    gap: 12px; flex-wrap: wrap;
}
.srv-cta-actions .btn { position: relative; overflow: hidden; }
.srv-cta-actions .btn .btn-icon { transition: transform 0.35s ease; }
.srv-cta-actions .btn:hover .btn-icon { transform: translateX(4px); }
.srv-cta-actions .btn-primary::after {
    content: ""; position: absolute; inset: 0;
    background: linear-gradient(120deg, transparent 30%, rgba(255,255,255,0.28) 50%, transparent 70%);
    transform: translateX(-120%);
    transition: transform 0.75s ease;
    pointer-events: none;
}
.srv-cta-actions .btn-primary:hover::after { transform: translateX(120%); }

/* ---------- KEYFRAMES ---------- */
@keyframes srvFadeUp { to { opacity: 1; transform: translateY(0); } }
@keyframes srvLineGrow {
    from { transform: scaleX(0); opacity: 0; }
    to   { transform: scaleX(1); opacity: 1; }
}
@keyframes srvShimmer {
    0%   { background-position: 0% 50%; }
    100% { background-position: 200% 50%; }
}
@keyframes srvPulse {
    0%   { box-shadow: 0 0 0 0 rgba(201,169,110,0.55); }
    70%  { box-shadow: 0 0 0 12px rgba(201,169,110,0); }
    100% { box-shadow: 0 0 0 0 rgba(201,169,110,0); }
}
@keyframes srvFloat {
    0%, 100% { transform: translate(0, 0) rotate(var(--rot, 0deg)); }
    50%      { transform: translate(10px, -18px) rotate(calc(var(--rot, 0deg) + 6deg)); }
}
@keyframes srvGlowFloat {
    0%   { transform: translate(0, 0) scale(1); opacity: 0.9; }
    100% { transform: translate(-40px, 30px) scale(1.15); opacity: 0.65; }
}
@keyframes srvKenBurns {
    0%   { transform: scale(1.08) translate(0, 0); }
    100% { transform: scale(1.18) translate(-1.5%, -1.5%); }
}
@keyframes srvScrollDot {
    0%   { top: -100%; }
    100% { top: 100%; }
}

/* ---------- RESPONSIVE ---------- */
@media (max-width: 1024px) {
    .srv-statbar-grid { grid-template-columns: repeat(2, 1fr); gap: 32px 24px; }
    .srv-stat + .srv-stat::before { display: none; }
    .srv-cta { grid-template-columns: 1fr; }
    .srv-cta-actions { justify-content: flex-start; }
}
@media (max-width: 768px) {
    .srv-hero { min-height: 80vh; padding: 110px 0 90px; }
    .srv-hero-shape--1 { width: 100px; height: 100px; right: -20px; top: 10%; }
    .srv-hero-shape--2 { width: 60px; height: 60px; right: 12%; }
    .srv-hero-shape--3 { display: none; }
    .srv-hero-actions { flex-direction: column; align-items: stretch; }
    .srv-hero-actions .btn { width: 100%; justify-content: center; }
    .srv-hero-scroll { display: none; }
    .srv-statbar { padding: 40px 0; }
    .srv-statbar-grid { grid-template-columns: repeat(2, 1fr); }
    .srv-section { padding: 70px 0; }
    .srv-section-header { margin-bottom: 44px; }
    .srv-section-eyebrow::before,
    .srv-section-eyebrow::after { width: 24px; }
    .srv-card { padding: 32px 24px 28px; }
    .srv-step { grid-template-columns: 52px 1fr; gap: 20px; padding-bottom: 32px; }
    .srv-step-marker { width: 52px; height: 52px; font-size: 0.95rem; }
    .srv-timeline-line { left: 25px; }
    .srv-cta { padding: 44px 24px; }
}
@media (max-width: 480px) {
    .srv-statbar-grid { grid-template-columns: 1fr; gap: 28px; }
    .srv-badge { font-size: 11px; padding: 6px 12px; }
    .srv-hero-title { font-size: clamp(1.85rem, 8vw, 2.4rem); }
}

/* ---------- PREFERS REDUCED MOTION ---------- */
/* TranslatePress floater fix for dark theme */
.trp-floater-ls {
    background: var(--bg-elevated) !important;
    border: 1px solid var(--border) !important;
    color: var(--text-primary) !important;
}
.trp-language-switcher-container .trp-ls-shortcode-current-language {
    background: var(--bg-tertiary) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border) !important;
}

/* Responsive */
@media (max-width: 768px) {
    .section { padding: 60px 0; }
    .hero { min-height: 88vh; padding: 96px 0 80px; }
    .hero-actions { flex-direction: column; align-items: stretch; }
    .hero-actions .btn { width: 100%; justify-content: center; }
    .hero-stats { gap: 24px 32px; margin-top: 48px; padding-top: 28px; }
    .hero-shape--1 { width: 90px; height: 90px; right: -20px; top: 12%; }
    .hero-shape--2 { width: 60px; height: 60px; right: 12%; }
    .hero-shape--3 { display: none; }
    .header-tools a { width: 36px; height: 36px; }
    .header-tools .lang-switcher { display: none; }
}

/* ============================================================
   FRONT PAGE V2 — Modern, animated sections
   ============================================================ */

/* === Reveal animations === */
.reveal {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1),
                transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
    will-change: opacity, transform;
}
.reveal.is-visible {
    opacity: 1;
    transform: translateY(0);
}
/* === Section eyebrow (gold label) === */
.section-eyebrow {
    display: inline-block;
    color: var(--accent);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    margin-bottom: 16px;
}
.section-title-accent {
    color: var(--accent);
    font-style: italic;
    font-weight: 300;
}

/* === 1) HİZMETLER V2 === */
.section-services-v2 {
    background: var(--bg-primary);
    padding: 120px 0 100px;
}
.services-v2-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    margin-top: 56px;
}
.service-v2 {
    position: relative;
    aspect-ratio: 3/4;
    background-size: cover;
    background-position: center;
    border-radius: var(--radius-md);
    overflow: hidden;
    transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}
.service-v2:hover { transform: translateY(-8px); }
.service-v2-overlay {
    position: absolute; inset: 0;
    background: linear-gradient(180deg, rgba(10,10,10,0.2) 0%, rgba(10,10,10,0.95) 100%);
    transition: background 0.4s ease;
}
.service-v2:hover .service-v2-overlay {
    background: linear-gradient(180deg, rgba(10,10,10,0.5) 0%, rgba(10,10,10,0.98) 100%);
}
.service-v2-content {
    position: absolute; inset: 0;
    padding: 32px 28px;
    display: flex; flex-direction: column; justify-content: flex-end;
    color: #fff; z-index: 2;
}
.service-v2-number {
    position: absolute; top: 24px; left: 28px;
    font-size: 14px; font-weight: 700; letter-spacing: 0.15em;
    color: var(--accent);
}
.service-v2-title {
    color: #fff; font-size: 1.5rem;
    margin: 0 0 12px;
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.service-v2-desc {
    color: var(--text-secondary); font-size: 14px; line-height: 1.6;
    margin: 0 0 16px;
    max-height: 0; opacity: 0; overflow: hidden;
    transition: max-height 0.5s ease, opacity 0.4s ease, margin 0.4s ease;
}
.service-v2-link {
    display: inline-flex; align-items: center; gap: 6px;
    color: var(--accent);
    font-size: 13px; font-weight: 600;
    text-transform: uppercase; letter-spacing: 0.1em;
    text-decoration: none;
    opacity: 0; transform: translateY(8px);
    transition: opacity 0.4s ease 0.1s, transform 0.4s ease 0.1s;
}
.service-v2-link svg { transition: transform var(--transition); }
.service-v2-link:hover svg { transform: translateX(4px); }
.service-v2:hover .service-v2-title { transform: translateY(-4px); }
.service-v2:hover .service-v2-desc {
    max-height: 200px; opacity: 1; margin-bottom: 16px;
}
.service-v2:hover .service-v2-link { opacity: 1; transform: translateY(0); }

/* === 2) ÜRETİM SÜRECİ === */
.section-process {
    position: relative;
    background: var(--bg-secondary);
    padding: 120px 0 100px;
    overflow: hidden;
}
.process-bg {
    position: absolute; inset: 0;
    background:
        radial-gradient(circle at 80% 20%, rgba(201, 169, 110, 0.05) 0%, transparent 50%),
        radial-gradient(circle at 20% 80%, rgba(201, 169, 110, 0.04) 0%, transparent 50%);
    z-index: 0;
}
.section-process .container { position: relative; z-index: 1; }
.process-track {
    position: relative; margin-top: 80px;
    display: grid; grid-template-columns: repeat(5, 1fr); gap: 24px;
}
.process-line, .process-line-fill {
    position: absolute; top: 32px; left: 10%; right: 10%; height: 2px;
}
.process-line { background: var(--border-light); }
.process-line-fill {
    background: linear-gradient(90deg, var(--accent) 0%, var(--accent-dark) 100%);
    width: 0%;
    transition: width 1.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.process-track.is-active .process-line-fill { width: 80%; }
.process-step { position: relative; text-align: center; padding: 0 8px; }
.process-step-num {
    display: inline-flex; align-items: center; justify-content: center;
    width: 64px; height: 64px;
    background: var(--bg-elevated);
    border: 2px solid var(--border-light);
    border-radius: 50%;
    color: var(--accent);
    font-size: 16px; font-weight: 800; letter-spacing: 0.08em;
    margin-bottom: 20px;
    position: relative; z-index: 2;
    transition: all 0.4s ease;
}
.process-step.is-visible .process-step-num {
    border-color: var(--accent);
    background: linear-gradient(135deg, var(--accent) 0%, var(--accent-dark) 100%);
    color: #000;
    box-shadow: 0 0 0 6px rgba(201, 169, 110, 0.12),
                0 8px 20px rgba(201, 169, 110, 0.3);
}
.process-step-content h4 {
    color: var(--text-primary); font-size: 1.05rem; margin: 0 0 8px;
}
.process-step-content p {
    color: var(--text-secondary); font-size: 13px; line-height: 1.5; margin: 0;
}

/* === 3) RAKAMLARLA === */
.section-stats {
    position: relative;
    background-size: cover; background-position: center;
    background-attachment: fixed;
    padding: 100px 0;
    color: #fff;
}
.stats-overlay {
    position: absolute; inset: 0;
    background: linear-gradient(135deg, rgba(10,10,10,0.92) 0%, rgba(10,10,10,0.85) 100%);
}
.section-stats .container { position: relative; z-index: 1; }
.stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }
.stat-card { text-align: center; padding: 32px 16px; position: relative; }
.stat-card + .stat-card::before {
    content: ''; position: absolute; top: 25%; left: 0;
    width: 1px; height: 50%;
    background: linear-gradient(180deg, transparent 0%, var(--border-light) 50%, transparent 100%);
}
.stat-num {
    display: block;
    font-size: clamp(2.5rem, 5vw, 4rem);
    font-weight: 800;
    color: var(--accent);
    line-height: 1; margin-bottom: 12px;
    font-variant-numeric: tabular-nums;
    background: linear-gradient(180deg, var(--accent) 0%, var(--accent-dark) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}
.stat-label {
    display: block; color: #fff;
    font-size: 15px; font-weight: 600;
    text-transform: uppercase; letter-spacing: 0.1em;
    margin-bottom: 8px;
}
.stat-desc { color: var(--text-secondary); font-size: 13px; margin: 0; }

/* === 4) KATEGORİLER V2 === */
.section-categories-v2 {
    background: var(--bg-primary);
    padding: 120px 0 100px;
}
.categories-v2-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(2, 240px);
    gap: 20px;
    margin-top: 56px;
}
.category-v2 {
    position: relative;
    background: var(--bg-card) center/cover no-repeat;
    border-radius: var(--radius-md);
    overflow: hidden;
    text-decoration: none;
    display: block;
    transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}
.category-v2:hover { transform: scale(1.02); z-index: 2; }
.category-v2--featured { grid-column: span 2; grid-row: span 2; }
.category-v2-overlay {
    position: absolute; inset: 0;
    background: linear-gradient(135deg, rgba(10,10,10,0.3) 0%, rgba(10,10,10,0.85) 100%);
    transition: background 0.4s ease;
}
.category-v2:hover .category-v2-overlay {
    background: linear-gradient(135deg, rgba(10,10,10,0.5) 0%, rgba(0,0,0,0.95) 100%);
}
.category-v2-content {
    position: absolute; inset: 0;
    padding: 24px;
    display: flex; flex-direction: column; justify-content: flex-end;
    color: #fff; z-index: 2;
}
.category-v2--featured .category-v2-content { padding: 40px; }
.category-v2-meta { margin-bottom: 8px; }
.category-v2-count {
    display: inline-block;
    color: var(--accent);
    font-size: 11px; font-weight: 700;
    letter-spacing: 0.15em; text-transform: uppercase;
    padding: 4px 10px;
    background: rgba(201, 169, 110, 0.15);
    border: 1px solid rgba(201, 169, 110, 0.3);
    border-radius: 20px;
}
.category-v2-name {
    color: #fff; font-size: 1.4rem;
    margin: 0; line-height: 1.2;
    transition: transform 0.4s ease;
}
.category-v2--featured .category-v2-name { font-size: 2.4rem; font-weight: 800; }
.category-v2:hover .category-v2-name { transform: translateX(4px); }
.category-v2-arrow {
    position: absolute; top: 24px; right: 24px;
    color: #fff; width: 44px; height: 44px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    backdrop-filter: blur(8px);
    opacity: 0; transform: translateX(-8px);
    transition: all 0.4s ease;
}
.category-v2:hover .category-v2-arrow {
    opacity: 1; transform: translateX(0);
    background: var(--accent); border-color: var(--accent); color: #000;
}

/* === 5) ÜRÜNLER V2 === */
.section-products-v2 {
    background: var(--bg-secondary);
    padding: 120px 0 100px;
}
.products-v2-grid {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px;
    margin-top: 56px;
}
.product-v2 {
    background: var(--bg-card);
    border-radius: var(--radius-md);
    overflow: hidden;
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.4s ease;
}
.product-v2:hover { transform: translateY(-6px); box-shadow: var(--shadow-lg); }
.product-v2-thumb {
    display: block; aspect-ratio: 4/5;
    position: relative; overflow: hidden;
    background: var(--bg-tertiary);
}
.product-v2-thumb img {
    width: 100%; height: 100%;
    object-fit: cover;
    transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}
.product-v2:hover .product-v2-thumb img { transform: scale(1.08); }
.product-v2-overlay {
    position: absolute; inset: 0;
    background: linear-gradient(180deg, transparent 50%, rgba(10,10,10,0.85) 100%);
    display: flex; align-items: flex-end; justify-content: center;
    padding-bottom: 24px;
    opacity: 0; transition: opacity 0.4s ease;
}
.product-v2:hover .product-v2-overlay { opacity: 1; }
.product-v2-cta {
    color: var(--accent);
    font-size: 13px; font-weight: 700;
    text-transform: uppercase; letter-spacing: 0.15em;
    padding: 10px 24px;
    background: rgba(0,0,0,0.6);
    border: 1px solid var(--accent);
    border-radius: var(--radius-sm);
    backdrop-filter: blur(4px);
}
.product-v2-badge {
    position: absolute; top: 16px; left: 16px;
    background: #c0392b; color: #fff;
    font-size: 11px; font-weight: 700;
    text-transform: uppercase; letter-spacing: 0.1em;
    padding: 6px 12px;
    border-radius: var(--radius-sm);
    z-index: 2;
}
.product-v2-badge--quote { background: var(--accent); color: #000; }
.product-v2-info { padding: 20px 24px 24px; }
.product-v2-cat {
    display: block;
    color: var(--accent);
    font-size: 11px; font-weight: 600;
    text-transform: uppercase; letter-spacing: 0.15em;
    margin-bottom: 8px;
}
.product-v2-name { margin: 0 0 12px; font-size: 1.05rem; line-height: 1.3; }
.product-v2-name a { color: var(--text-primary); text-decoration: none; transition: color var(--transition); }
.product-v2-name a:hover { color: var(--accent); }
.product-v2-price { color: var(--accent); font-size: 1.2rem; font-weight: 700; }
.product-v2-price .call-for-price {
    color: var(--text-secondary); font-size: 14px;
    font-style: italic; font-weight: 400;
}
.products-v2-cta { text-align: center; margin-top: 48px; }
.products-v2-cta .btn { gap: 8px; }

/* === 6) NEDEN SANDLINE V2 === */
.section-why-v2 {
    background: var(--bg-primary);
    padding: 120px 0;
}
.why-v2-layout {
    display: grid; grid-template-columns: 1fr 1fr; gap: 80px;
    align-items: center;
}
.why-v2-visual { position: relative; }
.why-v2-img-frame {
    position: relative;
    border-radius: var(--radius-md);
    overflow: hidden;
    aspect-ratio: 4/5;
    box-shadow: var(--shadow-lg);
}
.why-v2-img-frame::before {
    content: ''; position: absolute; inset: 0;
    background: linear-gradient(135deg, rgba(201, 169, 110, 0.15) 0%, transparent 60%);
    z-index: 2; pointer-events: none;
}
.why-v2-img-frame img { width: 100%; height: 100%; object-fit: cover; }
.why-v2-badge {
    position: absolute;
    bottom: -32px; right: -32px;
    width: 180px; height: 180px;
    background: linear-gradient(135deg, var(--accent) 0%, var(--accent-dark) 100%);
    border-radius: 50%;
    display: flex; flex-direction: column;
    align-items: center; justify-content: center;
    color: #000;
    box-shadow: 0 12px 32px rgba(201, 169, 110, 0.3);
    text-align: center;
    border: 8px solid var(--bg-primary);
}
.why-v2-badge-num { font-size: 3rem; font-weight: 800; line-height: 1; color: #000; }
.why-v2-badge-label {
    color: #000; font-size: 11px; font-weight: 700;
    text-transform: uppercase; letter-spacing: 0.12em;
    margin-top: 4px;
}
.why-v2-content .section-title { margin-bottom: 20px; }
.why-v2-lead {
    color: var(--text-secondary);
    font-size: 1.05rem; line-height: 1.7;
    margin-bottom: 32px;
}
.why-v2-list { list-style: none; padding: 0; margin: 0 0 40px; }
.why-v2-list li {
    display: flex; gap: 16px;
    padding: 16px 0;
    border-bottom: 1px solid var(--border);
}
.why-v2-list li:last-child { border-bottom: none; }
.why-v2-icon {
    flex-shrink: 0;
    width: 40px; height: 40px;
    background: rgba(201, 169, 110, 0.1);
    border: 1px solid rgba(201, 169, 110, 0.3);
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    color: var(--accent);
}
.why-v2-list h4 { color: var(--text-primary); font-size: 1rem; margin: 0 0 4px; }
.why-v2-list p { color: var(--text-secondary); font-size: 14px; margin: 0; }

/* === 7) CTA V2 === */
.section-cta-v2 {
    position: relative;
    background-size: cover; background-position: center;
    background-attachment: fixed;
    padding: 140px 0;
    color: #fff;
    text-align: center;
}
.cta-v2-overlay {
    position: absolute; inset: 0;
    background: radial-gradient(circle at center, rgba(10,10,10,0.7) 0%, rgba(0,0,0,0.95) 100%);
}
.cta-v2-inner { position: relative; z-index: 1; max-width: 800px; margin: 0 auto; }
.cta-v2-eyebrow { color: var(--accent); }
.cta-v2-title {
    color: #fff;
    font-size: clamp(2.5rem, 5vw, 4rem);
    font-weight: 800;
    line-height: 1.1;
    margin: 0 0 20px;
}
.cta-v2-accent { color: var(--accent); font-style: italic; font-weight: 400; }
.cta-v2-desc {
    color: var(--text-secondary);
    font-size: 1.15rem;
    line-height: 1.7;
    margin: 0 auto 40px;
    max-width: 600px;
}
.cta-v2-actions {
    display: flex; gap: 16px;
    justify-content: center; flex-wrap: wrap;
}
.cta-v2-actions .btn { padding: 16px 36px; }
.btn-ghost-light {
    background: transparent;
    color: #fff;
    border: 1px solid rgba(255, 255, 255, 0.3);
    backdrop-filter: blur(8px);
}
.btn-ghost-light:hover {
    background: rgba(255, 255, 255, 0.1);
    border-color: #fff;
    color: #fff;
    transform: translateY(-2px);
}

/* === Responsive — Front page v2 === */
@media (max-width: 1024px) {
    .services-v2-grid { grid-template-columns: repeat(2, 1fr); }
    .process-track { grid-template-columns: repeat(3, 1fr); gap: 40px 24px; }
    .process-line, .process-line-fill { display: none; }
    .stats-grid { grid-template-columns: repeat(2, 1fr); gap: 32px; }
    .stat-card + .stat-card::before { display: none; }
    .categories-v2-grid {
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: auto;
    }
    .category-v2--featured { grid-column: span 2; }
    .category-v2 { aspect-ratio: 4/3; }
    .products-v2-grid { grid-template-columns: repeat(2, 1fr); }
    .why-v2-layout { grid-template-columns: 1fr; gap: 60px; }
    .why-v2-badge { width: 140px; height: 140px; bottom: -20px; right: -20px; }
    .why-v2-badge-num { font-size: 2.2rem; }
}
@media (max-width: 640px) {
    .section-services-v2, .section-process, .section-categories-v2,
    .section-products-v2, .section-why-v2 { padding: 80px 0 60px; }
    .section-cta-v2 { padding: 100px 0; }
    .services-v2-grid { grid-template-columns: 1fr; gap: 20px; }
    .service-v2 { aspect-ratio: 4/3; }
    .process-track { grid-template-columns: 1fr; gap: 32px; }
    .process-step { text-align: left; display: flex; gap: 20px; align-items: flex-start; }
    .process-step-num { margin-bottom: 0; width: 56px; height: 56px; flex-shrink: 0; }
    .stats-grid { grid-template-columns: 1fr; gap: 24px; }
    .categories-v2-grid { grid-template-columns: 1fr; }
    .category-v2--featured { grid-column: span 1; }
    .category-v2--featured .category-v2-name { font-size: 1.8rem; }
    .products-v2-grid { grid-template-columns: 1fr; }
    .section-stats { background-attachment: scroll; }
    .section-cta-v2 { background-attachment: scroll; }
    .cta-v2-actions { flex-direction: column; }
    .cta-v2-actions .btn { width: 100%; }
}

/* ============================================================
   SINGLE PRODUCT — Enhanced professional layout
   Applies to every WooCommerce single product page.
   ============================================================ */
.woocommerce div.product.sandline-product { display: block; }

/* --- HERO: gallery + summary two-column with subtle ambient backdrop --- */
.sandline-product__hero {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: start; /* let each column size to its content */
    gap: 56px;
    padding: 32px 32px 40px;
    margin: 8px 0 56px;
    background:
        radial-gradient(900px 500px at 0% 0%, rgba(201,169,110,0.07), transparent 60%),
        radial-gradient(700px 400px at 100% 100%, rgba(201,169,110,0.05), transparent 65%),
        linear-gradient(180deg, var(--bg-secondary) 0%, var(--bg-primary) 100%);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    isolation: isolate;
    overflow: hidden;
}
.sandline-product__hero::before {
    content: '';
    position: absolute; inset: 0;
    background:
        linear-gradient(180deg, rgba(255,255,255,0.02), transparent 30%),
        repeating-linear-gradient(45deg, rgba(201,169,110,0.025) 0 1px, transparent 1px 28px);
    pointer-events: none; z-index: 0;
}
.sandline-product__hero-bg { position: absolute; inset: 0; z-index: 0; pointer-events: none; overflow: hidden; }
.sandline-product__glow {
    position: absolute; width: 480px; height: 480px; border-radius: 50%; filter: blur(120px); opacity: 0.55;
}
.sandline-product__glow--1 { top: -160px; left: -120px; background: radial-gradient(circle, rgba(201,169,110,0.25), transparent 70%); }
.sandline-product__glow--2 { bottom: -180px; right: -120px; background: radial-gradient(circle, rgba(168,138,85,0.18), transparent 70%); }

.sandline-product__gallery,
.sandline-product__summary {
    position: relative; z-index: 1;
}

/* ========== GALLERY ========== */
/* Wrapper around the WC gallery — sticky on desktop, framed with gold corner accents */
.sandline-product__gallery {
    position: relative; z-index: 1;
    width: 100%;
    max-width: 520px;
    margin: 0 auto; /* center within the column */
}
@media (min-width: 981px) {
    .sandline-product__gallery {
        position: sticky;
        top: 92px;
        align-self: start;
        margin-right: 0; /* hug the right edge of the left column on desktop */
        margin-left: auto;
    }
}
.sandline-product__gallery::before,
.sandline-product__gallery::after,
.sandline-product__gallery > .woocommerce-product-gallery::before,
.sandline-product__gallery > .woocommerce-product-gallery::after {
    content: ''; position: absolute; width: 22px; height: 22px;
    border: 1.5px solid var(--accent); pointer-events: none; z-index: 4;
    border-radius: 1px;
}
.sandline-product__gallery::before  { top: -1px; left: -1px;  border-right: none;  border-bottom: none; }
.sandline-product__gallery::after   { top: -1px; right: -1px; border-left: none;   border-bottom: none; }
.sandline-product__gallery > .woocommerce-product-gallery::before { bottom: -1px; left: -1px;  border-right: none; border-top: none; }
.sandline-product__gallery > .woocommerce-product-gallery::after  { bottom: -1px; right: -1px; border-left: none;  border-top: none; }

.woocommerce div.product.sandline-product .woocommerce-product-gallery {
    width: 100% !important; float: none !important; margin: 0 !important;
    position: relative;
    background:
        radial-gradient(circle at 30% 30%, rgba(201,169,110,0.05), transparent 60%),
        linear-gradient(180deg, #1d1d1d 0%, #121212 100%);
    border: 1px solid var(--border-light);
    border-radius: var(--radius-md);
    padding: 0;
    box-shadow: 0 24px 60px -20px rgba(0,0,0,0.75), inset 0 1px 0 rgba(255,255,255,0.04);
    overflow: hidden;
}
/* Main image — full-bleed framed, gentle zoom on hover */
.woocommerce div.product.sandline-product .woocommerce-product-gallery__wrapper {
    margin: 0 !important; padding: 0 !important;
    aspect-ratio: 1 / 1; overflow: hidden; position: relative;
    background: #0f0f0f;
}
.woocommerce div.product.sandline-product .woocommerce-product-gallery__image {
    width: 100% !important; height: 100% !important;
    display: flex !important; align-items: center; justify-content: center;
}
.woocommerce div.product.sandline-product .woocommerce-product-gallery__image a {
    display: block; width: 100%; height: 100%;
}
.woocommerce div.product.sandline-product .woocommerce-product-gallery__image img {
    width: 100% !important; height: 100% !important;
    object-fit: cover; object-position: center;
    border-radius: 0; transition: transform 0.8s cubic-bezier(.2,.7,.2,1);
}
.woocommerce div.product.sandline-product .woocommerce-product-gallery:hover .woocommerce-product-gallery__image img {
    transform: scale(1.04);
}
/* Trigger / zoom indicator badge — uses WC's built-in trigger */
.woocommerce div.product.sandline-product .woocommerce-product-gallery__trigger {
    top: 16px !important; right: 16px !important;
    width: 42px; height: 42px;
    background: rgba(10,10,10,0.85) !important;
    border: 1px solid rgba(201,169,110,0.3) !important;
    border-radius: 50% !important;
    color: var(--accent) !important;
    font-size: 0 !important;
    display: inline-flex !important; align-items: center; justify-content: center;
    text-indent: 0 !important;
    backdrop-filter: blur(8px);
    transition: background var(--transition), border-color var(--transition), transform var(--transition);
    z-index: 6;
}
.woocommerce div.product.sandline-product .woocommerce-product-gallery__trigger:hover {
    background: var(--accent) !important; border-color: var(--accent) !important;
    color: #000 !important; transform: scale(1.08);
}
.woocommerce div.product.sandline-product .woocommerce-product-gallery__trigger::before {
    content: ''; display: block; width: 18px; height: 18px;
    background: currentColor;
    -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><circle cx='11' cy='11' r='7'/><path d='m20 20-3-3'/><path d='M11 8v6'/><path d='M8 11h6'/></svg>") center/contain no-repeat;
            mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><circle cx='11' cy='11' r='7'/><path d='m20 20-3-3'/><path d='M11 8v6'/><path d='M8 11h6'/></svg>") center/contain no-repeat;
}

/* Thumbnails strip — sits below the framed main image */
.woocommerce div.product.sandline-product .woocommerce-product-gallery .flex-control-thumbs {
    margin: 0 !important;
    padding: 14px !important;
    gap: 10px; display: flex !important; flex-wrap: wrap;
    list-style: none;
    background: rgba(0,0,0,0.35);
    border-top: 1px solid var(--border);
}
.woocommerce div.product.sandline-product .woocommerce-product-gallery .flex-control-thumbs li {
    width: calc((100% - 30px) / 4) !important; margin: 0 !important;
    aspect-ratio: 1 / 1;
    border-radius: var(--radius-sm); overflow: hidden;
}
.woocommerce div.product.sandline-product .woocommerce-product-gallery .flex-control-thumbs img {
    width: 100% !important; height: 100% !important;
    object-fit: cover;
    border-radius: var(--radius-sm);
    border: 1.5px solid transparent;
    transition: border-color var(--transition), opacity var(--transition), transform var(--transition);
    opacity: 0.65;
    cursor: pointer;
}
.woocommerce div.product.sandline-product .woocommerce-product-gallery .flex-control-thumbs img:hover {
    opacity: 1; transform: scale(1.05);
}
.woocommerce div.product.sandline-product .woocommerce-product-gallery .flex-control-thumbs img.flex-active,
.woocommerce div.product.sandline-product .woocommerce-product-gallery .flex-control-thumbs .flex-active img {
    border-color: var(--accent); opacity: 1;
}
/* Hide thumbnail strip entirely when there's only one image (no gallery) */
.woocommerce div.product.sandline-product .woocommerce-product-gallery:not(.woocommerce-product-gallery--columns-2):not(.woocommerce-product-gallery--columns-3):not(.woocommerce-product-gallery--columns-4):not(.woocommerce-product-gallery--columns-5) .flex-control-thumbs,
.woocommerce div.product.sandline-product .woocommerce-product-gallery .flex-control-thumbs:has(li:only-child) { display: none !important; }

/* Sale flash — sits inside the gallery frame */
.woocommerce span.onsale {
    background: var(--accent) !important;
    color: #000 !important;
    border-radius: 999px !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em; text-transform: uppercase;
    padding: 9px 16px !important;
    min-height: 0 !important; min-width: 0 !important; line-height: 1 !important;
    box-shadow: 0 6px 20px -6px rgba(201,169,110,0.55);
    top: 16px !important; left: 16px !important; right: auto !important;
    z-index: 7;
    font-size: 11px !important;
}

/* Summary column */
.sandline-product__summary { display: flex; flex-direction: column; gap: 18px; padding-top: 8px; }
.sandline-product__eyebrow {
    display: inline-flex; align-items: center; gap: 12px;
    text-transform: uppercase; letter-spacing: 0.22em;
    color: var(--accent); font-size: 12px; font-weight: 600;
}
.sandline-product__eyebrow-line { width: 36px; height: 1px; background: var(--accent); display: block; }

/* Title boyutu/satırı en alttaki hotfix v3'te (html body specificity) yönetiliyor.
   Burada sadece letter-spacing kalıyor — diğer her şey override ediliyor. */
.woocommerce div.product.sandline-product .product_title {
    letter-spacing: -0.01em;
}
.woocommerce div.product.sandline-product p.price,
.woocommerce div.product.sandline-product span.price {
    color: var(--accent);
    font-size: 1.9rem; font-weight: 700;
    margin: 4px 0 0;
    display: inline-flex; align-items: baseline; gap: 12px;
}
.woocommerce div.product.sandline-product p.price del,
.woocommerce div.product.sandline-product span.price del {
    color: var(--text-faint); font-size: 1.1rem; opacity: 1; font-weight: 500;
}
.woocommerce div.product.sandline-product p.price ins,
.woocommerce div.product.sandline-product span.price ins { background: transparent; text-decoration: none; }
.sandline-product .call-for-price {
    color: var(--accent); font-size: 1.4rem; font-weight: 700;
    display: inline-flex; align-items: center; gap: 10px;
}
.sandline-product .call-for-price::before {
    content: ''; width: 8px; height: 8px; border-radius: 50%;
    background: var(--accent); box-shadow: 0 0 0 4px rgba(201,169,110,0.18);
}

/* Short description card */
.sandline-product__excerpt {
    position: relative;
    display: grid; grid-template-columns: 4px 1fr; gap: 18px;
    background: linear-gradient(180deg, rgba(201,169,110,0.05), rgba(201,169,110,0.02));
    border: 1px solid var(--border);
    border-left: none;
    border-radius: var(--radius-md);
    padding: 20px 22px;
    margin: 4px 0 8px;
}
.sandline-product__excerpt-mark {
    background: linear-gradient(180deg, var(--accent), var(--accent-dark));
    border-radius: var(--radius-sm) 0 0 var(--radius-sm);
    width: 4px;
}
.sandline-product__excerpt-body { color: var(--text-secondary); font-size: 1rem; line-height: 1.65; }
.sandline-product__excerpt-body :last-child { margin-bottom: 0; }

/* Add to cart form / quantity */
.woocommerce div.product.sandline-product form.cart {
    display: flex; flex-wrap: wrap; align-items: center; gap: 14px;
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    padding: 14px 16px;
    margin: 8px 0 4px;
}
.woocommerce div.product.sandline-product div.quantity {
    display: inline-flex; align-items: center;
    border: 1px solid var(--border-light);
    border-radius: var(--radius-sm);
    background: var(--bg-tertiary);
    overflow: hidden;
}
.woocommerce div.product.sandline-product div.quantity input.qty {
    border: none !important; background: transparent !important;
    width: 64px !important; text-align: center !important; font-weight: 600 !important;
    padding: 12px 0 !important;
}
.woocommerce div.product.sandline-product form.cart .button {
    margin: 0 !important; flex: 1; min-width: 200px;
    background: var(--accent) !important; color: #000 !important;
    border-radius: var(--radius-sm) !important;
    transition: transform var(--transition), background var(--transition), box-shadow var(--transition) !important;
}
.woocommerce div.product.sandline-product form.cart .button:hover {
    transform: translateY(-2px); box-shadow: var(--shadow-md);
}

/* Meta bar (SKU + category + production) */
.sandline-product__metabar {
    display: grid; grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    background: var(--border);
    border: 1px solid var(--border);
    border-radius: var(--radius-md); overflow: hidden;
    margin-top: 8px;
}
.sandline-product__metaitem {
    background: var(--bg-card); padding: 14px 16px;
    display: flex; flex-direction: column; gap: 4px;
}
.sandline-product__metalabel {
    font-size: 11px; font-weight: 600; letter-spacing: 0.12em;
    text-transform: uppercase; color: var(--text-muted);
}
.sandline-product__metavalue { color: var(--text-primary); font-size: 14px; font-weight: 600; }

/* Hide the default WC meta block — we render it ourselves */
.woocommerce div.product.sandline-product .product_meta { display: none; }

/* ============================================================
   SINGLE PRODUCT — A11y + Summary refinements
   - Hide WP/WC screen-reader-only labels (görsel kirlilik)
   - Quantity stepper'ı pill yapıp "Adet" üst etiketiyle markala
   - Form içinde fiyat/buton hiyerarşisini sıkılaştır
   ============================================================ */

/* WP/WC erişilebilirlik label'ları her zaman görsel olarak gizli olmalı.
   Temada bu CSS yoktu → "Kapüşonlu Şişme Mont adet" gibi label'lar
   form içinde görünür kalıyordu. WP core davranışını geri kazandırır. */
.screen-reader-text,
.sandline-product .screen-reader-text,
.woocommerce .screen-reader-text {
    border: 0 !important;
    clip: rect(1px, 1px, 1px, 1px) !important;
    -webkit-clip-path: inset(50%) !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    width: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    word-wrap: normal !important;
    white-space: nowrap !important;
}
.screen-reader-text:focus {
    background-color: var(--bg-elevated) !important;
    color: var(--accent) !important;
    clip: auto !important;
    clip-path: none !important;
    height: auto !important;
    width: auto !important;
    padding: 12px 18px !important;
    z-index: 100000;
}

/* Add-to-cart formu — "adet" label'ı kaybolduğu için artık quantity ve
   buton tek satırda nefes alan bir grup gibi görünür. Üst kısmı "Adet"
   mini-etiketiyle markala (sade hiyerarşi). */
.woocommerce div.product.sandline-product form.cart {
    position: relative;
    align-items: stretch;
    padding: 18px 18px 18px 20px;
    gap: 16px;
    box-shadow: var(--shadow-sm);
}
.woocommerce div.product.sandline-product form.cart::before {
    content: "Adet";
    position: absolute;
    top: -9px;
    left: 18px;
    padding: 0 8px;
    background: var(--bg-primary);
    color: var(--text-muted);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}
.woocommerce div.product.sandline-product div.quantity {
    border-radius: 999px;
    height: 50px;
    flex: 0 0 auto;
}
.woocommerce div.product.sandline-product div.quantity input.qty {
    height: 50px !important;
    width: 56px !important;
    font-size: 15px !important;
    padding: 0 !important;
}
.woocommerce div.product.sandline-product form.cart .button {
    min-height: 50px;
    padding: 0 28px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: 0.02em !important;
    box-shadow: 0 4px 20px rgba(201, 169, 110, 0.22);
}
.woocommerce div.product.sandline-product form.cart .button:hover {
    background: var(--accent-hover) !important;
    box-shadow: 0 8px 28px rgba(201, 169, 110, 0.32);
}

/* Eyebrow ve title arası nefes; fiyatı title'a yaklaştır */
.sandline-product__summary .sandline-product__eyebrow { margin-bottom: -4px; }
.woocommerce div.product.sandline-product .product_title + .price,
.woocommerce div.product.sandline-product p.price { margin-top: 2px; }

/* Metabar — hover'da yumuşak vurgulama */
.sandline-product__metaitem { transition: background var(--transition); }
.sandline-product__metaitem:hover { background: var(--bg-elevated); }

/* --- TRUST PILLARS --- */
.sandline-product__pillars {
    margin: 0 0 64px;
    padding: 36px 28px;
    background:
        linear-gradient(180deg, var(--bg-secondary), var(--bg-primary));
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    position: relative; overflow: hidden;
}
.sandline-product__pillars::before {
    content: ''; position: absolute; top: 0; left: 50%; transform: translateX(-50%);
    width: 200px; height: 1px;
    background: linear-gradient(90deg, transparent, var(--accent), transparent);
    opacity: 0.6;
}
.sandline-product__pillars-grid {
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px;
}
.sandline-pillar {
    display: flex; gap: 16px; align-items: flex-start;
    padding: 4px; transition: transform var(--transition);
}
.sandline-pillar:hover { transform: translateY(-3px); }
.sandline-pillar__icon {
    flex-shrink: 0; width: 48px; height: 48px;
    display: inline-flex; align-items: center; justify-content: center;
    background: linear-gradient(135deg, rgba(201,169,110,0.14), rgba(201,169,110,0.04));
    border: 1px solid rgba(201,169,110,0.25);
    border-radius: var(--radius-md);
    color: var(--accent);
}
.sandline-pillar__icon svg { width: 22px; height: 22px; }
.sandline-pillar__title { font-size: 1rem; margin: 0 0 4px; color: var(--text-primary); }
.sandline-pillar__desc { font-size: 0.875rem; color: var(--text-muted); line-height: 1.55; margin: 0; }

/* --- INQUIRY CTA --- */
.sandline-product__inquiry {
    margin: 0 0 64px;
    border-radius: var(--radius-lg);
    background:
        radial-gradient(600px 300px at 0% 0%, rgba(201,169,110,0.18), transparent 60%),
        linear-gradient(135deg, #1c140c 0%, #111111 100%);
    border: 1px solid rgba(201,169,110,0.25);
    padding: 44px 40px;
    position: relative; overflow: hidden;
}
.sandline-product__inquiry::before {
    content: ''; position: absolute; inset: 0;
    background: repeating-linear-gradient(135deg, rgba(201,169,110,0.04) 0 1px, transparent 1px 22px);
    pointer-events: none;
}
.sandline-product__inquiry-inner {
    position: relative; z-index: 1;
    display: grid; grid-template-columns: 1.4fr auto; gap: 36px; align-items: center;
}
.sandline-product__inquiry-eyebrow {
    display: inline-block; font-size: 11px; font-weight: 700;
    letter-spacing: 0.22em; text-transform: uppercase; color: var(--accent);
    margin-bottom: 12px;
}
.sandline-product__inquiry-title {
    font-size: clamp(1.4rem, 2.6vw, 2rem); margin: 0 0 12px; line-height: 1.2;
}
.sandline-product__inquiry-desc {
    color: var(--text-secondary); margin: 0; max-width: 60ch; line-height: 1.6;
}
.sandline-product__inquiry-actions { display: flex; gap: 12px; flex-wrap: wrap; }

/* ========== TABS ========== */
.woocommerce div.product.sandline-product .woocommerce-tabs {
    margin: 0 0 80px;
    background:
        radial-gradient(900px 380px at 0% 0%, rgba(201,169,110,0.04), transparent 60%),
        linear-gradient(180deg, var(--bg-secondary) 0%, var(--bg-primary) 100%);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    padding: 0;
    position: relative;
    overflow: hidden;
}
/* Tab nav bar — its own horizontal bar at the top of the card */
.woocommerce div.product.sandline-product .woocommerce-tabs ul.tabs {
    display: flex !important;
    flex-wrap: wrap;
    align-items: stretch;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 28px !important;
    list-style: none !important;
    background: rgba(0,0,0,0.25) !important;
    border: none !important;
    border-bottom: 1px solid var(--border) !important;
    border-radius: 0 !important;
}
.woocommerce div.product.sandline-product .woocommerce-tabs ul.tabs::before,
.woocommerce div.product.sandline-product .woocommerce-tabs ul.tabs::after { content: none !important; display: none !important; }
.woocommerce div.product.sandline-product .woocommerce-tabs ul.tabs li {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative;
    display: inline-flex !important;
    list-style: none !important;
}
.woocommerce div.product.sandline-product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product.sandline-product .woocommerce-tabs ul.tabs li::after { content: none !important; display: none !important; }
.woocommerce div.product.sandline-product .woocommerce-tabs ul.tabs li a {
    position: relative;
    display: inline-flex !important; align-items: center;
    color: var(--text-muted) !important;
    padding: 20px 22px !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    background: transparent !important;
    border: none !important;
    text-shadow: none !important;
    text-decoration: none !important;
    transition: color var(--transition);
}
.woocommerce div.product.sandline-product .woocommerce-tabs ul.tabs li a::after {
    content: '';
    position: absolute; left: 22px; right: 22px; bottom: 0;
    height: 2px; background: transparent;
    transition: background var(--transition), left var(--transition), right var(--transition);
}
.woocommerce div.product.sandline-product .woocommerce-tabs ul.tabs li a:hover { color: var(--text-primary) !important; }
.woocommerce div.product.sandline-product .woocommerce-tabs ul.tabs li a:hover::after {
    background: rgba(201,169,110,0.4);
}
.woocommerce div.product.sandline-product .woocommerce-tabs ul.tabs li.active a {
    color: var(--accent) !important;
}
.woocommerce div.product.sandline-product .woocommerce-tabs ul.tabs li.active a::after {
    background: var(--accent);
    left: 12px; right: 12px;
    box-shadow: 0 0 16px rgba(201,169,110,0.5);
}
/* Tab panel content area */
.woocommerce div.product.sandline-product .woocommerce-tabs .panel {
    padding: 40px 40px 44px !important;
    margin: 0 !important;
    color: var(--text-secondary);
    font-size: 1rem; line-height: 1.75;
    background: transparent;
}
.woocommerce div.product.sandline-product .woocommerce-tabs .panel > h2:first-child {
    color: var(--text-primary); font-size: 1.5rem; margin: 0 0 20px;
    position: relative; padding-bottom: 14px;
}
.woocommerce div.product.sandline-product .woocommerce-tabs .panel > h2:first-child::after {
    content: ''; position: absolute; left: 0; bottom: 0; width: 48px; height: 2px;
    background: var(--accent);
}

/* Process tab */
.sandline-tab-process__head h2 { margin-top: 0; }
.sandline-tab-process__head p { color: var(--text-muted); max-width: 70ch; margin: 0 0 24px; }
.sandline-tab-process__list {
    list-style: none; padding: 0; margin: 0;
    display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 18px;
}
.sandline-tab-process__step {
    position: relative;
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    padding: 22px;
    display: flex; flex-direction: column; gap: 12px;
    transition: border-color var(--transition), transform var(--transition);
}
.sandline-tab-process__step:hover { border-color: rgba(201,169,110,0.4); transform: translateY(-3px); }
.sandline-tab-process__num {
    font-size: 1.8rem; font-weight: 800; color: var(--accent);
    letter-spacing: -0.02em; line-height: 1;
    font-family: var(--font-display);
}
.sandline-tab-process__body h4 { font-size: 1.05rem; margin: 0 0 6px; color: var(--text-primary); }
.sandline-tab-process__body p { font-size: 0.92rem; color: var(--text-muted); margin: 0; line-height: 1.6; }

/* FAQ tab */
.sandline-tab-faq__head h2 { margin: 0 0 24px; }
.sandline-tab-faq__list { display: flex; flex-direction: column; gap: 12px; }
.sandline-tab-faq__item {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    overflow: hidden;
    transition: border-color var(--transition);
}
.sandline-tab-faq__item[open] { border-color: rgba(201,169,110,0.35); }
.sandline-tab-faq__q {
    list-style: none;
    cursor: pointer;
    padding: 18px 22px;
    display: flex; align-items: center; justify-content: space-between; gap: 16px;
    color: var(--text-primary); font-weight: 600; font-size: 1rem;
    user-select: none;
}
.sandline-tab-faq__q::-webkit-details-marker { display: none; }
.sandline-tab-faq__icon {
    position: relative; width: 14px; height: 14px; flex-shrink: 0;
}
.sandline-tab-faq__icon::before, .sandline-tab-faq__icon::after {
    content: ''; position: absolute; background: var(--accent);
    border-radius: 2px;
    transition: transform var(--transition);
}
.sandline-tab-faq__icon::before { left: 0; right: 0; top: 50%; height: 2px; transform: translateY(-50%); }
.sandline-tab-faq__icon::after  { top: 0; bottom: 0; left: 50%; width: 2px; transform: translateX(-50%); }
.sandline-tab-faq__item[open] .sandline-tab-faq__icon::after { transform: translateX(-50%) scaleY(0); }
.sandline-tab-faq__a {
    padding: 0 22px 20px; color: var(--text-secondary); line-height: 1.7;
    border-top: 1px solid var(--border);
    padding-top: 16px;
}
.sandline-tab-faq__a p { margin: 0; }

/* Related products header */
.woocommerce .related, .woocommerce .upsells.products { padding-top: 8px; }
.woocommerce .related > h2,
.woocommerce .upsells.products > h2 {
    font-size: 1.6rem; margin-bottom: 28px; position: relative; padding-bottom: 14px;
}
.woocommerce .related > h2::after,
.woocommerce .upsells.products > h2::after {
    content: ''; position: absolute; left: 0; bottom: 0; width: 56px; height: 2px; background: var(--accent);
}

/* --- RESPONSIVE: tablet & smaller (single-column layout) --- */
@media (max-width: 980px) {
    .wc-main { padding: 32px 0 48px; }
    .sandline-product__hero {
        grid-template-columns: 1fr;
        gap: 28px;
        padding: 20px 18px 28px;
        margin-bottom: 36px;
        border-radius: var(--radius-md);
    }
    .sandline-product__gallery {
        max-width: 480px;
        margin-left: auto; margin-right: auto;
    }
    .sandline-product__summary { padding-top: 0; gap: 16px; }
    .sandline-product__pillars {
        padding: 24px 20px;
        margin-bottom: 40px;
    }
    .sandline-product__pillars-grid { grid-template-columns: repeat(2, 1fr); gap: 18px; }
    .sandline-product__inquiry {
        padding: 28px 22px;
        margin-bottom: 40px;
    }
    .sandline-product__inquiry-inner { grid-template-columns: 1fr; gap: 20px; }
    .woocommerce div.product.sandline-product .woocommerce-tabs { margin-bottom: 56px; }
    .woocommerce div.product.sandline-product .woocommerce-tabs .panel { padding: 28px 22px 32px !important; }
    .woocommerce div.product.sandline-product .woocommerce-tabs ul.tabs { padding: 0 18px !important; }
    .woocommerce div.product.sandline-product .woocommerce-tabs ul.tabs li a { padding: 16px 16px !important; font-size: 12px !important; }
    .sandline-product__inquiry-title { font-size: 1.4rem; }
}

/* --- RESPONSIVE: phone --- */
@media (max-width: 640px) {
    .wc-main { padding: 24px 0 40px; }
    .container { padding: 0 16px; }
    .sandline-product__hero {
        gap: 22px;
        padding: 16px 14px 22px;
        margin-bottom: 28px;
    }
    .sandline-product__gallery { max-width: 100%; }
    /* Smaller corner accents on phone so they don't look chunky */
    .sandline-product__gallery::before,
    .sandline-product__gallery::after,
    .sandline-product__gallery > .woocommerce-product-gallery::before,
    .sandline-product__gallery > .woocommerce-product-gallery::after { width: 16px; height: 16px; }
    .sandline-product__summary { gap: 14px; }
    .sandline-product__eyebrow { font-size: 11px; letter-spacing: 0.18em; }
    .sandline-product__eyebrow-line { width: 24px; }
    /* (Title/price boyutları artık hotfix v3'te yönetiliyor) */
    .woocommerce div.product.sandline-product .product_title {
        line-height: 1.15;
    }
    .sandline-product .call-for-price { font-size: 1.2rem; }
    .sandline-product__excerpt {
        padding: 16px 18px;
        font-size: 0.95rem;
    }
    .sandline-product__excerpt-body { font-size: 0.95rem; }
    /* Cart row: stack to two-row layout — qty on top, button full width */
    .woocommerce div.product.sandline-product form.cart {
        padding: 12px;
        gap: 10px;
        flex-direction: column;
        align-items: stretch;
    }
    .woocommerce div.product.sandline-product div.quantity { width: 100%; justify-content: center; }
    .woocommerce div.product.sandline-product div.quantity input.qty { width: 80px !important; }
    .woocommerce div.product.sandline-product form.cart .button {
        width: 100%; min-width: 0; flex: 1 1 100%;
        padding: 14px 24px !important;
    }
    /* Meta bar: single column with smaller padding */
    .sandline-product__metabar { grid-template-columns: 1fr; }
    .sandline-product__metaitem { padding: 12px 14px; }
    /* Pillars: stack single column on phone, with horizontal icon+text */
    .sandline-product__pillars {
        padding: 22px 16px;
        margin-bottom: 32px;
    }
    .sandline-product__pillars-grid { grid-template-columns: 1fr; gap: 14px; }
    .sandline-pillar__icon { width: 42px; height: 42px; }
    .sandline-pillar__icon svg { width: 20px; height: 20px; }
    .sandline-pillar__title { font-size: 0.95rem; }
    .sandline-pillar__desc { font-size: 0.85rem; }
    /* Inquiry CTA */
    .sandline-product__inquiry {
        padding: 24px 18px;
        margin-bottom: 36px;
        border-radius: var(--radius-md);
    }
    .sandline-product__inquiry-title { font-size: 1.25rem; }
    .sandline-product__inquiry-desc { font-size: 0.92rem; }
    .sandline-product__inquiry-actions { flex-direction: column; }
    .sandline-product__inquiry-actions .btn { flex: 1 1 100%; text-align: center; }
    /* Tabs: keep horizontal scroll */
    .woocommerce div.product.sandline-product .woocommerce-tabs {
        border-radius: var(--radius-md);
        margin-bottom: 48px;
    }
    .woocommerce div.product.sandline-product .woocommerce-tabs ul.tabs li a {
        padding: 14px 14px !important;
        font-size: 12px !important;
    }
    /* Process step grid: single column */
    .sandline-tab-process__list { grid-template-columns: 1fr; gap: 14px; }
    .sandline-tab-process__step { padding: 18px; }
    .sandline-tab-faq__q { padding: 14px 16px; font-size: 0.95rem; }
    .sandline-tab-faq__a { padding-left: 16px; padding-right: 16px; padding-bottom: 16px; }
    /* Sale flash smaller on mobile */
    .woocommerce span.onsale { top: 10px !important; left: 10px !important; padding: 7px 12px !important; font-size: 10px !important; }
    .woocommerce div.product.sandline-product .woocommerce-product-gallery__trigger {
        top: 10px !important; right: 10px !important;
        width: 36px; height: 36px;
    }
}

/* --- RESPONSIVE: very small phones --- */
@media (max-width: 380px) {
    .sandline-product__hero { padding: 14px 10px 18px; }
    /* (Title boyutu hotfix v3'te yönetiliyor) */
    .sandline-product__metabar { grid-template-columns: 1fr 1fr; }
    .sandline-product__metaitem:last-child { grid-column: 1 / -1; }
}

/* ============================================================
   SINGLE PRODUCT — Description tab editorial typography
   ============================================================ */
.sandline-tab-desc { max-width: 78ch; }
.sandline-tab-desc__body {
    color: var(--text-secondary);
    font-size: 1.05rem;
    line-height: 1.85;
    overflow: hidden; /* contain the float so subsequent blocks don't wrap around */
}
.sandline-tab-desc__body > p:first-of-type {
    position: relative;
}
.sandline-tab-desc__body > p:first-of-type::first-letter {
    color: var(--accent);
    font-family: var(--font-display);
    font-weight: 800;
    font-size: 3.4rem;
    line-height: 1;
    float: left;
    padding: 6px 14px 0 0;
    margin: 0;
    letter-spacing: -0.02em;
}
.sandline-tab-desc__body p { margin: 0 0 1.2em; }
.sandline-tab-desc__body p:last-child { margin-bottom: 0; }
.sandline-tab-desc__body h2,
.sandline-tab-desc__body h3 { color: var(--text-primary); margin-top: 1.4em; }
.sandline-tab-desc__body h2 { font-size: 1.35rem; }
.sandline-tab-desc__body h3 { font-size: 1.15rem; }
.sandline-tab-desc__body ul,
.sandline-tab-desc__body ol {
    list-style: none; padding: 0; margin: 16px 0 24px;
    display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 10px 28px;
}
.sandline-tab-desc__body ul li,
.sandline-tab-desc__body ol li {
    position: relative; padding-left: 26px; color: var(--text-secondary);
    line-height: 1.6;
}
.sandline-tab-desc__body ul li::before {
    content: ''; position: absolute; left: 0; top: 0.65em;
    width: 14px; height: 1.5px; background: var(--accent);
}
.sandline-tab-desc__body ol { counter-reset: sdl; }
.sandline-tab-desc__body ol li { counter-increment: sdl; }
.sandline-tab-desc__body ol li::before {
    content: counter(sdl, decimal-leading-zero);
    position: absolute; left: 0; top: 0;
    color: var(--accent); font-weight: 700; font-size: 0.85rem;
    letter-spacing: 0.05em;
}
.sandline-tab-desc__body blockquote {
    border-left: 3px solid var(--accent);
    padding: 12px 22px; margin: 24px 0;
    background: rgba(201,169,110,0.04);
    color: var(--text-primary); font-style: italic;
    border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
}
.sandline-tab-desc__body a { color: var(--accent); border-bottom: 1px solid rgba(201,169,110,0.4); }
.sandline-tab-desc__body a:hover { border-bottom-color: var(--accent); }
.sandline-tab-desc__body img {
    border-radius: var(--radius-md); margin: 18px 0;
}

/* Additional information table — make it editorial too */
.sandline-tab-info table.shop_attributes,
.woocommerce div.product.sandline-product .woocommerce-tabs .shop_attributes {
    background: transparent !important;
    border: 1px solid var(--border) !important;
    border-radius: var(--radius-md) !important;
    overflow: hidden;
    margin: 0 !important;
}
.woocommerce div.product.sandline-product .shop_attributes th,
.woocommerce div.product.sandline-product .shop_attributes td {
    padding: 16px 20px !important;
    border-color: var(--border) !important;
    color: var(--text-primary) !important;
    background: transparent !important;
    font-style: normal !important;
}
.woocommerce div.product.sandline-product .shop_attributes th {
    background: rgba(201,169,110,0.04) !important;
    font-weight: 600 !important;
    color: var(--accent) !important;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-size: 12px !important;
    width: 30%;
}
.woocommerce div.product.sandline-product .shop_attributes td { color: var(--text-secondary) !important; }

/* Reviews panel polish */
.woocommerce div.product.sandline-product #reviews .comment-reply-title { color: var(--text-primary); font-size: 1.1rem; }
.woocommerce div.product.sandline-product #reviews .woocommerce-noreviews,
.woocommerce div.product.sandline-product #reviews .woocommerce-Reviews-title {
    color: var(--text-secondary);
}
.woocommerce div.product.sandline-product #reviews #respond {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    padding: 24px;
    margin-top: 18px;
}

/* Tighter mobile tabs (force scroll instead of wrap if too narrow) */
@media (max-width: 640px) {
    .woocommerce div.product.sandline-product .woocommerce-tabs ul.tabs {
        overflow-x: auto;
        flex-wrap: nowrap;
        scrollbar-width: thin;
        padding: 0 16px !important;
    }
    .woocommerce div.product.sandline-product .woocommerce-tabs ul.tabs::-webkit-scrollbar { height: 3px; }
    .woocommerce div.product.sandline-product .woocommerce-tabs ul.tabs::-webkit-scrollbar-thumb { background: var(--accent); border-radius: 2px; }
    .woocommerce div.product.sandline-product .woocommerce-tabs ul.tabs li { flex: 0 0 auto; }
    .woocommerce div.product.sandline-product .woocommerce-tabs ul.tabs li a { padding: 16px 14px !important; font-size: 12px !important; white-space: nowrap; }
    .woocommerce div.product.sandline-product .woocommerce-tabs .panel { padding: 24px 18px 28px !important; }
    .sandline-tab-desc__body { font-size: 1rem; line-height: 1.7; }
    .sandline-tab-desc__body > p:first-of-type::first-letter { font-size: 2.8rem; padding-right: 10px; }
}

/* === Visually hidden helper (TranslatePress-scannable hidden text) === */
.sr-only,
.hero-typer-source {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* ============================================================
   WC PAGES — Layout Hotfixes v2 (aggressive)
   body-level specificity + !important to win against any earlier rule
   ============================================================ */

/* ---------- TEK ÜRÜN — Hero (içeriğe göre büzülen + ortalı) ---------- */
/* Strateji: hero artık tüm sayfa genişliğini DOLDURMUYOR. İçerik kadar
   genişler (gallery + summary), sayfada yatayda ORTALANIR. */

/* Dış product wrapper — tam genişlikte ama içeriği ortalar, üstte nefes alanı */
body.woocommerce div.product.sandline-product {
    max-width: none !important;
    margin: 0 !important;
    padding: 64px 24px 80px !important;  /* header'dan ayrıl, alttan da geniş */
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    background:
        radial-gradient(ellipse 80% 60% at 50% 0%, rgba(201, 169, 110, 0.04), transparent 70%),
        var(--bg-primary);
    position: relative;
}

/* Hero — flex layout, içeriğe göre küçülen, ortalı, daha rafine padding */
body.woocommerce div.product.sandline-product .sandline-product__hero {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: 56px !important;
    padding: 40px !important;
    width: fit-content !important;
    max-width: 100% !important;
    margin: 0 auto 72px !important;
    grid-template-columns: none !important;
    border-radius: var(--radius-lg) !important;
    /* Daha rafine border + iç gölge */
    box-shadow:
        0 1px 0 rgba(255, 255, 255, 0.02) inset,
        0 30px 80px -30px rgba(0, 0, 0, 0.5);
}

/* Gallery — sabit 480x480 kare card; her görsel cropped 1:1 olarak gösterilir.
   Bu blok hem portrait hem landscape hem kare görselleri tutarlı şekilde göstermek
   ve WC flexslider'ın düzgün çalışması için tüm gerekli kuralları içerir. */
body.woocommerce div.product.sandline-product .sandline-product__gallery {
    flex: 0 0 480px !important;
    width: 480px !important;
    max-width: 480px !important;
    min-width: 0 !important;
    margin: 0 !important;
    position: static !important;
}

/* ============================================================
   GALLERY v4 — Flexslider'ı tamamen bypass eden custom layout.
   Slide'ları absolute positioning ile üst üste yerleştirir,
   sadece "sandline-active" class'ı olan görünür.
   functions.php'deki JS thumbnail tıklamalarını yönetir.
   ============================================================ */

/* OUTER container — sabit 480x480 kare, opacity zorla 1 */
body.woocommerce div.product.sandline-product .woocommerce-product-gallery {
    width: 480px !important;
    max-width: 100% !important;
    height: 480px !important;
    float: none !important;
    margin: 0 !important;
    position: relative !important;
    overflow: hidden !important;
    background: #0f0f0f !important;
    opacity: 1 !important;
    visibility: visible !important;
    transition: none !important;
}

/* WRAPPER — flexslider'ın transform/width inline ayarlarını sıfırla */
body.woocommerce div.product.sandline-product .woocommerce-product-gallery__wrapper {
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
    transform: none !important;
    transition: none !important;
    list-style: none !important;
    overflow: hidden !important;
}

/* SLIDES — hepsi aynı noktada üst üste, opacity 0; aktif olan görünür.
   `inset: 0` + width/height: auto kullanıyoruz — bu sayede parent ister sabit
   pixel height, ister aspect-ratio, ister padding-bottom hack kullansın
   slide doğru boyutlanır. width:100%/height:100% browser'a göre farklı davranır. */
body.woocommerce div.product.sandline-product .woocommerce-product-gallery__image,
body.woocommerce div.product.sandline-product .woocommerce-product-gallery__wrapper > div,
body.woocommerce div.product.sandline-product .woocommerce-product-gallery__wrapper > li {
    position: absolute !important;
    inset: 0 !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    display: block !important;
    opacity: 0 !important;
    visibility: hidden !important;
    z-index: 1 !important;
    transition: opacity 0.3s ease !important;
    pointer-events: none !important;
}

/* AKTİF SLIDE — opacity 1, görünür, tıklanabilir.
   Hem :first-child (default) hem sandline-active class'ı (JS swap için)
   hem flex-active-slide (flexslider default) hedeflenir. */
body.woocommerce div.product.sandline-product .woocommerce-product-gallery__wrapper > div:first-child,
body.woocommerce div.product.sandline-product .woocommerce-product-gallery__wrapper > li:first-child,
body.woocommerce div.product.sandline-product .woocommerce-product-gallery__wrapper > div.sandline-active,
body.woocommerce div.product.sandline-product .woocommerce-product-gallery__wrapper > li.sandline-active,
body.woocommerce div.product.sandline-product .woocommerce-product-gallery__wrapper > .flex-active-slide {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    z-index: 3 !important;
}
/* Eğer başka bir slide explicitly aktif ise, first-child değil onu göster */
body.woocommerce div.product.sandline-product .woocommerce-product-gallery__wrapper:has(.sandline-active) > div:first-child:not(.sandline-active),
body.woocommerce div.product.sandline-product .woocommerce-product-gallery__wrapper:has(.sandline-active) > li:first-child:not(.sandline-active) {
    opacity: 0 !important;
    visibility: hidden !important;
    z-index: 1 !important;
}

/* === CUSTOM THUMBNAIL STRIP — functions.php JS tarafından eklenir === */
body.woocommerce div.product.sandline-product .sandline-gallery-thumbs {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 10px;
    margin: 14px 0 0 !important;
    padding: 0 !important;
    list-style: none;
    width: 480px;
    max-width: 100%;
}
body.woocommerce div.product.sandline-product .sandline-gallery-thumb {
    appearance: none;
    background: var(--bg-card);
    border: 2px solid var(--border);
    border-radius: var(--radius-sm);
    padding: 0;
    margin: 0;
    cursor: pointer;
    overflow: hidden;
    aspect-ratio: 1 / 1;
    transition: border-color var(--transition), transform var(--transition), box-shadow var(--transition);
    position: relative;
    display: block;
    opacity: 0.75;
}
body.woocommerce div.product.sandline-product .sandline-gallery-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    border-radius: calc(var(--radius-sm) - 2px);
}
body.woocommerce div.product.sandline-product .sandline-gallery-thumb:hover {
    opacity: 1;
    border-color: var(--text-muted);
    transform: translateY(-2px);
}
body.woocommerce div.product.sandline-product .sandline-gallery-thumb.is-active {
    opacity: 1;
    border-color: var(--accent);
    box-shadow: 0 0 0 1px var(--accent);
}
body.woocommerce div.product.sandline-product .sandline-gallery-thumb:focus-visible {
    outline: 2px solid var(--accent);
    outline-offset: 2px;
}

/* ============================================================
   PROFESSIONAL POLISH — pricerow + trust + meta icons + micro
   ============================================================ */

/* ---------- HERO yüzeyini sadeleştir + altın aksent çizgisi ---------- */
/* Eski .sandline-product__hero::before stripe pattern'i ve glow'ları yumuşat */
body.woocommerce div.product.sandline-product .sandline-product__hero {
    background:
        linear-gradient(180deg, rgba(201, 169, 110, 0.025), transparent 40%),
        linear-gradient(180deg, var(--bg-secondary) 0%, var(--bg-card) 100%) !important;
    border: 1px solid rgba(255, 255, 255, 0.06) !important;
    box-shadow:
        0 1px 0 rgba(255, 255, 255, 0.04) inset,
        0 30px 80px -30px rgba(0, 0, 0, 0.6) !important;
}
/* Üstte ince altın aksent çubuğu (premium boutique feel) */
body.woocommerce div.product.sandline-product .sandline-product__hero::after {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 2px;
    background: var(--accent);
    border-radius: 0 0 2px 2px;
    z-index: 2;
}
/* Eski diagonal stripe pattern'i kapat */
body.woocommerce div.product.sandline-product .sandline-product__hero::before {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.015), transparent 30%) !important;
}
/* Glow'ları yumuşat — daha az dikkat çeksinler */
body.woocommerce div.product.sandline-product .sandline-product__glow {
    opacity: 0.3 !important;
    filter: blur(140px) !important;
}

/* ---------- Summary kolonu — internal spacing daha rafine ---------- */
body.woocommerce div.product.sandline-product .sandline-product__summary {
    gap: 16px !important;
    padding-top: 4px !important;
}

/* Eyebrow ile title arası nefes */
body.woocommerce div.product.sandline-product .sandline-product__eyebrow {
    margin-bottom: 4px !important;
}

/* Description card daha rafine */
body.woocommerce div.product.sandline-product .sandline-product__excerpt {
    padding: 18px 20px !important;
    background: rgba(201, 169, 110, 0.03) !important;
}

/* Stok + Tasarruf rozeti (fiyatın altında) */
body.woocommerce div.product.sandline-product .sandline-product__pricerow {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin: 8px 0 14px;
}
body.woocommerce div.product.sandline-product .sandline-product__stock {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 11px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}
body.woocommerce div.product.sandline-product .sandline-product__stock--ok {
    background: rgba(34, 197, 94, 0.12);
    color: #4ade80;
    border: 1px solid rgba(34, 197, 94, 0.3);
}
body.woocommerce div.product.sandline-product .sandline-product__stock--ok svg {
    color: #4ade80;
}
body.woocommerce div.product.sandline-product .sandline-product__stock--out {
    background: rgba(239, 68, 68, 0.12);
    color: #f87171;
    border: 1px solid rgba(239, 68, 68, 0.3);
}
body.woocommerce div.product.sandline-product .sandline-product__saving {
    display: inline-block;
    padding: 5px 11px;
    border-radius: 999px;
    background: var(--accent);
    color: #000;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    box-shadow: 0 4px 14px rgba(201, 169, 110, 0.3);
}

/* ---------- Trust badge (add-to-cart altında, tek satır) ---------- */
body.woocommerce div.product.sandline-product .sandline-product__trust {
    list-style: none;
    margin: 14px 0 0;
    padding: 14px 18px;
    background: linear-gradient(180deg, rgba(255,255,255,0.02), transparent);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    display: flex;
    gap: 12px;
}
body.woocommerce div.product.sandline-product .sandline-product__trust--single .sandline-product__trust-item {
    flex: 1 1 auto;
    justify-content: flex-start;
}
body.woocommerce div.product.sandline-product .sandline-product__trust-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 0;
    transition: transform 0.25s ease;
}
body.woocommerce div.product.sandline-product .sandline-product__trust-item:hover {
    transform: translateY(-1px);
}
body.woocommerce div.product.sandline-product .sandline-product__trust-icon {
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(201, 169, 110, 0.08);
    border: 1px solid rgba(201, 169, 110, 0.2);
    color: var(--accent);
}
body.woocommerce div.product.sandline-product .sandline-product__trust-text {
    display: flex;
    flex-direction: column;
    gap: 1px;
    min-width: 0;
    line-height: 1.3;
}
body.woocommerce div.product.sandline-product .sandline-product__trust-text strong {
    font-size: 12px;
    font-weight: 600;
    color: var(--text-primary);
    letter-spacing: 0.01em;
}
body.woocommerce div.product.sandline-product .sandline-product__trust-text small {
    font-size: 10.5px;
    color: var(--text-muted);
    letter-spacing: 0.02em;
    font-weight: 400;
}
@media (max-width: 740px) {
    body.woocommerce div.product.sandline-product .sandline-product__trust {
        flex-direction: column;
        padding: 12px 14px;
    }
}

/* ---------- WhatsApp sipariş butonu (add-to-cart altı) ---------- */
body.woocommerce div.product.sandline-product .sandline-product__wa {
    --wa-green-shadow: rgba(37, 165, 80, 0.22);
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 14px 0 0;
    padding: 6px 12px 6px 7px;
    border-radius: 10px;
    background: linear-gradient(135deg, #2bb863 0%, #1f9b50 100%);
    color: #ffffff;
    text-decoration: none;
    position: relative;
    overflow: hidden;
    box-shadow: 0 3px 10px var(--wa-green-shadow), inset 0 1px 0 rgba(255,255,255,0.14);
    transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
    isolation: isolate;
    max-width: 100%;
}
body.woocommerce div.product.sandline-product .sandline-product__wa::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(120% 120% at 100% 0%, rgba(255,255,255,0.14), transparent 55%);
    pointer-events: none;
    z-index: 0;
}
body.woocommerce div.product.sandline-product .sandline-product__wa:hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 18px var(--wa-green-shadow), inset 0 1px 0 rgba(255,255,255,0.18);
    filter: brightness(1.04);
    color: #ffffff;
}
body.woocommerce div.product.sandline-product .sandline-product__wa:active {
    transform: translateY(0);
}
body.woocommerce div.product.sandline-product .sandline-product__wa:focus-visible {
    outline: 2px solid #ffffff;
    outline-offset: 2px;
}
body.woocommerce div.product.sandline-product .sandline-product__wa-icon {
    position: relative;
    z-index: 1;
    flex: 0 0 28px;
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.18);
    border: 1px solid rgba(255, 255, 255, 0.26);
    color: #ffffff;
}
body.woocommerce div.product.sandline-product .sandline-product__wa-text {
    position: relative;
    z-index: 1;
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    gap: 1px;
    min-width: 0;
    line-height: 1.15;
}
body.woocommerce div.product.sandline-product .sandline-product__wa-top {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 10px;
    color: rgba(255,255,255,0.9);
    letter-spacing: 0.01em;
}
body.woocommerce div.product.sandline-product .sandline-product__wa-brand {
    font-weight: 500;
}
body.woocommerce div.product.sandline-product .sandline-product__wa-status {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    padding: 0 6px;
    border-radius: 999px;
    background: rgba(255,255,255,0.18);
    border: 1px solid rgba(255,255,255,0.24);
    font-size: 9px;
    font-weight: 500;
    letter-spacing: 0.02em;
}
body.woocommerce div.product.sandline-product .sandline-product__wa-dot {
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: #ffffff;
    box-shadow: 0 0 0 0 rgba(255,255,255,0.7);
    animation: sandlineWaPulse 1.8s ease-out infinite;
}
@keyframes sandlineWaPulse {
    0%   { box-shadow: 0 0 0 0 rgba(255,255,255,0.5); }
    70%  { box-shadow: 0 0 0 5px rgba(255,255,255,0); }
    100% { box-shadow: 0 0 0 0 rgba(255,255,255,0); }
}
body.woocommerce div.product.sandline-product .sandline-product__wa-title {
    font-size: 12px;
    font-weight: 700;
    color: #ffffff;
    letter-spacing: 0.005em;
}
@media (max-width: 540px) {
    body.woocommerce div.product.sandline-product .sandline-product__wa {
        padding: 6px 10px 6px 6px;
        gap: 7px;
    }
    body.woocommerce div.product.sandline-product .sandline-product__wa-icon {
        flex: 0 0 26px;
        width: 26px;
        height: 26px;
    }
    body.woocommerce div.product.sandline-product .sandline-product__wa-title {
        font-size: 11.5px;
    }
}

/* ---------- Meta box — sol altın aksent çubuğu hover'da animate ---------- */
body.woocommerce div.product.sandline-product .sandline-product__metabar {
    margin-top: 16px;
}
body.woocommerce div.product.sandline-product .sandline-product__metaitem {
    position: relative;
    overflow: hidden;
}
body.woocommerce div.product.sandline-product .sandline-product__metaitem::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 3px;
    height: 100%;
    background: var(--accent);
    transform: scaleY(0);
    transform-origin: top;
    transition: transform 0.3s cubic-bezier(.2,.7,.2,1);
}
body.woocommerce div.product.sandline-product .sandline-product__metaitem:hover::before {
    transform: scaleY(1);
}

/* ---------- Add-to-cart — shine animasyonu (hover'da soldan sağa parıltı) ---------- */
body.woocommerce div.product.sandline-product form.cart .single_add_to_cart_button {
    position: relative;
    overflow: hidden;
}
body.woocommerce div.product.sandline-product form.cart .single_add_to_cart_button::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, transparent 30%, rgba(255,255,255,0.25) 50%, transparent 70%);
    transform: translateX(-100%);
    transition: transform 0.6s cubic-bezier(.2,.7,.2,1);
    pointer-events: none;
}
body.woocommerce div.product.sandline-product form.cart .single_add_to_cart_button:hover::before {
    transform: translateX(100%);
}

/* ---------- Thumbnail aktif — yumuşak altın glow + hover'da görselin zoom ---------- */
body.woocommerce div.product.sandline-product .sandline-gallery-thumb.is-active {
    box-shadow: 0 0 0 1px var(--accent),
                0 6px 20px rgba(201, 169, 110, 0.25);
}
body.woocommerce div.product.sandline-product .sandline-gallery-thumb img {
    transition: transform 0.4s cubic-bezier(.2,.7,.2,1);
}
body.woocommerce div.product.sandline-product .sandline-gallery-thumb:hover img {
    transform: scale(1.08);
}

/* ---------- Tabs — animasyonlu underline ---------- */
body.woocommerce div.product.sandline-product .woocommerce-tabs ul.tabs li a {
    position: relative;
    overflow: hidden;
}
body.woocommerce div.product.sandline-product .woocommerce-tabs ul.tabs li a::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 0;
    height: 2px;
    background: var(--accent);
    transition: width 0.3s ease, left 0.3s ease;
}
body.woocommerce div.product.sandline-product .woocommerce-tabs ul.tabs li:hover a::after,
body.woocommerce div.product.sandline-product .woocommerce-tabs ul.tabs li.active a::after {
    width: 80%;
    left: 10%;
}

/* ---------- Excerpt — hover'da sol bar altına glow ---------- */
body.woocommerce div.product.sandline-product .sandline-product__excerpt {
    position: relative;
    transition: border-color 0.25s ease;
}
body.woocommerce div.product.sandline-product .sandline-product__excerpt:hover {
    border-color: rgba(201, 169, 110, 0.35);
}

/* Tablet — strip 420px (gallery ile uyumlu) */
@media (max-width: 1100px) {
    body.woocommerce div.product.sandline-product .sandline-gallery-thumbs {
        width: 420px;
    }
}
/* Mobil — strip tam genişlik, 4 küçük thumbnail */
@media (max-width: 740px) {
    body.woocommerce div.product.sandline-product .sandline-gallery-thumbs {
        width: 100%;
        gap: 8px;
    }
}

/* Her slide — height: 100% (outer kare frame'i doldursun),
   width: ZORLAMA YOK (flexslider inline width set ediyor). */
body.woocommerce div.product.sandline-product .woocommerce-product-gallery__image {
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    height: 100% !important;
    /* width: flexslider inline ile yönetiyor */
}
body.woocommerce div.product.sandline-product .woocommerce-product-gallery__image a {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
}

/* GÖRSEL — contain: tüm görsel her zaman görünür (cover gibi kırpılmaz).
   Portrait fashion fotoğrafı, landscape logo, square — hepsi sığar.
   Letterbox alanı outer'ın #0f0f0f arkaplanı ile doldurulur. */
body.woocommerce div.product.sandline-product .woocommerce-product-gallery__image img,
body.woocommerce div.product.sandline-product .sandline-product__gallery .woocommerce-product-gallery img {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
    display: block !important;
}

/* Flexslider yapısı: <ul class="slides"> ve <li> formatına geçer.
   UL'ye dokunma — flexslider inline width set ediyor (N * 100%). */
body.woocommerce div.product.sandline-product .woocommerce-product-gallery__wrapper.slides,
body.woocommerce div.product.sandline-product .flexslider .slides {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}
body.woocommerce div.product.sandline-product .flexslider .slides > li {
    margin: 0 !important;
    padding: 0 !important;
    position: relative;
}

/* JS-SİZ FALLBACK: noscript veya JS yüklenmediyse,
   sadece ilk slide görünsün — flexslider devreye girince override eder. */
.no-js body.woocommerce div.product.sandline-product .woocommerce-product-gallery__wrapper > div:not(:first-child) {
    display: none !important;
}

/* THUMBNAILS — flexslider'ın oluşturduğu thumbnail navigation */
body.woocommerce div.product.sandline-product .woocommerce-product-gallery .flex-control-nav.flex-control-thumbs {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    list-style: none !important;
    margin: 14px 0 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
}
body.woocommerce div.product.sandline-product .woocommerce-product-gallery .flex-control-thumbs li {
    width: calc((100% - 30px) / 4) !important;
    aspect-ratio: 1 / 1 !important;
    margin: 0 !important;
    border-radius: var(--radius-sm) !important;
    overflow: hidden !important;
    cursor: pointer;
}
body.woocommerce div.product.sandline-product .woocommerce-product-gallery .flex-control-thumbs li img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    display: block !important;
    border: 2px solid transparent !important;
    border-radius: var(--radius-sm) !important;
    opacity: 0.6;
    transition: opacity var(--transition), border-color var(--transition), transform var(--transition);
}
body.woocommerce div.product.sandline-product .woocommerce-product-gallery .flex-control-thumbs li img:hover {
    opacity: 1;
}
body.woocommerce div.product.sandline-product .woocommerce-product-gallery .flex-control-thumbs li img.flex-active,
body.woocommerce div.product.sandline-product .woocommerce-product-gallery .flex-control-thumbs li.flex-active img {
    opacity: 1;
    border-color: var(--accent) !important;
}

/* Tek görsel varsa thumbnail satırını gizle */
body.woocommerce div.product.sandline-product .woocommerce-product-gallery .flex-control-thumbs:not(:has(li + li)) {
    display: none !important;
}

/* Summary — sabit genişlik, içerik buraya sığar (title text-wrap: balance ile) */
body.woocommerce div.product.sandline-product .sandline-product__summary {
    flex: 0 0 420px !important;
    width: 420px !important;
    max-width: 420px !important;
    min-width: 0 !important;
    align-items: stretch !important;
}
body.woocommerce div.product.sandline-product .sandline-product__summary > * {
    width: 100% !important;
    max-width: 100% !important;
    align-self: stretch !important;
}
/* Excerpt / form / metabar — kolonu tam doldurur */
body.woocommerce div.product.sandline-product .sandline-product__excerpt,
body.woocommerce div.product.sandline-product form.cart,
body.woocommerce div.product.sandline-product .sandline-product__metabar,
body.woocommerce div.product.sandline-product .product_meta {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Tabs ve pillars/related gibi alt bölümler — page genişliğinde, ortalı */
body.woocommerce div.product.sandline-product .woocommerce-tabs,
body.woocommerce div.product.sandline-product .sandline-product__pillars,
body.woocommerce div.product.sandline-product .related,
body.woocommerce div.product.sandline-product .upsells {
    width: 100% !important;
    max-width: 1280px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Title — net pixel + viewport breakpoint'leri (clamp parse riski yok).
   text-wrap: balance → satırlar doğal kırılır, her kelime kendi satırına düşmez. */
html body.woocommerce div.product.sandline-product h1.product_title.entry-title,
html body.woocommerce div.product.sandline-product h1.product_title,
html body.woocommerce div.product.sandline-product .product_title {
    font-size: 28px !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    letter-spacing: -0.015em !important;
    word-break: normal !important;
    word-spacing: normal !important;
    overflow-wrap: break-word !important;
    hyphens: manual !important;
    text-wrap: balance;
    margin: 0 0 10px !important;
    max-width: 100% !important;
}
@media (min-width: 1100px) {
    html body.woocommerce div.product.sandline-product h1.product_title.entry-title,
    html body.woocommerce div.product.sandline-product h1.product_title,
    html body.woocommerce div.product.sandline-product .product_title {
        font-size: 32px !important;
    }
}
@media (min-width: 1400px) {
    html body.woocommerce div.product.sandline-product h1.product_title.entry-title,
    html body.woocommerce div.product.sandline-product h1.product_title,
    html body.woocommerce div.product.sandline-product .product_title {
        font-size: 36px !important;
    }
}
@media (max-width: 740px) {
    html body.woocommerce div.product.sandline-product h1.product_title.entry-title,
    html body.woocommerce div.product.sandline-product h1.product_title,
    html body.woocommerce div.product.sandline-product .product_title {
        font-size: 24px !important;
    }
}

/* Fiyat — title ile uyumlu, taşmasın */
html body.woocommerce div.product.sandline-product .summary p.price,
html body.woocommerce div.product.sandline-product p.price {
    font-size: 24px !important;
    font-weight: 700 !important;
    margin: 0 0 8px !important;
}
@media (min-width: 1400px) {
    html body.woocommerce div.product.sandline-product .summary p.price,
    html body.woocommerce div.product.sandline-product p.price {
        font-size: 28px !important;
    }
}

/* ADET formu — quantity solda, buton sağda yan yana, ASLA stack'lenmez */
body.woocommerce div.product.sandline-product form.cart {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 14px !important;
    padding: 18px 18px 18px 20px !important;
}
body.woocommerce div.product.sandline-product form.cart .quantity {
    flex: 0 0 auto !important;
    width: auto !important;
    margin: 0 !important;
}
body.woocommerce div.product.sandline-product form.cart .single_add_to_cart_button,
body.woocommerce div.product.sandline-product form.cart .button {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: auto !important;
    margin: 0 !important;
}

/* Metabar — 3 kolon eşit, tam genişlik */
body.woocommerce div.product.sandline-product .sandline-product__metabar {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

/* ---------- Tablet (740–1100px): kolonları biraz daralt ---------- */
@media (max-width: 1100px) {
    body.woocommerce div.product.sandline-product {
        padding: 48px 20px 64px !important;
    }
    body.woocommerce div.product.sandline-product .sandline-product__hero {
        gap: 36px !important;
        padding: 28px !important;
    }
    body.woocommerce div.product.sandline-product .sandline-product__gallery {
        flex: 0 0 420px !important;
        width: 420px !important;
        max-width: 420px !important;
    }
    body.woocommerce div.product.sandline-product .sandline-product__summary {
        flex: 0 0 380px !important;
        width: 380px !important;
        max-width: 380px !important;
    }
    /* Tablet'te kare frame 420x420 */
    body.woocommerce div.product.sandline-product .woocommerce-product-gallery {
        width: 420px !important;
        height: 420px !important;
    }
}

/* ---------- Mobil (≤740px): tek kolon dikey stack ---------- */
@media (max-width: 740px) {
    body.woocommerce div.product.sandline-product {
        padding: 36px 14px 48px !important;  /* header'dan ayrıl mobilde de */
    }
    body.woocommerce div.product.sandline-product .sandline-product__hero {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 24px !important;
        padding: 20px !important;
        width: 100% !important;
        max-width: 560px !important;
        margin: 0 auto 40px !important;
        border-radius: var(--radius-md) !important;
    }
    body.woocommerce div.product.sandline-product .sandline-product__gallery,
    body.woocommerce div.product.sandline-product .sandline-product__summary {
        flex: 0 0 auto !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
    }
    /* Mobilde gallery — viewport'a uyumlu kare frame.
       calc(100vw - 28px) tekniği kullanıyoruz: viewport width - sayfa padding.
       Slide'lar zaten inset:0 ile parent'ı doldurur. */
    body.woocommerce div.product.sandline-product .woocommerce-product-gallery {
        width: 100% !important;
        max-width: 100% !important;
        height: calc(100vw - 60px) !important;
        max-height: 520px !important;
        padding-bottom: 0 !important;
    }
    body.woocommerce div.product.sandline-product .woocommerce-product-gallery__wrapper {
        position: relative !important;
        inset: auto !important;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        bottom: auto !important;
        width: 100% !important;
        height: 100% !important;
    }
    /* Mobil thumbnail strip — kare gallery'nin altında */
    body.woocommerce div.product.sandline-product .sandline-gallery-thumbs {
        margin-top: 12px !important;
        gap: 8px !important;
    }
    body.woocommerce div.product.sandline-product .summary p.price {
        font-size: 22px !important;
    }
    /* Mobilde buton tek satıra zorlamayalım, gerekirse alt satıra düşsün */
    body.woocommerce div.product.sandline-product form.cart {
        flex-wrap: wrap !important;
    }
    body.woocommerce div.product.sandline-product form.cart .single_add_to_cart_button {
        flex: 1 1 100% !important;
        min-width: 0 !important;
    }
    /* Metabar tek kolon */
    body.woocommerce div.product.sandline-product .sandline-product__metabar {
        grid-template-columns: 1fr !important;
    }
}

/* ---------- SEPET — Flexbox ile garantili 2-kolon ---------- */
/* Eski grid kurallarını sıfırla, yerine flex koy. body. ile en yüksek specificity. */
body.woocommerce-cart .entry-content {
    padding: 50px 0 90px !important;
}
body.woocommerce-cart .entry-content > .woocommerce {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: flex-start !important;
    gap: 28px !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
/* Notice / boş sepet / mağazaya dön — tam genişlik */
body.woocommerce-cart .entry-content > .woocommerce > .woocommerce-notices-wrapper,
body.woocommerce-cart .entry-content > .woocommerce > .wc-empty-cart-message,
body.woocommerce-cart .entry-content > .woocommerce > .cart-empty,
body.woocommerce-cart .entry-content > .woocommerce > .return-to-shop {
    flex: 0 0 100% !important;
    width: 100% !important;
    order: -1;
}
/* Sol: ürün listesi — esnek, kalan alanı doldur */
body.woocommerce-cart .entry-content form.woocommerce-cart-form {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    max-width: calc(100% - 388px) !important;
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    overflow: visible !important;
}
/* Sağ: özet kutusu — 360px sabit sticky */
body.woocommerce-cart .entry-content .cart-collaterals {
    flex: 0 0 360px !important;
    width: 360px !important;
    max-width: 360px !important;
    min-width: 0 !important;
    float: none !important;
    position: sticky !important;
    top: 96px !important;
    align-self: flex-start !important;
    margin: 0 !important;
}
/* WC'nin default'ı .cart_totals'a float:right + width:48% verir — agresif iptal */
body.woocommerce-cart .cart-collaterals .cart_totals,
body.woocommerce-cart .cart-collaterals > .cross-sells,
body.woocommerce-cart .cart-collaterals .shipping_calculator {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    clear: none !important;
}
body.woocommerce-cart .cart-collaterals > .cross-sells {
    margin-top: 20px !important;
}

/* Totals — fiyatın taşmasını engelle */
body.woocommerce-cart .cart_totals h2 {
    font-size: 17px !important;
    white-space: nowrap;
}
body.woocommerce-cart .cart_totals table tr.order-total th,
body.woocommerce-cart .cart_totals table tr.order-total td {
    font-size: 15px !important;
    padding-top: 16px !important;
    white-space: nowrap !important;
}
body.woocommerce-cart .cart_totals table tr.order-total td,
body.woocommerce-cart .cart_totals table tr.order-total .amount,
body.woocommerce-cart .cart_totals table tr.order-total .woocommerce-Price-amount {
    font-size: 18px !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
}

/* "Ödeme sayfasına git" — tek satır */
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
    font-size: 14px !important;
    white-space: nowrap !important;
    padding: 14px 16px !important;
    min-height: 50px !important;
    line-height: 1.2 !important;
    letter-spacing: 0.01em !important;
}

/* "Sepeti güncelle" + "Kupon kullan" — dark tema'da görünür buton */
body.woocommerce-cart td.actions .button,
body.woocommerce-cart td.actions button[name="apply_coupon"],
body.woocommerce-cart td.actions button[name="update_cart"] {
    background: var(--accent) !important;
    color: #000 !important;
    border: 1px solid var(--accent) !important;
}
body.woocommerce-cart td.actions button[name="update_cart"]:disabled,
body.woocommerce-cart td.actions button[name="update_cart"][disabled] {
    background: var(--bg-tertiary) !important;
    color: var(--text-muted) !important;
    border-color: var(--border) !important;
    opacity: 1 !important;
    cursor: not-allowed;
}

/* entry-content link altçizgisi sepete sızmasın */
body.woocommerce-cart .entry-content a,
body.woocommerce-checkout .entry-content a {
    border-bottom: 0 !important;
    text-decoration: none !important;
}
body.woocommerce-cart .entry-content table.shop_table.cart td.product-name a {
    border-bottom: 0 !important;
    text-decoration: none !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
}

/* Sepet — mobil */
@media (max-width: 1024px) {
    body.woocommerce-cart .entry-content form.woocommerce-cart-form {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }
    body.woocommerce-cart .entry-content .cart-collaterals {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        position: static !important;
        top: auto !important;
    }
}

/* ---------- ÖDEME — Sticky'i kaldır + sipariş özetini görünür yap ---------- */
/* Sticky bazı durumlarda görünürlüğü bozabiliyor — düz akışa al, basit ve güvenli. */
body.woocommerce-checkout .entry-content form.checkout .checkout-order-review {
    position: static !important;
    top: auto !important;
}
/* Heading ve order_review'u garantili göster */
body.woocommerce-checkout #order_review_heading {
    display: block !important;
    visibility: visible !important;
}
body.woocommerce-checkout #order_review {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    position: relative !important;
    z-index: 1;
}
body.woocommerce-checkout #order_review table.shop_table.woocommerce-checkout-review-order-table {
    display: table !important;
    width: 100% !important;
    visibility: visible !important;
    opacity: 1 !important;
}
body.woocommerce-checkout #order_review table tbody {
    display: table-row-group !important;
    visibility: visible !important;
}
body.woocommerce-checkout #order_review table tbody tr.cart_item {
    display: table-row !important;
    visibility: visible !important;
}
body.woocommerce-checkout #order_review table tbody tr.cart_item td,
body.woocommerce-checkout #order_review table tfoot tr th,
body.woocommerce-checkout #order_review table tfoot tr td {
    display: table-cell !important;
    visibility: visible !important;
    color: var(--text-primary) !important;
}
body.woocommerce-checkout #order_review table tfoot {
    display: table-footer-group !important;
    visibility: visible !important;
}
body.woocommerce-checkout #payment {
    display: block !important;
    visibility: visible !important;
    margin-top: 18px !important;
}
/* WC blockUI overlay'ini zorla görünmez kıl (AJAX takılırsa içerik gözüksün) */
body.woocommerce-checkout .blockUI.blockOverlay {
    opacity: 0 !important;
    background: transparent !important;
}
/* entry-content blog tipografisinin tabloya bulaşmasını engelle */
body.woocommerce-checkout #order_review table th,
body.woocommerce-checkout #order_review table td {
    font-size: 14px !important;
    line-height: 1.5 !important;
    color: var(--text-primary) !important;
}

/* (Eski v1 hotfix bloğu kaldırıldı — v3 (yukarıda) v2 ile birlikte tek otorite.
    Buradaki kurallar v3'ün üzerine yazıyordu ve hero ortalamayı bozuyordu.) */

/* ============================================================
   WhatsApp Floating Button
   ============================================================ */
.wa-float {
    position: fixed;
    bottom: 28px;
    right: 28px;
    z-index: 9998;
    width: 60px;
    height: 60px;
    background: #25D366;
    color: #fff;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    box-shadow: 0 8px 24px rgba(37, 211, 102, 0.4),
                0 4px 12px rgba(0, 0, 0, 0.3);
    transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
    -webkit-tap-highlight-color: transparent;
}
.wa-float:hover {
    background: #1da851;
    color: #fff;
    transform: translateY(-3px) scale(1.06);
    box-shadow: 0 12px 28px rgba(37, 211, 102, 0.5),
                0 6px 16px rgba(0, 0, 0, 0.4);
}
.wa-float:active { transform: translateY(-1px) scale(1.0); }
.wa-float-icon {
    position: relative;
    z-index: 2;
    width: 30px;
    height: 30px;
    flex-shrink: 0;
    display: block;
}
.wa-float-label {
    position: absolute;
    right: calc(100% + 12px);
    top: 50%;
    transform: translateY(-50%);
    background: var(--bg-elevated, #222);
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.04em;
    padding: 8px 14px;
    border-radius: 8px;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease, transform 0.3s ease;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4);
}
.wa-float-label::after {
    content: '';
    position: absolute;
    left: 100%;
    top: 50%;
    transform: translateY(-50%);
    border: 6px solid transparent;
    border-left-color: var(--bg-elevated, #222);
}
.wa-float:hover .wa-float-label {
    opacity: 1;
    transform: translateY(-50%) translateX(-2px);
}

/* Pulse ring animation */
.wa-float-pulse {
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: #25D366;
    opacity: 0.6;
    z-index: 1;
    animation: wa-pulse 2.2s cubic-bezier(0.16, 1, 0.3, 1) infinite;
}
@keyframes wa-pulse {
    0%   { transform: scale(1);    opacity: 0.6; }
    70%  { transform: scale(1.55); opacity: 0;   }
    100% { transform: scale(1.55); opacity: 0;   }
}

/* Mobile — smaller, padded from edges */
@media (max-width: 768px) {
    .wa-float {
        bottom: 18px;
        right: 18px;
        width: 54px;
        height: 54px;
    }
    .wa-float-icon { width: 26px; height: 26px; }
    .wa-float-label { display: none; }
}
@media (max-width: 480px) {
    .wa-float {
        bottom: 16px;
        right: 16px;
        width: 50px;
        height: 50px;
    }
    .wa-float-icon { width: 24px; height: 24px; }
}

/* Respect reduced motion */
/* ============================================================
   Sandline Custom Language Switcher (native <details> — JS gerekmez)
   ============================================================ */
.sl-lang {
    position: relative;
    display: inline-block;
    font-family: inherit;
}

/* Header-içi lang switcher wrapper — hesabım ikonunun solunda */
.header-lang {
    display: inline-flex;
    align-items: center;
    margin-right: 6px;
}
.header-lang .sl-lang-trigger {
    padding: 7px 10px;
    background: rgba(255, 255, 255, 0.06);
    border-color: rgba(255, 255, 255, 0.18);
}
/* Mobil/tabletten küçük ekranlarda header-içi dil switcher gizli (mobile menüde var) */
@media (max-width: 1024px) {
    .header-lang { display: none; }
}

/* Native details default marker'larını yok et */
.sl-lang summary { list-style: none; }
.sl-lang summary::-webkit-details-marker { display: none; }
.sl-lang summary::marker { display: none; content: ''; }

/* Trigger */
.sl-lang-trigger {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 12px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 6px;
    color: #d8d8d8;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.4;
    cursor: pointer;
    transition: background 0.25s ease, border-color 0.25s ease, color 0.25s ease;
    white-space: nowrap;
    user-select: none;
    outline: none;
}
.sl-lang-trigger:hover {
    background: rgba(201, 169, 110, 0.1);
    border-color: rgba(201, 169, 110, 0.4);
    color: #c9a96e;
}
.sl-lang[open] .sl-lang-trigger {
    background: rgba(201, 169, 110, 0.15);
    border-color: rgba(201, 169, 110, 0.5);
    color: #c9a96e;
}
.sl-lang-trigger:focus-visible {
    outline: 2px solid rgba(201, 169, 110, 0.5);
    outline-offset: 2px;
}

.sl-lang-flag {
    width: 20px;
    height: 14px;
    object-fit: cover;
    border-radius: 2px;
    display: block;
    flex-shrink: 0;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
}
.sl-lang-name { color: inherit; line-height: 1.4; }
.sl-lang-caret {
    color: #888;
    flex-shrink: 0;
    transition: transform 0.25s ease, color 0.25s ease;
}
.sl-lang-trigger:hover .sl-lang-caret,
.sl-lang[open] .sl-lang-trigger .sl-lang-caret { color: #c9a96e; }
.sl-lang[open] .sl-lang-trigger .sl-lang-caret { transform: rotate(180deg); }

/* Dropdown — sadece details[open] iken görünür (native) */
.sl-lang-menu {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    min-width: 170px;
    margin: 0;
    padding: 6px;
    list-style: none;
    background: #18110a;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 8px;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.6),
                0 4px 12px rgba(0, 0, 0, 0.3);
    z-index: 1100;
}
.sl-lang-menu li { margin: 0; padding: 0; list-style: none; }

.sl-lang-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 9px 12px;
    color: #d8d8d8;
    text-decoration: none;
    font-size: 13px;
    font-weight: 500;
    border-radius: 5px;
    transition: background 0.2s ease, color 0.2s ease;
    white-space: nowrap;
}
.sl-lang-item:hover,
.sl-lang-item:focus-visible {
    background: rgba(201, 169, 110, 0.12);
    color: #c9a96e;
    outline: none;
}

/* Mobile variant — menü içinde */
.sl-lang--mobile .sl-lang-trigger {
    padding: 8px 14px;
    font-size: 13px;
    min-width: 140px;
    justify-content: flex-end;
}
.sl-lang--mobile .sl-lang-menu {
    right: 0;
    left: auto;
    min-width: 180px;
}

@media (max-width: 480px) {
    .sl-lang--desktop .sl-lang-name { display: none; }
    .sl-lang--desktop .sl-lang-trigger { padding: 6px 10px; gap: 6px; }
}

/* ============================================================
   IC SAYFALAR — ana sayfa ile AYNI tek-tip gri zemin (#1c140b) + ince derinlik.
   Govde: tek-tip gri + viewport-sabit notr parilti. Gri BOLUM bantlari saydam.
   Kartlar (bg-card/elevated/rgba), HERO'lar (foto) ve altin CTA'lar korunur.
   Header/footer (literal rgba) ve ana sayfa (.home/.is-front-page) etkilenmez.
   ============================================================ */
body:not(.home):not(.is-front-page){
    background:
        radial-gradient(130% 80% at 50% 40%, rgba(255,255,255,.08), transparent 74%) fixed,
        #1c140b;
}
.about-page,.services-page,.contact-page,.blog-page,.blog-single-page,.imalat-detay,.wc-main{ background:transparent !important; }
.about-story,.about-stats-section,.about-pillars-section,.about-timeline-section,.about-why-section,.about-values-section,.about-cta-section,
.srv-section,.srv-section--services,.srv-section--process,.srv-section--capabilities,.srv-section--content,.srv-section--cta,
.ct-info-section,.ct-faq-section,.ct-cta-section,
.imalat-detay .idet-body,.imalat-detay .idet-feats{ background:transparent !important; }

/* ============================================================
   HEADER ENHANCEMENTS — 2026-06 (profesyonel cila)
   NOT: Header ARKA PLANINA dokunulmadı. Sadece nav/buton/mobil cila + mobil logo.
   Geri almak için bu bloğun TAMAMINI sil.
   ============================================================ */

/* ---- DESKTOP nav cila (genişlik etkisi yok, geniş ekranlarda) ---- */
@media (min-width: 1025px) {
    .main-navigation .nav-menu { gap: 2px; }
    .main-navigation .nav-menu > li > a {
        transition: color 0.25s ease, background 0.25s ease, transform 0.2s ease;
    }
    .main-navigation .nav-menu > li > a:hover {
        background: rgba(201, 169, 110, 0.10);
    }
    .main-navigation .nav-menu > li > a::before {
        height: 2px; border-radius: 2px;
        box-shadow: 0 0 8px rgba(201, 169, 110, 0.55);
    }
}

/* ---- DESKTOP genişlik ekleyen dokunuşlar (yalnız 1200px+; dar laptoplarda taşmasın) ---- */
@media (min-width: 1200px) {
    /* Nav ile araçlar arasında zarif dikey ayraç */
    .header-tools::before {
        content: '';
        align-self: center;
        width: 1px; height: 26px;
        margin: 0 16px 0 8px;
        background: linear-gradient(180deg, transparent, rgba(201,169,110,0.5), transparent);
    }
    /* Son menü öğesi (İletişim) → CTA pill buton */
    .main-navigation .nav-menu > li:last-child > a {
        color: var(--accent);
        border: 1px solid rgba(201, 169, 110, 0.55);
        border-radius: 999px;
        padding: 9px 22px;
        margin-left: 10px;
    }
    .main-navigation .nav-menu > li:last-child > a::before { display: none; }
    .main-navigation .nav-menu > li:last-child > a:hover {
        background: linear-gradient(180deg, #d6b87a 0%, var(--accent) 60%, #b69458 100%);
        color: #0c0703;
        border-color: transparent;
        box-shadow: 0 8px 22px -8px rgba(201, 169, 110, 0.65);
        transform: translateY(-1px);
    }
}

/* ---- Araç butonları (tüm ekranlar) — daha rafine hover ---- */
.tool-btn {
    border-radius: 10px;
    transition: color 0.25s ease, background 0.25s ease, border-color 0.25s ease,
                box-shadow 0.28s ease, transform 0.28s cubic-bezier(0.22,1,0.36,1);
}
.tool-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 6px 16px -8px rgba(201, 169, 110, 0.6);
}
.cart-count { box-shadow: 0 2px 8px rgba(201, 169, 110, 0.55); }

/* ---- MOBİL MENÜ — siyah yerine marka koyusu + gold parıltı ---- */
.mobile-menu-panel {
    background:
        radial-gradient(135% 55% at 100% 100%, rgba(201,169,110,0.13), transparent 60%),
        linear-gradient(180deg,
            rgba(236, 230, 219, 0.99) 0%,
            rgba(230, 222, 207, 0.98) 11%,
            rgba(200, 189, 169, 0.97) 18%,
            rgba(112, 102, 86, 0.97) 24%,
            rgba(50, 45, 39, 0.98) 30%,
            #201f1d 36%,
            #1c1c1d 64%,
            #1b130a 100%);
    border-left: 1px solid rgba(201, 169, 110, 0.32);
}
.mobile-menu-foot {
    background: rgba(201, 169, 110, 0.05);
    border-top-color: rgba(201, 169, 110, 0.18);
}
.mobile-menu-list a:hover,
.mobile-menu-list .current-menu-item > a {
    background: linear-gradient(90deg, rgba(201,169,110,0.18), transparent);
    color: var(--accent);
}
/* Mobil menü panel logosu da biraz daha belirgin */
.mobile-menu-brand img { max-height: 40px; }

/* ---- MOBİL HEADER LOGOSU — biraz daha büyük ---- */
@media (max-width: 1024px) {
    .header-inner { min-height: 152px; }
    .site-branding .custom-logo, .site-branding img { max-height: 136px; }
    .site-header.scrolled .site-branding .custom-logo,
    .site-header.scrolled .site-branding img { max-height: 88px; }
    .site-header.scrolled .header-inner { min-height: 104px; }
}
@media (max-width: 768px) {
    .header-inner { min-height: 132px; }
    .site-branding .custom-logo, .site-branding img { max-height: 116px; }
    .site-header.scrolled .site-branding .custom-logo,
    .site-header.scrolled .site-branding img { max-height: 74px; }
    .site-header.scrolled .header-inner { min-height: 94px; }
}
@media (max-width: 480px) {
    .header-inner { min-height: 118px; }
    .site-branding .custom-logo, .site-branding img { max-height: 102px; }
    .site-header.scrolled .site-branding .custom-logo,
    .site-header.scrolled .site-branding img { max-height: 64px; }
    .site-header.scrolled .header-inner { min-height: 82px; }
}


/* ============================================================
   TX-SLIDER — Hero sonrası hizmet slider'ı (GSAP timed cards)
   Bağımsız bölüm (#tx-slider); main.js DOM'a enjekte eder.
   Kaldırmak için: bu CSS bloğu + main.js'teki TX-SLIDER bloğu silinir.
   ============================================================ */
#tx-slider {
    position: relative;
    width: 100%;
    height: 100vh;
    min-height: 600px;
    max-height: 1000px;
    overflow: hidden;
    background-color: #18110a;
    color: #ffffffdd;
    isolation: isolate;
}
#tx-slider * { box-sizing: border-box; }
/* Okunabilirlik: hero gibi soldan koyu → sağa şeffaf (aktif kartın üstünde, metnin altında) */
#tx-slider::before {
    content: ""; position: absolute; inset: 0; z-index: 21; pointer-events: none;
    background: linear-gradient(90deg,
        rgba(20,18,14,0.90) 0%,
        rgba(20,18,14,0.80) 34%,
        rgba(20,18,14,0.56) 56%,
        rgba(20,18,14,0.26) 76%,
        rgba(20,18,14,0) 100%);
}

.tx-card {
    position: absolute; left: 0; top: 0;
    background-position: center; background-size: cover;
    box-shadow: 6px 6px 16px 2px rgba(0,0,0,0.55);
    will-change: transform, width, height;
}
.tx-card-content {
    position: absolute; left: 0; top: 0;
    color: #ffffffee; padding-left: 16px; z-index: 40; pointer-events: none;
    text-shadow: 0 2px 8px rgba(0,0,0,0.6);
}
.tx-content-start { width: 30px; height: 4px; border-radius: 99px; background: #fff; }
.tx-content-place { margin-top: 8px; font-size: 13px; font-weight: 500; }
.tx-content-title-1, .tx-content-title-2 {
    font-weight: 600; font-size: 18px; line-height: 1.15;
    font-family: "Oswald", "Inter", sans-serif; text-transform: uppercase;
}

.tx-details {
    z-index: 22; position: absolute; left: 56px; top: 220px; max-width: 92%;
}
.tx-details .tx-place-box { height: 44px; overflow: hidden; }
.tx-details .tx-place-box .tx-text {
    position: relative; padding-top: 16px; font-size: 18px; letter-spacing: 0.02em;
    text-shadow: 0 2px 8px rgba(0,0,0,0.5);
}
.tx-details .tx-place-box .tx-text:before {
    content: ""; position: absolute; top: 0; left: 0;
    width: 30px; height: 4px; border-radius: 99px; background: var(--accent, #c9a96e);
}
.tx-details .tx-title-box-1, .tx-details .tx-title-box-2 { margin-top: 2px; height: 92px; overflow: hidden; }
.tx-details .tx-title-1, .tx-details .tx-title-2 {
    font-weight: 600; font-size: 66px; line-height: 1.05; margin: 0;
    font-family: "Oswald", "Inter", sans-serif; text-transform: uppercase;
    text-shadow: 0 3px 16px rgba(0,0,0,0.45);
}
.tx-details .tx-title-2 { color: var(--accent, #c9a96e); }
.tx-details .tx-desc {
    margin-top: 16px; width: 480px; max-width: 100%; font-size: 14px; line-height: 1.7;
    color: #ffffffdd; text-shadow: 0 2px 8px rgba(0,0,0,0.5);
}
.tx-details .tx-cta { width: 480px; max-width: 100%; margin-top: 24px; display: flex; align-items: center; }
.tx-details .tx-cta .tx-bookmark {
    border: none; background: var(--accent, #c9a96e); width: 40px; height: 40px;
    border-radius: 99px; color: #1c140c; display: grid; place-items: center; cursor: pointer; flex-shrink: 0;
    transition: transform .25s ease, box-shadow .25s ease;
}
.tx-details .tx-cta .tx-bookmark:hover { transform: translateY(-2px); box-shadow: 0 8px 18px -6px rgba(201,169,110,0.7); }
.tx-details .tx-cta .tx-bookmark svg { width: 20px; height: 20px; }
.tx-details .tx-cta .tx-discover {
    border: 1px solid #ffffff; background: transparent; height: 40px; border-radius: 99px;
    color: #fff; padding: 4px 26px; font-size: 12px; letter-spacing: 0.12em; margin-left: 0;
    text-transform: uppercase; cursor: pointer; transition: all .3s ease;
    display: inline-flex; align-items: center; text-decoration: none;
}
.tx-details .tx-cta .tx-discover:hover { background: var(--accent,#c9a96e); border-color: var(--accent,#c9a96e); color: #1c140c; }

.tx-indicator { position: absolute; left: 0; right: 0; top: 0; height: 4px; z-index: 60; background: var(--accent, #c9a96e); }

.tx-eyebrow {
    position: absolute; top: 40px; left: 56px; z-index: 55;
    font-size: 12px; letter-spacing: 0.3em; text-transform: uppercase; color: var(--accent,#c9a96e); font-weight: 600;
    text-shadow: 0 2px 8px rgba(0,0,0,0.5);
}

.tx-pagination { position: absolute; left: 0; top: 0; display: inline-flex; align-items: center; z-index: 60; }
.tx-pagination .tx-arrow {
    width: 48px; height: 48px; border-radius: 999px; border: 2px solid #ffffff55;
    display: grid; place-items: center; cursor: pointer; transition: all .3s ease;
}
.tx-pagination .tx-arrow:hover { border-color: var(--accent,#c9a96e); background: rgba(201,169,110,0.15); }
.tx-pagination .tx-arrow.tx-arrow-right { margin-left: 16px; }
.tx-pagination .tx-arrow svg { width: 22px; height: 22px; stroke-width: 2; color: #ffffffcc; }
.tx-progress-sub-container { margin-left: 24px; height: 50px; display: flex; align-items: center; }
.tx-progress-sub-background { width: 500px; max-width: 36vw; height: 3px; background: #ffffff33; }
.tx-progress-sub-foreground { height: 3px; width: 0; background: var(--accent,#c9a96e); }
.tx-slide-numbers { width: 50px; height: 50px; overflow: hidden; position: relative; margin-left: 18px; }
.tx-slide-numbers .tx-item { width: 50px; height: 50px; position: absolute; top: 0; left: 0; display: grid; place-items: center; font-size: 30px; font-weight: 700; color: #fff; }

/* Web (masaüstü ≥1025px): başlık iki kelimesi YAN YANA + "Keşfet" butonu sağa uzun */
@media (min-width: 1025px) {
    .tx-details .tx-title-box-1, .tx-details .tx-title-box-2 {
        display: inline-block; vertical-align: top;
    }
    .tx-details .tx-title-box-1 { margin-right: 0.34em; }
    .tx-details .tx-title-1, .tx-details .tx-title-2 { font-size: 56px; white-space: nowrap; }
    .tx-details .tx-cta .tx-discover {
        min-width: 210px; padding-left: 38px; padding-right: 38px; justify-content: center;
    }
}

/* Tablet */
@media (max-width: 1024px) {
    #tx-slider { height: 92vh; min-height: 560px; }
    .tx-details { left: 32px; }
    .tx-details .tx-title-1, .tx-details .tx-title-2 { font-size: 52px; }
    .tx-details .tx-title-box-1, .tx-details .tx-title-box-2 { height: 72px; }
    .tx-details .tx-desc, .tx-details .tx-cta { width: 400px; }
}
/* Mobil — mini kartlar sağ kenarın dışına (JS), metin altta, okunabilirlik için scrim */
@media (max-width: 600px) {
    #tx-slider { height: 86vh; min-height: 520px; }
    #tx-slider::after {
        content: ""; position: absolute; inset: 0; z-index: 21; pointer-events: none;
        background: linear-gradient(180deg, rgba(0,0,0,0.22) 0%, rgba(0,0,0,0) 32%, rgba(0,0,0,0) 50%, rgba(0,0,0,0.80) 100%);
    }
    .tx-eyebrow { top: 22px; left: 20px; }
    .tx-details { left: 20px !important; right: 20px !important; top: auto !important; bottom: 92px !important; max-width: none; }
    .tx-details .tx-place-box .tx-text { font-size: 15px; }
    .tx-details .tx-title-1, .tx-details .tx-title-2 { font-size: 38px; }
    .tx-details .tx-title-box-1, .tx-details .tx-title-box-2 { height: 48px; }
    .tx-details .tx-desc {
        width: auto; font-size: 13px; line-height: 1.6;
        display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
    }
    .tx-details .tx-cta { width: auto; margin-top: 14px; }
    .tx-pagination { left: 20px !important; top: auto !important; bottom: 26px !important; }
    .tx-progress-sub-container { display: none; }
    .tx-card-content { display: none; }
}
/* ---- İmalat bölümü: "İmalat" başlığını kaldır + slider'ı "İmalat Sürecimiz"e yaklaştır ---- */
.section-imalat .section-header { display: none !important; }
.section-imalat { padding-top: 0 !important; padding-bottom: 64px !important; }
.section-imalat .imcf { margin-top: 6px !important; }
.section-process { padding-bottom: 48px !important; }

/* "Hizmet Alanlarımız" bölümü kaldırıldı — yerini hero sonrası yeni slider aldı */
.section-services-v2 { display: none !important; }

/* ---- Mobil: yatay kaymayı engelle (sticky header'ı bozmadan) ---- */
html, body { overflow-x: clip; }

/* ---- "Hareketi Azalt" (Reduce Motion) AÇIK olsa bile video + slider GÖRÜNSÜN ---- */
/* ---- Mobil: "İmalat Sürecimiz" adım sayıları görselin ortasına girmesin → sol üstte rozet ---- */
@media (max-width: 767px) {
    .section-acc .pc__num {
        top: 0.85rem !important;
        left: 1.05rem !important;
        right: auto !important;
        width: auto !important;
        text-align: left !important;
        background: rgba(0,0,0,0.5) !important;
        padding: 3px 11px !important;
        border-radius: 99px !important;
        backdrop-filter: blur(2px);
    }
}

/* ---- Marquee (kayan şerit): sistem "Hareketi Azalt" acik olsa bile aksin (gomulu guard ezilir) ---- */
.section-marquee .mq-track { animation: sl-mq 34s linear infinite !important; }

/* ---- WooCommerce "parolayı göster/gizle" ikonu — bal köpüğü (ikon ::before bg-SVG; rengini altın SVG ile eziyoruz) ---- */
.woocommerce .show-password-input::before,
.woocommerce-page .show-password-input::before,
form .password-input .show-password-input::before,
.show-password-input::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e8c87a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7-10-7-10-7z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
    opacity: 1 !important;
}
.woocommerce .show-password-input.display-password::before,
.woocommerce-page .show-password-input.display-password::before,
form .password-input .show-password-input.display-password::before,
.show-password-input.display-password::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e8c87a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-10-7-10-7a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 10 7 10 7a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24'/%3E%3Cline x1='1' y1='1' x2='23' y2='23'/%3E%3C/svg%3E") !important;
}
