/* BeySexShop premium storefront theme v1.0.3
   Layered over OpenCart default styles. Keeps core OpenCart components and JS intact. */
:root {
  --bxs-ink: #211b24;
  --bxs-ink-soft: #3c3340;
  --bxs-pink: #d82b78;
  --bxs-pink-dark: #b91f63;
  --bxs-pink-pale: #fff0f6;
  --bxs-lilac: #f8f3f7;
  --bxs-paper: #fff;
  --bxs-muted: #827985;
  --bxs-line: #eee7ed;
  --bxs-shadow: 0 16px 44px rgba(45, 24, 41, .08);
}
html { scroll-behavior: smooth; }
body { background: #fbf9fb; color: var(--bxs-ink); font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
a { color: var(--bxs-pink-dark); }
a:hover { color: var(--bxs-ink); }
#container.bxs-site { position: relative; display: flex; flex-direction: column; min-height: 100vh; margin-bottom: 0; background: #fbf9fb; }
.bxs-main { flex: 1 0 auto; width: 100%; }
#content, #column-left, #column-right { padding-bottom: 24px; }
@media (min-width: 576px) { #content, #column-left, #column-right { padding-bottom: 32px; } }
#alert { z-index: 9999; }

/* Utility strip */
#top.bxs-topbar { margin: 0; padding: 0; border: 0; background: var(--bxs-ink); color: #eee8ef; min-height: 38px; }
.bxs-topbar-inner { display: flex; align-items: center; justify-content: space-between; gap: 18px; min-height: 38px; }
.bxs-topbar-locale, .bxs-topbar-links { display: flex; align-items: center; gap: 15px; margin: 0; padding: 0; list-style: none; }
.bxs-topbar-control, .bxs-topbar-links a, .bxs-topbar-dropdown { color: #eee8ef !important; font-size: 12px; line-height: 1.4; text-decoration: none; }
.bxs-topbar-links a:hover, .bxs-topbar-dropdown:hover { color: #ff8fbd !important; }
.bxs-topbar-message { margin: 0; color: #f8d9e7; font-size: 11px; letter-spacing: .04em; text-align: center; }
.bxs-topbar-message i { color: #f06aa5; margin-right: 6px; }
.bxs-topbar-links li { white-space: nowrap; }
.bxs-topbar-links i { margin-right: 5px; color: #f06aa5; }
.bxs-topbar-dropdown { border: 0; background: transparent; padding: 0; }
.bxs-topbar .dropdown-menu { border: 1px solid var(--bxs-line); box-shadow: var(--bxs-shadow); }
@media (max-width: 767.98px) { .bxs-topbar-message { display: none; } .bxs-topbar-inner { min-height: 36px; } .bxs-topbar-links { gap: 12px; } .bxs-topbar-links li:first-child span { display: none; } }
@media (max-width: 420px) { .bxs-topbar-locale { gap: 7px; } .bxs-topbar-links { gap: 9px; } .bxs-topbar-links span { display: none; } }

/* Main header */
.bxs-header { background: #fff; border-bottom: 1px solid var(--bxs-line); }
.bxs-header-row { min-height: 104px; display: grid; grid-template-columns: minmax(170px, 245px) minmax(220px, 1fr) auto; align-items: center; gap: 30px; }
.bxs-logo { margin: 0 !important; text-align: left !important; }
.bxs-logo img { max-width: 225px !important; max-height: 76px; object-fit: contain; }
.bxs-wordmark { display: inline-flex; align-items: center; gap: 10px; color: var(--bxs-ink); text-decoration: none; }
.bxs-wordmark:hover { color: var(--bxs-ink); }
.bxs-wordmark-mark { display: grid; flex: 0 0 46px; width: 46px; height: 46px; place-items: center; border: 2px solid var(--bxs-pink); border-radius: 15px 15px 15px 4px; color: var(--bxs-pink); font-size: 24px; transform: rotate(-4deg); }
.bxs-wordmark-copy { display: flex; flex-direction: column; gap: 4px; }
.bxs-wordmark-copy > strong { color: var(--bxs-ink); font-size: 27px; font-weight: 900; letter-spacing: -.065em; line-height: 1; white-space: nowrap; }
.bxs-wordmark-copy > strong > span { color: var(--bxs-pink); }
.bxs-wordmark-copy > small { color: var(--bxs-muted); font-size: 10px; font-weight: 650; letter-spacing: .015em; }
.bxs-search form { margin: 0 !important; }
.bxs-search .input-group { border: 1px solid #eadfe7; border-radius: 999px; background: #fbf8fb; padding: 4px; box-shadow: inset 0 1px 2px rgba(0,0,0,.02); }
.bxs-search .form-control, .bxs-search .form-control-lg { height: 46px; border: 0; border-radius: 999px 0 0 999px !important; background: transparent; padding: 0 18px; font-size: 14px; box-shadow: none; }
.bxs-search .btn, .bxs-search .btn-light, .bxs-search .btn-lg { width: 48px; height: 46px; padding: 0; border: 0; border-radius: 50% !important; background: var(--bxs-pink); color: #fff; text-shadow: none; }
.bxs-search .btn:hover { background: var(--bxs-pink-dark); color: #fff; }
.bxs-header-cart { display: flex; align-items: center; gap: 10px; }
.bxs-cart-shortcut { display: inline-flex; align-items: center; gap: 8px; color: var(--bxs-ink); font-size: 13px; font-weight: 700; text-decoration: none; white-space: nowrap; }
.bxs-cart-shortcut i { color: var(--bxs-pink); font-size: 18px; }
#cart { margin: 0; min-width: 125px; }
#cart .d-grid { display: block !important; }
#cart .btn, #cart .btn-lg { min-height: 44px; padding: 10px 16px; border: 0; border-radius: 999px; background: var(--bxs-pink); color: #fff; font-size: 13px; font-weight: 750; line-height: 1.3; text-shadow: none; box-shadow: 0 7px 18px rgba(216,43,120,.18); }
#cart .btn:hover { background: var(--bxs-pink-dark); }
#cart .dropdown-menu { min-width: 320px; border: 1px solid var(--bxs-line); border-radius: 16px; background: #fff; box-shadow: var(--bxs-shadow); }
@media (max-width: 767.98px) { .bxs-header-row { min-height: auto; padding-top: 17px; padding-bottom: 16px; grid-template-columns: 1fr auto; gap: 15px; } .bxs-logo img { max-width: 175px !important; max-height: 56px; } .bxs-wordmark-mark { flex-basis: 40px; width: 40px; height: 40px; font-size: 21px; } .bxs-wordmark-copy > strong { font-size: 23px; } .bxs-wordmark-copy > small { font-size: 9px; } .bxs-search { grid-column: 1 / -1; grid-row: 2; } .bxs-header-cart { justify-self: end; } .bxs-cart-shortcut { display: none; } #cart { min-width: 110px; } #cart .btn { padding-inline: 13px; } }

/* Category navigation */
.bxs-navigation { background: var(--bxs-ink); }
.bxs-navigation > .container { padding-top: 0; padding-bottom: 0; }
#menu.bxs-menu { min-height: 54px; margin: 0; padding: 0 12px; border: 0; border-radius: 0; background: transparent; background-image: none; }
.bxs-menu .navbar-nav { align-items: stretch; gap: 3px; }
.bxs-menu .navbar-nav > li > a, #menu .navbar-nav > li > a { display: flex; align-items: center; min-height: 54px; padding: 0 15px; border-radius: 8px; color: #fff; background: transparent; font-size: 13px; font-weight: 650; text-shadow: none; text-decoration: none; }
.bxs-menu .navbar-nav > li > a:hover, .bxs-menu .navbar-nav > li.show > a { color: #fff; background: rgba(216,43,120,.24); }
.bxs-menu .dropdown-menu { min-width: 225px; margin-top: 0; padding: 12px; border: 1px solid var(--bxs-line); border-radius: 0 0 14px 14px; box-shadow: var(--bxs-shadow); }
.bxs-menu .dropdown-item { padding: 8px 10px; border-radius: 7px; color: var(--bxs-ink-soft); font-size: 13px; }
.bxs-menu .dropdown-item:hover { color: var(--bxs-pink-dark); background: var(--bxs-pink-pale); }
.bxs-menu .dropdown-inner { display: flex; flex-direction: column; }
.bxs-menu .dropdown-inner ul { width: 100%; min-width: 190px; margin: 0; }
.bxs-menu-all { margin-top: 7px; padding-top: 7px; border-top: 1px solid var(--bxs-line); }
.bxs-menu-all .dropdown-item { color: var(--bxs-pink-dark); font-weight: 750; }
.bxs-menu-all i { float: right; margin-top: 4px; }
.bxs-menu-label { color: #fff; font-size: 14px; font-weight: 750; line-height: 54px; }
.bxs-menu-toggle { color: #fff; border-color: rgba(255,255,255,.35); }
.bxs-menu-toggle:focus { box-shadow: 0 0 0 .2rem rgba(216,43,120,.22); }
@media (min-width: 992px) { .bxs-menu .dropdown:hover > .dropdown-menu { display: block; } .bxs-menu .dropdown-inner { flex-direction: row; } }
@media (max-width: 991.98px) { #menu.bxs-menu { padding: 0 8px; } .bxs-menu .navbar-collapse { flex-basis: 100%; } .bxs-menu .navbar-nav > li > a, #menu .navbar-nav > li > a { min-height: 44px; padding: 8px 12px; } .bxs-menu .dropdown-menu { border-radius: 10px; } }

/* Home hero */
.bxs-home { padding-bottom: 25px; }
.bxs-hero { position: relative; display: grid; grid-template-columns: 1.05fr .95fr; min-height: 390px; margin: 30px 0 22px; overflow: hidden; border-radius: 25px; background: radial-gradient(circle at 78% 50%, rgba(216,43,120,.35), transparent 35%), linear-gradient(115deg, #211923 0%, #302231 54%, #4d263e 100%); box-shadow: 0 18px 50px rgba(46,22,41,.16); }
.bxs-hero-copy { position: relative; z-index: 2; align-self: center; padding: 52px 0 48px 58px; color: #fff; }
.bxs-eyebrow { display: inline-flex; align-items: center; gap: 9px; margin-bottom: 18px; color: #ffc4dc; font-size: 10px; font-weight: 800; letter-spacing: .2em; }
.bxs-eyebrow span { width: 24px; height: 2px; background: #ed5b9d; }
.bxs-hero h1 { max-width: 550px; margin: 0 0 17px; color: #fff; font-size: clamp(34px, 4vw, 56px); font-weight: 800; letter-spacing: -.055em; line-height: 1.05; }
.bxs-hero h1 em { color: #f47eb2; font-style: normal; }
.bxs-hero-copy > p { max-width: 480px; margin: 0 0 25px; color: #e5d9e2; font-size: 15px; line-height: 1.8; }
.bxs-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 11px; }
.bxs-btn-primary { display: inline-flex; align-items: center; gap: 12px; padding: 13px 19px; border: 1px solid var(--bxs-pink); border-radius: 999px; background: var(--bxs-pink); color: #fff; font-size: 13px; font-weight: 750; }
.bxs-btn-primary:hover { border-color: #f05e9e; background: #f05e9e; color: #fff; }
.bxs-btn-ghost { padding: 13px 18px; border: 1px solid rgba(255,255,255,.35); border-radius: 999px; color: #fff; font-size: 13px; font-weight: 650; }
.bxs-btn-ghost:hover { border-color: #fff; background: rgba(255,255,255,.1); color: #fff; }
.bxs-hero-note { margin-top: 25px; color: #cbbac8; font-size: 11px; letter-spacing: .04em; }
.bxs-hero-note i { margin-right: 7px; color: #ed5b9d; }
.bxs-hero-art { position: relative; min-height: 360px; overflow: hidden; }
.bxs-art-glow { position: absolute; border-radius: 50%; filter: blur(1px); }
.bxs-art-glow-one { top: 9%; right: 9%; width: 300px; height: 300px; background: radial-gradient(circle, rgba(246,115,173,.32), rgba(246,115,173,0) 68%); }
.bxs-art-glow-two { right: 28%; bottom: -25%; width: 260px; height: 260px; background: radial-gradient(circle, rgba(255,255,255,.10), transparent 70%); }
.bxs-art-orbit { position: absolute; top: 50%; left: 48%; border: 1px solid rgba(255,205,226,.28); border-radius: 50%; transform: translate(-50%,-50%) rotate(-28deg); }
.bxs-art-orbit-one { width: 390px; height: 250px; }
.bxs-art-orbit-two { width: 300px; height: 410px; transform: translate(-50%,-50%) rotate(35deg); border-color: rgba(255,205,226,.16); }
.bxs-art-emblem { position: absolute; top: 50%; left: 48%; display: flex; align-items: center; justify-content: center; gap: 9px; width: 190px; height: 190px; border: 1px solid rgba(255,255,255,.48); border-radius: 50%; background: linear-gradient(145deg, rgba(255,255,255,.18), rgba(255,255,255,.035)); box-shadow: 0 25px 70px rgba(0,0,0,.18), inset 0 0 30px rgba(255,255,255,.08); transform: translate(-50%,-50%); backdrop-filter: blur(6px); }
.bxs-art-emblem > span { color: #fff; font-family: Georgia,serif; font-size: 100px; font-style: italic; line-height: 1; }
.bxs-art-emblem small { color: #ffd3e5; font-size: 9px; font-weight: 800; letter-spacing: .12em; line-height: 1.4; }
.bxs-art-caption { position: absolute; right: 9%; bottom: 13%; color: rgba(255,255,255,.65); font-size: 10px; letter-spacing: .25em; line-height: 1.8; text-align: right; }
.bxs-art-caption strong { color: #fff; font-size: 12px; }
.bxs-art-stamp { position: absolute; top: 15%; right: 13%; display: flex; align-items: center; gap: 8px; width: 80px; height: 80px; justify-content: center; border: 1px solid rgba(255,255,255,.36); border-radius: 50%; color: #fff; background: rgba(255,255,255,.07); transform: rotate(12deg); }
.bxs-art-stamp i { color: #ff94c0; }
.bxs-art-stamp span { font-size: 8px; font-weight: 800; letter-spacing: .1em; line-height: 1.3; }
.bxs-benefits { display: grid; grid-template-columns: repeat(4,1fr); gap: 12px; margin-bottom: 36px; padding: 16px 20px; border: 1px solid var(--bxs-line); border-radius: 16px; background: #fff; box-shadow: 0 10px 30px rgba(45,24,41,.04); }
.bxs-benefit { display: flex; align-items: center; gap: 12px; min-width: 0; padding: 6px 10px; }
.bxs-benefit + .bxs-benefit { border-left: 1px solid var(--bxs-line); }
.bxs-benefit-icon { display: grid; flex: 0 0 42px; width: 42px; height: 42px; place-items: center; border-radius: 13px; background: var(--bxs-pink-pale); color: var(--bxs-pink); font-size: 17px; }
.bxs-benefit strong, .bxs-benefit small { display: block; }
.bxs-benefit strong { color: var(--bxs-ink); font-size: 12px; font-weight: 800; }
.bxs-benefit small { margin-top: 4px; color: var(--bxs-muted); font-size: 10px; }
.bxs-home-content { padding-bottom: 5px; }
@media (max-width: 991.98px) { .bxs-hero { min-height: 340px; grid-template-columns: 1fr .8fr; } .bxs-hero-copy { padding-left: 34px; } .bxs-art-emblem { width: 155px; height: 155px; } .bxs-art-emblem > span { font-size: 78px; } .bxs-benefits { grid-template-columns: repeat(2,1fr); } .bxs-benefit:nth-child(3) { border-left: 0; } }
@media (max-width: 575.98px) { .bxs-hero { display: block; min-height: 0; margin-top: 18px; border-radius: 18px; } .bxs-hero-copy { padding: 35px 25px 30px; } .bxs-hero-copy > p { font-size: 13px; } .bxs-hero h1 { max-width: 340px; font-size: 38px; } .bxs-hero-art { display: none; } .bxs-btn-primary, .bxs-btn-ghost { padding: 11px 14px; font-size: 12px; } .bxs-benefits { gap: 4px; padding: 10px 6px; border-radius: 13px; } .bxs-benefit { gap: 8px; padding: 8px 5px; } .bxs-benefit-icon { flex-basis: 34px; width: 34px; height: 34px; font-size: 14px; } .bxs-benefit strong { font-size: 11px; } .bxs-benefit small { font-size: 9px; } }

/* General content, headings and breadcrumbs */
h1, h2, h3, h4, h5, h6 { color: var(--bxs-ink); letter-spacing: -.025em; }
h1 { font-size: clamp(27px, 3vw, 36px); font-weight: 800; }
#content > h1 { margin: 4px 0 22px; }
.breadcrumb { margin: 18px 0 22px; padding: 10px 14px; border: 1px solid var(--bxs-line); border-radius: 10px; background: #fff; }
.breadcrumb > li.breadcrumb-item { padding: 0 13px; text-shadow: none; font-size: 12px; }
.breadcrumb > li.breadcrumb-item:after { top: 0; right: -4px; width: 18px; height: 18px; border-color: #e9dce6; }
.breadcrumb > li.breadcrumb-item > a { color: var(--bxs-muted); }
.breadcrumb > li.breadcrumb-item:last-child { color: var(--bxs-ink); font-weight: 700; }
.btn-primary { border-color: var(--bxs-pink); background: var(--bxs-pink); }
.btn-primary:hover, .btn-primary:focus { border-color: var(--bxs-pink-dark); background: var(--bxs-pink-dark); }
.form-control:focus, .form-select:focus { border-color: #e58ab4; box-shadow: 0 0 0 .2rem rgba(216,43,120,.12); }

/* Product cards */
.product-thumb { height: 100%; overflow: hidden; border: 1px solid var(--bxs-line); border-radius: 15px; background: #fff; box-shadow: 0 7px 22px rgba(45,24,41,.035); transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.product-thumb:hover { border-color: #efc4d8; box-shadow: 0 15px 34px rgba(45,24,41,.10); transform: translateY(-3px); }
.product-thumb .image { display: flex; align-items: center; justify-content: center; min-height: 210px; padding: 14px; background: linear-gradient(180deg,#fff 0%,#fdf9fc 100%); }
.product-thumb .image img { max-height: 230px; width: auto; max-width: 100%; object-fit: contain; }
.product-thumb .content { position: relative; padding-bottom: 50px; }
.product-thumb .description { margin: 0; padding: 14px 16px 12px; }
.product-thumb .description h4 { min-height: 42px; margin: 0 0 7px; font-size: 14px; font-weight: 750; line-height: 1.45; }
.product-thumb .description h4 a { color: var(--bxs-ink); text-decoration: none; }
.product-thumb .description h4 a:hover { color: var(--bxs-pink-dark); }
.product-thumb .description p { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; min-height: 34px; margin-bottom: 10px; color: var(--bxs-muted); font-size: 11px; line-height: 1.55; }
.product-thumb .button { left: 0; display: flex; height: 46px; border-top: 1px solid var(--bxs-line); }
.product-thumb .button button { flex: 1; width: auto; border: 0; background: #fff; color: var(--bxs-pink-dark); line-height: 46px; transition: background .15s ease,color .15s ease; }
.product-thumb .button button:hover { background: var(--bxs-pink); color: #fff; }
.product-thumb .button button + button { border-left: 1px solid var(--bxs-line); }
.product-thumb .price { margin-top: 10px; color: var(--bxs-ink); font-size: 17px; }
.product-thumb .price-new { color: var(--bxs-pink-dark); font-weight: 850; }
.product-thumb .price-old { margin-left: 5px; color: #9d929b; font-size: 12px; }
.product-thumb .price-tax { margin-top: 3px; color: #9a9099; }
.product-thumb .rating { margin-top: 7px; }
#product-list { row-gap: 16px; }
#product-category .img-thumbnail { border-color: var(--bxs-line); border-radius: 14px; }
#product-category h3 { margin-top: 22px; font-size: 19px; font-weight: 800; }
#product-category #input-sort, #product-category #input-limit { border-color: var(--bxs-line); font-size: 12px; }
#product-category #compare-total { min-height: 38px; border-radius: 9px; font-size: 12px; }

/* Product detail */
#product-info .image { padding: 22px; border: 1px solid var(--bxs-line); border-radius: 18px; background: #fff; text-align: center; }
#product-info .image > a { display: block; }
#product-info .image > a > img { max-height: 520px; width: auto; max-width: 100%; object-fit: contain; border: 0; }
#product-info .image .img-thumbnail { border-color: var(--bxs-line); border-radius: 10px; }
#product-info .image > div { margin-top: 12px; }
#product-info .image > div img { max-width: 74px; max-height: 74px; object-fit: contain; }
#product-info h1 { margin: 4px 0 16px; font-size: clamp(26px,3vw,36px); }
#product-info .list-unstyled { color: var(--bxs-muted); font-size: 13px; line-height: 1.9; }
#product-info .price-new { color: var(--bxs-pink-dark); font-size: 29px; font-weight: 850; }
#product-info .price-old { color: #9d929b; font-size: 15px; }
#product-info #product { margin-top: 16px; padding: 18px; border: 1px solid var(--bxs-line); border-radius: 15px; background: #fff; }
#product-info #product h3 { font-size: 16px; font-weight: 800; }
#product-info #button-cart { min-height: 48px; border-radius: 9px; font-weight: 800; }
#product-info #input-quantity { max-width: 75px; }
#product-info .nav-tabs { gap: 5px; margin-top: 30px; border-bottom-color: var(--bxs-line); }
#product-info .nav-tabs .nav-link { border: 0; border-radius: 9px 9px 0 0; color: var(--bxs-muted); font-size: 13px; font-weight: 700; }
#product-info .nav-tabs .nav-link.active { color: var(--bxs-pink-dark); background: #fff; box-shadow: inset 0 -2px 0 var(--bxs-pink); }
#product-info .tab-content { padding: 22px; border: 1px solid var(--bxs-line); border-top: 0; border-radius: 0 0 13px 13px; background: #fff; line-height: 1.8; }
@media (max-width: 575.98px) { #product-info .image { padding: 12px; } #product-info #product { padding: 13px; } #product-info .tab-content { padding: 14px; } }

/* Modules and auxiliary components */
.module, [id^="carousel-"], .swiper { margin-bottom: 26px; }
#content .row > [class*="col"] > h3, #content > h3 { margin: 24px 0 16px; font-size: 20px; font-weight: 800; }
.list-group-item { border-color: var(--bxs-line); }
.alert { border-radius: 11px; }
.pagination .page-link { color: var(--bxs-pink-dark); border-color: var(--bxs-line); }
.pagination .active > .page-link { border-color: var(--bxs-pink); background: var(--bxs-pink); color: #fff; }

/* Footer */
footer.bxs-footer { position: relative; bottom: auto; flex: 0 0 auto; width: 100%; margin-top: 30px; padding: 0 0 20px; border: 0; border-top: 0; background: #201a23; color: #ded4de; }
.bxs-footer-benefits { display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; padding: 25px 0; border-bottom: 1px solid rgba(255,255,255,.12); }
.bxs-footer-benefits > div { display: flex; align-items: center; gap: 12px; }
.bxs-footer-benefits > div > i { display: grid; flex: 0 0 42px; width: 42px; height: 42px; place-items: center; border-radius: 13px; background: rgba(216,43,120,.16); color: #f276ad; font-size: 17px; }
.bxs-footer-benefits strong, .bxs-footer-benefits small { display: block; }
.bxs-footer-benefits strong { color: #fff; font-size: 12px; }
.bxs-footer-benefits small { margin-top: 4px; color: #ac9eab; font-size: 10px; }
.bxs-footer-links { padding: 25px 0 10px; }
footer.bxs-footer h5 { margin: 5px 0 14px; color: #fff; font-size: 13px; font-weight: 800; }
footer.bxs-footer ul { margin: 0; }
footer.bxs-footer li { margin-bottom: 9px; }
footer.bxs-footer a { color: #c7bac6; font-size: 12px; text-decoration: none; }
footer.bxs-footer a:hover { color: #ff82b8; }
.bxs-footer-bottom { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding-top: 16px; border-top: 1px solid rgba(255,255,255,.12); color: #a99eaa; font-size: 11px; }
.bxs-footer-bottom .bxs-footer-brand { color: #fff; font-size: 13px; font-weight: 800; }
.bxs-footer-bottom .bxs-footer-brand i { color: #ed5b9d; }
@media (max-width: 575.98px) { .bxs-footer-benefits { grid-template-columns: 1fr; gap: 13px; padding: 20px 6px; } .bxs-footer-links { row-gap: 18px; } .bxs-footer-bottom { align-items: flex-start; flex-direction: column; } }

/* Cookie notice remains functional but uses the new palette */
#cookie { height: auto; min-height: 92px; padding: 15px 18px; border-top: 3px solid var(--bxs-pink); background: #2a222c; }
#cookie div { color: #fff; font-size: 13px; }
#cookie .btn { border-radius: 999px; }

@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; } }


/* v1.0.1 refinements from first live preview */
@media (min-width: 992px) {
  #menu.bxs-menu .navbar-collapse { min-width: 0; flex-wrap: nowrap; }
  #menu.bxs-menu .navbar-nav { display: flex; flex-wrap: nowrap; justify-content: space-between; gap: 0; width: 100%; min-width: 0; }
  #menu.bxs-menu .navbar-nav > li { flex: 0 1 auto; min-width: 0; }
  #menu.bxs-menu .navbar-nav > li > a { min-height: 54px; padding: 0 7px; font-size: 11px; white-space: nowrap; letter-spacing: -.015em; }
}
@media (max-width: 767.98px) {
  .bxs-wordmark { gap: 8px; }
  .bxs-wordmark-mark { flex-basis: 36px; width: 36px; height: 36px; border-radius: 12px 12px 12px 4px; font-size: 18px; }
  .bxs-wordmark-copy > strong { font-size: 21px; }
  .bxs-wordmark-copy > small { font-size: 8px; }
}

/* v1.0.2: Featured products section refinement */
.bxs-featured-module { margin: 28px 0 40px; }
.bxs-featured-title {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 18px;
  padding-left: 13px;
  border-left: 4px solid var(--bxs-pink);
  color: var(--bxs-ink);
  font-size: clamp(20px, 2vw, 25px);
  font-weight: 850;
  letter-spacing: -.035em;
  line-height: 1.2;
}
.bxs-featured-module > .row { --bs-gutter-x: 14px; --bs-gutter-y: 14px; }
.bxs-featured-module .product-thumb { display: flex; height: 100%; flex-direction: column; }
.bxs-featured-module .product-thumb .image { min-height: 158px; height: 170px; padding: 12px; }
.bxs-featured-module .product-thumb .image img { max-height: 150px; width: auto; max-width: 100%; object-fit: contain; }
.bxs-featured-module .product-thumb .content { flex: 1 1 auto; padding-bottom: 48px; }
.bxs-featured-module .product-thumb .description { padding: 11px 12px 10px; }
.bxs-featured-module .product-thumb .description h4 { min-height: 38px; margin-bottom: 5px; font-size: 12px; line-height: 1.4; }
.bxs-featured-module .product-thumb .description p { display: none !important; }
.bxs-featured-module .product-thumb .price { margin-top: 8px; font-size: 15px; }
.bxs-featured-module .product-thumb .price-tax { font-size: 10px; }
.bxs-featured-module .product-thumb .rating { margin-top: 5px; }
.bxs-featured-module .product-thumb .button { height: 44px; }
.bxs-featured-module .product-thumb .button button { min-width: 0; height: 44px; line-height: 44px; }
.bxs-featured-module .product-thumb .button button:first-child {
  display: inline-flex;
  flex: 1 1 58%;
  align-items: center;
  justify-content: center;
  gap: 6px;
  background: var(--bxs-pink);
  color: #fff;
  font-size: 10px;
  font-weight: 750;
  line-height: 1;
}
.bxs-featured-module .product-thumb .button button:first-child::after { content: "Sepete Ekle"; display: inline-block; white-space: nowrap; }
.bxs-featured-module .product-thumb .button button:first-child:hover { background: var(--bxs-pink-dark); color: #fff; }
.bxs-featured-module .product-thumb .button button:nth-child(2),
.bxs-featured-module .product-thumb .button button:nth-child(3) { flex: 0 0 21%; }
@media (max-width: 575.98px) {
  .bxs-featured-module { margin-top: 22px; }
  .bxs-featured-module .product-thumb .image { min-height: 140px; height: 148px; }
  .bxs-featured-module .product-thumb .image img { max-height: 128px; }
  .bxs-featured-module .product-thumb .description { padding-inline: 9px; }
  .bxs-featured-module .product-thumb .description h4 { font-size: 11px; }
  .bxs-featured-module .product-thumb .button button:first-child { font-size: 9px; }
}


/* v1.0.4: Homepage category cards */
/* v1.1.1 - Reference-style illustrated category strip */
.bxs-categories {
  margin: 16px 0 22px;
}
.bxs-category-grid {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 10px;
}
.bxs-category-card {
  display: flex;
  min-width: 0;
  min-height: 110px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3px;
  padding: 7px 5px 8px;
  overflow: hidden;
  border: 1px solid #f8e4ee;
  border-radius: 17px;
  background: linear-gradient(145deg, #fff0f6 0%, #fbe5ef 100%);
  color: var(--bxs-ink);
  text-align: center;
  text-decoration: none !important;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.bxs-category-card .bxs-category-art {
  display: block;
  width: 82px;
  height: 67px;
  margin: 0 auto 1px;
  overflow: visible;
  filter: drop-shadow(0 3px 3px rgba(155, 26, 89, .10));
}
.bxs-category-card strong {
  display: block;
  max-width: 100%;
  color: #171217;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.2;
  overflow-wrap: anywhere;
}
.bxs-category-card > span { display: none; }
.bxs-category-card:hover,
.bxs-category-card:focus-visible {
  transform: translateY(-3px);
  border-color: #f0b6d0;
  background: #fff4f8;
  box-shadow: 0 9px 22px rgba(45, 24, 41, .09);
  color: var(--bxs-ink);
  outline: none;
}
.bxs-category-card:hover .bxs-category-art,
.bxs-category-card:focus-visible .bxs-category-art {
  transform: scale(1.06);
}
@media (max-width: 1199.98px) {
  .bxs-category-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 575.98px) {
  .bxs-categories { margin: 14px 0 20px; }
  .bxs-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
  .bxs-category-card { min-height: 112px; border-radius: 14px; }
  .bxs-category-card .bxs-category-art { width: 76px; height: 62px; }
  .bxs-category-card strong { font-size: 12px; }
}

/* v1.0.6: photographic homepage hero banner */
.bxs-hero-banner {
  display: block;
  width: 100%;
  margin: 24px 0 22px;
  overflow: hidden;
  border-radius: 22px;
  background: #24101d;
  box-shadow: 0 18px 48px rgba(46, 22, 41, .16);
  line-height: 0;
}
.bxs-hero-banner img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 3 / 1;
  object-fit: cover;
}
.bxs-hero-banner:focus-visible {
  outline: 3px solid var(--bxs-pink);
  outline-offset: 4px;
}
@media (max-width: 767.98px) {
  .bxs-hero-banner { margin: 16px 0 18px; border-radius: 14px; }
}
/* v1.0.7: Tüm Kategoriler ve yatay menü */

.bxs-navigation {
  background: #17131a;
}

.bxs-navigation > .container {
  display: flex;
  align-items: center;
}

#menu.bxs-menu {
  position: relative;
  display: flex;
  width: 100%;
  min-height: 58px;
  align-items: center;
  gap: 14px;
  padding: 0;
}

.bxs-all-categories {
  display: inline-flex;
  flex: 0 0 190px;
  min-height: 44px;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 0 15px;
  border: 0;
  border-radius: 9px;
  background: var(--bxs-pink);
  color: #fff;
  font-size: 13px;
  font-weight: 800;
}

.bxs-all-categories:hover,
.bxs-all-categories[aria-expanded="true"] {
  background: var(--bxs-pink-dark);
  color: #fff;
}

.bxs-all-categories > i:first-child {
  font-size: 15px;
}

.bxs-all-chevron {
  margin-left: auto;
  font-size: 10px;
}

.bxs-all-dropdown {
  top: calc(100% - 2px) !important;
  left: 0 !important;
  z-index: 1050;
  width: min(760px, calc(100vw - 30px));
  max-height: 70vh;
  overflow: auto;
  margin: 0;
  padding: 18px;
  border: 1px solid var(--bxs-line);
  border-radius: 0 0 14px 14px;
  background: #fff;
  box-shadow: 0 18px 45px rgba(0,0,0,.18);
}

.bxs-all-dropdown.show {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 14px 20px;
}

.bxs-all-group {
  min-width: 0;
}

.bxs-all-parent {
  display: block;
  margin-bottom: 7px;
  color: var(--bxs-ink);
  font-size: 13px;
  font-weight: 850;
  text-decoration: none;
}

.bxs-all-parent:hover {
  color: var(--bxs-pink-dark);
}

.bxs-all-children {
  display: grid;
  gap: 5px;
}

.bxs-all-children a {
  color: var(--bxs-muted);
  font-size: 11px;
  text-decoration: none;
}

.bxs-all-children a:hover {
  color: var(--bxs-pink-dark);
}

#menu.bxs-menu .navbar-collapse {
  min-width: 0;
  flex: 1 1 auto;
}

#menu.bxs-menu .bxs-menu-list {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
  gap: 2px;
  margin: 0;
  padding: 0;
}

#menu.bxs-menu .bxs-menu-list > li {
  min-width: 0;
}

#menu.bxs-menu .bxs-menu-list > li > a {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 0 8px;
  border-radius: 7px;
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  white-space: nowrap;
}

#menu.bxs-menu .bxs-menu-list > li > a:hover {
  background: rgba(216,43,120,.18);
  color: #ff9bc4;
}

#menu.bxs-menu .bxs-campaign-item > a {
  padding-inline: 13px;
  border: 1px solid rgba(216,43,120,.35);
  background: rgba(216,43,120,.16);
  color: #ff9bc4;
}

#menu.bxs-menu .bxs-campaign-item > a:hover {
  background: var(--bxs-pink);
  color: #fff;
}

#menu.bxs-menu .bxs-menu-toggle {
  display: none;
}

@media (max-width: 1199.98px) and (min-width: 992px) {
  #menu.bxs-menu {
    gap: 8px;
  }

  .bxs-all-categories {
    flex-basis: 168px;
    padding-inline: 11px;
    font-size: 12px;
  }

  #menu.bxs-menu .bxs-menu-list > li > a {
    padding-inline: 5px;
    font-size: 10px;
  }
}

@media (max-width: 991.98px) {
  #menu.bxs-menu {
    min-height: 54px;
    flex-wrap: wrap;
    gap: 10px;
    padding: 7px 0;
  }

  .bxs-all-categories {
    flex: 1 1 auto;
    min-height: 42px;
  }

  .bxs-all-dropdown {
    top: 100% !important;
    width: 100%;
  }

  .bxs-all-dropdown.show {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  #menu.bxs-menu .bxs-menu-toggle {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    gap: 8px;
    padding: 0 13px;
    border: 1px solid rgba(255,255,255,.28);
    border-radius: 8px;
    color: #fff;
    font-size: 12px;
  }

  #menu.bxs-menu .navbar-collapse {
    flex-basis: 100%;
    width: 100%;
  }

  #menu.bxs-menu .bxs-menu-list {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 4px;
    padding: 8px 0 5px;
  }

  #menu.bxs-menu .bxs-menu-list > li > a {
    display: flex;
    min-height: 42px;
    justify-content: flex-start;
    padding: 0 12px;
    border: 1px solid rgba(255,255,255,.09);
    background: rgba(255,255,255,.035);
    font-size: 12px;
  }

  #menu.bxs-menu .bxs-campaign-item {
    grid-column: 1 / -1;
  }

  #menu.bxs-menu .bxs-campaign-item > a {
    justify-content: center;
  }
}

@media (max-width: 420px) {
  .bxs-all-dropdown.show {
    grid-template-columns: 1fr;
  }
}

/* v1.0.8: Tüm Kategoriler açılır paneli – üç sütun görünümünü kesinleştir */
#menu.bxs-menu .bxs-all-wrap {
  position: relative;
  flex: 0 0 190px;
}

#menu.bxs-menu .bxs-all-dropdown.show {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  align-items: start;
  gap: 14px 22px;
  width: min(760px, calc(100vw - 30px));
  max-height: 70vh;
  overflow-y: auto;
  padding: 18px;
}

#menu.bxs-menu .bxs-all-group {
  min-width: 0;
  align-self: start;
}

#menu.bxs-menu .bxs-all-parent {
  display: block;
  margin: 0 0 7px;
  color: var(--bxs-ink);
  font-size: 13px;
  font-weight: 850;
  text-decoration: none;
}

#menu.bxs-menu .bxs-all-children {
  display: grid;
  gap: 5px;
}

#menu.bxs-menu .bxs-all-children a {
  display: block;
  color: var(--bxs-muted);
  font-size: 11px;
  text-decoration: none;
}

#menu.bxs-menu .bxs-all-parent:hover,
#menu.bxs-menu .bxs-all-children a:hover {
  color: var(--bxs-pink-dark);
}

@media (max-width: 991.98px) {
  #menu.bxs-menu .bxs-all-dropdown.show {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: min(100%, calc(100vw - 30px));
  }
}

@media (max-width: 480px) {
  #menu.bxs-menu .bxs-all-dropdown.show {
    grid-template-columns: 1fr !important;
  }
}



/* v1.0.9: Mobile cart layout – desktop table remains unchanged */
@media (max-width: 575.98px) {
  /* #output-cart is the actual wrapper in cart_list.twig */
  #output-cart.bxs-cart-table-wrap {
    display: block;
    width: 100%;
    overflow: visible;
  }

  #output-cart .bxs-cart-table,
  #output-cart .bxs-cart-table tbody {
    display: block;
    width: 100%;
    border: 0;
  }

  #output-cart .bxs-cart-table thead {
    display: none;
  }

  #output-cart .bxs-cart-table tbody tr {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 10px 12px;
    margin: 0 0 14px;
    padding: 13px;
    border: 1px solid var(--bxs-line);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 6px 18px rgba(45, 24, 41, .045);
  }

  #output-cart .bxs-cart-table tbody td {
    display: block;
    min-width: 0;
    padding: 0;
    border: 0;
    text-align: left !important;
    overflow-wrap: anywhere;
  }

  #output-cart .bxs-cart-table tbody td:nth-child(1) {
    grid-column: 1;
    grid-row: 1;
    align-self: start;
  }

  #output-cart .bxs-cart-table tbody td:nth-child(1) img {
    width: 76px;
    max-width: 100%;
    height: 82px;
    object-fit: contain;
    border: 1px solid var(--bxs-line);
    border-radius: 9px;
    background: #fff;
  }

  #output-cart .bxs-cart-table tbody td:nth-child(2) {
    grid-column: 2;
    grid-row: 1;
    align-self: center;
    color: var(--bxs-ink);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.5;
  }

  #output-cart .bxs-cart-table tbody td:nth-child(2) a {
    color: var(--bxs-ink);
    text-decoration: none;
  }

  #output-cart .bxs-cart-table tbody td:nth-child(2) small {
    color: var(--bxs-muted);
    font-weight: 400;
  }

  #output-cart .bxs-cart-table tbody td:nth-child(n+3) {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding-top: 9px;
    border-top: 1px solid #f1eaf0;
    font-size: 13px;
  }

  #output-cart .bxs-cart-table tbody td:nth-child(n+3)::before {
    content: attr(data-label);
    flex: 0 0 auto;
    color: var(--bxs-muted);
    font-size: 12px;
    font-weight: 650;
  }

  #output-cart .bxs-cart-table tbody td:nth-child(3) form {
    width: min(100%, 205px);
    margin-left: auto;
  }

  #output-cart .bxs-cart-table tbody td:nth-child(3) .input-group {
    flex-wrap: nowrap;
  }

  #output-cart .bxs-cart-table tbody td:nth-child(3) input[name="quantity"] {
    min-width: 42px;
    text-align: center;
  }

  #output-cart .bxs-cart-table tbody td:nth-child(3) .btn {
    min-width: 40px;
  }

  #output-cart .bxs-cart-table tbody td:nth-child(4),
  #output-cart .bxs-cart-table tbody td:nth-child(5) {
    font-weight: 750;
  }

  #output-cart .bxs-cart-table tbody td:nth-child(5) {
    color: var(--bxs-pink-dark);
    font-size: 15px;
  }

  /* OpenCart totals footer uses id="checkout-total" */
  #checkout-total {
    display: block;
    width: 100%;
    padding: 10px 12px;
    border: 1px solid var(--bxs-line);
    border-radius: 12px;
    background: #fff;
  }

  #checkout-total tr {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 7px 0;
    border: 0;
  }

  #checkout-total td {
    display: block;
    width: auto;
    padding: 0;
    border: 0;
    text-align: right !important;
    font-size: 13px;
  }

  #checkout-total td:first-child {
    text-align: left !important;
  }

  #checkout-total td[colspan] {
    flex: 1;
  }

  #checkout-total td:last-child {
    flex: 0 0 auto;
    font-weight: 800;
  }

  #output-cart + br {
    display: none;
  }

  #output-cart ~ .row {
    display: flex;
    flex-wrap: nowrap;
    gap: 10px;
    margin-top: 18px;
  }

  #output-cart ~ .row > .col {
    min-width: 0;
    padding: 0;
  }

  #output-cart ~ .row .btn {
    width: 100%;
    min-height: 44px;
    padding: 10px 8px;
    font-size: 12px;
    white-space: nowrap;
  }
}


/* v1.0.9 final refinement: labels for cart cells (cart_list.twig has no data-label attributes) */
@media (max-width: 575.98px) {
  #output-cart .bxs-cart-table tbody td:nth-child(3)::before { content: "Adet"; }
  #output-cart .bxs-cart-table tbody td:nth-child(4)::before { content: "Birim fiyat"; }
  #output-cart .bxs-cart-table tbody td:nth-child(5)::before { content: "Toplam"; }

  #output-cart .bxs-cart-table {
    table-layout: fixed;
    border-collapse: separate;
    border-spacing: 0;
  }

  #output-cart .bxs-cart-table tbody {
    display: block;
    width: 100%;
  }

  #output-cart .bxs-cart-table tbody tr {
    width: 100%;
    box-sizing: border-box;
  }

  #output-cart .bxs-cart-table tbody td:nth-child(3) form {
    max-width: 205px;
  }

  #output-cart .bxs-cart-table tbody td:nth-child(3) .input-group > * {
    flex: 0 0 auto;
  }

  #output-cart .bxs-cart-table tbody td:nth-child(3) input[name="quantity"] {
    width: 64px;
    max-width: 64px;
  }

  #output-cart .bxs-cart-table tfoot#checkout-total {
    display: block;
    width: 100%;
    margin-top: 10px;
  }
}


/* v1.0.9 FIX: mobile cart selectors match the actual cart_list.twig markup.
   Actual markup: #output-cart > table.table.table-bordered; no bxs-cart-* classes. */
@media (max-width: 575.98px) {
  #checkout-cart #output-cart {
    width: 100%;
    overflow: visible !important;
  }

  #checkout-cart #output-cart > table.table {
    display: block;
    width: 100% !important;
    margin: 0;
    border: 0;
    border-collapse: separate;
    border-spacing: 0;
    table-layout: fixed;
  }

  #checkout-cart #output-cart > table.table > thead {
    display: none !important;
  }

  #checkout-cart #output-cart > table.table > tbody {
    display: block;
    width: 100%;
  }

  #checkout-cart #output-cart > table.table > tbody > tr {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 10px 12px;
    width: 100%;
    box-sizing: border-box;
    margin: 0 0 14px;
    padding: 13px;
    border: 1px solid var(--bxs-line);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 6px 18px rgba(45, 24, 41, .045);
  }

  #checkout-cart #output-cart > table.table > tbody > tr > td {
    display: block;
    min-width: 0;
    padding: 0;
    border: 0;
    text-align: left !important;
    overflow-wrap: anywhere;
    background: transparent;
  }

  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(1) {
    grid-column: 1;
    grid-row: 1;
    align-self: start;
  }

  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(1) img {
    display: block;
    width: 76px;
    max-width: 100%;
    height: 82px;
    object-fit: contain;
    border: 1px solid var(--bxs-line);
    border-radius: 9px;
    background: #fff;
  }

  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(2) {
    grid-column: 2;
    grid-row: 1;
    align-self: center;
    color: var(--bxs-ink);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.5;
  }

  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(2) a {
    color: var(--bxs-ink);
    text-decoration: none;
  }

  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(2) ul {
    margin-top: 5px;
  }

  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(2) small {
    color: var(--bxs-muted);
    font-size: 10px;
    font-weight: 400;
  }

  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(n+3) {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding-top: 9px;
    border-top: 1px solid #f1eaf0;
    font-size: 13px;
  }

  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(3)::before {
    content: "Adet";
  }

  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(4)::before {
    content: "Birim fiyat";
  }

  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(5)::before {
    content: "Toplam";
  }

  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(n+3)::before {
    flex: 0 0 auto;
    color: var(--bxs-muted);
    font-size: 12px;
    font-weight: 650;
  }

  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(3) form {
    width: min(100%, 205px);
    margin: 0 0 0 auto;
  }

  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(3) .input-group {
    display: flex;
    flex-wrap: nowrap;
  }

  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(3) input[name="quantity"] {
    flex: 1 1 48px;
    width: 48px;
    min-width: 40px;
    text-align: center;
  }

  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(3) .btn {
    flex: 0 0 40px;
    min-width: 40px;
    padding-inline: 8px;
  }

  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(4) {
    font-weight: 700;
  }

  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(5) {
    color: var(--bxs-pink-dark);
    font-size: 15px;
    font-weight: 800;
  }

  #checkout-cart #output-cart > table.table > tfoot#checkout-total {
    display: block;
    width: 100%;
    margin-top: 10px;
    padding: 10px 12px;
    border: 1px solid var(--bxs-line);
    border-radius: 12px;
    background: #fff;
  }

  #checkout-cart #output-cart > table.table > tfoot#checkout-total > tr {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 7px 0;
    border: 0;
    background: transparent;
  }

  #checkout-cart #output-cart > table.table > tfoot#checkout-total > tr > td {
    display: block;
    width: auto;
    padding: 0;
    border: 0;
    background: transparent;
    font-size: 13px;
  }

  #checkout-cart #output-cart > table.table > tfoot#checkout-total > tr > td:first-child {
    flex: 1 1 auto;
    text-align: left !important;
  }

  #checkout-cart #output-cart > table.table > tfoot#checkout-total > tr > td:last-child {
    flex: 0 0 auto;
    text-align: right !important;
    font-weight: 800;
  }

  #checkout-cart #output-cart + br {
    display: none;
  }

  #checkout-cart #output-cart ~ .row {
    display: flex;
    flex-wrap: nowrap;
    gap: 10px;
    margin: 18px 0 0;
  }

  #checkout-cart #output-cart ~ .row > .col {
    flex: 1 1 0;
    min-width: 0;
    padding: 0;
  }

  #checkout-cart #output-cart ~ .row .btn {
    display: flex;
    width: 100%;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    padding: 10px 7px;
    font-size: 11px;
    white-space: normal;
  }
}


/* Final cart selector correction: actual OpenCart cart container is #checkout-cart */
@media (max-width: 575.98px) {
  #checkout-cart #output-cart { width: 100%; overflow: visible !important; }
  #checkout-cart #output-cart > table.table { display: block; width: 100% !important; table-layout: fixed; }
  #checkout-cart #output-cart > table.table > thead { display: none !important; }
  #checkout-cart #output-cart > table.table > tbody { display: block; width: 100%; }
  #checkout-cart #output-cart > table.table > tbody > tr {
    display: grid; grid-template-columns: 76px minmax(0, 1fr); gap: 10px 12px;
    width: 100%; box-sizing: border-box; margin: 0 0 14px; padding: 13px;
    border: 1px solid var(--bxs-line); border-radius: 14px; background: #fff;
    box-shadow: 0 6px 18px rgba(45, 24, 41, .045);
  }
  #checkout-cart #output-cart > table.table > tbody > tr > td {
    display: block; min-width: 0; padding: 0; border: 0; text-align: left !important;
    overflow-wrap: anywhere; background: transparent;
  }
  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(1) { grid-column: 1; grid-row: 1; }
  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(1) img {
    display: block; width: 76px; max-width: 100%; height: 82px; object-fit: contain;
    border: 1px solid var(--bxs-line); border-radius: 9px; background: #fff;
  }
  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(2) {
    grid-column: 2; grid-row: 1; align-self: center; color: var(--bxs-ink);
    font-size: 13px; font-weight: 700; line-height: 1.5;
  }
  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(2) a { overflow-wrap: anywhere; }
  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(2) small {
    display: block; margin-top: 5px; color: var(--bxs-muted); font-size: 10px; font-weight: 400;
  }
  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(n+3) {
    grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between;
    gap: 12px; padding-top: 9px; border-top: 1px solid #f1eaf0; font-size: 13px;
  }
  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(3)::before { content: "Adet"; }
  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(4)::before { content: "Birim fiyat"; }
  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(5)::before { content: "Toplam"; }
  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(n+3)::before {
    flex: 0 0 auto; color: var(--bxs-muted); font-size: 12px; font-weight: 650;
  }
  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(3) form {
    width: min(100%, 205px); margin: 0 0 0 auto;
  }
  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(3) .input-group { display: flex; flex-wrap: nowrap; }
  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(3) input[name="quantity"] {
    flex: 1 1 48px; width: 48px; min-width: 40px; text-align: center;
  }
  #checkout-cart #output-cart > table.table > tbody > tr > td:nth-child(3) .btn {
    flex: 0 0 40px; min-width: 40px; padding-inline: 8px;
  }
  #checkout-cart #output-cart > table.table > tfoot#checkout-total {
    display: block; width: 100%; margin-top: 10px; padding: 10px 12px;
    border: 1px solid var(--bxs-line); border-radius: 12px; background: #fff;
  }
  #checkout-cart #output-cart > table.table > tfoot#checkout-total > tr {
    display: flex; align-items: center; justify-content: space-between; gap: 12px;
    padding: 7px 0; border: 0; background: transparent;
  }
  #checkout-cart #output-cart > table.table > tfoot#checkout-total > tr > td {
    display: block; width: auto; padding: 0; border: 0; background: transparent; font-size: 13px;
  }
  #checkout-cart #output-cart > table.table > tfoot#checkout-total > tr > td:first-child { flex: 1 1 auto; text-align: left !important; }
  #checkout-cart #output-cart > table.table > tfoot#checkout-total > tr > td:last-child { flex: 0 0 auto; text-align: right !important; font-weight: 800; }
}

/* v1.1.0 - Homepage audience image banners */
#common-home .bxs-audience-banners {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: stretch;
    gap: 16px !important;
    width: 100%;
    margin: 28px 0 20px !important;
}

#common-home .bxs-audience-banners > .bxs-audience-banner {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 0;
    border-radius: 14px !important;
    background: transparent !important;
    box-shadow: 0 8px 24px rgba(31, 12, 25, .10);
    line-height: 0 !important;
}

#common-home .bxs-audience-banners > .bxs-audience-banner > img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    aspect-ratio: 1064 / 429;
    object-fit: cover;
}

@media (max-width: 767px) {
    #common-home .bxs-audience-banners {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 12px !important;
    }
}


/* v1.1.2 - Mobile horizontal carousel for homepage featured products only */
@media (max-width: 575.98px) {
  #common-home .bxs-featured-module > .row {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 12px;
    margin-right: 0;
    margin-left: 0;
    padding: 0 2px 10px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: 2px;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
  }

  #common-home .bxs-featured-module > .row::-webkit-scrollbar {
    display: none;
  }

  #common-home .bxs-featured-module > .row > [class*="col"] {
    flex: 0 0 78% !important;
    width: 78% !important;
    max-width: 78% !important;
    min-width: 0;
    padding-right: 0 !important;
    padding-left: 0 !important;
    scroll-snap-align: start;
  }

  #common-home .bxs-featured-module .product-thumb {
    height: 100%;
  }
}
