@font-face {
    font-family: "Cormorant Garamond";
    src: url("../fonts/cormorant-garamond-latin-500-normal.woff2") format("woff2");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Cormorant Garamond";
    src: url("../fonts/cormorant-garamond-latin-700-normal.woff2") format("woff2");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Montserrat";
    src: url("../fonts/montserrat-latin-400-normal.woff2") format("woff2");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Montserrat";
    src: url("../fonts/montserrat-latin-600-normal.woff2") format("woff2");
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Montserrat";
    src: url("../fonts/montserrat-latin-700-normal.woff2") format("woff2");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Space Mono";
    src: url("../fonts/space-mono-latin-400-normal.woff2") format("woff2");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Space Mono";
    src: url("../fonts/space-mono-latin-700-normal.woff2") format("woff2");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Material Icons";
    src: url("../fonts/material-icons-latin-400-normal.woff2") format("woff2");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

.material-icons {
    font-family: "Material Icons";
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    line-height: 1;
    letter-spacing: normal;
    text-transform: none;
    display: inline-block;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    -webkit-font-feature-settings: "liga";
    font-feature-settings: "liga";
    -webkit-font-smoothing: antialiased;
}

:root {
    --bs-font-sans-serif: "Montserrat", sans-serif;
    --bs-body-font-family: "Montserrat", sans-serif;
    --font-body: "Montserrat", sans-serif;
}

body {
    font-family: var(--font-body);
}

h1,
h2,
h3,
h4,
h5,
h6,
.navbar-nav .nav-link {
    font-family: "Montserrat", sans-serif;
}

:root {
    --gc-bg: #050505;
    --gc-gold-bright: #f3e5ab;
    --gc-gold-metallic: linear-gradient(135deg, #bf953f 0%, #fcf6ba 25%, #b38728 50%, #fbf5b7 75%, #aa771c 100%);
    --gc-gold-solid: #d4af37;
    --gc-border-gold: rgba(212, 175, 55, 0.25);
    --gc-text-light: #f5f4f0;
    --gc-text-muted: #9e9a90;
    --gc-surface-warm: #f6eee6;
}

body {
    background-color: var(--gc-bg) !important;
    color: var(--gc-text-light);
    overflow-x: hidden;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

body>#header,
body>#footer {
    flex: 0 0 auto;
}

body>#wrapper,
body>#wrapper.wrapper,
body>main#wrapper,
body>main#wrapper.wrapper {
    flex: 1 0 auto;
    margin-top: 0 !important;
}

#wrapper,
#wrapper.wrapper,
main#wrapper,
body main#wrapper.wrapper {
    /* Option 1
    background:
        radial-gradient(1200px 420px at 50% -120px, rgba(212, 175, 55, 0.16), transparent 60%),
        linear-gradient(180deg, #111111 0%, #0a0a0a 45%, #060606 100%);
    */

    /* Option 2
    background:
        radial-gradient(1100px 380px at 50% -140px, rgba(212, 175, 55, 0.14), transparent 62%),
        linear-gradient(180deg, #171717 0%, #0f0f0f 55%, #090909 100%),
        repeating-linear-gradient(135deg,
            rgba(255, 255, 255, 0.035) 0,
            rgba(255, 255, 255, 0.035) 1px,
            transparent 1px,
            transparent 6px) !important;
    */

    position: relative;
    overflow: hidden;
    background-color: #0f0d0b !important;
    background-image:
        radial-gradient(1000px 420px at 50% -80px, rgba(212, 175, 55, 0.25), transparent 60%),
        linear-gradient(180deg, #1a1612 0%, #110f0d 52%, #090909 100%) !important;
}

#wrapper::before,
#wrapper.wrapper::before,
main#wrapper::before,
body main#wrapper.wrapper::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 3;
    opacity: 0.32;
    background-image:
        linear-gradient(45deg,
            rgba(156, 108, 57, 0.85) 0,
            rgba(156, 108, 57, 0.85) 2px,
            transparent 2px,
            transparent 24px),
        linear-gradient(-45deg,
            rgba(110, 75, 40, 0.72) 0,
            rgba(110, 75, 40, 0.72) 2px,
            transparent 2px,
            transparent 24px);
    background-size: 34px 34px;
    background-position: 0 0, 17px 17px;
}

#wrapper>*,
#wrapper.wrapper>*,
main#wrapper>*,
body main#wrapper.wrapper>* {
    position: relative;
    z-index: 4;
}

.font-mono {
    font-family: "Space Mono", monospace;
}

.gc-language-selector {
    position: absolute;
    left: 1rem;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
}

.gc-language-selector--inline {
    position: static;
    left: auto;
    top: auto;
    transform: none;
    z-index: auto;
}

.gc-header-actions .gc-language-selector .dropdown-toggle,
.gc-header-actions .gc-language-selector select {
    min-height: 2.25rem;
}

.gc-language-selector select,
.gc-language-selector .dropdown-toggle {
    background: transparent;
    color: var(--gc-text-light);
    border: 1px solid var(--gc-border-gold);
    font-size: 0.75rem;
    text-transform: uppercase;
    padding: 0.25rem 0.5rem;
}

.gc-header,
.gc-footer {
    backdrop-filter: none;
    background: #191919 !important;
}

.gc-header {
    border-bottom: 2px solid var(--gc-border-gold) !important;
}

.gc-footer {
    border-top: 2px solid var(--gc-border-gold) !important;
}

.gc-logo-stack {
    position: relative;
    display: block;
    height: 100px;
    transition: height 0.24s ease-out;
}

.gc-logo-stack.is-face {
    height: 64.8px;
}

.brand-logo-img {
    height: 100%;
    width: auto;
    object-fit: contain;
    transition: opacity 0.24s ease-out;
}

.brand-logo-img--full {
    position: relative;
    z-index: 2;
}

.brand-logo-img--face {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
}

.brand-logo-img.is-hidden {
    opacity: 0;
    pointer-events: none;
}

.nav-link-custom {
    color: var(--gc-text-muted);
    font-size: 0.75rem;
    letter-spacing: 3px;
    transition: color 0.3s ease;
    text-decoration: none;
}

.nav-link-custom:hover,
.nav-link-custom.active {
    color: var(--gc-gold-solid);
}

.gc-main-nav .nav-link-custom {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 1.25rem;
    line-height: 1;
}

.gc-main-nav__icon-link .material-icons {
    font-size: 1rem;
    line-height: 1;
}

.gc-main-nav__icon-link,
.gc-cart-link {
    position: relative;
}

.gc-cart-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.5rem;
    height: 1.5rem;
    color: inherit;
    text-decoration: none;
}

.gc-cart-badge {
    position: absolute;
    top: -0.4rem;
    right: -0.7rem;
    min-width: 1rem;
    height: 1rem;
    padding: 0 0.2rem;
    border-radius: 999px;
    background: var(--gc-gold-solid);
    color: #111;
    font-size: 0.62rem;
    font-weight: 700;
    line-height: 1rem;
    text-align: center;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

@layer ps-components {
    .password-requirements__length,
    .password-requirements__score {
        color: inherit !important;
        font-size: .875rem;
    }
}

.btn-collector-custom {
    border: 1px solid var(--gc-border-gold);
    color: var(--gc-text-light);
    font-family: "Montserrat", sans-serif;
    font-size: 0.65rem;
    letter-spacing: 2.5px;
    transition: all 0.3s ease;
    background: transparent;
}

.btn-collector-custom:hover {
    border-color: var(--gc-gold-solid);
    background: rgba(212, 175, 55, 0.1);
    color: var(--gc-gold-bright);
}

.gc-account-mobile-icon .material-icons {
    font-size: 1.1rem;
    line-height: 1;
}

.btn-gold-custom,
.btn-primary {
    background: var(--gc-gold-metallic);
    color: #000;
    font-family: "Montserrat", sans-serif;
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 2px;
    border: none;
    transition: transform 0.3s ease;
    text-decoration: none;
    display: inline-block;
}

.btn-outline-primary {
    background: transparent !important;
    color: var(--gc-gold-solid) !important;
    border: 1px solid var(--gc-border-gold) !important;
    font-family: "Montserrat", sans-serif;
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    transition: transform 0.3s ease, color 0.3s ease, border-color 0.3s ease, background-color 0.3s ease;
}

.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:active {
    background: rgba(212, 175, 55, 0.1) !important;
    color: var(--gc-gold-bright) !important;
    border-color: var(--gc-gold-solid) !important;
    transform: translateY(-2px);
    box-shadow: none !important;
}

.btn-gold-custom:hover {
    transform: translateY(-2px);
    color: #000;
}

input,
select,
textarea,
.form-control,
.form-select {
    background-color: #d3d3d3 !important;
    border-color: #d4d4d4 !important;
    color: #111 !important;
}

input::placeholder,
textarea::placeholder,
.form-control::placeholder {
    color: #6f6f6f !important;
    opacity: 1;
}

input:focus,
select:focus,
textarea:focus,
.form-control:focus,
.form-select:focus {
    background-color: #ececec !important;
    border-color: #bdbdbd !important;
    color: #111 !important;
    box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.08) !important;
}

.gc-newsletter .btn.btn-primary,
.gc-newsletter .btn.btn-primary:hover,
.gc-newsletter .btn.btn-primary:focus,
.gc-newsletter .btn.btn-primary:active,
.gc-newsletter .btn.btn-primary:disabled {
    --bs-btn-color: #000;
    --bs-btn-hover-color: #000;
    --bs-btn-active-color: #000;
    --bs-btn-disabled-color: #000;
    color: #000 !important;
}

.page-product .product__images .product__carousel,
.page-product .product__images .product__no-image {
    position: relative;
}

.page-product .product__images .product-flags {
    position: absolute;
    top: 1rem;
    left: 1rem;
    z-index: 5;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.product__actions-qty-add .quantity-button__group .btn,
.product__actions-qty-add .quantity-button__group .btn .material-icons,
.product__actions-qty-add .quantity-button__group .btn:hover,
.product__actions-qty-add .quantity-button__group .btn:focus,
.product__actions-qty-add .quantity-button__group .btn:active,
.product-line__quantity-button .quantity-button__group .btn,
.product-line__quantity-button .quantity-button__group .btn .material-icons,
.product-line__quantity-button .quantity-button__group .btn:hover,
.product-line__quantity-button .quantity-button__group .btn:focus,
.product-line__quantity-button .quantity-button__group .btn:active {
    color: var(--gc-gold-solid) !important;
}

.page-product .js-product-details .details__list,
.page-product .js-product-details .details__list .details__item {
    background: transparent !important;
}

.page-product .js-product-details .details__list,
.page-product .js-product-details .details__list .details__title,
.page-product .js-product-details .details__list .details__right,
.page-product .js-product-details .details__list .details__right span,
.page-product .js-product-details .details__list a {
    color: #fff !important;
}

.page-product .js-product-details .details__item--quantities .details__right span {
    font-size: 1.05rem;
    line-height: 1.4;
}

.page-product .js-product-details .details__item--quantities .gc-stock-message {
    font-size: 1.2rem !important;
    line-height: 1.4 !important;
}

.hero-title-styled {
    font-family: "Cormorant Garamond", serif;
    font-size: 5.5rem;
    font-weight: 700;
    letter-spacing: 2px;
    line-height: 1;
    background: linear-gradient(180deg, #fff 0%, #a6a4a0 100%);
    background-clip: text;
    -webkit-background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
}

.gc-hero-cover {
    position: relative;
    height: 100vh;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.gc-hero-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(5, 5, 5, 0.4) 0%, rgba(5, 5, 5, 0.95) 100%),
        url("../img/paradon.webp") center/cover no-repeat;
    filter: grayscale(100%) contrast(120%);
    transform: scale(1.05);
    transition: transform 10s ease;
}

.gc-hero-cover:hover .gc-hero-bg {
    transform: scale(1);
}

.gc-card-container {
    height: 520px;
}

.gc-editorial-img {
    filter: grayscale(100%) contrast(110%);
    transition: all 0.7s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.card:hover .gc-editorial-img {
    filter: grayscale(0%) contrast(100%);
    transform: scale(1.03);
}

.card-overlay-gradient {
    background: linear-gradient(0deg, rgba(5, 5, 5, 0.95) 0%, rgba(5, 5, 5, 0.5) 15%, transparent 100%);
}

.fs-7 {
    font-size: 0.75rem;
}

.gc-text-gold-solid {
    color: var(--gc-gold-solid);
}

.gc-text-gold-bright {
    color: var(--gc-gold-bright);
}

.gc-breadcrumb-item-gold {
    color: var(--gc-gold-solid) !important;
}

.gc-hero-lead {
    max-width: 650px;
}

#footer .footer,
#footer .footer * {
    font-family: "Montserrat", sans-serif;
    /* color: var(--gc-text-muted) !important; */
}

#footer .footer .material-icons {
    font-family: "Material Icons" !important;
    font-style: normal;
    font-weight: normal;
    line-height: 1;
}

#footer .footer a {
    color: var(--gc-text-muted) !important;
    text-decoration: none;
    transition: color 0.3s ease;
}

#footer .footer .btn,
#footer .footer .btn.btn-primary,
#footer .footer input[type="submit"],
#footer .footer button {
    color: #000 !important;
}

#footer .footer-block__title,
#footer .footer-block__title a {
    color: var(--gc-gold-solid) !important;
}

#footer .footer__before,
#footer .footer__main,
#footer .copyright {
    font-size: 0.75rem;
    letter-spacing: 3px;
}

#footer,
#footer.footer {
    backdrop-filter: none !important;
}

#footer .gc-footer,
#footer .footer {
    backdrop-filter: none;
    background: #191919 !important;
    padding-top: 50px;
    padding-bottom: 50px;
}

#footer .footer__before {
    background: transparent !important;
}

#footer .copyright {
    color: var(--gc-gold-solid) !important;
    text-align: center;
    padding-top: 1rem;
}

#footer .copyright,
#footer .copyright * {
    color: var(--gc-gold-solid) !important;
}

#footer .copyright .brand-logo-img {
    width: 30%;
    max-width: 150px;
    height: auto;
    margin-bottom: 0.5rem;
}

#footer .copyright>span {
    font-size: 0.6rem;
}

#footer a:hover {
    color: var(--gc-gold-solid) !important;
}

@layer bs-custom-components {
    .breadcrumb__wrapper {
        background-color: transparent !important;
    }
}

@layer bs-base {
    a {
        color: var(--gc-gold-solid);
        text-decoration: none;
    }

    .product-flags .badge:not(.discount),
    .product-flags .text-bg-primary,
    .product-flags .badge.online-only,
    .product-flags .badge.online-only.text-bg-primary {
        background-color: #191919 !important;
        border-color: #191919 !important;
        color: #fff !important;
    }
}

@layer bs-components {
    .btn {
        --bs-btn-color: #000;
        --bs-btn-hover-color: #000;
        --bs-btn-active-color: #000;
        --bs-btn-disabled-color: #000;
        color: #000;
    }

    .breadcrumb {
        --bs-breadcrumb-divider-color: var(--gc-gold-solid);
        /* opcional: cambia el símbolo */
        --bs-breadcrumb-divider: "·";
    }

    /* refuerzo por si alguna regla lo pisa */
    .breadcrumb-item+.breadcrumb-item::before {
        color: var(--gc-gold-solid) !important;
    }

    .product-flags .badge.online-only,
    .product-flags .badge.online-only.text-bg-primary,
    .product-flags .badge:not(.discount).online-only {
        background-color: #191919 !important;
        border: 1px solid #191919 !important;
        color: #fff !important;
    }
}

@layer ps-components {
    .product-line__title {
        color: var(--gc-gold-solid) !important;
    }

    .account-menu__link,
    .account-menu__link:hover,
    .account-menu__link:focus,
    .account-menu__link--active {
        color: var(--gc-gold-solid) !important;
    }
}

@layer ps-modules {
    .blockreassurance .reassurance__desc {
        color: #fff !important;
    }
}

#js-checkout-summary {
    background: transparent !important;
    border: 1px solid var(--gc-gold-solid) !important;
}

#js-checkout-summary,
#js-checkout-summary .cart-summary__products,
#js-checkout-summary .cart-summary__products-list,
#js-checkout-summary .cart-summary__product,
#js-checkout-summary .cart-summary-product,
#js-checkout-summary .cart-summary__subtotals,
#js-checkout-summary .cart-summary__total,
#js-checkout-summary .accordion-collapse,
#js-checkout-summary .accordion-item,
#js-checkout-summary .accordion-button {
    background: transparent !important;
}

#js-checkout-summary,
#js-checkout-summary .cart-summary__products-number,
#js-checkout-summary .cart-summary__label,
#js-checkout-summary .cart-summary__value,
#js-checkout-summary .cart-summary-product__link,
#js-checkout-summary .cart-summary-product__attribute .label,
#js-checkout-summary .cart-summary-product__attribute .value,
#js-checkout-summary .cart-summary-product__price .label,
#js-checkout-summary .cart-summary-product__quantity .label,
#js-checkout-summary .cart-summary-product__quantity .value,
#js-checkout-summary .cart-summary-product__total,
#js-checkout-summary .accordion-button {
    color: #f5f4f0 !important;
}

#js-checkout-summary .cart-summary-product__link {
    color: var(--gc-gold-bright) !important;
}

#js-checkout-summary hr {
    border-color: var(--gc-border-gold) !important;
    opacity: 1;
}

#js-checkout-summary .accordion-button:focus {
    box-shadow: none !important;
}

:is(.page-order, .page-checkout) .checkout-grid {
    color: #f5f4f0;
}

:is(.page-order, .page-checkout) .checkout-grid__content .step,
:is(.page-order, .page-checkout) .checkout-grid__content .step__content,
:is(.page-order, .page-checkout) .checkout-grid__content .tab-content,
:is(.page-order, .page-checkout) .checkout-grid__content .tab-pane {
    background: transparent !important;
}

:is(.page-order, .page-checkout) .checkout-grid__content .step {
    border: 1px solid var(--gc-border-gold);
    border-radius: 0.25rem;
    padding: 1.25rem;
}

:is(.page-order, .page-checkout) .checkout-grid__content .step__title,
:is(.page-order, .page-checkout) .checkout-grid__content .step__title h1,
:is(.page-order, .page-checkout) .checkout-grid__content .step__title p {
    color: var(--gc-gold-bright) !important;
}

:is(.page-order, .page-checkout) .checkout-grid__content .step__title hr {
    border-color: var(--gc-border-gold) !important;
    opacity: 1;
}

:is(.page-order, .page-checkout) .checkout-grid__content .nav-underline {
    border-bottom: 1px solid var(--gc-border-gold);
}

:is(.page-order, .page-checkout) .checkout-grid__content .nav-underline .nav-link {
    color: var(--gc-text-light) !important;
}

:is(.page-order, .page-checkout) .checkout-grid__content .nav-underline .nav-link.active {
    color: var(--gc-gold-bright) !important;
    border-bottom-color: var(--gc-gold-solid) !important;
}

:is(.page-order, .page-checkout) .checkout-grid__content .form-label,
:is(.page-order, .page-checkout) .checkout-grid__content .form-text,
:is(.page-order, .page-checkout) .checkout-grid__content .form-check-label,
:is(.page-order, .page-checkout) .checkout-grid__content .password-valid-message,
:is(.page-order, .page-checkout) .checkout-grid__content .password-invalid-message,
:is(.page-order, .page-checkout) .checkout-grid__content .password-length-message,
:is(.page-order, .page-checkout) .checkout-grid__content .password-requirements span {
    color: #f5f4f0 !important;
}

.form-check-input[type="radio"] {
    appearance: none;
    -webkit-appearance: none;
    width: 1rem;
    height: 1rem;
    border-radius: 50%;
    border: 1px solid var(--gc-gold-solid) !important;
    background-color: #111 !important;
    position: relative;
    cursor: pointer;
    box-shadow: inset 0 0 0 2px #111;
}

.form-check-input[type="radio"]:checked {
    background-color: var(--gc-gold-solid) !important;
    border-color: var(--gc-gold-solid) !important;
    box-shadow: inset 0 0 0 3px #111;
}

:is(.page-registration, .page-authentication, .gc-newsletter) input[type="checkbox"],
:is(.page-registration, .page-authentication, .gc-newsletter) .form-check-input[type="checkbox"] {
    appearance: none;
    -webkit-appearance: none;
    width: 1rem;
    height: 1rem;
    border-radius: 0.2rem;
    border: 1px solid var(--gc-gold-solid) !important;
    background-color: #111 !important;
    position: relative;
    cursor: pointer;
}

:is(.page-registration, .page-authentication, .gc-newsletter) input[type="checkbox"]:checked,
:is(.page-registration, .page-authentication, .gc-newsletter) .form-check-input[type="checkbox"]:checked {
    background-color: var(--gc-gold-solid) !important;
    border-color: var(--gc-gold-solid) !important;
}

:is(.page-registration, .page-authentication, .gc-newsletter) input[type="checkbox"]:checked::after,
:is(.page-registration, .page-authentication, .gc-newsletter) .form-check-input[type="checkbox"]:checked::after {
    content: "";
    position: absolute;
    left: 0.3rem;
    top: 0.1rem;
    width: 0.25rem;
    height: 0.5rem;
    border: solid #111;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

:is(.page-order, .page-checkout) .checkout-grid__content .form-check-input {
    border-color: var(--gc-gold-solid) !important;
    background-color: #111 !important;
}

:is(.page-order, .page-checkout) .checkout-grid__content .form-check-input:checked {
    background-color: var(--gc-gold-solid) !important;
    border-color: var(--gc-gold-solid) !important;
}

:is(.page-order, .page-checkout) .checkout-grid__content .buttons-wrapper {
    border-top: 1px solid var(--gc-border-gold);
    padding-top: 1rem;
}

:is(.page-order, .page-checkout) .checkout-grid__aside .checkout__summary-accordion-item {
    background: transparent !important;
    border: 1px solid var(--gc-gold-solid) !important;
}

:is(.page-order, .page-checkout) .checkout-grid__aside .checkout__summary-accordion-header .accordion-button {
    background: transparent !important;
    color: var(--gc-gold-bright) !important;
    border-bottom: 1px solid var(--gc-border-gold) !important;
}

:is(.page-order, .page-checkout) .checkout-grid__aside .checkout__summary-accordion-wrapper {
    background: transparent !important;
}

:is(.page-order, .page-checkout) .checkout-grid__aside .cart-summary-product__img {
    border: 1px solid var(--gc-border-gold);
    border-radius: 0.5rem;
}

:is(.page-order, .page-checkout) .checkout-grid__aside .blockreassurance {
    border: 1px solid var(--gc-border-gold);
    background: rgba(0, 0, 0, 0.2);
    border-radius: 0.25rem;
    padding: 0.75rem;
}

:is(.page-order, .page-checkout) .checkout-grid__aside .reassurance__title,
:is(.page-order, .page-checkout) .checkout-grid__aside .reassurance__desc {
    color: #f5f4f0 !important;
}

:is(.page-order, .page-checkout) .checkout-steps {
    background-color: #0f0d0b !important;
    background-image:
        radial-gradient(1000px 420px at 50% -80px, rgba(212, 175, 55, 0.25), transparent 60%),
        linear-gradient(180deg, #1a1612 0%, #110f0d 52%, #090909 100%) !important;
    border-top: 1px solid var(--gc-border-gold);
    border-bottom: 1px solid var(--gc-border-gold);
}

:is(.page-order, .page-checkout) .checkout-grid__content .step,
:is(.page-order, .page-checkout) .checkout-grid__aside .checkout__summary-accordion-item,
:is(.page-order, .page-checkout) .checkout-grid__aside .blockreassurance {
    background-color: #0f0d0b !important;
    background-image:
        radial-gradient(900px 320px at 50% -120px, rgba(212, 175, 55, 0.16), transparent 62%),
        linear-gradient(180deg, rgba(26, 22, 18, 0.92) 0%, rgba(17, 15, 13, 0.92) 52%, rgba(9, 9, 9, 0.92) 100%) !important;
}

:is(.page-order, .page-checkout) .checkout-steps__btn {
    color: #d3d0c8 !important;
}

:is(.page-order, .page-checkout) .checkout-steps__step.-current .checkout-steps__btn,
:is(.page-order, .page-checkout) .checkout-steps__step.active .checkout-steps__btn,
:is(.page-order, .page-checkout) .checkout-steps__step[aria-selected="true"] .checkout-steps__btn {
    color: var(--gc-gold-bright) !important;
    font-weight: 700;
}

:is(.page-order, .page-checkout) .checkout-steps__number {
    border: 1px solid var(--gc-border-gold) !important;
    background: #1a1a1a !important;
    color: #f5f4f0 !important;
}

:is(.page-order, .page-checkout) .checkout-steps__step.-current .checkout-steps__number,
:is(.page-order, .page-checkout) .checkout-steps__step.active .checkout-steps__number {
    background: var(--gc-gold-solid) !important;
    border-color: var(--gc-gold-solid) !important;
    color: #111 !important;
}

:is(.page-order, .page-checkout) .checkout-grid__aside,
:is(.page-order, .page-checkout) .checkout-grid__aside-wrapper,
:is(.page-order, .page-checkout) .checkout-grid__aside .checkout__summary-accordion,
:is(.page-order, .page-checkout) .checkout-grid__aside .checkout__summary-accordion-item,
:is(.page-order, .page-checkout) .checkout-grid__aside .checkout__summary-accordion-wrapper,
:is(.page-order, .page-checkout) .checkout-grid__aside .accordion-collapse,
:is(.page-order, .page-checkout) .checkout-grid__aside .accordion-body,
:is(.page-order, .page-checkout) .checkout-grid__aside .js-cart {
    background: rgba(8, 8, 8, 0.78) !important;
}

:is(.page-order, .page-checkout) .checkout-grid__aside .checkout__summary-accordion-item {
    overflow: hidden;
}

:is(.page-order, .page-checkout) #js-checkout-summary,
:is(.page-order, .page-checkout) .checkout-grid__aside .checkout__summary-accordion-item {
    background-color: #0f0d0b !important;
    background-image:
        radial-gradient(900px 320px at 50% -120px, rgba(212, 175, 55, 0.16), transparent 62%),
        linear-gradient(180deg, rgba(26, 22, 18, 0.92) 0%, rgba(17, 15, 13, 0.92) 52%, rgba(9, 9, 9, 0.92) 100%) !important;
}

:is(.page-order, .page-checkout) .checkout-grid__aside,
:is(.page-order, .page-checkout) .checkout-grid__aside .cart-summary__label,
:is(.page-order, .page-checkout) .checkout-grid__aside .cart-summary__value,
:is(.page-order, .page-checkout) .checkout-grid__aside .cart-summary__products-number,
:is(.page-order, .page-checkout) .checkout-grid__aside .cart-summary-product__attribute,
:is(.page-order, .page-checkout) .checkout-grid__aside .cart-summary-product__quantity,
:is(.page-order, .page-checkout) .checkout-grid__aside .cart-summary-product__total,
:is(.page-order, .page-checkout) .checkout-grid__aside .cart-summary__totals,
:is(.page-order, .page-checkout) .checkout-grid__aside .blockreassurance {
    color: #f5f4f0 !important;
}

:is(.page-order, .page-checkout) .checkout-grid__aside .cart-summary-product__link,
:is(.page-order, .page-checkout) .checkout-grid__aside .promo-code-button {
    color: var(--gc-gold-bright) !important;
}

:is(.page-order, .page-checkout) #js-checkout-summary,
:is(.page-order, .page-checkout) .checkout-grid__aside .checkout__summary-accordion-item {
    border: 1px solid var(--gc-border-gold) !important;
}

:is(.page-order, .page-checkout) #js-checkout-summary .cart-summary__products-accordion,
:is(.page-order, .page-checkout) #js-checkout-summary .accordion-header,
:is(.page-order, .page-checkout) #js-checkout-summary .accordion-button,
:is(.page-order, .page-checkout) #js-checkout-summary .accordion-collapse {
    border: 0 !important;
}

:is(.page-order, .page-checkout) .checkout-grid__content .form-control,
:is(.page-order, .page-checkout) .checkout-grid__content .form-select {
    background: rgba(20, 20, 20, 0.9) !important;
    border: 1px solid var(--gc-border-gold) !important;
    color: #f5f4f0 !important;
}

:is(.page-order, .page-checkout) .checkout-grid__content .form-control::placeholder {
    color: #bcb6a8 !important;
}

:is(.page-order, .page-checkout) .checkout-grid__content .form-control:focus,
:is(.page-order, .page-checkout) .checkout-grid__content .form-select:focus {
    border-color: var(--gc-gold-solid) !important;
    box-shadow: 0 0 0 0.15rem rgba(212, 175, 55, 0.2) !important;
}

:is(.page-order, .page-checkout) .checkout-grid__content .form-control-comment,
:is(.page-order, .page-checkout) .checkout-grid__content .text-body-tertiary,
:is(.page-order, .page-checkout) .checkout-grid__content .form-text,
:is(.page-order, .page-checkout) .checkout-grid__content .help-block,
:is(.page-order, .page-checkout) .checkout-grid__content .invalid-feedback,
:is(.page-order, .page-checkout) .checkout-grid__content .alert,
:is(.page-order, .page-checkout) .checkout-grid__content small,
:is(.page-order, .page-checkout) .checkout-grid__content em {
    color: #cfc9bb !important;
}

@layer ps-pages {
    @media (min-width: 992px) {
        .page-product .product__bottom {
            display: grid;
            gap: 2rem;
            grid-template-columns: 55% minmax(0, 1fr);
            margin-block-start: 0;
        }
    }
}

@media (max-width: 991px) {
    .gc-header-actions.position-absolute.start-0 {
        top: 0 !important;
        transform: none !important;
    }

    .gc-header {
        padding-bottom: 0.5rem !important;
    }

    .gc-hero-bg {
        height: 35%;
    }

    .gc-header {
        transition: padding 0.28s ease;
    }

    .gc-logo-stack {
        height: 78px;
    }

    .gc-logo-stack.is-face {
        height: 50.5px;
    }

    .gc-main-nav {
        row-gap: 0.2rem !important;
        column-gap: 1rem !important;
        padding-top: 0.2rem !important;
    }

    .gc-main-nav .nav-link-custom {
        min-height: 1rem;
        line-height: 0.95;
    }

    .gc-header-actions-mobile {
        z-index: 15;
    }

    .gc-language-selector--global,
    .gc-header-actions-mobile .gc-account-mobile-icon {
        width: 2.25rem;
        height: 2.25rem;
        border: 1px solid var(--gc-border-gold);
        border-radius: 999px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        color: var(--gc-text-muted);
        background: rgba(5, 5, 5, 0.55);
        position: relative;
        overflow: visible;
    }

    .gc-header-actions-mobile .gc-account-mobile-icon {
        overflow: visible;
    }

    .gc-header-actions-mobile .gc-account-mobile-icon .gc-cart-badge {
        z-index: 2;
        top: -0.3rem;
        right: -0.35rem;
    }

    .gc-language-selector--global::before {
        content: "language";
        font-family: "Material Icons";
        font-size: 1.1rem;
        line-height: 1;
        pointer-events: none;
    }

    .gc-language-selector--global .dropdown,
    .gc-language-selector--global .ps-languageselector {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        margin: 0;
    }

    .gc-language-selector--global .dropdown-toggle,
    .gc-language-selector--global select {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        margin: 0;
        opacity: 0;
        border: 0;
        min-height: 0;
        cursor: pointer;
    }

    .gc-language-selector--global .dropdown-menu {
        opacity: 1;
        z-index: 40;
    }

    .gc-header-actions-mobile .gc-account-mobile-icon {
        padding: 0 !important;
        letter-spacing: 0;
        font-size: 0;
    }

    .hero-title-styled {
        font-size: clamp(1.9rem, 10.2vw, 2.7rem);
        line-height: 1.02;
        letter-spacing: 0.5px;
        max-width: min(96vw, 22rem);
        margin-left: auto;
        margin-right: auto;
        overflow-wrap: normal;
        word-break: normal;
        hyphens: none;
    }

    .gc-card-container {
        height: 400px;
    }
}

/* The Vault CMS page styles */
.center-column.page.page--content-only:has(.gc-vault-apple) {
    overflow: visible !important;
}

.page-cms .center-column.page.page--content-only {
    overflow: visible !important;
}

body#module-gc_customroutes-thevault {
    overflow-x: visible !important;
}

body#module-gc_customroutes-thevault #wrapper,
body#module-gc_customroutes-thevault #wrapper.wrapper,
body#module-gc_customroutes-thevault main#wrapper,
body#module-gc_customroutes-thevault main#wrapper.wrapper {
    overflow: visible !important;
}

.gc-vault-apple {
    --gc-vault-section-space: clamp(3rem, 5vw, 7rem);
    --gc-vault-card-space: clamp(1.5rem, 2.5vw, 2.5rem);
}

.gc-vault-apple,
.gc-vault-apple * {
    font-family: "Montserrat", sans-serif;
}

.gc-vault-apple .gc-vault-display,
.gc-vault-apple .gc-vault-card-title,
.gc-vault-apple h1,
.gc-vault-apple h2,
.gc-vault-apple h3 {
    font-family: "Cormorant Garamond", serif;
}

.gc-vault-apple .gc-vault-kicker,
.gc-vault-apple .font-mono,
.gc-vault-apple .gc-vault-list li::marker {
    font-family: "Space Mono", monospace;
}

.gc-vault-apple .gc-vault-kicker {
    font-size: clamp(0.88rem, 1.1vw, 1.02rem);
    letter-spacing: 0.24rem;
    margin-bottom: clamp(1rem, 2vw, 1.5rem);
}

.gc-vault-apple .gc-vault-kicker-soft {
    letter-spacing: 0.18rem;
}

.gc-vault-apple .gc-vault-display {
    font-size: clamp(2.8rem, 8vw, 6.3rem);
    line-height: 0.94;
    margin-bottom: clamp(1.4rem, 2.8vw, 2.4rem);
}

.gc-vault-apple .gc-vault-display-tight {
    letter-spacing: -0.04em;
}

.gc-vault-apple .gc-vault-display-mid {
    font-size: clamp(2.25rem, 6vw, 4.8rem);
    letter-spacing: -0.04em;
}

.gc-vault-apple .gc-vault-display-end {
    font-size: clamp(2.1rem, 5.5vw, 4.6rem);
    letter-spacing: -0.04em;
    margin-bottom: clamp(1rem, 2vw, 1.6rem);
}

.gc-vault-apple .gc-vault-lead {
    font-size: clamp(1.2rem, 2.1vw, 1.9rem);
    line-height: 1.5;
    margin-bottom: clamp(1.8rem, 3vw, 2.8rem);
}

.gc-vault-apple .gc-vault-lead-hero {
    max-width: 740px;
    color: rgba(255, 255, 255, 0.78) !important;
}

.gc-vault-apple.gc-vault-unified-section {
    padding-top: var(--gc-vault-section-space);
    padding-bottom: var(--gc-vault-section-space);
}

.gc-vault-card {
    padding: var(--gc-vault-card-space, clamp(1.5rem, 2.5vw, 2.5rem));
}

.gc-vault-card-surface {
    background: var(--gc-surface-warm) !important;
    box-shadow:
        0 10px 26px rgba(0, 0, 0, 0.16),
        inset 0 1px 0 rgba(255, 255, 255, 0.75);
}

.gc-vault-card.gc-vault-card-surface {
    background-color: var(--gc-surface-warm) !important;
}

.gc-icons-page .gc-icons-card {
    background-color: var(--gc-surface-warm) !important;
}

.gc-vault-card-title {
    font-size: clamp(1.45rem, 2.6vw, 2.3rem);
    line-height: 1.15;
    margin-bottom: 1.15rem;
    color: rgba(91, 90, 83, 0.82);
}

.gc-vault-card-title-lg {
    font-size: clamp(1.8rem, 3.2vw, 2.9rem);
    letter-spacing: -0.03em;
}

.gc-vault-card-title-sm {
    font-size: clamp(1.45rem, 2.2vw, 2rem);
}

.gc-vault-body {
    font-size: clamp(1.05rem, 1.65vw, 1.32rem);
    line-height: 1.85;
}

.gc-vault-list {
    line-height: 2;
    font-size: clamp(1.05rem, 1.55vw, 1.26rem);
}

.gc-vault-apple .gc-vault-card {
    padding: var(--gc-vault-card-space);
}

.gc-vault-apple .gc-vault-card-title {
    font-size: clamp(1.45rem, 2.6vw, 2.3rem);
    line-height: 1.15;
    margin-bottom: 1.15rem;
    color: rgba(91, 90, 83, 0.82);
}

.gc-vault-apple .gc-vault-card-title-lg {
    font-size: clamp(1.8rem, 3.2vw, 2.9rem);
    letter-spacing: -0.03em;
}

.gc-vault-apple .gc-vault-card-title-sm {
    font-size: clamp(1.45rem, 2.2vw, 2rem);
}

.gc-vault-apple .gc-vault-body {
    font-size: clamp(1.05rem, 1.65vw, 1.32rem);
    line-height: 1.85;
}

.gc-vault-apple .gc-vault-list {
    line-height: 2;
    font-size: clamp(1.05rem, 1.55vw, 1.26rem);
}

.gc-vault-apple .gc-vault-heading-wrap {
    margin-bottom: clamp(2.2rem, 4vw, 4rem) !important;
}

.gc-vault-apple .gc-vault-img-hero {
    height: clamp(560px, 72vh, 820px);
    object-fit: cover;
    filter: saturate(0.9) contrast(1.05);
}

.gc-vault-apple .gc-vault-img-hero-frame::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(90deg,
            rgba(0, 0, 0, 0.36) 0%,
            rgba(0, 0, 0, 0.12) 18%,
            rgba(0, 0, 0, 0) 36%,
            rgba(0, 0, 0, 0) 64%,
            rgba(0, 0, 0, 0.12) 82%,
            rgba(0, 0, 0, 0.36) 100%);
}

.gc-vault-apple .gc-vault-hero-overlay {
    background: linear-gradient(180deg, transparent, rgba(0, 0, 0, 0.8));
}

.gc-vault-apple .gc-vault-hero-caption {
    font-size: clamp(1.35rem, 2.6vw, 2.05rem);
    line-height: 1.18;
}

.gc-vault-apple .gc-vault-img-mid {
    height: clamp(500px, 65vh, 760px);
    object-fit: cover;
}

.gc-vault-apple .gc-vault-img-side {
    height: clamp(500px, 64vh, 740px);
    object-fit: cover;
}

.gc-vault-apple .gc-vault-photo-glow::before {
    content: "";
    position: absolute;
    inset: -12% -20%;
    border-radius: 1.8rem;
    background: radial-gradient(circle at center,
            rgba(219, 160, 111, 0.34) 0%,
            rgba(219, 160, 111, 0.18) 34%,
            rgba(219, 160, 111, 0.08) 56%,
            rgba(219, 160, 111, 0) 82%);
    filter: blur(42px);
    pointer-events: none;
    z-index: 0;
}

.gc-vault-apple .gc-vault-photo-glow > div {
    position: relative;
    z-index: 1;
    box-shadow:
        0 0 0 1px rgba(219, 160, 111, 0.14),
        0 0 28px rgba(219, 160, 111, 0.18),
        0 0 62px rgba(219, 160, 111, 0.12) !important;
}

.gc-vault-apple .gc-vault-media-frame {
    overflow: hidden;
    border-radius: var(--bs-border-radius-xl) !important;
}

.gc-vault-apple .gc-vault-media-img {
    display: block;
    width: 100%;
    border-radius: inherit;
}

.gc-vault-apple.gc-vault-unified-section,
.gc-vault-apple.gc-vault-unified-section .container,
.gc-vault-apple.gc-vault-unified-section .row,
.gc-vault-apple .gc-vault-photo-glow {
    overflow: visible !important;
}

body#module-gc_customroutes-icons {
    overflow-x: visible !important;
}

body#module-gc_customroutes-icons #wrapper,
body#module-gc_customroutes-icons #wrapper.wrapper,
body#module-gc_customroutes-icons main#wrapper,
body#module-gc_customroutes-icons main#wrapper.wrapper,
body#module-gc_customroutes-icons .gc-icons-page,
body#module-gc_customroutes-icons .gc-icons-page .container,
body#module-gc_customroutes-icons .gc-icons-page .row {
    overflow: visible !important;
}

body#module-gc_customroutes-icons .gc-icons-page {
    padding-top: 0 !important;
}

/* Icons page styles */
.gc-icons-page,
.gc-icons-page * {
    font-family: "Montserrat", sans-serif;
}

.gc-icons-page .gc-icons-display,
.gc-icons-page .gc-icons-title,
.gc-icons-page h1,
.gc-icons-page h2 {
    font-family: "Cormorant Garamond", serif;
}

.gc-icons-page .gc-icons-kicker,
.gc-icons-page .gc-icons-index {
    font-family: "Space Mono", monospace;
    letter-spacing: 0.22rem;
}

.gc-icons-page .gc-icons-kicker {
    font-size: clamp(0.84rem, 1.05vw, 0.98rem);
}

.gc-icons-page .gc-icons-display {
    font-size: clamp(2.8rem, 8vw, 6.1rem);
    line-height: 0.94;
    letter-spacing: -0.04em;
}

.gc-icons-page .gc-icons-lead,
.gc-legacy-lead {
    font-size: clamp(1.05rem, 1.8vw, 1.38rem);
    line-height: 1.75;
    max-width: 920px;
    margin-left: auto;
    margin-right: auto;
}

.gc-icons-page .gc-icons-card {
    position: relative;
    isolation: isolate;
    transition: transform 0.35s ease, box-shadow 0.35s ease;
    box-shadow: 0 10px 26px rgba(0, 0, 0, 0.2);
    border-color: rgba(255, 255, 255, 0.5) !important;
}

.gc-icons-page .gc-icons-card::before {
    content: "";
    position: absolute;
    inset: -8% -8%;
    border-radius: 1.2rem;
    background: radial-gradient(circle at center,
            rgba(219, 160, 111, 0.28) 0%,
            rgba(219, 160, 111, 0.14) 36%,
            rgba(219, 160, 111, 0.06) 58%,
            rgba(219, 160, 111, 0) 82%);
    filter: blur(20px);
    z-index: 0;
    pointer-events: none;
}

.gc-icons-page .gc-icons-card > * {
    position: relative;
    z-index: 1;
}

.gc-icons-page .gc-icons-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 38px rgba(0, 0, 0, 0.3);
}

.gc-icons-page .gc-icons-media {
    overflow: hidden;
    border-top-left-radius: inherit;
    border-top-right-radius: inherit;
}

.gc-icons-page .gc-icons-media img {
    height: clamp(300px, 40vw, 390px);
    object-fit: cover;
    filter: saturate(0.92) contrast(1.03);
}

.gc-icons-page .gc-icons-photo-glow {
    position: relative;
}

.gc-icons-page .gc-icons-photo-glow::before {
    content: none;
}

.gc-icons-page .gc-icons-photo-glow img {
    box-shadow: none;
}

.gc-icons-page .gc-icons-body {
    padding: clamp(1.25rem, 2vw, 1.9rem);
}

.gc-icons-page .gc-icons-index {
    font-size: 0.77rem;
    text-transform: uppercase;
    margin-bottom: 0.72rem;
}

.gc-icons-page .gc-icons-title {
    font-size: clamp(1.6rem, 2.5vw, 2.15rem);
    line-height: 1.08;
    margin-bottom: 0.9rem;
    color: rgba(91, 90, 83, 0.88);
}

.gc-icons-page .gc-icons-title .gc-icons-title-digit {
    display: inline-block;
    font-family: "Montserrat", sans-serif;
    font-size: 0.92em;
    font-weight: 700;
    line-height: 1;
    vertical-align: baseline;
}

.gc-icons-page .gc-icons-text {
    font-size: clamp(0.98rem, 1.3vw, 1.1rem);
    line-height: 1.8;
}