:root {
    --bg: #f7f8fc;
    --surface: #fff;
    --surface-2: #f0f3ff;
    --text: #19202d;
    --muted: #667085;
    --primary: #5b5bd6;
    --primary-dark: #4646ba;
    --success: #16a34a;
    --danger: #dc2626;
    --border: #e7e9f2;
    --shadow: 0 16px 40px rgba(23, 35, 79, .08);
    --radius: 24px;
}

* { box-sizing: border-box; }

html, body { overflow-x: hidden; }

input, button, textarea, select { font: inherit; }

body {
    margin: 0;
    font-family: "Nunito", Inter, Segoe UI, Arial, sans-serif;
    background: var(--bg);
    color: var(--text);
    line-height: 1.5;
}

img { max-width: 100%; display: block; }
a { text-decoration: none; color: inherit; }

.container {
    width: min(1840px, calc(100% - 2px));
    margin: 0 auto;
}

.section { padding: 56px 0; }
.section.alt { background: #fbfbff; }
.narrow { width: min(820px, calc(100% - 16px)); }
.mt-16 { margin-top: 16px; }

.header {
    position: sticky;
    top: 0;
    z-index: 20;
    background: rgba(247, 248, 252, .9);
    backdrop-filter: blur(12px);
    border-bottom: 1px solid rgba(231, 233, 242, .8);
}

.nav-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 16px 0;
}

.brand {
    display: flex;
    align-items: center;
    gap: 14px;
    font-weight: 900;
    font-size: 1.7rem;
    letter-spacing: -.02em;
}

.brand img { width: 52px; height: 52px; object-fit: contain; border-radius: 14px; }

.nav {
    display: flex;
    gap: 24px;
    align-items: center;
}

.nav a {
    color: #475467;
    font-weight: 800;
    font-size: 1.08rem;
    padding: 10px 4px;
}

.nav a:hover {
    color: var(--primary);
}

.cart-link {
    color: #475467;
    font-weight: 800;
    font-size: 1.05rem;
}

.nav-actions {
    display: flex;
    align-items: center;
    gap: 12px;
}

.user-chip {
    padding: 10px 14px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 999px;
}

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: none;
    border-radius: 16px;
    padding: 12px 18px;
    font-weight: 700;
    cursor: pointer;
    transition: .25s ease;
}

.btn:hover { transform: translateY(-1px); }

.btn-primary {
    background: var(--primary);
    color: #fff;
    box-shadow: var(--shadow);
}

.btn-primary:hover { background: var(--primary-dark); }

.btn-soft {
    background: var(--surface);
    color: var(--text);
    border: 1px solid var(--border);
}

.btn-danger {
    background: #fff1f2;
    color: var(--danger);
    border: 1px solid #fecdd3;
}

.btn-block { width: 100%; }

.hero {
    padding: 72px 0 28px;
    background: linear-gradient(180deg, #f9fbff 0%, #f7f8fc 100%);
}

.hero-grid {
    display: grid;
    grid-template-columns: 1.15fr .85fr;
    gap: 32px;
    align-items: center;
}

.eyebrow {
    display: inline-flex;
    padding: 8px 12px;
    border-radius: 999px;
    background: #eef2ff;
    color: var(--primary);
    font-weight: 700;
    margin-bottom: 18px;
}

.hero h1 {
    font-size: clamp(2.4rem, 4vw, 4rem);
    line-height: 1.05;
    margin: 0 0 16px;
    letter-spacing: -.04em;
}

.hero p {
    font-size: 1.1rem;
    color: var(--muted);
    max-width: 640px;
}

.hero-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 24px;
}

.hero-card {
    background: linear-gradient(135deg, #eef2ff, #fff7f1);
    border: 1px solid var(--border);
    border-radius: 32px;
    box-shadow: var(--shadow);
    padding: 22px;
}

.section-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 24px;
}

.section-head.compact { margin-bottom: 18px; }

.section-head h2,
.admin-head h1 {
    margin: 0;
    font-size: 2rem;
    letter-spacing: -.03em;
}

.section-head p,
.admin-head p {
    margin: 0;
    color: var(--muted);
}

.category-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}

.category-card {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 24px;
    padding: 24px;
    box-shadow: var(--shadow);
    transition: .25s ease;
}

.category-card:hover,
.product-card:hover { transform: translateY(-5px); }

.category-icon {
    font-size: 2rem;
    margin-bottom: 8px;
}

.category-card h3 { margin: 8px 0; }
.category-card p { margin: 0; color: var(--muted); }

.product-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
}

.product-card {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 24px;
    overflow: hidden;
    box-shadow: var(--shadow);
    transition: .25s ease;
    display: flex;
    flex-direction: column;
}

.product-image-wrap {
    background: linear-gradient(180deg, #f8faff, #edf2ff);
    aspect-ratio: 3 / 4;
    min-height: 0;
    padding: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.product-image {
    width: 100%;
    height: 100%;
    object-fit: contain;
    aspect-ratio: 3 / 4;
    transition: transform .25s ease;
}

.product-card:hover .product-image { transform: scale(1.04); }

.product-body {
    padding: 18px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    flex: 1;
}

.product-body h3 {
    margin: 0;
    font-size: 1.08rem;
    min-height: 54px;
}

.product-body p {
    margin: 0;
    color: var(--muted);
    min-height: 52px;
}

.product-category {
    color: var(--primary);
    font-weight: 700;
    font-size: .9rem;
}

.price-row {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 8px 0 0;
}

.price-row strong { font-size: 1.2rem; }
.price-row span { text-decoration: line-through; color: var(--muted); }
.price-row.big strong { font-size: 2rem; }

.product-actions {
    display: grid;
    gap: 10px;
    margin-top: auto;
}

.catalog-layout,
.cart-layout,
.checkout-layout,
.product-detail {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 22px;
}

.filter-panel,
.summary-card,
.form-card,
.table-card,
.detail-panel,
.gallery-main,
.empty-box,
.success-box,
.detail-box {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 24px;
    box-shadow: var(--shadow);
}

.filter-panel {
    padding: 20px;
    align-self: start;
    position: sticky;
    top: 90px;
}

.filter-link {
    display: block;
    padding: 12px 14px;
    border-radius: 14px;
    color: var(--muted);
    font-weight: 700;
}

.filter-link.active,
.filter-link:hover {
    background: var(--surface-2);
    color: var(--primary);
}

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

.gallery-main {
    padding: 24px;
    background: linear-gradient(180deg, #f8faff, #edf2ff);
}

.detail-panel { padding: 24px; }
.detail-box { padding: 18px; margin-top: 18px; }
.lead { font-size: 1.06rem; color: var(--muted); }
.stock { font-weight: 700; }
.stock.in { color: var(--success); }
.stock.out { color: var(--danger); }

.add-form {
    display: flex;
    gap: 12px;
    margin: 18px 0;
}

.add-form input,
.form-grid input,
.form-grid textarea,
.form-grid select {
    width: 100%;
    padding: 14px 16px;
    border-radius: 16px;
    border: 1px solid var(--border);
    background: #fff;
    font: inherit;
}

.form-grid textarea { min-height: 110px; resize: vertical; }
.form-grid label { display: block; margin-bottom: 8px; font-weight: 700; }

.form-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}

.form-grid.single { grid-template-columns: 1fr; }
.form-grid .full { grid-column: 1 / -1; }
.form-card { padding: 24px; }
.validation { color: var(--danger); margin-bottom: 16px; }
.checkbox { display: flex; align-items: center; gap: 10px; font-weight: 700; }
.checkbox input { width: auto; }

.summary-card {
    padding: 22px;
    align-self: start;
    position: sticky;
    top: 90px;
}

.summary-row,
.mini-item {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 0;
    border-bottom: 1px solid var(--border);
}

.summary-row.total {
    font-size: 1.1rem;
    border-bottom: none;
    padding-bottom: 0;
}

.cart-list { display: flex; flex-direction: column; gap: 14px; }

.cart-item {
    display: grid;
    grid-template-columns: 92px 1fr auto auto auto;
    gap: 14px;
    align-items: center;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 24px;
    padding: 18px;
    box-shadow: var(--shadow);
}

.cart-item img,
.thumb {
    width: 76px;
    height: 76px;
    object-fit: contain;
    background: #f8faff;
    border-radius: 18px;
    padding: 8px;
}

.qty-form { display: flex; gap: 8px; align-items: center; }
.qty-form input { width: 88px; padding: 10px 12px; border: 1px solid var(--border); border-radius: 12px; }

.empty-box,
.success-box {
    text-align: center;
    padding: 36px 28px;
}

.alert {
    padding: 14px 18px;
    border-radius: 18px;
    margin: 16px 0;
}

.alert.success {
    background: #ecfdf3;
    color: #166534;
    border: 1px solid #bbf7d0;
}

.badge {
    display: inline-flex;
    padding: 8px 12px;
    border-radius: 999px;
    background: #eef2ff;
    color: var(--primary);
    font-weight: 700;
    font-size: .85rem;
}

.badge.paid {
    background: #ecfdf3;
    color: #166534;
}

.table-card { padding: 18px; }
.table { width: 100%; border-collapse: collapse; }
.table th, .table td { padding: 14px 10px; border-bottom: 1px solid var(--border); text-align: left; vertical-align: middle; }
.actions { display: flex; gap: 8px; align-items: center; }
.actions.column { flex-direction: column; }
.row-between { display: flex; justify-content: space-between; align-items: center; }

.admin-body { background: #f3f5fb; }
.admin-shell { display: grid; grid-template-columns: 280px 1fr; min-height: 100vh; }
.admin-sidebar { background: #111827; color: #e5e7eb; padding: 22px; position: sticky; top: 0; height: 100vh; }
.admin-brand { color: #fff; margin-bottom: 26px; }
.admin-brand img { filter: brightness(3); }
.admin-nav { display: flex; flex-direction: column; gap: 10px; }
.admin-nav a { padding: 12px 14px; border-radius: 14px; color: #cbd5e1; font-weight: 700; }
.admin-nav a:hover { background: rgba(255, 255, 255, .08); color: #fff; }
.admin-content { padding: 26px; }
.stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-bottom: 18px; }
.stat-card { background: var(--surface); border: 1px solid var(--border); border-radius: 24px; box-shadow: var(--shadow); padding: 20px; }
.stat-card span { display: block; color: var(--muted); margin-bottom: 8px; }
.stat-card strong { font-size: 1.9rem; }
.image-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.image-card { background: #fff; border: 1px solid var(--border); border-radius: 20px; padding: 14px; }
.image-card img { width: 100%; aspect-ratio: 3 / 4; object-fit: contain; background: #f8faff; border-radius: 16px; padding: 10px; }

.footer {
    background: #0f172a;
    color: #cbd5e1;
    padding-top: 48px;
    margin-top: 24px;
}

.footer-grid {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    gap: 20px;
    padding-bottom: 30px;
}

.footer h3,
.footer h4 { color: #fff; margin-top: 0; }
.footer a, .footer p { display: block; margin: 10px 0; color: #cbd5e1; }
.footer-bottom { padding: 18px 0; border-top: 1px solid rgba(255, 255, 255, .08); font-size: .95rem; }

@media (max-width: 1024px) {
    .hero-grid,
    .product-grid,
    .category-grid,
    .catalog-layout,
    .cart-layout,
    .checkout-layout,
    .product-detail,
    .stats-grid,
    .image-grid,
    .footer-grid,
    .admin-shell {
        grid-template-columns: 1fr;
    }

    .nav { display: none; }
    .filter-panel, .summary-card { position: static; }
}

@media (max-width: 720px) {
    .product-grid { grid-template-columns: 1fr 1fr; }
    .category-grid { grid-template-columns: 1fr; }
    .cart-item { grid-template-columns: 1fr; }
    .nav-wrap { flex-wrap: wrap; }
    .nav-actions { width: 100%; justify-content: flex-end; }
}


.campaign-bar {
    position: relative;
    z-index: 30;
    font-weight: 700;
    font-size: .95rem;
}

.campaign-bar-inner {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    min-height: 44px;
    text-align: center;
}

.campaign-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,.18);
    color: inherit;
}

.live-hero-grid {
    grid-template-columns: 1.08fr .92fr;
    gap: 48px;
}

.hero-copy {
    max-width: 680px;
}

.hero-copy h1 {
    max-width: 820px;
}

.live-hero-card {
    padding: 18px;
    min-height: 420px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #eef2ff, #fff8f1);
}

.live-hero-card img {
    width: 100%;
    height: auto;
    max-height: 360px;
    object-fit: contain;
}

.hero-micro {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 18px;
    margin-top: 18px;
    color: var(--muted);
    font-weight: 700;
    font-size: .95rem;
}

.feature-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 18px;
}

.admin-head p {
    margin: 8px 0 0;
    color: var(--muted);
}

@media (max-width: 1024px) {
    .campaign-bar-inner {
        flex-direction: column;
        padding: 10px 0;
    }

    .live-hero-grid,
    .feature-grid {
        grid-template-columns: 1fr;
    }

    .live-hero-card {
        min-height: 320px;
    }
}

/* --- Live home redesign + filters --- */
.hero-visual {
    padding: 56px 0 20px;
}

.hero-grid-visual {
    grid-template-columns: 1fr 1.05fr;
    gap: 48px;
    align-items: center;
}

.compact-copy h1 {
    font-size: clamp(2.6rem, 4vw, 4.4rem);
    max-width: 620px;
    margin-bottom: 12px;
}

.compact-copy p {
    max-width: 520px;
    margin: 0;
}

.hero-collage {
    position: relative;
    min-height: 420px;
}

.hero-collage-main {
    min-height: 420px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
}

.hero-collage-main img {
    width: 100%;
    max-height: 360px;
    object-fit: contain;
}

.hero-floating-card {
    position: absolute;
    width: 128px;
    height: 128px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 28px;
    box-shadow: var(--shadow);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 18px;
}

.hero-floating-card.left {
    left: -18px;
    bottom: 12px;
}

.hero-floating-card.right {
    right: 12px;
    top: -8px;
}

.section-tight {
    padding: 16px 0 10px;
}

.mini-feature-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.mini-feature-card {
    display: flex;
    align-items: center;
    gap: 12px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 20px;
    box-shadow: var(--shadow);
    padding: 16px 18px;
}

.mini-feature-card span {
    font-size: 1.35rem;
}

.quick-links-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}

.quick-link-card {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 16px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 28px;
    box-shadow: var(--shadow);
    padding: 24px;
    transition: .25s ease;
}

.quick-link-card:hover {
    transform: translateY(-4px);
}

.quick-link-card.sale {
    background: linear-gradient(135deg, #fff4f6, #ffffff);
}

.quick-link-card.new {
    background: linear-gradient(135deg, #f3f7ff, #ffffff);
}

.quick-link-card.best {
    background: linear-gradient(135deg, #f8fff4, #ffffff);
}

.quick-tag {
    display: inline-flex;
    margin-bottom: 10px;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(91, 91, 214, .08);
    color: var(--primary);
    font-weight: 700;
    font-size: .85rem;
}

.quick-link-card h3 {
    margin: 0 0 8px;
    font-size: 1.4rem;
}

.quick-link-card p {
    margin: 0;
    color: var(--muted);
    max-width: 280px;
}

.visual-category-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}

.category-slider {
    position: relative;
    padding: 0 54px 30px;
}

.category-slide {
    padding: 10px;
}

.visual-category-card {
    overflow: hidden;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 28px;
    box-shadow: var(--shadow);
    transition: .25s ease;
}

.visual-category-card:hover {
    transform: translateY(-5px);
}

.visual-category-media {
    aspect-ratio: 3 / 4;
    background: linear-gradient(180deg, #f8faff, #edf2ff);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.visual-category-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.visual-category-body {
    padding: 20px;
}

.visual-category-body h3 {
    margin: 0 0 8px;
}

.visual-category-body p {
    margin: 0;
    color: var(--muted);
}

.product-meta-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.product-badges {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}

.pill-badge {
    display: inline-flex;
    padding: 5px 10px;
    border-radius: 999px;
    font-size: .76rem;
    font-weight: 700;
}

.pill-badge.new {
    background: #eef2ff;
    color: var(--primary);
}

.pill-badge.sale {
    background: #fff1f2;
    color: #be123c;
}

.products-page-layout {
    grid-template-columns: 290px minmax(0, 1fr);
}

.filter-group-spacer {
    height: 16px;
}

/* --- Cart fixed layout --- */
.cart-layout-fixed {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 24px;
    align-items: start;
}

.cart-item-fixed {
    display: grid;
    grid-template-columns: 96px minmax(0, 1fr) 210px 120px 90px;
    gap: 16px;
    align-items: center;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 24px;
    padding: 18px;
    box-shadow: var(--shadow);
    margin-bottom: 16px;
}

.cart-item-image img {
    width: 96px;
    height: 96px;
    object-fit: contain;
    background: #f8faff;
    border-radius: 18px;
    padding: 10px;
}

.cart-item-content h3 {
    margin: 0 0 8px;
    font-size: 1.15rem;
}

.cart-item-price {
    color: var(--muted);
}

.qty-form-fixed {
    display: flex;
    gap: 10px;
    align-items: center;
}

.qty-form-fixed input {
    width: 82px;
    padding: 12px 14px;
    border: 1px solid var(--border);
    border-radius: 14px;
    background: #fff;
    font: inherit;
}

.cart-item-total {
    text-align: right;
}

.cart-item-remove {
    display: flex;
    justify-content: flex-end;
}

.summary-card-fixed {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 24px;
    box-shadow: var(--shadow);
    padding: 24px;
    position: sticky;
    top: 120px;
}

.summary-card-fixed h3 {
    margin: 0 0 18px;
    font-size: 1.5rem;
}

/* --- Checkout fixed layout --- */
.checkout-layout-fixed {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 420px;
    gap: 24px;
    align-items: start;
}

.checkout-form-card {
    min-width: 0;
}

.checkout-summary-card {
    top: 120px;
}

/* responsive overrides */
@media (max-width: 1100px) {
    .hero-grid-visual,
    .mini-feature-grid,
    .quick-links-grid,
    .visual-category-grid,
    .checkout-layout-fixed,
    .cart-layout-fixed {
        grid-template-columns: 1fr;
    }

    .hero-collage {
        min-height: auto;
    }

    .hero-collage-main {
        min-height: 320px;
    }

    .summary-card-fixed,
    .checkout-summary-card {
        position: static;
    }
}

@media (max-width: 820px) {
    .cart-item-fixed {
        grid-template-columns: 1fr;
    }

    .cart-item-image,
    .cart-item-remove {
        display: flex;
        justify-content: flex-start;
    }

    .cart-item-total {
        text-align: left;
    }

    .qty-form-fixed {
        flex-wrap: wrap;
    }

    .product-grid,
    .quick-links-grid,
    .visual-category-grid {
        grid-template-columns: 1fr;
    }

    .compact-copy h1 {
        font-size: 2.5rem;
    }
}

.container-wide {
    max-width: 1820px;
}

.promo-media-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}

.promo-media-card {
    display: grid;
    grid-template-columns: 1.2fr .8fr;
    align-items: center;
    gap: 18px;
    min-height: 240px;
}

.promo-media-copy {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.promo-media-copy strong {
    margin-top: auto;
}

.promo-media-visual {
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,.55);
    border: 1px solid var(--border);
    border-radius: 24px;
    min-height: 180px;
    padding: 16px;
}

.promo-media-visual img {
    width: 100%;
    max-height: 180px;
    object-fit: contain;
}

.text-muted {
    color: var(--muted);
}

@media (max-width: 1100px) {
    .promo-media-grid {
        grid-template-columns: 1fr;
    }

    .promo-media-card {
        grid-template-columns: 1fr;
    }
}

.hero-slider-home {
    padding-top: 56px;
    padding-bottom: 24px;
}

.hero-topline {
    text-align: center;
    max-width: 1460px;
    margin: 0 auto 34px;
}

.hero-topline .eyebrow {
    margin-bottom: 14px;
}

.hero-topline h1 {
    margin: 0;
    font-size: clamp(2rem, 3.2vw, 3.9rem);
    line-height: 1.12;
    letter-spacing: -.02em;
}

.hero-topline p {
    margin: 16px auto 0;
    max-width: 700px;
    color: var(--muted);
    font-size: 1.08rem;
}

.hero-actions-centered {
    justify-content: center;
}

.home-slider {
    position: relative;
    padding: 0 54px 30px;
}

.home-slider-viewport {
    overflow: hidden;
}

.home-slider-track {
    display: flex;
    transition: transform .55s ease;
    will-change: transform;
}

.home-slide {
    padding: 10px;
}

.home-slide-card {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-height: 100%;
    padding: 20px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 28px;
    box-shadow: var(--shadow);
    transition: transform .25s ease, box-shadow .25s ease;
}

.home-slide-card:hover {
    transform: translateY(-4px);
}

.category-slide .visual-category-card {
    height: 100%;
}

.home-slide-image-wrap {
    aspect-ratio: 1.1 / 1;
    border-radius: 24px;
    background: linear-gradient(180deg, #f8faff, #edf2ff);
    padding: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.home-slide-image {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.home-slide-body h3 {
    margin: 0 0 8px;
    font-size: 1.35rem;
}

.home-slide-body p {
    margin: 0 0 10px;
    color: var(--muted);
    min-height: 48px;
}

.home-slide-body strong {
    color: var(--primary);
}

.slider-arrow {
    position: absolute;
    top: 42%;
    transform: translateY(-50%);
    width: 42px;
    height: 42px;
    border-radius: 999px;
    border: 1px solid var(--border);
    background: var(--surface);
    box-shadow: var(--shadow);
    font-size: 1.5rem;
    cursor: pointer;
    z-index: 2;
}

.slider-arrow-left { left: 0; }
.slider-arrow-right { right: 0; }

.slider-dots {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 14px;
}

.slider-dot {
    width: 10px;
    height: 10px;
    border-radius: 999px;
    border: none;
    background: #d7dcf0;
    cursor: pointer;
}

.slider-dot.active {
    width: 28px;
    background: var(--primary);
}

.whatsapp-float {
    position: fixed;
    right: 22px;
    bottom: 22px;
    z-index: 70;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 18px;
    border-radius: 999px;
    background: #25d366;
    color: #fff;
    font-weight: 800;
    box-shadow: 0 18px 45px rgba(37, 211, 102, .35);
}

.whatsapp-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 999px;
    background: rgba(255,255,255,.18);
    font-size: 1rem;
}

.row-actions {
    display: flex;
    gap: 8px;
    align-items: center;
}

.row-actions form {
    margin: 0;
}

@media (max-width: 1099px) {
    .home-slider,
    .category-slider {
        padding-left: 46px;
        padding-right: 46px;
    }
}

@media (max-width: 767px) {
    .home-slider,
    .category-slider {
        padding-left: 0;
        padding-right: 0;
    }

    .slider-arrow {
        display: none;
    }

    .whatsapp-text {
        display: none;
    }

    .whatsapp-float {
        padding: 14px;
    }
}


.hero-title-soft {
    font-family: "Segoe Print", "Comic Sans MS", "Trebuchet MS", "Arial Rounded MT Bold", sans-serif;
    font-weight: 700;
    font-size: clamp(2rem, 3.1vw, 3.8rem);
    line-height: 1.15;
    letter-spacing: -.01em;
    color: #4d5975;
    white-space: nowrap;
}

.site-logo-preview {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    padding: 14px 18px;
    border: 1px solid var(--border);
    border-radius: 18px;
    background: #fff;
}

.site-logo-preview img {
    width: 54px;
    height: 54px;
    object-fit: contain;
    border-radius: 14px;
}

.site-logo-preview span {
    font-size: 1.2rem;
    font-weight: 800;
}

@media (max-width: 1280px) {
    .hero-title-soft {
        white-space: normal;
    }
}

@media (max-width: 900px) {
    .brand {
        font-size: 1.35rem;
    }

    .brand img {
        width: 46px;
        height: 46px;
    }
}


.header-search {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-width: 220px;
    padding: 10px 14px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 999px;
}

.header-search input {
    border: none;
    outline: none;
    background: transparent;
    width: 100%;
    min-width: 0;
}

.header-search-icon {
    color: var(--muted);
    font-size: 1rem;
}

.cart-pill,
.account-pill {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 11px 16px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 999px;
    font-weight: 800;
}

.cart-pill-icon,
.account-avatar {
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #eef2ff;
}

.cart-badge {
    min-width: 24px;
    height: 24px;
    padding: 0 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: var(--primary);
    color: #fff;
    font-size: .8rem;
}

.account-menu {
    position: relative;
}

.account-dropdown {
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    min-width: 220px;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 20px;
    box-shadow: var(--shadow);
    padding: 10px;
    display: none;
}

.account-dropdown a,
.account-dropdown button {
    display: flex;
    width: 100%;
    align-items: center;
    padding: 12px 14px;
    border-radius: 14px;
    background: transparent;
    border: none;
    text-align: left;
    font-weight: 700;
    cursor: pointer;
}

.account-dropdown a:hover,
.account-dropdown button:hover {
    background: #f5f7ff;
    color: var(--primary);
}

.account-menu:hover .account-dropdown {
    display: block;
}

.account-shell {
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 24px;
}

.account-sidebar {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 24px;
    box-shadow: var(--shadow);
    padding: 18px;
    height: fit-content;
    position: sticky;
    top: 100px;
}

.account-side-link {
    display: block;
    padding: 12px 14px;
    border-radius: 16px;
    font-weight: 800;
    color: #475467;
}

.account-side-link:hover,
.account-side-link.active {
    background: #eef2ff;
    color: var(--primary);
}

.account-content {
    display: grid;
    gap: 18px;
}

.account-welcome-card,
.address-card {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 24px;
    box-shadow: var(--shadow);
    padding: 24px;
}

.account-welcome-card h3,
.address-card h3 {
    margin: 14px 0 10px;
    font-size: 1.6rem;
}

.account-stats {
    margin-bottom: 0;
}

.account-addresses {
    grid-template-columns: minmax(320px, .9fr) minmax(0, 1.1fr);
    align-items: start;
}

.address-list {
    display: grid;
    gap: 16px;
}

@media (max-width: 1180px) {
    .nav-wrap {
        flex-wrap: wrap;
    }

    .nav {
        order: 3;
        width: 100%;
        justify-content: center;
        flex-wrap: wrap;
    }

    .nav-actions {
        margin-left: auto;
        flex-wrap: wrap;
        justify-content: flex-end;
    }

    .header-search {
        min-width: 180px;
    }

    .account-shell,
    .account-addresses {
        grid-template-columns: 1fr;
    }

    .account-sidebar {
        position: static;
    }
}

@media (max-width: 767px) {
    .header-search {
        width: 100%;
        min-width: 0;
    }

    .cart-pill span:not(.cart-badge),
    .account-pill span:last-child {
        display: none;
    }
}

.brand span { line-height: 1; }
.account-menu { position: relative; padding-bottom: 10px; margin-bottom: -10px; }
.account-dropdown { position: absolute; top: calc(100% - 2px); right: 0; min-width: 220px; background: var(--surface); border: 1px solid var(--border); border-radius: 18px; box-shadow: var(--shadow); padding: 10px; display: none; z-index: 30; }
.account-dropdown a, .account-dropdown button { display: block; width: 100%; text-align: left; padding: 10px 12px; border: 0; background: transparent; border-radius: 12px; color: var(--text); font-weight: 700; cursor: pointer; }
.account-dropdown a:hover, .account-dropdown button:hover { background: #f4f6ff; }
.account-menu:hover .account-dropdown { display: block; }
.account-pill, .cart-pill { display: inline-flex; align-items: center; gap: 8px; padding: 10px 14px; background: var(--surface); border: 1px solid var(--border); border-radius: 999px; font-weight: 800; }
.cart-badge { display: inline-flex; align-items: center; justify-content: center; min-width: 24px; height: 24px; padding: 0 6px; background: var(--primary); color: #fff; border-radius: 999px; font-size: .85rem; }
.account-shell { display: grid; grid-template-columns: 250px 1fr; gap: 24px; align-items: start; }
.account-sidebar { display: grid; gap: 10px; }
.account-side-link { display: block; padding: 14px 16px; border-radius: 18px; background: var(--surface); border: 1px solid var(--border); font-weight: 800; }
.account-side-link.active { background: #eef2ff; color: var(--primary); border-color: #d7ddff; }
.account-content { display: grid; gap: 18px; }
.account-welcome-card, .address-card, .saved-address-box { background: var(--surface); border: 1px solid var(--border); border-radius: 24px; padding: 22px; box-shadow: var(--shadow); }
.address-list { display: grid; gap: 16px; }
.row-between { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.saved-address-head h3 { margin: 0 0 4px; }
.saved-address-head p { margin: 0; color: var(--muted); }
.checkout-layout-fixed { display: grid; grid-template-columns: minmax(0,1fr) 340px; gap: 20px; align-items: start; }
.checkout-form-card textarea { min-height: 84px; }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 16px; }
.form-grid .full { grid-column: 1 / -1; }
.form-grid label { display: block; margin-bottom: 6px; font-weight: 800; }
.form-grid input, .form-grid textarea, .form-grid select, .saved-address-box select, .header-search input { width: 100%; border: 1px solid var(--border); border-radius: 16px; padding: 13px 14px; background: #fff; }
.table { width: 100%; border-collapse: collapse; }
.table th, .table td { padding: 14px 12px; border-bottom: 1px solid var(--border); text-align: left; }
.table th { font-size: .92rem; color: var(--muted); }
.badge { display: inline-flex; align-items: center; padding: 6px 10px; border-radius: 999px; background: #eef2ff; color: var(--primary); font-weight: 800; font-size: .82rem; }
.badge.paid { background: #ecfdf3; color: #166534; }
.alert.success { background: #ecfdf3; color: #166534; border: 1px solid #bbf7d0; padding: 14px 16px; border-radius: 18px; }
.validation { color: var(--danger); }
.checkbox { display: inline-flex; align-items: center; gap: 10px; }
.header-search { position: relative; }
.header-search-icon { position: absolute; left: 14px; top: 50%; transform: translateY(-50%); color: var(--muted); }
.header-search input { padding-left: 34px; min-width: 190px; }
.site-logo-preview { display: flex; align-items: center; gap: 14px; padding: 16px; border: 1px solid var(--border); border-radius: 18px; background: #fff; }
.site-logo-preview img { width: 56px; height: 56px; object-fit: contain; }
@media (max-width: 900px) {
  .account-shell, .checkout-layout-fixed { grid-template-columns: 1fr; }
  .form-grid { grid-template-columns: 1fr; }
}


.field-hint {
    display: block;
    margin-top: 6px;
    color: var(--muted);
    font-size: .92rem;
}

.product-gallery-shell {
    position: relative;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 24px;
    box-shadow: var(--shadow);
    padding: 24px 24px 18px;
}

.product-gallery-stage {
    min-height: 760px;
    background: linear-gradient(180deg, #ffffff, #f5f7ff);
    border: 1px solid var(--border);
    border-radius: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 26px;
    overflow: hidden;
}

.gallery-image,
.gallery-video {
    width: 100%;
    height: 100%;
    max-height: 720px;
    aspect-ratio: 3 / 4;
    object-fit: contain;
}

.gallery-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 52px;
    height: 52px;
    border-radius: 999px;
    border: 1px solid var(--border);
    background: rgba(255,255,255,.96);
    box-shadow: var(--shadow);
    font-size: 2rem;
    line-height: 1;
    color: var(--text);
    cursor: pointer;
    z-index: 2;
}

.gallery-arrow-left { left: 12px; }
.gallery-arrow-right { right: 12px; }

.product-thumb-row {
    display: flex;
    gap: 14px;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 18px;
}

.product-thumb {
    position: relative;
    width: 88px;
    height: 118px;
    border-radius: 16px;
    border: 1px solid var(--border);
    background: #fff;
    padding: 8px;
    cursor: pointer;
    overflow: hidden;
}

.product-thumb img {
    width: 100%;
    height: 100%;
    aspect-ratio: 3 / 4;
    object-fit: contain;
}

.product-thumb.active {
    border-color: #f59e0b;
    box-shadow: 0 0 0 2px rgba(245, 158, 11, .18);
}

.video-thumb-badge {
    position: absolute;
    left: 8px;
    top: 8px;
    z-index: 1;
    padding: 4px 8px;
    border-radius: 999px;
    background: rgba(25, 32, 45, .82);
    color: #fff;
    font-size: .72rem;
    font-weight: 800;
}

.video-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}

.video-card {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 22px;
    padding: 16px;
}

.video-card video {
    width: 100%;
    aspect-ratio: 3 / 4;
    border-radius: 16px;
    background: #111827;
    object-fit: cover;
}

@media (max-width: 991px) {
    .product-gallery-stage { min-height: 420px; }
    .gallery-image, .gallery-video { max-height: 360px; }
    .video-grid { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
    .product-gallery-shell { padding: 18px 18px 14px; }
    .product-gallery-stage { min-height: 320px; padding: 18px; }
    .gallery-arrow { width: 44px; height: 44px; }
    .product-thumb { width: 74px; height: 74px; }
}


.container-wide {
    width: min(1700px, calc(100% - 40px));
    margin: 0 auto;
}

.product-card {
    min-width: 0;
}

.product-body,
.visual-category-body,
.home-slide-body {
    overflow-wrap: anywhere;
}

.admin-media-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 16px;
}

.admin-media-tile,
.admin-video-card {
    position: relative;
    display: block;
    background: #fff;
    border: 1px solid var(--border);
    border-radius: 20px;
    padding: 14px;
}

.admin-media-tile img {
    width: 100%;
    aspect-ratio: 3 / 4;
    object-fit: contain;
    border-radius: 16px;
    background: #f8faff;
    padding: 10px;
}

.admin-media-footer {
    display: flex;
    justify-content: center;
    margin-top: 12px;
}

.media-manage-card {
    border: 1px solid var(--border);
    border-radius: 22px;
    background: #fbfcff;
    padding: 18px;
}

.media-manage-head h3 {
    margin: 0;
}

.media-check {
    position: absolute;
    inset: 14px auto auto 14px;
    width: 18px;
    height: 18px;
    z-index: 2;
}

.media-check-label {
    position: absolute;
    top: 10px;
    left: 38px;
    z-index: 2;
    background: rgba(255,255,255,.96);
    border: 1px solid var(--border);
    border-radius: 999px;
    padding: 4px 10px;
    font-size: .8rem;
    font-weight: 800;
}

.btn-sm {
    padding: 10px 12px;
    border-radius: 12px;
    font-size: .92rem;
}

.product-edit-actions {
    gap: 16px;
}

@media (max-width: 991px) {
    .product-gallery-stage { min-height: 520px; }
    .gallery-image, .gallery-video { max-height: 480px; }
}

@media (max-width: 640px) {
    .container-wide { width: min(100%, calc(100% - 24px)); }
    .product-thumb { width: 70px; height: 94px; }
    .product-image-wrap { padding: 14px; }
}


.address-chip-row { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.address-card-head { align-items:flex-start; }
.favorites-list { display:flex; flex-direction:column; gap:16px; }
.favorite-row { display:grid; grid-template-columns:120px 1fr auto; gap:18px; align-items:center; background:var(--surface); border:1px solid var(--border); border-radius:24px; box-shadow:var(--shadow); padding:16px; }
.favorite-thumb img { width:100px; height:134px; object-fit:contain; background:#f8faff; border-radius:18px; padding:8px; }
.favorite-body h3 { margin:6px 0; }
.favorite-body p { margin:0; color:var(--muted); }
.favorite-side { display:flex; flex-direction:column; gap:12px; align-items:flex-end; }
.favorite-actions { display:flex; gap:10px; flex-wrap:wrap; justify-content:flex-end; }
.order-progress-card { background:var(--surface); border:1px solid var(--border); border-radius:24px; box-shadow:var(--shadow); padding:18px; margin-bottom:18px; }
.order-progress-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.order-step { border:1px dashed var(--border); border-radius:18px; padding:14px; text-align:center; color:var(--muted); }
.order-step span { display:inline-flex; width:34px; height:34px; border-radius:999px; background:#eef2ff; color:var(--primary); align-items:center; justify-content:center; font-weight:800; margin-bottom:8px; }
.order-step.active { border-style:solid; border-color:#c7d2fe; color:var(--text); background:#f8faff; }
.order-info-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
.account-menu { position:relative; padding-bottom:12px; margin-bottom:-12px; }
.account-dropdown { top:calc(100% + 6px) !important; }
@media (max-width: 900px){ .favorite-row, .order-info-grid, .order-progress-grid { grid-template-columns:1fr; } .favorite-side { align-items:stretch; } }

/* Package B */
.filter-panel-advanced .filter-stack { display:flex; flex-direction:column; gap:10px; }
.filter-panel-advanced input,
.filter-panel-advanced select,
.review-form-grid input,
.review-form-grid select,
.review-form-grid textarea { width:100%; border:1px solid var(--border); border-radius:14px; padding:12px 14px; background:#fff; }
.filter-price-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.filter-actions-row { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:8px; }
.products-page-layout-wide { grid-template-columns:320px 1fr; }
.section-head-catalog { align-items:flex-start; gap:16px; }
.popular-searches-inline { display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
.popular-searches-inline a, .chip-link { display:inline-flex; align-items:center; padding:8px 12px; border-radius:999px; border:1px solid var(--border); background:#fff; color:var(--text); text-decoration:none; }
.empty-state-card { background:var(--surface); border:1px solid var(--border); border-radius:28px; box-shadow:var(--shadow); padding:30px; text-align:center; }
.popular-searches-wrap { display:flex; gap:10px; flex-wrap:wrap; justify-content:center; margin-top:14px; }
.search-suggestions { position:absolute; top:calc(100% + 8px); left:0; right:0; background:#fff; border:1px solid var(--border); border-radius:18px; box-shadow:var(--shadow); padding:8px; z-index:50; }
.search-suggestion-item { display:flex; justify-content:space-between; gap:12px; padding:10px 12px; border-radius:12px; color:var(--text); text-decoration:none; }
.search-suggestion-item:hover { background:#f8faff; }
.rating-summary-row { display:flex; align-items:center; gap:10px; margin:8px 0 14px; }
.stars { display:inline-flex; gap:2px; color:#d1d5db; }
.star.filled { color:#f59e0b; }
.stars.large .star { font-size:1.2rem; }
.stars.compact .star { font-size:.95rem; }
.muted-text { color:var(--muted); }
.product-facts-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin:14px 0; }
.product-facts-grid div { background:#f8faff; border:1px solid var(--border); border-radius:18px; padding:12px 14px; }
.product-facts-grid span { display:block; color:var(--muted); font-size:.88rem; margin-bottom:4px; }
.detail-box-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.zoom-stage { overflow:hidden; }
.zoomable-image { transition:transform .2s ease; cursor:zoom-in; }
.zoom-button { position:absolute; right:16px; bottom:16px; z-index:3; border:none; background:rgba(255,255,255,.96); border-radius:999px; padding:10px 14px; font-weight:700; box-shadow:var(--shadow); }
.zoom-modal { position:fixed; inset:0; background:rgba(15,23,42,.72); display:flex; align-items:center; justify-content:center; z-index:90; }
.zoom-modal-body { width:min(92vw, 900px); max-height:88vh; display:flex; align-items:center; justify-content:center; }
.zoom-modal-image { max-width:100%; max-height:88vh; border-radius:24px; background:#fff; }
.zoom-modal-close { position:absolute; top:20px; right:20px; width:44px; height:44px; border:none; border-radius:999px; font-size:1.6rem; background:#fff; }
.review-layout { display:grid; grid-template-columns:260px 1fr; gap:18px; }
.review-summary-card, .review-list-card, .review-form-card { background:var(--surface); border:1px solid var(--border); border-radius:24px; box-shadow:var(--shadow); padding:20px; }
.review-score { font-size:2rem; display:block; margin-bottom:8px; }
.review-item { padding:14px 0; border-bottom:1px solid #eef2f7; }
.review-item:last-child { border-bottom:none; padding-bottom:0; }
.review-head { display:flex; justify-content:space-between; gap:10px; align-items:center; margin-bottom:8px; }
.review-form-grid { display:grid; grid-template-columns:180px 1fr; gap:14px; }
.review-form-grid .full { grid-column:1 / -1; }
.video-thumb-badge { position:absolute; top:8px; left:8px; background:rgba(15,23,42,.82); color:#fff; border-radius:999px; padding:5px 8px; font-size:.74rem; font-weight:800; }
.product-thumb { position:relative; }
@media (max-width: 991px) {
  .products-page-layout-wide, .review-layout, .detail-box-grid { grid-template-columns:1fr; }
  .product-facts-grid { grid-template-columns:1fr; }
}
@media (max-width: 640px) {
  .review-form-grid, .filter-price-grid, .filter-actions-row { grid-template-columns:1fr; }
}
.product-card-facts { display:flex; gap:8px; flex-wrap:wrap; margin:8px 0 10px; }
.product-card-facts span { padding:6px 10px; border-radius:999px; background:#f8faff; border:1px solid var(--border); color:var(--muted); font-size:.82rem; font-weight:700; }

.zoom-modal[hidden]{display:none !important;}
.admin-filter-grid{align-items:end;}
.admin-filter-actions{display:flex;gap:10px;align-items:end;}
.compact-form .form-grid{gap:14px;}
.sort-field{display:flex;align-items:center;gap:8px;}
.sort-field input{width:84px;}
.admin-media-footer.stack{display:flex;flex-direction:column;align-items:flex-start;gap:8px;}
.dashboard-panels{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
@media (max-width: 900px){.dashboard-panels{grid-template-columns:1fr;}}


/* Phase 1 */
.container-wide { width:min(1840px, calc(100% - 24px)); margin:0 auto; }
.breadcrumb-wrap { padding:14px 0 0; }
.breadcrumb-list { list-style:none; margin:0; padding:0; display:flex; gap:10px; flex-wrap:wrap; align-items:center; color:var(--muted); font-weight:700; font-size:.94rem; }
.breadcrumb-item { display:inline-flex; align-items:center; gap:10px; }
.breadcrumb-item:not(:last-child)::after { content:"›"; color:#98a2b3; }
.breadcrumb-item a:hover { color:var(--primary); }
.breadcrumb-item.active span { color:var(--text); }
.trust-strip { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.trust-item { display:flex; gap:14px; align-items:flex-start; padding:18px 20px; background:var(--surface); border:1px solid var(--border); border-radius:22px; box-shadow:var(--shadow); }
.trust-item span { width:42px; height:42px; display:inline-flex; align-items:center; justify-content:center; border-radius:999px; background:#eef2ff; font-size:1.2rem; }
.trust-item strong, .trust-item small { display:block; }
.trust-item small { color:var(--muted); margin-top:3px; }
.quick-link-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.home-showcase-grid { display:grid; grid-template-columns:1.2fr .8fr; gap:18px; }
.home-showcase-card { padding:26px; border-radius:28px; border:1px solid var(--border); background:linear-gradient(135deg,#ffffff,#f8faff); box-shadow:var(--shadow); }
.home-showcase-card.large { background:linear-gradient(135deg,#eef2ff,#fff8f3); }
.home-showcase-card h3 { margin:0 0 8px; font-size:1.7rem; }
.home-showcase-card p { margin:0 0 18px; color:var(--muted); max-width:560px; }
.product-image-hover { position:absolute; inset:0; opacity:0; transition:opacity .25s ease, transform .25s ease; object-fit:contain; }
.product-image-wrap { position:relative; overflow:hidden; }
.product-hover-chip { position:absolute; left:16px; right:16px; bottom:14px; padding:10px 12px; border-radius:999px; background:rgba(255,255,255,.96); color:var(--text); font-weight:800; text-align:center; opacity:0; transform:translateY(10px); transition:.25s ease; box-shadow:var(--shadow); }
.product-card:hover .product-image-hover { opacity:1; transform:scale(1.03); }
.product-card:hover .product-hover-chip { opacity:1; transform:translateY(0); }
.footer-rich { background:linear-gradient(180deg,#111827,#0f172a); color:#fff; padding-top:32px; }
.footer-top-card { border:1px solid rgba(255,255,255,.08); border-radius:32px; padding:28px; background:rgba(255,255,255,.03); backdrop-filter:blur(10px); }
.footer-brand-line { display:flex; gap:16px; align-items:flex-start; }
.footer-brand-line img { width:58px; height:58px; border-radius:18px; object-fit:contain; background:rgba(255,255,255,.06); padding:8px; }
.footer-brand-line h3 { margin:0 0 8px; color:#fff; font-size:1.8rem; }
.footer-brand-line p { margin:0; color:#cbd5e1; max-width:540px; }
.footer-trust-badges { display:flex; gap:10px; flex-wrap:wrap; margin-top:18px; }
.footer-trust-badges span { display:inline-flex; align-items:center; padding:10px 14px; border-radius:999px; background:rgba(255,255,255,.08); color:#fff; font-weight:700; }
.footer-grid-rich { margin-top:30px; grid-template-columns:repeat(4,1fr); }
.footer-grid-rich h4 { font-size:1rem; margin-bottom:12px; }
.footer-grid-rich a, .footer-grid-rich p { color:#cbd5e1; margin:9px 0; }
.footer-grid-rich a:hover, .footer-bottom-links a:hover { color:#fff; }
.footer-bottom-rich { display:flex; justify-content:space-between; align-items:center; gap:16px; color:#cbd5e1; }
.footer-bottom-meta{display:grid;gap:10px;}
.footer-payment-logos{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.footer-payment-logos img{height:28px;width:auto;display:block;object-fit:contain;max-width:100%;}
.footer-bottom-links { display:flex; gap:18px; flex-wrap:wrap; }
.mini-cart { position:relative; padding-bottom:10px; margin-bottom:-10px; }
.mini-cart-dropdown { position:absolute; top:calc(100% + 8px); right:0; width:min(380px, 92vw); background:var(--surface); border:1px solid var(--border); border-radius:24px; box-shadow:var(--shadow); padding:16px; display:none; z-index:40; }
.mini-cart:hover .mini-cart-dropdown { display:block; }
.mini-cart-head, .mini-cart-total { display:flex; justify-content:space-between; gap:12px; align-items:center; }
.mini-cart-head { padding-bottom:12px; border-bottom:1px solid var(--border); margin-bottom:12px; }
.mini-cart-head span { color:var(--muted); }
.mini-cart-list { display:flex; flex-direction:column; gap:10px; }
.mini-cart-item { display:grid; grid-template-columns:58px 1fr; gap:12px; align-items:center; padding:8px; border-radius:16px; }
.mini-cart-item:hover { background:#f8faff; }
.mini-cart-item img { width:58px; height:58px; object-fit:contain; background:#f8faff; border-radius:14px; padding:6px; }
.mini-cart-item strong { display:block; font-size:.96rem; }
.mini-cart-item small { color:var(--muted); }
.mini-cart-footer { border-top:1px solid var(--border); margin-top:14px; padding-top:14px; }
.mini-cart-actions { display:grid; gap:10px; margin-top:12px; }
.mini-cart-empty { display:grid; gap:12px; text-align:center; color:var(--muted); }
.empty-state-modern { padding:42px 28px; }
.empty-state-icon { width:72px; height:72px; margin:0 auto 14px; border-radius:999px; background:#eef2ff; display:flex; align-items:center; justify-content:center; font-size:1.9rem; }
.empty-state-modern p { color:var(--muted); max-width:480px; margin:0 auto 18px; }
.empty-state-actions { display:flex; gap:12px; justify-content:center; flex-wrap:wrap; }
.table-card + .empty-state-modern { margin-top:0; }

@media (max-width: 1200px) {
  .trust-strip, .quick-link-grid, .footer-grid-rich { grid-template-columns:repeat(2,1fr); }
  .home-showcase-grid { grid-template-columns:1fr; }
}
@media (max-width: 760px) {
  .trust-strip, .quick-link-grid, .footer-grid-rich { grid-template-columns:1fr; }
  .footer-bottom-rich { flex-direction:column; align-items:flex-start; }
  .breadcrumb-wrap { padding-top:10px; }
}


/* Phase 2 */
.product-detail-grid { display:grid; grid-template-columns:minmax(0, 1.05fr) minmax(360px, .95fr); gap:26px; align-items:start; }
.product-gallery-shell-rich { padding-top:18px; }
.product-gallery-topline { display:flex; justify-content:space-between; gap:12px; align-items:center; margin-bottom:16px; flex-wrap:wrap; }
.product-gallery-topline small { color:var(--muted); }
.gallery-chip-row { display:flex; gap:8px; flex-wrap:wrap; }
.gallery-chip { display:inline-flex; align-items:center; padding:8px 12px; border-radius:999px; background:#eef2ff; color:var(--primary); font-weight:800; font-size:.82rem; }
.gallery-chip.sale { background:#fff7ed; color:#c2410c; }
.gallery-chip.soft { background:#ecfeff; color:#0f766e; }
.gallery-tools { display:flex; justify-content:flex-end; margin-top:12px; }
.detail-panel-sticky { position:sticky; top:100px; display:grid; gap:18px; }
.detail-panel-head { background:var(--surface); border:1px solid var(--border); border-radius:24px; box-shadow:var(--shadow); padding:22px; }
.muted-link { color:var(--muted); text-decoration:none; }
.muted-link:hover { color:var(--primary); }
.detail-anchor-row { display:flex; gap:10px; flex-wrap:wrap; }
.detail-anchor-row a { display:inline-flex; align-items:center; padding:10px 14px; border:1px solid var(--border); border-radius:999px; background:#fff; color:var(--text); text-decoration:none; font-weight:700; }
.detail-anchor-row a:hover { border-color:#c7d2fe; color:var(--primary); }
.product-facts-grid-rich { margin:0; }
.detail-price-row { margin-top:-4px; }
.purchase-card { background:var(--surface); border:1px solid var(--border); border-radius:24px; box-shadow:var(--shadow); padding:18px; }
.add-form-rich { display:grid; grid-template-columns:120px 1fr; gap:12px; align-items:end; }
.qty-field { display:grid; gap:8px; }
.qty-field span { font-size:.9rem; color:var(--muted); font-weight:700; }
.buy-now-form { margin-top:12px; }
.btn-dark { background:#111827; color:#fff; border:1px solid #111827; }
.btn-dark:hover { background:#0f172a; border-color:#0f172a; }
.detail-benefit-list { display:grid; gap:10px; }
.detail-benefit-list div { display:flex; gap:12px; align-items:center; background:#fff; border:1px solid var(--border); border-radius:18px; padding:14px 16px; }
.detail-benefit-list span { width:36px; height:36px; display:inline-flex; align-items:center; justify-content:center; border-radius:999px; background:#eef2ff; }
.detail-info-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.detail-info-card { background:var(--surface); border:1px solid var(--border); border-radius:24px; box-shadow:var(--shadow); padding:22px; }
.feature-table { display:grid; gap:10px; }
.feature-table div { display:flex; justify-content:space-between; gap:12px; padding:12px 0; border-bottom:1px solid #eef2f7; }
.feature-table div:last-child { border-bottom:none; padding-bottom:0; }
.feature-table span { color:var(--muted); }
.detail-box-grid-rich { grid-template-columns:1fr; }
.review-layout-rich { align-items:start; }
.review-mini-stats { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:16px; }
.review-mini-stats div { padding:12px; border-radius:18px; background:#f8faff; border:1px solid var(--border); text-align:center; }
.review-mini-stats strong { display:block; font-size:1.1rem; }
.review-mini-stats span { color:var(--muted); font-size:.9rem; }
@media (max-width: 1100px) {
  .product-detail-grid, .detail-info-grid { grid-template-columns:1fr; }
  .detail-panel-sticky { position:static; }
}
@media (max-width: 700px) {
  .add-form-rich { grid-template-columns:1fr; }
  .detail-anchor-row { overflow:auto; padding-bottom:4px; flex-wrap:nowrap; }
  .detail-anchor-row a { white-space:nowrap; }
}


.account-welcome-card-rich{display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap}
.account-quick-actions{display:flex;gap:12px;flex-wrap:wrap}
.account-stats-rich .stat-card{min-height:118px}
.account-stats-rich .stat-card small{display:block;margin-top:8px;color:#6b7280;font-size:.88rem;line-height:1.4}
.account-dashboard-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}
.account-panel-card{border:1px solid #ece7f6;border-radius:24px;background:#fff;padding:22px;box-shadow:0 10px 30px rgba(95,76,140,.08)}
.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}
.panel-head p{margin:.3rem 0 0;color:#6b7280}
.dashboard-order-list{display:flex;flex-direction:column;gap:12px}
.dashboard-order-item{display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;padding:16px 18px;border:1px solid #eee6fa;border-radius:18px;background:#fcfbff}
.dashboard-order-item p{margin:.3rem 0 0;color:#6b7280}
.dashboard-order-item strong{display:block}
.default-address-card{padding:18px;border:1px solid #eee6fa;border-radius:18px;background:#fcfbff}
.default-address-card p{margin:.45rem 0;color:#514c5f}
.small-empty-box{padding:22px;border-radius:18px;background:#fcfbff;border:1px dashed #dfd2f5}
.order-inline-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.order-inline-actions.stacked{flex-direction:column;align-items:stretch}
@media (max-width: 991px){.account-dashboard-grid{grid-template-columns:1fr}.dashboard-order-item{grid-template-columns:1fr;align-items:flex-start}}

/* Phase 4 */
.card-meta-line{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.card-meta-line span{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#f6f4ff;border:1px solid #ece7f6;color:#5c4f7f;font-size:.78rem;font-weight:700}
.detail-note-box{padding:14px 16px;border-radius:18px;background:#f8faff;border:1px solid var(--border);color:#384152;line-height:1.7}
.product-facts-grid-rich div strong{word-break:break-word}


/* Phase 6 */
.catalog-page-shell { width:min(1840px, calc(100% - 24px)); margin:0 auto; }
.catalog-results { min-width:0; }
.catalog-results-head { display:flex; justify-content:space-between; align-items:flex-end; gap:18px; }
.catalog-sort-desktop { display:flex; align-items:center; gap:10px; }
.catalog-sort-desktop select, .catalog-sort-inline select {
  border:1px solid var(--border); border-radius:14px; padding:10px 14px; background:#fff;
}
.catalog-mobile-bar { display:none; align-items:center; justify-content:space-between; gap:12px; margin-bottom:16px; }
.catalog-overlay { position:fixed; inset:0; background:rgba(15,23,42,.38); z-index:38; }
.catalog-panel-head { display:none; align-items:center; justify-content:space-between; gap:12px; margin-bottom:14px; }
.catalog-close-btn { width:42px; height:42px; border:none; border-radius:999px; background:#eef2ff; color:var(--primary); font-size:1.5rem; font-weight:800; }
.active-filter-chips { display:flex; flex-wrap:wrap; gap:10px; margin:0 0 16px; }
.chip-link-clear { background:#eef2ff; border-color:#c7d2fe; color:var(--primary); }
.catalog-popular-searches { margin:0 0 18px; }
.catalog-empty-state .empty-state-emoji { font-size:2.3rem; margin-bottom:10px; }

.search-suggestion-rich { align-items:center; }
.search-suggestion-media { width:52px; height:68px; border-radius:14px; overflow:hidden; background:#f8faff; border:1px solid var(--border); flex:0 0 auto; }
.search-suggestion-media img { width:100%; height:100%; object-fit:cover; }
.search-suggestion-text { display:flex; flex-direction:column; gap:3px; flex:1; min-width:0; }
.search-suggestion-text strong { color:var(--text); line-height:1.25; }
.search-suggestion-text small, .search-suggestion-type { color:var(--muted); }
.search-suggestion-type { white-space:nowrap; }

@media (max-width: 991px) {
  .catalog-mobile-bar { display:flex; }
  .catalog-sort-desktop { display:none; }
  .catalog-panel-head { display:flex; }
  .products-page-layout-wide { grid-template-columns:1fr; }
  .filter-panel-advanced {
    position:fixed; inset:auto 0 0 0; z-index:40; margin:0; border-radius:28px 28px 0 0;
    max-height:86vh; overflow:auto; transform:translateY(105%); transition:transform .22s ease;
  }
  .filter-panel-advanced.is-open { transform:translateY(0); }
  body.catalog-panel-open { overflow:hidden; }
}
@media (min-width: 992px) {
  .catalog-overlay { display:none !important; }
}


.action-stack{display:flex;flex-direction:column;gap:.5rem;align-items:stretch}.btn-sm{padding:.45rem .7rem;font-size:.82rem}.compact-stats{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.dashboard-list-grid{display:grid;gap:.8rem}.summary-line{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1rem;border:1px solid #e6e8ef;border-radius:14px;background:#f9fbff}.quick-links-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.quick-link-card{display:block;padding:1rem;border:1px solid #e7e7ef;border-radius:18px;background:#fff7fb;color:#2d3748;text-decoration:none}.quick-link-card strong{display:block;margin-bottom:.35rem}.quick-link-card span{font-size:.92rem;color:#667085}.admin-media-tile.dragging,.admin-video-card.dragging{opacity:.45;border-color:#7c3aed;transform:scale(.98)}

.alert.error { background: #fef2f2; color: #991b1b; border: 1px solid #fecaca; }


/* Header refresh */
.header-enhanced {
    background: rgba(255,255,255,.84);
    backdrop-filter: blur(18px);
}

.header-topline {
    background: linear-gradient(90deg, #fff7ef, #f7f7ff 55%, #eef7ff);
    border-bottom: 1px solid rgba(231, 233, 242, .95);
}

.header-topline-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    min-height: 42px;
}

.header-trust-row,
.header-utility-links {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}

.header-trust-row span,
.header-utility-links a {
    color: #526071;
    font-size: .92rem;
    font-weight: 800;
}

.header-utility-links a:hover {
    color: var(--primary);
}

.nav-wrap-enhanced {
    gap: 18px;
    padding: 18px 0;
}

.brand-shell {
    flex: 0 0 auto;
}

.brand {
    gap: 12px;
}

.brand-mark {
    width: 76px;
    height: 76px;
    border-radius: 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #fff3e7, #eef2ff 68%);
    box-shadow: 0 18px 34px rgba(91, 91, 214, .14);
    border: 1px solid rgba(231, 233, 242, .95);
}

.brand-mark img {
    width: 62px;
    height: 62px;
    border-radius: 0;
}

.brand-copy {
    display: grid;
    gap: 3px;
}

.brand-title {
    line-height: .95;
    letter-spacing: -.04em;
}

.brand-copy small {
    color: var(--muted);
    font-size: .84rem;
    font-weight: 800;
    letter-spacing: .01em;
}

.nav-enhanced {
    flex: 1 1 auto;
    justify-content: center;
    gap: 4px;
    flex-wrap: nowrap;
    min-width: 0;
}

.nav-enhanced a {
    flex: 0 0 auto;
    white-space: nowrap;
    padding: 10px 10px;
    border-radius: 999px;
    font-size: .95rem;
    line-height: 1;
}

.nav-enhanced a:hover {
    background: #eef2ff;
}

.nav-dropdown {
    position: relative;
    display: flex;
    align-items: center;
}

.nav-dropdown-trigger {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.nav-dropdown-caret {
    font-size: .82rem;
    line-height: 1;
}

.nav-dropdown-menu {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    min-width: 260px;
    max-width: 340px;
    display: none;
    flex-direction: column;
    gap: 4px;
    padding: 10px;
    border: 1px solid var(--border);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 18px 40px rgba(22, 32, 72, .14);
    z-index: 60;
}

.nav-dropdown:hover .nav-dropdown-menu,
.nav-dropdown:focus-within .nav-dropdown-menu {
    display: flex;
}

.nav-dropdown-menu a {
    display: block;
    width: 100%;
    padding: 12px 14px;
    border-radius: 14px;
    white-space: normal;
    line-height: 1.35;
}

.nav-actions-enhanced {
    flex: 0 1 auto;
    gap: 10px;
}

.header-search-enhanced {
    min-width: 320px;
    max-width: 420px;
    padding: 8px 10px 8px 14px;
    border-radius: 20px;
    box-shadow: 0 10px 25px rgba(23, 35, 79, .05);
}

.header-search-enhanced input {
    padding-right: 8px;
}

.header-search-button {
    border: none;
    border-radius: 14px;
    background: var(--primary);
    color: #fff;
    padding: 11px 14px;
    font-weight: 800;
    cursor: pointer;
}

@media (max-width: 1500px) {
    .nav-wrap-enhanced {
        gap: 12px;
    }

    .nav-enhanced {
        gap: 2px;
    }

    .nav-enhanced a {
        padding: 10px 8px;
        font-size: .92rem;
    }

    .header-search-enhanced {
        min-width: 260px;
    }
}

.header-search-button:hover {
    background: var(--primary-dark);
}

.header-quick-actions {
    display: flex;
    align-items: center;
    gap: 10px;
}

.quick-link-pill,
.cart-pill-enhanced,
.account-pill-enhanced {
    min-height: 52px;
    box-shadow: 0 10px 24px rgba(23, 35, 79, .05);
}

.quick-link-pill {
    width: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 18px;
    background: var(--surface);
    border: 1px solid var(--border);
    font-size: 1.15rem;
}

.quick-link-pill:hover {
    transform: translateY(-1px);
    border-color: #d9ddff;
    background: #f8f9ff;
}

.cart-pill-enhanced,
.account-pill-enhanced {
    gap: 12px;
    padding: 10px 14px;
    border-radius: 20px;
}

.cart-pill-labels,
.account-pill-labels {
    display: grid;
    gap: 2px;
}

.cart-pill-labels small,
.account-pill-labels small {
    color: var(--muted);
    font-size: .74rem;
    font-weight: 800;
    line-height: 1;
}

.cart-pill-labels strong,
.account-pill-labels strong {
    line-height: 1.1;
    font-size: .96rem;
}

.btn-soft-strong {
    background: #fff;
    border-color: #dce3f0;
}

.btn-primary-glow {
    box-shadow: 0 16px 32px rgba(91, 91, 214, .24);
}

@media (max-width: 1320px) {
    .nav-wrap-enhanced {
        flex-wrap: wrap;
    }

    .nav-enhanced {
        order: 3;
        width: 100%;
        justify-content: center;
        flex-wrap: wrap;
    }

    .nav-actions-enhanced {
        margin-left: auto;
        flex-wrap: wrap;
        justify-content: flex-end;
    }
}

@media (max-width: 920px) {
    .header-topline-inner {
        justify-content: center;
    }

    .header-utility-links {
        display: none;
    }

    .brand-copy small {
        display: none;
    }

    .header-search-enhanced {
        min-width: min(100%, 320px);
        flex: 1 1 280px;
    }
}

@media (max-width: 760px) {
    .header-topline {
        display: none;
    }

    .nav-wrap-enhanced {
        padding: 14px 0;
    }

    .brand-mark {
        width: 64px;
        height: 64px;
        border-radius: 20px;
    }

    .header-search-enhanced {
        order: 3;
        width: 100%;
        max-width: none;
    }

    .nav-actions-enhanced {
        width: 100%;
        justify-content: space-between;
    }

    .nav-enhanced {
        justify-content: flex-start;
        overflow-x: auto;
        flex-wrap: nowrap;
        padding-bottom: 4px;
    }

    .nav-enhanced::-webkit-scrollbar {
        height: 6px;
    }

    .nav-enhanced a {
        white-space: nowrap;
    }

    .quick-link-pill {
        display: none;
    }

    .cart-pill-labels,
    .account-pill-labels {
        display: none;
    }
}


/* Search refresh */
.header-search-enhanced {
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
    min-width: 340px;
    max-width: 460px;
    padding: 6px;
    border: 1px solid #dfe5f2;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 8px 22px rgba(23, 35, 79, .06);
}

.header-search-leading {
    width: 40px;
    height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    color: #8a94a6;
    background: #f6f8fc;
}

.header-search-leading svg {
    width: 18px;
    height: 18px;
}

.header-search-enhanced input {
    min-width: 0;
    width: 100%;
    border: none;
    outline: none;
    background: transparent;
    box-shadow: none;
    padding: 0;
    color: var(--text);
    font-size: .97rem;
}

.header-search-enhanced input::placeholder {
    color: #98a2b3;
}

.header-search-enhanced input:focus {
    outline: none;
}

.header-search-enhanced:focus-within {
    border-color: #cfd7ff;
    box-shadow: 0 10px 28px rgba(91, 91, 214, .12);
}

.header-search-button {
    min-width: 72px;
    height: 40px;
    padding: 0 16px;
    border-radius: 12px;
    font-size: .95rem;
    box-shadow: none;
}

@media (max-width: 920px) {
    .header-search-enhanced {
        min-width: min(100%, 320px);
    }
}

@media (max-width: 760px) {
    .header-search-enhanced {
        width: 100%;
        max-width: none;
        min-width: 0;
    }
}

/* Auth pages refresh */
.auth-page {
    padding: 56px 0 84px;
    background:
        radial-gradient(circle at top left, rgba(91, 91, 214, .10), transparent 28%),
        radial-gradient(circle at bottom right, rgba(255, 181, 117, .18), transparent 22%),
        linear-gradient(180deg, #f7f8fc 0%, #f3f5fb 100%);
}

.auth-shell {
    display: grid;
    grid-template-columns: minmax(280px, 420px) minmax(0, 720px);
    gap: 28px;
    align-items: start;
}

.auth-stack {
    display: grid;
    gap: 18px;
}

.auth-aside {
    position: sticky;
    top: 120px;
    padding: 34px 30px;
    border-radius: 32px;
    color: #fff;
    background: linear-gradient(145deg, #202d63 0%, #4c49d8 55%, #7b6cf3 100%);
    box-shadow: 0 22px 44px rgba(31, 41, 87, .18);
    overflow: hidden;
}

.auth-aside::before,
.auth-aside::after {
    content: "";
    position: absolute;
    border-radius: 999px;
    background: rgba(255,255,255,.12);
}

.auth-aside::before { width: 180px; height: 180px; right: -60px; top: -50px; }
.auth-aside::after { width: 140px; height: 140px; left: -50px; bottom: -45px; }

.auth-badge {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    padding: 9px 14px;
    border-radius: 999px;
    background: rgba(255,255,255,.16);
    border: 1px solid rgba(255,255,255,.15);
    font-size: .92rem;
    font-weight: 800;
    letter-spacing: .01em;
}

.auth-aside h1 {
    position: relative;
    z-index: 1;
    margin: 18px 0 12px;
    font-size: clamp(2rem, 3.2vw, 3rem);
    line-height: 1.05;
    letter-spacing: -.04em;
}

.auth-aside > p {
    position: relative;
    z-index: 1;
    margin: 0;
    color: rgba(255,255,255,.88);
    font-size: 1.02rem;
    line-height: 1.7;
}

.auth-feature-list,
.auth-stat-row {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 14px;
    margin-top: 28px;
}

.auth-feature-item,
.auth-stat-card {
    padding: 16px 18px;
    border-radius: 20px;
    background: rgba(255,255,255,.10);
    border: 1px solid rgba(255,255,255,.12);
    backdrop-filter: blur(8px);
}

.auth-feature-item strong,
.auth-stat-card strong {
    display: block;
    margin-bottom: 6px;
    font-size: 1rem;
}

.auth-feature-item span,
.auth-stat-card span {
    display: block;
    color: rgba(255,255,255,.78);
    line-height: 1.55;
    font-size: .95rem;
}

.auth-card {
    padding: 32px;
    border-radius: 30px;
    background: rgba(255,255,255,.94);
    border: 1px solid rgba(221, 226, 240, .95);
    box-shadow: 0 24px 54px rgba(38, 50, 98, .10);
    backdrop-filter: blur(10px);
}

.auth-card-subtle {
    background: rgba(255,255,255,.9);
    border-style: dashed;
}

.auth-card-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 22px;
}

.auth-card-head-compact { margin-bottom: 16px; }

.auth-card-head h2,
.auth-card-head h3 {
    margin: 0 0 8px;
    letter-spacing: -.03em;
}

.auth-card-head h2 { font-size: 2.1rem; }
.auth-card-head h3 { font-size: 1.3rem; }

.auth-card-head p {
    margin: 0;
    color: var(--muted);
    line-height: 1.65;
    max-width: 520px;
}

.auth-inline-link,
.auth-text-link {
    color: var(--primary);
    font-weight: 800;
}

.auth-inline-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 16px;
    border-radius: 14px;
    background: #eef2ff;
    white-space: nowrap;
}

.auth-form,
.auth-grid {
    display: grid;
    gap: 18px;
}

.auth-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.auth-field label {
    display: block;
    margin-bottom: 8px;
    font-weight: 800;
    color: #16203b;
}

.auth-field input {
    width: 100%;
    height: 56px;
    padding: 0 16px;
    border-radius: 18px;
    border: 1px solid #d9dfea;
    background: #fbfcff;
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}

.auth-field input:focus {
    border-color: #b9c6ff;
    background: #fff;
    box-shadow: 0 0 0 4px rgba(91,91,214,.10);
    outline: none;
}

.auth-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.auth-checkbox {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-weight: 700;
    color: #273352;
}

.auth-checkbox input {
    width: 18px;
    height: 18px;
    margin: 0;
}

.auth-submit,
.auth-inline-submit {
    min-height: 56px;
    border-radius: 18px;
    font-size: 1rem;
    font-weight: 800;
}

.auth-form-inline {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
}

.auth-field-inline { margin: 0; }
.auth-field-inline label { margin-bottom: 8px; }
.auth-inline-submit { min-width: 230px; }

@media (max-width: 1100px) {
    .auth-shell {
        grid-template-columns: 1fr;
    }

    .auth-aside {
        position: relative;
        top: 0;
    }
}

@media (max-width: 700px) {
    .auth-page {
        padding: 28px 0 56px;
    }

    .auth-card,
    .auth-aside {
        padding: 24px;
        border-radius: 24px;
    }

    .auth-card-head,
    .auth-row,
    .auth-form-inline,
    .auth-grid {
        grid-template-columns: 1fr;
        flex-direction: column;
        align-items: stretch;
    }

    .auth-inline-link,
    .auth-inline-submit {
        width: 100%;
    }

    .auth-card-head h2 {
        font-size: 1.75rem;
    }
}


/* Catalog refinement for portrait 600x800 product images */
.products-page-layout-wide {
    grid-template-columns: 288px 1fr;
    gap: 24px;
}
.filter-panel-advanced {
    padding: 18px;
    border-radius: 22px;
    position: sticky;
    top: 108px;
}
.filter-panel-advanced .filter-stack {
    gap: 12px;
}
.filter-panel-advanced label {
    font-size: .92rem;
    font-weight: 800;
    color: #334155;
    margin-bottom: 6px;
    display: block;
}
.filter-panel-advanced input,
.filter-panel-advanced select {
    border-radius: 16px;
    padding: 11px 13px;
    background: #fff;
}
.filter-actions-row .btn {
    min-height: 46px;
}
.catalog-results-head {
    margin-bottom: 12px;
}
.catalog-results-head h2 {
    margin-bottom: 4px;
}
.catalog-results-head p {
    margin: 0;
    color: var(--muted);
}
.catalog-popular-searches {
    margin-bottom: 16px;
}
.product-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}
.product-card.product-card-compact {
    border-radius: 22px;
    box-shadow: 0 16px 34px rgba(15, 23, 42, .06);
}
.product-image-wrap.product-image-wrap-catalog {
    aspect-ratio: 3 / 4;
    min-height: 0;
    padding: 14px;
    align-items: stretch;
}
.product-image-wrap.product-image-wrap-catalog .product-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    border-radius: 18px;
    background: #fff;
}
.product-card-topbadges {
    position: absolute;
    top: 12px;
    left: 12px;
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    z-index: 2;
}
.product-discount-badge {
    position: absolute;
    top: 12px;
    right: 12px;
    padding: 7px 10px;
    border-radius: 999px;
    background: #111827;
    color: #fff;
    font-size: .76rem;
    font-weight: 900;
    z-index: 2;
}
.product-body.product-body-compact {
    padding: 14px 14px 15px;
    gap: 6px;
}
.product-meta-top.compact {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
}
.product-age-chip {
    display: inline-flex;
    align-items: center;
    padding: 6px 10px;
    border-radius: 999px;
    background: #f8faff;
    border: 1px solid var(--border);
    color: var(--muted);
    font-size: .78rem;
    font-weight: 800;
    white-space: nowrap;
}
.product-body.product-body-compact h3 {
    font-size: 1rem;
    line-height: 1.35;
    min-height: 44px;
}
.product-body.product-body-compact p {
    font-size: .92rem;
    min-height: 40px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.product-card-facts.compact {
    margin: 4px 0 8px;
}
.product-card-facts.compact span {
    padding: 5px 9px;
    font-size: .78rem;
}
.price-row.compact {
    margin-top: 2px;
    gap: 8px;
}
.price-row.compact strong {
    font-size: 1.16rem;
}
.price-row.compact span {
    font-size: .88rem;
}
.product-actions.product-actions-compact {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr) auto;
    gap: 8px;
    align-items: stretch;
    margin-top: auto;
}
.product-actions.product-actions-compact form {
    margin: 0;
}
.product-actions-compact .btn {
    min-height: 44px;
    padding: 10px 12px;
    border-radius: 14px;
    font-size: .92rem;
}
.product-favorite-mini {
    width: 44px;
    height: 44px;
    border-radius: 14px;
    border: 1px solid var(--border);
    background: #fff;
    color: var(--primary);
    font-size: 1.1rem;
    font-weight: 900;
    box-shadow: var(--shadow);
}
.product-favorite-mini:hover {
    background: #f8faff;
}
@media (max-width: 1380px) {
    .product-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}
@media (max-width: 1100px) {
    .products-page-layout-wide {
        grid-template-columns: 1fr;
    }
    .filter-panel-advanced {
        position: static;
    }
}
@media (max-width: 900px) {
    .product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width: 640px) {
    .product-grid {
        grid-template-columns: 1fr;
    }
    .product-actions.product-actions-compact {
        grid-template-columns: 1fr;
    }
    .product-favorite-mini {
        width: 100%;
    }
}


/* Checkout and cart redesign */
.checkout-stepper{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px;}
.checkout-step{display:flex;align-items:center;gap:10px;padding:14px 16px;border-radius:18px;background:#fff;border:1px solid var(--border);font-weight:800;color:var(--muted);}
.checkout-step span{width:30px;height:30px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#eef2ff;color:var(--primary);font-size:.92rem;}
.checkout-step.active{color:var(--text);border-color:#d8defa;background:linear-gradient(180deg,#fff,#f8faff);box-shadow:var(--shadow);}
.checkout-layout-redesign{grid-template-columns:minmax(0,1fr) 390px;gap:24px;align-items:start;}
.checkout-form-shell{display:grid;gap:18px;min-width:0;}
.checkout-panel{background:#fff;border:1px solid var(--border);border-radius:28px;box-shadow:var(--shadow);padding:24px;}
.checkout-panel-soft{background:linear-gradient(180deg,#fff,#fbfcff);}
.eyebrow{margin:0 0 8px;color:var(--primary);font-weight:800;font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;}
.checkout-hero-panel{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;background:linear-gradient(135deg,#f7f8ff,#fff7f5);}
.checkout-hero-panel h2{margin:0 0 10px;font-size:2rem;}
.checkout-hero-copy{margin:0;color:var(--muted);max-width:640px;}
.checkout-hero-trust{display:grid;gap:10px;min-width:240px;}
.checkout-hero-trust span,.summary-benefits span{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:16px;background:#f8faff;border:1px solid #edf0fb;font-weight:700;color:var(--text);}
.shipping-progress-banner,.shipping-progress-panel,.mini-cart-shipping{display:grid;gap:14px;padding:18px 20px;border:1px solid #e5e9f7;border-radius:24px;background:linear-gradient(180deg,#fff,#f8fbff);}
.shipping-progress-banner.success,.shipping-progress-panel.success,.mini-cart-shipping.success{background:linear-gradient(180deg,#f0fdf4,#ffffff);border-color:#bbf7d0;}
.shipping-progress-copy{display:flex;gap:14px;align-items:flex-start;}
.shipping-progress-copy strong{display:block;margin-bottom:4px;font-size:1rem;}
.shipping-progress-copy p{margin:0;color:var(--muted);}
.shipping-progress-icon{width:46px;height:46px;border-radius:16px;background:#eef2ff;display:inline-flex;align-items:center;justify-content:center;font-size:1.25rem;flex:0 0 auto;}
.shipping-progress-track{position:relative;height:10px;border-radius:999px;background:#e8edff;overflow:hidden;}
.shipping-progress-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,#6f63f6,#7cdb8f);}
.cart-layout-refined{grid-template-columns:minmax(0,1fr) 380px;}
.cart-main-column{display:grid;gap:18px;min-width:0;}
.cart-list-refined{display:grid;gap:16px;}
.cart-item-refined{grid-template-columns:108px minmax(0,1fr) 230px 140px 100px;padding:20px;border-radius:26px;}
.cart-item-refined .cart-item-image img{width:108px;height:144px;aspect-ratio:3/4;object-fit:cover;padding:0;background:#f8faff;}
.cart-item-meta-top{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px;}
.cart-item-tag,.cart-item-variant{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;font-size:.8rem;font-weight:800;}
.cart-item-tag{background:#eef2ff;color:var(--primary);}
.cart-item-variant{background:#fff7ed;color:#c2410c;}
.cart-item-sub{color:var(--muted);font-size:.95rem;}
.qty-form-refined{display:grid;gap:8px;justify-items:start;}
.qty-form-refined label{font-size:.85rem;color:var(--muted);font-weight:700;}
.qty-inline-shell{display:flex;gap:10px;align-items:center;}
.cart-item-total-refined small{display:block;color:var(--muted);margin-bottom:6px;}
.btn-danger-soft{background:#fff5f5;border-color:#fecaca;color:#b91c1c;}
.summary-card-commerce,.checkout-summary-redesign{padding:24px;border-radius:28px;display:grid;gap:14px;}
.summary-topline{display:flex;justify-content:space-between;gap:12px;align-items:center;color:var(--muted);font-weight:700;font-size:.95rem;}
.summary-card-commerce .summary-lead,.checkout-summary-redesign .summary-lead{margin:-4px 0 4px;color:var(--muted);}
.summary-benefits{display:grid;gap:10px;margin-top:4px;}
.checkout-panel-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px;}
.checkout-panel-head h3,.saved-address-head h3{margin:0 0 6px;font-size:1.35rem;}
.checkout-panel-head p,.saved-address-head p,.checkout-subcopy{margin:0;color:var(--muted);}
.checkout-form-grid textarea{min-height:96px;}
.payment-method-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.payment-option-card{display:flex;gap:14px;align-items:flex-start;padding:18px;border-radius:22px;border:1px solid var(--border);background:#fff;cursor:pointer;transition:.2s ease;}
.payment-option-card input{margin-top:4px;accent-color:var(--primary);}
.payment-option-card.selected,.payment-option-card:hover{border-color:#cbd4ff;box-shadow:0 10px 30px rgba(111,99,246,.08);background:#f9faff;}
.payment-option-icon{width:42px;height:42px;border-radius:14px;background:#eef2ff;display:inline-flex;align-items:center;justify-content:center;font-size:1.15rem;flex:0 0 auto;}
.payment-option-copy strong{display:block;margin-bottom:5px;}
.payment-option-copy small{color:var(--muted);}
.payment-option-copy{display:grid;gap:6px;}
.payment-provider-logos{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:6px;}
.payment-provider-logos img{height:28px;width:auto;display:block;max-width:100%;object-fit:contain;}
.coupon-inline-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:end;}
.coupon-inline-field label{display:block;margin-bottom:6px;font-weight:800;}
.coupon-info-chip{padding:13px 14px;border-radius:16px;background:#f8faff;border:1px solid var(--border);font-weight:700;color:var(--muted);white-space:nowrap;}

.coupon-inline-row-modern{grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);align-items:start;}
.coupon-inline-field-modern{display:grid;gap:10px;}
.coupon-input-shell{display:flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid #dbe3ff;border-radius:18px;background:linear-gradient(180deg,#fff,#f8faff);box-shadow:0 8px 20px rgba(99,102,241,.06);}
.coupon-input-shell:focus-within{border-color:#a5b4fc;box-shadow:0 12px 24px rgba(99,102,241,.12);}
.coupon-input-shell input{border:0;background:transparent;box-shadow:none;padding:0;min-height:34px;font-weight:700;}
.coupon-input-shell input:focus{outline:none;}
.coupon-input-icon{width:38px;height:38px;border-radius:12px;background:#eef2ff;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;}
.coupon-info-card{padding:16px 18px;border-radius:18px;border:1px solid var(--border);background:#f8faff;color:var(--muted);}
.coupon-info-card strong{display:block;margin-bottom:6px;color:#1f2937;}
.coupon-info-card p{margin:0;line-height:1.55;}
.coupon-status-box{padding:12px 14px;border-radius:14px;font-size:.92rem;font-weight:700;}
.coupon-status-box.success{background:#ecfdf5;border:1px solid #a7f3d0;color:#047857;}
.coupon-status-box.warning{background:#fff7ed;border:1px solid #fdba74;color:#c2410c;}

.coupon-apply-shell{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;}
.coupon-apply-button{min-height:58px;min-width:120px;border-radius:18px;font-weight:800;}
.coupon-preview-card{display:grid;gap:10px;padding:16px 18px;border-radius:18px;border:1px solid #dbe3ff;background:linear-gradient(180deg,#fff,#f8faff);}
.coupon-preview-card > div{display:flex;justify-content:space-between;gap:16px;align-items:center;font-size:.95rem;}
.coupon-preview-card .total{padding-top:10px;border-top:1px dashed #dbe3ff;font-weight:800;}
.coupon-preview-card .is-discount{color:#059669;}

.checkout-bottom-bar{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:22px 24px;border-radius:26px;background:linear-gradient(135deg,#19202d,#2b3550);color:#fff;box-shadow:var(--shadow);}
.checkout-bottom-bar p{margin:6px 0 0;color:#cbd5e1;max-width:560px;}
.checkout-submit-button{min-width:260px;min-height:54px;font-size:1rem;}
.checkout-mini-items{display:grid;gap:12px;max-height:320px;overflow:auto;padding-right:4px;}
.checkout-mini-item{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px;border-radius:18px;background:#f8faff;}
.checkout-mini-item img{width:56px;height:74px;aspect-ratio:3/4;object-fit:cover;border-radius:14px;background:#fff;}
.checkout-mini-item strong{display:block;font-size:.95rem;}
.checkout-mini-item small{color:var(--muted);}
.discount-row strong{color:#059669;}
.summary-caption strong{font-size:.9rem;color:var(--muted);}
.mini-cart-shipping{margin-bottom:12px;padding:14px;border-radius:18px;}
.mini-cart-shipping-copy strong{display:block;font-size:.92rem;margin-bottom:3px;}
.mini-cart-shipping-copy small{color:var(--muted);}
.mini-cart-progress-track{height:8px;}
.cart-pill-enhanced{position:relative;}
.cart-pill-enhanced::after{content:"";position:absolute;inset:0;border-radius:999px;pointer-events:none;box-shadow:0 10px 22px rgba(111,99,246,.08);opacity:.8;}
@media (max-width: 1200px){.checkout-layout-redesign,.cart-layout-refined{grid-template-columns:1fr;}.summary-card-fixed,.checkout-summary-redesign{position:static;}.checkout-stepper{grid-template-columns:repeat(2,1fr);}}
@media (max-width: 820px){.cart-item-refined{grid-template-columns:1fr;}.payment-method-grid,.coupon-inline-row,.checkout-bottom-bar,.coupon-apply-shell{grid-template-columns:1fr;display:grid;}.checkout-bottom-bar{padding:20px;}.checkout-submit-button,.coupon-apply-button{width:100%;min-width:0;}.checkout-hero-panel{display:grid;}.checkout-hero-trust{min-width:0;}.checkout-stepper{grid-template-columns:1fr 1fr;}.qty-inline-shell{flex-wrap:wrap;}}
@media (max-width: 640px){.checkout-stepper{grid-template-columns:1fr;}.cart-item-refined .cart-item-image img{width:96px;height:128px;}.summary-card-commerce,.checkout-summary-redesign,.checkout-panel{padding:18px;}.checkout-hero-panel h2{font-size:1.6rem;}}


.checkout-guest-choice{margin-bottom:1.25rem}
.checkout-choice-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:1rem;margin-top:1rem}
.checkout-choice-card{position:relative;border:1px solid rgba(99,102,241,.14);border-radius:20px;background:#fff;padding:1.1rem 1.1rem 1rem;display:flex;flex-direction:column;gap:.45rem;min-height:168px;box-shadow:0 10px 24px rgba(15,23,42,.04)}
.checkout-choice-card h4{margin:0;font-size:1.05rem}
.checkout-choice-card p{margin:0;color:#64748b;line-height:1.55}
.checkout-choice-card.active{background:linear-gradient(180deg,#ffffff 0%,#f6f7ff 100%);border-color:rgba(99,102,241,.22)}
.checkout-choice-card.link-card{text-decoration:none;color:inherit;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.checkout-choice-card.link-card:hover{transform:translateY(-2px);border-color:rgba(99,102,241,.3);box-shadow:0 16px 30px rgba(99,102,241,.08)}
.checkout-choice-badge{display:inline-flex;align-self:flex-start;padding:.32rem .62rem;border-radius:999px;background:#eef2ff;color:#4f46e5;font-size:.76rem;font-weight:800}
.link-arrow{margin-top:auto;font-size:1.1rem;color:#4f46e5;font-weight:700}
.post-order-account-card{margin-top:1.5rem;padding:1.5rem;border-radius:24px;background:linear-gradient(180deg,#fff 0%,#f8faff 100%);border:1px solid rgba(99,102,241,.14);text-align:left}
.post-order-account-card h3{margin:.25rem 0 .35rem}
.post-order-account-card p{margin:0;color:#64748b}
.post-order-account-email{margin-top:1rem;padding:.9rem 1rem;border-radius:16px;background:#eef2ff;color:#312e81}
.post-order-account-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem}
.post-order-account-grid label{display:block;font-weight:700;margin-bottom:.45rem}
.post-order-account-grid input{width:100%;border:1px solid #dbe3f0;border-radius:16px;padding:.9rem 1rem;background:#fff}
.post-order-account-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1rem}
@media (max-width: 1100px){.checkout-choice-grid{grid-template-columns:1fr}.post-order-account-grid{grid-template-columns:1fr}}

/* --- Home hero refinement v11 --- */
.hero-home-refined {
    padding-top: 36px;
    padding-bottom: 18px;
}

.hero-home-shell {
    display: grid;
    grid-template-columns: minmax(0, 1.04fr) minmax(0, .96fr);
    gap: 28px;
    align-items: stretch;
    margin-bottom: 26px;
}

.hero-home-copy,
.hero-home-visual {
    min-width: 0;
}

.hero-home-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 18px 6px 18px 0;
}

.hero-actions-home {
    justify-content: flex-start;
    margin-top: 24px;
}

.hero-home-lead {
    max-width: 640px;
    margin-top: 18px;
    color: var(--muted);
    font-size: 1.08rem;
    line-height: 1.7;
}

.hero-home-benefits {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 22px;
}

.hero-home-benefits span,
.hero-home-tag,
.hero-visual-mini-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    border-radius: 999px;
    border: 1px solid #e8ebfb;
    background: rgba(255,255,255,.92);
    color: #4b5674;
    font-weight: 700;
    font-size: .94rem;
}

.hero-home-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 16px;
}

.hero-home-tag {
    text-decoration: none;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.hero-home-tag:hover {
    transform: translateY(-1px);
    border-color: #d6dbf8;
    box-shadow: 0 10px 26px rgba(91,98,214,.09);
}

.hero-home-visual {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(220px, .72fr);
    gap: 16px;
}

.hero-visual-main,
.hero-visual-mini-card,
.hero-home-stat {
    background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,248,255,.98));
    border: 1px solid #e8ebfb;
    border-radius: 28px;
    box-shadow: 0 20px 50px rgba(46,53,86,.08);
}

.hero-visual-main {
    display: block;
    text-decoration: none;
    color: inherit;
    padding: 22px;
    min-height: 100%;
}

.hero-visual-badge-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 18px;
}

.hero-visual-content {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(220px, 1.1fr);
    gap: 12px;
    align-items: center;
    min-height: 100%;
}

.hero-visual-text h3 {
    margin: 0 0 12px;
    font-size: clamp(1.35rem, 1.6vw, 1.85rem);
    line-height: 1.2;
    color: #16203a;
}

.hero-visual-text p {
    margin: 0 0 16px;
    color: var(--muted);
    line-height: 1.65;
}

.hero-visual-text strong {
    color: var(--primary);
}

.hero-visual-image-wrap {
    min-height: 290px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px;
    border-radius: 24px;
    background: linear-gradient(180deg, #fbfbff, #f2f5ff);
}

.hero-visual-image {
    width: 100%;
    max-height: 290px;
    object-fit: contain;
}

.hero-visual-stack {
    display: grid;
    gap: 14px;
}

.hero-visual-mini-card {
    text-decoration: none;
    color: inherit;
    padding: 16px;
}

.hero-visual-mini-body {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 12px;
}

.hero-visual-mini-body h4 {
    margin: 0 0 6px;
    font-size: 1rem;
    color: #16203a;
}

.hero-visual-mini-body p {
    margin: 0;
    color: var(--primary);
    font-weight: 700;
    font-size: .92rem;
}

.hero-visual-mini-body img {
    width: 88px;
    height: 88px;
    object-fit: contain;
    border-radius: 20px;
    background: #f7f8ff;
    flex: 0 0 auto;
}

.hero-home-stats {
    display: grid;
    gap: 12px;
}

.hero-home-stat {
    padding: 16px 18px;
    display: grid;
    gap: 4px;
}

.hero-home-stat strong {
    font-size: 1.1rem;
    color: #16203a;
}

.hero-home-stat span {
    color: var(--muted);
    font-size: .93rem;
}

.home-slider-compact {
    padding-top: 8px;
}

@media (max-width: 1220px) {
    .hero-home-shell,
    .hero-home-visual,
    .hero-visual-content {
        grid-template-columns: 1fr;
    }

    .hero-home-copy {
        padding-right: 0;
    }

    .hero-visual-image-wrap {
        min-height: 240px;
    }
}

@media (max-width: 760px) {
    .hero-home-refined {
        padding-top: 18px;
    }

    .hero-actions-home {
        flex-direction: column;
        align-items: stretch;
    }

    .hero-home-benefits,
    .hero-home-tags {
        gap: 10px;
    }

    .hero-home-benefits span,
    .hero-home-tag,
    .hero-visual-mini-pill {
        width: fit-content;
        max-width: 100%;
    }

    .hero-visual-main,
    .hero-visual-mini-card,
    .hero-home-stat {
        border-radius: 22px;
    }

    .hero-visual-badge-row,
    .hero-visual-mini-body {
        align-items: flex-start;
    }

    .hero-visual-mini-body {
        flex-direction: column;
    }
}


/* --- Home hero refinement v12 --- */
.hero-home-shell {
    align-items: center;
}

.hero-home-copy {
    padding-top: 8px;
}

.hero-title-soft {
    font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: clamp(2.35rem, 4.2vw, 4.1rem);
    line-height: 1.05;
    letter-spacing: -0.04em;
    color: #1b2340;
    max-width: 11ch;
    margin: 14px 0 0;
    text-wrap: balance;
}

.hero-home-lead {
    max-width: 58ch;
    font-size: 1.02rem;
}

.hero-home-visual-services {
    grid-template-columns: minmax(0, 1.08fr) minmax(260px, .86fr);
    align-items: stretch;
}

.hero-visual-main-generic {
    min-height: 100%;
}

.hero-visual-main-generic .hero-visual-content {
    grid-template-columns: minmax(0, 1fr) minmax(220px, .95fr);
}

.hero-visual-fallback {
    width: 100%;
    height: 100%;
    min-height: 240px;
    display: grid;
    place-items: center;
    font-size: 5rem;
}

.hero-service-grid {
    grid-template-columns: 1fr;
    align-content: stretch;
}

.hero-service-card {
    background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,248,255,.98));
    border: 1px solid #e8ebfb;
    border-radius: 24px;
    box-shadow: 0 20px 50px rgba(46,53,86,.08);
    padding: 16px;
    display: grid;
    gap: 12px;
}

.hero-service-body h4 {
    margin: 0 0 6px;
    font-size: 1rem;
    line-height: 1.25;
    color: #16203a;
}

.hero-service-body p {
    margin: 0;
    color: var(--muted);
    font-size: .93rem;
    line-height: 1.55;
}

@media (max-width: 1220px) {
    .hero-home-visual-services,
    .hero-visual-main-generic .hero-visual-content {
        grid-template-columns: 1fr;
    }

    .hero-title-soft {
        max-width: 14ch;
    }
}

@media (max-width: 760px) {
    .hero-title-soft {
        font-size: clamp(2rem, 8vw, 3rem);
        max-width: none;
    }

    .hero-home-lead {
        max-width: none;
    }
}


/* --- Home hero campaign refinement v13 --- */
.hero-campaign-home{padding:34px 0 8px;}
.hero-home-shell-campaign{grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr);gap:24px;margin-bottom:0;align-items:stretch;}
.hero-home-copy-campaign{padding:8px 0 6px;}
.hero-title-campaign{max-width:9ch;font-size:clamp(2.5rem,4vw,4.5rem);margin:12px 0 0;}
.hero-home-lead-campaign{max-width:56ch;font-size:1.04rem;line-height:1.72;}
.hero-campaign-card{margin-top:18px;padding:20px 22px;border:1px solid #e6e9fb;border-radius:28px;background:linear-gradient(135deg,#ffffff 0%,#f7f8ff 55%,#fff7f3 100%);box-shadow:0 18px 42px rgba(42,52,95,.08);display:grid;gap:12px;}
.hero-campaign-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.hero-campaign-tag{background:#eef2ff;color:var(--primary);}
.hero-campaign-code{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:999px;background:#1b2340;color:#fff;font-weight:900;letter-spacing:.06em;font-size:.92rem;}
.hero-campaign-card h2{margin:0;font-size:clamp(1.6rem,2.2vw,2.2rem);line-height:1.1;color:#19203c;letter-spacing:-.03em;}
.hero-campaign-card p{margin:0;color:var(--muted);font-size:1rem;line-height:1.65;max-width:52ch;}
.hero-actions-campaign{margin-top:6px;}
.hero-home-tags-campaign{margin-top:18px;}
.hero-campaign-visual-shell{display:grid;align-items:stretch;}
.hero-campaign-visual-card{display:grid;gap:16px;padding:18px;border:1px solid #e6e9fb;border-radius:28px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(245,247,255,.98));box-shadow:0 18px 44px rgba(42,52,95,.08);align-content:start;min-height:0;}
.hero-campaign-visual-copy{display:flex;flex-direction:column;justify-content:center;gap:12px;}
.hero-campaign-visual-copy h3{margin:0;font-size:clamp(1.55rem,2vw,2.1rem);line-height:1.15;letter-spacing:-.03em;color:#18213a;max-width:12ch;}
.hero-campaign-visual-copy p{margin:0;color:var(--muted);line-height:1.68;max-width:34ch;}
.hero-campaign-visual-media{min-height:300px;border-radius:26px;background:linear-gradient(180deg,#fbfbff,#eff3ff);display:flex;align-items:center;justify-content:center;padding:18px;}
.hero-campaign-visual-image{width:100%;max-height:240px;object-fit:contain;}
.hero-title-campaign{max-width:10ch;font-size:clamp(3.2rem,5.1vw,4.55rem);line-height:.96;letter-spacing:-.05em;}
.hero-home-lead-campaign{max-width:44ch;}
.hero-campaign-visual-shell{display:grid;align-items:start;}
.hero-campaign-visual-card.compact{max-width:400px;justify-self:end;width:100%;}
.hero-campaign-visual-top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;}
.hero-visual-badge{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:#fff7ef;color:#c46a22;font-weight:800;font-size:.82rem;}
.hero-campaign-visual-media.compact{min-height:220px;padding:16px;}
.hero-campaign-mini-points{display:grid;gap:10px;font-size:.96rem;color:#48516f;}
.hero-campaign-mini-points span{display:flex;align-items:center;gap:8px;padding:11px 12px;border:1px solid #eceffd;border-radius:16px;background:#fff;}
.hero-home-tags-campaign{margin-top:16px;}
@media (max-width: 1220px){.hero-campaign-visual-card.compact{max-width:none;justify-self:stretch;}.hero-title-campaign{font-size:clamp(2.6rem,6vw,4rem);}}
@media (max-width: 760px){.hero-title-campaign{font-size:clamp(2.2rem,9vw,3.2rem);line-height:1;}.hero-campaign-visual-card.compact{border-radius:24px;}}
.hero-service-strip-section{padding-top:16px;padding-bottom:20px;}
.hero-service-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.hero-strip-card{display:flex;align-items:flex-start;gap:12px;padding:16px 18px;border-radius:22px;border:1px solid #e8ebfb;background:rgba(255,255,255,.94);box-shadow:0 14px 34px rgba(43,52,89,.06);}
.hero-strip-icon{font-size:1.2rem;line-height:1;display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:999px;background:#f2f4ff;flex:0 0 auto;}
.hero-strip-card strong{display:block;color:#18213a;font-size:1rem;line-height:1.25;}
.hero-strip-card small{display:block;margin-top:4px;color:var(--muted);line-height:1.5;font-size:.9rem;}
@media (max-width: 1220px){.hero-home-shell-campaign,.hero-service-strip{grid-template-columns:1fr;}.hero-title-campaign{max-width:none;}.hero-campaign-visual-media{min-height:220px;}}
@media (max-width: 760px){.hero-campaign-home{padding-top:18px;}.hero-title-campaign{max-width:none;font-size:clamp(2rem,8vw,3.1rem);}.hero-campaign-card,.hero-campaign-visual-card,.hero-strip-card{border-radius:22px;}.hero-campaign-meta{align-items:flex-start;}.hero-home-tags-campaign{gap:10px;}}


.hero-story-slider-section{padding:24px 0 8px;}
.hero-story-slider{position:relative;}
.hero-story-viewport{border-radius:34px;overflow:hidden;box-shadow:0 28px 60px rgba(31,41,74,.12);background:#eef2ff;}
.hero-story-track{transition:transform .45s ease;}
.hero-story-slide{padding:0;}
.hero-story-card{position:relative;min-height:430px;padding:44px 52px;display:flex;align-items:flex-end;background-image:var(--hero-bg);background-size:cover;background-position:center;border-radius:34px;overflow:hidden;isolation:isolate;}
.hero-story-card.coupon{min-height:430px;}
.hero-story-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,25,53,.78) 0%,rgba(17,25,53,.58) 34%,rgba(17,25,53,.18) 68%,rgba(17,25,53,.06) 100%),linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.02));z-index:-1;}
.hero-story-content{max-width:560px;color:#fff;display:grid;gap:16px;}
.hero-story-content h1,.hero-story-content h2{margin:0;font-size:clamp(2.4rem,4.4vw,4rem);line-height:.98;letter-spacing:-.04em;color:#fff;text-shadow:0 6px 24px rgba(0,0,0,.18);}
.hero-story-content p{margin:0;font-size:1.05rem;line-height:1.7;color:rgba(255,255,255,.92);max-width:54ch;}
.hero-story-badge{display:inline-flex;align-items:center;justify-content:center;width:max-content;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.24);backdrop-filter:blur(10px);font-weight:800;letter-spacing:.04em;color:#fff;}
.hero-story-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:6px;}
.hero-story-soft{background:rgba(255,255,255,.9)!important;border-color:transparent!important;color:#1b2340!important;}
.hero-story-benefits{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px;}
.hero-story-benefits span{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.18);color:#fff;font-weight:700;backdrop-filter:blur(10px);}
.hero-story-arrow{top:50%;transform:translateY(-50%);width:48px;height:48px;border:none;background:rgba(255,255,255,.88);box-shadow:0 10px 24px rgba(20,28,58,.16);}
.hero-story-arrow:hover{background:#fff;}
.hero-story-arrow.slider-arrow-left{left:18px;}
.hero-story-arrow.slider-arrow-right{right:18px;}
.hero-story-dots{position:absolute;left:0;right:0;bottom:18px;display:flex;justify-content:center;gap:8px;}
.hero-story-dots .slider-dot{width:10px;height:10px;border-radius:999px;border:none;background:rgba(255,255,255,.45);}
.hero-story-dots .slider-dot.active{width:34px;background:#fff;}
@media (max-width: 980px){.hero-story-card{min-height:400px;padding:34px 28px;}.hero-story-content{max-width:100%;}.hero-story-content h1,.hero-story-content h2{font-size:clamp(2rem,7vw,3rem);} }
@media (max-width: 680px){.hero-story-slider-section{padding-top:16px;}.hero-story-card{min-height:360px;padding:24px 20px 64px;border-radius:26px;}.hero-story-viewport{border-radius:26px;}.hero-story-content p{font-size:.96rem;}.hero-story-arrow{display:none;}.hero-story-benefits span{font-size:.88rem;padding:9px 12px;}}


/* --- Modern gift finder block --- */
.gift-finder-section{padding:22px 0 10px;}
.gift-finder-shell{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);gap:22px;align-items:stretch;}
.gift-finder-copy{padding:18px 8px 18px 4px;display:grid;align-content:center;gap:16px;}
.gift-finder-kicker{display:inline-flex;width:max-content;align-items:center;justify-content:center;padding:9px 14px;border-radius:999px;background:#eef2ff;color:#5962d6;font-weight:800;font-size:.88rem;letter-spacing:.02em;}
.gift-finder-copy h2{margin:0;font-size:clamp(2rem,3.8vw,3.35rem);line-height:1.02;letter-spacing:-.045em;color:#19203c;max-width:12ch;}
.gift-finder-copy p{margin:0;color:var(--muted);font-size:1rem;line-height:1.75;max-width:56ch;}
.gift-finder-highlights{display:flex;flex-wrap:wrap;gap:10px;}
.gift-finder-highlights span{display:inline-flex;align-items:center;gap:8px;padding:11px 14px;border-radius:999px;background:#fff;border:1px solid #e8ebfb;box-shadow:0 12px 28px rgba(42,52,95,.06);font-weight:700;color:#24304d;}
.gift-finder-card{position:relative;overflow:hidden;padding:28px;border-radius:34px;border:1px solid rgba(255,255,255,.7);background:linear-gradient(135deg,rgba(255,204,216,.95) 0%,rgba(202,198,255,.94) 27%,rgba(177,240,233,.94) 64%,rgba(255,225,203,.96) 100%);box-shadow:0 30px 70px rgba(48,58,95,.14);display:grid;gap:24px;isolation:isolate;}
.gift-finder-card::before{content:"";position:absolute;inset:auto auto -40px -50px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.5),rgba(255,255,255,0));z-index:-1;}
.gift-finder-card::after{content:"";position:absolute;inset:20px -60px auto auto;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.42),rgba(255,255,255,0));z-index:-1;}
.gift-finder-card-glow{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.14),rgba(255,255,255,.02));}
.gift-finder-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.gift-finder-eyebrow{display:inline-flex;margin-bottom:8px;color:#5f6692;font-size:.86rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;}
.gift-finder-card-head h3{margin:0;color:#18213a;font-size:clamp(1.8rem,2.8vw,2.6rem);line-height:1;letter-spacing:-.04em;}
.gift-finder-summary-chip{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.68);border:1px solid rgba(255,255,255,.75);backdrop-filter:blur(12px);font-weight:800;color:#24304d;}
.gift-finder-control-grid{display:grid;gap:18px;}
.gift-finder-control-block{padding:18px 18px 16px;border-radius:24px;background:rgba(255,255,255,.66);border:1px solid rgba(255,255,255,.8);backdrop-filter:blur(12px);display:grid;gap:14px;box-shadow:0 18px 36px rgba(45,56,94,.08);}
.gift-finder-control-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.gift-finder-control-head strong{font-size:1.02rem;color:#18213a;}
.gift-finder-control-head span{font-weight:900;color:#5962d6;background:#f5f6ff;padding:8px 12px;border-radius:999px;}
.gift-finder-dual-range{position:relative;height:30px;display:grid;align-items:center;}
.gift-finder-dual-range input[type=range]{position:absolute;left:0;top:50%;transform:translateY(-50%);width:100%;margin:0;background:transparent;pointer-events:none;-webkit-appearance:none;appearance:none;}
.gift-finder-dual-range input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:24px;height:24px;border-radius:50%;background:#5962d6;border:3px solid #fff;box-shadow:0 8px 20px rgba(51,65,148,.28);pointer-events:auto;cursor:pointer;}
.gift-finder-dual-range input[type=range]::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:#5962d6;border:3px solid #fff;box-shadow:0 8px 20px rgba(51,65,148,.28);pointer-events:auto;cursor:pointer;}
.gift-finder-dual-range input[type=range]::-webkit-slider-runnable-track{height:0;background:transparent;}
.gift-finder-dual-range input[type=range]::-moz-range-track{height:0;background:transparent;}
.gift-finder-track{position:relative;height:10px;border-radius:999px;background:rgba(255,255,255,.82);box-shadow:inset 0 1px 2px rgba(47,59,108,.12);overflow:hidden;}
.gift-finder-track span{position:absolute;top:0;bottom:0;border-radius:999px;background:linear-gradient(90deg,#5962d6,#7b83ff);box-shadow:0 8px 18px rgba(89,98,214,.28);}
.gift-finder-scale{display:grid;align-items:center;color:#51607f;font-size:.82rem;font-weight:800;gap:8px;}
.gift-finder-scale span{text-align:center;}
.gift-finder-scale.age-scale{grid-template-columns:repeat(10,1fr);}
.gift-finder-scale.price-scale{grid-template-columns:repeat(7,1fr);}
.gift-finder-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.gift-finder-bubble{padding:16px 18px;border-radius:22px;background:rgba(255,255,255,.82);border:1px solid rgba(255,255,255,.85);display:grid;gap:6px;box-shadow:0 18px 40px rgba(47,58,94,.08);}
.gift-finder-bubble-label{font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#6e7796;}
.gift-finder-bubble strong{color:#18213a;font-size:1.05rem;line-height:1.35;}
.gift-finder-bubble small{color:var(--muted);font-size:.88rem;}
.gift-finder-button{min-width:240px;min-height:58px;border-radius:999px;box-shadow:0 18px 36px rgba(89,98,214,.28);font-weight:900;font-size:1rem;padding:0 22px;}
.section-relocated-benefits{padding-top:12px;}
@media (max-width:1220px){.gift-finder-shell{grid-template-columns:1fr;}.gift-finder-copy h2{max-width:none;}.gift-finder-copy{padding-bottom:0;}}
@media (max-width:760px){.gift-finder-card{padding:20px;border-radius:26px;}.gift-finder-control-block,.gift-finder-bubble{border-radius:20px;}.gift-finder-card-head,.gift-finder-control-head,.gift-finder-footer{align-items:flex-start;}.gift-finder-summary-chip{font-size:.9rem;}.gift-finder-button{width:100%;min-width:0;}.gift-finder-scale{font-size:.72rem;gap:4px;}}

/* gift finder full width refresh */
.gift-finder-section{padding:18px 0 6px;}
.gift-finder-card-full{padding:24px 26px;border-radius:30px;gap:18px;}
.gift-finder-card-head-compact{align-items:center;}
.gift-finder-intro{margin:10px 0 0;max-width:56ch;color:var(--muted);font-size:.98rem;line-height:1.65;}
.gift-finder-control-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.gift-finder-footer-compact{margin-top:2px;}
.gift-finder-footer-compact .gift-finder-bubble{min-width:320px;}
@media (max-width:980px){.gift-finder-control-grid-compact{grid-template-columns:1fr;}.gift-finder-card-full{padding:20px;}}
@media (max-width:760px){.gift-finder-intro{font-size:.92rem;line-height:1.55;}.gift-finder-footer-compact .gift-finder-bubble{min-width:0;width:100%;}}

.actions-inline{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.home-managed-card{background-size:cover;background-position:center}
.admin-head .actions-inline .btn{white-space:nowrap}


.bank-transfer-note-box {
    padding: 18px;
    border-radius: 20px;
    background: #f8fafc;
    border: 1px solid #dbe6f4;
}
.bank-transfer-account-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 14px;
    margin-top: 14px;
}
.bank-transfer-account-card {
    padding: 16px;
    border-radius: 18px;
    background: #fff;
    border: 1px solid #e5e7eb;
    display: grid;
    gap: 8px;
}
.bank-transfer-account-card span { color: #64748b; }
.bank-transfer-account-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}
.mini-badge {
    display: inline-flex;
    padding: 4px 10px;
    border-radius: 999px;
    background: #eef2ff;
    color: #4338ca;
    font-size: .75rem;
    font-weight: 800;
}
.auth-social-stack {
    display: grid;
    gap: 10px;
    margin-bottom: 18px;
}
.auth-divider {
    text-align: center;
    position: relative;
    color: #64748b;
    font-size: .92rem;
}
.auth-divider:before,
.auth-divider:after {
    content: "";
    position: absolute;
    top: 50%;
    width: 32%;
    height: 1px;
    background: #e2e8f0;
}
.auth-divider:before { left: 0; }
.auth-divider:after { right: 0; }
.social-auth-button { justify-content: center; }
.full-span { grid-column: 1 / -1; }

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

.review-gallery {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

@media (max-width: 900px) {
    .admin-grid-2 {
        grid-template-columns: 1fr;
    }
}

.location-search-input {
    width: 100%;
    margin-bottom: 8px;
    border: 1px solid rgba(66, 76, 110, .16);
    border-radius: 14px;
    padding: 10px 14px;
    background: #f7f8fc;
}

.field-hint {
    display: block;
    margin-top: 6px;
    color: #6b7280;
    font-size: .82rem;
}


.location-validation-card {
    border: 1px solid #dde4f4;
    border-radius: 20px;
    padding: 16px 18px;
    background: linear-gradient(180deg, rgba(255,255,255,.9), rgba(245,248,255,.96));
    box-shadow: 0 12px 28px rgba(26,43,81,.06);
}
.location-validation-head {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-bottom:8px;
}
.location-validation-chip {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:32px;
    padding:0 12px;
    border-radius:999px;
    font-size:.85rem;
    font-weight:800;
}
.location-validation-chip.valid { background:#e8fbef; color:#18794e; }
.location-validation-chip.warning { background:#fff3df; color:#9a5b00; }
.location-validation-chip.neutral { background:#eef2ff; color:#4a56d4; }
.location-validation-text { margin:0; color:#42506b; }
.location-validation-meta {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:10px;
    color:#667089;
    font-size:.92rem;
}
.table-actions { white-space: nowrap; }
.btn-xs { min-height: 34px; padding: 0 12px; font-size: .86rem; }
.row-actions { display:flex; gap:10px; flex-wrap:wrap; }

.admin-table-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.admin-table-actions .btn{white-space:nowrap}


/* Checkout saved address refresh */
.saved-address-panel { border: 1px solid #e5e8f5; }
.saved-address-select-shell { display:grid; gap:12px; max-width:560px; }
.saved-address-label { font-weight:800; color:#1f2940; }
.saved-address-select { width:100%; min-height:54px; padding:0 16px; border-radius:16px; border:1px solid #d7dcf0; background:#fff; font-size:1rem; color:#1f2940; box-shadow:0 8px 20px rgba(79,70,229,.06); }
.saved-address-select:focus { outline:none; border-color:#6d63ff; box-shadow:0 0 0 4px rgba(109,99,255,.12); }
.saved-address-helper { font-size:.92rem; color:#66728f; }

/* Turkish status badges remain readable */
.badge { white-space: nowrap; }


/* Final polish fixes */
.saved-address-panel { overflow: hidden; }
.saved-address-select-grid { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr); gap:16px; align-items:stretch; max-width:none; }
.saved-address-select-wrap { position:relative; }
.saved-address-select-wrap::after { content:"▾"; position:absolute; right:18px; top:50%; transform:translateY(-50%); color:#66728f; pointer-events:none; font-size:1rem; }
.saved-address-select { display:block !important; width:100% !important; min-height:58px; padding:0 48px 0 16px; appearance:none; -webkit-appearance:none; background:#fff; }
.saved-address-preview { border:1px solid #dbe3ff; border-radius:20px; padding:16px 18px; background:linear-gradient(180deg,#fbfcff,#f6f8ff); display:grid; gap:8px; align-content:start; }
.saved-address-preview-badge { display:inline-flex; width:max-content; padding:6px 10px; border-radius:999px; background:#eef2ff; color:var(--primary); font-size:.78rem; font-weight:800; text-transform:uppercase; letter-spacing:.04em; }
.saved-address-preview strong { font-size:1rem; color:#1f2940; }
.saved-address-preview p { margin:0; color:#334155; line-height:1.55; }
.saved-address-preview small { color:#66728f; line-height:1.5; }

.order-detail-layout { grid-template-columns:minmax(0,1.35fr) minmax(320px,.9fr); gap:24px; align-items:start; }
.order-detail-layout > * { min-width:0; }
.order-detail-layout .table-card { padding:22px; overflow:hidden; }
.order-detail-layout .table { table-layout:fixed; }
.order-detail-layout .table th:nth-child(1), .order-detail-layout .table td:nth-child(1) { width:32%; }
.order-detail-layout .table th:last-child, .order-detail-layout .table td:last-child { width:26%; }
.order-inline-actions.stacked { display:flex; flex-direction:column; gap:8px; }
.order-inline-actions.stacked .btn { width:100%; justify-content:center; text-align:center; }
.order-detail-layout .summary-card { padding:22px; position:sticky; top:96px; }
.order-info-grid .detail-box { height:100%; margin-top:0; }

.admin-order-layout { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(340px,.95fr); gap:24px; align-items:start; }
.admin-order-layout > * { min-width:0; }
.admin-order-layout .table-card { padding:22px; overflow:hidden; }
.admin-order-layout .summary-card { padding:22px; position:sticky; top:24px; }
.admin-order-layout .order-info-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.admin-order-layout .detail-box { margin-top:0; }
.admin-order-layout .form-grid.single { grid-template-columns:1fr; gap:14px; }
.admin-order-layout .hero-actions { flex-wrap:wrap; }
.admin-order-layout .dashboard-order-list { display:grid; gap:10px; }
.admin-order-layout .dashboard-order-item.compact { min-width:0; }

@media (max-width: 1100px) {
  .saved-address-select-grid,
  .order-detail-layout,
  .admin-order-layout { grid-template-columns:1fr; }
  .order-detail-layout .summary-card,
  .admin-order-layout .summary-card { position:static; }
}

@media (max-width: 720px) {
  .order-detail-layout .table,
  .admin-order-layout .table { display:block; overflow-x:auto; white-space:nowrap; }
  .order-detail-layout .table th:last-child,
  .order-detail-layout .table td:last-child { width:auto; }
}


/* Admin revamp */
.admin-body{background:linear-gradient(180deg,#f5f7ff 0%,#eef2ff 100%);} 
.admin-shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh;}
.admin-sidebar{background:linear-gradient(180deg,#0f172a 0%,#111827 100%);border-right:1px solid rgba(255,255,255,.06);padding:22px 18px;position:sticky;top:0;height:100vh;overflow:auto;box-shadow:24px 0 50px rgba(17,24,39,.12);} 
.admin-brand{display:flex;align-items:center;gap:14px;color:#fff;margin-bottom:24px;padding:8px 6px;}
.admin-brand img{width:48px;height:48px;border-radius:16px;object-fit:contain;background:#fff;padding:6px;box-shadow:0 10px 24px rgba(255,255,255,.09);} 
.admin-brand span{font-size:1.65rem;line-height:1;font-weight:900;letter-spacing:-.03em;}
.admin-nav{display:flex;flex-direction:column;gap:8px;}
.admin-nav a{display:flex;align-items:center;min-height:46px;padding:11px 14px;border-radius:16px;color:#cbd5e1;font-weight:800;transition:.22s ease;}
.admin-nav a:hover,.admin-nav a.active{background:rgba(99,102,241,.18);color:#fff;box-shadow:inset 0 0 0 1px rgba(129,140,248,.25);} 
.admin-content{padding:28px;display:grid;gap:20px;align-content:start;}
.admin-alert{margin-bottom:0;}
.admin-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:4px;}
.admin-head-spaced{margin-bottom:8px;}
.admin-head h1{font-size:2.15rem;letter-spacing:-.04em;}
.admin-head p{margin-top:6px;max-width:780px;line-height:1.7;}
.admin-form-card,.admin-table-card{padding:26px;border-radius:28px;}
.admin-form-section{display:grid;gap:16px;padding:20px;border:1px solid #e8ebf7;border-radius:22px;background:linear-gradient(180deg,#fcfdff 0%,#f8faff 100%);} 
.admin-form-section + .admin-form-section{margin-top:18px;}
.admin-section-title{font-weight:900;color:#344054;letter-spacing:.01em;font-size:1.02rem;}
.admin-form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px;}
.validation-box{padding:12px 14px;border:1px solid #fecaca;background:#fff5f5;border-radius:16px;}
.form-grid input,.form-grid textarea,.form-grid select{min-height:52px;border-radius:18px;border:1px solid #dfe5f2;background:#fff;box-shadow:0 1px 0 rgba(15,23,42,.02) inset;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;}
.form-grid textarea{min-height:128px;}
.form-grid input:focus,.form-grid textarea:focus,.form-grid select:focus,.admin-filters-grid input:focus,.admin-filters-grid select:focus{outline:none;border-color:#7c83ff;box-shadow:0 0 0 4px rgba(91,91,214,.12);} 
.form-grid input[type="color"]{padding:6px;height:52px;}
.checkbox-card{display:flex;align-items:flex-end;}
.checkbox-full{width:100%;min-height:52px;padding:14px 16px;border:1px solid #dfe5f2;border-radius:18px;background:#fff;justify-content:flex-start;}
.checkbox-full input{accent-color:var(--primary);} 
.file-field-shell{display:grid;gap:8px;align-content:start;}
.admin-file-input,input[type=file]{width:100%;padding:10px 12px;border:1px dashed #c9d2f0;border-radius:18px;background:#f8faff;min-height:54px;cursor:pointer;}
.admin-file-input::file-selector-button,input[type=file]::file-selector-button{margin-right:12px;border:none;background:linear-gradient(135deg,#5b5bd6,#7c83ff);color:#fff;padding:11px 14px;border-radius:12px;font-weight:800;cursor:pointer;box-shadow:0 10px 20px rgba(91,91,214,.18);} 
.admin-preview-card{display:flex;align-items:center;gap:18px;padding:16px 18px;border:1px solid #e4e9f7;border-radius:22px;background:#fff;}
.admin-preview-card p,.site-logo-preview p{margin:.35rem 0 0;color:var(--muted);} 
.admin-preview-image{width:120px;aspect-ratio:1/1;border-radius:18px;object-fit:cover;background:#f4f7ff;border:1px solid #e7ebf7;}
.site-logo-preview-large{align-items:center;justify-content:flex-start;padding:18px 20px;border-radius:22px;}
.site-logo-preview-large img{width:72px;height:72px;border-radius:18px;background:#f5f8ff;padding:8px;border:1px solid #e4e9f7;}
.site-logo-preview-large strong{display:block;font-size:1.15rem;font-weight:900;}
.admin-filters-card{padding:16px 18px;border:1px solid #e6e9f4;border-radius:24px;background:#fff;box-shadow:var(--shadow);} 
.admin-filters-grid{display:grid;grid-template-columns:minmax(220px,1.7fr) minmax(180px,1fr) auto;gap:12px;align-items:center;}
.admin-empty-state{padding:48px 24px;text-align:center;background:#fff;border:1px solid #e6e9f4;border-radius:28px;box-shadow:var(--shadow);} 
.admin-empty-state .empty-state-icon{font-size:2rem;margin-bottom:10px;}
.table-card .table th{font-weight:800;color:#667085;background:linear-gradient(180deg,#fbfcff 0%,#f7f8ff 100%);} 
.table-card .table td,.table-card .table th{padding:15px 14px;vertical-align:middle;}
.table-card .table tbody tr:hover{background:#fafbff;} 
@media (max-width: 1100px){.admin-shell{grid-template-columns:1fr;}.admin-sidebar{position:static;height:auto;box-shadow:none;}.admin-filters-grid{grid-template-columns:1fr;}.admin-form-actions{justify-content:stretch;}.admin-form-actions .btn{width:100%;}}


/* === Admin panel final polish === */
.admin-form-shell{display:grid;gap:18px;overflow:visible;}
.admin-form-sticky-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border:1px solid #e5e9f5;border-radius:22px;background:linear-gradient(180deg,#ffffff 0%,#f8faff 100%);position:sticky;top:18px;z-index:8;box-shadow:0 14px 30px rgba(15,23,42,.06);} 
.admin-form-sticky-bar strong{display:block;font-size:1rem;color:#1f2937;}
.admin-form-sticky-bar p{margin:.2rem 0 0;color:#667085;font-size:.92rem;}
.inline-inside-grid{grid-column:1 / -1;}
.admin-form-actions.compact{margin-top:0;display:flex;align-items:center;gap:10px;justify-content:flex-end;}
.admin-form-actions.bottom-bar{padding-top:6px;border-top:1px solid #eceff7;}
.actions-inline{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.admin-table-actions.vertical{display:flex;flex-direction:column;align-items:flex-end;gap:8px;}
.admin-table-actions.compact-right{justify-content:center;}
.admin-action-btn{min-width:128px;justify-content:center;}
.cell-actions{min-width:170px;}
.text-right{text-align:right;}
.toolbar,.admin-head.row-between,.admin-head{row-gap:12px;}
.table-actions,.actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end;}
.table-actions form,.actions form,.admin-table-actions form{margin:0;display:inline-flex;}
.admin-filters-grid-wide{grid-template-columns:minmax(320px,2fr) minmax(220px,1.15fr) auto;}
.admin-filter-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end;}
.admin-empty-state{margin-top:18px;}
.mini-badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:#eef2ff;color:#4f46e5;font-size:.78rem;font-weight:800;margin-left:8px;}
.checkbox-card{align-items:stretch;}
.checkbox-full{display:flex;align-items:center;gap:12px;min-height:54px;}
.checkbox-full input,.checkbox input[type="checkbox"]{width:18px;height:18px;flex:0 0 auto;accent-color:#5b5bd6;}
.form-grid .checkbox-card,.form-grid .checkbox{margin-top:2px;}
.form-grid .checkbox span,.checkbox-full span{font-weight:800;}
.admin-file-input,input[type=file]{font-size:.95rem;line-height:1.4;}
.file-field-shell,.site-logo-preview,.admin-preview-card{min-width:0;}
.site-logo-preview-large{min-height:112px;}
.site-logo-preview-large img{object-fit:contain;}
.table-card .table td .btn,.table-card .table th .btn{white-space:nowrap;}
.form-card .table-card{padding:0;border:0;background:transparent;box-shadow:none;}
.product-edit-form .media-manage-card,.product-edit-form .table-card{padding:22px;border-radius:24px;background:#fbfcff;border:1px solid #e6ebf7;box-shadow:none;}
.product-edit-actions{display:flex;justify-content:flex-end;gap:12px;}
.admin-sidebar{scrollbar-width:thin;}
.admin-sidebar::-webkit-scrollbar{width:10px;}
.admin-sidebar::-webkit-scrollbar-thumb{background:rgba(148,163,184,.35);border-radius:999px;}
.admin-content > .table-card,.admin-content > .form-card{overflow:visible;}
@media (max-width: 1100px){
  .admin-form-sticky-bar{position:static;flex-direction:column;align-items:flex-start;}
  .admin-form-actions.compact,.admin-filter-actions,.actions-inline{width:100%;justify-content:stretch;}
  .admin-form-actions.compact .btn,.admin-filter-actions .btn,.actions-inline .btn{width:100%;}
  .admin-filters-grid-wide{grid-template-columns:1fr;}
  .cell-actions{min-width:0;}
  .admin-table-actions.vertical{align-items:stretch;}
  .admin-action-btn{width:100%;min-width:0;}
}


.legal-page{background:#fff;border:1px solid var(--border);border-radius:24px;padding:32px;box-shadow:var(--shadow);}
.legal-page h1{margin-top:0;margin-bottom:16px;}
.legal-page h2{margin-top:24px;margin-bottom:8px;font-size:1.2rem;}
.legal-page ul{padding-left:20px;}
.legal-page li{margin-bottom:8px;}


/* --- Mobile experience refinement v20 --- */
.container { width: min(1840px, calc(100% - 32px)); }
.narrow { width: min(820px, calc(100% - 28px)); }
.container-wide { width:min(1840px, calc(100% - 32px)); margin:0 auto; }
.section { padding: 48px 0; }

.mobile-nav-toggle {
    display:none;
    align-items:center;
    gap:10px;
    min-height:48px;
    padding:0 14px;
    border:1px solid var(--border);
    border-radius:18px;
    background:#fff;
    color:var(--text);
    font-weight:800;
    box-shadow:0 8px 22px rgba(23,35,79,.06);
}
.mobile-nav-toggle .mobile-nav-icon > span {
    display:block;
    width:18px;
    height:2px;
    background:currentColor;
    border-radius:999px;
}
.mobile-nav-toggle strong { font-size:.95rem; }

.product-card.product-card-compact { min-height:100%; }
.product-body.product-body-compact h3 a {
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}
.product-body.product-body-compact p {
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}
.visual-category-body h3 {
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}
.visual-category-body p {
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}
.footer-top-card { border-radius:28px; }
.footer-grid-rich > div { min-width:0; }

@media (max-width: 760px) {
    .container, .container-wide { width:min(100%, calc(100% - 24px)); }
    .narrow { width:min(100%, calc(100% - 24px)); }
    .section { padding: 28px 0; }
    .btn { min-height:44px; }

    .mobile-nav-toggle { display:inline-flex; order:2; margin-left:auto; }
    .brand-shell { order:1; min-width:0; }
    .nav-wrap-enhanced {
        display:grid;
        grid-template-columns:minmax(0,1fr) auto;
        align-items:center;
        gap:12px;
    }
    .brand { gap:10px; min-width:0; }
    .brand-copy { min-width:0; }
    .brand-title { font-size: clamp(1.35rem, 5vw, 1.7rem) !important; }
    .brand-copy small { display:none; }
    .brand-mark { width:58px; height:58px; border-radius:18px; }
    .brand-mark img { width:48px; height:48px; }

    .nav-enhanced,
    .nav-actions-enhanced {
        display:none;
        width:100%;
        margin:0;
    }
    body.mobile-nav-open .nav-enhanced,
    body.mobile-nav-open .nav-actions-enhanced {
        display:grid;
        grid-column:1 / -1;
    }
    body.mobile-nav-open .nav-enhanced {
        gap:8px;
        padding:10px 0 0;
    }
    body.mobile-nav-open .nav-enhanced a {
        background:#fff;
        border:1px solid var(--border);
        border-radius:16px;
        padding:14px 16px;
        white-space:normal;
    }
    body.mobile-nav-open .nav-actions-enhanced {
        gap:12px;
        padding-top:12px;
    }
    body.mobile-nav-open .header-search-enhanced {
        order:1;
        width:100%;
    }
    body.mobile-nav-open .header-quick-actions {
        display:grid;
        grid-template-columns:repeat(2, minmax(0,1fr));
        gap:10px;
        width:100%;
    }
    body.mobile-nav-open .cart-pill-enhanced,
    body.mobile-nav-open .account-pill-enhanced,
    body.mobile-nav-open .quick-link-pill {
        width:100%;
        justify-content:center;
    }
    .header { position:sticky; }
    .campaign-bar { display:none; }

    .hero-story-card {
        min-height:320px;
        padding:22px 18px 58px;
        border-radius:24px;
        align-items:flex-end;
    }
    .hero-story-content { gap:12px; }
    .hero-story-content h1, .hero-story-content h2 { font-size:clamp(1.8rem, 8vw, 2.4rem); max-width:10ch; }
    .hero-story-content p { font-size:.92rem; line-height:1.55; max-width:34ch; }
    .hero-story-benefits span:nth-child(n+3) { display:none; }
    .hero-story-actions { display:grid; grid-template-columns:1fr; }
    .hero-story-actions .btn { width:100%; }

    .gift-finder-section { padding-top:12px; }
    .gift-finder-card-full { padding:18px 16px; border-radius:24px; }
    .gift-finder-card-head h3 { font-size:1.45rem; }
    .gift-finder-intro { display:none; }

    .section-head { gap:10px; align-items:flex-start; }
    .section-head h2 { font-size:1.45rem; }
    .section-head p { font-size:.94rem; line-height:1.55; }

    .product-grid { grid-template-columns:repeat(2, minmax(0,1fr)); gap:12px; }
    .product-card.product-card-compact { border-radius:18px; }
    .product-image-wrap.product-image-wrap-catalog { border-radius:16px; }
    .product-body.product-body-compact { padding:12px 12px 14px; }
    .product-body.product-body-compact h3 { font-size:.98rem; line-height:1.35; min-height:2.65em; }
    .product-body.product-body-compact p { display:none; }
    .product-card-facts.compact { display:none; }
    .price-row.compact { gap:6px; align-items:flex-start; flex-direction:column; }
    .price-row.compact strong { font-size:1rem; }
    .product-actions.product-actions-compact { display:grid; grid-template-columns:1fr; gap:8px; }
    .product-actions.product-actions-compact .product-favorite-form-inline { grid-column:auto; }
    .product-favorite-mini { width:100%; min-height:42px; border-radius:14px; }

    .category-slider .slider-arrow { display:none; }
    .category-slide .visual-category-card { border-radius:20px; }
    .visual-category-body { padding:14px; }
    .visual-category-body h3 { font-size:1rem; }
    .visual-category-body p { display:none; }

    .trust-strip { grid-template-columns:1fr; gap:10px; }
    .trust-item { padding:14px 16px; }
    .quick-link-grid { grid-template-columns:1fr; gap:12px; }
    .quick-link-card { padding:16px; }
    .home-showcase-grid { grid-template-columns:1fr; gap:12px; }
    .mobile-secondary-section { display:none; }

    .footer-rich { padding-top:20px; }
    .footer-top-card { padding:20px 16px; border-radius:24px; }
    .footer-brand-line { gap:12px; align-items:center; }
    .footer-brand-line h3 { font-size:1.25rem; }
    .footer-brand-line p { font-size:.92rem; line-height:1.55; }
    .footer-trust-badges { display:grid; grid-template-columns:1fr; gap:8px; }
    .footer-trust-badges span { justify-content:center; }
    .footer-grid-rich { margin-top:20px; grid-template-columns:1fr; gap:4px; }
    .footer-grid-rich h4 { margin-bottom:8px; }
    .footer-grid-rich a, .footer-grid-rich p { margin:6px 0; font-size:.94rem; }
    .footer-bottom-rich { gap:10px; font-size:.88rem; }
    .footer-payment-logos img{height:24px;}
    .footer-bottom-links { gap:10px 14px; }

    .whatsapp-float { bottom:14px; right:14px; }
}

@media (max-width: 420px) {
    .product-grid { gap:10px; }
    .product-body.product-body-compact { padding:10px; }
    .product-card-topbadges { top:8px; left:8px; right:8px; }
    .pill-badge { font-size:.68rem; padding:5px 7px; }
    .product-discount-badge { right:8px; bottom:8px; }
    .hero-story-card { min-height:300px; }
}


.site-popup-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.54);display:none;align-items:center;justify-content:center;padding:20px;z-index:2500;}
.site-popup-backdrop.is-visible{display:flex;}
.site-popup-card{width:min(92vw,560px);background:#fff;border-radius:28px;padding:28px 24px;box-shadow:0 24px 70px rgba(15,23,42,.24);position:relative;display:grid;gap:16px;text-align:center;border:1px solid #e5e7eb;}
.site-popup-card.success{border-color:#bbf7d0;}
.site-popup-card.error{border-color:#fecaca;}
.site-popup-close{position:absolute;top:16px;right:16px;border:0;background:#f8fafc;width:40px;height:40px;border-radius:999px;font-size:1.5rem;cursor:pointer;}
.site-popup-icon{width:72px;height:72px;margin:0 auto;border-radius:999px;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:900;}
.site-popup-card.success .site-popup-icon{background:#ecfdf5;color:#059669;}
.site-popup-card.error .site-popup-icon{background:#fef2f2;color:#dc2626;}
.site-popup-content strong{display:block;font-size:1.3rem;margin-bottom:8px;color:#111827;}
.site-popup-content p{margin:0;color:#4b5563;line-height:1.7;font-size:1rem;}
.mini-cart-item-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;}
.mini-cart-inline-form{margin:0;}
.mini-cart-inline-form-full{width:100%;}
.mini-cart-inline-action{border:0;background:#fff1f2;color:#be123c;border-radius:12px;padding:10px 12px;font-weight:800;cursor:pointer;white-space:nowrap;}
.shipment-highlight-card{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:22px 24px;border-radius:24px;background:linear-gradient(135deg,#eff6ff,#f5f3ff);border:1px solid #c7d2fe;margin-bottom:18px;}
.shipment-highlight-badge{display:inline-flex;padding:8px 12px;border-radius:999px;background:#fff;color:#4f46e5;font-weight:800;font-size:.82rem;margin-bottom:10px;}
.shipment-highlight-card h3{margin:0 0 6px;font-size:1.3rem;}
.shipment-highlight-card p{margin:0;color:#4b5563;}
.shipment-highlight-actions{display:flex;align-items:center;justify-content:flex-end;}
.modern-select,.modern-input,.modern-textarea{border:1px solid #dbe3ff;border-radius:18px;background:linear-gradient(180deg,#fff,#f8faff);box-shadow:0 8px 20px rgba(99,102,241,.06);}
.modern-textarea{padding:14px 16px;min-height:120px;resize:vertical;}
.coupon-inline-row-expanded{grid-template-columns:minmax(0,1fr)!important;}
.coupon-inline-row-expanded .coupon-inline-field-modern{max-width:none;}
.coupon-status-box{margin-top:4px;}
@media (max-width:820px){.shipment-highlight-card{flex-direction:column;align-items:flex-start;}.mini-cart-item-row{grid-template-columns:1fr;}.mini-cart-inline-action{width:100%;}.site-popup-card{padding:24px 20px;}}

/* --- Desktop fit refinement v22 --- */
@media (min-width: 1000px) {
    .container,
    .container-wide {
        width: min(1600px, calc(100% - 48px));
    }

    .nav-wrap-enhanced {
        gap: 14px;
        padding: 14px 0;
        align-items: center;
    }

    .brand-mark {
        width: 58px;
        height: 58px;
    }

    .brand-mark img {
        width: 48px;
        height: 48px;
    }

    .brand {
        gap: 10px;
    }

    .brand-title {
        font-size: clamp(1.85rem, 1.2vw, 2.25rem);
    }

    .brand-copy small {
        font-size: .8rem;
    }

    .nav-enhanced {
        gap: 4px;
    }

    .nav-enhanced a {
        padding: 10px 12px;
        font-size: .94rem;
    }

    .nav-actions-enhanced {
        gap: 8px;
    }

    .header-search-enhanced {
        min-width: 280px;
        max-width: 380px;
    }

    .header-search-button {
        min-width: 64px;
        padding: 0 14px;
    }

    .quick-link-pill,
    .cart-pill-enhanced,
    .account-pill-enhanced {
        min-height: 48px;
    }

    .cart-pill-enhanced,
    .account-pill-enhanced {
        gap: 10px;
        padding: 9px 12px;
        border-radius: 18px;
    }

    .cart-pill-labels strong,
    .account-pill-labels strong {
        font-size: .9rem;
    }

    .hero-story-card {
        min-height: 400px;
        padding: 40px 52px 40px 76px;
    }

    .hero-story-content {
        max-width: 500px;
        margin-left: 12px;
    }

    .hero-story-content h1,
    .hero-story-content h2 {
        font-size: clamp(2.2rem, 3.8vw, 3.7rem);
    }

    .hero-story-arrow.slider-arrow-left {
        left: 12px;
    }

    .hero-story-arrow.slider-arrow-right {
        right: 12px;
    }
}

@media (min-width: 1000px) and (max-width: 1366px) {
    .container,
    .container-wide {
        width: min(1520px, calc(100% - 40px));
    }

    .header-topline-inner {
        gap: 12px;
    }

    .header-trust-row,
    .header-utility-links {
        gap: 12px;
    }

    .header-trust-row span,
    .header-utility-links a {
        font-size: .84rem;
    }

    .nav-wrap-enhanced {
        gap: 12px;
    }

    .brand-copy small {
        display: none;
    }

    .nav-enhanced a {
        padding: 9px 10px;
        font-size: .9rem;
    }

    .header-search-enhanced {
        min-width: 240px;
        max-width: 320px;
    }

    .cart-pill-labels small,
    .account-pill-labels small {
        font-size: .7rem;
    }

    .cart-pill-labels strong,
    .account-pill-labels strong {
        font-size: .84rem;
    }

    .hero-story-card {
        min-height: 380px;
        padding: 36px 48px 36px 82px;
    }

    .hero-story-content {
        max-width: 460px;
        margin-left: 16px;
    }

    .hero-story-content h1,
    .hero-story-content h2 {
        font-size: clamp(2rem, 3.3vw, 3.2rem);
    }

    .hero-story-content p {
        font-size: .98rem;
        max-width: 42ch;
    }

    .hero-story-badge,
    .hero-story-benefits span {
        font-size: .88rem;
    }

    .gift-finder-card {
        padding: 28px;
    }
}


.shipment-compact-card{display:inline-flex;flex-direction:column;align-items:flex-start;gap:8px;padding:10px 12px;border:1px solid #e6eaf5;border-radius:18px;background:#fbfcff;min-width:150px;}
.shipment-compact-name{font-weight:800;font-size:.98rem;line-height:1.2;color:#1f2a44;}
.shipment-compact-link{display:inline-flex;align-items:center;justify-content:center;padding:9px 14px;border-radius:14px;border:1px solid #d9deee;background:#fff;color:#2f3b66;font-weight:700;text-decoration:none;transition:.2s ease;}
.shipment-compact-link:hover{background:#f4f6ff;border-color:#cfd6ee;color:#283456;}
@media (max-width: 991px){
  .shipment-compact-card{min-width:unset;width:100%;}
}


@media (max-width: 980px){
  .hero-story-card[data-mobile-link]{cursor:pointer;}
}


/* --- Mobile commerce improvements vNext --- */
.desktop-order-table,.desktop-order-items-table{display:block;}
.mobile-order-list,.mobile-order-item-list,.account-mobile-nav,.mobile-cart-sticky-bar,.checkout-mobile-submitbar,.mobile-product-buybar{display:none;}
.account-mobile-nav{gap:10px;overflow:auto;padding-bottom:6px;margin-bottom:14px;scrollbar-width:none;}
.account-mobile-nav::-webkit-scrollbar{display:none;}
.account-mobile-chip{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;padding:12px 16px;border-radius:999px;border:1px solid var(--border);background:#fff;color:#475467;font-weight:800;text-decoration:none;box-shadow:0 10px 22px rgba(15,23,42,.04);}
.account-mobile-chip.active{background:#eef2ff;border-color:#c7d2fe;color:var(--primary);}
.mobile-order-card,.mobile-order-item-card{background:var(--surface);border:1px solid var(--border);border-radius:22px;box-shadow:var(--shadow);padding:18px;display:grid;gap:14px;}
.mobile-order-list,.mobile-order-item-list{gap:14px;}
.mobile-order-top,.mobile-order-item-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;}
.mobile-order-top p{margin:4px 0 0;color:var(--muted);font-size:.92rem;}
.mobile-order-total{white-space:nowrap;font-size:1.05rem;}
.mobile-order-meta,.mobile-order-item-meta{display:flex;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:.92rem;}
.mobile-order-shipment{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;padding:12px 14px;border-radius:16px;background:#f8faff;border:1px solid #e6ebff;}
.mobile-order-actions,.mobile-order-item-actions{display:grid;grid-template-columns:1fr;gap:10px;}
.order-detail-top-actions{flex-wrap:wrap;justify-content:flex-end;}
.cart-stepper{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;min-width:0;}
.cart-stepper-form,.cart-stepper-input-form{margin:0;}
.cart-stepper-button{width:44px;height:44px;border-radius:14px;border:1px solid var(--border);background:#fff;font-size:1.3rem;font-weight:800;color:#24314f;cursor:pointer;box-shadow:0 8px 18px rgba(15,23,42,.04);}
.cart-stepper-button[disabled]{opacity:.45;cursor:not-allowed;}
.cart-stepper-input-form{display:grid;grid-template-columns:minmax(0,90px) auto;gap:10px;align-items:center;}
.cart-stepper-input{width:100%;padding:12px 10px;border:1px solid var(--border);border-radius:14px;background:#fff;text-align:center;font:inherit;font-weight:800;}
.cart-stepper-update{white-space:nowrap;}
.checkout-panel-toggle{border:1px solid #dbe3ff;background:#fff;border-radius:999px;padding:10px 14px;font-weight:800;color:#4f46e5;box-shadow:0 8px 18px rgba(79,70,229,.06);}
.checkout-panel-body{display:block;}
.mobile-cart-sticky-bar,.checkout-mobile-submitbar,.mobile-product-buybar{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:1200;display:none;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:20px;background:rgba(255,255,255,.98);backdrop-filter:blur(16px);border:1px solid #e4e8f6;box-shadow:0 18px 40px rgba(15,23,42,.14);}
.mobile-cart-sticky-bar small,.checkout-mobile-submitbar small,.mobile-product-buybar small{display:block;color:var(--muted);font-size:.8rem;margin-bottom:2px;}
.mobile-cart-sticky-bar strong,.checkout-mobile-submitbar strong,.mobile-product-buybar strong{font-size:1.05rem;line-height:1.1;}
.checkout-mobile-submitbar button,.mobile-cart-sticky-bar .btn{min-width:140px;}
.mobile-product-buybar{display:none;align-items:center;gap:12px;}
.mobile-product-buybar-copy{min-width:0;display:grid;gap:2px;}
.mobile-product-buybar-copy span{color:var(--muted);font-size:.82rem;}
.mobile-product-buybar-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;flex:1;}
.mobile-buybar-form{margin:0;}
.product-card.product-card-compact img{image-rendering:auto;}

@media (max-width: 900px){
  .desktop-account-sidebar{display:none;}
  .account-mobile-nav{display:flex;}
}
@media (max-width: 820px){
  .desktop-order-table,.desktop-order-items-table{display:none;}
  .mobile-order-list,.mobile-order-item-list{display:grid;}
  .cart-stepper-input-form{grid-template-columns:minmax(0,80px) auto;}
  .cart-item-refined{grid-template-columns:1fr;}
  .cart-item-remove .btn{width:100%;}
  .checkout-panel.is-collapsed .checkout-panel-body,
  .saved-address-panel.is-collapsed .checkout-panel-body{display:none;}
  .checkout-panel-head,.saved-address-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;}
  .checkout-bottom-bar{margin-bottom:94px;}
  .summary-card-commerce{margin-bottom:90px;}
  .mobile-cart-sticky-bar,.checkout-mobile-submitbar,.mobile-product-buybar{display:flex;}
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
  .product-card.product-card-compact .product-body p,
  .product-card.product-card-compact .product-card-facts.compact,
  .product-hover-chip{display:none;}
  .product-card.product-card-compact .product-body{gap:10px;}
  .product-card.product-card-compact .product-category{font-size:.78rem;}
  .product-card.product-card-compact h3{font-size:1rem;line-height:1.35;min-height:2.7em;}
  .product-actions.product-actions-compact{grid-template-columns:1fr;gap:8px;}
  .product-actions.product-actions-compact .btn{min-height:44px;}
  .detail-panel{padding-bottom:12px;}
  .purchase-card{margin-bottom:100px;}
}
@media (max-width: 640px){
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .mobile-order-card,.mobile-order-item-card{padding:16px;}
  .mobile-order-top,.mobile-order-item-head,.mobile-order-shipment{flex-direction:column;align-items:flex-start;}
  .checkout-mobile-submitbar button,.mobile-cart-sticky-bar .btn{min-width:120px;}
  .mobile-product-buybar{flex-direction:column;align-items:stretch;}
  .mobile-product-buybar-actions{grid-template-columns:1fr 1fr;}
}

/* v47 brand refresh: modern premium logo sizing */
.brand-mark{
    width:88px;
    height:88px;
    border-radius:0;
    background:transparent;
    border:none;
    box-shadow:none;
    padding:0;
}
.brand-mark img{
    width:88px;
    height:88px;
    border-radius:24px;
    object-fit:contain;
    display:block;
    filter:drop-shadow(0 12px 24px rgba(91,91,214,.18));
}
.brand{
    gap:14px;
}
.brand-copy{
    gap:4px;
}
.brand-title{
    font-size:clamp(2.05rem,2.2vw,2.55rem) !important;
    line-height:.94;
}
.brand-copy small{
    font-size:.86rem;
    font-weight:800;
    color:#6b7280;
}

.admin-brand{
    gap:16px;
}
.admin-brand img{
    width:58px;
    height:58px;
    border-radius:18px;
    object-fit:contain;
    background:transparent;
    padding:0;
    box-shadow:none;
    filter:drop-shadow(0 12px 22px rgba(91,91,214,.20));
}
.admin-brand span{
    font-size:1.72rem;
}

@media (max-width: 1200px){
    .brand-mark,
    .brand-mark img{
        width:80px;
        height:80px;
    }
    .brand-title{
        font-size:clamp(1.92rem,2vw,2.28rem) !important;
    }
}

@media (max-width: 760px){
    .brand-mark,
    .brand-mark img{
        width:64px;
        height:64px;
    }
    .brand-mark img{
        border-radius:18px;
    }
    .brand-title{
        font-size:clamp(1.45rem,5.8vw,1.78rem) !important;
    }
    .brand-copy small{
        display:block;
        font-size:.66rem;
        line-height:1.15;
    }
}

/* --- April 2026 growth pack additions --- */
.search-suggestion-groups{display:grid;gap:12px;padding:14px;}
.search-suggestion-group{display:grid;gap:10px;}
.search-group-title{font-size:.82rem;font-weight:900;letter-spacing:.02em;color:#475467;text-transform:uppercase;}
.search-chip-cloud{display:flex;flex-wrap:wrap;gap:8px;}
.search-chip{display:inline-flex;align-items:center;justify-content:center;padding:9px 12px;border-radius:999px;background:#f6f7ff;border:1px solid #e6e9f8;color:#344054;font-weight:800;font-size:.92rem;}
.search-chip:hover{background:#eef2ff;color:#4038c5;}
.search-suggestion-item.search-suggestion-rich{display:grid;grid-template-columns:48px 1fr auto;gap:12px;align-items:center;padding:10px 12px;border-radius:16px;}
.search-suggestion-item.search-suggestion-rich:hover{background:#f6f8ff;}
.search-suggestion-media img{width:48px;height:48px;object-fit:cover;border-radius:14px;background:#f6f7ff;border:1px solid #eef2ff;}
.search-suggestion-text{display:grid;gap:2px;}
.search-suggestion-text strong{color:#182033;}
.search-suggestion-type{color:#667085;font-weight:800;}
.mobile-search-suggestions{margin-top:12px;border:1px solid #edf0f8;border-radius:18px;background:#fff;box-shadow:0 18px 40px rgba(31,42,68,.08);overflow:hidden;}

.home-discovery-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 22px;border-radius:28px;background:linear-gradient(135deg,#fff,#f6f7ff);border:1px solid #e8ebf6;box-shadow:var(--shadow);}
.home-discovery-copy{display:grid;gap:4px;}
.home-discovery-copy strong{font-size:1.15rem;}
.home-discovery-copy span{color:var(--muted);}
.home-discovery-chips{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;}
.home-discovery-chip{padding:10px 14px;border-radius:999px;background:#fff;border:1px solid #e7eaf7;font-weight:800;color:#32405d;}
.home-discovery-chip:hover{background:#eef2ff;color:#4338ca;}
.home-collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.home-collection-card{padding:26px;border-radius:28px;border:1px solid #e7eaf7;box-shadow:var(--shadow);background:#fff;display:grid;gap:10px;min-height:220px;}
.home-collection-card h3{margin:0;font-size:1.55rem;letter-spacing:-.03em;}
.home-collection-card p{margin:0;color:var(--muted);max-width:34ch;}
.home-collection-card.soft-purple{background:linear-gradient(135deg,#f5f2ff,#ffffff);}
.home-collection-card.soft-pink{background:linear-gradient(135deg,#fff1f7,#ffffff);}
.home-collection-card.soft-blue{background:linear-gradient(135deg,#eef8ff,#ffffff);}

.catalog-prelude{margin-top:10px;margin-bottom:-24px;}
.catalog-quick-scroller{display:flex;gap:10px;overflow:auto;padding:10px 4px 4px;scrollbar-width:none;}
.catalog-quick-scroller::-webkit-scrollbar{display:none;}
.catalog-quick-pill{flex:0 0 auto;padding:10px 14px;border-radius:999px;background:#fff;border:1px solid #e7eaf6;font-weight:800;color:#334155;box-shadow:0 8px 24px rgba(31,42,68,.05);}
.catalog-quick-pill.active,.catalog-quick-pill:hover{background:#eef2ff;color:#4338ca;border-color:#d9ddff;}
.catalog-insight-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px;}
.catalog-insight-card{padding:14px 16px;border-radius:20px;background:#fff;border:1px solid #e8ebf6;display:grid;gap:4px;box-shadow:0 8px 24px rgba(31,42,68,.05);}
.catalog-insight-card strong{font-size:1.15rem;}
.catalog-insight-card span{color:#667085;font-weight:700;}
.catalog-helper-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:16px;}
.catalog-helper-label{font-weight:900;color:#475467;}
.catalog-inline-chip{padding:8px 12px;border-radius:999px;background:#f7f8ff;border:1px solid #e7eaf6;font-weight:800;color:#32405d;}
.catalog-reassurance-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border-radius:24px;background:linear-gradient(135deg,#fff,#f7f7ff);border:1px solid #e8ebf6;margin:0 0 16px;}
.catalog-reassurance-banner strong{display:block;}
.catalog-reassurance-banner span{color:#667085;}
.catalog-reassurance-pills{display:flex;flex-wrap:wrap;gap:10px;}
.catalog-reassurance-pills span{padding:8px 12px;border-radius:999px;background:#eef2ff;color:#4338ca;font-weight:800;}


.product-rating-row{display:flex;align-items:center;gap:6px;margin:4px 0 10px;font-size:.84rem;color:#667085;font-weight:800;}
.product-rating-row strong{font-size:.92rem;color:#1f2937;}
.product-rating-row span:last-child{font-weight:700;color:#8b95a7;}
.product-rating-row .stars{font-size:.92rem;}
.product-proof-row{display:flex;flex-wrap:wrap;gap:8px;}
.product-proof-pill{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:#fff8eb;border:1px solid #fde7b0;color:#9a6700;font-size:.78rem;font-weight:900;}
.product-proof-pill.soft{background:#f5f7ff;border-color:#dee4ff;color:#4650b8;}
.product-card-trustline{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:.82rem;color:#667085;font-weight:800;}
.product-card-trustline .is-instock{color:#15803d;}
.product-card-trustline .is-outstock{color:#b45309;}
.product-offer-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0 8px;}
.product-offer-card{padding:14px 16px;border-radius:20px;background:#fff;border:1px solid #e8ebf6;display:grid;gap:4px;box-shadow:0 8px 24px rgba(31,42,68,.04);}
.product-offer-card strong{font-size:1.05rem;color:#1f2a44;}
.product-offer-card span{color:#667085;}
.product-urgency-row{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 0;}
.product-urgency-pill{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:#f7f8ff;border:1px solid #e7eaf7;font-size:.84rem;font-weight:900;color:#32405d;}
.product-urgency-pill.hot{background:#fff3f2;border-color:#ffd0cb;color:#b42318;}
.product-shipping-promise{display:grid;gap:10px;margin:18px 0 14px;padding:16px 18px;border-radius:24px;background:linear-gradient(135deg,#f9faff,#ffffff);border:1px solid #e7eaf6;}
.product-shipping-promise > div{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:8px;}
.product-shipping-promise span{font-size:1.15rem;}
.product-shipping-promise small{color:#667085;}
.faq-accordion-grid{display:grid;gap:12px;}
.faq-card{border:1px solid #e7eaf6;border-radius:24px;background:#fff;padding:0 18px;box-shadow:0 10px 28px rgba(31,42,68,.05);}
.faq-card summary{list-style:none;cursor:pointer;padding:18px 0;font-weight:900;color:#182033;display:flex;justify-content:space-between;gap:12px;}
.faq-card summary::-webkit-details-marker{display:none;}
.faq-card summary::after{content:'+';font-size:1.4rem;color:#5b5bd6;line-height:1;}
.faq-card[open] summary::after{content:'–';}
.faq-card p{margin:0 0 18px;color:#667085;}

.cart-trust-timeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px;}
.cart-trust-step{padding:14px 16px;border-radius:22px;background:#fff;border:1px solid #e7eaf6;display:flex;align-items:center;gap:12px;box-shadow:0 8px 24px rgba(31,42,68,.05);}
.cart-trust-step strong{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:999px;background:#eef2ff;color:#4338ca;}
.cart-trust-step.active{border-color:#d7dcff;background:#f7f8ff;}
.cart-recommend-section{display:grid;gap:18px;}

.checkout-fast-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0 18px;}
.checkout-fast-benefit{padding:16px 18px;border-radius:22px;background:#fff;border:1px solid #e8ebf6;box-shadow:0 10px 24px rgba(31,42,68,.04);display:grid;gap:4px;}
.checkout-fast-benefit strong{font-size:1rem;}
.checkout-fast-benefit span{color:#667085;}
.checkout-faq-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:24px;}
.checkout-faq-card{padding:0 18px;border-radius:24px;background:#fff;border:1px solid #e8ebf6;box-shadow:0 10px 24px rgba(31,42,68,.04);}
.checkout-faq-card summary{cursor:pointer;list-style:none;padding:18px 0;font-weight:900;color:#1f2a44;}
.checkout-faq-card summary::-webkit-details-marker{display:none;}
.checkout-faq-card p{margin:0 0 18px;color:#667085;}

.admin-insight-ribbon,.admin-orders-quickbar{display:flex;flex-wrap:wrap;gap:10px;}
.admin-insight-chip,.admin-quick-filter{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:999px;background:#fff;border:1px solid #e7eaf6;color:#334155;font-weight:800;box-shadow:0 8px 20px rgba(31,42,68,.05);}
.admin-insight-chip:hover,.admin-quick-filter:hover{background:#eef2ff;color:#4338ca;}
.admin-orders-help{padding:0 0 14px;color:#667085;font-weight:700;}

@media (max-width: 980px){
  .home-discovery-bar,.catalog-reassurance-banner{grid-template-columns:1fr;display:grid;}
  .home-collection-grid,.catalog-insight-strip,.product-offer-strip,.checkout-fast-benefits,.checkout-faq-row{grid-template-columns:repeat(2,minmax(0,1fr));}
  .cart-trust-timeline{grid-template-columns:1fr;}
}
@media (max-width: 760px){
  .home-discovery-bar{padding:16px;}
  .home-discovery-chips,.catalog-reassurance-pills{justify-content:flex-start;}
  .home-collection-grid,.catalog-insight-strip,.product-offer-strip,.checkout-fast-benefits,.checkout-faq-row{grid-template-columns:1fr;}
  .catalog-prelude{margin-bottom:-10px;}
  .catalog-helper-row{overflow:auto;flex-wrap:nowrap;padding-bottom:4px;}
  .catalog-helper-row > *{flex:0 0 auto;}
  .product-shipping-promise > div{grid-template-columns:auto 1fr;}
  .product-shipping-promise > div strong{grid-column:2;}
  .product-shipping-promise > div small{grid-column:2;}
  .search-suggestion-item.search-suggestion-rich{grid-template-columns:42px 1fr;}
  .search-suggestion-type{display:none;}
}

.active-filter-chips-compact { margin: 6px 0 12px; }
.active-filter-chips-compact .chip-link { padding: 8px 12px; }

.catalog-seo-section {
    padding-top: 8px;
}

.catalog-seo-copy-card {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
    gap: 20px;
    padding: 24px;
    border: 1px solid #e9eaf5;
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 20px 50px rgba(22, 28, 45, 0.06);
}

.section-mini-label {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 10px;
    padding: 6px 12px;
    border-radius: 999px;
    background: #f1f2ff;
    color: #5b5bd6;
    font-weight: 700;
    font-size: 13px;
}

.catalog-seo-link-grid,
.catalog-faq-grid,
.home-seo-guide-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.catalog-seo-link-card,
.catalog-faq-card,
.home-seo-guide-card,
.home-seo-faq-card {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 18px;
    border-radius: 20px;
    border: 1px solid #ececf6;
    background: linear-gradient(180deg, #ffffff 0%, #fafaff 100%);
}

.catalog-seo-link-card strong,
.catalog-faq-card h3,
.home-seo-guide-card strong,
.home-seo-faq-card h3 {
    margin: 0;
    color: #1d2340;
}

.catalog-seo-link-card span,
.catalog-faq-card p,
.home-seo-guide-card span,
.home-seo-faq-card p {
    color: #5b6075;
    line-height: 1.65;
    margin: 0;
}

.home-seo-guide-copy {
    max-width: 860px;
    margin-top: 16px;
    color: #5b6075;
}

.home-seo-faq-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-top: 16px;
}

@media (max-width: 980px) {
    .catalog-seo-copy-card,
    .catalog-seo-link-grid,
    .catalog-faq-grid,
    .home-seo-guide-grid,
    .home-seo-faq-grid {
        grid-template-columns: 1fr;
    }
}


.campaign-page-shell,.campaign-detail-shell{display:grid;gap:24px}
.campaign-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.campaign-card{background:#fff;border:1px solid #e8e9f3;border-radius:28px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 10px 24px rgba(25,32,45,.06)}
.campaign-card-media{display:block;position:relative;aspect-ratio:16/9;background:#f6f7fb}
.campaign-card-media img,.campaign-detail-media img{width:100%;height:100%;object-fit:cover;display:block}
.campaign-badge{position:absolute;top:16px;left:16px;background:#5f4ee8;color:#fff;border-radius:999px;padding:8px 14px;font-weight:700;font-size:.875rem}
.campaign-card-body{padding:20px;display:grid;gap:12px}
.campaign-card-body h2{font-size:1.35rem;margin:0}
.campaign-card-body p{margin:0;color:#596377;line-height:1.65}
.campaign-card-meta{display:flex;flex-wrap:wrap;gap:10px;color:#6d768a;font-size:.92rem}
.campaign-detail-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:stretch;background:#fff;border:1px solid #e8e9f3;border-radius:32px;padding:28px;box-shadow:0 10px 24px rgba(25,32,45,.06)}
.campaign-detail-copy{display:grid;align-content:start;gap:16px}
.campaign-detail-copy h1{margin:0;font-size:clamp(2rem,3vw,3rem)}
.campaign-summary{font-size:1.08rem;line-height:1.7;color:#596377;margin:0}
.campaign-detail-media{border-radius:24px;overflow:hidden;min-height:320px;background:#f6f7fb}
.campaign-coupon-box,.campaign-terms-box,.empty-state-card,.campaign-rich-text{background:#fff;border:1px solid #e8e9f3;border-radius:24px;padding:20px;box-shadow:0 10px 24px rgba(25,32,45,.04)}
.campaign-coupon-box{display:grid;gap:6px;max-width:max-content;background:#f5f3ff}
.campaign-date-range{font-weight:600;color:#4f5870}
.campaign-detail-hero--single-offer{grid-template-columns:1fr 520px}
.campaign-coupon-box--interactive{max-width:none;background:#f5f3ff}
.campaign-coupon-code-row{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.campaign-copy-btn{white-space:nowrap}
.campaign-copy-feedback{display:inline-block;color:#5f4ee8;font-weight:700}
@media (max-width: 991px){.campaign-detail-hero--single-offer{grid-template-columns:1fr}}

.inline-check-list{display:flex;gap:18px;flex-wrap:wrap}
@media (max-width: 991px){.campaign-grid{grid-template-columns:1fr 1fr}.campaign-detail-hero{grid-template-columns:1fr}.campaign-detail-media{min-height:220px}}
@media (max-width: 680px){.campaign-grid{grid-template-columns:1fr}}

/* --- Header spacing refinement v23 (menu balance after removing Yeni Gelenler) --- */
@media (min-width: 1000px) {
    .nav-wrap-enhanced {
        gap: 10px;
        padding: 12px 0;
    }

    .brand {
        gap: 8px;
    }

    .brand-title {
        font-size: clamp(1.7rem, 1.15vw, 2.05rem);
    }

    .nav-enhanced {
        flex: 1 1 0;
        gap: 0;
    }

    .nav-enhanced a {
        padding: 8px 8px;
        font-size: .9rem;
    }

    .nav-actions-enhanced {
        gap: 8px;
    }

    .header-search-enhanced {
        min-width: 220px;
        max-width: 300px;
        padding: 8px 8px 8px 12px;
    }

    .header-search-button {
        min-width: 58px;
        padding: 0 12px;
    }

    .quick-link-pill,
    .cart-pill-enhanced,
    .account-pill-enhanced {
        min-height: 46px;
    }

    .cart-pill-enhanced,
    .account-pill-enhanced {
        gap: 8px;
        padding: 8px 10px;
    }

    .cart-pill-labels small,
    .account-pill-labels small {
        font-size: .68rem;
    }

    .cart-pill-labels strong,
    .account-pill-labels strong {
        font-size: .82rem;
    }
}

@media (min-width: 1000px) and (max-width: 1366px) {
    .nav-wrap-enhanced {
        gap: 8px;
    }

    .nav-enhanced a {
        padding: 8px 7px;
        font-size: .88rem;
    }

    .header-search-enhanced {
        min-width: 200px;
        max-width: 260px;
    }

    .quick-link-pill {
        width: 46px;
    }
}


/* --- Header balance refinement v24 (less cramped nav, softer action widths) --- */
@media (min-width: 1000px) {
    .nav-wrap-enhanced {
        gap: 16px;
        padding: 15px 0;
    }

    .brand-shell {
        margin-right: 4px;
    }

    .brand {
        gap: 10px;
    }

    .brand-title {
        font-size: clamp(1.78rem, 1.2vw, 2.08rem);
    }

    .nav-enhanced {
        flex: 1 1 auto;
        justify-content: flex-start;
        gap: 8px;
    }

    .nav-enhanced a {
        padding: 10px 12px;
        font-size: .99rem;
        font-weight: 800;
    }

    .nav-actions-enhanced {
        gap: 8px;
        flex: 0 0 auto;
    }

    .header-search-enhanced {
        min-width: 245px;
        max-width: 310px;
    }

    .header-search-button {
        min-width: 64px;
        padding: 0 14px;
    }

    .header-quick-actions {
        gap: 8px;
    }

    .quick-link-pill,
    .cart-pill-enhanced,
    .account-pill-enhanced {
        min-height: 48px;
    }

    .quick-link-pill {
        width: 48px;
    }

    .cart-pill-enhanced,
    .account-pill-enhanced {
        gap: 9px;
        padding: 9px 12px;
        border-radius: 18px;
    }

    .cart-pill-labels small,
    .account-pill-labels small {
        font-size: .7rem;
    }

    .cart-pill-labels strong,
    .account-pill-labels strong {
        font-size: .86rem;
    }

    .nav-actions-enhanced > .btn {
        min-height: 48px;
        padding: 10px 15px;
        border-radius: 18px;
        font-size: .95rem;
        white-space: nowrap;
    }

    .btn-primary-glow {
        box-shadow: 0 12px 24px rgba(91, 91, 214, .18);
    }
}

@media (min-width: 1000px) and (max-width: 1366px) {
    .nav-wrap-enhanced {
        gap: 12px;
    }

    .nav-enhanced {
        gap: 4px;
    }

    .nav-enhanced a {
        padding: 9px 10px;
        font-size: .95rem;
    }

    .header-search-enhanced {
        min-width: 220px;
        max-width: 275px;
    }

    .cart-pill-enhanced,
    .account-pill-enhanced {
        padding: 9px 11px;
    }

    .nav-actions-enhanced > .btn {
        padding: 10px 14px;
        font-size: .93rem;
    }
}
