:root {
    --primary: #FF6B00;
    --primary-dark: #E65100;
    --primary-light: #FFF7ED;
    --accent: #0F172A;
    --accent-soft: #475569;
    --bg: #FDF5ED;
    --header-bg: #FDF5ED;
    --surface: #FFFCF8;
    --text: #1e293b;
    --muted: #64748b;
    --border: #e2e8f0;
    --radius: 12px;
    --shadow: 0 4px 20px rgba(255, 107, 0, .12);
    --font: 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif;
    --site-header-height: 72px;
    --site-mega-nav-height: 60px;
    --header-line: #ecdcc8;
}
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-padding-top: calc(var(--site-header-height) + var(--site-mega-nav-height)); }
body {
    font-family: var(--font); background: var(--bg); color: var(--text); line-height: 1.5;
    -webkit-font-smoothing: antialiased; overflow-x: hidden;
    padding-top: var(--site-header-height);
}
body.has-mega-nav {
    padding-top: calc(var(--site-header-height) + var(--site-mega-nav-height));
}
.main-content { min-height: 50vh; background: var(--bg); }

.main-content > .hero-full:first-child { margin-top: 0; }
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
.container { max-width: 1280px; margin: 0 auto; padding: 0 1.25rem; }
.container-fluid { width: 100%; }
.px-4 { padding-left: 1.5rem; padding-right: 1.5rem; }
.text-warning { color: var(--primary) !important; }
.text-muted { color: var(--muted); }
.me-1 { margin-right: .25rem; }
.me-2 { margin-right: .5rem; }
.ms-1 { margin-left: .25rem; }

/* ── Patidostu tarzı tam genişlik navbar ── */
.site-navbar,
.site-navbar-inner {
    background-color: var(--header-bg) !important;
}
.site-navbar {
    position: fixed; top: 0; left: 0; right: 0; z-index: 1000;
    height: var(--site-header-height);
    border-bottom: 1px solid var(--header-line);
    box-shadow: none;
    transition: transform .25s ease;
}
.site-navbar-inner {
    display: flex; align-items: center; gap: 1.25rem;
    height: 100%;
    padding: 0 1.5rem;
    width: 100%;
}
.navbar-brand {
    display: flex; align-items: center; flex-shrink: 0;
    height: 100%; line-height: 0; margin: 0; padding: 0;
}
.navbar-brand-logo {
    display: block;
    height: 56px;
    width: auto;
    max-width: min(280px, 42vw);
    object-fit: contain;
    object-position: left center;
}
.navbar-search {
    flex: 1; min-width: 200px; max-width: 640px;
    display: flex; background: #fff; border: 1px solid #ecdcc8;
    border-radius: 50px; overflow: hidden; margin: 0 auto;
}
.navbar-search input {
    flex: 1; border: none; background: transparent;
    padding: .7rem 1.15rem; font: inherit; outline: none; font-size: .9rem;
}
.navbar-search input::placeholder { color: #94a3b8; }
.navbar-search button {
    border: none; background: var(--primary); color: #fff;
    padding: 0 1.25rem; cursor: pointer; font-size: .95rem;
}
.navbar-nav {
    display: flex; align-items: center; gap: .5rem; flex-shrink: 0;
}
.navbar-nav .nav-link {
    font-weight: 700; color: var(--accent-soft); font-size: .95rem;
    padding: .5rem .85rem; transition: .2s; white-space: nowrap;
}
.navbar-nav .nav-link:hover { color: var(--primary); transform: translateY(-1px); }
.nav-link-user { display: flex; align-items: center; gap: .4rem; }
.nav-icon-btn {
    font-size: 1.2rem; color: var(--primary);
    background: var(--primary-light); width: 45px; height: 45px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    position: relative; transition: .3s;
}
.nav-icon-btn:hover {
    transform: translateY(-3px) scale(1.05);
    box-shadow: 0 5px 15px rgba(255, 107, 0, .2);
}
.nav-badge {
    position: absolute; top: -4px; right: -4px;
    background: #ef4444; color: #fff; font-size: .65rem; font-weight: 800;
    min-width: 18px; height: 18px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center; border: 2px solid #fff;
}
.nav-badge[hidden] {
    display: none !important;
}
.btn-nav-register {
    background: linear-gradient(135deg, #FF6B00, #F59E0B);
    color: #fff; font-weight: 800; padding: .55rem 1.25rem;
    border-radius: 50px; font-size: .9rem; transition: .2s;
}
.btn-nav-register:hover { transform: translateY(-2px); box-shadow: 0 6px 16px rgba(255,107,0,.3); }
.navbar-toggle {
    display: none; border: none; background: var(--primary-light);
    color: var(--primary); width: 42px; height: 42px; border-radius: 10px;
    font-size: 1.1rem; cursor: pointer;
}

/* Hero — Popüler ürün kartları */
.hero-popular { padding: 1.5rem 0 2rem; background: var(--bg); }
.hero-card {
    background: linear-gradient(135deg, #FF6B00 0%, #FF9F43 50%, #FFC107 100%);
    border-radius: 20px; padding: 2rem 2.25rem; color: #fff; margin-bottom: 1.75rem;
    position: relative; overflow: hidden;
    box-shadow: 0 10px 30px rgba(255, 107, 0, .25);
    border: 1px solid rgba(255,255,255,.2);
}
.hero-card::before {
    content: ''; position: absolute; top: -50%; right: -10%;
    width: 400px; height: 400px;
    background: radial-gradient(circle, rgba(255,255,255,.2) 0%, rgba(255,255,255,0) 70%);
    border-radius: 50%; pointer-events: none;
}
.hero-card-content { position: relative; z-index: 1; max-width: 620px; }
.hero-card-badge {
    display: inline-block; background: rgba(255,255,255,.2);
    padding: .35rem .85rem; border-radius: 50px; font-size: .8rem; font-weight: 700;
    margin-bottom: .85rem; backdrop-filter: blur(4px);
}
.hero-card h1 { font-size: clamp(1.65rem, 3vw, 2.35rem); font-weight: 800; line-height: 1.15; margin-bottom: .65rem; }
.hero-card > .hero-card-content > p,
.hero-card-content > p { opacity: .92; font-size: 1rem; margin-bottom: 1.25rem; line-height: 1.6; }
.hero-card-actions { display: flex; gap: .75rem; flex-wrap: wrap; margin-bottom: 1.5rem; }
.btn-hero-white {
    background: #fff; color: var(--primary); border: none; font-weight: 800;
    padding: .65rem 1.5rem; border-radius: 50px; transition: .3s;
    box-shadow: 0 5px 15px rgba(0,0,0,.1); display: inline-block;
}
.btn-hero-white:hover { transform: translateY(-3px); box-shadow: 0 10px 25px rgba(0,0,0,.15); color: var(--primary-dark); }
.btn-hero-outline {
    background: rgba(255,255,255,.2); color: #fff; border: 1px solid rgba(255,255,255,.4);
    font-weight: 700; padding: .65rem 1.5rem; border-radius: 50px; transition: .3s;
    backdrop-filter: blur(5px); display: inline-block;
}
.btn-hero-outline:hover { background: #fff; color: var(--primary); }
.hero-card-stats { display: flex; gap: 2rem; flex-wrap: wrap; }
.hero-card-stats div strong { display: block; font-size: 1.35rem; font-weight: 800; }
.hero-card-stats div span { font-size: .72rem; opacity: .85; text-transform: uppercase; letter-spacing: .04em; }

.hero-popular-head {
    display: flex; justify-content: space-between; align-items: flex-end;
    margin-bottom: 1rem; gap: 1rem; flex-wrap: wrap;
}
.hero-popular-head h2 { font-size: 1.25rem; font-weight: 800; color: var(--text); margin: 0; }
.hero-popular-head p { font-size: .85rem; margin: .15rem 0 0; }
.link-all {
    font-weight: 700; color: var(--muted); font-size: .9rem;
    display: flex; align-items: center; transition: .2s; white-space: nowrap;
}
.link-all:hover { color: var(--primary); transform: translateX(3px); }

.hero-popular-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 1rem;
}

/* Patidostu vitrin ürün kartı */
.showcase-card {
    background: #fff; border: 2px solid var(--primary); border-radius: 12px;
    overflow: hidden; transition: transform .2s, box-shadow .2s; height: 100%;
    box-shadow: 0 2px 8px rgba(0,0,0,.05);
}
.showcase-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(255, 107, 0, .18);
}
.showcase-card-link { display: flex; flex-direction: column; height: 100%; color: inherit; }
.showcase-card-media {
    position: relative; padding-top: 100%; background: #f8fafc;
}
.showcase-card-media img {
    position: absolute; inset: 0; width: 100%; height: 100%;
    object-fit: contain; padding: 10px;
}
.showcase-badge {
    position: absolute; top: 8px; left: 8px; z-index: 2;
    background: linear-gradient(90deg, #FF6B00, #FFC107);
    color: #fff; font-size: .65rem; font-weight: 800;
    padding: .3rem .55rem; border-radius: 30px;
    box-shadow: 0 4px 10px rgba(0,0,0,.15);
}
.showcase-discount {
    position: absolute; top: 8px; right: 8px; z-index: 2;
    background: #ef4444; color: #fff; font-size: .7rem; font-weight: 800;
    padding: .25rem .5rem; border-radius: 6px;
}
.showcase-card-body { padding: .65rem .75rem .85rem; flex: 1; display: flex; flex-direction: column; }
.showcase-title {
    font-size: .8rem; font-weight: 700; color: var(--text);
    line-height: 1.35; margin-bottom: .25rem;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.showcase-cat { font-size: .68rem; color: var(--muted); margin-bottom: .35rem; }
.showcase-price-row { margin-top: auto; display: flex; align-items: baseline; gap: .4rem; flex-wrap: wrap; }
.showcase-price { font-weight: 800; color: var(--primary); font-size: .95rem; }
.showcase-price-old { font-size: .75rem; color: var(--muted); text-decoration: line-through; }
.showcase-out { font-size: .78rem; color: #ef4444; font-weight: 700; margin-top: auto; }

.section-head-pati {
    display: flex; justify-content: space-between; align-items: flex-end;
    margin-bottom: 1rem; gap: 1rem; flex-wrap: wrap;
}
.section-head-pati h2 { font-size: 1.2rem; font-weight: 800; margin: 0; }
.section-head-pati p { font-size: .85rem; color: var(--muted); margin: .15rem 0 0; }

/* Ana sayfa — dolu vitrin */
.hero-card-compact { padding: 1.5rem 2rem; margin-bottom: 1.25rem; }
.hero-card-compact h1 { font-size: clamp(1.35rem, 2.5vw, 1.85rem); }
.hero-popular-grid-dense {
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    gap: .75rem;
}
.product-grid-dense {
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    gap: .75rem;
}
.showcase-card-compact .showcase-title { font-size: .75rem; }
.showcase-card-compact .showcase-price { font-size: .88rem; }

.home-stats-bar {
    background: var(--bg);
    padding: 1.35rem 0 1.5rem;
}
.home-stats-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
}
.home-stat-item {
    position: relative;
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.15rem 1.25rem;
    background: #fff;
    border-radius: 0;
    border: none;
    box-shadow: 0 4px 18px rgba(255, 107, 0, .07);
    overflow: hidden;
    transition: transform .22s ease, box-shadow .22s ease;
}
.home-stat-item::before {
    content: '';
    position: absolute;
    inset: 0;
    padding: 3px;
    background: linear-gradient(135deg, #FF6B00, #FF9F43);
    -webkit-mask:
        linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask:
        linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);
    mask-composite: exclude;
    pointer-events: none;
}
.home-stat-item:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 32px rgba(255, 107, 0, .14);
}
.home-stat-icon {
    width: 54px;
    height: 54px;
    border-radius: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    flex-shrink: 0;
}
.home-stat-item--products .home-stat-icon { background: linear-gradient(145deg, #FFF3E8, #FFE0C2); color: #E65100; }
.home-stat-item--categories .home-stat-icon { background: linear-gradient(145deg, #EEF2FF, #DCE4FF); color: #4338CA; }
.home-stat-item--brands .home-stat-icon { background: linear-gradient(145deg, #ECFDF5, #D1FAE5); color: #059669; }
.home-stat-item--shipping .home-stat-icon { background: linear-gradient(145deg, #FFF7ED, #FFEDD5); color: #FF6B00; }
.home-stat-text {
    min-width: 0;
    font-family: 'Montserrat', 'Plus Jakarta Sans', system-ui, sans-serif;
}
.home-stat-text strong {
    display: block;
    font-size: clamp(1.25rem, 2.2vw, 1.65rem);
    font-weight: 800;
    color: #3d2b1f;
    line-height: 1.1;
    letter-spacing: -.03em;
    font-variant-numeric: tabular-nums;
}
.home-stat-text span {
    display: block;
    margin-top: .35rem;
    font-size: .68rem;
    color: #5c4a3a;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .1em;
}

.home-block { padding: 1.5rem 0; }
.home-block-alt { background: #fff; border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }
.product-wall { background: linear-gradient(180deg, #fff 0%, var(--bg) 100%); }

/* Kategori kartları */
.category-cards-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
    gap: .85rem;
}
.category-card {
    background: #fff; border-radius: 14px; overflow: hidden;
    border: 1px solid var(--border); transition: .25s;
    box-shadow: 0 2px 8px rgba(0,0,0,.04);
}
.category-card:hover {
    transform: translateY(-4px);
    border-color: var(--primary);
    box-shadow: 0 12px 28px rgba(255,107,0,.15);
}
.category-card-media {
    position: relative; height: 110px; overflow: hidden;
    display: flex; align-items: center; justify-content: center;
}
.category-card-media img { width: 100%; height: 100%; object-fit: cover; }
.category-card-letter {
    font-size: 2.5rem; font-weight: 800; color: rgba(255,255,255,.9);
}
.category-card-count {
    position: absolute; bottom: 8px; right: 8px;
    background: rgba(15,23,42,.75); color: #fff; font-size: .65rem; font-weight: 700;
    padding: .25rem .5rem; border-radius: 20px; backdrop-filter: blur(4px);
}
.category-card-body {
    padding: .65rem .75rem .75rem;
    display: flex; flex-direction: column; gap: .2rem;
}
.category-card-body strong {
    font-size: .82rem; font-weight: 800; color: var(--text);
    line-height: 1.3;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.category-card-body span { font-size: .72rem; font-weight: 700; color: var(--primary); }

.cat-card-tone-0 .category-card-media { background: linear-gradient(135deg, #FF6B00, #FF9F43); }
.cat-card-tone-1 .category-card-media { background: linear-gradient(135deg, #2563eb, #60a5fa); }
.cat-card-tone-2 .category-card-media { background: linear-gradient(135deg, #7c3aed, #a78bfa); }
.cat-card-tone-3 .category-card-media { background: linear-gradient(135deg, #0d9488, #2dd4bf); }
.cat-card-tone-4 .category-card-media { background: linear-gradient(135deg, #db2777, #f472b6); }
.cat-card-tone-5 .category-card-media { background: linear-gradient(135deg, #dc2626, #f87171); }
.cat-card-tone-6 .category-card-media { background: linear-gradient(135deg, #ca8a04, #facc15); }
.cat-card-tone-7 .category-card-media { background: linear-gradient(135deg, #475569, #94a3b8); }

/* Marka kartları */
.brand-cards-scroll {
    display: flex; gap: .75rem; overflow-x: auto; padding-bottom: .35rem;
    scroll-snap-type: x mandatory; scrollbar-width: thin;
}
.brand-card {
    flex: 0 0 150px; scroll-snap-align: start;
    background: #fff; border: 1px solid var(--border); border-radius: 14px;
    padding: .85rem; transition: .2s;
    display: flex; flex-direction: column; align-items: center; text-align: center; gap: .55rem;
}
.brand-card:hover {
    border-color: var(--primary);
    box-shadow: 0 8px 20px rgba(255,107,0,.12);
    transform: translateY(-3px);
}
.brand-card-logo {
    width: 64px; height: 64px; border-radius: 50%;
    background: var(--primary-light); border: 2px solid #fed7aa;
    display: flex; align-items: center; justify-content: center;
    position: relative; overflow: hidden;
}
.brand-card-logo span {
    font-size: .95rem; font-weight: 800; color: var(--primary);
    position: relative; z-index: 1;
}
.brand-card-logo img {
    position: absolute; inset: 0; width: 100%; height: 100%;
    object-fit: contain; padding: 6px; opacity: .35;
}
.brand-card-info strong {
    font-size: .78rem; font-weight: 800; color: var(--text);
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.brand-card-info small { font-size: .68rem; color: var(--muted); font-weight: 600; }

.section-head-pati-split { align-items: center; }
.section-head-cat { display: flex; align-items: center; gap: .85rem; }
.section-cat-thumb {
    width: 52px; height: 52px; border-radius: 12px; object-fit: cover;
    border: 2px solid var(--primary); flex-shrink: 0;
}
.section-cat-thumb-letter {
    display: flex; align-items: center; justify-content: center;
    background: linear-gradient(135deg, #FF6B00, #FF9F43); color: #fff;
    font-weight: 800; font-size: 1.25rem;
}
.promo-strip-grid a.promo-card { color: #fff; }
.promo-card:hover { transform: translateY(-2px); }

/* Eski header gizle */
.topbar, .site-header { display: none !important; }

/* Hero — Profesyonel split banner */
.hero-pro { position: relative; background: #1a1a2e; overflow: hidden; }
.hero-pro-track { position: relative; min-height: clamp(480px, 52vw, 580px); }
.hero-pro-slide {
    position: absolute; inset: 0; opacity: 0; visibility: hidden;
    transition: opacity .7s ease, visibility .7s;
}
.hero-pro-slide.active { opacity: 1; visibility: visible; z-index: 1; }
.hero-pro-bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transform: scale(1.05); transition: transform 8s ease; }
.hero-pro-slide.active .hero-pro-bg { transform: scale(1); }
.hero-pro-bg-fallback { background: linear-gradient(135deg, #f27a1a 0%, #ff6b35 40%, #c44569 100%); }
.hero-pro-overlay {
    position: absolute; inset: 0;
    background: linear-gradient(105deg, rgba(15,15,30,.88) 0%, rgba(15,15,30,.55) 42%, rgba(15,15,30,.15) 100%);
}
.hero-pro-layout {
    position: relative; z-index: 2; height: 100%; min-height: clamp(480px, 52vw, 580px);
    display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; align-items: center;
    padding: 2.5rem 0 4rem;
}
.hero-pro-badges { display: flex; gap: .5rem; flex-wrap: wrap; margin-bottom: 1rem; }
.hero-badge { padding: .35rem .75rem; border-radius: 999px; font-size: .72rem; font-weight: 700; }
.hero-badge-hot { background: linear-gradient(135deg, #ff6b35, #f27a1a); color: #fff; }
.hero-badge-ship { background: rgba(255,255,255,.15); color: #fff; backdrop-filter: blur(4px); border: 1px solid rgba(255,255,255,.2); }
.hero-pro-eyebrow {
    display: inline-block; color: var(--primary); font-weight: 700; font-size: .85rem;
    text-transform: uppercase; letter-spacing: .08em; margin-bottom: .65rem;
}
.hero-pro-text h1 {
    font-size: clamp(1.85rem, 3.5vw, 3rem); line-height: 1.12; font-weight: 800;
    color: #fff; margin-bottom: .85rem;
}
.hero-pro-text h1 em { font-style: normal; color: #ffb347; }
.hero-pro-text > p { color: rgba(255,255,255,.82); font-size: 1.05rem; max-width: 460px; margin-bottom: 1.25rem; line-height: 1.6; }
.hero-pro-features { list-style: none; margin-bottom: 1.5rem; }
.hero-pro-features li { color: rgba(255,255,255,.75); font-size: .88rem; margin-bottom: .35rem; }
.hero-pro-actions { display: flex; gap: .75rem; flex-wrap: wrap; margin-bottom: 2rem; }
.btn-hero-ghost {
    background: rgba(255,255,255,.12); color: #fff; border: 2px solid rgba(255,255,255,.35);
    padding: .85rem 1.75rem; border-radius: var(--radius); font-weight: 700; font-size: 1rem;
    backdrop-filter: blur(4px); transition: .2s;
}
.btn-hero-ghost:hover { background: rgba(255,255,255,.22); border-color: #fff; }
.hero-pro-stats { display: flex; gap: 2rem; flex-wrap: wrap; }
.hero-pro-stats div strong { display: block; font-size: 1.5rem; color: #fff; font-weight: 800; }
.hero-pro-stats div span { font-size: .75rem; color: rgba(255,255,255,.55); text-transform: uppercase; letter-spacing: .04em; }

.hero-pro-showcase { position: relative; display: flex; justify-content: center; align-items: center; }
.hero-showcase-card {
    position: relative; z-index: 2; background: #fff; border-radius: 20px; padding: 1rem;
    box-shadow: 0 24px 64px rgba(0,0,0,.35); max-width: 380px; width: 100%;
    transform: perspective(800px) rotateY(-4deg); transition: transform .4s;
}
.hero-pro-slide.active .hero-showcase-card { transform: perspective(800px) rotateY(0deg); }
.hero-showcase-card img { width: 100%; aspect-ratio: 1; object-fit: contain; border-radius: 12px; background: #f8f8f8; }
.hero-showcase-label { padding: .85rem 0 .5rem; }
.showcase-tag { display: block; font-size: .7rem; color: var(--primary); font-weight: 700; text-transform: uppercase; letter-spacing: .05em; margin-bottom: .2rem; }
.hero-showcase-label strong { font-size: 1rem; color: var(--text); display: block; }
.showcase-cta { display: inline-block; margin-top: .5rem; color: var(--primary); font-weight: 700; font-size: .9rem; }
.showcase-cta:hover { text-decoration: underline; }
.hero-deco { position: absolute; border-radius: 50%; opacity: .4; }
.hero-deco-1 { width: 200px; height: 200px; background: var(--primary); top: -20px; right: -30px; filter: blur(60px); }
.hero-deco-2 { width: 150px; height: 150px; background: #764ba2; bottom: 20px; left: -20px; filter: blur(50px); }

.hero-pro-arrow {
    position: absolute; top: 45%; transform: translateY(-50%); z-index: 10;
    width: 48px; height: 48px; border-radius: 50%; border: none;
    background: rgba(255,255,255,.95); color: var(--text); font-size: 1.6rem;
    cursor: pointer; box-shadow: 0 4px 16px rgba(0,0,0,.2); transition: .2s;
}
.hero-pro-arrow:hover { background: var(--primary); color: #fff; }
.hero-pro-prev { left: 1.25rem; }
.hero-pro-next { right: 1.25rem; }
.hero-pro-thumbs {
    position: relative; z-index: 5; display: flex; gap: .65rem; overflow-x: auto;
    padding: .85rem 0 1.25rem; margin-top: -3.5rem;
}
.hero-thumb {
    flex-shrink: 0; display: flex; align-items: center; gap: .5rem;
    padding: .45rem .85rem .45rem .45rem; border-radius: 999px;
    background: rgba(255,255,255,.92); border: 2px solid transparent;
    cursor: pointer; font: inherit; font-size: .75rem; font-weight: 600;
    box-shadow: 0 2px 8px rgba(0,0,0,.12); transition: .2s;
}
.hero-thumb img { width: 36px; height: 36px; border-radius: 50%; object-fit: cover; }
.hero-thumb.active, .hero-thumb:hover { border-color: var(--primary); background: #fff; }

/* Promo strip */
.promo-strip { background: var(--surface); padding: 1rem 0; border-bottom: 1px solid var(--border); }
.promo-strip-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: .75rem; }
.promo-card {
    display: flex; align-items: center; gap: .75rem; padding: 1rem 1.1rem;
    border-radius: 12px; color: #fff; transition: transform .2s;
}
.promo-card:hover { transform: translateY(-2px); }
.promo-icon { font-size: 1.5rem; }
.promo-card strong { display: block; font-size: .85rem; }
.promo-card small { font-size: .72rem; opacity: .85; }
.promo-orange { background: linear-gradient(135deg, #f27a1a, #ff9a4d); }
.promo-purple { background: linear-gradient(135deg, #7c3aed, #a78bfa); }
.promo-blue { background: linear-gradient(135deg, #2563eb, #60a5fa); }
.promo-teal { background: linear-gradient(135deg, #0d9488, #2dd4bf); }

/* Kategori daireleri */
.home-categories { background: var(--surface); padding: 1.75rem 0; }
.home-categories-title { font-size: 1.1rem; font-weight: 700; margin-bottom: 1rem; color: var(--text); }
.category-circles { display: flex; gap: 1.25rem; overflow-x: auto; padding: .25rem 0; scrollbar-width: thin; }
.category-circle { flex-shrink: 0; display: flex; flex-direction: column; align-items: center; gap: .5rem; width: 80px; text-align: center; }
.category-circle-icon {
    width: 68px; height: 68px; border-radius: 50%; font-size: 1.4rem; font-weight: 800;
    display: flex; align-items: center; justify-content: center; color: #fff; transition: .2s;
    box-shadow: 0 4px 12px rgba(0,0,0,.12);
}
.category-circle:hover .category-circle-icon { transform: scale(1.08); }
.category-circle-name { font-size: .72rem; font-weight: 600; color: var(--text); line-height: 1.25; max-width: 76px; }
.cat-color-0 .category-circle-icon { background: linear-gradient(135deg, #f27a1a, #ff9a4d); }
.cat-color-1 .category-circle-icon { background: linear-gradient(135deg, #7c3aed, #a78bfa); }
.cat-color-2 .category-circle-icon { background: linear-gradient(135deg, #2563eb, #60a5fa); }
.cat-color-3 .category-circle-icon { background: linear-gradient(135deg, #0d9488, #2dd4bf); }
.cat-color-4 .category-circle-icon { background: linear-gradient(135deg, #db2777, #f472b6); }
.cat-color-5 .category-circle-icon { background: linear-gradient(135deg, #dc2626, #f87171); }

/* Bölüm temaları */
.home-section { padding: 1.75rem 0; }
.promo-orange { background: linear-gradient(135deg, #FF6B00, #FF9F43); }
.cat-color-0 .category-circle-icon { background: linear-gradient(135deg, #FF6B00, #FF9F43); }
.section-head-pro {
    display: flex; align-items: center; gap: 1rem; margin-bottom: 1.25rem;
    padding: 1rem 1.25rem; border-radius: 14px; color: #fff;
}
.section-head-icon { font-size: 1.75rem; line-height: 1; }
.section-head-pro h2 { font-size: 1.2rem; font-weight: 800; color: #fff; margin-bottom: .15rem; }
.section-head-pro p { font-size: .82rem; opacity: .85; color: #fff; }
.section-see-all {
    margin-left: auto; flex-shrink: 0; padding: .45rem 1rem; border-radius: 999px;
    background: rgba(255,255,255,.2); color: #fff; font-size: .8rem; font-weight: 700;
    backdrop-filter: blur(4px); border: 1px solid rgba(255,255,255,.25); white-space: nowrap;
}
.section-see-all:hover { background: rgba(255,255,255,.35); }

.section-theme-new { background: linear-gradient(180deg, #eff6ff 0%, var(--bg) 100%); }
.section-theme-new .section-head-pro { background: linear-gradient(135deg, #2563eb, #60a5fa); }
.section-theme-bestseller { background: linear-gradient(180deg, #faf5ff 0%, var(--bg) 100%); }
.section-theme-bestseller .section-head-pro { background: linear-gradient(135deg, #7c3aed, #a78bfa); }
.section-theme-deal { background: linear-gradient(180deg, #fff7ed 0%, var(--bg) 100%); }
.section-theme-deal .section-head-pro { background: linear-gradient(135deg, #ea580c, #f27a1a); }
.section-theme-cat-a { background: linear-gradient(180deg, #f0fdfa 0%, var(--bg) 100%); }
.section-theme-cat-a .section-head-pro { background: linear-gradient(135deg, #0d9488, #2dd4bf); }
.section-theme-cat-b { background: linear-gradient(180deg, #fdf2f8 0%, var(--bg) 100%); }
.section-theme-cat-b .section-head-pro { background: linear-gradient(135deg, #db2777, #f472b6); }
.section-theme-cat-c { background: linear-gradient(180deg, #fef2f2 0%, var(--bg) 100%); }
.section-theme-cat-c .section-head-pro { background: linear-gradient(135deg, #dc2626, #f87171); }
.section-theme-cat-d { background: linear-gradient(180deg, #f0fdf4 0%, var(--bg) 100%); }
.section-theme-cat-d .section-head-pro { background: linear-gradient(135deg, #16a34a, #4ade80); }

.trust-bar-pro { background: var(--accent); color: rgba(255,255,255,.8); padding: 1.25rem 0; }
.trust-bar-pro-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; text-align: center; font-size: .88rem; font-weight: 600; }

/* Eski hero gizle */
.hero-banner-slider, .hero-slider { display: none; }
.hero-banner { background: var(--primary-light); padding: 3rem 0 4rem; }

/* Sections */
.section { padding: 3rem 0; }
.section-alt { background: var(--surface); }
.section-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 1.5rem; }
.section-head h2 { font-size: 1.5rem; font-weight: 700; }
.section-head a { color: var(--primary); font-weight: 500; font-size: .9rem; }

/* Categories */
.category-scroll { display: flex; gap: .75rem; overflow-x: auto; padding-bottom: .5rem; scrollbar-width: thin; }
.category-pill { flex-shrink: 0; background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: .85rem 1.1rem; display: flex; flex-direction: column; gap: .15rem; transition: .2s; min-width: 120px; }
.category-pill:hover { border-color: var(--primary); background: var(--primary-light); }
.category-pill span { font-weight: 600; font-size: .9rem; }
.category-pill small { color: var(--muted); font-size: .75rem; }

/* Ürün grid — Trendyol tarzı */
.product-row, .product-grid, .ty-product-row, .hero-popular-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(185px, 1fr));
    gap: .75rem;
}

/* Ana sayfa: satırda 6 geniş kart (Trendyol mağaza vitrini) */
.ty-product-row--6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 1rem;
}
@media (max-width: 1400px) {
    .ty-product-row--6 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
}
@media (max-width: 1200px) {
    .ty-product-row--6 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
.ty-card-lg,
.ty-product-row--6 > .ty-card {
    border-radius: 10px;
    border-color: #ebebeb;
}
.ty-card-lg .ty-card-media,
.ty-product-row > .ty-card .ty-card-media,
.home-carousel-track--products .ty-card .ty-card-media {
    aspect-ratio: 4 / 5;
    min-height: 200px;
}
.ty-card-lg .ty-card-media img:not(.ty-stamp-bestseller):not(.ty-stamp-advantage),
.ty-product-row > .ty-card .ty-card-media img:not(.ty-stamp-bestseller):not(.ty-stamp-advantage),
.home-carousel-track--products .ty-card .ty-card-media img:not(.ty-stamp-bestseller):not(.ty-stamp-advantage) {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    padding: 0;
}
.ty-card-lg .ty-card-body,
.ty-product-row--6 > .ty-card .ty-card-body {
    padding: .75rem .85rem .9rem;
    gap: .4rem;
}
.ty-card-lg .ty-title,
.ty-product-row--6 > .ty-card .ty-title {
    font-size: .84rem;
    min-height: 2.4em;
}
.ty-card-lg .ty-price-normal,
.ty-card-lg .ty-price-sale,
.ty-product-row--6 > .ty-card .ty-price-normal,
.ty-product-row--6 > .ty-card .ty-price-sale {
    font-size: 1.12rem;
}
.ty-card-lg .ty-stamp-bestseller,
.ty-product-row--6 > .ty-card .ty-stamp-bestseller {
    width: 50px;
    height: 50px;
}
.ty-tag-fav-hidden { display: none !important; }

/* Trendyol kategori kartları */
.ty-cat-row {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
    gap: .85rem 1rem;
}
/* Ana sayfa kaydırmalı vitrin */
.home-carousel {
    position: relative;
    padding: 0 2.5rem;
}
.home-carousel-viewport {
    overflow-x: auto;
    overflow-y: hidden;
    scroll-behavior: smooth;
    scrollbar-width: none;
    -ms-overflow-style: none;
}
.home-carousel-viewport::-webkit-scrollbar {
    display: none;
    width: 0;
    height: 0;
}
.home-carousel-track {
    display: flex;
    gap: 1.15rem;
    padding: .5rem 0;
    width: max-content;
}
.home-carousel-track--cats .ty-cat-card {
    flex: 0 0 auto;
}
.home-carousel-track--cats .ty-cat-card--image-only {
    flex: 0 0 160px;
}
.home-carousel-track--brands .ty-brand-card,
.home-carousel-track--brands .ty-see-all-card--brands {
    flex: 0 0 118px;
}
.home-carousel-track--products {
    gap: .65rem;
    padding: 0 0 .25rem;
}
.home-carousel-track--products .ty-card {
    flex: 0 0 172px;
    max-width: 172px;
}
.products-highlight-band .home-carousel {
    padding: 0 2rem;
}
.home-carousel-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    border: none;
    border-radius: 0;
    background: transparent;
    color: #FF6B00;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    padding: 0;
    transition: opacity .2s, transform .2s;
    user-select: none;
}
.home-carousel-chevron {
    display: block;
    width: .85rem;
    height: .85rem;
    border-top: 3px solid #FF6B00;
    border-right: 3px solid #FF6B00;
    filter: drop-shadow(0 1px 4px rgba(0,0,0,.12));
}
.home-carousel-prev { left: 0; }
.home-carousel-next { right: 0; }
.home-carousel-prev .home-carousel-chevron { transform: rotate(-135deg); margin-left: .2rem; }
.home-carousel-next .home-carousel-chevron { transform: rotate(45deg); margin-right: .2rem; }
.home-carousel-nav:hover { opacity: .75; transform: translateY(-50%) scale(1.08); }
.home-carousel-prev:hover .home-carousel-chevron { transform: rotate(-135deg) scale(1.05); }
.home-carousel-next:hover .home-carousel-chevron { transform: rotate(45deg) scale(1.05); }
.ty-cat-card {
    display: flex; flex-direction: column; align-items: center; text-align: center; gap: .45rem;
    transition: .2s;
}
.ty-cat-card:hover { transform: translateY(-2px); }
.ty-cat-card:hover .ty-cat-card-media { border-color: var(--primary); box-shadow: 0 4px 12px rgba(255,107,0,.15); }
.ty-cat-card-media {
    width: 88px; height: 88px; border-radius: 12px;
    background: #fff; border: 1px solid #e6e6e6;
    overflow: hidden; display: flex; align-items: center; justify-content: center;
    transition: .2s;
}
.ty-cat-card-media img { width: 100%; height: 100%; object-fit: cover; }
.ty-cat-card-letter {
    font-size: 1.75rem; font-weight: 800; color: var(--primary);
    background: var(--primary-light); width: 100%; height: 100%;
    display: flex; align-items: center; justify-content: center;
}
.ty-cat-card-name {
    font-size: .72rem; font-weight: 600; color: #333; line-height: 1.25;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
    max-width: 96px;
}
.ty-cat-card--image-only {
    gap: 0;
    width: 160px;
}
.ty-cat-card--image-only .ty-cat-card-frame {
    width: 160px;
    border: 1px solid #ecdcc8;
    border-radius: 14px;
    overflow: hidden;
    background: #fff;
    display: flex;
    flex-direction: column;
    transition: border-color .2s, box-shadow .2s;
}
.ty-cat-card--image-only:hover .ty-cat-card-frame {
    border-color: var(--primary);
    box-shadow: 0 6px 18px rgba(255, 107, 0, .15);
}
.ty-cat-card--image-only .ty-cat-card-media {
    width: 100%;
    height: 118px;
    border: none;
    border-radius: 0;
    background: #f8f4ee;
}
.ty-cat-card--image-only .ty-cat-card-media img {
    object-fit: cover;
}
.ty-cat-card--image-only .ty-cat-card-caption {
    flex-shrink: 0;
    min-height: 42px;
    padding: .38rem .45rem;
    background: rgba(255, 255, 255, 0.82);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    border-top: 1px solid rgba(236, 220, 200, 0.55);
    box-sizing: border-box;
}
.ty-cat-card--image-only .ty-cat-card-name {
    max-width: 100%;
    width: 100%;
    margin: 0;
    font-size: .64rem;
    line-height: 1.2;
    font-weight: 600;
    color: #333;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    word-break: break-word;
    text-overflow: ellipsis;
}
.ty-brand-card--image-only {
    padding: .5rem;
    justify-content: center;
}
.ty-brand-card--image-only .ty-brand-card-logo {
    width: 72px;
    height: 72px;
}
.ty-see-all-card {
    flex: 0 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    text-align: center;
    background: #fff;
    border: 1px dashed #ecdcc8;
    color: var(--primary);
    transition: .2s;
    text-decoration: none;
}
.ty-see-all-card:hover {
    border-color: var(--primary);
    background: var(--primary-light);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(255, 107, 0, .12);
}
.ty-see-all-card--cats {
    width: 160px;
    min-height: 160px;
    border-radius: 14px;
}
.ty-see-all-card--brands {
    width: 118px;
    min-height: 88px;
    border-radius: 8px;
}
.ty-see-all-icon {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: var(--primary-light);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .9rem;
}
.ty-see-all-label {
    font-size: .68rem;
    font-weight: 700;
    line-height: 1.25;
    max-width: 72px;
}
.theme-section--vitrin {
    padding-top: 1.15rem;
    padding-bottom: .75rem;
}
.theme-section--vitrin .theme-section-head {
    display: none;
}

/* Ana sayfa kategori kısayolları */
.home-category-shortcuts {
    display: grid;
    grid-template-columns: repeat(var(--shortcut-cols, 3), minmax(0, 1fr));
    gap: .85rem;
}
.home-category-shortcut {
    display: flex;
    flex-direction: column;
    gap: .5rem;
    color: inherit;
    text-decoration: none;
    transition: transform .2s;
}
.home-category-shortcut:hover { transform: translateY(-2px); }
.home-category-shortcut-media {
    aspect-ratio: 4 / 3;
    border-radius: 10px;
    overflow: hidden;
    background: linear-gradient(135deg, #f3f4f6, #e5e7eb);
    border: 1px solid #e6e6e6;
}
.home-category-shortcut-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.home-category-shortcut-placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    font-weight: 800;
    color: var(--primary, #f27a1a);
}
.home-category-shortcut-label {
    font-size: .82rem;
    font-weight: 700;
    text-align: center;
    line-height: 1.3;
}

/* Ana sayfa reklam alanları */
.home-banner-wide {
    display: block;
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid #e6e6e6;
}
.home-banner-wide img {
    width: 100%;
    height: auto;
    display: block;
    max-height: 280px;
    object-fit: cover;
}
.home-banner-wide-title {
    position: absolute;
    left: 1rem;
    bottom: 1rem;
    background: rgba(0,0,0,.55);
    color: #fff;
    padding: .35rem .75rem;
    border-radius: 6px;
    font-size: .85rem;
    font-weight: 700;
}
.home-banner-triple {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .85rem;
}
.home-banner-triple--cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}
.home-banner-triple-controls,
.home-banner-triple-dots,
.home-banner-triple-edge {
    display: none;
}
.home-banner-triple-frame--card .home-banner-ad-card {
    padding: 0;
    background: transparent;
    box-shadow: none;
    border: none;
}
.home-banner-triple-frame--card .home-banner-triple-carousel {
    display: block;
}
.home-banner-triple-frame--card .home-banner-triple-nav,
.home-banner-triple-frame--card .home-banner-triple-dots {
    display: none;
}
.home-banner-triple-frame--card .home-banner-triple-scroll {
    overflow: visible;
}
@media (min-width: 901px) {
    .home-banner-triple--mobile-slide {
        display: grid !important;
        width: 100% !important;
        min-width: 0 !important;
    }
    .home-banner-triple--mobile-slide .home-banner-tile {
        width: auto !important;
        flex: unset !important;
        max-width: none !important;
        aspect-ratio: auto;
    }
    .home-banner-triple--mobile-slide .home-banner-tile img {
        width: 100%;
        aspect-ratio: 16 / 10;
        height: auto;
        object-fit: cover;
    }
}
.home-banner-tile {
    display: block;
    position: relative;
    border-radius: 10px;
    overflow: hidden;
    border: 1px solid #e6e6e6;
    background: #f8fafc;
}
.home-banner-tile img {
    width: 100%;
    aspect-ratio: 16 / 10;
    object-fit: cover;
    display: block;
}
.home-banner-tile-title {
    position: absolute;
    left: .65rem;
    bottom: .65rem;
    background: rgba(0,0,0,.5);
    color: #fff;
    padding: .25rem .55rem;
    border-radius: 5px;
    font-size: .72rem;
    font-weight: 700;
}
@media (max-width: 768px) {
    .home-category-shortcuts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Ürünler sayfası — daha fazla göster */
.products-load-more-wrap {
    text-align: center;
    padding: 1.5rem 0 2.5rem;
}
.products-load-more-wrap .btn-load-more {
    min-width: 220px;
}
.products-load-more-wrap .products-load-meta {
    margin-top: .65rem;
    font-size: .82rem;
    color: #6b7280;
}
.products-load-more-wrap.is-loading .btn-load-more {
    opacity: .65;
    pointer-events: none;
}

/* Trendyol marka kartları */
.ty-brand-row {
    display: flex; gap: .65rem; overflow-x: auto; padding-bottom: .35rem;
    scroll-snap-type: x mandatory; scrollbar-width: none;
    -ms-overflow-style: none;
}
.ty-brand-row::-webkit-scrollbar { display: none; }
.ty-brand-card {
    flex: 0 0 118px; scroll-snap-align: start;
    background: #fff; border: 1px solid #e6e6e6; border-radius: 8px;
    padding: .75rem .5rem; text-align: center;
    display: flex; flex-direction: column; align-items: center; gap: .35rem;
    transition: .2s;
}
.ty-brand-card:hover {
    border-color: var(--primary);
    box-shadow: 0 4px 12px rgba(0,0,0,.08);
}
.ty-brand-card-logo {
    width: 56px; height: 56px; border-radius: 8px;
    background: #fafafa; border: 1px solid #f0f0f0;
    display: flex; align-items: center; justify-content: center; overflow: hidden;
}
.ty-brand-card-logo img { width: 100%; height: 100%; object-fit: contain; padding: 4px; }
.ty-brand-card-logo span { font-size: .85rem; font-weight: 800; color: var(--primary); }
.ty-brand-card-name {
    font-size: .68rem; font-weight: 700; color: #333; line-height: 1.25;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.ty-brand-card small { font-size: .6rem; color: #999; font-weight: 600; }
.ty-card {
    background: #fff; border: 1px solid #e6e6e6; border-radius: 8px;
    overflow: hidden; transition: box-shadow .2s, transform .2s; height: 100%;
    display: flex; flex-direction: column;
}
.ty-card:hover { box-shadow: 0 4px 16px rgba(0,0,0,.12); transform: translateY(-2px); }
.ty-card-link { display: flex; flex-direction: column; flex: 1; min-height: 0; color: inherit; }
.ty-card-media {
    position: relative; aspect-ratio: 1; background: #fff;
    overflow: hidden; border-bottom: 1px solid #f0f0f0;
}
.ty-card-media img:not(.ty-stamp-bestseller):not(.ty-stamp-advantage) {
    width: 100%; height: 100%; object-fit: contain; padding: .5rem;
    transition: transform .35s ease;
}
.ty-card:hover .ty-card-media img:not(.ty-stamp-bestseller):not(.ty-stamp-advantage) { transform: scale(1.03); }
.ty-stamp {
    position: absolute; z-index: 2;
    display: flex; align-items: center; justify-content: center;
    text-align: center; font-weight: 800; line-height: 1.15; border-radius: 50%;
}
.ty-stamp-bestseller {
    display: block;
    top: 6px; left: 6px; width: 50px; height: 50px; max-width: 50px; max-height: 50px;
    flex: none; border-radius: 0; background: none; color: inherit;
    box-shadow: none; object-fit: contain; pointer-events: none;
}
.ty-stamp-advantage {
    display: block;
    bottom: 8px; left: 6px; top: auto;
    width: 50px; height: 50px; max-width: 50px; max-height: 50px;
    flex: none; border-radius: 0; background: none;
    box-shadow: none; object-fit: contain; pointer-events: none;
}
.ty-fav {
    position: absolute; top: 8px; right: 8px; z-index: 3;
    width: 32px; height: 32px; border-radius: 50%;
    background: #fff; border: 1px solid #e6e6e6;
    display: flex; align-items: center; justify-content: center;
    cursor: pointer; color: #999; box-shadow: 0 1px 4px rgba(0,0,0,.08); transition: .15s;
}
.ty-fav:hover, .ty-fav.active { color: var(--primary); border-color: var(--primary); }
.ty-fav.active svg { fill: var(--primary); stroke: var(--primary); }
.ty-stamp-installment {
    left: 8px; width: 58px; height: 58px;
    background: #fff; color: #2563eb; font-size: .48rem;
    border: 2px solid #2563eb; box-shadow: 0 2px 6px rgba(0,0,0,.1);
}
.ty-stamp-goodprice {
    left: 8px; width: 50px; height: 50px;
    background: linear-gradient(135deg, #7c3aed, #fbbf24);
    color: #fff; font-size: .55rem; box-shadow: 0 2px 6px rgba(0,0,0,.15);
}
.ty-stamp-installment,
.ty-stamp-advantage { bottom: 8px; }
.ty-card-media:has(.ty-rank-bar) .ty-stamp-installment,
.ty-card-media:has(.ty-rank-bar) .ty-stamp-advantage { bottom: 36px; }
.ty-rank-bar {
    position: absolute; bottom: 0; left: 0; right: 0; z-index: 2;
    background: var(--primary); color: #fff; font-size: .65rem; font-weight: 700;
    padding: .3rem .5rem; display: flex; align-items: center; gap: .3rem;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.ty-rank-icon { font-size: .75rem; flex-shrink: 0; }
.ty-card-body {
    padding: .65rem .75rem .75rem; display: flex; flex-direction: column;
    gap: .35rem; flex: 1;
}
.ty-title {
    font-size: .78rem; line-height: 1.4; color: #333;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
    overflow: hidden; min-height: 2.2em;
}
.ty-title strong { font-weight: 700; color: #1a1a1a; }
.ty-tag { display: flex; align-items: center; gap: .3rem; font-size: .68rem; line-height: 1.2; }
.ty-tag-ship { color: #0bc15c; font-weight: 600; }
.ty-tag-ship svg { flex-shrink: 0; stroke: #0bc15c; }
.ty-tag-fav { color: #666; }
.ty-tag-fav svg { color: var(--primary); flex-shrink: 0; }
.ty-tag-fav strong { color: var(--primary); font-weight: 700; }
.ty-rating-row {
    display: flex; align-items: center; gap: .25rem; flex-wrap: wrap; margin-top: .1rem;
}
.ty-rating-num { font-size: .75rem; font-weight: 700; color: #333; }
.ty-rating-row .stars { display: inline-flex; }
.ty-rating-row .star { font-size: .65rem; }
.ty-review-count { font-size: .68rem; color: #999; }
.ty-price-zone { margin-top: auto; padding-top: .35rem; }
.ty-card-footer {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: .45rem;
    padding: 0 .7rem .7rem;
    position: relative;
    z-index: 3;
}
.ty-card--quick .ty-card-body { padding-bottom: .45rem; }
.ty-price-zone--footer {
    margin-top: 0;
    padding-top: 0;
    flex: 1;
    min-width: 0;
}
.ty-price-zone--footer .ty-lowest-label { margin-bottom: .1rem; }
.ty-price-zone--footer .ty-price-normal,
.ty-price-zone--footer .ty-price-sale { font-size: .95rem; line-height: 1.2; }
.ty-price-zone--footer .ty-price-was { font-size: .68rem; }
.ty-price-zone--footer .ty-pct-badge { font-size: .58rem; }
.ty-card-quick-actions {
    display: flex;
    align-items: center;
    gap: .35rem;
    flex-shrink: 0;
}
.ty-card-quick-form { margin: 0; }
.ty-card-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .25rem;
    border: none;
    border-radius: 7px;
    cursor: pointer;
    text-decoration: none;
    transition: transform .15s ease, box-shadow .15s ease, opacity .15s ease;
    font-family: inherit;
    line-height: 1;
}
.ty-card-btn:hover { transform: translateY(-1px); box-shadow: 0 3px 10px rgba(0,0,0,.12); }
.ty-card-btn:active { transform: translateY(0); }
.ty-card-btn:disabled { opacity: .45; cursor: not-allowed; transform: none; box-shadow: none; }
.ty-card-btn-buy {
    width: 34px;
    height: 34px;
    padding: 0;
    background: #b8956b;
    color: #fff;
}
.ty-card-btn-buy svg { flex-shrink: 0; color: #fff; }
.ty-card-btn-cart {
    width: 34px;
    height: 34px;
    background: var(--primary);
    color: #fff;
    padding: 0;
}
.ty-card-btn-cart svg { flex-shrink: 0; }
.ty-card-btn-label { display: none; }
.ty-card-btn.is-loading { pointer-events: none; opacity: .7; }
.ty-cart-toast {
    position: fixed;
    left: 50%;
    bottom: 1.5rem;
    transform: translate(-50%, 120%);
    z-index: 9999;
    background: #1f2937;
    color: #fff;
    padding: .7rem 1.1rem;
    border-radius: 10px;
    font-size: .88rem;
    font-weight: 600;
    box-shadow: 0 8px 24px rgba(0,0,0,.2);
    transition: transform .25s ease, opacity .25s ease;
    opacity: 0;
    pointer-events: none;
}
.ty-cart-toast.is-visible { transform: translate(-50%, 0); opacity: 1; }
.ty-cart-toast.is-error { background: #b91c1c; }

body.cart-modal-open { overflow: hidden; }
.cart-added-modal {
    position: fixed;
    inset: 0;
    z-index: 12000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.25rem;
}
.cart-added-modal[hidden] { display: none !important; }
.cart-added-modal__overlay {
    position: absolute;
    inset: 0;
    background: rgba(15, 23, 42, .62);
    backdrop-filter: blur(4px);
}
.cart-added-modal__panel {
    position: relative;
    z-index: 1;
    width: min(100%, 420px);
    background: #fff;
    border-radius: 20px;
    padding: 2rem 1.5rem 1.25rem;
    text-align: center;
    box-shadow: 0 24px 64px rgba(0, 0, 0, .28);
    animation: cartModalIn .28s ease;
}
@keyframes cartModalIn {
    from { opacity: 0; transform: translateY(16px) scale(.98); }
    to { opacity: 1; transform: none; }
}
.cart-added-modal__icon {
    width: 72px;
    height: 72px;
    margin: 0 auto 1rem;
    border-radius: 50%;
    background: #ecfdf3;
    color: #16a34a;
    display: flex;
    align-items: center;
    justify-content: center;
}
.cart-added-modal.is-error .cart-added-modal__icon {
    background: #fef2f2;
    color: #dc2626;
}
.cart-added-modal__title {
    margin: 0 0 .5rem;
    font-size: 1.35rem;
    font-weight: 800;
    color: #1f2937;
}
.cart-added-modal__message {
    margin: 0 0 1.25rem;
    font-size: .95rem;
    line-height: 1.55;
    color: #6b7280;
}
.cart-added-modal__actions {
    display: flex;
    flex-direction: column;
    gap: .65rem;
    margin-bottom: 1rem;
}
.cart-added-modal__close {
    display: block;
    width: 100%;
    border: none;
    background: transparent;
    color: #6b7280;
    font-size: .9rem;
    font-weight: 600;
    padding: .55rem;
    cursor: pointer;
}
.cart-added-modal__close:hover { color: #111827; }

.products-merch-rail {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 0;
    width: 100%;
    margin: 1rem 0 1.25rem;
    background: #fff4ea;
    border: 1px solid #ffd8b8;
    border-radius: 0;
    overflow: hidden;
}
.products-merch-rail__label {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: .75rem .35rem;
    background: #ffe8d2;
    border-right: 1px solid #ffd8b8;
}
.products-merch-rail__label span {
    writing-mode: vertical-rl;
    transform: rotate(180deg);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: #c45f0e;
    white-space: nowrap;
}
.products-merch-rail__body {
    min-width: 0;
    padding: .75rem .85rem;
    display: flex;
    flex-direction: column;
    gap: .5rem;
}
.products-merch-rail__subtitle {
    margin: 0 0 .45rem;
    font-size: .75rem;
    color: #9a5b28;
}
.merch-rail-product {
    display: flex;
    align-items: stretch;
    gap: .85rem;
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    scroll-snap-align: start;
    scroll-snap-stop: always;
    box-sizing: border-box;
    background: #fff;
    border: 1px solid #f3dcc8;
    padding: .75rem;
}
.merch-rail-product__thumb {
    flex: 0 0 96px;
    width: 96px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border: 1px solid #f0e6d8;
    text-decoration: none;
}
.merch-rail-product__thumb img {
    width: 100%;
    height: 96px;
    object-fit: contain;
    display: block;
}
.merch-rail-product__body {
    min-width: 0;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: .35rem;
}
.merch-rail-product__title {
    font-size: .88rem;
    font-weight: 700;
    line-height: 1.35;
    color: #4a3d32;
    text-decoration: none;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.merch-rail-product__title:hover { color: var(--primary); }
.merch-rail-product__desc {
    margin: 0;
    font-size: .78rem;
    line-height: 1.45;
    color: #7a6a5c;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    flex: 1;
}
.merch-rail-product__foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .65rem;
    margin-top: auto;
    flex-wrap: wrap;
}
.merch-rail-product__price {
    font-size: .95rem;
    font-weight: 800;
    color: var(--primary);
}
.merch-rail-product__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: .45rem .85rem;
    font: inherit;
    font-size: .75rem;
    font-weight: 700;
    color: #fff;
    background: var(--primary, #f27a1a);
    border: none;
    border-radius: 8px;
    cursor: pointer;
    white-space: nowrap;
}
.merch-rail-product__btn:hover { background: #e06c12; }
.merch-rail-product__btn.is-loading { opacity: .7; pointer-events: none; }
.products-merch-rail__carousel {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: stretch;
    gap: 0;
}
.products-merch-rail[data-merch-rail-carousel] .products-merch-rail__carousel {
    grid-template-columns: 1.35rem minmax(0, 1fr) 1.35rem;
    align-items: center;
}
.products-merch-rail__scroll {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    -ms-overflow-style: none;
    min-width: 0;
}
.products-merch-rail__scroll::-webkit-scrollbar { display: none; }
.products-merch-rail__track {
    display: flex;
    width: 100%;
}
.products-merch-rail__nav {
    display: none;
    align-items: center;
    justify-content: center;
    width: 1.35rem;
    padding: 0;
    border: none;
    background: transparent;
    color: #e65100;
    font-size: .72rem;
    cursor: pointer;
    flex-shrink: 0;
}
.products-merch-rail[data-merch-rail-carousel] .products-merch-rail__nav {
    display: inline-flex;
}
.products-merch-rail__nav:disabled {
    opacity: .35;
    cursor: default;
}
.products-merch-rail__dots {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    margin-top: .15rem;
}
.products-merch-rail__dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #f0c9a8;
    transition: background .2s, transform .2s;
}
.products-merch-rail__dot.is-active {
    background: #e65100;
    transform: scale(1.15);
}
.products-merch-rail__all {
    display: inline-flex;
    align-items: center;
    gap: .25rem;
    margin-top: .5rem;
    font-size: .75rem;
    font-weight: 700;
    color: #e65100;
    text-decoration: none;
}
.products-merch-rail--bestseller .products-merch-rail__label { background: #ffe0c8; }
.products-merch-rail--deal .products-merch-rail__label { background: #ffecd9; }
.products-inline-blocks-wrap--rails {
    margin-left: calc(-1 * var(--page-pad, 1rem));
    margin-right: calc(-1 * var(--page-pad, 1rem));
    width: calc(100% + (var(--page-pad, 1rem) * 2));
    max-width: none;
}
.products-load-sentinel {
    width: 100%;
    height: 1px;
    margin: 0;
    pointer-events: none;
}
.ty-price-normal { font-size: 1.05rem; font-weight: 800; color: var(--primary); }
.ty-lowest-label {
    display: flex; align-items: center; gap: .2rem;
    font-size: .62rem; font-weight: 700; color: #e42528; margin-bottom: .2rem;
}
.ty-price-discount-row { display: flex; align-items: baseline; gap: .4rem; flex-wrap: wrap; }
.ty-pct-badge {
    background: #e42528; color: #fff; font-size: .65rem; font-weight: 800;
    padding: .15rem .35rem; border-radius: 3px;
}
.ty-price-sale { font-size: 1.05rem; font-weight: 800; color: #e42528; }
.ty-price-was { font-size: .75rem; color: #999; text-decoration: line-through; }

.stars { display: inline-flex; gap: .05rem; line-height: 1; }
.star { font-size: .75rem; }
.star-full { color: #ffc107; }
.star-half { color: #ffc107; opacity: .55; }
.star-empty { color: #ddd; }
.rating-score { font-size: .78rem; font-weight: 700; color: var(--text); }
.rating-count { font-size: .72rem; color: var(--muted); }
.product-rating-lg { margin: .5rem 0 .75rem; }
.product-rating-lg .star { font-size: 1rem; }
.product-rating-lg .rating-score { font-size: .95rem; }
.product-rating-lg .rating-count { font-size: .85rem; }
.price-current.lg { font-size: 1.75rem; font-weight: 800; color: var(--primary); }
.price-old { text-decoration: line-through; color: var(--muted); font-size: .85rem; }
.price-old.lg { font-size: 1.1rem; }
.discount-badge.lg { position: static; display: inline-block; margin-right: .5rem; background: #e42528; color: #fff; font-size: .7rem; font-weight: 800; padding: .2rem .45rem; border-radius: 4px; }
.stock-ok { font-size: .75rem; color: #0bc15c; font-weight: 600; }
.stock-no { font-size: .75rem; color: #dc2626; }

/* Shop layout */
.page-title-bar { background: var(--surface); border-bottom: 1px solid var(--border); padding: 1.5rem 0; margin-bottom: 2rem; }
.page-title-bar h1 { font-size: 1.75rem; }
.page-title-bar p { color: var(--muted); font-size: .9rem; }
.shop-layout { display: grid; grid-template-columns: 240px 1fr; gap: 2rem; padding-bottom: 3rem; }
.shop-sidebar { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: 1.25rem; height: fit-content; position: sticky; top: 90px; }
.shop-sidebar h3 { font-size: .9rem; text-transform: uppercase; letter-spacing: .05em; margin-bottom: 1rem; color: var(--muted); }
.cat-list { list-style: none; }
.cat-list a { display: flex; padding: .5rem .65rem; border-radius: 8px; font-size: .9rem; color: var(--text); flex: 1; min-width: 0; }
.cat-list a:hover, .cat-list a.active { background: var(--primary-light); color: var(--primary-dark); font-weight: 600; }
.cat-row { display: flex; align-items: stretch; gap: .15rem; }
.cat-toggle {
    flex-shrink: 0; width: 1.75rem; border: none; background: transparent; cursor: pointer;
    color: var(--muted); font-size: .7rem; border-radius: 6px; padding: 0;
}
.cat-toggle::before { content: '▸'; display: block; transition: transform .15s ease; }
.cat-parent.is-open > .cat-row .cat-toggle::before { transform: rotate(90deg); }
.cat-toggle:hover { background: var(--primary-light); color: var(--primary-dark); }
.cat-children { list-style: none; margin: 0; padding: 0 0 0 .5rem; display: none; }
.cat-parent.is-open > .cat-children { display: block; }
.pagination { display: flex; gap: .5rem; justify-content: center; margin-top: 2rem; flex-wrap: wrap; }
.pagination a, .pagination span { padding: .5rem .85rem; border: 1px solid var(--border); border-radius: 8px; font-size: .9rem; }
.pagination a.active { background: var(--primary); color: #fff; border-color: var(--primary); }
.empty-state { text-align: center; padding: 4rem 2rem; background: var(--surface); border-radius: var(--radius); border: 1px solid var(--border); }

/* Product detail */
.product-detail-page { padding: 1.5rem 0 4rem; }
.breadcrumb { font-size: .85rem; color: var(--muted); margin-bottom: 1.5rem; }
.breadcrumb a:hover { color: var(--primary); }
.product-detail { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; align-items: start; }
.gallery-main { background: #fff; border: 1px solid var(--border); border-radius: var(--radius); aspect-ratio: 1; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.gallery-main img { max-height: 100%; object-fit: contain; }
.gallery-thumbs { display: flex; gap: .5rem; margin-top: .75rem; flex-wrap: wrap; }
.gallery-thumbs button { border: 2px solid var(--border); border-radius: 8px; padding: 0; width: 64px; height: 64px; overflow: hidden; cursor: pointer; background: #fff; }
.gallery-thumbs button:hover { border-color: var(--primary); }
.gallery-thumbs img { width: 100%; height: 100%; object-fit: cover; }
.product-brand { font-size: .85rem; color: var(--primary); font-weight: 600; text-transform: uppercase; letter-spacing: .05em; }
.product-info h1 { font-size: 1.75rem; line-height: 1.25; margin: .5rem 0; }
.sku-line { font-size: .85rem; color: var(--muted); }
.price-block { margin: 1.25rem 0; display: flex; align-items: center; flex-wrap: wrap; gap: .5rem; }
.stock-line { font-weight: 500; margin-bottom: .5rem; }
.stock-line.in { color: #16a34a; }
.stock-line.out { color: #dc2626; }
.source-line { font-size: .85rem; color: var(--muted); margin-bottom: 1.25rem; }
.buy-form { margin-bottom: 2rem; }
.buy-actions { display: grid; gap: .75rem; margin-bottom: 2rem; }
.buy-actions .buy-form { margin-bottom: 0; }
.product-variants { margin: 1rem 0 1.25rem; display: grid; gap: 1rem; }
.variant-group { display: grid; gap: .5rem; }
.variant-label { font-size: .82rem; font-weight: 700; color: var(--text); }
.variant-options { display: flex; flex-wrap: wrap; gap: .45rem; }
.variant-chip {
    display: inline-flex; align-items: center; justify-content: center; gap: .35rem;
    min-height: 36px; padding: .35rem .7rem; border: 1px solid var(--border); border-radius: 8px;
    background: #fff; color: var(--text); font-size: .82rem; font-weight: 600; cursor: pointer;
    text-decoration: none; transition: .15s;
}
.variant-chip--color { padding: .25rem .55rem; }
.variant-chip--color img { width: 28px; height: 28px; border-radius: 50%; object-fit: cover; }
.variant-chip.is-active { border-color: var(--primary); color: var(--primary); box-shadow: 0 0 0 1px var(--primary); }
.variant-chip.is-disabled { opacity: .45; cursor: not-allowed; pointer-events: none; }
.variant-chip--size.is-active { background: var(--primary-light); }
.product-variant-color-label { font-size: .9rem; color: var(--muted); margin: -.25rem 0 .75rem; }
.cart-variant { display: block; font-size: .78rem; color: var(--muted); margin-top: .15rem; }
.buy-form--now .btn-primary { background: linear-gradient(135deg, #ff6b00, #e85d04); }
.buy-now-hint { font-size: .75rem; color: var(--muted); text-align: center; margin: .35rem 0 0; }
.related-products .section-sub { color: var(--muted); font-size: .9rem; margin: -.5rem 0 1.25rem; }

.cart-main-col { display: flex; flex-direction: column; gap: 1.25rem; min-width: 0; }

.cart-recos {
    background: linear-gradient(160deg, #faf7f2 0%, #f6f1e8 45%, #f2ebe2 100%);
    border: 1px solid #e8dece;
    border-radius: 14px;
    padding: 1.15rem 1.25rem;
    box-shadow: 0 2px 10px rgba(92, 64, 35, 0.04);
}
.cart-recos-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}
.cart-recos-title { margin: 0; font-size: 1.05rem; color: #5c4a3a; }
.cart-recos-sub { margin: .25rem 0 0; font-size: .8rem; color: #8a7562; }
.cart-recos-arrows { display: flex; gap: .4rem; flex-shrink: 0; }
.cart-recos-arrow {
    width: 36px;
    height: 36px;
    border: 1px solid #ddd2c2;
    border-radius: 50%;
    background: #fffdf9;
    color: #6b5748;
    font-size: 1.35rem;
    line-height: 1;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background .15s, border-color .15s;
}
.cart-recos-arrow:hover { background: #fff; border-color: #c9b896; color: var(--primary); }
.cart-recos-viewport {
    overflow-x: auto;
    scroll-behavior: smooth;
    scrollbar-width: none;
    -ms-overflow-style: none;
    margin: 0 -.25rem;
    padding: .15rem .25rem .35rem;
}
.cart-recos-viewport::-webkit-scrollbar { display: none; }
.cart-recos-track { display: flex; gap: .75rem; width: max-content; }
.cross-sell-item {
    flex: 0 0 172px;
    max-width: 172px;
    display: flex;
    gap: .55rem;
    background: #fffdfb;
    border: 1px solid #ebe2d4;
    border-radius: 10px;
    padding: .6rem;
    box-shadow: 0 1px 3px rgba(74, 55, 40, 0.04);
}
.cross-sell-thumb { flex-shrink: 0; }
.cross-sell-thumb img { width: 52px; height: 52px; object-fit: contain; border-radius: 8px; background: #fff; }
.cross-sell-body { min-width: 0; flex: 1; display: flex; flex-direction: column; gap: .2rem; align-items: stretch; }
.cross-sell-title { font-size: .72rem; font-weight: 600; line-height: 1.25; color: #4a3d32; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; text-decoration: none; }
.cross-sell-title:hover { color: var(--primary); }
.cross-sell-price { font-size: .78rem; font-weight: 700; color: var(--primary); }
.cross-sell-add { margin-top: auto; }
.cross-sell-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: .3rem .45rem;
    font: inherit;
    font-size: .65rem;
    font-weight: 600;
    line-height: 1.2;
    color: #5c4a3a;
    background: #fff;
    border: 1px solid #e0d4c4;
    border-radius: 7px;
    cursor: pointer;
    white-space: nowrap;
    transition: border-color .15s, color .15s;
}
.cross-sell-btn:hover {
    border-color: var(--primary);
    color: var(--primary);
}
.payment-methods-hint { font-size: .8rem; color: var(--muted); text-align: center; margin: .75rem 0 0; }

.qty-row { margin-bottom: 1rem; }
.qty-row label { display: block; font-size: .85rem; margin-bottom: .35rem; }
.prose { font-size: .95rem; color: #374151; line-height: 1.7; max-height: 400px; overflow-y: auto; padding: 1rem; background: var(--bg); border-radius: var(--radius); }
.related-products { margin-top: 4rem; }
.related-products h2 { margin-bottom: 1.5rem; }
.related-products--full {
    margin-top: 2.5rem;
    padding-top: 2rem;
    border-top: 1px solid #ecdcc8;
    width: 100%;
}
.related-products--full h2 {
    font-size: clamp(1.15rem, 2vw, 1.45rem);
    margin-bottom: .35rem;
}
.related-products--full .section-sub { margin-bottom: 1.25rem; }
.product-page-wide .related-products--full .ty-product-row--6 {
    width: 100%;
}

.pdp-product-recommendations {
    --pdp-reco-cols: 6;
    --pdp-reco-rows: 4;
    --pdp-reco-row-height: clamp(248px, 21vw, 292px);
    --pdp-browse-card-height: clamp(300px, 26vw, 340px);
    margin-top: 2.5rem;
    padding-top: 2rem;
    border-top: 1px solid #ecdcc8;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.pdp-product-section {
    display: flex;
    flex-direction: column;
}

.pdp-product-section--browse,
.pdp-product-section--similar {
    background: #fff;
    border: 1px solid #ebebeb;
    border-radius: 14px;
    padding: 1.25rem 1rem 1.35rem;
    box-shadow: 0 1px 4px rgba(15, 23, 42, .04);
}

.pdp-product-section + .pdp-product-section {
    margin-top: 0;
    padding-top: 0;
    border-top: none;
}

.pdp-product-section--browse .home-carousel {
    display: grid;
    grid-template-columns: 2.85rem minmax(0, 1fr) 2.85rem;
    gap: .45rem;
    align-items: stretch;
    padding: 0;
}

.pdp-product-section--browse .home-carousel-viewport {
    min-height: var(--pdp-browse-card-height);
}

.pdp-product-section--browse .home-carousel-nav {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    transform: none;
    width: 100%;
    min-height: var(--pdp-browse-card-height);
    height: auto;
    align-self: stretch;
    border-radius: 10px;
    border: 1px solid #fdba74;
    background: linear-gradient(180deg, #fff7ed 0%, #ffedd5 100%);
    color: #ff6b00;
}

.pdp-product-section--browse .home-carousel-nav:hover {
    opacity: 1;
    transform: none;
    background: linear-gradient(180deg, #ffedd5 0%, #fed7aa 100%);
    border-color: #f97316;
}

.pdp-product-section--browse .home-carousel-prev:hover .home-carousel-chevron,
.pdp-product-section--browse .home-carousel-next:hover .home-carousel-chevron {
    transform: rotate(-135deg);
}

.pdp-product-section--browse .home-carousel-next:hover .home-carousel-chevron {
    transform: rotate(45deg);
}

.pdp-product-section--browse .home-carousel-nav .home-carousel-chevron {
    border-top-color: #ff6b00;
    border-right-color: #ff6b00;
    width: .95rem;
    height: .95rem;
    border-width: 3px;
    filter: none;
}

.pdp-product-section--browse .home-carousel-track--products {
    align-items: stretch;
    height: 100%;
    padding: 0;
}

.pdp-product-section--browse .home-carousel-track--products .ty-card {
    flex: 0 0 clamp(148px, 13vw, 182px);
    max-width: clamp(148px, 13vw, 182px);
    min-height: var(--pdp-browse-card-height);
    height: var(--pdp-browse-card-height);
    display: flex;
    flex-direction: column;
    background: #fff;
    border-color: #ebebeb;
}

.pdp-product-section--browse .home-carousel-track--products .ty-card .ty-card-media {
    flex-shrink: 0;
}

.pdp-product-section--browse .home-carousel-track--products .ty-card .ty-card-body {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.pdp-product-section--browse .home-carousel-track--products .ty-card .ty-title {
    flex: 1 1 auto;
    -webkit-line-clamp: 3;
}

.pdp-product-section-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
    flex-shrink: 0;
}

.pdp-product-grid--balanced {
    flex: 1 1 auto;
    align-content: start;
    min-height: calc(
        var(--pdp-reco-rows) * var(--pdp-reco-row-height)
        + (var(--pdp-reco-rows) - 1) * 1rem
    );
}

.pdp-product-section--similar .pdp-product-grid--balanced > .ty-card {
    min-height: var(--pdp-reco-row-height);
    height: 100%;
    display: flex;
    flex-direction: column;
}

.pdp-product-section--similar .pdp-product-grid--balanced > .ty-card .ty-card-media {
    flex-shrink: 0;
}

.pdp-product-section--similar .pdp-product-grid--balanced > .ty-card .ty-card-body {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
}

@media (max-width: 1400px) {
    .pdp-product-recommendations {
        --pdp-reco-cols: 5;
        --pdp-reco-row-height: clamp(236px, 24vw, 280px);
    }
}

@media (max-width: 1200px) {
    .pdp-product-recommendations {
        --pdp-reco-cols: 4;
        --pdp-reco-rows: 6;
        --pdp-reco-row-height: clamp(228px, 28vw, 272px);
    }
}

@media (max-width: 960px) {
    .pdp-product-recommendations {
        --pdp-reco-cols: 2;
        --pdp-reco-rows: 12;
        --pdp-reco-row-height: clamp(248px, 46vw, 300px);
        --pdp-browse-card-height: clamp(290px, 58vw, 330px);
    }

    .pdp-product-section--browse,
    .pdp-product-section--similar {
        padding: 1rem .75rem 1.1rem;
        border-radius: 12px;
    }

    .pdp-product-section--browse .home-carousel {
        grid-template-columns: 2.15rem minmax(0, 1fr) 2.15rem;
        gap: .35rem;
    }

    .pdp-product-section--browse .home-carousel-track--products .ty-card {
        flex: 0 0 42vw;
        max-width: 42vw;
    }
}

/* Buttons */
.btn { display: inline-flex; align-items: center; justify-content: center; padding: .65rem 1.35rem; border-radius: 10px; font: inherit; font-weight: 600; font-size: .9rem; border: none; cursor: pointer; transition: .2s; text-decoration: none; }
.btn-primary { background: var(--primary); color: #fff; border-radius: var(--radius); }
.btn-primary:hover { background: var(--primary-dark); filter: none; transform: none; }
.btn-outline { background: transparent; border: 2px solid var(--border); color: var(--text); }
.btn-outline:hover { border-color: var(--primary); color: var(--primary); }
.btn-lg { padding: .85rem 1.75rem; font-size: 1rem; }
.btn-block { width: 100%; }
.qty-input { width: 80px; padding: .65rem; border: 1px solid var(--border); border-radius: 8px; font: inherit; }

/* Trust */
.trust-bar { background: var(--accent-soft); color: #cbd5e1; padding: 1.25rem 0; }
.trust-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; text-align: center; font-size: .9rem; font-weight: 500; }

/* Footer — header ile uyumlu sıcak tema */
.site-footer {
    background: var(--header-bg, #FDF5ED);
    color: var(--accent-soft);
    padding: 2.75rem 0 0;
    margin-top: 2rem;
    border-top: 2px solid #dcc8ae;
    box-shadow: 0 -2px 0 rgba(220, 200, 174, 0.35);
}
.footer-logo { margin-bottom: .85rem; line-height: 0; }
.footer-logo-img {
    height: 48px;
    width: auto;
    max-width: 220px;
    object-fit: contain;
}
.site-footer .footer-tagline {
    color: var(--accent-soft);
    font-size: .9rem;
    line-height: 1.65;
    max-width: 280px;
    font-weight: 500;
}
.site-footer h4 {
    color: var(--accent);
    font-size: .82rem;
    margin-bottom: 1rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .06em;
}
.site-footer a {
    display: block;
    margin-bottom: .55rem;
    font-size: .9rem;
    color: #334155;
    font-weight: 600;
    transition: color .2s, transform .2s;
}
.site-footer a:hover { color: var(--primary); transform: translateX(3px); }
.footer-bottom {
    border-top: 1px solid #ecdcc8;
    margin-top: 0;
    background: rgba(255, 255, 255, 0.55);
}
.footer-trust span { background: #fff8f0; color: var(--accent-soft); border: 1px solid #ecdcc8; }
.secure-checkout-badge { background: var(--primary-light); border-color: #ffd4b3; }
.secure-checkout-badge strong { color: var(--primary-dark); }
.checkout-trust-strip { background: var(--primary-light); border-color: #ffd4b3; }
.checkout-trust-strip div { color: var(--primary-dark); }

/* Alerts & misc */
.alert { padding: .85rem 1.25rem; border-radius: 10px; margin: 1rem auto; max-width: 1280px; }
.alert-success { background: #dcfce7; color: #166534; }
.alert-error { background: #fee2e2; color: #991b1b; }
.data-table { width: 100%; border-collapse: collapse; background: var(--surface); border-radius: var(--radius); overflow: hidden; }
.data-table th, .data-table td { padding: .75rem 1rem; text-align: left; border-bottom: 1px solid var(--border); }
.checkout-form .field-grid label,
.checkout-form .card-fields label {
    display: block; margin-bottom: .35rem; font-size: .875rem; font-weight: 500;
}
.checkout-form .field-grid input,
.checkout-form .field-grid textarea,
.checkout-form .card-fields input {
    width: 100%; padding: .75rem .85rem; border: 1px solid var(--border); border-radius: 10px;
    margin-bottom: 1rem; font: inherit; transition: border-color .2s;
}
.checkout-form label.payment-option {
    display: flex; gap: 0; align-items: stretch; margin-bottom: 0; cursor: pointer;
    font-weight: 500; font-size: inherit;
}
.checkout-form label.payment-option input[type="radio"] {
    position: absolute; opacity: 0; width: 0; height: 0; margin: 0;
}
.checkout-form label.payment-option.is-selected .payment-option-box,
.checkout-form label.payment-option input:checked + .payment-option-box {
    border-color: var(--primary); background: var(--primary-light);
    box-shadow: 0 0 0 1px var(--primary);
}
.payment-methods-grid {
    display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin-bottom: 1rem;
}
.payment-methods-grid .payment-option { position: relative; height: 100%; }
.payment-methods-grid .payment-option-box {
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    text-align: center; min-height: 118px; height: 100%; padding: 1.1rem 1rem;
}
.payment-option-icon { font-size: 1.75rem; line-height: 1; margin-bottom: .5rem; }
.payment-option-box strong { display: block; margin-bottom: .25rem; font-size: .95rem; }
.payment-option-box small { color: var(--muted); font-size: .78rem; line-height: 1.35; }
.bank-preview { margin-top: 0; padding: 1rem 1.1rem; background: var(--bg); border-radius: 12px; border: 1px solid var(--border); }
.bank-list { list-style: none; margin: .75rem 0 0; padding: 0; display: flex; flex-direction: column; gap: .65rem; }
.bank-list li {
    padding: .85rem 1rem; background: var(--surface); border: 1px solid var(--border);
    border-radius: 10px; font-size: .88rem; line-height: 1.45;
}
.bank-list li strong { display: block; margin-bottom: .15rem; }
.bank-list li span { display: block; color: var(--muted); font-size: .82rem; }
.bank-list li code {
    display: block; margin-top: .35rem; font-family: ui-monospace, monospace;
    font-size: .82rem; word-break: break-all;
}
.transfer-receipt-field { margin-top: 1rem; padding-top: 1rem; border-top: 1px dashed var(--border); }
.transfer-receipt-field label { display: block; font-weight: 600; margin-bottom: .35rem; font-size: .9rem; }
.transfer-receipt-field input[type="file"] {
    width: 100%; padding: .65rem; border: 1px dashed var(--border); border-radius: 10px;
    background: var(--surface); font-size: .85rem;
}
.transfer-receipt-upload {
    margin-top: 1.25rem; padding: 1.25rem; background: #f8f5f1; border: 1px solid var(--border);
    border-radius: 12px; text-align: left;
}
.transfer-receipt-upload h3 { margin: 0 0 .5rem; font-size: 1rem; display: flex; align-items: center; gap: .5rem; }
.transfer-receipt-form { margin-top: .75rem; }
.transfer-receipt-status {
    display: flex; align-items: flex-start; gap: .75rem; margin-top: 1rem; padding: 1rem 1.1rem;
    background: #ecfdf5; border: 1px solid #a7f3d0; border-radius: 12px; color: #065f46;
}
.transfer-receipt-status i { font-size: 1.35rem; margin-top: .1rem; }
.transfer-receipt-status strong { display: block; margin-bottom: .15rem; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; }

/* Cart & Checkout */
.cart-page, .checkout-page { padding-bottom: 3rem; }
.cart-layout, .checkout-layout { display: grid; grid-template-columns: 1fr 340px; gap: 2rem; align-items: start; }
.cart-layout .cart-main-col { grid-column: 1; }
.cart-layout .cart-summary-card { grid-column: 2; grid-row: 1 / span 2; }
.cart-items-card, .checkout-card, .cart-summary-card, .checkout-summary-card {
    background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: 1.5rem;
}
.coupon-inline { display: flex; gap: .5rem; align-items: center; }
.coupon-inline input { flex: 1; min-width: 0; }
.cart-summary-card, .checkout-summary-card { position: sticky; top: 88px; }
.cart-items-card h3, .cart-summary-card h3, .checkout-summary-card h3, .checkout-card h2 {
    font-size: 1.1rem; margin-bottom: 1.25rem; padding-bottom: .75rem; border-bottom: 1px solid var(--border);
}
.cart-table-wrap { overflow-x: auto; margin-bottom: 1rem; }
.cart-item-list {
    list-style: none;
    margin: 0 0 1rem;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: .75rem;
}
.cart-item {
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: .9rem;
    background: #fffdfb;
}
.cart-item-top {
    display: flex;
    align-items: flex-start;
    gap: .75rem;
}
.cart-item-top img {
    width: 72px;
    height: 72px;
    object-fit: contain;
    background: #f8f8f8;
    border-radius: 10px;
    border: 1px solid var(--border);
    padding: .25rem;
    flex-shrink: 0;
}
.cart-item-info {
    flex: 1;
    min-width: 0;
}
.cart-item-info strong {
    display: block;
    font-size: .9rem;
    line-height: 1.35;
    margin-bottom: .2rem;
}
.cart-item-fields {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .65rem;
    margin-top: .75rem;
    padding-top: .75rem;
    border-top: 1px dashed var(--border);
    align-items: end;
}
.cart-item-label {
    display: block;
    font-size: .72rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .03em;
    color: var(--muted);
    margin-bottom: .3rem;
}
.cart-item-value {
    font-size: .92rem;
    font-weight: 600;
}
.cart-item-field--total .cart-item-value {
    font-size: 1rem;
    color: var(--accent);
}
.cart-table { width: 100%; border-collapse: collapse; }
.cart-table th { font-size: .75rem; text-transform: uppercase; letter-spacing: .04em; color: var(--muted); padding: .75rem .5rem; text-align: left; border-bottom: 1px solid var(--border); }
.cart-table td { padding: 1rem .5rem; border-bottom: 1px solid var(--border); vertical-align: middle; }
.cart-product-cell { display: flex; align-items: center; gap: 1rem; }
.cart-product-cell img { width: 72px; height: 72px; object-fit: contain; background: #f8f8f8; border-radius: 10px; border: 1px solid var(--border); padding: .25rem; }
.cart-product-cell strong { display: block; font-size: .9rem; line-height: 1.35; margin-bottom: .25rem; }
.cart-sku { font-size: .75rem; color: var(--muted); display: block; }
.cart-source { font-size: .7rem; color: var(--primary); font-weight: 600; }
.cart-line-total { font-weight: 700; white-space: nowrap; }
.cart-item.is-saving { opacity: .72; pointer-events: none; }
.cart-item-field--qty { display: flex; flex-direction: column; }
.cart-qty-stepper {
    display: inline-block;
    vertical-align: middle;
}
.cart-qty-table {
    border-collapse: separate;
    border-spacing: 5px 0;
}
.cart-qty-cell {
    padding: 0;
    vertical-align: middle;
}
.cart-qty-cell--btn {
    width: 1%;
}
.cart-qty-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    min-height: 32px;
    padding: 0;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    background: #e5e7eb;
    color: #374151;
    font-size: 1.05rem;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    transition: background .15s ease, border-color .15s ease;
}
.cart-qty-btn:hover {
    background: #d1d5db;
    border-color: #9ca3af;
}
.cart-qty-btn:active { transform: scale(.96); }
.cart-qty-input {
    width: 52px;
    height: 32px;
    min-width: 0;
    box-sizing: border-box;
    border: 1px solid var(--border) !important;
    border-radius: 8px !important;
    text-align: center;
    font-weight: 600;
    background: #fff;
    padding: .35rem .2rem !important;
    -moz-appearance: textfield;
    appearance: textfield;
}
.cart-qty-input::-webkit-outer-spin-button,
.cart-qty-input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.cart-auto-save-hint {
    margin: 0;
    font-size: .78rem;
    color: var(--muted);
    align-self: center;
}
.cart-remove { display: inline-flex; width: 32px; height: 32px; align-items: center; justify-content: center; border-radius: 8px; color: var(--muted); font-size: 1rem; }
.cart-remove:hover { background: #fee2e2; color: #dc2626; }
.cart-actions { display: flex; justify-content: space-between; gap: .75rem; flex-wrap: wrap; }
.summary-rows { margin-bottom: 1rem; }
.summary-row { display: flex; justify-content: space-between; padding: .5rem 0; font-size: .9rem; }
.summary-row.muted span:last-child { color: var(--muted); }
.summary-total-row.summary-grand { border-top: 2px solid var(--border); margin-top: .5rem; padding-top: 1rem; font-size: 1.1rem; }
.summary-total-row.summary-grand strong { font-size: 1.35rem; color: var(--accent); }
.summary-total-row.summary-discount span:last-child { color: #16a34a; }
.success-card { max-width: 640px; margin: 0 auto 3rem; text-align: center; }
.success-icon {
    width: 64px; height: 64px; margin: 0 auto 1rem; border-radius: 50%;
    background: #dcfce7; color: #166534; font-size: 2rem; line-height: 64px; font-weight: 700;
}
.success-card h2 { margin-bottom: .75rem; }
.payment-success-note, .bank-info { text-align: left; margin: 1.5rem 0; padding: 1rem; background: var(--bg); border-radius: 12px; }
.bank-card { padding: .75rem 0; border-bottom: 1px solid var(--border); }
.bank-card:last-child { border-bottom: none; }
.success-actions { display: flex; gap: .75rem; justify-content: center; flex-wrap: wrap; margin-top: 1.5rem; }
.secure-checkout-badge { display: flex; gap: .75rem; align-items: flex-start; margin-top: 1.25rem; padding: 1rem; background: var(--primary-light); border: 1px solid #99f6e4; border-radius: 10px; font-size: .85rem; }
.secure-checkout-badge span { font-size: 1.25rem; }
.secure-checkout-badge strong { display: block; color: var(--primary-dark); margin-bottom: .15rem; }
.secure-checkout-badge small { color: var(--muted); }
.empty-icon { font-size: 3rem; margin-bottom: 1rem; }
.checkout-trust-strip {
    display: grid; grid-template-columns: repeat(4, 1fr); gap: .75rem; margin-bottom: 1.5rem;
    background: var(--primary-light); border: 1px solid #99f6e4; border-radius: var(--radius); padding: 1rem 1.25rem;
}
.checkout-trust-strip div { display: flex; align-items: center; gap: .5rem; font-size: .85rem; font-weight: 600; color: var(--primary-dark); }
.checkout-main { display: flex; flex-direction: column; gap: 1.5rem; }
.field-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 1rem; }
.field-full { grid-column: 1 / -1; }
.checkout-form .field-grid input:focus,
.checkout-form .field-grid textarea:focus,
.checkout-form .card-fields input:focus {
    outline: none; border-color: var(--primary); box-shadow: 0 0 0 3px var(--primary-light);
}
.payment-option { display: flex; gap: .75rem; align-items: flex-start; margin-bottom: .75rem; cursor: pointer; }
.payment-option input { width: auto; margin-top: .35rem; }
.payment-option-box { flex: 1; padding: 1rem; border: 2px solid var(--border); border-radius: 12px; transition: .2s; }
.payment-option input:checked + .payment-option-box { border-color: var(--primary); background: var(--primary-light); }
.payment-option-box strong { display: block; margin-bottom: .2rem; }
.payment-option-box small { color: var(--muted); font-size: .8rem; }
.card-fields { padding: 1rem; background: var(--bg); border-radius: 12px; margin-bottom: 0; border: 1px solid var(--border); }
.card-row { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: .75rem; }
.checkout-item-list { list-style: none; max-height: 280px; overflow-y: auto; margin-bottom: 1rem; }
.checkout-item-list li { display: flex; align-items: center; gap: .75rem; padding: .75rem 0; border-bottom: 1px solid var(--border); }
.checkout-item-list img { width: 48px; height: 48px; object-fit: contain; background: #f8f8f8; border-radius: 8px; }
.checkout-item-info { flex: 1; min-width: 0; }
.checkout-item-name { display: block; font-size: .85rem; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.checkout-item-qty { font-size: .75rem; color: var(--muted); }
.checkout-item-price { font-weight: 700; font-size: .9rem; white-space: nowrap; }
.checkout-legal { font-size: .75rem; color: var(--muted); text-align: center; margin-top: 1rem; line-height: 1.5; }
.checkout-legal a { color: var(--primary); text-decoration: underline; }
.payment-logos { display: flex; justify-content: center; gap: .5rem; flex-wrap: wrap; margin-top: 1rem; }
.payment-logos span { font-size: .65rem; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; padding: .35rem .6rem; background: var(--bg); border: 1px solid var(--border); border-radius: 6px; color: var(--muted); }
.footer-grid { display: grid; grid-template-columns: 1.4fr repeat(3, 1fr) 1.35fr; gap: 2rem; padding-bottom: 2rem; align-items: start; }
.footer-links { display: contents; }
.footer-col--contact { border-left: 1px solid #ecdcc8; padding-left: 1.5rem; }
.footer-contact-line {
    margin: 0 0 .55rem;
    font-size: .86rem;
    line-height: 1.55;
    color: #334155;
    font-weight: 500;
}
.footer-contact-line i { width: 1rem; color: var(--primary); margin-right: .25rem; }
.footer-contact-line a { display: inline; margin: 0; font-size: inherit; }
.footer-contact-company { font-size: .92rem; }
.footer-contact-mersis { font-size: .78rem; color: #64748b; }
.footer-bottom {
    border-top: 1px solid #ecdcc8;
    padding: 1rem 0 1.15rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .65rem;
    text-align: center;
}
.footer-bottom-links {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .35rem 1.25rem;
}
.footer-bottom-links a {
    display: inline;
    margin: 0;
    font-size: .88rem;
    font-weight: 600;
    color: #334155;
    text-decoration: none;
}
.footer-bottom-links a:hover { color: var(--primary); transform: none; }
.footer-bottom-copy { margin: 0; font-size: .85rem; color: var(--accent-soft); }

.footer-payments {
    border-top: 1px solid #ecdcc8;
    padding: 1.1rem 0;
    text-align: center;
}

.payment-badges {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: .85rem 1.1rem;
    margin-bottom: .45rem;
}

.payment-badges__img {
    height: 32px;
    width: auto;
    display: block;
    object-fit: contain;
}

.payment-badges__img--iyzico { height: 32px; max-width: 160px; }

.payment-badges__band {
    height: 32px;
    width: auto;
    max-width: min(100%, 429px);
    display: block;
    margin: 0 auto;
}

.payment-badges--footer {
    justify-content: center;
}

.payment-ssl-note {
    margin: 0;
    font-size: .8rem;
    color: #64748b;
}

.payment-ssl-note i { color: #16a34a; margin-right: .3rem; }

.checkout-payment-badges {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px dashed #e2e8f0;
    text-align: center;
}

.checkout-legal-links {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .4rem .85rem;
    margin-top: .75rem;
    font-size: .75rem;
}

.checkout-legal-links a {
    color: #64748b;
    text-decoration: none;
}

.checkout-legal-links a:hover { color: var(--primary); text-decoration: underline; }
.contact-page { padding: 2rem 0 4rem; }
.contact-card {
    max-width: 520px;
    padding: 1.25rem 1.35rem;
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 14px;
    line-height: 1.65;
}
.contact-card p { margin: 0 0 .65rem; }
.contact-mersis { font-size: .82rem; color: var(--muted); }
.contact-actions { display: flex; gap: .65rem; flex-wrap: wrap; margin-top: 1.25rem; }
@media (max-width: 1100px) {
    .footer-grid { grid-template-columns: 1fr 1fr; }
    .footer-col--contact { border-left: none; padding-left: 0; grid-column: 1 / -1; border-top: 1px solid #ecdcc8; padding-top: 1.25rem; }
}
@media (max-width: 640px) {
    .footer-grid { grid-template-columns: 1fr; }
}
.cat-list .depth-0 > .cat-row > a,
.cat-list .depth-0 > a { font-weight: 600; }
.cat-list .depth-1 > .cat-row > a,
.cat-list .depth-1 > a { font-size: .85rem; }
.cat-list .depth-2 > .cat-row > a,
.cat-list .depth-2 > a { font-size: .8rem; color: var(--muted); }

@media (max-width: 900px) {
    .navbar-toggle { display: flex; align-items: center; justify-content: center; margin-left: auto; }
    .navbar-search { order: 3; flex: 1 1 100%; max-width: none; margin: 0; }
    .site-navbar { height: auto; min-height: 60px; }
    .site-navbar-inner { flex-wrap: wrap; padding: .5rem 1rem .55rem; gap: .55rem; height: auto; min-height: 60px; }
    .navbar-brand { height: auto; align-self: auto; }
    .navbar-brand-logo { height: 44px; max-width: min(220px, 52vw); }
    .navbar-nav {
        display: none; flex-direction: column; width: 100%; order: 4;
        padding: .75rem 0; border-top: 1px solid var(--border); align-items: stretch;
    }
    .navbar-nav.is-open { display: flex; }
    .navbar-nav .nav-link { padding: .65rem 0; }
    .nav-icon-btn { align-self: flex-start; }
    .hero-card { padding: 1.5rem; }
    .home-stats-grid { grid-template-columns: 1fr 1fr; gap: .75rem; }
    .home-stat-item { padding: 1rem; gap: .85rem; }
    .home-stat-icon { width: 46px; height: 46px; font-size: 1.1rem; }
    .home-stat-text strong { font-size: 1.1rem; }
    .ty-product-row--6 { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .65rem; }
    .ty-product-row,
    .hero-popular-grid,
    .product-grid-dense { grid-template-columns: repeat(auto-fill, minmax(155px, 1fr)); gap: .55rem; }
    .home-carousel { padding: 0 1.75rem; }
    .home-carousel-nav { width: 1.75rem; }
    .ty-brand-card { flex: 0 0 105px; }
    .promo-strip-grid { grid-template-columns: 1fr 1fr; }
    .trust-bar-pro-grid { grid-template-columns: 1fr 1fr; }
    .hero-pro-layout { grid-template-columns: 1fr; min-height: auto; padding: 2rem 0 5rem; }
    .hero-pro-showcase { display: none; }
    .hero-pro-track { min-height: 420px; }
    .promo-strip-grid { grid-template-columns: 1fr 1fr; }
    .trust-bar-pro-grid { grid-template-columns: 1fr 1fr; }
    .section-head-pro { flex-wrap: wrap; }
    .section-see-all { margin-left: 0; width: 100%; text-align: center; margin-top: .5rem; }
    .hero-pro-thumbs { margin-top: -2rem; }
    .hero-banner-track { height: clamp(260px, 55vw, 400px); }
    .hero-grid, .hero-slide-grid, .product-detail, .shop-layout, .footer-grid, .form-grid,
    .cart-layout, .checkout-layout, .checkout-trust-strip, .field-grid, .payment-methods-grid { grid-template-columns: 1fr; }
    .cart-layout {
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }
    .cart-layout .cart-main-col,
    .cart-layout .cart-summary-card {
        grid-column: auto;
        grid-row: auto;
        width: 100%;
    }
    .cart-layout .cart-main-col { order: 1; }
    .cart-layout .cart-summary-card { order: 2; }
    .account-layout { grid-template-columns: 1fr; }
    .account-sidebar { position: static; }
    .cart-summary-card, .checkout-summary-card { position: static; }
    .cart-item-fields { grid-template-columns: 1fr 1fr; }
    .cart-item-field--total {
        grid-column: 1 / -1;
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 1rem;
        padding-top: .35rem;
        border-top: 1px dashed var(--border);
        margin-top: .15rem;
    }
    .cart-item-field--total .cart-item-label { margin-bottom: 0; }
    .cart-item-top img { width: 64px; height: 64px; }
    .cart-item-info strong { font-size: .86rem; }
    .cart-actions { flex-direction: column; align-items: stretch; }
    .cart-actions .btn { width: 100%; justify-content: center; }
    .cart-table thead { display: none; }
    .cart-table tr { display: block; margin-bottom: 1rem; border: 1px solid var(--border); border-radius: 12px; padding: .75rem; }
    .cart-table td { display: flex; justify-content: space-between; border: none; padding: .35rem 0; }
    .cart-table td::before { content: attr(data-label); font-weight: 600; color: var(--muted); font-size: .75rem; margin-right: 1rem; }
    .cart-table td.cart-product { display: block; }
    .cart-table td.cart-product::before { display: none; }
    .cart-table td.cart-remove-cell::before { display: none; }
    .cart-table td.cart-remove-cell { justify-content: flex-end; border-top: 1px dashed var(--border); padding-top: .5rem; margin-top: .25rem; }
    .cart-layout .cart-summary-card { grid-row: auto; }
    .shop-sidebar { position: static; }
    .trust-grid { grid-template-columns: 1fr 1fr; }
    .header-inner { gap: .75rem; }
    .search-form { order: 3; width: 100%; flex: none; }
}

/* ── Giriş sayfası (main layout içinde) ── */
.quick-cats-bar {
    padding: .75rem 0 .25rem;
    border-bottom: 1px solid #f0e6d8;
    background: var(--bg);
}
.login-page {
    padding: 2rem 0 3rem;
    background: var(--bg);
}
.login-page-wide {
    display: grid;
    grid-template-columns: 1fr 1.1fr;
    gap: 2rem;
    max-width: 1100px;
    margin: 0 auto;
    align-items: stretch;
}
.login-page-wide--solo {
    grid-template-columns: 1fr;
    max-width: 440px;
}
.login-page-aside {
    padding: 2.5rem 2rem;
    background: linear-gradient(145deg, #FFF8F0 0%, #FFE8CC 100%);
    border: 1px solid #f0e6d8;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.login-page-aside-icon {
    width: 64px;
    height: 64px;
    border-radius: 16px;
    background: linear-gradient(135deg, #FF6B00, #FF9F43);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.75rem;
    margin-bottom: 1.25rem;
}
.login-page-aside h1 {
    font-size: clamp(1.35rem, 2.5vw, 1.85rem);
    font-weight: 800;
    color: var(--accent);
    margin-bottom: .75rem;
    line-height: 1.2;
}
.login-page-aside > p {
    color: var(--muted);
    font-size: .95rem;
    line-height: 1.55;
    margin-bottom: 1.5rem;
}
.login-page-perks {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: .75rem;
}
.login-page-perks li {
    display: flex;
    align-items: center;
    gap: .65rem;
    font-size: .9rem;
    font-weight: 600;
    color: var(--accent-soft);
}
.login-page-perks i {
    color: var(--primary);
    width: 1.25rem;
    text-align: center;
}
.login-page-card {
    background: #fff;
    border: 1px solid #f0e6d8;
    padding: 2.5rem 2.75rem;
    box-shadow: 0 8px 32px rgba(255, 107, 0, .06);
    position: relative;
    overflow: hidden;
}
.login-page-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 4px;
    background: linear-gradient(90deg, #FF6B00, #FF9F43);
}
.login-page-card-head {
    margin-bottom: 1.75rem;
}
.login-page-card-head h2 {
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--accent);
    margin-bottom: .25rem;
}
.login-page-card-head p {
    font-size: .9rem;
    color: var(--muted);
}
.login-page-field {
    margin-bottom: 1.15rem;
}
.login-page-field label {
    display: block;
    font-size: .8rem;
    font-weight: 700;
    color: var(--accent-soft);
    margin-bottom: .4rem;
}
.login-page-input {
    position: relative;
    display: flex;
    align-items: center;
}
.login-page-input > i:first-child {
    position: absolute;
    left: 1rem;
    color: #94a3b8;
    pointer-events: none;
}
.login-page-input input {
    width: 100%;
    padding: .9rem 1rem .9rem 2.75rem;
    border: 1px solid #ecdcc8;
    border-radius: 10px;
    font: inherit;
    font-size: 1rem;
    transition: border-color .2s, box-shadow .2s;
}
.login-page-input input:focus {
    outline: none;
    border-color: var(--primary);
    box-shadow: 0 0 0 3px rgba(255, 107, 0, .12);
}
.login-page-toggle-pw {
    position: absolute;
    right: .5rem;
    border: none;
    background: transparent;
    color: #94a3b8;
    cursor: pointer;
    padding: .5rem;
}
.login-page-toggle-pw:hover { color: var(--primary); }
.login-page-submit {
    width: 100%;
    margin-top: .5rem;
    padding: 1rem 1.5rem;
    border: none;
    border-radius: 50px;
    background: linear-gradient(135deg, #FF6B00, #F59E0B);
    color: #fff;
    font: inherit;
    font-size: 1.05rem;
    font-weight: 800;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    transition: transform .2s, box-shadow .2s;
}
.login-page-submit:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(255, 107, 0, .28);
}
.login-page-switch {
    text-align: center;
    margin-top: 1.5rem;
    font-size: .9rem;
    color: var(--muted);
}
.login-page-switch a {
    color: var(--primary);
    font-weight: 700;
}
@media (max-width: 900px) {
    .login-page-wide {
        grid-template-columns: 1fr;
        max-width: 520px;
    }
    .login-page-aside { padding: 1.75rem 1.5rem; }
    .login-page-card { padding: 2rem 1.5rem; }
}

/* Hesabım & sipariş takip */
.account-page {
    padding: 2rem 0 3rem;
    background: linear-gradient(180deg, var(--bg) 0%, #fff8f0 100%);
    min-height: 65vh;
}
.account-layout {
    display: grid;
    grid-template-columns: 268px 1fr;
    gap: 1.75rem;
    align-items: start;
}
.account-sidebar {
    display: flex;
    flex-direction: column;
    gap: 0;
    background: linear-gradient(180deg, #fffdfb 0%, #fff8f0 100%);
    border: 1px solid #ecdcc8;
    border-radius: 18px;
    padding: 0;
    overflow: hidden;
    box-shadow: 0 8px 28px rgba(255, 107, 0, .08);
    position: sticky;
    top: calc(var(--site-header-height) + 1rem);
}
.account-sidebar-profile {
    display: flex;
    align-items: center;
    gap: .85rem;
    padding: 1.25rem 1.15rem;
    border-bottom: 2px solid #ecdcc8;
    background: rgba(255, 255, 255, 0.6);
}
.account-avatar {
    width: 46px;
    height: 46px;
    border-radius: 14px;
    background: linear-gradient(135deg, #FF6B00, #F59E0B);
    color: #fff;
    font-weight: 800;
    font-size: 1.1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 4px 12px rgba(255, 107, 0, .25);
}
.account-sidebar-profile strong {
    display: block;
    font-size: .92rem;
    color: var(--accent);
    line-height: 1.3;
}
.account-sidebar-profile small {
    display: block;
    font-size: .72rem;
    color: var(--muted);
    word-break: break-all;
}
.account-sidebar-nav {
    display: flex;
    flex-direction: column;
    gap: .2rem;
    padding: .85rem .65rem 1rem;
}
.account-nav-link {
    display: flex;
    align-items: center;
    gap: .65rem;
    padding: .72rem .9rem;
    border-radius: 12px;
    font-weight: 600;
    font-size: .88rem;
    color: var(--accent-soft);
    transition: background .2s, color .2s, box-shadow .2s;
}
.account-nav-link i {
    width: 1.1rem;
    text-align: center;
    font-size: .9rem;
    color: #94a3b8;
    transition: color .2s;
}
.account-nav-link:hover {
    background: #fff;
    color: var(--primary-dark);
    box-shadow: inset 3px 0 0 var(--primary);
}
.account-nav-link:hover i { color: var(--primary); }
.account-nav-link.is-active {
    background: var(--primary-light);
    color: var(--primary-dark);
    box-shadow: inset 3px 0 0 var(--primary);
}
.account-nav-link.is-active i { color: var(--primary); }
.account-nav-link--dealer { margin-top: .35rem; border-top: 1px dashed #ecdcc8; padding-top: 1rem; }
.account-nav-link--logout { color: #b91c1c; }
.account-nav-link--logout:hover { background: #fef2f2; color: #991b1b; box-shadow: inset 3px 0 0 #ef4444; }
.account-nav-link--logout:hover i { color: #ef4444; }
.account-content {
    min-width: 0;
    background: #fff;
    border: 1px solid #ecdcc8;
    border-radius: 18px;
    padding: 1.75rem 1.85rem;
    box-shadow: 0 8px 28px rgba(15, 23, 42, .05);
}
.account-content--full {
    max-width: 900px;
    margin: 0 auto;
    background: #fff;
    border: 1px solid #ecdcc8;
    border-radius: 18px;
    padding: 1.75rem;
}
.account-content h1 {
    margin-bottom: .35rem;
    font-size: 1.65rem;
    font-weight: 800;
    color: var(--accent);
}
.account-content h2 {
    font-size: 1.1rem;
    font-weight: 800;
    color: var(--accent);
    margin: 1.5rem 0 .85rem;
}
.account-content .hint { color: var(--muted); font-size: .9rem; line-height: 1.55; margin-bottom: 1.25rem; }
.account-welcome {
    padding: 1.15rem 1.25rem;
    border-radius: 14px;
    background: linear-gradient(135deg, #fff8f0, #fff);
    border: 1px solid #ffd4b3;
    margin-bottom: 1.5rem;
}
.account-welcome p { margin: 0; font-size: .9rem; color: var(--accent-soft); }
.account-welcome strong { color: var(--primary-dark); }
.order-detail-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; margin-bottom: 1.5rem; }
.account-page .form-card {
    background: #fffdfb;
    border: 1px solid #f0e6d8;
    border-radius: 14px;
    padding: 1.15rem 1.25rem;
    margin-bottom: 0;
}
.account-form label {
    display: block;
    font-size: .85rem;
    font-weight: 700;
    color: var(--accent-soft);
    margin-bottom: .35rem;
}
.account-form input,
.account-form textarea,
.account-form select {
    width: 100%;
    padding: .7rem .85rem;
    border: 1px solid #e8ddd0;
    border-radius: 10px;
    font: inherit;
    margin-bottom: 1rem;
    background: #fff;
    transition: border-color .2s, box-shadow .2s;
}
.account-form input:focus,
.account-form textarea:focus {
    outline: none;
    border-color: var(--primary);
    box-shadow: 0 0 0 3px rgba(255, 107, 0, .12);
}
.account-page .form-card h2 { font-size: .95rem; margin: 0 0 .75rem; color: var(--accent); font-weight: 700; }
.account-page .form-card p { margin: .35rem 0; font-size: .9rem; line-height: 1.5; }
.account-content .data-table {
    border: 1px solid #ecdcc8;
    border-radius: 12px;
    overflow: hidden;
}
.account-content .data-table th { background: #faf6f0; color: var(--accent); font-size: .78rem; text-transform: uppercase; letter-spacing: .03em; }
.account-content .data-table a { color: var(--primary); font-weight: 700; }
.account-head-row h1 { margin-bottom: 0; }
.login-page-wide--track { max-width: 960px; }
.track-page .login-page-aside-icon { background: linear-gradient(135deg, #c2410c, #FF6B00); }
.account-section-title { font-size: 1.1rem; margin: 1.5rem 0 .75rem; color: var(--accent); }
.order-total-line { font-size: 1.05rem; margin: 1rem 0; }
.order-track-steps { display: flex; gap: .5rem; margin: 1.5rem 0; flex-wrap: wrap; }
.order-track-step { flex: 1; min-width: 100px; text-align: center; padding: .75rem .5rem; background: #fff; border: 1px solid #ecdcc8; font-size: .8rem; font-weight: 600; color: var(--muted); position: relative; }
.order-track-step.is-done { border-color: var(--primary); color: var(--accent); }
.order-track-step.is-current { background: #FFF8F0; border-color: var(--primary); color: var(--primary); }
.badge-own { background: #dcfce7; color: #166534; padding: .2rem .5rem; border-radius: 4px; font-size: .75rem; font-weight: 700; }
.badge-warning { background: #fef3c7; color: #92400e; padding: .2rem .5rem; border-radius: 4px; font-size: .75rem; font-weight: 700; }
.badge-xml { background: #dbeafe; color: #1e40af; padding: .2rem .5rem; border-radius: 4px; font-size: .75rem; font-weight: 700; }
.badge-danger { background: #fee2e2; color: #991b1b; padding: .2rem .5rem; border-radius: 4px; font-size: .75rem; font-weight: 700; }
.data-table { width: 100%; border-collapse: collapse; background: #fff; font-size: .9rem; }
.data-table th, .data-table td { padding: .75rem 1rem; border-bottom: 1px solid #f0e6d8; text-align: left; }
.data-table th { background: #faf6f0; font-weight: 700; }
.account-widgets { display: flex; flex-wrap: wrap; gap: 1rem; margin: 1rem 0 1.5rem; }
.account-widget {
    display: flex; flex-direction: column; gap: .2rem; padding: 1.1rem 1.25rem;
    border: 1px solid #ffd4b3; border-radius: 14px;
    background: linear-gradient(135deg, #fff8f0, #fff);
    text-decoration: none; color: inherit; min-width: 150px;
    transition: transform .2s, box-shadow .2s;
}
.account-widget:hover { transform: translateY(-2px); box-shadow: 0 8px 20px rgba(255, 107, 0, .12); }
.account-widget strong { font-size: 1.35rem; color: var(--primary); }
.account-widget span { font-size: .85rem; font-weight: 600; }
.account-widget small { font-size: .75rem; color: var(--muted); }
.account-head-row { display: flex; justify-content: space-between; align-items: center; gap: 1rem; margin-bottom: 1rem; }
.address-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 1rem; }
.address-card {
    border: 1px solid #ecdcc8; border-radius: 14px; padding: 1.1rem;
    background: linear-gradient(180deg, #fff, #fffdfb);
    transition: box-shadow .2s;
}
.address-card:hover { box-shadow: 0 6px 18px rgba(255, 107, 0, .08); }
.address-card--default { border-color: var(--primary); box-shadow: 0 0 0 1px rgba(255,107,0,.15); }
.address-card-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: .5rem; }
.address-card p { margin: .25rem 0; font-size: .88rem; }
.address-card-actions { display: flex; gap: .5rem; margin-top: .75rem; }
.ty-product-grid--account { display: grid; grid-template-columns: repeat(auto-fill, minmax(172px, 1fr)); gap: .85rem; }
.ty-dealer-price-label { font-size: .72rem; color: var(--primary); font-weight: 700; margin: 0 0 .25rem; }
.checkout-address-pick { display: flex; flex-direction: column; gap: .65rem; }
.checkout-address-pick select { width: 100%; padding: .55rem .75rem; border-radius: 8px; border: 1px solid #e8ddd0; }
@media (max-width: 768px) {
    .account-layout { grid-template-columns: 1fr; }
    .account-sidebar { position: static; }
    .account-content { padding: 1.25rem 1rem; }
    .order-detail-grid { grid-template-columns: 1fr; }
}

/* ── Header mega kategori (Trendyol tarzı) ── */
.header-mega-nav {
    position: fixed; left: 0; right: 0; z-index: 999;
    top: var(--site-header-height);
    height: var(--site-mega-nav-height);
    box-sizing: border-box;
    background: #fff;
    border-bottom: 2px solid #dcc8ae;
    box-shadow: 0 2px 0 rgba(220, 200, 174, 0.35);
    transition: top .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.header-mega-nav-inner {
    display: flex; align-items: stretch; gap: 0;
    width: 100%;
    max-width: none;
    height: var(--site-mega-nav-height);
    padding: 0;
    margin: 0;
}
.header-mega-brand {
    display: none; align-items: center; flex-shrink: 0;
    height: var(--site-mega-nav-height);
    padding: 0;
    border-right: 1px solid var(--header-line);
    overflow: hidden;
}
.header-mega-brand img {
    display: block;
    height: var(--site-mega-nav-height);
    width: auto;
    object-fit: contain;
    object-position: left center;
}
body.site-header-scrolled .site-navbar {
    transform: translateY(-100%);
    pointer-events: none;
}
body.site-header-scrolled.has-mega-nav {
    padding-top: var(--site-mega-nav-height);
}
body.site-header-scrolled .header-mega-nav {
    top: 0;
    border-bottom: 2px solid #dcc8ae;
    box-shadow: 0 2px 0 rgba(220, 200, 174, 0.35);
}
body.site-header-scrolled .header-mega-nav-inner {
    padding-left: 0 !important;
    max-width: none;
    width: 100%;
}
body.site-header-scrolled .header-mega-brand {
    display: flex;
    align-self: stretch;
    width: auto;
    flex-shrink: 0;
    margin: 0;
    padding: 0;
    line-height: 0;
}
body.site-header-scrolled .header-mega-brand img {
    height: var(--site-mega-nav-height);
    width: auto;
    max-width: none;
    margin: 0;
    padding: 0;
    object-fit: contain;
    object-position: left center;
}
body.site-header-scrolled .header-mega-scroll {
    overflow: hidden;
    flex: 1;
    min-width: 0;
}
body.site-header-scrolled .header-mega-item {
    flex: 1 1 0;
    min-width: 0;
}
body.site-header-scrolled .header-mega-link:not(.header-mega-link--has-image) {
    min-width: 0;
    width: 100%;
    padding: .15rem .2rem;
}
body.site-header-scrolled .header-mega-link--has-image {
    min-width: 0;
    width: 100%;
}
body.site-header-scrolled .header-mega-name {
    max-width: 100%;
    font-size: .62rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

@media (min-width: 901px) {
    body.site-header-scrolled .header-mega-scroll {
        overflow: hidden;
    }
    body.site-header-scrolled .header-mega-item {
        flex: 1 1 0;
        min-width: 0;
    }
}
.header-mega-all {
    display: inline-flex; align-items: center; gap: .4rem; padding: 0 .75rem;
    font-size: .8rem; font-weight: 700; color: var(--text); white-space: nowrap;
    border-right: 1px solid #dcc8ae; flex-shrink: 0; height: 100%;
    border-top: none; border-bottom: none; border-left: none;
    background: transparent; cursor: pointer; font-family: inherit;
}
.header-mega-all.is-active, .header-mega-all:hover { color: var(--primary); }
.header-mega-scroll {
    display: flex; align-items: stretch; gap: 0; overflow-x: auto;
    scrollbar-width: none; flex: 1; height: 100%; padding: 0; min-width: 0;
    width: 100%;
}
.header-mega-scroll::-webkit-scrollbar { display: none; }
.header-mega-item {
    position: relative; flex-shrink: 0;
    border-right: 1px solid #dcc8ae;
}
@media (min-width: 901px) {
    .header-mega-scroll {
        overflow: hidden;
    }
    .header-mega-item {
        flex: 1 1 0;
        min-width: 0;
    }
    .header-mega-link {
        min-width: 0;
        width: 100%;
    }
    .header-mega-name {
        max-width: 100%;
    }
}
.header-mega-item:last-child { border-right: none; }
.header-mega-link {
    display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .1rem;
    padding: .15rem .25rem; min-width: 0; height: 100%; text-align: center; border-radius: 0;
}
.header-mega-nav--listing .header-mega-scroll {
    overflow-x: auto;
    overflow-y: hidden;
    justify-content: flex-start;
}
.header-mega-nav--listing .header-mega-item {
    flex: 0 0 auto;
    min-width: 72px;
    border-right: 1px solid #ece5dc;
}
.header-mega-nav--listing .header-mega-link {
    min-width: 72px;
}
.header-mega-sub-row {
    border-top: 1px solid #ece5dc;
    background: #faf8f5;
}
.header-mega-sub-row .category-sub-nav {
    margin: 0;
    border-bottom: none;
    padding: 0.55rem 0;
}
body.category-all-modal-open {
    overflow: hidden;
}
.category-all-modal {
    position: fixed;
    inset: 0;
    z-index: 1200;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: 1rem;
}
.category-all-modal[hidden] {
    display: none !important;
}
.category-all-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(17, 24, 39, 0.45);
}
.category-all-modal__panel {
    position: relative;
    width: min(960px, 100%);
    max-height: min(85vh, 720px);
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.18);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}
.category-all-modal__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid #ece5dc;
    background: linear-gradient(135deg, #fff7ed, #fff);
}
.category-all-modal__head h2 {
    margin: 0;
    font-size: 1.15rem;
}
.category-all-modal__lead {
    margin: 0.25rem 0 0;
    color: #6b7280;
    font-size: 0.85rem;
}
.category-all-modal__close {
    border: none;
    background: transparent;
    font-size: 1.75rem;
    line-height: 1;
    cursor: pointer;
    color: #6b7280;
}
.category-all-modal__body {
    padding: 1rem 1.25rem 1.25rem;
    overflow: auto;
}
.category-all-modal__all-link {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    margin-bottom: 1rem;
    font-weight: 600;
    color: var(--primary);
}
.category-all-modal__grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 1rem 1.25rem;
}
.category-all-modal__group {
    border: 1px solid #ece5dc;
    border-radius: 12px;
    padding: 0.75rem;
    background: #faf8f5;
}
.category-all-modal__root {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    font-weight: 700;
    color: inherit;
    margin-bottom: 0.55rem;
}
.category-all-modal__root img {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    object-fit: cover;
}
.category-all-modal__children,
.category-all-modal__grandchildren {
    list-style: none;
    margin: 0;
    padding: 0;
}
.category-all-modal__children > li + li {
    margin-top: 0.35rem;
}
.category-all-modal__child {
    display: block;
    font-weight: 600;
    font-size: 0.88rem;
    color: inherit;
}
.category-all-modal__grandchildren {
    margin-top: 0.25rem;
    padding-left: 0.75rem;
    border-left: 2px solid #ece5dc;
}
.category-all-modal__grandchildren a {
    display: block;
    font-size: 0.8rem;
    color: #6b7280;
    padding: 0.12rem 0;
}
.category-all-modal__grandchildren a:hover,
.category-all-modal__child:hover,
.category-all-modal__root:hover {
    color: var(--primary);
}
.header-mega-nav--home .header-mega-scroll {
    overflow: hidden;
}
.header-mega-nav--home .header-mega-item {
    flex: 1 1 0;
    min-width: 0;
}
.header-mega-nav--home .header-mega-link:not(.header-mega-link--has-image) {
    min-width: 0;
    padding: .15rem .25rem;
}
.header-mega-nav--home .header-mega-link--has-image {
    min-width: 0;
    padding: 0;
}
.header-mega-nav--home .header-mega-name {
    max-width: 100%;
    font-size: .62rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.header-mega-item.is-active .header-mega-link,
.header-mega-link:hover { background: var(--primary-light); }
.header-mega-link--has-image {
    padding: 0;
    gap: 0;
    justify-content: flex-start;
    min-width: 0;
}
.header-mega-icon {
    width: 30px; height: 30px; border-radius: 6px; overflow: hidden;
    background: #f5f0ea; display: flex; align-items: center; justify-content: center;
    font-size: .8rem; font-weight: 800; color: var(--primary-dark); flex-shrink: 0;
}
.header-mega-icon--image {
    flex: 1 1 0;
    width: 100%;
    height: 100%;
    min-width: 0;
    min-height: 0;
    max-width: none;
    max-height: none;
    border-radius: 0;
    background: #f5f0ea;
    padding: 0;
}
.header-mega-link--has-image .header-mega-icon--image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}
.header-mega-link--has-image .header-mega-name {
    flex-shrink: 0;
    width: 100%;
    max-width: none;
    padding: .14rem .25rem .16rem;
    font-size: .58rem;
    line-height: 1.15;
    font-weight: 600;
    background: rgba(255, 255, 255, 0.94);
    border-top: 1px solid #dcc8ae;
    box-sizing: border-box;
    position: relative;
    z-index: 1;
}
.header-mega-name {
    font-size: .68rem;
    font-weight: 600;
    line-height: 1.2;
    max-width: 100%;
    color: var(--text);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    border-top: 1px solid transparent;
    box-sizing: border-box;
}
.header-mega-link:not(.header-mega-link--has-image) .header-mega-name {
    border-top-color: #e8d9c8;
    padding-top: .1rem;
    margin-top: .05rem;
}
.header-mega-dropdown {
    display: none; position: absolute; left: 0; top: 100%; min-width: 520px; max-width: min(92vw, 880px);
    background: #fff; border: 1px solid var(--border); border-radius: 12px;
    box-shadow: 0 12px 40px rgba(0,0,0,.12); padding: 1rem; z-index: 200;
}
.header-mega-item:hover .header-mega-dropdown { display: block; }
.header-mega-dropdown-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: .75rem 1rem; }
.header-mega-subtitle {
    display: flex; justify-content: space-between; gap: .5rem;
    font-size: .82rem; font-weight: 700; color: var(--primary-dark); margin-bottom: .35rem;
}
.header-mega-subtitle small { color: var(--muted); font-weight: 500; }
.header-mega-sublist { list-style: none; margin: 0; padding: 0; }
.header-mega-sublist a { display: block; font-size: .78rem; padding: .2rem 0; color: var(--muted); }
.header-mega-sublist a:hover { color: var(--primary); }

/* ── Ürünler sayfası ── */
.products-page { padding-bottom: 3rem; background: #faf8f5; }
.products-page-head {
    background: linear-gradient(180deg, #fff 0%, #fdfaf6 100%);
    border-bottom: 1px solid var(--header-line);
    box-shadow: 0 1px 0 rgba(255, 255, 255, .8);
    margin-bottom: 1.25rem;
}
.products-page-head-inner { padding: .9rem 0 1rem; }
.products-page-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    flex-wrap: wrap;
}
.shop-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .4rem .55rem;
    font-size: .84rem;
    color: var(--muted);
    min-width: 0;
    flex: 1 1 auto;
}
.shop-breadcrumb-home {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
}
.shop-breadcrumb-home i { font-size: .72rem; opacity: .75; }
.shop-breadcrumb-sep { color: #d4c4b0; user-select: none; }
.shop-breadcrumb a {
    color: var(--muted);
    text-decoration: none;
    transition: color .15s ease;
}
.shop-breadcrumb a:hover { color: var(--primary); }
.shop-breadcrumb .current {
    color: var(--text);
    font-weight: 700;
    letter-spacing: -.01em;
}
.products-sort-form {
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    flex-shrink: 0;
    margin-left: auto;
    margin-right: 2.5rem;
    padding: .35rem .5rem .35rem .75rem;
    background: #fff;
    border: 1px solid var(--header-line);
    border-radius: 999px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .04);
}
.products-sort-form label {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    font-size: .78rem;
    font-weight: 600;
    color: var(--muted);
    white-space: nowrap;
}
.products-sort-form label i { font-size: .72rem; color: var(--primary); }
.products-sort-form select {
    padding: .45rem 2rem .45rem .65rem;
    border: none;
    border-radius: 999px;
    font: inherit;
    font-size: .82rem;
    font-weight: 600;
    color: var(--text);
    background: #f8f4ee url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M3 4.5 6 7.5 9 4.5'/%3E%3C/svg%3E") no-repeat right .55rem center;
    appearance: none;
    cursor: pointer;
    min-width: 8.5rem;
}
.products-sort-form select:focus {
    outline: 2px solid var(--primary-light);
    outline-offset: 1px;
}
.products-sort-form select + label {
    margin-left: .35rem;
    padding-left: .55rem;
    border-left: 1px solid var(--header-line);
}
.shop-layout--products {
    display: block;
    align-items: start;
}
.shop-main--full {
    width: 100%;
    min-width: 0;
}
.shop-layout--products .shop-main--full {
    padding-top: .25rem;
}
.shop-sidebar--modern .shop-sidebar-card {
    background: var(--surface); border: 1px solid var(--border); border-radius: 14px; padding: 1rem;
    position: sticky; top: 120px; max-height: calc(100vh - 140px); overflow-y: auto;
}
.shop-sidebar--modern h3 { font-size: .95rem; margin-bottom: .75rem; display: flex; align-items: center; gap: .5rem; }
.cat-tree--modern a { justify-content: space-between; gap: .5rem; }
.cat-tree--modern a span:first-child { flex: 1; min-width: 0; }
.cat-tree--modern a small { color: var(--muted); font-size: .72rem; flex-shrink: 0; }
.products-highlights { margin-bottom: 1.5rem; display: flex; flex-direction: column; gap: 1.25rem; }
.products-highlight-band {
    background: linear-gradient(180deg, #fffdfb 0%, #fff 100%);
    border: 1px solid #f0e6d8; border-radius: 14px; padding: 1rem 1rem .75rem;
}
.products-highlight-head {
    display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; margin-bottom: .85rem;
}
.products-highlight-head h2, .products-highlight-head h3 { margin: 0; font-size: 1.05rem; }
.products-highlight-head p { margin: .2rem 0 0; font-size: .82rem; color: var(--muted); }
.category-page-hero {
    margin-bottom: 1.25rem;
    padding: 1.1rem 1.25rem;
    background: #fff;
    border: 1px solid rgba(0,0,0,.06);
    border-radius: 16px;
}
.category-page-hero-main {
    display: flex;
    align-items: center;
    gap: 1rem;
}
.category-page-hero-media {
    width: 72px;
    height: 72px;
    border-radius: 14px;
    overflow: hidden;
    flex-shrink: 0;
    background: #f3efe8;
}
.category-page-hero-media img { width: 100%; height: 100%; object-fit: cover; }
.category-page-hero-kicker {
    margin: 0 0 .15rem;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--primary, #e65100);
}
.category-page-hero-text h1 {
    margin: 0;
    font-size: clamp(1.35rem, 2.5vw, 1.85rem);
    line-height: 1.15;
}
.category-page-hero-meta {
    margin: .35rem 0 0;
    font-size: .85rem;
    color: var(--muted, #6b7280);
}
.category-page-subcats {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid rgba(0,0,0,.06);
}
.category-page-subcat {
    display: inline-flex;
    padding: .45rem .85rem;
    border-radius: 999px;
    background: #f7f4ef;
    color: inherit;
    font-size: .82rem;
    font-weight: 600;
    text-decoration: none;
}
.category-page-subcat.is-active,
.category-page-subcat:hover {
    background: var(--primary, #e65100);
    color: #fff;
}
.products-inline-sponsored {
    margin: 1rem 0 1.25rem;
    padding: 1rem 1rem .25rem;
    border-radius: 16px;
    border: 1px dashed rgba(230, 81, 0, .35);
    background: linear-gradient(180deg, #fffaf5 0%, #fff 100%);
}
.products-inline-sponsored-badge {
    display: inline-block;
    margin-bottom: .35rem;
    padding: .15rem .5rem;
    border-radius: 6px;
    background: #fff3e0;
    color: #e65100;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}
.products-inline-blocks-wrap { margin: 1.25rem 0; display: flex; flex-direction: column; gap: 1rem; }
.products-inline-promo {
    display: grid; grid-template-columns: 140px 1fr; gap: 1rem; align-items: center;
    padding: 1rem 1.15rem; border-radius: 14px; border: 1px solid #f0e6d8;
    background: linear-gradient(135deg, #fff8f0, #fff); text-decoration: none; color: inherit;
}
.products-inline-promo-media img { width: 100%; border-radius: 10px; object-fit: cover; max-height: 100px; }
.products-inline-promo-placeholder {
    width: 100%; aspect-ratio: 1; border-radius: 10px; background: var(--primary-light);
    display: flex; align-items: center; justify-content: center; font-size: 1.5rem; color: var(--primary);
}
.products-inline-promo-body strong { display: block; font-size: 1rem; margin-bottom: .25rem; }
.products-inline-promo-body p { font-size: .85rem; color: var(--muted); margin: 0 0 .5rem; }
.products-inline-cta { font-size: .8rem; font-weight: 700; color: var(--primary); }
.products-inline-wide {
    display: block; border-radius: 14px; overflow: hidden; border: 1px solid var(--border); position: relative;
}
.products-inline-wide img { width: 100%; max-height: 180px; object-fit: cover; display: block; }
.products-inline-wide-text {
    position: absolute; inset: auto 0 0 0; padding: 1rem 1.25rem;
    background: linear-gradient(transparent, rgba(0,0,0,.65)); color: #fff;
}
.products-inline-wide-text strong { display: block; font-size: 1.1rem; }
.ty-product-row--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.ty-product-row--5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.admin-row-card {
    border: 1px solid var(--border); border-radius: 12px; padding: 1rem; margin-bottom: .75rem; background: #fff;
}
.form-grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem 1rem; }
.form-grid-2 .field-full { grid-column: 1 / -1; }
@media (max-width: 900px) {
    .header-mega-dropdown { display: none !important; }
    .header-mega-nav--home .header-mega-scroll { overflow-x: auto; }
    .header-mega-nav--home .header-mega-item { flex: 0 0 auto; min-width: 68px; }
    .header-mega-nav--home .header-mega-link:not(.header-mega-link--has-image) { min-width: 68px; padding: .2rem .45rem; }
    .header-mega-nav--home .header-mega-link--has-image { min-width: 68px; padding: 0; }
    .header-mega-nav--home .header-mega-name { max-width: 76px; font-size: .68rem; }
    .header-mega-nav--listing .header-mega-scroll { overflow-x: auto; }
    .header-mega-nav--listing .header-mega-item { flex: 0 0 auto; min-width: 64px; }
    body.site-header-scrolled .header-mega-scroll { overflow-x: auto; }
    body.site-header-scrolled .header-mega-item { flex: 0 0 auto; min-width: 64px; }
    body.site-header-scrolled .header-mega-link:not(.header-mega-link--has-image) { min-width: 64px; }
    .shop-layout--products { display: block; }
    .products-page-toolbar { flex-direction: column; align-items: stretch; }
    .products-sort-form { margin-right: 0; width: 100%; justify-content: space-between; }
    .products-inline-promo { grid-template-columns: 1fr; }
}

/* Faz A: yasal, çerez, yorumlar */
.legal-page-wrap { padding-bottom: 3rem; background: linear-gradient(180deg, #f8fafc 0%, var(--bg, #fff) 220px); }
.legal-hero {
    background: linear-gradient(135deg, #1e293b 0%, #334155 100%);
    color: #fff; padding: 2rem 0 2.25rem; margin-bottom: 0;
}
.legal-breadcrumb {
    display: flex; flex-wrap: wrap; align-items: center; gap: .4rem;
    font-size: .78rem; opacity: .85; margin-bottom: .85rem;
}
.legal-breadcrumb a { color: #e2e8f0; text-decoration: none; }
.legal-breadcrumb a:hover { color: #fff; text-decoration: underline; }
.legal-breadcrumb span { opacity: .55; }
.legal-hero h1 { margin: 0 0 .5rem; font-size: clamp(1.5rem, 3vw, 2rem); font-weight: 800; line-height: 1.2; }
.legal-hero-desc { margin: 0; max-width: 620px; font-size: .92rem; line-height: 1.6; opacity: .88; }
.legal-page-layout {
    display: grid; grid-template-columns: 280px 1fr; gap: 1.5rem;
    align-items: start; padding-top: 1.75rem;
}
.legal-sidebar { display: flex; flex-direction: column; gap: 1rem; position: sticky; top: calc(var(--site-header-height, 72px) + 1rem); }
.legal-sidebar-card, .legal-company-card {
    background: #fff; border: 1px solid var(--border, #e2e8f0);
    border-radius: 14px; padding: 1.15rem 1.1rem; box-shadow: 0 4px 20px rgba(15, 23, 42, .05);
}
.legal-sidebar-title {
    margin: 0 0 .85rem; font-size: .82rem; font-weight: 700; text-transform: uppercase;
    letter-spacing: .04em; color: #64748b; display: flex; align-items: center; gap: .45rem;
}
.legal-sidebar-title i { color: var(--primary, #c45c26); }
.legal-nav { display: flex; flex-direction: column; gap: .35rem; }
.legal-nav-link {
    display: flex; align-items: center; gap: .6rem; padding: .65rem .75rem;
    border-radius: 10px; font-size: .86rem; font-weight: 500; color: #334155;
    text-decoration: none; transition: background .15s, color .15s;
}
.legal-nav-link i { width: 1.1rem; text-align: center; color: #94a3b8; font-size: .9rem; }
.legal-nav-link:hover { background: #f8fafc; color: var(--primary, #c45c26); }
.legal-nav-link:hover i { color: var(--primary, #c45c26); }
.legal-nav-link.is-active {
    background: linear-gradient(135deg, rgba(196, 92, 38, .1), rgba(196, 92, 38, .04));
    color: var(--primary, #c45c26); font-weight: 600;
    border: 1px solid rgba(196, 92, 38, .18);
}
.legal-nav-link.is-active i { color: var(--primary, #c45c26); }
.legal-company-card h3 { margin: 0 0 .65rem; font-size: .88rem; font-weight: 700; color: #0f172a; }
.legal-company-card p { margin: 0 0 .45rem; font-size: .82rem; line-height: 1.55; color: #475569; }
.legal-company-card p i { width: 1rem; color: #94a3b8; margin-right: .25rem; }
.legal-mersis { font-size: .75rem !important; color: #64748b !important; margin-top: .5rem !important; }
.legal-main { min-width: 0; }
.legal-prose-card {
    background: #fff; border: 1px solid var(--border, #e2e8f0);
    border-radius: 16px; overflow: hidden;
    box-shadow: 0 8px 32px rgba(15, 23, 42, .06);
}
.legal-prose-body {
    padding: 1.75rem 2rem; line-height: 1.75; color: #334155; font-size: .94rem;
}
.legal-prose-body > h2:first-child { margin-top: 0; }
.legal-prose-body h2 {
    margin: 1.75rem 0 .75rem; font-size: 1.15rem; font-weight: 700; color: #0f172a;
    padding-bottom: .45rem; border-bottom: 2px solid #f1f5f9;
}
.legal-prose-body h3 { margin: 1.25rem 0 .5rem; font-size: 1rem; font-weight: 700; color: #1e293b; }
.legal-prose-body p { margin: 0 0 .85rem; }
.legal-prose-body ul, .legal-prose-body ol { margin: 0 0 1rem; padding-left: 1.35rem; }
.legal-prose-body li { margin-bottom: .35rem; }
.legal-prose-body a { color: var(--primary, #c45c26); text-decoration: underline; }
.legal-prose-body strong { color: #0f172a; }
.legal-prose-body blockquote {
    margin: 1rem 0; padding: .85rem 1rem;
    border-left: 4px solid var(--primary, #c45c26);
    background: #f8fafc; color: #475569; border-radius: 0 8px 8px 0;
}
.legal-prose-body hr {
    border: none; border-top: 1px solid #e2e8f0; margin: 1.5rem 0;
}
.legal-prose-body table {
    width: 100%; border-collapse: collapse; margin: 1rem 0; font-size: .88rem;
}
.legal-prose-body th, .legal-prose-body td {
    border: 1px solid #e2e8f0; padding: .55rem .65rem; text-align: left;
}
.legal-prose-body th { background: #f8fafc; font-weight: 600; }
.legal-prose-body u { text-decoration: underline; }
.legal-prose-body s, .legal-prose-body strike { text-decoration: line-through; }
.legal-prose-footer {
    padding: .85rem 2rem; background: #f8fafc; border-top: 1px solid #e2e8f0;
    font-size: .82rem; color: #64748b; line-height: 1.55;
}
.legal-prose-footer p { margin: 0; }
.legal-prose-footer a { color: var(--primary, #c45c26); }
.legal-back-link { margin: 1rem 0 0; }
.legal-back-link a {
    display: inline-flex; align-items: center; gap: .45rem;
    font-size: .88rem; font-weight: 600; color: #64748b; text-decoration: none;
}
.legal-back-link a:hover { color: var(--primary, #c45c26); }
@media (max-width: 900px) {
    .legal-page-layout { grid-template-columns: 1fr; }
    .legal-sidebar { position: static; }
    .legal-nav { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: .4rem; }
    .legal-prose-body { padding: 1.25rem 1.15rem; }
    .legal-prose-footer { padding: .75rem 1.15rem; }
}
.legal-page { padding-bottom: 2rem; }
.legal-content { max-width: 800px; margin: 0 auto; line-height: 1.65; }
.legal-content h2, .legal-content h3 { margin-top: 1.25rem; }
.legal-back { max-width: 800px; margin: 1rem auto 0; }
.cookie-consent {
    position: fixed; bottom: 0; left: 0; right: 0; z-index: 9999;
    background: rgba(20, 24, 32, .96); color: #fff;
    padding: .55rem .85rem; box-shadow: 0 -2px 16px rgba(0,0,0,.2);
    border-top: 1px solid rgba(255,255,255,.08);
}
.cookie-consent-inner {
    max-width: 1100px; margin: 0 auto;
    display: flex; gap: .75rem; align-items: center; justify-content: space-between; flex-wrap: wrap;
}
.cookie-consent-msg {
    margin: 0; flex: 1; min-width: 200px;
    font-size: .78rem; line-height: 1.45; color: #e2e8f0;
}
.cookie-consent-msg i { margin-right: .35rem; color: #fbbf24; }
.cookie-consent-actions { display: flex; gap: .4rem; flex-shrink: 0; }
.cookie-consent a { color: #93c5fd; text-decoration: underline; }
.cookie-consent .btn-xs {
    padding: .35rem .65rem; font-size: .72rem; border-radius: 6px; line-height: 1.2;
}
.cookie-consent .btn-outline {
    border-color: rgba(255,255,255,.4); color: #fff; background: transparent;
}
.cookie-consent .btn-outline:hover { background: rgba(255,255,255,.1); color: #fff; }
.cookie-consent-text { flex: 1; min-width: 240px; }
.cookie-consent-text strong { display: block; margin-bottom: .35rem; font-size: .95rem; }
.cookie-consent-text p { margin: 0; font-size: .85rem; line-height: 1.55; color: #e2e8f0; }
.checkout-legal-checks { margin-top: 1rem; font-size: .88rem; line-height: 1.5; }
.checkout-legal-checks a { text-decoration: underline; }
.legal-consent-group { display: flex; flex-direction: column; gap: .75rem; margin: 1rem 0; }
.legal-consent-item {
    display: flex; align-items: flex-start; gap: .55rem; font-size: .88rem; line-height: 1.55; cursor: pointer;
}
.legal-consent-item input[type="checkbox"] {
    margin-top: .2rem; flex-shrink: 0; width: 1rem; height: 1rem; accent-color: var(--primary, #c45c26);
}
.legal-consent-item--optional { color: #475569; }
.legal-consent-item--required span { color: #1e293b; }
.consent-prefs-card { margin-top: 1.25rem; }
.login-page-form .legal-consent-group { margin: .5rem 0 1rem; }
.auth-form .legal-consent-group { margin: .75rem 0 1rem; }
.legal-pre-info { font-size: .9rem; max-height: 200px; overflow: auto; padding: .75rem; background: var(--bg-muted, #f8f9fa); border-radius: 8px; }
.review-list { list-style: none; padding: 0; margin: 0 0 1.5rem; }
.review-item { border-bottom: 1px solid var(--border); padding: 1rem 0; }
.review-meta { display: flex; gap: .75rem; align-items: center; flex-wrap: wrap; margin-bottom: .35rem; }
.review-form { margin-top: 1rem; display: grid; gap: .5rem; max-width: 520px; }
.checkout-hosted-payment { max-width: 640px; margin: 2rem auto; }

/* Product detail v2 */
.product-pdp-mobile-gallery,
.product-pdp-sticky-bar { display: none; }
.product-detail-page--v2 { padding: 0 0 4rem; }
.product-page-wide {
    width: 100%;
    padding: 1rem 1.5rem 0;
    box-sizing: border-box;
}
.product-detail-page--v2 .breadcrumb {
    display: flex; flex-wrap: wrap; align-items: center; gap: .35rem;
    font-size: .82rem; margin-bottom: 1.25rem;
}
.breadcrumb-sep { color: var(--muted); opacity: .6; }
.product-hero-shell {
    background: transparent;
    border: none;
    border-radius: 0;
    padding: 0 0 1.5rem;
    margin-bottom: 0;
    box-shadow: none;
}
.product-hero {
    display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr);
    gap: 1.5rem; align-items: stretch;
}
.product-gallery-col,
.product-buy-col {
    display: flex;
    flex-direction: column;
    height: 100%;
}
.product-gallery-card,
.product-buy-card {
    flex: 1 1 auto;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 1px solid #ecdcc8;
    border-radius: 16px;
    box-shadow: 0 8px 32px rgba(120, 80, 40, .06);
}
.product-gallery-card { padding: 1rem; }
.product-buy-card {
    padding: 1.5rem 1.65rem;
    position: sticky;
    top: calc(var(--site-header-height, 72px) + 1rem);
}
.product-buy-card__main { flex: 1; display: flex; flex-direction: column; }
.product-buy-card__footer { margin-top: auto; padding-top: 1rem; }
.product-detail-page--v2 .buy-actions { margin-bottom: 0; }
.product-detail-page--v2 .gallery-main {
    flex: 1 1 auto;
    min-height: 280px;
    aspect-ratio: 1;
    max-height: none;
    border: 1px solid #eee;
    border-radius: 12px;
    background: #fff;
}
.product-detail-page--v2 .product-gallery-card {
    background: #fff;
}
.product-detail-page--v2 .gallery-thumbs {
    margin-top: .85rem;
    gap: .5rem;
    background: #fff;
    padding-bottom: .15rem;
}
.product-detail-page--v2 .gallery-main img {
    width: 100%; height: 100%; min-height: 0; object-fit: contain; padding: 1rem;
}
.product-detail-page--v2 .gallery-thumb {
    border-radius: 10px;
    transition: border-color .2s, box-shadow .2s, transform .15s;
}
.product-detail-page--v2 .gallery-thumb:hover { transform: translateY(-1px); }
.product-detail-page--v2 .gallery-thumb.is-active { border-color: var(--primary); box-shadow: 0 0 0 2px rgba(var(--primary-rgb, 255, 107, 0), .25); }
.product-detail-page--v2 .product-title {
    font-size: clamp(1.25rem, 2.2vw, 1.7rem); line-height: 1.32; margin: .35rem 0 .75rem; font-weight: 800;
    letter-spacing: -.02em; color: #0f172a;
}
.product-rating-row { margin-bottom: .85rem; }
.product-rating-cta {
    display: inline-flex; align-items: center; gap: .4rem; font-size: .88rem;
    color: var(--primary); text-decoration: none; font-weight: 600;
}
.price-block--hero { margin: .5rem 0 1rem; }
.price-block--hero .price-row {
    display: flex; flex-wrap: wrap; align-items: baseline; gap: .65rem;
}
.price-installment-hint {
    margin: .45rem 0 0; font-size: .82rem; color: #64748b;
    display: flex; align-items: center; gap: .4rem;
}
.price-installment-hint i { color: var(--primary); }
.product-trust-badges {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: .5rem; margin: 1rem 0;
}
.trust-badge {
    display: flex; flex-direction: column; align-items: center; gap: .25rem;
    padding: .65rem .35rem; border-radius: 10px;
    background: linear-gradient(180deg, #fffdfa, #faf4eb);
    border: 1px solid #ecdcc8;
    font-size: .68rem; font-weight: 600; color: #475569; text-align: center;
}
.trust-badge i { color: var(--primary); font-size: 1rem; }
.product-highlight-box {
    margin-top: 1rem; padding: .9rem 1rem; border-radius: 12px;
    background: #faf4eb; border: 1px solid #ecdcc8;
}
.product-highlight-title {
    margin: 0 0 .45rem; font-size: .82rem; font-weight: 700; color: #334155;
    display: flex; align-items: center; gap: .4rem;
}
.product-highlight-title i { color: var(--primary); }
.product-excerpt {
    margin: 0; font-size: .88rem; line-height: 1.6; color: #64748b;
}
.product-meta-list {
    list-style: none; padding: .85rem 0 0; margin: .85rem 0 0; border-top: 1px solid #ecdcc8;
    display: grid; gap: .4rem; font-size: .82rem;
}
.product-meta-list li { display: flex; justify-content: space-between; gap: 1rem; }
.product-meta-list span { color: var(--muted); }
.product-tabs-card {
    background: #fff; border: 1px solid #ecdcc8; border-radius: 16px;
    box-shadow: 0 8px 32px rgba(120, 80, 40, .05); overflow: visible; margin-bottom: 2.5rem;
}
.product-tabs-nav {
    display: flex; flex-wrap: wrap; gap: 0; border-bottom: 1px solid #ecdcc8;
    background: #faf4eb; padding: 0 .5rem;
    border-radius: 16px 16px 0 0; overflow: hidden;
}
.product-tab {
    appearance: none; border: none; background: transparent; cursor: pointer;
    padding: 1rem 1.25rem; font-size: .92rem; font-weight: 600; color: var(--muted);
    border-bottom: 2px solid transparent; margin-bottom: -1px;
    transition: color .2s, background .2s;
}
.product-tab:hover { color: #334155; }
.product-tab.is-active { color: var(--primary); border-bottom-color: var(--primary); background: #fff; }
.tab-badge {
    display: inline-block; min-width: 1.25rem; padding: .1rem .4rem; margin-left: .25rem;
    border-radius: 999px; background: var(--primary); color: #fff; font-size: .72rem;
}
.product-tab-panel { display: none; padding: 1.75rem 2rem; }
.product-tab-panel.is-active { display: block; }
.product-tab-panel--description { padding: 2rem 2.25rem 2.5rem; }
.product-tab-panel--description.has-images { padding: 2rem 1.5rem 2.75rem; }
.product-description-content {
    width: 100%; max-width: none; line-height: 1.75; color: #334155; font-size: .96rem;
    text-align: left;
}
.product-detail-page--v2 .product-tab-panel--description .product-description-content {
    padding-left: .65rem;
    padding-right: .35rem;
}
.product-detail-page--v2 .product-description-content.prose {
    max-height: none; overflow: visible; padding: 0; background: transparent; border-radius: 0;
}
.product-description-content img {
    width: 100%; max-width: 100%; height: auto; border-radius: 12px; margin: 1.25rem 0;
    display: block; border: 1px solid #ecdcc8; background: #faf4eb;
}
.product-description-content.has-images img {
    padding: .75rem; box-shadow: 0 4px 20px rgba(120, 80, 40, .08);
}
.product-description-content p { margin: 0 0 1rem; }
.product-description-content table { width: 100%; border-collapse: collapse; margin: 1rem 0; }
.product-description-content td, .product-description-content th {
    border: 1px solid var(--border); padding: .5rem .75rem; font-size: .88rem;
}
.product-spec-table {
    width: 100%; max-width: 720px; border-collapse: collapse; font-size: .9rem;
}
.product-spec-table th,
.product-spec-table td { padding: .65rem .85rem; border-bottom: 1px solid var(--border); text-align: left; }
.product-spec-table th { width: 38%; color: var(--muted); font-weight: 600; background: #fafbfc; }
.spec-subtitle { margin: 1.5rem 0 .75rem; font-size: 1rem; }
.reviews-header { margin-bottom: 1.25rem; }
.reviews-summary {
    display: flex; align-items: center; gap: 1rem; padding: 1rem; border-radius: 12px; background: #fffbeb; border: 1px solid #fde68a;
}
.reviews-summary-score { font-size: 2.5rem; font-weight: 800; color: #b45309; line-height: 1; }
.reviews-summary p { margin: .25rem 0 0; font-size: .85rem; color: var(--muted); }
.reviews-empty-lead { font-size: .95rem; margin-bottom: .5rem; }
.product-detail-page--v2 .review-item {
    padding: 1rem 0; border-bottom: 1px solid var(--border);
}
.product-detail-page--v2 .review-meta {
    display: flex; gap: .75rem; align-items: flex-start; margin-bottom: .5rem;
}
.review-avatar {
    width: 36px; height: 36px; border-radius: 50%; background: var(--primary-light, #fff3e6);
    color: var(--primary); display: flex; align-items: center; justify-content: center; font-weight: 700;
}
.review-body { margin: 0; color: #475569; line-height: 1.6; }
.variant-chip--readonly { cursor: default; background: #f8fafc; }

/* Product detail v2 — masaüstü kompakt düzen (pdp sınıfı hariç) */
@media (min-width: 961px) {
    .product-detail-page--v2:not(.product-detail-page--pdp) .product-page-wide {
        max-width: 1140px;
        margin-left: auto;
        margin-right: auto;
        padding-left: 1.25rem;
        padding-right: 1.25rem;
    }

    .product-detail-page--v2:not(.product-detail-page--pdp) .product-hero {
        grid-template-columns: minmax(0, 45fr) minmax(300px, 55fr);
        gap: 1.25rem;
        align-items: start;
    }

    .product-detail-page--v2:not(.product-detail-page--pdp) .product-gallery-col,
    .product-detail-page--v2:not(.product-detail-page--pdp) .product-buy-col {
        height: auto;
    }

    .product-detail-page--v2:not(.product-detail-page--pdp) .product-gallery-card,
    .product-detail-page--v2:not(.product-detail-page--pdp) .product-buy-card {
        height: auto;
        flex: 0 1 auto;
    }

    .product-detail-page--v2:not(.product-detail-page--pdp) .product-gallery-card {
        padding: .85rem;
    }

    .product-detail-page--v2:not(.product-detail-page--pdp) .product-buy-card {
        padding: 1.15rem 1.25rem;
    }

    .product-detail-page--v2:not(.product-detail-page--pdp) .gallery-main {
        flex: 0 0 auto;
        width: 100%;
        max-width: 460px;
        max-height: 480px;
        min-height: 0;
        aspect-ratio: 1;
        margin: 0 auto;
    }

    .product-detail-page--v2 .gallery-main img {
        padding: .75rem;
    }

    .product-detail-page--v2 .gallery-thumbs {
        max-width: 460px;
        margin-left: auto;
        margin-right: auto;
    }

    .product-detail-page--v2 .product-title {
        font-size: clamp(1.05rem, 1.5vw, 1.35rem);
        margin-bottom: .6rem;
    }

    .product-detail-page--v2 .price-block--hero .price-current.lg {
        font-size: 1.55rem;
    }

    .product-detail-page--v2 .product-trust-badges {
        gap: .4rem;
        margin: .85rem 0;
    }

    .product-detail-page--v2 .trust-badge {
        padding: .5rem .3rem;
        font-size: .64rem;
    }

    .product-detail-page--v2 .product-buy-card__footer {
        padding-top: .75rem;
    }
}

@media (max-width: 960px) {
    .product-page-wide { padding: .75rem 1rem 0; }
    .product-hero { grid-template-columns: 1fr; }
    .product-buy-card { position: static; }
    .product-detail-page--v2:not(.product-detail-page--pdp) .gallery-main { min-height: 300px; }
    .product-detail-page--v2 .gallery-main img { min-height: 260px; }
    .product-trust-badges { grid-template-columns: 1fr; }
    .product-tabs-nav { overflow-x: auto; flex-wrap: nowrap; }
    .product-tab { white-space: nowrap; flex-shrink: 0; }
    .product-tab-panel,
    .product-tab-panel--description,
    .product-tab-panel--description.has-images { padding: 1.25rem 1rem; }
}

.dealer-add-catalog-box {
    margin-top: 1rem;
    padding: 1rem;
    background: #f3f4f6;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
}
.dealer-add-catalog-hint { font-size: .82rem; color: #6b7280; margin: .5rem 0 0; text-align: center; }
.dealer-add-catalog-msg.success { color: #065f46; font-size: .88rem; margin: 0 0 .75rem; }
.dealer-shipping-info {
    margin-top: 1rem;
    padding: .85rem 1rem;
    background: #faf6f0;
    border: 1px solid #e8dfd0;
    border-radius: 10px;
    font-size: .9rem;
    color: #4a4035;
}
.dealer-shipping-info p { margin: .35rem 0 0; font-size: .82rem; color: #6b5f52; }

/* Destek talepleri */
.support-page-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; flex-wrap: wrap; margin-bottom: 1.25rem; }
.support-page-sub { margin: .35rem 0 0; color: var(--muted); font-size: .9rem; }
.support-back-link { display: inline-flex; align-items: center; gap: .4rem; font-size: .85rem; color: var(--muted); text-decoration: none; margin-bottom: .5rem; }
.support-back-link:hover { color: var(--primary); }
.support-filter-tabs { display: flex; flex-wrap: wrap; gap: .4rem; margin-bottom: 1rem; }
.support-filter-tab { padding: .45rem .85rem; border-radius: 999px; border: 1px solid var(--border); font-size: .82rem; text-decoration: none; color: inherit; background: #fff; }
.support-filter-tab.is-active { background: var(--primary); color: #fff; border-color: var(--primary); }
.support-empty { text-align: center; padding: 3rem 1.5rem; background: #fff; border: 1px dashed var(--border); border-radius: 16px; }
.support-empty i { font-size: 2.5rem; color: var(--primary); margin-bottom: 1rem; }
.support-ticket-list { display: flex; flex-direction: column; gap: .65rem; }
.support-ticket-card { display: block; padding: 1rem 1.1rem; background: #fff; border: 1px solid var(--border); border-radius: 12px; text-decoration: none; color: inherit; transition: border-color .15s, box-shadow .15s; }
.support-ticket-card:hover { border-color: var(--primary); box-shadow: 0 4px 16px rgba(0,0,0,.06); }
.support-ticket-card.is-overdue { border-color: #fca5a5; background: #fffbfb; }
.support-ticket-card-top { display: flex; justify-content: space-between; gap: .75rem; margin-bottom: .5rem; }
.support-ticket-no { font-size: .78rem; color: var(--muted); font-family: ui-monospace, monospace; }
.support-ticket-card-meta { display: flex; flex-wrap: wrap; gap: .5rem .75rem; font-size: .78rem; color: var(--muted); align-items: center; }
.support-badge { display: inline-flex; padding: .15rem .55rem; border-radius: 999px; font-size: .72rem; font-weight: 600; }
.support-badge--open, .support-badge--awaiting_staff { background: #fef3c7; color: #92400e; }
.support-badge--awaiting_customer { background: #dbeafe; color: #1e40af; }
.support-badge--closed { background: #f1f5f9; color: #64748b; }
.support-badge--cat { background: #f8fafc; color: #475569; border: 1px solid var(--border); }
.support-badge--prio-urgent { background: #fee2e2; color: #991b1b; }
.support-badge--prio-high { background: #ffedd5; color: #c2410c; }
.support-badge--prio-low { background: #f1f5f9; color: #64748b; }
.support-badge--overdue { background: #fee2e2; color: #991b1b; }
.support-form-card { background: #fff; border: 1px solid var(--border); border-radius: 16px; padding: 1.25rem 1.35rem; }
.support-form-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 1rem; }
.support-field { display: flex; flex-direction: column; gap: .35rem; }
.support-field--wide { grid-column: 1 / -1; }
.support-field span { font-size: .8rem; font-weight: 600; color: #334155; }
.support-field input, .support-field select, .support-field textarea { width: 100%; padding: .65rem .75rem; border: 1px solid var(--border); border-radius: 10px; font: inherit; }
.support-sla-note { margin: 1rem 0 0; padding: .75rem 1rem; background: #eff6ff; border-radius: 10px; font-size: .82rem; color: #1e40af; }
.support-form-actions { display: flex; gap: .65rem; flex-wrap: wrap; margin-top: 1rem; }
.support-order-link { margin-bottom: 1rem; padding: .75rem 1rem; background: #f8fafc; border-radius: 10px; font-size: .88rem; }
.support-thread { display: flex; flex-direction: column; gap: .85rem; margin-bottom: 1.25rem; }
.support-msg { padding: 1rem 1.1rem; border-radius: 12px; border: 1px solid var(--border); }
.support-msg--customer { background: #fff; margin-right: 2rem; }
.support-msg--staff { background: #eff6ff; border-color: #bfdbfe; margin-left: 2rem; }
.support-msg-head { display: flex; justify-content: space-between; gap: .75rem; margin-bottom: .5rem; font-size: .82rem; }
.support-msg-head time { color: var(--muted); }
.support-msg-body { line-height: 1.6; font-size: .92rem; }
.support-reply-form label span { display: block; margin-bottom: .35rem; font-weight: 600; font-size: .85rem; }
.support-reply-form textarea { width: 100%; padding: .75rem; border: 1px solid var(--border); border-radius: 10px; font: inherit; margin-bottom: .75rem; }
.support-closed-note { padding: 1rem; background: #f8fafc; border: 1px solid var(--border); border-radius: 12px; color: var(--muted); font-size: .88rem; }
.support-ticket-badges { display: flex; gap: .4rem; flex-wrap: wrap; }
@media (max-width: 768px) {
    .support-msg--customer, .support-msg--staff { margin-left: 0; margin-right: 0; }
}
