:root {
            --ink: #090c12;
            --panel: #10141e;
            --panel2: #151a25;
            --gold: #d8b36d;
            --gold2: #f0d18b;
            --cream: #f7f0e6;
            --muted: #b8b8c0;
            --serif: Georgia, 'Times New Roman', serif;
            --sans: Arial, Helvetica, sans-serif
        }

        * {
            box-sizing: border-box
        }

        html {
            scroll-behavior: smooth
        }

        body {
            margin: 0;
            background: var(--ink);
            color: var(--cream);
            font-family: var(--sans)
        }

        a {
            color: inherit
        }

        button,
        select,
        input,
        textarea {
            font: inherit
        }

        .site-header {
            position: sticky;
            z-index: 30;
            top: 0;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 24px;
            padding: 12px 5%;
            background: #090c12ed;
            border-bottom: 1px solid #d8b36d28;
            backdrop-filter: blur(14px)
        }

        .brand {
            display: flex;
            align-items: center;
            text-decoration: none
        }

        .brand img {
            width: 112px;
            height: 48px;
            object-fit: contain
        }

        .main-nav {
            display: flex;
            align-items: center;
            gap: 24px
        }

        .main-nav a {
            text-decoration: none;
            color: #d6d0c7;
            font-size: 11px;
            letter-spacing: .08em;
            text-transform: uppercase
        }

        .main-nav a:hover {
            color: var(--gold2)
        }

        .header-actions {
            display: flex;
            align-items: center;
            gap: 10px
        }

        .bag-button,
        .menu-button {
            border: 1px solid #d8b36d66;
            border-radius: 999px;
            background: transparent;
            color: var(--gold2);
            padding: 10px 15px;
            cursor: pointer
        }

        .menu-button {
            display: none
        }

        .hero {
            position: relative;
            isolation: isolate;
            min-height: 475px;
            display: grid;
            align-items: center;
            padding: 60px 9%;
            overflow: hidden;
            --hero-image: url('/images/storefront-hero.png');
            background: linear-gradient(90deg, #090b10ed 0%, #090b10a8 42%, #090b1030 75%), var(--hero-image) center 52%/cover
        }

        .hero:after {
            content: '✦';
            position: absolute;
            z-index: -1;
            right: 7%;
            bottom: 12%;
            font-size: 180px;
            color: #e6c57b22;
            animation: float 7s ease-in-out infinite
        }

        .eyebrow,
        .kicker {
            color: var(--gold);
            font-size: 10px;
            letter-spacing: .19em;
            text-transform: uppercase;
            font-weight: 700
        }

        .hero-copy {
            max-width: 500px
        }

        .hero h1,
        .section-title {
            font: 500 clamp(42px, 6vw, 78px)/.98 var(--serif);
            letter-spacing: -.045em;
            margin: 17px 0
        }

        .hero p {
            max-width: 430px;
            color: #d3d0cc;
            font: 14px/1.8 var(--sans)
        }

        .button-gold {
            display: inline-flex;
            align-items: center;
            gap: 20px;
            margin-top: 14px;
            padding: 14px 20px;
            background: var(--gold);
            color: #19130d;
            text-decoration: none;
            font-size: 11px;
            font-weight: bold;
            border: 1px solid var(--gold2);
            border-radius: 3px;
            transition: .25s
        }

        .button-gold:hover {
            transform: translateY(-3px);
            box-shadow: 0 10px 28px #d8b36d35
        }

        .hero-proof {
            display: flex;
            gap: 18px;
            align-items: center;
            margin-top: 24px;
            color: #c3c1c3;
            font-size: 11px
        }

        .stars {
            color: #e9bd5d;
            letter-spacing: .16em;
            white-space: nowrap
        }

        .hero-proof > span + span {
            padding-left: 14px;
            border-left: 1px solid #d8b36d66
        }

        .hero-proof #deliveredOrderCount {
            color: var(--gold2)
        }

        .section {
            padding: 76px 5%
        }

        .section-head {
            display: flex;
            align-items: end;
            justify-content: space-between;
            gap: 26px;
            margin: 0 0 27px
        }

        .section-title {
            font-size: clamp(36px, 4vw, 58px);
            margin: 10px 0
        }

        .section-intro {
            max-width: 470px;
            margin: 0;
            color: #bfc0c7;
            font: 14px/1.7 var(--serif)
        }

        .collections {
            background: radial-gradient(ellipse at 0 0, #42241e33, transparent 40%), #0a0c12
        }

        .collection-layout {
            display: grid;
            grid-template-columns: minmax(0, 1fr) 250px;
            gap: 20px;
            align-items: start
        }

        .collection-grid {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 12px
        }

        .category-card {
            position: relative;
            min-height: 190px;
            overflow: hidden;
            border: 1px solid #d8b36d8a;
            border-radius: 8px;
            background: #17131a;
            text-decoration: none;
            isolation: isolate
        }

        .category-card img {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            z-index: -2;
            transition: transform .65s, filter .5s
        }

        .category-card:after {
            content: '';
            position: absolute;
            inset: 35% 0 0;
            z-index: -1;
            background: linear-gradient(transparent, #080a10e8)
        }

        .category-card:hover img {
            transform: scale(1.07);
            filter: saturate(1.12)
        }

        .category-caption {
            position: absolute;
            left: 13px;
            right: 12px;
            bottom: 12px;
            display: flex;
            align-items: center;
            gap: 9px;
            font: 15px var(--serif)
        }

        .category-icon,
        .list-icon {
            color: var(--gold2);
            font-size: 17px
        }

        .category-arrow {
            margin-left: auto;
            color: var(--gold2)
        }

        .category-carousel-controls {
            display: none
        }

        .category-carousel-controls button,
        .review-arrow {
            width: 34px;
            height: 34px;
            border: 1px solid #d8b36d66;
            border-radius: 50%;
            color: var(--gold2);
            background: #10131a;
            cursor: pointer
        }

        .category-list {
            max-height: 560px;
            overflow: auto;
            border: 1px solid #d8b36d5c;
            border-radius: 9px;
            background: linear-gradient(150deg, #191418, #0d1118);
            scrollbar-width: thin;
            scrollbar-color: #b58a4b #10131a
        }

        .category-list-head {
            position: sticky;
            top: 0;
            background: #15131a;
            padding: 16px;
            border-bottom: 1px solid #ffffff16
        }

        .category-list-head h3 {
            margin: 7px 0 3px;
            font: 22px var(--serif)
        }

        .category-list-head small {
            color: #a7a5ad
        }

        .category-list nav {
            display: grid;
            padding: 3px 13px 12px
        }

        .category-link {
            display: grid;
            grid-template-columns: 24px 1fr auto;
            align-items: center;
            gap: 5px;
            min-height: 33px;
            padding: 5px 8px;
            border-bottom: 1px solid #ffffff12;
            text-decoration: none;
            color: #e1d8cb;
            font: 13px var(--serif);
            transition: .2s
        }

        .category-link:hover {
            color: var(--gold2);
            transform: translateX(3px)
        }

        .category-link .arrow {
            margin-right: 5px;
            color: var(--gold)
        }

        .collection-note {
            text-align: center;
            color: #e0c58e;
            font: italic 14px var(--serif);
            margin: 28px 0 0
        }

        .collection-note span {
            margin: 0 14px;
            color: #b38d4d
        }

        .campaign {
            margin: 0 5% 24px;
            min-height: 280px;
            display: flex;
            align-items: center;
            padding: 40px 8%;
            border: 1px solid #d8b36d66;
            border-radius: 12px;
            background: linear-gradient(90deg, #080a0fe8, #080a0f4b), url('https://images.unsplash.com/photo-1605100804763-247f67b3557e?auto=format&fit=crop&w=1800&q=88') center 52%/cover
        }

        .campaign h2 {
            max-width: 560px;
            font: 48px/.98 var(--serif);
            margin: 12px 0
        }

        .campaign p {
            color: #e2ddd6;
            font-size: 13px
        }

        .products {
            background: linear-gradient(135deg, #141927, #0c1018 75%)
        }

        .shop-filters {
            display: flex;
            gap: 10px;
            align-items: end
        }

        .filter-label {
            display: grid;
            gap: 6px;
            color: var(--gold);
            font-size: 9px;
            letter-spacing: .1em;
            text-transform: uppercase
        }

        .filter-label select {
            height: 42px;
            min-width: 160px;
            padding: 0 35px 0 13px;
            border: 1px solid #d8b36d70;
            border-radius: 999px;
            background: #0b0d13;
            color: #f4ead8;
            font-size: 11px;
            text-transform: none;
            letter-spacing: 0
        }

        .product-grid {
            display: grid;
            grid-template-columns: repeat(5, minmax(0, 1fr));
            gap: 12px
        }

        .product-card {
            min-width: 0;
            animation: fadeUp .6s both;
            animation-delay: var(--delay, 0ms)
        }

        .product-photo {
            position: relative;
            aspect-ratio: 1.7;
            overflow: hidden;
            background: #15171c
        }

        .product-photo img {
            width: 100%;
            height: 100%;
            display: block;
            object-fit: cover;
            transition: transform .6s, filter .4s
        }

        .product-card:hover .product-photo img {
            transform: scale(1.04);
            filter: brightness(.83)
        }

        .product-badge {
            position: absolute;
            top: 7px;
            left: 7px;
            padding: 5px 6px;
            background: #0b0d12d9;
            border: 1px solid #d8b36d78;
            color: var(--gold2);
            font-size: 8px;
            letter-spacing: .1em;
            text-transform: uppercase
        }

        .quick-add {
            position: absolute;
            bottom: 6px;
            left: 6px;
            right: 6px;
            padding: 7px 4px;
            background: #10131ae8;
            border: 1px solid #d8b36d77;
            color: #f5e4bc;
            font-size: 10px;
            cursor: pointer;
            opacity: 0;
            transform: translateY(8px);
            transition: .25s
        }

        .product-card:hover .quick-add,
        .quick-add:focus-visible {
            opacity: 1;
            transform: translateY(0)
        }

        .product-info {
            padding: 6px 1px
        }

        .product-info h3 {
            margin: 0 0 3px;
            font: 13px/1.2 var(--serif)
        }

        .product-meta {
            display: flex;
            justify-content: space-between;
            gap: 4px;
            color: #aeb0ba;
            font-size: 9px
        }

        .product-meta strong {
            color: #f6f0e6
        }

        .product-dots { display: none !important }

        .empty-products {
            grid-column: 1/-1;
            padding: 45px;
            text-align: center;
            color: #c7b890;
            border: 1px solid #d8b36d44
        }

        .elegance {
            display: grid;
            grid-template-columns: 1.05fr 1fr;
            align-items: center;
            gap: 7%;
            padding: 80px 10%;
            background: linear-gradient(130deg, #0d121a, #101726)
        }

        .elegance-photo {
            height: 430px;
            overflow: hidden;
            border: 1px solid #d8b36d68
        }

        .elegance-photo img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 1s
        }

        .elegance:hover .elegance-photo img {
            transform: scale(1.04)
        }

        .elegance-copy h2 {
            font: clamp(38px, 4vw, 58px)/1.04 var(--serif);
            margin: 14px 0
        }

        .elegance-copy p {
            max-width: 480px;
            color: #bcbec6;
            font-size: 13px;
            line-height: 1.8
        }

        .benefits {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 14px;
            margin: 22px 0;
            color: #e5d6b7;
            font-size: 11px
        }

        .benefits b {
            color: var(--gold);
            margin-right: 7px
        }

        .feedback {
            position: relative;
            isolation: isolate;
            overflow: hidden;
            padding: 78px 6%;
            background: linear-gradient(90deg, #080b10ed, #111522df), url('https://images.unsplash.com/photo-1617171511579-c2711d7a91f6?auto=format&fit=crop&w=1800&q=86') center/cover fixed
        }

        .feedback:before {
            content: '';
            position: absolute;
            inset: -20%;
            z-index: -1;
            background: radial-gradient(ellipse at 20% 45%, #d8b36d22, transparent 42%), radial-gradient(ellipse at 80% 50%, #43649726, transparent 40%);
            animation: glow 12s ease-in-out infinite alternate
        }

        .feedback-heading {
            text-align: center;
            margin-bottom: 28px
        }

        .feedback-heading h2 {
            font: clamp(38px, 4vw, 56px) var(--serif);
            margin: 10px
        }

        .feedback-heading p {
            color: #bfc0c7;
            font-size: 13px
        }

        .review-wrap {
            max-width: 820px;
            margin: 0 auto 26px;
            display: grid;
            grid-template-columns: 40px 1fr 40px;
            align-items: center;
            gap: 12px
        }

        .review-card {
            min-height: 195px;
            display: grid;
            place-content: center;
            text-align: center;
            padding: 28px 8%;
            border: 1px solid #d8b36d55;
            border-radius: 12px;
            background: #10141eec;
            box-shadow: 0 22px 65px #0006;
            transition: opacity .3s, transform .3s
        }

        .review-card blockquote {
            margin: 17px 0;
            color: #fff5e5;
            font: clamp(21px, 2.4vw, 28px)/1.4 var(--serif)
        }

        .review-card small {
            color: var(--gold);
            letter-spacing: .15em;
            text-transform: uppercase
        }

        .review-image {
            justify-self: center;
            width: 72px;
            height: 72px;
            object-fit: cover;
            border: 1px solid var(--gold);
            border-radius: 50%;
            box-shadow: 0 0 20px #d8b36d35
        }

        .review-dots {
            display: flex;
            justify-content: center;
            gap: 7px;
            margin-top: 16px
        }

        .review-dots button {
            border: 0;
            border-radius: 9px;
            width: 7px;
            height: 7px;
            background: #ffffff55;
            cursor: pointer
        }

        .review-dots button.active {
            width: 22px;
            background: var(--gold)
        }

        .feedback-form {
            max-width: 850px;
            margin: auto;
            padding: 24px;
            border: 1px solid #d8b36d42;
            border-radius: 12px;
            background: linear-gradient(120deg, #090c12e8, #111621d9), url('/images/storefront-hero.png') center/cover;
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 14px
        }

        .feedback-form h3 {
            grid-column: 1/-1;
            margin: 0;
            font: 24px var(--serif);
            color: #f2dfb9
        }

        .feedback-form p {
            grid-column: 1/-1;
            margin: -8px 0 0;
            color: #b8bac4;
            font-size: 12px
        }

        .feedback-form label {
            display: grid;
            gap: 7px;
            color: #d7c9ac;
            font-size: 10px
        }

        .feedback-form input,
        .feedback-form textarea,
        .feedback-form select {
            width: 100%;
            padding: 12px;
            border: 1px solid #ffffff25;
            border-radius: 7px;
            background: #080b11;
            color: #fff
        }

        .feedback-form select,
        .filter-label select {
            color-scheme: dark
        }

        .feedback-form select option,
        .filter-label select option {
            background: #10141e;
            color: #f7f0e6
        }

        .feedback-form input[type="file"] {
            padding: 6px;
            border-color: #d8b36d70;
            background: #10141e;
            color: #f0d18b;
            cursor: pointer
        }

        .feedback-form input[type="file"]::file-selector-button {
            margin-right: 12px;
            padding: 7px 12px;
            border: 1px solid #f0d18b;
            border-radius: 5px;
            background: #d8b36d;
            color: #090c12;
            font: 600 11px Arial, Helvetica, sans-serif;
            cursor: pointer;
            transition: background-color .2s, color .2s
        }

        .feedback-form input[type="file"]::file-selector-button:hover {
            background: #f0d18b;
            color: #090c12
        }

        .feedback-form input[type="file"]:focus-visible {
            outline: 2px solid #f0d18b;
            outline-offset: 2px
        }

        .feedback-form textarea {
            min-height: 78px;
            resize: vertical
        }

        .feedback-form .wide {
            grid-column: 1/-1
        }

        .rating-stars {
            display: flex;
            gap: 6px
        }

        .rating-stars button {
            padding: 0;
            border: 0;
            background: transparent;
            color: #51483a;
            font-size: 25px;
            cursor: pointer
        }

        .rating-stars button.selected {
            color: var(--gold)
        }

        .rating-stars button,
        .rating-stars button.selected {
            color: var(--gold)
        }

        .feedback-submit {
            align-self: center;
            justify-self: start;
            padding: 12px 17px;
            border: 1px solid var(--gold);
            background: var(--gold);
            color: #15110c;
            font-size: 11px;
            font-weight: bold;
            cursor: pointer
        }

        .form-message {
            align-self: center;
            color: var(--gold2);
            font-size: 11px
        }

        .promo {
            position: relative;
            overflow: hidden;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 25px;
            padding: 58px 10%;
            background: linear-gradient(90deg, #080a10ed, #111827a8), url('https://images.unsplash.com/photo-1601121141461-9d6647bca1ed?auto=format&fit=crop&w=1800&q=86') center/cover;
            border-block: 1px solid #d8b36d44
        }

        .promo h2 {
            font: clamp(34px, 4vw, 50px)/1.05 var(--serif);
            margin: 10px 0
        }

        .promo p {
            color: #c1c1c9;
            font-size: 13px
        }

        .site-footer {
            padding: 42px 7% 18px;
            background: #07090e
        }

        .footer-columns {
            display: grid;
            grid-template-columns: 1.1fr 2fr 1fr;
            gap: 30px
        }

        .site-footer h4 {
            color: var(--gold2);
            font: 11px var(--sans);
            letter-spacing: .12em;
            text-transform: uppercase
        }

        .site-footer p,
        .site-footer a {
            color: #b9bac1;
            font-size: 11px;
            line-height: 1.8
        }

        .footer-cats {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 3px 14px
        }

        .site-footer a {
            text-decoration: none
        }

        .site-footer a:hover {
            color: var(--gold2)
        }

        .footer-bottom {
            display: flex;
            justify-content: space-between;
            gap: 18px;
            border-top: 1px solid #ffffff18;
            margin-top: 28px;
            padding-top: 15px;
            color: #92939c;
            font-size: 10px
        }

        .toast {
            position: fixed;
            z-index: 80;
            right: 20px;
            bottom: 20px;
            padding: 14px 18px;
            background: #171a22;
            border: 1px solid #d8b36d77;
            color: #f4e5c3;
            box-shadow: 0 10px 30px #0008;
            opacity: 0;
            transform: translateY(12px);
            transition: .25s;
            pointer-events: none
        }

        .toast.show {
            opacity: 1;
            transform: none
        }

        .reveal {
            opacity: 0;
            transform: translateY(18px);
            transition: opacity .7s, transform .7s
        }

        .reveal.visible {
            opacity: 1;
            transform: none
        }

        @keyframes fadeUp {
            from {
                opacity: 0;
                transform: translateY(14px)
            }

            to {
                opacity: 1;
                transform: none
            }
        }

        @keyframes float {
            50% {
                transform: translateY(-12px) rotate(8deg)
            }
        }

        @keyframes glow {
            to {
                transform: translateX(3%) scale(1.04)
            }
        }

        @media(max-width:980px) {
            .collection-layout {
                grid-template-columns: minmax(0, 1fr) 220px
            }

            .category-card {
                min-height: 165px
            }

            .product-grid {
                grid-template-columns: repeat(5, minmax(0, 1fr))
            }

            .footer-columns {
                grid-template-columns: 1fr 2fr
            }

            .footer-columns>div:last-child {
                grid-column: 1/-1
            }
        }

        @media(max-width:720px) {
            .hero-proof {
                flex-wrap: wrap;
                gap: 10px 12px
            }

            .site-header {
                padding: 9px 5%
            }

            .brand img {
                width: 100px
            }

            .menu-button {
                display: inline-block
            }

            .main-nav {
                display: none;
                position: absolute;
                top: 100%;
                left: 0;
                right: 0;
                padding: 18px 6%;
                background: #0b0d13;
                border-bottom: 1px solid #d8b36d44;
                flex-direction: column;
                align-items: flex-start
            }

            .main-nav.open {
                display: flex
            }

            .hero {
                min-height: 420px;
                padding: 50px 7%
            }

            .section {
                padding: 58px 5%
            }

            .section-head {
                align-items: flex-start;
                flex-direction: column
            }

            .collection-layout {
                grid-template-columns: 1fr
            }

            .collection-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr))
            }

            .category-card {
                min-height: 155px
            }

            .category-list {
                max-height: 560px
            }

            .shop-filters {
                width: 100%
            }

            .filter-label {
                min-width: 0;
                flex: 1
            }

            .filter-label select {
                min-width: 0;
                width: 100%
            }

            .product-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 12px
            }

            .quick-add {
                opacity: 1;
                transform: none
            }

            .elegance {
                grid-template-columns: 1fr;
                padding: 55px 7%;
                gap: 30px
            }

            .elegance-photo {
                height: 350px
            }

            .feedback {
                background-attachment: scroll
            }

            .feedback-form {
                grid-template-columns: 1fr;
                background-position: center
            }

            .feedback-form h3,
            .feedback-form p,
            .feedback-form .wide {
                grid-column: auto
            }

            .promo {
                padding: 44px 7%;
                align-items: flex-start;
                flex-direction: column
            }

            .footer-columns {
                grid-template-columns: 1fr 1fr
            }

            .footer-columns>div:first-child {
                grid-column: 1/-1
            }

            .footer-cats {
                grid-template-columns: repeat(2, 1fr)
            }
        }

        @media(max-width:420px) {
            .hero h1 {
                font-size: 44px
            }

            .collection-grid {
                gap: 8px
            }

            .category-card {
                min-height: 135px
            }

            .category-caption {
                left: 8px;
                right: 7px;
                gap: 6px;
                font-size: 13px
            }

            .product-grid {
                gap: 9px
            }

            .product-info h3 {
                font-size: 15px
            }

            .product-meta {
                font-size: 9px
            }

            .review-wrap {
                grid-template-columns: 30px 1fr 30px;
                gap: 5px
            }

            .review-arrow {
                width: 29px;
                height: 29px
            }

            .footer-columns {
                grid-template-columns: 1fr
            }

            .footer-columns>div:first-child,
            .footer-columns>div:last-child {
                grid-column: auto
            }

            .footer-bottom {
                flex-direction: column
            }
        }

        @media(prefers-reduced-motion:reduce) {

            *,
            *:before,
            *:after {
                scroll-behavior: auto !important;
                animation-duration: .01ms !important;
                animation-iteration-count: 1 !important;
                transition-duration: .01ms !important
            }
        }

.announcement-bar {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 12px;
            min-height: 27px;
            padding: 5px 12px;
            background: #180f12;
            border-bottom: 1px solid #d8b36d25;
            color: #c9b58f;
            font: 9px var(--sans);
            letter-spacing: .11em;
            text-transform: uppercase
        }

        .announcement-bar span {
            color: var(--gold)
        }

        .site-header {
            min-height: 76px;
            padding: 9px 5%
        }

        .brand img {
            width: 118px;
            height: 52px;
            object-fit: contain
        }

        .main-nav a {
            display: flex;
            align-items: center;
            gap: 6px
        }

        .nav-spark {
            color: var(--gold);
            font-size: 13px
        }

        .header-actions {
            gap: 15px
        }

        .icon-button {
            display: grid;
            place-items: center;
            width: 38px;
            height: 38px;
            border: 1px solid #d8b36d55;
            border-radius: 50%;
            background: transparent;
            color: var(--gold2);
            cursor: pointer;
            transition: .2s
        }

        .icon-button svg,
        .bag-button svg {
            width: 17px;
            height: 17px;
            fill: none;
            stroke: currentColor;
            stroke-width: 1.5;
            stroke-linecap: round;
            stroke-linejoin: round
        }

        .icon-button:hover {
            background: #d8b36d;
            color: #17120c
        }

        .bag-button {
            display: flex;
            align-items: center;
            gap: 8px;
            padding: 9px 13px;
            font-size: 11px
        }

        .bag-count {
            display: grid;
            place-items: center;
            min-width: 19px;
            height: 19px;
            border-radius: 50%;
            background: var(--gold);
            color: #17120c;
            font-size: 10px;
            font-weight: bold
        }

        .intro-splash {
            position: fixed;
            z-index: 1000;
            inset: 0;
            display: grid;
            place-content: center;
            justify-items: center;
            gap: 15px;
            background: radial-gradient(ellipse at 50% 48%, #24171a, #080a0f 68%);
            transition: opacity .65s ease, visibility .65s ease
        }

        .intro-splash.finished {
            opacity: 0;
            visibility: hidden;
            pointer-events: none
        }

        .intro-splash img {
            position: relative;
            z-index: 1;
            width: min(230px, 48vw);
            height: 150px;
            object-fit: contain;
            animation: introMark .9s both cubic-bezier(.2, .75, .2, 1);
            filter: drop-shadow(0 0 20px #d8b36d32)
        }

        .intro-video {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            opacity: .88
        }

        .intro-skip {
            position: absolute;
            z-index: 3;
            right: 20px;
            bottom: 20px;
            border: 1px solid #d8b36d88;
            border-radius: 999px;
            padding: 10px 16px;
            background: #090c12d9;
            color: var(--cream);
            cursor: pointer
        }

        .intro-caption {
            color: var(--gold2);
            font: italic 12px var(--serif);
            letter-spacing: .18em;
            animation: introText .7s .2s both
        }

        .intro-orbit {
            position: absolute;
            left: 50%;
            top: calc(50% - 43px);
            width: 210px;
            height: 210px;
            transform: translate(-50%, -50%);
            border: 1px solid #d8b36d3d;
            border-radius: 50%;
            animation: orbitIn 1.2s both
        }

        .intro-orbit:before,
        .intro-orbit:after {
            content: '✦';
            position: absolute;
            color: var(--gold2);
            font-size: 13px
        }

        .intro-orbit:before {
            top: 14px;
            left: 50%;
            animation: orbitSpark 2.8s linear infinite
        }

        .intro-orbit:after {
            bottom: 30px;
            right: 8px;
            font-size: 8px
        }

        .menu-button {
            font-size: 0
        }

        .menu-button:after {
            content: '☰';
            font-size: 17px
        }

        @keyframes introMark {
            from {
                opacity: 0;
                transform: translateY(12px) scale(.94);
                filter: blur(5px)
            }

            to {
                opacity: 1;
                transform: none;
                filter: drop-shadow(0 0 20px #d8b36d32)
            }
        }

        @keyframes introText {
            from {
                opacity: 0;
                letter-spacing: .35em
            }

            to {
                opacity: 1;
                letter-spacing: .18em
            }
        }

        @keyframes orbitIn {
            from {
                opacity: 0;
                transform: translate(-50%, -50%) scale(.78) rotate(-30deg)
            }

            to {
                opacity: 1;
                transform: translate(-50%, -50%) scale(1) rotate(0)
            }
        }

        @keyframes orbitSpark {
            to {
                transform: rotate(360deg) translateX(96px) rotate(-360deg)
            }
        }

        @media(max-width:720px) {
            .announcement-bar {
                font-size: 8px;
                letter-spacing: .05em
            }

            .site-header {
                min-height: 65px
            }

            .header-actions {
                gap: 8px
            }

            .icon-button {
                width: 34px;
                height: 34px
            }

            .bag-button {
                gap: 6px;
                padding: 8px 10px
            }

            .brand img {
                width: 102px;
                height: 46px
            }

            .main-nav {
                top: calc(100% + 27px)
            }
        }

        @media(prefers-reduced-motion:reduce) {
            .intro-splash {
                display: none !important
            }
        }

.site-header {
            display: grid;
            grid-template-columns: auto 1fr auto;
            gap: 24px;
            min-height: 76px;
            padding: 10px 5%
        }

        .main-nav {
            justify-content: center
        }

        .header-right {
            display: flex;
            align-items: center;
            gap: 15px
        }

        .header-search {
            display: flex;
            align-items: center;
            height: 37px;
            border-bottom: 1px solid #d8b36d58
        }

        .header-search input {
            width: 135px;
            border: 0;
            outline: 0;
            background: transparent;
            color: #f4ead8;
            font: 11px var(--sans)
        }

        .header-search input::placeholder {
            color: #96939a
        }

        .header-search button,
        .header-icon {
            display: grid;
            place-items: center;
            width: 30px;
            height: 30px;
            border: 0;
            background: transparent;
            color: var(--gold2);
            cursor: pointer
        }

        .header-search svg,
        .header-icon svg,
        .bag-button svg,
        .footer-contact svg,
        .footer-follow svg {
            width: 17px;
            height: 17px;
            fill: none;
            stroke: currentColor;
            stroke-width: 1.5;
            stroke-linecap: round;
            stroke-linejoin: round
        }

        .header-icon:hover,
        .header-search button:hover {
            color: #fff
        }

        .mobile-menu {
            display: none;
            border: 0;
            background: transparent;
            color: var(--gold2);
            font-size: 20px;
            cursor: pointer
        }

        .footer-main {
            display: grid;
            grid-template-columns: 1.05fr 2fr 1.15fr 1fr;
            gap: 32px;
            padding: 40px 7% 28px
        }

        .footer-about .brand img {
            width: 100px;
            height: 64px;
            object-position: left center
        }

        .footer-about p {
            max-width: 220px;
            color: #adb0b9;
            font: 11px/1.75 var(--sans)
        }

        .site-footer h4 {
            display: flex;
            align-items: center;
            gap: 8px;
            margin: 0 0 16px;
            color: var(--gold2);
            font: 700 10px var(--sans);
            letter-spacing: .13em;
            text-transform: uppercase
        }

        .footer-heading-star {
            color: var(--gold);
            font-size: 14px
        }

        .footer-cats {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 10px 15px
        }

        .footer-cats a,
        .footer-contact>a,
        .footer-follow>a {
            display: flex;
            align-items: center;
            gap: 8px;
            color: #c9c6c4;
            font: 10px/1.5 var(--sans);
            text-decoration: none;
            transition: color .2s, transform .2s
        }

        .footer-cats a:hover,
        .footer-contact>a:hover,
        .footer-follow>a:hover {
            color: var(--gold2);
            transform: translateX(2px)
        }

        .footer-icon {
            width: 14px;
            height: 14px;
            flex: none;
            fill: none;
            stroke: var(--gold);
            stroke-width: 1.5;
            stroke-linecap: round;
            stroke-linejoin: round
        }

        .footer-contact,
        .footer-follow {
            display: flex;
            flex-direction: column;
            align-items: flex-start;
            gap: 11px
        }

        .footer-contact h4,
        .footer-follow h4 {
            margin-bottom: 3px
        }

        .footer-bottom {
            margin: 0 7%;
            padding: 15px 0 19px;
            border-top: 1px solid #ffffff1c
        }

        .footer-bottom nav {
            display: flex;
            gap: 16px
        }

        .footer-bottom nav a {
            color: #aaaab2;
            text-decoration: none
        }

        .footer-bottom nav a:hover {
            color: var(--gold2)
        }

        @media(max-width:1000px) {
            .site-header {
                grid-template-columns: auto 1fr;
                gap: 14px
            }

            .main-nav {
                grid-column: 1/-1;
                grid-row: 2;
                justify-content: center;
                gap: 17px
            }

            .header-right {
                grid-column: 2;
                grid-row: 1;
                justify-self: end
            }

            .footer-main {
                grid-template-columns: 1fr 2fr;
                gap: 25px
            }

            .footer-contact,
            .footer-follow {
                padding-top: 5px
            }
        }

        @media(max-width:720px) {
            .site-header {
                display: flex;
                justify-content: space-between;
                gap: 10px;
                position: sticky;
                top: 0
            }

            .main-nav {
                display: none;
                position: absolute;
                top: 100%;
                left: 0;
                right: 0;
                z-index: 4;
                grid-column: auto;
                grid-row: auto;
                padding: 18px 6%;
                background: #0b0d13;
                border-bottom: 1px solid #d8b36d44;
                flex-direction: column;
                align-items: flex-start
            }

            .main-nav.open {
                display: flex
            }

            .header-right {
                gap: 6px
            }

            .header-search input {
                width: 95px
            }

            .header-icon {
                display: none
            }

            .bag-button span:not(.bag-count) {
                display: none
            }

            .mobile-menu {
                display: inline-block
            }

            .footer-main {
                grid-template-columns: 1fr 1fr;
                padding: 32px 6% 23px;
                gap: 25px 18px
            }

            .footer-about {
                grid-column: 1/-1
            }

            .footer-cats {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 10px
            }

            .footer-bottom {
                margin: 0 6%;
                align-items: flex-start;
                flex-direction: column
            }

            .footer-bottom nav {
                flex-wrap: wrap;
                gap: 8px 15px
            }
        }

        @media(max-width:420px) {
            .header-search input {
                width: 74px;
                font-size: 10px
            }

            .footer-main {
                grid-template-columns: 1fr
            }

            .footer-about {
                grid-column: auto
            }

            .footer-cats {
                grid-template-columns: repeat(2, minmax(0, 1fr))
            }
        }

.account-backdrop {
            position: fixed;
            z-index: 100;
            inset: 0;
            display: grid;
            place-items: center;
            padding: 20px;
            background: #05070cce;
            backdrop-filter: blur(7px)
        }

        .account-backdrop[hidden] {
            display: none
        }

        .account-card {
            position: relative;
            width: min(440px, 100%);
            padding: 32px;
            border: 1px solid #d8b36d6b;
            border-radius: 12px;
            background: linear-gradient(145deg, #17161c, #0e121a);
            box-shadow: 0 25px 90px #0009
        }

        .account-card [hidden],
        .store-dialog-card [hidden] {
            display: none !important
        }

        .account-card h2 {
            font: 34px var(--serif);
            margin: 10px 0
        }

        .account-card>p {
            color: #afb0b9;
            font-size: 12px;
            line-height: 1.6
        }

        .account-close {
            position: absolute;
            right: 14px;
            top: 12px;
            border: 0;
            background: none;
            color: var(--gold2);
            font-size: 24px;
            cursor: pointer
        }

        .account-card form {
            display: grid;
            gap: 15px;
            margin-top: 20px
        }

        .account-card label {
            display: grid;
            gap: 7px;
            color: #d7c9ac;
            font-size: 10px
        }

        .account-card input {
            padding: 12px;
            border: 1px solid #ffffff25;
            border-radius: 7px;
            background: #080b11;
            color: #fff
        }

        .account-switch {
            margin-top: 16px;
            padding: 0;
            border: 0;
            background: none;
            color: var(--gold2);
            text-decoration: underline;
            cursor: pointer
        }

        .store-dialog-backdrop {
            position: fixed;
            z-index: 100;
            inset: 0;
            display: grid;
            place-items: center;
            overflow-y: auto;
            padding: 20px;
            background: #05070cce;
            backdrop-filter: blur(7px)
        }

        .store-dialog-backdrop[hidden] {
            display: none
        }

        .store-dialog-card {
            position: relative;
            width: min(480px, 100%);
            max-height: calc(100vh - 40px);
            overflow-y: auto;
            padding: 32px;
            border: 1px solid #d8b36d6b;
            border-radius: 12px;
            background: linear-gradient(145deg, #17161c, #0e121a);
            box-shadow: 0 25px 90px #0009
        }

        .store-dialog-card h2 {
            margin: 10px 0;
            font: 34px var(--serif)
        }

        .store-dialog-card>p {
            color: #afb0b9;
            font-size: 12px;
            line-height: 1.6
        }

        .store-dialog-card form {
            display: grid;
            gap: 15px;
            margin-top: 20px
        }

        .store-dialog-card label {
            display: grid;
            gap: 7px;
            color: #d7c9ac;
            font-size: 10px
        }

        .store-dialog-card input,
        .store-dialog-card textarea {
            width: 100%;
            padding: 12px;
            border: 1px solid #ffffff25;
            border-radius: 7px;
            background: #080b11;
            color: #fff
        }

        .store-dialog-card textarea {
            min-height: 78px;
            resize: vertical
        }

        .store-dialog-card .store-wide {
            grid-column: 1/-1
        }

        .store-dialog-card .row2 {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 12px
        }

        .store-dialog-close {
            position: absolute;
            right: 14px;
            top: 12px;
            border: 0;
            background: none;
            color: var(--gold2);
            font-size: 24px;
            cursor: pointer
        }

        .store-dialog-message {
            min-height: 18px;
            color: var(--gold2);
            font-size: 12px
        }

        .store-dialog-message.error {
            color: #ff9b91
        }

        .store-order-summary {
            margin: 16px 0;
            padding: 13px;
            border: 1px solid #d8b36d42;
            color: #e5d6b7;
            font-size: 12px;
            line-height: 1.8
        }

        .newsletter {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 24px;
            padding: 36px 10%;
            border-top: 1px solid #d8b36d44;
            background: #10141e
        }

        .visually-hidden {
            position: absolute;
            width: 1px;
            height: 1px;
            padding: 0;
            margin: -1px;
            overflow: hidden;
            clip: rect(0, 0, 0, 0);
            white-space: nowrap;
            border: 0
        }

        .newsletter h2 {
            margin: 0 0 7px;
            font: 27px var(--serif)
        }

        .newsletter p {
            margin: 0;
            color: #bfc0c7;
            font-size: 12px
        }

        .newsletter form {
            display: flex;
            gap: 8px;
            width: min(440px, 100%)
        }

        .newsletter input {
            min-width: 0;
            flex: 1;
            padding: 12px;
            border: 1px solid #d8b36d70;
            border-radius: 3px;
            background: #080b11;
            color: #fff
        }

        @media(max-width:720px) {
            .newsletter {
                align-items: stretch;
                flex-direction: column;
                padding: 32px 6%
            }
        }
