:root {
    --gold: #c9952e;
    --gold2: #e0b95c;
    --black: #090909;
    --cream: #f7f2e9;
    --ink: #1a1712;
    --muted: #756e64
}

* {
    box-sizing: border-box
}

html {
    scroll-behavior: smooth
}

body {
    margin: 0;
    font-family: 'DM Sans', sans-serif;
    color: var(--ink);
    background: #fff;
    overflow-x: hidden
}

body.lock {
    overflow: hidden
}

a {
    text-decoration: none;
    color: inherit;
    cursor: pointer
}

button {
    font: inherit;
    cursor: pointer
}

.preloader {
    position: fixed;
    inset: 0;
    background: #050505;
    color: white;
    z-index: 9999;
    display: grid;
    place-content: center;
    text-align: center;
    transition: .7s
}

.preloader.hide {
    opacity: 0;
    visibility: hidden
}

.preloader .flame {
    font-size: 44px;
    color: var(--gold);
    animation: flicker .7s infinite alternate
}

.preloader span {
    font-family: 'Cormorant Garamond';
    font-size: 26px;
    letter-spacing: 8px;
    margin-top: 14px
}

.announcement {
    height: 34px;
    background: linear-gradient(90deg, #a87317, #e5bd59, #a87317);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 24px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.4px
}

.header {
    height: 112px;
    background: #050505;
    color: white;
    position: relative;
    z-index: 100;
    transition: .35s
}

.header.sticky {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: 86px;
    box-shadow: 0 8px 35px #0005
}

.head-inner {
    max-width: 1480px;
    height: 100%;
    margin: auto;
    padding: 0 38px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px
}

.brand img {
    width: 310px;
    height: 82px;
    object-fit: contain
}

.header.sticky .brand img {
    height: 66px
}

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

.header nav a {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.2px;
    position: relative
}

.header nav a:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -10px;
    width: 0;
    height: 1px;
    background: var(--gold);
    transition: .3s
}

.header nav a:hover:after {
    width: 100%
}

.actions {
    display: flex;
    gap: 7px
}

.icon-btn {
    width: 42px;
    height: 42px;
    border: 0;
    background: transparent;
    color: white;
    font-size: 18px;
    position: relative
}

.icon-btn:hover {
    color: var(--gold)
}

.cart-count {
    position: absolute;
    right: 0;
    top: 1px;
    background: var(--gold);
    color: #080808;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    font-size: 10px;
    display: grid;
    place-items: center;
    font-weight: 800
}

.menu-btn {
    display: none
}

.hero {
    height: 720px;
    position: relative;
    background: #111;
    color: white;
    overflow: hidden
}

.hero-bg {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(0, 0, 0, .86) 0%, rgba(0, 0, 0, .56) 40%, rgba(0, 0, 0, .18) 72%), url('https://golden-flame.co.za/cdn/shop/files/20250904_Golden_Flame_Black_Rock_Studio_0001.jpg?v=1760027020&width=1800') center/cover;
    transform: scale(1.03);
    animation: herozoom 12s ease-in-out infinite alternate
}

.hero-content {
    position: relative;
    z-index: 2;
    max-width: 760px;
    padding: 120px 0 0 max(6vw, 50px)
}

.eyebrow {
    display: block;
    color: var(--gold2);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 3px;
    margin-bottom: 22px
}

.eyebrow.dark {
    color: #9a6b1d
}

.hero h1,
.section-head h2,
.story h2,
.banner h2,
.newsletter h2,
.quick-modal h2 {
    font-family: 'Cormorant Garamond';
    font-weight: 600;
    margin: 0;
    line-height: .92
}

.hero h1 {
    font-size: 82px
}

.hero h1 em,
.section-head h2 em,
.story h2 em,
.banner h2 em,
.newsletter h2 em {
    font-family: 'Italianno';
    font-weight: 400;
    color: var(--gold2)
}

.hero h1 em {
    font-size: 92px
}

.hero-content>p {
    font-size: 18px;
    line-height: 1.7;
    max-width: 570px;
    color: #eee;
    margin: 30px 0
}

.gold-btn,
.light-btn,
.outline-btn {
    border: 0;
    display: inline-flex;
    align-items: center;
    gap: 18px;
    padding: 18px 27px;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.1px;
    transition: .3s
}

.gold-btn {
    background: var(--gold);
    color: #080808
}

.gold-btn:hover {
    background: #e0b34e;
    transform: translateY(-2px)
}

.text-btn {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.2px;
    margin-left: 28px
}

.hero-side {
    position: absolute;
    z-index: 2;
    right: 35px;
    top: 50%;
    display: flex;
    align-items: center;
    gap: 12px;
    transform: rotate(90deg);
    font-size: 10px;
    letter-spacing: 2px
}

.hero-side div {
    width: 70px;
    height: 1px;
    background: #fff8
}

.scroll-down {
    position: absolute;
    z-index: 2;
    right: 45px;
    bottom: 35px;
    font-size: 10px;
    letter-spacing: 2px;
    display: flex;
    gap: 12px;
    align-items: center
}

.promise {
    min-height: 105px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    background: #0a0a0a;
    color: white;
    border-top: 1px solid #c9952e55
}

.promise>div {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    border-right: 1px solid #ffffff17
}

.promise i {
    font-size: 24px;
    color: var(--gold)
}

.promise p {
    display: flex;
    flex-direction: column;
    gap: 5px;
    margin: 0
}

.promise b {
    font-size: 11px;
    letter-spacing: 1.5px
}

.promise span {
    font-size: 11px;
    color: #aaa
}

.section {
    padding: 105px max(5vw, 35px)
}

.section-head {
    max-width: 1400px;
    margin: 0 auto 52px;
    display: flex;
    justify-content: space-between;
    align-items: end
}

.section-head.center {
    display: block;
    text-align: center;
    max-width: 760px
}

.section-head h2 {
    font-size: 58px
}

.section-head p {
    max-width: 410px;
    line-height: 1.7;
    color: var(--muted)
}

.collection-grid {
    max-width: 1400px;
    margin: auto;
    display: grid;
    grid-template-columns: 1.15fr .85fr;
    grid-template-rows: 300px 300px;
    gap: 18px
}

.collection-card {
    position: relative;
    overflow: hidden;
    background: #111;
    color: white
}

.collection-card.tall {
    grid-row: span 2
}

.collection-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .8s;
    filter: brightness(.68)
}

.collection-card:hover img {
    transform: scale(1.07);
    filter: brightness(.55)
}

.collection-card>div {
    position: absolute;
    left: 35px;
    right: 30px;
    bottom: 30px
}

.collection-card small {
    font-size: 10px;
    letter-spacing: 2px;
    color: #e7c16a
}

.collection-card h3 {
    font-family: 'Cormorant Garamond';
    font-size: 42px;
    margin: 7px 0 13px
}

.collection-card a {
    font-size: 11px;
    letter-spacing: 1.4px;
    font-weight: 700
}

.products-section {
    background: var(--cream)
}

.product-slider-wrap {
    max-width: 1480px;
    margin: auto;
    position: relative
}

.product-slider {
    display: flex;
    gap: 18px;
    overflow-x: auto;
    scrollbar-width: none;
    scroll-behavior: smooth;
    padding: 5px 3px 35px
}

.product-slider::-webkit-scrollbar {
    display: none
}

.product-card {
    flex: 0 0 calc(25% - 14px);
    min-width: 280px;
    background: white
}

.product-image {
    height: 390px;
    position: relative;
    overflow: hidden;
    background: #eee
}

.product-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .55s
}

.product-card:hover .product-image img {
    transform: scale(1.055)
}

.badge {
    position: absolute;
    left: 14px;
    top: 14px;
    background: #0b0b0b;
    color: white;
    padding: 7px 10px;
    font-size: 9px;
    letter-spacing: 1.2px
}

.product-tools {
    position: absolute;
    right: 12px;
    top: 12px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    transform: translateX(60px);
    transition: .35s
}

.product-card:hover .product-tools {
    transform: none
}

.product-tools button {
    width: 40px;
    height: 40px;
    border: 0;
    border-radius: 50%;
    background: white;
    font-size: 15px
}

.product-tools button:hover {
    background: #0b0b0b;
    color: white
}

.add-cart {
    position: absolute;
    left: 14px;
    right: 14px;
    bottom: 14px;
    height: 48px;
    border: 0;
    background: #080808;
    color: white;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.1px;
    transform: translateY(75px);
    transition: .35s
}

.product-card:hover .add-cart {
    transform: none
}

.add-cart:hover {
    background: var(--gold);
    color: #111
}

.product-info {
    padding: 20px 18px 24px
}

.stars {
    color: #c28b23;
    font-size: 12px;
    letter-spacing: 1px
}

.stars span {
    color: #8a8278;
    letter-spacing: 0
}

.product-info h3 {
    font-family: 'Cormorant Garamond';
    font-size: 27px;
    margin: 9px 0 5px
}

.notes {
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: .7px;
    color: #8b8176
}

.price {
    font-size: 21px;
    font-weight: 700;
    margin-top: 14px
}

.price del {
    color: #aaa;
    font-weight: 400;
    margin-left: 8px
}

.slide-arrow {
    position: absolute;
    z-index: 4;
    top: 42%;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    border: 1px solid #bbb;
    background: #fff
}

.slide-arrow.prev {
    left: -25px
}

.slide-arrow.next {
    right: -25px
}

.outline-btn {
    border: 1px solid #b48a43;
    background: transparent;
    margin-top: 15px
}

.center {
    text-align: center
}

.story {
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-height: 720px;
    background: #090909;
    color: white
}

.story-media {
    position: relative;
    overflow: hidden
}

.story-media>img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: brightness(.58)
}

.story-mark {
    position: absolute;
    left: 50px;
    bottom: 45px;
    display: flex;
    align-items: center;
    gap: 20px
}

.story-mark i {
    font-size: 34px;
    color: var(--gold)
}

.story-mark span {
    font-family: 'Cormorant Garamond';
    font-size: 17px;
    letter-spacing: 3px
}

.story-copy {
    padding: 100px 9vw 80px 7vw;
    align-self: center
}

.story h2 {
    font-size: 68px
}

.story .lead {
    font-family: 'Cormorant Garamond';
    font-size: 25px;
    line-height: 1.45;
    color: #eee
}

.story-copy>p:not(.lead) {
    line-height: 1.8;
    color: #aaa
}

.story-copy .gold-btn {
    margin-top: 20px
}

.signature {
    font-family: 'Italianno';
    font-size: 42px;
    color: #d7b565;
    margin-top: 30px
}

.banner {
    min-height: 600px;
    background: linear-gradient(90deg, #000d, #0005), url('../images/3.png') center/cover fixed;
    color: white;
    display: flex;
    align-items: center
}

.banner-inner {
    padding-left: max(8vw, 50px)
}

.banner h2 {
    font-size: 76px
}

.banner p {
    font-size: 17px;
    max-width: 500px;
    line-height: 1.7
}

.light-btn {
    background: white;
    color: #111;
    margin-top: 18px
}

.values {
    background: white
}

.value-grid {
    max-width: 1400px;
    margin: auto;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    border: 1px solid #e5ddd1
}

.value-grid>div {
    text-align: center;
    padding: 50px 30px;
    border-right: 1px solid #e5ddd1
}

.value-grid>div:last-child {
    border: 0
}

.value-grid i {
    font-size: 34px;
    color: #b98528
}

.value-grid h3 {
    font-family: 'Cormorant Garamond';
    font-size: 26px
}

.value-grid p {
    font-size: 18px;
    line-height: 1.7;
    color: #777
}

.reviews {
    background: #f5efe5;
    text-align: center;
    padding: 100px 20px
}

.quote-icon {
    font-family: Georgia;
    font-size: 100px;
    color: #c99a41;
    height: 65px
}

.review {
    display: none;
    max-width: 900px;
    margin: auto
}

.review.active {
    display: block;
    animation: fade .5s
}

.review blockquote {
    font-family: 'Cormorant Garamond';
    font-size: 34px;
    line-height: 1.35
}

.review b,
.review span {
    display: block;
    font-size: 11px;
    letter-spacing: 1.5px;
    margin-top: 8px
}

.review span {
    color: #8b8176
}

.review-nav {
    margin-top: 35px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 24px;
    font-size: 11px
}

.review-nav button {
    width: 42px;
    height: 42px;
    border: 1px solid #bfae92;
    background: transparent;
    border-radius: 50%
}

.newsletter {
    background: #090909;
    color: white;
    text-align: center;
    padding: 90px 20px
}

.newsletter h2 {
    font-size: 64px
}

.newsletter p {
    color: #aaa
}

.newsletter form {
    max-width: 650px;
    margin: 30px auto 0;
    display: flex;
    border-bottom: 1px solid #777
}

.newsletter input {
    flex: 1;
    padding: 18px 5px;
    background: transparent;
    border: 0;
    outline: 0;
    color: white;
    font-size: 15px
}

.newsletter button {
    background: transparent;
    border: 0;
    color: #d9b256;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px
}

footer {
    background: #050505;
    color: #aaa;
    border-top: 1px solid #c9952e55;
    padding: 70px max(5vw, 35px) 20px
}

.footer-grid {
    max-width: 1400px;
    margin: auto;
    display: grid;
    grid-template-columns: 1.6fr .7fr .8fr 1.4fr;
    gap: 60px
}

.footer-brand img {
    width: 310px;
    max-width: 100%
}

.footer-grid h4 {
    color: white;
    font-size: 19px;
    letter-spacing: 2px;
    margin-bottom: 24px
}

.footer-grid a {
    display: block;
    font-size: 16px;
    margin: 13px 0
}

.footer-grid p {
    font-size: 16px;
    line-height: 1.7
}

.socials {
    display: flex;
    gap: 10px;
    margin-top: 22px
}

.socials i {
    width: 36px;
    height: 36px;
    border: 1px solid #444;
    border-radius: 50%;
    display: grid;
    place-items: center;
    color: white
}

.foot-email {
    display: flex;
    border-bottom: 1px solid #666
}

.foot-email input {
    flex: 1;
    background: transparent;
    border: 0;
    padding: 15px 0;
    color: white;
    outline: 0
}

.foot-email button {
    border: 0;
    background: transparent;
    color: var(--gold)
}

.contact i {
    width: 24px;
    color: #d5a94c
}

.copyright {
    max-width: 1400px;
    margin: 50px auto 0;
    padding-top: 22px;
    border-top: 1px solid #222;
    font-size: 16px;
    display: flex;
    justify-content: space-between
}

.copyright span {
    font-size: 24px
}

.search-panel {
    position: fixed;
    inset: 0;
    background: #080808f8;
    color: white;
    z-index: 500;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: .4s
}

.search-panel.open {
    opacity: 1;
    visibility: visible
}

.search-panel>div {
    width: min(800px, 80vw)
}

.search-panel small {
    letter-spacing: 2px;
    color: #aaa
}

.search-panel input {
    width: 100%;
    margin-top: 20px;
    background: transparent;
    border: 0;
    border-bottom: 1px solid #777;
    padding: 15px 50px 15px 0;
    color: white;
    font-family: 'Cormorant Garamond';
    font-size: 42px;
    outline: 0
}

.search-close,
.modal-close,
.cart-close {
    position: absolute;
    right: 35px;
    top: 30px;
    background: none;
    border: 0;
    color: inherit;
    font-size: 25px
}

.cart-drawer {
    position: fixed;
    right: 0;
    top: 0;
    width: min(460px, 92vw);
    height: 100%;
    background: white;
    z-index: 600;
    transform: translateX(105%);
    transition: .45s;
    display: flex;
    flex-direction: column
}

.cart-drawer.open {
    transform: none
}

.cart-head {
    padding: 30px;
    border-bottom: 1px solid #eee;
    position: relative
}

.cart-head h3 {
    font-family: 'Cormorant Garamond';
    font-size: 32px;
    margin: 0
}

.cart-head .cart-count {
    position: static;
    display: inline-grid
}

.cart-close {
    top: 32px;
    color: #111
}

.cart-items {
    padding: 25px;
    flex: 1;
    overflow: auto
}

.empty {
    text-align: center;
    margin-top: 100px
}

.empty i {
    font-size: 45px;
    color: #ccc
}

.empty h3 {
    font-family: 'Cormorant Garamond';
    font-size: 28px
}

.cart-row {
    display: grid;
    grid-template-columns: 80px 1fr auto;
    gap: 14px;
    padding: 15px 0;
    border-bottom: 1px solid #eee
}

.cart-row img {
    width: 80px;
    height: 90px;
    object-fit: cover
}

.cart-row h4 {
    font-family: 'Cormorant Garamond';
    font-size: 20px;
    margin: 3px 0
}

.remove {
    border: 0;
    background: none
}

.cart-foot {
    padding: 25px;
    border-top: 1px solid #eee
}

.cart-foot>div {
    display: flex;
    justify-content: space-between;
    font-size: 18px;
    margin-bottom: 18px
}

.full {
    width: 100%;
    justify-content: center
}

.overlay {
    position: fixed;
    inset: 0;
    background: #0009;
    z-index: 550;
    opacity: 0;
    visibility: hidden;
    transition: .3s
}

.overlay.open {
    opacity: 1;
    visibility: visible
}

.quick-modal {
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -45%);
    width: min(960px, 90vw);
    background: white;
    z-index: 700;
    display: grid;
    grid-template-columns: 1fr 1fr;
    opacity: 0;
    visibility: hidden;
    transition: .35s;
    box-shadow: 0 30px 80px #0008
}

.quick-modal.open {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%, -50%)
}

.quick-modal>img {
    width: 100%;
    height: 590px;
    object-fit: cover
}

.quick-modal>div {
    padding: 70px 55px
}

.quick-modal h2 {
    font-size: 52px;
    margin-bottom: 20px
}

.modal-desc {
    line-height: 1.8;
    color: #777
}

.modal-price {
    display: block;
    font-size: 22px;
    margin: 25px 0
}

.to-top {
    position: fixed;
    right: 22px;
    bottom: 22px;
    width: 45px;
    height: 45px;
    border: 0;
    background: #c9952e;
    z-index: 80;
    opacity: 0;
    transform: translateY(20px);
    transition: .3s
}

.to-top.show {
    opacity: 1;
    transform: none
}

.reveal {
    opacity: 0;
    transform: translateY(30px);
    transition: .75s ease
}

.reveal.visible {
    opacity: 1;
    transform: none
}

@keyframes herozoom {
    to {
        transform: scale(1.1)
    }
}

@keyframes flicker {
    to {
        transform: scale(.9);
        opacity: .75
    }
}

@keyframes fade {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@media(max-width:1100px) {
    .header nav {
        display: none
    }

    .menu-btn {
        display: block
    }

    .brand img {
        width: 260px
    }

    .product-card {
        flex-basis: calc(33.33% - 12px)
    }

    .footer-grid {
        grid-template-columns: 1fr 1fr
    }

    .hero h1 {
        font-size: 68px
    }

    .value-grid {
        grid-template-columns: 1fr 1fr
    }

    .value-grid>div {
        border-bottom: 1px solid #ddd
    }

    .story h2 {
        font-size: 56px
    }
}

@media(max-width:760px) {

    .announcement span:nth-of-type(n+2),
    .announcement b {
        display: none
    }

    .head-inner {
        padding: 0 15px
    }

    .header {
        height: 88px
    }

    .brand img {
        width: 180px;
        height: 65px
    }

    .actions .icon-btn:nth-child(2),
    .actions .icon-btn:nth-child(3) {
        display: none
    }

    .hero {
        height: 670px
    }

    .hero-content {
        padding: 100px 25px 0
    }

    .hero h1 {
        font-size: 52px
    }

    .hero h1 em {
        font-size: 60px
    }

    .hero-content>p {
        font-size: 15px
    }

    .text-btn {
        display: none
    }

    .promise {
        grid-template-columns: 1fr 1fr
    }

    .promise>div {
        padding: 22px 10px
    }

    .section {
        padding: 75px 20px
    }

    .section-head {
        display: block
    }

    .section-head h2 {
        font-size: 47px
    }

    .collection-grid {
        grid-template-columns: 1fr;
        grid-template-rows: 420px 300px 300px
    }

    .collection-card.tall {
        grid-row: auto
    }

    .product-card {
        flex-basis: 82%;
        min-width: 260px
    }

    .product-image {
        height: 360px
    }

    .slide-arrow {
        display: none
    }

    .story {
        grid-template-columns: 1fr
    }

    .story-media {
        height: 500px
    }

    .story-copy {
        padding: 70px 28px
    }

    .story h2 {
        font-size: 52px
    }

    .banner {
        min-height: 520px;
        background-attachment: scroll
    }

    .banner-inner {
        padding: 40px 25px
    }

    .banner h2 {
        font-size: 55px
    }

    .value-grid {
        grid-template-columns: 1fr
    }

    .value-grid>div {
        border-right: 0
    }

    .review blockquote {
        font-size: 27px
    }

    .newsletter h2 {
        font-size: 50px
    }

    .footer-grid {
        grid-template-columns: 1fr;
        gap: 30px
    }

    .copyright {
        display: block;
        line-height: 2
    }

    .quick-modal {
        grid-template-columns: 1fr;
        max-height: 90vh;
        overflow: auto
    }

    .quick-modal>img {
        height: 320px
    }

    .quick-modal>div {
        padding: 35px 25px
    }

    .quick-modal h2 {
        font-size: 40px
    }
}


/* =====================================================
   AMBASSADOR PREMIUM HERO SLIDER
===================================================== */

.hero-slider {
    position: relative;
    width: 100%;
    height: min(900px, calc(100vh - 90px));
    min-height: 680px;
    overflow: hidden;
    background: #050505;
    isolation: isolate;
}

.hero-slide {
    position: absolute;
    inset: 0;

    display: flex;
    align-items: center;

    padding: 80px max(7vw, 70px);

    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;

    opacity: 0;
    visibility: hidden;

    transform: scale(1.04);

    transition:
        opacity 1s ease,
        visibility 1s ease,
        transform 7s ease;

    z-index: 1;
}

.hero-slide::before {
    content: "";
    position: absolute;
    inset: 0;

    background:
        linear-gradient(180deg,
            rgba(0, 0, 0, .12),
            transparent 35%,
            rgba(0, 0, 0, .25));

    pointer-events: none;
}

.hero-slide.active {
    opacity: 1;
    visibility: visible;
    transform: scale(1);
    z-index: 2;
}


/* ================= CONTENT ================= */

.hero-content {
    position: relative;
    z-index: 5;

    width: min(760px, 62vw);

    color: #fff;

    opacity: 0;
    transform: translateY(35px);

    transition:
        opacity .9s ease .35s,
        transform .9s ease .35s;
}

.hero-slide.active .hero-content {
    opacity: 1;
    transform: translateY(0);
}


.hero-content .eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 13px;
    margin-bottom: 24px;
    color: #d9a52e;
    font-size: 10px;
    line-height: 1.4;
    font-weight: 700;
    letter-spacing: 4px;
}

.hero-content .eyebrow::before {
    content: "";
    width: 45px;
    height: 1px;
    background: #d9a52e;
}


/* ================= HEADING ================= */

.hero-content h1 {
    margin: 0;

    color: #fff;

    font-family: "Cormorant Garamond", Georgia, serif;

    font-size: clamp(68px, 6.3vw, 112px);
    line-height: .86;

    font-weight: 500;
    letter-spacing: -3px;
}

.hero-content h1 em {
    CONTAIN-INTRINSIC-BLOCK-SIZE: AUTO 100PX;
    line-height: 0;
    display: inline-block;
    margin-top: 17px;
    color: #d9a52e;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: 104px !important;
    line-height: -5px !important;
    line-height: 1;
    letter-spacing: -1px;
}

/* ================= DESCRIPTION ================= */

.hero-content p {
    max-width: 640px;

    margin: 32px 0 37px;

    color: rgba(255, 255, 255, .82);

    font-size: 19px;
    line-height: 1.75;

    font-weight: 400;
}


/* ================= BUTTONS ================= */

.hero-buttons {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 17px;
}

.gold-btn,
.hero-outline-btn {
    min-height: 58px;

    display: inline-flex;
    justify-content: center;
    align-items: center;

    gap: 14px;

    padding: 0 28px;

    text-decoration: none;

    font-size: 12px;
    font-weight: 800;

    letter-spacing: 1.8px;

    transition:
        background .3s ease,
        color .3s ease,
        border-color .3s ease,
        transform .3s ease;
}

.gold-btn {
    color: #080808;
    background: #d6a42d;
    border: 1px solid #d6a42d;
}

.gold-btn:hover {
    color: #111;
    background: #f0c75e;
    border-color: #f0c75e;

    transform: translateY(-3px);
}

.hero-outline-btn {
    color: #fff;

    border: 1px solid rgba(255, 255, 255, .45);
    background: rgba(255, 255, 255, .04);

    backdrop-filter: blur(6px);
}

.hero-outline-btn:hover {
    color: #080808;
    background: #fff;
    border-color: #fff;

    transform: translateY(-3px);
}

.gold-btn i,
.hero-outline-btn i {
    transition: transform .3s ease;
}

.gold-btn:hover i,
.hero-outline-btn:hover i {
    transform: translateX(5px);
}


/* ================= RIGHT LABEL ================= */

.hero-slide-label {
    position: absolute;

    right: max(5vw, 55px);
    top: 50%;

    z-index: 5;

    display: flex;
    flex-direction: column;
    align-items: center;

    gap: 13px;

    transform: translateY(-50%);
}

.hero-slide-label::before {
    content: "";

    width: 1px;
    height: 80px;

    margin-bottom: 7px;

    background:
        linear-gradient(transparent,
            rgba(216, 166, 47, .9));
}

.hero-slide-label span {
    color: #fff;

    font-family: "Cormorant Garamond", serif;

    font-size: 35px;
}

.hero-slide-label small {
    color: #d8a62f;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 4px;

    writing-mode: vertical-rl;
}


/* ================= ARROWS ================= */

.hero-arrow {
    position: absolute;

    top: 50%;

    z-index: 20;

    width: 55px;
    height: 55px;

    display: flex;
    justify-content: center;
    align-items: center;

    color: #fff;

    border: 1px solid rgba(255, 255, 255, .3);
    border-radius: 50%;

    background: rgba(0, 0, 0, .28);

    backdrop-filter: blur(10px);

    cursor: pointer;

    transform: translateY(-50%);

    transition: all .3s ease;
}

.hero-arrow:hover {
    color: #050505;

    border-color: #d9a52e;

    background: #d9a52e;
}

.hero-prev {
    left: 25px;
}

.hero-next {
    right: 25px;
}


/* ================= BOTTOM ================= */

.hero-bottom {
    position: absolute;

    left: max(7vw, 70px);
    bottom: 42px;

    z-index: 20;

    display: flex;
    align-items: center;

    gap: 35px;
}

.hero-counter {
    display: flex;
    align-items: center;

    gap: 12px;

    color: rgba(255, 255, 255, .55);

    font-size: 12px;
}

.hero-counter strong {
    color: #fff;

    font-family: "Cormorant Garamond", serif;

    font-size: 22px;
}

.counter-line {
    position: relative;

    width: 100px;
    height: 1px;

    overflow: hidden;

    background: rgba(255, 255, 255, .25);
}

.counter-line span {
    position: absolute;

    left: 0;
    top: 0;

    width: 0;
    height: 100%;

    background: #d9a52e;
}

.hero-slide.active~.hero-bottom .counter-line span {
    animation: heroProgress 6s linear forwards;
}

@keyframes heroProgress {
    from {
        width: 0;
    }

    to {
        width: 100%;
    }
}


/* ================= DOTS ================= */

.hero-dots {
    display: flex;
    align-items: center;

    gap: 9px;
}

.hero-dot {
    width: 8px;
    height: 8px;

    padding: 0;

    border: 0;
    border-radius: 50%;

    background: rgba(255, 255, 255, .4);

    cursor: pointer;

    transition: all .3s ease;
}

.hero-dot.active {
    width: 28px;

    border-radius: 20px;

    background: #d9a52e;
}


/* ================= SCROLL ================= */

.scroll-down {
    position: absolute;

    right: max(7vw, 70px);
    bottom: 40px;

    z-index: 20;

    display: flex;
    align-items: center;

    gap: 14px;

    color: rgba(255, 255, 255, .75);

    text-decoration: none;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 2.5px;

    transition: color .3s ease;
}

.scroll-down i {
    color: #d9a52e;

    animation: heroArrow 1.5s infinite;
}

.scroll-down:hover {
    color: #d9a52e;
}

@keyframes heroArrow {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(6px);
    }
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 1024px) {

    .hero-slider {
        height: 760px;
        min-height: 760px;
    }

    .hero-slide {
        padding:
            70px 70px 110px;
    }

    .hero-content {
        width: 80%;
    }

    .hero-content h1 {
        font-size: clamp(60px, 8vw, 82px);
    }

    .hero-content p {
        font-size: 17px;
    }

    .hero-slide-label {
        display: none;
    }

    .hero-bottom {
        left: 70px;
    }

    .scroll-down {
        right: 70px;
    }
}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .hero-slider {
        height: 720px;
        min-height: 720px;
    }

    .hero-slide {
        align-items: flex-end;

        padding:
            100px 22px 125px;

        background-position: 62% center !important;
    }

    .hero-slide::after {
        content: "";

        position: absolute;
        inset: 0;

        background:
            linear-gradient(0deg,
                rgba(0, 0, 0, .96) 0%,
                rgba(0, 0, 0, .76) 42%,
                rgba(0, 0, 0, .18) 100%);
    }

    .hero-content {
        width: 100%;

        z-index: 4;
    }

    .hero-content .eyebrow {
        margin-bottom: 17px;

        font-size: 9px;
        letter-spacing: 2.3px;
    }

    .hero-content .eyebrow::before {
        width: 25px;
    }

    .hero-content h1 {
        font-size: clamp(48px, 14vw, 67px);
        line-height: .9;

        letter-spacing: -2px;
    }

    .hero-content h1 em {
        margin-top: 11px;

        font-size: .68em;
    }

    .hero-content p {
        margin: 22px 0 27px;

        max-width: 95%;

        font-size: 15px;
        line-height: 1.65;
    }

    .hero-buttons {
        gap: 10px;
    }

    .gold-btn,
    .hero-outline-btn {
        min-height: 52px;

        padding: 0 18px;

        font-size: 10px;
        letter-spacing: 1.2px;
    }

    .hero-arrow {
        top: auto;
        bottom: 29px;

        width: 42px;
        height: 42px;

        transform: none;
    }

    .hero-prev {
        left: auto;
        right: 72px;
    }

    .hero-next {
        right: 20px;
    }

    .hero-bottom {
        left: 22px;
        bottom: 38px;
    }

    .hero-counter {
        display: none;
    }

    .scroll-down {
        display: none;
    }
}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

    .hero-slider {
        height: 680px;
        min-height: 680px;
    }

    .hero-content h1 {
        font-size: 47px;
    }

    .hero-buttons {
        align-items: stretch;
        flex-direction: column;

        width: 100%;
    }

    .gold-btn,
    .hero-outline-btn {
        width: 100%;
    }

}

.hero-content h1 em {
    font-family: "allura" !important;
}

/* ===================================================
   AMBASSADOR HEADER
=================================================== */

.announcement-bar {
    width: 100%;
    height: 34px;

    background: linear-gradient(90deg,
            #c18a1d 0%,
            #e3bd5a 50%,
            #c18a1d 100%);

    color: #080808;
}

.announcement-inner {
    width: min(1320px, calc(100% - 60px));
    height: 100%;

    margin: auto;

    display: flex;
    align-items: center;
    justify-content: center;

    position: relative;
}

.announcement-text {
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 1px;
}

.announcement-text span {
    margin: 0 10px;
}


.announcement-social {
    position: absolute;
    right: 0;

    display: flex;
    align-items: center;
    gap: 17px;
}

.announcement-bar {
    padding-top: 27px;
    padding-bottom: 26px;
}

.announcement-social a {
    color: #090909;

    font-size: 20px;
    text-decoration: none;

    transition: .25s;
}

.announcement-social a:hover {
    opacity: .55;
    transform: translateY(-1px);
}


/* ===================================================
   MAIN HEADER
=================================================== */

.site-header {
    position: relative;
    /* NOT STICKY */
    z-index: 100;

    width: 100%;

    background: #030303;
    color: #fff;

    border-bottom: 1px solid rgba(210, 163, 49, .18);
}


.header-main {
    width: min(1320px, calc(100% - 60px));

    min-height: 116px;

    margin: auto;

    display: grid;
    grid-template-columns: 1fr 330px 1fr;

    align-items: center;
}


/* ===================================================
   SEARCH
=================================================== */

.header-search {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}


.search-form {
    width: 285px;
    height: 42px;

    display: flex;
    align-items: center;

    gap: 11px;

    padding: 0 16px;

    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 30px;

    background: #030303;

    transition: .3s ease;
}

.search-form:focus-within {
    border-color: #d4a334;

    box-shadow:
        0 0 0 3px rgba(212, 163, 52, .07);
}


.search-form i {
    color: #fff;
    font-size: 13px;
}


.search-form input {
    width: 100%;

    border: 0;
    outline: 0;

    background: transparent;

    color: #fff;

    font-family: inherit;
    font-size: 11px;
}


.search-form input::placeholder {
    color: rgba(255, 255, 255, .72);
}


/* ===================================================
   CENTER LOGO
=================================================== */

.main-logo {
    display: flex;
    justify-content: center;
    align-items: center;

    text-decoration: none;
}


.main-logo img {
    display: block;

    width: auto;
    height: 181px;
    max-width: 290px;

    object-fit: contain;
}


/* ===================================================
   RIGHT ICONS
=================================================== */

.header-icons {
    display: flex;
    justify-content: flex-end;
    align-items: center;

    gap: 10px;
}


.header-action,
.mobile-search-btn {
    position: relative;

    width: 44px;
    height: 44px;

    padding: 0;

    display: flex;
    justify-content: center;
    align-items: center;

    color: #fff;

    background: transparent;
    border: 1px solid transparent;
    border-radius: 50%;

    cursor: pointer;

    transition:
        color .25s ease,
        border-color .25s ease,
        background .25s ease,
        transform .25s ease;
}


.header-action i,
.mobile-search-btn i {
    font-size: 20px;
}


.header-action:hover,
.mobile-search-btn:hover {
    color: #d5a536;

    border-color: rgba(213, 165, 54, .35);

    background: rgba(213, 165, 54, .07);

    transform: translateY(-2px);
}


.cart-count {
    position: absolute;

    right: -1px;
    top: -2px;

    min-width: 19px;
    height: 19px;

    padding: 0 4px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #090909;
    background: #d6a434;

    border: 2px solid #030303;
    border-radius: 50px;

    font-size: 9px;
    font-weight: 900;
}


/* ===================================================
   NAVIGATION
=================================================== */

.desktop-navigation {
    min-height: 48px;

    display: flex;
    justify-content: center;
    align-items: center;

    gap: 43px;

    border-top: 1px solid rgba(255, 255, 255, .055);
}


.desktop-navigation a {
    position: relative;

    min-height: 48px;

    display: flex;
    align-items: center;

    gap: 7px;

    color: #fff;

    text-decoration: none;

    font-size: 12px;
    font-weight: 700;

    letter-spacing: .35px;

    transition: .25s ease;
}


.desktop-navigation a i {
    font-size: 8px;
}


.desktop-navigation a::after {
    content: "";

    position: absolute;

    left: 50%;
    bottom: 0;

    width: 0;
    height: 2px;

    background: #d6a434;

    transform: translateX(-50%);

    transition: width .25s ease;
}


.desktop-navigation a:hover,
.desktop-navigation a.active {
    color: #d6a434;
}


.desktop-navigation a:hover::after,
.desktop-navigation a.active::after {
    width: 100%;
}


/* ===================================================
   MOBILE ELEMENTS
=================================================== */

.mobile-menu-toggle,
.mobile-search-btn {
    display: none;
}


.mobile-navigation,
.mobile-nav-overlay {
    display: none;
}


/* ===================================================
   TABLET
=================================================== */

@media(max-width:1050px) {

    .header-main {
        grid-template-columns: 1fr 260px 1fr;
    }

    .main-logo img {
        height: 84px;
        max-width: 240px;
    }

    .search-form {
        width: 230px;
    }

    .desktop-navigation {
        gap: 25px;
    }

    .desktop-navigation a {
        font-size: 10px;
    }

}


/* ===================================================
   MOBILE
=================================================== */

@media(max-width:768px) {

    .announcement-bar {
        height: 30px;
    }

    .announcement-inner {
        width: calc(100% - 25px);
    }

    .announcement-text {
        width: 100%;

        text-align: center;

        white-space: nowrap;
        overflow: hidden;

        font-size: 8px;
        letter-spacing: .5px;
    }

    .announcement-text span {
        margin: 0 5px;
    }

    .announcement-social {
        display: none;
    }


    /* MAIN */

    .header-main {
        width: calc(100% - 28px);

        min-height: 82px;

        display: grid;

        grid-template-columns: 80px 1fr 110px;
    }


    /* MENU LEFT */

    .header-search {
        justify-content: flex-start;
    }

    .search-form {
        display: none;
    }

    .mobile-menu-toggle {
        width: 42px;
        height: 42px;

        display: flex;
        justify-content: center;
        align-items: center;

        padding: 0;

        color: #fff;
        background: transparent;

        border: 0;

        font-size: 21px;

        cursor: pointer;
    }


    /* LOGO */

    .main-logo img {
        height: 66px;
        width: auto;

        max-width: 175px;
    }


    /* ICONS */

    .header-icons {
        gap: 0;
    }

    .header-action,
    .mobile-search-btn {
        width: 36px;
        height: 40px;
    }

    .header-action i,
    .mobile-search-btn i {
        font-size: 17px;
    }

    .mobile-search-btn {
        display: flex;
    }

    .wishlist-toggle,
    .account-toggle {
        display: none;
    }


    /* DESKTOP NAV OFF */

    .desktop-navigation {
        display: none;
    }


    /* MOBILE OVERLAY */

    .mobile-nav-overlay {
        position: fixed;

        inset: 0;

        z-index: 998;

        display: block;

        background: rgba(0, 0, 0, .72);

        opacity: 0;
        visibility: hidden;

        transition: .3s ease;
    }

    .mobile-nav-overlay.active {
        opacity: 1;
        visibility: visible;
    }


    /* MOBILE DRAWER */

    .mobile-navigation {
        position: fixed;

        top: 0;
        left: 0;
        bottom: 0;

        z-index: 999;

        display: block;

        width: min(360px, 88vw);

        padding: 25px;

        background: #070707;

        transform: translateX(-105%);

        transition: transform .35s ease;

        overflow-y: auto;
    }

    .mobile-navigation.active {
        transform: translateX(0);
    }


    .mobile-nav-top {
        display: flex;
        justify-content: space-between;
        align-items: center;

        margin-bottom: 25px;

        padding-bottom: 18px;

        border-bottom: 1px solid rgba(255, 255, 255, .1);
    }

    .mobile-nav-top span {
        color: #d5a536;

        font-size: 13px;
        font-weight: 800;

        letter-spacing: 2px;
    }

    .mobile-nav-top button {
        width: 40px;
        height: 40px;

        color: #fff;
        background: transparent;

        border: 1px solid rgba(255, 255, 255, .15);
        border-radius: 50%;

        cursor: pointer;

        font-size: 18px;
    }


    .mobile-search-form {
        height: 46px;

        margin-bottom: 25px;

        padding: 0 15px;

        display: flex;
        align-items: center;

        gap: 10px;

        border: 1px solid rgba(255, 255, 255, .16);
        border-radius: 4px;
    }

    .mobile-search-form i {
        color: #d5a536;
    }

    .mobile-search-form input {
        width: 100%;

        color: #fff;
        background: transparent;

        border: 0;
        outline: 0;

        font-size: 13px;
    }


    .mobile-navigation nav {
        display: flex;
        flex-direction: column;
    }


    .mobile-navigation nav a {
        min-height: 55px;

        display: flex;
        justify-content: space-between;
        align-items: center;

        color: #fff;

        border-bottom: 1px solid rgba(255, 255, 255, .08);

        text-decoration: none;

        font-size: 12px;
        font-weight: 700;

        letter-spacing: 1px;
    }

    .mobile-navigation nav a:hover {
        color: #d5a536;
    }

}


/* ===================================================
   SMALL MOBILE
=================================================== */

@media(max-width:480px) {

    .announcement-text {
        font-size: 11px;
    }

    .header-main {
        grid-template-columns: 55px 1fr 78px;

        min-height: 76px;
    }

    .main-logo img {
        height: 145px;
        max-width: 150px;
    }

    .mobile-search-btn {
        display: none;
    }

    .header-icons {
        justify-content: flex-end;
    }

}

/* =========================================
   SHOP BY FRAGRANCE
========================================= */

.fragrance-section {
    background: #f7f4ed;
}

.fragrance-grid {
    width: min(1380px, calc(100% - 70px));
    margin: 55px auto 0;

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

.fragrance-card {
    position: relative;
    height: 470px;

    display: block;
    overflow: hidden;

    background: #111;
    text-decoration: none;
}

.fragrance-card img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition:
        transform .8s cubic-bezier(.2, .7, .2, 1),
        filter .5s ease;
}

.fragrance-overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(180deg,
            rgba(0, 0, 0, .05) 20%,
            rgba(0, 0, 0, .78) 100%);

    transition: .4s ease;
}

.fragrance-content {
    position: absolute;

    left: 34px;
    right: 34px;
    bottom: 31px;

    z-index: 2;

    color: #fff;

    transition: .4s ease;
}

.fragrance-content span {
    display: block;

    margin-bottom: 7px;

    color: #dcb04b;

    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2.5px;
}

.fragrance-content h3 {
    margin: 0 0 14px;

    font-family: "Cormorant Garamond", serif;
    font-size: 42px;
    line-height: 1;

    font-weight: 500;
}

.fragrance-content div {
    display: flex;
    align-items: center;

    gap: 10px;

    font-size: 10px;
    font-weight: 800;
    letter-spacing: 2px;

    opacity: 0;
    transform: translateY(10px);

    transition: .35s ease;
}

.fragrance-card:hover img {
    transform: scale(1.07);
}

.fragrance-card:hover .fragrance-overlay {
    background:
        linear-gradient(180deg,
            rgba(0, 0, 0, .12),
            rgba(0, 0, 0, .88));
}

.fragrance-card:hover .fragrance-content {
    bottom: 40px;
}

.fragrance-card:hover .fragrance-content div {
    opacity: 1;
    transform: translateY(0);
}


/* =========================================
   SIGNATURE COLLECTION
========================================= */

.signature-section {
    position: relative;

    min-height: 650px;

    display: grid;
    grid-template-columns: 1fr 1fr;

    overflow: hidden;

    background: #050505;
}

.signature-image {
    position: relative;
    min-height: 650px;
    overflow: hidden;
}

.signature-image::after {
    content: "";

    position: absolute;
    inset: 0;

    background:
        linear-gradient(90deg,
            transparent 60%,
            #050505 100%);
}

.signature-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform 1.2s ease;
}

.signature-section:hover .signature-image img {
    transform: scale(1.025);
}


.signature-content {
    position: relative;
    z-index: 2;

    max-width: 650px;

    padding: 90px 80px;

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}

.signature-small {
    margin-bottom: 20px;

    color: #d4a638;

    font-size: 10px;
    font-weight: 800;
    letter-spacing: 3px;
}

.signature-content h2 {
    margin: 0;

    color: #fff;

    font-family: "Cormorant Garamond", serif;
    font-size: clamp(58px, 5vw, 88px);
    font-weight: 500;
    line-height: .9;

    letter-spacing: -2px;
}

.signature-content h2 em {
    display: block;

    margin-top: 10px;

    color: #d6a638;

    font-weight: 400;
}

.signature-line {
    width: 60px;
    height: 1px;

    margin: 31px 0;

    background: #d6a638;
}

.signature-content p {
    max-width: 560px;

    margin: 0 0 35px;

    color: rgba(255, 255, 255, .68);

    font-size: 17px;
    line-height: 1.8;
}

.signature-decoration {
    position: absolute;

    right: -30px;
    bottom: -70px;

    color: rgba(212, 166, 56, .05);

    font-size: 280px;

    pointer-events: none;
}


/* =========================================
   WHY AMBASSADOR
========================================= */

.why-section {
    background: #fff;
}

.why-grid {
    width: min(1320px, calc(100% - 70px));

    margin: 60px auto 0;

    display: grid;
    grid-template-columns: repeat(4, 1fr);

    border-top: 1px solid #e6dfd2;
    border-bottom: 1px solid #e6dfd2;
}

.why-card {
    position: relative;

    min-height: 340px;

    padding: 52px 35px;

    border-right: 1px solid #e6dfd2;

    transition:
        transform .35s ease,
        background .35s ease;
}

.why-card:last-child {
    border-right: 0;
}

.why-card>span {
    position: absolute;

    right: 24px;
    top: 22px;

    color: #c9c2b5;

    font-family: "Cormorant Garamond", serif;
    font-size: 16px;
}

.why-icon {
    width: 66px;
    height: 66px;

    margin-bottom: 34px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid #d8ae50;
    border-radius: 50%;

    color: #b98528;

    font-size: 23px;

    transition: .35s ease;
}

.why-card h3 {
    margin: 0 0 14px;

    color: #111;

    font-family: "Cormorant Garamond", serif;
    font-size: 34px;
    font-weight: 600;
}

.why-card p {
    margin: 0;

    color: #777;

    font-size: 14px;
    line-height: 1.8;
}

.why-card:hover {
    background: #090909;
    transform: translateY(-8px);
}

.why-card:hover h3 {
    color: #fff;
}

.why-card:hover p {
    color: rgba(255, 255, 255, .65);
}

.why-card:hover .why-icon {
    color: #080808;
    background: #d6a638;

    transform: rotate(-8deg);
}


/* =========================================
   TABLET
========================================= */

@media(max-width:1000px) {

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

    .fragrance-card {
        height: 420px;
    }

    .signature-content {
        padding: 70px 45px;
    }

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

    .why-card:nth-child(2) {
        border-right: 0;
    }

    .why-card:nth-child(-n+2) {
        border-bottom: 1px solid #e6dfd2;
    }

}


/* =========================================
   MOBILE
========================================= */

@media(max-width:650px) {

    .fragrance-grid {
        width: calc(100% - 30px);

        margin-top: 35px;

        grid-template-columns: 1fr;
        gap: 12px;
    }

    .fragrance-card {
        height: 410px;
    }

    .fragrance-content {
        left: 24px;
        right: 24px;
        bottom: 27px;
    }

    .fragrance-content h3 {
        font-size: 38px;
    }

    .fragrance-content div {
        opacity: 1;
        transform: none;
    }


    .signature-section {
        display: block;
        min-height: 0;
    }

    .signature-image {
        min-height: 430px;
        height: 430px;
    }

    .signature-image::after {
        background:
            linear-gradient(180deg,
                transparent 60%,
                #050505 100%);
    }

    .signature-content {
        max-width: none;

        padding: 55px 25px 70px;
    }

    .signature-content h2 {
        font-size: 55px;
    }

    .signature-content p {
        font-size: 15px;
    }


    .why-grid {
        width: calc(100% - 30px);

        grid-template-columns: 1fr;
    }

    .why-card {
        min-height: auto;

        padding: 40px 25px;

        border-right: 0;
        border-bottom: 1px solid #e6dfd2;
    }

    .why-card:last-child {
        border-bottom: 0;
    }

}

.section-head.center p {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

/* =========================================
   PREMIUM WEBSITE ANIMATIONS
========================================= */

/* Reveal */
.reveal {
    opacity: 0;
    transform: translateY(45px);
    transition:
        opacity .9s cubic-bezier(.2, .7, .2, 1),
        transform .9s cubic-bezier(.2, .7, .2, 1);
}

.reveal.visible {
    opacity: 1;
    transform: translateY(0);
}

/* Left / Right Reveal */
.reveal-left {
    opacity: 0;
    transform: translateX(-60px);
    transition: all 1s cubic-bezier(.2, .7, .2, 1);
}

.reveal-right {
    opacity: 0;
    transform: translateX(60px);
    transition: all 1s cubic-bezier(.2, .7, .2, 1);
}

.reveal-left.visible,
.reveal-right.visible {
    opacity: 1;
    transform: translateX(0);
}


/* Headings */
.section-head .eyebrow,
.section-head h2,
.section-head p {
    transition:
        opacity .8s ease,
        transform .8s cubic-bezier(.2, .7, .2, 1);
}

.section-head.reveal .eyebrow {
    transform: translateY(12px);
}

.section-head.reveal h2 {
    transform: translateY(22px);
}

.section-head.reveal p {
    transform: translateY(28px);
}

.section-head.visible .eyebrow,
.section-head.visible h2,
.section-head.visible p {
    transform: translateY(0);
}


/* Collection Cards */
.collection-card {
    overflow: hidden;
    transition:
        transform .55s cubic-bezier(.2, .7, .2, 1),
        box-shadow .55s ease;
}

.collection-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 25px 65px rgba(0, 0, 0, .16);
}

.collection-card img {
    transition:
        transform 1.2s cubic-bezier(.2, .7, .2, 1),
        filter .8s ease;
}

.collection-card:hover img {
    transform: scale(1.08);
    filter: brightness(.82);
}

.collection-card h3,
.collection-card span,
.collection-card a {
    transition: transform .5s ease;
}

.collection-card:hover h3 {
    transform: translateY(-5px);
}

.collection-card:hover a {
    transform: translateX(7px);
}


/* Product Cards */
.product-card {
    transition:
        transform .5s cubic-bezier(.2, .7, .2, 1),
        box-shadow .5s ease;
}

.product-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 25px 55px rgba(0, 0, 0, .12);
}

.product-image {
    overflow: hidden;
}

.product-image img {
    transition: transform .8s cubic-bezier(.2, .7, .2, 1);
}

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


/* Product Icons */
.product-tools button {
    transform: translateX(20px) scale(.8);
    opacity: 0;
    transition:
        opacity .35s ease,
        transform .35s cubic-bezier(.2, .8, .2, 1),
        background .3s ease;
}

.product-card:hover .product-tools button {
    opacity: 1;
    transform: translateX(0) scale(1);
}

.product-tools button:nth-child(2) {
    transition-delay: .08s;
}

.product-tools button:hover {
    transform: scale(1.12) !important;
}


/* Add to Bag */
.add-cart {
    transition:
        transform .4s cubic-bezier(.2, .8, .2, 1),
        background .3s ease;
}

.product-card:hover .add-cart {
    transform: translateY(0);
}


/* Buttons */
.gold-btn,
.outline-btn,
.light-btn,
.text-btn {
    transition:
        transform .35s ease,
        box-shadow .35s ease,
        background .35s ease,
        color .35s ease;
}

.gold-btn:hover,
.light-btn:hover {
    transform: translateY(-4px);
    box-shadow: 0 14px 35px rgba(190, 139, 42, .30);
}

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

.gold-btn i,
.outline-btn i,
.light-btn i,
.text-btn i {
    transition: transform .35s ease;
}

.gold-btn:hover i,
.outline-btn:hover i,
.light-btn:hover i,
.text-btn:hover i {
    transform: translateX(6px);
}


/* Our Story Image */
.story-media {
    overflow: hidden;
}

.story-media>img {
    transition: transform 1.5s cubic-bezier(.2, .7, .2, 1);
}

.story:hover .story-media>img {
    transform: scale(1.045);
}


/* Story Logo / Badge subtle floating */
.story-mark {
    animation: storyFloat 5s ease-in-out infinite;
}

@keyframes storyFloat {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-12px);
    }
}


/* Value / Feature Cards */
.value-grid>div {
    transition:
        transform .45s ease,
        background .45s ease,
        box-shadow .45s ease;
}

.value-grid>div:hover {
    transform: translateY(-7px);
    box-shadow: 0 20px 45px rgba(0, 0, 0, .07);
}

.value-grid i {
    transition: transform .45s cubic-bezier(.2, .8, .2, 1);
}

.value-grid>div:hover i {
    transform: translateY(-6px) scale(1.1);
}


/* Banner Background Zoom */
.banner {
    overflow: hidden;
    background-size: cover;
    animation: bannerBreath 12s ease-in-out infinite alternate;
}

@keyframes bannerBreath {
    from {
        background-size: 100%;
    }

    to {
        background-size: 106%;
    }
}


/* Review Fade */
.review {
    transition:
        opacity .6s ease,
        transform .6s cubic-bezier(.2, .7, .2, 1);
}

.review.active {
    animation: reviewIn .7s ease both;
}

@keyframes reviewIn {
    from {
        opacity: 0;
        transform: translateY(18px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* Social Icons */
.socials a i {
    transition:
        transform .35s cubic-bezier(.2, .8, .2, 1),
        background .3s ease,
        color .3s ease;
}

.socials a:hover i {
    transform: translateY(-5px) rotate(5deg);
}


/* Cart / Quick View */
.cart-drawer {
    transition: transform .55s cubic-bezier(.16, 1, .3, 1);
}

.quick-modal {
    transition:
        opacity .35s ease,
        visibility .35s ease;
}

.quick-modal>div {
    transition: transform .45s cubic-bezier(.16, 1, .3, 1);
    transform: translateY(25px) scale(.97);
}

.quick-modal.open>div {
    transform: translateY(0) scale(1);
}


/* Image load animation */
img {
    transition: filter .5s ease;
}

img[loading="lazy"] {
    animation: imageReveal .8s ease both;
}

@keyframes imageReveal {
    from {
        opacity: 0;
        filter: blur(5px);
    }

    to {
        opacity: 1;
        filter: blur(0);
    }
}


/* Gold pulse for important elements */
.badge {
    animation: badgeGlow 3s ease-in-out infinite;
}

@keyframes badgeGlow {

    0%,
    100% {
        box-shadow: 0 0 0 rgba(185, 133, 40, 0);
    }

    50% {
        box-shadow: 0 0 20px rgba(185, 133, 40, .20);
    }
}


/* Mobile - keep animation smooth */
@media(max-width:768px) {

    .reveal {
        transform: translateY(25px);
    }

    .reveal-left,
    .reveal-right {
        transform: translateY(25px);
    }

    .reveal-left.visible,
    .reveal-right.visible {
        transform: translateY(0);
    }

    .product-tools button {
        opacity: 1;
        transform: none;
    }

    .banner {
        animation: none;
        background-size: cover;
    }
}


/* Accessibility */
@media(prefers-reduced-motion:reduce) {

    *,
    *::before,
    *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
    }
}

/* =========================================================
   AMBASSADOR PRODUCTS
   MOBILE ONLY — 2 PRODUCTS PER ROW
   Desktop/tablet design will NOT change
========================================================= */

@media only screen and (max-width: 767px) {

    /* ==============================
       SECTION
    ============================== */

    #shop.products-section {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }


    /* ==============================
       TURN SLIDER INTO 2-COLUMN GRID
    ============================== */

    #shop .product-slider-wrap {
        width: 100%;
        display: block;
        overflow: visible;
        padding: 0;
    }

    #shop .product-slider {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;

        gap: 12px !important;

        width: 100% !important;
        max-width: 100% !important;

        overflow: visible !important;
        overflow-x: visible !important;

        padding: 0 !important;
        margin: 0 !important;

        scroll-snap-type: none !important;
    }


    /* Hide desktop slider arrows */
    #shop .slide-arrow {
        display: none !important;
    }


    /* ==============================
       PRODUCT CARD
    ============================== */

    #shop .product-card {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        flex: none !important;
        flex-basis: auto !important;

        margin: 0 !important;
        padding: 0 !important;

        background: #fff;

        border: 1px solid #eee5d7 !important;
        border-radius: 13px !important;

        overflow: hidden;

        box-shadow:
            0 5px 18px rgba(34, 24, 10, 0.06) !important;

        transform: none !important;

        display: flex;
        flex-direction: column;
    }


    /* ==============================
       PRODUCT IMAGE
    ============================== */

    #shop .product-image {
        position: relative;

        width: 100% !important;
        height: auto !important;
        aspect-ratio: 1 / 1.08;

        overflow: hidden;

        background: #f8f5ef;

        margin: 0 !important;
    }

    #shop .product-image img {
        width: 100% !important;
        height: 100% !important;

        display: block;

        object-fit: cover !important;
        object-position: center !important;

        margin: 0 !important;

        transform: none !important;

        transition: transform .4s ease;
    }


    /* ==============================
       BADGE
    ============================== */

    #shop .badge {
        position: absolute;

        top: 8px !important;
        left: 8px !important;

        z-index: 4;

        padding: 5px 7px !important;

        border-radius: 20px;

        font-size: 7px !important;
        line-height: 1 !important;

        letter-spacing: .6px !important;
        font-weight: 700;

        white-space: nowrap;

        background: #e7bd68;
        color: #17120a;
    }


    /* ==============================
       HEART + EYE
    ============================== */

    #shop .product-tools {
        position: absolute;

        top: 8px !important;
        right: 7px !important;

        z-index: 5;

        display: flex !important;
        flex-direction: column;
        gap: 5px;

        opacity: 1 !important;
        visibility: visible !important;

        transform: none !important;
    }

    #shop .product-tools button {
        width: 28px !important;
        height: 28px !important;

        padding: 0 !important;

        display: flex;
        align-items: center;
        justify-content: center;

        border-radius: 50% !important;

        border: 0 !important;

        background: rgba(255, 255, 255, .95) !important;

        color: #8e631f !important;

        font-size: 11px !important;

        box-shadow:
            0 3px 10px rgba(0, 0, 0, .10);

        opacity: 1 !important;

        transform: none !important;
    }


    /* ==============================
       PRODUCT INFORMATION
    ============================== */

    #shop .product-info {
        width: 100%;

        min-height: 0 !important;

        padding: 13px 8px 10px !important;

        text-align: center;

        display: flex;
        flex-direction: column;
        align-items: center;

        flex: 1;
    }


    /* Product title */
    #shop .product-info h3 {

        /* YOUR EXISTING FONT FAMILY REMAINS */
        font-family: inherit;

        width: 100%;

        margin: 0 0 6px !important;

        font-size: 14px !important;
        line-height: 1.25 !important;

        font-weight: 500;

        color: #17130e;

        min-height: 35px;

        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;

        overflow: hidden;
    }


    /* Scent notes */
    #shop .product-info .notes {

        /* Existing font stays */
        font-family: inherit;

        width: 100%;

        margin: 0 0 8px !important;

        min-height: 27px !important;

        font-size: 10px !important;
        line-height: 1.3 !important;

        color: #77716a;

        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;

        overflow: hidden;
    }


    /* ==============================
       PRICE
    ============================== */

    #shop .product-info .price {

        /* Existing font family stays */
        font-family: inherit;

        margin-top: auto !important;
        margin-bottom: 2px !important;

        font-size: 17px !important;
        line-height: 1.2 !important;

        font-weight: 600;

        color: #76501b;
    }

    #shop .product-info .price del {
        font-size: 11px !important;
        opacity: .55;
        margin-left: 3px;
    }


    /* ==============================
       ADD TO BAG
    ============================== */

    #shop .add-cart {
        position: relative !important;

        left: auto !important;
        right: auto !important;
        bottom: auto !important;

        width: calc(100% - 16px) !important;
        height: 34px !important;

        margin:
            0 8px 10px !important;

        padding: 0 5px !important;

        display: flex !important;
        align-items: center;
        justify-content: center;

        gap: 5px;

        border: 0;

        border-radius: 7px !important;

        background:
            linear-gradient(135deg,
                #d5a64c,
                #a66c18) !important;

        color: #fff !important;

        font-family: inherit;

        font-size: 9px !important;
        line-height: 1 !important;

        font-weight: 600;

        letter-spacing: .5px !important;

        opacity: 1 !important;
        visibility: visible !important;

        transform: none !important;

        box-shadow:
            0 5px 12px rgba(166, 108, 24, .16);

        order: 3;
    }

    #shop .add-cart i {
        font-size: 10px;
    }


    /* =================================
       DISABLE DESKTOP HOVER MOVEMENT
       ON MOBILE
    ================================= */

    #shop .product-card:hover {
        transform: none !important;
        box-shadow:
            0 5px 18px rgba(34, 24, 10, .06) !important;
    }

    #shop .product-card:hover .product-image img {
        transform: none !important;
    }

    #shop .product-card:hover .product-tools,
    #shop .product-card:hover .product-tools button {
        opacity: 1 !important;
        transform: none !important;
    }


    /* ==============================
       VIEW ALL BUTTON
    ============================== */

    #shop>.center {
        margin-top: 28px !important;
    }

}


/* =========================================================
   VERY SMALL PHONES
========================================================= */

@media only screen and (max-width: 390px) {

    #shop.products-section {
        padding-left: 7px !important;
        padding-right: 7px !important;
    }

    #shop .product-slider {
        gap: 7px !important;
    }

    #shop .product-card {
        border-radius: 10px !important;
    }

    #shop .product-info {
        padding:
            10px 6px 8px !important;
    }

    #shop .product-info h3 {
        font-size: 12px !important;
        min-height: 31px;
    }

    #shop .product-info .notes {
        font-size: 9px !important;
    }

    #shop .product-info .price {
        font-size: 15px !important;
    }

    #shop .badge {
        font-size: 6px !important;
        padding: 5px 6px !important;
    }

    #shop .product-tools button {
        width: 25px !important;
        height: 25px !important;
        font-size: 10px !important;
    }

    #shop .add-cart {
        width: calc(100% - 12px) !important;

        margin:
            0 6px 8px !important;

        height: 32px !important;

        font-size: 8px !important;
    }

}

/* =====================================================
   AMBASSADOR LUXURY HEADER
===================================================== */

.amb-header {
    position: relative;
    width: 100%;
    z-index: 1000;
    background: #050505;
}


/* ================= TOP BAR ================= */

.amb-topbar {
    height: 68px;
    display: flex;
    align-items: center;
    background: linear-gradient(90deg,
            #c78b19 0%,
            #f4d369 48%,
            #c58a18 100%);
    color: #080808;
}

.amb-topbar-inner {
    width: 100%;
    max-width: 1200px;
    margin: auto;

    display: flex;
    align-items: center;
    justify-content: center;

    gap: 42px;

    padding: 0 30px;
}

.amb-top-item {
    display: flex;
    align-items: center;
    gap: 18px;

    font-size: 16px;
    font-weight: 700;
    letter-spacing: .6px;
}

.amb-top-item i {
    font-size: 26px;
}

.amb-top-divider {
    width: 2px;
    height: 24px;
    background: rgba(0, 0, 0, .65);
}


/* ================= MAIN HEADER ================= */

.amb-main-header {
    position: relative;

    width: 100%;
    min-height: 320px;

    padding: 0 5%;

    display: grid;
    grid-template-columns:
        minmax(380px, 1fr) 480px minmax(380px, 1fr) auto;

    align-items: center;

    background:
        radial-gradient(circle at center,
            #171006 0%,
            #080604 38%,
            #020202 75%);

    border-bottom: 4px solid #c68e24;
}


/* ================= LOGO ================= */

.amb-logo {
    grid-column: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    height: 310px;

    position: relative;
    z-index: 2;
}

.amb-logo img {
    width: 460px;
    max-width: 100%;

    height: 280px;

    object-fit: contain;

    display: block;

    filter:
        drop-shadow(0 5px 14px rgba(211, 153, 35, .18));

    transition: .35s ease;
}

.amb-logo:hover img {
    transform: scale(1.025);
}


/* ================= NAVIGATION ================= */

.amb-nav {
    display: flex;
    align-items: center;

    height: 100%;

    gap: 0;

    white-space: nowrap;
}

.amb-nav-left {
    grid-column: 1;
    grid-row: 1;

    justify-content: flex-end;
}

.amb-nav-right {
    grid-column: 3;
    grid-row: 1;

    justify-content: flex-start;
}


.amb-nav>a,
.amb-dropdown-btn {
    position: relative;

    min-height: 52px;

    display: flex;
    align-items: center;

    padding: 0 28px;

    color: #fff;

    background: transparent;
    border: 0;

    text-decoration: none;

    font-family: inherit;

    font-size: 15px;
    line-height: 1;

    font-weight: 600;

    letter-spacing: .4px;

    cursor: pointer;

    transition:
        color .3s ease,
        opacity .3s ease;
}


/* Vertical separators */

.amb-nav>a:not(:last-child)::after,
.amb-nav-left .amb-dropdown::after {

    content: "";

    position: absolute;

    right: 0;
    top: 50%;

    width: 1px;
    height: 30px;

    transform: translateY(-50%);

    background: rgba(207, 158, 55, .55);
}


.amb-nav>a:hover,
.amb-dropdown-btn:hover {
    color: #e1ad3e;
}


/* ACTIVE */

.amb-nav>a.active {
    color: #e6ad32;
}

.amb-nav>a.active::before {

    content: "";

    position: absolute;

    left: 28px;
    right: 28px;
    bottom: 0;

    height: 3px;

    background: #e1a92f;
}


/* ================= SHOP DROPDOWN ================= */

.amb-dropdown {
    position: relative;
    height: 52px;

    display: flex;
    align-items: center;
}

.amb-dropdown-btn {
    gap: 10px;
}

.amb-dropdown-btn i {
    font-size: 10px;

    color: #d7a43a;

    transition: transform .3s ease;
}

.amb-dropdown:hover .amb-dropdown-btn i {
    transform: rotate(180deg);
}


.amb-dropdown-menu {

    position: absolute;

    top: calc(100% + 12px);
    left: 50%;

    width: 320px;

    padding: 10px;

    background: #0a0a0a;

    border:
        1px solid rgba(215, 164, 58, .3);

    box-shadow:
        0 25px 60px rgba(0, 0, 0, .5);

    opacity: 0;
    visibility: hidden;

    transform:
        translate(-50%, 15px);

    transition: .3s ease;

    z-index: 200;
}


.amb-dropdown-menu::before {

    content: "";

    position: absolute;

    top: -13px;
    left: 0;

    width: 100%;
    height: 15px;
}


.amb-dropdown:hover .amb-dropdown-menu {

    opacity: 1;
    visibility: visible;

    transform:
        translate(-50%, 0);
}


.amb-dropdown-menu a {

    display: flex;
    align-items: center;

    gap: 15px;

    padding: 14px 13px;

    color: #fff;

    text-decoration: none;

    border-bottom:
        1px solid rgba(255, 255, 255, .07);

    transition: .25s ease;
}


.amb-dropdown-menu a:last-child {
    border-bottom: 0;
}


.amb-dropdown-menu a>span {

    width: 31px;
    height: 31px;

    flex-shrink: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    border:
        1px solid rgba(213, 165, 63, .5);

    border-radius: 50%;

    color: #d8a63e;

    font-size: 9px;
}


.amb-dropdown-menu strong {

    display: block;

    margin-bottom: 3px;

    font-size: 13px;
    font-weight: 600;

    letter-spacing: .4px;
}


.amb-dropdown-menu small {

    display: block;

    color: #888;

    font-size: 10px;
}


.amb-dropdown-menu a:hover {
    background: #15110a;
}

.amb-dropdown-menu a:hover strong {
    color: #dda83b;
}


/* ================= ICONS ================= */

.amb-header-icons {

    grid-column: 4;
    grid-row: 1;

    display: flex;
    align-items: center;

    gap: 22px;

    padding-left: 30px;

    border-left:
        1px solid rgba(207, 158, 55, .55);
}


.amb-icon-btn {

    position: relative;

    width: 38px;
    height: 48px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 0;

    background: transparent;
    border: 0;

    color: #f6df9c;

    font-size: 27px;

    cursor: pointer;

    transition: .25s ease;
}

.amb-icon-btn:hover {
    color: #d99f2d;
    transform: translateY(-2px);
}


.amb-icon-count {

    position: absolute;

    top: 2px;
    right: -3px;

    min-width: 20px;
    height: 20px;

    padding: 0 5px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 30px;

    background: #dfa72d;

    color: #090909;

    font-size: 10px;
    font-weight: 800;
}


/* MOBILE BUTTON HIDDEN ON DESKTOP */

.amb-mobile-toggle {
    display: none;
}


/* =====================================================
   TABLET / SMALL LAPTOP
===================================================== */

@media (max-width: 1450px) {

    .amb-main-header {

        min-height: 240px;

        grid-template-columns:
            minmax(300px, 1fr) 330px minmax(300px, 1fr) auto;

        padding: 0 3%;
    }

    .amb-logo {
        height: 230px;
    }

    .amb-logo img {
        width: 325px;
        height: 210px;
    }

    .amb-nav>a,
    .amb-dropdown-btn {
        padding-left: 16px;
        padding-right: 16px;

        font-size: 12px;
    }

    .amb-header-icons {
        padding-left: 18px;
        gap: 12px;
    }

    .amb-icon-btn {
        font-size: 21px;
    }

}


/* =====================================================
   MOBILE HEADER
===================================================== */

@media (max-width: 991px) {

    .amb-topbar {
        height: auto;
        min-height: 40px;

        padding: 8px 12px;
    }

    .amb-topbar-inner {
        padding: 0;

        gap: 8px;

        justify-content: center;
    }

    .amb-top-item {
        gap: 6px;

        font-size: 8px;

        text-align: center;

        letter-spacing: .2px;
    }

    .amb-top-item i {
        font-size: 12px;
    }

    .amb-top-divider {
        height: 16px;
    }


    .amb-main-header {

        min-height: 92px;

        padding: 0 16px;

        display: flex;

        align-items: center;
        justify-content: space-between;

        border-bottom-width: 2px;
    }


    .amb-nav {
        display: none;
    }


    .amb-logo {

        position: absolute;

        left: 50%;
        top: 50%;

        transform:
            translate(-50%, -50%);

        width: 150px;
        height: 82px;
    }

    .amb-logo img {
        width: 145px;
        height: 78px;
    }

    .amb-logo:hover img {
        transform: none;
    }


    .amb-mobile-toggle {

        display: flex;

        width: 40px;
        height: 40px;

        align-items: center;
        justify-content: flex-start;

        padding: 0;

        border: 0;
        background: transparent;

        color: #e0ac43;

        font-size: 22px;

        cursor: pointer;

        z-index: 5;
    }


    .amb-header-icons {

        margin-left: auto;
        padding: 0;

        border: 0;

        gap: 8px;

        z-index: 5;
    }


    .amb-header-icons .wish-header {
        display: none;
    }

    .amb-icon-btn {
        width: 31px;
        height: 40px;

        font-size: 18px;
    }

    .amb-icon-count {

        min-width: 16px;
        height: 16px;

        top: 1px;
        right: -2px;

        padding: 0 3px;

        font-size: 8px;
    }

}


/* =====================================================
   MOBILE DRAWER
===================================================== */

.amb-mobile-overlay {

    position: fixed;
    inset: 0;

    background: rgba(0, 0, 0, .7);

    backdrop-filter: blur(3px);

    z-index: 9998;

    opacity: 0;
    visibility: hidden;

    transition: .35s ease;
}


.amb-mobile-menu {

    position: fixed;

    top: 0;
    left: 0;

    width: min(88%, 380px);
    height: 100dvh;

    z-index: 9999;

    background: #080808;

    transform: translateX(-105%);

    transition:
        transform .4s cubic-bezier(.77, 0, .18, 1);

    overflow-y: auto;
}


.amb-mobile-overlay.active {

    opacity: 1;
    visibility: visible;
}


.amb-mobile-menu.active {
    transform: translateX(0);
}


.amb-mobile-head {

    min-height: 130px;

    padding: 20px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    border-bottom:
        1px solid rgba(215, 164, 58, .25);
}


.amb-mobile-head img {

    width: 175px;
    height: 100px;

    object-fit: contain;
}


.amb-mobile-head button {

    width: 40px;
    height: 40px;

    border: 0;
    background: transparent;

    color: #dba63c;

    font-size: 25px;

    cursor: pointer;
}


.amb-mobile-links {
    padding: 15px 20px;
}


.amb-mobile-links>a,
.amb-mobile-dropdown>button {

    width: 100%;

    min-height: 56px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    padding: 0;

    border: 0;
    border-bottom:
        1px solid rgba(255, 255, 255, .09);

    background: transparent;

    color: #fff;

    text-decoration: none;

    font-family: inherit;

    font-size: 13px;
    font-weight: 600;

    letter-spacing: .8px;

    text-align: left;
}


.amb-mobile-dropdown button i {
    color: #dba63c;

    transition: transform .3s ease;
}


.amb-mobile-dropdown.open button i {
    transform: rotate(45deg);
}


.amb-mobile-submenu {

    max-height: 0;

    overflow: hidden;

    background: #0e0c08;

    transition: max-height .4s ease;
}


.amb-mobile-dropdown.open .amb-mobile-submenu {
    max-height: 250px;
}


.amb-mobile-submenu a {

    display: block;

    padding: 14px 15px;

    color: #aaa;

    text-decoration: none;

    font-size: 11px;

    border-bottom:
        1px solid rgba(255, 255, 255, .05);
}


.amb-mobile-submenu a:hover {
    color: #dba63c;
}


.amb-mobile-bottom {

    padding: 20px;

    display: flex;
    flex-direction: column;

    gap: 12px;

    border-top:
        1px solid rgba(215, 164, 58, .2);
}


.amb-mobile-bottom a {

    display: flex;
    align-items: center;

    gap: 12px;

    color: #aaa;

    text-decoration: none;

    font-size: 11px;
}


.amb-mobile-bottom i {

    width: 22px;

    color: #dba63c;

    font-size: 16px;
}


/* VERY SMALL MOBILE */

@media (max-width: 480px) {

    .amb-topbar-inner {
        gap: 6px;
    }

    .amb-top-item {
        font-size: 6.5px;
    }

    .amb-top-item i {
        font-size: 10px;
    }

    .amb-top-divider {
        margin: 0 2px;
    }

    .amb-main-header {
        min-height: 84px;
        padding: 0 12px;
    }

    .amb-logo {
        width: 125px;
    }

    .amb-logo img {
        width: 125px;
    }

}

.hero-content h1 {
    margin: 0;
    color: #fff;
    font-family: "Cormorant Garamond", Georgia, serif;
    font-size: clamp(71px, 5.3vw, 115px) !important;
}

/* =====================================================
   AMBASSADOR PREMIUM HEADER
===================================================== */

.main-header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 9999;

    background: linear-gradient(180deg,
            rgba(0, 0, 0, 0.72) 0%,
            rgba(0, 0, 0, 0.30) 65%,
            rgba(0, 0, 0, 0) 100%);


    transition:
        background .35s ease,
        box-shadow .35s ease,
        transform .35s ease;
}


/* HEADER INNER */

.header-container {
    width: min(94%, 1760px);
    height: 112px;
    margin: auto;

    display: grid;
    grid-template-columns: 240px 1fr auto;
    align-items: center;

    gap: 40px;
}


/* =====================================================
   LOGO
===================================================== */

.header-logo {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    text-decoration: none;
}

.header-logo img {
    display: block;

    width: auto;
    height: 111px;

    object-fit: contain;

    filter:
        drop-shadow(0 4px 12px rgba(0, 0, 0, .35)) drop-shadow(0 0 10px rgba(214, 164, 45, .08));

    transition: transform .35s ease;
}

.header-logo:hover img {
    transform: scale(1.035);
}


/* =====================================================
   NAVIGATION
===================================================== */

.desktop-nav {
    height: 100%;

    display: flex;
    align-items: center;
    justify-content: center;

    gap: 0;
}

.nav-link {
    position: relative;

    height: 100%;

    display: flex;
    align-items: center;

    padding: 0 25px;

    color: #fff;
    text-decoration: none;

    font-family: inherit;
    font-size: 13px;
    font-weight: 600;

    letter-spacing: .8px;

    white-space: nowrap;

    transition: color .3s ease;
}


/* SEPARATOR */

.nav-link::before {
    content: "";

    position: absolute;

    left: 0;
    top: 50%;

    width: 1px;
    height: 28px;

    transform: translateY(-50%);

    background: rgba(218, 166, 45, .38);
}

.desktop-nav> :first-child::before {
    display: none;
}


/* GOLD UNDERLINE */

.nav-link::after {
    content: "";

    position: absolute;

    left: 25px;
    right: 25px;
    bottom: 25px;

    height: 2px;

    background: #d9a62e;

    transform: scaleX(0);
    transform-origin: center;

    transition: transform .3s ease;
}

.nav-link:hover,
.nav-link.active {
    color: #e0ad32;
}

.nav-link:hover::after,
.nav-link.active::after {
    transform: scaleX(1);
}


/* =====================================================
   SHOP DROPDOWN
===================================================== */

.nav-dropdown {
    position: relative;
    height: 100%;
}

.shop-link {
    gap: 8px;
}

.shop-link i {
    font-size: 9px;

    color: #d9a62e;

    transition: transform .3s ease;
}

.nav-dropdown:hover .shop-link i {
    transform: rotate(180deg);
}


/* DROPDOWN BOX */

.dropdown-menu {
    position: absolute;

    top: calc(100% - 12px);
    left: 50%;

    width: 230px;

    padding: 10px;

    background: rgba(9, 8, 6, .97);

    border: 1px solid rgba(218, 166, 45, .25);

    box-shadow:
        0 25px 60px rgba(0, 0, 0, .45);

    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);

    opacity: 0;
    visibility: hidden;

    transform:
        translate(-50%, 12px);

    transition:
        opacity .25s ease,
        visibility .25s ease,
        transform .25s ease;
}

.nav-dropdown:hover .dropdown-menu {
    opacity: 1;
    visibility: visible;

    transform:
        translate(-50%, 0);
}


/* DROPDOWN ITEMS */

.dropdown-menu a {
    display: flex;
    align-items: center;
    justify-content: space-between;

    padding: 15px 15px;

    color: rgba(255, 255, 255, .88);

    font-size: 12px;
    font-weight: 600;

    letter-spacing: .6px;

    text-decoration: none;

    border-bottom: 1px solid rgba(255, 255, 255, .07);

    transition:
        color .25s ease,
        background .25s ease,
        padding .25s ease;
}

.dropdown-menu a:last-child {
    border-bottom: 0;
}

.dropdown-menu a i {
    color: #d9a62e;

    font-size: 10px;

    transition: transform .25s ease;
}

.dropdown-menu a:hover {
    color: #d9a62e;

    background: rgba(218, 166, 45, .07);

    padding-left: 20px;
}

.dropdown-menu a:hover i {
    transform: translateX(4px);
}


/* =====================================================
   RIGHT ICONS
===================================================== */

.header-actions {
    display: flex;
    align-items: center;

    gap: 20px;

    padding-left: 27px;

    border-left: 1px solid rgba(218, 166, 45, .40);
}

.header-icon {
    position: relative;

    width: 39px;
    height: 39px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #f6d777;

    text-decoration: none;

    font-size: 21px;

    transition:
        color .25s ease,
        transform .25s ease;
}

.header-icon:hover {
    color: #fff;

    transform: translateY(-2px);
}


/* COUNTER */

.icon-count {
    position: absolute;

    top: -3px;
    right: -3px;

    min-width: 17px;
    height: 17px;

    padding: 0 4px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #dfa92d;

    color: #090909;

    border-radius: 50%;

    font-size: 9px;
    font-weight: 800;
}


/* =====================================================
   SCROLLED HEADER
===================================================== */

.main-header.scrolled {
    position: relative;

    background: rgba(5, 5, 4, .94);

    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);

    box-shadow:
        0 12px 40px rgba(0, 0, 0, .35);

    border-bottom:
        1px solid rgba(218, 166, 45, .28);
}

.main-header.scrolled .header-container {
    height: 82px;
}

.main-header.scrolled .header-logo img {
    height: 67px;
}

.main-header.scrolled .nav-link::after {
    bottom: 16px;
}


/* =====================================================
   MOBILE BUTTON
===================================================== */

.mobile-menu-btn {
    display: none;

    width: 42px;
    height: 42px;

    padding: 9px;

    background: transparent;

    border: 1px solid rgba(218, 166, 45, .35);

    cursor: pointer;
}

.mobile-menu-btn span {
    display: block;

    width: 100%;
    height: 1px;

    margin: 5px 0;

    background: #e1ae32;

    transition:
        transform .3s ease,
        opacity .3s ease;
}


/* =====================================================
   MOBILE NAV
===================================================== */

.mobile-nav {
    display: none;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 1350px) {

    .header-container {
        grid-template-columns: 190px 1fr auto;

        gap: 20px;
    }

    .header-logo img {
        height: 76px;
    }

    .nav-link {
        padding-left: 15px;
        padding-right: 15px;

        font-size: 11px;
    }

    .nav-link::after {
        left: 15px;
        right: 15px;
    }

    .header-actions {
        gap: 10px;

        padding-left: 16px;
    }

}


/* =====================================================
   MOBILE / SMALL TABLET
===================================================== */

@media (max-width: 1050px) {

    .main-header {
        background: linear-gradient(180deg,
                rgba(0, 0, 0, .90),
                rgba(0, 0, 0, .45),
                transparent);
    }

    .header-container {
        width: calc(100% - 32px);

        height: 90px;

        display: flex;
        justify-content: space-between;

        gap: 15px;
    }


    /* LOGO */

    .header-logo img {
        height: 68px;
        max-width: 180px;
    }


    /* HIDE DESKTOP MENU */

    .desktop-nav {
        display: none;
    }


    /* ICONS */

    .header-actions {
        margin-left: auto;

        gap: 6px;

        padding-left: 0;

        border-left: 0;
    }

    .header-icon {
        width: 34px;
        height: 38px;

        font-size: 18px;
    }


    /* MENU BUTTON */

    .mobile-menu-btn {
        display: block;
    }


    /* MOBILE MENU */

    .mobile-nav {
        position: absolute;

        top: 90px;
        left: 0;

        width: 100%;

        max-height: calc(100vh - 90px);

        overflow-y: auto;

        padding: 12px 24px 25px;

        background: rgba(6, 6, 5, .98);

        border-top: 1px solid rgba(218, 166, 45, .25);
        border-bottom: 1px solid rgba(218, 166, 45, .25);

        backdrop-filter: blur(18px);
        -webkit-backdrop-filter: blur(18px);

        opacity: 0;
        visibility: hidden;

        transform: translateY(-12px);

        transition:
            opacity .3s ease,
            visibility .3s ease,
            transform .3s ease;
    }

    .mobile-nav.active {
        display: block;

        opacity: 1;
        visibility: visible;

        transform: translateY(0);
    }


    .mobile-nav>a,
    .mobile-dropdown-btn {

        width: 100%;

        display: flex;
        align-items: center;
        justify-content: space-between;

        padding: 17px 4px;

        color: #fff;

        background: none;

        border: 0;
        border-bottom: 1px solid rgba(255, 255, 255, .08);

        text-decoration: none;

        font-family: inherit;

        font-size: 12px;
        font-weight: 600;

        letter-spacing: 1px;

        text-align: left;

        cursor: pointer;
    }

    .mobile-nav>a:hover,
    .mobile-dropdown-btn:hover {
        color: #dda92e;
    }


    /* MOBILE SHOP DROPDOWN */

    .mobile-dropdown {
        display: none;

        padding: 5px 0 8px 18px;

        background: rgba(218, 166, 45, .035);
    }

    .mobile-dropdown.active {
        display: block;
    }

    .mobile-dropdown a {
        display: block;

        padding: 12px 8px;

        color: rgba(255, 255, 255, .70);

        text-decoration: none;

        font-size: 12px;

        border-bottom: 1px solid rgba(255, 255, 255, .05);
    }

    .mobile-dropdown a:hover {
        color: #dda92e;
    }


    /* SCROLLED MOBILE */

    .main-header.scrolled .header-container {
        height: 76px;
    }

    .main-header.scrolled .header-logo img {
        height: 59px;
    }

    .main-header.scrolled .mobile-nav {
        top: 76px;

        max-height: calc(100vh - 76px);
    }

}


/* =====================================================
   PHONE
===================================================== */

@media (max-width: 600px) {

    .header-container {
        width: calc(100% - 24px);

        height: 78px;
    }

    .header-logo img {
        height: 58px;
        max-width: 145px;
    }

    .header-actions {
        gap: 2px;
    }

    .header-icon {
        width: 30px;

        font-size: 16px;
    }

    .header-actions .header-icon:first-child {
        display: none;
    }

    .icon-count {
        min-width: 15px;
        height: 15px;

        font-size: 8px;
    }

    .mobile-menu-btn {
        width: 38px;
        height: 38px;

        margin-left: 3px;
    }

    .mobile-nav {
        top: 78px;

        padding-left: 20px;
        padding-right: 20px;

        max-height: calc(100vh - 78px);
    }

}

.hero-slider {
    padding-bottom: 44% !important;
}

.main-header {
    padding-top: 17px;
}


/* =====================================================
   ABOUT US
===================================================== */

.about-section {
    position: relative;
    overflow: hidden;
    padding: 120px 0;
    background: #f7f3ea;
    color: #16130f;
}

.about-section::before {
    content: "";
    position: absolute;
    top: -180px;
    right: -180px;
    width: 500px;
    height: 500px;
    border: 1px solid rgba(181, 132, 37, .12);
    border-radius: 50%;
}

.about-container {
    position: relative;
    z-index: 2;

    width: min(90%, 1450px);
    margin: 0 auto;

    display: grid;
    grid-template-columns: .9fr 1fr;
    align-items: center;
    gap: 100px;
}


/* IMAGE */

.about-visual {
    position: relative;
    padding: 0 30px 40px 0;
}

.about-image-main {
    position: relative;
    z-index: 2;
    overflow: hidden;

    height: 680px;

    background: #ddd;
}

.about-image-main img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;

    transition: transform .8s ease;
}

.about-image-main:hover img {
    transform: scale(1.025);
}

.about-gold-frame {
    position: absolute;
    z-index: 1;

    top: 30px;
    left: 30px;
    right: 0;
    bottom: 0;

    border: 1px solid #b88b35;
}


/* LOCATION CARD */

.about-location-card {
    position: absolute;
    z-index: 4;

    right: -35px;
    bottom: 80px;

    min-width: 270px;
    padding: 22px 28px;

    display: flex;
    align-items: center;
    gap: 17px;

    background: #11100e;
    color: #fff;

    box-shadow: 0 20px 45px rgba(0, 0, 0, .20);
}

.about-location-icon {
    width: 46px;
    height: 46px;

    flex-shrink: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(211, 165, 70, .55);

    color: #d3a546;
    font-size: 17px;
}

.about-location-card span {
    display: block;

    margin-bottom: 5px;

    color: #b99a60;

    font-family: "DM Sans", sans-serif;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 2px;
}

.about-location-card strong {
    font-family: "Cormorant Garamond", serif;
    font-size: 21px;
    font-weight: 600;
}


/* CONTENT */

.about-content {
    max-width: 650px;
}

.about-eyebrow {
    display: flex;
    align-items: center;
    gap: 13px;

    margin-bottom: 18px;

    color: #a87925;

    font-family: "DM Sans", sans-serif;
    font-size: 11px;
    font-weight: 700;

    letter-spacing: 3px;
}

.about-eyebrow::before {
    content: "";

    width: 38px;
    height: 1px;

    background: #b88b35;
}

.about-content h2,
.founder-heading h2 {
    margin: 0;

    color: #17130e;

    font-family: "Cormorant Garamond", serif;
    font-size: clamp(48px, 5vw, 76px);
    font-weight: 600;

    line-height: .94;
    letter-spacing: -2px;
}

.about-content h2 em,
.founder-heading h2 em {
    display: block;

    color: #b2832f;

    font-family: "Italianno", cursive;
    font-size: 1.08em;
    font-weight: 400;

    line-height: 1.05;
}


/* DIVIDER */

.about-divider {
    width: 180px;

    margin: 28px 0;

    display: flex;
    align-items: center;
    gap: 10px;

    color: #b88b35;
}

.about-divider span {
    height: 1px;
    flex: 1;

    background: rgba(184, 139, 53, .35);
}

.about-divider i {
    font-size: 13px;
}


/* TEXT */

.about-content p {
    margin: 0 0 18px;

    color: #6d665d;

    font-family: "DM Sans", sans-serif;
    font-size: 15px;

    line-height: 1.9;
}

.about-content .about-lead {
    color: #332e27;

    font-family: "Cormorant Garamond", serif;
    font-size: 21px;
    font-weight: 600;

    line-height: 1.65;
}


/* VALUES */

.about-values {
    margin-top: 38px;
    padding-top: 30px;

    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;

    border-top: 1px solid rgba(35, 29, 20, .12);
}

.about-value {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.about-value>i {
    margin-top: 3px;

    color: #b2832f;
    font-size: 20px;
}

.about-value strong {
    display: block;

    margin-bottom: 5px;

    color: #211c16;

    font-family: "Cormorant Garamond", serif;
    font-size: 18px;
}

.about-value span {
    display: block;

    color: #777066;

    font-size: 11px;
    line-height: 1.5;
}


/* =====================================================
   FOUNDER
===================================================== */

.founder-container {
    position: relative;
    z-index: 2;

    width: min(90%, 1450px);

    margin: 120px auto 0;
    padding-top: 80px;

    border-top: 1px solid rgba(35, 29, 20, .13);
}

.founder-heading {
    margin-bottom: 50px;
}

.founder-heading h2 {
    max-width: 750px;
}

.founder-heading h2 em {
    display: inline-block;
    margin-left: 10px;
}


/* FOUNDER CONTENT */

.founder-content {
    display: grid;
    grid-template-columns: .75fr 1.25fr;

    gap: 80px;
}

.founder-name {
    padding-right: 50px;

    border-right: 1px solid rgba(35, 29, 20, .13);
}

.founder-name>span {
    color: #a87925;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 2.5px;
}

.founder-name h3 {
    margin: 12px 0 5px;

    color: #17130e;

    font-family: "Cormorant Garamond", serif;
    font-size: 46px;
    font-weight: 600;
}

.founder-signature {
    color: #b2832f;

    font-family: "Italianno", cursive;
    font-size: 31px;
}


/* STORY */

.founder-story p {
    margin: 0 0 20px;

    color: #686158;

    font-size: 15px;
    line-height: 1.9;
}

.founder-story blockquote {
    position: relative;

    margin: 35px 0 0;
    padding: 30px 35px 28px 70px;

    background: #11100e;

    border-left: 3px solid #b88b35;
}

.founder-story blockquote>i {
    position: absolute;

    top: 29px;
    left: 27px;

    color: #b88b35;
    font-size: 23px;
}

.founder-story blockquote p {
    margin: 0;

    color: #f2eadc;

    font-family: "Cormorant Garamond", serif;
    font-size: 22px;
    font-style: italic;

    line-height: 1.55;
}


/* =====================================================
   RESPONSIVE
===================================================== */

@media (max-width: 1100px) {

    .about-container {
        gap: 60px;
    }

    .about-image-main {
        height: 590px;
    }

    .about-location-card {
        right: -15px;
    }

    .about-values {
        grid-template-columns: 1fr;
    }

}


@media (max-width: 800px) {

    .about-section {
        padding: 80px 0;
    }

    .about-container {
        grid-template-columns: 1fr;
        gap: 65px;
    }

    .about-visual {
        width: 100%;
        max-width: 570px;

        margin: auto;
    }

    .about-image-main {
        height: 550px;
    }

    .about-location-card {
        right: 0;
        bottom: 65px;
    }

    .about-content {
        max-width: 100%;
    }

    .about-content h2,
    .founder-heading h2 {
        font-size: 52px;
    }

    .about-values {
        grid-template-columns: repeat(3, 1fr);
    }


    /* FOUNDER */

    .founder-container {
        margin-top: 80px;
        padding-top: 60px;
    }

    .founder-content {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .founder-name {
        padding: 0 0 30px;

        border-right: 0;
        border-bottom: 1px solid rgba(35, 29, 20, .13);
    }

}


@media (max-width: 550px) {

    .about-section {
        padding: 65px 0;
    }

    .about-container,
    .founder-container {
        width: calc(100% - 36px);
    }

    .about-visual {
        padding: 0 15px 30px 0;
    }

    .about-image-main {
        height: 440px;
    }

    .about-gold-frame {
        top: 15px;
        left: 15px;
    }

    .about-location-card {
        right: -2px;
        bottom: 48px;

        min-width: 220px;

        padding: 16px 18px;
    }

    .about-location-icon {
        width: 38px;
        height: 38px;
    }

    .about-location-card strong {
        font-size: 17px;
    }

    .about-content h2,
    .founder-heading h2 {
        font-size: 43px;
    }

    .about-content .about-lead {
        font-size: 19px;
    }

    .about-values {
        grid-template-columns: 1fr;

        gap: 22px;
    }


    .founder-container {
        margin-top: 65px;
        padding-top: 50px;
    }

    .founder-heading h2 em {
        display: block;
        margin-left: 0;
    }

    .founder-name h3 {
        font-size: 38px;
    }

    .founder-story blockquote {
        padding: 55px 25px 25px;
    }

    .founder-story blockquote>i {
        top: 22px;
        left: 25px;
    }

    .founder-story blockquote p {
        font-size: 20px;
    }

}


/* ==========================================================
   ABOUT PAGE
========================================================== */

.about-page {
    background: #fff;
}


/* ==========================================================
   ABOUT HERO
========================================================== */

.about-hero {
    position: relative;
    min-height: 620px;
    overflow: hidden;

    display: flex;
    align-items: center;

    background: #090909;
    color: #fff;
}

.about-hero-bg {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(90deg,
            rgba(0, 0, 0, .90) 0%,
            rgba(0, 0, 0, .72) 43%,
            rgba(0, 0, 0, .28) 100%),
        url('../images/3.png') center 55% / cover no-repeat;

    transform: scale(1.02);
}

.about-hero-content {
    position: relative;
    z-index: 2;

    width: min(90%, 1450px);
    margin: 0 auto;

    padding-top: 80px;
}

.about-hero-content h1 {
    max-width: 800px;

    margin: 14px 0 20px;

    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(60px, 6vw, 96px);
    font-weight: 600;

    line-height: .88;
    letter-spacing: -2px;
}

.about-hero-content h1 em {
    display: block;

    color: var(--gold2);

    font-family: 'Italianno', cursive;
    font-size: 1.05em;
    font-weight: 400;

    line-height: 1.1;
}

.about-hero-content>p {
    max-width: 570px;

    margin: 0;

    color: rgba(255, 255, 255, .76);

    font-size: 16px;
    line-height: 1.8;
}


/* BREADCRUMB */

.about-breadcrumb {
    margin-top: 35px;

    display: flex;
    align-items: center;
    gap: 12px;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 2px;
}

.about-breadcrumb a {
    color: #fff;

    transition: .3s ease;
}

.about-breadcrumb a:hover {
    color: var(--gold2);
}

.about-breadcrumb i {
    color: var(--gold);

    font-size: 8px;
}

.about-breadcrumb span {
    color: var(--gold2);
}


/* ==========================================================
   ABOUT COMPANY
========================================================== */

.about-company {
    position: relative;

    padding: 130px 0;

    background: var(--cream);
}

.about-company-grid {
    width: min(90%, 1450px);
    margin: 0 auto;

    display: grid;
    grid-template-columns: .92fr 1fr;

    align-items: center;

    gap: 105px;
}


/* IMAGE */

.about-company-media {
    position: relative;

    padding: 0 30px 35px 0;
}

.about-main-image {
    position: relative;
    z-index: 2;

    height: 650px;

    overflow: hidden;

    background: #111;
}

.about-main-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform .8s ease;
}

.about-company-media:hover .about-main-image img {
    transform: scale(1.035);
}

.about-image-frame {
    position: absolute;

    top: 28px;
    left: 28px;
    right: 0;
    bottom: 0;

    border: 1px solid rgba(201, 149, 46, .70);
}


/* LOCATION */

.about-location {
    position: absolute;
    z-index: 5;

    right: -30px;
    bottom: 78px;

    min-width: 285px;

    padding: 22px 27px;

    display: flex;
    align-items: center;

    gap: 17px;

    background: var(--black);
    color: #fff;

    box-shadow: 0 25px 60px rgba(0, 0, 0, .22);
}

.about-location>i {
    width: 45px;
    height: 45px;

    flex-shrink: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(224, 185, 92, .45);

    color: var(--gold2);

    font-size: 17px;
}

.about-location span {
    display: block;

    margin-bottom: 5px;

    color: var(--gold2);

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 2px;
}

.about-location strong {
    font-family: 'Cormorant Garamond', serif;

    font-size: 21px;
    font-weight: 600;
}


/* CONTENT */

.about-company-copy h2,
.founder-copy h2 {
    margin: 10px 0 30px;

    font-family: 'Cormorant Garamond', serif;

    font-size: clamp(52px, 5vw, 76px);
    font-weight: 600;

    line-height: .95;
    letter-spacing: -2px;
}

.about-company-copy h2 em,
.founder-copy h2 em {
    display: block;

    color: var(--gold);

    font-family: 'Italianno', cursive;

    font-size: 1.08em;
    font-weight: 400;

    line-height: 1.05;
}

.about-lead {
    margin: 0 0 22px;

    color: #332d25;

    font-family: 'Cormorant Garamond', serif;

    font-size: 23px;
    font-weight: 600;

    line-height: 1.55;
}

.about-company-copy>p:not(.about-lead),
.founder-copy>p:not(.about-lead) {
    margin: 0;

    color: var(--muted);

    font-size: 15px;

    line-height: 1.9;
}


/* FEATURES */

.about-features {
    margin-top: 42px;
    padding-top: 30px;

    display: grid;
    grid-template-columns: repeat(3, 1fr);

    gap: 20px;

    border-top: 1px solid rgba(26, 23, 18, .12);
}

.about-feature {
    display: flex;
    align-items: flex-start;

    gap: 12px;
}

.about-feature-icon {
    width: 39px;
    height: 39px;

    flex: 0 0 39px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: var(--gold);

    border: 1px solid rgba(201, 149, 46, .45);
}

.about-feature h3 {
    margin: 0 0 5px;

    font-family: 'Cormorant Garamond', serif;

    font-size: 18px;
    font-weight: 700;
}

.about-feature span {
    display: block;

    color: var(--muted);

    font-size: 10px;

    line-height: 1.5;
}


/* ==========================================================
   STATEMENT
========================================================== */

.about-statement {
    position: relative;

    padding: 105px 20px;

    overflow: hidden;

    background: var(--black);
    color: #fff;

    text-align: center;
}

.about-statement::before,
.about-statement::after {
    content: "";

    position: absolute;

    width: 380px;
    height: 380px;

    border: 1px solid rgba(201, 149, 46, .12);

    border-radius: 50%;
}

.about-statement::before {
    left: -180px;
    top: -200px;
}

.about-statement::after {
    right: -180px;
    bottom: -210px;
}

.about-statement-inner {
    position: relative;
    z-index: 2;

    max-width: 1000px;

    margin: 0 auto;
}

.about-statement-inner>i {
    margin-bottom: 22px;

    color: var(--gold);

    font-size: 27px;
}

.about-statement-inner>span {
    display: block;

    color: var(--gold2);

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 3px;
}

.about-statement h2 {
    margin: 18px auto 25px;

    font-family: 'Cormorant Garamond', serif;

    font-size: clamp(42px, 5vw, 70px);
    font-weight: 600;

    line-height: 1;
}

.about-statement h2 em {
    display: block;

    color: var(--gold2);

    font-family: 'Italianno', cursive;

    font-size: 1.08em;
    font-weight: 400;
}

.statement-line {
    width: 80px;
    height: 1px;

    margin: 30px auto 0;

    background: var(--gold);
}


/* ==========================================================
   FOUNDER
========================================================== */

.founder-section {
    padding: 130px 0;

    background: #fff;
}

.founder-grid {
    width: min(90%, 1450px);
    margin: 0 auto;

    display: grid;
    grid-template-columns: .9fr 1fr;

    align-items: center;

    gap: 105px;
}

.founder-role {
    display: inline-block;

    margin: 0 0 25px;
    padding: 9px 15px;

    border: 1px solid rgba(201, 149, 46, .35);

    color: #9c7020;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 2px;
}

.founder-copy>p:not(.about-lead) {
    margin-top: 20px;
}

.founder-signature {
    margin-top: 30px;

    color: #b48835;

    font-family: 'Italianno', cursive;

    font-size: 45px;
}


/* FOUNDER IMAGE */

.founder-media {
    position: relative;

    padding: 0 0 35px 35px;
}

.founder-image {
    height: 610px;

    overflow: hidden;

    background: #111;
}

.founder-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform .8s ease;
}

.founder-media:hover .founder-image img {
    transform: scale(1.035);
}

.founder-media::before {
    content: "";

    position: absolute;
    z-index: -1;

    top: 30px;
    left: 0;
    right: 35px;
    bottom: 0;

    border: 1px solid rgba(201, 149, 46, .65);
}

.founder-card {
    position: absolute;

    left: -45px;
    bottom: 75px;

    min-width: 320px;

    padding: 23px 27px;

    display: flex;
    align-items: center;

    gap: 17px;

    background: var(--black);
    color: #fff;

    box-shadow: 0 25px 60px rgba(0, 0, 0, .22);
}

.founder-card-icon {
    width: 45px;
    height: 45px;

    flex-shrink: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    color: var(--gold2);

    border: 1px solid rgba(224, 185, 92, .45);
}

.founder-card span {
    display: block;

    margin-bottom: 6px;

    color: var(--gold2);

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 2px;
}

.founder-card strong {
    font-family: 'Cormorant Garamond', serif;

    font-size: 19px;
    font-weight: 600;
}


/* ==========================================================
   VALUES
========================================================== */

.about-values-section {
    padding: 120px 5%;

    background: var(--cream);
}

.about-values-section .section-head {
    max-width: 760px;

    margin: 0 auto 60px;
}

.about-values-grid {
    width: min(100%, 1450px);

    margin: 0 auto;

    display: grid;
    grid-template-columns: repeat(4, 1fr);

    gap: 1px;

    background: rgba(26, 23, 18, .12);
}

.about-value-card {
    position: relative;

    min-height: 320px;

    padding: 45px 35px;

    background: #fff;

    transition:
        background .35s ease,
        color .35s ease,
        transform .35s ease;
}

.about-value-card>span {
    position: absolute;

    top: 25px;
    right: 28px;

    color: rgba(26, 23, 18, .18);

    font-family: 'Cormorant Garamond', serif;

    font-size: 26px;
}

.about-value-card>i {
    margin: 30px 0 30px;

    color: var(--gold);

    font-size: 30px;
}

.about-value-card h3 {
    margin: 0 0 14px;

    font-family: 'Cormorant Garamond', serif;

    font-size: 30px;
}

.about-value-card p {
    margin: 0;

    color: var(--muted);

    font-size: 13px;

    line-height: 1.8;
}

.about-value-card:hover {
    z-index: 2;

    background: var(--black);
    color: #fff;

    transform: translateY(-8px);
}

.about-value-card:hover p {
    color: #aaa;
}

.about-value-card:hover>span {
    color: rgba(255, 255, 255, .16);
}


/* ==========================================================
   CTA
========================================================== */

.about-cta {
    position: relative;

    min-height: 560px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 90px 20px;

    overflow: hidden;

    background:
            url('../../uploads/homepage/home-1791826601-6c84766d.png')
 center / cover no-repeat;

    color: #fff;

    text-align: center;
}

.about-cta-overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(90deg,
            rgba(0, 0, 0, .82),
            rgba(0, 0, 0, .60),
            rgba(0, 0, 0, .82));
}

.about-cta-content {
    position: relative;
    z-index: 2;

    max-width: 800px;
}

.about-cta-content .eyebrow {
    justify-content: center;
}

.about-cta-content h2 {
    margin: 15px 0 20px;

    font-family: 'Cormorant Garamond', serif;

    font-size: clamp(52px, 5vw, 76px);
    font-weight: 600;

    line-height: .95;
}

.about-cta-content h2 em {
    display: block;

    color: var(--gold2);

    font-family: 'Italianno', cursive;

    font-size: 1.08em;
    font-weight: 400;
}

.about-cta-content p {
    max-width: 580px;

    margin: 0 auto 32px;

    color: rgba(255, 255, 255, .75);

    font-size: 15px;

    line-height: 1.8;
}


/* ==========================================================
   ABOUT RESPONSIVE
========================================================== */

@media (max-width: 1100px) {

    .about-company-grid,
    .founder-grid {
        gap: 60px;
    }

    .about-main-image,
    .founder-image {
        height: 570px;
    }

    .about-features {
        grid-template-columns: 1fr;
    }

    .about-values-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .about-location {
        right: -10px;
    }

    .founder-card {
        left: -20px;
    }

}


@media (max-width: 800px) {

    .about-hero {
        min-height: 540px;
    }

    .about-hero-content {
        padding-top: 50px;
    }

    .about-hero-content h1 {
        font-size: 60px;
    }


    .about-company,
    .founder-section {
        padding: 85px 0;
    }

    .about-company-grid,
    .founder-grid {
        grid-template-columns: 1fr;

        gap: 70px;
    }

    .about-company-media,
    .founder-media {
        width: 100%;
        max-width: 600px;

        margin: 0 auto;
    }

    .founder-copy {
        order: 2;
    }

    .founder-media {
        order: 1;
    }

    .about-features {
        grid-template-columns: repeat(3, 1fr);
    }

    .about-statement {
        padding: 80px 20px;
    }

    .about-values-section {
        padding: 85px 5%;
    }

}


@media (max-width: 550px) {

    .about-hero {
        min-height: 500px;
    }

    .about-hero-content {
        width: calc(100% - 36px);
    }

    .about-hero-content h1 {
        font-size: 48px;

        letter-spacing: -1px;
    }

    .about-hero-content>p {
        font-size: 14px;
    }


    .about-company-grid,
    .founder-grid {
        width: calc(100% - 36px);
    }

    .about-main-image,
    .founder-image {
        height: 440px;
    }

    .about-company-media {
        padding: 0 15px 25px 0;
    }

    .about-image-frame {
        top: 15px;
        left: 15px;
    }

    .about-location {
        right: -3px;
        bottom: 45px;

        min-width: 220px;

        padding: 16px 18px;
    }

    .about-location>i {
        width: 37px;
        height: 37px;
    }

    .about-location strong {
        font-size: 17px;
    }


    .about-company-copy h2,
    .founder-copy h2 {
        font-size: 45px;
    }

    .about-lead {
        font-size: 20px;
    }

    .about-features {
        grid-template-columns: 1fr;

        gap: 22px;
    }


    .founder-media {
        padding: 0 0 25px 15px;
    }

    .founder-media::before {
        top: 15px;
        right: 15px;
    }

    .founder-card {
        left: -3px;
        bottom: 45px;

        min-width: 245px;

        padding: 17px 18px;
    }

    .founder-card strong {
        font-size: 16px;
    }


    .about-values-grid {
        grid-template-columns: 1fr;
    }

    .about-value-card {
        min-height: auto;

        padding: 35px 28px;
    }

    .about-value-card>i {
        margin: 20px 0 22px;
    }


    .about-cta {
        min-height: 500px;
    }

    .about-cta-content h2 {
        font-size: 45px;
    }

}

/* =========================================================
   SHOP PAGE
========================================================= */

.shop-page {
    background: #fff;
}


/* HERO */

.shop-hero {
    position: relative;

    min-height: 540px;

    display: flex;
    align-items: center;

    overflow: hidden;

    background:
        url('../images/2.png') center / cover no-repeat;

    color: #fff;
}

.shop-hero-overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(90deg,
            rgba(0, 0, 0, .92) 0%,
            rgba(0, 0, 0, .72) 45%,
            rgba(0, 0, 0, .25) 100%);
}

.shop-hero-content {
    position: relative;
    z-index: 2;

    width: min(90%, 1450px);
    margin: auto;

    padding-top: 70px;
}

.shop-hero h1 {
    margin: 12px 0 18px;

    font-family: 'Cormorant Garamond', serif;

    font-size: clamp(60px, 6vw, 92px);
    font-weight: 600;

    line-height: .9;
}

.shop-hero h1 em {
    display: block;

    color: var(--gold2);

    font-family: 'Italianno', cursive;

    font-size: 1.1em;
    font-weight: 400;
}

.shop-hero-content>p {
    max-width: 560px;

    color: rgba(255, 255, 255, .76);

    font-size: 15px;
    line-height: 1.8;
}


/* BREADCRUMB */

.shop-breadcrumb {
    margin-top: 30px;

    display: flex;
    align-items: center;

    gap: 12px;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 2px;
}

.shop-breadcrumb a {
    color: #fff;
}

.shop-breadcrumb i {
    color: var(--gold);

    font-size: 8px;
}

.shop-breadcrumb span {
    color: var(--gold2);
}


/* SHOP */

.shop-section {
    padding: 110px 0 130px;

    background: var(--cream);
}

.shop-container {
    width: min(92%, 1500px);

    margin: auto;
}


/* TOP */

.shop-top {
    margin-bottom: 45px;

    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    gap: 30px;
}

.shop-top h2 {
    margin: 8px 0 0;

    color: #17130e;

    font-family: 'Cormorant Garamond', serif;

    font-size: clamp(45px, 4vw, 65px);
    font-weight: 600;

    line-height: .95;
}

.shop-top h2 em {
    color: var(--gold);

    font-family: 'Italianno', cursive;

    font-size: 1.15em;
    font-weight: 400;
}

.shop-results {
    color: #777067;

    font-size: 12px;

    letter-spacing: .5px;
}

.shop-results strong {
    color: #1c1812;
}


/* TOOLBAR */

.shop-toolbar {
    margin-bottom: 45px;

    padding: 18px;

    display: grid;
    grid-template-columns: 1fr auto auto;

    align-items: center;

    gap: 25px;

    background: #fff;

    border: 1px solid rgba(30, 25, 18, .10);
}


/* SEARCH */

.shop-search {
    position: relative;

    max-width: 380px;
}

.shop-search i {
    position: absolute;

    left: 17px;
    top: 50%;

    transform: translateY(-50%);

    color: var(--gold);
}

.shop-search input {
    width: 100%;
    height: 48px;

    padding: 0 18px 0 46px;

    outline: 0;

    border: 1px solid #ded8cd;

    background: #faf8f3;

    color: #191610;

    font-family: 'DM Sans', sans-serif;

    font-size: 12px;
}

.shop-search input:focus {
    border-color: var(--gold);
}


/* FILTER */

.shop-filters {
    display: flex;
    align-items: center;

    gap: 4px;
}

.shop-filter {
    min-height: 44px;

    padding: 0 17px;

    border: 0;

    background: transparent;

    color: #777067;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 1.2px;

    cursor: pointer;

    transition: .25s ease;
}

.shop-filter:hover,
.shop-filter.active {
    background: #171510;
    color: var(--gold2);
}


/* SORT */

.shop-sort-wrap {
    position: relative;

    display: flex;
    align-items: center;

    border-left: 1px solid #e2ddd4;

    padding-left: 22px;
}

.shop-sort-wrap i {
    position: absolute;

    left: 37px;

    color: var(--gold);

    font-size: 12px;

    pointer-events: none;
}

.shop-sort-wrap select {
    height: 46px;

    min-width: 185px;

    padding: 0 35px 0 40px;

    border: 1px solid #ded8cd;

    outline: none;

    background: #fff;

    color: #3f3931;

    font-family: 'DM Sans', sans-serif;

    font-size: 11px;

    cursor: pointer;
}


/* =========================================================
   PRODUCT GRID
========================================================= */

.shop-product-grid {
    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 42px 24px;
}

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


/* IMAGE */

.shop-product-image {
    position: relative;

    aspect-ratio: .82;

    overflow: hidden;

    background: #eee9df;
}

.shop-product-image>a {
    display: block;

    width: 100%;
    height: 100%;
}

.shop-product-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform .7s ease;
}

.shop-product-card:hover .shop-product-image img {

    transform: scale(1.045);
}


/* BADGE */

.shop-badge {
    position: absolute;

    top: 15px;
    left: 15px;

    z-index: 3;

    padding: 7px 10px;

    background: #15130f;

    color: #e4bc63;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: 1.3px;
}


/* TOOLS */

.shop-product-tools {
    position: absolute;

    top: 15px;
    right: 15px;

    z-index: 3;

    display: flex;
    flex-direction: column;

    gap: 7px;

    opacity: 0;

    transform: translateX(10px);

    transition: .3s ease;
}

.shop-product-card:hover .shop-product-tools {

    opacity: 1;

    transform: translateX(0);
}

.shop-product-tools button,
.shop-product-tools a {
    width: 40px;
    height: 40px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 0;

    background: #fff;

    color: #171510;

    font-size: 14px;

    cursor: pointer;

    box-shadow:
        0 5px 20px rgba(0, 0, 0, .12);

    transition: .25s ease;
}

.shop-product-tools button:hover,
.shop-product-tools a:hover {
    background: var(--gold);

    color: #fff;
}


/* ADD CART */

.shop-add-cart {
    position: absolute;

    z-index: 4;

    left: 14px;
    right: 14px;
    bottom: 14px;

    height: 48px;

    border: 0;

    background: #15130f;

    color: #fff;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 1.5px;

    cursor: pointer;

    transform: translateY(75px);

    transition: .35s ease;
}

.shop-add-cart i {
    margin-right: 8px;

    color: var(--gold2);
}

.shop-product-card:hover .shop-add-cart {

    transform: translateY(0);
}

.shop-add-cart:hover {
    background: var(--gold);
}


/* PRODUCT INFO */

.shop-product-info {
    padding: 18px 4px 0;
}

.shop-stars {
    margin-bottom: 8px;

    color: #c9952e;

    font-size: 10px;

    letter-spacing: 2px;
}

.shop-product-info h3 {
    margin: 0 0 6px;

    font-family: 'Cormorant Garamond', serif;

    font-size: 23px;
    font-weight: 600;

    line-height: 1.1;
}

.shop-product-info h3 a {
    color: #17130e;

    transition: color .25s ease;
}

.shop-product-info h3 a:hover {
    color: var(--gold);
}

.shop-product-info p {
    min-height: 18px;

    margin: 0 0 10px;

    color: #8a8278;

    font-size: 10px;

    text-transform: lowercase;

    letter-spacing: .5px;
}

.shop-price {
    display: flex;
    align-items: center;

    gap: 10px;
}

.shop-price span {
    color: #17130e;

    font-size: 14px;
    font-weight: 700;
}

.shop-price del {
    color: #aaa298;

    font-size: 12px;
}


/* EMPTY */

.shop-empty {
    display: none;

    padding: 90px 20px;

    text-align: center;
}

.shop-empty.show {
    display: block;
}

.shop-empty>i {
    margin-bottom: 20px;

    color: var(--gold);

    font-size: 32px;
}

.shop-empty h3 {
    margin: 0 0 10px;

    font-family: 'Cormorant Garamond', serif;

    font-size: 34px;
}

.shop-empty p {
    color: var(--muted);
}

.shop-empty button {
    margin-top: 18px;

    padding: 15px 25px;

    border: 0;

    background: #171510;

    color: #fff;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 1.5px;

    cursor: pointer;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1150px) {

    .shop-product-grid {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));
    }

    .shop-toolbar {
        grid-template-columns: 1fr auto;
    }

    .shop-filters {
        grid-row: 2;
        grid-column: 1 / -1;

        justify-content: center;

        border-top: 1px solid #eee9e0;

        padding-top: 15px;
    }

}


@media (max-width: 800px) {

    .shop-hero {
        min-height: 500px;
    }

    .shop-section {
        padding: 80px 0;
    }

    .shop-top {
        align-items: flex-start;
        flex-direction: column;
    }

    .shop-toolbar {
        display: flex;
        flex-direction: column;

        align-items: stretch;

        gap: 15px;
    }

    .shop-search {
        max-width: none;
    }

    .shop-filters {
        order: 2;

        justify-content: flex-start;

        overflow-x: auto;

        padding-top: 15px;
    }

    .shop-filter {
        white-space: nowrap;
    }

    .shop-sort-wrap {
        order: 3;

        border-left: 0;

        padding-left: 0;
    }

    .shop-sort-wrap i {
        left: 15px;
    }

    .shop-sort-wrap select {
        width: 100%;
    }

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

        gap: 35px 15px;
    }

    .shop-product-tools {
        opacity: 1;

        transform: none;
    }

    .shop-add-cart {
        transform: none;
    }

}


@media (max-width: 520px) {

    .shop-container {
        width: calc(100% - 24px);
    }

    .shop-hero-content {
        width: calc(100% - 36px);
    }

    .shop-hero h1 {
        font-size: 50px;
    }

    .shop-product-grid {
        gap: 30px 10px;
    }

    .shop-product-info h3 {
        font-size: 19px;
    }

    .shop-product-info p {
        font-size: 9px;
    }

    .shop-product-image {
        aspect-ratio: .8;
    }

    .shop-product-tools {
        top: 8px;
        right: 8px;
    }

    .shop-product-tools button,
    .shop-product-tools a {
        width: 34px;
        height: 34px;
    }

    .shop-add-cart {
        left: 8px;
        right: 8px;
        bottom: 8px;

        height: 42px;

        font-size: 8px;
    }

}

/* =========================================================
   PRODUCT DETAIL PAGE
========================================================= */

.product-detail-page {
    background: #fff;
}

.product-page-container {
    width: min(92%, 1450px);
    margin: 0 auto;
}


/* BREADCRUMB */

.product-breadcrumb-section {
    padding: 150px 0 25px;
    background: #f6f2e9;
}

.product-breadcrumb {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;

    color: #8a8175;

    font-size: 9px;
    font-weight: 700;
    letter-spacing: 1.5px;
}

.product-breadcrumb a {
    color: #39332b;
    transition: .25s ease;
}

.product-breadcrumb a:hover {
    color: var(--gold);
}

.product-breadcrumb i {
    color: var(--gold);
    font-size: 7px;
}

.product-breadcrumb span {
    color: #9c7020;
}


/* =========================================================
   MAIN PRODUCT
========================================================= */

.product-main {
    padding: 55px 0 110px;
    background: #f6f2e9;
}

.product-detail-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
    gap: 85px;
    align-items: start;
}


/* GALLERY */

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

.product-main-photo {
    position: relative;
    height: 720px;
    overflow: hidden;
    background: #eee9df;
}

.product-main-photo img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform .7s ease;
}

.product-main-photo:hover img {
    transform: scale(1.025);
}

.product-detail-badge {
    position: absolute;
    z-index: 5;
    top: 22px;
    left: 22px;

    padding: 9px 13px;

    background: #171510;
    color: var(--gold2);

    font-size: 8px;
    font-weight: 700;
    letter-spacing: 1.5px;
}

.product-zoom-btn {
    position: absolute;
    z-index: 5;
    top: 20px;
    right: 20px;

    width: 46px;
    height: 46px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 0;
    background: rgba(255, 255, 255, .94);
    color: #171510;

    cursor: pointer;
    transition: .25s ease;
}

.product-zoom-btn:hover {
    background: var(--gold);
    color: #fff;
}


/* THUMBNAILS */

.product-thumbnails {
    margin-top: 14px;

    display: grid;
    grid-template-columns: repeat(3, 100px);
    gap: 12px;
}

.product-thumb {
    width: 100px;
    height: 100px;
    padding: 0;

    overflow: hidden;

    border: 1px solid transparent;
    background: #eee9df;

    cursor: pointer;
    transition: .25s ease;
}

.product-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.product-thumb.active,
.product-thumb:hover {
    border-color: var(--gold);
}


/* =========================================================
   PRODUCT INFO
========================================================= */

.product-detail-info {
    padding-top: 10px;
}

.product-detail-info h1 {
    margin: 10px 0 13px;

    color: #18140f;

    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(48px, 4.4vw, 72px);
    font-weight: 600;

    line-height: .96;
    letter-spacing: -1.5px;
}

.product-detail-rating {
    display: flex;
    align-items: center;
    gap: 12px;

    margin-bottom: 19px;
}

.detail-stars {
    color: var(--gold);
    font-size: 11px;
    letter-spacing: 2px;
}

.product-detail-rating span {
    color: #8d857b;
    font-size: 10px;
}

.product-detail-price {
    display: flex;
    align-items: center;
    gap: 13px;
}

.product-detail-price strong {
    color: #17130e;

    font-family: 'Cormorant Garamond', serif;
    font-size: 30px;
    font-weight: 700;
}

.product-detail-price del {
    color: #aaa297;
    font-size: 15px;
}

.product-detail-line {
    height: 1px;
    margin: 27px 0;

    background: rgba(28, 23, 17, .13);
}


/* SCENT */

.product-info-label {
    display: block;

    margin-bottom: 9px;

    color: #5e554b;

    font-size: 9px;
    font-weight: 700;
    letter-spacing: 1.8px;
}

.product-scent-notes {
    margin-bottom: 20px;
}

.product-scent-notes p {
    margin: 0;

    color: #a17626;

    font-family: 'Cormorant Garamond', serif;
    font-size: 22px;
    font-style: italic;
}

.product-description {
    max-width: 620px;

    margin: 0 0 24px;

    color: #756d63;

    font-size: 13px;
    line-height: 1.9;
}


/* STOCK */

.product-stock {
    margin-bottom: 28px;

    display: flex;
    align-items: center;
    gap: 7px;

    color: #82796f;

    font-size: 9px;
    letter-spacing: .7px;
}

.product-stock strong {
    color: #4d6d40;
}

.stock-dot {
    width: 7px;
    height: 7px;

    border-radius: 50%;

    background: #668a55;
    box-shadow: 0 0 0 4px rgba(102, 138, 85, .12);
}


/* QUANTITY */

.product-purchase-row {
    margin-bottom: 17px;

    display: flex;
    align-items: flex-end;
    gap: 12px;
}

.product-quantity {
    height: 52px;

    display: flex;
    align-items: center;

    border: 1px solid #d9d1c4;
    background: #fff;
}

.product-quantity button {
    width: 47px;
    height: 100%;

    border: 0;
    background: transparent;

    color: #171510;

    cursor: pointer;
}

.product-quantity button:hover {
    color: var(--gold);
}

.product-quantity input {
    width: 48px;

    border: 0;
    outline: 0;

    background: transparent;

    color: #171510;

    text-align: center;
    font-family: 'DM Sans', sans-serif;
    font-weight: 700;

    appearance: textfield;
}

.product-quantity input::-webkit-inner-spin-button,
.product-quantity input::-webkit-outer-spin-button {
    appearance: none;
}


/* WISHLIST */

.product-wishlist-btn {
    width: 52px;
    height: 52px;

    border: 1px solid #d9d1c4;

    background: #fff;
    color: #171510;

    font-size: 16px;

    cursor: pointer;
    transition: .25s ease;
}

.product-wishlist-btn:hover,
.product-wishlist-btn.active {
    border-color: #171510;
    background: #171510;
    color: var(--gold2);
}


/* ADD TO BAG */

.product-add-cart {
    width: 100%;
    height: 62px;

    padding: 0 24px;

    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;

    border: 0;

    background: #171510;
    color: #fff;

    cursor: pointer;

    transition:
        background .3s ease,
        transform .3s ease;
}

.product-add-cart:hover {
    background: #a87925;
    transform: translateY(-2px);
}

.product-add-cart>i {
    color: var(--gold2);
    font-size: 15px;
}

.product-add-cart span {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2px;
}

.product-add-cart strong {
    color: var(--gold2);
    font-size: 12px;
}


/* BUY NOW */

.product-buy-now {
    width: 100%;
    height: 57px;

    margin-top: 10px;

    border: 1px solid #171510;

    background: transparent;
    color: #171510;

    font-size: 9px;
    font-weight: 700;
    letter-spacing: 2px;

    cursor: pointer;

    transition: .3s ease;
}

.product-buy-now i {
    margin-left: 10px;
}

.product-buy-now:hover {
    background: #171510;
    color: #fff;
}


/* BENEFITS */

.product-benefits {
    margin: 30px 0;

    padding: 25px 0;

    display: grid;
    grid-template-columns: repeat(3, 1fr);

    border-top: 1px solid rgba(25, 20, 15, .12);
    border-bottom: 1px solid rgba(25, 20, 15, .12);
}

.product-benefits>div {
    padding: 0 14px;

    display: flex;
    align-items: center;
    gap: 11px;

    border-right: 1px solid rgba(25, 20, 15, .10);
}

.product-benefits>div:first-child {
    padding-left: 0;
}

.product-benefits>div:last-child {
    border-right: 0;
}

.product-benefits i {
    color: var(--gold);
    font-size: 19px;
}

.product-benefits span {
    color: #857d72;

    font-size: 8px;
    line-height: 1.5;
}

.product-benefits strong {
    display: block;

    color: #302a23;

    font-size: 9px;
    letter-spacing: .4px;
}


/* ACCORDION */

.product-accordions {
    border-top: 1px solid #dcd5ca;
}

.product-accordion {
    border-bottom: 1px solid #dcd5ca;
}

.product-accordion-head {
    width: 100%;

    padding: 20px 2px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    border: 0;
    background: transparent;

    color: #302a23;

    font-family: 'DM Sans', sans-serif;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 1.4px;

    cursor: pointer;
}

.product-accordion-head i {
    color: var(--gold);
    font-size: 10px;
}

.product-accordion-content {
    max-height: 0;

    overflow: hidden;

    opacity: 0;

    transition:
        max-height .4s ease,
        opacity .3s ease,
        padding .3s ease;
}

.product-accordion-content p {
    margin: 0;

    color: #7c7469;

    font-size: 12px;
    line-height: 1.8;
}

.product-accordion.active .product-accordion-content {
    max-height: 250px;

    padding: 0 0 22px;

    opacity: 1;
}


/* SECURE */

.product-secure {
    margin-top: 25px;

    display: flex;
    align-items: center;

    gap: 9px;

    color: #8b8379;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: 1px;
}

.product-secure>i {
    color: #65835a;
}

.product-secure>div {
    margin-left: auto;

    display: flex;
    gap: 7px;

    color: #37322c;

    font-size: 23px;
}


/* =========================================================
   BRAND STRIP
========================================================= */

.product-brand-strip {
    min-height: 95px;

    padding: 20px 5%;

    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;

    gap: 35px;

    background: #171510;
    color: #fff;
}

.product-brand-strip>div {
    display: flex;
    align-items: center;
    gap: 10px;

    color: #d7d0c4;

    font-size: 8px;
    font-weight: 700;
    letter-spacing: 1.4px;
}

.product-brand-strip i {
    color: var(--gold2);
    font-size: 14px;
}

.strip-dot {
    width: 3px;
    height: 3px;

    border-radius: 50%;

    background: var(--gold);
}


/* =========================================================
   RELATED PRODUCTS
========================================================= */

.related-products-section {
    padding: 115px 5% 125px;

    background: #fff;
}

.related-products-section .section-head {
    max-width: 720px;
    margin: 0 auto 60px;
}

.related-product-grid {
    width: min(100%, 1450px);
    margin: 0 auto;

    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));

    gap: 24px;
}

.related-product-image {
    position: relative;

    aspect-ratio: .82;

    overflow: hidden;

    background: #eee9df;
}

.related-product-image>a:first-child {
    display: block;
    width: 100%;
    height: 100%;
}

.related-product-image img {
    width: 100%;
    height: 100%;

    display: block;
    object-fit: cover;

    transition: transform .6s ease;
}

.related-product-card:hover .related-product-image img {
    transform: scale(1.045);
}

.related-product-image>span {
    position: absolute;

    top: 14px;
    left: 14px;

    padding: 7px 9px;

    background: #171510;
    color: var(--gold2);

    font-size: 7px;
    font-weight: 700;
    letter-spacing: 1px;
}

.related-view {
    position: absolute;

    left: 12px;
    right: 12px;
    bottom: 12px;

    height: 45px;

    display: flex;
    align-items: center;
    justify-content: center;

    gap: 10px;

    background: #171510;
    color: #fff;

    font-size: 8px;
    font-weight: 700;
    letter-spacing: 1.5px;

    transform: translateY(70px);

    transition: .35s ease;
}

.related-product-card:hover .related-view {
    transform: translateY(0);
}

.related-view:hover {
    background: var(--gold);
}

.related-product-info {
    padding-top: 16px;
}

.related-stars {
    margin-bottom: 7px;

    color: var(--gold);

    font-size: 9px;
    letter-spacing: 1.5px;
}

.related-product-info h3 {
    margin: 0 0 5px;

    font-family: 'Cormorant Garamond', serif;
    font-size: 23px;
}

.related-product-info h3 a {
    color: #17130e;
}

.related-product-info p {
    margin: 0 0 9px;

    color: #91887d;

    font-size: 9px;
}

.related-product-info>strong {
    color: #17130e;
    font-size: 13px;
}

.related-shop-all {
    margin-top: 55px;
    text-align: center;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1050px) {

    .product-detail-grid {
        gap: 45px;

        grid-template-columns:
            minmax(0, 1fr) minmax(380px, .9fr);
    }

    .product-main-photo {
        height: 600px;
    }

    .related-product-grid {
        grid-template-columns: repeat(3, 1fr);
    }

}


@media (max-width: 800px) {

    .product-breadcrumb-section {
        padding-top: 125px;
    }

    .product-main {
        padding: 35px 0 80px;
    }

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

    .product-main-photo {
        height: auto;
        aspect-ratio: 1 / 1.05;
    }

    .product-detail-info h1 {
        font-size: 50px;
    }

    .related-product-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 30px 14px;
    }

    .related-view {
        transform: none;
    }

}


@media (max-width: 520px) {

    .product-page-container {
        width: calc(100% - 24px);
    }

    .product-breadcrumb-section {
        padding-top: 115px;
    }

    .product-main-photo {
        aspect-ratio: 1 / 1.08;
    }

    .product-thumbnails {
        grid-template-columns: repeat(3, 75px);
    }

    .product-thumb {
        width: 75px;
        height: 75px;
    }

    .product-detail-info h1 {
        font-size: 43px;
    }

    .product-benefits {
        gap: 0;
    }

    .product-benefits>div {
        padding: 0 7px;
        align-items: flex-start;
        flex-direction: column;
    }

    .product-benefits>div:first-child {
        padding-left: 0;
    }

    .product-brand-strip {
        justify-content: flex-start;
        gap: 17px;
    }

    .strip-dot {
        display: none;
    }

    .product-brand-strip>div {
        width: calc(50% - 10px);
    }

    .related-products-section {
        padding: 80px 12px;
    }

    .related-product-grid {
        gap: 28px 10px;
    }

    .related-product-info h3 {
        font-size: 19px;
    }

}

/* =========================================================
   PRODUCT PAGE — LARGER TYPOGRAPHY
   Layout / design unchanged
========================================================= */

/* Breadcrumb */
.product-breadcrumb {
    font-size: 12px;
}

/* Small eyebrow */
.product-detail-info .eyebrow {
    font-size: 13px;
    letter-spacing: 2px;
}

/* Product Name */
.product-detail-info h1 {
    font-size: clamp(58px, 5vw, 82px);
}

/* Stars */
.detail-stars {
    font-size: 15px;
}

.product-detail-rating span {
    font-size: 13px;
}

/* Price */
.product-detail-price strong {
    font-size: 38px;
}

.product-detail-price del {
    font-size: 19px;
}

/* Labels */
.product-info-label {
    font-size: 12px;
    letter-spacing: 1.8px;
}

/* Fragrance Notes */
.product-scent-notes p {
    font-size: 27px;
}

/* Main Description */
.product-description {
    font-size: 16px;
    line-height: 1.85;
}

/* Stock */
.product-stock {
    font-size: 12px;
}

/* Quantity */
.product-quantity input {
    font-size: 16px;
}

.product-quantity button {
    font-size: 14px;
}

/* ADD TO BAG */
.product-add-cart span {
    font-size: 13px;
}

.product-add-cart strong {
    font-size: 15px;
}

.product-add-cart>i {
    font-size: 17px;
}

/* BUY NOW */
.product-buy-now {
    font-size: 12px;
}

/* Benefits */
.product-benefits i {
    font-size: 23px;
}

.product-benefits strong {
    font-size: 12px;
}

.product-benefits span {
    font-size: 11px;
}

/* Accordions */
.product-accordion-head {
    font-size: 12px;
}

.product-accordion-content p {
    font-size: 15px;
    line-height: 1.8;
}

/* Secure Checkout */
.product-secure {
    font-size: 11px;
}

/* Black Brand Strip */
.product-brand-strip>div {
    font-size: 11px;
}

/* Related section */
.related-products-section .section-head .eyebrow {
    font-size: 12px;
}

.related-products-section .section-head h2 {
    font-size: clamp(52px, 5vw, 72px);
}

.related-products-section .section-head p {
    font-size: 16px;
}

/* Related Products Stars */
.related-stars {
    font-size: 12px;
}

/* Related Product Names */
.related-product-info h3 {
    font-size: 28px;
}

/* Related Product Notes */
.related-product-info p {
    font-size: 12px;
}

/* Related Product Price */
.related-product-info>strong {
    font-size: 17px;
}

/* Related View Product Button */
.related-view {
    font-size: 11px;
}

/* Product badges */
.product-detail-badge,
.related-product-image>span {
    font-size: 10px;
}


/* =========================================================
   MOBILE — STILL LARGE BUT RESPONSIVE
========================================================= */

@media (max-width: 800px) {

    .product-detail-info h1 {
        font-size: 56px;
    }

    .product-description {
        font-size: 15px;
    }

    .product-scent-notes p {
        font-size: 24px;
    }

    .product-detail-price strong {
        font-size: 34px;
    }

    .product-benefits strong {
        font-size: 11px;
    }

    .product-benefits span {
        font-size: 10px;
    }

    .product-accordion-head {
        font-size: 11px;
    }

    .product-accordion-content p {
        font-size: 14px;
    }

    .related-product-info h3 {
        font-size: 24px;
    }

    .related-product-info p {
        font-size: 11px;
    }
}


@media (max-width: 520px) {

    .product-detail-info h1 {
        font-size: 48px;
    }

    .product-detail-info .eyebrow {
        font-size: 11px;
    }

    .product-description {
        font-size: 15px;
    }

    .product-info-label {
        font-size: 11px;
    }

    .product-stock {
        font-size: 11px;
    }

    .product-add-cart span {
        font-size: 11px;
    }

    .product-buy-now {
        font-size: 11px;
    }

    .product-brand-strip>div {
        font-size: 10px;
    }

    .related-product-info h3 {
        font-size: 22px;
    }

    .related-product-info>strong {
        font-size: 15px;
    }
}

/* =========================================================
   CART PAGE
========================================================= */

.cart-page {
    background: #f6f2e9;
}

.cart-container {
    width: min(92%, 1500px);
    margin: 0 auto;
}


/* HERO */

.cart-hero {
    position: relative;

    min-height: 480px;

    display: flex;
    align-items: center;

    overflow: hidden;

    background:
        url('../images/1.png') center / cover no-repeat;

    color: #fff;
}

.cart-hero-overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(90deg,
            rgba(0, 0, 0, .93),
            rgba(0, 0, 0, .70),
            rgba(0, 0, 0, .30));
}

.cart-hero-content {
    position: relative;
    z-index: 2;

    width: min(90%, 1450px);
    margin: auto;

    padding-top: 70px;
}

.cart-hero-content .eyebrow {
    font-size: 14px;
}

.cart-hero h1 {
    margin: 10px 0 18px;

    font-family: 'Cormorant Garamond', serif;

    font-size: clamp(68px, 6vw, 96px);
    font-weight: 600;

    line-height: .9;
}

.cart-hero h1 em {
    display: block;

    color: var(--gold2);

    font-family: 'Italianno', cursive;

    font-size: 1.08em;
    font-weight: 400;
}

.cart-hero-content>p {
    max-width: 600px;

    color: rgba(255, 255, 255, .80);

    font-size: 18px;
    line-height: 1.8;
}

.cart-breadcrumb {
    margin-top: 28px;

    display: flex;
    align-items: center;
    gap: 12px;

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 1.5px;
}

.cart-breadcrumb a {
    color: #fff;
}

.cart-breadcrumb i {
    color: var(--gold);
    font-size: 8px;
}

.cart-breadcrumb span {
    color: var(--gold2);
}


/* =========================================================
   CART AREA
========================================================= */

.cart-section {
    padding: 100px 0 130px;
}

.cart-layout {
    display: grid;

    grid-template-columns:
        minmax(0, 1.55fr) minmax(390px, .65fr);

    gap: 60px;

    align-items: start;
}


/* TITLE */

.cart-title-row {
    margin-bottom: 28px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 20px;
}

.cart-title-row h2 {
    margin: 0;

    font-family: 'Cormorant Garamond', serif;

    font-size: 48px;
    font-weight: 600;
}

.cart-title-row h2 span {
    color: #9c9489;

    font-family: 'DM Sans', sans-serif;

    font-size: 17px;
    font-weight: 500;
}

.cart-title-row>a {
    color: #9b7023;

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 1.3px;
}

.cart-title-row>a i {
    margin-left: 7px;
}


/* TABLE */

.cart-table-heading {
    padding: 16px 0;

    display: grid;

    grid-template-columns:
        minmax(330px, 1.7fr) .5fr .7fr .5fr;

    gap: 20px;

    border-top: 1px solid #d8d0c4;
    border-bottom: 1px solid #d8d0c4;

    color: #746c61;

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 1.3px;
}


/* ITEM */

.cart-item {
    padding: 30px 0;

    display: grid;

    grid-template-columns:
        minmax(330px, 1.7fr) .5fr .7fr .5fr;

    align-items: center;

    gap: 20px;

    border-bottom: 1px solid #d8d0c4;
}

.cart-item-product {
    display: flex;
    align-items: center;

    gap: 22px;
}

.cart-item-image {
    width: 125px;
    height: 145px;

    flex: 0 0 125px;

    overflow: hidden;

    background: #e8e1d5;
}

.cart-item-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform .5s ease;
}

.cart-item-image:hover img {
    transform: scale(1.05);
}

.cart-item-copy>span {
    color: #a27626;

    font-size: 11px;
    font-weight: 700;

    letter-spacing: 1.7px;
}

.cart-item-copy h3 {
    margin: 6px 0 14px;

    font-family: 'Cormorant Garamond', serif;

    font-size: 29px;
    font-weight: 600;

    line-height: 1.05;
}

.cart-item-copy h3 a {
    color: #17130e;
}

.cart-remove {
    padding: 0;

    border: 0;

    background: transparent;

    color: #8a8176;

    font-size: 11px;
    font-weight: 700;

    letter-spacing: 1px;

    cursor: pointer;
}

.cart-remove i {
    margin-right: 6px;
}

.cart-remove:hover {
    color: #a44d3c;
}


/* PRICE */

.cart-item-price,
.cart-line-total {
    color: #29231d;

    font-family: 'Cormorant Garamond', serif;

    font-size: 22px;
    font-weight: 700;
}


/* QUANTITY */

.cart-qty {
    width: 135px;
    height: 50px;

    display: flex;
    align-items: center;

    border: 1px solid #d2c9bc;

    background: #fff;
}

.cart-qty button {
    width: 42px;
    height: 100%;

    border: 0;

    background: transparent;

    color: #27221c;

    cursor: pointer;
}

.cart-qty button:hover {
    color: var(--gold);
}

.cart-qty input {
    width: 48px;

    border: 0;
    outline: 0;

    background: transparent;

    color: #17130e;

    font-size: 16px;
    font-weight: 700;

    text-align: center;
}


/* =========================================================
   COUPON
========================================================= */

.cart-coupon-area {
    margin-top: 35px;

    padding: 30px;

    border: 1px solid #d8d0c4;

    background: #fff;
}

.cart-coupon-copy {
    margin-bottom: 20px;

    display: flex;
    align-items: center;

    gap: 14px;
}

.cart-coupon-copy>i {
    color: var(--gold);

    font-size: 25px;
}

.cart-coupon-copy strong {
    display: block;

    margin-bottom: 3px;

    color: #29231d;

    font-family: 'Cormorant Garamond', serif;

    font-size: 23px;
}

.cart-coupon-copy span {
    color: #82796e;

    font-size: 13px;
}

.cart-coupon-form {
    display: grid;

    grid-template-columns: 1fr auto;

    gap: 10px;
}

.cart-coupon-form input {
    min-width: 0;
    height: 55px;

    padding: 0 18px;

    border: 1px solid #d5cdc1;
    outline: none;

    background: #faf8f3;

    font-family: 'DM Sans', sans-serif;

    font-size: 14px;
    font-weight: 600;

    letter-spacing: 1px;
}

.cart-coupon-form input:focus {
    border-color: var(--gold);
}

.cart-coupon-form button {
    min-width: 155px;

    padding: 0 25px;

    border: 0;

    background: #171510;

    color: #fff;

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 1.3px;

    cursor: pointer;
}

.cart-coupon-form button:hover {
    background: var(--gold);
}

.coupon-message {
    margin-top: 15px;

    padding: 13px 15px;

    font-size: 13px;
}

.coupon-message.success {
    background: #edf4e9;
    color: #47643d;
}

.coupon-message.error {
    background: #f8e9e6;
    color: #9c493c;
}

.coupon-message i {
    margin-right: 7px;
}

.coupon-message a {
    margin-left: 10px;

    color: inherit;

    font-weight: 700;

    text-decoration: underline;
}


/* =========================================================
   SUMMARY
========================================================= */

.cart-summary {
    position: sticky;
    top: 25px;

    padding: 42px 38px;

    background: #171510;
    color: #fff;
}

.cart-summary>.eyebrow {
    color: var(--gold2);

    font-size: 12px;
}

.cart-summary>h2 {
    margin: 8px 0 32px;

    font-family: 'Cormorant Garamond', serif;

    font-size: 47px;
    font-weight: 600;

    line-height: .9;
}

.cart-summary>h2 em {
    color: var(--gold2);

    font-family: 'Italianno', cursive;

    font-size: 1.15em;
    font-weight: 400;
}

.cart-summary-lines {
    padding: 25px 0;

    border-top: 1px solid rgba(255, 255, 255, .13);
    border-bottom: 1px solid rgba(255, 255, 255, .13);
}

.cart-summary-lines>div {
    margin-bottom: 17px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 20px;

    color: #c6bfb5;

    font-size: 14px;
}

.cart-summary-lines>div:last-child {
    margin-bottom: 0;
}

.cart-summary-lines strong {
    color: #fff;

    font-size: 14px;
}

.cart-summary-lines .discount-row,
.cart-summary-lines .discount-row strong {
    color: #d9b55e;
}


/* TOTAL */

.cart-summary-total {
    padding: 27px 0;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 20px;
}

.cart-summary-total span {
    display: block;

    margin-bottom: 4px;

    color: #fff;

    font-family: 'Cormorant Garamond', serif;

    font-size: 22px;
    font-weight: 600;
}

.cart-summary-total small {
    color: #8e887e;

    font-size: 10px;
}

.cart-summary-total>strong {
    color: var(--gold2);

    font-family: 'Cormorant Garamond', serif;

    font-size: 32px;
}


/* CHECKOUT */

.cart-checkout-btn {
    min-height: 62px;

    padding: 0 20px;

    display: flex;
    align-items: center;
    justify-content: center;

    gap: 12px;

    background: var(--gold);
    color: #fff;

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 1.5px;

    transition: .3s ease;
}

.cart-checkout-btn:hover {
    background: #fff;
    color: #171510;
}

.cart-secure-note {
    margin-top: 17px;

    display: flex;
    justify-content: center;

    gap: 8px;

    color: #99938a;

    font-size: 11px;
}

.cart-secure-note i {
    color: #729167;
}

.cart-payment-icons {
    margin-top: 18px;

    display: flex;
    justify-content: center;

    gap: 9px;

    color: #d5cec2;

    font-size: 29px;
}

.cart-summary-benefit {
    margin-top: 30px;

    padding-top: 25px;

    display: flex;
    align-items: center;

    gap: 14px;

    border-top: 1px solid rgba(255, 255, 255, .13);
}

.cart-summary-benefit>i {
    color: var(--gold2);

    font-size: 23px;
}

.cart-summary-benefit strong {
    display: block;

    color: #fff;

    font-family: 'Cormorant Garamond', serif;

    font-size: 19px;
}

.cart-summary-benefit span {
    color: #938d84;

    font-size: 11px;
}


/* =========================================================
   EMPTY CART
========================================================= */

.empty-cart {
    max-width: 750px;

    margin: 0 auto;

    padding: 50px 20px;

    text-align: center;
}

.empty-cart-icon {
    width: 100px;
    height: 100px;

    margin: 0 auto 30px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(193, 143, 45, .35);

    border-radius: 50%;

    color: var(--gold);

    font-size: 34px;
}

.empty-cart .eyebrow {
    font-size: 13px;
}

.empty-cart h2 {
    margin: 12px 0 20px;

    font-family: 'Cormorant Garamond', serif;

    font-size: clamp(58px, 6vw, 82px);
    font-weight: 600;

    line-height: .95;
}

.empty-cart h2 em {
    display: block;

    color: var(--gold);

    font-family: 'Italianno', cursive;

    font-size: 1.1em;
    font-weight: 400;
}

.empty-cart p {
    max-width: 560px;

    margin: 0 auto 30px;

    color: #756d63;

    font-size: 17px;

    line-height: 1.8;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1050px) {

    .cart-layout {
        grid-template-columns: 1fr;
    }

    .cart-summary {
        position: relative;
        top: auto;

        max-width: 650px;

        margin-left: auto;
    }

}


@media (max-width: 750px) {

    .cart-hero {
        min-height: 450px;
    }

    .cart-hero h1 {
        font-size: 58px;
    }

    .cart-hero-content>p {
        font-size: 16px;
    }

    .cart-section {
        padding: 75px 0 90px;
    }

    .cart-table-heading {
        display: none;
    }

    .cart-item {
        position: relative;

        grid-template-columns: 1fr 1fr;

        gap: 22px 15px;
    }

    .cart-item-product {
        grid-column: 1 / -1;
    }

    .cart-item-price::before,
    .cart-item-quantity::before,
    .cart-line-total::before {
        content: attr(data-label);

        display: block;

        margin-bottom: 8px;

        color: #8c8378;

        font-family: 'DM Sans', sans-serif;

        font-size: 10px;
        font-weight: 700;

        letter-spacing: 1.2px;

        text-transform: uppercase;
    }

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

    .cart-line-total::before {
        text-align: right;
    }

    .cart-coupon-form {
        grid-template-columns: 1fr;
    }

    .cart-coupon-form button {
        min-height: 53px;
    }

}


@media (max-width: 520px) {

    .cart-container {
        width: calc(100% - 24px);
    }

    .cart-hero-content {
        width: calc(100% - 36px);
    }

    .cart-hero h1 {
        font-size: 50px;
    }

    .cart-title-row {
        align-items: flex-start;
        flex-direction: column;
    }

    .cart-title-row h2 {
        font-size: 40px;
    }

    .cart-item-image {
        width: 100px;
        height: 120px;

        flex-basis: 100px;
    }

    .cart-item-copy h3 {
        font-size: 25px;
    }

    .cart-item-price,
    .cart-line-total {
        font-size: 20px;
    }

    .cart-summary {
        padding: 34px 24px;
    }

    .cart-summary>h2 {
        font-size: 43px;
    }

    .cart-summary-lines>div {
        font-size: 13px;
    }

    .cart-summary-total>strong {
        font-size: 28px;
    }

    .empty-cart h2 {
        font-size: 50px;
    }

}


/* =========================================================
   CHECKOUT PAGE
========================================================= */

.checkout-page {
    background: #f6f2e9;
}

.checkout-container {
    width: min(92%, 1500px);
    margin: 0 auto;
}


/* =========================================================
   HERO
========================================================= */

.checkout-hero {
    position: relative;

    min-height: 470px;

    display: flex;
    align-items: center;

    overflow: hidden;

    background:
        url('../images/3.png') center / cover no-repeat;

    color: #fff;
}

.checkout-hero-overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(90deg,
            rgba(0, 0, 0, .94),
            rgba(0, 0, 0, .72),
            rgba(0, 0, 0, .30));
}

.checkout-hero-content {
    position: relative;
    z-index: 2;

    width: min(90%, 1450px);
    margin: auto;

    padding-top: 70px;
}

.checkout-hero-content .eyebrow {
    font-size: 14px;
}

.checkout-hero h1 {
    margin: 10px 0 18px;

    font-family: 'Cormorant Garamond', serif;

    font-size: clamp(68px, 6vw, 96px);
    font-weight: 600;

    line-height: .9;
}

.checkout-hero h1 em {
    display: block;

    color: var(--gold2);

    font-family: 'Italianno', cursive;

    font-size: 1.1em;
    font-weight: 400;
}

.checkout-hero-content>p {
    max-width: 600px;

    color: rgba(255, 255, 255, .80);

    font-size: 18px;
    line-height: 1.8;
}

.checkout-breadcrumb {
    margin-top: 30px;

    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 11px;

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 1.4px;
}

.checkout-breadcrumb a {
    color: #fff;
}

.checkout-breadcrumb i {
    color: var(--gold);
    font-size: 8px;
}

.checkout-breadcrumb span {
    color: var(--gold2);
}


/* =========================================================
   CHECKOUT SECTION
========================================================= */

.checkout-section {
    padding: 85px 0 130px;
}


/* STEPS */

.checkout-steps {
    max-width: 900px;

    margin: 0 auto 65px;

    display: flex;
    align-items: center;
    justify-content: center;
}

.checkout-step {
    display: flex;
    align-items: center;

    gap: 13px;

    opacity: .48;
}

.checkout-step.active {
    opacity: 1;
}

.checkout-step>span {
    width: 50px;
    height: 50px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid #c9a458;
    border-radius: 50%;

    color: #9d7428;

    font-family: 'Cormorant Garamond', serif;

    font-size: 19px;
    font-weight: 700;
}

.checkout-step.active>span {
    background: #171510;
    border-color: #171510;

    color: var(--gold2);
}

.checkout-step strong {
    display: block;

    color: #29241d;

    font-family: 'Cormorant Garamond', serif;

    font-size: 21px;
}

.checkout-step small {
    color: #81796e;

    font-size: 11px;
}

.checkout-step-line {
    width: 90px;
    height: 1px;

    margin: 0 22px;

    background: #cfc6b9;
}


/* =========================================================
   LAYOUT
========================================================= */

.checkout-layout {
    display: grid;

    grid-template-columns:
        minmax(0, 1.25fr) minmax(400px, .75fr);

    align-items: start;

    gap: 60px;
}

.checkout-main {
    display: flex;
    flex-direction: column;

    gap: 25px;
}


/* =========================================================
   BOX
========================================================= */

.checkout-box {
    padding: 42px;

    border: 1px solid #ddd5c8;

    background: #fff;
}

.checkout-box-heading {
    margin-bottom: 35px;

    display: flex;
    align-items: center;

    gap: 17px;
}

.checkout-number {
    width: 52px;
    height: 52px;

    flex: 0 0 52px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #171510;

    color: var(--gold2);

    font-family: 'Cormorant Garamond', serif;

    font-size: 19px;
    font-weight: 700;
}

.checkout-box-heading span {
    display: block;

    margin-bottom: 3px;

    color: #9a7228;

    font-size: 11px;
    font-weight: 700;

    letter-spacing: 1.8px;
}

.checkout-box-heading h2 {
    margin: 0;

    color: #201b15;

    font-family: 'Cormorant Garamond', serif;

    font-size: 35px;
    font-weight: 600;
}


/* =========================================================
   FIELDS
========================================================= */

.checkout-fields {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 24px 20px;
}

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

.checkout-field label {
    display: block;

    margin-bottom: 9px;

    color: #51493f;

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 1px;
}

.checkout-field label span {
    color: #aa7624;
}

.checkout-field input,
.checkout-field select {
    width: 100%;
    height: 58px;

    padding: 0 17px;

    border: 1px solid #d6cec2;
    outline: none;

    background: #faf9f6;

    color: #28231d;

    font-family: 'DM Sans', sans-serif;

    font-size: 15px;

    transition: .25s ease;
}

.checkout-field input::placeholder {
    color: #aaa298;
}

.checkout-field input:focus,
.checkout-field select:focus {
    border-color: var(--gold);

    background: #fff;

    box-shadow:
        0 0 0 3px rgba(190, 140, 43, .08);
}


/* ICON INPUT */

.checkout-input {
    position: relative;
}

.checkout-input>i {
    position: absolute;

    left: 17px;
    top: 50%;

    transform: translateY(-50%);

    color: #aa7d2b;

    font-size: 15px;
}

.checkout-input input {
    padding-left: 47px;
}


/* =========================================================
   SHIPPING
========================================================= */

.shipping-option {
    position: relative;

    min-height: 92px;

    padding: 20px;

    display: flex;
    align-items: center;

    gap: 16px;

    border: 1px solid #d5cdc0;

    cursor: pointer;
}

.shipping-option.selected {
    border-color: #b78832;

    background: #fcfaf5;
}

.shipping-option>input {
    position: absolute;

    opacity: 0;
    pointer-events: none;
}

.shipping-radio {
    width: 20px;
    height: 20px;

    flex: 0 0 20px;

    border: 1px solid #b1a89d;
    border-radius: 50%;

    background: #fff;
}

.shipping-option.selected .shipping-radio {
    border: 6px solid #a97925;
}

.shipping-option>i {
    color: var(--gold);

    font-size: 23px;
}

.shipping-option-copy {
    flex: 1;
}

.shipping-option-copy strong {
    display: block;

    margin-bottom: 4px;

    color: #2b251e;

    font-family: 'Cormorant Garamond', serif;

    font-size: 21px;
}

.shipping-option-copy small {
    color: #81786e;

    font-size: 12px;
}

.shipping-price {
    color: #946a21;

    font-size: 15px;
}


/* =========================================================
   PAYMENT
========================================================= */

.payment-security {
    margin-bottom: 20px;

    padding: 19px;

    display: flex;

    gap: 15px;

    background: #f5f1e9;
}

.payment-security>i {
    margin-top: 2px;

    color: #628054;

    font-size: 22px;
}

.payment-security strong {
    display: block;

    margin-bottom: 4px;

    color: #29231c;

    font-size: 15px;
}

.payment-security p {
    margin: 0;

    color: #7c7469;

    font-size: 13px;
    line-height: 1.6;
}

.payment-placeholder {
    min-height: 150px;

    padding: 25px;

    display: flex;
    align-items: center;

    gap: 20px;

    border: 1px dashed #c9bdab;

    background: #fcfbf8;
}

.payment-placeholder-icon {
    width: 60px;
    height: 60px;

    flex: 0 0 60px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid #d1b676;

    color: var(--gold);

    font-size: 23px;
}

.payment-placeholder strong {
    display: block;

    margin-bottom: 7px;

    color: #28221b;

    font-family: 'Cormorant Garamond', serif;

    font-size: 23px;
}

.payment-placeholder p {
    margin: 0;

    color: #827a70;

    font-size: 13px;
    line-height: 1.7;
}

.checkout-payment-icons {
    margin-top: 20px;

    display: flex;

    gap: 10px;

    color: #403a32;

    font-size: 32px;
}


/* =========================================================
   BILLING CHECKBOX
========================================================= */

.checkout-checkbox {
    padding: 23px;

    display: flex;
    align-items: center;

    gap: 15px;

    border: 1px solid #d8d0c4;

    background: #fff;

    cursor: pointer;
}

.checkout-checkbox input {
    position: absolute;

    opacity: 0;
}

.custom-check {
    width: 24px;
    height: 24px;

    flex: 0 0 24px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #171510;

    color: var(--gold2);

    font-size: 10px;
}

.checkout-checkbox strong {
    display: block;

    margin-bottom: 3px;

    color: #2b261f;

    font-size: 14px;
}

.checkout-checkbox small {
    color: #8b8379;

    font-size: 12px;
}


/* =========================================================
   SUMMARY
========================================================= */

.checkout-summary {
    position: sticky;
    top: 25px;

    padding: 42px 38px;

    background: #171510;

    color: #fff;
}

.checkout-summary-heading .eyebrow {
    color: var(--gold2);

    font-size: 12px;
}

.checkout-summary-heading h2 {
    margin: 7px 0 30px;

    font-family: 'Cormorant Garamond', serif;

    font-size: 48px;
    font-weight: 600;

    line-height: .9;
}

.checkout-summary-heading h2 em {
    color: var(--gold2);

    font-family: 'Italianno', cursive;

    font-size: 1.15em;
    font-weight: 400;
}


/* PRODUCTS */

.checkout-summary-products {
    padding: 5px 0 10px;

    border-top: 1px solid rgba(255, 255, 255, .13);
}

.checkout-summary-product {
    padding: 20px 0;

    display: grid;

    grid-template-columns:
        80px minmax(0, 1fr) auto;

    align-items: center;

    gap: 15px;

    border-bottom: 1px solid rgba(255, 255, 255, .10);
}

.checkout-summary-image {
    position: relative;

    width: 80px;
    height: 90px;

    background: #eee7dc;
}

.checkout-summary-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
}

.checkout-summary-image>span {
    position: absolute;

    top: -8px;
    right: -8px;

    width: 25px;
    height: 25px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: var(--gold);

    color: #fff;

    font-size: 11px;
    font-weight: 700;
}

.checkout-summary-product-copy>span {
    color: var(--gold2);

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 1.2px;
}

.checkout-summary-product-copy h3 {
    margin: 4px 0;

    color: #fff;

    font-family: 'Cormorant Garamond', serif;

    font-size: 21px;
    font-weight: 600;

    line-height: 1.05;
}

.checkout-summary-product-copy small {
    color: #918b82;

    font-size: 10px;
}

.checkout-summary-product>strong {
    color: #fff;

    font-size: 14px;
}


/* COUPON */

.checkout-coupon {
    margin: 20px 0 0;

    padding: 14px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 15px;

    border: 1px solid rgba(219, 181, 94, .35);

    background: rgba(219, 181, 94, .07);
}

.checkout-coupon>div {
    display: flex;
    align-items: center;

    gap: 8px;

    color: #d9b55e;

    font-size: 12px;
    font-weight: 700;
}

.checkout-coupon>strong {
    color: #d9b55e;

    font-size: 11px;
}


/* TOTALS */

.checkout-totals {
    margin-top: 25px;

    padding: 22px 0;

    border-top: 1px solid rgba(255, 255, 255, .13);
    border-bottom: 1px solid rgba(255, 255, 255, .13);
}

.checkout-totals>div {
    margin-bottom: 16px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 20px;

    color: #c3bcb1;

    font-size: 14px;
}

.checkout-totals>div:last-child {
    margin-bottom: 0;
}

.checkout-totals strong {
    color: #fff;

    font-size: 13px;
}

.checkout-totals .checkout-discount,
.checkout-totals .checkout-discount strong {
    color: var(--gold2);
}


/* GRAND TOTAL */

.checkout-grand-total {
    padding: 27px 0;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 20px;
}

.checkout-grand-total span {
    display: block;

    color: #fff;

    font-size: 13px;
    font-weight: 700;

    letter-spacing: 1.5px;
}

.checkout-grand-total small {
    color: #89837a;

    font-size: 10px;
}

.checkout-grand-total>strong {
    color: var(--gold2);

    font-family: 'Cormorant Garamond', serif;

    font-size: 35px;
}


/* PLACE ORDER */

.place-order-btn {
    width: 100%;
    min-height: 64px;

    padding: 0 18px;

    display: flex;
    align-items: center;
    justify-content: center;

    gap: 12px;

    border: 0;

    background: var(--gold);

    color: #fff;

    font-family: 'DM Sans', sans-serif;

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 1.4px;

    cursor: pointer;

    transition: .3s ease;
}

.place-order-btn:hover {
    background: #fff;
    color: #171510;
}

.checkout-safe {
    margin-top: 19px;

    display: flex;
    align-items: center;
    justify-content: center;

    gap: 9px;
}

.checkout-safe i {
    color: #77966c;
}

.checkout-safe p {
    margin: 0;

    color: #99938a;

    font-size: 11px;
}

.back-to-cart {
    margin-top: 25px;

    display: block;

    color: #c5beb3;

    text-align: center;

    font-size: 11px;
    font-weight: 700;

    letter-spacing: 1px;
}

.back-to-cart i {
    margin-right: 8px;
}

.back-to-cart:hover {
    color: var(--gold2);
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1050px) {

    .checkout-layout {
        grid-template-columns: 1fr;
    }

    .checkout-summary {
        position: relative;
        top: auto;

        max-width: 700px;

        margin-left: auto;
    }

}


@media (max-width: 750px) {

    .checkout-hero {
        min-height: 450px;
    }

    .checkout-hero h1 {
        font-size: 58px;
    }

    .checkout-hero-content>p {
        font-size: 16px;
    }

    .checkout-section {
        padding: 70px 0 90px;
    }

    .checkout-steps {
        margin-bottom: 45px;
    }

    .checkout-step-line {
        width: 35px;
        margin: 0 8px;
    }

    .checkout-step>div {
        display: none;
    }

    .checkout-box {
        padding: 30px 25px;
    }

    .checkout-fields {
        grid-template-columns: 1fr;
    }

    .checkout-field.full {
        grid-column: auto;
    }

}


@media (max-width: 520px) {

    .checkout-container {
        width: calc(100% - 24px);
    }

    .checkout-hero-content {
        width: calc(100% - 36px);
    }

    .checkout-hero h1 {
        font-size: 50px;
    }

    .checkout-step>span {
        width: 44px;
        height: 44px;

        font-size: 17px;
    }

    .checkout-box {
        padding: 27px 18px;
    }

    .checkout-box-heading h2 {
        font-size: 30px;
    }

    .checkout-number {
        width: 45px;
        height: 45px;

        flex-basis: 45px;
    }

    .checkout-field input,
    .checkout-field select {
        height: 56px;

        font-size: 15px;
    }

    .shipping-option {
        align-items: flex-start;

        padding: 18px 14px;
    }

    .shipping-option-copy strong {
        font-size: 19px;
    }

    .checkout-summary {
        padding: 32px 20px;
    }

    .checkout-summary-heading h2 {
        font-size: 43px;
    }

    .checkout-summary-product {
        grid-template-columns:
            65px minmax(0, 1fr) auto;

        gap: 11px;
    }

    .checkout-summary-image {
        width: 65px;
        height: 78px;
    }

    .checkout-summary-product-copy h3 {
        font-size: 18px;
    }

    .checkout-grand-total>strong {
        font-size: 30px;
    }

}


.cart-hero {
    padding-top: 11%;
    padding-bottom: 8%;
}

/* =========================================================
   PRODUCT CARD LINK + DETAILS
========================================================= */

.product-image-link {
    display: block;
    width: 100%;
    height: 100%;
}

.product-image-link img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.product-info h3 a {
    color: inherit;
    text-decoration: none;
    transition: color .25s ease;
}

.product-info h3 a:hover {
    color: var(--gold);
}

.product-details-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;

    margin-top: 15px;

    color: #9b7025;

    font-size: 13px;
    font-weight: 700;

    letter-spacing: 1.2px;

    text-decoration: none;

    transition: .25s ease;
}

.product-details-link i {
    transition: transform .25s ease;
}

.product-details-link:hover {
    color: #171510;
}

.product-details-link:hover i {
    transform: translateX(5px);
}


/* COLLECTION FULL CLICK */

.collection-card-link {
    position: relative;

    width: 100%;
    height: 100%;

    display: block;

    color: inherit;
    text-decoration: none;
}

.collection-card-link>img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
}

.collection-action {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}


/* LARGE PRODUCT TYPOGRAPHY */

.product-info h3 {
    font-family: 'Cormorant Garamond', serif;
    font-size: 27px;
    line-height: 1.05;
}

.product-info .notes {
    font-size: 14px;
    line-height: 1.65;
}

.product-info .price {
    font-size: 19px;
    font-weight: 700;
}


/* MOBILE */

@media (max-width: 767px) {

    .product-info h3 {
        font-size: 22px;
    }

    .product-info .notes {
        font-size: 13px;
    }

    .product-details-link {
        font-size: 11px;
        gap: 7px;
    }

}

.contact-hero {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(0, 0, 0, .90) 0%, rgba(0, 0, 0, .72) 43%, rgba(0, 0, 0, .28) 100%), url(../images/10.png) center 55% / cover no-repeat !important;
    transform: scale(1.02);
}
.faq-hero {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(0, 0, 0, .90) 0%, rgba(0, 0, 0, .72) 43%, rgba(0, 0, 0, .28) 100%), url(../images/11.png) center 55% / cover no-repeat !important;
    transform: scale(1.02);
}

.product-stock.is-sold-out {
    color:#a94a4a;
}

.product-stock.is-sold-out .stock-dot {
    background:#a94a4a;
    box-shadow:0 0 0 5px rgba(169,74,74,.12);
}
.product-sold-out-button,
.product-sold-out-button:hover {
    cursor:not-allowed;
    opacity:.55;
    transform:none !important;
}

.hero h1 em, .section-head h2 em, .story h2 em, .banner h2 em, .newsletter h2 em {
    font-family: "allura" !important;
}
span.shop-badge {
    background: #ffffff !important;
    color: #000000 !important;
    font-size: 15px !important;
}

span.product-detail-badge {
    background: #ffffff !important;
    color: #000000 !important;
    font-size: 15px !important;
}


