/* =============================================
   ATROPHY — Custom CSS
   White Clean Streetwear Look (inspired by 5mc2.com)
   ============================================= */

/* ----- CSS Variables ----- */
:root {
    --atrophy-bg: #fff;
    --atrophy-text: #1c1c1c;
    --atrophy-gray: #f6f6f6;
    --atrophy-border: #eee;
    --atrophy-dark: #000;
    --atrophy-white: #fff;
    --atrophy-font: 'Inter', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    --atrophy-letter-spacing: -0.03em;
    --slide-panel-width: 380px;
}

/* ----- Global Reset / Base ----- */
body {
    font-family: var(--atrophy-font) !important;
    background-color:#dcd2cd;
    color: var(--atrophy-text) !important;
    letter-spacing: var(--atrophy-letter-spacing);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

* {
    border-radius: 0 !important;
    box-shadow: none !important;
    text-shadow: none !important;
}

a {
    color: var(--atrophy-text);
    text-decoration: none;
    transition: opacity 0.2s ease;
}

a:hover {
    color: var(--atrophy-text);
    opacity: 0.6;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
    font-family: var(--atrophy-font) !important;
    text-transform: uppercase;
    letter-spacing: var(--atrophy-letter-spacing);
    font-weight: 700;
    color: var(--atrophy-text);
}

/* ----- Top Bar Ticker ----- */
.atrophy-topbar {
    background: var(--atrophy-dark);
    color: var(--atrophy-white);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    overflow: hidden;
    height: 32px;
    line-height: 32px;
    position: relative;
    display: flex;
    align-items: center;
}

.atrophy-topbar__content {
    flex: 1;
    overflow: hidden;
    position: relative;
}

.atrophy-topbar-track {
    display: flex;
    animation: topbar-scroll 20s linear infinite;
    white-space: nowrap;
}

.atrophy-topbar-item {
    flex-shrink: 0;
    padding: 0 40px;
}

@keyframes topbar-scroll {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

/* Social icons - hidden on desktop, visible on mobile */
.atrophy-topbar__social {
    display: none;
    align-items: center;
    gap: 12px;
    padding-right: 16px;
    padding-left: 30px;
    flex-shrink: 0;
    position: relative;
}

.atrophy-topbar__social::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 30px;
    background: linear-gradient(to right, var(--atrophy-dark), transparent);
    pointer-events: none;
}

.atrophy-topbar__social-link {
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 1;
    transition: opacity 0.2s ease;
    text-decoration: none;
}

.atrophy-topbar__social-link:hover {
    opacity: 0.7;
}

.atrophy-topbar__social-link i {
    font-size: 14px;
}

.atrophy-topbar__social-link svg {
    display: block;
}

@media (max-width: 991px) {
    .atrophy-topbar__social {
        display: flex;
    }
}

/* ----- Hide Default Header Nav (top bar) ----- */
.header-nav {
    display: none !important;
}

/* ----- Desktop Header ----- */
#desktop-header {
    background: transparent;

}

.header-top {
    background:transparent  ;
    padding: 0 !important;
    border: none !important;
    box-shadow: none !important;
}

#desktop-header-container {
    padding-top: 12px;
    padding-bottom: 12px;
}

/* ----- Sticky Header ----- */
#header.is-sticky #desktop-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
    background: var(--atrophy-bg);
    border-bottom: 1px solid var(--atrophy-border);
    transition: transform 0.3s ease;
}

#header.is-sticky .atrophy-topbar {
    display: none;
}

#header.is-sticky + #wrapper {
    padding-top: 100px;
}

/* Sticky menu container stays with header */
#header.is-sticky .iqit-megamenu-container {
    position: fixed;
    top: 54px;
    left: 0;
    right: 0;
    z-index: 999;
    border-bottom: 1px solid var(--atrophy-border);
    padding-top: 0;
    padding-bottom: 6px;
}

/* ----- Logo ----- */
.atrophy-logo {
    font-size: 22px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    color: var(--atrophy-text);
    text-decoration: none;
    white-space: nowrap;
}

.atrophy-logo:hover {
    color: var(--atrophy-text);
    opacity: 1;
}

#desktop_logo a,
#desktop_logo img {
    max-height: 36px;
}

/* ----- Header Menu (center) ----- */
.col-header-center {
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ----- Desktop Menu (iqitmegamenu) ----- */
.iqitmegamenu-wrapper,
#desktop-header .iqitmegamenu-wrapper,
.header-top .iqitmegamenu-wrapper,
#cbp-hrmenu.cbp-horizontal {
    background: #fff !important;
    background-color:#fff !important;
}

#iqitmegamenu-horizontal,
.iqitmegamenu-wrapper #iqitmegamenu-horizontal,
#cbp-hrmenu #iqitmegamenu-horizontal {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
}

.col-header-center .iqitmegamenu-wrapper,
.col-header-center #iqitmegamenu-horizontal {
    text-align: center;
}

#iqitmegamenu-horizontal {
    display: flex;
    justify-content: center;
    width: 100%;
}

/* Menu links - 5mc2 style */
#iqitmegamenu-horizontal > li > a,
.iqitmegamenu-wrapper #iqitmegamenu-horizontal > li > a,
.cbp-horizontal > ul > li > a,
.cbp-horizontal > ul > li > a:not([href]):not([tabindex]),
.cbp-horizontal > ul > li > .cbp-main-link,
#cbp-hrmenu.cbp-horizontal > ul > li > a {
    font-size: 12px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.08em !important;
    font-weight: 500 !important;
    color: #2d2d2d !important;
    padding: 6px 10px !important;
    line-height: 1.5 !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    border-left: none !important;
    border-right: none !important;
}

#iqitmegamenu-horizontal > li > a:hover,
.iqitmegamenu-wrapper #iqitmegamenu-horizontal > li > a:hover,
.cbp-horizontal > ul > li > a:hover,
.cbp-horizontal > ul > li.cbp-hropen > a,
.cbp-horizontal > ul > li.cbp-hropen > a:not([href]):not([tabindex]),
#cbp-hrmenu.cbp-horizontal > ul > li > a:hover {
    opacity: 0.6;
    background: transparent !important;
    background-color: transparent !important;
    color: #2d2d2d !important;
}

/* Menu bar wrapper - ensure white/transparent */
#desktop-header .header-top-main,
#desktop-header .iqitmegamenu-horizontal-bar,
.iqitmegamenu-horizontal-bar {
    background: transparent !important;
    background-color: transparent !important;
}

/* Menu container - centered, below logo */
.iqit-megamenu-container {
    display: flex;
    justify-content: center;
    padding-top: 0;
    padding-bottom: 8px;
}

.iqit-megamenu-container .iqitmegamenu-wrapper {
    width: auto;
}

/* Sticky header - keep menu below logo */
@media (min-width: 992px) {
    .sticky-desktop-wrapper #desktop-header.stuck-header,
    .stuck-menu {
        background: #fff !important;
    }

    .stuck-header .header-top {
        padding-top: 8px !important;
        padding-bottom: 0 !important;
    }

    .stuck-header + .iqit-megamenu-container,
    .stuck-menu .iqit-megamenu-container {
        padding-top: 0;
        padding-bottom: 6px;
    }

    /* When menu wrapper has .stuck-menu class - position below header */
    .iqitmegamenu-wrapper.stuck-menu,
    .iqitmegamenu-wrapper.stuck-header-element.stuck-menu {
        position: fixed !important;
        top: 54px !important;
        left: 0 !important;
        right: 0 !important;
        z-index: 999 !important;
        background: #fff !important;
        border-bottom: 1px solid var(--atrophy-border) !important;
        padding: 0 !important;
        display: flex !important;
        justify-content: center !important;
    }

    .iqitmegamenu-wrapper.stuck-menu #iqitmegamenu-horizontal,
    .iqitmegamenu-wrapper.stuck-header-element.stuck-menu #iqitmegamenu-horizontal {
        justify-content: center !important;
    }
}

/* ----- Header Icons (right) ----- */
.col-header-right {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 18px;
}

.col-header-right .header-icon,
.col-header-right a,
.col-header-right button {
    color: var(--atrophy-text);
    font-size: 14px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 4px;
    position: relative;
}

/* Cart icon badge */
.cart-products-count {
    position: absolute;
    top: -4px;
    right: -8px;
    background: var(--atrophy-dark);
    color: var(--atrophy-white);
    font-size: 9px;
    width: 16px;
    height: 16px;
    line-height: 16px;
    text-align: center;
    border-radius: 50% !important;
}

/* Hamburger button */
.atrophy-hamburger {
    display: flex;
   /* flex-direction: column;*/
    justify-content: center;
    gap: 4px;
    width: 22px;
    height: 22px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    -webkit-appearance: none;
    appearance: none;
}

.atrophy-hamburger span {
    display: block;
    width: 100%;
    height: 2px;
    background: var(--atrophy-text);
    transition: transform 0.3s ease, opacity 0.3s ease;
    flex-shrink: 0;
}

.atrophy-hamburger.is-active span:nth-child(1) {
    transform: translateY(5.5px) rotate(45deg);
}

.atrophy-hamburger.is-active span:nth-child(2) {
    opacity: 0;
}

.atrophy-hamburger.is-active span:nth-child(3) {
    transform: translateY(-5.5px) rotate(-45deg);
}

/* ----- Slide Panel ----- */
.atrophy-slide-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.4);
    z-index: 9998;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.atrophy-slide-overlay.is-visible {
    opacity: 1;
    visibility: visible;
}

.atrophy-slide-panel {
    position: fixed;
    top: 0;
    right: 0;
    width: var(--slide-panel-width);
    max-width: 90vw;
    height: 100vh;
    background: var(--atrophy-bg);
    z-index: 9999;
    transform: translateX(100%);
    transition: transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
}

.atrophy-slide-panel.is-open {
    transform: translateX(0);
}

.atrophy-slide-panel__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 5px 24px;
    border-bottom: 1px solid var(--atrophy-border);
    position: sticky;
    top: 0;
    background: var(--atrophy-bg);
    z-index: 1;
}

.atrophy-slide-panel__title {
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin: 0;
}

.atrophy-slide-panel__close {
    background: none;
    border: none;
    font-size: 20px;
    cursor: pointer;
    color: var(--atrophy-text);
    padding: 4px;
    line-height: 1;
}

.atrophy-slide-panel__body {
    padding: 0;
}

/* Panel Sections (5mc2 style) */
.atrophy-panel-section {
    border-top: 1px solid var(--atrophy-border);
}

.atrophy-panel-section__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 24px;
    cursor: pointer;
    user-select: none;
}

.atrophy-panel-section__header:hover .atrophy-panel-section__title {
    opacity: 0.5;
}

.atrophy-panel-section__title {
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin: 0;
    transition: opacity 0.2s ease;
}

.atrophy-panel-section__arrow {
    font-size: 0;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.atrophy-panel-section__arrow::before {
    content: '+';
    font-size: 18px;
    font-weight: 300;
}

.atrophy-panel-section.is-open .atrophy-panel-section__arrow::before {
    content: '−';
}

.atrophy-panel-section__content {
    max-height: 0 !important;
    overflow: hidden !important;
    transition: max-height 0.3s ease !important;
}

.atrophy-panel-section.is-open .atrophy-panel-section__content {
    max-height: 800px !important;
}

.atrophy-panel-section__inner {
    padding: 0 24px 20px;
}

.atrophy-panel-section__inner ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.atrophy-panel-section__inner li {
    margin-bottom: 0;
}

.atrophy-panel-section__inner a {
    display: block;
    padding: 8px 0;
    font-size: 14px;
    color: var(--atrophy-text);
    text-decoration: none;
    text-transform: none;
    letter-spacing: 0;
    transition: opacity 0.2s ease;
}

.atrophy-panel-section__inner a:hover {
    opacity: 0.5;
}

/* Panel Newsletter */
.atrophy-panel-newsletter {
    padding: 20px 24px;
    border-bottom: 1px solid var(--atrophy-border);
}

.atrophy-panel-newsletter h4 {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin: 0 0 12px;
}

.atrophy-panel-newsletter .input-group {
    display: flex;
    border-bottom: 1px solid var(--atrophy-text);
}

.atrophy-panel-newsletter input[type="email"],
.atrophy-panel-newsletter input[type="text"] {
    border: none;
    background: transparent;
    padding: 8px 0;
    font-size: 13px;
    flex: 1;
    outline: none;
    font-family: var(--atrophy-font);
}

.atrophy-panel-newsletter button[type="submit"] {
    border: none;
    background: transparent;
    font-size: 12px;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 0.08em;
    cursor: pointer;
    color: var(--atrophy-text);
    padding: 8px 0 8px 12px;
}

/* ----- Slide Panel Categories (5mc2.com style) ----- */
.atrophy-panel-categories {
    padding: 8px 0;
}

.atrophy-panel-category {
    border: none !important;
}

.atrophy-panel-category.atrophy-panel-section {
    border: none !important;
}

.atrophy-panel-category.atrophy-panel-section .atrophy-panel-section__content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
}

.atrophy-panel-category.atrophy-panel-section.is-open .atrophy-panel-section__content {
    max-height: 500px;
}

.atrophy-panel-category__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 5px 24px;
    cursor: pointer;
}

.atrophy-panel-category__header:hover .atrophy-panel-category__name {
    opacity: 0.5;
}

.atrophy-panel-category__name {
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: -0.02em;
    color: var(--atrophy-text);
    text-decoration: none;
    flex: 1;
    transition: opacity 0.2s ease;
}

.atrophy-panel-category__name:hover {
    opacity: 0.5;
}

/* Plus/Minus icon */
.atrophy-panel-category .atrophy-panel-section__arrow {
    font-size: 0;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.atrophy-panel-category .atrophy-panel-section__arrow::before {
    content: '+';
    font-size: 18px;
    font-weight: 300;
}

.atrophy-panel-category.is-open .atrophy-panel-section__arrow::before {
    content: '−';
}

.atrophy-panel-category--simple {
    border: none !important;
}

.atrophy-panel-category__link {
    display: block;
    padding: 5px 24px;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: -0.02em;
    color: var(--atrophy-text);
    text-decoration: none;
    transition: opacity 0.2s ease;
}

.atrophy-panel-category__link:hover {
    opacity: 0.5;
}

/* Subcategories - same style, indented 10px */
.atrophy-panel-category .atrophy-panel-section__inner {
    padding: 0 24px 8px 34px;
}

.atrophy-panel-subcategories {
    list-style: none;
    padding: 0;
    margin: 0;
}

.atrophy-panel-subcategories li {
    margin-bottom: 0;
}

.atrophy-panel-subcategories a {
    display: block;
    padding: 5px 0;
    font-size: 13px;
    font-weight: 700;
    color: var(--atrophy-text);
    text-transform: uppercase;
    letter-spacing: -0.02em;
    transition: opacity 0.2s ease;
}

.atrophy-panel-subcategories a:hover {
    color: var(--atrophy-text);
    opacity: 0.5;
}

.atrophy-panel-subcategories__all {
    display: none;
}

/* Slide Panel Account (Bottom) */
.atrophy-panel-account {
    padding: 16px 24px;
    background: var(--atrophy-dark);
    color: var(--atrophy-white);
}

.atrophy-panel-account a {
    color: var(--atrophy-white);
}

.atrophy-panel-account a:hover {
    color: var(--atrophy-white);
    opacity: 0.8;
}

.atrophy-panel-account__guest {
    display: flex;
    align-items: center;
    gap: 12px;
}

.atrophy-panel-account__signin {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    font-weight: 600;
}

.atrophy-panel-account__or {
    font-size: 12px;
    opacity: 0.6;
}

.atrophy-panel-account__register {
    font-size: 13px;
    text-decoration: underline;
}

/* Slide Panel Logo */
.atrophy-slide-panel__logo {
    display: flex;
    align-items: center;
}

.atrophy-slide-panel__logo img {
    max-height: 13px;
    width: auto;
}

/* Slide Panel Spacer (push content to bottom) */
.atrophy-panel-spacer {
    flex: 1;
    min-height: 20px;
}

/* ----- Breadcrumbs ----- */
.breadcrumb {
    background: transparent;
    padding: 12px 0;
    margin: 0;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

/* ----- Buttons ----- */
.btn-primary,
.btn-primary:focus,
button.btn-primary,
.btn-secondary,
.btn-default {
    background: transparent !important;
    color: var(--atrophy-text) !important;
    border: 1px solid var(--atrophy-text) !important;
    border-radius: 0 !important;
    text-transform: none !important;
    font-size: 13px !important;
    letter-spacing: 0.04em !important;
    font-weight: 400 !important;
    padding: 13px 40px !important;
    transition: background 0.2s ease, color 0.2s ease;
    box-shadow: none !important;
}

.btn-primary:hover,
.btn-primary:focus:hover,
button.btn-primary:hover,
.btn-secondary:hover,
.btn-default:hover {
    background: var(--atrophy-text) !important;
    color: var(--atrophy-white) !important;
    border-color: var(--atrophy-text) !important;
}

/* ----- Form Inputs ----- */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="number"],
textarea,
select,
.form-control {
    border: none !important;
    border-bottom: 1px solid var(--atrophy-border) !important;
    background: transparent !important;
    padding: 10px 0 !important;
    font-size: 13px;
    font-family: var(--atrophy-font) !important;
    color: var(--atrophy-text) !important;
    transition: border-color 0.2s ease;
}

input:focus,
textarea:focus,
select:focus,
.form-control:focus {
    border-bottom-color: var(--atrophy-dark) !important;
    outline: none;
}

/* ----- Homepage Sections ----- */

/* Hero Banner */
.atrophy-hero {
    position: relative;
    width: 100%;
    min-height: 70vh;
    background: var(--atrophy-gray);
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    overflow: hidden;
}

.atrophy-hero__content {
    position: relative;
    z-index: 2;
    padding: 40px 20px;
}

.atrophy-hero__title {
    font-size: 48px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 24px;
    color: var(--atrophy-text);
}

.atrophy-hero__cta {
    display: inline-block;
    background: var(--atrophy-dark);
    color: var(--atrophy-white);
    padding: 14px 40px;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    font-weight: 700;
    text-decoration: none;
    transition: background 0.2s ease, color 0.2s ease;
    border: 1px solid var(--atrophy-dark);
}

.atrophy-hero__cta:hover {
    background: var(--atrophy-white);
    color: var(--atrophy-dark);
    opacity: 1;
}

/* Homepage Section Wrapper */
.atrophy-section {
    padding: 60px 0;
}

.atrophy-section__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 32px;
}

.atrophy-section__title {
    font-size: 18px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin: 0;
}

.atrophy-section__link {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-weight: 600;
    color: var(--atrophy-text);
    text-decoration: none;
    border-bottom: 1px solid var(--atrophy-text);
    padding-bottom: 2px;
}

/* Full-Width Banner */
.atrophy-banner {
    width: 100%;
    min-height: 400px;
    background: var(--atrophy-gray);
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.atrophy-banner img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.atrophy-banner__content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
}

/* ----- Product Grid ----- */
.atrophy-product-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

/* Override Warehouse default product cards */
.product-miniature,
.js-product-miniature {
    background: var(--atrophy-bg);
    border: none !important;
    padding: 0;
    text-align: left;
}

.product-miniature .thumbnail-container {
    background: #fff;
    overflow: hidden;
}

.product-miniature .thumbnail-container img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform 0.4s ease;
}

.product-miniature:hover .thumbnail-container img {
    transform: scale(1.03);
}

.product-miniature .product-description {
    padding: 12px 0 0;
}

.product-miniature .product-title {
    font-size: 12px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    margin-bottom: 4px;
    color: var(--atrophy-text);
    padding-top:5px;
}

.product-miniature .product-title a {
    color: inherit;
    text-decoration: none;
}

.product-miniature .product-price-and-shipping {
    font-size: 13px;
    font-weight: 600;
    color: var(--atrophy-text);
}

.product-miniature .regular-price {
    text-decoration: line-through;
    color: #999;
    font-weight: 400;
}

/* Hide unnecessary product card elements */
.product-miniature .highlighted-informations,
.product-miniature .variant-links,
.product-miniature .quick-view,
.product-miniature .wishlist-button-add,
.product-miniature .btn-add-to-cart-listing,
.product-miniature .product-color-variants {
    display: none !important;
}

/* Warehouse product list overrides */
.products.row {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 20px !important;
}

.products.row > .product-miniature,
.products.row > .js-product-miniature-wrapper,
.products.row > [class*="col-"] {
    max-width: 100% !important;
    flex: none !important;
    padding: 0 !important;
    width: 100% !important;
}

/* Ensure product miniature uses vertical layout (image on top, text below) */
.product-miniature,
.product-miniature-grid {
    display: block !important;
    flex-direction: column !important;
}

.product-miniature .thumbnail-container {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    margin: 0 !important;
}

.product-miniature .product-description {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
}

/* View All button */
.atrophy-view-all {
    text-align: center;
    margin-top: 40px;
}

.atrophy-view-all a {
    display: inline-block;
    padding: 12px 40px;
    border: 1px solid var(--atrophy-dark);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-weight: 600;
    color: var(--atrophy-dark);
    text-decoration: none;
    transition: background 0.2s ease, color 0.2s ease;
}

.atrophy-view-all a:hover {
    background: var(--atrophy-dark);
    color: var(--atrophy-white);
    opacity: 1;
}

/* ----- Footer ----- */
#footer {
    background: var(--atrophy-bg) !important;
    color: var(--atrophy-text);
}

#footer-container-main {
    background: var(--atrophy-bg) !important;
    border-top: 1px solid var(--atrophy-border);
    padding: 60px 0 40px;
}

#footer .block-footer .block-title {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--atrophy-text);
    margin-bottom: 16px;
    border: none;
}

#footer .block-footer .block-content li {
    margin-bottom: 8px;
}

#footer .block-footer .block-content a {
    font-size: 13px;
    color: var(--atrophy-text);
    text-decoration: none;
    text-transform: none;
    letter-spacing: 0;
}

#footer .block-footer .block-content a:hover {
    opacity: 0.6;
}

/* Footer copyrights */
.footer-copyrights {
    border-top: 1px solid var(--atrophy-border);
    padding: 20px 0;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #999;
    text-align: center;
}

/* Footer social links */
.block-social-links .social-links a {
    color: var(--atrophy-text);
    font-size: 16px;
    margin-right: 16px;
}

/* ----- Misc Components ----- */

/* Notifications */
.ns-box {
    border: none !important;
    background: var(--atrophy-gray) !important;
    color: var(--atrophy-text) !important;
}

/* Pagination */
.pagination .page-item .page-link {
    border: 1px solid var(--atrophy-border);
    color: var(--atrophy-text);
    background: transparent;
    font-size: 12px;
}

.pagination .page-item.active .page-link {
    background: var(--atrophy-dark);
    border-color: var(--atrophy-dark);
    color: var(--atrophy-white);
}

/* Back to top */
#back-to-top {
    background: var(--atrophy-dark) !important;
    color: var(--atrophy-white) !important;
    border: none !important;
    width: 40px;
    height: 40px;
}

/* ----- Responsive ----- */
@media (max-width: 1000px) {
    .atrophy-product-grid,
    .products.row {
        grid-template-columns: repeat(3, 1fr) !important;
    }

    .atrophy-hero__title {
        font-size: 36px;
    }

    :root {
        --slide-panel-width: 340px;
    }
}

@media (max-width: 768px) {
    .atrophy-product-grid,
    .products.row {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 2px;
    }

    #js-product-list .products.row > .col-6 {
        max-width: 100% !important;
    }

    .products.row .js-product-miniature-wrapper {
        padding: 0 !important;
    }

    .atrophy-hero {
        min-height: 50vh;
    }

    .atrophy-hero__title {
        font-size: 28px;
    }

    .atrophy-section {
        padding: 40px 0;
    }

    .atrophy-banner {
        min-height: 280px;
    }

    #footer-container-main {
        padding: 40px 0 24px;
    }

    :root {
        --slide-panel-width: 100vw;
    }

    /* Mobile Header Tweaks */
    .mobile-main-bar {
        background: var(--atrophy-bg) !important;
        border-bottom: 1px solid var(--atrophy-border);
    }

    .m-nav-btn {
        color: var(--atrophy-text) !important;
    }

    #mobile-header-sticky {
        background: var(--atrophy-bg) !important;
    }

    .products.row > .product-miniature {
        max-width: 100% !important;
        padding: 0 !important;
    }
}

/* ----- Body overflow when panel open ----- */
body.slide-panel-open {
    overflow: hidden;
}

/* ----- Search widget overrides ----- */
.iqitsearch-wrapper input[type="text"],
.iqitsearch-wrapper input[type="search"] {
    border: none !important;
    border-bottom: 1px solid var(--atrophy-border) !important;
}

/* Desktop search dropdown */
#header-search-btn .dropdown-search {
    border: 1px solid rgba(0, 0, 0, 0.86) !important;
    border-radius: 10px !important;
    padding: 8px 0 !important;
    background: var(--atrophy-white) !important;
    min-width: 320px !important;
    right: 0 !important;
    left: auto !important;
}

#header-search-btn .form-search-control {
    padding: 10px 2.5rem 10px 0 !important;
    border: none !important;
    border-bottom: 1px solid var(--atrophy-border) !important;
    background: transparent !important;
    font-size: 13px !important;
    position: absolute !important;
    top: -13px !important;
    left: 20% !important;
    display: block !important;
}

#header-search-btn .form-search-control:focus {
    //border-bottom-color: var(--atrophy-dark) !important;
}

#header-search-btn .search-btn {
    color: var(--atrophy-text);
    opacity: 0.5;
}

#header-search-btn .search-btn:hover {
    opacity: 1;
}

/* ----- Warehouse specific overrides ----- */
.product-add-to-cart .add-to-cart,
.product-add-to-cart .btn-primary {
    width: 100%;
    text-align: center;
}

/* Category page */
#js-product-list-header {
    text-align: center;
    padding: 40px 0;
}

#js-product-list-header h1 {
    font-size: 28px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

/* Hide Warehouse color accents / shadows */
.elementor-section,
.elementor-column {
    box-shadow: none !important;
}

/* Instagram Section (placeholder) */
.atrophy-social-feed {
    padding: 60px 0;
    text-align: center;
}

.atrophy-social-feed__title {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    margin-bottom: 24px;
    color: #999;
}

/* Remove Warehouse default product hover effects that conflict */
.product-miniature .thumbnail-container .product-thumbnail-first,
.product-miniature .product-thumbnail-second {
    transition: opacity 0.4s ease;
}

/* Fix: Hide first image when hovering - prevents transparent second image showing first image behind */
.product-miniature .thumbnail-container {
    position: relative;
}

.product-miniature .thumbnail-container .product-thumbnail-first {
    position: relative;
    z-index: 1;
}

.product-miniature .thumbnail-container .product-thumbnail-second {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    opacity: 0;
    background: #f0f0f0; /* Match thumbnail background to fully cover first image */
}

.product-miniature:hover .thumbnail-container .product-thumbnail-first {
    opacity: 0;
}

.product-miniature:hover .thumbnail-container .product-thumbnail-second {
    opacity: 1;
}

/* =============================================
   ATROPHY — Mobile Header (5mc2.com style)
   ============================================= */

/* ----- Mobile Header Dark Bar ----- */
.atrophy-mobile-header {
    background: #000 !important;
}

.atrophy-mobile-header .mobile-main-bar {
    background: #fff !important;
    border-bottom: none !important;
    padding: 10px 0;
}

.atrophy-mobile-header .row-mobile-header {
    min-height: 30px;
}

/* Logo - center aligned, smaller */
.atrophy-mobile-header .col-mobile-logo {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 5px;
    margin: 0 !important;
}

/* Left/Right button containers to balance logo centering */
.atrophy-mobile-left-btns,
.atrophy-mobile-icons {
    flex: 1 1 0; /* Both take exactly equal space */
    min-width: 0;
    display: flex;
    align-items: center;
}

.atrophy-mobile-left-btns {
    justify-content: flex-start;
}

.atrophy-mobile-icons {
    justify-content: flex-end;
}

.atrophy-mobile-header .col-mobile-logo a {
    display: flex;
    align-items: center;
}

.atrophy-mobile-header .col-mobile-logo img {
    max-height: 16px !important;
    width: auto !important;
    margin: 0 auto !important;
  }

.atrophy-logo--mobile {
    font-size: 16px !important;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: #fff !important;
}

/* Icons - right side */
.atrophy-mobile-icons {
    gap: 4px;
}

.atrophy-mobile-header .col-mobile-btn {
    padding: 0 8px;
}

.atrophy-mobile-header .m-nav-btn {
    color: #d2d2d2 !important;
    font-size: 18px;
    padding: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.atrophy-mobile-header .m-nav-btn i {
    color: #d2d2d2 !important;
}

/* Hamburger - light (white lines) */
.atrophy-hamburger--light span {
    background: #d2d2d2 !important;
}

/* Cart badge on dark bg */
.atrophy-mobile-header .cart-products-count {
    background: #fff !important;
    color: #000 !important;
    font-size: 8px;
    width: 14px;
    height: 14px;
    line-height: 14px;
}

/* ----- Categories Bar (horizontal scroll) ----- */
.atrophy-categories-bar {
    display: none; /* Hidden on desktop */
    position: relative;
    background: #fff;
    border-bottom: 1px solid var(--atrophy-border);
    overflow: hidden;
}
#mobile-header .m-nav-btn{
    padding: .175rem .325rem !important;
}
#mobile-header .m-nav-btn > span{
    display: block !important;
}
#mobile-header .m-nav-btn>span{
    margin-top:0.2rem !important;
}
.atrophy-categories-bar__scroll {
    display: flex;
    justify-content: center;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
    padding: 0 16px;
    gap: 0;
}

.atrophy-categories-bar__scroll::-webkit-scrollbar {
    display: none;
}

.atrophy-categories-bar__item {
    flex-shrink: 0;
    padding: 12px 14px;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0;
    color: #1c1c1c;
    text-decoration: none;
    white-space: nowrap;
    transition: opacity 0.2s ease;
}

.atrophy-categories-bar__item:hover {
    color: #2d2d2d;
    opacity: 0.6;
}

.atrophy-categories-bar__item.is-active {
    font-weight: 900;
    opacity: 1;
}

/* Ukrycie nagłówka kategorii na stronach kategorii (aktywna kategoria jest pogrubiona w pasku) */
.page-category #js-product-list-header,
.page-category .page-title {
    display: none !important;
}

/* Fade gradient on right */
.atrophy-categories-bar__fade {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 50px;
    background: linear-gradient(to left, #fff 0%, transparent 100%);
    pointer-events: none;
    z-index: 1;
}

/* Mobile only - show categories bar */
@media (max-width: 991px) {
    .atrophy-categories-bar {
        display: block;
    }
}

/* Mobile header sticky adjustments */
@media (max-width: 768px) {
    #facets_search_wrapper{
        display:none
    }
    .block-categories{
        display: none !important;
    }
    .atrophy-mobile-header .col-mobile-logo img {
        max-height: 18px !important;
        margin: 0 auto !important;
    }

    .atrophy-mobile-header .col-mobile-btn {
        padding: 0 6px;
    }

    .atrophy-mobile-header .m-nav-btn {
        font-size: 16px;
        padding: 6px;
    }

    .atrophy-categories-bar__item {
        padding: 8px 9px;
        font-size: 11px;
    }
    #wrapper .breadcrumb{
        display: none;
    }
    #js-product-list-header{
        padding:0 0 !important;
    }

    /* Dopasowanie głównego zdjęcia produktu do szerokości okna na mobile */
    #product .product-info-row {
        margin-left: -15px !important;
        margin-right: -15px !important;
    }

    #product .col-product-image {
        padding-left: 0 !important;
        padding-right: 0 !important;
        max-width: 100vw !important;
        flex: 0 0 100% !important;
    }

    #product .product-cover {
        margin-bottom: 0;
    }

    #product #product-images-large {
        width: 100vw !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    #product .product-lmage-large img {
        width: 100% !important;
        height: auto !important;
    }

    /* Widoczne strzałki na zdjęciu na mobile */
    #product .swiper-button-arrow {
        display: flex !important;
        background: rgba(255, 255, 255, 0.5);
        width: 40px;
        height: 40px;
        border-radius: 50%;
        color: #000;
        top: 50%;
        transform: translateY(-50%);
    }

    #product .swiper-button-arrow::after {
        font-size: 18px;
        font-weight: bold;
    }

    #product .swiper-button-prev {
        left: 10px !important;
    }

    #product .swiper-button-next {
        right: 10px !important;
    }

    /* Kropki na zdjęciu */
    #product .swiper-pagination-product {
        bottom: 15px !important;
    }

    /* Przywrócenie paddingu dla informacji o produkcie */
    #product .col-product-info {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
    #product .qty{
        display: none;
    }
    #product .atrophy-topbar, #password .atrophy-topbar{
        display: none;
    }
    #product .tax-shipping-delivery-label{
        display: none;
    }
    #checkout .page-title{
        display: none;
    }
    #content-wrapper .page-title{
        font-size:1.3rem;
    }
    .product-miniature .product-title{
        padding-top:2px !important;
    }

}
#product .atrophy-categories-bar,
#checkout .iqit-megamenu-container, #checkout .atrophy-categories-bar
#authentication .iqit-megamenu-container, #authentication .atrophy-categories-bar,
#password .atrophy-categories-bar,
#checkout .atrophy-topbar
{
    display: none;
}
.checkout-step.-unreachable{
    display:none
}
#authentication #content,
#password #content
{
    border-radius: 15px !important;

}
@media (min-width: 768px) {
    #authentication #content,
    #password #content {
        width: 50%;
        margin: 0 auto;
    }
}
#authentication .h1, #password .h1{
    text-align: center !important;
    font-size:18px;
    padding-top:15px;
    padding-bottom:10px;

}

#send-reset-link{
    margin:20px auto;
    display: block;
}
.step-number{
    display: none !important;
}
/* Override sticky mobile header background */
#mobile-header-sticky.atrophy-mobile-header {
    background: #fff !important;
}

/* Dark icons on white header */
#mobile-header-sticky .atrophy-hamburger span {
    background: #1c1c1c !important;
}
#mobile-header-sticky .m-nav-btn {
    color: #1c1c1c !important;
}
#mobile-header-sticky .m-nav-btn i {
    color: #1c1c1c !important;
}
#mobile-header-sticky .cart-products-count {
    background: #1c1c1c !important;
    color: #fff !important;
}

/* When mobile header is sticky */
#header.is-sticky #mobile-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
}

#header.is-sticky .atrophy-categories-bar {
    position: fixed;
    top: 40px; /* Below the header */
    left: 0;
    right: 0;
    z-index: 999;
}
#mobile-header .mobile-main-bar{
    padding-top:5px;
    padding-bottom: 5px;
}

#js-checkout-summary{
    background-color: #EDEDED;
    border-radius:20px !important;
    border:0px !important;
}
#password > .page-title{
    text-align: center !important;
    font-size:2rem !important;
}

/* =============================================
   ATROPHY — Cart Sticky Bottom Bar (mobile)
   ============================================= */
.atrophy-cart-sticky-bar {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: #EDEDED;
    padding: 16px 20px;
    z-index: 1000;
    align-items: center;
    justify-content: space-between;
    box-shadow: 0 -2px 10px rgba(0,0,0,0.1);
}

.atrophy-cart-sticky-bar__info {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.atrophy-cart-sticky-bar__label {
    font-size: 14px;
    font-weight: 700;
    color: #1c1c1c;
    text-transform: none;
    letter-spacing: 0;
}

.atrophy-cart-sticky-bar__price {
    font-size: 20px;
    font-weight: 700;
    color: #1c1c1c;
    letter-spacing: -0.02em;
}

.atrophy-cart-sticky-bar__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #1c1c1c;
    color: #fff !important;
    padding: 16px 36px;
    font-size: 14px;
    font-weight: 700;
    text-transform: none;
    letter-spacing: 0;
    text-decoration: none;
    border-radius: 50px !important;
    transition: background 0.2s ease;
}

.atrophy-cart-sticky-bar__btn:hover {
    background: #333;
    color: #fff !important;
    opacity: 1;
}

/* Show only on mobile */
@media (max-width: 991px) {
    .atrophy-cart-sticky-bar {
        display: flex;
    }

    /* Add padding at bottom to prevent content being hidden behind sticky bar */
    #main {
        padding-bottom: 10px;
    }
}

/* Hide categories bar on cart and checkout pages */
.page-cart .atrophy-categories-bar,
.page-order .atrophy-categories-bar,
.page-checkout .atrophy-categories-bar {
    display: none !important;
}
.cbp-horizontal .cbp-tab-title{
    text-transform: uppercase;
    color:#2d2d2d !important;
    font-size:12px !important;
}

/* Kropki zamiast miniaturek na stronie produktu */
#product-images-thumbs {
    display: none !important;
}

.images-container-left .col-left-product-thumbs {
    display: none !important;
}

.images-container-left .col-left-product-cover {
    flex: 0 0 100%;
    max-width: 100%;
}

.product-images-large {
    position: relative;
}

.swiper-pagination-product {
    position: absolute;
    bottom: 20px !important;
    left: 0;
    width: 100%;
    z-index: 10;
    text-align: center;
    line-height: 1;
}

.swiper-pagination-product .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    background: #000;
    opacity: 0.3;
    margin: 0 5px !important;
    border-radius: 50%;
    display: inline-block;
    cursor: pointer;
    transition: opacity 0.3s, transform 0.3s;
}

.swiper-pagination-product .swiper-pagination-bullet-active {
    opacity: 1;
    background: #1c1c1c;
    transform: scale(1.2);
}

/* Ukrycie kropek jeśli jest tylko jedno zdjęcie */
.swiper-pagination-product:only-child,
.swiper-pagination-lock {
    display: none !important;
}

/* Wybór języka i waluty w nagłówku desktopowym i panelu mobilnym */
.header-selectors {
    margin-right: 15px;
}

.header-selectors #language_selector,
.header-selectors #currency_selector {
    padding: 0 5px;
}

.header-selectors .expand-more {
    display: flex;
    align-items: center;
}

.header-selectors .expand-more i {
    font-size: 11px;
    margin-left: 3px;
}

/* Selektory języka/waluty w headerze panelu */
.atrophy-slide-panel__header-right {
    display: flex;
    align-items: center;
    gap: 12px;
}

.atrophy-panel-selectors {
    display: flex;
    gap: 8px;
    align-items: center;
}

.atrophy-panel-selectors #language_selector,
.atrophy-panel-selectors #currency_selector {
    display: block !important;
}

.atrophy-panel-selectors .expand-more {
    font-size: 11px;
    font-weight: 500;
    color: #1c1c1c;
    text-transform: uppercase;
    padding: 4px 0;
    display: flex;
    align-items: center;
    gap: 2px;
}

.atrophy-panel-selectors .expand-more i {
    font-size: 8px;
}

.atrophy-panel-selectors .dropdown-menu {
    border: none;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1) !important;
    min-width: 120px;
    margin-top: 5px;
}

.atrophy-panel-selectors .lang-flag {
    margin-right: 5px;
}

.atrophy-panel-selectors .dropdown-item {
    font-size: 12px;
    padding: 8px 12px;
}
#sticky-cart-wrapper a.header-cart-btn:not(:hover){
    color:#777;
}

#sticky-cart-wrapper {
    position: fixed !important;
    top: 20px !important;
    right: 70px !important;
    z-index: 9999 !important;
    transform: none !important;
    display: block !important;
}

#header.is-sticky .iqit-megamenu-container{
    border-bottom:0px;
}
@media (min-width: 1200px) {
    .h3, h3 {
        font-size: 1.25rem;
    }
}

.products-selection {
    margin: 0 0;
     padding: 0 0;
    border-top: 0px;
    border-bottom: 0px;
}

.atrophy-panel-category__link, .atrophy-panel-category__name{
    color:#000 !important;
}
#js-product-list .product-reference, #js-product-list .js-quick-view-iqit, #js-product-list .btn-iqitcompare-add, .btn-iqitwishlist-add{
    display: none;
}
#js-product-list .product-add-cart{
    display: none;
}
.product-miniature-list .product-description-short{
    display:none
}
.product-availability{
    position: absolute;
    bottom:82px;
}
.product-miniature-list .col-buy, .product-miniature-list .col-description{
    padding-top:0 !important;
}
.compact-toggle-text{
    left:15px;
}
#amazzing_filter .compact-toggle{
    top:90%;
}
#amazzing_filter{
    display: none;
}
#product .product-reference{
    display:none;
}
.product-price{
    color: #000;
}
#category .product-miniature .product-title a{
    color:#000;
}
.product-miniature-list .product-price{
    font-size:1rem;
    color:#000;
}
.product-miniature .thumbnail-container{
    background: #f0f0f0;
}
.product-miniature-list-row{
    padding:0 0 !important;
}
/* iqitcountdown odizolowanie od ceny i nazwy */
.price-countdown-wrapper {
    display: block !important;
    width: 100% !important;
    clear: both !important;
}

.price-countdown.badge-discount {
    display: inline-flex !important;
    align-items: center;
    gap: 2px;
    padding: 2px 9px !important;
    background: #f8f8f8 !important;
    color: #333 !important;
    border: 1px solid #eee !important;
    border-radius: 4px !important;
    font-weight: 500 !important;
}

.price-countdown-title {
    margin-right: 0 !important;
    font-size: 11px !important;
}

.count-down-timer {
    display: inline-block !important;
    font-size: 9px !important;
    font-weight: 700 !important;
}

.atrophy-product-info-text {
    margin-top: 15px;
    font-size: 13px;
    line-height: 1.5;
}
.col-add-compare{
    display: none;
}

.product-comments-additional-info{
    display: none;
}
#product-comments-list-header{
    display: none;
}
#empty-product-comment{
    display: none;
}

.cart-summary{
    border-radius: 20px !important;
    background: #EDEDED;
    border:none !important;
}
.cart-summary-line.cart-total{
    font-size: 1rem;
}
.ps-shoppingcart.dropdown .show #blockcart-content{
    border-radius:20px !important;
}
body#checkout section.checkout-step {
    border: 0px !important;
    padding:0px;
}
/* Ukrywa pole daty urodzenia w formularzach */
.customer-form .form-group.row:has(input[name="birthday"]),
.register-form .form-group.row:has(input[name="birthday"]),
#identity #customer-form .form-group.row:has(input[name="birthday"]),
#identity #customer-form .form-group.row:has(#field-birthday),
#field-birthday {
    display: none !important;
}
/* Ukrycie płci i daty urodzenia w koszyku i rejestracji */
#checkout-guest-form .id-gender,
#checkout-guest-form .birthday,
#checkout-login-form .id-gender,
#checkout-login-form .birthday,
section#checkout-personal-information-step .form-group:has(input[name="birthday"]),
section#checkout-personal-information-step .form-group:has(input[name="id_gender"]),
#field-birthday,
#field-id_gender {
    display: none !important;
}
#product-comments-list{
    display: none;
}
.modal-body .cart-products-count{
    display:none;
}
#product .atrophy-badges{
    display:none;
}

/* =============================================
   CHECKOUT CREATE ACCOUNT TOGGLE
   ============================================= */

.checkout-create-account {
    margin: 20px 0;
    padding: 15px;
    background: #f8f8f8;
    border: 1px solid #eee;
}

.checkout-create-account__toggle {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.checkout-create-account__label {
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    margin: 0;
}
.form-control-comment{
    padding-left:10px;
}
.checkout-create-account__checkbox {
    width: 18px;
    height: 18px;
    accent-color: #000;
    cursor: pointer;
}
.custom-select2:after{
    display: none;
}
.checkout-create-account__text {
    display: flex;
    align-items: baseline;
    gap: 6px;
}

.checkout-create-account__title {
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

.checkout-create-account__optional {
    font-size: 12px;
    font-style: italic;
    color: #666;
    font-weight: 400;
}

.checkout-create-account__desc {
    font-size: 13px;
    color: #666;
    margin-left: 28px;
}

.checkout-create-account__fields {
    margin-top: 15px;
    padding-top: 15px;
    border-top: 1px solid #ddd;
}

.checkout-create-account__fields .form-group {
    margin-bottom: 0;
}

/* =============================================
   CHECKOUT FORM - FLOATING LABELS IN BORDERED INPUTS
   ============================================= */

/* Reset row layout for checkout form fields */
#checkout .checkout-step .form-group.row,
#checkout #customer-form .form-group.row {
    display: block;
    position: relative;
    margin-bottom: 15px;
}

/* Hide the col-md-2 label column, we'll reposition it */
#checkout .checkout-step .form-group.row > label.col-form-label,
#checkout #customer-form .form-group.row > label.col-form-label {
    position: absolute;
    left: 28px;
    top: 50%;
    transform: translateY(-94%);
    font-size: 14px;
    color: #999;
    pointer-events: none;
    transition: all 0.2s ease;
    z-index: 1;
    margin: 0;
    padding: 0 4px;
    background: transparent;
    font-weight: 400;
    text-transform: none;
    width: auto;
    max-width: none;
    flex: none;
}

/* Make input column full width */
#checkout .checkout-step .form-group.row > .js-input-column,
#checkout #customer-form .form-group.row > .js-input-column,
#checkout .checkout-step .form-group.row > [class*="col-"],
#checkout #customer-form .form-group.row > [class*="col-"]:not(label) {
    width: 100%;
    max-width: 100%;
    flex: none;
    padding: 0;
}

/* Input styling with border */
#checkout .checkout-step .form-control,
#checkout #customer-form .form-control {
    border: 1px solid #ccc !important;
    background: #fff !important;
    padding: 20px 12px 8px 20px !important;
    height: auto !important;
    min-height: 42px;
    font-size: 14px;
    transition: border-color 0.2s ease;
    width: 100%;
    margin:0 auto;
    border-radius: 20px !important;
}
.form-control-comment{
    padding-left:10px;
}

#checkout .checkout-step .form-control:focus,
#checkout #customer-form .form-control:focus {
    border-color: #000 !important;
    border-width: 2px;
    outline: none;
}

/* Floating label - when input has value or focused */
#checkout .checkout-step .form-group.row.has-value > label.col-form-label,
#checkout .checkout-step .form-group.row:focus-within > label.col-form-label,
#checkout #customer-form .form-group.row.has-value > label.col-form-label,
#checkout #customer-form .form-group.row:focus-within > label.col-form-label {
    top: 8px;
    left: 17px;
    transform: translateY(0);
    font-size: 10px;
    color: #000;
    background: transparent;
}

/* Select styling */
#checkout .checkout-step select.form-control,
#checkout #customer-form select.form-control {
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23333' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 12px center !important;
    background-color: #fff !important;
    cursor: pointer;
}

/* For selects - always show label as floating since they have default value */
#checkout .checkout-step .form-group.row:has(select) > label.col-form-label,
#checkout #customer-form .form-group.row:has(select) > label.col-form-label {
    top: 10px;
    transform: translateY(0);
    font-size: 10px;
    color: #000;
    background: #fff;
}

/* Radio and checkbox groups - keep normal styling */
#checkout .checkout-step .form-group.row:has(.custom-radio),
#checkout .checkout-step .form-group.row:has(.custom-checkbox),
#checkout .checkout-step .form-group.row:has(.radio-inline) {
    display: flex;
    flex-wrap: wrap;
}

#checkout .checkout-step .form-group.row:has(.custom-radio) > label.col-form-label,
#checkout .checkout-step .form-group.row:has(.custom-checkbox) > label.col-form-label,
#checkout .checkout-step .form-group.row:has(.radio-inline) > label.col-form-label {
    position: static;
    transform: none;
    width: 100%;
    margin-bottom: 8px;
    font-size: 14px;
    font-weight: 600;
    color: #000;
}

#checkout .checkout-step .custom-radio label,
#checkout .checkout-step .custom-checkbox label,
#checkout .checkout-step .radio-inline,
#checkout .checkout-step .checkbox-inline {
    position: static !important;
    transform: none !important;
    font-size: 14px !important;
    color: #000 !important;
    pointer-events: auto !important;
    background: transparent !important;
}

/* Carrier/delivery options */
#checkout .delivery-options .form-group,
#checkout .delivery-options .form-group.row {
    display: block;
    margin-bottom: 0;
}

#checkout .delivery-options label {
    position: static !important;
    transform: none !important;
}

/* Payment options */
#checkout .payment-options .form-group,
#checkout .payment-options .form-group.row {
    display: block;
    margin-bottom: 0;
}

#checkout .payment-options label {
    position: static !important;
    transform: none !important;
}

/* Address card buttons */
#checkout .address-item label {
    position: static !important;
    transform: none !important;
}

/* Terms checkbox */
#checkout #conditions-to-approve label {
    position: static !important;
    transform: none !important;
}

/* =============================================
   IDENTITY PAGE - FLOATING LABELS (same as checkout)
   ============================================= */

#identity #customer-form .form-group.row {
    display: block;
    position: relative;
    margin-bottom: 15px;
}

#identity #customer-form .form-group.row > label.col-form-label {
    position: absolute;
    left: 28px;
    top: 50%;
    transform: translateY(-94%);
    font-size: 14px;
    color: #999;
    pointer-events: none;
    transition: all 0.2s ease;
    z-index: 1;
    margin: 0;
    padding: 0 4px;
    background: transparent;
    font-weight: 400;
    text-transform: none;
    width: auto;
    max-width: none;
    flex: none;
}

#identity #customer-form .form-group.row > .js-input-column,
#identity #customer-form .form-group.row > [class*="col-"]:not(label) {
    width: 100%;
    max-width: 100%;
    flex: none;
    padding: 0;
}

#identity #customer-form .form-control {
    border: 1px solid #ccc !important;
    background: #fff !important;
    padding: 20px 12px 8px 20px !important;
    height: auto !important;
    min-height: 42px;
    font-size: 14px;
    transition: border-color 0.2s ease;
    width: 95%;
    margin: 0 auto;
    border-radius: 20px !important;
}

#identity #customer-form .form-control:focus {
    border-color: #000 !important;
    border-width: 2px;
    outline: none;
}

#identity #customer-form .form-group.row.has-value > label.col-form-label,
#identity #customer-form .form-group.row:focus-within > label.col-form-label {
    top: 8px;
    left: 17px;
    transform: translateY(0);
    font-size: 10px;
    color: #000;
    background: transparent;
}

#identity #customer-form select.form-control {
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23333' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 12px center !important;
    background-color: #fff !important;
    cursor: pointer;
}

#identity #customer-form .form-group.row:has(select) > label.col-form-label {
    top: 10px;
    transform: translateY(0);
    font-size: 10px;
    color: #000;
    background: #fff;
}

/* Radio/checkbox in identity */
#identity #customer-form .form-group.row:has(.custom-radio),
#identity #customer-form .form-group.row:has(.custom-checkbox),
#identity #customer-form .form-group.row:has(.radio-inline) {
    display: flex;
    flex-wrap: wrap;
}

#identity #customer-form .form-group.row:has(.custom-radio) > label.col-form-label,
#identity #customer-form .form-group.row:has(.custom-checkbox) > label.col-form-label,
#identity #customer-form .form-group.row:has(.radio-inline) > label.col-form-label {
    position: static;
    transform: none;
    width: 100%;
    margin-bottom: 8px;
    font-size: 14px;
    font-weight: 600;
    color: #000;
}

#identity #customer-form .custom-radio label,
#identity #customer-form .custom-checkbox label,
#identity #customer-form .radio-inline,
#identity #customer-form .checkbox-inline {
    position: static !important;
    transform: none !important;
    font-size: 14px !important;
    color: #000 !important;
    pointer-events: auto !important;
    background: transparent !important;
}

/* =============================================
   AUTHENTICATION & REGISTRATION - FLOATING LABELS
   ============================================= */

#authentication .login-form .form-group.row,
#authentication #customer-form .form-group.row,
#registration #customer-form .form-group.row {
    display: block;
    position: relative;
    margin-bottom: 15px;
}

#authentication .login-form .form-group.row > label.col-form-label,
#authentication #customer-form .form-group.row > label.col-form-label,
#registration #customer-form .form-group.row > label.col-form-label {
    position: absolute;
    left: 28px;
    top: 50%;
    transform: translateY(-94%);
    font-size: 14px;
    color: #999;
    pointer-events: none;
    transition: all 0.2s ease;
    z-index: 1;
    margin: 0;
    padding: 0 4px;
    background: transparent;
    font-weight: 400;
    text-transform: none;
    width: auto;
    max-width: none;
    flex: none;
}

#authentication .login-form .form-group.row > .js-input-column,
#authentication .login-form .form-group.row > [class*="col-"]:not(label),
#authentication #customer-form .form-group.row > .js-input-column,
#authentication #customer-form .form-group.row > [class*="col-"]:not(label),
#registration #customer-form .form-group.row > .js-input-column,
#registration #customer-form .form-group.row > [class*="col-"]:not(label) {
    width: 100%;
    max-width: 100%;
    flex: none;
    padding: 0;
}

#authentication .login-form .form-control,
#authentication #customer-form .form-control,
#registration #customer-form .form-control {
    border: 1px solid #ccc !important;
    background: #fff !important;
    padding: 20px 12px 8px 20px !important;
    height: auto !important;
    min-height: 42px;
    font-size: 14px;
    transition: border-color 0.2s ease;
    width: 95%;
    margin: 0 auto;
    border-radius: 20px !important;
}

#authentication .login-form .form-control:focus,
#authentication #customer-form .form-control:focus,
#registration #customer-form .form-control:focus {
    border-color: #000 !important;
    border-width: 2px;
    outline: none;
}

#authentication .login-form .form-group.row.has-value > label.col-form-label,
#authentication .login-form .form-group.row:focus-within > label.col-form-label,
#authentication #customer-form .form-group.row.has-value > label.col-form-label,
#authentication #customer-form .form-group.row:focus-within > label.col-form-label,
#registration #customer-form .form-group.row.has-value > label.col-form-label,
#registration #customer-form .form-group.row:focus-within > label.col-form-label {
    top: 8px;
    left: 60px;
    transform: translateY(0);
    font-size: 10px;
    color: #000;
    background: transparent;
}

/* Radio/checkbox in auth/registration */
#authentication .form-group.row:has(.custom-radio),
#authentication .form-group.row:has(.custom-checkbox),
#registration .form-group.row:has(.custom-radio),
#registration .form-group.row:has(.custom-checkbox) {
    display: flex;
    flex-wrap: wrap;
}

#authentication .form-group.row:has(.custom-radio) > label.col-form-label,
#authentication .form-group.row:has(.custom-checkbox) > label.col-form-label,
#registration .form-group.row:has(.custom-radio) > label.col-form-label,
#registration .form-group.row:has(.custom-checkbox) > label.col-form-label {
    position: static;
    transform: none;
    width: 100%;
    margin-bottom: 8px;
    font-size: 14px;
    font-weight: 600;
    color: #000;
}

#authentication .custom-radio label,
#authentication .custom-checkbox label,
#registration .custom-radio label,
#registration .custom-checkbox label {
    position: static !important;
    transform: none !important;
    font-size: 14px !important;
    color: #000 !important;
    pointer-events: auto !important;
    background: transparent !important;
}

/* =============================================
   SHOW PASSWORD BUTTON POSITIONING
   ============================================= */

/* Password field container needs relative positioning */
#checkout .form-group.row:has(input[type="password"]),
#identity .form-group.row:has(input[type="password"]),
#authentication .form-group.row:has(input[type="password"]),
#registration .form-group.row:has(input[type="password"]),
.field-password-policy {
    position: relative;
}

/* Position show-password button inside the input */
#checkout [data-action="show-password"],
#identity [data-action="show-password"],
#authentication [data-action="show-password"],
#registration [data-action="show-password"] {
    position: absolute;
    right: calc(2.5% + 20px);
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    background: transparent;
    border: none;
    padding: 5px;
    cursor: pointer;
    color: #666;
    transition: color 0.2s ease;
}

#checkout [data-action="show-password"]:hover,
#identity [data-action="show-password"]:hover,
#authentication [data-action="show-password"]:hover,
#registration [data-action="show-password"]:hover {
    color: #000;
}

/* Adjust input padding for the button */
#checkout input[type="password"].form-control,
#identity input[type="password"].form-control,
#authentication input[type="password"].form-control,
#registration input[type="password"].form-control {
    padding-right: 50px !important;
}

/* Custom select2 wrapper */
#checkout .custom-select2 {
    width: 100%;
}

/* =============================================
   CHECKOUT - COMPANY TOGGLE (Zakup na firmę)
   ============================================= */

.checkout-company-toggle {
    margin-bottom: 15px;
    padding: 12px 15px;
    background: #f8f8f8;
    border: 1px solid #eee;
    border-radius: 20px !important;
    width: 95%;
    margin-left: auto;
    margin-right: auto;
}

.checkout-company-toggle__label {
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    margin: 0;
}

.checkout-company-toggle__checkbox {
    width: 18px;
    height: 18px;
    accent-color: #000;
    cursor: pointer;
}

.checkout-company-toggle__text {
    font-size: 14px;
    font-weight: 600;
    color: #333;
}

/* Company fields container */
.checkout-company-field {
    /* Hidden by default, shown via JS */
}

/* =============================================
   CHECKOUT MOBILE STEP INDICATOR
   ============================================= */

/* Hide on desktop */
.checkout-mobile-steps {
    display: none;
}

@media (max-width: 767px) {
    .checkout-mobile-steps {
        display: block;
        padding: 20px 15px;
        background: #fff;
        border-bottom: 1px solid var(--atrophy-border);
        margin: 0 -15px 20px -15px;
        position: sticky;
        top: 0;
        z-index: 100;
    }

    .checkout-mobile-steps__track {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0;
    }

    .checkout-mobile-steps__step {
        width: 36px;
        height: 36px;
        border-radius: 50% !important;
        border: 2px solid #ccc;
        background: #fff;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: all 0.3s ease;
        flex-shrink: 0;
    }

    .checkout-mobile-steps__number {
        font-size: 14px;
        font-weight: 700;
        color: #ccc;
        transition: color 0.3s ease;
    }

    /* Line between steps */
    .checkout-mobile-steps__line {
        width: 40px;
        height: 2px;
        background: #ccc;
        transition: background 0.3s ease;
    }

    /* Completed step */
    .checkout-mobile-steps__step.is-complete {
        border-color: #000;
        background: #000;
    }

    .checkout-mobile-steps__step.is-complete .checkout-mobile-steps__number {
        color: #fff;
    }

    /* Completed line */
    .checkout-mobile-steps__line.is-complete {
        background: #000;
    }

    /* Current step */
    .checkout-mobile-steps__step.is-current {
        border-color: #000;
        background: #fff;
        transform: scale(1.1);
    }

    .checkout-mobile-steps__step.is-current .checkout-mobile-steps__number {
        color: #000;
    }

    /* Step label */
    .checkout-mobile-steps__label {
        text-align: center;
        margin-top: 12px;
        font-size: 12px;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        color: #000;
    }

    /* Hide original step numbers on mobile */
    .checkout-step .step-number {
        display: none;
    }

    /* Make step titles smaller on mobile */
    .checkout-step .step-title {
        font-size: 14px;
        padding: 8px 0;
    }
}
.furgonetka-checkout-btn-container-cart,.furgonetka_display_cart_modal_content{
    display: none !important;
}
.js-przelewy24-installment-widget-max{
    display: none;
}

body#checkout section.checkout-step .address{
    border-radius: 8px !important;
}
#order-slips-link{
    display: none;
}
#identity-link2{
    display: none;
}
select.form-control:not([size]):not([multiple]){
    height: 3rem;
}
.my-account-page-content-wrapper, .page-authentication #content, .page-customer-account #content{
    border:0px;
}
#identity .h1,#registration .h1, #history .h1, #addresses .h1, #order-follow .h1, #module-ps_emailalerts-account .h1{
    display: none;
}
.order-returns{
    background: #ededed;
    padding:10px 10px;
    border-radius: 10px !important;
}
#history .order{
    background: #ededed;
    padding:10px 10px;
    border-radius: 10px !important;
    margin-top:10px;
}
.block-links ul>li a{
    font-size: 12px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.08em !important;
    font-weight: 500 !important;
    color: #2d2d2d !important;

}

#footer .block-content ul>li a{

    font-size: 12px !important;
   // text-transform: uppercase !important;
    letter-spacing: 0.08em !important;
    font-weight: 500 !important;
    color: #2d2d2d !important;

}

.input-group{
    width:95%;
    margin:0 auto;
}

/* Footer Newsletter */


.footer-newsletter .input-group {
    display: flex;
    gap: 8px;
    border: none !important;
    flex-wrap: nowrap;
}

.footer-newsletter input[type="email"],
.footer-newsletter input[type="text"] {
    border: 1px solid #ccc !important;
    border-radius: 32px !important;
    background: #fff !important;
    padding: 10px 16px !important;
    font-size: 13px;
    flex: 1;
    outline: none;
    font-family: var(--atrophy-font);
    min-width: 0;
}

.footer-newsletter input[type="email"]:focus,
.footer-newsletter input[type="text"]:focus {
    border-color: #000 !important;
}

.footer-newsletter button[type="submit"] {
    border: 1px solid #000 !important;
    border-radius: 32px !important;
    background: #000 !important;
    color: #fff !important;
    font-size: 12px;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 0.08em;
    cursor: pointer;
    padding: 10px 18px;
    white-space: nowrap;
    flex-shrink: 0;
}

.footer-newsletter button[type="submit"]:hover {
    background: #333 !important;
    border-color: #333 !important;
}

.footer-newsletter .alert {
    font-size: 12px;
    margin-top: 8px;
    padding: 6px 10px;
    border-radius: 8px !important;
}
#product-details-tab-card{
    display:none;
}
.discount,.product-flags .discount, .product-flags .on-sale{
    background:#d63e3e;
}
.autocomplete-suggestions{
    border-radius: 10px !important;
    padding: 10px 0px;
    margin-top: 16px;
    max-height: 400px;
}

/* ----- Product flags on listing ----- */
/* List view: shrink thumbnail container to image width so flags overlay the photo */
.product-miniature-list .thumbnail-container {
    display: inline-block;
    max-width: 100%;
}

/* Grid view: keep "brak na stanie" badge visible on hover */
@media (hover: hover) {
    .product-miniature-grid:hover .product-availability:has(.product-unavailable) {
        transform: translateX(-50%);
        opacity: 1;
    }
}
.product-miniature-grid .product-functional-buttons {
    background:transparent !important;
}
.product-miniature-grid .product-availability{
    opacity: 1;
    z-index: 20 !important;
}

/* ----- Size availability hover overlay ----- */
.thumbnail-container .size-hover-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(255, 255, 255, 0.96);
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    padding: 10px 8px;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s ease, visibility 0.2s ease;
    z-index: 3;
}

@media (hover: hover) {
    .product-miniature:hover .size-hover-overlay {
        opacity: 1;
        visibility: visible;
    }
    .product-miniature:hover .product-flags {
        opacity: 0;
        visibility: hidden;
    }
}

.size-hover-item {
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-weight: 600;
    padding: 3px 7px;
    border: 1px solid #1c1c1c;
    color: #1c1c1c;
}

.size-hover-item--oos {
    border-color: #ddd;
    color: #bbb;
    text-decoration: line-through;
}
.header-top a:not(.btn):not(.nav-link) {
    color: #47545d;
}

/* ----- Product thumbnail overlay (badges + reviews) ----- */
.product-thumbnail-overlay {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 4;
}

.product-thumbnail-overlay .atrophy-badges {
    pointer-events: auto;
}

.product-thumbnail-overlay .iqitreviews-simple,
.product-thumbnail-overlay .product-comments-ratings {
    position: absolute;
    bottom: 12px;
    right: 12px;
    pointer-events: auto;
    background: rgba(255, 255, 255, 0.85);
    backdrop-filter: blur(2px);
    padding: 3px 8px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
    color: #1c1c1c;
    display: flex;
    align-items: center;
    gap: 4px;
}

/* ----- Sale badge before product name ----- */
.product-sale-badge {
    display: inline-block;
    background: #8c1c13;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    padding: 2px 7px;
    border-radius: 2px;
    vertical-align: middle;
    margin-right: 6px;
    line-height: 1.6;
}
