/*
 * Amour Parfum Signature 6.1.1 — Luxury Category Heroes
 * Built strictly on the stable 6.0.9 commerce branch.
 * Scope: WooCommerce archive heroes only.
 */

:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero {
    --ap611-hero-height: clamp(390px, 31vw, 500px);
    position: relative !important;
    min-height: var(--ap611-hero-height) !important;
    height: var(--ap611-hero-height) !important;
    margin: 0 0 clamp(36px, 4vw, 58px) !important;
    display: block !important;
    overflow: hidden !important;
    background: #17120f !important;
    color: #fff !important;
    isolation: isolate;
}
:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero__media {
    position: absolute;
    inset: 0;
    z-index: 0;
    display: block;
    width: 100%;
    height: 100%;
}
:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero__shade {
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    background:
      linear-gradient(90deg, rgba(10,8,7,.92) 0%, rgba(10,8,7,.78) 31%, rgba(10,8,7,.34) 50%, rgba(10,8,7,.06) 72%),
      linear-gradient(0deg, rgba(8,7,6,.30), transparent 52%) !important;
    pointer-events: none;
}
:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero__inner {
    position: relative;
    z-index: 2;
    width: min(1180px, calc(100vw - 64px));
    height: 100%;
    margin: 0 auto;
    display: flex;
    align-items: center;
}
:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero__copy {
    position: static !important;
    width: min(590px, 48vw) !important;
    margin: 0 !important;
    color: #fff !important;
}
:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero .amour-kicker {
    display: block;
    margin: 0 0 13px;
    color: #d3ad70 !important;
    font: 700 10px/1.3 "Helvetica Neue", Helvetica, Arial, sans-serif !important;
    letter-spacing: .18em !important;
    text-transform: uppercase;
}
:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero h1 {
    max-width: 10.5ch !important;
    margin: 0 0 18px !important;
    color: #fff !important;
    font-family: "Bodoni 72", Didot, "Times New Roman", Times, serif !important;
    font-size: clamp(52px, 5.2vw, 78px) !important;
    font-weight: 400 !important;
    line-height: .92 !important;
    letter-spacing: -.045em !important;
    text-wrap: balance;
}
:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero__description {
    max-width: 520px !important;
    margin: 0 0 25px !important;
    color: rgba(255,255,255,.86) !important;
    font-family: "Bodoni 72", Didot, "Times New Roman", Times, serif !important;
    font-size: clamp(16px, 1.25vw, 19px) !important;
    line-height: 1.52 !important;
}
:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 0 22px;
    border: 1px solid rgba(211,173,112,.72);
    color: #fff !important;
    background: rgba(10,8,7,.18);
    font: 700 9px/1 "Helvetica Neue", Helvetica, Arial, sans-serif;
    letter-spacing: .12em;
    text-decoration: none !important;
    text-transform: uppercase;
    transition: background .2s ease, color .2s ease, border-color .2s ease;
}
:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero__cta:hover,
:is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero__cta:focus-visible {
    border-color: #d3ad70;
    background: #d3ad70;
    color: #11100e !important;
}
.amour-products-anchor { display:block; position:relative; top:-150px; visibility:hidden; }

/* Women campaign has a lighter right-hand composition. */
body.tax-product_cat .amour-archive-hero--women .amour-archive-hero__shade {
    background:
      linear-gradient(90deg, rgba(24,18,15,.90) 0%, rgba(24,18,15,.70) 31%, rgba(24,18,15,.23) 53%, rgba(24,18,15,.02) 75%),
      linear-gradient(0deg, rgba(31,22,18,.20), transparent 55%) !important;
}

@media (max-width: 980px) {
    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero {
        --ap611-hero-height: 430px;
    }
    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero__inner {
        width: min(100% - 44px, 900px);
    }
    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero__copy {
        width: min(540px, 58vw) !important;
    }
    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero h1 {
        font-size: clamp(48px, 7.5vw, 66px) !important;
    }
}

@media (max-width: 760px) {
    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero {
        --ap611-hero-height: 470px;
        margin-bottom: 30px !important;
    }
    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero__media img {
        object-position: center;
    }
    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero__shade {
        background:
          linear-gradient(0deg, rgba(10,8,7,.94) 0%, rgba(10,8,7,.72) 40%, rgba(10,8,7,.12) 78%),
          linear-gradient(90deg, rgba(10,8,7,.35), transparent 70%) !important;
    }
    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero__inner {
        width: calc(100% - 36px);
        align-items: flex-end;
        padding-bottom: 34px;
    }
    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero__copy {
        width: 100% !important;
        max-width: 560px;
    }
    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero h1 {
        max-width: 11ch !important;
        margin-bottom: 12px !important;
        font-size: clamp(44px, 13vw, 62px) !important;
        line-height: .94 !important;
    }
    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero__description {
        max-width: 94% !important;
        margin-bottom: 18px !important;
        font-size: 15px !important;
        line-height: 1.45 !important;
    }
    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero__cta {
        min-height: 43px;
        padding-inline: 18px;
    }
}

@media (max-width: 430px) {
    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero {
        --ap611-hero-height: 440px;
    }
    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero__inner {
        width: calc(100% - 28px);
        padding-bottom: 28px;
    }
    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero h1 {
        font-size: 44px !important;
    }
    :is(body.post-type-archive-product, body.tax-product_cat, body.tax-product_tag) .amour-archive-hero__description {
        display: -webkit-box;
        overflow: hidden;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
    }
}
