@import url('https://fonts.googleapis.com/css2?family=Bodoni+Moda:opsz,wght@6..96,400;6..96,500;6..96,600;6..96,700&family=Manrope:wght@300;400;500;600;700;800&display=swap');

:root {
    --font-heading: 'Bodoni Moda', serif;
    --font-body: 'Manrope', sans-serif;
    --primary-color: #121212;
    --secondary-color: #f5f0e8;
    --surface-color: #ffffff;
    --surface-muted: #f8f4ee;
    --surface-dark: #0d0d0d;
    --accent-color: #f6f1e9;
    --text-muted: #6f685d;
    --border-color: rgba(18, 18, 18, 0.08);
    --border-strong: rgba(18, 18, 18, 0.16);
    --shadow-soft: 0 28px 80px rgba(18, 18, 18, 0.12);
    --transition: all 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    font-family: var(--font-body);
    font-weight: 400;
    color: var(--primary-color);
    background-color: var(--surface-color);
    line-height: 1.7;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

img {
    display: block;
    width: 100%;
    max-width: 100%;
}

a {
    color: inherit;
}

p {
    margin-bottom: 0;
}

h1, h2, h3, h4, h5, h6, .display-font {
    margin-bottom: 0;
    font-family: var(--font-heading);
    font-weight: 600;
    letter-spacing: -0.04em;
    line-height: 0.96;
}

.text-xs {
    font-size: 0.75rem;
}

.ls-wide {
    letter-spacing: 0.16em;
}

.page-shell {
    padding-inline: 3rem;
}

/* Navbar & Offcanvas */
.navbar {
    padding: 2.25rem 0;
    background: transparent;
    transition: var(--transition);
    z-index: 1000 !important;
}

.navbar.scrolled,
.navbar.navbar-solid {
    padding: 1rem 0;
    background: rgba(255, 255, 255, 0.94);
    backdrop-filter: blur(32px);
    border-bottom: 1px solid rgba(18, 18, 18, 0.08);
}

.navbar.navbar-hidden {
    opacity: 0;
    pointer-events: none;
}

.navbar-brand {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff !important;
    text-decoration: none;
    transition: var(--transition);
}

.brand-lockup {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.7rem;
}

.brand-mark-wrap {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    flex: 0 0 auto;
}

.brand-mark {
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: drop-shadow(0 10px 18px rgba(0, 0, 0, 0.12));
}

.brand-lockup-offcanvas {
    gap: 0.9rem;
}

.brand-mark-wrap-offcanvas {
    width: 2.3rem;
    height: 2.3rem;
}

.brand-wordmark {
    font-family: var(--font-body);
    font-size: clamp(0.78rem, 1.1vw, 0.96rem);
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    white-space: nowrap;
}

.navbar.scrolled .navbar-brand,
.navbar.navbar-solid .navbar-brand {
    color: var(--primary-color) !important;
}

.menu-trigger {
    background: none;
    border: none;
    padding: 0;
    display: flex;
    align-items: center;
    gap: 0.9rem;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.24em;
    text-transform: uppercase;
    color: #fff !important;
    transition: var(--transition);
}

.navbar.scrolled .menu-trigger,
.navbar.navbar-solid .menu-trigger {
    color: var(--primary-color) !important;
}

.nav-icon {
    color: #fff !important;
    transition: var(--transition);
}

.nav-icon-button {
    border: none;
    background: none;
    padding: 0;
}

.navbar.scrolled .nav-icon,
.navbar.navbar-solid .nav-icon {
    color: var(--primary-color) !important;
}

.nav-icon:hover {
    opacity: 0.65;
}

.cart-dot {
    position: absolute;
    top: -0.55rem;
    right: -0.85rem;
    min-width: 1.3rem;
    height: 1.3rem;
    padding: 0 0.28rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #111111;
    color: #ffffff;
    font-size: 0.58rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1;
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.32);
}

.navbar.scrolled .cart-dot,
.navbar.navbar-solid .cart-dot {
    background: var(--primary-color);
    color: var(--surface-color);
    box-shadow: none;
}

.offcanvas {
    background:
        radial-gradient(circle at top left, rgba(255, 255, 255, 0.08), transparent 32%),
        linear-gradient(145deg, #090909 0%, #171717 100%);
    color: var(--accent-color);
    width: 100% !important;
    border: none;
    z-index: 9999 !important;
}

.offcanvas-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 3rem 5rem !important;
}

.offcanvas-header .navbar-brand {
    color: var(--accent-color) !important;
}

.offcanvas-header .btn-close {
    flex: 0 0 auto;
    width: 3.1rem;
    height: 3.1rem;
    padding: 0;
    margin: 0;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 999px;
    background-color: rgba(255, 255, 255, 0.04);
    background-position: center;
    background-size: 0.95rem;
    filter: invert(1);
    opacity: 1;
    box-shadow: none;
    transition: transform 0.45s cubic-bezier(0.16, 1, 0.3, 1);
}

.offcanvas-header .btn-close:hover {
    transform: rotate(90deg);
}

.offcanvas-body {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    padding: 1.5rem 0 3rem;
    overflow-y: auto;
}

.search-panel {
    width: min(42rem, 100%) !important;
    background:
        radial-gradient(circle at top left, rgba(245, 240, 232, 0.8), transparent 40%),
        linear-gradient(180deg, #fcfaf7 0%, #f5efe7 100%);
    color: var(--primary-color);
}

.search-panel .offcanvas-header .btn-close {
    border-color: rgba(18, 18, 18, 0.12);
    background-color: rgba(255, 255, 255, 0.78);
    filter: none;
}

.search-panel-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    padding: 2rem 2rem 1rem !important;
}

.search-panel-body {
    display: block;
    padding: 0 2rem 2rem;
}

.search-panel-eyebrow {
    margin-bottom: 0.75rem;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.search-panel-title {
    max-width: 24rem;
    font-size: clamp(2.25rem, 5vw, 3.75rem);
    line-height: 0.94;
}

.search-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.85rem;
    margin-top: 1rem;
}

.search-input-wrap {
    display: flex;
    align-items: center;
    gap: 0.9rem;
    padding: 1rem 1.2rem;
    border: 1px solid var(--border-strong);
    background: rgba(255, 255, 255, 0.78);
    box-shadow: 0 18px 40px rgba(18, 18, 18, 0.05);
}

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

.search-input {
    width: 100%;
    border: none;
    background: transparent;
    font-size: 0.95rem;
    color: var(--primary-color);
    outline: none;
}

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

.search-submit {
    padding: 1rem 1.4rem;
    border: 1px solid var(--primary-color);
    background: var(--primary-color);
    color: var(--surface-color);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    transition: var(--transition);
}

.search-submit:hover {
    opacity: 0.92;
}

.search-panel-copy {
    max-width: 34rem;
    margin-top: 1rem;
    color: var(--text-muted);
    font-size: 0.95rem;
}

.search-results-head {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    margin-top: 2.25rem;
    padding-top: 1.5rem;
    border-top: 1px solid var(--border-color);
}

.search-results-eyebrow {
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.search-results-count {
    font-size: 0.95rem;
    color: var(--primary-color);
}

.search-results-list,
.search-suggestions {
    display: grid;
    gap: 1rem;
    margin-top: 1.25rem;
}

.search-result-card,
.search-suggestion-card {
    display: grid;
    grid-template-columns: 8rem minmax(0, 1fr);
    gap: 1rem;
    align-items: center;
    padding: 1rem;
    border: 1px solid rgba(18, 18, 18, 0.08);
    background: rgba(255, 255, 255, 0.68);
    text-decoration: none;
    transition: var(--transition);
}

.search-suggestion-card {
    grid-template-columns: 1fr;
}

.search-result-card:hover,
.search-suggestion-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 22px 40px rgba(18, 18, 18, 0.08);
}

.search-result-media {
    position: relative;
    min-height: 7.5rem;
    background: var(--secondary-color);
    overflow: hidden;
}

.search-result-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.search-result-fallback {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    padding: 1rem;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.search-result-type,
.search-suggestion-type {
    margin-bottom: 0.45rem;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.search-result-title,
.search-suggestion-title {
    font-size: 1.25rem;
    line-height: 0.98;
}

.search-result-excerpt,
.search-suggestion-copy {
    margin-top: 0.55rem;
    color: var(--text-muted);
    font-size: 0.9rem;
}

.search-empty-state {
    margin-top: 1.25rem;
    padding: 1.25rem;
    border: 1px solid var(--border-color);
    background: rgba(255, 255, 255, 0.7);
}

.search-empty-title {
    font-size: 1rem;
    font-weight: 700;
}

.search-empty-copy {
    margin-top: 0.45rem;
    color: var(--text-muted);
}

.nav-large {
    list-style: none;
    padding: 0;
    margin: 0 auto;
    text-align: center;
}

.nav-large-item {
    margin-bottom: 0.75rem;
    overflow: hidden;
}

.nav-large-link {
    font-family: var(--font-heading);
    font-size: clamp(2.6rem, 9vw, 6.8rem);
    font-weight: 600;
    line-height: 0.92;
    letter-spacing: -0.05em;
    color: var(--accent-color);
    text-decoration: none;
    display: inline-block;
    transition: var(--transition);
}

.nav-large-link:hover {
    color: var(--accent-color);
    opacity: 0.6;
    transform: translateX(16px);
}

/* Hero */
.hero-section {
    position: relative;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.hero-poster,
.hero-video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero-poster {
    z-index: -2;
}

.hero-video {
    z-index: -1;
}

.hero-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.14), rgba(0, 0, 0, 0.62));
}

.hero-content {
    position: relative;
    z-index: 1;
    text-align: center;
    color: #fff;
    padding-inline: 2rem;
}

.hero-title {
    font-size: clamp(4.5rem, 12vw, 10rem);
    line-height: 0.86;
    margin-bottom: 2.5rem;
}

.btn-creative {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 1.15rem 2.85rem;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.22em;
    color: #fff;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.55);
    backdrop-filter: blur(16px);
    text-decoration: none;
    transition: var(--transition);
}

.btn-creative:hover {
    background: #fff;
    color: var(--primary-color);
}

/* Homepage Collection Band */
.home-collection-band {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0;
    margin: 0;
    background: #0d0d0d;
}

.home-collection-panel {
    position: relative;
    min-height: clamp(31rem, 68vh, 48rem);
    overflow: hidden;
}

.home-collection-panel-art {
    background:
        radial-gradient(circle at top left, rgba(255, 255, 255, 0.56), transparent 30%),
        radial-gradient(circle at bottom right, rgba(197, 150, 91, 0.14), transparent 34%),
        linear-gradient(180deg, #f3eadf 0%, #e6d8c7 100%);
    color: var(--primary-color);
}

.home-collection-panel-fashion {
    background:
        radial-gradient(circle at top right, rgba(255, 255, 255, 0.06), transparent 28%),
        linear-gradient(180deg, #141210 0%, #090909 100%);
    color: var(--surface-color);
}

.home-collection-link {
    display: block;
    height: 100%;
    color: inherit;
    text-decoration: none;
}

.home-collection-shell {
    display: grid;
    align-content: space-between;
    height: 100%;
    padding: clamp(1.8rem, 3.4vw, 3.25rem);
}

.home-collection-head {
    display: grid;
    gap: 0.75rem;
    max-width: 28rem;
}

.home-collection-eyebrow {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: inherit;
    opacity: 0.66;
}

.home-collection-title {
    font-size: clamp(2.3rem, 4vw, 4.4rem);
    line-height: 0.92;
}

.home-collection-stage {
    position: relative;
    display: grid;
    place-items: center;
    min-height: clamp(20rem, 42vh, 31rem);
    margin-block: 1.5rem;
}

.home-collection-stage-art::before,
.home-collection-stage-fashion::before {
    content: '';
    position: absolute;
    inset: auto;
    width: min(100%, 88%);
    height: 1px;
    background: rgba(18, 18, 18, 0.08);
}

.home-collection-stage-fashion::before {
    background: rgba(255, 255, 255, 0.08);
}

.home-collection-stage-fashion::after {
    content: '';
    position: absolute;
    width: min(100%, 29rem);
    height: clamp(16rem, 30vh, 22rem);
    border: 1px solid rgba(255, 255, 255, 0.08);
    transform: translate(1.4rem, 1.35rem);
    pointer-events: none;
}

.home-collection-frame {
    position: relative;
    overflow: hidden;
}

.home-collection-frame-art {
    width: min(100%, 23rem);
    height: clamp(21rem, 44vh, 32rem);
    padding: clamp(0.7rem, 1.2vw, 0.95rem);
    background:
        linear-gradient(145deg, #2c221c 0%, #705133 42%, #c1965b 100%);
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.12),
        0 34px 96px rgba(18, 18, 18, 0.2);
}

.home-collection-matte {
    position: relative;
    width: 100%;
    height: 100%;
    padding: clamp(0.45rem, 0.9vw, 0.7rem);
    background: #efe5d6;
}

.home-collection-frame-fashion {
    width: min(100%, 29rem);
    height: clamp(20rem, 40vh, 29rem);
    border: 1px solid rgba(255, 255, 255, 0.1);
    background:
        radial-gradient(circle at top left, rgba(255, 255, 255, 0.08), transparent 28%),
        linear-gradient(180deg, rgba(28, 28, 28, 0.92), rgba(12, 12, 12, 0.98));
    box-shadow:
        0 24px 70px rgba(0, 0, 0, 0.34),
        inset 0 0 0 1px rgba(255, 255, 255, 0.05);
}

.home-collection-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    transform: scale(1.04);
    transition:
        opacity 0.95s ease,
        transform 4.8s cubic-bezier(0.16, 1, 0.3, 1);
}

.home-collection-slide.is-active {
    opacity: 1;
    transform: scale(1);
}

.home-collection-slide-art {
    inset: clamp(0.45rem, 0.9vw, 0.7rem);
}

.home-collection-slide-fashion {
    inset: clamp(0.9rem, 1.8vw, 1.25rem) clamp(1rem, 2vw, 1.5rem) 0;
}

.home-collection-image {
    width: 100%;
    height: 100%;
}

.home-collection-image-art {
    object-fit: cover;
    object-position: center;
    box-shadow: 0 16px 40px rgba(18, 18, 18, 0.16);
}

.home-collection-image-fashion {
    object-fit: contain;
    object-position: center bottom;
}

.home-collection-footer {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1rem;
}

.home-collection-caption {
    display: grid;
    gap: 0.35rem;
    min-width: 0;
}

.home-collection-caption-title {
    font-family: var(--font-heading);
    font-size: clamp(1.4rem, 2.2vw, 2rem);
    line-height: 0.96;
}

.home-collection-caption-meta {
    max-width: 22rem;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: inherit;
    opacity: 0.62;
}

.home-collection-trail {
    display: grid;
    justify-items: end;
    gap: 0.75rem;
}

.home-collection-indicators {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
}

.home-collection-indicator {
    width: 1.9rem;
    height: 2px;
    background: currentColor;
    opacity: 0.2;
    transition: opacity 0.4s ease, transform 0.4s ease;
}

.home-collection-indicator.is-active {
    opacity: 0.82;
    transform: scaleX(1.1);
}

.home-collection-cta {
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
}

.shop-cinema-page {
    padding: clamp(7rem, 12vh, 10rem) 0 0;
    background:
        radial-gradient(circle at top left, rgba(245, 240, 232, 0.95), transparent 28%),
        linear-gradient(180deg, #fbf8f2 0%, #f2ede6 38%, #fbfaf8 100%);
}

.shop-cinema-hero {
    display: grid;
    gap: 2.4rem;
    padding: 0 3rem 3rem;
}

.shop-cinema-intro {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(18rem, 0.85fr);
    gap: 2rem;
    align-items: end;
}

.shop-cinema-eyebrow {
    margin-bottom: 1rem;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.24em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.shop-cinema-title {
    max-width: 10ch;
    font-size: clamp(3.5rem, 8vw, 7rem);
    line-height: 0.9;
}

.shop-cinema-side {
    display: grid;
    gap: 1.2rem;
    justify-items: start;
}

.shop-cinema-copy {
    max-width: 28rem;
    color: var(--text-muted);
    font-size: 1rem;
    line-height: 1.9;
}

.shop-cinema-actions,
.shop-cinema-filter-group {
    display: flex;
    flex-wrap: wrap;
    gap: 0.8rem;
}

.shop-cinema-action,
.shop-cinema-filter {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 3rem;
    padding: 0.85rem 1.15rem;
    border: 1px solid rgba(18, 18, 18, 0.12);
    background: rgba(255, 255, 255, 0.72);
    color: var(--primary-color);
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-decoration: none;
    text-transform: uppercase;
    transition: var(--transition);
}

.shop-cinema-action:hover,
.shop-cinema-filter:hover,
.shop-cinema-filter.is-active {
    background: var(--primary-color);
    border-color: var(--primary-color);
    color: var(--surface-color);
}

.shop-cinema-action-secondary {
    background: transparent;
}

.shop-cinema-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 1rem 2rem;
    padding-top: 1.5rem;
    border-top: 1px solid rgba(18, 18, 18, 0.08);
}

.shop-cinema-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(5rem, 1fr));
    gap: 0.8rem;
}

.shop-cinema-stat {
    display: grid;
    gap: 0.18rem;
    min-width: 5rem;
}

.shop-cinema-stat span {
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.shop-cinema-stat strong {
    font-family: var(--font-heading);
    font-size: 1.7rem;
    line-height: 0.92;
}

.shop-feature-card {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(20rem, 0.85fr);
    min-height: min(78vh, 56rem);
    background: #101010;
    color: var(--surface-color);
}

.shop-feature-media {
    display: block;
    min-height: 100%;
}

.shop-feature-media-art {
    display: grid;
    place-items: center;
    padding: clamp(2rem, 4vw, 3.6rem);
    background:
        radial-gradient(circle at top left, rgba(255, 255, 255, 0.88), transparent 32%),
        linear-gradient(180deg, #f6f1e9 0%, #eee6d9 100%);
}

.shop-feature-image {
    height: 100%;
    object-fit: cover;
}

.shop-feature-card-art {
    background: linear-gradient(180deg, #f5efe6 0%, #ebe1d3 100%);
    color: var(--primary-color);
}

.shop-feature-card-art .shop-feature-copy {
    background:
        radial-gradient(circle at top left, rgba(255, 255, 255, 0.68), transparent 35%),
        linear-gradient(180deg, rgba(252, 249, 244, 0.96), rgba(240, 233, 224, 0.98));
}

.shop-feature-card-art .shop-feature-kicker,
.shop-feature-card-art .shop-feature-meta,
.shop-feature-card-art .shop-feature-text,
.shop-feature-card-art .shop-feature-stock {
    color: var(--text-muted);
}

.shop-feature-card-art .shop-feature-link {
    border-color: rgba(18, 18, 18, 0.12);
    background: rgba(255, 255, 255, 0.78);
    color: var(--primary-color);
}

.shop-feature-art-frame {
    width: min(100%, 36rem);
    padding: clamp(0.95rem, 1.8vw, 1.25rem);
    background:
        linear-gradient(145deg, #2a221d 0%, #6e5134 42%, #bc935b 100%);
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.12),
        0 32px 90px rgba(18, 18, 18, 0.18);
}

.shop-feature-art-frame-portrait {
    aspect-ratio: 0.76;
}

.shop-feature-art-frame-landscape {
    width: min(100%, 44rem);
    aspect-ratio: 1.52;
}

.shop-feature-art-frame-square {
    aspect-ratio: 1;
}

.shop-feature-art-matte {
    width: 100%;
    height: 100%;
    padding: clamp(1rem, 2vw, 1.4rem);
    background: #f6f1e9;
}

.shop-feature-art-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    box-shadow: 0 18px 48px rgba(18, 18, 18, 0.16);
}

.shop-feature-copy {
    display: grid;
    align-content: end;
    gap: 1rem;
    padding: clamp(2rem, 4vw, 4rem);
    background:
        radial-gradient(circle at top left, rgba(255, 255, 255, 0.08), transparent 35%),
        linear-gradient(180deg, rgba(18, 18, 18, 0.96), rgba(8, 8, 8, 0.98));
}

.shop-feature-kicker,
.shop-cinema-card-kicker {
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
}

.shop-feature-kicker {
    color: rgba(255, 255, 255, 0.68);
}

.shop-feature-title {
    font-size: clamp(2.8rem, 4vw, 4.8rem);
    line-height: 0.9;
}

.shop-feature-meta,
.shop-cinema-card-meta {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.shop-feature-meta {
    color: rgba(255, 255, 255, 0.62);
}

.shop-feature-text,
.shop-cinema-card-text {
    max-width: 34rem;
    color: rgba(255, 255, 255, 0.78);
    font-size: 0.96rem;
    line-height: 1.85;
}

.shop-feature-footer,
.shop-cinema-card-footer {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1rem;
}

.shop-feature-price,
.shop-cinema-card-price {
    font-family: var(--font-heading);
    font-size: 1.65rem;
    line-height: 0.92;
}

.shop-feature-stock,
.shop-cinema-card-stock {
    margin-top: 0.45rem;
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.68);
}

.shop-feature-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 3rem;
    padding: 0.9rem 1.2rem;
    border: 1px solid rgba(255, 255, 255, 0.16);
    background: rgba(255, 255, 255, 0.08);
    color: var(--surface-color);
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-decoration: none;
    text-transform: uppercase;
}

.shop-cinema-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1px;
    background: rgba(18, 18, 18, 0.08);
}

.shop-cinema-card {
    position: relative;
    min-height: clamp(28rem, 60vw, 44rem);
    background: #101010;
    color: var(--surface-color);
    overflow: hidden;
}

.shop-cinema-card-emphasis {
    min-height: clamp(32rem, 64vw, 48rem);
}

.shop-cinema-card-link {
    display: block;
    height: 100%;
    text-decoration: none;
}

.shop-cinema-card-media {
    position: absolute;
    inset: 0;
}

.shop-cinema-card-media::after {
    content: '';
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(0, 0, 0, 0.08) 0%, rgba(0, 0, 0, 0.22) 36%, rgba(0, 0, 0, 0.78) 100%);
}

.shop-cinema-card-image {
    height: 100%;
    object-fit: cover;
}

.shop-cinema-card-art {
    min-height: auto;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(244, 238, 229, 0.96));
    color: var(--primary-color);
}

.shop-cinema-card-art .shop-cinema-card-link {
    display: grid;
    height: 100%;
}

.shop-cinema-card-media-art {
    position: relative;
    display: grid;
    place-items: center;
    min-height: clamp(22rem, 46vw, 30rem);
    padding: 1.5rem;
    background:
        radial-gradient(circle at top left, rgba(255, 255, 255, 0.92), transparent 34%),
        linear-gradient(180deg, #f6f1e9 0%, #ede4d8 100%);
}

.shop-cinema-card-media-art::after {
    display: none;
}

.shop-cinema-card-frame {
    width: min(100%, 26rem);
    padding: clamp(0.8rem, 1.5vw, 1rem);
    background:
        linear-gradient(145deg, #2a211b 0%, #6d5032 42%, #b98e55 100%);
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.12),
        0 22px 60px rgba(18, 18, 18, 0.16);
}

.shop-cinema-card-frame-portrait {
    aspect-ratio: 0.76;
}

.shop-cinema-card-frame-landscape {
    width: min(100%, 32rem);
    aspect-ratio: 1.52;
}

.shop-cinema-card-frame-square {
    aspect-ratio: 1;
}

.shop-cinema-card-matte {
    width: 100%;
    height: 100%;
    padding: clamp(0.9rem, 1.8vw, 1.2rem);
    background: #f6f1e9;
}

.shop-cinema-card-image-art {
    width: 100%;
    height: 100%;
    box-shadow: 0 14px 34px rgba(18, 18, 18, 0.14);
}

.shop-cinema-card-art .shop-cinema-card-copy {
    position: static;
    inset: auto;
    gap: 0.65rem;
    padding: 1.45rem 1.35rem 1.35rem;
}

.shop-cinema-card-art .shop-cinema-card-kicker,
.shop-cinema-card-art .shop-cinema-card-meta,
.shop-cinema-card-art .shop-cinema-card-text,
.shop-cinema-card-art .shop-cinema-card-stock {
    color: var(--text-muted);
}

.shop-cinema-card-art .shop-cinema-card-title {
    max-width: 14ch;
}

.shop-cinema-card-art .shop-cinema-card-cta {
    border-color: rgba(18, 18, 18, 0.12);
    background: rgba(255, 255, 255, 0.78);
    color: var(--primary-color);
}

.shop-cinema-card-copy {
    position: absolute;
    inset: auto 0 0 0;
    z-index: 1;
    display: grid;
    gap: 0.8rem;
    padding: 2rem 1.85rem 1.85rem;
}

.shop-cinema-card-title {
    max-width: 10ch;
    font-size: clamp(2.05rem, 3vw, 3.25rem);
    line-height: 0.92;
}

.shop-cinema-card-meta {
    color: rgba(255, 255, 255, 0.62);
}

.shop-cinema-card-text {
    max-width: 28rem;
    font-size: 0.92rem;
}

.shop-cinema-card-footer {
    margin-top: 0.25rem;
}

.shop-cinema-card-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.8rem;
    padding: 0.75rem 1rem;
    border: 1px solid rgba(255, 255, 255, 0.16);
    background: rgba(255, 255, 255, 0.08);
    font-size: 0.64rem;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}

.shop-cinema-empty {
    display: grid;
    gap: 0.8rem;
    padding: 4rem 3rem 5rem;
    border-top: 1px solid rgba(18, 18, 18, 0.08);
}

.shop-cinema-empty-title {
    font-family: var(--font-heading);
    font-size: clamp(2rem, 4vw, 3.2rem);
    line-height: 0.94;
}

.shop-cinema-empty-copy {
    max-width: 34rem;
    color: var(--text-muted);
}

.art-gallery-page {
    padding-top: 7.75rem;
    background:
        radial-gradient(circle at top left, rgba(245, 240, 232, 0.9), transparent 28%),
        linear-gradient(180deg, #faf8f4 0%, #f1ece5 34%, #fbfaf8 100%);
}

.art-gallery-hero {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 2rem;
    padding: 2rem 3rem 2.5rem;
}

.art-gallery-copy {
    max-width: 42rem;
}

.art-gallery-eyebrow {
    margin-bottom: 1rem;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.24em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.art-gallery-title {
    font-size: clamp(4rem, 8vw, 7rem);
    line-height: 0.86;
}

.art-gallery-description {
    max-width: 34rem;
    margin-top: 1.25rem;
    color: var(--text-muted);
    font-size: 1rem;
}

.art-gallery-filter-group {
    justify-content: flex-end;
}

.art-gallery-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    padding: 0 3rem 3rem;
}

.art-gallery-card {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.88), rgba(245, 240, 232, 0.94));
    border: 1px solid rgba(18, 18, 18, 0.08);
}

.art-gallery-card-landscape {
    grid-column: span 2;
}

.art-gallery-link {
    display: grid;
    gap: 1.2rem;
    padding: 1.35rem;
    color: var(--primary-color);
    text-decoration: none;
}

.art-gallery-frame {
    background:
        radial-gradient(circle at top left, rgba(255, 255, 255, 0.36), transparent 40%),
        linear-gradient(145deg, #1f1b19 0%, #3a2b21 44%, #8c6b3f 100%);
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.08),
        0 28px 80px rgba(18, 18, 18, 0.12);
}

.art-gallery-frame-portrait {
    aspect-ratio: 0.76;
}

.art-gallery-frame-landscape {
    aspect-ratio: 1.52;
}

.art-gallery-frame-square {
    aspect-ratio: 1;
}

.art-gallery-matte {
    width: 100%;
    height: 100%;
    padding: clamp(1rem, 2vw, 1.5rem);
    background: #f6f1e9;
}

.art-gallery-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    box-shadow: 0 16px 40px rgba(18, 18, 18, 0.16);
}

.art-gallery-caption {
    display: grid;
    gap: 0.55rem;
}

.art-gallery-artist,
.art-gallery-work-meta,
.art-gallery-work-edition {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.art-gallery-artist,
.art-gallery-work-meta {
    color: var(--text-muted);
}

.art-gallery-work-title {
    font-size: clamp(1.7rem, 3vw, 2.7rem);
    line-height: 0.94;
}

.art-gallery-work-summary {
    max-width: 32rem;
    color: var(--text-muted);
    font-size: 0.92rem;
    line-height: 1.8;
}

.art-gallery-work-footer {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1rem;
    padding-top: 0.4rem;
}

.art-gallery-work-price {
    font-family: var(--font-heading);
    font-size: 1.55rem;
    line-height: 0.92;
}

.art-gallery-work-edition {
    color: var(--primary-color);
}

.content-page {
    padding-top: 8rem;
    background:
        radial-gradient(circle at top left, rgba(245, 240, 232, 0.85), transparent 26%),
        linear-gradient(180deg, #fbfaf8 0%, #f3ede6 36%, #faf8f5 100%);
}

.content-page-shell {
    width: min(100%, 82rem);
    margin: 0 auto;
    padding: 0 2rem 4.5rem;
}

.content-page-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.5rem;
    padding-bottom: 2rem;
    border-bottom: 1px solid rgba(18, 18, 18, 0.08);
}

.content-page-kicker {
    margin-bottom: 0.9rem;
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.content-page-title {
    max-width: 14ch;
    font-size: clamp(3rem, 7vw, 6rem);
    line-height: 0.88;
}

.content-page-summary {
    max-width: 52rem;
    margin: 1.5rem 0 0;
    color: var(--text-muted);
    font-size: 1rem;
    line-height: 1.9;
}

.content-page-admin-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.8rem;
    padding: 0.8rem 1rem;
    border: 1px solid rgba(18, 18, 18, 0.14);
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--primary-color);
    text-decoration: none;
}

.content-page-layout {
    display: grid;
    gap: 2rem;
    padding-top: 2rem;
}

.content-page-layout.has-aside {
    grid-template-columns: minmax(0, 1fr) 18rem;
    align-items: start;
}

.content-page-body {
    padding: clamp(1.5rem, 2.6vw, 2.2rem);
    border: 1px solid rgba(18, 18, 18, 0.08);
    background: rgba(255, 255, 255, 0.82);
}

.content-page-body > *:first-child {
    margin-top: 0;
}

.content-page-body > *:last-child {
    margin-bottom: 0;
}

.content-page-body h2,
.content-page-body h3 {
    margin: 2rem 0 0.8rem;
    font-family: var(--font-heading);
    line-height: 0.98;
}

.content-page-body h2 {
    font-size: clamp(1.7rem, 3vw, 2.4rem);
}

.content-page-body h3 {
    font-size: clamp(1.2rem, 2vw, 1.5rem);
}

.content-page-body p,
.content-page-body li {
    color: rgba(18, 18, 18, 0.84);
    font-size: 0.96rem;
    line-height: 1.9;
}

.content-page-body ul,
.content-page-body ol {
    padding-left: 1.2rem;
}

.content-page-body a {
    color: var(--primary-color);
    text-decoration-thickness: 1px;
}

.legal-notice {
    margin: 0 0 1.25rem;
    padding: 1rem 1.05rem;
    border-left: 3px solid rgba(18, 18, 18, 0.78);
    background: rgba(245, 240, 232, 0.88);
    font-size: 0.9rem;
    line-height: 1.75;
}

.content-page-aside {
    position: sticky;
    top: 7.75rem;
}

.content-page-aside-card {
    display: grid;
    gap: 0.9rem;
    padding: 1.2rem;
    border: 1px solid rgba(18, 18, 18, 0.08);
    background: rgba(255, 255, 255, 0.76);
}

.content-page-aside-kicker {
    margin: 0;
    font-size: 0.64rem;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.content-page-related-links {
    display: grid;
    gap: 0.55rem;
}

.content-page-related-link {
    color: var(--primary-color);
    text-decoration: none;
    line-height: 1.6;
}

.founder-page {
    background:
        radial-gradient(circle at top left, rgba(227, 211, 196, 0.32), transparent 26%),
        linear-gradient(180deg, #faf7f1 0%, #f1ebe1 42%, #fbf9f5 100%);
}

.founder-page-shell {
    width: min(100%, 88rem);
}

.founder-page-title {
    max-width: 10ch;
}

.founder-page-summary {
    max-width: 54rem;
}

.founder-hero {
    display: grid;
    grid-template-columns: minmax(0, 0.84fr) minmax(0, 1.16fr);
    gap: 1.6rem;
    margin-top: 2rem;
    align-items: stretch;
}

.founder-intro-card,
.founder-page-body {
    padding: clamp(1.6rem, 2.8vw, 2.4rem);
    border: 1px solid rgba(18, 18, 18, 0.08);
    background: rgba(255, 252, 248, 0.84);
}

.founder-eyebrow {
    margin: 0 0 0.85rem;
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.founder-hero-title,
.founder-page-body h2 {
    margin: 0;
    font-family: var(--font-heading);
    line-height: 0.96;
}

.founder-hero-title {
    font-size: clamp(2rem, 3.6vw, 3.35rem);
}

.founder-hero-copy,
.founder-page-body p,
.founder-page-body li {
    color: rgba(18, 18, 18, 0.82);
    line-height: 1.85;
}

.founder-hero-copy {
    margin: 1rem 0 0;
    font-size: 1rem;
}

.founder-mark-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.8rem;
    margin-top: 1.45rem;
}

.founder-mark-card {
    padding: 0.95rem 1rem;
    background: rgba(18, 18, 18, 0.04);
}

.founder-mark-label {
    margin: 0 0 0.35rem;
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.founder-mark-value {
    margin: 0;
    font-size: 1rem;
    line-height: 1.45;
}

.founder-portrait-composition {
    position: relative;
    min-height: 40rem;
}

.founder-main-frame,
.founder-inset-frame {
    margin: 0;
    display: grid;
    gap: 0.7rem;
    padding: clamp(0.75rem, 1.8vw, 1rem);
    border: 1px solid rgba(18, 18, 18, 0.08);
    background: rgba(255, 255, 255, 0.9);
}

.founder-main-frame {
    width: min(100%, 38rem);
    margin-left: auto;
    box-shadow: 0 26px 50px rgba(18, 18, 18, 0.08);
}

.founder-inset-frame {
    position: absolute;
    left: 0;
    bottom: 1.4rem;
    width: min(42%, 15rem);
    box-shadow: 0 24px 46px rgba(18, 18, 18, 0.12);
}

.founder-main-frame figcaption,
.founder-inset-frame figcaption {
    font-size: 0.72rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.founder-portrait-image {
    width: 100%;
    height: auto;
    display: block;
}

.founder-page-body {
    background: rgba(255, 255, 255, 0.9);
}

.studio-stories-page {
    background:
        radial-gradient(circle at top right, rgba(208, 188, 151, 0.2), transparent 28%),
        linear-gradient(180deg, #f6f2eb 0%, #efe6da 42%, #faf8f4 100%);
}

.studio-stories-shell {
    width: min(100%, 90rem);
}

.studio-stories-title {
    max-width: 12ch;
}

.studio-stories-summary {
    max-width: 58rem;
}

.studio-story-hero,
.studio-story-prototype-band,
.studio-story-gallery,
.studio-story-video-section,
.studio-story-bridge {
    margin-top: 2rem;
}

.studio-story-hero {
    display: grid;
    grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
    gap: 1.5rem;
    align-items: stretch;
}

.studio-story-copy-card,
.studio-story-prototype-copy,
.studio-story-bridge {
    padding: clamp(1.6rem, 2.8vw, 2.5rem);
    border: 1px solid rgba(18, 18, 18, 0.08);
    background: rgba(255, 251, 247, 0.82);
}

.studio-story-eyebrow {
    margin: 0 0 0.85rem;
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.studio-story-hero-title,
.studio-story-section-title {
    margin: 0;
    font-family: var(--font-heading);
    font-size: clamp(1.9rem, 3.4vw, 3.15rem);
    line-height: 0.96;
}

.studio-story-hero-copy,
.studio-story-prototype-copy p,
.studio-story-bridge-copy,
.studio-story-video-description {
    color: rgba(18, 18, 18, 0.8);
    line-height: 1.85;
}

.studio-story-hero-copy {
    margin: 1.1rem 0 0;
    font-size: 1rem;
}

.studio-story-fact-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.8rem;
    margin-top: 1.6rem;
}

.studio-story-fact-card {
    padding: 0.95rem 1rem;
    background: rgba(18, 18, 18, 0.04);
}

.studio-story-fact-label {
    margin: 0 0 0.35rem;
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.studio-story-fact-value {
    margin: 0;
    font-size: 1rem;
    line-height: 1.45;
}

.studio-story-frame-landscape,
.studio-story-frame-portrait,
.studio-story-gallery-item,
.studio-story-video-poster-frame {
    position: relative;
    display: grid;
    gap: 0.75rem;
    margin: 0;
    padding: clamp(0.7rem, 1.8vw, 1rem);
    border: 1px solid rgba(18, 18, 18, 0.08);
    background: rgba(255, 255, 255, 0.82);
}

.studio-story-frame-landscape figcaption,
.studio-story-frame-portrait figcaption,
.studio-story-gallery-item figcaption {
    font-size: 0.74rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.studio-story-media {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.studio-story-hero-frame .studio-story-media,
.studio-story-gallery-item.studio-story-frame-landscape .studio-story-media {
    aspect-ratio: 4 / 3;
}

.studio-story-prototype-frame .studio-story-media,
.studio-story-support-frame .studio-story-media,
.studio-story-gallery-item.studio-story-frame-portrait .studio-story-media,
.studio-story-video-poster-frame .studio-story-media {
    aspect-ratio: 3 / 4;
}

.studio-story-prototype-band {
    display: grid;
    grid-template-columns: minmax(0, 0.72fr) minmax(0, 1.1fr) minmax(0, 0.72fr);
    gap: 1.25rem;
    align-items: start;
}

.studio-story-pill-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
    margin-top: 1.4rem;
}

.studio-story-pill {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    padding: 0.45rem 0.85rem;
    border: 1px solid rgba(18, 18, 18, 0.1);
    background: rgba(18, 18, 18, 0.03);
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.studio-story-gallery-head {
    display: grid;
    gap: 0.8rem;
    max-width: 48rem;
    margin-bottom: 1.25rem;
}

.studio-story-gallery-grid {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 1rem;
}

.studio-story-gallery-item:nth-child(1) {
    grid-column: span 3;
}

.studio-story-gallery-item:nth-child(2) {
    grid-column: span 3;
}

.studio-story-gallery-item:nth-child(3) {
    grid-column: span 2;
}

.studio-story-gallery-item:nth-child(4) {
    grid-column: span 2;
}

.studio-story-gallery-item:nth-child(5) {
    grid-column: span 4;
}

.studio-story-gallery-item:nth-child(6) {
    grid-column: span 2;
}

.studio-story-gallery-grid-narkus {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.15rem;
}

.studio-story-gallery-grid-narkus .studio-story-gallery-item:nth-child(n) {
    grid-column: auto;
}

.studio-story-gallery-grid-narkus .studio-story-gallery-item:nth-child(1),
.studio-story-gallery-grid-narkus .studio-story-gallery-item:nth-child(8) {
    grid-column: 1 / -1;
}

.studio-story-gallery-grid-narkus .studio-story-gallery-item {
    padding: clamp(0.85rem, 1.9vw, 1.1rem);
}

.studio-story-gallery-grid-narkus .studio-story-gallery-item.studio-story-frame-landscape .studio-story-media {
    aspect-ratio: 16 / 10;
}

.studio-story-gallery-grid-narkus .studio-story-gallery-item.studio-story-frame-portrait .studio-story-media {
    aspect-ratio: 3 / 4;
}

.studio-story-video-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.studio-story-video-card {
    min-width: 0;
}

.studio-story-video-trigger {
    width: 100%;
    display: grid;
    gap: 1rem;
    padding: 0;
    border: 0;
    background: transparent;
    text-align: left;
    color: inherit;
}

.studio-story-video-poster-frame {
    overflow: hidden;
}

.studio-story-play-badge {
    position: absolute;
    right: 1rem;
    bottom: 1rem;
    width: 3.2rem;
    height: 3.2rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: rgba(18, 18, 18, 0.84);
    color: #fff;
    font-size: 1.1rem;
    box-shadow: 0 18px 36px rgba(0, 0, 0, 0.22);
}

.studio-story-video-title {
    display: block;
    margin-bottom: 0.4rem;
    font-family: var(--font-heading);
    font-size: 1.3rem;
    line-height: 1;
}

.studio-story-video-description {
    display: block;
    font-size: 0.95rem;
}

.studio-story-bridge-copy {
    margin: 1rem 0 0;
    max-width: 52rem;
    font-size: 1rem;
}

.studio-story-body {
    background: rgba(255, 255, 255, 0.9);
}

.studio-story-modal {
    position: fixed;
    inset: 0;
    z-index: 1095;
    display: grid;
    place-items: center;
    padding: 1.2rem;
}

.studio-story-modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(8, 8, 8, 0.78);
    backdrop-filter: blur(8px);
}

.studio-story-modal-dialog {
    position: relative;
    z-index: 1;
    width: min(100%, 64rem);
    padding: 1.25rem;
    background: #0c0c0c;
    color: #fff;
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.36);
}

.studio-story-modal-close {
    position: absolute;
    top: 0.9rem;
    right: 0.9rem;
    width: 2.75rem;
    height: 2.75rem;
    border: 0;
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
}

.studio-story-modal-kicker {
    margin: 0 0 0.5rem;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.65);
}

.studio-story-modal-title {
    margin: 0 0 1rem;
    max-width: 18ch;
    font-family: var(--font-heading);
    font-size: clamp(1.6rem, 4vw, 2.6rem);
    line-height: 0.96;
}

.studio-story-modal-player {
    width: 100%;
    display: block;
    background: #000;
}

body.studio-story-modal-open {
    overflow: hidden;
}

@media (max-width: 991.98px) {
    .founder-hero,
    .studio-story-hero,
    .studio-story-prototype-band,
    .studio-story-video-grid {
        grid-template-columns: 1fr;
    }

    .founder-mark-grid {
        grid-template-columns: 1fr;
    }

    .founder-portrait-composition {
        min-height: auto;
        display: grid;
        gap: 1rem;
    }

    .founder-main-frame {
        width: 100%;
    }

    .founder-inset-frame {
        position: static;
        width: min(100%, 18rem);
    }

    .studio-story-fact-grid {
        grid-template-columns: 1fr;
    }

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

    .studio-story-gallery-item:nth-child(n) {
        grid-column: auto;
    }

    .studio-story-gallery-grid-narkus .studio-story-gallery-item:nth-child(1),
    .studio-story-gallery-grid-narkus .studio-story-gallery-item:nth-child(8) {
        grid-column: 1 / -1;
    }
}

@media (max-width: 767.98px) {
    .founder-page-shell,
    .studio-stories-shell {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .studio-story-gallery-grid {
        grid-template-columns: 1fr;
    }

    .studio-story-gallery-grid-narkus .studio-story-gallery-item:nth-child(1),
    .studio-story-gallery-grid-narkus .studio-story-gallery-item:nth-child(8) {
        grid-column: auto;
    }

    .studio-story-modal {
        padding: 0.75rem;
    }

    .studio-story-modal-dialog {
        padding: 1rem;
    }
}

.cookie-banner {
    position: fixed;
    inset: auto 1rem 1rem;
    z-index: 1085;
    width: min(100%, 32rem);
    opacity: 0;
    pointer-events: none;
    transform: translateY(1rem);
    transition: opacity 0.22s ease, transform 0.22s ease;
}

.cookie-banner.is-visible {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}

.cookie-banner-panel {
    display: grid;
    gap: 1rem;
    padding: 1.15rem;
    border: 1px solid rgba(255, 255, 255, 0.14);
    background: rgba(10, 10, 10, 0.94);
    box-shadow: 0 24px 56px rgba(18, 18, 18, 0.24);
}

.cookie-banner-eyebrow {
    margin-bottom: 0.45rem;
    font-size: 0.64rem;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.58);
}

.cookie-banner-title {
    font-size: clamp(1.3rem, 2.2vw, 1.7rem);
    line-height: 1.02;
    color: var(--surface-color);
}

.cookie-banner-text {
    margin: 0.75rem 0 0;
    color: rgba(255, 255, 255, 0.72);
    font-size: 0.86rem;
    line-height: 1.75;
}

.cookie-banner-text a {
    color: var(--surface-color);
}

.cookie-banner-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.7rem;
    justify-content: flex-end;
}

.cookie-banner-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.9rem;
    padding: 0.8rem 1rem;
    border: 1px solid rgba(255, 255, 255, 0.18);
    background: var(--surface-color);
    font-size: 0.64rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--primary-color);
    transition: var(--transition);
}

.cookie-banner-button:hover {
    background: rgba(255, 255, 255, 0.88);
}

.cookie-banner-button-secondary {
    background: transparent;
    color: var(--surface-color);
}

.cookie-banner-button-secondary:hover {
    background: rgba(255, 255, 255, 0.08);
}

/* Collection Pages */
.collection-page {
    padding-top: 7.75rem;
    background: var(--surface-color);
}

.collection-header {
    padding: 2rem 0 0;
}

.collection-header-inner {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;
    padding: 0 3rem 3rem;
    border-bottom: 1px solid var(--border-color);
}

.collection-copy {
    max-width: 40rem;
}

.collection-eyebrow {
    margin-bottom: 1rem;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.24em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.collection-title {
    font-size: clamp(4rem, 8vw, 7rem);
    line-height: 0.86;
}

.collection-description {
    max-width: 30rem;
    margin-top: 1.35rem;
    color: var(--text-muted);
    font-size: 1rem;
}

.collection-filter-group {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.85rem;
}

.filter-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 6.25rem;
    padding: 0.9rem 1.35rem;
    border: 1px solid var(--border-strong);
    border-radius: 999px;
    background: transparent;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    color: var(--text-muted);
    text-decoration: none;
    transition: var(--transition);
}

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

.collection-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0;
    border-bottom: 1px solid var(--border-color);
}

.collection-cell {
    min-width: 0;
    border-right: 1px solid var(--border-color);
    border-bottom: 1px solid var(--border-color);
    background: linear-gradient(180deg, var(--surface-color) 0%, var(--surface-muted) 100%);
}

.collection-cell:nth-child(2n) {
    border-right: none;
}

.product-card {
    text-decoration: none;
    color: var(--primary-color);
    display: block;
    transition: var(--transition);
}

.product-card-spread {
    margin-bottom: 0;
    min-height: 100%;
}

.product-img-holder {
    overflow: hidden;
    background: var(--secondary-color);
}

.product-img-holder-spread {
    aspect-ratio: 0.78;
}

.product-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 1.2s cubic-bezier(0.16, 1, 0.3, 1);
}

.product-card:hover .product-img {
    transform: scale(1.035);
}

.product-info {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
}

.product-info-spread {
    padding: 1.35rem 1.5rem 1.6rem;
}

.product-name {
    font-size: 1.05rem;
    line-height: 1.1;
}

.product-meta {
    margin-top: 0.45rem;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.product-price {
    font-size: 0.95rem;
    font-weight: 700;
    white-space: nowrap;
}

.collection-empty {
    grid-column: 1 / -1;
    padding: 4rem 3rem;
}

.collection-empty-text {
    font-size: 0.9rem;
    color: var(--text-muted);
}

.load-more-container {
    padding-top: 2rem;
    text-align: center;
}

.btn-load-more {
    background: none;
    border: none;
    border-bottom: 1px solid var(--primary-color);
    padding: 0.5rem 0;
    font-size: 0.8rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--primary-color);
    transition: var(--transition);
}

.btn-load-more:hover {
    opacity: 0.5;
    padding-bottom: 1rem;
}

/* Product Detail */
.product-cinematic-page {
    background:
        linear-gradient(180deg, rgba(245, 240, 232, 0.65) 0%, rgba(255, 255, 255, 0) 16rem),
        var(--surface-color);
    overflow-x: clip;
}

.product-cinematic-hero {
    padding-top: 8rem;
    padding-bottom: 3rem;
}

.product-stage-shell,
.product-accordion-shell {
    padding-inline: 3rem;
}

.product-stage-grid {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    gap: 2rem;
    align-items: start;
}

.product-stage-copy {
    position: sticky;
    top: 8rem;
    padding: 1rem 0 2rem;
}

.product-breadcrumb {
    margin-bottom: 1.5rem;
}

.product-breadcrumb-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.85rem 1.2rem;
}

.product-breadcrumb-list {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.55rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.product-breadcrumb-item {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    margin: 0;
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--text-muted);
    line-height: 1;
}

.product-breadcrumb-item:not(:last-child)::after {
    content: '/';
    opacity: 0.45;
}

.product-breadcrumb-link {
    color: inherit;
    text-decoration: none;
    transition: var(--transition);
}

.product-breadcrumb-link:hover {
    color: var(--primary-color);
}

.product-breadcrumb-item.is-active {
    color: var(--primary-color);
}

.product-admin-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.75rem;
    padding: 0.78rem 1rem;
    border: 1px solid var(--border-color);
    background: rgba(255, 255, 255, 0.72);
    color: var(--primary-color);
    font-size: 0.64rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-decoration: none;
    text-transform: uppercase;
    transition: var(--transition);
}

.product-admin-link:hover {
    border-color: var(--primary-color);
    background: var(--primary-color);
    color: var(--surface-color);
}

.product-kicker,
.product-note-eyebrow,
.product-presence-label {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.product-kicker {
    margin-bottom: 1rem;
}

.product-title {
    font-size: clamp(3.6rem, 6.5vw, 6.75rem);
    line-height: 0.88;
}

.product-price-row {
    margin-top: 1.5rem;
}

.price-tag {
    font-size: 1.55rem;
    font-weight: 700;
    margin-bottom: 1.2rem;
}

.product-price-range-copy {
    margin: -0.55rem 0 1.2rem;
    font-size: 0.72rem;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.product-pill-group {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.product-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.7rem 1rem;
    background: var(--primary-color);
    color: var(--surface-color);
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.product-pill-muted {
    background: rgba(18, 18, 18, 0.06);
    color: var(--primary-color);
}

.product-summary {
    max-width: 34rem;
    margin-top: 1.8rem;
    color: var(--text-muted);
    font-size: 1rem;
    line-height: 1.85;
}

.product-editorial-note {
    max-width: 30rem;
    margin-top: 1.25rem;
    color: var(--primary-color);
    font-size: 0.95rem;
}

.product-art-meta-shell {
    display: grid;
    gap: 1rem;
    margin-top: 1.8rem;
}

.product-art-meta-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.9rem;
}

.product-art-meta-item,
.product-art-acquisition-card {
    padding: 1.2rem 1.25rem;
    border: 1px solid var(--border-color);
    background: rgba(255, 255, 255, 0.82);
}

.product-art-meta-item {
    display: grid;
    gap: 0.25rem;
}

.product-art-meta-item span {
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.product-art-meta-item strong {
    font-size: 0.92rem;
}

.product-art-acquisition-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.product-configurator {
    display: grid;
    gap: 1rem;
    margin-top: 1.8rem;
}

.product-config-block,
.product-config-meta {
    padding: 1.2rem 1.25rem;
    border: 1px solid var(--border-color);
    background: rgba(255, 255, 255, 0.82);
}

.product-config-head {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: flex-start;
    margin-bottom: 0.95rem;
}

.product-config-label {
    margin-bottom: 0.25rem;
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.product-config-summary,
.product-config-count {
    margin: 0;
}

.product-config-summary {
    font-size: 0.92rem;
    color: var(--primary-color);
}

.product-config-count {
    font-size: 0.7rem;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.product-option-grid {
    display: grid;
    gap: 0.75rem;
}

.product-option-card {
    display: grid;
    gap: 0.4rem;
    padding: 0.95rem 1rem;
    border: 1px solid var(--border-color);
    background: rgba(247, 244, 238, 0.7);
    text-align: left;
    transition: var(--transition);
}

.product-option-card:hover,
.product-option-card.is-active {
    border-color: var(--primary-color);
    background: rgba(245, 240, 232, 0.96);
}

.product-option-top {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: center;
}

.product-option-title,
.product-option-price {
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.product-option-meta {
    font-size: 0.74rem;
    color: var(--text-muted);
}

.product-option-availability {
    justify-self: start;
    margin-top: 0.25rem;
}

.product-option-divider {
    display: inline-block;
    padding-inline: 0.35rem;
}

.product-size-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
}

.product-size-chip {
    min-width: 3.2rem;
    padding: 0.72rem 0.95rem;
    border: 1px solid var(--border-color);
    background: var(--surface-color);
    color: var(--primary-color);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    transition: var(--transition);
}

.product-size-chip:hover,
.product-size-chip.is-active {
    border-color: var(--primary-color);
    background: var(--primary-color);
    color: var(--surface-color);
}

.product-size-empty {
    margin: 0;
    color: var(--text-muted);
    font-size: 0.82rem;
    line-height: 1.7;
}

.product-availability-block {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(247, 244, 238, 0.82));
}

.product-config-head-availability {
    align-items: center;
}

.product-availability-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.55rem 0.8rem;
    border: 1px solid rgba(10, 10, 10, 0.08);
    background: rgba(10, 10, 10, 0.06);
    color: var(--primary-color);
    font-size: 0.64rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.product-availability-badge-in_stock {
    background: rgba(31, 122, 69, 0.08);
    border-color: rgba(31, 122, 69, 0.14);
}

.product-availability-badge-limited {
    background: rgba(135, 93, 27, 0.1);
    border-color: rgba(135, 93, 27, 0.16);
}

.product-availability-badge-made_to_order {
    background: rgba(10, 10, 10, 0.07);
    border-color: rgba(10, 10, 10, 0.12);
}

.product-availability-badge-sold_out {
    background: rgba(124, 34, 34, 0.08);
    border-color: rgba(124, 34, 34, 0.16);
    color: #7c2222;
}

.product-config-meta {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.85rem;
}

.product-config-meta-item {
    display: grid;
    gap: 0.2rem;
}

.product-config-meta-item span {
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.product-config-meta-item strong {
    font-size: 0.84rem;
}

.product-action-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.9rem;
    align-items: center;
    margin-top: 2rem;
}

.buy-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    min-width: 14rem;
    padding: 1.2rem 1.6rem;
    background: var(--primary-color);
    border: none;
    color: var(--surface-color);
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    transition: var(--transition);
}

.buy-btn:hover {
    background: #2a2a2a;
}

.buy-btn-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.98rem;
    line-height: 1;
}

.buy-btn:disabled,
.buy-btn[aria-disabled="true"] {
    background: rgba(10, 10, 10, 0.18);
    color: rgba(255, 255, 255, 0.82);
    cursor: not-allowed;
}

.product-secondary-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 11rem;
    padding: 1.15rem 1.4rem;
    border: 1px solid var(--border-strong);
    color: var(--primary-color);
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    text-decoration: none;
    transition: var(--transition);
}

.product-secondary-action:hover {
    color: var(--primary-color);
    border-color: var(--primary-color);
}

.product-presence-grid {
    display: grid;
    gap: 1rem;
    margin-top: 2.5rem;
}

.product-presence-grid-art {
    margin-top: 2rem;
}

.product-presence-card {
    padding: 1.25rem;
    border: 1px solid var(--border-color);
    background: rgba(255, 255, 255, 0.78);
}

.product-presence-text {
    margin-top: 0.6rem;
    color: var(--text-muted);
    font-size: 0.92rem;
}

.product-stage-visual {
    min-width: 0;
}

.product-stage-visual-art {
    align-self: stretch;
}

.product-carousel {
    display: grid;
    gap: 1rem;
}

.product-stage-frame {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at top right, rgba(255, 255, 255, 0.24), transparent 28%),
        linear-gradient(180deg, #1a1a1a 0%, #111111 100%);
    padding: 1rem;
}

.product-stage-frame-art {
    background:
        radial-gradient(circle at top left, rgba(255, 255, 255, 0.18), transparent 36%),
        linear-gradient(180deg, #2a2521 0%, #181412 100%);
    padding: 1.25rem 1.25rem 1.5rem;
}

.product-stage-frame-art-landscape {
    padding-bottom: 1.65rem;
}

.product-stage-caption {
    position: absolute;
    top: 1rem;
    left: 1rem;
    z-index: 2;
    padding: 0.6rem 0.85rem;
    background: rgba(18, 18, 18, 0.48);
    color: var(--surface-color);
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.product-carousel-viewport {
    overflow: hidden;
    touch-action: pan-y;
    cursor: grab;
}

.product-carousel-track {
    display: flex;
    transition: transform 0.75s cubic-bezier(0.16, 1, 0.3, 1);
}

.product-slide {
    position: relative;
    min-width: 100%;
    overflow: hidden;
    background: #141414;
}

.product-slide-art {
    background: transparent;
    padding: 3.4rem 2rem 0;
}

.product-slide::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.58), rgba(0, 0, 0, 0.08) 46%, rgba(0, 0, 0, 0) 72%);
}

.product-slide-art::after,
.product-slide-art::before {
    display: none;
}

.product-slide.is-sample-look::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.08), transparent 52%);
    mix-blend-mode: screen;
}

.product-slide-image {
    aspect-ratio: 0.78;
    object-fit: cover;
}

.product-artwork-frame {
    width: min(100%, 38rem);
    margin: 0 auto;
    padding: clamp(0.85rem, 1.6vw, 1.1rem);
    background:
        linear-gradient(145deg, #2b211b 0%, #67482d 42%, #b48952 100%);
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.12),
        0 32px 90px rgba(10, 10, 10, 0.28);
}

.product-artwork-frame-portrait {
    aspect-ratio: 0.76;
}

.product-artwork-frame-landscape {
    width: min(100%, 46rem);
    aspect-ratio: 1.5;
}

.product-artwork-frame-square {
    aspect-ratio: 1;
}

.product-artwork-matte {
    width: 100%;
    height: 100%;
    padding: clamp(1.1rem, 2vw, 1.5rem);
    background: #f5efe7;
}

.product-slide-image-art {
    width: 100%;
    height: 100%;
    aspect-ratio: auto;
    object-fit: cover;
    box-shadow: 0 18px 50px rgba(18, 18, 18, 0.16);
}

.product-art-plaque {
    max-width: 34rem;
    margin: 1.1rem auto 0;
    padding: 1rem 1.2rem;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(248, 244, 238, 0.9);
    text-align: center;
}

.product-art-plaque-title {
    font-family: var(--font-heading);
    font-size: 1.35rem;
    line-height: 0.96;
}

.product-art-plaque-meta {
    margin-top: 0.45rem;
    color: var(--text-muted);
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.product-look-variant-1 .product-slide-image,
.product-look-variant-1 .product-look-thumb {
    object-position: center top;
    filter: saturate(0.95) contrast(1.02);
}

.product-look-variant-2 .product-slide-image,
.product-look-variant-2 .product-look-thumb {
    object-position: 38% center;
    filter: sepia(0.06) saturate(1.15) brightness(1.02);
}

.product-look-variant-3 .product-slide-image,
.product-look-variant-3 .product-look-thumb {
    object-position: 62% center;
    filter: brightness(0.9) contrast(1.12) saturate(0.92);
}

.product-look-variant-4 .product-slide-image,
.product-look-variant-4 .product-look-thumb {
    object-position: center 30%;
    filter: sepia(0.1) saturate(0.88) brightness(1.05);
}

.product-look-variant-5 .product-slide-image,
.product-look-variant-5 .product-look-thumb {
    object-position: center center;
    filter: contrast(1.08) saturate(1.05) brightness(0.98);
}

.product-slide-copy {
    position: absolute;
    left: 1.4rem;
    right: 1.4rem;
    bottom: 1.35rem;
    z-index: 2;
    color: var(--surface-color);
}

.product-slide-index {
    margin-bottom: 0.5rem;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    opacity: 0.72;
}

.product-slide-title {
    font-size: clamp(1.85rem, 3vw, 3rem);
    line-height: 0.9;
}

.product-slide-detail {
    max-width: 24rem;
    margin-top: 0.55rem;
    font-size: 0.92rem;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.82);
}

.product-slide-variant-meta {
    margin-top: 0.7rem;
    font-size: 0.66rem;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.7);
}

.product-slide-availability {
    margin-top: 0.7rem;
    font-size: 0.62rem;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.84);
}

.product-slide-sample-badge {
    display: inline-flex;
    margin-top: 0.8rem;
    padding: 0.45rem 0.65rem;
    background: rgba(255, 255, 255, 0.14);
    color: rgba(255, 255, 255, 0.88);
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.product-carousel-controls {
    position: absolute;
    right: 1rem;
    bottom: 1rem;
    z-index: 3;
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.product-carousel-button {
    width: 2.9rem;
    height: 2.9rem;
    border: 1px solid rgba(255, 255, 255, 0.22);
    background: rgba(18, 18, 18, 0.42);
    color: var(--surface-color);
    font-size: 0.9rem;
    transition: var(--transition);
}

.product-carousel-button:hover {
    background: rgba(255, 255, 255, 0.18);
}

.product-carousel-count {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0.72rem 0.95rem;
    background: rgba(18, 18, 18, 0.42);
    color: var(--surface-color);
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}

.product-carousel-count-divider {
    opacity: 0.4;
}

.product-carousel-looks {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.85rem;
}

.product-look-card {
    display: grid;
    grid-template-columns: 5.6rem minmax(0, 1fr);
    gap: 0.85rem;
    align-items: center;
    padding: 0.7rem;
    border: 1px solid var(--border-color);
    background: rgba(255, 255, 255, 0.8);
    text-align: left;
    transition: var(--transition);
}

.product-look-card:hover,
.product-look-card.is-active {
    border-color: var(--primary-color);
    background: rgba(245, 240, 232, 0.92);
    transform: translateY(-2px);
}

.product-look-thumb-wrap {
    display: block;
    width: 100%;
    overflow: hidden;
    background: var(--secondary-color);
}

.product-look-thumb {
    display: block;
    width: 100%;
    aspect-ratio: 0.78;
    object-fit: cover;
}

.product-look-meta {
    display: grid;
    gap: 0.22rem;
}

.product-look-index {
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.product-look-title {
    font-family: var(--font-heading);
    font-size: 1.2rem;
    line-height: 0.96;
}

.product-look-detail {
    font-size: 0.84rem;
    color: var(--text-muted);
}

.product-look-variant-copy {
    margin-top: 0.15rem;
    font-size: 0.64rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.product-look-availability {
    margin-top: 0.18rem;
    font-size: 0.6rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--primary-color);
}

.product-look-sample-label {
    margin-top: 0.35rem;
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.product-detail-notes {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    padding: 0 3rem 3rem;
}

.product-note-card {
    padding: 1.6rem;
    border: 1px solid var(--border-color);
    background: linear-gradient(180deg, var(--surface-color) 0%, var(--surface-muted) 100%);
}

.product-note-copy {
    margin-top: 0.75rem;
    color: var(--text-muted);
    font-size: 0.95rem;
    line-height: 1.8;
}

.cart-feedback {
    position: fixed;
    right: 1.4rem;
    bottom: 1.4rem;
    z-index: 12000;
    width: min(24rem, calc(100vw - 2rem));
    padding: 1.15rem 1.15rem 1rem;
    border: 1px solid rgba(10, 10, 10, 0.08);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 244, 237, 0.96));
    box-shadow: 0 24px 60px rgba(10, 10, 10, 0.18);
    opacity: 0;
    transform: translateY(1rem);
    pointer-events: none;
    transition: opacity 0.22s ease, transform 0.22s ease;
}

.cart-feedback.is-visible {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

.cart-feedback-error {
    border-color: rgba(124, 34, 34, 0.18);
}

.cart-feedback-close {
    position: absolute;
    top: 0.7rem;
    right: 0.7rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border: none;
    background: transparent;
    color: var(--text-muted);
}

.cart-feedback-eyebrow {
    margin: 0 0 0.55rem;
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.cart-feedback-title {
    margin: 0;
    padding-right: 2rem;
    font-family: var(--font-heading);
    font-size: 1.45rem;
    line-height: 0.95;
}

.cart-feedback-copy {
    margin: 0.8rem 0 0;
    color: var(--text-muted);
    font-size: 0.9rem;
    line-height: 1.7;
}

.cart-feedback-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.7rem;
    margin-top: 1rem;
}

.cart-feedback-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.9rem;
    padding: 0.85rem 1rem;
    border: 1px solid rgba(10, 10, 10, 0.12);
    background: transparent;
    color: var(--primary-color);
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-decoration: none;
    text-transform: uppercase;
    cursor: pointer;
}

.cart-feedback-link-primary {
    background: var(--primary-color);
    border-color: var(--primary-color);
    color: var(--surface-color);
}

@media (max-width: 767.98px) {
    .cart-dot {
        right: -0.6rem;
    }

    .cart-feedback {
        right: 1rem;
        bottom: 1rem;
        width: calc(100vw - 1.5rem);
    }
}

.product-note-copy-muted {
    padding-top: 0.85rem;
    border-top: 1px solid var(--border-color);
    font-size: 0.82rem;
    letter-spacing: 0.04em;
}

.product-shipping-region-list {
    display: grid;
    gap: 0.9rem;
    margin-top: 1.4rem;
}

.product-shipping-region-item {
    display: grid;
    gap: 0.2rem;
    margin: 0;
    padding-left: 1rem;
    border-left: 1px solid var(--border-color);
}

.product-shipping-region-item strong {
    font-size: 0.72rem;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.product-shipping-region-item span {
    color: var(--text-muted);
}

.product-accordion-section {
    padding: 0 0 5rem;
}

.product-accordion-button {
    padding-left: 0;
    padding-right: 0;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.product-accordion-button:not(.collapsed) {
    background: transparent;
    color: var(--primary-color);
    box-shadow: none;
}

.product-accordion-button:focus {
    box-shadow: none;
}

.product-accordion-body {
    padding-left: 0;
    padding-right: 0;
    font-size: 0.88rem;
    line-height: 1.9;
    color: var(--text-muted);
}

/* Cart */
.cart-page {
    padding-top: 8.5rem;
    padding-bottom: 6rem;
}

.cart-title {
    font-size: clamp(2.6rem, 4vw, 4rem);
    margin-bottom: 2rem;
}

.cart-empty-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 1rem 1.8rem;
    border: 1px solid var(--primary-color);
    background: var(--primary-color);
    color: var(--surface-color);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    text-decoration: none;
    transition: var(--transition);
}

.cart-empty-link:hover {
    color: var(--surface-color);
    opacity: 0.9;
}

.cart-flash-shell {
    padding-top: 8rem;
}

.cart-flash {
    padding: 1rem 1.2rem;
    border: 1px solid var(--border-color);
    background: rgba(255, 255, 255, 0.82);
}

.cart-flash-error {
    border-color: rgba(124, 34, 34, 0.18);
    background: rgba(124, 34, 34, 0.06);
}

.cart-flash-success {
    border-color: rgba(31, 122, 69, 0.18);
    background: rgba(31, 122, 69, 0.07);
}

.cart-flash-copy {
    margin: 0;
    font-size: 0.82rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.cart-item {
    display: flex;
    gap: 1.4rem;
    padding: 1.5rem 0;
    border-bottom: 1px solid var(--border-color);
}

.cart-item-image {
    width: 7.25rem;
    aspect-ratio: 3 / 4;
    object-fit: cover;
    background: var(--secondary-color);
}

.cart-item-info {
    flex: 1;
}

.cart-item-name {
    font-size: 0.9rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.cart-item-meta {
    margin-top: 0.35rem;
    font-size: 0.7rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.cart-item-meta-secondary {
    margin-top: 0.85rem;
    letter-spacing: 0.08em;
    text-transform: none;
}

.cart-item-price,
.summary-row,
.summary-note {
    font-size: 0.85rem;
}

.cart-item-price {
    margin-top: 0.35rem;
    color: var(--text-muted);
}

.cart-line-total {
    font-size: 0.86rem;
    font-weight: 700;
}

.qty-control {
    display: inline-flex;
    align-items: center;
    gap: 1rem;
    padding: 0.35rem 0.9rem;
    border: 1px solid var(--border-color);
    background: var(--surface-color);
}

.qty-btn {
    border: none;
    background: none;
    padding: 0;
    font-size: 1rem;
    line-height: 1;
}

.qty-btn:disabled {
    opacity: 0.28;
    cursor: not-allowed;
}

.cart-qty-value {
    min-width: 1.3rem;
    text-align: center;
    font-size: 0.85rem;
    font-weight: 700;
}

.remove-btn {
    border: none;
    background: none;
    padding: 0;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--text-muted);
    text-decoration: underline;
}

.summary-card {
    padding: 2rem;
    border: 1px solid var(--border-color);
    background: linear-gradient(180deg, var(--surface-color) 0%, var(--surface-muted) 100%);
    max-width: 35rem;
    margin-left: auto;
}

.summary-region-block {
    margin-bottom: 1.6rem;
    padding: 1.1rem 1.15rem 1.2rem;
    border: 1px solid var(--border-color);
    background: rgba(255, 255, 255, 0.58);
}

.summary-region-top {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: flex-start;
}

.summary-region-label,
.success-region-eyebrow {
    margin-bottom: 0.28rem;
    font-size: 0.64rem;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.summary-region-title {
    margin: 0;
    font-family: var(--font-heading);
    font-size: 1.35rem;
    line-height: 0.95;
}

.summary-region-detected {
    max-width: 10rem;
    margin: 0;
    font-size: 0.72rem;
    color: var(--text-muted);
    text-align: right;
}

.region-chip-group {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
    margin-top: 1rem;
}

.region-chip {
    border: 1px solid var(--border-color);
    background: var(--surface-color);
    color: var(--primary-color);
    padding: 0.72rem 0.95rem;
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    transition: var(--transition);
}

.region-chip:hover,
.region-chip.is-active {
    border-color: var(--primary-color);
    background: var(--primary-color);
    color: var(--surface-color);
}

.summary-region-copy {
    margin: 0.95rem 0 0;
    color: var(--text-muted);
    font-size: 0.82rem;
    line-height: 1.7;
}

.summary-region-meta,
.success-region-meta {
    display: grid;
    gap: 0.55rem;
    margin-top: 1rem;
}

.summary-region-meta-row,
.success-region-meta-item {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    font-size: 0.76rem;
    color: var(--text-muted);
}

.summary-region-meta-row span:last-child,
.success-region-meta-item strong {
    color: var(--primary-color);
    font-weight: 600;
}

.checkout-form-block {
    margin-bottom: 1.4rem;
    padding-top: 1.3rem;
    border-top: 1px solid var(--border-color);
}

.checkout-account-note {
    margin-top: 0.95rem;
    padding: 0.9rem 1rem;
    border: 1px solid rgba(18, 18, 18, 0.09);
    background: rgba(255, 255, 255, 0.72);
}

.checkout-account-note-guest {
    background: rgba(245, 240, 232, 0.72);
}

.checkout-account-title {
    margin: 0 0 0.25rem;
    font-size: 0.64rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.checkout-account-copy {
    margin: 0;
    font-size: 0.76rem;
    line-height: 1.7;
    color: var(--text-muted);
}

.checkout-account-link {
    color: var(--primary-color);
    text-decoration: underline;
}

.checkout-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.9rem;
    margin-top: 0.95rem;
}

.checkout-field {
    display: grid;
    gap: 0.35rem;
}

.checkout-field-full {
    grid-column: 1 / -1;
}

.checkout-field-label {
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.checkout-input,
.sales-order-input {
    width: 100%;
    border: 1px solid var(--border-color);
    background: rgba(255, 255, 255, 0.92);
    padding: 0.88rem 0.95rem;
    color: var(--primary-color);
    font-size: 0.84rem;
}

.checkout-input:focus,
.sales-order-input:focus {
    outline: none;
    border-color: var(--primary-color);
}

.payment-chip-group {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.8rem;
    margin-top: 0.95rem;
}

.payment-chip {
    display: grid;
    gap: 0.7rem;
    padding: 1rem;
    border: 1px solid var(--border-color);
    background: rgba(255, 255, 255, 0.8);
    text-align: left;
    transition: var(--transition);
}

.payment-chip:hover,
.payment-chip.is-active {
    border-color: var(--primary-color);
    background: rgba(245, 240, 232, 0.95);
}

.payment-chip-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
}

.payment-chip-brand {
    display: flex;
    align-items: center;
    gap: 0.9rem;
}

.payment-chip-logo {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    border: 1px solid rgba(18, 18, 18, 0.09);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.88);
    font-size: 1.15rem;
}

.payment-chip-brand-copy {
    display: grid;
    gap: 0.2rem;
}

.payment-chip-label {
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.payment-chip-state {
    font-size: 0.62rem;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.payment-chip-check {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.9rem;
    height: 1.9rem;
    border: 1px solid rgba(18, 18, 18, 0.09);
    border-radius: 999px;
    color: transparent;
    transition: var(--transition);
}

.payment-chip.is-active .payment-chip-check {
    border-color: var(--primary-color);
    background: var(--primary-color);
    color: var(--surface-color);
}

.payment-chip.is-live .payment-chip-state {
    color: #1f7a45;
}

.payment-chip.is-request .payment-chip-state {
    color: #7a5b1f;
}

.payment-chip-note {
    color: var(--text-muted);
    font-size: 0.78rem;
    line-height: 1.65;
}

.payment-chip-methods {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
}

.payment-chip-method {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 1.8rem;
    padding: 0.35rem 0.6rem;
    border: 1px solid rgba(18, 18, 18, 0.09);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.84);
    font-size: 0.6rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--primary-color);
}

.checkout-provider-note {
    margin: 0.8rem 0 0;
    color: var(--text-muted);
    font-size: 0.8rem;
    line-height: 1.7;
}

.summary-heading {
    margin-bottom: 1.5rem;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    font-family: var(--font-body);
}

.summary-row {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.summary-total {
    padding-top: 1rem;
    border-top: 1px solid var(--border-color);
    font-size: 1rem;
    font-weight: 700;
}

.checkout-btn {
    width: 100%;
    margin-top: 1.8rem;
    padding: 1rem 1.4rem;
    border: none;
    background: var(--primary-color);
    color: var(--surface-color);
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    transition: var(--transition);
}

.checkout-btn:hover {
    opacity: 0.92;
}

.summary-note {
    margin-top: 1rem;
    color: var(--text-muted);
    text-align: center;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

/* Success */
.success-page {
    padding-top: 8.5rem;
    padding-bottom: 6rem;
}

.success-container {
    min-height: 60vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.success-icon {
    width: 5rem;
    height: 5rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 2rem;
    border-radius: 50%;
    background: #eef8f1;
    color: #1f7a45;
    font-size: 2rem;
}

.success-icon-success {
    background: #eef8f1;
    color: #1f7a45;
}

.success-icon-neutral {
    background: rgba(10, 10, 10, 0.06);
    color: var(--primary-color);
}

.success-icon-warning {
    background: rgba(179, 122, 37, 0.12);
    color: #8a5f17;
}

.success-title {
    font-size: clamp(2.4rem, 5vw, 4rem);
    margin-bottom: 1rem;
}

.success-text {
    max-width: 28rem;
    margin-bottom: 2rem;
    color: var(--text-muted);
    font-size: 0.95rem;
    line-height: 1.7;
}

.success-order-reference {
    margin: -0.2rem 0 1.5rem;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.success-region-card {
    width: min(100%, 42rem);
    margin: 0 0 2rem;
    padding: 1.5rem;
    border: 1px solid var(--border-color);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.96) 0%, rgba(247, 244, 238, 0.92) 100%);
    text-align: left;
}

.success-region-header {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: flex-start;
}

.success-region-badge-group {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.45rem;
}

.success-region-title {
    margin: 0;
    font-family: var(--font-heading);
    font-size: clamp(1.9rem, 4vw, 2.8rem);
    line-height: 0.92;
}

.success-region-copy {
    max-width: 26rem;
    margin: 0.55rem 0 0;
    color: var(--text-muted);
    font-size: 0.88rem;
    line-height: 1.7;
}

.success-region-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.6rem 0.85rem;
    background: rgba(10, 10, 10, 0.06);
    font-size: 0.64rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    white-space: nowrap;
}

.success-region-badge-muted {
    background: rgba(10, 10, 10, 0.03);
    color: var(--text-muted);
}

.success-next-card,
.success-items-card {
    width: min(100%, 42rem);
    margin: 0 0 2rem;
    text-align: left;
}

.success-next-card {
    padding: 1.35rem 1.5rem;
    border: 1px solid var(--border-color);
    background: rgba(255, 255, 255, 0.9);
}

.success-next-title {
    margin: 0;
    font-size: clamp(1.45rem, 3vw, 2.2rem);
    line-height: 0.96;
}

.success-next-copy {
    margin: 0.8rem 0 0;
    color: var(--text-muted);
    font-size: 0.88rem;
    line-height: 1.75;
}

.success-next-note {
    margin: 0.9rem 0 0;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.success-items-card {
    padding: 1.35rem 1.5rem;
    border: 1px solid var(--border-color);
    background: rgba(255, 255, 255, 0.88);
}

.success-item-list {
    display: grid;
    gap: 0.9rem;
}

.success-item-row {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: flex-start;
    padding-top: 0.9rem;
    border-top: 1px solid var(--border-color);
}

.success-item-row:first-child {
    padding-top: 0;
    border-top: none;
}

.success-item-title {
    margin: 0;
    font-size: 0.92rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.success-item-meta {
    margin: 0.3rem 0 0;
    font-size: 0.72rem;
    color: var(--text-muted);
}

.success-item-pricing {
    display: grid;
    gap: 0.2rem;
    min-width: 8rem;
    text-align: right;
    font-size: 0.76rem;
    color: var(--text-muted);
}

/* Sales Dashboard */
.sales-dashboard-shell {
    padding: 8rem 3rem 6rem;
    background:
        radial-gradient(circle at top left, rgba(246, 241, 233, 0.7), transparent 30%),
        linear-gradient(180deg, #faf7f1 0%, #f4f0e8 100%);
}

.sales-dashboard-hero {
    padding-bottom: 2.5rem;
}

.sales-dashboard-section-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-bottom: 1.15rem;
}

.sales-dashboard-section-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.85rem 1.1rem;
    border: 1px solid rgba(10, 10, 10, 0.1);
    background: rgba(255, 255, 255, 0.7);
    color: var(--primary-color);
    text-decoration: none;
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    transition: var(--transition);
}

.sales-dashboard-section-link:hover {
    color: var(--primary-color);
    border-color: var(--primary-color);
    transform: translateY(-1px);
}

.sales-dashboard-eyebrow,
.sales-panel-eyebrow {
    margin-bottom: 0.7rem;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.sales-dashboard-intro {
    display: flex;
    justify-content: space-between;
    gap: 2rem;
    align-items: flex-end;
}

.sales-dashboard-title {
    font-size: clamp(3.8rem, 8vw, 6.2rem);
    line-height: 0.9;
}

.sales-dashboard-workspaces {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
    margin-bottom: 1.6rem;
}

.sales-dashboard-workspace-card {
    display: grid;
    gap: 0.8rem;
    padding: 1.35rem;
    border: 1px solid rgba(10, 10, 10, 0.1);
    background: rgba(255, 255, 255, 0.74);
    color: var(--primary-color);
    text-decoration: none;
    transition: var(--transition);
}

.sales-dashboard-workspace-card:hover {
    color: var(--primary-color);
    border-color: var(--primary-color);
    transform: translateY(-2px);
}

.sales-dashboard-workspace-eyebrow {
    margin: 0;
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.sales-dashboard-workspace-title {
    margin: 0;
    font-size: 1.35rem;
    line-height: 1.02;
}

.sales-dashboard-workspace-copy {
    margin: 0;
    color: var(--text-muted);
    font-size: 0.84rem;
    line-height: 1.75;
}

.sales-dashboard-workspace-meta {
    margin: 0;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--primary-color);
}

.sales-dashboard-copy,
.sales-panel-copy,
.sales-empty-copy {
    max-width: 42rem;
    color: var(--text-muted);
    font-size: 0.94rem;
    line-height: 1.8;
}

.sales-dashboard-actions,
.sales-guide-links,
.sales-order-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.sales-dashboard-action,
.sales-guide-link,
.sales-order-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.9rem 1.15rem;
    border: 1px solid var(--border-strong);
    color: var(--primary-color);
    text-decoration: none;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    transition: var(--transition);
}

.sales-dashboard-action {
    background: var(--primary-color);
    color: var(--surface-color);
    border-color: var(--primary-color);
}

.sales-dashboard-action:hover {
    color: var(--surface-color);
    opacity: 0.92;
}

.sales-dashboard-action-secondary,
.sales-guide-link,
.sales-order-link {
    background: rgba(255, 255, 255, 0.82);
    color: var(--primary-color);
}

.sales-dashboard-action-secondary:hover,
.sales-guide-link:hover,
.sales-order-link:hover {
    color: var(--primary-color);
    border-color: var(--primary-color);
}

.dashboard-flash {
    margin-bottom: 1.4rem;
    padding: 1rem 1.2rem;
    border: 1px solid var(--border-color);
    background: rgba(255, 255, 255, 0.88);
}

.dashboard-flash p {
    margin: 0;
    font-size: 0.8rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.dashboard-flash-list {
    margin: 0.85rem 0 0;
    padding-left: 1rem;
    color: var(--text-muted);
    font-size: 0.84rem;
    line-height: 1.7;
}

.dashboard-flash-success {
    border-color: rgba(31, 122, 69, 0.18);
    background: rgba(31, 122, 69, 0.07);
}

.dashboard-flash-error {
    border-color: rgba(124, 34, 34, 0.18);
    background: rgba(124, 34, 34, 0.06);
}

.sales-stats {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 1rem;
    margin-bottom: 1.6rem;
}

.sales-stat-card,
.sales-guide-card,
.sales-orders-panel,
.sales-order-card {
    border: 1px solid var(--border-color);
    background: rgba(255, 255, 255, 0.82);
}

.sales-stat-card {
    padding: 1.4rem;
}

.sales-stat-label {
    margin-bottom: 0.35rem;
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.sales-stat-value {
    margin: 0;
    font-family: var(--font-heading);
    font-size: clamp(1.8rem, 4vw, 3rem);
    line-height: 0.92;
}

.sales-dashboard-grid {
    display: grid;
    grid-template-columns: minmax(20rem, 0.85fr) minmax(0, 1.6fr);
    gap: 1.2rem;
    align-items: start;
}

.sales-guide-card,
.sales-orders-panel {
    padding: 1.5rem;
}

.sales-panel-title {
    margin-bottom: 0.8rem;
    font-size: clamp(1.8rem, 3vw, 2.8rem);
    line-height: 0.95;
}

.sales-panel-copy-small {
    margin-top: 1.2rem;
    font-size: 0.82rem;
}

.sales-setup-section {
    margin-top: 2rem;
    padding-top: 1.8rem;
    border-top: 1px solid var(--border-color);
}

.sales-payment-provider-list {
    display: grid;
    gap: 0.9rem;
    margin-top: 1.25rem;
}

.sales-payment-provider-card {
    padding: 1rem 1.05rem;
    border: 1px solid var(--border-color);
    background: rgba(255, 255, 255, 0.7);
}

.sales-payment-provider-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.sales-payment-provider-name {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.sales-payment-provider-meta {
    margin: 0.3rem 0 0;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.sales-payment-checks {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 0.95rem;
}

.sales-payment-check {
    display: inline-flex;
    align-items: center;
    padding: 0.45rem 0.7rem;
    border: 1px solid rgba(124, 34, 34, 0.16);
    background: rgba(124, 34, 34, 0.05);
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: #7c2222;
}

.sales-payment-check.is-ready {
    border-color: rgba(31, 122, 69, 0.16);
    background: rgba(31, 122, 69, 0.08);
    color: #1f7a45;
}

.sales-payment-check.is-optional:not(.is-ready) {
    border-color: rgba(140, 108, 32, 0.18);
    background: rgba(140, 108, 32, 0.08);
    color: #7d5f1c;
}

.sales-payment-provider-actions {
    display: grid;
    gap: 0.7rem;
    margin-top: 1rem;
    padding-top: 0.95rem;
    border-top: 1px solid rgba(10, 10, 10, 0.08);
}

.sales-payment-toggle-copy {
    margin: 0;
}

.sales-payment-toggle-form {
    margin: 0;
}

.sales-payment-toggle-submit {
    width: 100%;
}

.sales-payment-status-badge.is-live {
    background: rgba(31, 122, 69, 0.1);
    color: #1f7a45;
}

.sales-payment-status-badge.is-hidden {
    background: rgba(10, 10, 10, 0.08);
    color: #111;
}

.sales-payment-status-badge.is-unavailable {
    background: rgba(124, 34, 34, 0.08);
    color: #7c2222;
}

.sales-payment-status-badge.is-warning {
    background: rgba(140, 108, 32, 0.1);
    color: #7d5f1c;
}

.sales-payment-mode-note {
    color: #7d5f1c;
}

.sales-analytics-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    margin-top: 1rem;
}

.sales-dashboard-settings-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.sales-sheet-panel-settings .sales-dashboard-support-grid {
    margin-top: 1.2rem;
}

.sales-dashboard-analytics-grid {
    grid-template-columns: minmax(0, 1.3fr) minmax(0, 0.9fr);
}

.sales-analytics-status-list,
.sales-analytics-grid,
.sales-analytics-list {
    display: grid;
    gap: 1rem;
}

.sales-analytics-status-card {
    padding: 1rem 1.05rem;
    border: 1px solid var(--border-color);
    background: rgba(255, 255, 255, 0.7);
}

.sales-analytics-form {
    display: grid;
    gap: 0.95rem;
    margin-top: 1.2rem;
}

.sales-filter-field-full {
    grid-column: 1 / -1;
}

.sales-toggle-field {
    display: flex;
    align-items: flex-start;
    gap: 0.8rem;
    padding: 0.95rem 1rem;
    border: 1px solid var(--border-color);
    background: rgba(255, 255, 255, 0.72);
    font-size: 0.84rem;
    line-height: 1.7;
    color: var(--primary-color);
}

.sales-toggle-field input {
    width: 1rem;
    height: 1rem;
    margin-top: 0.18rem;
    accent-color: var(--primary-color);
}

.sales-analytics-list {
    margin-top: 1rem;
}

.sales-analytics-list-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.9rem 1rem;
    border: 1px solid var(--border-color);
    background: rgba(255, 255, 255, 0.68);
}

.sales-analytics-list-item-product,
.sales-analytics-list-item-event {
    align-items: flex-start;
}

.sales-analytics-value {
    font-family: var(--font-heading);
    font-size: 1.35rem;
    line-height: 0.9;
}

.sales-analytics-time {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.sales-config-code {
    margin: 1.2rem 0 0;
    padding: 1rem 1.1rem;
    border: 1px solid var(--border-color);
    background: #161310;
    color: #f5f0e8;
    font-size: 0.74rem;
    line-height: 1.65;
    white-space: pre-wrap;
    word-break: break-word;
    overflow-x: auto;
}

.sales-orders-head {
    padding-bottom: 1.2rem;
    border-bottom: 1px solid var(--border-color);
}

.sales-order-list {
    display: grid;
    gap: 1rem;
    margin-top: 1.2rem;
}

.sales-order-card {
    padding: 1.35rem;
}

.sales-order-top {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: flex-start;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--border-color);
}

.sales-order-reference {
    margin-bottom: 0.4rem;
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.sales-order-customer {
    margin-bottom: 0.3rem;
    font-size: 1.3rem;
}

.sales-order-meta {
    margin: 0;
    color: var(--text-muted);
    font-size: 0.82rem;
}

.sales-order-badges {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.55rem;
}

.sales-order-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.55rem 0.7rem;
    background: rgba(10, 10, 10, 0.06);
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.sales-order-badge-status {
    background: rgba(245, 240, 232, 0.85);
}

.sales-order-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.85rem;
    margin-top: 1rem;
}

.sales-order-label {
    margin-bottom: 0.25rem;
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.sales-order-text {
    margin: 0;
    font-size: 0.84rem;
    line-height: 1.7;
}

.sales-order-items {
    display: grid;
    gap: 0.75rem;
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid var(--border-color);
}

.sales-order-item-row {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: flex-start;
}

.sales-order-item-title {
    margin: 0;
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.sales-order-item-meta {
    margin: 0.28rem 0 0;
    font-size: 0.72rem;
    color: var(--text-muted);
}

.sales-order-item-pricing {
    display: grid;
    gap: 0.12rem;
    min-width: 8rem;
    text-align: right;
    font-size: 0.74rem;
    color: var(--text-muted);
}

.sales-order-actions {
    margin-top: 1rem;
}

.sales-order-form {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0.8rem;
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid var(--border-color);
}

.sales-order-field {
    display: grid;
    gap: 0.35rem;
}

.sales-order-field span {
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.sales-order-submit {
    align-self: end;
    border: none;
    padding: 0.95rem 1rem;
    background: var(--primary-color);
    color: var(--surface-color);
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.sales-empty-state {
    padding: 2rem 0 0.5rem;
}

.sales-empty-title {
    margin-bottom: 0.45rem;
    font-size: 1.3rem;
}

.account-page {
    padding: 9rem 0 5rem;
}

.account-shell {
    width: min(1180px, calc(100% - 2rem));
    margin: 0 auto;
}

.account-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 2rem;
    align-items: start;
    margin-bottom: 2rem;
}

.account-kicker,
.account-card-kicker,
.account-order-label {
    margin: 0 0 0.35rem;
    font-size: 0.64rem;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.account-title {
    margin: 0;
    font-family: var(--font-heading);
    font-size: clamp(2.4rem, 5vw, 4.4rem);
    line-height: 0.92;
}

.account-copy {
    max-width: 44rem;
    margin: 1rem 0 0;
    color: var(--text-muted);
    font-size: 0.95rem;
    line-height: 1.8;
}

.account-hero-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.85rem;
}

.account-inline-form {
    margin: 0;
}

.account-secondary-link,
.account-secondary-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.85rem;
    padding: 0.8rem 1rem;
    border: 1px solid var(--border-color);
    background: rgba(255, 255, 255, 0.88);
    color: var(--primary-color);
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    text-decoration: none;
}

.account-secondary-button {
    cursor: pointer;
}

.account-flash {
    margin-bottom: 1.5rem;
    padding: 1rem 1.1rem;
    border: 1px solid var(--border-color);
}

.account-flash p {
    margin: 0;
}

.account-flash-success {
    background: rgba(31, 122, 69, 0.08);
    border-color: rgba(31, 122, 69, 0.16);
}

.account-flash-error {
    background: rgba(124, 34, 34, 0.08);
    border-color: rgba(124, 34, 34, 0.16);
}

.account-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.account-stat-card,
.account-card {
    border: 1px solid var(--border-color);
    background: rgba(255, 255, 255, 0.82);
}

.account-stat-card {
    padding: 1rem 1.05rem;
}

.account-stat-label {
    display: block;
    margin-bottom: 0.35rem;
    font-size: 0.64rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.account-stat-value {
    font-family: var(--font-heading);
    font-size: 2rem;
    line-height: 1;
}

.account-layout {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.2rem;
}

.account-card {
    padding: 1.25rem;
}

.account-card-head {
    display: grid;
    gap: 0.75rem;
    margin-bottom: 1.1rem;
}

.account-card-title {
    margin: 0;
    font-family: var(--font-heading);
    font-size: 1.7rem;
}

.account-card-copy {
    margin: 0;
    color: var(--text-muted);
    font-size: 0.84rem;
    line-height: 1.8;
}

.account-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.95rem;
}

.account-field {
    display: grid;
    gap: 0.35rem;
}

.account-field span {
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.account-field-full {
    grid-column: 1 / -1;
}

.account-input {
    width: 100%;
    border: 1px solid var(--border-color);
    background: rgba(255, 255, 255, 0.92);
    padding: 0.9rem 0.95rem;
    color: var(--primary-color);
    font-size: 0.85rem;
}

.account-input:focus {
    outline: none;
    border-color: var(--primary-color);
}

.account-primary-button {
    grid-column: 1 / -1;
    border: none;
    min-height: 3rem;
    padding: 0.95rem 1rem;
    background: var(--primary-color);
    color: var(--surface-color);
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.account-orders {
    display: grid;
    gap: 1rem;
}

.account-order-card {
    padding: 1rem;
    border: 1px solid rgba(18, 18, 18, 0.09);
    background: rgba(255, 255, 255, 0.7);
}

.account-order-head,
.account-order-tracking {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.account-order-ref {
    margin: 0;
    font-size: 0.92rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.account-order-date {
    margin: 0.28rem 0 0;
    color: var(--text-muted);
    font-size: 0.76rem;
}

.account-order-status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2rem;
    padding: 0.4rem 0.7rem;
    background: rgba(10, 10, 10, 0.06);
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.account-order-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.9rem;
    margin-top: 1rem;
}

.account-order-value {
    margin: 0;
    font-size: 0.82rem;
    line-height: 1.7;
}

.account-order-tracking {
    margin-top: 1rem;
    padding-top: 0.9rem;
    border-top: 1px solid rgba(18, 18, 18, 0.08);
}

.account-order-tracking-copy {
    margin: 0;
    color: var(--text-muted);
    font-size: 0.76rem;
}

.account-empty-state {
    padding: 2rem 0 0.5rem;
}

.account-empty-title {
    margin-bottom: 0.4rem;
    font-size: 1.25rem;
}

.account-empty-copy {
    margin: 0;
    color: var(--text-muted);
    line-height: 1.8;
}

.account-story {
    max-width: 52rem;
    margin-top: 2rem;
    color: var(--text-muted);
    line-height: 1.9;
}

@media (max-width: 900px) {
    .account-stats,
    .account-layout,
    .account-form,
    .account-order-grid {
        grid-template-columns: 1fr;
    }

    .account-hero {
        grid-template-columns: 1fr;
    }

    .account-hero-actions {
        justify-content: flex-start;
    }

    .account-field-full,
    .account-primary-button {
        grid-column: auto;
    }
}

.sales-sheet-panel {
    padding: 1.5rem;
    border: 1px solid var(--border-color);
    background: rgba(255, 255, 255, 0.82);
}

.sales-sheet-panel + .sales-sheet-panel,
.sales-sheet-panel + .sales-dashboard-support-grid {
    margin-top: 1.2rem;
}

.sales-sheet-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1rem;
    align-items: end;
    padding-bottom: 1.15rem;
    border-bottom: 1px solid var(--border-color);
}

.sales-export-links {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.sales-sheet-toolbar {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(18rem, 0.9fr);
    gap: 1rem;
    margin: 1.2rem 0;
}

.sales-filter-form,
.sales-bulk-form,
.sales-import-form {
    display: grid;
    gap: 0.8rem;
    padding: 1rem;
    border: 1px solid var(--border-color);
    background: rgba(255, 255, 255, 0.7);
}

.sales-filter-form {
    grid-template-columns: minmax(0, 1.4fr) minmax(10rem, 0.8fr) auto auto;
    align-items: end;
}

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

.sales-filter-field {
    display: grid;
    gap: 0.35rem;
}

.sales-filter-field span {
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.sales-sheet-table-wrap {
    overflow: auto;
    border: 1px solid var(--border-color);
    background: rgba(255, 255, 255, 0.88);
}

.sales-sheet-table {
    width: 100%;
    min-width: 78rem;
    border-collapse: collapse;
}

.sales-sheet-table th,
.sales-sheet-table td {
    padding: 0.95rem 0.9rem;
    border-bottom: 1px solid var(--border-color);
    vertical-align: top;
    text-align: left;
}

.sales-sheet-table th {
    position: sticky;
    top: 0;
    z-index: 1;
    background: #f5f1e9;
    font-size: 0.64rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.sales-sheet-table tbody tr:nth-child(2n) {
    background: rgba(246, 241, 233, 0.38);
}

.sales-sheet-checkbox {
    width: 1.1rem;
    height: 1.1rem;
    margin-top: 0.2rem;
    accent-color: var(--primary-color);
}

.sales-sheet-primary,
.sales-sheet-strong {
    margin: 0;
    font-size: 0.84rem;
    line-height: 1.55;
}

.sales-sheet-primary {
    font-weight: 700;
}

.sales-sheet-strong {
    margin-top: 0.35rem;
    font-weight: 700;
}

.sales-sheet-secondary {
    margin: 0.28rem 0 0;
    font-size: 0.74rem;
    color: var(--text-muted);
    line-height: 1.6;
}

.sales-sheet-input,
.sales-sheet-select {
    width: 100%;
    border: 1px solid rgba(10, 10, 10, 0.12);
    background: rgba(255, 255, 255, 0.94);
    padding: 0.72rem 0.78rem;
    color: var(--primary-color);
    font-size: 0.78rem;
    margin-bottom: 0.45rem;
}

.sales-sheet-input:last-child,
.sales-sheet-select:last-child {
    margin-bottom: 0;
}

.sales-sheet-input:focus,
.sales-sheet-select:focus {
    outline: none;
    border-color: var(--primary-color);
}

.sales-sheet-title-input {
    min-width: 14rem;
}

.sales-sheet-action-stack {
    display: grid;
    gap: 0.5rem;
    min-width: 8rem;
}

.sales-row-notice {
    margin: 0;
    font-size: 0.7rem;
    line-height: 1.45;
    color: var(--text-muted);
}

.sales-row-notice[data-tone="success"] {
    color: #1f7a45;
}

.sales-row-notice[data-tone="error"] {
    color: #7c2222;
}

.sales-sheet-save {
    width: 100%;
    border: none;
    padding: 0.95rem 1rem;
    background: var(--primary-color);
    color: var(--surface-color);
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.sales-sheet-save.is-saving {
    opacity: 0.78;
    pointer-events: none;
}

.sales-product-cell {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.8rem;
    align-items: start;
}

.sales-sheet-thumb {
    width: 3.6rem;
    aspect-ratio: 4 / 5;
    object-fit: cover;
    border: 1px solid var(--border-color);
    background: #f5f1e9;
}

.sales-hidden-forms {
    display: none;
}

.sales-dashboard-support-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    margin-top: 1.2rem;
}

.sales-dashboard-support-grid.sales-dashboard-settings-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.sales-guide-card-span-full {
    grid-column: 1 / -1;
}

.sales-dashboard-support-grid.sales-dashboard-analytics-grid {
    grid-template-columns: minmax(0, 1.3fr) minmax(0, 0.9fr);
}

.sales-sheet-pagination {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
    margin-top: 1rem;
}

.sales-sheet-pagination-copy {
    margin: 0;
    font-size: 0.76rem;
    color: var(--text-muted);
    line-height: 1.7;
}

.sales-sheet-pagination-links {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
}

.sales-sheet-page-link {
    min-width: 2.9rem;
    width: auto;
    padding-inline: 0.95rem;
}

.sales-sheet-page-link.is-active {
    background: var(--primary-color);
    color: var(--surface-color);
    border-color: var(--primary-color);
}

.sales-sheet-page-link.is-active:hover {
    color: var(--surface-color);
}

.success-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.85rem;
}

.back-btn,
.success-secondary-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 1rem 1.6rem;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    text-decoration: none;
    transition: var(--transition);
}

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

.back-btn:hover {
    color: var(--surface-color);
    opacity: 0.92;
}

.success-secondary-link {
    border: 1px solid var(--border-strong);
    background: transparent;
    color: var(--primary-color);
}

.success-secondary-link:hover {
    color: var(--primary-color);
    border-color: var(--primary-color);
}

/* Footer */
.footer {
    position: relative;
    overflow: hidden;
    padding: 8rem 0 2.5rem;
    background:
        radial-gradient(circle at top left, rgba(246, 241, 233, 0.12), transparent 28%),
        radial-gradient(circle at right center, rgba(255, 255, 255, 0.06), transparent 30%),
        linear-gradient(155deg, #0a0a0a 0%, #151515 100%);
    color: var(--accent-color);
}

.footer::before,
.footer::after {
    content: '';
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.footer::before {
    top: -14rem;
    left: -8rem;
    width: 28rem;
    height: 28rem;
    background: rgba(255, 255, 255, 0.04);
    filter: blur(6px);
}

.footer::after {
    right: -10rem;
    bottom: -12rem;
    width: 26rem;
    height: 26rem;
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.footer-shell {
    position: relative;
    z-index: 1;
    padding-inline: 3rem;
}

.footer-top {
    padding-bottom: 3.5rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.footer-eyebrow {
    margin-bottom: 1.1rem;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.24em;
    text-transform: uppercase;
    color: rgba(246, 241, 233, 0.6);
}

.footer-intro {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(18rem, 0.85fr);
    gap: 2rem;
    align-items: end;
}

.footer-brand-block {
    max-width: 52rem;
}

.footer-logo {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 1rem;
    font-family: var(--font-heading);
    font-size: clamp(3.8rem, 12vw, 8.5rem);
    font-weight: 600;
    line-height: 0.84;
    letter-spacing: -0.09em;
    color: var(--accent-color);
    text-decoration: none;
}

.footer-logo:hover {
    color: var(--accent-color);
}

.footer-logo-line {
    display: block;
}

.footer-brand-mark-wrap {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: clamp(3rem, 5vw, 4.5rem);
    margin-bottom: 0.85rem;
}

.footer-brand-mark {
    width: 100%;
    height: auto;
    object-fit: contain;
    filter: drop-shadow(0 16px 36px rgba(0, 0, 0, 0.2));
}

.footer-logo-line-secondary {
    margin-left: 0.4rem;
}

.footer-description {
    max-width: 32rem;
    color: rgba(246, 241, 233, 0.7);
    font-size: 1rem;
}

.footer-top-minimal {
    padding-bottom: 2rem;
}

.footer-intro-minimal {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
    gap: 2.5rem;
}

.footer-brand-block-minimal {
    max-width: 28rem;
}

.footer-logo-minimal {
    margin-bottom: 0.6rem;
    font-size: clamp(3.6rem, 10vw, 6.8rem);
}

.footer-description-minimal {
    max-width: none;
    font-size: 0.92rem;
    color: rgba(246, 241, 233, 0.62);
}

.footer-essentials {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.9rem;
}

.footer-essential-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.9rem 1.15rem;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.04);
    color: var(--accent-color);
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    text-decoration: none;
    transition: var(--transition);
}

.footer-essential-link:hover {
    color: var(--accent-color);
    transform: translateY(-2px);
    border-color: rgba(255, 255, 255, 0.2);
}

.footer-cta-panel {
    padding: 1.75rem;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.04);
    backdrop-filter: blur(18px);
    box-shadow: var(--shadow-soft);
}

.footer-cta-copy {
    color: rgba(246, 241, 233, 0.82);
    font-size: 0.95rem;
}

.footer-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.9rem;
    margin-top: 1.4rem;
}

.footer-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.95rem 1.5rem;
    border: 1px solid rgba(255, 255, 255, 0.2);
    background: var(--accent-color);
    color: var(--primary-color);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    text-decoration: none;
    transition: var(--transition);
}

.footer-action:hover {
    color: var(--primary-color);
    transform: translateY(-2px);
}

.footer-action-secondary {
    background: transparent;
    color: var(--accent-color);
}

.footer-action-secondary:hover {
    color: var(--accent-color);
}

.footer-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) repeat(3, minmax(0, 1fr));
    gap: 2rem;
    padding: 3rem 0 2.5rem;
}

.footer-column {
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.footer-story {
    max-width: 28rem;
}

.footer-kicker,
.footer h6 {
    margin-bottom: 1rem;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.24em;
    text-transform: uppercase;
    color: rgba(246, 241, 233, 0.48);
}

.footer-note {
    color: rgba(246, 241, 233, 0.8);
    font-size: 0.95rem;
}

.footer-note + .footer-note {
    margin-top: 0.95rem;
}

.footer-note-muted {
    color: rgba(246, 241, 233, 0.52);
}

.footer-link {
    display: inline-flex;
    width: fit-content;
    margin-bottom: 0.65rem;
    font-size: 1rem;
    font-weight: 500;
    color: var(--accent-color) !important;
    text-decoration: none !important;
    opacity: 0.8;
    transition: var(--transition);
}

.footer-link:hover {
    opacity: 1;
    transform: translateX(10px);
}

.footer-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding-top: 2rem;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.footer-meta {
    font-size: 0.78rem;
    font-weight: 600;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: rgba(246, 241, 233, 0.48);
}

.footer-payments {
    display: flex;
    flex-wrap: wrap;
    gap: 0.85rem;
}

.footer-payment {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.75rem;
    height: 2.75rem;
    padding-inline: 0.85rem;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.04);
    color: rgba(246, 241, 233, 0.78);
    font-size: 1rem;
}

@media (max-width: 991.98px) {
    .offcanvas-header {
        padding: 2rem 1.5rem !important;
    }

    .search-form {
        grid-template-columns: 1fr;
    }

    .search-result-card,
    .search-suggestion-card {
        grid-template-columns: 1fr;
    }

    .home-collection-shell {
        padding: 1.35rem;
    }

    .home-collection-panel {
        min-height: clamp(28rem, 58vh, 40rem);
    }

    .home-collection-title {
        max-width: 11ch;
    }

    .home-collection-frame-art {
        width: min(100%, 20rem);
        height: clamp(17rem, 33vh, 24rem);
    }

    .home-collection-frame-fashion {
        width: min(100%, 24rem);
        height: clamp(17rem, 32vh, 23rem);
    }

    .collection-header-inner {
        padding-inline: 1.5rem;
        padding-bottom: 2.25rem;
        flex-direction: column;
        align-items: flex-start;
    }

    .collection-filter-group {
        justify-content: flex-start;
    }

    .shop-cinema-hero {
        padding-inline: 1.5rem;
    }

    .shop-cinema-intro,
    .shop-feature-card {
        grid-template-columns: 1fr;
    }

    .shop-cinema-title {
        max-width: 12ch;
    }

    .shop-feature-card {
        min-height: auto;
    }

    .shop-feature-media {
        min-height: 34rem;
    }

    .shop-feature-media-art {
        min-height: 28rem;
    }

    .product-stage-shell,
    .product-accordion-shell,
    .product-detail-notes {
        padding-inline: 1.5rem;
    }

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

    .product-stage-copy {
        order: 2;
        position: static;
        padding-top: 0;
    }

    .product-stage-visual {
        order: 1;
    }

    .product-breadcrumb-row {
        align-items: flex-start;
        flex-direction: column;
    }

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

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

    .content-page-layout.has-aside {
        grid-template-columns: 1fr;
    }

    .content-page-aside {
        position: static;
    }

    .checkout-form-grid,
    .sales-stats,
    .sales-dashboard-workspaces,
    .sales-analytics-stats,
    .sales-dashboard-support-grid,
    .sales-dashboard-settings-grid,
    .sales-dashboard-analytics-grid,
    .sales-sheet-toolbar {
        grid-template-columns: 1fr 1fr;
    }

    .sales-dashboard-shell {
        padding-inline: 1.5rem;
    }

    .sales-dashboard-intro {
        flex-direction: column;
        align-items: flex-start;
    }

    .sales-sheet-head,
    .sales-filter-form {
        grid-template-columns: 1fr;
    }

    .footer-shell {
        padding-inline: 1.5rem;
    }

    .footer-intro,
    .footer-grid {
        grid-template-columns: 1fr;
    }

    .footer-intro-minimal {
        gap: 1.4rem;
    }

    .footer-essentials {
        justify-content: flex-start;
    }

    .footer-logo {
        font-size: clamp(4.2rem, 20vw, 7.5rem);
    }

    .footer-bottom {
        flex-direction: column;
        align-items: flex-start;
    }

    .cart-page,
    .success-page {
        padding-top: 7.5rem;
    }
}

@media (max-width: 767.98px) {
    .navbar {
        padding: 1.65rem 0;
    }

    .navbar-brand.mx-auto {
        margin-inline: auto;
    }

    .navbar .brand-lockup {
        justify-content: center;
    }

    .navbar .brand-wordmark {
        display: none;
    }

    .navbar .brand-mark-wrap {
        width: 2.2rem;
        height: 2.2rem;
    }

    .hero-section {
        min-height: clamp(33rem, 72svh, 42rem);
    }

    .hero-content {
        padding-inline: 1.25rem;
    }

    .hero-title {
        font-size: clamp(3.6rem, 17vw, 5.2rem);
    }

    .btn-creative {
        padding: 1rem 1.6rem;
        min-width: 10.5rem;
    }

    .home-collection-band {
        grid-template-columns: 1fr;
    }

    .home-collection-panel {
        min-height: clamp(25rem, 58vh, 33rem);
    }

    .home-collection-shell {
        padding: 1.2rem 1rem 1rem;
    }

    .home-collection-stage {
        min-height: 15rem;
        margin-block: 1.15rem;
    }

    .home-collection-frame-art {
        width: min(100%, 16.5rem);
        height: clamp(15.5rem, 34vh, 21rem);
    }

    .home-collection-frame-fashion {
        width: min(100%, 18.75rem);
        height: clamp(15.5rem, 32vh, 20rem);
    }

    .home-collection-footer {
        flex-direction: column;
        align-items: flex-start;
    }

    .home-collection-trail {
        width: 100%;
        justify-items: flex-start;
    }

    .shop-cinema-page {
        padding-top: 6.75rem;
    }

    .content-page {
        padding-top: 6.9rem;
    }

    .art-gallery-page {
        padding-top: 6.9rem;
    }

    .art-gallery-hero {
        flex-direction: column;
        align-items: flex-start;
        gap: 1.4rem;
        padding: 1.35rem 1rem 1.1rem;
    }

    .art-gallery-copy {
        max-width: none;
    }

    .art-gallery-title {
        font-size: clamp(2.9rem, 14vw, 4.25rem);
    }

    .art-gallery-description {
        max-width: none;
        margin-top: 1rem;
        font-size: 0.92rem;
        line-height: 1.7;
    }

    .art-gallery-filter-group {
        width: 100%;
        justify-content: flex-start;
        flex-wrap: nowrap;
        gap: 0.65rem;
        overflow-x: auto;
        padding-bottom: 0.15rem;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .art-gallery-filter-group::-webkit-scrollbar {
        display: none;
    }

    .art-gallery-filter-group .filter-link {
        min-width: max-content;
        flex: 0 0 auto;
        padding: 0.78rem 1.05rem;
        font-size: 0.66rem;
        letter-spacing: 0.15em;
    }

    .art-gallery-grid {
        grid-template-columns: 1fr;
        gap: 0.85rem;
        padding: 0 1rem 2rem;
    }

    .art-gallery-card-landscape {
        grid-column: auto;
    }

    .art-gallery-link {
        gap: 1rem;
        padding: 1rem;
    }

    .art-gallery-matte {
        padding: 0.75rem;
    }

    .art-gallery-work-title {
        font-size: clamp(1.7rem, 8vw, 2.3rem);
    }

    .art-gallery-work-summary {
        max-width: none;
        font-size: 0.88rem;
        line-height: 1.7;
    }

    .art-gallery-work-footer {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.45rem;
    }

    .content-page-shell {
        padding-inline: 1.25rem;
    }

    .content-page-header {
        flex-direction: column;
    }

    .content-page-title {
        max-width: none;
        font-size: clamp(2.65rem, 12vw, 4.5rem);
    }

    .shop-cinema-hero {
        gap: 1.8rem;
        padding-inline: 1.25rem;
        padding-bottom: 2rem;
    }

    .shop-cinema-title {
        font-size: clamp(3rem, 14vw, 4.5rem);
    }

    .shop-cinema-toolbar,
    .shop-feature-footer,
    .shop-cinema-card-footer {
        align-items: flex-start;
        flex-direction: column;
    }

    .shop-cinema-grid {
        grid-template-columns: 1fr;
    }

    .shop-feature-media {
        min-height: 22rem;
    }

    .shop-cinema-card,
    .shop-cinema-card-emphasis {
        min-height: 30rem;
    }

    .shop-cinema-card-copy {
        padding: 1.6rem 1.4rem 1.4rem;
    }

    .shop-cinema-empty {
        padding-inline: 1.25rem;
    }

    .collection-page {
        padding-top: 6.75rem;
    }

    .collection-title {
        font-size: clamp(3rem, 14vw, 4.5rem);
    }

    .search-panel-header,
    .search-panel-body {
        padding-inline: 1.25rem;
    }

    .search-panel-title {
        font-size: clamp(2rem, 10vw, 3rem);
    }

    .collection-description {
        font-size: 0.92rem;
    }

    .product-cinematic-hero {
        padding-top: 7rem;
    }

    .product-stage-grid {
        display: flex;
        flex-direction: column;
        gap: 1.25rem;
        min-width: 0;
    }

    .product-stage-copy {
        display: contents;
    }

    .product-breadcrumb {
        order: 1;
        margin-bottom: 0.35rem;
    }

    .product-kicker {
        order: 2;
        margin-bottom: 0.6rem;
    }

    .product-title {
        order: 3;
    }

    .product-stage-visual {
        order: 4;
        margin-top: 0.15rem;
        min-width: 0;
    }

    .product-price-row {
        order: 5;
        margin-top: 0.2rem;
    }

    .product-summary {
        order: 6;
        margin-top: 1.1rem;
    }

    .product-editorial-note {
        order: 7;
        margin-top: 0.9rem;
    }

    .product-art-meta-shell,
    .product-configurator {
        order: 8;
    }

    .product-action-row {
        order: 9;
    }

    .product-presence-grid {
        order: 10;
        margin-top: 1.75rem;
    }

    .product-stage-frame {
        padding: 0.75rem;
    }

    .product-stage-frame-art {
        padding: 0.95rem 0.95rem 1.15rem;
    }

    .product-slide-art {
        padding: 2.6rem 0.85rem 0;
    }

    .product-title {
        font-size: clamp(3rem, 15vw, 4.5rem);
    }

    .product-breadcrumb-item,
    .product-admin-link {
        letter-spacing: 0.14em;
    }

    .product-action-row {
        flex-direction: column;
        align-items: stretch;
    }

    .product-option-grid {
        display: flex;
        flex-wrap: nowrap;
        gap: 0.65rem;
        width: 100%;
        max-width: 100%;
        overflow-x: auto;
        overflow-y: hidden;
        padding-bottom: 0.2rem;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
        box-sizing: border-box;
        overscroll-behavior-x: contain;
        -webkit-overflow-scrolling: touch;
        touch-action: pan-x;
    }

    .product-option-grid::-webkit-scrollbar {
        display: none;
    }

    .product-option-card {
        flex: 0 0 82%;
        min-width: 0;
        scroll-snap-align: start;
    }

    .product-option-top,
    .success-item-row,
    .sales-order-item-row {
        flex-direction: column;
        align-items: flex-start;
    }

    .product-carousel-controls {
        right: 0.8rem;
        bottom: 0.8rem;
        gap: 0.55rem;
    }

    .product-carousel-button {
        width: 2.5rem;
        height: 2.5rem;
    }

    .product-carousel-count {
        padding: 0.6rem 0.75rem;
    }

    .product-slide-copy {
        left: 1rem;
        right: 1rem;
        bottom: 1rem;
    }

    .product-slide-title {
        font-size: clamp(1.45rem, 7.2vw, 2rem);
    }

    .product-slide-detail,
    .product-slide-variant-meta,
    .product-slide-availability,
    .product-slide-sample-badge {
        display: none;
    }

    .product-carousel-looks {
        display: flex;
        flex-wrap: nowrap;
        gap: 0.65rem;
        width: 100%;
        max-width: 100%;
        overflow-x: auto;
        overflow-y: hidden;
        padding-bottom: 0.2rem;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
        box-sizing: border-box;
        overscroll-behavior-x: contain;
        -webkit-overflow-scrolling: touch;
        touch-action: pan-x;
    }

    .product-carousel-looks::-webkit-scrollbar {
        display: none;
    }

    .product-look-card {
        display: flex;
        flex: 0 0 54%;
        flex-direction: column;
        gap: 0.5rem;
        align-items: stretch;
        min-width: 0;
        padding: 0.72rem 0.78rem;
        scroll-snap-align: start;
    }

    .product-look-thumb-wrap {
        display: block;
        width: 100%;
        aspect-ratio: 0.86;
    }

    .product-look-thumb {
        width: 100%;
        height: 100%;
        aspect-ratio: auto;
        object-fit: cover;
    }

    .product-look-card:hover,
    .product-look-card.is-active {
        transform: none;
    }

    .product-look-card.is-active {
        border-width: 1px;
    }

    .product-look-title {
        font-size: 0.98rem;
        line-height: 1.02;
    }

    .product-look-detail,
    .product-look-variant-copy,
    .product-look-availability,
    .product-look-sample-label {
        display: none;
    }

    .product-note-card {
        padding: 1.2rem;
    }

    .filter-link {
        min-width: auto;
        padding: 0.8rem 1.15rem;
    }

    .product-info-spread {
        padding: 1rem 1rem 1.15rem;
        flex-direction: column;
        align-items: flex-start;
    }

    .product-config-head {
        flex-direction: column;
        align-items: flex-start;
    }

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

    .success-item-pricing,
    .sales-order-item-pricing {
        min-width: 0;
        text-align: left;
    }

    .product-name {
        font-size: 0.96rem;
    }

    .footer {
        padding-top: 6rem;
    }

    .cart-item {
        gap: 1rem;
    }

    .cart-item-image {
        width: 5.5rem;
    }

    .summary-card {
        padding: 1.4rem;
    }

    .checkout-form-grid,
    .payment-chip-group,
    .sales-stats,
    .sales-dashboard-workspaces,
    .sales-analytics-stats,
    .sales-dashboard-support-grid,
    .sales-dashboard-settings-grid,
    .sales-dashboard-analytics-grid,
    .sales-analytics-grid,
    .sales-sheet-toolbar,
    .sales-filter-form,
    .sales-bulk-form,
    .sales-import-form {
        grid-template-columns: 1fr;
    }

    .sales-dashboard-shell {
        padding: 7rem 1.25rem 5rem;
    }

    .sales-order-badges {
        justify-content: flex-start;
    }

    .sales-dashboard-section-nav {
        gap: 0.55rem;
    }

    .sales-dashboard-section-link {
        width: 100%;
        justify-content: flex-start;
    }

    .summary-region-top,
    .success-region-header,
    .success-region-meta-item,
    .sales-dashboard-intro {
        flex-direction: column;
    }

    .sales-sheet-head {
        grid-template-columns: 1fr;
    }

    .summary-region-detected {
        max-width: none;
        text-align: left;
    }

    .cookie-banner {
        inset-inline: 0.75rem;
        width: auto;
    }

    .cookie-banner-actions {
        justify-content: stretch;
    }

    .cookie-banner-button {
        flex: 1 1 100%;
    }

    .checkout-field-full {
        grid-column: auto;
    }

    .footer-top {
        padding-bottom: 1.4rem;
    }

    .footer-eyebrow,
    .footer-description,
    .footer-cta-panel,
    .footer-story {
        display: none;
    }

    .footer-grid {
        grid-template-columns: 1fr 1fr;
        gap: 1.35rem 1rem;
        padding: 1.6rem 0 1.4rem;
    }

    .footer-intro {
        gap: 0;
    }

    .footer-brand-block {
        max-width: none;
    }

    .footer-logo {
        margin-bottom: 0;
        font-size: clamp(2.9rem, 14vw, 4.9rem);
        line-height: 0.9;
    }

    .footer-brand-mark-wrap {
        width: 2.5rem;
        margin-bottom: 0.55rem;
    }

    .footer h6 {
        margin-bottom: 0.7rem;
        font-size: 0.66rem;
        letter-spacing: 0.18em;
    }

    .footer-link {
        margin-bottom: 0.45rem;
        font-size: 0.9rem;
    }

    .footer-payments {
        gap: 0.55rem;
    }

    .footer-payment {
        min-width: 2.35rem;
        height: 2.35rem;
        padding-inline: 0.7rem;
    }

    .footer-meta {
        letter-spacing: 0.12em;
        line-height: 1.6;
    }

.success-actions {
        width: 100%;
        flex-direction: column;
    }
}

@media (max-width: 1200px) {
    .sales-sheet-head {
        grid-template-columns: 1fr;
    }

    .sales-filter-form {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 820px) {
    .sales-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sales-sheet-toolbar,
    .sales-dashboard-support-grid,
    .sales-filter-form,
    .sales-bulk-form,
    .sales-import-form {
        grid-template-columns: 1fr;
    }
}
